iobroker.admin 7.7.2 → 7.7.15

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 (236) hide show
  1. package/LICENSE +1 -1
  2. package/README.md +120 -13
  3. package/admin/README.md +3 -0
  4. package/admin/admin.png +0 -0
  5. package/admin/i18n/de.json +1 -1
  6. package/admin/i18n/es.json +1 -1
  7. package/admin/i18n/fr.json +1 -1
  8. package/admin/i18n/it.json +1 -1
  9. package/admin/i18n/nl.json +1 -1
  10. package/admin/i18n/pl.json +1 -1
  11. package/admin/i18n/pt.json +1 -1
  12. package/admin/i18n/ru.json +1 -1
  13. package/admin/i18n/uk.json +1 -1
  14. package/admin/i18n/zh-cn.json +1 -1
  15. package/admin/jsonConfig.json5 +1 -2
  16. package/adminWww/assets/AdapterUpdateDialog-CJRQB5ud.js +2 -0
  17. package/adminWww/assets/Adapters-B5LWXJ3G.js +9 -0
  18. package/adminWww/assets/Config-D3mtokJQ.js +1 -0
  19. package/adminWww/assets/CustomModal-DCjdghJB.js +1 -0
  20. package/adminWww/assets/CustomTab-CBVvppVS.js +1 -0
  21. package/adminWww/assets/DefaultPropsProvider-BZ42HOhu.js +15 -0
  22. package/adminWww/assets/DefaultPropsProvider-DoV5d6EJ.js +1 -0
  23. package/adminWww/assets/EasyMode-CR0Vw-OT.js +1 -0
  24. package/adminWww/assets/Enums-BImz5cPM.js +111 -0
  25. package/adminWww/assets/Fields-V2W2HJlv.js +1 -0
  26. package/adminWww/assets/Files-Ci2XDKh8.js +6 -0
  27. package/adminWww/assets/FilledInput-0vrRQpr_.js +2 -0
  28. package/adminWww/assets/Google-FmfjVx6X.js +27 -0
  29. package/adminWww/assets/Hosts-AXD2lYOf.js +121 -0
  30. package/adminWww/assets/Instances-j88MVgOp.js +2 -0
  31. package/adminWww/assets/Intro-DH7_8X9J.js +2 -0
  32. package/adminWww/assets/Logs-BJEYaBGh.js +1 -0
  33. package/adminWww/assets/Objects-CeqK8jeG.js +60 -0
  34. package/adminWww/assets/State-DhReNijC.js +1 -0
  35. package/adminWww/assets/TextField-fjsX40wR.js +138 -0
  36. package/adminWww/assets/Users-BJgk5zRR.js +1 -0
  37. package/adminWww/assets/___vite-browser-external_commonjs-proxy-DMh1aSo_.js +1 -0
  38. package/adminWww/assets/_commonjs-dynamic-modules-TDtrdbi3.js +1 -0
  39. package/adminWww/assets/_commonjsHelpers-CE1G-McA.js +1 -0
  40. package/adminWww/assets/ace-DgO9yth5.js +985 -0
  41. package/adminWww/assets/assertThisInitialized-CKqanoMB.js +1 -0
  42. package/adminWww/assets/blueGrey-BFcAYvAO.js +29 -0
  43. package/adminWww/assets/{bootstrap-CrpeRPv0.css → bootstrap-DSlxhDzw.css} +1 -1
  44. package/adminWww/assets/bootstrap-xC60EdKn.js +303 -0
  45. package/adminWww/assets/createSvgIcon-CC7aIjya.js +1 -0
  46. package/adminWww/assets/createTheme-O_VGsRib.js +16 -0
  47. package/adminWww/assets/defaultTheme-CF56WVgQ.js +1 -0
  48. package/adminWww/assets/emotion-cache.browser.esm-BgJfNZJN.js +1 -0
  49. package/adminWww/assets/emotion-react.browser.esm-LdYA3M0T.js +8 -0
  50. package/adminWww/assets/emotion-serialize.esm-Q4o_CgeF.js +1 -0
  51. package/adminWww/assets/emotion-styled.browser.esm-D6u524ZG.js +1 -0
  52. package/adminWww/assets/emotion-use-insertion-effect-with-fallbacks.browser.esm-q3_hvwuL.js +1 -0
  53. package/adminWww/assets/en-US-B8gg5zk_.js +1 -0
  54. package/adminWww/assets/ext-language_tools-DJmHbGA8.js +389 -0
  55. package/adminWww/assets/geosearch.module-BN92cSpK.js +1 -0
  56. package/adminWww/assets/{hostInit-fzxL8JAx.js → hostInit-OBG53iVO.js} +2 -2
  57. package/adminWww/assets/iconBase-CB0tx1VT.js +1 -0
  58. package/adminWww/assets/{index-D--ojYan.js → index-28qkNZAi.js} +1 -1
  59. package/adminWww/assets/index-8V8iNIbi.js +5 -0
  60. package/adminWww/assets/{index-CJvbfjSs.js → index-B0C4gXUO.js} +1 -1
  61. package/adminWww/assets/index-B5NvG6mn.js +2 -0
  62. package/adminWww/assets/index-BVQ-ZSLt.js +10 -0
  63. package/adminWww/assets/index-B_eoqXoQ.js +890 -0
  64. package/adminWww/assets/index-Bc8bBbjM.js +15 -0
  65. package/adminWww/assets/{index-Co3YA5NW.js → index-BgpTxVrG.js} +1 -1
  66. package/adminWww/assets/{index-DTGUg51P.js → index-C73G-H4k.js} +2 -2
  67. package/adminWww/assets/{index-rKfs-rCa.js → index-CbQYNHIO.js} +1 -1
  68. package/adminWww/assets/index-ChtI58Wj.js +1 -0
  69. package/adminWww/assets/index-CkI9667U.js +1 -0
  70. package/adminWww/assets/index-DEgEIbz9.js +1 -0
  71. package/adminWww/assets/index-DYa0xJDK.js +1 -0
  72. package/adminWww/assets/index-Dy_ekAsY.js +1 -0
  73. package/adminWww/assets/index-d-Zo1uu9.js +55 -0
  74. package/adminWww/assets/{iobroker_admin__loadShare___mf_0_emotion_mf_1_react__loadShare__-BOKYvG_W.js → iobroker_admin__loadShare___mf_0_emotion_mf_1_react__loadShare__-CXogaIXO.js} +1 -1
  75. package/adminWww/assets/iobroker_admin__loadShare___mf_0_iobroker_mf_1_adapter_mf_2_react_mf_2_v5__loadShare__-D-aUnioX.js +1 -0
  76. package/adminWww/assets/iobroker_admin__loadShare___mf_0_iobroker_mf_1_json_mf_2_config__loadShare__-DQH_iIDO.js +1 -0
  77. package/adminWww/assets/iobroker_admin__loadShare___mf_0_mui_mf_1_icons_mf_2_material__loadShare__-Dy1SQ0vs.js +1 -0
  78. package/adminWww/assets/{iobroker_admin__loadShare__leaflet__loadShare__-h9SMNPLU.js → iobroker_admin__loadShare__leaflet__loadShare__-BfU5U5_j.js} +1 -1
  79. package/adminWww/assets/iobroker_admin__loadShare__prop_mf_2_types__loadShare__-CpCTEixV.js +1 -0
  80. package/adminWww/assets/{iobroker_admin__loadShare__react__loadShare__-Bis6NHgw.js → iobroker_admin__loadShare__react__loadShare__-CMWK8WhK.js} +1 -1
  81. package/adminWww/assets/iobroker_admin__loadShare__react_mf_2_dom__loadShare__-GTRt2eft.js +1 -0
  82. package/adminWww/assets/iobroker_admin__loadShare__react_mf_2_dropzone__loadShare__-BF_gp27r.js +1 -0
  83. package/adminWww/assets/iobroker_admin__mf_v__runtimeInit__mf_v__-CHE4rLsT.js +5 -0
  84. package/adminWww/assets/leaflet-src-B98elavC.js +4 -0
  85. package/adminWww/assets/locale-ZVMVA5rz.js +1 -0
  86. package/adminWww/assets/pl-OOhGZ0tn.js +1 -0
  87. package/adminWww/assets/preload-helper-BDBacUwf.js +1 -0
  88. package/adminWww/assets/sdk-DTP6UH26.js +15 -0
  89. package/adminWww/assets/sentry-C8mPNiGL.js +1 -0
  90. package/adminWww/assets/useTheme-C-uGEZO5.js +1 -0
  91. package/adminWww/assets/useTheme-UOPilb5j.js +1 -0
  92. package/adminWww/assets/{zh-cn-vvAC9zpl.js → zh-cn-Dy5SHo8v.js} +13 -13
  93. package/adminWww/img/admin.png +0 -0
  94. package/adminWww/index.html +4 -4
  95. package/adminWww/lib/js/ace/ext-searchbox.js +1 -1
  96. package/adminWww/lib/js/socket.io.js +7 -1
  97. package/adminWww/mf-manifest.json +1 -1
  98. package/adminWww/remoteEntry.js +2 -2
  99. package/build/i18n/de.json +18 -0
  100. package/build/i18n/es.json +18 -0
  101. package/build/i18n/fr.json +18 -0
  102. package/build/i18n/it.json +18 -0
  103. package/build/i18n/nl.json +18 -0
  104. package/build/i18n/pl.json +18 -0
  105. package/build/i18n/pt.json +18 -0
  106. package/build/i18n/ru.json +18 -0
  107. package/build/i18n/uk.json +18 -0
  108. package/build/i18n/zh-cn.json +18 -0
  109. package/build/lib/checkLinuxPass.js.map +1 -0
  110. package/{build-backend → build}/lib/testPassword.js +1 -1
  111. package/build/lib/testPassword.js.map +1 -0
  112. package/{build-backend → build}/lib/translations.js +16 -1
  113. package/build/lib/translations.js.map +1 -0
  114. package/{build-backend → build}/lib/utils.js +20 -0
  115. package/build/lib/utils.js.map +1 -0
  116. package/{build-backend → build}/lib/web.js +6 -7
  117. package/build/lib/web.js.map +1 -0
  118. package/{build-backend → build}/main.js +68 -5
  119. package/build/main.js.map +1 -0
  120. package/io-package.json +27 -40
  121. package/package.json +117 -110
  122. package/adminWww/assets/AdapterUpdateDialog-DHGhgEEq.js +0 -2
  123. package/adminWww/assets/Adapters-CgSIajcF.js +0 -7
  124. package/adminWww/assets/Config-BQSl4bfA.js +0 -1
  125. package/adminWww/assets/CustomModal-DNMTLv4y.js +0 -1
  126. package/adminWww/assets/CustomTab-Bl8S8QZW.js +0 -1
  127. package/adminWww/assets/DefaultPropsProvider-u5xB1Fxz.js +0 -30
  128. package/adminWww/assets/EasyMode-xDbqrply.js +0 -1
  129. package/adminWww/assets/Enums-BSICIhWI.js +0 -111
  130. package/adminWww/assets/Fields-C3JkTmfP.js +0 -1
  131. package/adminWww/assets/Files-DK85-COY.js +0 -6
  132. package/adminWww/assets/FilledInput-CysG4ax_.js +0 -2
  133. package/adminWww/assets/Hosts-qIsB4Gub.js +0 -121
  134. package/adminWww/assets/Instances-BA_DCzs8.js +0 -2
  135. package/adminWww/assets/Intro-00oh6SLw.js +0 -2
  136. package/adminWww/assets/Logs-Cvpgh-zN.js +0 -1
  137. package/adminWww/assets/Objects-Dp71iotS.js +0 -60
  138. package/adminWww/assets/State-BqfD2ABf.js +0 -1
  139. package/adminWww/assets/Tabs-sxfWgN0b.js +0 -138
  140. package/adminWww/assets/Users-CDcWqTfZ.js +0 -1
  141. package/adminWww/assets/_commonjsHelpers-D6-XlEtG.js +0 -1
  142. package/adminWww/assets/ace-BG5WYul1.js +0 -985
  143. package/adminWww/assets/blueGrey-DYsiMDOn.js +0 -29
  144. package/adminWww/assets/bootstrap-BYQTdf9r.js +0 -2024
  145. package/adminWww/assets/createSvgIcon-Bh3KWtyp.js +0 -1
  146. package/adminWww/assets/emotion-cache.browser.esm-B8BFze5o.js +0 -1
  147. package/adminWww/assets/emotion-react.browser.esm-BCDt9NrH.js +0 -8
  148. package/adminWww/assets/emotion-serialize.esm-BUa21YfQ.js +0 -1
  149. package/adminWww/assets/emotion-styled.browser.esm-CyFqGgyG.js +0 -1
  150. package/adminWww/assets/emotion-utils.browser.esm-pglN4_eI.js +0 -1
  151. package/adminWww/assets/geosearch.module-DH4NhiPj.js +0 -1
  152. package/adminWww/assets/iconBase-C3vi24ZE.js +0 -1
  153. package/adminWww/assets/index-B1ITPhEY.js +0 -7
  154. package/adminWww/assets/index-C_-7Z7UV.js +0 -1
  155. package/adminWww/assets/index-D3IAEXXP.js +0 -10
  156. package/adminWww/assets/index-DPDg2YA0.js +0 -1
  157. package/adminWww/assets/index-Qa7Q_Dz5.js +0 -1
  158. package/adminWww/assets/index-qcIeekse.js +0 -55
  159. package/adminWww/assets/index-wN1ZlPSW.js +0 -2
  160. package/adminWww/assets/iobroker_admin__loadShare__prop_mf_2_types__loadShare__-BnsS7SOQ.js +0 -1
  161. package/adminWww/assets/iobroker_admin__mf_v__runtimeInit__mf_v__-CTkuGOOk.js +0 -5
  162. package/adminWww/assets/leaflet-src-A2ZHl6nF.js +0 -4
  163. package/adminWww/assets/locale-9HzB0nxi.js +0 -1
  164. package/adminWww/assets/preload-helper-Dp1pzeXC.js +0 -1
  165. package/adminWww/assets/sentry-H_UdJ2zx.js +0 -1
  166. package/adminWww/lib/js/crypto-js/aes.js +0 -234
  167. package/adminWww/lib/js/crypto-js/blowfish.js +0 -471
  168. package/adminWww/lib/js/crypto-js/bower.json +0 -39
  169. package/adminWww/lib/js/crypto-js/cipher-core.js +0 -895
  170. package/adminWww/lib/js/crypto-js/core.js +0 -807
  171. package/adminWww/lib/js/crypto-js/crypto-js.js +0 -6657
  172. package/adminWww/lib/js/crypto-js/docs/QuickStartGuide.wiki +0 -470
  173. package/adminWww/lib/js/crypto-js/enc-base64.js +0 -136
  174. package/adminWww/lib/js/crypto-js/enc-base64url.js +0 -148
  175. package/adminWww/lib/js/crypto-js/enc-hex.js +0 -18
  176. package/adminWww/lib/js/crypto-js/enc-latin1.js +0 -18
  177. package/adminWww/lib/js/crypto-js/enc-utf16.js +0 -149
  178. package/adminWww/lib/js/crypto-js/enc-utf8.js +0 -18
  179. package/adminWww/lib/js/crypto-js/evpkdf.js +0 -134
  180. package/adminWww/lib/js/crypto-js/format-hex.js +0 -66
  181. package/adminWww/lib/js/crypto-js/format-openssl.js +0 -18
  182. package/adminWww/lib/js/crypto-js/hmac-md5.js +0 -18
  183. package/adminWww/lib/js/crypto-js/hmac-ripemd160.js +0 -18
  184. package/adminWww/lib/js/crypto-js/hmac-sha1.js +0 -18
  185. package/adminWww/lib/js/crypto-js/hmac-sha224.js +0 -18
  186. package/adminWww/lib/js/crypto-js/hmac-sha256.js +0 -18
  187. package/adminWww/lib/js/crypto-js/hmac-sha3.js +0 -18
  188. package/adminWww/lib/js/crypto-js/hmac-sha384.js +0 -18
  189. package/adminWww/lib/js/crypto-js/hmac-sha512.js +0 -18
  190. package/adminWww/lib/js/crypto-js/hmac.js +0 -143
  191. package/adminWww/lib/js/crypto-js/index.js +0 -18
  192. package/adminWww/lib/js/crypto-js/lib-typedarrays.js +0 -76
  193. package/adminWww/lib/js/crypto-js/md5.js +0 -268
  194. package/adminWww/lib/js/crypto-js/mode-cfb.js +0 -80
  195. package/adminWww/lib/js/crypto-js/mode-ctr-gladman.js +0 -116
  196. package/adminWww/lib/js/crypto-js/mode-ctr.js +0 -58
  197. package/adminWww/lib/js/crypto-js/mode-ecb.js +0 -40
  198. package/adminWww/lib/js/crypto-js/mode-ofb.js +0 -54
  199. package/adminWww/lib/js/crypto-js/package.json +0 -42
  200. package/adminWww/lib/js/crypto-js/pad-ansix923.js +0 -49
  201. package/adminWww/lib/js/crypto-js/pad-iso10126.js +0 -44
  202. package/adminWww/lib/js/crypto-js/pad-iso97971.js +0 -40
  203. package/adminWww/lib/js/crypto-js/pad-nopadding.js +0 -30
  204. package/adminWww/lib/js/crypto-js/pad-pkcs7.js +0 -18
  205. package/adminWww/lib/js/crypto-js/pad-zeropadding.js +0 -47
  206. package/adminWww/lib/js/crypto-js/pbkdf2.js +0 -145
  207. package/adminWww/lib/js/crypto-js/rabbit-legacy.js +0 -190
  208. package/adminWww/lib/js/crypto-js/rabbit.js +0 -192
  209. package/adminWww/lib/js/crypto-js/rc4.js +0 -139
  210. package/adminWww/lib/js/crypto-js/ripemd160.js +0 -267
  211. package/adminWww/lib/js/crypto-js/sha1.js +0 -150
  212. package/adminWww/lib/js/crypto-js/sha224.js +0 -80
  213. package/adminWww/lib/js/crypto-js/sha256.js +0 -199
  214. package/adminWww/lib/js/crypto-js/sha3.js +0 -326
  215. package/adminWww/lib/js/crypto-js/sha384.js +0 -83
  216. package/adminWww/lib/js/crypto-js/sha512.js +0 -326
  217. package/adminWww/lib/js/crypto-js/tripledes.js +0 -779
  218. package/adminWww/lib/js/crypto-js/x64-core.js +0 -304
  219. package/build-backend/i18n/de.json +0 -18
  220. package/build-backend/i18n/es.json +0 -18
  221. package/build-backend/i18n/fr.json +0 -18
  222. package/build-backend/i18n/it.json +0 -18
  223. package/build-backend/i18n/nl.json +0 -18
  224. package/build-backend/i18n/pl.json +0 -18
  225. package/build-backend/i18n/pt.json +0 -18
  226. package/build-backend/i18n/ru.json +0 -18
  227. package/build-backend/i18n/uk.json +0 -18
  228. package/build-backend/i18n/zh-cn.json +0 -18
  229. package/build-backend/lib/checkLinuxPass.js.map +0 -1
  230. package/build-backend/lib/testPassword.js.map +0 -1
  231. package/build-backend/lib/translations.js.map +0 -1
  232. package/build-backend/lib/utils.js.map +0 -1
  233. package/build-backend/lib/web.js.map +0 -1
  234. package/build-backend/main.js.map +0 -1
  235. /package/{build-backend → build}/i18n/en.json +0 -0
  236. /package/{build-backend → build}/lib/checkLinuxPass.js +0 -0
@@ -0,0 +1 @@
1
+ import{a as t,i as F}from"./iobroker_admin__loadShare__react__loadShare__-CMWK8WhK.js";import{i as a,a as c}from"./iobroker_admin__loadShare___mf_0_mui_mf_1_icons_mf_2_material__loadShare__-Dy1SQ0vs.js";import{i as u}from"./iobroker_admin__loadShare___mf_0_iobroker_mf_1_adapter_mf_2_react_mf_2_v5__loadShare__-D-aUnioX.js";import{i as he}from"./iobroker_admin__loadShare___mf_0_iobroker_mf_1_json_mf_2_config__loadShare__-DQH_iIDO.js";import"./_commonjsHelpers-CE1G-McA.js";import"./iobroker_admin__mf_v__runtimeInit__mf_v__-CHE4rLsT.js";var y={},k={},D={},H={};Object.defineProperty(H,"__esModule",{value:!0});H.ErrorCodes=void 0;var J;(function(s){s[s.E_INSTANCE_ACTION_NOT_INITIALIZED=101]="E_INSTANCE_ACTION_NOT_INITIALIZED",s[s.E_INSTANCE_ACTION_UNKNOWN=102]="E_INSTANCE_ACTION_UNKNOWN",s[s.E_INSTANCE_ACTION_NO_HANDLER=103]="E_INSTANCE_ACTION_NO_HANDLER",s[s.E_DEVICE_ACTION_NOT_INITIALIZED=201]="E_DEVICE_ACTION_NOT_INITIALIZED",s[s.E_DEVICE_ACTION_DEVICE_UNKNOWN=202]="E_DEVICE_ACTION_DEVICE_UNKNOWN",s[s.E_DEVICE_ACTION_UNKNOWN=203]="E_DEVICE_ACTION_UNKNOWN",s[s.E_DEVICE_ACTION_NO_HANDLER=204]="E_DEVICE_ACTION_NO_HANDLER",s[s.E_DEVICE_CONTROL_NOT_INITIALIZED=301]="E_DEVICE_CONTROL_NOT_INITIALIZED",s[s.E_DEVICE_CONTROL_DEVICE_UNKNOWN=302]="E_DEVICE_CONTROL_DEVICE_UNKNOWN",s[s.E_DEVICE_CONTROL_UNKNOWN=303]="E_DEVICE_CONTROL_UNKNOWN",s[s.E_DEVICE_CONTROL_NO_HANDLER=304]="E_DEVICE_CONTROL_NO_HANDLER",s[s.E_DEVICE_GET_STATE_NOT_INITIALIZED=401]="E_DEVICE_GET_STATE_NOT_INITIALIZED",s[s.E_DEVICE_GET_STATE_DEVICE_UNKNOWN=402]="E_DEVICE_GET_STATE_DEVICE_UNKNOWN",s[s.E_DEVICE_GET_STATE_UNKNOWN=403]="E_DEVICE_GET_STATE_UNKNOWN",s[s.E_DEVICE_GET_STATE_NO_HANDLER=404]="E_DEVICE_GET_STATE_NO_HANDLER"})(J||(H.ErrorCodes=J={}));var z={};Object.defineProperty(z,"__esModule",{value:!0});z.ACTIONS=void 0;z.ACTIONS={STATUS:"status",ENABLE_DISABLE:"enable/disable"};(function(s){var e=D&&D.__createBinding||(Object.create?(function(r,i,l,d){d===void 0&&(d=l);var h=Object.getOwnPropertyDescriptor(i,l);(!h||("get"in h?!i.__esModule:h.writable||h.configurable))&&(h={enumerable:!0,get:function(){return i[l]}}),Object.defineProperty(r,d,h)}):(function(r,i,l,d){d===void 0&&(d=l),r[d]=i[l]})),n=D&&D.__exportStar||function(r,i){for(var l in r)l!=="default"&&!Object.prototype.hasOwnProperty.call(i,l)&&e(i,r,l)};Object.defineProperty(s,"__esModule",{value:!0}),s.ACTIONS=void 0,n(H,s);var o=z;Object.defineProperty(s,"ACTIONS",{enumerable:!0,get:function(){return o.ACTIONS}})})(D);Object.defineProperty(k,"__esModule",{value:!0});k.MessageContext=k.DeviceManagement=void 0;const T=D;class ue{constructor(e){this.adapter=e,this.contexts=new Map,e.on("message",this.onMessage.bind(this))}get log(){return this.adapter.log}getInstanceInfo(){return{apiVersion:"v1"}}getDeviceDetails(e){return{id:e,schema:{}}}handleInstanceAction(e,n,o){var r;if(!this.instanceInfo)return this.log.warn(`Instance action ${e} was called before getInstanceInfo()`),{error:{code:T.ErrorCodes.E_INSTANCE_ACTION_NOT_INITIALIZED,message:`Instance action ${e} was called before getInstanceInfo()`}};const i=(r=this.instanceInfo.actions)===null||r===void 0?void 0:r.find(l=>l.id===e);return i?i.handler?i.handler(n,o):(this.log.warn(`Instance action ${e} is disabled because it has no handler`),{error:{code:T.ErrorCodes.E_INSTANCE_ACTION_NO_HANDLER,message:`Instance action ${e} is disabled because it has no handler`}}):(this.log.warn(`Instance action ${e} is unknown`),{error:{code:T.ErrorCodes.E_INSTANCE_ACTION_UNKNOWN,message:`Instance action ${e} is unknown`}})}handleDeviceAction(e,n,o,r){var i;if(!this.devices)return this.log.warn(`Device action ${n} was called before listDevices()`),{error:{code:T.ErrorCodes.E_DEVICE_ACTION_NOT_INITIALIZED,message:`Device action ${n} was called before listDevices()`}};const l=this.devices.get(e);if(!l)return this.log.warn(`Device action ${n} was called on unknown device: ${e}`),{error:{code:T.ErrorCodes.E_DEVICE_ACTION_DEVICE_UNKNOWN,message:`Device action ${n} was called on unknown device: ${e}`}};const d=(i=l.actions)===null||i===void 0?void 0:i.find(h=>h.id===n);return d?d.handler?d.handler(e,o,r):(this.log.warn(`Device action ${n} on ${e} is disabled because it has no handler`),{error:{code:T.ErrorCodes.E_DEVICE_ACTION_NO_HANDLER,message:`Device action ${n} on ${e} is disabled because it has no handler`}}):(this.log.warn(`Device action ${n} doesn't exist on device ${e}`),{error:{code:T.ErrorCodes.E_DEVICE_ACTION_UNKNOWN,message:`Device action ${n} doesn't exist on device ${e}`}})}handleDeviceControl(e,n,o,r){var i;if(!this.devices)return this.log.warn(`Device control ${n} was called before listDevices()`),{error:{code:T.ErrorCodes.E_DEVICE_CONTROL_NOT_INITIALIZED,message:`Device control ${n} was called before listDevices()`}};const l=this.devices.get(e);if(!l)return this.log.warn(`Device control ${n} was called on unknown device: ${e}`),{error:{code:T.ErrorCodes.E_DEVICE_CONTROL_DEVICE_UNKNOWN,message:`Device control ${n} was called on unknown device: ${e}`}};const d=(i=l.controls)===null||i===void 0?void 0:i.find(h=>h.id===n);return d?d.handler?d.handler(e,n,o,r):(this.log.warn(`Device control ${n} on ${e} is disabled because it has no handler`),{error:{code:T.ErrorCodes.E_DEVICE_CONTROL_NO_HANDLER,message:`Device control ${n} on ${e} is disabled because it has no handler`}}):(this.log.warn(`Device control ${n} doesn't exist on device ${e}`),{error:{code:T.ErrorCodes.E_DEVICE_CONTROL_UNKNOWN,message:`Device control ${n} doesn't exist on device ${e}`}})}handleDeviceControlState(e,n,o){var r;if(!this.devices)return this.log.warn(`Device get state ${n} was called before listDevices()`),{error:{code:T.ErrorCodes.E_DEVICE_GET_STATE_NOT_INITIALIZED,message:`Device control ${n} was called before listDevices()`}};const i=this.devices.get(e);if(!i)return this.log.warn(`Device get state ${n} was called on unknown device: ${e}`),{error:{code:T.ErrorCodes.E_DEVICE_GET_STATE_DEVICE_UNKNOWN,message:`Device control ${n} was called on unknown device: ${e}`}};const l=(r=i.controls)===null||r===void 0?void 0:r.find(d=>d.id===n);return l?l.getStateHandler?l.getStateHandler(e,n,o):(this.log.warn(`Device get state ${n} on ${e} is disabled because it has no handler`),{error:{code:T.ErrorCodes.E_DEVICE_GET_STATE_NO_HANDLER,message:`Device get state ${n} on ${e} is disabled because it has no handler`}}):(this.log.warn(`Device get state ${n} doesn't exist on device ${e}`),{error:{code:T.ErrorCodes.E_DEVICE_GET_STATE_UNKNOWN,message:`Device control ${n} doesn't exist on device ${e}`}})}onMessage(e){e.command.startsWith("dm:")&&this.handleMessage(e).catch(this.log.error)}async handleMessage(e){switch(this.log.debug(`DeviceManagement received: ${JSON.stringify(e)}`),e.command){case"dm:instanceInfo":{this.instanceInfo=await this.getInstanceInfo(),this.sendReply(Object.assign(Object.assign({},this.instanceInfo),{actions:this.convertActions(this.instanceInfo.actions)}),e);return}case"dm:listDevices":{const n=await this.listDevices();this.devices=n.reduce((r,i)=>{if(r.has(i.id))throw new Error(`Device ID ${i.id} is not unique`);return r.set(i.id,i),r},new Map);const o=n.map(r=>Object.assign(Object.assign({},r),{actions:this.convertActions(r.actions),controls:this.convertControls(r.controls)}));this.sendReply(o,e),this.adapter.sendTo(e.from,e.command,this.devices,e.callback);return}case"dm:deviceDetails":{const n=await this.getDeviceDetails(e.message);this.adapter.sendTo(e.from,e.command,n,e.callback);return}case"dm:instanceAction":{const n=e.message,o=new L(e,this.adapter);this.contexts.set(e._id,o);const r=await this.handleInstanceAction(n.actionId,o,{value:n.value});this.contexts.delete(e._id),o.sendFinalResult(r);return}case"dm:deviceAction":{const n=e.message,o=new L(e,this.adapter);this.contexts.set(e._id,o);const r=await this.handleDeviceAction(n.deviceId,n.actionId,o,{value:n.value});this.contexts.delete(e._id),o.sendFinalResult(r);return}case"dm:deviceControl":{const n=e.message,o=new L(e,this.adapter);this.contexts.set(e._id,o);const r=await this.handleDeviceControl(n.deviceId,n.controlId,n.state,o);this.contexts.delete(e._id),o.sendControlResult(n.deviceId,n.controlId,r);return}case"dm:deviceControlState":{const n=e.message,o=new L(e,this.adapter);this.contexts.set(e._id,o);const r=await this.handleDeviceControlState(n.deviceId,n.controlId,o);this.contexts.delete(e._id),o.sendControlResult(n.deviceId,n.controlId,r);return}case"dm:actionProgress":{const{origin:n}=e.message,o=this.contexts.get(n);if(!o){this.log.warn(`Unknown message origin: ${n}`),this.sendReply({error:"Unknown action origin"},e);return}o.handleProgress(e);return}}}convertActions(e){if(!e)return;const n=new Set;return e.forEach(o=>{if(n.has(o.id))throw new Error(`Action ID ${o.id} is used twice, this would lead to unexpected behavior`);n.add(o.id)}),e.map(o=>Object.assign(Object.assign({},o),{handler:void 0,disabled:!o.handler}))}convertControls(e){if(!e)return;const n=new Set;return e.forEach(o=>{if(n.has(o.id))throw new Error(`Control ID ${o.id} is used twice, this would lead to unexpected behavior`);n.add(o.id)}),e.map(o=>Object.assign(Object.assign({},o),{handler:void 0,getStateHandler:void 0}))}sendReply(e,n){this.adapter.sendTo(n.from,n.command,e,n.callback)}}k.DeviceManagement=ue;class L{constructor(e,n){this.adapter=n,this.hasOpenProgressDialog=!1,this.lastMessage=e}showMessage(e){this.checkPreconditions();const n=new Promise(o=>{this.progressHandler=()=>o()});return this.send("message",{message:e}),n}showConfirmation(e){this.checkPreconditions();const n=new Promise(o=>{this.progressHandler=r=>o(!!r.confirm)});return this.send("confirm",{confirm:e}),n}showForm(e,n){this.checkPreconditions();const o=new Promise(r=>{this.progressHandler=i=>r(i.data)});return this.send("form",{form:Object.assign({schema:e},n)}),o}openProgress(e,n){this.checkPreconditions(),this.hasOpenProgressDialog=!0;const o={update:i=>{const l=new Promise(d=>{this.progressHandler=()=>d()});return this.send("progress",{progress:Object.assign(Object.assign(Object.assign({title:e},n),i),{open:!0})},!0),l},close:()=>{const i=new Promise(l=>{this.progressHandler=()=>{this.hasOpenProgressDialog=!1,l()}});return this.send("progress",{progress:{open:!1}}),i}},r=new Promise(i=>{this.progressHandler=()=>i(o)});return this.send("progress",{progress:Object.assign(Object.assign({title:e},n),{open:!0})},!0),r}sendFinalResult(e){this.send("result",{result:e})}sendControlResult(e,n,o){typeof o=="object"&&"error"in o?this.send("result",{result:{error:o.error,deviceId:e,controlId:n}}):this.send("result",{result:{state:o,deviceId:e,controlId:n}})}handleProgress(e){const n=this.progressHandler;n&&typeof e.message!="string"&&(this.lastMessage=e,this.progressHandler=void 0,n(e.message))}checkPreconditions(){if(this.hasOpenProgressDialog)throw new Error("Can't show another dialog while a progress dialog is open. Please call 'close()' on the dialog before opening another dialog.")}send(e,n,o){if(!this.lastMessage)throw new Error("No outstanding message, can't send a new one");this.adapter.sendTo(this.lastMessage.from,this.lastMessage.command,Object.assign(Object.assign({},n),{type:e,origin:this.lastMessage.message.origin||this.lastMessage._id}),this.lastMessage.callback),o||(this.lastMessage=void 0)}}k.MessageContext=L;(function(s){var e=y&&y.__createBinding||(Object.create?(function(o,r,i,l){l===void 0&&(l=i);var d=Object.getOwnPropertyDescriptor(r,i);(!d||("get"in d?!r.__esModule:d.writable||d.configurable))&&(d={enumerable:!0,get:function(){return r[i]}}),Object.defineProperty(o,l,d)}):(function(o,r,i,l){l===void 0&&(l=i),o[l]=r[i]})),n=y&&y.__exportStar||function(o,r){for(var i in o)i!=="default"&&!Object.prototype.hasOwnProperty.call(r,i)&&e(r,o,i)};Object.defineProperty(s,"__esModule",{value:!0}),n(k,s),n(D,s)})(y);function se(s){const{tooltip:e,label:n,disabled:o,Icon:r,onClick:i}=s,l=!!n&&t.createElement(a.Typography,{variant:"button",style:{marginLeft:4}},n);return e?t.createElement(a.Tooltip,{title:e,slotProps:{popper:{sx:{pointerEvents:"none"}}}},t.createElement("span",null,t.createElement(a.IconButton,{onClick:i,disabled:o,size:"small"},r,l))):t.createElement(a.IconButton,{onClick:i,disabled:o,size:"small"},r,l)}function ie(s,e){const n=s.split(" ").map(o=>o.trim()).filter(o=>o!=="fa-solid");return n.includes("fa-trash-can")||n.includes("fa-trash")?t.createElement(c.Delete,{style:{color:e}}):n.includes("fa-pen")?t.createElement(c.Edit,{style:{color:e}}):n.includes("fa-redo-alt")?t.createElement(c.Refresh,{style:{color:e}}):n.includes("fa-plus")?t.createElement(c.Add,{style:{color:e}}):n.includes("fa-qrcode")||n.includes("qrcode")?t.createElement(c.QrCode,{style:{color:e}}):n.includes("fa-wifi")?t.createElement(c.Wifi,{style:{color:e}}):n.includes("fa-wifi-slash")?t.createElement(c.WifiOff,{style:{color:e}}):n.includes("fa-bluetooth")?t.createElement(c.Bluetooth,{style:{color:e}}):n.includes("fa-bluetooth-slash")?t.createElement(c.BluetoothDisabled,{style:{color:e}}):n.includes("fa-eye")?t.createElement(c.Visibility,{style:{color:e}}):n.includes("fa-search")?t.createElement(c.Search,{style:{color:e}}):n.includes("fa-unlink")?t.createElement(c.LinkOff,{style:{color:e}}):n.includes("fa-link")?t.createElement(c.Link,{style:{color:e}}):n.includes("fa-search-location")?t.createElement(c.NotListedLocation,{style:{color:e}}):n.includes("fa-play")?t.createElement(c.PlayArrow,{style:{color:e}}):n.includes("fa-stop")?t.createElement(c.Stop,{style:{color:e}}):n.includes("fa-pause")?t.createElement(c.Pause,{style:{color:e}}):t.createElement(c.QuestionMark,{style:{color:e}})}function re(s,e,n){return s==="edit"||s==="rename"||e==="edit"||e==="rename"?t.createElement(c.Edit,{style:{color:n}}):s==="delete"||e==="delete"?t.createElement(c.Delete,{style:{color:n}}):s==="refresh"||e==="refresh"?t.createElement(c.Refresh,{style:{color:n}}):s==="newDevice"||s==="new"||s==="add"||e==="newDevice"||e==="new"||e==="add"?t.createElement(c.Add,{style:{color:n}}):s==="discover"||s==="search"||e==="discover"||e==="search"?t.createElement(c.Search,{style:{color:n}}):s==="unpairDevice"||s==="unpair"||e==="unpairDevice"||e==="unpair"?t.createElement(c.LinkOff,{style:{color:n}}):s==="pairDevice"||s==="pair"||e==="pairDevice"||e==="pair"?t.createElement(c.Link,{style:{color:n}}):s==="identify"||e==="identify"?t.createElement(c.NotListedLocation,{style:{color:n}}):s==="play"||e==="play"?t.createElement(c.PlayArrow,{style:{color:n}}):s==="stop"||e==="stop"?t.createElement(c.Stop,{style:{color:n}}):s==="pause"||e==="pause"?t.createElement(c.Pause,{style:{color:n}}):s==="forward"||s==="next"||e==="forward"||e==="next"?t.createElement(c.FastForward,{style:{color:n}}):s==="rewind"||s==="previous"||e==="rewind"||e==="previous"?t.createElement(c.FastRewind,{style:{color:n}}):s==="lamp"||s==="light"||e==="lamp"||e==="light"?t.createElement(c.Lightbulb,{style:{color:n}}):s==="backlight"||e==="backlight"?t.createElement(c.Fluorescent,{style:{color:n}}):s==="dimmer"||e==="dimmer"?t.createElement(c.WbIncandescent,{style:{color:n}}):s==="socket"||e==="socket"?t.createElement(c.Power,{style:{color:n}}):s==="settings"||e==="settings"?t.createElement(c.Settings,{style:{color:n}}):s==="users"||s==="group"||e==="users"||e==="group"?t.createElement(c.Group,{style:{color:n}}):s==="user"||e==="user"?t.createElement(c.Person,{style:{color:n}}):s==="qrcode"||e==="qrcode"?t.createElement(c.QrCode,{style:{color:n}}):s==="info"||e==="info"?t.createElement(c.Info,{style:{color:n}}):s==="lines"||e==="lines"?t.createElement(c.Article,{style:{color:n}}):t.createElement(c.QuestionMark,{style:{color:n}})}function q(s,e,n){var r,i,l,d;if(!s)return null;let o=n&&s.colorOn||s.color||(s.state?"primary":"inherit");return e&&(o==="primary"?o=e.primary:o==="secondary"&&(o=e.secondary)),(r=s.icon)!=null&&r.startsWith("fa-")||(i=s.icon)!=null&&i.startsWith("fas")?ie(s.icon,o):n&&((l=s.iconOn)!=null&&l.startsWith("data:image"))?t.createElement(u.Icon,{src:s.iconOn,style:{color:o}}):(d=s.icon)!=null&&d.startsWith("data:image")?t.createElement(u.Icon,{src:s.icon,style:{color:o}}):re(s.id,s.icon,o)}function ae(s){var e,n,o;return s?(e=s.icon)!=null&&e.startsWith("fa-")||(n=s.icon)!=null&&n.startsWith("fas")?ie(s.icon,s.color):(o=s.icon)!=null&&o.startsWith("data:image")?t.createElement(u.Icon,{src:s.icon,style:{color:s.color}}):re(s.id,s.icon,s.color):null}let M;function p(s,e){return M=M||u.I18n.getLanguage(),typeof s=="object"?s[M]||s.en:e?s:u.I18n.t(s)}function me(s){const{deviceId:e,action:n,refresh:o,deviceHandler:r,disabled:i}=s,l=ae(n),d=p(n.description??"")||(l?null:n.id);return t.createElement(se,{tooltip:d||void 0,disabled:i||n.disabled,Icon:l,onClick:r(e,n,o)})}class Q extends F.Component{constructor(e){var n,o;super(e),this.state={value:(n=e.control.state)==null?void 0:n.val,ts:(o=e.control.state)==null?void 0:o.ts,unit:e.control.unit||""}}async componentDidMount(){var e;if(this.props.control.stateId){const n=this.props.socket.subscribeState(this.props.control.stateId,this.stateHandler);if(n instanceof Promise&&await n,this.props.control.type==="slider"||this.props.control.type==="number")if(this.props.control.min===void 0&&this.props.control.max===void 0)this.props.socket.getObject(this.props.control.stateId).then(o=>{if(o!=null&&o.common){let r=this.props.control.min;r===void 0&&(r=o.common.min),r===void 0&&(r=0);let i=this.props.control.max;i===void 0&&(r=o.common.max),r===void 0&&(i=100);let l=this.props.control.step;l===void 0&&(l=o.common.step),l===void 0&&(l=(i-r)/100);let d=this.props.control.unit;d===void 0&&(d=o.common.unit),this.setState({min:r,max:i,step:l,unit:d})}});else{const o=this.props.control.min===void 0?0:this.props.control.min,r=this.props.control.max===void 0?100:this.props.control.max;this.setState({min:o,max:r,step:this.props.control.step===void 0?(r-o)/100:this.props.control.step,unit:this.props.control.unit||""})}else this.props.control.type==="select"?(e=this.props.control.options)!=null&&e.length?this.setState({options:this.props.control.options.map(o=>({label:p(o.label),value:o.value,icon:o.icon,color:o.color}))}):this.props.socket.getObject(this.props.control.stateId).then(o=>{var r;if((r=o==null?void 0:o.common)!=null&&r.states){let i;typeof o.common.states=="string"?i=o.common.states.split(";").map(d=>{const h=d.split(":");return{value:h[0],label:h[1]}}):Array.isArray(o.common.states)?i=o.common.states.map(l=>({label:l,value:l})):i=Object.keys(o.common.states).map(l=>({label:l,value:o.common.states[l]})),this.setState({options:i})}}):this.props.control.type==="info"&&(this.props.control.unit||this.props.socket.getObject(this.props.control.stateId).then(o=>{var r;(r=o==null?void 0:o.common)!=null&&r.unit&&this.setState({unit:o.common.unit})}))}}stateHandler=async(e,n)=>{if(e===this.props.control.stateId&&n){const o=await this.props.controlStateHandler(this.props.deviceId,this.props.control)();o!=null&&o.ts&&(!this.state.ts||o.ts>this.state.ts)&&this.setState({value:o.val,ts:o.ts})}};componentWillUnmount(){this.props.control.stateId&&this.props.socket.unsubscribeState(this.props.control.stateId,this.stateHandler)}static getDerivedStateFromProps(e,n){var o,r;return(o=e.control.state)!=null&&o.ts&&(!n.ts||((r=e.control.state)==null?void 0:r.ts)>n.ts)?{value:e.control.state.val,ts:e.control.state.ts}:null}async sendControl(e,n,o){const r=await this.props.controlHandler(e,n,o)();r!=null&&r.ts&&(!this.state.ts||(r==null?void 0:r.ts)>this.state.ts)&&this.setState({value:r.val,ts:r.ts})}renderButton(){const e=p(this.props.control.description??""),n=q(this.props.control,this.props.colors,this.state.value);return this.props.control.label?t.createElement(a.Button,{disabled:this.props.disabled,title:e,onClick:()=>this.sendControl(this.props.deviceId,this.props.control,!0),startIcon:n},p(this.props.control.label)):t.createElement(a.Fab,{size:"small",disabled:this.props.disabled,title:e,onClick:()=>this.sendControl(this.props.deviceId,this.props.control,!0)},n)}renderSwitch(){const e=p(this.props.control.description??"");return t.createElement(a.Switch,{disabled:this.props.disabled,title:e,checked:!!this.state.value,onChange:n=>this.sendControl(this.props.deviceId,this.props.control,n.target.checked)})}getColor(){let e;return this.state.value?e=this.props.control.colorOn||"primary":this.props.control.type==="switch"&&(e=this.props.control.color),e==="primary"?this.props.colors.primary:e==="secondary"?this.props.colors.secondary:e}renderSelect(){var n,o;const e=(n=this.state.options)==null?void 0:n.some(r=>!!r.icon);return t.createElement(a.FormControl,{fullWidth:!0,variant:"standard"},this.props.control.label?t.createElement(a.InputLabel,null,p(this.props.control.label)):null,t.createElement(a.Select,{variant:"standard",value:this.state.value,onChange:r=>this.sendControl(this.props.deviceId,this.props.control,r.target.value)},(o=this.state.options)==null?void 0:o.map((r,i)=>t.createElement(a.MenuItem,{key:i.toString(),value:typeof r.value=="boolean"?r.value.toString():r.value,style:{color:r.color}},e?t.createElement(u.Icon,{src:r.icon,style:{width:24,height:24}}):null,r.label))))}renderSlider(){return this.state.min===void 0||this.state.max===void 0?t.createElement("div",{style:{width:"100%"}},"..."):t.createElement(a.Stack,{spacing:2,direction:"row",sx:{alignItems:"center",mb:1,width:"100%"}},this.props.control.label?t.createElement(a.InputLabel,{style:{color:this.props.control.color}},p(this.props.control.label)):null,this.props.control.icon?t.createElement(u.Icon,{style:{color:this.props.control.color},src:this.props.control.icon}):null,t.createElement(a.Slider,{value:parseFloat(this.state.value||"0"),min:this.state.min,max:this.state.max,step:this.state.step,valueLabelDisplay:"auto",onChange:(e,n)=>this.sendControl(this.props.deviceId,this.props.control,n)}),this.props.control.iconOn?t.createElement(u.Icon,{style:{color:this.props.control.colorOn},src:this.props.control.iconOn}):null,this.props.control.labelOn?t.createElement(a.InputLabel,{style:{color:this.props.control.colorOn}},p(this.props.control.labelOn)):null)}renderColor(){return t.createElement(a.TextField,{fullWidth:!0,label:this.props.control.label?p(this.props.control.label):void 0,type:"color",value:this.state.value,onChange:e=>this.sendControl(this.props.deviceId,this.props.control,e.target.value),variant:"standard"})}renderText(){return t.createElement(a.TextField,{fullWidth:!0,label:this.props.control.label?p(this.props.control.label):void 0,value:this.state.value,onChange:e=>this.sendControl(this.props.deviceId,this.props.control,e.target.value),variant:"standard"})}renderNumber(){return t.createElement(a.TextField,{fullWidth:!0,type:"number",label:this.props.control.label?p(this.props.control.label):void 0,value:this.state.value,onChange:e=>isNaN(parseFloat(e.target.value))?Promise.resolve():this.sendControl(this.props.deviceId,this.props.control,parseFloat(e.target.value)),slotProps:{htmlInput:{min:this.state.min,max:this.state.max,step:this.state.step},input:{endAdornment:this.state.unit?t.createElement(a.InputAdornment,{position:"end"},this.state.unit):void 0}},variant:"standard"})}renderIcon(){const e=p(this.props.control.description??""),n=q(this.props.control,this.props.colors,this.state.value),o=this.getColor(),r=o===this.props.colors.primary||o===this.props.colors.secondary?{}:{color:o},i=o===this.props.colors.primary?"primary":o===this.props.colors.secondary?"secondary":void 0;return this.props.control.label?t.createElement(a.Button,{disabled:this.props.disabled,title:e,color:i,style:r,onClick:()=>this.sendControl(this.props.deviceId,this.props.control,!this.state.value),startIcon:n},p(this.props.control.label)):(r.width=34,r.height=34,r.minHeight=34,t.createElement(a.Fab,{disabled:this.props.disabled,size:"small",title:e,color:i,style:r,onClick:()=>this.sendControl(this.props.deviceId,this.props.control,!this.state.value)},n))}renderInfo(){return t.createElement("div",null,this.props.control.label?t.createElement(a.InputLabel,null,p(this.props.control.label)):null,t.createElement("span",null,this.state.value,t.createElement("span",{style:{fontSize:"smaller",opacity:.7,marginLeft:this.state.unit?4:0}},this.state.unit)))}render(){return this.props.control.type==="button"?this.renderButton():this.props.control.type==="icon"?this.renderIcon():this.props.control.type==="switch"?this.renderSwitch():this.props.control.type==="select"?this.renderSelect():this.props.control.type==="slider"?this.renderSlider():this.props.control.type==="color"?this.renderColor():this.props.control.type==="text"?this.renderText():this.props.control.type==="number"?this.renderNumber():this.props.control.type==="info"?this.renderInfo():t.createElement("div",{style:{color:"red"}},this.props.control.type)}}const Y=34,S=20,X=30,O=15;class fe extends F.Component{render(){const e=t.createElement("div",{style:{width:this.props.size==="small"?X:Y,height:S,display:"flex",alignItems:"center",cursor:"pointer",position:"relative",opacity:this.props.disabled?.7:1},onClick:n=>{this.props.disabled||(n.stopPropagation(),n.preventDefault(),this.props.onChange(!this.props.checked))}},t.createElement("div",{style:{borderRadius:15,width:"100%",height:(this.props.size==="small"?O:S)*.7,opacity:.6,backgroundColor:this.props.checked?this.props.theme.palette.primary.main:this.props.theme.palette.text.disabled}}),t.createElement("div",{style:{position:"absolute",top:this.props.size==="small"?(S-O)/2:0,left:this.props.checked?this.props.size==="small"?X-O:Y-S:0,transition:"left 0.2s",borderRadius:50,width:this.props.size==="small"?O:S,height:this.props.size==="small"?O:S,backgroundColor:this.props.checked?this.props.theme.palette.primary.main:"#EEE",boxShadow:"rgba(0, 0, 0, 0.2) 0px 2px 1px -1px, rgba(0, 0, 0, 0.14) 0px 1px 1px 0px, rgba(0, 0, 0, 0.12) 0px 1px 3px 0px"}}));return this.props.labelOn||this.props.labelOff?t.createElement("div",{style:{display:"flex",alignItems:"center",gap:4}},this.props.labelOff,e,this.props.labelOn):e}}const _={tooltip:{pointerEvents:"none"}};function W(s){return t.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",onClick:e=>s.onClick&&s.onClick(e),viewBox:"0 0 165 165",width:s.width||(s.fontSize==="small"?16:20),height:s.height||s.width||(s.fontSize==="small"?16:20),className:s.className,style:s.style},t.createElement("path",{fill:"currentColor",d:"M82.498,0C37.008,0,0,37.008,0,82.496c0,45.181,36.51,81.977,81.573,82.476V82.569l-27.002-0.002 c-8.023,0-14.554,6.53-14.554,14.561c0,8.023,6.531,14.551,14.554,14.551v17.98c-17.939,0-32.534-14.595-32.534-32.531 c0-17.944,14.595-32.543,32.534-32.543l27.002,0.004v-9.096c0-14.932,12.146-27.08,27.075-27.08 c14.932,0,27.082,12.148,27.082,27.08c0,14.931-12.15,27.08-27.082,27.08l-9.097-0.001v80.641 C136.889,155.333,165,122.14,165,82.496C165,37.008,127.99,0,82.498,0z"}),t.createElement("path",{fill:"currentColor",d:"M117.748,55.493c0-5.016-4.082-9.098-9.1-9.098c-5.015,0-9.097,4.082-9.097,9.098v9.097l9.097,0.001 C113.666,64.591,117.748,60.51,117.748,55.493z"}))}function R(s){return t.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",onClick:e=>s.onClick&&s.onClick(e),viewBox:"0 0 1073 1068",width:s.width||(s.fontSize==="small"?16:20),height:s.height||s.width||(s.fontSize==="small"?16:20),className:s.className,style:s.style},t.createElement("path",{fill:"currentColor",d:"M716 1.1C632.9 5.3 549.8 23.7 472 55c-66.4 26.7-132.6 65.5-188.5 110.4-43.8 35.1-85.2 76.7-120.1 120.6C72.4 400.4 16.7 539.8 3.5 686 1.8 705.1-.1 754.7.7 758c.5 2 1 2 49.7 1.8l49.1-.3.7-20c2.4-64.6 13.4-126 33.2-186 80.8-243.9 297-419.9 552.1-449.4 20.2-2.4 44.2-4.1 56.6-4.1h8.9V50 0l-9.7.1c-5.4.1-16.8.6-25.3 1zm-.8 208c-78.5 4.7-158 27.4-226.5 64.5-68.7 37.3-126.4 86.3-175.2 148.9-11 14-33.2 47.3-42.3 63.5-44 77.8-68.6 164.9-70.9 251.2l-.6 22.8h49.5 49.4l1.2-19c6.3-98.7 40-185.8 102.2-263.3 12.7-15.9 41.2-45.2 57-58.7 66.1-56.3 142.1-91.8 226-105.5 18.9-3 44.1-5.5 56.7-5.5h9.3v-50-50l-11.2.1c-6.2.1-17.3.6-24.6 1zm17.8 251c-104.5 9.2-195.2 69.7-243.6 162.4-43.9 84-45.5 184.2-4.5 270 60.3 125.9 198.1 194.2 334.9 166 46.6-9.7 89.5-29.7 127.2-59.6 13.5-10.7 37.3-34.5 48-47.9 34.2-43.1 55.2-92 63.7-148.6 2.2-15.1 2.5-62.7.5-77.4-3.6-25.2-10.1-51.4-17.8-71.2-10.1-26.2-29.4-59.7-47-81.8-9.7-12.1-35-37.2-47.4-47-47.8-37.9-104.5-60.1-165.4-65-14.7-1.1-34.7-1.1-48.6.1zm174.7 138.6c-.3.5-30.9 49.2-68.1 108.3L772 814.5l67.9.5 68 .5-30.1 48.8-30 48.7h-131c-104.4 0-130.9-.3-130.5-1.3.2-.6 32.7-51.1 72.1-112.1L730 687.9c0-.5-29.5-1-66.5-1.1l-66.6-.3 27.7-44.3 27.6-44.2h128l127.5.7z"}))}function U(s){return t.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",onClick:e=>s.onClick&&s.onClick(e),viewBox:"0 0 48 48",width:s.width||(s.fontSize==="small"?16:20),height:s.height||s.width||(s.fontSize==="small"?16:20),className:s.className,style:s.style},t.createElement("path",{fill:"currentColor",d:"M32.042,9.792c4.595,1.238,4.88,3.165,5.524,5.048C34.841,17.664,17.35,35.7,17.35,35.7 s10.901,1.177,23.487-1.003c-0.001,0.029-0.002,0.048-0.003,0.076C42.829,31.661,44,27.97,44,24c0-11.046-8.954-20-20-20 c-5.634,0-10.715,2.338-14.35,6.087C15.489,9.124,26.89,8.403,32.042,9.792z"}),t.createElement("path",{fill:"currentColor",d:"M14.724,37.285c-1.982-0.347-4.212-2.131-4.707-5.302c1.437-1.239,19.994-20.507,19.994-20.507 c-7.008-0.424-14.569-0.465-22.237,0.864C5.408,15.625,4,19.644,4,24c0,11.046,8.954,20,20,20c6.173,0,11.689-2.8,15.358-7.195 C35.486,37.33,23.257,38.769,14.724,37.285z"}))}function Te(s,e){return s<-80?e==="dark"?"#ff5c5c":"#aa0000":s<-60?e==="dark"?"#fa8547":"#ae5c00":s<-50?e==="dark"?"#cdff4f":"#7b9500":e==="dark"?"#5cff5c":"#008500"}const g={fill:"#00ac00",color:"#00ac00"},I={fill:"#ff0000",color:"#ff0000"},K={fill:"#da8200",color:"#da8200"},B={fill:"#8a8a8a",color:"#8a8a8a"},ee={fill:"#ffcc00",color:"#ffcc00"};function ge(s){return s>95?t.createElement(c.BatteryFull,{style:g}):s>85&&s<=95?t.createElement(c.Battery90,{style:g}):s>70&&s<=85?t.createElement(c.Battery80,{style:g}):s>55&&s<=70?t.createElement(c.Battery60,{style:g}):s>40&&s<=55?t.createElement(c.Battery50,{style:ee}):s>25&&s<=40?t.createElement(c.Battery30,{style:ee}):s>10&&s<=25?t.createElement(c.Battery20,{style:K}):t.createElement(c.BatteryAlert,{style:I})}function te(s){if(!s.status)return null;let e;typeof s.status=="string"?e={connection:s.status}:e=s.status;let n=null;typeof e.battery=="number"&&(n=ge(e.battery));const o=typeof s.enabled=="boolean"?t.createElement(t.Fragment,null,t.createElement("div",{style:{flexGrow:1}}),t.createElement(a.Tooltip,{title:s.enabled?p("disableIconTooltip"):p("enableIconTooltip"),slotProps:{popper:{sx:_.tooltip}}},t.createElement("div",{style:{display:"flex",flexDirection:"column",alignItems:"center"}},t.createElement(fe,{size:"small",checked:s.enabled,disabled:!s.disableEnableAction,onChange:()=>s.disableEnableAction&&s.deviceHandler(s.deviceId,s.disableEnableAction,s.refresh)(),theme:s.theme})))):null;let r;s.connectionType==="wifi"?r=e.connection==="connected"?t.createElement(c.Wifi,{style:g}):e.connection==="disconnected"?t.createElement(c.WifiOff,{style:I}):t.createElement(c.Wifi,{style:B}):s.connectionType==="bluetooth"?r=e.connection==="connected"?t.createElement(c.Bluetooth,{style:g}):e.connection==="disconnected"?t.createElement(c.BluetoothDisabled,{style:I}):t.createElement(c.Bluetooth,{style:B}):s.connectionType==="lan"?r=e.connection==="connected"?t.createElement(c.Cable,{style:g}):e.connection==="disconnected"?t.createElement(c.Cable,{style:I}):t.createElement(c.Cable,{style:B}):s.connectionType==="thread"?r=e.connection==="connected"?t.createElement(W,{style:g}):e.connection==="disconnected"?t.createElement(W,{style:I}):t.createElement(W,{style:B}):s.connectionType==="z-wave"?r=e.connection==="connected"?t.createElement(R,{style:g}):e.connection==="disconnected"?t.createElement(R,{style:I}):t.createElement(R,{style:B}):s.connectionType==="zigbee"?r=e.connection==="connected"?t.createElement(U,{style:g}):e.connection==="disconnected"?t.createElement(U,{style:I}):t.createElement(U,{style:B}):r=e.connection==="connected"?t.createElement(c.Link,{style:g}):e.connection==="disconnected"?t.createElement(c.LinkOff,{style:I}):null;const i=e.connection==="connected"||e.connection==="disconnected"?t.createElement(a.Tooltip,{title:(e.connection==="connected"?p("connectedIconTooltip"):p("disconnectedIconTooltip"))+(s.statusAction?`. ${p(s.statusAction.description||"moreInformation")}`:""),slotProps:{popper:{sx:_.tooltip}}},s.statusAction?t.createElement(a.IconButton,{onClick:l=>{s.statusAction&&(l.stopPropagation(),s.deviceHandler(s.deviceId,s.statusAction,s.refresh)())}},r,t.createElement("div",{style:{position:"absolute",top:0,left:0,color:"grey"}},"*")):t.createElement("div",{style:{display:"flex",flexDirection:"column",alignItems:"center"}},r)):r;return t.createElement("div",{style:{display:"flex",alignItems:"baseline",cursor:s.statusAction?"pointer":void 0,width:s.disableEnableAction?"100%":void 0,gap:8}},i,e.rssi&&t.createElement(a.Tooltip,{title:"RSSI",slotProps:{popper:{sx:_.tooltip}}},t.createElement("div",{style:{display:"flex",flexDirection:"column",alignItems:"center"}},t.createElement(c.NetworkCheck,{style:{color:Te(e.rssi,s.theme.palette.mode)}}),t.createElement("p",{style:{fontSize:"small",margin:0}},e.rssi))),typeof e.battery=="number"&&t.createElement(a.Tooltip,{title:p("batteryTooltip"),slotProps:{popper:{sx:_.tooltip}}},t.createElement("div",{style:{display:"flex",flexDirection:"column",alignItems:"center"}},n,t.createElement("p",{style:{fontSize:"small",margin:0}},e.battery,"%"))),typeof e.battery=="string"&&t.createElement(a.Tooltip,{title:p("batteryTooltip"),slotProps:{popper:{sx:_.tooltip}}},t.createElement("div",{style:{display:"flex",flexDirection:"column",alignItems:"center"}},e.battery==="charging"?t.createElement(c.BatteryCharging50,null):t.createElement(c.BatteryFull,null),e.battery!=="charging"?e.battery.includes("V")||e.battery.includes("mV")?t.createElement("p",{style:{fontSize:"small",margin:0}},e.battery):t.createElement("p",{style:{fontSize:"small",margin:0}},t.createElement("span",{style:{marginRight:4}},e.battery),"mV"):null)),typeof e.battery=="boolean"&&t.createElement(a.Tooltip,{title:p("batteryTooltip"),slotProps:{popper:{sx:_.tooltip}}},t.createElement("div",{style:{display:"flex",flexDirection:"column",alignItems:"center"}},e.battery?t.createElement(c.BatteryFull,{style:g}):t.createElement(c.BatteryAlert,{style:I}))),e.warning?typeof e.warning=="string"||typeof e.warning=="object"?t.createElement(a.Tooltip,{title:p(e.warning),slotProps:{popper:{sx:_.tooltip}}},t.createElement("div",{style:{display:"flex",flexDirection:"column",alignItems:"center"}},t.createElement(c.Warning,{style:K}))):t.createElement("div",{style:{display:"flex",flexDirection:"column",alignItems:"center"}},t.createElement(c.Warning,{style:K})):null,o)}function le(s){var f,C;const{instanceId:e,socket:n,schema:o,data:r,onChange:i}=s,[l,d]=F.useState(!1);if(o===void 0)return null;const[h,m]=e.split(".",2);return t.createElement(t.Fragment,null,l&&t.createElement("div",null,l),t.createElement(he.JsonConfigComponent,{expertMode:s.expertMode,socket:n,adapterName:h,instance:parseInt(m,10),schema:o,data:r,onError:d,onChange:x=>i(x),embedded:!0,themeName:s.themeName,themeType:s.themeType,theme:s.theme,isFloatComma:s.isFloatComma===void 0?!!((f=s.socket.systemConfig)!=null&&f.common.isFloatComma):s.isFloatComma,dateFormat:s.dateFormat===void 0?(C=s.socket.systemConfig)==null?void 0:C.common.dateFormat:s.dateFormat}))}function ne(s){const{socket:e,manufacturer:n,model:o,deviceId:r,onImageSelect:i,uploadImagesToInstance:l}=s,d=f=>{const x=f.target.files;if(!x||x.length===0)return;const N=x[0];if(N){const w=new FileReader;w.onload=P=>{if(!P.target||!P.target.result)return;const A=new Image;A.src=P.target.result,A.onload=async()=>{let $=A.width,b=A.height;$>b?$>100&&(b*=100/$,$=100):b>100&&($*=100/b,b=100);const V=document.createElement("canvas"),G=V.getContext("2d");if(G){V.width=$,V.height=b,G.drawImage(A,0,0,$,b);const Z=V.toDataURL("image/webp"),ce=`${n?`${n}_`:""}${o||r}.webp`,de=Z.replace(/^data:image\/webp;base64,/,""),pe=await e.writeFile64(l,ce,de);console.log(`saveImage response: ${JSON.stringify(pe)}`),i&&i(Z)}}},w.readAsDataURL(N)}},h={opacity:0,position:"absolute",width:45,height:45,zIndex:3},m={position:"relative",top:-22};return t.createElement("div",{style:m},t.createElement("input",{style:h,type:"file",accept:"image/*",onChange:d}))}const v={cardStyle:{width:300,minHeight:280,margin:10,overflow:"hidden",display:"inline-block"},headerStyle:{display:"flex",alignItems:"center",gap:8,paddingLeft:8,paddingRight:8,position:"relative",minHeight:60,color:"#000"},imgAreaStyle:{height:45,width:45,justifyContent:"center",display:"flex",alignItems:"center"},imgStyle:{zIndex:2,maxWidth:"100%",maxHeight:"100%",color:"#FFF"},titleStyle:{fontSize:16,fontWeight:"bold",overflow:"hidden",textOverflow:"ellipsis"},detailsButtonStyle:{right:20,bottom:-20,position:"absolute"},bodyStyle:{height:"calc(100% - 116px)"},deviceInfoStyle:{padding:"20px 16px 0 16px",height:133},statusStyle:{padding:"15px 25px 0 15px",height:41}};function oe(s){return t.createElement("svg",{viewBox:"0 0 24 24",width:"24",height:"24",style:s.style,className:s.className},t.createElement("path",{fill:"currentColor",d:"M21.9,21.9l-8.49-8.49l0,0L3.59,3.59l0,0L2.1,2.1L0.69,3.51L3,5.83V19c0,1.1,0.9,2,2,2h13.17l2.31,2.31L21.9,21.9z M5,18 l3.5-4.5l2.5,3.01L12.17,15l3,3H5z M21,18.17L5.83,3H19c1.1,0,2,0.9,2,2V18.17z"}))}function E(s){return typeof s=="object"?s[u.I18n.getLanguage()]||s.en:s}class ye extends F.Component{constructor(e){super(e),this.state={open:!1,details:null,data:{},icon:e.device.icon,showControlDialog:!1}}async fetchIcon(){if(!this.props.device.icon){const e=u.I18n.getLanguage(),n=this.props.device.manufacturer&&typeof this.props.device.manufacturer=="object"?this.props.device.manufacturer[e]||this.props.device.manufacturer.en:this.props.device.manufacturer,o=this.props.device.model&&typeof this.props.device.model=="object"?this.props.device.model[e]||this.props.device.model.en:this.props.device.model,r=`${n?`${n}_`:""}${o||this.props.device.id}`;try{const i=await this.props.socket.readFile(this.props.instanceId.replace("system.adapter.",""),`${r}.webp`,!0);i?this.setState({icon:`data:${i.mimeType};base64,${i.file}`}):this.setState({icon:""})}catch{this.state.icon&&this.setState({icon:""})}}}componentDidMount(){this.fetchIcon().catch(e=>console.error(e))}async loadDetails(){console.log(`Loading device details for ${this.props.device.id}... from ${this.props.instanceId}`);const e=await this.props.socket.sendTo(this.props.instanceId,"dm:deviceDetails",this.props.device.id);console.log(`Got device details for ${this.props.device.id}:`,e),this.setState({details:e,data:(e==null?void 0:e.data)||{}})}refresh=()=>{this.setState({details:null}),this.loadDetails().catch(console.error)};copyToClipboard=()=>{const e=this.props.device.id;u.Utils.copyToClipboard(e),alert(`${p("copied")} ${e} ${p("toClipboard")}!`)};renderDialog(){return!this.state.open||!this.state.details?null:t.createElement(a.Dialog,{open:!0,maxWidth:"md",onClose:()=>this.setState({open:!1})},t.createElement(a.DialogContent,null,t.createElement(le,{instanceId:this.props.instanceId,socket:this.props.socket,schema:this.state.details.schema,data:this.state.data,onChange:e=>this.setState({data:e}),themeName:this.props.themeName,themeType:this.props.themeType,theme:this.props.theme,isFloatComma:this.props.isFloatComma,dateFormat:this.props.dateFormat})),t.createElement(a.DialogActions,null,t.createElement(a.Button,{disabled:!this.props.alive,variant:"contained",color:"primary",onClick:()=>this.setState({open:!1}),autoFocus:!0},p("closeButtonText"))))}renderControlDialog(){var n;if(!this.state.showControlDialog||!this.props.alive)return null;const e={primary:"#111",secondary:"#888"};return t.createElement(a.Dialog,{open:!0,onClose:()=>this.setState({showControlDialog:!1})},t.createElement(a.DialogTitle,null,this.props.title,t.createElement(a.IconButton,{style:{position:"absolute",top:5,right:5,zIndex:10},onClick:()=>this.setState({showControlDialog:!1})},t.createElement(c.Close,null))),t.createElement(a.DialogContent,{style:{display:"flex",flexDirection:"column"}},(n=this.props.device.controls)==null?void 0:n.map(o=>t.createElement(Q,{disabled:!1,key:o.id,control:o,socket:this.props.socket,colors:e,deviceId:this.props.device.id,controlHandler:this.props.controlHandler,controlStateHandler:this.props.controlStateHandler}))))}renderControls(){var o,r,i;const e={primary:"#111",secondary:"#888"},n=(o=this.props.device.controls)==null?void 0:o[0];return((r=this.props.device.controls)==null?void 0:r.length)===1&&n&&(n.type==="icon"||n.type==="switch")&&!n.label?t.createElement(Q,{disabled:!this.props.alive,control:n,colors:e,socket:this.props.socket,deviceId:this.props.device.id,controlHandler:this.props.controlHandler,controlStateHandler:this.props.controlStateHandler}):(i=this.props.device.controls)!=null&&i.length?t.createElement(a.Fab,{size:"small",disabled:!this.props.alive,onClick:()=>this.setState({showControlDialog:!0})},t.createElement(c.VideogameAsset,null)):null}renderActions(){var n;const e=(n=this.props.device.actions)==null?void 0:n.filter(o=>o.id!==y.ACTIONS.STATUS&&o.id!==y.ACTIONS.ENABLE_DISABLE);return e!=null&&e.length?e.map(o=>t.createElement(me,{disabled:!this.props.alive,key:o.id,deviceId:this.props.device.id,action:o,deviceHandler:this.props.deviceHandler,refresh:this.refresh})):null}renderSmall(){const e=this.props.device.hasDetails,n=this.props.device.status?Array.isArray(this.props.device.status)?this.props.device.status:[this.props.device.status]:[],o=this.state.icon?t.createElement(u.DeviceTypeIcon,{src:this.state.icon}):t.createElement(oe,null),r=this.getCardHeaderStyle(this.props.theme,345);return t.createElement(a.Card,{sx:{maxWidth:345,minWidth:200}},t.createElement(a.CardHeader,{style:r,avatar:t.createElement("div",null,this.props.uploadImagesToInstance?t.createElement(ne,{uploadImagesToInstance:this.props.uploadImagesToInstance,deviceId:this.props.device.id,manufacturer:E(this.props.device.manufacturer),model:E(this.props.device.model),onImageSelect:i=>{i&&this.setState({icon:i})},socket:this.props.socket}):null,o),action:e?t.createElement(a.IconButton,{"aria-label":"settings",onClick:()=>{this.state.open||(this.loadDetails().catch(console.error),this.setState({open:!0}))}},t.createElement(c.MoreVert,null)):null,title:this.props.title,subheader:this.props.device.manufacturer?t.createElement("span",null,t.createElement("b",{style:{marginRight:4}},p("manufacturer"),":"),E(this.props.device.manufacturer)):null}),t.createElement(a.CardContent,{style:{position:"relative"}},n!=null&&n.length?t.createElement("div",{style:{display:"flex",position:"absolute",top:-11,background:"#88888880",padding:"0 8px",borderRadius:5,width:"calc(100% - 46px)"}},n.map((i,l)=>{var d,h;return t.createElement(te,{key:l,status:i,connectionType:this.props.device.connectionType,enabled:this.props.device.enabled,deviceId:this.props.device.id,statusAction:(d=this.props.device.actions)==null?void 0:d.find(m=>m.id===y.ACTIONS.STATUS),disableEnableAction:(h=this.props.device.actions)==null?void 0:h.find(m=>m.id===y.ACTIONS.ENABLE_DISABLE),deviceHandler:this.props.deviceHandler,refresh:this.refresh,theme:this.props.theme})})):null,t.createElement("div",null,t.createElement(a.Typography,{variant:"body1"},t.createElement("div",{onClick:this.copyToClipboard,style:{textOverflow:"ellipsis",overflow:"hidden"}},t.createElement("b",null,"ID:"),t.createElement("span",{style:{marginLeft:4}},this.props.device.id.replace(/.*\.\d\./,""))),this.props.device.manufacturer?t.createElement("div",null,t.createElement("b",{style:{marginRight:4}},p("manufacturer"),":"),E(this.props.device.manufacturer)):null,this.props.device.model?t.createElement("div",null,t.createElement("b",{style:{marginRight:4}},p("model"),":"),E(this.props.device.model)):null))),t.createElement(a.CardActions,{disableSpacing:!0},this.renderActions(),t.createElement("div",{style:{flexGrow:1}}),this.renderControls()),this.renderDialog(),this.renderControlDialog())}getCardHeaderStyle(e,n){const o=this.props.device;if(!o)return{};const r=o.backgroundColor==="primary"?e.palette.primary.main:o.backgroundColor==="secondary"?e.palette.secondary.main:o.backgroundColor||e.palette.secondary.main;let i;return o.color&&o.color!=="primary"&&o.color!=="secondary"?i=o.color:o.color==="primary"?i=e.palette.primary.main:o.color==="secondary"?i=e.palette.secondary.main:o.backgroundColor==="primary"?i=e.palette.primary.contrastText:o.backgroundColor==="secondary"||!o.backgroundColor?i=e.palette.secondary.contrastText:i=u.Utils.invertColor(r,!0),{backgroundColor:r,color:i,maxWidth:n}}renderBig(){var i,l,d,h,m;const e=this.props.device.status?Array.isArray(this.props.device.status)?this.props.device.status:[this.props.device.status]:[],n=this.state.icon?t.createElement(u.DeviceTypeIcon,{src:this.state.icon,style:v.imgStyle}):t.createElement(oe,{style:v.imgStyle}),o=this.getCardHeaderStyle(this.props.theme),r=((l=(i=this.state.details)==null?void 0:i.data)==null?void 0:l.name)||this.props.title||"";return t.createElement(a.Paper,{style:v.cardStyle,key:this.props.id},t.createElement(a.Box,{sx:o,style:v.headerStyle},t.createElement("div",{style:v.imgAreaStyle},this.props.uploadImagesToInstance?t.createElement(ne,{uploadImagesToInstance:this.props.uploadImagesToInstance,deviceId:this.props.device.id,manufacturer:E(this.props.device.manufacturer),model:E(this.props.device.model),onImageSelect:f=>{f&&this.setState({icon:f})},socket:this.props.socket}):null,n),t.createElement(a.Box,{style:v.titleStyle,title:r.length>20?r:void 0,sx:f=>({color:o.color||f.palette.secondary.contrastText})},((h=(d=this.state.details)==null?void 0:d.data)==null?void 0:h.name)||this.props.title),this.props.device.hasDetails?t.createElement(a.Fab,{disabled:!this.props.alive,size:"small",style:v.detailsButtonStyle,onClick:()=>{this.state.open||(this.loadDetails().catch(console.error),this.setState({open:!0}))},color:"primary"},t.createElement(c.MoreVert,null)):null),t.createElement("div",{style:v.statusStyle},e.map((f,C)=>{var x,N;return t.createElement(te,{key:C,deviceId:this.props.device.id,connectionType:this.props.device.connectionType,status:f,enabled:this.props.device.enabled,statusAction:(x=this.props.device.actions)==null?void 0:x.find(w=>w.id===y.ACTIONS.STATUS),disableEnableAction:(N=this.props.device.actions)==null?void 0:N.find(w=>w.id===y.ACTIONS.ENABLE_DISABLE),deviceHandler:this.props.deviceHandler,refresh:this.refresh,theme:this.props.theme})})),t.createElement("div",{style:v.bodyStyle},t.createElement(a.Typography,{variant:"body1",style:v.deviceInfoStyle},t.createElement("div",{onClick:this.copyToClipboard},t.createElement("b",{style:{marginRight:4}},"ID:"),this.props.device.id.replace(/.*\.\d\./,"")),this.props.device.manufacturer?t.createElement("div",null,t.createElement("b",{style:{marginRight:4}},p("manufacturer"),":"),E(this.props.device.manufacturer)):null,this.props.device.model?t.createElement("div",null,t.createElement("b",{style:{marginRight:4}},p("model"),":"),E(this.props.device.model)):null),!!((m=this.props.device.actions)!=null&&m.length)&&t.createElement("div",{style:{flex:1,position:"relative",display:"flex",gap:8,paddingBottom:5,height:34,paddingLeft:10,paddingRight:10}},this.renderActions(),t.createElement("div",{style:{flexGrow:1}}),this.renderControls())),this.renderDialog(),this.renderControlDialog())}render(){return this.props.smallCards?this.renderSmall():this.renderBig()}}class ve extends F.Component{responseTimeout=null;instanceHandler;deviceHandler;controlHandler;controlStateHandler;constructor(e){super(e),this.state={showSpinner:!1,showToast:null,message:null,confirm:null,form:null,progress:null,showConfirmation:null,showInput:null,inputValue:null},this.instanceHandler=n=>()=>{if(n.confirmation){this.setState({showConfirmation:n});return}if(n.inputBefore){this.setState({showInput:n});return}this.sendActionToInstance("dm:instanceAction",{actionId:n.id,timeout:n.timeout})},this.deviceHandler=(n,o,r)=>()=>{if(o.confirmation){this.setState({showConfirmation:{...o,deviceId:n,refresh:r}});return}if(o.inputBefore){this.setState({showInput:{...o,deviceId:n,refresh:r},inputValue:o.inputBefore.defaultValue||""});return}this.sendActionToInstance("dm:deviceAction",{deviceId:n,actionId:o.id,timeout:o.timeout},r)},this.controlHandler=(n,o,r)=>()=>this.sendControlToInstance("dm:deviceControl",{deviceId:n,controlId:o.id,state:r}),this.controlStateHandler=(n,o)=>()=>this.sendControlToInstance("dm:deviceControlState",{deviceId:n,controlId:o.id}),this.props.registerHandler&&this.props.registerHandler(()=>this.loadData())}componentWillUnmount(){this.responseTimeout&&(clearTimeout(this.responseTimeout),this.responseTimeout=null)}loadData(){console.error("loadData not implemented")}sendActionToInstance=(e,n,o)=>{(async()=>{this.setState({showSpinner:!0}),this.responseTimeout=setTimeout(()=>{this.setState({showSpinner:!1}),window.alert(u.I18n.t("ra_No response from the backend"))},n.timeout||5e3);const i=await this.props.socket.sendTo(this.props.selectedInstance,e,n);this.responseTimeout&&(clearTimeout(this.responseTimeout),this.responseTimeout=null);const l=i.type;switch(console.log(`Response: ${i.type}`),l){case"message":console.log(`Message received: ${i.message}`),i.message&&this.setState({message:{message:i.message,handleClose:()=>this.setState({message:null},()=>this.sendActionToInstance("dm:actionProgress",{origin:i.origin},o))},showSpinner:!1});break;case"confirm":console.log(`Confirm received: ${i.confirm}`),i.confirm&&this.setState({confirm:{message:i.confirm,handleClose:d=>this.setState({confirm:null},()=>this.sendActionToInstance("dm:actionProgress",{origin:i.origin,confirm:d},o))},showSpinner:!1});break;case"form":if(console.log("Form received"),i.form){const d=i.form.data,h={};d&&Object.keys(d).forEach(m=>{d[m]!==void 0&&(h[m]=d[m])}),i.form.data=JSON.parse(JSON.stringify(h)),this.setState({form:{...i.form,changed:!1,originalData:JSON.stringify(h),handleClose:m=>this.setState({form:null},()=>{console.log(`Form ${JSON.stringify(m)}`),this.sendActionToInstance("dm:actionProgress",{origin:i.origin,data:m},o)})},showSpinner:!1})}break;case"progress":if(i.progress)if(this.state.progress){const d={...this.state.progress,...i.progress};this.setState({progress:d,showSpinner:!1})}else this.setState({progress:i.progress,showSpinner:!1});this.sendActionToInstance("dm:actionProgress",{origin:i.origin},o);break;case"result":console.log("Response content",i.result),i.result.refresh&&(i.result.refresh===!0?(console.log("Refreshing all"),this.loadData()):i.result.refresh==="instance"?console.log(`Refreshing instance infos: ${this.props.selectedInstance}`):i.result.refresh==="device"?o?(console.log(`Refreshing device infos: ${this.props.selectedInstance}`),o()):console.log('No refresh function provided to refresh "device"'):console.log("Not refreshing anything")),i.result.error?(console.error(`Error: ${i.result.error.message}`),this.setState({showToast:i.result.error.message,showSpinner:!1})):this.setState({showSpinner:!1});break;default:console.log(`Unknown response type: ${l}`),this.setState({showSpinner:!1});break}})().catch(console.error)};sendControlToInstance=async(e,n)=>{const o=await this.props.socket.sendTo(this.props.selectedInstance,e,n),r=o.type;if(console.log(`Response: ${o.type}`),o.type==="result"){if(console.log("Response content",o.result),o.result.error)console.error(`Error: ${o.result.error.message}`),this.setState({showToast:o.result.error.message});else if(o.result.state!==void 0)return o.result.state}else console.warn("Unexpected response type",r);return null};loadDevices(){return this.props.socket.sendTo(this.props.selectedInstance,"dm:listDevices")}loadInstanceInfos(){return this.props.socket.sendTo(this.props.selectedInstance,"dm:instanceInfo")}renderMessageDialog(){var e;return this.state.message?t.createElement(a.Dialog,{open:!0,onClose:()=>{var n;return(n=this.state.message)==null?void 0:n.handleClose()},hideBackdrop:!0,"aria-describedby":"message-dialog-description"},t.createElement(a.DialogContent,null,t.createElement(a.DialogContentText,{id:"message-dialog-description"},(e=this.state.message)==null?void 0:e.message)),t.createElement(a.DialogActions,null,t.createElement(a.Button,{color:"primary",onClick:()=>{var n;return(n=this.state.message)==null?void 0:n.handleClose()},variant:"contained",autoFocus:!0},p("okButtonText")))):null}renderConfirmDialog(){var e;return this.state.confirm?t.createElement(a.Dialog,{open:!0,onClose:()=>{var n;return(n=this.state.confirm)==null?void 0:n.handleClose()},hideBackdrop:!0,"aria-describedby":"confirm-dialog-description"},t.createElement(a.DialogContent,null,t.createElement(a.DialogContentText,{id:"confirm-dialog-description"},p((e=this.state.confirm)==null?void 0:e.message))),t.createElement(a.DialogActions,null,t.createElement(a.Button,{variant:"contained",color:"primary",onClick:()=>{var n;return(n=this.state.confirm)==null?void 0:n.handleClose(!0)},autoFocus:!0},p("yesButtonText")),t.createElement(a.Button,{variant:"contained",color:"grey",onClick:()=>{var n;return(n=this.state.confirm)==null?void 0:n.handleClose(!1)},autoFocus:!0},p("noButtonText")))):null}renderSnackbar(){return t.createElement(a.Snackbar,{open:!!this.state.showToast,autoHideDuration:6e3,onClose:()=>this.setState({showToast:null}),message:this.state.showToast})}getOkButton(e){var n;return typeof e=="string"&&(e=void 0),t.createElement(a.Button,{key:"apply",disabled:!((n=this.state.form)!=null&&n.changed),variant:(e==null?void 0:e.variant)||"contained",color:(e==null?void 0:e.color)==="primary"?"primary":(e==null?void 0:e.color)==="secondary"?"secondary":"primary",style:{backgroundColor:e!=null&&e.color&&(e==null?void 0:e.color)!=="primary"&&(e==null?void 0:e.color)!=="secondary"?e==null?void 0:e.color:void 0,...(e==null?void 0:e.style)||void 0},onClick:()=>{var o,r;return((o=this.state.form)==null?void 0:o.handleClose)&&this.state.form.handleClose((r=this.state.form)==null?void 0:r.data)},startIcon:e!=null&&e.icon?t.createElement(u.Icon,{src:e==null?void 0:e.icon}):void 0},p((e==null?void 0:e.label)||"okButtonText",e==null?void 0:e.noTranslation))}getCancelButton(e){let n=!1;return typeof e=="string"&&(n=e==="close",e=void 0),t.createElement(a.Button,{key:"cancel",variant:(e==null?void 0:e.variant)||"contained",color:(e==null?void 0:e.color)==="primary"?"primary":(e==null?void 0:e.color)==="secondary"?"secondary":"grey",style:{backgroundColor:e!=null&&e.color&&(e==null?void 0:e.color)!=="primary"&&(e==null?void 0:e.color)!=="secondary"?e==null?void 0:e.color:void 0,...(e==null?void 0:e.style)||void 0},onClick:()=>{var o;return((o=this.state.form)==null?void 0:o.handleClose)&&this.state.form.handleClose()},startIcon:n?t.createElement(c.Close,null):e!=null&&e.icon?t.createElement(u.Icon,{src:e==null?void 0:e.icon}):void 0},p((e==null?void 0:e.label)||"cancelButtonText",e==null?void 0:e.noTranslation))}renderFormDialog(){var n,o,r;if(!this.state.form||!this.state.form.schema)return null;let e;return this.state.form.buttons?(e=[],this.state.form.buttons.forEach(i=>{typeof i=="object"&&i.type==="copyToClipboard"?e.push(t.createElement(a.Button,{key:"copyToClipboard",variant:i.variant||"outlined",color:i.color==="primary"?"primary":i.color==="secondary"?"secondary":void 0,style:{backgroundColor:i.color&&i.color!=="primary"&&i.color!=="secondary"?i.color:void 0,...i.style||void 0},onClick:()=>{var l;if(i.copyToClipboardAttr&&this.state.form.data){const d=this.state.form.data[i.copyToClipboardAttr];typeof d=="string"?u.Utils.copyToClipboard(d):u.Utils.copyToClipboard(JSON.stringify(d,null,2)),window.alert(u.I18n.t("copied"))}else(l=this.state.form)!=null&&l.data?(u.Utils.copyToClipboard(JSON.stringify(this.state.form.data,null,2)),window.alert(u.I18n.t("copied"))):window.alert(u.I18n.t("nothingToCopy"))},startIcon:i!=null&&i.icon?t.createElement(u.Icon,{src:i==null?void 0:i.icon}):t.createElement(c.ContentCopy,null)},p((i==null?void 0:i.label)||"ctcButtonText",i==null?void 0:i.noTranslation))):i==="apply"||i.type==="apply"?e.push(this.getOkButton(i)):e.push(this.getCancelButton(i))})):e=[this.getOkButton(),this.getCancelButton()],t.createElement(a.Dialog,{open:!0,onClose:()=>this.state.form.handleClose&&this.state.form.handleClose(),hideBackdrop:!0,fullWidth:!0,sx:{"& .MuiDialog-paper":{minWidth:this.state.form.minWidth||void 0}},maxWidth:this.state.form.maxWidth||"md"},(n=this.state.form)!=null&&n.title?t.createElement(a.DialogTitle,null,p(((o=this.state.form)==null?void 0:o.label)||((r=this.state.form)==null?void 0:r.title),this.state.form.noTranslation)):null,t.createElement(a.DialogContent,null,t.createElement(le,{instanceId:this.props.selectedInstance,schema:this.state.form.schema,data:this.state.form.data||{},socket:this.props.socket,onChange:i=>{console.log("handleFormChange",{data:i});const l={...this.state.form};l&&(l.data=i,l.changed=JSON.stringify(i)!==l.originalData,this.setState({form:l}))},themeName:this.props.themeName,themeType:this.props.themeType,theme:this.props.theme,isFloatComma:this.props.isFloatComma,dateFormat:this.props.dateFormat})),t.createElement(a.DialogActions,null,e))}renderProgressDialog(){var e,n;return(e=this.state.progress)!=null&&e.open?t.createElement(a.Dialog,{open:!0,onClose:()=>{},hideBackdrop:!0},t.createElement(a.LinearProgress,{variant:"determinate",value:((n=this.state.progress)==null?void 0:n.progress)||0})):null}renderContent(){return null}renderSpinner(){return this.state.showSpinner?t.createElement(a.Backdrop,{style:{zIndex:1e3},open:!0},t.createElement(a.CircularProgress,null)):null}renderConfirmationDialog(){return this.state.showConfirmation?t.createElement(a.Dialog,{open:!0,onClose:()=>this.setState({showConfirmation:null})},t.createElement(a.DialogTitle,null,p(this.state.showConfirmation.confirmation===!0?p("areYouSureText"):p(this.state.showConfirmation.confirmation))),t.createElement(a.DialogActions,null,t.createElement(a.Button,{variant:"contained",color:"primary",onClick:()=>{if(!this.state.showConfirmation)return;const e=this.state.showConfirmation;this.setState({showConfirmation:null},()=>{e.deviceId?this.sendActionToInstance("dm:deviceAction",{actionId:e.id,deviceId:e.deviceId,timeout:e.timeout},e.refresh):this.sendActionToInstance("dm:instanceAction",{actionId:e.id,timeout:e.timeout})})},autoFocus:!0,startIcon:t.createElement(c.Check,null)},p("yesButtonText")),t.createElement(a.Button,{variant:"contained",color:"grey",onClick:()=>this.setState({showConfirmation:null}),startIcon:t.createElement(c.Close,null)},p("cancelButtonText")))):null}onShowInputOk(){if(!this.state.showInput)return;const e=this.state.showInput;this.setState({showInput:null},()=>{var n,o,r,i;e.deviceId?this.sendActionToInstance("dm:deviceAction",{actionId:e.id,deviceId:e.deviceId,timeout:e.timeout,value:((n=e.inputBefore)==null?void 0:n.type)==="checkbox"?!!this.state.inputValue:((o=e.inputBefore)==null?void 0:o.type)==="number"?parseFloat(this.state.inputValue)||0:this.state.inputValue},e.refresh):this.sendActionToInstance("dm:instanceAction",{actionId:e.id,timeout:e.timeout,value:((r=e.inputBefore)==null?void 0:r.type)==="checkbox"?!!this.state.inputValue:((i=e.inputBefore)==null?void 0:i.type)==="number"?parseFloat(this.state.inputValue)||0:this.state.inputValue})})}renderInputDialog(){var n;if(!this.state.showInput||!this.state.showInput.inputBefore)return null;let e=!1;return!this.state.showInput.inputBefore.allowEmptyValue&&this.state.showInput.inputBefore.type!=="checkbox"&&(this.state.showInput.inputBefore.type==="number"||this.state.showInput.inputBefore.type==="slider"?e=this.state.inputValue===""||this.state.inputValue===null||!window.isFinite(this.state.inputValue):e=!this.state.inputValue),t.createElement(a.Dialog,{open:!0,onClose:()=>this.setState({showInput:null})},t.createElement(a.DialogTitle,null,p("pleaseEnterValueText")),t.createElement(a.DialogContent,null,this.state.showInput.inputBefore.type==="text"||this.state.showInput.inputBefore.type==="number"||!this.state.showInput.inputBefore.type?t.createElement(a.TextField,{autoFocus:!0,margin:"dense",label:p(this.state.showInput.inputBefore.label),slotProps:{htmlInput:this.state.showInput.inputBefore.type==="number"?{min:this.state.showInput.inputBefore.min,max:this.state.showInput.inputBefore.max,step:this.state.showInput.inputBefore.step}:void 0,input:{endAdornment:this.state.inputValue?t.createElement(a.InputAdornment,{position:"end"},t.createElement(a.IconButton,{tabIndex:-1,size:"small",onClick:()=>this.setState({inputValue:""})},t.createElement(c.Close,null))):null}},type:this.state.showInput.inputBefore.type==="number"?"number":"text",fullWidth:!0,value:this.state.inputValue,onChange:o=>this.setState({inputValue:o.target.value}),onKeyUp:o=>{o.key==="Enter"&&this.onShowInputOk()}}):null,this.state.showInput.inputBefore.type==="checkbox"?t.createElement(a.FormControlLabel,{control:t.createElement(a.Checkbox,{checked:!!this.state.inputValue,autoFocus:!0,onChange:o=>this.setState({inputValue:o.target.checked})}),label:p(this.state.showInput.inputBefore.label)}):null,this.state.showInput.inputBefore.type==="select"?t.createElement(a.FormControl,{fullWidth:!0},t.createElement(a.InputLabel,null,p(this.state.showInput.inputBefore.label)),t.createElement(a.Select,{variant:"standard",value:this.state.inputValue,onChange:o=>this.setState({inputValue:o.target.value})},(n=this.state.showInput.inputBefore.options)==null?void 0:n.map(o=>t.createElement(a.MenuItem,{key:o.value,value:o.value},p(o.label))))):null,this.state.showInput.inputBefore.type==="slider"?t.createElement(a.Box,{sx:{width:"100%"}},t.createElement(a.Typography,{gutterBottom:!0},p(this.state.showInput.inputBefore.label)),t.createElement(a.Grid2,{container:!0,spacing:2,alignItems:"center"},t.createElement(a.Grid2,null,t.createElement(a.Slider,{value:typeof this.state.inputValue=="number"?this.state.inputValue:0,onChange:(o,r)=>this.setState({inputValue:r})})),t.createElement(a.Grid2,null,t.createElement(a.Input,{value:this.state.inputValue,size:"small",onChange:o=>this.setState({inputValue:o.target.value===""?0:Number(o.target.value)}),onBlur:()=>{var i,l;if(!this.state.showInput)return;const o=((i=this.state.showInput.inputBefore)==null?void 0:i.min)===void 0?0:this.state.showInput.inputBefore.min,r=((l=this.state.showInput.inputBefore)==null?void 0:l.max)===void 0?100:this.state.showInput.inputBefore.max;this.state.inputValue<o?this.setState({inputValue:o}):this.state.inputValue>r&&this.setState({inputValue:r})},inputProps:{step:this.state.showInput.inputBefore.step,min:this.state.showInput.inputBefore.min===void 0?0:this.state.showInput.inputBefore.min,max:this.state.showInput.inputBefore.max===void 0?100:this.state.showInput.inputBefore.max,type:"number"}})))):null),t.createElement(a.DialogActions,null,t.createElement(a.Button,{variant:"contained",disabled:e,color:"primary",onClick:()=>this.onShowInputOk(),startIcon:t.createElement(c.Check,null)},p("yesButtonText")),t.createElement(a.Button,{variant:"contained",color:"grey",onClick:()=>this.setState({showInput:null}),startIcon:t.createElement(c.Close,null)},p("cancelButtonText"))))}render(){return t.createElement(t.Fragment,null,this.renderSnackbar(),this.renderContent(),this.renderConfirmDialog(),this.renderMessageDialog(),this.renderFormDialog(),this.renderProgressDialog(),this.renderConfirmationDialog(),this.renderInputDialog(),this.renderSpinner())}}function Ee(s){const{action:e,instanceHandler:n}=s,o=p(e!=null&&e.description?e.description:""),r=p(e!=null&&e.title?e.title:""),i=ae(e);return t.createElement(se,{tooltip:o,label:r,disabled:e.disabled,Icon:i,onClick:n(e)})}const Ie="Alle Geräte herausgefiltert",Ce="Batterie",xe="Abbrechen",$e="Schließen",be="Verbunden",_e="Kopiert",De="In die Zwischenablage kopieren",we="Gerät deaktivieren",Se="Getrennt",Be="Gerät aktivieren",ke="Nach Name filtern",Ne="Instanz",Ae="Instanz ist nicht aktiv",Oe="Hersteller",Le="Modell",Fe="Klicken, um weitere Informationen zu erhalten",Ve="Nein",He="Keine Geräte gefunden",ze="Bitte Instanz auswählen",Pe="nichts zu kopieren",Me="OK",We="Bitte eingeben",Re="Instanzliste aktualisieren",Ue="Aktualisieren",Ke="in die Zwischenablage kopiert",je="Ja",Ge={allDevicesFilteredOut:Ie,batteryTooltip:Ce,cancelButtonText:xe,closeButtonText:$e,connectedIconTooltip:be,copied:_e,ctcButtonText:De,disableIconTooltip:we,disconnectedIconTooltip:Se,enableIconTooltip:Be,filterLabelText:ke,instanceLabelText:Ne,instanceNotAlive:Ae,manufacturer:Oe,model:Le,moreInformation:Fe,noButtonText:Ve,noDevicesFoundText:He,noInstanceSelectedText:ze,nothingToCopy:Pe,okButtonText:Me,pleaseEnterValueText:We,refreshInstanceList:Re,refreshTooltip:Ue,toClipboard:Ke,yesButtonText:je},Ze="All devices filtered out",Je="Battery",qe="Cancel",Qe="Close",Ye="Connected",Xe="Copied",et="Copy to clipboard",tt="Disable device",nt="Disconnected",ot="Enable device",st="Filter by name",it="Instance",rt="Instance is not alive",at="Manufacturer",lt="Model",ct="Click to get more information",dt="No",pt="No devices found",ht="Please select instance",ut="nothingToCopy",mt="OK",ft="Please enter",Tt="Refresh instance list",gt="Refresh",yt="to clipboard",vt="Yes",Et={allDevicesFilteredOut:Ze,batteryTooltip:Je,cancelButtonText:qe,closeButtonText:Qe,connectedIconTooltip:Ye,copied:Xe,ctcButtonText:et,disableIconTooltip:tt,disconnectedIconTooltip:nt,enableIconTooltip:ot,filterLabelText:st,instanceLabelText:it,instanceNotAlive:rt,manufacturer:at,model:lt,moreInformation:ct,noButtonText:dt,noDevicesFoundText:pt,noInstanceSelectedText:ht,nothingToCopy:ut,okButtonText:mt,pleaseEnterValueText:ft,refreshInstanceList:Tt,refreshTooltip:gt,toClipboard:yt,yesButtonText:vt},It="Все устройства отфильтрованы",Ct="Батарея",xt="Отмена",$t="Закрыть",bt="Подключено",_t="Скопировано",Dt="Копировать в буфер обмена",wt="Деактивировать устройство",St="Отключено",Bt="Активировать устройство",kt="Фильтровать по имени",Nt="Екземпляр",At="Экземпляр не жив",Ot="Производитель",Lt="Модель",Ft="Нажмите, чтобы получить больше информации",Vt="Нет",Ht="Устройства не найдены",zt="Пожалуйста, выберите экземпляр",Pt="ничегоКопировать",Mt="ХОРОШО",Wt="Пожалуйста входите",Rt="Обновить список экземпляров",Ut="Обновить",Kt="в буфер обмена",jt="Да",Gt={allDevicesFilteredOut:It,batteryTooltip:Ct,cancelButtonText:xt,closeButtonText:$t,connectedIconTooltip:bt,copied:_t,ctcButtonText:Dt,disableIconTooltip:wt,disconnectedIconTooltip:St,enableIconTooltip:Bt,filterLabelText:kt,instanceLabelText:Nt,instanceNotAlive:At,manufacturer:Ot,model:Lt,moreInformation:Ft,noButtonText:Vt,noDevicesFoundText:Ht,noInstanceSelectedText:zt,nothingToCopy:Pt,okButtonText:Mt,pleaseEnterValueText:Wt,refreshInstanceList:Rt,refreshTooltip:Ut,toClipboard:Kt,yesButtonText:jt},Zt="Todos os dispositivos foram filtrados",Jt="Bateria",qt="Cancelar",Qt="Fechar",Yt="Conectado",Xt="Copiado",en="Copiar para área de transferência",tn="Desativar dispositivo",nn="Desconectado",on="Habilitar dispositivo",sn="Filtrar por nome",rn="Instância",an="A instância não está ativa",ln="Fabricante",cn="Modelo",dn="Clique para obter mais informações",pn="Não",hn="Nenhum dispositivo encontrado",un="Selecione a instância",mn="nadaParaCopiar",fn="OK",Tn="Por favor, insira",gn="Atualizar lista de instâncias",yn="Atualizar",vn="para a área de transferência",En="Sim",In={allDevicesFilteredOut:Zt,batteryTooltip:Jt,cancelButtonText:qt,closeButtonText:Qt,connectedIconTooltip:Yt,copied:Xt,ctcButtonText:en,disableIconTooltip:tn,disconnectedIconTooltip:nn,enableIconTooltip:on,filterLabelText:sn,instanceLabelText:rn,instanceNotAlive:an,manufacturer:ln,model:cn,moreInformation:dn,noButtonText:pn,noDevicesFoundText:hn,noInstanceSelectedText:un,nothingToCopy:mn,okButtonText:fn,pleaseEnterValueText:Tn,refreshInstanceList:gn,refreshTooltip:yn,toClipboard:vn,yesButtonText:En},Cn="Alle apparaten zijn eruit gefilterd",xn="Batterij",$n="Annuleren",bn="Dichtbij",_n="Verbonden",Dn="Gekopieerd",wn="Kopiëren naar klembord",Sn="Apparaat uitschakelen",Bn="Losgekoppeld",kn="Apparaat inschakelen",Nn="Filter op naam",An="Voorbeeld",On="Instantie leeft niet",Ln="Fabrikant",Fn="Model",Vn="Klik voor meer informatie",Hn="Nee",zn="Geen apparaten gevonden",Pn="Selecteer een exemplaar",Mn="nietsOmTeKopiëren",Wn="OK",Rn="Kom binnen alstublieft",Un="Ververs de exemplaarlijst",Kn="Vernieuwen",jn="naar klembord",Gn="Ja",Zn={allDevicesFilteredOut:Cn,batteryTooltip:xn,cancelButtonText:$n,closeButtonText:bn,connectedIconTooltip:_n,copied:Dn,ctcButtonText:wn,disableIconTooltip:Sn,disconnectedIconTooltip:Bn,enableIconTooltip:kn,filterLabelText:Nn,instanceLabelText:An,instanceNotAlive:On,manufacturer:Ln,model:Fn,moreInformation:Vn,noButtonText:Hn,noDevicesFoundText:zn,noInstanceSelectedText:Pn,nothingToCopy:Mn,okButtonText:Wn,pleaseEnterValueText:Rn,refreshInstanceList:Un,refreshTooltip:Kn,toClipboard:jn,yesButtonText:Gn},Jn="Tous les appareils filtrés",qn="Batterie",Qn="Annuler",Yn="Fermer",Xn="Connecté",eo="Copié",to="Copier dans le presse-papier",no="Désactiver l'appareil",oo="Débranché",so="Activer l'appareil",io="Filtrer par nom",ro="Exemple",ao="L'instance n'est pas vivante",lo="Fabricant",co="Modèle",po="Cliquez pour obtenir plus d'informations",ho="Non",uo="Aucun périphérique trouvé",mo="Veuillez sélectionner une instance",fo="rien à copier",To="D'ACCORD",go="Entrez s'il vous plait",yo="Actualiser la liste des instances",vo="Rafraîchir",Eo="au presse-papiers",Io="Oui",Co={allDevicesFilteredOut:Jn,batteryTooltip:qn,cancelButtonText:Qn,closeButtonText:Yn,connectedIconTooltip:Xn,copied:eo,ctcButtonText:to,disableIconTooltip:no,disconnectedIconTooltip:oo,enableIconTooltip:so,filterLabelText:io,instanceLabelText:ro,instanceNotAlive:ao,manufacturer:lo,model:co,moreInformation:po,noButtonText:ho,noDevicesFoundText:uo,noInstanceSelectedText:mo,nothingToCopy:fo,okButtonText:To,pleaseEnterValueText:go,refreshInstanceList:yo,refreshTooltip:vo,toClipboard:Eo,yesButtonText:Io},xo="Tutti i dispositivi sono stati filtrati",$o="Batteria",bo="Annulla",_o="Vicino",Do="Connesso",wo="Copiato",So="Copia negli appunti",Bo="Disabilita dispositivo",ko="Disconnesso",No="Abilita dispositivo",Ao="Filtra per nome",Oo="Esempio",Lo="L'istanza non è viva",Fo="Produttore",Vo="Modello",Ho="Clicca per avere maggiori informazioni",zo="NO",Po="Nessun dispositivo trovato",Mo="Seleziona l'istanza",Wo="Niente da copiare",Ro="OK",Uo="Prego entra",Ko="Aggiorna l'elenco delle istanze",jo="ricaricare",Go="negli appunti",Zo="SÌ",Jo={allDevicesFilteredOut:xo,batteryTooltip:$o,cancelButtonText:bo,closeButtonText:_o,connectedIconTooltip:Do,copied:wo,ctcButtonText:So,disableIconTooltip:Bo,disconnectedIconTooltip:ko,enableIconTooltip:No,filterLabelText:Ao,instanceLabelText:Oo,instanceNotAlive:Lo,manufacturer:Fo,model:Vo,moreInformation:Ho,noButtonText:zo,noDevicesFoundText:Po,noInstanceSelectedText:Mo,nothingToCopy:Wo,okButtonText:Ro,pleaseEnterValueText:Uo,refreshInstanceList:Ko,refreshTooltip:jo,toClipboard:Go,yesButtonText:Zo},qo="Todos los dispositivos filtrados",Qo="Batería",Yo="Cancelar",Xo="Cerca",es="Conectado",ts="copiado",ns="Copiar al portapapeles",os="Deshabilitar dispositivo",ss="Desconectado",is="Habilitar dispositivo",rs="Filtrar por nombre",as="Instancia",ls="La instancia no está viva.",cs="Fabricante",ds="Modelo",ps="Haga clic para obtener más información",hs="No",us="No se encontraron dispositivos",ms="Por favor seleccione instancia",fs="nada que copiar",Ts="DE ACUERDO",gs="Por favor escribe",ys="Actualizar lista de instancias",vs="Actualizar",Es="al portapapeles",Is="Sí",Cs={allDevicesFilteredOut:qo,batteryTooltip:Qo,cancelButtonText:Yo,closeButtonText:Xo,connectedIconTooltip:es,copied:ts,ctcButtonText:ns,disableIconTooltip:os,disconnectedIconTooltip:ss,enableIconTooltip:is,filterLabelText:rs,instanceLabelText:as,instanceNotAlive:ls,manufacturer:cs,model:ds,moreInformation:ps,noButtonText:hs,noDevicesFoundText:us,noInstanceSelectedText:ms,nothingToCopy:fs,okButtonText:Ts,pleaseEnterValueText:gs,refreshInstanceList:ys,refreshTooltip:vs,toClipboard:Es,yesButtonText:Is},xs="Wszystkie urządzenia zostały odfiltrowane",$s="Bateria",bs="Anulować",_s="Zamknąć",Ds="Połączono",ws="Skopiowano",Ss="Kopiuj do schowka",Bs="Wyłącz urządzenie",ks="Bezładny",Ns="Włącz urządzenie",As="Filtruj według nazwy",Os="Instancja",Ls="Instancja nie żyje",Fs="Producent",Vs="Model",Hs="Kliknij, aby uzyskać więcej informacji",zs="NIE",Ps="Nie znaleziono urządzeń",Ms="Wybierz instancję",Ws="nicDoSkopiowania",Rs="OK",Us="Podaj",Ks="Odśwież listę instancji",js="Odświeżać",Gs="do schowka",Zs="Tak",Js={allDevicesFilteredOut:xs,batteryTooltip:$s,cancelButtonText:bs,closeButtonText:_s,connectedIconTooltip:Ds,copied:ws,ctcButtonText:Ss,disableIconTooltip:Bs,disconnectedIconTooltip:ks,enableIconTooltip:Ns,filterLabelText:As,instanceLabelText:Os,instanceNotAlive:Ls,manufacturer:Fs,model:Vs,moreInformation:Hs,noButtonText:zs,noDevicesFoundText:Ps,noInstanceSelectedText:Ms,nothingToCopy:Ws,okButtonText:Rs,pleaseEnterValueText:Us,refreshInstanceList:Ks,refreshTooltip:js,toClipboard:Gs,yesButtonText:Zs},qs="Усі пристрої відфільтровано",Qs="Батарея",Ys="Скасувати",Xs="Закрити",ei="Підключено",ti="Скопійовано",ni="Копіювати в буфер обміну",oi="Вимкнути пристрій",si="Відключено",ii="Увімкнути пристрій",ri="Фільтрувати за назвою",ai="Екземпляр",li="Примірник не живий",ci="Виробник",di="Модель",pi="Натисніть, щоб отримати більше інформації",hi="Немає",ui="Пристроїв не знайдено",mi="Виберіть екземпляр",fi="нічого для копіювання",Ti="в порядку",gi="Будь ласка введіть",yi="Оновити список екземплярів",vi="Оновити",Ei="в буфер обміну",Ii="Так",Ci={allDevicesFilteredOut:qs,batteryTooltip:Qs,cancelButtonText:Ys,closeButtonText:Xs,connectedIconTooltip:ei,copied:ti,ctcButtonText:ni,disableIconTooltip:oi,disconnectedIconTooltip:si,enableIconTooltip:ii,filterLabelText:ri,instanceLabelText:ai,instanceNotAlive:li,manufacturer:ci,model:di,moreInformation:pi,noButtonText:hi,noDevicesFoundText:ui,noInstanceSelectedText:mi,nothingToCopy:fi,okButtonText:Ti,pleaseEnterValueText:gi,refreshInstanceList:yi,refreshTooltip:vi,toClipboard:Ei,yesButtonText:Ii},xi="所有设备均被过滤掉",$i="电池",bi="取消",_i="关闭",Di="已连接",wi="已复制",Si="复制到剪贴板",Bi="禁用设备",ki="已断开连接",Ni="启用设备",Ai="按名称过滤",Oi="实例",Li="实例不存在",Fi="制造商",Vi="型号",Hi="点击获取更多信息",zi="不",Pi="未找到设备",Mi="请选择实例",Wi="无可复制",Ri="好的",Ui="请输入",Ki="刷新实例列表",ji="刷新",Gi="到剪贴板",Zi="是的",Ji={allDevicesFilteredOut:xi,batteryTooltip:$i,cancelButtonText:bi,closeButtonText:_i,connectedIconTooltip:Di,copied:wi,ctcButtonText:Si,disableIconTooltip:Bi,disconnectedIconTooltip:ki,enableIconTooltip:Ni,filterLabelText:Ai,instanceLabelText:Oi,instanceNotAlive:Li,manufacturer:Fi,model:Vi,moreInformation:Hi,noButtonText:zi,noDevicesFoundText:Pi,noInstanceSelectedText:Mi,nothingToCopy:Wi,okButtonText:Ri,pleaseEnterValueText:Ui,refreshInstanceList:Ki,refreshTooltip:ji,toClipboard:Gi,yesButtonText:Zi};class j extends ve{static i18nInitialized=!1;lastPropsFilter;lastInstance;lastTriggerLoad=0;filterTimeout;language;constructor(e){super(e),j.i18nInitialized||(j.i18nInitialized=!0,u.I18n.extendTranslations({en:Et,de:Ge,ru:Gt,pt:In,nl:Zn,fr:Co,it:Jo,es:Cs,pl:Js,uk:Ci,"zh-cn":Ji})),Object.assign(this.state,{devices:[],filteredDevices:[],filter:"",instanceInfo:null,loading:null,alive:null,groupKey:""}),this.lastPropsFilter=this.props.filter,this.lastInstance=this.props.selectedInstance,this.lastTriggerLoad=this.props.triggerLoad||0,this.filterTimeout=null,this.language=u.I18n.getLanguage()}async componentDidMount(){let e=!1;if(this.state.alive===null){try{const n=await this.props.socket.getState(`system.adapter.${this.props.selectedInstance}.alive`);n!=null&&n.val&&(e=!0)}catch(n){console.error(n)}if(this.setState({alive:e},()=>this.props.socket.subscribeState(`system.adapter.${this.props.selectedInstance}.alive`,this.aliveHandler)),!e)return}else e=this.state.alive;if(!this.props.embedded&&e)try{const n=await this.loadInstanceInfos();this.setState({instanceInfo:n})}catch(n){console.error(n)}e&&this.loadData()}componentWillUnmount(){this.props.socket.unsubscribeState(`system.adapter.${this.props.selectedInstance}.alive`,this.aliveHandler)}aliveHandler=(e,n)=>{if(e===`system.adapter.${this.props.selectedInstance}.alive`){const o=!!(n!=null&&n.val);o!==this.state.alive&&this.setState({alive:o},()=>{o&&this.componentDidMount().catch(console.error)})}};loadData(){this.setState({loading:!0},async()=>{console.log(`Loading devices for ${this.props.selectedInstance}...`);let e=[];try{e=await this.loadDevices(),(!e||!Array.isArray(e))&&(console.error(`Message returned from sendTo() doesn't look like one from DeviceManagement, did you accidentally handle the message in your adapter? ${JSON.stringify(e)}`),e=[])}catch(n){console.error(n),e=[]}this.setState({devices:e,loading:!1},()=>this.applyFilter())})}getText(e){return typeof e=="object"?e[this.language]||e.en:e}applyFilter(){const e=this.props.embedded?this.props.filter:this.state.filter;if(e){const n=this.state.devices.filter(o=>this.getText(o.name).toLowerCase().includes(e.toLowerCase()));this.setState({filteredDevices:n})}else this.setState({filteredDevices:this.state.devices})}handleFilterChange(e){this.setState({filter:e},()=>{this.filterTimeout&&clearTimeout(this.filterTimeout),this.filterTimeout=setTimeout(()=>{this.filterTimeout=null,this.applyFilter()},250)})}renderGroups(e){return e!=null&&e.length?t.createElement(a.Select,{style:{minWidth:120,marginRight:8,marginTop:12.5},variant:"standard",value:this.state.groupKey||"_",renderValue:n=>{n==="_"&&(n="");const o=e.find(r=>r.value===n);return t.createElement("div",{style:{display:"flex",alignItems:"center",gap:8}},(o==null?void 0:o.icon)||t.createElement("div",{style:{width:24}}),(o==null?void 0:o.name)||n)},onChange:n=>this.setState({groupKey:n.target.value==="_"?"":n.target.value})},e.map(n=>t.createElement(a.MenuItem,{value:n.value||"_",key:n.value||"_",style:{display:"flex",alignItems:"center",gap:8}},n.icon||t.createElement("div",{style:{width:24}}),n.name))):null}renderContent(){var r,i;const e={padding:25};(this.props.triggerLoad||0)!==this.lastTriggerLoad&&(this.lastTriggerLoad=this.props.triggerLoad||0,setTimeout(()=>this.loadData(),50)),this.props.embedded&&this.lastPropsFilter!==this.props.filter&&(this.lastPropsFilter=this.props.filter,setTimeout(()=>this.applyFilter(),50)),this.props.embedded&&this.lastInstance!==this.props.selectedInstance&&(this.lastInstance=this.props.selectedInstance,setTimeout(()=>this.loadData(),50));const n=[];let o;if(!this.props.embedded&&!this.state.alive)o=[t.createElement("div",{style:e,key:"notAlive"},t.createElement("span",null,p("instanceNotAlive")))];else if(!this.state.devices.length&&this.props.selectedInstance)o=[t.createElement("div",{style:e,key:"notFound"},t.createElement("span",null,p("noDevicesFoundText")))];else if(this.state.devices.length&&!this.state.filteredDevices.length)o=[t.createElement("div",{style:e,key:"filtered"},t.createElement("span",null,p("allDevicesFilteredOut")))];else{let l=this.state.filteredDevices;if(!this.props.embedded&&l.find(d=>d.group)){n.push({name:u.I18n.t("All"),value:"",count:l.length,icon:t.createElement(c.FilterAltOff,null)}),l.forEach(h=>{if(h.group){const m=n.find(f=>{var C;return f.value===((C=h.group)==null?void 0:C.key)});if(m)m.count++;else{const f=h.group.icon?t.createElement(u.DeviceTypeIcon,{src:h.group.icon}):null;n.push({name:this.getText(h.group.name||h.group.key),value:h.group.key,count:1,icon:f})}}});const d=l.filter(h=>!h.group);d.length&&n.push({name:u.I18n.t("Unknown"),value:"?",count:d.length,icon:t.createElement(c.QuestionMark,null)}),this.state.groupKey&&(this.state.groupKey==="?"?l=l.filter(h=>{var m;return!((m=h.group)!=null&&m.key)}):l=l.filter(h=>{var m;return((m=h.group)==null?void 0:m.key)===this.state.groupKey}),l.length||(o=[t.createElement("div",{style:e,key:"filtered"},t.createElement("span",null,p("allDevicesFilteredOut")))]))}l.length&&(o=l.map(d=>t.createElement(ye,{alive:!!this.state.alive,key:d.id,id:d.id,title:this.getText(d.name),device:d,instanceId:this.props.selectedInstance,uploadImagesToInstance:this.props.uploadImagesToInstance,deviceHandler:this.deviceHandler,controlHandler:this.controlHandler,controlStateHandler:this.controlStateHandler,socket:this.props.socket,themeName:this.props.themeName,themeType:this.props.themeType,theme:this.props.theme,isFloatComma:this.props.isFloatComma,dateFormat:this.props.dateFormat})))}return this.props.embedded?t.createElement(t.Fragment,null,this.state.loading?t.createElement(a.LinearProgress,{style:{width:"100%"}}):null,o):t.createElement("div",{style:{width:"100%",height:"100%",overflow:"hidden"}},t.createElement(a.Toolbar,{variant:"dense",style:{backgroundColor:"#777",display:"flex"}},this.props.title,this.props.selectedInstance?t.createElement(a.Tooltip,{title:p("refreshTooltip"),slotProps:{popper:{sx:{pointerEvents:"none"}}}},t.createElement("span",null,t.createElement(a.IconButton,{onClick:()=>this.loadData(),disabled:!this.state.alive,size:"small"},t.createElement(c.Refresh,null)))):null,this.state.alive&&((i=(r=this.state.instanceInfo)==null?void 0:r.actions)!=null&&i.length)?t.createElement("div",{style:{marginLeft:20}},this.state.instanceInfo.actions.map(l=>t.createElement(Ee,{key:l.id,action:l,instanceHandler:this.instanceHandler}))):null,t.createElement("div",{style:{flexGrow:1}}),this.renderGroups(n),this.state.alive?t.createElement(a.TextField,{variant:"standard",style:{width:200},size:"small",label:p("filterLabelText"),onChange:l=>this.handleFilterChange(l.target.value),value:this.state.filter,autoComplete:"off",slotProps:{input:{autoComplete:"new-password",endAdornment:this.state.filter?t.createElement(a.InputAdornment,{position:"end"},t.createElement(a.IconButton,{tabIndex:-1,onClick:()=>this.handleFilterChange(""),edge:"end"},t.createElement(c.Clear,null))):null},htmlInput:{autoComplete:"off"}}}):null),t.createElement("div",{style:{width:"100%",height:"calc(100% - 56px)",marginTop:8,overflow:"auto",...this.props.style}},this.state.loading?t.createElement(a.LinearProgress,{style:{width:"100%"}}):null,o))}}export{j as default};
@@ -0,0 +1 @@
1
+ import{G as t}from"./iconBase-CB0tx1VT.js";function h(c){return t({attr:{viewBox:"0 0 496 512"},child:[{tag:"path",attr:{d:"M165.9 397.4c0 2-2.3 3.6-5.2 3.6-3.3.3-5.6-1.3-5.6-3.6 0-2 2.3-3.6 5.2-3.6 3-.3 5.6 1.3 5.6 3.6zm-31.1-4.5c-.7 2 1.3 4.3 4.3 4.9 2.6 1 5.6 0 6.2-2s-1.3-4.3-4.3-5.2c-2.6-.7-5.5.3-6.2 2.3zm44.2-1.7c-2.9.7-4.9 2.6-4.6 4.9.3 2 2.9 3.3 5.9 2.6 2.9-.7 4.9-2.6 4.6-4.6-.3-1.9-3-3.2-5.9-2.9zM244.8 8C106.1 8 0 113.3 0 252c0 110.9 69.8 205.8 169.5 239.2 12.8 2.3 17.3-5.6 17.3-12.1 0-6.2-.3-40.4-.3-61.4 0 0-70 15-84.7-29.8 0 0-11.4-29.1-27.8-36.6 0 0-22.9-15.7 1.6-15.4 0 0 24.9 2 38.6 25.8 21.9 38.6 58.6 27.5 72.9 20.9 2.3-16 8.8-27.1 16-33.7-55.9-6.2-112.3-14.3-112.3-110.5 0-27.5 7.6-41.3 23.6-58.9-2.6-6.5-11.1-33.3 2.6-67.9 20.9-6.5 69 27 69 27 20-5.6 41.5-8.5 62.8-8.5s42.8 2.9 62.8 8.5c0 0 48.1-33.6 69-27 13.7 34.7 5.2 61.4 2.6 67.9 16 17.7 25.8 31.5 25.8 58.9 0 96.5-58.9 104.2-114.8 110.5 9.2 7.9 17 22.9 17 46.4 0 33.7-.3 75.4-.3 83.6 0 6.5 4.6 14.4 17.3 12.1C428.2 457.8 496 362.9 496 252 496 113.3 383.5 8 244.8 8zM97.2 352.9c-1.3 1-1 3.3.7 5.2 1.6 1.6 3.9 2.3 5.2 1 1.3-1 1-3.3-.7-5.2-1.6-1.6-3.9-2.3-5.2-1zm-10.8-8.1c-.7 1.3.3 2.9 2.3 3.9 1.6 1 3.6.7 4.3-.7.7-1.3-.3-2.9-2.3-3.9-2-.6-3.6-.3-4.3.7zm32.4 35.6c-1.6 1.3-1 4.3 1.3 6.2 2.3 2.3 5.2 2.6 6.5 1 1.3-1.3.7-4.3-1.3-6.2-2.2-2.3-5.2-2.6-6.5-1zm-11.4-14.7c-1.6 1-1.6 3.6 0 5.9 1.6 2.3 4.3 3.3 5.6 2.3 1.6-1.3 1.6-3.9 0-6.2-1.4-2.3-4-3.3-5.6-2z"},child:[]}]})(c)}function l(c){return t({attr:{viewBox:"0 0 512 512"},child:[{tag:"path",attr:{d:"M496 384H64V80c0-8.84-7.16-16-16-16H16C7.16 64 0 71.16 0 80v336c0 17.67 14.33 32 32 32h464c8.84 0 16-7.16 16-16v-32c0-8.84-7.16-16-16-16zM464 96H345.94c-21.38 0-32.09 25.85-16.97 40.97l32.4 32.4L288 242.75l-73.37-73.37c-12.5-12.5-32.76-12.5-45.25 0l-68.69 68.69c-6.25 6.25-6.25 16.38 0 22.63l22.62 22.62c6.25 6.25 16.38 6.25 22.63 0L192 237.25l73.37 73.37c12.5 12.5 32.76 12.5 45.25 0l96-96 32.4 32.4c15.12 15.12 40.97 4.41 40.97-16.97V112c.01-8.84-7.15-16-15.99-16z"},child:[]}]})(c)}function r(c){return t({attr:{viewBox:"0 0 384 512"},child:[{tag:"path",attr:{d:"M384 112v352c0 26.51-21.49 48-48 48H48c-26.51 0-48-21.49-48-48V112c0-26.51 21.49-48 48-48h80c0-35.29 28.71-64 64-64s64 28.71 64 64h80c26.51 0 48 21.49 48 48zM192 40c-13.255 0-24 10.745-24 24s10.745 24 24 24 24-10.745 24-24-10.745-24-24-24m96 114v-20a6 6 0 0 0-6-6H102a6 6 0 0 0-6 6v20a6 6 0 0 0 6 6h180a6 6 0 0 0 6-6z"},child:[]}]})(c)}function i(c){return t({attr:{viewBox:"0 0 512 512"},child:[{tag:"path",attr:{d:"M200 288H88c-21.4 0-32.1 25.8-17 41l32.9 31-99.2 99.3c-6.2 6.2-6.2 16.4 0 22.6l25.4 25.4c6.2 6.2 16.4 6.2 22.6 0L152 408l31.1 33c15.1 15.1 40.9 4.4 40.9-17V312c0-13.3-10.7-24-24-24zm112-64h112c21.4 0 32.1-25.9 17-41l-33-31 99.3-99.3c6.2-6.2 6.2-16.4 0-22.6L481.9 4.7c-6.2-6.2-16.4-6.2-22.6 0L360 104l-31.1-33C313.8 55.9 288 66.6 288 88v112c0 13.3 10.7 24 24 24zm96 136l33-31.1c15.1-15.1 4.4-40.9-17-40.9H312c-13.3 0-24 10.7-24 24v112c0 21.4 25.9 32.1 41 17l31-32.9 99.3 99.3c6.2 6.2 16.4 6.2 22.6 0l25.4-25.4c6.2-6.2 6.2-16.4 0-22.6L408 360zM183 71.1L152 104 52.7 4.7c-6.2-6.2-16.4-6.2-22.6 0L4.7 30.1c-6.2 6.2-6.2 16.4 0 22.6L104 152l-33 31.1C55.9 198.2 66.6 224 88 224h112c13.3 0 24-10.7 24-24V88c0-21.3-25.9-32-41-16.9z"},child:[]}]})(c)}function v(c){return t({attr:{viewBox:"0 0 448 512"},child:[{tag:"path",attr:{d:"M436 192H312c-13.3 0-24-10.7-24-24V44c0-6.6 5.4-12 12-12h40c6.6 0 12 5.4 12 12v84h84c6.6 0 12 5.4 12 12v40c0 6.6-5.4 12-12 12zm-276-24V44c0-6.6-5.4-12-12-12h-40c-6.6 0-12 5.4-12 12v84H12c-6.6 0-12 5.4-12 12v40c0 6.6 5.4 12 12 12h124c13.3 0 24-10.7 24-24zm0 300V344c0-13.3-10.7-24-24-24H12c-6.6 0-12 5.4-12 12v40c0 6.6 5.4 12 12 12h84v84c0 6.6 5.4 12 12 12h40c6.6 0 12-5.4 12-12zm192 0v-84h84c6.6 0 12-5.4 12-12v-40c0-6.6-5.4-12-12-12H312c-13.3 0-24 10.7-24 24v124c0 6.6 5.4 12 12 12h40c6.6 0 12-5.4 12-12z"},child:[]}]})(c)}function n(c){return t({attr:{viewBox:"0 0 640 512"},child:[{tag:"path",attr:{d:"M624 448h-80V113.45C544 86.19 522.47 64 496 64H384v64h96v384h144c8.84 0 16-7.16 16-16v-32c0-8.84-7.16-16-16-16zM312.24 1.01l-192 49.74C105.99 54.44 96 67.7 96 82.92V448H16c-8.84 0-16 7.16-16 16v32c0 8.84 7.16 16 16 16h336V33.18c0-21.58-19.56-37.41-39.76-32.17zM264 288c-13.25 0-24-14.33-24-32s10.75-32 24-32 24 14.33 24 32-10.75 32-24 32z"},child:[]}]})(c)}function d(c){return t({attr:{viewBox:"0 0 512 512"},child:[{tag:"path",attr:{d:"M216 0h80c13.3 0 24 10.7 24 24v168h87.7c17.8 0 26.7 21.5 14.1 34.1L269.7 378.3c-7.5 7.5-19.8 7.5-27.3 0L90.1 226.1c-12.6-12.6-3.7-34.1 14.1-34.1H192V24c0-13.3 10.7-24 24-24zm296 376v112c0 13.3-10.7 24-24 24H24c-13.3 0-24-10.7-24-24V376c0-13.3 10.7-24 24-24h146.7l49 49c20.1 20.1 52.5 20.1 72.6 0l49-49H488c13.3 0 24 10.7 24 24zm-124 88c0-11-9-20-20-20s-20 9-20 20 9 20 20 20 20-9 20-20zm64 0c0-11-9-20-20-20s-20 9-20 20 9 20 20 20 20-9 20-20z"},child:[]}]})(c)}function e(c){return t({attr:{viewBox:"0 0 512 512"},child:[{tag:"path",attr:{d:"M352.57 128c-28.09 0-54.09 4.52-77.06 12.86l12.41-123.11C289 7.31 279.81-1.18 269.33.13 189.63 10.13 128 77.64 128 159.43c0 28.09 4.52 54.09 12.86 77.06L17.75 224.08C7.31 223-1.18 232.19.13 242.67c10 79.7 77.51 141.33 159.3 141.33 28.09 0 54.09-4.52 77.06-12.86l-12.41 123.11c-1.05 10.43 8.11 18.93 18.59 17.62 79.7-10 141.33-77.51 141.33-159.3 0-28.09-4.52-54.09-12.86-77.06l123.11 12.41c10.44 1.05 18.93-8.11 17.62-18.59-10-79.7-77.51-141.33-159.3-141.33zM256 288a32 32 0 1 1 32-32 32 32 0 0 1-32 32z"},child:[]}]})(c)}function z(c){return t({attr:{viewBox:"0 0 512 512"},child:[{tag:"path",attr:{d:"M487.976 0H24.028C2.71 0-8.047 25.866 7.058 40.971L192 225.941V432c0 7.831 3.821 15.17 10.237 19.662l80 55.98C298.02 518.69 320 507.493 320 487.98V225.941l184.947-184.97C520.021 25.896 509.338 0 487.976 0z"},child:[]}]})(c)}function o(c){return t({attr:{viewBox:"0 0 512 512"},child:[{tag:"path",attr:{d:"M464 448H48c-26.51 0-48-21.49-48-48V112c0-26.51 21.49-48 48-48h416c26.51 0 48 21.49 48 48v288c0 26.51-21.49 48-48 48zM112 120c-30.928 0-56 25.072-56 56s25.072 56 56 56 56-25.072 56-56-25.072-56-56-56zM64 384h384V272l-87.515-87.515c-4.686-4.686-12.284-4.686-16.971 0L208 320l-55.515-55.515c-4.686-4.686-12.284-4.686-16.971 0L64 336v48z"},child:[]}]})(c)}function s(c){return t({attr:{viewBox:"0 0 512 512"},child:[{tag:"path",attr:{d:"M256 8C119.043 8 8 119.083 8 256c0 136.997 111.043 248 248 248s248-111.003 248-248C504 119.083 392.957 8 256 8zm0 110c23.196 0 42 18.804 42 42s-18.804 42-42 42-42-18.804-42-42 18.804-42 42-42zm56 254c0 6.627-5.373 12-12 12h-88c-6.627 0-12-5.373-12-12v-24c0-6.627 5.373-12 12-12h12v-64h-12c-6.627 0-12-5.373-12-12v-24c0-6.627 5.373-12 12-12h64c6.627 0 12 5.373 12 12v100h12c6.627 0 12 5.373 12 12v24z"},child:[]}]})(c)}function u(c){return t({attr:{viewBox:"0 0 352 512"},child:[{tag:"path",attr:{d:"M96.06 454.35c.01 6.29 1.87 12.45 5.36 17.69l17.09 25.69a31.99 31.99 0 0 0 26.64 14.28h61.71a31.99 31.99 0 0 0 26.64-14.28l17.09-25.69a31.989 31.989 0 0 0 5.36-17.69l.04-38.35H96.01l.05 38.35zM0 176c0 44.37 16.45 84.85 43.56 115.78 16.52 18.85 42.36 58.23 52.21 91.45.04.26.07.52.11.78h160.24c.04-.26.07-.51.11-.78 9.85-33.22 35.69-72.6 52.21-91.45C335.55 260.85 352 220.37 352 176 352 78.61 272.91-.3 175.45 0 73.44.31 0 82.97 0 176zm176-80c-44.11 0-80 35.89-80 80 0 8.84-7.16 16-16 16s-16-7.16-16-16c0-61.76 50.24-112 112-112 8.84 0 16 7.16 16 16s-7.16 16-16 16z"},child:[]}]})(c)}function M(c){return t({attr:{viewBox:"0 0 448 512"},child:[{tag:"path",attr:{d:"M400 224h-24v-72C376 68.2 307.8 0 224 0S72 68.2 72 152v72H48c-26.5 0-48 21.5-48 48v192c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V272c0-26.5-21.5-48-48-48zm-104 0H152v-72c0-39.7 32.3-72 72-72s72 32.3 72 72v72z"},child:[]}]})(c)}function H(c){return t({attr:{viewBox:"0 0 512 512"},child:[{tag:"path",attr:{d:"M204.3 5C104.9 24.4 24.8 104.3 5.2 203.4c-37 187 131.7 326.4 258.8 306.7 41.2-6.4 61.4-54.6 42.5-91.7-23.1-45.4 9.9-98.4 60.9-98.4h79.7c35.8 0 64.8-29.6 64.9-65.3C511.5 97.1 368.1-26.9 204.3 5zM96 320c-17.7 0-32-14.3-32-32s14.3-32 32-32 32 14.3 32 32-14.3 32-32 32zm32-128c-17.7 0-32-14.3-32-32s14.3-32 32-32 32 14.3 32 32-14.3 32-32 32zm128-64c-17.7 0-32-14.3-32-32s14.3-32 32-32 32 14.3 32 32-14.3 32-32 32zm128 64c-17.7 0-32-14.3-32-32s14.3-32 32-32 32 14.3 32 32-14.3 32-32 32z"},child:[]}]})(c)}function m(c){return t({attr:{viewBox:"0 0 448 512"},child:[{tag:"path",attr:{d:"M400 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zm-32 252c0 6.6-5.4 12-12 12h-92v92c0 6.6-5.4 12-12 12h-56c-6.6 0-12-5.4-12-12v-92H92c-6.6 0-12-5.4-12-12v-56c0-6.6 5.4-12 12-12h92v-92c0-6.6 5.4-12 12-12h56c6.6 0 12 5.4 12 12v92h92c6.6 0 12 5.4 12 12v56z"},child:[]}]})(c)}function g(c){return t({attr:{viewBox:"0 0 416 512"},child:[{tag:"path",attr:{d:"M272 96c26.51 0 48-21.49 48-48S298.51 0 272 0s-48 21.49-48 48 21.49 48 48 48zM113.69 317.47l-14.8 34.52H32c-17.67 0-32 14.33-32 32s14.33 32 32 32h77.45c19.25 0 36.58-11.44 44.11-29.09l8.79-20.52-10.67-6.3c-17.32-10.23-30.06-25.37-37.99-42.61zM384 223.99h-44.03l-26.06-53.25c-12.5-25.55-35.45-44.23-61.78-50.94l-71.08-21.14c-28.3-6.8-57.77-.55-80.84 17.14l-39.67 30.41c-14.03 10.75-16.69 30.83-5.92 44.86s30.84 16.66 44.86 5.92l39.69-30.41c7.67-5.89 17.44-8 25.27-6.14l14.7 4.37-37.46 87.39c-12.62 29.48-1.31 64.01 26.3 80.31l84.98 50.17-27.47 87.73c-5.28 16.86 4.11 34.81 20.97 40.09 3.19 1 6.41 1.48 9.58 1.48 13.61 0 26.23-8.77 30.52-22.45l31.64-101.06c5.91-20.77-2.89-43.08-21.64-54.39l-61.24-36.14 31.31-78.28 20.27 41.43c8 16.34 24.92 26.89 43.11 26.89H384c17.67 0 32-14.33 32-32s-14.33-31.99-32-31.99z"},child:[]}]})(c)}function p(c){return t({attr:{viewBox:"0 0 512 512"},child:[{tag:"path",attr:{d:"M496 384H160v-16c0-8.8-7.2-16-16-16h-32c-8.8 0-16 7.2-16 16v16H16c-8.8 0-16 7.2-16 16v32c0 8.8 7.2 16 16 16h80v16c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16v-16h336c8.8 0 16-7.2 16-16v-32c0-8.8-7.2-16-16-16zm0-160h-80v-16c0-8.8-7.2-16-16-16h-32c-8.8 0-16 7.2-16 16v16H16c-8.8 0-16 7.2-16 16v32c0 8.8 7.2 16 16 16h336v16c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16v-16h80c8.8 0 16-7.2 16-16v-32c0-8.8-7.2-16-16-16zm0-160H288V48c0-8.8-7.2-16-16-16h-32c-8.8 0-16 7.2-16 16v16H16C7.2 64 0 71.2 0 80v32c0 8.8 7.2 16 16 16h208v16c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16v-16h208c8.8 0 16-7.2 16-16V80c0-8.8-7.2-16-16-16z"},child:[]}]})(c)}function C(c){return t({attr:{viewBox:"0 0 448 512"},child:[{tag:"path",attr:{d:"M384 44v424c0 6.6-5.4 12-12 12h-48c-6.6 0-12-5.4-12-12V291.6l-195.5 181C95.9 489.7 64 475.4 64 448V64c0-27.4 31.9-41.7 52.5-24.6L312 219.3V44c0-6.6 5.4-12 12-12h48c6.6 0 12 5.4 12 12z"},child:[]}]})(c)}function w(c){return t({attr:{viewBox:"0 0 512 512"},child:[{tag:"path",attr:{d:"M367.9 329.76c-4.62 5.3-9.78 10.1-15.9 13.65v22.94c66.52 9.34 112 28.05 112 49.65 0 30.93-93.12 56-208 56S48 446.93 48 416c0-21.6 45.48-40.3 112-49.65v-22.94c-6.12-3.55-11.28-8.35-15.9-13.65C58.87 345.34 0 378.05 0 416c0 53.02 114.62 96 256 96s256-42.98 256-96c0-37.95-58.87-70.66-144.1-86.24zM256 128c35.35 0 64-28.65 64-64S291.35 0 256 0s-64 28.65-64 64 28.65 64 64 64zm-64 192v96c0 17.67 14.33 32 32 32h64c17.67 0 32-14.33 32-32v-96c17.67 0 32-14.33 32-32v-96c0-26.51-21.49-48-48-48h-11.8c-11.07 5.03-23.26 8-36.2 8s-25.13-2.97-36.2-8H208c-26.51 0-48 21.49-48 48v96c0 17.67 14.33 32 32 32z"},child:[]}]})(c)}function F(c){return t({attr:{viewBox:"0 0 512 512"},child:[{tag:"path",attr:{d:"M256 160c-52.9 0-96 43.1-96 96s43.1 96 96 96 96-43.1 96-96-43.1-96-96-96zm246.4 80.5l-94.7-47.3 33.5-100.4c4.5-13.6-8.4-26.5-21.9-21.9l-100.4 33.5-47.4-94.8c-6.4-12.8-24.6-12.8-31 0l-47.3 94.7L92.7 70.8c-13.6-4.5-26.5 8.4-21.9 21.9l33.5 100.4-94.7 47.4c-12.8 6.4-12.8 24.6 0 31l94.7 47.3-33.5 100.5c-4.5 13.6 8.4 26.5 21.9 21.9l100.4-33.5 47.3 94.7c6.4 12.8 24.6 12.8 31 0l47.3-94.7 100.4 33.5c13.6 4.5 26.5-8.4 21.9-21.9l-33.5-100.4 94.7-47.3c13-6.5 13-24.7.2-31.1zm-155.9 106c-49.9 49.9-131.1 49.9-181 0-49.9-49.9-49.9-131.1 0-181 49.9-49.9 131.1-49.9 181 0 49.9 49.9 49.9 131.1 0 181z"},child:[]}]})(c)}function V(c){return t({attr:{viewBox:"0 0 576 512"},child:[{tag:"path",attr:{d:"M384 64H192C86 64 0 150 0 256s86 192 192 192h192c106 0 192-86 192-192S490 64 384 64zm0 320c-70.8 0-128-57.3-128-128 0-70.8 57.3-128 128-128 70.8 0 128 57.3 128 128 0 70.8-57.3 128-128 128z"},child:[]}]})(c)}function f(c){return t({attr:{viewBox:"0 0 384 512"},child:[{tag:"path",attr:{d:"M215.03 72.04L126.06 161H24c-13.26 0-24 10.74-24 24v144c0 13.25 10.74 24 24 24h102.06l88.97 88.95c15.03 15.03 40.97 4.47 40.97-16.97V89.02c0-21.47-25.96-31.98-40.97-16.98zm123.2 108.08c-11.58-6.33-26.19-2.16-32.61 9.45-6.39 11.61-2.16 26.2 9.45 32.61C327.98 229.28 336 242.62 336 257c0 14.38-8.02 27.72-20.92 34.81-11.61 6.41-15.84 21-9.45 32.61 6.43 11.66 21.05 15.8 32.61 9.45 28.23-15.55 45.77-45 45.77-76.88s-17.54-61.32-45.78-76.87z"},child:[]}]})(c)}function x(c){return t({attr:{viewBox:"0 0 512 512"},child:[{tag:"path",attr:{d:"M215.03 71.05L126.06 160H24c-13.26 0-24 10.74-24 24v144c0 13.25 10.74 24 24 24h102.06l88.97 88.95c15.03 15.03 40.97 4.47 40.97-16.97V88.02c0-21.46-25.96-31.98-40.97-16.97zM461.64 256l45.64-45.64c6.3-6.3 6.3-16.52 0-22.82l-22.82-22.82c-6.3-6.3-16.52-6.3-22.82 0L416 210.36l-45.64-45.64c-6.3-6.3-16.52-6.3-22.82 0l-22.82 22.82c-6.3 6.3-6.3 16.52 0 22.82L370.36 256l-45.63 45.63c-6.3 6.3-6.3 16.52 0 22.82l22.82 22.82c6.3 6.3 16.52 6.3 22.82 0L416 301.64l45.64 45.64c6.3 6.3 16.52 6.3 22.82 0l22.82-22.82c6.3-6.3 6.3-16.52 0-22.82L461.64 256z"},child:[]}]})(c)}function L(c){return t({attr:{viewBox:"0 0 576 512"},child:[{tag:"path",attr:{d:"M215.03 71.05L126.06 160H24c-13.26 0-24 10.74-24 24v144c0 13.25 10.74 24 24 24h102.06l88.97 88.95c15.03 15.03 40.97 4.47 40.97-16.97V88.02c0-21.46-25.96-31.98-40.97-16.97zm233.32-51.08c-11.17-7.33-26.18-4.24-33.51 6.95-7.34 11.17-4.22 26.18 6.95 33.51 66.27 43.49 105.82 116.6 105.82 195.58 0 78.98-39.55 152.09-105.82 195.58-11.17 7.32-14.29 22.34-6.95 33.5 7.04 10.71 21.93 14.56 33.51 6.95C528.27 439.58 576 351.33 576 256S528.27 72.43 448.35 19.97zM480 256c0-63.53-32.06-121.94-85.77-156.24-11.19-7.14-26.03-3.82-33.12 7.46s-3.78 26.21 7.41 33.36C408.27 165.97 432 209.11 432 256s-23.73 90.03-63.48 115.42c-11.19 7.14-14.5 22.07-7.41 33.36 6.51 10.36 21.12 15.14 33.12 7.46C447.94 377.94 480 319.54 480 256zm-141.77-76.87c-11.58-6.33-26.19-2.16-32.61 9.45-6.39 11.61-2.16 26.2 9.45 32.61C327.98 228.28 336 241.63 336 256c0 14.38-8.02 27.72-20.92 34.81-11.61 6.41-15.84 21-9.45 32.61 6.43 11.66 21.05 15.8 32.61 9.45 28.23-15.55 45.77-45 45.77-76.88s-17.54-61.32-45.78-76.86z"},child:[]}]})(c)}function B(c){return t({attr:{viewBox:"0 0 512 512"},child:[{tag:"path",attr:{d:"M507.73 109.1c-2.24-9.03-13.54-12.09-20.12-5.51l-74.36 74.36-67.88-11.31-11.31-67.88 74.36-74.36c6.62-6.62 3.43-17.9-5.66-20.16-47.38-11.74-99.55.91-136.58 37.93-39.64 39.64-50.55 97.1-34.05 147.2L18.74 402.76c-24.99 24.99-24.99 65.51 0 90.5 24.99 24.99 65.51 24.99 90.5 0l213.21-213.21c50.12 16.71 107.47 5.68 147.37-34.22 37.07-37.07 49.7-89.32 37.91-136.73zM64 472c-13.25 0-24-10.75-24-24 0-13.26 10.75-24 24-24s24 10.74 24 24c0 13.25-10.75 24-24 24z"},child:[]}]})(c)}function S(c){return t({attr:{viewBox:"0 0 576 512"},child:[{tag:"path",attr:{d:"M527.9 224H480v-48c0-26.5-21.5-48-48-48H272l-64-64H48C21.5 64 0 85.5 0 112v288c0 26.5 21.5 48 48 48h400c16.5 0 31.9-8.5 40.7-22.6l79.9-128c20-31.9-3-73.4-40.7-73.4zM48 118c0-3.3 2.7-6 6-6h134.1l64 64H426c3.3 0 6 2.7 6 6v42H152c-16.8 0-32.4 8.8-41.1 23.2L48 351.4zm400 282H72l77.2-128H528z"},child:[]}]})(c)}function b(c){return t({attr:{viewBox:"0 0 512 512"},child:[{tag:"path",attr:{d:"M464 128H272l-54.63-54.63c-6-6-14.14-9.37-22.63-9.37H48C21.49 64 0 85.49 0 112v288c0 26.51 21.49 48 48 48h416c26.51 0 48-21.49 48-48V176c0-26.51-21.49-48-48-48zm0 272H48V112h140.12l54.63 54.63c6 6 14.14 9.37 22.63 9.37H464v224z"},child:[]}]})(c)}function R(c){return t({attr:{viewBox:"0 0 352 512"},child:[{tag:"path",attr:{d:"M176 80c-52.94 0-96 43.06-96 96 0 8.84 7.16 16 16 16s16-7.16 16-16c0-35.3 28.72-64 64-64 8.84 0 16-7.16 16-16s-7.16-16-16-16zM96.06 459.17c0 3.15.93 6.22 2.68 8.84l24.51 36.84c2.97 4.46 7.97 7.14 13.32 7.14h78.85c5.36 0 10.36-2.68 13.32-7.14l24.51-36.84c1.74-2.62 2.67-5.7 2.68-8.84l.05-43.18H96.02l.04 43.18zM176 0C73.72 0 0 82.97 0 176c0 44.37 16.45 84.85 43.56 115.78 16.64 18.99 42.74 58.8 52.42 92.16v.06h48v-.12c-.01-4.77-.72-9.51-2.15-14.07-5.59-17.81-22.82-64.77-62.17-109.67-20.54-23.43-31.52-53.15-31.61-84.14-.2-73.64 59.67-128 127.95-128 70.58 0 128 57.42 128 128 0 30.97-11.24 60.85-31.65 84.14-39.11 44.61-56.42 91.47-62.1 109.46a47.507 47.507 0 0 0-2.22 14.3v.1h48v-.05c9.68-33.37 35.78-73.18 52.42-92.16C335.55 260.85 352 220.37 352 176 352 78.8 273.2 0 176 0z"},child:[]}]})(c)}export{S as A,B as F,L as a,f as b,p as c,C as d,w as e,M as f,u as g,s as h,R as i,o as j,e as k,F as l,g as m,n,V as o,x as p,v as q,i as r,h as s,z as t,H as u,d as v,m as w,l as x,r as y,b as z};