iobroker.tr-064 5.1.4 → 5.1.6

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 (86) hide show
  1. package/README.md +6 -37
  2. package/admin/custom/.vite/manifest.json +86 -86
  3. package/admin/custom/assets/Components-NzvMTX4W.js +1 -0
  4. package/admin/custom/assets/MeshTopology-mEnzehAC.js +4 -0
  5. package/admin/custom/assets/_virtual_mf-localSharedImportMap___mfe_internal__ConfigCustomTr064Set__mf_owner__1-Cenjta-f.js +1 -0
  6. package/admin/custom/assets/{_virtual_mf___mfe_internal__ConfigCustomTr064Set__mf_owner__107524468039083__loadShare___mf_0_iobroker_mf_1_gui_mf_2_components__loadShare__.js-YaIhTVWs.js → _virtual_mf___mfe_internal__ConfigCustomTr064Set__mf_owner__259378411809170__loadShare___mf_0_iobroker_mf_1_gui_mf_2_components__loadShare__.js-DdhKfc_O.js} +89 -89
  7. package/admin/custom/assets/_virtual_mf___mfe_internal__ConfigCustomTr064Set__mf_owner__259378411809170__loadShare__shared-C-z_ew1q.js +2 -0
  8. package/admin/custom/assets/_virtual_mf___mfe_internal__ConfigCustomTr064Set__mf_owner__259378411809170__prebuild___mf_0_iobroker_mf_1_json_mf_2_config__prebuild__-DEVnYCRU.js +122 -0
  9. package/admin/custom/assets/_virtual_mf___mfe_internal__ConfigCustomTr064Set__mf_owner__259378411809170__prebuild__react_mf_2_dom_mf_1_client__prebuild__-BInMjdwk.js +9 -0
  10. package/admin/custom/assets/{dist-B8KMjpwu.js → dist-DaURp8MG.js} +1 -1
  11. package/admin/custom/assets/helpers-B6m49UKI.js +1 -0
  12. package/admin/custom/assets/hostInit-C4-y6noJ.js +1 -0
  13. package/admin/custom/assets/{lib-DF6pqjZN.js → lib-Bz6IScan.js} +1 -1
  14. package/admin/custom/assets/{pendingShares-CGUG-stN.js → pendingShares-_Lyy3-xQ.js} +2 -2
  15. package/admin/custom/assets/{utils-Cw-lO5PH.js → utils-sDCNnUxL.js} +2 -2
  16. package/admin/custom/assets/vite-preload-helper-DjNwdemH.js +1 -0
  17. package/admin/custom/customComponents.js +2 -2
  18. package/admin/custom/mf-manifest.json +1 -1
  19. package/admin/dm-widgets/.vite/manifest.json +42 -42
  20. package/admin/dm-widgets/assets/Components-BjcNBG0-.js +4 -0
  21. package/admin/dm-widgets/assets/_virtual_mf-localSharedImportMap___mfe_internal__DevicesWidgetTr064Set__mf_owner__1-BF5b7ZEP.js +1 -0
  22. package/admin/dm-widgets/assets/_virtual_mf___mfe_internal__DevicesWidgetTr064Set__mf_owner__212620212104624__loadShare__shared-8564RYVs.js +2 -0
  23. package/admin/dm-widgets/assets/{dist-eloWKTxM.js → dist-DAUjjciP.js} +1 -1
  24. package/admin/dm-widgets/assets/helpers-LL3aTdF3.js +1 -0
  25. package/admin/dm-widgets/assets/hostInit-DQpykEkM.js +1 -0
  26. package/admin/dm-widgets/assets/{no-page-D8jArRpU.js → no-page-C-g_PIyM.js} +2 -2
  27. package/admin/dm-widgets/assets/pendingShares-CNny_2LZ.js +2 -0
  28. package/{widgets/tr-064/assets/utils-DMh7iVlT.js → admin/dm-widgets/assets/utils-DEUY4RDL.js} +2 -2
  29. package/admin/dm-widgets/assets/vite-preload-helper-DjNwdemH.js +1 -0
  30. package/admin/dm-widgets/customDevices.js +2 -2
  31. package/admin/dm-widgets/mf-manifest.json +1 -1
  32. package/io-package.json +27 -27
  33. package/package.json +4 -4
  34. package/widgets/tr-064/.vite/manifest.json +128 -128
  35. package/widgets/tr-064/assets/{Generic-CDPITo0I.js → Generic-CB13arWC.js} +1 -1
  36. package/widgets/tr-064/assets/MeshView-bJbQ9vK6.js +4 -0
  37. package/widgets/tr-064/assets/Tr064FritzBox-BBZpOf_u.js +1 -0
  38. package/widgets/tr-064/assets/{Tr064Mesh-Djcvx1_V.js → Tr064Mesh-CeNXlM2a.js} +1 -1
  39. package/widgets/tr-064/assets/{Tr064Presence-BbSI8bq4.js → Tr064Presence-Br3Z1Vay.js} +1 -1
  40. package/widgets/tr-064/assets/_virtual_mf-localSharedImportMap___mfe_internal__vis2Tr064Widgets__mf_owner__1-mmPQI-0W.js +1 -0
  41. package/widgets/tr-064/assets/_virtual_mf___mfe_internal__vis2Tr064Widgets__mf_owner__105226804110546__loadShare__shared-Db_nfl79.js +2 -0
  42. package/widgets/tr-064/assets/{_virtual_mf___mfe_internal__vis2Tr064Widgets__mf_owner__228572001985851__prebuild___mf_0_emotion_mf_1_react__prebuild__-D1F47nlJ.js → _virtual_mf___mfe_internal__vis2Tr064Widgets__mf_owner__105226804110546__prebuild___mf_0_emotion_mf_1_react__prebuild__-BdRMcX2u.js} +1 -1
  43. package/widgets/tr-064/assets/_virtual_mf___mfe_internal__vis2Tr064Widgets__mf_owner__105226804110546__prebuild___mf_0_mui_mf_1_material__prebuild__-DxKWlQDg.js +245 -0
  44. package/widgets/tr-064/assets/{_virtual_mf___mfe_internal__vis2Tr064Widgets__mf_owner__228572001985851__prebuild___mf_0_mui_mf_1_private_mf_2_theming__prebuild__-DdBpSCnq.js → _virtual_mf___mfe_internal__vis2Tr064Widgets__mf_owner__105226804110546__prebuild___mf_0_mui_mf_1_private_mf_2_theming__prebuild__-CimLpZsS.js} +1 -1
  45. package/widgets/tr-064/assets/_virtual_mf___mfe_internal__vis2Tr064Widgets__mf_owner__105226804110546__prebuild__react_mf_2_dom_mf_1_client__prebuild__-DIVBnK0o.js +9 -0
  46. package/widgets/tr-064/assets/{defineProperty-D23yIfEm.js → defineProperty-DeZ0csto.js} +1 -1
  47. package/widgets/tr-064/assets/{dist-eloWKTxM.js → dist-DAUjjciP.js} +1 -1
  48. package/widgets/tr-064/assets/{emotion-use-insertion-effect-with-fallbacks.browser.esm-C7E329a7.js → emotion-use-insertion-effect-with-fallbacks.browser.esm-Bsd24U4Y.js} +1 -1
  49. package/widgets/tr-064/assets/helpers-LL3aTdF3.js +1 -0
  50. package/widgets/tr-064/assets/hostInit-CaekyPEZ.js +1 -0
  51. package/widgets/tr-064/assets/{pendingShares-DyO2O4mO.js → pendingShares-D9r9YlHr.js} +2 -2
  52. package/{admin/dm-widgets/assets/utils-DMh7iVlT.js → widgets/tr-064/assets/utils-DEUY4RDL.js} +2 -2
  53. package/widgets/tr-064/assets/vite-preload-helper-DjNwdemH.js +1 -0
  54. package/widgets/tr-064/customWidgets.js +2 -2
  55. package/widgets/tr-064/mf-manifest.json +1 -1
  56. package/admin/custom/assets/Components-etMgywDZ.js +0 -1
  57. package/admin/custom/assets/MeshTopology-B9SsXcMc.js +0 -4
  58. package/admin/custom/assets/_virtual_mf-localSharedImportMap___mfe_internal__ConfigCustomTr064Set__mf_owner__1-C4BjX5dX.js +0 -1
  59. package/admin/custom/assets/_virtual_mf___mfe_internal__ConfigCustomTr064Set__mf_owner__107524468039083__loadShare__shared-DdQDUBMT.js +0 -2
  60. package/admin/custom/assets/_virtual_mf___mfe_internal__ConfigCustomTr064Set__mf_owner__107524468039083__prebuild___mf_0_iobroker_mf_1_json_mf_2_config__prebuild__-BtYL_XWD.js +0 -122
  61. package/admin/custom/assets/_virtual_mf___mfe_internal__ConfigCustomTr064Set__mf_owner__107524468039083__prebuild__react_mf_2_dom_mf_1_client__prebuild__-B9QPCQeP.js +0 -9
  62. package/admin/custom/assets/helpers-mPMYxszG.js +0 -1
  63. package/admin/custom/assets/hostInit-CeJ0LoqS.js +0 -1
  64. package/admin/custom/assets/vite-preload-helper-CaC3yEL3.js +0 -1
  65. package/admin/dm-widgets/assets/Components-Dy9S3Oqp.js +0 -4
  66. package/admin/dm-widgets/assets/_virtual_mf-localSharedImportMap___mfe_internal__DevicesWidgetTr064Set__mf_owner__1-k2Q0ZlQx.js +0 -1
  67. package/admin/dm-widgets/assets/_virtual_mf___mfe_internal__DevicesWidgetTr064Set__mf_owner__14264094198548__loadShare__shared-90ks6q6X.js +0 -2
  68. package/admin/dm-widgets/assets/helpers-C7lQ9D8o.js +0 -1
  69. package/admin/dm-widgets/assets/hostInit-hUxYjlJV.js +0 -1
  70. package/admin/dm-widgets/assets/pendingShares-BJrmbtIv.js +0 -2
  71. package/admin/dm-widgets/assets/vite-preload-helper-CaC3yEL3.js +0 -1
  72. package/widgets/tr-064/assets/MeshView-Dtizwffo.js +0 -4
  73. package/widgets/tr-064/assets/Tr064FritzBox-CfPqURlY.js +0 -1
  74. package/widgets/tr-064/assets/_virtual_mf-localSharedImportMap___mfe_internal__vis2Tr064Widgets__mf_owner__1-LZrGs9hh.js +0 -1
  75. package/widgets/tr-064/assets/_virtual_mf___mfe_internal__vis2Tr064Widgets__mf_owner__228572001985851__loadShare__shared-CK9g-w1a.js +0 -2
  76. package/widgets/tr-064/assets/_virtual_mf___mfe_internal__vis2Tr064Widgets__mf_owner__228572001985851__prebuild___mf_0_mui_mf_1_material__prebuild__-CXI-jzsj.js +0 -245
  77. package/widgets/tr-064/assets/_virtual_mf___mfe_internal__vis2Tr064Widgets__mf_owner__228572001985851__prebuild__react_mf_2_dom_mf_1_client__prebuild__-BxU03gFN.js +0 -9
  78. package/widgets/tr-064/assets/helpers-C7lQ9D8o.js +0 -1
  79. package/widgets/tr-064/assets/hostInit-BpiSTXsI.js +0 -1
  80. package/widgets/tr-064/assets/vite-preload-helper-CaC3yEL3.js +0 -1
  81. /package/admin/custom/assets/{_virtual_mf___mfe_internal__ConfigCustomTr064Set__mf_owner__107524468039083__prebuild__react_mf_1_jsx_mf_2_runtime__prebuild__-B_v57Qfr.js → _virtual_mf___mfe_internal__ConfigCustomTr064Set__mf_owner__259378411809170__prebuild__react_mf_1_jsx_mf_2_runtime__prebuild__-B_v57Qfr.js} +0 -0
  82. /package/admin/dm-widgets/assets/{_virtual_mf___mfe_internal__DevicesWidgetTr064Set__mf_owner__14264094198548__prebuild___mf_0_iobroker_mf_1_dm_mf_2_widgets__prebuild__-CiYX8DhF.js → _virtual_mf___mfe_internal__DevicesWidgetTr064Set__mf_owner__212620212104624__prebuild___mf_0_iobroker_mf_1_dm_mf_2_widgets__prebuild__-CiYX8DhF.js} +0 -0
  83. /package/widgets/tr-064/assets/{_virtual_mf___mfe_internal__vis2Tr064Widgets__mf_owner__228572001985851__prebuild__react__prebuild__-BfR62PXi.js → _virtual_mf___mfe_internal__vis2Tr064Widgets__mf_owner__105226804110546__prebuild__react__prebuild__-BfR62PXi.js} +0 -0
  84. /package/widgets/tr-064/assets/{_virtual_mf___mfe_internal__vis2Tr064Widgets__mf_owner__228572001985851__prebuild__react_mf_1_jsx_mf_2_dev_mf_2_runtime__prebuild__-Cbwz_BNS.js → _virtual_mf___mfe_internal__vis2Tr064Widgets__mf_owner__105226804110546__prebuild__react_mf_1_jsx_mf_2_dev_mf_2_runtime__prebuild__-Cbwz_BNS.js} +0 -0
  85. /package/widgets/tr-064/assets/{_virtual_mf___mfe_internal__vis2Tr064Widgets__mf_owner__228572001985851__prebuild__react_mf_1_jsx_mf_2_runtime__prebuild__-ls7Ro8xU.js → _virtual_mf___mfe_internal__vis2Tr064Widgets__mf_owner__105226804110546__prebuild__react_mf_1_jsx_mf_2_runtime__prebuild__-ls7Ro8xU.js} +0 -0
  86. /package/widgets/tr-064/assets/{_virtual_mf___mfe_internal__vis2Tr064Widgets__mf_owner__228572001985851__prebuild__react_mf_2_dom__prebuild__-C80Z9tvh.js → _virtual_mf___mfe_internal__vis2Tr064Widgets__mf_owner__105226804110546__prebuild__react_mf_2_dom__prebuild__-C80Z9tvh.js} +0 -0
package/README.md CHANGED
@@ -198,6 +198,12 @@ If you switch from the adapter tr-064-community, you can copy the complete devic
198
198
  Placeholder for the next version (at the beginning of the line):
199
199
  ### **WORK IN PROGRESS**
200
200
  -->
201
+ ### 5.1.6 (2026-10-07)
202
+ - (@GermanBluefox) The dialogs "Rename device" of the mesh topology and "Reset missed calls" of the widget and the device card show the button "Cancel" on the right side, grey and with a close icon, like everywhere in ioBroker
203
+
204
+ ### 5.1.5 (2026-10-07)
205
+ - (@GermanBluefox) Updated packages
206
+
201
207
  ### 5.1.4 (2026-10-02)
202
208
  - (@GermanBluefox) New look of the devices in the mesh topology: every device carries the symbol of its kind (computer, smartphone, camera, lamp, printer, ...) next to its name, below it the manufacturer and the IP address, and on the right side the band and the signal. The kind comes from the FRITZ!Box (`device_class`, or the kind which was set for the device in the box), an unknown one gets a generic symbol
203
209
  - (@GermanBluefox) `common.localLink` of `io-package.json`, the link to the web interface of the FRITZ!Box, is replaced by `common.localLinks` - the js-controller has removed the old attribute from its schema, which made the package test fail
@@ -216,43 +222,6 @@ If you switch from the adapter tr-064-community, you can copy the complete devic
216
222
  - (@GermanBluefox) A device can be renamed in the mesh topology: a click on its name asks for the new name and writes it into the FRITZ!Box (`X_AVM-DE_SetHostNameByMACAddress`), which uses it everywhere. A firmware without that action says so. Note: the objects below `devices` follow the name of the box, as long as the option "Use the configured names" is switched off
217
223
  - (@GermanBluefox) New message `setHostName` (`sendTo('tr-064.0', 'setHostName', { mac, name })`) which renames a device in the FRITZ!Box
218
224
 
219
- ### 5.1.0 (2026-09-19)
220
- - (@GermanBluefox) New widgets for vis-2 ("FRITZ!Box", "Mesh topology", "Presence") and for `ioBroker.devices` ("FRITZ!Box"): the state of the box as a tile, a click shows the mesh topology
221
- - (@GermanBluefox) New states `boxModel` and `boxFirmware`
222
- - (@GermanBluefox) The table in the tab "Devices" uses the whole width again: in 5.0.2 it was so narrow that name, IP and MAC could not be read
223
- - (@GermanBluefox) "Search for devices" works with many devices: the adapter reads the list of all devices in one request (`X_AVM-DE_GetHostListPath`) instead of one request per device, which took longer than the 20 seconds of the button. The search is always answered, also when a request fails, the box has no devices or the adapter is not connected
224
- - (@GermanBluefox) Fixed the crash `systemData.save is not a function` on start when a call list is generated: installations which ran an adapter version from 2017 to 2020 still had an invalid attribute `save` in the object `tr-064.<instance>`, which is removed now
225
- - (@GermanBluefox) `wlanGuest` switches the guest WLAN again on boxes with three bands (e.g. FRITZ!Box 5690 Pro, 4060) instead of the third band: the guest WLAN is always the last WLAN configuration of the box
226
- - (@GermanBluefox) New states `wlan60` and `wlan60Password` for the 6 GHz WLAN, and `wlan52` and `wlan52Password` for the second 5 GHz WLAN (e.g. FRITZ!Box 4060). The adapter asks the box which band its third WLAN uses
227
- - (@GermanBluefox) The call lists do not stop updating after some hours anymore: the call monitor detects a connection which the box dropped unnoticed (e.g. by a restart) with TCP keepalive and reconnects, and the call lists are also read once a minute - that way they are updated without call monitor, too
228
- - (@GermanBluefox) A call list download which the box does not answer is given up after 10 seconds with a warning
229
- - (@GermanBluefox) `states.wlan` switches all WLANs like the WLAN button of the FRITZ!Box (`X_AVM-DE_SetWLANGlobalEnable`) and shows its state: switching on does not switch on the guest WLAN and bands which were off any more
230
- - (@GermanBluefox) New states for the internet connection: `wanAccessType` (e.g. `LTE` during a fallback to a mobile connection), `wanLinkStatus`, `wanProvider`, `wanDownstreamMax`, `wanUpstreamMax`, and the traffic `wanBytesSent`, `wanBytesReceived` (64 bit counters), `wanSendRate`, `wanReceiveRate`
231
- - (@GermanBluefox) New states `devices.xxx.accessPoint` and `devices.xxx.connection`: the FRITZ!Box or repeater a device is connected to and the band, read from the mesh topology. The new tab "Mesh" in the settings shows the mesh topology as a graphic. Admin 8 is required now
232
- - (@GermanBluefox) New option "Read the event log of the FRITZ!Box": the complete event log including the logins to the user interface in `deviceLog.json`, new events in `deviceLog.newEvents`
233
- - (@GermanBluefox) New state `callmonitor.connected` shows whether the call monitor is connected, and `callmonitor.*.device` the name of the telephone of a call
234
- - (@GermanBluefox) New table "Phone book per own number": a number which is in several phone books gets its name from the phone book of the own number of the call
235
- - (@GermanBluefox) New option "Write unchanged values too": every polled value is written with a new time stamp
236
- - (@GermanBluefox) A single call forwarding of the FRITZ!Box is shown in `callForwarding` now - before, the states were only created from the second call forwarding on. With only one phone number the name of the number is added to the name of the state again, and a box without call forwardings does not delay the poll cycle by 3 seconds any more
237
- - (@GermanBluefox) The call monitor does not lose events any more when the FRITZ!Box sends two of them in one network packet (e.g. `RING` and `DISCONNECT` of a very short call) or one event in two packets: the received data is split into lines now
238
- - (@GermanBluefox) The call lists do not freeze for good any more when the FRITZ!Box numbers its calls from the beginning again, e.g. after exchanging the box, a factory reset or a restart: the adapter asked only for the calls after the last known call ID and got an empty list forever. It now checks an empty answer against the newest call of the box and builds the lists again from the call list of the box; only calls after the newest known call increase the counters. The meta object `tr-064.<instance>` is only written when the lists changed, not with every refresh
239
- - (@GermanBluefox) New state `states.abNewMessages`: number of new (not yet listened) messages on the answering machines
240
- - (@GermanBluefox) The MAC addresses of the configured devices are sent to the box in its own format `AA:BB:CC:DD:EE:FF`, so addresses entered in lower case, with dashes or without separators are found
241
- - (@GermanBluefox) A configured device which the box does not know (or which is offline since the start) is logged once with a hint to check its MAC address and listed as inactive in `jsonDeviceList`, instead of silently being left out
242
- - (@GermanBluefox) New option "Name the objects after this table" in the tab "Devices": the objects below `devices` get the names of the table instead of the names in the Fritz!Box, so two devices with the same name in the box are not mixed up any more. When the option is switched on, the objects which were created with the name of the box are deleted. mDNS writes into the same objects as the poll now - before it created additional objects with the name of the table
243
- - (@GermanBluefox) A device can have several MAC addresses, separated by commas (e.g. a smartphone with a private Wi-Fi address in the home and the guest Wi-Fi): it is present if one of them is active. Changing the spelling of a MAC address does not delete the objects of the device any more, and "Search for devices" does not add a device of the table a second time
244
- - (@GermanBluefox) A device request which the box does not answer does not stop the presence detection and the polling any more
245
- - (@GermanBluefox) An info message tells when "Create JSON device list" is switched on, but no devices are configured
246
- - (@GermanBluefox) The adapter connects to a FRITZ!Box whose WLAN is switched off: the check of the login used the WLAN, which the box answers with an error then, so the adapter restarted (4.x) or retried forever without creating its objects (5.0). A refused login is reported with a hint to check user, password and rights of the user instead of the advice to restart the box
247
- - (@GermanBluefox) The adapter does not hang silently any more when the FRITZ!Box does not deliver the description of a service (e.g. `x_speedtestSCPD.xml` with FRITZ!OS 8.24 Labor): after 10 seconds the service is skipped with a warning, and the connection is limited to 60 seconds and retried
248
- - (@GermanBluefox) The debug log does not contain sensitive data any more, so it can be shared to analyze problems: phone numbers, names, phone book and call data, host names, MAC and IP addresses, values of states and results of `states.command` are only logged with level `silly`, and the session ID in URLs of the box is never logged. The result of `states.command` is no longer logged with level info - it is still written into `states.commandResult`
249
- - (@GermanBluefox) The call monitor does not stop any more when the FRITZ!Box refuses the connection, e.g. while it restarts after a firmware update: it retries every 60 seconds and reconnects on its own. The hint to open port 1012 with `#96*5*` is only logged if the call monitor was never connected
250
-
251
- ### 5.0.2 (2026-09-10)
252
- - (@GermanBluefox) Fixed the crash `Cannot read properties of undefined (reading 'safe')` in `getWLAN` right after the start: the WLAN states are read again in every poll cycle
253
- - (@GermanBluefox) A box without a separate 5 GHz configuration does not delay the polling by 3 seconds any more
254
-
255
-
256
225
  [Older changelogs can be found there](CHANGELOG_OLD.md)
257
226
 
258
227
  ## License
@@ -1,75 +1,75 @@
1
1
  {
2
- "_MeshTopology-B9SsXcMc.js": {
3
- "file": "assets/MeshTopology-B9SsXcMc.js",
2
+ "_MeshTopology-mEnzehAC.js": {
3
+ "file": "assets/MeshTopology-mEnzehAC.js",
4
4
  "name": "MeshTopology",
5
5
  "imports": [
6
- "__virtual_mf___mfe_internal__ConfigCustomTr064Set__mf_owner__107524468039083__loadShare___mf_0_iobroker_mf_1_gui_mf_2_components__loadShare__.js-YaIhTVWs.js",
7
- "__virtual_mf___mfe_internal__ConfigCustomTr064Set__mf_owner__107524468039083__loadShare__shared-DdQDUBMT.js"
6
+ "__virtual_mf___mfe_internal__ConfigCustomTr064Set__mf_owner__259378411809170__loadShare___mf_0_iobroker_mf_1_gui_mf_2_components__loadShare__.js-DdhKfc_O.js",
7
+ "__virtual_mf___mfe_internal__ConfigCustomTr064Set__mf_owner__259378411809170__loadShare__shared-C-z_ew1q.js"
8
8
  ]
9
9
  },
10
- "__virtual_mf___mfe_internal__ConfigCustomTr064Set__mf_owner__107524468039083__loadShare___mf_0_iobroker_mf_1_gui_mf_2_components__loadShare__.js-YaIhTVWs.js": {
11
- "file": "assets/_virtual_mf___mfe_internal__ConfigCustomTr064Set__mf_owner__107524468039083__loadShare___mf_0_iobroker_mf_1_gui_mf_2_components__loadShare__.js-YaIhTVWs.js",
12
- "name": "_virtual_mf___mfe_internal__ConfigCustomTr064Set__mf_owner__107524468039083__loadShare___mf_0_iobroker_mf_1_gui_mf_2_components__loadShare__.js",
10
+ "__virtual_mf___mfe_internal__ConfigCustomTr064Set__mf_owner__259378411809170__loadShare___mf_0_iobroker_mf_1_gui_mf_2_components__loadShare__.js-DdhKfc_O.js": {
11
+ "file": "assets/_virtual_mf___mfe_internal__ConfigCustomTr064Set__mf_owner__259378411809170__loadShare___mf_0_iobroker_mf_1_gui_mf_2_components__loadShare__.js-DdhKfc_O.js",
12
+ "name": "_virtual_mf___mfe_internal__ConfigCustomTr064Set__mf_owner__259378411809170__loadShare___mf_0_iobroker_mf_1_gui_mf_2_components__loadShare__.js",
13
13
  "imports": [
14
14
  "_rolldown-runtime-Dd_uD5pT.js",
15
- "_vite-preload-helper-CaC3yEL3.js"
15
+ "_vite-preload-helper-DjNwdemH.js"
16
16
  ],
17
17
  "dynamicImports": [
18
- "virtual:mf:__mfe_internal__ConfigCustomTr064Set__mf_owner__107524468039083__prebuild__react_mf_1_jsx_mf_2_runtime__prebuild__.js",
18
+ "virtual:mf:__mfe_internal__ConfigCustomTr064Set__mf_owner__259378411809170__prebuild__react_mf_1_jsx_mf_2_runtime__prebuild__.js",
19
19
  "node_modules/@iobroker/gui-components/build/Components/IconLibrary/iconLibraryData.js"
20
20
  ]
21
21
  },
22
- "__virtual_mf___mfe_internal__ConfigCustomTr064Set__mf_owner__107524468039083__loadShare__shared-DdQDUBMT.js": {
23
- "file": "assets/_virtual_mf___mfe_internal__ConfigCustomTr064Set__mf_owner__107524468039083__loadShare__shared-DdQDUBMT.js",
24
- "name": "_virtual_mf___mfe_internal__ConfigCustomTr064Set__mf_owner__107524468039083__loadShare__shared",
22
+ "__virtual_mf___mfe_internal__ConfigCustomTr064Set__mf_owner__259378411809170__loadShare__shared-C-z_ew1q.js": {
23
+ "file": "assets/_virtual_mf___mfe_internal__ConfigCustomTr064Set__mf_owner__259378411809170__loadShare__shared-C-z_ew1q.js",
24
+ "name": "_virtual_mf___mfe_internal__ConfigCustomTr064Set__mf_owner__259378411809170__loadShare__shared",
25
25
  "imports": [
26
26
  "_rolldown-runtime-Dd_uD5pT.js",
27
- "__virtual_mf___mfe_internal__ConfigCustomTr064Set__mf_owner__107524468039083__loadShare___mf_0_iobroker_mf_1_gui_mf_2_components__loadShare__.js-YaIhTVWs.js",
28
- "_vite-preload-helper-CaC3yEL3.js"
27
+ "__virtual_mf___mfe_internal__ConfigCustomTr064Set__mf_owner__259378411809170__loadShare___mf_0_iobroker_mf_1_gui_mf_2_components__loadShare__.js-DdhKfc_O.js",
28
+ "_vite-preload-helper-DjNwdemH.js"
29
29
  ],
30
30
  "dynamicImports": [
31
- "virtual:mf:__mfe_internal__ConfigCustomTr064Set__mf_owner__107524468039083__prebuild__react_mf_2_dom_mf_1_client__prebuild__.js",
32
- "virtual:mf:__mfe_internal__ConfigCustomTr064Set__mf_owner__107524468039083__prebuild___mf_0_iobroker_mf_1_json_mf_2_config__prebuild__.js"
31
+ "virtual:mf:__mfe_internal__ConfigCustomTr064Set__mf_owner__259378411809170__prebuild__react_mf_2_dom_mf_1_client__prebuild__.js",
32
+ "virtual:mf:__mfe_internal__ConfigCustomTr064Set__mf_owner__259378411809170__prebuild___mf_0_iobroker_mf_1_json_mf_2_config__prebuild__.js"
33
33
  ]
34
34
  },
35
- "_dist-B8KMjpwu.js": {
36
- "file": "assets/dist-B8KMjpwu.js",
35
+ "_dist-DaURp8MG.js": {
36
+ "file": "assets/dist-DaURp8MG.js",
37
37
  "name": "dist",
38
38
  "imports": [
39
- "_utils-Cw-lO5PH.js"
39
+ "_utils-sDCNnUxL.js"
40
40
  ]
41
41
  },
42
- "_helpers-mPMYxszG.js": {
43
- "file": "assets/helpers-mPMYxszG.js",
42
+ "_helpers-B6m49UKI.js": {
43
+ "file": "assets/helpers-B6m49UKI.js",
44
44
  "name": "helpers",
45
45
  "imports": [
46
- "_utils-Cw-lO5PH.js"
46
+ "_utils-sDCNnUxL.js"
47
47
  ]
48
48
  },
49
49
  "_rolldown-runtime-Dd_uD5pT.js": {
50
50
  "file": "assets/rolldown-runtime-Dd_uD5pT.js",
51
51
  "name": "rolldown-runtime"
52
52
  },
53
- "_utils-Cw-lO5PH.js": {
54
- "file": "assets/utils-Cw-lO5PH.js",
53
+ "_utils-sDCNnUxL.js": {
54
+ "file": "assets/utils-sDCNnUxL.js",
55
55
  "name": "utils",
56
56
  "imports": [
57
- "_vite-preload-helper-CaC3yEL3.js"
57
+ "_vite-preload-helper-DjNwdemH.js"
58
58
  ]
59
59
  },
60
- "_vite-preload-helper-CaC3yEL3.js": {
61
- "file": "assets/vite-preload-helper-CaC3yEL3.js",
60
+ "_vite-preload-helper-DjNwdemH.js": {
61
+ "file": "assets/vite-preload-helper-DjNwdemH.js",
62
62
  "name": "vite-preload-helper"
63
63
  },
64
64
  "index.html": {
65
- "file": "assets/index-CLu_8AYF.js",
65
+ "file": "assets/index-CmL44Pzq.js",
66
66
  "name": "index",
67
67
  "src": "index.html",
68
68
  "isEntry": true,
69
69
  "imports": [
70
- "__virtual_mf___mfe_internal__ConfigCustomTr064Set__mf_owner__107524468039083__loadShare___mf_0_iobroker_mf_1_gui_mf_2_components__loadShare__.js-YaIhTVWs.js",
71
- "__virtual_mf___mfe_internal__ConfigCustomTr064Set__mf_owner__107524468039083__loadShare__shared-DdQDUBMT.js",
72
- "_MeshTopology-B9SsXcMc.js"
70
+ "__virtual_mf___mfe_internal__ConfigCustomTr064Set__mf_owner__259378411809170__loadShare___mf_0_iobroker_mf_1_gui_mf_2_components__loadShare__.js-DdhKfc_O.js",
71
+ "__virtual_mf___mfe_internal__ConfigCustomTr064Set__mf_owner__259378411809170__loadShare__shared-C-z_ew1q.js",
72
+ "_MeshTopology-mEnzehAC.js"
73
73
  ]
74
74
  },
75
75
  "node_modules/@iobroker/gui-components/build/Components/IconLibrary/iconLibraryData.js": {
@@ -79,22 +79,22 @@
79
79
  "isDynamicEntry": true
80
80
  },
81
81
  "node_modules/react-qr-code/lib/index.mjs": {
82
- "file": "assets/lib-DF6pqjZN.js",
82
+ "file": "assets/lib-Bz6IScan.js",
83
83
  "name": "lib",
84
84
  "src": "node_modules/react-qr-code/lib/index.mjs",
85
85
  "isDynamicEntry": true,
86
86
  "imports": [
87
87
  "_rolldown-runtime-Dd_uD5pT.js",
88
- "__virtual_mf___mfe_internal__ConfigCustomTr064Set__mf_owner__107524468039083__loadShare___mf_0_iobroker_mf_1_gui_mf_2_components__loadShare__.js-YaIhTVWs.js"
88
+ "__virtual_mf___mfe_internal__ConfigCustomTr064Set__mf_owner__259378411809170__loadShare___mf_0_iobroker_mf_1_gui_mf_2_components__loadShare__.js-DdhKfc_O.js"
89
89
  ]
90
90
  },
91
91
  "src/Components.tsx": {
92
- "file": "assets/Components-etMgywDZ.js",
92
+ "file": "assets/Components-NzvMTX4W.js",
93
93
  "name": "Components",
94
94
  "src": "src/Components.tsx",
95
95
  "isEntry": true,
96
96
  "imports": [
97
- "_MeshTopology-B9SsXcMc.js"
97
+ "_MeshTopology-mEnzehAC.js"
98
98
  ]
99
99
  },
100
100
  "virtual:mf-REMOTE_ENTRY_ID:__mfe_internal__ConfigCustomTr064Set__customComponents_js": {
@@ -102,9 +102,9 @@
102
102
  "name": "remoteEntry",
103
103
  "src": "virtual:mf-REMOTE_ENTRY_ID:__mfe_internal__ConfigCustomTr064Set__customComponents_js",
104
104
  "imports": [
105
- "_vite-preload-helper-CaC3yEL3.js",
106
- "_dist-B8KMjpwu.js",
107
- "_helpers-mPMYxszG.js"
105
+ "_vite-preload-helper-DjNwdemH.js",
106
+ "_dist-DaURp8MG.js",
107
+ "_helpers-B6m49UKI.js"
108
108
  ],
109
109
  "dynamicImports": [
110
110
  "src/Components.tsx",
@@ -112,62 +112,28 @@
112
112
  ]
113
113
  },
114
114
  "virtual:mf-localSharedImportMap:__mfe_internal__ConfigCustomTr064Set__mf_owner__1": {
115
- "file": "assets/_virtual_mf-localSharedImportMap___mfe_internal__ConfigCustomTr064Set__mf_owner__1-C4BjX5dX.js",
115
+ "file": "assets/_virtual_mf-localSharedImportMap___mfe_internal__ConfigCustomTr064Set__mf_owner__1-Cenjta-f.js",
116
116
  "name": "_virtual_mf-localSharedImportMap___mfe_internal__ConfigCustomTr064Set__mf_owner__1",
117
117
  "src": "virtual:mf-localSharedImportMap:__mfe_internal__ConfigCustomTr064Set__mf_owner__1",
118
118
  "isDynamicEntry": true,
119
119
  "imports": [
120
- "_vite-preload-helper-CaC3yEL3.js",
121
- "_dist-B8KMjpwu.js"
120
+ "_vite-preload-helper-DjNwdemH.js",
121
+ "_dist-DaURp8MG.js"
122
122
  ],
123
123
  "dynamicImports": [
124
- "__virtual_mf___mfe_internal__ConfigCustomTr064Set__mf_owner__107524468039083__loadShare___mf_0_iobroker_mf_1_gui_mf_2_components__loadShare__.js-YaIhTVWs.js",
125
- "virtual:mf:__mfe_internal__ConfigCustomTr064Set__mf_owner__107524468039083__prebuild__react_mf_1_jsx_mf_2_runtime__prebuild__.js",
126
- "virtual:mf:__mfe_internal__ConfigCustomTr064Set__mf_owner__107524468039083__prebuild__react_mf_2_dom_mf_1_client__prebuild__.js",
127
- "virtual:mf:__mfe_internal__ConfigCustomTr064Set__mf_owner__107524468039083__prebuild___mf_0_iobroker_mf_1_json_mf_2_config__prebuild__.js"
128
- ]
129
- },
130
- "virtual:mf:__mfe_internal__ConfigCustomTr064Set__mf_owner__107524468039083__prebuild___mf_0_iobroker_mf_1_json_mf_2_config__prebuild__.js": {
131
- "file": "assets/_virtual_mf___mfe_internal__ConfigCustomTr064Set__mf_owner__107524468039083__prebuild___mf_0_iobroker_mf_1_json_mf_2_config__prebuild__-BtYL_XWD.js",
132
- "name": "_virtual_mf___mfe_internal__ConfigCustomTr064Set__mf_owner__107524468039083__prebuild___mf_0_iobroker_mf_1_json_mf_2_config__prebuild__",
133
- "src": "virtual:mf:__mfe_internal__ConfigCustomTr064Set__mf_owner__107524468039083__prebuild___mf_0_iobroker_mf_1_json_mf_2_config__prebuild__.js",
134
- "isDynamicEntry": true,
135
- "imports": [
136
- "_rolldown-runtime-Dd_uD5pT.js",
137
- "__virtual_mf___mfe_internal__ConfigCustomTr064Set__mf_owner__107524468039083__loadShare___mf_0_iobroker_mf_1_gui_mf_2_components__loadShare__.js-YaIhTVWs.js",
138
- "_vite-preload-helper-CaC3yEL3.js",
139
- "_dist-B8KMjpwu.js"
140
- ],
141
- "dynamicImports": [
142
- "node_modules/react-qr-code/lib/index.mjs"
143
- ]
144
- },
145
- "virtual:mf:__mfe_internal__ConfigCustomTr064Set__mf_owner__107524468039083__prebuild__react_mf_1_jsx_mf_2_runtime__prebuild__.js": {
146
- "file": "assets/_virtual_mf___mfe_internal__ConfigCustomTr064Set__mf_owner__107524468039083__prebuild__react_mf_1_jsx_mf_2_runtime__prebuild__-B_v57Qfr.js",
147
- "name": "_virtual_mf___mfe_internal__ConfigCustomTr064Set__mf_owner__107524468039083__prebuild__react_mf_1_jsx_mf_2_runtime__prebuild__",
148
- "src": "virtual:mf:__mfe_internal__ConfigCustomTr064Set__mf_owner__107524468039083__prebuild__react_mf_1_jsx_mf_2_runtime__prebuild__.js",
149
- "isDynamicEntry": true,
150
- "imports": [
151
- "_rolldown-runtime-Dd_uD5pT.js"
152
- ]
153
- },
154
- "virtual:mf:__mfe_internal__ConfigCustomTr064Set__mf_owner__107524468039083__prebuild__react_mf_2_dom_mf_1_client__prebuild__.js": {
155
- "file": "assets/_virtual_mf___mfe_internal__ConfigCustomTr064Set__mf_owner__107524468039083__prebuild__react_mf_2_dom_mf_1_client__prebuild__-B9QPCQeP.js",
156
- "name": "_virtual_mf___mfe_internal__ConfigCustomTr064Set__mf_owner__107524468039083__prebuild__react_mf_2_dom_mf_1_client__prebuild__",
157
- "src": "virtual:mf:__mfe_internal__ConfigCustomTr064Set__mf_owner__107524468039083__prebuild__react_mf_2_dom_mf_1_client__prebuild__.js",
158
- "isDynamicEntry": true,
159
- "imports": [
160
- "_rolldown-runtime-Dd_uD5pT.js",
161
- "__virtual_mf___mfe_internal__ConfigCustomTr064Set__mf_owner__107524468039083__loadShare___mf_0_iobroker_mf_1_gui_mf_2_components__loadShare__.js-YaIhTVWs.js"
124
+ "__virtual_mf___mfe_internal__ConfigCustomTr064Set__mf_owner__259378411809170__loadShare___mf_0_iobroker_mf_1_gui_mf_2_components__loadShare__.js-DdhKfc_O.js",
125
+ "virtual:mf:__mfe_internal__ConfigCustomTr064Set__mf_owner__259378411809170__prebuild__react_mf_1_jsx_mf_2_runtime__prebuild__.js",
126
+ "virtual:mf:__mfe_internal__ConfigCustomTr064Set__mf_owner__259378411809170__prebuild__react_mf_2_dom_mf_1_client__prebuild__.js",
127
+ "virtual:mf:__mfe_internal__ConfigCustomTr064Set__mf_owner__259378411809170__prebuild___mf_0_iobroker_mf_1_json_mf_2_config__prebuild__.js"
162
128
  ]
163
129
  },
164
130
  "virtual:mf:__mfe_internal__ConfigCustomTr064Set__mf_owner__1__H_A_I__hostAutoInit__H_A_I__.js": {
165
- "file": "assets/hostInit-CeJ0LoqS.js",
131
+ "file": "assets/hostInit-C4-y6noJ.js",
166
132
  "name": "hostInit",
167
133
  "src": "virtual:mf:__mfe_internal__ConfigCustomTr064Set__mf_owner__1__H_A_I__hostAutoInit__H_A_I__.js",
168
134
  "imports": [
169
- "_vite-preload-helper-CaC3yEL3.js",
170
- "_helpers-mPMYxszG.js"
135
+ "_vite-preload-helper-DjNwdemH.js",
136
+ "_helpers-B6m49UKI.js"
171
137
  ],
172
138
  "dynamicImports": [
173
139
  "virtual:mf-REMOTE_ENTRY_ID:__mfe_internal__ConfigCustomTr064Set__customComponents_js",
@@ -175,16 +141,50 @@
175
141
  ]
176
142
  },
177
143
  "virtual:mf:__mfe_internal__ConfigCustomTr064Set__mf_owner__1__P_S__pendingShares__P_S__.js": {
178
- "file": "assets/pendingShares-CGUG-stN.js",
144
+ "file": "assets/pendingShares-_Lyy3-xQ.js",
179
145
  "name": "pendingShares",
180
146
  "src": "virtual:mf:__mfe_internal__ConfigCustomTr064Set__mf_owner__1__P_S__pendingShares__P_S__.js",
181
147
  "imports": [
182
- "_vite-preload-helper-CaC3yEL3.js"
148
+ "_vite-preload-helper-DjNwdemH.js"
183
149
  ],
184
150
  "dynamicImports": [
185
- "__virtual_mf___mfe_internal__ConfigCustomTr064Set__mf_owner__107524468039083__loadShare___mf_0_iobroker_mf_1_gui_mf_2_components__loadShare__.js-YaIhTVWs.js",
186
- "__virtual_mf___mfe_internal__ConfigCustomTr064Set__mf_owner__107524468039083__loadShare__shared-DdQDUBMT.js",
151
+ "__virtual_mf___mfe_internal__ConfigCustomTr064Set__mf_owner__259378411809170__loadShare___mf_0_iobroker_mf_1_gui_mf_2_components__loadShare__.js-DdhKfc_O.js",
152
+ "__virtual_mf___mfe_internal__ConfigCustomTr064Set__mf_owner__259378411809170__loadShare__shared-C-z_ew1q.js",
187
153
  "virtual:mf-localSharedImportMap:__mfe_internal__ConfigCustomTr064Set__mf_owner__1"
188
154
  ]
155
+ },
156
+ "virtual:mf:__mfe_internal__ConfigCustomTr064Set__mf_owner__259378411809170__prebuild___mf_0_iobroker_mf_1_json_mf_2_config__prebuild__.js": {
157
+ "file": "assets/_virtual_mf___mfe_internal__ConfigCustomTr064Set__mf_owner__259378411809170__prebuild___mf_0_iobroker_mf_1_json_mf_2_config__prebuild__-DEVnYCRU.js",
158
+ "name": "_virtual_mf___mfe_internal__ConfigCustomTr064Set__mf_owner__259378411809170__prebuild___mf_0_iobroker_mf_1_json_mf_2_config__prebuild__",
159
+ "src": "virtual:mf:__mfe_internal__ConfigCustomTr064Set__mf_owner__259378411809170__prebuild___mf_0_iobroker_mf_1_json_mf_2_config__prebuild__.js",
160
+ "isDynamicEntry": true,
161
+ "imports": [
162
+ "_rolldown-runtime-Dd_uD5pT.js",
163
+ "__virtual_mf___mfe_internal__ConfigCustomTr064Set__mf_owner__259378411809170__loadShare___mf_0_iobroker_mf_1_gui_mf_2_components__loadShare__.js-DdhKfc_O.js",
164
+ "_vite-preload-helper-DjNwdemH.js",
165
+ "_dist-DaURp8MG.js"
166
+ ],
167
+ "dynamicImports": [
168
+ "node_modules/react-qr-code/lib/index.mjs"
169
+ ]
170
+ },
171
+ "virtual:mf:__mfe_internal__ConfigCustomTr064Set__mf_owner__259378411809170__prebuild__react_mf_1_jsx_mf_2_runtime__prebuild__.js": {
172
+ "file": "assets/_virtual_mf___mfe_internal__ConfigCustomTr064Set__mf_owner__259378411809170__prebuild__react_mf_1_jsx_mf_2_runtime__prebuild__-B_v57Qfr.js",
173
+ "name": "_virtual_mf___mfe_internal__ConfigCustomTr064Set__mf_owner__259378411809170__prebuild__react_mf_1_jsx_mf_2_runtime__prebuild__",
174
+ "src": "virtual:mf:__mfe_internal__ConfigCustomTr064Set__mf_owner__259378411809170__prebuild__react_mf_1_jsx_mf_2_runtime__prebuild__.js",
175
+ "isDynamicEntry": true,
176
+ "imports": [
177
+ "_rolldown-runtime-Dd_uD5pT.js"
178
+ ]
179
+ },
180
+ "virtual:mf:__mfe_internal__ConfigCustomTr064Set__mf_owner__259378411809170__prebuild__react_mf_2_dom_mf_1_client__prebuild__.js": {
181
+ "file": "assets/_virtual_mf___mfe_internal__ConfigCustomTr064Set__mf_owner__259378411809170__prebuild__react_mf_2_dom_mf_1_client__prebuild__-BInMjdwk.js",
182
+ "name": "_virtual_mf___mfe_internal__ConfigCustomTr064Set__mf_owner__259378411809170__prebuild__react_mf_2_dom_mf_1_client__prebuild__",
183
+ "src": "virtual:mf:__mfe_internal__ConfigCustomTr064Set__mf_owner__259378411809170__prebuild__react_mf_2_dom_mf_1_client__prebuild__.js",
184
+ "isDynamicEntry": true,
185
+ "imports": [
186
+ "_rolldown-runtime-Dd_uD5pT.js",
187
+ "__virtual_mf___mfe_internal__ConfigCustomTr064Set__mf_owner__259378411809170__loadShare___mf_0_iobroker_mf_1_gui_mf_2_components__loadShare__.js-DdhKfc_O.js"
188
+ ]
189
189
  }
190
190
  }
@@ -0,0 +1 @@
1
+ import{t as e}from"./MeshTopology-mEnzehAC.js";var t={MeshTopology:e};export{t as default};
@@ -0,0 +1,4 @@
1
+ import{$t as e,An as t,Bn as n,C as r,Cn as i,Dn as a,Dt as o,E as s,En as c,F as l,G as u,H as d,Hi as f,Hn as p,Ht as m,It as h,Jt as g,Kr as _,Li as v,Mn as ee,Mt as y,O as b,On as x,Ot as S,Pn as C,Qn as te,Qt as w,R as ne,Rn as re,Rt as ie,Tn as T,U as ae,V as E,Vi as oe,Xt as D,Yt as O,Zn as k,_i as se,_n as A,bn as ce,bt as j,ct as M,d as le,dn as N,dt as ue,en as P,fn as de,gt as F,jt as fe,kn as I,kt as pe,ln as me,lt as he,mn as ge,nn as _e,pn as ve,qn as ye,qt as be,rn as xe,tn as Se,un as Ce,vi as L,yi as R,yn as we,zi as z,zn as Te}from"./_virtual_mf___mfe_internal__ConfigCustomTr064Set__mf_owner__259378411809170__loadShare___mf_0_iobroker_mf_1_gui_mf_2_components__loadShare__.js-DdhKfc_O.js";import{t as Ee}from"./_virtual_mf___mfe_internal__ConfigCustomTr064Set__mf_owner__259378411809170__loadShare__shared-C-z_ew1q.js";function B(e){if(!e)return`other`;if(e.band)return e.band;let t=(e.interface||``).toUpperCase();return/(^|:)2(G|,4|\.4)/.test(t)?`2.4`:/(^|:)5G/.test(t)?`5`:/(^|:)6G/.test(t)?`6`:(e.type||``).toUpperCase()===`LAN`||t.startsWith(`LAN`)||t.startsWith(`ETH`)?`LAN`:`other`}function V(e){return!!e&&(e.state||``).toUpperCase()===`CONNECTED`}function H(e,t){return e?!V(e)&&V(t)?t:e:t}function U(e){return e.configured||e.name||e.mac||e.uid}function De(e,t){return!!e.node.configured==!!t.node.configured?e.connected===t.connected?U(e.node).localeCompare(U(t.node)):e.connected?-1:1:e.node.configured?-1:1}function Oe(e){return{...e,from:e.to,to:e.from,curDown:e.curUp,curUp:e.curDown,maxDown:e.maxUp,maxUp:e.maxDown,rcpiFrom:e.rcpiTo,rcpiTo:e.rcpiFrom,rsniFrom:e.rsniTo,rsniTo:e.rsniFrom}}function W(e){return(e==null?void 0:e.rcpiTo)??(e==null?void 0:e.rcpiFrom)}function ke(e){return e>=-60?4:e>=-70?3:e>=-80?2:1}function Ae(e,t){let n=(e==null?void 0:e.nodes)||[],r=(e==null?void 0:e.links)||[],i=new Map;n.forEach(e=>i.set(e.uid,e));let a=e=>{var t;let n=(t=i.get(e))==null?void 0:t.role;return!!n&&n!==`client`},o=new Map,s=new Map;for(let e of r)i.has(e.from)&&i.has(e.to)&&e.from!==e.to&&(a(e.from)&&a(e.to)?o.set(e.to,H(o.get(e.to),e)):a(e.from)?s.set(e.to,H(s.get(e.to),e)):a(e.to)&&s.set(e.from,H(s.get(e.from),Oe(e))));let c=n.filter(e=>e.role!==`client`);c.forEach(e=>e.role===`master`&&o.delete(e.uid));let l=new Map;c.forEach(e=>l.set(e.uid,{node:e,uplink:o.get(e.uid),clients:[],children:[]}));let u=0,d=[],f=[];for(let e of n){var p;if(e.role!==`client`)continue;u++;let n=s.get(e.uid),r=V(n);if(t.onlyConfigured&&!e.configured||!r&&!t.showDisconnected&&!e.configured)continue;let i={node:e,link:n,connected:r},a=n?l.get(n.from):void 0;a?a.clients.push(i):d.push(i);let o=n?B(n):``;f.push({uid:e.uid,name:U(e),hostName:e.name,vendor:e.vendor,randomMac:e.randomMac,configured:!!e.configured,accessPoint:(a==null||(p=a.node)==null?void 0:p.name)||``,kind:o,type:(n==null?void 0:n.type)||``,connected:r,curDown:n==null?void 0:n.curDown,curUp:n==null?void 0:n.curUp,rcpi:W(n),position:e.position,deviceClass:e.deviceClass,lastConnected:r||n==null?void 0:n.lastConnected,mac:e.mac,ip:e.ip})}l.forEach(e=>e.clients.sort(De)),d.sort(De),f.sort((e,t)=>e.configured===t.configured?e.connected===t.connected?e.name.localeCompare(t.name):e.connected?-1:1:e.configured?-1:1);let m=[...c].sort((e,t)=>{let n=e=>e.role===`master`?0:e.role===`slave`?1:2;return n(e)-n(t)||e.name.localeCompare(t.name)}),h=new Set,g=[],_=e=>{h.add(e.node.uid);for(let n of m){var t;let r=l.get(n.uid);!h.has(n.uid)&&((t=r.uplink)==null?void 0:t.from)===e.node.uid&&(e.children.push(r),_(r))}};for(let e of m){let t=l.get(e.uid),n=t.uplink&&l.get(t.uplink.from);!h.has(e.uid)&&(!n||e.role===`master`)&&(g.push(t),_(t))}for(let e of m)if(!h.has(e.uid)){let t=l.get(e.uid);g.push(t),_(t)}return{roots:g,unassigned:d,rows:f,total:u}}function G(e,t){return t&&je(e)?56:40}function je(e){return e.clients.some(e=>e.connected&&W(e.link)!==void 0)}function Me(e){return e<=8?1:e<=20?2:e<=48?3:4}function Ne(e,t,n){let r=Math.ceil(e/t);return 60+(e?r*(n+6)-6+10:0)}function Pe(e,t=!1){let n=[],r=[],i=new Map,a=e=>{let n=e.clients.length,r=Me(n);return{w:Math.max(240,r*340+(r-1)*6+20),h:Ne(n,r,G(e,t)),columns:r}},o=e=>{let t=a(e).w,n=e.children.reduce((e,t)=>e+o(t),0),r=Math.max(t,n+32*Math.max(0,e.children.length-1));return i.set(e,r),r},s=0,c=(e,o,l)=>{let u=a(e),d=i.get(e),f={view:e,x:o+(d-u.w)/2,y:l,w:u.w,h:u.h,columns:u.columns,chipW:340,chipH:G(e,t)};n.push(f),s=Math.max(s,l+u.h);let p=o+(d-(e.children.reduce((e,t)=>e+i.get(t),0)+32*Math.max(0,e.children.length-1)))/2;for(let t of e.children){let e=c(t,p,l+u.h+76);if(t.uplink){let n=f.x+f.w/2,i=f.y+f.h,a=e.x+e.w/2,o=e.y,s=i+(o-i)/2;r.push({link:t.uplink,d:`M ${n} ${i} V ${s} H ${a} V ${o}`,labelX:a+6,labelY:o-10})}p+=i.get(t)+32}return f},l=16;for(let t of e)o(t),c(t,l,16),l+=i.get(t)+64;return{kind:`tree`,cards:n,edges:r,width:Math.max(l-64+16,0),height:s+16}}function Fe(e,t,n=!1){let r=[],i=[],a=8,o=(e,s)=>{let c=8+s*22,l=Math.max(232,t-8-c),u=l-20,d=e.clients.length,f=Math.max(1,Math.min(d||1,Math.floor((u+6)/218))),p=Math.min(420,(u-(f-1)*6)/f),m=G(e,n),h={view:e,x:c,y:a,w:l,h:Ne(d,f,m),columns:f,chipW:p,chipH:m};r.push(h),a+=h.h+30;let g=h.x+11,_=h.y+h.h;for(let t of e.children){let e=o(t,s+1);if(t.uplink){let n=e.y+24;i.push({link:t.uplink,d:`M ${g} ${_} V ${n} H ${e.x}`,labelX:e.x+4,labelY:e.y-8}),_=n}}return h};for(let t of e)o(t,0);return{kind:`stack`,cards:r,edges:i,width:t,height:Math.max(a-30+8,0)}}function Ie(e,t,n=!1){let r=Pe(e,n);return r.width<=t?r:Fe(e,t,n)}function K(e,t,n=!1){return Math.max(3,Math.floor(e/(t*(n?.62:.56))))}function q(e,t){return e.length>t?`${e.substring(0,Math.max(1,t-1))}…`:e}function J(e){if(!e)return`–`;let t=e/1e3;return t>=10?Math.round(t).toString():t.toFixed(1)}var Le={COMPUTER:ne,STORAGE:w,SMARTPHONE:g,TABLET:P,GAMING_DEVICE:D,SET_TOP_BOX:xe,PRINTER:y,NETWORK_SWITCH:he,SPEAKER:O,ROBOT:be,PHONE:o,IP_PHONE:S,CIRCUIT_BOARD:E,CAMERA:r,DOOR_LOCK:F,DOOR_BELL:ae,SHUTTER:s,AIR_CONDITIONER:M,LAMP:ue,THERMOSTAT:Se,BUTTON:_e,SOCKET:fe,SENSOR:m,MONITOR:j,SMART_WATCH:b,ROUTER:ie};function Re(e){return e&&Le[e]||d}function ze(e){let t=Re(e.deviceClass);return L(t,{x:e.x,y:e.y,width:e.size,height:e.size,sx:{width:e.size,height:e.size,color:e.color}})}var Be=`not alive`,Ve=`not connected`,He=`not supported`,Y=`timeout`;async function Ue(e,t,n=2e4){try{let r=await e.getState(`system.adapter.${t}.alive`);if(!(r!=null&&r.val))return{error:Be,nodes:[],links:[]};let i,a=new Promise(e=>{i=setTimeout(()=>e(Y),n)}),o=e.sendTo(t,`mesh`,{}),s=await Promise.race([o,a]);return clearTimeout(i),s===`timeout`||!s||typeof s!=`object`?{error:Y,nodes:[],links:[]}:{error:s.error,ts:s.ts,nodes:Array.isArray(s.nodes)?s.nodes:[],links:Array.isArray(s.links)?s.links:[],canRename:!!s.canRename}}catch(e){return{error:(e==null?void 0:e.message)||String(e),nodes:[],links:[]}}}async function We(e,t,n,r,i=2e4){try{let a=await e.getState(`system.adapter.${t}.alive`);if(!(a!=null&&a.val))return Be;let o,s=new Promise(e=>{o=setTimeout(()=>e(Y),i)}),c=e.sendTo(t,`setHostName`,{mac:n,name:r}),l=await Promise.race([c,s]);return clearTimeout(o),l===`timeout`||!l||typeof l!=`object`?Y:l.error||void 0}catch(e){return(e==null?void 0:e.message)||String(e)}}var Ge=class{constructor(e){_(this,`options`,void 0),_(this,`timer`,null),_(this,`running`,!1),_(this,`stopped`,!0),_(this,`current`,{data:null,loading:!1,error:null}),this.options=e}get state(){return this.current}start(){this.stop(),this.stopped=!1,this.refresh();let e=this.options.interval??30;e>0&&(this.timer=setInterval(()=>void this.refresh(),e*1e3))}stop(){this.stopped=!0,this.timer&&=(clearInterval(this.timer),null)}async refresh(){if(this.running||this.stopped)return;this.running=!0,this.update({loading:!0});let e=await Ue(this.options.socket,this.options.instanceId,this.options.timeout);this.running=!1,!this.stopped&&(e.error?e.error===`not alive`?this.update({data:null,loading:!1,error:e.error}):this.update({loading:!1,error:e.error}):this.update({data:e,loading:!1,error:null}))}async rename(e,t){let n=await We(this.options.socket,this.options.instanceId,e,t,this.options.timeout);return!n&&!this.stopped&&await this.refresh(),n}update(e){this.current={...this.current,...e},this.stopped||this.options.onChange(this.current)}},X={2.4:`#f59e0b`,5:`#3b82f6`,6:`#8b5cf6`,LAN:`#10b981`,other:`#9ca3af`},Ke=13,qe=26,Je=16,Ye=63,Xe=600,Ze=63,Qe=760,$e=480;function et(e){let t={onlyConfigured:!1,showDisconnected:!1,showVendor:!0,viewMode:`graph`};try{let n=JSON.parse(window.localStorage.getItem(e)||`{}`);t.onlyConfigured=!!n.onlyConfigured,t.showDisconnected=!!n.showDisconnected,t.showVendor=n.showVendor!==!1,t.viewMode=n.viewMode===`table`?`table`:`graph`}catch{}return t}function tt(e,t){try{window.localStorage.setItem(e,JSON.stringify(t))}catch{}}function Z(e,t){return e.vendor||(e.randomMac?t(`tr064_randomMac`):``)}function Q(e){switch(e){case`2.4`:case`5`:case`6`:return`${e} GHz`;case`LAN`:return`LAN`;default:return``}}function nt(e,t){switch(e){case Be:return{severity:`info`,text:t(`tr064_startInstance`)};case Ve:return{severity:`warning`,text:t(`tr064_notConnected`)};case He:return{severity:`warning`,text:t(`tr064_notSupported`)};case Y:return{severity:`warning`,text:t(`tr064_timeout`)};default:return{severity:`warning`,text:t(`tr064_error`,e)}}}function rt(e){return e.connected&&(e.curDown||e.curUp)?`↓ ${J(e.curDown)} / ↑ ${J(e.curUp)}`:``}var it=`#ef4444`;function at(e,t,n){return ke(t)===1||n===`too_far`?it:X[e||`other`]}function ot(e){let t=ke(e.rcpi);return L(`g`,{transform:`translate(${e.x}, ${e.y})`,children:[0,1,2,3].map(n=>{let r=3+n*2.5;return L(`rect`,{x:n*3.3,y:-r,width:2.4,height:r,rx:.8,fill:e.color,opacity:n<t?1:.22},n)})})}function st(e){return e===void 0?``:`${e} dBm`}function $(e,t){return e?t(`tr064_lastSeen`,new Date(e).toLocaleString()):``}function ct(e,t,n){let r=[];return((e==null?void 0:e.rcpiTo)!==void 0||(e==null?void 0:e.rcpiFrom)!==void 0)&&r.push(n(`tr064_signalTooltip`,e.rcpiTo===void 0?`–`:String(e.rcpiTo),e.rcpiFrom===void 0?`–`:String(e.rcpiFrom))),((e==null?void 0:e.rsniTo)!==void 0||(e==null?void 0:e.rsniFrom)!==void 0)&&r.push(n(`tr064_noiseTooltip`,e.rsniTo===void 0?`–`:String(e.rsniTo),e.rsniFrom===void 0?`–`:String(e.rsniFrom))),(t===`too_far`||t===`too_close`)&&r.push(n(`tr064_position_${t}`)),r}function lt(e){return L(T,{component:`span`,sx:{display:`inline-block`,flexShrink:0,width:10,height:10,borderRadius:`2px`,backgroundColor:X[e.kind]}})}function ut(){return L(T,{sx:{display:`flex`,gap:1.5,alignItems:`center`,flexWrap:`wrap`},children:[`2.4`,`5`,`6`,`LAN`].map(e=>R(T,{sx:{display:`flex`,alignItems:`center`,gap:.5},children:[L(lt,{kind:e}),L(i,{variant:`caption`,children:Q(e)})]},e))})}function dt(e,t,n,r){var i;let a=B(e.link),o=((i=e.link.state)==null?void 0:i.toUpperCase())===`CONNECTED`,s=[Q(a)||e.link.type,o&&e.link.curDown?`${J(e.link.curDown)} Mbit/s`:``].filter(Boolean).join(` · `),c=[`${e.link.interface||e.link.type} - ${r(o?`tr064_connected`:`tr064_disconnected`)}`,e.link.curDown||e.link.curUp?r(`tr064_rateTooltip`,J(e.link.curDown),J(e.link.curUp)):``,...ct(e.link,void 0,r),o?``:$(e.link.lastConnected,r)].filter(Boolean);return R(`g`,{children:[L(`title`,{children:c.join(`
2
+ `)}),L(`path`,{d:e.d,fill:`none`,stroke:X[a],strokeWidth:2.5,strokeDasharray:o?void 0:`6 4`}),L(`text`,{x:e.labelX,y:e.labelY,fontSize:11,fill:n.palette.text.secondary,children:s})]},`edge-${t}`)}function ft(e,t,n,r){let i=t.palette,a=e.view.node,o=a?a.name||a.mac:n(`tr064_notAssigned`),s=a?n(`tr064_role_${a.role}`):``,l=a!=null&&a.model&&a.model!==a.name?a.model:``,u=a&&r.showVendor?Z(a,n):``,d=[l||u,(a==null?void 0:a.ip)||``,s].filter(Boolean).join(` · `),f=a&&a.role!==`master`&&a.mac&&r.onRename?a.uid:``,p=e.view.clients.length,m=p===1?n(`tr064_oneDevice`):p?n(`tr064_devices`,p):``,h=K(e.w-20-(m?m.length*6.2+8:0),14,!0),g=K(e.w-20,11);return R(`g`,{transform:`translate(${e.x}, ${e.y})`,children:[L(`title`,{children:[o,a==null?void 0:a.model,a?Z(a,n):``,a==null?void 0:a.mac,a==null?void 0:a.ip,f?n(`tr064_clickToRename`):``].filter(Boolean).join(`
3
+ `)}),L(`rect`,{width:e.w,height:e.h,rx:8,fill:i.background.paper,stroke:(a==null?void 0:a.role)===`master`?i.primary.main:i.divider,strokeWidth:(a==null?void 0:a.role)===`master`?2:1,strokeDasharray:a?void 0:`5 4`}),L(`text`,{x:10,y:24,fontSize:14,fontWeight:600,fill:i.text.primary,style:f?{cursor:`pointer`}:void 0,onClick:f?()=>r.onRename(f):void 0,children:q(o,h)}),L(`text`,{x:10,y:42,fontSize:11,fill:i.text.secondary,children:q(d,g)}),L(`text`,{x:e.w-10,y:24,fontSize:11,textAnchor:`end`,fill:i.text.secondary,children:m}),e.view.clients.map((t,a)=>{var o;let s=a%e.columns,l=Math.floor(a/e.columns),u=10+s*(e.chipW+6),d=60+l*(e.chipH+6),f=B(t.link),p=!!t.node.configured,m=t.node.configured||t.node.name||t.node.mac,h=r.showVendor?Z(t.node,n):``,g=e.chipH>=56&&!!h,_=t.connected?W(t.link):void 0,v=Math.max(Q(f)?34:0,_===void 0?0:Ye),ee=e.chipW-47-v-6,y=_===void 0?e.chipW-47-8:ee,b=t.node.ip?`IP: ${t.node.ip}`:``,x=!g&&b&&h?b.length*5.7+10:0,S=_===void 0?``:at(f,_,t.node.position),C=[p?n(`tr064_configuredAs`,t.node.configured):``,t.node.name,Z(t.node,n),t.node.mac,t.node.ip,t.link?t.link.interface||t.link.type:``,t.connected?n(`tr064_connected`):n(`tr064_disconnected`),t.link&&(t.link.curDown||t.link.curUp)?n(`tr064_rateTooltip`,J(t.link.curDown),J(t.link.curUp)):``,...t.connected?ct(t.link,t.node.position,n):[],t.connected?``:$((o=t.link)==null?void 0:o.lastConnected,n),r.onRename?n(`tr064_clickToRename`):``].filter(Boolean);return R(`g`,{transform:`translate(${u}, ${d})`,opacity:t.connected?1:p?.85:.6,style:r.onRename?{cursor:`pointer`}:void 0,onClick:r.onRename?()=>r.onRename(t.node.uid):void 0,children:[L(`title`,{children:C.join(`
4
+ `)}),L(`rect`,{width:e.chipW,height:e.chipH,rx:7,fill:i.action.hover,stroke:p?i.primary.main:i.divider,strokeWidth:p?2:1,strokeDasharray:t.connected?void 0:`4 3`}),L(`path`,{d:`M 7 0.5 H 7 A 6.5 6.5 0 0 0 0.5 7 V ${e.chipH-7} A 6.5 6.5 0 0 0 7 ${e.chipH-.5} V 0.5 Z`,fill:X[f]}),L(`rect`,{x:Ke,y:(e.chipH-qe)/2,width:qe,height:qe,rx:6,fill:c(X[f],.14)}),L(ze,{deviceClass:t.node.deviceClass,x:18,y:(e.chipH-Je)/2,size:Je,color:X[f]}),L(`text`,{x:47,y:g?19:17,fontSize:12.5,fontWeight:p?700:600,fill:p?i.primary.main:i.text.primary,children:q(m,K(ee,12.5,!0))}),h?L(`text`,{x:47,y:g?34:31,fontSize:10,fontStyle:`italic`,opacity:.75,fill:i.text.secondary,children:q(h,K(y-x,10))}):null,b?L(`text`,{x:x?47+y:47,y:g?48:31,fontSize:10,textAnchor:x?`end`:`start`,fill:i.text.secondary,children:q(b,K(y,10))}):null,L(`text`,{x:e.chipW-8,y:g?19:16,fontSize:10,textAnchor:`end`,fill:i.text.secondary,children:Q(f)}),_===void 0?null:R(se,{children:[L(ot,{rcpi:_,x:e.chipW-8-Ye,y:g?41:34,color:S}),L(`text`,{x:e.chipW-8,y:g?41:34,fontSize:10.5,textAnchor:`end`,fill:S,children:st(_)})]})]},t.node.uid)})]},`card-${(a==null?void 0:a.uid)||`unassigned`}`)}function pt(e){let{tree:t,width:n,t:r,theme:a,showVendor:o,onRename:s}=e,c=n>=Qe,l=n>=$e,d=l?void 0:{px:1};return R(me,{size:`small`,stickyHeader:!0,children:[L(ve,{children:R(ge,{children:[L(N,{sx:d,children:r(`tr064_device`)}),l?L(N,{children:r(`tr064_accessPoint`)}):null,L(N,{sx:d,children:r(`tr064_connection`)}),l?L(N,{children:r(`tr064_state`)}):null,l?L(N,{children:r(`tr064_signal`)}):null,l?L(N,{children:r(`tr064_rate`)}):null,c?L(N,{children:r(`tr064_mac`)}):null,c?L(N,{children:r(`tr064_ip`)}):null,s?L(N,{sx:{width:40}}):null]})}),L(Ce,{children:t.rows.map(e=>R(ge,{sx:{opacity:e.connected?1:.6},children:[R(N,{sx:{...d,fontWeight:e.configured?700:400,color:e.configured?a.palette.primary.main:void 0,overflowWrap:`anywhere`},title:e.configured&&e.hostName!==e.name?e.hostName:void 0,children:[R(T,{sx:{display:`flex`,alignItems:`center`,gap:.75},children:[L(T,{component:Re(e.deviceClass),sx:{fontSize:17,flex:`0 0 auto`,color:e.kind?X[e.kind]:`text.secondary`}}),L(`span`,{children:e.name})]}),o&&Z(e,r)?L(i,{variant:`caption`,component:`div`,color:`text.secondary`,sx:{fontStyle:`italic`,opacity:.7,fontWeight:400},children:Z(e,r)}):null,l?null:L(i,{variant:`caption`,component:`div`,color:`text.secondary`,sx:{fontWeight:400},children:[e.accessPoint||r(`tr064_notAssigned`),e.connected?``:r(`tr064_disconnected`)].filter(Boolean).join(` · `)})]}),l?L(N,{children:e.accessPoint||r(`tr064_notAssigned`)}):null,L(N,{sx:{...d,whiteSpace:`nowrap`},children:e.kind?R(T,{sx:{display:`flex`,alignItems:`center`,gap:.75},children:[L(lt,{kind:e.kind}),Q(e.kind)||e.type]}):null}),l?R(N,{children:[e.connected?r(`tr064_connected`):r(`tr064_disconnected`),!e.connected&&e.lastConnected?L(i,{variant:`caption`,component:`div`,color:`text.secondary`,children:$(e.lastConnected,r)}):null]}):null,l?R(N,{sx:{whiteSpace:`nowrap`},children:[e.connected&&e.rcpi!==void 0?R(T,{sx:{display:`flex`,alignItems:`center`,gap:.75},children:[L(T,{component:`svg`,viewBox:`0 0 13 11`,sx:{width:13,height:11,flex:`0 0 auto`},children:L(ot,{rcpi:e.rcpi,x:0,y:11,color:at(e.kind,e.rcpi,e.position)})}),st(e.rcpi)]}):null,e.connected&&(e.position===`too_far`||e.position===`too_close`)?L(i,{variant:`caption`,component:`div`,color:e.position===`too_far`?`warning.main`:`text.secondary`,children:r(`tr064_position_${e.position}`)}):null]}):null,l?L(N,{sx:{whiteSpace:`nowrap`},children:rt(e)}):null,c?L(N,{sx:{fontFamily:`monospace`},children:e.mac}):null,c?L(N,{children:e.ip||``}):null,s?L(N,{sx:{...d,width:40},children:L(te,{size:`small`,title:r(`tr064_rename`),onClick:()=>s(e.uid),children:L(u,{fontSize:`small`})})}):null]},e.uid))})]})}function mt(e){let{node:t,t:r,onClose:a,onRename:o}=e,[s,c]=f(t.name||``),[d,m]=f(!1),[h,g]=f(null),_=s.trim()&&s.trim()!==t.name,v=()=>{_&&!d&&(m(!0),g(null),o(t.mac,s.trim()).then(e=>{m(!1),e?g(e):a()}))};return R(re,{open:!0,fullWidth:!0,maxWidth:`sm`,onClose:d?void 0:a,children:[L(p,{children:r(`tr064_renameTitle`)}),R(n,{children:[L(i,{variant:`body2`,color:`text.secondary`,sx:{mb:2},children:[t.mac,Z(t,r),t.ip].filter(Boolean).join(` · `)}),L(A,{fullWidth:!0,autoFocus:!0,variant:`standard`,label:r(`tr064_newName`),value:s,disabled:d,error:!!h,slotProps:{htmlInput:{maxLength:Ze}},onChange:e=>c(e.target.value),onKeyUp:e=>{e.key===`Enter`&&v()}}),L(k,{severity:`info`,sx:{mt:2},children:r(`tr064_renameHint`)}),h?L(k,{severity:`error`,sx:{mt:1},children:r(`tr064_renameFailed`,h)}):null]}),R(Te,{children:[L(I,{variant:`contained`,disabled:d||!_,startIcon:d?L(C,{size:16}):L(u,{}),onClick:v,children:r(`tr064_rename`)}),L(I,{variant:`contained`,color:`inherit`,disabled:d,startIcon:L(l,{}),onClick:a,children:r(`tr064_cancel`)})]})]})}function ht(n){let{data:r,loading:o,error:s,onRefresh:c,onRename:l,t:u,compact:d,height:p}=n,m=n.storageKey||`tr064.meshTopology`,g=x(),_=z(()=>n.themeType&&n.themeType!==g.palette.mode?a({palette:{mode:n.themeType}}):g,[g,n.themeType]),[y,b]=f(()=>et(m)),S=e=>{let t={...y,...e};b(t),tt(m,t)},[w,ne]=f(null),re=w?((r==null?void 0:r.nodes)||[]).find(e=>e.uid===w):void 0,ie=l&&r!=null&&r.canRename?e=>ne(e):void 0,ae=oe(null),[E,D]=f(0);v(()=>{let e=ae.current;if(!e||(D(Math.floor(e.getBoundingClientRect().width)),typeof ResizeObserver>`u`))return;let t=new ResizeObserver(e=>{var t;let n=Math.floor(((t=e[0])==null?void 0:t.contentRect.width)||0);D(e=>e===n?e:n)});return t.observe(e),()=>t.disconnect()},[]);let O=z(()=>r?Ae(r,{onlyConfigured:y.onlyConfigured,showDisconnected:y.showDisconnected}):null,[r,y.onlyConfigured,y.showDisconnected]),A=Math.max(0,E-2),j=z(()=>{if(!O||!A)return null;let e=[...O.roots];return O.unassigned.length&&e.push({clients:O.unassigned,children:[]}),Ie(e,A,y.showVendor)},[O,A,y.showVendor]),M=!!d||E>0&&E<Xe,le=p!=null&&p!==``,N={overflow:`auto`,minHeight:0,border:`1px solid ${_.palette.divider}`,borderRadius:1,...le?{flex:`1 1 auto`}:{maxHeight:`75vh`}},ue=R(T,{sx:{display:`flex`,alignItems:`center`,flexWrap:`wrap`,columnGap:M?.5:1,rowGap:.5,mb:1,flex:`0 0 auto`},children:[M?L(te,{size:`small`,title:u(`tr064_refresh`),disabled:o,onClick:()=>c(),children:o?L(C,{size:18}):L(h,{fontSize:`small`})}):L(I,{variant:`outlined`,size:`small`,startIcon:o?L(C,{size:16}):L(h,{}),disabled:o,onClick:()=>c(),children:u(`tr064_refresh`)}),[{key:`onlyConfigured`,label:u(`tr064_onlyConfigured`)},{key:`showDisconnected`,label:u(`tr064_showDisconnected`)},{key:`showVendor`,label:u(`tr064_showVendor`)}].map(e=>L(ye,{sx:M?{mr:.5,ml:0}:void 0,control:L(ee,{size:`small`,sx:M?{p:.5}:void 0,checked:y[e.key],onChange:t=>S({[e.key]:t.target.checked})}),label:L(i,{variant:M?`body2`:`body1`,children:e.label})},e.key)),R(ce,{size:`small`,exclusive:!0,value:y.viewMode,onChange:(e,t)=>t&&S({viewMode:t}),children:[L(we,{value:`graph`,title:u(`tr064_graph`),sx:M?{p:.5}:void 0,children:L(pe,{fontSize:`small`})}),L(we,{value:`table`,title:u(`tr064_table`),sx:M?{p:.5}:void 0,children:L(e,{fontSize:`small`})})]}),L(T,{sx:{flexGrow:1}}),R(T,{sx:{display:`flex`,alignItems:`center`,flexWrap:`wrap`,columnGap:1.5,rowGap:.5},children:[L(ut,{}),r!=null&&r.ts?L(i,{variant:`caption`,color:`text.secondary`,children:u(`tr064_updated`,new Date(r.ts).toLocaleTimeString())}):null]})]}),P;if(s&&(s===`not alive`||!r)){let e=nt(s,u);P=L(k,{severity:e.severity,children:e.text})}else if(!r||!O)P=R(T,{sx:{display:`flex`,alignItems:`center`,gap:1,p:2},children:[L(C,{size:20}),L(i,{children:u(`tr064_loading`)})]});else{let e=s?nt(s,u):null;P=R(se,{children:[e?L(k,{severity:e.severity,sx:{mb:1,flex:`0 0 auto`},children:e.text}):null,!O.roots.length&&!O.unassigned.length?L(k,{severity:`info`,children:u(`tr064_noData`)}):y.viewMode===`table`?L(de,{sx:N,children:L(pt,{tree:O,width:A,t:u,theme:_,showVendor:y.showVendor,onRename:ie})}):L(T,{sx:{...N,backgroundColor:_.palette.background.default},children:j?R(`svg`,{width:j.width,height:j.height,style:{display:`block`,fontFamily:_.typography.fontFamily},children:[j.edges.map((e,t)=>dt(e,t,_,u)),j.cards.map(e=>ft(e,_,u,{showVendor:y.showVendor,onRename:ie}))]}):null})]})}let F=R(T,{ref:ae,sx:{width:`100%`,minWidth:0,display:`flex`,flexDirection:`column`,...le?{height:p}:{}},children:[ue,P,re&&l?L(mt,{node:re,t:u,onClose:()=>ne(null),onRename:l}):null]});return _===g?F:L(t,{theme:_,children:F})}var gt=class e extends Ee{constructor(e){super(e),_(this,`loader`,null),this.state={...this.state,data:null,loading:!1,error:null}}async componentDidMount(){await super.componentDidMount(),this.loader=new Ge({socket:this.props.oContext.socket,instanceId:`${this.props.oContext.adapterName}.${this.props.oContext.instance}`,onChange:e=>this.setState(e)}),this.loader.start()}componentWillUnmount(){var e;(e=this.loader)==null||e.stop(),this.loader=null,super.componentWillUnmount()}renderItem(t,n,r){return L(ht,{data:this.state.data,loading:this.state.loading,error:this.state.error,onRefresh:()=>{var e;(e=this.loader)==null||e.refresh()},onRename:async(e,t)=>this.loader?this.loader.rename(e,t):`not alive`,t:e.t,themeType:this.props.oContext.themeType===`dark`?`dark`:`light`,storageKey:`tr064.meshTopology`})}};_(gt,`t`,(e,...t)=>le.t(e,...t));export{gt as t};
@@ -0,0 +1 @@
1
+ import{t as e}from"./vite-preload-helper-DjNwdemH.js";import"./dist-DaURp8MG.js";var t=e=>{let t=e;for(let e=0;e<5;e++){let e=t==null?void 0:t.default;if(!e||typeof e!=`object`||Object.keys(e).length===0)break;let n=Object.getPrototypeOf(e);if(n!==null&&n!==Object.prototype)break;let r=Object.keys(t).filter(e=>e!=="default").map(e=>t[e]);if(r.length>0&&r.some(e=>e!==void 0))break;t=e}return t},n=(e,t,n,r)=>{var i,a;let o=(i=globalThis.__mf_module_cache__)==null?void 0:i.share,s=t.map(e=>o==null?void 0:o[e]).find(e=>e!==void 0),c=e=>{let t=String(e||``).split(/[^0-9]+/).map(Number),r=String(n||``).split(/[^0-9]+/).map(Number);for(let e=0;e<Math.max(t.length,r.length);e++){if((t[e]||0)<(r[e]||0))return!0;if((t[e]||0)>(r[e]||0))return!1}return!1};if(!c((s==null?void 0:s.version)??(s==null||(a=s.default)==null?void 0:a.version)))for(let t of e){var l,u;let e=o==null?void 0:o[t];if(e===void 0)continue;let n=(e==null?void 0:e.version)??(e==null||(l=e.default)==null?void 0:l.version);if(!(n!==void 0&&c(n))&&(!r||typeof(e==null?void 0:e[r])==`function`||typeof(e==null||(u=e.default)==null?void 0:u[r])==`function`))return e}},r={react:async()=>await e(()=>import(`./_virtual_mf___mfe_internal__ConfigCustomTr064Set__mf_owner__259378411809170__loadShare___mf_0_iobroker_mf_1_gui_mf_2_components__loadShare__.js-DdhKfc_O.js`).then(e=>e.Wi),[],import.meta.url),"react/jsx-runtime":async()=>await e(()=>import(`./_virtual_mf___mfe_internal__ConfigCustomTr064Set__mf_owner__259378411809170__prebuild__react_mf_1_jsx_mf_2_runtime__prebuild__-B_v57Qfr.js`),[],import.meta.url),"react-dom":async()=>await e(()=>import(`./_virtual_mf___mfe_internal__ConfigCustomTr064Set__mf_owner__259378411809170__loadShare___mf_0_iobroker_mf_1_gui_mf_2_components__loadShare__.js-DdhKfc_O.js`).then(e=>e.zr),[],import.meta.url),"react-dom/client":async()=>await e(()=>import(`./_virtual_mf___mfe_internal__ConfigCustomTr064Set__mf_owner__259378411809170__prebuild__react_mf_2_dom_mf_1_client__prebuild__-BInMjdwk.js`),[],import.meta.url),"@mui/material":async()=>await e(()=>import(`./_virtual_mf___mfe_internal__ConfigCustomTr064Set__mf_owner__259378411809170__loadShare___mf_0_iobroker_mf_1_gui_mf_2_components__loadShare__.js-DdhKfc_O.js`).then(e=>e.gr),[],import.meta.url),"@mui/icons-material":async()=>await e(()=>import(`./_virtual_mf___mfe_internal__ConfigCustomTr064Set__mf_owner__259378411809170__loadShare___mf_0_iobroker_mf_1_gui_mf_2_components__loadShare__.js-DdhKfc_O.js`).then(e=>e.an),[],import.meta.url),"@iobroker/gui-components":async()=>await e(()=>import(`./_virtual_mf___mfe_internal__ConfigCustomTr064Set__mf_owner__259378411809170__loadShare___mf_0_iobroker_mf_1_gui_mf_2_components__loadShare__.js-DdhKfc_O.js`).then(e=>e.b),[],import.meta.url),"@iobroker/json-config":async()=>await e(()=>import(`./_virtual_mf___mfe_internal__ConfigCustomTr064Set__mf_owner__259378411809170__prebuild___mf_0_iobroker_mf_1_json_mf_2_config__prebuild__-DEVnYCRU.js`),[],import.meta.url)},i={react:{name:`react`,version:`19.3.0`,scope:[`default`],loaded:!1,materialize:!0,eager:!1,from:`ConfigCustomTr064Set`,canLiveRebind:!0,get(){let e=i.react;return e.lib?e.lib:(e.loading||=(async()=>{try{let{react:n}=r,i=t({...await n()});return i.__esModule!==!0&&Object.defineProperty(i,"__esModule",{value:!0,enumerable:!1}),e.lib=function(){return i},e.loaded=!0,e.lib}finally{e.loading=void 0}})(),e.loading)},shareConfig:{singleton:!0,requiredVersion:`*`,strictVersion:!1,eager:!1}},"react/jsx-runtime":{name:`react/jsx-runtime`,version:`19.3.0`,scope:[`default`],loaded:!1,materialize:!0,eager:!1,from:`ConfigCustomTr064Set`,canLiveRebind:!0,get(){let e=i[`react/jsx-runtime`];if(e.lib)return e.lib;if(e.loading)return e.loading;let a=n([`default:react/jsx-runtime`,`react/jsx-runtime`],[`default:react`,`react`],`19.3.0`,void 0);return a===void 0?(e.loading=(async()=>{try{let{"react/jsx-runtime":n}=r,i=t({...await n()});return i.__esModule!==!0&&Object.defineProperty(i,"__esModule",{value:!0,enumerable:!1}),e.lib=function(){return i},e.loaded=!0,e.lib}finally{e.loading=void 0}})(),e.loading):(e.lib=function(){return a},e.loaded=!0,e.lib)},shareConfig:{singleton:!0,requiredVersion:`*`,strictVersion:!1,eager:!1}},"react-dom":{name:`react-dom`,version:`19.3.0`,scope:[`default`],loaded:!1,materialize:!0,eager:!1,from:`ConfigCustomTr064Set`,canLiveRebind:!0,get(){let e=i[`react-dom`];return e.lib?e.lib:(e.loading||=(async()=>{try{let{"react-dom":n}=r,i=t({...await n()});return i.__esModule!==!0&&Object.defineProperty(i,"__esModule",{value:!0,enumerable:!1}),e.lib=function(){return i},e.loaded=!0,e.lib}finally{e.loading=void 0}})(),e.loading)},shareConfig:{singleton:!0,requiredVersion:`*`,strictVersion:!1,eager:!1}},"react-dom/client":{name:`react-dom/client`,version:`19.3.0`,scope:[`default`],loaded:!1,materialize:!0,eager:!1,from:`ConfigCustomTr064Set`,canLiveRebind:!0,get(){let e=i[`react-dom/client`];if(e.lib)return e.lib;if(e.loading)return e.loading;let a=n([`default:react-dom/client`,`react-dom/client`,`default:react-dom`,`react-dom`],[`default:react`,`react`],`19.3.0`,`createRoot`);return a===void 0?(e.loading=(async()=>{try{let{"react-dom/client":n}=r,i=t({...await n()});return i.__esModule!==!0&&Object.defineProperty(i,"__esModule",{value:!0,enumerable:!1}),e.lib=function(){return i},e.loaded=!0,e.lib}finally{e.loading=void 0}})(),e.loading):(e.lib=function(){return a},e.loaded=!0,e.lib)},shareConfig:{singleton:!0,requiredVersion:`*`,strictVersion:!1,eager:!1}},"@mui/material":{name:`@mui/material`,version:`9.4.0`,scope:[`default`],loaded:!1,materialize:!0,eager:!1,from:`ConfigCustomTr064Set`,canLiveRebind:!0,get(){let e=i[`@mui/material`];return e.lib?e.lib:(e.loading||=(async()=>{try{let{"@mui/material":n}=r,i=t({...await n()});return i.__esModule!==!0&&Object.defineProperty(i,"__esModule",{value:!0,enumerable:!1}),e.lib=function(){return i},e.loaded=!0,e.lib}finally{e.loading=void 0}})(),e.loading)},shareConfig:{singleton:!0,requiredVersion:`*`,strictVersion:!1,eager:!1}},"@mui/icons-material":{name:`@mui/icons-material`,version:`9.4.0`,scope:[`default`],loaded:!1,materialize:!0,eager:!1,from:`ConfigCustomTr064Set`,canLiveRebind:!0,get(){let e=i[`@mui/icons-material`];return e.lib?e.lib:(e.loading||=(async()=>{try{let{"@mui/icons-material":n}=r,i=t({...await n()});return i.__esModule!==!0&&Object.defineProperty(i,"__esModule",{value:!0,enumerable:!1}),e.lib=function(){return i},e.loaded=!0,e.lib}finally{e.loading=void 0}})(),e.loading)},shareConfig:{singleton:!0,requiredVersion:`*`,strictVersion:!1,eager:!1}},"@iobroker/gui-components":{name:`@iobroker/gui-components`,version:`10.3.9`,scope:[`default`],loaded:!1,materialize:!0,eager:!1,from:`ConfigCustomTr064Set`,canLiveRebind:!0,get(){let e=i[`@iobroker/gui-components`];return e.lib?e.lib:(e.loading||=(async()=>{try{let{"@iobroker/gui-components":n}=r,i=t({...await n()});return i.__esModule!==!0&&Object.defineProperty(i,"__esModule",{value:!0,enumerable:!1}),e.lib=function(){return i},e.loaded=!0,e.lib}finally{e.loading=void 0}})(),e.loading)},shareConfig:{singleton:!0,requiredVersion:`*`,strictVersion:!1,eager:!1}},"@iobroker/json-config":{name:`@iobroker/json-config`,version:`10.1.0`,scope:[`default`],loaded:!1,materialize:!0,eager:!1,from:`ConfigCustomTr064Set`,canLiveRebind:!0,get(){let e=i[`@iobroker/json-config`];return e.lib?e.lib:(e.loading||=(async()=>{try{let{"@iobroker/json-config":n}=r,i=t({...await n()});return i.__esModule!==!0&&Object.defineProperty(i,"__esModule",{value:!0,enumerable:!1}),e.lib=function(){return i},e.loaded=!0,e.lib}finally{e.loading=void 0}})(),e.loading)},shareConfig:{singleton:!0,requiredVersion:`*`,strictVersion:!1,eager:!1}}},a=[];export{a as usedRemotes,i as usedShared};