zigbee2mqtt-windfront 1.2.0 → 1.2.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.
- package/dist/assets/{About-DgyWDvfB.js → About-Bzn4phMf.js} +1 -1
- package/dist/assets/About-Bzn4phMf.js.br +0 -0
- package/dist/assets/Availability-t6lZj-iw.js +1 -0
- package/dist/assets/Availability-t6lZj-iw.js.br +0 -0
- package/dist/assets/{Bind-CtiVyvbM.js → Bind-Dc9kHm7v.js} +1 -1
- package/dist/assets/Bind-Dc9kHm7v.js.br +0 -0
- package/dist/assets/{Bridge-BI9I1zH0.js → Bridge-CxXyKguB.js} +1 -1
- package/dist/assets/Bridge-CxXyKguB.js.br +0 -0
- package/dist/assets/{CheckboxField-BE2uJYM6.js → CheckboxField-DKhAwA85.js} +1 -1
- package/dist/assets/CheckboxField-DKhAwA85.js.br +0 -0
- package/dist/assets/{ClusterSinglePicker-DPQKAzs_.js → ClusterSinglePicker-Ca3Cu42z.js} +1 -1
- package/dist/assets/ClusterSinglePicker-Ca3Cu42z.js.br +0 -0
- package/dist/assets/{Clusters-DoweqlQ-.js → Clusters-D9hrSHnT.js} +1 -1
- package/dist/assets/Clusters-D9hrSHnT.js.br +0 -0
- package/dist/assets/Dashboard-D6AjCbfe.js +1 -0
- package/dist/assets/Dashboard-D6AjCbfe.js.br +0 -0
- package/dist/assets/DashboardFeatureWrapper-CWbT-TyR.js +1 -0
- package/dist/assets/DashboardFeatureWrapper-CWbT-TyR.js.br +0 -0
- package/dist/assets/{DebouncedInput-C7mHBKJ8.js → DebouncedInput-DnWGzIEH.js} +1 -1
- package/dist/assets/DebouncedInput-DnWGzIEH.js.br +0 -0
- package/dist/assets/{DevConsole-BUJlOeJk.js → DevConsole-Bodnafv_.js} +1 -1
- package/dist/assets/DevConsole-Bodnafv_.js.br +0 -0
- package/dist/assets/{DevConsole-CCuEOD5s.js → DevConsole-DVk6LYDZ.js} +1 -1
- package/dist/assets/DevConsole-DVk6LYDZ.js.br +0 -0
- package/dist/assets/DeviceCard-Bz1iBm0H.js +1 -0
- package/dist/assets/DeviceCard-Bz1iBm0H.js.br +0 -0
- package/dist/assets/{DeviceControlEditName-iOMTHG5Y.js → DeviceControlEditName-CIF4s9nK.js} +1 -1
- package/dist/assets/DeviceControlEditName-CIF4s9nK.js.br +0 -0
- package/dist/assets/DeviceImage-D-FjKeE6.js +1 -0
- package/dist/assets/DeviceImage-D-FjKeE6.js.br +0 -0
- package/dist/assets/{DeviceInfo-BdupmLjM.js → DeviceInfo-736faFET.js} +1 -1
- package/dist/assets/DeviceInfo-736faFET.js.br +0 -0
- package/dist/assets/{DevicePage-Vwrptzvx.js → DevicePage-ByjIn2KO.js} +2 -2
- package/dist/assets/DevicePage-ByjIn2KO.js.br +0 -0
- package/dist/assets/{DevicePicker-ov0gnVoi.js → DevicePicker-_CY2TskL.js} +1 -1
- package/dist/assets/DevicePicker-_CY2TskL.js.br +0 -0
- package/dist/assets/DeviceSettings-CZqhT3Vo.js +1 -0
- package/dist/assets/DeviceSettings-CZqhT3Vo.js.br +0 -0
- package/dist/assets/{DeviceSpecificSettings-uh-HwgqP.js → DeviceSpecificSettings-DIaLmFsZ.js} +1 -1
- package/dist/assets/DeviceSpecificSettings-DIaLmFsZ.js.br +0 -0
- package/dist/assets/Devices-DUPFbo5z.js +1 -0
- package/dist/assets/Devices-DUPFbo5z.js.br +0 -0
- package/dist/assets/DevicesPage-ujDxwM3e.js +1 -0
- package/dist/assets/DevicesPage-ujDxwM3e.js.br +0 -0
- package/dist/assets/{DisplayValue-Beucehnn.js → DisplayValue-B5Rw3jLu.js} +1 -1
- package/dist/assets/DisplayValue-B5Rw3jLu.js.br +0 -0
- package/dist/assets/{Donate-COo6hmUa.js → Donate-Dj2gLttt.js} +1 -1
- package/dist/assets/Donate-Dj2gLttt.js.br +0 -0
- package/dist/assets/{EndpointPicker-CXLotsVN.js → EndpointPicker-Bik90BnT.js} +1 -1
- package/dist/assets/EndpointPicker-Bik90BnT.js.br +0 -0
- package/dist/assets/{Exposes-Cr1tyQmV.js → Exposes-OHqD_-Hv.js} +1 -1
- package/dist/assets/Exposes-OHqD_-Hv.js.br +2 -0
- package/dist/assets/Feature-VsMzzVJz.js +1 -0
- package/dist/assets/Feature-VsMzzVJz.js.br +0 -0
- package/dist/assets/{Frontend-CikxfpKV.js → Frontend-BjIugJEJ.js} +1 -1
- package/dist/assets/Frontend-BjIugJEJ.js.br +0 -0
- package/dist/assets/{GroupPage-00A4xdiI.js → GroupPage-BsnK7oWM.js} +2 -2
- package/dist/assets/GroupPage-BsnK7oWM.js.br +0 -0
- package/dist/assets/{GroupSettings-1CJfLaCH.js → GroupSettings-8js0C39v.js} +1 -1
- package/dist/assets/GroupSettings-8js0C39v.js.br +0 -0
- package/dist/assets/Groups-CCx1QUBg.js +1 -0
- package/dist/assets/Groups-CCx1QUBg.js.br +0 -0
- package/dist/assets/GroupsPage-BhVRtjWf.js +1 -0
- package/dist/assets/GroupsPage-BhVRtjWf.js.br +0 -0
- package/dist/assets/{Health-LUtfSTPl.js → Health-CKhCvWTS.js} +1 -1
- package/dist/assets/Health-CKhCvWTS.js.br +0 -0
- package/dist/assets/{HomePage-Btp2tHF6.js → HomePage-wRiJ3XSz.js} +1 -1
- package/dist/assets/HomePage-wRiJ3XSz.js.br +0 -0
- package/dist/assets/{InputField-DCkeC8F5.js → InputField-CYbmpJqW.js} +1 -1
- package/dist/assets/InputField-CYbmpJqW.js.br +0 -0
- package/dist/assets/{LastSeen-BCk3tP-Y.js → LastSeen-CvhRQlEh.js} +1 -1
- package/dist/assets/LastSeen-CvhRQlEh.js.br +1 -0
- package/dist/assets/{LogsPage-BOpboBjY.js → LogsPage-SpfGhzXx.js} +1 -1
- package/dist/assets/LogsPage-SpfGhzXx.js.br +0 -0
- package/dist/assets/{Lqi-B5_BH_e-.js → Lqi-CoNVuBvb.js} +1 -1
- package/dist/assets/Lqi-CoNVuBvb.js.br +0 -0
- package/dist/assets/{NetworkPage-BcHYfNai.js → NetworkPage-pOMHA_Ra.js} +2 -2
- package/dist/assets/NetworkPage-pOMHA_Ra.js.br +0 -0
- package/dist/assets/{NumberField-lvLxfvCU.js → NumberField-DVRroIAm.js} +1 -1
- package/dist/assets/NumberField-DVRroIAm.js.br +0 -0
- package/dist/assets/OtaPage-9fPGNESZ.js +1 -0
- package/dist/assets/OtaPage-9fPGNESZ.js.br +0 -0
- package/dist/assets/{PowerSource-DqdctI_P.js → PowerSource-DgFKG_xU.js} +1 -1
- package/dist/assets/PowerSource-DgFKG_xU.js.br +0 -0
- package/dist/assets/{RawNetworkData-MNv4MZ4s.js → RawNetworkData-B1pJ3MXI.js} +1 -1
- package/dist/assets/RawNetworkData-B1pJ3MXI.js.br +0 -0
- package/dist/assets/{RawNetworkMap-ys7aaXo1.js → RawNetworkMap-Cvt65_FK.js} +1 -1
- package/dist/assets/RawNetworkMap-Cvt65_FK.js.br +0 -0
- package/dist/assets/{RecallRemove-B8jWvJxI.js → RecallRemove-C7or_UUw.js} +1 -1
- package/dist/assets/RecallRemove-C7or_UUw.js.br +0 -0
- package/dist/assets/{Reporting-D7xIqQEI.js → Reporting-JJt-aW2u.js} +1 -1
- package/dist/assets/Reporting-JJt-aW2u.js.br +0 -0
- package/dist/assets/Scene-CvuDpnvP.js +1 -0
- package/dist/assets/Scene-CvuDpnvP.js.br +0 -0
- package/dist/assets/{SelectField-1O9grfYD.js → SelectField-DfdnxD7O.js} +1 -1
- package/dist/assets/SelectField-DfdnxD7O.js.br +0 -0
- package/dist/assets/{Settings-DD7_dD9z.js → Settings-BjCQ4C8J.js} +1 -1
- package/dist/assets/Settings-BjCQ4C8J.js.br +0 -0
- package/dist/assets/{SettingsList-DMDmHfS-.js → SettingsList-m7AYDAw4.js} +1 -1
- package/dist/assets/SettingsList-m7AYDAw4.js.br +0 -0
- package/dist/assets/{SettingsPage-CpmLVhDq.js → SettingsPage-9ceAvJ2A.js} +2 -2
- package/dist/assets/SettingsPage-9ceAvJ2A.js.br +0 -0
- package/dist/assets/{State-DnmWu73w.js → State-DwJDwttn.js} +1 -1
- package/dist/assets/State-DwJDwttn.js.br +0 -0
- package/dist/assets/{Table-CHaSwsCb.js → Table-BQc_g_eJ.js} +2 -2
- package/dist/assets/Table-BQc_g_eJ.js.br +0 -0
- package/dist/assets/{TextareaField-BbOsusbU.js → TextareaField-Xo9B_w91.js} +1 -1
- package/dist/assets/TextareaField-Xo9B_w91.js.br +0 -0
- package/dist/assets/{Tools-BBioT6my.js → Tools-Cjm0CrsG.js} +1 -1
- package/dist/assets/Tools-Cjm0CrsG.js.br +0 -0
- package/dist/assets/TouchlinkPage-Be0g7f2j.js +1 -0
- package/dist/assets/TouchlinkPage-Be0g7f2j.js.br +0 -0
- package/dist/assets/{VendorLink-tKv1Ms14.js → VendorLink-D24n6LN-.js} +1 -1
- package/dist/assets/VendorLink-D24n6LN-.js.br +0 -0
- package/dist/assets/{_createCompounder-DqDEDMcN.js → _createCompounder-CbLsIfEE.js} +1 -1
- package/dist/assets/_createCompounder-CbLsIfEE.js.br +0 -0
- package/dist/assets/{capitalize-Cq5sVmfS.js → capitalize-C89IAw35.js} +1 -1
- package/dist/assets/capitalize-C89IAw35.js.br +0 -0
- package/dist/assets/{format-eWM0FM-u.js → format-6Yb6jWnA.js} +1 -1
- package/dist/assets/format-6Yb6jWnA.js.br +0 -0
- package/dist/assets/index-DtyjNqrf.js +635 -0
- package/dist/assets/index-DtyjNqrf.js.br +0 -0
- package/dist/assets/index-EwioJBcA.css +1 -0
- package/dist/assets/index-EwioJBcA.css.br +0 -0
- package/dist/assets/index-Q3KOJDn9.js +1 -0
- package/dist/assets/index-Q3KOJDn9.js.br +2 -0
- package/dist/assets/{jszip.min-5BMZ56Hu.js → jszip.min-DEwtIh7I.js} +1 -1
- package/dist/assets/jszip.min-DEwtIh7I.js.br +0 -0
- package/dist/assets/snakeCase-DmoQhYQA.js +1 -0
- package/dist/assets/snakeCase-DmoQhYQA.js.br +0 -0
- package/dist/index.html +2 -2
- package/dist/index.html.br +0 -0
- package/package.json +3 -3
- package/dist/assets/About-DgyWDvfB.js.br +0 -0
- package/dist/assets/Availability-Bd4eFrIW.js +0 -1
- package/dist/assets/Availability-Bd4eFrIW.js.br +0 -0
- package/dist/assets/Bind-CtiVyvbM.js.br +0 -0
- package/dist/assets/Bridge-BI9I1zH0.js.br +0 -2
- package/dist/assets/CheckboxField-BE2uJYM6.js.br +0 -1
- package/dist/assets/ClusterSinglePicker-DPQKAzs_.js.br +0 -0
- package/dist/assets/Clusters-DoweqlQ-.js.br +0 -0
- package/dist/assets/Dashboard-BBV5Of7y.js +0 -1
- package/dist/assets/Dashboard-BBV5Of7y.js.br +0 -0
- package/dist/assets/DashboardFeatureWrapper-DyHMfT1k.js +0 -1
- package/dist/assets/DashboardFeatureWrapper-DyHMfT1k.js.br +0 -3
- package/dist/assets/DebouncedInput-C7mHBKJ8.js.br +0 -0
- package/dist/assets/DevConsole-BUJlOeJk.js.br +0 -0
- package/dist/assets/DevConsole-CCuEOD5s.js.br +0 -0
- package/dist/assets/DeviceCard-Dwynhf4j.js +0 -1
- package/dist/assets/DeviceCard-Dwynhf4j.js.br +0 -0
- package/dist/assets/DeviceControlEditName-iOMTHG5Y.js.br +0 -0
- package/dist/assets/DeviceImage-DnR6dgTB.js +0 -1
- package/dist/assets/DeviceImage-DnR6dgTB.js.br +0 -0
- package/dist/assets/DeviceInfo-BdupmLjM.js.br +0 -0
- package/dist/assets/DevicePage-Vwrptzvx.js.br +0 -0
- package/dist/assets/DevicePicker-ov0gnVoi.js.br +0 -0
- package/dist/assets/DeviceSettings-BpVsyHbe.js +0 -1
- package/dist/assets/DeviceSettings-BpVsyHbe.js.br +0 -0
- package/dist/assets/DeviceSpecificSettings-uh-HwgqP.js.br +0 -0
- package/dist/assets/Devices-0UzhbChe.js +0 -1
- package/dist/assets/Devices-0UzhbChe.js.br +0 -0
- package/dist/assets/DevicesPage-Ce8JwJ4B.js +0 -1
- package/dist/assets/DevicesPage-Ce8JwJ4B.js.br +0 -0
- package/dist/assets/DisplayValue-Beucehnn.js.br +0 -0
- package/dist/assets/Donate-COo6hmUa.js.br +0 -0
- package/dist/assets/EndpointPicker-CXLotsVN.js.br +0 -4
- package/dist/assets/Exposes-Cr1tyQmV.js.br +0 -0
- package/dist/assets/Feature-BbFY4SLv.js +0 -1
- package/dist/assets/Feature-BbFY4SLv.js.br +0 -0
- package/dist/assets/Frontend-CikxfpKV.js.br +0 -0
- package/dist/assets/GroupPage-00A4xdiI.js.br +0 -0
- package/dist/assets/GroupSettings-1CJfLaCH.js.br +0 -0
- package/dist/assets/Groups-B9Q-E7KA.js +0 -1
- package/dist/assets/Groups-B9Q-E7KA.js.br +0 -0
- package/dist/assets/GroupsPage-BBIQGoG2.js +0 -1
- package/dist/assets/GroupsPage-BBIQGoG2.js.br +0 -0
- package/dist/assets/Health-LUtfSTPl.js.br +0 -0
- package/dist/assets/HomePage-Btp2tHF6.js.br +0 -0
- package/dist/assets/InputField-DCkeC8F5.js.br +0 -0
- package/dist/assets/LastSeen-BCk3tP-Y.js.br +0 -0
- package/dist/assets/LogsPage-BOpboBjY.js.br +0 -0
- package/dist/assets/Lqi-B5_BH_e-.js.br +0 -0
- package/dist/assets/NetworkPage-BcHYfNai.js.br +0 -0
- package/dist/assets/NumberField-lvLxfvCU.js.br +0 -0
- package/dist/assets/OtaPage-BI7zaM5x.js +0 -1
- package/dist/assets/OtaPage-BI7zaM5x.js.br +0 -0
- package/dist/assets/PowerSource-DqdctI_P.js.br +0 -0
- package/dist/assets/RawNetworkData-MNv4MZ4s.js.br +0 -0
- package/dist/assets/RawNetworkMap-ys7aaXo1.js.br +0 -0
- package/dist/assets/RecallRemove-B8jWvJxI.js.br +0 -0
- package/dist/assets/Reporting-D7xIqQEI.js.br +0 -0
- package/dist/assets/Scene-KZ_53D9d.js +0 -1
- package/dist/assets/Scene-KZ_53D9d.js.br +0 -0
- package/dist/assets/SelectField-1O9grfYD.js.br +0 -1
- package/dist/assets/Settings-DD7_dD9z.js.br +0 -0
- package/dist/assets/SettingsList-DMDmHfS-.js.br +0 -0
- package/dist/assets/SettingsPage-CpmLVhDq.js.br +0 -0
- package/dist/assets/State-DnmWu73w.js.br +0 -0
- package/dist/assets/Table-CHaSwsCb.js.br +0 -0
- package/dist/assets/TextareaField-BbOsusbU.js.br +0 -0
- package/dist/assets/Tools-BBioT6my.js.br +0 -0
- package/dist/assets/TouchlinkPage-ETKr5Ewc.js +0 -1
- package/dist/assets/TouchlinkPage-ETKr5Ewc.js.br +0 -3
- package/dist/assets/VendorLink-tKv1Ms14.js.br +0 -0
- package/dist/assets/_createCompounder-DqDEDMcN.js.br +0 -0
- package/dist/assets/capitalize-Cq5sVmfS.js.br +0 -0
- package/dist/assets/format-eWM0FM-u.js.br +0 -1
- package/dist/assets/index-B4xkyr03.js +0 -635
- package/dist/assets/index-B4xkyr03.js.br +0 -0
- package/dist/assets/index-M1ypebku.js +0 -1
- package/dist/assets/index-M1ypebku.js.br +0 -1
- package/dist/assets/index-Ptfb36CP.css +0 -1
- package/dist/assets/index-Ptfb36CP.css.br +0 -0
- package/dist/assets/jszip.min-5BMZ56Hu.js.br +0 -0
- package/dist/assets/snakeCase-BeE7k_0H.js +0 -1
- package/dist/assets/snakeCase-BeE7k_0H.js.br +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
import{b as P,r as o,s as e,H as x,v as g,
|
|
1
|
+
import{b as P,r as o,s as e,H as x,v as g,bV as h,bW as f,E as b,aL as E,aM as N,aN as w,aO as j,bX as F,bY as H,D as W,bZ as q,b_ as B,j as t,R as k}from"./index-DtyjNqrf.js";import{C as G}from"./CheckboxField-DKhAwA85.js";import{I as y}from"./InputField-CYbmpJqW.js";import{N as T}from"./NumberField-DVRroIAm.js";import{S as n}from"./SelectField-DfdnxD7O.js";import"./envs-DFlyG_dH.js";function Q(){const{t:s}=P(["settings","navbar","network","common"]),[r,S]=o.useState(e.get(x,"devices")),[l,M]=o.useState(e.get(g,!1)),[i,D]=o.useState(e.get(h,254)),[c,C]=o.useState(e.get(f,4)),[m,O]=o.useState(e.get(b,"data")),[d,A]=o.useState(e.get(E,"forceDirected2d")),[u,K]=o.useState(e.get(N,"all")),[p,Y]=o.useState(e.get(w,-750)),[_,L]=o.useState(e.get(j,50));o.useEffect(()=>{e.set(x,r)},[r]),o.useEffect(()=>{e.set(g,l)},[l]),o.useEffect(()=>{e.set(h,i)},[i]),o.useEffect(()=>{e.set(f,c)},[c]),o.useEffect(()=>{e.set(b,m)},[m]),o.useEffect(()=>{e.set(E,d)},[d]),o.useEffect(()=>{e.set(N,u)},[u]),o.useEffect(()=>{e.set(w,p)},[p]),o.useEffect(()=>{e.set(j,_)},[_]);const I=o.useCallback(()=>{e.remove(F),e.remove(x),e.remove(g),e.remove(h),e.remove(f),e.remove(b),e.remove(E),e.remove(N),e.remove(w),e.remove(j),e.remove(H),e.remove(W),e.remove("all-devices-column-visibility"),e.remove("all-groups-column-visibility"),e.remove("ota-devices-column-visibility"),e.remove("touchlink-devices-column-visibility"),e.remove("health-devices-column-visibility"),window.location.reload()},[]),R=o.useCallback(()=>{e.remove(q),e.remove(B),window.location.reload()},[]);return t.jsxs(t.Fragment,{children:[t.jsxs("div",{className:"alert alert-info alert-vertical sm:alert-horizontal",children:[s("frontend_notice"),t.jsxs("div",{className:"flex flex-row flex-wrap gap-2",children:[t.jsx(k,{className:"btn btn-sm btn-error",onClick:I,title:s("reset_settings"),modalDescription:s("common:dialog_confirmation_prompt"),modalCancelLabel:s("common:cancel"),children:s("reset_settings")}),t.jsx(k,{className:"btn btn-sm btn-error",onClick:R,title:s("reset_auth"),modalDescription:s("common:dialog_confirmation_prompt"),modalCancelLabel:s("common:cancel"),children:s("reset_auth")})]})]}),t.jsxs("div",{className:"flex flex-row flex-wrap gap-4 mt-3",children:[t.jsxs(n,{name:"homepage",label:s("homepage"),onChange:a=>!a.target.validationMessage&&S(a.target.value),value:r,required:!0,children:[t.jsx("option",{value:"devices",children:s("navbar:devices")}),t.jsx("option",{value:"dashboard",children:s("navbar:dashboard")})]}),t.jsx(G,{name:"dashboard_column_display",label:s("dashboard_column_display"),checked:l,onChange:a=>M(a.target.checked)}),t.jsx(y,{type:"number",name:"permit_join_time",label:s("permit_join_time"),min:10,max:254,required:!0,value:i,onChange:a=>!a.target.validationMessage&&!!a.target.value&&D(a.target.valueAsNumber)}),t.jsx(y,{type:"number",name:"max_on_screen_notifications",label:s("max_on_screen_notifications"),min:1,max:5,required:!0,value:c,onChange:a=>!a.target.validationMessage&&!!a.target.value&&C(a.target.valueAsNumber)})]}),t.jsx("h2",{className:"text-lg mt-2",children:s("network_raw")}),t.jsx("div",{className:"flex flex-row flex-wrap gap-4",children:t.jsxs(n,{name:"network:display_type",label:s("network:display_type"),onChange:a=>!a.target.validationMessage&&O(a.target.value),value:m,required:!0,children:[t.jsx("option",{value:"data",children:s("network:data")}),t.jsx("option",{value:"map",children:s("network:map")})]})}),t.jsx("h2",{className:"text-lg mt-2",children:s("network_map")}),t.jsxs("div",{className:"flex flex-row flex-wrap gap-4",children:[t.jsxs(n,{name:"network:layout_type",label:s("network:layout_type"),onChange:a=>!a.target.validationMessage&&A(a.target.value),value:d,required:!0,children:[t.jsx("option",{value:"forceDirected2d",children:"forceDirected2d"}),t.jsx("option",{value:"forceDirected3d",children:"forceDirected3d"}),t.jsx("option",{value:"radialOut2d",children:"radialOut2d"}),t.jsx("option",{value:"radialOut3d",children:"radialOut3d"})]}),t.jsxs(n,{name:"network:label_type",label:s("network:label_type"),onChange:a=>!a.target.validationMessage&&K(a.target.value),value:u,required:!0,children:[t.jsx("option",{value:"all",children:"all"}),t.jsx("option",{value:"auto",children:"auto"}),t.jsx("option",{value:"none",children:"none"}),t.jsx("option",{value:"nodes",children:"nodes"}),t.jsx("option",{value:"edges",children:"edges"})]}),t.jsx("div",{className:"min-w-xs",children:t.jsx(T,{name:"network:node_strength",label:s("network:node_strength"),onSubmit:(a,v)=>v&&typeof a=="number"&&Y(a),min:-1e3,max:-100,step:10,defaultValue:p})}),t.jsx("div",{className:"min-w-xs",children:t.jsx(T,{name:"network:link_distance",label:s("network:link_distance"),onSubmit:(a,v)=>v&&typeof a=="number"&&L(a),min:10,max:200,step:5,defaultValue:_})})]})]})}export{Q as default};
|
|
Binary file
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./Devices-
|
|
2
|
-
import{r as n,b as g,j as e,L as f,P as j,F as m,f as v,u as b,d as h,a as _,N as p,o as N,k as w,_ as x}from"./index-
|
|
1
|
+
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./Devices-DUPFbo5z.js","./index-DtyjNqrf.js","./envs-DFlyG_dH.js","./index-EwioJBcA.css","./RecallRemove-C7or_UUw.js","./DashboardFeatureWrapper-CWbT-TyR.js","./Feature-VsMzzVJz.js","./DisplayValue-B5Rw3jLu.js","./_createCompounder-CbLsIfEE.js","./capitalize-C89IAw35.js","./InputField-CYbmpJqW.js","./SelectField-DfdnxD7O.js","./DevicePicker-_CY2TskL.js","./EndpointPicker-Bik90BnT.js","./DeviceCard-Bz1iBm0H.js","./LastSeen-CvhRQlEh.js","./format-6Yb6jWnA.js","./Lqi-CoNVuBvb.js","./PowerSource-DgFKG_xU.js","./snakeCase-DmoQhYQA.js","./DeviceImage-D-FjKeE6.js","./index-Q3KOJDn9.js","./GroupSettings-8js0C39v.js","./SettingsList-m7AYDAw4.js","./CheckboxField-DKhAwA85.js","./NumberField-DVRroIAm.js"])))=>i.map(i=>d[i]);
|
|
2
|
+
import{r as n,b as g,j as e,L as f,P as j,F as m,f as v,u as b,d as h,a as _,N as p,o as N,k as w,_ as x}from"./index-DtyjNqrf.js";import"./envs-DFlyG_dH.js";const y=n.memo(u=>{const{groups:r,currentGroup:t,tab:o="devices"}=u,[c,l]=n.useState(""),{t:s}=g("common"),d=n.useMemo(()=>r.filter(a=>a.friendly_name.toLowerCase().includes(c.toLowerCase())&&a.id!==t?.id).map(a=>e.jsx("li",{children:e.jsx(f,{to:`/group/${a.id}/${o}`,onClick:()=>l(""),className:"dropdown-item",children:a.friendly_name})},a.id)),[r,c,t,o]);return e.jsxs(j,{name:"header-group-selector",buttonChildren:`${t?`#${t.id} - ${t.friendly_name}`:s("unknown_group")}`,dropdownStyle:"dropdown-start",children:[e.jsxs("label",{className:"input",children:[e.jsx(m,{icon:v}),e.jsx("input",{type:"search",placeholder:s("type_to_filter"),onChange:a=>l(a.target.value),value:c})]},"search"),d]})}),T=n.lazy(async()=>await x(()=>import("./Devices-DUPFbo5z.js"),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21]),import.meta.url)),$=n.lazy(async()=>await x(()=>import("./GroupSettings-8js0C39v.js"),__vite__mapDeps([22,1,2,3,23,24,10,25,11]),import.meta.url));function G(){const u=b(),{t:r}=g(["groups","common"]),{groupId:t,tab:o}=h(),c=_(i=>i.groups),l=Number.parseInt(t,10),s=t?c.find(i=>i.id===l):void 0;n.useEffect(()=>{!o&&s&&u(`/group/${s.id}/devices`,{replace:!0})},[o,s,u]);const d=({isActive:i})=>i?"tab tab-active":"tab",a=n.useMemo(()=>{if(!s)return e.jsx("div",{className:"flex-auto justify-center items-center",children:r("common:unknown_group")});switch(o){case"devices":return e.jsx(T,{group:s});case"settings":return e.jsx($,{group:s})}},[o,s,r]);return e.jsxs(e.Fragment,{children:[e.jsx(y,{groups:c,currentGroup:s,tab:o}),e.jsxs("div",{className:"tabs tabs-border mt-2",children:[e.jsxs(p,{to:`/group/${t}/devices`,className:d,children:[e.jsx(m,{icon:N,className:"me-2"}),r("common:devices")]}),e.jsxs(p,{to:`/group/${t}/settings`,className:d,children:[e.jsx(m,{icon:w,className:"me-2"}),r("settings")]})]}),e.jsx("div",{className:"tab-content block h-full bg-base-100 p-3",children:a})]})}export{G as default};
|
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{b as c,a as l,r as i,W as m,j as e,F as p,J as d,
|
|
1
|
+
import{b as c,a as l,r as i,W as m,j as e,F as p,J as d,bL as f}from"./index-DtyjNqrf.js";import{S as g}from"./SettingsList-m7AYDAw4.js";import"./envs-DFlyG_dH.js";import"./CheckboxField-DKhAwA85.js";import"./InputField-CYbmpJqW.js";import"./NumberField-DVRroIAm.js";import"./SelectField-DfdnxD7O.js";function k({group:s}){const{t:n}=c(["settings","common"]),o=l(t=>t.bridgeInfo),{sendMessage:r}=i.useContext(m),a=i.useCallback(async t=>{await r("bridge/request/group/options",{id:s.id.toString(),options:t})},[r,s.id]);return e.jsxs(e.Fragment,{children:[e.jsxs("div",{className:"alert alert-info alert-soft mb-3",role:"alert",children:[e.jsx(p,{icon:d,size:"2xl"}),e.jsx("a",{href:f,target:"_blank",rel:"noreferrer",className:"link link-hover",children:n("common:read_the_docs_info")})]}),e.jsx(g,{schema:o.config_schema.definitions.group??{properties:{}},data:o.config.groups[s.id]??{},set:a})]})}export{k as default};
|
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{r as t,b as _,j as e,a as w,W as C,ah as N,B as k,L as y,R as G,F as S,x as M}from"./index-DtyjNqrf.js";import{E}from"./EndpointPicker-Bik90BnT.js";import{S as I}from"./SelectField-DfdnxD7O.js";import"./envs-DFlyG_dH.js";const q=t.memo(o=>{const{t:r}=_("common"),{groups:a,value:c,label:l,onChange:m,...i}=o,g=t.useCallback(u=>{const{value:d}=u.target,x=Number.parseInt(d,10);m(a.find(b=>x===b.id))},[a,m]),p=t.useMemo(()=>{const u=[];for(const d of a)u.push(e.jsx("option",{value:d.id,children:d.friendly_name},d.id));return u},[a]);return e.jsxs(I,{name:"group_picker",label:l,value:c,onChange:g,...i,children:[e.jsx("option",{value:"",disabled:!0,children:r("select_group")}),p]})});function B({device:o}){const{t:r}=_(["groups","zigbee","common"]),a=w(s=>s.groups),{sendMessage:c}=t.useContext(C),[l,m]=t.useState(""),[i,g]=t.useState(""),p=t.useMemo(()=>N(o),[o]),[u,d]=t.useMemo(()=>{const s=[],n=[];for(const f of a){const j=f.members.filter(h=>h.ieee_address===o.ieee_address);if(j.length>0)for(const h of j)s.push([f,h.endpoint]);else n.push(f)}return[s,n]},[a,o.ieee_address]),x=t.useCallback(s=>{g(s.id),m(p.values().next().value)},[p]),b=t.useCallback(async()=>await c("bridge/request/group/members/add",{group:i.toString(),endpoint:l,device:o.ieee_address}),[c,i,o.ieee_address,l]),v=t.useCallback(async([s,n])=>await c("bridge/request/group/members/remove",{device:o.ieee_address,endpoint:n,group:s.id.toString()}),[c,o.ieee_address]);return e.jsxs(e.Fragment,{children:[e.jsx("div",{className:"flex flex-row flex-wrap justify-around items-start gap-3 my-2",children:e.jsxs("div",{children:[e.jsx("h2",{className:"text-lg font-semibold",children:r("add_to_group")}),e.jsxs("div",{className:"mb-3",children:[e.jsx(q,{label:r("zigbee:group"),value:i,groups:d,onChange:x,required:!0}),e.jsx(E,{label:r("zigbee:endpoint"),values:p,value:l,onChange:s=>m(s),required:!0})]}),e.jsx(k,{onClick:b,className:"btn btn-primary",disabled:l==null||i==null||l===""||i==="",children:r("add_to_group")})]})}),e.jsx("div",{className:"flex flex-row flex-wrap justify-center gap-3 mt-3",children:u.map(([s,n])=>e.jsxs("ul",{className:"w-[23rem] list bg-base-200 rounded-box shadow-md",children:[e.jsxs("li",{className:"list-row grow",children:[e.jsxs("div",{children:[e.jsxs(y,{to:`/group/${s.id}/devices`,className:"link link-hover",children:["#",s.id," - ",s.friendly_name,n?` (${r("endpoint")}: ${n})`:""]}),o.description&&e.jsx("div",{className:"text-xs opacity-50 truncate",title:o.description,children:o.description})]}),e.jsxs("div",{className:"list-col-wrap text-sm w-full gap-2",children:[e.jsxs("div",{className:"badge badge-soft badge-ghost cursor-default me-2",children:[r("group_members"),": ",s.members.length]}),e.jsxs("div",{className:"badge badge-soft badge-ghost cursor-default me-2",children:[r("group_scenes"),": ",s.scenes.length]})]})]}),e.jsx("li",{className:"flex flex-row flex-wrap gap-1 m-4 justify-around items-center",children:e.jsx(G,{item:[s,n],onClick:v,className:"btn btn-square btn-error btn-sm",title:r("remove_from_group"),modalDescription:r("common:dialog_confirmation_prompt"),modalCancelLabel:r("common:cancel"),children:e.jsx(S,{icon:M})})})]},`${s.id}-${n}`))})]})}export{B as default};
|
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{w as g,M as _,b as h,r,j as a,O as N,B as m,a as w,W as C,L as f,F as b,Q as k,R as F,x as S}from"./index-DtyjNqrf.js";import{I as u}from"./InputField-CYbmpJqW.js";import{T as G}from"./Table-BQc_g_eJ.js";import"./envs-DFlyG_dH.js";import"./DebouncedInput-DnWGzIEH.js";const R=g.create(t=>{const{name:i,onRename:o}=t,c=_(),{t:l}=h(["groups","common"]),[s,n]=r.useState(i);return r.useEffect(()=>{n(i)},[i]),a.jsx(N,{isOpen:c.visible,title:`${l("rename_group")} ${i}`,footer:a.jsxs(a.Fragment,{children:[a.jsx(m,{className:"btn btn-neutral",onClick:c.remove,children:l("common:cancel")}),a.jsx(m,{className:"btn btn-primary ms-1",onClick:async()=>{s&&(c.remove(),await o(i,s))},children:l("rename_group")})]}),children:a.jsx("div",{className:"flex flex-col gap-2",children:a.jsx(u,{name:"friendly_name",label:l("common:friendly_name"),onChange:d=>n(d.target.value),value:s,type:"text",required:!0})})})});function $(){const[t,i]=r.useState(""),[o,c]=r.useState(""),l=w(e=>e.groups),{sendMessage:s}=r.useContext(C),{t:n}=h(["groups","common"]),d=r.useCallback(async()=>{const e={friendly_name:t};o&&(e.id=o),await s("bridge/request/group/add",e)},[t,o,s]),p=r.useCallback(async(e,v)=>await s("bridge/request/group/rename",{from:e,to:v}),[s]),x=r.useCallback(async e=>await s("bridge/request/group/remove",{id:e}),[s]),j=r.useMemo(()=>t?!o||!l.find(e=>e.id.toString()===o):!1,[t,o,l]),y=r.useMemo(()=>[{id:"group_id",header:n("group_id"),accessorFn:e=>e.id,cell:({row:{original:e}})=>a.jsxs("div",{className:"flex items-center gap-3",children:[a.jsx("div",{className:"avatar"}),a.jsxs("div",{className:"flex-grow flex flex-col",children:[a.jsx(f,{to:`/group/${e.id}/devices`,className:"link link-hover",children:e.id}),e.description&&a.jsx("div",{className:"max-w-xs text-xs opacity-50 truncate",title:e.description,children:e.description}),a.jsx("div",{className:"flex flex-row gap-1 mt-0.5",children:a.jsxs("span",{className:"badge badge-soft badge-sm badge-ghost cursor-default",children:[n("scenes"),": ",e.scenes?.length??0]})})]})]})},{id:"friendly_name",header:n("common:friendly_name"),accessorFn:e=>e.friendly_name,cell:({row:{original:e}})=>a.jsx(f,{to:`/group/${e.id}/devices`,className:"link link-hover",children:e.friendly_name})},{id:"members",header:n("group_members"),accessorFn:e=>e.members.length??0,enableColumnFilter:!1},{id:"actions",header:"",cell:({row:{original:e}})=>a.jsxs("div",{className:"join join-horizontal",children:[a.jsx(m,{className:"btn btn-square btn-outline btn-primary join-item",onClick:async()=>await g.show(R,{name:e.friendly_name,onRename:p}),title:n("rename_group"),disabled:e.friendly_name==="default_bind_group",children:a.jsx(b,{icon:k})}),a.jsx(F,{title:n("remove_group"),item:e.id.toString(),onClick:x,className:"btn btn-square btn-outline btn-error join-item",modalDescription:n("common:dialog_confirmation_prompt"),modalCancelLabel:n("common:cancel"),children:a.jsx(b,{icon:S})})]}),enableSorting:!1,enableColumnFilter:!1}],[p,x,n]);return a.jsxs(a.Fragment,{children:[a.jsxs("div",{className:"collapse collapse-arrow bg-base-100 shadow mb-3",children:[a.jsx("input",{type:"checkbox"}),a.jsx("div",{className:"collapse-title text-lg font-semibold text-center",children:n("create_group")}),a.jsx("div",{className:"collapse-content",children:a.jsxs("div",{className:"flex flex-row flex-wrap justify-center gap-2",children:[a.jsx(u,{type:"text",name:"friendly_name",label:n("common:friendly_name"),value:t,placeholder:n("friendly_name_placeholder"),onChange:e=>i(e.target.value),required:!0}),a.jsx(u,{type:"number",name:"group_id",label:n("group_id"),value:o,detail:n("common:optional"),min:0,max:255,onChange:e=>c(e.target.value)}),a.jsx(m,{onClick:d,className:"btn btn-primary self-center",disabled:!j,children:n("create_group")})]})})]}),a.jsx(G,{id:"all-groups",columns:y,data:l})]})}export{$ as default};
|
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{b as p,a as d,r as m,j as e,L as u,F as l,J as o,
|
|
1
|
+
import{b as p,a as d,r as m,j as e,L as u,F as l,J as o,a8 as x,bQ as g}from"./index-DtyjNqrf.js";import{D as N}from"./DeviceImage-D-FjKeE6.js";import{T as f}from"./Table-BQc_g_eJ.js";import{f as w}from"./format-6Yb6jWnA.js";import"./envs-DFlyG_dH.js";import"./index-Q3KOJDn9.js";import"./DebouncedInput-DnWGzIEH.js";function z(){const{t:a,i18n:h}=p(["health","settings","common"]),t=d(s=>s.bridgeHealth),i=d(s=>s.devices),v=m.useMemo(()=>{const s=[];if(t)for(const r in t.devices){const n=i.find(_=>_.ieee_address===r);n&&s.push({device:n,health:t.devices[r]})}return s},[t,i]),j=m.useMemo(()=>[{id:"friendly_name",header:a("common:friendly_name"),accessorFn:({device:s})=>[s.friendly_name,s.description,s.ieee_address].join(" "),cell:({row:{original:{device:s}}})=>e.jsxs("div",{className:"flex items-center gap-3",children:[e.jsx("div",{className:"avatar",children:e.jsx("div",{className:"h-11 w-11",style:{overflow:"visible"},children:e.jsx(N,{device:s,disabled:!1})})}),e.jsx("div",{className:"flex flex-col",children:e.jsxs(u,{to:`/device/${s.ieee_address}/info`,className:"link link-hover",children:[s.friendly_name,s.friendly_name!==s.ieee_address?` (${s.ieee_address})`:""]})})]})},{id:"messages",header:a("messages"),accessorFn:({health:s})=>s.messages,enableColumnFilter:!1},{id:"messages_per_sec",header:a("messages_per_sec"),accessorFn:({health:s})=>s.messages_per_sec,enableColumnFilter:!1,cell:({row:{original:{health:s}}})=>e.jsx("span",{className:s.messages_per_sec>1?s.messages_per_sec>3?"text-error":"text-warning":s.messages_per_sec<.2?"text-success":"",children:s.messages_per_sec<=.001?a("very_low"):s.messages_per_sec})},{id:"leave_count",header:a("leave_count"),accessorFn:({health:s})=>s.leave_count,enableColumnFilter:!1},{id:"network_address_changes",header:a("network_address_changes"),accessorFn:({health:s})=>s.network_address_changes,enableColumnFilter:!1}],[a]);if(t.response_time===0)return e.jsxs("div",{className:"alert alert-info alert-soft",role:"alert",children:[e.jsx(l,{icon:o,size:"2xl"}),a("awaiting_next_check")]});const c=new Date(Date.now()-t.process.uptime_sec*1e3);return e.jsxs(e.Fragment,{children:[e.jsxs("div",{className:"alert alert-info alert-soft mb-3",role:"alert",children:[e.jsx(l,{icon:o,size:"2xl"}),a("interview_info")]}),e.jsxs("div",{className:"flex flex-col gap-3 items-center mb-2",children:[e.jsxs("p",{className:"text-sm",children:[a("last_check"),": ",x(new Date(t.response_time))]}),e.jsxs("div",{className:"stats stats-vertical lg:stats-horizontal shadow",children:[e.jsx("div",{className:"stat place-items-center",children:e.jsx("div",{className:"stat-value text-xl",children:a("os")})}),t.os.load_average.some(s=>s!==0)&&e.jsxs("div",{className:"stat place-items-center",children:[e.jsx("div",{className:"stat-title",children:a("load_average")}),e.jsx("div",{className:"stat-value text-lg",children:t.os.load_average.join(", ")}),e.jsx("div",{className:"stat-desc",children:e.jsx("a",{href:"https://www.digitalocean.com/community/tutorials/load-average-in-linux",target:"_blank",rel:"noreferrer",className:"link link-hover",children:"1min, 5min, 15min"})})]}),e.jsxs("div",{className:"stat place-items-center",children:[e.jsx("div",{className:"stat-title",children:a("ram_usage")}),e.jsxs("div",{className:"stat-value text-lg",children:[t.os.memory_percent," %"]}),e.jsxs("div",{className:"stat-desc",children:[t.os.memory_used_mb," MB"]})]})]}),e.jsxs("div",{className:"stats stats-vertical lg:stats-horizontal shadow",children:[e.jsx("div",{className:"stat place-items-center",children:e.jsx("div",{className:"stat-value text-xl",children:a("process")})}),e.jsxs("div",{className:"stat place-items-center",children:[e.jsx("div",{className:"stat-title",children:a("uptime")}),e.jsx("div",{className:"stat-value text-lg",children:w(c,h.language)}),e.jsx("div",{className:"stat-desc",children:x(c)})]}),e.jsxs("div",{className:"stat place-items-center",children:[e.jsx("div",{className:"stat-title",children:a("ram_usage")}),e.jsxs("div",{className:"stat-value text-lg",children:[t.process.memory_percent," %"]}),e.jsxs("div",{className:"stat-desc",children:[t.process.memory_used_mb," MB"]})]})]}),e.jsxs("div",{className:"stats stats-vertical lg:stats-horizontal shadow",children:[e.jsx("div",{className:"stat place-items-center",children:e.jsx("div",{className:"stat-value text-xl",children:a("settings:mqtt")})}),e.jsxs("div",{className:"stat place-items-center",children:[e.jsx("div",{className:"stat-value text-lg",children:e.jsx(l,{icon:g,className:t.mqtt.connected?"text-success":"text-error"})}),e.jsxs("div",{className:"stat-desc",children:[a("queued"),": ",t.mqtt.queued]})]}),e.jsxs("div",{className:"stat place-items-center",children:[e.jsx("div",{className:"stat-title",children:a("published")}),e.jsx("div",{className:"stat-value text-lg",children:t.mqtt.published})]}),e.jsxs("div",{className:"stat place-items-center",children:[e.jsx("div",{className:"stat-title",children:a("received")}),e.jsx("div",{className:"stat-value text-lg",children:t.mqtt.received})]})]})]}),e.jsx(f,{id:"health-devices",columns:j,data:v})]})}export{z as default};
|
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{u as a,r as s,s as t,H as r,j as o}from"./index-
|
|
1
|
+
import{u as a,r as s,s as t,H as r,j as o}from"./index-DtyjNqrf.js";import"./envs-DFlyG_dH.js";function d(){const e=a();return s.useEffect(()=>{e(t.get(r)==="dashboard"?"/dashboard":"/devices",{replace:!0})},[e]),o.jsx("div",{})}export{d as default};
|
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{r as i,j as e}from"./index-
|
|
1
|
+
import{r as i,j as e}from"./index-DtyjNqrf.js";const c=i.memo(s=>{const{label:l,detail:t,onChange:a,onBlur:n,...r}=s;return e.jsxs("fieldset",{className:"fieldset",children:[l&&e.jsx("legend",{className:"fieldset-legend",children:l}),e.jsx("input",{className:`input min-w-xs${s.pattern||s.required?" validator":""}`,onChange:a,onBlur:n,...r}),t&&e.jsx("p",{className:"label",children:t})]})});export{c as I};
|
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{r,b as o,c as m,j as t,
|
|
1
|
+
import{r,b as o,c as m,j as t,a8 as c}from"./index-DtyjNqrf.js";import{f as i}from"./format-6Yb6jWnA.js";const x=r.memo(({lastSeen:s,config:e})=>{const{i18n:n}=o(),a=m(s,e);return a?t.jsx("span",{title:c(a),children:i(a,n.language)}):t.jsx("span",{children:"N/A"})});export{x as L};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
�dtN���6@yB��Ȗ�&�v�]�o�M��l���dz�$��6*��{�b_��J�;���5��?�a7_������K��W`�{�Q����VN�Rz?����ވ�}a�� ���z�dYo\)ݥ����|����F���(lw�JeR�ؽ1�����/�f$#�Y7*�����Ad��
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{r as l,W as w,C as y,a as r,b as N,
|
|
1
|
+
import{r as l,W as w,C as y,a as r,b as N,a3 as S,j as s,a4 as x,F as u,f as k,B as f,y as E,a5 as I,a6 as M,a7 as A,a8 as F}from"./index-DtyjNqrf.js";import{C as G}from"./CheckboxField-DKhAwA85.js";import{D}from"./DebouncedInput-DnWGzIEH.js";import{S as g}from"./SelectField-DfdnxD7O.js";import"./envs-DFlyG_dH.js";const O={error:"bg-error text-error-content",warning:"bg-warning text-warning-content",info:"bg-info text-info-content",debug:"bg-accent text-accent-content opacity-50"};function B(){const{sendMessage:m}=l.useContext(w),[t,d]=l.useState(""),[n,j]=l.useState("all"),[i,L]=l.useState(!1),h=y(),b=r(e=>e.logsLimit),v=r(e=>e.bridgeInfo.config.advanced.log_level),{t:a}=N("logs"),c=r(e=>e.logs),p=l.useMemo(()=>c.filter(e=>(n==="all"||e.level===n)&&(i||!t||e.message.toLowerCase().includes(t.toLowerCase()))),[t,i,n,c]),C=l.useCallback((e,o)=>t&&e.toLowerCase().includes(t.toLowerCase())?O[o]:S[o],[t]),_=l.useCallback(async e=>{await m("bridge/request/options",{options:{advanced:{log_level:e}}})},[m]);return s.jsxs(s.Fragment,{children:[s.jsxs("div",{className:"flex flex-row flex-wrap gap-3 items-top",children:[s.jsxs(g,{name:"log_level",label:a("show_only"),value:n,onChange:e=>j(e.target.value),children:[s.jsx("option",{value:"all",children:"all"},"all"),x.map(e=>s.jsx("option",{value:e,children:e},e))]}),s.jsxs("fieldset",{className:"fieldset",children:[s.jsx("legend",{className:"fieldset-legend",children:a("filter_by_text")}),s.jsxs("div",{className:"join",children:[s.jsxs("label",{className:"input w-64 join-item",children:[s.jsx(u,{icon:k}),s.jsx(D,{className:"",type:"search",onChange:e=>d(e.toString()),placeholder:a("common:search"),value:t})]}),s.jsx(f,{item:"",onClick:d,className:"btn btn-square join-item",title:a("common:clear"),children:s.jsx(u,{icon:E})})]})]}),s.jsx(G,{name:"highlight_only",label:a("highlight_only"),checked:i,onChange:e=>L(e.target.checked)}),s.jsx(g,{name:"log_limit",label:a("logs_limit"),onChange:e=>{h(M(Number.parseInt(e.target.value)))},value:b,children:I.map(e=>s.jsx("option",{value:e,children:e},e))}),s.jsx(f,{onClick:()=>{h(A())},className:"btn btn-primary self-center",disabled:c.length===0,children:a("common:clear")}),s.jsx("div",{className:"ml-auto",children:s.jsx(g,{name:"log_level_config",label:a("log_level_config"),value:v,onChange:e=>!e.target.validationMessage&&_(e.target.value),children:x.map(e=>s.jsx("option",{value:e,children:e},e))})})]}),s.jsx("div",{className:"mockup-code w-full mt-1 mb-3",children:p.length>0?p.map((e,o)=>s.jsx("pre",{"data-prefix":o,className:C(e.message,e.level),children:s.jsxs("code",{children:["[",e.timestamp,"] ",e.message]})},`${e.timestamp}-${e.message}`)):s.jsx("pre",{"data-prefix":"~",children:s.jsxs("code",{children:["[",F(new Date),"] ",a("empty_logs_message")]})})})]})}export{B as default};
|
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{r,j as t,F as i,
|
|
1
|
+
import{r,j as t,F as i,aT as a}from"./index-DtyjNqrf.js";import{D as n}from"./DisplayValue-B5Rw3jLu.js";const x=r.memo(({value:s})=>{let e="";return s&&(s<75?e="text-error":s<125?e="text-warning":s>200&&(e="text-success")),t.jsxs(t.Fragment,{children:[t.jsx(i,{icon:a,className:e})," ",t.jsx("span",{className:e,children:t.jsx(n,{value:s,name:"linkquality"})})]})});export{x as L};
|
|
Binary file
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./RawNetworkData-
|
|
2
|
-
import{C,r as s,W as E,b as R,a as m,s as d,E as h,G as M,I as T,j as e,F as n,J as x,B as z,K as I,i as S,_ as g}from"./index-
|
|
1
|
+
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./RawNetworkData-B1pJ3MXI.js","./index-DtyjNqrf.js","./envs-DFlyG_dH.js","./index-EwioJBcA.css","./DeviceImage-D-FjKeE6.js","./index-Q3KOJDn9.js","./DebouncedInput-DnWGzIEH.js","./PowerSource-DgFKG_xU.js","./snakeCase-DmoQhYQA.js","./_createCompounder-CbLsIfEE.js","./index-BN7eS8uY.js","./Lqi-CoNVuBvb.js","./DisplayValue-B5Rw3jLu.js","./RawNetworkMap-Cvt65_FK.js"])))=>i.map(i=>d[i]);
|
|
2
|
+
import{C,r as s,W as E,b as R,a as m,s as d,E as h,G as M,I as T,j as e,F as n,J as x,B as z,K as I,i as S,_ as g}from"./index-DtyjNqrf.js";import{C as A}from"./CheckboxField-DKhAwA85.js";import{S as f}from"./SelectField-DfdnxD7O.js";import"./envs-DFlyG_dH.js";const D=s.lazy(async()=>await g(()=>import("./RawNetworkData-B1pJ3MXI.js"),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12]),import.meta.url)),F=s.lazy(async()=>await g(()=>import("./RawNetworkMap-Cvt65_FK.js"),__vite__mapDeps([13,1,2,3,10]),import.meta.url));function q(){const o=C(),{sendMessage:u}=s.useContext(E),{t:a}=R(["network","common"]),i=m(t=>t.networkMapIsLoading),r=m(t=>t.networkMap),[l,w]=s.useState("raw"),[c,j]=s.useState(!1),[p,k]=s.useState(d.get(h,"data")),v=s.useCallback(t=>{t.target.value&&w(t.target.value)},[]),y=s.useCallback(t=>{t.target.value&&(d.set(h,t.target.value),k(t.target.value))},[]),b=s.useCallback(t=>{j(t.target.checked)},[]),_=s.useCallback(async()=>{o(M(void 0)),o(T()),await u("bridge/request/networkmap",{type:l,routes:c})},[l,c,o,u]),N=s.useMemo(()=>{if(i)return e.jsxs(e.Fragment,{children:[e.jsx("div",{className:"flex flex-row justify-center items-center gap-2",children:e.jsx("span",{className:"loading loading-infinity loading-xl"})}),e.jsx("div",{className:"flex flex-row justify-center items-center gap-2",children:a("loading")})]});if(r)switch(r.type){case"raw":return p==="data"?e.jsx(D,{map:r.value}):e.jsx(F,{map:r.value});case"graphviz":return e.jsxs(e.Fragment,{children:[e.jsxs("div",{className:"alert alert-info alert-soft mb-3",role:"alert",children:[e.jsx(n,{icon:x,size:"2xl"}),a("copy_paste_on"),e.jsx("a",{href:"https://dreampuf.github.io/GraphvizOnline",target:"_blank",rel:"noreferrer",className:"link link-hover",children:"https://dreampuf.github.io/GraphvizOnline"}),e.jsx("a",{href:"https://edotor.net/",target:"_blank",rel:"noreferrer",className:"link link-hover",children:"https://edotor.net/"})]}),e.jsx("textarea",{className:"textarea w-full",rows:5,readOnly:!0,value:r.value})]});case"plantuml":return e.jsxs(e.Fragment,{children:[e.jsxs("div",{className:"alert alert-info alert-soft mb-3",role:"alert",children:[e.jsx(n,{icon:x,size:"2xl"}),a("copy_paste_on"),e.jsx("a",{href:"https://editor.plantuml.com/uml/",target:"_blank",rel:"noreferrer",className:"link link-hover",children:"https://editor.plantuml.com/uml/"}),e.jsx("a",{href:"https://www.planttext.com/",target:"_blank",rel:"noreferrer",className:"link link-hover",children:"https://www.planttext.com/"})]}),e.jsx("textarea",{className:"textarea w-full",rows:5,readOnly:!0,value:r.value})]})}return null},[r,i,p,a]);return e.jsxs(e.Fragment,{children:[e.jsxs("div",{className:"flex flex-row justify-center gap-3 mb-2",children:[e.jsxs(f,{name:"type",label:a("type"),value:l,onChange:v,children:[e.jsx("option",{value:"raw",children:a("raw")}),e.jsx("option",{value:"graphviz",children:a("graphviz")}),e.jsx("option",{value:"plantuml",children:a("plantuml")})]}),e.jsx(A,{name:"enable_routes",label:a("enable_routes"),checked:c,onChange:b}),e.jsx(z,{className:"btn btn-primary btn-square self-center ms-3 me-6",onClick:_,title:a(r?"reload":"load"),disabled:i,children:r?e.jsx(n,{icon:I}):e.jsx(n,{icon:S})}),l==="raw"&&e.jsxs(f,{name:"display_type",label:a("display_type"),value:p,onChange:y,children:[e.jsx("option",{value:"data",children:a("data")}),e.jsx("option",{value:"map",children:a("map")})]})]}),N]})}export{q as default};
|
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{r as l,j as e}from"./index-
|
|
1
|
+
import{r as l,j as e}from"./index-DtyjNqrf.js";const j=l.memo(a=>{const{label:i,detail:u,onChange:c,onSubmit:m,defaultValue:t,minimal:d,...x}=a,[n,o]=l.useState(t);l.useEffect(()=>{o(t)},[t]);const g=l.useCallback(s=>{o(s.target.value?s.target.valueAsNumber:""),c?.(s)},[c]),r=l.useCallback(s=>{m?.(n,!s.target.validationMessage)},[m,n]);return e.jsxs("fieldset",{className:"fieldset",children:[i&&e.jsx("legend",{className:"fieldset-legend",children:i}),a.min!=null&&a.max!=null&&e.jsxs("div",{className:"w-full max-w-xs",children:[e.jsx("input",{className:"range range-xs range-primary",onChange:g,onTouchEnd:r,onMouseUp:r,...x,type:"range",value:n}),e.jsxs("div",{className:"flex justify-between px-1 mt-1 text-xs",children:[e.jsx("span",{children:a.min}),d&&e.jsx("span",{children:n}),e.jsx("span",{children:a.max})]})]}),!d&&e.jsx("input",{className:`input${a.pattern||a.required?" validator":""}`,onChange:g,onBlur:r,...x,type:"number",value:n}),u&&e.jsx("p",{className:"label whitespace-normal",children:u})]})});export{j as N};
|
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{r as o,b as p,j as s,B as v,F as b,S as N,R as h,T as f,U as $,V as L,a as y,W as D,L as q,X as M}from"./index-DtyjNqrf.js";import{D as z}from"./DeviceImage-D-FjKeE6.js";import{T as A}from"./Table-BQc_g_eJ.js";import{M as U,V as P}from"./VendorLink-D24n6LN-.js";import{P as B}from"./PowerSource-DgFKG_xU.js";import"./envs-DFlyG_dH.js";import"./index-Q3KOJDn9.js";import"./DebouncedInput-DnWGzIEH.js";import"./snakeCase-DmoQhYQA.js";import"./_createCompounder-CbLsIfEE.js";const R=o.memo(({label:l,remaining:n,progress:t})=>{if(n&&n>0){const a=Math.floor(n/3600),i=Math.floor(n/60)%60,d=Math.floor(n%60),r=a>0,u=i>0;return s.jsxs(s.Fragment,{children:[s.jsx("progress",{className:"progress w-48",value:t,max:"100"}),s.jsxs("div",{children:[l," ",`${r?`${a}:`:""}${u?`${i}:`:""}${d}`]})]})}return s.jsx("progress",{className:"progress w-48",value:t,max:"100"})}),O=o.memo(l=>{const{t:n}=p(["ota","common"]),{device:t,state:a,onCheckClick:i,onUpdateClick:d,onScheduleClick:r,onUnscheduleClick:u}=l;return a==null||a.state==="idle"?s.jsxs("div",{className:"join join-horizontal",children:[s.jsx(v,{className:"btn btn-square btn-outline btn-primary join-item",onClick:i,item:t.ieee_address,title:n("check"),children:s.jsx(b,{icon:N})}),s.jsx(h,{className:"btn btn-square btn-outline btn-info join-item",onClick:r,item:t.ieee_address,title:n("schedule"),modalDescription:n("schedule_info"),modalCancelLabel:n("common:cancel"),children:s.jsx(b,{icon:f})})]}):a.state==="updating"?s.jsx(R,{label:n("remaining_time"),remaining:a.remaining,progress:a.progress}):s.jsx("div",{className:"join join-horizontal",children:a.state==="available"?s.jsxs(s.Fragment,{children:[s.jsx(h,{className:"btn btn-square btn-outline btn-error join-item",onClick:d,item:t.ieee_address,title:n("update"),modalDescription:n("common:dialog_confirmation_prompt"),modalCancelLabel:n("common:cancel"),children:s.jsx(b,{icon:$})}),s.jsx(h,{className:"btn btn-square btn-outline btn-info join-item",onClick:r,item:t.ieee_address,title:n("schedule"),modalDescription:n("schedule_info"),modalCancelLabel:n("common:cancel"),children:s.jsx(b,{icon:f})})]}):a.state==="scheduled"?s.jsx(h,{className:"btn btn-square btn-outline btn-error join-item",onClick:u,item:t.ieee_address,title:n("unschedule"),modalDescription:n("common:dialog_confirmation_prompt"),modalCancelLabel:n("common:cancel"),children:s.jsx(b,{icon:L})}):s.jsxs(s.Fragment,{children:[s.jsx(v,{className:"btn btn-square btn-outline btn-primary join-item",onClick:i,item:t.ieee_address,title:n("check"),children:s.jsx(b,{icon:N})}),s.jsx(h,{className:"btn btn-square btn-outline btn-info join-item",onClick:r,item:t.ieee_address,title:n("schedule"),modalDescription:n("schedule_info"),modalCancelLabel:n("common:cancel"),children:s.jsx(b,{icon:f})})]})})}),S=o.memo(l=>{const{t:n}=p("ota"),t=o.useMemo(()=>{if(l.version==null||l.version<0)return;const a=l.version.toString(16).padStart(8,"0"),i=`${a[0]}.${a[1]}`,d=a.slice(2,4),r=`${a[4]}.${a[5]}`,u=a.slice(6);return[i,d,r,u]},[l.version]);return t===void 0?s.jsx("span",{children:"N/A"}):s.jsxs("div",{className:"join join-vertical",children:[s.jsxs("span",{className:"badge badge-sm badge-soft badge-ghost cursor-default join-item w-full",children:[n("app"),": ",`${t[0]} build ${t[1]}`]}),s.jsxs("span",{className:"badge badge-sm badge-soft badge-ghost cursor-default join-item w-full",children:[n("stack"),": ",`${t[2]} build ${t[3]}`]})]})}),T=o.memo(({device:l})=>{const{t:n}=p("zigbee");let t="https://github.com/Koenkk/zigbee-OTA/releases";const a=l.software_build_id||n("unknown");switch(l?.definition?.vendor){case"IKEA":t="https://ww8.ikea.com/ikeahomesmart/releasenotes/releasenotes.html";break;case"Inovelli":t="https://help.inovelli.com/en/articles/8503774-what-is-the-latest-firmware-version-for-your-device#h_b74c1e7dc6";break;case"Philips":t=`https://www.philips-hue.com/en-us/support/release-notes/${l.definition?.exposes.find(i=>i.type==="light")?"lamps":"accessories"}`;break;case"Ubisys":t=`https://www.ubisys.de/en/support/firmware/change-logs-${l.definition?.model?.replace(/[-]/g,"").toLowerCase()}/`;break}return s.jsx("a",{target:"_blank",rel:"noopener noreferrer",href:t,className:"link link-hover",children:a})});function Y(){const l=y(e=>e.devices),n=y(e=>e.deviceStates),{sendMessage:t}=o.useContext(D),{t:a}=p(["ota","zigbee","common"]),[i,d]=o.useState([]);o.useEffect(()=>{d([])},[l]);const r=o.useMemo(()=>{const e=[];for(const c of l)if(c.definition?.supports_ota&&!c.disabled){const m=n[c.friendly_name]??{};e.push({device:c,state:m.update,batteryState:c.power_source==="Battery"?{batteryPercent:m.battery,batteryState:m.battery_state,batteryLow:m.battery_low}:void 0,selected:i.includes(c.ieee_address)})}return e},[n,l,i]),u=o.useCallback(e=>{e.target.checked?d(r.map(({device:c})=>c.ieee_address)):d([])},[r]),g=o.useCallback((e,c)=>{d(c?[...i,e.ieee_address]:i.filter(m=>m!==e.ieee_address))},[i]),x=o.useCallback(async()=>{await Promise.allSettled(i.map(e=>t("bridge/request/device/ota_update/check",{id:e})))},[t,i]),j=o.useCallback(async()=>{await Promise.allSettled(i.map(e=>t("bridge/request/device/ota_update/update",{id:e})))},[t,i]),_=o.useCallback(async e=>await t("bridge/request/device/ota_update/check",{id:e}),[t]),k=o.useCallback(async e=>await t("bridge/request/device/ota_update/update",{id:e}),[t]),C=o.useCallback(async e=>await t("bridge/request/device/ota_update/schedule",{id:e}),[t]),w=o.useCallback(async e=>await t("bridge/request/device/ota_update/unschedule",{id:e}),[t]),F=o.useMemo(()=>[{id:"select",header:()=>s.jsx("label",{children:s.jsx("input",{type:"checkbox",className:"checkbox",onChange:u,defaultChecked:i.length===r.length})}),accessorFn:()=>"",cell:({row:{original:{device:e,selected:c}}})=>s.jsx("label",{children:s.jsx("input",{type:"checkbox",className:"checkbox",onChange:m=>g(e,m.target.checked),defaultChecked:c})}),enableColumnFilter:!1,enableSorting:!1},{id:"friendly_name",header:a("common:friendly_name"),accessorFn:({device:e})=>[e.friendly_name,e.description,e.ieee_address].join(" "),cell:({row:{original:{device:e,state:c,batteryState:m}}})=>s.jsxs("div",{className:"flex items-center gap-3",children:[s.jsx("div",{className:"avatar",children:s.jsx("div",{className:"h-11 w-11",style:{overflow:"visible"},children:s.jsx(z,{device:e,otaState:c?.state,disabled:!1})})}),s.jsxs("div",{className:"flex-grow flex flex-col",children:[s.jsxs(q,{to:`/device/${e.ieee_address}/info`,className:"link link-hover",children:[e.friendly_name,e.friendly_name!==e.ieee_address?` (${e.ieee_address})`:""]}),e.description&&s.jsx("div",{className:"max-w-3xs text-xs opacity-50 truncate",title:e.description,children:e.description}),s.jsxs("div",{className:"flex flex-row gap-1 mt-0.5 items-center",children:[s.jsxs("span",{className:"badge badge-sm badge-soft badge-ghost cursor-default",title:a("zigbee:firmware_id"),children:[s.jsx(b,{icon:M}),s.jsx(T,{device:e}),e.date_code?s.jsxs("span",{title:a("zigbee:firmware_build_date"),children:[" (",e.date_code,")"]}):void 0]}),m&&s.jsx("span",{className:"badge badge-sm badge-soft badge-ghost cursor-default",children:s.jsx(B,{device:e,...m})})]})]})]})},{id:"model",header:a("zigbee:model"),accessorFn:({device:e})=>[e.definition?.model,e.model_id,e.definition?.vendor,e.manufacturer].join(" "),cell:({row:{original:{device:e}}})=>s.jsxs(s.Fragment,{children:[s.jsx(U,{device:e}),s.jsx("div",{children:s.jsx("span",{className:"badge badge-sm badge-ghost",title:a("zigbee:manufacturer"),children:s.jsx(P,{device:e})})})]})},{id:"firmware_version",header:a("firmware_version"),accessorFn:({state:e})=>e?.installed_version,cell:({row:{original:{state:e}}})=>s.jsx(S,{version:e?.installed_version}),enableColumnFilter:!1},{id:"available_firmware_version",header:a("available_firmware_version"),accessorFn:({state:e})=>e?.latest_version,cell:({row:{original:{state:e}}})=>s.jsx(S,{version:e?.latest_version}),enableColumnFilter:!1},{id:"actions",header:()=>s.jsxs("div",{className:"join join-vertical",children:[s.jsx(h,{className:"btn btn-error btn-xs join-item",onClick:x,title:a("check_selected"),modalDescription:a("common:dialog_confirmation_prompt"),modalCancelLabel:a("common:cancel"),disabled:i.length===0,children:a("check_selected")}),s.jsx(h,{className:"btn btn-error btn-xs join-item",onClick:j,title:a("update_selected"),modalDescription:a("update_selected_info"),modalCancelLabel:a("common:cancel"),disabled:i.length===0,children:a("update_selected")})]}),accessorFn:({state:e})=>e?.state,cell:({row:{original:{device:e,state:c}}})=>s.jsx(O,{device:e,state:c,onCheckClick:_,onUpdateClick:k,onScheduleClick:C,onUnscheduleClick:w}),enableSorting:!1,enableColumnFilter:!1}],[i.length,r.length,u,g,x,j,_,k,C,w,a]);return s.jsx(A,{id:"ota-devices",columns:F,data:r})}export{Y as default};
|
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{r as d,b as j,j as t,F as o,
|
|
1
|
+
import{r as d,b as j,j as t,F as o,bJ as g,bG as B,bK as k,bk as E,bA as f,bB as P,bC as w,bD as v,bu as m}from"./index-DtyjNqrf.js";import{s as y}from"./snakeCase-DmoQhYQA.js";const G=d.memo(x=>{const{device:u,batteryPercent:a,batteryState:b,batteryLow:c,showLevel:h,...i}=x,{t:l}=j("zigbee");let s;switch(u?.power_source&&(s=u.power_source),s){case"Battery":{let p=l("battery"),r="",e=f,n=!1;if(a!=null)r=`${a}%`,a>=85?e=f:a>=65?e=P:a>=40?e=w:a>=20?e=v:(e=m,n=!0);else if(b!=null)switch(r=b,b){case"high":e=f;break;case"medium":e=w;break;case"low":e=m,n=!0;break}else c!=null&&(r=c?"low":"ok",e=c?m:f);return c===!0&&(n=!0),r!==""&&(p+=`, ${l("power_level")}: ${r}`),t.jsxs("span",{className:n?"text-error":"",children:[t.jsx(o,{icon:e,fade:n,title:p,...i}),h&&t.jsx("span",{className:"ps-2",children:r})]})}case"Mains (single phase)":case"Mains (3 phase)":case"DC Source":return t.jsx(o,{icon:E,title:l(y(s)),...i});case"Emergency mains and transfer switch":case"Emergency mains constantly powered":return t.jsx(o,{icon:k,title:l(y(s)),...i});default:return u?.type==="GreenPower"?t.jsx(o,{icon:g,title:"Green",...i}):t.jsx(o,{icon:B,title:s?l(y(s)):void 0,...i})}});export{G as P};
|
|
Binary file
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{
|
|
1
|
+
import{ae as or,r as ee,b as Ni,j as w,t as pt,F as Ge,as as pp,L as Wi,a as dp,a1 as vp,f as xp,B as _s,y as ps,at as wp}from"./index-DtyjNqrf.js";import{D as xs}from"./DeviceImage-D-FjKeE6.js";import{D as ds}from"./DebouncedInput-DnWGzIEH.js";import{P as Ap}from"./PowerSource-DgFKG_xU.js";import{Z as gt}from"./index-BN7eS8uY.js";import{L as mp}from"./Lqi-CoNVuBvb.js";import"./envs-DFlyG_dH.js";import"./index-Q3KOJDn9.js";import"./snakeCase-DmoQhYQA.js";import"./_createCompounder-CbLsIfEE.js";import"./DisplayValue-B5Rw3jLu.js";var _t={exports:{}};/**
|
|
2
2
|
* @license
|
|
3
3
|
* Lodash <https://lodash.com/>
|
|
4
4
|
* Copyright OpenJS Foundation and other contributors <https://openjsf.org/>
|
|
Binary file
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{
|
|
1
|
+
import{au as Ox,af as po,av as lo,r as Q,j as de,aw as GU,b as xg,t as HU,F as ni,a1 as VU,B as ts,ax as WU,ay as XU,az as jU,aA as qU,aB as YU,aC as ZU,aD as KU,aE as JU,aF as QU,aG as Qc,aH as $U,aI as eO,aJ as tO,aK as Nv,s as qa,aL as HS,aM as VS,aN as WS,aO as XS}from"./index-DtyjNqrf.js";import{E as yl,Z as ti,N as tm}from"./index-BN7eS8uY.js";import"./envs-DFlyG_dH.js";/**
|
|
2
2
|
* @license
|
|
3
3
|
* Copyright 2010-2025 Three.js Authors
|
|
4
4
|
* SPDX-License-Identifier: MIT
|
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{
|
|
1
|
+
import{ag as y,r,b as S,W as N,j as a,B as k,R as C}from"./index-DtyjNqrf.js";import{D as E}from"./DashboardFeatureWrapper-CWbT-TyR.js";import{b as v,F as R,g as T}from"./Feature-VsMzzVJz.js";import{I as g}from"./InputField-CYbmpJqW.js";import{S as I}from"./SelectField-DfdnxD7O.js";function A(s){if(y(s)){const e=[];for(const o in s.endpoints){const t=s.endpoints[o];for(const i of t.scenes)e.push({...i})}return e}return s.scenes}const M=["schedule_","_mode","_options","_startup","_type","inching_"],L=["effect"],D=["state","color_temp","color","transition","brightness"],j=(s,e)=>{if(s){if(D.includes(s))return!0;for(const o of M)if(s.includes(o))return!1;if(L.includes(s))return!1}return e===v.ALL||e===v.SET||e===v.STATE_SET};function F(s,e={}){const{property:o,name:t,access:i}=s;if("features"in s&&s.features&&s.features.length>0){const n=[],d=o?e[o]:e;for(const m of s.features){const l=F(m,d);l&&!n.some(u=>u.property===l.property)&&n.push(l)}return n.length>0||j(t,i)?{...s,features:n}:void 0}return j(t,i)?{...s}:void 0}const P=r.memo(s=>{const{target:e,deviceState:o}=s,{t}=S("scene"),{sendMessage:i}=r.useContext(N),[n,d]=r.useState(0),[m,l]=r.useState(""),u=r.useMemo(()=>A(e),[e]),f=r.useMemo(()=>{const c=[];if(y(e))for(const h of e.definition?.exposes??[]){const x=F(h,o);x&&c.push(x)}return c},[e,o]),_=r.useCallback(async c=>{await i(`${e.friendly_name}/set`,c)},[i,e]),b=r.useCallback(async()=>{const c={ID:n,name:m||`Scene ${n}`};await i(`${e.friendly_name}/set`,{scene_store:c})},[i,e,n,m]),p=r.useMemo(()=>n>=0&&n<=255&&!u.find(c=>c.id===n),[n,u]);return a.jsxs(a.Fragment,{children:[a.jsx("h2",{className:"text-lg font-semibold",children:t("add_update_header")}),a.jsxs("div",{className:"mb-3",children:[a.jsx(g,{name:"scene_id",label:t("scene_id"),type:"number",value:n,onChange:c=>!!c.target.value&&d(c.target.valueAsNumber),min:0,max:255}),a.jsx(g,{name:"scene_name",label:t("scene_name"),type:"text",value:m,placeholder:`Scene ${n}`,onChange:c=>l(c.target.value)}),f.length>0&&a.jsx("div",{className:"card card-border bg-base-200 shadow my-2",children:a.jsx("div",{className:"card-body",children:f.map(c=>a.jsx(R,{feature:c,device:e,deviceState:o,onChange:_,featureWrapperClass:E,minimal:!0,parentFeatures:[]},T(c)))})})]}),a.jsx(k,{disabled:!p,onClick:b,className:"btn btn-primary",children:t("store")})]})}),$=r.memo(s=>{const{t:e}=S("scene"),{onSceneSelected:o,scenes:t=[],value:i}=s;return t.length>0?a.jsxs(I,{name:"scene_picker",label:e("scene_name"),value:i?.id??"",onChange:n=>!n.target.validationMessage&&!!n.target.value&&o(Number.parseInt(n.target.value,10)),children:[a.jsx("option",{value:"",disabled:!0,children:e("select_scene")}),t.map(n=>a.jsxs("option",{value:n.id,children:[n.id,": ",n.name]},n.id))]}):a.jsx(g,{name:"scene_picker",label:e("scene_id"),type:"number",value:i?.id??"",onChange:n=>!n.target.validationMessage&&!!n.target.value&&o(n.target.valueAsNumber),min:0,max:255})}),V=r.memo(s=>{const{target:e}=s,{sendMessage:o}=r.useContext(N),{t}=S(["scene","common"]),[i,n]=r.useState({id:0,name:"Scene 0"}),[d,m]=r.useState(!0),l=r.useMemo(()=>A(e),[e]),u=r.useCallback(p=>{m(!1);const c=l.find(h=>h.id===p);n(c!==void 0?c:{id:p,name:`Scene ${p}`})},[l]),f=r.useCallback(async()=>await o(`${e.friendly_name}/set`,{scene_recall:i.id}),[o,e.friendly_name,i.id]),_=r.useCallback(async()=>await o(`${e.friendly_name}/set`,{scene_remove:i.id}),[o,e.friendly_name,i.id]),b=r.useCallback(async()=>await o(`${e.friendly_name}/set`,{scene_remove_all:""}),[o,e.friendly_name]);return a.jsxs(a.Fragment,{children:[a.jsx("h2",{className:"text-lg font-semibold",children:t("manage_scenes_header")}),a.jsx("div",{className:"mb-3",children:a.jsx($,{onSceneSelected:u,value:d?void 0:i,scenes:l})}),a.jsxs("div",{className:"join join-horizontal",children:[a.jsx(k,{disabled:d,onClick:f,className:"btn btn-success join-item",children:t("recall")}),a.jsx(C,{disabled:d,onClick:_,className:"btn btn-error join-item",title:t("remove"),modalDescription:t("common:dialog_confirmation_prompt"),modalCancelLabel:t("common:cancel"),children:t("remove")}),a.jsx(C,{onClick:b,className:"btn btn-error btn-outline join-item",title:t("remove_all"),modalDescription:t("common:dialog_confirmation_prompt"),modalCancelLabel:t("common:cancel"),children:t("remove_all")})]})]})});export{P as A,V as R,F as g};
|
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{r as n,b as j,
|
|
1
|
+
import{r as n,b as j,ah as R,j as t,B as N,R as k,W as w}from"./index-DtyjNqrf.js";import{I as C}from"./InputField-CYbmpJqW.js";import{C as E,A as y}from"./ClusterSinglePicker-Ca3Cu42z.js";import{E as S}from"./EndpointPicker-Bik90BnT.js";import"./envs-DFlyG_dH.js";import"./SelectField-DfdnxD7O.js";const q=["maximum_report_interval","minimum_report_interval","reportable_change","endpoint","cluster","attribute"],A=n.memo(l=>{const{rule:r,device:o,onApply:a}=l,[e,u]=n.useState({rule:r}),{t:s}=j(["zigbee","common"]);n.useEffect(()=>{u({rule:r})},[r]);const c=n.useCallback(i=>{e.rule.endpoint=i,u({rule:e.rule})},[e]),_=n.useCallback(i=>{e.rule.cluster=i,u({rule:e.rule})},[e]),g=n.useCallback(i=>{e.rule.attribute=i,u({rule:e.rule})},[e]),p=n.useCallback(i=>{const{name:m,valueAsNumber:d}=i.target;e.rule[m]=d,u({rule:e.rule})},[e]),v=n.useCallback(()=>{a({...e.rule,maximum_report_interval:65535})},[e,a]),x=n.useMemo(()=>R(o),[o]),f=n.useMemo(()=>{const i=new Set,m=new Set;e.rule.cluster&&m.add(e.rule.cluster);const d=o.endpoints[Number.parseInt(e.rule.endpoint,10)];if(d){for(const b of d.clusters.output)m.add(b);for(const b of d.clusters.input)m.has(b)||i.add(b)}return[{name:"available",clusters:m},{name:"possible",clusters:i}]},[o.endpoints,e.rule.endpoint,e.rule.cluster]),h=n.useMemo(()=>q.every(i=>e.rule[i]!==void 0&&e.rule[i]!==""),[e]);return t.jsxs(t.Fragment,{children:[t.jsxs("div",{className:"flex flex-row flex-wrap gap-2",children:[t.jsx(S,{label:s("endpoint"),disabled:!r.isNew,values:x,value:e.rule.endpoint,onChange:c,required:!0}),t.jsx(E,{label:s("cluster"),disabled:!e.rule.endpoint,clusters:f,value:e.rule.cluster,onChange:_,required:!0}),t.jsx(y,{label:s("attribute"),disabled:!e.rule.cluster,value:e.rule.attribute,cluster:e.rule.cluster,device:o,onChange:g,required:!0}),t.jsx(C,{name:"minimum_report_interval",label:s("min_rep_interval"),type:"number",value:e.rule.minimum_report_interval,onChange:p,required:!0}),t.jsx(C,{name:"maximum_report_interval",label:s("max_rep_interval"),type:"number",value:e.rule.maximum_report_interval,onChange:p,required:!0}),t.jsx(C,{name:"reportable_change",label:s("min_rep_change"),type:"number",value:e.rule.reportable_change,onChange:p,required:!0}),t.jsxs("fieldset",{className:"fieldset",children:[t.jsx("legend",{className:"fieldset-legend",children:s("actions")}),t.jsxs("div",{className:"join join-horizontal",children:[t.jsx(N,{className:"btn btn-primary join-item",item:e.rule,onClick:a,disabled:!h,children:s("common:apply")}),e.rule.isNew?null:t.jsx(k,{title:s("common:disable"),className:"btn btn-error join-item",onClick:v,modalDescription:s("common:dialog_confirmation_prompt"),modalCancelLabel:s("common:cancel"),children:s("common:disable")})]})]})]}),t.jsx("div",{className:"divider"})]})}),I=l=>{const r=[];for(const o in l.endpoints){const a=l.endpoints[o];for(const e of a.configured_reportings)r.push({...e,endpoint:o})}return r},M=l=>`${l.isNew}-${l.endpoint}-${l.cluster}-${l.attribute}`;function z(l){const{device:r}=l,{sendMessage:o}=n.useContext(w),[a,e]=n.useState({isNew:r.ieee_address,reportable_change:0,minimum_report_interval:60,maximum_report_interval:3600,endpoint:"",cluster:"",attribute:""}),u=n.useMemo(()=>I(r),[r]);n.useEffect(()=>{e({isNew:r.ieee_address,reportable_change:0,minimum_report_interval:60,maximum_report_interval:3600,endpoint:"",cluster:"",attribute:""})},[r.ieee_address]);const s=n.useCallback(async c=>{const{cluster:_,endpoint:g,attribute:p,minimum_report_interval:v,maximum_report_interval:x,reportable_change:f}=c;await o("bridge/request/device/configure_reporting",{id:r.ieee_address,endpoint:g,cluster:_,attribute:p,minimum_report_interval:v,maximum_report_interval:x,reportable_change:f,option:{}})},[o,r.ieee_address]);return t.jsx("div",{className:"flex flex-col",children:[...u,a].map(c=>t.jsx(A,{rule:c,device:r,onApply:s},M(c)))})}export{z as default};
|
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{a,j as e}from"./index-DtyjNqrf.js";import{A as s,R as m}from"./RecallRemove-C7or_UUw.js";import"./envs-DFlyG_dH.js";import"./DashboardFeatureWrapper-CWbT-TyR.js";import"./Feature-VsMzzVJz.js";import"./DisplayValue-B5Rw3jLu.js";import"./_createCompounder-CbLsIfEE.js";import"./capitalize-C89IAw35.js";import"./InputField-CYbmpJqW.js";import"./SelectField-DfdnxD7O.js";function u(t){const i=a(r=>r.deviceStates[t.device.friendly_name]??{});return e.jsxs("div",{className:"flex flex-row flex-wrap justify-around items-start gap-3 my-2",children:[e.jsx("div",{children:e.jsx(s,{target:t.device,deviceState:i})}),e.jsx("div",{children:e.jsx(m,{target:t.device,deviceState:i})})]})}export{u as default};
|
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{r as d,j as e}from"./index-
|
|
1
|
+
import{r as d,j as e}from"./index-DtyjNqrf.js";const n=d.memo(s=>{const{label:l,detail:a,onChange:t,children:r,...c}=s;return e.jsxs("fieldset",{className:"fieldset",children:[l&&e.jsx("legend",{className:"fieldset-legend",children:l}),e.jsx("select",{className:`select${s.required?" validator":""}`,onChange:t,...c,children:r}),a&&e.jsx("span",{className:"label",children:a})]})});export{n as S};
|
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{r as n,W as d,a as f,b as p,j as e,F as b,J as u,
|
|
1
|
+
import{r as n,W as d,a as f,b as p,j as e,F as b,J as u,b$ as g,B as x}from"./index-DtyjNqrf.js";import{S as l}from"./SettingsList-m7AYDAw4.js";import"./envs-DFlyG_dH.js";import"./CheckboxField-DKhAwA85.js";import"./InputField-CYbmpJqW.js";import"./NumberField-DVRroIAm.js";import"./SelectField-DfdnxD7O.js";const r="main",h=[r,"frontend","mqtt","serial","availability","ota","advanced","homeassistant"];function T(){const{sendMessage:o}=n.useContext(d),a=f(t=>t.bridgeInfo),[s,m]=n.useState(r),{t:i}=p("settings"),c=n.useCallback(async t=>{s===r?await o("bridge/request/options",{options:t}):await o("bridge/request/options",{options:{[s]:t}})},[o,s]);return e.jsxs(e.Fragment,{children:[e.jsxs("div",{className:"alert alert-info alert-soft mb-3",role:"alert",children:[e.jsx(b,{icon:u,size:"2xl"}),e.jsx("a",{href:g,target:"_blank",rel:"noreferrer",className:"link link-hover",children:i("common:read_the_docs_info")})]}),e.jsxs("div",{className:"tabs tabs-border",children:[h.map(t=>e.jsx(x,{className:`tab${s===t?" tab-active":""}`,"aria-current":"page",item:t,onClick:m,children:i(t)},t)),e.jsx("div",{className:"tab-content block h-full bg-base-100 p-3",children:s===r?e.jsx(l,{schema:a.config_schema,data:a.config,set:c,rootOnly:!0}):e.jsx(l,{schema:a.config_schema.properties[s],data:a.config[s],set:c})})]})]})}export{T as default};
|
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{r as x,j as s,B as b,F as p,x as C,
|
|
1
|
+
import{r as x,j as s,B as b,F as p,x as C,c0 as w,aQ as N,b as v}from"./index-DtyjNqrf.js";import{C as V}from"./CheckboxField-DKhAwA85.js";import{I as $}from"./InputField-CYbmpJqW.js";import{N as S}from"./NumberField-DVRroIAm.js";import{S as h}from"./SelectField-DfdnxD7O.js";const A=x.memo(a=>{const{defaultValues:n,label:r,detail:c,type:i,onSubmit:f}=a,[t,o]=x.useState(n||[]);x.useEffect(()=>{o(n||[])},[n]);const d=x.useCallback(()=>{t.length>0?o([...t,""]):o([""])},[t]),e=x.useCallback(()=>f(i==="number"?t.filter(l=>typeof l=="number"):t.filter(l=>!!l)),[i,t,f]);return s.jsxs("fieldset",{className:"fieldset gap-2",children:[r&&s.jsx("legend",{className:"fieldset-legend",children:r}),s.jsx("div",{className:"flex flex-row flex-wrap gap-2",children:t.map((l,m)=>s.jsxs("div",{className:"join min-w-xs",children:[s.jsx("input",{className:"input join-item",onBlur:u=>{const j=Array.from(t);j[m]=i==="number"?u.target.value?u.target.valueAsNumber:"":u.target.value,o(j)},type:i,defaultValue:Number.isNaN(l)?"":l}),s.jsx(b,{className:"btn btn-error btn-outline join-item",onClick:()=>{const u=Array.from(t);u.splice(m,1),o(u)},children:s.jsx(p,{icon:C})})]},`${l}-${m}`))}),s.jsxs("div",{className:"flex flex-row flex-wrap gap-2 items-center mt-1",children:[s.jsx(b,{onClick:d,className:"btn btn-sm btn-square btn-success ms-2",children:s.jsx(p,{icon:w})}),s.jsx(b,{onClick:e,className:"btn btn-sm btn-square btn-primary",children:s.jsx(p,{icon:N})}),c&&s.jsx("p",{className:"label",children:c})]})]})}),F=x.memo(a=>{const{names:n,label:r,detail:c,defaultsChecked:i,onSubmit:f}=a,[t,o]=x.useState(i||[]);x.useEffect(()=>{o(i||[])},[i]);const d=x.useCallback(l=>{let m=Array.from(t);l.target.checked?m.push(l.target.name):m=m.filter(u=>u!==l.target.name),o(m)},[t]),e=x.useCallback(()=>f(t),[t,f]);return s.jsxs("fieldset",{className:"fieldset gap-2",children:[r&&s.jsx("legend",{className:"fieldset-legend",children:r}),s.jsx("div",{className:"flex flex-row flex-wrap gap-2",children:n.map(l=>s.jsxs("label",{className:"label",children:[s.jsx("input",{name:l,className:"checkbox",type:"checkbox",onChange:d,checked:t.includes(l)}),l]},l))}),s.jsxs("div",{className:"flex flex-row flex-wrap gap-2 items-center mt-1",children:[s.jsx(b,{onClick:e,className:"btn btn-sm btn-square btn-primary",children:s.jsx(p,{icon:N})}),s.jsx("span",{className:"label",children:c})]})]})}),E=(a,n,r,c,i,f,t)=>{let o=n.type;if(Array.isArray(o))o=o.find(e=>e!=="null");else if(n.oneOf)return;const d=`${i}-${a}-${n.type}-${n.title}`;switch(o){case"boolean":return s.jsx(V,{name:a,label:a,detail:t,onChange:e=>!e.target.validationMessage&&c({[a]:e.target.checked}),required:f,defaultChecked:r??!1},d);case"integer":case"number":return n.enum?s.jsxs(h,{name:a,label:a,detail:t,onChange:e=>!e.target.validationMessage&&c({[a]:Number.parseInt(e.target.value,10)}),required:f,defaultValue:r??"",children:[s.jsx("option",{value:"",disabled:!0,children:"-"}),n.enum.map(e=>s.jsx("option",{value:e,children:e},e))]},d):s.jsx(S,{name:a,label:a,detail:t,onSubmit:(e,l)=>l&&c({[a]:e===""?null:e}),min:n.minimum,max:n.maximum,required:f,defaultValue:r??""},d);case"string":return n.enum?s.jsxs(h,{name:a,label:a,detail:t,onChange:e=>!e.target.validationMessage&&c({[a]:e.target.value}),required:f,defaultValue:r??"",children:[s.jsx("option",{value:"",disabled:!0,children:"-"}),n.enum.map(e=>s.jsx("option",{value:e,children:e},e))]},d):s.jsx($,{name:a,label:a,detail:t,type:"text",onBlur:e=>!e.target.validationMessage&&c({[a]:e.target.value}),required:f,defaultValue:r??""},d);case"array":{const e=n.items;if(e&&typeof e=="object"&&"type"in e){if(e.enum)return s.jsx(F,{names:e.enum,label:a,detail:t,onSubmit:l=>c({[a]:l}),defaultsChecked:r??[]});if(e.type==="string"||e.type==="number")return s.jsx(A,{defaultValues:r??[],label:a,detail:t,onSubmit:l=>c({[a]:l}),type:e.type})}}}},g=(a,n,r,c,i,f=[],t=!1)=>{const o=[],d=[];for(const e in n){const l=n[e];if(!(typeof l=="boolean"||l.readOnly))if(l.properties)t||d.push(s.jsxs("div",{className:"list",children:[s.jsx("h3",{className:"list-row p-3 text-lg",children:l.title||e}),g(a,l.properties,r[e]||{},async m=>c({[e]:m}),i+1,l.required)]},`${i}-${e}`));else{const m=l.oneOf?.find(u=>typeof u=="object"&&u.properties);if(m)(e!=="log_syslog"||r.log_output.includes("syslog"))&&d.push(s.jsxs("div",{className:"list",children:[s.jsx("h3",{className:"list-row p-3 text-lg",children:m.title||l.title||e}),g(a,m.properties,r[e]||{},async u=>c({[e]:u}),i+1,m.required)]},`${i}-${e}`));else{const u=E(e,l,r[e],c,i,f.includes(e),l.description?a(l.description,{defaultValue:l.description}):void 0);u&&o.push(s.jsx("div",{className:`list-row p-3 ${i!==0?` ps-${4+i*4}`:""}`,children:u},`${i}-${e}`))}}}return d.length>0?o.concat(d):o};function y({schema:a,data:n,set:r,rootOnly:c}){const{t:i}=v("settingsSchemaDescriptions");return s.jsx("div",{className:"list bg-base-100",children:a.properties&&g(i,a.properties,n,r,0,a.required,c)})}export{y as S};
|
|
Binary file
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./About-
|
|
2
|
-
import{u,d as _,b as d,r as a,j as s,N as o,F as n,e as b,
|
|
1
|
+
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./About-Bzn4phMf.js","./index-DtyjNqrf.js","./envs-DFlyG_dH.js","./index-EwioJBcA.css","./snakeCase-DmoQhYQA.js","./_createCompounder-CbLsIfEE.js","./Health-CKhCvWTS.js","./DeviceImage-D-FjKeE6.js","./index-Q3KOJDn9.js","./Table-BQc_g_eJ.js","./DebouncedInput-DnWGzIEH.js","./format-6Yb6jWnA.js","./Frontend-BjIugJEJ.js","./CheckboxField-DKhAwA85.js","./InputField-CYbmpJqW.js","./NumberField-DVRroIAm.js","./SelectField-DfdnxD7O.js","./Settings-BjCQ4C8J.js","./SettingsList-m7AYDAw4.js","./Tools-Cjm0CrsG.js","./Bridge-CxXyKguB.js","./DevConsole-Bodnafv_.js","./TextareaField-Xo9B_w91.js","./Donate-Dj2gLttt.js"])))=>i.map(i=>d[i]);
|
|
2
|
+
import{u,d as _,b as d,r as a,j as s,N as o,F as n,e as b,a9 as x,aa as j,k as g,ab as p,ac as v,q as N,ad as T,_ as r}from"./index-DtyjNqrf.js";import"./envs-DFlyG_dH.js";const h=a.lazy(async()=>await r(()=>import("./About-Bzn4phMf.js"),__vite__mapDeps([0,1,2,3,4,5]),import.meta.url)),f=a.lazy(async()=>await r(()=>import("./Health-CKhCvWTS.js"),__vite__mapDeps([6,1,2,3,7,8,9,10,11]),import.meta.url)),E=a.lazy(async()=>await r(()=>import("./Frontend-BjIugJEJ.js"),__vite__mapDeps([12,1,2,3,13,14,15,16]),import.meta.url)),y=a.lazy(async()=>await r(()=>import("./Settings-BjCQ4C8J.js"),__vite__mapDeps([17,1,2,3,18,13,14,15,16]),import.meta.url)),P=a.lazy(async()=>await r(()=>import("./Tools-Cjm0CrsG.js"),__vite__mapDeps([19,1,2,3,14,8]),import.meta.url)),A=a.lazy(async()=>await r(()=>import("./Bridge-CxXyKguB.js"),__vite__mapDeps([20,1,2,3]),import.meta.url)),D=a.lazy(async()=>await r(()=>import("./DevConsole-Bodnafv_.js"),__vite__mapDeps([21,1,2,3,14,16,22]),import.meta.url)),w=a.lazy(async()=>await r(()=>import("./Donate-Dj2gLttt.js"),__vite__mapDeps([23,1,2,3]),import.meta.url));function R(){const c=u(),{tab:i}=_(),{t}=d(["settings","navbar"]);a.useEffect(()=>{i||c("/settings/about",{replace:!0})},[i,c]);const l=a.useMemo(()=>{switch(i){case"about":return s.jsx(h,{});case"health":return s.jsx(f,{});case"frontend":return s.jsx(E,{});case"settings":return s.jsx(y,{});case"tools":return s.jsx(P,{});case"bridge":return s.jsx(A,{});case"dev-console":return s.jsx(D,{});case"donate":return s.jsx(w,{})}return""},[i]),e=({isActive:m})=>m?"tab tab-active":"tab";return s.jsxs("div",{className:"tabs tabs-border",children:[s.jsxs(o,{to:"/settings/about",className:e,children:[s.jsx(n,{icon:b,className:"me-2"}),t("about")]}),s.jsxs(o,{to:"/settings/health",className:e,children:[s.jsx(n,{icon:x,className:"me-2"}),t("health")]}),s.jsxs(o,{to:"/settings/frontend",className:e,children:[s.jsx(n,{icon:j,className:"me-2"}),t("frontend")]}),s.jsxs(o,{to:"/settings/settings",className:e,children:[s.jsx(n,{icon:g,className:"me-2"}),t("settings")]}),s.jsxs(o,{to:"/settings/tools",className:e,children:[s.jsx(n,{icon:p,className:"me-2"}),t("tools")]}),s.jsxs(o,{to:"/settings/bridge",className:e,children:[s.jsx(n,{icon:v,className:"me-2"}),t("bridge")]}),s.jsxs(o,{to:"/settings/dev-console",className:e,children:[s.jsx(n,{icon:N,className:"me-2"}),t("dev_console")]}),s.jsxs(o,{to:"/settings/donate",className:e,children:[s.jsx(n,{icon:T,className:"me-2"}),t("donate")]}),s.jsx("div",{className:"tab-content block h-full bg-base-100 p-3",children:l})]})}export{R as default};
|
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a as o,j as l}from"./index-
|
|
1
|
+
import{a as o,j as l}from"./index-DtyjNqrf.js";import"./envs-DFlyG_dH.js";function u(e){const{device:a}=e,s=o(r=>r.deviceStates[a.friendly_name]??{}),t=JSON.stringify(s,null,4),n=Math.max(10,(t.match(/\n/g)||"").length+1);return l.jsx("textarea",{className:"textarea w-full",rows:n,readOnly:!0,value:t})}export{u as default};
|
|
Binary file
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{r as E,b as ue,j as _,F as ve,f as he,s as ie}from"./index-
|
|
1
|
+
import{r as E,b as ue,j as _,F as ve,f as he,s as ie}from"./index-DtyjNqrf.js";import{D as _e}from"./DebouncedInput-DnWGzIEH.js";/**
|
|
2
2
|
* table-core
|
|
3
3
|
*
|
|
4
4
|
* Copyright (c) TanStack
|
|
@@ -19,4 +19,4 @@ import{r as E,b as ue,j as _,F as ve,f as he,s as ie}from"./index-B4xkyr03.js";i
|
|
|
19
19
|
* LICENSE.md file in the root directory of this source tree.
|
|
20
20
|
*
|
|
21
21
|
* @license MIT
|
|
22
|
-
*/function se(e,o){return e?pt(e)?E.createElement(e,o):e:null}function pt(e){return mt(e)||typeof e=="function"||St(e)}function mt(e){return typeof e=="function"&&(()=>{const o=Object.getPrototypeOf(e);return o.prototype&&o.prototype.isReactComponent})()}function St(e){return typeof e=="object"&&typeof e.$$typeof=="symbol"&&["react.memo","react.forward_ref"].includes(e.$$typeof.description)}function Ct(e){const o={state:{},onStateChange:()=>{},renderFallbackValue:null,...e},[t]=E.useState(()=>({current:st(o)})),[n,i]=E.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 Rt({getFilterValue:e,setFilterValue:o}){const t=e(),{t:n}=ue("common");return _.jsxs("label",{className:"input input-xs w-32",children:[_.jsx(ve,{icon:he}),_.jsx(_e,{className:"",type:"search",onChange:o,placeholder:n("search"),value:t??""})]})}function ht(e){const{t:o}=ue("common"),{id:t,columns:n,data:i,visibleColumns:r}=e,l=`${t}-column-visibility`,[u,a]=E.useState(ie.get(l,r??{})),[g,f]=E.useState([]),m=Ct({data:i,columns:n,filterFns:{},state:{columnFilters:g,columnVisibility:u,pagination:{pageIndex:0,pageSize:500}},onColumnVisibilityChange:a,onColumnFiltersChange:f,getCoreRowModel:ut(),getFilteredRowModel:ct(),getSortedRowModel:ft(),manualPagination:!0});E.useEffect(()=>{ie.set(l,u)},[l,u]);const d=m.getRowModel().rows;return _.jsxs("div",{className:"overflow-x-auto",children:[_.jsxs("div",{className:"flex flex-row flex-wrap gap-2 text-xs",children:[_.jsxs("span",{className:"label
|
|
22
|
+
*/function se(e,o){return e?pt(e)?E.createElement(e,o):e:null}function pt(e){return mt(e)||typeof e=="function"||St(e)}function mt(e){return typeof e=="function"&&(()=>{const o=Object.getPrototypeOf(e);return o.prototype&&o.prototype.isReactComponent})()}function St(e){return typeof e=="object"&&typeof e.$$typeof=="symbol"&&["react.memo","react.forward_ref"].includes(e.$$typeof.description)}function Ct(e){const o={state:{},onStateChange:()=>{},renderFallbackValue:null,...e},[t]=E.useState(()=>({current:st(o)})),[n,i]=E.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 Rt({getFilterValue:e,setFilterValue:o}){const t=e(),{t:n}=ue("common");return _.jsxs("label",{className:"input input-xs w-32",children:[_.jsx(ve,{icon:he}),_.jsx(_e,{className:"",type:"search",onChange:o,placeholder:n("search"),value:t??""})]})}function ht(e){const{t:o}=ue("common"),{id:t,columns:n,data:i,visibleColumns:r}=e,l=`${t}-column-visibility`,[u,a]=E.useState(ie.get(l,r??{})),[g,f]=E.useState([]),m=Ct({data:i,columns:n,filterFns:{},state:{columnFilters:g,columnVisibility:u,pagination:{pageIndex:0,pageSize:500}},onColumnVisibilityChange:a,onColumnFiltersChange:f,getCoreRowModel:ut(),getFilteredRowModel:ct(),getSortedRowModel:ft(),manualPagination:!0});E.useEffect(()=>{ie.set(l,u)},[l,u]);const d=m.getRowModel().rows;return _.jsxs("div",{className:"overflow-x-auto",children:[_.jsxs("div",{className:"flex flex-row flex-wrap gap-2 text-xs px-3",children:[_.jsxs("span",{className:"label",children:[o("columns"),": "]}),m.getAllColumns().map(s=>s.id==="select"?null:_.jsxs("label",{className:"label",children:[_.jsx("input",{checked:s.getIsVisible(),disabled:!s.getCanHide(),onChange:s.getToggleVisibilityHandler(),type:"checkbox",className:"checkbox checkbox-xs"}),typeof s.columnDef.header=="string"&&s.columnDef.header?s.columnDef.header:s.id]},s.id)),_.jsxs("span",{className:"ml-auto label",children:[o("entries"),": ",d.length]})]}),_.jsxs("table",{id:t,className:"table table-sm mb-3",children:[_.jsx("thead",{children:m.getHeaderGroups().map(s=>_.jsx("tr",{children:s.headers.map(c=>{const p=c.column.getIsSorted(),R=p==="asc"?" ↑":p==="desc"?" ↓":null;return _.jsx("th",{colSpan:c.colSpan,children:c.isPlaceholder?null:_.jsxs(_.Fragment,{children:[_.jsxs("div",{className:c.column.getCanSort()?"cursor-pointer select-none":"",onClick:c.column.getToggleSortingHandler(),children:[se(c.column.columnDef.header,c.getContext()),R]}),c.column.getCanFilter()?_.jsx("div",{className:"mt-1",children:_.jsx(Rt,{getFilterValue:c.column.getFilterValue,setFilterValue:c.column.setFilterValue})}):null]})},c.id)})},s.id))}),_.jsx("tbody",{children:d.map(s=>_.jsx("tr",{className:"hover:bg-base-300",children:s.getVisibleCells().map(c=>_.jsx("td",{children:se(c.column.columnDef.cell,c.getContext())},c.id))},s.id))})]})]})}export{ht as T};
|
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{r as i,j as e}from"./index-
|
|
1
|
+
import{r as i,j as e}from"./index-DtyjNqrf.js";const x=i.memo(a=>{const{label:s,detail:l,onChange:t,onBlur:r,...d}=a;return e.jsxs("fieldset",{className:"fieldset",children:[s&&e.jsx("legend",{className:"fieldset-legend",children:s}),e.jsx("textarea",{className:`textarea${a.required?" validator":""}`,onChange:t,onBlur:r,...d}),l&&e.jsx("div",{className:"label",children:l})]})});export{x as T};
|
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{w as f,M as _,b as j,r as l,j as e,O as h,B as d,W as w,C as k,a as p,
|
|
1
|
+
import{w as f,M as _,b as j,r as l,j as e,O as h,B as d,W as w,C as k,a as p,a8 as C,aA as y,R as N,c2 as v,c3 as I,c4 as S}from"./index-DtyjNqrf.js";import{I as q}from"./InputField-CYbmpJqW.js";import{g as z}from"./index-Q3KOJDn9.js";import"./envs-DFlyG_dH.js";const A=f.create(r=>{const{addInstallCode:s}=r,o=_(),{t:a}=j(["settings","common"]),[c,m]=l.useState("");return e.jsx(h,{isOpen:o.visible,title:a("add_install_code"),footer:e.jsxs(e.Fragment,{children:[e.jsx(d,{className:"btn btn-neutral",onClick:o.remove,children:a("common:cancel")}),e.jsx(d,{className:"btn btn-primary ms-1",onClick:async()=>{c&&(o.remove(),await s(c))},children:a("add_install_code")})]}),children:e.jsx("div",{className:"flex flex-col gap-2",children:e.jsx(q,{name:"install_code",label:a("install_code"),onChange:i=>m(i.target.value),value:c,type:"text",required:!0})})})});async function B(r){return await new Promise((s,o)=>{const a=new FileReader;a.onloadend=()=>s(a.result),a.onerror=c=>o(c),a.readAsDataURL(r)})}async function M(r){const s=await fetch(r);if(s.ok){const o=await s.blob();return await B(o)}return Promise.reject(s.status)}function D(r){const[s,o]=l.useState("none"),{devices:a}=r,[c,m]=l.useState({}),{sendMessage:i}=l.useContext(w),{t:u}=j("settings"),t=l.useCallback(async n=>{m(x=>({...x,[n.ieee_address]:"init"}));const b=z(n),g=await M(b);return await i("bridge/request/device/options",{id:n.ieee_address,options:{icon:g}}),m(x=>({...x,[n.ieee_address]:"done"})),!0},[i]);switch(l.useEffect(()=>{if(s==="start"){for(const n of a)n.type!=="Coordinator"&&t(n).catch(b=>{console.error("Error localising image",b),m(g=>({...g,[n.ieee_address]:"error"}))}).then();o("inprogress")}},[s,a,t]),s){case"none":return e.jsx(d,{className:"btn btn-primary join-item",onClick:()=>o("start"),children:u("localise_images")});case"inprogress":return e.jsx("ul",{className:"menu menu-xs bg-base-200 max-w-xs w-full join-item",children:a.map(n=>e.jsxs("li",{className:"flex-row justify-between items-center border-b py-0.5",children:[n.friendly_name,e.jsx("span",{className:"badge badge-xs",children:u(`common:${c[n.ieee_address]}`)})]},n.ieee_address))});case"done":return e.jsx("div",{children:u("common:unknown")})}return e.jsx("div",{children:u("zigbee:unknown")})}function $(){const r=k(),{sendMessage:s}=l.useContext(w),o=p(t=>t.bridgeInfo),a=p(t=>t.backup),c=p(t=>t.preparingBackup),m=p(t=>t.devices),{t:i}=j(["settings","common"]),u=l.useCallback(()=>{const t=C(new Date).replace(/[\s_:]/g,"-"),n=`z2m-backup.${o.version}.${t}.zip`;y(`data:application/zip;base64,${a}`,n)},[a,o.version]);return e.jsxs("div",{className:"join join-vertical",children:[e.jsx(N,{className:"btn btn-error join-item mb-2",onClick:async()=>await s("bridge/request/restart",""),title:i("restart_zigbee2mqtt"),modalDescription:i("common:dialog_confirmation_prompt"),modalCancelLabel:i("common:cancel"),children:i("restart_zigbee2mqtt")}),e.jsx(d,{className:"btn btn-primary join-item",onClick:async()=>await v(I.getState(),"state.json"),children:i("download_state")}),c?e.jsx(d,{className:"btn btn-primary join-item disabled",children:e.jsx("span",{className:"loading loading-dots loading-xl"})}):a?e.jsx(d,{className:"btn btn-primary join-item",onClick:u,children:i("download_z2m_backup")}):e.jsx(d,{className:"btn btn-primary join-item",onClick:async()=>{r(S()),await s("bridge/request/backup","")},children:i("request_z2m_backup")}),e.jsx(d,{className:"btn btn-primary join-item",onClick:async()=>await f.show(A,{addInstallCode:async t=>await s("bridge/request/install_code/add",{value:t})}),children:i("add_install_code")}),e.jsx(D,{devices:m})]})}export{$ as default};
|
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{r,W as y,C as _,a as o,b as C,Y as I,Z as P,$ as w,j as s,L as N,B as m,F as b,a0 as k,a1 as F,a2 as T}from"./index-DtyjNqrf.js";import{T as v}from"./Table-BQc_g_eJ.js";import"./envs-DFlyG_dH.js";import"./DebouncedInput-DnWGzIEH.js";function A(){const{sendMessage:i}=r.useContext(y),a=_(),x=o(e=>e.touchlinkDevices),d=o(e=>e.devices),c=o(e=>e.touchlinkIdentifyInProgress),l=o(e=>e.touchlinkResetInProgress),h=o(e=>e.touchlinkScanInProgress),u=c||l,{t:n}=C(["touchlink","common","zigbee"]),p=r.useCallback(async()=>{a(I({inProgress:!0,devices:[]})),await i("bridge/request/touchlink/scan","")},[i,a]),f=r.useCallback(async e=>{a(P(!0)),await i("bridge/request/touchlink/identify",e)},[i,a]),g=r.useCallback(async e=>{a(w(!0)),await i("bridge/request/touchlink/factory_reset",e)},[i,a]),j=r.useMemo(()=>[{id:"ieee_address",header:n("zigbee:ieee_address"),accessorFn:e=>e.ieee_address,cell:({row:{original:e}})=>d.find(t=>t.ieee_address===e.ieee_address)?s.jsx(N,{to:`/device/${e.ieee_address}/info`,className:"link link-hover",children:e.ieee_address}):e.ieee_address,sortingFn:(e,t)=>e.original.ieee_address.localeCompare(t.original.ieee_address)},{id:"friendly_name",header:n("common:friendly_name"),accessorFn:e=>d.find(t=>t.ieee_address===e.ieee_address)?.friendly_name},{id:"channel",header:n("zigbee:channel"),accessorFn:e=>e.channel},{id:"actions",header:"",cell:({row:{original:e}})=>s.jsxs("div",{className:"join join-horizontal",children:[s.jsx(m,{disabled:u,item:e,title:n("identify"),className:"btn btn-square btn-outline btn-primary join-item",onClick:f,children:s.jsx(b,{icon:c?k:F,spin:c})}),s.jsx(m,{disabled:u,item:e,title:n("factory_reset"),className:"btn btn-square btn-outline btn-error join-item",onClick:g,children:s.jsx(b,{icon:l?k:T,spin:l})})]}),enableSorting:!1,enableColumnFilter:!1}],[c,l,u,d,n,f,g]);return h?s.jsx("div",{className:"flex flex-row justify-center items-center gap-2",children:s.jsx("span",{className:"loading loading-infinity loading-xl"})}):s.jsxs(s.Fragment,{children:[s.jsx("div",{className:"flex flex-row flex-wrap justify-center items-center gap-2 mb-3",children:s.jsx(m,{className:"btn btn-primary",onClick:p,disabled:h,children:n("scan")})}),s.jsx(v,{id:"touchlink-devices",columns:j,data:x})]})}export{A as default};
|
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{r as i,b as s,j as l,L as a,
|
|
1
|
+
import{r as i,b as s,j as l,L as a,am as d}from"./index-DtyjNqrf.js";const r=e=>{const o="[/| |:]",n=new RegExp(o,"g");return e.replace(n,"_")},f=i.memo(({device:e})=>{const{t:o}=s("zigbee");let n=e.model_id||o("unknown"),t=d;if(e.supported&&e.definition){const m=[encodeURIComponent(e.definition.vendor.toLowerCase()),encodeURIComponent(e.definition.model.toLowerCase())].join("-");t=`https://www.zigbee2mqtt.io/devices/${encodeURIComponent(r(e.definition.model))}.html#${encodeURIComponent(r(m))}`,n=e.definition.model}return l.jsx(a,{target:"_blank",rel:"noopener noreferrer",to:t,className:"link link-hover",children:n})}),c=i.memo(({device:e})=>{const{t:o}=s("zigbee");let n=o("unsupported"),t=d;return e.supported&&e.definition&&(t=`https://www.zigbee2mqtt.io/supported-devices/#v=${encodeURIComponent(e.definition.vendor)}`,n=e.definition.vendor),l.jsx(a,{target:"_blank",rel:"noopener noreferrer",to:t,className:"link link-hover",children:n})});export{f as M,c as V};
|
|
Binary file
|