@fastybird/smart-panel-admin 1.1.0-alpha.15 → 1.1.0-alpha.16
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/{card-add-form-E8HD5P7x.js → card-add-form-CwVNfOa0.js} +1 -1
- package/dist/assets/{card-edit-form-krG-iKtG.js → card-edit-form-CSyu6tst.js} +1 -1
- package/dist/assets/{components-BvH9AXH1.js → components-C29cEP3E.js} +1 -1
- package/dist/assets/{components-V875k_UY.js → components-ChpIwZ2c.js} +1 -1
- package/dist/assets/{components-DwaYj6Cf.js → components-DOu6SAYU.js} +1 -1
- package/dist/assets/{components-Zbysysf4.js → components-EQDhXTcZ.js} +2 -2
- package/dist/assets/components-I6YluL_k.js +1 -0
- package/dist/assets/{components-fOCQ1-ME.js → components-g-LPjaFP.js} +1 -1
- package/dist/assets/{components-DGTDixMX.js → components-xe0tG-zv.js} +2 -2
- package/dist/assets/composables-2NuyfNXO.js +1 -0
- package/dist/assets/{composables-CEiy-ejt.js → composables-Cpk78oG1.js} +1 -1
- package/dist/assets/{composables-DHJBUFeX.js → composables-D2O7i4W5.js} +1 -1
- package/dist/assets/{composables-DDdN4T8e.js → composables-DeXiqZuU.js} +1 -1
- package/dist/assets/{dashboard-DtLQGoww.js → dashboard-YUP0xrqH.js} +2 -2
- package/dist/assets/devices-DQl0qr-s.js +2 -0
- package/dist/assets/devices.constants-DHQemX04.js +1 -0
- package/dist/assets/index-CV45di_J.css +1 -0
- package/dist/assets/{index-CgcWJbCW.js → index-W6henE9u.js} +5 -5
- package/dist/assets/{keys-DghNVBR5.js → keys-DMEIfK2a.js} +1 -1
- package/dist/assets/{page-configure-DNI83REl.js → page-configure-Dn69RQ5P.js} +1 -1
- package/dist/assets/{page-configure-B_5W0yDK.js → page-configure-Dz17Sp3H.js} +1 -1
- package/dist/assets/{scene-add-form-B5GZmYBe.js → scene-add-form-telggkNn.js} +1 -1
- package/dist/assets/{scene-edit-form-BpyqxJsJ.js → scene-edit-form-D6fUKT6Q.js} +1 -1
- package/dist/assets/{spaces-CJibihNe.js → spaces-DVdwHxsH.js} +2 -2
- package/dist/assets/{spaces-home-control.constants-Bmyd_bxK.js → spaces-home-control.constants-BgmjmN0q.js} +1 -1
- package/dist/assets/{system-BHTxM7b2.js → system-EoTYvhDY.js} +2 -2
- package/dist/assets/{useDevicesPlugins-C5GU_Od9.js → useDevicesPlugins-DEYJEOHX.js} +1 -1
- package/dist/assets/{view-card-add-6cJ2Oi8A.js → view-card-add-pt5m96qu.js} +1 -1
- package/dist/assets/{view-card-edit-Cj0ZaAZc.js → view-card-edit-DXjl5oBU.js} +1 -1
- package/dist/assets/{view-channel-DhNP8G5E.js → view-channel-Ba138KV7.js} +1 -1
- package/dist/assets/{view-channel-add-Dq2g9C2Q.js → view-channel-add-DuoPUzeY.js} +1 -1
- package/dist/assets/{view-channel-edit-CRBGnNO1.js → view-channel-edit-DQ6tJADU.js} +1 -1
- package/dist/assets/{view-channel-property-add-CiPpsqLa.js → view-channel-property-add-CnTLdMir.js} +1 -1
- package/dist/assets/{view-channel-property-edit-DgKq8lY_.js → view-channel-property-edit-1YMqTX0A.js} +1 -1
- package/dist/assets/{view-channels-V4deGym0.js → view-channels-CGqkcr4L.js} +1 -1
- package/dist/assets/{view-data-source-add-Duyt58zK.js → view-data-source-add-BwwcOapn.js} +1 -1
- package/dist/assets/{view-data-source-add-BVOljAgp.js → view-data-source-add-C-YsEqNf.js} +1 -1
- package/dist/assets/{view-data-source-edit-BrHBWN9M.js → view-data-source-edit-3a7uStGk.js} +1 -1
- package/dist/assets/{view-data-source-edit-DAp5tr92.js → view-data-source-edit-Bjpg7BqJ.js} +1 -1
- package/dist/assets/{view-device-HW-FYK6m.js → view-device-CbiJT-WF.js} +1 -1
- package/dist/assets/{view-device-add-h9XeQkR4.js → view-device-add-BbaM0dhl.js} +1 -1
- package/dist/assets/{view-device-control-k8ySBs5q.js → view-device-control-DaaVC0p8.js} +1 -1
- package/dist/assets/{view-device-edit-B6w4Pwoa.js → view-device-edit-Bmi8qely.js} +1 -1
- package/dist/assets/{view-devices-CuSYafue.js → view-devices-D3bJGe5R.js} +1 -1
- package/dist/assets/{view-devices-wizard-CVWxP2qH.js → view-devices-wizard-Bie75MnV.js} +1 -1
- package/dist/assets/{view-display-WkLUe2li.js → view-display-BPX9RiY5.js} +1 -1
- package/dist/assets/{view-display-edit-CVsjKYSe.js → view-display-edit-C1nr56vB.js} +1 -1
- package/dist/assets/{view-displays-DEfXxQsx.js → view-displays-DvlfLyrG.js} +1 -1
- package/dist/assets/{view-extension-detail-Dt-TRcGZ.js → view-extension-detail-DFw0OsMF.js} +1 -1
- package/dist/assets/{view-extensions-Djz5EFGI.js → view-extensions-BA9i1fyS.js} +1 -1
- package/dist/assets/{view-onboarding-DHUjhce1.js → view-onboarding-BHdDgVMj.js} +1 -1
- package/dist/assets/{view-page-add-B6B4ZDvT.js → view-page-add-CMkgrgRF.js} +1 -1
- package/dist/assets/{view-page-configure-CN7s71ow.js → view-page-configure-JhXEhrod.js} +1 -1
- package/dist/assets/{view-page-configure-CXwMF5sY.js → view-page-configure-ho3B4Gtr.js} +1 -1
- package/dist/assets/{view-page-edit-Cd0oAyro.js → view-page-edit-ubc81fqj.js} +1 -1
- package/dist/assets/{view-pages-BA2aoTFo.js → view-pages-CZR6c3uY.js} +1 -1
- package/dist/assets/{view-scene-add-CcmfdYfo.js → view-scene-add-H5f00zTk.js} +1 -1
- package/dist/assets/{view-scene-edit-CJnJk4xt.js → view-scene-edit-BYUTky-m.js} +1 -1
- package/dist/assets/{view-scenes-CzLR08or.js → view-scenes-eWQiAb02.js} +1 -1
- package/dist/assets/{view-simulator-device-wizard-DULtvgds.js → view-simulator-device-wizard-xcGSPrEU.js} +1 -1
- package/dist/assets/{view-space-add-bXDK88NX.js → view-space-add-DLF9C3Az.js} +1 -1
- package/dist/assets/{view-space-configure-sQY9tDyB.js → view-space-configure-LA94Bfj9.js} +1 -1
- package/dist/assets/{view-space-edit-DPp0vLpb.js → view-space-edit-CVBH6AaO.js} +1 -1
- package/dist/assets/{view-space-plugin-BoJTYQbN.js → view-space-plugin-DALFumLq.js} +1 -1
- package/dist/assets/{view-spaces-D76KLcmr.js → view-spaces-BpplLq0s.js} +1 -1
- package/dist/assets/{view-spaces-wizard-CbbVSvgt.js → view-spaces-wizard-DTzT5Ajh.js} +1 -1
- package/dist/assets/{view-stats-BdFxYCJ1.js → view-stats-DgbiVpuT.js} +1 -1
- package/dist/assets/{view-system-backups-DupEuFGr.js → view-system-backups-BUaKjaoI.js} +1 -1
- package/dist/assets/{view-system-info-BRiwO4VM.js → view-system-info-DOVllJ0V.js} +1 -1
- package/dist/assets/{view-system-log-detail-Bilyx2Rg.js → view-system-log-detail-D19o4Zoo.js} +1 -1
- package/dist/assets/{view-system-logs-CCBxaNJd.js → view-system-logs-CnF-VVpx.js} +1 -1
- package/dist/assets/{view-tile-add-Bv0G2Mux.js → view-tile-add-ChtKYIGF.js} +1 -1
- package/dist/assets/{view-tile-add-ByeFvQ1C.js → view-tile-add-DNOx9gjy.js} +1 -1
- package/dist/assets/{view-tile-edit-9CB74778.js → view-tile-edit-CLNWeo9W.js} +1 -1
- package/dist/assets/{view-tile-edit--n1jPylB.js → view-tile-edit-pikK5iSE.js} +1 -1
- package/dist/assets/{view-virtual-device-wizard-CbkHskbg.js → view-virtual-device-wizard-CHj4A2oD.js} +1 -1
- package/dist/assets/{weather-Dkj5so01.js → weather-Bd3vPXEz.js} +1 -1
- package/dist/index.html +28 -28
- package/package.json +1 -1
- package/dist/assets/components-CExMo9as.js +0 -1
- package/dist/assets/composables-CsFD_4mm.js +0 -1
- package/dist/assets/devices-3HwG1Cda.js +0 -2
- package/dist/assets/devices.constants-HX5whDWr.js +0 -1
- package/dist/assets/index-hWiJEHfB.css +0 -1
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import"./rolldown-runtime-QTnfLwEv.js";import{Ar as e,D as t,Dr as n,E as r,Er as i,H as a,Ki as o,Mr as s,Mt as c,Nr as l,O as u,Or as d,Pr as f,Qr as p,Rr as m,Si as h,T as g,Ui as _,Vr as v,Wi as y,Yr as b,_i as x,bi as S,bt as C,ci as w,cn as T,di as E,ei as D,et as O,ii as k,it as ee,ji as A,k as j,kr as M,ln as N,n as P,nt as F,qi as I,t as te,ti as ne,tt as re,ui as L,vt as ie,x as ae,xr as R,yi as oe,yr as se,zi as ce,zr as le}from"./icon-with-child-CgZMNB3F.js";import{$n as ue,Ar as de,Mr as z,Nr as fe,Qr as pe,Rr as B,Sr as me,Tr as he,Zr as ge,a as _e,br as ve,dr as ye,ei as be,er as V,f as xe,gt as Se,jr as Ce,la as we,m as Te,ot as Ee,p as De,pt as Oe,qr as H,ri as ke,s as Ae,x as je,yt as Me}from"./common-D4Z2wgrj.js";import{n as U,t as Ne}from"./descriptions-BHa0Pjk7.js";import{n as Pe,t as Fe}from"./table-CeNNpGH7.js";import{n as W,t as Ie}from"./form-Wa6uIXea.js";import{t as Le}from"./alert-I-oSc4A8.js";import{n as Re,r as G,t as K}from"./select-CTZp3DyT.js";import{t as q}from"./card-C50YgvLJ.js";import{n as ze,t as Be}from"./checkbox-CtqO8Xm5.js";import{n as J,t as Y}from"./col-CQn4VXnk.js";import{n as Ve,t as He}from"./collapse-hdC45R5w.js";import{t as Ue}from"./dialog-4clb5GeY.js";import{t as We}from"./link-mE1gaRBg.js";import{n as Ge,t as Ke}from"./tabs-CXWSFwGj.js";import{t as qe}from"./directive-D42ORGRu.js";import{i as Je}from"./config-DAgVgX46.js";import{t as Ye}from"./useNumberFormat-BR5R6xq8.js";import{t as Xe}from"./auth.constants-BM6DNCoE.js";import{c as Ze,s as Qe}from"./config.constants-17QBQ_kF.js";import{t as $e}from"./useConfigModule-CJHOZRLY.js";import{i as et,n as tt,o as nt,r as rt,s as it,t as at}from"./system.constants-BvSIFqdm.js";import{a as ot,o as st}from"./composables-
|
|
1
|
+
import"./rolldown-runtime-QTnfLwEv.js";import{Ar as e,D as t,Dr as n,E as r,Er as i,H as a,Ki as o,Mr as s,Mt as c,Nr as l,O as u,Or as d,Pr as f,Qr as p,Rr as m,Si as h,T as g,Ui as _,Vr as v,Wi as y,Yr as b,_i as x,bi as S,bt as C,ci as w,cn as T,di as E,ei as D,et as O,ii as k,it as ee,ji as A,k as j,kr as M,ln as N,n as P,nt as F,qi as I,t as te,ti as ne,tt as re,ui as L,vt as ie,x as ae,xr as R,yi as oe,yr as se,zi as ce,zr as le}from"./icon-with-child-CgZMNB3F.js";import{$n as ue,Ar as de,Mr as z,Nr as fe,Qr as pe,Rr as B,Sr as me,Tr as he,Zr as ge,a as _e,br as ve,dr as ye,ei as be,er as V,f as xe,gt as Se,jr as Ce,la as we,m as Te,ot as Ee,p as De,pt as Oe,qr as H,ri as ke,s as Ae,x as je,yt as Me}from"./common-D4Z2wgrj.js";import{n as U,t as Ne}from"./descriptions-BHa0Pjk7.js";import{n as Pe,t as Fe}from"./table-CeNNpGH7.js";import{n as W,t as Ie}from"./form-Wa6uIXea.js";import{t as Le}from"./alert-I-oSc4A8.js";import{n as Re,r as G,t as K}from"./select-CTZp3DyT.js";import{t as q}from"./card-C50YgvLJ.js";import{n as ze,t as Be}from"./checkbox-CtqO8Xm5.js";import{n as J,t as Y}from"./col-CQn4VXnk.js";import{n as Ve,t as He}from"./collapse-hdC45R5w.js";import{t as Ue}from"./dialog-4clb5GeY.js";import{t as We}from"./link-mE1gaRBg.js";import{n as Ge,t as Ke}from"./tabs-CXWSFwGj.js";import{t as qe}from"./directive-D42ORGRu.js";import{i as Je}from"./config-DAgVgX46.js";import{t as Ye}from"./useNumberFormat-BR5R6xq8.js";import{t as Xe}from"./auth.constants-BM6DNCoE.js";import{c as Ze,s as Qe}from"./config.constants-17QBQ_kF.js";import{t as $e}from"./useConfigModule-CJHOZRLY.js";import{i as et,n as tt,o as nt,r as rt,s as it,t as at}from"./system.constants-BvSIFqdm.js";import{a as ot,o as st}from"./composables-Cpk78oG1.js";var ct=T({type:{type:String,default:`line`,values:[`line`,`circle`,`dashboard`]},percentage:{type:Number,default:0,validator:e=>e>=0&&e<=100},status:{type:String,default:``,values:[``,`success`,`exception`,`warning`]},indeterminate:Boolean,duration:{type:Number,default:3},strokeWidth:{type:Number,default:6},strokeLinecap:{type:N(String),default:`round`},textInside:Boolean,width:{type:Number,default:126},showText:{type:Boolean,default:!0},color:{type:N([String,Array,Function]),default:``},striped:Boolean,stripedFlow:Boolean,format:{type:N(Function),default:e=>`${e}%`}}),lt=[`aria-valuenow`],ut={viewBox:`0 0 100 100`},dt=[`d`,`stroke`,`stroke-linecap`,`stroke-width`],ft=[`d`,`stroke`,`opacity`,`stroke-linecap`,`stroke-width`],pt={key:0},mt=C(f({name:`ElProgress`,__name:`progress`,props:ct,setup(t){let r={success:`#13ce66`,exception:`#ff4949`,warning:`#e6a23c`,default:`#20a0ff`},s=t,l=c(`progress`),u=i(()=>{let e={width:`${s.percentage}%`,animationDuration:`${s.duration}s`},t=j(s.percentage);return t.includes(`gradient`)?e.background=t:e.backgroundColor=t,e}),f=i(()=>(s.strokeWidth/s.width*100).toFixed(1)),m=i(()=>[`circle`,`dashboard`].includes(s.type)?Number.parseInt(`${50-Number.parseFloat(f.value)/2}`,10):0),h=i(()=>{let e=m.value,t=s.type===`dashboard`;return`
|
|
2
2
|
M 50 50
|
|
3
3
|
m 0 ${t?``:`-`}${e}
|
|
4
4
|
a ${e} ${e} 0 1 1 0 ${t?`-`:``}${e*2}
|
|
5
5
|
a ${e} ${e} 0 1 1 0 ${t?``:`-`}${e*2}
|
|
6
|
-
`}),g=i(()=>2*Math.PI*m.value),v=i(()=>s.type===`dashboard`?.75:1),b=i(()=>`${-1*g.value*(1-v.value)/2}px`),x=i(()=>({strokeDasharray:`${g.value*v.value}px, ${g.value}px`,strokeDashoffset:b.value})),S=i(()=>({strokeDasharray:`${g.value*v.value*(s.percentage/100)}px, ${g.value}px`,strokeDashoffset:b.value,transition:`stroke-dasharray 0.6s ease 0s, stroke 0.6s ease, opacity ease 0.6s`})),C=i(()=>{let e;return e=s.color?j(s.percentage):r[s.status]||r.default,e}),w=i(()=>s.status===`warning`?ie:s.type===`line`?s.status===`success`?re:F:s.status===`success`?O:ee),T=i(()=>s.type===`line`?12+s.strokeWidth*.4:s.width*.111111+2),E=i(()=>s.format(s.percentage));function D(e){let t=100/e.length;return e.map((e,n)=>_(e)?{color:e,percentage:(n+1)*t}:e).sort((e,t)=>e.percentage-t.percentage)}let j=e=>{let{color:t}=s;if(ce(t))return t(e);if(_(t))return t;{let n=D(t);for(let t of n)if(t.percentage>e)return t.color;return n[n.length-1]?.color}};return(r,i)=>(p(),e(`div`,{class:y([A(l).b(),A(l).m(t.type),A(l).is(t.status),{[A(l).m(`without-text`)]:!t.showText,[A(l).m(`text-inside`)]:t.textInside}]),role:`progressbar`,"aria-valuenow":t.percentage,"aria-valuemin":`0`,"aria-valuemax":`100`},[t.type===`line`?(p(),e(`div`,{key:0,class:y(A(l).b(`bar`))},[n(`div`,{class:y(A(l).be(`bar`,`outer`)),style:o({height:`${t.strokeWidth}px`})},[n(`div`,{class:y([A(l).be(`bar`,`inner`),{[A(l).bem(`bar`,`inner`,`indeterminate`)]:t.indeterminate},{[A(l).bem(`bar`,`inner`,`striped`)]:t.striped},{[A(l).bem(`bar`,`inner`,`striped-flow`)]:t.stripedFlow}]),style:o(u.value)},[(t.showText||r.$slots.default)&&t.textInside?(p(),e(`div`,{key:0,class:y(A(l).be(`bar`,`innerText`))},[ne(r.$slots,`default`,{percentage:t.percentage},()=>[n(`span`,null,I(E.value),1)])],2)):M(`v-if`,!0)],6)],6)],2)):(p(),e(`div`,{key:1,class:y(A(l).b(`circle`)),style:o({height:`${t.width}px`,width:`${t.width}px`})},[(p(),e(`svg`,ut,[n(`path`,{class:y(A(l).be(`circle`,`track`)),d:h.value,stroke:`var(${A(l).cssVarName(`fill-color-light`)}, #e5e9f2)`,"stroke-linecap":t.strokeLinecap,"stroke-width":f.value,fill:`none`,style:o(x.value)},null,14,dt),n(`path`,{class:y(A(l).be(`circle`,`path`)),d:h.value,stroke:C.value,fill:`none`,opacity:+!!t.percentage,"stroke-linecap":t.strokeLinecap,"stroke-width":f.value,style:o(S.value)},null,14,ft)]))],6)),(t.showText||r.$slots.default)&&!t.textInside?(p(),e(`div`,{key:2,class:y(A(l).e(`text`)),style:o({fontSize:`${T.value}px`})},[ne(r.$slots,`default`,{percentage:t.percentage},()=>[t.status?(p(),d(A(a),{key:1},{default:L(()=>[(p(),d(k(w.value)))]),_:1})):(p(),e(`span`,pt,I(E.value),1))])],6)):M(`v-if`,!0)],10,lt))}})),ht={expireTimes:`1d`,path:`; path=/`,domain:``,secure:!1,sameSite:`; SameSite=Lax`},gt=function(){function e(){this.current_default_config=ht}return e.prototype.config=function(e){for(var t in this.current_default_config)this.current_default_config[t]=e[t]?e[t]:ht[t]},e.prototype.get=function(e){var t=decodeURIComponent(document.cookie.replace(RegExp(`(?:(?:^|.*;)\\s*`+encodeURIComponent(e).replace(/[\-\.\+\*]/g,`\\$&`)+`\\s*\\=\\s*([^;]*).*$)|^.*$`),`$1`))||null;if(t&&t.substring(0,1)===`{`&&t.substring(t.length-1,t.length)===`}`)try{t=JSON.parse(t)}catch{return t}return t},e.prototype.set=function(e,t,n,r,i,a,o){if(!e)throw Error(`Cookie name is not found in the first argument.`);if(/^(?:expires|max-age|path|domain|secure|SameSite)$/i.test(e))throw Error(`Cookie name illegality. Cannot be set to ["expires","max-age","path","domain","secure","SameSite"] current key name: `+e);t&&t.constructor===Object&&(t=JSON.stringify(t));var s=``;if(n??=this.current_default_config.expireTimes?this.current_default_config.expireTimes:``,n&&n!=0)switch(n.constructor){case Number:s=n===1/0||n===-1?`; expires=Fri, 31 Dec 9999 23:59:59 GMT`:`; max-age=`+n;break;case String:if(/^(?:\d+(y|m|d|h|min|s))$/i.test(n)){var c=n.replace(/^(\d+)(?:y|m|d|h|min|s)$/i,`$1`);switch(n.replace(/^(?:\d+)(y|m|d|h|min|s)$/i,`$1`).toLowerCase()){case`m`:s=`; max-age=`+c*2592e3;break;case`d`:s=`; max-age=`+c*86400;break;case`h`:s=`; max-age=`+c*3600;break;case`min`:s=`; max-age=`+c*60;break;case`s`:s=`; max-age=`+c;break;case`y`:s=`; max-age=`+c*31104e3;break;default:}}else s=`; expires=`+n;break;case Date:s=`; expires=`+n.toUTCString();break}return document.cookie=encodeURIComponent(e)+`=`+encodeURIComponent(t)+s+(i?`; domain=`+i:this.current_default_config.domain?this.current_default_config.domain:``)+(r?`; path=`+r:this.current_default_config.path?this.current_default_config.path:`; path=/`)+(a==null?this.current_default_config.secure?`; Secure`:``:a?`; Secure`:``)+(o==null?this.current_default_config.sameSite?`; SameSute=`+this.current_default_config.sameSite:``:o?`; SameSite=`+o:``),this},e.prototype.remove=function(e,t,n){return!e||!this.isKey(e)?!1:(document.cookie=encodeURIComponent(e)+`=; expires=Thu, 01 Jan 1970 00:00:00 GMT`+(n?`; domain=`+n:this.current_default_config.domain?this.current_default_config.domain:``)+(t?`; path=`+t:this.current_default_config.path?this.current_default_config.path:`; path=/`)+`; SameSite=Lax`,!0)},e.prototype.isKey=function(e){return RegExp(`(?:^|;\\s*)`+encodeURIComponent(e).replace(/[\-\.\+\*]/g,`\\$&`)+`\\s*\\=`).test(document.cookie)},e.prototype.keys=function(){if(!document.cookie)return[];for(var e=document.cookie.replace(/((?:^|\s*;)[^\=]+)(?=;|$)|^\s*|\s*(?:\=[^;]*)?(?:\1|$)/g,``).split(/\s*(?:\=[^;]*)?;\s*/),t=0;t<e.length;t++)e[t]=decodeURIComponent(e[t]);return e},e}(),_t=null;function vt(){return _t??=new gt,{cookies:S(_t)}}var yt={class:`flex w-full items-center content-center`},bt=r(f({name:`SystemLogsFilter`,__name:`system-logs-filter`,props:{filters:{},filtersActive:{type:Boolean},live:{type:Boolean}},emits:[`update:filters`,`update:live`,`reset-filters`,`adjust-list`,`refresh`],setup(n,{emit:r}){let i=n,o=r,s=c(`system-logs-filter`),{t:u}=g(),f=me(i,`filters`,o),m=me(i,`live`,o),_=h(void 0);return w(()=>f.value.search,e=>{e===``&&(f.value.search=void 0)}),(n,r)=>(p(),e(`div`,yt,[l(A(Ie),{ref_key:`filterFormEl`,ref:_,inline:!0,model:A(f),class:y([[A(s).b()],`grow-1`])},{default:L(()=>[l(A(be),{modelValue:A(f).search,"onUpdate:modelValue":r[0]||=e=>A(f).search=e,placeholder:A(u)(`systemModule.fields.systemLogs.search.placeholder`),class:`max-w[280px] p-1`,clearable:``},{suffix:L(()=>[l(A(a),null,{default:L(()=>[l(A(t),{icon:`mdi:magnify`})]),_:1})]),_:1},8,[`modelValue`,`placeholder`])]),_:1},8,[`model`,`class`]),l(A(fe),{modelValue:A(m),"onUpdate:modelValue":r[1]||=e=>x(m)?m.value=e:null,class:`mr-6`,"active-text":A(u)(`systemModule.buttons.liveTail.title`),"inactive-text":A(u)(`systemModule.buttons.paused.title`)},null,8,[`modelValue`,`active-text`,`inactive-text`]),l(A(j),{plain:``,class:`px-2! mt-1 mr-1`,onClick:r[2]||=e=>o(`refresh`)},{default:L(()=>[l(A(t),{icon:`mdi:refresh`})]),_:1}),i.filtersActive?(p(),d(A(j),{key:0,plain:``,class:`px-2! mt-1 mr-1`,onClick:r[3]||=e=>o(`reset-filters`)},{default:L(()=>[l(A(t),{icon:`mdi:filter-off`})]),_:1})):M(``,!0),l(A(j),{plain:``,class:`px-2! mt-1 mr-1`,onClick:r[4]||=e=>o(`adjust-list`)},{default:L(()=>[l(A(t),{icon:`mdi:slider`})]),_:1})]))}}),[[`__scopeId`,`data-v-eea096a0`]]),xt={key:0,class:`h-full w-full leading-normal`},St={key:1,class:`h-full w-full leading-normal`},Ct=[`onClick`],wt={class:`grid grid-cols-[160px_80px_80px_1fr] md:grid-cols-[160px_80px_80px_1fr] gap-3 items-center`},Tt={class:`font-mono text-xs`},Et={class:`truncate`},Dt={key:0,class:`text-[var(--el-text-color-secondary)]`},Ot={class:`ml-1`},kt={class:`py-3 text-center`},At={key:0,class:`text-xs text-gray-400`},jt=r(f({name:`SystemLogsTable`,__name:`system-logs-table`,props:{items:{},loading:{type:Boolean},hasMore:{type:Boolean},filtersActive:{type:Boolean}},emits:[`detail`,`reset-filters`,`load-more`],setup(r,{emit:a}){let o=r,f=a,m=c(`system-logs-table`),{t:h}=g(),_=i(()=>o.items.length===0&&!o.hasMore),b=e=>{f(`detail`,e.id)},x=e=>ve(new Date(e)),S=e=>new Date(e).toISOString(),C=e=>{let t=e.toLowerCase();return[`fatal`,`error`,`fail`].includes(t)?{type:`danger`,effect:`light`}:[`warn`,`box`].includes(t)?{type:`warning`,effect:`light`}:[`success`,`ready`,`start`,`info`,`log`].includes(t)?{type:`success`,effect:`light`}:{effect:`plain`,class:`tag-neutral`}};return(i,a)=>r.items.length===0&&o.loading?(p(),e(`div`,xt,[l(A(u),{class:`h-full w-full`},{icon:L(()=>[l(A(te),{size:80},{primary:L(()=>[l(A(t),{icon:`mdi:console`})]),secondary:L(()=>[l(A(t),{icon:`mdi:database-refresh`})]),_:1})]),_:1})])):_.value&&!o.loading?(p(),e(`div`,St,[l(A(u),{class:`h-full w-full`},{icon:L(()=>[l(A(te),{size:80},{primary:L(()=>[l(A(t),{icon:`mdi:console`})]),secondary:L(()=>[l(A(t),{icon:`mdi:information`})]),_:1})]),title:L(()=>[s(I(A(h)(`systemModule.texts.systemLogs.noLogs`)),1)]),_:1})])):r.items.length===0&&o.filtersActive&&!o.loading?(p(),d(A(u),{key:2,class:`h-full w-full`},{icon:L(()=>[l(A(te),{size:80},{primary:L(()=>[l(A(t),{icon:`mdi:console`})]),secondary:L(()=>[l(A(t),{icon:`mdi:filter-multiple`})]),_:1})]),title:L(()=>[l(A(z),{class:`block`},{default:L(()=>[s(I(A(h)(`systemModule.texts.systemLogs.noFilteredLogs`)),1)]),_:1}),l(A(j),{type:`primary`,plain:``,class:`mt-4`,onClick:a[0]||=e=>f(`reset-filters`)},{icon:L(()=>[l(A(t),{icon:`mdi:filter-off`})]),default:L(()=>[s(` `+I(A(h)(`systemModule.buttons.resetFilters.title`)),1)]),_:1})]),_:1})):(p(),e(`div`,{key:3,class:y([A(m).b()])},[(p(!0),e(R,null,D(r.items,t=>(p(),e(`div`,{key:t.id,class:`px-3 py-2 border-b hover:bg-[var(--el-fill-color-light)] cursor-pointer`,onClick:()=>b(t)},[n(`div`,wt,[n(`span`,Tt,[l(A(ke),{class:`box-item`,content:S(t.ts),placement:`top-start`},{default:L(()=>[s(I(x(t.ts)),1)]),_:2},1032,[`content`])]),l(A(H),v({ref_for:!0},C(t.type),{size:`small`,class:`justify-self-start`}),{default:L(()=>[s(I(t.type),1)]),_:2},1040),l(A(H),{size:`small`,effect:`plain`,class:`justify-self-start`},{default:L(()=>[s(I(t.source),1)]),_:2},1024),n(`div`,Et,[t.tag?(p(),e(`span`,Dt,` [`+I(t.tag)+`] `,1)):M(``,!0),n(`span`,Ot,I(t.message??A(h)(`systemModule.texts.systemLogs.noMessage`)),1)])])],8,Ct))),128)),n(`div`,kt,[r.hasMore?M(``,!0):(p(),e(`span`,At,I(A(h)(`systemModule.texts.systemLogs.noMoreEntries`)),1)),r.hasMore?(p(),d(A(j),{key:1,loading:r.loading,onClick:a[1]||=e=>f(`load-more`)},{icon:L(()=>[l(A(t),{icon:`mdi:chevron-down`})]),default:L(()=>[s(` `+I(A(h)(`systemModule.buttons.loadMore.title`)),1)]),_:1},8,[`loading`])):M(``,!0)])],2))}}),[[`__scopeId`,`data-v-7a640be0`]]),Mt={class:`h-full w-full flex flex-col`},Nt={class:`flex-1 overflow-hidden flex flex-col`},Pt=f({name:`ListSystemLogs`,__name:`list-system-logs`,props:{items:{},filters:{},filtersActive:{type:Boolean},live:{type:Boolean},loading:{type:Boolean},hasMore:{type:Boolean}},emits:[`detail`,`adjust-list`,`reset-filters`,`refresh`,`load-more`,`clear`,`update:filters`,`update:live`],setup(t,{emit:r}){let i=t,a=r,o=me(i,`filters`,a),s=me(i,`live`,a),c=e=>{a(`detail`,e)},u=()=>{a(`reset-filters`)},d=()=>{a(`load-more`)},f=()=>{a(`refresh`)},m=()=>{a(`adjust-list`)};return(t,r)=>(p(),e(`div`,Mt,[l(A(q),{shadow:`never`,class:`px-1 py-2 mt-2 shrink-0`,"body-class":`p-0!`},{default:L(()=>[l(bt,{filters:A(o),"onUpdate:filters":r[0]||=e=>x(o)?o.value=e:null,live:A(s),"onUpdate:live":r[1]||=e=>x(s)?s.value=e:null,"filters-active":i.filtersActive,onResetFilters:u,onAdjustList:m,onRefresh:f},null,8,[`filters`,`live`,`filters-active`])]),_:1}),n(`div`,Nt,[l(A(q),{shadow:`never`,class:`mt-2 flex flex-col`,"body-class":`p-0! flex-1 overflow-hidden`},{default:L(()=>[l(A(pe),null,{default:L(()=>[l(jt,{items:i.items,loading:i.loading,"filters-active":i.filtersActive,"has-more":i.hasMore,onDetail:c,onResetFilters:u,onLoadMore:d},null,8,[`items`,`loading`,`filters-active`,`has-more`])]),_:1})]),_:1})])]))}}),Ft=Se({search:Me().optional(),levels:Ee(Oe(V)).default([]),sources:Ee(Oe(ue)).default([]),tag:Me().optional()}),It={class:`px-5 py-2 text-center`},Lt=r(f({name:`ListSystemLogsAdjust`,__name:`list-system-logs-adjust`,props:{filters:{},filtersActive:{type:Boolean}},emits:[`update:filters`,`reset-filters`],setup(r,{emit:i}){let o=r,u=i,f=c(`list-system-logs-adjust`),{t:m}=g(),_=[V.silent,V.fatal,V.error,V.warn,V.log,V.info,V.success,V.fail,V.debug],v=Object.values(ue),b=h([`levels`,`sources`,`tag`]),x=me(o,`filters`,u);return(r,i)=>(p(),e(R,null,[l(A(he),{teleport:``},{icon:L(()=>[l(A(t),{icon:`mdi:filter`})]),title:L(()=>[s(I(A(m)(`systemModule.headings.systemLogs.adjustFilters`)),1)]),subtitle:L(()=>[s(I(A(m)(`systemModule.subHeadings.systemLogs.adjustFilters`)),1)]),_:1}),n(`div`,{class:y([[A(f).b()],`flex flex-col h-full w-full overflow-hidden`])},[l(A(pe),{class:`flex-grow`},{default:L(()=>[l(A(He),{modelValue:b.value,"onUpdate:modelValue":i[3]||=e=>b.value=e},{default:L(()=>[l(A(Ve),{name:`levels`,class:y([A(f).e(`filter-item`)])},{title:L(()=>[l(A(z),{class:`!px-2`},{default:L(()=>[s(I(A(m)(`systemModule.filters.systemLogs.levels.title`)),1)]),_:1})]),default:L(()=>[l(A(ze),{modelValue:A(x).levels,"onUpdate:modelValue":i[0]||=e=>A(x).levels=e,class:`flex flex-col px-4`},{default:L(()=>[(p(),e(R,null,D(_,(e,t)=>l(A(Be),{key:t,label:A(m)(`systemModule.levels.${e}`),value:e},null,8,[`label`,`value`])),64))]),_:1},8,[`modelValue`])]),_:1},8,[`class`]),l(A(Ve),{name:`sources`,class:y([A(f).e(`filter-item`)])},{title:L(()=>[l(A(z),{class:`!px-2`},{default:L(()=>[s(I(A(m)(`systemModule.filters.systemLogs.sources.title`)),1)]),_:1})]),default:L(()=>[l(A(ze),{modelValue:A(x).sources,"onUpdate:modelValue":i[1]||=e=>A(x).sources=e,class:`flex flex-col px-4`},{default:L(()=>[(p(!0),e(R,null,D(A(v),(e,t)=>(p(),d(A(Be),{key:t,label:A(m)(`systemModule.sources.${e}`),value:e},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`])]),_:1},8,[`class`]),l(A(Ve),{name:`tag`,class:y([A(f).e(`filter-item`)])},{title:L(()=>[l(A(z),{class:`!px-2`},{default:L(()=>[s(I(A(m)(`systemModule.filters.systemLogs.tag.title`)),1)]),_:1})]),default:L(()=>[l(A(be),{modelValue:A(x).search,"onUpdate:modelValue":i[2]||=e=>A(x).search=e,placeholder:A(m)(`systemModule.filters.systemLogs.tag.placeholder`),class:`w-full p-1`,clearable:``},{suffix:L(()=>[l(A(a),null,{default:L(()=>[l(A(t),{icon:`mdi:magnify`})]),_:1})]),_:1},8,[`modelValue`,`placeholder`])]),_:1},8,[`class`])]),_:1},8,[`modelValue`])]),_:1}),n(`div`,It,[l(A(j),{disabled:!o.filtersActive,onClick:i[4]||=e=>u(`reset-filters`)},{icon:L(()=>[l(A(t),{icon:`mdi:filter-remove`})]),default:L(()=>[s(` `+I(A(m)(`systemModule.buttons.reset.title`)),1)]),_:1},8,[`disabled`])])],2)],64))}}),[[`__scopeId`,`data-v-fc7b2d52`]]),Rt={class:`font-mono`},zt={class:`font-mono`},Bt={class:`font-mono`},Vt=[`href`],Ht={class:`text-xs`},Ut={class:`p-2 bg-[var(--el-fill-color-light)] rounded text-xs overflow-auto`},Wt={class:`p-2 bg-[var(--el-fill-color-light)] rounded text-xs overflow-auto`},Gt={class:`flex gap-2`},Kt=r(f({name:`SystemLogDetail`,__name:`system-log-detail`,props:{systemLog:{}},setup(t){let r=c(`system-log-detail`),{t:i}=g(),a=e=>{try{return JSON.stringify(e,null,2)}catch{return String(e)}},o=async e=>{try{await navigator.clipboard.writeText(e)}catch{let t=document.createElement(`textarea`);t.value=e,t.style.position=`fixed`,t.style.opacity=`0`,document.body.appendChild(t),t.select(),document.execCommand(`copy`),document.body.removeChild(t)}},u=e=>{let t=e.toLowerCase();return[`fatal`,`error`,`fail`].includes(t)?{type:`danger`,effect:`light`}:[`warn`,`box`].includes(t)?{type:`warning`,effect:`light`}:[`success`,`ready`,`start`,`info`,`log`].includes(t)?{type:`success`,effect:`light`}:{effect:`plain`,class:`tag-neutral`}};return(c,f)=>(p(),e(`div`,{class:y([[A(r).b()],`space-y-4`])},[l(A(Ne),{column:1,border:``,"label-width":`140px`,"class-name":`log-detail-descriptions`},{default:L(()=>[l(A(U),{label:A(i)(`systemModule.fields.systemLogs.timestamp.title`)},{default:L(()=>[n(`span`,Rt,I(t.systemLog.ts),1)]),_:1},8,[`label`]),t.systemLog.ingestedAt?(p(),d(A(U),{key:0,label:A(i)(`systemModule.fields.systemLogs.ingestedAt.title`)},{default:L(()=>[n(`span`,zt,I(t.systemLog.ingestedAt),1)]),_:1},8,[`label`])):M(``,!0),l(A(U),{label:A(i)(`systemModule.fields.systemLogs.source.title`)},{default:L(()=>[l(A(H),{size:`small`,effect:`plain`,class:`justify-self-start`},{default:L(()=>[s(I(t.systemLog.source),1)]),_:1})]),_:1},8,[`label`]),l(A(U),{label:A(i)(`systemModule.fields.systemLogs.level.title`)},{default:L(()=>[l(A(H),v(u(t.systemLog.type),{size:`small`,class:`justify-self-start`}),{default:L(()=>[s(I(t.systemLog.type),1)]),_:1},16)]),_:1},8,[`label`]),l(A(U),{label:A(i)(`systemModule.fields.systemLogs.message.title`)},{default:L(()=>[s(I(t.systemLog.message??`(${A(i)(`systemModule.fields.systemLogs.message.noMessage`)})`),1)]),_:1},8,[`label`]),t.systemLog.tag?(p(),d(A(U),{key:1,label:A(i)(`systemModule.fields.systemLogs.tag.title`)},{default:L(()=>[s(I(t.systemLog.tag),1)]),_:1},8,[`label`])):M(``,!0),t.systemLog.user?.id?(p(),d(A(U),{key:2,label:A(i)(`systemModule.fields.systemLogs.user.title`)},{default:L(()=>[n(`span`,Bt,I(t.systemLog.user.id),1)]),_:1},8,[`label`])):M(``,!0),t.systemLog.context?.appVersion?(p(),d(A(U),{key:3,label:A(i)(`systemModule.fields.systemLogs.appVersion.title`)},{default:L(()=>[s(I(t.systemLog.context?.appVersion),1)]),_:1},8,[`label`])):M(``,!0),t.systemLog.context?.url?(p(),d(A(U),{key:4,label:A(i)(`systemModule.fields.systemLogs.url.title`)},{default:L(()=>[n(`a`,{href:t.systemLog.context.url,target:`_blank`,class:`text-primary hover:underline`},I(t.systemLog.context.url),9,Vt)]),_:1},8,[`label`])):M(``,!0),t.systemLog.context?.userAgent?(p(),d(A(U),{key:5,label:A(i)(`systemModule.fields.systemLogs.userAgent.title`)},{default:L(()=>[n(`span`,Ht,I(t.systemLog.context?.userAgent),1)]),_:1},8,[`label`])):M(``,!0),t.systemLog.context?.locale?(p(),d(A(U),{key:6,label:A(i)(`systemModule.fields.systemLogs.locale.title`)},{default:L(()=>[s(I(t.systemLog.context.locale),1)]),_:1},8,[`label`])):M(``,!0)]),_:1}),l(A(Ge),{type:`card`,class:`mt-2`},{default:L(()=>[t.systemLog.args?(p(),d(A(Ke),{key:0,label:A(i)(`systemModule.fields.systemLogs.args.title`)},{default:L(()=>[n(`pre`,Ut,I(a(t.systemLog.args)),1)]),_:1},8,[`label`])):M(``,!0),l(A(Ke),{label:A(i)(`systemModule.fields.systemLogs.rawJson.title`)},{default:L(()=>[n(`pre`,Wt,I(a(t.systemLog)),1),n(`div`,Gt,[l(A(j),{size:`small`,onClick:f[0]||=e=>o(a(t.systemLog))},{default:L(()=>[s(I(A(i)(`systemModule.buttons.copyJson.title`)),1)]),_:1})])]),_:1},8,[`label`])]),_:1})],2))}}),[[`__scopeId`,`data-v-632f56b9`]]),qt={class:`flex flex-col items-center`},Jt={class:`flex flex-row justify-center items-center my-4`},Yt=f({name:`AboutApplication`,__name:`about-application`,setup(r){let{t:i}=g(),o=h(`1.1.0-alpha.15`);return(r,c)=>(p(),e(`div`,qt,[l(A(t),{icon:`mdi:cog-outline`,class:`w[200px] h[200px]`}),l(A(z),{size:`large`,class:`block text-4xl! mt-4!`},{default:L(()=>[...c[0]||=[s(` FastyBird! Smart Panel `,-1)]]),_:1}),l(A(z),{class:`block text-lg! my-2!`},{default:L(()=>[s(`Version `+I(o.value),1)]),_:1}),l(A(B)),l(A(z),{size:`large`,class:`block text-justify max-w-[500px]`,"data-test-id":`about-info`},{default:L(()=>[s(I(A(i)(`systemModule.texts.system.about`)),1)]),_:1}),l(A(B)),n(`div`,Jt,[l(A(We),{underline:`never`,href:`https://github.com/fastybird`,target:`_blank`,class:`mx-5`},{icon:L(()=>[l(A(a),{size:20},{default:L(()=>[l(A(t),{icon:`mdi:github`})]),_:1})]),_:1}),l(A(B),{direction:`vertical`}),l(A(We),{underline:`never`,href:`https://x.com/fastybird`,target:`_blank`,class:`mx-5`},{icon:L(()=>[l(A(a),{size:20},{default:L(()=>[l(A(t),{icon:`fa6-brands:x-twitter`})]),_:1})]),_:1}),l(A(B),{direction:`vertical`}),l(A(We),{underline:`never`,href:`https://discord.gg/HPRJ2GzK`,target:`_blank`,class:`mx-5`},{icon:L(()=>[l(A(a),{size:20},{default:L(()=>[l(A(t),{icon:`mdi:discord`})]),_:1})]),_:1}),l(A(B),{direction:`vertical`}),l(A(We),{underline:`never`,href:`https://www.facebook.com/fastybird`,target:`_blank`,class:`mx-5`},{icon:L(()=>[l(A(a),{size:20},{default:L(()=>[l(A(t),{icon:`mdi:facebook`})]),_:1})]),_:1})])]))}}),Xt=window.location.pathname.match(/^(\/api\/hassio_ingress\/[^/]+)/),Zt=Xt?Xt[1]:``,Qt=()=>{let e=Te(),{cookies:t}=vt(),n=h([]),r=h(!1),i=h(!1),a=`${window.location.origin}${Zt}/api/v1/${P}/${it}/backups`,o=async()=>{r.value=!0;try{let{data:t,error:r}=await e.client.GET(`/modules/system/backups`,{});if(r||!t?.data)return;n.value=t.data}catch{}finally{r.value=!1}};return{backups:n,loading:r,creating:i,fetchBackups:o,createBackup:async t=>{i.value=!0;try{let n=t?{data:{name:t}}:void 0,{data:r,error:i}=await e.client.POST(`/modules/system/backups`,{body:n});if(i||!r?.data)return null;let a=r.data;return await o(),a}catch{return null}finally{i.value=!1}},deleteBackup:async t=>{try{let{error:n}=await e.client.DELETE(`/modules/system/backups/{id}`,{params:{path:{id:t}}});return n?!1:(await o(),!0)}catch{return!1}},restoreBackup:async t=>{try{let{error:n}=await e.client.POST(`/modules/system/backups/{id}/restore`,{params:{path:{id:t}}});return!n}catch{return!1}},downloadBackup:async e=>{let n=t.get(Xe),r=`${a}/${e.id}/download`,i=await fetch(r,{headers:{...n?{Authorization:`Bearer ${n}`}:{}}});if(!i.ok)throw Error(`Download failed`);let o=await i.blob(),s=document.createElement(`a`),c=URL.createObjectURL(o);s.href=c,s.download=`smart-panel-backup-${e.name||e.id}.tar.gz`,s.click(),setTimeout(()=>URL.revokeObjectURL(c),2e3)},uploadBackup:async e=>{let n=t.get(Xe),r=`${a}/upload`,i=new FormData;i.append(`file`,e);try{return(await fetch(r,{method:`POST`,headers:{...n?{Authorization:`Bearer ${n}`}:{}},body:i})).ok?(await o(),!0):!1}catch{return!1}}}},$t=Symbol(`FB-System-Module-SystemActionsService`),en=class{app;router;t;factoryResetTriggeredBy=null;constructor(e,t,n){this.app=e,this.router=t,this.t=n.t}reboot(){this.router.push({name:et.REBOOTING})}serviceRestart(){this.router.push({name:et.SERVICE_RESTARTING})}powerOff(){this.router.push({name:et.POWER_OFF})}factoryReset(){}isFactoryResetDone(){return this.factoryResetTriggeredBy===null}async factoryResetDone(){this.factoryResetTriggeredBy!==null&&(this.factoryResetTriggeredBy=null,de.success(this.t(`systemModule.messages.manage.factoryResetSuccess`)),await this.handleFactoryResetRedirect())}setFactoryResetTrigger(e){this.factoryResetTriggeredBy=e}async handleFactoryResetRedirect(){let e=ye(this.app);e&&await e.signOut(),ot(),await this.router.push({name:et.FACTORY_RESET})}},tn=e=>{if(e&&e._context&&e._context.provides&&e._context.provides[$t])return e._context.provides[$t];if(m()){let e=le($t,void 0);if(e)return e}throw Error(`A system actions service has not been provided.`)},nn=(e,t)=>{e.provide($t,t)},rn=()=>{let e=tn(),{t}=g(),{sendCommand:n}=_e(),{invalidate:r}=st(),{configModule:i}=$e({type:`displays-module`}),a=()=>{let e=i.value;return e!==null&&e.deploymentMode!==`all-in-one`};return{onServiceRestart:()=>{let r=a()?t(`systemModule.messages.manage.confirmServiceRestartGateway`):t(`systemModule.messages.manage.confirmServiceRestart`);Ce.confirm(r,t(`systemModule.headings.manage.serviceRestart`),{confirmButtonText:t(`systemModule.buttons.yes.title`),cancelButtonText:t(`systemModule.buttons.no.title`),type:`warning`}).then(async()=>{e.serviceRestart();try{await n(tt.SYSTEM_SERVICE_RESTART_SET,null,at.INTERNAL_PLATFORM_ACTION)}catch{}}).catch(()=>{})},onSystemReboot:()=>{let r=a()?t(`systemModule.messages.manage.confirmRebootGateway`):t(`systemModule.messages.manage.confirmReboot`);Ce.confirm(r,t(`systemModule.headings.manage.systemReboot`),{confirmButtonText:t(`systemModule.buttons.yes.title`),cancelButtonText:t(`systemModule.buttons.no.title`),type:`warning`}).then(async()=>{e.reboot();try{await n(tt.SYSTEM_REBOOT_SET,null,at.INTERNAL_PLATFORM_ACTION)}catch{}}).catch(()=>{})},onPowerOff:()=>{let r=a()?t(`systemModule.messages.manage.confirmPowerOffGateway`):t(`systemModule.messages.manage.confirmPowerOff`);Ce.confirm(r,t(`systemModule.headings.manage.powerOff`),{confirmButtonText:t(`systemModule.buttons.yes.title`),cancelButtonText:t(`systemModule.buttons.no.title`),type:`warning`}).then(async()=>{e.powerOff();try{await n(tt.SYSTEM_POWER_OFF_SET,null,at.INTERNAL_PLATFORM_ACTION)}catch{}}).catch(()=>{})},onFactoryReset:()=>{let i=a()?t(`systemModule.messages.manage.confirmFactoryResetGateway`):t(`systemModule.messages.manage.confirmFactoryReset`);Ce.confirm(i,t(`systemModule.headings.manage.factoryReset`),{confirmButtonText:t(`systemModule.buttons.yes.title`),cancelButtonText:t(`systemModule.buttons.no.title`),type:`warning`}).then(async()=>{n(tt.SYSTEM_FACTORY_RESET_SET,null,at.INTERNAL_PLATFORM_ACTION,3e4).catch(()=>{}),r(),await e.handleFactoryResetRedirect()}).catch(()=>{})}}},an=Symbol(`FB-Module-System-SystemInfo`),on=Symbol(`FB-Module-System-ThrottleStatus`),sn=Symbol(`FB-Module-System-LogsEntries`),cn=()=>{let e=je().getStore(an),{data:t,semaphore:n}=we(e);return{systemInfo:i(()=>t.value),isLoading:i(()=>t.value===null&&n.value.getting),fetchSystemInfo:async()=>{await e.get()}}},ln=({id:e})=>{let{data:t,semaphore:n}=we(je().getStore(sn)),r=i(()=>e===null?null:t.value[e]??null);return{systemLog:r,isLoading:i(()=>e===null||r.value!==null?!1:n.value.fetching.items)}},un=xe(),dn={search:void 0,levels:[],sources:[],tag:void 0},fn=e=>{let t=je().getStore(sn),{firstLoad:n,hasMore:r,nextCursor:a,semaphore:o}=we(t),{filters:s,reset:c}=Ae({key:`${nt}:logs:list`,filters:{schema:Ft,defaults:dn},syncQuery:e?.syncQuery??!0,version:1}),l=i(()=>s.value.search!==dn.search||!(0,un.isEqual)(s.value.levels,dn.levels)||!(0,un.isEqual)(s.value.sources,dn.sources)||s.value.tag!==dn.tag),u=h(!1),d=i(()=>t.findAll().sort((e,t)=>Date.parse(t.ts)-Date.parse(e.ts)).filter(e=>(!s.value.search||e.id.toLowerCase().includes(s.value.search.toLowerCase())||e.message?.toLowerCase().includes(s.value.search.toLowerCase())||e.source?.toLowerCase().includes(s.value.search.toLowerCase()))&&(s.value.levels.length===0||s.value.levels.includes(e.type))&&(s.value.sources.length===0||s.value.sources.includes(e.source))&&(!s.value.tag||(e.tag||``).toLowerCase().includes(s.value.tag.toLowerCase())))),f=async()=>{await t.fetch()},p=async()=>{await t.fetch({afterId:a.value,append:!0})},m=async()=>{await t.fetch()},g=i(()=>o.value.fetching.items||!n.value),_=i(()=>n.value),v=null;return w(()=>u.value,e=>{v&&=(clearInterval(v),null),e&&(v=setInterval(()=>{o.value.fetching.items||t.fetch({append:!0}).catch(()=>void 0)},3e3))}),oe(()=>{v&&=(clearInterval(v),null)}),{systemLogs:d,hasMore:r,areLoading:g,loaded:_,fetchSystemLogs:f,loadMoreSystemLogs:p,filters:s,filtersActive:l,resetFilter:c,live:u,refreshSystemLogs:m}},pn=()=>{let e=je().getStore(on),{data:t,semaphore:n}=we(e);return{throttleStatus:i(()=>t.value),isLoading:i(()=>t.value===null&&n.value.getting),fetchThrottleStatus:async()=>{await e.get()}}},mn=[],hn=e=>(mn.push(e),()=>{mn=mn.filter(t=>t!==e)}),gn=e=>{for(let t of mn)t(e)},_n=`/${P}/${it}/system/update/status`,vn=`/${P}/${it}/system/update/check`,yn=`/${P}/${it}/system/update/install`,bn=null,xn=0,Sn=5e3,Cn=h(null),wn=h(null),Tn=h(!1),En=h(null),Dn=h(null),On=h(null),X=h(`idle`),kn=h(null),Z=h(null),Q=h(null),An=h(!1),$=h(!1),jn=h(!1),Mn=null,Nn=4e3,Pn=300*1e3,Fn=1800*1e3,In=null,Ln=2e3,Rn=90,zn=i(()=>[`downloading`,`stopping`,`installing`,`migrating`,`starting`].includes(X.value)),Bn=e=>{Cn.value=e.current_version??null,wn.value=e.latest_version??null,Tn.value=e.update_available??!1,En.value=e.update_type??null,Dn.value=e.last_checked?new Date(e.last_checked):null,On.value=e.changelog_url??null,e.status!==void 0&&(X.value=e.status),e.phase!==void 0&&(kn.value=e.phase),e.progress_percent!==void 0&&(Z.value=e.progress_percent),e.error!==void 0&&(Q.value=e.error===null?null:`systemModule.messages.update.updateFailed`),$.value=zn.value},Vn=e=>{e.update_available!==void 0&&(Tn.value=e.update_available),e.latest_version!==void 0&&(wn.value=e.latest_version),e.current_version!==void 0&&(Cn.value=e.current_version),e.update_type!==void 0&&(En.value=e.update_type),e.status!==void 0&&(X.value=e.status),e.phase!==void 0&&(kn.value=e.phase),e.progress_percent!==void 0&&(Z.value=e.progress_percent),e.error!==void 0&&(Q.value=e.error===null?null:`systemModule.messages.update.updateFailed`),$.value=zn.value};hn(Vn);var Hn=()=>{let e=Te(),t=async()=>{let t=Date.now();if(!(t-xn<Sn))return bn||(An.value=!0,xn=t,bn=(async()=>{try{let{data:t}=await e.client.GET(_n);t?.data&&Bn(t.data)}catch{}finally{An.value=!1,bn=null}})(),bn)},n=async()=>{An.value=!0;try{let{data:t}=await e.client.POST(vn);t?.data&&Bn(t.data)}catch(e){throw Q.value=`systemModule.messages.update.checkFailed`,e}finally{An.value=!1}},r=()=>{In!==null&&(clearInterval(In),In=null)},i=()=>{r(),In=setInterval(()=>{let e=Z.value??45;if(e<Rn){let t=Rn-e,n=Math.max(1,Math.floor(t*.15));Z.value=Math.min(Rn,e+n)}},Ln)},a=()=>{r(),Mn!==null&&(clearInterval(Mn),Mn=null)},o=()=>{a();let t=wn.value,n=Date.now(),o=n;Mn=setInterval(async()=>{if(Date.now()-o>Pn||Date.now()-n>Fn){a(),jn.value=!1,$.value=!1,X.value=`failed`,Q.value=`systemModule.messages.update.updateFailed`;return}try{let{data:n}=await e.client.GET(_n);if(n?.data){let e=n.data,i=e.status,s=e.current_version;Bn(e),o=Date.now(),i===`complete`?(X.value=`complete`,kn.value=null,Q.value=null,Z.value=100,$.value=!1,jn.value=!1,a()):i===`failed`?(X.value=`failed`,kn.value=null,$.value=!1,jn.value=!1,Q.value=Q.value||`systemModule.messages.update.updateFailed`,a()):!i||i===`idle`?(s&&t&&s===t&&(X.value=`complete`,Q.value=null,Z.value=100),kn.value=null,$.value=!1,jn.value=!1,a()):(r(),jn.value=!1)}}catch{jn.value=!0,In===null&&i()}},Nn)};return{currentVersion:Cn,latestVersion:wn,updateAvailable:Tn,updateType:En,lastChecked:Dn,changelogUrl:On,status:X,phase:kn,progressPercent:Z,error:Q,loading:An,installing:$,waitingForRestart:jn,isUpdating:zn,fetchStatus:t,checkForUpdates:n,installUpdate:async(t=!1)=>{$.value=!0,X.value=`downloading`,Q.value=null;try{let{error:n}=await e.client.POST(yn,{body:{allow_major:t}});if(n)throw $.value=!1,X.value=`failed`,Q.value=`systemModule.messages.update.installFailed`,Error(`Failed to start update`);o()}catch(e){throw $.value=!1,X.value=`failed`,Q.value=`systemModule.messages.update.installFailed`,e}},applyStatusEvent:Vn}},Un={class:`flex justify-center items-center h-full`},Wn={class:`flex justify-center items-center h-full`},Gn={class:`flex justify-center items-center h-full`},Kn={class:`flex justify-center items-center h-full`},qn={class:`flex justify-center items-center h-full`},Jn={class:`flex justify-center items-center h-full`},Yn={class:`flex justify-center items-center h-full`},Xn={class:`flex justify-center items-center h-full`},Zn={class:`flex justify-center items-center h-full`},Qn={class:`flex justify-center items-center h-full`},$n={class:`flex justify-center items-center h-full`},er={class:`flex justify-center items-center h-full`},tr=f({name:`ManageSystem`,__name:`manage-system`,emits:[`close`],setup(r,{emit:a}){let o=a,{t:c}=g(),u=ae(),{configModule:d}=$e({type:`displays-module`}),f=i(()=>{let e=d.value;return e!==null&&e.deploymentMode!==`all-in-one`}),{onServiceRestart:m,onSystemReboot:h,onPowerOff:_,onFactoryReset:v}=rn(),y=()=>{o(`close`),u.push({name:et.SYSTEM_BACKUPS})},b=()=>{o(`close`),u.push({name:et.SYSTEM_LOGS})};return(r,i)=>(p(),e(R,null,[l(A(J),{justify:`center`,class:`cursor-pointer`,onClick:A(m)},{default:L(()=>[l(A(Y),{span:3,class:`text-center`},{default:L(()=>[n(`div`,Un,[l(A(ge),{size:32},{default:L(()=>[l(A(t),{icon:`mdi:restart`,class:`w[20px] h[20px]`})]),_:1})])]),_:1}),l(A(Y),{span:19},{default:L(()=>[l(A(z),{size:`large`,class:`block font-600 text-lg`},{default:L(()=>[s(I(A(c)(`systemModule.headings.manage.serviceRestart`)),1)]),_:1}),l(A(z),{class:`block`,"data-test-id":`service-restart-info`},{default:L(()=>[s(I(A(c)(`systemModule.texts.manage.serviceRestartDevice`)),1)]),_:1})]),_:1}),l(A(Y),{span:2,class:`text-center`},{default:L(()=>[n(`div`,Wn,[l(A(t),{icon:`mdi:keyboard-arrow-right`,class:`w[32px] h[32px]`})])]),_:1})]),_:1},8,[`onClick`]),l(A(B)),l(A(J),{justify:`center`,class:`cursor-pointer`,onClick:A(h)},{default:L(()=>[l(A(Y),{span:3,class:`text-center`},{default:L(()=>[n(`div`,Gn,[l(A(ge),{size:32},{default:L(()=>[l(A(t),{icon:`mdi:restart-alert`,class:`w[20px] h[20px]`})]),_:1})])]),_:1}),l(A(Y),{span:19},{default:L(()=>[l(A(z),{size:`large`,class:`block font-600 text-lg`},{default:L(()=>[s(I(A(c)(`systemModule.headings.manage.systemReboot`)),1)]),_:1}),l(A(z),{class:`block`,"data-test-id":`system-reboot-info`},{default:L(()=>[s(I(f.value?A(c)(`systemModule.texts.manage.rebootGateway`):A(c)(`systemModule.texts.manage.rebootDevice`)),1)]),_:1})]),_:1}),l(A(Y),{span:2,class:`text-center`},{default:L(()=>[n(`div`,Kn,[l(A(t),{icon:`mdi:keyboard-arrow-right`,class:`w[32px] h[32px]`})])]),_:1})]),_:1},8,[`onClick`]),l(A(B)),l(A(J),{justify:`center`,class:`cursor-pointer`,onClick:A(_)},{default:L(()=>[l(A(Y),{span:3,class:`text-center`},{default:L(()=>[n(`div`,qn,[l(A(ge),{size:32},{default:L(()=>[l(A(t),{icon:`mdi:power-settings-new`,class:`w[20px] h[20px]`})]),_:1})])]),_:1}),l(A(Y),{span:19},{default:L(()=>[l(A(z),{size:`large`,class:`block font-600 text-lg`},{default:L(()=>[s(I(A(c)(`systemModule.headings.manage.powerOff`)),1)]),_:1}),l(A(z),{class:`block`,"data-test-id":`power-off-info`},{default:L(()=>[s(I(f.value?A(c)(`systemModule.texts.manage.powerOffGateway`):A(c)(`systemModule.texts.manage.powerOffDevice`)),1)]),_:1})]),_:1}),l(A(Y),{span:2,class:`text-center`},{default:L(()=>[n(`div`,Jn,[l(A(t),{icon:`mdi:keyboard-arrow-right`,class:`w[32px] h[32px]`})])]),_:1})]),_:1},8,[`onClick`]),l(A(B)),l(A(J),{justify:`center`,class:`mb-4 cursor-pointer`,onClick:A(v)},{default:L(()=>[l(A(Y),{span:3,class:`text-center`},{default:L(()=>[n(`div`,Yn,[l(A(ge),{size:32},{default:L(()=>[l(A(t),{icon:`mdi:vacuum-cleaner`,class:`w[20px] h[20px]`})]),_:1})])]),_:1}),l(A(Y),{span:19},{default:L(()=>[l(A(z),{size:`large`,class:`block font-600 text-lg`},{default:L(()=>[s(I(A(c)(`systemModule.headings.manage.factoryReset`)),1)]),_:1}),l(A(z),{class:`block`,"data-test-id":`factory-reset-info`},{default:L(()=>[s(I(f.value?A(c)(`systemModule.texts.manage.factoryResetGateway`):A(c)(`systemModule.texts.manage.factoryResetDevice`)),1)]),_:1})]),_:1}),l(A(Y),{span:2,class:`text-center`},{default:L(()=>[n(`div`,Xn,[l(A(t),{icon:`mdi:keyboard-arrow-right`,class:`w[32px] h[32px]`})])]),_:1})]),_:1},8,[`onClick`]),l(A(B)),l(A(J),{justify:`center`,class:`cursor-pointer`,onClick:y},{default:L(()=>[l(A(Y),{span:3,class:`text-center`},{default:L(()=>[n(`div`,Zn,[l(A(ge),{size:32},{default:L(()=>[l(A(t),{icon:`mdi:backup-restore`,class:`w[20px] h[20px]`})]),_:1})])]),_:1}),l(A(Y),{span:19},{default:L(()=>[l(A(z),{size:`large`,class:`block font-600 text-lg`},{default:L(()=>[s(I(A(c)(`systemModule.headings.manage.systemBackups`)),1)]),_:1}),l(A(z),{class:`block`,"data-test-id":`system-backups-info`},{default:L(()=>[s(I(A(c)(`systemModule.texts.manage.systemBackups`)),1)]),_:1})]),_:1}),l(A(Y),{span:2,class:`text-center`},{default:L(()=>[n(`div`,Qn,[l(A(t),{icon:`mdi:keyboard-arrow-right`,class:`w[32px] h[32px]`})])]),_:1})]),_:1}),l(A(B)),l(A(J),{justify:`center`,class:`mb-4 cursor-pointer`,onClick:b},{default:L(()=>[l(A(Y),{span:3,class:`text-center`},{default:L(()=>[n(`div`,$n,[l(A(ge),{size:32},{default:L(()=>[l(A(t),{icon:`mdi:console`,class:`w[20px] h[20px]`})]),_:1})])]),_:1}),l(A(Y),{span:19},{default:L(()=>[l(A(z),{size:`large`,class:`block font-600 text-lg`},{default:L(()=>[s(I(A(c)(`systemModule.headings.manage.systemLogs`)),1)]),_:1}),l(A(z),{class:`block`,"data-test-id":`system-logs-info`},{default:L(()=>[s(I(A(c)(`systemModule.texts.manage.systemLogs`)),1)]),_:1})]),_:1}),l(A(Y),{span:2,class:`text-center`},{default:L(()=>[n(`div`,er,[l(A(t),{icon:`mdi:keyboard-arrow-right`,class:`w[32px] h[32px]`})])]),_:1})]),_:1})],64))}}),nr={class:`flex flex-row items-center pt-2 pl-2 min-h-10`},rr={key:0},ir={key:1},ar={class:`mb-4`},or=f({name:`UpdateStatus`,__name:`update-status`,setup(r){let{t:o}=g(),c=h(!1),{currentVersion:u,latestVersion:f,updateAvailable:m,updateType:_,lastChecked:v,status:y,phase:x,progressPercent:S,error:C,loading:w,waitingForRestart:T,isUpdating:E,fetchStatus:D,checkForUpdates:O,installUpdate:k}=Hn(),ee=i(()=>{switch(_.value){case`major`:return`danger`;case`minor`:return`warning`;case`patch`:return`success`;default:return`info`}}),N=i(()=>v.value?new Intl.DateTimeFormat(`en-US`,{dateStyle:`medium`,timeStyle:`short`}).format(v.value):null),P=()=>{E.value||(y.value=`idle`,x.value=null,S.value=null,C.value=null),c.value=!0},F=async()=>{try{await O()}catch{de.error(o(`systemModule.messages.update.checkFailed`))}},te=async()=>{try{await k(_.value===`major`),de.success(o(`systemModule.messages.update.updateStarted`))}catch{de.error(o(`systemModule.messages.update.installFailed`))}};return b(()=>{D()}),(r,i)=>(p(),e(R,null,[l(A(q),{class:`md:m-2 xs:my-1`,"body-class":`p-0!`},{default:L(()=>[l(A(Ne),{"label-width":170,column:1,border:``},{title:L(()=>[n(`div`,nr,[l(A(a),{class:`mr-2`,size:`28`},{default:L(()=>[l(A(t),{icon:`mdi:update`})]),_:1}),s(` `+I(A(o)(`systemModule.headings.update.title`))+` `,1),A(m)&&A(f)?(p(),d(A(H),{key:0,type:`warning`,class:`ml-2`},{default:L(()=>[s(I(A(o)(`systemModule.texts.update.available`,{version:A(f)})),1)]),_:1})):M(``,!0)])]),default:L(()=>[l(A(U),{label:A(o)(`systemModule.labels.update.currentVersion`)},{default:L(()=>[s(I(A(u)||`-`),1)]),_:1},8,[`label`]),l(A(U),{label:A(o)(`systemModule.labels.update.latestVersion`)},{default:L(()=>[A(f)?(p(),e(`span`,rr,[s(I(A(f))+` `,1),A(_)?(p(),d(A(H),{key:0,size:`small`,type:ee.value,class:`ml-2`},{default:L(()=>[s(I(A(_)),1)]),_:1},8,[`type`])):M(``,!0)])):(p(),e(`span`,ir,`-`))]),_:1},8,[`label`]),l(A(U),{label:A(o)(`systemModule.labels.update.lastChecked`)},{default:L(()=>[s(I(N.value||`-`),1)]),_:1},8,[`label`]),l(A(U),{label:A(o)(`systemModule.labels.update.actions`)},{default:L(()=>[A(m)?(p(),d(A(j),{key:1,size:`small`,type:`primary`,onClick:P},{icon:L(()=>[l(A(t),{icon:`mdi:download`})]),default:L(()=>[s(` `+I(A(o)(`systemModule.buttons.update.installUpdate`)),1)]),_:1})):(p(),d(A(j),{key:0,size:`small`,loading:A(w),disabled:A(E),onClick:F},{icon:L(()=>[l(A(t),{icon:`mdi:refresh`})]),default:L(()=>[s(` `+I(A(o)(`systemModule.buttons.update.checkForUpdates`)),1)]),_:1},8,[`loading`,`disabled`]))]),_:1},8,[`label`])]),_:1})]),_:1}),l(A(Ue),{modelValue:c.value,"onUpdate:modelValue":i[2]||=e=>c.value=e,title:A(o)(`systemModule.headings.update.title`),"close-on-click-modal":!A(E)&&!A(T),"close-on-press-escape":!A(E)&&!A(T),"show-close":!A(E)&&!A(T)},{footer:L(()=>[!A(E)&&A(y)!==`complete`?(p(),d(A(j),{key:0,link:``,onClick:i[0]||=e=>c.value=!1},{default:L(()=>[s(I(A(o)(`systemModule.buttons.cancel.title`)),1)]),_:1})):M(``,!0),!A(E)&&A(y)!==`complete`?(p(),d(A(j),{key:1,type:`primary`,onClick:te},{icon:L(()=>[l(A(t),{icon:`mdi:download`})]),default:L(()=>[s(` `+I(A(o)(`systemModule.buttons.update.installUpdate`)),1)]),_:1})):M(``,!0),A(y)===`complete`?(p(),d(A(j),{key:2,link:``,onClick:i[1]||=e=>c.value=!1},{default:L(()=>[s(I(A(o)(`systemModule.buttons.close.title`)),1)]),_:1})):M(``,!0)]),default:L(()=>[n(`div`,ar,I(A(o)(`systemModule.messages.update.confirmInstall`,{version:A(f)})),1),A(_)===`major`?(p(),d(A(Le),{key:0,type:`warning`,title:A(o)(`systemModule.messages.update.majorUpdateWarning`,{version:A(f)}),class:`mb-4`,closable:!1},null,8,[`title`])):M(``,!0),A(E)||A(y)===`failed`||A(y)===`complete`?(p(),e(R,{key:1},[l(A(mt),{percentage:A(S)||0,status:A(y)===`failed`?`exception`:A(y)===`complete`?`success`:void 0,class:`mb-2`},null,8,[`percentage`,`status`]),A(T)?(p(),d(A(z),{key:0,class:`block mb-4`},{default:L(()=>[s(I(A(o)(`systemModule.texts.update.waitingForRestart`)),1)]),_:1})):A(x)?(p(),d(A(z),{key:1,class:`block mb-4`},{default:L(()=>[s(I(A(x)),1)]),_:1})):M(``,!0)],64)):M(``,!0),A(y)===`complete`?(p(),d(A(Le),{key:2,type:`success`,title:A(o)(`systemModule.messages.update.updateComplete`),class:`mb-4`,closable:!1},null,8,[`title`])):M(``,!0),A(C)?(p(),d(A(Le),{key:3,type:`error`,title:A(o)(A(C)),class:`mb-4`,closable:!1},null,8,[`title`])):M(``,!0)]),_:1},8,[`modelValue`,`title`,`close-on-click-modal`,`close-on-press-escape`,`show-close`])],64))}}),sr={class:`flex flex-row items-center pt-2 pl-2 min-h-10`},cr={class:`flex flex-row items-center pt-2 pl-2 min-h-10`},lr={class:`flex flex-row items-center pt-2 pl-2 min-h-10`},ur={class:`flex flex-row items-center pt-2 pl-2 min-h-10`},dr=f({name:`SystemInfoDetail`,__name:`system-info-detail`,props:{systemInfo:{},throttleStatus:{},layout:{default:rt.DEFAULT}},setup(r){let i=r,{t:o}=g(),{format:c}=Ye();return(r,u)=>(p(),d(A(J),null,{default:L(()=>[l(A(Y),{xs:24,sm:12,md:8},{default:L(()=>[l(or)]),_:1}),l(A(Y),{xs:24,sm:12,md:8},{default:L(()=>[l(A(q),{class:`md:m-2 xs:my-1`,"body-class":`p-0!`},{default:L(()=>[l(A(Ne),{"label-width":170,column:1,border:``},{title:L(()=>[n(`div`,sr,[l(A(a),{class:`mr-2`,size:`28`},{default:L(()=>[l(A(t),{icon:`mdi:chip`})]),_:1}),u[0]||=s(` Hardware info `,-1)])]),default:L(()=>[l(A(U),{label:A(o)(`systemModule.systemInfo.cpuLoad`)},{default:L(()=>[s(I(A(c)(i.systemInfo?.cpuLoad??0,{maximumFractionDigits:2}))+` % `,1)]),_:1},8,[`label`]),l(A(U),{label:A(o)(`systemModule.systemInfo.memoryUsage`)},{default:L(()=>[s(I(A(c)((i.systemInfo?.memory.used??0)/1024/1024,{maximumFractionDigits:0}))+` MB / `+I(A(c)((i.systemInfo?.memory.total??0)/1024/1024,{maximumFractionDigits:0}))+` MB `,1)]),_:1},8,[`label`]),i.systemInfo?.temperature.cpu?(p(),d(A(U),{key:0,label:A(o)(`systemModule.systemInfo.cpuTemperature`)},{default:L(()=>[s(I(i.systemInfo?.temperature.cpu)+` °C `,1)]),_:1},8,[`label`])):(p(),d(A(U),{key:1,label:A(o)(`systemModule.systemInfo.cpuTemperature`)},{default:L(()=>[s(I(A(o)(`application.value.notAvailable`)),1)]),_:1},8,[`label`])),i.systemInfo?.temperature.gpu?(p(),d(A(U),{key:2,label:A(o)(`systemModule.systemInfo.gpuTemperature`)},{default:L(()=>[s(I(i.systemInfo?.temperature.gpu)+` °C `,1)]),_:1},8,[`label`])):(p(),d(A(U),{key:3,label:A(o)(`systemModule.systemInfo.gpuTemperature`)},{default:L(()=>[s(I(A(o)(`application.value.notAvailable`)),1)]),_:1},8,[`label`]))]),_:1})]),_:1})]),_:1}),l(A(Y),{xs:24,sm:12,md:8},{default:L(()=>[l(A(q),{class:`md:m-2 xs:my-1`,"body-class":`p-0!`},{default:L(()=>[l(A(Ne),{"label-width":250,column:1,border:``},{title:L(()=>[n(`div`,cr,[l(A(a),{class:`mr-2`,size:`28`},{default:L(()=>[l(A(t),{icon:`mdi:server-outline`})]),_:1}),u[1]||=s(` Operating system `,-1)])]),default:L(()=>[l(A(U),{label:A(o)(`systemModule.systemInfo.osPlatform`)},{default:L(()=>[s(I(i.systemInfo?.os.platform),1)]),_:1},8,[`label`]),l(A(U),{label:A(o)(`systemModule.systemInfo.osDistro`)},{default:L(()=>[s(I(i.systemInfo?.os.distro),1)]),_:1},8,[`label`]),l(A(U),{label:A(o)(`systemModule.systemInfo.osRelease`)},{default:L(()=>[s(I(i.systemInfo?.os.release),1)]),_:1},8,[`label`]),l(A(U),{label:A(o)(`systemModule.systemInfo.uptime`)},{default:L(()=>[s(I(i.systemInfo?.os.uptime),1)]),_:1},8,[`label`])]),_:1})]),_:1})]),_:1}),l(A(Y),{xs:24,sm:12,md:8},{default:L(()=>[l(A(q),{class:`md:m-2 xs:my-1`,"body-class":`p-0!`},{default:L(()=>[l(A(Ne),{"label-width":170,column:1,border:``},{title:L(()=>[n(`div`,lr,[l(A(a),{class:`mr-2`,size:`28`},{default:L(()=>[l(A(t),{icon:`mdi:local-area-network`})]),_:1}),u[2]||=s(` Network `,-1)])]),default:L(()=>[l(A(U),{label:A(o)(`systemModule.systemInfo.networkInterface`)},{default:L(()=>[s(I(i.systemInfo?.defaultNetwork.interface),1)]),_:1},8,[`label`]),l(A(U),{label:A(o)(`systemModule.systemInfo.ip4Address`)},{default:L(()=>[s(I(i.systemInfo?.defaultNetwork.ip4),1)]),_:1},8,[`label`]),l(A(U),{label:A(o)(`systemModule.systemInfo.ip6Address`)},{default:L(()=>[s(I(i.systemInfo?.defaultNetwork.ip6),1)]),_:1},8,[`label`]),l(A(U),{label:A(o)(`systemModule.systemInfo.macAddress`)},{default:L(()=>[s(I(i.systemInfo?.defaultNetwork.mac),1)]),_:1},8,[`label`])]),_:1})]),_:1})]),_:1}),l(A(Y),{xs:24,sm:12,md:8},{default:L(()=>[l(A(q),{class:`md:m-2 xs:my-1`,"body-class":`p-0!`},{default:L(()=>[l(A(Ne),{"label-width":290,column:1,border:``},{title:L(()=>[n(`div`,ur,[l(A(a),{class:`mr-2`,size:`28`},{default:L(()=>[l(A(t),{icon:`mdi:alert`})]),_:1}),u[3]||=s(` Throttle status `,-1)])]),default:L(()=>[i.throttleStatus?(p(),e(R,{key:0},[l(A(U),{label:A(o)(`systemModule.systemInfo.undervoltage`)},{default:L(()=>[i.throttleStatus.undervoltage?(p(),d(A(H),{key:0,type:`danger`,size:`small`},{default:L(()=>[s(I(A(o)(`systemModule.states.error`)),1)]),_:1})):(p(),d(A(H),{key:1,type:`success`,size:`small`},{default:L(()=>[s(I(A(o)(`systemModule.states.ok`)),1)]),_:1}))]),_:1},8,[`label`]),l(A(U),{label:A(o)(`systemModule.systemInfo.frequencyCapping`)},{default:L(()=>[i.throttleStatus.frequencyCapping?(p(),d(A(H),{key:0,type:`danger`,size:`small`},{default:L(()=>[s(I(A(o)(`systemModule.states.error`)),1)]),_:1})):(p(),d(A(H),{key:1,type:`success`,size:`small`},{default:L(()=>[s(I(A(o)(`systemModule.states.ok`)),1)]),_:1}))]),_:1},8,[`label`]),l(A(U),{label:A(o)(`systemModule.systemInfo.throttling`)},{default:L(()=>[i.throttleStatus.throttling?(p(),d(A(H),{key:0,type:`danger`,size:`small`},{default:L(()=>[s(I(A(o)(`systemModule.states.error`)),1)]),_:1})):(p(),d(A(H),{key:1,type:`success`,size:`small`},{default:L(()=>[s(I(A(o)(`systemModule.states.ok`)),1)]),_:1}))]),_:1},8,[`label`]),l(A(U),{label:A(o)(`systemModule.systemInfo.softTempLimit`)},{default:L(()=>[i.throttleStatus.softTempLimit?(p(),d(A(H),{key:0,type:`danger`,size:`small`},{default:L(()=>[s(I(A(o)(`systemModule.states.error`)),1)]),_:1})):(p(),d(A(H),{key:1,type:`success`,size:`small`},{default:L(()=>[s(I(A(o)(`systemModule.states.ok`)),1)]),_:1}))]),_:1},8,[`label`])],64)):(p(),e(R,{key:1},[l(A(U),{label:A(o)(`systemModule.systemInfo.undervoltage`)},{default:L(()=>[s(I(A(o)(`application.value.notAvailable`)),1)]),_:1},8,[`label`]),l(A(U),{label:A(o)(`systemModule.systemInfo.frequencyCapping`)},{default:L(()=>[s(I(A(o)(`application.value.notAvailable`)),1)]),_:1},8,[`label`]),l(A(U),{label:A(o)(`systemModule.systemInfo.throttling`)},{default:L(()=>[s(I(A(o)(`application.value.notAvailable`)),1)]),_:1},8,[`label`]),l(A(U),{label:A(o)(`systemModule.systemInfo.softTempLimit`)},{default:L(()=>[s(I(A(o)(`application.value.notAvailable`)),1)]),_:1},8,[`label`])],64))]),_:1})]),_:1})]),_:1})]),_:1}))}}),fr={class:`flex w-full`},pr={class:`flex-grow overflow-hidden`},mr={class:`min-h-[100px] overflow-auto`},hr={key:0,class:`h-full w-full leading-normal`},gr={key:1,class:`h-full w-full leading-normal`},_r={class:`block`},vr={class:`mt-3`},yr=f({name:`SystemBackups`,__name:`system-backups`,setup(r,{expose:o}){let{t:c}=g(),f=De(),{backups:m,loading:_,creating:v,fetchBackups:y,createBackup:x,deleteBackup:C,restoreBackup:w,downloadBackup:T,uploadBackup:D}=Qt(),O=h(!1),k=h(!1),ee=h(null),N=h(null),P=h(null),F=h(null),ne=h(``),re=i(()=>{let e=ne.value.trim().toLowerCase();return e===``?m.value:m.value.filter(t=>(t.name??``).toLowerCase().includes(e)||t.id.toLowerCase().includes(e)||t.version.toLowerCase().includes(e))}),ie=h(void 0),ae=S({name:``}),oe=e=>new Intl.DateTimeFormat(void 0,{dateStyle:`medium`,timeStyle:`short`}).format(new Date(e)),ce=e=>e<1024?`${e} B`:e<1024*1024?`${(e/1024).toFixed(1)} KB`:`${(e/(1024*1024)).toFixed(1)} MB`,le=()=>{ae.name=``,ie.value?.resetFields()},ue=()=>{le()},de=async()=>{try{let e=ae.name.trim();await x(e.length>0?e:void 0)?(O.value=!1,le(),f.success(c(`systemModule.backups.messages.created`))):f.error(c(`systemModule.backups.messages.createError`))}catch{f.error(c(`systemModule.backups.messages.createError`))}},fe=e=>{Ce.confirm(c(`systemModule.backups.deleteDialog.message`,{name:e.name||e.id}),c(`systemModule.backups.deleteDialog.title`),{confirmButtonText:c(`systemModule.buttons.yes.title`),cancelButtonText:c(`systemModule.buttons.cancel.title`),type:`warning`,confirmButtonClass:`el-button--danger`}).then(async()=>{ee.value=e.id;try{await C(e.id)?f.success(c(`systemModule.backups.messages.deleted`)):f.error(c(`systemModule.backups.messages.deleteError`))}catch{f.error(c(`systemModule.backups.messages.deleteError`))}finally{ee.value=null}}).catch(()=>{})},pe=e=>{F.value=e,k.value=!0},B=async()=>{if(F.value){N.value=F.value.id;try{await w(F.value.id)?(k.value=!1,F.value=null,f.success(c(`systemModule.backups.messages.restored`))):f.error(c(`systemModule.backups.messages.restoreError`))}catch{f.error(c(`systemModule.backups.messages.restoreError`))}finally{N.value=null}}},me=async e=>{P.value=e.id;try{await T(e)}catch{f.error(c(`systemModule.backups.messages.downloadError`))}finally{P.value=null}};return o({openCreateDialog:()=>{O.value=!0},onUploadBackup:async e=>{try{await D(e.file)?f.success(c(`systemModule.backups.messages.uploaded`)):f.error(c(`systemModule.backups.messages.uploadError`))}catch{f.error(c(`systemModule.backups.messages.uploadError`))}}}),b(async()=>{await y()}),(r,i)=>(p(),e(R,null,[l(A(q),{shadow:`never`,class:`px-1 py-2 shrink-0`,"body-class":`p-0!`},{default:L(()=>[n(`div`,fr,[l(A(be),{modelValue:ne.value,"onUpdate:modelValue":i[0]||=e=>ne.value=e,placeholder:A(c)(`systemModule.backups.search.placeholder`),class:`max-w[280px] p-1`,clearable:``},{suffix:L(()=>[l(A(a),null,{default:L(()=>[l(A(t),{icon:`mdi:magnify`})]),_:1})]),_:1},8,[`modelValue`,`placeholder`])])]),_:1}),n(`div`,pr,[l(A(q),{shadow:`never`,class:`max-h-full flex flex-col overflow-hidden box-border`,"body-class":`p-0! max-h-full overflow-hidden flex flex-col`},{default:L(()=>[E((p(),e(`div`,mr,[l(A(Fe),{data:re.value,class:`w-full`,"table-layout":`fixed`},{empty:L(()=>[A(_)?(p(),e(`div`,hr,[l(A(u),{class:`h-full w-full`},{icon:L(()=>[l(A(te),{size:80},{primary:L(()=>[l(A(t),{icon:`mdi:backup-restore`})]),secondary:L(()=>[l(A(t),{icon:`mdi:database-refresh`})]),_:1})]),_:1})])):(p(),e(`div`,gr,[l(A(u),{class:`h-full w-full`},{icon:L(()=>[l(A(te),{size:80},{primary:L(()=>[l(A(t),{icon:`mdi:backup-restore`})]),secondary:L(()=>[l(A(t),{icon:`mdi:information`})]),_:1})]),title:L(()=>[s(I(A(m).length===0?A(c)(`systemModule.backups.noBackups`):A(c)(`systemModule.backups.noMatches`)),1)]),_:1})]))]),default:L(()=>[l(A(Pe),{label:A(c)(`systemModule.backups.columns.name`),prop:`name`,"min-width":`150`},{default:L(({row:e})=>[n(`div`,null,[n(`strong`,_r,I(e.name||e.id),1),e.contributions&&e.contributions.length?(p(),d(A(z),{key:0,size:`small`,type:`info`,class:`block leading-4`,truncated:``},{default:L(()=>[s(I(e.contributions.length)+` `+I(A(c)(`systemModule.backups.contributions`)),1)]),_:2},1024)):M(``,!0)])]),_:1},8,[`label`]),l(A(Pe),{label:A(c)(`systemModule.backups.columns.version`),prop:`version`,width:`120`},null,8,[`label`]),l(A(Pe),{label:A(c)(`systemModule.backups.columns.created`),prop:`created_at`,width:`180`},{default:L(({row:e})=>[s(I(oe(e.created_at)),1)]),_:1},8,[`label`]),l(A(Pe),{label:A(c)(`systemModule.backups.columns.size`),prop:`size_bytes`,width:`120`},{default:L(({row:e})=>[s(I(ce(e.size_bytes)),1)]),_:1},8,[`label`]),l(A(Pe),{label:A(c)(`systemModule.backups.columns.actions`),width:`240`,align:`right`},{default:L(({row:e})=>[n(`div`,{onClick:i[1]||=se(()=>{},[`stop`])},[l(A(j),{size:`small`,plain:``,loading:P.value===e.id,onClick:t=>me(e)},{icon:L(()=>[l(A(t),{icon:`mdi:download`})]),_:1},8,[`loading`,`onClick`]),l(A(j),{size:`small`,type:`warning`,plain:``,loading:N.value===e.id,onClick:t=>pe(e)},{icon:L(()=>[l(A(t),{icon:`mdi:backup-restore`})]),_:1},8,[`loading`,`onClick`]),l(A(j),{size:`small`,type:`danger`,plain:``,loading:ee.value===e.id,onClick:t=>fe(e)},{icon:L(()=>[l(A(t),{icon:`mdi:delete`})]),_:1},8,[`loading`,`onClick`])])]),_:1},8,[`label`])]),_:1},8,[`data`])])),[[A(qe),A(_)]])]),_:1})]),l(A(Ue),{modelValue:O.value,"onUpdate:modelValue":i[4]||=e=>O.value=e,title:A(c)(`systemModule.backups.createDialog.title`),class:`max-w-[500px]`,onClose:ue},{footer:L(()=>[l(A(j),{onClick:i[3]||=e=>O.value=!1},{default:L(()=>[s(I(A(c)(`systemModule.buttons.cancel.title`)),1)]),_:1}),l(A(j),{type:`primary`,loading:A(v),onClick:de},{default:L(()=>[s(I(A(c)(`systemModule.backups.createDialog.submit`)),1)]),_:1},8,[`loading`])]),default:L(()=>[l(A(Ie),{ref_key:`createFormEl`,ref:ie,model:ae,"label-position":`top`},{default:L(()=>[l(A(W),{label:A(c)(`systemModule.backups.createDialog.name`),prop:`name`},{default:L(()=>[l(A(be),{modelValue:ae.name,"onUpdate:modelValue":i[2]||=e=>ae.name=e,placeholder:A(c)(`systemModule.backups.createDialog.namePlaceholder`)},null,8,[`modelValue`,`placeholder`])]),_:1},8,[`label`])]),_:1},8,[`model`])]),_:1},8,[`modelValue`,`title`]),l(A(Ue),{modelValue:k.value,"onUpdate:modelValue":i[6]||=e=>k.value=e,title:A(c)(`systemModule.backups.restoreDialog.title`),class:`max-w-[500px]`},{footer:L(()=>[l(A(j),{onClick:i[5]||=e=>k.value=!1},{default:L(()=>[s(I(A(c)(`systemModule.buttons.cancel.title`)),1)]),_:1}),l(A(j),{type:`danger`,loading:N.value!==null,onClick:B},{default:L(()=>[s(I(A(c)(`systemModule.backups.restoreDialog.confirm`)),1)]),_:1},8,[`loading`])]),default:L(()=>[l(A(Le),{title:A(c)(`systemModule.backups.restoreDialog.warning`),type:`warning`,closable:!1,"show-icon":``},null,8,[`title`]),n(`p`,vr,I(A(c)(`systemModule.backups.restoreDialog.message`,{name:F.value?.name||F.value?.id})),1)]),_:1},8,[`modelValue`,`title`])],64))}}),br=f({name:`SystemConfigForm`,__name:`system-config-form`,props:{config:{},remoteFormSubmit:{type:Boolean},remoteFormResult:{default:Qe.NONE},remoteFormReset:{type:Boolean,default:!1},remoteFormChanged:{type:Boolean,default:!1},layout:{default:Ze.DEFAULT}},emits:[`update:remote-form-submit`,`update:remote-form-result`,`update:remote-form-reset`,`update:remote-form-changed`],setup(t,{emit:n}){let r=t,i=n,{t:a}=g(),{formEl:o,model:s,formChanged:c,submit:u,formResult:f}=Je({config:r.config,messages:{success:a(`systemModule.messages.config.edited`),error:a(`systemModule.messages.config.notEdited`)}}),m=[{label:`Africa`,zones:[`Africa/Cairo`,`Africa/Johannesburg`]},{label:`Americas`,zones:[`America/Anchorage`,`America/Chicago`,`America/Denver`,`America/Halifax`,`America/Los_Angeles`,`America/Mexico_City`,`America/New_York`,`America/Phoenix`,`America/St_Johns`,`America/Toronto`,`America/Vancouver`]},{label:`Asia`,zones:[`Asia/Dubai`,`Asia/Kolkata`,`Asia/Tokyo`]},{label:`Australia`,zones:[`Australia/Sydney`]},{label:`Europe`,zones:`Europe/Amsterdam.Europe/Athens.Europe/Belgrade.Europe/Berlin.Europe/Bratislava.Europe/Brussels.Europe/Bucharest.Europe/Budapest.Europe/Copenhagen.Europe/Dublin.Europe/Helsinki.Europe/Istanbul.Europe/Kyiv.Europe/Lisbon.Europe/London.Europe/Madrid.Europe/Moscow.Europe/Oslo.Europe/Paris.Europe/Prague.Europe/Rome.Europe/Stockholm.Europe/Vienna.Europe/Vilnius.Europe/Warsaw.Europe/Zurich`.split(`.`)},{label:`Pacific`,zones:[`Pacific/Honolulu`]}],h=[{value:`silent`,label:a(`systemModule.fields.config.logLevels.values.silent`)},{value:`verbose`,label:a(`systemModule.fields.config.logLevels.values.verbose`)},{value:`debug`,label:a(`systemModule.fields.config.logLevels.values.debug`)},{value:`trace`,label:a(`systemModule.fields.config.logLevels.values.trace`)},{value:`log`,label:a(`systemModule.fields.config.logLevels.values.log`)},{value:`info`,label:a(`systemModule.fields.config.logLevels.values.info`)},{value:`success`,label:a(`systemModule.fields.config.logLevels.values.success`)},{value:`warn`,label:a(`systemModule.fields.config.logLevels.values.warn`)},{value:`error`,label:a(`systemModule.fields.config.logLevels.values.error`)},{value:`fail`,label:a(`systemModule.fields.config.logLevels.values.fail`)},{value:`fatal`,label:a(`systemModule.fields.config.logLevels.values.fatal`)}],_=S({language:[{required:!0,message:a(`systemModule.fields.config.language.validation.required`),trigger:`change`}],timezone:[{required:!0,message:a(`systemModule.fields.config.timezone.validation.required`),trigger:`change`}],timeFormat:[{required:!0,message:a(`systemModule.fields.config.timeFormat.validation.required`),trigger:`change`}],numberFormat:[{required:!0,message:a(`systemModule.fields.config.numberFormat.validation.required`),trigger:`change`}],temperatureUnit:[{required:!0,message:a(`systemModule.fields.config.temperatureUnit.validation.required`),trigger:`change`}],windSpeedUnit:[{required:!0,message:a(`systemModule.fields.config.windSpeedUnit.validation.required`),trigger:`change`}],pressureUnit:[{required:!0,message:a(`systemModule.fields.config.pressureUnit.validation.required`),trigger:`change`}],precipitationUnit:[{required:!0,message:a(`systemModule.fields.config.precipitationUnit.validation.required`),trigger:`change`}],distanceUnit:[{required:!0,message:a(`systemModule.fields.config.distanceUnit.validation.required`),trigger:`change`}],logLevels:[{required:!0,message:a(`systemModule.fields.config.logLevels.validation.required`),trigger:`change`},{type:`array`,min:1,message:a(`systemModule.fields.config.logLevels.validation.min`),trigger:`change`}]});return w(()=>f.value,async e=>{i(`update:remote-form-result`,e)}),w(()=>r.remoteFormSubmit,async e=>{e&&(i(`update:remote-form-submit`,!1),u().catch(()=>{}))}),w(()=>r.remoteFormReset,e=>{if(i(`update:remote-form-reset`,!1),e){if(!o.value)return;o.value.resetFields()}}),w(()=>c.value,e=>{i(`update:remote-form-changed`,e)}),(t,n)=>(p(),d(A(Ie),{ref_key:`formEl`,ref:o,model:A(s),rules:_,"label-position":`top`,"status-icon":``},{default:L(()=>[l(A(Le),{type:`info`,title:A(a)(`systemModule.headings.aboutLanguageSettings`),description:A(a)(`systemModule.texts.aboutLanguageSettings`),closable:!1},null,8,[`title`,`description`]),l(A(W),{label:A(a)(`systemModule.fields.config.language.title`),prop:`language`,class:`mt-3`},{default:L(()=>[l(A(G),{modelValue:A(s).language,"onUpdate:modelValue":n[0]||=e=>A(s).language=e,placeholder:A(a)(`systemModule.fields.config.language.placeholder`),name:`language`},{default:L(()=>[l(A(K),{label:A(a)(`systemModule.fields.config.language.values.english`),value:`en_US`},null,8,[`label`]),l(A(K),{label:A(a)(`systemModule.fields.config.language.values.czech`),value:`cs_CZ`},null,8,[`label`]),l(A(K),{label:A(a)(`systemModule.fields.config.language.values.german`),value:`de_DE`},null,8,[`label`]),l(A(K),{label:A(a)(`systemModule.fields.config.language.values.spanish`),value:`es_ES`},null,8,[`label`]),l(A(K),{label:A(a)(`systemModule.fields.config.language.values.polish`),value:`pl_PL`},null,8,[`label`]),l(A(K),{label:A(a)(`systemModule.fields.config.language.values.slovak`),value:`sk_SK`},null,8,[`label`])]),_:1},8,[`modelValue`,`placeholder`])]),_:1},8,[`label`]),l(A(W),{label:A(a)(`systemModule.fields.config.timezone.title`),prop:`timezone`},{default:L(()=>[l(A(G),{modelValue:A(s).timezone,"onUpdate:modelValue":n[1]||=e=>A(s).timezone=e,placeholder:A(a)(`systemModule.fields.config.timezone.placeholder`),name:`timezone`,filterable:``},{default:L(()=>[(p(),e(R,null,D(m,t=>l(A(Re),{key:t.label,label:t.label},{default:L(()=>[(p(!0),e(R,null,D(t.zones,e=>(p(),d(A(K),{key:e,label:e.replace(/_/g,` `),value:e},null,8,[`label`,`value`]))),128))]),_:2},1032,[`label`])),64))]),_:1},8,[`modelValue`,`placeholder`])]),_:1},8,[`label`]),l(A(W),{label:A(a)(`systemModule.fields.config.timeFormat.title`),prop:`timeFormat`},{default:L(()=>[l(A(G),{modelValue:A(s).timeFormat,"onUpdate:modelValue":n[2]||=e=>A(s).timeFormat=e,placeholder:A(a)(`systemModule.fields.config.timeFormat.placeholder`),name:`timeFormat`},{default:L(()=>[l(A(K),{label:A(a)(`systemModule.fields.config.timeFormat.values.hour12`),value:`12h`},null,8,[`label`]),l(A(K),{label:A(a)(`systemModule.fields.config.timeFormat.values.hour24`),value:`24h`},null,8,[`label`])]),_:1},8,[`modelValue`,`placeholder`])]),_:1},8,[`label`]),l(A(W),{label:A(a)(`systemModule.fields.config.numberFormat.title`),prop:`numberFormat`},{default:L(()=>[l(A(G),{modelValue:A(s).numberFormat,"onUpdate:modelValue":n[3]||=e=>A(s).numberFormat=e,placeholder:A(a)(`systemModule.fields.config.numberFormat.placeholder`),name:`numberFormat`},{default:L(()=>[l(A(K),{label:A(a)(`systemModule.fields.config.numberFormat.values.commaDot`),value:`comma_dot`},null,8,[`label`]),l(A(K),{label:A(a)(`systemModule.fields.config.numberFormat.values.dotComma`),value:`dot_comma`},null,8,[`label`]),l(A(K),{label:A(a)(`systemModule.fields.config.numberFormat.values.spaceComma`),value:`space_comma`},null,8,[`label`]),l(A(K),{label:A(a)(`systemModule.fields.config.numberFormat.values.none`),value:`none`},null,8,[`label`])]),_:1},8,[`modelValue`,`placeholder`])]),_:1},8,[`label`]),l(A(W),{label:A(a)(`systemModule.fields.config.temperatureUnit.title`),prop:`temperatureUnit`},{default:L(()=>[l(A(G),{modelValue:A(s).temperatureUnit,"onUpdate:modelValue":n[4]||=e=>A(s).temperatureUnit=e,placeholder:A(a)(`systemModule.fields.config.temperatureUnit.placeholder`),name:`temperatureUnit`},{default:L(()=>[l(A(K),{label:A(a)(`systemModule.fields.config.temperatureUnit.values.celsius`),value:`celsius`},null,8,[`label`]),l(A(K),{label:A(a)(`systemModule.fields.config.temperatureUnit.values.fahrenheit`),value:`fahrenheit`},null,8,[`label`])]),_:1},8,[`modelValue`,`placeholder`])]),_:1},8,[`label`]),l(A(W),{label:A(a)(`systemModule.fields.config.windSpeedUnit.title`),prop:`windSpeedUnit`},{default:L(()=>[l(A(G),{modelValue:A(s).windSpeedUnit,"onUpdate:modelValue":n[5]||=e=>A(s).windSpeedUnit=e,placeholder:A(a)(`systemModule.fields.config.windSpeedUnit.placeholder`),name:`windSpeedUnit`},{default:L(()=>[l(A(K),{label:A(a)(`systemModule.fields.config.windSpeedUnit.values.ms`),value:`ms`},null,8,[`label`]),l(A(K),{label:A(a)(`systemModule.fields.config.windSpeedUnit.values.kmh`),value:`kmh`},null,8,[`label`]),l(A(K),{label:A(a)(`systemModule.fields.config.windSpeedUnit.values.mph`),value:`mph`},null,8,[`label`]),l(A(K),{label:A(a)(`systemModule.fields.config.windSpeedUnit.values.knots`),value:`knots`},null,8,[`label`])]),_:1},8,[`modelValue`,`placeholder`])]),_:1},8,[`label`]),l(A(W),{label:A(a)(`systemModule.fields.config.pressureUnit.title`),prop:`pressureUnit`},{default:L(()=>[l(A(G),{modelValue:A(s).pressureUnit,"onUpdate:modelValue":n[6]||=e=>A(s).pressureUnit=e,placeholder:A(a)(`systemModule.fields.config.pressureUnit.placeholder`),name:`pressureUnit`},{default:L(()=>[l(A(K),{label:A(a)(`systemModule.fields.config.pressureUnit.values.hpa`),value:`hpa`},null,8,[`label`]),l(A(K),{label:A(a)(`systemModule.fields.config.pressureUnit.values.mbar`),value:`mbar`},null,8,[`label`]),l(A(K),{label:A(a)(`systemModule.fields.config.pressureUnit.values.inhg`),value:`inhg`},null,8,[`label`]),l(A(K),{label:A(a)(`systemModule.fields.config.pressureUnit.values.mmhg`),value:`mmhg`},null,8,[`label`])]),_:1},8,[`modelValue`,`placeholder`])]),_:1},8,[`label`]),l(A(W),{label:A(a)(`systemModule.fields.config.precipitationUnit.title`),prop:`precipitationUnit`},{default:L(()=>[l(A(G),{modelValue:A(s).precipitationUnit,"onUpdate:modelValue":n[7]||=e=>A(s).precipitationUnit=e,placeholder:A(a)(`systemModule.fields.config.precipitationUnit.placeholder`),name:`precipitationUnit`},{default:L(()=>[l(A(K),{label:A(a)(`systemModule.fields.config.precipitationUnit.values.mm`),value:`mm`},null,8,[`label`]),l(A(K),{label:A(a)(`systemModule.fields.config.precipitationUnit.values.inches`),value:`inches`},null,8,[`label`])]),_:1},8,[`modelValue`,`placeholder`])]),_:1},8,[`label`]),l(A(W),{label:A(a)(`systemModule.fields.config.distanceUnit.title`),prop:`distanceUnit`},{default:L(()=>[l(A(G),{modelValue:A(s).distanceUnit,"onUpdate:modelValue":n[8]||=e=>A(s).distanceUnit=e,placeholder:A(a)(`systemModule.fields.config.distanceUnit.placeholder`),name:`distanceUnit`},{default:L(()=>[l(A(K),{label:A(a)(`systemModule.fields.config.distanceUnit.values.km`),value:`km`},null,8,[`label`]),l(A(K),{label:A(a)(`systemModule.fields.config.distanceUnit.values.miles`),value:`miles`},null,8,[`label`]),l(A(K),{label:A(a)(`systemModule.fields.config.distanceUnit.values.meters`),value:`meters`},null,8,[`label`]),l(A(K),{label:A(a)(`systemModule.fields.config.distanceUnit.values.feet`),value:`feet`},null,8,[`label`])]),_:1},8,[`modelValue`,`placeholder`])]),_:1},8,[`label`]),l(A(B)),l(A(W),{label:A(a)(`systemModule.labels.update.channel`),prop:`updateChannel`},{default:L(()=>[l(A(G),{modelValue:A(s).updateChannel,"onUpdate:modelValue":n[9]||=e=>A(s).updateChannel=e,placeholder:A(a)(`systemModule.fields.update.channel.placeholder`,`Select update channel`),name:`updateChannel`},{default:L(()=>[l(A(K),{label:A(a)(`systemModule.fields.update.channel.values.auto`),value:`auto`},null,8,[`label`]),l(A(K),{label:A(a)(`systemModule.fields.update.channel.values.stable`),value:`stable`},null,8,[`label`]),l(A(K),{label:A(a)(`systemModule.fields.update.channel.values.beta`),value:`beta`},null,8,[`label`]),l(A(K),{label:A(a)(`systemModule.fields.update.channel.values.alpha`),value:`alpha`},null,8,[`label`])]),_:1},8,[`modelValue`,`placeholder`])]),_:1},8,[`label`]),l(A(Le),{type:`info`,title:A(a)(`systemModule.headings.aboutSystemSettings`),description:A(a)(`systemModule.texts.aboutSystemSettings`),closable:!1},null,8,[`title`,`description`]),l(A(W),{label:A(a)(`systemModule.fields.config.logLevels.title`),prop:`logLevels`,class:`mt-3`},{default:L(()=>[l(A(G),{modelValue:A(s).logLevels,"onUpdate:modelValue":n[10]||=e=>A(s).logLevels=e,placeholder:A(a)(`systemModule.fields.config.logLevels.placeholder`),name:`logLevels`,multiple:``},{default:L(()=>[(p(),e(R,null,D(h,e=>l(A(K),{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`])),64))]),_:1},8,[`modelValue`,`placeholder`])]),_:1},8,[`label`])]),_:1},8,[`model`,`rules`]))}});export{Lt as _,gn as a,vt as b,ln as c,an as d,on as f,Kt as g,Yt as h,tr as i,cn as l,nn as m,yr as n,pn as o,en as p,dr as r,fn as s,br as t,sn as u,Pt as v,mt as x,jt as y};
|
|
6
|
+
`}),g=i(()=>2*Math.PI*m.value),v=i(()=>s.type===`dashboard`?.75:1),b=i(()=>`${-1*g.value*(1-v.value)/2}px`),x=i(()=>({strokeDasharray:`${g.value*v.value}px, ${g.value}px`,strokeDashoffset:b.value})),S=i(()=>({strokeDasharray:`${g.value*v.value*(s.percentage/100)}px, ${g.value}px`,strokeDashoffset:b.value,transition:`stroke-dasharray 0.6s ease 0s, stroke 0.6s ease, opacity ease 0.6s`})),C=i(()=>{let e;return e=s.color?j(s.percentage):r[s.status]||r.default,e}),w=i(()=>s.status===`warning`?ie:s.type===`line`?s.status===`success`?re:F:s.status===`success`?O:ee),T=i(()=>s.type===`line`?12+s.strokeWidth*.4:s.width*.111111+2),E=i(()=>s.format(s.percentage));function D(e){let t=100/e.length;return e.map((e,n)=>_(e)?{color:e,percentage:(n+1)*t}:e).sort((e,t)=>e.percentage-t.percentage)}let j=e=>{let{color:t}=s;if(ce(t))return t(e);if(_(t))return t;{let n=D(t);for(let t of n)if(t.percentage>e)return t.color;return n[n.length-1]?.color}};return(r,i)=>(p(),e(`div`,{class:y([A(l).b(),A(l).m(t.type),A(l).is(t.status),{[A(l).m(`without-text`)]:!t.showText,[A(l).m(`text-inside`)]:t.textInside}]),role:`progressbar`,"aria-valuenow":t.percentage,"aria-valuemin":`0`,"aria-valuemax":`100`},[t.type===`line`?(p(),e(`div`,{key:0,class:y(A(l).b(`bar`))},[n(`div`,{class:y(A(l).be(`bar`,`outer`)),style:o({height:`${t.strokeWidth}px`})},[n(`div`,{class:y([A(l).be(`bar`,`inner`),{[A(l).bem(`bar`,`inner`,`indeterminate`)]:t.indeterminate},{[A(l).bem(`bar`,`inner`,`striped`)]:t.striped},{[A(l).bem(`bar`,`inner`,`striped-flow`)]:t.stripedFlow}]),style:o(u.value)},[(t.showText||r.$slots.default)&&t.textInside?(p(),e(`div`,{key:0,class:y(A(l).be(`bar`,`innerText`))},[ne(r.$slots,`default`,{percentage:t.percentage},()=>[n(`span`,null,I(E.value),1)])],2)):M(`v-if`,!0)],6)],6)],2)):(p(),e(`div`,{key:1,class:y(A(l).b(`circle`)),style:o({height:`${t.width}px`,width:`${t.width}px`})},[(p(),e(`svg`,ut,[n(`path`,{class:y(A(l).be(`circle`,`track`)),d:h.value,stroke:`var(${A(l).cssVarName(`fill-color-light`)}, #e5e9f2)`,"stroke-linecap":t.strokeLinecap,"stroke-width":f.value,fill:`none`,style:o(x.value)},null,14,dt),n(`path`,{class:y(A(l).be(`circle`,`path`)),d:h.value,stroke:C.value,fill:`none`,opacity:+!!t.percentage,"stroke-linecap":t.strokeLinecap,"stroke-width":f.value,style:o(S.value)},null,14,ft)]))],6)),(t.showText||r.$slots.default)&&!t.textInside?(p(),e(`div`,{key:2,class:y(A(l).e(`text`)),style:o({fontSize:`${T.value}px`})},[ne(r.$slots,`default`,{percentage:t.percentage},()=>[t.status?(p(),d(A(a),{key:1},{default:L(()=>[(p(),d(k(w.value)))]),_:1})):(p(),e(`span`,pt,I(E.value),1))])],6)):M(`v-if`,!0)],10,lt))}})),ht={expireTimes:`1d`,path:`; path=/`,domain:``,secure:!1,sameSite:`; SameSite=Lax`},gt=function(){function e(){this.current_default_config=ht}return e.prototype.config=function(e){for(var t in this.current_default_config)this.current_default_config[t]=e[t]?e[t]:ht[t]},e.prototype.get=function(e){var t=decodeURIComponent(document.cookie.replace(RegExp(`(?:(?:^|.*;)\\s*`+encodeURIComponent(e).replace(/[\-\.\+\*]/g,`\\$&`)+`\\s*\\=\\s*([^;]*).*$)|^.*$`),`$1`))||null;if(t&&t.substring(0,1)===`{`&&t.substring(t.length-1,t.length)===`}`)try{t=JSON.parse(t)}catch{return t}return t},e.prototype.set=function(e,t,n,r,i,a,o){if(!e)throw Error(`Cookie name is not found in the first argument.`);if(/^(?:expires|max-age|path|domain|secure|SameSite)$/i.test(e))throw Error(`Cookie name illegality. Cannot be set to ["expires","max-age","path","domain","secure","SameSite"] current key name: `+e);t&&t.constructor===Object&&(t=JSON.stringify(t));var s=``;if(n??=this.current_default_config.expireTimes?this.current_default_config.expireTimes:``,n&&n!=0)switch(n.constructor){case Number:s=n===1/0||n===-1?`; expires=Fri, 31 Dec 9999 23:59:59 GMT`:`; max-age=`+n;break;case String:if(/^(?:\d+(y|m|d|h|min|s))$/i.test(n)){var c=n.replace(/^(\d+)(?:y|m|d|h|min|s)$/i,`$1`);switch(n.replace(/^(?:\d+)(y|m|d|h|min|s)$/i,`$1`).toLowerCase()){case`m`:s=`; max-age=`+c*2592e3;break;case`d`:s=`; max-age=`+c*86400;break;case`h`:s=`; max-age=`+c*3600;break;case`min`:s=`; max-age=`+c*60;break;case`s`:s=`; max-age=`+c;break;case`y`:s=`; max-age=`+c*31104e3;break;default:}}else s=`; expires=`+n;break;case Date:s=`; expires=`+n.toUTCString();break}return document.cookie=encodeURIComponent(e)+`=`+encodeURIComponent(t)+s+(i?`; domain=`+i:this.current_default_config.domain?this.current_default_config.domain:``)+(r?`; path=`+r:this.current_default_config.path?this.current_default_config.path:`; path=/`)+(a==null?this.current_default_config.secure?`; Secure`:``:a?`; Secure`:``)+(o==null?this.current_default_config.sameSite?`; SameSute=`+this.current_default_config.sameSite:``:o?`; SameSite=`+o:``),this},e.prototype.remove=function(e,t,n){return!e||!this.isKey(e)?!1:(document.cookie=encodeURIComponent(e)+`=; expires=Thu, 01 Jan 1970 00:00:00 GMT`+(n?`; domain=`+n:this.current_default_config.domain?this.current_default_config.domain:``)+(t?`; path=`+t:this.current_default_config.path?this.current_default_config.path:`; path=/`)+`; SameSite=Lax`,!0)},e.prototype.isKey=function(e){return RegExp(`(?:^|;\\s*)`+encodeURIComponent(e).replace(/[\-\.\+\*]/g,`\\$&`)+`\\s*\\=`).test(document.cookie)},e.prototype.keys=function(){if(!document.cookie)return[];for(var e=document.cookie.replace(/((?:^|\s*;)[^\=]+)(?=;|$)|^\s*|\s*(?:\=[^;]*)?(?:\1|$)/g,``).split(/\s*(?:\=[^;]*)?;\s*/),t=0;t<e.length;t++)e[t]=decodeURIComponent(e[t]);return e},e}(),_t=null;function vt(){return _t??=new gt,{cookies:S(_t)}}var yt={class:`flex w-full items-center content-center`},bt=r(f({name:`SystemLogsFilter`,__name:`system-logs-filter`,props:{filters:{},filtersActive:{type:Boolean},live:{type:Boolean}},emits:[`update:filters`,`update:live`,`reset-filters`,`adjust-list`,`refresh`],setup(n,{emit:r}){let i=n,o=r,s=c(`system-logs-filter`),{t:u}=g(),f=me(i,`filters`,o),m=me(i,`live`,o),_=h(void 0);return w(()=>f.value.search,e=>{e===``&&(f.value.search=void 0)}),(n,r)=>(p(),e(`div`,yt,[l(A(Ie),{ref_key:`filterFormEl`,ref:_,inline:!0,model:A(f),class:y([[A(s).b()],`grow-1`])},{default:L(()=>[l(A(be),{modelValue:A(f).search,"onUpdate:modelValue":r[0]||=e=>A(f).search=e,placeholder:A(u)(`systemModule.fields.systemLogs.search.placeholder`),class:`max-w[280px] p-1`,clearable:``},{suffix:L(()=>[l(A(a),null,{default:L(()=>[l(A(t),{icon:`mdi:magnify`})]),_:1})]),_:1},8,[`modelValue`,`placeholder`])]),_:1},8,[`model`,`class`]),l(A(fe),{modelValue:A(m),"onUpdate:modelValue":r[1]||=e=>x(m)?m.value=e:null,class:`mr-6`,"active-text":A(u)(`systemModule.buttons.liveTail.title`),"inactive-text":A(u)(`systemModule.buttons.paused.title`)},null,8,[`modelValue`,`active-text`,`inactive-text`]),l(A(j),{plain:``,class:`px-2! mt-1 mr-1`,onClick:r[2]||=e=>o(`refresh`)},{default:L(()=>[l(A(t),{icon:`mdi:refresh`})]),_:1}),i.filtersActive?(p(),d(A(j),{key:0,plain:``,class:`px-2! mt-1 mr-1`,onClick:r[3]||=e=>o(`reset-filters`)},{default:L(()=>[l(A(t),{icon:`mdi:filter-off`})]),_:1})):M(``,!0),l(A(j),{plain:``,class:`px-2! mt-1 mr-1`,onClick:r[4]||=e=>o(`adjust-list`)},{default:L(()=>[l(A(t),{icon:`mdi:slider`})]),_:1})]))}}),[[`__scopeId`,`data-v-eea096a0`]]),xt={key:0,class:`h-full w-full leading-normal`},St={key:1,class:`h-full w-full leading-normal`},Ct=[`onClick`],wt={class:`grid grid-cols-[160px_80px_80px_1fr] md:grid-cols-[160px_80px_80px_1fr] gap-3 items-center`},Tt={class:`font-mono text-xs`},Et={class:`truncate`},Dt={key:0,class:`text-[var(--el-text-color-secondary)]`},Ot={class:`ml-1`},kt={class:`py-3 text-center`},At={key:0,class:`text-xs text-gray-400`},jt=r(f({name:`SystemLogsTable`,__name:`system-logs-table`,props:{items:{},loading:{type:Boolean},hasMore:{type:Boolean},filtersActive:{type:Boolean}},emits:[`detail`,`reset-filters`,`load-more`],setup(r,{emit:a}){let o=r,f=a,m=c(`system-logs-table`),{t:h}=g(),_=i(()=>o.items.length===0&&!o.hasMore),b=e=>{f(`detail`,e.id)},x=e=>ve(new Date(e)),S=e=>new Date(e).toISOString(),C=e=>{let t=e.toLowerCase();return[`fatal`,`error`,`fail`].includes(t)?{type:`danger`,effect:`light`}:[`warn`,`box`].includes(t)?{type:`warning`,effect:`light`}:[`success`,`ready`,`start`,`info`,`log`].includes(t)?{type:`success`,effect:`light`}:{effect:`plain`,class:`tag-neutral`}};return(i,a)=>r.items.length===0&&o.loading?(p(),e(`div`,xt,[l(A(u),{class:`h-full w-full`},{icon:L(()=>[l(A(te),{size:80},{primary:L(()=>[l(A(t),{icon:`mdi:console`})]),secondary:L(()=>[l(A(t),{icon:`mdi:database-refresh`})]),_:1})]),_:1})])):_.value&&!o.loading?(p(),e(`div`,St,[l(A(u),{class:`h-full w-full`},{icon:L(()=>[l(A(te),{size:80},{primary:L(()=>[l(A(t),{icon:`mdi:console`})]),secondary:L(()=>[l(A(t),{icon:`mdi:information`})]),_:1})]),title:L(()=>[s(I(A(h)(`systemModule.texts.systemLogs.noLogs`)),1)]),_:1})])):r.items.length===0&&o.filtersActive&&!o.loading?(p(),d(A(u),{key:2,class:`h-full w-full`},{icon:L(()=>[l(A(te),{size:80},{primary:L(()=>[l(A(t),{icon:`mdi:console`})]),secondary:L(()=>[l(A(t),{icon:`mdi:filter-multiple`})]),_:1})]),title:L(()=>[l(A(z),{class:`block`},{default:L(()=>[s(I(A(h)(`systemModule.texts.systemLogs.noFilteredLogs`)),1)]),_:1}),l(A(j),{type:`primary`,plain:``,class:`mt-4`,onClick:a[0]||=e=>f(`reset-filters`)},{icon:L(()=>[l(A(t),{icon:`mdi:filter-off`})]),default:L(()=>[s(` `+I(A(h)(`systemModule.buttons.resetFilters.title`)),1)]),_:1})]),_:1})):(p(),e(`div`,{key:3,class:y([A(m).b()])},[(p(!0),e(R,null,D(r.items,t=>(p(),e(`div`,{key:t.id,class:`px-3 py-2 border-b hover:bg-[var(--el-fill-color-light)] cursor-pointer`,onClick:()=>b(t)},[n(`div`,wt,[n(`span`,Tt,[l(A(ke),{class:`box-item`,content:S(t.ts),placement:`top-start`},{default:L(()=>[s(I(x(t.ts)),1)]),_:2},1032,[`content`])]),l(A(H),v({ref_for:!0},C(t.type),{size:`small`,class:`justify-self-start`}),{default:L(()=>[s(I(t.type),1)]),_:2},1040),l(A(H),{size:`small`,effect:`plain`,class:`justify-self-start`},{default:L(()=>[s(I(t.source),1)]),_:2},1024),n(`div`,Et,[t.tag?(p(),e(`span`,Dt,` [`+I(t.tag)+`] `,1)):M(``,!0),n(`span`,Ot,I(t.message??A(h)(`systemModule.texts.systemLogs.noMessage`)),1)])])],8,Ct))),128)),n(`div`,kt,[r.hasMore?M(``,!0):(p(),e(`span`,At,I(A(h)(`systemModule.texts.systemLogs.noMoreEntries`)),1)),r.hasMore?(p(),d(A(j),{key:1,loading:r.loading,onClick:a[1]||=e=>f(`load-more`)},{icon:L(()=>[l(A(t),{icon:`mdi:chevron-down`})]),default:L(()=>[s(` `+I(A(h)(`systemModule.buttons.loadMore.title`)),1)]),_:1},8,[`loading`])):M(``,!0)])],2))}}),[[`__scopeId`,`data-v-7a640be0`]]),Mt={class:`h-full w-full flex flex-col`},Nt={class:`flex-1 overflow-hidden flex flex-col`},Pt=f({name:`ListSystemLogs`,__name:`list-system-logs`,props:{items:{},filters:{},filtersActive:{type:Boolean},live:{type:Boolean},loading:{type:Boolean},hasMore:{type:Boolean}},emits:[`detail`,`adjust-list`,`reset-filters`,`refresh`,`load-more`,`clear`,`update:filters`,`update:live`],setup(t,{emit:r}){let i=t,a=r,o=me(i,`filters`,a),s=me(i,`live`,a),c=e=>{a(`detail`,e)},u=()=>{a(`reset-filters`)},d=()=>{a(`load-more`)},f=()=>{a(`refresh`)},m=()=>{a(`adjust-list`)};return(t,r)=>(p(),e(`div`,Mt,[l(A(q),{shadow:`never`,class:`px-1 py-2 mt-2 shrink-0`,"body-class":`p-0!`},{default:L(()=>[l(bt,{filters:A(o),"onUpdate:filters":r[0]||=e=>x(o)?o.value=e:null,live:A(s),"onUpdate:live":r[1]||=e=>x(s)?s.value=e:null,"filters-active":i.filtersActive,onResetFilters:u,onAdjustList:m,onRefresh:f},null,8,[`filters`,`live`,`filters-active`])]),_:1}),n(`div`,Nt,[l(A(q),{shadow:`never`,class:`mt-2 flex flex-col`,"body-class":`p-0! flex-1 overflow-hidden`},{default:L(()=>[l(A(pe),null,{default:L(()=>[l(jt,{items:i.items,loading:i.loading,"filters-active":i.filtersActive,"has-more":i.hasMore,onDetail:c,onResetFilters:u,onLoadMore:d},null,8,[`items`,`loading`,`filters-active`,`has-more`])]),_:1})]),_:1})])]))}}),Ft=Se({search:Me().optional(),levels:Ee(Oe(V)).default([]),sources:Ee(Oe(ue)).default([]),tag:Me().optional()}),It={class:`px-5 py-2 text-center`},Lt=r(f({name:`ListSystemLogsAdjust`,__name:`list-system-logs-adjust`,props:{filters:{},filtersActive:{type:Boolean}},emits:[`update:filters`,`reset-filters`],setup(r,{emit:i}){let o=r,u=i,f=c(`list-system-logs-adjust`),{t:m}=g(),_=[V.silent,V.fatal,V.error,V.warn,V.log,V.info,V.success,V.fail,V.debug],v=Object.values(ue),b=h([`levels`,`sources`,`tag`]),x=me(o,`filters`,u);return(r,i)=>(p(),e(R,null,[l(A(he),{teleport:``},{icon:L(()=>[l(A(t),{icon:`mdi:filter`})]),title:L(()=>[s(I(A(m)(`systemModule.headings.systemLogs.adjustFilters`)),1)]),subtitle:L(()=>[s(I(A(m)(`systemModule.subHeadings.systemLogs.adjustFilters`)),1)]),_:1}),n(`div`,{class:y([[A(f).b()],`flex flex-col h-full w-full overflow-hidden`])},[l(A(pe),{class:`flex-grow`},{default:L(()=>[l(A(He),{modelValue:b.value,"onUpdate:modelValue":i[3]||=e=>b.value=e},{default:L(()=>[l(A(Ve),{name:`levels`,class:y([A(f).e(`filter-item`)])},{title:L(()=>[l(A(z),{class:`!px-2`},{default:L(()=>[s(I(A(m)(`systemModule.filters.systemLogs.levels.title`)),1)]),_:1})]),default:L(()=>[l(A(ze),{modelValue:A(x).levels,"onUpdate:modelValue":i[0]||=e=>A(x).levels=e,class:`flex flex-col px-4`},{default:L(()=>[(p(),e(R,null,D(_,(e,t)=>l(A(Be),{key:t,label:A(m)(`systemModule.levels.${e}`),value:e},null,8,[`label`,`value`])),64))]),_:1},8,[`modelValue`])]),_:1},8,[`class`]),l(A(Ve),{name:`sources`,class:y([A(f).e(`filter-item`)])},{title:L(()=>[l(A(z),{class:`!px-2`},{default:L(()=>[s(I(A(m)(`systemModule.filters.systemLogs.sources.title`)),1)]),_:1})]),default:L(()=>[l(A(ze),{modelValue:A(x).sources,"onUpdate:modelValue":i[1]||=e=>A(x).sources=e,class:`flex flex-col px-4`},{default:L(()=>[(p(!0),e(R,null,D(A(v),(e,t)=>(p(),d(A(Be),{key:t,label:A(m)(`systemModule.sources.${e}`),value:e},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`])]),_:1},8,[`class`]),l(A(Ve),{name:`tag`,class:y([A(f).e(`filter-item`)])},{title:L(()=>[l(A(z),{class:`!px-2`},{default:L(()=>[s(I(A(m)(`systemModule.filters.systemLogs.tag.title`)),1)]),_:1})]),default:L(()=>[l(A(be),{modelValue:A(x).search,"onUpdate:modelValue":i[2]||=e=>A(x).search=e,placeholder:A(m)(`systemModule.filters.systemLogs.tag.placeholder`),class:`w-full p-1`,clearable:``},{suffix:L(()=>[l(A(a),null,{default:L(()=>[l(A(t),{icon:`mdi:magnify`})]),_:1})]),_:1},8,[`modelValue`,`placeholder`])]),_:1},8,[`class`])]),_:1},8,[`modelValue`])]),_:1}),n(`div`,It,[l(A(j),{disabled:!o.filtersActive,onClick:i[4]||=e=>u(`reset-filters`)},{icon:L(()=>[l(A(t),{icon:`mdi:filter-remove`})]),default:L(()=>[s(` `+I(A(m)(`systemModule.buttons.reset.title`)),1)]),_:1},8,[`disabled`])])],2)],64))}}),[[`__scopeId`,`data-v-fc7b2d52`]]),Rt={class:`font-mono`},zt={class:`font-mono`},Bt={class:`font-mono`},Vt=[`href`],Ht={class:`text-xs`},Ut={class:`p-2 bg-[var(--el-fill-color-light)] rounded text-xs overflow-auto`},Wt={class:`p-2 bg-[var(--el-fill-color-light)] rounded text-xs overflow-auto`},Gt={class:`flex gap-2`},Kt=r(f({name:`SystemLogDetail`,__name:`system-log-detail`,props:{systemLog:{}},setup(t){let r=c(`system-log-detail`),{t:i}=g(),a=e=>{try{return JSON.stringify(e,null,2)}catch{return String(e)}},o=async e=>{try{await navigator.clipboard.writeText(e)}catch{let t=document.createElement(`textarea`);t.value=e,t.style.position=`fixed`,t.style.opacity=`0`,document.body.appendChild(t),t.select(),document.execCommand(`copy`),document.body.removeChild(t)}},u=e=>{let t=e.toLowerCase();return[`fatal`,`error`,`fail`].includes(t)?{type:`danger`,effect:`light`}:[`warn`,`box`].includes(t)?{type:`warning`,effect:`light`}:[`success`,`ready`,`start`,`info`,`log`].includes(t)?{type:`success`,effect:`light`}:{effect:`plain`,class:`tag-neutral`}};return(c,f)=>(p(),e(`div`,{class:y([[A(r).b()],`space-y-4`])},[l(A(Ne),{column:1,border:``,"label-width":`140px`,"class-name":`log-detail-descriptions`},{default:L(()=>[l(A(U),{label:A(i)(`systemModule.fields.systemLogs.timestamp.title`)},{default:L(()=>[n(`span`,Rt,I(t.systemLog.ts),1)]),_:1},8,[`label`]),t.systemLog.ingestedAt?(p(),d(A(U),{key:0,label:A(i)(`systemModule.fields.systemLogs.ingestedAt.title`)},{default:L(()=>[n(`span`,zt,I(t.systemLog.ingestedAt),1)]),_:1},8,[`label`])):M(``,!0),l(A(U),{label:A(i)(`systemModule.fields.systemLogs.source.title`)},{default:L(()=>[l(A(H),{size:`small`,effect:`plain`,class:`justify-self-start`},{default:L(()=>[s(I(t.systemLog.source),1)]),_:1})]),_:1},8,[`label`]),l(A(U),{label:A(i)(`systemModule.fields.systemLogs.level.title`)},{default:L(()=>[l(A(H),v(u(t.systemLog.type),{size:`small`,class:`justify-self-start`}),{default:L(()=>[s(I(t.systemLog.type),1)]),_:1},16)]),_:1},8,[`label`]),l(A(U),{label:A(i)(`systemModule.fields.systemLogs.message.title`)},{default:L(()=>[s(I(t.systemLog.message??`(${A(i)(`systemModule.fields.systemLogs.message.noMessage`)})`),1)]),_:1},8,[`label`]),t.systemLog.tag?(p(),d(A(U),{key:1,label:A(i)(`systemModule.fields.systemLogs.tag.title`)},{default:L(()=>[s(I(t.systemLog.tag),1)]),_:1},8,[`label`])):M(``,!0),t.systemLog.user?.id?(p(),d(A(U),{key:2,label:A(i)(`systemModule.fields.systemLogs.user.title`)},{default:L(()=>[n(`span`,Bt,I(t.systemLog.user.id),1)]),_:1},8,[`label`])):M(``,!0),t.systemLog.context?.appVersion?(p(),d(A(U),{key:3,label:A(i)(`systemModule.fields.systemLogs.appVersion.title`)},{default:L(()=>[s(I(t.systemLog.context?.appVersion),1)]),_:1},8,[`label`])):M(``,!0),t.systemLog.context?.url?(p(),d(A(U),{key:4,label:A(i)(`systemModule.fields.systemLogs.url.title`)},{default:L(()=>[n(`a`,{href:t.systemLog.context.url,target:`_blank`,class:`text-primary hover:underline`},I(t.systemLog.context.url),9,Vt)]),_:1},8,[`label`])):M(``,!0),t.systemLog.context?.userAgent?(p(),d(A(U),{key:5,label:A(i)(`systemModule.fields.systemLogs.userAgent.title`)},{default:L(()=>[n(`span`,Ht,I(t.systemLog.context?.userAgent),1)]),_:1},8,[`label`])):M(``,!0),t.systemLog.context?.locale?(p(),d(A(U),{key:6,label:A(i)(`systemModule.fields.systemLogs.locale.title`)},{default:L(()=>[s(I(t.systemLog.context.locale),1)]),_:1},8,[`label`])):M(``,!0)]),_:1}),l(A(Ge),{type:`card`,class:`mt-2`},{default:L(()=>[t.systemLog.args?(p(),d(A(Ke),{key:0,label:A(i)(`systemModule.fields.systemLogs.args.title`)},{default:L(()=>[n(`pre`,Ut,I(a(t.systemLog.args)),1)]),_:1},8,[`label`])):M(``,!0),l(A(Ke),{label:A(i)(`systemModule.fields.systemLogs.rawJson.title`)},{default:L(()=>[n(`pre`,Wt,I(a(t.systemLog)),1),n(`div`,Gt,[l(A(j),{size:`small`,onClick:f[0]||=e=>o(a(t.systemLog))},{default:L(()=>[s(I(A(i)(`systemModule.buttons.copyJson.title`)),1)]),_:1})])]),_:1},8,[`label`])]),_:1})],2))}}),[[`__scopeId`,`data-v-632f56b9`]]),qt={class:`flex flex-col items-center`},Jt={class:`flex flex-row justify-center items-center my-4`},Yt=f({name:`AboutApplication`,__name:`about-application`,setup(r){let{t:i}=g(),o=h(`1.1.0-alpha.16`);return(r,c)=>(p(),e(`div`,qt,[l(A(t),{icon:`mdi:cog-outline`,class:`w[200px] h[200px]`}),l(A(z),{size:`large`,class:`block text-4xl! mt-4!`},{default:L(()=>[...c[0]||=[s(` FastyBird! Smart Panel `,-1)]]),_:1}),l(A(z),{class:`block text-lg! my-2!`},{default:L(()=>[s(`Version `+I(o.value),1)]),_:1}),l(A(B)),l(A(z),{size:`large`,class:`block text-justify max-w-[500px]`,"data-test-id":`about-info`},{default:L(()=>[s(I(A(i)(`systemModule.texts.system.about`)),1)]),_:1}),l(A(B)),n(`div`,Jt,[l(A(We),{underline:`never`,href:`https://github.com/fastybird`,target:`_blank`,class:`mx-5`},{icon:L(()=>[l(A(a),{size:20},{default:L(()=>[l(A(t),{icon:`mdi:github`})]),_:1})]),_:1}),l(A(B),{direction:`vertical`}),l(A(We),{underline:`never`,href:`https://x.com/fastybird`,target:`_blank`,class:`mx-5`},{icon:L(()=>[l(A(a),{size:20},{default:L(()=>[l(A(t),{icon:`fa6-brands:x-twitter`})]),_:1})]),_:1}),l(A(B),{direction:`vertical`}),l(A(We),{underline:`never`,href:`https://discord.gg/HPRJ2GzK`,target:`_blank`,class:`mx-5`},{icon:L(()=>[l(A(a),{size:20},{default:L(()=>[l(A(t),{icon:`mdi:discord`})]),_:1})]),_:1}),l(A(B),{direction:`vertical`}),l(A(We),{underline:`never`,href:`https://www.facebook.com/fastybird`,target:`_blank`,class:`mx-5`},{icon:L(()=>[l(A(a),{size:20},{default:L(()=>[l(A(t),{icon:`mdi:facebook`})]),_:1})]),_:1})])]))}}),Xt=window.location.pathname.match(/^(\/api\/hassio_ingress\/[^/]+)/),Zt=Xt?Xt[1]:``,Qt=()=>{let e=Te(),{cookies:t}=vt(),n=h([]),r=h(!1),i=h(!1),a=`${window.location.origin}${Zt}/api/v1/${P}/${it}/backups`,o=async()=>{r.value=!0;try{let{data:t,error:r}=await e.client.GET(`/modules/system/backups`,{});if(r||!t?.data)return;n.value=t.data}catch{}finally{r.value=!1}};return{backups:n,loading:r,creating:i,fetchBackups:o,createBackup:async t=>{i.value=!0;try{let n=t?{data:{name:t}}:void 0,{data:r,error:i}=await e.client.POST(`/modules/system/backups`,{body:n});if(i||!r?.data)return null;let a=r.data;return await o(),a}catch{return null}finally{i.value=!1}},deleteBackup:async t=>{try{let{error:n}=await e.client.DELETE(`/modules/system/backups/{id}`,{params:{path:{id:t}}});return n?!1:(await o(),!0)}catch{return!1}},restoreBackup:async t=>{try{let{error:n}=await e.client.POST(`/modules/system/backups/{id}/restore`,{params:{path:{id:t}}});return!n}catch{return!1}},downloadBackup:async e=>{let n=t.get(Xe),r=`${a}/${e.id}/download`,i=await fetch(r,{headers:{...n?{Authorization:`Bearer ${n}`}:{}}});if(!i.ok)throw Error(`Download failed`);let o=await i.blob(),s=document.createElement(`a`),c=URL.createObjectURL(o);s.href=c,s.download=`smart-panel-backup-${e.name||e.id}.tar.gz`,s.click(),setTimeout(()=>URL.revokeObjectURL(c),2e3)},uploadBackup:async e=>{let n=t.get(Xe),r=`${a}/upload`,i=new FormData;i.append(`file`,e);try{return(await fetch(r,{method:`POST`,headers:{...n?{Authorization:`Bearer ${n}`}:{}},body:i})).ok?(await o(),!0):!1}catch{return!1}}}},$t=Symbol(`FB-System-Module-SystemActionsService`),en=class{app;router;t;factoryResetTriggeredBy=null;constructor(e,t,n){this.app=e,this.router=t,this.t=n.t}reboot(){this.router.push({name:et.REBOOTING})}serviceRestart(){this.router.push({name:et.SERVICE_RESTARTING})}powerOff(){this.router.push({name:et.POWER_OFF})}factoryReset(){}isFactoryResetDone(){return this.factoryResetTriggeredBy===null}async factoryResetDone(){this.factoryResetTriggeredBy!==null&&(this.factoryResetTriggeredBy=null,de.success(this.t(`systemModule.messages.manage.factoryResetSuccess`)),await this.handleFactoryResetRedirect())}setFactoryResetTrigger(e){this.factoryResetTriggeredBy=e}async handleFactoryResetRedirect(){let e=ye(this.app);e&&await e.signOut(),ot(),await this.router.push({name:et.FACTORY_RESET})}},tn=e=>{if(e&&e._context&&e._context.provides&&e._context.provides[$t])return e._context.provides[$t];if(m()){let e=le($t,void 0);if(e)return e}throw Error(`A system actions service has not been provided.`)},nn=(e,t)=>{e.provide($t,t)},rn=()=>{let e=tn(),{t}=g(),{sendCommand:n}=_e(),{invalidate:r}=st(),{configModule:i}=$e({type:`displays-module`}),a=()=>{let e=i.value;return e!==null&&e.deploymentMode!==`all-in-one`};return{onServiceRestart:()=>{let r=a()?t(`systemModule.messages.manage.confirmServiceRestartGateway`):t(`systemModule.messages.manage.confirmServiceRestart`);Ce.confirm(r,t(`systemModule.headings.manage.serviceRestart`),{confirmButtonText:t(`systemModule.buttons.yes.title`),cancelButtonText:t(`systemModule.buttons.no.title`),type:`warning`}).then(async()=>{e.serviceRestart();try{await n(tt.SYSTEM_SERVICE_RESTART_SET,null,at.INTERNAL_PLATFORM_ACTION)}catch{}}).catch(()=>{})},onSystemReboot:()=>{let r=a()?t(`systemModule.messages.manage.confirmRebootGateway`):t(`systemModule.messages.manage.confirmReboot`);Ce.confirm(r,t(`systemModule.headings.manage.systemReboot`),{confirmButtonText:t(`systemModule.buttons.yes.title`),cancelButtonText:t(`systemModule.buttons.no.title`),type:`warning`}).then(async()=>{e.reboot();try{await n(tt.SYSTEM_REBOOT_SET,null,at.INTERNAL_PLATFORM_ACTION)}catch{}}).catch(()=>{})},onPowerOff:()=>{let r=a()?t(`systemModule.messages.manage.confirmPowerOffGateway`):t(`systemModule.messages.manage.confirmPowerOff`);Ce.confirm(r,t(`systemModule.headings.manage.powerOff`),{confirmButtonText:t(`systemModule.buttons.yes.title`),cancelButtonText:t(`systemModule.buttons.no.title`),type:`warning`}).then(async()=>{e.powerOff();try{await n(tt.SYSTEM_POWER_OFF_SET,null,at.INTERNAL_PLATFORM_ACTION)}catch{}}).catch(()=>{})},onFactoryReset:()=>{let i=a()?t(`systemModule.messages.manage.confirmFactoryResetGateway`):t(`systemModule.messages.manage.confirmFactoryReset`);Ce.confirm(i,t(`systemModule.headings.manage.factoryReset`),{confirmButtonText:t(`systemModule.buttons.yes.title`),cancelButtonText:t(`systemModule.buttons.no.title`),type:`warning`}).then(async()=>{n(tt.SYSTEM_FACTORY_RESET_SET,null,at.INTERNAL_PLATFORM_ACTION,3e4).catch(()=>{}),r(),await e.handleFactoryResetRedirect()}).catch(()=>{})}}},an=Symbol(`FB-Module-System-SystemInfo`),on=Symbol(`FB-Module-System-ThrottleStatus`),sn=Symbol(`FB-Module-System-LogsEntries`),cn=()=>{let e=je().getStore(an),{data:t,semaphore:n}=we(e);return{systemInfo:i(()=>t.value),isLoading:i(()=>t.value===null&&n.value.getting),fetchSystemInfo:async()=>{await e.get()}}},ln=({id:e})=>{let{data:t,semaphore:n}=we(je().getStore(sn)),r=i(()=>e===null?null:t.value[e]??null);return{systemLog:r,isLoading:i(()=>e===null||r.value!==null?!1:n.value.fetching.items)}},un=xe(),dn={search:void 0,levels:[],sources:[],tag:void 0},fn=e=>{let t=je().getStore(sn),{firstLoad:n,hasMore:r,nextCursor:a,semaphore:o}=we(t),{filters:s,reset:c}=Ae({key:`${nt}:logs:list`,filters:{schema:Ft,defaults:dn},syncQuery:e?.syncQuery??!0,version:1}),l=i(()=>s.value.search!==dn.search||!(0,un.isEqual)(s.value.levels,dn.levels)||!(0,un.isEqual)(s.value.sources,dn.sources)||s.value.tag!==dn.tag),u=h(!1),d=i(()=>t.findAll().sort((e,t)=>Date.parse(t.ts)-Date.parse(e.ts)).filter(e=>(!s.value.search||e.id.toLowerCase().includes(s.value.search.toLowerCase())||e.message?.toLowerCase().includes(s.value.search.toLowerCase())||e.source?.toLowerCase().includes(s.value.search.toLowerCase()))&&(s.value.levels.length===0||s.value.levels.includes(e.type))&&(s.value.sources.length===0||s.value.sources.includes(e.source))&&(!s.value.tag||(e.tag||``).toLowerCase().includes(s.value.tag.toLowerCase())))),f=async()=>{await t.fetch()},p=async()=>{await t.fetch({afterId:a.value,append:!0})},m=async()=>{await t.fetch()},g=i(()=>o.value.fetching.items||!n.value),_=i(()=>n.value),v=null;return w(()=>u.value,e=>{v&&=(clearInterval(v),null),e&&(v=setInterval(()=>{o.value.fetching.items||t.fetch({append:!0}).catch(()=>void 0)},3e3))}),oe(()=>{v&&=(clearInterval(v),null)}),{systemLogs:d,hasMore:r,areLoading:g,loaded:_,fetchSystemLogs:f,loadMoreSystemLogs:p,filters:s,filtersActive:l,resetFilter:c,live:u,refreshSystemLogs:m}},pn=()=>{let e=je().getStore(on),{data:t,semaphore:n}=we(e);return{throttleStatus:i(()=>t.value),isLoading:i(()=>t.value===null&&n.value.getting),fetchThrottleStatus:async()=>{await e.get()}}},mn=[],hn=e=>(mn.push(e),()=>{mn=mn.filter(t=>t!==e)}),gn=e=>{for(let t of mn)t(e)},_n=`/${P}/${it}/system/update/status`,vn=`/${P}/${it}/system/update/check`,yn=`/${P}/${it}/system/update/install`,bn=null,xn=0,Sn=5e3,Cn=h(null),wn=h(null),Tn=h(!1),En=h(null),Dn=h(null),On=h(null),X=h(`idle`),kn=h(null),Z=h(null),Q=h(null),An=h(!1),$=h(!1),jn=h(!1),Mn=null,Nn=4e3,Pn=300*1e3,Fn=1800*1e3,In=null,Ln=2e3,Rn=90,zn=i(()=>[`downloading`,`stopping`,`installing`,`migrating`,`starting`].includes(X.value)),Bn=e=>{Cn.value=e.current_version??null,wn.value=e.latest_version??null,Tn.value=e.update_available??!1,En.value=e.update_type??null,Dn.value=e.last_checked?new Date(e.last_checked):null,On.value=e.changelog_url??null,e.status!==void 0&&(X.value=e.status),e.phase!==void 0&&(kn.value=e.phase),e.progress_percent!==void 0&&(Z.value=e.progress_percent),e.error!==void 0&&(Q.value=e.error===null?null:`systemModule.messages.update.updateFailed`),$.value=zn.value},Vn=e=>{e.update_available!==void 0&&(Tn.value=e.update_available),e.latest_version!==void 0&&(wn.value=e.latest_version),e.current_version!==void 0&&(Cn.value=e.current_version),e.update_type!==void 0&&(En.value=e.update_type),e.status!==void 0&&(X.value=e.status),e.phase!==void 0&&(kn.value=e.phase),e.progress_percent!==void 0&&(Z.value=e.progress_percent),e.error!==void 0&&(Q.value=e.error===null?null:`systemModule.messages.update.updateFailed`),$.value=zn.value};hn(Vn);var Hn=()=>{let e=Te(),t=async()=>{let t=Date.now();if(!(t-xn<Sn))return bn||(An.value=!0,xn=t,bn=(async()=>{try{let{data:t}=await e.client.GET(_n);t?.data&&Bn(t.data)}catch{}finally{An.value=!1,bn=null}})(),bn)},n=async()=>{An.value=!0;try{let{data:t}=await e.client.POST(vn);t?.data&&Bn(t.data)}catch(e){throw Q.value=`systemModule.messages.update.checkFailed`,e}finally{An.value=!1}},r=()=>{In!==null&&(clearInterval(In),In=null)},i=()=>{r(),In=setInterval(()=>{let e=Z.value??45;if(e<Rn){let t=Rn-e,n=Math.max(1,Math.floor(t*.15));Z.value=Math.min(Rn,e+n)}},Ln)},a=()=>{r(),Mn!==null&&(clearInterval(Mn),Mn=null)},o=()=>{a();let t=wn.value,n=Date.now(),o=n;Mn=setInterval(async()=>{if(Date.now()-o>Pn||Date.now()-n>Fn){a(),jn.value=!1,$.value=!1,X.value=`failed`,Q.value=`systemModule.messages.update.updateFailed`;return}try{let{data:n}=await e.client.GET(_n);if(n?.data){let e=n.data,i=e.status,s=e.current_version;Bn(e),o=Date.now(),i===`complete`?(X.value=`complete`,kn.value=null,Q.value=null,Z.value=100,$.value=!1,jn.value=!1,a()):i===`failed`?(X.value=`failed`,kn.value=null,$.value=!1,jn.value=!1,Q.value=Q.value||`systemModule.messages.update.updateFailed`,a()):!i||i===`idle`?(s&&t&&s===t&&(X.value=`complete`,Q.value=null,Z.value=100),kn.value=null,$.value=!1,jn.value=!1,a()):(r(),jn.value=!1)}}catch{jn.value=!0,In===null&&i()}},Nn)};return{currentVersion:Cn,latestVersion:wn,updateAvailable:Tn,updateType:En,lastChecked:Dn,changelogUrl:On,status:X,phase:kn,progressPercent:Z,error:Q,loading:An,installing:$,waitingForRestart:jn,isUpdating:zn,fetchStatus:t,checkForUpdates:n,installUpdate:async(t=!1)=>{$.value=!0,X.value=`downloading`,Q.value=null;try{let{error:n}=await e.client.POST(yn,{body:{allow_major:t}});if(n)throw $.value=!1,X.value=`failed`,Q.value=`systemModule.messages.update.installFailed`,Error(`Failed to start update`);o()}catch(e){throw $.value=!1,X.value=`failed`,Q.value=`systemModule.messages.update.installFailed`,e}},applyStatusEvent:Vn}},Un={class:`flex justify-center items-center h-full`},Wn={class:`flex justify-center items-center h-full`},Gn={class:`flex justify-center items-center h-full`},Kn={class:`flex justify-center items-center h-full`},qn={class:`flex justify-center items-center h-full`},Jn={class:`flex justify-center items-center h-full`},Yn={class:`flex justify-center items-center h-full`},Xn={class:`flex justify-center items-center h-full`},Zn={class:`flex justify-center items-center h-full`},Qn={class:`flex justify-center items-center h-full`},$n={class:`flex justify-center items-center h-full`},er={class:`flex justify-center items-center h-full`},tr=f({name:`ManageSystem`,__name:`manage-system`,emits:[`close`],setup(r,{emit:a}){let o=a,{t:c}=g(),u=ae(),{configModule:d}=$e({type:`displays-module`}),f=i(()=>{let e=d.value;return e!==null&&e.deploymentMode!==`all-in-one`}),{onServiceRestart:m,onSystemReboot:h,onPowerOff:_,onFactoryReset:v}=rn(),y=()=>{o(`close`),u.push({name:et.SYSTEM_BACKUPS})},b=()=>{o(`close`),u.push({name:et.SYSTEM_LOGS})};return(r,i)=>(p(),e(R,null,[l(A(J),{justify:`center`,class:`cursor-pointer`,onClick:A(m)},{default:L(()=>[l(A(Y),{span:3,class:`text-center`},{default:L(()=>[n(`div`,Un,[l(A(ge),{size:32},{default:L(()=>[l(A(t),{icon:`mdi:restart`,class:`w[20px] h[20px]`})]),_:1})])]),_:1}),l(A(Y),{span:19},{default:L(()=>[l(A(z),{size:`large`,class:`block font-600 text-lg`},{default:L(()=>[s(I(A(c)(`systemModule.headings.manage.serviceRestart`)),1)]),_:1}),l(A(z),{class:`block`,"data-test-id":`service-restart-info`},{default:L(()=>[s(I(A(c)(`systemModule.texts.manage.serviceRestartDevice`)),1)]),_:1})]),_:1}),l(A(Y),{span:2,class:`text-center`},{default:L(()=>[n(`div`,Wn,[l(A(t),{icon:`mdi:keyboard-arrow-right`,class:`w[32px] h[32px]`})])]),_:1})]),_:1},8,[`onClick`]),l(A(B)),l(A(J),{justify:`center`,class:`cursor-pointer`,onClick:A(h)},{default:L(()=>[l(A(Y),{span:3,class:`text-center`},{default:L(()=>[n(`div`,Gn,[l(A(ge),{size:32},{default:L(()=>[l(A(t),{icon:`mdi:restart-alert`,class:`w[20px] h[20px]`})]),_:1})])]),_:1}),l(A(Y),{span:19},{default:L(()=>[l(A(z),{size:`large`,class:`block font-600 text-lg`},{default:L(()=>[s(I(A(c)(`systemModule.headings.manage.systemReboot`)),1)]),_:1}),l(A(z),{class:`block`,"data-test-id":`system-reboot-info`},{default:L(()=>[s(I(f.value?A(c)(`systemModule.texts.manage.rebootGateway`):A(c)(`systemModule.texts.manage.rebootDevice`)),1)]),_:1})]),_:1}),l(A(Y),{span:2,class:`text-center`},{default:L(()=>[n(`div`,Kn,[l(A(t),{icon:`mdi:keyboard-arrow-right`,class:`w[32px] h[32px]`})])]),_:1})]),_:1},8,[`onClick`]),l(A(B)),l(A(J),{justify:`center`,class:`cursor-pointer`,onClick:A(_)},{default:L(()=>[l(A(Y),{span:3,class:`text-center`},{default:L(()=>[n(`div`,qn,[l(A(ge),{size:32},{default:L(()=>[l(A(t),{icon:`mdi:power-settings-new`,class:`w[20px] h[20px]`})]),_:1})])]),_:1}),l(A(Y),{span:19},{default:L(()=>[l(A(z),{size:`large`,class:`block font-600 text-lg`},{default:L(()=>[s(I(A(c)(`systemModule.headings.manage.powerOff`)),1)]),_:1}),l(A(z),{class:`block`,"data-test-id":`power-off-info`},{default:L(()=>[s(I(f.value?A(c)(`systemModule.texts.manage.powerOffGateway`):A(c)(`systemModule.texts.manage.powerOffDevice`)),1)]),_:1})]),_:1}),l(A(Y),{span:2,class:`text-center`},{default:L(()=>[n(`div`,Jn,[l(A(t),{icon:`mdi:keyboard-arrow-right`,class:`w[32px] h[32px]`})])]),_:1})]),_:1},8,[`onClick`]),l(A(B)),l(A(J),{justify:`center`,class:`mb-4 cursor-pointer`,onClick:A(v)},{default:L(()=>[l(A(Y),{span:3,class:`text-center`},{default:L(()=>[n(`div`,Yn,[l(A(ge),{size:32},{default:L(()=>[l(A(t),{icon:`mdi:vacuum-cleaner`,class:`w[20px] h[20px]`})]),_:1})])]),_:1}),l(A(Y),{span:19},{default:L(()=>[l(A(z),{size:`large`,class:`block font-600 text-lg`},{default:L(()=>[s(I(A(c)(`systemModule.headings.manage.factoryReset`)),1)]),_:1}),l(A(z),{class:`block`,"data-test-id":`factory-reset-info`},{default:L(()=>[s(I(f.value?A(c)(`systemModule.texts.manage.factoryResetGateway`):A(c)(`systemModule.texts.manage.factoryResetDevice`)),1)]),_:1})]),_:1}),l(A(Y),{span:2,class:`text-center`},{default:L(()=>[n(`div`,Xn,[l(A(t),{icon:`mdi:keyboard-arrow-right`,class:`w[32px] h[32px]`})])]),_:1})]),_:1},8,[`onClick`]),l(A(B)),l(A(J),{justify:`center`,class:`cursor-pointer`,onClick:y},{default:L(()=>[l(A(Y),{span:3,class:`text-center`},{default:L(()=>[n(`div`,Zn,[l(A(ge),{size:32},{default:L(()=>[l(A(t),{icon:`mdi:backup-restore`,class:`w[20px] h[20px]`})]),_:1})])]),_:1}),l(A(Y),{span:19},{default:L(()=>[l(A(z),{size:`large`,class:`block font-600 text-lg`},{default:L(()=>[s(I(A(c)(`systemModule.headings.manage.systemBackups`)),1)]),_:1}),l(A(z),{class:`block`,"data-test-id":`system-backups-info`},{default:L(()=>[s(I(A(c)(`systemModule.texts.manage.systemBackups`)),1)]),_:1})]),_:1}),l(A(Y),{span:2,class:`text-center`},{default:L(()=>[n(`div`,Qn,[l(A(t),{icon:`mdi:keyboard-arrow-right`,class:`w[32px] h[32px]`})])]),_:1})]),_:1}),l(A(B)),l(A(J),{justify:`center`,class:`mb-4 cursor-pointer`,onClick:b},{default:L(()=>[l(A(Y),{span:3,class:`text-center`},{default:L(()=>[n(`div`,$n,[l(A(ge),{size:32},{default:L(()=>[l(A(t),{icon:`mdi:console`,class:`w[20px] h[20px]`})]),_:1})])]),_:1}),l(A(Y),{span:19},{default:L(()=>[l(A(z),{size:`large`,class:`block font-600 text-lg`},{default:L(()=>[s(I(A(c)(`systemModule.headings.manage.systemLogs`)),1)]),_:1}),l(A(z),{class:`block`,"data-test-id":`system-logs-info`},{default:L(()=>[s(I(A(c)(`systemModule.texts.manage.systemLogs`)),1)]),_:1})]),_:1}),l(A(Y),{span:2,class:`text-center`},{default:L(()=>[n(`div`,er,[l(A(t),{icon:`mdi:keyboard-arrow-right`,class:`w[32px] h[32px]`})])]),_:1})]),_:1})],64))}}),nr={class:`flex flex-row items-center pt-2 pl-2 min-h-10`},rr={key:0},ir={key:1},ar={class:`mb-4`},or=f({name:`UpdateStatus`,__name:`update-status`,setup(r){let{t:o}=g(),c=h(!1),{currentVersion:u,latestVersion:f,updateAvailable:m,updateType:_,lastChecked:v,status:y,phase:x,progressPercent:S,error:C,loading:w,waitingForRestart:T,isUpdating:E,fetchStatus:D,checkForUpdates:O,installUpdate:k}=Hn(),ee=i(()=>{switch(_.value){case`major`:return`danger`;case`minor`:return`warning`;case`patch`:return`success`;default:return`info`}}),N=i(()=>v.value?new Intl.DateTimeFormat(`en-US`,{dateStyle:`medium`,timeStyle:`short`}).format(v.value):null),P=()=>{E.value||(y.value=`idle`,x.value=null,S.value=null,C.value=null),c.value=!0},F=async()=>{try{await O()}catch{de.error(o(`systemModule.messages.update.checkFailed`))}},te=async()=>{try{await k(_.value===`major`),de.success(o(`systemModule.messages.update.updateStarted`))}catch{de.error(o(`systemModule.messages.update.installFailed`))}};return b(()=>{D()}),(r,i)=>(p(),e(R,null,[l(A(q),{class:`md:m-2 xs:my-1`,"body-class":`p-0!`},{default:L(()=>[l(A(Ne),{"label-width":170,column:1,border:``},{title:L(()=>[n(`div`,nr,[l(A(a),{class:`mr-2`,size:`28`},{default:L(()=>[l(A(t),{icon:`mdi:update`})]),_:1}),s(` `+I(A(o)(`systemModule.headings.update.title`))+` `,1),A(m)&&A(f)?(p(),d(A(H),{key:0,type:`warning`,class:`ml-2`},{default:L(()=>[s(I(A(o)(`systemModule.texts.update.available`,{version:A(f)})),1)]),_:1})):M(``,!0)])]),default:L(()=>[l(A(U),{label:A(o)(`systemModule.labels.update.currentVersion`)},{default:L(()=>[s(I(A(u)||`-`),1)]),_:1},8,[`label`]),l(A(U),{label:A(o)(`systemModule.labels.update.latestVersion`)},{default:L(()=>[A(f)?(p(),e(`span`,rr,[s(I(A(f))+` `,1),A(_)?(p(),d(A(H),{key:0,size:`small`,type:ee.value,class:`ml-2`},{default:L(()=>[s(I(A(_)),1)]),_:1},8,[`type`])):M(``,!0)])):(p(),e(`span`,ir,`-`))]),_:1},8,[`label`]),l(A(U),{label:A(o)(`systemModule.labels.update.lastChecked`)},{default:L(()=>[s(I(N.value||`-`),1)]),_:1},8,[`label`]),l(A(U),{label:A(o)(`systemModule.labels.update.actions`)},{default:L(()=>[A(m)?(p(),d(A(j),{key:1,size:`small`,type:`primary`,onClick:P},{icon:L(()=>[l(A(t),{icon:`mdi:download`})]),default:L(()=>[s(` `+I(A(o)(`systemModule.buttons.update.installUpdate`)),1)]),_:1})):(p(),d(A(j),{key:0,size:`small`,loading:A(w),disabled:A(E),onClick:F},{icon:L(()=>[l(A(t),{icon:`mdi:refresh`})]),default:L(()=>[s(` `+I(A(o)(`systemModule.buttons.update.checkForUpdates`)),1)]),_:1},8,[`loading`,`disabled`]))]),_:1},8,[`label`])]),_:1})]),_:1}),l(A(Ue),{modelValue:c.value,"onUpdate:modelValue":i[2]||=e=>c.value=e,title:A(o)(`systemModule.headings.update.title`),"close-on-click-modal":!A(E)&&!A(T),"close-on-press-escape":!A(E)&&!A(T),"show-close":!A(E)&&!A(T)},{footer:L(()=>[!A(E)&&A(y)!==`complete`?(p(),d(A(j),{key:0,link:``,onClick:i[0]||=e=>c.value=!1},{default:L(()=>[s(I(A(o)(`systemModule.buttons.cancel.title`)),1)]),_:1})):M(``,!0),!A(E)&&A(y)!==`complete`?(p(),d(A(j),{key:1,type:`primary`,onClick:te},{icon:L(()=>[l(A(t),{icon:`mdi:download`})]),default:L(()=>[s(` `+I(A(o)(`systemModule.buttons.update.installUpdate`)),1)]),_:1})):M(``,!0),A(y)===`complete`?(p(),d(A(j),{key:2,link:``,onClick:i[1]||=e=>c.value=!1},{default:L(()=>[s(I(A(o)(`systemModule.buttons.close.title`)),1)]),_:1})):M(``,!0)]),default:L(()=>[n(`div`,ar,I(A(o)(`systemModule.messages.update.confirmInstall`,{version:A(f)})),1),A(_)===`major`?(p(),d(A(Le),{key:0,type:`warning`,title:A(o)(`systemModule.messages.update.majorUpdateWarning`,{version:A(f)}),class:`mb-4`,closable:!1},null,8,[`title`])):M(``,!0),A(E)||A(y)===`failed`||A(y)===`complete`?(p(),e(R,{key:1},[l(A(mt),{percentage:A(S)||0,status:A(y)===`failed`?`exception`:A(y)===`complete`?`success`:void 0,class:`mb-2`},null,8,[`percentage`,`status`]),A(T)?(p(),d(A(z),{key:0,class:`block mb-4`},{default:L(()=>[s(I(A(o)(`systemModule.texts.update.waitingForRestart`)),1)]),_:1})):A(x)?(p(),d(A(z),{key:1,class:`block mb-4`},{default:L(()=>[s(I(A(x)),1)]),_:1})):M(``,!0)],64)):M(``,!0),A(y)===`complete`?(p(),d(A(Le),{key:2,type:`success`,title:A(o)(`systemModule.messages.update.updateComplete`),class:`mb-4`,closable:!1},null,8,[`title`])):M(``,!0),A(C)?(p(),d(A(Le),{key:3,type:`error`,title:A(o)(A(C)),class:`mb-4`,closable:!1},null,8,[`title`])):M(``,!0)]),_:1},8,[`modelValue`,`title`,`close-on-click-modal`,`close-on-press-escape`,`show-close`])],64))}}),sr={class:`flex flex-row items-center pt-2 pl-2 min-h-10`},cr={class:`flex flex-row items-center pt-2 pl-2 min-h-10`},lr={class:`flex flex-row items-center pt-2 pl-2 min-h-10`},ur={class:`flex flex-row items-center pt-2 pl-2 min-h-10`},dr=f({name:`SystemInfoDetail`,__name:`system-info-detail`,props:{systemInfo:{},throttleStatus:{},layout:{default:rt.DEFAULT}},setup(r){let i=r,{t:o}=g(),{format:c}=Ye();return(r,u)=>(p(),d(A(J),null,{default:L(()=>[l(A(Y),{xs:24,sm:12,md:8},{default:L(()=>[l(or)]),_:1}),l(A(Y),{xs:24,sm:12,md:8},{default:L(()=>[l(A(q),{class:`md:m-2 xs:my-1`,"body-class":`p-0!`},{default:L(()=>[l(A(Ne),{"label-width":170,column:1,border:``},{title:L(()=>[n(`div`,sr,[l(A(a),{class:`mr-2`,size:`28`},{default:L(()=>[l(A(t),{icon:`mdi:chip`})]),_:1}),u[0]||=s(` Hardware info `,-1)])]),default:L(()=>[l(A(U),{label:A(o)(`systemModule.systemInfo.cpuLoad`)},{default:L(()=>[s(I(A(c)(i.systemInfo?.cpuLoad??0,{maximumFractionDigits:2}))+` % `,1)]),_:1},8,[`label`]),l(A(U),{label:A(o)(`systemModule.systemInfo.memoryUsage`)},{default:L(()=>[s(I(A(c)((i.systemInfo?.memory.used??0)/1024/1024,{maximumFractionDigits:0}))+` MB / `+I(A(c)((i.systemInfo?.memory.total??0)/1024/1024,{maximumFractionDigits:0}))+` MB `,1)]),_:1},8,[`label`]),i.systemInfo?.temperature.cpu?(p(),d(A(U),{key:0,label:A(o)(`systemModule.systemInfo.cpuTemperature`)},{default:L(()=>[s(I(i.systemInfo?.temperature.cpu)+` °C `,1)]),_:1},8,[`label`])):(p(),d(A(U),{key:1,label:A(o)(`systemModule.systemInfo.cpuTemperature`)},{default:L(()=>[s(I(A(o)(`application.value.notAvailable`)),1)]),_:1},8,[`label`])),i.systemInfo?.temperature.gpu?(p(),d(A(U),{key:2,label:A(o)(`systemModule.systemInfo.gpuTemperature`)},{default:L(()=>[s(I(i.systemInfo?.temperature.gpu)+` °C `,1)]),_:1},8,[`label`])):(p(),d(A(U),{key:3,label:A(o)(`systemModule.systemInfo.gpuTemperature`)},{default:L(()=>[s(I(A(o)(`application.value.notAvailable`)),1)]),_:1},8,[`label`]))]),_:1})]),_:1})]),_:1}),l(A(Y),{xs:24,sm:12,md:8},{default:L(()=>[l(A(q),{class:`md:m-2 xs:my-1`,"body-class":`p-0!`},{default:L(()=>[l(A(Ne),{"label-width":250,column:1,border:``},{title:L(()=>[n(`div`,cr,[l(A(a),{class:`mr-2`,size:`28`},{default:L(()=>[l(A(t),{icon:`mdi:server-outline`})]),_:1}),u[1]||=s(` Operating system `,-1)])]),default:L(()=>[l(A(U),{label:A(o)(`systemModule.systemInfo.osPlatform`)},{default:L(()=>[s(I(i.systemInfo?.os.platform),1)]),_:1},8,[`label`]),l(A(U),{label:A(o)(`systemModule.systemInfo.osDistro`)},{default:L(()=>[s(I(i.systemInfo?.os.distro),1)]),_:1},8,[`label`]),l(A(U),{label:A(o)(`systemModule.systemInfo.osRelease`)},{default:L(()=>[s(I(i.systemInfo?.os.release),1)]),_:1},8,[`label`]),l(A(U),{label:A(o)(`systemModule.systemInfo.uptime`)},{default:L(()=>[s(I(i.systemInfo?.os.uptime),1)]),_:1},8,[`label`])]),_:1})]),_:1})]),_:1}),l(A(Y),{xs:24,sm:12,md:8},{default:L(()=>[l(A(q),{class:`md:m-2 xs:my-1`,"body-class":`p-0!`},{default:L(()=>[l(A(Ne),{"label-width":170,column:1,border:``},{title:L(()=>[n(`div`,lr,[l(A(a),{class:`mr-2`,size:`28`},{default:L(()=>[l(A(t),{icon:`mdi:local-area-network`})]),_:1}),u[2]||=s(` Network `,-1)])]),default:L(()=>[l(A(U),{label:A(o)(`systemModule.systemInfo.networkInterface`)},{default:L(()=>[s(I(i.systemInfo?.defaultNetwork.interface),1)]),_:1},8,[`label`]),l(A(U),{label:A(o)(`systemModule.systemInfo.ip4Address`)},{default:L(()=>[s(I(i.systemInfo?.defaultNetwork.ip4),1)]),_:1},8,[`label`]),l(A(U),{label:A(o)(`systemModule.systemInfo.ip6Address`)},{default:L(()=>[s(I(i.systemInfo?.defaultNetwork.ip6),1)]),_:1},8,[`label`]),l(A(U),{label:A(o)(`systemModule.systemInfo.macAddress`)},{default:L(()=>[s(I(i.systemInfo?.defaultNetwork.mac),1)]),_:1},8,[`label`])]),_:1})]),_:1})]),_:1}),l(A(Y),{xs:24,sm:12,md:8},{default:L(()=>[l(A(q),{class:`md:m-2 xs:my-1`,"body-class":`p-0!`},{default:L(()=>[l(A(Ne),{"label-width":290,column:1,border:``},{title:L(()=>[n(`div`,ur,[l(A(a),{class:`mr-2`,size:`28`},{default:L(()=>[l(A(t),{icon:`mdi:alert`})]),_:1}),u[3]||=s(` Throttle status `,-1)])]),default:L(()=>[i.throttleStatus?(p(),e(R,{key:0},[l(A(U),{label:A(o)(`systemModule.systemInfo.undervoltage`)},{default:L(()=>[i.throttleStatus.undervoltage?(p(),d(A(H),{key:0,type:`danger`,size:`small`},{default:L(()=>[s(I(A(o)(`systemModule.states.error`)),1)]),_:1})):(p(),d(A(H),{key:1,type:`success`,size:`small`},{default:L(()=>[s(I(A(o)(`systemModule.states.ok`)),1)]),_:1}))]),_:1},8,[`label`]),l(A(U),{label:A(o)(`systemModule.systemInfo.frequencyCapping`)},{default:L(()=>[i.throttleStatus.frequencyCapping?(p(),d(A(H),{key:0,type:`danger`,size:`small`},{default:L(()=>[s(I(A(o)(`systemModule.states.error`)),1)]),_:1})):(p(),d(A(H),{key:1,type:`success`,size:`small`},{default:L(()=>[s(I(A(o)(`systemModule.states.ok`)),1)]),_:1}))]),_:1},8,[`label`]),l(A(U),{label:A(o)(`systemModule.systemInfo.throttling`)},{default:L(()=>[i.throttleStatus.throttling?(p(),d(A(H),{key:0,type:`danger`,size:`small`},{default:L(()=>[s(I(A(o)(`systemModule.states.error`)),1)]),_:1})):(p(),d(A(H),{key:1,type:`success`,size:`small`},{default:L(()=>[s(I(A(o)(`systemModule.states.ok`)),1)]),_:1}))]),_:1},8,[`label`]),l(A(U),{label:A(o)(`systemModule.systemInfo.softTempLimit`)},{default:L(()=>[i.throttleStatus.softTempLimit?(p(),d(A(H),{key:0,type:`danger`,size:`small`},{default:L(()=>[s(I(A(o)(`systemModule.states.error`)),1)]),_:1})):(p(),d(A(H),{key:1,type:`success`,size:`small`},{default:L(()=>[s(I(A(o)(`systemModule.states.ok`)),1)]),_:1}))]),_:1},8,[`label`])],64)):(p(),e(R,{key:1},[l(A(U),{label:A(o)(`systemModule.systemInfo.undervoltage`)},{default:L(()=>[s(I(A(o)(`application.value.notAvailable`)),1)]),_:1},8,[`label`]),l(A(U),{label:A(o)(`systemModule.systemInfo.frequencyCapping`)},{default:L(()=>[s(I(A(o)(`application.value.notAvailable`)),1)]),_:1},8,[`label`]),l(A(U),{label:A(o)(`systemModule.systemInfo.throttling`)},{default:L(()=>[s(I(A(o)(`application.value.notAvailable`)),1)]),_:1},8,[`label`]),l(A(U),{label:A(o)(`systemModule.systemInfo.softTempLimit`)},{default:L(()=>[s(I(A(o)(`application.value.notAvailable`)),1)]),_:1},8,[`label`])],64))]),_:1})]),_:1})]),_:1})]),_:1}))}}),fr={class:`flex w-full`},pr={class:`flex-grow overflow-hidden`},mr={class:`min-h-[100px] overflow-auto`},hr={key:0,class:`h-full w-full leading-normal`},gr={key:1,class:`h-full w-full leading-normal`},_r={class:`block`},vr={class:`mt-3`},yr=f({name:`SystemBackups`,__name:`system-backups`,setup(r,{expose:o}){let{t:c}=g(),f=De(),{backups:m,loading:_,creating:v,fetchBackups:y,createBackup:x,deleteBackup:C,restoreBackup:w,downloadBackup:T,uploadBackup:D}=Qt(),O=h(!1),k=h(!1),ee=h(null),N=h(null),P=h(null),F=h(null),ne=h(``),re=i(()=>{let e=ne.value.trim().toLowerCase();return e===``?m.value:m.value.filter(t=>(t.name??``).toLowerCase().includes(e)||t.id.toLowerCase().includes(e)||t.version.toLowerCase().includes(e))}),ie=h(void 0),ae=S({name:``}),oe=e=>new Intl.DateTimeFormat(void 0,{dateStyle:`medium`,timeStyle:`short`}).format(new Date(e)),ce=e=>e<1024?`${e} B`:e<1024*1024?`${(e/1024).toFixed(1)} KB`:`${(e/(1024*1024)).toFixed(1)} MB`,le=()=>{ae.name=``,ie.value?.resetFields()},ue=()=>{le()},de=async()=>{try{let e=ae.name.trim();await x(e.length>0?e:void 0)?(O.value=!1,le(),f.success(c(`systemModule.backups.messages.created`))):f.error(c(`systemModule.backups.messages.createError`))}catch{f.error(c(`systemModule.backups.messages.createError`))}},fe=e=>{Ce.confirm(c(`systemModule.backups.deleteDialog.message`,{name:e.name||e.id}),c(`systemModule.backups.deleteDialog.title`),{confirmButtonText:c(`systemModule.buttons.yes.title`),cancelButtonText:c(`systemModule.buttons.cancel.title`),type:`warning`,confirmButtonClass:`el-button--danger`}).then(async()=>{ee.value=e.id;try{await C(e.id)?f.success(c(`systemModule.backups.messages.deleted`)):f.error(c(`systemModule.backups.messages.deleteError`))}catch{f.error(c(`systemModule.backups.messages.deleteError`))}finally{ee.value=null}}).catch(()=>{})},pe=e=>{F.value=e,k.value=!0},B=async()=>{if(F.value){N.value=F.value.id;try{await w(F.value.id)?(k.value=!1,F.value=null,f.success(c(`systemModule.backups.messages.restored`))):f.error(c(`systemModule.backups.messages.restoreError`))}catch{f.error(c(`systemModule.backups.messages.restoreError`))}finally{N.value=null}}},me=async e=>{P.value=e.id;try{await T(e)}catch{f.error(c(`systemModule.backups.messages.downloadError`))}finally{P.value=null}};return o({openCreateDialog:()=>{O.value=!0},onUploadBackup:async e=>{try{await D(e.file)?f.success(c(`systemModule.backups.messages.uploaded`)):f.error(c(`systemModule.backups.messages.uploadError`))}catch{f.error(c(`systemModule.backups.messages.uploadError`))}}}),b(async()=>{await y()}),(r,i)=>(p(),e(R,null,[l(A(q),{shadow:`never`,class:`px-1 py-2 shrink-0`,"body-class":`p-0!`},{default:L(()=>[n(`div`,fr,[l(A(be),{modelValue:ne.value,"onUpdate:modelValue":i[0]||=e=>ne.value=e,placeholder:A(c)(`systemModule.backups.search.placeholder`),class:`max-w[280px] p-1`,clearable:``},{suffix:L(()=>[l(A(a),null,{default:L(()=>[l(A(t),{icon:`mdi:magnify`})]),_:1})]),_:1},8,[`modelValue`,`placeholder`])])]),_:1}),n(`div`,pr,[l(A(q),{shadow:`never`,class:`max-h-full flex flex-col overflow-hidden box-border`,"body-class":`p-0! max-h-full overflow-hidden flex flex-col`},{default:L(()=>[E((p(),e(`div`,mr,[l(A(Fe),{data:re.value,class:`w-full`,"table-layout":`fixed`},{empty:L(()=>[A(_)?(p(),e(`div`,hr,[l(A(u),{class:`h-full w-full`},{icon:L(()=>[l(A(te),{size:80},{primary:L(()=>[l(A(t),{icon:`mdi:backup-restore`})]),secondary:L(()=>[l(A(t),{icon:`mdi:database-refresh`})]),_:1})]),_:1})])):(p(),e(`div`,gr,[l(A(u),{class:`h-full w-full`},{icon:L(()=>[l(A(te),{size:80},{primary:L(()=>[l(A(t),{icon:`mdi:backup-restore`})]),secondary:L(()=>[l(A(t),{icon:`mdi:information`})]),_:1})]),title:L(()=>[s(I(A(m).length===0?A(c)(`systemModule.backups.noBackups`):A(c)(`systemModule.backups.noMatches`)),1)]),_:1})]))]),default:L(()=>[l(A(Pe),{label:A(c)(`systemModule.backups.columns.name`),prop:`name`,"min-width":`150`},{default:L(({row:e})=>[n(`div`,null,[n(`strong`,_r,I(e.name||e.id),1),e.contributions&&e.contributions.length?(p(),d(A(z),{key:0,size:`small`,type:`info`,class:`block leading-4`,truncated:``},{default:L(()=>[s(I(e.contributions.length)+` `+I(A(c)(`systemModule.backups.contributions`)),1)]),_:2},1024)):M(``,!0)])]),_:1},8,[`label`]),l(A(Pe),{label:A(c)(`systemModule.backups.columns.version`),prop:`version`,width:`120`},null,8,[`label`]),l(A(Pe),{label:A(c)(`systemModule.backups.columns.created`),prop:`created_at`,width:`180`},{default:L(({row:e})=>[s(I(oe(e.created_at)),1)]),_:1},8,[`label`]),l(A(Pe),{label:A(c)(`systemModule.backups.columns.size`),prop:`size_bytes`,width:`120`},{default:L(({row:e})=>[s(I(ce(e.size_bytes)),1)]),_:1},8,[`label`]),l(A(Pe),{label:A(c)(`systemModule.backups.columns.actions`),width:`240`,align:`right`},{default:L(({row:e})=>[n(`div`,{onClick:i[1]||=se(()=>{},[`stop`])},[l(A(j),{size:`small`,plain:``,loading:P.value===e.id,onClick:t=>me(e)},{icon:L(()=>[l(A(t),{icon:`mdi:download`})]),_:1},8,[`loading`,`onClick`]),l(A(j),{size:`small`,type:`warning`,plain:``,loading:N.value===e.id,onClick:t=>pe(e)},{icon:L(()=>[l(A(t),{icon:`mdi:backup-restore`})]),_:1},8,[`loading`,`onClick`]),l(A(j),{size:`small`,type:`danger`,plain:``,loading:ee.value===e.id,onClick:t=>fe(e)},{icon:L(()=>[l(A(t),{icon:`mdi:delete`})]),_:1},8,[`loading`,`onClick`])])]),_:1},8,[`label`])]),_:1},8,[`data`])])),[[A(qe),A(_)]])]),_:1})]),l(A(Ue),{modelValue:O.value,"onUpdate:modelValue":i[4]||=e=>O.value=e,title:A(c)(`systemModule.backups.createDialog.title`),class:`max-w-[500px]`,onClose:ue},{footer:L(()=>[l(A(j),{onClick:i[3]||=e=>O.value=!1},{default:L(()=>[s(I(A(c)(`systemModule.buttons.cancel.title`)),1)]),_:1}),l(A(j),{type:`primary`,loading:A(v),onClick:de},{default:L(()=>[s(I(A(c)(`systemModule.backups.createDialog.submit`)),1)]),_:1},8,[`loading`])]),default:L(()=>[l(A(Ie),{ref_key:`createFormEl`,ref:ie,model:ae,"label-position":`top`},{default:L(()=>[l(A(W),{label:A(c)(`systemModule.backups.createDialog.name`),prop:`name`},{default:L(()=>[l(A(be),{modelValue:ae.name,"onUpdate:modelValue":i[2]||=e=>ae.name=e,placeholder:A(c)(`systemModule.backups.createDialog.namePlaceholder`)},null,8,[`modelValue`,`placeholder`])]),_:1},8,[`label`])]),_:1},8,[`model`])]),_:1},8,[`modelValue`,`title`]),l(A(Ue),{modelValue:k.value,"onUpdate:modelValue":i[6]||=e=>k.value=e,title:A(c)(`systemModule.backups.restoreDialog.title`),class:`max-w-[500px]`},{footer:L(()=>[l(A(j),{onClick:i[5]||=e=>k.value=!1},{default:L(()=>[s(I(A(c)(`systemModule.buttons.cancel.title`)),1)]),_:1}),l(A(j),{type:`danger`,loading:N.value!==null,onClick:B},{default:L(()=>[s(I(A(c)(`systemModule.backups.restoreDialog.confirm`)),1)]),_:1},8,[`loading`])]),default:L(()=>[l(A(Le),{title:A(c)(`systemModule.backups.restoreDialog.warning`),type:`warning`,closable:!1,"show-icon":``},null,8,[`title`]),n(`p`,vr,I(A(c)(`systemModule.backups.restoreDialog.message`,{name:F.value?.name||F.value?.id})),1)]),_:1},8,[`modelValue`,`title`])],64))}}),br=f({name:`SystemConfigForm`,__name:`system-config-form`,props:{config:{},remoteFormSubmit:{type:Boolean},remoteFormResult:{default:Qe.NONE},remoteFormReset:{type:Boolean,default:!1},remoteFormChanged:{type:Boolean,default:!1},layout:{default:Ze.DEFAULT}},emits:[`update:remote-form-submit`,`update:remote-form-result`,`update:remote-form-reset`,`update:remote-form-changed`],setup(t,{emit:n}){let r=t,i=n,{t:a}=g(),{formEl:o,model:s,formChanged:c,submit:u,formResult:f}=Je({config:r.config,messages:{success:a(`systemModule.messages.config.edited`),error:a(`systemModule.messages.config.notEdited`)}}),m=[{label:`Africa`,zones:[`Africa/Cairo`,`Africa/Johannesburg`]},{label:`Americas`,zones:[`America/Anchorage`,`America/Chicago`,`America/Denver`,`America/Halifax`,`America/Los_Angeles`,`America/Mexico_City`,`America/New_York`,`America/Phoenix`,`America/St_Johns`,`America/Toronto`,`America/Vancouver`]},{label:`Asia`,zones:[`Asia/Dubai`,`Asia/Kolkata`,`Asia/Tokyo`]},{label:`Australia`,zones:[`Australia/Sydney`]},{label:`Europe`,zones:`Europe/Amsterdam.Europe/Athens.Europe/Belgrade.Europe/Berlin.Europe/Bratislava.Europe/Brussels.Europe/Bucharest.Europe/Budapest.Europe/Copenhagen.Europe/Dublin.Europe/Helsinki.Europe/Istanbul.Europe/Kyiv.Europe/Lisbon.Europe/London.Europe/Madrid.Europe/Moscow.Europe/Oslo.Europe/Paris.Europe/Prague.Europe/Rome.Europe/Stockholm.Europe/Vienna.Europe/Vilnius.Europe/Warsaw.Europe/Zurich`.split(`.`)},{label:`Pacific`,zones:[`Pacific/Honolulu`]}],h=[{value:`silent`,label:a(`systemModule.fields.config.logLevels.values.silent`)},{value:`verbose`,label:a(`systemModule.fields.config.logLevels.values.verbose`)},{value:`debug`,label:a(`systemModule.fields.config.logLevels.values.debug`)},{value:`trace`,label:a(`systemModule.fields.config.logLevels.values.trace`)},{value:`log`,label:a(`systemModule.fields.config.logLevels.values.log`)},{value:`info`,label:a(`systemModule.fields.config.logLevels.values.info`)},{value:`success`,label:a(`systemModule.fields.config.logLevels.values.success`)},{value:`warn`,label:a(`systemModule.fields.config.logLevels.values.warn`)},{value:`error`,label:a(`systemModule.fields.config.logLevels.values.error`)},{value:`fail`,label:a(`systemModule.fields.config.logLevels.values.fail`)},{value:`fatal`,label:a(`systemModule.fields.config.logLevels.values.fatal`)}],_=S({language:[{required:!0,message:a(`systemModule.fields.config.language.validation.required`),trigger:`change`}],timezone:[{required:!0,message:a(`systemModule.fields.config.timezone.validation.required`),trigger:`change`}],timeFormat:[{required:!0,message:a(`systemModule.fields.config.timeFormat.validation.required`),trigger:`change`}],numberFormat:[{required:!0,message:a(`systemModule.fields.config.numberFormat.validation.required`),trigger:`change`}],temperatureUnit:[{required:!0,message:a(`systemModule.fields.config.temperatureUnit.validation.required`),trigger:`change`}],windSpeedUnit:[{required:!0,message:a(`systemModule.fields.config.windSpeedUnit.validation.required`),trigger:`change`}],pressureUnit:[{required:!0,message:a(`systemModule.fields.config.pressureUnit.validation.required`),trigger:`change`}],precipitationUnit:[{required:!0,message:a(`systemModule.fields.config.precipitationUnit.validation.required`),trigger:`change`}],distanceUnit:[{required:!0,message:a(`systemModule.fields.config.distanceUnit.validation.required`),trigger:`change`}],logLevels:[{required:!0,message:a(`systemModule.fields.config.logLevels.validation.required`),trigger:`change`},{type:`array`,min:1,message:a(`systemModule.fields.config.logLevels.validation.min`),trigger:`change`}]});return w(()=>f.value,async e=>{i(`update:remote-form-result`,e)}),w(()=>r.remoteFormSubmit,async e=>{e&&(i(`update:remote-form-submit`,!1),u().catch(()=>{}))}),w(()=>r.remoteFormReset,e=>{if(i(`update:remote-form-reset`,!1),e){if(!o.value)return;o.value.resetFields()}}),w(()=>c.value,e=>{i(`update:remote-form-changed`,e)}),(t,n)=>(p(),d(A(Ie),{ref_key:`formEl`,ref:o,model:A(s),rules:_,"label-position":`top`,"status-icon":``},{default:L(()=>[l(A(Le),{type:`info`,title:A(a)(`systemModule.headings.aboutLanguageSettings`),description:A(a)(`systemModule.texts.aboutLanguageSettings`),closable:!1},null,8,[`title`,`description`]),l(A(W),{label:A(a)(`systemModule.fields.config.language.title`),prop:`language`,class:`mt-3`},{default:L(()=>[l(A(G),{modelValue:A(s).language,"onUpdate:modelValue":n[0]||=e=>A(s).language=e,placeholder:A(a)(`systemModule.fields.config.language.placeholder`),name:`language`},{default:L(()=>[l(A(K),{label:A(a)(`systemModule.fields.config.language.values.english`),value:`en_US`},null,8,[`label`]),l(A(K),{label:A(a)(`systemModule.fields.config.language.values.czech`),value:`cs_CZ`},null,8,[`label`]),l(A(K),{label:A(a)(`systemModule.fields.config.language.values.german`),value:`de_DE`},null,8,[`label`]),l(A(K),{label:A(a)(`systemModule.fields.config.language.values.spanish`),value:`es_ES`},null,8,[`label`]),l(A(K),{label:A(a)(`systemModule.fields.config.language.values.polish`),value:`pl_PL`},null,8,[`label`]),l(A(K),{label:A(a)(`systemModule.fields.config.language.values.slovak`),value:`sk_SK`},null,8,[`label`])]),_:1},8,[`modelValue`,`placeholder`])]),_:1},8,[`label`]),l(A(W),{label:A(a)(`systemModule.fields.config.timezone.title`),prop:`timezone`},{default:L(()=>[l(A(G),{modelValue:A(s).timezone,"onUpdate:modelValue":n[1]||=e=>A(s).timezone=e,placeholder:A(a)(`systemModule.fields.config.timezone.placeholder`),name:`timezone`,filterable:``},{default:L(()=>[(p(),e(R,null,D(m,t=>l(A(Re),{key:t.label,label:t.label},{default:L(()=>[(p(!0),e(R,null,D(t.zones,e=>(p(),d(A(K),{key:e,label:e.replace(/_/g,` `),value:e},null,8,[`label`,`value`]))),128))]),_:2},1032,[`label`])),64))]),_:1},8,[`modelValue`,`placeholder`])]),_:1},8,[`label`]),l(A(W),{label:A(a)(`systemModule.fields.config.timeFormat.title`),prop:`timeFormat`},{default:L(()=>[l(A(G),{modelValue:A(s).timeFormat,"onUpdate:modelValue":n[2]||=e=>A(s).timeFormat=e,placeholder:A(a)(`systemModule.fields.config.timeFormat.placeholder`),name:`timeFormat`},{default:L(()=>[l(A(K),{label:A(a)(`systemModule.fields.config.timeFormat.values.hour12`),value:`12h`},null,8,[`label`]),l(A(K),{label:A(a)(`systemModule.fields.config.timeFormat.values.hour24`),value:`24h`},null,8,[`label`])]),_:1},8,[`modelValue`,`placeholder`])]),_:1},8,[`label`]),l(A(W),{label:A(a)(`systemModule.fields.config.numberFormat.title`),prop:`numberFormat`},{default:L(()=>[l(A(G),{modelValue:A(s).numberFormat,"onUpdate:modelValue":n[3]||=e=>A(s).numberFormat=e,placeholder:A(a)(`systemModule.fields.config.numberFormat.placeholder`),name:`numberFormat`},{default:L(()=>[l(A(K),{label:A(a)(`systemModule.fields.config.numberFormat.values.commaDot`),value:`comma_dot`},null,8,[`label`]),l(A(K),{label:A(a)(`systemModule.fields.config.numberFormat.values.dotComma`),value:`dot_comma`},null,8,[`label`]),l(A(K),{label:A(a)(`systemModule.fields.config.numberFormat.values.spaceComma`),value:`space_comma`},null,8,[`label`]),l(A(K),{label:A(a)(`systemModule.fields.config.numberFormat.values.none`),value:`none`},null,8,[`label`])]),_:1},8,[`modelValue`,`placeholder`])]),_:1},8,[`label`]),l(A(W),{label:A(a)(`systemModule.fields.config.temperatureUnit.title`),prop:`temperatureUnit`},{default:L(()=>[l(A(G),{modelValue:A(s).temperatureUnit,"onUpdate:modelValue":n[4]||=e=>A(s).temperatureUnit=e,placeholder:A(a)(`systemModule.fields.config.temperatureUnit.placeholder`),name:`temperatureUnit`},{default:L(()=>[l(A(K),{label:A(a)(`systemModule.fields.config.temperatureUnit.values.celsius`),value:`celsius`},null,8,[`label`]),l(A(K),{label:A(a)(`systemModule.fields.config.temperatureUnit.values.fahrenheit`),value:`fahrenheit`},null,8,[`label`])]),_:1},8,[`modelValue`,`placeholder`])]),_:1},8,[`label`]),l(A(W),{label:A(a)(`systemModule.fields.config.windSpeedUnit.title`),prop:`windSpeedUnit`},{default:L(()=>[l(A(G),{modelValue:A(s).windSpeedUnit,"onUpdate:modelValue":n[5]||=e=>A(s).windSpeedUnit=e,placeholder:A(a)(`systemModule.fields.config.windSpeedUnit.placeholder`),name:`windSpeedUnit`},{default:L(()=>[l(A(K),{label:A(a)(`systemModule.fields.config.windSpeedUnit.values.ms`),value:`ms`},null,8,[`label`]),l(A(K),{label:A(a)(`systemModule.fields.config.windSpeedUnit.values.kmh`),value:`kmh`},null,8,[`label`]),l(A(K),{label:A(a)(`systemModule.fields.config.windSpeedUnit.values.mph`),value:`mph`},null,8,[`label`]),l(A(K),{label:A(a)(`systemModule.fields.config.windSpeedUnit.values.knots`),value:`knots`},null,8,[`label`])]),_:1},8,[`modelValue`,`placeholder`])]),_:1},8,[`label`]),l(A(W),{label:A(a)(`systemModule.fields.config.pressureUnit.title`),prop:`pressureUnit`},{default:L(()=>[l(A(G),{modelValue:A(s).pressureUnit,"onUpdate:modelValue":n[6]||=e=>A(s).pressureUnit=e,placeholder:A(a)(`systemModule.fields.config.pressureUnit.placeholder`),name:`pressureUnit`},{default:L(()=>[l(A(K),{label:A(a)(`systemModule.fields.config.pressureUnit.values.hpa`),value:`hpa`},null,8,[`label`]),l(A(K),{label:A(a)(`systemModule.fields.config.pressureUnit.values.mbar`),value:`mbar`},null,8,[`label`]),l(A(K),{label:A(a)(`systemModule.fields.config.pressureUnit.values.inhg`),value:`inhg`},null,8,[`label`]),l(A(K),{label:A(a)(`systemModule.fields.config.pressureUnit.values.mmhg`),value:`mmhg`},null,8,[`label`])]),_:1},8,[`modelValue`,`placeholder`])]),_:1},8,[`label`]),l(A(W),{label:A(a)(`systemModule.fields.config.precipitationUnit.title`),prop:`precipitationUnit`},{default:L(()=>[l(A(G),{modelValue:A(s).precipitationUnit,"onUpdate:modelValue":n[7]||=e=>A(s).precipitationUnit=e,placeholder:A(a)(`systemModule.fields.config.precipitationUnit.placeholder`),name:`precipitationUnit`},{default:L(()=>[l(A(K),{label:A(a)(`systemModule.fields.config.precipitationUnit.values.mm`),value:`mm`},null,8,[`label`]),l(A(K),{label:A(a)(`systemModule.fields.config.precipitationUnit.values.inches`),value:`inches`},null,8,[`label`])]),_:1},8,[`modelValue`,`placeholder`])]),_:1},8,[`label`]),l(A(W),{label:A(a)(`systemModule.fields.config.distanceUnit.title`),prop:`distanceUnit`},{default:L(()=>[l(A(G),{modelValue:A(s).distanceUnit,"onUpdate:modelValue":n[8]||=e=>A(s).distanceUnit=e,placeholder:A(a)(`systemModule.fields.config.distanceUnit.placeholder`),name:`distanceUnit`},{default:L(()=>[l(A(K),{label:A(a)(`systemModule.fields.config.distanceUnit.values.km`),value:`km`},null,8,[`label`]),l(A(K),{label:A(a)(`systemModule.fields.config.distanceUnit.values.miles`),value:`miles`},null,8,[`label`]),l(A(K),{label:A(a)(`systemModule.fields.config.distanceUnit.values.meters`),value:`meters`},null,8,[`label`]),l(A(K),{label:A(a)(`systemModule.fields.config.distanceUnit.values.feet`),value:`feet`},null,8,[`label`])]),_:1},8,[`modelValue`,`placeholder`])]),_:1},8,[`label`]),l(A(B)),l(A(W),{label:A(a)(`systemModule.labels.update.channel`),prop:`updateChannel`},{default:L(()=>[l(A(G),{modelValue:A(s).updateChannel,"onUpdate:modelValue":n[9]||=e=>A(s).updateChannel=e,placeholder:A(a)(`systemModule.fields.update.channel.placeholder`,`Select update channel`),name:`updateChannel`},{default:L(()=>[l(A(K),{label:A(a)(`systemModule.fields.update.channel.values.auto`),value:`auto`},null,8,[`label`]),l(A(K),{label:A(a)(`systemModule.fields.update.channel.values.stable`),value:`stable`},null,8,[`label`]),l(A(K),{label:A(a)(`systemModule.fields.update.channel.values.beta`),value:`beta`},null,8,[`label`]),l(A(K),{label:A(a)(`systemModule.fields.update.channel.values.alpha`),value:`alpha`},null,8,[`label`])]),_:1},8,[`modelValue`,`placeholder`])]),_:1},8,[`label`]),l(A(Le),{type:`info`,title:A(a)(`systemModule.headings.aboutSystemSettings`),description:A(a)(`systemModule.texts.aboutSystemSettings`),closable:!1},null,8,[`title`,`description`]),l(A(W),{label:A(a)(`systemModule.fields.config.logLevels.title`),prop:`logLevels`,class:`mt-3`},{default:L(()=>[l(A(G),{modelValue:A(s).logLevels,"onUpdate:modelValue":n[10]||=e=>A(s).logLevels=e,placeholder:A(a)(`systemModule.fields.config.logLevels.placeholder`),name:`logLevels`,multiple:``},{default:L(()=>[(p(),e(R,null,D(h,e=>l(A(K),{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`])),64))]),_:1},8,[`modelValue`,`placeholder`])]),_:1},8,[`label`])]),_:1},8,[`model`,`rules`]))}});export{Lt as _,gn as a,vt as b,ln as c,an as d,on as f,Kt as g,Yt as h,tr as i,cn as l,nn as m,yr as n,pn as o,en as p,dr as r,fn as s,br as t,sn as u,Pt as v,mt as x,jt as y};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import"./rolldown-runtime-QTnfLwEv.js";import{Ei as e,Er as t,Gr as n,Si as r,T as i,bi as a,ci as o,ki as s,n as c,yi as l}from"./icon-with-child-CgZMNB3F.js";import{In as u,_ as d,a as f,an as p,at as m,bt as h,er as g,f as _,gt as v,ht as y,in as b,it as x,jr as S,kn as C,l as w,la as T,m as E,nn as D,on as O,ot as k,p as A,pt as j,rn as M,s as N,st as P,x as F,yt as I}from"./common-D4Z2wgrj.js";import{r as L}from"./config-DAgVgX46.js";import{r as R}from"./usePlugins-CLZiBdYY.js";import{t as z}from"./schemas.utils-fK_cgNcT.js";import{t as B}from"./dist-DJgPCOr0.js";import{a as V,i as H,o as U,r as W,s as G}from"./keys-DMEIfK2a.js";import{a as K,i as ee,n as te}from"./devices.constants-DHQemX04.js";import{t as ne}from"./useDevicesPlugins-DEYJEOHX.js";import{s as re}from"./system.constants-BvSIFqdm.js";import{n as ie}from"./logs-entries.transformers-Bp2zoFAY.js";var q=_(),J=class extends Error{exception;constructor(e,t=null){super(e),this.name=`DevicesException`,this.exception=t}},Y=class extends J{code;constructor(e,t=null,n=null){super(e,n),this.name=`DevicesApiException`,this.code=t}},X=class extends J{constructor(e,t=null){super(e,t),this.name=`DevicesValidationException`}},ae=()=>{let e=R(),{enabled:n}=L(),r=[`channelPropertyAddForm`,`channelPropertyEditForm`],i=[`channelPropertySchema`,`channelPropertyAddFormSchema`,`channelPropertyEditFormSchema`,`channelPropertyCreateReqSchema`,`channelPropertyUpdateReqSchema`],a=t(()=>e.getPlugins().filter(e=>e.modules===void 0||e.modules.includes(`devices-module`)?(e.elements??[]).some(e=>{if(!(e.modules===void 0||e.modules.includes(`devices-module`)))return!1;let t=r.length===0||!!e.components&&r.some(t=>e.components&&t in e.components),n=i.length===0||!!e.schemas&&i.some(t=>e.schemas&&t in e.schemas);return t||n}):!1));return{plugins:a,options:t(()=>B(a.value.flatMap(e=>(e.elements??[]).filter(e=>e.modules===void 0||e.modules.includes(`devices-module`)).map(t=>({value:t.type,label:t.name?.trim()?t.name:e.name,disabled:!n(e.type)}))),[e=>e.label],[`asc`])),getByName:e=>a.value.find(t=>t.type===e),getByType:e=>a.value.find(t=>(t.elements??[]).some(t=>t.type===e&&(t.modules===void 0||t.modules.includes(`devices-module`)))),getElement:e=>{for(let t of a.value){let n=(t.elements??[]).find(t=>t.type===e&&(t.modules===void 0||t.modules.includes(`devices-module`)));if(n)return n}}}},oe=()=>{let e=R(),{enabled:n}=L(),r=[`channelAddForm`,`channelEditForm`],i=[`channelSchema`,`channelAddFormSchema`,`channelEditFormSchema`,`channelCreateReqSchema`,`channelUpdateReqSchema`],a=t(()=>e.getPlugins().filter(e=>e.modules===void 0||e.modules.includes(`devices-module`)?(e.elements??[]).some(e=>{if(!(e.modules===void 0||e.modules.includes(`devices-module`)))return!1;let t=r.length===0||!!e.components&&r.some(t=>e.components&&t in e.components),n=i.length===0||!!e.schemas&&i.some(t=>e.schemas&&t in e.schemas);return t||n}):!1));return{plugins:a,options:t(()=>B(a.value.flatMap(e=>(e.elements??[]).filter(e=>e.modules===void 0||e.modules.includes(`devices-module`)).map(t=>({value:t.type,label:t.name?.trim()?t.name:e.name,disabled:!n(e.type)}))),[e=>e.label],[`asc`])),getByName:e=>a.value.find(t=>t.type===e),getByType:e=>a.value.find(t=>(t.elements??[]).some(t=>t.type===e&&(t.modules===void 0||t.modules.includes(`devices-module`)))),getElement:e=>{for(let t of a.value){let n=(t.elements??[]).find(t=>t.type===e&&(t.modules===void 0||t.modules.includes(`devices-module`)));if(n)return n}}}},se=({id:e})=>{let n=F().getStore(H),{data:r,semaphore:i}=T(n);return{channel:t(()=>e===null?null:r.value[e]??null),isLoading:t(()=>i.value.fetching.item.includes(e)?!0:(r.value[e]??null)===null&&i.value.fetching.items.includes(`all`)),fetchChannel:async()=>{(r.value[e]??null)?.draft||await n.get({id:e})}}},ce=(e={})=>{let{deviceId:n}=e,r=F().getStore(H),{firstLoad:i,semaphore:a}=T(r),o=n===void 0?void 0:typeof n==`string`?t(()=>n):n;return{channels:t(()=>r.findAll().filter(e=>!o?.value||e.device===o.value)),areLoading:t(()=>a.value.fetching.items.includes(o?.value??`all`)?!0:!i.value.includes(o?.value??`all`)&&a.value.fetching.items.includes(o?.value??`all`)),loaded:t(()=>i.value.includes(o?.value??`all`)),fetchChannels:async()=>{await r.fetch({deviceId:o?.value})}}},le=v({search:I().optional(),types:k(I()),state:x([`all`,`offline`,`online`]).default(`all`),states:k(j(u)),categories:k(j(D)),enabled:x([`all`,`enabled`,`disabled`]).default(`all`),validation:x([`all`,`valid`,`invalid`]).default(`all`)}),ue=v({search:I().optional(),devices:k(I()),categories:k(j(M))}),de=v({search:I().optional(),channels:k(I()),categories:k(j(b)),permissions:k(j(O)),dataTypes:k(j(p))}),Z={search:void 0,devices:[],categories:[]},fe={by:`name`,dir:`asc`},pe=(e={})=>{let{deviceId:n}=e,i=F().getStore(H),{firstLoad:a,semaphore:s}=T(i),{filters:c,sort:l,pagination:u,reset:d}=N({key:`${te}:channels:list`,filters:{schema:ue,defaults:Z},sort:{defaults:[fe]},pagination:{defaults:{page:1,size:10}},syncQuery:!0,version:1}),f=t(()=>c.value.search!==Z.search||!(0,q.isEqual)(c.value.devices,Z.devices)||!(0,q.isEqual)(c.value.categories,Z.categories)),p=r(u.value.size||10),m=r(u.value.page||1),h=r(l.value.length>0?l.value[0]?.by:void 0),g=r(l.value.length>0?l.value[0]?.dir??null:null),_=t(()=>B(i.findAll().filter(e=>!n||e.device===n).filter(e=>!e.draft&&(!c.value.search||e.id.toLowerCase().includes(c.value.search.toLowerCase())||e.name.toLowerCase().includes(c.value.search.toLowerCase())||e.description?.toLowerCase().includes(c.value.search.toLowerCase())||e.identifier?.toLowerCase().includes(c.value.search.toLowerCase()))&&(c.value.categories.length===0||c.value.categories.includes(e.category))&&(c.value.devices.length===0||c.value.devices.includes(e.device))),[e=>e[h.value]??``],[g.value===`asc`?`asc`:`desc`])),v=t(()=>{let e=(m.value-1)*p.value,t=e+p.value;return _.value.slice(e,t)}),y=async()=>{await i.fetch({deviceId:n})},b=t(()=>s.value.fetching.items.includes(n??`all`)?!0:!a.value.includes(n??`all`)&&s.value.fetching.items.includes(n??`all`)),x=t(()=>a.value.includes(n??`all`)),S=t(()=>i.findAll().filter(e=>!n||e.device===n).filter(e=>!e.draft).length);return o(()=>u.value,e=>{m.value=e.page??1,p.value=e.size??10},{deep:!0}),o(()=>m.value,e=>{u.value.page=e}),o(()=>p.value,e=>{u.value.size=e}),o(()=>g.value,e=>{h.value===void 0||e===null?l.value=[]:l.value=[{by:h.value,dir:e}]}),o(()=>h.value,e=>{e===void 0?l.value=[]:l.value=[{by:e,dir:g.value}]}),{channels:_,channelsPaginated:v,totalRows:S,areLoading:b,loaded:x,fetchChannels:y,filters:c,filtersActive:f,paginateSize:p,paginatePage:m,sortBy:h,sortDir:g,resetFilter:d}},me=()=>{let{t:e}=i(),t=A(),n=F().getStore(H),r=e=>n.findById(e);return{remove:async i=>{let a=r(i);if(a===null)throw new J(`Something went wrong, channel can't be loaded`);S.confirm(e(`devicesModule.texts.channels.confirmRemove`,{channel:a.name}),e(`devicesModule.headings.channels.remove`),{confirmButtonText:e(`devicesModule.buttons.yes.title`),cancelButtonText:e(`devicesModule.buttons.no.title`),type:`warning`}).then(async()=>{try{await n.remove({id:a.id}),t.success(e(`devicesModule.messages.channels.removed`,{channel:a.name}))}catch(n){if(n instanceof Y&&n.code===404){let n=e(`devicesModule.messages.channels.notFound`,{channel:a.name});t.error(n)}else if(n instanceof Y&&n.code===422)t.error(n.message);else{let n=e(`devicesModule.messages.channels.notRemoved`,{channel:a.name});t.error(n)}}}).catch(()=>{t.info(e(`devicesModule.messages.channels.removeCanceled`,{channel:a.name}))})}}},he=({id:e})=>{let n=F().getStore(H);return{icon:t(()=>{switch(n.findById(e)?.category){case M.button:return`mdi:gesture-tap-button`;case M.binary_input:return`mdi:toggle-switch`;case M.analog_input:return`mdi:tune-vertical`;default:return`mdi:chip`}})}},ge={air_quality:{category:`air_quality`,constraints:{oneOrMoreOf:[[`aqi`,`level`]]},properties:{aqi:{category:`aqi`,required:!1,permissions:[`ro`],data_type:`ushort`,unit:null,format:[0,500]},level:{category:`level`,required:!1,permissions:[`ro`],data_type:`enum`,unit:null,format:[`excellent`,`good`,`fair`,`inferior`,`poor`,`unknown`]},active:{category:`active`,required:!1,permissions:[`ro`],data_type:`bool`,unit:null,format:null},fault:{category:`fault`,required:!1,permissions:[`ro`],data_type:`uchar`,unit:null,format:[0,255]}}},air_particulate:{category:`air_particulate`,constraints:{oneOrMoreOf:[[`detected`,`concentration`]]},properties:{detected:{category:`detected`,required:!1,permissions:[`ro`],data_type:`bool`,unit:null,format:null},concentration:{category:`concentration`,required:!1,permissions:[`ro`],data_type:`float`,unit:`µg/m³`,format:[0,1e3]},mode:{category:`mode`,required:!1,permissions:[`ro`],data_type:`enum`,unit:null,format:[`pm1`,`pm2_5`,`pm10`]},active:{category:`active`,required:!1,permissions:[`ro`],data_type:`bool`,unit:null,format:null},fault:{category:`fault`,required:!1,permissions:[`ro`],data_type:`uchar`,unit:null,format:[0,255]},tampered:{category:`tampered`,required:!1,permissions:[`ro`],data_type:`bool`,unit:null,format:null}}},carbon_dioxide:{category:`carbon_dioxide`,constraints:{oneOrMoreOf:[[`detected`,`concentration`]]},properties:{detected:{category:`detected`,required:!1,permissions:[`ro`],data_type:`bool`,unit:null,format:null},concentration:{category:`concentration`,required:!1,permissions:[`ro`],data_type:`float`,unit:`ppm`,format:[0,1e5]},peak_level:{category:`peak_level`,required:!1,permissions:[`ro`],data_type:`float`,unit:`ppm`,format:[0,1e5]},active:{category:`active`,required:!1,permissions:[`ro`],data_type:`bool`,unit:null,format:null},fault:{category:`fault`,required:!1,permissions:[`ro`],data_type:`uchar`,unit:null,format:[0,255]},tampered:{category:`tampered`,required:!1,permissions:[`ro`],data_type:`bool`,unit:null,format:null}}},carbon_monoxide:{category:`carbon_monoxide`,constraints:{oneOrMoreOf:[[`detected`,`concentration`]]},properties:{detected:{category:`detected`,required:!1,permissions:[`ro`],data_type:`bool`,unit:null,format:null},concentration:{category:`concentration`,required:!1,permissions:[`ro`],data_type:`float`,unit:`ppm`,format:[0,100]},peak_level:{category:`peak_level`,required:!1,permissions:[`ro`],data_type:`float`,unit:`ppm`,format:[0,100]},active:{category:`active`,required:!1,permissions:[`ro`],data_type:`bool`,unit:null,format:null},fault:{category:`fault`,required:!1,permissions:[`ro`],data_type:`uchar`,unit:null,format:[0,255]},tampered:{category:`tampered`,required:!1,permissions:[`ro`],data_type:`bool`,unit:null,format:null}}},flow:{category:`flow`,properties:{rate:{category:`rate`,required:!0,permissions:[`ro`],data_type:`float`,unit:`m³/h`,format:[0,65533]},active:{category:`active`,required:!1,permissions:[`ro`],data_type:`bool`,unit:null,format:null},fault:{category:`fault`,required:!1,permissions:[`ro`],data_type:`uchar`,unit:null,format:[0,255]}}},humidity:{category:`humidity`,properties:{humidity:{category:`humidity`,required:!0,permissions:[`ro`],data_type:`uchar`,unit:`%`,format:[0,100]},active:{category:`active`,required:!1,permissions:[`ro`],data_type:`bool`,unit:null,format:null},fault:{category:`fault`,required:!1,permissions:[`ro`],data_type:`uchar`,unit:null,format:[0,255]}}},illuminance:{category:`illuminance`,properties:{illuminance:{category:`illuminance`,required:!0,permissions:[`ro`],data_type:`float`,unit:`lx`,format:[0,1e5]},level:{category:`level`,required:!0,permissions:[`ro`],data_type:`enum`,unit:null,format:[`bright`,`moderate`,`dusky`,`dark`]},active:{category:`active`,required:!1,permissions:[`ro`],data_type:`bool`,unit:null,format:null},fault:{category:`fault`,required:!1,permissions:[`ro`],data_type:`uchar`,unit:null,format:[0,255]}}},nitrogen_dioxide:{category:`nitrogen_dioxide`,constraints:{oneOrMoreOf:[[`detected`,`concentration`]]},properties:{detected:{category:`detected`,required:!1,permissions:[`ro`],data_type:`bool`,unit:null,format:null},concentration:{category:`concentration`,required:!1,permissions:[`ro`],data_type:`float`,unit:`µg/m³`,format:[0,1e5]},mode:{category:`mode`,required:!1,permissions:[`ro`],data_type:`enum`,unit:null,format:[`annual`,`1_hour`]},active:{category:`active`,required:!1,permissions:[`ro`],data_type:`bool`,unit:null,format:null},fault:{category:`fault`,required:!1,permissions:[`ro`],data_type:`uchar`,unit:null,format:[0,255]},tampered:{category:`tampered`,required:!1,permissions:[`ro`],data_type:`bool`,unit:null,format:null}}},ozone:{category:`ozone`,constraints:{oneOrMoreOf:[[`detected`,`concentration`,`level`]],oneOf:[[`concentration`,`level`]]},properties:{detected:{category:`detected`,required:!1,permissions:[`ro`],data_type:`bool`,unit:null,format:null},concentration:{category:`concentration`,required:!1,permissions:[`ro`],data_type:`float`,unit:`µg/m³`,format:[0,1e5]},level:{category:`level`,required:!1,permissions:[`ro`],data_type:`enum`,unit:null,format:[`low`,`medium`,`high`]},active:{category:`active`,required:!1,permissions:[`ro`],data_type:`bool`,unit:null,format:null},fault:{category:`fault`,required:!1,permissions:[`ro`],data_type:`uchar`,unit:null,format:[0,255]},tampered:{category:`tampered`,required:!1,permissions:[`ro`],data_type:`bool`,unit:null,format:null}}},pressure:{category:`pressure`,properties:{pressure:{category:`pressure`,required:!0,permissions:[`ro`],data_type:`float`,unit:`kPa`,format:[0,32767]},active:{category:`active`,required:!1,permissions:[`ro`],data_type:`bool`,unit:null,format:null},fault:{category:`fault`,required:!1,permissions:[`ro`],data_type:`uchar`,unit:null,format:[0,255]}}},sulphur_dioxide:{category:`sulphur_dioxide`,properties:{detected:{category:`detected`,required:!0,permissions:[`ro`],data_type:`bool`,unit:null,format:null},concentration:{category:`concentration`,required:!0,permissions:[`ro`],data_type:`float`,unit:`µg/m³`,format:[0,1e5]},level:{category:`level`,required:!0,permissions:[`ro`],data_type:`enum`,unit:null,format:[`low`,`medium`,`high`]},active:{category:`active`,required:!1,permissions:[`ro`],data_type:`bool`,unit:null,format:null},fault:{category:`fault`,required:!1,permissions:[`ro`],data_type:`uchar`,unit:null,format:[0,255]},tampered:{category:`tampered`,required:!1,permissions:[`ro`],data_type:`bool`,unit:null,format:null}}},temperature:{category:`temperature`,properties:{temperature:{category:`temperature`,required:!0,permissions:[`ro`],data_type:`float`,unit:`°C`,format:[0,100]},active:{category:`active`,required:!1,permissions:[`ro`],data_type:`bool`,unit:null,format:null},fault:{category:`fault`,required:!1,permissions:[`ro`],data_type:`uchar`,unit:null,format:[0,255]}}},volatile_organic_compounds:{category:`volatile_organic_compounds`,constraints:{oneOrMoreOf:[[`detected`,`concentration`,`level`]],oneOf:[[`concentration`,`level`]]},properties:{detected:{category:`detected`,required:!1,permissions:[`ro`],data_type:`bool`,unit:null,format:null},concentration:{category:`concentration`,required:!1,permissions:[`ro`],data_type:`float`,unit:`µg/m³`,format:[0,1e3]},level:{category:`level`,required:!1,permissions:[`ro`],data_type:`enum`,unit:null,format:[`low`,`medium`,`high`]},active:{category:`active`,required:!1,permissions:[`ro`],data_type:`bool`,unit:null,format:null},fault:{category:`fault`,required:!1,permissions:[`ro`],data_type:`uchar`,unit:null,format:[0,255]},tampered:{category:`tampered`,required:!1,permissions:[`ro`],data_type:`bool`,unit:null,format:null}}},alarm:{category:`alarm`,properties:{state:{category:`state`,required:!0,permissions:[`rw`],data_type:`enum`,unit:null,format:[`disarmed`,`armed_home`,`armed_away`,`armed_night`]},alarm_state:{category:`alarm_state`,required:!1,permissions:[`ro`],data_type:`enum`,unit:null,format:[`idle`,`pending`,`triggered`,`silenced`]},triggered:{category:`triggered`,required:!1,permissions:[`ro`],data_type:`bool`,unit:null,format:null},siren:{category:`siren`,required:!1,permissions:[`rw`],data_type:`bool`,unit:null,format:null},active:{category:`active`,required:!1,permissions:[`ro`],data_type:`bool`,unit:null,format:null},fault:{category:`fault`,required:!1,permissions:[`ro`],data_type:`uchar`,unit:null,format:[0,255]},fault_description:{category:`fault_description`,required:!1,permissions:[`ro`],data_type:`string`,unit:null,format:null},tampered:{category:`tampered`,required:!1,permissions:[`ro`],data_type:`bool`,unit:null,format:null},last_event:{category:`last_event`,required:!1,permissions:[`ro`],data_type:`string`,unit:null,format:null}}},contact:{category:`contact`,properties:{detected:{category:`detected`,required:!0,permissions:[`ro`],data_type:`bool`,unit:null,format:null},active:{category:`active`,required:!1,permissions:[`ro`],data_type:`bool`,unit:null,format:null},fault:{category:`fault`,required:!1,permissions:[`ro`],data_type:`uchar`,unit:null,format:[0,255]},tampered:{category:`tampered`,required:!1,permissions:[`ro`],data_type:`bool`,unit:null,format:null}}},gas:{category:`gas`,properties:{detected:{category:`detected`,required:!0,permissions:[`ro`],data_type:`bool`,unit:null,format:null},status:{category:`status`,required:!0,permissions:[`ro`],data_type:`enum`,unit:null,format:[`normal`,`warning`,`alarm`]},concentration:{category:`concentration`,required:!1,permissions:[`ro`],data_type:`uint`,unit:`ppm`,format:[0,65535]},active:{category:`active`,required:!1,permissions:[`ro`],data_type:`bool`,unit:null,format:null},fault:{category:`fault`,required:!1,permissions:[`ro`],data_type:`uchar`,unit:null,format:[0,255]},tampered:{category:`tampered`,required:!1,permissions:[`ro`],data_type:`bool`,unit:null,format:null}}},leak:{category:`leak`,properties:{detected:{category:`detected`,required:!0,permissions:[`ro`],data_type:`bool`,unit:null,format:null},level:{category:`level`,required:!0,permissions:[`ro`],data_type:`enum`,unit:null,format:[`low`,`medium`,`high`]},active:{category:`active`,required:!1,permissions:[`ro`],data_type:`bool`,unit:null,format:null},fault:{category:`fault`,required:!1,permissions:[`ro`],data_type:`uchar`,unit:null,format:[0,255]},tampered:{category:`tampered`,required:!1,permissions:[`ro`],data_type:`bool`,unit:null,format:null}}},lock:{category:`lock`,properties:{on:{category:`on`,required:!0,permissions:[`rw`],data_type:`bool`,unit:null,format:null},status:{category:`status`,required:!0,permissions:[`rw`],data_type:`enum`,unit:null,format:[`locked`,`unlocked`]},active:{category:`active`,required:!1,permissions:[`ro`],data_type:`bool`,unit:null,format:null},fault:{category:`fault`,required:!1,permissions:[`ro`],data_type:`uchar`,unit:null,format:[0,255]},tampered:{category:`tampered`,required:!1,permissions:[`ro`],data_type:`bool`,unit:null,format:null}}},motion:{category:`motion`,properties:{detected:{category:`detected`,required:!0,permissions:[`ro`],data_type:`bool`,unit:null,format:null},distance:{category:`distance`,required:!1,permissions:[`ro`],data_type:`float`,unit:`m`,format:[0,100]},active:{category:`active`,required:!1,permissions:[`ro`],data_type:`bool`,unit:null,format:null},fault:{category:`fault`,required:!1,permissions:[`ro`],data_type:`uchar`,unit:null,format:[0,255]},tampered:{category:`tampered`,required:!1,permissions:[`ro`],data_type:`bool`,unit:null,format:null}}},occupancy:{category:`occupancy`,properties:{detected:{category:`detected`,required:!0,permissions:[`ro`],data_type:`bool`,unit:null,format:null},distance:{category:`distance`,required:!1,permissions:[`ro`],data_type:`float`,unit:`m`,format:[0,100]},active:{category:`active`,required:!1,permissions:[`ro`],data_type:`bool`,unit:null,format:null},fault:{category:`fault`,required:!1,permissions:[`ro`],data_type:`uchar`,unit:null,format:[0,255]},tampered:{category:`tampered`,required:!1,permissions:[`ro`],data_type:`bool`,unit:null,format:null}}},smoke:{category:`smoke`,properties:{detected:{category:`detected`,required:!0,permissions:[`ro`],data_type:`bool`,unit:null,format:null},active:{category:`active`,required:!1,permissions:[`ro`],data_type:`bool`,unit:null,format:null},fault:{category:`fault`,required:!1,permissions:[`ro`],data_type:`uchar`,unit:null,format:[0,255]},tampered:{category:`tampered`,required:!1,permissions:[`ro`],data_type:`bool`,unit:null,format:null}}},cooler:{category:`cooler`,properties:{on:{category:`on`,required:!0,permissions:[`rw`],data_type:`bool`,unit:null,format:null},temperature:{category:`temperature`,required:!0,permissions:[`rw`],data_type:`float`,unit:`°C`,format:[0,100]},status:{category:`status`,required:!1,permissions:[`ro`],data_type:`bool`,unit:null,format:null}}},dehumidifier:{category:`dehumidifier`,properties:{on:{category:`on`,required:!0,permissions:[`rw`],data_type:`bool`,unit:null,format:null},humidity:{category:`humidity`,required:!0,permissions:[`rw`],data_type:`uchar`,unit:`%`,format:[0,100]},mode:{category:`mode`,required:!1,permissions:[`rw`],data_type:`enum`,unit:null,format:[`auto`,`manual`,`continuous`,`laundry`,`quiet`]},status:{category:`status`,required:!1,permissions:[`ro`],data_type:`enum`,unit:null,format:[`idle`,`dehumidifying`,`defrosting`]},water_tank_full:{category:`water_tank_full`,required:!1,permissions:[`ro`],data_type:`bool`,unit:null,format:null},water_tank_level:{category:`water_tank_level`,required:!1,permissions:[`ro`],data_type:`uchar`,unit:`%`,format:[0,100]},defrost_active:{category:`defrost_active`,required:!1,permissions:[`ro`],data_type:`bool`,unit:null,format:null},timer:{category:`timer`,required:!1,permissions:[`rw`],data_types:[{id:`duration`,data_type:`ushort`,unit:`s`,format:[0,86400],step:60,description:{en:`Timer duration in seconds (0-86400)`}},{id:`preset`,data_type:`enum`,format:[`off`,`30m`,`1h`,`2h`,`4h`,`8h`,`12h`],description:{en:`Preset timer intervals`}}]},locked:{category:`locked`,required:!1,permissions:[`rw`],data_type:`bool`,unit:null,format:null},fault:{category:`fault`,required:!1,permissions:[`ro`],data_type:`uchar`,unit:null,format:[0,255]}}},door:{category:`door`,properties:{obstruction:{category:`obstruction`,required:!0,permissions:[`ro`],data_type:`bool`,unit:null,format:null},status:{category:`status`,required:!0,permissions:[`ro`],data_type:`enum`,unit:null,format:[`opened`,`closed`,`opening`,`closing`,`stopped`]},position:{category:`position`,required:!0,permissions:[`rw`],data_type:`enum`,unit:null,format:[`open`,`close`,`stop`]},type:{category:`type`,required:!0,permissions:[`ro`],data_type:`enum`,unit:null,format:[`door`,`garage`]},percentage:{category:`percentage`,required:!1,permissions:[`rw`],data_type:`uchar`,unit:null,format:[0,100]},fault:{category:`fault`,required:!1,permissions:[`ro`],data_type:`uchar`,unit:null,format:[0,255]}}},fan:{category:`fan`,properties:{on:{category:`on`,required:!0,permissions:[`rw`],data_type:`bool`,unit:null,format:null},swing:{category:`swing`,required:!1,permissions:[`rw`],data_type:`bool`,unit:null,format:null},speed:{category:`speed`,required:!1,permissions:[`rw`],data_types:[{id:`percentage`,data_type:`uchar`,unit:`%`,format:[0,100],step:1,description:{en:`Speed as percentage (0-100%)`}},{id:`level`,data_type:`enum`,format:[`off`,`low`,`medium`,`high`,`turbo`,`auto`],description:{en:`Speed as discrete levels`}}]},mode:{category:`mode`,required:!1,permissions:[`rw`],data_type:`enum`,unit:null,format:[`auto`,`manual`,`eco`,`sleep`,`natural`,`turbo`]},direction:{category:`direction`,required:!1,permissions:[`rw`],data_type:`enum`,unit:null,format:[`clockwise`,`counter_clockwise`]},natural_breeze:{category:`natural_breeze`,required:!1,permissions:[`rw`],data_type:`bool`,unit:null,format:null},timer:{category:`timer`,required:!1,permissions:[`rw`],data_types:[{id:`duration`,data_type:`ushort`,unit:`s`,format:[0,86400],step:60,description:{en:`Timer duration in seconds (0-86400)`}},{id:`preset`,data_type:`enum`,format:[`off`,`30m`,`1h`,`2h`,`4h`,`8h`,`12h`],description:{en:`Preset timer intervals`}}]},locked:{category:`locked`,required:!1,permissions:[`rw`],data_type:`bool`,unit:null,format:null}}},heater:{category:`heater`,properties:{on:{category:`on`,required:!0,permissions:[`rw`],data_type:`bool`,unit:null,format:null},temperature:{category:`temperature`,required:!0,permissions:[`rw`],data_type:`float`,unit:`°C`,format:[0,100]},status:{category:`status`,required:!1,permissions:[`ro`],data_type:`bool`,unit:null,format:null},position:{category:`position`,required:!1,permissions:[`rw`],data_types:[{id:`percentage`,data_type:`uchar`,unit:`%`,format:[0,100],step:1,description:{en:`Position as percentage (0-100%)`}},{id:`state`,data_type:`enum`,format:[`closed`,`quarter`,`half`,`three_quarter`,`open`],description:{en:`Position as discrete states`}}]}}},humidifier:{category:`humidifier`,properties:{on:{category:`on`,required:!0,permissions:[`rw`],data_type:`bool`,unit:null,format:null},humidity:{category:`humidity`,required:!0,permissions:[`rw`],data_type:`uchar`,unit:`%`,format:[0,100]},mode:{category:`mode`,required:!1,permissions:[`rw`],data_type:`enum`,unit:null,format:[`auto`,`manual`,`sleep`,`baby`]},status:{category:`status`,required:!1,permissions:[`ro`],data_type:`enum`,unit:null,format:[`idle`,`humidifying`]},mist_level:{category:`mist_level`,required:!1,permissions:[`rw`],data_types:[{id:`percentage`,data_type:`uchar`,unit:`%`,format:[0,100],step:1,description:{en:`Mist level as percentage (0-100%)`}},{id:`level`,data_type:`enum`,format:[`off`,`low`,`medium`,`high`],description:{en:`Mist level as discrete levels`}}]},warm_mist:{category:`warm_mist`,required:!1,permissions:[`rw`],data_type:`bool`,unit:null,format:null},water_tank_empty:{category:`water_tank_empty`,required:!1,permissions:[`ro`],data_type:`bool`,unit:null,format:null},water_tank_level:{category:`water_tank_level`,required:!1,permissions:[`ro`],data_type:`uchar`,unit:`%`,format:[0,100]},timer:{category:`timer`,required:!1,permissions:[`rw`],data_types:[{id:`duration`,data_type:`ushort`,unit:`s`,format:[0,86400],step:60,description:{en:`Timer duration in seconds (0-86400)`}},{id:`preset`,data_type:`enum`,format:[`off`,`30m`,`1h`,`2h`,`4h`,`8h`,`12h`],description:{en:`Preset timer intervals`}}]},locked:{category:`locked`,required:!1,permissions:[`rw`],data_type:`bool`,unit:null,format:null},fault:{category:`fault`,required:!1,permissions:[`ro`],data_type:`uchar`,unit:null,format:[0,255]}}},light:{category:`light`,constraints:{mutuallyExclusiveGroups:[[[`color_red`,`color_green`,`color_blue`],[`hue`,`saturation`]]]},properties:{on:{category:`on`,required:!0,permissions:[`rw`],data_type:`bool`,unit:null,format:null},brightness:{category:`brightness`,required:!1,permissions:[`rw`],data_types:[{id:`percentage`,data_type:`uchar`,unit:`%`,format:[0,100],step:1,description:{en:`Brightness as percentage (0-100%)`}},{id:`level`,data_type:`enum`,format:[`off`,`low`,`medium`,`high`,`full`],description:{en:`Brightness as discrete levels`}}]},color_red:{category:`color_red`,required:!1,permissions:[`rw`],data_type:`uchar`,unit:null,format:[0,255]},color_green:{category:`color_green`,required:!1,permissions:[`rw`],data_type:`uchar`,unit:null,format:[0,255]},color_blue:{category:`color_blue`,required:!1,permissions:[`rw`],data_type:`uchar`,unit:null,format:[0,255]},color_white:{category:`color_white`,required:!1,permissions:[`rw`],data_type:`uchar`,unit:null,format:[0,255]},color_temperature:{category:`color_temperature`,required:!1,permissions:[`rw`],data_type:`ushort`,unit:`K`,format:[2e3,1e4]},hue:{category:`hue`,required:!1,permissions:[`rw`],data_type:`ushort`,unit:`deg`,format:[0,360]},saturation:{category:`saturation`,required:!1,permissions:[`rw`],data_type:`uchar`,unit:`%`,format:[0,100]}}},outlet:{category:`outlet`,properties:{on:{category:`on`,required:!0,permissions:[`rw`],data_type:`bool`,unit:null,format:null},in_use:{category:`in_use`,required:!1,permissions:[`ro`],data_type:`bool`,unit:null,format:null}}},robot_vacuum:{category:`robot_vacuum`,properties:{on:{category:`on`,required:!0,permissions:[`rw`],data_type:`bool`,unit:null,format:null},status:{category:`status`,required:!0,permissions:[`ro`],data_type:`enum`,unit:null,format:[`idle`,`cleaning`,`vacuuming`,`mopping`,`docking`,`charging`]},mode:{category:`mode`,required:!1,permissions:[`rw`],data_type:`enum`,unit:null,format:[`auto`,`spot`,`manual`]},fault:{category:`fault`,required:!1,permissions:[`ro`],data_type:`uchar`,unit:null,format:[0,255]}}},switcher:{category:`switcher`,properties:{on:{category:`on`,required:!0,permissions:[`rw`],data_type:`bool`,unit:null,format:null},child_lock:{category:`child_lock`,required:!1,permissions:[`rw`],data_type:`bool`,unit:null,format:null},timer:{category:`timer`,required:!1,permissions:[`rw`],data_types:[{id:`duration`,data_type:`ushort`,unit:`s`,format:[0,86400],step:60,description:{en:`Timer duration in seconds (0-86400)`}},{id:`preset`,data_type:`enum`,format:[`off`,`30m`,`1h`,`2h`,`4h`,`8h`,`12h`],description:{en:`Preset timer intervals`}}]}}},thermostat:{category:`thermostat`,properties:{locked:{category:`locked`,required:!1,permissions:[`rw`],data_type:`bool`,unit:null,format:null}}},valve:{category:`valve`,properties:{on:{category:`on`,required:!0,permissions:[`rw`],data_type:`bool`,unit:null,format:null},type:{category:`type`,required:!0,permissions:[`rw`],data_type:`enum`,unit:null,format:[`generic`,`irrigation`,`shower_head`,`water_faucet`]},duration:{category:`duration`,required:!1,permissions:[`rw`],data_type:`ushort`,unit:`s`,format:[0,3600]},remaining:{category:`remaining`,required:!1,permissions:[`ro`],data_type:`ushort`,unit:`s`,format:[0,3600]},mode:{category:`mode`,required:!1,permissions:[`ro`],data_type:`enum`,unit:null,format:[`manual`,`scheduled`]},position:{category:`position`,required:!1,permissions:[`rw`],data_types:[{id:`percentage`,data_type:`uchar`,unit:`%`,format:[0,100],step:1,description:{en:`Position as percentage (0-100%)`}},{id:`state`,data_type:`enum`,format:[`closed`,`quarter`,`half`,`three_quarter`,`open`],description:{en:`Position as discrete states`}}]},fault:{category:`fault`,required:!1,permissions:[`ro`],data_type:`uchar`,unit:null,format:[0,255]}}},window_covering:{category:`window_covering`,properties:{status:{category:`status`,required:!0,permissions:[`ro`],data_type:`enum`,unit:null,format:[`opened`,`closed`,`opening`,`closing`,`stopped`]},position:{category:`position`,required:!0,permissions:[`rw`],data_types:[{id:`percentage`,data_type:`uchar`,unit:`%`,format:[0,100],step:1,description:{en:`Position as percentage (0-100%)`}},{id:`state`,data_type:`enum`,format:[`closed`,`quarter`,`half`,`three_quarter`,`open`],description:{en:`Position as discrete states`}}]},type:{category:`type`,required:!0,permissions:[`ro`],data_type:`enum`,unit:null,format:[`curtain`,`roller`,`blind`,`venetian_blind`,`vertical_blind`,`shutter`,`outdoor_blind`,`awning`]},command:{category:`command`,required:!0,permissions:[`wo`],data_type:`enum`,unit:null,format:[`open`,`close`,`stop`]},obstruction:{category:`obstruction`,required:!1,permissions:[`ro`],data_type:`bool`,unit:null,format:null},tilt:{category:`tilt`,required:!1,permissions:[`rw`],data_type:`float`,unit:`°`,format:[-90,90]},fault:{category:`fault`,required:!1,permissions:[`ro`],data_type:`uchar`,unit:null,format:[0,255]}}},battery:{category:`battery`,properties:{percentage:{category:`percentage`,required:!0,permissions:[`ro`],data_types:[{id:`percentage`,data_type:`uchar`,unit:`%`,format:[0,100],step:1,description:{en:`Battery as percentage (0-100%)`}},{id:`level`,data_type:`enum`,format:[`critical`,`low`,`medium`,`high`,`full`],description:{en:`Battery as discrete levels`}}]},status:{category:`status`,required:!0,permissions:[`ro`],data_type:`enum`,unit:null,format:[`ok`,`low`,`charging`]},fault:{category:`fault`,required:!1,permissions:[`ro`],data_type:`uchar`,unit:null,format:[0,255]}}},electrical_energy:{category:`electrical_energy`,properties:{consumption:{category:`consumption`,required:!0,permissions:[`ro`],data_type:`float`,unit:`kWh`,format:[0,null],measurement_kind:`cumulative`,reset_behavior:`unknown`},average_power:{category:`average_power`,required:!1,permissions:[`ro`],data_type:`float`,unit:`W`,format:[0,1e5],measurement_kind:`interval_average`},grid_import:{category:`grid_import`,required:!1,permissions:[`ro`],data_type:`float`,unit:`kWh`,format:[0,null],measurement_kind:`cumulative`,reset_behavior:`unknown`},grid_export:{category:`grid_export`,required:!1,permissions:[`ro`],data_type:`float`,unit:`kWh`,format:[0,null],measurement_kind:`cumulative`,reset_behavior:`unknown`},active:{category:`active`,required:!1,permissions:[`ro`],data_type:`bool`,unit:null,format:null},fault:{category:`fault`,required:!1,permissions:[`ro`],data_type:`uchar`,unit:null,format:[0,255]}}},electrical_generation:{category:`electrical_generation`,properties:{production:{category:`production`,required:!0,permissions:[`ro`],data_type:`float`,unit:`kWh`,format:[0,null],measurement_kind:`cumulative`,reset_behavior:`unknown`},power:{category:`power`,required:!1,permissions:[`ro`],data_type:`float`,unit:`W`,format:[0,1e5],measurement_kind:`instantaneous`},active:{category:`active`,required:!1,permissions:[`ro`],data_type:`bool`,unit:null,format:null},fault:{category:`fault`,required:!1,permissions:[`ro`],data_type:`uchar`,unit:null,format:[0,255]}}},electrical_power:{category:`electrical_power`,properties:{power:{category:`power`,required:!0,permissions:[`ro`],data_type:`float`,unit:`W`,format:[0,1e4],measurement_kind:`instantaneous`},voltage:{category:`voltage`,required:!1,permissions:[`ro`],data_type:`float`,unit:`V`,format:[0,500],measurement_kind:`instantaneous`},current:{category:`current`,required:!1,permissions:[`ro`],data_type:`float`,unit:`A`,format:[0,100],measurement_kind:`instantaneous`},frequency:{category:`frequency`,required:!1,permissions:[`ro`],data_type:`float`,unit:`Hz`,format:[40,70],measurement_kind:`instantaneous`},over_current:{category:`over_current`,required:!1,permissions:[`ro`],data_type:`bool`,unit:null,format:null},over_voltage:{category:`over_voltage`,required:!1,permissions:[`ro`],data_type:`bool`,unit:null,format:null},over_power:{category:`over_power`,required:!1,permissions:[`ro`],data_type:`bool`,unit:null,format:null},active:{category:`active`,required:!1,permissions:[`ro`],data_type:`bool`,unit:null,format:null},fault:{category:`fault`,required:!1,permissions:[`ro`],data_type:`uchar`,unit:null,format:[0,255]}}},camera:{category:`camera`,properties:{status:{category:`status`,required:!0,permissions:[`ro`],data_type:`enum`,unit:null,format:[`available`,`in_use`,`unavailable`,`offline`,`initializing`,`error`]},source:{category:`source`,required:!0,permissions:[`ro`],data_type:`string`,unit:null,format:null},zoom:{category:`zoom`,required:!1,permissions:[`rw`],data_type:`float`,unit:null,format:[1,10]},pan:{category:`pan`,required:!1,permissions:[`rw`],data_type:`float`,unit:`°`,format:[-180,180]},tilt:{category:`tilt`,required:!1,permissions:[`rw`],data_type:`float`,unit:`°`,format:[-90,90]},infrared:{category:`infrared`,required:!1,permissions:[`rw`],data_type:`bool`,unit:null,format:null},fault:{category:`fault`,required:!1,permissions:[`ro`],data_type:`uchar`,unit:null,format:[0,255]}}},doorbell:{category:`doorbell`,properties:{event:{category:`event`,required:!0,permissions:[`ro`],data_type:`enum`,unit:null,format:[`single_press`,`double_press`,`long_press`]},brightness:{category:`brightness`,required:!1,permissions:[`rw`],data_types:[{id:`percentage`,data_type:`uchar`,unit:`%`,format:[0,100],step:1,description:{en:`Brightness as percentage (0-100%)`}},{id:`level`,data_type:`enum`,format:[`off`,`low`,`medium`,`high`,`full`],description:{en:`Brightness as discrete levels`}}]},tampered:{category:`tampered`,required:!1,permissions:[`ro`],data_type:`bool`,unit:null,format:null}}},media_input:{category:`media_input`,properties:{source:{category:`source`,required:!0,permissions:[`rw`],data_types:[{id:`standard`,data_type:`enum`,unit:null,format:`hdmi1.hdmi2.hdmi3.hdmi4.hdmi5.hdmi6.arc.earc.tv.cable.satellite.antenna.av1.av2.component.vga.dvi.usb.bluetooth.wifi.airplay.cast.dlna.miracast.app_netflix.app_youtube.app_spotify.app_prime_video.app_disney_plus.app_hbo_max.app_apple_tv.app_plex.app_kodi.other`.split(`.`),step:null,description:{en:`Standardized input/source identifier (recommended for UI).`}},{id:`custom`,data_type:`string`,unit:null,format:null,step:null,description:{en:`Integration-specific input/source value (fallback).`}}]},active:{category:`active`,required:!1,permissions:[`ro`],data_type:`bool`,unit:null,format:null},source_label:{category:`source_label`,required:!1,permissions:[`ro`],data_type:`string`,unit:null,format:null}}},media_playback:{category:`media_playback`,properties:{status:{category:`status`,required:!0,permissions:[`rw`],data_type:`enum`,unit:null,format:[`playing`,`paused`,`stopped`]},track:{category:`track`,required:!1,permissions:[`ro`],data_type:`string`,unit:null,format:null},duration:{category:`duration`,required:!1,permissions:[`ro`],data_type:`uint`,unit:`s`,format:[0,86400]},position:{category:`position`,required:!1,permissions:[`rw`],data_type:`uint`,unit:`s`,format:[0,86400]},shuffle:{category:`shuffle`,required:!1,permissions:[`rw`],data_type:`bool`,unit:null,format:null},repeat:{category:`repeat`,required:!1,permissions:[`rw`],data_type:`enum`,unit:null,format:[`off`,`one`,`all`]},command:{category:`command`,required:!1,permissions:[`wo`],data_type:`enum`,unit:null,format:[`play`,`pause`,`stop`,`next`,`previous`,`rewind`,`fast_forward`]},artist:{category:`artist`,required:!1,permissions:[`ro`],data_type:`string`,unit:null,format:null},album:{category:`album`,required:!1,permissions:[`ro`],data_type:`string`,unit:null,format:null},artwork_url:{category:`artwork_url`,required:!1,permissions:[`ro`],data_type:`string`,unit:null,format:null},media_type:{category:`media_type`,required:!1,permissions:[`ro`],data_type:`enum`,unit:null,format:[`music`,`tvshow`,`movie`,`video`,`playlist`,`podcast`,`audiobook`,`radio`,`unknown`]}}},microphone:{category:`microphone`,properties:{active:{category:`active`,required:!0,permissions:[`rw`],data_type:`bool`,unit:null,format:null},volume:{category:`volume`,required:!1,permissions:[`ro`],data_types:[{id:`percentage`,data_type:`uchar`,unit:`%`,format:[0,100],step:1,description:{en:`Volume as percentage (0-100%)`}},{id:`level`,data_type:`enum`,format:[`mute`,`low`,`medium`,`high`,`max`],description:{en:`Volume as discrete levels`}}]}}},speaker:{category:`speaker`,properties:{active:{category:`active`,required:!0,permissions:[`rw`],data_type:`bool`,unit:null,format:null},volume:{category:`volume`,required:!1,permissions:[`rw`],data_types:[{id:`percentage`,data_type:`uchar`,unit:`%`,format:[0,100],step:1,description:{en:`Volume as percentage (0-100%)`}},{id:`level`,data_type:`enum`,format:[`mute`,`low`,`medium`,`high`,`max`],description:{en:`Volume as discrete levels`}}]},mode:{category:`mode`,required:!1,permissions:[`rw`],data_type:`enum`,unit:null,format:[`stereo`,`mono`,`surround`]},mute:{category:`mute`,required:!1,permissions:[`rw`],data_type:`bool`,unit:null,format:null},balance:{category:`balance`,required:!1,permissions:[`rw`],data_type:`float`,unit:null,format:[-1,1]},bass:{category:`bass`,required:!1,permissions:[`rw`],data_type:`float`,unit:null,format:[-10,10]},treble:{category:`treble`,required:!1,permissions:[`rw`],data_type:`float`,unit:null,format:[-10,10]}}},television:{category:`television`,properties:{on:{category:`on`,required:!0,permissions:[`rw`],data_type:`bool`,unit:null,format:null},active:{category:`active`,required:!1,permissions:[`ro`],data_type:`bool`,unit:null,format:null},brightness:{category:`brightness`,required:!1,permissions:[`rw`],data_types:[{id:`percentage`,data_type:`uchar`,unit:`%`,format:[0,100],step:1,description:{en:`Brightness as percentage (0-100%)`}},{id:`level`,data_type:`enum`,format:[`off`,`low`,`medium`,`high`,`full`],description:{en:`Brightness as discrete levels`}}]},remote_key:{category:`remote_key`,required:!1,permissions:[`wo`],data_type:`enum`,unit:null,format:[`rewind`,`fast_forward`,`next`,`previous`,`arrow_up`,`arrow_down`,`arrow_left`,`arrow_right`,`select`,`back`,`exit`,`info`,`play`,`pause`]}}},projector:{category:`projector`,properties:{on:{category:`on`,required:!0,permissions:[`rw`],data_type:`bool`,unit:null,format:null},active:{category:`active`,required:!1,permissions:[`ro`],data_type:`bool`,unit:null,format:null},brightness:{category:`brightness`,required:!1,permissions:[`rw`],data_types:[{id:`percentage`,data_type:`uchar`,unit:`%`,format:[0,100],step:1,description:{en:`Brightness as percentage (0-100%)`}},{id:`level`,data_type:`enum`,format:[`off`,`low`,`medium`,`high`,`full`],description:{en:`Brightness as discrete levels`}}]},remote_key:{category:`remote_key`,required:!1,permissions:[`wo`],data_type:`enum`,unit:null,format:[`rewind`,`fast_forward`,`next`,`previous`,`arrow_up`,`arrow_down`,`arrow_left`,`arrow_right`,`select`,`back`,`exit`,`info`,`play`,`pause`]}}},device_information:{category:`device_information`,properties:{manufacturer:{category:`manufacturer`,required:!0,permissions:[`ro`],data_type:`string`,unit:null,format:null},model:{category:`model`,required:!0,permissions:[`ro`],data_type:`string`,unit:null,format:null},serial_number:{category:`serial_number`,required:!0,permissions:[`ro`],data_type:`string`,unit:null,format:null},firmware_revision:{category:`firmware_revision`,required:!1,permissions:[`ro`],data_type:`string`,unit:null,format:null},hardware_revision:{category:`hardware_revision`,required:!1,permissions:[`ro`],data_type:`string`,unit:null,format:null},link_quality:{category:`link_quality`,required:!1,permissions:[`ro`],data_type:`uchar`,unit:`%`,format:[0,100]},connection_type:{category:`connection_type`,required:!1,permissions:[`ro`],data_type:`enum`,unit:null,format:[`wired`,`wifi`,`zigbee`,`bluetooth`]},status:{category:`status`,required:!1,permissions:[`ro`],data_type:`enum`,unit:null,format:[`connected`,`disconnected`,`init`,`ready`,`running`,`sleeping`,`stopped`,`lost`,`alert`,`unknown`]},fault:{category:`fault`,required:!1,permissions:[`ro`],data_type:`uchar`,unit:null,format:[0,255]}}},filter:{category:`filter`,properties:{life_remaining:{category:`life_remaining`,required:!1,permissions:[`ro`],data_type:`uchar`,unit:`%`,format:[0,100]},status:{category:`status`,required:!1,permissions:[`ro`],data_type:`enum`,unit:null,format:[`good`,`replace_soon`,`replace_now`]},change_needed:{category:`change_needed`,required:!1,permissions:[`ro`],data_type:`bool`,unit:null,format:null},reset:{category:`reset`,required:!1,permissions:[`wo`],data_type:`bool`,unit:null,format:null},fault:{category:`fault`,required:!1,permissions:[`ro`],data_type:`uchar`,unit:null,format:[0,255]}}},button:{category:`button`,properties:{event:{category:`event`,required:!0,permissions:[`ev`],data_type:`enum`,unit:null,format:[`press`,`long_press`,`double_press`,`triple_press`,`down`,`up`]},detected:{category:`detected`,required:!1,permissions:[`ro`],data_type:`bool`,unit:null,format:null},active:{category:`active`,required:!1,permissions:[`ro`],data_type:`bool`,unit:null,format:null}}},binary_input:{category:`binary_input`,properties:{state:{category:`state`,required:!0,permissions:[`ro`],data_type:`bool`,unit:null,format:null},active:{category:`active`,required:!1,permissions:[`ro`],data_type:`bool`,unit:null,format:null}}},analog_input:{category:`analog_input`,properties:{value:{category:`value`,required:!0,permissions:[`ro`],data_type:`float`,unit:null,format:null},unit:{category:`unit`,required:!1,permissions:[`ro`],data_type:`string`,unit:null,format:null},active:{category:`active`,required:!1,permissions:[`ro`],data_type:`bool`,unit:null,format:null}}},indicator:{category:`indicator`,properties:{on:{category:`on`,required:!0,permissions:[`rw`],data_type:`bool`,unit:null,format:null},brightness:{category:`brightness`,required:!1,permissions:[`rw`],data_type:`uchar`,unit:null,format:[0,255]},color:{category:`color_red`,required:!1,permissions:[`rw`],data_type:`enum`,unit:null,format:[`red`,`green`,`blue`,`yellow`,`white`,`off`]},active:{category:`active`,required:!1,permissions:[`ro`],data_type:`bool`,unit:null,format:null}}},buzzer:{category:`buzzer`,properties:{on:{category:`on`,required:!0,permissions:[`rw`],data_type:`bool`,unit:null,format:null},frequency:{category:`frequency`,required:!1,permissions:[`rw`],data_type:`uint`,unit:`Hz`,format:[100,1e4]},active:{category:`active`,required:!1,permissions:[`ro`],data_type:`bool`,unit:null,format:null}}},accelerometer:{category:`accelerometer`,properties:{acceleration_x:{category:`acceleration_x`,required:!0,permissions:[`ro`],data_type:`float`,unit:`g`,format:[-16,16],step:.001},acceleration_y:{category:`acceleration_y`,required:!0,permissions:[`ro`],data_type:`float`,unit:`g`,format:[-16,16],step:.001},acceleration_z:{category:`acceleration_z`,required:!0,permissions:[`ro`],data_type:`float`,unit:`g`,format:[-16,16],step:.001},orientation:{category:`orientation`,required:!1,permissions:[`ro`],data_type:`enum`,unit:null,format:[`landscape`,`portrait`,`landscape_inverted`,`portrait_inverted`,`face_up`,`face_down`]},active:{category:`active`,required:!1,permissions:[`ro`],data_type:`bool`,unit:null,format:null}}},generic:{category:`generic`,properties:{generic:{category:`generic`,required:!1}}}},_e={generic:{category:`generic`,channels:{generic:{category:`generic`,required:!1,multiple:!0},device_information:{category:`device_information`,required:!0,multiple:!1},button:{category:`button`,required:!1,multiple:!0},binary_input:{category:`binary_input`,required:!1,multiple:!0},analog_input:{category:`analog_input`,required:!1,multiple:!0}}},air_conditioner:{category:`air_conditioner`,channels:{cooler:{category:`cooler`,required:!0,multiple:!1},fan:{category:`fan`,required:!0,multiple:!1},temperature:{category:`temperature`,required:!0,multiple:!1},device_information:{category:`device_information`,required:!0,multiple:!1},electrical_energy:{category:`electrical_energy`,required:!1,multiple:!1},electrical_power:{category:`electrical_power`,required:!1,multiple:!1},heater:{category:`heater`,required:!1,multiple:!1},humidity:{category:`humidity`,required:!1,multiple:!1},contact:{category:`contact`,required:!1,multiple:!1},leak:{category:`leak`,required:!1,multiple:!1},filter:{category:`filter`,required:!1,multiple:!1},button:{category:`button`,required:!1,multiple:!0},binary_input:{category:`binary_input`,required:!1,multiple:!0},analog_input:{category:`analog_input`,required:!1,multiple:!0}}},air_dehumidifier:{category:`air_dehumidifier`,channels:{dehumidifier:{category:`dehumidifier`,required:!0,multiple:!1},humidity:{category:`humidity`,required:!0,multiple:!1},device_information:{category:`device_information`,required:!0,multiple:!1},fan:{category:`fan`,required:!1,multiple:!1},electrical_energy:{category:`electrical_energy`,required:!1,multiple:!1},electrical_power:{category:`electrical_power`,required:!1,multiple:!1},leak:{category:`leak`,required:!1,multiple:!1},temperature:{category:`temperature`,required:!1,multiple:!1}}},air_humidifier:{category:`air_humidifier`,channels:{humidifier:{category:`humidifier`,required:!0,multiple:!1},humidity:{category:`humidity`,required:!0,multiple:!1},device_information:{category:`device_information`,required:!0,multiple:!1},fan:{category:`fan`,required:!1,multiple:!1},electrical_energy:{category:`electrical_energy`,required:!1,multiple:!1},electrical_power:{category:`electrical_power`,required:!1,multiple:!1},leak:{category:`leak`,required:!1,multiple:!1},temperature:{category:`temperature`,required:!1,multiple:!1}}},air_purifier:{category:`air_purifier`,channels:{fan:{category:`fan`,required:!0,multiple:!1},device_information:{category:`device_information`,required:!0,multiple:!1},air_quality:{category:`air_quality`,required:!1,multiple:!1},filter:{category:`filter`,required:!1,multiple:!1},air_particulate:{category:`air_particulate`,required:!1,multiple:!1},carbon_dioxide:{category:`carbon_dioxide`,required:!1,multiple:!1},carbon_monoxide:{category:`carbon_monoxide`,required:!1,multiple:!1},humidity:{category:`humidity`,required:!1,multiple:!1},leak:{category:`leak`,required:!1,multiple:!1},nitrogen_dioxide:{category:`nitrogen_dioxide`,required:!1,multiple:!1},ozone:{category:`ozone`,required:!1,multiple:!1},pressure:{category:`pressure`,required:!1,multiple:!1},sulphur_dioxide:{category:`sulphur_dioxide`,required:!1,multiple:!1},temperature:{category:`temperature`,required:!1,multiple:!1},volatile_organic_compounds:{category:`volatile_organic_compounds`,required:!1,multiple:!1},electrical_energy:{category:`electrical_energy`,required:!1,multiple:!1},electrical_power:{category:`electrical_power`,required:!1,multiple:!1}}},thermostat:{category:`thermostat`,channels:{temperature:{category:`temperature`,required:!0,multiple:!1},thermostat:{category:`thermostat`,required:!0,multiple:!1},device_information:{category:`device_information`,required:!0,multiple:!1},contact:{category:`contact`,required:!1,multiple:!1},cooler:{category:`cooler`,required:!1,multiple:!1},heater:{category:`heater`,required:!1,multiple:!1},humidity:{category:`humidity`,required:!1,multiple:!1},electrical_energy:{category:`electrical_energy`,required:!1,multiple:!1},electrical_power:{category:`electrical_power`,required:!1,multiple:!1},button:{category:`button`,required:!1,multiple:!0},binary_input:{category:`binary_input`,required:!1,multiple:!0},analog_input:{category:`analog_input`,required:!1,multiple:!0}}},alarm:{category:`alarm`,channels:{alarm:{category:`alarm`,required:!0,multiple:!1},device_information:{category:`device_information`,required:!0,multiple:!1},battery:{category:`battery`,required:!1,multiple:!1}}},camera:{category:`camera`,channels:{camera:{category:`camera`,required:!0,multiple:!1},device_information:{category:`device_information`,required:!0,multiple:!1},battery:{category:`battery`,required:!1,multiple:!1},contact:{category:`contact`,required:!1,multiple:!1},humidity:{category:`humidity`,required:!1,multiple:!1},light:{category:`light`,required:!1,multiple:!1},microphone:{category:`microphone`,required:!1,multiple:!1},motion:{category:`motion`,required:!1,multiple:!1},speaker:{category:`speaker`,required:!1,multiple:!1},temperature:{category:`temperature`,required:!1,multiple:!1}}},doorbell:{category:`doorbell`,channels:{doorbell:{category:`doorbell`,required:!0,multiple:!1},device_information:{category:`device_information`,required:!0,multiple:!1},battery:{category:`battery`,required:!1,multiple:!1},camera:{category:`camera`,required:!1,multiple:!1},contact:{category:`contact`,required:!1,multiple:!1},light:{category:`light`,required:!1,multiple:!1},lock:{category:`lock`,required:!1,multiple:!1},microphone:{category:`microphone`,required:!1,multiple:!1},motion:{category:`motion`,required:!1,multiple:!1},speaker:{category:`speaker`,required:!1,multiple:!1}}},door:{category:`door`,channels:{door:{category:`door`,required:!0,multiple:!1},device_information:{category:`device_information`,required:!0,multiple:!1},battery:{category:`battery`,required:!1,multiple:!1},contact:{category:`contact`,required:!1,multiple:!1},lock:{category:`lock`,required:!1,multiple:!1},motion:{category:`motion`,required:!1,multiple:!1}}},lock:{category:`lock`,channels:{lock:{category:`lock`,required:!0,multiple:!1},device_information:{category:`device_information`,required:!0,multiple:!1},battery:{category:`battery`,required:!1,multiple:!1},contact:{category:`contact`,required:!1,multiple:!1},motion:{category:`motion`,required:!1,multiple:!1}}},fan:{category:`fan`,channels:{fan:{category:`fan`,required:!0,multiple:!1},device_information:{category:`device_information`,required:!0,multiple:!1},electrical_energy:{category:`electrical_energy`,required:!1,multiple:!1},electrical_power:{category:`electrical_power`,required:!1,multiple:!1},button:{category:`button`,required:!1,multiple:!0},binary_input:{category:`binary_input`,required:!1,multiple:!0},analog_input:{category:`analog_input`,required:!1,multiple:!0}}},heating_unit:{category:`heating_unit`,channels:{heater:{category:`heater`,required:!0,multiple:!1},temperature:{category:`temperature`,required:!0,multiple:!1},device_information:{category:`device_information`,required:!0,multiple:!1},electrical_energy:{category:`electrical_energy`,required:!1,multiple:!1},electrical_power:{category:`electrical_power`,required:!1,multiple:!1},humidity:{category:`humidity`,required:!1,multiple:!1},contact:{category:`contact`,required:!1,multiple:!1}}},water_heater:{category:`water_heater`,channels:{heater:{category:`heater`,required:!0,multiple:!1},temperature:{category:`temperature`,required:!0,multiple:!1},device_information:{category:`device_information`,required:!0,multiple:!1},electrical_energy:{category:`electrical_energy`,required:!1,multiple:!1},electrical_power:{category:`electrical_power`,required:!1,multiple:!1},leak:{category:`leak`,required:!1,multiple:!1}}},input_controller:{category:`input_controller`,constraints:{oneOrMoreOf:[[`button`,`binary_input`,`analog_input`]]},channels:{device_information:{category:`device_information`,required:!0,multiple:!1},button:{category:`button`,required:!1,multiple:!0},binary_input:{category:`binary_input`,required:!1,multiple:!0},analog_input:{category:`analog_input`,required:!1,multiple:!0},battery:{category:`battery`,required:!1,multiple:!1}}},lighting:{category:`lighting`,channels:{light:{category:`light`,required:!0,multiple:!0},device_information:{category:`device_information`,required:!0,multiple:!1},electrical_energy:{category:`electrical_energy`,required:!1,multiple:!1},electrical_power:{category:`electrical_power`,required:!1,multiple:!1},illuminance:{category:`illuminance`,required:!1,multiple:!1},button:{category:`button`,required:!1,multiple:!0},binary_input:{category:`binary_input`,required:!1,multiple:!0},analog_input:{category:`analog_input`,required:!1,multiple:!0}}},outlet:{category:`outlet`,channels:{outlet:{category:`outlet`,required:!0,multiple:!0},device_information:{category:`device_information`,required:!0,multiple:!1},electrical_energy:{category:`electrical_energy`,required:!1,multiple:!1},electrical_power:{category:`electrical_power`,required:!1,multiple:!1},button:{category:`button`,required:!1,multiple:!0},binary_input:{category:`binary_input`,required:!1,multiple:!0},analog_input:{category:`analog_input`,required:!1,multiple:!0}}},pump:{category:`pump`,channels:{flow:{category:`flow`,required:!1,multiple:!1},switcher:{category:`switcher`,required:!0,multiple:!1},device_information:{category:`device_information`,required:!0,multiple:!1},electrical_energy:{category:`electrical_energy`,required:!1,multiple:!1},electrical_power:{category:`electrical_power`,required:!1,multiple:!1},leak:{category:`leak`,required:!1,multiple:!1},pressure:{category:`pressure`,required:!1,multiple:!1}}},sprinkler:{category:`sprinkler`,channels:{valve:{category:`valve`,required:!0,multiple:!1},device_information:{category:`device_information`,required:!0,multiple:!1},electrical_energy:{category:`electrical_energy`,required:!1,multiple:!1},electrical_power:{category:`electrical_power`,required:!1,multiple:!1},flow:{category:`flow`,required:!1,multiple:!1},humidity:{category:`humidity`,required:!1,multiple:!1},leak:{category:`leak`,required:!1,multiple:!1},pressure:{category:`pressure`,required:!1,multiple:!1}}},switcher:{category:`switcher`,constraints:{oneOrMoreOf:[[`outlet`,`switcher`]],mutuallyExclusiveGroups:[[[`outlet`],[`switcher`]]]},channels:{outlet:{category:`outlet`,required:!1,multiple:!0},switcher:{category:`switcher`,required:!1,multiple:!0},device_information:{category:`device_information`,required:!0,multiple:!1},electrical_energy:{category:`electrical_energy`,required:!1,multiple:!1},electrical_power:{category:`electrical_power`,required:!1,multiple:!1},button:{category:`button`,required:!1,multiple:!0},binary_input:{category:`binary_input`,required:!1,multiple:!0},analog_input:{category:`analog_input`,required:!1,multiple:!0}}},valve:{category:`valve`,channels:{valve:{category:`valve`,required:!0,multiple:!1},device_information:{category:`device_information`,required:!0,multiple:!1},battery:{category:`battery`,required:!1,multiple:!1},electrical_energy:{category:`electrical_energy`,required:!1,multiple:!1},electrical_power:{category:`electrical_power`,required:!1,multiple:!1},flow:{category:`flow`,required:!1,multiple:!1},leak:{category:`leak`,required:!1,multiple:!1},pressure:{category:`pressure`,required:!1,multiple:!1}}},window_covering:{category:`window_covering`,channels:{window_covering:{category:`window_covering`,required:!0,multiple:!0},device_information:{category:`device_information`,required:!0,multiple:!1},battery:{category:`battery`,required:!1,multiple:!1},electrical_energy:{category:`electrical_energy`,required:!1,multiple:!1},electrical_power:{category:`electrical_power`,required:!1,multiple:!1},button:{category:`button`,required:!1,multiple:!0},binary_input:{category:`binary_input`,required:!1,multiple:!0},analog_input:{category:`analog_input`,required:!1,multiple:!0}}},media:{category:`media`,channels:{switcher:{category:`switcher`,required:!1,multiple:!1},media_input:{category:`media_input`,required:!1,multiple:!1},media_playback:{category:`media_playback`,required:!0,multiple:!1},device_information:{category:`device_information`,required:!0,multiple:!1},microphone:{category:`microphone`,required:!1,multiple:!1},speaker:{category:`speaker`,required:!1,multiple:!1}}},speaker:{category:`speaker`,channels:{switcher:{category:`switcher`,required:!1,multiple:!1},speaker:{category:`speaker`,required:!0,multiple:!0},device_information:{category:`device_information`,required:!0,multiple:!1},electrical_energy:{category:`electrical_energy`,required:!1,multiple:!1},electrical_power:{category:`electrical_power`,required:!1,multiple:!1},media_input:{category:`media_input`,required:!1,multiple:!1},media_playback:{category:`media_playback`,required:!1,multiple:!1}}},television:{category:`television`,channels:{speaker:{category:`speaker`,required:!0,multiple:!1},television:{category:`television`,required:!0,multiple:!1},device_information:{category:`device_information`,required:!0,multiple:!1},media_playback:{category:`media_playback`,required:!1,multiple:!1},media_input:{category:`media_input`,required:!1,multiple:!1}}},projector:{category:`projector`,channels:{projector:{category:`projector`,required:!0,multiple:!1},device_information:{category:`device_information`,required:!0,multiple:!1},speaker:{category:`speaker`,required:!1,multiple:!1},media_playback:{category:`media_playback`,required:!1,multiple:!1},media_input:{category:`media_input`,required:!1,multiple:!1}}},av_receiver:{category:`av_receiver`,channels:{switcher:{category:`switcher`,required:!1,multiple:!1},speaker:{category:`speaker`,required:!0,multiple:!0},media_input:{category:`media_input`,required:!0,multiple:!1},device_information:{category:`device_information`,required:!0,multiple:!1},media_playback:{category:`media_playback`,required:!1,multiple:!1},electrical_power:{category:`electrical_power`,required:!1,multiple:!1},electrical_energy:{category:`electrical_energy`,required:!1,multiple:!1}}},set_top_box:{category:`set_top_box`,channels:{switcher:{category:`switcher`,required:!1,multiple:!1},media_playback:{category:`media_playback`,required:!0,multiple:!1},device_information:{category:`device_information`,required:!0,multiple:!1},media_input:{category:`media_input`,required:!1,multiple:!1},speaker:{category:`speaker`,required:!1,multiple:!1}}},game_console:{category:`game_console`,channels:{switcher:{category:`switcher`,required:!1,multiple:!1},media_playback:{category:`media_playback`,required:!1,multiple:!1},device_information:{category:`device_information`,required:!0,multiple:!1}}},streaming_service:{category:`streaming_service`,channels:{media_playback:{category:`media_playback`,required:!0,multiple:!1},device_information:{category:`device_information`,required:!0,multiple:!1}}},robot_vacuum:{category:`robot_vacuum`,channels:{battery:{category:`battery`,required:!0,multiple:!1},robot_vacuum:{category:`robot_vacuum`,required:!0,multiple:!1},device_information:{category:`device_information`,required:!0,multiple:!1},electrical_energy:{category:`electrical_energy`,required:!1,multiple:!1},electrical_power:{category:`electrical_power`,required:!1,multiple:!1},leak:{category:`leak`,required:!1,multiple:!1},filter:{category:`filter`,required:!1,multiple:!1}}},sensor:{category:`sensor`,channels:{device_information:{category:`device_information`,required:!0,multiple:!1},air_particulate:{category:`air_particulate`,required:!1,multiple:!1},battery:{category:`battery`,required:!1,multiple:!1},carbon_dioxide:{category:`carbon_dioxide`,required:!1,multiple:!1},carbon_monoxide:{category:`carbon_monoxide`,required:!1,multiple:!1},gas:{category:`gas`,required:!1,multiple:!1},contact:{category:`contact`,required:!1,multiple:!1},humidity:{category:`humidity`,required:!1,multiple:!1},illuminance:{category:`illuminance`,required:!1,multiple:!1},leak:{category:`leak`,required:!1,multiple:!1},motion:{category:`motion`,required:!1,multiple:!1},nitrogen_dioxide:{category:`nitrogen_dioxide`,required:!1,multiple:!1},occupancy:{category:`occupancy`,required:!1,multiple:!1},ozone:{category:`ozone`,required:!1,multiple:!1},pressure:{category:`pressure`,required:!1,multiple:!1},smoke:{category:`smoke`,required:!1,multiple:!1},sulphur_dioxide:{category:`sulphur_dioxide`,required:!1,multiple:!1},temperature:{category:`temperature`,required:!1,multiple:!1},volatile_organic_compounds:{category:`volatile_organic_compounds`,required:!1,multiple:!1},electrical_energy:{category:`electrical_energy`,required:!1,multiple:!1},electrical_power:{category:`electrical_power`,required:!1,multiple:!1}}},terminal:{category:`terminal`,channels:{device_information:{category:`device_information`,required:!0,multiple:!1},button:{category:`button`,required:!1,multiple:!0},indicator:{category:`indicator`,required:!1,multiple:!0},buzzer:{category:`buzzer`,required:!1,multiple:!1},illuminance:{category:`illuminance`,required:!1,multiple:!1},accelerometer:{category:`accelerometer`,required:!1,multiple:!1},binary_input:{category:`binary_input`,required:!1,multiple:!0},switcher:{category:`switcher`,required:!1,multiple:!0},temperature:{category:`temperature`,required:!1,multiple:!1}}}},ve={[D.generic]:[],[D.air_conditioner]:[M.cooler,M.heater,M.fan,M.temperature,M.humidity,M.electrical_energy,M.electrical_power,M.leak,M.device_information],[D.air_dehumidifier]:[M.cooler,M.fan,M.temperature,M.humidity,M.electrical_energy,M.electrical_power,M.leak,M.device_information],[D.air_humidifier]:[M.humidity,M.switcher,M.temperature,M.fan,M.electrical_energy,M.electrical_power,M.leak,M.device_information],[D.air_purifier]:[M.fan,M.air_particulate,M.carbon_dioxide,M.carbon_monoxide,M.humidity,M.leak,M.nitrogen_dioxide,M.ozone,M.pressure,M.sulphur_dioxide,M.temperature,M.volatile_organic_compounds,M.electrical_energy,M.electrical_power,M.device_information],[D.alarm]:[M.alarm,M.device_information],[D.camera]:[M.camera,M.motion,M.microphone,M.speaker,M.contact,M.light,M.temperature,M.humidity,M.battery,M.device_information],[D.door]:[M.door,M.lock,M.contact,M.motion,M.battery,M.device_information],[D.doorbell]:[M.doorbell,M.camera,M.lock,M.motion,M.microphone,M.speaker,M.contact,M.light,M.battery,M.device_information],[D.fan]:[M.fan,M.electrical_energy,M.electrical_power,M.device_information],[D.heating_unit]:[M.heater,M.temperature,M.humidity,M.electrical_energy,M.electrical_power,M.device_information],[D.input_controller]:[M.button,M.binary_input,M.analog_input,M.battery,M.device_information],[D.lighting]:[M.light,M.button,M.binary_input,M.illuminance,M.electrical_energy,M.electrical_power,M.device_information],[D.lock]:[M.lock,M.contact,M.motion,M.battery,M.device_information],[D.media]:[M.media_input,M.media_playback,M.microphone,M.speaker,M.device_information],[D.av_receiver]:[M.media_input,M.media_playback,M.speaker,M.device_information],[D.game_console]:[M.media_playback,M.media_input,M.device_information],[D.projector]:[M.projector,M.speaker,M.media_playback,M.media_input,M.device_information],[D.set_top_box]:[M.media_input,M.media_playback,M.device_information],[D.streaming_service]:[M.media_playback,M.device_information],[D.outlet]:[M.outlet,M.electrical_energy,M.electrical_power,M.device_information],[D.pump]:[M.flow,M.switcher,M.leak,M.pressure,M.electrical_energy,M.electrical_power,M.device_information],[D.robot_vacuum]:[M.robot_vacuum,M.electrical_energy,M.electrical_power,M.leak,M.battery,M.device_information],[D.sensor]:[M.air_particulate,M.battery,M.carbon_dioxide,M.carbon_monoxide,M.contact,M.humidity,M.illuminance,M.leak,M.motion,M.nitrogen_dioxide,M.occupancy,M.ozone,M.pressure,M.smoke,M.sulphur_dioxide,M.temperature,M.volatile_organic_compounds,M.device_information],[D.speaker]:[M.speaker,M.media_input,M.media_playback,M.electrical_energy,M.electrical_power,M.device_information],[D.sprinkler]:[M.valve,M.flow,M.pressure,M.leak,M.humidity,M.electrical_energy,M.electrical_power,M.device_information],[D.switcher]:[M.switcher,M.button,M.binary_input,M.electrical_energy,M.electrical_power,M.device_information],[D.television]:[M.television,M.speaker,M.media_playback,M.media_input,M.device_information],[D.terminal]:[M.button,M.indicator,M.buzzer,M.illuminance,M.accelerometer,M.temperature,M.contact,M.switcher,M.device_information],[D.thermostat]:[M.thermostat,M.cooler,M.heater,M.temperature,M.humidity,M.contact,M.electrical_energy,M.electrical_power,M.device_information],[D.valve]:[M.valve,M.pressure,M.flow,M.leak,M.battery,M.electrical_energy,M.electrical_power,M.device_information],[D.water_heater]:[M.heater,M.temperature,M.leak,M.electrical_energy,M.electrical_power,M.device_information],[D.window_covering]:[M.window_covering,M.battery,M.electrical_energy,M.electrical_power,M.device_information]},ye=Object.fromEntries(Object.entries(_e).map(([e,t])=>{let n=Object.values(t.channels).map(e=>e.category),r=ve[e];return[e,r?[...n].sort((e,t)=>{let n=r.indexOf(e),i=r.indexOf(t);return n===-1&&i===-1?0:n===-1?1:i===-1?-1:n-i}):n]})),be=Object.fromEntries(Object.entries(_e).map(([e,t])=>[e,{required:Object.values(t.channels).filter(e=>e.required).map(e=>e.category),optional:Object.values(t.channels).filter(e=>!e.required).map(e=>e.category),multiple:Object.values(t.channels).filter(e=>e.multiple).map(e=>e.category)}])),xe=Object.fromEntries(Object.entries(ge).map(([e,t])=>[e,{required:Object.values(t.properties).filter(e=>e.required).map(e=>e.category),optional:Object.values(t.properties).filter(e=>!e.required).map(e=>e.category)}])),Se=(e,t)=>{let n=ge[e];if(!n)return;let r=Object.values(n.properties).find(e=>e.category===t);if(!r)return;let i=r.data_types?.[0];if(i)return{category:r.category,required:r.required,description:i.description??r.description??{en:``},permissions:r.permissions,data_type:i.data_type,unit:i.unit??null,format:i.format??null,invalid:r.invalid,step:i.step??null};if(r.data_type)return{category:r.category,required:r.required,description:r.description??{en:``},permissions:r.permissions,data_type:r.data_type,unit:r.unit??null,format:r.format??null,invalid:r.invalid,step:r.step??null}},Ce=({id:e})=>{let n=F(),r=n.getStore(H),i=n.getStore(W),a=e=>r.findById(e),o=e=>xe[e.category]??null;return{canAddAnotherProperty:t(()=>{let t=a(e);if(t===null)return!0;let{required:n,optional:r}=o(t)??{required:[],optional:[]},s=[...n,...r],c=i.findForChannel(t.id).map(e=>e.category);return s.filter(e=>!c.includes(e)).length>0}),missingRequiredProperties:t(()=>{let t=a(e);if(t===null)throw new J(`Something went wrong, channel can't be loaded`);let{required:n}=o(t)??{required:[]},r=i.findForChannel(t.id).map(e=>e.category);return n.filter(e=>!r.includes(e))})}},we=v({id:I().uuid().optional(),type:I().trim().nonempty(),device:I().uuid().optional(),category:j(M).default(M.generic),identifier:I().trim().nonempty().nullable().optional(),name:I().trim().nonempty(),description:I().trim().transform(e=>e===``?null:e).nullable().optional()}),Te=v({id:I().uuid(),type:I().trim().nonempty(),device:I().uuid(),category:j(M).default(M.generic),identifier:I().trim().nonempty().nullable().optional(),name:I().trim().nonempty().optional(),description:I().trim().transform(e=>e===``?null:e).nullable().optional()}),Ee=({type:e})=>{let{getByType:n}=oe(),r=t(()=>n(e));return{plugin:r,element:t(()=>(r.value?.elements??[]).find(t=>t.type===e&&(t.modules===void 0||t.modules.includes(`devices-module`))))}},De=()=>{let e=F().getStore(U),{firstLoad:n,semaphore:r}=T(e);return{devices:t(()=>e.findAll().filter(e=>!e.draft&&!e.hidden)),areLoading:t(()=>r.value.fetching.items),loaded:t(()=>n.value),fetchDevices:async()=>{await e.fetch()}}},Oe=({id:n,type:s,deviceId:c})=>{let l=F(),{element:u}=Ee({type:s}),f=l.getStore(H),{devices:p,fetchDevices:m,areLoading:h}=De(),{t:g}=i(),_=A(),v=d(),y=r(K.NONE),b,x=t(()=>D.device?p.value.find(e=>e.id===D.device)??null:null),S=t(()=>x.value?f.findForDevice(x.value.id).map(e=>e.category):[]),C=t(()=>x.value?be[x.value.category]??null:null),T=t(()=>C.value===null?[]:Object.values(M).filter(e=>C.value?.required.includes(e)||C.value?.optional.includes(e)).filter(e=>!S.value.includes(e)||C.value?.multiple?.includes(e)).map(e=>({value:e,label:g(`devicesModule.categories.channels.${e}`)}))),E=t(()=>p.value.filter(e=>e.type===s).map(e=>({value:e.id,label:e.name}))),D=a({...z(u.value?.schemas?.channelAddFormSchema||we),id:n,type:s,device:c,category:M.generic,name:``,description:``}),O=w(e(D)),k=r(void 0),j=r(!1),N=async()=>{if(k.value.clearValidate(),!await k.value.validate())throw new X(`Form not valid`);let e=c??D.device;if(!e)throw new X(`Missing device identifier`);if(!D.category)throw new X(`Missing data type definition`);let t=(u.value?.schemas?.channelAddFormSchema||we).safeParse(D);if(!t.success)throw v.error(`Schema validation failed with:`,t.error),new X(`Failed to validate create channel model.`);y.value=K.WORKING;let r=g(`devicesModule.messages.channels.notCreated`,{device:D.name});try{await f.add({id:n,deviceId:e,draft:!1,data:{...t.data,type:s}})}catch(e){throw y.value=K.ERROR,b=window.setTimeout(P,2e3),e instanceof Y&&e.code===422?_.error(e.message):_.error(r),e}return y.value=K.OK,b=window.setTimeout(P,2e3),_.success(g(`devicesModule.messages.channels.created`,{device:D.name})),`added`},P=()=>{window.clearTimeout(b),y.value=K.NONE};return m().catch(()=>{}),o(D,()=>{j.value=!(0,q.isEqual)(e(D),O)}),o(()=>T.value,e=>{e.length&&e[0]&&(D.category=e[0].value,O.category=e[0].value)},{immediate:!0}),{categoriesOptions:T,devicesOptions:E,model:D,formEl:k,formChanged:j,submit:N,clear:P,formResult:y,loadingDevices:h}},ke=({channel:n,messages:s})=>{let c=F(),{element:l}=Ee({type:n.type}),u=c.getStore(H),{devices:f,fetchDevices:p,areLoading:m}=De(),{t:h}=i(),g=A(),_=d(),v=r(K.NONE),y,b=t(()=>f.value.find(e=>e.id===n.device)??null),x=t(()=>b.value?u.findForDevice(b.value.id).filter(e=>e.id!==n.id).map(e=>e.category):[]),S=t(()=>b.value?be[b.value.category]??null:null),C=t(()=>S.value===null?[]:Object.values(M).filter(e=>S.value?.required.includes(e)||S.value?.optional.includes(e)).filter(e=>!x.value.includes(e)||S.value?.multiple?.includes(e)).map(e=>({value:e,label:h(`devicesModule.categories.channels.${e}`)}))),T=t(()=>f.value.map(e=>({value:e.id,label:e.name}))),E=a(n),D=w(e(E)),O=r(void 0),k=r(!1),j=async()=>{let t=n.draft,r=s&&s.error?s.error:n.draft?h(`devicesModule.messages.channels.notCreated`,{channel:n.name}):h(`devicesModule.messages.channels.notEdited`,{channel:n.name});if(O.value.clearValidate(),!await O.value.validate())throw new X(`Form not valid`);let i=(l.value?.schemas?.channelEditFormSchema||Te).safeParse(E);if(!i.success)throw _.error(`Schema validation failed with:`,i.error),new X(`Failed to validate edit channel model.`);v.value=K.WORKING;try{await u.edit({id:n.id,data:{...i.data,type:n.type}}),n.draft&&await u.save({id:n.id,deviceId:n.device})}catch(e){throw v.value=K.ERROR,y=window.setTimeout(N,2e3),e instanceof Y&&e.code===422?g.error(e.message):g.error(r),e}return v.value=K.OK,y=window.setTimeout(N,2e3),t?(g.success(h(s&&s.success?s.success:`devicesModule.messages.channels.created`,{channel:n.name})),`added`):(g.success(h(s&&s.success?s.success:`devicesModule.messages.channels.edited`,{channel:n.name})),k.value=!1,D=w(e(E)),`saved`)},N=()=>{window.clearTimeout(y),v.value=K.NONE};return p().catch(()=>{}),o(E,()=>{k.value=!(0,q.isEqual)(e(E),D)}),{categoriesOptions:C,devicesOptions:T,model:E,formEl:O,formChanged:k,submit:j,clear:N,formResult:v,loadingDevices:m}},Ae=({channelId:e,id:n})=>{let r=F().getStore(W),{data:i,semaphore:a}=T(r);return{property:t(()=>n===null?null:i.value[n]??null),isLoading:t(()=>a.value.fetching.item.includes(n)?!0:(i.value[n]??null)===null?a.value.fetching.items.includes(e)||a.value.fetching.items.includes(`all`):!1),fetchProperty:async()=>{(i.value[n]??null)?.draft||await r.get({id:n,channelId:e})}}},je=({channelId:e})=>{let n=F().getStore(W),{firstLoad:r,semaphore:i}=T(n),a=typeof e==`string`?t(()=>e):e;return{properties:t(()=>n.findAll().filter(e=>!a?.value||e.channel===a.value)),areLoading:t(()=>a.value?i.value.fetching.items.includes(a.value)?!0:!r.value.includes(a.value)&&i.value.fetching.items.includes(a.value):!1),loaded:t(()=>a.value?r.value.includes(a.value):!1),fetchProperties:async()=>{a.value&&await n.fetch({channelId:a.value})}}},Q={search:void 0,channels:[],categories:[],permissions:[],dataTypes:[]},Me={by:`category`,dir:`asc`},Ne=({channelId:e,key:n=`list`})=>{let i=F().getStore(W),{firstLoad:a,semaphore:s}=T(i),{filters:c,sort:l,pagination:u,reset:d}=N({key:`${te}:channels-properties:${n}`,filters:{schema:de,defaults:Q},sort:{defaults:[Me]},pagination:{defaults:{page:1,size:10}},syncQuery:!0,version:1}),f=t(()=>c.value.search!==Q.search||!(0,q.isEqual)(c.value.channels,Q.channels)||!(0,q.isEqual)(c.value.categories,Q.categories)||!(0,q.isEqual)(c.value.permissions,Q.permissions)||!(0,q.isEqual)(c.value.dataTypes,Q.dataTypes)),p=r(u.value.size||10),m=r(u.value.page||1),h=r(l.value.length>0?l.value[0]?.by:void 0),g=r(l.value.length>0?l.value[0]?.dir??null:null),_=t(()=>B(i.findAll().filter(t=>!e||t.channel===e).filter(e=>!e.draft&&(!c.value.search||e.id?.toLowerCase().includes(c.value.search.toLowerCase())||e.name?.toLowerCase().includes(c.value.search.toLowerCase())||e.identifier?.toLowerCase().includes(c.value.search.toLowerCase()))&&(c.value.categories.length===0||c.value.categories.includes(e.category))&&(c.value.dataTypes.length===0||c.value.dataTypes.includes(e.dataType))&&(c.value.permissions.length===0||e.permissions.some(e=>c.value.permissions.includes(e)))),[e=>e[h.value]??``],[g.value===`asc`?`asc`:`desc`])),v=t(()=>{let e=(m.value-1)*p.value,t=e+p.value;return _.value.slice(e,t)}),y=async()=>{await i.fetch({channelId:e})},b=t(()=>s.value.fetching.items.includes(e)?!0:!a.value.includes(e)&&s.value.fetching.items.includes(e)),x=t(()=>a.value.includes(e)),S=t(()=>i.findAll().filter(t=>!e||t.channel===e).filter(e=>!e.draft).length);return o(()=>u.value,e=>{m.value=e.page??1,p.value=e.size??10},{deep:!0}),o(()=>m.value,e=>{u.value.page=e}),o(()=>p.value,e=>{u.value.size=e}),o(()=>g.value,e=>{h.value===void 0||e===null?l.value=[]:l.value=[{by:h.value,dir:e}]}),o(()=>h.value,e=>{e===void 0?l.value=[]:l.value=[{by:e,dir:g.value}]}),{properties:_,propertiesPaginated:v,totalRows:S,areLoading:b,loaded:x,fetchProperties:y,filters:c,filtersActive:f,paginateSize:p,paginatePage:m,sortBy:h,sortDir:g,resetFilter:d}},Pe=()=>{let{t:e}=i(),t=A(),n=F().getStore(W);return{remove:async r=>{let i=n.findById(r);if(i===null)throw new J(`Something went wrong, channel property can't be loaded`);S.confirm(e(`devicesModule.texts.channelsProperties.confirmRemove`,{property:i.name??e(`devicesModule.categories.channelsProperties.${i.category}`)}),e(`devicesModule.headings.channelsProperties.remove`),{confirmButtonText:e(`devicesModule.buttons.yes.title`),cancelButtonText:e(`devicesModule.buttons.no.title`),type:`warning`}).then(async()=>{try{await n.remove({id:i.id,channelId:i.channel}),t.success(e(`devicesModule.messages.channelsProperties.removed`,{property:i.name??e(`devicesModule.categories.channelsProperties.${i.category}`)}))}catch(n){if(n instanceof Y&&n.code===404){let n=e(`devicesModule.messages.channelsProperties.notFound`,{property:i.name??e(`devicesModule.categories.channelsProperties.${i.category}`)});t.error(n)}else if(n instanceof Y&&n.code===422)t.error(n.message);else{let n=e(`devicesModule.messages.channelsProperties.notRemoved`,{property:i.name??e(`devicesModule.categories.channelsProperties.${i.category}`)});t.error(n)}}}).catch(()=>{t.info(e(`devicesModule.messages.channelsProperties.removeCanceled`,{property:i.name??e(`devicesModule.categories.channelsProperties.${i.category}`)}))})}}},Fe=({id:e})=>{let n=F().getStore(W);return{icon:t(()=>{switch(n.findById(e)?.category){case b.event:return`mdi:bell-ring-outline`;case b.detected:return`mdi:record-circle-outline`;case b.unit:return`mdi:ruler`;case b.value:return`mdi:numeric`;default:return`mdi:tune`}})}},Ie=v({id:I().uuid().optional(),type:I().trim().nonempty(),channel:I().uuid().optional(),category:j(b).default(b.generic),identifier:I().trim().nonempty().nullable().optional(),name:I().trim().nonempty().nullable(),permissions:k(j(O)),dataType:j(p),format:k(h([I(),h([y(),m()])])).nullable(),invalid:h([I(),y(),P(),m()]),step:h([I(),y()]).transform(e=>e===``?null:Number(e)).nullable(),enterValue:P().default(!1),value:h([I(),y(),P(),m()]).optional(),enumValues:k(I()),minValue:h([I(),y()]).transform(e=>e===``?void 0:Number(e)).optional(),maxValue:h([I(),y()]).transform(e=>e===``?void 0:Number(e)).optional()}),Le=v({id:I().uuid(),type:I().trim().nonempty(),channel:I().uuid(),category:j(b).default(b.generic),identifier:I().trim().nonempty().nullable().optional(),name:I().trim().nonempty().nullable().optional(),permissions:k(j(O)),dataType:j(p),format:k(h([I(),h([y(),m()])])).nullable(),invalid:h([I(),y(),P(),m()]),step:h([I(),y()]).transform(e=>e===``?null:Number(e)).nullable(),enterValue:P().default(!1),value:h([I(),y(),P(),m()]).optional(),enumValues:k(I()),minValue:h([I(),y()]).transform(e=>e===``?void 0:Number(e)).optional(),maxValue:h([I(),y()]).transform(e=>e===``?void 0:Number(e)).optional()}),Re=({type:e})=>{let{getByType:n}=ae(),r=t(()=>n(e));return{plugin:r,element:t(()=>(r.value?.elements??[]).find(t=>t.type===e&&(t.modules===void 0||t.modules.includes(`devices-module`))))}},ze=({id:n,type:s,channelId:c})=>{let l=F(),{element:u}=Re({type:s}),f=l.getStore(W),{channels:m,fetchChannels:h,areLoading:g}=ce(),{t:_}=i(),v=A(),y=d(),x=r(K.NONE),S,C=t(()=>P.channel?m.value.find(e=>e.id===P.channel)??null:null),T=t(()=>C.value?f.findForChannel(C.value.id).map(e=>e.category):[]),E=t(()=>C.value?xe[C.value.category]??null:null),D=t(()=>E.value===null?[]:Object.values(b).filter(e=>E.value?.required.includes(e)||E.value?.optional.includes(e)).filter(e=>!T.value.includes(e)).map(e=>({value:e,label:_(`devicesModule.categories.channelsProperties.${e}`)}))),k=t(()=>m.value.map(e=>({value:e.id,label:e.name}))),j=Object.values(O).map(e=>({value:e,label:_(`devicesModule.permissions.${e}`)})),N=Object.values(p).map(e=>({value:e,label:_(`devicesModule.dataTypes.${e}`)})),P=a({...z(u.value?.schemas?.channelPropertyAddFormSchema||Ie),id:n,type:s,channel:c,category:b.generic,name:``,permissions:[],dataType:p.unknown,format:null,invalid:null,step:null,enumValues:[],minValue:void 0,maxValue:void 0,enterValue:!1,value:void 0}),I=w(e(P)),L=r(void 0),R=r(!1),B=async()=>{if(L.value.clearValidate(),!await L.value.validate())throw new X(`Form not valid`);let e=c??P.channel;if(!e)throw new X(`Missing channel identifier`);if(P.name===``&&(P.name=null),!P.category)throw new X(`Missing data type definition`);P.dataType===p.enum?P.format=P.enumValues:[p.char,p.uchar,p.short,p.ushort,p.int,p.uint,p.float].includes(P.dataType)&&(P.format=[typeof P.minValue==`string`&&P.minValue!==``?Number(P.minValue):typeof P.minValue==`number`?P.minValue:null,typeof P.maxValue==`string`&&P.maxValue!==``?Number(P.maxValue):typeof P.maxValue==`number`?P.maxValue:null]),P.enterValue||delete P.value;let t=(u.value?.schemas?.channelPropertyAddFormSchema||Ie).safeParse(P);if(!t.success)throw y.error(`Schema validation failed with:`,t.error),new X(`Failed to validate create channel property model.`);x.value=K.WORKING;let r=_(`devicesModule.messages.channelsProperties.notCreated`,{device:P.name});try{await f.add({id:n,channelId:e,draft:!1,data:{...t.data,type:s}})}catch(e){throw x.value=K.ERROR,S=window.setTimeout(V,2e3),e instanceof Y&&e.code===422?v.error(e.message):v.error(r),e}return x.value=K.OK,S=window.setTimeout(V,2e3),v.success(_(`devicesModule.messages.channelsProperties.created`,{device:P.name})),`added`},V=()=>{window.clearTimeout(S),x.value=K.NONE};return h().catch(()=>{}),o(P,()=>{R.value=!(0,q.isEqual)(e(P),I)}),o(()=>P.category,t=>{let n=Se(C.value?.category??M.generic,t);n&&(I.permissions=n.permissions,I.dataType=n.data_type,P.permissions=n.permissions,P.dataType=n.data_type,n.invalid!==void 0&&(I.invalid=n.invalid,P.invalid=n.invalid),n.step!==void 0&&(I.step=n.step,P.step=n.step),I.dataType===p.enum?(I.enumValues=n.format??[],I.minValue=void 0,I.maxValue=void 0,P.enumValues=n.format??[],P.minValue=void 0,P.maxValue=void 0):[p.char,p.uchar,p.short,p.ushort,p.int,p.uint,p.float].includes(P.dataType)?(I.enumValues=[],I.minValue=n.format?.[0],I.maxValue=n.format?.[1],P.enumValues=[],P.minValue=n.format?.[0],P.maxValue=n.format?.[1]):(I.enumValues=[],I.minValue=void 0,I.maxValue=void 0,P.enumValues=[],P.minValue=void 0,P.maxValue=void 0),R.value=!(0,q.isEqual)(e(P),I))},{immediate:!0}),o(()=>D.value,e=>{e.length&&e[0]&&(P.category=e[0].value,I.category=e[0].value)},{immediate:!0}),{categoriesOptions:D,channelsOptions:k,permissionsOptions:j,dataTypesOptions:N,model:P,formEl:L,formChanged:R,submit:B,clear:V,formResult:x,loadingChannels:g}},Be=({property:n,messages:s})=>{let c=F(),{element:l}=Re({type:n.type}),u=c.getStore(W),{channels:f,fetchChannels:m,areLoading:h}=ce(),{t:g}=i(),_=A(),v=d(),y=r(K.NONE),x,S=[],C,T;n.dataType===p.enum?S=n.format?n.format.map(e=>e?.toString()||``):[]:[p.char,p.uchar,p.short,p.ushort,p.int,p.uint,p.float].includes(n.dataType)&&Array.isArray(n.format)&&n.format.length===2&&(C=n.format[0],T=n.format[1]);let E=t(()=>f.value.find(e=>e.id===n.channel)??null),D=t(()=>E.value?u.findForChannel(E.value.id).filter(e=>e.id!==n.id).map(e=>e.category):[]),k=t(()=>E.value?xe[E.value.category]??null:null),j=t(()=>k.value===null?[]:Object.values(b).filter(e=>k.value?.required.includes(e)||k.value?.optional.includes(e)).filter(e=>!D.value.includes(e)).map(e=>({value:e,label:g(`devicesModule.categories.channelsProperties.${e}`)}))),M=t(()=>f.value.map(e=>({value:e.id,label:e.name}))),N=Object.values(O).map(e=>({value:e,label:g(`devicesModule.permissions.${e}`)})),P=Object.values(p).map(e=>({value:e,label:g(`devicesModule.dataTypes.${e}`)})),I=a({...n,format:e(n.format),value:n.value?.value??null,enumValues:S,minValue:C,maxValue:T,enterValue:!1}),L=w(e(I)),R=r(void 0),z=r(!1),B=async()=>{let t=n.draft,r=s&&s.error?s.error:n.draft?g(`devicesModule.messages.channelsProperties.notCreated`,{property:n.name??g(`devicesModule.categories.channelsProperties.${n.category}`)}):g(`devicesModule.messages.channelsProperties.notEdited`,{property:n.name??g(`devicesModule.categories.channelsProperties.${n.category}`)});if(R.value.clearValidate(),!await R.value.validate())throw new X(`Form not valid`);I.name===``&&(I.name=null),n.dataType===p.enum?I.format=I.enumValues:[p.char,p.uchar,p.short,p.ushort,p.int,p.uint,p.float].includes(n.dataType)&&(I.format=[I.minValue??null,I.maxValue??null]),I.enterValue||delete I.value;let i=(l.value?.schemas?.channelPropertyEditFormSchema||Le).safeParse(I);if(!i.success)throw v.error(`Schema validation failed with:`,i.error),new X(`Failed to validate edit channel property model.`);y.value=K.WORKING;try{await u.edit({id:n.id,channelId:n.channel,data:{...i.data,type:n.type}}),n.draft&&await u.save({id:n.id,channelId:n.channel})}catch(e){throw y.value=K.ERROR,x=window.setTimeout(V,2e3),e instanceof Y&&e.code===422?_.error(e.message):_.error(r),e}return y.value=K.OK,x=window.setTimeout(V,2e3),t?(_.success(g(s&&s.success?s.success:`devicesModule.messages.channelsProperties.created`,{property:n.name??g(`devicesModule.categories.channelsProperties.${n.category}`)})),`added`):(_.success(g(s&&s.success?s.success:`devicesModule.messages.channelsProperties.edited`,{property:n.name??g(`devicesModule.categories.channelsProperties.${n.category}`)})),z.value=!1,L=w(e(I)),`saved`)},V=()=>{window.clearTimeout(x),y.value=K.NONE};return m().catch(()=>{}),o(I,()=>{z.value=!(0,q.isEqual)(e(I),L)}),{categoriesOptions:j,channelsOptions:M,permissionsOptions:N,dataTypesOptions:P,model:I,formEl:R,formChanged:z,submit:B,clear:V,formResult:y,loadingChannels:h}},Ve=({id:e})=>{let n=F().getStore(U),{data:r,semaphore:i}=T(n);return{device:t(()=>{let t=s(e);return t===null?null:r.value[t]??null}),isLoading:t(()=>{let t=s(e);return i.value.fetching.item.includes(t)?!0:(r.value[t]??null)===null&&i.value.fetching.items}),fetchDevice:async()=>{let t=s(e);(r.value[t]??null)?.draft||await n.get({id:t})}}},$={search:void 0,types:[],state:`all`,states:[],categories:[],enabled:`all`,validation:`all`},He={by:`name`,dir:`asc`},Ue=()=>{let e=F(),n=e.getStore(U),i=e.getStore(G),{firstLoad:a,semaphore:s}=T(n),{filters:c,sort:l,pagination:d,reset:f}=N({key:`${te}:devices:list`,filters:{schema:le,defaults:$},sort:{defaults:[He]},pagination:{defaults:{page:1,size:10}},syncQuery:!0,version:1}),p=t(()=>c.value.search!==$.search||!(0,q.isEqual)(c.value.types,$.types)||c.value.state!==$.state||!(0,q.isEqual)(c.value.states,$.states)||!(0,q.isEqual)(c.value.categories,$.categories)||!(0,q.isEqual)(c.value.enabled,$.enabled)||c.value.validation!==$.validation),m=r(d.value.size||10),h=r(d.value.page||1),g=r(l.value.length>0?l.value[0]?.by:void 0),_=r(l.value.length>0?l.value[0]?.dir??null:null),v=r(!1),y=e=>i.findById(e)?.isValid??null,b=t(()=>B(n.findAll().filter(e=>!e.draft&&(v.value||!e.hidden)&&(!c.value.search||e.id.toLowerCase().includes(c.value.search.toLowerCase())||e.name.toLowerCase().includes(c.value.search.toLowerCase())||e.description?.toLowerCase().includes(c.value.search.toLowerCase())||e.identifier?.toLowerCase().includes(c.value.search.toLowerCase()))&&(c.value.types.length===0||c.value.types.includes(e.type))&&(c.value.categories.length===0||c.value.categories.includes(e.category))&&(c.value.enabled===`all`||c.value.enabled===`enabled`&&e.enabled||c.value.enabled===`disabled`&&!e.enabled)&&(c.value.states.length===0||c.value.states.includes(e.status?.status??u.unknown))&&(c.value.state===`all`||c.value.state===`online`&&[u.ready,u.connected,u.running].includes(e.status.status)||c.value.state===`offline`&&[u.disconnected,u.stopped,u.lost,u.unknown].includes(e.status.status))&&(c.value.validation===`all`||c.value.validation===`valid`&&y(e.id)===!0||c.value.validation===`invalid`&&y(e.id)===!1)),[e=>g.value===`state`?e.status?.status??u.unknown:e[g.value]??``],[_.value===`asc`?`asc`:`desc`])),x=t(()=>{let e=(h.value-1)*m.value,t=e+m.value;return b.value.slice(e,t)}),S=async()=>{await n.fetch({hidden:v.value?C.all:C.false})},w=t(()=>s.value.fetching.items||!a.value),E=t(()=>a.value),D=t(()=>n.findAll().filter(e=>!e.draft&&(v.value||!e.hidden)).length);return o(()=>d.value,e=>{h.value=e.page??1,m.value=e.size??10},{deep:!0}),o(()=>h.value,e=>{d.value.page=e}),o(()=>m.value,e=>{d.value.size=e}),o(()=>_.value,e=>{g.value===void 0||e===null?l.value=[]:l.value=[{by:g.value,dir:e}]}),o(()=>g.value,e=>{e===void 0?l.value=[]:l.value=[{by:e,dir:_.value}]}),{devices:b,devicesPaginated:x,totalRows:D,areLoading:w,loaded:E,fetchDevices:S,filters:c,filtersActive:p,paginateSize:m,paginatePage:h,sortBy:g,sortDir:_,resetFilter:f,showHidden:v}},We=()=>{let{t:e}=i(),t=A(),n=F().getStore(U);return{remove:async r=>{let i=n.findById(r);if(i===null)throw new J(`Something went wrong, device can't be loaded`);S.confirm(e(`devicesModule.texts.devices.confirmRemove`,{device:i.name}),e(`devicesModule.headings.devices.remove`),{confirmButtonText:e(`devicesModule.buttons.yes.title`),cancelButtonText:e(`devicesModule.buttons.no.title`),type:`warning`}).then(async()=>{try{await n.remove({id:i.id}),t.success(e(`devicesModule.messages.devices.removed`,{device:i.name}))}catch(n){if(n instanceof Y&&n.code===404){let n=e(`devicesModule.messages.devices.notFound`,{device:i.name});t.error(n)}else if(n instanceof Y&&n.code===422)t.error(n.message);else{let n=e(`devicesModule.messages.devices.notRemoved`,{device:i.name});t.error(n)}}}).catch(()=>{t.info(e(`devicesModule.messages.devices.removeCanceled`,{device:i.name}))})},bulkRemove:async r=>{if(r.length!==0){try{await S.confirm(e(`devicesModule.texts.devices.confirmBulkRemove`,{count:r.length}),e(`devicesModule.headings.devices.bulkRemove`),{confirmButtonText:e(`devicesModule.buttons.yes.title`),cancelButtonText:e(`devicesModule.buttons.no.title`),type:`warning`})}catch{return}try{let i=await n.bulkRemove({ids:r.map(e=>e.id)});i.succeeded.length>0&&t.success(e(`devicesModule.messages.devices.bulkRemoved`,{count:i.succeeded.length})),i.failed.length>0&&t.error(e(`devicesModule.messages.devices.bulkRemoveFailed`,{count:i.failed.length}))}catch{t.error(e(`devicesModule.messages.devices.bulkRemoveFailed`,{count:r.length}))}}},bulkEnable:async r=>{if(r.length!==0){try{await S.confirm(e(`devicesModule.texts.devices.confirmBulkEnable`,{count:r.length}),e(`devicesModule.headings.devices.bulkEnable`),{confirmButtonText:e(`devicesModule.buttons.yes.title`),cancelButtonText:e(`devicesModule.buttons.no.title`),type:`info`})}catch{t.info(e(`devicesModule.messages.devices.bulkEnableCanceled`));return}try{let i=await n.bulkSetEnabled({ids:r.map(e=>e.id),enabled:!0});i.succeeded.length>0&&t.success(e(`devicesModule.messages.devices.bulkEnabled`,{count:i.succeeded.length})),i.failed.length>0&&t.error(e(`devicesModule.messages.devices.bulkEnableFailed`,{count:i.failed.length}))}catch{t.error(e(`devicesModule.messages.devices.bulkEnableFailed`,{count:r.length}))}}},bulkDisable:async r=>{if(r.length!==0){try{await S.confirm(e(`devicesModule.texts.devices.confirmBulkDisable`,{count:r.length}),e(`devicesModule.headings.devices.bulkDisable`),{confirmButtonText:e(`devicesModule.buttons.yes.title`),cancelButtonText:e(`devicesModule.buttons.no.title`),type:`warning`})}catch{t.info(e(`devicesModule.messages.devices.bulkDisableCanceled`));return}try{let i=await n.bulkSetEnabled({ids:r.map(e=>e.id),enabled:!1});i.succeeded.length>0&&t.success(e(`devicesModule.messages.devices.bulkDisabled`,{count:i.succeeded.length})),i.failed.length>0&&t.error(e(`devicesModule.messages.devices.bulkDisableFailed`,{count:i.failed.length}))}catch{t.error(e(`devicesModule.messages.devices.bulkDisableFailed`,{count:r.length}))}}}}},Ge=({id:e})=>{let n=F().getStore(U);return{icon:t(()=>{switch(n.findById(e)?.category){case D.input_controller:return`mdi:gesture-tap-button`;default:return`mdi:devices`}})}},Ke=({id:e})=>{let n=F(),r=n.getStore(U),i=n.getStore(H),a=e=>r.findById(e),o=e=>be[e.category]??null;return{canAddAnotherChannel:t(()=>{let t=a(typeof e==`string`?e:e.value);if(t===null)return!0;let{required:n,optional:r,multiple:s}=o(t)??{required:[],optional:[]},c=[...n,...r],l=i.findForDevice(t.id).map(e=>e.category);return c.filter(e=>!l.includes(e)).length>0||s!==void 0&&s.length>0}),missingRequiredChannels:t(()=>{let t=a(typeof e==`string`?e:e.value);if(t===null)throw new J(`Something went wrong, device can't be loaded`);let{required:n}=o(t)??{required:[]},r=i.findForDevice(t.id).map(e=>e.category);return n.filter(e=>!r.includes(e))})}},qe=v({id:I().uuid().optional(),type:I().trim().nonempty(),category:j(D).default(D.generic),identifier:I().trim().nonempty().nullable().optional(),name:I().trim().nonempty(),description:I().trim().transform(e=>e===``?null:e).nullable().optional(),enabled:P().default(!0).optional()}),Je=v({id:I().uuid(),type:I().trim().nonempty(),category:j(D).default(D.generic),identifier:I().trim().nonempty().nullable().optional(),name:I().trim().nonempty().optional(),description:I().trim().transform(e=>e===``?null:e).nullable().optional(),enabled:P().optional(),roomId:I().uuid().nullable().optional()}),Ye=({type:e})=>{let{getByType:n}=ne(),r=t(()=>n(e));return{plugin:r,element:t(()=>(r.value?.elements??[]).find(t=>t.type===e&&(t.modules===void 0||t.modules.includes(`devices-module`))))}},Xe=({id:t,type:n})=>{let s=F(),{element:c}=Ye({type:n}),l=s.getStore(U),{t:u}=i(),f=A(),p=d(),m=r(K.NONE),h,g=Object.values(D).map(e=>({value:e,label:u(`devicesModule.categories.devices.${e}`)})),_=a({...z(c.value?.schemas?.deviceAddFormSchema||qe),id:t,type:n,category:D.generic,name:``,description:``}),v=w(e(_)),y=r(void 0),b=r(!1),x=async()=>{if(y.value.clearValidate(),!await y.value.validate())throw new X(`Form not valid`);let e=(c.value?.schemas?.deviceAddFormSchema||qe).safeParse(_);if(!e.success)throw p.error(`Schema validation failed with:`,e.error),new X(`Failed to validate create device model.`);m.value=K.WORKING;let r=u(`devicesModule.messages.devices.notCreated`,{device:_.name});try{await l.add({id:t,draft:!1,data:{...e.data,type:n}})}catch(e){throw m.value=K.ERROR,h=window.setTimeout(S,2e3),e instanceof Y&&e.code===422?f.error(e.message):f.error(r),e}return m.value=K.OK,h=window.setTimeout(S,2e3),f.success(u(`devicesModule.messages.devices.created`,{device:_.name})),`added`},S=()=>{window.clearTimeout(h),m.value=K.NONE};return o(_,()=>{b.value=!(0,q.isEqual)(e(_),v)}),{categoriesOptions:g,model:_,formEl:y,formChanged:b,submit:x,clear:S,formResult:m}},Ze=({device:t,messages:n})=>{let s=F(),{element:c}=Ye({type:t.type}),l=s.getStore(U),{t:u}=i(),f=A(),p=d(),m=r(K.NONE),h,g=Object.values(D).map(e=>({value:e,label:u(`devicesModule.categories.devices.${e}`)})),_=a(t),v=w(e(_)),y=r(void 0),b=r(!1),x=async()=>{let r=t.draft,i=n&&n.error?n.error:t.draft?u(`devicesModule.messages.devices.notCreated`,{device:t.name}):u(`devicesModule.messages.devices.notEdited`,{device:t.name});if(y.value.clearValidate(),!await y.value.validate())throw new X(`Form not valid`);let a=(c.value?.schemas?.deviceEditFormSchema||Je).safeParse(_);if(!a.success)throw p.error(`Schema validation failed with:`,a.error),new X(`Failed to validate edit device model.`);let o={...a.data};(0,q.isEqual)(o.roomId,v.roomId)&&delete o.roomId,m.value=K.WORKING;try{await l.edit({id:t.id,data:{...o,type:t.type}}),t.draft&&await l.save({id:t.id})}catch(e){throw m.value=K.ERROR,h=window.setTimeout(S,2e3),e instanceof Y&&e.code===422?f.error(e.message):f.error(i),e}return m.value=K.OK,h=window.setTimeout(S,2e3),r?(f.success(u(n&&n.success?n.success:`devicesModule.messages.devices.created`,{device:t.name})),`added`):(f.success(u(n&&n.success?n.success:`devicesModule.messages.devices.edited`,{device:t.name})),b.value=!1,v=w(e(_)),`saved`)},S=()=>{window.clearTimeout(h),m.value=K.NONE};return o(_,()=>{b.value=!(0,q.isEqual)(e(_),v)}),{categoriesOptions:g,model:_,formEl:y,formChanged:b,submit:x,clear:S,formResult:m}},Qe=()=>{let e=F().getStore(G),{data:n,semaphore:r,firstLoad:i}=T(e);return{validation:t(()=>n.value),summary:t(()=>n.value?.summary??null),invalidDevices:t(()=>n.value?n.value.devices.filter(e=>!e.isValid):[]),isLoading:t(()=>r.value.fetching.items),isLoaded:t(()=>i.value),fetchValidation:async()=>{await e.fetch()},findById:t=>e.findById(t),isDeviceValid:t=>{let n=e.findById(t);return n?n.isValid:null},getDeviceIssueCount:t=>{let n=e.findById(t);return n?n.issues.length:0}}},$e=({id:e})=>{let n=F().getStore(G),{semaphore:r}=T(n);return{validation:t(()=>n.findById(typeof e==`string`?e:e.value)),isValid:t(()=>{let t=n.findById(typeof e==`string`?e:e.value);return t?t.isValid:null}),issues:t(()=>{let t=n.findById(typeof e==`string`?e:e.value);return t?t.issues:[]}),errorCount:t(()=>{let t=n.findById(typeof e==`string`?e:e.value);return t?t.issues.filter(e=>e.severity===`error`).length:0}),warningCount:t(()=>{let t=n.findById(typeof e==`string`?e:e.value);return t?t.issues.filter(e=>e.severity===`warning`).length:0}),isLoading:t(()=>r.value.fetching.item.includes(typeof e==`string`?e:e.value)),fetchValidation:async()=>{await n.get({id:typeof e==`string`?e:e.value})}}},et=300,tt=1e4,nt=({id:e})=>{let i=F(),a=i.getStore(U),s=i.getStore(H),c=i.getStore(W),{data:l,semaphore:u}=T(a),{data:d,semaphore:p,firstLoad:m}=T(s),{semaphore:h,firstLoad:g}=T(c),{sendCommand:_}=f(),v={},y={},b={},x=r({}),S=r({}),C=t(()=>e===null?null:l.value[e]??null),w=t(()=>Object.values(d.value).filter(t=>t.device===e&&t.category!==M.device_information)),E=t(()=>w.value.filter(e=>e.category===M.button||e.category===M.binary_input||e.category===M.analog_input?!1:c.findForChannel(e.id).some(e=>e.permissions.includes(O.rw)||e.permissions.includes(O.wo)))),D=t(()=>E.value.length>0),k=e=>c.findForChannel(e),A=e=>e.permissions.includes(O.rw)||e.permissions.includes(O.wo),j=e=>{let t=x.value[e];return t===void 0?c.findById(e)?.value?.value??null:t},N=e=>S.value[e]??!1,P=(e,t)=>{if(t!==void 0){let n=x.value[e];if(n!==t&&String(n)!==String(t))return}delete x.value[e],b[e]&&(clearTimeout(b[e]),delete b[e])},I=(e,t)=>{b[e]&&clearTimeout(b[e]),b[e]=setTimeout(()=>{let n=x.value[e];(n===t||String(n)===String(t))&&delete x.value[e],delete b[e]},tt)},L=async(t,n,r)=>c.findById(n)?(v[n]&&(clearTimeout(v[n]),delete v[n],y[n]&&(y[n](!1),delete y[n])),x.value[n]=r,new Promise(i=>{y[n]=i;let a=setTimeout(async()=>{delete y[n],S.value[n]=!0;try{await _(ee.CHANNEL_PROPERTY_SET,{context:{origin:`admin`},properties:[{device:e,channel:t,property:n,value:r}]},`DevicesModule.Internal.SetPropertyValue`)===!0?(I(n,r),i(!0)):(P(n,r),i(!1))}catch{P(n,r),i(!1)}finally{S.value[n]=!1,v[n]===a&&delete v[n]}},et);v[n]=a})):!1,R=async()=>{(e in l.value?l.value[e]:null)?.draft||await a.get({id:e})},z=async()=>{await s.fetch({deviceId:e})},B=async()=>{let t=Object.values(d.value).filter(t=>t.device===e);for(let e of t)await c.fetch({channelId:e.id})},V=t(()=>{if(u.value.fetching.item.includes(e)||p.value.fetching.items.includes(e))return!0;for(let e of w.value)if(h.value.fetching.items.includes(e.id))return!0;return!1}),G=t(()=>m.value.includes(e)),K=t(()=>{if(!G.value)return!1;for(let e of w.value)if(!g.value.includes(e.id))return!1;return!0});return o(()=>{let e={};for(let t of Object.keys(x.value)){let n=c.findById(t);n&&(e[t]=n.value?.value??null)}return e},e=>{for(let[t,n]of Object.entries(x.value)){let r=e[t];(r===n||String(r)===String(n))&&P(t)}},{deep:!0}),n(()=>{for(let e of Object.keys(v))clearTimeout(v[e]),delete v[e],y[e]&&(y[e](!1),delete y[e]);for(let e of Object.keys(b))clearTimeout(b[e]),delete b[e]}),{device:C,channels:w,controllableChannels:E,hasControllableProperties:D,isLoading:V,areChannelsLoaded:G,arePropertiesLoaded:K,fetchDevice:R,fetchChannels:z,fetchProperties:B,getPropertiesForChannel:k,isPropertyWritable:A,getPropertyValue:j,isPropertyLoading:N,setPropertyValue:L}},rt=({deviceId:e})=>{let n=F().getStore(V),{firstLoad:r,semaphore:i}=T(n);return{controls:t(()=>n.findForDevice(typeof e==`string`?e:e.value)),areLoading:t(()=>i.value.fetching.items.includes(typeof e==`string`?e:e.value)),loaded:t(()=>r.value.includes(typeof e==`string`?e:e.value)),fetchControls:async()=>n.fetch({deviceId:typeof e==`string`?e:e.value})}},it=e=>{let n=E(),i=d(),a=r({}),u=r(!1),f=r(!1),p=r(!1),m=r(void 0),h=r(!1),_=null,v=0,y=t(()=>Object.values(a.value).sort((e,t)=>new Date(t.ts).getTime()-new Date(e.ts).getTime())),b=t(()=>{let e=[g.warn,g.error,g.fatal,g.fail];return y.value.filter(t=>e.includes(t.type))}),x=t(()=>b.value.length),S=t(()=>x.value>0),C=async()=>{let t=s(e.deviceId);_=t,v++;let r=v;f.value=!0;try{let{data:e,error:o}=await n.client.GET(`/${c}/${re}/logs`,{params:{query:{resource:t,limit:50}}});if(_!==t||v!==r)return;if(e!==void 0){let t=Object.fromEntries(e.data.map(e=>{let t=ie(e);return[t.id,t]}));a.value=t,p.value=!0,u.value=e.metadata.has_more,m.value=e.metadata.next_cursor}else o&&i.error(`Failed to fetch device logs:`,o)}catch(e){_===t&&v===r&&i.error(`Error fetching device logs:`,e)}finally{_===t&&v===r&&(f.value=!1)}},w=async()=>{if(f.value||!u.value||!m.value)return;let t=s(e.deviceId),r=m.value,o=v;f.value=!0;try{let{data:e,error:s}=await n.client.GET(`/${c}/${re}/logs`,{params:{query:{resource:t,after_id:r,limit:50}}});if(_!==t||v!==o)return;if(e!==void 0){let t=Object.fromEntries(e.data.map(e=>{let t=ie(e);return[t.id,t]}));a.value={...a.value,...t},u.value=e.metadata.has_more,m.value=e.metadata.next_cursor}else s&&i.error(`Failed to load more device logs:`,s)}catch(e){_===t&&v===o&&i.error(`Error loading more device logs:`,e)}finally{_===t&&v===o&&(f.value=!1)}},T=async()=>{a.value={},m.value=void 0,u.value=!1,p.value=!1,await C()},D=null;return o(()=>h.value,e=>{D&&=(clearInterval(D),null),e&&(D=setInterval(()=>{f.value||C()},3e3))}),l(()=>{D&&=(clearInterval(D),null)}),o(()=>s(e.deviceId),()=>{T()}),{logs:y,alertLogs:b,alertCount:x,hasAlerts:S,hasMore:u,isLoading:f,loaded:p,live:h,fetchLogs:C,loadMoreLogs:w,refreshLogs:T}};export{be as A,oe as B,je as C,De as D,Oe as E,he as F,Y as H,me as I,pe as L,Se as M,_e as N,Ce as O,ge as P,ce as R,Ne as S,ke as T,J as U,ae as V,X as W,ze as _,Qe as a,Fe as b,Ye as c,Ke as d,Ge as f,Be as g,Ve as h,$e as i,ye as j,xe as k,qe as l,Ue as m,rt as n,Ze as o,We as p,nt as r,Xe as s,it as t,Je as u,Ie as v,Ae as w,Pe as x,Le as y,se as z};
|