zigbee2mqtt-windfront 2.3.1 → 2.4.1

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 (270) hide show
  1. package/dist/assets/{About-i-o7Fha7.js → About-Dk59p6Io.js} +2 -2
  2. package/dist/assets/About-Dk59p6Io.js.br +0 -0
  3. package/dist/assets/{ActivityPage-GriRdyJK.js → ActivityPage-BThwHD0V.js} +1 -1
  4. package/dist/assets/ActivityPage-BThwHD0V.js.br +0 -0
  5. package/dist/assets/{Availability-YPjK9GZh.js → Availability-Dg6S22GH.js} +1 -1
  6. package/dist/assets/Availability-Dg6S22GH.js.br +0 -0
  7. package/dist/assets/Bind-hUzLC_XL.js +1 -0
  8. package/dist/assets/Bind-hUzLC_XL.js.br +0 -0
  9. package/dist/assets/{BindRow-D9Od6x88.js → BindRow-DM_7y2Yv.js} +1 -1
  10. package/dist/assets/BindRow-DM_7y2Yv.js.br +0 -0
  11. package/dist/assets/BindingsPage-BRcaV3HK.js +1 -0
  12. package/dist/assets/BindingsPage-BRcaV3HK.js.br +0 -0
  13. package/dist/assets/Bridge-il4vaWt7.js +1 -0
  14. package/dist/assets/Bridge-il4vaWt7.js.br +0 -0
  15. package/dist/assets/{CheckboxField-DDGxPCob.js → CheckboxField-DrQ7Nn8y.js} +1 -1
  16. package/dist/assets/CheckboxField-DrQ7Nn8y.js.br +0 -0
  17. package/dist/assets/ClusterSinglePicker-DfE7tvWD.js +1 -0
  18. package/dist/assets/ClusterSinglePicker-DfE7tvWD.js.br +0 -0
  19. package/dist/assets/{Clusters-DchCgFcV.js → Clusters-DFAtmAdK.js} +1 -1
  20. package/dist/assets/Clusters-DFAtmAdK.js.br +0 -0
  21. package/dist/assets/{ContributePage-CyXoSvR_.js → ContributePage-BrS-Asxh.js} +1 -1
  22. package/dist/assets/ContributePage-BrS-Asxh.js.br +0 -0
  23. package/dist/assets/{Dashboard-Bl8dJ0ah.js → Dashboard-CsQI5UsF.js} +1 -1
  24. package/dist/assets/Dashboard-CsQI5UsF.js.br +0 -0
  25. package/dist/assets/{DashboardFeatureWrapper-UEMN2W33.js → DashboardFeatureWrapper-CfzBwTjj.js} +1 -1
  26. package/dist/assets/DashboardFeatureWrapper-CfzBwTjj.js.br +0 -0
  27. package/dist/assets/{DebouncedInput-B_mSPoL2.js → DebouncedInput-DQQrXn5S.js} +1 -1
  28. package/dist/assets/DebouncedInput-DQQrXn5S.js.br +0 -0
  29. package/dist/assets/DevConsole-BxOVSwfB.js +7 -0
  30. package/dist/assets/DevConsole-BxOVSwfB.js.br +0 -0
  31. package/dist/assets/DevConsole-DOaJVUEV.js +1 -0
  32. package/dist/assets/DevConsole-DOaJVUEV.js.br +0 -0
  33. package/dist/assets/{DeviceCard-CE7t_uOW.js → DeviceCard-B7DwHRw7.js} +1 -1
  34. package/dist/assets/DeviceCard-B7DwHRw7.js.br +0 -0
  35. package/dist/assets/DeviceImage--JnVIndk.js +1 -0
  36. package/dist/assets/DeviceImage--JnVIndk.js.br +0 -0
  37. package/dist/assets/{DeviceInfo-BGYj26ZS.js → DeviceInfo-BZgmNwGs.js} +3 -3
  38. package/dist/assets/DeviceInfo-BZgmNwGs.js.br +0 -0
  39. package/dist/assets/{DevicePage-D4AS3RcM.js → DevicePage-UGY6bpvu.js} +2 -2
  40. package/dist/assets/DevicePage-UGY6bpvu.js.br +0 -0
  41. package/dist/assets/{DevicePicker-Eg-X3fKz.js → DevicePicker-DoYLt0RQ.js} +1 -1
  42. package/dist/assets/DevicePicker-DoYLt0RQ.js.br +0 -0
  43. package/dist/assets/DeviceSettings-Bh8oaRQ4.js +1 -0
  44. package/dist/assets/DeviceSettings-Bh8oaRQ4.js.br +0 -0
  45. package/dist/assets/DeviceSpecificSettings-l_qXyjR1.js +1 -0
  46. package/dist/assets/DeviceSpecificSettings-l_qXyjR1.js.br +0 -0
  47. package/dist/assets/Devices-C2U4O68B.js +1 -0
  48. package/dist/assets/Devices-C2U4O68B.js.br +0 -0
  49. package/dist/assets/{DevicesPage-WM7hxalV.js → DevicesPage-DfLLkXVs.js} +1 -1
  50. package/dist/assets/DevicesPage-DfLLkXVs.js.br +0 -0
  51. package/dist/assets/{DisplayValue-BZ-eaAKu.js → DisplayValue-B8V4AkkS.js} +1 -1
  52. package/dist/assets/DisplayValue-B8V4AkkS.js.br +0 -0
  53. package/dist/assets/{Duration-CzwYBX29.js → Duration-DduOn9Hq.js} +1 -1
  54. package/dist/assets/Duration-DduOn9Hq.js.br +0 -0
  55. package/dist/assets/{EndpointPicker-DtqElVGb.js → EndpointPicker-DYD2l97z.js} +1 -1
  56. package/dist/assets/EndpointPicker-DYD2l97z.js.br +0 -0
  57. package/dist/assets/{Exposes-DfrJAUra.js → Exposes-CSwKWKhK.js} +1 -1
  58. package/dist/assets/Exposes-CSwKWKhK.js.br +0 -0
  59. package/dist/assets/{Feature-BJ8zY1Ga.js → Feature-2Ldyy3qr.js} +1 -1
  60. package/dist/assets/Feature-2Ldyy3qr.js.br +0 -0
  61. package/dist/assets/FrontendSettingsPage-D5NHeDF1.js +1 -0
  62. package/dist/assets/FrontendSettingsPage-D5NHeDF1.js.br +0 -0
  63. package/dist/assets/{GroupPage-fVYGZqzs.js → GroupPage-CrmWiYcR.js} +2 -2
  64. package/dist/assets/GroupPage-CrmWiYcR.js.br +0 -0
  65. package/dist/assets/{GroupSettings-2DGc5J43.js → GroupSettings-BOiq8F1f.js} +1 -1
  66. package/dist/assets/GroupSettings-BOiq8F1f.js.br +0 -0
  67. package/dist/assets/{Groups-9FD4ZbHT.js → Groups-B_Kw6RWK.js} +1 -1
  68. package/dist/assets/Groups-B_Kw6RWK.js.br +0 -0
  69. package/dist/assets/{GroupsPage-DIXFxgLg.js → GroupsPage-CtzXx-KV.js} +1 -1
  70. package/dist/assets/GroupsPage-CtzXx-KV.js.br +0 -0
  71. package/dist/assets/{Health-BwDAB_DL.js → Health-6OYkJVit.js} +1 -1
  72. package/dist/assets/Health-6OYkJVit.js.br +0 -0
  73. package/dist/assets/HomePage-zOvtlXQ1.js +1 -0
  74. package/dist/assets/HomePage-zOvtlXQ1.js.br +0 -0
  75. package/dist/assets/{IndeterminateCheckbox-xTLsM_wF.js → IndeterminateCheckbox-Bt4VhMcb.js} +1 -1
  76. package/dist/assets/IndeterminateCheckbox-Bt4VhMcb.js.br +1 -0
  77. package/dist/assets/InfoAlert-CvsMXiqV.js +1 -0
  78. package/dist/assets/InfoAlert-CvsMXiqV.js.br +0 -0
  79. package/dist/assets/{InputField-BYfjYPOY.js → InputField-BEcvy0ko.js} +1 -1
  80. package/dist/assets/InputField-BEcvy0ko.js.br +0 -0
  81. package/dist/assets/{Json-Bv-xu1u4.js → Json-D_25DKlO.js} +1 -1
  82. package/dist/assets/Json-D_25DKlO.js.br +0 -0
  83. package/dist/assets/{LastSeen-DA4kaWWb.js → LastSeen-DZO9pxx0.js} +1 -1
  84. package/dist/assets/LastSeen-DZO9pxx0.js.br +0 -0
  85. package/dist/assets/{LogsPage-DggXPpYo.js → LogsPage-DD7IXmbU.js} +1 -1
  86. package/dist/assets/LogsPage-DD7IXmbU.js.br +0 -0
  87. package/dist/assets/Lqi--cuMexFb.js +1 -0
  88. package/dist/assets/Lqi--cuMexFb.js.br +0 -0
  89. package/dist/assets/NetworkPage-DT0uuHBT.js +2 -0
  90. package/dist/assets/NetworkPage-DT0uuHBT.js.br +0 -0
  91. package/dist/assets/{NumberField-DVKVcA4j.js → NumberField-BnOf9z85.js} +1 -1
  92. package/dist/assets/NumberField-BnOf9z85.js.br +0 -0
  93. package/dist/assets/{OtaPage-Bam-Dpba.js → OtaPage-Cs4HQvIh.js} +1 -1
  94. package/dist/assets/OtaPage-Cs4HQvIh.js.br +0 -0
  95. package/dist/assets/PowerSource-aPWlgPkA.js +1 -0
  96. package/dist/assets/PowerSource-aPWlgPkA.js.br +0 -0
  97. package/dist/assets/RawNetworkData-CFCfjPgU.js +20 -0
  98. package/dist/assets/RawNetworkData-CFCfjPgU.js.br +0 -0
  99. package/dist/assets/{RawNetworkMap-C2gM7U6b.js → RawNetworkMap-oqQY6QqQ.js} +184 -184
  100. package/dist/assets/RawNetworkMap-oqQY6QqQ.js.br +0 -0
  101. package/dist/assets/{RecallRemove-ByQ3RXQY.js → RecallRemove-7KLplpfI.js} +1 -1
  102. package/dist/assets/RecallRemove-7KLplpfI.js.br +0 -0
  103. package/dist/assets/{RemoveDeviceModal-BFCk98E2.js → RemoveDeviceModal-BZJBMVrA.js} +1 -1
  104. package/dist/assets/RemoveDeviceModal-BZJBMVrA.js.br +0 -0
  105. package/dist/assets/Reporting-BiO2AXda.js +1 -0
  106. package/dist/assets/Reporting-BiO2AXda.js.br +0 -0
  107. package/dist/assets/ReportingPage-CcYgXG-b.js +1 -0
  108. package/dist/assets/ReportingPage-CcYgXG-b.js.br +0 -0
  109. package/dist/assets/ReportingRow-BvBnf_vK.js +1 -0
  110. package/dist/assets/ReportingRow-BvBnf_vK.js.br +0 -0
  111. package/dist/assets/{Scene-BJBl-O9V.js → Scene-j_LqSzLO.js} +1 -1
  112. package/dist/assets/Scene-j_LqSzLO.js.br +0 -0
  113. package/dist/assets/{SelectField-CGrVloaL.js → SelectField-DRpZbZT5.js} +1 -1
  114. package/dist/assets/SelectField-DRpZbZT5.js.br +1 -0
  115. package/dist/assets/{Settings-CGw2oF0C.js → Settings-C4xs2baM.js} +1 -1
  116. package/dist/assets/Settings-C4xs2baM.js.br +0 -0
  117. package/dist/assets/{SettingsList-CTeXhdEC.js → SettingsList-C8BZ5NHH.js} +1 -1
  118. package/dist/assets/SettingsList-C8BZ5NHH.js.br +0 -0
  119. package/dist/assets/SettingsPage-D535nOi3.js +2 -0
  120. package/dist/assets/SettingsPage-D535nOi3.js.br +0 -0
  121. package/dist/assets/State-CBgenmmB.js +1 -0
  122. package/dist/assets/State-CBgenmmB.js.br +0 -0
  123. package/dist/assets/Table-7PCqTEYG.js +1 -0
  124. package/dist/assets/Table-7PCqTEYG.js.br +0 -0
  125. package/dist/assets/{TextareaField-Dnm7VOj3.js → TextareaField-BXRwxQNq.js} +1 -1
  126. package/dist/assets/TextareaField-BXRwxQNq.js.br +0 -0
  127. package/dist/assets/{TimeAgo-BBbvibZK.js → TimeAgo-CpW8sFgN.js} +1 -1
  128. package/dist/assets/TimeAgo-CpW8sFgN.js.br +0 -0
  129. package/dist/assets/{Tools-BWzGZOoh.js → Tools-CtnWR1v5.js} +1 -1
  130. package/dist/assets/Tools-CtnWR1v5.js.br +0 -0
  131. package/dist/assets/TouchlinkPage-v4mg5bHL.js +1 -0
  132. package/dist/assets/TouchlinkPage-v4mg5bHL.js.br +0 -0
  133. package/dist/assets/{VendorLink-Cx9U94p9.js → VendorLink-C5BhWAdC.js} +1 -1
  134. package/dist/assets/VendorLink-C5BhWAdC.js.br +0 -0
  135. package/dist/assets/{_createCompounder-DvelL9we.js → _createCompounder-D7Ru-_Za.js} +1 -1
  136. package/dist/assets/_createCompounder-D7Ru-_Za.js.br +0 -0
  137. package/dist/assets/{floating-ui.react-MIvSYIT3.js → floating-ui.react-DX31rMzd.js} +1 -1
  138. package/dist/assets/floating-ui.react-DX31rMzd.js.br +0 -0
  139. package/dist/assets/{index-BWJZAMXy.js → index-0CSOSMlw.js} +1 -1
  140. package/dist/assets/index-0CSOSMlw.js.br +0 -0
  141. package/dist/assets/{index-BnCNGENq.js → index-BnkQ1_bY.js} +1 -1
  142. package/dist/assets/index-BnkQ1_bY.js.br +0 -0
  143. package/dist/assets/index-hXyIHLZA.js +581 -0
  144. package/dist/assets/index-hXyIHLZA.js.br +0 -0
  145. package/dist/assets/{index-Zvf07u5t.css → index-uKtJ6Klq.css} +1 -1
  146. package/dist/assets/index-uKtJ6Klq.css.br +0 -0
  147. package/dist/assets/{isObjectLike-D2GWafVk.js → isObjectLike-BslK8i2r.js} +1 -1
  148. package/dist/assets/isObjectLike-BslK8i2r.js.br +0 -0
  149. package/dist/assets/{jszip.min-CkTd3RZ4.js → jszip.min-C6oPxSyO.js} +1 -1
  150. package/dist/assets/jszip.min-C6oPxSyO.js.br +0 -0
  151. package/dist/assets/{merge-D15LJ0wW.js → merge-DM91M3Uq.js} +1 -1
  152. package/dist/assets/merge-DM91M3Uq.js.br +0 -0
  153. package/dist/assets/snakeCase-4cHyneji.js +1 -0
  154. package/dist/assets/snakeCase-4cHyneji.js.br +0 -0
  155. package/dist/assets/useColumnCount-Bo_-BFtK.js +1 -0
  156. package/dist/assets/useColumnCount-Bo_-BFtK.js.br +0 -0
  157. package/dist/assets/{useSearch-CiQm9ZMA.js → useSearch-DOGXNxuL.js} +1 -1
  158. package/dist/assets/useSearch-DOGXNxuL.js.br +0 -0
  159. package/dist/assets/{useTable-CC5yv3vQ.js → useTable-CJtnkhtm.js} +1 -1
  160. package/dist/assets/useTable-CJtnkhtm.js.br +0 -0
  161. package/dist/index.html +2 -2
  162. package/dist/index.html.br +0 -0
  163. package/package.json +16 -16
  164. package/dist/assets/About-i-o7Fha7.js.br +0 -0
  165. package/dist/assets/ActivityPage-GriRdyJK.js.br +0 -0
  166. package/dist/assets/Availability-YPjK9GZh.js.br +0 -0
  167. package/dist/assets/Bind-Cvv2GXES.js +0 -1
  168. package/dist/assets/Bind-Cvv2GXES.js.br +0 -0
  169. package/dist/assets/BindRow-D9Od6x88.js.br +0 -0
  170. package/dist/assets/BindingsPage-MMC7xnsC.js +0 -1
  171. package/dist/assets/BindingsPage-MMC7xnsC.js.br +0 -0
  172. package/dist/assets/Bridge-C1yjMZnP.js +0 -1
  173. package/dist/assets/Bridge-C1yjMZnP.js.br +0 -0
  174. package/dist/assets/CheckboxField-DDGxPCob.js.br +0 -0
  175. package/dist/assets/ClusterSinglePicker-wRw4n9xD.js +0 -1
  176. package/dist/assets/ClusterSinglePicker-wRw4n9xD.js.br +0 -0
  177. package/dist/assets/Clusters-DchCgFcV.js.br +0 -0
  178. package/dist/assets/ContributePage-CyXoSvR_.js.br +0 -0
  179. package/dist/assets/Dashboard-Bl8dJ0ah.js.br +0 -0
  180. package/dist/assets/DashboardFeatureWrapper-UEMN2W33.js.br +0 -0
  181. package/dist/assets/DebouncedInput-B_mSPoL2.js.br +0 -0
  182. package/dist/assets/DevConsole-BGDUMunS.js +0 -1
  183. package/dist/assets/DevConsole-BGDUMunS.js.br +0 -0
  184. package/dist/assets/DevConsole-DAJXOXwE.js +0 -7
  185. package/dist/assets/DevConsole-DAJXOXwE.js.br +0 -0
  186. package/dist/assets/DeviceCard-CE7t_uOW.js.br +0 -0
  187. package/dist/assets/DeviceImage-C6iSUjiJ.js +0 -1
  188. package/dist/assets/DeviceImage-C6iSUjiJ.js.br +0 -0
  189. package/dist/assets/DeviceInfo-BGYj26ZS.js.br +0 -0
  190. package/dist/assets/DevicePage-D4AS3RcM.js.br +0 -0
  191. package/dist/assets/DevicePicker-Eg-X3fKz.js.br +0 -0
  192. package/dist/assets/DeviceSettings-CduJmEdd.js +0 -1
  193. package/dist/assets/DeviceSettings-CduJmEdd.js.br +0 -0
  194. package/dist/assets/DeviceSpecificSettings-DW4AG8ZF.js +0 -1
  195. package/dist/assets/DeviceSpecificSettings-DW4AG8ZF.js.br +0 -0
  196. package/dist/assets/Devices-BFJMMQk1.js +0 -1
  197. package/dist/assets/Devices-BFJMMQk1.js.br +0 -0
  198. package/dist/assets/DevicesPage-WM7hxalV.js.br +0 -0
  199. package/dist/assets/DisplayValue-BZ-eaAKu.js.br +0 -0
  200. package/dist/assets/Duration-CzwYBX29.js.br +0 -0
  201. package/dist/assets/EndpointPicker-DtqElVGb.js.br +0 -0
  202. package/dist/assets/Exposes-DfrJAUra.js.br +0 -0
  203. package/dist/assets/Feature-BJ8zY1Ga.js.br +0 -0
  204. package/dist/assets/FrontendSettingsPage-CA1akody.js +0 -1
  205. package/dist/assets/FrontendSettingsPage-CA1akody.js.br +0 -0
  206. package/dist/assets/GroupPage-fVYGZqzs.js.br +0 -0
  207. package/dist/assets/GroupSettings-2DGc5J43.js.br +0 -0
  208. package/dist/assets/Groups-9FD4ZbHT.js.br +0 -0
  209. package/dist/assets/GroupsPage-DIXFxgLg.js.br +0 -0
  210. package/dist/assets/Health-BwDAB_DL.js.br +0 -0
  211. package/dist/assets/HomePage-CA93CxkX.js +0 -1
  212. package/dist/assets/HomePage-CA93CxkX.js.br +0 -0
  213. package/dist/assets/IndeterminateCheckbox-xTLsM_wF.js.br +0 -0
  214. package/dist/assets/InfoAlert-BEMI4UFc.js +0 -1
  215. package/dist/assets/InfoAlert-BEMI4UFc.js.br +0 -0
  216. package/dist/assets/InputField-BYfjYPOY.js.br +0 -0
  217. package/dist/assets/Json-Bv-xu1u4.js.br +0 -0
  218. package/dist/assets/LastSeen-DA4kaWWb.js.br +0 -0
  219. package/dist/assets/LogsPage-DggXPpYo.js.br +0 -0
  220. package/dist/assets/Lqi-BLFaxsM9.js +0 -1
  221. package/dist/assets/Lqi-BLFaxsM9.js.br +0 -0
  222. package/dist/assets/NetworkPage-fX6p5Jft.js +0 -2
  223. package/dist/assets/NetworkPage-fX6p5Jft.js.br +0 -0
  224. package/dist/assets/NumberField-DVKVcA4j.js.br +0 -0
  225. package/dist/assets/OtaPage-Bam-Dpba.js.br +0 -0
  226. package/dist/assets/PowerSource-D71Ibdxv.js +0 -1
  227. package/dist/assets/PowerSource-D71Ibdxv.js.br +0 -0
  228. package/dist/assets/RawNetworkData-CTWMGGj7.js +0 -20
  229. package/dist/assets/RawNetworkData-CTWMGGj7.js.br +0 -0
  230. package/dist/assets/RawNetworkMap-C2gM7U6b.js.br +0 -0
  231. package/dist/assets/RecallRemove-ByQ3RXQY.js.br +0 -0
  232. package/dist/assets/RemoveDeviceModal-BFCk98E2.js.br +0 -0
  233. package/dist/assets/Reporting-BkJlvwAN.js +0 -1
  234. package/dist/assets/Reporting-BkJlvwAN.js.br +0 -0
  235. package/dist/assets/ReportingPage-BohlZbl0.js +0 -1
  236. package/dist/assets/ReportingPage-BohlZbl0.js.br +0 -0
  237. package/dist/assets/ReportingRow-CxmihB6I.js +0 -1
  238. package/dist/assets/ReportingRow-CxmihB6I.js.br +0 -0
  239. package/dist/assets/Scene-BJBl-O9V.js.br +0 -0
  240. package/dist/assets/SelectField-CGrVloaL.js.br +0 -0
  241. package/dist/assets/Settings-CGw2oF0C.js.br +0 -0
  242. package/dist/assets/SettingsList-CTeXhdEC.js.br +0 -0
  243. package/dist/assets/SettingsPage-prek-fOp.js +0 -2
  244. package/dist/assets/SettingsPage-prek-fOp.js.br +0 -0
  245. package/dist/assets/State-B1hWOtmK.js +0 -1
  246. package/dist/assets/State-B1hWOtmK.js.br +0 -0
  247. package/dist/assets/Table-DQSQ_sYq.js +0 -1
  248. package/dist/assets/Table-DQSQ_sYq.js.br +0 -0
  249. package/dist/assets/TextareaField-Dnm7VOj3.js.br +0 -0
  250. package/dist/assets/TimeAgo-BBbvibZK.js.br +0 -0
  251. package/dist/assets/Tools-BWzGZOoh.js.br +0 -0
  252. package/dist/assets/TouchlinkPage-C3ESWw4F.js +0 -1
  253. package/dist/assets/TouchlinkPage-C3ESWw4F.js.br +0 -0
  254. package/dist/assets/VendorLink-Cx9U94p9.js.br +0 -0
  255. package/dist/assets/_createCompounder-DvelL9we.js.br +0 -0
  256. package/dist/assets/floating-ui.react-MIvSYIT3.js.br +0 -0
  257. package/dist/assets/index-BWJZAMXy.js.br +0 -2
  258. package/dist/assets/index-BnCNGENq.js.br +0 -0
  259. package/dist/assets/index-O2DLxYbj.js +0 -579
  260. package/dist/assets/index-O2DLxYbj.js.br +0 -0
  261. package/dist/assets/index-Zvf07u5t.css.br +0 -0
  262. package/dist/assets/isObjectLike-D2GWafVk.js.br +0 -0
  263. package/dist/assets/jszip.min-CkTd3RZ4.js.br +0 -0
  264. package/dist/assets/merge-D15LJ0wW.js.br +0 -0
  265. package/dist/assets/snakeCase-DDe65ywx.js +0 -1
  266. package/dist/assets/snakeCase-DDe65ywx.js.br +0 -0
  267. package/dist/assets/useColumnCount-CDIFEtdP.js +0 -1
  268. package/dist/assets/useColumnCount-CDIFEtdP.js.br +0 -0
  269. package/dist/assets/useSearch-CiQm9ZMA.js.br +0 -0
  270. package/dist/assets/useTable-CC5yv3vQ.js.br +0 -0
@@ -1,4 +1,4 @@
1
- import{r as x,u as te,j as S,F as L,by as ce,B as Y,d5 as fe,M as Me,w as Ie,o as A,f as Pe,l as y,ay as ye,aA as De,az as ae}from"./index-O2DLxYbj.js";import{D as pe}from"./DebouncedInput-B_mSPoL2.js";function D(e,o){return typeof e=="function"?e(o):e}function V(e,o){return t=>{o.setState(n=>({...n,[e]:D(t,n[e])}))}}function B(e){return e instanceof Function}function Ee(e){return Array.isArray(e)&&e.every(o=>typeof o=="number")}function Ge(e,o){const t=[],n=i=>{i.forEach(r=>{t.push(r);const l=o(r);l!=null&&l.length&&n(l)})};return n(e),t}function C(e,o,t){let n=[],i;return r=>{let l;t.key&&t.debug&&(l=Date.now());const s=e(r);if(!(s.length!==n.length||s.some((c,m)=>n[m]!==c)))return i;n=s;let g;if(t.key&&t.debug&&(g=Date.now()),i=o(...s),t==null||t.onChange==null||t.onChange(i),t.key&&t.debug&&t!=null&&t.debug()){const c=Math.round((Date.now()-l)*100)/100,m=Math.round((Date.now()-g)*100)/100,d=m/16,a=(f,p)=>{for(f=String(f);f.length<p;)f=" "+f;return f};console.info(`%c⏱ ${a(m,5)} /${a(c,5)} ms`,`
1
+ import{r as x,u as te,j as S,F as L,by as ce,B as Y,d4 as fe,M as Me,x as Ie,p as A,f as Pe,m as y,aB as ye,aD as De,aC as ae}from"./index-hXyIHLZA.js";import{D as pe}from"./DebouncedInput-DQQrXn5S.js";function D(e,o){return typeof e=="function"?e(o):e}function V(e,o){return t=>{o.setState(n=>({...n,[e]:D(t,n[e])}))}}function B(e){return e instanceof Function}function Ee(e){return Array.isArray(e)&&e.every(o=>typeof o=="number")}function Ge(e,o){const t=[],n=i=>{i.forEach(r=>{t.push(r);const l=o(r);l!=null&&l.length&&n(l)})};return n(e),t}function C(e,o,t){let n=[],i;return r=>{let l;t.key&&t.debug&&(l=Date.now());const s=e(r);if(!(s.length!==n.length||s.some((c,m)=>n[m]!==c)))return i;n=s;let g;if(t.key&&t.debug&&(g=Date.now()),i=o(...s),t==null||t.onChange==null||t.onChange(i),t.key&&t.debug&&t!=null&&t.debug()){const c=Math.round((Date.now()-l)*100)/100,m=Math.round((Date.now()-g)*100)/100,d=m/16,a=(f,p)=>{for(f=String(f);f.length<p;)f=" "+f;return f};console.info(`%c⏱ ${a(m,5)} /${a(c,5)} ms`,`
2
2
  font-size: .6rem;
3
3
  font-weight: bold;
4
4
  color: hsl(${Math.max(0,Math.min(120-120*d,120))}deg 100% 31%);`,t?.key)}return i}}function v(e,o,t,n){return{debug:()=>{var i;return(i=e?.debugAll)!=null?i:e[o]},key:!1,onChange:n}}function Ae(e,o,t,n){const i=()=>{var l;return(l=r.getValue())!=null?l:e.options.renderFallbackValue},r={id:`${o.id}_${t.id}`,row:o,column:t,getValue:()=>o.getValue(n),renderValue:i,getContext:C(()=>[e,t,o,r],(l,s,u,g)=>({table:l,column:s,row:u,cell:g,getValue:g.getValue,renderValue:g.renderValue}),v(e.options,"debugCells"))};return e._features.forEach(l=>{l.createCell==null||l.createCell(r,t,o,e)},{}),r}function Le(e,o,t,n){var i,r;const s={...e._getDefaultColumnDef(),...o},u=s.accessorKey;let g=(i=(r=s.id)!=null?r:u?typeof String.prototype.replaceAll=="function"?u.replaceAll(".","_"):u.replace(/\./g,"_"):void 0)!=null?i:typeof s.header=="string"?s.header:void 0,c;if(s.accessorFn?c=s.accessorFn:u&&(u.includes(".")?c=d=>{let a=d;for(const p of u.split(".")){var f;a=(f=a)==null?void 0:f[p]}return a}:c=d=>d[s.accessorKey]),!g)throw new Error;let m={id:`${String(g)}`,accessorFn:c,parent:n,depth:t,columnDef:s,columns:[],getFlatColumns:C(()=>[!0],()=>{var d;return[m,...(d=m.columns)==null?void 0:d.flatMap(a=>a.getFlatColumns())]},v(e.options,"debugColumns")),getLeafColumns:C(()=>[e._getOrderColumnsFn()],d=>{var a;if((a=m.columns)!=null&&a.length){let f=m.columns.flatMap(p=>p.getLeafColumns());return d(f)}return[m]},v(e.options,"debugColumns"))};for(const d of e._features)d.createColumn==null||d.createColumn(m,e);return m}const _="debugHeaders";function ge(e,o,t){var n;let r={id:(n=t.id)!=null?n:o.id,column:o,index:t.index,isPlaceholder:!!t.isPlaceholder,placeholderId:t.placeholderId,depth:t.depth,subHeaders:[],colSpan:0,rowSpan:0,headerGroup:null,getLeafHeaders:()=>{const l=[],s=u=>{u.subHeaders&&u.subHeaders.length&&u.subHeaders.map(s),l.push(u)};return s(r),l},getContext:()=>({table:e,header:r,column:o})};return e._features.forEach(l=>{l.createHeader==null||l.createHeader(r,e)}),r}const He={createTable:e=>{e.getHeaderGroups=C(()=>[e.getAllColumns(),e.getVisibleLeafColumns(),e.getState().columnPinning.left,e.getState().columnPinning.right],(o,t,n,i)=>{var r,l;const s=(r=n?.map(m=>t.find(d=>d.id===m)).filter(Boolean))!=null?r:[],u=(l=i?.map(m=>t.find(d=>d.id===m)).filter(Boolean))!=null?l:[],g=t.filter(m=>!(n!=null&&n.includes(m.id))&&!(i!=null&&i.includes(m.id)));return z(o,[...s,...g,...u],e)},v(e.options,_)),e.getCenterHeaderGroups=C(()=>[e.getAllColumns(),e.getVisibleLeafColumns(),e.getState().columnPinning.left,e.getState().columnPinning.right],(o,t,n,i)=>(t=t.filter(r=>!(n!=null&&n.includes(r.id))&&!(i!=null&&i.includes(r.id))),z(o,t,e,"center")),v(e.options,_)),e.getLeftHeaderGroups=C(()=>[e.getAllColumns(),e.getVisibleLeafColumns(),e.getState().columnPinning.left],(o,t,n)=>{var i;const r=(i=n?.map(l=>t.find(s=>s.id===l)).filter(Boolean))!=null?i:[];return z(o,r,e,"left")},v(e.options,_)),e.getRightHeaderGroups=C(()=>[e.getAllColumns(),e.getVisibleLeafColumns(),e.getState().columnPinning.right],(o,t,n)=>{var i;const r=(i=n?.map(l=>t.find(s=>s.id===l)).filter(Boolean))!=null?i:[];return z(o,r,e,"right")},v(e.options,_)),e.getFooterGroups=C(()=>[e.getHeaderGroups()],o=>[...o].reverse(),v(e.options,_)),e.getLeftFooterGroups=C(()=>[e.getLeftHeaderGroups()],o=>[...o].reverse(),v(e.options,_)),e.getCenterFooterGroups=C(()=>[e.getCenterHeaderGroups()],o=>[...o].reverse(),v(e.options,_)),e.getRightFooterGroups=C(()=>[e.getRightHeaderGroups()],o=>[...o].reverse(),v(e.options,_)),e.getFlatHeaders=C(()=>[e.getHeaderGroups()],o=>o.map(t=>t.headers).flat(),v(e.options,_)),e.getLeftFlatHeaders=C(()=>[e.getLeftHeaderGroups()],o=>o.map(t=>t.headers).flat(),v(e.options,_)),e.getCenterFlatHeaders=C(()=>[e.getCenterHeaderGroups()],o=>o.map(t=>t.headers).flat(),v(e.options,_)),e.getRightFlatHeaders=C(()=>[e.getRightHeaderGroups()],o=>o.map(t=>t.headers).flat(),v(e.options,_)),e.getCenterLeafHeaders=C(()=>[e.getCenterFlatHeaders()],o=>o.filter(t=>{var n;return!((n=t.subHeaders)!=null&&n.length)}),v(e.options,_)),e.getLeftLeafHeaders=C(()=>[e.getLeftFlatHeaders()],o=>o.filter(t=>{var n;return!((n=t.subHeaders)!=null&&n.length)}),v(e.options,_)),e.getRightLeafHeaders=C(()=>[e.getRightFlatHeaders()],o=>o.filter(t=>{var n;return!((n=t.subHeaders)!=null&&n.length)}),v(e.options,_)),e.getLeafHeaders=C(()=>[e.getLeftHeaderGroups(),e.getCenterHeaderGroups(),e.getRightHeaderGroups()],(o,t,n)=>{var i,r,l,s,u,g;return[...(i=(r=o[0])==null?void 0:r.headers)!=null?i:[],...(l=(s=t[0])==null?void 0:s.headers)!=null?l:[],...(u=(g=n[0])==null?void 0:g.headers)!=null?u:[]].map(c=>c.getLeafHeaders()).flat()},v(e.options,_))}};function z(e,o,t,n){var i,r;let l=0;const s=function(d,a){a===void 0&&(a=1),l=Math.max(l,a),d.filter(f=>f.getIsVisible()).forEach(f=>{var p;(p=f.columns)!=null&&p.length&&s(f.columns,a+1)},0)};s(e);let u=[];const g=(d,a)=>{const f={depth:a,id:[n,`${a}`].filter(Boolean).join("_"),headers:[]},p=[];d.forEach(w=>{const h=[...p].reverse()[0],R=w.column.depth===f.depth;let F,M=!1;if(R&&w.column.parent?F=w.column.parent:(F=w.column,M=!0),h&&h?.column===F)h.subHeaders.push(w);else{const $=ge(t,F,{id:[n,a,F.id,w?.id].filter(Boolean).join("_"),isPlaceholder:M,placeholderId:M?`${p.filter(G=>G.column===F).length}`:void 0,depth:a,index:p.length});$.subHeaders.push(w),p.push($)}f.headers.push(w),w.headerGroup=f}),u.push(f),a>0&&g(p,a-1)},c=o.map((d,a)=>ge(t,d,{depth:l,index:a}));g(c,l-1),u.reverse();const m=d=>d.filter(f=>f.column.getIsVisible()).map(f=>{let p=0,w=0,h=[0];f.subHeaders&&f.subHeaders.length?(h=[],m(f.subHeaders).forEach(F=>{let{colSpan:M,rowSpan:$}=F;p+=M,h.push($)})):p=1;const R=Math.min(...h);return w=w+R,f.colSpan=p,f.rowSpan=w,{colSpan:p,rowSpan:w}});return m((i=(r=u[0])==null?void 0:r.headers)!=null?i:[]),u}const ne=(e,o,t,n,i,r,l)=>{let s={id:o,index:n,original:t,depth:i,parentId:l,_valuesCache:{},_uniqueValuesCache:{},getValue:u=>{if(s._valuesCache.hasOwnProperty(u))return s._valuesCache[u];const g=e.getColumn(u);if(g!=null&&g.accessorFn)return s._valuesCache[u]=g.accessorFn(s.original,n),s._valuesCache[u]},getUniqueValues:u=>{if(s._uniqueValuesCache.hasOwnProperty(u))return s._uniqueValuesCache[u];const g=e.getColumn(u);if(g!=null&&g.accessorFn)return g.columnDef.getUniqueValues?(s._uniqueValuesCache[u]=g.columnDef.getUniqueValues(s.original,n),s._uniqueValuesCache[u]):(s._uniqueValuesCache[u]=[s.getValue(u)],s._uniqueValuesCache[u])},renderValue:u=>{var g;return(g=s.getValue(u))!=null?g:e.options.renderFallbackValue},subRows:[],getLeafRows:()=>Ge(s.subRows,u=>u.subRows),getParentRow:()=>s.parentId?e.getRow(s.parentId,!0):void 0,getParentRows:()=>{let u=[],g=s;for(;;){const c=g.getParentRow();if(!c)break;u.push(c),g=c}return u.reverse()},getAllCells:C(()=>[e.getAllLeafColumns()],u=>u.map(g=>Ae(e,s,g,g.id)),v(e.options,"debugRows")),_getAllCellsByColumnId:C(()=>[s.getAllCells()],u=>u.reduce((g,c)=>(g[c.column.id]=c,g),{}),v(e.options,"debugRows"))};for(let u=0;u<e._features.length;u++){const g=e._features[u];g==null||g.createRow==null||g.createRow(s,e)}return s},je={createColumn:(e,o)=>{e._getFacetedRowModel=o.options.getFacetedRowModel&&o.options.getFacetedRowModel(o,e.id),e.getFacetedRowModel=()=>e._getFacetedRowModel?e._getFacetedRowModel():o.getPreFilteredRowModel(),e._getFacetedUniqueValues=o.options.getFacetedUniqueValues&&o.options.getFacetedUniqueValues(o,e.id),e.getFacetedUniqueValues=()=>e._getFacetedUniqueValues?e._getFacetedUniqueValues():new Map,e._getFacetedMinMaxValues=o.options.getFacetedMinMaxValues&&o.options.getFacetedMinMaxValues(o,e.id),e.getFacetedMinMaxValues=()=>{if(e._getFacetedMinMaxValues)return e._getFacetedMinMaxValues()}}},me=(e,o,t)=>{var n,i;const r=t==null||(n=t.toString())==null?void 0:n.toLowerCase();return!!(!((i=e.getValue(o))==null||(i=i.toString())==null||(i=i.toLowerCase())==null)&&i.includes(r))};me.autoRemove=e=>I(e);const Se=(e,o,t)=>{var n;return!!(!((n=e.getValue(o))==null||(n=n.toString())==null)&&n.includes(t))};Se.autoRemove=e=>I(e);const Ce=(e,o,t)=>{var n;return((n=e.getValue(o))==null||(n=n.toString())==null?void 0:n.toLowerCase())===t?.toLowerCase()};Ce.autoRemove=e=>I(e);const ve=(e,o,t)=>{var n;return(n=e.getValue(o))==null?void 0:n.includes(t)};ve.autoRemove=e=>I(e);const he=(e,o,t)=>!t.some(n=>{var i;return!((i=e.getValue(o))!=null&&i.includes(n))});he.autoRemove=e=>I(e)||!(e!=null&&e.length);const we=(e,o,t)=>t.some(n=>{var i;return(i=e.getValue(o))==null?void 0:i.includes(n)});we.autoRemove=e=>I(e)||!(e!=null&&e.length);const Re=(e,o,t)=>e.getValue(o)===t;Re.autoRemove=e=>I(e);const Fe=(e,o,t)=>e.getValue(o)==t;Fe.autoRemove=e=>I(e);const oe=(e,o,t)=>{let[n,i]=t;const r=e.getValue(o);return r>=n&&r<=i};oe.resolveFilterValue=e=>{let[o,t]=e,n=typeof o!="number"?parseFloat(o):o,i=typeof t!="number"?parseFloat(t):t,r=o===null||Number.isNaN(n)?-1/0:n,l=t===null||Number.isNaN(i)?1/0:i;if(r>l){const s=r;r=l,l=s}return[r,l]};oe.autoRemove=e=>I(e)||I(e[0])&&I(e[1]);const P={includesString:me,includesStringSensitive:Se,equalsString:Ce,arrIncludes:ve,arrIncludesAll:he,arrIncludesSome:we,equals:Re,weakEquals:Fe,inNumberRange:oe};function I(e){return e==null||e===""}const ze={getDefaultColumnDef:()=>({filterFn:"auto"}),getInitialState:e=>({columnFilters:[],...e}),getDefaultOptions:e=>({onColumnFiltersChange:V("columnFilters",e),filterFromLeafRows:!1,maxLeafRowFilterDepth:100}),createColumn:(e,o)=>{e.getAutoFilterFn=()=>{const t=o.getCoreRowModel().flatRows[0],n=t?.getValue(e.id);return typeof n=="string"?P.includesString:typeof n=="number"?P.inNumberRange:typeof n=="boolean"||n!==null&&typeof n=="object"?P.equals:Array.isArray(n)?P.arrIncludes:P.weakEquals},e.getFilterFn=()=>{var t,n;return B(e.columnDef.filterFn)?e.columnDef.filterFn:e.columnDef.filterFn==="auto"?e.getAutoFilterFn():(t=(n=o.options.filterFns)==null?void 0:n[e.columnDef.filterFn])!=null?t:P[e.columnDef.filterFn]},e.getCanFilter=()=>{var t,n,i;return((t=e.columnDef.enableColumnFilter)!=null?t:!0)&&((n=o.options.enableColumnFilters)!=null?n:!0)&&((i=o.options.enableFilters)!=null?i:!0)&&!!e.accessorFn},e.getIsFiltered=()=>e.getFilterIndex()>-1,e.getFilterValue=()=>{var t;return(t=o.getState().columnFilters)==null||(t=t.find(n=>n.id===e.id))==null?void 0:t.value},e.getFilterIndex=()=>{var t,n;return(t=(n=o.getState().columnFilters)==null?void 0:n.findIndex(i=>i.id===e.id))!=null?t:-1},e.setFilterValue=t=>{o.setColumnFilters(n=>{const i=e.getFilterFn(),r=n?.find(c=>c.id===e.id),l=D(t,r?r.value:void 0);if(de(i,l,e)){var s;return(s=n?.filter(c=>c.id!==e.id))!=null?s:[]}const u={id:e.id,value:l};if(r){var g;return(g=n?.map(c=>c.id===e.id?u:c))!=null?g:[]}return n!=null&&n.length?[...n,u]:[u]})}},createRow:(e,o)=>{e.columnFilters={},e.columnFiltersMeta={}},createTable:e=>{e.setColumnFilters=o=>{const t=e.getAllLeafColumns(),n=i=>{var r;return(r=D(o,i))==null?void 0:r.filter(l=>{const s=t.find(u=>u.id===l.id);if(s){const u=s.getFilterFn();if(de(u,l.value,s))return!1}return!0})};e.options.onColumnFiltersChange==null||e.options.onColumnFiltersChange(n)},e.resetColumnFilters=o=>{var t,n;e.setColumnFilters(o?[]:(t=(n=e.initialState)==null?void 0:n.columnFilters)!=null?t:[])},e.getPreFilteredRowModel=()=>e.getCoreRowModel(),e.getFilteredRowModel=()=>(!e._getFilteredRowModel&&e.options.getFilteredRowModel&&(e._getFilteredRowModel=e.options.getFilteredRowModel(e)),e.options.manualFiltering||!e._getFilteredRowModel?e.getPreFilteredRowModel():e._getFilteredRowModel())}};function de(e,o,t){return(e&&e.autoRemove?e.autoRemove(o,t):!1)||typeof o>"u"||typeof o=="string"&&!o}const Ne=(e,o,t)=>t.reduce((n,i)=>{const r=i.getValue(e);return n+(typeof r=="number"?r:0)},0),Oe=(e,o,t)=>{let n;return t.forEach(i=>{const r=i.getValue(e);r!=null&&(n>r||n===void 0&&r>=r)&&(n=r)}),n},Be=(e,o,t)=>{let n;return t.forEach(i=>{const r=i.getValue(e);r!=null&&(n<r||n===void 0&&r>=r)&&(n=r)}),n},Te=(e,o,t)=>{let n,i;return t.forEach(r=>{const l=r.getValue(e);l!=null&&(n===void 0?l>=l&&(n=i=l):(n>l&&(n=l),i<l&&(i=l)))}),[n,i]},ke=(e,o)=>{let t=0,n=0;if(o.forEach(i=>{let r=i.getValue(e);r!=null&&(r=+r)>=r&&(++t,n+=r)}),t)return n/t},qe=(e,o)=>{if(!o.length)return;const t=o.map(r=>r.getValue(e));if(!Ee(t))return;if(t.length===1)return t[0];const n=Math.floor(t.length/2),i=t.sort((r,l)=>r-l);return t.length%2!==0?i[n]:(i[n-1]+i[n])/2},Ue=(e,o)=>Array.from(new Set(o.map(t=>t.getValue(e))).values()),Ke=(e,o)=>new Set(o.map(t=>t.getValue(e))).size,Xe=(e,o)=>o.length,T={sum:Ne,min:Oe,max:Be,extent:Te,mean:ke,median:qe,unique:Ue,uniqueCount:Ke,count:Xe},be={getDefaultColumnDef:()=>({aggregatedCell:e=>{var o,t;return(o=(t=e.getValue())==null||t.toString==null?void 0:t.toString())!=null?o:null},aggregationFn:"auto"}),getInitialState:e=>({grouping:[],...e}),getDefaultOptions:e=>({onGroupingChange:V("grouping",e),groupedColumnMode:"reorder"}),createColumn:(e,o)=>{e.toggleGrouping=()=>{o.setGrouping(t=>t!=null&&t.includes(e.id)?t.filter(n=>n!==e.id):[...t??[],e.id])},e.getCanGroup=()=>{var t,n;return((t=e.columnDef.enableGrouping)!=null?t:!0)&&((n=o.options.enableGrouping)!=null?n:!0)&&(!!e.accessorFn||!!e.columnDef.getGroupingValue)},e.getIsGrouped=()=>{var t;return(t=o.getState().grouping)==null?void 0:t.includes(e.id)},e.getGroupedIndex=()=>{var t;return(t=o.getState().grouping)==null?void 0:t.indexOf(e.id)},e.getToggleGroupingHandler=()=>{const t=e.getCanGroup();return()=>{t&&e.toggleGrouping()}},e.getAutoAggregationFn=()=>{const t=o.getCoreRowModel().flatRows[0],n=t?.getValue(e.id);if(typeof n=="number")return T.sum;if(Object.prototype.toString.call(n)==="[object Date]")return T.extent},e.getAggregationFn=()=>{var t,n;if(!e)throw new Error;return B(e.columnDef.aggregationFn)?e.columnDef.aggregationFn:e.columnDef.aggregationFn==="auto"?e.getAutoAggregationFn():(t=(n=o.options.aggregationFns)==null?void 0:n[e.columnDef.aggregationFn])!=null?t:T[e.columnDef.aggregationFn]}},createTable:e=>{e.setGrouping=o=>e.options.onGroupingChange==null?void 0:e.options.onGroupingChange(o),e.resetGrouping=o=>{var t,n;e.setGrouping(o?[]:(t=(n=e.initialState)==null?void 0:n.grouping)!=null?t:[])},e.getPreGroupedRowModel=()=>e.getFilteredRowModel(),e.getGroupedRowModel=()=>(!e._getGroupedRowModel&&e.options.getGroupedRowModel&&(e._getGroupedRowModel=e.options.getGroupedRowModel(e)),e.options.manualGrouping||!e._getGroupedRowModel?e.getPreGroupedRowModel():e._getGroupedRowModel())},createRow:(e,o)=>{e.getIsGrouped=()=>!!e.groupingColumnId,e.getGroupingValue=t=>{if(e._groupingValuesCache.hasOwnProperty(t))return e._groupingValuesCache[t];const n=o.getColumn(t);return n!=null&&n.columnDef.getGroupingValue?(e._groupingValuesCache[t]=n.columnDef.getGroupingValue(e.original),e._groupingValuesCache[t]):e.getValue(t)},e._groupingValuesCache={}},createCell:(e,o,t,n)=>{e.getIsGrouped=()=>o.getIsGrouped()&&o.id===t.groupingColumnId,e.getIsPlaceholder=()=>!e.getIsGrouped()&&o.getIsGrouped(),e.getIsAggregated=()=>{var i;return!e.getIsGrouped()&&!e.getIsPlaceholder()&&!!((i=t.subRows)!=null&&i.length)}}};function Ye(e,o,t){if(!(o!=null&&o.length)||!t)return e;const n=e.filter(r=>!o.includes(r.id));return t==="remove"?n:[...o.map(r=>e.find(l=>l.id===r)).filter(Boolean),...n]}const Je={getInitialState:e=>({columnOrder:[],...e}),getDefaultOptions:e=>({onColumnOrderChange:V("columnOrder",e)}),createColumn:(e,o)=>{e.getIndex=C(t=>[j(o,t)],t=>t.findIndex(n=>n.id===e.id),v(o.options,"debugColumns")),e.getIsFirstColumn=t=>{var n;return((n=j(o,t)[0])==null?void 0:n.id)===e.id},e.getIsLastColumn=t=>{var n;const i=j(o,t);return((n=i[i.length-1])==null?void 0:n.id)===e.id}},createTable:e=>{e.setColumnOrder=o=>e.options.onColumnOrderChange==null?void 0:e.options.onColumnOrderChange(o),e.resetColumnOrder=o=>{var t;e.setColumnOrder(o?[]:(t=e.initialState.columnOrder)!=null?t:[])},e._getOrderColumnsFn=C(()=>[e.getState().columnOrder,e.getState().grouping,e.options.groupedColumnMode],(o,t,n)=>i=>{let r=[];if(!(o!=null&&o.length))r=i;else{const l=[...o],s=[...i];for(;s.length&&l.length;){const u=l.shift(),g=s.findIndex(c=>c.id===u);g>-1&&r.push(s.splice(g,1)[0])}r=[...r,...s]}return Ye(r,t,n)},v(e.options,"debugTable"))}},k=()=>({left:[],right:[]}),Qe={getInitialState:e=>({columnPinning:k(),...e}),getDefaultOptions:e=>({onColumnPinningChange:V("columnPinning",e)}),createColumn:(e,o)=>{e.pin=t=>{const n=e.getLeafColumns().map(i=>i.id).filter(Boolean);o.setColumnPinning(i=>{var r,l;if(t==="right"){var s,u;return{left:((s=i?.left)!=null?s:[]).filter(m=>!(n!=null&&n.includes(m))),right:[...((u=i?.right)!=null?u:[]).filter(m=>!(n!=null&&n.includes(m))),...n]}}if(t==="left"){var g,c;return{left:[...((g=i?.left)!=null?g:[]).filter(m=>!(n!=null&&n.includes(m))),...n],right:((c=i?.right)!=null?c:[]).filter(m=>!(n!=null&&n.includes(m)))}}return{left:((r=i?.left)!=null?r:[]).filter(m=>!(n!=null&&n.includes(m))),right:((l=i?.right)!=null?l:[]).filter(m=>!(n!=null&&n.includes(m)))}})},e.getCanPin=()=>e.getLeafColumns().some(n=>{var i,r,l;return((i=n.columnDef.enablePinning)!=null?i:!0)&&((r=(l=o.options.enableColumnPinning)!=null?l:o.options.enablePinning)!=null?r:!0)}),e.getIsPinned=()=>{const t=e.getLeafColumns().map(s=>s.id),{left:n,right:i}=o.getState().columnPinning,r=t.some(s=>n?.includes(s)),l=t.some(s=>i?.includes(s));return r?"left":l?"right":!1},e.getPinnedIndex=()=>{var t,n;const i=e.getIsPinned();return i?(t=(n=o.getState().columnPinning)==null||(n=n[i])==null?void 0:n.indexOf(e.id))!=null?t:-1:0}},createRow:(e,o)=>{e.getCenterVisibleCells=C(()=>[e._getAllVisibleCells(),o.getState().columnPinning.left,o.getState().columnPinning.right],(t,n,i)=>{const r=[...n??[],...i??[]];return t.filter(l=>!r.includes(l.column.id))},v(o.options,"debugRows")),e.getLeftVisibleCells=C(()=>[e._getAllVisibleCells(),o.getState().columnPinning.left],(t,n)=>(n??[]).map(r=>t.find(l=>l.column.id===r)).filter(Boolean).map(r=>({...r,position:"left"})),v(o.options,"debugRows")),e.getRightVisibleCells=C(()=>[e._getAllVisibleCells(),o.getState().columnPinning.right],(t,n)=>(n??[]).map(r=>t.find(l=>l.column.id===r)).filter(Boolean).map(r=>({...r,position:"right"})),v(o.options,"debugRows"))},createTable:e=>{e.setColumnPinning=o=>e.options.onColumnPinningChange==null?void 0:e.options.onColumnPinningChange(o),e.resetColumnPinning=o=>{var t,n;return e.setColumnPinning(o?k():(t=(n=e.initialState)==null?void 0:n.columnPinning)!=null?t:k())},e.getIsSomeColumnsPinned=o=>{var t;const n=e.getState().columnPinning;if(!o){var i,r;return!!((i=n.left)!=null&&i.length||(r=n.right)!=null&&r.length)}return!!((t=n[o])!=null&&t.length)},e.getLeftLeafColumns=C(()=>[e.getAllLeafColumns(),e.getState().columnPinning.left],(o,t)=>(t??[]).map(n=>o.find(i=>i.id===n)).filter(Boolean),v(e.options,"debugColumns")),e.getRightLeafColumns=C(()=>[e.getAllLeafColumns(),e.getState().columnPinning.right],(o,t)=>(t??[]).map(n=>o.find(i=>i.id===n)).filter(Boolean),v(e.options,"debugColumns")),e.getCenterLeafColumns=C(()=>[e.getAllLeafColumns(),e.getState().columnPinning.left,e.getState().columnPinning.right],(o,t,n)=>{const i=[...t??[],...n??[]];return o.filter(r=>!i.includes(r.id))},v(e.options,"debugColumns"))}};function We(e){return e||(typeof document<"u"?document:null)}const N={size:150,minSize:20,maxSize:Number.MAX_SAFE_INTEGER},q=()=>({startOffset:null,startSize:null,deltaOffset:null,deltaPercentage:null,isResizingColumn:!1,columnSizingStart:[]}),Ze={getDefaultColumnDef:()=>N,getInitialState:e=>({columnSizing:{},columnSizingInfo:q(),...e}),getDefaultOptions:e=>({columnResizeMode:"onEnd",columnResizeDirection:"ltr",onColumnSizingChange:V("columnSizing",e),onColumnSizingInfoChange:V("columnSizingInfo",e)}),createColumn:(e,o)=>{e.getSize=()=>{var t,n,i;const r=o.getState().columnSizing[e.id];return Math.min(Math.max((t=e.columnDef.minSize)!=null?t:N.minSize,(n=r??e.columnDef.size)!=null?n:N.size),(i=e.columnDef.maxSize)!=null?i:N.maxSize)},e.getStart=C(t=>[t,j(o,t),o.getState().columnSizing],(t,n)=>n.slice(0,e.getIndex(t)).reduce((i,r)=>i+r.getSize(),0),v(o.options,"debugColumns")),e.getAfter=C(t=>[t,j(o,t),o.getState().columnSizing],(t,n)=>n.slice(e.getIndex(t)+1).reduce((i,r)=>i+r.getSize(),0),v(o.options,"debugColumns")),e.resetSize=()=>{o.setColumnSizing(t=>{let{[e.id]:n,...i}=t;return i})},e.getCanResize=()=>{var t,n;return((t=e.columnDef.enableResizing)!=null?t:!0)&&((n=o.options.enableColumnResizing)!=null?n:!0)},e.getIsResizing=()=>o.getState().columnSizingInfo.isResizingColumn===e.id},createHeader:(e,o)=>{e.getSize=()=>{let t=0;const n=i=>{if(i.subHeaders.length)i.subHeaders.forEach(n);else{var r;t+=(r=i.column.getSize())!=null?r:0}};return n(e),t},e.getStart=()=>{if(e.index>0){const t=e.headerGroup.headers[e.index-1];return t.getStart()+t.getSize()}return 0},e.getResizeHandler=t=>{const n=o.getColumn(e.column.id),i=n?.getCanResize();return r=>{if(!n||!i||(r.persist==null||r.persist(),U(r)&&r.touches&&r.touches.length>1))return;const l=e.getSize(),s=e?e.getLeafHeaders().map(h=>[h.column.id,h.column.getSize()]):[[n.id,n.getSize()]],u=U(r)?Math.round(r.touches[0].clientX):r.clientX,g={},c=(h,R)=>{typeof R=="number"&&(o.setColumnSizingInfo(F=>{var M,$;const G=o.options.columnResizeDirection==="rtl"?-1:1,le=(R-((M=F?.startOffset)!=null?M:0))*G,se=Math.max(le/(($=F?.startSize)!=null?$:0),-.999999);return F.columnSizingStart.forEach($e=>{let[Ve,ue]=$e;g[Ve]=Math.round(Math.max(ue+ue*se,0)*100)/100}),{...F,deltaOffset:le,deltaPercentage:se}}),(o.options.columnResizeMode==="onChange"||h==="end")&&o.setColumnSizing(F=>({...F,...g})))},m=h=>c("move",h),d=h=>{c("end",h),o.setColumnSizingInfo(R=>({...R,isResizingColumn:!1,startOffset:null,startSize:null,deltaOffset:null,deltaPercentage:null,columnSizingStart:[]}))},a=We(t),f={moveHandler:h=>m(h.clientX),upHandler:h=>{a?.removeEventListener("mousemove",f.moveHandler),a?.removeEventListener("mouseup",f.upHandler),d(h.clientX)}},p={moveHandler:h=>(h.cancelable&&(h.preventDefault(),h.stopPropagation()),m(h.touches[0].clientX),!1),upHandler:h=>{var R;a?.removeEventListener("touchmove",p.moveHandler),a?.removeEventListener("touchend",p.upHandler),h.cancelable&&(h.preventDefault(),h.stopPropagation()),d((R=h.touches[0])==null?void 0:R.clientX)}},w=et()?{passive:!1}:!1;U(r)?(a?.addEventListener("touchmove",p.moveHandler,w),a?.addEventListener("touchend",p.upHandler,w)):(a?.addEventListener("mousemove",f.moveHandler,w),a?.addEventListener("mouseup",f.upHandler,w)),o.setColumnSizingInfo(h=>({...h,startOffset:u,startSize:l,deltaOffset:0,deltaPercentage:0,columnSizingStart:s,isResizingColumn:n.id}))}}},createTable:e=>{e.setColumnSizing=o=>e.options.onColumnSizingChange==null?void 0:e.options.onColumnSizingChange(o),e.setColumnSizingInfo=o=>e.options.onColumnSizingInfoChange==null?void 0:e.options.onColumnSizingInfoChange(o),e.resetColumnSizing=o=>{var t;e.setColumnSizing(o?{}:(t=e.initialState.columnSizing)!=null?t:{})},e.resetHeaderSizeInfo=o=>{var t;e.setColumnSizingInfo(o?q():(t=e.initialState.columnSizingInfo)!=null?t:q())},e.getTotalSize=()=>{var o,t;return(o=(t=e.getHeaderGroups()[0])==null?void 0:t.headers.reduce((n,i)=>n+i.getSize(),0))!=null?o:0},e.getLeftTotalSize=()=>{var o,t;return(o=(t=e.getLeftHeaderGroups()[0])==null?void 0:t.headers.reduce((n,i)=>n+i.getSize(),0))!=null?o:0},e.getCenterTotalSize=()=>{var o,t;return(o=(t=e.getCenterHeaderGroups()[0])==null?void 0:t.headers.reduce((n,i)=>n+i.getSize(),0))!=null?o:0},e.getRightTotalSize=()=>{var o,t;return(o=(t=e.getRightHeaderGroups()[0])==null?void 0:t.headers.reduce((n,i)=>n+i.getSize(),0))!=null?o:0}}};let O=null;function et(){if(typeof O=="boolean")return O;let e=!1;try{const o={get passive(){return e=!0,!1}},t=()=>{};window.addEventListener("test",t,o),window.removeEventListener("test",t)}catch{e=!1}return O=e,O}function U(e){return e.type==="touchstart"}const tt={getInitialState:e=>({columnVisibility:{},...e}),getDefaultOptions:e=>({onColumnVisibilityChange:V("columnVisibility",e)}),createColumn:(e,o)=>{e.toggleVisibility=t=>{e.getCanHide()&&o.setColumnVisibility(n=>({...n,[e.id]:t??!e.getIsVisible()}))},e.getIsVisible=()=>{var t,n;const i=e.columns;return(t=i.length?i.some(r=>r.getIsVisible()):(n=o.getState().columnVisibility)==null?void 0:n[e.id])!=null?t:!0},e.getCanHide=()=>{var t,n;return((t=e.columnDef.enableHiding)!=null?t:!0)&&((n=o.options.enableHiding)!=null?n:!0)},e.getToggleVisibilityHandler=()=>t=>{e.toggleVisibility==null||e.toggleVisibility(t.target.checked)}},createRow:(e,o)=>{e._getAllVisibleCells=C(()=>[e.getAllCells(),o.getState().columnVisibility],t=>t.filter(n=>n.column.getIsVisible()),v(o.options,"debugRows")),e.getVisibleCells=C(()=>[e.getLeftVisibleCells(),e.getCenterVisibleCells(),e.getRightVisibleCells()],(t,n,i)=>[...t,...n,...i],v(o.options,"debugRows"))},createTable:e=>{const o=(t,n)=>C(()=>[n(),n().filter(i=>i.getIsVisible()).map(i=>i.id).join("_")],i=>i.filter(r=>r.getIsVisible==null?void 0:r.getIsVisible()),v(e.options,"debugColumns"));e.getVisibleFlatColumns=o("getVisibleFlatColumns",()=>e.getAllFlatColumns()),e.getVisibleLeafColumns=o("getVisibleLeafColumns",()=>e.getAllLeafColumns()),e.getLeftVisibleLeafColumns=o("getLeftVisibleLeafColumns",()=>e.getLeftLeafColumns()),e.getRightVisibleLeafColumns=o("getRightVisibleLeafColumns",()=>e.getRightLeafColumns()),e.getCenterVisibleLeafColumns=o("getCenterVisibleLeafColumns",()=>e.getCenterLeafColumns()),e.setColumnVisibility=t=>e.options.onColumnVisibilityChange==null?void 0:e.options.onColumnVisibilityChange(t),e.resetColumnVisibility=t=>{var n;e.setColumnVisibility(t?{}:(n=e.initialState.columnVisibility)!=null?n:{})},e.toggleAllColumnsVisible=t=>{var n;t=(n=t)!=null?n:!e.getIsAllColumnsVisible(),e.setColumnVisibility(e.getAllLeafColumns().reduce((i,r)=>({...i,[r.id]:t||!(r.getCanHide!=null&&r.getCanHide())}),{}))},e.getIsAllColumnsVisible=()=>!e.getAllLeafColumns().some(t=>!(t.getIsVisible!=null&&t.getIsVisible())),e.getIsSomeColumnsVisible=()=>e.getAllLeafColumns().some(t=>t.getIsVisible==null?void 0:t.getIsVisible()),e.getToggleAllColumnsVisibilityHandler=()=>t=>{var n;e.toggleAllColumnsVisible((n=t.target)==null?void 0:n.checked)}}};function j(e,o){return o?o==="center"?e.getCenterVisibleLeafColumns():o==="left"?e.getLeftVisibleLeafColumns():e.getRightVisibleLeafColumns():e.getVisibleLeafColumns()}const nt={createTable:e=>{e._getGlobalFacetedRowModel=e.options.getFacetedRowModel&&e.options.getFacetedRowModel(e,"__global__"),e.getGlobalFacetedRowModel=()=>e.options.manualFiltering||!e._getGlobalFacetedRowModel?e.getPreFilteredRowModel():e._getGlobalFacetedRowModel(),e._getGlobalFacetedUniqueValues=e.options.getFacetedUniqueValues&&e.options.getFacetedUniqueValues(e,"__global__"),e.getGlobalFacetedUniqueValues=()=>e._getGlobalFacetedUniqueValues?e._getGlobalFacetedUniqueValues():new Map,e._getGlobalFacetedMinMaxValues=e.options.getFacetedMinMaxValues&&e.options.getFacetedMinMaxValues(e,"__global__"),e.getGlobalFacetedMinMaxValues=()=>{if(e._getGlobalFacetedMinMaxValues)return e._getGlobalFacetedMinMaxValues()}}},ot={getInitialState:e=>({globalFilter:void 0,...e}),getDefaultOptions:e=>({onGlobalFilterChange:V("globalFilter",e),globalFilterFn:"auto",getColumnCanGlobalFilter:o=>{var t;const n=(t=e.getCoreRowModel().flatRows[0])==null||(t=t._getAllCellsByColumnId()[o.id])==null?void 0:t.getValue();return typeof n=="string"||typeof n=="number"}}),createColumn:(e,o)=>{e.getCanGlobalFilter=()=>{var t,n,i,r;return((t=e.columnDef.enableGlobalFilter)!=null?t:!0)&&((n=o.options.enableGlobalFilter)!=null?n:!0)&&((i=o.options.enableFilters)!=null?i:!0)&&((r=o.options.getColumnCanGlobalFilter==null?void 0:o.options.getColumnCanGlobalFilter(e))!=null?r:!0)&&!!e.accessorFn}},createTable:e=>{e.getGlobalAutoFilterFn=()=>P.includesString,e.getGlobalFilterFn=()=>{var o,t;const{globalFilterFn:n}=e.options;return B(n)?n:n==="auto"?e.getGlobalAutoFilterFn():(o=(t=e.options.filterFns)==null?void 0:t[n])!=null?o:P[n]},e.setGlobalFilter=o=>{e.options.onGlobalFilterChange==null||e.options.onGlobalFilterChange(o)},e.resetGlobalFilter=o=>{e.setGlobalFilter(o?void 0:e.initialState.globalFilter)}}},it={getInitialState:e=>({expanded:{},...e}),getDefaultOptions:e=>({onExpandedChange:V("expanded",e),paginateExpandedRows:!0}),createTable:e=>{let o=!1,t=!1;e._autoResetExpanded=()=>{var n,i;if(!o){e._queue(()=>{o=!0});return}if((n=(i=e.options.autoResetAll)!=null?i:e.options.autoResetExpanded)!=null?n:!e.options.manualExpanding){if(t)return;t=!0,e._queue(()=>{e.resetExpanded(),t=!1})}},e.setExpanded=n=>e.options.onExpandedChange==null?void 0:e.options.onExpandedChange(n),e.toggleAllRowsExpanded=n=>{n??!e.getIsAllRowsExpanded()?e.setExpanded(!0):e.setExpanded({})},e.resetExpanded=n=>{var i,r;e.setExpanded(n?{}:(i=(r=e.initialState)==null?void 0:r.expanded)!=null?i:{})},e.getCanSomeRowsExpand=()=>e.getPrePaginationRowModel().flatRows.some(n=>n.getCanExpand()),e.getToggleAllRowsExpandedHandler=()=>n=>{n.persist==null||n.persist(),e.toggleAllRowsExpanded()},e.getIsSomeRowsExpanded=()=>{const n=e.getState().expanded;return n===!0||Object.values(n).some(Boolean)},e.getIsAllRowsExpanded=()=>{const n=e.getState().expanded;return typeof n=="boolean"?n===!0:!(!Object.keys(n).length||e.getRowModel().flatRows.some(i=>!i.getIsExpanded()))},e.getExpandedDepth=()=>{let n=0;return(e.getState().expanded===!0?Object.keys(e.getRowModel().rowsById):Object.keys(e.getState().expanded)).forEach(r=>{const l=r.split(".");n=Math.max(n,l.length)}),n},e.getPreExpandedRowModel=()=>e.getSortedRowModel(),e.getExpandedRowModel=()=>(!e._getExpandedRowModel&&e.options.getExpandedRowModel&&(e._getExpandedRowModel=e.options.getExpandedRowModel(e)),e.options.manualExpanding||!e._getExpandedRowModel?e.getPreExpandedRowModel():e._getExpandedRowModel())},createRow:(e,o)=>{e.toggleExpanded=t=>{o.setExpanded(n=>{var i;const r=n===!0?!0:!!(n!=null&&n[e.id]);let l={};if(n===!0?Object.keys(o.getRowModel().rowsById).forEach(s=>{l[s]=!0}):l=n,t=(i=t)!=null?i:!r,!r&&t)return{...l,[e.id]:!0};if(r&&!t){const{[e.id]:s,...u}=l;return u}return n})},e.getIsExpanded=()=>{var t;const n=o.getState().expanded;return!!((t=o.options.getIsRowExpanded==null?void 0:o.options.getIsRowExpanded(e))!=null?t:n===!0||n?.[e.id])},e.getCanExpand=()=>{var t,n,i;return(t=o.options.getRowCanExpand==null?void 0:o.options.getRowCanExpand(e))!=null?t:((n=o.options.enableExpanding)!=null?n:!0)&&!!((i=e.subRows)!=null&&i.length)},e.getIsAllParentsExpanded=()=>{let t=!0,n=e;for(;t&&n.parentId;)n=o.getRow(n.parentId,!0),t=n.getIsExpanded();return t},e.getToggleExpandedHandler=()=>{const t=e.getCanExpand();return()=>{t&&e.toggleExpanded()}}}},J=0,Q=10,K=()=>({pageIndex:J,pageSize:Q}),rt={getInitialState:e=>({...e,pagination:{...K(),...e?.pagination}}),getDefaultOptions:e=>({onPaginationChange:V("pagination",e)}),createTable:e=>{let o=!1,t=!1;e._autoResetPageIndex=()=>{var n,i;if(!o){e._queue(()=>{o=!0});return}if((n=(i=e.options.autoResetAll)!=null?i:e.options.autoResetPageIndex)!=null?n:!e.options.manualPagination){if(t)return;t=!0,e._queue(()=>{e.resetPageIndex(),t=!1})}},e.setPagination=n=>{const i=r=>D(n,r);return e.options.onPaginationChange==null?void 0:e.options.onPaginationChange(i)},e.resetPagination=n=>{var i;e.setPagination(n?K():(i=e.initialState.pagination)!=null?i:K())},e.setPageIndex=n=>{e.setPagination(i=>{let r=D(n,i.pageIndex);const l=typeof e.options.pageCount>"u"||e.options.pageCount===-1?Number.MAX_SAFE_INTEGER:e.options.pageCount-1;return r=Math.max(0,Math.min(r,l)),{...i,pageIndex:r}})},e.resetPageIndex=n=>{var i,r;e.setPageIndex(n?J:(i=(r=e.initialState)==null||(r=r.pagination)==null?void 0:r.pageIndex)!=null?i:J)},e.resetPageSize=n=>{var i,r;e.setPageSize(n?Q:(i=(r=e.initialState)==null||(r=r.pagination)==null?void 0:r.pageSize)!=null?i:Q)},e.setPageSize=n=>{e.setPagination(i=>{const r=Math.max(1,D(n,i.pageSize)),l=i.pageSize*i.pageIndex,s=Math.floor(l/r);return{...i,pageIndex:s,pageSize:r}})},e.setPageCount=n=>e.setPagination(i=>{var r;let l=D(n,(r=e.options.pageCount)!=null?r:-1);return typeof l=="number"&&(l=Math.max(-1,l)),{...i,pageCount:l}}),e.getPageOptions=C(()=>[e.getPageCount()],n=>{let i=[];return n&&n>0&&(i=[...new Array(n)].fill(null).map((r,l)=>l)),i},v(e.options,"debugTable")),e.getCanPreviousPage=()=>e.getState().pagination.pageIndex>0,e.getCanNextPage=()=>{const{pageIndex:n}=e.getState().pagination,i=e.getPageCount();return i===-1?!0:i===0?!1:n<i-1},e.previousPage=()=>e.setPageIndex(n=>n-1),e.nextPage=()=>e.setPageIndex(n=>n+1),e.firstPage=()=>e.setPageIndex(0),e.lastPage=()=>e.setPageIndex(e.getPageCount()-1),e.getPrePaginationRowModel=()=>e.getExpandedRowModel(),e.getPaginationRowModel=()=>(!e._getPaginationRowModel&&e.options.getPaginationRowModel&&(e._getPaginationRowModel=e.options.getPaginationRowModel(e)),e.options.manualPagination||!e._getPaginationRowModel?e.getPrePaginationRowModel():e._getPaginationRowModel()),e.getPageCount=()=>{var n;return(n=e.options.pageCount)!=null?n:Math.ceil(e.getRowCount()/e.getState().pagination.pageSize)},e.getRowCount=()=>{var n;return(n=e.options.rowCount)!=null?n:e.getPrePaginationRowModel().rows.length}}},X=()=>({top:[],bottom:[]}),lt={getInitialState:e=>({rowPinning:X(),...e}),getDefaultOptions:e=>({onRowPinningChange:V("rowPinning",e)}),createRow:(e,o)=>{e.pin=(t,n,i)=>{const r=n?e.getLeafRows().map(u=>{let{id:g}=u;return g}):[],l=i?e.getParentRows().map(u=>{let{id:g}=u;return g}):[],s=new Set([...l,e.id,...r]);o.setRowPinning(u=>{var g,c;if(t==="bottom"){var m,d;return{top:((m=u?.top)!=null?m:[]).filter(p=>!(s!=null&&s.has(p))),bottom:[...((d=u?.bottom)!=null?d:[]).filter(p=>!(s!=null&&s.has(p))),...Array.from(s)]}}if(t==="top"){var a,f;return{top:[...((a=u?.top)!=null?a:[]).filter(p=>!(s!=null&&s.has(p))),...Array.from(s)],bottom:((f=u?.bottom)!=null?f:[]).filter(p=>!(s!=null&&s.has(p)))}}return{top:((g=u?.top)!=null?g:[]).filter(p=>!(s!=null&&s.has(p))),bottom:((c=u?.bottom)!=null?c:[]).filter(p=>!(s!=null&&s.has(p)))}})},e.getCanPin=()=>{var t;const{enableRowPinning:n,enablePinning:i}=o.options;return typeof n=="function"?n(e):(t=n??i)!=null?t:!0},e.getIsPinned=()=>{const t=[e.id],{top:n,bottom:i}=o.getState().rowPinning,r=t.some(s=>n?.includes(s)),l=t.some(s=>i?.includes(s));return r?"top":l?"bottom":!1},e.getPinnedIndex=()=>{var t,n;const i=e.getIsPinned();if(!i)return-1;const r=(t=i==="top"?o.getTopRows():o.getBottomRows())==null?void 0:t.map(l=>{let{id:s}=l;return s});return(n=r?.indexOf(e.id))!=null?n:-1}},createTable:e=>{e.setRowPinning=o=>e.options.onRowPinningChange==null?void 0:e.options.onRowPinningChange(o),e.resetRowPinning=o=>{var t,n;return e.setRowPinning(o?X():(t=(n=e.initialState)==null?void 0:n.rowPinning)!=null?t:X())},e.getIsSomeRowsPinned=o=>{var t;const n=e.getState().rowPinning;if(!o){var i,r;return!!((i=n.top)!=null&&i.length||(r=n.bottom)!=null&&r.length)}return!!((t=n[o])!=null&&t.length)},e._getPinnedRows=(o,t,n)=>{var i;return((i=e.options.keepPinnedRows)==null||i?(t??[]).map(l=>{const s=e.getRow(l,!0);return s.getIsAllParentsExpanded()?s:null}):(t??[]).map(l=>o.find(s=>s.id===l))).filter(Boolean).map(l=>({...l,position:n}))},e.getTopRows=C(()=>[e.getRowModel().rows,e.getState().rowPinning.top],(o,t)=>e._getPinnedRows(o,t,"top"),v(e.options,"debugRows")),e.getBottomRows=C(()=>[e.getRowModel().rows,e.getState().rowPinning.bottom],(o,t)=>e._getPinnedRows(o,t,"bottom"),v(e.options,"debugRows")),e.getCenterRows=C(()=>[e.getRowModel().rows,e.getState().rowPinning.top,e.getState().rowPinning.bottom],(o,t,n)=>{const i=new Set([...t??[],...n??[]]);return o.filter(r=>!i.has(r.id))},v(e.options,"debugRows"))}},st={getInitialState:e=>({rowSelection:{},...e}),getDefaultOptions:e=>({onRowSelectionChange:V("rowSelection",e),enableRowSelection:!0,enableMultiRowSelection:!0,enableSubRowSelection:!0}),createTable:e=>{e.setRowSelection=o=>e.options.onRowSelectionChange==null?void 0:e.options.onRowSelectionChange(o),e.resetRowSelection=o=>{var t;return e.setRowSelection(o?{}:(t=e.initialState.rowSelection)!=null?t:{})},e.toggleAllRowsSelected=o=>{e.setRowSelection(t=>{o=typeof o<"u"?o:!e.getIsAllRowsSelected();const n={...t},i=e.getPreGroupedRowModel().flatRows;return o?i.forEach(r=>{r.getCanSelect()&&(n[r.id]=!0)}):i.forEach(r=>{delete n[r.id]}),n})},e.toggleAllPageRowsSelected=o=>e.setRowSelection(t=>{const n=typeof o<"u"?o:!e.getIsAllPageRowsSelected(),i={...t};return e.getRowModel().rows.forEach(r=>{W(i,r.id,n,!0,e)}),i}),e.getPreSelectedRowModel=()=>e.getCoreRowModel(),e.getSelectedRowModel=C(()=>[e.getState().rowSelection,e.getCoreRowModel()],(o,t)=>Object.keys(o).length?b(e,t):{rows:[],flatRows:[],rowsById:{}},v(e.options,"debugTable")),e.getFilteredSelectedRowModel=C(()=>[e.getState().rowSelection,e.getFilteredRowModel()],(o,t)=>Object.keys(o).length?b(e,t):{rows:[],flatRows:[],rowsById:{}},v(e.options,"debugTable")),e.getGroupedSelectedRowModel=C(()=>[e.getState().rowSelection,e.getSortedRowModel()],(o,t)=>Object.keys(o).length?b(e,t):{rows:[],flatRows:[],rowsById:{}},v(e.options,"debugTable")),e.getIsAllRowsSelected=()=>{const o=e.getFilteredRowModel().flatRows,{rowSelection:t}=e.getState();let n=!!(o.length&&Object.keys(t).length);return n&&o.some(i=>i.getCanSelect()&&!t[i.id])&&(n=!1),n},e.getIsAllPageRowsSelected=()=>{const o=e.getPaginationRowModel().flatRows.filter(i=>i.getCanSelect()),{rowSelection:t}=e.getState();let n=!!o.length;return n&&o.some(i=>!t[i.id])&&(n=!1),n},e.getIsSomeRowsSelected=()=>{var o;const t=Object.keys((o=e.getState().rowSelection)!=null?o:{}).length;return t>0&&t<e.getFilteredRowModel().flatRows.length},e.getIsSomePageRowsSelected=()=>{const o=e.getPaginationRowModel().flatRows;return e.getIsAllPageRowsSelected()?!1:o.filter(t=>t.getCanSelect()).some(t=>t.getIsSelected()||t.getIsSomeSelected())},e.getToggleAllRowsSelectedHandler=()=>o=>{e.toggleAllRowsSelected(o.target.checked)},e.getToggleAllPageRowsSelectedHandler=()=>o=>{e.toggleAllPageRowsSelected(o.target.checked)}},createRow:(e,o)=>{e.toggleSelected=(t,n)=>{const i=e.getIsSelected();o.setRowSelection(r=>{var l;if(t=typeof t<"u"?t:!i,e.getCanSelect()&&i===t)return r;const s={...r};return W(s,e.id,t,(l=n?.selectChildren)!=null?l:!0,o),s})},e.getIsSelected=()=>{const{rowSelection:t}=o.getState();return ie(e,t)},e.getIsSomeSelected=()=>{const{rowSelection:t}=o.getState();return Z(e,t)==="some"},e.getIsAllSubRowsSelected=()=>{const{rowSelection:t}=o.getState();return Z(e,t)==="all"},e.getCanSelect=()=>{var t;return typeof o.options.enableRowSelection=="function"?o.options.enableRowSelection(e):(t=o.options.enableRowSelection)!=null?t:!0},e.getCanSelectSubRows=()=>{var t;return typeof o.options.enableSubRowSelection=="function"?o.options.enableSubRowSelection(e):(t=o.options.enableSubRowSelection)!=null?t:!0},e.getCanMultiSelect=()=>{var t;return typeof o.options.enableMultiRowSelection=="function"?o.options.enableMultiRowSelection(e):(t=o.options.enableMultiRowSelection)!=null?t:!0},e.getToggleSelectedHandler=()=>{const t=e.getCanSelect();return n=>{var i;t&&e.toggleSelected((i=n.target)==null?void 0:i.checked)}}}},W=(e,o,t,n,i)=>{var r;const l=i.getRow(o,!0);t?(l.getCanMultiSelect()||Object.keys(e).forEach(s=>delete e[s]),l.getCanSelect()&&(e[o]=!0)):delete e[o],n&&(r=l.subRows)!=null&&r.length&&l.getCanSelectSubRows()&&l.subRows.forEach(s=>W(e,s.id,t,n,i))};function b(e,o){const t=e.getState().rowSelection,n=[],i={},r=function(l,s){return l.map(u=>{var g;const c=ie(u,t);if(c&&(n.push(u),i[u.id]=u),(g=u.subRows)!=null&&g.length&&(u={...u,subRows:r(u.subRows)}),c)return u}).filter(Boolean)};return{rows:r(o.rows),flatRows:n,rowsById:i}}function ie(e,o){var t;return(t=o[e.id])!=null?t:!1}function Z(e,o,t){var n;if(!((n=e.subRows)!=null&&n.length))return!1;let i=!0,r=!1;return e.subRows.forEach(l=>{if(!(r&&!i)&&(l.getCanSelect()&&(ie(l,o)?r=!0:i=!1),l.subRows&&l.subRows.length)){const s=Z(l,o);s==="all"?r=!0:(s==="some"&&(r=!0),i=!1)}}),i?"all":r?"some":!1}const ee=/([0-9]+)/gm,ut=(e,o,t)=>_e(E(e.getValue(t)).toLowerCase(),E(o.getValue(t)).toLowerCase()),at=(e,o,t)=>_e(E(e.getValue(t)),E(o.getValue(t))),gt=(e,o,t)=>re(E(e.getValue(t)).toLowerCase(),E(o.getValue(t)).toLowerCase()),dt=(e,o,t)=>re(E(e.getValue(t)),E(o.getValue(t))),ct=(e,o,t)=>{const n=e.getValue(t),i=o.getValue(t);return n>i?1:n<i?-1:0},ft=(e,o,t)=>re(e.getValue(t),o.getValue(t));function re(e,o){return e===o?0:e>o?1:-1}function E(e){return typeof e=="number"?isNaN(e)||e===1/0||e===-1/0?"":String(e):typeof e=="string"?e:""}function _e(e,o){const t=e.split(ee).filter(Boolean),n=o.split(ee).filter(Boolean);for(;t.length&&n.length;){const i=t.shift(),r=n.shift(),l=parseInt(i,10),s=parseInt(r,10),u=[l,s].sort();if(isNaN(u[0])){if(i>r)return 1;if(r>i)return-1;continue}if(isNaN(u[1]))return isNaN(l)?-1:1;if(l>s)return 1;if(s>l)return-1}return t.length-n.length}const H={alphanumeric:ut,alphanumericCaseSensitive:at,text:gt,textCaseSensitive:dt,datetime:ct,basic:ft},pt={getInitialState:e=>({sorting:[],...e}),getDefaultColumnDef:()=>({sortingFn:"auto",sortUndefined:1}),getDefaultOptions:e=>({onSortingChange:V("sorting",e),isMultiSortEvent:o=>o.shiftKey}),createColumn:(e,o)=>{e.getAutoSortingFn=()=>{const t=o.getFilteredRowModel().flatRows.slice(10);let n=!1;for(const i of t){const r=i?.getValue(e.id);if(Object.prototype.toString.call(r)==="[object Date]")return H.datetime;if(typeof r=="string"&&(n=!0,r.split(ee).length>1))return H.alphanumeric}return n?H.text:H.basic},e.getAutoSortDir=()=>{const t=o.getFilteredRowModel().flatRows[0];return typeof t?.getValue(e.id)=="string"?"asc":"desc"},e.getSortingFn=()=>{var t,n;if(!e)throw new Error;return B(e.columnDef.sortingFn)?e.columnDef.sortingFn:e.columnDef.sortingFn==="auto"?e.getAutoSortingFn():(t=(n=o.options.sortingFns)==null?void 0:n[e.columnDef.sortingFn])!=null?t:H[e.columnDef.sortingFn]},e.toggleSorting=(t,n)=>{const i=e.getNextSortingOrder(),r=typeof t<"u"&&t!==null;o.setSorting(l=>{const s=l?.find(a=>a.id===e.id),u=l?.findIndex(a=>a.id===e.id);let g=[],c,m=r?t:i==="desc";if(l!=null&&l.length&&e.getCanMultiSort()&&n?s?c="toggle":c="add":l!=null&&l.length&&u!==l.length-1?c="replace":s?c="toggle":c="replace",c==="toggle"&&(r||i||(c="remove")),c==="add"){var d;g=[...l,{id:e.id,desc:m}],g.splice(0,g.length-((d=o.options.maxMultiSortColCount)!=null?d:Number.MAX_SAFE_INTEGER))}else c==="toggle"?g=l.map(a=>a.id===e.id?{...a,desc:m}:a):c==="remove"?g=l.filter(a=>a.id!==e.id):g=[{id:e.id,desc:m}];return g})},e.getFirstSortDir=()=>{var t,n;return((t=(n=e.columnDef.sortDescFirst)!=null?n:o.options.sortDescFirst)!=null?t:e.getAutoSortDir()==="desc")?"desc":"asc"},e.getNextSortingOrder=t=>{var n,i;const r=e.getFirstSortDir(),l=e.getIsSorted();return l?l!==r&&((n=o.options.enableSortingRemoval)==null||n)&&(!(t&&(i=o.options.enableMultiRemove)!=null)||i)?!1:l==="desc"?"asc":"desc":r},e.getCanSort=()=>{var t,n;return((t=e.columnDef.enableSorting)!=null?t:!0)&&((n=o.options.enableSorting)!=null?n:!0)&&!!e.accessorFn},e.getCanMultiSort=()=>{var t,n;return(t=(n=e.columnDef.enableMultiSort)!=null?n:o.options.enableMultiSort)!=null?t:!!e.accessorFn},e.getIsSorted=()=>{var t;const n=(t=o.getState().sorting)==null?void 0:t.find(i=>i.id===e.id);return n?n.desc?"desc":"asc":!1},e.getSortIndex=()=>{var t,n;return(t=(n=o.getState().sorting)==null?void 0:n.findIndex(i=>i.id===e.id))!=null?t:-1},e.clearSorting=()=>{o.setSorting(t=>t!=null&&t.length?t.filter(n=>n.id!==e.id):[])},e.getToggleSortingHandler=()=>{const t=e.getCanSort();return n=>{t&&(n.persist==null||n.persist(),e.toggleSorting==null||e.toggleSorting(void 0,e.getCanMultiSort()?o.options.isMultiSortEvent==null?void 0:o.options.isMultiSortEvent(n):!1))}}},createTable:e=>{e.setSorting=o=>e.options.onSortingChange==null?void 0:e.options.onSortingChange(o),e.resetSorting=o=>{var t,n;e.setSorting(o?[]:(t=(n=e.initialState)==null?void 0:n.sorting)!=null?t:[])},e.getPreSortedRowModel=()=>e.getGroupedRowModel(),e.getSortedRowModel=()=>(!e._getSortedRowModel&&e.options.getSortedRowModel&&(e._getSortedRowModel=e.options.getSortedRowModel(e)),e.options.manualSorting||!e._getSortedRowModel?e.getPreSortedRowModel():e._getSortedRowModel())}},mt=[He,tt,Je,Qe,je,ze,nt,ot,pt,be,it,rt,lt,st,Ze];function St(e){var o,t;const n=[...mt,...(o=e._features)!=null?o:[]];let i={_features:n};const r=i._features.reduce((d,a)=>Object.assign(d,a.getDefaultOptions==null?void 0:a.getDefaultOptions(i)),{}),l=d=>i.options.mergeOptions?i.options.mergeOptions(r,d):{...r,...d};let u={...{},...(t=e.initialState)!=null?t:{}};i._features.forEach(d=>{var a;u=(a=d.getInitialState==null?void 0:d.getInitialState(u))!=null?a:u});const g=[];let c=!1;const m={_features:n,options:{...r,...e},initialState:u,_queue:d=>{g.push(d),c||(c=!0,Promise.resolve().then(()=>{for(;g.length;)g.shift()();c=!1}).catch(a=>setTimeout(()=>{throw a})))},reset:()=>{i.setState(i.initialState)},setOptions:d=>{const a=D(d,i.options);i.options=l(a)},getState:()=>i.options.state,setState:d=>{i.options.onStateChange==null||i.options.onStateChange(d)},_getRowId:(d,a,f)=>{var p;return(p=i.options.getRowId==null?void 0:i.options.getRowId(d,a,f))!=null?p:`${f?[f.id,a].join("."):a}`},getCoreRowModel:()=>(i._getCoreRowModel||(i._getCoreRowModel=i.options.getCoreRowModel(i)),i._getCoreRowModel()),getRowModel:()=>i.getPaginationRowModel(),getRow:(d,a)=>{let f=(a?i.getPrePaginationRowModel():i.getRowModel()).rowsById[d];if(!f&&(f=i.getCoreRowModel().rowsById[d],!f))throw new Error;return f},_getDefaultColumnDef:C(()=>[i.options.defaultColumn],d=>{var a;return d=(a=d)!=null?a:{},{header:f=>{const p=f.header.column.columnDef;return p.accessorKey?p.accessorKey:p.accessorFn?p.id:null},cell:f=>{var p,w;return(p=(w=f.renderValue())==null||w.toString==null?void 0:w.toString())!=null?p:null},...i._features.reduce((f,p)=>Object.assign(f,p.getDefaultColumnDef==null?void 0:p.getDefaultColumnDef()),{}),...d}},v(e,"debugColumns")),_getColumnDefs:()=>i.options.columns,getAllColumns:C(()=>[i._getColumnDefs()],d=>{const a=function(f,p,w){return w===void 0&&(w=0),f.map(h=>{const R=Le(i,h,w,p),F=h;return R.columns=F.columns?a(F.columns,R,w+1):[],R})};return a(d)},v(e,"debugColumns")),getAllFlatColumns:C(()=>[i.getAllColumns()],d=>d.flatMap(a=>a.getFlatColumns()),v(e,"debugColumns")),_getAllFlatColumnsById:C(()=>[i.getAllFlatColumns()],d=>d.reduce((a,f)=>(a[f.id]=f,a),{}),v(e,"debugColumns")),getAllLeafColumns:C(()=>[i.getAllColumns(),i._getOrderColumnsFn()],(d,a)=>{let f=d.flatMap(p=>p.getLeafColumns());return a(f)},v(e,"debugColumns")),getColumn:d=>i._getAllFlatColumnsById()[d]};Object.assign(i,m);for(let d=0;d<i._features.length;d++){const a=i._features[d];a==null||a.createTable==null||a.createTable(i)}return i}function Ct(){return e=>C(()=>[e.options.data],o=>{const t={rows:[],flatRows:[],rowsById:{}},n=function(i,r,l){r===void 0&&(r=0);const s=[];for(let g=0;g<i.length;g++){const c=ne(e,e._getRowId(i[g],g,l),i[g],g,r,void 0,l?.id);if(t.flatRows.push(c),t.rowsById[c.id]=c,s.push(c),e.options.getSubRows){var u;c.originalSubRows=e.options.getSubRows(i[g],g),(u=c.originalSubRows)!=null&&u.length&&(c.subRows=n(c.originalSubRows,r+1,c))}}return s};return t.rows=n(o),t},v(e.options,"debugTable","getRowModel",()=>e._autoResetPageIndex()))}function vt(){return(e,o)=>C(()=>{var t;return[(t=e.getColumn(o))==null?void 0:t.getFacetedRowModel()]},t=>{if(!t)return;const n=t.flatRows.flatMap(l=>{var s;return(s=l.getUniqueValues(o))!=null?s:[]}).map(Number).filter(l=>!Number.isNaN(l));if(!n.length)return;let i=n[0],r=n[n.length-1];for(const l of n)l<i?i=l:l>r&&(r=l);return[i,r]},v(e.options,"debugTable"))}function xe(e,o,t){return t.options.filterFromLeafRows?ht(e,o,t):wt(e,o,t)}function ht(e,o,t){var n;const i=[],r={},l=(n=t.options.maxLeafRowFilterDepth)!=null?n:100,s=function(u,g){g===void 0&&(g=0);const c=[];for(let d=0;d<u.length;d++){var m;let a=u[d];const f=ne(t,a.id,a.original,a.index,a.depth,void 0,a.parentId);if(f.columnFilters=a.columnFilters,(m=a.subRows)!=null&&m.length&&g<l){if(f.subRows=s(a.subRows,g+1),a=f,o(a)&&!f.subRows.length){c.push(a),r[a.id]=a,i.push(a);continue}if(o(a)||f.subRows.length){c.push(a),r[a.id]=a,i.push(a);continue}}else a=f,o(a)&&(c.push(a),r[a.id]=a,i.push(a))}return c};return{rows:s(e),flatRows:i,rowsById:r}}function wt(e,o,t){var n;const i=[],r={},l=(n=t.options.maxLeafRowFilterDepth)!=null?n:100,s=function(u,g){g===void 0&&(g=0);const c=[];for(let d=0;d<u.length;d++){let a=u[d];if(o(a)){var m;if((m=a.subRows)!=null&&m.length&&g<l){const p=ne(t,a.id,a.original,a.index,a.depth,void 0,a.parentId);p.subRows=s(a.subRows,g+1),a=p}c.push(a),i.push(a),r[a.id]=a}}return c};return{rows:s(e),flatRows:i,rowsById:r}}function Rt(){return(e,o)=>C(()=>[e.getPreFilteredRowModel(),e.getState().columnFilters,e.getState().globalFilter,e.getFilteredRowModel()],(t,n,i)=>{if(!t.rows.length||!(n!=null&&n.length)&&!i)return t;const r=[...n.map(s=>s.id).filter(s=>s!==o),i?"__global__":void 0].filter(Boolean),l=s=>{for(let u=0;u<r.length;u++)if(s.columnFilters[r[u]]===!1)return!1;return!0};return xe(t.rows,l,e)},v(e.options,"debugTable"))}function Ft(){return(e,o)=>C(()=>{var t;return[(t=e.getColumn(o))==null?void 0:t.getFacetedRowModel()]},t=>{if(!t)return new Map;let n=new Map;for(let r=0;r<t.flatRows.length;r++){const l=t.flatRows[r].getUniqueValues(o);for(let s=0;s<l.length;s++){const u=l[s];if(n.has(u)){var i;n.set(u,((i=n.get(u))!=null?i:0)+1)}else n.set(u,1)}}return n},v(e.options,"debugTable"))}function _t(){return e=>C(()=>[e.getPreFilteredRowModel(),e.getState().columnFilters,e.getState().globalFilter],(o,t,n)=>{if(!o.rows.length||!(t!=null&&t.length)&&!n){for(let d=0;d<o.flatRows.length;d++)o.flatRows[d].columnFilters={},o.flatRows[d].columnFiltersMeta={};return o}const i=[],r=[];(t??[]).forEach(d=>{var a;const f=e.getColumn(d.id);if(!f)return;const p=f.getFilterFn();p&&i.push({id:d.id,filterFn:p,resolvedValue:(a=p.resolveFilterValue==null?void 0:p.resolveFilterValue(d.value))!=null?a:d.value})});const l=(t??[]).map(d=>d.id),s=e.getGlobalFilterFn(),u=e.getAllLeafColumns().filter(d=>d.getCanGlobalFilter());n&&s&&u.length&&(l.push("__global__"),u.forEach(d=>{var a;r.push({id:d.id,filterFn:s,resolvedValue:(a=s.resolveFilterValue==null?void 0:s.resolveFilterValue(n))!=null?a:n})}));let g,c;for(let d=0;d<o.flatRows.length;d++){const a=o.flatRows[d];if(a.columnFilters={},i.length)for(let f=0;f<i.length;f++){g=i[f];const p=g.id;a.columnFilters[p]=g.filterFn(a,p,g.resolvedValue,w=>{a.columnFiltersMeta[p]=w})}if(r.length){for(let f=0;f<r.length;f++){c=r[f];const p=c.id;if(c.filterFn(a,p,c.resolvedValue,w=>{a.columnFiltersMeta[p]=w})){a.columnFilters.__global__=!0;break}}a.columnFilters.__global__!==!0&&(a.columnFilters.__global__=!1)}}const m=d=>{for(let a=0;a<l.length;a++)if(d.columnFilters[l[a]]===!1)return!1;return!0};return xe(o.rows,m,e)},v(e.options,"debugTable","getFilteredRowModel",()=>e._autoResetPageIndex()))}function xt(){return e=>C(()=>[e.getState().sorting,e.getPreSortedRowModel()],(o,t)=>{if(!t.rows.length||!(o!=null&&o.length))return t;const n=e.getState().sorting,i=[],r=n.filter(u=>{var g;return(g=e.getColumn(u.id))==null?void 0:g.getCanSort()}),l={};r.forEach(u=>{const g=e.getColumn(u.id);g&&(l[u.id]={sortUndefined:g.columnDef.sortUndefined,invertSorting:g.columnDef.invertSorting,sortingFn:g.getSortingFn()})});const s=u=>{const g=u.map(c=>({...c}));return g.sort((c,m)=>{for(let a=0;a<r.length;a+=1){var d;const f=r[a],p=l[f.id],w=p.sortUndefined,h=(d=f?.desc)!=null?d:!1;let R=0;if(w){const F=c.getValue(f.id),M=m.getValue(f.id),$=F===void 0,G=M===void 0;if($||G){if(w==="first")return $?-1:1;if(w==="last")return $?1:-1;R=$&&G?0:$?w:-w}}if(R===0&&(R=p.sortingFn(c,m,f.id)),R!==0)return h&&(R*=-1),p.invertSorting&&(R*=-1),R}return c.index-m.index}),g.forEach(c=>{var m;i.push(c),(m=c.subRows)!=null&&m.length&&(c.subRows=s(c.subRows))}),g};return{rows:s(t.rows),flatRows:i,rowsById:t.rowsById}},v(e.options,"debugTable","getSortedRowModel",()=>e._autoResetPageIndex()))}function jt(e,o){return e?$t(e)?x.createElement(e,o):e:null}function $t(e){return Vt(e)||typeof e=="function"||Mt(e)}function Vt(e){return typeof e=="function"&&(()=>{const o=Object.getPrototypeOf(e);return o.prototype&&o.prototype.isReactComponent})()}function Mt(e){return typeof e=="object"&&typeof e.$$typeof=="symbol"&&["react.memo","react.forward_ref"].includes(e.$$typeof.description)}function It(e){const o={state:{},onStateChange:()=>{},renderFallbackValue:null,...e},[t]=x.useState(()=>({current:St(o)})),[n,i]=x.useState(()=>t.current.initialState);return t.current.setOptions(r=>({...r,...e,state:{...n,...e.state},onStateChange:l=>{i(l),e.onStateChange==null||e.onStateChange(l)}})),t.current}function Pt({column:e,label:o}){const t=e.getFilterValue(),n=e.getFacetedMinMaxValues(),i=n?.[0],r=n?.[1],l=Number.isNaN(Number(t?.[0]))?void 0:t?.[0],s=Number.isNaN(Number(t?.[1]))?void 0:t?.[1];return S.jsxs(S.Fragment,{children:[S.jsx("label",{className:"label text-xs",children:o}),S.jsxs("div",{className:"flex flex-row gap-2 w-full",children:[S.jsx("input",{type:"number",className:"input input-sm w-full",value:l??"",placeholder:i!==void 0?String(i):"Min",min:i!==void 0?Math.round(Number(i)):void 0,max:s??(r!==void 0?Math.round(Number(r)):void 0),onChange:u=>{e.setFilterValue(g=>{const c=Number.parseInt(u.target.value,10);return[Number.isNaN(c)?void 0:c,g?.[1]]})}}),S.jsx("input",{type:"number",className:"input input-sm w-full",value:s??"",placeholder:r!==void 0?String(r):"Max",min:l??(i!==void 0?Math.round(Number(i)):void 0),max:r!==void 0?Math.round(Number(r)):void 0,onChange:u=>{e.setFilterValue(g=>{const c=Number.parseInt(u.target.value,10);return[g?.[0],Number.isNaN(c)?void 0:c]})}})]})]})}function yt({column:e,label:o}){const{t}=te("common"),n=e.columnDef.meta??{},i=e.getFilterValue(),r=i&&(typeof i=="string"||typeof i=="number")?i:void 0,l=[],s=new Set,u=e.getFacetedUniqueValues();if(Array.isArray(u.keys().next().value)){for(const[g,c]of e.getFacetedUniqueValues())if(g!=null){for(const m of g)if(!(m==null||s.has(m))&&(l.push(S.jsx("option",{value:m,children:n.showFacetedOccurrences?`${m} (${c})`:m},m)),s.add(m),n.maxFacetOptions&&l.length>=n.maxFacetOptions))break}l.sort((g,c)=>g.key.localeCompare(c.key))}return S.jsxs(S.Fragment,{children:[S.jsx("label",{htmlFor:o,className:"label text-xs",children:o}),S.jsxs("select",{id:o,className:"select select-sm w-full",value:r??"",onChange:g=>e.setFilterValue(g.target.value||void 0),children:[S.jsx("option",{value:"",children:t(g=>g.all)}),l]})]})}function Dt({column:e,label:o}){const{t}=te("common");if(!Me&&e.id==="source")return null;const n=e.columnDef.meta??{},i=e.getFilterValue(),r=i&&(typeof i=="string"||typeof i=="number")?i:void 0,l=[];for(const[s,u]of e.getFacetedUniqueValues())if(s!=null&&(l.push(S.jsx("option",{value:s,children:n.showFacetedOccurrences?`${s} (${u})`:s},s)),n.maxFacetOptions&&l.length>=n.maxFacetOptions))break;return l.sort((s,u)=>s.key.localeCompare(u.key)),S.jsxs(S.Fragment,{children:[S.jsx("label",{htmlFor:o,className:"label text-xs",children:o}),S.jsxs("select",{id:o,className:"select select-sm w-full",value:r??"",onChange:s=>e.setFilterValue(s.target.value||void 0),children:[S.jsx("option",{value:"",children:t(s=>s.all)}),l]})]})}function Et({column:e,label:o}){const t=e.columnDef.meta??{},n=e.getFilterValue(),i=`${e.id}-list`,r=[];if(t.textFaceted){for(const[l,s]of e.getFacetedUniqueValues())if(l!=null&&(r.push(S.jsx("option",{value:l,children:t.showFacetedOccurrences?`${l} (${s})`:l},l)),t.maxFacetOptions&&r.length>=t.maxFacetOptions))break;r.sort((l,s)=>l.key.localeCompare(s.key))}return S.jsxs(S.Fragment,{children:[r.length>0?S.jsx("datalist",{id:i,children:r}):null,S.jsx("label",{className:"label text-xs",children:o}),S.jsx(pe,{className:"input input-sm w-full",value:n??"",onChange:l=>e.setFilterValue(l||void 0),list:r.length>0?i:void 0})]})}function Gt({column:e,label:o}){return S.jsxs(S.Fragment,{children:[S.jsx("label",{className:"label text-xs",children:o}),S.jsx("input",{type:"checkbox",className:"checkbox checkbox-sm",checked:!!e.getFilterValue(),onChange:t=>e.setFilterValue(t.target.checked?!0:void 0)})]})}function At({columns:e,resetFilters:o}){const{t}=te("common");return S.jsxs(S.Fragment,{children:[S.jsxs("div",{className:"flex items-center gap-2 p-2",children:[S.jsx(L,{icon:ce}),S.jsx("span",{className:"font-semibold text-md",children:t(n=>n.advanced_search)})]}),S.jsx("div",{className:"flex flex-col gap-2 px-2 pb-2 w-full",children:e.map(n=>{const i=n.columnDef.meta;if(!i||!i.filterVariant)return null;const r=typeof n.columnDef.header=="string"&&n.columnDef.header?n.columnDef.header:t(l=>l[n.id]);return S.jsxs(x.Fragment,{children:[S.jsx("div",{className:"flex flex-row w-full gap-2",children:i.filterVariant==="range"?S.jsx(Pt,{column:n,label:r}):i.filterVariant==="select"?S.jsx(Dt,{column:n,label:r}):i.filterVariant==="boolean"?S.jsx(Gt,{column:n,label:r}):i.filterVariant==="arrSelect"?S.jsx(yt,{column:n,label:r}):S.jsx(Et,{column:n,label:r})}),i.tooltip&&S.jsx("p",{className:"label text-xs ml-auto",children:i.tooltip})]},n.id)})}),S.jsx("div",{className:"flex flex-row justify-end gap-2 p-3",children:S.jsxs(Y,{className:"btn btn-sm btn-warning btn-outline mt-5",onClick:o,children:[S.jsx(L,{icon:fe}),t(n=>n.reset)]})})]})}function zt({table:e,resetFilters:o,globalFilter:t,columnFilters:n,actions:i}){const[r,l]=x.useState(!1),s=x.useMemo(()=>{let u=0;for(const g of n)g.value!=null&&g.value!==""&&u++;return u},[n]);return S.jsxs("div",{className:"flex flex-row flex-wrap flex-1 items-center gap-x-3 gap-y-2 text-sm",children:[S.jsxs("div",{className:"join",children:[S.jsxs("label",{className:"input input-sm join-item min-w-64",children:[S.jsx(L,{icon:Ie}),S.jsx(pe,{onChange:e.setGlobalFilter,placeholder:A(u=>u.search),value:t})]}),S.jsx(Y,{item:"",onClick:e.setGlobalFilter,className:"btn btn-sm btn-square btn-warning btn-outline join-item tooltip-bottom",title:A(u=>u.clear),disabled:t==null||t==="",children:S.jsx(L,{icon:Pe})})]}),S.jsxs("div",{className:"drawer drawer-end w-auto",children:[S.jsx("input",{id:"table-filters-drawer",type:"checkbox",className:"drawer-toggle"}),S.jsx("div",{className:"drawer-content",children:S.jsxs("div",{className:"join",children:[S.jsxs("label",{htmlFor:"table-filters-drawer",className:"drawer-button btn btn-sm btn-info btn-outline join-item tooltip tooltip-bottom",onClick:()=>l(!r),"data-tip":A(u=>u.advanced_search),children:[S.jsx(L,{icon:ce}),A(u=>u.advanced_search),s>0?S.jsx("span",{className:"badge badge-info badge-xs",children:s}):null]}),S.jsx(Y,{className:"btn btn-sm btn-square btn-warning btn-outline join-item tooltip-bottom",title:A(u=>u.reset),onClick:()=>{o()},disabled:s===0,children:S.jsx(L,{icon:fe})})]})}),S.jsxs("div",{className:"drawer-side",children:[S.jsx("label",{htmlFor:"table-filters-drawer","aria-label":"close sidebar",className:"drawer-overlay",onClick:()=>l(!1)}),S.jsx("aside",{className:"bg-base-100 min-h-screen w-80",children:r&&S.jsx(At,{columns:e.getAllLeafColumns(),resetFilters:o})})]})]}),S.jsx("div",{className:"",children:S.jsxs("span",{className:"label",children:[A(u=>u.entries),": ",e.getRowModel().rows.length]})}),i]})}function Nt({id:e,columns:o,data:t,visibleColumns:n,sorting:i,rowSelection:r,onRowSelectionChange:l}){const s=`${ye}_${e}`,u=`${De}_${e}`,g=`${ae}_${e}_global`,c=`${ae}_${e}_columns`,[m,d]=x.useState(y.get(s,n??{}));x.useEffect(()=>{y.set(s,m)},[s,m]);const[a,f]=x.useState(y.get(u,i??[]));x.useEffect(()=>{y.set(u,a)},[u,a]);const[p,w]=x.useState(y.get(g,""));x.useEffect(()=>{y.set(g,p)},[g,p]);const[h,R]=x.useState(y.get(c,[]));x.useEffect(()=>{y.set(c,h)},[c,h]);const F=x.useCallback(()=>{w(""),R([])},[]);return{table:It({data:t,columns:o,state:{globalFilter:p,columnFilters:h,columnVisibility:m,rowSelection:r,sorting:a},onGlobalFilterChange:w,onColumnVisibilityChange:d,onColumnFiltersChange:R,getCoreRowModel:Ct(),getFilteredRowModel:_t(),getSortedRowModel:xt(),getFacetedRowModel:Rt(),getFacetedUniqueValues:Ft(),getFacetedMinMaxValues:vt(),onSortingChange:f,onRowSelectionChange:l,enableRowSelection:!!l}),resetFilters:F,globalFilter:p,columnFilters:h}}export{zt as T,jt as f,Nt as u};
package/dist/index.html CHANGED
@@ -16,9 +16,9 @@
16
16
  <meta name="apple-mobile-web-app-title" content="Zigbee2MQTT WindFront" />
17
17
  <link rel="manifest" href="./assets/site-DTEhrq36.webmanifest" />
18
18
 
19
- <script type="module" crossorigin src="./assets/index-O2DLxYbj.js"></script>
19
+ <script type="module" crossorigin src="./assets/index-hXyIHLZA.js"></script>
20
20
  <link rel="modulepreload" crossorigin href="./assets/envs-CSqIi4cL.js">
21
- <link rel="stylesheet" crossorigin href="./assets/index-Zvf07u5t.css">
21
+ <link rel="stylesheet" crossorigin href="./assets/index-uKtJ6Klq.css">
22
22
  </head>
23
23
 
24
24
  <body>
Binary file
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "zigbee2mqtt-windfront",
3
- "version": "2.3.1",
3
+ "version": "2.4.1",
4
4
  "license": "GPL-3.0-or-later",
5
5
  "type": "module",
6
6
  "main": "./index.js",
@@ -37,29 +37,29 @@
37
37
  "build-storybook": "storybook build"
38
38
  },
39
39
  "devDependencies": {
40
- "@biomejs/biome": "^2.3.5",
40
+ "@biomejs/biome": "^2.3.8",
41
41
  "@ebay/nice-modal-react": "^1.2.13",
42
42
  "@floating-ui/react": "^0.27.16",
43
43
  "@fortawesome/fontawesome-svg-core": "^7.1.0",
44
44
  "@fortawesome/free-solid-svg-icons": "^7.1.0",
45
- "@fortawesome/react-fontawesome": "^3.1.0",
46
- "@storybook/addon-a11y": "^10.0.7",
47
- "@storybook/addon-docs": "^10.0.7",
48
- "@storybook/react-vite": "^10.0.7",
45
+ "@fortawesome/react-fontawesome": "^3.1.1",
46
+ "@storybook/addon-a11y": "^10.1.2",
47
+ "@storybook/addon-docs": "^10.1.2",
48
+ "@storybook/react-vite": "^10.1.2",
49
49
  "@tailwindcss/vite": "^4.1.17",
50
50
  "@tanstack/react-table": "^8.21.3",
51
51
  "@types/file-saver": "^2.0.7",
52
52
  "@types/json-schema": "^7.0.15",
53
- "@types/lodash": "^4.17.20",
54
- "@types/react": "^19.2.5",
53
+ "@types/lodash": "^4.17.21",
54
+ "@types/react": "^19.2.7",
55
55
  "@types/react-dom": "^19.2.3",
56
56
  "@types/ws": "^8.18.1",
57
57
  "@virtuoso.dev/masonry": "^1.3.5",
58
58
  "@vitejs/plugin-react": "^5.1.1",
59
- "@vitest/coverage-v8": "^4.0.10",
59
+ "@vitest/coverage-v8": "^4.0.14",
60
60
  "daisyui": "^5.5.5",
61
61
  "file-saver": "^2.0.5",
62
- "i18next": "^25.6.2",
62
+ "i18next": "^25.6.3",
63
63
  "i18next-browser-languagedetector": "^8.2.0",
64
64
  "jsdom": "^27.2.0",
65
65
  "jszip": "^3.10.1",
@@ -67,22 +67,22 @@
67
67
  "react": "^19.2.0",
68
68
  "react-app-polyfill": "^3.0.0",
69
69
  "react-dom": "^19.2.0",
70
- "react-i18next": "^16.3.3",
70
+ "react-i18next": "^16.3.5",
71
71
  "react-image": "^4.1.0",
72
72
  "react-router": "^7.9.6",
73
- "react-virtuoso": "^4.14.1",
73
+ "react-virtuoso": "^4.15.0",
74
74
  "reagraph": "^4.30.7",
75
75
  "store2": "^2.14.4",
76
- "storybook": "^10.0.7",
76
+ "storybook": "^10.1.2",
77
77
  "tailwindcss": "^4.1.4",
78
78
  "timeago.js": "^4.0.2",
79
79
  "typescript": "^5.9.3",
80
- "vite": "^7.2.2",
80
+ "vite": "^7.2.4",
81
81
  "vite-plugin-compression2": "^2.3.1",
82
- "vitest": "^4.0.10",
82
+ "vitest": "^4.0.14",
83
83
  "ws": "^8.18.3",
84
84
  "zigbee2mqtt": "github:Koenkk/zigbee2mqtt#dev-types",
85
- "zustand": "^5.0.8"
85
+ "zustand": "^5.0.9"
86
86
  },
87
87
  "sideEffects": [
88
88
  "*.css"
Binary file
@@ -1 +0,0 @@
1
- import{a as w,C as y,r as i,s as N,j as e,u as v,F as B,a6 as D,B as S,f as P}from"./index-O2DLxYbj.js";import{u as $,o as O,s as q,f as z,g as M,b as K,a as T,c as U,F as G,d as H}from"./floating-ui.react-MIvSYIT3.js";import{b as J,g as L,m as Q,B as k}from"./BindRow-D9Od6x88.js";import"./envs-CSqIi4cL.js";import"./DevicePicker-Eg-X3fKz.js";import"./SelectField-CGrVloaL.js";import"./EndpointPicker-DtqElVGb.js";const V=s=>`${s.isNew}-${s.source.endpoint}-${s.source.ieee_address}-${"ieee_address"in s.target?s.target.ieee_address:s.target.id}-${s.clusters.join("-")}`,W=i.memo(({endpointId:s,rules:a,devices:l,groups:c,sourceIdx:p,device:d,onApply:t})=>{const{t:o}=v(["common","zigbee","scene"]),m=i.useRef(null),[r,g]=i.useState(!1),[u,h]=i.useState(null),{refs:x,floatingStyles:_,context:f}=$({open:r,onOpenChange:g,placement:"bottom-end",middleware:[O(8),q({padding:16}),z({element:m})]}),R=M(f,{event:"click"}),A=K(f),C=T(f),{getReferenceProps:F,getFloatingProps:E}=U([R,A,C]);i.useEffect(()=>{h(r?Q(d.ieee_address,s):null)},[r,d.ieee_address,s]);const j=i.useCallback(async([n,b])=>{await t([n,b]),b.isNew&&g(!1)},[t]);return e.jsx("section",{className:"card bg-base-100 card-border border-base-200 shadow-sm",children:e.jsxs("div",{className:"card-body p-3",children:[e.jsxs("div",{className:"card-title flex flex-wrap gap-2 items-center justify-between",children:[o(n=>n.source_endpoint,{ns:"common"})," ",s,e.jsxs("button",{ref:x.setReference,type:"button",className:"btn btn-primary btn-outline btn-sm",...F(),children:[e.jsx(B,{icon:D}),e.jsx("span",{children:o(n=>n.add,{ns:"common"})})]})]}),a.length>0?a.map((n,b)=>e.jsx(k,{rule:n,sourceIdx:p,groups:c,device:d,devices:l,showDivider:b<a.length-1,onApply:j},V(n))):e.jsx("p",{className:"text-sm opacity-70",children:o(n=>n.none,{ns:"common"})}),r&&u?e.jsx(G,{children:e.jsxs("aside",{ref:x.setFloating,style:_,...E({className:"card bg-base-200 shadow-lg border border-base-300 w-[min(32rem,calc(100vw-2.5rem))] max-h-[80vh] z-11"}),children:[e.jsxs("div",{className:"card-body py-2",children:[e.jsxs("div",{className:"flex items-center justify-between",children:[e.jsxs("h4",{className:"card-title",children:[o(n=>n.add,{ns:"common"}),": ",o(n=>n.source_endpoint,{ns:"common"})," ",s]}),e.jsx(S,{onClick:()=>g(!1),className:"btn btn-ghost btn-sm",children:e.jsx(B,{icon:P})})]}),e.jsx(k,{rule:u,sourceIdx:p,groups:c,device:d,devices:l,showDivider:!1,onApply:j})]}),e.jsx(H,{ref:m,context:f,className:"fill-base-200 [&>path:first-of-type]:stroke-base-300 [&>path:last-of-type]:stroke-base-300"})]})}):null]})})});function ts({sourceIdx:s,device:a}){const l=w(y(t=>t.devices[s])),c=w(y(t=>t.groups[s])),p=i.useMemo(()=>J(a),[a]),d=i.useCallback(async([t,o])=>{const m=L(o.target,l,c);if(!m)return;const r={from:a.ieee_address,from_endpoint:o.source.endpoint,to:m.to,to_endpoint:m.toEndpoint,clusters:o.clusters};t==="Bind"?await N(s,"bridge/request/device/bind",r):await N(s,"bridge/request/device/unbind",r)},[s,a,l,c]);return e.jsx("div",{className:"flex flex-col w-full gap-3",children:p.map(t=>e.jsx(W,{...t,devices:l,groups:c,sourceIdx:s,device:a,onApply:d},t.endpointId))})}export{ts as default};
Binary file
Binary file
@@ -1 +0,0 @@
1
- import{X as k,a2 as T,u as A,r as l,j as n,a3 as z,B as _,a as B,p as R,s as $,a7 as q,S as V,F as D,q as O,L as U,J as G,a5 as P,aa as H,N as J,M as I}from"./index-O2DLxYbj.js";import{B as L,f as X,i as K,C as Q,a as W,m as Y,g as Z}from"./BindRow-D9Od6x88.js";import{D as ee}from"./DeviceImage-C6iSUjiJ.js";import{S as ne}from"./SelectField-CGrVloaL.js";import{I as se}from"./IndeterminateCheckbox-xTLsM_wF.js";import{D as te}from"./DevicePicker-Eg-X3fKz.js";import{E as ie}from"./EndpointPicker-DtqElVGb.js";import{T as ae}from"./Table-DQSQ_sYq.js";import{u as oe,T as le}from"./useTable-CC5yv3vQ.js";import"./envs-CSqIi4cL.js";import"./index-BWJZAMXy.js";import"./DebouncedInput-B_mSPoL2.js";const re=k.create(({sourceIdx:c,device:m,devices:t,groups:r,rule:u,onApply:o})=>{const p=T(),{t:h}=A(["common","devicePage"]),x=l.useCallback(async f=>{await o(f),p.remove()},[p,o]);return l.useEffect(()=>{const f=y=>{y.key==="Escape"&&(y.preventDefault(),p.remove())};return window.addEventListener("keydown",f),()=>window.removeEventListener("keydown",f)},[p]),n.jsx(z,{isOpen:p.visible,title:`${h(f=>f.bind,{ns:"devicePage"})}: ${m.friendly_name} (${u.source.endpoint})`,footer:n.jsx(_,{className:"btn btn-neutral",onClick:p.remove,children:h(f=>f.cancel)}),children:n.jsx(L,{sourceIdx:c,device:m,devices:t,groups:r,rule:u,onApply:x,showDivider:!1,hideUnbind:!0})})}),ce=k.create(({devices:c,selectedRows:m,onApply:t})=>{const r=T(),{t:u}=A(["zigbee","common","devicePage"]),[o,p]=l.useState([]),h=l.useCallback(async()=>{Array.isArray(o)&&o.length>0&&(await t([!1,o]),r.remove())},[t,r,o]);l.useEffect(()=>{const i=g=>{g.key==="Escape"&&(g.preventDefault(),r.remove())};return window.addEventListener("keydown",i),()=>window.removeEventListener("keydown",i)},[r]);const x=l.useMemo(()=>{let i=new Set,g=!1;for(const F of m){const{original:{sourceIdx:j,rule:N,device:E}}=F,{target:w}=N,M=w.type==="group"?void 0:c[j].find(S=>S.ieee_address===w.ieee_address),C=X(N,E.endpoints,M);if(!g){i=C,g=!0;continue}i=i.intersection(C)}return i},[m,c]),f=l.useMemo(()=>{const i=m[0]?.original.rule.target.type;return m.some(g=>g.original.rule.target.type!==i)},[m]),y=l.useMemo(()=>K(o),[o]);return f?n.jsx(z,{isOpen:r.visible,title:u(i=>i.bind,{ns:"devicePage"}),footer:n.jsx(_,{className:"btn btn-neutral",onClick:r.remove,children:u(i=>i.cancel,{ns:"common"})}),children:u(i=>i.mismatching_types,{ns:"common"})}):n.jsx(z,{isOpen:r.visible,title:u(i=>i.bind,{ns:"devicePage"}),footer:n.jsxs(n.Fragment,{children:[n.jsx(_,{className:"btn btn-neutral",onClick:r.remove,children:u(i=>i.cancel,{ns:"common"})}),n.jsx(_,{title:u(i=>i.apply,{ns:"common"}),className:"btn btn-primary ms-1",onClick:h,disabled:!y,children:u(i=>i.apply,{ns:"common"})})]}),children:n.jsx(Q,{label:u(i=>i.clusters,{ns:"common"}),clusters:x,value:o??[],onChange:p})})});function je(){const c=B(e=>e.devices),m=B(e=>e.groups),{t}=A(["zigbee","common"]),[r,u]=l.useState(0),[o,p]=l.useState(null),[h,x]=l.useState(""),[f,y]=l.useState(null),[i,g]=l.useState({});l.useEffect(()=>{g({})},[c]);const F=l.useMemo(()=>{const e=[];for(let s=0;s<R.length;s++){const d=c[s]??[];for(const a of d)for(const b of W(a))e.push({sourceIdx:s,device:a,rule:b})}return e},[c]),j=l.useMemo(()=>Object.keys(i).length,[i]),N=l.useCallback(async([e,s])=>{const d=[];for(const a of S.table.getFilteredRowModel().rows)if(a.getIsSelected()){const{sourceIdx:b,rule:v}=a.original;d.push($(b,e?"bridge/request/device/unbind":"bridge/request/device/bind",{from:v.source.ieee_address,from_endpoint:v.source.endpoint,to:v.target.type==="group"?v.target.id:v.target.ieee_address,to_endpoint:v.target.type==="endpoint"?v.target.endpoint:void 0,clusters:s??v.clusters}))}g({}),d.length>0&&await Promise.allSettled(d)},[c,m]),E=l.useMemo(()=>q(o),[o]);l.useEffect(()=>{y(o&&h?Y(o.ieee_address,h):null)},[h,o]);const w=l.useCallback(async(e,s,d)=>{const a=Z(d.target,c[e],m[e]);if(!a)return;const b={from:d.source.ieee_address,from_endpoint:d.source.endpoint,to:a.to,to_endpoint:a.toEndpoint,clusters:d.clusters};s==="Bind"?await $(e,"bridge/request/device/bind",b):await $(e,"bridge/request/device/unbind",b)},[c,m]),M=l.useCallback(async([e,s])=>{o&&(await w(r,e,s),u(0),p(null),x(""))},[w,r,o]),C=l.useMemo(()=>[{id:"select",size:45,header:({table:e})=>n.jsx(se,{checked:e.getIsAllRowsSelected(),indeterminate:e.getIsSomeRowsSelected(),onChange:e.getToggleAllRowsSelectedHandler()}),accessorFn:()=>"",cell:({row:e})=>n.jsx("input",{type:"checkbox",className:"checkbox",checked:e.getIsSelected(),disabled:!e.getCanSelect(),onChange:e.getToggleSelectedHandler()}),enableGlobalFilter:!1,enableColumnFilter:!1,enableSorting:!1},{id:"source",size:60,header:()=>n.jsx("span",{title:t(e=>e.source,{ns:"common"}),children:n.jsx(D,{icon:O})}),accessorFn:({sourceIdx:e})=>R[e],cell:({row:{original:{sourceIdx:e}}})=>n.jsx(V,{idx:e,nameClassName:"hidden md:inline-block"}),filterFn:"equals",meta:{filterVariant:"select",showFacetedOccurrences:!0}},{id:"friendly_name",size:250,minSize:175,header:t(e=>e.friendly_name,{ns:"common"}),accessorFn:({device:e})=>`${e.friendly_name} ${e.ieee_address} ${e.definition?.model??""}`,cell:({row:{original:{sourceIdx:e,device:s}}})=>n.jsxs("div",{className:"flex items-center gap-3",children:[n.jsx("div",{className:"avatar",children:n.jsx("div",{className:"h-11 w-11",style:{overflow:"visible"},children:n.jsx(ee,{device:s,disabled:s.disabled})})}),n.jsxs("div",{className:"flex-grow flex flex-col min-w-0",children:[n.jsx(U,{to:`/device/${e}/${s.ieee_address}/bind`,className:"link link-hover truncate",children:s.friendly_name}),s.description&&n.jsx("div",{className:"max-w-3xs text-xs opacity-50 truncate",title:s.description,children:s.description})]})]}),sortingFn:(e,s)=>e.original.device.friendly_name.localeCompare(s.original.device.friendly_name),filterFn:"includesString",meta:{filterVariant:"text",textFaceted:!0}},{id:"source_endpoint",size:110,header:t(e=>e.source_endpoint,{ns:"common"}),accessorFn:({rule:e})=>`${e.source.endpoint}`,filterFn:"includesString",meta:{filterVariant:"text"}},{id:"type",size:120,header:t(e=>e.type,{ns:"zigbee"}),accessorFn:({rule:e})=>t(s=>e.target.type==="group"?s.group:s.device,{ns:"zigbee"}),filterFn:"equals",meta:{filterVariant:"select",showFacetedOccurrences:!0}},{id:"destination",minSize:200,header:t(e=>e.destination,{ns:"common"}),accessorFn:({sourceIdx:e,rule:s})=>{if(s.target.type==="group"){const a=m[e].find(b=>b.id===s.target.id)?.friendly_name;return a||`${t(b=>b.unknown)}: ${s.target.id}`}const d=c[e].find(a=>a.ieee_address===s.target.ieee_address)?.friendly_name;return d||`${t(a=>a.unknown)}: ${s.target.ieee_address}`},filterFn:"includesString",meta:{filterVariant:"text",textFaceted:!0}},{id:"destination_endpoint",minSize:200,header:t(e=>e.destination_endpoint,{ns:"common"}),accessorFn:({rule:e})=>e.target.type==="group"?"N/A":`${e.target.endpoint}`,filterFn:"includesString",meta:{filterVariant:"text"}},{id:"clusters",minSize:200,header:t(e=>e.clusters,{ns:"common"}),accessorFn:({rule:e})=>e.clusters.join(", "),cell:({row:{original:{rule:e}}})=>n.jsx("div",{className:"flex flex-row flex-wrap gap-1",children:e.clusters.map(s=>n.jsx("span",{className:"badge badge-ghost badge-sm",children:s},s))}),filterFn:"includesString",meta:{filterVariant:"text"}},{id:"actions",size:110,cell:({row:{original:{sourceIdx:e,device:s,rule:d}}})=>n.jsxs("div",{className:"join join-horizontal",children:[n.jsx(_,{className:"btn btn-sm btn-square btn-outline btn-primary join-item",title:t(a=>a.bind,{ns:"common"}),onClick:async()=>await k.show(re,{sourceIdx:e,device:s,devices:c[e],groups:m[e],rule:d,onApply:async a=>await w(e,a[0],a[1])}),children:n.jsx(D,{icon:G})}),d.isNew?null:n.jsx(P,{title:t(a=>a.unbind,{ns:"common"}),className:"btn btn-sm btn-square btn-error btn-outline join-item",onClick:async()=>await w(e,"Unbind",d),modalDescription:t(a=>a.dialog_confirmation_prompt,{ns:"common"}),modalCancelLabel:t(a=>a.cancel,{ns:"common"}),children:n.jsx(D,{icon:H})})]}),enableSorting:!1,enableColumnFilter:!1,enableGlobalFilter:!1}],[w,c,m,t]),S=oe({id:"all-bindings",columns:C,data:F,visibleColumns:{source:I},sorting:[{id:"friendly_name",desc:!1},{id:"source_endpoint",desc:!1}],rowSelection:i,onRowSelectionChange:g});return n.jsxs(n.Fragment,{children:[n.jsx(J,{children:n.jsx(le,{...S})}),n.jsxs("div",{className:"flex flex-row flex-wrap justify-center gap-2 mb-2",children:[I?n.jsx(ne,{name:"source",label:t(e=>e.source,{ns:"common"}),value:r,onChange:e=>{e.target.validationMessage||(u(Number.parseInt(e.target.value,10)),p(null),x(""))},className:"select",children:R.map((e,s)=>n.jsx("option",{value:s,children:e},`${s}-${e}`))}):null,n.jsx(te,{label:t(e=>e.device,{ns:"zigbee"}),devices:c[r]??[],value:o?.ieee_address??"",onChange:e=>{e&&"ieee_address"in e?(p(e),x("")):p(null)},disabled:(c[r]??[]).length===0}),n.jsx(ie,{label:t(e=>e.source_endpoint,{ns:"common"}),values:E,value:h,disabled:!o,onChange:e=>x(String(e))}),o&&f?n.jsx(L,{sourceIdx:r,device:o,devices:c[r]??[],groups:m[r]??[],rule:f,onApply:M,showDivider:!1}):null]}),n.jsx("div",{className:"mb-5",children:n.jsxs("div",{className:"flex flex-row flex-wrap gap-2 px-2 pb-3",children:[n.jsx(_,{className:"btn btn-outline btn-error btn-sm",title:t(e=>e.bind_selected,{ns:"common"}),onClick:async()=>await k.show(ce,{devices:c,selectedRows:S.table.getFilteredRowModel().rows.filter(e=>e.getIsSelected()),onApply:N}),disabled:j===0,children:`${t(e=>e.bind_selected,{ns:"common"})} (${j})`}),n.jsx(P,{item:[!0,void 0],className:"btn btn-outline btn-error btn-sm",onClick:N,title:t(e=>e.unbind_selected,{ns:"common"}),disabled:j===0,modalDescription:t(e=>e.dialog_confirmation_prompt,{ns:"common"}),modalCancelLabel:t(e=>e.cancel,{ns:"common"}),children:`${t(e=>e.unbind_selected,{ns:"common"})} (${j})`})]})}),n.jsx("div",{className:"mb-5",children:n.jsx(ae,{id:"all-bindings",...S})})]})}export{je as default};
@@ -1 +0,0 @@
1
- import{a as t,C as e,j as a}from"./index-O2DLxYbj.js";import{J as i}from"./Json-Bv-xu1u4.js";import"./envs-CSqIi4cL.js";function m({sourceIdx:o}){const r=t(e(s=>s.bridgeInfo[o]));return a.jsx(i,{obj:r})}export{m as default};
Binary file
@@ -1 +0,0 @@
1
- import{r as c,a as g,C as x,u as b,j as o}from"./index-O2DLxYbj.js";import{S as f}from"./SelectField-CGrVloaL.js";const C=c.memo(({sourceIdx:i,cluster:a,device:u,onChange:l,label:p,...d})=>{const n=g(x(e=>e.bridgeDefinitions[i])),{t:m}=b("zigbee"),s=c.useMemo(()=>{const e=n.custom_clusters[u.ieee_address];if(e){const h=e[a];if(h)return h.attributes}const t=n.clusters[a];return t?t.attributes:[]},[n,u.ieee_address,a]),r=c.useMemo(()=>{const e=[];for(const t in s)e.push(o.jsx("option",{value:t,children:t},t));return e},[s]);return o.jsxs(f,{name:"attribute_picker",label:p,onChange:e=>l(e.target.value,s[e.target.value]),disabled:r.length===0,className:"select validator w-64",...d,children:[o.jsx("option",{value:"",disabled:!0,children:m(e=>e.select_attribute)}),r]})}),_=c.memo(({clusters:i,onChange:a,value:u,label:l,disabled:p,...d})=>{const{t:n}=b(["zigbee","common"]),m=c.useMemo(()=>{const s=[];if(Array.isArray(i))for(const r of i){const e=[];for(const t of r.clusters)e.push(o.jsx("option",{value:t,children:t},t));s.push(o.jsx("optgroup",{label:n(t=>t[r.name]),children:e},r.name))}else for(const r of i)s.push(o.jsx("option",{value:r,children:r},r));return s},[i,n]);return o.jsxs(f,{name:"attribute_picker",label:l,value:u,title:u,onChange:s=>a(s.target.value),disabled:p,className:"select validator w-48",...d,children:[o.jsx("option",{value:"",disabled:!0,children:n(s=>s.select_cluster)}),m]})});export{C as A,_ as C};
Binary file
@@ -1 +0,0 @@
1
- import{u as h,j as n,E as f,a as y,C as q,r,s as v,dj as T,B as p,a5 as E,dk as O,dl as R,dm as A}from"./index-O2DLxYbj.js";import{I as N}from"./InputField-BYfjYPOY.js";import{S as w}from"./SelectField-CGrVloaL.js";import{T as k}from"./TextareaField-Dnm7VOj3.js";import{I as S}from"./InfoAlert-BEMI4UFc.js";import"./envs-CSqIi4cL.js";const D=({sourceIdx:t})=>{const{t:a}=h(["devConsole","common"]),[c,l]=r.useState(""),[m,s]=r.useState("{}"),d=r.useMemo(()=>{if(!c)return!1;if(m!=="")try{const o=JSON.parse(m);if(typeof o!="object"||Array.isArray(o))return!1}catch{return!1}return!0},[c,m]),u=r.useCallback(async()=>{await v(t,c,m===""?m:JSON.parse(m))},[t,c,m]);return n.jsxs(n.Fragment,{children:[n.jsx("h2",{className:"text-lg mb-2",children:a(o=>o.send_mqtt)}),n.jsx(S,{children:n.jsx("a",{href:A,target:"_blank",rel:"noreferrer",className:"link link-hover",children:a(o=>o.read_the_docs_info,{ns:"common"})})}),n.jsx(N,{type:"text",name:"topic",label:a(o=>o.topic),detail:a(o=>o.mqtt_topic_info),placeholder:"bridge/request/permit_join",value:c,onChange:o=>l(o.target.value),className:"input validator w-full",required:!0}),n.jsx(k,{name:"payload",label:a(o=>o.payload,{ns:"common"}),rows:5,value:m,onChange:o=>s(o.target.value),className:"textarea validator w-full"}),n.jsx("div",{className:"join join-horizontal mt-2",children:n.jsx(p,{onClick:u,disabled:!d,className:"btn btn-success",children:a(o=>o.send,{ns:"common"})})})]})},L=({sourceIdx:t})=>{const{t:a}=h(["devConsole","common"]),c=y(q(e=>e.converters[t])),[l,m]=r.useState(),[s,d]=r.useState({name:"",code:""}),u=r.useMemo(()=>(l||!!s.name)&&!!s.code,[l,s]),o=r.useCallback(e=>{if(e.target.value){const i=c.find(C=>C.name===e.target.value);i&&(m(i),d(i))}else m(void 0),d({name:"",code:""})},[c]),x=r.useCallback(e=>{d(i=>({name:e.target.value,code:i.code}))},[]),b=r.useCallback(e=>{d(i=>({name:i.name,code:e.target.value}))},[]),_=r.useCallback(async()=>{await v(t,"bridge/request/converter/save",s)},[t,s]),j=r.useCallback(async()=>{await v(t,"bridge/request/converter/remove",{name:s.name})},[t,s.name]);return n.jsxs(n.Fragment,{children:[n.jsx("h2",{className:"text-lg mb-2",children:a(e=>e.add_update_external_converter)}),n.jsxs(S,{children:[n.jsx("a",{href:O,target:"_blank",rel:"noreferrer",className:"link link-hover",children:a(e=>e.read_the_docs_info,{ns:"common"})}),n.jsx("a",{href:R,target:"_blank",rel:"noreferrer",className:"link link-hover",children:a(e=>e.codespace_info)})]}),n.jsxs(w,{name:"converter_name_edit",label:a(e=>e.select_converter_to_edit),onChange:o,value:l?.name??"",children:[n.jsxs("option",{value:"",children:["N/A - ",a(e=>e.create_new_converter)]}),c.map(e=>n.jsx("option",{value:e.name,children:e.name},e.name))]}),n.jsx(N,{name:"converter_name",label:a(e=>e.name,{ns:"common"}),type:"text",onChange:x,value:s.name,readOnly:l!==void 0,required:!0}),n.jsx(k,{name:"converter_code",label:a(e=>e.code),rows:5,value:s.code,onChange:b,className:"textarea validator w-full",required:!0}),n.jsxs("div",{className:"join join-horizontal mt-2",children:[n.jsx(p,{onClick:_,disabled:!u,className:"btn btn-success join-item",children:a(e=>e.save,{ns:"common"})}),n.jsx(E,{onClick:j,disabled:!l,className:"btn btn-error join-item",title:a(e=>e.delete,{ns:"common"}),modalDescription:a(e=>e.dialog_confirmation_prompt,{ns:"common"}),modalCancelLabel:a(e=>e.cancel,{ns:"common"}),children:a(e=>e.delete,{ns:"common"})})]})]})},M=({sourceIdx:t})=>{const{t:a}=h(["devConsole","common"]),c=y(q(e=>e.extensions[t])),[l,m]=r.useState(),[s,d]=r.useState({name:"",code:""}),u=r.useMemo(()=>(l||!!s.name)&&!!s.code,[l,s]),o=r.useCallback(e=>{if(e.target.value){const i=c.find(C=>C.name===e.target.value);i&&(m(i),d(i))}else m(void 0),d({name:"",code:""})},[c]),x=r.useCallback(e=>{d(i=>({name:e.target.value,code:i.code}))},[]),b=r.useCallback(e=>{d(i=>({name:i.name,code:e.target.value}))},[]),_=r.useCallback(async()=>{await v(t,"bridge/request/extension/save",s)},[t,s]),j=r.useCallback(async()=>{await v(t,"bridge/request/extension/remove",{name:s.name})},[t,s.name]);return n.jsxs(n.Fragment,{children:[n.jsx("h2",{className:"text-lg mb-2",children:a(e=>e.add_update_external_extension)}),n.jsx(S,{children:n.jsx("a",{href:T,target:"_blank",rel:"noreferrer",className:"link link-hover",children:a(e=>e.read_the_docs_info,{ns:"common"})})}),n.jsxs(w,{name:"extension_name_edit",label:a(e=>e.select_extension_to_edit),onChange:o,value:l?.name??"",children:[n.jsxs("option",{value:"",children:["N/A - ",a(e=>e.create_new_extension)]}),c.map(e=>n.jsx("option",{value:e.name,children:e.name},e.name))]}),n.jsx(N,{name:"extension_name",label:a(e=>e.name,{ns:"common"}),type:"text",onChange:x,value:s.name,readOnly:l!==void 0,required:!0}),n.jsx(k,{name:"extension_code",label:a(e=>e.code),rows:5,value:s.code,onChange:b,className:"textarea validator w-full",required:!0}),n.jsxs("div",{className:"join join-horizontal mt-2",children:[n.jsx(p,{onClick:_,disabled:!u,className:"btn btn-success join-item",children:a(e=>e.save,{ns:"common"})}),n.jsx(E,{onClick:j,disabled:!l,className:"btn btn-error join-item",title:a(e=>e.delete,{ns:"common"}),modalDescription:a(e=>e.dialog_confirmation_prompt,{ns:"common"}),modalCancelLabel:a(e=>e.cancel,{ns:"common"}),children:a(e=>e.delete,{ns:"common"})})]})]})};function F(t,a){switch(a){case"mqtt":return n.jsx(D,{sourceIdx:t});case"external_converters":return n.jsx(L,{sourceIdx:t});case"external_extensions":return n.jsx(M,{sourceIdx:t})}}const g=({isActive:t})=>t?"tab tab-active":"tab";function V({sourceIdx:t,tab:a}){const{t:c}=h("devConsole");return n.jsxs("div",{className:"tabs tabs-border",children:[n.jsx(f,{to:`/settings/${t}/dev-console/mqtt`,className:g,children:c(l=>l.mqtt)}),n.jsx(f,{to:`/settings/${t}/dev-console/external_converters`,className:g,children:c(l=>l.external_converters)}),n.jsx(f,{to:`/settings/${t}/dev-console/external_extensions`,className:g,children:c(l=>l.external_extensions)}),n.jsx("div",{className:"tab-content block h-full bg-base-100 p-3",children:F(t,a)})]})}export{V as default};
@@ -1,7 +0,0 @@
1
- import{r as o,j as e,ak as J,aP as W,u as P,B as v,F as V,Y as K,a7 as X,a as k,C as A,s as D,a5 as Y,L as M,aQ as Z,aR as H}from"./index-O2DLxYbj.js";import{T as U}from"./TextareaField-Dnm7VOj3.js";import{J as Q}from"./Json-Bv-xu1u4.js";import{I as q}from"./InputField-BYfjYPOY.js";import{C as F,A as I}from"./ClusterSinglePicker-wRw4n9xD.js";import{E as ee}from"./EndpointPicker-DtqElVGb.js";import"./envs-CSqIi4cL.js";import"./SelectField-CGrVloaL.js";const B=o.memo(({message:r})=>e.jsx("div",{className:"mockup-code w-full before:content-none",children:e.jsx("pre",{"data-prefix":"~",className:J[r.level],children:e.jsxs("code",{children:["[",r.timestamp,"] ",r.message]})})})),te=[65,66,67,68];function se({value:r,onChange:s,attribute:i,definition:c,...m}){const d=te.includes(c.type)?"text":"number";return e.jsx("input",{type:d,value:r,onChange:u=>{const f=d==="number"?u.target.valueAsNumber:u.target.value;s(i,Number.isNaN(f)?void 0:f)},...m})}const ne=o.memo(({sourceIdx:r,device:s,readDeviceAttributes:i,writeDeviceAttributes:c,lastLog:m})=>{const[d,u]=o.useState(W(s.endpoints)??""),[f,g]=o.useState(""),[l,b]=o.useState([]),[w,C]=o.useState(""),{t:x}=P(["common","zigbee","devConsole"]),E=o.useCallback(n=>{g(""),b([]),u(n.toString())},[]),a=o.useCallback(n=>{b([]),g(n)},[]),t=o.useCallback((n,S)=>{if(!l.find(N=>N.attribute===n)){const N=l.concat([{attribute:n,definition:S}]);b(N)}},[l]),_=o.useCallback(n=>{C(n.target.value)},[]),y=o.useCallback(async()=>{await i(s.ieee_address,d,f,l.map(n=>n.attribute),w)},[s.ieee_address,d,f,l,w,i]),h=o.useCallback(async()=>{await c(s.ieee_address,d,f,l)},[s.ieee_address,d,f,l,c]),j=o.useMemo(()=>l.length>0&&e.jsx("fieldset",{className:"fieldset gap-2 p-3 bg-base-200 rounded-box shadow-md border border-base-300",children:l.map(({attribute:n,value:S="",definition:N})=>e.jsxs("div",{className:"join join-horizontal min-w-xs",children:[e.jsxs("label",{className:"input join-item",children:[n,e.jsx(se,{value:S,attribute:n,definition:N,onChange:(T,R)=>{const L=Array.from(l),O=L.find(G=>G.attribute===T);O&&(O.value=R),b(L)}})]}),e.jsx(v,{className:"btn btn-error btn-outline join-item",item:n,onClick:T=>{const R=l.filter(L=>L.attribute!==T);b(R)},children:e.jsx(V,{icon:K})})]},n))}),[l]),z=o.useMemo(()=>{const n=new Set;if(d){const S=s.endpoints[Number.parseInt(d,10)];if(S)for(const N of S.clusters.input)n.add(N)}return n},[s,d]),$=l.length===0||f==="",p=o.useMemo(()=>X(s),[s]);return d?e.jsxs("div",{className:"flex-1 flex flex-col gap-3 w-full",children:[e.jsx("h2",{className:"text-lg",children:x(n=>n.read_write_attributes,{ns:"zigbee"})}),e.jsxs("div",{className:"flex flex-row flex-wrap gap-2",children:[e.jsx(ee,{label:x(n=>n.endpoint,{ns:"zigbee"}),values:p,value:d,onChange:E,required:!0}),e.jsx(F,{label:x(n=>n.cluster),clusters:z,value:f,onChange:a,required:!0}),e.jsx(I,{sourceIdx:r,label:x(n=>n.attribute),value:"",cluster:f,device:s,onChange:t}),e.jsx(q,{type:"text",name:"state_property",label:x(n=>n.state_property,{ns:"devConsole"}),value:w,detail:`${x(n=>n.optional)}. ${x(n=>n.state_property_info,{ns:"devConsole"})}`,onChange:_})]}),j,e.jsxs("div",{className:"join join-horizontal",children:[e.jsx(v,{disabled:$||l.some(n=>!!n.value),className:"btn btn-success join-item",onClick:y,children:x(n=>n.read)}),e.jsx(v,{disabled:$,className:"btn btn-error join-item",onClick:h,children:x(n=>n.write)})]}),m&&e.jsx(B,{message:m})]}):e.jsx("span",{children:"No endpoints"})}),ae=o.memo(({sourceIdx:r,device:s,lastLog:i})=>{const{t:c}=P(["common","zigbee"]),[m,d]=o.useState(1),[u,f]=o.useState(""),[g,l]=o.useState(""),[b,w]=o.useState("{}"),C=k(A(t=>t.bridgeDefinitions[r])),x=o.useMemo(()=>{if(!u||!g)return!1;try{const t=JSON.parse(b);if(typeof t!="object"||Array.isArray(t)&&t.length>0&&typeof t[0]!="object")return!1}catch{return!1}return!0},[b,u,g]),E=o.useMemo(()=>{const t=s.endpoints[m],_=new Set,y=new Set,h=new Set,j=new Set,z=new Set;if(t){for(const p of t.clusters.input)_.add(p),y.add(p);for(const p of t.clusters.output)_.add(p),h.add(p)}if(C.custom_clusters[s.friendly_name])for(const p in C.custom_clusters[s.friendly_name])_.has(p)||(_.add(p),j.add(p));for(const p in C.clusters)_.has(p)||z.add(p);return[{name:"input_clusters",clusters:y},{name:"output_clusters",clusters:h},{name:"custom_clusters",clusters:j},{name:"other_zcl_clusters",clusters:z}]},[s.friendly_name,s.endpoints,m,C]),a=o.useCallback(async()=>{let t=Number.parseInt(g,10);Number.isNaN(t)&&(t=g),await D(r,`${s.ieee_address}/${m}/set`,{command:{cluster:u,command:t,payload:JSON.parse(b)}})},[r,u,s.ieee_address,g,b,m]);return e.jsxs("div",{className:"flex-1 flex flex-col gap-3 w-full",children:[e.jsx("h2",{className:"text-lg",children:c(t=>t.execute_command)}),e.jsxs("div",{className:"flex flex-row flex-wrap gap-2",children:[e.jsx(q,{type:"number",name:"endpoint",label:c(t=>t.endpoint,{ns:"zigbee"}),min:1,max:255,value:m,onChange:t=>!!t.target.value&&d(t.target.valueAsNumber),required:!0}),e.jsx(F,{label:c(t=>t.cluster,{ns:"zigbee"}),clusters:E,value:u,onChange:t=>{f(t)},required:!0}),e.jsx(q,{type:"text",name:"command",label:c(t=>t.command),value:g,placeholder:"state, color...",onChange:t=>l(t.target.value),pattern:"^\\d+|^\\w+",required:!0})]}),e.jsx(U,{name:"payload",label:c(t=>t.payload),rows:3,value:b,onChange:t=>w(t.target.value),className:"textarea validator w-full",required:!0}),e.jsx("div",{children:e.jsx(v,{onClick:a,disabled:!x,className:"btn btn-success",children:c(t=>t.execute)})}),i&&e.jsx(B,{message:i})]})}),oe=o.memo(({sourceIdx:r,device:s,externalDefinition:i})=>{const{t:c}=P("zigbee"),m=k(A(u=>u.bridgeInfo[r])),d={template:"new_device_support.yaml",title:`[New device support]: ${s.model_id} from ${s.manufacturer}`,z2m_version:`${m.version} (${m.commit})`,notes:`
2
- software_build_id: \`${s.software_build_id}\`
3
- date_code: \`${s.date_code}\`
4
- endpoints:
5
- \`\`\`json
6
- ${JSON.stringify(s.endpoints)}
7
- \`\`\``,external_definition:i};return e.jsx(M,{target:"_blank",rel:"noopener noreferrer",to:`${H}?${new URLSearchParams(d).toString()}`,className:"btn",children:c(u=>u.request_support)})}),re=/^(zhc:tz: Read result of |z2m: Publish 'set' 'read' to |z2m: Publish 'set' 'write' to |zhc:tz: Wrote )/;function be({sourceIdx:r,device:s}){const{t:i}=P(["devConsole","common"]),c=k(A(a=>a.generatedExternalDefinitions[r][s.ieee_address])),m=k(A(a=>a.logs[r].findLast(t=>t.message.startsWith("zhc:tz: Invoked ")))),d=k(A(a=>a.logs[r].findLast(t=>re.test(t.message)))),u=k(a=>a.resetDeviceState),[f,g]=o.useState(!1),[l,b]=o.useState(!1);o.useEffect(()=>{g(!1)},[s]);const w=o.useCallback(async(a,t,_,y,h)=>{const j={read:{cluster:_,attributes:y}};h&&(j.read.state_property=h),await D(r,`${a}/${t}/set`,j)},[r]),C=o.useCallback(async(a,t,_,y)=>{const h={write:{cluster:_,payload:{}}};for(const j of y)h.write.payload[j.attribute]=j.value;await D(r,`${a}/${t}/set`,h)},[r]),x=o.useCallback(async()=>{g(!0),await D(r,"bridge/request/device/generate_external_definition",{id:s.ieee_address})},[r,s.ieee_address]),E=o.useCallback(()=>{u(r,s.friendly_name)},[r,s.friendly_name,u]);return e.jsxs("div",{className:"flex flex-col gap-3 w-full",children:[e.jsxs("div",{className:"flex flex-row flex-wrap justify-center items-center gap-2",children:[c?s.supported?null:e.jsx(oe,{sourceIdx:r,device:s,externalDefinition:c}):f?e.jsx("span",{className:"loading loading-infinity loading-xl"}):e.jsx(v,{className:"btn btn-primary",onClick:x,children:i(a=>a.generate_external_definition)}),e.jsx(v,{item:!l,onClick:b,className:"btn btn-primary",children:i(a=>l?a.hide_definition:a.show_definition)}),e.jsx(Y,{className:"btn btn-error",onClick:E,title:i(a=>a.reset_frontend_state),modalDescription:i(a=>a.dialog_confirmation_prompt,{ns:"common"}),modalCancelLabel:i(a=>a.cancel,{ns:"common"}),children:i(a=>a.reset_frontend_state)})]}),c&&e.jsxs(e.Fragment,{children:[e.jsx("div",{className:"divider"}),e.jsx(U,{name:"generated_external_definition",label:i(a=>a.generated_external_definition),value:c,className:"textarea w-full",rows:8,readOnly:!0}),e.jsx(M,{to:Z,target:"_blank",rel:"noreferrer",className:"link link-primary self-end",children:i(a=>a.documentation,{ns:"common"})})]}),l&&e.jsxs(e.Fragment,{children:[e.jsx("div",{className:"divider"}),e.jsx(Q,{obj:s.definition??{},lines:12})]}),e.jsx("div",{className:"divider"}),e.jsxs("div",{className:"flex flex-row flex-wrap justify-evenly gap-4",children:[e.jsx(ne,{sourceIdx:r,device:s,readDeviceAttributes:w,writeDeviceAttributes:C,lastLog:d}),e.jsx(ae,{sourceIdx:r,device:s,lastLog:m})]})]})}export{be as default};
@@ -1 +0,0 @@
1
- import{j as i,F as l,ag as x,r as m,u as w,aS as b,aU as S,d0 as O,d1 as P,a1 as N,a9 as _}from"./index-O2DLxYbj.js";import{g as D,a as y}from"./index-BWJZAMXy.js";function I({error:r,children:e}){return r?i.jsx(l,{icon:x,size:"3x",className:"text-error"}):e}function p(r){"@babel/helpers - typeof";return p=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(e){return typeof e}:function(e){return e&&typeof Symbol=="function"&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},p(r)}function E(r,e){if(p(r)!="object"||!r)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e);if(p(n)!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}function A(r){var e=E(r,"string");return p(e)=="symbol"?e:e+""}function L(r,e,t){return(e=A(e))in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}var $=(function(r){var e=r.crossOrigin,t=e===void 0?"":e;return function(n){return new Promise(function(s,a){var u=new Image;t&&(u.crossOrigin=t),u.onload=function(){u.decode?u.decode().then(s).catch(a):s()},u.onerror=a,u.src=n})}});function j(r,e){var t=Object.keys(r);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(r);e&&(n=n.filter(function(s){return Object.getOwnPropertyDescriptor(r,s).enumerable})),t.push.apply(t,n)}return t}function g(r){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?j(Object(t),!0).forEach(function(n){L(r,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(r,Object.getOwnPropertyDescriptors(t)):j(Object(t)).forEach(function(n){Object.defineProperty(r,n,Object.getOwnPropertyDescriptor(t,n))})}return r}var F=function(e){return e.filter(function(t){return t})},T=function(e){return Array.isArray(e)?e:[e]},f={},z=function(e,t){var n=!1;return new Promise(function(s,a){var u=function(o){return t(o).then(function(){n=!0,s(o)})};e.reduce(function(d,o){return d.catch(function(){if(!n)return u(o)})},u(e.shift())).catch(a)})};function B(r){var e=r.srcList,t=r.imgPromise,n=t===void 0?$({}):t,s=r.useSuspense,a=s===void 0?!0:s,u=m.useState(!1),d=u[1],o=F(T(e)),c=o.join("");if(f[c]||(f[c]={promise:z(o,n),cache:"pending",error:null}),f[c].cache==="resolved")return{src:f[c].src,isLoading:!1,error:null};if(f[c].cache==="rejected"){if(a)throw f[c].error;return{isLoading:!1,error:f[c].error,src:void 0}}if(f[c].promise.then(function(v){f[c]=g(g({},f[c]),{},{cache:"resolved",src:v}),a||d(c)}).catch(function(v){f[c]=g(g({},f[c]),{},{cache:"rejected",error:v}),a||d(c)}),a)throw f[c].promise;return{isLoading:!0,src:void 0,error:null}}const h=m.memo(({device:r={},className:e})=>{const t=r.definition?.icon,n=D(r),s=[];t&&s.push(t),n&&s.push(n),n!==y&&s.push(y);const{src:a}=B({srcList:s});return i.jsx("img",{alt:r.ieee_address,src:a,className:e})}),K=m.memo(r=>{const{t:e}=w(["zigbee","common"]),{device:t={},disabled:n,otaState:s,className:a,noIndicator:u}=r,d=m.useMemo(()=>t.interview_state===b.InProgress?i.jsx("span",{title:e(o=>o.interviewing),children:i.jsx(l,{icon:S,spin:!0,className:"indicator-item indicator-bottom indicator-end text-info"})}):t.interview_state===b.Failed?i.jsx("span",{title:e(o=>o.interview_failed),children:i.jsx(l,{icon:x,beat:!0,className:"indicator-item indicator-bottom indicator-end text-error"})}):t.definition?.source==="generated"?i.jsx("span",{title:e(o=>o.unsupported),children:i.jsx(l,{icon:O,beat:!0,className:"indicator-item indicator-bottom indicator-end text-warning"})}):t.definition?.source==="external"?i.jsx("span",{title:e(o=>o.unsupported),children:i.jsx(l,{icon:P,className:"indicator-item indicator-bottom indicator-end text-info"})}):null,[t.interview_state,t.definition,e]);return i.jsx(m.Suspense,{fallback:i.jsx("img",{alt:t.ieee_address,src:y}),children:i.jsx(I,{children:u?i.jsx(h,{device:t,className:`grid place-items-center${a?` ${a}`:""}`}):i.jsxs("div",{className:"indicator w-full",children:[s==="updating"&&i.jsx("span",{title:e(o=>o.updating_firmware),children:i.jsx(l,{icon:N,spin:!0,className:"indicator-item indicator-top indicator-end text-info"})}),d,n&&i.jsx("span",{title:e(o=>o.disabled,{ns:"common"}),children:i.jsx(l,{icon:_,className:"indicator-item indicator-middle indicator-center text-error",size:"2xl"})}),i.jsx(h,{device:t,className:`grid place-items-center${a?` ${a}`:""}`})]})})})});export{K as D};
@@ -1 +0,0 @@
1
- import{u as a,a as m,C as c,r as p,s as f,j as s,aX as l}from"./index-O2DLxYbj.js";import{m as d}from"./merge-D15LJ0wW.js";import{I as g}from"./InfoAlert-BEMI4UFc.js";import{S as h}from"./SettingsList-CTeXhdEC.js";import"./envs-CSqIi4cL.js";import"./isObjectLike-D2GWafVk.js";import"./isObject--vsEa_js.js";import"./CheckboxField-DDGxPCob.js";import"./InputField-BYfjYPOY.js";import"./NumberField-DVKVcA4j.js";import"./SelectField-CGrVloaL.js";function I({sourceIdx:t,ieeeAddress:i}){const{t:r}=a(["settings","common"]),o=m(c(e=>e.bridgeInfo[t])),n=p.useCallback(async e=>{await f(t,"bridge/request/device/options",{id:i,options:e})},[t,i]);return s.jsxs(s.Fragment,{children:[s.jsx(g,{children:s.jsx("a",{href:l,target:"_blank",rel:"noreferrer",className:"link link-hover",children:r(e=>e.read_the_docs_info,{ns:"common"})})}),s.jsx(h,{schema:o.config_schema.definitions.device??{properties:{}},data:d({},o.config.device_options,o.config.devices[i]),set:n,namespace:"definitions-device"})]})}export{I as default};
@@ -1 +0,0 @@
1
- import{u as n,a as p,C as m,r as f,s as u,j as a}from"./index-O2DLxYbj.js";import{F as d,a as c}from"./Feature-BJ8zY1Ga.js";import{g}from"./index-BnCNGENq.js";import"./envs-CSqIi4cL.js";import"./DisplayValue-BZ-eaAKu.js";import"./isObject--vsEa_js.js";import"./_createCompounder-DvelL9we.js";import"./isObjectLike-D2GWafVk.js";function C({sourceIdx:t,device:s}){const{t:i}=n("common"),r=p(m(e=>e.bridgeInfo[t])),o=f.useCallback(async e=>{await u(t,"bridge/request/device/options",{id:s.ieee_address,options:e})},[t,s.ieee_address]);return s.definition?.options?.length?a.jsx("div",{className:"list bg-base-100",children:s.definition.options.map(e=>a.jsx(d,{feature:e,device:s,deviceState:r.config.devices[s.ieee_address]??{},onChange:o,featureWrapperClass:c,parentFeatures:[]},g(e)))}):i(e=>e.empty_exposes_definition)}export{C as default};
@@ -1 +0,0 @@
1
- import{r as d,a7 as _,u as y,s as j,j as a,B as w,a as g,C,a5 as S,F as D,Y as N}from"./index-O2DLxYbj.js";import{R as k,A as E}from"./RecallRemove-ByQ3RXQY.js";import{D as F}from"./DevicePicker-Eg-X3fKz.js";import{E as A}from"./EndpointPicker-DtqElVGb.js";import{u as M,b as G}from"./useColumnCount-CDIFEtdP.js";import{D as R}from"./DashboardFeatureWrapper-UEMN2W33.js";import{D as q}from"./DeviceCard-CE7t_uOW.js";import"./envs-CSqIi4cL.js";import"./Feature-BJ8zY1Ga.js";import"./DisplayValue-BZ-eaAKu.js";import"./isObject--vsEa_js.js";import"./_createCompounder-DvelL9we.js";import"./isObjectLike-D2GWafVk.js";import"./index-BnCNGENq.js";import"./InputField-BYfjYPOY.js";import"./SelectField-CGrVloaL.js";import"./LastSeen-DA4kaWWb.js";import"./TimeAgo-BBbvibZK.js";import"./Lqi-BLFaxsM9.js";import"./PowerSource-D71Ibdxv.js";import"./snakeCase-DDe65ywx.js";import"./DeviceImage-C6iSUjiJ.js";import"./index-BWJZAMXy.js";const z=d.memo(({sourceIdx:s,devices:i,group:t})=>{const[n,m]=d.useState(""),[o,u]=d.useState(""),v=d.useMemo(()=>_(i.find(e=>e.ieee_address===o)),[o,i]),{t:l}=y(["groups","zigbee"]),b=d.useCallback(e=>{u(e.ieee_address);const c=_(e);m(c.values().next().value)},[]),f=d.useCallback(async()=>await j(s,"bridge/request/group/members/add",{group:t.id.toString(),endpoint:n,device:o}),[s,t.id,n,o]);return a.jsxs(a.Fragment,{children:[a.jsx("h2",{className:"text-lg font-semibold",children:l(e=>e.add_to_group_header)}),a.jsxs("div",{className:"mb-3",children:[a.jsx(F,{label:l(e=>e.device,{ns:"zigbee"}),value:o,devices:i,onChange:b}),a.jsx(A,{label:l(e=>e.endpoint,{ns:"zigbee"}),values:v,value:n,onChange:e=>m(e),disabled:!o})]}),a.jsx(w,{onClick:f,className:"btn btn-primary",disabled:n==null||n===""||!o,children:l(e=>e.add_to_group)})]})}),B=({sourceIdx:s,device:i,deviceState:t,deviceAvailability:n,groupMember:m,lastSeenConfig:o,removeDeviceFromGroup:u,setDeviceState:v})=>{const{endpoint:l}=m,{t:b}=y(["groups","common"]),f=g(C(r=>r.deviceScenesFeatures[s][i.ieee_address]??[])),e=d.useCallback(async r=>await v(i.ieee_address,r),[i.ieee_address,v]),c=d.useCallback(async()=>await u(i.ieee_address,l),[i.ieee_address,l,u]);return a.jsx("div",{className:`mb-3 card card-border bg-base-200 rounded-box shadow-md ${n==="offline"?"border-error/50":"border-base-300"}`,children:a.jsx(q,{sourceIdx:s,hideSourceDot:!0,features:f,device:i,endpoint:l,deviceState:t,onChange:e,featureWrapperClass:R,lastSeenConfig:o,children:a.jsx(S,{onClick:c,className:"btn btn-square btn-outline btn-error btn-sm",title:b(r=>r.remove_from_group),modalDescription:b(r=>r.dialog_confirmation_prompt,{ns:"common"}),modalCancelLabel:b(r=>r.cancel,{ns:"common"}),children:a.jsx(D,{icon:N})})})})},T=s=>s?.data?a.jsx(B,{...s.data}):null,W=d.memo(({sourceIdx:s,devices:i,group:t})=>{const n=g(e=>e.availability),m=g(e=>e.bridgeInfo),o=g(C(e=>e.deviceStates[s])),u=g(C(e=>e.bridgeInfo[s].config.advanced.last_seen)),v=M(),l=d.useCallback(async(e,c)=>await j(s,"bridge/request/group/members/remove",{device:e,endpoint:c,group:t.id.toString()}),[s,t.id]),b=d.useCallback(async(e,c)=>{await j(s,`${e}/set`,c)},[s]),f=d.useMemo(()=>{const e=[],c=m[s].config.availability.enabled;for(const r of t.members){const p=i.find(h=>h.ieee_address===r.ieee_address);if(p){let h="disabled";if(!p.disabled){const x=m[s].config.devices[p.ieee_address]?.availability;h=(x!=null?!!x:void 0)??c?n[s][p.friendly_name]?.state??"offline":"disabled"}e.push({sourceIdx:s,groupMember:r,device:p,deviceState:o[p.friendly_name]??{},deviceAvailability:h,lastSeenConfig:u,removeDeviceFromGroup:l,setDeviceState:b})}}return e.sort((r,p)=>r.device.ieee_address.localeCompare(p.device.ieee_address)),e},[s,t,i,u,o,m,n,l,b]);return a.jsx("div",{children:a.jsx(G,{useWindowScroll:!0,columnCount:v,data:f,ItemContent:T,className:"gap-3"},`groupmembers-${f.length}`)})});function ce({sourceIdx:s,group:i}){const t=g(C(n=>n.devices[s]));return a.jsxs(a.Fragment,{children:[a.jsxs("div",{className:"flex flex-row flex-wrap gap-4 mb-4 w-full",children:[a.jsx("div",{className:"card card-border bg-base-200 border-base-300 rounded-box shadow-md flex-1",children:a.jsx("div",{className:"card-body p-4",children:a.jsx(z,{sourceIdx:s,devices:t,group:i})})}),a.jsx("div",{className:"card card-border bg-base-200 border-base-300 rounded-box shadow-md flex-1",children:a.jsx("div",{className:"card-body p-4",children:a.jsx(k,{sourceIdx:s,target:i})})}),a.jsx("div",{className:"card card-border bg-base-200 border-base-300 rounded-box shadow-md flex-1",children:a.jsx("div",{className:"card-body p-4",children:a.jsx(E,{sourceIdx:s,target:i,deviceState:{}})})})]}),a.jsx(W,{sourceIdx:s,devices:t,group:i})]})}export{ce as default};
Binary file
Binary file
Binary file
Binary file
@@ -1 +0,0 @@
1
- import{u as k,r as o,l as t,ar as u,as as f,at as h,m as E,n as x,au as S,av as O,H as K,$ as Y,aw as L,ax as M,ay as H,az as y,aA as R,aB as F,aC as W,j as a,M as U,N as G,a5 as N}from"./index-O2DLxYbj.js";import{C as r}from"./CheckboxField-DDGxPCob.js";import{N as b}from"./NumberField-DVKVcA4j.js";import"./envs-CSqIi4cL.js";function J(){const{t:s}=k(["settings","navbar","network","common"]),[i,p]=o.useState(t.get(u,254)),[l,g]=o.useState(t.get(f,3)),[m,C]=o.useState(t.get(h,!1)),[c,T]=o.useState(t.get(E,!0)),[_,w]=o.useState(t.get(x,!0)),[d,v]=o.useState(t.get(S,!0));o.useEffect(()=>{t.set(u,i)},[i]),o.useEffect(()=>{t.set(f,l)},[l]),o.useEffect(()=>{t.set(h,m)},[m]),o.useEffect(()=>{t.set(E,c)},[c]),o.useEffect(()=>{t.set(x,_)},[_]),o.useEffect(()=>{t.set(S,d)},[d]);const A=o.useCallback(()=>{const e=t.keys();t.remove(O),t.remove(u),t.remove(f),t.remove(h),t.remove(K),t.remove(E),t.remove(x),t.remove(Y),t.remove(L),t.remove(S),t.remove(M);for(const n of e)(n.startsWith(H)||n.startsWith(y)||n.startsWith(R))&&t.remove(n);window.location.reload()},[]),I=o.useCallback(()=>{const e=t.keys();for(const n of e)(n.startsWith(F)||n.startsWith(W))&&t.remove(n);window.location.reload()},[]),j=o.useCallback(()=>{t.clearAll(),window.location.reload()},[]);return a.jsxs(a.Fragment,{children:[a.jsx(G,{children:a.jsxs("div",{className:"flex flex-row flex-wrap flex-1 gap-1.5",children:[a.jsx(N,{className:"btn btn-sm btn-outline btn-error tooltip-bottom",onClick:A,title:s(e=>e.reset_settings),modalDescription:s(e=>e.dialog_confirmation_prompt,{ns:"common"}),modalCancelLabel:s(e=>e.cancel,{ns:"common"}),children:s(e=>e.reset_settings)}),a.jsx(N,{className:"btn btn-sm btn-outline btn-error tooltip-bottom",onClick:I,title:s(e=>e.reset_auth),modalDescription:s(e=>e.dialog_confirmation_prompt,{ns:"common"}),modalCancelLabel:s(e=>e.cancel,{ns:"common"}),children:s(e=>e.reset_auth)}),a.jsx(N,{className:"btn btn-sm btn-outline btn-error tooltip-bottom",onClick:j,title:s(e=>e.reset_all),modalDescription:s(e=>e.dialog_confirmation_prompt,{ns:"common"}),modalCancelLabel:s(e=>e.cancel,{ns:"common"}),children:s(e=>e.reset_all)})]})}),a.jsx("div",{className:"alert alert-info alert-vertical sm:alert-horizontal",children:s(e=>e.frontend_notice)}),a.jsxs("div",{className:"flex flex-row flex-wrap gap-4 mt-3",children:[a.jsx(b,{type:"number",name:"permit_join_time",label:s(e=>e.permit_join_time),min:10,max:254,required:!0,minimal:!0,initialValue:i,onSubmit:(e,n)=>n&&e!==""&&p(e)}),a.jsx(b,{type:"number",name:"max_on_screen_notifications",label:s(e=>e.max_on_screen_notifications),min:1,max:5,required:!0,minimal:!0,initialValue:l,onSubmit:(e,n)=>n&&e!==""&&g(e)}),a.jsx(r,{name:"hide_static_info_alerts",label:s(e=>e.hide_static_info_alerts,{ns:"common"}),onChange:e=>C(e.target.checked),defaultChecked:m})]}),a.jsx("h2",{className:"text-lg mt-2",children:s(e=>e.home,{ns:"navbar"})}),a.jsxs("div",{className:"flex flex-row flex-wrap gap-4",children:[a.jsx(r,{name:"show_activity",label:`${s(e=>e.show,{ns:"common"})}: ${s(e=>e.activity,{ns:"navbar"})}`,onChange:e=>T(e.target.checked),defaultChecked:c}),a.jsx(r,{name:"show_group_scenes",label:`${s(e=>e.show,{ns:"common"})}: ${s(e=>e.group_scenes,{ns:"common"})}`,onChange:e=>w(e.target.checked),defaultChecked:_})]}),U&&a.jsxs(a.Fragment,{children:[a.jsx("h2",{className:"text-lg mt-2",children:s(e=>e.multi_instance,{ns:"common"})}),a.jsx("div",{className:"flex flex-row flex-wrap gap-4",children:a.jsx(r,{name:"show_source_name",label:s(e=>e.show_source_name,{ns:"common"}),onChange:e=>v(e.target.checked),defaultChecked:d})})]})]})}export{J as default};
Binary file
Binary file
@@ -1 +0,0 @@
1
- import{j as e,r as d,u as S,L as $,S as W,s as te,B as N,a as E,g as le,t as ne,F as g,f as re,M as oe,b as ce,c as Z,d as de,e as me,h as xe,i as fe,k as be,l as k,H as z,m as Q,n as ee,A as se,R as he,N as pe,o as H}from"./index-O2DLxYbj.js";import{u as ue,b as je}from"./useColumnCount-CDIFEtdP.js";import{L as ve}from"./LastSeen-DA4kaWWb.js";import{L as Ne}from"./Lqi-BLFaxsM9.js";import{P as ye}from"./PowerSource-D71Ibdxv.js";import{D as ge}from"./DeviceImage-C6iSUjiJ.js";import{u as we,a as _e,b as ke,c as Ee,F as Ce,d as Se,o as $e,e as Ae,s as Te,f as Re}from"./floating-ui.react-MIvSYIT3.js";import Pe from"./Exposes-DfrJAUra.js";import"./envs-CSqIi4cL.js";import"./TimeAgo-BBbvibZK.js";import"./index-BnCNGENq.js";import"./DisplayValue-BZ-eaAKu.js";import"./snakeCase-DDe65ywx.js";import"./_createCompounder-DvelL9we.js";import"./isObjectLike-D2GWafVk.js";import"./index-BWJZAMXy.js";import"./Feature-BJ8zY1Ga.js";import"./isObject--vsEa_js.js";const De=d.memo(({sourceIdx:a,device:l,deviceState:n,deviceAvailability:m,lastSeenConfig:o,onClick:r})=>{const{t:p}=S("zigbee"),c=l.description??l.definition?.description;return e.jsxs("article",{className:`mb-2 card bg-base-200 rounded-box shadow-md ${m==="disabled"?"card-dash border-warning/40":m==="offline"?"card-border border-error/50":"card-border border-base-300"} cursor-pointer will-change-transform transition-transform hover:-translate-y-1`,onClick:h=>{h.target.nodeName!=="A"&&r(a,l,h.currentTarget)},children:[e.jsx("div",{className:"card-body p-1",children:e.jsxs("div",{className:"flex flex-row items-center gap-3 w-full",children:[e.jsx("div",{className:"flex-none h-11 w-11 overflow-visible",children:e.jsx(ge,{disabled:l.disabled,device:l,otaState:n.update?.state})}),e.jsxs("div",{className:"min-w-0",children:[e.jsx("div",{className:"truncate",children:e.jsx($,{to:`/device/${a}/${l.ieee_address}/info`,className:"truncate link link-hover font-semibold",children:l.friendly_name})}),c&&e.jsx("div",{className:"text-xs opacity-50 truncate",title:c,children:c}),e.jsx("div",{className:"text-xs opacity-50",children:e.jsx(ve,{lastSeen:n.last_seen,config:o})}),e.jsx("span",{className:"absolute top-2 right-2",children:e.jsx(W,{idx:a,autoHide:!0})})]})]})}),e.jsxs("div",{className:"flex flex-row flex-wrap gap-1 mx-2 mb-2 justify-end items-center",children:[e.jsx("span",{className:"badge badge-soft badge-ghost cursor-default tooltip","data-tip":p(h=>h.lqi),children:e.jsx(Ne,{value:n.linkquality})}),e.jsx("span",{className:"badge badge-soft badge-ghost cursor-default tooltip","data-tip":p(h=>h.power),children:e.jsx(ye,{device:l,batteryPercent:n.battery,batteryState:n.battery_state,batteryLow:n.battery_low,showLevel:!0})})]})]})}),Le=a=>a?.data?e.jsx(De,{...a.data}):null,ze=d.memo(({sourceIdx:a,group:l})=>{const{t:n}=S("zigbee"),m=d.useCallback(async o=>await te(a,`${l.friendly_name}/set`,{scene_recall:o}),[a,l.friendly_name]);return e.jsx("article",{className:"card bg-base-200 rounded-box shadow-md",children:e.jsxs("div",{className:"card-body p-3",children:[e.jsx("div",{className:"flex flex-row items-center gap-3 w-full",children:e.jsxs("div",{className:"min-w-0",children:[e.jsxs("div",{className:"truncate",children:[n(o=>o.scenes),":"," ",e.jsx($,{to:`/group/${a}/${l.id}/devices`,className:"link link-hover font-semibold",children:l.friendly_name})]}),e.jsx("span",{className:"absolute top-2 right-2",children:e.jsx(W,{idx:a,autoHide:!0})})]})}),e.jsx("div",{className:"flex flex-row flex-wrap gap-1 justify-around items-center",children:l.scenes.map(o=>e.jsx(N,{className:"btn btn-outline btn-primary btn-sm",onClick:m,item:o.id,children:o.name},o.id))})]})})}),He=d.memo(({devices:a,maxRows:l})=>{const{t:n}=S(["common","availability"]),m=E(r=>r.recentActivityFeed),o=d.useMemo(()=>[...new Array(Math.max(0,l-m.length))],[l,m.length]);return e.jsx("section",{className:"card bg-base-100",children:e.jsxs("div",{className:"card-body py-3",children:[e.jsx("h2",{className:"card-title",children:n(r=>r.recent_activity)}),e.jsxs("ul",{className:`grid grid-rows-${l} gap-1 w-full`,children:[m.map(r=>{let p=r.ieeeAddress;return p||(p=a[r.sourceIdx].find(h=>h.friendly_name===r.friendlyName)?.ieee_address),e.jsxs("li",{className:"flex flex-row gap-1 items-center w-full px-1 rounded-field hover:bg-base-200",children:[e.jsxs("div",{className:"text-xs font-semibold opacity-60 min-w-0",children:[e.jsx(W,{idx:r.sourceIdx,autoHide:!0,namePostfix:" –",className:"me-1"}),p?e.jsx($,{to:`/device/${r.sourceIdx}/${p}/info`,className:"link link-hover font-semibold truncate",children:r.friendlyName}):e.jsx("span",{className:"font-semibold truncate",children:r.friendlyName})]}),e.jsx("div",{className:"min-w-0 grow",children:e.jsxs("p",{className:"text-xs text-base-content/60 truncate",children:["— ",r.activity]})}),e.jsx("div",{children:e.jsx("p",{className:"text-xs text-base-content/60",children:r.time})})]},`${r.friendlyName}-${r.sourceIdx}-${r.activity}`)}),o.map((r,p)=>e.jsx("li",{className:"flex flex-row gap-3 items-center",children:e.jsx("div",{className:"w-full font-semibold text-xs text-base-content/0",children:"-"})},`placeholder-${p}`))]})]})})}),Ie=d.memo(({selection:{anchor:a,sourceIdx:l,device:n},onClose:m})=>{const{t:o}=S("zigbee"),r=d.useRef(null),{refs:p,floatingStyles:c,context:h}=we({elements:{reference:a},open:!0,onOpenChange:b=>{b||m()},middleware:[$e(4),Ae({padding:16,crossAxis:!0}),Te({padding:16,crossAxis:!0}),Re({element:r})]}),u=_e(h),f=ke(h,{outsidePress:!0,escapeKey:!0}),{getFloatingProps:i}=Ee([u,f]),j=d.useMemo(()=>le(n),[n]),s=d.useCallback(async b=>await te(l,`${n.friendly_name}/set`,{scene_recall:b}),[l,n.friendly_name]),A=n.description??n.definition?.description;return e.jsx(Ce,{children:e.jsxs("aside",{ref:p.setFloating,style:c,...i({className:"card bg-base-200 shadow-lg border border-base-300 w-[min(32rem,calc(100vw-2.5rem))] max-h-[80vh] z-11"}),children:[e.jsxs("div",{className:"card-body p-3 gap-2 w-full h-full overflow-hidden",children:[e.jsxs("header",{className:"flex items-start justify-between gap-3",children:[e.jsxs("div",{className:"min-w-0",children:[e.jsx($,{to:`/device/${l}/${n.ieee_address}/info`,className:"truncate link link-hover font-semibold text-lg",children:n.friendly_name}),e.jsx("p",{className:"truncate text-sm opacity-60",children:A}),e.jsx("span",{className:"badge cursor-default tooltip tooltip-bottom","data-tip":o(b=>b.ieee_address),children:n.ieee_address}),e.jsx("span",{className:"badge cursor-default tooltip tooltip-bottom","data-tip":o(b=>b.network_address_hex),children:ne(n.network_address,4)}),e.jsx("span",{className:"badge cursor-default tooltip tooltip-bottom","data-tip":o(b=>b.network_address_dec),children:n.network_address})]}),e.jsx(N,{onClick:m,className:"btn btn-ghost btn-sm",children:e.jsx(g,{icon:re})})]}),j.length>0&&e.jsxs("div",{className:"flex flex-row flex-wrap items-center gap-2",children:[o(b=>b.scenes),":",j.map(b=>e.jsx(N,{className:"btn btn-outline btn-primary btn-sm",onClick:s,item:b.id,children:b.name},b.id))]}),e.jsx("div",{className:"w-full h-full overflow-y-auto rounded-box",style:{scrollbarWidth:"thin"},children:e.jsx(Pe,{sourceIdx:l,device:n})})]}),e.jsx(Se,{ref:r,context:h,className:"fill-base-200 [&>path:first-of-type]:stroke-base-300 [&>path:last-of-type]:stroke-base-300"})]})})});var y=(a=>(a[a.Availability=0]="Availability",a[a.Type=1]="Type",a[a.Lqi=2]="Lqi",a))(y||{});const I=[y.Availability,"offline"],M=[y.Type,"Router"],O=[y.Type,"EndDevice"],G=[y.Type,"GreenPower"],Y=[y.Lqi,50],Me=d.memo(({totalDevices:a,onlineDevices:l,disabledDevices:n,totalInstances:m,onlineInstances:o,routers:r,endDevices:p,gpDevices:c,lowLqiDevices:h,setQuickFilter:u,quickFilter:f})=>{const{t:i}=S(["common","availability","zigbee","settings"]),j=d.useCallback(s=>{s[0]===y.Type?u(f?.[0]===s[0]&&f?.[1]===s[1]?null:s):u(f?.[0]===s[0]?null:s)},[u,f]);return e.jsx("section",{className:"card bg-base-100 w-full",children:e.jsxs("div",{className:"card-body py-3",children:[e.jsx("h2",{className:"card-title",children:i(s=>s.overview)}),e.jsxs("div",{className:"flex flex-row flex-wrap justify-center gap-y-3",children:[oe?e.jsxs("div",{className:"flex flex-row w-48 px-3 py-1 gap-4 justify-center justify-center border-dashed border-e border-current/25 last:border-e-0",children:[e.jsxs("div",{children:[e.jsx("div",{className:"text-sm text-base-content/70",children:i(s=>s.instances)}),e.jsxs("div",{className:`font-semibold text-xl ${o===m?"":"text-error"}`,children:[o," / ",m]}),m>0&&e.jsxs("div",{className:"text-xs text-base-content/50",children:[Math.round(o/m*100),"% ",i(s=>s.online,{ns:"availability"})]})]}),e.jsx("div",{className:"self-center",children:e.jsx($,{to:"/settings/0/health",className:"link text-primary tooltip tooltip-bottom","data-tip":i(s=>s.health,{ns:"settings"}),children:e.jsx(g,{icon:ce,size:"xl"})})})]}):null,e.jsxs("div",{className:"flex flex-row w-48 px-3 py-1 gap-4 justify-center border-dashed border-e border-current/25 last:border-e-0",children:[e.jsxs("div",{children:[e.jsx("div",{className:"text-sm text-base-content/70",children:i(s=>s.devices)}),e.jsxs("div",{className:"font-semibold text-xl",children:[e.jsxs("span",{className:l===a?void 0:"text-error",children:[l," / ",a]}),n>0&&e.jsxs(e.Fragment,{children:[" ",e.jsxs("span",{className:"text-sm text-base-content/75 tooltip tooltip-bottom","data-tip":i(s=>s.disabled),children:["(+",n,")"]})]})]}),a>0&&e.jsxs("div",{className:"text-xs text-base-content/50",children:[Math.round(l/a*100),"% ",i(s=>s.online,{ns:"availability"})]})]}),e.jsx("div",{className:"self-center",children:e.jsx(N,{className:`link tooltip tooltip-bottom ${f?.[0]===I[0]?"text-accent":"text-primary"}`,"data-tip":`${i(s=>s.quick_search)}: ${i(s=>s.offline,{ns:"availability"})}`,onClick:j,item:I,children:e.jsxs("span",{className:"fa-layers fa-xl",children:[e.jsx(g,{icon:Z,className:`${f?.[0]===I[0]?"text-accent/60":"text-primary/60"}`}),e.jsx(g,{icon:de,transform:"shrink-5 down-2 right-1"})]})})})]}),e.jsxs("div",{className:"flex flex-row w-48 px-3 py-1 gap-4 justify-center border-dashed border-e border-current/25 last:border-e-0",children:[e.jsxs("div",{children:[e.jsx("div",{className:"text-sm text-base-content/70",children:i(s=>s.Router,{ns:"zigbee"})}),e.jsx("div",{className:"font-semibold text-xl",children:r})]}),e.jsx("div",{className:"self-center",children:e.jsx(N,{className:`link tooltip tooltip-bottom ${f?.[0]===M[0]&&f[1]===M[1]?"text-accent":"text-primary"}`,"data-tip":`${i(s=>s.quick_search)}: ${i(s=>s.Router,{ns:"zigbee"})}`,onClick:j,item:M,children:e.jsx(g,{icon:me,size:"xl"})})})]}),e.jsxs("div",{className:"flex flex-row w-48 px-3 py-1 gap-4 justify-center border-dashed border-e border-current/25 last:border-e-0",children:[e.jsxs("div",{children:[e.jsx("div",{className:"text-sm text-base-content/70",children:i(s=>s.EndDevice,{ns:"zigbee"})}),e.jsx("div",{className:"font-semibold text-xl",children:p})]}),e.jsx("div",{className:"self-center",children:e.jsx(N,{className:`link tooltip tooltip-bottom ${f?.[0]===O[0]&&f[1]===O[1]?"text-accent":"text-primary"}`,"data-tip":`${i(s=>s.quick_search)}: ${i(s=>s.EndDevice,{ns:"zigbee"})}`,onClick:j,item:O,children:e.jsx(g,{icon:xe,size:"xl"})})})]}),c>0&&e.jsxs("div",{className:"flex flex-row w-48 px-3 py-1 gap-4 justify-center border-dashed border-e border-current/25 last:border-e-0",children:[e.jsx("div",{children:e.jsxs("div",{className:"text-sm text-base-content/70",children:[i(s=>s.Router,{ns:"zigbee"})," - ",i(s=>s.GreenPower,{ns:"zigbee"})]})}),e.jsx("div",{className:"font-semibold text-xl",children:c}),e.jsx("div",{className:"self-center",children:e.jsx(N,{className:`link tooltip tooltip-bottom ${f?.[0]===G[0]&&f[1]===G[1]?"text-accent":"text-primary"}`,"data-tip":`${i(s=>s.quick_search)}: ${i(s=>s.GreenPower,{ns:"zigbee"})}`,onClick:j,item:G,children:e.jsx(g,{icon:fe,size:"xl"})})})]}),h>0&&e.jsxs("div",{className:"flex flex-row w-48 px-3 py-1 gap-4 justify-center border-dashed border-e border-current/25 last:border-e-0",children:[e.jsxs("div",{children:[e.jsx("div",{className:"text-sm text-base-content/70",children:i(s=>s.low_lqi,{ns:"zigbee"})}),e.jsx("div",{className:"font-semibold text-xl text-error",children:h}),e.jsx("div",{className:"text-xs text-base-content/50",children:"< 50"})]}),e.jsx("div",{className:"self-center",children:e.jsx(N,{className:`link tooltip tooltip-bottom ${f?.[0]===Y[0]?"text-accent":"text-primary"}`,"data-tip":`${i(s=>s.quick_search)}: ${i(s=>s.low_lqi,{ns:"zigbee"})}`,onClick:j,item:Y,children:e.jsxs("span",{className:"fa-layers fa-xl",children:[e.jsx(g,{icon:Z,className:`${f?.[0]===Y[0]?"text-accent/60":"text-primary/60"}`}),e.jsx(g,{icon:be,transform:"shrink-4 down-2"})]})})})]})]})]})})});function ls(){const a=E(t=>t.readyStates),l=E(t=>t.groups),n=E(t=>t.devices),m=E(t=>t.deviceStates),o=E(t=>t.availability),r=E(t=>t.bridgeInfo),p=ue(),[c,h]=d.useState(k.get(z,null)),[u,f]=d.useState(k.get(Q,!0)),[i,j]=d.useState(k.get(ee,!0)),[s,A]=d.useState(void 0);d.useEffect(()=>{c==null?k.remove(z):k.set(z,c)},[c]),d.useEffect(()=>{k.set(Q,u)},[u]),d.useEffect(()=>{k.set(ee,i)},[i]);const b=d.useCallback((t,v,w)=>{A(T=>T?.device.ieee_address===v.ieee_address?void 0:{anchor:w,sourceIdx:t,device:v})},[]),R=d.useMemo(()=>{const t=[];let v=0,w=0,T=0,B=0,K=0,U=0,V=0,F=0,J=0;for(let x=0;x<se.length;x++){B+=1,a[x]===WebSocket.OPEN&&(K+=1);const P=r[x].config.advanced.last_seen,ie=r[x].config.availability.enabled;for(const _ of n[x]){if(_.type==="Coordinator")continue;switch(_.type){case"Router":U+=1;break;case"EndDevice":V+=1;break;case"GreenPower":F+=1;break}const D=m[x][_.friendly_name]??{};let L="disabled";if(_.disabled)T+=1;else{v+=1;const X=r[x].config.devices[_.ieee_address]?.availability;L=(X!=null?!!X:void 0)??ie?o[x][_.friendly_name]?.state??"offline":"disabled",L==="online"&&(w+=1)}typeof D.linkquality=="number"&&D.linkquality<50&&(J+=1),t.push({sourceIdx:x,device:_,deviceState:D,deviceAvailability:L,lastSeenConfig:P,onClick:b})}}t.sort((x,P)=>x.device.friendly_name.localeCompare(P.device.friendly_name));let C=[];if(c!=null)switch(c[0]){case y.Availability:{C=t.filter(x=>x.deviceAvailability===c[1]);break}case y.Type:{C=t.filter(x=>x.device.type===c[1]);break}case y.Lqi:{C=t.filter(x=>typeof x.deviceState.linkquality=="number"&&x.deviceState.linkquality<c[1]);break}}else C=t;return{counters:{totalDevices:v,onlineDevices:w,disabledDevices:T,totalInstances:B,onlineInstances:K,routers:U,endDevices:V,gpDevices:F,lowLqiDevices:J},deviceData:t,filteredDeviceData:C}},[n,m,r,o,a,c,b]),q=d.useMemo(()=>{const t=[];if(!i)return t;for(let v=0;v<se.length;v++)for(const w of l[v])w.scenes.length!==0&&t.push({sourceIdx:v,group:w});return t},[i,l]),ae=Math.min(he,R.counters.totalDevices);return e.jsxs(e.Fragment,{children:[e.jsxs(pe,{children:[e.jsxs("span",{className:"text-sm",children:[H(t=>t.show),": "]}),e.jsx(N,{className:`btn btn-outline btn-sm ${u?"btn-active":""}`,onClick:f,item:!u,children:H(t=>t.recent_activity)}),e.jsx(N,{className:`btn btn-outline btn-sm ${i?"btn-active":""}`,onClick:j,item:!i,children:H(t=>t.group_scenes)})]}),e.jsxs("div",{className:"flex flex-col mb-5",children:[e.jsx(Me,{...R.counters,setQuickFilter:h,quickFilter:c}),u&&e.jsx(He,{devices:n,maxRows:ae}),e.jsx("div",{className:"divider m-0 mb-1"}),q.length>0&&e.jsx("section",{className:"mb-4 flex flex-row flex-wrap justify-center gap-2",children:q.map(t=>e.jsx(ze,{...t},t.group.id))}),e.jsx(je,{useWindowScroll:!0,columnCount:p,data:R.filteredDeviceData,ItemContent:Le,className:"gap-2 select-none"},`device-tiles-${c?.[0]}-${c?.[1]}`),s&&e.jsx(Ie,{selection:s,onClose:()=>A(void 0)})]})]})}export{ls as default};
Binary file
@@ -1 +0,0 @@
1
- import{l as t,at as e,j as o,F as a,a0 as r}from"./index-O2DLxYbj.js";function i({children:s}){return t.get(e,!1)?null:o.jsxs("div",{className:"alert alert-info alert-soft mb-2",role:"alert",children:[o.jsx(a,{icon:r,size:"2xl"}),s]})}export{i as I};
Binary file
Binary file
Binary file
@@ -1 +0,0 @@
1
- import{r as a,j as s,F as m}from"./index-O2DLxYbj.js";import{b as n}from"./index-BnCNGENq.js";import{D as e}from"./DisplayValue-BZ-eaAKu.js";const x=a.memo(({value:o})=>{const[t,r]=n(o);return s.jsxs(s.Fragment,{children:[s.jsx(m,{icon:t,className:r})," ",s.jsx(e,{value:o,name:"linkquality"})]})});export{x as L};
Binary file