homebridge-config-ui-x 5.6.1-alpha.0 → 5.6.1-alpha.2

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 (72) hide show
  1. package/CHANGELOG.md +3 -1
  2. package/dist/bin/platforms/linux.js +8 -0
  3. package/dist/bin/platforms/linux.js.map +1 -1
  4. package/dist/core/config/config.interfaces.d.ts +1 -0
  5. package/dist/core/node-version.constants.d.ts +2 -0
  6. package/dist/core/node-version.constants.js +13 -0
  7. package/dist/core/node-version.constants.js.map +1 -0
  8. package/dist/main.js +49 -0
  9. package/dist/main.js.map +1 -1
  10. package/dist/modules/status/status.service.js +6 -0
  11. package/dist/modules/status/status.service.js.map +1 -1
  12. package/package.json +2 -1
  13. package/public/{chunk-L4RPKDC3.js → chunk-2J5WM27C.js} +1 -1
  14. package/public/{chunk-ZQZ5I4FM.js → chunk-3SZXYHZ7.js} +1 -1
  15. package/public/{chunk-VLHFM7YB.js → chunk-3UHE6DAU.js} +1 -1
  16. package/public/{chunk-DVXXGF7N.js → chunk-4AZGG3DH.js} +1 -1
  17. package/public/{chunk-OKNSWYF6.js → chunk-4TGHF4WJ.js} +1 -1
  18. package/public/{chunk-CAJFOAD6.js → chunk-553CBSN6.js} +1 -1
  19. package/public/{chunk-VPVOJY3A.js → chunk-5KPEXX56.js} +1 -1
  20. package/public/{chunk-VDSHPYOH.js → chunk-5TKZ6DSN.js} +1 -1
  21. package/public/{chunk-A4KXW37O.js → chunk-5YWH7BEY.js} +1 -1
  22. package/public/chunk-7X4AZXBG.js +1 -0
  23. package/public/{chunk-6TK4RQBZ.js → chunk-BB7GU4XN.js} +1 -1
  24. package/public/{chunk-HDPBZHHF.js → chunk-BY3RXO7C.js} +1 -1
  25. package/public/{chunk-F77WCNU4.js → chunk-DNMTLJJC.js} +1 -1
  26. package/public/{chunk-DTMOK5TB.js → chunk-F3A5OCAG.js} +1 -1
  27. package/public/{chunk-WJUO6GY5.js → chunk-FMVLLNRB.js} +1 -1
  28. package/public/{chunk-BD6IJR4X.js → chunk-G4Z3AWKX.js} +1 -1
  29. package/public/{chunk-6WDBLDRL.js → chunk-HI2HDLWI.js} +1 -1
  30. package/public/{chunk-OYOUOD4L.js → chunk-HRHX77JF.js} +1 -1
  31. package/public/{chunk-NZ7UA7SO.js → chunk-IMRE7PGA.js} +1 -1
  32. package/public/{chunk-BNHPRY33.js → chunk-ISZCITJE.js} +4 -4
  33. package/public/{chunk-CX7TXJIY.js → chunk-IYBMK3YF.js} +1 -1
  34. package/public/{chunk-BOLDHQTT.js → chunk-JYALHYIW.js} +1 -1
  35. package/public/chunk-K322IJI4.js +1 -0
  36. package/public/chunk-KR5AMLCF.js +1 -0
  37. package/public/{chunk-UNFBBBDL.js → chunk-KSRKWX3K.js} +1 -1
  38. package/public/chunk-KX5ROPVY.js +49 -0
  39. package/public/{chunk-TKFF73V6.js → chunk-LFNV5HMQ.js} +1 -1
  40. package/public/{chunk-IV6TUPJT.js → chunk-M7ULGL7J.js} +1 -1
  41. package/public/{chunk-DUGT3GJ7.js → chunk-MDMFQFDA.js} +1 -1
  42. package/public/{chunk-BYTBK544.js → chunk-MISRPZ7L.js} +1 -1
  43. package/public/{chunk-R4GGOAF6.js → chunk-MOXHIZ4D.js} +1 -1
  44. package/public/{chunk-SJUKCNIS.js → chunk-NWUXPEBS.js} +1 -1
  45. package/public/{chunk-ZKHCCIX5.js → chunk-O2VDEXRW.js} +1 -1
  46. package/public/{chunk-5Z6YPA3O.js → chunk-ORHZLJWX.js} +1 -1
  47. package/public/{chunk-M5RHNCP4.js → chunk-PBY5PJTN.js} +1 -1
  48. package/public/{chunk-BLS3DXJS.js → chunk-QIMU7P43.js} +1 -1
  49. package/public/{chunk-2L4KWYTY.js → chunk-QM422LIF.js} +1 -1
  50. package/public/{chunk-6VF3JF7A.js → chunk-T36GHJD3.js} +1 -1
  51. package/public/chunk-T5RMWDMM.js +1 -0
  52. package/public/{chunk-Z74T7BII.js → chunk-U3JPVOO3.js} +1 -1
  53. package/public/{chunk-VAXXB4A5.js → chunk-VL7TOLVN.js} +1 -1
  54. package/public/{chunk-Y2RZ7M7X.js → chunk-WMHIONEY.js} +1 -1
  55. package/public/{chunk-37R64NMC.js → chunk-WMXFDTR7.js} +1 -1
  56. package/public/{chunk-5PTZEVUY.js → chunk-WQH3TDSI.js} +1 -1
  57. package/public/{chunk-75F24BCX.js → chunk-X2S6KTXT.js} +1 -1
  58. package/public/chunk-Y3QHT5Y6.js +4 -0
  59. package/public/{chunk-DJXV5Z62.js → chunk-Y4FQI7HO.js} +1 -1
  60. package/public/{chunk-K5PBEVVM.js → chunk-Y6UQTMSA.js} +1 -1
  61. package/public/{chunk-GOBF7QNZ.js → chunk-Z7YOVUF5.js} +1 -1
  62. package/public/{chunk-JTDAUPMU.js → chunk-ZHHTANWQ.js} +1 -1
  63. package/public/{chunk-KBEQLTTC.js → chunk-ZIRWXU6S.js} +1 -1
  64. package/public/{chunk-LNHHYTJF.js → chunk-ZR264YRD.js} +1 -1
  65. package/public/index.html +1 -1
  66. package/public/{main-JIZS5MG4.js → main-GDIZ5CS6.js} +1 -1
  67. package/public/chunk-2VOCXTNG.js +0 -1
  68. package/public/chunk-5YKCH3TG.js +0 -4
  69. package/public/chunk-CL57JQ4Q.js +0 -1
  70. package/public/chunk-GOCCZ4QI.js +0 -1
  71. package/public/chunk-ST76UP7U.js +0 -49
  72. package/public/chunk-WVRVWL4V.js +0 -1
@@ -1 +0,0 @@
1
- import{$c as zt,Ac as Kt,B as at,C as lt,D as Pt,Db as Tt,Fa as Ht,Fb as $t,Ga as gt,Gb as V,Ib as f,L as Mt,La as a,Mc as Ct,Na as Bt,O as P,Qa as L,Sb as $,Ub as v,Vb as b,Wa as mt,X as ut,Xa as vt,Xb as x,Za as Vt,_ as ct,a as c,ab as N,b as F,cb as bt,e as ne,ea as d,fa as ht,ha as Y,ia as S,id as qt,ja as u,jb as W,ka as Nt,kb as H,n as p,oa as dt,pa as ft,r as k,rb as h,sa as J,sb as g,t as D,ta as pt,tb as m,ub as B,wa as M,x as ot,yb as _t,za as Q,zb as yt}from"./chunk-ZHRPBG7M.js";var Xt=ne((Li,Ne)=>{Ne.exports={name:"homebridge-config-ui-x",displayName:"Homebridge UI",version:"5.6.1-alpha.0",description:"A web based management, configuration and control platform for Homebridge.",author:"oznu <dev@oz.nu>",license:"MIT",funding:[{type:"github",url:"https://github.com/sponsors/oznu"},{type:"paypal",url:"https://paypal.me/oznu"}],repository:{type:"git",url:"git+https://github.com/homebridge/homebridge-config-ui-x.git"},bugs:{url:"https://github.com/homebridge/homebridge-config-ui-x/issues"},keywords:["homebridge-plugin","ui","gui","web","homebridge","homebridge-config-ui-x","ui-x","config-ui-x","homebridge-x","homebridge server","homebridge ui","homebridge-ui","homebridge gui","homebridge-gui","web interface","config ui","management","config editor","linux","macOS","osx","windows","raspberry pi","accessory control","smart home","hb-service"],main:"./dist/index.js",bin:{"hb-service":"dist/bin/hb-service.js"},engines:{node:"^20.19.0 || ^22.12.0 || ^24.0.0",homebridge:"^1.8.0 || ^2.0.0-alpha.0"},scripts:{build:"npm run build:server && npm run build:ui","build:server":"rimraf dist && tsc -p tsconfig.build.json","build:ui":"npm run build --prefix ui",check:"npm run check:server && npm run check:ui","check:server":"npm install && npm outdated","check:ui":"npm install --prefix ui && npm outdated --prefix ui","lang-sync":"ts-node scripts/lang-sync.ts",lint:"eslint . --max-warnings=0","lint:fix":"npm run lint -- --fix",prepublishOnly:"npm i --package-lock-only && npm run lint && npm run build",start:"ts-node -r tsconfig-paths/register src/main.ts",test:"vitest run","test-coverage":"npm run test -- --coverage","upgrade-install":"./scripts/upgrade-install.sh",watch:'concurrently "npm run watch:ui" "npm run watch:server"',"watch:server":"nodemon","watch:ui":"npm run start --prefix ui"},dependencies:{"@fastify/helmet":"13.0.1","@fastify/multipart":"9.2.1","@fastify/static":"8.2.0","@homebridge/hap-client":"3.1.1","@homebridge/node-pty-prebuilt-multiarch":"0.13.1","@nestjs/axios":"4.0.1","@nestjs/common":"11.1.6","@nestjs/core":"11.1.6","@nestjs/jwt":"11.0.0","@nestjs/passport":"11.0.5","@nestjs/platform-fastify":"11.1.6","@nestjs/platform-socket.io":"11.1.6","@nestjs/swagger":"11.2.0","@nestjs/websockets":"11.1.6",axios:"1.11.0","bash-color":"0.0.4","class-transformer":"0.5.1","class-validator":"0.14.2",commander:"14.0.0",dayjs:"1.11.18",fastify:"5.6.0","fs-extra":"11.3.1",jsonwebtoken:"9.0.2",lodash:"4.17.21","node-cache":"5.1.2","node-schedule":"2.1.1",ora:"8.2.0",otplib:"12.0.1","p-limit":"7.1.1",passport:"0.7.0","passport-jwt":"4.0.1","reflect-metadata":"0.2.2",rxjs:"7.8.2",semver:"7.7.2",systeminformation:"5.27.8",tail:"2.2.6",tar:"7.4.3","tcp-port-used":"1.0.2",unzipper:"0.12.3"},devDependencies:{"@antfu/eslint-config":"^5.2.2","@nestjs/testing":"^11.1.6","@prettier/plugin-xml":"^3.4.2","@types/fs-extra":"^11.0.4","@types/lodash":"^4.17.20","@types/node":"^24.3.1","@types/node-schedule":"^2.1.8","@types/passport-jwt":"^4.0.1","@types/semver":"^7.7.1","@types/tail":"^2.2.3","@types/tcp-port-used":"^1.0.4","@types/unzipper":"^0.10.11","@vitest/coverage-v8":"^3.2.4",concurrently:"^9.2.1","eslint-plugin-format":"^1.0.1","form-data":"^4.0.4",nodemon:"^3.1.10",rimraf:"^6.0.1","ts-loader":"^9.5.4","ts-node":"^10.9.2","tsconfig-paths":"^4.2.0",typescript:"^5.9.2","unplugin-swc":"^1.5.7",vitest:"^3.2.4"},overrides:{"@nestjs/platform-fastify":{fastify:"5.6.0"}},maintainers:[{email:"bwp91@icloud.com",name:"bwp91"},{email:"dev@oz.nu",name:"oznu"},{email:"northern.man1@gmail.com",name:"northernman"},{email:"mail@anderl-bauer.de",name:"supereg"},{email:"khaos.tian@gmail.com",name:"khaost"},{email:"erik.baauw@xs4all.nl",name:"ebaauw"},{email:"donavan.becker@icloud.com",name:"donavanbecker"},{email:"dustin.greif@gmail.com",name:"dustin.greif"},{email:"nfarina@gmail.com",name:"nfarina"}],scarfSettings:{enabled:!1}}});var y=(function(e){return e[e.State=0]="State",e[e.Transition=1]="Transition",e[e.Sequence=2]="Sequence",e[e.Group=3]="Group",e[e.Animate=4]="Animate",e[e.Keyframes=5]="Keyframes",e[e.Style=6]="Style",e[e.Trigger=7]="Trigger",e[e.Reference=8]="Reference",e[e.AnimateChild=9]="AnimateChild",e[e.AnimateRef=10]="AnimateRef",e[e.Query=11]="Query",e[e.Stagger=12]="Stagger",e})(y||{}),se="*";function Lt(e,n){return{type:y.Trigger,name:e,definitions:n,options:{}}}function X(e,n=null){return{type:y.Animate,styles:n,timings:e}}function He(e,n=null){return{type:y.Sequence,steps:e,options:n}}function K(e){return{type:y.Style,styles:e,offset:null}}function z(e,n,t){return{type:y.State,name:e,styles:n,options:t}}function tt(e,n,t=null){return{type:y.Transition,expr:e,animation:n,options:t}}var wt=class{_onDoneFns=[];_onStartFns=[];_onDestroyFns=[];_originalOnDoneFns=[];_originalOnStartFns=[];_started=!1;_destroyed=!1;_finished=!1;_position=0;parentPlayer=null;totalTime;constructor(n=0,t=0){this.totalTime=n+t}_onFinish(){this._finished||(this._finished=!0,this._onDoneFns.forEach(n=>n()),this._onDoneFns=[])}onStart(n){this._originalOnStartFns.push(n),this._onStartFns.push(n)}onDone(n){this._originalOnDoneFns.push(n),this._onDoneFns.push(n)}onDestroy(n){this._onDestroyFns.push(n)}hasStarted(){return this._started}init(){}play(){this.hasStarted()||(this._onStart(),this.triggerMicrotask()),this._started=!0}triggerMicrotask(){queueMicrotask(()=>this._onFinish())}_onStart(){this._onStartFns.forEach(n=>n()),this._onStartFns=[]}pause(){}restart(){}finish(){this._onFinish()}destroy(){this._destroyed||(this._destroyed=!0,this.hasStarted()||this._onStart(),this.finish(),this._onDestroyFns.forEach(n=>n()),this._onDestroyFns=[])}reset(){this._started=!1,this._finished=!1,this._onStartFns=this._originalOnStartFns,this._onDoneFns=this._originalOnDoneFns}setPosition(n){this._position=this.totalTime?n*this.totalTime:1}getPosition(){return this.totalTime?this._position/this.totalTime:1}triggerCallback(n){let t=n=="start"?this._onStartFns:this._onDoneFns;t.forEach(i=>i()),t.length=0}},Dt=class{_onDoneFns=[];_onStartFns=[];_finished=!1;_started=!1;_destroyed=!1;_onDestroyFns=[];parentPlayer=null;totalTime=0;players;constructor(n){this.players=n;let t=0,i=0,s=0,r=this.players.length;r==0?queueMicrotask(()=>this._onFinish()):this.players.forEach(o=>{o.onDone(()=>{++t==r&&this._onFinish()}),o.onDestroy(()=>{++i==r&&this._onDestroy()}),o.onStart(()=>{++s==r&&this._onStart()})}),this.totalTime=this.players.reduce((o,l)=>Math.max(o,l.totalTime),0)}_onFinish(){this._finished||(this._finished=!0,this._onDoneFns.forEach(n=>n()),this._onDoneFns=[])}init(){this.players.forEach(n=>n.init())}onStart(n){this._onStartFns.push(n)}_onStart(){this.hasStarted()||(this._started=!0,this._onStartFns.forEach(n=>n()),this._onStartFns=[])}onDone(n){this._onDoneFns.push(n)}onDestroy(n){this._onDestroyFns.push(n)}hasStarted(){return this._started}play(){this.parentPlayer||this.init(),this._onStart(),this.players.forEach(n=>n.play())}pause(){this.players.forEach(n=>n.pause())}restart(){this.players.forEach(n=>n.restart())}finish(){this._onFinish(),this.players.forEach(n=>n.finish())}destroy(){this._onDestroy()}_onDestroy(){this._destroyed||(this._destroyed=!0,this._onFinish(),this.players.forEach(n=>n.destroy()),this._onDestroyFns.forEach(n=>n()),this._onDestroyFns=[])}reset(){this.players.forEach(n=>n.reset()),this._destroyed=!1,this._finished=!1,this._started=!1}setPosition(n){let t=n*this.totalTime;this.players.forEach(i=>{let s=i.totalTime?Math.min(1,t/i.totalTime):1;i.setPosition(s)})}getPosition(){let n=this.players.reduce((t,i)=>t===null||i.totalTime>t.totalTime?i:t,null);return n!=null?n.getPosition():0}beforeDestroy(){this.players.forEach(n=>{n.beforeDestroy&&n.beforeDestroy()})}triggerCallback(n){let t=n=="start"?this._onStartFns:this._onDoneFns;t.forEach(i=>i()),t.length=0}},re="!";var G=class{},le=(()=>{class e{handle(t){return t.key}static \u0275fac=function(i){return new(i||e)};static \u0275prov=d({token:e,factory:e.\u0275fac})}return e})(),O=class{},ue=(()=>{class e extends O{compile(t,i){return t}compileTranslations(t,i){return t}static \u0275fac=(()=>{let t;return function(s){return(t||(t=Q(e)))(s||e)}})();static \u0275prov=d({token:e,factory:e.\u0275fac})}return e})(),E=class{},ce=(()=>{class e extends E{getTranslation(t){return k({})}static \u0275fac=(()=>{let t;return function(s){return(t||(t=Q(e)))(s||e)}})();static \u0275prov=d({token:e,factory:e.\u0275fac})}return e})();function et(e,n){if(e===n)return!0;if(e===null||n===null)return!1;if(e!==e&&n!==n)return!0;let t=typeof e,i=typeof n,s;if(t==i&&t=="object")if(Array.isArray(e)){if(!Array.isArray(n))return!1;if((s=e.length)==n.length){for(let r=0;r<s;r++)if(!et(e[r],n[r]))return!1;return!0}}else{if(Array.isArray(n))return!1;if(_(e)&&_(n)){let r=Object.create(null);for(let o in e){if(!et(e[o],n[o]))return!1;r[o]=!0}for(let o in n)if(!(o in r)&&typeof n[o]<"u")return!1;return!0}}return!1}function T(e){return typeof e<"u"&&e!==null}function Zt(e){return e!==void 0}function _(e){return Z(e)&&!I(e)&&e!==null}function Z(e){return typeof e=="object"&&e!==null}function I(e){return Array.isArray(e)}function it(e){return typeof e=="string"}function he(e){return typeof e=="function"}function nt(e){if(I(e))return e.map(n=>nt(n));if(_(e)){let n={};return Object.keys(e).forEach(t=>{n[t]=nt(e[t])}),n}else return e}function St(e,n){if(!Z(e))return nt(n);let t=nt(e);return Z(t)&&Z(n)&&Object.keys(n).forEach(i=>{_(n[i])?i in e?t[i]=St(e[i],n[i]):Object.assign(t,{[i]:n[i]}):Object.assign(t,{[i]:n[i]})}),t}function Ut(e,n){let t=n.split(".");n="";do{n+=t.shift();let i=!t.length;if(T(e)){if(_(e)&&Zt(e[n])&&(_(e[n])||I(e[n])||i)){e=e[n],n="";continue}if(I(e)){let s=parseInt(n,10);if(Zt(e[s])&&(_(e[s])||I(e[s])||i)){e=e[s],n="";continue}}}if(i){e=void 0;continue}n+="."}while(t.length);return e}function de(e,n,t){return St(e,fe(n,t))}function fe(e,n){return e.split(".").reduceRight((t,i)=>({[i]:t}),n)}var A=class{},pe=(()=>{class e extends A{templateMatcher=/{{\s?([^{}\s]*)\s?}}/g;interpolate(t,i){if(it(t))return this.interpolateString(t,i);if(he(t))return this.interpolateFunction(t,i)}interpolateFunction(t,i){return t(i)}interpolateString(t,i){return i?t.replace(this.templateMatcher,(s,r)=>{let o=this.getInterpolationReplacement(i,r);return o!==void 0?o:s}):t}getInterpolationReplacement(t,i){return this.formatValue(Ut(t,i))}formatValue(t){if(it(t))return t;if(typeof t=="number"||typeof t=="boolean")return t.toString();if(t===null)return"null";if(I(t))return t.join(", ");if(Z(t))return typeof t.toString=="function"&&t.toString!==Object.prototype.toString?t.toString():JSON.stringify(t)}static \u0275fac=(()=>{let t;return function(s){return(t||(t=Q(e)))(s||e)}})();static \u0275prov=d({token:e,factory:e.\u0275fac})}return e})(),xt=(()=>{class e{_onTranslationChange=new p;_onLangChange=new p;_onFallbackLangChange=new p;fallbackLang=null;currentLang;translations={};languages=[];getTranslations(t){return this.translations[t]}setTranslations(t,i,s){this.translations[t]=s&&this.hasTranslationFor(t)?St(this.translations[t],i):i,this.addLanguages([t]),this._onTranslationChange.next({lang:t,translations:this.getTranslations(t)})}getLanguages(){return this.languages}getCurrentLang(){return this.currentLang}getFallbackLang(){return this.fallbackLang}setFallbackLang(t,i=!0){this.fallbackLang=t,i&&this._onFallbackLangChange.next({lang:t,translations:this.translations[t]})}setCurrentLang(t,i=!0){this.currentLang=t,i&&this._onLangChange.next({lang:t,translations:this.translations[t]})}get onTranslationChange(){return this._onTranslationChange.asObservable()}get onLangChange(){return this._onLangChange.asObservable()}get onFallbackLangChange(){return this._onFallbackLangChange.asObservable()}addLanguages(t){this.languages=Array.from(new Set([...this.languages,...t]))}hasTranslationFor(t){return typeof this.translations[t]<"u"}deleteTranslations(t){delete this.translations[t]}getTranslation(t){let i=this.getValue(this.currentLang,t);return i===void 0&&this.fallbackLang!=null&&this.fallbackLang!==this.currentLang&&(i=this.getValue(this.fallbackLang,t)),i}getValue(t,i){return Ut(this.getTranslations(t),i)}static \u0275fac=function(i){return new(i||e)};static \u0275prov=d({token:e,factory:e.\u0275fac})}return e})(),It=new Y("TRANSLATE_CONFIG"),q=e=>D(e)?e:k(e);var Ft=(()=>{class e{loadingTranslations;pending=!1;_translationRequests={};lastUseLanguage=null;currentLoader=u(E);compiler=u(O);parser=u(A);missingTranslationHandler=u(G);store=u(xt);extend=!1;get onTranslationChange(){return this.store.onTranslationChange}get onLangChange(){return this.store.onLangChange}get onFallbackLangChange(){return this.store.onFallbackLangChange}get onDefaultLangChange(){return this.store.onFallbackLangChange}constructor(){let t=c({extend:!1,fallbackLang:null},u(It,{optional:!0}));t.lang&&this.use(t.lang),t.fallbackLang&&this.setFallbackLang(t.fallbackLang),t.extend&&(this.extend=!0)}setFallbackLang(t){this.getFallbackLang()||this.store.setFallbackLang(t,!1);let i=this.loadOrExtendLanguage(t);return D(i)?(i.pipe(P(1)).subscribe({next:()=>{this.store.setFallbackLang(t)},error:()=>{}}),i):(this.store.setFallbackLang(t),k(this.store.getTranslations(t)))}use(t){this.lastUseLanguage=t,this.getCurrentLang()||this.store.setCurrentLang(t,!1);let i=this.loadOrExtendLanguage(t);return D(i)?(i.pipe(P(1)).subscribe({next:()=>{this.changeLang(t)},error:()=>{}}),i):(this.changeLang(t),k(this.store.getTranslations(t)))}loadOrExtendLanguage(t){if(!this.store.hasTranslationFor(t)||this.extend)return this._translationRequests[t]=this._translationRequests[t]||this.loadAndCompileTranslations(t),this._translationRequests[t]}changeLang(t){t===this.lastUseLanguage&&this.store.setCurrentLang(t)}getCurrentLang(){return this.store.getCurrentLang()}loadAndCompileTranslations(t){this.pending=!0;let i=this.currentLoader.getTranslation(t).pipe(ut(1),P(1));return this.loadingTranslations=i.pipe(ot(s=>this.compiler.compileTranslations(s,t)),ut(1),P(1)),this.loadingTranslations.subscribe({next:s=>{this.store.setTranslations(t,s,this.extend),this.pending=!1},error:s=>{this.pending=!1}}),i}setTranslation(t,i,s=!1){let r=this.compiler.compileTranslations(i,t);this.store.setTranslations(t,r,s||this.extend)}getLangs(){return this.store.getLanguages()}addLangs(t){this.store.addLanguages(t)}getParsedResultForKey(t,i){let s=this.getTextToInterpolate(t);if(T(s))return this.runInterpolation(s,i);let r=this.missingTranslationHandler.handle(c({key:t,translateService:this},i!==void 0&&{interpolateParams:i}));return r!==void 0?r:t}getFallbackLang(){return this.store.getFallbackLang()}getTextToInterpolate(t){return this.store.getTranslation(t)}runInterpolation(t,i){if(T(t))return I(t)?this.runInterpolationOnArray(t,i):_(t)?this.runInterpolationOnDict(t,i):this.parser.interpolate(t,i)}runInterpolationOnArray(t,i){return t.map(s=>this.runInterpolation(s,i))}runInterpolationOnDict(t,i){let s={};for(let r in t){let o=this.runInterpolation(t[r],i);o!==void 0&&(s[r]=o)}return s}getParsedResult(t,i){return t instanceof Array?this.getParsedResultForArray(t,i):this.getParsedResultForKey(t,i)}getParsedResultForArray(t,i){let s={},r=!1;for(let l of t)s[l]=this.getParsedResultForKey(l,i),r=r||D(s[l]);if(!r)return s;let o=t.map(l=>q(s[l]));return Pt(o).pipe(ot(l=>{let C={};return l.forEach((U,w)=>{C[t[w]]=U}),C}))}get(t,i){if(!T(t)||!t.length)throw new Error('Parameter "key" is required and cannot be empty');return this.pending?this.loadingTranslations.pipe(Mt(()=>q(this.getParsedResult(t,i)))):q(this.getParsedResult(t,i))}getStreamOnTranslationChange(t,i){if(!T(t)||!t.length)throw new Error('Parameter "key" is required and cannot be empty');return at(lt(()=>this.get(t,i)),this.onTranslationChange.pipe(ct(()=>{let s=this.getParsedResult(t,i);return q(s)})))}stream(t,i){if(!T(t)||!t.length)throw new Error('Parameter "key" required');return at(lt(()=>this.get(t,i)),this.onLangChange.pipe(ct(()=>{let s=this.getParsedResult(t,i);return q(s)})))}instant(t,i){if(!T(t)||t.length===0)throw new Error('Parameter "key" is required and cannot be empty');let s=this.getParsedResult(t,i);return D(s)?Array.isArray(t)?t.reduce((r,o)=>(r[o]=o,r),{}):t:s}set(t,i,s=this.getCurrentLang()){this.store.setTranslations(s,de(this.store.getTranslations(s),t,it(i)?this.compiler.compile(i,s):this.compiler.compileTranslations(i,s)),!1)}reloadLang(t){return this.resetLang(t),this.loadAndCompileTranslations(t)}resetLang(t){delete this._translationRequests[t],this.store.deleteTranslations(t)}static getBrowserLang(){if(typeof window>"u"||!window.navigator)return;let t=this.getBrowserCultureLang();return t?t.split(/[-_]/)[0]:void 0}static getBrowserCultureLang(){if(!(typeof window>"u"||typeof window.navigator>"u"))return window.navigator.languages?window.navigator.languages[0]:window.navigator.language||window.navigator.browserLanguage||window.navigator.userLanguage}getBrowserLang(){return e.getBrowserLang()}getBrowserCultureLang(){return e.getBrowserCultureLang()}get defaultLang(){return this.getFallbackLang()}get currentLang(){return this.store.getCurrentLang()}get langs(){return this.store.getLanguages()}setDefaultLang(t){return this.setFallbackLang(t)}getDefaultLang(){return this.getFallbackLang()}static \u0275fac=function(i){return new(i||e)};static \u0275prov=d({token:e,factory:e.\u0275fac})}return e})();var Ye=(()=>{class e{translate=u(Ft);_ref=u(Kt);value="";lastKey=null;lastParams=[];onTranslationChange;onLangChange;onFallbackLangChange;updateValue(t,i,s){let r=o=>{this.value=o!==void 0?o:t,this.lastKey=t,this._ref.markForCheck()};if(s){let o=this.translate.getParsedResult(t,i);D(o)?o.subscribe(r):r(o)}this.translate.get(t,i).subscribe(r)}transform(t,...i){if(!t||!t.length)return t;if(et(t,this.lastKey)&&et(i,this.lastParams))return this.value;let s;if(T(i[0])&&i.length)if(it(i[0])&&i[0].length){let r=i[0].replace(/(')?([a-zA-Z0-9_]+)(')?(\s)?:/g,'"$2":').replace(/:(\s)?(')(.*?)(')/g,':"$3"');try{s=JSON.parse(r)}catch(o){throw new SyntaxError(`Wrong parameter in TranslatePipe. Expected a valid Object, received: ${i[0]}`)}}else _(i[0])&&(s=i[0]);return this.lastKey=t,this.lastParams=i,this.updateValue(t,s),this._dispose(),this.onTranslationChange||(this.onTranslationChange=this.translate.onTranslationChange.subscribe(r=>{(this.lastKey&&r.lang===this.translate.getCurrentLang()||r.lang===this.translate.getFallbackLang())&&(this.lastKey=null,this.updateValue(t,s,r.translations))})),this.onLangChange||(this.onLangChange=this.translate.onLangChange.subscribe(r=>{this.lastKey&&(this.lastKey=null,this.updateValue(t,s,r.translations))})),this.onFallbackLangChange||(this.onFallbackLangChange=this.translate.onFallbackLangChange.subscribe(()=>{this.lastKey&&(this.lastKey=null,this.updateValue(t,s))})),this.value}_dispose(){typeof this.onTranslationChange<"u"&&(this.onTranslationChange.unsubscribe(),this.onTranslationChange=void 0),typeof this.onLangChange<"u"&&(this.onLangChange.unsubscribe(),this.onLangChange=void 0),typeof this.onFallbackLangChange<"u"&&(this.onFallbackLangChange.unsubscribe(),this.onFallbackLangChange=void 0)}ngOnDestroy(){this._dispose()}static \u0275fac=function(i){return new(i||e)};static \u0275pipe=Vt({name:"translate",type:e,pure:!1});static \u0275prov=d({token:e,factory:e.\u0275fac})}return e})();function ge(e){return{provide:E,useClass:e}}function me(e){return{provide:O,useClass:e}}function ve(e){return{provide:A,useClass:e}}function be(e){return{provide:G,useClass:e}}function Je(e={}){return _e(c({compiler:me(ue),parser:ve(pe),loader:ge(ce),missingTranslationHandler:be(le)},e),!0)}function _e(e={},n){let t=[];e.loader&&t.push(e.loader),e.compiler&&t.push(e.compiler),e.parser&&t.push(e.parser),e.missingTranslationHandler&&t.push(e.missingTranslationHandler),n&&t.push(xt),(e.useDefaultLang||e.defaultLanguage)&&(console.warn("The `useDefaultLang` and `defaultLanguage` options are deprecated. Please use `fallbackLang` instead."),e.useDefaultLang===!0&&e.defaultLanguage&&(e.fallbackLang=e.defaultLanguage));let i={fallbackLang:e.fallbackLang??null,lang:e.lang,extend:e.extend??!1};return t.push({provide:It,useValue:i}),t.push({provide:Ft,useClass:Ft,deps:[xt,E,O,A,G,It]}),t}var Yt=["toast-component",""];function ye(e,n){if(e&1){let t=Tt();g(0,"button",5),V("click",function(){dt(t);let s=f();return ft(s.remove())}),g(1,"span",6),b(2,"\xD7"),m()()}}function Te(e,n){if(e&1&&(_t(0),b(1),yt()),e&2){let t=f(2);a(),x("[",t.duplicatesCount+1,"]")}}function Ce(e,n){if(e&1&&(g(0,"div"),b(1),N(2,Te,2,1,"ng-container",4),m()),e&2){let t=f();v(t.options.titleClass),H("aria-label",t.title),a(),x(" ",t.title," "),a(),h("ngIf",t.duplicatesCount)}}function we(e,n){if(e&1&&B(0,"div",7),e&2){let t=f();v(t.options.messageClass),h("innerHTML",t.message,gt)}}function De(e,n){if(e&1&&(g(0,"div",8),b(1),m()),e&2){let t=f();v(t.options.messageClass),H("aria-label",t.message),a(),x(" ",t.message," ")}}function Le(e,n){if(e&1&&(g(0,"div"),B(1,"div",9),m()),e&2){let t=f();a(),$("width",t.width()+"%")}}function xe(e,n){if(e&1){let t=Tt();g(0,"button",5),V("click",function(){dt(t);let s=f();return ft(s.remove())}),g(1,"span",6),b(2,"\xD7"),m()()}}function Ie(e,n){if(e&1&&(_t(0),b(1),yt()),e&2){let t=f(2);a(),x("[",t.duplicatesCount+1,"]")}}function Fe(e,n){if(e&1&&(g(0,"div"),b(1),N(2,Ie,2,1,"ng-container",4),m()),e&2){let t=f();v(t.options.titleClass),H("aria-label",t.title),a(),x(" ",t.title," "),a(),h("ngIf",t.duplicatesCount)}}function Se(e,n){if(e&1&&B(0,"div",7),e&2){let t=f();v(t.options.messageClass),h("innerHTML",t.message,gt)}}function Oe(e,n){if(e&1&&(g(0,"div",8),b(1),m()),e&2){let t=f();v(t.options.messageClass),H("aria-label",t.message),a(),x(" ",t.message," ")}}function Ee(e,n){if(e&1&&(g(0,"div"),B(1,"div",9),m()),e&2){let t=f();a(),$("width",t.width()+"%")}}var Ot=class{_attachedHost;component;viewContainerRef;injector;constructor(n,t){this.component=n,this.injector=t}attach(n,t){return this._attachedHost=n,n.attach(this,t)}detach(){let n=this._attachedHost;if(n)return this._attachedHost=void 0,n.detach()}get isAttached(){return this._attachedHost!=null}setAttachedHost(n){this._attachedHost=n}},Et=class{_attachedPortal;_disposeFn;attach(n,t){return this._attachedPortal=n,this.attachComponentPortal(n,t)}detach(){this._attachedPortal&&this._attachedPortal.setAttachedHost(),this._attachedPortal=void 0,this._disposeFn&&(this._disposeFn(),this._disposeFn=void 0)}setDisposeFn(n){this._disposeFn=n}},At=class{_overlayRef;componentInstance;duplicatesCount=0;_afterClosed=new p;_activate=new p;_manualClose=new p;_resetTimeout=new p;_countDuplicate=new p;constructor(n){this._overlayRef=n}manualClose(){this._manualClose.next(),this._manualClose.complete()}manualClosed(){return this._manualClose.asObservable()}timeoutReset(){return this._resetTimeout.asObservable()}countDuplicate(){return this._countDuplicate.asObservable()}close(){this._overlayRef.detach(),this._afterClosed.next(),this._manualClose.next(),this._afterClosed.complete(),this._manualClose.complete(),this._activate.complete(),this._resetTimeout.complete(),this._countDuplicate.complete()}afterClosed(){return this._afterClosed.asObservable()}isInactive(){return this._activate.isStopped}activate(){this._activate.next(),this._activate.complete()}afterActivate(){return this._activate.asObservable()}onDuplicate(n,t){n&&this._resetTimeout.next(),t&&this._countDuplicate.next(++this.duplicatesCount)}},R=class{toastId;config;message;title;toastType;toastRef;_onTap=new p;_onAction=new p;constructor(n,t,i,s,r,o){this.toastId=n,this.config=t,this.message=i,this.title=s,this.toastType=r,this.toastRef=o,this.toastRef.afterClosed().subscribe(()=>{this._onAction.complete(),this._onTap.complete()})}triggerTap(){this._onTap.next(),this.config.tapToDismiss&&this._onTap.complete()}onTap(){return this._onTap.asObservable()}triggerAction(n){this._onAction.next(n)}onAction(){return this._onAction.asObservable()}},Jt={maxOpened:0,autoDismiss:!1,newestOnTop:!0,preventDuplicates:!1,countDuplicates:!1,resetTimeoutOnDuplicate:!1,includeTitleDuplicates:!1,iconClasses:{error:"toast-error",info:"toast-info",success:"toast-success",warning:"toast-warning"},closeButton:!1,disableTimeOut:!1,timeOut:5e3,extendedTimeOut:1e3,enableHtml:!1,progressBar:!1,toastClass:"ngx-toastr",positionClass:"toast-top-right",titleClass:"toast-title",messageClass:"toast-message",easing:"ease-in",easeTime:300,tapToDismiss:!0,onActivateTick:!1,progressAnimation:"decreasing"},Qt=new Y("ToastConfig"),Rt=class extends Et{_hostDomElement;_componentFactoryResolver;_appRef;constructor(n,t,i){super(),this._hostDomElement=n,this._componentFactoryResolver=t,this._appRef=i}attachComponentPortal(n,t){let i=this._componentFactoryResolver.resolveComponentFactory(n.component),s;return s=i.create(n.injector),this._appRef.attachView(s.hostView),this.setDisposeFn(()=>{this._appRef.detachView(s.hostView),s.destroy()}),t?this._hostDomElement.insertBefore(this._getComponentRootNode(s),this._hostDomElement.firstChild):this._hostDomElement.appendChild(this._getComponentRootNode(s)),s}_getComponentRootNode(n){return n.hostView.rootNodes[0]}},Ae=(()=>{class e{_document=u(pt);_containerElement;ngOnDestroy(){this._containerElement&&this._containerElement.parentNode&&this._containerElement.parentNode.removeChild(this._containerElement)}getContainerElement(){return this._containerElement||this._createContainer(),this._containerElement}_createContainer(){let t=this._document.createElement("div");t.classList.add("overlay-container"),t.setAttribute("aria-live","polite"),this._document.body.appendChild(t),this._containerElement=t}static \u0275fac=function(i){return new(i||e)};static \u0275prov=d({token:e,factory:e.\u0275fac,providedIn:"root"})}return e})(),jt=class{_portalHost;constructor(n){this._portalHost=n}attach(n,t=!0){return this._portalHost.attach(n,t)}detach(){return this._portalHost.detach()}},Re=(()=>{class e{_overlayContainer=u(Ae);_componentFactoryResolver=u(Bt);_appRef=u(W);_document=u(pt);_paneElements=new Map;create(t,i){return this._createOverlayRef(this.getPaneElement(t,i))}getPaneElement(t="",i){return this._paneElements.get(i)||this._paneElements.set(i,{}),this._paneElements.get(i)[t]||(this._paneElements.get(i)[t]=this._createPaneElement(t,i)),this._paneElements.get(i)[t]}_createPaneElement(t,i){let s=this._document.createElement("div");return s.id="toast-container",s.classList.add(t),s.classList.add("toast-container"),i?i.getContainerElement().appendChild(s):this._overlayContainer.getContainerElement().appendChild(s),s}_createPortalHost(t){return new Rt(t,this._componentFactoryResolver,this._appRef)}_createOverlayRef(t){return new jt(this._createPortalHost(t))}static \u0275fac=function(i){return new(i||e)};static \u0275prov=d({token:e,factory:e.\u0275fac,providedIn:"root"})}return e})(),Wt=(()=>{class e{overlay;_injector;sanitizer;ngZone;toastrConfig;currentlyActive=0;toasts=[];overlayContainer;previousToastMessage;index=0;constructor(t,i,s,r,o){this.overlay=i,this._injector=s,this.sanitizer=r,this.ngZone=o,this.toastrConfig=c(c({},t.default),t.config),t.config.iconClasses&&(this.toastrConfig.iconClasses=c(c({},t.default.iconClasses),t.config.iconClasses))}show(t,i,s={},r=""){return this._preBuildNotification(r,t,i,this.applyConfig(s))}success(t,i,s={}){let r=this.toastrConfig.iconClasses.success||"";return this._preBuildNotification(r,t,i,this.applyConfig(s))}error(t,i,s={}){let r=this.toastrConfig.iconClasses.error||"";return this._preBuildNotification(r,t,i,this.applyConfig(s))}info(t,i,s={}){let r=this.toastrConfig.iconClasses.info||"";return this._preBuildNotification(r,t,i,this.applyConfig(s))}warning(t,i,s={}){let r=this.toastrConfig.iconClasses.warning||"";return this._preBuildNotification(r,t,i,this.applyConfig(s))}clear(t){for(let i of this.toasts)if(t!==void 0){if(i.toastId===t){i.toastRef.manualClose();return}}else i.toastRef.manualClose()}remove(t){let i=this._findToast(t);if(!i||(i.activeToast.toastRef.close(),this.toasts.splice(i.index,1),this.currentlyActive=this.currentlyActive-1,!this.toastrConfig.maxOpened||!this.toasts.length))return!1;if(this.currentlyActive<this.toastrConfig.maxOpened&&this.toasts[this.currentlyActive]){let s=this.toasts[this.currentlyActive].toastRef;s.isInactive()||(this.currentlyActive=this.currentlyActive+1,s.activate())}return!0}findDuplicate(t="",i="",s,r){let{includeTitleDuplicates:o}=this.toastrConfig;for(let l of this.toasts){let C=o&&l.title===t;if((!o||C)&&l.message===i)return l.toastRef.onDuplicate(s,r),l}return null}applyConfig(t={}){return c(c({},this.toastrConfig),t)}_findToast(t){for(let i=0;i<this.toasts.length;i++)if(this.toasts[i].toastId===t)return{index:i,activeToast:this.toasts[i]};return null}_preBuildNotification(t,i,s,r){return r.onActivateTick?this.ngZone.run(()=>this._buildNotification(t,i,s,r)):this._buildNotification(t,i,s,r)}_buildNotification(t,i,s,r){if(!r.toastComponent)throw new Error("toastComponent required");let o=this.findDuplicate(s,i,this.toastrConfig.resetTimeoutOnDuplicate&&r.timeOut>0,this.toastrConfig.countDuplicates);if((this.toastrConfig.includeTitleDuplicates&&s||i)&&this.toastrConfig.preventDuplicates&&o!==null)return o;this.previousToastMessage=i;let l=!1;this.toastrConfig.maxOpened&&this.currentlyActive>=this.toastrConfig.maxOpened&&(l=!0,this.toastrConfig.autoDismiss&&this.clear(this.toasts[0].toastId));let C=this.overlay.create(r.positionClass,this.overlayContainer);this.index=this.index+1;let U=i;i&&r.enableHtml&&(U=this.sanitizer.sanitize(Ht.HTML,i));let w=new At(C),st=new R(this.index,r,U,s,t,w),te=[{provide:R,useValue:st}],ee=J.create({providers:te,parent:this._injector}),ie=new Ot(r.toastComponent,ee),kt=C.attach(ie,r.newestOnTop);w.componentInstance=kt.instance;let rt={toastId:this.index,title:s||"",message:i||"",toastRef:w,onShown:w.afterActivate(),onHidden:w.afterClosed(),onTap:st.onTap(),onAction:st.onAction(),portal:kt};return l||(this.currentlyActive=this.currentlyActive+1,setTimeout(()=>{rt.toastRef.activate()})),this.toasts.push(rt),rt}static \u0275fac=function(i){return new(i||e)(S(Qt),S(Re),S(J),S(qt),S(bt))};static \u0275prov=d({token:e,factory:e.\u0275fac,providedIn:"root"})}return e})(),je=(()=>{class e{toastrService;toastPackage;ngZone;message;title;options;duplicatesCount;originalTimeout;width=M(-1);toastClasses="";state;get _state(){return this.state()}get displayStyle(){if(this.state().value==="inactive")return"none"}timeout;intervalId;hideTime;sub;sub1;sub2;sub3;constructor(t,i,s){this.toastrService=t,this.toastPackage=i,this.ngZone=s,this.message=i.message,this.title=i.title,this.options=i.config,this.originalTimeout=i.config.timeOut,this.toastClasses=`${i.toastType} ${i.config.toastClass}`,this.sub=i.toastRef.afterActivate().subscribe(()=>{this.activateToast()}),this.sub1=i.toastRef.manualClosed().subscribe(()=>{this.remove()}),this.sub2=i.toastRef.timeoutReset().subscribe(()=>{this.resetTimeout()}),this.sub3=i.toastRef.countDuplicate().subscribe(r=>{this.duplicatesCount=r}),this.state=M({value:"inactive",params:{easeTime:this.toastPackage.config.easeTime,easing:"ease-in"}})}ngOnDestroy(){this.sub.unsubscribe(),this.sub1.unsubscribe(),this.sub2.unsubscribe(),this.sub3.unsubscribe(),clearInterval(this.intervalId),clearTimeout(this.timeout)}activateToast(){this.state.update(t=>F(c({},t),{value:"active"})),!(this.options.disableTimeOut===!0||this.options.disableTimeOut==="timeOut")&&this.options.timeOut&&(this.outsideTimeout(()=>this.remove(),this.options.timeOut),this.hideTime=new Date().getTime()+this.options.timeOut,this.options.progressBar&&this.outsideInterval(()=>this.updateProgress(),10))}updateProgress(){if(this.width()===0||this.width()===100||!this.options.timeOut)return;let t=new Date().getTime(),i=this.hideTime-t;this.width.set(i/this.options.timeOut*100),this.options.progressAnimation==="increasing"&&this.width.update(s=>100-s),this.width()<=0&&this.width.set(0),this.width()>=100&&this.width.set(100)}resetTimeout(){clearTimeout(this.timeout),clearInterval(this.intervalId),this.state.update(t=>F(c({},t),{value:"active"})),this.outsideTimeout(()=>this.remove(),this.originalTimeout),this.options.timeOut=this.originalTimeout,this.hideTime=new Date().getTime()+(this.options.timeOut||0),this.width.set(-1),this.options.progressBar&&this.outsideInterval(()=>this.updateProgress(),10)}remove(){this.state().value!=="removed"&&(clearTimeout(this.timeout),this.state.update(t=>F(c({},t),{value:"removed"})),this.outsideTimeout(()=>this.toastrService.remove(this.toastPackage.toastId),+this.toastPackage.config.easeTime))}tapToast(){this.state().value!=="removed"&&(this.toastPackage.triggerTap(),this.options.tapToDismiss&&this.remove())}stickAround(){this.state().value!=="removed"&&this.options.disableTimeOut!=="extendedTimeOut"&&(clearTimeout(this.timeout),this.options.timeOut=0,this.hideTime=0,clearInterval(this.intervalId),this.width.set(0))}delayedHideToast(){this.options.disableTimeOut===!0||this.options.disableTimeOut==="extendedTimeOut"||this.options.extendedTimeOut===0||this.state().value==="removed"||(this.outsideTimeout(()=>this.remove(),this.options.extendedTimeOut),this.options.timeOut=this.options.extendedTimeOut,this.hideTime=new Date().getTime()+(this.options.timeOut||0),this.width.set(-1),this.options.progressBar&&this.outsideInterval(()=>this.updateProgress(),10))}outsideTimeout(t,i){this.ngZone?this.ngZone.runOutsideAngular(()=>this.timeout=setTimeout(()=>this.runInsideAngular(t),i)):this.timeout=setTimeout(()=>t(),i)}outsideInterval(t,i){this.ngZone?this.ngZone.runOutsideAngular(()=>this.intervalId=setInterval(()=>this.runInsideAngular(t),i)):this.intervalId=setInterval(()=>t(),i)}runInsideAngular(t){this.ngZone?this.ngZone.run(()=>t()):t()}static \u0275fac=function(i){return new(i||e)(L(Wt),L(R),L(bt))};static \u0275cmp=mt({type:e,selectors:[["","toast-component",""]],hostVars:5,hostBindings:function(i,s){i&1&&V("click",function(){return s.tapToast()})("mouseenter",function(){return s.stickAround()})("mouseleave",function(){return s.delayedHideToast()}),i&2&&($t("@flyInOut",s._state),v(s.toastClasses),$("display",s.displayStyle))},attrs:Yt,decls:5,vars:5,consts:[["type","button","class","toast-close-button","aria-label","Close",3,"click",4,"ngIf"],[3,"class",4,"ngIf"],["role","alert",3,"class","innerHTML",4,"ngIf"],["role","alert",3,"class",4,"ngIf"],[4,"ngIf"],["type","button","aria-label","Close",1,"toast-close-button",3,"click"],["aria-hidden","true"],["role","alert",3,"innerHTML"],["role","alert"],[1,"toast-progress"]],template:function(i,s){i&1&&N(0,ye,3,0,"button",0)(1,Ce,3,5,"div",1)(2,we,1,3,"div",2)(3,De,2,4,"div",3)(4,Le,2,2,"div",4),i&2&&(h("ngIf",s.options.closeButton),a(),h("ngIf",s.title),a(),h("ngIf",s.message&&s.options.enableHtml),a(),h("ngIf",s.message&&!s.options.enableHtml),a(),h("ngIf",s.options.progressBar))},dependencies:[Ct],encapsulation:2,data:{animation:[Lt("flyInOut",[z("inactive",K({opacity:0})),z("active",K({opacity:1})),z("removed",K({opacity:0})),tt("inactive => active",X("{{ easeTime }}ms {{ easing }}")),tt("active => removed",X("{{ easeTime }}ms {{ easing }}"))])]},changeDetection:0})}return e})(),ke=F(c({},Jt),{toastComponent:je}),Pe=(e={})=>Nt([{provide:Qt,useValue:{default:ke,config:e}}]),Ti=(()=>{class e{static forRoot(t={}){return{ngModule:e,providers:[Pe(t)]}}static \u0275fac=function(i){return new(i||e)};static \u0275mod=vt({type:e});static \u0275inj=ht({})}return e})();var Me=(()=>{class e{toastrService;toastPackage;appRef;message;title;options;duplicatesCount;originalTimeout;width=M(-1);toastClasses="";get displayStyle(){return this.state()==="inactive"?"none":null}state=M("inactive");timeout;intervalId;hideTime;sub;sub1;sub2;sub3;constructor(t,i,s){this.toastrService=t,this.toastPackage=i,this.appRef=s,this.message=i.message,this.title=i.title,this.options=i.config,this.originalTimeout=i.config.timeOut,this.toastClasses=`${i.toastType} ${i.config.toastClass}`,this.sub=i.toastRef.afterActivate().subscribe(()=>{this.activateToast()}),this.sub1=i.toastRef.manualClosed().subscribe(()=>{this.remove()}),this.sub2=i.toastRef.timeoutReset().subscribe(()=>{this.resetTimeout()}),this.sub3=i.toastRef.countDuplicate().subscribe(r=>{this.duplicatesCount=r})}ngOnDestroy(){this.sub.unsubscribe(),this.sub1.unsubscribe(),this.sub2.unsubscribe(),this.sub3.unsubscribe(),clearInterval(this.intervalId),clearTimeout(this.timeout)}activateToast(){this.state.set("active"),!(this.options.disableTimeOut===!0||this.options.disableTimeOut==="timeOut")&&this.options.timeOut&&(this.timeout=setTimeout(()=>{this.remove()},this.options.timeOut),this.hideTime=new Date().getTime()+this.options.timeOut,this.options.progressBar&&(this.intervalId=setInterval(()=>this.updateProgress(),10))),this.options.onActivateTick&&this.appRef.tick()}updateProgress(){if(this.width()===0||this.width()===100||!this.options.timeOut)return;let t=new Date().getTime(),i=this.hideTime-t;this.width.set(i/this.options.timeOut*100),this.options.progressAnimation==="increasing"&&this.width.update(s=>100-s),this.width()<=0&&this.width.set(0),this.width()>=100&&this.width.set(100)}resetTimeout(){clearTimeout(this.timeout),clearInterval(this.intervalId),this.state.set("active"),this.options.timeOut=this.originalTimeout,this.timeout=setTimeout(()=>this.remove(),this.originalTimeout),this.hideTime=new Date().getTime()+(this.originalTimeout||0),this.width.set(-1),this.options.progressBar&&(this.intervalId=setInterval(()=>this.updateProgress(),10))}remove(){this.state()!=="removed"&&(clearTimeout(this.timeout),this.state.set("removed"),this.timeout=setTimeout(()=>this.toastrService.remove(this.toastPackage.toastId)))}tapToast(){this.state()!=="removed"&&(this.toastPackage.triggerTap(),this.options.tapToDismiss&&this.remove())}stickAround(){this.state()!=="removed"&&(clearTimeout(this.timeout),this.options.timeOut=0,this.hideTime=0,clearInterval(this.intervalId),this.width.set(0))}delayedHideToast(){this.options.disableTimeOut===!0||this.options.disableTimeOut==="extendedTimeOut"||this.options.extendedTimeOut===0||this.state()==="removed"||(this.timeout=setTimeout(()=>this.remove(),this.options.extendedTimeOut),this.options.timeOut=this.options.extendedTimeOut,this.hideTime=new Date().getTime()+(this.options.timeOut||0),this.width.set(-1),this.options.progressBar&&(this.intervalId=setInterval(()=>this.updateProgress(),10)))}static \u0275fac=function(i){return new(i||e)(L(Wt),L(R),L(W))};static \u0275cmp=mt({type:e,selectors:[["","toast-component",""]],hostVars:4,hostBindings:function(i,s){i&1&&V("click",function(){return s.tapToast()})("mouseenter",function(){return s.stickAround()})("mouseleave",function(){return s.delayedHideToast()}),i&2&&(v(s.toastClasses),$("display",s.displayStyle))},attrs:Yt,decls:5,vars:5,consts:[["type","button","class","toast-close-button","aria-label","Close",3,"click",4,"ngIf"],[3,"class",4,"ngIf"],["role","alert",3,"class","innerHTML",4,"ngIf"],["role","alert",3,"class",4,"ngIf"],[4,"ngIf"],["type","button","aria-label","Close",1,"toast-close-button",3,"click"],["aria-hidden","true"],["role","alert",3,"innerHTML"],["role","alert"],[1,"toast-progress"]],template:function(i,s){i&1&&N(0,xe,3,0,"button",0)(1,Fe,3,5,"div",1)(2,Se,1,3,"div",2)(3,Oe,2,4,"div",3)(4,Ee,2,2,"div",4),i&2&&(h("ngIf",s.options.closeButton),a(),h("ngIf",s.title),a(),h("ngIf",s.message&&s.options.enableHtml),a(),h("ngIf",s.message&&!s.options.enableHtml),a(),h("ngIf",s.options.progressBar))},dependencies:[Ct],encapsulation:2,changeDetection:0})}return e})(),Ci=F(c({},Jt),{toastComponent:Me});var j={serverTarget:Xt().version,production:!0,socket:"",api:{base:(()=>{let n=document.querySelector("base")?.getAttribute("href")||"/";return n.endsWith("/")?`${n}api`:`${n}/api`})(),socket:`${window.location.protocol==="http:"?"ws://":"wss://"}${window.location.host}`,origin:window.location.origin},jwt:{tokenKey:"access_token",allowedDomains:[document.location.host],disallowedRoutes:[(()=>{let n=document.querySelector("base")?.getAttribute("href")||"/",t=n.endsWith("/")?`${n}api`:`${n}/api`;return`${window.location.protocol}//${document.location.host}${t}/auth/login`})()]},apiHttpOptions:{},owm:{appid:"fec67b55f7f74deaa28df89ba6a60821"}};var Ei=(()=>{class e{$http=u(zt);get(t,i){return this.$http.get(`${j.api.base}${t}`,i)}post(t,i,s){return this.$http.post(`${j.api.base}${t}`,i,s)}put(t,i,s){return this.$http.put(`${j.api.base}${t}`,i,s)}patch(t,i,s){return this.$http.patch(`${j.api.base}${t}`,i,s)}delete(t,i){return this.$http.delete(`${j.api.base}${t}`,i)}static \u0275fac=function(i){return new(i||e)};static \u0275prov=d({token:e,factory:e.\u0275fac,providedIn:"root"})}return e})();export{y as a,se as b,Lt as c,X as d,He as e,K as f,tt as g,wt as h,Dt as i,re as j,Ft as k,Ye as l,Je as m,Wt as n,Ti as o,j as p,Ei as q};
@@ -1 +0,0 @@
1
- import{a as Ke}from"./chunk-TUN7H57E.js";import{a as qe}from"./chunk-VAXXB4A5.js";import{a as Qe}from"./chunk-DTMOK5TB.js";import{a as je}from"./chunk-LHQCUFCP.js";import{a as Ge}from"./chunk-OQM4FTFW.js";import{a as Je}from"./chunk-CAJFOAD6.js";import{a as mt,c as ut}from"./chunk-MD7IQ7EC.js";import{a as _t}from"./chunk-CGPMZGNR.js";import{a as We}from"./chunk-BLS3DXJS.js";import{g as ce,m as R,n as se,t as me}from"./chunk-QHDPBN4J.js";import{B as oe,C as re,b as ne,c as de,e as ae,j as k,k as Pe,l as Ve,n as Ae,p as pe,s as Re,t as Me,v as De,w as Ne,x as Le,z as Oe}from"./chunk-D2RHA7X2.js";import{a as Ue}from"./chunk-6TK4RQBZ.js";import"./chunk-CX7TXJIY.js";import{d as W,e as ze}from"./chunk-LV5TYHZ7.js";import{b as Z}from"./chunk-DVXXGF7N.js";import{c as Fe,d as ge,f as le,g as be,k as M,l as A,n as D,p as He,q as N}from"./chunk-CL57JQ4Q.js";import{Db as E,Eb as j,Ga as ee,Gb as x,Ha as xe,Hb as K,Ib as b,Kc as q,La as t,M as w,Mb as Se,Nb as Ie,Ob as ye,Pc as ie,Rc as Be,Vb as l,Wa as V,Wb as u,Xb as g,Zc as Te,_c as $e,a as Ce,ac as we,bc as ke,cc as Ee,g as he,gc as P,h as f,hc as F,ic as te,ja as C,kb as v,lb as _,mb as h,mc as r,nc as s,oa as S,ob as O,oc as L,pa as I,pb as z,qb as H,rb as m,sb as a,tb as o,ub as p,vb as $,w as B,wb as T,xb as U}from"./chunk-ZHRPBG7M.js";var Xe=(i,c)=>({"green-text":i,"grey-text":c});function ht(i,c){if(i&1){let e=E();a(0,"li",9)(1,"div",10),l(2),p(3,"br"),a(4,"small",11),p(5,"i",12),r(6,"translate"),l(7," \xB7 "),a(8,"span",13),l(9),o(),l(10),r(11,"titlecase"),o()(),a(12,"div",14)(13,"input",23),r(14,"translate"),x("click",function(){let d=S(e).$implicit,y=b();return I(y.toggleList(d._username))}),o(),p(15,"label",24),o()()}if(i&2){let e=c.$implicit,n=b();t(2),g(" ",e.name," "),t(3),m("ngbTooltip",s(6,11,e._isPaired?"status.widget.qr_paired":"status.widget.qr_unpaired"))("openDelay",150)("ngClass",F(17,Xe,e._isPaired,!e._isPaired)),t(4),u(e._username),t(),g(" \xB7 ",s(11,13,e._category)," "),t(3),m("id","hidePluginUpdates_"+e._username)("checked",!n.isInList(e._username))("disabled",n.clicked),v("aria-label",s(14,15,"form.button_allow")+" "+e.name),t(2),m("for","hidePluginUpdates_"+e._username)}}function gt(i,c){i&1&&(l(0),r(1,"translate")),i&2&&g(" ",s(1,1,"form.button_save")," ")}function bt(i,c){i&1&&p(0,"i",22)}var Ye=(()=>{class i{$activeModal=C(R);$api=C(N);$settings=C(Z);$toastr=C(D);$translate=C(M);originalBlacklist=[];updatedBlacklist=[];existingBlacklist=[];clicked=!1;mainPairing={};pairings=[];get blacklistHasUpdated(){return this.updatedBlacklist.join(",")!==this.originalBlacklist.join(",")}ngOnInit(){return f(this,null,function*(){this.updatedBlacklist=this.existingBlacklist.map(e=>e.trim().toUpperCase()).sort((e,n)=>e.localeCompare(n)),this.originalBlacklist=[...this.updatedBlacklist];try{let e=yield B(this.$api.get("/server/pairings"));this.mainPairing=e.find(n=>n._main),this.pairings=e.filter(n=>!n._main).sort((n,d)=>n.name.localeCompare(d.name))}catch(e){console.error(e),this.$toastr.error(e.message,this.$translate.instant("toast.title_error")),this.$activeModal.close()}})}toggleList(e){this.updatedBlacklist.includes(e)?this.updatedBlacklist=this.updatedBlacklist.filter(n=>n!==e):(this.updatedBlacklist.push(e),this.updatedBlacklist.sort((n,d)=>n.localeCompare(d)))}isInList(e){return this.updatedBlacklist.includes(e)}updateBlacklist(){return f(this,null,function*(){this.clicked=!0;try{yield B(this.$api.put("/config-editor/ui/accessory-control/instance-blacklist",{body:this.updatedBlacklist})),this.$settings.setEnvItem("accessoryControl.instanceBlacklist",this.updatedBlacklist),this.$activeModal.close()}catch(e){this.clicked=!1,console.error(e),this.$toastr.error(e.message,this.$translate.instant("toast.title_error"))}})}dismissModal(){this.$activeModal.dismiss("Dismiss")}static \u0275fac=function(n){return new(n||i)};static \u0275cmp=V({type:i,selectors:[["ng-component"]],inputs:{existingBlacklist:"existingBlacklist"},decls:45,vars:35,consts:[[1,"modal-content"],[1,"modal-header"],[1,"modal-title"],["type","button","data-bs-dismiss","modal",1,"btn-close",3,"click","disabled"],[1,"modal-body"],[1,"text-center","mb-3"],[1,"fas","fa-list-check","primary-text",2,"font-size","75px"],[1,"mb-3"],[1,"list-group","list-group-box","mt-3","mb-0"],[1,"list-group-item","d-flex","justify-content-between","align-items-center","flex-row","pb-2"],[1,"text-start"],[1,"grey-text"],["container","body","triggers","hover","placement","left",1,"fas","fa-link",3,"ngbTooltip","openDelay","ngClass"],[1,"font-monospace"],[1,"text-end","grey-text","d-flex","align-items-center"],["type","checkbox","id","controlMainBridge",1,"rendux-input",3,"click","checked","disabled"],["for","controlMainBridge",1,"rendux-label","ms-3"],[1,"modal-footer","justify-content-between"],["type","button","data-bs-dismiss","modal",1,"btn","btn-elegant",3,"click","disabled"],[1,"text-center"],[1,"text-end"],["type","button","data-bs-dismiss","modal",1,"btn","btn-primary",3,"click","disabled"],[1,"fas","fa-spinner","fa-pulse"],["type","checkbox",1,"rendux-input",3,"click","id","checked","disabled"],[1,"rendux-label","ms-3",3,"for"]],template:function(n,d){n&1&&(a(0,"div",0)(1,"div",1)(2,"h5",2),l(3),r(4,"translate"),o(),a(5,"button",3),r(6,"translate"),x("click",function(){return d.dismissModal()}),o()(),a(7,"div",4)(8,"div",5),p(9,"i",6),o(),a(10,"ul",7)(11,"li"),l(12),r(13,"translate"),o(),a(14,"li"),l(15),r(16,"translate"),o()(),a(17,"ul",8)(18,"li",9)(19,"div",10),l(20),p(21,"br"),a(22,"small",11),p(23,"i",12),r(24,"translate"),l(25," \xB7 "),a(26,"span",13),l(27),o(),l(28," \xB7 Homebridge "),o()(),a(29,"div",14)(30,"input",15),r(31,"translate"),x("click",function(){return d.toggleList(d.mainPairing._username)}),o(),p(32,"label",16),o()(),z(33,ht,16,20,"li",9,O),o()(),a(35,"div",17)(36,"div",10)(37,"button",18),x("click",function(){return d.dismissModal()}),l(38),r(39,"translate"),o()(),p(40,"div",19),a(41,"div",20)(42,"button",21),x("click",function(){return d.updateBlacklist()}),_(43,gt,2,3),_(44,bt,1,0,"i",22),o()()()()),n&2&&(t(3),u(s(4,18,"settings.security.ui_control")),t(2),m("disabled",d.clicked),v("aria-label",s(6,20,"form.button_close")),t(7),u(s(13,22,"settings.security.ui_control_desc")),t(3),u(s(16,24,"settings.security.ui_control_desc_2")),t(5),g(" ",d.mainPairing.name),t(3),m("ngbTooltip",s(24,26,d.mainPairing._isPaired?"status.widget.qr_paired":"status.widget.qr_unpaired"))("openDelay",150)("ngClass",F(32,Xe,d.mainPairing._isPaired,!d.mainPairing._isPaired)),t(4),u(d.mainPairing._username),t(3),m("checked",!d.isInList(d.mainPairing._username))("disabled",d.clicked),v("aria-label",s(31,28,"plugins.manage.hide_updates")),t(3),H(d.pairings),t(4),m("disabled",d.clicked),t(),g(" ",s(39,30,"form.button_close")," "),t(4),m("disabled",!d.blacklistHasUpdated||d.clicked),t(),h(d.clicked?-1:43),t(),h(d.clicked?44:-1))},dependencies:[q,oe,me,A,ie],encapsulation:2})}return i})();var at=he(_t(),1);var Ze=he(mt(),1),et=he(ut(),1);var vt=i=>({maxBackupSizeText:i});function ft(i,c){if(i&1&&U(0,"input",10),i&2){let e=b(2);j("value",e.selectedBackup.fileName)}}function Ct(i,c){if(i&1){let e=E();$(0,"input",12),K("change",function(d){S(e);let y=b(2);return I(y.handleRestoreFileInput(d.target.files))}),T()}}function xt(i,c){if(i&1&&($(0,"div",4)(1,"div",7),U(2,"i",8),T(),$(3,"ul",9)(4,"li"),l(5),r(6,"translate"),T(),$(7,"li"),l(8),r(9,"translate"),T(),$(10,"li"),l(11),r(12,"translate"),T(),$(13,"li"),l(14),r(15,"translate"),T()(),_(16,ft,1,1,"input",10),_(17,Ct,1,0,"input",11),T()),i&2){let e=b();t(5),u(s(6,6,"backup.restore_help_one")),t(3),u(s(9,8,"backup.restore_help_two")),t(3),u(L(12,10,"backup.restore_max_size",P(15,vt,e.maxFileSizeText))),t(3),u(s(15,13,"backup.restore_warning")),t(2),h(e.selectedBackup?16:-1),t(),h(e.selectedBackup?-1:17)}}function St(i,c){if(i&1){let e=E();$(0,"button",18),r(1,"translate"),K("click",function(){S(e);let d=b(2);return I(d.dismissModal())}),l(2),r(3,"translate"),T()}if(i&2){let e=b(2);j("disabled",e.clicked),v("aria-label",s(1,3,"form.button_close")),t(2),g(" ",s(3,5,"form.button_close")," ")}}function It(i,c){if(i&1){let e=E();$(0,"button",18),r(1,"translate"),K("click",function(){S(e);let d=b(2);return I(d.reopenBackupModal())}),l(2),r(3,"translate"),T()}if(i&2){let e=b(2);j("disabled",e.clicked),v("aria-label",s(1,3,"form.button_back")),t(2),g(" ",s(3,5,"form.button_back")," ")}}function yt(i,c){i&1&&U(0,"i",19)}function wt(i,c){if(i&1&&($(0,"span"),l(1),T()),i&2){let e=b(3);t(),g("",e.uploadPercent,"% - ")}}function kt(i,c){i&1&&($(0,"span"),l(1," Extracting Archive"),T())}function Et(i,c){i&1&&($(0,"span"),l(1),r(2,"translate"),T()),i&2&&(t(),g(" ",s(2,1,"backup.label_uploading")))}function Bt(i,c){if(i&1&&($(0,"span"),_(1,yt,1,0,"i",19),_(2,wt,2,1,"span"),_(3,kt,2,0,"span"),_(4,Et,3,3,"span"),T()),i&2){let e=b(2);t(),h(!e.uploadPercent||e.uploadPercent===100?1:-1),t(),h(e.uploadPercent&&e.uploadPercent!==100?2:-1),t(),h(e.uploadPercent===100?3:-1),t(),h(e.uploadPercent!==100?4:-1)}}function Tt(i,c){i&1&&(l(0),r(1,"translate")),i&2&&g(" ",s(1,1,"form.button_restore")," ")}function $t(i,c){if(i&1){let e=E();$(0,"div",6)(1,"div",13),_(2,St,4,7,"button",14),_(3,It,4,7,"button",14),T(),U(4,"div",15),$(5,"div",16)(6,"button",17),K("click",function(){S(e);let d=b();return I(d.onRestoreBackupClick())}),_(7,Bt,5,4,"span"),_(8,Tt,2,3),T()()()}if(i&2){let e=b();t(2),h(e.setupWizardRestore?2:-1),t(),h(e.setupWizardRestore?-1:3),t(3),j("disabled",!e.selectedBackup&&!e.selectedFile||e.clicked),t(),h(e.clicked?7:-1),t(),h(e.clicked?-1:8)}}function Ft(i,c){if(i&1){let e=E();$(0,"div",6),U(1,"div",13),$(2,"div",15)(3,"button",20),K("click",function(){S(e);let d=b();return I(d.postBackupRestart())}),l(4),r(5,"translate"),T()(),U(6,"div",16),T()}i&2&&(t(4),g(" ",s(5,1,"menu.hbrestart.title")," "))}var tt=(()=>{class i{$activeModal=C(R);$api=C(N);$modal=C(se);$router=C(W);$toastr=C(D);$translate=C(M);$ws=C(Ue);io;term=new et.Terminal;termTarget;fitAddon=new Ze.FitAddon;setupWizardRestore=!1;selectedBackup=null;clicked=!1;maxFileSizeText=globalThis.backup.maxBackupSizeText;selectedFile;restoreInProgress=!1;restoreStarted=!1;restoreFailed=!1;restoreArchiveType="homebridge";uploadPercent=0;ngOnInit(){return f(this,null,function*(){this.io=this.$ws.connectToNamespace("backup"),this.termTarget=document.getElementById("plugin-log-output"),this.term.open(this.termTarget),this.fitAddon.fit(),this.io.socket.on("stdout",e=>{this.term.write(e)}),this.setupWizardRestore&&(this.restoreStarted=!0,this.restoreInProgress=!0,this.startRestore())})}onRestoreBackupClick(){this.selectedBackup?this.restoreScheduledBackup():this.restoreArchiveType==="homebridge"?this.uploadHomebridgeArchive():this.restoreArchiveType==="hbfx"&&this.uploadHbfxArchive()}handleRestoreFileInput(e){e.length?(this.selectedFile=e[0],this.selectedFile.name.endsWith(".hbfx")?this.restoreArchiveType="hbfx":this.restoreArchiveType="homebridge"):delete this.selectedFile}postBackupRestart(){this.$api.put("/backup/restart",{}).subscribe({next:()=>{this.$activeModal.close(!0),this.$router.navigate(["/"])},error:()=>{}})}reopenBackupModal(){this.$activeModal.dismiss(),this.$modal.open(ue,{size:"lg",backdrop:"static"})}ngOnDestroy(){this.io.end()}dismissModal(){this.$activeModal.dismiss("Dismiss")}uploadHomebridgeArchive(){this.term.reset(),this.clicked=!0;let e=new FormData;e.append("restoreArchive",this.selectedFile,this.selectedFile.name),this.$api.post("/backup/restore",e).subscribe({next:()=>{this.restoreStarted=!0,this.restoreInProgress=!0,setTimeout(()=>{this.startRestore()},500),this.clicked=!1},error:n=>{console.error(n),this.$toastr.error(n.error?.message||this.$translate.instant("backup.restore_failed"),this.$translate.instant("toast.title_error")),this.clicked=!1}})}restoreScheduledBackup(){return f(this,null,function*(){this.term.reset(),this.clicked=!0,this.$api.post(`/backup/scheduled-backups/${this.selectedBackup.id}/restore`,{}).subscribe({next:()=>{this.restoreStarted=!0,this.restoreInProgress=!0,setTimeout(()=>{this.startRestore()},500),this.clicked=!1},error:e=>{console.error(e),this.$toastr.error(e.error?.message||this.$translate.instant("backup.restore_failed"),this.$translate.instant("toast.title_error")),this.clicked=!1}})})}startRestore(){return f(this,null,function*(){this.io.request("do-restore").subscribe({next:()=>{this.restoreInProgress=!1,this.$toastr.success(this.$translate.instant("backup.backup_restored"),this.$translate.instant("toast.title_success")),this.setupWizardRestore&&this.postBackupRestart()},error:e=>{this.restoreFailed=!0,console.error(e),this.$toastr.error(this.$translate.instant("backup.restore_failed"),this.$translate.instant("toast.title_error"))}})})}uploadHbfxArchive(){this.term.reset(),this.clicked=!0;let e=new FormData;e.append("restoreArchive",this.selectedFile,this.selectedFile.name),this.$api.post("/backup/restore/hbfx",e,{reportProgress:!0,observe:"events"}).subscribe({next:n=>{n.type===Te.UploadProgress?this.uploadPercent=Math.round(100*n.loaded/n.total):n instanceof $e&&(this.restoreStarted=!0,this.restoreInProgress=!0,setTimeout(()=>{this.startHbfxRestore()},500),this.clicked=!1)},error:n=>{this.clicked=!1,console.error(n),this.$toastr.error(n.error?.message||this.$translate.instant("backup.restore_failed"),this.$translate.instant("toast.title_error"))}})}startHbfxRestore(){return f(this,null,function*(){this.io.request("do-restore-hbfx").subscribe({next:()=>{this.restoreInProgress=!1,this.$toastr.success(this.$translate.instant("backup.backup_restored"),this.$translate.instant("toast.title_success"))},error:e=>{this.restoreFailed=!0,console.error(e),this.$toastr.error(this.$translate.instant("backup.restore_failed"),this.$translate.instant("toast.title_error"))}})})}static \u0275fac=function(n){return new(n||i)};static \u0275cmp=V({type:i,selectors:[["ng-component"]],inputs:{setupWizardRestore:"setupWizardRestore",selectedBackup:"selectedBackup"},decls:11,vars:11,consts:[[1,"modal-content"],[1,"modal-header"],[1,"modal-title"],["type","button","data-bs-dismiss","modal",1,"btn-close",3,"click","disabled"],[1,"modal-body"],["id","plugin-log-output",1,"modal-body",3,"hidden"],[1,"modal-footer","justify-content-between"],[1,"text-center","mb-3"],[1,"fas","fa-hard-drive","primary-text",2,"font-size","75px"],[1,"mb-3"],["type","text","disabled","",1,"form-control","custom-input",3,"value"],["type","file","id","restoreFileUpload","accept","application/gzip, .gz, .hbfx",1,"form-control"],["type","file","id","restoreFileUpload","accept","application/gzip, .gz, .hbfx",1,"form-control",3,"change"],[1,"text-start"],["type","button","data-bs-dismiss","modal",1,"btn","btn-elegant",3,"disabled"],[1,"text-center"],[1,"text-end"],["type","button","data-bs-dismiss","modal",1,"btn","btn-primary",3,"click","disabled"],["type","button","data-bs-dismiss","modal",1,"btn","btn-elegant",3,"click","disabled"],[1,"fa","fa-circle-notch","fa-spin"],["type","button","data-bs-dismiss","modal",1,"btn","btn-primary",3,"click"]],template:function(n,d){n&1&&($(0,"div",0)(1,"div",1)(2,"h5",2),l(3),r(4,"translate"),T(),$(5,"button",3),r(6,"translate"),K("click",function(){return d.dismissModal()}),T()(),_(7,xt,18,17,"div",4),U(8,"div",5),_(9,$t,9,5,"div",6),_(10,Ft,7,3,"div",6),T()),n&2&&(t(3),u(s(4,7,"backup.title_backup")),t(2),j("disabled",d.restoreInProgress),v("aria-label",s(6,9,"form.button_close")),t(2),h(!d.restoreStarted&&!d.setupWizardRestore?7:-1),t(),j("hidden",!d.restoreStarted),t(),h(!d.restoreStarted||d.restoreFailed===!0?9:-1),t(),h(!d.restoreInProgress&&d.restoreStarted?10:-1))},dependencies:[A],encapsulation:2})}return i})();var it=(i,c)=>({"fa-arrow-right":i,"fa-cog fa-spin":c}),Pt=i=>({backupTime:i,dayCount:7}),Vt=(i,c)=>({"fa-trash":i,"fa-cog fa-spin":c}),At=(i,c)=>({backupSize:i,maxBackupSizeText:c});function Rt(i,c){if(i&1&&(l(0),r(1,"date"),r(2,"translate")),i&2){let e=b(2);g(" ",L(2,4,"backup.scheduled_backup_time",P(7,Pt,L(1,1,e.backupTime,"shortTime")))," ")}}function Mt(i,c){i&1&&(l(0),r(1,"translate")),i&2&&g(" ",s(1,1,"plugins.settings.restart_required")," ")}function Dt(i,c){if(i&1&&_(0,Rt,3,9)(1,Mt,2,3),i&2){let e=b();h(e.backupTime?0:1)}}function Nt(i,c){if(i&1&&(l(0),r(1,"translate")),i&2){let e=b();g(" ",s(1,1,e.backupTime?"plugins.settings.restart_required":"backup.scheduled_backup_disabled")," ")}}function Lt(i,c){if(i&1&&(a(0,"span",33),r(1,"translate"),p(2,"i",40),l(3),o()),i&2){let e=b().$implicit;m("ngbTooltip",L(1,3,"backup.backup_exceeds_max_size",F(6,At,e.size+"MB",e.maxBackupSizeText)))("openDelay",150),t(3),g(" ",e.size,"MB ")}}function Ot(i,c){if(i&1&&(a(0,"span"),l(1),o()),i&2){let e=b().$implicit;t(),g(" ",e.size,"MB ")}}function zt(i,c){if(i&1){let e=E();a(0,"li",22)(1,"span")(2,"span",32),l(3),r(4,"date"),o(),p(5,"br"),a(6,"small",23),l(7),r(8,"date"),_(9,Lt,4,9,"span",33),_(10,Ot,2,1,"span"),o()(),a(11,"span",34)(12,"button",35),r(13,"translate"),r(14,"translate"),x("click",function(){let d=S(e).$implicit,y=b(2);return I(y.restore(d))}),p(15,"i",36),o(),a(16,"button",37),r(17,"translate"),r(18,"translate"),x("click",function(){let d=S(e).$implicit,y=b(2);return I(y.download(d))}),p(19,"i",38),o(),a(20,"button",39),r(21,"translate"),r(22,"translate"),x("click",function(){let d=S(e).$implicit,y=b(2);return I(y.delete(d))}),p(23,"i",25),o()()()}if(i&2){let e=c.$implicit,n=b(2);t(2),m("ngbTooltip",e.fileName)("openDelay",150),t(),g(" ",L(4,19,e.timestamp,"mediumDate")," "),t(4),g(" ",L(8,22,e.timestamp,"shortTime")," \xB7 "),t(2),h(e.size>e.maxBackupSize?9:-1),t(),h(e.size<=e.maxBackupSize?10:-1),t(2),m("disabled",n.clicked||n.deleting||e.size>e.maxBackupSize)("ngbTooltip",s(13,25,"form.button_restore"))("openDelay",150),v("aria-label",s(14,27,"form.button_restore")),t(4),m("disabled",n.clicked||n.deleting)("ngbTooltip",s(17,29,"form.button_download"))("openDelay",150),v("aria-label",s(18,31,"form.button_download")),t(4),m("disabled",n.clicked||n.deleting)("ngbTooltip",s(21,33,"form.button_delete"))("openDelay",150),v("aria-label",s(22,35,"form.button_delete")),t(3),m("ngClass",F(37,Vt,e.id!==n.deleting,e.id===n.deleting))}}function Ht(i,c){if(i&1&&(a(0,"ul",27)(1,"li",9)(2,"h6",10),l(3),r(4,"translate"),o()(),z(5,zt,24,40,"li",22,O),o()),i&2){let e=b();t(3),u(s(4,1,"backup.files_auto")),t(2),H(e.scheduledBackups)}}var ue=(()=>{class i{$activeModal=C(R);$api=C(N);$backup=C(Je);$modal=C(se);$router=C(W);$settings=C(Z);$toastr=C(D);$translate=C(M);restartToastIsShown=!1;Date=Date;clicked=!1;scheduledBackups=[];backupTime;deleting=null;currentSettingEnabled=!1;currentSettingPath="";enabledFormControl=new k(!1);pathFormControl=new k("");ngOnInit(){this.getScheduledBackups(),this.getNextBackup(),this.currentSettingEnabled=!this.$settings.env.scheduledBackupDisable,this.currentSettingPath=this.$settings.env.scheduledBackupPath,this.enabledFormControl.patchValue(this.currentSettingEnabled),this.pathFormControl.patchValue(this.currentSettingPath),this.enabledFormControl.valueChanges.pipe(w(750)).subscribe(e=>f(this,null,function*(){this.currentSettingEnabled=e,yield this.saveUiSettingChange("scheduledBackupDisable",!this.currentSettingEnabled)})),this.pathFormControl.valueChanges.pipe(w(1500)).subscribe(e=>f(this,null,function*(){this.currentSettingPath=e,yield this.saveUiSettingChange("scheduledBackupPath",this.currentSettingPath)}))}download(e){this.$api.get(`/backup/scheduled-backups/${e.id}`,{observe:"response",responseType:"blob"}).subscribe({next:n=>{let d=e.fileName||"homebridge-backup.tar.gz",y=n.body.size;if(y>globalThis.backup.maxBackupSize){let Y=this.$translate.instant("backup.backup_exceeds_max_size",{maxBackupSizeText:globalThis.backup.maxBackupSizeText,size:`${(y/1048576).toFixed(1)}MB`});this.$toastr.warning(Y,this.$translate.instant("toast.title_warning"))}(0,at.saveAs)(n.body,d)},error:n=>{console.error(n),this.$toastr.error(this.$translate.instant("backup.backup_download_failed"),this.$translate.instant("toast.title_error"))}})}restore(e){this.$activeModal.close();let n=this.$modal.open(tt,{size:"lg",backdrop:"static"});n.componentInstance.selectedBackup=e}delete(e){this.deleting=e.id,this.$api.delete(`/backup/scheduled-backups/${e.id}`).subscribe({next:()=>{this.getScheduledBackups(),this.deleting=null},error:n=>{this.deleting=null,console.error(n),this.$toastr.error(this.$translate.instant("backup.backup_delete_failed"),this.$translate.instant("toast.title_error"))}})}onDownloadBackupClick(){return f(this,null,function*(){this.clicked=!0;try{yield this.$backup.downloadBackup(),this.clicked=!1}catch(e){this.clicked=!1,console.error(e),this.$toastr.error(e.message,this.$translate.instant("toast.title_error"))}})}onCreateBackupClick(){return f(this,null,function*(){this.clicked=!0;try{yield B(this.$api.post("/backup",{})),this.clicked=!1,this.getScheduledBackups()}catch(e){this.clicked=!1,console.error(e),this.$toastr.error(e.message,this.$translate.instant("toast.title_error"))}})}dismissModal(){this.$activeModal.dismiss("Dismiss")}saveUiSettingChange(e,n){return f(this,null,function*(){try{yield B(this.$api.put("/config-editor/ui",{key:e,value:n})),this.$settings.setEnvItem(e,n),this.showRestartToast()}catch(d){console.error(d),this.$toastr.error(d.message,this.$translate.instant("toast.title_error"))}})}getScheduledBackups(){this.$api.get("/backup/scheduled-backups").subscribe({next:e=>{this.scheduledBackups=e},error:e=>console.error(e)})}getNextBackup(){this.$api.get("/backup/scheduled-backups/next").subscribe({next:e=>{this.backupTime=e.next},error:e=>{console.error(e)}})}showRestartToast(){if(!this.restartToastIsShown){this.restartToastIsShown=!0;let e=this.$toastr.info(this.$translate.instant("settings.changes.saved"),this.$translate.instant("menu.hbrestart.title"),{timeOut:0,tapToDismiss:!0,disableTimeOut:!0,positionClass:"toast-bottom-right",enableHtml:!0});e&&e.onTap&&e.onTap.subscribe(()=>{this.$router.navigate(["/restart"])})}}static \u0275fac=function(n){return new(n||i)};static \u0275cmp=V({type:i,selectors:[["ng-component"]],decls:92,vars:80,consts:[[1,"modal-content"],[1,"modal-header"],[1,"modal-title"],["type","button","data-bs-dismiss","modal",1,"btn-close",3,"click","disabled"],[1,"modal-body"],[1,"text-center","mb-3"],[1,"fas","fa-hard-drive","primary-text",2,"font-size","75px"],[1,"mb-3"],[1,"list-group","list-group-box","mb-0"],[1,"list-group-item"],[1,"mb-0","text-center"],[1,"list-group-item","d-flex","flex-column","flex-md-row","align-items-center"],[1,"mb-2","mb-md-0","w-100","w-md-50"],[1,"grey-text","small"],[1,"text-start","text-md-end","w-100","w-md-50"],["type","text","placeholder","/home/pi/homebridge-backups",1,"form-control","custom-input",3,"formControl"],[1,"list-group-item","d-flex","justify-content-between","align-items-center","flex-row","pb-2"],[1,"text-start"],[1,"small","grey-text"],[1,"text-end","grey-text","d-flex","align-items-center"],["type","checkbox","id","disableScheduledBackups",1,"rendux-input",3,"formControl"],["for","disableScheduledBackups",1,"rendux-label"],[1,"list-group-item","d-flex","justify-content-between","align-items-center"],[1,"grey-text"],[1,"btn","btn-primary","m-0","ms-3",3,"click","disabled"],[1,"fas",3,"ngClass"],[1,"fas","fa-arrow-right"],[1,"list-group","list-group-box","mt-3","mb-0"],[1,"modal-footer","justify-content-between"],[1,"text-center"],["type","button","data-bs-dismiss","modal",1,"btn","btn-elegant",3,"click","disabled"],[1,"text-end"],["container","modal","triggers","hover",3,"ngbTooltip","openDelay"],["container","modal","triggers","hover",1,"red-text",3,"ngbTooltip","openDelay"],[2,"display","flex","flex-wrap","nowrap"],["placement","bottom","container","modal","triggers","hover",1,"btn","btn-primary","m-0","ms-3",3,"click","disabled","ngbTooltip","openDelay"],[1,"fas","fa-history"],["placement","bottom","container","modal","triggers","hover",1,"btn","btn-primary","m-0","ms-2",3,"click","disabled","ngbTooltip","openDelay"],[1,"fas","fa-download"],["placement","bottom","container","modal","triggers","hover",1,"btn","btn-danger","m-0","ms-2",3,"click","disabled","ngbTooltip","openDelay"],[1,"fas","fa-exclamation-circle"]],template:function(n,d){n&1&&(a(0,"div",0)(1,"div",1)(2,"h5",2),l(3),r(4,"translate"),o(),a(5,"button",3),r(6,"translate"),x("click",function(){return d.dismissModal()}),o()(),a(7,"div",4)(8,"div",5),p(9,"i",6),o(),a(10,"ul",7)(11,"li"),l(12),r(13,"translate"),o(),a(14,"li"),l(15),r(16,"translate"),o(),a(17,"li"),l(18),r(19,"translate"),o()(),a(20,"ul",8)(21,"li",9)(22,"h6",10),l(23),r(24,"translate"),o()(),a(25,"li",11)(26,"div",12),l(27),r(28,"translate"),p(29,"br"),a(30,"span",13),l(31),r(32,"translate"),o()(),a(33,"div",14),p(34,"input",15),r(35,"translate"),o()(),a(36,"li",16)(37,"div",17),l(38),r(39,"translate"),p(40,"br"),a(41,"span",18),_(42,Dt,2,1)(43,Nt,2,3),o()(),a(44,"div",19),p(45,"input",20),r(46,"translate"),p(47,"label",21),o()(),a(48,"li",22)(49,"div")(50,"span"),l(51),r(52,"translate"),o(),p(53,"br"),a(54,"small",23),l(55),r(56,"translate"),o()(),a(57,"button",24),r(58,"translate"),x("click",function(){return d.onDownloadBackupClick()}),p(59,"i",25),o()(),a(60,"li",22)(61,"div")(62,"span"),l(63),r(64,"translate"),o(),p(65,"br"),a(66,"small",23),l(67),r(68,"translate"),o()(),a(69,"button",24),r(70,"translate"),x("click",function(){return d.onCreateBackupClick()}),p(71,"i",25),o()(),a(72,"li",22)(73,"div")(74,"span"),l(75),r(76,"translate"),o(),p(77,"br"),a(78,"small",23),l(79),r(80,"translate"),o()(),a(81,"button",24),r(82,"translate"),x("click",function(){return d.restore(null)}),p(83,"i",26),o()()(),_(84,Ht,7,3,"ul",27),o(),a(85,"div",28),p(86,"div",17),a(87,"div",29)(88,"button",30),x("click",function(){return d.dismissModal()}),l(89),r(90,"translate"),o()(),p(91,"div",31),o()()),n&2&&(t(3),u(s(4,32,"backup.title_backup")),t(2),m("disabled",d.clicked||d.deleting),v("aria-label",s(6,34,"form.button_close")),t(7),u(s(13,36,"backup.backup_help_one")),t(3),u(s(16,38,"backup.backup_help_two")),t(3),u(s(19,40,"backup.backup_warning")),t(5),u(s(24,42,"backup.settings_title")),t(4),g(" ",s(28,44,"backup.settings_path")),t(4),u(s(32,46,"backup.settings_path_desc")),t(3),m("formControl",d.pathFormControl),v("aria-label",s(35,48,"backup.settings_path")),t(4),g(" ",s(39,50,"backup.settings_enable")),t(4),h(d.enabledFormControl.value?42:43),t(3),m("formControl",d.enabledFormControl),v("aria-label",s(46,52,"backup.settings_enable")),t(6),u(s(52,54,"backup.backup_now")),t(4),u(s(56,56,"backup.backup_now_desc")),t(2),m("disabled",d.clicked),v("aria-label",s(58,58,"backup.backup_now")),t(2),m("ngClass",F(74,it,!d.clicked,d.clicked)),t(4),u(s(64,60,"backup.backup_now")),t(4),u(s(68,62,"backup.backup_now_save_desc")),t(2),m("disabled",d.clicked),v("aria-label",s(70,64,"backup.backup_now")),t(2),m("ngClass",F(77,it,!d.clicked,d.clicked)),t(4),u(s(76,66,"backup.restore_now")),t(4),u(s(80,68,"backup.restore_now_desc")),t(2),m("disabled",d.clicked),v("aria-label",s(82,70,"backup.restore_now")),t(3),h(d.scheduledBackups.length?84:-1),t(4),m("disabled",d.clicked||d.deleting),t(),g(" ",s(90,72,"form.button_close")," "))},dependencies:[me,q,re,de,ne,ae,pe,Be,A],encapsulation:2})}return i})();function Ut(i,c){i&1&&(a(0,"div",12),p(1,"i",13),o(),a(2,"p",14),l(3),r(4,"translate"),o()),i&2&&(t(3),u(s(4,1,"reset.no_accessories")))}function Wt(i,c){i&1&&(a(0,"div",12),p(1,"i",15),o(),a(2,"ul",16)(3,"li"),l(4),r(5,"translate"),o(),a(6,"li"),l(7),r(8,"translate"),o(),a(9,"li"),l(10),r(11,"translate"),o()(),a(12,"ngb-alert",17)(13,"p",18),l(14),r(15,"translate"),o()()),i&2&&(t(4),u(s(5,5,"reset.accessory_all.list_1")),t(3),u(s(8,7,"reset.accessory_all.list_2")),t(3),u(s(11,9,"reset.accessory_all.list_3")),t(2),m("dismissible",!1),t(2),u(s(15,11,"reset.action_is_irreversible")))}function Kt(i,c){if(i&1){let e=E();a(0,"button",19),r(1,"translate"),x("click",function(){S(e);let d=b();return I(d.dismissModal())}),l(2),r(3,"translate"),o()}if(i&2){let e=b();m("disabled",e.clicked),v("aria-label",s(1,3,"form.button_close")),t(2),g(" ",s(3,5,"form.button_close")," ")}}function jt(i,c){if(i&1){let e=E();a(0,"button",20),r(1,"translate"),x("click",function(){S(e);let d=b();return I(d.dismissModal())}),l(2),r(3,"translate"),o()}i&2&&(v("aria-label",s(1,2,"form.button_close")),t(2),g(" ",s(3,4,"form.button_close")," "))}function Gt(i,c){i&1&&(l(0),r(1,"translate")),i&2&&g(" ",s(1,1,"form.button_remove")," ")}function qt(i,c){i&1&&p(0,"i",22)}function Qt(i,c){if(i&1){let e=E();a(0,"button",21),x("click",function(){S(e);let d=b();return I(d.onResetCachedAccessoriesClick())}),_(1,Gt,2,3),_(2,qt,1,0,"i",22),o()}if(i&2){let e=b();m("disabled",e.clicked),t(),h(e.clicked?-1:1),t(),h(e.clicked?2:-1)}}var ot=(()=>{class i{$activeModal=C(R);$api=C(N);$router=C(W);$toastr=C(D);$translate=C(M);clicked=!1;cachedAccessories=[];ngOnInit(){this.loadCachedAccessories()}onResetCachedAccessoriesClick(){return this.clicked=!0,this.$api.put("/server/reset-cached-accessories",{}).subscribe({next:()=>{this.$toastr.success(this.$translate.instant("reset.delete_success"),this.$translate.instant("toast.title_success")),this.$activeModal.close(),this.$router.navigate(["/restart"],{queryParams:{restarting:!0}})},error:e=>{this.clicked=!1,console.error(e),this.$toastr.error(this.$translate.instant("reset.failed_to_reset"),this.$translate.instant("toast.title_error"))}})}dismissModal(){this.$activeModal.dismiss("Dismiss")}loadCachedAccessories(){return f(this,null,function*(){try{this.cachedAccessories=yield B(this.$api.get("/server/cached-accessories"))}catch(e){console.error(e),this.$toastr.error(this.$translate.instant("reset.error_message"),this.$translate.instant("toast.title_error")),this.$activeModal.close()}})}static \u0275fac=function(n){return new(n||i)};static \u0275cmp=V({type:i,selectors:[["ng-component"]],decls:17,vars:12,consts:[[1,"modal-content"],[1,"modal-header"],[1,"modal-title"],["type","button","data-bs-dismiss","modal",1,"btn-close",3,"click","disabled"],[1,"modal-body"],[1,"modal-footer","justify-content-between"],[1,"text-start"],["type","button","data-bs-dismiss","modal",1,"btn","btn-elegant",3,"disabled"],[1,"text-center"],["type","button","data-bs-dismiss","modal",1,"btn","btn-elegant"],[1,"text-end"],["type","button","data-bs-dismiss","modal",1,"btn","btn-danger",3,"disabled"],[1,"text-center","mb-3"],[1,"fas","fa-circle-check","primary-text",2,"font-size","75px"],[1,"mb-0","text-center"],[1,"fas","fa-network-wired","primary-text",2,"font-size","75px"],[1,"mb-3"],["type","error",1,"mb-0",3,"dismissible"],[1,"text-center","mb-0"],["type","button","data-bs-dismiss","modal",1,"btn","btn-elegant",3,"click","disabled"],["type","button","data-bs-dismiss","modal",1,"btn","btn-elegant",3,"click"],["type","button","data-bs-dismiss","modal",1,"btn","btn-danger",3,"click","disabled"],[1,"fas","fa-spinner","fa-pulse"]],template:function(n,d){n&1&&(a(0,"div",0)(1,"div",1)(2,"h5",2),l(3),r(4,"translate"),o(),a(5,"button",3),r(6,"translate"),x("click",function(){return d.dismissModal()}),o()(),a(7,"div",4),_(8,Ut,5,3),_(9,Wt,16,13),o(),a(10,"div",5)(11,"div",6),_(12,Kt,4,7,"button",7),o(),a(13,"div",8),_(14,jt,4,6,"button",9),o(),a(15,"div",10),_(16,Qt,3,3,"button",11),o()()()),n&2&&(t(3),u(s(4,8,"reset.accessory_all.title")),t(2),m("disabled",d.clicked),v("aria-label",s(6,10,"form.button_close")),t(3),h(d.cachedAccessories.length===0?8:-1),t(),h(d.cachedAccessories.length>0?9:-1),t(3),h(d.cachedAccessories.length>0?12:-1),t(2),h(d.cachedAccessories.length===0?14:-1),t(2),h(d.cachedAccessories.length>0?16:-1))},dependencies:[ce,A],encapsulation:2})}return i})();var Jt=(i,c)=>({"green-text":i,"grey-text":c}),Xt=(i,c)=>({"btn-danger":i,"btn-elegant":c}),Yt=(i,c,e)=>({"fa-broom":i,"fa-undo":c,"fa-spinner fa-pulse":e});function Zt(i,c){i&1&&(a(0,"div",12),p(1,"i",13),o(),a(2,"p",14),l(3),r(4,"translate"),o()),i&2&&(t(3),u(s(4,1,"reset.bridge_accessories.empty")))}function ei(i,c){if(i&1){let e=E();a(0,"li",18)(1,"span"),l(2),p(3,"br"),a(4,"small",19),p(5,"i",20),l(6),r(7,"translate"),a(8,"span",21),l(9),o()()(),a(10,"button",22),r(11,"translate"),x("click",function(){let d=S(e).$implicit,y=b(2);return I(y.toggleList(d._id))}),p(12,"i",23),o()()}if(i&2){let e=c.$implicit,n=b(2);t(2),g(" ",e.name," "),t(3),m("ngClass",F(12,Jt,e._isPaired,!e._isPaired)),t(),g(" ",s(7,8,e._isPaired?"status.widget.qr_paired":"status.widget.qr_unpaired")," \xB7 "),t(3),u(e._username),t(),m("disabled",n.clicked)("ngClass",F(15,Xt,!n.toDelete.includes(e._id),n.toDelete.includes(e._id))),v("aria-label",s(11,10,"form.button_delete")),t(2),m("ngClass",te(18,Yt,!n.toDelete.includes(e._id),n.toDelete.includes(e._id)&&!n.clicked,n.toDelete.includes(e._id)&&n.clicked))}}function ti(i,c){if(i&1&&(a(0,"div",12),p(1,"i",15),o(),a(2,"ul",16)(3,"li"),l(4),r(5,"translate"),o(),a(6,"li"),l(7),r(8,"translate"),o(),a(9,"li"),l(10),r(11,"translate"),o()(),a(12,"ul",17),z(13,ei,13,22,"li",18,O),o()),i&2){let e=b();t(4),u(s(5,3,"reset.bridge_accessories.list_1")),t(3),u(s(8,5,"reset.clear_cache_single.list_3")),t(3),u(s(11,7,"reset.bridge_accessories.list_2")),t(3),H(e.pairings)}}function ii(i,c){if(i&1){let e=E();a(0,"button",24),x("click",function(){S(e);let d=b();return I(d.dismissModal())}),l(1),r(2,"translate"),o()}if(i&2){let e=b();m("disabled",e.clicked),t(),g(" ",s(2,2,"form.button_close")," ")}}function ni(i,c){if(i&1){let e=E();a(0,"button",25),x("click",function(){S(e);let d=b();return I(d.dismissModal())}),l(1),r(2,"translate"),o()}i&2&&(t(),g(" ",s(2,1,"form.button_close")," "))}function ai(i,c){i&1&&p(0,"i",27)}function oi(i,c){if(i&1&&l(0),i&2){let e=b(3);g(" (",e.toDelete.length,") ")}}function ri(i,c){if(i&1&&(l(0),r(1,"translate"),_(2,oi,1,1)),i&2){let e=b(2);g(" ",s(1,2,"form.button_remove")," "),t(2),h(e.toDelete.length>0?2:-1)}}function si(i,c){if(i&1){let e=E();a(0,"button",26),x("click",function(){S(e);let d=b();return I(d.cleanBridges())}),_(1,ai,1,0,"i",27)(2,ri,3,4),o()}if(i&2){let e=b();m("disabled",!e.toDelete.length||e.clicked),t(),h(e.clicked?1:2)}}var rt=(()=>{class i{$activeModal=C(R);$api=C(N);$router=C(W);$toastr=C(D);$translate=C(M);clicked=!1;pairings=[];toDelete=[];ngOnInit(){this.loadPairings()}cleanBridges(){return this.clicked=!0,this.$api.delete("/server/pairings/accessories",{body:this.toDelete.map(e=>({id:e}))}).subscribe({next:()=>{this.$toastr.success(this.$translate.instant("reset.accessory_ind.done"),this.$translate.instant("toast.title_success")),this.$activeModal.close(),this.$router.navigate(["/restart"],{queryParams:{restarting:!0}})},error:e=>{this.clicked=!1,console.error(e),this.$toastr.error(this.$translate.instant("reset.accessory_ind.fail"),this.$translate.instant("toast.title_error"))}})}toggleList(e){this.toDelete.includes(e)?this.toDelete=this.toDelete.filter(n=>n!==e):this.toDelete.push(e)}dismissModal(){this.$activeModal.dismiss("Dismiss")}loadPairings(){return f(this,null,function*(){try{this.pairings=(yield B(this.$api.get("/server/pairings"))).filter(e=>e._category==="bridge"&&!e._main).sort((e,n)=>e.name.localeCompare(n.name))}catch(e){console.error(e),this.$toastr.error(this.$translate.instant("settings.unpair_bridge.load_error"),this.$translate.instant("toast.title_error")),this.$activeModal.close()}})}static \u0275fac=function(n){return new(n||i)};static \u0275cmp=V({type:i,selectors:[["ng-component"]],decls:17,vars:12,consts:[[1,"modal-content"],[1,"modal-header"],[1,"modal-title"],["type","button","data-bs-dismiss","modal",1,"btn-close",3,"click","disabled"],[1,"modal-body"],[1,"modal-footer","justify-content-between"],[1,"text-start"],["type","button","data-bs-dismiss","modal",1,"btn","btn-elegant",3,"disabled"],[1,"text-center"],["type","button","data-bs-dismiss","modal",1,"btn","btn-elegant"],[1,"text-end"],["type","button","data-bs-dismiss","modal",1,"btn","btn-danger",3,"disabled"],[1,"text-center","mb-3"],[1,"fas","fa-circle-check","primary-text",2,"font-size","75px"],[1,"mb-0","text-center"],[1,"fas","fa-broom","primary-text",2,"font-size","75px"],[1,"mb-3"],[1,"list-group","list-group-box"],[1,"list-group-item","d-flex","justify-content-between","align-items-center"],[1,"grey-text"],[1,"fas","fa-link",3,"ngClass"],[1,"font-monospace"],[1,"btn","btn-danger","m-0","ms-3",3,"click","disabled","ngClass"],[1,"fas",3,"ngClass"],["type","button","data-bs-dismiss","modal",1,"btn","btn-elegant",3,"click","disabled"],["type","button","data-bs-dismiss","modal",1,"btn","btn-elegant",3,"click"],["type","button","data-bs-dismiss","modal",1,"btn","btn-danger",3,"click","disabled"],[1,"fas","fa-spinner","fa-pulse"]],template:function(n,d){n&1&&(a(0,"div",0)(1,"div",1)(2,"h5",2),l(3),r(4,"translate"),o(),a(5,"button",3),r(6,"translate"),x("click",function(){return d.dismissModal()}),o()(),a(7,"div",4),_(8,Zt,5,3),_(9,ti,15,9),o(),a(10,"div",5)(11,"div",6),_(12,ii,3,4,"button",7),o(),a(13,"div",8),_(14,ni,3,3,"button",9),o(),a(15,"div",10),_(16,si,3,2,"button",11),o()()()),n&2&&(t(3),u(s(4,8,"reset.bridge_accessories.title")),t(2),m("disabled",d.clicked),v("aria-label",s(6,10,"form.button_close")),t(3),h(d.pairings.length===0?8:-1),t(),h(d.pairings.length>0?9:-1),t(3),h(d.pairings.length>0?12:-1),t(2),h(d.pairings.length===0?14:-1),t(2),h(d.pairings.length>0?16:-1))},dependencies:[q,A],encapsulation:2})}return i})();function li(i,c){i&1&&(l(0),r(1,"translate")),i&2&&g(" ",s(1,1,"form.button_reset")," ")}function di(i,c){i&1&&p(0,"i",16)}var st=(()=>{class i{$activeModal=C(R);$api=C(N);$router=C(W);$toastr=C(D);$translate=C(M);clicked;onResetHomebridgeAccessoryClick(){return this.clicked=!0,this.$api.put("/server/reset-homebridge-accessory",{}).subscribe({next:()=>{this.$toastr.success(this.$translate.instant("reset.accessory_reset"),this.$translate.instant("toast.title_success")),this.$activeModal.close(),this.$router.navigate(["/restart"])},error:e=>{console.error(e),this.$toastr.error(this.$translate.instant("reset.failed_to_reset"),this.$translate.instant("toast.title_error"))}})}dismissModal(){this.$activeModal.dismiss("Dismiss")}static \u0275fac=function(n){return new(n||i)};static \u0275cmp=V({type:i,selectors:[["ng-component"]],decls:38,vars:33,consts:[[1,"modal-content"],[1,"modal-header"],[1,"modal-title"],["type","button","data-bs-dismiss","modal",1,"btn-close",3,"click","disabled"],[1,"modal-body"],[1,"text-center","mb-3"],[1,"fas","fa-bridge","primary-text",2,"font-size","75px"],[1,"mb-3"],["type","error",1,"mb-0",3,"dismissible"],[1,"text-center","mb-0"],[1,"modal-footer","justify-content-between"],[1,"text-start"],["type","button","data-bs-dismiss","modal",1,"btn","btn-elegant",3,"click","disabled"],[1,"text-center"],[1,"text-end"],["type","button","data-bs-dismiss","modal",1,"btn","btn-danger",3,"click","disabled"],[1,"fas","fa-spinner","fa-pulse"]],template:function(n,d){n&1&&(a(0,"div",0)(1,"div",1)(2,"h5",2),l(3),r(4,"translate"),o(),a(5,"button",3),r(6,"translate"),x("click",function(){return d.dismissModal()}),o()(),a(7,"div",4)(8,"div",5),p(9,"i",6),o(),a(10,"ul",7)(11,"li"),l(12),r(13,"translate"),o(),a(14,"li"),l(15),r(16,"translate"),o(),a(17,"li"),l(18),r(19,"translate"),o(),a(20,"li"),l(21),r(22,"translate"),o()(),a(23,"ngb-alert",8)(24,"p",9),l(25),r(26,"translate"),o()()(),a(27,"div",10)(28,"div",11)(29,"button",12),r(30,"translate"),x("click",function(){return d.dismissModal()}),l(31),r(32,"translate"),o()(),p(33,"div",13),a(34,"div",14)(35,"button",15),x("click",function(){return d.onResetHomebridgeAccessoryClick()}),_(36,li,2,3),_(37,di,1,0,"i",16),o()()()()),n&2&&(t(3),u(s(4,15,"reset.bridge_all.title")),t(2),m("disabled",d.clicked),v("aria-label",s(6,17,"form.button_close")),t(7),u(s(13,19,"reset.bridge_all.list_1")),t(3),u(s(16,21,"reset.bridge_all.list_2")),t(3),u(s(19,23,"reset.bridge_all.list_3")),t(3),u(s(22,25,"reset.bridge_all.list_4")),t(2),m("dismissible",!1),t(2),u(s(26,27,"reset.action_is_irreversible")),t(4),m("disabled",d.clicked),v("aria-label",s(30,29,"form.button_close")),t(2),g(" ",s(32,31,"form.button_close")," "),t(4),m("disabled",d.clicked),t(),h(d.clicked?-1:36),t(),h(d.clicked?37:-1))},dependencies:[ce,A],encapsulation:2})}return i})();var ve=(i,c)=>({"green-text":i,"grey-text":c}),fe=(i,c)=>({"btn-danger":i,"btn-elegant":c}),lt=(i,c,e)=>({"fa-refresh":i,"fa-undo":c,"fa-spinner fa-pulse":e}),pi=(i,c,e)=>({"fa-trash":i,"fa-undo":c,"fa-spinner fa-pulse":e});function ci(i,c){i&1&&(a(0,"div",12),p(1,"i",13),o(),a(2,"p",14),l(3),r(4,"translate"),o()),i&2&&(t(3),u(s(4,1,"reset.bridges.empty")))}function mi(i,c){if(i&1){let e=E();a(0,"li",20)(1,"span"),l(2),p(3,"br"),a(4,"small",21),p(5,"i",22),l(6),r(7,"translate"),a(8,"span",23),l(9),o(),l(10),r(11,"titlecase"),o()(),a(12,"button",24),r(13,"translate"),x("click",function(){let d=S(e).$implicit,y=b(3);return I(y.toggleList(d._id,!1))}),p(14,"i",25),o()()}if(i&2){let e=c.$implicit,n=b(3);t(2),g(" ",e.name," "),t(3),m("ngClass",F(15,ve,e._isPaired,!e._isPaired)),t(),g(" ",s(7,9,e._isPaired?"status.widget.qr_paired":"status.widget.qr_unpaired")," \xB7 "),t(3),u(e._username),t(),g(" \xB7 ",e._main?"Homebridge":s(11,11,e._category)," "),t(2),m("disabled",n.clicked)("ngClass",F(18,fe,!n.isInList(e._id),n.isInList(e._id))),v("aria-label",s(13,13,"form.button_unpair")),t(2),m("ngClass",te(21,lt,!n.isInList(e._id),n.isInList(e._id)&&!n.clicked,n.isInList(e._id)&&n.clicked))}}function ui(i,c){if(i&1&&(a(0,"ul",16)(1,"li",17)(2,"h6",18),l(3),r(4,"translate"),o(),a(5,"p",19),l(6),r(7,"translate"),o()(),z(8,mi,15,25,"li",20,O),o()),i&2){let e=b(2);t(3),u(s(4,2,"reset.bridge_ind.head_non_child")),t(3),u(s(7,4,"reset.bridge_ind.desc_non_child")),t(2),H(e.pairingsNonChild)}}function _i(i,c){if(i&1){let e=E();a(0,"li",20)(1,"span"),l(2),p(3,"br"),a(4,"small",21),p(5,"i",22),l(6),r(7,"translate"),a(8,"span",23),l(9),o()()(),a(10,"button",24),r(11,"translate"),x("click",function(){let d=S(e).$implicit,y=b(3);return I(y.toggleList(d._id,!0))}),p(12,"i",25),o()()}if(i&2){let e=c.$implicit,n=b(3);t(2),g(" ",e.name," "),t(3),m("ngClass",F(12,ve,e._isPaired,!e._isPaired)),t(),g(" ",s(7,8,e._isPaired?"status.widget.qr_paired":"status.widget.qr_unpaired")," \xB7 "),t(3),u(e._username),t(),m("disabled",n.clicked)("ngClass",F(15,fe,!n.isInList(e._id),n.isInList(e._id))),v("aria-label",s(11,10,"form.button_unpair")),t(2),m("ngClass",te(18,lt,!n.isInList(e._id),n.isInList(e._id)&&!n.clicked,n.isInList(e._id)&&n.clicked))}}function hi(i,c){if(i&1&&(a(0,"ul",16)(1,"li",17)(2,"h6",18),l(3),r(4,"translate"),o(),a(5,"p",19),l(6),r(7,"translate"),o()(),z(8,_i,13,22,"li",20,O),o()),i&2){let e=b(2);t(3),u(s(4,2,"reset.bridge_ind.head_child_active")),t(3),u(s(7,4,"reset.bridge_ind.desc_child_active")),t(2),H(e.pairingsChildActive)}}function gi(i,c){if(i&1){let e=E();a(0,"li",20)(1,"span"),l(2),p(3,"br"),a(4,"small",21),p(5,"i",22),l(6),r(7,"translate"),a(8,"span",23),l(9),o()()(),a(10,"button",24),r(11,"translate"),x("click",function(){let d=S(e).$implicit,y=b(3);return I(y.toggleList(d._id,!1))}),p(12,"i",25),o()()}if(i&2){let e=c.$implicit,n=b(3);t(2),g(" ",e.name," "),t(3),m("ngClass",F(12,ve,e._isPaired,!e._isPaired)),t(),g(" ",s(7,8,e._isPaired?"status.widget.qr_paired":"status.widget.qr_unpaired")," \xB7 "),t(3),u(e._username),t(),m("disabled",n.clicked)("ngClass",F(15,fe,!n.isInList(e._id),n.isInList(e._id))),v("aria-label",s(11,10,"form.button_unpair")),t(2),m("ngClass",te(18,pi,!n.isInList(e._id),n.isInList(e._id)&&!n.clicked,n.isInList(e._id)&&n.clicked))}}function bi(i,c){if(i&1&&(a(0,"ul",16)(1,"li",17)(2,"h6",18),l(3),r(4,"translate"),o(),a(5,"p",19),l(6),r(7,"translate"),o()(),z(8,gi,13,22,"li",20,O),o()),i&2){let e=b(2);t(3),u(s(4,2,"reset.bridge_ind.head_child_stale")),t(3),u(s(7,4,"reset.bridge_ind.desc_child_stale")),t(2),H(e.pairingsChildStale)}}function vi(i,c){if(i&1&&(a(0,"div",12),p(1,"i",15),o(),_(2,ui,10,6,"ul",16),_(3,hi,10,6,"ul",16),_(4,bi,10,6,"ul",16)),i&2){let e=b();t(2),h(e.pairingsNonChild.length>0?2:-1),t(),h(e.pairingsChildActive.length>0?3:-1),t(),h(e.pairingsChildStale.length>0?4:-1)}}function fi(i,c){if(i&1){let e=E();a(0,"button",26),x("click",function(){S(e);let d=b();return I(d.dismissModal())}),l(1),r(2,"translate"),o()}if(i&2){let e=b();m("disabled",e.clicked),t(),g(" ",s(2,2,"form.button_close")," ")}}function Ci(i,c){if(i&1){let e=E();a(0,"button",27),x("click",function(){S(e);let d=b();return I(d.dismissModal())}),l(1),r(2,"translate"),o()}i&2&&(t(),g(" ",s(2,1,"form.button_close")," "))}function xi(i,c){if(i&1&&l(0),i&2){let e=b(3);g(" (",e.toDelete.length,") ")}}function Si(i,c){if(i&1&&(l(0),r(1,"translate"),_(2,xi,1,1)),i&2){let e=b(2);g(" ",s(1,2,"form.button_reset")," "),t(2),h(e.toDelete.length>0?2:-1)}}function Ii(i,c){i&1&&p(0,"i",29)}function yi(i,c){if(i&1){let e=E();a(0,"button",28),x("click",function(){S(e);let d=b();return I(d.removeBridges())}),_(1,Si,3,4),_(2,Ii,1,0,"i",29),o()}if(i&2){let e=b();m("disabled",!e.toDelete.length||e.clicked),t(),h(e.clicked?-1:1),t(),h(e.clicked?2:-1)}}var dt=(()=>{class i{$activeModal=C(R);$api=C(N);$router=C(W);$toastr=C(D);$translate=C(M);clicked=!1;pairingsNonChild=[];pairingsChildActive=[];pairingsChildStale=[];toDelete=[];ngOnInit(){this.loadPairings()}toggleList(e,n=!1){this.toDelete.some(d=>d.id===e)?this.toDelete=this.toDelete.filter(d=>d.id!==e):this.toDelete.push({id:e,resetPairingInfo:n})}isInList(e){return this.toDelete.some(n=>n.id===e)}removeBridges(){return this.clicked=!0,this.$api.delete("/server/pairings",{body:this.toDelete}).subscribe({next:()=>{this.$toastr.success(this.$translate.instant("reset.bridge_ind.done"),this.$translate.instant("toast.title_success")),this.$activeModal.close(),this.$router.navigate(["/restart"],{queryParams:{restarting:!0}})},error:e=>{this.clicked=!1,console.error(e),this.$toastr.error(this.$translate.instant("reset.bridge_ind.fail"),this.$translate.instant("toast.title_error"))}})}dismissModal(){this.$activeModal.dismiss("Dismiss")}loadPairings(){return f(this,null,function*(){try{let e=(yield B(this.$api.get("/server/pairings"))).filter(n=>!n._main).sort((n,d)=>n.name.localeCompare(d.name));this.pairingsChildActive=e.filter(n=>n._category==="bridge"&&!n._couldBeStale),this.pairingsNonChild=e.filter(n=>n._category!=="bridge"),this.pairingsChildStale=e.filter(n=>n._category==="bridge"&&n._couldBeStale)}catch(e){console.error(e),this.$toastr.error(this.$translate.instant("settings.unpair_bridge.load_error"),this.$translate.instant("toast.title_error")),this.$activeModal.close()}})}static \u0275fac=function(n){return new(n||i)};static \u0275cmp=V({type:i,selectors:[["ng-component"]],decls:17,vars:12,consts:[[1,"modal-content"],[1,"modal-header"],[1,"modal-title"],["type","button","data-bs-dismiss","modal",1,"btn-close",3,"click","disabled"],[1,"modal-body"],[1,"modal-footer","justify-content-between"],[1,"text-start"],["type","button","data-bs-dismiss","modal",1,"btn","btn-elegant",3,"disabled"],[1,"text-center"],["type","button","data-bs-dismiss","modal",1,"btn","btn-elegant"],[1,"text-end"],["type","button","data-bs-dismiss","modal",1,"btn","btn-danger",3,"disabled"],[1,"text-center","mb-3"],[1,"fas","fa-circle-check","primary-text",2,"font-size","75px"],[1,"text-center","mb-0"],[1,"fas","fa-bridge","primary-text",2,"font-size","75px"],[1,"list-group","list-group-box","mt-3","mb-0"],[1,"list-group-item"],[1,"mb-1","text-center"],[1,"mb-0","small","grey-text","text-center"],[1,"list-group-item","d-flex","justify-content-between","align-items-center"],[1,"grey-text"],[1,"fas","fa-link",3,"ngClass"],[1,"font-monospace"],[1,"btn","btn-danger","m-0","ms-3",3,"click","disabled","ngClass"],[1,"fas",3,"ngClass"],["type","button","data-bs-dismiss","modal",1,"btn","btn-elegant",3,"click","disabled"],["type","button","data-bs-dismiss","modal",1,"btn","btn-elegant",3,"click"],["type","button","data-bs-dismiss","modal",1,"btn","btn-danger",3,"click","disabled"],[1,"fas","fa-spinner","fa-pulse"]],template:function(n,d){n&1&&(a(0,"div",0)(1,"div",1)(2,"h5",2),l(3),r(4,"translate"),o(),a(5,"button",3),r(6,"translate"),x("click",function(){return d.dismissModal()}),o()(),a(7,"div",4),_(8,ci,5,3),_(9,vi,5,3),o(),a(10,"div",5)(11,"div",6),_(12,fi,3,4,"button",7),o(),a(13,"div",8),_(14,Ci,3,3,"button",9),o(),a(15,"div",10),_(16,yi,3,3,"button",11),o()()()),n&2&&(t(3),u(s(4,8,"reset.bridge_ind.title")),t(2),m("disabled",d.clicked),v("aria-label",s(6,10,"form.button_close")),t(3),h(d.pairingsChildActive.length===0&&d.pairingsChildStale.length===0&&d.pairingsNonChild.length===0?8:-1),t(),h(d.pairingsChildActive.length>0||d.pairingsChildStale.length>0||d.pairingsNonChild.length>0?9:-1),t(3),h(d.pairingsChildActive.length>0||d.pairingsChildStale.length>0||d.pairingsNonChild.length>0?12:-1),t(2),h(d.pairingsChildActive.length===0&&d.pairingsChildStale.length===0&&d.pairingsNonChild.length===0?14:-1),t(2),h(d.pairingsChildActive.length>0||d.pairingsChildStale.length>0||d.pairingsNonChild.length>0?16:-1))},dependencies:[q,ie,A],encapsulation:2})}return i})();function wi(i,c){if(i&1){let e=E();a(0,"li",9)(1,"div")(2,"span",16),l(3),o(),p(4,"br"),a(5,"span",17),l(6),o()(),a(7,"span")(8,"input",18),Ee("ngModelChange",function(d){let y=S(e).$implicit;return ke(y.selected,d)||(y.selected=d),I(d)}),x("ngModelChange",function(){S(e);let d=b();return I(d.onAdapterSelectionChange())}),o(),p(9,"label",19),o()()}if(i&2){let e=c.$implicit;t(3),u(e.ip4||e.ip6),t(3),u(e.iface),t(2),m("id","adapter"+e.iface),we("ngModel",e.selected),t(),m("for","adapter"+e.iface)}}var pt=(()=>{class i{$activeModal=C(R);adaptersOriginal=[];adaptersAvailable=[];adaptersSelected=[];isUnchanged=!0;ngOnInit(){this.adaptersAvailable.forEach(e=>{e.selected=this.adaptersSelected.some(n=>n.iface===e.iface)}),this.adaptersOriginal=this.adaptersSelected.map(e=>e.iface)}onAdapterSelectionChange(){this.isUnchanged=this.adaptersOriginal.length===this.adaptersAvailable.filter(e=>e.selected).length&&this.adaptersOriginal.every(e=>this.adaptersAvailable.some(n=>n.iface===e&&n.selected))}submit(){this.$activeModal.close(this.adaptersAvailable.filter(e=>e.selected).map(e=>e.iface))}closeAndReset(){this.adaptersAvailable.forEach(e=>{e.selected=this.adaptersOriginal.includes(e.iface)}),this.isUnchanged=!0,this.$activeModal.dismiss("Dismiss")}static \u0275fac=function(n){return new(n||i)};static \u0275cmp=V({type:i,selectors:[["ng-component"]],inputs:{adaptersAvailable:"adaptersAvailable",adaptersSelected:"adaptersSelected"},decls:28,vars:19,consts:[[1,"modal-content"],[1,"modal-header"],[1,"modal-title"],["type","button","data-bs-dismiss","modal",1,"btn-close",3,"click"],[1,"modal-body"],[1,"text-center","mb-3"],[1,"fas","fa-ethernet","primary-text",2,"font-size","75px"],[1,"mb-3"],[1,"list-group","list-group-box"],[1,"list-group-item","d-flex","justify-content-between","align-items-center","flex-row","pb-2"],[1,"modal-footer","justify-content-between"],[1,"text-start"],["type","button","data-bs-dismiss","modal",1,"btn","btn-elegant",3,"click"],[1,"text-center"],[1,"text-end"],["type","button","data-bs-dismiss","modal",1,"btn","btn-primary",3,"click","disabled"],[1,"font-monospace"],[1,"font-monospace","grey-text"],["type","checkbox",1,"rendux-input",3,"ngModelChange","id","ngModel"],[1,"rendux-label","ms-3",3,"for"]],template:function(n,d){n&1&&(a(0,"div",0)(1,"div",1)(2,"h5",2),l(3),r(4,"translate"),o(),a(5,"button",3),r(6,"translate"),x("click",function(){return d.closeAndReset()}),o()(),a(7,"div",4)(8,"div",5),p(9,"i",6),o(),a(10,"ul",7)(11,"li"),l(12),r(13,"translate"),o()(),a(14,"ul",8),z(15,wi,10,5,"li",9,O),o()(),a(17,"div",10)(18,"div",11)(19,"button",12),r(20,"translate"),x("click",function(){return d.closeAndReset()}),l(21),r(22,"translate"),o()(),p(23,"div",13),a(24,"div",14)(25,"button",15),x("click",function(){return d.submit()}),l(26),r(27,"translate"),o()()()()),n&2&&(t(3),u(s(4,7,"settings.network.title_network_interfaces")),t(2),v("aria-label",s(6,9,"form.button_close")),t(7),u(s(13,11,"settings.network.message_network_interface")),t(3),H(d.adaptersAvailable),t(4),v("aria-label",s(20,13,"form.button_close")),t(2),g(" ",s(22,15,"form.button_close")," "),t(4),m("disabled",d.isUnchanged),t(),g(" ",s(27,17,"form.button_save")," "))},dependencies:[oe,ne,ae,Ve,A],encapsulation:2})}return i})();var ki=["wallpaperInput"],Ei=i=>({maxFileSizeText:i});function Bi(i,c){if(i&1){let e=E();$(0,"div",10),U(1,"img",20),$(2,"button",21),r(3,"translate"),K("click",function(){S(e);let d=b();return I(d.clearWallpaper())}),U(4,"i",22),T()()}if(i&2){let e=b();t(),j("src",e.wallpaperUrl,xe),t(),v("aria-label",s(3,2,"form.button_delete"))}}function Ti(i,c){i&1&&U(0,"div",11)}var ct=(()=>{class i{$activeModal=C(R);$api=C(N);$settings=C(Z);$toastr=C(D);$translate=C(M);clicked=!1;maxFileSizeText=globalThis.backup.maxBackupSizeText;selectedFile;wallpaperUrl=null;originalWallpaperUrl=null;wallpaperInput;ngOnInit(){this.$settings.env.customWallpaperHash&&(this.wallpaperUrl=`${He.api.base}/auth/wallpaper/${this.$settings.env.customWallpaperHash}`,this.originalWallpaperUrl=this.wallpaperUrl)}onFileChange(e){if(e.length){this.selectedFile=e[0];let n=new FileReader;n.onload=d=>{this.wallpaperUrl=d.target.result},n.readAsDataURL(this.selectedFile)}else delete this.selectedFile,this.wallpaperUrl=this.originalWallpaperUrl}saveWallpaper(){if(this.clicked=!0,this.selectedFile){let e=new FormData;e.append("wallpaper",this.selectedFile,this.selectedFile.name),this.$api.post("/server/wallpaper",e).subscribe({next:()=>{this.$settings.setItem("wallpaper",`ui-wallpaper.${this.selectedFile.name.split(".").pop()}`),this.$activeModal.close(),this.$toastr.success(this.$translate.instant("settings.display.wallpaper_success"),this.$translate.instant("toast.title_success"))},error:n=>{console.error(n),this.$toastr.error(n.error?.message,this.$translate.instant("toast.title_error")),this.clicked=!1}})}else this.$api.delete("/server/wallpaper").subscribe({next:()=>{this.$activeModal.close()},error:e=>{console.error(e),this.$toastr.error(e.error?.message,this.$translate.instant("toast.title_error")),this.clicked=!1}})}clearWallpaper(){this.selectedFile=null,this.wallpaperUrl=this.wallpaperUrl===this.originalWallpaperUrl?null:this.originalWallpaperUrl,this.wallpaperInput.nativeElement.value=""}dismissModal(){this.$activeModal.dismiss("Dismiss")}static \u0275fac=function(n){return new(n||i)};static \u0275cmp=V({type:i,selectors:[["ng-component"]],viewQuery:function(n,d){if(n&1&&Se(ki,5),n&2){let y;Ie(y=ye())&&(d.wallpaperInput=y.first)}},decls:36,vars:28,consts:[["wallpaperInput",""],[1,"modal-content"],[1,"modal-header"],[1,"modal-title"],["type","button","data-bs-dismiss","modal",1,"btn-close",3,"click","disabled"],[1,"modal-body"],[1,"text-center","mb-3"],[1,"fas","fa-image","primary-text",2,"font-size","75px"],[1,"mb-3"],[1,"mb-3","text-center"],[1,"position-relative","d-inline-block"],[1,"gradient","anim","rounded",2,"height","200px","width","350px","margin","0 auto"],[1,"mb-0"],["type","file","id","wallpaper","accept","image/*",1,"form-control",3,"change"],[1,"modal-footer","justify-content-between"],[1,"text-start"],["type","button","data-bs-dismiss","modal",1,"btn","btn-elegant",3,"click","disabled"],[1,"text-center"],[1,"text-end"],["type","button","data-bs-dismiss","modal",1,"btn","btn-primary",3,"click","disabled"],["alt","Current Wallpaper",1,"img-fluid","rounded","mx-auto","d-block",2,"height","200px",3,"src"],[1,"btn","btn-danger","position-absolute",2,"top","10px","right","10px",3,"click"],[1,"fas","fa-trash"]],template:function(n,d){if(n&1){let y=E();$(0,"div",1)(1,"div",2)(2,"h5",3),l(3),r(4,"translate"),T(),$(5,"button",4),r(6,"translate"),K("click",function(){return S(y),I(d.dismissModal())}),T()(),$(7,"div",5)(8,"div",6),U(9,"i",7),T(),$(10,"ul",8)(11,"li"),l(12),r(13,"translate"),T(),$(14,"li"),l(15),r(16,"translate"),T(),$(17,"li"),l(18),r(19,"translate"),T()(),$(20,"div",9),_(21,Bi,5,4,"div",10)(22,Ti,1,0,"div",11),T(),$(23,"div",12)(24,"input",13,0),K("change",function(Q){return S(y),I(d.onFileChange(Q.target.files))}),T()()(),$(26,"div",14)(27,"div",15)(28,"button",16),K("click",function(){return S(y),I(d.dismissModal())}),l(29),r(30,"translate"),T()(),U(31,"div",17),$(32,"div",18)(33,"button",19),K("click",function(){return S(y),I(d.saveWallpaper())}),l(34),r(35,"translate"),T()()()()}n&2&&(t(3),u(s(4,11,"settings.display.wallpaper")),t(2),j("disabled",d.clicked),v("aria-label",s(6,13,"form.button_close")),t(7),u(s(13,15,"settings.display.wallpaper_intro")),t(3),u(L(16,17,"settings.display.wallpaper_rule",P(26,Ei,d.maxFileSizeText))),t(3),u(s(19,20,"settings.display.wallpaper_rule2")),t(3),h(d.wallpaperUrl?21:22),t(7),j("disabled",d.clicked),t(),g(" ",s(30,22,"form.button_close")," "),t(4),j("disabled",d.wallpaperUrl===d.originalWallpaperUrl||d.clicked),t(),g(" ",s(35,24,"form.button_save")," "))},dependencies:[re,A],styles:[".anim[_ngcontent-%COMP%]{-webkit-animation:_ngcontent-%COMP%_gradient 20s ease infinite;-moz-animation:gradient 20s ease infinite;-o-animation:gradient 20s ease infinite;animation:_ngcontent-%COMP%_gradient 20s ease infinite}@keyframes _ngcontent-%COMP%_gradient{0%{background-position:0 50%}50%{background-position:100% 50%}to{background-position:0 50%}}"]})}return i})();var X=(i,c)=>({"fa-chevron-down":i,"fa-chevron-right":c}),G=i=>({"is-invalid":i}),$i=i=>({link:i}),Fi=(i,c)=>({"badge-danger":i,"badge-info":c}),_e=i=>({default:i});function Pi(i,c){i&1&&p(0,"app-spinner")}function Vi(i,c){i&1&&p(0,"i",21),i&2&&m("@fadeInOut",void 0)}function Ai(i,c){if(i&1){let e=E();a(0,"ul",8)(1,"li",18)(2,"span"),l(3),r(4,"translate"),o(),a(5,"div",19),p(6,"input",20),r(7,"translate"),_(8,Vi,1,1,"i",21),o()(),a(9,"li",22)(10,"span",23),l(11),r(12,"translate"),o(),a(13,"button",24),r(14,"translate"),x("click",function(){S(e);let d=b(2);return I(d.openBackupModal())}),p(15,"i",25),o()(),a(16,"li",22)(17,"span",23),l(18),r(19,"translate"),o(),a(20,"button",24),r(21,"translate"),x("click",function(){S(e);let d=b(2);return I(d.openConfigBackup())}),p(22,"i",25),o()(),a(23,"li",22)(24,"span",23),l(25),r(26,"translate"),o(),a(27,"a",26),r(28,"translate"),p(29,"i",25),o()()()}if(i&2){let e=b(2);t(3),u(s(4,11,"settings.name")),t(3),m("formControl",e.hbNameFormControl)("ngClass",P(27,G,e.hbNameIsInvalid)),v("aria-label",s(7,13,"settings.name")),t(2),h(e.hbNameIsSaving?8:-1),t(3),g(" ",s(12,15,"backup.title_backup")," "),t(2),v("aria-label",s(14,17,"backup.title_backup")),t(5),g(" ",s(19,19,"config.restore.title")," "),t(2),v("aria-label",s(21,21,"config.restore.title")),t(5),g(" ",s(26,23,"menu.tooltip_user_accounts")," "),t(2),v("aria-label",s(28,25,"menu.tooltip_user_accounts"))}}function Ri(i,c){i&1&&p(0,"i",21),i&2&&m("@fadeInOut",void 0)}function Mi(i,c){i&1&&p(0,"i",21),i&2&&m("@fadeInOut",void 0)}function Di(i,c){i&1&&p(0,"i",21),i&2&&m("@fadeInOut",void 0)}function Ni(i,c){i&1&&p(0,"i",21),i&2&&m("@fadeInOut",void 0)}function Li(i,c){i&1&&p(0,"i",21),i&2&&m("@fadeInOut",void 0)}function Oi(i,c){i&1&&p(0,"i",21),i&2&&m("@fadeInOut",void 0)}function zi(i,c){if(i&1){let e=E();a(0,"ul",9)(1,"li",18),l(2),r(3,"translate"),a(4,"div",19)(5,"select",27)(6,"option",28),l(7),r(8,"translate"),o(),a(9,"option",29),l(10,"Bulgarian (bg)"),o(),a(11,"option",30),l(12,"Catalan (ca)"),o(),a(13,"option",31),l(14,"Chinese - Simplified (zh-CN)"),o(),a(15,"option",32),l(16,"Chinese - Traditional (zh-TW)"),o(),a(17,"option",33),l(18,"Czech (cs)"),o(),a(19,"option",34),l(20,"Dutch (nl)"),o(),a(21,"option",35),l(22,"English (en)"),o(),a(23,"option",36),l(24,"Finnish (fi)"),o(),a(25,"option",37),l(26,"French (fr)"),o(),a(27,"option",38),l(28,"German (de)"),o(),a(29,"option",39),l(30,"Hebrew (he)"),o(),a(31,"option",40),l(32,"Hungarian (hu)"),o(),a(33,"option",41),l(34,"Indonesian (id)"),o(),a(35,"option",42),l(36,"Italian (it)"),o(),a(37,"option",43),l(38,"Japanese (ja)"),o(),a(39,"option",44),l(40,"Korean (ko)"),o(),a(41,"option",45),l(42,"Macedonian (mk)"),o(),a(43,"option",46),l(44,"Norwegian (no)"),o(),a(45,"option",47),l(46,"Polish (pl)"),o(),a(47,"option",48),l(48,"Portuguese (Brazil)"),o(),a(49,"option",49),l(50,"Portuguese (Portugal)"),o(),a(51,"option",50),l(52,"Russian (ru)"),o(),a(53,"option",51),l(54,"Slovenian (sl)"),o(),a(55,"option",52),l(56,"Spanish (es)"),o(),a(57,"option",53),l(58,"Swedish (sv)"),o(),a(59,"option",54),l(60,"Thai (th)"),o(),a(61,"option",55),l(62,"Turkish (tr)"),o(),a(63,"option",56),l(64,"Ukrainian (uk)"),o()(),_(65,Ri,1,1,"i",21),o()(),a(66,"li",18),l(67),r(68,"translate"),a(69,"div",19)(70,"select",27)(71,"option",57),l(72),r(73,"translate"),o(),a(74,"option",58),l(75),r(76,"translate"),o(),a(77,"option",59),l(78),r(79,"translate"),o(),a(80,"option",60),l(81),r(82,"translate"),o(),a(83,"option",61),l(84),r(85,"translate"),o(),a(86,"option",62),l(87),r(88,"translate"),o(),a(89,"option",63),l(90),r(91,"translate"),o(),a(92,"option",64),l(93),r(94,"translate"),o(),a(95,"option",65),l(96),r(97,"translate"),o(),a(98,"option",66),l(99),r(100,"translate"),o(),a(101,"option",67),l(102),r(103,"translate"),o(),a(104,"option",68),l(105),r(106,"translate"),o(),a(107,"option",69),l(108),r(109,"translate"),o()(),_(110,Mi,1,1,"i",21),o()(),a(111,"li",18),l(112),r(113,"translate"),a(114,"div",19)(115,"select",27)(116,"option",28),l(117),r(118,"translate"),o(),a(119,"option",70),l(120),r(121,"translate"),o(),a(122,"option",71),l(123),r(124,"translate"),o()(),_(125,Di,1,1,"i",21),o()(),a(126,"li",18),l(127),r(128,"translate"),a(129,"div",19)(130,"select",27)(131,"option",72),l(132),r(133,"translate"),o(),a(134,"option",73),l(135),r(136,"translate"),o()(),_(137,Ni,1,1,"i",21),o()(),a(138,"li",18),l(139),r(140,"translate"),a(141,"div",19)(142,"select",27)(143,"option",74),l(144),r(145,"translate"),o(),a(146,"option",75),l(147),r(148,"translate"),o()(),_(149,Li,1,1,"i",21),o()(),a(150,"li",22)(151,"span"),l(152),r(153,"translate"),o(),a(154,"div",76)(155,"div",77),p(156,"input",78),r(157,"translate"),p(158,"label",79),o(),_(159,Oi,1,1,"i",21),o()(),a(160,"li",22)(161,"span",23),l(162),r(163,"translate"),o(),a(164,"button",24),r(165,"translate"),x("click",function(){S(e);let d=b(2);return I(d.openWallpaperModal())}),p(166,"i",25),o()()()}if(i&2){let e=b(2);t(2),g(" ",s(3,42,"settings.display.lang")," "),t(3),m("formControl",e.uiLangFormControl),t(2),u(s(8,44,"form.select.auto")),t(58),h(e.uiLangIsSaving?65:-1),t(2),g(" ",s(68,46,"settings.display.theme")," "),t(3),m("formControl",e.uiThemeFormControl),t(2),u(s(73,48,"settings.display.orange")),t(3),u(s(76,50,"settings.display.red")),t(3),u(s(79,52,"settings.display.pink")),t(3),u(s(82,54,"settings.display.purple")),t(3),u(s(85,56,"settings.display.deep_purple")),t(3),u(s(88,58,"settings.display.indigo")),t(3),u(s(91,60,"settings.display.blue")),t(3),u(s(94,62,"settings.display.bluegrey")),t(3),u(s(97,64,"settings.display.cyan")),t(3),u(s(100,66,"settings.display.green")),t(3),u(s(103,68,"settings.display.teal")),t(3),u(s(106,70,"settings.display.grey")),t(3),u(s(109,72,"settings.display.brown")),t(2),h(e.uiThemeIsSaving?110:-1),t(2),g(" ",s(113,74,"settings.display.lighting_mode")," "),t(3),m("formControl",e.uiLightFormControl),t(2),u(s(118,76,"form.select.auto")),t(3),u(s(121,78,"settings.display.light")),t(3),u(s(124,80,"settings.display.dark")),t(2),h(e.uiLightIsSaving?125:-1),t(2),g(" ",s(128,82,"settings.display.menu_mode")," "),t(3),m("formControl",e.uiMenuFormControl),t(2),u(s(133,84,"settings.display.menu_default")),t(3),u(s(136,86,"settings.display.menu_freeze")),t(2),h(e.uiMenuIsSaving?137:-1),t(2),g(" ",s(140,88,"settings.display.temp_units")," "),t(3),m("formControl",e.uiTempFormControl),t(2),u(s(145,90,"settings.display.temp_units.c")),t(3),u(s(148,92,"settings.display.temp_units.f")),t(2),h(e.uiTempIsSaving?149:-1),t(3),g(" ",s(153,94,"settings.display.show_betas")," "),t(4),m("formControl",e.uiAlwaysShowBetasFormControl),v("aria-label",s(157,96,"settings.display.show_betas")),t(3),h(e.uiAlwaysShowBetasIsSaving?159:-1),t(3),u(s(163,98,"settings.display.wallpaper")),t(2),v("aria-label",s(165,100,"settings.display.wallpaper"))}}function Hi(i,c){i&1&&p(0,"i",21),i&2&&m("@fadeInOut",void 0)}function Ui(i,c){i&1&&p(0,"i",21),i&2&&m("@fadeInOut",void 0)}function Wi(i,c){i&1&&p(0,"i",21),i&2&&m("@fadeInOut",void 0)}function Ki(i,c){i&1&&p(0,"i",21),i&2&&m("@fadeInOut",void 0)}function ji(i,c){i&1&&p(0,"i",21),i&2&&m("@fadeInOut",void 0)}function Gi(i,c){i&1&&p(0,"i",21),i&2&&m("@fadeInOut",void 0)}function qi(i,c){i&1&&p(0,"i",21),i&2&&m("@fadeInOut",void 0)}function Qi(i,c){i&1&&p(0,"i",21),i&2&&m("@fadeInOut",void 0)}function Ji(i,c){if(i&1&&(a(0,"li",18)(1,"span"),l(2),r(3,"translate"),p(4,"br"),a(5,"small",80),l(6),r(7,"translate"),o()(),a(8,"div",19),p(9,"input",96),r(10,"translate"),_(11,Qi,1,1,"i",21),o()()),i&2){let e=b(4);t(2),g(" ",s(3,5,"settings.linux.temp")),t(4),u(s(7,7,"settings.linux.temp_desc")),t(3),m("formControl",e.uiTempFileFormControl),v("aria-label",s(10,9,"settings.linux.temp")),t(2),h(e.uiTempFileIsSaving?11:-1)}}function Xi(i,c){if(i&1&&(a(0,"li",18)(1,"span"),l(2),r(3,"translate"),p(4,"br"),a(5,"small",80),l(6),r(7,"translate"),o()(),a(8,"div",19),p(9,"input",94),r(10,"translate"),_(11,Gi,1,1,"i",21),o()(),a(12,"li",18)(13,"span"),l(14),r(15,"translate"),p(16,"br"),a(17,"small",80),l(18),r(19,"translate"),o()(),a(20,"div",19),p(21,"input",95),r(22,"translate"),_(23,qi,1,1,"i",21),o()(),_(24,Ji,12,11,"li",18)),i&2){let e=b(3);t(2),g(" ",s(3,11,"settings.linux.shutdown")),t(4),u(s(7,13,"settings.linux.shutdown_desc")),t(3),m("formControl",e.hbLinuxShutdownFormControl),v("aria-label",s(10,15,"settings.linux.shutdown")),t(2),h(e.hbLinuxShutdownIsSaving?11:-1),t(3),g(" ",s(15,17,"settings.linux.restart")),t(4),u(s(19,19,"settings.linux.restart_desc")),t(3),m("formControl",e.hbLinuxRestartFormControl),v("aria-label",s(22,21,"settings.linux.restart")),t(2),h(e.hbLinuxRestartIsSaving?23:-1),t(),h(e.runningOnRaspberryPi?24:-1)}}function Yi(i,c){i&1&&p(0,"i",21),i&2&&m("@fadeInOut",void 0)}function Zi(i,c){i&1&&p(0,"i",21),i&2&&m("@fadeInOut",void 0)}function en(i,c){i&1&&(a(0,"li",22)(1,"span"),l(2),r(3,"translate"),p(4,"br"),a(5,"small",80),l(6),r(7,"translate"),o()(),a(8,"a",97),r(9,"translate"),p(10,"i",25),o()()),i&2&&(t(2),g(" ",s(3,3,"menu.docker.startup_script")),t(4),u(s(7,5,"platform.docker.script_help")),t(2),v("aria-label",s(9,7,"menu.docker.startup_script")))}function tn(i,c){if(i&1&&(a(0,"ul",10)(1,"li",22)(2,"span"),l(3),r(4,"translate"),a(5,"code"),l(6,"-D"),o(),p(7,"br"),a(8,"small",80),l(9),r(10,"translate"),o()(),a(11,"div",76)(12,"div",77),p(13,"input",81),r(14,"translate"),p(15,"label",82),o(),_(16,Hi,1,1,"i",21),o()(),a(17,"li",22)(18,"span"),l(19),r(20,"translate"),a(21,"code"),l(22,"-I"),o(),p(23,"br"),a(24,"small",80),l(25),r(26,"translate"),o()(),a(27,"div",76)(28,"div",77),p(29,"input",83),r(30,"translate"),p(31,"label",84),o(),_(32,Ui,1,1,"i",21),o()(),a(33,"li",22)(34,"span"),l(35),r(36,"translate"),a(37,"code"),l(38,"-K"),o(),p(39,"br"),a(40,"small",80),l(41),r(42,"translate"),o()(),a(43,"div",76)(44,"div",77),p(45,"input",85),r(46,"translate"),p(47,"label",86),o(),_(48,Wi,1,1,"i",21),o()(),a(49,"li",22)(50,"span"),l(51),r(52,"translate"),p(53,"br"),a(54,"small",80),l(55),r(56,"translate"),o()(),a(57,"div",76)(58,"div",77),p(59,"input",87),r(60,"translate"),p(61,"label",88),o(),_(62,Ki,1,1,"i",21),o()(),a(63,"li",18)(64,"span"),l(65),r(66,"translate"),p(67,"br"),a(68,"small",80),l(69),r(70,"translate"),o()(),a(71,"div",19),p(72,"input",89),r(73,"translate"),_(74,ji,1,1,"i",21),o()(),_(75,Xi,25,23),a(76,"li",18)(77,"span")(78,"span",90),l(79,"DEBUG"),o(),p(80,"br")(81,"small",91),r(82,"translate"),o(),a(83,"div",19),p(84,"input",92),_(85,Yi,1,1,"i",21),o()(),a(86,"li",18)(87,"span")(88,"span",90),l(89,"NODE_OPTIONS"),o(),p(90,"br"),a(91,"small",80),l(92),r(93,"translate"),o()(),a(94,"div",19),p(95,"input",93),_(96,Zi,1,1,"i",21),o()(),_(97,en,11,9,"li",22),o()),i&2){let e=b(2);t(3),g(" ",s(4,33,"settings.startup.debug")," "),t(6),g(" ",s(10,35,e.isHbV2?"settings.startup.debug_desc_v2":"settings.startup.debug_desc_v1")," "),t(4),m("formControl",e.hbDebugFormControl),v("aria-label",s(14,37,"settings.startup.debug")),t(3),h(e.hbDebugIsSaving?16:-1),t(3),g(" ",s(20,39,"settings.startup.insecure")," "),t(6),u(s(26,41,"settings.startup.insecure_desc")),t(4),m("formControl",e.hbInsecureFormControl),v("aria-label",s(30,43,"settings.startup.insecure")),t(3),h(e.hbInsecureIsSaving?32:-1),t(3),g(" ",s(36,45,"settings.startup.keep_accessories")," "),t(6),u(s(42,47,"settings.startup.keep_accessories_desc")),t(4),m("formControl",e.hbKeepFormControl),v("aria-label",s(46,49,"settings.startup.keep_accessories")),t(3),h(e.hbKeepIsSaving?48:-1),t(3),g(" ",s(52,51,"settings.startup.metrics")),t(4),u(s(56,53,"settings.startup.metrics_desc")),t(4),m("formControl",e.uiMetricsFormControl),v("aria-label",s(60,55,"settings.startup.metrics")),t(3),h(e.uiMetricsIsSaving?62:-1),t(3),g(" ",s(66,57,"settings.network.hb_package")),t(4),u(s(70,59,"settings.network.hb_package_desc")),t(3),m("formControl",e.hbPackageFormControl),v("aria-label",s(73,61,"settings.network.hb_package")),t(2),h(e.hbPackageIsSaving?74:-1),t(),h(e.platform==="linux"?75:-1),t(6),m("innerHTML",L(82,63,"settings.service.debug_tooltip",P(68,$i,e.linkDebug)),ee),t(3),m("formControl",e.hbEnvDebugFormControl),t(),h(e.hbEnvDebugIsSaving?85:-1),t(7),u(s(93,66,"settings.service.node_tooltip")),t(3),m("formControl",e.hbEnvNodeFormControl),t(),h(e.hbEnvNodeIsSaving?96:-1),t(),h(e.runningInDocker?97:-1)}}function nn(i,c){i&1&&p(0,"i",112)}function an(i,c){if(i&1&&(a(0,"span",99),_(1,nn,1,0,"i",112),l(2),a(3,"span",113),l(4),r(5,"translate"),o()()),i&2){let e=c.$implicit;m("ngClass",F(6,Fi,e.missing,!e.missing)),t(),h(e.missing?1:-1),t(),g(" ",e.iface,": "),t(2),u(e.missing?s(5,4,"settings.mdns_advertiser_not_connected"):e.ip4||e.ip6)}}function on(i,c){i&1&&(a(0,"option",101),l(1),r(2,"translate"),o()),i&2&&(t(),g("Avahi (",s(2,1,"settings.mdns_advertiser_rec"),")"))}function rn(i,c){i&1&&(a(0,"option",104),l(1),r(2,"translate"),o()),i&2&&(t(),g("systemd-resolved (",s(2,1,"settings.mdns_advertiser_exp"),")"))}function sn(i,c){i&1&&p(0,"i",21),i&2&&m("@fadeInOut",void 0)}function ln(i,c){i&1&&p(0,"i",21),i&2&&m("@fadeInOut",void 0)}function dn(i,c){i&1&&(p(0,"br"),a(1,"small",80),p(2,"i",114),l(3),r(4,"translate"),o()),i&2&&(t(3),g(" ",s(4,1,"settings.warning_pwa")," "))}function pn(i,c){i&1&&p(0,"i",21),i&2&&m("@fadeInOut",void 0)}function cn(i,c){i&1&&p(0,"i",21),i&2&&m("@fadeInOut",void 0)}function mn(i,c){i&1&&p(0,"i",21),i&2&&m("@fadeInOut",void 0)}function un(i,c){i&1&&(p(0,"br"),a(1,"small",80),p(2,"i",114),l(3),r(4,"translate"),o()),i&2&&(t(3),g(" ",s(4,1,"settings.warning_pwa")," "))}function _n(i,c){i&1&&p(0,"i",21),i&2&&m("@fadeInOut",void 0)}function hn(i,c){i&1&&(p(0,"br"),a(1,"small",80),p(2,"i",114)(3,"span",115),r(4,"translate"),o()),i&2&&(t(3),m("innerHtml",s(4,1,"settings.warning_webroot"),ee))}function gn(i,c){i&1&&(p(0,"br"),a(1,"small",80),p(2,"i",114)(3,"span",115),r(4,"translate"),o()),i&2&&(t(3),m("innerHtml",s(4,1,"settings.warning_pwa"),ee))}function bn(i,c){i&1&&p(0,"i",21),i&2&&m("@fadeInOut",void 0)}function vn(i,c){i&1&&(p(0,"br"),a(1,"small",80),p(2,"i",114),l(3),r(4,"translate"),o()),i&2&&(t(3),g(" ",s(4,1,"settings.warning_pwa")," "))}function fn(i,c){i&1&&p(0,"i",21),i&2&&m("@fadeInOut",void 0)}function Cn(i,c){if(i&1){let e=E();a(0,"ul",11)(1,"li",22)(2,"span",23),l(3),r(4,"translate"),p(5,"br"),a(6,"div",98),l(7),r(8,"translate"),o(),z(9,an,6,9,"span",99,O),o(),a(11,"button",100),r(12,"translate"),x("click",function(){S(e);let d=b(2);return I(d.selectNetworkInterfaces())}),p(13,"i",25),o()(),a(14,"li",18)(15,"span"),l(16),r(17,"translate"),p(18,"br"),a(19,"small",80),l(20),r(21,"translate"),o()(),a(22,"div",19)(23,"select",27),r(24,"translate"),_(25,on,3,3,"option",101),a(26,"option",102),l(27),r(28,"translate"),o(),a(29,"option",103),l(30,"Bonjour HAP"),o(),_(31,rn,3,3,"option",104),o(),_(32,sn,1,1,"i",21),o()(),a(33,"li",18)(34,"span"),l(35),r(36,"translate"),p(37,"br"),a(38,"small",80),l(39),r(40,"translate"),o()(),a(41,"div",19),p(42,"input",105),r(43,"translate"),_(44,ln,1,1,"i",21),o()(),a(45,"li",18)(46,"span"),l(47),r(48,"translate"),p(49,"br"),a(50,"small",80),l(51),r(52,"translate"),o(),_(53,dn,5,3),o(),a(54,"div",19),p(55,"input",106),r(56,"translate"),_(57,pn,1,1,"i",21),o()(),a(58,"li",18)(59,"span"),l(60),r(61,"translate"),p(62,"br"),a(63,"small",80),l(64),r(65,"translate"),o()(),a(66,"div",19),p(67,"input",105),r(68,"translate"),_(69,cn,1,1,"i",21),o()(),a(70,"li",18)(71,"span"),l(72),r(73,"translate"),p(74,"br"),a(75,"small",80),l(76),r(77,"translate"),o()(),a(78,"div",19),p(79,"input",105),r(80,"translate"),_(81,mn,1,1,"i",21),o()(),a(82,"li",18)(83,"span"),l(84),r(85,"translate"),p(86,"br")(87,"small",107),r(88,"translate"),_(89,un,5,3),o(),a(90,"div",19),p(91,"input",108),r(92,"translate"),_(93,_n,1,1,"i",21),o()(),a(94,"li",18)(95,"span"),l(96),r(97,"translate"),a(98,"span",109),l(99),r(100,"translate"),o(),p(101,"br")(102,"small",107),r(103,"translate"),_(104,hn,5,3)(105,gn,5,3),o(),a(106,"div",19),p(107,"input",110),r(108,"translate"),_(109,bn,1,1,"i",21),o()(),a(110,"li",18)(111,"span"),l(112),r(113,"translate"),p(114,"br"),a(115,"small",80),l(116),r(117,"translate"),o(),_(118,vn,5,3),o(),a(119,"div",19),p(120,"input",111),r(121,"translate"),_(122,fn,1,1,"i",21),o()()()}if(i&2){let e=b(2);t(3),g(" ",s(4,56,"settings.network.title_network_interfaces")),t(4),u(s(8,58,"settings.network.message_network_interface")),t(2),H(e.adaptersSelected),t(2),m("disabled",!e.adaptersAvailable.length),v("aria-label",s(12,60,"settings.network.title_network_interfaces")),t(5),g(" ",s(17,62,"settings.mdns_advertiser")),t(4),u(s(21,64,"settings.mdns_advertiser_help")),t(3),m("formControl",e.hbMDnsFormControl),v("aria-label",s(24,66,"settings.mdns_advertiser")),t(2),h(e.showAvahiMdnsOption?25:-1),t(2),g(" Ciao ",e.showAvahiMdnsOption?"":"("+s(28,68,"settings.mdns_advertiser_rec")+")"," "),t(4),h(e.showResolvedMdnsOption?31:-1),t(),h(e.hbMDnsIsSaving?32:-1),t(3),g(" ",s(36,70,"settings.network.port_hb")),t(4),u(s(40,72,"settings.network.port_hb_desc")),t(3),m("formControl",e.hbPortFormControl)("ngClass",P(114,G,e.hbPortIsInvalid)),v("aria-label",s(43,74,"settings.network.port_hb")),t(2),h(e.hbPortIsSaving?44:-1),t(3),g(" ",s(48,76,"settings.network.port_ui")),t(4),u(s(52,78,"settings.network.port_ui_desc")),t(2),h(e.isPwa?53:-1),t(2),m("formControl",e.uiPortFormControl)("ngClass",P(116,G,e.uiPortIsInvalid)),v("aria-label",s(56,80,"settings.network.port_ui")),t(2),h(e.uiPortIsSaving?57:-1),t(3),g(" ",s(61,82,"settings.network.port_start")),t(4),u(s(65,84,"settings.network.port_start_desc")),t(3),m("formControl",e.hbStartPortFormControl)("ngClass",P(118,G,e.hbStartPortIsInvalid)),v("aria-label",s(68,86,"settings.network.port_start")),t(2),h(e.hbStartPortIsSaving?69:-1),t(3),g(" ",s(73,88,"settings.network.port_end")),t(4),u(s(77,90,"settings.network.port_end_desc")),t(3),m("formControl",e.hbEndPortFormControl)("ngClass",P(120,G,e.hbEndPortIsInvalid)),v("aria-label",s(80,92,"settings.network.port_end")),t(2),h(e.hbEndPortIsSaving?81:-1),t(3),g(" ",s(85,94,"settings.network.host")),t(3),m("innerHtml",s(88,96,"settings.network.host_desc"),ee),t(2),h(e.isPwa?89:-1),t(2),m("formControl",e.uiHostFormControl),v("aria-label",s(92,98,"settings.network.host")),t(2),h(e.uiHostIsSaving?93:-1),t(3),g(" ",s(97,100,"settings.network.webroot")," "),t(3),u(s(100,102,"common.labels.beta")),t(3),m("innerHtml",s(103,104,"settings.network.webroot_desc"),ee),t(2),h(e.webrootSettingDisabledAccess?104:e.isPwa?105:-1),t(3),m("formControl",e.uiWebrootFormControl),v("aria-label",s(108,106,"settings.network.webroot")),t(2),h(e.uiWebrootIsSaving?109:-1),t(3),g(" ",s(113,108,"settings.network.proxy")),t(4),u(s(117,110,"settings.network.proxy_desc")),t(2),h(e.isPwa?118:-1),t(2),m("formControl",e.uiProxyHostFormControl),v("aria-label",s(121,112,"settings.network.proxy")),t(2),h(e.uiProxyHostIsSaving?122:-1)}}function xn(i,c){i&1&&p(0,"i",21),i&2&&m("@fadeInOut",void 0)}function Sn(i,c){i&1&&p(0,"i",21),i&2&&m("@fadeInOut",void 0)}function In(i,c){i&1&&p(0,"i",21),i&2&&m("@fadeInOut",void 0)}function yn(i,c){i&1&&p(0,"i",21),i&2&&m("@fadeInOut",void 0)}function wn(i,c){i&1&&p(0,"i",21),i&2&&m("@fadeInOut",void 0)}function kn(i,c){if(i&1&&(a(0,"li",18)(1,"span"),l(2),r(3,"translate"),p(4,"br"),a(5,"small",80),l(6),r(7,"translate"),o()(),a(8,"div",19),p(9,"input",119),r(10,"translate"),_(11,Sn,1,1,"i",21),o()(),a(12,"li",18)(13,"span"),l(14),r(15,"translate"),p(16,"br"),a(17,"small",80),l(18),r(19,"translate"),o()(),a(20,"div",19),p(21,"input",105),r(22,"translate"),_(23,In,1,1,"i",21),o()(),a(24,"li",18)(25,"span"),l(26),r(27,"translate"),p(28,"br"),a(29,"small",80),l(30),r(31,"translate"),o()(),a(32,"div",19),p(33,"input",120),r(34,"translate"),_(35,yn,1,1,"i",21),o()(),a(36,"li",18)(37,"span"),l(38),r(39,"translate"),p(40,"br"),a(41,"small",80),l(42),r(43,"translate"),o()(),a(44,"div",19),p(45,"input",120),r(46,"translate"),_(47,wn,1,1,"i",21),o()()),i&2){let e=b(4);t(2),g(" ",s(3,23,"settings.matter.device_name")),t(4),u(L(7,25,"settings.matter.device_name_desc",P(51,_e,e.matterDefaults.deviceName))),t(3),m("formControl",e.matterDeviceNameFormControl),v("aria-label",s(10,28,"settings.matter.device_name")),t(2),h(e.matterDeviceNameIsSaving?11:-1),t(3),g(" ",s(15,30,"settings.matter.port")),t(4),u(L(19,32,"settings.matter.port_desc",P(53,_e,e.matterDefaults.port))),t(3),m("formControl",e.matterPortFormControl)("ngClass",P(55,G,e.matterPortIsInvalid)),v("aria-label",s(22,35,"settings.matter.port")),t(2),h(e.matterPortIsSaving?23:-1),t(3),g(" ",s(27,37,"settings.matter.vendor_id")),t(4),u(L(31,39,"settings.matter.vendor_id_desc",P(57,_e,e.matterDefaults.vendorId))),t(3),m("formControl",e.matterVendorIdFormControl)("ngClass",P(59,G,e.matterVendorIdIsInvalid)),v("aria-label",s(34,42,"settings.matter.vendor_id")),t(2),h(e.matterVendorIdIsSaving?35:-1),t(3),g(" ",s(39,44,"settings.matter.product_id")),t(4),u(L(43,46,"settings.matter.product_id_desc",P(61,_e,e.matterDefaults.productId))),t(3),m("formControl",e.matterProductIdFormControl)("ngClass",P(63,G,e.matterProductIdIsInvalid)),v("aria-label",s(46,49,"settings.matter.product_id")),t(2),h(e.matterProductIdIsSaving?47:-1)}}function En(i,c){if(i&1&&(a(0,"ul",116)(1,"li",22)(2,"span"),l(3),r(4,"translate"),p(5,"br"),a(6,"small",80),l(7),r(8,"translate"),o()(),a(9,"div",76)(10,"div",77),p(11,"input",117),r(12,"translate"),p(13,"label",118),o(),_(14,xn,1,1,"i",21),o()(),_(15,kn,48,65),o()),i&2){let e=b(3);t(3),g(" ",s(4,6,"settings.matter.enabled")),t(4),u(s(8,8,"settings.matter.enabled_desc")),t(4),m("formControl",e.matterEnabledFormControl),v("aria-label",s(12,10,"settings.matter.enabled")),t(3),h(e.matterEnabledIsSaving?14:-1),t(),h(e.matterEnabledFormControl.value?15:-1)}}function Bn(i,c){if(i&1){let e=E();a(0,"div",4)(1,"div",5),x("click",function(){S(e);let d=b(2);return I(d.toggleSection("matter"))}),a(2,"h5",6),p(3,"i",7),l(4),r(5,"translate"),o()(),_(6,En,16,12,"ul",116),o()}if(i&2){let e=b(2);t(),v("aria-expanded",e.showFields.matter?"true":"false")("aria-controls","fieldsMatter"),t(2),m("ngClass",F(7,X,e.showFields.matter,!e.showFields.matter)),t(),g(" ",s(5,5,"settings.matter.title")," "),t(2),h(e.showFields.matter?6:-1)}}function Tn(i,c){i&1&&p(0,"i",21),i&2&&m("@fadeInOut",void 0)}function $n(i,c){i&1&&p(0,"i",21),i&2&&m("@fadeInOut",void 0)}function Fn(i,c){if(i&1&&(a(0,"li",18)(1,"span"),l(2),r(3,"translate"),p(4,"br"),a(5,"small",80),l(6),r(7,"translate"),o()(),a(8,"div",19),p(9,"input",122),r(10,"translate"),_(11,$n,1,1,"i",21),o()()),i&2){let e=b(3);t(2),g(" ",s(3,6,"settings.terminal.log_truncate")),t(4),u(s(7,8,"settings.terminal.log_truncate_desc")),t(3),m("formControl",e.hbLogTruncateFormControl)("ngClass",P(12,G,e.hbLogTruncateIsInvalid)),v("aria-label",s(10,10,"settings.terminal.log_truncate")),t(2),h(e.hbLogTruncateIsSaving?11:-1)}}function Pn(i,c){i&1&&p(0,"i",21),i&2&&m("@fadeInOut",void 0)}function Vn(i,c){i&1&&p(0,"i",21),i&2&&m("@fadeInOut",void 0)}function An(i,c){if(i&1&&(a(0,"li",22)(1,"span"),l(2),r(3,"translate"),a(4,"span",109),l(5),r(6,"translate"),o(),p(7,"br"),a(8,"small",80),l(9),r(10,"translate"),o()(),a(11,"div",76)(12,"div",77),p(13,"input",125),r(14,"translate"),p(15,"label",126),o(),_(16,Vn,1,1,"i",21),o()()),i&2){let e=b(4);t(2),g(" ",s(3,6,"settings.terminal.warning")," "),t(3),u(s(6,8,"common.labels.beta")),t(4),u(s(10,10,"settings.terminal.warning_help")),t(4),m("formControl",e.uiTerminalHideWarningFormControl),v("aria-label",s(14,12,"settings.terminal.warning")),t(3),h(e.uiTerminalHideWarningIsSaving?16:-1)}}function Rn(i,c){i&1&&p(0,"i",21),i&2&&m("@fadeInOut",void 0)}function Mn(i,c){if(i&1&&(a(0,"li",18)(1,"div",127)(2,"span"),l(3),r(4,"translate"),a(5,"span",109),l(6),r(7,"translate"),o()(),a(8,"div",128),l(9),r(10,"translate"),o()(),a(11,"div",19),p(12,"input",129),r(13,"translate"),_(14,Rn,1,1,"i",21),o()()),i&2){let e=b(4);t(3),g(" ",s(4,7,"settings.terminal.buffer_size")," "),t(3),u(s(7,9,"common.labels.beta")),t(3),u(s(10,11,"settings.terminal.buffer_size_help")),t(3),m("formControl",e.uiTerminalBufferSizeFormControl)("ngClass",P(15,G,e.uiTerminalBufferSizeIsInvalid)),v("aria-label",s(13,13,"settings.terminal.buffer_size")),t(2),h(e.uiTerminalBufferSizeIsSaving?14:-1)}}function Dn(i,c){if(i&1&&(a(0,"li",22)(1,"span"),l(2),r(3,"translate"),a(4,"span",109),l(5),r(6,"translate"),o(),p(7,"br"),a(8,"small",80),l(9),r(10,"translate"),o()(),a(11,"div",76)(12,"div",77),p(13,"input",123),r(14,"translate"),p(15,"label",124),o(),_(16,Pn,1,1,"i",21),o()(),_(17,An,17,14,"li",22),_(18,Mn,15,17,"li",18)),i&2){let e=b(3);t(2),g(" ",s(3,8,"settings.terminal.persistence")," "),t(3),u(s(6,10,"common.labels.beta")),t(4),u(s(10,12,"settings.terminal.persistence_help")),t(4),m("formControl",e.uiTerminalPersistenceFormControl),v("aria-label",s(14,14,"settings.terminal.persistence")),t(3),h(e.uiTerminalPersistenceIsSaving?16:-1),t(),h(e.uiTerminalPersistenceFormControl.value?-1:17),t(),h(e.uiTerminalPersistenceFormControl.value?18:-1)}}function Nn(i,c){if(i&1&&(a(0,"ul",12)(1,"li",18)(2,"span"),l(3),r(4,"translate"),p(5,"br"),a(6,"small",80),l(7),r(8,"translate"),o()(),a(9,"div",19),p(10,"input",121),r(11,"translate"),_(12,Tn,1,1,"i",21),o()(),_(13,Fn,12,14,"li",18),_(14,Dn,19,16),o()),i&2){let e=b(2);t(3),g(" ",s(4,8,"settings.terminal.log_max")),t(4),u(s(8,10,"settings.terminal.log_max_desc")),t(3),m("formControl",e.hbLogSizeFormControl)("ngClass",P(14,G,e.hbLogSizeIsInvalid)),v("aria-label",s(11,12,"settings.terminal.log_max")),t(2),h(e.hbLogSizeIsSaving?12:-1),t(),h(e.hbLogSizeFormControl.value>0?13:-1),t(),h(e.enableTerminalAccess?14:-1)}}function Ln(i,c){i&1&&p(0,"i",21),i&2&&m("@fadeInOut",void 0)}function On(i,c){i&1&&p(0,"i",21),i&2&&m("@fadeInOut",void 0)}function zn(i,c){if(i&1&&(a(0,"li",18)(1,"span"),l(2),r(3,"translate"),p(4,"br"),a(5,"small",80),l(6),r(7,"translate"),o()(),a(8,"div",19),p(9,"input",135),r(10,"translate"),_(11,On,1,1,"i",21),o()()),i&2){let e=b(3);t(2),g(" ",s(3,6,"settings.startup.session")),t(4),u(s(7,8,"settings.startup.session_desc")),t(3),m("formControl",e.uiSessionTimeoutFormControl)("ngClass",P(12,G,e.uiSessionTimeoutIsInvalid)),v("aria-label",s(10,10,"settings.startup.session")),t(2),h(e.uiSessionTimeoutIsSaving?11:-1)}}function Hn(i,c){i&1&&(p(0,"br"),a(1,"small",80),p(2,"i",114),l(3),r(4,"translate"),o()),i&2&&(t(3),g(" ",s(4,1,"settings.warning_pwa")," "))}function Un(i,c){i&1&&(p(0,"br"),a(1,"small",80),p(2,"i",114),l(3),r(4,"translate"),o()),i&2&&(t(3),g(" ",s(4,1,"settings.warning_pwa")," "))}function Wn(i,c){i&1&&p(0,"i",21),i&2&&m("@fadeInOut",void 0)}function Kn(i,c){i&1&&(p(0,"br"),a(1,"small",80),p(2,"i",114),l(3),r(4,"translate"),o()),i&2&&(t(3),g(" ",s(4,1,"settings.warning_pwa")," "))}function jn(i,c){i&1&&p(0,"i",21),i&2&&m("@fadeInOut",void 0)}function Gn(i,c){if(i&1&&(a(0,"li",18)(1,"span"),l(2),r(3,"translate"),o(),_(4,Un,5,3),a(5,"div",19),p(6,"input",136),r(7,"translate"),_(8,Wn,1,1,"i",21),o()(),a(9,"li",18)(10,"span"),l(11),r(12,"translate"),o(),_(13,Kn,5,3),a(14,"div",19),p(15,"input",137),r(16,"translate"),_(17,jn,1,1,"i",21),o()()),i&2){let e=b(3);t(2),u(s(3,10,"settings.security.key")),t(2),h(e.isPwa?4:-1),t(2),m("formControl",e.uiSslKeyFormControl),v("aria-label",s(7,12,"settings.security.key")),t(2),h(e.uiSslKeyIsSaving?8:-1),t(3),u(s(12,14,"settings.security.cert")),t(2),h(e.isPwa?13:-1),t(2),m("formControl",e.uiSslCertFormControl),v("aria-label",s(16,16,"settings.security.cert")),t(2),h(e.uiSslCertIsSaving?17:-1)}}function qn(i,c){i&1&&(p(0,"br"),a(1,"small",80),p(2,"i",114),l(3),r(4,"translate"),o()),i&2&&(t(3),g(" ",s(4,1,"settings.warning_pwa")," "))}function Qn(i,c){i&1&&p(0,"i",21),i&2&&m("@fadeInOut",void 0)}function Jn(i,c){i&1&&(p(0,"br"),a(1,"small",80),p(2,"i",114),l(3),r(4,"translate"),o()),i&2&&(t(3),g(" ",s(4,1,"settings.warning_pwa")," "))}function Xn(i,c){i&1&&p(0,"i",21),i&2&&m("@fadeInOut",void 0)}function Yn(i,c){if(i&1){let e=E();a(0,"li",18)(1,"span"),l(2),r(3,"translate"),o(),_(4,qn,5,3),a(5,"div",19),p(6,"input",138),r(7,"translate"),_(8,Qn,1,1,"i",21),o()(),a(9,"li",18)(10,"span"),l(11),r(12,"translate"),o(),_(13,Jn,5,3),a(14,"div",19)(15,"input",139),r(16,"translate"),x("focus",function(){S(e);let d=b(3);return I(d.showPfxPassphrase=!0)})("blur",function(){S(e);let d=b(3);return I(d.showPfxPassphrase=!1)}),o(),_(17,Xn,1,1,"i",21),o()()}if(i&2){let e=b(3);t(2),u(s(3,11,"settings.security.pfx")),t(2),h(e.isPwa?4:-1),t(2),m("formControl",e.uiSslPfxFormControl),v("aria-label",s(7,13,"settings.security.pfx")),t(2),h(e.uiSslPfxIsSaving?8:-1),t(3),u(s(12,15,"settings.security.pass")),t(2),h(e.isPwa?13:-1),t(2),m("type",e.showPfxPassphrase?"text":"password")("formControl",e.uiSslPassphraseFormControl),v("aria-label",s(16,17,"settings.security.pass")),t(2),h(e.uiSslPassphraseIsSaving?17:-1)}}function Zn(i,c){if(i&1){let e=E();a(0,"ul",13)(1,"li",22)(2,"span"),l(3),r(4,"translate"),p(5,"br"),a(6,"small",80),l(7),r(8,"translate"),o()(),a(9,"div",76)(10,"div",77),p(11,"input",130),r(12,"translate"),p(13,"label",131),o(),_(14,Ln,1,1,"i",21),o()(),_(15,zn,12,14,"li",18),a(16,"li",18)(17,"span"),l(18),r(19,"translate"),p(20,"br"),a(21,"small",80),l(22),r(23,"translate"),o(),_(24,Hn,5,3),o(),a(25,"div",19)(26,"select",27),r(27,"translate"),a(28,"option",132),l(29),r(30,"translate"),o(),a(31,"option",133),l(32),r(33,"translate"),o(),a(34,"option",134),l(35),r(36,"translate"),o()()()(),_(37,Gn,18,18),_(38,Yn,18,19),a(39,"li",22)(40,"span",23),l(41),r(42,"translate"),p(43,"br"),a(44,"small",80),l(45),r(46,"translate"),o()(),a(47,"button",24),r(48,"translate"),x("click",function(){S(e);let d=b(2);return I(d.accessoryUiControl())}),p(49,"i",25),o()()()}if(i&2){let e=b(2);t(3),g(" ",s(4,19,"settings.security.auth")),t(4),g(" ",s(8,21,"settings.security.auth_desc")," "),t(4),m("formControl",e.uiAuthFormControl),v("aria-label",s(12,23,"settings.security.auth")),t(3),h(e.uiAuthIsSaving?14:-1),t(),h(e.uiAuthFormControl.value?15:-1),t(3),g(" ",s(19,25,"settings.security.https")),t(4),u(s(23,27,"settings.security.https_desc")),t(2),h(e.isPwa?24:-1),t(2),m("formControl",e.uiSslTypeFormControl),v("aria-label",s(27,29,"settings.security.https")),t(3),u(s(30,31,"accessories.control.off")),t(3),u(s(33,33,"settings.security.https_keycert")),t(3),u(s(36,35,"settings.security.https_pfx")),t(2),h(e.uiSslTypeFormControl.value==="keycert"?37:-1),t(),h(e.uiSslTypeFormControl.value==="pfx"?38:-1),t(3),g(" ",s(42,37,"settings.security.ui_control")),t(4),u(s(46,39,"settings.security.ui_control_desc")),t(2),v("aria-label",s(48,41,"settings.security.ui_control"))}}function ea(i,c){i&1&&(a(0,"p",14),l(1),r(2,"translate"),o()),i&2&&(t(),u(s(2,1,"settings.cache.desc")))}function ta(i,c){i&1&&p(0,"i",21),i&2&&m("@fadeInOut",void 0)}function ia(i,c){if(i&1){let e=E();a(0,"ul",15)(1,"li",22)(2,"span"),l(3),r(4,"translate"),p(5,"br"),a(6,"small",80),l(7),r(8,"translate"),o()(),a(9,"div",76)(10,"div",77),p(11,"input",140),r(12,"translate"),p(13,"label",141),o(),_(14,ta,1,1,"i",21),o()(),a(15,"li",22)(16,"span",23),l(17),r(18,"translate"),p(19,"br"),a(20,"small",80),l(21),r(22,"translate"),o()(),a(23,"button",24),r(24,"translate"),x("click",function(){S(e);let d=b(2);return I(d.removeSingleCachedAccessories())}),p(25,"i",25),o()(),a(26,"li",22)(27,"span",23),l(28),r(29,"translate"),p(30,"br"),a(31,"small",80),l(32),r(33,"translate"),o()(),a(34,"button",24),r(35,"translate"),x("click",function(){S(e);let d=b(2);return I(d.removeBridgeAccessories())}),p(36,"i",25),o()(),a(37,"li",22)(38,"span",23),l(39),r(40,"translate"),p(41,"br"),a(42,"small",80),l(43),r(44,"translate"),o()(),a(45,"button",24),r(46,"translate"),x("click",function(){S(e);let d=b(2);return I(d.removeAllCachedAccessories())}),p(47,"i",25),o()()()}if(i&2){let e=b(2);t(3),g(" ",s(4,14,"settings.accessory.debug")),t(4),u(s(8,16,"settings.accessory.debug_desc")),t(4),m("formControl",e.uiAccDebugFormControl),v("aria-label",s(12,18,"settings.accessory.debug")),t(3),h(e.uiAccDebugIsSaving?14:-1),t(3),g(" ",s(18,20,"reset.accessory_ind.title")),t(4),u(s(22,22,"reset.accessory_ind.desc")),t(2),v("aria-label",s(24,24,"reset.accessory_ind.title")),t(5),g(" ",s(29,26,"reset.bridge_accessories.title")),t(4),u(s(33,28,"reset.bridge_accessories.desc")),t(2),v("aria-label",s(35,30,"reset.accessory_all.title")),t(5),g(" ",s(40,32,"reset.accessory_all.title")),t(4),u(s(44,34,"reset.accessory_all.desc")),t(2),v("aria-label",s(46,36,"reset.accessory_all.title"))}}function na(i,c){i&1&&(a(0,"p",14),l(1),r(2,"translate"),o()),i&2&&(t(),u(s(2,1,"reset.bridges.desc")))}function aa(i,c){if(i&1){let e=E();a(0,"ul",16)(1,"li",22)(2,"span",23),l(3),r(4,"translate"),p(5,"br"),a(6,"small",80),l(7),r(8,"translate"),o()(),a(9,"button",24),r(10,"translate"),x("click",function(){S(e);let d=b(2);return I(d.unpairAccessory())}),p(11,"i",25),o()(),a(12,"li",22)(13,"span",23),l(14),r(15,"translate"),r(16,"titlecase"),p(17,"br"),a(18,"small",80),l(19),r(20,"translate"),o()(),a(21,"button",24),r(22,"translate"),x("click",function(){S(e);let d=b(2);return I(d.resetHomebridgeState())}),p(23,"i",25),o()()()}i&2&&(t(3),g(" ",s(4,6,"reset.bridge_ind.title")),t(4),u(s(8,8,"reset.bridge_ind.desc")),t(2),v("aria-label",s(10,10,"reset.bridge_ind.title")),t(5),g(" ",s(16,14,s(15,12,"reset.bridge_all.title"))),t(5),u(s(20,16,"reset.bridge_all.desc")),t(2),v("aria-label",s(22,18,"reset.bridge_all.title")))}function oa(i,c){if(i&1){let e=E();a(0,"div",4)(1,"div",5),x("click",function(){S(e);let d=b();return I(d.toggleSection("general"))}),a(2,"h5",6),p(3,"i",7),l(4),r(5,"translate"),o()(),_(6,Ai,30,29,"ul",8),o(),a(7,"div",4)(8,"div",5),x("click",function(){S(e);let d=b();return I(d.toggleSection("display"))}),a(9,"h5",6),p(10,"i",7),l(11),r(12,"translate"),o()(),_(13,zi,167,102,"ul",9),o(),a(14,"div",4)(15,"div",5),x("click",function(){S(e);let d=b();return I(d.toggleSection("startup"))}),a(16,"h5",6),p(17,"i",7),l(18),r(19,"translate"),o()(),_(20,tn,98,70,"ul",10),o(),a(21,"div",4)(22,"div",5),x("click",function(){S(e);let d=b();return I(d.toggleSection("network"))}),a(23,"h5",6),p(24,"i",7),l(25),r(26,"translate"),o()(),_(27,Cn,123,122,"ul",11),o(),_(28,Bn,7,10,"div",4),a(29,"div",4)(30,"div",5),x("click",function(){S(e);let d=b();return I(d.toggleSection("terminal"))}),a(31,"h5",6),p(32,"i",7),l(33),r(34,"translate"),o()(),_(35,Nn,15,16,"ul",12),o(),a(36,"div",4)(37,"div",5),x("click",function(){S(e);let d=b();return I(d.toggleSection("security"))}),a(38,"h5",6),p(39,"i",7),l(40),r(41,"translate"),o()(),_(42,Zn,50,43,"ul",13),o(),a(43,"div",4)(44,"div",5),x("click",function(){S(e);let d=b();return I(d.toggleSection("cache"))}),a(45,"h5",6),p(46,"i",7),l(47),r(48,"translate"),o()(),_(49,ea,3,3,"p",14),_(50,ia,48,38,"ul",15),o(),a(51,"div",4)(52,"div",5),x("click",function(){S(e);let d=b();return I(d.toggleSection("reset"))}),a(53,"h5",6),p(54,"i",7),l(55),r(56,"translate"),o()(),_(57,na,3,3,"p",14),_(58,aa,24,20,"ul",16),o(),p(59,"div",17)}if(i&2){let e=b();t(),v("aria-expanded",e.showFields.general?"true":"false")("aria-controls","fieldsGeneral"),t(2),m("ngClass",F(59,X,e.showFields.general,!e.showFields.general)),t(),g(" ",s(5,43,"settings.general.title_general")," "),t(2),h(e.showFields.general?6:-1),t(2),v("aria-expanded",e.showFields.display?"true":"false")("aria-controls","fieldsDisplay"),t(2),m("ngClass",F(62,X,e.showFields.display,!e.showFields.display)),t(),g(" ",s(12,45,"settings.general.title_display")," "),t(2),h(e.showFields.display?13:-1),t(2),v("aria-expanded",e.showFields.startup?"true":"false")("aria-controls","fieldsStartup"),t(2),m("ngClass",F(65,X,e.showFields.startup,!e.showFields.startup)),t(),g(" ",s(19,47,"settings.title_startup_options")," "),t(2),h(e.showFields.startup?20:-1),t(2),v("aria-expanded",e.showFields.network?"true":"false")("aria-controls","fieldsNetwork"),t(2),m("ngClass",F(68,X,e.showFields.network,!e.showFields.network)),t(),g(" ",s(26,49,"settings.network.title_network")," "),t(2),h(e.showFields.network?27:-1),t(),h(e.isHbV2?28:-1),t(2),v("aria-expanded",e.showFields.terminal?"true":"false")("aria-controls","fieldsTerminal"),t(2),m("ngClass",F(71,X,e.showFields.terminal,!e.showFields.terminal)),t(),g(" ",s(34,51,"settings.network.title_terminal")," "),t(2),h(e.showFields.terminal?35:-1),t(2),v("aria-expanded",e.showFields.security?"true":"false")("aria-controls","fieldsSecurity"),t(2),m("ngClass",F(74,X,e.showFields.security,!e.showFields.security)),t(),g(" ",s(41,53,"settings.network.title_security")," "),t(2),h(e.showFields.security?42:-1),t(2),v("aria-expanded",e.showFields.cache?"true":"false")("aria-controls","fieldsCache"),t(2),m("ngClass",F(77,X,e.showFields.cache,!e.showFields.cache)),t(),g(" ",s(48,55,"menu.label_accessories")," "),t(2),h(e.showFields.cache?49:-1),t(),h(e.showFields.cache?50:-1),t(2),v("aria-expanded",e.showFields.reset?"true":"false")("aria-controls","fieldsReset"),t(2),m("ngClass",F(80,X,e.showFields.reset,!e.showFields.reset)),t(),g(" ",s(56,57,"reset.bridges.title")," "),t(2),h(e.showFields.reset?57:-1),t(),h(e.showFields.reset?58:-1)}}var kr=(()=>{class i{$api=C(N);$modal=C(se);$notification=C(je);$router=C(W);$settings=C(Z);$terminal=C(qe);$toastr=C(D);$translate=C(M);restartToastIsShown=!1;showFields={general:!0,display:!0,startup:!0,network:!0,matter:!0,security:!0,terminal:!0,reset:!0,cache:!0};originalWebroot=this.$settings.originalWebroot;loading=!0;isHbV2=!1;showAvahiMdnsOption=!1;showResolvedMdnsOption=!1;adaptersAvailable=[];adaptersSelected=[];showPfxPassphrase=!1;runningInDocker=this.$settings.env.runningInDocker;runningOnRaspberryPi=this.$settings.env.runningOnRaspberryPi;platform=this.$settings.env.platform;enableTerminalAccess=this.$settings.env.enableTerminalAccess;isPwa=!!Ke();webrootSettingDisabledAccess=!1;matterDefaults;hbNameIsInvalid=!1;hbNameIsSaving=!1;hbNameFormControl=new k("");uiLangIsSaving=!1;uiLangFormControl=new k("");uiThemeIsSaving=!1;uiThemeFormControl=new k("");uiLightIsSaving=!1;uiLightFormControl=new k("");uiMenuIsSaving=!1;uiMenuFormControl=new k("");uiTempIsSaving=!1;uiTempFormControl=new k("");uiAlwaysShowBetasIsSaving=!1;uiAlwaysShowBetasFormControl=new k(!1);uiTerminalPersistenceIsSaving=!1;uiTerminalPersistenceFormControl=new k(!1);uiTerminalHideWarningIsSaving=!1;uiTerminalHideWarningFormControl=new k(!1);uiTerminalBufferSizeIsSaving=!1;uiTerminalBufferSizeIsInvalid=!1;uiTerminalBufferSizeFormControl=new k(globalThis.terminal.bufferSize);hbDebugIsSaving=!1;hbDebugFormControl=new k(!1);hbInsecureIsSaving=!1;hbInsecureFormControl=new k(!1);hbKeepIsSaving=!1;hbKeepFormControl=new k(!1);hbEnvDebugIsSaving=!1;hbEnvDebugFormControl=new k("");hbEnvNodeIsSaving=!1;hbEnvNodeFormControl=new k("");hbLogSizeIsInvalid=!1;hbLogSizeIsSaving=!1;hbLogSizeFormControl=new k(-1);hbLogTruncateIsInvalid=!1;hbLogTruncateIsSaving=!1;hbLogTruncateFormControl=new k(0);hbMDnsIsSaving=!1;hbMDnsFormControl=new k("");hbPortIsInvalid=!1;hbPortIsSaving=!1;hbPortFormControl=new k(0);uiPortIsInvalid=!1;uiPortIsSaving=!1;uiPortFormControl=new k(0);hbStartPortIsInvalid=!1;hbStartPortIsSaving=!1;hbStartPortFormControl=new k(0);hbEndPortIsInvalid=!1;hbEndPortIsSaving=!1;hbEndPortFormControl=new k(0);uiHostIsSaving=!1;uiHostFormControl=new k("");uiWebrootIsSaving=!1;uiWebrootFormControl=new k("");uiProxyHostIsSaving=!1;uiProxyHostFormControl=new k("");uiAuthIsSaving=!1;uiAuthFormControl=new Pe(!0);uiSessionTimeoutIsInvalid=!1;uiSessionTimeoutIsSaving=!1;uiSessionTimeoutFormControl=new k(0);uiSslTypeFormControl=new k("off");uiSslKeyIsSaving=!1;uiSslKeyFormControl=new k("");uiSslCertIsSaving=!1;uiSslCertFormControl=new k("");uiSslPfxIsSaving=!1;uiSslPfxFormControl=new k("");uiSslPassphraseIsSaving=!1;uiSslPassphraseFormControl=new k("");hbPackageIsSaving=!1;hbPackageFormControl=new k("");uiMetricsIsSaving=!1;uiMetricsFormControl=new k(!0);uiAccDebugIsSaving=!1;uiAccDebugFormControl=new k(!1);uiTempFileIsSaving=!1;uiTempFileFormControl=new k("");hbLinuxShutdownIsSaving=!1;hbLinuxShutdownFormControl=new k("");hbLinuxRestartIsSaving=!1;hbLinuxRestartFormControl=new k("");matterEnabledIsSaving=!1;matterEnabledFormControl=new k(!1);matterPortIsInvalid=!1;matterPortIsSaving=!1;matterPortFormControl=new k(0);matterVendorIdIsInvalid=!1;matterVendorIdIsSaving=!1;matterVendorIdFormControl=new k(0);matterProductIdIsInvalid=!1;matterProductIdIsSaving=!1;matterProductIdFormControl=new k(0);matterDeviceNameIsSaving=!1;matterDeviceNameFormControl=new k("");linkDebug='<a href="https://github.com/homebridge/homebridge-config-ui-x/wiki/Debug-Common-Values" target="_blank" rel="noopener noreferrer"><i class="fa fa-external-link-alt primary-text"></i></a>';ngOnInit(){return f(this,null,function*(){this.isHbV2=this.$settings.env.homebridgeVersion.startsWith("2"),this.matterDefaults=globalThis.matter.defaultConfig,yield this.initNetworkingOptions(),yield this.initStartupSettings(),this.$settings.originalWebroot===globalThis.webroot.errorCode&&(this.webrootSettingDisabledAccess=!0,this.uiWebrootFormControl.disable()),this.isPwa&&(this.uiPortFormControl.disable(),this.uiHostFormControl.disable(),this.uiWebrootFormControl.disable(),this.uiProxyHostFormControl.disable(),this.uiSslTypeFormControl.disable(),this.uiSslKeyFormControl.disable(),this.uiSslCertFormControl.disable(),this.uiSslPfxFormControl.disable(),this.uiSslPassphraseFormControl.disable()),this.hbNameFormControl.patchValue(this.$settings.env.homebridgeInstanceName),this.hbNameFormControl.valueChanges.pipe(w(1500)).subscribe(e=>this.hbNameSave(e)),this.uiLangFormControl.patchValue(this.$settings.env.lang),this.uiLangFormControl.valueChanges.pipe(w(750)).subscribe(e=>this.uiLangSave(e)),this.uiThemeFormControl.patchValue(this.$settings.theme),this.uiThemeFormControl.valueChanges.pipe(w(750)).subscribe(e=>this.uiThemeSave(e)),this.uiLightFormControl.patchValue(this.$settings.lightingMode),this.uiLightFormControl.valueChanges.pipe(w(750)).subscribe(e=>this.uiLightSave(e)),this.uiMenuFormControl.patchValue(this.$settings.menuMode),this.uiMenuFormControl.valueChanges.pipe(w(750)).subscribe(e=>this.uiMenuSave(e)),this.uiTempFormControl.patchValue(this.$settings.env.temperatureUnits),this.uiTempFormControl.valueChanges.pipe(w(750)).subscribe(e=>this.uiTempSave(e)),this.uiAlwaysShowBetasFormControl.patchValue(this.$settings.env.plugins?.alwaysShowBetas||!1),this.uiAlwaysShowBetasFormControl.valueChanges.pipe(w(750)).subscribe(e=>this.uiAlwaysShowBetasSave(e)),this.uiTerminalPersistenceFormControl.patchValue(this.$settings.env.terminal?.persistence),this.uiTerminalPersistenceFormControl.valueChanges.pipe(w(750)).subscribe(e=>this.uiTerminalPersistenceSave(e)),this.uiTerminalHideWarningFormControl.patchValue(this.$settings.env.terminal?.hideWarning),this.uiTerminalHideWarningFormControl.valueChanges.pipe(w(750)).subscribe(e=>this.uiTerminalHideWarningSave(e)),this.uiTerminalBufferSizeFormControl.patchValue(this.$settings.env.terminal?.bufferSize),this.uiTerminalBufferSizeFormControl.valueChanges.pipe(w(1500)).subscribe(e=>this.uiTerminalBufferSizeSave(e)),this.hbLogSizeFormControl.patchValue(this.$settings.env.log?.maxSize),this.hbLogSizeFormControl.valueChanges.pipe(w(1500)).subscribe(e=>this.hbLogSizeSave(e)),this.hbLogTruncateFormControl.patchValue(this.$settings.env.log?.truncateSize),this.hbLogTruncateFormControl.valueChanges.pipe(w(1500)).subscribe(e=>this.hbLogTruncateSave(e)),this.uiPortFormControl.patchValue(this.$settings.env.port),this.uiPortFormControl.valueChanges.pipe(w(1500)).subscribe(e=>this.uiPortSave(e)),this.uiAuthFormControl.patchValue(this.$settings.formAuth),this.uiAuthFormControl.valueChanges.pipe(w(750)).subscribe(e=>this.uiAuthSave(e)),this.uiSessionTimeoutFormControl.patchValue(this.$settings.sessionTimeout),this.uiSessionTimeoutFormControl.valueChanges.pipe(w(750)).subscribe(e=>this.uiSessionTimeoutSave(e)),this.uiSslKeyFormControl.patchValue(this.$settings.env.ssl?.key||""),this.uiSslKeyFormControl.valueChanges.pipe(w(1500)).subscribe(e=>this.uiSslKeySave(e)),this.uiSslCertFormControl.patchValue(this.$settings.env.ssl?.cert||""),this.uiSslCertFormControl.valueChanges.pipe(w(1500)).subscribe(e=>this.uiSslCertSave(e)),this.uiSslPfxFormControl.patchValue(this.$settings.env.ssl?.pfx||""),this.uiSslPfxFormControl.valueChanges.pipe(w(1500)).subscribe(e=>this.uiSslPfxSave(e)),this.uiSslPassphraseFormControl.patchValue(this.$settings.env.ssl?.passphrase||""),this.uiSslPassphraseFormControl.valueChanges.pipe(w(1500)).subscribe(e=>this.uiSslPassphraseSave(e)),this.uiSslTypeFormControl.patchValue(this.uiSslKeyFormControl.value||this.uiSslCertFormControl.value?"keycert":this.uiSslPfxFormControl.value||this.uiSslPassphraseFormControl.value?"pfx":"off"),this.uiSslTypeFormControl.valueChanges.pipe(w(750)).subscribe(e=>this.uiSslTypeSave(e)),this.uiHostFormControl.patchValue(this.$settings.host||""),this.uiHostFormControl.valueChanges.pipe(w(1500)).subscribe(e=>this.uiHostSave(e)),this.uiWebrootFormControl.patchValue(this.$settings.webroot||""),this.uiWebrootFormControl.valueChanges.pipe(w(1500)).subscribe(e=>this.uiWebrootSave(e)),this.uiProxyHostFormControl.patchValue(this.$settings.proxyHost||""),this.uiProxyHostFormControl.valueChanges.pipe(w(1500)).subscribe(e=>this.uiProxyHostSave(e)),this.hbPackageFormControl.patchValue(this.$settings.env.homebridgePackagePath||""),this.hbPackageFormControl.valueChanges.pipe(w(1500)).subscribe(e=>this.hbPackageSave(e)),this.uiMetricsFormControl.patchValue(!this.$settings.env.disableServerMetricsMonitoring),this.uiMetricsFormControl.valueChanges.pipe(w(750)).subscribe(e=>this.uiMetricsSave(e)),this.uiAccDebugFormControl.patchValue(this.$settings.env.accessoryControl?.debug),this.uiAccDebugFormControl.valueChanges.pipe(w(750)).subscribe(e=>this.uiAccDebugSave(e)),this.uiTempFileFormControl.patchValue(this.$settings.env.temp),this.uiTempFileFormControl.valueChanges.pipe(w(1500)).subscribe(e=>this.uiTempFileSave(e)),this.hbLinuxShutdownFormControl.patchValue(this.$settings.env.linux?.shutdown),this.hbLinuxShutdownFormControl.valueChanges.pipe(w(1500)).subscribe(e=>this.hbLinuxShutdownSave(e)),this.hbLinuxRestartFormControl.patchValue(this.$settings.env.linux?.restart),this.hbLinuxRestartFormControl.valueChanges.pipe(w(1500)).subscribe(e=>this.hbLinuxRestartSave(e)),yield this.initMatterSettings(),this.loading=!1})}openBackupModal(){this.$modal.open(ue,{size:"lg",backdrop:"static"})}openConfigBackup(){this.$router.navigate(["/config"],{queryParams:{action:"restore"}})}openWallpaperModal(){this.$modal.open(ct,{size:"lg",backdrop:"static"})}resetHomebridgeState(){this.$modal.open(st,{size:"lg",backdrop:"static"})}unpairAccessory(){this.$modal.open(dt,{size:"lg",backdrop:"static"})}removeAllCachedAccessories(){this.$modal.open(ot,{size:"lg",backdrop:"static"})}accessoryUiControl(){return f(this,null,function*(){try{let e=this.$modal.open(Ye,{size:"lg",backdrop:"static"});e.componentInstance.existingBlacklist=this.$settings.env.accessoryControl?.instanceBlacklist||[],yield e.result,this.showRestartToast()}catch(e){e!=="Dismiss"&&(console.error(e),this.$toastr.error(e.message,this.$translate.instant("toast.title_error")))}})}removeSingleCachedAccessories(){this.$modal.open(Qe,{size:"lg",backdrop:"static"})}removeBridgeAccessories(){this.$modal.open(rt,{size:"lg",backdrop:"static"})}selectNetworkInterfaces(){return f(this,null,function*(){let e=this.$modal.open(pt,{size:"lg",backdrop:"static"});e.componentInstance.adaptersAvailable=this.adaptersAvailable,e.componentInstance.adaptersSelected=this.adaptersSelected;try{let n=yield e.result;this.buildBridgeNetworkAdapterList(n),yield B(this.$api.put("/server/network-interfaces/bridge",{adapters:n})),this.showRestartToast()}catch(n){n!=="Dismiss"&&(console.error(n),this.$toastr.error(n.message,this.$translate.instant("toast.title_error")))}})}toggleSection(e){this.showFields[e]=!this.showFields[e]}initStartupSettings(){return f(this,null,function*(){try{let e=yield B(this.$api.get("/platform-tools/hb-service/homebridge-startup-settings"));this.hbDebugFormControl.patchValue(e.HOMEBRIDGE_DEBUG),this.hbDebugFormControl.valueChanges.pipe(w(750)).subscribe(n=>this.hbDebugSave(n)),this.hbInsecureFormControl.patchValue(e.HOMEBRIDGE_INSECURE),this.hbInsecureFormControl.valueChanges.pipe(w(750)).subscribe(n=>this.hbInsecureSave(n)),this.hbKeepFormControl.patchValue(e.HOMEBRIDGE_KEEP_ORPHANS),this.hbKeepFormControl.valueChanges.pipe(w(750)).subscribe(n=>this.hbKeepSave(n)),this.hbEnvDebugFormControl.patchValue(e.ENV_DEBUG),this.hbEnvDebugFormControl.valueChanges.pipe(w(1500)).subscribe(n=>this.hbEnvDebugSave(n)),this.hbEnvNodeFormControl.patchValue(e.ENV_NODE_OPTIONS),this.hbEnvNodeFormControl.valueChanges.pipe(w(1500)).subscribe(n=>this.hbEnvNodeSave(n))}catch(e){console.error(e),this.$toastr.error(e.message,this.$translate.instant("toast.title_error"))}})}initNetworkingOptions(){return f(this,null,function*(){try{yield this.getNetworkSettings(),(this.$settings.env.runningInLinux||this.$settings.env.runningInDocker||this.$settings.env.runningInSynologyPackage||this.$settings.env.runningInPackageMode)&&(this.showAvahiMdnsOption=!0,this.showResolvedMdnsOption=!0)}catch(e){console.error(e),this.$toastr.error(e.message,this.$translate.instant("toast.title_error"))}})}getNetworkSettings(){return f(this,null,function*(){return Promise.all([B(this.$api.get("/server/network-interfaces/system")),B(this.$api.get("/server/network-interfaces/bridge")),B(this.$api.get("/server/mdns-advertiser")),B(this.$api.get("/server/port")),B(this.$api.get("/server/ports"))]).then(([e,n,d,y,Y])=>{this.adaptersAvailable=e,this.buildBridgeNetworkAdapterList(n),this.hbMDnsFormControl.patchValue(d.advertiser),this.hbMDnsFormControl.valueChanges.pipe(w(750)).subscribe(Q=>this.hbMDnsSave(Q)),this.hbPortFormControl.patchValue(y.port),this.hbPortFormControl.valueChanges.pipe(w(1500)).subscribe(Q=>this.hbPortSave(Q)),this.hbStartPortFormControl.patchValue(Y.start),this.hbStartPortFormControl.valueChanges.pipe(w(1500)).subscribe(Q=>this.hbStartPortSave(Q)),this.hbEndPortFormControl.patchValue(Y.end),this.hbEndPortFormControl.valueChanges.pipe(w(1500)).subscribe(Q=>this.hbEndPortSave(Q))})})}saveUiSettingChange(e,n){return f(this,null,function*(){try{yield B(this.$api.put("/config-editor/ui",{key:e,value:n}))}catch(d){console.error(d),this.$toastr.error(d.message,this.$translate.instant("toast.title_error"))}})}hbNameSave(e){return f(this,null,function*(){if(!e||!/^[\p{L}\p{N}][\p{L}\p{N} ']*[\p{L}\p{N}]$/u.test(e)){this.hbNameIsInvalid=!0;return}try{this.hbNameIsSaving=!0,yield B(this.$api.put("/server/name",{name:e})),this.$settings.setEnvItem("homebridgeInstanceName",e),this.hbNameIsInvalid=!1,setTimeout(()=>{this.hbNameIsSaving=!1},1e3)}catch(n){console.error(n),this.$toastr.error(n.message,this.$translate.instant("toast.title_error")),this.hbNameIsSaving=!1}})}uiLangSave(e){return f(this,null,function*(){try{this.uiLangIsSaving=!0,this.$settings.setLang(e),yield this.saveUiSettingChange("lang",e),setTimeout(()=>{this.uiLangIsSaving=!1},1e3)}catch(n){console.error(n),this.$toastr.error(n.message,this.$translate.instant("toast.title_error")),this.uiLangIsSaving=!1}})}uiThemeSave(e){return f(this,null,function*(){try{this.uiThemeIsSaving=!0,this.$settings.setTheme(e),yield this.saveUiSettingChange("theme",e),setTimeout(()=>{this.uiThemeIsSaving=!1},1e3)}catch(n){console.error(n),this.$toastr.error(n.message,this.$translate.instant("toast.title_error")),this.uiThemeIsSaving=!1}})}uiLightSave(e){return f(this,null,function*(){try{this.uiLightIsSaving=!0,this.$settings.setLightingMode(e,"user"),yield this.saveUiSettingChange("lightingMode",e),setTimeout(()=>{this.uiLightIsSaving=!1},1e3)}catch(n){console.error(n),this.$toastr.error(n.message,this.$translate.instant("toast.title_error")),this.uiLightIsSaving=!1}})}uiMenuSave(e){return f(this,null,function*(){try{this.uiMenuIsSaving=!0,this.$settings.setMenuMode(e),yield this.saveUiSettingChange("menuMode",e),window.location.reload()}catch(n){console.error(n),this.$toastr.error(n.message,this.$translate.instant("toast.title_error")),this.uiMenuIsSaving=!1}})}uiTempSave(e){return f(this,null,function*(){try{this.uiTempIsSaving=!0,this.$settings.setEnvItem("temperatureUnits",e),yield this.saveUiSettingChange("tempUnits",e),setTimeout(()=>{this.uiTempIsSaving=!1},1e3)}catch(n){console.error(n),this.$toastr.error(n.message,this.$translate.instant("toast.title_error")),this.uiTempIsSaving=!1}})}uiAlwaysShowBetasSave(e){return f(this,null,function*(){try{this.uiAlwaysShowBetasIsSaving=!0,this.$settings.setEnvItem("plugins.alwaysShowBetas",e),yield this.saveUiSettingChange("plugins.alwaysShowBetas",e),setTimeout(()=>{this.uiAlwaysShowBetasIsSaving=!1},1e3)}catch(n){console.error(n),this.$toastr.error(n.message,this.$translate.instant("toast.title_error")),this.uiAlwaysShowBetasIsSaving=!1}})}uiTerminalPersistenceSave(e){return f(this,null,function*(){if(!e&&this.$terminal.hasActiveSession()){let n=this.$modal.open(We,{size:"lg",backdrop:"static"});n.componentInstance.title=this.$translate.instant("settings.terminal.persistence_confirm_title"),n.componentInstance.message=this.$translate.instant("settings.terminal.persistence_confirm_message"),n.componentInstance.message2=this.$translate.instant("common.phrases.are_you_sure"),n.componentInstance.confirmButtonLabel=this.$translate.instant("form.button_continue"),n.componentInstance.confirmButtonClass="btn-primary",n.componentInstance.faIconClass="fas fa-exclamation-triangle text-warning";try{yield n.result}catch{this.uiTerminalPersistenceFormControl.patchValue(!0,{emitEvent:!1});return}}try{this.uiTerminalPersistenceIsSaving=!0,e||this.$terminal.destroyPersistentSession(),this.$settings.setEnvItem("terminal.persistence",e),yield this.saveUiSettingChange("terminal.persistence",e),setTimeout(()=>{this.uiTerminalPersistenceIsSaving=!1},1e3)}catch(n){console.error(n),this.$toastr.error(n.message,this.$translate.instant("toast.title_error")),this.uiTerminalPersistenceIsSaving=!1}})}uiTerminalHideWarningSave(e){return f(this,null,function*(){try{this.uiTerminalHideWarningIsSaving=!0,this.$settings.setEnvItem("terminal.hideWarning",e),yield this.saveUiSettingChange("terminal.hideWarning",e),setTimeout(()=>{this.uiTerminalHideWarningIsSaving=!1},1e3)}catch(n){console.error(n),this.$toastr.error(n.message,this.$translate.instant("toast.title_error")),this.uiTerminalHideWarningIsSaving=!1}})}uiTerminalBufferSizeSave(e){return f(this,null,function*(){if(e&&(typeof e!="number"||e<0||Number.isInteger(e)===!1)){this.uiTerminalBufferSizeIsInvalid=!0;return}try{this.uiTerminalBufferSizeIsSaving=!0,this.$settings.setEnvItem("terminal.bufferSize",e),yield this.saveUiSettingChange("terminal.bufferSize",e),this.uiTerminalBufferSizeIsInvalid=!1,setTimeout(()=>{this.uiTerminalBufferSizeIsSaving=!1},1e3)}catch(n){console.error(n),this.$toastr.error(n.message,this.$translate.instant("toast.title_error")),this.uiTerminalBufferSizeIsSaving=!1}})}hbDebugSave(e){return f(this,null,function*(){try{this.hbDebugIsSaving=!0,yield B(this.$api.put("/platform-tools/hb-service/homebridge-startup-settings",{HOMEBRIDGE_DEBUG:e,HOMEBRIDGE_KEEP_ORPHANS:this.hbKeepFormControl.value,HOMEBRIDGE_INSECURE:this.hbInsecureFormControl.value,ENV_DEBUG:this.hbEnvDebugFormControl.value,ENV_NODE_OPTIONS:this.hbEnvNodeFormControl.value})),setTimeout(()=>{this.hbDebugIsSaving=!1,this.$api.put("/platform-tools/hb-service/set-full-service-restart-flag",{}).subscribe({next:()=>this.showRestartToast(),error:n=>{console.error(n),this.showRestartToast()}})},1e3)}catch(n){console.error(n),this.$toastr.error(n.message,this.$translate.instant("toast.title_error")),this.hbDebugIsSaving=!1}})}hbInsecureSave(e){return f(this,null,function*(){try{this.hbInsecureIsSaving=!0,yield B(this.$api.put("/platform-tools/hb-service/homebridge-startup-settings",{HOMEBRIDGE_DEBUG:this.hbDebugFormControl.value,HOMEBRIDGE_KEEP_ORPHANS:this.hbKeepFormControl.value,HOMEBRIDGE_INSECURE:e,ENV_DEBUG:this.hbEnvDebugFormControl.value,ENV_NODE_OPTIONS:this.hbEnvNodeFormControl.value})),setTimeout(()=>{this.hbInsecureIsSaving=!1,this.$api.put("/platform-tools/hb-service/set-full-service-restart-flag",{}).subscribe({next:()=>this.showRestartToast(),error:n=>{console.error(n),this.showRestartToast()}})},1e3)}catch(n){console.error(n),this.$toastr.error(n.message,this.$translate.instant("toast.title_error")),this.hbInsecureIsSaving=!1}})}hbKeepSave(e){return f(this,null,function*(){try{this.hbKeepIsSaving=!0,yield B(this.$api.put("/platform-tools/hb-service/homebridge-startup-settings",{HOMEBRIDGE_DEBUG:this.hbDebugFormControl.value,HOMEBRIDGE_KEEP_ORPHANS:e,HOMEBRIDGE_INSECURE:this.hbInsecureFormControl.value,ENV_DEBUG:this.hbEnvDebugFormControl.value,ENV_NODE_OPTIONS:this.hbEnvNodeFormControl.value})),this.$settings.setKeepOrphans(e),setTimeout(()=>{this.hbKeepIsSaving=!1,this.$api.put("/platform-tools/hb-service/set-full-service-restart-flag",{}).subscribe({next:()=>this.showRestartToast(),error:n=>{console.error(n),this.showRestartToast()}})},1e3)}catch(n){console.error(n),this.$toastr.error(n.message,this.$translate.instant("toast.title_error")),this.hbKeepIsSaving=!1}})}hbEnvDebugSave(e){return f(this,null,function*(){try{this.hbEnvDebugIsSaving=!0,yield B(this.$api.put("/platform-tools/hb-service/homebridge-startup-settings",{HOMEBRIDGE_DEBUG:this.hbDebugFormControl.value,HOMEBRIDGE_KEEP_ORPHANS:this.hbKeepFormControl.value,HOMEBRIDGE_INSECURE:this.hbInsecureFormControl.value,ENV_DEBUG:e,ENV_NODE_OPTIONS:this.hbEnvNodeFormControl.value})),setTimeout(()=>{this.hbEnvDebugIsSaving=!1,this.$api.put("/platform-tools/hb-service/set-full-service-restart-flag",{}).subscribe({next:()=>this.showRestartToast(),error:n=>{console.error(n),this.showRestartToast()}})},1e3)}catch(n){console.error(n),this.$toastr.error(n.message,this.$translate.instant("toast.title_error")),this.hbEnvDebugIsSaving=!1}})}hbEnvNodeSave(e){return f(this,null,function*(){try{this.hbEnvNodeIsSaving=!0,yield B(this.$api.put("/platform-tools/hb-service/homebridge-startup-settings",{HOMEBRIDGE_DEBUG:this.hbDebugFormControl.value,HOMEBRIDGE_KEEP_ORPHANS:this.hbKeepFormControl.value,HOMEBRIDGE_INSECURE:this.hbInsecureFormControl.value,ENV_DEBUG:this.hbEnvDebugFormControl.value,ENV_NODE_OPTIONS:e})),setTimeout(()=>{this.hbEnvNodeIsSaving=!1,this.$api.put("/platform-tools/hb-service/set-full-service-restart-flag",{}).subscribe({next:()=>this.showRestartToast(),error:n=>{console.error(n),this.showRestartToast()}})},1e3)}catch(n){console.error(n),this.$toastr.error(n.message,this.$translate.instant("toast.title_error")),this.hbEnvNodeIsSaving=!1}})}hbLogSizeSave(e){return f(this,null,function*(){if(e&&(typeof e!="number"||e<-1||Number.isInteger(e)===!1)){this.hbLogSizeIsInvalid=!0;return}try{this.hbLogSizeIsSaving=!0,this.$settings.setEnvItem("log.maxSize",e),(!e||e===-1)&&(yield this.saveUiSettingChange("log.truncateSize",null),this.hbLogTruncateIsInvalid=!1),yield this.saveUiSettingChange("log.maxSize",e),this.hbLogSizeIsInvalid=!1,setTimeout(()=>{this.hbLogSizeIsSaving=!1,this.showRestartToast()},1e3)}catch(n){console.error(n),this.$toastr.error(n.message,this.$translate.instant("toast.title_error")),this.hbLogSizeIsSaving=!1}})}hbLogTruncateSave(e){return f(this,null,function*(){if(e&&(typeof e!="number"||e<0||Number.isInteger(e)===!1)){this.hbLogTruncateIsInvalid=!0;return}try{this.hbLogTruncateIsSaving=!0,this.$settings.setEnvItem("log.truncateSize",e),yield this.saveUiSettingChange("log.truncateSize",e),this.hbLogTruncateIsInvalid=!1,setTimeout(()=>{this.hbLogTruncateIsSaving=!1,this.showRestartToast()},1e3)}catch(n){console.error(n),this.$toastr.error(n.message,this.$translate.instant("toast.title_error")),this.hbLogTruncateIsSaving=!1}})}hbMDnsSave(e){return f(this,null,function*(){try{this.hbMDnsIsSaving=!0,yield B(this.$api.put("/server/mdns-advertiser",{advertiser:e})),setTimeout(()=>{this.hbMDnsIsSaving=!1,this.showRestartToast()},1e3)}catch(n){console.error(n),this.$toastr.error(n.message,this.$translate.instant("toast.title_error")),this.hbMDnsIsSaving=!1}})}hbPortSave(e){return f(this,null,function*(){if(e===this.uiPortFormControl.value){this.hbPortIsInvalid=!0;return}try{this.hbPortIsSaving=!0,yield B(this.$api.put("/server/port",{port:e})),this.hbPortIsInvalid=!1,setTimeout(()=>{this.hbPortIsSaving=!1,this.showRestartToast()},1e3)}catch(n){console.error(n),this.$toastr.error(n.message,this.$translate.instant("toast.title_error")),this.hbPortIsSaving=!1}})}hbStartPortSave(e){return f(this,null,function*(){try{this.hbStartPortIsSaving=!0,yield B(this.$api.put("/server/ports",{start:e,end:this.hbEndPortFormControl.value})),this.hbStartPortIsInvalid=!1,setTimeout(()=>{this.hbStartPortIsSaving=!1,this.showRestartToast()},1e3)}catch(n){console.error(n),this.$toastr.error(n.message,this.$translate.instant("toast.title_error")),this.hbStartPortIsSaving=!1}})}hbEndPortSave(e){return f(this,null,function*(){try{this.hbEndPortIsSaving=!0,yield B(this.$api.put("/server/ports",{start:this.hbStartPortFormControl.value,end:e})),this.hbEndPortIsInvalid=!1,setTimeout(()=>{this.hbEndPortIsSaving=!1,this.showRestartToast()},1e3)}catch(n){console.error(n),this.$toastr.error(n.message,this.$translate.instant("toast.title_error")),this.hbEndPortIsSaving=!1}})}uiPortSave(e){return f(this,null,function*(){if(!e||typeof e!="number"||e<1025||e>65533||Number.isInteger(e)===!1||e===this.hbPortFormControl.value){this.uiPortIsInvalid=!0;return}try{this.uiPortIsSaving=!0,this.$settings.setEnvItem("port",e),yield this.saveUiSettingChange("port",e),this.uiPortIsInvalid=!1,setTimeout(()=>{this.uiPortIsSaving=!1,this.showRestartToast()},1e3)}catch(n){console.error(n),this.$toastr.error(n.message,this.$translate.instant("toast.title_error")),this.uiPortIsSaving=!1}})}uiAuthSave(e){return f(this,null,function*(){try{this.uiAuthIsSaving=!0,this.$settings.setItem("formAuth",e),yield this.saveUiSettingChange("auth",e?"form":"none"),this.$notification.formAuthEnabled.next(e),setTimeout(()=>{this.uiAuthIsSaving=!1,this.showRestartToast()},1e3)}catch(n){console.error(n),this.$toastr.error(n.message,this.$translate.instant("toast.title_error")),this.uiAuthIsSaving=!1}})}uiSessionTimeoutSave(e){return f(this,null,function*(){if(e&&(typeof e!="number"||e<600||e>864e5||Number.isInteger(e)===!1)){this.uiSessionTimeoutIsInvalid=!0;return}try{this.uiSessionTimeoutIsSaving=!0,this.$settings.setItem("sessionTimeout",e),yield this.saveUiSettingChange("sessionTimeout",e),this.uiSessionTimeoutIsInvalid=!1,setTimeout(()=>{this.uiSessionTimeoutIsSaving=!1,this.showRestartToast()},1e3)}catch(n){console.error(n),this.$toastr.error(n.message,this.$translate.instant("toast.title_error")),this.uiSessionTimeoutIsSaving=!1}})}uiSslKeySave(e){return f(this,null,function*(){try{this.uiSslKeyIsSaving=!0,this.$settings.setEnvItem("ssl.key",e),yield this.saveUiSettingChange("ssl.key",e),setTimeout(()=>{this.uiSslKeyIsSaving=!1,this.showRestartToast()},1e3)}catch(n){console.error(n),this.$toastr.error(n.message,this.$translate.instant("toast.title_error")),this.uiSslKeyIsSaving=!1}})}uiSslCertSave(e){return f(this,null,function*(){try{this.uiSslCertIsSaving=!0,this.$settings.setEnvItem("ssl.cert",e),yield this.saveUiSettingChange("ssl.cert",e),setTimeout(()=>{this.uiSslCertIsSaving=!1,this.showRestartToast()},1e3)}catch(n){console.error(n),this.$toastr.error(n.message,this.$translate.instant("toast.title_error")),this.uiSslCertIsSaving=!1}})}uiSslPfxSave(e){return f(this,null,function*(){try{this.uiSslPfxIsSaving=!0,this.$settings.setEnvItem("ssl.pfx",e),yield this.saveUiSettingChange("ssl.pfx",e),setTimeout(()=>{this.uiSslPfxIsSaving=!1,this.showRestartToast()},1e3)}catch(n){console.error(n),this.$toastr.error(n.message,this.$translate.instant("toast.title_error")),this.uiSslPfxIsSaving=!1}})}uiSslPassphraseSave(e){return f(this,null,function*(){try{this.uiSslPassphraseIsSaving=!0,this.$settings.setEnvItem("ssl.passphrase",e),yield this.saveUiSettingChange("ssl.passphrase",e),setTimeout(()=>{this.uiSslPassphraseIsSaving=!1,this.showRestartToast()},1e3)}catch(n){console.error(n),this.$toastr.error(n.message,this.$translate.instant("toast.title_error")),this.uiSslPassphraseIsSaving=!1}})}uiSslTypeSave(e){return f(this,null,function*(){switch(e){case"keycert":this.uiSslPfxFormControl.patchValue("",{emitEvent:!1}),this.uiSslPassphraseFormControl.patchValue("",{emitEvent:!1}),this.$settings.setEnvItem("ssl.pfx",""),this.$settings.setEnvItem("ssl.passphrase","");break;case"pfx":this.uiSslKeyFormControl.patchValue("",{emitEvent:!1}),this.uiSslCertFormControl.patchValue("",{emitEvent:!1}),this.$settings.setEnvItem("ssl.key",""),this.$settings.setEnvItem("ssl.cert","");break;default:this.uiSslKeyFormControl.patchValue("",{emitEvent:!1}),this.uiSslCertFormControl.patchValue("",{emitEvent:!1}),this.uiSslPfxFormControl.patchValue("",{emitEvent:!1}),this.uiSslPassphraseFormControl.patchValue("",{emitEvent:!1}),this.$settings.setEnvItem("ssl.key",""),this.$settings.setEnvItem("ssl.cert",""),this.$settings.setEnvItem("ssl.pfx",""),this.$settings.setEnvItem("ssl.passphrase",""),yield this.saveUiSettingChange("ssl",""),this.showRestartToast()}})}uiHostSave(e){return f(this,null,function*(){try{this.uiHostIsSaving=!0,this.$settings.setItem("host",e),yield this.saveUiSettingChange("host",e),setTimeout(()=>{this.uiHostIsSaving=!1,this.showRestartToast()},1e3)}catch(n){console.error(n),this.$toastr.error(n.message,this.$translate.instant("toast.title_error")),this.uiHostIsSaving=!1}})}uiWebrootSave(e){return f(this,null,function*(){try{this.uiWebrootIsSaving=!0,e=e?`/${e}`.replace(/\/+/g,"/").replace(/\/$/,""):"",e==="/"&&(e=""),this.$settings.setItem("webroot",e),yield this.saveUiSettingChange("webroot",e),this.uiWebrootFormControl.patchValue(e,{emitEvent:!1}),setTimeout(()=>{this.uiWebrootIsSaving=!1,this.showRestartToast()},1e3)}catch(n){console.error(n),this.$toastr.error(n.message,this.$translate.instant("toast.title_error")),this.uiWebrootIsSaving=!1}})}uiProxyHostSave(e){return f(this,null,function*(){try{this.uiProxyHostIsSaving=!0,this.$settings.setItem("proxyHost",e),yield this.saveUiSettingChange("proxyHost",e),setTimeout(()=>{this.uiProxyHostIsSaving=!1,this.showRestartToast()},1e3)}catch(n){console.error(n),this.$toastr.error(n.message,this.$translate.instant("toast.title_error")),this.uiProxyHostIsSaving=!1}})}hbPackageSave(e){return f(this,null,function*(){try{this.hbPackageIsSaving=!0,this.$settings.setEnvItem("homebridgePackagePath",e),yield this.saveUiSettingChange("homebridgePackagePath",e),setTimeout(()=>{this.hbPackageIsSaving=!1,this.showRestartToast()},1e3)}catch(n){console.error(n),this.$toastr.error(n.message,this.$translate.instant("toast.title_error")),this.hbPackageIsSaving=!1}})}uiMetricsSave(e){return f(this,null,function*(){try{this.uiMetricsIsSaving=!0,this.$settings.setEnvItem("disableServerMetricsMonitoring",!e),yield this.saveUiSettingChange("disableServerMetricsMonitoring",!e),setTimeout(()=>{this.uiMetricsIsSaving=!1,this.$api.put("/platform-tools/hb-service/set-full-service-restart-flag",{}).subscribe({next:()=>this.showRestartToast(),error:n=>{console.error(n),this.showRestartToast()}})},1e3)}catch(n){console.error(n),this.$toastr.error(n.message,this.$translate.instant("toast.title_error")),this.uiMetricsIsSaving=!1}})}uiAccDebugSave(e){return f(this,null,function*(){try{this.uiAccDebugIsSaving=!0,this.$settings.setEnvItem("accessoryControl.debug",e),yield this.saveUiSettingChange("accessoryControl.debug",e),setTimeout(()=>{this.uiAccDebugIsSaving=!1,this.showRestartToast()},1e3)}catch(n){console.error(n),this.$toastr.error(n.message,this.$translate.instant("toast.title_error")),this.uiAccDebugIsSaving=!1}})}uiTempFileSave(e){return f(this,null,function*(){try{this.uiTempFileIsSaving=!0,this.$settings.setEnvItem("temp",e),yield this.saveUiSettingChange("temp",e),setTimeout(()=>{this.uiTempFileIsSaving=!1,this.$api.put("/platform-tools/hb-service/set-full-service-restart-flag",{}).subscribe({next:()=>this.showRestartToast(),error:n=>{console.error(n),this.showRestartToast()}})},1e3)}catch(n){console.error(n),this.$toastr.error(n.message,this.$translate.instant("toast.title_error")),this.uiTempFileIsSaving=!1}})}hbLinuxShutdownSave(e){return f(this,null,function*(){try{this.hbLinuxShutdownIsSaving=!0,this.$settings.setEnvItem("linux.shutdown",e),yield this.saveUiSettingChange("linux.shutdown",e),setTimeout(()=>{this.hbLinuxShutdownIsSaving=!1,this.$api.put("/platform-tools/hb-service/set-full-service-restart-flag",{}).subscribe({next:()=>this.showRestartToast(),error:n=>{console.error(n),this.showRestartToast()}})},1e3)}catch(n){console.error(n),this.$toastr.error(n.message,this.$translate.instant("toast.title_error")),this.hbLinuxShutdownIsSaving=!1}})}hbLinuxRestartSave(e){return f(this,null,function*(){try{this.hbLinuxRestartIsSaving=!0,this.$settings.setEnvItem("linux.restart",e),yield this.saveUiSettingChange("linux.restart",e),setTimeout(()=>{this.hbLinuxRestartIsSaving=!1,this.$api.put("/platform-tools/hb-service/set-full-service-restart-flag",{}).subscribe({next:()=>this.showRestartToast(),error:n=>{console.error(n),this.showRestartToast()}})},1e3)}catch(n){console.error(n),this.$toastr.error(n.message,this.$translate.instant("toast.title_error")),this.hbLinuxRestartIsSaving=!1}})}buildBridgeNetworkAdapterList(e){if(!e.length){this.adaptersSelected=[];return}this.adaptersSelected=e.map(n=>{let d=this.adaptersAvailable.find(y=>y.iface===n);return d?{iface:d.iface,selected:!0,missing:!1,ip4:d.ip4,ip6:d.ip6}:{iface:n,selected:!0,missing:!0}})}initMatterSettings(){return f(this,null,function*(){try{let n=(yield B(this.$api.get("/config-editor"))).matter||{};this.matterEnabledFormControl.patchValue(Object.keys(n).length>0),this.matterEnabledFormControl.valueChanges.pipe(w(750)).subscribe(d=>this.matterEnabledSave(d)),this.matterDeviceNameFormControl.patchValue(n.deviceName||globalThis.matter.defaultConfig.deviceName),this.matterDeviceNameFormControl.valueChanges.pipe(w(1500)).subscribe(d=>this.matterDeviceNameSave(d)),this.matterPortFormControl.patchValue(n.port||globalThis.matter.defaultConfig.port),this.matterPortFormControl.valueChanges.pipe(w(1500)).subscribe(d=>this.matterPortSave(d)),this.matterVendorIdFormControl.patchValue(n.vendorId||globalThis.matter.defaultConfig.vendorId),this.matterVendorIdFormControl.valueChanges.pipe(w(1500)).subscribe(d=>this.matterVendorIdSave(d)),this.matterProductIdFormControl.patchValue(n.productId||globalThis.matter.defaultConfig.productId),this.matterProductIdFormControl.valueChanges.pipe(w(1500)).subscribe(d=>this.matterProductIdSave(d))}catch(e){console.error("Failed to load Matter configuration:",e),this.$toastr.error("Failed to load Matter configuration",this.$translate.instant("toast.title_error"))}})}saveMatterConfigChange(e){return f(this,null,function*(){try{let n=yield B(this.$api.get("/config-editor"));n.matter||(n=Ce({bridge:n.bridge,matter:{}},n)),Object.assign(n.matter,e),yield B(this.$api.post("/config-editor",n)),this.showRestartToast()}catch(n){throw console.error("Failed to save Matter configuration:",n),this.$toastr.error("Failed to save Matter configuration",this.$translate.instant("toast.title_error")),n}})}matterEnabledSave(e){return f(this,null,function*(){try{if(this.matterEnabledIsSaving=!0,e)this.matterDeviceNameFormControl.value||this.matterDeviceNameFormControl.patchValue(globalThis.matter.defaultConfig.deviceName,{emitEvent:!1}),this.matterPortFormControl.value||this.matterPortFormControl.patchValue(globalThis.matter.defaultConfig.port,{emitEvent:!1}),this.matterVendorIdFormControl.value||this.matterVendorIdFormControl.patchValue(globalThis.matter.defaultConfig.vendorId,{emitEvent:!1}),this.matterProductIdFormControl.value||this.matterProductIdFormControl.patchValue(globalThis.matter.defaultConfig.productId,{emitEvent:!1}),yield this.saveMatterConfigChange({deviceName:this.matterDeviceNameFormControl.value,port:this.matterPortFormControl.value,vendorId:this.matterVendorIdFormControl.value,productId:this.matterProductIdFormControl.value});else{let n=yield B(this.$api.get("/config-editor"));delete n.matter,yield B(this.$api.post("/config-editor",n)),this.showRestartToast()}setTimeout(()=>{this.matterEnabledIsSaving=!1},1e3)}catch{this.matterEnabledIsSaving=!1}})}matterPortSave(e){return f(this,null,function*(){if(!e||typeof e!="number"||e<1025||e>65533||Number.isInteger(e)===!1){this.matterPortIsInvalid=!0;return}try{this.matterPortIsSaving=!0,yield this.saveMatterConfigChange({port:e}),this.matterPortIsInvalid=!1,setTimeout(()=>{this.matterPortIsSaving=!1},1e3)}catch{this.matterPortIsSaving=!1}})}matterVendorIdSave(e){return f(this,null,function*(){if(!e||typeof e!="number"||e<1||e>65535||Number.isInteger(e)===!1){this.matterVendorIdIsInvalid=!0;return}try{this.matterVendorIdIsSaving=!0,yield this.saveMatterConfigChange({vendorId:e}),this.matterVendorIdIsInvalid=!1,setTimeout(()=>{this.matterVendorIdIsSaving=!1},1e3)}catch{this.matterVendorIdIsSaving=!1}})}matterProductIdSave(e){return f(this,null,function*(){if(!e||typeof e!="number"||e<1||e>65535||Number.isInteger(e)===!1){this.matterProductIdIsInvalid=!0;return}try{this.matterProductIdIsSaving=!0,yield this.saveMatterConfigChange({productId:e}),this.matterProductIdIsInvalid=!1,setTimeout(()=>{this.matterProductIdIsSaving=!1},1e3)}catch{this.matterProductIdIsSaving=!1}})}matterDeviceNameSave(e){return f(this,null,function*(){try{this.matterDeviceNameIsSaving=!0,yield this.saveMatterConfigChange({deviceName:e||"Homebridge Matter Bridge"}),setTimeout(()=>{this.matterDeviceNameIsSaving=!1},1e3)}catch{this.matterDeviceNameIsSaving=!1}})}showRestartToast(){if(!this.restartToastIsShown){this.restartToastIsShown=!0;let e=this.$toastr.info(this.$translate.instant("settings.changes.saved"),this.$translate.instant("menu.hbrestart.title"),{timeOut:0,tapToDismiss:!0,disableTimeOut:!0,positionClass:"toast-bottom-right",enableHtml:!0});e&&e.onTap&&e.onTap.subscribe(()=>{this.$router.navigate(["/restart"])})}}static \u0275fac=function(n){return new(n||i)};static \u0275cmp=V({type:i,selectors:[["ng-component"]],decls:8,vars:4,consts:[[1,"row","mb-3"],[1,"col-6"],[1,"primary-text","m-0"],[1,"col-6","text-end"],[1,"my-4"],["role","button","tabindex","0",1,"mt-3","hover-pointer",3,"click"],[1,"primary-text"],[1,"fa",3,"ngClass"],["id","fieldsGeneral",1,"list-group","list-group-box","mt-2","mx-0"],["id","fieldsDisplay",1,"list-group","list-group-box","mt-2","mx-0"],["id","fieldsStartup",1,"list-group","list-group-box","mb-4","mx-0"],["id","fieldsNetwork",1,"list-group","list-group-box","mt-2","mx-0"],["id","fieldsTerminal",1,"list-group","list-group-box","mt-2","mx-0"],["id","fieldsSecurity",1,"list-group","list-group-box","mt-2","mx-0"],[1,"small","grey-text","mb-2","mx-0"],["id","fieldsCache",1,"list-group","list-group-box","mb-4","mx-0"],["id","fieldsReset",1,"list-group","list-group-box","mt-2","mx-0"],[1,"pb-3"],[1,"list-group-item","d-block","d-md-flex","justify-content-between","align-items-center"],[1,"my-3","my-md-0","ps-0","ps-md-5","w-auto","d-flex","align-items-center"],["type","text",1,"form-control","custom-input","resp-input","order-1","order-md-2",3,"formControl","ngClass"],[1,"fas","fa-floppy-disk","primary-text","fa-xl","me-0","me-md-2","ms-2","ms-md-0","order-2","order-md-1"],[1,"list-group-item","d-flex","justify-content-between","align-items-center"],[1,"pe-2"],[1,"btn","btn-primary","waves-effect","m-0","ms-3",2,"min-width","50px",3,"click"],[1,"fas","fa-arrow-right"],["routerLink","/users",1,"btn","btn-primary","waves-effect","m-0","ms-3",2,"min-width","50px"],[1,"custom-select","resp-select","order-1","order-md-2",3,"formControl"],["value","auto"],["value","bg"],["value","ca"],["value","zh-CN"],["value","zh-TW"],["value","cs"],["value","nl"],["value","en"],["value","fi"],["value","fr"],["value","de"],["value","he"],["value","hu"],["value","id"],["value","it"],["value","ja"],["value","ko"],["value","mk"],["value","no"],["value","pl"],["value","pt-BR"],["value","pt"],["value","ru"],["value","sl"],["value","es"],["value","sv"],["value","th"],["value","tr"],["value","uk"],["value","orange"],["value","red"],["value","pink"],["value","purple"],["value","deep-purple"],["value","indigo"],["value","blue"],["value","blue-grey"],["value","cyan"],["value","green"],["value","teal"],["value","grey"],["value","brown"],["value","light"],["value","dark"],["value","default"],["value","freeze"],["value","c"],["value","f"],[1,"d-flex","align-items-center"],[1,"order-1","order-md-2"],["type","checkbox","id","uiAlwaysShowBetas",1,"rendux-input",3,"formControl"],["for","uiAlwaysShowBetas",1,"rendux-label","ms-3",2,"min-width","50px"],[1,"grey-text","pe-2"],["type","checkbox","id","homebridgeDebugMode",1,"rendux-input",3,"formControl"],["for","homebridgeDebugMode",1,"rendux-label","ms-3",2,"min-width","50px"],["type","checkbox","id","homebridgeInsecureMode",1,"rendux-input",3,"formControl"],["for","homebridgeInsecureMode",1,"rendux-label","ms-3",2,"min-width","50px"],["type","checkbox","id","homebridgeKeepOrphans",1,"rendux-input",3,"formControl"],["for","homebridgeKeepOrphans",1,"rendux-label","ms-3",2,"min-width","50px"],["type","checkbox","id","homebridgeMetrics",1,"rendux-input",3,"formControl"],["for","homebridgeMetrics",1,"rendux-label","ms-3",2,"min-width","50px"],["type","text","placeholder","/usr/local/lib/node_modules/homebridge",1,"form-control","custom-input","resp-input","order-1","order-md-2",3,"formControl"],[1,"font-monospace"],[1,"grey-text","pe-2",3,"innerHTML"],["type","text","placeholder","HAP-NodeJS:Advertiser,HAP-NodeJS:Service",1,"form-control","custom-input","resp-input","order-1","order-md-2",3,"formControl"],["type","text","placeholder","--max-old-space-size=512 --max-http-header-size=8192",1,"form-control","custom-input","resp-input","order-1","order-md-2",3,"formControl"],["type","text","placeholder","shutdown",1,"form-control","custom-input","resp-input","order-1","order-md-2",3,"formControl"],["type","text","placeholder","reboot",1,"form-control","custom-input","resp-input","order-1","order-md-2",3,"formControl"],["type","text","placeholder","/sys/class/thermal/thermal_zone0/temp",1,"form-control","custom-input","resp-input","order-1","order-md-2",3,"formControl"],["routerLink","/platform-tools/docker/startup-script",1,"btn","btn-primary","waves-effect","m-0","ms-3",2,"min-width","50px"],[1,"small","grey-text","pe-2"],[1,"badge","badge-primary","me-1",3,"ngClass"],[1,"btn","btn-primary","waves-effect","m-0","ms-3",2,"min-width","50px",3,"click","disabled"],["value","avahi"],["value","ciao"],["value","bonjour-hap"],["value","resolved"],["type","number","min","1025","max","65533",1,"form-control","custom-input","resp-input","order-1","order-md-2",3,"formControl","ngClass"],["type","number","min","1025","max","65533","placeholder","8581",1,"form-control","custom-input","resp-input","order-1","order-md-2",3,"formControl","ngClass"],[1,"grey-text","pe-2",3,"innerHtml"],["type","text","pattern","^[^{}/:\\\\s]+(?::\\d+)?$","placeholder","0.0.0.0",1,"form-control","custom-input","resp-input","order-1","order-md-2",3,"formControl"],[1,"badge","badge-primary","ms-1"],["type","text","placeholder","/",1,"form-control","custom-input","resp-input","order-1","order-md-2",3,"formControl"],["type","text","pattern","^[^{}/:\\\\s]+(?::\\d+)?$","placeholder","example.com:8443",1,"form-control","custom-input","resp-input","order-1","order-md-2",3,"formControl"],[1,"fas","fa-exclamation-triangle"],[1,"fw-normal"],[1,"fas","fa-exclamation-triangle","red-text"],[3,"innerHtml"],["id","fieldsMatter",1,"list-group","list-group-box","mt-2","mx-0"],["type","checkbox","id","matterEnabled",1,"rendux-input",3,"formControl"],["for","matterEnabled",1,"rendux-label","ms-3",2,"min-width","50px"],["type","text",1,"form-control","custom-input","resp-input","order-1","order-md-2",3,"formControl"],["type","number","min","1","max","65535",1,"form-control","custom-input","resp-input","order-1","order-md-2",3,"formControl","ngClass"],["type","number","min","-1","placeholder","1000000",1,"form-control","custom-input","resp-input","order-1","order-md-2",3,"formControl","ngClass"],["type","number","min","0","placeholder","200000",1,"form-control","custom-input","resp-input","order-1","order-md-2",3,"formControl","ngClass"],["type","checkbox","id","terminalPersistence",1,"rendux-input",3,"formControl"],["for","terminalPersistence",1,"rendux-label","ms-3",2,"min-width","50px"],["type","checkbox","id","terminalHideWarning",1,"rendux-input",3,"formControl"],["for","terminalHideWarning",1,"rendux-label","ms-3",2,"min-width","50px"],[1,"d-flex","flex-column"],[1,"small","grey-text"],["type","number","min","10000","max","100000","step","10000",1,"form-control","custom-input","resp-input","order-1","order-md-2",3,"formControl","ngClass"],["type","checkbox","id","uiAuthForm",1,"rendux-input",3,"formControl"],["for","uiAuthForm",1,"rendux-label","ms-3",2,"min-width","50px"],["value","off"],["value","keycert"],["value","pfx"],["type","number","min","600","max","86400000","placeholder","28800",1,"form-control","custom-input","resp-input","order-1","order-md-2",3,"formControl","ngClass"],["type","text","placeholder","/Users/.../certs/server.key",1,"form-control","custom-input","resp-input","order-1","order-md-2",3,"formControl"],["type","text","placeholder","/Users/.../certs/server.crt",1,"form-control","custom-input","resp-input","order-1","order-md-2",3,"formControl"],["type","text","placeholder","/Users/.../certs/server.pfx",1,"form-control","custom-input","resp-input","order-1","order-md-2",3,"formControl"],["placeholder","mypassphrase",1,"form-control","custom-input","resp-input","order-1","order-md-2",3,"focus","blur","type","formControl"],["type","checkbox","id","accessoryDebug",1,"rendux-input",3,"formControl"],["for","accessoryDebug",1,"rendux-label","ms-3",2,"min-width","50px"]],template:function(n,d){n&1&&(a(0,"div",0)(1,"div",1)(2,"h3",2),l(3),r(4,"translate"),o()(),p(5,"div",3),o(),_(6,Pi,1,0,"app-spinner")(7,oa,60,83)),n&2&&(t(3),u(s(4,2,"menu.settings.title")),t(3),h(d.loading?6:7))},dependencies:[q,ze,oe,Me,De,de,Ae,ne,Re,ae,Oe,Le,Ne,re,pe,Ge,ie,A],encapsulation:2,data:{animation:[Fe("fadeInOut",[be(":enter",[le({opacity:0}),ge("750ms",le({opacity:1}))]),be(":leave",[ge("750ms",le({opacity:0}))])])]}})}return i})();export{kr as SettingsComponent};