homebridge-config-ui-x 4.78.2-beta.7 → 4.78.2-beta.9

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 (57) hide show
  1. package/CHANGELOG.md +2 -1
  2. package/package.json +1 -1
  3. package/public/assets/hap-icons/smoke-sensor.svg +15 -2
  4. package/public/{chunk-N2BRDQMV.js → chunk-2MYGHBCM.js} +1 -1
  5. package/public/{chunk-NHCHG3Z6.js → chunk-3DETIAPU.js} +1 -1
  6. package/public/{chunk-NFOOVJXR.js → chunk-3FAQKTF4.js} +1 -1
  7. package/public/{chunk-J4CE5VUG.js → chunk-4CAEG4FN.js} +1 -1
  8. package/public/{chunk-4SCDQJ67.js → chunk-4EOWKGS5.js} +1 -1
  9. package/public/{chunk-WBSGPRW6.js → chunk-4HJCROCG.js} +1 -1
  10. package/public/{chunk-5XE7ACAJ.js → chunk-4VQOBSTS.js} +1 -1
  11. package/public/{chunk-3K6K2EED.js → chunk-DCR7444I.js} +1 -1
  12. package/public/{chunk-SRAPPW2T.js → chunk-E2UX6425.js} +1 -1
  13. package/public/{chunk-YO4OJGZL.js → chunk-E6C35ANJ.js} +1 -1
  14. package/public/{chunk-RDHSN5YP.js → chunk-EWY3FQR2.js} +1 -1
  15. package/public/{chunk-RTYG6XT7.js → chunk-F3DK6724.js} +1 -1
  16. package/public/{chunk-KZXWMOV5.js → chunk-FUQO62GC.js} +1 -1
  17. package/public/{chunk-CIJ7JUI4.js → chunk-H2Q7I4NK.js} +1 -1
  18. package/public/{chunk-GMZYTKA7.js → chunk-H7HI7Z2I.js} +1 -1
  19. package/public/{chunk-ZYZKPRJW.js → chunk-HXEALMTX.js} +1 -1
  20. package/public/{chunk-TTFPDSBH.js → chunk-IOOIBANV.js} +1 -1
  21. package/public/{chunk-7UNMO36V.js → chunk-JD5I7S4V.js} +1 -1
  22. package/public/{chunk-V5SJINUD.js → chunk-JYBTER4A.js} +1 -1
  23. package/public/{chunk-5QYOJ5G7.js → chunk-LGEMUUBP.js} +1 -1
  24. package/public/{chunk-HDIZOXS3.js → chunk-LQ5XI7PH.js} +1 -1
  25. package/public/chunk-LZTR2JMZ.js +1 -0
  26. package/public/{chunk-UJKWN6WW.js → chunk-MKTP4XOX.js} +1 -1
  27. package/public/chunk-NDPLSN2D.js +1 -0
  28. package/public/{chunk-HVYATWTL.js → chunk-O4HR6C67.js} +1 -1
  29. package/public/chunk-O5HD4H2P.js +12 -0
  30. package/public/{chunk-KX4HFAMS.js → chunk-OJ7RLRXT.js} +1 -1
  31. package/public/{chunk-WIKVE33G.js → chunk-PJQIMQZP.js} +1 -1
  32. package/public/{chunk-FSQU6S5U.js → chunk-PWL42RKY.js} +1 -1
  33. package/public/chunk-Q3UFAHWJ.js +1 -0
  34. package/public/{chunk-24HGAFIA.js → chunk-QXDUZYIF.js} +1 -1
  35. package/public/{chunk-JKFIZ5HO.js → chunk-RGH5FX6U.js} +1 -1
  36. package/public/{chunk-RCXJKKFJ.js → chunk-ROD4T2CM.js} +1 -1
  37. package/public/{chunk-5SOTFW4L.js → chunk-RPXUM5K2.js} +1 -1
  38. package/public/{chunk-DFK6HAB2.js → chunk-SNQS667C.js} +1 -1
  39. package/public/{chunk-OQR4JGQQ.js → chunk-TQL32BTE.js} +1 -1
  40. package/public/chunk-TXF72ANW.js +1 -0
  41. package/public/{chunk-RPGBJBQM.js → chunk-U6MXFYEN.js} +1 -1
  42. package/public/{chunk-PBJK6VW5.js → chunk-URB6RLTT.js} +1 -1
  43. package/public/{chunk-335BVUT7.js → chunk-V7EA73XV.js} +1 -1
  44. package/public/{chunk-HDDSK4T6.js → chunk-VZX2S4ZZ.js} +1 -1
  45. package/public/{chunk-3FIZ5SHA.js → chunk-WHQQA3BC.js} +1 -1
  46. package/public/{chunk-5MYMUS7R.js → chunk-WJ77V4EB.js} +1 -1
  47. package/public/{chunk-OCUYP77B.js → chunk-WJEDAPKZ.js} +1 -1
  48. package/public/{chunk-CHQMUTDZ.js → chunk-XCQC3XK6.js} +1 -1
  49. package/public/{chunk-OFS35DEJ.js → chunk-ZLO3MSCJ.js} +1 -1
  50. package/public/index.html +2 -2
  51. package/public/main-HBWLADWE.js +1 -0
  52. package/public/{styles-RGK5JOII.css → styles-YDIK2EDN.css} +1 -1
  53. package/public/chunk-G7MJKB2I.js +0 -1
  54. package/public/chunk-JL52RNPX.js +0 -1
  55. package/public/chunk-M7Q25OA7.js +0 -12
  56. package/public/chunk-NJPGGFP6.js +0 -1
  57. package/public/main-HK64V7MI.js +0 -1
@@ -1,12 +0,0 @@
1
- import{a as Ni,b as Pe,c as Ri}from"./chunk-JKFIZ5HO.js";import{m as Y,n as ee}from"./chunk-CF2ZN7LY.js";import{a as Oi,e as re,l as ae,z as X}from"./chunk-T252YJXA.js";import{b as Ie}from"./chunk-PBJK6VW5.js";import{b as V}from"./chunk-LXXELGX4.js";import{a as Fi,e as mt}from"./chunk-SRP6QX5M.js";import{Bc as p,Ca as We,Cc as d,Dc as oe,Fa as ze,G as gi,H as fi,Hb as M,Ib as h,Ja as yi,Jb as C,K as hi,Kc as Gt,Lb as wi,M as ne,Mb as Vi,Nb as Ei,Ob as m,Pb as a,Q as Ci,Qb as s,Rb as v,Sb as Di,Tb as Ii,Vb as O,X as _i,Xa as Nt,Xc as Hi,Yb as S,Zb as g,_c as Li,ab as r,ba as xi,cd as E,db as bi,eb as at,fa as Si,fb as st,ga as rt,gb as Se,ha as Ot,hc as Pi,ib as Ti,ic as Bi,id as De,ka as Le,kc as c,kd as Te,la as A,lc as y,mb as T,mc as b,n as ie,nb as Rt,nc as j,o as di,ob as lt,oc as Fe,pb as Mi,pc as Ai,qc as ct,qd as dt,r as mi,ra as P,rc as W,rd as Ze,s as ui,sa as B,sc as z,tc as $,ub as Ee,vb as ki,vc as pt,x as vi,xc as q,yc as w,zc as we}from"./chunk-SKZUTSHE.js";var Ge=function(){function e(){}return e}();var ut=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 _=n._prevSVG&&n._prevSVG.parentNode;_&&this._renderer.removeChild(_,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=[],_=0;_<i.length;_++){var U=i[_].getAttribute("type");if(!U||U==="application/ecmascript"||U==="application/javascript"){var Z=i[_].innerText||i[_].textContent;l.push(Z),this._renderer.removeChild(i[_].parentNode,i[_])}}if(l.length>0&&(o==="always"||o==="once"&&!this._ranScripts[t])){for(var _=0;_<l.length;_++)new Function(l[_])(window);this._ranScripts[t]=!0}},e.\u0275fac=function(t){return new(t||e)(Le(at))},e.\u0275prov=rt({token:e,factory:e.\u0275fac,providedIn:"root"}),e}();var jt=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)(Se(ut),Se(ze))},e.\u0275cmp=T({type:e,selectors:[["inline-svg"]],inputs:{context:"context",content:"content",replaceContents:"replaceContents",prepend:"prepend"},features:[We],decls:0,vars:0,template:function(t,o){},encapsulation:2,changeDetection:0}),e}();var Qe=function(){function e(n,t,o,i,l,_){this._appBase=n,this._location=t,this._config=o,this._http=o&&!o.bypassHttpClientInterceptorChain?i:new mt(l),this._renderer=_.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 mi(this._cloneSVG(e._cache.get(l)));if(e._inProgressReqs.has(l))return e._inProgressReqs.get(l);var _=this._http.get(l,{responseType:"text"}).pipe(xi(function(){e._inProgressReqs.delete(l)}),hi(function(U){return e._inProgressReqs.delete(l),ui(U.message)}),_i(),vi(function(U){var Z=i._svgElementFromString(U);return e._cache.set(l,Z),i._cloneSVG(Z)}));return e._inProgressReqs.set(l,_),_},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)(Le(Li,8),Le(Hi,8),Le(Ge,8),Le(mt),Le(Fi),Le(at))},e.\u0275prov=rt({token:e,factory:e.\u0275fac,providedIn:"root"}),e}();function Ui(e){return e.charAt(0)==="#"||e.indexOf(".svg#")>-1}function Wi(){return typeof SVGRect<"u"}function zi(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 Ut(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++)Ut(i[t],n)}function $i(e,n){for(var t in n)e.setAttribute(t,n[t])}var N=function(){function e(n,t,o,i,l,_,U,Z){this._el=n,this._viewContainerRef=t,this._resolver=o,this._svgCache=i,this._renderer=l,this._inlineSVGService=_,this._config=U,this.platformId=Z,this.resolveSVGUrl=!0,this.replaceContents=!0,this.prepend=!1,this.injectComponent=!1,this.cacheSVG=!0,this.forceEvalStyles=!1,this.evalScripts="always",this.onSVGInserted=new Ee,this.onSVGFailed=new Ee,this._supportsSVG=Wi(),!Ze(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),!(!Ze(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(Ui(t.inlineSVG)){var i=t.inlineSVG.split("#")[1];o=zi(t._renderer,o,i)}t._processSvg(o)},function(o){t._fail(o)}))}},e.prototype._processSvg=function(n){if(n){if(this.removeSVGAttributes&&dt(this.platformId)&&Ut(n,this.removeSVGAttributes),this.setSVGAttributes&&$i(n,this.setSVGAttributes),this.onSVGLoaded&&(n=this.onSVGLoaded(n,this._el.nativeElement)),this._insertEl(n),dt(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(jt);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(jt)._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 Ze(this.platformId)||dt(this.platformId)},e.prototype._isSSRDisabled=function(){return Ze(this.platformId)&&this._config&&this._config.clientOnly},e.\u0275fac=function(t){return new(t||e)(Se(ze),Se(Ti),Se(bi),Se(Qe),Se(st),Se(ut),Se(Ge,8),Se(yi))},e.\u0275dir=lt({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:[pt([Qe]),We]}),e}();var R=function(){function e(){}return e.forRoot=function(n){return{ngModule:e,providers:[{provide:Ge,useValue:n}]}},e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=Rt({type:e}),e.\u0275inj=Ot({}),e}();var je=function(e){return e.Range="range",e.Steps="steps",e.Positions="positions",e.Count="count",e.Values="values",e}(je||{}),Me=function(e){return e[e.None=-1]="None",e[e.NoValue=0]="NoValue",e[e.LargeValue=1]="LargeValue",e[e.SmallValue=2]="SmallValue",e}(Me||{});function Ho(e){return gt(e)&&typeof e.from=="function"}function gt(e){return typeof e=="object"&&typeof e.to=="function"}function qi(e){e.parentElement.removeChild(e)}function Wt(e){return e!=null}function Ki(e){e.preventDefault()}function Lo(e){return e.filter(function(n){return this[n]?!1:this[n]=!0},{})}function Fo(e,n){return Math.round(e/n)*n}function Oo(e,n){var t=e.getBoundingClientRect(),o=e.ownerDocument,i=o.documentElement,l=Xi(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 Ve(e){return typeof e=="number"&&!isNaN(e)&&isFinite(e)}function Zi(e,n,t){t>0&&(ye(e,n),setTimeout(function(){vt(e,n)},t))}function Qi(e){return Math.max(Math.min(e,100),0)}function ft(e){return Array.isArray(e)?e:[e]}function No(e){e=String(e);var n=e.split(".");return n.length>1?n[1].length:0}function ye(e,n){e.classList&&!/\s/.test(n)?e.classList.add(n):e.className+=" "+n}function vt(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 Ro(e,n){return e.classList?e.classList.contains(n):new RegExp("\\b"+n+"\\b").test(e.className)}function Xi(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 Go(){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 jo(){var e=!1;try{var n=Object.defineProperty({},"passive",{get:function(){e=!0}});window.addEventListener("test",null,n)}catch{}return e}function Uo(){return window.CSS&&CSS.supports&&CSS.supports("touch-action","none")}function $t(e,n){return 100/(n-e)}function zt(e,n,t){return n*100/(e[t+1]-e[t])}function Wo(e,n){return zt(e,e[0]<0?n+Math.abs(e[0]):n-e[0],0)}function zo(e,n){return n*(e[1]-e[0])/100+e[0]}function Je(e,n){for(var t=1;e>=n[t];)t+=1;return t}function $o(e,n,t){if(t>=e.slice(-1)[0])return 100;var o=Je(t,e),i=e[o-1],l=e[o],_=n[o-1],U=n[o];return _+Wo([i,l],t)/$t(_,U)}function qo(e,n,t){if(t>=100)return e.slice(-1)[0];var o=Je(t,n),i=e[o-1],l=e[o],_=n[o-1],U=n[o];return zo([i,l],(t-_)*$t(_,U))}function Ko(e,n,t,o){if(o===100)return o;var i=Je(o,e),l=e[i-1],_=e[i];return t?o-l>(_-l)/2?_:l:n[i-1]?e[i-1]+Fo(o-e[i-1],n[i-1]):o}var Zo=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(_){l.push([ft(n[_]),_])}),l.sort(function(_,U){return _[0][0]-U[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]=zt(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,_=1,U=t[i],Z=0,F=0,Q=0,de=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]);U>0;)Z=this.xPct[i+1+de]-this.xPct[i+de],t[i+de]*_+100-l*100>100?(F=Z*l,_=(U-100*l)/t[i+de],l=1):(F=t[i+de]*Z/100*_,_=0),o?(Q=Q-F,this.xPct.length+de>=1&&de--):(Q=Q+F,this.xPct.length-de>=1&&de++),U=t[i+de]*_;return n+Q},e.prototype.toStepping=function(n){return n=$o(this.xVal,this.xPct,n),n},e.prototype.fromStepping=function(n){return qo(this.xVal,this.xPct,n)},e.prototype.getStep=function(n){return n=Ko(this.xPct,this.xSteps,this.snap,n),n},e.prototype.getDefaultStep=function(n,t,o){var i=Je(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=Je(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(No);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),!Ve(o)||!Ve(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]=zt([this.xVal[n],this.xVal[n+1]],t,0)/$t(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}(),Ji={to:function(e){return e===void 0?"":e.toFixed(2)},from:Number},Qo={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"},Oe={tooltips:".__tooltips",aria:".__aria"};function Jo(e,n){if(!Ve(n))throw new Error("noUiSlider: 'step' is not numeric.");e.singleStep=n}function Xo(e,n){if(!Ve(n))throw new Error("noUiSlider: 'keyboardPageMultiplier' is not numeric.");e.keyboardPageMultiplier=n}function Yo(e,n){if(!Ve(n))throw new Error("noUiSlider: 'keyboardMultiplier' is not numeric.");e.keyboardMultiplier=n}function er(e,n){if(!Ve(n))throw new Error("noUiSlider: 'keyboardDefaultStep' is not numeric.");e.keyboardDefaultStep=n}function tr(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 Zo(n,e.snap||!1,e.singleStep)}function ir(e,n){if(n=ft(n),!Array.isArray(n)||!n.length)throw new Error("noUiSlider: 'start' option is incorrect.");e.handles=n.length,e.start=n}function nr(e,n){if(typeof n!="boolean")throw new Error("noUiSlider: 'snap' option must be a boolean.");e.snap=n}function or(e,n){if(typeof n!="boolean")throw new Error("noUiSlider: 'animate' option must be a boolean.");e.animate=n}function rr(e,n){if(typeof n!="number")throw new Error("noUiSlider: 'animationDuration' option must be a number.");e.animationDuration=n}function Yi(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 ar(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 en(e,n){if(!Ve(n))throw new Error("noUiSlider: 'margin' option must be numeric.");n!==0&&(e.margin=e.spectrum.getDistance(n))}function sr(e,n){if(!Ve(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 lr(e,n){var t;if(!Ve(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||Ve(n[0])||Ve(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 cr(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 pr(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,_=n.indexOf("hover")>=0,U=n.indexOf("unconstrained")>=0,Z=n.indexOf("invert-connects")>=0,F=n.indexOf("drag-all")>=0,Q=n.indexOf("smooth-steps")>=0;if(i){if(e.handles!==2)throw new Error("noUiSlider: 'fixed' behaviour must be used with 2 handles");en(e,e.start[1]-e.start[0])}if(Z&&e.handles!==2)throw new Error("noUiSlider: 'invert-connects' behaviour must be used with 2 handles");if(U&&(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:F,smoothSteps:Q,fixed:i,snap:l,hover:_,unconstrained:U,invertConnects:Z}}function dr(e,n){if(n!==!1)if(n===!0||gt(n)){e.tooltips=[];for(var t=0;t<e.handles;t++)e.tooltips.push(n)}else{if(n=ft(n),n.length!==e.handles)throw new Error("noUiSlider: must pass a formatter for all handles.");n.forEach(function(o){if(typeof o!="boolean"&&!gt(o))throw new Error("noUiSlider: 'tooltips' must be passed a formatter or 'false'.")}),e.tooltips=n}}function mr(e,n){if(n.length!==e.handles)throw new Error("noUiSlider: must pass a attributes for all handles.");e.handleAttributes=n}function ur(e,n){if(!gt(n))throw new Error("noUiSlider: 'ariaFormat' requires 'to' method.");e.ariaFormat=n}function vr(e,n){if(!Ho(n))throw new Error("noUiSlider: 'format' requires 'to' and 'from' methods.");e.format=n}function gr(e,n){if(typeof n!="boolean")throw new Error("noUiSlider: 'keyboardSupport' option must be a boolean.");e.keyboardSupport=n}function fr(e,n){e.documentElement=n}function hr(e,n){if(typeof n!="string"&&n!==!1)throw new Error("noUiSlider: 'cssPrefix' must be a string or `false`.");e.cssPrefix=n}function Cr(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 tn(e){var n={margin:null,limit:null,padding:null,animate:!0,animationDuration:300,ariaFormat:Ji,format:Ji},t={step:{r:!1,t:Jo},keyboardPageMultiplier:{r:!1,t:Xo},keyboardMultiplier:{r:!1,t:Yo},keyboardDefaultStep:{r:!1,t:er},start:{r:!0,t:ir},connect:{r:!0,t:Yi},direction:{r:!0,t:cr},snap:{r:!1,t:nr},animate:{r:!1,t:or},animationDuration:{r:!1,t:rr},range:{r:!0,t:tr},orientation:{r:!1,t:ar},margin:{r:!1,t:en},limit:{r:!1,t:sr},padding:{r:!1,t:lr},behaviour:{r:!0,t:pr},ariaFormat:{r:!1,t:ur},format:{r:!1,t:vr},tooltips:{r:!1,t:dr},keyboardSupport:{r:!0,t:gr},documentElement:{r:!1,t:fr},cssPrefix:{r:!0,t:hr},cssClasses:{r:!0,t:Cr},handleAttributes:{r:!1,t:mr}},o={connect:!1,direction:"ltr",behaviour:"tap",orientation:"horizontal",keyboardSupport:!0,cssPrefix:"noUi-",cssClasses:Qo,keyboardPageMultiplier:5,keyboardMultiplier:1,keyboardDefaultStep:10};e.format&&!e.ariaFormat&&(e.ariaFormat=e.format),Object.keys(t).forEach(function(Z){if(!Wt(e[Z])&&o[Z]===void 0){if(t[Z].r)throw new Error("noUiSlider: '"+Z+"' is required.");return}t[Z].t(n,Wt(e[Z])?e[Z]:o[Z])}),n.pips=e.pips;var i=document.createElement("div"),l=i.style.msTransform!==void 0,_=i.style.transform!==void 0;n.transformRule=_?"transform":l?"msTransform":"webkitTransform";var U=[["left","top"],["right","bottom"]];return n.style=U[n.dir][n.ort],n}function _r(e,n,t){var o=Go(),i=Uo(),l=i&&jo(),_=e,U,Z,F,Q,de,_e,J=n.spectrum,Be=[],me=[],be=[],bt=0,Ae={},$e=!1,Ue=e.ownerDocument,et=n.documentElement||Ue.documentElement,tt=Ue.body,ro=Ue.dir==="rtl"||n.ort===1?0:100;function He(u,f){var x=Ue.createElement("div");return f&&ye(x,f),u.appendChild(x),x}function ao(u,f){var x=He(u,n.cssClasses.origin),k=He(x,n.cssClasses.handle);if(He(k,n.cssClasses.touchArea),k.setAttribute("data-handle",String(f)),n.keyboardSupport&&(k.setAttribute("tabindex","0"),k.addEventListener("keydown",function(I){return bo(I,f)})),n.handleAttributes!==void 0){var D=n.handleAttributes[f];Object.keys(D).forEach(function(I){k.setAttribute(I,D[I])})}return k.setAttribute("role","slider"),k.setAttribute("aria-orientation",n.ort?"vertical":"horizontal"),f===0?ye(k,n.cssClasses.handleLower):f===n.handles-1&&ye(k,n.cssClasses.handleUpper),x.handle=k,x}function Tt(u,f){return f?He(u,n.cssClasses.connect):!1}function so(u,f){Z=He(f,n.cssClasses.connects),F=[],Q=[],Q.push(Tt(Z,u[0]));for(var x=0;x<n.handles;x++)F.push(ao(f,x)),be[x]=x,Q.push(Tt(Z,u[x+1]))}function lo(u){ye(u,n.cssClasses.target),n.dir===0?ye(u,n.cssClasses.ltr):ye(u,n.cssClasses.rtl),n.ort===0?ye(u,n.cssClasses.horizontal):ye(u,n.cssClasses.vertical);var f=getComputedStyle(u).direction;return f==="rtl"?ye(u,n.cssClasses.textDirectionRtl):ye(u,n.cssClasses.textDirectionLtr),He(u,n.cssClasses.base)}function co(u,f){return!n.tooltips||!n.tooltips[f]?!1:He(u.firstChild,n.cssClasses.tooltip)}function Qt(){return _.hasAttribute("disabled")}function Mt(u){var f=F[u];return f.hasAttribute("disabled")}function po(u){u!=null?(F[u].setAttribute("disabled",""),F[u].handle.removeAttribute("tabindex")):(_.setAttribute("disabled",""),F.forEach(function(f){f.handle.removeAttribute("tabindex")}))}function mo(u){u!=null?(F[u].removeAttribute("disabled"),F[u].handle.setAttribute("tabindex","0")):(_.removeAttribute("disabled"),F.forEach(function(f){f.removeAttribute("disabled"),f.handle.setAttribute("tabindex","0")}))}function kt(){_e&&(qe("update"+Oe.tooltips),_e.forEach(function(u){u&&qi(u)}),_e=null)}function Jt(){kt(),_e=F.map(co),It("update"+Oe.tooltips,function(u,f,x){if(!(!_e||!n.tooltips)&&_e[f]!==!1){var k=u[f];n.tooltips[f]!==!0&&(k=n.tooltips[f].to(x[f])),_e[f].innerHTML=k}})}function uo(){qe("update"+Oe.aria),It("update"+Oe.aria,function(u,f,x,k,D){be.forEach(function(I){var G=F[I],H=it(me,I,0,!0,!0,!0),le=it(me,I,100,!0,!0,!0),ce=D[I],ue=String(n.ariaFormat.to(x[I]));H=J.fromStepping(H).toFixed(1),le=J.fromStepping(le).toFixed(1),ce=J.fromStepping(ce).toFixed(1),G.children[0].setAttribute("aria-valuemin",H),G.children[0].setAttribute("aria-valuemax",le),G.children[0].setAttribute("aria-valuenow",ce),G.children[0].setAttribute("aria-valuetext",ue)})})}function vo(u){if(u.mode===je.Range||u.mode===je.Steps)return J.xVal;if(u.mode===je.Count){if(u.values<2)throw new Error("noUiSlider: 'values' (>= 2) required for mode 'count'.");for(var f=u.values-1,x=100/f,k=[];f--;)k[f]=f*x;return k.push(100),Xt(k,u.stepped)}return u.mode===je.Positions?Xt(u.values,u.stepped):u.mode===je.Values?u.stepped?u.values.map(function(D){return J.fromStepping(J.getStep(J.toStepping(D)))}):u.values:[]}function Xt(u,f){return u.map(function(x){return J.fromStepping(f?J.getStep(x):x)})}function go(u){function f(ce,ue){return Number((ce+ue).toFixed(7))}var x=vo(u),k={},D=J.xVal[0],I=J.xVal[J.xVal.length-1],G=!1,H=!1,le=0;return x=Lo(x.slice().sort(function(ce,ue){return ce-ue})),x[0]!==D&&(x.unshift(D),G=!0),x[x.length-1]!==I&&(x.push(I),H=!0),x.forEach(function(ce,ue){var ve,te,fe,xe=ce,he=x[ue+1],Ce,At,Ht,Lt,li,Ft,ci,pi=u.mode===je.Steps;for(pi&&(ve=J.xNumSteps[ue]),ve||(ve=he-xe),he===void 0&&(he=xe),ve=Math.max(ve,1e-7),te=xe;te<=he;te=f(te,ve)){for(Ce=J.toStepping(te),At=Ce-le,li=At/(u.density||1),Ft=Math.round(li),ci=At/Ft,fe=1;fe<=Ft;fe+=1)Ht=le+fe*ci,k[Ht.toFixed(5)]=[J.fromStepping(Ht),0];Lt=x.indexOf(te)>-1?Me.LargeValue:pi?Me.SmallValue:Me.NoValue,!ue&&G&&te!==he&&(Lt=0),te===he&&H||(k[Ce.toFixed(5)]=[te,Lt]),le=Ce}}),k}function fo(u,f,x){var k,D,I=Ue.createElement("div"),G=(k={},k[Me.None]="",k[Me.NoValue]=n.cssClasses.valueNormal,k[Me.LargeValue]=n.cssClasses.valueLarge,k[Me.SmallValue]=n.cssClasses.valueSub,k),H=(D={},D[Me.None]="",D[Me.NoValue]=n.cssClasses.markerNormal,D[Me.LargeValue]=n.cssClasses.markerLarge,D[Me.SmallValue]=n.cssClasses.markerSub,D),le=[n.cssClasses.valueHorizontal,n.cssClasses.valueVertical],ce=[n.cssClasses.markerHorizontal,n.cssClasses.markerVertical];ye(I,n.cssClasses.pips),ye(I,n.ort===0?n.cssClasses.pipsHorizontal:n.cssClasses.pipsVertical);function ue(te,fe){var xe=fe===n.cssClasses.value,he=xe?le:ce,Ce=xe?G:H;return fe+" "+he[n.ort]+" "+Ce[te]}function ve(te,fe,xe){if(xe=f?f(fe,xe):xe,xe!==Me.None){var he=He(I,!1);he.className=ue(xe,n.cssClasses.marker),he.style[n.style]=te+"%",xe>Me.NoValue&&(he=He(I,!1),he.className=ue(xe,n.cssClasses.value),he.setAttribute("data-value",String(fe)),he.style[n.style]=te+"%",he.innerHTML=String(x.to(fe)))}}return Object.keys(u).forEach(function(te){ve(te,u[te][0],u[te][1])}),I}function wt(){de&&(qi(de),de=null)}function Vt(u){wt();var f=go(u),x=u.filter,k=u.format||{to:function(D){return String(Math.round(D))}};return de=_.appendChild(fo(f,x,k)),de}function Yt(){var u=U.getBoundingClientRect(),f="offset"+["Width","Height"][n.ort];return n.ort===0?u.width||U[f]:u.height||U[f]}function Ne(u,f,x,k){var D=function(G){var H=ho(G,k.pageOffset,k.target||f);if(!H||Qt()&&!k.doNotReject||Ro(_,n.cssClasses.tap)&&!k.doNotReject||u===o.start&&H.buttons!==void 0&&H.buttons>1||k.hover&&H.buttons)return!1;l||H.preventDefault(),H.calcPoint=H.points[n.ort],x(H,k)},I=[];return u.split(" ").forEach(function(G){f.addEventListener(G,D,l?{passive:!0}:!1),I.push([G,D])}),I}function ho(u,f,x){var k=u.type.indexOf("touch")===0,D=u.type.indexOf("mouse")===0,I=u.type.indexOf("pointer")===0,G=0,H=0;if(u.type.indexOf("MSPointer")===0&&(I=!0),u.type==="mousedown"&&!u.buttons&&!u.touches)return!1;if(k){var le=function(ve){var te=ve.target;return te===x||x.contains(te)||u.composed&&u.composedPath().shift()===x};if(u.type==="touchstart"){var ce=Array.prototype.filter.call(u.touches,le);if(ce.length>1)return!1;G=ce[0].pageX,H=ce[0].pageY}else{var ue=Array.prototype.find.call(u.changedTouches,le);if(!ue)return!1;G=ue.pageX,H=ue.pageY}}return f=f||Xi(Ue),(D||I)&&(G=u.clientX+f.x,H=u.clientY+f.y),u.pageOffset=f,u.points=[G,H],u.cursor=D||I,u}function ei(u){var f=u-Oo(U,n.ort),x=f*100/Yt();return x=Qi(x),n.dir?100-x:x}function Co(u){var f=100,x=!1;return F.forEach(function(k,D){if(!Mt(D)){var I=me[D],G=Math.abs(I-u),H=G===100&&f===100,le=G<f,ce=G<=f&&u>I;(le||ce||H)&&(x=D,f=G)}}),x}function _o(u,f){u.type==="mouseout"&&u.target.nodeName==="HTML"&&u.relatedTarget===null&&Et(u,f)}function xo(u,f){if(navigator.appVersion.indexOf("MSIE 9")===-1&&u.buttons===0&&f.buttonsProperty!==0)return Et(u,f);var x=(n.dir?-1:1)*(u.calcPoint-f.startCalcPoint),k=x*100/f.baseSize;ii(x>0,k,f.locations,f.handleNumbers,f.connect)}function Et(u,f){f.handle&&(vt(f.handle,n.cssClasses.active),bt-=1),f.listeners.forEach(function(x){et.removeEventListener(x[0],x[1])}),bt===0&&(vt(_,n.cssClasses.drag),Bt(),u.cursor&&(tt.style.cursor="",tt.removeEventListener("selectstart",Ki))),n.events.smoothSteps&&(f.handleNumbers.forEach(function(x){Re(x,me[x],!0,!0,!1,!1)}),f.handleNumbers.forEach(function(x){ge("update",x)})),f.handleNumbers.forEach(function(x){ge("change",x),ge("set",x),ge("end",x)})}function Dt(u,f){if(!f.handleNumbers.some(Mt)){var x;if(f.handleNumbers.length===1){var k=F[f.handleNumbers[0]];x=k.children[0],bt+=1,ye(x,n.cssClasses.active)}u.stopPropagation();var D=[],I=Ne(o.move,et,xo,{target:u.target,handle:x,connect:f.connect,listeners:D,startCalcPoint:u.calcPoint,baseSize:Yt(),pageOffset:u.pageOffset,handleNumbers:f.handleNumbers,buttonsProperty:u.buttons,locations:me.slice()}),G=Ne(o.end,et,Et,{target:u.target,handle:x,listeners:D,doNotReject:!0,handleNumbers:f.handleNumbers}),H=Ne("mouseout",et,_o,{target:u.target,handle:x,listeners:D,doNotReject:!0,handleNumbers:f.handleNumbers});D.push.apply(D,I.concat(G,H)),u.cursor&&(tt.style.cursor=getComputedStyle(u.target).cursor,F.length>1&&ye(_,n.cssClasses.drag),tt.addEventListener("selectstart",Ki,!1)),f.handleNumbers.forEach(function(le){ge("start",le)})}}function So(u){u.stopPropagation();var f=ei(u.calcPoint),x=Co(f);x!==!1&&(n.events.snap||Zi(_,n.cssClasses.tap,n.animationDuration),Re(x,f,!0,!0),Bt(),ge("slide",x,!0),ge("update",x,!0),n.events.snap?Dt(u,{handleNumbers:[x]}):(ge("change",x,!0),ge("set",x,!0)))}function yo(u){var f=ei(u.calcPoint),x=J.getStep(f),k=J.fromStepping(x);Object.keys(Ae).forEach(function(D){D.split(".")[0]==="hover"&&Ae[D].forEach(function(I){I.call(ot,k)})})}function bo(u,f){if(Qt()||Mt(f))return!1;var x=["Left","Right"],k=["Down","Up"],D=["PageDown","PageUp"],I=["Home","End"];n.dir&&!n.ort?x.reverse():n.ort&&!n.dir&&(k.reverse(),D.reverse());var G=u.key.replace("Arrow",""),H=G===D[0],le=G===D[1],ce=G===k[0]||G===x[0]||H,ue=G===k[1]||G===x[1]||le,ve=G===I[0],te=G===I[1];if(!ce&&!ue&&!ve&&!te)return!0;u.preventDefault();var fe;if(ue||ce){var xe=ce?0:1,he=ai(f),Ce=he[xe];if(Ce===null)return!1;Ce===!1&&(Ce=J.getDefaultStep(me[f],ce,n.keyboardDefaultStep)),le||H?Ce*=n.keyboardPageMultiplier:Ce*=n.keyboardMultiplier,Ce=Math.max(Ce,1e-7),Ce=(ce?-1:1)*Ce,fe=Be[f]+Ce}else te?fe=n.spectrum.xVal[n.spectrum.xVal.length-1]:fe=n.spectrum.xVal[0];return Re(f,J.toStepping(fe),!0,!0),ge("slide",f),ge("update",f),ge("change",f),ge("set",f),!1}function ti(u){u.fixed||F.forEach(function(f,x){Ne(o.start,f.children[0],Dt,{handleNumbers:[x]})}),u.tap&&Ne(o.start,U,So,{}),u.hover&&Ne(o.move,U,yo,{hover:!0}),u.drag&&Q.forEach(function(f,x){if(!(f===!1||x===0||x===Q.length-1)){var k=F[x-1],D=F[x],I=[f],G=[k,D],H=[x-1,x];ye(f,n.cssClasses.draggable),u.fixed&&(I.push(k.children[0]),I.push(D.children[0])),u.dragAll&&(G=F,H=be),I.forEach(function(le){Ne(o.start,le,Dt,{handles:G,handleNumbers:H,connect:f})})}})}function It(u,f){Ae[u]=Ae[u]||[],Ae[u].push(f),u.split(".")[0]==="update"&&F.forEach(function(x,k){ge("update",k)})}function To(u){return u===Oe.aria||u===Oe.tooltips}function qe(u){var f=u&&u.split(".")[0],x=f?u.substring(f.length):u;Object.keys(Ae).forEach(function(k){var D=k.split(".")[0],I=k.substring(D.length);(!f||f===D)&&(!x||x===I)&&(!To(I)||x===I)&&delete Ae[k]})}function ge(u,f,x){Object.keys(Ae).forEach(function(k){var D=k.split(".")[0];u===D&&Ae[k].forEach(function(I){I.call(ot,Be.map(n.format.to),f,Be.slice(),x||!1,me.slice(),ot)})})}function it(u,f,x,k,D,I,G){var H;return F.length>1&&!n.events.unconstrained&&(k&&f>0&&(H=J.getAbsoluteDistance(u[f-1],n.margin,!1),x=Math.max(x,H)),D&&f<F.length-1&&(H=J.getAbsoluteDistance(u[f+1],n.margin,!0),x=Math.min(x,H))),F.length>1&&n.limit&&(k&&f>0&&(H=J.getAbsoluteDistance(u[f-1],n.limit,!1),x=Math.min(x,H)),D&&f<F.length-1&&(H=J.getAbsoluteDistance(u[f+1],n.limit,!0),x=Math.max(x,H))),n.padding&&(f===0&&(H=J.getAbsoluteDistance(0,n.padding[0],!1),x=Math.max(x,H)),f===F.length-1&&(H=J.getAbsoluteDistance(100,n.padding[1],!0),x=Math.min(x,H))),G||(x=J.getStep(x)),x=Qi(x),x===u[f]&&!I?!1:x}function Pt(u,f){var x=n.ort;return(x?f:u)+", "+(x?u:f)}function ii(u,f,x,k,D){var I=x.slice(),G=k[0],H=n.events.smoothSteps,le=[!u,u],ce=[u,!u];k=k.slice(),u&&k.reverse(),k.length>1?k.forEach(function(ve,te){var fe=it(I,ve,I[ve]+f,le[te],ce[te],!1,H);fe===!1?f=0:(f=fe-I[ve],I[ve]=fe)}):le=ce=[!0];var ue=!1;k.forEach(function(ve,te){ue=Re(ve,x[ve]+f,le[te],ce[te],!1,H)||ue}),ue&&(k.forEach(function(ve){ge("update",ve),ge("slide",ve)}),D!=null&&ge("drag",G))}function ni(u,f){return n.dir?100-u-f:u}function Mo(u,f){me[u]=f,Be[u]=J.fromStepping(f);var x=ni(f,0)-ro,k="translate("+Pt(x+"%","0")+")";if(F[u].style[n.transformRule]=k,n.events.invertConnects&&me.length>1){var D=me.every(function(I,G,H){return G===0||I>=H[G-1]});if($e!==!D){Io();return}}Ke(u),Ke(u+1),$e&&(Ke(u-1),Ke(u+2))}function Bt(){be.forEach(function(u){var f=me[u]>50?-1:1,x=3+(F.length+f*u);F[u].style.zIndex=String(x)})}function Re(u,f,x,k,D,I){return D||(f=it(me,u,f,x,k,!1,I)),f===!1?!1:(Mo(u,f),!0)}function Ke(u){if(Q[u]){var f=me.slice();$e&&f.sort(function(H,le){return H-le});var x=0,k=100;u!==0&&(x=f[u-1]),u!==Q.length-1&&(k=f[u]);var D=k-x,I="translate("+Pt(ni(x,D)+"%","0")+")",G="scale("+Pt(D/100,"1")+")";Q[u].style[n.transformRule]=I+" "+G}}function oi(u,f){return u===null||u===!1||u===void 0||(typeof u=="number"&&(u=String(u)),u=n.format.from(u),u!==!1&&(u=J.toStepping(u)),u===!1||isNaN(u))?me[f]:u}function nt(u,f,x){var k=ft(u),D=me[0]===void 0;f=f===void 0?!0:f,n.animate&&!D&&Zi(_,n.cssClasses.tap,n.animationDuration),be.forEach(function(H){Re(H,oi(k[H],H),!0,!1,x)});var I=be.length===1?0:1;if(D&&J.hasNoSize()&&(x=!0,me[0]=0,be.length>1)){var G=100/(be.length-1);be.forEach(function(H){me[H]=H*G})}for(;I<be.length;++I)be.forEach(function(H){Re(H,me[H],!0,!0,x)});Bt(),be.forEach(function(H){ge("update",H),k[H]!==null&&f&&ge("set",H)})}function ko(u){nt(n.start,u)}function wo(u,f,x,k){if(u=Number(u),!(u>=0&&u<be.length))throw new Error("noUiSlider: invalid handle number, got: "+u);Re(u,oi(f,u),!0,!0,k),ge("update",u),x&&ge("set",u)}function ri(u){if(u===void 0&&(u=!1),u)return Be.length===1?Be[0]:Be.slice(0);var f=Be.map(n.format.to);return f.length===1?f[0]:f}function Vo(){for(qe(Oe.aria),qe(Oe.tooltips),Object.keys(n.cssClasses).forEach(function(u){vt(_,n.cssClasses[u])});_.firstChild;)_.removeChild(_.firstChild);delete _.noUiSlider}function ai(u){var f=me[u],x=J.getNearbySteps(f),k=Be[u],D=x.thisStep.step,I=null;if(n.snap)return[k-x.stepBefore.startValue||null,x.stepAfter.startValue-k||null];D!==!1&&k+D>x.stepAfter.startValue&&(D=x.stepAfter.startValue-k),k>x.thisStep.startValue?I=x.thisStep.step:x.stepBefore.step===!1?I=!1:I=k-x.stepBefore.highestStep,f===100?D=null:f===0&&(I=null);var G=J.countStepDecimals();return D!==null&&D!==!1&&(D=Number(D.toFixed(G))),I!==null&&I!==!1&&(I=Number(I.toFixed(G))),[I,D]}function Eo(){return be.map(ai)}function Do(u,f){var x=ri(),k=["margin","limit","padding","range","animate","snap","step","format","pips","tooltips","connect"];k.forEach(function(I){u[I]!==void 0&&(t[I]=u[I])});var D=tn(t);k.forEach(function(I){u[I]!==void 0&&(n[I]=D[I])}),J=D.spectrum,n.margin=D.margin,n.limit=D.limit,n.padding=D.padding,n.pips?Vt(n.pips):wt(),n.tooltips?Jt():kt(),me=[],nt(Wt(u.start)?u.start:x,f),u.connect&&si()}function si(){for(;Z.firstChild;)Z.removeChild(Z.firstChild);for(var u=0;u<=n.handles;u++)Q[u]=Tt(Z,n.connect[u]),Ke(u);ti({drag:n.events.drag,fixed:!0})}function Io(){$e=!$e,Yi(n,n.connect.map(function(u){return!u})),si()}function Po(){U=lo(_),so(n.connect,U),ti(n.events),nt(n.start),n.pips&&Vt(n.pips),n.tooltips&&Jt(),uo()}Po();var ot={destroy:Vo,steps:Eo,on:It,off:qe,get:ri,set:nt,setHandle:wo,reset:ko,disable:po,enable:mo,__moveHandles:function(u,f,x){ii(u,f,me,x)},options:t,updateOptions:Do,target:_,removePips:wt,removeTooltips:kt,getPositions:function(){return me.slice()},getTooltips:function(){return _e},getOrigins:function(){return F},pips:Vt};return ot}function nn(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=tn(n),o=_r(e,t,n);return e.noUiSlider=o,o}var qt=class{to(n){return String(parseFloat(parseFloat(String(n)).toFixed(2)))}from(n){return parseFloat(n)}},se=(()=>{class e{constructor(t,o,i){this.ngZone=t,this.el=o,this.renderer=i,this.handles=[],this.config={},this.change=new Ee(!0),this.update=new Ee(!0),this.slide=new Ee(!0),this.set=new Ee(!0),this.start=new Ee(!0),this.end=new Ee(!0),this.onChange=Function.prototype,this.cleanups=[],this.eventHandler=(l,_,U,Z)=>{let F=this.toValues(_),Q=!1;if(this.value===void 0){this.value=F;return}Array.isArray(F)&&this.value[U]!=F[U]&&(Q=!0),!Array.isArray(F)&&this.value!=F&&(Q=!0),Q&&this.ngZone.run(()=>{l.observers.length>0&&l.emit(F),this.onChange(F)}),Array.isArray(F)?this.value[U]=F[U]:this.value=F},this.defaultKeyHandler=l=>{let _=this.slider.steps(),U=parseInt(l.target.getAttribute("data-handle")),Z=1,F=1,Q=0,de=0;switch(l.which){case 34:F=this.config.pageSteps;break;case 40:case 37:Z=-1,Q=_[U][0],l.preventDefault();break;case 33:F=this.config.pageSteps;break;case 38:case 39:Q=_[U][1],l.preventDefault();break;default:break}de=Z*F*Q;let _e;Array.isArray(this.value)?(_e=[...this.value],_e[U]=_e[U]+de):_e=this.value+de,this.slider.set(_e)}}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(){for(this.slider.destroy();this.cleanups.length;)this.cleanups.pop()?.()}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 qt,this.ngZone.runOutsideAngular(()=>{this.slider=nn(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,_)=>{this.eventHandler(this.set,i,l,_)}),this.slider.on("update",(i,l,_)=>{this.update.observers.length>0&&this.ngZone.run(()=>{this.update.emit(this.toValues(i))})}),this.slider.on("change",(i,l,_)=>{this.change.observers.length>0&&this.ngZone.run(()=>{this.change.emit(this.toValues(i))})}),this.slider.on("slide",(i,l,_)=>{this.eventHandler(this.slide,i,l,_)}),this.slider.on("start",(i,l,_)=>{this.start.observers.length>0&&this.ngZone.run(()=>{this.start.emit(this.toValues(i))})}),this.slider.on("end",(i,l,_)=>{this.end.observers.length>0&&this.ngZone.run(()=>{this.end.emit(this.toValues(i))})})}}return e.\u0275fac=function(t){return new(t||e)(Se(ki),Se(ze),Se(st))},e.\u0275cmp=T({type:e,selectors:[["nouislider"]],hostVars:2,hostBindings:function(t,o){t&2&&Bi("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:[pt([{provide:Oi,useExisting:Si(()=>e),multi:!0}]),We],decls:1,vars:1,template:function(t,o){t&1&&v(0,"div"),t&2&&M("disabled",o.disabled?!0:void 0)},styles:["[_nghost-%COMP%]{display:block;margin-top:1rem;margin-bottom:1rem}"]}),e})();var ht=(e,n)=>({"fa-check-circle":e,"fa-blank":n});function Sr(e,n){if(e&1){let t=O();a(0,"button",6),S("click",function(i){P(t);let l=g(2);return B(l.setTargetMode(0,i))}),a(1,"div",7),v(2,"i",8),s(),c(3),p(4,"translate"),a(5,"div",9),v(6,"i",10),s()()}if(e&2){let t=g(2);r(2),m("ngClass",w(4,ht,t.targetMode===0,t.targetMode!==0)),r(),b(" ",d(4,2,"accessories.control.manual")," ")}}function yr(e,n){if(e&1){let t=O();a(0,"button",6),S("click",function(i){P(t);let l=g(2);return B(l.setTargetMode(1,i))}),a(1,"div",7),v(2,"i",8),s(),c(3),p(4,"translate"),a(5,"div",9),v(6,"i",10),s()()}if(e&2){let t=g(2);r(2),m("ngClass",w(4,ht,t.targetMode===1,t.targetMode!==1)),r(),b(" ",d(4,2,"accessories.control.auto")," ")}}function br(e,n){if(e&1&&(a(0,"h6",12),c(1),p(2,"translate"),s(),a(3,"div",13),h(4,Sr,7,7,"button",14),h(5,yr,7,7,"button",14),s()),e&2){let t=g();r(),y(d(2,3,"accessories.control.mode")),r(3),C(t.targetModeValidValues.includes(0)?4:-1),r(),C(t.targetModeValidValues.includes(1)?5:-1)}}function Tr(e,n){if(e&1){let t=O();a(0,"h6",12),c(1),p(2,"translate"),s(),a(3,"nouislider",15),$("ngModelChange",function(i){P(t);let l=g();return z(l.targetRotationSpeed.value,i)||(l.targetRotationSpeed.value=i),B(i)}),S("ngModelChange",function(){P(t);let i=g();return B(i.onTargetRotationSpeedChange())}),s()}if(e&2){let t=g();r(),j("",d(2,6,"accessories.control.rotation_speed"),": ",t.targetRotationSpeed.value,"%"),r(2),m("min",t.targetRotationSpeed.min)("max",t.targetRotationSpeed.max)("step",t.targetRotationSpeed.step),W("ngModel",t.targetRotationSpeed.value)}}var on=(()=>{class e{$activeModal=A(Y);service;targetState;targetMode;targetModeValidValues=[];targetRotationSpeed;targetRotationSpeedChanged=new ie;constructor(){this.targetRotationSpeedChanged.pipe(ne(500)).subscribe(()=>{this.service.getCharacteristic("RotationSpeed").setValue(this.targetRotationSpeed.value),this.targetRotationSpeed.value&&!this.service.values.Active?(this.targetState=1,this.service.getCharacteristic("Active").setValue(this.targetMode)):!this.targetRotationSpeed.value&&this.service.values.Active&&(this.targetState=0,this.service.getCharacteristic("Active").setValue(this.targetMode))})}ngOnInit(){this.targetState=this.service.values.Active,this.targetMode=this.service.values.TargetAirPurifierState,this.targetModeValidValues=this.service.getCharacteristic("TargetAirPurifierState").validValues,this.loadRotationSpeed()}setTargetState(t,o){this.targetState=t,this.service.getCharacteristic("Active").setValue(this.targetState),this.targetState&&this.targetRotationSpeed&&!this.targetRotationSpeed.value&&(this.targetRotationSpeed.value=this.service.getCharacteristic("RotationSpeed").maxValue),o.target.blur()}setTargetMode(t,o){this.targetMode=t,this.service.getCharacteristic("TargetAirPurifierState").setValue(this.targetMode),o.target.blur()}onTargetRotationSpeedChange(){this.targetRotationSpeedChanged.next(this.targetRotationSpeed.value)}dismissModal(){this.$activeModal.dismiss("Dismiss")}loadRotationSpeed(){let t=this.service.getCharacteristic("RotationSpeed");t&&(this.targetRotationSpeed={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, #add8e6, #416bdf)"})},10))}static \u0275fac=function(o){return new(o||e)};static \u0275cmp=T({type:e,selectors:[["ng-component"]],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","Air Purifier State 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","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,"ngModelChange","min","max","step","ngModel"]],template:function(o,i){o&1&&(a(0,"div",0)(1,"div",1),v(2,"h5",2),a(3,"button",3),p(4,"translate"),S("click",function(){return i.dismissModal()}),s()(),a(5,"div",4)(6,"div",5)(7,"button",6),S("click",function(_){return i.setTargetState(0,_)}),a(8,"div",7),v(9,"i",8),s(),c(10),p(11,"translate"),a(12,"div",9),v(13,"i",10),s()(),a(14,"button",6),S("click",function(_){return i.setTargetState(1,_)}),a(15,"div",7),v(16,"i",8),s(),c(17),p(18,"translate"),a(19,"div",9),v(20,"i",10),s()()(),h(21,br,6,5),h(22,Tr,4,8),s(),v(23,"div",11),s()),o&2&&(r(2),m("innerText",i.service.customName||i.service.serviceName),r(),M("aria-label",d(4,8,"form.button_close")),r(6),m("ngClass",w(14,ht,i.targetState===0,i.targetState!==0)),r(),b(" ",d(11,10,"accessories.control.off")," "),r(6),m("ngClass",w(17,ht,i.targetState===1,i.targetState!==1)),r(),b(" ",d(18,12,"accessories.control.on")," "),r(4),C(i.targetModeValidValues.length?21:-1),r(),C(i.targetRotationSpeed?22:-1))},dependencies:[X,re,ae,se,V,E],styles:[".switch-off svg .air-purifier_off_grey{stroke:gray;fill:gray} .switch-off svg .air-purifier_off_lgrey{fill:#d9d9d9} .switch-on svg .rectangle{fill:#fff!important}"]})}return e})();var K=(()=>{class e{downTimeout;done=!1;duration=350;longClick=Gt();shortClick=Gt();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=lt({type:e,selectors:[["","shortClick",""],["","longClick",""]],hostBindings:function(o,i){o&1&&S("keyup.enter",function(_){return i.onEnter(_)})("mouseup",function(_){return i.onMouseUp(_)})("touchend",function(_){return i.onTouchEnd(_)})("touchstart",function(_){return i.onMouseDown(_)})("mousedown",function(_){return i.onMouseDown(_)})("mousemove",function(_){return i.onMouseMove(_)})("touchmove",function(_){return i.onMouseMove(_)})},inputs:{duration:"duration"},outputs:{longClick:"longClick",shortClick:"shortClick"}})}return e})();var Mr=(e,n)=>({"switch-on":e,"switch-off":n});function kr(e,n){if(e&1&&(v(0,"div",4),p(1,"translate")),e&2){let t=g();m("innerText",d(1,1,t.service.values.Active?"accessories.control.on":"accessories.control.off"))}}function wr(e,n){if(e&1&&(a(0,"div",5),c(1),s()),e&2){let t=g();r(),b("",t.service.values.RotationSpeed,"%")}}var rn=(()=>{class e{$modal=A(ee);service;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(on,{size:"md",backdrop:"static"});t.componentInstance.service=this.service}static \u0275fac=function(o){return new(o||e)};static \u0275cmp=T({type:e,selectors:[["app-air-purifier"]],inputs:{service:"service"},decls:7,vars:9,consts:[["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),v(2,"div",2),a(3,"div",3),c(4),s(),h(5,kr,2,3,"div",4),h(6,wr,2,1,"div",5),s()()),o&2&&(m("ngClass",w(6,Mr,i.service.values.Active,!i.service.values.Active)),r(2),m("inlineSVG","/assets/hap-icons/air-purifier.svg"),M("aria-label","Air Purifier"),r(2),y(i.service.customName||i.service.serviceName),r(),C(!i.service.values.RotationSpeed||!i.service.values.Active?5:-1),r(),C(i.service.values.RotationSpeed&&i.service.values.Active?6:-1))},dependencies:[K,E,R,N,V],styles:[".switch-off svg .air-purifier_off_grey{stroke:gray;fill:gray} .switch-off svg .air-purifier_off_lgrey{fill:#d9d9d9} .switch-on svg .rectangle{fill:#fff!important}"]})}return e})();var Vr=e=>({"switch-on":e}),Er=(e,n)=>({"grey-text":e,"red-text":n}),an=(()=>{class e{service;labels=["Unknown","Excellent","Good","Fair","Inferior","Poor"];static \u0275fac=function(o){return new(o||e)};static \u0275cmp=T({type:e,selectors:[["app-air-quality-sensor"]],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),v(2,"div",2),a(3,"div",3),c(4),s(),a(5,"div",4),c(6),s()()()),o&2&&(m("ngClass",q(6,Vr,i.service.values.AirQuality>3)),r(2),m("inlineSVG","/assets/hap-icons/air-quality-sensor.svg"),M("aria-label","Air Quality Sensor"),r(2),y(i.service.customName||i.service.serviceName),r(),m("ngClass",w(8,Er,i.service.values.AirQuality<4,i.service.values.AirQuality>3)),r(),b(" ",i.labels[i.service.values.AirQuality||0]," "))},dependencies:[E,R,N],encapsulation:2})}return e})();var Dr=e=>({"switch-on":e}),Ir=(e,n)=>({lowbattery:e,charging:n}),Pr=(e,n)=>({"battery-over":e,"battery-under":n});function Br(e,n){e&1&&(c(0),p(1,"translate")),e&2&&b(" ",d(1,1,"accessories.control.battery_notcharging")," ")}function Ar(e,n){e&1&&(c(0),p(1,"translate")),e&2&&b(" ",d(1,1,"accessories.control.battery_charging")," ")}function Hr(e,n){e&1&&(c(0),p(1,"translate")),e&2&&b(" ",d(1,1,"accessories.control.battery_notchargeable")," ")}function Lr(e,n){e&1&&(a(0,"span",7),c(1),p(2,"translate"),s()),e&2&&(r(),y(d(2,1,"accessories.control.battery_low")))}function Fr(e,n){e&1&&(c(0),p(1,"translate")),e&2&&b(" ",d(1,1,"accessories.control.battery_charged")," ")}var sn=(()=>{class e{service;static \u0275fac=function(o){return new(o||e)};static \u0275cmp=T({type:e,selectors:[["app-battery"]],inputs:{service:"service"},decls:15,vars:19,consts:[[1,"accessory-box",3,"ngClass"],[1,"d-flex","flex-column","h-100"],[1,"batterylevel-battery","mt-2",3,"ngClass"],[1,"battery-level-fill"],[1,"battery-text",3,"ngClass"],[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),v(3,"div",3),a(4,"span",4),c(5),p(6,"number"),s()(),a(7,"div",5),c(8),s(),a(9,"div",6),h(10,Br,2,3)(11,Ar,2,3)(12,Hr,2,3)(13,Lr,3,3,"span",7)(14,Fr,2,3),s()()()),o&2&&(m("ngClass",q(11,Dr,i.service.values.ChargingState===1)),r(2),m("ngClass",w(13,Ir,i.service.values.StatusLowBattery===1&&i.service.values.ChargingState!==1,i.service.values.ChargingState===1)),r(),Pi("width",i.service.values.BatteryLevel||0,"%"),r(),m("ngClass",w(16,Pr,i.service.values.BatteryLevel>=30,i.service.values.BatteryLevel<30)),r(),y(oe(6,8,i.service.values.BatteryLevel||0,"1.0-0")+"%"),r(3),y(i.service.customName||i.service.serviceName),r(2),C(i.service.values.ChargingState===0?10:i.service.values.ChargingState===1?11:i.service.values.ChargingState===2?12:i.service.values.StatusLowBattery===1||i.service.values.BatteryLevel===0?13:14))},dependencies:[E,Te,V],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:gray;z-index:1;transition:width .3s ease-in-out}.batterylevel-battery[_ngcontent-%COMP%] .battery-text[_ngcontent-%COMP%]{position:relative;z-index:2}.batterylevel-battery[_ngcontent-%COMP%] .battery-over[_ngcontent-%COMP%]{color:#d3d3d3}.batterylevel-battery[_ngcontent-%COMP%] .battery-under[_ngcontent-%COMP%]{color:gray}@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}.charging[_ngcontent-%COMP%] .battery-level-fill[_ngcontent-%COMP%]{background-color:#4caf50}']})}return e})();var Or=(e,n)=>({"switch-on":e,"switch-off":n});function Nr(e,n){e&1&&(a(0,"div",4),c(1),p(2,"translate"),s()),e&2&&(r(),y(d(2,1,"accessories.control.detected")))}function Rr(e,n){e&1&&(a(0,"div",5),c(1),p(2,"translate"),s()),e&2&&(r(),y(d(2,1,"accessories.control.not_detected")))}var ln=(()=>{class e{service;static \u0275fac=function(o){return new(o||e)};static \u0275cmp=T({type:e,selectors:[["app-carbon-dioxide-sensor"]],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),v(2,"div",2),a(3,"div",3),c(4),s(),h(5,Nr,3,3,"div",4),h(6,Rr,3,3,"div",5),s()()),o&2&&(m("ngClass",w(6,Or,i.service.values.CarbonDioxideDetected,!i.service.values.CarbonDioxideDetected)),r(2),m("inlineSVG","/assets/hap-icons/carbon-dioxide-sensor.svg"),M("aria-label","Carbon Dioxide Sensor"),r(2),y(i.service.customName||i.service.serviceName),r(),C(i.service.values.CarbonDioxideDetected?5:-1),r(),C(i.service.values.CarbonDioxideDetected?-1:6))},dependencies:[E,R,N,V],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 Gr=(e,n)=>({"switch-on":e,"switch-off":n});function jr(e,n){e&1&&(a(0,"div",4),c(1),p(2,"translate"),s()),e&2&&(r(),y(d(2,1,"accessories.control.detected")))}function Ur(e,n){e&1&&(a(0,"div",5),c(1),p(2,"translate"),s()),e&2&&(r(),y(d(2,1,"accessories.control.not_detected")))}var cn=(()=>{class e{service;static \u0275fac=function(o){return new(o||e)};static \u0275cmp=T({type:e,selectors:[["app-carbon-monoxide-sensor"]],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),v(2,"div",2),a(3,"div",3),c(4),s(),h(5,jr,3,3,"div",4),h(6,Ur,3,3,"div",5),s()()),o&2&&(m("ngClass",w(6,Gr,i.service.values.CarbonMonoxideDetected,!i.service.values.CarbonMonoxideDetected)),r(2),m("inlineSVG","/assets/hap-icons/carbon-monoxide-sensor.svg"),M("aria-label","Carbon Monoxide Sensor"),r(2),y(i.service.customName||i.service.serviceName),r(),C(i.service.values.CarbonMonoxideDetected?5:-1),r(),C(i.service.values.CarbonMonoxideDetected?-1:6))},dependencies:[E,R,N,V],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 Wr=(e,n)=>({"switch-on":e,"switch-off":n});function zr(e,n){e&1&&v(0,"div",2),e&2&&(m("inlineSVG","/assets/hap-icons/contact-sensor-open.svg"),M("aria-label","Contact Sensor (Open)"))}function $r(e,n){e&1&&v(0,"div",2),e&2&&(m("inlineSVG","/assets/hap-icons/contact-sensor-closed.svg"),M("aria-label","Contact Sensor (Closed)"))}function qr(e,n){e&1&&(a(0,"div",4),c(1),p(2,"translate"),s()),e&2&&(r(),y(d(2,1,"accessories.control.open")))}function Kr(e,n){e&1&&(a(0,"div",5),c(1),p(2,"translate"),s()),e&2&&(r(),y(d(2,1,"accessories.control.closed")))}var pn=(()=>{class e{service;static \u0275fac=function(o){return new(o||e)};static \u0275cmp=T({type:e,selectors:[["app-contact-sensor"]],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),h(2,zr,1,2,"div",2),h(3,$r,1,2,"div",2),a(4,"div",3),c(5),s(),h(6,qr,3,3,"div",4),h(7,Kr,3,3,"div",5),s()()),o&2&&(m("ngClass",w(6,Wr,i.service.values.ContactSensorState,!i.service.values.ContactSensorState)),r(2),C(i.service.values.ContactSensorState?2:-1),r(),C(i.service.values.ContactSensorState?-1:3),r(2),y(i.service.customName||i.service.serviceName),r(),C(i.service.values.ContactSensorState?6:-1),r(),C(i.service.values.ContactSensorState?-1:7))},dependencies:[E,R,N,V],styles:["body.dark-mode .switch-off svg .contact_sensor_split_line{fill:#2b2b2b}"]})}return e})();function Zr(e,n){e&1&&(c(0),p(1,"translate")),e&2&&b(" ",d(1,1,"accessories.control.closed")," ")}function Qr(e,n){if(e&1&&(c(0),p(1,"translate")),e&2){let t=g(2);j(" ",d(1,2,"accessories.control.open")," ",t.service.getCharacteristic("CurrentPosition").value,"% ")}}function Jr(e,n){if(e&1&&h(0,Zr,2,3)(1,Qr,2,4),e&2){let t=g();C(t.service.values.CurrentPosition===0?0:1)}}function Xr(e,n){e&1&&(c(0),p(1,"translate")),e&2&&b(" ",d(1,1,"accessories.control.opening"),"... ")}function Yr(e,n){e&1&&(c(0),p(1,"translate")),e&2&&b(" ",d(1,1,"accessories.control.closing"),"... ")}var dn=(()=>{class e{$activeModal=A(Y);service;targetMode;targetPositionChanged=new ie;targetPosition;constructor(){this.targetPositionChanged.pipe(ne(500)).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()}onTargetPositionChange(){this.targetPositionChanged.next(this.targetPosition.value)}dismissModal(){this.$activeModal.dismiss("Dismiss")}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))}static \u0275fac=function(o){return new(o||e)};static \u0275cmp=T({type:e,selectors:[["ng-component"]],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"],[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),v(2,"h5",2),a(3,"button",3),p(4,"translate"),S("click",function(){return i.dismissModal()}),s()(),a(5,"div",4)(6,"div",5)(7,"div",6),h(8,Jr,2,1)(9,Xr,2,3)(10,Yr,2,3),s()(),a(11,"h6",7),c(12),p(13,"translate"),s(),a(14,"nouislider",8),$("ngModelChange",function(_){return z(i.targetPosition.value,_)||(i.targetPosition.value=_),_}),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),$("ngModelChange",function(_){return z(i.service.getCharacteristic("CurrentPosition").value,_)||(i.service.getCharacteristic("CurrentPosition").value=_),_}),s(),a(26,"div",9)(27,"span",10),c(28),p(29,"translate"),s(),a(30,"span",10),c(31),p(32,"translate"),s()()(),v(33,"div",12),s()),o&2&&(r(2),m("innerText",i.service.customName||i.service.serviceName),r(),M("aria-label",d(4,20,"form.button_close")),r(5),C(i.service.values.PositionState===2?8:i.service.values.PositionState===1?9:i.service.values.PositionState===0?10:-1),r(4),j("",d(13,22,"accessories.control.target"),": ",i.targetPosition.value,"%"),r(2),m("min",i.targetPosition.min)("max",i.targetPosition.max)("step",i.targetPosition.step),W("ngModel",i.targetPosition.value),r(3),y(d(18,24,"accessories.control.closed")),r(3),y(d(21,26,"accessories.control.open")),r(3),j(" ",d(24,28,"accessories.control.current"),": ",i.service.getCharacteristic("CurrentPosition").value,"% "),r(2),m("min",0)("max",100)("step",1)("disabled",!0),W("ngModel",i.service.getCharacteristic("CurrentPosition").value),r(3),y(d(29,30,"accessories.control.closed")),r(3),y(d(32,32,"accessories.control.open")))},dependencies:[se,X,re,ae,V],encapsulation:2})}return e})();var ea=e=>({"window-on":e});function ta(e,n){e&1&&v(0,"div",2),e&2&&(m("inlineSVG","/assets/hap-icons/door-closed.svg"),M("aria-label","Door (Closed)"))}function ia(e,n){e&1&&v(0,"div",2),e&2&&(m("inlineSVG","/assets/hap-icons/door-open.svg"),M("aria-label","Door (Open)"))}function na(e,n){e&1&&(c(0),p(1,"translate")),e&2&&b(" ",d(1,1,"accessories.control.closed")," ")}function oa(e,n){if(e&1&&(c(0),p(1,"translate")),e&2){let t=g(2);j(" ",d(1,2,"accessories.control.open")," ",t.service.values.CurrentPosition,"% ")}}function ra(e,n){e&1&&(c(0),p(1,"translate")),e&2&&b(" ",d(1,1,"accessories.control.open")," ")}function aa(e,n){if(e&1&&(a(0,"div",4),h(1,na,2,3),h(2,oa,2,4),h(3,ra,2,3),s()),e&2){let t=g();r(),C(t.service.values.CurrentPosition===0?1:-1),r(),C(t.service.values.CurrentPosition>0&&t.service.values.CurrentPosition<100?2:-1),r(),C(t.service.values.CurrentPosition===100?3:-1)}}function sa(e,n){e&1&&(a(0,"div",5),c(1),p(2,"translate"),s()),e&2&&(r(),b("",d(2,1,"accessories.control.opening"),"..."))}function la(e,n){e&1&&(a(0,"div",5),c(1),p(2,"translate"),s()),e&2&&(r(),b("",d(2,1,"accessories.control.closing"),"..."))}var mn=(()=>{class e{$modal=A(ee);service;onClick(){this.service.values.TargetPosition?this.service.getCharacteristic("TargetPosition").setValue(0):this.service.getCharacteristic("TargetPosition").setValue(100)}onLongClick(){let t=this.$modal.open(dn,{size:"md",backdrop:"static"});t.componentInstance.service=this.service}static \u0275fac=function(o){return new(o||e)};static \u0275cmp=T({type:e,selectors:[["app-door"]],inputs:{service:"service"},decls:9,vars:9,consts:[["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),h(2,ta,1,2,"div",2),h(3,ia,1,2,"div",2),a(4,"div",3),c(5),s(),h(6,aa,4,3,"div",4),h(7,sa,3,3,"div",5),h(8,la,3,3,"div",5),s()()),o&2&&(m("ngClass",q(7,ea,i.service.values.TargetPosition)),r(2),C(i.service.values.TargetPosition?-1:2),r(),C(i.service.values.TargetPosition?3:-1),r(2),y(i.service.customName||i.service.serviceName),r(),C(i.service.values.PositionState===2?6:-1),r(),C(i.service.values.PositionState===1?7:-1),r(),C(i.service.values.PositionState===0?8:-1))},dependencies:[K,E,R,N,V],encapsulation:2})}return e})();var un=(e,n)=>({"fa-check-circle":e,"fa-blank":n}),vn=(e,n)=>({"btn-primary":e,"btn-elegant":n});function ca(e,n){if(e&1){let t=O();a(0,"h6",12),c(1),p(2,"translate"),s(),a(3,"div",13)(4,"button",14),S("click",function(){P(t);let i=g();return B(i.setRotationDirection(0))}),c(5),p(6,"translate"),s(),a(7,"button",14),S("click",function(){P(t);let i=g();return B(i.setRotationDirection(1))}),c(8),p(9,"translate"),s()()}if(e&2){let t=g();r(),y(d(2,5,"accessories.control.rotation_direction")),r(3),m("ngClass",w(11,vn,t.service.values.RotationDirection===0,t.service.values.RotationDirection!==0)),r(),b(" ",d(6,7,"accessories.control.rotation_clockwise")," "),r(2),m("ngClass",w(14,vn,t.service.values.RotationDirection===1,t.service.values.RotationDirection!==1)),r(),b(" ",d(9,9,"accessories.control.rotation_c_clockwise")," ")}}function pa(e,n){e&1&&c(0,"%")}function da(e,n){if(e&1){let t=O();a(0,"h6",12),c(1),p(2,"translate"),h(3,pa,1,0),s(),a(4,"nouislider",15),$("ngModelChange",function(i){P(t);let l=g();return z(l.targetRotationSpeed.value,i)||(l.targetRotationSpeed.value=i),B(i)}),S("ngModelChange",function(){P(t);let i=g();return B(i.onTargetRotationSpeedChange())}),s()}if(e&2){let t=g();r(),j(" ",d(2,7,"accessories.control.rotation_speed"),": ",t.targetRotationSpeed.value),r(2),C(t.targetRotationSpeed.unit==="percentage"?3:-1),r(),m("min",t.targetRotationSpeed.min)("max",t.targetRotationSpeed.max)("step",t.targetRotationSpeed.step),W("ngModel",t.targetRotationSpeed.value)}}var gn=(()=>{class e{$activeModal=A(Y);service;targetMode;targetRotationSpeed;targetRotationSpeedChanged=new ie;hasRotationDirection=!1;constructor(){this.targetRotationSpeedChanged.pipe(ne(500)).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)}setTargetMode(t,o){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),o.target.blur()}onTargetRotationSpeedChange(){this.targetRotationSpeedChanged.next(this.targetRotationSpeed.value)}setRotationDirection(t){this.service.getCharacteristic("RotationDirection").setValue(t)}dismissModal(){this.$activeModal.dismiss("Dismiss")}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))}static \u0275fac=function(o){return new(o||e)};static \u0275cmp=T({type:e,selectors:[["ng-component"]],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),v(2,"h5",2),a(3,"button",3),p(4,"translate"),S("click",function(){return i.dismissModal()}),s()(),a(5,"div",4)(6,"div",5)(7,"button",6),S("click",function(_){return i.setTargetMode(0,_)}),a(8,"div",7),v(9,"i",8),s(),c(10),p(11,"translate"),a(12,"div",9),v(13,"i",10),s()(),a(14,"button",6),S("click",function(_){return i.setTargetMode(1,_)}),a(15,"div",7),v(16,"i",8),s(),c(17),p(18,"translate"),a(19,"div",9),v(20,"i",10),s()()(),h(21,ca,10,17),h(22,da,5,9),s(),v(23,"div",11),s()),o&2&&(r(2),m("innerText",i.service.customName||i.service.serviceName),r(),M("aria-label",d(4,8,"form.button_close")),r(6),m("ngClass",w(14,un,i.targetMode===0,i.targetMode!==0)),r(),b(" ",d(11,10,"accessories.control.off")," "),r(6),m("ngClass",w(17,un,i.targetMode===1,i.targetMode!==1)),r(),b(" ",d(18,12,"accessories.control.on")," "),r(4),C(i.hasRotationDirection?21:-1),r(),C(i.targetRotationSpeed?22:-1))},dependencies:[X,re,ae,se,V,E],encapsulation:2})}return e})();var ma=e=>({"switch-on":e}),ua=(e,n)=>({spin:e,"spin-counter":n});function va(e,n){e&1&&v(0,"img",2)}function ga(e,n){if(e&1&&v(0,"img",3),e&2){let t=g();m("ngClass",w(1,ua,!t.hasRotationDirection||t.hasRotationDirection&&t.service.values.RotationDirection===0,t.hasRotationDirection&&t.service.values.RotationDirection===1))}}function fa(e,n){if(e&1&&(v(0,"div",5),p(1,"translate")),e&2){let t=g();m("innerText",d(1,1,t.service.values.Active?"accessories.control.on":"accessories.control.off"))}}function ha(e,n){if(e&1&&(a(0,"div",6),c(1),s()),e&2){let t=g();r(),j("",t.service.values.RotationSpeed,"",t.rotationSpeedUnit)}}var fn=(()=>{class e{$modal=A(ee);service;rotationSpeedUnit="";hasRotationDirection=!1;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(gn,{size:"md",backdrop:"static"});t.componentInstance.service=this.service}static \u0275fac=function(o){return new(o||e)};static \u0275cmp=T({type:e,selectors:[["app-fan-v2"]],inputs:{service:"service"},decls:8,vars:8,consts:[["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 (Off)",1,"accessory-img"],["src","/assets/hap-icons/fan-on.svg","alt","Fan (On)",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),h(2,va,1,0,"img",2),h(3,ga,1,4,"img",3),a(4,"div",4),c(5),s(),h(6,fa,2,3,"div",5),h(7,ha,2,2,"div",6),s()()),o&2&&(m("ngClass",q(6,ma,i.service.values.Active)),r(2),C(i.service.values.Active?-1:2),r(),C(i.service.values.Active?3:-1),r(2),y(i.service.customName||i.service.serviceName),r(),C(!i.service.values.RotationSpeed||!i.service.values.Active?6:-1),r(),C(i.service.values.RotationSpeed&&i.service.values.Active?7:-1))},dependencies:[K,E,V],encapsulation:2})}return e})();var Ct=(e,n)=>({"fa-check-circle":e,"fa-blank":n});function Ca(e,n){if(e&1){let t=O();a(0,"h6",12),c(1),p(2,"translate"),s(),a(3,"div",13)(4,"button",6),S("click",function(i){P(t);let l=g();return B(l.setRotationDirection(0,i))}),a(5,"div",7),v(6,"i",8),s(),c(7),p(8,"translate"),a(9,"div",9),v(10,"i",10),s()(),a(11,"button",6),S("click",function(i){P(t);let l=g();return B(l.setRotationDirection(1,i))}),a(12,"div",7),v(13,"i",8),s(),c(14),p(15,"translate"),a(16,"div",9),v(17,"i",10),s()()()}if(e&2){let t=g();r(),y(d(2,5,"accessories.control.rotation_direction")),r(5),m("ngClass",w(11,Ct,t.service.values.RotationDirection===0,t.service.values.RotationDirection!==0)),r(),b(" ",d(8,7,"accessories.control.rotation_clockwise")," "),r(6),m("ngClass",w(14,Ct,t.service.values.RotationDirection===1,t.service.values.RotationDirection!==1)),r(),b(" ",d(15,9,"accessories.control.rotation_c_clockwise")," ")}}function _a(e,n){e&1&&c(0,"%")}function xa(e,n){if(e&1){let t=O();a(0,"h6",12),c(1),p(2,"translate"),h(3,_a,1,0),s(),a(4,"nouislider",14),$("ngModelChange",function(i){P(t);let l=g();return z(l.targetRotationSpeed.value,i)||(l.targetRotationSpeed.value=i),B(i)}),S("ngModelChange",function(){P(t);let i=g();return B(i.onTargetRotationSpeedChange())}),s()}if(e&2){let t=g();r(),j(" ",d(2,7,"accessories.control.rotation_speed"),": ",t.targetRotationSpeed.value),r(2),C(t.targetRotationSpeed.unit==="percentage"?3:-1),r(),m("min",t.targetRotationSpeed.min)("max",t.targetRotationSpeed.max)("step",t.targetRotationSpeed.step),W("ngModel",t.targetRotationSpeed.value)}}var hn=(()=>{class e{$activeModal=A(Y);service;targetMode;targetRotationSpeed;targetRotationSpeedChanged=new ie;hasRotationDirection=!1;constructor(){this.targetRotationSpeedChanged.pipe(ne(500)).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)}setTargetMode(t,o){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),o.target.blur()}onTargetRotationSpeedChange(){this.targetRotationSpeedChanged.next(this.targetRotationSpeed.value)}setRotationDirection(t,o){this.service.getCharacteristic("RotationDirection").setValue(t),o.target.blur()}dismissModal(){this.$activeModal.dismiss("Dismiss")}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))}static \u0275fac=function(o){return new(o||e)};static \u0275cmp=T({type:e,selectors:[["ng-component"]],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),v(2,"h5",2),a(3,"button",3),p(4,"translate"),S("click",function(){return i.dismissModal()}),s()(),a(5,"div",4)(6,"div",5)(7,"button",6),S("click",function(_){return i.setTargetMode(!1,_)}),a(8,"div",7),v(9,"i",8),s(),c(10),p(11,"translate"),a(12,"div",9),v(13,"i",10),s()(),a(14,"button",6),S("click",function(_){return i.setTargetMode(!0,_)}),a(15,"div",7),v(16,"i",8),s(),c(17),p(18,"translate"),a(19,"div",9),v(20,"i",10),s()()(),h(21,Ca,18,17),h(22,xa,5,9),s(),v(23,"div",11),s()),o&2&&(r(2),m("innerText",i.service.customName||i.service.serviceName),r(),M("aria-label",d(4,8,"form.button_close")),r(6),m("ngClass",w(14,Ct,!i.targetMode,i.targetMode)),r(),b(" ",d(11,10,"accessories.control.off")," "),r(6),m("ngClass",w(17,Ct,i.targetMode,!i.targetMode)),r(),b(" ",d(18,12,"accessories.control.on")," "),r(4),C(i.hasRotationDirection?21:-1),r(),C(i.targetRotationSpeed?22:-1))},dependencies:[X,re,ae,se,V,E],encapsulation:2})}return e})();var Sa=e=>({"switch-on":e}),ya=(e,n)=>({spin:e,"spin-counter":n});function ba(e,n){e&1&&v(0,"img",2)}function Ta(e,n){if(e&1&&v(0,"img",3),e&2){let t=g();m("ngClass",w(1,ya,!t.hasRotationDirection||t.hasRotationDirection&&t.service.values.RotationDirection===0,!t.hasRotationDirection||t.hasRotationDirection&&t.service.values.RotationDirection===1))}}function Ma(e,n){if(e&1&&(v(0,"div",5),p(1,"translate")),e&2){let t=g();m("innerText",d(1,1,t.service.values.On?"accessories.control.on":"accessories.control.off"))}}function ka(e,n){if(e&1&&(a(0,"div",6),c(1),s()),e&2){let t=g();r(),j("",t.service.values.RotationSpeed,"",t.rotationSpeedUnit)}}var Cn=(()=>{class e{$modal=A(ee);service;rotationSpeedUnit="";hasRotationDirection=!1;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(hn,{size:"md",backdrop:"static"});t.componentInstance.service=this.service}static \u0275fac=function(o){return new(o||e)};static \u0275cmp=T({type:e,selectors:[["app-fan"]],inputs:{service:"service"},decls:8,vars:8,consts:[["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 (Off)",1,"accessory-img"],["src","/assets/hap-icons/fan-on.svg","alt","Fan (On)",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),h(2,ba,1,0,"img",2),h(3,Ta,1,4,"img",3),a(4,"div",4),c(5),s(),h(6,Ma,2,3,"div",5),h(7,ka,2,2,"div",6),s()()),o&2&&(m("ngClass",q(6,Sa,i.service.values.On)),r(2),C(i.service.values.On?-1:2),r(),C(i.service.values.On?3:-1),r(2),y(i.service.customName||i.service.serviceName),r(),C(!i.service.values.RotationSpeed||!i.service.values.On?6:-1),r(),C(i.service.values.RotationSpeed&&i.service.values.On?7:-1))},dependencies:[K,E,V],encapsulation:2})}return e})();var _n=(()=>{class e{$activeModal=A(Y);service;targetMode;ngOnInit(){setTimeout(()=>{document.querySelectorAll(".noUi-target").forEach(o=>{o.style.background="linear-gradient(to right, #8B4513, #4169E1)"})},10)}resetFilterLife(t){this.service.getCharacteristic("ResetFilterIndication").setValue(1),t.target.blur()}dismissModal(){this.$activeModal.dismiss("Dismiss")}static \u0275fac=function(o){return new(o||e)};static \u0275cmp=T({type:e,selectors:[["ng-component"]],inputs:{service:"service"},decls:15,vars:16,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,"mb-4"],[3,"ngModelChange","min","max","step","disabled","ngModel"],["role","group","aria-label","Fan Mode Control",1,"btn-group-vertical","d-flex","justify-content-center","mt-5","mb-0","p-0"],["type","button",1,"btn","mb-0","mx-0","p-3","btn-control",3,"click"],[1,"modal-footer"]],template:function(o,i){o&1&&(a(0,"div",0)(1,"div",1),v(2,"h5",2),a(3,"button",3),p(4,"translate"),S("click",function(){return i.dismissModal()}),s()(),a(5,"div",4)(6,"h6",5),c(7),p(8,"translate"),s(),a(9,"nouislider",6),$("ngModelChange",function(_){return z(i.service.values.FilterLifeLevel,_)||(i.service.values.FilterLifeLevel=_),_}),s(),a(10,"div",7)(11,"button",8),S("click",function(_){return i.resetFilterLife(_)}),c(12),p(13,"translate"),s()()(),v(14,"div",9),s()),o&2&&(r(2),m("innerText",i.service.customName||i.service.serviceName),r(),M("aria-label",d(4,10,"form.button_close")),r(4),j("",d(8,12,"accessories.control.filter_level"),": ",i.service.values.FilterLifeLevel,"%"),r(2),m("min",0)("max",100)("step",1)("disabled",!0),W("ngModel",i.service.values.FilterLifeLevel),r(3),b(" ",d(13,14,"form.button_reset")," "))},dependencies:[X,re,ae,se,V],encapsulation:2})}return e})();var wa=e=>({"red-text":e});function Va(e,n){e&1&&(c(0," \xB7 "),a(1,"span",6),c(2),p(3,"translate"),s()),e&2&&(r(2),y(d(3,1,"accessories.control.replace")))}var xn=(()=>{class e{$modal=A(ee);service;onClick(){let t=this.$modal.open(_n,{size:"md",backdrop:"static"});t.componentInstance.service=this.service}static \u0275fac=function(o){return new(o||e)};static \u0275cmp=T({type:e,selectors:[["app-filter-maintenance"]],inputs:{service:"service"},decls:9,vars:8,consts:[["tabindex","0",1,"accessory-box",3,"longClick","shortClick"],[1,"d-flex","flex-column","h-100"],[1,"accessory-svg",3,"inlineSVG"],[1,"accessory-label","mt-auto"],[1,"accessory-label","grey-text"],[3,"ngClass"],[1,"red-text"]],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),v(2,"div",2),a(3,"div",3),c(4),s(),a(5,"div",4)(6,"span",5),c(7),s(),h(8,Va,4,3),s()()()),o&2&&(r(2),m("inlineSVG","/assets/hap-icons/filter-maintenance.svg"),M("aria-label","Filter Maintenance"),r(2),y(i.service.customName||i.service.serviceName),r(2),m("ngClass",q(6,wa,i.service.values.FilterChangeIndication===1)),r(),b(" ",i.service.values.FilterLifeLevel,"% "),r(),C(i.service.values.FilterChangeIndication===1?8:-1))},dependencies:[R,N,E,V,K],encapsulation:2})}return e})();var Ea=e=>({"switch-on":e}),Da=(e,n)=>({"red-text":e,"grey-text":n});function Ia(e,n){if(e&1&&(v(0,"div",4),p(1,"translate")),e&2){let t=g();m("innerText",d(1,2,t.service.values.CurrentDoorState?"accessories.control.closed":"accessories.control.open"))("ngClass",w(4,Da,!t.service.values.CurrentDoorState,t.service.values.CurrentDoorState))}}function Pa(e,n){e&1&&(a(0,"div",5),c(1),p(2,"translate"),s()),e&2&&(r(),b("",d(2,1,"accessories.control.opening"),"..."))}function Ba(e,n){e&1&&(a(0,"div",5),c(1),p(2,"translate"),s()),e&2&&(r(),b("",d(2,1,"accessories.control.closing"),"..."))}function Aa(e,n){e&1&&(a(0,"div",5),c(1),p(2,"translate"),s()),e&2&&(r(),y(d(2,1,"accessories.control.stopped")))}var Sn=(()=>{class e{service;onClick(){this.service.getCharacteristic("TargetDoorState").setValue(this.service.values.TargetDoorState?0:1)}static \u0275fac=function(o){return new(o||e)};static \u0275cmp=T({type:e,selectors:[["app-garage-door-opener"]],inputs:{service:"service"},decls:9,vars:10,consts:[["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),v(2,"div",2),a(3,"div",3),c(4),s(),h(5,Ia,2,7,"div",4),h(6,Pa,3,3,"div",5),h(7,Ba,3,3,"div",5),h(8,Aa,3,3,"div",5),s()()),o&2&&(m("ngClass",q(8,Ea,i.service.values.CurrentDoorState===0||i.service.values.CurrentDoorState===2)),r(2),m("inlineSVG","/assets/hap-icons/garage-door.svg"),M("aria-label","Garage Door"),r(2),y(i.service.customName||i.service.serviceName),r(),C(i.service.values.CurrentDoorState<2?5:-1),r(),C(i.service.values.CurrentDoorState===2?6:-1),r(),C(i.service.values.CurrentDoorState===3?7:-1),r(),C(i.service.values.CurrentDoorState===4?8:-1))},dependencies:[K,E,R,N,V],encapsulation:2})}return e})();var Ha=(e,n,t)=>({cooling:e,heating:n,"no-current-state":t}),Xe=(e,n)=>({"fa-check-circle":e,"fa-blank":n});function La(e,n){if(e&1){let t=O();a(0,"button",7),S("click",function(i){P(t);let l=g(2);return B(l.setTargetMode(0,i))}),a(1,"div",8),v(2,"i",9),s(),c(3),p(4,"translate"),a(5,"div",10),v(6,"i",11),s()()}if(e&2){let t=g(2);r(2),m("ngClass",w(4,Xe,t.targetMode===0,t.targetMode!==0)),r(),b(" ",d(4,2,"accessories.control.auto")," ")}}function Fa(e,n){if(e&1){let t=O();a(0,"button",7),S("click",function(i){P(t);let l=g(2);return B(l.setTargetMode(1,i))}),a(1,"div",8),v(2,"i",9),s(),c(3),p(4,"translate"),a(5,"div",10),v(6,"i",11),s()()}if(e&2){let t=g(2);r(2),m("ngClass",w(4,Xe,t.targetMode===1,t.targetMode!==1)),r(),b(" ",d(4,2,"accessories.control.heat")," ")}}function Oa(e,n){if(e&1){let t=O();a(0,"button",7),S("click",function(i){P(t);let l=g(2);return B(l.setTargetMode(2,i))}),a(1,"div",8),v(2,"i",9),s(),c(3),p(4,"translate"),a(5,"div",10),v(6,"i",11),s()()}if(e&2){let t=g(2);r(2),m("ngClass",w(4,Xe,t.targetMode===2,t.targetMode!==2)),r(),b(" ",d(4,2,"accessories.control.cool")," ")}}function Na(e,n){if(e&1&&(a(0,"h6",13),c(1),p(2,"translate"),s(),a(3,"div",14),h(4,La,7,7,"button",15),h(5,Fa,7,7,"button",15),h(6,Oa,7,7,"button",15),s()),e&2){let t=g();r(),y(d(2,4,"accessories.control.mode")),r(3),C(t.targetStateValidValues.includes(0)?4:-1),r(),C(t.targetStateValidValues.includes(1)?5:-1),r(),C(t.targetStateValidValues.includes(2)?6:-1)}}function Ra(e,n){if(e&1){let t=O();a(0,"h6",16),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",17),$("ngModelChange",function(i){P(t);let l=g(2);return z(l.autoTemp,i)||(l.autoTemp=i),B(i)}),S("ngModelChange",function(){P(t);let i=g(2);return B(i.onAutoTemperatureStateChange())}),s()}if(e&2){let t=g(2);r(),ct(" ",d(2,9,"accessories.control.target_auto"),": ",oe(4,13,d(3,11,t.autoTemp[0]),"1.0-1"),"\xB0",d(5,16,t.temperatureUnits)," - ",oe(7,20,d(6,18,t.autoTemp[1]),"1.0-1"),"\xB0",d(8,23,t.temperatureUnits)," "),r(8),m("min",t.HeatingThresholdTemperature.minValue)("max",t.CoolingThresholdTemperature.maxValue)("step",t.CoolingThresholdTemperature.minStep),W("ngModel",t.autoTemp)}}function Ga(e,n){if(e&1){let t=O();a(0,"h6",13),c(1),p(2,"translate"),p(3,"convertTemp"),p(4,"number"),p(5,"uppercase"),s(),a(6,"nouislider",17),$("ngModelChange",function(i){P(t);let l=g(2);return z(l.targetHeatingTemp,i)||(l.targetHeatingTemp=i),B(i)}),S("ngModelChange",function(){P(t);let i=g(2);return B(i.onTemperatureStateChange())}),s()}if(e&2){let t=g(2);r(),Fe(" ",d(2,7,"accessories.control.target_auto"),": ",oe(4,11,d(3,9,t.targetHeatingTemp),"1.0-1"),"\xB0",d(5,14,t.temperatureUnits)," "),r(5),m("min",t.HeatingThresholdTemperature.minValue)("max",t.HeatingThresholdTemperature.maxValue)("step",t.HeatingThresholdTemperature.minStep),W("ngModel",t.targetHeatingTemp)}}function ja(e,n){if(e&1){let t=O();a(0,"h6",13),c(1),p(2,"translate"),p(3,"convertTemp"),p(4,"number"),p(5,"uppercase"),s(),a(6,"nouislider",17),$("ngModelChange",function(i){P(t);let l=g(2);return z(l.targetCoolingTemp,i)||(l.targetCoolingTemp=i),B(i)}),S("ngModelChange",function(){P(t);let i=g(2);return B(i.onTemperatureStateChange())}),s()}if(e&2){let t=g(2);r(),Fe(" ",d(2,7,"accessories.control.target_auto"),": ",oe(4,11,d(3,9,t.targetCoolingTemp),"1.0-1"),"\xB0",d(5,14,t.temperatureUnits)," "),r(5),m("min",t.CoolingThresholdTemperature.minValue)("max",t.CoolingThresholdTemperature.maxValue)("step",t.CoolingThresholdTemperature.minStep),W("ngModel",t.targetCoolingTemp)}}function Ua(e,n){if(e&1&&h(0,Ra,10,25)(1,Ga,7,16)(2,ja,7,16),e&2){let t=g();C(t.HeatingThresholdTemperature&&t.CoolingThresholdTemperature?0:t.HeatingThresholdTemperature&&!t.CoolingThresholdTemperature?1:!t.HeatingThresholdTemperature&&t.CoolingThresholdTemperature?2:-1)}}var yn=(()=>{class e{$activeModal=A(Y);$settings=A(Ie);service;temperatureUnits=this.$settings.env.temperatureUnits;targetState;targetMode;targetTemperatureChanged=new ie;targetStateValidValues=[];CoolingThresholdTemperature;HeatingThresholdTemperature;targetCoolingTemp;targetHeatingTemp;autoTemp;constructor(){this.targetTemperatureChanged.pipe(ne(500)).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.targetStateValidValues=this.service.getCharacteristic("TargetHeaterCoolerState").validValues,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)}setTargetState(t,o){this.targetState=t,this.service.getCharacteristic("Active").setValue(this.targetState),this.loadTargetTemperature(),o.target.blur()}setTargetMode(t,o){this.targetMode=t,this.service.getCharacteristic("TargetHeaterCoolerState").setValue(this.targetMode),this.loadTargetTemperature(),o.target.blur()}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)}dismissModal(){this.$activeModal.dismiss("Dismiss")}loadTargetTemperature(){this.targetCoolingTemp=this.service.getCharacteristic("CoolingThresholdTemperature")?.value,this.targetHeatingTemp=this.service.getCharacteristic("HeatingThresholdTemperature")?.value,this.autoTemp=[this.targetHeatingTemp,this.targetCoolingTemp]}static \u0275fac=function(o){return new(o||e)};static \u0275cmp=T({type:e,selectors:[["ng-component"]],inputs:{service:"service"},decls:28,vars:33,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"],[1,"modal-footer"],[1,"mt-4"],["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,"mt-4","mb-1"],[3,"ngModelChange","min","max","step","ngModel"]],template:function(o,i){o&1&&(a(0,"div",0)(1,"div",1),v(2,"h5",2),a(3,"button",3),p(4,"translate"),S("click",function(){return i.dismissModal()}),s()(),a(5,"div",4),v(6,"div",5),p(7,"convertTemp"),p(8,"number"),p(9,"uppercase"),a(10,"div",6)(11,"button",7),S("click",function(_){return i.setTargetState(0,_)}),a(12,"div",8),v(13,"i",9),s(),c(14),p(15,"translate"),a(16,"div",10),v(17,"i",11),s()(),a(18,"button",7),S("click",function(_){return i.setTargetState(1,_)}),a(19,"div",8),v(20,"i",9),s(),c(21),p(22,"translate"),a(23,"div",10),v(24,"i",11),s()()(),h(25,Na,7,6),h(26,Ua,3,1),s(),v(27,"div",12),s()),o&2&&(r(2),m("innerText",i.service.customName||i.service.serviceName),r(),M("aria-label",d(4,10,"form.button_close")),r(3),m("innerText",oe(8,14,d(7,12,i.service.values.CurrentTemperature),"1.0-1")+"\xB0"+d(9,17,i.temperatureUnits))("ngClass",we(23,Ha,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),m("ngClass",w(27,Xe,i.targetState===0,i.targetState!==0)),r(),b(" ",d(15,19,"accessories.control.off")," "),r(6),m("ngClass",w(30,Xe,i.targetState===1,i.targetState!==1)),r(),b(" ",d(22,21,"accessories.control.on")," "),r(4),C(i.targetStateValidValues.length?25:-1),r(),C(i.targetStateValidValues.includes(0)?26:-1))},dependencies:[E,X,re,ae,se,Te,V,Pe,De],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 Wa=e=>({"switch-on":e}),za=(e,n,t)=>({cooling:e,heating:n,"no-current-state":t});function $a(e,n){e&1&&(c(0),p(1,"translate")),e&2&&b(" ",d(1,1,"accessories.control.off")," ")}function qa(e,n){if(e&1&&(v(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=g(2);r(),Ai(" ",oe(3,6,d(2,4,t.service.values.HeatingThresholdTemperature),"1.0-1"),"\xB0",d(4,9,t.temperatureUnits)," - ",oe(6,13,d(5,11,t.service.values.CoolingThresholdTemperature),"1.0-1"),"\xB0",d(7,16,t.temperatureUnits)," ")}}function Ka(e,n){if(e&1&&(v(0,"i",5),c(1),p(2,"convertTemp"),p(3,"number"),p(4,"uppercase")),e&2){let t=g(2);r(),j(" ",oe(3,4,d(2,2,t.service.values.HeatingThresholdTemperature),"1.0-1"),"\xB0",d(4,7,t.temperatureUnits)," ")}}function Za(e,n){if(e&1&&(v(0,"i",5),c(1),p(2,"convertTemp"),p(3,"number"),p(4,"uppercase")),e&2){let t=g(2);r(),j(" ",oe(3,4,d(2,2,t.service.values.CoolingThresholdTemperature),"1.0-1"),"\xB0",d(4,7,t.temperatureUnits)," ")}}function Qa(e,n){if(e&1&&h(0,qa,8,18)(1,Ka,5,9)(2,Za,5,9),e&2){let t=g();C(t.hasHeating&&t.hasCooling?0:t.hasHeating&&!t.hasCooling?1:!t.hasHeating&&t.hasCooling?2:-1)}}function Ja(e,n){e&1&&(c(0),p(1,"translate")),e&2&&b(" ",d(1,1,"accessories.control.heat")," ")}function Xa(e,n){e&1&&(c(0),p(1,"translate")),e&2&&b(" ",d(1,1,"accessories.control.cool")," ")}function Ya(e,n){e&1&&(c(0),p(1,"translate")),e&2&&b(" ",d(1,1,"accessories.control.on")," ")}var bn=(()=>{class e{$modal=A(ee);$settings=A(Ie);service;temperatureUnits=this.$settings.env.temperatureUnits;hasHeating=!1;hasCooling=!1;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(yn,{size:"md",backdrop:"static"});t.componentInstance.service=this.service}static \u0275fac=function(o){return new(o||e)};static \u0275cmp=T({type:e,selectors:[["app-heater-cooler"]],inputs:{service:"service"},decls:14,vars:18,consts:[["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),v(2,"div",2),p(3,"convertTemp"),p(4,"number"),p(5,"uppercase"),a(6,"div",3),c(7),s(),a(8,"div",4),h(9,$a,2,3)(10,Qa,3,1)(11,Ja,2,3)(12,Xa,2,3)(13,Ya,2,3),s()()()),o&2&&(m("ngClass",q(12,Wa,i.service.values.Active===1)),r(2),m("innerText",oe(4,7,d(3,5,i.service.values.CurrentTemperature),"1.0-1")+"\xB0"+d(5,10,i.temperatureUnits))("ngClass",we(14,za,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),y(i.service.customName||i.service.serviceName),r(2),C(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:[K,E,Te,V,Pe,De],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 es=(e,n,t)=>({dehumidifying:e,humidifying:n,"no-current-state":t}),Ye=(e,n)=>({"fa-check-circle":e,"fa-blank":n});function ts(e,n){if(e&1){let t=O();a(0,"button",8),S("click",function(i){P(t);let l=g(2);return B(l.setTargetMode(0,i))}),a(1,"div",9),v(2,"i",10),s(),c(3),p(4,"translate"),a(5,"div",11),v(6,"i",12),s()()}if(e&2){let t=g(2);r(2),m("ngClass",w(4,Ye,t.targetMode===0,t.targetMode!==0)),r(),b(" ",d(4,2,"accessories.control.auto")," ")}}function is(e,n){if(e&1){let t=O();a(0,"button",8),S("click",function(i){P(t);let l=g(2);return B(l.setTargetMode(1,i))}),a(1,"div",9),v(2,"i",10),s(),c(3),p(4,"translate"),a(5,"div",11),v(6,"i",12),s()()}if(e&2){let t=g(2);r(2),m("ngClass",w(4,Ye,t.targetMode===1,t.targetMode!==1)),r(),b(" ",d(4,2,"accessories.control.humidify")," ")}}function ns(e,n){if(e&1){let t=O();a(0,"button",8),S("click",function(i){P(t);let l=g(2);return B(l.setTargetMode(2,i))}),a(1,"div",9),v(2,"i",10),s(),c(3),p(4,"translate"),a(5,"div",11),v(6,"i",12),s()()}if(e&2){let t=g(2);r(2),m("ngClass",w(4,Ye,t.targetMode===2,t.targetMode!==2)),r(),b(" ",d(4,2,"accessories.control.dehumidify")," ")}}function os(e,n){if(e&1&&(a(0,"h6",14),c(1),p(2,"translate"),s(),a(3,"div",15),h(4,ts,7,7,"button",16),h(5,is,7,7,"button",16),h(6,ns,7,7,"button",16),s()),e&2){let t=g();r(),y(d(2,4,"accessories.control.mode")),r(3),C(t.targetStateValidValues.includes(0)?4:-1),r(),C(t.targetStateValidValues.includes(1)?5:-1),r(),C(t.targetStateValidValues.includes(2)?6:-1)}}function rs(e,n){if(e&1){let t=O();a(0,"h6",14),c(1),p(2,"translate"),s(),a(3,"nouislider",17),$("ngModelChange",function(i){P(t);let l=g(2);return z(l.autoHumidity,i)||(l.autoHumidity=i),B(i)}),S("ngModelChange",function(){P(t);let i=g(2);return B(i.onAutoHumidityStateChange())}),s()}if(e&2){let t=g(2);r(),Fe(" ",d(2,7,"accessories.control.target_auto"),": ",t.autoHumidity[0],"% - ",t.autoHumidity[1],"% "),r(2),m("min",t.RelativeHumidityHumidifierThreshold.minValue)("max",t.RelativeHumidityDehumidifierThreshold.maxValue)("step",t.RelativeHumidityDehumidifierThreshold.minStep),W("ngModel",t.autoHumidity)}}function as(e,n){if(e&1){let t=O();a(0,"h6",14),c(1),p(2,"translate"),s(),a(3,"nouislider",17),$("ngModelChange",function(i){P(t);let l=g(2);return z(l.targetHumidifierHumidity,i)||(l.targetHumidifierHumidity=i),B(i)}),S("ngModelChange",function(){P(t);let i=g(2);return B(i.onHumidityStateChange())}),s()}if(e&2){let t=g(2);r(),j("",d(2,6,"accessories.control.target_auto"),": ",t.targetHumidifierHumidity,"%"),r(2),m("min",t.RelativeHumidityHumidifierThreshold.minValue)("max",t.RelativeHumidityHumidifierThreshold.maxValue)("step",t.RelativeHumidityHumidifierThreshold.minStep),W("ngModel",t.targetHumidifierHumidity)}}function ss(e,n){if(e&1){let t=O();a(0,"h6",14),c(1),p(2,"translate"),s(),a(3,"nouislider",17),$("ngModelChange",function(i){P(t);let l=g(2);return z(l.targetDehumidifierHumidity,i)||(l.targetDehumidifierHumidity=i),B(i)}),S("ngModelChange",function(){P(t);let i=g(2);return B(i.onHumidityStateChange())}),s()}if(e&2){let t=g(2);r(),j("",d(2,6,"accessories.control.target_auto"),": ",t.targetDehumidifierHumidity,"%"),r(2),m("min",t.RelativeHumidityDehumidifierThreshold.minValue)("max",t.RelativeHumidityDehumidifierThreshold.maxValue)("step",t.RelativeHumidityDehumidifierThreshold.minStep),W("ngModel",t.targetDehumidifierHumidity)}}function ls(e,n){if(e&1&&h(0,rs,4,9)(1,as,4,8)(2,ss,4,8),e&2){let t=g();C(t.RelativeHumidityHumidifierThreshold&&t.RelativeHumidityDehumidifierThreshold?0:t.RelativeHumidityHumidifierThreshold&&!t.RelativeHumidityDehumidifierThreshold?1:!t.RelativeHumidityHumidifierThreshold&&t.RelativeHumidityDehumidifierThreshold?2:-1)}}var Tn=(()=>{class e{$activeModal=A(Y);service;targetState;targetMode;targetHumidityChanged=new ie;targetStateValidValues=[];RelativeHumidityDehumidifierThreshold;RelativeHumidityHumidifierThreshold;targetDehumidifierHumidity;targetHumidifierHumidity;autoHumidity;constructor(){this.targetHumidityChanged.pipe(ne(500)).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.targetStateValidValues=this.service.getCharacteristic("TargetHumidifierDehumidifierState").validValues,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(){this.targetDehumidifierHumidity=this.service.getCharacteristic("RelativeHumidityDehumidifierThreshold")?.value,this.targetHumidifierHumidity=this.service.getCharacteristic("RelativeHumidityHumidifierThreshold")?.value,this.autoHumidity=[this.targetHumidifierHumidity,this.targetDehumidifierHumidity]}setTargetState(t,o){this.targetState=t,this.service.getCharacteristic("Active").setValue(this.targetState),this.loadTargetHumidity(),o.target.blur()}setTargetMode(t,o){this.targetMode=t,this.service.getCharacteristic("TargetHumidifierDehumidifierState").setValue(this.targetMode),this.loadTargetHumidity(),o.target.blur()}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)}dismissModal(){this.$activeModal.dismiss("Dismiss")}static \u0275fac=function(o){return new(o||e)};static \u0275cmp=T({type:e,selectors:[["ng-component"]],inputs:{service:"service"},decls:26,vars:26,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"],[1,"modal-footer"],[1,"mt-4"],["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"],[3,"ngModelChange","min","max","step","ngModel"]],template:function(o,i){o&1&&(a(0,"div",0)(1,"div",1),v(2,"h5",2),a(3,"button",3),p(4,"translate"),S("click",function(){return i.dismissModal()}),s()(),a(5,"div",4)(6,"div",5),v(7,"div",6),s(),a(8,"div",7)(9,"button",8),S("click",function(_){return i.setTargetState(0,_)}),a(10,"div",9),v(11,"i",10),s(),c(12),p(13,"translate"),a(14,"div",11),v(15,"i",12),s()(),a(16,"button",8),S("click",function(_){return i.setTargetState(1,_)}),a(17,"div",9),v(18,"i",10),s(),c(19),p(20,"translate"),a(21,"div",11),v(22,"i",12),s()()(),h(23,os,7,6),h(24,ls,3,1),s(),v(25,"div",13),s()),o&2&&(r(2),m("innerText",i.service.customName||i.service.serviceName),r(),M("aria-label",d(4,10,"form.button_close")),r(3),m("ngClass",we(16,es,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(),m("innerText",i.service.values.CurrentRelativeHumidity+"%"),r(4),m("ngClass",w(20,Ye,i.targetState===0,i.targetState!==0)),r(),b(" ",d(13,12,"accessories.control.off")," "),r(6),m("ngClass",w(23,Ye,i.targetState===1,i.targetState!==1)),r(),b(" ",d(20,14,"accessories.control.on")," "),r(4),C(i.targetStateValidValues.length?23:-1),r(),C(i.targetStateValidValues.includes(0)?24:-1))},dependencies:[E,X,re,ae,se,V],styles:[".humidity-drop[_ngcontent-%COMP%]{position:relative;display:inline-block;width:50px;height:50px;line-height:45px;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:29px;font-size:10px;margin-bottom:7px;margin-top:5px}.humidity-drop-collapse[_ngcontent-%COMP%] .humidity-drop-text[_ngcontent-%COMP%]{margin-left:0}}.humidity-drop-text[_ngcontent-%COMP%]{transform:rotate(-45deg);margin-left:-4px}.humidity-drop-big[_ngcontent-%COMP%]{width:80px;height:80px;line-height:76px;font-size:22px}.humidity-drop-big[_ngcontent-%COMP%] .humidity-drop-text[_ngcontent-%COMP%]{margin-left:-3px}@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 cs=e=>({"switch-on":e}),ps=(e,n,t)=>({dehumidifying:e,humidifying:n,"no-current-state":t});function ds(e,n){e&1&&(c(0),p(1,"translate")),e&2&&b(" ",d(1,1,"accessories.control.off")," ")}function ms(e,n){if(e&1&&(v(0,"i",6),c(1)),e&2){let t=g(2);r(),j(" ",t.service.values.RelativeHumidityHumidifierThreshold,"% - ",t.service.values.RelativeHumidityDehumidifierThreshold,"% ")}}function us(e,n){if(e&1&&(v(0,"i",6),c(1)),e&2){let t=g(2);r(),b(" ",t.service.values.RelativeHumidityHumidifierThreshold,"% ")}}function vs(e,n){if(e&1&&(v(0,"i",6),c(1)),e&2){let t=g(2);r(),b(" ",t.service.values.RelativeHumidityDehumidifierThreshold,"% ")}}function gs(e,n){if(e&1&&h(0,ms,2,2)(1,us,2,1)(2,vs,2,1),e&2){let t=g();C(t.hasHumidifier&&t.hasDehumidifier?0:t.hasHumidifier&&!t.hasDehumidifier?1:!t.hasHumidifier&&t.hasDehumidifier?2:-1)}}function fs(e,n){e&1&&(c(0),p(1,"translate")),e&2&&b(" ",d(1,1,"accessories.control.humidify")," ")}function hs(e,n){e&1&&(c(0),p(1,"translate")),e&2&&b(" ",d(1,1,"accessories.control.dehumidify")," ")}function Cs(e,n){e&1&&(c(0),p(1,"translate")),e&2&&b(" ",d(1,1,"accessories.control.on")," ")}var Mn=(()=>{class e{$modal=A(ee);service;hasHumidifier=!1;hasDehumidifier=!1;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(Tn,{size:"md",backdrop:"static"});t.componentInstance.service=this.service}static \u0275fac=function(o){return new(o||e)};static \u0275cmp=T({type:e,selectors:[["app-humidifier-dehumidifier"]],inputs:{service:"service"},decls:12,vars:11,consts:[["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),v(3,"div",3),s(),a(4,"div",4),c(5),s(),a(6,"div",5),h(7,ds,2,3)(8,gs,3,1)(9,fs,2,3)(10,hs,2,3)(11,Cs,2,3),s()()()),o&2&&(m("ngClass",q(5,cs,i.service.values.Active===1)),r(2),m("ngClass",we(7,ps,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(),m("innerText",i.service.values.CurrentRelativeHumidity+"%"),r(2),y(i.service.customName||i.service.serviceName),r(2),C(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:[K,E,V],styles:[".humidity-drop[_ngcontent-%COMP%]{position:relative;display:inline-block;width:50px;height:50px;line-height:45px;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:29px;font-size:10px;margin-bottom:7px;margin-top:5px}.humidity-drop-collapse[_ngcontent-%COMP%] .humidity-drop-text[_ngcontent-%COMP%]{margin-left:0}}.humidity-drop-text[_ngcontent-%COMP%]{transform:rotate(-45deg);margin-left:-4px}.humidity-drop-big[_ngcontent-%COMP%]{width:80px;height:80px;line-height:76px;font-size:22px}.humidity-drop-big[_ngcontent-%COMP%] .humidity-drop-text[_ngcontent-%COMP%]{margin-left:-3px}@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 kn=(()=>{class e{service;static \u0275fac=function(o){return new(o||e)};static \u0275cmp=T({type:e,selectors:[["app-humidity-sensor"]],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),v(3,"div",3),s(),a(4,"div",4),c(5),s()()()),o&2&&(r(3),m("innerText",(typeof i.service.values.CurrentRelativeHumidity=="number"?i.service.values.CurrentRelativeHumidity:"?")+"%"),r(2),y(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 _s=(e,n)=>({"switch-on":e,"switch-off":n});function xs(e,n){e&1&&(a(0,"div",4),c(1),p(2,"translate"),s()),e&2&&(r(),y(d(2,1,"accessories.control.running")))}function Ss(e,n){e&1&&(a(0,"div",4),c(1),p(2,"translate"),s()),e&2&&(r(),y(d(2,1,"accessories.control.off")))}var wn=(()=>{class e{service;static \u0275fac=function(o){return new(o||e)};static \u0275cmp=T({type:e,selectors:[["app-irrigation-system"]],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","grey-text"]],template:function(o,i){o&1&&(a(0,"div",0)(1,"div",1),v(2,"div",2),a(3,"div",3),c(4),s(),h(5,xs,3,3,"div",4),h(6,Ss,3,3,"div",4),s()()),o&2&&(m("ngClass",w(6,_s,i.service.values.InUse,!i.service.values.InUse)),r(2),m("inlineSVG","/assets/hap-icons/irrigation-system.svg"),M("aria-label","Irrigation System"),r(2),b(" ",i.service.customName||i.service.values.ConfiguredName||i.service.serviceName," "),r(),C(i.service.values.InUse?5:-1),r(),C(i.service.values.InUse?-1:6))},dependencies:[E,R,N,V],styles:[".switch-off svg .valve_off_hidden{display:none} .switch-off svg .valve_off_grey{fill:gray}"]})}return e})();var ys=(e,n)=>({"switch-on":e,"switch-off":n});function bs(e,n){e&1&&(a(0,"div",4),c(1),p(2,"translate"),s()),e&2&&(r(),y(d(2,1,"accessories.control.detected")))}function Ts(e,n){e&1&&(a(0,"div",5),c(1),p(2,"translate"),s()),e&2&&(r(),y(d(2,1,"accessories.control.not_detected")))}var Vn=(()=>{class e{service;static \u0275fac=function(o){return new(o||e)};static \u0275cmp=T({type:e,selectors:[["app-leak-sensor"]],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),v(2,"div",2),a(3,"div",3),c(4),s(),h(5,bs,3,3,"div",4),h(6,Ts,3,3,"div",5),s()()),o&2&&(m("ngClass",w(6,ys,i.service.values.LeakDetected,!i.service.values.LeakDetected)),r(2),m("inlineSVG","/assets/hap-icons/leak-sensor.svg"),M("aria-label","Leak Sensor"),r(2),y(i.service.customName||i.service.serviceName),r(),C(i.service.values.LeakDetected?5:-1),r(),C(i.service.values.LeakDetected?-1:6))},dependencies:[E,R,N,V],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 En=(e,n)=>({"fa-check-circle":e,"fa-blank":n}),Ms=(e,n)=>({"off-text":e,"on-text":n}),Kt=(e,n)=>({"mb-1":e,"":n});function ks(e,n){e&1&&v(0,"div")}function ws(e,n){if(e&1&&(a(0,"div",11)(1,"div",13)(2,"div",7),v(3,"i",14),s(),c(4),p(5,"translate"),a(6,"div",9),v(7,"i",10),s()()()),e&2){let t=g();r(3),m("ngClass",w(5,Ms,!t.isAdaptiveLightingEnabled,t.isAdaptiveLightingEnabled)),r(),j(" ",d(5,3,"accessories.control.adaptive_lighting"),": ",t.isAdaptiveLightingEnabled?"ON":"OFF"," ")}}function Vs(e,n){if(e&1){let t=O();a(0,"h6",15),c(1),p(2,"translate"),s(),a(3,"nouislider",16),$("ngModelChange",function(i){P(t);let l=g();return z(l.targetBrightness.value,i)||(l.targetBrightness.value=i),B(i)}),S("ngModelChange",function(){P(t);let i=g();return B(i.onBrightnessStateChange())}),s()}if(e&2){let t=g();r(),j("",d(2,6,"accessories.control.brightness"),": ",t.targetBrightness.value,"%"),r(2),m("min",t.targetBrightness.min)("max",t.targetBrightness.max)("step",t.targetBrightness.step),W("ngModel",t.targetBrightness.value)}}function Es(e,n){e&1&&(a(0,"div",18)(1,"span",19),c(2),p(3,"translate"),s()()),e&2&&(r(2),y(d(3,1,"accessories.control.adaptive_lighting_note")))}function Ds(e,n){if(e&1){let t=O();a(0,"h6",15),c(1),p(2,"translate"),s(),a(3,"nouislider",17),$("ngModelChange",function(i){P(t);let l=g();return z(l.targetHue.value,i)||(l.targetHue.value=i),B(i)}),S("ngModelChange",function(){P(t);let i=g();return B(i.onHueStateChange())}),s(),h(4,Es,4,3,"div",18)}if(e&2){let t=g();r(),j("",d(2,8,"accessories.control.hue"),": ",t.targetHue.value,"\xB0"),r(2),m("min",0)("max",360)("step",1),W("ngModel",t.targetHue.value),m("ngClass",w(10,Kt,t.isAdaptiveLightingEnabled,!t.isAdaptiveLightingEnabled)),r(),C(t.isAdaptiveLightingEnabled?4:-1)}}function Is(e,n){e&1&&(a(0,"div",18)(1,"span",19),c(2),p(3,"translate"),s()()),e&2&&(r(2),y(d(3,1,"accessories.control.adaptive_lighting_note")))}function Ps(e,n){if(e&1){let t=O();a(0,"h6",15),c(1),p(2,"translate"),s(),a(3,"nouislider",17),$("ngModelChange",function(i){P(t);let l=g();return z(l.targetSaturation.value,i)||(l.targetSaturation.value=i),B(i)}),S("ngModelChange",function(){P(t);let i=g();return B(i.onSaturationStateChange())}),s(),h(4,Is,4,3,"div",18)}if(e&2){let t=g();r(),j("",d(2,8,"accessories.control.saturation"),": ",t.targetSaturation.value,"%"),r(2),m("min",0)("max",100)("step",1),W("ngModel",t.targetSaturation.value),m("ngClass",w(10,Kt,t.isAdaptiveLightingEnabled,!t.isAdaptiveLightingEnabled)),r(),C(t.isAdaptiveLightingEnabled?4:-1)}}function Bs(e,n){e&1&&(a(0,"div",18)(1,"span",19),c(2),p(3,"translate"),s()()),e&2&&(r(2),y(d(3,1,"accessories.control.adaptive_lighting_note")))}function As(e,n){if(e&1){let t=O();a(0,"h6",15),c(1),p(2,"translate"),p(3,"convertMired"),s(),a(4,"nouislider",17),$("ngModelChange",function(i){P(t);let l=g();return z(l.targetColorTemperature.value,i)||(l.targetColorTemperature.value=i),B(i)}),S("ngModelChange",function(){P(t);let i=g();return B(i.onColorTemperatureStateChange())}),s(),h(5,Bs,4,3,"div",18)}if(e&2){let t=g();r(),j(" ",d(2,8,"accessories.control.color_temperature"),": ",d(3,10,t.targetColorTemperature.mired)," "),r(3),m("min",t.targetColorTemperature.min)("max",t.targetColorTemperature.max)("step",t.targetColorTemperature.step),W("ngModel",t.targetColorTemperature.value),m("ngClass",w(12,Kt,t.isAdaptiveLightingEnabled,!t.isAdaptiveLightingEnabled)),r(),C(t.isAdaptiveLightingEnabled?5:-1)}}var Dn=(()=>{class e{$activeModal=A(Y);service;isAdaptiveLightingEnabled$;targetMode;targetBrightness;targetBrightnessChanged=new ie;targetHue;targetHueChanged=new ie;targetSaturation;targetSaturationChanged=new ie;targetColorTemperature;targetColorTemperatureChanged=new ie;hasAdaptiveLighting=!1;isAdaptiveLightingEnabled=!1;sliderIndex=0;constructor(){this.targetBrightnessChanged.pipe(ne(500)).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.targetHueChanged.pipe(ne(500)).subscribe(()=>{this.service.getCharacteristic("Hue").setValue(this.targetHue.value)}),this.targetSaturationChanged.pipe(ne(500)).subscribe(()=>{this.service.getCharacteristic("Saturation").setValue(this.targetSaturation.value)}),this.targetColorTemperatureChanged.pipe(ne(500)).subscribe(t=>{this.service.getCharacteristic("ColorTemperature").setValue(t)})}ngOnInit(){this.targetMode=this.service.values.On,this.loadTargetBrightness(),this.loadTargetHue(),this.loadTargetSaturation(),this.loadTargetColorTemperature()}setTargetMode(t,o){this.targetMode=t,this.service.getCharacteristic("On").setValue(this.targetMode),this.targetMode&&this.targetBrightness&&!this.targetBrightness.value&&(this.targetBrightness.value=this.service.getCharacteristic("Brightness").maxValue),o.target.blur()}onBrightnessStateChange(){this.targetBrightnessChanged.next(this.targetBrightness.value)}onHueStateChange(){this.targetHueChanged.next(this.targetHue.value);let t=document.querySelectorAll(".noUi-target")[this.sliderIndex-1];if(t){let o=this.targetHue.value;t.style.background=`linear-gradient(to right,
2
- hsl(${o}, 0%, 50%),
3
- hsl(${o}, 100%, 50%))`}}onSaturationStateChange(){this.targetSaturationChanged.next(this.targetSaturation.value)}onColorTemperatureStateChange(){let t=this.kelvinToMired(this.targetColorTemperature.value);this.targetColorTemperature.mired=t,this.targetColorTemperatureChanged.next(t)}dismissModal(){this.$activeModal.dismiss("Dismiss")}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")[this.sliderIndex];o&&(o.style.background="linear-gradient(to right, #242424, #ffd6aa)",this.sliderIndex+=1)},10))}loadTargetHue(){this.service.getCharacteristic("Hue")&&(this.targetHue={value:this.service.getCharacteristic("Hue").value},setTimeout(()=>{let o=document.querySelectorAll(".noUi-target")[this.sliderIndex];o&&(o.style.background=`linear-gradient(to right,
4
- hsl(0, 100%, 50%),
5
- hsl(60, 100%, 50%),
6
- hsl(120, 100%, 50%),
7
- hsl(180, 100%, 50%),
8
- hsl(240, 100%, 50%),
9
- hsl(300, 100%, 50%),
10
- hsl(360, 100%, 50%))`),this.sliderIndex+=1},10))}loadTargetSaturation(){this.service.getCharacteristic("Saturation")&&(this.targetSaturation={value:this.service.getCharacteristic("Saturation").value},setTimeout(()=>{let o=document.querySelectorAll(".noUi-target")[this.sliderIndex];if(o){let i=this.targetHue.value||0;o.style.background=`linear-gradient(to right,
11
- hsl(${i}, 0%, 50%),
12
- hsl(${i}, 100%, 50%))`}this.sliderIndex+=1},10))}loadTargetColorTemperature(){let t=this.service.getCharacteristic("ColorTemperature");t&&(this.targetColorTemperature={value:this.miredToKelvin(t.value),mired:t.value,min:this.miredToKelvin(t.maxValue),max:this.miredToKelvin(t.minValue),step:t.minStep},setTimeout(()=>{let o=document.querySelectorAll(".noUi-target")[this.sliderIndex];if(o){let i=this.kelvinToHsl(this.targetColorTemperature.min),l=this.kelvinToHsl(this.targetColorTemperature.max);o.style.background=`linear-gradient(to right, ${i}, ${l})`}},10),this.isAdaptiveLightingEnabled$&&(this.hasAdaptiveLighting=!0,this.isAdaptiveLightingEnabled$.subscribe(o=>{this.isAdaptiveLightingEnabled=o})))}miredToKelvin(t){return Math.round(1e6/t)}kelvinToMired(t){return Math.round(1e6/t)}kelvinToHsl(t){let o=t/100,i,l,_;o<=66?(i=255,l=Math.min(99.4708025861*Math.log(o)-161.1195681661,255),_=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),_=255),i/=255,l/=255,_/=255;let U=Math.max(i,l,_),Z=Math.min(i,l,_),F=U-Z,Q=0;F!==0&&(U===i?Q=(l-_)/F%6:U===l?Q=(_-i)/F+2:Q=(i-l)/F+4,Q=Math.round(Q*60),Q<0&&(Q+=360));let de=(U+Z)/2,_e=F===0?0:F/(1-Math.abs(2*de-1));return`hsl(${Math.round(Q)}, ${Math.round(_e*100)}%, ${Math.round(de*100)}%)`}static \u0275fac=function(o){return new(o||e)};static \u0275cmp=T({type:e,selectors:[["ng-component"]],inputs:{service:"service",isAdaptiveLightingEnabled$:"isAdaptiveLightingEnabled$"},decls:28,vars:24,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-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,"d-flex","justify-content-center","mb-0","p-0","mt-0","grey-outline"],[1,"modal-footer"],[1,"mb-0","mx-0","p-3","btn-read","w-100","no-round-top"],[1,"fas","fa-fw","fa-xl","fa-sun",3,"ngClass"],[1,"mt-4"],[3,"ngModelChange","min","max","step","ngModel"],[3,"ngModelChange","min","max","step","ngModel","ngClass"],[1,"d-flex","text-center","mt-0","mb-1"],[1,"grey-text","small"]],template:function(o,i){o&1&&(a(0,"div",0)(1,"div",1),v(2,"h5",2),a(3,"button",3),p(4,"translate"),S("click",function(){return i.dismissModal()}),s()(),a(5,"div",4)(6,"div",5)(7,"button",6),S("click",function(_){return i.setTargetMode(!1,_)}),a(8,"div",7),v(9,"i",8),s(),c(10),p(11,"translate"),a(12,"div",9),v(13,"i",10),s()(),a(14,"button",6),S("click",function(_){return i.setTargetMode(!0,_)}),a(15,"div",7),v(16,"i",8),s(),c(17),p(18,"translate"),a(19,"div",9),v(20,"i",10),s()(),h(21,ks,1,0,"div"),s(),h(22,ws,8,8,"div",11),h(23,Vs,4,8),h(24,Ds,5,13),h(25,Ps,5,13),h(26,As,6,15),s(),v(27,"div",12),s()),o&2&&(r(2),m("innerText",i.service.customName||i.service.serviceName),r(),M("aria-label",d(4,12,"form.button_close")),r(6),m("ngClass",w(18,En,!i.targetMode,i.targetMode)),r(),b(" ",d(11,14,"accessories.control.off")," "),r(6),m("ngClass",w(21,En,i.targetMode,!i.targetMode)),r(),b(" ",d(18,16,"accessories.control.on")," "),r(4),C(i.hasAdaptiveLighting?21:-1),r(),C(i.hasAdaptiveLighting?22:-1),r(),C(i.targetBrightness?23:-1),r(),C(i.targetHue?24:-1),r(),C(i.targetSaturation?25:-1),r(),C(i.targetColorTemperature?26:-1))},dependencies:[X,re,ae,se,V,E,Ni],encapsulation:2})}return e})();var Hs=e=>({"light-on":e});function Ls(e,n){if(e&1&&(v(0,"div",4),p(1,"translate")),e&2){let t=g();m("innerHTML",t.service.values.On?t.service.values.Brightness+"%"+(t.hasAdaptiveLighting?" \xB7 <i class='fa fa-sun "+(t.isAdaptiveLightingEnabled?"on-text":"grey-text")+"'></i>":""):d(1,1,"accessories.control.off"),Nt)}}function Fs(e,n){if(e&1&&(v(0,"div",4),p(1,"translate")),e&2){let t=g();m("innerHTML",d(1,1,t.service.values.On?"accessories.control.on"+(t.hasAdaptiveLighting?" \xB7 <i class='fa fa-sun "+(t.isAdaptiveLightingEnabled?"on-text":"grey-text")+"'></i>":""):"accessories.control.off"),Nt)}}var In=(()=>{class e{$modal=A(ee);intervalId;service;hasAdaptiveLighting=!1;isAdaptiveLightingEnabled=!1;isAdaptiveLightingEnabled$=new di(!1);ngOnInit(){this.loadAdaptiveLighting()}ngOnDestroy(){this.intervalId&&clearInterval(this.intervalId)}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||"Hue"in this.service.values||"ColorTemperature"in this.service.values){let t=this.$modal.open(Dn,{size:"md",backdrop:"static"});if(t.componentInstance.service=this.service,this.hasAdaptiveLighting){t.componentInstance.isAdaptiveLightingEnabled$=this.isAdaptiveLightingEnabled$,this.intervalId&&clearInterval(this.intervalId),this.intervalId=setInterval(()=>{this.isAdaptiveLightingEnabled$.next(!!this.service.values.CharacteristicValueActiveTransitionCount)},3e3);let o=this.isAdaptiveLightingEnabled$.subscribe(i=>{this.isAdaptiveLightingEnabled=i});t.result.finally(()=>{this.intervalId&&clearInterval(this.intervalId),o.unsubscribe(),this.intervalId=setInterval(()=>{this.isAdaptiveLightingEnabled$.next(!!this.service.values.CharacteristicValueActiveTransitionCount)},3e4)})}}}loadAdaptiveLighting(){"CharacteristicValueActiveTransitionCount"in this.service.values&&(this.hasAdaptiveLighting=!0,this.isAdaptiveLightingEnabled$.next(!!this.service.values.CharacteristicValueActiveTransitionCount),this.intervalId=setInterval(()=>{this.isAdaptiveLightingEnabled$.next(!!this.service.values.CharacteristicValueActiveTransitionCount)},3e4),this.isAdaptiveLightingEnabled$.subscribe(t=>{this.isAdaptiveLightingEnabled=t}))}static \u0275fac=function(o){return new(o||e)};static \u0275cmp=T({type:e,selectors:[["app-light-bulb"]],inputs:{service:"service"},decls:7,vars:7,consts:[["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,"innerHTML"]],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),v(2,"div",2),a(3,"div",3),c(4),s(),h(5,Ls,2,3,"div",4)(6,Fs,2,3,"div",4),s()()),o&2&&(m("ngClass",q(5,Hs,i.service.values.On)),r(2),m("inlineSVG","/assets/hap-icons/light-bulb.svg"),M("aria-label","Light Bulb"),r(2),y(i.service.customName||i.service.serviceName),r(),C(i.service.values.Brightness?5:6))},dependencies:[K,E,R,N,V],encapsulation:2})}return e})();function Os(e,n){if(e&1&&(a(0,"div",4),c(1),p(2,"number"),s()),e&2){let t=g();r(),b("",oe(2,1,t.service.values.CurrentAmbientLightLevel,"0.1-1")," lux")}}function Ns(e,n){if(e&1&&(a(0,"div",4),c(1),p(2,"number"),s()),e&2){let t=g();r(),b("",oe(2,1,t.service.values.CurrentAmbientLightLevel,"1.0-0")," lux")}}var Pn=(()=>{class e{service;static \u0275fac=function(o){return new(o||e)};static \u0275cmp=T({type:e,selectors:[["app-light-sensor"]],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),v(2,"div",2),a(3,"div",3),c(4),s(),h(5,Os,3,4,"div",4),h(6,Ns,3,4,"div",4),s()()),o&2&&(r(2),m("inlineSVG","/assets/hap-icons/light-sensor.svg"),M("aria-label","Light Sensor"),r(2),y(i.service.customName||i.service.serviceName),r(),C(i.service.values.CurrentAmbientLightLevel<1?5:-1),r(),C(i.service.values.CurrentAmbientLightLevel>=1?6:-1))},dependencies:[R,N,Te],encapsulation:2})}return e})();var _t=(()=>{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=Mi({name:"duration",type:e,pure:!0})}return e})();var Bn=(e,n)=>({"fa-check-circle":e,"fa-blank":n});function Rs(e,n){if(e&1){let t=O();a(0,"h6",12),c(1),p(2,"translate"),p(3,"duration"),s(),a(4,"nouislider",13),$("ngModelChange",function(i){P(t);let l=g();return z(l.targetLockManagementAutoSecurityTimeout.value,i)||(l.targetLockManagementAutoSecurityTimeout.value=i),B(i)}),S("ngModelChange",function(){P(t);let i=g();return B(i.onLockManagementAutoSecurityTimeoutStateChange())}),s()}if(e&2){let t=g();r(),j(" ",d(2,6,"accessories.control.lock_auto"),": ",t.targetLockManagementAutoSecurityTimeout.value===0?"\u221E":d(3,8,t.targetLockManagementAutoSecurityTimeout.value)," "),r(3),m("min",t.targetLockManagementAutoSecurityTimeout.min)("max",t.targetLockManagementAutoSecurityTimeout.max)("step",10),W("ngModel",t.targetLockManagementAutoSecurityTimeout.value)}}var An=(()=>{class e{$activeModal=A(Y);lockTimeout;service;serviceManagement;targetMode;targetLockManagementAutoSecurityTimeout;targetLockManagementAutoSecurityTimeoutChanged=new ie;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(ne(300),Ci()).subscribe(()=>{this.serviceManagement.getCharacteristic("LockManagementAutoSecurityTimeout").setValue(this.targetLockManagementAutoSecurityTimeout.value)}),this.loadTargetLockManagementAutoSecurityTimeout())}setTargetMode(t,o){this.targetMode=t,this.service.getCharacteristic("LockTargetState").setValue(this.targetMode),this.lockTimeout&&(clearTimeout(this.lockTimeout),this.lockTimeout=null),this.targetMode===0&&this.targetLockManagementAutoSecurityTimeout?.value>0&&(this.lockTimeout=setTimeout(()=>{this.targetMode=1},(this.targetLockManagementAutoSecurityTimeout.value+.3)*1e3)),o.target.blur()}onLockManagementAutoSecurityTimeoutStateChange(){this.targetLockManagementAutoSecurityTimeoutChanged.next(this.targetLockManagementAutoSecurityTimeout.value)}dismissModal(){this.$activeModal.dismiss("Dismiss")}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})}static \u0275fac=function(o){return new(o||e)};static \u0275cmp=T({type:e,selectors:[["ng-component"]],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),v(2,"h5",2),a(3,"button",3),p(4,"translate"),S("click",function(){return i.dismissModal()}),s()(),a(5,"div",4)(6,"div",5)(7,"button",6),S("click",function(_){return i.setTargetMode(1,_)}),a(8,"div",7),v(9,"i",8),s(),c(10),p(11,"translate"),a(12,"div",9),v(13,"i",10),s()(),a(14,"button",6),S("click",function(_){return i.setTargetMode(0,_)}),a(15,"div",7),v(16,"i",8),s(),c(17),p(18,"translate"),a(19,"div",9),v(20,"i",10),s()()(),h(21,Rs,5,10),s(),v(22,"div",11),s()),o&2&&(r(2),m("innerText",i.service.customName||i.service.serviceName),r(),M("aria-label",d(4,7,"form.button_close")),r(6),m("ngClass",w(13,Bn,i.targetMode===1,i.targetMode!==1)),r(),b(" ",d(11,9,"accessories.control.locked")," "),r(6),m("ngClass",w(16,Bn,i.targetMode===0,i.targetMode!==0)),r(),b(" ",d(18,11,"accessories.control.unlocked")," "),r(4),C(i.serviceManagement?21:-1))},dependencies:[X,re,ae,se,V,_t,E],encapsulation:2})}return e})();var Gs=e=>({"switch-on":e}),js=(e,n)=>({"red-text":e,"grey-text":n});function Us(e,n){e&1&&v(0,"div",2),e&2&&(m("inlineSVG","/assets/hap-icons/lock-unlocked.svg"),M("aria-label","Lock (Unlocked)"))}function Ws(e,n){e&1&&v(0,"div",2),e&2&&(m("inlineSVG","/assets/hap-icons/lock-locked.svg"),M("aria-label","Lock (Locked)"))}function zs(e,n){e&1&&v(0,"div",2),e&2&&(m("inlineSVG","/assets/hap-icons/lock-unlocked.svg"),M("aria-label","Lock (Jammed)"))}function $s(e,n){e&1&&v(0,"div",2),e&2&&(m("inlineSVG","/assets/hap-icons/unknown.svg"),M("aria-label","Lock (Error)"))}function qs(e,n){if(e&1&&(v(0,"div",4),p(1,"translate")),e&2){let t=g();m("innerText",d(1,2,t.service.values.LockCurrentState?"accessories.control.locked":"accessories.control.unlocked"))("ngClass",w(4,js,!t.service.values.LockCurrentState,t.service.values.LockCurrentState))}}function Ks(e,n){e&1&&(a(0,"div",5),c(1),p(2,"translate"),s()),e&2&&(r(),y(d(2,1,"accessories.control.jammed")))}function Zs(e,n){e&1&&(a(0,"div",5),c(1),p(2,"translate"),s()),e&2&&(r(),y(d(2,1,"accessories.control.unknown")))}var Hn=(()=>{class e{$modal=A(ee);service;onClick(){this.service.getCharacteristic("LockTargetState").setValue(this.service.values.LockTargetState?0:1)}onLongClick(){let t=this.$modal.open(An,{size:"md",backdrop:"static"});t.componentInstance.service=this.service}static \u0275fac=function(o){return new(o||e)};static \u0275cmp=T({type:e,selectors:[["app-lock-mechanism"]],inputs:{service:"service"},decls:11,vars:6,consts:[["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),h(2,Us,1,2,"div",2)(3,Ws,1,2,"div",2)(4,zs,1,2,"div",2)(5,$s,1,2,"div",2),a(6,"div",3),c(7),s(),h(8,qs,2,7,"div",4)(9,Ks,3,3,"div",5)(10,Zs,3,3,"div",5),s()()),o&2&&(m("ngClass",q(4,Gs,i.service.values.LockCurrentState===0)),r(2),C(i.service.values.LockCurrentState===0?2:i.service.values.LockCurrentState===1?3:i.service.values.LockCurrentState===2?4:i.service.values.LockCurrentState===3?5:-1),r(5),y(i.service.customName||i.service.serviceName),r(),C(i.service.values.LockCurrentState<2?8:i.service.values.LockCurrentState===2?9:i.service.values.LockCurrentState===3?10:-1))},dependencies:[K,E,R,N,V],encapsulation:2})}return e})();var Qs=(e,n)=>({"switch-on":e,"switch-off":n});function Js(e,n){e&1&&(a(0,"div",4),c(1),p(2,"translate"),s()),e&2&&(r(),y(d(2,1,"accessories.control.detected")))}function Xs(e,n){e&1&&(a(0,"div",5),c(1),p(2,"translate"),s()),e&2&&(r(),y(d(2,1,"accessories.control.not_detected")))}var Ln=(()=>{class e{service;static \u0275fac=function(o){return new(o||e)};static \u0275cmp=T({type:e,selectors:[["app-motion-sensor"]],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),v(2,"div",2),a(3,"div",3),c(4),s(),h(5,Js,3,3,"div",4),h(6,Xs,3,3,"div",5),s()()),o&2&&(m("ngClass",w(6,Qs,i.service.values.MotionDetected,!i.service.values.MotionDetected)),r(2),m("inlineSVG","/assets/hap-icons/motion-sensor.svg"),M("aria-label","Motion Sensor"),r(2),y(i.service.customName||i.service.serviceName),r(),C(i.service.values.MotionDetected?5:-1),r(),C(i.service.values.MotionDetected?-1:6))},dependencies:[E,R,N,V],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 Ys=(e,n)=>({"switch-on":e,"switch-off":n});function el(e,n){e&1&&(a(0,"div",4),c(1),p(2,"translate"),s()),e&2&&(r(),y(d(2,1,"accessories.control.detected")))}function tl(e,n){e&1&&(a(0,"div",5),c(1),p(2,"translate"),s()),e&2&&(r(),y(d(2,1,"accessories.control.not_detected")))}var Fn=(()=>{class e{service;static \u0275fac=function(o){return new(o||e)};static \u0275cmp=T({type:e,selectors:[["app-occupancy-sensor"]],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),v(2,"div",2),a(3,"div",3),c(4),s(),h(5,el,3,3,"div",4),h(6,tl,3,3,"div",5),s()()),o&2&&(m("ngClass",w(6,Ys,i.service.values.OccupancyDetected,!i.service.values.OccupancyDetected)),r(2),m("inlineSVG","/assets/hap-icons/occupancy-sensor.svg"),M("aria-label","Occupancy Sensor"),r(2),y(i.service.customName||i.service.serviceName),r(),C(i.service.values.OccupancyDetected?5:-1),r(),C(i.service.values.OccupancyDetected?-1:6))},dependencies:[E,R,N,V],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 il=e=>({"switch-on":e}),On=(()=>{class e{service;onClick(){this.service.getCharacteristic("On").setValue(!this.service.values.On)}static \u0275fac=function(o){return new(o||e)};static \u0275cmp=T({type:e,selectors:[["app-outlet"]],inputs:{service:"service"},decls:7,vars:9,consts:[["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),v(2,"div",2),a(3,"div",3),c(4),s(),v(5,"div",4),p(6,"translate"),s()()),o&2&&(m("ngClass",q(7,il,i.service.values.On)),r(2),m("inlineSVG","/assets/hap-icons/outlet.svg"),M("aria-label","Outlet"),r(2),y(i.service.customName||i.service.serviceName),r(),m("innerText",d(6,5,i.service.values.On?"accessories.control.on":"accessories.control.off")))},dependencies:[K,E,R,N,V],encapsulation:2})}return e})();var xt=(e,n)=>({"fa-check-circle":e,"fa-blank":n});function nl(e,n){if(e&1){let t=O();a(0,"button",8),S("click",function(i){P(t);let l=g();return B(l.setTargetMode(3,i))}),a(1,"div",9),v(2,"i",10),s(),c(3),p(4,"translate"),a(5,"div",11),v(6,"i",12),s()()}if(e&2){let t=g();r(2),m("ngClass",w(4,xt,t.targetMode===3,t.targetMode!==3)),r(),b(" ",d(4,2,"accessories.control.off")," ")}}function ol(e,n){if(e&1){let t=O();a(0,"button",8),S("click",function(i){P(t);let l=g();return B(l.setTargetMode(0,i))}),a(1,"div",9),v(2,"i",10),s(),c(3),p(4,"translate"),a(5,"div",11),v(6,"i",12),s()()}if(e&2){let t=g();r(2),m("ngClass",w(4,xt,t.targetMode===0,t.targetMode!==0)),r(),b(" ",d(4,2,"accessories.control.home")," ")}}function rl(e,n){if(e&1){let t=O();a(0,"button",8),S("click",function(i){P(t);let l=g();return B(l.setTargetMode(1,i))}),a(1,"div",9),v(2,"i",10),s(),c(3),p(4,"translate"),a(5,"div",11),v(6,"i",12),s()()}if(e&2){let t=g();r(2),m("ngClass",w(4,xt,t.targetMode===1,t.targetMode!==1)),r(),b(" ",d(4,2,"accessories.control.away")," ")}}function al(e,n){if(e&1){let t=O();a(0,"button",8),S("click",function(i){P(t);let l=g();return B(l.setTargetMode(2,i))}),a(1,"div",9),v(2,"i",10),s(),c(3),p(4,"translate"),a(5,"div",11),v(6,"i",12),s()()}if(e&2){let t=g();r(2),m("ngClass",w(4,xt,t.targetMode===2,t.targetMode!==2)),r(),b(" ",d(4,2,"accessories.control.night")," ")}}var Nn=(()=>{class e{$activeModal=A(Y);service;targetMode;targetModeValidValues=[];ngOnInit(){this.targetMode=this.service.values.SecuritySystemTargetState,this.targetModeValidValues=this.service.getCharacteristic("SecuritySystemTargetState").validValues}setTargetMode(t,o){this.targetMode=t,this.service.getCharacteristic("SecuritySystemTargetState").setValue(this.targetMode),o.target.blur()}dismissModal(){this.$activeModal.dismiss("Dismiss")}static \u0275fac=function(o){return new(o||e)};static \u0275cmp=T({type:e,selectors:[["ng-component"]],inputs:{service:"service"},decls:12,vars:8,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"],[1,"modal-footer"],["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"]],template:function(o,i){o&1&&(a(0,"div",0)(1,"div",1),v(2,"h5",2),a(3,"button",3),p(4,"translate"),S("click",function(){return i.dismissModal()}),s()(),a(5,"div",4)(6,"div",5),h(7,nl,7,7,"button",6),h(8,ol,7,7,"button",6),h(9,rl,7,7,"button",6),h(10,al,7,7,"button",6),s()(),v(11,"div",7),s()),o&2&&(r(2),m("innerText",i.service.customName||i.service.serviceName),r(),M("aria-label",d(4,6,"form.button_close")),r(4),C(i.targetModeValidValues.includes(3)?7:-1),r(),C(i.targetModeValidValues.includes(0)?8:-1),r(),C(i.targetModeValidValues.includes(1)?9:-1),r(),C(i.targetModeValidValues.includes(2)?10:-1))},dependencies:[X,V,E],encapsulation:2})}return e})();var sl=e=>({"switch-on":e});function ll(e,n){e&1&&v(0,"div",2),e&2&&(m("inlineSVG","/assets/hap-icons/security-system-off.svg"),M("aria-label","Security System (Disarmed)"))}function cl(e,n){e&1&&v(0,"div",2),e&2&&(m("inlineSVG","/assets/hap-icons/security-system-triggered.svg"),M("aria-label","Security System (Triggered)"))}function pl(e,n){e&1&&v(0,"div",2),e&2&&(m("inlineSVG","/assets/hap-icons/security-system-active.svg"),M("aria-label","Security System (Armed)"))}function dl(e,n){e&1&&(a(0,"div",4),c(1),p(2,"translate"),s()),e&2&&(r(),y(d(2,1,"accessories.control.home")))}function ml(e,n){e&1&&(a(0,"div",4),c(1),p(2,"translate"),s()),e&2&&(r(),y(d(2,1,"accessories.control.away")))}function ul(e,n){e&1&&(a(0,"div",4),c(1),p(2,"translate"),s()),e&2&&(r(),y(d(2,1,"accessories.control.night")))}function vl(e,n){e&1&&(a(0,"div",5),c(1),p(2,"translate"),s()),e&2&&(r(),y(d(2,1,"accessories.control.off")))}function gl(e,n){e&1&&(a(0,"div",5),c(1),p(2,"translate"),s()),e&2&&(r(),y(d(2,1,"accessories.control.triggered")))}var Rn=(()=>{class e{$modal=A(ee);service;onClick(){let t=this.$modal.open(Nn,{size:"md",backdrop:"static"});t.componentInstance.service=this.service}static \u0275fac=function(o){return new(o||e)};static \u0275cmp=T({type:e,selectors:[["app-security-system"]],inputs:{service:"service"},decls:12,vars:6,consts:[["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){if(o&1&&(a(0,"div",0),S("longClick",function(){return i.onClick()})("shortClick",function(){return i.onClick()}),a(1,"div",1),h(2,ll,1,2,"div",2)(3,cl,1,2,"div",2)(4,pl,1,2,"div",2),a(5,"div",3),c(6),s(),h(7,dl,3,3,"div",4)(8,ml,3,3,"div",4)(9,ul,3,3,"div",4)(10,vl,3,3,"div",5)(11,gl,3,3,"div",5),s()()),o&2){let l;m("ngClass",q(4,sl,i.service.values.SecuritySystemCurrentState!==3)),r(2),C(i.service.values.SecuritySystemCurrentState===3?2:i.service.values.SecuritySystemCurrentState===4?3:4),r(4),y(i.service.customName||i.service.serviceName),r(),C((l=i.service.values.SecuritySystemCurrentState)===0?7:l===1?8:l===2?9:l===3?10:l===4?11:-1)}},dependencies:[K,E,R,N,V],encapsulation:2})}return e})();var fl=(e,n)=>({"switch-on":e,"switch-off":n});function hl(e,n){e&1&&(a(0,"div",4),c(1),p(2,"translate"),s()),e&2&&(r(),y(d(2,1,"accessories.control.detected")))}function Cl(e,n){e&1&&(a(0,"div",5),c(1),p(2,"translate"),s()),e&2&&(r(),y(d(2,1,"accessories.control.not_detected")))}var Gn=(()=>{class e{service;static \u0275fac=function(o){return new(o||e)};static \u0275cmp=T({type:e,selectors:[["app-smoke-sensor"]],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),v(2,"div",2),a(3,"div",3),c(4),s(),h(5,hl,3,3,"div",4),h(6,Cl,3,3,"div",5),s()()),o&2&&(m("ngClass",w(6,fl,i.service.values.SmokeDetected,!i.service.values.SmokeDetected)),r(2),m("inlineSVG","/assets/hap-icons/smoke-sensor.svg"),M("aria-label","Smoke Sensor"),r(2),y(i.service.customName||i.service.serviceName),r(),C(i.service.values.SmokeDetected?5:-1),r(),C(i.service.values.SmokeDetected?-1:6))},dependencies:[E,R,N,V],styles:[".switch-off svg .smoke_sensor_trigger_lines{display:none} .switch-off svg .smoke_sensor_box{fill:gray}"]})}return e})();var St=(e,n)=>({"fa-check-circle":e,"fa-blank":n});function _l(e,n){if(e&1){let t=O();a(0,"div",5)(1,"button",7),S("click",function(i){P(t);let l=g();return B(l.setActive(0,i))}),a(2,"div",8),v(3,"i",9),s(),c(4),p(5,"translate"),a(6,"div",10),v(7,"i",11),s()(),a(8,"button",7),S("click",function(i){P(t);let l=g();return B(l.setActive(1,i))}),a(9,"div",8),v(10,"i",9),s(),c(11),p(12,"translate"),a(13,"div",10),v(14,"i",11),s()()()}if(e&2){let t=g();r(3),m("ngClass",w(8,St,t.service.values.Active===0,t.service.values.Active!==0)),r(),b(" ",d(5,4,"accessories.control.off")," "),r(6),m("ngClass",w(11,St,t.service.values.Active===1,t.service.values.Active!==1)),r(),b(" ",d(12,6,"accessories.control.on")," ")}}function xl(e,n){if(e&1){let t=O();a(0,"h6",13),c(1),p(2,"translate"),s(),a(3,"nouislider",14),$("ngModelChange",function(i){P(t);let l=g();return z(l.targetVolume.value,i)||(l.targetVolume.value=i),B(i)}),S("ngModelChange",function(){P(t);let i=g();return B(i.onVolumeStateChange())}),s()}if(e&2){let t=g();r(),j("",d(2,6,"accessories.control.speaker_volume"),": ",t.targetVolume.value,"%"),r(2),m("min",t.targetVolume.min)("max",t.targetVolume.max)("step",t.targetVolume.step),W("ngModel",t.targetVolume.value)}}var jn=(()=>{class e{$activeModal=A(Y);service;targetMode;targetVolume;targetVolumeChanged=new ie;hasActive;constructor(){this.targetVolumeChanged.pipe(ne(500)).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)}setTargetMode(t,o){this.targetMode=t,this.service.getCharacteristic("Mute").setValue(this.targetMode),o.target.blur()}setActive(t,o){this.service.getCharacteristic("Active").setValue(t),o.target.blur()}onVolumeStateChange(){this.targetVolumeChanged.next(this.targetVolume.value)}dismissModal(){this.$activeModal.dismiss("Dismiss")}loadTargetVolume(){let t=this.service.getCharacteristic("Volume");t&&(this.targetVolume={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, #ffffff, #ffd966, #ff0000)"})},10))}static \u0275fac=function(o){return new(o||e)};static \u0275cmp=T({type:e,selectors:[["ng-component"]],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),v(2,"h5",2),a(3,"button",3),p(4,"translate"),S("click",function(){return i.dismissModal()}),s()(),a(5,"div",4),h(6,_l,15,14,"div",5),a(7,"h6"),c(8),p(9,"translate"),s(),a(10,"div",6)(11,"button",7),S("click",function(_){return i.setTargetMode(!1,_)}),a(12,"div",8),v(13,"i",9),s(),c(14),p(15,"translate"),a(16,"div",10),v(17,"i",11),s()(),a(18,"button",7),S("click",function(_){return i.setTargetMode(!0,_)}),a(19,"div",8),v(20,"i",9),s(),c(21),p(22,"translate"),a(23,"div",10),v(24,"i",11),s()()(),h(25,xl,4,8),s(),v(26,"div",12),s()),o&2&&(r(2),m("innerText",i.service.customName||i.service.serviceName),r(),M("aria-label",d(4,9,"form.button_close")),r(3),C(i.hasActive?6:-1),r(2),y(d(9,11,i.hasActive?"accessories.control.speaker_volume":"menu.label_status")),r(5),m("ngClass",w(17,St,!i.targetMode,i.targetMode)),r(),b(" ",d(15,13,"accessories.control.not_mute")," "),r(6),m("ngClass",w(20,St,i.targetMode,!i.targetMode)),r(),b(" ",d(22,15,"accessories.control.mute")," "),r(4),C(i.targetVolume?25:-1))},dependencies:[X,re,ae,se,V,E],encapsulation:2})}return e})();var Sl=e=>({"switch-on":e});function yl(e,n){e&1&&(v(0,"div",4),p(1,"translate")),e&2&&m("innerText",d(1,1,"accessories.control.off"))}function bl(e,n){e&1&&(v(0,"div",4),p(1,"translate")),e&2&&m("innerText",d(1,1,"accessories.control.mute"))}function Tl(e,n){if(e&1&&(a(0,"div",5),c(1),s()),e&2){let t=g();r(),b("",t.service.values.Volume,"%")}}function Ml(e,n){e&1&&(a(0,"div",5),c(1),p(2,"translate"),s()),e&2&&(r(),y(d(2,1,"accessories.control.on")))}var Un=(()=>{class e{$modal=A(ee);service;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(jn,{size:"md",backdrop:"static"});t.componentInstance.service=this.service}}static \u0275fac=function(o){return new(o||e)};static \u0275cmp=T({type:e,selectors:[["app-speaker"]],inputs:{service:"service"},decls:9,vars:7,consts:[["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),v(2,"div",2),a(3,"div",3),c(4),s(),h(5,yl,2,3,"div",4)(6,bl,2,3,"div",4)(7,Tl,2,1,"div",5)(8,Ml,3,3,"div",5),s()()),o&2&&(m("ngClass",q(5,Sl,i.service.values.Active!==void 0?i.service.values.Active===1:!i.service.values.Mute)),r(2),m("inlineSVG","/assets/hap-icons/speaker.svg"),M("aria-label","Speaker"),r(2),y(i.service.customName||i.service.serviceName),r(),C(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:[K,E,R,N,V],encapsulation:2})}return e})();var Wn=(()=>{class e{service;static \u0275fac=function(o){return new(o||e)};static \u0275cmp=T({type:e,selectors:[["app-stateless-programmable-switch"]],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),v(2,"div",2),a(3,"div",3),c(4),s()()()),o&2&&(r(2),m("inlineSVG","/assets/hap-icons/stateless-programmable-switch.svg"),M("aria-label","Stateless Programmable Switch"),r(2),y(i.service.customName||i.service.serviceName))},dependencies:[R,N],encapsulation:2})}return e})();var kl=e=>({"switch-on":e}),zn=(()=>{class e{service;onClick(){this.service.getCharacteristic("On").setValue(!this.service.values.On)}static \u0275fac=function(o){return new(o||e)};static \u0275cmp=T({type:e,selectors:[["app-switch"]],inputs:{service:"service"},decls:7,vars:9,consts:[["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),v(2,"div",2),a(3,"div",3),c(4),s(),v(5,"div",4),p(6,"translate"),s()()),o&2&&(m("ngClass",q(7,kl,i.service.values.On)),r(2),m("inlineSVG","/assets/hap-icons/switch.svg"),M("aria-label","Switch"),r(2),y(i.service.customName||i.service.serviceName),r(),m("innerText",d(6,5,i.service.values.On?"accessories.control.on":"accessories.control.off")))},dependencies:[K,E,R,N,V],encapsulation:2})}return e})();var wl=(e,n)=>({"mb-4":e,"mb-0":n}),Zt=(e,n)=>({"fa-check-circle":e,"fa-blank":n});function Vl(e,n){if(e&1){let t=O();a(0,"div",5)(1,"button",7),S("click",function(i){P(t);let l=g();return B(l.setActive(0,i))}),a(2,"div",8),v(3,"i",9),s(),c(4),p(5,"translate"),a(6,"div",10),v(7,"i",11),s()(),a(8,"button",7),S("click",function(i){P(t);let l=g();return B(l.setActive(1,i))}),a(9,"div",8),v(10,"i",9),s(),c(11),p(12,"translate"),a(13,"div",10),v(14,"i",11),s()()()}if(e&2){let t=g();m("ngClass",w(9,wl,t.sourceList.length,!t.sourceList.length)),r(3),m("ngClass",w(12,Zt,t.service.values.Active===0,t.service.values.Active!==0)),r(),b(" ",d(5,5,"accessories.control.off")," "),r(6),m("ngClass",w(15,Zt,t.service.values.Active===1,t.service.values.Active!==1)),r(),b(" ",d(12,7,"accessories.control.on")," ")}}function El(e,n){e&1&&(a(0,"h6"),c(1),p(2,"translate"),s()),e&2&&(r(),y(d(2,1,"accessories.control.input")))}function Dl(e,n){if(e&1){let t=O();a(0,"button",7),S("click",function(i){let l=P(t).$implicit,_=g(2);return B(_.setInput(l.identifier,i))}),a(1,"div",8),v(2,"i",9),s(),c(3),a(4,"div",10),v(5,"i",11),s()()}if(e&2){let t=n.$implicit,o=g(2);r(2),m("ngClass",w(2,Zt,o.service.values.ActiveIdentifier===t.identifier,o.service.values.ActiveIdentifier!==t.identifier)),r(),b(" ",t.name," ")}}function Il(e,n){if(e&1&&(h(0,El,3,3,"h6"),a(1,"div",12),Vi(2,Dl,6,5,"button",13,wi),s()),e&2){let t=g();C(t.hasActive?0:-1),r(2),Ei(t.sourceList)}}var $n=(()=>{class e{$activeModal=A(Y);service;inputList;hasActive=!1;sourceList=[];ngOnInit(){this.service.serviceCharacteristics.find(t=>t.type==="Active")&&(this.hasActive=!0),Object.keys(this.inputList).length&&Object.entries(this.inputList).forEach(([t,o])=>{this.sourceList.push({identifier:Number.parseInt(t,10),name:o})})}setActive(t,o){this.service.getCharacteristic("Active").setValue(t),o.target.blur()}setInput(t,o){this.service.getCharacteristic("ActiveIdentifier").setValue(t),o.target.blur()}dismissModal(){this.$activeModal.dismiss("Dismiss")}static \u0275fac=function(o){return new(o||e)};static \u0275cmp=T({type:e,selectors:[["ng-component"]],inputs:{service:"service",inputList:"inputList"},decls:9,vars:6,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","Television Mode Control",1,"btn-group-vertical","d-flex","justify-content-center","mb-4","p-0",3,"ngClass"],[1,"modal-footer"],["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","Television Input 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"]],template:function(o,i){o&1&&(a(0,"div",0)(1,"div",1),v(2,"h5",2),a(3,"button",3),p(4,"translate"),S("click",function(){return i.dismissModal()}),s()(),a(5,"div",4),h(6,Vl,15,18,"div",5),h(7,Il,4,1),s(),v(8,"div",6),s()),o&2&&(r(2),m("innerText",i.service.customName||i.service.serviceName),r(),M("aria-label",d(4,4,"form.button_close")),r(3),C(i.hasActive?6:-1),r(),C(i.sourceList.length?7:-1))},dependencies:[X,V,E],encapsulation:2})}return e})();var Pl=e=>({"switch-on":e});function Bl(e,n){if(e&1&&(a(0,"div",4),c(1),p(2,"translate"),s()),e&2){let t=g();r(),b(" ",t.channelList[t.service.values.ActiveIdentifier]||d(2,1,"accessories.control.on")," ")}}function Al(e,n){e&1&&(a(0,"div",4),c(1),p(2,"translate"),s()),e&2&&(r(),y(d(2,1,"accessories.control.off")))}var qn=(()=>{class e{$modal=A(ee);service;channelList={};ngOnInit(){for(let[,t]of Object.entries(this.service.linkedServices))t.type==="InputSource"&&(this.channelList[t.values.Identifier]=t.values.ConfiguredName||`Input ${t.values.Identifier}`)}onClick(){this.service.getCharacteristic("Active").setValue(this.service.values.Active?0:1)}onLongClick(){if("Active"in this.service.values||Object.keys(this.channelList).length){let t=this.$modal.open($n,{size:"md",backdrop:"static"});t.componentInstance.service=this.service,t.componentInstance.inputList=this.channelList}}static \u0275fac=function(o){return new(o||e)};static \u0275cmp=T({type:e,selectors:[["app-television"]],inputs:{service:"service"},decls:7,vars:7,consts:[["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),v(2,"div",2),a(3,"div",3),c(4),s(),h(5,Bl,3,3,"div",4)(6,Al,3,3,"div",4),s()()),o&2&&(m("ngClass",q(5,Pl,i.service.values.Active)),r(2),m("inlineSVG","/assets/hap-icons/television.svg"),M("aria-label","Television"),r(2),b(" ",i.service.customName||i.service.values.ConfiguredName||i.service.serviceName," "),r(),C(i.service.values.Active?5:6))},dependencies:[K,E,R,N,V],encapsulation:2})}return e})();var Kn=(()=>{class e{$settings=A(Ie);service;temperatureUnits=this.$settings.env.temperatureUnits;static \u0275fac=function(o){return new(o||e)};static \u0275cmp=T({type:e,selectors:[["app-temperature-sensor"]],inputs:{service:"service"},decls:8,vars:9,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),v(2,"div",2),p(3,"convertTemp"),p(4,"number"),p(5,"uppercase"),a(6,"div",3),c(7),s()()()),o&2&&(r(2),m("innerText",(typeof i.service.values.CurrentTemperature=="number"?oe(4,4,d(3,2,i.service.values.CurrentTemperature),"1.0-1"):"?")+"\xB0"+d(5,7,i.temperatureUnits)),r(5),y(i.service.customName||i.service.serviceName))},dependencies:[Te,Pe,De],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 Hl=(e,n,t)=>({cooling:e,heating:n,"no-current-state":t}),yt=(e,n)=>({"fa-check-circle":e,"fa-blank":n});function Ll(e,n){if(e&1&&(a(0,"div",6),v(1,"div",10),s()),e&2){let t=g();r(),m("innerText",t.service.values.CurrentRelativeHumidity+"%")}}function Fl(e,n){if(e&1){let t=O();a(0,"button",11),S("click",function(i){P(t);let l=g();return B(l.setTargetMode(0,i))}),a(1,"div",12),v(2,"i",13),s(),c(3),p(4,"translate"),a(5,"div",14),v(6,"i",15),s()()}if(e&2){let t=g();r(2),m("ngClass",w(4,yt,t.targetMode===0,t.targetMode!==0)),r(),b(" ",d(4,2,"accessories.control.off")," ")}}function Ol(e,n){if(e&1){let t=O();a(0,"button",11),S("click",function(i){P(t);let l=g();return B(l.setTargetMode(3,i))}),a(1,"div",12),v(2,"i",13),s(),c(3),p(4,"translate"),a(5,"div",14),v(6,"i",15),s()()}if(e&2){let t=g();r(2),m("ngClass",w(4,yt,t.targetMode===3,t.targetMode!==3)),r(),b(" ",d(4,2,"accessories.control.auto")," ")}}function Nl(e,n){if(e&1){let t=O();a(0,"button",11),S("click",function(i){P(t);let l=g();return B(l.setTargetMode(1,i))}),a(1,"div",12),v(2,"i",13),s(),c(3),p(4,"translate"),a(5,"div",14),v(6,"i",15),s()()}if(e&2){let t=g();r(2),m("ngClass",w(4,yt,t.targetMode===1,t.targetMode!==1)),r(),b(" ",d(4,2,"accessories.control.heat")," ")}}function Rl(e,n){if(e&1){let t=O();a(0,"button",11),S("click",function(i){P(t);let l=g();return B(l.setTargetMode(2,i))}),a(1,"div",12),v(2,"i",13),s(),c(3),p(4,"translate"),a(5,"div",14),v(6,"i",15),s()()}if(e&2){let t=g();r(2),m("ngClass",w(4,yt,t.targetMode===2,t.targetMode!==2)),r(),b(" ",d(4,2,"accessories.control.cool")," ")}}function Gl(e,n){if(e&1){let t=O();a(0,"h6",18),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",17),$("ngModelChange",function(i){P(t);let l=g(2);return z(l.autoTemp,i)||(l.autoTemp=i),B(i)}),S("ngModelChange",function(){P(t);let i=g(2);return B(i.onAutoThresholdStateChange())}),s()}if(e&2){let t=g(2);r(),ct(" ",d(2,9,"accessories.control.threshold_auto"),": ",oe(4,13,d(3,11,t.autoTemp[0]),"1.0-1"),"\xB0",d(5,16,t.temperatureUnits)," - ",oe(7,20,d(6,18,t.autoTemp[1]),"1.0-1"),"\xB0",d(8,23,t.temperatureUnits)," "),r(8),m("min",t.HeatingThresholdTemperature.minValue)("max",t.CoolingThresholdTemperature.maxValue)("step",t.CoolingThresholdTemperature.minStep),W("ngModel",t.autoTemp)}}function jl(e,n){if(e&1){let t=O();a(0,"h6",16),c(1),p(2,"translate"),p(3,"convertTemp"),p(4,"number"),p(5,"uppercase"),s(),a(6,"nouislider",17),$("ngModelChange",function(i){P(t);let l=g(2);return z(l.targetHeatingTemp,i)||(l.targetHeatingTemp=i),B(i)}),S("ngModelChange",function(){P(t);let i=g(2);return B(i.onThresholdStateChange())}),s()}if(e&2){let t=g(2);r(),Fe(" ",d(2,7,"accessories.control.threshold_auto"),": ",oe(4,11,d(3,9,t.targetHeatingTemp),"1.0-1"),"\xB0",d(5,14,t.temperatureUnits)," "),r(5),m("min",t.HeatingThresholdTemperature.minValue)("max",t.HeatingThresholdTemperature.maxValue)("step",t.HeatingThresholdTemperature.minStep),W("ngModel",t.targetHeatingTemp)}}function Ul(e,n){if(e&1){let t=O();a(0,"h6",16),c(1),p(2,"translate"),p(3,"convertTemp"),p(4,"number"),p(5,"uppercase"),s(),a(6,"nouislider",17),$("ngModelChange",function(i){P(t);let l=g(2);return z(l.targetCoolingTemp,i)||(l.targetCoolingTemp=i),B(i)}),S("ngModelChange",function(){P(t);let i=g(2);return B(i.onThresholdStateChange())}),s()}if(e&2){let t=g(2);r(),Fe(" ",d(2,7,"accessories.control.threshold_auto"),": ",oe(4,11,d(3,9,t.targetCoolingTemp),"1.0-1"),"\xB0",d(5,14,t.temperatureUnits)," "),r(5),m("min",t.CoolingThresholdTemperature.minValue)("max",t.CoolingThresholdTemperature.maxValue)("step",t.CoolingThresholdTemperature.minStep),W("ngModel",t.targetCoolingTemp)}}function Wl(e,n){if(e&1){let t=O();a(0,"h6",16),c(1),p(2,"translate"),p(3,"convertTemp"),p(4,"number"),p(5,"uppercase"),s(),a(6,"nouislider",17),$("ngModelChange",function(i){P(t);let l=g();return z(l.targetTemperature.value,i)||(l.targetTemperature.value=i),B(i)}),S("ngModelChange",function(){P(t);let i=g();return B(i.onTemperatureStateChange())}),s(),h(7,Gl,10,25)(8,jl,7,16)(9,Ul,7,16)}if(e&2){let t=g();r(),Fe(" ",d(2,8,"accessories.control.target_auto"),": ",oe(4,12,d(3,10,t.targetTemperature.value),"1.0-1"),"\xB0",d(5,15,t.temperatureUnits)," "),r(5),m("min",t.targetTemperature.min)("max",t.targetTemperature.max)("step",t.targetTemperature.step),W("ngModel",t.targetTemperature.value),r(),C(t.HeatingThresholdTemperature&&t.CoolingThresholdTemperature?7:t.HeatingThresholdTemperature&&!t.CoolingThresholdTemperature?8:!t.HeatingThresholdTemperature&&t.CoolingThresholdTemperature?9:-1)}}var Zn=(()=>{class e{$activeModal=A(Y);$settings=A(Ie);service;targetMode;targetTemperature;targetTemperatureChanged=new ie;targetThresholdChanged=new ie;targetStateValidValues=[];CoolingThresholdTemperature;HeatingThresholdTemperature;targetCoolingTemp;targetHeatingTemp;autoTemp;hasHumidity=!1;temperatureUnits=this.$settings.env.temperatureUnits;constructor(){this.targetTemperatureChanged.pipe(ne(500)).subscribe(()=>{this.service.getCharacteristic("TargetTemperature").setValue(this.targetTemperature.value)}),this.targetThresholdChanged.pipe(ne(500)).subscribe(()=>{this.HeatingThresholdTemperature&&this.service.getCharacteristic("HeatingThresholdTemperature").setValue(this.targetHeatingTemp),this.CoolingThresholdTemperature&&this.service.getCharacteristic("CoolingThresholdTemperature").setValue(this.targetCoolingTemp)})}ngOnInit(){this.targetMode=this.service.values.TargetHeatingCoolingState,this.CoolingThresholdTemperature=this.service.getCharacteristic("CoolingThresholdTemperature"),this.HeatingThresholdTemperature=this.service.getCharacteristic("HeatingThresholdTemperature"),this.targetStateValidValues=this.service.getCharacteristic("TargetHeatingCoolingState").validValues,this.loadTargetTemperature(),this.service.getCharacteristic("CurrentRelativeHumidity")&&(this.hasHumidity=!0),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)}setTargetMode(t,o){this.targetMode=t,this.service.getCharacteristic("TargetHeatingCoolingState").setValue(this.targetMode),o.target.blur()}onTemperatureStateChange(){this.targetTemperatureChanged.next(this.targetTemperature.value)}onThresholdStateChange(){this.autoTemp=[this.targetHeatingTemp,this.targetCoolingTemp],this.targetThresholdChanged.next(void 0)}onAutoThresholdStateChange(){this.targetHeatingTemp=this.autoTemp[0],this.targetCoolingTemp=this.autoTemp[1],this.targetThresholdChanged.next(void 0)}dismissModal(){this.$activeModal.dismiss("Dismiss")}loadTargetTemperature(){let t=this.service.getCharacteristic("TargetTemperature");this.targetTemperature={value:t.value,min:t.minValue,max:t.maxValue,step:t.minStep},this.targetCoolingTemp=this.service.getCharacteristic("CoolingThresholdTemperature")?.value,this.targetHeatingTemp=this.service.getCharacteristic("HeatingThresholdTemperature")?.value,this.autoTemp=[this.targetHeatingTemp,this.targetCoolingTemp]}static \u0275fac=function(o){return new(o||e)};static \u0275cmp=T({type:e,selectors:[["ng-component"]],inputs:{service:"service"},decls:18,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"],[1,"temperature-circle","temperature-circle-big","mb-4",3,"innerText","ngClass"],[1,"humidity-drop","humidity-drop-big","ms-5","no-current-state"],["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"],[1,"modal-footer"],[1,"humidity-drop-text",3,"innerText"],["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,"mt-4","mb-1"]],template:function(o,i){o&1&&(a(0,"div",0)(1,"div",1),v(2,"h5",2),a(3,"button",3),p(4,"translate"),S("click",function(){return i.dismissModal()}),s()(),a(5,"div",4),v(6,"div",5),p(7,"convertTemp"),p(8,"number"),p(9,"uppercase"),h(10,Ll,2,1,"div",6),a(11,"div",7),h(12,Fl,7,7,"button",8),h(13,Ol,7,7,"button",8),h(14,Nl,7,7,"button",8),h(15,Rl,7,7,"button",8),s(),h(16,Wl,10,17),s(),v(17,"div",9),s()),o&2&&(r(2),m("innerText",i.service.customName||i.service.serviceName),r(),M("aria-label",d(4,10,"form.button_close")),r(3),m("innerText",oe(8,14,d(7,12,i.service.values.CurrentTemperature),"1.0-1")+"\xB0"+d(9,17,i.temperatureUnits))("ngClass",we(19,Hl,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(4),C(i.hasHumidity?10:-1),r(2),C(i.targetStateValidValues.includes(0)?12:-1),r(),C(i.targetStateValidValues.includes(3)?13:-1),r(),C(i.targetStateValidValues.includes(1)?14:-1),r(),C(i.targetStateValidValues.includes(2)?15:-1),r(),C(i.targetStateValidValues.includes(3)?16:-1))},dependencies:[E,X,re,ae,se,Te,V,Pe,De],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}.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)}.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:-9px}.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 zl=e=>({"switch-on":e}),$l=(e,n,t)=>({cooling:e,heating:n,"no-current-state":t});function ql(e,n){e&1&&(c(0),p(1,"translate")),e&2&&b(" ",d(1,1,"accessories.control.off")," ")}function Kl(e,n){e&1&&(c(0),p(1,"translate")),e&2&&b(" ",d(1,1,"accessories.control.heat")," ")}function Zl(e,n){e&1&&(c(0),p(1,"translate")),e&2&&b(" ",d(1,1,"accessories.control.cool")," ")}function Ql(e,n){if(e&1&&(v(0,"i",5),c(1),p(2,"convertTemp"),p(3,"number"),p(4,"uppercase")),e&2){let t=g();r(),j(" ",oe(3,4,d(2,2,t.service.values.TargetTemperature),"1.0-1"),"\xB0",d(4,7,t.temperatureUnits)," ")}}var Qn=(()=>{class e{$modal=A(ee);$settings=A(Ie);service;temperatureUnits=this.$settings.env.temperatureUnits;onClick(){let t=this.$modal.open(Zn,{size:"md",backdrop:"static"});t.componentInstance.service=this.service}static \u0275fac=function(o){return new(o||e)};static \u0275cmp=T({type:e,selectors:[["app-thermostat"]],inputs:{service:"service"},decls:13,vars:18,consts:[["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),v(2,"div",2),p(3,"convertTemp"),p(4,"number"),p(5,"uppercase"),a(6,"div",3),c(7),s(),a(8,"div",4),h(9,ql,2,3)(10,Kl,2,3)(11,Zl,2,3)(12,Ql,5,9),s()()()),o&2&&(m("ngClass",q(12,zl,i.service.values.TargetHeatingCoolingState>0)),r(2),m("innerText",oe(4,7,d(3,5,i.service.values.CurrentTemperature),"1.0-1")+"\xB0"+d(5,10,i.temperatureUnits))("ngClass",we(14,$l,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),y(i.service.customName||i.service.serviceName),r(2),C(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:[K,E,Te,V,Pe,De],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}.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)}.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:-9px}.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 Jn=(()=>{class e{service;static \u0275fac=function(o){return new(o||e)};static \u0275cmp=T({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),v(2,"div",2),a(3,"div",3),c(4),s(),a(5,"div",4),c(6),s()()()),o&2&&(r(2),m("inlineSVG","/assets/hap-icons/unknown.svg"),M("aria-label","Unknown"),r(2),y(i.service.customName||i.service.serviceName),r(2),y(i.service.humanType))},dependencies:[R,N],encapsulation:2})}return e})();var Xn=(e,n)=>({"fa-check-circle":e,"fa-blank":n});function Jl(e,n){if(e&1){let t=O();a(0,"h6"),c(1),p(2,"translate"),p(3,"duration"),s(),a(4,"nouislider",12),$("ngModelChange",function(i){P(t);let l=g();return z(l.targetSetDuration.value,i)||(l.targetSetDuration.value=i),B(i)}),S("ngModelChange",function(){P(t);let i=g();return B(i.onSetDurationStateChange())}),s()}if(e&2){let t=g();r(),j(" ",d(2,6,"accessories.control.set_duration"),": ",t.targetSetDuration.value===0?"\u221E":d(3,8,t.targetSetDuration.value)," "),r(3),m("min",t.targetSetDuration.min)("max",t.targetSetDuration.max)("step",15),W("ngModel",t.targetSetDuration.value)}}var Yn=(()=>{class e{$activeModal=A(Y);service;targetMode;targetSetDuration;targetSetDurationChanged=new ie;constructor(){this.targetSetDurationChanged.pipe(ne(500)).subscribe(()=>{this.service.getCharacteristic("SetDuration").setValue(this.targetSetDuration.value)})}ngOnInit(){this.targetMode=this.service.values.Active,this.loadTargetSetDuration()}setTargetMode(t,o){this.targetMode=t,this.service.getCharacteristic("Active").setValue(this.targetMode),o.target.blur()}onSetDurationStateChange(){this.targetSetDurationChanged.next(this.targetSetDuration.value)}dismissModal(){this.$activeModal.dismiss("Dismiss")}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))}static \u0275fac=function(o){return new(o||e)};static \u0275cmp=T({type:e,selectors:[["ng-component"]],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),v(2,"h5",2),a(3,"button",3),p(4,"translate"),S("click",function(){return i.dismissModal()}),s()(),a(5,"div",4)(6,"div",5)(7,"button",6),S("click",function(_){return i.setTargetMode(!1,_)}),a(8,"div",7),v(9,"i",8),s(),c(10),p(11,"translate"),a(12,"div",9),v(13,"i",10),s()(),a(14,"button",6),S("click",function(_){return i.setTargetMode(!0,_)}),a(15,"div",7),v(16,"i",8),s(),c(17),p(18,"translate"),a(19,"div",9),v(20,"i",10),s()()(),h(21,Jl,5,10),s(),v(22,"div",11),s()),o&2&&(r(2),m("innerText",i.service.customName||i.service.serviceName),r(),M("aria-label",d(4,7,"form.button_close")),r(6),m("ngClass",w(13,Xn,!i.targetMode,i.targetMode)),r(),b(" ",d(11,9,"accessories.control.off")," "),r(6),m("ngClass",w(16,Xn,i.targetMode,!i.targetMode)),r(),b(" ",d(18,11,"accessories.control.on")," "),r(4),C(i.targetSetDuration?21:-1))},dependencies:[X,re,ae,se,V,E,_t],encapsulation:2})}return e})();var Xl=(e,n)=>({"switch-on":e,"switch-off":n});function Yl(e,n){e&1&&v(0,"div",2),e&2&&(m("inlineSVG","/assets/hap-icons/valve-generic.svg"),M("aria-label","Generic Valve"))}function ec(e,n){e&1&&v(0,"div",2),e&2&&(m("inlineSVG","/assets/hap-icons/valve-irrigation.svg"),M("aria-label","Irrigation Valve"))}function tc(e,n){e&1&&v(0,"div",2),e&2&&(m("inlineSVG","/assets/hap-icons/valve-shower-head.svg"),M("aria-label","Shower Head Valve"))}function ic(e,n){e&1&&v(0,"div",2),e&2&&(m("inlineSVG","/assets/hap-icons/valve-faucet.svg"),M("aria-label","Faucet Valve"))}function nc(e,n){if(e&1&&(a(0,"div",4),c(1),s()),e&2){let t=g();r(),y(t.remainingDuration)}}function oc(e,n){e&1&&(a(0,"div",4),c(1),p(2,"translate"),s()),e&2&&(r(),y(d(2,1,"accessories.control.running")))}function rc(e,n){e&1&&(a(0,"div",4),c(1),p(2,"translate"),s()),e&2&&(r(),y(d(2,1,"accessories.control.off")))}var eo=(()=>{class e{$modal=A(ee);service;secondsActive=0;remainingDuration;remainingDurationInterval=gi(1e3).pipe(fi(()=>this.isActive()));remainingDurationSubscription;ngOnInit(){this.service.getCharacteristic("RemainingDuration")&&this.setupRemainingDurationCounter()}onClick(){this.service.getCharacteristic("Active").setValue(this.service.values.Active?0:1)}onLongClick(){let t=this.$modal.open(Yn,{size:"md",backdrop:"static"});t.componentInstance.service=this.service}ngOnDestroy(){this.remainingDurationSubscription&&this.remainingDurationSubscription.unsubscribe()}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="")}static \u0275fac=function(o){return new(o||e)};static \u0275cmp=T({type:e,selectors:[["app-valve"]],inputs:{service:"service"},decls:11,vars:12,consts:[["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),h(2,Yl,1,2,"div",2),h(3,ec,1,2,"div",2),h(4,tc,1,2,"div",2),h(5,ic,1,2,"div",2),a(6,"div",3),c(7),s(),h(8,nc,2,1,"div",4),h(9,oc,3,3,"div",4),h(10,rc,3,3,"div",4),s()()),o&2&&(m("ngClass",w(9,Xl,i.service.values.Active,!i.service.values.Active)),r(2),C(i.service.values.ValveType===0?2:-1),r(),C(i.service.values.ValveType===1?3:-1),r(),C(i.service.values.ValveType===2?4:-1),r(),C(i.service.values.ValveType===3?5:-1),r(2),b(" ",i.service.customName||i.service.values.ConfiguredName||i.service.serviceName," "),r(),C(i.service.values.Active&&i.remainingDuration?8:-1),r(),C(i.service.values.Active&&!i.remainingDuration?9:-1),r(),C(i.service.values.Active?-1:10))},dependencies:[K,E,R,N,V],styles:[".switch-off svg .valve_off_hidden{display:none} .switch-off svg .valve_off_grey{fill:gray}"]})}return e})();function ac(e,n){e&1&&(c(0),p(1,"translate")),e&2&&b(" ",d(1,1,"accessories.control.closed")," ")}function sc(e,n){if(e&1&&(c(0),p(1,"translate")),e&2){let t=g(2);j(" ",d(1,2,"accessories.control.open")," ",t.service.getCharacteristic("CurrentPosition").value,"% ")}}function lc(e,n){if(e&1&&h(0,ac,2,3)(1,sc,2,4),e&2){let t=g();C(t.service.values.CurrentPosition===0?0:1)}}function cc(e,n){e&1&&(c(0),p(1,"translate")),e&2&&b(" ",d(1,1,"accessories.control.opening"),"... ")}function pc(e,n){e&1&&(c(0),p(1,"translate")),e&2&&b(" ",d(1,1,"accessories.control.closing"),"... ")}var to=(()=>{class e{$activeModal=A(Y);service;targetMode;targetPositionChanged=new ie;targetPosition;constructor(){this.targetPositionChanged.pipe(ne(500)).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()}onTargetPositionChange(){this.targetPositionChanged.next(this.targetPosition.value)}dismissModal(){this.$activeModal.dismiss("Dismiss")}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))}static \u0275fac=function(o){return new(o||e)};static \u0275cmp=T({type:e,selectors:[["ng-component"]],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"],[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),v(2,"h5",2),a(3,"button",3),p(4,"translate"),S("click",function(){return i.dismissModal()}),s()(),a(5,"div",4)(6,"div",5)(7,"div",6),h(8,lc,2,1)(9,cc,2,3)(10,pc,2,3),s()(),a(11,"h6",7),c(12),p(13,"translate"),s(),a(14,"nouislider",8),$("ngModelChange",function(_){return z(i.targetPosition.value,_)||(i.targetPosition.value=_),_}),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),$("ngModelChange",function(_){return z(i.service.getCharacteristic("CurrentPosition").value,_)||(i.service.getCharacteristic("CurrentPosition").value=_),_}),s(),a(26,"div",9)(27,"span",10),c(28),p(29,"translate"),s(),a(30,"span",10),c(31),p(32,"translate"),s()()(),v(33,"div",12),s()),o&2&&(r(2),m("innerText",i.service.customName||i.service.serviceName),r(),M("aria-label",d(4,20,"form.button_close")),r(5),C(i.service.values.PositionState===2?8:i.service.values.PositionState===1?9:i.service.values.PositionState===0?10:-1),r(4),j("",d(13,22,"accessories.control.target"),": ",i.targetPosition.value,"%"),r(2),m("min",i.targetPosition.min)("max",i.targetPosition.max)("step",i.targetPosition.step),W("ngModel",i.targetPosition.value),r(3),y(d(18,24,"accessories.control.closed")),r(3),y(d(21,26,"accessories.control.open")),r(3),j(" ",d(24,28,"accessories.control.current"),": ",i.service.getCharacteristic("CurrentPosition").value,"% "),r(2),m("min",0)("max",100)("step",1)("disabled",!0),W("ngModel",i.service.getCharacteristic("CurrentPosition").value),r(3),y(d(29,30,"accessories.control.closed")),r(3),y(d(32,32,"accessories.control.open")))},dependencies:[se,X,re,ae,V],encapsulation:2})}return e})();var dc=e=>({"window-on":e});function mc(e,n){e&1&&v(0,"div",2),e&2&&(m("inlineSVG","/assets/hap-icons/window-covering-closed.svg"),M("aria-label","Window Covering (Closed)"))}function uc(e,n){e&1&&v(0,"div",2),e&2&&(m("inlineSVG","/assets/hap-icons/window-covering-open.svg"),M("aria-label","Window Covering (Open)"))}function vc(e,n){e&1&&(c(0),p(1,"translate")),e&2&&b(" ",d(1,1,"accessories.control.closed")," ")}function gc(e,n){if(e&1&&(c(0),p(1,"translate")),e&2){let t=g(2);j(" ",d(1,2,"accessories.control.open")," ",t.service.values.CurrentPosition,"% ")}}function fc(e,n){e&1&&(c(0),p(1,"translate")),e&2&&b(" ",d(1,1,"accessories.control.open")," ")}function hc(e,n){if(e&1&&(a(0,"div",4),h(1,vc,2,3),h(2,gc,2,4),h(3,fc,2,3),s()),e&2){let t=g();r(),C(t.service.values.CurrentPosition===0?1:-1),r(),C(t.service.values.CurrentPosition>0&&t.service.values.CurrentPosition<100?2:-1),r(),C(t.service.values.CurrentPosition===100?3:-1)}}function Cc(e,n){e&1&&(a(0,"div",5),c(1),p(2,"translate"),s()),e&2&&(r(),b("",d(2,1,"accessories.control.opening"),"..."))}function _c(e,n){e&1&&(a(0,"div",5),c(1),p(2,"translate"),s()),e&2&&(r(),b("",d(2,1,"accessories.control.closing"),"..."))}var io=(()=>{class e{$modal=A(ee);service;onClick(){this.service.values.TargetPosition?this.service.getCharacteristic("TargetPosition").setValue(0):this.service.getCharacteristic("TargetPosition").setValue(100)}onLongClick(){let t=this.$modal.open(to,{size:"md",backdrop:"static"});t.componentInstance.service=this.service}static \u0275fac=function(o){return new(o||e)};static \u0275cmp=T({type:e,selectors:[["app-window-covering"]],inputs:{service:"service"},decls:9,vars:9,consts:[["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),h(2,mc,1,2,"div",2),h(3,uc,1,2,"div",2),a(4,"div",3),c(5),s(),h(6,hc,4,3,"div",4),h(7,Cc,3,3,"div",5),h(8,_c,3,3,"div",5),s()()),o&2&&(m("ngClass",q(7,dc,i.service.values.TargetPosition)),r(2),C(i.service.values.TargetPosition?-1:2),r(),C(i.service.values.TargetPosition?3:-1),r(2),y(i.service.customName||i.service.serviceName),r(),C(i.service.values.PositionState===2?6:-1),r(),C(i.service.values.PositionState===1?7:-1),r(),C(i.service.values.PositionState===0?8:-1))},dependencies:[K,E,R,N,V],encapsulation:2})}return e})();function xc(e,n){e&1&&(c(0),p(1,"translate")),e&2&&b(" ",d(1,1,"accessories.control.closed")," ")}function Sc(e,n){if(e&1&&(c(0),p(1,"translate")),e&2){let t=g(2);j(" ",d(1,2,"accessories.control.open")," ",t.service.getCharacteristic("CurrentPosition").value,"% ")}}function yc(e,n){if(e&1&&h(0,xc,2,3)(1,Sc,2,4),e&2){let t=g();C(t.service.values.CurrentPosition===0?0:1)}}function bc(e,n){e&1&&(c(0),p(1,"translate")),e&2&&b(" ",d(1,1,"accessories.control.opening"),"... ")}function Tc(e,n){e&1&&(c(0),p(1,"translate")),e&2&&b(" ",d(1,1,"accessories.control.closing"),"... ")}var no=(()=>{class e{$activeModal=A(Y);service;targetMode;targetPositionChanged=new ie;targetPosition;constructor(){this.targetPositionChanged.pipe(ne(500)).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()}onTargetPositionChange(){this.targetPositionChanged.next(this.targetPosition.value)}dismissModal(){this.$activeModal.dismiss("Dismiss")}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))}static \u0275fac=function(o){return new(o||e)};static \u0275cmp=T({type:e,selectors:[["ng-component"]],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"],[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),v(2,"h5",2),a(3,"button",3),p(4,"translate"),S("click",function(){return i.dismissModal()}),s()(),a(5,"div",4)(6,"div",5)(7,"div",6),h(8,yc,2,1)(9,bc,2,3)(10,Tc,2,3),s()(),a(11,"h6",7),c(12),p(13,"translate"),s(),a(14,"nouislider",8),$("ngModelChange",function(_){return z(i.targetPosition.value,_)||(i.targetPosition.value=_),_}),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),$("ngModelChange",function(_){return z(i.service.getCharacteristic("CurrentPosition").value,_)||(i.service.getCharacteristic("CurrentPosition").value=_),_}),s(),a(26,"div",9)(27,"span",10),c(28),p(29,"translate"),s(),a(30,"span",10),c(31),p(32,"translate"),s()()(),v(33,"div",12),s()),o&2&&(r(2),m("innerText",i.service.customName||i.service.serviceName),r(),M("aria-label",d(4,20,"form.button_close")),r(5),C(i.service.values.PositionState===2?8:i.service.values.PositionState===1?9:i.service.values.PositionState===0?10:-1),r(4),j("",d(13,22,"accessories.control.target"),": ",i.targetPosition.value,"%"),r(2),m("min",i.targetPosition.min)("max",i.targetPosition.max)("step",i.targetPosition.step),W("ngModel",i.targetPosition.value),r(3),y(d(18,24,"accessories.control.closed")),r(3),y(d(21,26,"accessories.control.open")),r(3),j(" ",d(24,28,"accessories.control.current"),": ",i.service.getCharacteristic("CurrentPosition").value,"% "),r(2),m("min",0)("max",100)("step",1)("disabled",!0),W("ngModel",i.service.getCharacteristic("CurrentPosition").value),r(3),y(d(29,30,"accessories.control.closed")),r(3),y(d(32,32,"accessories.control.open")))},dependencies:[se,X,re,ae,V],encapsulation:2})}return e})();var Mc=e=>({"window-on":e});function kc(e,n){e&1&&v(0,"div",2),e&2&&(m("inlineSVG","/assets/hap-icons/window-closed.svg"),M("aria-label","Window (Closed)"))}function wc(e,n){e&1&&v(0,"div",2),e&2&&(m("inlineSVG","/assets/hap-icons/window-open.svg"),M("aria-label","Window (Open)"))}function Vc(e,n){e&1&&(c(0),p(1,"translate")),e&2&&b(" ",d(1,1,"accessories.control.closed")," ")}function Ec(e,n){if(e&1&&(c(0),p(1,"translate")),e&2){let t=g(2);j(" ",d(1,2,"accessories.control.open")," ",t.service.values.CurrentPosition,"% ")}}function Dc(e,n){e&1&&(c(0),p(1,"translate")),e&2&&b(" ",d(1,1,"accessories.control.open")," ")}function Ic(e,n){if(e&1&&(a(0,"div",4),h(1,Vc,2,3),h(2,Ec,2,4),h(3,Dc,2,3),s()),e&2){let t=g();r(),C(t.service.values.CurrentPosition===0?1:-1),r(),C(t.service.values.CurrentPosition>0&&t.service.values.CurrentPosition<100?2:-1),r(),C(t.service.values.CurrentPosition===100?3:-1)}}function Pc(e,n){e&1&&(a(0,"div",5),c(1),p(2,"translate"),s()),e&2&&(r(),b("",d(2,1,"accessories.control.opening"),"..."))}function Bc(e,n){e&1&&(a(0,"div",5),c(1),p(2,"translate"),s()),e&2&&(r(),b("",d(2,1,"accessories.control.closing"),"..."))}var oo=(()=>{class e{$modal=A(ee);service;onClick(){this.service.values.TargetPosition?this.service.getCharacteristic("TargetPosition").setValue(0):this.service.getCharacteristic("TargetPosition").setValue(100)}onLongClick(){let t=this.$modal.open(no,{size:"md",backdrop:"static"});t.componentInstance.service=this.service}static \u0275fac=function(o){return new(o||e)};static \u0275cmp=T({type:e,selectors:[["app-window"]],inputs:{service:"service"},decls:9,vars:9,consts:[["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),h(2,kc,1,2,"div",2),h(3,wc,1,2,"div",2),a(4,"div",3),c(5),s(),h(6,Ic,4,3,"div",4),h(7,Pc,3,3,"div",5),h(8,Bc,3,3,"div",5),s()()),o&2&&(m("ngClass",q(7,Mc,i.service.values.TargetPosition)),r(2),C(i.service.values.TargetPosition?-1:2),r(),C(i.service.values.TargetPosition?3:-1),r(2),y(i.service.customName||i.service.serviceName),r(),C(i.service.values.PositionState===2?6:-1),r(),C(i.service.values.PositionState===1?7:-1),r(),C(i.service.values.PositionState===0?8:-1))},dependencies:[K,E,R,N,V],encapsulation:2})}return e})();function Ac(e,n){if(e&1){let t=O();a(0,"a",4),S("click",function(){P(t);let i=g();return B(i.$accessories.showAccessoryInformation(i.service))}),v(1,"i",5),s()}}function Hc(e,n){e&1&&v(0,"i",1)}function Lc(e,n){if(e&1&&(a(0,"app-switch",2),c(1,"Switch"),s()),e&2){let t=g();m("service",t.service)}}function Fc(e,n){if(e&1&&(a(0,"app-thermostat",2),c(1,"Thermostat"),s()),e&2){let t=g();m("service",t.service)}}function Oc(e,n){if(e&1&&(a(0,"app-outlet",2),c(1,"Outlet"),s()),e&2){let t=g();m("service",t.service)}}function Nc(e,n){if(e&1&&(a(0,"app-fan",3),c(1,"Fan"),s()),e&2){let t=g();m("service",t.service)}}function Rc(e,n){if(e&1&&(a(0,"app-fan-v2",3),c(1,"Fan"),s()),e&2){let t=g();m("service",t.service)}}function Gc(e,n){if(e&1&&(a(0,"app-air-purifier",3),c(1,"Air Purifier"),s()),e&2){let t=g();m("service",t.service)}}function jc(e,n){if(e&1&&(a(0,"app-light-bulb",2),c(1,"Lightbulb"),s()),e&2){let t=g();m("service",t.service)}}function Uc(e,n){if(e&1&&(a(0,"app-light-sensor",2),c(1,"Light Sensor"),s()),e&2){let t=g();m("service",t.service)}}function Wc(e,n){if(e&1&&(a(0,"app-lock-mechanism",2),c(1,"Lock Mechanism"),s()),e&2){let t=g();m("service",t.service)}}function zc(e,n){if(e&1&&(a(0,"app-temperature-sensor",2),c(1,"Temperature Sensor"),s()),e&2){let t=g();m("service",t.service)}}function $c(e,n){if(e&1&&(a(0,"app-garage-door-opener",2),c(1,"Garage Door Opener"),s()),e&2){let t=g();m("service",t.service)}}function qc(e,n){if(e&1&&(a(0,"app-motion-sensor",2),c(1,"Motion Sensor"),s()),e&2){let t=g();m("service",t.service)}}function Kc(e,n){if(e&1&&(a(0,"app-occupancy-sensor",2),c(1,"Occupancy Sensor"),s()),e&2){let t=g();m("service",t.service)}}function Zc(e,n){if(e&1&&(a(0,"app-contact-sensor",2),c(1,"Contact Sensor"),s()),e&2){let t=g();m("service",t.service)}}function Qc(e,n){if(e&1&&(a(0,"app-humidity-sensor",2),c(1,"Humidity Sensor"),s()),e&2){let t=g();m("service",t.service)}}function Jc(e,n){if(e&1&&(a(0,"app-air-quality-sensor",2),c(1,"Air Quality Sensor"),s()),e&2){let t=g();m("service",t.service)}}function Xc(e,n){if(e&1&&(a(0,"app-window-covering",2),c(1,"Window Covering"),s()),e&2){let t=g();m("service",t.service)}}function Yc(e,n){if(e&1&&(a(0,"app-window",2),c(1,"Window"),s()),e&2){let t=g();m("service",t.service)}}function ep(e,n){if(e&1&&(a(0,"app-door",2),c(1,"Door"),s()),e&2){let t=g();m("service",t.service)}}function tp(e,n){if(e&1&&(a(0,"app-television",2),c(1,"Television"),s()),e&2){let t=g();m("service",t.service)}}function ip(e,n){if(e&1&&(a(0,"app-battery",2),c(1,"Battery"),s()),e&2){let t=g();m("service",t.service)}}function np(e,n){if(e&1&&(a(0,"app-battery",2),c(1,"Battery"),s()),e&2){let t=g();m("service",t.service)}}function op(e,n){if(e&1&&(a(0,"app-speaker",2),c(1,"Speaker"),s()),e&2){let t=g();m("service",t.service)}}function rp(e,n){if(e&1&&(a(0,"app-security-system",2),c(1,"Security System"),s()),e&2){let t=g();m("service",t.service)}}function ap(e,n){if(e&1&&(a(0,"app-leak-sensor",2),c(1,"Leak Sensor"),s()),e&2){let t=g();m("service",t.service)}}function sp(e,n){if(e&1&&(a(0,"app-smoke-sensor",2),c(1,"Smoke Sensor"),s()),e&2){let t=g();m("service",t.service)}}function lp(e,n){if(e&1&&(a(0,"app-carbon-monoxide-sensor",2),c(1,"Carbon Monoxide Sensor"),s()),e&2){let t=g();m("service",t.service)}}function cp(e,n){if(e&1&&(a(0,"app-carbon-dioxide-sensor",2),c(1,"Carbon Dioxide Sensor"),s()),e&2){let t=g();m("service",t.service)}}function pp(e,n){if(e&1&&(a(0,"app-valve",2),c(1,"Valve"),s()),e&2){let t=g();m("service",t.service)}}function dp(e,n){if(e&1&&(a(0,"app-irrigation-system",2),c(1,"Irrigation System"),s()),e&2){let t=g();m("service",t.service)}}function mp(e,n){if(e&1&&(a(0,"app-heater-cooler",2),c(1,"Heater Cooler"),s()),e&2){let t=g();m("service",t.service)}}function up(e,n){if(e&1&&(a(0,"app-humidifier-dehumidifier",2),c(1,"Humidifier Dehumidifier"),s()),e&2){let t=g();m("service",t.service)}}function vp(e,n){if(e&1&&(a(0,"app-stateless-programmable-switch",2),c(1,"Stateless Programmable Switch"),s()),e&2){let t=g();m("service",t.service)}}function gp(e,n){if(e&1&&(a(0,"app-filter-maintenance",2),c(1,"Filter Maintenance"),s()),e&2){let t=g();m("service",t.service)}}function fp(e,n){if(e&1&&(a(0,"app-unknown",2),c(1),s()),e&2){let t=g();m("service",t.service),r(),y(t.service.humanType)}}var Vh=(()=>{class e{$accessories=A(Ri);service;static \u0275fac=function(o){return new(o||e)};static \u0275cmp=T({type:e,selectors:[["app-accessory-tile"]],inputs:{service:"service"},decls:38,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&&(Di(0),h(1,Ac,2,0,"a",0),h(2,Hc,1,0,"i",1),h(3,Lc,2,1,"app-switch",2)(4,Fc,2,1,"app-thermostat",2)(5,Oc,2,1,"app-outlet",2)(6,Nc,2,1,"app-fan",3)(7,Rc,2,1,"app-fan-v2",3)(8,Gc,2,1,"app-air-purifier",3)(9,jc,2,1,"app-light-bulb",2)(10,Uc,2,1,"app-light-sensor",2)(11,Wc,2,1,"app-lock-mechanism",2)(12,zc,2,1,"app-temperature-sensor",2)(13,$c,2,1,"app-garage-door-opener",2)(14,qc,2,1,"app-motion-sensor",2)(15,Kc,2,1,"app-occupancy-sensor",2)(16,Zc,2,1,"app-contact-sensor",2)(17,Qc,2,1,"app-humidity-sensor",2)(18,Jc,2,1,"app-air-quality-sensor",2)(19,Xc,2,1,"app-window-covering",2)(20,Yc,2,1,"app-window",2)(21,ep,2,1,"app-door",2)(22,tp,2,1,"app-television",2)(23,ip,2,1,"app-battery",2)(24,np,2,1,"app-battery",2)(25,op,2,1,"app-speaker",2)(26,rp,2,1,"app-security-system",2)(27,ap,2,1,"app-leak-sensor",2)(28,sp,2,1,"app-smoke-sensor",2)(29,lp,2,1,"app-carbon-monoxide-sensor",2)(30,cp,2,1,"app-carbon-dioxide-sensor",2)(31,pp,2,1,"app-valve",2)(32,dp,2,1,"app-irrigation-system",2)(33,mp,2,1,"app-heater-cooler",2)(34,up,2,1,"app-humidifier-dehumidifier",2)(35,vp,2,1,"app-stateless-programmable-switch",2)(36,gp,2,1,"app-filter-maintenance",2)(37,fp,2,2,"app-unknown",2),Ii()),o&2){let l;r(),C(i.$accessories.readyForControl?1:-1),r(),C(i.$accessories.readyForControl?-1:2),r(),C((l=i.service.customType||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:l==="FilterMaintenance"?36:37)}},dependencies:[zn,Qn,On,Cn,fn,rn,In,Pn,Hn,Kn,Sn,Ln,Fn,pn,kn,an,io,oo,mn,qn,sn,Un,Rn,Vn,Gn,cn,ln,eo,wn,bn,Mn,Wn,xn,Jn],encapsulation:2})}return e})();export{Vh as a};