homebridge-config-ui-x 5.0.0-beta.65 → 5.0.0-beta.66

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (81) hide show
  1. package/CHANGELOG.md +3 -3
  2. package/package.json +3 -3
  3. package/public/{chunk-DUWGZKLB.js → chunk-26MB4YAS.js} +1 -1
  4. package/public/{chunk-LGLHTUN6.js → chunk-34Y7O6R2.js} +1 -1
  5. package/public/{chunk-CQD7P6KC.js → chunk-42GTPTGJ.js} +1 -1
  6. package/public/chunk-44JCPLK6.js +1 -0
  7. package/public/chunk-4NDVDC6H.js +1 -0
  8. package/public/{chunk-JVFGZSJB.js → chunk-4WQMB6B5.js} +1 -1
  9. package/public/{chunk-UDP4HREL.js → chunk-53KEMH5C.js} +1 -1
  10. package/public/{chunk-KH2WPWXZ.js → chunk-5DGIHY4Y.js} +1 -1
  11. package/public/chunk-5PTZAW2P.js +1 -0
  12. package/public/chunk-6YDOWLMV.js +1 -0
  13. package/public/{chunk-S5NUFAL7.js → chunk-75JN24T4.js} +1 -1
  14. package/public/{chunk-IAYHJKHY.js → chunk-7DXIWYTO.js} +1 -1
  15. package/public/{chunk-S4X5PXZZ.js → chunk-ASLZVQ25.js} +1 -1
  16. package/public/{chunk-NTC6BDCE.js → chunk-BDHH5KR5.js} +1 -1
  17. package/public/chunk-BRL7S735.js +1 -0
  18. package/public/{chunk-AQDLLCZZ.js → chunk-CHR2UZMG.js} +1 -1
  19. package/public/chunk-COOU6HZK.js +1 -0
  20. package/public/{chunk-PWJICLC7.js → chunk-CTUFSWR6.js} +1 -1
  21. package/public/chunk-CZ3VWALC.js +1 -0
  22. package/public/{chunk-NGF7BR6V.js → chunk-D7SDIHXD.js} +1 -1
  23. package/public/{chunk-MIW3BG7R.js → chunk-FIBL72PP.js} +1 -1
  24. package/public/{chunk-QFKYBG6C.js → chunk-G33KVSXU.js} +1 -1
  25. package/public/{chunk-DYPGKNZ3.js → chunk-GBZFCTCI.js} +1 -1
  26. package/public/{chunk-TTUDZ6LL.js → chunk-GPRB5JHY.js} +1 -1
  27. package/public/{chunk-VLEDXEK4.js → chunk-GSY7224J.js} +1 -1
  28. package/public/chunk-GWL6YZ7A.js +1 -0
  29. package/public/{chunk-RZSGKXID.js → chunk-I6MBHASN.js} +1 -1
  30. package/public/{chunk-DUTRSANX.js → chunk-ICLWFJ2M.js} +1 -1
  31. package/public/{chunk-GWRNCESK.js → chunk-IJ2N7PG5.js} +1 -1
  32. package/public/{chunk-ZS2VZFYT.js → chunk-ILZG6FIW.js} +1 -1
  33. package/public/{chunk-AVBFOIGN.js → chunk-IPUGJFQW.js} +1 -1
  34. package/public/chunk-IQ2LYYHA.js +1 -0
  35. package/public/{chunk-LLMM6N7Q.js → chunk-IQBVR7GJ.js} +1 -1
  36. package/public/chunk-JHTZ6IUO.js +1 -0
  37. package/public/{chunk-SYZK5QD2.js → chunk-K75IQZB7.js} +1 -1
  38. package/public/chunk-KBTQA6WH.js +1 -0
  39. package/public/{chunk-YKI5SVNQ.js → chunk-KMJ3DQZ2.js} +1 -1
  40. package/public/{chunk-XK4AFP7R.js → chunk-KSKRCPSQ.js} +1 -1
  41. package/public/{chunk-DVUBQGWS.js → chunk-LEJURWWR.js} +1 -1
  42. package/public/chunk-LM4G7OWP.js +1 -0
  43. package/public/{chunk-V3ECBMCP.js → chunk-LTVIEZZS.js} +1 -1
  44. package/public/{chunk-BYS5BAUT.js → chunk-M7NQDZAF.js} +1 -1
  45. package/public/chunk-MDKM7UQZ.js +1 -0
  46. package/public/chunk-OQOUKWYY.js +1 -0
  47. package/public/{chunk-OYPRTXUQ.js → chunk-OXPMTT7N.js} +1 -1
  48. package/public/{chunk-5MQLPVJR.js → chunk-QLRX44WT.js} +1 -1
  49. package/public/chunk-RKMT73OG.js +1 -0
  50. package/public/{chunk-JTK347ES.js → chunk-RTYQOZBT.js} +1 -1
  51. package/public/{chunk-A7ZOFHPO.js → chunk-SCHLH2W2.js} +1 -1
  52. package/public/{chunk-NVKRGSKT.js → chunk-SCX5JGYV.js} +1 -1
  53. package/public/{chunk-ZSRQMXG3.js → chunk-T2Q2X464.js} +1 -1
  54. package/public/{chunk-VTJSIOTB.js → chunk-VAC5IU7L.js} +1 -1
  55. package/public/{chunk-RBXJVHB2.js → chunk-VTRJFIUN.js} +1 -1
  56. package/public/{chunk-U7FHB2QF.js → chunk-W4MPZ3V6.js} +1 -1
  57. package/public/chunk-XAK43JG3.js +1 -0
  58. package/public/{chunk-NBHHUCAT.js → chunk-XSFHOYJ6.js} +1 -1
  59. package/public/{chunk-RZI4MY7E.js → chunk-YQHSUEEZ.js} +1 -1
  60. package/public/{chunk-RYTVZIUT.js → chunk-YUMRPV23.js} +1 -1
  61. package/public/{chunk-5SJSTG4A.js → chunk-YYCLSWWN.js} +1 -1
  62. package/public/{chunk-UE2O2ULW.js → chunk-ZRICTXTP.js} +1 -1
  63. package/public/index.html +1 -1
  64. package/public/main-3WNAT3VR.js +1 -0
  65. package/public/chunk-262F7OSK.js +0 -1
  66. package/public/chunk-2E47VV3Y.js +0 -1
  67. package/public/chunk-2MWRCYMR.js +0 -1
  68. package/public/chunk-7472NWH7.js +0 -1
  69. package/public/chunk-BWI7A35X.js +0 -1
  70. package/public/chunk-BWQEZHOL.js +0 -1
  71. package/public/chunk-GMCE2L5R.js +0 -1
  72. package/public/chunk-HPN4WLC4.js +0 -1
  73. package/public/chunk-IOKFUX6T.js +0 -1
  74. package/public/chunk-JX7XO7MZ.js +0 -1
  75. package/public/chunk-N3OYDVSZ.js +0 -1
  76. package/public/chunk-NCGAYWWT.js +0 -1
  77. package/public/chunk-OCQLGYUN.js +0 -1
  78. package/public/chunk-SRPH5WXN.js +0 -1
  79. package/public/chunk-ZEKZOXJ2.js +0 -1
  80. package/public/chunk-ZGK4ZBSV.js +0 -1
  81. package/public/main-MBLH4F6C.js +0 -1
@@ -1 +0,0 @@
1
- import{a as Pn}from"./chunk-XK4AFP7R.js";import{m as pe,n as se}from"./chunk-W2INV3O5.js";import{a as Mn,b as Tn,c as kn,e as ve,l as fe,y as ce}from"./chunk-4UVD743J.js";import{a as Dn}from"./chunk-UDP4HREL.js";import{c as In}from"./chunk-QFKYBG6C.js";import{b as Ze}from"./chunk-RBXJVHB2.js";import{h as En,k as Vn}from"./chunk-JX7XO7MZ.js";import{a as bn,e as di}from"./chunk-GDFC3M3E.js";import{a as wn,b as I}from"./chunk-FETTFNJ2.js";import{$c as H,Ac as ze,Ca as We,Cc as p,Da as dn,Dc as m,Ec as Se,Fa as Pi,G as an,H as Ht,Ha as rt,Jb as V,K as sn,Kb as u,Lb as fn,M as Ce,Ma as mn,Mb as gn,Pb as _,Q as Te,Rb as Ai,Sb as Bi,Tb as Hi,Ub as a,Uc as Sn,Vb as s,Wb as f,X as ln,Xb as hn,Xc as yn,Yb as Cn,_b as oe,a as tn,b as nn,ba as cn,bc as S,cc as h,e as et,fa as pn,fd as at,g as Lr,ga as nt,gb as r,h as ni,ha as St,hd as Ne,i as Di,jb as un,kb as ai,la as Ke,lb as si,ld as pi,ma as O,mb as Ee,mc as c,md as Ot,n as ae,nc as x,ob as vn,oc as y,pc as Z,qc as ut,r as on,rc as _n,s as rn,sc as xn,ta as ot,tb as k,tc as ee,ua as W,ub as yt,uc as te,va as z,vb as bt,vc as ie,w as oi,wb as li,wc as ci,x as ri,yc as ne,zb as M,zc as B}from"./chunk-6ZN4TBLM.js";var Bn=et((xd,An)=>{An.exports=function(n,t){return Array.prototype.slice.call(n,t)}});var On=et((Sd,Hn)=>{var Fr=typeof setImmediate=="function",Oi;Fr?Oi=function(e){setImmediate(e)}:Oi=function(e){setTimeout(e,0)};Hn.exports=Oi});var Rn=et((yd,Nn)=>{"use strict";var Gr=On();Nn.exports=function(n,t,o){n&&Gr(function(){n.apply(o||null,t||[])})}});var Gn=et((bd,Fn)=>{"use strict";var Ln=Bn(),jr=Rn();Fn.exports=function(n,t){var o=t||{},i={};return n===void 0&&(n={}),n.on=function(l,d){return i[l]?i[l].push(d):i[l]=[d],n},n.once=function(l,d){return d._once=!0,n.on(l,d),n},n.off=function(l,d){var b=arguments.length;if(b===1)delete i[l];else if(b===0)i={};else{var w=i[l];if(!w)return n;w.splice(w.indexOf(d),1)}return n},n.emit=function(){var l=Ln(arguments);return n.emitterSnapshot(l.shift()).apply(this,l)},n.emitterSnapshot=function(l){var d=(i[l]||[]).slice(0);return function(){var b=Ln(arguments),w=this||n;if(l==="error"&&o.throws!==!1&&!d.length)throw b.length===1?b[0]:b;return d.forEach(function(G){o.async?jr(G,b,w):G.apply(w,b),G._once&&n.off(l,G)}),n}},n}});var Wn=et((Md,Un)=>{var jn=global.CustomEvent;function Ur(){try{var e=new jn("cat",{detail:{foo:"bar"}});return e.type==="cat"&&e.detail.foo==="bar"}catch{}return!1}Un.exports=Ur()?jn:typeof document<"u"&&typeof document.createEvent=="function"?function(n,t){var o=document.createEvent("CustomEvent");return t?o.initCustomEvent(n,t.bubbles,t.cancelable,t.detail):o.initCustomEvent(n,!1,!1,void 0),o}:function(n,t){var o=document.createEventObject();return o.type=n,t?(o.bubbles=!!t.bubbles,o.cancelable=!!t.cancelable,o.detail=t.detail):(o.bubbles=!1,o.cancelable=!1,o.detail=void 0),o}});var qn=et((Td,$n)=>{"use strict";var zn=[],Ni="",Wr=/^on/;for(Ni in global)Wr.test(Ni)&&zn.push(Ni.slice(2));$n.exports=zn});var Qn=et((kd,Zn)=>{"use strict";var zr=Wn(),$r=qn(),mi=global.document,Kn=qr,Xn=Xr,Nt=[];global.addEventListener||(Kn=Kr,Xn=Yr);Zn.exports={add:Kn,remove:Xn,fabricate:Zr};function qr(e,n,t,o){return e.addEventListener(n,t,o)}function Kr(e,n,t){return e.attachEvent("on"+n,Jr(e,n,t))}function Xr(e,n,t,o){return e.removeEventListener(n,t,o)}function Yr(e,n,t){var o=Yn(e,n,t);if(o)return e.detachEvent("on"+n,o)}function Zr(e,n,t){var o=$r.indexOf(n)===-1?l():i();e.dispatchEvent?e.dispatchEvent(o):e.fireEvent("on"+n,o);function i(){var d;return mi.createEvent?(d=mi.createEvent("Event"),d.initEvent(n,!0,!0)):mi.createEventObject&&(d=mi.createEventObject()),d}function l(){return new zr(n,{detail:t})}}function Qr(e,n,t){return function(i){var l=i||global.event;l.target=l.target||l.srcElement,l.preventDefault=l.preventDefault||function(){l.returnValue=!1},l.stopPropagation=l.stopPropagation||function(){l.cancelBubble=!0},l.which=l.which||l.keyCode,t.call(e,l)}}function Jr(e,n,t){var o=Yn(e,n,t)||Qr(e,n,t);return Nt.push({wrapper:o,element:e,type:n,fn:t}),o}function Yn(e,n,t){var o=ea(e,n,t);if(o){var i=Nt[o].wrapper;return Nt.splice(o,1),i}}function ea(e,n,t){var o,i;for(o=0;o<Nt.length;o++)if(i=Nt[o],i.element===e&&i.type===n&&i.fn===t)return o}});var io=et((wd,to)=>{"use strict";var Jn={},ta="(?:^|\\s)",ia="(?:\\s|$)";function eo(e){var n=Jn[e];return n?n.lastIndex=0:Jn[e]=n=new RegExp(ta+e+ia,"g"),n}function na(e,n){var t=e.className;t.length?eo(n).test(t)||(e.className+=" "+n):e.className=n}function oa(e,n){e.className=e.className.replace(eo(n)," ").trim()}to.exports={add:na,rm:oa}});var uo=et((Ed,mo)=>{"use strict";var ra=Gn(),Mt=Qn(),st=io(),Tt=document,Qe=Tt.documentElement;function aa(e,n){var t=arguments.length;t===1&&Array.isArray(e)===!1&&(n=e,e=[]);var o,i,l,d,b,w,D,G,Y,K,F,xe=null,J,N=n||{};N.moves===void 0&&(N.moves=ao),N.accepts===void 0&&(N.accepts=ao),N.invalid===void 0&&(N.invalid=qt),N.containers===void 0&&(N.containers=e||[]),N.isContainer===void 0&&(N.isContainer=la),N.copy===void 0&&(N.copy=!1),N.copySortSource===void 0&&(N.copySortSource=!1),N.revertOnSpill===void 0&&(N.revertOnSpill=!1),N.removeOnSpill===void 0&&(N.removeOnSpill=!1),N.direction===void 0&&(N.direction="vertical"),N.ignoreInputTextSelection===void 0&&(N.ignoreInputTextSelection=!0),N.mirrorContainer===void 0&&(N.mirrorContainer=Tt.body);var ue=ra({containers:N.containers,start:Mi,end:Ct,cancel:Xt,remove:wt,destroy:ht,canMove:bi,dragging:!1});return N.removeOnSpill===!0&&ue.on("over",It).on("out",Dt),tt(),ue;function Fe(T){return ue.containers.indexOf(T)!==-1||N.isContainer(T)}function tt(T){var j=T?"remove":"add";Rt(Qe,j,"mousedown",qe),Rt(Qe,j,"mouseup",kt)}function Ye(T){var j=T?"remove":"add";Rt(Qe,j,"mousemove",yi)}function pt(T){var j=T?"remove":"add";Mt[j](Qe,"selectstart",zt),Mt[j](Qe,"click",zt)}function ht(){tt(!0),kt({})}function zt(T){J&&T.preventDefault()}function qe(T){w=T.clientX,D=T.clientY;var j=no(T)!==1||T.metaKey||T.ctrlKey;if(!j){var X=T.target,re=dt(X);re&&(J=re,Ye(),T.type==="mousedown"&&(co(X)?X.focus():T.preventDefault()))}}function yi(T){if(J){if(no(T)===0){kt({});return}if(!(T.clientX!==void 0&&Math.abs(T.clientX-w)<=(N.slideFactorX||0)&&T.clientY!==void 0&&Math.abs(T.clientY-D)<=(N.slideFactorY||0))){if(N.ignoreInputTextSelection){var j=lt("clientX",T)||0,X=lt("clientY",T)||0,re=Tt.elementFromPoint(j,X);if(co(re))return}var Ae=J;Ye(!0),pt(),Ct(),$t(Ae);var ke=sa(l);d=lt("pageX",T)-ke.left,b=lt("pageY",T)-ke.top,st.add(K||l,"gu-transit"),Zt(),Vt(T)}}}function dt(T){if(!(ue.dragging&&o)&&!Fe(T)){for(var j=T;Re(T)&&Fe(Re(T))===!1;)if(N.invalid(T,j)||(T=Re(T),!T))return;var X=Re(T);if(X&&!N.invalid(T,j)){var re=N.moves(T,X,j,Lt(T));if(re)return{item:T,source:X}}}}function bi(T){return!!dt(T)}function Mi(T){var j=dt(T);j&&$t(j)}function $t(T){Ti(T.item,T.source)&&(K=T.item.cloneNode(!0),ue.emit("cloned",K,T.item,"copy")),i=T.source,l=T.item,G=Y=Lt(T.item),ue.dragging=!0,ue.emit("drag",l,i)}function qt(){return!1}function Ct(){if(ue.dragging){var T=K||l;_t(T,Re(T))}}function Kt(){J=!1,Ye(!0),pt(!0)}function kt(T){if(Kt(),!!ue.dragging){var j=K||l,X=lt("clientX",T)||0,re=lt("clientY",T)||0,Ae=ro(o,X,re),ke=Yt(Ae,X,re);ke&&(K&&N.copySortSource||!K||ke!==i)?_t(j,ke):N.removeOnSpill?wt():Xt()}}function _t(T,j){var X=Re(T);K&&N.copySortSource&&j===i&&X.removeChild(l),xt(j)?ue.emit("cancel",T,i,i):ue.emit("drop",T,j,i,Y),Et()}function wt(){if(ue.dragging){var T=K||l,j=Re(T);j&&j.removeChild(T),ue.emit(K?"cancel":"remove",T,j,i),Et()}}function Xt(T){if(ue.dragging){var j=arguments.length>0?T:N.revertOnSpill,X=K||l,re=Re(X),Ae=xt(re);Ae===!1&&j&&(K?re&&re.removeChild(K):i.insertBefore(X,G)),Ae||j?ue.emit("cancel",X,i,i):ue.emit("drop",X,re,i,Y),Et()}}function Et(){var T=K||l;Kt(),Je(),T&&st.rm(T,"gu-transit"),F&&clearTimeout(F),ue.dragging=!1,xe&&ue.emit("out",T,xe,i),ue.emit("dragend",T),i=l=K=G=Y=F=xe=null}function xt(T,j){var X;return j!==void 0?X=j:o?X=Y:X=Lt(K||l),T===i&&X===G}function Yt(T,j,X){for(var re=T;re&&!Ae();)re=Re(re);return re;function Ae(){var ke=Fe(re);if(ke===!1)return!1;var it=Qt(re,T),Ve=Pt(re,it,j,X),Ue=xt(re,Ve);return Ue?!0:N.accepts(l,re,i,Ve)}}function Vt(T){if(!o)return;T.preventDefault();var j=lt("clientX",T)||0,X=lt("clientY",T)||0,re=j-d,Ae=X-b;o.style.left=re+"px",o.style.top=Ae+"px";var ke=K||l,it=ro(o,j,X),Ve=Yt(it,j,X),Ue=Ve!==null&&Ve!==xe;(Ue||Ve===null)&&(Jt(),xe=Ve,At());var Oe=Re(ke);if(Ve===i&&K&&!N.copySortSource){Oe&&Oe.removeChild(ke);return}var Ie,me=Qt(Ve,it);if(me!==null)Ie=Pt(Ve,me,j,X);else if(N.revertOnSpill===!0&&!K)Ie=G,Ve=i;else{K&&Oe&&Oe.removeChild(ke);return}(Ie===null&&Ue||Ie!==ke&&Ie!==Lt(ke))&&(Y=Ie,Ve.insertBefore(ke,Ie),ue.emit("shadow",ke,Ve,i));function Ge(ei){ue.emit(ei,ke,xe,i)}function At(){Ue&&Ge("over")}function Jt(){xe&&Ge("out")}}function It(T){st.rm(T,"gu-hide")}function Dt(T){ue.dragging&&st.add(T,"gu-hide")}function Zt(){if(!o){var T=l.getBoundingClientRect();o=l.cloneNode(!0),o.style.width=so(T)+"px",o.style.height=lo(T)+"px",st.rm(o,"gu-transit"),st.add(o,"gu-mirror"),N.mirrorContainer.appendChild(o),Rt(Qe,"add","mousemove",Vt),st.add(N.mirrorContainer,"gu-unselectable"),ue.emit("cloned",o,l,"mirror")}}function Je(){o&&(st.rm(N.mirrorContainer,"gu-unselectable"),Rt(Qe,"remove","mousemove",Vt),Re(o).removeChild(o),o=null)}function Qt(T,j){for(var X=j;X!==T&&Re(X)!==T;)X=Re(X);return X===Qe?null:X}function Pt(T,j,X,re){var Ae=N.direction==="horizontal",ke=j!==T?Ve():it();return ke;function it(){var Oe=T.children.length,Ie,me,Ge;for(Ie=0;Ie<Oe;Ie++)if(me=T.children[Ie],Ge=me.getBoundingClientRect(),Ae&&Ge.left+Ge.width/2>X||!Ae&&Ge.top+Ge.height/2>re)return me;return null}function Ve(){var Oe=j.getBoundingClientRect();return Ue(Ae?X>Oe.left+so(Oe)/2:re>Oe.top+lo(Oe)/2)}function Ue(Oe){return Oe?Lt(j):j}}function Ti(T,j){return typeof N.copy=="boolean"?N.copy:N.copy(T,j)}}function Rt(e,n,t,o){var i={mouseup:"touchend",mousedown:"touchstart",mousemove:"touchmove"},l={mouseup:"pointerup",mousedown:"pointerdown",mousemove:"pointermove"},d={mouseup:"MSPointerUp",mousedown:"MSPointerDown",mousemove:"MSPointerMove"};global.navigator.pointerEnabled?Mt[n](e,l[t],o):global.navigator.msPointerEnabled?Mt[n](e,d[t],o):(Mt[n](e,i[t],o),Mt[n](e,t,o))}function no(e){if(e.touches!==void 0)return e.touches.length;if(e.which!==void 0&&e.which!==0)return e.which;if(e.buttons!==void 0)return e.buttons;var n=e.button;if(n!==void 0)return n&1?1:n&2?3:n&4?2:0}function sa(e){var n=e.getBoundingClientRect();return{left:n.left+oo("scrollLeft","pageXOffset"),top:n.top+oo("scrollTop","pageYOffset")}}function oo(e,n){return typeof global[n]<"u"?global[n]:Qe.clientHeight?Qe[e]:Tt.body[e]}function ro(e,n,t){e=e||{};var o=e.className||"",i;return e.className+=" gu-hide",i=Tt.elementFromPoint(n,t),e.className=o,i}function la(){return!1}function ao(){return!0}function so(e){return e.width||e.right-e.left}function lo(e){return e.height||e.bottom-e.top}function Re(e){return e.parentNode===Tt?null:e.parentNode}function co(e){return e.tagName==="INPUT"||e.tagName==="TEXTAREA"||e.tagName==="SELECT"||po(e)}function po(e){return!e||e.contentEditable==="false"?!1:e.contentEditable==="true"?!0:po(Re(e))}function Lt(e){return e.nextElementSibling||n();function n(){var t=e;do t=t.nextSibling;while(t&&t.nodeType!==1);return t}}function ca(e){return e.targetTouches&&e.targetTouches.length?e.targetTouches[0]:e.changedTouches&&e.changedTouches.length?e.changedTouches[0]:e}function lt(e,n){var t=ca(n),o={pageX:"clientX",pageY:"clientY"};return e in o&&!(e in t)&&o[e]in t&&(e=o[e]),t[e]}mo.exports=aa});var Gi=Lr(uo(),1),Ri=class{constructor(n,t,o){this.name=n,this.drake=t,this.options=o,this.initEvents=!1}},de=function(e){return e.Cancel="cancel",e.Cloned="cloned",e.Drag="drag",e.DragEnd="dragend",e.Drop="drop",e.Out="out",e.Over="over",e.Remove="remove",e.Shadow="shadow",e.DropModel="dropModel",e.RemoveModel="removeModel",e}(de||{}),pa=Object.keys(de).map(e=>de[e]),da=Gi.default||Gi,Ft=class{constructor(n=da){this.build=n}},vt=(e,n,t)=>o=>o.pipe(Ht(({event:i,name:l})=>i===e&&(n===void 0||l===n)),ri(({name:i,args:l})=>t(i,l))),ma=(e,[n,t,o])=>({name:e,el:n,container:t,source:o}),Li=(()=>{let n=class n{constructor(o){this.drakeFactory=o,this.groups={},this.dispatch$=new ae,this.elContainerSource=i=>l=>this.dispatch$.pipe(vt(i,l,ma)),this.cancel=this.elContainerSource(de.Cancel),this.remove=this.elContainerSource(de.Remove),this.shadow=this.elContainerSource(de.Shadow),this.over=this.elContainerSource(de.Over),this.out=this.elContainerSource(de.Out),this.drag=i=>this.dispatch$.pipe(vt(de.Drag,i,(l,[d,b])=>({name:l,el:d,source:b}))),this.dragend=i=>this.dispatch$.pipe(vt(de.DragEnd,i,(l,[d])=>({name:l,el:d}))),this.drop=i=>this.dispatch$.pipe(vt(de.Drop,i,(l,[d,b,w,D])=>({name:l,el:d,target:b,source:w,sibling:D}))),this.cloned=i=>this.dispatch$.pipe(vt(de.Cloned,i,(l,[d,b,w])=>({name:l,clone:d,original:b,cloneType:w}))),this.dropModel=i=>this.dispatch$.pipe(vt(de.DropModel,i,(l,[d,b,w,D,G,Y,K,F,xe])=>({name:l,el:d,target:b,source:w,sibling:D,item:G,sourceModel:Y,targetModel:K,sourceIndex:F,targetIndex:xe}))),this.removeModel=i=>this.dispatch$.pipe(vt(de.RemoveModel,i,(l,[d,b,w,D,G,Y])=>({name:l,el:d,container:b,source:w,item:D,sourceModel:G,sourceIndex:Y}))),(this.drakeFactory===null||this.drakeFactory===void 0)&&(this.drakeFactory=new Ft)}add(o){if(this.find(o.name))throw new Error('Group named: "'+o.name+'" already exists.');return this.groups[o.name]=o,this.handleModels(o),this.setupEvents(o),o}find(o){return this.groups[o]}destroy(o){let i=this.find(o);i&&(i.drake&&i.drake.destroy(),delete this.groups[o])}createGroup(o,i){return this.add(new Ri(o,this.drakeFactory.build([],i),i))}handleModels({name:o,drake:i,options:l}){let d,b,w;i.on("remove",(D,G,Y)=>{if(!i.models)return;let K=i.models[i.containers.indexOf(Y)];K=K.slice(0);let F=K.splice(b,1)[0];this.dispatch$.next({event:de.RemoveModel,name:o,args:[D,G,Y,F,K,b]})}),i.on("drag",(D,G)=>{i.models&&(d=D,b=this.domIndexOf(D,G))}),i.on("drop",(D,G,Y,K)=>{if(!i.models||!G)return;w=this.domIndexOf(D,G);let F=i.models[i.containers.indexOf(Y)],xe=i.models[i.containers.indexOf(G)],J;if(G===Y)F=F.slice(0),J=F.splice(b,1)[0],F.splice(w,0,J),xe=F;else{let N=d!==D;if(J=F[b],N){if(!l.copyItem)throw new Error("If you have enabled `copy` on a group, you must provide a `copyItem` function.");J=l.copyItem(J)}if(N||(F=F.slice(0),F.splice(b,1)),xe=xe.slice(0),xe.splice(w,0,J),N)try{G.removeChild(D)}catch{}}this.dispatch$.next({event:de.DropModel,name:o,args:[D,G,Y,K,J,F,xe,b,w]})})}setupEvents(o){if(o.initEvents)return;o.initEvents=!0;let i=o.name,l=this,d=b=>{switch(b){case de.Drag:o.drake.on(b,(...w)=>{this.dispatch$.next({event:b,name:i,args:w})});break;case de.Drop:o.drake.on(b,(...w)=>{this.dispatch$.next({event:b,name:i,args:w})});break;case de.DragEnd:o.drake.on(b,(...w)=>{this.dispatch$.next({event:b,name:i,args:w})});break;case de.Cancel:case de.Remove:case de.Shadow:case de.Over:case de.Out:o.drake.on(b,(...w)=>{this.dispatch$.next({event:b,name:i,args:w})});break;case de.Cloned:o.drake.on(b,(...w)=>{this.dispatch$.next({event:b,name:i,args:w})});break;case de.DropModel:o.drake.on(b,(...w)=>{this.dispatch$.next({event:b,name:i,args:w})});break;case de.RemoveModel:o.drake.on(b,(...w)=>{this.dispatch$.next({event:b,name:i,args:w})});break;default:break}};pa.forEach(d)}domIndexOf(o,i){if(i)return Array.prototype.indexOf.call(i.children,o)}};n.\u0275fac=function(i){return new(i||n)(Ke(Ft,8))},n.\u0275prov=nt({token:n,factory:n.\u0275fac,providedIn:"root"});let e=n;return e})(),Rd=(()=>{let n=class n{get container(){return this.el&&this.el.nativeElement}constructor(o,i){this.el=o,this.dragulaService=i,this.dragulaModelChange=new We}ngOnChanges(o){var i;if(o&&o.dragula){let{previousValue:l,currentValue:d,firstChange:b}=o.dragula,w=!!l,D=!!d;w&&this.teardown(l),D&&this.setup()}else if(o&&o.dragulaModel){let{previousValue:l,currentValue:d,firstChange:b}=o.dragulaModel,w=(i=this.group)==null?void 0:i.drake;if(this.dragula&&w){w.models=w.models||[];let D=w.models.indexOf(l);D!==-1?(w.models.splice(D,1),d&&w.models.splice(D,0,d)):d&&w.models.push(d)}}}setup(){var l;let o=d=>{var b,w,D;this.dragulaModel&&((b=d.drake)!=null&&b.models?(D=(w=d.drake)==null?void 0:w.models)==null||D.push(this.dragulaModel):d.drake&&(d.drake.models=[this.dragulaModel]))};if(!this.dragula)return;let i=this.dragulaService.find(this.dragula);if(!i){let d={};i=this.dragulaService.createGroup(this.dragula,d)}o(i),(l=i.drake)==null||l.containers.push(this.container),this.subscribe(this.dragula),this.group=i}subscribe(o){this.subs=new Di,this.subs.add(this.dragulaService.dropModel(o).subscribe(({source:i,target:l,sourceModel:d,targetModel:b})=>{i===this.el.nativeElement?this.dragulaModelChange.emit(d):l===this.el.nativeElement&&this.dragulaModelChange.emit(b)})),this.subs.add(this.dragulaService.removeModel(o).subscribe(({source:i,sourceModel:l})=>{i===this.el.nativeElement&&this.dragulaModelChange.emit(l)}))}teardown(o){var l,d;this.subs&&this.subs.unsubscribe();let i=this.dragulaService.find(o);if(i){let b=(l=i.drake)==null?void 0:l.containers.indexOf(this.el.nativeElement);if(b!==-1&&((d=i.drake)==null||d.containers.splice(b,1)),this.dragulaModel&&i.drake&&i.drake.models){let w=i.drake.models.indexOf(this.dragulaModel);w!==-1&&i.drake.models.splice(w,1)}}}ngOnDestroy(){this.dragula&&this.teardown(this.dragula)}};n.\u0275fac=function(i){return new(i||n)(Ee(rt),Ee(Li))},n.\u0275dir=bt({type:n,selectors:[["","dragula",""]],inputs:{dragula:"dragula",dragulaModel:"dragulaModel"},outputs:{dragulaModelChange:"dragulaModelChange"},standalone:!1,features:[ot]});let e=n;return e})(),Ld=(()=>{let n=class n{static forRoot(){return{ngModule:n,providers:[Li]}}};n.\u0275fac=function(i){return new(i||n)},n.\u0275mod=yt({type:n}),n.\u0275inj=St({providers:[Li]});let e=n;return e})(),Fd=new Ft((e,n)=>new Fi(e,n)),Fi=class{constructor(n=[],t={},o){this.containers=n,this.options=t,this.models=o,this.emitter$=new ae,this.subs=new Di,this.dragging=!1}on(n,t){this.subs.add(this.emitter$.pipe(Ht(({eventType:o})=>o===n)).subscribe(({eventType:o,args:i})=>{if(o===de.Drag){let l=Array.from(i),d=l[0],b=l[1];t(d,b);return}if(o===de.Drop){let l=Array.from(i),d=l[0],b=l[1],w=l[2],D=l[3];t(d,b,w,D);return}if(o===de.Remove){let l=Array.from(i),d=l[0],b=l[1],w=l[2];t(d,b,w);return}t(i)}))}start(n){this.dragging=!0}end(){this.dragging=!1}cancel(n){this.dragging=!1}canMove(n){return this.options.accepts?this.options.accepts(n):!1}remove(){this.dragging=!1}destroy(){this.subs.unsubscribe()}emit(n,...t){this.emitter$.next({eventType:n,args:t})}};var $e=(()=>{class e{$settings=O(Ze);constructor(){}transform(t,o=this.$settings.env.temperatureUnits){return o==="f"?t*1.8+32:t}static \u0275fac=function(o){return new(o||e)};static \u0275pipe=li({name:"convertTemp",type:e,pure:!0})}return e})();function ua(e,n){if(e&1&&c(0),e&2){let t=h().$implicit;y(" ",t.value,"% ")}}function va(e,n){if(e&1&&(c(0),p(1,"convertTemp")),e&2){let t=h().$implicit;y(" ",m(1,1,t.value),"\xB0 ")}}function fa(e,n){if(e&1&&c(0),e&2){let t=h().$implicit;y(" ",t.value," ")}}function ga(e,n){if(e&1&&(a(0,"li",19)(1,"span",11),c(2),s(),a(3,"span",20),M(4,ua,1,1)(5,va,2,3)(6,fa,1,1),s()()),e&2){let t,o=n.$implicit;r(2),x(o.description),r(2),_((t=o.unit)==="percentage"?4:t==="celsius"?5:6)}}function ha(e,n){if(e&1&&(a(0,"li",19)(1,"span",11),c(2),p(3,"translate"),s(),a(4,"span",20),c(5),s()()),e&2){let t=h(2);r(2),x(m(3,2,"child_bridge.config.platform")),r(3),x(t.matchedCachedAccessory.platform)}}function Ca(e,n){if(e&1&&(a(0,"li",19)(1,"span",11),c(2),p(3,"translate"),s(),a(4,"span",20),c(5),s()()),e&2){let t=h(2);r(2),x(m(3,2,"child_bridge.config.accessory")),r(3),x(t.matchedCachedAccessory.accessory)}}function _a(e,n){if(e&1&&(a(0,"li",19)(1,"span",11),c(2),p(3,"translate"),s(),a(4,"span",20),c(5),s()(),M(6,ha,6,4,"li",19)(7,Ca,6,4,"li",19)),e&2){let t=h();r(2),x(m(3,4,"accessories.plugin")),r(3),x(t.matchedCachedAccessory.plugin),r(),_(t.matchedCachedAccessory.platform?6:-1),r(),_(t.matchedCachedAccessory.accessory?7:-1)}}function xa(e,n){if(e&1&&(a(0,"li",19)(1,"span",11),c(2),s(),a(3,"span",20),c(4),s()()),e&2){let t=n.$implicit;r(2),x(t.key),r(2),x(t.value)}}function Sa(e,n){if(e&1&&(a(0,"li",19)(1,"span",11),c(2),p(3,"translate"),s(),a(4,"span",20),c(5),s()()),e&2){let t=h();r(2),x(m(3,2,"accessories.bridge_name")),r(3),x(t.matchedCachedAccessory.bridge)}}function ya(e,n){if(e&1){let t=oe();a(0,"li",19)(1,"span",22),c(2,"UUID"),s(),a(3,"span",20),c(4),s()(),a(5,"li",27)(6,"span",11),c(7),p(8,"translate"),s(),a(9,"button",28),S("click",function(){W(t);let i=h();return z(i.removeSingleCachedAccessories())}),f(10,"i",29),s()()}if(e&2){let t=h();r(4),x(t.matchedCachedAccessory.UUID),r(3),x(m(8,2,"accessories.button_remove"))}}var vo=(()=>{class e{$activeModal=O(pe);$modal=O(se);service;accessoryCache;pairingCache;accessoryInformation;matchedCachedAccessory=null;constructor(){}ngOnInit(){this.accessoryInformation=Object.entries(this.service.accessoryInformation).map(([t,o])=>({key:t,value:o})),this.matchedCachedAccessory=this.matchToCachedAccessory()}matchToCachedAccessory(){let t=this.service.instance.username,o=this.pairingCache.find(i=>i._username===t);if(o){let i=o._main?"cachedAccessories":`cachedAccessories.${o._id}`,l=this.accessoryCache.filter(d=>d.$cacheFile===i);if(l.length){let d=this.service.accessoryInformation.Name,b=this.service.accessoryInformation["Serial Number"],w=l.filter(D=>{let G=D.services.find(F=>F.constructorName==="AccessoryInformation"),Y=G.characteristics.find(F=>F.displayName==="Name"),K=G.characteristics.find(F=>F.displayName==="Serial Number");return Y.value===d&&K.value===b});if(w.length===1)return nn(tn({},w[0]),{bridge:o.name})}}}removeSingleCachedAccessories(){this.$activeModal.close();let t=this.$modal.open(Pn,{size:"lg",backdrop:"static"});t.componentInstance.selectedBridge=this.service.instance.username.replaceAll(":","")}static \u0275fac=function(o){return new(o||e)};static \u0275cmp=k({type:e,selectors:[["ng-component"]],inputs:{service:"service",accessoryCache:"accessoryCache",pairingCache:"pairingCache"},decls:95,vars:59,consts:[[1,"modal-content"],[1,"modal-header"],[1,"modal-title"],["type","button","data-bs-dismiss","modal",1,"btn-close",3,"click"],[1,"modal-body"],[1,"list-group","list-group-box","mb-3"],[1,"list-group-item","d-flex","flex-column","flex-md-row","align-items-center"],["for","form-name",1,"mb-2","mb-md-0","w-100","w-md-50"],[1,"text-start","text-md-end","w-100","w-md-50"],["type","text","id","form-name","autocomplete","off",1,"form-control","custom-input",3,"ngModelChange","ngModel"],[1,"list-group-item","d-flex","justify-content-between","align-items-center","flex-row","pb-2"],[1,"text-start"],[1,"text-end","grey-text"],["type","checkbox","id","hide-accessory",1,"rendux-input",3,"ngModelChange","ngModel"],["for","hide-accessory",1,"rendux-label","ms-3"],["type","checkbox","id","show-on-dashboard",1,"rendux-input","mb-0",3,"ngModelChange","ngModel"],["for","show-on-dashboard",1,"rendux-label","ms-3"],[1,"list-group-item"],[1,"mb-0","text-center"],[1,"list-group-item","d-flex","justify-content-between","align-items-left","flex-column","flex-md-row"],[1,"text-start","text-md-end","grey-text","font-monospace"],[1,"list-group","list-group-box","mb-0"],[1,"text-start","font-monospace"],[1,"modal-footer","justify-content-between"],[1,"text-center"],["type","button","data-bs-dismiss","modal",1,"btn","btn-elegant",3,"click"],[1,"text-end"],[1,"list-group-item","d-flex","justify-content-between","align-items-center"],[1,"btn","btn-primary","m-0","ms-3",3,"click"],[1,"fas","fa-fw","fa-arrow-right"]],template:function(o,i){o&1&&(a(0,"div",0)(1,"div",1)(2,"h5",2),c(3),s(),a(4,"button",3),p(5,"translate"),S("click",function(){return i.$activeModal.dismiss("Dismiss")}),s()(),a(6,"div",4)(7,"ul",5)(8,"li",6)(9,"label",7),c(10),p(11,"translate"),s(),a(12,"div",8)(13,"input",9),S("ngModelChange",function(d){return i.service.customName=d}),s()()(),a(14,"li",10)(15,"span",11),c(16),p(17,"translate"),s(),a(18,"div",12)(19,"input",13),p(20,"translate"),ie("ngModelChange",function(d){return te(i.service.hidden,d)||(i.service.hidden=d),d}),s(),f(21,"label",14),s()(),a(22,"li",10)(23,"span",11),c(24),p(25,"translate"),s(),a(26,"div",12)(27,"input",15),p(28,"translate"),ie("ngModelChange",function(d){return te(i.service.onDashboard,d)||(i.service.onDashboard=d),d}),s(),f(29,"label",16),s()()(),a(30,"ul",5)(31,"li",17)(32,"h6",18),c(33),p(34,"translate"),s()(),a(35,"li",19)(36,"span",11),c(37),p(38,"translate"),s(),a(39,"span",20),c(40),s()(),a(41,"li",19)(42,"span",11),c(43),p(44,"translate"),s(),a(45,"span",20),c(46),s()(),Bi(47,ga,7,2,"li",19,Ai),s(),a(49,"ul",21)(50,"li",17)(51,"h6",18),c(52),p(53,"translate"),s()(),M(54,_a,8,6),Bi(55,xa,5,2,"li",19,Ai),a(57,"li",19)(58,"span",11),c(59),p(60,"translate"),s(),a(61,"span",20),c(62),s()(),M(63,Sa,6,4,"li",19),a(64,"li",19)(65,"span",11),c(66),p(67,"translate"),s(),a(68,"span",20),c(69),s()(),a(70,"li",19)(71,"span",11),c(72),p(73,"translate"),s(),a(74,"span",20),c(75),s()(),a(76,"li",19)(77,"span",22),c(78,"aid"),s(),a(79,"span",20),c(80),s()(),a(81,"li",19)(82,"span",22),c(83,"iid"),s(),a(84,"span",20),c(85),s()(),M(86,ya,11,4),s()(),a(87,"div",23),f(88,"div",11),a(89,"div",24)(90,"button",25),p(91,"translate"),S("click",function(){return i.$activeModal.dismiss("Dismiss")}),c(92),p(93,"translate"),s()(),f(94,"div",26),s()()),o&2&&(r(3),x(i.service.customName||i.service.serviceName),r(),V("aria-label",m(5,29,"form.button_close")),r(6),x(m(11,31,"accessories.custom_name")),r(3),u("ngModel",i.service.customName||i.service.serviceName),r(3),x(m(17,33,"accessories.hide_this_accessory")),r(3),ee("ngModel",i.service.hidden),V("aria-label",m(20,35,"accessories.hide_this_accessory")),r(5),x(m(25,37,"accessories.show_on_dashboard")),r(3),ee("ngModel",i.service.onDashboard),V("aria-label",m(28,39,"accessories.show_on_dashboard")),r(6),x(m(34,41,"accessories.service_info")),r(4),x(m(38,43,"accessories.service")),r(3),x(i.service.humanType),r(3),x(m(44,45,"accessories.name")),r(3),x(i.service.serviceName),r(),Hi(i.service.serviceCharacteristics),r(5),x(m(53,47,"accessories.accessory_info")),r(2),_(i.matchedCachedAccessory?54:-1),r(),Hi(i.accessoryInformation),r(4),x(m(60,49,"accessories.bridge_username")),r(3),x(i.service.instance.username),r(),_(i.matchedCachedAccessory?63:-1),r(3),x(m(67,51,"accessories.bridge_ip")),r(3),x(i.service.instance.ipAddress),r(3),x(m(73,53,"accessories.bridge_port")),r(3),x(i.service.instance.port),r(5),x(i.service.aid),r(5),x(i.service.iid),r(),_(i.matchedCachedAccessory?86:-1),r(4),V("aria-label",m(91,55,"form.button_close")),r(2),y(" ",m(93,57,"form.button_close")," "))},dependencies:[ce,kn,Tn,ve,fe,I,$e],encapsulation:2})}return e})();var fo=(()=>{class e{$api=O(Vn);$auth=O(In);$modal=O(se);$toastr=O(En);$translate=O(wn);$ws=O(Dn);layoutSaved=new ae;accessoryData=new ae;readyForControl=!1;accessoryLayout;accessories={services:[]};rooms=[];io;roomsOrdered=!1;hiddenTypes=["InputSource","LockManagement","CameraRTPStreamManagement","ProtocolInformation"];accessoryCache=[];pairingCache=[];constructor(){oi(this.$api.get("/server/cached-accessories")).then(t=>{this.accessoryCache=t}).catch(t=>console.error(t)),oi(this.$api.get("/server/pairings")).then(t=>{this.pairingCache=t}).catch(t=>console.error(t))}showAccessoryInformation(t){let o=this.$modal.open(vo,{size:"lg",backdrop:"static"});return o.componentInstance.service=t,o.componentInstance.accessoryCache=this.accessoryCache,o.componentInstance.pairingCache=this.pairingCache,o.result.then(()=>this.saveLayout()).catch(()=>this.saveLayout()),!1}stop(){this.io.end(),this.rooms=[],this.accessories={services:[]},this.roomsOrdered=!1,delete this.accessoryLayout}start(){return ni(this,null,function*(){this.readyForControl=!1,this.io=this.$ws.connectToNamespace("accessories"),yield this.loadLayout(),this.io.connected?(this.io.socket.emit("get-accessories"),setTimeout(()=>{this.io.connected.subscribe(()=>{this.io.socket.emit("get-accessories")})},1e3)):this.io.connected.subscribe(()=>{this.io.socket.emit("get-accessories")}),this.io.socket.on("accessories-data",t=>{this.parseServices(t),this.generateHelpers(),this.sortIntoRooms(),this.roomsOrdered||(this.orderRooms(),this.applyCustomAttributes(),this.roomsOrdered=!0),this.accessoryData.next(t)}),this.io.socket.on("accessories-reload-required",()=>ni(this,null,function*(){this.stop(),yield this.start()})),this.io.socket.on("accessory-control-failure",t=>{console.error(t),this.$toastr.error(t,this.$translate.instant("toast.title_error"))}),this.io.socket.on("accessories-ready-for-control",()=>{this.readyForControl=!0})})}saveLayout(){this.accessoryLayout=this.rooms.map(t=>({name:t.name,services:t.services.map(o=>({uniqueId:o.uniqueId,aid:o.aid,iid:o.iid,uuid:o.uuid,customName:o.customName||void 0,hidden:o.hidden||void 0,onDashboard:o.onDashboard||void 0}))})).filter(t=>t.services.length),this.io.request("save-layout",{user:this.$auth.user.username,layout:this.accessoryLayout}).subscribe({next:()=>this.layoutSaved.next(void 0),error:t=>{console.error(t),this.$toastr.error(t.message,this.$translate.instant("toast.title_error"))}})}loadLayout(){return ni(this,null,function*(){this.accessoryLayout=yield oi(this.io.request("get-layout",{user:this.$auth.user.username})),this.rooms=this.accessoryLayout.map(t=>({name:t.name,services:[]}))})}parseServices(t){if(!this.accessories.services.length){this.accessories.services=t;return}t.forEach(o=>{let i=this.accessories.services.find(l=>l.uniqueId===o.uniqueId);o.type==="LockMechanism"&&this.attachLockManagementToMechanism(o),i?Object.assign(i,o):this.accessories.services.push(o)})}sortIntoRooms(){this.accessories.services.forEach(t=>{if(this.hiddenTypes.includes(t.type))return;if(t.linked&&(t.linkedServices={},t.linked.forEach(i=>{t.linkedServices[i]=this.accessories.services.find(l=>l.aid===t.aid&&l.iid===i&&l.instance.username===t.instance.username)})),!this.rooms.find(i=>i.services.find(l=>l.uniqueId===t.uniqueId))){let i=this.accessoryLayout.find(l=>l.services.find(d=>d.uniqueId===t.uniqueId));if(i)this.rooms.find(l=>l.name===i.name).services.push(t);else{let l=this.rooms.find(d=>d.name==="Default Room");l?l.services.push(t):this.rooms.push({name:"Default Room",services:[t]})}}})}orderRooms(){this.rooms.forEach(t=>{let o=this.accessoryLayout.find(i=>i.name===t.name);t.services.sort((i,l)=>{let d=o.services.findIndex(w=>w.uniqueId===i.uniqueId),b=o.services.findIndex(w=>w.uniqueId===l.uniqueId);return d<b?-1:d>b?1:0})})}applyCustomAttributes(){this.rooms.forEach(t=>{let o=this.accessoryLayout.find(i=>i.name===t.name);t.services.forEach(i=>{let l=o.services.find(d=>d.uniqueId===i.uniqueId);Object.assign(i,l)})})}generateHelpers(){this.accessories.services.forEach(t=>{t.getCharacteristic||(t.getCharacteristic=o=>{let i=t.serviceCharacteristics.find(l=>l.type===o);return i?(i.setValue=l=>new Promise(d=>(this.readyForControl||d(void 0),this.io.socket.emit("accessory-control",{set:{uniqueId:t.uniqueId,aid:t.aid,siid:t.iid,iid:i.iid,value:l}}),d(void 0))),i):null})})}attachLockManagementToMechanism(t){let o=[],i=[];for(let l of this.accessories.services)l.type==="LockMechanism"&&l.accessoryInformation.Name===t.accessoryInformation.Name&&l.accessoryInformation["Serial Number"]===t.accessoryInformation["Serial Number"]?o.push(l):l.type==="LockManagement"&&l.accessoryInformation.Name===t.accessoryInformation.Name&&l.accessoryInformation["Serial Number"]===t.accessoryInformation["Serial Number"]&&i.push(l);if(o.length===1&&i.length===1){let l=i[0];t.linkedServices||(t.linkedServices={}),t.linkedServices[l.iid]=l}}static \u0275fac=function(o){return new(o||e)};static \u0275prov=nt({token:e,factory:e.\u0275fac,providedIn:"root"})}return e})();var ft=function(){function e(){}return e}();var ui=function(){function e(n){this._ranScripts={},this._renderer=n.createRenderer(null,null)}return e.prototype.insertEl=function(n,t,o,i,l){if(i&&!l){var d=n._prevSVG&&n._prevSVG.parentNode;d&&this._renderer.removeChild(d,n._prevSVG),t.innerHTML=""}l?this._renderer.insertBefore(t,o,t.firstChild):this._renderer.appendChild(t,o),o.nodeName==="svg"&&(n._prevSVG=o)},e.prototype.evalScripts=function(n,t,o){for(var i=n.querySelectorAll("script"),l=[],d=0;d<i.length;d++){var b=i[d].getAttribute("type");if(!b||b==="application/ecmascript"||b==="application/javascript"){var w=i[d].innerText||i[d].textContent;l.push(w),this._renderer.removeChild(i[d].parentNode,i[d])}}if(l.length>0&&(o==="always"||o==="once"&&!this._ranScripts[t])){for(var d=0;d<l.length;d++)new Function(l[d])(window);this._ranScripts[t]=!0}},e.\u0275fac=function(t){return new(t||e)(Ke(ai))},e.\u0275prov=nt({token:e,factory:e.\u0275fac,providedIn:"root"}),e}();var ji=function(){function e(n,t){this._inlineSVGService=n,this._el=t}return e.prototype.ngAfterViewInit=function(){this._updateContent()},e.prototype.ngOnChanges=function(n){n.content&&this._updateContent()},e.prototype._updateContent=function(){this._inlineSVGService.insertEl(this.context,this._el.nativeElement,this.content,this.replaceContents,this.prepend)},e.\u0275fac=function(t){return new(t||e)(Ee(ui),Ee(rt))},e.\u0275cmp=k({type:e,selectors:[["inline-svg"]],inputs:{context:"context",content:"content",replaceContents:"replaceContents",prepend:"prepend"},features:[ot],decls:0,vars:0,template:function(t,o){},encapsulation:2,changeDetection:0}),e}();var Gt=function(){function e(n,t,o,i,l,d){this._appBase=n,this._location=t,this._config=o,this._http=o&&!o.bypassHttpClientInterceptorChain?i:new di(l),this._renderer=d.createRenderer(null,null),this.setBaseUrl(),e._cache||(e._cache=new Map),e._inProgressReqs||(e._inProgressReqs=new Map)}return e.prototype.getSVG=function(n,t,o){var i=this;o===void 0&&(o=!0);var l=(t?this.getAbsoluteUrl(n):n).replace(/#.+$/,"");if(o&&e._cache.has(l))return on(this._cloneSVG(e._cache.get(l)));if(e._inProgressReqs.has(l))return e._inProgressReqs.get(l);var d=this._http.get(l,{responseType:"text"}).pipe(cn(function(){e._inProgressReqs.delete(l)}),sn(function(b){return e._inProgressReqs.delete(l),rn(b.message)}),ln(),ri(function(b){var w=i._svgElementFromString(b);return e._cache.set(l,w),i._cloneSVG(w)}));return e._inProgressReqs.set(l,d),d},e.prototype.setBaseUrl=function(){this._config?this._baseUrl=this._config.baseUrl:this._appBase!==null?this._baseUrl=this._appBase:this._location!==null&&(this._baseUrl=this._location.getBaseHrefFromDOM())},e.prototype.getAbsoluteUrl=function(n){this._baseUrl&&!/^https?:\/\//i.test(n)&&(n=this._baseUrl+n,n.indexOf("//")===0&&(n=n.substring(1)));var t=this._renderer.createElement("BASE");return t.href=n,t.href},e.prototype._svgElementFromString=function(n){var t=this._renderer.createElement("DIV");t.innerHTML=n;var o=t.querySelector("svg");if(!o)throw new Error("No SVG found in loaded contents");return o},e.prototype._cloneSVG=function(n){return n.cloneNode(!0)},e.\u0275fac=function(t){return new(t||e)(Ke(yn,8),Ke(Sn,8),Ke(ft,8),Ke(di),Ke(bn),Ke(ai))},e.\u0275prov=nt({token:e,factory:e.\u0275fac,providedIn:"root"}),e}();function Co(e){return e.charAt(0)==="#"||e.indexOf(".svg#")>-1}function _o(){return typeof SVGRect<"u"}function xo(e,n,t){var o=n.querySelector('[id="'.concat(t,'"]'));if(!o)throw new Error('Symbol "'.concat(t,'" not found'));var i=e.createElement("svg","svg");e.appendChild(i,o);var l=e.createElement("use","svg");return e.setAttribute(l,"href","#".concat(t),"xlink"),e.appendChild(i,l),i}function Ui(e,n){for(var t=0;t<n.length;t++){var o=e.getAttribute(n[t]);o&&e.removeAttribute(n[t])}for(var i=e.getElementsByTagName("*"),t=0;t<i.length;t++)Ui(i[t],n)}function So(e,n){for(var t in n)e.setAttribute(t,n[t])}var $=function(){function e(n,t,o,i,l,d,b,w){this._el=n,this._viewContainerRef=t,this._resolver=o,this._svgCache=i,this._renderer=l,this._inlineSVGService=d,this._config=b,this.platformId=w,this.resolveSVGUrl=!0,this.replaceContents=!0,this.prepend=!1,this.injectComponent=!1,this.cacheSVG=!0,this.forceEvalStyles=!1,this.evalScripts="always",this.onSVGInserted=new We,this.onSVGFailed=new We,this._supportsSVG=_o(),!Ot(this.platformId)&&!this._supportsSVG&&this._fail("Embed SVG are not supported by this browser")}return e.prototype.ngOnInit=function(){!this._isValidPlatform()||this._isSSRDisabled()||this._insertSVG()},e.prototype.ngOnChanges=function(n){if(!(!this._isValidPlatform()||this._isSSRDisabled())){var t=!!n.setSVGAttributes;(n.inlineSVG||t)&&this._insertSVG(t)}},e.prototype.ngOnDestroy=function(){this._subscription&&this._subscription.unsubscribe()},e.prototype._insertSVG=function(n){var t=this;if(n===void 0&&(n=!1),!(!Ot(this.platformId)&&!this._supportsSVG)){if(!this.inlineSVG){this._fail("No URL passed to [inlineSVG]");return}!n&&this.inlineSVG===this._prevUrl||(this._prevUrl=this.inlineSVG,this._subscription=this._svgCache.getSVG(this.inlineSVG,this.resolveSVGUrl,this.cacheSVG).subscribe(function(o){if(Co(t.inlineSVG)){var i=t.inlineSVG.split("#")[1];o=xo(t._renderer,o,i)}t._processSvg(o)},function(o){t._fail(o)}))}},e.prototype._processSvg=function(n){if(n){if(this.removeSVGAttributes&&pi(this.platformId)&&Ui(n,this.removeSVGAttributes),this.setSVGAttributes&&So(n,this.setSVGAttributes),this.onSVGLoaded&&(n=this.onSVGLoaded(n,this._el.nativeElement)),this._insertEl(n),pi(this.platformId)&&this._inlineSVGService.evalScripts(n,this.inlineSVG,this.evalScripts),this.forceEvalStyles){var t=n.querySelectorAll("style");Array.from(t).forEach(function(o){return o.textContent+=""})}this.onSVGInserted.emit(n)}},e.prototype._insertEl=function(n){if(this.injectComponent){if(!this._svgComp){var t=this._resolver.resolveComponentFactory(ji);this._svgComp=this._viewContainerRef.createComponent(t)}this._svgComp.instance.context=this,this._svgComp.instance.replaceContents=this.replaceContents,this._svgComp.instance.prepend=this.prepend,this._svgComp.instance.content=n,this._renderer.appendChild(this._el.nativeElement,this._svgComp.injector.get(ji)._el.nativeElement)}else this._inlineSVGService.insertEl(this,this._el.nativeElement,n,this.replaceContents,this.prepend)},e.prototype._fail=function(n){if(this.onSVGFailed.emit(n),this.fallbackImgUrl){var t=this._renderer.createElement("IMG");this._renderer.setAttribute(t,"src",this.fallbackImgUrl),this._insertEl(t)}else this.fallbackSVG&&this.fallbackSVG!==this.inlineSVG&&(this.inlineSVG=this.fallbackSVG,this._insertSVG())},e.prototype._isValidPlatform=function(){return Ot(this.platformId)||pi(this.platformId)},e.prototype._isSSRDisabled=function(){return Ot(this.platformId)&&this._config&&this._config.clientOnly},e.\u0275fac=function(t){return new(t||e)(Ee(rt),Ee(vn),Ee(un),Ee(Gt),Ee(si),Ee(ui),Ee(ft,8),Ee(mn))},e.\u0275dir=bt({type:e,selectors:[["","inlineSVG",""]],inputs:{inlineSVG:"inlineSVG",resolveSVGUrl:"resolveSVGUrl",replaceContents:"replaceContents",prepend:"prepend",injectComponent:"injectComponent",cacheSVG:"cacheSVG",setSVGAttributes:"setSVGAttributes",removeSVGAttributes:"removeSVGAttributes",forceEvalStyles:"forceEvalStyles",evalScripts:"evalScripts",fallbackImgUrl:"fallbackImgUrl",fallbackSVG:"fallbackSVG",onSVGLoaded:"onSVGLoaded"},outputs:{onSVGInserted:"onSVGInserted",onSVGFailed:"onSVGFailed"},features:[ci([Gt]),ot]}),e}();var q=function(){function e(){}return e.forRoot=function(n){return{ngModule:e,providers:[{provide:ft,useValue:n}]}},e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=yt({type:e}),e.\u0275inj=St({}),e}();var gt=function(e){return e.Range="range",e.Steps="steps",e.Positions="positions",e.Count="count",e.Values="values",e}(gt||{}),Le=function(e){return e[e.None=-1]="None",e[e.NoValue=0]="NoValue",e[e.LargeValue=1]="LargeValue",e[e.SmallValue=2]="SmallValue",e}(Le||{});function Ta(e){return fi(e)&&typeof e.from=="function"}function fi(e){return typeof e=="object"&&typeof e.to=="function"}function yo(e){e.parentElement.removeChild(e)}function Wi(e){return e!=null}function bo(e){e.preventDefault()}function ka(e){return e.filter(function(n){return this[n]?!1:this[n]=!0},{})}function wa(e,n){return Math.round(e/n)*n}function Ea(e,n){var t=e.getBoundingClientRect(),o=e.ownerDocument,i=o.documentElement,l=wo(o);return/webkit.*Chrome.*Mobile/i.test(navigator.userAgent)&&(l.x=0),n?t.top+l.y-i.clientTop:t.left+l.x-i.clientLeft}function Xe(e){return typeof e=="number"&&!isNaN(e)&&isFinite(e)}function Mo(e,n,t){t>0&&(He(e,n),setTimeout(function(){vi(e,n)},t))}function To(e){return Math.max(Math.min(e,100),0)}function gi(e){return Array.isArray(e)?e:[e]}function Va(e){e=String(e);var n=e.split(".");return n.length>1?n[1].length:0}function He(e,n){e.classList&&!/\s/.test(n)?e.classList.add(n):e.className+=" "+n}function vi(e,n){e.classList&&!/\s/.test(n)?e.classList.remove(n):e.className=e.className.replace(new RegExp("(^|\\b)"+n.split(" ").join("|")+"(\\b|$)","gi")," ")}function Ia(e,n){return e.classList?e.classList.contains(n):new RegExp("\\b"+n+"\\b").test(e.className)}function wo(e){var n=window.pageXOffset!==void 0,t=(e.compatMode||"")==="CSS1Compat",o=n?window.pageXOffset:t?e.documentElement.scrollLeft:e.body.scrollLeft,i=n?window.pageYOffset:t?e.documentElement.scrollTop:e.body.scrollTop;return{x:o,y:i}}function Da(){return window.navigator.pointerEnabled?{start:"pointerdown",move:"pointermove",end:"pointerup"}:window.navigator.msPointerEnabled?{start:"MSPointerDown",move:"MSPointerMove",end:"MSPointerUp"}:{start:"mousedown touchstart",move:"mousemove touchmove",end:"mouseup touchend"}}function Pa(){var e=!1;try{var n=Object.defineProperty({},"passive",{get:function(){e=!0}});window.addEventListener("test",null,n)}catch{}return e}function Aa(){return window.CSS&&CSS.supports&&CSS.supports("touch-action","none")}function $i(e,n){return 100/(n-e)}function zi(e,n,t){return n*100/(e[t+1]-e[t])}function Ba(e,n){return zi(e,e[0]<0?n+Math.abs(e[0]):n-e[0],0)}function Ha(e,n){return n*(e[1]-e[0])/100+e[0]}function jt(e,n){for(var t=1;e>=n[t];)t+=1;return t}function Oa(e,n,t){if(t>=e.slice(-1)[0])return 100;var o=jt(t,e),i=e[o-1],l=e[o],d=n[o-1],b=n[o];return d+Ba([i,l],t)/$i(d,b)}function Na(e,n,t){if(t>=100)return e.slice(-1)[0];var o=jt(t,n),i=e[o-1],l=e[o],d=n[o-1],b=n[o];return Ha([i,l],(t-d)*$i(d,b))}function Ra(e,n,t,o){if(o===100)return o;var i=jt(o,e),l=e[i-1],d=e[i];return t?o-l>(d-l)/2?d:l:n[i-1]?e[i-1]+wa(o-e[i-1],n[i-1]):o}var La=function(){function e(n,t,o){this.xPct=[],this.xVal=[],this.xSteps=[],this.xNumSteps=[],this.xHighestCompleteStep=[],this.xSteps=[o||!1],this.xNumSteps=[!1],this.snap=t;var i,l=[];for(Object.keys(n).forEach(function(d){l.push([gi(n[d]),d])}),l.sort(function(d,b){return d[0][0]-b[0][0]}),i=0;i<l.length;i++)this.handleEntryPoint(l[i][1],l[i][0]);for(this.xNumSteps=this.xSteps.slice(0),i=0;i<this.xNumSteps.length;i++)this.handleStepPoint(i,this.xNumSteps[i])}return e.prototype.getDistance=function(n){for(var t=[],o=0;o<this.xNumSteps.length-1;o++)t[o]=zi(this.xVal,n,o);return t},e.prototype.getAbsoluteDistance=function(n,t,o){var i=0;if(n<this.xPct[this.xPct.length-1])for(;n>this.xPct[i+1];)i++;else n===this.xPct[this.xPct.length-1]&&(i=this.xPct.length-2);!o&&n===this.xPct[i+1]&&i++,t===null&&(t=[]);var l,d=1,b=t[i],w=0,D=0,G=0,Y=0;for(o?l=(n-this.xPct[i])/(this.xPct[i+1]-this.xPct[i]):l=(this.xPct[i+1]-n)/(this.xPct[i+1]-this.xPct[i]);b>0;)w=this.xPct[i+1+Y]-this.xPct[i+Y],t[i+Y]*d+100-l*100>100?(D=w*l,d=(b-100*l)/t[i+Y],l=1):(D=t[i+Y]*w/100*d,d=0),o?(G=G-D,this.xPct.length+Y>=1&&Y--):(G=G+D,this.xPct.length-Y>=1&&Y++),b=t[i+Y]*d;return n+G},e.prototype.toStepping=function(n){return n=Oa(this.xVal,this.xPct,n),n},e.prototype.fromStepping=function(n){return Na(this.xVal,this.xPct,n)},e.prototype.getStep=function(n){return n=Ra(this.xPct,this.xSteps,this.snap,n),n},e.prototype.getDefaultStep=function(n,t,o){var i=jt(n,this.xPct);return(n===100||t&&n===this.xPct[i-1])&&(i=Math.max(i-1,1)),(this.xVal[i]-this.xVal[i-1])/o},e.prototype.getNearbySteps=function(n){var t=jt(n,this.xPct);return{stepBefore:{startValue:this.xVal[t-2],step:this.xNumSteps[t-2],highestStep:this.xHighestCompleteStep[t-2]},thisStep:{startValue:this.xVal[t-1],step:this.xNumSteps[t-1],highestStep:this.xHighestCompleteStep[t-1]},stepAfter:{startValue:this.xVal[t],step:this.xNumSteps[t],highestStep:this.xHighestCompleteStep[t]}}},e.prototype.countStepDecimals=function(){var n=this.xNumSteps.map(Va);return Math.max.apply(null,n)},e.prototype.hasNoSize=function(){return this.xVal[0]===this.xVal[this.xVal.length-1]},e.prototype.convert=function(n){return this.getStep(this.toStepping(n))},e.prototype.handleEntryPoint=function(n,t){var o;if(n==="min"?o=0:n==="max"?o=100:o=parseFloat(n),!Xe(o)||!Xe(t[0]))throw new Error("noUiSlider: 'range' value isn't numeric.");this.xPct.push(o),this.xVal.push(t[0]);var i=Number(t[1]);o?this.xSteps.push(isNaN(i)?!1:i):isNaN(i)||(this.xSteps[0]=i),this.xHighestCompleteStep.push(0)},e.prototype.handleStepPoint=function(n,t){if(t){if(this.xVal[n]===this.xVal[n+1]){this.xSteps[n]=this.xHighestCompleteStep[n]=this.xVal[n];return}this.xSteps[n]=zi([this.xVal[n],this.xVal[n+1]],t,0)/$i(this.xPct[n],this.xPct[n+1]);var o=(this.xVal[n+1]-this.xVal[n])/this.xNumSteps[n],i=Math.ceil(Number(o.toFixed(3))-1),l=this.xVal[n]+this.xNumSteps[n]*i;this.xHighestCompleteStep[n]=l}},e}(),ko={to:function(e){return e===void 0?"":e.toFixed(2)},from:Number},Fa={target:"target",base:"base",origin:"origin",handle:"handle",handleLower:"handle-lower",handleUpper:"handle-upper",touchArea:"touch-area",horizontal:"horizontal",vertical:"vertical",background:"background",connect:"connect",connects:"connects",ltr:"ltr",rtl:"rtl",textDirectionLtr:"txt-dir-ltr",textDirectionRtl:"txt-dir-rtl",draggable:"draggable",drag:"state-drag",tap:"state-tap",active:"active",tooltip:"tooltip",pips:"pips",pipsHorizontal:"pips-horizontal",pipsVertical:"pips-vertical",marker:"marker",markerHorizontal:"marker-horizontal",markerVertical:"marker-vertical",markerNormal:"marker-normal",markerLarge:"marker-large",markerSub:"marker-sub",value:"value",valueHorizontal:"value-horizontal",valueVertical:"value-vertical",valueNormal:"value-normal",valueLarge:"value-large",valueSub:"value-sub"},ct={tooltips:".__tooltips",aria:".__aria"};function Ga(e,n){if(!Xe(n))throw new Error("noUiSlider: 'step' is not numeric.");e.singleStep=n}function ja(e,n){if(!Xe(n))throw new Error("noUiSlider: 'keyboardPageMultiplier' is not numeric.");e.keyboardPageMultiplier=n}function Ua(e,n){if(!Xe(n))throw new Error("noUiSlider: 'keyboardMultiplier' is not numeric.");e.keyboardMultiplier=n}function Wa(e,n){if(!Xe(n))throw new Error("noUiSlider: 'keyboardDefaultStep' is not numeric.");e.keyboardDefaultStep=n}function za(e,n){if(typeof n!="object"||Array.isArray(n))throw new Error("noUiSlider: 'range' is not an object.");if(n.min===void 0||n.max===void 0)throw new Error("noUiSlider: Missing 'min' or 'max' in 'range'.");e.spectrum=new La(n,e.snap||!1,e.singleStep)}function $a(e,n){if(n=gi(n),!Array.isArray(n)||!n.length)throw new Error("noUiSlider: 'start' option is incorrect.");e.handles=n.length,e.start=n}function qa(e,n){if(typeof n!="boolean")throw new Error("noUiSlider: 'snap' option must be a boolean.");e.snap=n}function Ka(e,n){if(typeof n!="boolean")throw new Error("noUiSlider: 'animate' option must be a boolean.");e.animate=n}function Xa(e,n){if(typeof n!="number")throw new Error("noUiSlider: 'animationDuration' option must be a number.");e.animationDuration=n}function Eo(e,n){var t=[!1],o;if(n==="lower"?n=[!0,!1]:n==="upper"&&(n=[!1,!0]),n===!0||n===!1){for(o=1;o<e.handles;o++)t.push(n);t.push(!1)}else{if(!Array.isArray(n)||!n.length||n.length!==e.handles+1)throw new Error("noUiSlider: 'connect' option doesn't match handle count.");t=n}e.connect=t}function Ya(e,n){switch(n){case"horizontal":e.ort=0;break;case"vertical":e.ort=1;break;default:throw new Error("noUiSlider: 'orientation' option is invalid.")}}function Vo(e,n){if(!Xe(n))throw new Error("noUiSlider: 'margin' option must be numeric.");n!==0&&(e.margin=e.spectrum.getDistance(n))}function Za(e,n){if(!Xe(n))throw new Error("noUiSlider: 'limit' option must be numeric.");if(e.limit=e.spectrum.getDistance(n),!e.limit||e.handles<2)throw new Error("noUiSlider: 'limit' option is only supported on linear sliders with 2 or more handles.")}function Qa(e,n){var t;if(!Xe(n)&&!Array.isArray(n))throw new Error("noUiSlider: 'padding' option must be numeric or array of exactly 2 numbers.");if(Array.isArray(n)&&!(n.length===2||Xe(n[0])||Xe(n[1])))throw new Error("noUiSlider: 'padding' option must be numeric or array of exactly 2 numbers.");if(n!==0){for(Array.isArray(n)||(n=[n,n]),e.padding=[e.spectrum.getDistance(n[0]),e.spectrum.getDistance(n[1])],t=0;t<e.spectrum.xNumSteps.length-1;t++)if(e.padding[0][t]<0||e.padding[1][t]<0)throw new Error("noUiSlider: 'padding' option must be a positive number(s).");var o=n[0]+n[1],i=e.spectrum.xVal[0],l=e.spectrum.xVal[e.spectrum.xVal.length-1];if(o/(l-i)>1)throw new Error("noUiSlider: 'padding' option must not exceed 100% of the range.")}}function Ja(e,n){switch(n){case"ltr":e.dir=0;break;case"rtl":e.dir=1;break;default:throw new Error("noUiSlider: 'direction' option was not recognized.")}}function es(e,n){if(typeof n!="string")throw new Error("noUiSlider: 'behaviour' must be a string containing options.");var t=n.indexOf("tap")>=0,o=n.indexOf("drag")>=0,i=n.indexOf("fixed")>=0,l=n.indexOf("snap")>=0,d=n.indexOf("hover")>=0,b=n.indexOf("unconstrained")>=0,w=n.indexOf("invert-connects")>=0,D=n.indexOf("drag-all")>=0,G=n.indexOf("smooth-steps")>=0;if(i){if(e.handles!==2)throw new Error("noUiSlider: 'fixed' behaviour must be used with 2 handles");Vo(e,e.start[1]-e.start[0])}if(w&&e.handles!==2)throw new Error("noUiSlider: 'invert-connects' behaviour must be used with 2 handles");if(b&&(e.margin||e.limit))throw new Error("noUiSlider: 'unconstrained' behaviour cannot be used with margin or limit");e.events={tap:t||l,drag:o,dragAll:D,smoothSteps:G,fixed:i,snap:l,hover:d,unconstrained:b,invertConnects:w}}function ts(e,n){if(n!==!1)if(n===!0||fi(n)){e.tooltips=[];for(var t=0;t<e.handles;t++)e.tooltips.push(n)}else{if(n=gi(n),n.length!==e.handles)throw new Error("noUiSlider: must pass a formatter for all handles.");n.forEach(function(o){if(typeof o!="boolean"&&!fi(o))throw new Error("noUiSlider: 'tooltips' must be passed a formatter or 'false'.")}),e.tooltips=n}}function is(e,n){if(n.length!==e.handles)throw new Error("noUiSlider: must pass a attributes for all handles.");e.handleAttributes=n}function ns(e,n){if(!fi(n))throw new Error("noUiSlider: 'ariaFormat' requires 'to' method.");e.ariaFormat=n}function os(e,n){if(!Ta(n))throw new Error("noUiSlider: 'format' requires 'to' and 'from' methods.");e.format=n}function rs(e,n){if(typeof n!="boolean")throw new Error("noUiSlider: 'keyboardSupport' option must be a boolean.");e.keyboardSupport=n}function as(e,n){e.documentElement=n}function ss(e,n){if(typeof n!="string"&&n!==!1)throw new Error("noUiSlider: 'cssPrefix' must be a string or `false`.");e.cssPrefix=n}function ls(e,n){if(typeof n!="object")throw new Error("noUiSlider: 'cssClasses' must be an object.");typeof e.cssPrefix=="string"?(e.cssClasses={},Object.keys(n).forEach(function(t){e.cssClasses[t]=e.cssPrefix+n[t]})):e.cssClasses=n}function Io(e){var n={margin:null,limit:null,padding:null,animate:!0,animationDuration:300,ariaFormat:ko,format:ko},t={step:{r:!1,t:Ga},keyboardPageMultiplier:{r:!1,t:ja},keyboardMultiplier:{r:!1,t:Ua},keyboardDefaultStep:{r:!1,t:Wa},start:{r:!0,t:$a},connect:{r:!0,t:Eo},direction:{r:!0,t:Ja},snap:{r:!1,t:qa},animate:{r:!1,t:Ka},animationDuration:{r:!1,t:Xa},range:{r:!0,t:za},orientation:{r:!1,t:Ya},margin:{r:!1,t:Vo},limit:{r:!1,t:Za},padding:{r:!1,t:Qa},behaviour:{r:!0,t:es},ariaFormat:{r:!1,t:ns},format:{r:!1,t:os},tooltips:{r:!1,t:ts},keyboardSupport:{r:!0,t:rs},documentElement:{r:!1,t:as},cssPrefix:{r:!0,t:ss},cssClasses:{r:!0,t:ls},handleAttributes:{r:!1,t:is}},o={connect:!1,direction:"ltr",behaviour:"tap",orientation:"horizontal",keyboardSupport:!0,cssPrefix:"noUi-",cssClasses:Fa,keyboardPageMultiplier:5,keyboardMultiplier:1,keyboardDefaultStep:10};e.format&&!e.ariaFormat&&(e.ariaFormat=e.format),Object.keys(t).forEach(function(w){if(!Wi(e[w])&&o[w]===void 0){if(t[w].r)throw new Error("noUiSlider: '"+w+"' is required.");return}t[w].t(n,Wi(e[w])?e[w]:o[w])}),n.pips=e.pips;var i=document.createElement("div"),l=i.style.msTransform!==void 0,d=i.style.transform!==void 0;n.transformRule=d?"transform":l?"msTransform":"webkitTransform";var b=[["left","top"],["right","bottom"]];return n.style=b[n.dir][n.ort],n}function cs(e,n,t){var o=Da(),i=Aa(),l=i&&Pa(),d=e,b,w,D,G,Y,K,F=n.spectrum,xe=[],J=[],N=[],ue=0,Fe={},tt=!1,Ye=e.ownerDocument,pt=n.documentElement||Ye.documentElement,ht=Ye.body,zt=Ye.dir==="rtl"||n.ort===1?0:100;function qe(v,g){var C=Ye.createElement("div");return g&&He(C,g),v.appendChild(C),C}function yi(v,g){var C=qe(v,n.cssClasses.origin),E=qe(C,n.cssClasses.handle);if(qe(E,n.cssClasses.touchArea),E.setAttribute("data-handle",String(g)),n.keyboardSupport&&(E.setAttribute("tabindex","0"),E.addEventListener("keydown",function(A){return it(A,g)})),n.handleAttributes!==void 0){var P=n.handleAttributes[g];Object.keys(P).forEach(function(A){E.setAttribute(A,P[A])})}return E.setAttribute("role","slider"),E.setAttribute("aria-orientation",n.ort?"vertical":"horizontal"),g===0?He(E,n.cssClasses.handleLower):g===n.handles-1&&He(E,n.cssClasses.handleUpper),C.handle=E,C}function dt(v,g){return g?qe(v,n.cssClasses.connect):!1}function bi(v,g){w=qe(g,n.cssClasses.connects),D=[],G=[],G.push(dt(w,v[0]));for(var C=0;C<n.handles;C++)D.push(yi(g,C)),N[C]=C,G.push(dt(w,v[C+1]))}function Mi(v){He(v,n.cssClasses.target),n.dir===0?He(v,n.cssClasses.ltr):He(v,n.cssClasses.rtl),n.ort===0?He(v,n.cssClasses.horizontal):He(v,n.cssClasses.vertical);var g=getComputedStyle(v).direction;return g==="rtl"?He(v,n.cssClasses.textDirectionRtl):He(v,n.cssClasses.textDirectionLtr),qe(v,n.cssClasses.base)}function $t(v,g){return!n.tooltips||!n.tooltips[g]?!1:qe(v.firstChild,n.cssClasses.tooltip)}function qt(){return d.hasAttribute("disabled")}function Ct(v){var g=D[v];return g.hasAttribute("disabled")}function Kt(v){v!=null?(D[v].setAttribute("disabled",""),D[v].handle.removeAttribute("tabindex")):(d.setAttribute("disabled",""),D.forEach(function(g){g.handle.removeAttribute("tabindex")}))}function kt(v){v!=null?(D[v].removeAttribute("disabled"),D[v].handle.setAttribute("tabindex","0")):(d.removeAttribute("disabled"),D.forEach(function(g){g.removeAttribute("disabled"),g.handle.setAttribute("tabindex","0")}))}function _t(){K&&(Ie("update"+ct.tooltips),K.forEach(function(v){v&&yo(v)}),K=null)}function wt(){_t(),K=D.map($t),Ue("update"+ct.tooltips,function(v,g,C){if(!(!K||!n.tooltips)&&K[g]!==!1){var E=v[g];n.tooltips[g]!==!0&&(E=n.tooltips[g].to(C[g])),K[g].innerHTML=E}})}function Xt(){Ie("update"+ct.aria),Ue("update"+ct.aria,function(v,g,C,E,P){N.forEach(function(A){var U=D[A],R=Ge(J,A,0,!0,!0,!0),ge=Ge(J,A,100,!0,!0,!0),he=P[A],be=String(n.ariaFormat.to(C[A]));R=F.fromStepping(R).toFixed(1),ge=F.fromStepping(ge).toFixed(1),he=F.fromStepping(he).toFixed(1),U.children[0].setAttribute("aria-valuemin",R),U.children[0].setAttribute("aria-valuemax",ge),U.children[0].setAttribute("aria-valuenow",he),U.children[0].setAttribute("aria-valuetext",be)})})}function Et(v){if(v.mode===gt.Range||v.mode===gt.Steps)return F.xVal;if(v.mode===gt.Count){if(v.values<2)throw new Error("noUiSlider: 'values' (>= 2) required for mode 'count'.");for(var g=v.values-1,C=100/g,E=[];g--;)E[g]=g*C;return E.push(100),xt(E,v.stepped)}return v.mode===gt.Positions?xt(v.values,v.stepped):v.mode===gt.Values?v.stepped?v.values.map(function(P){return F.fromStepping(F.getStep(F.toStepping(P)))}):v.values:[]}function xt(v,g){return v.map(function(C){return F.fromStepping(g?F.getStep(C):C)})}function Yt(v){function g(he,be){return Number((he+be).toFixed(7))}var C=Et(v),E={},P=F.xVal[0],A=F.xVal[F.xVal.length-1],U=!1,R=!1,ge=0;return C=ka(C.slice().sort(function(he,be){return he-be})),C[0]!==P&&(C.unshift(P),U=!0),C[C.length-1]!==A&&(C.push(A),R=!0),C.forEach(function(he,be){var Me,le,we,Be=he,De=C[be+1],Pe,wi,Ei,Vi,Qi,Ii,Ji,en=v.mode===gt.Steps;for(en&&(Me=F.xNumSteps[be]),Me||(Me=De-Be),De===void 0&&(De=Be),Me=Math.max(Me,1e-7),le=Be;le<=De;le=g(le,Me)){for(Pe=F.toStepping(le),wi=Pe-ge,Qi=wi/(v.density||1),Ii=Math.round(Qi),Ji=wi/Ii,we=1;we<=Ii;we+=1)Ei=ge+we*Ji,E[Ei.toFixed(5)]=[F.fromStepping(Ei),0];Vi=C.indexOf(le)>-1?Le.LargeValue:en?Le.SmallValue:Le.NoValue,!be&&U&&le!==De&&(Vi=0),le===De&&R||(E[Pe.toFixed(5)]=[le,Vi]),ge=Pe}}),E}function Vt(v,g,C){var E,P,A=Ye.createElement("div"),U=(E={},E[Le.None]="",E[Le.NoValue]=n.cssClasses.valueNormal,E[Le.LargeValue]=n.cssClasses.valueLarge,E[Le.SmallValue]=n.cssClasses.valueSub,E),R=(P={},P[Le.None]="",P[Le.NoValue]=n.cssClasses.markerNormal,P[Le.LargeValue]=n.cssClasses.markerLarge,P[Le.SmallValue]=n.cssClasses.markerSub,P),ge=[n.cssClasses.valueHorizontal,n.cssClasses.valueVertical],he=[n.cssClasses.markerHorizontal,n.cssClasses.markerVertical];He(A,n.cssClasses.pips),He(A,n.ort===0?n.cssClasses.pipsHorizontal:n.cssClasses.pipsVertical);function be(le,we){var Be=we===n.cssClasses.value,De=Be?ge:he,Pe=Be?U:R;return we+" "+De[n.ort]+" "+Pe[le]}function Me(le,we,Be){if(Be=g?g(we,Be):Be,Be!==Le.None){var De=qe(A,!1);De.className=be(Be,n.cssClasses.marker),De.style[n.style]=le+"%",Be>Le.NoValue&&(De=qe(A,!1),De.className=be(Be,n.cssClasses.value),De.setAttribute("data-value",String(we)),De.style[n.style]=le+"%",De.innerHTML=String(C.to(we)))}}return Object.keys(v).forEach(function(le){Me(le,v[le][0],v[le][1])}),A}function It(){Y&&(yo(Y),Y=null)}function Dt(v){It();var g=Yt(v),C=v.filter,E=v.format||{to:function(P){return String(Math.round(P))}};return Y=d.appendChild(Vt(g,C,E)),Y}function Zt(){var v=b.getBoundingClientRect(),g="offset"+["Width","Height"][n.ort];return n.ort===0?v.width||b[g]:v.height||b[g]}function Je(v,g,C,E){var P=function(U){var R=Qt(U,E.pageOffset,E.target||g);if(!R||qt()&&!E.doNotReject||Ia(d,n.cssClasses.tap)&&!E.doNotReject||v===o.start&&R.buttons!==void 0&&R.buttons>1||E.hover&&R.buttons)return!1;l||R.preventDefault(),R.calcPoint=R.points[n.ort],C(R,E)},A=[];return v.split(" ").forEach(function(U){g.addEventListener(U,P,l?{passive:!0}:!1),A.push([U,P])}),A}function Qt(v,g,C){var E=v.type.indexOf("touch")===0,P=v.type.indexOf("mouse")===0,A=v.type.indexOf("pointer")===0,U=0,R=0;if(v.type.indexOf("MSPointer")===0&&(A=!0),v.type==="mousedown"&&!v.buttons&&!v.touches)return!1;if(E){var ge=function(Me){var le=Me.target;return le===C||C.contains(le)||v.composed&&v.composedPath().shift()===C};if(v.type==="touchstart"){var he=Array.prototype.filter.call(v.touches,ge);if(he.length>1)return!1;U=he[0].pageX,R=he[0].pageY}else{var be=Array.prototype.find.call(v.changedTouches,ge);if(!be)return!1;U=be.pageX,R=be.pageY}}return g=g||wo(Ye),(P||A)&&(U=v.clientX+g.x,R=v.clientY+g.y),v.pageOffset=g,v.points=[U,R],v.cursor=P||A,v}function Pt(v){var g=v-Ea(b,n.ort),C=g*100/Zt();return C=To(C),n.dir?100-C:C}function Ti(v){var g=100,C=!1;return D.forEach(function(E,P){if(!Ct(P)){var A=J[P],U=Math.abs(A-v),R=U===100&&g===100,ge=U<g,he=U<=g&&v>A;(ge||he||R)&&(C=P,g=U)}}),C}function T(v,g){v.type==="mouseout"&&v.target.nodeName==="HTML"&&v.relatedTarget===null&&X(v,g)}function j(v,g){if(navigator.appVersion.indexOf("MSIE 9")===-1&&v.buttons===0&&g.buttonsProperty!==0)return X(v,g);var C=(n.dir?-1:1)*(v.calcPoint-g.startCalcPoint),E=C*100/g.baseSize;Jt(C>0,E,g.locations,g.handleNumbers,g.connect)}function X(v,g){g.handle&&(vi(g.handle,n.cssClasses.active),ue-=1),g.listeners.forEach(function(C){pt.removeEventListener(C[0],C[1])}),ue===0&&(vi(d,n.cssClasses.drag),ki(),v.cursor&&(ht.style.cursor="",ht.removeEventListener("selectstart",bo))),n.events.smoothSteps&&(g.handleNumbers.forEach(function(C){mt(C,J[C],!0,!0,!1,!1)}),g.handleNumbers.forEach(function(C){me("update",C)})),g.handleNumbers.forEach(function(C){me("change",C),me("set",C),me("end",C)})}function re(v,g){if(!g.handleNumbers.some(Ct)){var C;if(g.handleNumbers.length===1){var E=D[g.handleNumbers[0]];C=E.children[0],ue+=1,He(C,n.cssClasses.active)}v.stopPropagation();var P=[],A=Je(o.move,pt,j,{target:v.target,handle:C,connect:g.connect,listeners:P,startCalcPoint:v.calcPoint,baseSize:Zt(),pageOffset:v.pageOffset,handleNumbers:g.handleNumbers,buttonsProperty:v.buttons,locations:J.slice()}),U=Je(o.end,pt,X,{target:v.target,handle:C,listeners:P,doNotReject:!0,handleNumbers:g.handleNumbers}),R=Je("mouseout",pt,T,{target:v.target,handle:C,listeners:P,doNotReject:!0,handleNumbers:g.handleNumbers});P.push.apply(P,A.concat(U,R)),v.cursor&&(ht.style.cursor=getComputedStyle(v.target).cursor,D.length>1&&He(d,n.cssClasses.drag),ht.addEventListener("selectstart",bo,!1)),g.handleNumbers.forEach(function(ge){me("start",ge)})}}function Ae(v){v.stopPropagation();var g=Pt(v.calcPoint),C=Ti(g);C!==!1&&(n.events.snap||Mo(d,n.cssClasses.tap,n.animationDuration),mt(C,g,!0,!0),ki(),me("slide",C,!0),me("update",C,!0),n.events.snap?re(v,{handleNumbers:[C]}):(me("change",C,!0),me("set",C,!0)))}function ke(v){var g=Pt(v.calcPoint),C=F.getStep(g),E=F.fromStepping(C);Object.keys(Fe).forEach(function(P){P.split(".")[0]==="hover"&&Fe[P].forEach(function(A){A.call(ii,E)})})}function it(v,g){if(qt()||Ct(g))return!1;var C=["Left","Right"],E=["Down","Up"],P=["PageDown","PageUp"],A=["Home","End"];n.dir&&!n.ort?C.reverse():n.ort&&!n.dir&&(E.reverse(),P.reverse());var U=v.key.replace("Arrow",""),R=U===P[0],ge=U===P[1],he=U===E[0]||U===C[0]||R,be=U===E[1]||U===C[1]||ge,Me=U===A[0],le=U===A[1];if(!he&&!be&&!Me&&!le)return!0;v.preventDefault();var we;if(be||he){var Be=he?0:1,De=Yi(g),Pe=De[Be];if(Pe===null)return!1;Pe===!1&&(Pe=F.getDefaultStep(J[g],he,n.keyboardDefaultStep)),ge||R?Pe*=n.keyboardPageMultiplier:Pe*=n.keyboardMultiplier,Pe=Math.max(Pe,1e-7),Pe=(he?-1:1)*Pe,we=xe[g]+Pe}else le?we=n.spectrum.xVal[n.spectrum.xVal.length-1]:we=n.spectrum.xVal[0];return mt(g,F.toStepping(we),!0,!0),me("slide",g),me("update",g),me("change",g),me("set",g),!1}function Ve(v){v.fixed||D.forEach(function(g,C){Je(o.start,g.children[0],re,{handleNumbers:[C]})}),v.tap&&Je(o.start,b,Ae,{}),v.hover&&Je(o.move,b,ke,{hover:!0}),v.drag&&G.forEach(function(g,C){if(!(g===!1||C===0||C===G.length-1)){var E=D[C-1],P=D[C],A=[g],U=[E,P],R=[C-1,C];He(g,n.cssClasses.draggable),v.fixed&&(A.push(E.children[0]),A.push(P.children[0])),v.dragAll&&(U=D,R=N),A.forEach(function(ge){Je(o.start,ge,re,{handles:U,handleNumbers:R,connect:g})})}})}function Ue(v,g){Fe[v]=Fe[v]||[],Fe[v].push(g),v.split(".")[0]==="update"&&D.forEach(function(C,E){me("update",E)})}function Oe(v){return v===ct.aria||v===ct.tooltips}function Ie(v){var g=v&&v.split(".")[0],C=g?v.substring(g.length):v;Object.keys(Fe).forEach(function(E){var P=E.split(".")[0],A=E.substring(P.length);(!g||g===P)&&(!C||C===A)&&(!Oe(A)||C===A)&&delete Fe[E]})}function me(v,g,C){Object.keys(Fe).forEach(function(E){var P=E.split(".")[0];v===P&&Fe[E].forEach(function(A){A.call(ii,xe.map(n.format.to),g,xe.slice(),C||!1,J.slice(),ii)})})}function Ge(v,g,C,E,P,A,U){var R;return D.length>1&&!n.events.unconstrained&&(E&&g>0&&(R=F.getAbsoluteDistance(v[g-1],n.margin,!1),C=Math.max(C,R)),P&&g<D.length-1&&(R=F.getAbsoluteDistance(v[g+1],n.margin,!0),C=Math.min(C,R))),D.length>1&&n.limit&&(E&&g>0&&(R=F.getAbsoluteDistance(v[g-1],n.limit,!1),C=Math.min(C,R)),P&&g<D.length-1&&(R=F.getAbsoluteDistance(v[g+1],n.limit,!0),C=Math.max(C,R))),n.padding&&(g===0&&(R=F.getAbsoluteDistance(0,n.padding[0],!1),C=Math.max(C,R)),g===D.length-1&&(R=F.getAbsoluteDistance(100,n.padding[1],!0),C=Math.min(C,R))),U||(C=F.getStep(C)),C=To(C),C===v[g]&&!A?!1:C}function At(v,g){var C=n.ort;return(C?g:v)+", "+(C?v:g)}function Jt(v,g,C,E,P){var A=C.slice(),U=E[0],R=n.events.smoothSteps,ge=[!v,v],he=[v,!v];E=E.slice(),v&&E.reverse(),E.length>1?E.forEach(function(Me,le){var we=Ge(A,Me,A[Me]+g,ge[le],he[le],!1,R);we===!1?g=0:(g=we-A[Me],A[Me]=we)}):ge=he=[!0];var be=!1;E.forEach(function(Me,le){be=mt(Me,C[Me]+g,ge[le],he[le],!1,R)||be}),be&&(E.forEach(function(Me){me("update",Me),me("slide",Me)}),P!=null&&me("drag",U))}function ei(v,g){return n.dir?100-v-g:v}function Dr(v,g){J[v]=g,xe[v]=F.fromStepping(g);var C=ei(g,0)-zt,E="translate("+At(C+"%","0")+")";if(D[v].style[n.transformRule]=E,n.events.invertConnects&&J.length>1){var P=J.every(function(A,U,R){return U===0||A>=R[U-1]});if(tt!==!P){Nr();return}}Bt(v),Bt(v+1),tt&&(Bt(v-1),Bt(v+2))}function ki(){N.forEach(function(v){var g=J[v]>50?-1:1,C=3+(D.length+g*v);D[v].style.zIndex=String(C)})}function mt(v,g,C,E,P,A){return P||(g=Ge(J,v,g,C,E,!1,A)),g===!1?!1:(Dr(v,g),!0)}function Bt(v){if(G[v]){var g=J.slice();tt&&g.sort(function(R,ge){return R-ge});var C=0,E=100;v!==0&&(C=g[v-1]),v!==G.length-1&&(E=g[v]);var P=E-C,A="translate("+At(ei(C,P)+"%","0")+")",U="scale("+At(P/100,"1")+")";G[v].style[n.transformRule]=A+" "+U}}function Ki(v,g){return v===null||v===!1||v===void 0||(typeof v=="number"&&(v=String(v)),v=n.format.from(v),v!==!1&&(v=F.toStepping(v)),v===!1||isNaN(v))?J[g]:v}function ti(v,g,C){var E=gi(v),P=J[0]===void 0;g=g===void 0?!0:g,n.animate&&!P&&Mo(d,n.cssClasses.tap,n.animationDuration),N.forEach(function(R){mt(R,Ki(E[R],R),!0,!1,C)});var A=N.length===1?0:1;if(P&&F.hasNoSize()&&(C=!0,J[0]=0,N.length>1)){var U=100/(N.length-1);N.forEach(function(R){J[R]=R*U})}for(;A<N.length;++A)N.forEach(function(R){mt(R,J[R],!0,!0,C)});ki(),N.forEach(function(R){me("update",R),E[R]!==null&&g&&me("set",R)})}function Pr(v){ti(n.start,v)}function Ar(v,g,C,E){if(v=Number(v),!(v>=0&&v<N.length))throw new Error("noUiSlider: invalid handle number, got: "+v);mt(v,Ki(g,v),!0,!0,E),me("update",v),C&&me("set",v)}function Xi(v){if(v===void 0&&(v=!1),v)return xe.length===1?xe[0]:xe.slice(0);var g=xe.map(n.format.to);return g.length===1?g[0]:g}function Br(){for(Ie(ct.aria),Ie(ct.tooltips),Object.keys(n.cssClasses).forEach(function(v){vi(d,n.cssClasses[v])});d.firstChild;)d.removeChild(d.firstChild);delete d.noUiSlider}function Yi(v){var g=J[v],C=F.getNearbySteps(g),E=xe[v],P=C.thisStep.step,A=null;if(n.snap)return[E-C.stepBefore.startValue||null,C.stepAfter.startValue-E||null];P!==!1&&E+P>C.stepAfter.startValue&&(P=C.stepAfter.startValue-E),E>C.thisStep.startValue?A=C.thisStep.step:C.stepBefore.step===!1?A=!1:A=E-C.stepBefore.highestStep,g===100?P=null:g===0&&(A=null);var U=F.countStepDecimals();return P!==null&&P!==!1&&(P=Number(P.toFixed(U))),A!==null&&A!==!1&&(A=Number(A.toFixed(U))),[A,P]}function Hr(){return N.map(Yi)}function Or(v,g){var C=Xi(),E=["margin","limit","padding","range","animate","snap","step","format","pips","tooltips","connect"];E.forEach(function(A){v[A]!==void 0&&(t[A]=v[A])});var P=Io(t);E.forEach(function(A){v[A]!==void 0&&(n[A]=P[A])}),F=P.spectrum,n.margin=P.margin,n.limit=P.limit,n.padding=P.padding,n.pips?Dt(n.pips):It(),n.tooltips?wt():_t(),J=[],ti(Wi(v.start)?v.start:C,g),v.connect&&Zi()}function Zi(){for(;w.firstChild;)w.removeChild(w.firstChild);for(var v=0;v<=n.handles;v++)G[v]=dt(w,n.connect[v]),Bt(v);Ve({drag:n.events.drag,fixed:!0})}function Nr(){tt=!tt,Eo(n,n.connect.map(function(v){return!v})),Zi()}function Rr(){b=Mi(d),bi(n.connect,b),Ve(n.events),ti(n.start),n.pips&&Dt(n.pips),n.tooltips&&wt(),Xt()}Rr();var ii={destroy:Br,steps:Hr,on:Ue,off:Ie,get:Xi,set:ti,setHandle:Ar,reset:Pr,disable:Kt,enable:kt,__moveHandles:function(v,g,C){Jt(v,g,J,C)},options:t,updateOptions:Or,target:d,removePips:It,removeTooltips:_t,getPositions:function(){return J.slice()},getTooltips:function(){return K},getOrigins:function(){return D},pips:Dt};return ii}function Do(e,n){if(!e||!e.nodeName)throw new Error("noUiSlider: create requires a single element, got: "+e);if(e.noUiSlider)throw new Error("noUiSlider: Slider was already initialized.");var t=Io(n),o=cs(e,t,n);return e.noUiSlider=o,o}var qi=class{to(n){return String(parseFloat(parseFloat(String(n)).toFixed(2)))}from(n){return parseFloat(n)}},_e=(()=>{class e{constructor(t,o,i){this.ngZone=t,this.el=o,this.renderer=i,this.handles=[],this.config={},this.change=new We(!0),this.update=new We(!0),this.slide=new We(!0),this.set=new We(!0),this.start=new We(!0),this.end=new We(!0),this.onChange=Function.prototype,this.cleanups=[],this.eventHandler=(l,d,b,w)=>{let D=this.toValues(d),G=!1;if(this.value===void 0){this.value=D;return}Array.isArray(D)&&this.value[b]!=D[b]&&(G=!0),!Array.isArray(D)&&this.value!=D&&(G=!0),G&&this.ngZone.run(()=>{l.observers.length>0&&l.emit(D),this.onChange(D)}),Array.isArray(D)?this.value[b]=D[b]:this.value=D},this.defaultKeyHandler=l=>{let d=this.slider.steps(),b=parseInt(l.target.getAttribute("data-handle")),w=1,D=1,G=0,Y=0;switch(l.which){case 34:D=this.config.pageSteps;break;case 40:case 37:w=-1,G=d[b][0],l.preventDefault();break;case 33:D=this.config.pageSteps;break;case 38:case 39:G=d[b][1],l.preventDefault();break;default:break}Y=w*D*G;let K;Array.isArray(this.value)?(K=[...this.value],K[b]=K[b]+Y):K=this.value+Y,this.slider.set(K)}}ngOnChanges(t){this.slider&&(t.min||t.max||t.step||t.range)&&this.ngZone.runOutsideAngular(()=>{setTimeout(()=>{this.slider.updateOptions({range:Object.assign({},{min:this.min,max:this.max},this.range||{}),step:this.step})})})}ngOnDestroy(){var t;for(this.slider.destroy();this.cleanups.length;)(t=this.cleanups.pop())==null||t()}toValues(t){let o=t.map(this.config.format.from);return o.length==1?o[0]:o}writeValue(t){this.slider?this.ngZone.runOutsideAngular(()=>{setTimeout(()=>{this.slider.set(t)})}):t!==null&&(this.value=t,this.createSlider(t))}registerOnChange(t){this.onChange=t}registerOnTouched(t){}setDisabledState(t){t?this.renderer.setAttribute(this.el.nativeElement.childNodes[0],"disabled","true"):this.renderer.removeAttribute(this.el.nativeElement.childNodes[0],"disabled")}createSlider(t){let o=JSON.parse(JSON.stringify({behaviour:this.behaviour,connect:this.connect,limit:this.limit,start:t,step:this.step,pageSteps:this.pageSteps,keyboard:this.keyboard,onKeydown:this.onKeydown,range:this.range||this.config.range||{min:this.min,max:this.max},tooltips:this.tooltips,snap:this.snap,animate:this.animate}));if(o.tooltips=this.tooltips||this.config.tooltips,o.format=this.format||this.config.format||new qi,this.ngZone.runOutsideAngular(()=>{this.slider=Do(this.el.nativeElement.querySelector("div"),Object.assign(this.config,o))}),this.handles=[].slice.call(this.el.nativeElement.querySelectorAll(".noUi-handle")),this.config.keyboard){this.config.pageSteps===void 0&&(this.config.pageSteps=10);for(let i of this.handles){i.setAttribute("tabindex",0);let l=this.config.onKeydown||this.defaultKeyHandler;this.ngZone.runOutsideAngular(()=>{this.cleanups.push(this.renderer.listen(i,"keydown",l),this.renderer.listen(i,"click",()=>{i.focus()}))})}}this.slider.on("set",(i,l,d)=>{this.eventHandler(this.set,i,l,d)}),this.slider.on("update",(i,l,d)=>{this.update.observers.length>0&&this.ngZone.run(()=>{this.update.emit(this.toValues(i))})}),this.slider.on("change",(i,l,d)=>{this.change.observers.length>0&&this.ngZone.run(()=>{this.change.emit(this.toValues(i))})}),this.slider.on("slide",(i,l,d)=>{this.eventHandler(this.slide,i,l,d)}),this.slider.on("start",(i,l,d)=>{this.start.observers.length>0&&this.ngZone.run(()=>{this.start.emit(this.toValues(i))})}),this.slider.on("end",(i,l,d)=>{this.end.observers.length>0&&this.ngZone.run(()=>{this.end.emit(this.toValues(i))})})}}return e.\u0275fac=function(t){return new(t||e)(Ee(dn),Ee(rt),Ee(si))},e.\u0275cmp=k({type:e,selectors:[["nouislider"]],hostVars:2,hostBindings:function(t,o){t&2&&gn("ng2-nouislider",!0)},inputs:{disabled:"disabled",behaviour:"behaviour",connect:"connect",limit:"limit",min:"min",max:"max",snap:"snap",animate:"animate",range:"range",step:"step",format:"format",pageSteps:"pageSteps",config:"config",keyboard:"keyboard",onKeydown:"onKeydown",tooltips:"tooltips"},outputs:{change:"change",update:"update",slide:"slide",set:"set",start:"start",end:"end"},features:[ci([{provide:Mn,useExisting:pn(()=>e),multi:!0}]),ot],decls:1,vars:1,template:function(t,o){t&1&&f(0,"div"),t&2&&V("disabled",o.disabled?!0:void 0)},styles:["[_nghost-%COMP%]{display:block;margin-top:1rem;margin-bottom:1rem}"]}),e})(),pu=(()=>{class e{}return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=yt({type:e}),e.\u0275inj=St({imports:[_e]}),e})();var Po=(e,n)=>({"fa-check-circle":e,"fa-blank":n});function ds(e,n){if(e&1){let t=oe();a(0,"h6",12),c(1),p(2,"translate"),s(),a(3,"nouislider",13),ie("ngModelChange",function(i){W(t);let l=h();return te(l.targetRotationSpeed.value,i)||(l.targetRotationSpeed.value=i),z(i)}),S("ngModelChange",function(){W(t);let i=h();return z(i.onTargetRotationSpeedChange())}),s()}if(e&2){let t=h();r(),Z("",m(2,6,"accessories.control.rotation_speed"),": ",t.targetRotationSpeed.value,"%"),r(2),u("min",t.targetRotationSpeed.min)("max",t.targetRotationSpeed.max)("step",t.targetRotationSpeed.step),ee("ngModel",t.targetRotationSpeed.value)}}var Ao=(()=>{class e{$activeModal=O(pe);service;targetMode;targetRotationSpeed;targetRotationSpeedChanged=new ae;constructor(){this.targetRotationSpeedChanged.pipe(Ce(300),Te()).subscribe(()=>{this.service.getCharacteristic("RotationSpeed").setValue(this.targetRotationSpeed.value),this.targetRotationSpeed.value&&!this.service.values.Active?(this.targetMode=1,this.service.getCharacteristic("Active").setValue(this.targetMode)):!this.targetRotationSpeed.value&&this.service.values.Active&&(this.targetMode=0,this.service.getCharacteristic("Active").setValue(this.targetMode))})}ngOnInit(){this.targetMode=this.service.values.Active,this.loadRotationSpeed()}loadRotationSpeed(){let t=this.service.getCharacteristic("RotationSpeed");t&&(this.targetRotationSpeed={value:t.value,min:t.minValue,max:t.maxValue,step:t.minStep})}setTargetMode(t){this.targetMode=t,this.service.getCharacteristic("Active").setValue(this.targetMode),this.targetMode&&this.targetRotationSpeed&&!this.targetRotationSpeed.value&&(this.targetRotationSpeed.value=100)}onTargetRotationSpeedChange(){this.targetRotationSpeedChanged.next(this.targetRotationSpeed.value)}static \u0275fac=function(o){return new(o||e)};static \u0275cmp=k({type:e,selectors:[["app-airpurifier-manage"]],inputs:{service:"service"},decls:23,vars:19,consts:[[1,"modal-content"],[1,"modal-header"],[1,"modal-title",3,"innerText"],["type","button","data-bs-dismiss","modal",1,"btn-close",3,"click"],[1,"modal-body","text-center","px-5"],["role","group","aria-label","Air Purifier Mode Control",1,"btn-group-vertical","d-flex","justify-content-center","mb-0","p-0"],["type","button",1,"btn","mb-0","mx-0","p-3","btn-control",3,"click"],[1,"float-start","primary-text"],[1,"fas","fa-fw","fa-xl",3,"ngClass"],[1,"float-end"],[1,"fas","fa-fw","fa-xl","fa-blank"],[1,"modal-footer"],[1,"mt-4"],[3,"ngModelChange","min","max","step","ngModel"]],template:function(o,i){o&1&&(a(0,"div",0)(1,"div",1),f(2,"h5",2),a(3,"button",3),p(4,"translate"),S("click",function(){return i.$activeModal.dismiss("Dismiss")}),s()(),a(5,"div",4)(6,"div",5)(7,"button",6),S("click",function(d){return i.setTargetMode(0),d.target.blur()}),a(8,"div",7),f(9,"i",8),s(),c(10),p(11,"translate"),a(12,"div",9),f(13,"i",10),s()(),a(14,"button",6),S("click",function(d){return i.setTargetMode(1),d.target.blur()}),a(15,"div",7),f(16,"i",8),s(),c(17),p(18,"translate"),a(19,"div",9),f(20,"i",10),s()()(),M(21,ds,4,8),s(),f(22,"div",11),s()),o&2&&(r(2),u("innerText",i.service.customName||i.service.serviceName),r(),V("aria-label",m(4,7,"form.button_close")),r(6),u("ngClass",B(13,Po,i.targetMode===0,i.targetMode!==0)),r(),y(" ",m(11,9,"accessories.control.off")," "),r(6),u("ngClass",B(16,Po,i.targetMode===1,i.targetMode!==1)),r(),y(" ",m(18,11,"accessories.control.on")," "),r(4),_(i.targetRotationSpeed?21:-1))},dependencies:[ce,ve,fe,_e,I,H],styles:[".switch-off svg .airpurifier_off_grey{stroke:gray;fill:gray} .switch-off svg .airpurifier_off_lgrey{fill:#d9d9d9}"]})}return e})();var Q=(()=>{class e{duration=350;longclick=Pi();shortclick=Pi();downTimeout;done=!1;constructor(){}onEnter(t){this.shortclick.emit(t)}onMouseUp(t){clearTimeout(this.downTimeout),this.done||(this.done=!0,this.shortclick.emit(t))}onTouchEnd(t){clearTimeout(this.downTimeout),t.preventDefault(),t.stopPropagation(),this.done||(this.done=!0,this.shortclick.emit(t))}onMouseDown(t){t instanceof MouseEvent&&t.button!==0||(this.done=!1,t instanceof TouchEvent&&(t.preventDefault(),t.stopPropagation()),this.downTimeout=setTimeout(()=>{this.done||(this.done=!0,this.longclick.emit(t))},this.duration))}onMouseMove(){this.done=!0,clearTimeout(this.downTimeout)}ngOnDestroy(){clearTimeout(this.downTimeout)}static \u0275fac=function(o){return new(o||e)};static \u0275dir=bt({type:e,selectors:[["","appLongclick",""]],hostBindings:function(o,i){o&1&&S("keyup.enter",function(d){return i.onEnter(d)})("mouseup",function(d){return i.onMouseUp(d)})("touchend",function(d){return i.onTouchEnd(d)})("touchstart",function(d){return i.onMouseDown(d)})("mousedown",function(d){return i.onMouseDown(d)})("mousemove",function(d){return i.onMouseMove(d)})("touchmove",function(d){return i.onMouseMove(d)})},inputs:{duration:"duration"},outputs:{longclick:"longclick",shortclick:"shortclick"}})}return e})();var ms=(e,n)=>({"switch-on":e,"switch-off":n});function us(e,n){if(e&1&&(f(0,"div",4),p(1,"translate")),e&2){let t=h();u("innerText",m(1,1,t.service.values.Active?"accessories.control.on":"accessories.control.off"))}}function vs(e,n){if(e&1&&(a(0,"div",5),c(1),s()),e&2){let t=h();r(),y("",t.service.values.RotationSpeed,"%")}}var Bo=(()=>{class e{$modal=O(se);service;constructor(){}onClick(){this.service.getCharacteristic("Active").setValue(this.service.values.Active?0:1),!this.service.values.On&&"RotationSpeed"in this.service.values&&!this.service.values.RotationSpeed&&this.service.getCharacteristic("RotationSpeed").setValue(100)}onLongClick(){let t=this.$modal.open(Ao,{size:"md"});t.componentInstance.service=this.service}static \u0275fac=function(o){return new(o||e)};static \u0275cmp=k({type:e,selectors:[["app-airpurifier"]],inputs:{service:"service"},decls:7,vars:9,consts:[["appLongclick","","tabindex","0",1,"accessory-box",3,"longclick","shortclick","ngClass"],[1,"d-flex","flex-column","h-100"],[1,"accessory-svg",3,"inlineSVG"],[1,"accessory-label","mt-auto"],[1,"accessory-label","grey-text",3,"innerText"],[1,"accessory-label","grey-text"]],template:function(o,i){o&1&&(a(0,"div",0),S("longclick",function(){return i.onLongClick()})("shortclick",function(){return i.onClick()}),a(1,"div",1),f(2,"div",2),a(3,"div",3),c(4),s(),M(5,us,2,3,"div",4)(6,vs,2,1,"div",5),s()()),o&2&&(u("ngClass",B(6,ms,i.service.values.Active,!i.service.values.Active)),r(2),u("inlineSVG","/assets/hap-icons/airpurifier.svg"),V("aria-label","Air Purifier"),r(2),x(i.service.customName||i.service.serviceName),r(),_(!i.service.values.RotationSpeed||!i.service.values.Active?5:-1),r(),_(i.service.values.RotationSpeed&&i.service.values.Active?6:-1))},dependencies:[Q,H,q,$,I],styles:[".switch-off svg .airpurifier_off_grey{stroke:gray;fill:gray} .switch-off svg .airpurifier_off_lgrey{fill:#d9d9d9}"]})}return e})();var fs=e=>({"switch-on":e}),gs=(e,n)=>({"grey-text":e,"red-text":n}),Ho=(()=>{class e{service;labels=["Unknown","Excellent","Good","Fair","Inferior","Poor"];constructor(){}static \u0275fac=function(o){return new(o||e)};static \u0275cmp=k({type:e,selectors:[["app-airqualitysensor"]],inputs:{service:"service"},decls:7,vars:11,consts:[[1,"accessory-box",3,"ngClass"],[1,"d-flex","flex-column","h-100"],[1,"accessory-svg",3,"inlineSVG"],[1,"accessory-label","mt-auto"],[1,"accessory-label",3,"ngClass"]],template:function(o,i){o&1&&(a(0,"div",0)(1,"div",1),f(2,"div",2),a(3,"div",3),c(4),s(),a(5,"div",4),c(6),s()()()),o&2&&(u("ngClass",ne(6,fs,i.service.values.AirQuality>3)),r(2),u("inlineSVG","/assets/hap-icons/airquality.svg"),V("aria-label","Switch"),r(2),x(i.service.customName||i.service.serviceName),r(),u("ngClass",B(8,gs,i.service.values.AirQuality<4,i.service.values.AirQuality>3)),r(),y(" ",i.labels[i.service.values.AirQuality]," "))},dependencies:[H,q,$],encapsulation:2})}return e})();var hs=e=>({lowbattery:e});function Cs(e,n){e&1&&(c(0),p(1,"translate")),e&2&&y(" ",m(1,1,"accessories.control.battery_notcharging")," ")}function _s(e,n){e&1&&(c(0),p(1,"translate")),e&2&&y(" ",m(1,1,"accessories.control.battery_charging")," ")}function xs(e,n){e&1&&(c(0),p(1,"translate")),e&2&&y(" ",m(1,1,"accessories.control.battery_notchargeable")," ")}function Ss(e,n){e&1&&(a(0,"span",7),c(1),p(2,"translate"),s()),e&2&&(r(),x(m(2,1,"accessories.control.battery_low")))}function ys(e,n){e&1&&(c(0),p(1,"translate")),e&2&&y(" ",m(1,1,"accessories.control.battery_charged")," ")}var Oo=(()=>{class e{service;constructor(){}static \u0275fac=function(o){return new(o||e)};static \u0275cmp=k({type:e,selectors:[["app-battery"]],inputs:{service:"service"},decls:15,vars:11,consts:[[1,"accessory-box"],[1,"d-flex","flex-column","h-100"],[1,"batterylevel-battery",3,"ngClass"],[1,"battery-level-fill"],[1,"battery-text"],[1,"accessory-label","mt-auto"],[1,"accessory-label","grey-text"],[1,"red-text"]],template:function(o,i){o&1&&(a(0,"div",0)(1,"div",1)(2,"div",2),f(3,"div",3),a(4,"span",4),c(5),p(6,"number"),s()(),a(7,"div",5),c(8),s(),a(9,"div",6),M(10,Cs,2,3)(11,_s,2,3)(12,xs,2,3)(13,Ss,3,3,"span",7)(14,ys,2,3),s()()()),o&2&&(r(2),u("ngClass",ne(9,hs,i.service.values.StatusLowBattery===1)),r(),fn("width",i.service.values.BatteryLevel||0,"%"),r(2),y(" ",Se(6,6,i.service.values.BatteryLevel||0,"1.0-0")+"%"," "),r(3),x(i.service.customName||i.service.serviceName),r(2),_(i.service.values.ChargingState===0?10:i.service.values.ChargingState===1?11:i.service.values.ChargingState===2?12:i.service.values.StatusLowBattery===1?13:14))},dependencies:[H,Ne,I],styles:['.batterylevel-battery[_ngcontent-%COMP%]{position:relative;width:75px;height:30px;border:1px solid rgb(128,128,128);border-radius:4px;margin-bottom:6px;text-align:center;display:flex;align-items:center;justify-content:center;color:#d3d3d3;font-size:14px}.batterylevel-battery[_ngcontent-%COMP%]:after{content:"";position:absolute;top:7px;right:-6px;width:6px;height:13px;background-color:gray;border-radius:2px}.batterylevel-battery[_ngcontent-%COMP%] .battery-level-fill[_ngcontent-%COMP%]{position:absolute;top:0;left:0;height:100%;background-color:#42d672;z-index:1;transition:width .3s ease-in-out}.batterylevel-battery[_ngcontent-%COMP%] .battery-text[_ngcontent-%COMP%]{position:relative;z-index:2;color:#fff}@media (max-width: 575px){.batterylevel-battery[_ngcontent-%COMP%]{width:50px;height:25px;font-size:12px}.batterylevel-battery[_ngcontent-%COMP%]:after{top:4px}}.lowbattery[_ngcontent-%COMP%] .battery-level-fill[_ngcontent-%COMP%]{background-color:#e69533}']})}return e})();var bs=(e,n)=>({"switch-on":e,"switch-off":n});function Ms(e,n){e&1&&(a(0,"div",4),c(1),p(2,"translate"),s()),e&2&&(r(),x(m(2,1,"accessories.control.detected")))}function Ts(e,n){e&1&&(a(0,"div",5),c(1),p(2,"translate"),s()),e&2&&(r(),x(m(2,1,"accessories.control.not_detected")))}var No=(()=>{class e{service;constructor(){}static \u0275fac=function(o){return new(o||e)};static \u0275cmp=k({type:e,selectors:[["app-carbondioxidesensor"]],inputs:{service:"service"},decls:7,vars:9,consts:[[1,"accessory-box",3,"ngClass"],[1,"d-flex","flex-column","h-100"],[1,"accessory-svg",3,"inlineSVG"],[1,"accessory-label","mt-auto"],[1,"accessory-label","red-text"],[1,"accessory-label","grey-text"]],template:function(o,i){o&1&&(a(0,"div",0)(1,"div",1),f(2,"div",2),a(3,"div",3),c(4),s(),M(5,Ms,3,3,"div",4)(6,Ts,3,3,"div",5),s()()),o&2&&(u("ngClass",B(6,bs,i.service.values.CarbonDioxideDetected,!i.service.values.CarbonDioxideDetected)),r(2),u("inlineSVG","/assets/hap-icons/co2-sensor.svg"),V("aria-label","Carbon Dioxide Sensor"),r(2),x(i.service.customName||i.service.serviceName),r(),_(i.service.values.CarbonDioxideDetected?5:-1),r(),_(i.service.values.CarbonDioxideDetected?-1:6))},dependencies:[H,q,$,I],styles:[".switch-off svg .smoke_sensor_trigger_lines{display:none} .switch-off svg .smoke_sensor_box{fill:gray} .switch-off svg .label-text{fill:#2b2b2b}"]})}return e})();var ks=(e,n)=>({"switch-on":e,"switch-off":n});function ws(e,n){e&1&&(a(0,"div",4),c(1),p(2,"translate"),s()),e&2&&(r(),x(m(2,1,"accessories.control.detected")))}function Es(e,n){e&1&&(a(0,"div",5),c(1),p(2,"translate"),s()),e&2&&(r(),x(m(2,1,"accessories.control.not_detected")))}var Ro=(()=>{class e{service;constructor(){}static \u0275fac=function(o){return new(o||e)};static \u0275cmp=k({type:e,selectors:[["app-carbonmonoxidesensor"]],inputs:{service:"service"},decls:7,vars:9,consts:[[1,"accessory-box",3,"ngClass"],[1,"d-flex","flex-column","h-100"],[1,"accessory-svg",3,"inlineSVG"],[1,"accessory-label","mt-auto"],[1,"accessory-label","red-text"],[1,"accessory-label","grey-text"]],template:function(o,i){o&1&&(a(0,"div",0)(1,"div",1),f(2,"div",2),a(3,"div",3),c(4),s(),M(5,ws,3,3,"div",4)(6,Es,3,3,"div",5),s()()),o&2&&(u("ngClass",B(6,ks,i.service.values.CarbonMonoxideDetected,!i.service.values.CarbonMonoxideDetected)),r(2),u("inlineSVG","/assets/hap-icons/co-sensor.svg"),V("aria-label","Carbon Monoxide Sensor"),r(2),x(i.service.customName||i.service.serviceName),r(),_(i.service.values.CarbonMonoxideDetected?5:-1),r(),_(i.service.values.CarbonMonoxideDetected?-1:6))},dependencies:[H,q,$,I],styles:[".switch-off svg .smoke_sensor_trigger_lines{display:none} .switch-off svg .smoke_sensor_box{fill:gray} .switch-off svg .label-text{fill:#2b2b2b}"]})}return e})();var Vs=(e,n)=>({"switch-on":e,"switch-off":n});function Is(e,n){e&1&&f(0,"div",2),e&2&&(u("inlineSVG","/assets/hap-icons/contactsensor-open.svg"),V("aria-label","Switch"))}function Ds(e,n){e&1&&f(0,"div",2),e&2&&(u("inlineSVG","/assets/hap-icons/contactsensor-closed.svg"),V("aria-label","Switch"))}function Ps(e,n){e&1&&(a(0,"div",4),c(1),p(2,"translate"),s()),e&2&&(r(),x(m(2,1,"accessories.control.open")))}function As(e,n){e&1&&(a(0,"div",5),c(1),p(2,"translate"),s()),e&2&&(r(),x(m(2,1,"accessories.control.closed")))}var Lo=(()=>{class e{service;constructor(){}static \u0275fac=function(o){return new(o||e)};static \u0275cmp=k({type:e,selectors:[["app-contactsensor"]],inputs:{service:"service"},decls:8,vars:9,consts:[[1,"accessory-box",3,"ngClass"],[1,"d-flex","flex-column","h-100"],[1,"accessory-svg",3,"inlineSVG"],[1,"accessory-label","mt-auto"],[1,"accessory-label","red-text"],[1,"accessory-label","grey-text"]],template:function(o,i){o&1&&(a(0,"div",0)(1,"div",1),M(2,Is,1,2,"div",2)(3,Ds,1,2,"div",2),a(4,"div",3),c(5),s(),M(6,Ps,3,3,"div",4)(7,As,3,3,"div",5),s()()),o&2&&(u("ngClass",B(6,Vs,i.service.values.ContactSensorState,!i.service.values.ContactSensorState)),r(2),_(i.service.values.ContactSensorState?2:-1),r(),_(i.service.values.ContactSensorState?-1:3),r(2),x(i.service.customName||i.service.serviceName),r(),_(i.service.values.ContactSensorState?6:-1),r(),_(i.service.values.ContactSensorState?-1:7))},dependencies:[H,q,$,I],styles:["body.dark-mode .switch-off svg .contact_sensor_split_line{fill:#2b2b2b}"]})}return e})();function Bs(e,n){e&1&&(c(0),p(1,"translate")),e&2&&y(" ",m(1,1,"accessories.control.closed")," ")}function Hs(e,n){e&1&&(c(0),p(1,"translate")),e&2&&y(" ",m(1,1,"accessories.control.open")," ")}function Os(e,n){if(e&1&&M(0,Bs,2,3)(1,Hs,2,3),e&2){let t=h();_(t.service.values.CurrentPosition===0?0:1)}}function Ns(e,n){e&1&&(c(0),p(1,"translate")),e&2&&y(" ",m(1,1,"accessories.control.opening"),"... ")}function Rs(e,n){e&1&&(c(0),p(1,"translate")),e&2&&y(" ",m(1,1,"accessories.control.closing"),"... ")}var Fo=(()=>{class e{$activeModal=O(pe);service;targetMode;targetPosition;targetPositionChanged=new ae;constructor(){this.targetPositionChanged.pipe(Ce(300),Te()).subscribe(()=>{this.service.getCharacteristic("CurrentPosition").value<this.targetPosition.value?this.service.values.PositionState=1:this.service.getCharacteristic("CurrentPosition").value>this.targetPosition.value&&(this.service.values.PositionState=0),this.service.getCharacteristic("TargetPosition").setValue(this.targetPosition.value)})}ngOnInit(){this.targetMode=this.service.values.On,this.loadTargetPosition()}loadTargetPosition(){let t=this.service.getCharacteristic("TargetPosition");t&&(this.targetPosition={value:t.value,min:t.minValue,max:t.maxValue,step:t.minStep},setTimeout(()=>{let o=document.querySelectorAll(".noUi-target")[0];o&&(o.style.background="linear-gradient(to right, #242424, #ffd6aa)")},10))}onTargetPositionChange(){this.targetPositionChanged.next(this.targetPosition.value)}static \u0275fac=function(o){return new(o||e)};static \u0275cmp=k({type:e,selectors:[["app-door-manage"]],inputs:{service:"service"},decls:34,vars:34,consts:[[1,"modal-content"],[1,"modal-header"],[1,"modal-title",3,"innerText"],["type","button","data-bs-dismiss","modal",1,"btn-close",3,"click"],[1,"modal-body","text-center","px-5"],["role","group","aria-label","Fan Mode Control",1,"d-flex","justify-content-center","mb-0","p-0"],[1,"mb-0","mx-0","p-3","btn-read","w-100"],[1,"mt-4"],[1,"mb-1",3,"ngModelChange","min","max","step","ngModel"],[1,"d-flex","justify-content-between","align-items-center","mt-0","mb-1"],[1,"grey-text","small"],[1,"mb-1",3,"ngModelChange","min","max","step","disabled","ngModel"],[1,"modal-footer"]],template:function(o,i){o&1&&(a(0,"div",0)(1,"div",1),f(2,"h5",2),a(3,"button",3),p(4,"translate"),S("click",function(){return i.$activeModal.dismiss("Dismiss")}),s()(),a(5,"div",4)(6,"div",5)(7,"div",6),M(8,Os,2,1)(9,Ns,2,3)(10,Rs,2,3),s()(),a(11,"h6",7),c(12),p(13,"translate"),s(),a(14,"nouislider",8),ie("ngModelChange",function(d){return te(i.targetPosition.value,d)||(i.targetPosition.value=d),d}),S("ngModelChange",function(){return i.onTargetPositionChange()}),s(),a(15,"div",9)(16,"span",10),c(17),p(18,"translate"),s(),a(19,"span",10),c(20),p(21,"translate"),s()(),a(22,"h6",7),c(23),p(24,"translate"),s(),a(25,"nouislider",11),ie("ngModelChange",function(d){return te(i.service.getCharacteristic("CurrentPosition").value,d)||(i.service.getCharacteristic("CurrentPosition").value=d),d}),s(),a(26,"div",9)(27,"span",10),c(28),p(29,"translate"),s(),a(30,"span",10),c(31),p(32,"translate"),s()()(),f(33,"div",12),s()),o&2&&(r(2),u("innerText",i.service.customName||i.service.serviceName),r(),V("aria-label",m(4,20,"form.button_close")),r(5),_(i.service.values.PositionState===2?8:i.service.values.PositionState===1?9:i.service.values.PositionState===0?10:-1),r(4),Z("",m(13,22,"accessories.control.target"),": ",i.targetPosition.value,"%"),r(2),u("min",i.targetPosition.min)("max",i.targetPosition.max)("step",i.targetPosition.step),ee("ngModel",i.targetPosition.value),r(3),x(m(18,24,"accessories.control.closed")),r(3),x(m(21,26,"accessories.control.open")),r(3),Z(" ",m(24,28,"accessories.control.current"),": ",i.service.getCharacteristic("CurrentPosition").value,"% "),r(2),u("min",0)("max",100)("step",1)("disabled",!0),ee("ngModel",i.service.getCharacteristic("CurrentPosition").value),r(3),x(m(29,30,"accessories.control.closed")),r(3),x(m(32,32,"accessories.control.open")))},dependencies:[_e,ce,ve,fe,I],styles:[".door-mode-control[_ngcontent-%COMP%] .btn[_ngcontent-%COMP%]{font-size:1.4rem;text-transform:initial}"]})}return e})();var Ls=e=>({"window-on":e});function Fs(e,n){e&1&&f(0,"div",2),e&2&&(u("inlineSVG","/assets/hap-icons/door-closed.svg"),V("aria-label","Door"))}function Gs(e,n){e&1&&f(0,"div",2),e&2&&(u("inlineSVG","/assets/hap-icons/door-open.svg"),V("aria-label","Door"))}function js(e,n){e&1&&(c(0),p(1,"translate")),e&2&&y(" ",m(1,1,"accessories.control.closed")," ")}function Us(e,n){if(e&1&&c(0),e&2){let t=h(2);y(" ",t.service.values.CurrentPosition,"% ")}}function Ws(e,n){e&1&&(c(0),p(1,"translate")),e&2&&y(" ",m(1,1,"accessories.control.open")," ")}function zs(e,n){if(e&1&&(a(0,"div",4),M(1,js,2,3)(2,Us,1,1)(3,Ws,2,3),s()),e&2){let t=h();r(),_(t.service.values.CurrentPosition===0?1:-1),r(),_(t.service.values.CurrentPosition>0&&t.service.values.CurrentPosition<100?2:-1),r(),_(t.service.values.CurrentPosition===100?3:-1)}}function $s(e,n){e&1&&(a(0,"div",5),c(1),p(2,"translate"),s()),e&2&&(r(),y("",m(2,1,"accessories.control.opening"),"..."))}function qs(e,n){e&1&&(a(0,"div",5),c(1),p(2,"translate"),s()),e&2&&(r(),y("",m(2,1,"accessories.control.closing"),"..."))}var Go=(()=>{class e{$modal=O(se);service;constructor(){}onClick(){this.service.values.TargetPosition?this.service.getCharacteristic("TargetPosition").setValue(0):this.service.getCharacteristic("TargetPosition").setValue(100)}onLongClick(){let t=this.$modal.open(Fo,{size:"md"});t.componentInstance.service=this.service}static \u0275fac=function(o){return new(o||e)};static \u0275cmp=k({type:e,selectors:[["app-door"]],inputs:{service:"service"},decls:9,vars:9,consts:[["appLongclick","","tabindex","0",1,"accessory-box",3,"longclick","shortclick","ngClass"],[1,"d-flex","flex-column","h-100"],[1,"accessory-svg",3,"inlineSVG"],[1,"accessory-label","mt-auto"],[1,"accessory-label","grey-text"],[1,"accessory-label","red-text"]],template:function(o,i){o&1&&(a(0,"div",0),S("longclick",function(){return i.onLongClick()})("shortclick",function(){return i.onClick()}),a(1,"div",1),M(2,Fs,1,2,"div",2)(3,Gs,1,2,"div",2),a(4,"div",3),c(5),s(),M(6,zs,4,3,"div",4)(7,$s,3,3,"div",5)(8,qs,3,3,"div",5),s()()),o&2&&(u("ngClass",ne(7,Ls,i.service.values.TargetPosition)),r(2),_(i.service.values.TargetPosition?-1:2),r(),_(i.service.values.TargetPosition?3:-1),r(2),x(i.service.customName||i.service.serviceName),r(),_(i.service.values.PositionState===2?6:-1),r(),_(i.service.values.PositionState===1?7:-1),r(),_(i.service.values.PositionState===0?8:-1))},dependencies:[Q,H,q,$,I],styles:[".door-mode-control[_ngcontent-%COMP%] .btn[_ngcontent-%COMP%]{font-size:1.4rem;text-transform:initial}"]})}return e})();var hi=(e,n)=>({"fa-check-circle":e,"fa-blank":n});function Ks(e,n){if(e&1){let t=oe();a(0,"h6",12),c(1),p(2,"translate"),s(),a(3,"div",13)(4,"button",6),S("click",function(i){return W(t),h().setRotationDirection(0),z(i.target.blur())}),a(5,"div",7),f(6,"i",8),s(),c(7),p(8,"translate"),a(9,"div",9),f(10,"i",10),s()(),a(11,"button",6),S("click",function(i){return W(t),h().setRotationDirection(1),z(i.target.blur())}),a(12,"div",7),f(13,"i",8),s(),c(14),p(15,"translate"),a(16,"div",9),f(17,"i",10),s()()()}if(e&2){let t=h();r(),x(m(2,5,"accessories.control.rotation_direction")),r(5),u("ngClass",B(11,hi,t.service.values.RotationDirection===0,t.service.values.RotationDirection!==0)),r(),y(" ",m(8,7,"accessories.control.rotation_clockwise")," "),r(6),u("ngClass",B(14,hi,t.service.values.RotationDirection===1,t.service.values.RotationDirection!==1)),r(),y(" ",m(15,9,"accessories.control.rotation_c_clockwise")," ")}}function Xs(e,n){e&1&&c(0,"%")}function Ys(e,n){if(e&1){let t=oe();a(0,"h6",12),c(1),p(2,"translate"),M(3,Xs,1,0),s(),a(4,"nouislider",14),ie("ngModelChange",function(i){W(t);let l=h();return te(l.targetRotationSpeed.value,i)||(l.targetRotationSpeed.value=i),z(i)}),S("ngModelChange",function(){W(t);let i=h();return z(i.onTargetRotationSpeedChange())}),s()}if(e&2){let t=h();r(),Z(" ",m(2,7,"accessories.control.rotation_speed"),": ",t.targetRotationSpeed.value,""),r(2),_(t.targetRotationSpeed.unit==="percentage"?3:-1),r(),u("min",t.targetRotationSpeed.min)("max",t.targetRotationSpeed.max)("step",t.targetRotationSpeed.step),ee("ngModel",t.targetRotationSpeed.value)}}var jo=(()=>{class e{$activeModal=O(pe);service;targetMode;targetRotationSpeed;targetRotationSpeedChanged=new ae;hasRotationDirection=!1;constructor(){this.targetRotationSpeedChanged.pipe(Ce(300),Te()).subscribe(()=>{this.service.getCharacteristic("RotationSpeed").setValue(this.targetRotationSpeed.value),this.targetRotationSpeed.value&&!this.service.values.On?(this.targetMode=!0,this.service.getCharacteristic("On").setValue(this.targetMode)):!this.targetRotationSpeed.value&&this.service.values.On&&(this.targetMode=!1,this.service.getCharacteristic("On").setValue(this.targetMode))})}ngOnInit(){this.targetMode=this.service.values.On,this.loadRotationSpeed(),this.service.serviceCharacteristics.find(t=>t.type==="RotationDirection")&&(this.hasRotationDirection=!0)}loadRotationSpeed(){let t=this.service.getCharacteristic("RotationSpeed");t&&(this.targetRotationSpeed={value:t.value,min:t.minValue,max:t.maxValue,step:t.minStep,unit:t.unit},setTimeout(()=>{document.querySelectorAll(".noUi-target").forEach(i=>{i.style.background="linear-gradient(to right, #add8e6, #416bdf)"})},10))}setTargetMode(t){this.targetMode=t,this.service.getCharacteristic("On").setValue(this.targetMode),this.targetMode&&this.targetRotationSpeed&&!this.targetRotationSpeed.value&&(this.targetRotationSpeed.value=this.service.getCharacteristic("RotationSpeed").maxValue)}onTargetRotationSpeedChange(){this.targetRotationSpeedChanged.next(this.targetRotationSpeed.value)}setRotationDirection(t){this.service.getCharacteristic("RotationDirection").setValue(t)}static \u0275fac=function(o){return new(o||e)};static \u0275cmp=k({type:e,selectors:[["app-fan-manage"]],inputs:{service:"service"},decls:24,vars:20,consts:[[1,"modal-content"],[1,"modal-header"],[1,"modal-title",3,"innerText"],["type","button","data-bs-dismiss","modal",1,"btn-close",3,"click"],[1,"modal-body","text-center","px-5"],["role","group","aria-label","Fan Mode Control",1,"btn-group-vertical","d-flex","justify-content-center","mb-0","p-0"],["type","button",1,"btn","mb-0","mx-0","p-3","btn-control",3,"click"],[1,"float-start","primary-text"],[1,"fas","fa-fw","fa-xl",3,"ngClass"],[1,"float-end"],[1,"fas","fa-fw","fa-xl","fa-blank"],[1,"modal-footer"],[1,"mt-4"],["role","group","aria-label","Fan Direction Control",1,"btn-group-vertical","d-flex","justify-content-center","mb-4","p-0"],[3,"ngModelChange","min","max","step","ngModel"]],template:function(o,i){o&1&&(a(0,"div",0)(1,"div",1),f(2,"h5",2),a(3,"button",3),p(4,"translate"),S("click",function(){return i.$activeModal.dismiss("Dismiss")}),s()(),a(5,"div",4)(6,"div",5)(7,"button",6),S("click",function(d){return i.setTargetMode(!1),d.target.blur()}),a(8,"div",7),f(9,"i",8),s(),c(10),p(11,"translate"),a(12,"div",9),f(13,"i",10),s()(),a(14,"button",6),S("click",function(d){return i.setTargetMode(!0),d.target.blur()}),a(15,"div",7),f(16,"i",8),s(),c(17),p(18,"translate"),a(19,"div",9),f(20,"i",10),s()()(),M(21,Ks,18,17)(22,Ys,5,9),s(),f(23,"div",11),s()),o&2&&(r(2),u("innerText",i.service.customName||i.service.serviceName),r(),V("aria-label",m(4,8,"form.button_close")),r(6),u("ngClass",B(14,hi,!i.targetMode,i.targetMode)),r(),y(" ",m(11,10,"accessories.control.off")," "),r(6),u("ngClass",B(17,hi,i.targetMode,!i.targetMode)),r(),y(" ",m(18,12,"accessories.control.on")," "),r(4),_(i.hasRotationDirection?21:-1),r(),_(i.targetRotationSpeed?22:-1))},dependencies:[ce,ve,fe,_e,I,H],encapsulation:2})}return e})();var Zs=e=>({"switch-on":e}),Qs=(e,n)=>({spin:e,"spin-counter":n});function Js(e,n){e&1&&f(0,"img",2)}function el(e,n){if(e&1&&f(0,"img",3),e&2){let t=h();u("ngClass",B(1,Qs,!t.hasRotationDirection||t.hasRotationDirection&&t.service.values.RotationDirection===0,!t.hasRotationDirection||t.hasRotationDirection&&t.service.values.RotationDirection===1))}}function tl(e,n){if(e&1&&(f(0,"div",5),p(1,"translate")),e&2){let t=h();u("innerText",m(1,1,t.service.values.On?"accessories.control.on":"accessories.control.off"))}}function il(e,n){if(e&1&&(a(0,"div",6),c(1),s()),e&2){let t=h();r(),Z("",t.service.values.RotationSpeed,"",t.rotationSpeedUnit,"")}}var Uo=(()=>{class e{$modal=O(se);service;rotationSpeedUnit="";hasRotationDirection=!1;constructor(){}ngOnInit(){let t=this.service.serviceCharacteristics.find(o=>o.type==="RotationSpeed");t&&t.unit==="percentage"&&(this.rotationSpeedUnit="%"),this.service.serviceCharacteristics.find(o=>o.type==="RotationDirection")&&(this.hasRotationDirection=!0)}onClick(){if(this.service.getCharacteristic("On").setValue(!this.service.values.On),!this.service.values.On&&"RotationSpeed"in this.service.values&&!this.service.values.RotationSpeed){let t=this.service.getCharacteristic("RotationSpeed");t.setValue(t.maxValue)}}onLongClick(){let t=this.$modal.open(jo,{size:"md"});t.componentInstance.service=this.service}static \u0275fac=function(o){return new(o||e)};static \u0275cmp=k({type:e,selectors:[["app-fan"]],inputs:{service:"service"},decls:8,vars:8,consts:[["appLongclick","","tabindex","0",1,"accessory-box",3,"longclick","shortclick","ngClass"],[1,"d-flex","flex-column","h-100"],["src","/assets/hap-icons/fan-off.svg","alt","Fan",1,"accessory-img"],["src","/assets/hap-icons/fan-on.svg","alt","Fan",1,"accessory-img",3,"ngClass"],[1,"accessory-label","mt-auto"],[1,"accessory-label","grey-text",3,"innerText"],[1,"accessory-label","grey-text"]],template:function(o,i){o&1&&(a(0,"div",0),S("longclick",function(){return i.onLongClick()})("shortclick",function(){return i.onClick()}),a(1,"div",1),M(2,Js,1,0,"img",2)(3,el,1,4,"img",3),a(4,"div",4),c(5),s(),M(6,tl,2,3,"div",5)(7,il,2,2,"div",6),s()()),o&2&&(u("ngClass",ne(6,Zs,i.service.values.On)),r(2),_(i.service.values.On?-1:2),r(),_(i.service.values.On?3:-1),r(2),x(i.service.customName||i.service.serviceName),r(),_(!i.service.values.RotationSpeed||!i.service.values.On?6:-1),r(),_(i.service.values.RotationSpeed&&i.service.values.On?7:-1))},dependencies:[Q,H,I],encapsulation:2})}return e})();var Wo=(e,n)=>({"fa-check-circle":e,"fa-blank":n}),zo=(e,n)=>({"btn-primary":e,"btn-elegant":n});function nl(e,n){if(e&1){let t=oe();a(0,"h6",12),c(1),p(2,"translate"),s(),a(3,"div",13)(4,"button",14),S("click",function(){W(t);let i=h();return z(i.setRotationDirection(0))}),c(5),p(6,"translate"),s(),a(7,"button",14),S("click",function(){W(t);let i=h();return z(i.setRotationDirection(1))}),c(8),p(9,"translate"),s()()}if(e&2){let t=h();r(),x(m(2,5,"accessories.control.rotation_direction")),r(3),u("ngClass",B(11,zo,t.service.values.RotationDirection===0,t.service.values.RotationDirection!==0)),r(),y(" ",m(6,7,"accessories.control.rotation_clockwise")," "),r(2),u("ngClass",B(14,zo,t.service.values.RotationDirection===1,t.service.values.RotationDirection!==1)),r(),y(" ",m(9,9,"accessories.control.rotation_c_clockwise")," ")}}function ol(e,n){e&1&&c(0,"%")}function rl(e,n){if(e&1){let t=oe();a(0,"h6",12),c(1),p(2,"translate"),M(3,ol,1,0),s(),a(4,"nouislider",15),ie("ngModelChange",function(i){W(t);let l=h();return te(l.targetRotationSpeed.value,i)||(l.targetRotationSpeed.value=i),z(i)}),S("ngModelChange",function(){W(t);let i=h();return z(i.onTargetRotationSpeedChange())}),s()}if(e&2){let t=h();r(),Z(" ",m(2,7,"accessories.control.rotation_speed"),": ",t.targetRotationSpeed.value,""),r(2),_(t.targetRotationSpeed.unit==="percentage"?3:-1),r(),u("min",t.targetRotationSpeed.min)("max",t.targetRotationSpeed.max)("step",t.targetRotationSpeed.step),ee("ngModel",t.targetRotationSpeed.value)}}var $o=(()=>{class e{$activeModal=O(pe);service;targetMode;targetRotationSpeed;targetRotationSpeedChanged=new ae;hasRotationDirection=!1;constructor(){this.targetRotationSpeedChanged.pipe(Ce(300),Te()).subscribe(()=>{this.service.getCharacteristic("RotationSpeed").setValue(this.targetRotationSpeed.value),this.targetRotationSpeed.value&&!this.service.values.Active?(this.targetMode=1,this.service.getCharacteristic("Active").setValue(this.targetMode)):!this.targetRotationSpeed.value&&this.service.values.Active&&(this.targetMode=0,this.service.getCharacteristic("Active").setValue(this.targetMode))})}ngOnInit(){this.targetMode=this.service.values.Active,this.loadRotationSpeed(),this.service.serviceCharacteristics.find(t=>t.type==="RotationDirection")&&(this.hasRotationDirection=!0)}loadRotationSpeed(){let t=this.service.getCharacteristic("RotationSpeed");t&&(this.targetRotationSpeed={value:t.value,min:t.minValue,max:t.maxValue,step:t.minStep,unit:t.unit},setTimeout(()=>{document.querySelectorAll(".noUi-target").forEach(i=>{i.style.background="linear-gradient(to right, #add8e6, #416bdf)"})},10))}setTargetMode(t){this.targetMode=t,this.service.getCharacteristic("Active").setValue(this.targetMode),this.targetMode&&this.targetRotationSpeed&&!this.targetRotationSpeed.value&&(this.targetRotationSpeed.value=this.service.getCharacteristic("RotationSpeed").maxValue)}onTargetRotationSpeedChange(){this.targetRotationSpeedChanged.next(this.targetRotationSpeed.value)}setRotationDirection(t){this.service.getCharacteristic("RotationDirection").setValue(t)}static \u0275fac=function(o){return new(o||e)};static \u0275cmp=k({type:e,selectors:[["app-fanv2-manage"]],inputs:{service:"service"},decls:24,vars:20,consts:[[1,"modal-content"],[1,"modal-header"],[1,"modal-title",3,"innerText"],["type","button","data-bs-dismiss","modal",1,"btn-close",3,"click"],[1,"modal-body","text-center","px-5"],["role","group","aria-label","Fan Mode Control",1,"btn-group-vertical","d-flex","justify-content-center","mb-0","p-0"],["type","button",1,"btn","mb-0","mx-0","p-3","btn-control",3,"click"],[1,"float-start","primary-text"],[1,"fas","fa-fw","fa-xl",3,"ngClass"],[1,"float-end"],[1,"fas","fa-fw","fa-xl","fa-blank"],[1,"modal-footer"],[1,"mt-4"],["role","group","aria-label","Fan Direction Control",1,"btn-group-vertical","d-flex","justify-content-center","mb-4","p-0"],["type","button",1,"btn","mb-0","mx-0","px-0","py-3",3,"click","ngClass"],[3,"ngModelChange","min","max","step","ngModel"]],template:function(o,i){o&1&&(a(0,"div",0)(1,"div",1),f(2,"h5",2),a(3,"button",3),p(4,"translate"),S("click",function(){return i.$activeModal.dismiss("Dismiss")}),s()(),a(5,"div",4)(6,"div",5)(7,"button",6),S("click",function(d){return i.setTargetMode(0),d.target.blur()}),a(8,"div",7),f(9,"i",8),s(),c(10),p(11,"translate"),a(12,"div",9),f(13,"i",10),s()(),a(14,"button",6),S("click",function(d){return i.setTargetMode(1),d.target.blur()}),a(15,"div",7),f(16,"i",8),s(),c(17),p(18,"translate"),a(19,"div",9),f(20,"i",10),s()()(),M(21,nl,10,17)(22,rl,5,9),s(),f(23,"div",11),s()),o&2&&(r(2),u("innerText",i.service.customName||i.service.serviceName),r(),V("aria-label",m(4,8,"form.button_close")),r(6),u("ngClass",B(14,Wo,i.targetMode===0,i.targetMode!==0)),r(),y(" ",m(11,10,"accessories.control.off")," "),r(6),u("ngClass",B(17,Wo,i.targetMode===1,i.targetMode!==1)),r(),y(" ",m(18,12,"accessories.control.on")," "),r(4),_(i.hasRotationDirection?21:-1),r(),_(i.targetRotationSpeed?22:-1))},dependencies:[ce,ve,fe,_e,I,H],encapsulation:2})}return e})();var al=e=>({"switch-on":e}),sl=(e,n)=>({spin:e,"spin-counter":n});function ll(e,n){e&1&&f(0,"img",2)}function cl(e,n){if(e&1&&f(0,"img",3),e&2){let t=h();u("ngClass",B(1,sl,!t.hasRotationDirection||t.hasRotationDirection&&t.service.values.RotationDirection===0,t.hasRotationDirection&&t.service.values.RotationDirection===1))}}function pl(e,n){if(e&1&&(f(0,"div",5),p(1,"translate")),e&2){let t=h();u("innerText",m(1,1,t.service.values.Active?"accessories.control.on":"accessories.control.off"))}}function dl(e,n){if(e&1&&(a(0,"div",6),c(1),s()),e&2){let t=h();r(),Z("",t.service.values.RotationSpeed,"",t.rotationSpeedUnit,"")}}var qo=(()=>{class e{$modal=O(se);service;rotationSpeedUnit="";hasRotationDirection=!1;constructor(){}ngOnInit(){let t=this.service.serviceCharacteristics.find(o=>o.type==="RotationSpeed");t&&t.unit==="percentage"&&(this.rotationSpeedUnit="%"),this.service.serviceCharacteristics.find(o=>o.type==="RotationDirection")&&(this.hasRotationDirection=!0)}onClick(){if(this.service.getCharacteristic("Active").setValue(this.service.values.Active?0:1),!this.service.values.On&&"RotationSpeed"in this.service.values&&!this.service.values.RotationSpeed){let t=this.service.getCharacteristic("RotationSpeed");t.setValue(t.maxValue)}}onLongClick(){let t=this.$modal.open($o,{size:"md"});t.componentInstance.service=this.service}static \u0275fac=function(o){return new(o||e)};static \u0275cmp=k({type:e,selectors:[["app-fanv2"]],inputs:{service:"service"},decls:8,vars:8,consts:[["appLongclick","","tabindex","0",1,"accessory-box",3,"longclick","shortclick","ngClass"],[1,"d-flex","flex-column","h-100"],["src","/assets/hap-icons/fan-off.svg","alt","Fan",1,"accessory-img"],["src","/assets/hap-icons/fan-on.svg","alt","Fan",1,"accessory-img",3,"ngClass"],[1,"accessory-label","mt-auto"],[1,"accessory-label","grey-text",3,"innerText"],[1,"accessory-label","grey-text"]],template:function(o,i){o&1&&(a(0,"div",0),S("longclick",function(){return i.onLongClick()})("shortclick",function(){return i.onClick()}),a(1,"div",1),M(2,ll,1,0,"img",2)(3,cl,1,4,"img",3),a(4,"div",4),c(5),s(),M(6,pl,2,3,"div",5)(7,dl,2,2,"div",6),s()()),o&2&&(u("ngClass",ne(6,al,i.service.values.Active)),r(2),_(i.service.values.Active?-1:2),r(),_(i.service.values.Active?3:-1),r(2),x(i.service.customName||i.service.serviceName),r(),_(!i.service.values.RotationSpeed||!i.service.values.Active?6:-1),r(),_(i.service.values.RotationSpeed&&i.service.values.Active?7:-1))},dependencies:[Q,H,I],encapsulation:2})}return e})();var ml=e=>({"switch-on":e}),ul=(e,n)=>({"red-text":e,"grey-text":n});function vl(e,n){if(e&1&&(f(0,"div",4),p(1,"translate")),e&2){let t=h();u("innerText",m(1,2,t.service.values.CurrentDoorState?"accessories.control.closed":"accessories.control.open"))("ngClass",B(4,ul,!t.service.values.CurrentDoorState,t.service.values.CurrentDoorState))}}function fl(e,n){e&1&&(a(0,"div",5),c(1),p(2,"translate"),s()),e&2&&(r(),y("",m(2,1,"accessories.control.opening"),"..."))}function gl(e,n){e&1&&(a(0,"div",5),c(1),p(2,"translate"),s()),e&2&&(r(),y("",m(2,1,"accessories.control.closing"),"..."))}function hl(e,n){e&1&&(a(0,"div",5),c(1),p(2,"translate"),s()),e&2&&(r(),x(m(2,1,"accessories.control.stopped")))}var Ko=(()=>{class e{service;constructor(){}onClick(){this.service.getCharacteristic("TargetDoorState").setValue(this.service.values.TargetDoorState?0:1)}static \u0275fac=function(o){return new(o||e)};static \u0275cmp=k({type:e,selectors:[["app-garagedooropener"]],inputs:{service:"service"},decls:9,vars:10,consts:[["appLongclick","","tabindex","0",1,"accessory-box",3,"shortclick","ngClass"],[1,"d-flex","flex-column","h-100"],[1,"accessory-svg",3,"inlineSVG"],[1,"accessory-label","mt-auto"],[1,"accessory-label",3,"innerText","ngClass"],[1,"accessory-label","red-text"]],template:function(o,i){o&1&&(a(0,"div",0),S("shortclick",function(){return i.onClick()}),a(1,"div",1),f(2,"div",2),a(3,"div",3),c(4),s(),M(5,vl,2,7,"div",4)(6,fl,3,3,"div",5)(7,gl,3,3,"div",5)(8,hl,3,3,"div",5),s()()),o&2&&(u("ngClass",ne(8,ml,i.service.values.CurrentDoorState===0||i.service.values.CurrentDoorState===2)),r(2),u("inlineSVG","/assets/hap-icons/garagedoor.svg"),V("aria-label","Garage Door"),r(2),x(i.service.customName||i.service.serviceName),r(),_(i.service.values.CurrentDoorState<2?5:-1),r(),_(i.service.values.CurrentDoorState===2?6:-1),r(),_(i.service.values.CurrentDoorState===3?7:-1),r(),_(i.service.values.CurrentDoorState===4?8:-1))},dependencies:[Q,H,q,$,I],encapsulation:2})}return e})();var Cl=(e,n,t)=>({cooling:e,heating:n,"no-current-state":t}),Ut=(e,n)=>({"fa-check-circle":e,"fa-blank":n});function _l(e,n){if(e&1){let t=oe();a(0,"button",7),S("click",function(i){return W(t),h().setTargetMode(1),z(i.target.blur())}),a(1,"div",8),f(2,"i",9),s(),c(3),p(4,"translate"),a(5,"div",10),f(6,"i",11),s()()}if(e&2){let t=h();r(2),u("ngClass",B(4,Ut,t.targetMode===1,t.targetMode!==1)),r(),y(" ",m(4,2,"accessories.control.heat")," ")}}function xl(e,n){if(e&1){let t=oe();a(0,"button",7),S("click",function(i){return W(t),h().setTargetMode(2),z(i.target.blur())}),a(1,"div",8),f(2,"i",9),s(),c(3),p(4,"translate"),a(5,"div",10),f(6,"i",11),s()()}if(e&2){let t=h();r(2),u("ngClass",B(4,Ut,t.targetMode===2,t.targetMode!==2)),r(),y(" ",m(4,2,"accessories.control.cool")," ")}}function Sl(e,n){if(e&1){let t=oe();a(0,"h6",15),c(1),p(2,"translate"),p(3,"convertTemp"),p(4,"number"),p(5,"uppercase"),p(6,"convertTemp"),p(7,"number"),p(8,"uppercase"),s(),a(9,"nouislider",16),ie("ngModelChange",function(i){W(t);let l=h();return te(l.autoTemp,i)||(l.autoTemp=i),z(i)}),S("ngModelChange",function(){W(t);let i=h();return z(i.onAutoTemperatureStateChange())}),s()}if(e&2){let t=h();r(),xn(" ",m(2,9,"accessories.control.target_auto"),": ",Se(4,13,m(3,11,t.autoTemp[0]),"1.0-1"),"\xB0",m(5,16,t.$settings.env.temperatureUnits)," - ",Se(7,20,m(6,18,t.autoTemp[1]),"1.0-1"),"\xB0",m(8,23,t.$settings.env.temperatureUnits)," "),r(8),u("min",t.HeatingThresholdTemperature.minValue)("max",t.CoolingThresholdTemperature.maxValue)("step",t.CoolingThresholdTemperature.minStep),ee("ngModel",t.autoTemp)}}function yl(e,n){if(e&1){let t=oe();a(0,"h6",17),c(1),p(2,"translate"),p(3,"convertTemp"),p(4,"number"),p(5,"uppercase"),s(),a(6,"nouislider",16),ie("ngModelChange",function(i){W(t);let l=h();return te(l.targetHeatingTemp,i)||(l.targetHeatingTemp=i),z(i)}),S("ngModelChange",function(){W(t);let i=h();return z(i.onTemperatureStateChange())}),s()}if(e&2){let t=h();r(),ut(" ",m(2,7,"accessories.control.target_auto"),": ",Se(4,11,m(3,9,t.targetHeatingTemp),"1.0-1"),"\xB0",m(5,14,t.$settings.env.temperatureUnits)," "),r(5),u("min",t.HeatingThresholdTemperature.minValue)("max",t.HeatingThresholdTemperature.maxValue)("step",t.HeatingThresholdTemperature.minStep),ee("ngModel",t.targetHeatingTemp)}}function bl(e,n){if(e&1){let t=oe();a(0,"h6",17),c(1),p(2,"translate"),p(3,"convertTemp"),p(4,"number"),p(5,"uppercase"),s(),a(6,"nouislider",16),ie("ngModelChange",function(i){W(t);let l=h();return te(l.targetCoolingTemp,i)||(l.targetCoolingTemp=i),z(i)}),S("ngModelChange",function(){W(t);let i=h();return z(i.onTemperatureStateChange())}),s()}if(e&2){let t=h();r(),ut(" ",m(2,7,"accessories.control.target_auto"),": ",Se(4,11,m(3,9,t.targetCoolingTemp),"1.0-1"),"\xB0",m(5,14,t.$settings.env.temperatureUnits)," "),r(5),u("min",t.CoolingThresholdTemperature.minValue)("max",t.CoolingThresholdTemperature.maxValue)("step",t.CoolingThresholdTemperature.minStep),ee("ngModel",t.targetCoolingTemp)}}var Xo=(()=>{class e{$activeModal=O(pe);$settings=O(Ze);service;targetState;targetMode;targetTemperatureChanged=new ae;CoolingThresholdTemperature;HeatingThresholdTemperature;targetCoolingTemp;targetHeatingTemp;autoTemp;constructor(){this.targetTemperatureChanged.pipe(Ce(300)).subscribe(()=>{this.HeatingThresholdTemperature&&this.service.getCharacteristic("HeatingThresholdTemperature").setValue(this.targetHeatingTemp),this.CoolingThresholdTemperature&&this.service.getCharacteristic("CoolingThresholdTemperature").setValue(this.targetCoolingTemp)})}ngOnInit(){this.targetState=this.service.values.Active,this.targetMode=this.service.values.TargetHeaterCoolerState,this.CoolingThresholdTemperature=this.service.getCharacteristic("CoolingThresholdTemperature"),this.HeatingThresholdTemperature=this.service.getCharacteristic("HeatingThresholdTemperature"),this.loadTargetTemperature(),setTimeout(()=>{document.querySelectorAll(".noUi-target").forEach(o=>{o.style.background="linear-gradient(to right, rgb(80, 80, 179), rgb(173, 216, 230), rgb(255, 185, 120), rgb(139, 90, 60))"})},10)}loadTargetTemperature(){var t,o;this.targetCoolingTemp=(t=this.service.getCharacteristic("CoolingThresholdTemperature"))==null?void 0:t.value,this.targetHeatingTemp=(o=this.service.getCharacteristic("HeatingThresholdTemperature"))==null?void 0:o.value,this.autoTemp=[this.targetHeatingTemp,this.targetCoolingTemp]}setTargetState(t){this.targetState=t,this.service.getCharacteristic("Active").setValue(this.targetState),this.loadTargetTemperature()}setTargetMode(t){this.targetMode=t,this.service.getCharacteristic("TargetHeaterCoolerState").setValue(this.targetMode),this.loadTargetTemperature()}onTemperatureStateChange(){this.autoTemp=[this.targetHeatingTemp,this.targetCoolingTemp],this.targetTemperatureChanged.next(void 0)}onAutoTemperatureStateChange(){this.targetHeatingTemp=this.autoTemp[0],this.targetCoolingTemp=this.autoTemp[1],this.targetTemperatureChanged.next(void 0)}static \u0275fac=function(o){return new(o||e)};static \u0275cmp=k({type:e,selectors:[["app-heatercooler-manage"]],inputs:{service:"service"},decls:39,vars:41,consts:[[1,"modal-content"],[1,"modal-header"],[1,"modal-title",3,"innerText"],["type","button","data-bs-dismiss","modal",1,"btn-close",3,"click"],[1,"modal-body","text-center","px-5"],[1,"temperature-circle","temperature-circle-big","mb-4",3,"innerText","ngClass"],["role","group","aria-label","Heater Cooler State Control",1,"btn-group-vertical","d-flex","justify-content-center","mb-4","p-0"],["type","button",1,"btn","mb-0","mx-0","p-3","btn-control",3,"click"],[1,"float-start","primary-text"],[1,"fas","fa-fw","fa-xl",3,"ngClass"],[1,"float-end"],[1,"fas","fa-fw","fa-xl","fa-blank"],["role","group","aria-label","Heater Cooler Mode Control",1,"btn-group-vertical","d-flex","justify-content-center","mb-0","p-0"],["type","button",1,"btn","mb-0","mx-0","p-3","btn-control"],[1,"modal-footer"],[1,"mt-4","mb-1"],[3,"ngModelChange","min","max","step","ngModel"],[1,"mt-4"]],template:function(o,i){o&1&&(a(0,"div",0)(1,"div",1),f(2,"h5",2),a(3,"button",3),p(4,"translate"),S("click",function(){return i.$activeModal.dismiss("Dismiss")}),s()(),a(5,"div",4),f(6,"div",5),p(7,"convertTemp"),p(8,"number"),p(9,"uppercase"),a(10,"div",6)(11,"button",7),S("click",function(d){return i.setTargetState(0),d.target.blur()}),a(12,"div",8),f(13,"i",9),s(),c(14),p(15,"translate"),a(16,"div",10),f(17,"i",11),s()(),a(18,"button",7),S("click",function(d){return i.setTargetState(1),d.target.blur()}),a(19,"div",8),f(20,"i",9),s(),c(21),p(22,"translate"),a(23,"div",10),f(24,"i",11),s()()(),a(25,"div",12)(26,"button",7),S("click",function(d){return i.setTargetMode(0),d.target.blur()}),a(27,"div",8),f(28,"i",9),s(),c(29),p(30,"translate"),a(31,"div",10),f(32,"i",11),s()(),M(33,_l,7,7,"button",13)(34,xl,7,7,"button",13),s(),M(35,Sl,10,25)(36,yl,7,16)(37,bl,7,16),s(),f(38,"div",14),s()),o&2&&(r(2),u("innerText",i.service.customName||i.service.serviceName),r(),V("aria-label",m(4,13,"form.button_close")),r(3),u("innerText",Se(8,17,m(7,15,i.service.values.CurrentTemperature),"1.0-1")+"\xB0"+m(9,20,i.$settings.env.temperatureUnits))("ngClass",ze(28,Cl,i.service.values.CurrentHeaterCoolerState===3&&i.service.values.Active===1,i.service.values.CurrentHeaterCoolerState===2&&i.service.values.Active===1,i.service.values.CurrentHeaterCoolerState<2&&i.service.values.Active===1)),r(7),u("ngClass",B(32,Ut,i.targetState===0,i.targetState!==0)),r(),y(" ",m(15,22,"accessories.control.off")," "),r(6),u("ngClass",B(35,Ut,i.targetState===1,i.targetState!==1)),r(),y(" ",m(22,24,"accessories.control.on")," "),r(7),u("ngClass",B(38,Ut,i.targetMode===0,i.targetMode!==0)),r(),y(" ",m(30,26,"accessories.control.auto")," "),r(4),_(i.HeatingThresholdTemperature?33:-1),r(),_(i.CoolingThresholdTemperature?34:-1),r(),_(i.HeatingThresholdTemperature&&i.CoolingThresholdTemperature?35:i.HeatingThresholdTemperature&&!i.CoolingThresholdTemperature?36:!i.HeatingThresholdTemperature&&i.CoolingThresholdTemperature?37:-1))},dependencies:[H,ce,ve,fe,_e,Ne,I,$e,at],styles:[".temperature-circle[_ngcontent-%COMP%]{position:relative;display:inline-block;width:50px;height:50px;line-height:50px;border-radius:50%;font-size:14px;text-align:center;margin-bottom:6px;background-color:gray;color:#d3d3d3}@media (max-width: 575px){.temperature-circle-collapse[_ngcontent-%COMP%]{width:31px;height:31px;line-height:31px;font-size:10px;margin-bottom:7px}}.temperature-circle-big[_ngcontent-%COMP%]{width:80px;height:80px;line-height:80px;font-size:22px}@keyframes _ngcontent-%COMP%_animate-cooling{0%{background-position:0 100%}to{background-position:0 0}}@keyframes _ngcontent-%COMP%_animate-heating{0%{background-position:0 0}to{background-position:0 100%}}.cooling[_ngcontent-%COMP%]{animation:_ngcontent-%COMP%_animate-cooling 5s linear infinite;background-image:linear-gradient(0deg,#1e8bbd,#66d6d6,#1e8bbd,#66d6d6);background-size:100% 300%;color:#fff}.heating[_ngcontent-%COMP%]{animation:_ngcontent-%COMP%_animate-heating 5s linear infinite;background-image:linear-gradient(0deg,#cc5e00,#e69533,#cc5e00,#e69533);background-size:100% 300%;color:#fff}.no-current-state[_ngcontent-%COMP%]{background-color:#42d672;color:#fff;-webkit-transition:all .15s ease-in-out;transition:all .15s ease-in-out}"]})}return e})();var Ml=e=>({"switch-on":e}),Tl=(e,n,t)=>({cooling:e,heating:n,"no-current-state":t});function kl(e,n){e&1&&(c(0),p(1,"translate")),e&2&&y(" ",m(1,1,"accessories.control.off")," ")}function wl(e,n){if(e&1&&(f(0,"i",5),c(1),p(2,"convertTemp"),p(3,"number"),p(4,"uppercase"),p(5,"convertTemp"),p(6,"number"),p(7,"uppercase")),e&2){let t=h(2);r(),_n(" ",Se(3,6,m(2,4,t.service.values.HeatingThresholdTemperature),"1.0-1"),"\xB0",m(4,9,t.$settings.env.temperatureUnits)," - ",Se(6,13,m(5,11,t.service.values.CoolingThresholdTemperature),"1.0-1"),"\xB0",m(7,16,t.$settings.env.temperatureUnits)," ")}}function El(e,n){if(e&1&&(f(0,"i",5),c(1),p(2,"convertTemp"),p(3,"number"),p(4,"uppercase")),e&2){let t=h(2);r(),Z(" ",Se(3,4,m(2,2,t.service.values.HeatingThresholdTemperature),"1.0-1"),"\xB0",m(4,7,t.$settings.env.temperatureUnits)," ")}}function Vl(e,n){if(e&1&&(f(0,"i",5),c(1),p(2,"convertTemp"),p(3,"number"),p(4,"uppercase")),e&2){let t=h(2);r(),Z(" ",Se(3,4,m(2,2,t.service.values.CoolingThresholdTemperature),"1.0-1"),"\xB0",m(4,7,t.$settings.env.temperatureUnits)," ")}}function Il(e,n){if(e&1&&M(0,wl,8,18)(1,El,5,9)(2,Vl,5,9),e&2){let t=h();_(t.hasHeating&&t.hasCooling?0:t.hasHeating&&!t.hasCooling?1:!t.hasHeating&&t.hasCooling?2:-1)}}function Dl(e,n){e&1&&(c(0),p(1,"translate")),e&2&&y(" ",m(1,1,"accessories.control.heat")," ")}function Pl(e,n){e&1&&(c(0),p(1,"translate")),e&2&&y(" ",m(1,1,"accessories.control.cool")," ")}function Al(e,n){e&1&&(c(0),p(1,"translate")),e&2&&y(" ",m(1,1,"accessories.control.on")," ")}var Yo=(()=>{class e{$modal=O(se);$settings=O(Ze);service;model=1;hasHeating=!1;hasCooling=!1;constructor(){}ngOnInit(){this.hasHeating=!!this.service.getCharacteristic("HeatingThresholdTemperature"),this.hasCooling=!!this.service.getCharacteristic("CoolingThresholdTemperature")}onClick(){this.service.getCharacteristic("Active").setValue(this.service.values.Active?0:1)}onLongClick(){let t=this.$modal.open(Xo,{size:"md"});t.componentInstance.service=this.service}static \u0275fac=function(o){return new(o||e)};static \u0275cmp=k({type:e,selectors:[["app-heatercooler"]],inputs:{service:"service"},decls:14,vars:18,consts:[["appLongclick","","tabindex","0",1,"accessory-box",3,"longclick","shortclick","ngClass"],[1,"d-flex","flex-column","h-100"],[1,"temperature-circle","temperature-circle-collapse",3,"innerText","ngClass"],[1,"accessory-label","mt-auto"],[1,"accessory-label","grey-text"],[1,"fa","fas","fa-bullseye"]],template:function(o,i){o&1&&(a(0,"div",0),S("longclick",function(){return i.onLongClick()})("shortclick",function(){return i.onClick()}),a(1,"div",1),f(2,"div",2),p(3,"convertTemp"),p(4,"number"),p(5,"uppercase"),a(6,"div",3),c(7),s(),a(8,"div",4),M(9,kl,2,3)(10,Il,3,1)(11,Dl,2,3)(12,Pl,2,3)(13,Al,2,3),s()()()),o&2&&(u("ngClass",ne(12,Ml,i.service.values.Active===1)),r(2),u("innerText",Se(4,7,m(3,5,i.service.values.CurrentTemperature),"1.0-1")+"\xB0"+m(5,10,i.$settings.env.temperatureUnits))("ngClass",ze(14,Tl,i.service.values.CurrentHeaterCoolerState===3&&i.service.values.Active===1,i.service.values.CurrentHeaterCoolerState===2&&i.service.values.Active===1,i.service.values.CurrentHeaterCoolerState<2&&i.service.values.Active===1)),r(5),x(i.service.customName||i.service.serviceName),r(2),_(i.service.values.Active===0?9:i.service.values.TargetHeaterCoolerState===0&&(i.hasHeating||i.hasCooling)?10:i.service.values.TargetHeaterCoolerState===1?11:i.service.values.TargetHeaterCoolerState===2?12:13))},dependencies:[Q,H,Ne,I,$e,at],styles:[".temperature-circle[_ngcontent-%COMP%]{position:relative;display:inline-block;width:50px;height:50px;line-height:50px;border-radius:50%;font-size:14px;text-align:center;margin-bottom:6px;background-color:gray;color:#d3d3d3}@media (max-width: 575px){.temperature-circle-collapse[_ngcontent-%COMP%]{width:31px;height:31px;line-height:31px;font-size:10px;margin-bottom:7px}}.temperature-circle-big[_ngcontent-%COMP%]{width:80px;height:80px;line-height:80px;font-size:22px}@keyframes _ngcontent-%COMP%_animate-cooling{0%{background-position:0 100%}to{background-position:0 0}}@keyframes _ngcontent-%COMP%_animate-heating{0%{background-position:0 0}to{background-position:0 100%}}.cooling[_ngcontent-%COMP%]{animation:_ngcontent-%COMP%_animate-cooling 5s linear infinite;background-image:linear-gradient(0deg,#1e8bbd,#66d6d6,#1e8bbd,#66d6d6);background-size:100% 300%;color:#fff}.heating[_ngcontent-%COMP%]{animation:_ngcontent-%COMP%_animate-heating 5s linear infinite;background-image:linear-gradient(0deg,#cc5e00,#e69533,#cc5e00,#e69533);background-size:100% 300%;color:#fff}.no-current-state[_ngcontent-%COMP%]{background-color:#42d672;color:#fff;-webkit-transition:all .15s ease-in-out;transition:all .15s ease-in-out}"]})}return e})();var Bl=(e,n,t)=>({dehumidifying:e,humidifying:n,"no-current-state":t}),Wt=(e,n)=>({"fa-check-circle":e,"fa-blank":n});function Hl(e,n){if(e&1){let t=oe();a(0,"button",8),S("click",function(i){return W(t),h().setTargetMode(1),z(i.target.blur())}),a(1,"div",9),f(2,"i",10),s(),c(3),p(4,"translate"),a(5,"div",11),f(6,"i",12),s()()}if(e&2){let t=h();r(2),u("ngClass",B(4,Wt,t.targetMode===1,t.targetMode!==1)),r(),y(" ",m(4,2,"accessories.control.humidify")," ")}}function Ol(e,n){if(e&1){let t=oe();a(0,"button",8),S("click",function(i){return W(t),h().setTargetMode(2),z(i.target.blur())}),a(1,"div",9),f(2,"i",10),s(),c(3),p(4,"translate"),a(5,"div",11),f(6,"i",12),s()()}if(e&2){let t=h();r(2),u("ngClass",B(4,Wt,t.targetMode===2,t.targetMode!==2)),r(),y(" ",m(4,2,"accessories.control.dehumidify")," ")}}function Nl(e,n){if(e&1){let t=oe();a(0,"h6",16),c(1),p(2,"translate"),s(),a(3,"nouislider",17),ie("ngModelChange",function(i){W(t);let l=h();return te(l.autoHumidity,i)||(l.autoHumidity=i),z(i)}),S("ngModelChange",function(){W(t);let i=h();return z(i.onAutoHumidityStateChange())}),s()}if(e&2){let t=h();r(),ut(" ",m(2,7,"accessories.control.target_auto"),": ",t.autoHumidity[0],"% - ",t.autoHumidity[1],"% "),r(2),u("min",t.RelativeHumidityHumidifierThreshold.minValue)("max",t.RelativeHumidityDehumidifierThreshold.maxValue)("step",t.RelativeHumidityDehumidifierThreshold.minStep),ee("ngModel",t.autoHumidity)}}function Rl(e,n){if(e&1){let t=oe();a(0,"h6",16),c(1),p(2,"translate"),s(),a(3,"nouislider",17),ie("ngModelChange",function(i){W(t);let l=h();return te(l.targetHumidifierHumidity,i)||(l.targetHumidifierHumidity=i),z(i)}),S("ngModelChange",function(){W(t);let i=h();return z(i.onHumidityStateChange())}),s()}if(e&2){let t=h();r(),Z("",m(2,6,"accessories.control.target_auto"),": ",t.targetHumidifierHumidity,"%"),r(2),u("min",t.RelativeHumidityHumidifierThreshold.minValue)("max",t.RelativeHumidityHumidifierThreshold.maxValue)("step",t.RelativeHumidityHumidifierThreshold.minStep),ee("ngModel",t.targetHumidifierHumidity)}}function Ll(e,n){if(e&1){let t=oe();a(0,"h6",16),c(1),p(2,"translate"),s(),a(3,"nouislider",17),ie("ngModelChange",function(i){W(t);let l=h();return te(l.targetDehumidifierHumidity,i)||(l.targetDehumidifierHumidity=i),z(i)}),S("ngModelChange",function(){W(t);let i=h();return z(i.onHumidityStateChange())}),s()}if(e&2){let t=h();r(),Z("",m(2,6,"accessories.control.target_auto"),": ",t.targetDehumidifierHumidity,"%"),r(2),u("min",t.RelativeHumidityDehumidifierThreshold.minValue)("max",t.RelativeHumidityDehumidifierThreshold.maxValue)("step",t.RelativeHumidityDehumidifierThreshold.minStep),ee("ngModel",t.targetDehumidifierHumidity)}}var Zo=(()=>{class e{$activeModal=O(pe);service;targetState;targetMode;targetHumidityChanged=new ae;RelativeHumidityDehumidifierThreshold;RelativeHumidityHumidifierThreshold;targetDehumidifierHumidity;targetHumidifierHumidity;autoHumidity;constructor(){this.targetHumidityChanged.pipe(Ce(300)).subscribe(()=>{this.RelativeHumidityHumidifierThreshold&&this.service.getCharacteristic("RelativeHumidityHumidifierThreshold").setValue(this.targetHumidifierHumidity),this.RelativeHumidityDehumidifierThreshold&&this.service.getCharacteristic("RelativeHumidityDehumidifierThreshold").setValue(this.targetDehumidifierHumidity)})}ngOnInit(){this.targetState=this.service.values.Active,this.targetMode=this.service.values.TargetHumidifierDehumidifierState,this.RelativeHumidityDehumidifierThreshold=this.service.getCharacteristic("RelativeHumidityDehumidifierThreshold"),this.RelativeHumidityHumidifierThreshold=this.service.getCharacteristic("RelativeHumidityHumidifierThreshold"),this.loadTargetHumidity(),setTimeout(()=>{document.querySelectorAll(".noUi-target").forEach(o=>{o.style.background="linear-gradient(to left, rgb(80, 80, 179), rgb(173, 216, 230), rgb(255, 185, 120), rgb(139, 90, 60))"})},10)}loadTargetHumidity(){var t,o;this.targetDehumidifierHumidity=(t=this.service.getCharacteristic("RelativeHumidityDehumidifierThreshold"))==null?void 0:t.value,this.targetHumidifierHumidity=(o=this.service.getCharacteristic("RelativeHumidityHumidifierThreshold"))==null?void 0:o.value,this.autoHumidity=[this.targetHumidifierHumidity,this.targetDehumidifierHumidity]}setTargetState(t){this.targetState=t,this.service.getCharacteristic("Active").setValue(this.targetState),this.loadTargetHumidity()}setTargetMode(t){this.targetMode=t,this.service.getCharacteristic("TargetHumidifierDehumidifierState").setValue(this.targetMode),this.loadTargetHumidity()}onHumidityStateChange(){this.autoHumidity=[this.targetHumidifierHumidity,this.targetDehumidifierHumidity],this.targetHumidityChanged.next(void 0)}onAutoHumidityStateChange(){this.targetHumidifierHumidity=this.autoHumidity[0],this.targetDehumidifierHumidity=this.autoHumidity[1],this.targetHumidityChanged.next(void 0)}static \u0275fac=function(o){return new(o||e)};static \u0275cmp=k({type:e,selectors:[["app-humidifierdehumidifier-manage"]],inputs:{service:"service"},decls:37,vars:34,consts:[[1,"modal-content"],[1,"modal-header"],[1,"modal-title",3,"innerText"],["type","button","data-bs-dismiss","modal",1,"btn-close",3,"click"],[1,"modal-body","text-center","px-5"],[1,"humidity-drop","humidity-drop-big","mb-3",3,"ngClass"],[1,"humidity-drop-text",3,"innerText"],["role","group","aria-label","Humidifier Dehumidifier State Control",1,"btn-group-vertical","d-flex","justify-content-center","mb-4","p-0"],["type","button",1,"btn","mb-0","mx-0","p-3","btn-control",3,"click"],[1,"float-start","primary-text"],[1,"fas","fa-fw","fa-xl",3,"ngClass"],[1,"float-end"],[1,"fas","fa-fw","fa-xl","fa-blank"],["role","group","aria-label","Humidifier Dehumidifier Mode Control",1,"btn-group-vertical","d-flex","justify-content-center","mb-0","p-0"],["type","button",1,"btn","mb-0","mx-0","p-3","btn-control"],[1,"modal-footer"],[1,"mt-4"],[3,"ngModelChange","min","max","step","ngModel"]],template:function(o,i){o&1&&(a(0,"div",0)(1,"div",1),f(2,"h5",2),a(3,"button",3),p(4,"translate"),S("click",function(){return i.$activeModal.dismiss("Dismiss")}),s()(),a(5,"div",4)(6,"div",5),f(7,"div",6),s(),a(8,"div",7)(9,"button",8),S("click",function(d){return i.setTargetState(0),d.target.blur()}),a(10,"div",9),f(11,"i",10),s(),c(12),p(13,"translate"),a(14,"div",11),f(15,"i",12),s()(),a(16,"button",8),S("click",function(d){return i.setTargetState(1),d.target.blur()}),a(17,"div",9),f(18,"i",10),s(),c(19),p(20,"translate"),a(21,"div",11),f(22,"i",12),s()()(),a(23,"div",13)(24,"button",8),S("click",function(d){return i.setTargetMode(0),d.target.blur()}),a(25,"div",9),f(26,"i",10),s(),c(27),p(28,"translate"),a(29,"div",11),f(30,"i",12),s()(),M(31,Hl,7,7,"button",14)(32,Ol,7,7,"button",14),s(),M(33,Nl,4,9)(34,Rl,4,8)(35,Ll,4,8),s(),f(36,"div",15),s()),o&2&&(r(2),u("innerText",i.service.customName||i.service.serviceName),r(),V("aria-label",m(4,13,"form.button_close")),r(3),u("ngClass",ze(21,Bl,i.service.values.CurrentHumidifierDehumidifierState===3&&i.service.values.Active===1,i.service.values.CurrentHumidifierDehumidifierState===2&&i.service.values.Active===1,i.service.values.CurrentHumidifierDehumidifierState===1&&i.service.values.Active===1)),r(),u("innerText",i.service.values.CurrentRelativeHumidity+"%"),r(4),u("ngClass",B(25,Wt,i.targetState===0,i.targetState!==0)),r(),y(" ",m(13,15,"accessories.control.off")," "),r(6),u("ngClass",B(28,Wt,i.targetState===1,i.targetState!==1)),r(),y(" ",m(20,17,"accessories.control.on")," "),r(7),u("ngClass",B(31,Wt,i.targetMode===0,i.targetMode!==0)),r(),y(" ",m(28,19,"accessories.control.auto")," "),r(4),_(i.RelativeHumidityHumidifierThreshold?31:-1),r(),_(i.RelativeHumidityDehumidifierThreshold?32:-1),r(),_(i.RelativeHumidityHumidifierThreshold&&i.RelativeHumidityDehumidifierThreshold?33:i.RelativeHumidityHumidifierThreshold&&!i.RelativeHumidityDehumidifierThreshold?34:!i.RelativeHumidityHumidifierThreshold&&i.RelativeHumidityDehumidifierThreshold?35:-1))},dependencies:[H,ce,ve,fe,_e,I],styles:[".humidity-drop[_ngcontent-%COMP%]{position:relative;display:inline-block;width:50px;height:50px;line-height:42px;border-radius:5% 55% 70%;font-size:14px;text-align:center;margin-bottom:6px;margin-top:9px;background-color:gray;color:#d3d3d3;transform:rotate(45deg)}@media (max-width: 575px){.humidity-drop-collapse[_ngcontent-%COMP%]{width:31px;height:31px;line-height:28px;font-size:10px;margin-bottom:7px;margin-top:5px}.humidity-drop-collapse[_ngcontent-%COMP%] .humidity-drop-text[_ngcontent-%COMP%]{margin-left:-2px}}.humidity-drop-text[_ngcontent-%COMP%]{transform:rotate(-45deg);margin-left:-5px}.humidity-drop-big[_ngcontent-%COMP%]{width:80px;height:80px;line-height:70px;font-size:22px}.humidity-drop-big[_ngcontent-%COMP%] .humidity-drop-text[_ngcontent-%COMP%]{margin-left:-8px}@keyframes _ngcontent-%COMP%_animate-humidifying{0%{background-position:0 100%}to{background-position:0 0}}@keyframes _ngcontent-%COMP%_animate-dehumidifying{0%{background-position:0 0}to{background-position:0 100%}}.humidifying[_ngcontent-%COMP%]{animation:_ngcontent-%COMP%_animate-dehumidifying 5s linear infinite;background-image:linear-gradient(0deg,#1e8bbd,#66d6d6,#1e8bbd,#66d6d6);background-size:100% 300%;color:#fff}.dehumidifying[_ngcontent-%COMP%]{animation:_ngcontent-%COMP%_animate-humidifying 5s linear infinite;background-image:linear-gradient(0deg,#cc5e00,#e69533,#cc5e00,#e69533);background-size:100% 300%;color:#fff}.no-current-state[_ngcontent-%COMP%]{background-color:#42d672;color:#fff;-webkit-transition:all .15s ease-in-out;transition:all .15s ease-in-out}"]})}return e})();var Fl=e=>({"switch-on":e}),Gl=(e,n,t)=>({dehumidifying:e,humidifying:n,"no-current-state":t});function jl(e,n){e&1&&(c(0),p(1,"translate")),e&2&&y(" ",m(1,1,"accessories.control.off")," ")}function Ul(e,n){if(e&1&&(f(0,"i",6),c(1)),e&2){let t=h(2);r(),Z(" ",t.service.values.RelativeHumidityHumidifierThreshold,"% - ",t.service.values.RelativeHumidityDehumidifierThreshold,"% ")}}function Wl(e,n){if(e&1&&(f(0,"i",6),c(1)),e&2){let t=h(2);r(),y(" ",t.service.values.RelativeHumidityHumidifierThreshold,"% ")}}function zl(e,n){if(e&1&&(f(0,"i",6),c(1)),e&2){let t=h(2);r(),y(" ",t.service.values.RelativeHumidityDehumidifierThreshold,"% ")}}function $l(e,n){if(e&1&&M(0,Ul,2,2)(1,Wl,2,1)(2,zl,2,1),e&2){let t=h();_(t.hasHumidifier&&t.hasDehumidifier?0:t.hasHumidifier&&!t.hasDehumidifier?1:!t.hasHumidifier&&t.hasDehumidifier?2:-1)}}function ql(e,n){e&1&&(c(0),p(1,"translate")),e&2&&y(" ",m(1,1,"accessories.control.humidify")," ")}function Kl(e,n){e&1&&(c(0),p(1,"translate")),e&2&&y(" ",m(1,1,"accessories.control.dehumidify")," ")}function Xl(e,n){e&1&&(c(0),p(1,"translate")),e&2&&y(" ",m(1,1,"accessories.control.on")," ")}var Qo=(()=>{class e{$modal=O(se);service;model=1;hasHumidifier=!1;hasDehumidifier=!1;constructor(){}ngOnInit(){this.hasHumidifier=!!this.service.getCharacteristic("RelativeHumidityHumidifierThreshold"),this.hasDehumidifier=!!this.service.getCharacteristic("RelativeHumidityDehumidifierThreshold")}onClick(){this.service.getCharacteristic("Active").setValue(this.service.values.Active?0:1)}onLongClick(){let t=this.$modal.open(Zo,{size:"md"});t.componentInstance.service=this.service}static \u0275fac=function(o){return new(o||e)};static \u0275cmp=k({type:e,selectors:[["app-humidifierdehumidifier"]],inputs:{service:"service"},decls:12,vars:11,consts:[["appLongclick","","tabindex","0",1,"accessory-box",3,"longclick","shortclick","ngClass"],[1,"d-flex","flex-column","h-100"],[1,"humidity-drop","humidity-drop-collapse",3,"ngClass"],[1,"humidity-drop-text",3,"innerText"],[1,"accessory-label","mt-auto"],[1,"accessory-label","grey-text"],[1,"fa","fas","fa-bullseye"]],template:function(o,i){o&1&&(a(0,"div",0),S("longclick",function(){return i.onLongClick()})("shortclick",function(){return i.onClick()}),a(1,"div",1)(2,"div",2),f(3,"div",3),s(),a(4,"div",4),c(5),s(),a(6,"div",5),M(7,jl,2,3)(8,$l,3,1)(9,ql,2,3)(10,Kl,2,3)(11,Xl,2,3),s()()()),o&2&&(u("ngClass",ne(5,Fl,i.service.values.Active===1)),r(2),u("ngClass",ze(7,Gl,i.service.values.CurrentHumidifierDehumidifierState===3&&i.service.values.Active===1,i.service.values.CurrentHumidifierDehumidifierState===2&&i.service.values.Active===1,i.service.values.CurrentHumidifierDehumidifierState===1&&i.service.values.Active===1)),r(),u("innerText",i.service.values.CurrentRelativeHumidity+"%"),r(2),x(i.service.customName||i.service.serviceName),r(2),_(i.service.values.Active===0?7:i.service.values.TargetHumidifierDehumidifierState===0&&(i.hasHumidifier||i.hasDehumidifier)?8:i.service.values.TargetHumidifierDehumidifierState===1?9:i.service.values.TargetHumidifierDehumidifierState===2?10:11))},dependencies:[Q,H,I],styles:[".humidity-drop[_ngcontent-%COMP%]{position:relative;display:inline-block;width:50px;height:50px;line-height:42px;border-radius:5% 55% 70%;font-size:14px;text-align:center;margin-bottom:6px;margin-top:9px;background-color:gray;color:#d3d3d3;transform:rotate(45deg)}@media (max-width: 575px){.humidity-drop-collapse[_ngcontent-%COMP%]{width:31px;height:31px;line-height:28px;font-size:10px;margin-bottom:7px;margin-top:5px}.humidity-drop-collapse[_ngcontent-%COMP%] .humidity-drop-text[_ngcontent-%COMP%]{margin-left:-2px}}.humidity-drop-text[_ngcontent-%COMP%]{transform:rotate(-45deg);margin-left:-5px}.humidity-drop-big[_ngcontent-%COMP%]{width:80px;height:80px;line-height:70px;font-size:22px}.humidity-drop-big[_ngcontent-%COMP%] .humidity-drop-text[_ngcontent-%COMP%]{margin-left:-8px}@keyframes _ngcontent-%COMP%_animate-humidifying{0%{background-position:0 100%}to{background-position:0 0}}@keyframes _ngcontent-%COMP%_animate-dehumidifying{0%{background-position:0 0}to{background-position:0 100%}}.humidifying[_ngcontent-%COMP%]{animation:_ngcontent-%COMP%_animate-dehumidifying 5s linear infinite;background-image:linear-gradient(0deg,#1e8bbd,#66d6d6,#1e8bbd,#66d6d6);background-size:100% 300%;color:#fff}.dehumidifying[_ngcontent-%COMP%]{animation:_ngcontent-%COMP%_animate-humidifying 5s linear infinite;background-image:linear-gradient(0deg,#cc5e00,#e69533,#cc5e00,#e69533);background-size:100% 300%;color:#fff}.no-current-state[_ngcontent-%COMP%]{background-color:#42d672;color:#fff;-webkit-transition:all .15s ease-in-out;transition:all .15s ease-in-out}"]})}return e})();var Jo=(()=>{class e{service;constructor(){}static \u0275fac=function(o){return new(o||e)};static \u0275cmp=k({type:e,selectors:[["app-humiditysensor"]],inputs:{service:"service"},decls:6,vars:2,consts:[[1,"accessory-box"],[1,"d-flex","flex-column","h-100"],[1,"humidity-drop","humidity-drop-collapse"],[1,"humidity-drop-text",3,"innerText"],[1,"accessory-label","mt-auto"]],template:function(o,i){o&1&&(a(0,"div",0)(1,"div",1)(2,"div",2),f(3,"div",3),s(),a(4,"div",4),c(5),s()()()),o&2&&(r(3),u("innerText",i.service.values.CurrentRelativeHumidity+"%"),r(2),x(i.service.customName||i.service.serviceName))},styles:[".humidity-drop[_ngcontent-%COMP%]{position:relative;display:inline-block;width:50px;height:50px;line-height:42px;border-radius:5% 55% 70%;font-size:14px;text-align:center;margin-bottom:6px;margin-top:9px;background-color:gray;color:#d3d3d3;transform:rotate(45deg)}@media (max-width: 575px){.humidity-drop-collapse[_ngcontent-%COMP%]{width:31px;height:31px;line-height:28px;font-size:10px;margin-bottom:7px;margin-top:5px}.humidity-drop-collapse[_ngcontent-%COMP%] .humidity-drop-text[_ngcontent-%COMP%]{margin-left:-2px}}.humidity-drop-text[_ngcontent-%COMP%]{transform:rotate(-45deg);margin-left:-5px}"]})}return e})();var Yl=(e,n)=>({"switch-on":e,"switch-off":n});function Zl(e,n){e&1&&(a(0,"div",4),c(1),p(2,"translate"),s()),e&2&&(r(),x(m(2,1,"accessories.control.running")))}function Ql(e,n){e&1&&(a(0,"div",4),c(1),p(2,"translate"),s()),e&2&&(r(),x(m(2,1,"accessories.control.off")))}var er=(()=>{class e{service;static \u0275fac=function(o){return new(o||e)};static \u0275cmp=k({type:e,selectors:[["app-irrigationsystem"]],inputs:{service:"service"},decls:7,vars:9,consts:[["appLongclick","",1,"accessory-box",3,"ngClass"],[1,"d-flex","flex-column","h-100"],[1,"accessory-svg",3,"inlineSVG"],[1,"accessory-label","mt-auto"],[1,"accessory-label","grey-text"]],template:function(o,i){o&1&&(a(0,"div",0)(1,"div",1),f(2,"div",2),a(3,"div",3),c(4),s(),M(5,Zl,3,3,"div",4)(6,Ql,3,3,"div",4),s()()),o&2&&(u("ngClass",B(6,Yl,i.service.values.InUse,!i.service.values.InUse)),r(2),u("inlineSVG","/assets/hap-icons/irrigation-system.svg"),V("aria-label","Irrigation Valve"),r(2),y(" ",i.service.customName||i.service.values.ConfiguredName||i.service.serviceName," "),r(),_(i.service.values.InUse?5:-1),r(),_(i.service.values.InUse?-1:6))},dependencies:[Q,H,q,$,I],styles:[".switch-off svg .valve_off_hidden{display:none} .switch-off svg .valve_off_grey{fill:gray}"]})}return e})();var Jl=(e,n)=>({"switch-on":e,"switch-off":n});function ec(e,n){e&1&&(a(0,"div",4),c(1),p(2,"translate"),s()),e&2&&(r(),x(m(2,1,"accessories.control.detected")))}function tc(e,n){e&1&&(a(0,"div",5),c(1),p(2,"translate"),s()),e&2&&(r(),x(m(2,1,"accessories.control.not_detected")))}var tr=(()=>{class e{service;constructor(){}static \u0275fac=function(o){return new(o||e)};static \u0275cmp=k({type:e,selectors:[["app-leaksensor"]],inputs:{service:"service"},decls:7,vars:9,consts:[[1,"accessory-box",3,"ngClass"],[1,"d-flex","flex-column","h-100"],[1,"accessory-svg",3,"inlineSVG"],[1,"accessory-label","mt-auto"],[1,"accessory-label","red-text"],[1,"accessory-label","grey-text"]],template:function(o,i){o&1&&(a(0,"div",0)(1,"div",1),f(2,"div",2),a(3,"div",3),c(4),s(),M(5,ec,3,3,"div",4)(6,tc,3,3,"div",5),s()()),o&2&&(u("ngClass",B(6,Jl,i.service.values.LeakDetected,!i.service.values.LeakDetected)),r(2),u("inlineSVG","/assets/hap-icons/leaksensor.svg"),V("aria-label","Leak Sensor"),r(2),x(i.service.customName||i.service.serviceName),r(),_(i.service.values.LeakDetected?5:-1),r(),_(i.service.values.LeakDetected?-1:6))},dependencies:[H,q,$,I],styles:[".switch-off svg .leak_sensor_droplet{fill:#e0e0e0} .switch-off svg .leak_sensor_trigger_lines{display:none} .switch-off svg .leak_sensor_background{fill:gray} body.dark-mode .switch-off svg .leak_sensor_droplet{fill:#2b2b2b}"]})}return e})();var ir=(e,n)=>({"fa-check-circle":e,"fa-blank":n});function ic(e,n){if(e&1){let t=oe();a(0,"h6",12),c(1),p(2,"translate"),s(),a(3,"nouislider",13),ie("ngModelChange",function(i){W(t);let l=h();return te(l.targetBrightness.value,i)||(l.targetBrightness.value=i),z(i)}),S("ngModelChange",function(){W(t);let i=h();return z(i.onBrightnessStateChange())}),s()}if(e&2){let t=h();r(),Z("",m(2,6,"accessories.control.brightness"),": ",t.targetBrightness.value,"%"),r(2),u("min",t.targetBrightness.min)("max",t.targetBrightness.max)("step",t.targetBrightness.step),ee("ngModel",t.targetBrightness.value)}}function nc(e,n){if(e&1){let t=oe();a(0,"h6",12),c(1),p(2,"translate"),s(),a(3,"nouislider",13),ie("ngModelChange",function(i){W(t);let l=h();return te(l.targetColorTemperature.value,i)||(l.targetColorTemperature.value=i),z(i)}),S("ngModelChange",function(){W(t);let i=h();return z(i.onColorTemperatureStateChange())}),s()}if(e&2){let t=h();r(),Z("",m(2,6,"accessories.control.color_temperature"),": ",t.targetColorTemperature.value,"K"),r(2),u("min",t.targetColorTemperature.min)("max",t.targetColorTemperature.max)("step",t.targetColorTemperature.step),ee("ngModel",t.targetColorTemperature.value)}}var nr=(()=>{class e{$activeModal=O(pe);service;targetMode;targetBrightness;targetBrightnessChanged=new ae;targetColorTemperature;targetColorTemperatureChanged=new ae;constructor(){this.targetBrightnessChanged.pipe(Ce(300),Te()).subscribe(()=>{this.service.getCharacteristic("Brightness").setValue(this.targetBrightness.value),this.targetBrightness.value&&!this.service.values.On?(this.targetMode=!0,this.service.getCharacteristic("On").setValue(this.targetMode)):!this.targetBrightness.value&&this.service.values.On&&(this.targetMode=!1,this.service.getCharacteristic("On").setValue(this.targetMode))}),this.targetColorTemperatureChanged.pipe(Ce(500),Te()).subscribe(()=>{this.service.getCharacteristic("ColorTemperature").setValue(this.kelvinToMired(this.targetColorTemperature.value))})}ngOnInit(){this.targetMode=this.service.values.On,this.loadTargetBrightness(),this.loadTargetColorTemperature()}loadTargetBrightness(){let t=this.service.getCharacteristic("Brightness");t&&(this.targetBrightness={value:t.value,min:t.minValue,max:t.maxValue,step:t.minStep},setTimeout(()=>{let o=document.querySelectorAll(".noUi-target")[0];o&&(o.style.background="linear-gradient(to right, #242424, #ffd6aa)")},10))}loadTargetColorTemperature(){let t=this.service.getCharacteristic("ColorTemperature");t&&(this.targetColorTemperature={value:this.miredToKelvin(t.value),min:this.miredToKelvin(t.maxValue),max:this.miredToKelvin(t.minValue),step:t.minStep},setTimeout(()=>{let o=this.kelvinToRgb(this.targetColorTemperature.min),i=this.kelvinToRgb(this.targetColorTemperature.max),l=document.querySelectorAll(".noUi-target")[1];l&&(l.style.background=`linear-gradient(to right, ${o}, ${i})`)},10))}setTargetMode(t){this.targetMode=t,this.service.getCharacteristic("On").setValue(this.targetMode),this.targetMode&&this.targetBrightness&&!this.targetBrightness.value&&(this.targetBrightness.value=100)}onBrightnessStateChange(){this.targetBrightnessChanged.next(this.targetBrightness.value)}onColorTemperatureStateChange(){this.targetColorTemperatureChanged.next(this.targetColorTemperature.value)}miredToKelvin(t){return Math.round(1e6/t)}kelvinToMired(t){return Math.round(1e6/t)}kelvinToRgb(t){let o=t/100,i,l,d;return o<=66?(i=255,l=Math.min(99.4708025861*Math.log(o)-161.1195681661,255),d=o<=19?0:Math.min(138.5177312231*Math.log(o-10)-305.0447927307,255)):(i=Math.min(329.698727446*(o-60)**-.1332047592,255),l=Math.min(288.1221695283*(o-60)**-.0755148492,255),d=255),`rgb(${Math.round(i)}, ${Math.round(l)}, ${Math.round(d)})`}static \u0275fac=function(o){return new(o||e)};static \u0275cmp=k({type:e,selectors:[["app-lightbulb-manage"]],inputs:{service:"service"},decls:24,vars:20,consts:[[1,"modal-content"],[1,"modal-header"],[1,"modal-title",3,"innerText"],["type","button","data-bs-dismiss","modal",1,"btn-close",3,"click"],[1,"modal-body","text-center","px-5"],["role","group","aria-label","Lightbulb Mode Control",1,"btn-group-vertical","d-flex","justify-content-center","mb-4","p-0"],["type","button",1,"btn","mb-0","mx-0","p-3","btn-control",3,"click"],[1,"float-start","primary-text"],[1,"fas","fa-fw","fa-xl",3,"ngClass"],[1,"float-end"],[1,"fas","fa-fw","fa-xl","fa-blank"],[1,"modal-footer"],[1,"mt-4"],[3,"ngModelChange","min","max","step","ngModel"]],template:function(o,i){o&1&&(a(0,"div",0)(1,"div",1),f(2,"h5",2),a(3,"button",3),p(4,"translate"),S("click",function(){return i.$activeModal.dismiss("Dismiss")}),s()(),a(5,"div",4)(6,"div",5)(7,"button",6),S("click",function(d){return i.setTargetMode(!1),d.target.blur()}),a(8,"div",7),f(9,"i",8),s(),c(10),p(11,"translate"),a(12,"div",9),f(13,"i",10),s()(),a(14,"button",6),S("click",function(d){return i.setTargetMode(!0),d.target.blur()}),a(15,"div",7),f(16,"i",8),s(),c(17),p(18,"translate"),a(19,"div",9),f(20,"i",10),s()()(),M(21,ic,4,8)(22,nc,4,8),s(),f(23,"div",11),s()),o&2&&(r(2),u("innerText",i.service.customName||i.service.serviceName),r(),V("aria-label",m(4,8,"form.button_close")),r(6),u("ngClass",B(14,ir,!i.targetMode,i.targetMode)),r(),y(" ",m(11,10,"accessories.control.off")," "),r(6),u("ngClass",B(17,ir,i.targetMode,!i.targetMode)),r(),y(" ",m(18,12,"accessories.control.on")," "),r(4),_(i.targetBrightness?21:-1),r(),_(i.targetColorTemperature?22:-1))},dependencies:[ce,ve,fe,_e,I,H],encapsulation:2})}return e})();var oc=e=>({"light-on":e});function rc(e,n){if(e&1&&(f(0,"div",4),p(1,"translate")),e&2){let t=h();u("innerText",t.service.values.On?t.service.values.Brightness+"%":m(1,1,"accessories.control.off"))}}function ac(e,n){if(e&1&&(f(0,"div",4),p(1,"translate")),e&2){let t=h();u("innerText",m(1,1,t.service.values.On?"accessories.control.on":"accessories.control.off"))}}var or=(()=>{class e{$modal=O(se);service;constructor(){}onClick(){this.service.getCharacteristic("On").setValue(!this.service.values.On),!this.service.values.On&&"Brightness"in this.service.values&&!this.service.values.Brightness&&this.service.getCharacteristic("Brightness").setValue(100)}onLongClick(){if("Brightness"in this.service.values){let t=this.$modal.open(nr,{size:"md"});t.componentInstance.service=this.service}}static \u0275fac=function(o){return new(o||e)};static \u0275cmp=k({type:e,selectors:[["app-lightbulb"]],inputs:{service:"service"},decls:7,vars:7,consts:[["appLongclick","","tabindex","0",1,"accessory-box",3,"longclick","shortclick","ngClass"],[1,"d-flex","flex-column","h-100"],[1,"accessory-svg",3,"inlineSVG"],[1,"accessory-label","mt-auto"],[1,"accessory-label","grey-text",3,"innerText"]],template:function(o,i){o&1&&(a(0,"div",0),S("longclick",function(){return i.onLongClick()})("shortclick",function(){return i.onClick()}),a(1,"div",1),f(2,"div",2),a(3,"div",3),c(4),s(),M(5,rc,2,3,"div",4)(6,ac,2,3,"div",4),s()()),o&2&&(u("ngClass",ne(5,oc,i.service.values.On)),r(2),u("inlineSVG","/assets/hap-icons/lightbulb.svg"),V("aria-label","Light Bulb"),r(2),x(i.service.customName||i.service.serviceName),r(),_(i.service.values.Brightness?5:6))},dependencies:[Q,H,q,$,I],encapsulation:2})}return e})();function sc(e,n){if(e&1&&(a(0,"div",4),c(1),p(2,"number"),s()),e&2){let t=h();r(),y("",Se(2,1,t.service.values.CurrentAmbientLightLevel,"0.1-1")," lux")}}function lc(e,n){if(e&1&&(a(0,"div",4),c(1),p(2,"number"),s()),e&2){let t=h();r(),y("",Se(2,1,t.service.values.CurrentAmbientLightLevel,"1.0-0")," lux")}}var rr=(()=>{class e{service;constructor(){}static \u0275fac=function(o){return new(o||e)};static \u0275cmp=k({type:e,selectors:[["app-lightsensor"]],inputs:{service:"service"},decls:7,vars:5,consts:[[1,"accessory-box"],[1,"d-flex","flex-column","h-100"],[1,"accessory-svg",3,"inlineSVG"],[1,"accessory-label","mt-auto"],[1,"accessory-label","grey-text"]],template:function(o,i){o&1&&(a(0,"div",0)(1,"div",1),f(2,"div",2),a(3,"div",3),c(4),s(),M(5,sc,3,4,"div",4)(6,lc,3,4,"div",4),s()()),o&2&&(r(2),u("inlineSVG","/assets/hap-icons/light.svg"),V("aria-label","Light Sensor"),r(2),x(i.service.customName||i.service.serviceName),r(),_(i.service.values.CurrentAmbientLightLevel<1?5:-1),r(),_(i.service.values.CurrentAmbientLightLevel>=1?6:-1))},dependencies:[q,$,Ne],encapsulation:2})}return e})();var Ci=(()=>{class e{transform(t){if(typeof t!="number"||Number.isNaN(t))return"";let o=Math.floor(t/60),i=t%60;return[o>0?`${o.toString()}m`:"",i>0?`${i.toString()}s`:""].filter(Boolean).join(" ")}static \u0275fac=function(o){return new(o||e)};static \u0275pipe=li({name:"duration",type:e,pure:!0})}return e})();var ar=(e,n)=>({"fa-check-circle":e,"fa-blank":n});function cc(e,n){if(e&1){let t=oe();a(0,"h6",12),c(1),p(2,"translate"),p(3,"duration"),s(),a(4,"nouislider",13),ie("ngModelChange",function(i){W(t);let l=h();return te(l.targetLockManagementAutoSecurityTimeout.value,i)||(l.targetLockManagementAutoSecurityTimeout.value=i),z(i)}),S("ngModelChange",function(){W(t);let i=h();return z(i.onLockManagementAutoSecurityTimeoutStateChange())}),s()}if(e&2){let t=h();r(),Z(" ",m(2,6,"accessories.control.lock_auto"),": ",t.targetLockManagementAutoSecurityTimeout.value===0?"\u221E":m(3,8,t.targetLockManagementAutoSecurityTimeout.value)," "),r(3),u("min",t.targetLockManagementAutoSecurityTimeout.min)("max",t.targetLockManagementAutoSecurityTimeout.max)("step",10),ee("ngModel",t.targetLockManagementAutoSecurityTimeout.value)}}var sr=(()=>{class e{$activeModal=O(pe);service;serviceManagement;targetMode;targetLockManagementAutoSecurityTimeout;targetLockManagementAutoSecurityTimeoutChanged=new ae;lockTimeout;constructor(){}ngOnInit(){this.targetMode=this.service.values.LockTargetState,this.service.linkedServices&&(this.serviceManagement=Object.values(this.service.linkedServices).find(t=>t.type==="LockManagement")),this.serviceManagement&&(this.targetLockManagementAutoSecurityTimeoutChanged.pipe(Ce(300),Te()).subscribe(()=>{this.serviceManagement.getCharacteristic("LockManagementAutoSecurityTimeout").setValue(this.targetLockManagementAutoSecurityTimeout.value)}),this.loadTargetLockManagementAutoSecurityTimeout())}setTargetMode(t){var o;this.targetMode=t,this.service.getCharacteristic("LockTargetState").setValue(this.targetMode),this.lockTimeout&&(clearTimeout(this.lockTimeout),this.lockTimeout=null),this.targetMode===0&&((o=this.targetLockManagementAutoSecurityTimeout)==null?void 0:o.value)>0&&(this.lockTimeout=setTimeout(()=>{this.targetMode=1},(this.targetLockManagementAutoSecurityTimeout.value+.3)*1e3))}loadTargetLockManagementAutoSecurityTimeout(){let t=this.serviceManagement.getCharacteristic("LockManagementAutoSecurityTimeout");t&&(this.targetLockManagementAutoSecurityTimeout={value:t.value||0,min:t.minValue||0,max:t.maxValue||3600,step:t.minStep||10})}onLockManagementAutoSecurityTimeoutStateChange(){this.targetLockManagementAutoSecurityTimeoutChanged.next(this.targetLockManagementAutoSecurityTimeout.value)}static \u0275fac=function(o){return new(o||e)};static \u0275cmp=k({type:e,selectors:[["app-lockmechanism-manage"]],inputs:{service:"service"},decls:23,vars:19,consts:[[1,"modal-content"],[1,"modal-header"],[1,"modal-title",3,"innerText"],["type","button","data-bs-dismiss","modal",1,"btn-close",3,"click"],[1,"modal-body","text-center","px-5"],["role","group","aria-label","Lock Mode Control",1,"btn-group-vertical","d-flex","justify-content-center","p-0"],["type","button",1,"btn","mb-0","mx-0","p-3","btn-control",3,"click"],[1,"float-start","primary-text"],[1,"fas","fa-fw","fa-xl",3,"ngClass"],[1,"float-end"],[1,"fas","fa-fw","fa-xl","fa-blank"],[1,"modal-footer"],[1,"mt-4"],[3,"ngModelChange","min","max","step","ngModel"]],template:function(o,i){o&1&&(a(0,"div",0)(1,"div",1),f(2,"h5",2),a(3,"button",3),p(4,"translate"),S("click",function(){return i.$activeModal.dismiss("Dismiss")}),s()(),a(5,"div",4)(6,"div",5)(7,"button",6),S("click",function(d){return i.setTargetMode(1),d.target.blur()}),a(8,"div",7),f(9,"i",8),s(),c(10),p(11,"translate"),a(12,"div",9),f(13,"i",10),s()(),a(14,"button",6),S("click",function(d){return i.setTargetMode(0),d.target.blur()}),a(15,"div",7),f(16,"i",8),s(),c(17),p(18,"translate"),a(19,"div",9),f(20,"i",10),s()()(),M(21,cc,5,10),s(),f(22,"div",11),s()),o&2&&(r(2),u("innerText",i.service.customName||i.service.serviceName),r(),V("aria-label",m(4,7,"form.button_close")),r(6),u("ngClass",B(13,ar,i.targetMode===1,i.targetMode!==1)),r(),y(" ",m(11,9,"accessories.control.locked")," "),r(6),u("ngClass",B(16,ar,i.targetMode===0,i.targetMode!==0)),r(),y(" ",m(18,11,"accessories.control.unlocked")," "),r(4),_(i.serviceManagement?21:-1))},dependencies:[ce,ve,fe,_e,I,Ci,H],encapsulation:2})}return e})();var pc=e=>({"switch-on":e}),dc=(e,n)=>({"red-text":e,"grey-text":n});function mc(e,n){e&1&&f(0,"div",2),e&2&&(u("inlineSVG","/assets/hap-icons/lock-unlocked.svg"),V("aria-label","Unlocked"))}function uc(e,n){e&1&&f(0,"div",2),e&2&&(u("inlineSVG","/assets/hap-icons/lock-locked.svg"),V("aria-label","Locked"))}function vc(e,n){e&1&&f(0,"div",2),e&2&&(u("inlineSVG","/assets/hap-icons/unknown.svg"),V("aria-label","Error"))}function fc(e,n){if(e&1&&(f(0,"div",4),p(1,"translate")),e&2){let t=h();u("innerText",m(1,2,t.service.values.LockCurrentState?"accessories.control.locked":"accessories.control.unlocked"))("ngClass",B(4,dc,!t.service.values.LockCurrentState,t.service.values.LockCurrentState))}}function gc(e,n){e&1&&(a(0,"div",5),c(1),p(2,"translate"),s()),e&2&&(r(),x(m(2,1,"accessories.control.jammed")))}function hc(e,n){e&1&&(a(0,"div",5),c(1),p(2,"translate"),s()),e&2&&(r(),x(m(2,1,"accessories.control.unknown")))}var lr=(()=>{class e{service;$modal=O(se);constructor(){}onClick(){this.service.getCharacteristic("LockTargetState").setValue(this.service.values.LockTargetState?0:1)}onLongClick(){let t=this.$modal.open(sr,{size:"md"});t.componentInstance.service=this.service}static \u0275fac=function(o){return new(o||e)};static \u0275cmp=k({type:e,selectors:[["app-lockmechanism"]],inputs:{service:"service"},decls:10,vars:10,consts:[["appLongclick","","tabindex","0",1,"accessory-box",3,"shortclick","longclick","ngClass"],[1,"d-flex","flex-column","h-100"],[1,"accessory-svg",3,"inlineSVG"],[1,"accessory-label","mt-auto"],[1,"accessory-label","grey-text",3,"innerText","ngClass"],[1,"accessory-label","red-text"]],template:function(o,i){o&1&&(a(0,"div",0),S("shortclick",function(){return i.onClick()})("longclick",function(){return i.onLongClick()}),a(1,"div",1),M(2,mc,1,2,"div",2)(3,uc,1,2,"div",2)(4,vc,1,2,"div",2),a(5,"div",3),c(6),s(),M(7,fc,2,7,"div",4)(8,gc,3,3,"div",5)(9,hc,3,3,"div",5),s()()),o&2&&(u("ngClass",ne(8,pc,i.service.values.LockCurrentState===0)),r(2),_(i.service.values.LockCurrentState===0?2:-1),r(),_(i.service.values.LockCurrentState===1?3:-1),r(),_(i.service.values.LockCurrentState>1?4:-1),r(2),x(i.service.customName||i.service.serviceName),r(),_(i.service.values.LockCurrentState<2?7:-1),r(),_(i.service.values.LockCurrentState===2?8:-1),r(),_(i.service.values.LockCurrentState===3?9:-1))},dependencies:[Q,H,q,$,I],encapsulation:2})}return e})();var Cc=(e,n)=>({"switch-on":e,"switch-off":n});function _c(e,n){e&1&&(a(0,"div",4),c(1),p(2,"translate"),s()),e&2&&(r(),x(m(2,1,"accessories.control.detected")))}function xc(e,n){e&1&&(a(0,"div",5),c(1),p(2,"translate"),s()),e&2&&(r(),x(m(2,1,"accessories.control.not_detected")))}var cr=(()=>{class e{service;constructor(){}static \u0275fac=function(o){return new(o||e)};static \u0275cmp=k({type:e,selectors:[["app-motionsensor"]],inputs:{service:"service"},decls:7,vars:9,consts:[[1,"accessory-box",3,"ngClass"],[1,"d-flex","flex-column","h-100"],[1,"accessory-svg",3,"inlineSVG"],[1,"accessory-label","mt-auto"],[1,"accessory-label","red-text"],[1,"accessory-label","grey-text"]],template:function(o,i){o&1&&(a(0,"div",0)(1,"div",1),f(2,"div",2),a(3,"div",3),c(4),s(),M(5,_c,3,3,"div",4)(6,xc,3,3,"div",5),s()()),o&2&&(u("ngClass",B(6,Cc,i.service.values.MotionDetected,!i.service.values.MotionDetected)),r(2),u("inlineSVG","/assets/hap-icons/motionsensor.svg"),V("aria-label","Motion Sensor"),r(2),x(i.service.customName||i.service.serviceName),r(),_(i.service.values.MotionDetected?5:-1),r(),_(i.service.values.MotionDetected?-1:6))},dependencies:[H,q,$,I],styles:[".switch-off svg .motion_sensor_person, .switch-off svg .motion_sensor_trail_lines{fill:#e0e0e0} .switch-off svg .motion_sensor_trigger_lines{display:none} .switch-off svg .motion_sensor_background{fill:gray} body.dark-mode .switch-off svg .motion_sensor_person, body.dark-mode .switch-off svg .motion_sensor_trail_lines{fill:#2b2b2b}"]})}return e})();var Sc=(e,n)=>({"switch-on":e,"switch-off":n});function yc(e,n){e&1&&(a(0,"div",4),c(1),p(2,"translate"),s()),e&2&&(r(),x(m(2,1,"accessories.control.detected")))}function bc(e,n){e&1&&(a(0,"div",5),c(1),p(2,"translate"),s()),e&2&&(r(),x(m(2,1,"accessories.control.not_detected")))}var pr=(()=>{class e{service;constructor(){}onClick(){console.log("short click")}onLongClick(){console.log("long clicked")}static \u0275fac=function(o){return new(o||e)};static \u0275cmp=k({type:e,selectors:[["app-occupancysensor"]],inputs:{service:"service"},decls:7,vars:9,consts:[[1,"accessory-box",3,"ngClass"],[1,"d-flex","flex-column","h-100"],[1,"accessory-svg",3,"inlineSVG"],[1,"accessory-label","mt-auto"],[1,"accessory-label","red-text"],[1,"accessory-label","grey-text"]],template:function(o,i){o&1&&(a(0,"div",0)(1,"div",1),f(2,"div",2),a(3,"div",3),c(4),s(),M(5,yc,3,3,"div",4)(6,bc,3,3,"div",5),s()()),o&2&&(u("ngClass",B(6,Sc,i.service.values.OccupancyDetected,!i.service.values.OccupancyDetected)),r(2),u("inlineSVG","/assets/hap-icons/occupancysensor.svg"),V("aria-label","Occupancy Sensor"),r(2),x(i.service.customName||i.service.serviceName),r(),_(i.service.values.OccupancyDetected?5:-1),r(),_(i.service.values.OccupancyDetected?-1:6))},dependencies:[H,q,$,I],styles:[".switch-off svg .occupancy_sensor_person{fill:#e0e0e0} .switch-off svg .occupancy_sensor_trigger_lines{display:none} .switch-off svg .occupancy_sensor_background{fill:gray} body.dark-mode .switch-off svg .occupancy_sensor_person{fill:#2b2b2b}"]})}return e})();var Mc=e=>({"switch-on":e}),dr=(()=>{class e{service;constructor(){}onClick(){this.service.getCharacteristic("On").setValue(!this.service.values.On)}static \u0275fac=function(o){return new(o||e)};static \u0275cmp=k({type:e,selectors:[["app-outlet"]],inputs:{service:"service"},decls:7,vars:9,consts:[["appLongclick","","tabindex","0",1,"accessory-box",3,"shortclick","ngClass"],[1,"d-flex","flex-column","h-100"],[1,"accessory-svg",3,"inlineSVG"],[1,"accessory-label","mt-auto"],[1,"accessory-label","grey-text",3,"innerText"]],template:function(o,i){o&1&&(a(0,"div",0),S("shortclick",function(){return i.onClick()}),a(1,"div",1),f(2,"div",2),a(3,"div",3),c(4),s(),f(5,"div",4),p(6,"translate"),s()()),o&2&&(u("ngClass",ne(7,Mc,i.service.values.On)),r(2),u("inlineSVG","/assets/hap-icons/outlet.svg"),V("aria-label","Outlet"),r(2),x(i.service.customName||i.service.serviceName),r(),u("innerText",m(6,5,i.service.values.On?"accessories.control.on":"accessories.control.off")))},dependencies:[Q,H,q,$,I],encapsulation:2})}return e})();var Tc=["class","manage"],_i=(e,n)=>({"fa-check-circle":e,"fa-blank":n}),mr=(()=>{class e{$activeModal=O(pe);service;targetMode;constructor(){}ngOnInit(){this.targetMode=this.service.values.SecuritySystemTargetState}setTargetMode(t){this.targetMode=t,this.service.getCharacteristic("SecuritySystemTargetState").setValue(this.targetMode)}static \u0275fac=function(o){return new(o||e)};static \u0275cmp=k({type:e,selectors:[["app-securitysystem",8,"manage"]],inputs:{service:"service"},attrs:Tc,decls:36,vars:32,consts:[[1,"modal-content"],[1,"modal-header"],[1,"modal-title",3,"innerText"],["type","button","data-bs-dismiss","modal",1,"btn-close",3,"click"],[1,"modal-body","text-center","px-5"],["role","group","aria-label","Security System Mode Control",1,"btn-group-vertical","d-flex","justify-content-center","mb-0","p-0"],["type","button",1,"btn","mb-0","mx-0","p-3","btn-control",3,"click"],[1,"float-start","primary-text"],[1,"fas","fa-fw","fa-xl",3,"ngClass"],[1,"float-end"],[1,"fas","fa-fw","fa-xl","fa-blank"],[1,"modal-footer"]],template:function(o,i){o&1&&(a(0,"div",0)(1,"div",1),f(2,"h5",2),a(3,"button",3),p(4,"translate"),S("click",function(){return i.$activeModal.dismiss("Dismiss")}),s()(),a(5,"div",4)(6,"div",5)(7,"button",6),S("click",function(d){return i.setTargetMode(3),d.target.blur()}),a(8,"div",7),f(9,"i",8),s(),c(10),p(11,"translate"),a(12,"div",9),f(13,"i",10),s()(),a(14,"button",6),S("click",function(d){return i.setTargetMode(0),d.target.blur()}),a(15,"div",7),f(16,"i",8),s(),c(17),p(18,"translate"),a(19,"div",9),f(20,"i",10),s()(),a(21,"button",6),S("click",function(d){return i.setTargetMode(1),d.target.blur()}),a(22,"div",7),f(23,"i",8),s(),c(24),p(25,"translate"),a(26,"div",9),f(27,"i",10),s()(),a(28,"button",6),S("click",function(d){return i.setTargetMode(2),d.target.blur()}),a(29,"div",7),f(30,"i",8),s(),c(31),p(32,"translate"),a(33,"div",9),f(34,"i",10),s()()()(),f(35,"div",11),s()),o&2&&(r(2),u("innerText",i.service.customName||i.service.serviceName),r(),V("aria-label",m(4,10,"form.button_close")),r(6),u("ngClass",B(20,_i,i.targetMode===3,i.targetMode!==3)),r(),y(" ",m(11,12,"accessories.control.off")," "),r(6),u("ngClass",B(23,_i,i.targetMode===0,i.targetMode!==0)),r(),y(" ",m(18,14,"accessories.control.home")," "),r(6),u("ngClass",B(26,_i,i.targetMode===1,i.targetMode!==1)),r(),y(" ",m(25,16,"accessories.control.away")," "),r(6),u("ngClass",B(29,_i,i.targetMode===2,i.targetMode!==2)),r(),y(" ",m(32,18,"accessories.control.night")," "))},dependencies:[ce,I,H],encapsulation:2})}return e})();var kc=e=>({"switch-on":e});function wc(e,n){e&1&&f(0,"div",2),e&2&&(u("inlineSVG","/assets/hap-icons/securitysystem-active.svg"),V("aria-label","Armed"))}function Ec(e,n){e&1&&f(0,"div",2),e&2&&(u("inlineSVG","/assets/hap-icons/securitysystem-off.svg"),V("aria-label","Disarmed"))}function Vc(e,n){e&1&&(a(0,"div",4),c(1),p(2,"translate"),s()),e&2&&(r(),x(m(2,1,"accessories.control.home")))}function Ic(e,n){e&1&&(a(0,"div",4),c(1),p(2,"translate"),s()),e&2&&(r(),x(m(2,1,"accessories.control.away")))}function Dc(e,n){e&1&&(a(0,"div",4),c(1),p(2,"translate"),s()),e&2&&(r(),x(m(2,1,"accessories.control.night")))}function Pc(e,n){e&1&&(a(0,"div",5),c(1),p(2,"translate"),s()),e&2&&(r(),x(m(2,1,"accessories.control.off")))}function Ac(e,n){e&1&&(a(0,"div",5),c(1),p(2,"translate"),s()),e&2&&(r(),x(m(2,1,"accessories.control.triggered")))}var ur=(()=>{class e{$modal=O(se);service;constructor(){}onClick(){let t=this.$modal.open(mr,{size:"md"});t.componentInstance.service=this.service}static \u0275fac=function(o){return new(o||e)};static \u0275cmp=k({type:e,selectors:[["app-securitysystem"]],inputs:{service:"service"},decls:11,vars:7,consts:[["appLongclick","","tabindex","0",1,"accessory-box",3,"shortclick","ngClass"],[1,"d-flex","flex-column","h-100"],[1,"accessory-svg",3,"inlineSVG"],[1,"accessory-label","mt-auto"],[1,"accessory-label","grey-text"],[1,"accessory-label","red-text"]],template:function(o,i){if(o&1&&(a(0,"div",0),S("shortclick",function(){return i.onClick()}),a(1,"div",1),M(2,wc,1,2,"div",2)(3,Ec,1,2,"div",2),a(4,"div",3),c(5),s(),M(6,Vc,3,3,"div",4)(7,Ic,3,3,"div",4)(8,Dc,3,3,"div",4)(9,Pc,3,3,"div",5)(10,Ac,3,3,"div",5),s()()),o&2){let l;u("ngClass",ne(5,kc,i.service.values.SecuritySystemCurrentState!==3)),r(2),_(i.service.values.SecuritySystemCurrentState!==3?2:-1),r(),_(i.service.values.SecuritySystemCurrentState===3?3:-1),r(2),x(i.service.customName||i.service.serviceName),r(),_((l=i.service.values.SecuritySystemCurrentState)===0?6:l===1?7:l===2?8:l===3?9:l===4?10:-1)}},dependencies:[Q,H,q,$,I],encapsulation:2})}return e})();var Bc=(e,n)=>({"switch-on":e,"switch-off":n});function Hc(e,n){e&1&&(a(0,"div",4),c(1),p(2,"translate"),s()),e&2&&(r(),x(m(2,1,"accessories.control.detected")))}function Oc(e,n){e&1&&(a(0,"div",5),c(1),p(2,"translate"),s()),e&2&&(r(),x(m(2,1,"accessories.control.not_detected")))}var vr=(()=>{class e{service;constructor(){}static \u0275fac=function(o){return new(o||e)};static \u0275cmp=k({type:e,selectors:[["app-smokesensor"]],inputs:{service:"service"},decls:7,vars:9,consts:[[1,"accessory-box",3,"ngClass"],[1,"d-flex","flex-column","h-100"],[1,"accessory-svg",3,"inlineSVG"],[1,"accessory-label","mt-auto"],[1,"accessory-label","red-text"],[1,"accessory-label","grey-text"]],template:function(o,i){o&1&&(a(0,"div",0)(1,"div",1),f(2,"div",2),a(3,"div",3),c(4),s(),M(5,Hc,3,3,"div",4)(6,Oc,3,3,"div",5),s()()),o&2&&(u("ngClass",B(6,Bc,i.service.values.SmokeDetected,!i.service.values.SmokeDetected)),r(2),u("inlineSVG","/assets/hap-icons/smokesensor.svg"),V("aria-label","Smoke Sensor"),r(2),x(i.service.customName||i.service.serviceName),r(),_(i.service.values.SmokeDetected?5:-1),r(),_(i.service.values.SmokeDetected?-1:6))},dependencies:[H,q,$,I],styles:[".switch-off svg .smoke_sensor_trigger_lines{display:none} .switch-off svg .smoke_sensor_box{fill:gray}"]})}return e})();var xi=(e,n)=>({"fa-check-circle":e,"fa-blank":n});function Nc(e,n){if(e&1){let t=oe();a(0,"div",5)(1,"button",7),S("click",function(i){return W(t),h().setActive(0),z(i.target.blur())}),a(2,"div",8),f(3,"i",9),s(),c(4),p(5,"translate"),a(6,"div",10),f(7,"i",11),s()(),a(8,"button",7),S("click",function(i){return W(t),h().setActive(1),z(i.target.blur())}),a(9,"div",8),f(10,"i",9),s(),c(11),p(12,"translate"),a(13,"div",10),f(14,"i",11),s()()()}if(e&2){let t=h();r(3),u("ngClass",B(8,xi,t.service.values.Active===0,t.service.values.Active!==0)),r(),y(" ",m(5,4,"accessories.control.off")," "),r(6),u("ngClass",B(11,xi,t.service.values.Active===1,t.service.values.Active!==1)),r(),y(" ",m(12,6,"accessories.control.on")," ")}}function Rc(e,n){if(e&1){let t=oe();a(0,"h6",13),c(1),p(2,"translate"),s(),a(3,"nouislider",14),ie("ngModelChange",function(i){W(t);let l=h();return te(l.targetVolume.value,i)||(l.targetVolume.value=i),z(i)}),S("ngModelChange",function(){W(t);let i=h();return z(i.onVolumeStateChange())}),s()}if(e&2){let t=h();r(),Z("",m(2,6,"accessories.control.speaker_volume"),": ",t.targetVolume.value,"%"),r(2),u("min",t.targetVolume.min)("max",t.targetVolume.max)("step",t.targetVolume.step),ee("ngModel",t.targetVolume.value)}}var fr=(()=>{class e{$activeModal=O(pe);service;targetMode;targetVolume;targetVolumeChanged=new ae;hasActive;constructor(){this.targetVolumeChanged.pipe(Ce(300),Te()).subscribe(()=>{this.service.getCharacteristic("Volume").setValue(this.targetVolume.value)})}ngOnInit(){this.targetMode=this.service.values.Mute,this.loadTargetVolume(),this.service.serviceCharacteristics.find(t=>t.type==="Active")&&(this.hasActive=!0)}loadTargetVolume(){let t=this.service.getCharacteristic("Volume");t&&(this.targetVolume={value:t.value,min:t.minValue,max:t.maxValue,step:t.minStep})}setTargetMode(t){this.targetMode=t,this.service.getCharacteristic("Mute").setValue(this.targetMode)}setActive(t){this.service.getCharacteristic("Active").setValue(t)}onVolumeStateChange(){this.targetVolumeChanged.next(this.targetVolume.value)}static \u0275fac=function(o){return new(o||e)};static \u0275cmp=k({type:e,selectors:[["app-speaker-manage"]],inputs:{service:"service"},decls:27,vars:23,consts:[[1,"modal-content"],[1,"modal-header"],[1,"modal-title",3,"innerText"],["type","button","data-bs-dismiss","modal",1,"btn-close",3,"click"],[1,"modal-body","text-center","px-5"],["role","group","aria-label","Speaker Mode Control",1,"btn-group-vertical","d-flex","justify-content-center","mb-4","p-0"],["role","group","aria-label","Speaker Mute Control",1,"btn-group-vertical","d-flex","justify-content-center","mb-0","p-0"],["type","button",1,"btn","mb-0","mx-0","p-3","btn-control",3,"click"],[1,"float-start","primary-text"],[1,"fas","fa-fw","fa-xl",3,"ngClass"],[1,"float-end"],[1,"fas","fa-fw","fa-xl","fa-blank"],[1,"modal-footer"],[1,"mt-4","mb-0"],[3,"ngModelChange","min","max","step","ngModel"]],template:function(o,i){o&1&&(a(0,"div",0)(1,"div",1),f(2,"h5",2),a(3,"button",3),p(4,"translate"),S("click",function(){return i.$activeModal.dismiss("Dismiss")}),s()(),a(5,"div",4),M(6,Nc,15,14,"div",5),a(7,"h6"),c(8),p(9,"translate"),s(),a(10,"div",6)(11,"button",7),S("click",function(d){return i.setTargetMode(!1),d.target.blur()}),a(12,"div",8),f(13,"i",9),s(),c(14),p(15,"translate"),a(16,"div",10),f(17,"i",11),s()(),a(18,"button",7),S("click",function(d){return i.setTargetMode(!0),d.target.blur()}),a(19,"div",8),f(20,"i",9),s(),c(21),p(22,"translate"),a(23,"div",10),f(24,"i",11),s()()(),M(25,Rc,4,8),s(),f(26,"div",12),s()),o&2&&(r(2),u("innerText",i.service.customName||i.service.serviceName),r(),V("aria-label",m(4,9,"form.button_close")),r(3),_(i.hasActive?6:-1),r(2),x(m(9,11,i.hasActive?"accessories.control.speaker_volume":"menu.label_status")),r(5),u("ngClass",B(17,xi,!i.targetMode,i.targetMode)),r(),y(" ",m(15,13,"accessories.control.not_mute")," "),r(6),u("ngClass",B(20,xi,i.targetMode,!i.targetMode)),r(),y(" ",m(22,15,"accessories.control.mute")," "),r(4),_(i.targetVolume?25:-1))},dependencies:[ce,ve,fe,_e,I,H],encapsulation:2})}return e})();var Lc=e=>({"switch-on":e});function Fc(e,n){e&1&&(f(0,"div",4),p(1,"translate")),e&2&&u("innerText",m(1,1,"accessories.control.off"))}function Gc(e,n){e&1&&(f(0,"div",4),p(1,"translate")),e&2&&u("innerText",m(1,1,"accessories.control.mute"))}function jc(e,n){if(e&1&&(a(0,"div",5),c(1),s()),e&2){let t=h();r(),y("",t.service.values.Volume,"%")}}function Uc(e,n){e&1&&(a(0,"div",5),c(1),p(2,"translate"),s()),e&2&&(r(),x(m(2,1,"accessories.control.on")))}var gr=(()=>{class e{$modal=O(se);service;constructor(){}onClick(){let t=this.service.getCharacteristic("Active");t!==void 0?t.setValue(this.service.values.Active===0?1:0):this.service.getCharacteristic("Mute").setValue(!this.service.values.Mute)}onLongClick(){if("Volume"in this.service.values||"Active"in this.service.values){let t=this.$modal.open(fr,{size:"md"});t.componentInstance.service=this.service}}static \u0275fac=function(o){return new(o||e)};static \u0275cmp=k({type:e,selectors:[["app-speaker"]],inputs:{service:"service"},decls:9,vars:7,consts:[["appLongclick","","tabindex","0",1,"accessory-box",3,"longclick","shortclick","ngClass"],[1,"d-flex","flex-column","h-100"],[1,"accessory-svg",3,"inlineSVG"],[1,"accessory-label","mt-auto"],[1,"accessory-label","grey-text",3,"innerText"],[1,"accessory-label","grey-text"]],template:function(o,i){o&1&&(a(0,"div",0),S("longclick",function(){return i.onLongClick()})("shortclick",function(){return i.onClick()}),a(1,"div",1),f(2,"div",2),a(3,"div",3),c(4),s(),M(5,Fc,2,3,"div",4)(6,Gc,2,3,"div",4)(7,jc,2,1,"div",5)(8,Uc,3,3,"div",5),s()()),o&2&&(u("ngClass",ne(5,Lc,i.service.values.Active!==void 0?i.service.values.Active===1:!i.service.values.Mute)),r(2),u("inlineSVG","/assets/hap-icons/speaker.svg"),V("aria-label","Speaker"),r(2),x(i.service.customName||i.service.serviceName),r(),_(i.service.values.Active!==void 0&&i.service.values.Active===0?5:i.service.values.Mute?6:i.service.values.Volume!==void 0?7:8))},dependencies:[Q,H,q,$,I],encapsulation:2})}return e})();var hr=(()=>{class e{service;constructor(){}static \u0275fac=function(o){return new(o||e)};static \u0275cmp=k({type:e,selectors:[["app-statelessprogrammableswitch"]],inputs:{service:"service"},decls:5,vars:3,consts:[[1,"accessory-box"],[1,"d-flex","flex-column","h-100"],[1,"accessory-svg",3,"inlineSVG"],[1,"accessory-label","mt-auto"]],template:function(o,i){o&1&&(a(0,"div",0)(1,"div",1),f(2,"div",2),a(3,"div",3),c(4),s()()()),o&2&&(r(2),u("inlineSVG","/assets/hap-icons/statelessprogrammableswitch.svg"),V("aria-label","Stateless Programmable Switch"),r(2),x(i.service.customName||i.service.serviceName))},dependencies:[q,$],encapsulation:2})}return e})();var Wc=e=>({"switch-on":e}),Cr=(()=>{class e{service;constructor(){}onClick(){this.service.getCharacteristic("On").setValue(!this.service.values.On)}static \u0275fac=function(o){return new(o||e)};static \u0275cmp=k({type:e,selectors:[["app-switch"]],inputs:{service:"service"},decls:7,vars:9,consts:[["appLongclick","","tabindex","0",1,"accessory-box",3,"shortclick","ngClass"],[1,"d-flex","flex-column","h-100"],[1,"accessory-svg",3,"inlineSVG"],[1,"accessory-label","mt-auto"],[1,"accessory-label","grey-text",3,"innerText"]],template:function(o,i){o&1&&(a(0,"div",0),S("shortclick",function(){return i.onClick()}),a(1,"div",1),f(2,"div",2),a(3,"div",3),c(4),s(),f(5,"div",4),p(6,"translate"),s()()),o&2&&(u("ngClass",ne(7,Wc,i.service.values.On)),r(2),u("inlineSVG","/assets/hap-icons/switch.svg"),V("aria-label","Switch"),r(2),x(i.service.customName||i.service.serviceName),r(),u("innerText",m(6,5,i.service.values.On?"accessories.control.on":"accessories.control.off")))},dependencies:[Q,H,q,$,I],encapsulation:2})}return e})();var zc=e=>({"switch-on":e});function $c(e,n){e&1&&(a(0,"div",4),c(1),p(2,"translate"),s()),e&2&&(r(),x(m(2,1,"accessories.control.off")))}function qc(e,n){if(e&1&&(a(0,"div",4),c(1),s()),e&2){let t=h();r(),x(t.channelList[t.service.values.ActiveIdentifier])}}var _r=(()=>{class e{service;channelList={};constructor(){}ngOnInit(){for(let[,t]of Object.entries(this.service.linkedServices))this.channelList[t.values.Identifier]=t.values.ConfiguredName}onClick(){this.service.getCharacteristic("Active").setValue(this.service.values.Active?0:1)}static \u0275fac=function(o){return new(o||e)};static \u0275cmp=k({type:e,selectors:[["app-television"]],inputs:{service:"service"},decls:7,vars:8,consts:[["appLongclick","","tabindex","0",1,"accessory-box",3,"shortclick","ngClass"],[1,"d-flex","flex-column","h-100"],[1,"accessory-svg",3,"inlineSVG"],[1,"accessory-label","mt-auto"],[1,"accessory-label","grey-text"]],template:function(o,i){o&1&&(a(0,"div",0),S("shortclick",function(){return i.onClick()}),a(1,"div",1),f(2,"div",2),a(3,"div",3),c(4),s(),M(5,$c,3,3,"div",4)(6,qc,2,1,"div",4),s()()),o&2&&(u("ngClass",ne(6,zc,i.service.values.Active)),r(2),u("inlineSVG","/assets/hap-icons/television.svg"),V("aria-label","Television"),r(2),y(" ",i.service.customName||i.service.values.ConfiguredName||i.service.serviceName," "),r(),_(i.service.values.Active?-1:5),r(),_(i.service.values.Active?6:-1))},dependencies:[Q,H,q,$,I],encapsulation:2})}return e})();var xr=(()=>{class e{service;constructor(){}static \u0275fac=function(o){return new(o||e)};static \u0275cmp=k({type:e,selectors:[["app-temperaturesensor"]],inputs:{service:"service"},decls:7,vars:7,consts:[[1,"accessory-box"],[1,"d-flex","flex-column","h-100"],[1,"temperature-circle","temperature-circle-collapse",3,"innerText"],[1,"accessory-label","mt-auto"]],template:function(o,i){o&1&&(a(0,"div",0)(1,"div",1),f(2,"div",2),p(3,"convertTemp"),p(4,"number"),a(5,"div",3),c(6),s()()()),o&2&&(r(2),u("innerText",Se(4,4,m(3,2,i.service.values.CurrentTemperature),"1.0-1")+"\xB0"),r(4),x(i.service.customName||i.service.serviceName))},dependencies:[Ne,$e],styles:[".temperature-circle[_ngcontent-%COMP%]{position:relative;display:inline-block;width:50px;height:50px;line-height:50px;border-radius:50%;font-size:14px;text-align:center;margin-bottom:6px;background-color:gray;color:#d3d3d3}@media (max-width: 575px){.temperature-circle-collapse[_ngcontent-%COMP%]{width:31px;height:31px;line-height:31px;font-size:10px;margin-bottom:7px}}"]})}return e})();var Kc=(e,n,t)=>({cooling:e,heating:n,"no-current-state":t}),Si=(e,n)=>({"fa-check-circle":e,"fa-blank":n}),Sr=(()=>{class e{$activeModal=O(pe);$settings=O(Ze);service;targetMode;targetTemperature;targetTemperatureChanged=new ae;constructor(){this.targetTemperatureChanged.pipe(Ce(300),Te()).subscribe(()=>{this.service.getCharacteristic("TargetTemperature").setValue(this.targetTemperature.value)})}ngOnInit(){this.targetMode=this.service.values.TargetHeatingCoolingState,this.loadTargetTemperature(),setTimeout(()=>{document.querySelectorAll(".noUi-target").forEach(o=>{o.style.background="linear-gradient(to right, rgb(80, 80, 179), rgb(173, 216, 230), rgb(255, 185, 120), rgb(139, 90, 60))"})},10)}loadTargetTemperature(){let t=this.service.getCharacteristic("TargetTemperature");this.targetTemperature={value:t.value,min:t.minValue,max:t.maxValue,step:t.minStep}}setTargetMode(t){this.targetMode=t,this.service.getCharacteristic("TargetHeatingCoolingState").setValue(this.targetMode)}onTemperatureStateChange(){this.targetTemperatureChanged.next(this.targetTemperature.value)}static \u0275fac=function(o){return new(o||e)};static \u0275cmp=k({type:e,selectors:[["app-thermostat-manage"]],inputs:{service:"service"},decls:46,vars:59,consts:[[1,"modal-content"],[1,"modal-header"],[1,"modal-title",3,"innerText"],["type","button","data-bs-dismiss","modal",1,"btn-close",3,"click"],[1,"modal-body","text-center","px-5"],[1,"temperature-circle","temperature-circle-big","mb-4",3,"innerText","ngClass"],["role","group","aria-label","Thermostat Mode Control",1,"btn-group-vertical","d-flex","justify-content-center","mb-0","p-0"],["type","button",1,"btn","mb-0","mx-0","p-3","btn-control",3,"click"],[1,"float-start","primary-text"],[1,"fas","fa-fw","fa-xl",3,"ngClass"],[1,"float-end"],[1,"fas","fa-fw","fa-xl","fa-blank"],[1,"mt-4"],[3,"ngModelChange","min","max","step","ngModel"],[1,"modal-footer"]],template:function(o,i){o&1&&(a(0,"div",0)(1,"div",1),f(2,"h5",2),a(3,"button",3),p(4,"translate"),S("click",function(){return i.$activeModal.dismiss("Dismiss")}),s()(),a(5,"div",4),f(6,"div",5),p(7,"convertTemp"),p(8,"number"),a(9,"div",6)(10,"button",7),S("click",function(d){return i.setTargetMode(0),d.target.blur()}),a(11,"div",8),f(12,"i",9),s(),c(13),p(14,"translate"),a(15,"div",10),f(16,"i",11),s()(),a(17,"button",7),S("click",function(d){return i.setTargetMode(3),d.target.blur()}),a(18,"div",8),f(19,"i",9),s(),c(20),p(21,"translate"),a(22,"div",10),f(23,"i",11),s()(),a(24,"button",7),S("click",function(d){return i.setTargetMode(1),d.target.blur()}),a(25,"div",8),f(26,"i",9),s(),c(27),p(28,"translate"),a(29,"div",10),f(30,"i",11),s()(),a(31,"button",7),S("click",function(d){return i.setTargetMode(2),d.target.blur()}),a(32,"div",8),f(33,"i",9),s(),c(34),p(35,"translate"),a(36,"div",10),f(37,"i",11),s()()(),a(38,"h6",12),c(39),p(40,"translate"),p(41,"convertTemp"),p(42,"number"),p(43,"uppercase"),s(),a(44,"nouislider",13),ie("ngModelChange",function(d){return te(i.targetTemperature.value,d)||(i.targetTemperature.value=d),d}),S("ngModelChange",function(){return i.onTemperatureStateChange()}),s()(),f(45,"div",14),s()),o&2&&(r(2),u("innerText",i.service.customName||i.service.serviceName),r(),V("aria-label",m(4,19,"form.button_close")),r(3),u("innerText",Se(8,23,m(7,21,i.service.values.CurrentTemperature),"1.0-1")+"\xB0")("ngClass",ze(43,Kc,i.service.values.CurrentHeatingCoolingState===2&&i.service.values.TargetHeatingCoolingState>0,i.service.values.CurrentHeatingCoolingState===1&&i.service.values.TargetHeatingCoolingState>0,i.service.values.TargetHeatingCoolingState>0&&i.service.values.CurrentHeatingCoolingState===0)),r(6),u("ngClass",B(47,Si,i.targetMode===0,i.targetMode!==0)),r(),y(" ",m(14,26,"accessories.control.off")," "),r(6),u("ngClass",B(50,Si,i.targetMode===3,i.targetMode!==3)),r(),y(" ",m(21,28,"accessories.control.auto")," "),r(6),u("ngClass",B(53,Si,i.targetMode===1,i.targetMode!==1)),r(),y(" ",m(28,30,"accessories.control.heat")," "),r(6),u("ngClass",B(56,Si,i.targetMode===2,i.targetMode!==2)),r(),y(" ",m(35,32,"accessories.control.cool")," "),r(5),ut(" ",m(40,34,"accessories.control.target_auto"),": ",Se(42,38,m(41,36,i.targetTemperature.value),"1.0-1"),"\xB0",m(43,41,i.$settings.env.temperatureUnits)," "),r(5),u("min",i.targetTemperature.min)("max",i.targetTemperature.max)("step",i.targetTemperature.step),ee("ngModel",i.targetTemperature.value))},dependencies:[H,ce,ve,fe,_e,Ne,I,$e,at],styles:[".temperature-circle[_ngcontent-%COMP%]{position:relative;display:inline-block;width:50px;height:50px;line-height:50px;border-radius:50%;font-size:14px;text-align:center;margin-bottom:6px;background-color:gray;color:#d3d3d3}@media (max-width: 575px){.temperature-circle-collapse[_ngcontent-%COMP%]{width:31px;height:31px;line-height:31px;font-size:10px;margin-bottom:7px}}.temperature-circle-big[_ngcontent-%COMP%]{width:80px;height:80px;line-height:80px;font-size:22px}@keyframes _ngcontent-%COMP%_animate-cooling{0%{background-position:0 100%}to{background-position:0 0}}@keyframes _ngcontent-%COMP%_animate-heating{0%{background-position:0 0}to{background-position:0 100%}}.cooling[_ngcontent-%COMP%]{animation:_ngcontent-%COMP%_animate-cooling 5s linear infinite;background-image:linear-gradient(0deg,#1e8bbd,#66d6d6,#1e8bbd,#66d6d6);background-size:100% 300%;color:#fff}.heating[_ngcontent-%COMP%]{animation:_ngcontent-%COMP%_animate-heating 5s linear infinite;background-image:linear-gradient(0deg,#cc5e00,#e69533,#cc5e00,#e69533);background-size:100% 300%;color:#fff}.no-current-state[_ngcontent-%COMP%]{background-color:#42d672;color:#fff;-webkit-transition:all .15s ease-in-out;transition:all .15s ease-in-out}"]})}return e})();var Xc=e=>({"switch-on":e}),Yc=(e,n,t)=>({cooling:e,heating:n,"no-current-state":t});function Zc(e,n){e&1&&(c(0),p(1,"translate")),e&2&&y(" ",m(1,1,"accessories.control.off")," ")}function Qc(e,n){e&1&&(c(0),p(1,"translate")),e&2&&y(" ",m(1,1,"accessories.control.heat")," ")}function Jc(e,n){e&1&&(c(0),p(1,"translate")),e&2&&y(" ",m(1,1,"accessories.control.cool")," ")}function ep(e,n){if(e&1&&(f(0,"i",5),c(1),p(2,"convertTemp"),p(3,"number"),p(4,"uppercase")),e&2){let t=h();r(),Z(" ",Se(3,4,m(2,2,t.service.values.TargetTemperature),"1.0-1"),"\xB0",m(4,7,t.$settings.env.temperatureUnits)," ")}}var yr=(()=>{class e{$modal=O(se);$settings=O(Ze);service;model=1;constructor(){}onClick(){let t=this.$modal.open(Sr,{size:"md"});t.componentInstance.service=this.service}static \u0275fac=function(o){return new(o||e)};static \u0275cmp=k({type:e,selectors:[["app-thermostat"]],inputs:{service:"service"},decls:13,vars:18,consts:[["appLongclick","","tabindex","0",1,"accessory-box",3,"longclick","shortclick","ngClass"],[1,"d-flex","flex-column","h-100"],[1,"temperature-circle","temperature-circle-collapse",3,"innerText","ngClass"],[1,"accessory-label","mt-auto"],[1,"accessory-label","grey-text"],[1,"fa","fas","fa-bullseye"]],template:function(o,i){o&1&&(a(0,"div",0),S("longclick",function(){return i.onClick()})("shortclick",function(){return i.onClick()}),a(1,"div",1),f(2,"div",2),p(3,"convertTemp"),p(4,"number"),p(5,"uppercase"),a(6,"div",3),c(7),s(),a(8,"div",4),M(9,Zc,2,3)(10,Qc,2,3)(11,Jc,2,3)(12,ep,5,9),s()()()),o&2&&(u("ngClass",ne(12,Xc,i.service.values.TargetHeatingCoolingState>0)),r(2),u("innerText",Se(4,7,m(3,5,i.service.values.CurrentTemperature),"1.0-1")+"\xB0"+m(5,10,i.$settings.env.temperatureUnits))("ngClass",ze(14,Yc,i.service.values.CurrentHeatingCoolingState===2&&i.service.values.TargetHeatingCoolingState>0,i.service.values.CurrentHeatingCoolingState===1&&i.service.values.TargetHeatingCoolingState>0,i.service.values.TargetHeatingCoolingState>0&&i.service.values.CurrentHeatingCoolingState===0)),r(5),x(i.service.customName||i.service.serviceName),r(2),_(i.service.values.TargetHeatingCoolingState===0?9:i.service.values.TargetHeatingCoolingState===1?10:i.service.values.TargetHeatingCoolingState===2?11:i.service.values.TargetHeatingCoolingState===3?12:-1))},dependencies:[Q,H,Ne,I,$e,at],styles:[".temperature-circle[_ngcontent-%COMP%]{position:relative;display:inline-block;width:50px;height:50px;line-height:50px;border-radius:50%;font-size:14px;text-align:center;margin-bottom:6px;background-color:gray;color:#d3d3d3}@media (max-width: 575px){.temperature-circle-collapse[_ngcontent-%COMP%]{width:31px;height:31px;line-height:31px;font-size:10px;margin-bottom:7px}}.temperature-circle-big[_ngcontent-%COMP%]{width:80px;height:80px;line-height:80px;font-size:22px}@keyframes _ngcontent-%COMP%_animate-cooling{0%{background-position:0 100%}to{background-position:0 0}}@keyframes _ngcontent-%COMP%_animate-heating{0%{background-position:0 0}to{background-position:0 100%}}.cooling[_ngcontent-%COMP%]{animation:_ngcontent-%COMP%_animate-cooling 5s linear infinite;background-image:linear-gradient(0deg,#1e8bbd,#66d6d6,#1e8bbd,#66d6d6);background-size:100% 300%;color:#fff}.heating[_ngcontent-%COMP%]{animation:_ngcontent-%COMP%_animate-heating 5s linear infinite;background-image:linear-gradient(0deg,#cc5e00,#e69533,#cc5e00,#e69533);background-size:100% 300%;color:#fff}.no-current-state[_ngcontent-%COMP%]{background-color:#42d672;color:#fff;-webkit-transition:all .15s ease-in-out;transition:all .15s ease-in-out}"]})}return e})();var br=(()=>{class e{service;constructor(){}static \u0275fac=function(o){return new(o||e)};static \u0275cmp=k({type:e,selectors:[["app-unknown"]],inputs:{service:"service"},decls:7,vars:4,consts:[[1,"accessory-box"],[1,"d-flex","flex-column","h-100"],[1,"accessory-svg",3,"inlineSVG"],[1,"accessory-label","mt-auto"],[1,"accessory-label","grey-text"]],template:function(o,i){o&1&&(a(0,"div",0)(1,"div",1),f(2,"div",2),a(3,"div",3),c(4),s(),a(5,"div",4),c(6),s()()()),o&2&&(r(2),u("inlineSVG","/assets/hap-icons/unknown.svg"),V("aria-label","Switch"),r(2),x(i.service.customName||i.service.serviceName),r(2),x(i.service.humanType))},dependencies:[q,$],encapsulation:2})}return e})();var Mr=(e,n)=>({"fa-check-circle":e,"fa-blank":n});function tp(e,n){if(e&1){let t=oe();a(0,"h6"),c(1),p(2,"translate"),p(3,"duration"),s(),a(4,"nouislider",12),ie("ngModelChange",function(i){W(t);let l=h();return te(l.targetSetDuration.value,i)||(l.targetSetDuration.value=i),z(i)}),S("ngModelChange",function(){W(t);let i=h();return z(i.onSetDurationStateChange())}),s()}if(e&2){let t=h();r(),Z(" ",m(2,6,"accessories.control.set_duration"),": ",t.targetSetDuration.value===0?"\u221E":m(3,8,t.targetSetDuration.value)," "),r(3),u("min",t.targetSetDuration.min)("max",t.targetSetDuration.max)("step",15),ee("ngModel",t.targetSetDuration.value)}}var Tr=(()=>{class e{$activeModal=O(pe);service;targetMode;targetSetDuration;targetSetDurationChanged=new ae;constructor(){this.targetSetDurationChanged.pipe(Ce(300),Te()).subscribe(()=>{this.service.getCharacteristic("SetDuration").setValue(this.targetSetDuration.value)})}ngOnInit(){this.targetMode=this.service.values.Active,this.loadTargetSetDuration()}loadTargetSetDuration(){let t=this.service.getCharacteristic("SetDuration");t&&(this.targetSetDuration={value:t.value,min:t.minValue,max:t.maxValue,step:t.minStep},setTimeout(()=>{let o=document.querySelectorAll(".noUi-target")[0];o&&(o.style.background="linear-gradient(to right, #add8e6, #416bdf)")},10))}setTargetMode(t){this.targetMode=t,this.service.getCharacteristic("Active").setValue(this.targetMode)}onSetDurationStateChange(){this.targetSetDurationChanged.next(this.targetSetDuration.value)}static \u0275fac=function(o){return new(o||e)};static \u0275cmp=k({type:e,selectors:[["app-valve-manage"]],inputs:{service:"service"},decls:23,vars:19,consts:[[1,"modal-content"],[1,"modal-header"],[1,"modal-title",3,"innerText"],["type","button","data-bs-dismiss","modal",1,"btn-close",3,"click"],[1,"modal-body","text-center","px-5"],["role","group","aria-label","Valve Mode Control",1,"btn-group-vertical","d-flex","justify-content-center","mb-4","p-0"],["type","button",1,"btn","mb-0","mx-0","p-3","btn-control",3,"click"],[1,"float-start","primary-text"],[1,"fas","fa-fw","fa-xl",3,"ngClass"],[1,"float-end"],[1,"fas","fa-fw","fa-xl","fa-blank"],[1,"modal-footer"],[3,"ngModelChange","min","max","step","ngModel"]],template:function(o,i){o&1&&(a(0,"div",0)(1,"div",1),f(2,"h5",2),a(3,"button",3),p(4,"translate"),S("click",function(){return i.$activeModal.dismiss("Dismiss")}),s()(),a(5,"div",4)(6,"div",5)(7,"button",6),S("click",function(d){return i.setTargetMode(!1),d.target.blur()}),a(8,"div",7),f(9,"i",8),s(),c(10),p(11,"translate"),a(12,"div",9),f(13,"i",10),s()(),a(14,"button",6),S("click",function(d){return i.setTargetMode(!0),d.target.blur()}),a(15,"div",7),f(16,"i",8),s(),c(17),p(18,"translate"),a(19,"div",9),f(20,"i",10),s()()(),M(21,tp,5,10),s(),f(22,"div",11),s()),o&2&&(r(2),u("innerText",i.service.customName||i.service.serviceName),r(),V("aria-label",m(4,7,"form.button_close")),r(6),u("ngClass",B(13,Mr,!i.targetMode,i.targetMode)),r(),y(" ",m(11,9,"accessories.control.off")," "),r(6),u("ngClass",B(16,Mr,i.targetMode,!i.targetMode)),r(),y(" ",m(18,11,"accessories.control.on")," "),r(4),_(i.targetSetDuration?21:-1))},dependencies:[ce,ve,fe,_e,I,H,Ci],encapsulation:2})}return e})();var ip=(e,n)=>({"switch-on":e,"switch-off":n});function np(e,n){e&1&&f(0,"div",2),e&2&&(u("inlineSVG","/assets/hap-icons/valve-generic.svg"),V("aria-label","Valve"))}function op(e,n){e&1&&f(0,"div",2),e&2&&(u("inlineSVG","/assets/hap-icons/valve-irrigation.svg"),V("aria-label","Valve"))}function rp(e,n){e&1&&f(0,"div",2),e&2&&(u("inlineSVG","/assets/hap-icons/valve-showerhead.svg"),V("aria-label","Valve"))}function ap(e,n){e&1&&f(0,"div",2),e&2&&(u("inlineSVG","/assets/hap-icons/valve-waterfaucet.svg"),V("aria-label","Valve"))}function sp(e,n){if(e&1&&(a(0,"div",4),c(1),s()),e&2){let t=h();r(),x(t.remainingDuration)}}function lp(e,n){e&1&&(a(0,"div",4),c(1),p(2,"translate"),s()),e&2&&(r(),x(m(2,1,"accessories.control.running")))}function cp(e,n){e&1&&(a(0,"div",4),c(1),p(2,"translate"),s()),e&2&&(r(),x(m(2,1,"accessories.control.off")))}var kr=(()=>{class e{$modal=O(se);service;secondsActive=0;remainingDuration;remainingDurationInterval=an(1e3).pipe(Ht(()=>this.isActive()));remainingDurationSubscription;constructor(){}ngOnInit(){this.service.getCharacteristic("RemainingDuration")&&this.setupRemainingDurationCounter()}isActive(){return this.service&&this.service.values?this.service.getCharacteristic("Active").value===1?!0:(this.resetRemainingDuration(),!1):!1}setupRemainingDurationCounter(){this.remainingDurationSubscription=this.remainingDurationInterval.subscribe(()=>{this.secondsActive++;let t=this.service.getCharacteristic("RemainingDuration").value-this.secondsActive;t>0?this.remainingDuration=t<3600?new Date(t*1e3).toISOString().substring(14,19):new Date(t*1e3).toISOString().substring(11,19):this.remainingDuration=""})}resetRemainingDuration(){this.secondsActive=0,this.service.getCharacteristic("RemainingDuration")&&(this.remainingDuration="")}onClick(){this.service.getCharacteristic("Active").setValue(this.service.values.Active?0:1)}onLongClick(){let t=this.$modal.open(Tr,{size:"md"});t.componentInstance.service=this.service}ngOnDestroy(){this.remainingDurationSubscription&&this.remainingDurationSubscription.unsubscribe()}static \u0275fac=function(o){return new(o||e)};static \u0275cmp=k({type:e,selectors:[["app-valve"]],inputs:{service:"service"},decls:11,vars:12,consts:[["appLongclick","","tabindex","0",1,"accessory-box",3,"longclick","shortclick","ngClass"],[1,"d-flex","flex-column","h-100"],[1,"accessory-svg",3,"inlineSVG"],[1,"accessory-label","mt-auto"],[1,"accessory-label","grey-text"]],template:function(o,i){o&1&&(a(0,"div",0),S("longclick",function(){return i.onLongClick()})("shortclick",function(){return i.onClick()}),a(1,"div",1),M(2,np,1,2,"div",2)(3,op,1,2,"div",2)(4,rp,1,2,"div",2)(5,ap,1,2,"div",2),a(6,"div",3),c(7),s(),M(8,sp,2,1,"div",4)(9,lp,3,3,"div",4)(10,cp,3,3,"div",4),s()()),o&2&&(u("ngClass",B(9,ip,i.service.values.Active,!i.service.values.Active)),r(2),_(i.service.values.ValveType===0?2:-1),r(),_(i.service.values.ValveType===1?3:-1),r(),_(i.service.values.ValveType===2?4:-1),r(),_(i.service.values.ValveType===3?5:-1),r(2),y(" ",i.service.customName||i.service.values.ConfiguredName||i.service.serviceName," "),r(),_(i.service.values.Active&&i.remainingDuration?8:-1),r(),_(i.service.values.Active&&!i.remainingDuration?9:-1),r(),_(i.service.values.Active?-1:10))},dependencies:[Q,H,q,$,I],styles:[".switch-off svg .valve_off_hidden{display:none} .switch-off svg .valve_off_grey{fill:gray}"]})}return e})();function pp(e,n){e&1&&(c(0),p(1,"translate")),e&2&&y(" ",m(1,1,"accessories.control.closed")," ")}function dp(e,n){e&1&&(c(0),p(1,"translate")),e&2&&y(" ",m(1,1,"accessories.control.open")," ")}function mp(e,n){if(e&1&&M(0,pp,2,3)(1,dp,2,3),e&2){let t=h();_(t.service.values.CurrentPosition===0?0:1)}}function up(e,n){e&1&&(c(0),p(1,"translate")),e&2&&y(" ",m(1,1,"accessories.control.opening"),"... ")}function vp(e,n){e&1&&(c(0),p(1,"translate")),e&2&&y(" ",m(1,1,"accessories.control.closing"),"... ")}var wr=(()=>{class e{$activeModal=O(pe);service;targetMode;targetPosition;targetPositionChanged=new ae;constructor(){this.targetPositionChanged.pipe(Ce(300),Te()).subscribe(()=>{this.service.getCharacteristic("CurrentPosition").value<this.targetPosition.value?this.service.values.PositionState=1:this.service.getCharacteristic("CurrentPosition").value>this.targetPosition.value&&(this.service.values.PositionState=0),this.service.getCharacteristic("TargetPosition").setValue(this.targetPosition.value)})}ngOnInit(){this.targetMode=this.service.values.On,this.loadTargetPosition()}loadTargetPosition(){let t=this.service.getCharacteristic("TargetPosition");t&&(this.targetPosition={value:t.value,min:t.minValue,max:t.maxValue,step:t.minStep},setTimeout(()=>{let o=document.querySelectorAll(".noUi-target")[0];o&&(o.style.background="linear-gradient(to right, #242424, #ffd6aa)")},10))}onTargetPositionChange(){this.targetPositionChanged.next(this.targetPosition.value)}static \u0275fac=function(o){return new(o||e)};static \u0275cmp=k({type:e,selectors:[["app-window-manage"]],inputs:{service:"service"},decls:34,vars:34,consts:[[1,"modal-content"],[1,"modal-header"],[1,"modal-title",3,"innerText"],["type","button","data-bs-dismiss","modal",1,"btn-close",3,"click"],[1,"modal-body","text-center","px-5"],["role","group","aria-label","Fan Mode Control",1,"d-flex","justify-content-center","mb-0","p-0"],[1,"mb-0","mx-0","p-3","btn-read","w-100"],[1,"mt-4"],[1,"mb-1",3,"ngModelChange","min","max","step","ngModel"],[1,"d-flex","justify-content-between","align-items-center","mt-0","mb-1"],[1,"grey-text","small"],[1,"mb-1",3,"ngModelChange","min","max","step","disabled","ngModel"],[1,"modal-footer"]],template:function(o,i){o&1&&(a(0,"div",0)(1,"div",1),f(2,"h5",2),a(3,"button",3),p(4,"translate"),S("click",function(){return i.$activeModal.dismiss("Dismiss")}),s()(),a(5,"div",4)(6,"div",5)(7,"div",6),M(8,mp,2,1)(9,up,2,3)(10,vp,2,3),s()(),a(11,"h6",7),c(12),p(13,"translate"),s(),a(14,"nouislider",8),ie("ngModelChange",function(d){return te(i.targetPosition.value,d)||(i.targetPosition.value=d),d}),S("ngModelChange",function(){return i.onTargetPositionChange()}),s(),a(15,"div",9)(16,"span",10),c(17),p(18,"translate"),s(),a(19,"span",10),c(20),p(21,"translate"),s()(),a(22,"h6",7),c(23),p(24,"translate"),s(),a(25,"nouislider",11),ie("ngModelChange",function(d){return te(i.service.getCharacteristic("CurrentPosition").value,d)||(i.service.getCharacteristic("CurrentPosition").value=d),d}),s(),a(26,"div",9)(27,"span",10),c(28),p(29,"translate"),s(),a(30,"span",10),c(31),p(32,"translate"),s()()(),f(33,"div",12),s()),o&2&&(r(2),u("innerText",i.service.customName||i.service.serviceName),r(),V("aria-label",m(4,20,"form.button_close")),r(5),_(i.service.values.PositionState===2?8:i.service.values.PositionState===1?9:i.service.values.PositionState===0?10:-1),r(4),Z("",m(13,22,"accessories.control.target"),": ",i.targetPosition.value,"%"),r(2),u("min",i.targetPosition.min)("max",i.targetPosition.max)("step",i.targetPosition.step),ee("ngModel",i.targetPosition.value),r(3),x(m(18,24,"accessories.control.closed")),r(3),x(m(21,26,"accessories.control.open")),r(3),Z(" ",m(24,28,"accessories.control.current"),": ",i.service.getCharacteristic("CurrentPosition").value,"% "),r(2),u("min",0)("max",100)("step",1)("disabled",!0),ee("ngModel",i.service.getCharacteristic("CurrentPosition").value),r(3),x(m(29,30,"accessories.control.closed")),r(3),x(m(32,32,"accessories.control.open")))},dependencies:[_e,ce,ve,fe,I],styles:[".window-mode-control[_ngcontent-%COMP%] .btn[_ngcontent-%COMP%]{font-size:1.4rem;text-transform:initial}"]})}return e})();var fp=e=>({"window-on":e});function gp(e,n){e&1&&f(0,"div",2),e&2&&(u("inlineSVG","/assets/hap-icons/window-closed.svg"),V("aria-label","Window"))}function hp(e,n){e&1&&f(0,"div",2),e&2&&(u("inlineSVG","/assets/hap-icons/window-open.svg"),V("aria-label","Window"))}function Cp(e,n){e&1&&(c(0),p(1,"translate")),e&2&&y(" ",m(1,1,"accessories.control.closed")," ")}function _p(e,n){if(e&1&&c(0),e&2){let t=h(2);y(" ",t.service.values.CurrentPosition,"% ")}}function xp(e,n){e&1&&(c(0),p(1,"translate")),e&2&&y(" ",m(1,1,"accessories.control.open")," ")}function Sp(e,n){if(e&1&&(a(0,"div",4),M(1,Cp,2,3)(2,_p,1,1)(3,xp,2,3),s()),e&2){let t=h();r(),_(t.service.values.CurrentPosition===0?1:-1),r(),_(t.service.values.CurrentPosition>0&&t.service.values.CurrentPosition<100?2:-1),r(),_(t.service.values.CurrentPosition===100?3:-1)}}function yp(e,n){e&1&&(a(0,"div",5),c(1),p(2,"translate"),s()),e&2&&(r(),y("",m(2,1,"accessories.control.opening"),"..."))}function bp(e,n){e&1&&(a(0,"div",5),c(1),p(2,"translate"),s()),e&2&&(r(),y("",m(2,1,"accessories.control.closing"),"..."))}var Er=(()=>{class e{$modal=O(se);service;constructor(){}onClick(){this.service.values.TargetPosition?this.service.getCharacteristic("TargetPosition").setValue(0):this.service.getCharacteristic("TargetPosition").setValue(100)}onLongClick(){let t=this.$modal.open(wr,{size:"md"});t.componentInstance.service=this.service}static \u0275fac=function(o){return new(o||e)};static \u0275cmp=k({type:e,selectors:[["app-window"]],inputs:{service:"service"},decls:9,vars:9,consts:[["appLongclick","","tabindex","0",1,"accessory-box",3,"longclick","shortclick","ngClass"],[1,"d-flex","flex-column","h-100"],[1,"accessory-svg",3,"inlineSVG"],[1,"accessory-label","mt-auto"],[1,"accessory-label","grey-text"],[1,"accessory-label","red-text"]],template:function(o,i){o&1&&(a(0,"div",0),S("longclick",function(){return i.onLongClick()})("shortclick",function(){return i.onClick()}),a(1,"div",1),M(2,gp,1,2,"div",2)(3,hp,1,2,"div",2),a(4,"div",3),c(5),s(),M(6,Sp,4,3,"div",4)(7,yp,3,3,"div",5)(8,bp,3,3,"div",5),s()()),o&2&&(u("ngClass",ne(7,fp,i.service.values.TargetPosition)),r(2),_(i.service.values.TargetPosition?-1:2),r(),_(i.service.values.TargetPosition?3:-1),r(2),x(i.service.customName||i.service.serviceName),r(),_(i.service.values.PositionState===2?6:-1),r(),_(i.service.values.PositionState===1?7:-1),r(),_(i.service.values.PositionState===0?8:-1))},dependencies:[Q,H,q,$,I],styles:[".window-mode-control[_ngcontent-%COMP%] .btn[_ngcontent-%COMP%]{font-size:1.4rem;text-transform:initial}"]})}return e})();function Mp(e,n){e&1&&(c(0),p(1,"translate")),e&2&&y(" ",m(1,1,"accessories.control.closed")," ")}function Tp(e,n){e&1&&(c(0),p(1,"translate")),e&2&&y(" ",m(1,1,"accessories.control.open")," ")}function kp(e,n){if(e&1&&M(0,Mp,2,3)(1,Tp,2,3),e&2){let t=h();_(t.service.values.CurrentPosition===0?0:1)}}function wp(e,n){e&1&&(c(0),p(1,"translate")),e&2&&y(" ",m(1,1,"accessories.control.opening"),"... ")}function Ep(e,n){e&1&&(c(0),p(1,"translate")),e&2&&y(" ",m(1,1,"accessories.control.closing"),"... ")}var Vr=(()=>{class e{$activeModal=O(pe);service;targetMode;targetPosition;targetPositionChanged=new ae;constructor(){this.targetPositionChanged.pipe(Ce(300),Te()).subscribe(()=>{this.service.getCharacteristic("CurrentPosition").value<this.targetPosition.value?this.service.values.PositionState=1:this.service.getCharacteristic("CurrentPosition").value>this.targetPosition.value&&(this.service.values.PositionState=0),this.service.getCharacteristic("TargetPosition").setValue(this.targetPosition.value)})}ngOnInit(){this.targetMode=this.service.values.On,this.loadTargetPosition()}loadTargetPosition(){let t=this.service.getCharacteristic("TargetPosition");t&&(this.targetPosition={value:t.value,min:t.minValue,max:t.maxValue,step:t.minStep},setTimeout(()=>{document.querySelectorAll(".noUi-target").forEach(i=>{i.style.background="linear-gradient(to right, #242424, #ffd6aa)"})},10))}onTargetPositionChange(){this.targetPositionChanged.next(this.targetPosition.value)}static \u0275fac=function(o){return new(o||e)};static \u0275cmp=k({type:e,selectors:[["app-windowcovering-manage"]],inputs:{service:"service"},decls:34,vars:34,consts:[[1,"modal-content"],[1,"modal-header"],[1,"modal-title",3,"innerText"],["type","button","data-bs-dismiss","modal",1,"btn-close",3,"click"],[1,"modal-body","text-center","px-5"],["role","group","aria-label","Fan Mode Control",1,"d-flex","justify-content-center","mb-0","p-0"],[1,"mb-0","mx-0","p-3","btn-read","w-100"],[1,"mt-4"],[1,"mb-1",3,"ngModelChange","min","max","step","ngModel"],[1,"d-flex","justify-content-between","align-items-center","mt-0","mb-1"],[1,"grey-text","small"],[1,"mb-1",3,"ngModelChange","min","max","step","disabled","ngModel"],[1,"modal-footer"]],template:function(o,i){o&1&&(a(0,"div",0)(1,"div",1),f(2,"h5",2),a(3,"button",3),p(4,"translate"),S("click",function(){return i.$activeModal.dismiss("Dismiss")}),s()(),a(5,"div",4)(6,"div",5)(7,"div",6),M(8,kp,2,1)(9,wp,2,3)(10,Ep,2,3),s()(),a(11,"h6",7),c(12),p(13,"translate"),s(),a(14,"nouislider",8),ie("ngModelChange",function(d){return te(i.targetPosition.value,d)||(i.targetPosition.value=d),d}),S("ngModelChange",function(){return i.onTargetPositionChange()}),s(),a(15,"div",9)(16,"span",10),c(17),p(18,"translate"),s(),a(19,"span",10),c(20),p(21,"translate"),s()(),a(22,"h6",7),c(23),p(24,"translate"),s(),a(25,"nouislider",11),ie("ngModelChange",function(d){return te(i.service.getCharacteristic("CurrentPosition").value,d)||(i.service.getCharacteristic("CurrentPosition").value=d),d}),s(),a(26,"div",9)(27,"span",10),c(28),p(29,"translate"),s(),a(30,"span",10),c(31),p(32,"translate"),s()()(),f(33,"div",12),s()),o&2&&(r(2),u("innerText",i.service.customName||i.service.serviceName),r(),V("aria-label",m(4,20,"form.button_close")),r(5),_(i.service.values.PositionState===2?8:i.service.values.PositionState===1?9:i.service.values.PositionState===0?10:-1),r(4),Z("",m(13,22,"accessories.control.target"),": ",i.targetPosition.value,"%"),r(2),u("min",i.targetPosition.min)("max",i.targetPosition.max)("step",i.targetPosition.step),ee("ngModel",i.targetPosition.value),r(3),x(m(18,24,"accessories.control.closed")),r(3),x(m(21,26,"accessories.control.open")),r(3),Z(" ",m(24,28,"accessories.control.current"),": ",i.service.getCharacteristic("CurrentPosition").value,"% "),r(2),u("min",0)("max",100)("step",1)("disabled",!0),ee("ngModel",i.service.getCharacteristic("CurrentPosition").value),r(3),x(m(29,30,"accessories.control.closed")),r(3),x(m(32,32,"accessories.control.open")))},dependencies:[_e,ce,ve,fe,I],styles:[".windowcovering-mode-control[_ngcontent-%COMP%] .btn[_ngcontent-%COMP%]{font-size:1.4rem;text-transform:initial}"]})}return e})();var Vp=e=>({"window-on":e});function Ip(e,n){e&1&&f(0,"div",2),e&2&&(u("inlineSVG","/assets/hap-icons/windowcovering-closed.svg"),V("aria-label","Window Covering"))}function Dp(e,n){e&1&&f(0,"div",2),e&2&&(u("inlineSVG","/assets/hap-icons/windowcovering-open.svg"),V("aria-label","Window Covering"))}function Pp(e,n){e&1&&(c(0),p(1,"translate")),e&2&&y(" ",m(1,1,"accessories.control.closed")," ")}function Ap(e,n){if(e&1&&c(0),e&2){let t=h(2);y(" ",t.service.values.CurrentPosition,"% ")}}function Bp(e,n){e&1&&(c(0),p(1,"translate")),e&2&&y(" ",m(1,1,"accessories.control.open")," ")}function Hp(e,n){if(e&1&&(a(0,"div",4),M(1,Pp,2,3)(2,Ap,1,1)(3,Bp,2,3),s()),e&2){let t=h();r(),_(t.service.values.CurrentPosition===0?1:-1),r(),_(t.service.values.CurrentPosition>0&&t.service.values.CurrentPosition<100?2:-1),r(),_(t.service.values.CurrentPosition===100?3:-1)}}function Op(e,n){e&1&&(a(0,"div",5),c(1),p(2,"translate"),s()),e&2&&(r(),y("",m(2,1,"accessories.control.opening"),"..."))}function Np(e,n){e&1&&(a(0,"div",5),c(1),p(2,"translate"),s()),e&2&&(r(),y("",m(2,1,"accessories.control.closing"),"..."))}var Ir=(()=>{class e{$modal=O(se);service;constructor(){}onClick(){this.service.values.TargetPosition?this.service.getCharacteristic("TargetPosition").setValue(0):this.service.getCharacteristic("TargetPosition").setValue(100)}onLongClick(){let t=this.$modal.open(Vr,{size:"md"});t.componentInstance.service=this.service}static \u0275fac=function(o){return new(o||e)};static \u0275cmp=k({type:e,selectors:[["app-windowcovering"]],inputs:{service:"service"},decls:9,vars:9,consts:[["appLongclick","","tabindex","0",1,"accessory-box",3,"longclick","shortclick","ngClass"],[1,"d-flex","flex-column","h-100"],[1,"accessory-svg",3,"inlineSVG"],[1,"accessory-label","mt-auto"],[1,"accessory-label","grey-text"],[1,"accessory-label","red-text"]],template:function(o,i){o&1&&(a(0,"div",0),S("longclick",function(){return i.onLongClick()})("shortclick",function(){return i.onClick()}),a(1,"div",1),M(2,Ip,1,2,"div",2)(3,Dp,1,2,"div",2),a(4,"div",3),c(5),s(),M(6,Hp,4,3,"div",4)(7,Op,3,3,"div",5)(8,Np,3,3,"div",5),s()()),o&2&&(u("ngClass",ne(7,Vp,i.service.values.TargetPosition)),r(2),_(i.service.values.TargetPosition?-1:2),r(),_(i.service.values.TargetPosition?3:-1),r(2),x(i.service.customName||i.service.serviceName),r(),_(i.service.values.PositionState===2?6:-1),r(),_(i.service.values.PositionState===1?7:-1),r(),_(i.service.values.PositionState===0?8:-1))},dependencies:[Q,H,q,$,I],styles:[".windowcovering-mode-control[_ngcontent-%COMP%] .btn[_ngcontent-%COMP%]{font-size:1.4rem;text-transform:initial}"]})}return e})();function Rp(e,n){if(e&1){let t=oe();a(0,"a",4),S("click",function(){W(t);let i=h();return z(i.$accessories.showAccessoryInformation(i.service))}),f(1,"i",5),s()}}function Lp(e,n){e&1&&f(0,"i",1)}function Fp(e,n){if(e&1&&(a(0,"app-switch",2),c(1,"Switch"),s()),e&2){let t=h();u("service",t.service)}}function Gp(e,n){if(e&1&&(a(0,"app-thermostat",2),c(1,"Thermostat"),s()),e&2){let t=h();u("service",t.service)}}function jp(e,n){if(e&1&&(a(0,"app-outlet",2),c(1,"Outlet"),s()),e&2){let t=h();u("service",t.service)}}function Up(e,n){if(e&1&&(a(0,"app-fan",3),c(1,"Fan"),s()),e&2){let t=h();u("service",t.service)}}function Wp(e,n){if(e&1&&(a(0,"app-fanv2",3),c(1,"Fan"),s()),e&2){let t=h();u("service",t.service)}}function zp(e,n){if(e&1&&(a(0,"app-airpurifier",3),c(1,"Air Purifier"),s()),e&2){let t=h();u("service",t.service)}}function $p(e,n){if(e&1&&(a(0,"app-lightbulb",2),c(1,"Lightbulb"),s()),e&2){let t=h();u("service",t.service)}}function qp(e,n){if(e&1&&(a(0,"app-lightsensor",2),c(1,"Light Sensor"),s()),e&2){let t=h();u("service",t.service)}}function Kp(e,n){if(e&1&&(a(0,"app-lockmechanism",2),c(1,"Lock Mechanism"),s()),e&2){let t=h();u("service",t.service)}}function Xp(e,n){if(e&1&&(a(0,"app-temperaturesensor",2),c(1,"Temperature Sensor"),s()),e&2){let t=h();u("service",t.service)}}function Yp(e,n){if(e&1&&(a(0,"app-garagedooropener",2),c(1,"Garage Door Opener"),s()),e&2){let t=h();u("service",t.service)}}function Zp(e,n){if(e&1&&(a(0,"app-motionsensor",2),c(1,"Motion Sensor"),s()),e&2){let t=h();u("service",t.service)}}function Qp(e,n){if(e&1&&(a(0,"app-occupancysensor",2),c(1,"Occupancy Sensor"),s()),e&2){let t=h();u("service",t.service)}}function Jp(e,n){if(e&1&&(a(0,"app-contactsensor",2),c(1,"Contact Sensor"),s()),e&2){let t=h();u("service",t.service)}}function ed(e,n){if(e&1&&(a(0,"app-humiditysensor",2),c(1,"Humidity Sensor"),s()),e&2){let t=h();u("service",t.service)}}function td(e,n){if(e&1&&(a(0,"app-airqualitysensor",2),c(1,"Air Quality Sensor"),s()),e&2){let t=h();u("service",t.service)}}function id(e,n){if(e&1&&(a(0,"app-windowcovering",2),c(1,"Window Covering"),s()),e&2){let t=h();u("service",t.service)}}function nd(e,n){if(e&1&&(a(0,"app-window",2),c(1,"Window"),s()),e&2){let t=h();u("service",t.service)}}function od(e,n){if(e&1&&(a(0,"app-door",2),c(1,"Door"),s()),e&2){let t=h();u("service",t.service)}}function rd(e,n){if(e&1&&(a(0,"app-television",2),c(1,"Television"),s()),e&2){let t=h();u("service",t.service)}}function ad(e,n){if(e&1&&(a(0,"app-battery",2),c(1,"Battery"),s()),e&2){let t=h();u("service",t.service)}}function sd(e,n){if(e&1&&(a(0,"app-battery",2),c(1,"Battery"),s()),e&2){let t=h();u("service",t.service)}}function ld(e,n){if(e&1&&(a(0,"app-speaker",2),c(1,"Speaker"),s()),e&2){let t=h();u("service",t.service)}}function cd(e,n){if(e&1&&(a(0,"app-securitysystem",2),c(1,"Security System"),s()),e&2){let t=h();u("service",t.service)}}function pd(e,n){if(e&1&&(a(0,"app-leaksensor",2),c(1,"Leak Sensor"),s()),e&2){let t=h();u("service",t.service)}}function dd(e,n){if(e&1&&(a(0,"app-smokesensor",2),c(1,"Smoke Sensor"),s()),e&2){let t=h();u("service",t.service)}}function md(e,n){if(e&1&&(a(0,"app-carbonmonoxidesensor",2),c(1,"Carbon Monoxide Sensor"),s()),e&2){let t=h();u("service",t.service)}}function ud(e,n){if(e&1&&(a(0,"app-carbondioxidesensor",2),c(1,"Carbon Dioxide Sensor"),s()),e&2){let t=h();u("service",t.service)}}function vd(e,n){if(e&1&&(a(0,"app-valve",2),c(1,"Valve"),s()),e&2){let t=h();u("service",t.service)}}function fd(e,n){if(e&1&&(a(0,"app-irrigationsystem",2),c(1,"Irrigation System"),s()),e&2){let t=h();u("service",t.service)}}function gd(e,n){if(e&1&&(a(0,"app-heatercooler",2),c(1,"Heater Cooler"),s()),e&2){let t=h();u("service",t.service)}}function hd(e,n){if(e&1&&(a(0,"app-humidifierdehumidifier",2),c(1,"Humidifier Dehumidifier"),s()),e&2){let t=h();u("service",t.service)}}function Cd(e,n){if(e&1&&(a(0,"app-statelessprogrammableswitch",2),c(1,"Stateless Programmable Switch"),s()),e&2){let t=h();u("service",t.service)}}function _d(e,n){if(e&1&&(a(0,"app-unknown",2),c(1),s()),e&2){let t=h();u("service",t.service),r(),x(t.service.humanType)}}var UC=(()=>{class e{$accessories=O(fo);service;constructor(){}static \u0275fac=function(o){return new(o||e)};static \u0275cmp=k({type:e,selectors:[["app-accessory-tile"]],inputs:{service:"service"},decls:37,vars:3,consts:[["href","javascript:void(0)",1,"manage-accessory-button"],[1,"fas","fa-fw","fa-spin","fa-sync-alt","refreshing-accessory-status-icon","grey-text"],[3,"service"],[1,"w-100",3,"service"],["href","javascript:void(0)",1,"manage-accessory-button",3,"click"],[1,"fas","fa-fw","fa-bars","grey-text"]],template:function(o,i){if(o&1&&(hn(0),M(1,Rp,2,0,"a",0)(2,Lp,1,0,"i",1)(3,Fp,2,1,"app-switch",2)(4,Gp,2,1,"app-thermostat",2)(5,jp,2,1,"app-outlet",2)(6,Up,2,1,"app-fan",3)(7,Wp,2,1,"app-fanv2",3)(8,zp,2,1,"app-airpurifier",3)(9,$p,2,1,"app-lightbulb",2)(10,qp,2,1,"app-lightsensor",2)(11,Kp,2,1,"app-lockmechanism",2)(12,Xp,2,1,"app-temperaturesensor",2)(13,Yp,2,1,"app-garagedooropener",2)(14,Zp,2,1,"app-motionsensor",2)(15,Qp,2,1,"app-occupancysensor",2)(16,Jp,2,1,"app-contactsensor",2)(17,ed,2,1,"app-humiditysensor",2)(18,td,2,1,"app-airqualitysensor",2)(19,id,2,1,"app-windowcovering",2)(20,nd,2,1,"app-window",2)(21,od,2,1,"app-door",2)(22,rd,2,1,"app-television",2)(23,ad,2,1,"app-battery",2)(24,sd,2,1,"app-battery",2)(25,ld,2,1,"app-speaker",2)(26,cd,2,1,"app-securitysystem",2)(27,pd,2,1,"app-leaksensor",2)(28,dd,2,1,"app-smokesensor",2)(29,md,2,1,"app-carbonmonoxidesensor",2)(30,ud,2,1,"app-carbondioxidesensor",2)(31,vd,2,1,"app-valve",2)(32,fd,2,1,"app-irrigationsystem",2)(33,gd,2,1,"app-heatercooler",2)(34,hd,2,1,"app-humidifierdehumidifier",2)(35,Cd,2,1,"app-statelessprogrammableswitch",2)(36,_d,2,2,"app-unknown",2),Cn()),o&2){let l;r(),_(i.$accessories.readyForControl?1:-1),r(),_(i.$accessories.readyForControl?-1:2),r(),_((l=i.service.type)==="Switch"?3:l==="Thermostat"?4:l==="Outlet"?5:l==="Fan"?6:l==="Fanv2"?7:l==="AirPurifier"?8:l==="Lightbulb"?9:l==="LightSensor"?10:l==="LockMechanism"?11:l==="TemperatureSensor"?12:l==="GarageDoorOpener"?13:l==="MotionSensor"?14:l==="OccupancySensor"?15:l==="ContactSensor"?16:l==="HumiditySensor"?17:l==="AirQualitySensor"?18:l==="WindowCovering"?19:l==="Window"?20:l==="Door"?21:l==="Television"?22:l==="Battery"?23:l==="BatteryService"?24:l==="Speaker"?25:l==="SecuritySystem"?26:l==="LeakSensor"?27:l==="SmokeSensor"?28:l==="CarbonMonoxideSensor"?29:l==="CarbonDioxideSensor"?30:l==="Valve"?31:l==="IrrigationSystem"?32:l==="HeaterCooler"?33:l==="HumidifierDehumidifier"?34:l==="StatelessProgrammableSwitch"?35:36)}},dependencies:[Cr,yr,dr,Uo,qo,Bo,or,rr,lr,xr,Ko,cr,pr,Lo,Jo,Ho,Ir,Er,Go,_r,Oo,gr,ur,tr,vr,Ro,No,kr,er,Yo,Qo,hr,br],encapsulation:2})}return e})();export{Li as a,Rd as b,Ld as c,$e as d,vo as e,fo as f,pu as g,Ao as h,Bo as i,Ho as j,No as k,Ro as l,Lo as m,Fo as n,Go as o,jo as p,$o as q,Ko as r,Xo as s,Zo as t,er as u,tr as v,nr as w,or as x,rr as y,sr as z,lr as A,cr as B,pr as C,dr as D,mr as E,ur as F,vr as G,fr as H,gr as I,hr as J,Cr as K,_r as L,Sr as M,br as N,Tr as O,kr as P,wr as Q,Er as R,Vr as S,Ir as T,UC as U};