homebridge-config-ui-x 5.0.0-beta.52 → 5.0.0-beta.54

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 (125) hide show
  1. package/CHANGELOG.md +28 -4
  2. package/dist/core/config/config.service.js +4 -1
  3. package/dist/core/config/config.service.js.map +1 -1
  4. package/dist/modules/plugins/plugins.service.js.map +1 -1
  5. package/package.json +15 -15
  6. package/public/chunk-2DTLVEZT.js +1 -0
  7. package/public/chunk-2FUKJXA2.js +1 -0
  8. package/public/{chunk-O2IBEQMY.js → chunk-3JTVYTOV.js} +1 -1
  9. package/public/chunk-3R46QOCE.js +1 -0
  10. package/public/chunk-3TOJYAHV.js +1 -0
  11. package/public/chunk-4IP5DDXE.js +1 -0
  12. package/public/{chunk-XBIY2EKP.js → chunk-5BZGZWPU.js} +1 -1
  13. package/public/chunk-5CDZD4QO.js +1 -0
  14. package/public/{chunk-V5C6TH72.js → chunk-5NJQH2A3.js} +1 -1
  15. package/public/{chunk-T75TOYED.js → chunk-6GWRWBF2.js} +1 -1
  16. package/public/{chunk-MFP6D5U2.js → chunk-6MIOQ7Y5.js} +14 -14
  17. package/public/chunk-6MX25OCF.js +1 -0
  18. package/public/chunk-7EVWOJST.js +1 -0
  19. package/public/{chunk-4B7IZE2P.js → chunk-7HGOM4YX.js} +1 -1
  20. package/public/{chunk-XHTRCMG4.js → chunk-AKQE7OWM.js} +1 -1
  21. package/public/{chunk-OY5MWFSR.js → chunk-BEBVDUK5.js} +1 -1
  22. package/public/chunk-CEHKV4IM.js +1 -0
  23. package/public/{chunk-DZNGJOAD.js → chunk-D5WEMCFU.js} +2 -2
  24. package/public/{chunk-CYO7GF7S.js → chunk-D6PHTILW.js} +1 -1
  25. package/public/{chunk-KQ4WIJTU.js → chunk-DFISUNQT.js} +1 -1
  26. package/public/{chunk-JN4WEHM3.js → chunk-F2WFV5GW.js} +1 -1
  27. package/public/{chunk-PZNRYHHJ.js → chunk-GDNT2HPK.js} +1 -1
  28. package/public/{chunk-6JK2KWCJ.js → chunk-GHPAEKNM.js} +1 -1
  29. package/public/{chunk-2TXKGWMR.js → chunk-GZMSZZVX.js} +1 -1
  30. package/public/{chunk-PSSA4PHP.js → chunk-HMDNUXTY.js} +1 -1
  31. package/public/{chunk-2UDC7EMX.js → chunk-HQDY2QYB.js} +1 -1
  32. package/public/{chunk-SMBDBPLM.js → chunk-IEBQX6HS.js} +1 -1
  33. package/public/{chunk-ZNQOGJMW.js → chunk-IRTFX6CU.js} +1 -1
  34. package/public/{chunk-HG7ORW3R.js → chunk-JE3LI7IZ.js} +1 -1
  35. package/public/chunk-JGMDXNMZ.js +1 -0
  36. package/public/chunk-KAI32HWM.js +1 -0
  37. package/public/chunk-KD5YLOUW.js +2 -0
  38. package/public/{chunk-UFCYTM46.js → chunk-KIPITWHI.js} +1 -1
  39. package/public/{chunk-CJSSN6RK.js → chunk-KJCIKCUI.js} +1 -1
  40. package/public/{chunk-NPCZCOZC.js → chunk-KLDACGOZ.js} +1 -1
  41. package/public/chunk-KPIML2SI.js +1 -0
  42. package/public/{chunk-TK4BPPSX.js → chunk-L4PJSJOC.js} +1 -1
  43. package/public/{chunk-GZSXNYQC.js → chunk-LRGJFKOV.js} +1 -1
  44. package/public/{chunk-GKSJJJEG.js → chunk-LSEE5MJ5.js} +1 -1
  45. package/public/chunk-LTRMT3PM.js +1 -0
  46. package/public/{chunk-X3ZB4QGO.js → chunk-M5LTG544.js} +1 -1
  47. package/public/{chunk-SLUFR3ON.js → chunk-M5YMSV5J.js} +1 -1
  48. package/public/{chunk-Y5URZ5MZ.js → chunk-MJUBX7V2.js} +1 -1
  49. package/public/chunk-MKXFRTHP.js +1 -0
  50. package/public/{chunk-WCXU6QPE.js → chunk-MS2EQS6S.js} +1 -1
  51. package/public/{chunk-FHOSQQJ4.js → chunk-NBOGF5S7.js} +1 -1
  52. package/public/chunk-NCJAIFQO.js +1 -0
  53. package/public/{chunk-RIXGXWCM.js → chunk-NG3SOGCM.js} +1 -1
  54. package/public/{chunk-YCKXYAPE.js → chunk-NSDMDB7X.js} +1 -1
  55. package/public/chunk-O7E5GSDU.js +1 -0
  56. package/public/chunk-OAUVJEII.js +1 -0
  57. package/public/chunk-OIAU3DDH.js +1 -0
  58. package/public/{chunk-LRNCAR4N.js → chunk-OKJ2T4EM.js} +1 -1
  59. package/public/chunk-OZD3PKS7.js +1 -0
  60. package/public/{chunk-2WNK6SOS.js → chunk-P5BH5BCJ.js} +1 -1
  61. package/public/chunk-PTKIJR4Y.js +1 -0
  62. package/public/{chunk-V65HN5SX.js → chunk-PVRKV6LM.js} +1 -1
  63. package/public/{chunk-7V7FVNQR.js → chunk-Q7NLVQF3.js} +1 -1
  64. package/public/{chunk-FNBFKTZI.js → chunk-QGC43YCF.js} +1 -1
  65. package/public/{chunk-YPMZ3DYC.js → chunk-QGDGNYSY.js} +1 -1
  66. package/public/chunk-QNQ6DXDY.js +1 -0
  67. package/public/{chunk-UMSMYWYC.js → chunk-R2MEYLU6.js} +1 -1
  68. package/public/chunk-R5HVCC65.js +1 -0
  69. package/public/{chunk-BEXZ3EKZ.js → chunk-RWT5SL6D.js} +1 -1
  70. package/public/chunk-SQV4HVMS.js +1 -0
  71. package/public/{chunk-3EGZ5RTQ.js → chunk-TQSZOE62.js} +1 -1
  72. package/public/{chunk-IFJS5HBB.js → chunk-TWFE7WAV.js} +1 -1
  73. package/public/chunk-UIW5IZLL.js +1 -0
  74. package/public/{chunk-3XIIWU5P.js → chunk-UQFNUGQM.js} +1 -1
  75. package/public/{chunk-WPESHLCE.js → chunk-UXXGHFQU.js} +1 -1
  76. package/public/{chunk-IC7Y4XQH.js → chunk-V233CDAY.js} +1 -1
  77. package/public/chunk-V7KKBEKT.js +7 -0
  78. package/public/chunk-V7N6TZL2.js +1 -0
  79. package/public/{chunk-R5JL6NY3.js → chunk-W6CTMNAG.js} +1 -1
  80. package/public/{chunk-6WEQLPNK.js → chunk-W7CPCAPT.js} +1 -1
  81. package/public/chunk-W7IALUEC.js +1 -0
  82. package/public/{chunk-TG6N743W.js → chunk-WNBSA3C7.js} +1 -1
  83. package/public/{chunk-MAIN5YCW.js → chunk-X2NTV4U7.js} +1 -1
  84. package/public/{chunk-OYB4GWS2.js → chunk-X7HV5PS7.js} +1 -1
  85. package/public/{chunk-JKRWJSXD.js → chunk-XCZREHWX.js} +1 -1
  86. package/public/{chunk-6EWOCV2F.js → chunk-YIYI7U2L.js} +1 -1
  87. package/public/chunk-YJ3F3IFM.js +1 -0
  88. package/public/chunk-ZSRQVLRE.js +1 -0
  89. package/public/index.html +2 -2
  90. package/public/main-WAIZFTFV.js +1 -0
  91. package/public/polyfills-IVGADV35.js +2 -0
  92. package/public/styles-GAKWEL7A.css +1 -0
  93. package/public/chunk-275KUFU5.js +0 -1
  94. package/public/chunk-3SK2YI5N.js +0 -1
  95. package/public/chunk-44C4SVOH.js +0 -1
  96. package/public/chunk-4ZZTRP44.js +0 -1
  97. package/public/chunk-54WT3CWA.js +0 -1
  98. package/public/chunk-55LWQ27W.js +0 -1
  99. package/public/chunk-56QTN3FM.js +0 -1
  100. package/public/chunk-5YCO5TXF.js +0 -1
  101. package/public/chunk-6CVPCQKP.js +0 -1
  102. package/public/chunk-BAWBN252.js +0 -1
  103. package/public/chunk-BCX23V6Z.js +0 -1
  104. package/public/chunk-DNCUP6B7.js +0 -2
  105. package/public/chunk-E7HFXMQC.js +0 -1
  106. package/public/chunk-F3FEWT6G.js +0 -1
  107. package/public/chunk-G4RNPDKM.js +0 -1
  108. package/public/chunk-HSKPWR6T.js +0 -1
  109. package/public/chunk-JXE2EDWO.js +0 -1
  110. package/public/chunk-NU7ESJEV.js +0 -1
  111. package/public/chunk-NVNBNEFN.js +0 -7
  112. package/public/chunk-OPHOXI7M.js +0 -1
  113. package/public/chunk-OSNLCRQT.js +0 -1
  114. package/public/chunk-QBDCMHMS.js +0 -1
  115. package/public/chunk-R23RQFWE.js +0 -1
  116. package/public/chunk-RJFVCCT6.js +0 -1
  117. package/public/chunk-UXKMPYAN.js +0 -1
  118. package/public/chunk-W3U5YRAT.js +0 -1
  119. package/public/chunk-YPSV6VWW.js +0 -1
  120. package/public/chunk-Z5KABSBS.js +0 -1
  121. package/public/chunk-ZS7TMHAN.js +0 -1
  122. package/public/chunk-ZSUARIC5.js +0 -1
  123. package/public/main-4MY7DYH6.js +0 -1
  124. package/public/polyfills-JNAS3VFQ.js +0 -2
  125. package/public/styles-CJ5TSDXW.css +0 -1
@@ -1 +1 @@
1
- import{$ as M,B as F,C as P,Ca as S,D as q,Gc as Z,L as J,O as L,Y as R,a as I,ga as h,ha as X,ja as v,la as o,mb as N,r as p,t as f,ub as z,wb as W,x as V,xa as w}from"./chunk-NVNBNEFN.js";var c=class{},Q=(()=>{class n extends c{getTranslation(e){return p({})}static \u0275fac=(()=>{let e;return function(s){return(e||(e=w(n)))(s||n)}})();static \u0275prov=h({token:n,factory:n.\u0275fac})}return n})(),b=class{},Y=(()=>{class n{handle(e){return e.key}static \u0275fac=function(t){return new(t||n)};static \u0275prov=h({token:n,factory:n.\u0275fac})}return n})();function j(n,r){if(n===r)return!0;if(n===null||r===null)return!1;if(n!==n&&r!==r)return!0;let e=typeof n,t=typeof r,s,i,a;if(e==t&&e=="object")if(Array.isArray(n)){if(!Array.isArray(r))return!1;if((s=n.length)==r.length){for(i=0;i<s;i++)if(!j(n[i],r[i]))return!1;return!0}}else{if(Array.isArray(r))return!1;a=Object.create(null);for(i in n){if(!j(n[i],r[i]))return!1;a[i]=!0}for(i in r)if(!(i in a)&&typeof r[i]<"u")return!1;return!0}return!1}function u(n){return typeof n<"u"&&n!==null}function D(n){return E(n)&&!H(n)&&n!==null}function E(n){return typeof n=="object"}function H(n){return Array.isArray(n)}function $(n){return typeof n=="string"}function ne(n){return typeof n=="function"}function K(n,r){let e=Object.assign({},n);return E(n)?(E(n)&&E(r)&&Object.keys(r).forEach(t=>{D(r[t])?t in n?e[t]=K(n[t],r[t]):Object.assign(e,{[t]:r[t]}):Object.assign(e,{[t]:r[t]})}),e):K({},r)}function x(n,r){let e=r.split(".");r="";do r+=e.shift(),u(n)&&u(n[r])&&(D(n[r])||H(n[r])||!e.length)?(n=n[r],r=""):e.length?r+=".":n=void 0;while(e.length);return n}function se(n,r,e){let t=r.split("."),s=n;for(let i=0;i<t.length;i++){let a=t[i];i===t.length-1?s[a]=e:((!s[a]||!D(s[a]))&&(s[a]={}),s=s[a])}}var d=class{},k=(()=>{class n extends d{templateMatcher=/{{\s?([^{}\s]*)\s?}}/g;interpolate(e,t){if($(e))return this.interpolateString(e,t);if(ne(e))return this.interpolateFunction(e,t)}interpolateFunction(e,t){return e(t)}interpolateString(e,t){return t?e.replace(this.templateMatcher,(s,i)=>{let a=x(t,i);return u(a)?a:s}):e}static \u0275fac=(()=>{let e;return function(s){return(e||(e=w(n)))(s||n)}})();static \u0275prov=h({token:n,factory:n.\u0275fac})}return n})(),g=class{},ee=(()=>{class n extends g{compile(e,t){return e}compileTranslations(e,t){return e}static \u0275fac=(()=>{let e;return function(s){return(e||(e=w(n)))(s||n)}})();static \u0275prov=h({token:n,factory:n.\u0275fac})}return n})(),m=class{defaultLang;currentLang=this.defaultLang;translations={};langs=[];onTranslationChange=new S;onLangChange=new S;onDefaultLangChange=new S},O=new v("ISOLATE_TRANSLATE_SERVICE"),U=new v("USE_DEFAULT_LANG"),_=new v("DEFAULT_LANGUAGE"),B=new v("USE_EXTEND"),C=n=>f(n)?n:p(n),G=(()=>{class n{store;currentLoader;compiler;parser;missingTranslationHandler;useDefaultLang;extend;loadingTranslations;pending=!1;_translationRequests={};lastUseLanguage=null;get onTranslationChange(){return this.store.onTranslationChange}get onLangChange(){return this.store.onLangChange}get onDefaultLangChange(){return this.store.onDefaultLangChange}get defaultLang(){return this.store.defaultLang}set defaultLang(e){this.store.defaultLang=e}get currentLang(){return this.store.currentLang}set currentLang(e){this.store.currentLang=e}get langs(){return this.store.langs}set langs(e){this.store.langs=e}get translations(){return this.store.translations}set translations(e){this.store.translations=e}constructor(e,t,s,i,a,A=!0,l=!1,T=!1,y){this.store=e,this.currentLoader=t,this.compiler=s,this.parser=i,this.missingTranslationHandler=a,this.useDefaultLang=A,this.extend=T,l&&(this.store=new m),y&&this.setDefaultLang(y)}setDefaultLang(e){if(e===this.defaultLang)return;let t=this.retrieveTranslations(e);typeof t<"u"?(this.defaultLang==null&&(this.defaultLang=e),t.pipe(L(1)).subscribe(()=>{this.changeDefaultLang(e)})):this.changeDefaultLang(e)}getDefaultLang(){return this.defaultLang}use(e){if(this.lastUseLanguage=e,e===this.currentLang)return p(this.translations[e]);this.currentLang||(this.currentLang=e);let t=this.retrieveTranslations(e);return f(t)?(t.pipe(L(1)).subscribe(()=>{this.changeLang(e)}),t):(this.changeLang(e),p(this.translations[e]))}changeLang(e){e===this.lastUseLanguage&&(this.currentLang=e,this.onLangChange.emit({lang:e,translations:this.translations[e]}),this.defaultLang==null&&this.changeDefaultLang(e))}retrieveTranslations(e){if(typeof this.translations[e]>"u"||this.extend)return this._translationRequests[e]=this._translationRequests[e]||this.loadAndCompileTranslations(e),this._translationRequests[e]}getTranslation(e){return this.loadAndCompileTranslations(e)}loadAndCompileTranslations(e){this.pending=!0;let t=this.currentLoader.getTranslation(e).pipe(R(1),L(1));return this.loadingTranslations=t.pipe(V(s=>this.compiler.compileTranslations(s,e)),R(1),L(1)),this.loadingTranslations.subscribe({next:s=>{this.translations[e]=this.extend&&this.translations[e]?I(I({},s),this.translations[e]):s,this.updateLangs(),this.pending=!1},error:s=>{this.pending=!1}}),t}setTranslation(e,t,s=!1){let i=this.compiler.compileTranslations(t,e);(s||this.extend)&&this.translations[e]?this.translations[e]=K(this.translations[e],i):this.translations[e]=i,this.updateLangs(),this.onTranslationChange.emit({lang:e,translations:this.translations[e]})}getLangs(){return this.langs}addLangs(e){let t=e.filter(s=>!this.langs.includes(s));t.length>0&&(this.langs=[...this.langs,...t])}updateLangs(){this.addLangs(Object.keys(this.translations))}getParsedResultForKey(e,t,s){let i;if(e&&(i=this.runInterpolation(x(e,t),s)),i===void 0&&this.defaultLang!=null&&this.defaultLang!==this.currentLang&&this.useDefaultLang&&(i=this.runInterpolation(x(this.translations[this.defaultLang],t),s)),i===void 0){let a={key:t,translateService:this};typeof s<"u"&&(a.interpolateParams=s),i=this.missingTranslationHandler.handle(a)}return i!==void 0?i:t}runInterpolation(e,t){if(H(e))return e.map(s=>this.runInterpolation(s,t));if(D(e)){let s={};for(let i in e){let a=this.runInterpolation(e[i],t);a!==void 0&&(s[i]=a)}return s}else return this.parser.interpolate(e,t)}getParsedResult(e,t,s){if(t instanceof Array){let i={},a=!1;for(let l of t)i[l]=this.getParsedResultForKey(e,l,s),a=a||f(i[l]);if(!a)return i;let A=t.map(l=>C(i[l]));return q(A).pipe(V(l=>{let T={};return l.forEach((y,te)=>{T[t[te]]=y}),T}))}return this.getParsedResultForKey(e,t,s)}get(e,t){if(!u(e)||!e.length)throw new Error('Parameter "key" is required and cannot be empty');return this.pending?this.loadingTranslations.pipe(J(s=>C(this.getParsedResult(s,e,t)))):C(this.getParsedResult(this.translations[this.currentLang],e,t))}getStreamOnTranslationChange(e,t){if(!u(e)||!e.length)throw new Error('Parameter "key" is required and cannot be empty');return F(P(()=>this.get(e,t)),this.onTranslationChange.pipe(M(s=>{let i=this.getParsedResult(s.translations,e,t);return C(i)})))}stream(e,t){if(!u(e)||!e.length)throw new Error('Parameter "key" required');return F(P(()=>this.get(e,t)),this.onLangChange.pipe(M(s=>{let i=this.getParsedResult(s.translations,e,t);return C(i)})))}instant(e,t){if(!u(e)||e.length===0)throw new Error('Parameter "key" is required and cannot be empty');let s=this.getParsedResult(this.translations[this.currentLang],e,t);return f(s)?Array.isArray(e)?e.reduce((i,a)=>(i[a]=a,i),{}):e:s}set(e,t,s=this.currentLang){se(this.translations[s],e,$(t)?this.compiler.compile(t,s):this.compiler.compileTranslations(t,s)),this.updateLangs(),this.onTranslationChange.emit({lang:s,translations:this.translations[s]})}changeDefaultLang(e){this.defaultLang=e,this.onDefaultLangChange.emit({lang:e,translations:this.translations[e]})}reloadLang(e){return this.resetLang(e),this.loadAndCompileTranslations(e)}resetLang(e){delete this._translationRequests[e],delete this.translations[e]}getBrowserLang(){if(typeof window>"u"||!window.navigator)return;let e=this.getBrowserCultureLang();return e?e.split(/[-_]/)[0]:void 0}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}static \u0275fac=function(t){return new(t||n)(o(m),o(c),o(g),o(d),o(b),o(U),o(O),o(B),o(_))};static \u0275prov=h({token:n,factory:n.\u0275fac,providedIn:"root"})}return n})();var ve=(()=>{class n{translate;_ref;value="";lastKey=null;lastParams=[];onTranslationChange;onLangChange;onDefaultLangChange;constructor(e,t){this.translate=e,this._ref=t}updateValue(e,t,s){let i=a=>{this.value=a!==void 0?a:e,this.lastKey=e,this._ref.markForCheck()};if(s){let a=this.translate.getParsedResult(s,e,t);f(a)?a.subscribe(i):i(a)}this.translate.get(e,t).subscribe(i)}transform(e,...t){if(!e||!e.length)return e;if(j(e,this.lastKey)&&j(t,this.lastParams))return this.value;let s;if(u(t[0])&&t.length)if($(t[0])&&t[0].length){let i=t[0].replace(/(')?([a-zA-Z0-9_]+)(')?(\s)?:/g,'"$2":').replace(/:(\s)?(')(.*?)(')/g,':"$3"');try{s=JSON.parse(i)}catch(a){throw new SyntaxError(`Wrong parameter in TranslatePipe. Expected a valid Object, received: ${t[0]}`)}}else D(t[0])&&(s=t[0]);return this.lastKey=e,this.lastParams=t,this.updateValue(e,s),this._dispose(),this.onTranslationChange||(this.onTranslationChange=this.translate.onTranslationChange.subscribe(i=>{this.lastKey&&i.lang===this.translate.currentLang&&(this.lastKey=null,this.updateValue(e,s,i.translations))})),this.onLangChange||(this.onLangChange=this.translate.onLangChange.subscribe(i=>{this.lastKey&&(this.lastKey=null,this.updateValue(e,s,i.translations))})),this.onDefaultLangChange||(this.onDefaultLangChange=this.translate.onDefaultLangChange.subscribe(()=>{this.lastKey&&(this.lastKey=null,this.updateValue(e,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.onDefaultLangChange<"u"&&(this.onDefaultLangChange.unsubscribe(),this.onDefaultLangChange=void 0)}ngOnDestroy(){this._dispose()}static \u0275fac=function(t){return new(t||n)(N(G,16),N(Z,16))};static \u0275pipe=W({name:"translate",type:n,pure:!1});static \u0275prov=h({token:n,factory:n.\u0275fac})}return n})();var Ce=(()=>{class n{static forRoot(e={}){return{ngModule:n,providers:[e.loader||{provide:c,useClass:Q},e.compiler||{provide:g,useClass:ee},e.parser||{provide:d,useClass:k},e.missingTranslationHandler||{provide:b,useClass:Y},m,{provide:O,useValue:e.isolate},{provide:U,useValue:e.useDefaultLang},{provide:B,useValue:e.extend},{provide:_,useValue:e.defaultLanguage},G]}}static forChild(e={}){return{ngModule:n,providers:[e.loader||{provide:c,useClass:Q},e.compiler||{provide:g,useClass:ee},e.parser||{provide:d,useClass:k},e.missingTranslationHandler||{provide:b,useClass:Y},{provide:O,useValue:e.isolate},{provide:U,useValue:e.useDefaultLang},{provide:B,useValue:e.extend},{provide:_,useValue:e.defaultLanguage},G]}}static \u0275fac=function(t){return new(t||n)};static \u0275mod=z({type:n});static \u0275inj=X({})}return n})();export{G as a,ve as b,Ce as c};
1
+ import{$ as M,B as F,C as P,Ca as S,D as q,Gc as Z,L as J,O as L,Y as R,a as I,ga as h,ha as X,ja as v,la as o,mb as N,r as p,t as f,ub as z,wb as W,x as V,xa as w}from"./chunk-V7KKBEKT.js";var c=class{},Q=(()=>{class n extends c{getTranslation(e){return p({})}static \u0275fac=(()=>{let e;return function(s){return(e||(e=w(n)))(s||n)}})();static \u0275prov=h({token:n,factory:n.\u0275fac})}return n})(),b=class{},Y=(()=>{class n{handle(e){return e.key}static \u0275fac=function(t){return new(t||n)};static \u0275prov=h({token:n,factory:n.\u0275fac})}return n})();function j(n,r){if(n===r)return!0;if(n===null||r===null)return!1;if(n!==n&&r!==r)return!0;let e=typeof n,t=typeof r,s,i,a;if(e==t&&e=="object")if(Array.isArray(n)){if(!Array.isArray(r))return!1;if((s=n.length)==r.length){for(i=0;i<s;i++)if(!j(n[i],r[i]))return!1;return!0}}else{if(Array.isArray(r))return!1;a=Object.create(null);for(i in n){if(!j(n[i],r[i]))return!1;a[i]=!0}for(i in r)if(!(i in a)&&typeof r[i]<"u")return!1;return!0}return!1}function u(n){return typeof n<"u"&&n!==null}function D(n){return E(n)&&!H(n)&&n!==null}function E(n){return typeof n=="object"}function H(n){return Array.isArray(n)}function $(n){return typeof n=="string"}function ne(n){return typeof n=="function"}function K(n,r){let e=Object.assign({},n);return E(n)?(E(n)&&E(r)&&Object.keys(r).forEach(t=>{D(r[t])?t in n?e[t]=K(n[t],r[t]):Object.assign(e,{[t]:r[t]}):Object.assign(e,{[t]:r[t]})}),e):K({},r)}function x(n,r){let e=r.split(".");r="";do r+=e.shift(),u(n)&&u(n[r])&&(D(n[r])||H(n[r])||!e.length)?(n=n[r],r=""):e.length?r+=".":n=void 0;while(e.length);return n}function se(n,r,e){let t=r.split("."),s=n;for(let i=0;i<t.length;i++){let a=t[i];i===t.length-1?s[a]=e:((!s[a]||!D(s[a]))&&(s[a]={}),s=s[a])}}var d=class{},k=(()=>{class n extends d{templateMatcher=/{{\s?([^{}\s]*)\s?}}/g;interpolate(e,t){if($(e))return this.interpolateString(e,t);if(ne(e))return this.interpolateFunction(e,t)}interpolateFunction(e,t){return e(t)}interpolateString(e,t){return t?e.replace(this.templateMatcher,(s,i)=>{let a=x(t,i);return u(a)?a:s}):e}static \u0275fac=(()=>{let e;return function(s){return(e||(e=w(n)))(s||n)}})();static \u0275prov=h({token:n,factory:n.\u0275fac})}return n})(),g=class{},ee=(()=>{class n extends g{compile(e,t){return e}compileTranslations(e,t){return e}static \u0275fac=(()=>{let e;return function(s){return(e||(e=w(n)))(s||n)}})();static \u0275prov=h({token:n,factory:n.\u0275fac})}return n})(),m=class{defaultLang;currentLang=this.defaultLang;translations={};langs=[];onTranslationChange=new S;onLangChange=new S;onDefaultLangChange=new S},O=new v("ISOLATE_TRANSLATE_SERVICE"),U=new v("USE_DEFAULT_LANG"),_=new v("DEFAULT_LANGUAGE"),B=new v("USE_EXTEND"),C=n=>f(n)?n:p(n),G=(()=>{class n{store;currentLoader;compiler;parser;missingTranslationHandler;useDefaultLang;extend;loadingTranslations;pending=!1;_translationRequests={};lastUseLanguage=null;get onTranslationChange(){return this.store.onTranslationChange}get onLangChange(){return this.store.onLangChange}get onDefaultLangChange(){return this.store.onDefaultLangChange}get defaultLang(){return this.store.defaultLang}set defaultLang(e){this.store.defaultLang=e}get currentLang(){return this.store.currentLang}set currentLang(e){this.store.currentLang=e}get langs(){return this.store.langs}set langs(e){this.store.langs=e}get translations(){return this.store.translations}set translations(e){this.store.translations=e}constructor(e,t,s,i,a,A=!0,l=!1,T=!1,y){this.store=e,this.currentLoader=t,this.compiler=s,this.parser=i,this.missingTranslationHandler=a,this.useDefaultLang=A,this.extend=T,l&&(this.store=new m),y&&this.setDefaultLang(y)}setDefaultLang(e){if(e===this.defaultLang)return;let t=this.retrieveTranslations(e);typeof t<"u"?(this.defaultLang==null&&(this.defaultLang=e),t.pipe(L(1)).subscribe(()=>{this.changeDefaultLang(e)})):this.changeDefaultLang(e)}getDefaultLang(){return this.defaultLang}use(e){if(this.lastUseLanguage=e,e===this.currentLang)return p(this.translations[e]);this.currentLang||(this.currentLang=e);let t=this.retrieveTranslations(e);return f(t)?(t.pipe(L(1)).subscribe(()=>{this.changeLang(e)}),t):(this.changeLang(e),p(this.translations[e]))}changeLang(e){e===this.lastUseLanguage&&(this.currentLang=e,this.onLangChange.emit({lang:e,translations:this.translations[e]}),this.defaultLang==null&&this.changeDefaultLang(e))}retrieveTranslations(e){if(typeof this.translations[e]>"u"||this.extend)return this._translationRequests[e]=this._translationRequests[e]||this.loadAndCompileTranslations(e),this._translationRequests[e]}getTranslation(e){return this.loadAndCompileTranslations(e)}loadAndCompileTranslations(e){this.pending=!0;let t=this.currentLoader.getTranslation(e).pipe(R(1),L(1));return this.loadingTranslations=t.pipe(V(s=>this.compiler.compileTranslations(s,e)),R(1),L(1)),this.loadingTranslations.subscribe({next:s=>{this.translations[e]=this.extend&&this.translations[e]?I(I({},s),this.translations[e]):s,this.updateLangs(),this.pending=!1},error:s=>{this.pending=!1}}),t}setTranslation(e,t,s=!1){let i=this.compiler.compileTranslations(t,e);(s||this.extend)&&this.translations[e]?this.translations[e]=K(this.translations[e],i):this.translations[e]=i,this.updateLangs(),this.onTranslationChange.emit({lang:e,translations:this.translations[e]})}getLangs(){return this.langs}addLangs(e){let t=e.filter(s=>!this.langs.includes(s));t.length>0&&(this.langs=[...this.langs,...t])}updateLangs(){this.addLangs(Object.keys(this.translations))}getParsedResultForKey(e,t,s){let i;if(e&&(i=this.runInterpolation(x(e,t),s)),i===void 0&&this.defaultLang!=null&&this.defaultLang!==this.currentLang&&this.useDefaultLang&&(i=this.runInterpolation(x(this.translations[this.defaultLang],t),s)),i===void 0){let a={key:t,translateService:this};typeof s<"u"&&(a.interpolateParams=s),i=this.missingTranslationHandler.handle(a)}return i!==void 0?i:t}runInterpolation(e,t){if(H(e))return e.map(s=>this.runInterpolation(s,t));if(D(e)){let s={};for(let i in e){let a=this.runInterpolation(e[i],t);a!==void 0&&(s[i]=a)}return s}else return this.parser.interpolate(e,t)}getParsedResult(e,t,s){if(t instanceof Array){let i={},a=!1;for(let l of t)i[l]=this.getParsedResultForKey(e,l,s),a=a||f(i[l]);if(!a)return i;let A=t.map(l=>C(i[l]));return q(A).pipe(V(l=>{let T={};return l.forEach((y,te)=>{T[t[te]]=y}),T}))}return this.getParsedResultForKey(e,t,s)}get(e,t){if(!u(e)||!e.length)throw new Error('Parameter "key" is required and cannot be empty');return this.pending?this.loadingTranslations.pipe(J(s=>C(this.getParsedResult(s,e,t)))):C(this.getParsedResult(this.translations[this.currentLang],e,t))}getStreamOnTranslationChange(e,t){if(!u(e)||!e.length)throw new Error('Parameter "key" is required and cannot be empty');return F(P(()=>this.get(e,t)),this.onTranslationChange.pipe(M(s=>{let i=this.getParsedResult(s.translations,e,t);return C(i)})))}stream(e,t){if(!u(e)||!e.length)throw new Error('Parameter "key" required');return F(P(()=>this.get(e,t)),this.onLangChange.pipe(M(s=>{let i=this.getParsedResult(s.translations,e,t);return C(i)})))}instant(e,t){if(!u(e)||e.length===0)throw new Error('Parameter "key" is required and cannot be empty');let s=this.getParsedResult(this.translations[this.currentLang],e,t);return f(s)?Array.isArray(e)?e.reduce((i,a)=>(i[a]=a,i),{}):e:s}set(e,t,s=this.currentLang){se(this.translations[s],e,$(t)?this.compiler.compile(t,s):this.compiler.compileTranslations(t,s)),this.updateLangs(),this.onTranslationChange.emit({lang:s,translations:this.translations[s]})}changeDefaultLang(e){this.defaultLang=e,this.onDefaultLangChange.emit({lang:e,translations:this.translations[e]})}reloadLang(e){return this.resetLang(e),this.loadAndCompileTranslations(e)}resetLang(e){delete this._translationRequests[e],delete this.translations[e]}getBrowserLang(){if(typeof window>"u"||!window.navigator)return;let e=this.getBrowserCultureLang();return e?e.split(/[-_]/)[0]:void 0}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}static \u0275fac=function(t){return new(t||n)(o(m),o(c),o(g),o(d),o(b),o(U),o(O),o(B),o(_))};static \u0275prov=h({token:n,factory:n.\u0275fac,providedIn:"root"})}return n})();var ve=(()=>{class n{translate;_ref;value="";lastKey=null;lastParams=[];onTranslationChange;onLangChange;onDefaultLangChange;constructor(e,t){this.translate=e,this._ref=t}updateValue(e,t,s){let i=a=>{this.value=a!==void 0?a:e,this.lastKey=e,this._ref.markForCheck()};if(s){let a=this.translate.getParsedResult(s,e,t);f(a)?a.subscribe(i):i(a)}this.translate.get(e,t).subscribe(i)}transform(e,...t){if(!e||!e.length)return e;if(j(e,this.lastKey)&&j(t,this.lastParams))return this.value;let s;if(u(t[0])&&t.length)if($(t[0])&&t[0].length){let i=t[0].replace(/(')?([a-zA-Z0-9_]+)(')?(\s)?:/g,'"$2":').replace(/:(\s)?(')(.*?)(')/g,':"$3"');try{s=JSON.parse(i)}catch(a){throw new SyntaxError(`Wrong parameter in TranslatePipe. Expected a valid Object, received: ${t[0]}`)}}else D(t[0])&&(s=t[0]);return this.lastKey=e,this.lastParams=t,this.updateValue(e,s),this._dispose(),this.onTranslationChange||(this.onTranslationChange=this.translate.onTranslationChange.subscribe(i=>{this.lastKey&&i.lang===this.translate.currentLang&&(this.lastKey=null,this.updateValue(e,s,i.translations))})),this.onLangChange||(this.onLangChange=this.translate.onLangChange.subscribe(i=>{this.lastKey&&(this.lastKey=null,this.updateValue(e,s,i.translations))})),this.onDefaultLangChange||(this.onDefaultLangChange=this.translate.onDefaultLangChange.subscribe(()=>{this.lastKey&&(this.lastKey=null,this.updateValue(e,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.onDefaultLangChange<"u"&&(this.onDefaultLangChange.unsubscribe(),this.onDefaultLangChange=void 0)}ngOnDestroy(){this._dispose()}static \u0275fac=function(t){return new(t||n)(N(G,16),N(Z,16))};static \u0275pipe=W({name:"translate",type:n,pure:!1});static \u0275prov=h({token:n,factory:n.\u0275fac})}return n})();var Ce=(()=>{class n{static forRoot(e={}){return{ngModule:n,providers:[e.loader||{provide:c,useClass:Q},e.compiler||{provide:g,useClass:ee},e.parser||{provide:d,useClass:k},e.missingTranslationHandler||{provide:b,useClass:Y},m,{provide:O,useValue:e.isolate},{provide:U,useValue:e.useDefaultLang},{provide:B,useValue:e.extend},{provide:_,useValue:e.defaultLanguage},G]}}static forChild(e={}){return{ngModule:n,providers:[e.loader||{provide:c,useClass:Q},e.compiler||{provide:g,useClass:ee},e.parser||{provide:d,useClass:k},e.missingTranslationHandler||{provide:b,useClass:Y},{provide:O,useValue:e.isolate},{provide:U,useValue:e.useDefaultLang},{provide:B,useValue:e.extend},{provide:_,useValue:e.defaultLanguage},G]}}static \u0275fac=function(t){return new(t||n)};static \u0275mod=z({type:n});static \u0275inj=X({})}return n})();export{G as a,ve as b,Ce as c};
@@ -0,0 +1 @@
1
+ import{a}from"./chunk-7HGOM4YX.js";import"./chunk-XCZREHWX.js";import"./chunk-5CDZD4QO.js";import"./chunk-5NJQH2A3.js";import"./chunk-MJUBX7V2.js";import"./chunk-NCJAIFQO.js";import"./chunk-KD5YLOUW.js";import"./chunk-P5BH5BCJ.js";import"./chunk-V7KKBEKT.js";export{a as LoginComponent};
@@ -1 +1 @@
1
- import{m as g}from"./chunk-WCXU6QPE.js";import{b as k}from"./chunk-2WNK6SOS.js";import{Ac as r,Bc as c,Jb as p,Kb as B,Ob as f,Pb as I,Ub as i,Vb as o,Wb as l,bc as s,cb as v,cc as M,gb as t,ma as C,mc as m,nc as y,oc as u,tb as _,zb as x}from"./chunk-NVNBNEFN.js";function T(n,L){if(n&1&&l(0,"i",13),n&2){let d=M();f("fas fa-fw ",d.faIconClass," mb-3")}}var H=(()=>{class n{$activeModal=C(g);title;message;confirmButtonLabel;confirmButtonClass;faIconClass;constructor(){}static \u0275fac=function(a){return new(a||n)};static \u0275cmp=_({type:n,selectors:[["ng-component"]],inputs:{title:"title",message:"message",confirmButtonLabel:"confirmButtonLabel",confirmButtonClass:"confirmButtonClass",faIconClass:"faIconClass"},decls:19,vars:16,consts:[[1,"modal-content"],[1,"modal-header"],[1,"modal-title"],["type","button","data-bs-dismiss","modal",1,"btn-close",3,"click"],[1,"modal-body","text-center"],[2,"font-size","75px",3,"class"],[1,"mb-0","text-center",3,"innerHTML"],[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",3,"click"],[2,"font-size","75px"]],template:function(a,e){a&1&&(i(0,"div",0)(1,"div",1)(2,"h5",2),m(3),o(),i(4,"button",3),r(5,"translate"),s("click",function(){return e.$activeModal.dismiss("Dismiss")}),o()(),i(6,"div",4),x(7,T,1,3,"i",5),l(8,"p",6),o(),i(9,"div",7)(10,"div",8)(11,"button",9),r(12,"translate"),s("click",function(){return e.$activeModal.dismiss("Dismiss")}),m(13),r(14,"translate"),o()(),l(15,"div",10),i(16,"div",11)(17,"button",12),s("click",function(){return e.$activeModal.close()}),m(18),o()()()()),a&2&&(t(3),y(e.title),t(),p("aria-label",c(5,10,"form.button_close")),t(3),I(e.faIconClass?7:-1),t(),B("innerHTML",e.message,v),t(3),p("aria-label",c(12,12,"form.button_close")),t(2),u(" ",c(14,14,"form.button_close")," "),t(4),f("btn ",e.confirmButtonClass||"btn-primary",""),t(),u(" ",e.confirmButtonLabel," "))},dependencies:[k],encapsulation:2})}return n})();export{H as a};
1
+ import{m as g}from"./chunk-MS2EQS6S.js";import{b as k}from"./chunk-P5BH5BCJ.js";import{Ac as r,Bc as c,Jb as p,Kb as B,Ob as f,Pb as I,Ub as i,Vb as o,Wb as l,bc as s,cb as v,cc as M,gb as t,ma as C,mc as m,nc as y,oc as u,tb as _,zb as x}from"./chunk-V7KKBEKT.js";function T(n,L){if(n&1&&l(0,"i",13),n&2){let d=M();f("fas fa-fw ",d.faIconClass," mb-3")}}var H=(()=>{class n{$activeModal=C(g);title;message;confirmButtonLabel;confirmButtonClass;faIconClass;constructor(){}static \u0275fac=function(a){return new(a||n)};static \u0275cmp=_({type:n,selectors:[["ng-component"]],inputs:{title:"title",message:"message",confirmButtonLabel:"confirmButtonLabel",confirmButtonClass:"confirmButtonClass",faIconClass:"faIconClass"},decls:19,vars:16,consts:[[1,"modal-content"],[1,"modal-header"],[1,"modal-title"],["type","button","data-bs-dismiss","modal",1,"btn-close",3,"click"],[1,"modal-body","text-center"],[2,"font-size","75px",3,"class"],[1,"mb-0","text-center",3,"innerHTML"],[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",3,"click"],[2,"font-size","75px"]],template:function(a,e){a&1&&(i(0,"div",0)(1,"div",1)(2,"h5",2),m(3),o(),i(4,"button",3),r(5,"translate"),s("click",function(){return e.$activeModal.dismiss("Dismiss")}),o()(),i(6,"div",4),x(7,T,1,3,"i",5),l(8,"p",6),o(),i(9,"div",7)(10,"div",8)(11,"button",9),r(12,"translate"),s("click",function(){return e.$activeModal.dismiss("Dismiss")}),m(13),r(14,"translate"),o()(),l(15,"div",10),i(16,"div",11)(17,"button",12),s("click",function(){return e.$activeModal.close()}),m(18),o()()()()),a&2&&(t(3),y(e.title),t(),p("aria-label",c(5,10,"form.button_close")),t(3),I(e.faIconClass?7:-1),t(),B("innerHTML",e.message,v),t(3),p("aria-label",c(12,12,"form.button_close")),t(2),u(" ",c(14,14,"form.button_close")," "),t(4),f("btn ",e.confirmButtonClass||"btn-primary",""),t(),u(" ",e.confirmButtonLabel," "))},dependencies:[k],encapsulation:2})}return n})();export{H as a};
@@ -1 +1 @@
1
- import{Ub as t,Vb as r,Wb as i,tb as a,wa as o}from"./chunk-NVNBNEFN.js";var m=(()=>{class e{constructor(){}static \u0275fac=function(n){return new(n||e)};static \u0275cmp=a({type:e,selectors:[["app-spinner"]],decls:7,vars:0,consts:[[1,"app-spinner-container"],[1,"animate_loader"],["xmlns","http://www.w3.org/2000/svg",0,"xmlns","xlink","http://www.w3.org/1999/xlink","width","200px","height","200px","viewBox","0 0 100 100","preserveAspectRatio","xMidYMid",2,"margin","auto","display","block"],["cx","50","cy","50","r","32","stroke-width","8","stroke-dasharray","50.26548245743669 50.26548245743669","fill","none","stroke-linecap","round","transform","rotate(327.259 50 50)",1,"spinner_outer"],["attributeName","transform","type","rotate","dur","2s","repeatCount","indefinite","keyTimes","0;1","values","0 50 50;360 50 50"],["cx","50","cy","50","r","23","stroke-width","8","stroke","#f8b26a","stroke-dasharray","36.12831551628262 36.12831551628262","stroke-dashoffset","36.12831551628262","fill","none","stroke-linecap","round","transform","rotate(-327.259 50 50)",1,"spinner_inner"],["attributeName","transform","type","rotate","dur","2s","repeatCount","indefinite","keyTimes","0;1","values","0 50 50;-360 50 50"]],template:function(n,p){n&1&&(t(0,"div",0)(1,"div",1),o(),t(2,"svg",2)(3,"circle",3),i(4,"animateTransform",4),r(),t(5,"circle",5),i(6,"animateTransform",6),r()()()())},styles:[".app-spinner-container[_ngcontent-%COMP%]{position:absolute;top:0;bottom:0;left:0;right:0;display:flex;align-items:center;justify-content:center;z-index:1000}.animate_loader[_ngcontent-%COMP%] svg[_ngcontent-%COMP%]{position:absolute;top:0;right:0;bottom:0;left:0;margin:auto;width:200px;overflow:visible}"]})}return e})();export{m as a};
1
+ import{Ub as t,Vb as r,Wb as i,tb as a,wa as o}from"./chunk-V7KKBEKT.js";var m=(()=>{class e{constructor(){}static \u0275fac=function(n){return new(n||e)};static \u0275cmp=a({type:e,selectors:[["app-spinner"]],decls:7,vars:0,consts:[[1,"app-spinner-container"],[1,"animate_loader"],["xmlns","http://www.w3.org/2000/svg",0,"xmlns","xlink","http://www.w3.org/1999/xlink","width","200px","height","200px","viewBox","0 0 100 100","preserveAspectRatio","xMidYMid",2,"margin","auto","display","block"],["cx","50","cy","50","r","32","stroke-width","8","stroke-dasharray","50.26548245743669 50.26548245743669","fill","none","stroke-linecap","round","transform","rotate(327.259 50 50)",1,"spinner_outer"],["attributeName","transform","type","rotate","dur","2s","repeatCount","indefinite","keyTimes","0;1","values","0 50 50;360 50 50"],["cx","50","cy","50","r","23","stroke-width","8","stroke","#f8b26a","stroke-dasharray","36.12831551628262 36.12831551628262","stroke-dashoffset","36.12831551628262","fill","none","stroke-linecap","round","transform","rotate(-327.259 50 50)",1,"spinner_inner"],["attributeName","transform","type","rotate","dur","2s","repeatCount","indefinite","keyTimes","0;1","values","0 50 50;-360 50 50"]],template:function(n,p){n&1&&(t(0,"div",0)(1,"div",1),o(),t(2,"svg",2)(3,"circle",3),i(4,"animateTransform",4),r(),t(5,"circle",5),i(6,"animateTransform",6),r()()()())},styles:[".app-spinner-container[_ngcontent-%COMP%]{position:absolute;top:0;bottom:0;left:0;right:0;display:flex;align-items:center;justify-content:center;z-index:1000}.animate_loader[_ngcontent-%COMP%] svg[_ngcontent-%COMP%]{position:absolute;top:0;right:0;bottom:0;left:0;margin:auto;width:200px;overflow:visible}"]})}return e})();export{m as a};
@@ -1 +1 @@
1
- import{e as b}from"./chunk-NVNBNEFN.js";var L=b((p,v)=>{(function(d,r){typeof define=="function"&&define.amd?define([],r):typeof p<"u"?r():(r(),d.FileSaver={})})(p,function(){"use strict";function d(e,t){return typeof t>"u"?t={autoBom:!1}:typeof t!="object"&&(console.warn("Deprecated: Expected third argument to be a object"),t={autoBom:!t}),t.autoBom&&/^\s*(?:text\/\S*|application\/xml|\S*\/\S*\+xml)\s*;.*charset\s*=\s*utf-8/i.test(e.type)?new Blob(["\uFEFF",e],{type:e.type}):e}function r(e,t,i){var n=new XMLHttpRequest;n.open("GET",e),n.responseType="blob",n.onload=function(){l(n.response,t,i)},n.onerror=function(){console.error("could not download file")},n.send()}function w(e){var t=new XMLHttpRequest;t.open("HEAD",e,!1);try{t.send()}catch{}return 200<=t.status&&299>=t.status}function s(e){try{e.dispatchEvent(new MouseEvent("click"))}catch{var t=document.createEvent("MouseEvents");t.initMouseEvent("click",!0,!0,window,0,0,0,80,20,!1,!1,!1,!1,0,null),e.dispatchEvent(t)}}var a=typeof window=="object"&&window.window===window?window:typeof self=="object"&&self.self===self?self:typeof global=="object"&&global.global===global?global:void 0,m=a.navigator&&/Macintosh/.test(navigator.userAgent)&&/AppleWebKit/.test(navigator.userAgent)&&!/Safari/.test(navigator.userAgent),l=a.saveAs||(typeof window!="object"||window!==a?function(){}:"download"in HTMLAnchorElement.prototype&&!m?function(e,t,i){var n=a.URL||a.webkitURL,o=document.createElement("a");t=t||e.name||"download",o.download=t,o.rel="noopener",typeof e=="string"?(o.href=e,o.origin===location.origin?s(o):w(o.href)?r(e,t,i):s(o,o.target="_blank")):(o.href=n.createObjectURL(e),setTimeout(function(){n.revokeObjectURL(o.href)},4e4),setTimeout(function(){s(o)},0))}:"msSaveOrOpenBlob"in navigator?function(e,t,i){if(t=t||e.name||"download",typeof e!="string")navigator.msSaveOrOpenBlob(d(e,i),t);else if(w(e))r(e,t,i);else{var n=document.createElement("a");n.href=e,n.target="_blank",setTimeout(function(){s(n)})}}:function(e,t,i,n){if(n=n||open("","_blank"),n&&(n.document.title=n.document.body.innerText="downloading..."),typeof e=="string")return r(e,t,i);var o=e.type==="application/octet-stream",E=/constructor/i.test(a.HTMLElement)||a.safari,y=/CriOS\/[\d]+/.test(navigator.userAgent);if((y||o&&E||m)&&typeof FileReader<"u"){var u=new FileReader;u.onloadend=function(){var c=u.result;c=y?c:c.replace(/^data:[^;]*;/,"data:attachment/file;"),n?n.location.href=c:location=c,n=null},u.readAsDataURL(e)}else{var h=a.URL||a.webkitURL,f=h.createObjectURL(e);n?n.location=f:location.href=f,n=null,setTimeout(function(){h.revokeObjectURL(f)},4e4)}});a.saveAs=l.saveAs=l,typeof v<"u"&&(v.exports=l)})});export{L as a};
1
+ import{e as b}from"./chunk-V7KKBEKT.js";var L=b((p,v)=>{(function(d,r){typeof define=="function"&&define.amd?define([],r):typeof p<"u"?r():(r(),d.FileSaver={})})(p,function(){"use strict";function d(e,t){return typeof t>"u"?t={autoBom:!1}:typeof t!="object"&&(console.warn("Deprecated: Expected third argument to be a object"),t={autoBom:!t}),t.autoBom&&/^\s*(?:text\/\S*|application\/xml|\S*\/\S*\+xml)\s*;.*charset\s*=\s*utf-8/i.test(e.type)?new Blob(["\uFEFF",e],{type:e.type}):e}function r(e,t,i){var n=new XMLHttpRequest;n.open("GET",e),n.responseType="blob",n.onload=function(){l(n.response,t,i)},n.onerror=function(){console.error("could not download file")},n.send()}function w(e){var t=new XMLHttpRequest;t.open("HEAD",e,!1);try{t.send()}catch{}return 200<=t.status&&299>=t.status}function s(e){try{e.dispatchEvent(new MouseEvent("click"))}catch{var t=document.createEvent("MouseEvents");t.initMouseEvent("click",!0,!0,window,0,0,0,80,20,!1,!1,!1,!1,0,null),e.dispatchEvent(t)}}var a=typeof window=="object"&&window.window===window?window:typeof self=="object"&&self.self===self?self:typeof global=="object"&&global.global===global?global:void 0,m=a.navigator&&/Macintosh/.test(navigator.userAgent)&&/AppleWebKit/.test(navigator.userAgent)&&!/Safari/.test(navigator.userAgent),l=a.saveAs||(typeof window!="object"||window!==a?function(){}:"download"in HTMLAnchorElement.prototype&&!m?function(e,t,i){var n=a.URL||a.webkitURL,o=document.createElement("a");t=t||e.name||"download",o.download=t,o.rel="noopener",typeof e=="string"?(o.href=e,o.origin===location.origin?s(o):w(o.href)?r(e,t,i):s(o,o.target="_blank")):(o.href=n.createObjectURL(e),setTimeout(function(){n.revokeObjectURL(o.href)},4e4),setTimeout(function(){s(o)},0))}:"msSaveOrOpenBlob"in navigator?function(e,t,i){if(t=t||e.name||"download",typeof e!="string")navigator.msSaveOrOpenBlob(d(e,i),t);else if(w(e))r(e,t,i);else{var n=document.createElement("a");n.href=e,n.target="_blank",setTimeout(function(){s(n)})}}:function(e,t,i,n){if(n=n||open("","_blank"),n&&(n.document.title=n.document.body.innerText="downloading..."),typeof e=="string")return r(e,t,i);var o=e.type==="application/octet-stream",E=/constructor/i.test(a.HTMLElement)||a.safari,y=/CriOS\/[\d]+/.test(navigator.userAgent);if((y||o&&E||m)&&typeof FileReader<"u"){var u=new FileReader;u.onloadend=function(){var c=u.result;c=y?c:c.replace(/^data:[^;]*;/,"data:attachment/file;"),n?n.location.href=c:location=c,n=null},u.readAsDataURL(e)}else{var h=a.URL||a.webkitURL,f=h.createObjectURL(e);n?n.location=f:location.href=f,n=null,setTimeout(function(){h.revokeObjectURL(f)},4e4)}});a.saveAs=l.saveAs=l,typeof v<"u"&&(v.exports=l)})});export{L as a};
@@ -1 +1 @@
1
- import{a as V}from"./chunk-UFCYTM46.js";import{a as q}from"./chunk-FNBFKTZI.js";import{a as _}from"./chunk-V65HN5SX.js";import{n as B,o as k}from"./chunk-WCXU6QPE.js";import{h as D,k as F}from"./chunk-BAWBN252.js";import{a as z,b as E}from"./chunk-2WNK6SOS.js";import{Ac as i,Bc as r,Jb as b,Kb as h,Ub as s,Vb as l,Wb as p,_b as T,bc as d,fb as y,g as j,gb as m,h as w,jc as C,kc as x,ma as o,mc as I,n as v,nc as S,pb as $,tb as L,ua as u,va as f}from"./chunk-NVNBNEFN.js";var H=j(q(),1);var A=["logoutput"],X=(()=>{class c{$api=o(F);$log=o(V);$modal=o(B);$toastr=o(D);$translate=o(z);termTarget=$("logoutput");resizeEvent=new v;constructor(){}onWindowResize(){this.resizeEvent.next(void 0)}ngOnInit(){window.document.querySelector("body").classList.add("bg-black"),this.$log.startTerminal(this.termTarget(),{},this.resizeEvent)}ngOnDestroy(){window.document.querySelector("body").classList.remove("bg-black"),this.$log.destroyTerminal()}downloadLogFile(){let t=this.$modal.open(_,{size:"lg",backdrop:"static"});t.componentInstance.title=this.$translate.instant("logs.title_download_log_file"),t.componentInstance.message=this.$translate.instant("logs.download_warning"),t.componentInstance.confirmButtonLabel=this.$translate.instant("form.button_download"),t.componentInstance.faIconClass="fas fa-fw fa-user-secret primary-text",t.result.then(()=>{this.$api.get("/platform-tools/hb-service/log/download",{observe:"response",responseType:"blob"}).subscribe({next:e=>{(0,H.saveAs)(e.body,"homebridge.log.txt")},error:e=>w(this,null,function*(){let n;try{n=JSON.parse(yield e.error.text()).message}catch(a){console.error(a)}this.$toastr.error(n||this.$translate.instant("logs.download.error"),this.$translate.instant("toast.title_error"))})})}).catch(()=>{})}truncateLogFile(){let t=this.$modal.open(_,{size:"lg",backdrop:"static"});t.componentInstance.title=this.$translate.instant("logs.title_truncate_log_file"),t.componentInstance.message=this.$translate.instant("logs.truncate_log_warning"),t.componentInstance.confirmButtonLabel=this.$translate.instant("form.button_delete"),t.componentInstance.confirmButtonClass="btn-danger",t.componentInstance.faIconClass="fas fa-fw fa-circle-exclamation primary-text",t.result.then(()=>{this.$api.put("/platform-tools/hb-service/log/truncate",{}).subscribe({next:()=>{this.$toastr.success(this.$translate.instant("logs.log_file_truncated"),this.$translate.instant("toast.title_success")),this.$log.term.clear()},error:e=>{console.error(e),this.$toastr.error(e.error.message||this.$translate.instant("logs.truncate.error"),this.$translate.instant("toast.title_error"))}})}).catch(()=>{})}static \u0275fac=function(e){return new(e||c)};static \u0275cmp=L({type:c,selectors:[["ng-component"]],viewQuery:function(e,n){e&1&&C(n.termTarget,A,5),e&2&&x()},hostBindings:function(e,n){e&1&&d("resize",function(g){return n.onWindowResize(g)},!1,y)},decls:17,vars:15,consts:[["logoutput",""],[1,"row","mb-3"],[1,"col-6"],[1,"primary-text","m-0"],[1,"col-6","text-end"],["container","body","placement","bottom","openDelay","150","triggers","hover",1,"btn","btn-elegant","my-0","me-2",3,"click","ngbTooltip"],[1,"fas","fa-fw","fa-download"],["container","body","placement","bottom","openDelay","150","triggers","hover",1,"btn","btn-elegant","my-0","me-0",3,"click","ngbTooltip"],[1,"fas","fa-fw","fa-trash-alt"],[1,"flex-column","d-flex","align-items-stretch","adjust-for-mobile"],["id","log-output",1,"align-self-end","w-100","h-100","mb-1"]],template:function(e,n){if(e&1){let a=T();s(0,"div",1)(1,"div",2)(2,"h3",3),I(3),i(4,"translate"),l()(),s(5,"div",4)(6,"button",5),i(7,"translate"),i(8,"translate"),d("click",function(){return u(a),f(n.downloadLogFile())}),p(9,"i",6),l(),s(10,"button",7),i(11,"translate"),i(12,"translate"),d("click",function(){return u(a),f(n.truncateLogFile())}),p(13,"i",8),l()()(),s(14,"div",9),p(15,"div",10,0),l()}e&2&&(m(3),S(r(4,5,"menu.linux.label_logs")),m(3),h("ngbTooltip",r(7,7,"form.button_download")),b("aria-label",r(8,9,"form.button_download")),m(4),h("ngbTooltip",r(11,11,"form.button_delete")),b("aria-label",r(12,13,"form.button_delete")))},dependencies:[k,E],encapsulation:2})}return c})();export{X as a};
1
+ import{a as V}from"./chunk-KIPITWHI.js";import{a as q}from"./chunk-QGC43YCF.js";import{a as _}from"./chunk-PVRKV6LM.js";import{n as B,o as k}from"./chunk-MS2EQS6S.js";import{h as D,k as F}from"./chunk-NCJAIFQO.js";import{a as z,b as E}from"./chunk-P5BH5BCJ.js";import{Ac as i,Bc as r,Jb as b,Kb as h,Ub as s,Vb as l,Wb as p,_b as T,bc as d,fb as y,g as j,gb as m,h as w,jc as C,kc as x,ma as o,mc as I,n as v,nc as S,pb as $,tb as L,ua as u,va as f}from"./chunk-V7KKBEKT.js";var H=j(q(),1);var A=["logoutput"],X=(()=>{class c{$api=o(F);$log=o(V);$modal=o(B);$toastr=o(D);$translate=o(z);termTarget=$("logoutput");resizeEvent=new v;constructor(){}onWindowResize(){this.resizeEvent.next(void 0)}ngOnInit(){window.document.querySelector("body").classList.add("bg-black"),this.$log.startTerminal(this.termTarget(),{},this.resizeEvent)}ngOnDestroy(){window.document.querySelector("body").classList.remove("bg-black"),this.$log.destroyTerminal()}downloadLogFile(){let t=this.$modal.open(_,{size:"lg",backdrop:"static"});t.componentInstance.title=this.$translate.instant("logs.title_download_log_file"),t.componentInstance.message=this.$translate.instant("logs.download_warning"),t.componentInstance.confirmButtonLabel=this.$translate.instant("form.button_download"),t.componentInstance.faIconClass="fas fa-fw fa-user-secret primary-text",t.result.then(()=>{this.$api.get("/platform-tools/hb-service/log/download",{observe:"response",responseType:"blob"}).subscribe({next:e=>{(0,H.saveAs)(e.body,"homebridge.log.txt")},error:e=>w(this,null,function*(){let n;try{n=JSON.parse(yield e.error.text()).message}catch(a){console.error(a)}this.$toastr.error(n||this.$translate.instant("logs.download.error"),this.$translate.instant("toast.title_error"))})})}).catch(()=>{})}truncateLogFile(){let t=this.$modal.open(_,{size:"lg",backdrop:"static"});t.componentInstance.title=this.$translate.instant("logs.title_truncate_log_file"),t.componentInstance.message=this.$translate.instant("logs.truncate_log_warning"),t.componentInstance.confirmButtonLabel=this.$translate.instant("form.button_delete"),t.componentInstance.confirmButtonClass="btn-danger",t.componentInstance.faIconClass="fas fa-fw fa-circle-exclamation primary-text",t.result.then(()=>{this.$api.put("/platform-tools/hb-service/log/truncate",{}).subscribe({next:()=>{this.$toastr.success(this.$translate.instant("logs.log_file_truncated"),this.$translate.instant("toast.title_success")),this.$log.term.clear()},error:e=>{console.error(e),this.$toastr.error(e.error.message||this.$translate.instant("logs.truncate.error"),this.$translate.instant("toast.title_error"))}})}).catch(()=>{})}static \u0275fac=function(e){return new(e||c)};static \u0275cmp=L({type:c,selectors:[["ng-component"]],viewQuery:function(e,n){e&1&&C(n.termTarget,A,5),e&2&&x()},hostBindings:function(e,n){e&1&&d("resize",function(g){return n.onWindowResize(g)},!1,y)},decls:17,vars:15,consts:[["logoutput",""],[1,"row","mb-3"],[1,"col-6"],[1,"primary-text","m-0"],[1,"col-6","text-end"],["container","body","placement","bottom","openDelay","150","triggers","hover",1,"btn","btn-elegant","my-0","me-2",3,"click","ngbTooltip"],[1,"fas","fa-fw","fa-download"],["container","body","placement","bottom","openDelay","150","triggers","hover",1,"btn","btn-elegant","my-0","me-0",3,"click","ngbTooltip"],[1,"fas","fa-fw","fa-trash-alt"],[1,"flex-column","d-flex","align-items-stretch","adjust-for-mobile"],["id","log-output",1,"align-self-end","w-100","h-100","mb-1"]],template:function(e,n){if(e&1){let a=T();s(0,"div",1)(1,"div",2)(2,"h3",3),I(3),i(4,"translate"),l()(),s(5,"div",4)(6,"button",5),i(7,"translate"),i(8,"translate"),d("click",function(){return u(a),f(n.downloadLogFile())}),p(9,"i",6),l(),s(10,"button",7),i(11,"translate"),i(12,"translate"),d("click",function(){return u(a),f(n.truncateLogFile())}),p(13,"i",8),l()()(),s(14,"div",9),p(15,"div",10,0),l()}e&2&&(m(3),S(r(4,5,"menu.linux.label_logs")),m(3),h("ngbTooltip",r(7,7,"form.button_download")),b("aria-label",r(8,9,"form.button_download")),m(4),h("ngbTooltip",r(11,11,"form.button_delete")),b("aria-label",r(12,13,"form.button_delete")))},dependencies:[k,E],encapsulation:2})}return c})();export{X as a};
@@ -0,0 +1 @@
1
+ import"./chunk-OKJ2T4EM.js";import{q as p}from"./chunk-MS2EQS6S.js";import{z as m}from"./chunk-XCZREHWX.js";import{g as i}from"./chunk-5CDZD4QO.js";import"./chunk-MJUBX7V2.js";import"./chunk-NCJAIFQO.js";import"./chunk-KD5YLOUW.js";import{c as s}from"./chunk-P5BH5BCJ.js";import{gd as n,ha as t,ub as r}from"./chunk-V7KKBEKT.js";var a=[{path:"",loadComponent:()=>import("./chunk-CEHKV4IM.js").then(o=>o.PowerOptionsComponent)}],u=(()=>{class o{static \u0275fac=function(e){return new(e||o)};static \u0275mod=r({type:o});static \u0275inj=t({imports:[i.forChild(a),i]})}return o})();var j=(()=>{class o{static \u0275fac=function(e){return new(e||o)};static \u0275mod=r({type:o});static \u0275inj=t({imports:[n,u,p,m,s]})}return o})();export{j as PowerOptionsModule};
@@ -1 +1 @@
1
- import{a as j}from"./chunk-CJSSN6RK.js";import"./chunk-GKSJJJEG.js";import"./chunk-X3ZB4QGO.js";import{c as M}from"./chunk-R5JL6NY3.js";import"./chunk-6WEQLPNK.js";import{q as u}from"./chunk-WCXU6QPE.js";import{y as l,z as d}from"./chunk-JKRWJSXD.js";import{d as h,g as a}from"./chunk-ZS7TMHAN.js";import"./chunk-Y5URZ5MZ.js";import{h as v,k as y}from"./chunk-BAWBN252.js";import"./chunk-DNCUP6B7.js";import{a as g,c as C}from"./chunk-2WNK6SOS.js";import{ga as c,h as s,ha as i,id as p,ma as e,ub as n,w as f}from"./chunk-NVNBNEFN.js";var m=(()=>{class o{$api=e(y);$router=e(h);$toastr=e(v);$translate=e(g);constructor(){}resolve(){return s(this,null,function*(){try{let r=yield f(this.$api.get("/config-editor"));return JSON.stringify(r,null,4)}catch(r){console.error(r),this.$toastr.error(r.message,this.$translate.instant("toast.title_error")),this.$router.navigate(["/"])}})}static \u0275fac=function(t){return new(t||o)};static \u0275prov=c({token:o,factory:o.\u0275fac})}return o})();var $=[{path:"",loadComponent:()=>import("./chunk-54WT3CWA.js").then(o=>o.ConfigEditorComponent),resolve:{config:m}}],R=(()=>{class o{static \u0275fac=function(t){return new(t||o)};static \u0275mod=n({type:o});static \u0275inj=i({imports:[a.forChild($),a]})}return o})();var Q=(()=>{class o{static \u0275fac=function(t){return new(t||o)};static \u0275mod=n({type:o});static \u0275inj=i({providers:[m],imports:[p,l,d,M,u,C.forChild(),R,j]})}return o})();export{Q as ConfigEditorModule};
1
+ import{a as j}from"./chunk-KJCIKCUI.js";import"./chunk-LSEE5MJ5.js";import"./chunk-M5LTG544.js";import{c as M}from"./chunk-W6CTMNAG.js";import"./chunk-W7CPCAPT.js";import{q as u}from"./chunk-MS2EQS6S.js";import{y as l,z as d}from"./chunk-XCZREHWX.js";import{d as h,g as a}from"./chunk-5CDZD4QO.js";import"./chunk-MJUBX7V2.js";import{h as v,k as y}from"./chunk-NCJAIFQO.js";import"./chunk-KD5YLOUW.js";import{a as g,c as C}from"./chunk-P5BH5BCJ.js";import{ga as c,gd as p,h as s,ha as i,ma as e,ub as n,w as f}from"./chunk-V7KKBEKT.js";var m=(()=>{class o{$api=e(y);$router=e(h);$toastr=e(v);$translate=e(g);constructor(){}resolve(){return s(this,null,function*(){try{let r=yield f(this.$api.get("/config-editor"));return JSON.stringify(r,null,4)}catch(r){console.error(r),this.$toastr.error(r.message,this.$translate.instant("toast.title_error")),this.$router.navigate(["/"])}})}static \u0275fac=function(t){return new(t||o)};static \u0275prov=c({token:o,factory:o.\u0275fac})}return o})();var $=[{path:"",loadComponent:()=>import("./chunk-4IP5DDXE.js").then(o=>o.ConfigEditorComponent),resolve:{config:m}}],R=(()=>{class o{static \u0275fac=function(t){return new(t||o)};static \u0275mod=n({type:o});static \u0275inj=i({imports:[a.forChild($),a]})}return o})();var Q=(()=>{class o{static \u0275fac=function(t){return new(t||o)};static \u0275mod=n({type:o});static \u0275inj=i({providers:[m],imports:[p,l,d,M,u,C.forChild(),R,j]})}return o})();export{Q as ConfigEditorModule};
@@ -0,0 +1 @@
1
+ import{a}from"./chunk-BEBVDUK5.js";import"./chunk-KLDACGOZ.js";import"./chunk-AKQE7OWM.js";import"./chunk-NSDMDB7X.js";import"./chunk-X2NTV4U7.js";import"./chunk-5NJQH2A3.js";import"./chunk-MJUBX7V2.js";import"./chunk-NCJAIFQO.js";import"./chunk-KD5YLOUW.js";import"./chunk-P5BH5BCJ.js";import"./chunk-V7KKBEKT.js";export{a as TerminalComponent};
@@ -1 +1 @@
1
- import{a as ne}from"./chunk-XBIY2EKP.js";import{g as O,m as G,n as te}from"./chunk-WCXU6QPE.js";import{b as Z,c as M,d as x,e as F,f as z,g as N,j as w,m as q,o as R,p as L,q as j,w as ee,y as V,z as A}from"./chunk-JKRWJSXD.js";import{b as ie}from"./chunk-ZS7TMHAN.js";import{c as Q}from"./chunk-V5C6TH72.js";import{a as ce}from"./chunk-Y5URZ5MZ.js";import{h as U,k}from"./chunk-BAWBN252.js";import{a as S,b as $}from"./chunk-2WNK6SOS.js";import{$c as P,Ac as s,Bc as l,Cc as Y,Jb as u,Kb as f,Pb as g,Rb as K,Sb as W,Tb as X,Ub as i,Vb as n,Wb as p,_b as D,bc as b,cc as v,g as de,gb as e,ma as c,mc as m,nc as d,oc as C,tb as E,ua as B,va as T,wc as I,zb as h}from"./chunk-NVNBNEFN.js";function ue(r,y){r&1&&(i(0,"ngb-alert",13)(1,"p",20),m(2),s(3,"translate"),n()()),r&2&&(f("dismissible",!1),e(2),d(l(3,2,"login.invalid_password")))}var re=(()=>{class r{$activeModal=c(G);$api=c(k);$toastr=c(U);$translate=c(S);formGroup=new N({password:new w("",[x.required])});invalidCredentials=!1;constructor(){}disable2fa(){this.invalidCredentials=!1,this.$api.post("/users/otp/deactivate",this.formGroup.value).subscribe({next:()=>{this.$activeModal.close(),this.$toastr.success(this.$translate.instant("users.setup_2fa_disable_success"),this.$translate.instant("toast.title_success"))},error:()=>{this.formGroup.setValue({password:""}),this.invalidCredentials=!0}})}static \u0275fac=function(o){return new(o||r)};static \u0275cmp=E({type:r,selectors:[["ng-component"]],decls:34,vars:27,consts:[[1,"modal-content",2,"min-height","300px"],[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-fw","fa-key","primary-text",2,"font-size","75px"],[1,"mb-3"],[1,"list-group","list-group-box","mb-0"],[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,"text-start","text-md-end","w-100","w-md-50"],["type","password","autocomplete","current-password",1,"form-control","custom-input",3,"formControl","placeholder"],["type","error",1,"mt-3","mb-0",3,"dismissible"],[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-danger",3,"click","disabled"],[1,"mb-0"]],template:function(o,a){o&1&&(i(0,"div",0)(1,"div",1)(2,"h5",2),m(3),s(4,"translate"),n(),i(5,"button",3),s(6,"translate"),b("click",function(){return a.$activeModal.dismiss("Dismiss")}),n()(),i(7,"div",4)(8,"div",5),p(9,"i",6),n(),i(10,"ul",7)(11,"li"),m(12),s(13,"translate"),n()(),i(14,"ul",8)(15,"li",9)(16,"label",10),m(17),s(18,"translate"),n(),i(19,"div",11),p(20,"input",12),s(21,"translate"),n()()(),h(22,ue,4,4,"ngb-alert",13),n(),i(23,"div",14)(24,"div",15)(25,"button",16),s(26,"translate"),b("click",function(){return a.$activeModal.dismiss("Dismiss")}),m(27),s(28,"translate"),n()(),p(29,"div",17),i(30,"div",18)(31,"button",19),b("click",function(){return a.disable2fa()}),m(32),s(33,"translate"),n()()()()),o&2&&(e(3),d(l(4,11,"users.setup_2fa_disable")),e(2),u("aria-label",l(6,13,"form.button_close")),e(7),d(l(13,15,"users.setup_2fa_disable_current_password")),e(5),d(l(18,17,"users.label_password")),e(3),f("formControl",a.formGroup.controls.password)("placeholder",l(21,19,"users.label_password")),e(2),g(a.invalidCredentials&&!a.formGroup.controls.password.value?22:-1),e(3),u("aria-label",l(26,21,"form.button_close")),e(2),C(" ",l(28,23,"form.button_close")," "),e(4),f("disabled",a.formGroup.invalid),e(),C(" ",l(33,25,"form.button_disable")," "))},dependencies:[V,M,F,A,R,$,O],encapsulation:2})}return r})();var ae=de(ce(),1);var fe=r=>({timeDiffError:r});function be(r,y){r&1&&(i(0,"li"),m(1),s(2,"translate"),n()),r&2&&(e(),d(l(2,1,"users.setup_2fa_scan_qr_code")))}function _e(r,y){if(r&1&&(i(0,"ngb-alert",8)(1,"p",16),m(2),s(3,"translate"),n(),i(4,"p",17),m(5),s(6,"translate"),n()()),r&2){let t=v();f("dismissible",!1),e(2),d(l(3,3,"users.setup_2fa_cannot_setup_2fa")),e(3),d(Y(6,5,"users.setup_2fa_server_time_out",I(8,fe,t.timeDiffError)))}}function ve(r,y){if(r&1&&(i(0,"ul",9)(1,"li",18)(2,"div",19),p(3,"app-qrcode",20),n()(),i(4,"li",21)(5,"label",22),m(6),s(7,"translate"),n(),i(8,"div",23),p(9,"input",24),n()()()),r&2){let t=v();e(3),f("data",t.otpString),e(3),d(l(7,3,"users.setup_2fa_enter_code")),e(3),f("formControl",t.formGroup.controls.code)}}function xe(r,y){if(r&1){let t=D();i(0,"button",25),s(1,"translate"),b("click",function(){B(t);let a=v();return T(a.$activeModal.dismiss("Dismiss"))}),m(2),s(3,"translate"),n()}r&2&&(u("aria-label",l(1,2,"form.button_close")),e(2),C(" ",l(3,4,"form.button_close")," "))}function we(r,y){if(r&1){let t=D();i(0,"button",25),s(1,"translate"),b("click",function(){B(t);let a=v();return T(a.$activeModal.dismiss("Dismiss"))}),m(2),s(3,"translate"),n()}r&2&&(u("aria-label",l(1,2,"form.button_close")),e(2),C(" ",l(3,4,"form.button_close")," "))}function Ce(r,y){if(r&1){let t=D();i(0,"button",26),b("click",function(){B(t);let a=v();return T(a.enable2fa())}),m(1),s(2,"translate"),n()}if(r&2){let t=v();f("disabled",t.formGroup.invalid),e(),C(" ",l(2,2,"form.button_enable")," ")}}var oe=(()=>{class r{$activeModal=c(G);$api=c(k);$toastr=c(U);$translate=c(S);user;timeDiffError=null;otpString;formGroup=new N({code:new w("",[x.required,x.minLength(6),x.maxLength(6)])});constructor(){}ngOnInit(){this.$api.post("/users/otp/setup",{}).subscribe({next:t=>{this.checkTimeDiff(t.timestamp),this.timeDiffError||(this.otpString=t.otpauth)},error:t=>{this.$activeModal.dismiss(),console.error(t),this.$toastr.error(this.$translate.instant("users.setup_2fa_enable_error"),this.$translate.instant("toast.title_error"))}})}checkTimeDiff(t){let o=(0,ae.default)(t).diff(new Date,"millisecond");o<-5e3||o>5e3?this.timeDiffError=o:this.timeDiffError=null}enable2fa(){this.$api.post("/users/otp/activate",this.formGroup.value).subscribe({next:()=>{this.$toastr.success(this.$translate.instant("users.setup_2fa_enabled_success"),this.$translate.instant("toast.title_success")),this.$activeModal.close()},error:t=>{console.error(t),this.$toastr.error(this.$translate.instant("users.setup_2fa_activate_error"),this.$translate.instant("toast.title_error"))}})}static \u0275fac=function(o){return new(o||r)};static \u0275cmp=E({type:r,selectors:[["ng-component"]],inputs:{user:"user"},decls:24,vars:15,consts:[[1,"modal-content","setup2fa"],[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-fw","fa-key","primary-text",2,"font-size","75px"],[1,"mb-3"],["type","error",1,"mb-0",3,"dismissible"],[1,"list-group","list-group-box","mb-0"],[1,"modal-footer","justify-content-between"],[1,"text-start"],["type","button","data-bs-dismiss","modal",1,"btn","btn-elegant"],[1,"text-center"],[1,"text-end"],["type","button","data-bs-dismiss","modal",1,"btn","btn-primary",3,"disabled"],[1,"fw-bold","mb-1"],[1,"mb-0"],[1,"list-group-item","text-center"],[1,"text-center","w-100","d-flex","justify-content-center"],[1,"mx-auto",2,"width","175px","height","175px",3,"data"],[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,"text-start","text-md-end","w-100","w-md-50"],["formControlName","username","type","text","placeholder","eg. 123456","autocomplete","one-time-code","autocapitalize","none","inputmode","numeric","pattern","[0-9]*",1,"form-control","custom-input",3,"formControl"],["type","button","data-bs-dismiss","modal",1,"btn","btn-elegant",3,"click"],["type","button","data-bs-dismiss","modal",1,"btn","btn-primary",3,"click","disabled"]],template:function(o,a){o&1&&(i(0,"div",0)(1,"div",1)(2,"h5",2),m(3),s(4,"translate"),n(),i(5,"button",3),s(6,"translate"),b("click",function(){return a.$activeModal.dismiss("Dismiss")}),n()(),i(7,"div",4)(8,"div",5),p(9,"i",6),n(),i(10,"ul",7)(11,"li"),m(12),s(13,"translate"),n(),h(14,be,3,3,"li"),n(),h(15,_e,7,10,"ngb-alert",8)(16,ve,10,5,"ul",9),n(),i(17,"div",10)(18,"div",11),h(19,xe,4,6,"button",12),n(),i(20,"div",13),h(21,we,4,6,"button",12),n(),i(22,"div",14),h(23,Ce,3,4,"button",15),n()()()),o&2&&(e(3),d(l(4,9,"users.setup_2fa")),e(2),u("aria-label",l(6,11,"form.button_close")),e(7),d(l(13,13,"users.setup_2fa_warning")),e(2),g(a.timeDiffError?-1:14),e(),g(a.timeDiffError?15:-1),e(),g(a.timeDiffError?-1:16),e(3),g(a.timeDiffError?-1:19),e(2),g(a.timeDiffError?21:-1),e(2),g(a.timeDiffError?-1:23))},dependencies:[O,ne,V,M,F,ee,A,R,j,$],encapsulation:2})}return r})();var se=r=>({"is-invalid":r}),le=(()=>{class r{$activeModal=c(G);$api=c(k);$toastr=c(U);$translate=c(S);form=new N({username:new w("",[x.required]),name:new w("",[x.required]),password:new w("",[x.compose([x.required,x.minLength(4)])]),passwordConfirm:new w("",[x.required]),admin:new w(!0)},this.matchPassword);page={title:"users.title_add_user",save:"users.button_add_new_user",password:"users.label_password"};constructor(){}matchPassword(t){let o=t.get("password").value,a=t.get("passwordConfirm").value;if(o!==a)t.get("passwordConfirm").setErrors({matchPassword:!0});else return null}onSubmit({value:t}){this.$api.post("/users",t).subscribe({next:()=>{this.$activeModal.close(),this.$toastr.success(this.$translate.instant("users.toast_added_new_user"),this.$translate.instant("toast.title_success"))},error:o=>{this.$toastr.error(o.error.message||this.$translate.instant("users.toast_failed_to_add_user"),this.$translate.instant("toast.title_error"))}})}static \u0275fac=function(o){return new(o||r)};static \u0275cmp=E({type:r,selectors:[["ng-component"]],decls:58,vars:50,consts:[[1,"modal-content"],["novalidate","",3,"ngSubmit","formGroup"],[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-fw","fa-user-plus","primary-text",2,"font-size","75px"],[1,"list-group","list-group-box","mb-0"],[1,"list-group-item","d-flex","flex-column","flex-md-row","align-items-center"],["for","form-username",1,"mb-2","mb-md-0","w-100","w-md-50"],[1,"text-start","text-md-end","w-100","w-md-50"],["formControlName","username","type","text","id","form-username","autocomplete","username","autocapitalize","none",1,"form-control","custom-input"],["for","form-name",1,"mb-2","mb-md-0","w-100","w-md-50"],["formControlName","name","type","text","id","form-name","autocomplete","name",1,"form-control","custom-input"],["for","form-pass",1,"mb-2","mb-md-0","w-100","w-md-50"],["formControlName","password","type","password","autocomplete","new-password","id","form-pass",1,"form-control","custom-input",3,"ngClass"],["for","form-pass-confirm",1,"mb-2","mb-md-0","w-100","w-md-50"],["formControlName","passwordConfirm","type","password","autocomplete","new-password","id","form-pass-confirm",1,"form-control","custom-input",3,"ngClass"],[1,"list-group-item","d-flex","justify-content-between","align-items-center","flex-row","pb-2"],[1,"text-start"],[1,"text-end","grey-text"],["type","checkbox","id","isAdmin",1,"rendux-input"],["for","isAdmin",1,"rendux-label","ms-3"],[1,"modal-footer","justify-content-between"],["type","button","data-bs-dismiss","modal",1,"btn","btn-elegant",3,"click"],[1,"text-center"],[1,"text-end"],["type","submit",1,"btn","btn-primary",3,"disabled"]],template:function(o,a){o&1&&(i(0,"div",0)(1,"form",1),b("ngSubmit",function(){return a.onSubmit(a.form)}),i(2,"div",2)(3,"h5",3),m(4),s(5,"translate"),n(),i(6,"button",4),s(7,"translate"),b("click",function(){return a.$activeModal.dismiss("Dismiss")}),n()(),i(8,"div",5)(9,"div",6),p(10,"i",7),n(),i(11,"ul",8)(12,"li",9)(13,"label",10),m(14),s(15,"translate"),n(),i(16,"div",11),p(17,"input",12),s(18,"translate"),n()(),i(19,"li",9)(20,"label",13),m(21),s(22,"translate"),n(),i(23,"div",11),p(24,"input",14),s(25,"translate"),n()(),i(26,"li",9)(27,"label",15),m(28),s(29,"translate"),n(),i(30,"div",11),p(31,"input",16),s(32,"translate"),n()(),i(33,"li",9)(34,"label",17),m(35),s(36,"translate"),n(),i(37,"div",11),p(38,"input",18),s(39,"translate"),n()(),i(40,"li",19)(41,"span",20),m(42),s(43,"translate"),n(),i(44,"div",21),p(45,"input",22),s(46,"translate"),p(47,"label",23),n()()()(),i(48,"div",24)(49,"div",20)(50,"button",25),b("click",function(){return a.$activeModal.dismiss("Dismiss")}),m(51),s(52,"translate"),n()(),p(53,"div",26),i(54,"div",27)(55,"button",28),m(56),s(57,"translate"),n()()()()()),o&2&&(e(),f("formGroup",a.form),e(3),d(l(5,18,"users.title_add_user")),e(2),u("aria-label",l(7,20,"form.button_close")),e(8),d(l(15,22,"users.label_username")),e(3),u("aria-label",l(18,24,"users.label_username")),e(4),d(l(22,26,"users.label_full_name")),e(3),u("aria-label",l(25,28,"users.label_full_name")),e(4),d(l(29,30,a.page.password)),e(3),f("ngClass",I(46,se,a.form.controls.password.dirty&&a.form.controls.password.errors)),u("aria-label",l(32,32,a.page.password)),e(4),d(l(36,34,"users.label_confirm_password")),e(3),f("ngClass",I(48,se,a.form.controls.passwordConfirm.dirty&&a.form.controls.passwordConfirm.errors)),u("aria-label",l(39,36,"users.label_confirm_password")),e(4),d(l(43,38,"users.label_admin_user")),e(3),u("aria-label",l(46,40,"users.label_admin_user")),e(6),C(" ",l(52,42,"form.button_close")," "),e(4),f("disabled",!a.form.valid),e(),C(" ",l(57,44,"form.button_save")," "))},dependencies:[V,q,M,F,z,A,L,j,P,$],encapsulation:2})}return r})();var me=r=>({"is-invalid":r});function ge(r,y){if(r&1&&(i(0,"li",9)(1,"label",27),m(2),s(3,"translate"),n(),i(4,"div",11),p(5,"input",28),s(6,"translate"),n()()),r&2){let t=v();e(2),d(l(3,3,"users.label_confirm_password")),e(3),f("ngClass",I(7,me,t.form.controls.passwordConfirm.dirty&&t.form.controls.passwordConfirm.errors)),u("aria-label",l(6,5,"users.label_confirm_password"))}}var pe=(()=>{class r{$activeModal=c(G);$api=c(k);$auth=c(Q);$toastr=c(U);$translate=c(S);user;form=new N({username:new w("",[x.required]),name:new w("",[x.required]),password:new w(""),passwordConfirm:new w(""),admin:new w(!0)},this.matchPassword);page={title:"users.title_edit_user",save:"form.button_save",password:"users.label_new_password"};isCurrentUser=!1;constructor(){}ngOnInit(){this.isCurrentUser=this.$auth.user.username===this.user.username,this.form.patchValue(this.user)}matchPassword(t){let o=t.get("password").value,a=t.get("passwordConfirm").value;if(o!==a)t.get("passwordConfirm").setErrors({matchPassword:!0});else return null}onSubmit({value:t}){this.$api.patch(`/users/${this.user.id}`,t).subscribe({next:()=>{this.$activeModal.close(),this.$toastr.success(this.$translate.instant("users.toast_updated_user"),this.$translate.instant("toast.title_success")),this.isCurrentUser&&t.username!==this.$auth.user.username&&this.$auth.logout()},error:o=>{console.error(o),this.$toastr.error(o.error.message||this.$translate.instant("users.toast_failed_to_add_user"),this.$translate.instant("toast.title_error"))}})}static \u0275fac=function(o){return new(o||r)};static \u0275cmp=E({type:r,selectors:[["ng-component"]],inputs:{user:"user"},decls:52,vars:42,consts:[[1,"modal-content"],["novalidate","",3,"ngSubmit","formGroup"],[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-fw","fa-user-pen","primary-text",2,"font-size","75px"],[1,"list-group","list-group-box","mb-0"],[1,"list-group-item","d-flex","flex-column","flex-md-row","align-items-center"],["for","form-username",1,"mb-2","mb-md-0","w-100","w-md-50"],[1,"text-start","text-md-end","w-100","w-md-50"],["formControlName","username","type","text","id","form-username","autocomplete","off","autocapitalize","none",1,"form-control","custom-input"],["for","form-name",1,"mb-2","mb-md-0","w-100","w-md-50"],["formControlName","name","type","text","id","form-name","autocomplete","name",1,"form-control","custom-input"],["for","form-pass",1,"mb-2","mb-md-0","w-100","w-md-50"],["formControlName","password","type","password","autocomplete","new-password","id","form-pass",1,"form-control","custom-input",3,"ngClass"],[1,"list-group-item","d-flex","justify-content-between","align-items-center","flex-row","pb-2"],[1,"text-start"],[1,"text-end","grey-text"],["type","checkbox","formControlName","admin","id","isAdmin",1,"rendux-input"],["for","isAdmin",1,"rendux-label","ms-3"],[1,"modal-footer","justify-content-between"],["type","button","data-bs-dismiss","modal",1,"btn","btn-elegant",3,"click"],[1,"text-center"],[1,"text-end"],["type","submit",1,"btn","btn-primary",3,"disabled"],["for","form-pass-confirm",1,"mb-2","mb-md-0","w-100","w-md-50"],["formControlName","passwordConfirm","type","password","autocomplete","new-password","id","form-pass-confirm",1,"form-control","custom-input",3,"ngClass"]],template:function(o,a){o&1&&(i(0,"div",0)(1,"form",1),b("ngSubmit",function(){return a.onSubmit(a.form)}),i(2,"div",2)(3,"h5",3),m(4),s(5,"translate"),n(),i(6,"button",4),s(7,"translate"),b("click",function(){return a.$activeModal.dismiss("Dismiss")}),n()(),i(8,"div",5)(9,"div",6),p(10,"i",7),n(),i(11,"ul",8)(12,"li",9)(13,"label",10),m(14),s(15,"translate"),n(),i(16,"div",11),p(17,"input",12),s(18,"translate"),n()(),i(19,"li",9)(20,"label",13),m(21),s(22,"translate"),n(),i(23,"div",11),p(24,"input",14),s(25,"translate"),n()(),i(26,"li",9)(27,"label",15),m(28),s(29,"translate"),n(),i(30,"div",11),p(31,"input",16),s(32,"translate"),n()(),h(33,ge,7,9,"li",9),i(34,"li",17)(35,"span",18),m(36),s(37,"translate"),n(),i(38,"div",19),p(39,"input",20),s(40,"translate"),p(41,"label",21),n()()()(),i(42,"div",22)(43,"div",18)(44,"button",23),b("click",function(){return a.$activeModal.dismiss("Dismiss")}),m(45),s(46,"translate"),n()(),p(47,"div",24),i(48,"div",25)(49,"button",26),m(50),s(51,"translate"),n()()()()()),o&2&&(e(),f("formGroup",a.form),e(3),d(l(5,16,"users.title_edit_user")),e(2),u("aria-label",l(7,18,"form.button_close")),e(8),d(l(15,20,"users.label_username")),e(3),u("aria-label",l(18,22,"users.label_username")),e(4),d(l(22,24,"users.label_full_name")),e(3),u("aria-label",l(25,26,"users.label_full_name")),e(4),d(l(29,28,a.page.password)),e(3),f("ngClass",I(40,me,a.form.controls.password.dirty&&a.form.controls.password.errors)),u("aria-label",l(32,30,a.page.password)),e(2),g(a.form.controls.password.value?33:-1),e(3),d(l(37,32,"users.label_admin_user")),e(3),u("aria-label",l(40,34,"users.label_admin_user")),e(6),C(" ",l(46,36,"form.button_close")," "),e(4),f("disabled",!a.form.valid),e(),C(" ",l(51,38,"form.button_save")," "))},dependencies:[V,q,M,Z,F,z,A,L,j,P,$],encapsulation:2})}return r})();function he(r,y){if(r&1){let t=D();i(0,"button",21),b("click",function(){B(t);let a=v().$implicit,_=v();return T(_.setup2fa(a))}),m(1),s(2,"translate"),n()}r&2&&(e(),d(l(2,1,"users.setup_2fa")))}function ye(r,y){if(r&1){let t=D();i(0,"button",17),b("click",function(){B(t);let a=v().$implicit,_=v();return T(_.disable2fa(a))}),m(1),s(2,"translate"),n()}r&2&&(e(),C(" ",l(2,1,"users.setup_2fa_disable")," "))}function Ee(r,y){if(r&1){let t=D();i(0,"div",7)(1,"div",8)(2,"div",9)(3,"div",10)(4,"span",11),p(5,"h4",12)(6,"h5",13),n()(),i(7,"div",14),h(8,he,3,3,"button",15)(9,ye,3,3,"button",16),i(10,"div")(11,"button",17),s(12,"translate"),b("click",function(){let a=B(t).$implicit,_=v();return T(_.openEditUser(a))}),p(13,"i",18),n(),i(14,"button",19),s(15,"translate"),b("click",function(){let a=B(t).$implicit,_=v();return T(_.deleteUser(a.id))}),p(16,"i",20),n()()()()()()}if(r&2){let t=y.$implicit,o=v();e(5),f("innerText",t.name),e(),f("innerText",t.username),e(2),g(o.$auth.user.username===t.username&&!t.otpActive?8:-1),e(),g(o.$auth.user.username===t.username&&t.otpActive?9:-1),e(2),u("aria-label",l(12,7,"form.button_edit")),e(3),f("disabled",o.$auth.user.username===t.username),u("aria-label",l(15,9,"form.button_delete"))}}var gt=(()=>{class r{$api=c(k);$auth=c(Q);$modal=c(te);$route=c(ie);$toastr=c(U);$translate=c(S);homebridgeUsers;constructor(){}ngOnInit(){this.$route.data.subscribe(t=>{this.homebridgeUsers=t.homebridgeUsers})}reloadUsers(){return this.$api.get("/users").subscribe(t=>{this.homebridgeUsers=t})}openAddNewUser(){this.$modal.open(le,{size:"lg",backdrop:"static"}).result.finally(()=>{this.reloadUsers()})}openEditUser(t){let o=this.$modal.open(pe,{size:"lg",backdrop:"static"});o.componentInstance.user=t,o.result.finally(()=>{this.reloadUsers()})}deleteUser(t){this.$api.delete(`/users/${t}`).subscribe({next:()=>{this.$toastr.success(this.$translate.instant("users.toast_user_deleted"),this.$translate.instant("toast.title_success")),this.reloadUsers()},error:o=>{console.error(o),this.$toastr.error(o.error.message||this.$translate.instant("users.toast_failed_to_delete_user"),this.$translate.instant("toast.title_error"))}})}setup2fa(t){let o=this.$modal.open(oe,{size:"lg",backdrop:"static"});o.componentInstance.user=t,o.result.finally(()=>{this.reloadUsers()})}disable2fa(t){let o=this.$modal.open(re,{size:"lg",backdrop:"static"});o.componentInstance.user=t,o.result.finally(()=>{this.reloadUsers()})}static \u0275fac=function(o){return new(o||r)};static \u0275cmp=E({type:r,selectors:[["app-users"]],decls:12,vars:6,consts:[[1,"row","mb-3"],[1,"col-9"],[1,"primary-text","m-0"],[1,"col-3","text-end"],[1,"btn","btn-elegant","waves-effect","m-0",3,"click"],[1,"fas","fa-fw","fa-user-plus"],[1,"row"],[1,"col-md-6","mb-4"],[1,"card","card-body"],[1,"d-flex","flex-column"],[1,"d-flex","flex-row","mb-3"],[1,"me-auto","my-0"],[3,"innerText"],[1,"small","text-truncate","primary-text",3,"innerText"],[1,"d-flex","flex-row","justify-content-between"],[1,"btn","btn-primary","m-0"],[1,"btn","btn-elegant","m-0"],[1,"btn","btn-elegant","m-0",3,"click"],[1,"fas","fa-fw","fa-user-pen"],[1,"btn","btn-danger","m-0","ms-2",3,"click","disabled"],[1,"fas","fa-fw","fa-trash"],[1,"btn","btn-primary","m-0",3,"click"]],template:function(o,a){o&1&&(i(0,"div",0)(1,"div",1)(2,"h3",2),m(3),s(4,"translate"),n()(),i(5,"div",3)(6,"button",4),s(7,"translate"),b("click",function(){return a.openAddNewUser()}),p(8,"i",5),n()()(),i(9,"div",6),W(10,Ee,17,11,"div",7,K),n()),o&2&&(e(3),d(l(4,2,"users.title_users")),e(3),u("aria-label",l(7,4,"users.button_add_user")),e(4),X(a.homebridgeUsers))},dependencies:[$],encapsulation:2})}return r})();export{re as a,oe as b,le as c,pe as d,gt as e};
1
+ import{a as ne}from"./chunk-5BZGZWPU.js";import{g as O,m as G,n as te}from"./chunk-MS2EQS6S.js";import{b as Z,c as M,d as x,e as F,f as z,g as N,j as w,m as q,o as R,p as L,q as j,w as ee,y as V,z as A}from"./chunk-XCZREHWX.js";import{b as ie}from"./chunk-5CDZD4QO.js";import{c as Q}from"./chunk-5NJQH2A3.js";import{a as ce}from"./chunk-MJUBX7V2.js";import{h as U,k}from"./chunk-NCJAIFQO.js";import{a as S,b as $}from"./chunk-P5BH5BCJ.js";import{Ac as s,Bc as l,Cc as Y,Jb as u,Kb as f,Pb as g,Rb as K,Sb as W,Tb as X,Ub as i,Vb as n,Wb as p,Zc as P,_b as D,bc as b,cc as v,g as de,gb as e,ma as c,mc as m,nc as d,oc as C,tb as E,ua as B,va as T,wc as I,zb as h}from"./chunk-V7KKBEKT.js";function ue(r,y){r&1&&(i(0,"ngb-alert",13)(1,"p",20),m(2),s(3,"translate"),n()()),r&2&&(f("dismissible",!1),e(2),d(l(3,2,"login.invalid_password")))}var re=(()=>{class r{$activeModal=c(G);$api=c(k);$toastr=c(U);$translate=c(S);formGroup=new N({password:new w("",[x.required])});invalidCredentials=!1;constructor(){}disable2fa(){this.invalidCredentials=!1,this.$api.post("/users/otp/deactivate",this.formGroup.value).subscribe({next:()=>{this.$activeModal.close(),this.$toastr.success(this.$translate.instant("users.setup_2fa_disable_success"),this.$translate.instant("toast.title_success"))},error:()=>{this.formGroup.setValue({password:""}),this.invalidCredentials=!0}})}static \u0275fac=function(o){return new(o||r)};static \u0275cmp=E({type:r,selectors:[["ng-component"]],decls:34,vars:27,consts:[[1,"modal-content",2,"min-height","300px"],[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-fw","fa-key","primary-text",2,"font-size","75px"],[1,"mb-3"],[1,"list-group","list-group-box","mb-0"],[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,"text-start","text-md-end","w-100","w-md-50"],["type","password","autocomplete","current-password",1,"form-control","custom-input",3,"formControl","placeholder"],["type","error",1,"mt-3","mb-0",3,"dismissible"],[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-danger",3,"click","disabled"],[1,"mb-0"]],template:function(o,a){o&1&&(i(0,"div",0)(1,"div",1)(2,"h5",2),m(3),s(4,"translate"),n(),i(5,"button",3),s(6,"translate"),b("click",function(){return a.$activeModal.dismiss("Dismiss")}),n()(),i(7,"div",4)(8,"div",5),p(9,"i",6),n(),i(10,"ul",7)(11,"li"),m(12),s(13,"translate"),n()(),i(14,"ul",8)(15,"li",9)(16,"label",10),m(17),s(18,"translate"),n(),i(19,"div",11),p(20,"input",12),s(21,"translate"),n()()(),h(22,ue,4,4,"ngb-alert",13),n(),i(23,"div",14)(24,"div",15)(25,"button",16),s(26,"translate"),b("click",function(){return a.$activeModal.dismiss("Dismiss")}),m(27),s(28,"translate"),n()(),p(29,"div",17),i(30,"div",18)(31,"button",19),b("click",function(){return a.disable2fa()}),m(32),s(33,"translate"),n()()()()),o&2&&(e(3),d(l(4,11,"users.setup_2fa_disable")),e(2),u("aria-label",l(6,13,"form.button_close")),e(7),d(l(13,15,"users.setup_2fa_disable_current_password")),e(5),d(l(18,17,"users.label_password")),e(3),f("formControl",a.formGroup.controls.password)("placeholder",l(21,19,"users.label_password")),e(2),g(a.invalidCredentials&&!a.formGroup.controls.password.value?22:-1),e(3),u("aria-label",l(26,21,"form.button_close")),e(2),C(" ",l(28,23,"form.button_close")," "),e(4),f("disabled",a.formGroup.invalid),e(),C(" ",l(33,25,"form.button_disable")," "))},dependencies:[V,M,F,A,R,$,O],encapsulation:2})}return r})();var ae=de(ce(),1);var fe=r=>({timeDiffError:r});function be(r,y){r&1&&(i(0,"li"),m(1),s(2,"translate"),n()),r&2&&(e(),d(l(2,1,"users.setup_2fa_scan_qr_code")))}function _e(r,y){if(r&1&&(i(0,"ngb-alert",8)(1,"p",16),m(2),s(3,"translate"),n(),i(4,"p",17),m(5),s(6,"translate"),n()()),r&2){let t=v();f("dismissible",!1),e(2),d(l(3,3,"users.setup_2fa_cannot_setup_2fa")),e(3),d(Y(6,5,"users.setup_2fa_server_time_out",I(8,fe,t.timeDiffError)))}}function ve(r,y){if(r&1&&(i(0,"ul",9)(1,"li",18)(2,"div",19),p(3,"app-qrcode",20),n()(),i(4,"li",21)(5,"label",22),m(6),s(7,"translate"),n(),i(8,"div",23),p(9,"input",24),n()()()),r&2){let t=v();e(3),f("data",t.otpString),e(3),d(l(7,3,"users.setup_2fa_enter_code")),e(3),f("formControl",t.formGroup.controls.code)}}function xe(r,y){if(r&1){let t=D();i(0,"button",25),s(1,"translate"),b("click",function(){B(t);let a=v();return T(a.$activeModal.dismiss("Dismiss"))}),m(2),s(3,"translate"),n()}r&2&&(u("aria-label",l(1,2,"form.button_close")),e(2),C(" ",l(3,4,"form.button_close")," "))}function we(r,y){if(r&1){let t=D();i(0,"button",25),s(1,"translate"),b("click",function(){B(t);let a=v();return T(a.$activeModal.dismiss("Dismiss"))}),m(2),s(3,"translate"),n()}r&2&&(u("aria-label",l(1,2,"form.button_close")),e(2),C(" ",l(3,4,"form.button_close")," "))}function Ce(r,y){if(r&1){let t=D();i(0,"button",26),b("click",function(){B(t);let a=v();return T(a.enable2fa())}),m(1),s(2,"translate"),n()}if(r&2){let t=v();f("disabled",t.formGroup.invalid),e(),C(" ",l(2,2,"form.button_enable")," ")}}var oe=(()=>{class r{$activeModal=c(G);$api=c(k);$toastr=c(U);$translate=c(S);user;timeDiffError=null;otpString;formGroup=new N({code:new w("",[x.required,x.minLength(6),x.maxLength(6)])});constructor(){}ngOnInit(){this.$api.post("/users/otp/setup",{}).subscribe({next:t=>{this.checkTimeDiff(t.timestamp),this.timeDiffError||(this.otpString=t.otpauth)},error:t=>{this.$activeModal.dismiss(),console.error(t),this.$toastr.error(this.$translate.instant("users.setup_2fa_enable_error"),this.$translate.instant("toast.title_error"))}})}checkTimeDiff(t){let o=(0,ae.default)(t).diff(new Date,"millisecond");o<-5e3||o>5e3?this.timeDiffError=o:this.timeDiffError=null}enable2fa(){this.$api.post("/users/otp/activate",this.formGroup.value).subscribe({next:()=>{this.$toastr.success(this.$translate.instant("users.setup_2fa_enabled_success"),this.$translate.instant("toast.title_success")),this.$activeModal.close()},error:t=>{console.error(t),this.$toastr.error(this.$translate.instant("users.setup_2fa_activate_error"),this.$translate.instant("toast.title_error"))}})}static \u0275fac=function(o){return new(o||r)};static \u0275cmp=E({type:r,selectors:[["ng-component"]],inputs:{user:"user"},decls:24,vars:15,consts:[[1,"modal-content","setup2fa"],[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-fw","fa-key","primary-text",2,"font-size","75px"],[1,"mb-3"],["type","error",1,"mb-0",3,"dismissible"],[1,"list-group","list-group-box","mb-0"],[1,"modal-footer","justify-content-between"],[1,"text-start"],["type","button","data-bs-dismiss","modal",1,"btn","btn-elegant"],[1,"text-center"],[1,"text-end"],["type","button","data-bs-dismiss","modal",1,"btn","btn-primary",3,"disabled"],[1,"fw-bold","mb-1"],[1,"mb-0"],[1,"list-group-item","text-center"],[1,"text-center","w-100","d-flex","justify-content-center"],[1,"mx-auto",2,"width","175px","height","175px",3,"data"],[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,"text-start","text-md-end","w-100","w-md-50"],["formControlName","username","type","text","placeholder","eg. 123456","autocomplete","one-time-code","autocapitalize","none","inputmode","numeric","pattern","[0-9]*",1,"form-control","custom-input",3,"formControl"],["type","button","data-bs-dismiss","modal",1,"btn","btn-elegant",3,"click"],["type","button","data-bs-dismiss","modal",1,"btn","btn-primary",3,"click","disabled"]],template:function(o,a){o&1&&(i(0,"div",0)(1,"div",1)(2,"h5",2),m(3),s(4,"translate"),n(),i(5,"button",3),s(6,"translate"),b("click",function(){return a.$activeModal.dismiss("Dismiss")}),n()(),i(7,"div",4)(8,"div",5),p(9,"i",6),n(),i(10,"ul",7)(11,"li"),m(12),s(13,"translate"),n(),h(14,be,3,3,"li"),n(),h(15,_e,7,10,"ngb-alert",8)(16,ve,10,5,"ul",9),n(),i(17,"div",10)(18,"div",11),h(19,xe,4,6,"button",12),n(),i(20,"div",13),h(21,we,4,6,"button",12),n(),i(22,"div",14),h(23,Ce,3,4,"button",15),n()()()),o&2&&(e(3),d(l(4,9,"users.setup_2fa")),e(2),u("aria-label",l(6,11,"form.button_close")),e(7),d(l(13,13,"users.setup_2fa_warning")),e(2),g(a.timeDiffError?-1:14),e(),g(a.timeDiffError?15:-1),e(),g(a.timeDiffError?-1:16),e(3),g(a.timeDiffError?-1:19),e(2),g(a.timeDiffError?21:-1),e(2),g(a.timeDiffError?-1:23))},dependencies:[O,ne,V,M,F,ee,A,R,j,$],encapsulation:2})}return r})();var se=r=>({"is-invalid":r}),le=(()=>{class r{$activeModal=c(G);$api=c(k);$toastr=c(U);$translate=c(S);form=new N({username:new w("",[x.required]),name:new w("",[x.required]),password:new w("",[x.compose([x.required,x.minLength(4)])]),passwordConfirm:new w("",[x.required]),admin:new w(!0)},this.matchPassword);page={title:"users.title_add_user",save:"users.button_add_new_user",password:"users.label_password"};constructor(){}matchPassword(t){let o=t.get("password").value,a=t.get("passwordConfirm").value;if(o!==a)t.get("passwordConfirm").setErrors({matchPassword:!0});else return null}onSubmit({value:t}){this.$api.post("/users",t).subscribe({next:()=>{this.$activeModal.close(),this.$toastr.success(this.$translate.instant("users.toast_added_new_user"),this.$translate.instant("toast.title_success"))},error:o=>{this.$toastr.error(o.error.message||this.$translate.instant("users.toast_failed_to_add_user"),this.$translate.instant("toast.title_error"))}})}static \u0275fac=function(o){return new(o||r)};static \u0275cmp=E({type:r,selectors:[["ng-component"]],decls:58,vars:50,consts:[[1,"modal-content"],["novalidate","",3,"ngSubmit","formGroup"],[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-fw","fa-user-plus","primary-text",2,"font-size","75px"],[1,"list-group","list-group-box","mb-0"],[1,"list-group-item","d-flex","flex-column","flex-md-row","align-items-center"],["for","form-username",1,"mb-2","mb-md-0","w-100","w-md-50"],[1,"text-start","text-md-end","w-100","w-md-50"],["formControlName","username","type","text","id","form-username","autocomplete","username","autocapitalize","none",1,"form-control","custom-input"],["for","form-name",1,"mb-2","mb-md-0","w-100","w-md-50"],["formControlName","name","type","text","id","form-name","autocomplete","name",1,"form-control","custom-input"],["for","form-pass",1,"mb-2","mb-md-0","w-100","w-md-50"],["formControlName","password","type","password","autocomplete","new-password","id","form-pass",1,"form-control","custom-input",3,"ngClass"],["for","form-pass-confirm",1,"mb-2","mb-md-0","w-100","w-md-50"],["formControlName","passwordConfirm","type","password","autocomplete","new-password","id","form-pass-confirm",1,"form-control","custom-input",3,"ngClass"],[1,"list-group-item","d-flex","justify-content-between","align-items-center","flex-row","pb-2"],[1,"text-start"],[1,"text-end","grey-text"],["type","checkbox","id","isAdmin",1,"rendux-input"],["for","isAdmin",1,"rendux-label","ms-3"],[1,"modal-footer","justify-content-between"],["type","button","data-bs-dismiss","modal",1,"btn","btn-elegant",3,"click"],[1,"text-center"],[1,"text-end"],["type","submit",1,"btn","btn-primary",3,"disabled"]],template:function(o,a){o&1&&(i(0,"div",0)(1,"form",1),b("ngSubmit",function(){return a.onSubmit(a.form)}),i(2,"div",2)(3,"h5",3),m(4),s(5,"translate"),n(),i(6,"button",4),s(7,"translate"),b("click",function(){return a.$activeModal.dismiss("Dismiss")}),n()(),i(8,"div",5)(9,"div",6),p(10,"i",7),n(),i(11,"ul",8)(12,"li",9)(13,"label",10),m(14),s(15,"translate"),n(),i(16,"div",11),p(17,"input",12),s(18,"translate"),n()(),i(19,"li",9)(20,"label",13),m(21),s(22,"translate"),n(),i(23,"div",11),p(24,"input",14),s(25,"translate"),n()(),i(26,"li",9)(27,"label",15),m(28),s(29,"translate"),n(),i(30,"div",11),p(31,"input",16),s(32,"translate"),n()(),i(33,"li",9)(34,"label",17),m(35),s(36,"translate"),n(),i(37,"div",11),p(38,"input",18),s(39,"translate"),n()(),i(40,"li",19)(41,"span",20),m(42),s(43,"translate"),n(),i(44,"div",21),p(45,"input",22),s(46,"translate"),p(47,"label",23),n()()()(),i(48,"div",24)(49,"div",20)(50,"button",25),b("click",function(){return a.$activeModal.dismiss("Dismiss")}),m(51),s(52,"translate"),n()(),p(53,"div",26),i(54,"div",27)(55,"button",28),m(56),s(57,"translate"),n()()()()()),o&2&&(e(),f("formGroup",a.form),e(3),d(l(5,18,"users.title_add_user")),e(2),u("aria-label",l(7,20,"form.button_close")),e(8),d(l(15,22,"users.label_username")),e(3),u("aria-label",l(18,24,"users.label_username")),e(4),d(l(22,26,"users.label_full_name")),e(3),u("aria-label",l(25,28,"users.label_full_name")),e(4),d(l(29,30,a.page.password)),e(3),f("ngClass",I(46,se,a.form.controls.password.dirty&&a.form.controls.password.errors)),u("aria-label",l(32,32,a.page.password)),e(4),d(l(36,34,"users.label_confirm_password")),e(3),f("ngClass",I(48,se,a.form.controls.passwordConfirm.dirty&&a.form.controls.passwordConfirm.errors)),u("aria-label",l(39,36,"users.label_confirm_password")),e(4),d(l(43,38,"users.label_admin_user")),e(3),u("aria-label",l(46,40,"users.label_admin_user")),e(6),C(" ",l(52,42,"form.button_close")," "),e(4),f("disabled",!a.form.valid),e(),C(" ",l(57,44,"form.button_save")," "))},dependencies:[V,q,M,F,z,A,L,j,P,$],encapsulation:2})}return r})();var me=r=>({"is-invalid":r});function ge(r,y){if(r&1&&(i(0,"li",9)(1,"label",27),m(2),s(3,"translate"),n(),i(4,"div",11),p(5,"input",28),s(6,"translate"),n()()),r&2){let t=v();e(2),d(l(3,3,"users.label_confirm_password")),e(3),f("ngClass",I(7,me,t.form.controls.passwordConfirm.dirty&&t.form.controls.passwordConfirm.errors)),u("aria-label",l(6,5,"users.label_confirm_password"))}}var pe=(()=>{class r{$activeModal=c(G);$api=c(k);$auth=c(Q);$toastr=c(U);$translate=c(S);user;form=new N({username:new w("",[x.required]),name:new w("",[x.required]),password:new w(""),passwordConfirm:new w(""),admin:new w(!0)},this.matchPassword);page={title:"users.title_edit_user",save:"form.button_save",password:"users.label_new_password"};isCurrentUser=!1;constructor(){}ngOnInit(){this.isCurrentUser=this.$auth.user.username===this.user.username,this.form.patchValue(this.user)}matchPassword(t){let o=t.get("password").value,a=t.get("passwordConfirm").value;if(o!==a)t.get("passwordConfirm").setErrors({matchPassword:!0});else return null}onSubmit({value:t}){this.$api.patch(`/users/${this.user.id}`,t).subscribe({next:()=>{this.$activeModal.close(),this.$toastr.success(this.$translate.instant("users.toast_updated_user"),this.$translate.instant("toast.title_success")),this.isCurrentUser&&t.username!==this.$auth.user.username&&this.$auth.logout()},error:o=>{console.error(o),this.$toastr.error(o.error.message||this.$translate.instant("users.toast_failed_to_add_user"),this.$translate.instant("toast.title_error"))}})}static \u0275fac=function(o){return new(o||r)};static \u0275cmp=E({type:r,selectors:[["ng-component"]],inputs:{user:"user"},decls:52,vars:42,consts:[[1,"modal-content"],["novalidate","",3,"ngSubmit","formGroup"],[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-fw","fa-user-pen","primary-text",2,"font-size","75px"],[1,"list-group","list-group-box","mb-0"],[1,"list-group-item","d-flex","flex-column","flex-md-row","align-items-center"],["for","form-username",1,"mb-2","mb-md-0","w-100","w-md-50"],[1,"text-start","text-md-end","w-100","w-md-50"],["formControlName","username","type","text","id","form-username","autocomplete","off","autocapitalize","none",1,"form-control","custom-input"],["for","form-name",1,"mb-2","mb-md-0","w-100","w-md-50"],["formControlName","name","type","text","id","form-name","autocomplete","name",1,"form-control","custom-input"],["for","form-pass",1,"mb-2","mb-md-0","w-100","w-md-50"],["formControlName","password","type","password","autocomplete","new-password","id","form-pass",1,"form-control","custom-input",3,"ngClass"],[1,"list-group-item","d-flex","justify-content-between","align-items-center","flex-row","pb-2"],[1,"text-start"],[1,"text-end","grey-text"],["type","checkbox","formControlName","admin","id","isAdmin",1,"rendux-input"],["for","isAdmin",1,"rendux-label","ms-3"],[1,"modal-footer","justify-content-between"],["type","button","data-bs-dismiss","modal",1,"btn","btn-elegant",3,"click"],[1,"text-center"],[1,"text-end"],["type","submit",1,"btn","btn-primary",3,"disabled"],["for","form-pass-confirm",1,"mb-2","mb-md-0","w-100","w-md-50"],["formControlName","passwordConfirm","type","password","autocomplete","new-password","id","form-pass-confirm",1,"form-control","custom-input",3,"ngClass"]],template:function(o,a){o&1&&(i(0,"div",0)(1,"form",1),b("ngSubmit",function(){return a.onSubmit(a.form)}),i(2,"div",2)(3,"h5",3),m(4),s(5,"translate"),n(),i(6,"button",4),s(7,"translate"),b("click",function(){return a.$activeModal.dismiss("Dismiss")}),n()(),i(8,"div",5)(9,"div",6),p(10,"i",7),n(),i(11,"ul",8)(12,"li",9)(13,"label",10),m(14),s(15,"translate"),n(),i(16,"div",11),p(17,"input",12),s(18,"translate"),n()(),i(19,"li",9)(20,"label",13),m(21),s(22,"translate"),n(),i(23,"div",11),p(24,"input",14),s(25,"translate"),n()(),i(26,"li",9)(27,"label",15),m(28),s(29,"translate"),n(),i(30,"div",11),p(31,"input",16),s(32,"translate"),n()(),h(33,ge,7,9,"li",9),i(34,"li",17)(35,"span",18),m(36),s(37,"translate"),n(),i(38,"div",19),p(39,"input",20),s(40,"translate"),p(41,"label",21),n()()()(),i(42,"div",22)(43,"div",18)(44,"button",23),b("click",function(){return a.$activeModal.dismiss("Dismiss")}),m(45),s(46,"translate"),n()(),p(47,"div",24),i(48,"div",25)(49,"button",26),m(50),s(51,"translate"),n()()()()()),o&2&&(e(),f("formGroup",a.form),e(3),d(l(5,16,"users.title_edit_user")),e(2),u("aria-label",l(7,18,"form.button_close")),e(8),d(l(15,20,"users.label_username")),e(3),u("aria-label",l(18,22,"users.label_username")),e(4),d(l(22,24,"users.label_full_name")),e(3),u("aria-label",l(25,26,"users.label_full_name")),e(4),d(l(29,28,a.page.password)),e(3),f("ngClass",I(40,me,a.form.controls.password.dirty&&a.form.controls.password.errors)),u("aria-label",l(32,30,a.page.password)),e(2),g(a.form.controls.password.value?33:-1),e(3),d(l(37,32,"users.label_admin_user")),e(3),u("aria-label",l(40,34,"users.label_admin_user")),e(6),C(" ",l(46,36,"form.button_close")," "),e(4),f("disabled",!a.form.valid),e(),C(" ",l(51,38,"form.button_save")," "))},dependencies:[V,q,M,Z,F,z,A,L,j,P,$],encapsulation:2})}return r})();function he(r,y){if(r&1){let t=D();i(0,"button",21),b("click",function(){B(t);let a=v().$implicit,_=v();return T(_.setup2fa(a))}),m(1),s(2,"translate"),n()}r&2&&(e(),d(l(2,1,"users.setup_2fa")))}function ye(r,y){if(r&1){let t=D();i(0,"button",17),b("click",function(){B(t);let a=v().$implicit,_=v();return T(_.disable2fa(a))}),m(1),s(2,"translate"),n()}r&2&&(e(),C(" ",l(2,1,"users.setup_2fa_disable")," "))}function Ee(r,y){if(r&1){let t=D();i(0,"div",7)(1,"div",8)(2,"div",9)(3,"div",10)(4,"span",11),p(5,"h4",12)(6,"h5",13),n()(),i(7,"div",14),h(8,he,3,3,"button",15)(9,ye,3,3,"button",16),i(10,"div")(11,"button",17),s(12,"translate"),b("click",function(){let a=B(t).$implicit,_=v();return T(_.openEditUser(a))}),p(13,"i",18),n(),i(14,"button",19),s(15,"translate"),b("click",function(){let a=B(t).$implicit,_=v();return T(_.deleteUser(a.id))}),p(16,"i",20),n()()()()()()}if(r&2){let t=y.$implicit,o=v();e(5),f("innerText",t.name),e(),f("innerText",t.username),e(2),g(o.$auth.user.username===t.username&&!t.otpActive?8:-1),e(),g(o.$auth.user.username===t.username&&t.otpActive?9:-1),e(2),u("aria-label",l(12,7,"form.button_edit")),e(3),f("disabled",o.$auth.user.username===t.username),u("aria-label",l(15,9,"form.button_delete"))}}var gt=(()=>{class r{$api=c(k);$auth=c(Q);$modal=c(te);$route=c(ie);$toastr=c(U);$translate=c(S);homebridgeUsers;constructor(){}ngOnInit(){this.$route.data.subscribe(t=>{this.homebridgeUsers=t.homebridgeUsers})}reloadUsers(){return this.$api.get("/users").subscribe(t=>{this.homebridgeUsers=t})}openAddNewUser(){this.$modal.open(le,{size:"lg",backdrop:"static"}).result.finally(()=>{this.reloadUsers()})}openEditUser(t){let o=this.$modal.open(pe,{size:"lg",backdrop:"static"});o.componentInstance.user=t,o.result.finally(()=>{this.reloadUsers()})}deleteUser(t){this.$api.delete(`/users/${t}`).subscribe({next:()=>{this.$toastr.success(this.$translate.instant("users.toast_user_deleted"),this.$translate.instant("toast.title_success")),this.reloadUsers()},error:o=>{console.error(o),this.$toastr.error(o.error.message||this.$translate.instant("users.toast_failed_to_delete_user"),this.$translate.instant("toast.title_error"))}})}setup2fa(t){let o=this.$modal.open(oe,{size:"lg",backdrop:"static"});o.componentInstance.user=t,o.result.finally(()=>{this.reloadUsers()})}disable2fa(t){let o=this.$modal.open(re,{size:"lg",backdrop:"static"});o.componentInstance.user=t,o.result.finally(()=>{this.reloadUsers()})}static \u0275fac=function(o){return new(o||r)};static \u0275cmp=E({type:r,selectors:[["app-users"]],decls:12,vars:6,consts:[[1,"row","mb-3"],[1,"col-9"],[1,"primary-text","m-0"],[1,"col-3","text-end"],[1,"btn","btn-elegant","waves-effect","m-0",3,"click"],[1,"fas","fa-fw","fa-user-plus"],[1,"row"],[1,"col-md-6","mb-4"],[1,"card","card-body"],[1,"d-flex","flex-column"],[1,"d-flex","flex-row","mb-3"],[1,"me-auto","my-0"],[3,"innerText"],[1,"small","text-truncate","primary-text",3,"innerText"],[1,"d-flex","flex-row","justify-content-between"],[1,"btn","btn-primary","m-0"],[1,"btn","btn-elegant","m-0"],[1,"btn","btn-elegant","m-0",3,"click"],[1,"fas","fa-fw","fa-user-pen"],[1,"btn","btn-danger","m-0","ms-2",3,"click","disabled"],[1,"fas","fa-fw","fa-trash"],[1,"btn","btn-primary","m-0",3,"click"]],template:function(o,a){o&1&&(i(0,"div",0)(1,"div",1)(2,"h3",2),m(3),s(4,"translate"),n()(),i(5,"div",3)(6,"button",4),s(7,"translate"),b("click",function(){return a.openAddNewUser()}),p(8,"i",5),n()()(),i(9,"div",6),W(10,Ee,17,11,"div",7,K),n()),o&2&&(e(3),d(l(4,2,"users.title_users")),e(3),u("aria-label",l(7,4,"users.button_add_user")),e(4),X(a.homebridgeUsers))},dependencies:[$],encapsulation:2})}return r})();export{re as a,oe as b,le as c,pe as d,gt as e};
@@ -0,0 +1 @@
1
+ import{b as a}from"./chunk-YIYI7U2L.js";import"./chunk-HMDNUXTY.js";import"./chunk-UQFNUGQM.js";import"./chunk-W7CPCAPT.js";import"./chunk-MS2EQS6S.js";import"./chunk-XCZREHWX.js";import"./chunk-X2NTV4U7.js";import"./chunk-5CDZD4QO.js";import"./chunk-5NJQH2A3.js";import"./chunk-MJUBX7V2.js";import"./chunk-NCJAIFQO.js";import"./chunk-KD5YLOUW.js";import"./chunk-P5BH5BCJ.js";import"./chunk-V7KKBEKT.js";export{a as AccessoriesComponent};
@@ -1 +1 @@
1
- import{a as D}from"./chunk-MAIN5YCW.js";import{d as E}from"./chunk-ZS7TMHAN.js";import{b as B}from"./chunk-Y5URZ5MZ.js";import{h as O,k as R}from"./chunk-BAWBN252.js";import{a as k,b as I}from"./chunk-2WNK6SOS.js";import{$c as T,Ac as o,Bc as l,Kb as _,Pb as u,Ub as r,Vb as n,Wb as v,_b as $,bc as S,cc as f,gb as e,ma as m,mc as a,nc as p,oc as x,tb as w,ua as C,va as y,wc as b,xc as g,zb as h}from"./chunk-NVNBNEFN.js";var U=(t,c)=>({"fas fa-fw fa-spinner fa-spin":t,"far fa-fw fa-check-circle":c}),F=t=>({"grey-text":t}),P=(t,c)=>({"far fa-fw fa-circle":t,"fas fa-fw fa-spinner fa-spin":c});function j(t,c){t&1&&(r(0,"p",7),a(1),o(2,"translate"),n()),t&2&&(e(),p(l(2,1,"restart.please_wait_while_server_restarts")))}function M(t,c){if(t&1&&(r(0,"div",8),a(1),n()),t&2){let i=f();e(),p(i.error)}}function V(t,c){if(t&1&&(r(0,"div",9)(1,"div",11)(2,"span"),v(3,"i",12),a(4),o(5,"translate"),n()(),r(6,"div",11)(7,"span",12),v(8,"i",12),a(9),o(10,"translate"),n()()()),t&2){let i=f();e(3),_("ngClass",g(9,U,!i.uiOnline,i.uiOnline)),e(),x(" ",l(5,5,"restart.ui_online")," "),e(3),_("ngClass",b(12,F,!i.uiOnline)),e(),_("ngClass",g(14,P,!i.uiOnline,i.uiOnline)),e(),x(" ",l(10,7,"restart.service_ready")," ")}}function z(t,c){if(t&1){let i=$();r(0,"p",15)(1,"button",16),S("click",function(){C(i);let d=f(2);return y(d.viewLogs())}),a(2),o(3,"translate"),n()()}t&2&&(e(2),p(l(3,1,"menu.tooltip_view_logs")))}function A(t,c){if(t&1&&(r(0,"div",10)(1,"p"),a(2),o(3,"translate"),n(),r(4,"p",13),a(5),o(6,"translate"),r(7,"span",14),a(8),n()(),h(9,z,4,3,"p",15),n()),t&2){let i=f();e(2),p(l(3,4,"restart.server_is_taking_long_time_to_restart")),e(3),x(" ",l(6,6,"restart.label_restart_command_executed"),": "),e(3),p(i.resp.command||"End Process"),e(),u(i.uiOnline?9:-1)}}var Y=(()=>{class t{$api=m(R);$router=m(E);$settings=m(B);$toastr=m(O);$translate=m(k);$ws=m(D);checkTimeout;checkDelay;resp={};timeout=!1;error=!1;uiOnline=!1;io;constructor(){}ngOnInit(){this.io=this.$ws.connectToNamespace("status"),this.io.connected.subscribe(()=>{this.io.socket.emit("monitor-server-status"),this.$settings.getAppSettings().catch(()=>{})}),this.$router.parseUrl(this.$router.url).queryParams.restarting?(this.uiOnline=!0,this.checkIfServerUp()):this.$api.put("/server/restart",{}).subscribe({next:s=>{this.resp=s,this.checkIfServerUp(),s.restartingUI||(this.uiOnline=!0)},error:s=>{console.error(s),this.error=this.$translate.instant("restart.toast_server_restart_error"),this.$toastr.error(this.$translate.instant("restart.toast_server_restart_error"),this.$translate.instant("toast.title_error"))}})}checkIfServerUp(){this.checkDelay=setTimeout(()=>{this.io.socket.on("homebridge-status",i=>{this.uiOnline=!0,(i.status==="up"||i.status==="pending")&&(this.$toastr.success(this.$translate.instant("restart.toast_server_restarted"),this.$translate.instant("toast.title_success")),this.$router.navigate(["/"]))})},7e3),this.checkTimeout=setTimeout(()=>{this.$toastr.warning(this.$translate.instant("restart.toast_server_restart_timeout"),this.$translate.instant("toast.title_warning"),{timeOut:1e4}),this.timeout=!0},4e4)}viewLogs(){this.$router.navigate(["/logs"])}ngOnDestroy(){this.io.end(),clearTimeout(this.checkDelay),clearTimeout(this.checkTimeout)}static \u0275fac=function(s){return new(s||t)};static \u0275cmp=w({type:t,selectors:[["ng-component"]],decls:15,vars:10,consts:[[1,"d-flex","justify-content-between"],[1,"primary-text","m-0"],[1,"my-4","align-items-center",2,"max-width","1000px","margin","auto"],[1,"w-100","text-center","primary-text","mb-5"],[1,"fas","fa-fw","fa-power-off",2,"font-size","75px"],[1,"text-center"],[1,"primary-text","mb-4"],[1,"grey-text"],[1,"alert","alert-error","my-4"],[1,"justify-content-center","my-4"],[1,"alert","alert-warning","my-4"],[1,"restart-progress-box","primary-text"],[3,"ngClass"],[1,"grey-text","mb-0"],[1,"font-monospace"],[1,"mt-2","mb-0"],[1,"btn","btn-primary","mb-0",3,"click"]],template:function(s,d){s&1&&(r(0,"div",0)(1,"h3",1),a(2),o(3,"translate"),n()(),r(4,"div",2)(5,"div",3),v(6,"i",4),n(),r(7,"div",5)(8,"h4",6),a(9),o(10,"translate"),n(),h(11,j,3,3,"p",7)(12,M,2,1,"div",8)(13,V,11,17,"div",9)(14,A,10,8,"div",10),n()()),s&2&&(e(2),p(l(3,6,"menu.restart.title")),e(7),p(l(10,8,"restart.title_restart")),e(2),u(d.error?-1:11),e(),u(d.error?12:-1),e(),u(d.error?-1:13),e(),u(d.timeout?14:-1))},dependencies:[T,I],styles:[".restart-progress-box[_ngcontent-%COMP%]{font-size:22px;font-weight:300;margin-top:15px}"]})}return t})();export{Y as a};
1
+ import{a as D}from"./chunk-X2NTV4U7.js";import{d as E}from"./chunk-5CDZD4QO.js";import{b as B}from"./chunk-MJUBX7V2.js";import{h as O,k as R}from"./chunk-NCJAIFQO.js";import{a as k,b as I}from"./chunk-P5BH5BCJ.js";import{Ac as o,Bc as l,Kb as _,Pb as u,Ub as r,Vb as n,Wb as v,Zc as T,_b as $,bc as S,cc as f,gb as e,ma as m,mc as a,nc as p,oc as x,tb as w,ua as C,va as y,wc as b,xc as g,zb as h}from"./chunk-V7KKBEKT.js";var U=(t,c)=>({"fas fa-fw fa-spinner fa-spin":t,"far fa-fw fa-check-circle":c}),F=t=>({"grey-text":t}),P=(t,c)=>({"far fa-fw fa-circle":t,"fas fa-fw fa-spinner fa-spin":c});function j(t,c){t&1&&(r(0,"p",7),a(1),o(2,"translate"),n()),t&2&&(e(),p(l(2,1,"restart.please_wait_while_server_restarts")))}function M(t,c){if(t&1&&(r(0,"div",8),a(1),n()),t&2){let i=f();e(),p(i.error)}}function V(t,c){if(t&1&&(r(0,"div",9)(1,"div",11)(2,"span"),v(3,"i",12),a(4),o(5,"translate"),n()(),r(6,"div",11)(7,"span",12),v(8,"i",12),a(9),o(10,"translate"),n()()()),t&2){let i=f();e(3),_("ngClass",g(9,U,!i.uiOnline,i.uiOnline)),e(),x(" ",l(5,5,"restart.ui_online")," "),e(3),_("ngClass",b(12,F,!i.uiOnline)),e(),_("ngClass",g(14,P,!i.uiOnline,i.uiOnline)),e(),x(" ",l(10,7,"restart.service_ready")," ")}}function z(t,c){if(t&1){let i=$();r(0,"p",15)(1,"button",16),S("click",function(){C(i);let d=f(2);return y(d.viewLogs())}),a(2),o(3,"translate"),n()()}t&2&&(e(2),p(l(3,1,"menu.tooltip_view_logs")))}function A(t,c){if(t&1&&(r(0,"div",10)(1,"p"),a(2),o(3,"translate"),n(),r(4,"p",13),a(5),o(6,"translate"),r(7,"span",14),a(8),n()(),h(9,z,4,3,"p",15),n()),t&2){let i=f();e(2),p(l(3,4,"restart.server_is_taking_long_time_to_restart")),e(3),x(" ",l(6,6,"restart.label_restart_command_executed"),": "),e(3),p(i.resp.command||"End Process"),e(),u(i.uiOnline?9:-1)}}var Y=(()=>{class t{$api=m(R);$router=m(E);$settings=m(B);$toastr=m(O);$translate=m(k);$ws=m(D);checkTimeout;checkDelay;resp={};timeout=!1;error=!1;uiOnline=!1;io;constructor(){}ngOnInit(){this.io=this.$ws.connectToNamespace("status"),this.io.connected.subscribe(()=>{this.io.socket.emit("monitor-server-status"),this.$settings.getAppSettings().catch(()=>{})}),this.$router.parseUrl(this.$router.url).queryParams.restarting?(this.uiOnline=!0,this.checkIfServerUp()):this.$api.put("/server/restart",{}).subscribe({next:s=>{this.resp=s,this.checkIfServerUp(),s.restartingUI||(this.uiOnline=!0)},error:s=>{console.error(s),this.error=this.$translate.instant("restart.toast_server_restart_error"),this.$toastr.error(this.$translate.instant("restart.toast_server_restart_error"),this.$translate.instant("toast.title_error"))}})}checkIfServerUp(){this.checkDelay=setTimeout(()=>{this.io.socket.on("homebridge-status",i=>{this.uiOnline=!0,(i.status==="up"||i.status==="pending")&&(this.$toastr.success(this.$translate.instant("restart.toast_server_restarted"),this.$translate.instant("toast.title_success")),this.$router.navigate(["/"]))})},7e3),this.checkTimeout=setTimeout(()=>{this.$toastr.warning(this.$translate.instant("restart.toast_server_restart_timeout"),this.$translate.instant("toast.title_warning"),{timeOut:1e4}),this.timeout=!0},4e4)}viewLogs(){this.$router.navigate(["/logs"])}ngOnDestroy(){this.io.end(),clearTimeout(this.checkDelay),clearTimeout(this.checkTimeout)}static \u0275fac=function(s){return new(s||t)};static \u0275cmp=w({type:t,selectors:[["ng-component"]],decls:15,vars:10,consts:[[1,"d-flex","justify-content-between"],[1,"primary-text","m-0"],[1,"my-4","align-items-center",2,"max-width","1000px","margin","auto"],[1,"w-100","text-center","primary-text","mb-5"],[1,"fas","fa-fw","fa-power-off",2,"font-size","75px"],[1,"text-center"],[1,"primary-text","mb-4"],[1,"grey-text"],[1,"alert","alert-error","my-4"],[1,"justify-content-center","my-4"],[1,"alert","alert-warning","my-4"],[1,"restart-progress-box","primary-text"],[3,"ngClass"],[1,"grey-text","mb-0"],[1,"font-monospace"],[1,"mt-2","mb-0"],[1,"btn","btn-primary","mb-0",3,"click"]],template:function(s,d){s&1&&(r(0,"div",0)(1,"h3",1),a(2),o(3,"translate"),n()(),r(4,"div",2)(5,"div",3),v(6,"i",4),n(),r(7,"div",5)(8,"h4",6),a(9),o(10,"translate"),n(),h(11,j,3,3,"p",7)(12,M,2,1,"div",8)(13,V,11,17,"div",9)(14,A,10,8,"div",10),n()()),s&2&&(e(2),p(l(3,6,"menu.restart.title")),e(7),p(l(10,8,"restart.title_restart")),e(2),u(d.error?-1:11),e(),u(d.error?12:-1),e(),u(d.error?-1:13),e(),u(d.timeout?14:-1))},dependencies:[T,I],styles:[".restart-progress-box[_ngcontent-%COMP%]{font-size:22px;font-weight:300;margin-top:15px}"]})}return t})();export{Y as a};
@@ -1 +1 @@
1
- import{ga as e,n as r}from"./chunk-NVNBNEFN.js";var n=(()=>{class t{raspberryPiThrottled=new r;static \u0275fac=function(o){return new(o||t)};static \u0275prov=e({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})();export{n as a};
1
+ import{ga as e,n as r}from"./chunk-V7KKBEKT.js";var n=(()=>{class t{raspberryPiThrottled=new r;static \u0275fac=function(o){return new(o||t)};static \u0275prov=e({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})();export{n as a};
@@ -0,0 +1 @@
1
+ import"./chunk-QGDGNYSY.js";import"./chunk-KIPITWHI.js";import"./chunk-AKQE7OWM.js";import"./chunk-QGC43YCF.js";import"./chunk-NSDMDB7X.js";import"./chunk-PVRKV6LM.js";import{q as n}from"./chunk-MS2EQS6S.js";import"./chunk-XCZREHWX.js";import"./chunk-X2NTV4U7.js";import{g as i}from"./chunk-5CDZD4QO.js";import"./chunk-5NJQH2A3.js";import"./chunk-MJUBX7V2.js";import"./chunk-NCJAIFQO.js";import"./chunk-KD5YLOUW.js";import{c as s}from"./chunk-P5BH5BCJ.js";import{gd as m,ha as t,ub as r}from"./chunk-V7KKBEKT.js";var f=[{path:"",loadComponent:()=>import("./chunk-O7E5GSDU.js").then(o=>o.LogsComponent)}],p=(()=>{class o{static \u0275fac=function(e){return new(e||o)};static \u0275mod=r({type:o});static \u0275inj=t({imports:[i.forChild(f),i]})}return o})();var h=(()=>{class o{static \u0275fac=function(e){return new(e||o)};static \u0275mod=r({type:o});static \u0275inj=t({imports:[m,p,n,s.forChild()]})}return o})();export{h as LogsModule};
@@ -1 +1 @@
1
- import{m as X}from"./chunk-WCXU6QPE.js";import{e as q,l as G,r as H,s as J,t as K,y as Q}from"./chunk-JKRWJSXD.js";import{d as te}from"./chunk-ZS7TMHAN.js";import{h as ee,k as ie}from"./chunk-BAWBN252.js";import{a as Y,b as Z}from"./chunk-2WNK6SOS.js";import{$c as z,Ac as d,Bc as m,Jb as $,Kb as b,Pb as u,Rb as k,Sb as E,Tb as T,Ub as a,Vb as o,Wb as B,_b as S,a as M,b as V,bc as h,cc as c,gb as s,h as F,ma as w,mc as l,nc as g,oc as I,pc as L,rc as N,sc as P,tb as U,tc as j,ua as f,va as C,w as A,xc as O,yc as W,zb as x}from"./chunk-NVNBNEFN.js";var se=(t,r)=>({"btn-danger":t,"btn-elegant":r}),ae=(t,r,e)=>({"fa-trash":t,"fa-undo":r,"fa-spinner fa-pulse":e});function oe(t,r){t&1&&(a(0,"div",12),B(1,"i",13),o(),a(2,"p",14),l(3),d(4,"translate"),o()),t&2&&(s(3),g(m(4,1,"reset.no_accessories")))}function re(t,r){if(t&1&&(a(0,"option",24),l(1),o()),t&2){let e=r.$implicit;b("value",e._id),s(),L("",e.name," (",e._username,")")}}function le(t,r){if(t&1){let e=S();a(0,"li",20),l(1),d(2,"translate"),o(),a(3,"li",18)(4,"label",21),l(5),d(6,"translate"),o(),a(7,"div",22)(8,"select",23),j("ngModelChange",function(i){f(e);let _=c(2);return P(_.selectedBridge,i)||(_.selectedBridge=i),C(i)}),h("change",function(i){f(e);let _=c(2);return C(_.onBridgeChange(i.target.value))}),E(9,re,2,3,"option",24,k),o()()()}if(t&2){let e=c(2);s(),g(m(2,3,"form.label.changes_kept")),s(4),g(m(6,5,"reset.accessory_ind.bridge")),s(3),N("ngModel",e.selectedBridge),s(),T(e.pairings)}}function ce(t,r){if(t&1&&(a(0,"li",18)(1,"label",25),l(2),d(3,"translate"),o(),a(4,"div",26),l(5),o()()),t&2){let e=c(2);s(2),g(m(3,2,"reset.accessory_ind.bridge")),s(3),I(" ",e.getCurrentlySelectedBridge()," ")}}function de(t,r){if(t&1){let e=S();a(0,"li",19)(1,"span"),l(2),B(3,"br"),a(4,"small")(5,"span",27),l(6),o()()(),a(7,"button",28),d(8,"translate"),h("click",function(){let i=f(e).$implicit,_=c(2);return C(_.toggleList(i.UUID,i.$cacheFile))}),B(9,"i",29),o()()}if(t&2){let e=r.$implicit,n=c(2);s(2),I(" ",e.displayName,""),s(4),g(e.UUID),s(),b("disabled",n.clicked)("ngClass",O(8,se,!n.isInList(e.UUID,e.$cacheFile),n.isInList(e.UUID,e.$cacheFile))),$("aria-label",m(8,6,"form.button_delete")),s(2),b("ngClass",W(11,ae,!n.isInList(e.UUID,e.$cacheFile),n.isInList(e.UUID,e.$cacheFile)&&!n.clicked,n.isInList(e.UUID,e.$cacheFile)&&n.clicked))}}function me(t,r){if(t&1&&(a(0,"div",12),B(1,"i",15),o(),a(2,"ul",16)(3,"li"),l(4),d(5,"translate"),o(),a(6,"li"),l(7),d(8,"translate"),o(),a(9,"li"),l(10),d(11,"translate"),o()(),a(12,"ul",17),x(13,le,11,7)(14,ce,6,4,"li",18),E(15,de,10,15,"li",19,k),o()),t&2){let e=c();s(4),g(m(5,5,"reset.accessory_ind.list_1")),s(3),g(m(8,7,"reset.accessory_ind.list_2")),s(3),g(m(11,9,"reset.accessory_ind.list_3")),s(3),u(e.pairings.length>1?13:-1),s(),u(e.pairings.length===1?14:-1),s(),T(e.selectedBridgeAccessories)}}function pe(t,r){if(t&1){let e=S();a(0,"button",30),h("click",function(){f(e);let i=c();return C(i.$activeModal.dismiss("Dismiss"))}),l(1),d(2,"translate"),o()}if(t&2){let e=c();b("disabled",e.clicked),s(),I(" ",m(2,2,"form.button_close")," ")}}function _e(t,r){if(t&1){let e=S();a(0,"button",31),h("click",function(){f(e);let i=c();return C(i.$activeModal.dismiss("Dismiss"))}),l(1),d(2,"translate"),o()}t&2&&(s(),I(" ",m(2,1,"form.button_close")," "))}function ue(t,r){if(t&1&&l(0),t&2){let e=c(3);I(" (",e.toDelete.length,") ")}}function ge(t,r){if(t&1&&(l(0),d(1,"translate"),x(2,ue,1,1)),t&2){let e=c(2);I(" ",m(1,2,"form.button_remove")," "),s(2),u(e.toDelete.length>0?2:-1)}}function xe(t,r){t&1&&B(0,"i",33)}function ve(t,r){if(t&1){let e=S();a(0,"button",32),h("click",function(){f(e);let i=c();return C(i.removeAccessories())}),x(1,ge,3,4)(2,xe,1,0,"i",33),o()}if(t&2){let e=c();b("disabled",!e.toDelete.length||e.clicked),s(),u(e.clicked?-1:1),s(),u(e.clicked?2:-1)}}var Te=(()=>{class t{$activeModal=w(X);$api=w(ie);$router=w(te);$toastr=w(ee);$translate=w(Y);pairings=[];selectedBridge="";clicked=!1;selectedBridgeAccessories=[];accessoriesExist=!1;toDelete=[];constructor(){}ngOnInit(){this.loadCachedAccessories()}loadCachedAccessories(){return F(this,null,function*(){var e;try{let[n,i]=yield Promise.all([A(this.$api.get("/server/cached-accessories")),A(this.$api.get("/server/pairings"))]),_=new Map(i.map(p=>[p._id,V(M({},p),{accessories:[]})]));n.sort((p,v)=>p.displayName.localeCompare(v.displayName)).forEach(p=>{var D,R;let v=i.find(ne=>ne._main),y=((R=(D=p.$cacheFile)==null?void 0:D.split("."))==null?void 0:R[1])||v._id;(!this.selectedBridge||this.selectedBridge===y)&&(_.has(y)||_.set(y,{_id:y,_username:y.match(/.{1,2}/g).join(":"),name:this.$translate.instant("reset.accessory_ind.unknown"),accessories:[]}),_.get(y).accessories.push(p))}),this.pairings=Array.from(_.values()).filter(p=>p.accessories.length>0).sort((p,v)=>p._main&&!v._main?-1:!p._main&&v._main?1:p.name.localeCompare(v.name)),this.selectedBridge=this.selectedBridge||((e=this.pairings[0])==null?void 0:e._id),this.selectedBridge&&(this.accessoriesExist=!0,this.selectedBridgeAccessories=this.pairings[0].accessories)}catch(n){console.error(n),this.$toastr.error(this.$translate.instant("reset.error_message"),this.$translate.instant("toast.title_error")),this.$activeModal.close()}})}onBridgeChange(e){var n;this.selectedBridge=e,this.selectedBridgeAccessories=(n=this.pairings.find(i=>i._id===this.selectedBridge))==null?void 0:n.accessories}getCurrentlySelectedBridge(){let e=this.pairings.find(n=>n._id===this.selectedBridge);return`${e.name} - ${e._username}`}toggleList(e,n){this.toDelete.some(i=>i.uuid===e&&i.cacheFile===n)?this.toDelete=this.toDelete.filter(i=>i.uuid!==e&&i.cacheFile!==n):this.toDelete.push({cacheFile:n,uuid:e})}isInList(e,n){return this.toDelete.some(i=>i.uuid===e&&i.cacheFile===n)}removeAccessories(){return this.clicked=!0,this.$api.delete("/server/cached-accessories",{body:this.toDelete}).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"))}})}static \u0275fac=function(n){return new(n||t)};static \u0275cmp=U({type:t,selectors:[["ng-component"]],inputs:{selectedBridge:"selectedBridge"},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-fw","fa-circle-check","primary-text",2,"font-size","75px"],[1,"mb-0","text-center"],[1,"fas","fa-fw","fa-network-wired","primary-text",2,"font-size","75px"],[1,"mb-3"],[1,"list-group","list-group-box","mb-0"],[1,"list-group-item","d-flex","flex-column","flex-md-row","align-items-center"],[1,"list-group-item","d-flex","justify-content-between","align-items-center"],[1,"list-group-item","text-center","grey-text","small"],["for","bridgeSelect",1,"mb-2","mb-md-0","w-100","w-md-50"],[1,"text-start","text-md-end","w-100","w-md-50"],["id","bridgeSelect",1,"custom-select",3,"ngModelChange","change","ngModel"],[3,"value"],[1,"mb-2","mb-md-0","w-100","w-md-50"],[1,"text-start","text-md-end","w-100","w-md-50","grey-text","font-monospace"],[1,"font-monospace","grey-text"],[1,"btn","btn-danger","m-0","ms-3",3,"click","disabled","ngClass"],[1,"fas","fa-fw",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-fw","fa-spinner","fa-pulse"]],template:function(n,i){n&1&&(a(0,"div",0)(1,"div",1)(2,"h5",2),l(3),d(4,"translate"),o(),a(5,"button",3),d(6,"translate"),h("click",function(){return i.$activeModal.dismiss("Dismiss")}),o()(),a(7,"div",4),x(8,oe,5,3)(9,me,17,11),o(),a(10,"div",5)(11,"div",6),x(12,pe,3,4,"button",7),o(),a(13,"div",8),x(14,_e,3,3,"button",9),o(),a(15,"div",10),x(16,ve,3,3,"button",11),o()()()),n&2&&(s(3),g(m(4,8,"reset.accessory_ind.title")),s(2),b("disabled",i.clicked),$("aria-label",m(6,10,"form.button_close")),s(3),u(i.accessoriesExist?-1:8),s(),u(i.accessoriesExist?9:-1),s(3),u(i.accessoriesExist?12:-1),s(2),u(i.accessoriesExist?-1:14),s(2),u(i.accessoriesExist?16:-1))},dependencies:[z,Z,Q,J,K,H,q,G],encapsulation:2})}return t})();export{Te as a};
1
+ import{m as X}from"./chunk-MS2EQS6S.js";import{e as q,l as G,r as H,s as J,t as K,y as Q}from"./chunk-XCZREHWX.js";import{d as te}from"./chunk-5CDZD4QO.js";import{h as ee,k as ie}from"./chunk-NCJAIFQO.js";import{a as Y,b as Z}from"./chunk-P5BH5BCJ.js";import{Ac as d,Bc as m,Jb as $,Kb as b,Pb as u,Rb as k,Sb as E,Tb as T,Ub as a,Vb as o,Wb as B,Zc as z,_b as S,a as M,b as V,bc as h,cc as c,gb as s,h as F,ma as w,mc as l,nc as g,oc as I,pc as L,rc as N,sc as P,tb as U,tc as j,ua as f,va as C,w as A,xc as O,yc as W,zb as x}from"./chunk-V7KKBEKT.js";var se=(t,r)=>({"btn-danger":t,"btn-elegant":r}),ae=(t,r,e)=>({"fa-trash":t,"fa-undo":r,"fa-spinner fa-pulse":e});function oe(t,r){t&1&&(a(0,"div",12),B(1,"i",13),o(),a(2,"p",14),l(3),d(4,"translate"),o()),t&2&&(s(3),g(m(4,1,"reset.no_accessories")))}function re(t,r){if(t&1&&(a(0,"option",24),l(1),o()),t&2){let e=r.$implicit;b("value",e._id),s(),L("",e.name," (",e._username,")")}}function le(t,r){if(t&1){let e=S();a(0,"li",20),l(1),d(2,"translate"),o(),a(3,"li",18)(4,"label",21),l(5),d(6,"translate"),o(),a(7,"div",22)(8,"select",23),j("ngModelChange",function(i){f(e);let _=c(2);return P(_.selectedBridge,i)||(_.selectedBridge=i),C(i)}),h("change",function(i){f(e);let _=c(2);return C(_.onBridgeChange(i.target.value))}),E(9,re,2,3,"option",24,k),o()()()}if(t&2){let e=c(2);s(),g(m(2,3,"form.label.changes_kept")),s(4),g(m(6,5,"reset.accessory_ind.bridge")),s(3),N("ngModel",e.selectedBridge),s(),T(e.pairings)}}function ce(t,r){if(t&1&&(a(0,"li",18)(1,"label",25),l(2),d(3,"translate"),o(),a(4,"div",26),l(5),o()()),t&2){let e=c(2);s(2),g(m(3,2,"reset.accessory_ind.bridge")),s(3),I(" ",e.getCurrentlySelectedBridge()," ")}}function de(t,r){if(t&1){let e=S();a(0,"li",19)(1,"span"),l(2),B(3,"br"),a(4,"small")(5,"span",27),l(6),o()()(),a(7,"button",28),d(8,"translate"),h("click",function(){let i=f(e).$implicit,_=c(2);return C(_.toggleList(i.UUID,i.$cacheFile))}),B(9,"i",29),o()()}if(t&2){let e=r.$implicit,n=c(2);s(2),I(" ",e.displayName,""),s(4),g(e.UUID),s(),b("disabled",n.clicked)("ngClass",O(8,se,!n.isInList(e.UUID,e.$cacheFile),n.isInList(e.UUID,e.$cacheFile))),$("aria-label",m(8,6,"form.button_delete")),s(2),b("ngClass",W(11,ae,!n.isInList(e.UUID,e.$cacheFile),n.isInList(e.UUID,e.$cacheFile)&&!n.clicked,n.isInList(e.UUID,e.$cacheFile)&&n.clicked))}}function me(t,r){if(t&1&&(a(0,"div",12),B(1,"i",15),o(),a(2,"ul",16)(3,"li"),l(4),d(5,"translate"),o(),a(6,"li"),l(7),d(8,"translate"),o(),a(9,"li"),l(10),d(11,"translate"),o()(),a(12,"ul",17),x(13,le,11,7)(14,ce,6,4,"li",18),E(15,de,10,15,"li",19,k),o()),t&2){let e=c();s(4),g(m(5,5,"reset.accessory_ind.list_1")),s(3),g(m(8,7,"reset.accessory_ind.list_2")),s(3),g(m(11,9,"reset.accessory_ind.list_3")),s(3),u(e.pairings.length>1?13:-1),s(),u(e.pairings.length===1?14:-1),s(),T(e.selectedBridgeAccessories)}}function pe(t,r){if(t&1){let e=S();a(0,"button",30),h("click",function(){f(e);let i=c();return C(i.$activeModal.dismiss("Dismiss"))}),l(1),d(2,"translate"),o()}if(t&2){let e=c();b("disabled",e.clicked),s(),I(" ",m(2,2,"form.button_close")," ")}}function _e(t,r){if(t&1){let e=S();a(0,"button",31),h("click",function(){f(e);let i=c();return C(i.$activeModal.dismiss("Dismiss"))}),l(1),d(2,"translate"),o()}t&2&&(s(),I(" ",m(2,1,"form.button_close")," "))}function ue(t,r){if(t&1&&l(0),t&2){let e=c(3);I(" (",e.toDelete.length,") ")}}function ge(t,r){if(t&1&&(l(0),d(1,"translate"),x(2,ue,1,1)),t&2){let e=c(2);I(" ",m(1,2,"form.button_remove")," "),s(2),u(e.toDelete.length>0?2:-1)}}function xe(t,r){t&1&&B(0,"i",33)}function ve(t,r){if(t&1){let e=S();a(0,"button",32),h("click",function(){f(e);let i=c();return C(i.removeAccessories())}),x(1,ge,3,4)(2,xe,1,0,"i",33),o()}if(t&2){let e=c();b("disabled",!e.toDelete.length||e.clicked),s(),u(e.clicked?-1:1),s(),u(e.clicked?2:-1)}}var Te=(()=>{class t{$activeModal=w(X);$api=w(ie);$router=w(te);$toastr=w(ee);$translate=w(Y);pairings=[];selectedBridge="";clicked=!1;selectedBridgeAccessories=[];accessoriesExist=!1;toDelete=[];constructor(){}ngOnInit(){this.loadCachedAccessories()}loadCachedAccessories(){return F(this,null,function*(){var e;try{let[n,i]=yield Promise.all([A(this.$api.get("/server/cached-accessories")),A(this.$api.get("/server/pairings"))]),_=new Map(i.map(p=>[p._id,V(M({},p),{accessories:[]})]));n.sort((p,v)=>p.displayName.localeCompare(v.displayName)).forEach(p=>{var D,R;let v=i.find(ne=>ne._main),y=((R=(D=p.$cacheFile)==null?void 0:D.split("."))==null?void 0:R[1])||v._id;(!this.selectedBridge||this.selectedBridge===y)&&(_.has(y)||_.set(y,{_id:y,_username:y.match(/.{1,2}/g).join(":"),name:this.$translate.instant("reset.accessory_ind.unknown"),accessories:[]}),_.get(y).accessories.push(p))}),this.pairings=Array.from(_.values()).filter(p=>p.accessories.length>0).sort((p,v)=>p._main&&!v._main?-1:!p._main&&v._main?1:p.name.localeCompare(v.name)),this.selectedBridge=this.selectedBridge||((e=this.pairings[0])==null?void 0:e._id),this.selectedBridge&&(this.accessoriesExist=!0,this.selectedBridgeAccessories=this.pairings[0].accessories)}catch(n){console.error(n),this.$toastr.error(this.$translate.instant("reset.error_message"),this.$translate.instant("toast.title_error")),this.$activeModal.close()}})}onBridgeChange(e){var n;this.selectedBridge=e,this.selectedBridgeAccessories=(n=this.pairings.find(i=>i._id===this.selectedBridge))==null?void 0:n.accessories}getCurrentlySelectedBridge(){let e=this.pairings.find(n=>n._id===this.selectedBridge);return`${e.name} - ${e._username}`}toggleList(e,n){this.toDelete.some(i=>i.uuid===e&&i.cacheFile===n)?this.toDelete=this.toDelete.filter(i=>i.uuid!==e||i.cacheFile!==n):this.toDelete.push({cacheFile:n,uuid:e})}isInList(e,n){return this.toDelete.some(i=>i.uuid===e&&i.cacheFile===n)}removeAccessories(){return this.clicked=!0,this.$api.delete("/server/cached-accessories",{body:this.toDelete}).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"))}})}static \u0275fac=function(n){return new(n||t)};static \u0275cmp=U({type:t,selectors:[["ng-component"]],inputs:{selectedBridge:"selectedBridge"},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-fw","fa-circle-check","primary-text",2,"font-size","75px"],[1,"mb-0","text-center"],[1,"fas","fa-fw","fa-network-wired","primary-text",2,"font-size","75px"],[1,"mb-3"],[1,"list-group","list-group-box","mb-0"],[1,"list-group-item","d-flex","flex-column","flex-md-row","align-items-center"],[1,"list-group-item","d-flex","justify-content-between","align-items-center"],[1,"list-group-item","text-center","grey-text","small"],["for","bridgeSelect",1,"mb-2","mb-md-0","w-100","w-md-50"],[1,"text-start","text-md-end","w-100","w-md-50"],["id","bridgeSelect",1,"custom-select",3,"ngModelChange","change","ngModel"],[3,"value"],[1,"mb-2","mb-md-0","w-100","w-md-50"],[1,"text-start","text-md-end","w-100","w-md-50","grey-text","font-monospace"],[1,"font-monospace","grey-text"],[1,"btn","btn-danger","m-0","ms-3",3,"click","disabled","ngClass"],[1,"fas","fa-fw",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-fw","fa-spinner","fa-pulse"]],template:function(n,i){n&1&&(a(0,"div",0)(1,"div",1)(2,"h5",2),l(3),d(4,"translate"),o(),a(5,"button",3),d(6,"translate"),h("click",function(){return i.$activeModal.dismiss("Dismiss")}),o()(),a(7,"div",4),x(8,oe,5,3)(9,me,17,11),o(),a(10,"div",5)(11,"div",6),x(12,pe,3,4,"button",7),o(),a(13,"div",8),x(14,_e,3,3,"button",9),o(),a(15,"div",10),x(16,ve,3,3,"button",11),o()()()),n&2&&(s(3),g(m(4,8,"reset.accessory_ind.title")),s(2),b("disabled",i.clicked),$("aria-label",m(6,10,"form.button_close")),s(3),u(i.accessoriesExist?-1:8),s(),u(i.accessoriesExist?9:-1),s(3),u(i.accessoriesExist?12:-1),s(2),u(i.accessoriesExist?-1:14),s(2),u(i.accessoriesExist?16:-1))},dependencies:[z,Z,Q,J,K,H,q,G],encapsulation:2})}return t})();export{Te as a};
@@ -1 +1 @@
1
- import{m as w}from"./chunk-WCXU6QPE.js";import{b as E}from"./chunk-2WNK6SOS.js";import{Ac as p,Bc as d,Jb as C,Kb as u,Ob as M,Pb as l,Ub as o,Vb as a,Wb as c,_b as k,bc as x,cb as b,cc as s,db as T,gb as i,ma as L,mc as _,nc as y,oc as v,tb as B,ua as I,va as g,zb as m}from"./chunk-NVNBNEFN.js";function H(t,f){if(t&1&&c(0,"i",15),t&2){let e=s();M("fas fa-fw ",e.faIconClass," mb-3")}}function S(t,f){if(t&1&&c(0,"h5",6),t&2){let e=s();u("innerHTML",e.subtitle,b)}}function h(t,f){if(t&1&&c(0,"p",8),t&2){let e=s();u("innerHTML",e.message2,b)}}function z(t,f){if(t&1){let e=k();o(0,"button",16),p(1,"translate"),x("click",function(){I(e);let n=s();return g(n.$activeModal.dismiss("Dismiss"))}),_(2),p(3,"translate"),a()}t&2&&(C("aria-label",d(1,2,"form.button_close")),i(2),v(" ",d(3,4,"form.button_close")," "))}function V(t,f){if(t&1){let e=k();o(0,"button",16),p(1,"translate"),x("click",function(){I(e);let n=s();return g(n.$activeModal.dismiss("Dismiss"))}),_(2),p(3,"translate"),a()}t&2&&(C("aria-label",d(1,2,"form.button_close")),i(2),v(" ",d(3,4,"form.button_close")," "))}function D(t,f){if(t&1&&(o(0,"a",14),_(1),c(2,"i",17),a()),t&2){let e=s();u("href",e.ctaButtonLink,T),i(),v(" ",e.ctaButtonLabel," ")}}var q=(()=>{class t{$activeModal=L(w);title;subtitle;message;message2;ctaButtonLabel;ctaButtonLink;faIconClass;constructor(){}static \u0275fac=function(r){return new(r||t)};static \u0275cmp=B({type:t,selectors:[["ng-component"]],inputs:{title:"title",subtitle:"subtitle",message:"message",message2:"message2",ctaButtonLabel:"ctaButtonLabel",ctaButtonLink:"ctaButtonLink",faIconClass:"faIconClass"},decls:18,vars:11,consts:[[1,"modal-content"],[1,"modal-header"],[1,"modal-title"],["type","button","data-bs-dismiss","modal",1,"btn-close",3,"click"],[1,"modal-body","text-center"],[2,"font-size","75px",3,"class"],[1,"mb-3",3,"innerHTML"],[1,"mb-0",3,"innerHTML"],[1,"mb-0","mt-3",3,"innerHTML"],[1,"modal-footer","justify-content-between"],[1,"text-start"],["type","button","data-bs-dismiss","modal",1,"btn","btn-elegant"],[1,"text-center"],[1,"text-end"],["target","_blank","rel","noopener noreferrer",1,"btn","btn-primary","text-decoration-none",3,"href"],[2,"font-size","75px"],["type","button","data-bs-dismiss","modal",1,"btn","btn-elegant",3,"click"],[1,"fas","fa-fw","fa-external-link-alt"]],template:function(r,n){r&1&&(o(0,"div",0)(1,"div",1)(2,"h5",2),_(3),a(),o(4,"button",3),p(5,"translate"),x("click",function(){return n.$activeModal.dismiss("Dismiss")}),a()(),o(6,"div",4),m(7,H,1,3,"i",5)(8,S,1,1,"h5",6),c(9,"p",7),m(10,h,1,1,"p",8),a(),o(11,"div",9)(12,"div",10),m(13,z,4,6,"button",11),a(),o(14,"div",12),m(15,V,4,6,"button",11),a(),o(16,"div",13),m(17,D,3,2,"a",14),a()()()),r&2&&(i(3),y(n.title),i(),C("aria-label",d(5,9,"form.button_close")),i(3),l(n.faIconClass?7:-1),i(),l(n.subtitle?8:-1),i(),u("innerHTML",n.message,b),i(),l(n.message2?10:-1),i(3),l(n.ctaButtonLink?13:-1),i(2),l(n.ctaButtonLink?-1:15),i(2),l(n.ctaButtonLink?17:-1))},dependencies:[E],encapsulation:2})}return t})();export{q as a};
1
+ import{m as w}from"./chunk-MS2EQS6S.js";import{b as E}from"./chunk-P5BH5BCJ.js";import{Ac as p,Bc as d,Jb as C,Kb as u,Ob as M,Pb as l,Ub as o,Vb as a,Wb as c,_b as k,bc as x,cb as b,cc as s,db as T,gb as i,ma as L,mc as _,nc as y,oc as v,tb as B,ua as I,va as g,zb as m}from"./chunk-V7KKBEKT.js";function H(t,f){if(t&1&&c(0,"i",15),t&2){let e=s();M("fas fa-fw ",e.faIconClass," mb-3")}}function S(t,f){if(t&1&&c(0,"h5",6),t&2){let e=s();u("innerHTML",e.subtitle,b)}}function h(t,f){if(t&1&&c(0,"p",8),t&2){let e=s();u("innerHTML",e.message2,b)}}function z(t,f){if(t&1){let e=k();o(0,"button",16),p(1,"translate"),x("click",function(){I(e);let n=s();return g(n.$activeModal.dismiss("Dismiss"))}),_(2),p(3,"translate"),a()}t&2&&(C("aria-label",d(1,2,"form.button_close")),i(2),v(" ",d(3,4,"form.button_close")," "))}function V(t,f){if(t&1){let e=k();o(0,"button",16),p(1,"translate"),x("click",function(){I(e);let n=s();return g(n.$activeModal.dismiss("Dismiss"))}),_(2),p(3,"translate"),a()}t&2&&(C("aria-label",d(1,2,"form.button_close")),i(2),v(" ",d(3,4,"form.button_close")," "))}function D(t,f){if(t&1&&(o(0,"a",14),_(1),c(2,"i",17),a()),t&2){let e=s();u("href",e.ctaButtonLink,T),i(),v(" ",e.ctaButtonLabel," ")}}var q=(()=>{class t{$activeModal=L(w);title;subtitle;message;message2;ctaButtonLabel;ctaButtonLink;faIconClass;constructor(){}static \u0275fac=function(r){return new(r||t)};static \u0275cmp=B({type:t,selectors:[["ng-component"]],inputs:{title:"title",subtitle:"subtitle",message:"message",message2:"message2",ctaButtonLabel:"ctaButtonLabel",ctaButtonLink:"ctaButtonLink",faIconClass:"faIconClass"},decls:18,vars:11,consts:[[1,"modal-content"],[1,"modal-header"],[1,"modal-title"],["type","button","data-bs-dismiss","modal",1,"btn-close",3,"click"],[1,"modal-body","text-center"],[2,"font-size","75px",3,"class"],[1,"mb-3",3,"innerHTML"],[1,"mb-0",3,"innerHTML"],[1,"mb-0","mt-3",3,"innerHTML"],[1,"modal-footer","justify-content-between"],[1,"text-start"],["type","button","data-bs-dismiss","modal",1,"btn","btn-elegant"],[1,"text-center"],[1,"text-end"],["target","_blank","rel","noopener noreferrer",1,"btn","btn-primary","text-decoration-none",3,"href"],[2,"font-size","75px"],["type","button","data-bs-dismiss","modal",1,"btn","btn-elegant",3,"click"],[1,"fas","fa-fw","fa-external-link-alt"]],template:function(r,n){r&1&&(o(0,"div",0)(1,"div",1)(2,"h5",2),_(3),a(),o(4,"button",3),p(5,"translate"),x("click",function(){return n.$activeModal.dismiss("Dismiss")}),a()(),o(6,"div",4),m(7,H,1,3,"i",5)(8,S,1,1,"h5",6),c(9,"p",7),m(10,h,1,1,"p",8),a(),o(11,"div",9)(12,"div",10),m(13,z,4,6,"button",11),a(),o(14,"div",12),m(15,V,4,6,"button",11),a(),o(16,"div",13),m(17,D,3,2,"a",14),a()()()),r&2&&(i(3),y(n.title),i(),C("aria-label",d(5,9,"form.button_close")),i(3),l(n.faIconClass?7:-1),i(),l(n.subtitle?8:-1),i(),u("innerHTML",n.message,b),i(),l(n.message2?10:-1),i(3),l(n.ctaButtonLink?13:-1),i(2),l(n.ctaButtonLink?-1:15),i(2),l(n.ctaButtonLink?17:-1))},dependencies:[E],encapsulation:2})}return t})();export{q as a};
@@ -1 +1 @@
1
- import{g as T,m as C}from"./chunk-WCXU6QPE.js";import{b as h}from"./chunk-2WNK6SOS.js";import{$c as P,Ac as a,Bc as r,Cc as x,Jb as u,Kb as f,Pb as D,Rb as I,Sb as w,Tb as B,Ub as i,Vb as n,Wb as m,bc as c,cc as M,db as S,gb as e,ma as _,mc as o,nc as p,oc as g,tb as v,wc as y,zb as E}from"./chunk-NVNBNEFN.js";var $=t=>({pluginName:t});function O(t,k){t&1&&(i(0,"ul",7)(1,"li"),o(2),a(3,"translate"),n(),i(4,"li"),o(5),a(6,"translate"),n()()),t&2&&(e(2),p(r(3,2,"plugins.manage.confirm_disable_accessory_1")),e(3),p(r(6,4,"plugins.manage.confirm_disable_accessory_2")))}function j(t,k){t&1&&(i(0,"ul",7)(1,"li"),o(2),a(3,"translate"),n(),i(4,"li"),o(5),a(6,"translate"),n()()),t&2&&(e(2),p(r(3,2,"plugins.manage.confirm_disable_platform_1")),e(3),p(r(6,4,"plugins.manage.confirm_disable_platform_2")))}var H=(()=>{class t{$activeModal=_(C);pluginName;isConfigured=!1;isConfiguredDynamicPlatform=!1;constructor(){}static \u0275fac=function(d){return new(d||t)};static \u0275cmp=v({type:t,selectors:[["ng-component"]],inputs:{pluginName:"pluginName",isConfigured:"isConfigured",isConfiguredDynamicPlatform:"isConfiguredDynamicPlatform"},decls:26,vars:22,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,"mb-3","text-center"],[1,"fas","fa-fw","fa-circle-pause","primary-text",2,"font-size","75px"],[1,"mb-3"],["type","warning",1,"mb-0",3,"dismissible"],[1,"w-100","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"],[1,"text-center"],[1,"text-end"],["type","button","data-bs-dismiss","modal",1,"btn","btn-danger",3,"click"]],template:function(d,s){d&1&&(i(0,"div",0)(1,"div",1)(2,"h5",2),o(3),n(),i(4,"button",3),a(5,"translate"),c("click",function(){return s.$activeModal.dismiss("Dismiss")}),n()(),i(6,"div",4)(7,"div",5),m(8,"i",6),n(),E(9,O,7,6,"ul",7)(10,j,7,6,"ul",7),i(11,"ngb-alert",8)(12,"p",9),o(13),a(14,"translate"),n()()(),i(15,"div",10)(16,"div",11)(17,"button",12),a(18,"translate"),c("click",function(){return s.$activeModal.dismiss("Dismiss")}),o(19),a(20,"translate"),n()(),m(21,"div",13),i(22,"div",14)(23,"button",15),c("click",function(){return s.$activeModal.close()}),o(24),a(25,"translate"),n()()()()),d&2&&(e(3),p(s.pluginName),e(),u("aria-label",r(5,9,"form.button_close")),e(5),D(s.isConfigured&&!s.isConfiguredDynamicPlatform?9:-1),e(),D(s.isConfigured&&s.isConfiguredDynamicPlatform?10:-1),e(),f("dismissible",!1),e(2),p(x(14,11,"plugins.manage.confirm_disable",y(20,$,s.pluginName))),e(4),u("aria-label",r(18,14,"form.button_close")),e(2),g(" ",r(20,16,"form.button_close")," "),e(5),g(" ",r(25,18,"plugins.manage.disable")," "))},dependencies:[T,h],encapsulation:2})}return t})();var A=t=>({author:t});function F(t,k){if(t&1&&(i(0,"li",9),m(1,"i",15),i(2,"a",16),o(3),n()()),t&2){let l=k.$implicit,d=M();e(),f("ngClass",d.getIconClass(l.type)),e(),f("href",l.url,S),e(),p(l.url)}}var Y=(()=>{class t{$activeModal=_(C);plugin;fundingOptions;constructor(){}ngOnInit(){this.plugin.funding||this.$activeModal.close(),this.plugin.name==="homebridge-config-ui-x"&&(this.plugin.author="oznu"),Array.isArray(this.plugin.funding)?this.fundingOptions=this.plugin.funding.map(l=>{if(typeof l=="string")return{type:"other",url:l};if(typeof l=="object")return{type:l.type||"other",url:l.url}}):typeof this.plugin.funding=="string"?this.fundingOptions=[{type:"other",url:this.plugin.funding}]:typeof this.plugin.funding=="object"&&(this.fundingOptions=[{type:this.plugin.funding.type||"other",url:this.plugin.funding.url}])}getIconClass(l){switch(l.toLowerCase()){case"paypal":return"fab fa-fw fa-paypal";case"github":return"fab fa-fw fa-github";case"patreon":return"fab fa-fw fa-patreon";case"kofi":case"ko-fi":return"fas fa-fw fa-coffee";default:return"fas fa-fw fa-link"}}static \u0275fac=function(d){return new(d||t)};static \u0275cmp=v({type:t,selectors:[["ng-component"]],inputs:{plugin:"plugin"},decls:28,vars:21,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","pink-text","mb-3"],[1,"fas","fa-fw","fa-heart",2,"font-size","75px"],[1,"mb-3"],[1,"list-group","list-group-box"],[1,"list-group-item"],[1,"modal-footer","justify-content-between"],[1,"text-start"],[1,"text-center"],["type","button","data-bs-dismiss","modal",1,"btn","btn-elegant",3,"click"],[1,"text-end"],[1,"me-2","primary-text","fa-fw","fa-xl",3,"ngClass"],["target","_blank","rel","noopener noreferrer",1,"text-break-all",3,"href"]],template:function(d,s){d&1&&(i(0,"div",0)(1,"div",1)(2,"h5",2),o(3),a(4,"translate"),n(),i(5,"button",3),a(6,"translate"),c("click",function(){return s.$activeModal.dismiss("Dismiss")}),n()(),i(7,"div",4)(8,"div",5),m(9,"i",6),n(),i(10,"ul",7)(11,"li"),o(12),a(13,"translate"),n(),i(14,"li"),o(15),a(16,"translate"),n()(),i(17,"ul",8),w(18,F,4,3,"li",9,I),n()(),i(20,"div",10),m(21,"div",11),i(22,"div",12)(23,"button",13),a(24,"translate"),c("click",function(){return s.$activeModal.dismiss("Dismiss")}),o(25),a(26,"translate"),n()(),m(27,"div",14),n()()),d&2&&(e(3),p(x(4,6,"plugins.donate.tile_donate_to",y(19,A,"@"+s.plugin.author))),e(2),u("aria-label",r(6,9,"form.button_close")),e(7),p(r(13,11,"plugins.donate.message_1")),e(3),p(r(16,13,"plugins.donate.message_2")),e(3),B(s.fundingOptions),e(5),u("aria-label",r(24,15,"form.button_close")),e(2),g(" ",r(26,17,"form.button_close")," "))},dependencies:[P,h],styles:[".text-break-all[_ngcontent-%COMP%]{word-break:break-all}"]})}return t})();export{H as a,Y as b};
1
+ import{g as T,m as C}from"./chunk-MS2EQS6S.js";import{b as h}from"./chunk-P5BH5BCJ.js";import{Ac as a,Bc as r,Cc as x,Jb as u,Kb as f,Pb as D,Rb as I,Sb as w,Tb as B,Ub as i,Vb as n,Wb as m,Zc as P,bc as c,cc as M,db as S,gb as e,ma as _,mc as o,nc as p,oc as g,tb as v,wc as y,zb as E}from"./chunk-V7KKBEKT.js";var $=t=>({pluginName:t});function O(t,k){t&1&&(i(0,"ul",7)(1,"li"),o(2),a(3,"translate"),n(),i(4,"li"),o(5),a(6,"translate"),n()()),t&2&&(e(2),p(r(3,2,"plugins.manage.confirm_disable_accessory_1")),e(3),p(r(6,4,"plugins.manage.confirm_disable_accessory_2")))}function j(t,k){t&1&&(i(0,"ul",7)(1,"li"),o(2),a(3,"translate"),n(),i(4,"li"),o(5),a(6,"translate"),n()()),t&2&&(e(2),p(r(3,2,"plugins.manage.confirm_disable_platform_1")),e(3),p(r(6,4,"plugins.manage.confirm_disable_platform_2")))}var H=(()=>{class t{$activeModal=_(C);pluginName;isConfigured=!1;isConfiguredDynamicPlatform=!1;constructor(){}static \u0275fac=function(d){return new(d||t)};static \u0275cmp=v({type:t,selectors:[["ng-component"]],inputs:{pluginName:"pluginName",isConfigured:"isConfigured",isConfiguredDynamicPlatform:"isConfiguredDynamicPlatform"},decls:26,vars:22,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,"mb-3","text-center"],[1,"fas","fa-fw","fa-circle-pause","primary-text",2,"font-size","75px"],[1,"mb-3"],["type","warning",1,"mb-0",3,"dismissible"],[1,"w-100","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"],[1,"text-center"],[1,"text-end"],["type","button","data-bs-dismiss","modal",1,"btn","btn-danger",3,"click"]],template:function(d,s){d&1&&(i(0,"div",0)(1,"div",1)(2,"h5",2),o(3),n(),i(4,"button",3),a(5,"translate"),c("click",function(){return s.$activeModal.dismiss("Dismiss")}),n()(),i(6,"div",4)(7,"div",5),m(8,"i",6),n(),E(9,O,7,6,"ul",7)(10,j,7,6,"ul",7),i(11,"ngb-alert",8)(12,"p",9),o(13),a(14,"translate"),n()()(),i(15,"div",10)(16,"div",11)(17,"button",12),a(18,"translate"),c("click",function(){return s.$activeModal.dismiss("Dismiss")}),o(19),a(20,"translate"),n()(),m(21,"div",13),i(22,"div",14)(23,"button",15),c("click",function(){return s.$activeModal.close()}),o(24),a(25,"translate"),n()()()()),d&2&&(e(3),p(s.pluginName),e(),u("aria-label",r(5,9,"form.button_close")),e(5),D(s.isConfigured&&!s.isConfiguredDynamicPlatform?9:-1),e(),D(s.isConfigured&&s.isConfiguredDynamicPlatform?10:-1),e(),f("dismissible",!1),e(2),p(x(14,11,"plugins.manage.confirm_disable",y(20,$,s.pluginName))),e(4),u("aria-label",r(18,14,"form.button_close")),e(2),g(" ",r(20,16,"form.button_close")," "),e(5),g(" ",r(25,18,"plugins.manage.disable")," "))},dependencies:[T,h],encapsulation:2})}return t})();var A=t=>({author:t});function F(t,k){if(t&1&&(i(0,"li",9),m(1,"i",15),i(2,"a",16),o(3),n()()),t&2){let l=k.$implicit,d=M();e(),f("ngClass",d.getIconClass(l.type)),e(),f("href",l.url,S),e(),p(l.url)}}var Y=(()=>{class t{$activeModal=_(C);plugin;fundingOptions;constructor(){}ngOnInit(){this.plugin.funding||this.$activeModal.close(),this.plugin.name==="homebridge-config-ui-x"&&(this.plugin.author="oznu"),Array.isArray(this.plugin.funding)?this.fundingOptions=this.plugin.funding.map(l=>{if(typeof l=="string")return{type:"other",url:l};if(typeof l=="object")return{type:l.type||"other",url:l.url}}):typeof this.plugin.funding=="string"?this.fundingOptions=[{type:"other",url:this.plugin.funding}]:typeof this.plugin.funding=="object"&&(this.fundingOptions=[{type:this.plugin.funding.type||"other",url:this.plugin.funding.url}])}getIconClass(l){switch(l.toLowerCase()){case"paypal":return"fab fa-fw fa-paypal";case"github":return"fab fa-fw fa-github";case"patreon":return"fab fa-fw fa-patreon";case"kofi":case"ko-fi":return"fas fa-fw fa-coffee";default:return"fas fa-fw fa-link"}}static \u0275fac=function(d){return new(d||t)};static \u0275cmp=v({type:t,selectors:[["ng-component"]],inputs:{plugin:"plugin"},decls:28,vars:21,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","pink-text","mb-3"],[1,"fas","fa-fw","fa-heart",2,"font-size","75px"],[1,"mb-3"],[1,"list-group","list-group-box"],[1,"list-group-item"],[1,"modal-footer","justify-content-between"],[1,"text-start"],[1,"text-center"],["type","button","data-bs-dismiss","modal",1,"btn","btn-elegant",3,"click"],[1,"text-end"],[1,"me-2","primary-text","fa-fw","fa-xl",3,"ngClass"],["target","_blank","rel","noopener noreferrer",1,"text-break-all",3,"href"]],template:function(d,s){d&1&&(i(0,"div",0)(1,"div",1)(2,"h5",2),o(3),a(4,"translate"),n(),i(5,"button",3),a(6,"translate"),c("click",function(){return s.$activeModal.dismiss("Dismiss")}),n()(),i(7,"div",4)(8,"div",5),m(9,"i",6),n(),i(10,"ul",7)(11,"li"),o(12),a(13,"translate"),n(),i(14,"li"),o(15),a(16,"translate"),n()(),i(17,"ul",8),w(18,F,4,3,"li",9,I),n()(),i(20,"div",10),m(21,"div",11),i(22,"div",12)(23,"button",13),a(24,"translate"),c("click",function(){return s.$activeModal.dismiss("Dismiss")}),o(25),a(26,"translate"),n()(),m(27,"div",14),n()()),d&2&&(e(3),p(x(4,6,"plugins.donate.tile_donate_to",y(19,A,"@"+s.plugin.author))),e(2),u("aria-label",r(6,9,"form.button_close")),e(7),p(r(13,11,"plugins.donate.message_1")),e(3),p(r(16,13,"plugins.donate.message_2")),e(3),B(s.fundingOptions),e(5),u("aria-label",r(24,15,"form.button_close")),e(2),g(" ",r(26,17,"form.button_close")," "))},dependencies:[P,h],styles:[".text-break-all[_ngcontent-%COMP%]{word-break:break-all}"]})}return t})();export{H as a,Y as b};