homebridge-config-ui-x 5.11.2-alpha.0 → 5.11.2-alpha.1

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 (43) hide show
  1. package/package.json +1 -1
  2. package/public/{chunk-SOEFKTV3.js → chunk-3ND4FTJL.js} +1 -1
  3. package/public/{chunk-UR7BEPD4.js → chunk-4HRXISNZ.js} +1 -1
  4. package/public/{chunk-HGB7JMQB.js → chunk-4KYVPUTG.js} +1 -1
  5. package/public/{chunk-FXM34P2Q.js → chunk-6G6325AZ.js} +1 -1
  6. package/public/{chunk-W6MP663P.js → chunk-6IPZ57S4.js} +1 -1
  7. package/public/{chunk-63DEF4BP.js → chunk-74KAKFTX.js} +1 -1
  8. package/public/{chunk-G4TMATE3.js → chunk-77KQMZKD.js} +1 -1
  9. package/public/{chunk-P3D45344.js → chunk-7IMDRRHF.js} +1 -1
  10. package/public/{chunk-NF7H6G7M.js → chunk-7MHPXFPT.js} +1 -1
  11. package/public/{chunk-M5KMDWMD.js → chunk-A2VBYQGU.js} +1 -1
  12. package/public/{chunk-M5U3WH6U.js → chunk-AM2AGROH.js} +1 -1
  13. package/public/{chunk-22B4UCUR.js → chunk-BCAWAC5S.js} +1 -1
  14. package/public/{chunk-4X67MV5P.js → chunk-BRUFPV4S.js} +1 -1
  15. package/public/{chunk-PXNJ4PSF.js → chunk-CAB2VD3D.js} +1 -1
  16. package/public/{chunk-FIF6GB4H.js → chunk-CQHE4TU3.js} +1 -1
  17. package/public/{chunk-GARJCQR2.js → chunk-CZBBUBTH.js} +1 -1
  18. package/public/{chunk-S52YHDRI.js → chunk-F344NE7H.js} +1 -1
  19. package/public/{chunk-ZI6P36I2.js → chunk-FDD3SM5M.js} +1 -1
  20. package/public/{chunk-4KBAYZP7.js → chunk-FJCRSYAB.js} +1 -1
  21. package/public/{chunk-M72FKTRG.js → chunk-FL4D5IR7.js} +1 -1
  22. package/public/{chunk-4G547VQH.js → chunk-FOAHTHQO.js} +1 -1
  23. package/public/{chunk-LT4LVLTJ.js → chunk-GAI5J4YQ.js} +1 -1
  24. package/public/{chunk-P7RLJ6EQ.js → chunk-GV5JF2YJ.js} +1 -1
  25. package/public/{chunk-QOXXKL5T.js → chunk-GWQFQK2F.js} +1 -1
  26. package/public/{chunk-T5WI6HLG.js → chunk-IIAESTI5.js} +1 -1
  27. package/public/{chunk-CR6W3PUA.js → chunk-KTLG6VZT.js} +1 -1
  28. package/public/{chunk-YZZ7SAON.js → chunk-MW6H5Z5G.js} +1 -1
  29. package/public/{chunk-N2IMTG2V.js → chunk-O6MJC7P2.js} +1 -1
  30. package/public/{chunk-4O7BLLBH.js → chunk-OWEBBEZA.js} +1 -1
  31. package/public/{chunk-5QXXJI43.js → chunk-QPYSLZDC.js} +1 -1
  32. package/public/{chunk-S6JEMYUK.js → chunk-R24RQS2V.js} +3 -3
  33. package/public/{chunk-LPZZFOKR.js → chunk-R3PJ6UT3.js} +1 -1
  34. package/public/{chunk-JC74NWLG.js → chunk-RRYSODYJ.js} +1 -1
  35. package/public/{chunk-WYJ4N4TV.js → chunk-SIIM6WZ6.js} +3 -3
  36. package/public/{chunk-5YRG477U.js → chunk-TWVOLPMB.js} +1 -1
  37. package/public/{chunk-UQGRSMY3.js → chunk-UTCW7GEG.js} +1 -1
  38. package/public/{chunk-7D5NLF5A.js → chunk-VNSIIEIM.js} +1 -1
  39. package/public/{chunk-EVNAB6KB.js → chunk-VTSSBPGB.js} +1 -1
  40. package/public/{chunk-M4OD2EYP.js → chunk-W2OS6MJH.js} +1 -1
  41. package/public/{chunk-DGBI427A.js → chunk-ZAKTSIL5.js} +1 -1
  42. package/public/index.html +1 -1
  43. package/public/{main-QSNNOJ3S.js → main-HATN2V6Z.js} +1 -1
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "homebridge-config-ui-x",
3
3
  "displayName": "Homebridge UI",
4
4
  "type": "module",
5
- "version": "5.11.2-alpha.0",
5
+ "version": "5.11.2-alpha.1",
6
6
  "description": "A web based management, configuration and control platform for Homebridge.",
7
7
  "author": "oznu <dev@oz.nu>",
8
8
  "license": "MIT",
@@ -1 +1 @@
1
- import{m as D}from"./chunk-LT4LVLTJ.js";import{F as I}from"./chunk-YZZ7SAON.js";import{Ab as c,Ec as C,Fc as b,Jb as o,Kb as s,Lb as l,Rb as L,Sb as u,Ua as g,Yb as _,Za as n,Zb as m,aa as S,ga as E,ha as B,jc as x,kc as p,lc as T,mc as h,nb as y,sa as a,vc as M,yb as f,zb as r}from"./chunk-ZPXACREZ.js";function H(t,v){if(t&1&&l(0,"i",14),t&2){let e=m();x(M("fas ",e.faIconClassSignal()," mb-3"))}}function N(t,v){if(t&1&&l(0,"p",7),t&2){let e=m();u("innerHTML",e.message2Signal(),g)}}function R(t,v){if(t&1&&l(0,"p",7),t&2){let e=m();u("innerHTML",e.message3Signal(),g)}}function w(t,v){if(t&1){let e=L();o(0,"button",15),_("click",function(){E(e);let i=m();return B(i.closeModal())}),p(1),s()}if(t&2){let e=m();x(M("btn ",e.confirmButtonClassSignal()||"btn-primary")),n(),h(" ",e.confirmButtonLabelSignal()," ")}}var A=(()=>{class t{$activeModal=S(D);_title=a("",{});_message=a("",{});_message2=a(void 0,{});_message3=a(void 0,{});_confirmButtonLabel=a(void 0,{});_confirmButtonClass=a(void 0,{});_faIconClass=a(void 0,{});set title(e){this._title.set(e)}get title(){return this._title()}set message(e){this._message.set(e)}get message(){return this._message()}set message2(e){this._message2.set(e)}get message2(){return this._message2()}set message3(e){this._message3.set(e)}get message3(){return this._message3()}set confirmButtonLabel(e){this._confirmButtonLabel.set(e)}get confirmButtonLabel(){return this._confirmButtonLabel()}set confirmButtonClass(e){this._confirmButtonClass.set(e)}get confirmButtonClass(){return this._confirmButtonClass()}set faIconClass(e){this._faIconClass.set(e)}get faIconClass(){return this._faIconClass()}titleSignal=this._title.asReadonly();messageSignal=this._message.asReadonly();message2Signal=this._message2.asReadonly();message3Signal=this._message3.asReadonly();confirmButtonLabelSignal=this._confirmButtonLabel.asReadonly();confirmButtonClassSignal=this._confirmButtonClass.asReadonly();faIconClassSignal=this._faIconClass.asReadonly();dismissModal(){this.$activeModal.dismiss("Dismiss")}closeModal(){this.$activeModal.close()}static \u0275fac=function(d){return new(d||t)};static \u0275cmp=y({type:t,selectors:[["ng-component"]],decls:20,vars:16,consts:[["role","dialog","aria-modal","true",1,"modal-content"],[1,"modal-header"],["id","confirm-modal-title",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,"mt-2","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,"class"],[2,"font-size","75px"],["type","button","data-bs-dismiss","modal",3,"click"]],template:function(d,i){d&1&&(o(0,"div",0)(1,"div",1)(2,"h5",2),p(3),s(),o(4,"button",3),C(5,"translate"),_("click",function(){return i.dismissModal()}),s()(),o(6,"div",4),r(7,H,1,3,"i",5),l(8,"p",6),r(9,N,1,1,"p",7),r(10,R,1,1,"p",7),s(),o(11,"div",8)(12,"div",9)(13,"button",10),C(14,"translate"),_("click",function(){return i.dismissModal()}),p(15),C(16,"translate"),s()(),l(17,"div",11),o(18,"div",12),r(19,w,2,4,"button",13),s()()()),d&2&&(f("aria-labelledby","confirm-modal-title"),n(3),T(i.titleSignal()),n(),f("aria-label",b(5,10,"form.button_close")),n(3),c(i.faIconClassSignal()?7:-1),n(),u("innerHTML",i.messageSignal(),g),n(),c(i.message2Signal()?9:-1),n(),c(i.message3Signal()?10:-1),n(3),f("aria-label",b(14,12,"form.button_cancel")),n(2),h(" ",b(16,14,"form.button_cancel")," "),n(4),c(i.confirmButtonLabelSignal()?19:-1))},dependencies:[I],encapsulation:2})}return t})();export{A as a};
1
+ import{m as D}from"./chunk-GAI5J4YQ.js";import{F as I}from"./chunk-MW6H5Z5G.js";import{Ab as c,Ec as C,Fc as b,Jb as o,Kb as s,Lb as l,Rb as L,Sb as u,Ua as g,Yb as _,Za as n,Zb as m,aa as S,ga as E,ha as B,jc as x,kc as p,lc as T,mc as h,nb as y,sa as a,vc as M,yb as f,zb as r}from"./chunk-ZPXACREZ.js";function H(t,v){if(t&1&&l(0,"i",14),t&2){let e=m();x(M("fas ",e.faIconClassSignal()," mb-3"))}}function N(t,v){if(t&1&&l(0,"p",7),t&2){let e=m();u("innerHTML",e.message2Signal(),g)}}function R(t,v){if(t&1&&l(0,"p",7),t&2){let e=m();u("innerHTML",e.message3Signal(),g)}}function w(t,v){if(t&1){let e=L();o(0,"button",15),_("click",function(){E(e);let i=m();return B(i.closeModal())}),p(1),s()}if(t&2){let e=m();x(M("btn ",e.confirmButtonClassSignal()||"btn-primary")),n(),h(" ",e.confirmButtonLabelSignal()," ")}}var A=(()=>{class t{$activeModal=S(D);_title=a("",{});_message=a("",{});_message2=a(void 0,{});_message3=a(void 0,{});_confirmButtonLabel=a(void 0,{});_confirmButtonClass=a(void 0,{});_faIconClass=a(void 0,{});set title(e){this._title.set(e)}get title(){return this._title()}set message(e){this._message.set(e)}get message(){return this._message()}set message2(e){this._message2.set(e)}get message2(){return this._message2()}set message3(e){this._message3.set(e)}get message3(){return this._message3()}set confirmButtonLabel(e){this._confirmButtonLabel.set(e)}get confirmButtonLabel(){return this._confirmButtonLabel()}set confirmButtonClass(e){this._confirmButtonClass.set(e)}get confirmButtonClass(){return this._confirmButtonClass()}set faIconClass(e){this._faIconClass.set(e)}get faIconClass(){return this._faIconClass()}titleSignal=this._title.asReadonly();messageSignal=this._message.asReadonly();message2Signal=this._message2.asReadonly();message3Signal=this._message3.asReadonly();confirmButtonLabelSignal=this._confirmButtonLabel.asReadonly();confirmButtonClassSignal=this._confirmButtonClass.asReadonly();faIconClassSignal=this._faIconClass.asReadonly();dismissModal(){this.$activeModal.dismiss("Dismiss")}closeModal(){this.$activeModal.close()}static \u0275fac=function(d){return new(d||t)};static \u0275cmp=y({type:t,selectors:[["ng-component"]],decls:20,vars:16,consts:[["role","dialog","aria-modal","true",1,"modal-content"],[1,"modal-header"],["id","confirm-modal-title",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,"mt-2","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,"class"],[2,"font-size","75px"],["type","button","data-bs-dismiss","modal",3,"click"]],template:function(d,i){d&1&&(o(0,"div",0)(1,"div",1)(2,"h5",2),p(3),s(),o(4,"button",3),C(5,"translate"),_("click",function(){return i.dismissModal()}),s()(),o(6,"div",4),r(7,H,1,3,"i",5),l(8,"p",6),r(9,N,1,1,"p",7),r(10,R,1,1,"p",7),s(),o(11,"div",8)(12,"div",9)(13,"button",10),C(14,"translate"),_("click",function(){return i.dismissModal()}),p(15),C(16,"translate"),s()(),l(17,"div",11),o(18,"div",12),r(19,w,2,4,"button",13),s()()()),d&2&&(f("aria-labelledby","confirm-modal-title"),n(3),T(i.titleSignal()),n(),f("aria-label",b(5,10,"form.button_close")),n(3),c(i.faIconClassSignal()?7:-1),n(),u("innerHTML",i.messageSignal(),g),n(),c(i.message2Signal()?9:-1),n(),c(i.message3Signal()?10:-1),n(3),f("aria-label",b(14,12,"form.button_cancel")),n(2),h(" ",b(16,14,"form.button_cancel")," "),n(4),c(i.confirmButtonLabelSignal()?19:-1))},dependencies:[I],encapsulation:2})}return t})();export{A as a};
@@ -1 +1 @@
1
- import{b as c}from"./chunk-CR6W3PUA.js";import{J as r}from"./chunk-YZZ7SAON.js";import{X as a,aa as o}from"./chunk-ZPXACREZ.js";import{h as i}from"./chunk-B4AJQJMI.js";var h=(()=>{class t{cache=null;CACHE_DURATION_MS=6e4;getToken(){let n=Date.now();if(this.cache&&n-this.cache.timestamp<this.CACHE_DURATION_MS)return this.cache.token;let e=window.localStorage.getItem(r.jwt.tokenKey);return this.cache={token:e,timestamp:n},e}invalidateCache(){this.cache=null}static \u0275fac=function(e){return new(e||t)};static \u0275prov=a({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})();var p=(()=>{class t{$auth=o(c);$tokenCache=o(h);isAuthenticated(){return i(this,null,function*(){if(!this.$tokenCache.getToken())return this.$auth.token=null,this.$auth.user={},this.$tokenCache.invalidateCache(),!1;try{let e=this.$auth.isLoggedIn();return e||(this.$auth.token=null,this.$auth.user={},this.$tokenCache.invalidateCache()),e}catch{return console.warn("Token validation error, clearing auth state"),this.$auth.logout(),this.$tokenCache.invalidateCache(),!1}})}static \u0275fac=function(e){return new(e||t)};static \u0275prov=a({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})();export{p as a};
1
+ import{b as c}from"./chunk-KTLG6VZT.js";import{J as r}from"./chunk-MW6H5Z5G.js";import{X as a,aa as o}from"./chunk-ZPXACREZ.js";import{h as i}from"./chunk-B4AJQJMI.js";var h=(()=>{class t{cache=null;CACHE_DURATION_MS=6e4;getToken(){let n=Date.now();if(this.cache&&n-this.cache.timestamp<this.CACHE_DURATION_MS)return this.cache.token;let e=window.localStorage.getItem(r.jwt.tokenKey);return this.cache={token:e,timestamp:n},e}invalidateCache(){this.cache=null}static \u0275fac=function(e){return new(e||t)};static \u0275prov=a({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})();var p=(()=>{class t{$auth=o(c);$tokenCache=o(h);isAuthenticated(){return i(this,null,function*(){if(!this.$tokenCache.getToken())return this.$auth.token=null,this.$auth.user={},this.$tokenCache.invalidateCache(),!1;try{let e=this.$auth.isLoggedIn();return e||(this.$auth.token=null,this.$auth.user={},this.$tokenCache.invalidateCache()),e}catch{return console.warn("Token validation error, clearing auth state"),this.$auth.logout(),this.$tokenCache.invalidateCache(),!1}})}static \u0275fac=function(e){return new(e||t)};static \u0275prov=a({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})();export{p as a};
@@ -1 +1 @@
1
- import{E as v,F as E,H as h,K as _}from"./chunk-YZZ7SAON.js";import{Ab as x,Ec as p,Fc as d,Jb as i,Kb as e,Lb as f,Za as n,Zb as u,aa as l,kc as o,lc as a,nb as s,zb as c}from"./chunk-ZPXACREZ.js";import"./chunk-B4AJQJMI.js";function y(t,w){if(t&1&&(i(0,"div",7),o(1),e()),t&2){let r=u();n(),a(r.error)}}function C(t,w){t&1&&(i(0,"p",8),o(1),p(2,"translate"),e()),t&2&&(n(),a(d(2,1,"platform.linux.server_will_power_down")))}var B=(()=>{class t{$api=l(_);$toastr=l(h);$translate=l(v);error=!1;ngOnInit(){this.$api.put("/platform-tools/linux/shutdown-host",{}).catch(r=>{console.error(r),this.error=this.$translate.instant("platform.linux.server_restart_error"),this.$toastr.error(this.$translate.instant("platform.linux.server_restart_error"),this.$translate.instant("toast.title_error"))})}static \u0275fac=function(m){return new(m||t)};static \u0275cmp=s({type:t,selectors:[["ng-component"]],decls:13,vars:7,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-power-off",2,"font-size","75px"],[1,"text-center"],[1,"primary-text","mb-4"],[1,"alert","alert-error","my-4"],[1,"grey-text"]],template:function(m,S){m&1&&(i(0,"div",0)(1,"h3",1),o(2),p(3,"translate"),e()(),i(4,"div",2)(5,"div",3),f(6,"i",4),e(),i(7,"div",5)(8,"h4",6),o(9),p(10,"translate"),e(),c(11,y,2,1,"div",7)(12,C,3,3,"p",8),e()()),m&2&&(n(2),a(d(3,3,"menu.restart.title")),n(7),a(d(10,5,"platform.linux.shutting_down_server")),n(2),x(S.error?11:12))},dependencies:[E],encapsulation:2})}return t})();export{B as ShutdownLinuxComponent};
1
+ import{E as v,F as E,H as h,K as _}from"./chunk-MW6H5Z5G.js";import{Ab as x,Ec as p,Fc as d,Jb as i,Kb as e,Lb as f,Za as n,Zb as u,aa as l,kc as o,lc as a,nb as s,zb as c}from"./chunk-ZPXACREZ.js";import"./chunk-B4AJQJMI.js";function y(t,w){if(t&1&&(i(0,"div",7),o(1),e()),t&2){let r=u();n(),a(r.error)}}function C(t,w){t&1&&(i(0,"p",8),o(1),p(2,"translate"),e()),t&2&&(n(),a(d(2,1,"platform.linux.server_will_power_down")))}var B=(()=>{class t{$api=l(_);$toastr=l(h);$translate=l(v);error=!1;ngOnInit(){this.$api.put("/platform-tools/linux/shutdown-host",{}).catch(r=>{console.error(r),this.error=this.$translate.instant("platform.linux.server_restart_error"),this.$toastr.error(this.$translate.instant("platform.linux.server_restart_error"),this.$translate.instant("toast.title_error"))})}static \u0275fac=function(m){return new(m||t)};static \u0275cmp=s({type:t,selectors:[["ng-component"]],decls:13,vars:7,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-power-off",2,"font-size","75px"],[1,"text-center"],[1,"primary-text","mb-4"],[1,"alert","alert-error","my-4"],[1,"grey-text"]],template:function(m,S){m&1&&(i(0,"div",0)(1,"h3",1),o(2),p(3,"translate"),e()(),i(4,"div",2)(5,"div",3),f(6,"i",4),e(),i(7,"div",5)(8,"h4",6),o(9),p(10,"translate"),e(),c(11,y,2,1,"div",7)(12,C,3,3,"p",8),e()()),m&2&&(n(2),a(d(3,3,"menu.restart.title")),n(7),a(d(10,5,"platform.linux.shutting_down_server")),n(2),x(S.error?11:12))},dependencies:[E],encapsulation:2})}return t})();export{B as ShutdownLinuxComponent};
@@ -1 +1 @@
1
- import{m as ne}from"./chunk-LT4LVLTJ.js";import{e as z}from"./chunk-DGBI427A.js";import{C as ie,e as X,l as Y,t as Z,u as ee,w as te}from"./chunk-N2IMTG2V.js";import{b as Q}from"./chunk-PXNJ4PSF.js";import{E as G,F as H,H as J,K}from"./chunk-YZZ7SAON.js";import{Ab as h,Ac as O,Cb as M,Db as T,Eb as D,Ec as u,Fb as w,Fc as _,Gb as a,Hb as r,Ib as S,Oc as W,Rb as A,Xb as $,Za as s,Zb as m,aa as C,ga as b,ha as I,jc as E,kc as p,lc as f,mc as y,nb as N,nc as L,rc as P,sc as j,tc as q,yb as k,zb as g,zc as R}from"./chunk-ZPXACREZ.js";import{a as F,b as V,h as U}from"./chunk-B4AJQJMI.js";var oe=(t,l)=>({"fa-matter":t,"fa-hap":l}),ae=(t,l)=>({"btn-danger":t,"btn-elegant":l}),re=(t,l,e)=>({"fa-trash":t,"fa-undo":l,"fa-spinner fa-pulse":e});function ce(t,l){t&1&&(a(0,"div",12),S(1,"i",13),r(),a(2,"p",14),p(3),u(4,"translate"),r()),t&2&&(s(3),f(_(4,1,"reset.no_accessories")))}function le(t,l){if(t&1&&(a(0,"option",24),p(1),r()),t&2){let e=l.$implicit;w("value",e._id),s(),L("",e.name," (",e._username,")")}}function de(t,l){if(t&1){let e=A();a(0,"li",20),p(1),u(2,"translate"),r(),a(3,"li",18)(4,"label",21),p(5),u(6,"translate"),r(),a(7,"div",22)(8,"select",23),q("ngModelChange",function(i){b(e);let o=m(2);return j(o.selectedBridge,i)||(o.selectedBridge=i),I(i)}),$("change",function(i){b(e);let o=m(2);return I(o.onBridgeChange(i.target.value))}),T(9,le,2,3,"option",24,M),r()()()}if(t&2){let e=m(2);s(),f(_(2,3,"form.label.changes_kept")),s(4),f(_(6,5,"reset.accessory_ind.bridge")),s(3),P("ngModel",e.selectedBridge),s(),D(e.pairings)}}function pe(t,l){if(t&1&&(a(0,"li",18)(1,"label",25),p(2),u(3,"translate"),r(),a(4,"div",26),p(5),r()()),t&2){let e=m(2);s(2),f(_(3,2,"reset.accessory_ind.bridge")),s(3),y(" ",e.getCurrentlySelectedBridge()," ")}}function me(t,l){if(t&1){let e=A();a(0,"li",19)(1,"span",27),S(2,"i",28),r(),a(3,"span",29),p(4),S(5,"br"),a(6,"small")(7,"span",30),p(8),r()()(),a(9,"button",31),u(10,"translate"),$("click",function(){let i=b(e).$implicit,o=m(2);return I(o.toggleList(i.UUID||i.uuid,i.$cacheFile,i.$protocol,i.$deviceId))}),S(11,"i",32),r()()}if(t&2){let e=l.$implicit,n=m(2);s(2),E(R(12,oe,e.$protocol==="matter",e.$protocol!=="matter")),s(2),y(" ",e.displayName," "),s(4),f(e.UUID||e.uuid),s(),E(R(15,ae,!n.isInList(e.UUID||e.uuid,e.$cacheFile,e.$protocol),n.isInList(e.UUID||e.uuid,e.$cacheFile,e.$protocol))),w("disabled",n.clicked),k("aria-label",_(10,10,"form.button_delete")),s(2),E(O(18,re,!n.isInList(e.UUID||e.uuid,e.$cacheFile,e.$protocol),n.isInList(e.UUID||e.uuid,e.$cacheFile,e.$protocol)&&!n.clicked,n.isInList(e.UUID||e.uuid,e.$cacheFile,e.$protocol)&&n.clicked))}}function ue(t,l){if(t&1&&(a(0,"div",12),S(1,"i",15),r(),a(2,"ul",16)(3,"li"),p(4),u(5,"translate"),r(),a(6,"li"),p(7),u(8,"translate"),r(),a(9,"li"),p(10),u(11,"translate"),r()(),a(12,"ul",17),g(13,de,11,7),g(14,pe,6,4,"li",18),T(15,me,12,22,"li",19,M),r()),t&2){let e=m();s(4),f(_(5,5,"reset.accessory_ind.list_1")),s(3),f(_(8,7,"reset.accessory_ind.list_2")),s(3),f(_(11,9,"reset.accessory_ind.list_3")),s(3),h(e.pairings.length>1?13:-1),s(),h(e.pairings.length===1?14:-1),s(),D(e.selectedBridgeAccessories)}}function _e(t,l){if(t&1){let e=A();a(0,"button",33),$("click",function(){b(e);let i=m();return I(i.dismissModal())}),p(1),u(2,"translate"),r()}if(t&2){let e=m();w("disabled",e.clicked),s(),y(" ",_(2,2,"form.button_close")," ")}}function ge(t,l){if(t&1){let e=A();a(0,"button",34),$("click",function(){b(e);let i=m();return I(i.dismissModal())}),p(1),u(2,"translate"),r()}t&2&&(s(),y(" ",_(2,1,"form.button_close")," "))}function he(t,l){if(t&1&&p(0),t&2){let e=m(3);y(" (",e.toDelete.length,") ")}}function ve(t,l){if(t&1&&(p(0),u(1,"translate"),g(2,he,1,1)),t&2){let e=m(2);y(" ",_(1,2,"form.button_remove")," "),s(2),h(e.toDelete.length>0?2:-1)}}function fe(t,l){t&1&&S(0,"i",36)}function xe(t,l){if(t&1){let e=A();a(0,"button",35),$("click",function(){b(e);let i=m();return I(i.removeAccessories())}),g(1,ve,3,4),g(2,fe,1,0,"i",36),r()}if(t&2){let e=m();w("disabled",!e.toDelete.length||e.clicked),s(),h(e.clicked?-1:1),s(),h(e.clicked?2:-1)}}var Me=(()=>{class t{$activeModal=C(ne);$api=C(K);$router=C(z);$settings=C(Q);$toastr=C(J);$translate=C(G);isMatterSupported=this.$settings.isFeatureEnabled("matterSupport");selectedBridge=W.required({});pairings=[];clicked=!1;currentSelectedBridge="";selectedBridgeAccessories=[];accessoriesExist=!1;toDelete=[];ngOnInit(){this.currentSelectedBridge=this.selectedBridge(),this.loadCachedAccessories()}onBridgeChange(e){this.currentSelectedBridge=e,this.selectedBridgeAccessories=this.pairings.find(n=>n._id===this.currentSelectedBridge)?.accessories}getCurrentlySelectedBridge(){let e=this.pairings.find(n=>n._id===this.currentSelectedBridge);return`${e.name} - ${e._username}`}toggleList(e,n,i,o){this.toDelete.some(v=>v.uuid===e&&v.cacheFile===n&&v.protocol===i)?this.toDelete=this.toDelete.filter(v=>v.uuid!==e||v.cacheFile!==n||v.protocol!==i):this.toDelete.push({cacheFile:n,uuid:e,protocol:i,deviceId:o})}isInList(e,n,i){return this.toDelete.some(o=>o.uuid===e&&o.cacheFile===n&&o.protocol===i)}removeAccessories(){this.clicked=!0;let e=this.toDelete.filter(o=>o.protocol==="hap").map(o=>({uuid:o.uuid,cacheFile:o.cacheFile})),n=this.toDelete.filter(o=>o.protocol==="matter").map(o=>({uuid:o.uuid,deviceId:o.deviceId})),i=[];if(e.length>0&&i.push(this.$api.delete("/server/cached-accessories",{body:e})),this.isMatterSupported&&n.length>0&&i.push(this.$api.delete("/server/matter-accessories",{body:n})),i.length===0){this.clicked=!1;return}Promise.all(i).then(()=>{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}})}).catch(o=>{this.clicked=!1,console.error(o),this.$toastr.error(this.$translate.instant("reset.accessory_ind.fail"),this.$translate.instant("toast.title_error"))})}dismissModal(){this.$activeModal.dismiss("Dismiss")}loadCachedAccessories(){return U(this,null,function*(){try{let e=this.isMatterSupported?[this.$api.get("/server/cached-accessories"),this.$api.get("/server/matter-accessories"),this.$api.get("/server/pairings")]:[this.$api.get("/server/cached-accessories"),this.$api.get("/server/pairings")],n=yield Promise.all(e),i=n[0],o=this.isMatterSupported?n[1]:[],v=this.isMatterSupported?n[2]:n[1],x=new Map(v.map(c=>[c._id,V(F({},c),{accessories:[]})]));i.sort((c,d)=>c.displayName.localeCompare(d.displayName)).forEach(c=>{let d=v.find(se=>se._main),B=c.$cacheFile?.split(".")?.[1]||d._id;(!this.selectedBridge||this.selectedBridge===B)&&(x.has(B)||x.set(B,{_id:B,_username:B.match(/.{1,2}/g).join(":"),name:this.$translate.instant("reset.accessory_ind.unknown"),accessories:[]}),c.$protocol="hap",x.get(B).accessories.push(c))}),this.isMatterSupported&&o.sort((c,d)=>c.displayName.localeCompare(d.displayName)).forEach(c=>{let d=c.$deviceId;(!this.selectedBridge||this.selectedBridge===d)&&(x.has(d)||x.set(d,{_id:d,_username:d.match(/.{1,2}/g).join(":"),name:this.$translate.instant("reset.accessory_ind.unknown"),accessories:[]}),c.$protocol="matter",c.$cacheFile=d,x.get(d).accessories.push(c))}),this.pairings=Array.from(x.values()).filter(c=>c.accessories.length>0).sort((c,d)=>c._main&&!d._main?-1:!c._main&&d._main?1:c.name.localeCompare(d.name)),this.selectedBridge=this.selectedBridge||this.pairings[0]?._id,this.selectedBridge&&(this.accessoriesExist=!0,this.selectedBridgeAccessories=this.pairings[0].accessories)}catch(e){console.error(e),this.$toastr.error(this.$translate.instant("reset.error_message"),this.$translate.instant("toast.title_error")),this.$activeModal.close()}})}static \u0275fac=function(n){return new(n||t)};static \u0275cmp=N({type:t,selectors:[["ng-component"]],inputs:{selectedBridge:[1,"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-circle-check","primary-text",2,"font-size","75px"],[1,"mb-0","text-center"],[1,"fas","fa-network-wired","primary-text",2,"font-size","75px"],[1,"mb-3"],[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,"me-3"],[1,"fas","fa-lg"],[1,"flex-grow-1"],[1,"font-monospace","grey-text"],[1,"btn","btn-danger","m-0","ms-3",3,"click","disabled"],[1,"fas"],["type","button","data-bs-dismiss","modal",1,"btn","btn-elegant",3,"click","disabled"],["type","button","data-bs-dismiss","modal",1,"btn","btn-elegant",3,"click"],["type","button","data-bs-dismiss","modal",1,"btn","btn-danger",3,"click","disabled"],[1,"fas","fa-spinner","fa-pulse"]],template:function(n,i){n&1&&(a(0,"div",0)(1,"div",1)(2,"h5",2),p(3),u(4,"translate"),r(),a(5,"button",3),u(6,"translate"),$("click",function(){return i.dismissModal()}),r()(),a(7,"div",4),g(8,ce,5,3),g(9,ue,17,11),r(),a(10,"div",5)(11,"div",6),g(12,_e,3,4,"button",7),r(),a(13,"div",8),g(14,ge,3,3,"button",9),r(),a(15,"div",10),g(16,xe,3,3,"button",11),r()()()),n&2&&(s(3),f(_(4,8,"reset.accessory_ind.title")),s(2),w("disabled",i.clicked),k("aria-label",_(6,10,"form.button_close")),s(3),h(i.accessoriesExist?-1:8),s(),h(i.accessoriesExist?9:-1),s(3),h(i.accessoriesExist?12:-1),s(2),h(i.accessoriesExist?-1:14),s(2),h(i.accessoriesExist?16:-1))},dependencies:[ie,ee,te,Z,X,Y,H],encapsulation:2})}return t})();export{Me as a};
1
+ import{m as ne}from"./chunk-GAI5J4YQ.js";import{e as z}from"./chunk-ZAKTSIL5.js";import{C as ie,e as X,l as Y,t as Z,u as ee,w as te}from"./chunk-O6MJC7P2.js";import{b as Q}from"./chunk-CAB2VD3D.js";import{E as G,F as H,H as J,K}from"./chunk-MW6H5Z5G.js";import{Ab as h,Ac as O,Cb as M,Db as T,Eb as D,Ec as u,Fb as w,Fc as _,Gb as a,Hb as r,Ib as S,Oc as W,Rb as A,Xb as $,Za as s,Zb as m,aa as C,ga as b,ha as I,jc as E,kc as p,lc as f,mc as y,nb as N,nc as L,rc as P,sc as j,tc as q,yb as k,zb as g,zc as R}from"./chunk-ZPXACREZ.js";import{a as F,b as V,h as U}from"./chunk-B4AJQJMI.js";var oe=(t,l)=>({"fa-matter":t,"fa-hap":l}),ae=(t,l)=>({"btn-danger":t,"btn-elegant":l}),re=(t,l,e)=>({"fa-trash":t,"fa-undo":l,"fa-spinner fa-pulse":e});function ce(t,l){t&1&&(a(0,"div",12),S(1,"i",13),r(),a(2,"p",14),p(3),u(4,"translate"),r()),t&2&&(s(3),f(_(4,1,"reset.no_accessories")))}function le(t,l){if(t&1&&(a(0,"option",24),p(1),r()),t&2){let e=l.$implicit;w("value",e._id),s(),L("",e.name," (",e._username,")")}}function de(t,l){if(t&1){let e=A();a(0,"li",20),p(1),u(2,"translate"),r(),a(3,"li",18)(4,"label",21),p(5),u(6,"translate"),r(),a(7,"div",22)(8,"select",23),q("ngModelChange",function(i){b(e);let o=m(2);return j(o.selectedBridge,i)||(o.selectedBridge=i),I(i)}),$("change",function(i){b(e);let o=m(2);return I(o.onBridgeChange(i.target.value))}),T(9,le,2,3,"option",24,M),r()()()}if(t&2){let e=m(2);s(),f(_(2,3,"form.label.changes_kept")),s(4),f(_(6,5,"reset.accessory_ind.bridge")),s(3),P("ngModel",e.selectedBridge),s(),D(e.pairings)}}function pe(t,l){if(t&1&&(a(0,"li",18)(1,"label",25),p(2),u(3,"translate"),r(),a(4,"div",26),p(5),r()()),t&2){let e=m(2);s(2),f(_(3,2,"reset.accessory_ind.bridge")),s(3),y(" ",e.getCurrentlySelectedBridge()," ")}}function me(t,l){if(t&1){let e=A();a(0,"li",19)(1,"span",27),S(2,"i",28),r(),a(3,"span",29),p(4),S(5,"br"),a(6,"small")(7,"span",30),p(8),r()()(),a(9,"button",31),u(10,"translate"),$("click",function(){let i=b(e).$implicit,o=m(2);return I(o.toggleList(i.UUID||i.uuid,i.$cacheFile,i.$protocol,i.$deviceId))}),S(11,"i",32),r()()}if(t&2){let e=l.$implicit,n=m(2);s(2),E(R(12,oe,e.$protocol==="matter",e.$protocol!=="matter")),s(2),y(" ",e.displayName," "),s(4),f(e.UUID||e.uuid),s(),E(R(15,ae,!n.isInList(e.UUID||e.uuid,e.$cacheFile,e.$protocol),n.isInList(e.UUID||e.uuid,e.$cacheFile,e.$protocol))),w("disabled",n.clicked),k("aria-label",_(10,10,"form.button_delete")),s(2),E(O(18,re,!n.isInList(e.UUID||e.uuid,e.$cacheFile,e.$protocol),n.isInList(e.UUID||e.uuid,e.$cacheFile,e.$protocol)&&!n.clicked,n.isInList(e.UUID||e.uuid,e.$cacheFile,e.$protocol)&&n.clicked))}}function ue(t,l){if(t&1&&(a(0,"div",12),S(1,"i",15),r(),a(2,"ul",16)(3,"li"),p(4),u(5,"translate"),r(),a(6,"li"),p(7),u(8,"translate"),r(),a(9,"li"),p(10),u(11,"translate"),r()(),a(12,"ul",17),g(13,de,11,7),g(14,pe,6,4,"li",18),T(15,me,12,22,"li",19,M),r()),t&2){let e=m();s(4),f(_(5,5,"reset.accessory_ind.list_1")),s(3),f(_(8,7,"reset.accessory_ind.list_2")),s(3),f(_(11,9,"reset.accessory_ind.list_3")),s(3),h(e.pairings.length>1?13:-1),s(),h(e.pairings.length===1?14:-1),s(),D(e.selectedBridgeAccessories)}}function _e(t,l){if(t&1){let e=A();a(0,"button",33),$("click",function(){b(e);let i=m();return I(i.dismissModal())}),p(1),u(2,"translate"),r()}if(t&2){let e=m();w("disabled",e.clicked),s(),y(" ",_(2,2,"form.button_close")," ")}}function ge(t,l){if(t&1){let e=A();a(0,"button",34),$("click",function(){b(e);let i=m();return I(i.dismissModal())}),p(1),u(2,"translate"),r()}t&2&&(s(),y(" ",_(2,1,"form.button_close")," "))}function he(t,l){if(t&1&&p(0),t&2){let e=m(3);y(" (",e.toDelete.length,") ")}}function ve(t,l){if(t&1&&(p(0),u(1,"translate"),g(2,he,1,1)),t&2){let e=m(2);y(" ",_(1,2,"form.button_remove")," "),s(2),h(e.toDelete.length>0?2:-1)}}function fe(t,l){t&1&&S(0,"i",36)}function xe(t,l){if(t&1){let e=A();a(0,"button",35),$("click",function(){b(e);let i=m();return I(i.removeAccessories())}),g(1,ve,3,4),g(2,fe,1,0,"i",36),r()}if(t&2){let e=m();w("disabled",!e.toDelete.length||e.clicked),s(),h(e.clicked?-1:1),s(),h(e.clicked?2:-1)}}var Me=(()=>{class t{$activeModal=C(ne);$api=C(K);$router=C(z);$settings=C(Q);$toastr=C(J);$translate=C(G);isMatterSupported=this.$settings.isFeatureEnabled("matterSupport");selectedBridge=W.required({});pairings=[];clicked=!1;currentSelectedBridge="";selectedBridgeAccessories=[];accessoriesExist=!1;toDelete=[];ngOnInit(){this.currentSelectedBridge=this.selectedBridge(),this.loadCachedAccessories()}onBridgeChange(e){this.currentSelectedBridge=e,this.selectedBridgeAccessories=this.pairings.find(n=>n._id===this.currentSelectedBridge)?.accessories}getCurrentlySelectedBridge(){let e=this.pairings.find(n=>n._id===this.currentSelectedBridge);return`${e.name} - ${e._username}`}toggleList(e,n,i,o){this.toDelete.some(v=>v.uuid===e&&v.cacheFile===n&&v.protocol===i)?this.toDelete=this.toDelete.filter(v=>v.uuid!==e||v.cacheFile!==n||v.protocol!==i):this.toDelete.push({cacheFile:n,uuid:e,protocol:i,deviceId:o})}isInList(e,n,i){return this.toDelete.some(o=>o.uuid===e&&o.cacheFile===n&&o.protocol===i)}removeAccessories(){this.clicked=!0;let e=this.toDelete.filter(o=>o.protocol==="hap").map(o=>({uuid:o.uuid,cacheFile:o.cacheFile})),n=this.toDelete.filter(o=>o.protocol==="matter").map(o=>({uuid:o.uuid,deviceId:o.deviceId})),i=[];if(e.length>0&&i.push(this.$api.delete("/server/cached-accessories",{body:e})),this.isMatterSupported&&n.length>0&&i.push(this.$api.delete("/server/matter-accessories",{body:n})),i.length===0){this.clicked=!1;return}Promise.all(i).then(()=>{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}})}).catch(o=>{this.clicked=!1,console.error(o),this.$toastr.error(this.$translate.instant("reset.accessory_ind.fail"),this.$translate.instant("toast.title_error"))})}dismissModal(){this.$activeModal.dismiss("Dismiss")}loadCachedAccessories(){return U(this,null,function*(){try{let e=this.isMatterSupported?[this.$api.get("/server/cached-accessories"),this.$api.get("/server/matter-accessories"),this.$api.get("/server/pairings")]:[this.$api.get("/server/cached-accessories"),this.$api.get("/server/pairings")],n=yield Promise.all(e),i=n[0],o=this.isMatterSupported?n[1]:[],v=this.isMatterSupported?n[2]:n[1],x=new Map(v.map(c=>[c._id,V(F({},c),{accessories:[]})]));i.sort((c,d)=>c.displayName.localeCompare(d.displayName)).forEach(c=>{let d=v.find(se=>se._main),B=c.$cacheFile?.split(".")?.[1]||d._id;(!this.selectedBridge||this.selectedBridge===B)&&(x.has(B)||x.set(B,{_id:B,_username:B.match(/.{1,2}/g).join(":"),name:this.$translate.instant("reset.accessory_ind.unknown"),accessories:[]}),c.$protocol="hap",x.get(B).accessories.push(c))}),this.isMatterSupported&&o.sort((c,d)=>c.displayName.localeCompare(d.displayName)).forEach(c=>{let d=c.$deviceId;(!this.selectedBridge||this.selectedBridge===d)&&(x.has(d)||x.set(d,{_id:d,_username:d.match(/.{1,2}/g).join(":"),name:this.$translate.instant("reset.accessory_ind.unknown"),accessories:[]}),c.$protocol="matter",c.$cacheFile=d,x.get(d).accessories.push(c))}),this.pairings=Array.from(x.values()).filter(c=>c.accessories.length>0).sort((c,d)=>c._main&&!d._main?-1:!c._main&&d._main?1:c.name.localeCompare(d.name)),this.selectedBridge=this.selectedBridge||this.pairings[0]?._id,this.selectedBridge&&(this.accessoriesExist=!0,this.selectedBridgeAccessories=this.pairings[0].accessories)}catch(e){console.error(e),this.$toastr.error(this.$translate.instant("reset.error_message"),this.$translate.instant("toast.title_error")),this.$activeModal.close()}})}static \u0275fac=function(n){return new(n||t)};static \u0275cmp=N({type:t,selectors:[["ng-component"]],inputs:{selectedBridge:[1,"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-circle-check","primary-text",2,"font-size","75px"],[1,"mb-0","text-center"],[1,"fas","fa-network-wired","primary-text",2,"font-size","75px"],[1,"mb-3"],[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,"me-3"],[1,"fas","fa-lg"],[1,"flex-grow-1"],[1,"font-monospace","grey-text"],[1,"btn","btn-danger","m-0","ms-3",3,"click","disabled"],[1,"fas"],["type","button","data-bs-dismiss","modal",1,"btn","btn-elegant",3,"click","disabled"],["type","button","data-bs-dismiss","modal",1,"btn","btn-elegant",3,"click"],["type","button","data-bs-dismiss","modal",1,"btn","btn-danger",3,"click","disabled"],[1,"fas","fa-spinner","fa-pulse"]],template:function(n,i){n&1&&(a(0,"div",0)(1,"div",1)(2,"h5",2),p(3),u(4,"translate"),r(),a(5,"button",3),u(6,"translate"),$("click",function(){return i.dismissModal()}),r()(),a(7,"div",4),g(8,ce,5,3),g(9,ue,17,11),r(),a(10,"div",5)(11,"div",6),g(12,_e,3,4,"button",7),r(),a(13,"div",8),g(14,ge,3,3,"button",9),r(),a(15,"div",10),g(16,xe,3,3,"button",11),r()()()),n&2&&(s(3),f(_(4,8,"reset.accessory_ind.title")),s(2),w("disabled",i.clicked),k("aria-label",_(6,10,"form.button_close")),s(3),h(i.accessoriesExist?-1:8),s(),h(i.accessoriesExist?9:-1),s(3),h(i.accessoriesExist?12:-1),s(2),h(i.accessoriesExist?-1:14),s(2),h(i.accessoriesExist?16:-1))},dependencies:[ie,ee,te,Z,X,Y,H],encapsulation:2})}return t})();export{Me as a};
@@ -1 +1 @@
1
- import{a as He,c as ne}from"./chunk-P3D45344.js";import"./chunk-FIF6GB4H.js";import"./chunk-M72FKTRG.js";import{a as U}from"./chunk-P7RLJ6EQ.js";import{a as Ne}from"./chunk-FARCNAHH.js";import{a as Ae}from"./chunk-QRWK7JO5.js";import"./chunk-WYJ4N4TV.js";import"./chunk-BMOLDRJ3.js";import{a as $e}from"./chunk-SOEFKTV3.js";import"./chunk-H7F7H5MW.js";import"./chunk-2W47TKRP.js";import{a as Oe}from"./chunk-4O7BLLBH.js";import"./chunk-JH5W4II7.js";import"./chunk-XM3BXRQJ.js";import"./chunk-GQMGUEFI.js";import"./chunk-5INR7MRZ.js";import"./chunk-XEOYEVJE.js";import"./chunk-TXOHSX6R.js";import{a as ee}from"./chunk-63DEF4BP.js";import"./chunk-YJWJIJMQ.js";import"./chunk-CB6OGKHG.js";import"./chunk-NPWYNB2M.js";import"./chunk-W546I2QX.js";import"./chunk-TCWZ7ASJ.js";import"./chunk-NDBIOJ3K.js";import"./chunk-NMM246IB.js";import"./chunk-AU6YJ4VB.js";import"./chunk-2AZ4IAJX.js";import"./chunk-B2R3BKIF.js";import"./chunk-IUXXJEPG.js";import"./chunk-C2W3HONU.js";import"./chunk-OB3JM574.js";import"./chunk-HRBBCSGX.js";import"./chunk-AASDOQGB.js";import"./chunk-MKCBNPFH.js";import"./chunk-ZCGZM7LU.js";import"./chunk-QOXXKL5T.js";import{g as Ee,h as Te,i as Ie,j as De,k as Me,l as Ve,m as z,n as ie,t as te}from"./chunk-LT4LVLTJ.js";import{b as fe,e as Ce}from"./chunk-DGBI427A.js";import{a as le}from"./chunk-JLNKCN3A.js";import{b as Z}from"./chunk-CR6W3PUA.js";import{C as Be,D as ke,c as he,e as be,f as ve,g as xe,j as Pe,m as ye,r as we,s as Se}from"./chunk-N2IMTG2V.js";import{b as Y}from"./chunk-PXNJ4PSF.js";import{E as F,F as D,H as K,K as X,j as _e}from"./chunk-YZZ7SAON.js";import{Ab as g,Ac as me,Cb as q,Db as G,Eb as Q,Ec as o,Fb as S,Fc as r,Gb as l,Gc as A,Hb as s,Ib as c,Jb as x,Kb as P,Lb as N,Lc as ue,Oc as oe,Pc as ge,Rb as w,Sb as R,Ua as $,Va as H,Wa as de,Xb as f,Yb as O,Za as a,Zb as m,aa as y,ec as pe,fc as ce,ga as b,ha as v,hc as W,jc as E,kc as p,lc as C,ma as re,mc as h,nb as I,sa as k,va as se,vc as ae,yb as B,yc as J,zb as u,zc as M}from"./chunk-ZPXACREZ.js";import"./chunk-KTE7SASZ.js";import"./chunk-MKFXR7SP.js";import"./chunk-32NSGOWJ.js";import"./chunk-5N6BZ66K.js";import"./chunk-JEWURKW3.js";import"./chunk-56AT4EBV.js";import{h as V}from"./chunk-B4AJQJMI.js";var qe=t=>({pluginName:t}),Ge=(t,d)=>({setting:t,value:d});function Qe(t,d){t&1&&(l(0,"li"),p(1),o(2,"translate"),s(),l(3,"li"),p(4),o(5,"translate"),s()),t&2&&(a(),C(r(2,2,"plugins.manage.confirm_disable_platform_1")),a(3),C(r(5,4,"plugins.manage.confirm_disable_platform_2")))}function We(t,d){t&1&&(l(0,"li"),p(1),o(2,"translate"),s(),l(3,"li"),p(4),o(5,"translate"),s()),t&2&&(a(),C(r(2,2,"plugins.manage.confirm_disable_accessory_1")),a(3),C(r(5,4,"plugins.manage.confirm_disable_accessory_2")))}function Je(t,d){if(t&1&&(l(0,"ul",15),c(1,"li",16),o(2,"translate"),l(3,"ul",17),u(4,Qe,6,6)(5,We,6,6),s()()),t&2){let e=m(2);a(),S("innerHtml",A(2,2,"plugins.manage.confirm_disable_setting",M(5,Ge,e.keepOrphansName,e.keepOrphansValue)),$),a(3),g(e.keepOrphansSignal()?4:5)}}function Ke(t,d){t&1&&(l(0,"ul",15)(1,"li"),p(2),o(3,"translate"),s(),l(4,"li"),p(5),o(6,"translate"),s()()),t&2&&(a(2),C(r(3,2,"plugins.manage.confirm_disable_accessory_1")),a(3),C(r(6,4,"plugins.manage.confirm_disable_accessory_2")))}function Xe(t,d){if(t&1&&u(0,Je,6,8,"ul",15)(1,Ke,7,6,"ul",15),t&2){let e=m();g(e.isConfiguredDynamicPlatformSignal()?0:1)}}var ze=(()=>{class t{$activeModal=y(z);$translate=y(F);_pluginName=k("",{});_isConfigured=k(!1,{});_isConfiguredDynamicPlatform=k(!1,{});_keepOrphans=k(!1,{});set pluginName(e){this._pluginName.set(e)}get pluginName(){return this._pluginName()}set isConfigured(e){this._isConfigured.set(e)}get isConfigured(){return this._isConfigured()}set isConfiguredDynamicPlatform(e){this._isConfiguredDynamicPlatform.set(e)}get isConfiguredDynamicPlatform(){return this._isConfiguredDynamicPlatform()}set keepOrphans(e){this._keepOrphans.set(e)}get keepOrphans(){return this._keepOrphans()}pluginNameSignal=this._pluginName.asReadonly();isConfiguredSignal=this._isConfigured.asReadonly();isConfiguredDynamicPlatformSignal=this._isConfiguredDynamicPlatform.asReadonly();keepOrphansSignal=this._keepOrphans.asReadonly();keepOrphansName=`<code>${this.$translate.instant("settings.startup.keep_accessories")}</code>`;get keepOrphansValue(){return`<code>${this._keepOrphans()}</code>`}dismissModal(){this.$activeModal.dismiss("Dismiss")}closeModal(){this.$activeModal.close()}static \u0275fac=function(n){return new(n||t)};static \u0275cmp=I({type:t,selectors:[["ng-component"]],decls:25,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,"mb-3","text-center"],[1,"fas","fa-circle-pause","primary-text",2,"font-size","75px"],["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"],[1,"mb-3"],[3,"innerHtml"],[1,"mb-1"]],template:function(n,i){n&1&&(l(0,"div",0)(1,"div",1)(2,"h5",2),p(3),s(),l(4,"button",3),o(5,"translate"),f("click",function(){return i.dismissModal()}),s()(),l(6,"div",4)(7,"div",5),c(8,"i",6),s(),u(9,Xe,2,1),l(10,"ngb-alert",7)(11,"p",8),p(12),o(13,"translate"),s()()(),l(14,"div",9)(15,"div",10)(16,"button",11),o(17,"translate"),f("click",function(){return i.dismissModal()}),p(18),o(19,"translate"),s()(),c(20,"div",12),l(21,"div",13)(22,"button",14),f("click",function(){return i.closeModal()}),p(23),o(24,"translate"),s()()()()),n&2&&(a(3),C(i.pluginNameSignal()),a(),B("aria-label",r(5,8,"form.button_close")),a(5),g(i.isConfiguredSignal()?9:-1),a(),S("dismissible",!1),a(2),h(" ",A(13,10,"plugins.manage.confirm_disable",J(19,qe,i.pluginNameSignal()))," "),a(4),B("aria-label",r(17,13,"form.button_close")),a(2),h(" ",r(19,15,"form.button_close")," "),a(5),h(" ",r(24,17,"plugins.manage.disable")," "))},dependencies:[Ee,D],encapsulation:2})}return t})();var Ye=t=>({author:t});function Ze(t,d){if(t&1&&(x(0,"li",9),N(1,"i",15),x(2,"a",16),p(3),P()()),t&2){let e=d.$implicit,n=m();a(),E(n.getIconClass(e.type)),a(),R("href",e.url,H),a(),C(e.url)}}var je=(()=>{class t{$activeModal=y(z);_plugin=k(null,{});set plugin(e){this._plugin.set(e)}get plugin(){return this._plugin()}pluginSignal=this._plugin.asReadonly();fundingOptions=k([],{});authorName=k("",{});ngOnInit(){this.initialize()}initialize(){let e=this.pluginSignal();if(!e||!e.funding){this.$activeModal.close();return}this.authorName.set(e.name==="homebridge-config-ui-x"?"oznu":e.author);let n=e.funding;if(Array.isArray(n)){let i=n.map(_=>{if(typeof _=="string")return{type:"other",url:_};if(typeof _=="object")return{type:_.type||"other",url:_.url}}).filter(Boolean);this.fundingOptions.set(i)}else typeof n=="string"?this.fundingOptions.set([{type:"other",url:n}]):typeof n=="object"&&n!==null&&this.fundingOptions.set([{type:n.type||"other",url:n.url}])}getIconClass(e){switch(e.toLowerCase()){case"paypal":return"fab fa-paypal";case"github":return"fab fa-github";case"patreon":return"fab fa-patreon";case"kofi":case"ko-fi":return"fas fa-coffee";default:return"fas fa-link"}}dismissModal(){this.$activeModal.dismiss("Dismiss")}static \u0275fac=function(n){return new(n||t)};static \u0275cmp=I({type:t,selectors:[["ng-component"]],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-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-xl"],["target","_blank","rel","noopener noreferrer",1,"text-break-all",3,"href"]],template:function(n,i){n&1&&(x(0,"div",0)(1,"div",1)(2,"h5",2),p(3),o(4,"translate"),P(),x(5,"button",3),o(6,"translate"),O("click",function(){return i.dismissModal()}),P()(),x(7,"div",4)(8,"div",5),N(9,"i",6),P(),x(10,"ul",7)(11,"li"),p(12),o(13,"translate"),P(),x(14,"li"),p(15),o(16,"translate"),P()(),x(17,"ul",8),G(18,Ze,4,4,"li",9,q),P()(),x(20,"div",10),N(21,"div",11),x(22,"div",12)(23,"button",13),o(24,"translate"),O("click",function(){return i.dismissModal()}),p(25),o(26,"translate"),P()(),N(27,"div",14),P()()),n&2&&(a(3),C(A(4,6,"plugins.donate.tile_donate_to",J(19,Ye,"@"+i.authorName()))),a(2),B("aria-label",r(6,9,"form.button_close")),a(7),C(r(13,11,"plugins.donate.message_1")),a(3),C(r(16,13,"plugins.donate.message_2")),a(3),Q(i.fundingOptions()),a(5),B("aria-label",r(24,15,"form.button_close")),a(2),h(" ",r(26,17,"form.button_close")," "))},dependencies:[D],styles:[".text-break-all[_ngcontent-%COMP%]{word-break:break-all}"]})}return t})();var ei=(t,d)=>({"orange-text":t,"grey-text":d}),ii=(t,d)=>({"green-text":t,"grey-text":d}),ti=(t,d)=>({"purple-text":t,"grey-text":d}),ni=(t,d)=>({scopedLink:t,verifiedLink:d});function ai(t,d){t&1&&(x(0,"h6",18),p(1),o(2,"translate"),P(),x(3,"p",19),p(4),o(5,"translate"),P(),x(6,"p",19),p(7),o(8,"translate"),P()),t&2&&(a(),C(r(2,3,"plugins.manage.scoped_subtitle")),a(3),C(r(5,5,"plugins.manage.scoped_message")),a(3),C(r(8,7,"plugins.manage.verified_message")))}function oi(t,d){t&1&&(x(0,"h6",18),p(1),o(2,"translate"),P(),x(3,"p",19),p(4),o(5,"translate"),P()),t&2&&(a(),C(r(2,2,"plugins.manage.verified_subtitle")),a(3),C(r(5,4,"plugins.manage.verified_message")))}function li(t,d){t&1&&(x(0,"h6",18),p(1),o(2,"translate"),P(),x(3,"p",19),p(4),o(5,"translate"),P()),t&2&&(a(),C(r(2,2,"plugins.manage.unverified_subtitle")),a(3),C(r(5,4,"plugins.manage.unverified_message")))}function ri(t,d){if(t&1){let e=w();x(0,"button",20),O("click",function(){b(e);let i=m();return v(i.dismissModal())}),p(1),o(2,"translate"),P()}t&2&&(a(),h(" ",r(2,1,"form.button_close")," "))}function si(t,d){if(t&1){let e=w();x(0,"button",20),O("click",function(){b(e);let i=m();return v(i.dismissModal())}),p(1),o(2,"translate"),P()}t&2&&(a(),h(" ",r(2,1,"form.button_close")," "))}function di(t,d){if(t&1&&(x(0,"a",17),p(1),o(2,"translate"),N(3,"i",21),P()),t&2){let e=m();R("href",e.pluginData().links.homepage||e.pluginData().links.npm,H),a(),h(" ",r(2,2,"plugins.button_homepage")," ")}}var Re=(()=>{class t{$activeModal=y(z);_plugin=k(null,{});iconError=k(!1,{});set plugin(e){this._plugin.set(e)}get plugin(){return this._plugin()}pluginData=this._plugin.asReadonly();pluginIcon=ue(()=>{let e=this._plugin();return e?.icon&&!this.iconError()?e.icon:this.defaultIcon},{});defaultIcon="assets/hb-icon.png";linkScoped='<a href="https://github.com/homebridge/plugins/wiki/Scoped-Plugins" target="_blank"><i class="fas fa-external-link-alt primary-text"></i></a>';linkVerified='<a href="https://github.com/homebridge/plugins/wiki/Verified-Plugins" target="_blank"><i class="fas fa-external-link-alt primary-text"></i></a>';handleIconError(){this.iconError.set(!0)}dismissModal(){this.$activeModal.dismiss("Dismiss")}static \u0275fac=function(n){return new(n||t)};static \u0275cmp=I({type:t,selectors:[["ng-component"]],decls:32,vars:45,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"],["alt","Plugin Icon",1,"mb-3","plugin-icon-card",3,"error","src"],[1,"mb-1"],[1,"grey-text","mb-0","font-monospace"],[1,"grey-text","mb-1","font-monospace"],[1,"mb-3"],[1,"fas","fa-shield-alt","mb-3",2,"font-size","48px"],[1,"mb-0","grey-text",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"],[1,"mb-2"],[1,"mb-1","grey-text"],["type","button","data-bs-dismiss","modal",1,"btn","btn-elegant",3,"click"],[1,"fas","fa-external-link-alt"]],template:function(n,i){n&1&&(x(0,"div",0)(1,"div",1)(2,"h5",2),p(3),o(4,"translate"),P(),x(5,"button",3),o(6,"translate"),O("click",function(){return i.dismissModal()}),P()(),x(7,"div",4)(8,"img",5),O("error",function(){return i.handleIconError()}),P(),x(9,"h4",6),p(10),P(),x(11,"p",7),p(12),P(),x(13,"p",8),p(14),P(),x(15,"p",9),p(16),P(),N(17,"i",10)(18,"i",10)(19,"i",10),u(20,ai,9,9),u(21,oi,6,6),u(22,li,6,6),N(23,"p",11),o(24,"translate"),P(),x(25,"div",12)(26,"div",13),u(27,ri,3,3,"button",14),P(),x(28,"div",15),u(29,si,3,3,"button",14),P(),x(30,"div",16),u(31,di,4,4,"a",17),P()()()),n&2&&(a(3),C(r(4,26,"plugins.manage.information")),a(2),B("aria-label",r(6,28,"form.button_close")),a(3),R("src",i.pluginIcon(),H),a(2),C(i.pluginData().displayName),a(2),C(i.pluginData().name),a(2),h("@",i.pluginData().author),a(2),C(i.pluginData().description),a(),E(M(33,ei,!i.pluginData().verifiedPlugin&&!i.pluginData().verifiedPlusPlugin,i.pluginData().verifiedPlugin||i.pluginData().verifiedPlusPlugin)),W("opacity",!i.pluginData().verifiedPlugin&&!i.pluginData().verifiedPlusPlugin?1:.25),a(),E(M(36,ii,!i.pluginData().isHbScoped&&(i.pluginData().verifiedPlugin||i.pluginData().verifiedPlusPlugin),i.pluginData().isHbScoped||!i.pluginData().verifiedPlugin&&!i.pluginData().verifiedPlusPlugin)),W("opacity",!i.pluginData().isHbScoped&&(i.pluginData().verifiedPlugin||i.pluginData().verifiedPlusPlugin)?1:.25),a(),E(M(39,ti,i.pluginData().isHbScoped,!i.pluginData().isHbScoped)),W("opacity",i.pluginData().isHbScoped?1:.25),a(),g(i.pluginData().isHbScoped?20:-1),a(),g(!i.pluginData().isHbScoped&&(i.pluginData().verifiedPlugin||i.pluginData().verifiedPlusPlugin)?21:-1),a(),g(!i.pluginData().verifiedPlugin&&!i.pluginData().verifiedPlusPlugin?22:-1),a(),R("innerHTML",A(24,30,"plugins.manage.more_info",M(42,ni,i.linkScoped,i.linkVerified)),$),a(4),g(i.pluginData().links.homepage||i.pluginData().links.npm?27:-1),a(2),g(!i.pluginData().links.homepage&&!i.pluginData().links.npm?29:-1),a(2),g(i.pluginData().links.homepage||i.pluginData().links.npm?31:-1))},dependencies:[D],styles:[".plugin-icon[_ngcontent-%COMP%]{height:75px;width:75px;border-radius:15px;border:1px solid #222222}"]})}return t})();var pi=(t,d,e)=>({"purple-text":t,"green-text":d,"orange-text":e}),ci=(t,d)=>({"fa-bridge-circle-exclamation orange-text":t,"fa-bridge-circle-xmark red-text":d});function mi(t,d){if(t&1){let e=w();l(0,"a",21),o(1,"translate"),o(2,"translate"),f("click",function(){b(e);let i=m(2);return v(i.checkAndUpdatePlugin())}),c(3,"i",22),s()}t&2&&(S("openDelay",150)("ngbTooltip",r(1,3,"plugins.button_update")),B("aria-label",r(2,5,"plugins.button_update")))}function ui(t,d){if(t&1){let e=w();l(0,"a",21),o(1,"translate"),o(2,"translate"),f("click",function(){b(e);let i=m(2);return v(i.switchToScoped())}),c(3,"i",23),s()}t&2&&(S("openDelay",150)("ngbTooltip",r(1,3,"plugins.manage.scoped.switch")),B("aria-label",r(2,5,"plugins.manage.scoped.switch")))}function gi(t,d){if(t&1){let e=w();l(0,"a",24),o(1,"translate"),o(2,"translate"),f("click",function(){b(e);let i=m(2);return v(i.openSettings())}),c(3,"i",25),s()}t&2&&(S("ngbTooltip",r(1,3,"plugins.button_set_up"))("openDelay",150),B("aria-label",r(2,5,"plugins.button_set_up")))}function _i(t,d){if(t&1){let e=w();l(0,"a",24),o(1,"translate"),o(2,"translate"),f("click",function(){b(e);let i=m(2);return v(i.openBridgeSettings())}),c(3,"i",26),s()}t&2&&(S("ngbTooltip",r(1,3,"child_bridge.setup"))("openDelay",150),B("aria-label",r(2,5,"child_bridge.setup")))}function fi(t,d){if(t&1){let e=w();l(0,"a",24),o(1,"translate"),o(2,"translate"),f("click",function(){b(e);let i=m(2);return v(i.openBridgeSettings())}),c(3,"i",27),s()}t&2&&(S("ngbTooltip",r(1,3,"child_bridge.bridge_connect"))("openDelay",150),B("aria-label",r(2,5,"child_bridge.bridge_connect")))}function Ci(t,d){if(t&1&&c(0,"i",28),t&2){let e=m(2);E(M(2,ci,e.childBridgeStatus==="pending",e.childBridgeStatus==="down"))}}function hi(t,d){if(t&1&&(l(0,"div",9),u(1,mi,4,7,"a",17),u(2,ui,4,7,"a",17),u(3,gi,4,7,"a",18),u(4,_i,4,7,"a",18),u(5,fi,4,7,"a",18),c(6,"i",19),u(7,Ci,1,5,"i",20),s()),t&2){let e,n=m();a(),g(n.plugin().installedVersion&&n.plugin().updateAvailable&&!n.childBridgeRestartInProgress?1:-1),a(),g(n.plugin().installedVersion&&((e=n.plugin().newHbScope)==null?null:e.switch)===n.plugin().installedVersion&&!n.childBridgeRestartInProgress?2:-1),a(),g(n.plugin().installedVersion&&(!n.plugin().newHbScope||n.plugin().newHbScope.switch!==n.plugin().installedVersion)&&!n.plugin().updateAvailable&&!n.plugin().isConfigured&&!n.childBridgeRestartInProgress&&!n.plugin().disabled?3:-1),a(),g(n.plugin().installedVersion&&(!n.plugin().newHbScope||n.plugin().newHbScope.switch!==n.plugin().installedVersion)&&!n.plugin().updateAvailable&&n.plugin().isConfigured&&!n.plugin().hasChildBridges&&!n.plugin().disabled&&n.plugin().recommendChildBridge&&!n.childBridgeRestartInProgress?4:-1),a(),g(n.plugin().installedVersion&&(!n.plugin().newHbScope||n.plugin().newHbScope.switch!==n.plugin().installedVersion)&&!n.plugin().updateAvailable&&n.plugin().isConfigured&&n.plugin().hasChildBridges&&!n.childBridgeRestartInProgress&&n.plugin().hasChildBridgesUnpaired&&n.childBridgeStatus==="ok"&&!n.plugin().disabled?5:-1),a(),S("hidden",!n.childBridgeRestartInProgress),a(),g(n.plugin().installedVersion&&(!n.plugin().newHbScope||n.plugin().newHbScope.switch!==n.plugin().installedVersion)&&!n.plugin().updateAvailable&&n.plugin().isConfigured&&n.plugin().hasChildBridges&&!n.childBridgeRestartInProgress&&!n.plugin().hasChildBridgesUnpaired&&n.childBridgeStatus!=="ok"&&!n.plugin().disabled?7:-1)}}function bi(t,d){if(t&1){let e=w();l(0,"a",11),f("click",function(){b(e);let i=m();return v(i.openFundingModal(i.plugin()))}),c(1,"i",29),l(2,"span",13),p(3),s()()}if(t&2){let e=m();a(3),h("@",e.plugin().author)}}function vi(t,d){if(t&1&&(l(0,"span",13),c(1,"i",30),p(2),s()),t&2){let e=m();a(2),h("@",e.plugin().author," ")}}function xi(t,d){if(t&1&&(l(0,"span"),p(1),o(2,"date"),s()),t&2){let e=m(2);a(),h("(",A(2,1,e.plugin().lastUpdated,"yyyy-MM-dd"),")")}}function Pi(t,d){if(t&1&&(l(0,"span"),c(1,"i",31),l(2,"span",13),p(3),u(4,xi,3,4,"span"),s()()),t&2){let e=m();a(3),h("v",e.plugin().latestVersion," "),a(),g(e.plugin().lastUpdated?4:-1)}}function yi(t,d){if(t&1&&(c(0,"i",32),p(1)),t&2){let e=m();a(),h("v",e.plugin().installedVersion," ")}}function wi(t,d){if(t&1){let e=w();l(0,"a",21),o(1,"translate"),f("click",function(){b(e);let i=m(2);return v(i.doChildBridgeAction("restart"))}),c(2,"i",36),s()}if(t&2){let e=m(2);S("openDelay",150)("ngbTooltip",r(1,2,e.setChildBridges.length>1?"child_bridge.restart_plural":"child_bridge.restart"))}}function Si(t,d){if(t&1){let e=w();l(0,"a",37),f("click",function(){b(e);let i=m(2);return v(i.enablePlugin(i.plugin()))}),c(1,"i",38),o(2,"translate"),s()}t&2&&(a(),S("ngbTooltip",r(2,2,"plugins.status_disabled"))("openDelay",150))}function Bi(t,d){if(t&1){let e=w();l(0,"a",39),f("click",function(){b(e);let i=m(2);return v(i.installAlternateVersion())}),c(1,"i",40),s()}}function ki(t,d){if(t&1){let e=w();l(0,"button",44),f("click",function(){b(e);let i=m(3);return v(i.viewPluginLog())}),c(1,"i",49),p(2),o(3,"translate"),s()}t&2&&(a(2),h(" ",r(3,1,"plugins.manage.plugin_logs")," "))}function Ei(t,d){if(t&1){let e=w();l(0,"button",44),f("click",function(){b(e);let i=m(3);return v(i.installAlternateVersion())}),c(1,"i",50),p(2),o(3,"translate"),s()}t&2&&(a(2),h(" ",r(3,1,"plugins.manage.manage_version")," "))}function Ti(t,d){if(t&1){let e=w();l(0,"button",44),f("click",function(){b(e);let i=m(3);return v(i.openJsonEditor())}),c(1,"i",51),p(2),o(3,"translate"),s()}t&2&&(a(2),h(" ",r(3,1,"plugins.manage.json_config")," "))}function Ii(t,d){if(t&1){let e=w();l(0,"button",44),f("click",function(){b(e);let i=m(3);return v(i.disablePlugin(i.plugin()))}),c(1,"i",52),p(2),o(3,"translate"),s()}t&2&&(a(2),h(" ",r(3,1,"plugins.manage.disable")," "))}function Di(t,d){if(t&1){let e=w();l(0,"button",44),f("click",function(){b(e);let i=m(3);return v(i.enablePlugin(i.plugin()))}),c(1,"i",53),p(2),o(3,"translate"),s()}t&2&&(a(2),h(" ",r(3,1,"plugins.manage.enable")," "))}function Mi(t,d){if(t&1){let e=w();l(0,"button",44),f("click",function(){b(e);let i=m(3);return v(i.uninstallPlugin())}),c(1,"i",54),p(2),o(3,"translate"),s()}t&2&&(a(2),h(" ",r(3,1,"plugins.button_uninstall")," "))}function Vi(t,d){t&1&&c(0,"div",47)}function $i(t,d){if(t&1){let e=w();l(0,"button",44),f("click",function(){b(e);let i=m(4);return v(i.doChildBridgeAction("restart"))}),c(1,"i",57),p(2),o(3,"translate"),s()}if(t&2){let e=m(4);a(2),h(" ",r(3,1,e.setChildBridges.length>1?"child_bridge.restart_plural":"child_bridge.restart")," ")}}function Ni(t,d){if(t&1){let e=w();l(0,"button",44),f("click",function(){b(e);let i=m(4);return v(i.doChildBridgeAction("stop"))}),c(1,"i",58),p(2),o(3,"translate"),s()}if(t&2){let e=m(4);a(2),h(" ",r(3,1,e.setChildBridges.length>1?"child_bridge.stop_plural":"child_bridge.stop")," ")}}function Ai(t,d){if(t&1){let e=w();l(0,"button",44),f("click",function(){b(e);let i=m(4);return v(i.doChildBridgeAction("start"))}),c(1,"i",59),p(2),o(3,"translate"),s()}if(t&2){let e=m(4);a(2),h(" ",r(3,1,e.setChildBridges.length>1?"child_bridge.start_plural":"child_bridge.start")," ")}}function Hi(t,d){if(t&1){let e=w();l(0,"button",44),f("click",function(){b(e);let i=m(3);return v(i.openBridgeSettings())}),c(1,"i",55),p(2),o(3,"translate"),s(),u(4,$i,4,3,"button",46),u(5,Ni,4,3,"button",46),u(6,Ai,4,3,"button",46),l(7,"button",44),f("click",function(){b(e);let i=m(3);return v(i.resetChildBridges())}),c(8,"i",56),p(9),o(10,"translate"),s()}if(t&2){let e=m(3);a(2),h(" ",r(3,5,"child_bridge.bridge_settings")," "),a(2),g(e.childBridgeRestartInProgress?-1:4),a(),g(e.allChildBridgesStopped?-1:5),a(),g(e.allChildBridgesStopped?6:-1),a(3),h(" ",r(10,7,"child_bridge.reset_accessories")," ")}}function Oi(t,d){t&1&&c(0,"div",47)}function zi(t,d){if(t&1){let e=w();l(0,"button",44),f("click",function(){b(e);let i=m(3);return v(i.openBridgeSettings())}),c(1,"i",60),p(2),o(3,"translate"),s()}t&2&&(a(2),h(" ",r(3,1,"child_bridge.setup")," "))}function ji(t,d){t&1&&c(0,"div",47)}function Ri(t,d){if(t&1){let e=w();l(0,"button",44),f("click",function(){b(e);let i=m(3);return v(i.openBridgeSettings())}),c(1,"i",60),p(2),o(3,"translate"),s()}t&2&&(a(2),h(" ",r(3,1,"child_bridge.setup")," "))}function Fi(t,d){t&1&&c(0,"div",47)}function Ui(t,d){if(t&1&&(l(0,"a",48),c(1,"i",61),p(2),o(3,"translate"),s()),t&2){let e=m(3);S("href",e.plugin().links.bugs,H),a(2),h(" ",r(3,2,"support.links.issue")," ")}}function Li(t,d){if(t&1){let e=w();l(0,"span",35)(1,"a",41),c(2,"i",42),s(),l(3,"div",43)(4,"button",44),f("click",function(){b(e);let i=m(2);return v(i.openSettings())}),c(5,"i",45),p(6),o(7,"translate"),s(),u(8,ki,4,3,"button",46),u(9,Ei,4,3,"button",46),u(10,Ti,4,3,"button",46),u(11,Ii,4,3,"button",46),u(12,Di,4,3,"button",46),u(13,Mi,4,3,"button",46),u(14,Vi,1,0,"div",47),u(15,Hi,11,9),u(16,Oi,1,0,"div",47),u(17,zi,4,3,"button",46),u(18,ji,1,0,"div",47),u(19,Ri,4,3,"button",46),u(20,Fi,1,0,"div",47),u(21,Ui,4,4,"a",48),s()()}if(t&2){let e,n,i=m(2);a(),B("aria-label","Plugin Actions Dropdown"),a(5),h(" ",r(7,16,"plugins.button_settings")," "),a(2),g(i.plugin().isConfigured&&!i.plugin().disabled?8:-1),a(),g(i.plugin().publicPackage?9:-1),a(),g(!i.isMobile&&i.plugin().name!=="homebridge-config-ui-x"?10:-1),a(),g(i.plugin().name!=="homebridge-config-ui-x"&&!i.plugin().disabled?11:-1),a(),g(i.plugin().name!=="homebridge-config-ui-x"&&i.plugin().disabled?12:-1),a(),g(i.plugin().name!=="homebridge-config-ui-x"?13:-1),a(),g(!i.plugin().disabled&&i.plugin().isConfigured&&i.plugin().hasChildBridges&&i.plugin().installedVersion&&i.plugin().name!=="homebridge-config-ui-x"?14:-1),a(),g(i.plugin().hasChildBridges&&!i.plugin().disabled?15:-1),a(),g(i.plugin().isConfigured&&!i.plugin().hasChildBridges&&!i.plugin().disabled&&!i.plugin().recommendChildBridge?16:-1),a(),g(i.plugin().isConfigured&&!i.plugin().hasChildBridges&&!i.plugin().disabled&&!i.plugin().recommendChildBridge?17:-1),a(),g(i.plugin().isConfigured&&!i.plugin().hasChildBridges&&!i.plugin().disabled&&i.plugin().recommendChildBridge&&i.plugin().updateAvailable?18:-1),a(),g(i.plugin().isConfigured&&!i.plugin().hasChildBridges&&!i.plugin().disabled&&i.plugin().recommendChildBridge&&i.plugin().updateAvailable?19:-1),a(),g((e=i.plugin().links)!=null&&e.bugs?20:-1),a(),g((n=i.plugin().links)!=null&&n.bugs?21:-1)}}function qi(t,d){if(t&1&&(l(0,"div",9),u(1,wi,3,4,"a",17),u(2,Si,3,4,"a",33),u(3,Bi,2,0,"a",34),u(4,Li,22,18,"span",35),s()),t&2){let e=m();a(),g(!e.plugin().disabled&&e.plugin().hasChildBridges&&e.childBridgeStatus==="ok"?1:-1),a(),g(e.plugin().installedVersion&&e.plugin().disabled?2:-1),a(),g(e.plugin().publicPackage&&!e.plugin().installedVersion?3:-1),a(),g(e.plugin().installedVersion?4:-1)}}var Fe=(()=>{class t{$api=y(X);$auth=y(Z);$md=y(Ae);$modal=y(ie);$plugin=y(ne);$settings=y(Y);$toastr=y(K);$translate=y(F);$ws=y(ee);io;plugin=oe.required({});childBridges=oe.required({});hasChildBridges=!1;allChildBridgesStopped=!1;childBridgeStatus="pending";childBridgeRestartInProgress=!1;defaultIcon="assets/hb-icon.png";isMobile;setChildBridges=[];isAdmin=this.$auth.user.admin;constructor(){se(()=>{let e=this.childBridges();this.hasChildBridges=e.length>0,this.allChildBridgesStopped=e.every(n=>n.manuallyStopped===!0),this.hasChildBridges&&(e.some(n=>n.status==="down")?this.childBridgeStatus="down":e.some(n=>n.status==="pending")?this.childBridgeStatus="pending":e.some(n=>n.status==="ok")&&(this.childBridgeStatus="ok")),this.setChildBridges=e})}ngOnInit(){this.isMobile=this.$md.detect.mobile(),this.io=this.$ws.getExistingNamespace("child-bridges"),this.isMobile&&this.plugin().displayName.toLowerCase().startsWith("homebridge ")&&(this.plugin().displayName=this.plugin().displayName.replace(/^homebridge /i,"")),this.plugin().icon||(this.plugin().icon=this.defaultIcon)}openFundingModal(e){let n=this.$modal.open(je,{size:"lg",backdrop:"static"});n.componentInstance.plugin=e}pluginInfoModal(e){let n=this.$modal.open(Re,{size:"lg",backdrop:"static"});n.componentInstance.plugin=e}disablePlugin(e){let n=this.$modal.open(ze,{size:"lg",backdrop:"static"});n.componentInstance.pluginName=e.displayName||e.name,n.componentInstance.isConfigured=e.isConfigured,n.componentInstance.isConfiguredDynamicPlatform=e.isConfiguredDynamicPlatform,n.componentInstance.keepOrphans=this.$settings.keepOrphans,n.result.then(()=>V(this,null,function*(){try{yield this.$api.put(`/config-editor/plugin/${encodeURIComponent(e.name)}/disable`,{}),e.disabled=!0,this.hasChildBridges&&this.doChildBridgeAction("stop"),this.$modal.open(U,{size:"lg",backdrop:"static"})}catch(i){console.error(i),this.$toastr.error(this.$translate.instant("plugins.disable.error"),this.$translate.instant("toast.title_error"))}}))}enablePlugin(e){let n=this.$modal.open($e,{size:"lg",backdrop:"static"});n.componentInstance.title=e.name,n.componentInstance.message=this.$translate.instant("plugins.manage.confirm_enable",{pluginName:e.displayName}),n.componentInstance.confirmButtonLabel=this.$translate.instant("plugins.manage.enable"),n.componentInstance.faIconClass="fa-circle-play primary-text",n.result.then(()=>V(this,null,function*(){try{yield this.$api.put(`/config-editor/plugin/${encodeURIComponent(e.name)}/enable`,{}),e.disabled=!1,this.hasChildBridges&&(yield this.doChildBridgeAction("start")),this.$modal.open(U,{size:"lg",backdrop:"static"})}catch(i){console.error(i),this.$toastr.error(this.$translate.instant("plugins.enable.error"),this.$translate.instant("toast.title_error"))}}))}viewPluginLog(){let e=this.$modal.open(He,{size:"xl",backdrop:"static"});e.componentInstance.plugin=this.plugin(),e.componentInstance.childBridges=this.setChildBridges}doChildBridgeAction(e){return V(this,null,function*(){this.childBridgeRestartInProgress=!0;try{for(let n of this.setChildBridges)yield this.io.request(`${e}-child-bridge`,n.username).toPromise()}catch(n){console.error(n),this.$toastr.error(this.$translate.instant("plugins.bridge.action_error",{action:e}),this.$translate.instant("toast.title_error")),this.childBridgeRestartInProgress=!1}finally{setTimeout(()=>{this.childBridgeRestartInProgress=!1},e==="restart"?12e3:e==="stop"?6e3:1e3)}})}handleIconError(){this.plugin().icon=this.defaultIcon}checkAndUpdatePlugin(){this.$plugin.checkAndUpdatePlugin(this.plugin(),this.plugin().latestVersion)}openSettings(){this.$plugin.settings(this.plugin())}openBridgeSettings(){this.$plugin.bridgeSettings(this.plugin())}switchToScoped(){this.$plugin.switchToScoped(this.plugin())}installAlternateVersion(){this.$plugin.installAlternateVersion(this.plugin())}openJsonEditor(){this.$plugin.jsonEditor(this.plugin())}uninstallPlugin(){this.$plugin.uninstallPlugin(this.plugin(),this.setChildBridges)}resetChildBridges(){this.$plugin.resetChildBridges(this.setChildBridges)}static \u0275fac=function(n){return new(n||t)};static \u0275cmp=I({type:t,selectors:[["app-plugin-card"]],inputs:{plugin:[1,"plugin"],childBridges:[1,"childBridges"]},decls:24,vars:15,consts:[[1,"card","card-body","mb-3"],[1,"d-flex","flex-row","justify-content-between"],[1,"d-flex","flex-column","me-3","align-items-center","justify-content-between"],["alt","Plugin Icon",1,"plugin-icon-card","mb-3",3,"error","src"],[1,"d-flex","flex-column","justify-content-between",2,"min-width","calc(100% - 80px)"],[1,"d-flex","flex-row","align-items-end"],[1,"d-flex","flex-column","w-100"],[1,"d-flex","flex-row"],[1,"card-title","mb-2","text-truncate"],[1,"ms-auto"],[1,"card-text","mb-2","text-truncate"],["href","javascript:void(0)",1,"card-link",3,"click"],[1,"fas","fa-shield-alt","fa-lg","me-1"],[1,"grey-text"],[1,"card-text","mb-2"],["href","javascript:void(0)",1,"card-link"],[1,"card-text","mb-0","grey-text"],["href","javascript:void(0)","container","body","triggers","hover",1,"card-link",3,"openDelay","ngbTooltip"],["href","javascript:void(0)","container","body","triggers","hover",1,"card-link",3,"ngbTooltip","openDelay"],[1,"fas","fa-spinner","fa-pulse","fa-lg","grey-text","ms-3",3,"hidden"],[1,"fas","fa-lg","ms-3",3,"class"],["href","javascript:void(0)","container","body","triggers","hover",1,"card-link",3,"click","openDelay","ngbTooltip"],[1,"far","fa-arrow-alt-circle-up","primary-text","fa-lg","fa-fade","ms-3",2,"--fa-animation-duration","2s"],[1,"fas","fa-arrow-right-arrow-left","primary-text","fa-lg","fa-fade","ms-3",2,"--fa-animation-duration","2s"],["href","javascript:void(0)","container","body","triggers","hover",1,"card-link",3,"click","ngbTooltip","openDelay"],[1,"fas","fa-sliders","primary-text","fa-lg","fa-fade","ms-3",2,"--fa-animation-duration","2s"],[1,"icon-button","fas","fa-bridge","primary-text","fa-lg","fa-fade","ms-3",2,"--fa-animation-duration","2s"],[1,"icon-button","fas","fa-qrcode","primary-text","fa-lg","fa-fade","ms-3",2,"--fa-animation-duration","2s"],[1,"fas","fa-lg","ms-3"],[1,"fas","fa-heart","fa-lg","me-1","pink-text"],[1,"fas","fa-heart","fa-lg","me-1",2,"opacity","0.5"],[1,"far","fa-circle-dot","fa-lg","me-1"],[1,"far","fa-circle-check","fa-lg","me-1"],["href","javascript:void(0)",1,"card-link","red-text"],["href","javascript:void(0)"],["ngbDropdown","","placement","left",1,"d-inline-block","ms-3","mt-auto"],[1,"fas","fa-lg","fa-power-off","ms-3"],["href","javascript:void(0)",1,"card-link","red-text",3,"click"],["container","body","triggers","hover",1,"far","fa-pause-circle","fa-lg",3,"ngbTooltip","openDelay"],["href","javascript:void(0)",3,"click"],[1,"far","fa-arrow-alt-circle-down","fa-lg"],["href","javascript:void(0)","ngbDropdownToggle","",1,"card-link","text-decoration-none","mt-auto",2,"outline","none"],[1,"fa-solid","fa-ellipsis-v","fa-lg"],["ngbDropdownMenu","","aria-labelledby","Plugin Actions Dropdown"],["ngbDropdownItem","",3,"click"],[1,"fas","fa-sliders"],["ngbDropdownItem",""],[1,"dropdown-divider"],["ngbDropdownItem","","rel","noopener noreferrer","target","_blank",3,"href"],[1,"fas","fa-wave-square"],[1,"fas","fa-code-compare"],[1,"fas","fa-code"],[1,"far","fa-circle-pause"],[1,"far","fa-circle-play"],[1,"fas","fa-trash"],[1,"fas","fa-bridge"],[1,"fas","fa-broom"],[1,"icon-button","fas","fa-power-off"],[1,"fas","fa-stop"],[1,"fas","fa-play"],[1,"icon-button","fas","fa-bridge"],[1,"icon-button","fa","fa-question-circle-o"]],template:function(n,i){n&1&&(l(0,"div",0)(1,"div",1)(2,"div",2)(3,"img",3),f("error",function(){return i.handleIconError()}),s()(),l(4,"div",4)(5,"div",5)(6,"div",6)(7,"div",7)(8,"h5",8),p(9),s(),u(10,hi,8,7,"div",9),s(),l(11,"p",10)(12,"a",11),f("click",function(){return i.pluginInfoModal(i.plugin())}),c(13,"i",12),l(14,"span",13),p(15),s()()(),l(16,"p",14),u(17,bi,4,1,"a",15),u(18,vi,3,1,"span",13),s(),l(19,"div",7)(20,"p",16),u(21,Pi,5,2,"span"),u(22,yi,2,1),s(),u(23,qi,5,4,"div",9),s()()()()()()),n&2&&(a(3),S("src",i.plugin().icon,H),a(6),C(i.plugin().displayName),a(),g(i.isAdmin?10:-1),a(3),E(me(11,pi,i.plugin().isHbScoped,!i.plugin().isHbScoped&&(i.plugin().verifiedPlugin||i.plugin().verifiedPlusPlugin),!i.plugin().isHbScoped&&!i.plugin().verifiedPlugin&&!i.plugin().verifiedPlusPlugin)),a(2),C(i.plugin().name),a(2),g((i.plugin().verifiedPlugin||i.plugin().verifiedPlusPlugin)&&i.plugin().funding?17:-1),a(),g((i.plugin().verifiedPlugin||i.plugin().verifiedPlusPlugin)&&i.plugin().funding?-1:18),a(3),g(i.plugin().publicPackage&&!i.plugin().installedVersion?21:-1),a(),g(i.plugin().installedVersion?22:-1),a(),g(i.isAdmin?23:-1))},dependencies:[te,Ve,Me,De,Ie,Te,_e,D],encapsulation:2})}return t})();var Ue=(()=>{class t{$activeModal=y(z);dismissModal(){this.$activeModal.dismiss("Dismiss")}static \u0275fac=function(n){return new(n||t)};static \u0275cmp=I({type:t,selectors:[["ng-component"]],decls:28,vars:22,consts:[["role","dialog","aria-modal","true",1,"modal-content"],[1,"modal-header"],["id","plugin-support-modal-title",1,"modal-title"],["type","button","data-bs-dismiss","modal",1,"btn-close",3,"click"],[1,"modal-body"],[1,"text-center","mb-3"],[1,"fa","fa-question-circle-o","primary-text",2,"font-size","75px"],[1,"mb-0"],[3,"innerHTML"],[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"]],template:function(n,i){n&1&&(l(0,"div",0)(1,"form")(2,"div",1)(3,"h5",2),p(4),o(5,"translate"),s(),l(6,"button",3),o(7,"translate"),f("click",function(){return i.dismissModal()}),s()(),l(8,"div",4)(9,"div",5),c(10,"i",6),s(),l(11,"ul",7),c(12,"li",8),o(13,"translate"),c(14,"li",8),o(15,"translate"),c(16,"li",8),o(17,"translate"),c(18,"li",8),o(19,"translate"),s(),c(20,"app-support-banner"),s(),l(21,"div",9),c(22,"div",10),l(23,"div",11)(24,"button",12),f("click",function(){return i.dismissModal()}),p(25),o(26,"translate"),s()(),c(27,"div",13),s()()()),n&2&&(B("aria-labelledby","plugin-support-modal-title"),a(4),C(r(5,8,"support.title")),a(2),B("aria-label",r(7,10,"form.button_close")),a(6),S("innerHTML",r(13,12,"plugins.support.list_1"),$),a(2),S("innerHTML",r(15,14,"plugins.support.list_2"),$),a(2),S("innerHTML",r(17,16,"plugins.support.list_3"),$),a(2),S("innerHTML",r(19,18,"plugins.support.list_4"),$),a(7),h(" ",r(26,20,"form.button_close")," "))},dependencies:[Oe,D],encapsulation:2})}return t})();var Gi=["searchInput"],Qi=(t,d)=>({"fa-magnifying-glass":t,"fa-exclamation-circle":d});function Wi(t,d){t&1&&c(0,"app-spinner")}function Ji(t,d){if(t&1){let e=w();l(0,"button",7),o(1,"translate"),o(2,"translate"),f("click",function(){b(e);let i=m();return v(i.showSearch())}),c(3,"i"),s(),l(4,"button",8),o(5,"translate"),o(6,"translate"),f("click",function(){b(e);let i=m();return v(i.showStats())}),c(7,"i"),s()}if(t&2){let e=m();S("openDelay",150)("ngbTooltip",r(1,13,"form.search"))("hidden",!e.installedPlugins().length&&!e.showSearchBar()),B("aria-label",r(2,15,"form.search")),a(3),E(ae("fas",e.showSearchBar()?" primary-text":""," fa-search")),a(),S("openDelay",150)("ngbTooltip",r(5,17,"plugins.stats")),B("aria-label",r(6,19,"plugins.stats")),a(3),E(ae("fas",e.tab()==="stats"?" primary-text":""," fa-sliders"))}}function Ki(t,d){if(t&1){let e=w();l(0,"a",15),f("click",function(){b(e);let i=m(3);return v(i.onClearSearch())}),c(1,"i",16),s()}}function Xi(t,d){if(t&1){let e=w();l(0,"div",9)(1,"div",11)(2,"form",12),f("ngSubmit",function(){b(e);let i=m(2);return v(i.onSubmit(i.form))}),c(3,"input",13,0),o(5,"translate"),u(6,Ki,2,0,"a",14),s()()()}if(t&2){let e=m(2);a(2),S("formGroup",e.form),a(),S("placeholder",r(5,3,"plugins.placeholder_search_plugin")),a(3),g(e.showExitButton()?6:-1)}}function Yi(t,d){if(t&1&&(l(0,"div",17),c(1,"app-plugin-card",19),s()),t&2){let e=d.$implicit,n=m(3);a(),S("plugin",e)("childBridges",n.getPluginChildBridges(e))}}function Zi(t,d){if(t&1&&(l(0,"div",18),c(1,"i",20),l(2,"p"),p(3),o(4,"translate"),s()()),t&2){let e=m(3);a(),E(M(5,Qi,!e.showExitButton(),e.showExitButton())),a(2),C(r(4,3,e.showExitButton()?"plugins.placeholder_search_none":"plugins.placeholder_search_first"))}}function et(t,d){if(t&1&&(l(0,"div",10),G(1,Yi,2,2,"div",17,q),u(3,Zi,5,8,"div",18),s()),t&2){let e=m(2);a(),Q(e.installedPlugins()),a(2),g(e.installedPlugins().length===0&&!e.loading()&&!e.mainError()?3:-1)}}function it(t,d){if(t&1&&(u(0,Xi,7,5,"div",9),u(1,et,4,1,"div",10)),t&2){let e=m();g(e.showSearchBar()?0:-1),a(),g(e.loading()?-1:1)}}function tt(t,d){t&1&&(l(0,"div",21)(1,"div",22)(2,"code"),p(3,"https://developers.homebridge.io/analytics "),l(4,"a",23),c(5,"i",24),s()()(),l(6,"div",25),p(7),o(8,"translate"),s()(),c(9,"iframe",26)),t&2&&(a(7),C(r(8,1,"plugins.stats_note")))}var dn=(()=>{class t{destroyRef=y(re);$api=y(X);$auth=y(Z);$modal=y(ie);$plugin=y(ne);$router=y(Ce);$settings=y(Y);$toastr=y(K);$translate=y(F);$ws=y(ee);searchInput=ge("searchInput",{});mainError=k(!1,{});loading=k(!0,{});tab=k("main",{});installedPlugins=k([],{});childBridges=k([],{});showSearchBar=k(!1,{});showExitButton=k(!1,{});isSearchMode=k(!1,{});io;isAdmin=this.$auth.user.admin;form=new xe({query:new Pe("")});ngOnInit(){let e=this.$translate.instant("menu.label_plugins");this.$settings.setPageTitle(e),this.$plugin.onPluginListRefresh.pipe(le(this.destroyRef)).subscribe(()=>{this.loadInstalledPlugins(),this.getChildBridgeMetadata()}),this.io=this.$ws.connectToNamespace("child-bridges"),this.io.connected.subscribe(()=>{this.initialize()}),this.io.socket.connected&&this.initialize(),this.io.socket.on("child-bridge-status-update",n=>{let i=this.childBridges().find(_=>_.username===n.username);i?(Object.assign(i,n),this.childBridges.set([...this.childBridges()])):this.childBridges.update(_=>[..._,n])}),this.$router.events.pipe(le(this.destroyRef)).subscribe(n=>{n instanceof fe&&this.loadInstalledPlugins()})}search(){return V(this,null,function*(){this.installedPlugins.set([]),this.loading.set(!0),this.showExitButton.set(!0);try{let e=yield this.$api.get(`/plugins/search/${encodeURIComponent(this.form.value.query)}`),n=new Set,i=new Map(e.map(_=>[_.name,_]));this.installedPlugins.set(e.reduce((_,T)=>{if(T.name==="homebridge-config-ui-x"||n.has(T.name))return _;if(T.newHbScope){let j=T.newHbScope.to,Le=i.has(j);(T.installedVersion||!Le)&&(n.add(j),_.push(T))}else _.push(T);return _},[])),yield this.appendMetaInfo()}catch(e){this.isSearchMode.set(!1),console.error(e);let n=e instanceof Error?e.message:this.$translate.instant("plugins.toast_failed_to_search_plugins");this.$toastr.error(n,this.$translate.instant("toast.title_error")),this.loadInstalledPlugins()}finally{this.loading.set(!1)}})}onClearSearch(){this.loadInstalledPlugins()}onSubmit({value:e}){e.query.length?(this.isSearchMode.set(!0),this.search()):this.isSearchMode()&&(this.isSearchMode.set(!1),this.loadInstalledPlugins())}showSearch(){if(this.showSearchBar())this.showSearchBar.set(!1),this.isSearchMode()&&(this.isSearchMode.set(!1),this.form.setValue({query:""}),this.loadInstalledPlugins());else{window.document.querySelector("body")?.classList.remove("bg-black"),this.tab.set("main"),this.showSearchBar.set(!0);let e=this.searchInput();e&&setTimeout(()=>e.nativeElement.focus(),0)}}showStats(){this.tab()==="stats"?(window.document.querySelector("body")?.classList.remove("bg-black"),this.tab.set("main")):(window.document.querySelector("body")?.classList.add("bg-black"),this.tab.set("stats"),this.showSearchBar.set(!1))}openSupport(){this.$modal.open(Ue,{size:"lg",backdrop:"static"})}ngOnDestroy(){window.document.querySelector("body")?.classList.remove("bg-black"),this.io.end()}getPluginChildBridges(e){return this.childBridges().filter(n=>n.plugin===e.name)}initialize(){return V(this,null,function*(){this.getChildBridgeMetadata(),this.io.socket.emit("monitor-child-bridge-status"),yield this.loadInstalledPlugins(),this.installedPlugins().length||this.showSearch();let{action:e,plugin:n}=this.$router.parseUrl(this.$router.url).queryParams;if(e){let i=this.installedPlugins().find(_=>_.name===n);switch(e){case"just-installed":{i&&(i.isConfigured?this.$modal.open(U,{size:"lg",backdrop:"static"}):this.$plugin.settings(i));break}}this.$router.navigate([],{queryParams:{},replaceUrl:!0,queryParamsHandling:""})}})}loadInstalledPlugins(){return V(this,null,function*(){this.form.setValue({query:""}),this.showExitButton.set(!1),this.installedPlugins.set([]),this.loading.set(!0),this.mainError.set(!1);try{let e=yield this.$api.get("/plugins");this.installedPlugins.set(e.filter(i=>i.name!=="homebridge-config-ui-x")),yield this.appendMetaInfo();let n=this.installedPlugins().sort((i,_)=>{let T=(i.updateAvailable?1e3:0)+(i.newHbScope?100:0)+(i.disabled?-10:0)+(i.isConfigured?-20:0)+(i.hasChildBridgesUnpaired?5:0)+(i.hasChildBridges&&this.$settings.env.recommendChildBridges?-1:0),j=(_.updateAvailable?1e3:0)+(_.newHbScope?100:0)+(_.disabled?-10:0)+(_.isConfigured?-20:0)+(_.hasChildBridgesUnpaired?5:0)+(_.hasChildBridges&&this.$settings.env.recommendChildBridges?-1:0);return T!==j?j-T:i.name.localeCompare(_.name)});return this.installedPlugins.set(n),n}catch(e){console.error(e);let n=e instanceof Error?e.message:this.$translate.instant("plugins.toast_failed_to_load_plugins");this.$toastr.error(n,this.$translate.instant("toast.title_error")),this.mainError.set(!0)}finally{this.loading.set(!1)}})}appendMetaInfo(){return V(this,null,function*(){this.isAdmin&&(yield Promise.all(this.installedPlugins().filter(e=>e.installedVersion).map(e=>V(this,null,function*(){try{let n=yield this.$api.get(`/config-editor/plugin/${encodeURIComponent(e.name)}`);e.isConfigured=n.length>0,e.isConfiguredDynamicPlatform=e.isConfigured&&Object.prototype.hasOwnProperty.call(n[0],"platform"),e.recommendChildBridge=e.isConfigured&&this.$settings.env.recommendChildBridges&&!["homebridge","homebridge-config-ui-x"].includes(e.name),e.hasChildBridges=e.isConfigured&&n.some(_=>_._bridge&&_._bridge.username);let i=this.getPluginChildBridges(e);e.hasChildBridgesUnpaired=i.some(_=>{let T=_.paired===!1&&!this.isBridgeAlertHidden(_.username,"hap"),j=_.matterConfig&&_.matterCommissioned===!1&&!this.isBridgeAlertHidden(_.username,"matter");return T||j}),this.$settings.env.plugins?.hideUpdatesFor?.includes(e.name)&&(e.updateAvailable=!1)}catch(n){console.error(`Failed to load config for ${e.name}:`,n),e.isConfigured=!0,e.hasChildBridges=!0}}))))})}getChildBridgeMetadata(){this.io.request("get-homebridge-child-bridge-status").subscribe(e=>{this.childBridges.set(e)})}isBridgeAlertHidden(e,n){let i=this.$settings.env.bridges?.find(_=>_.username.toUpperCase()===e.toUpperCase());return i?n==="hap"?!!i.hideHapAlert:!!i.hideMatterAlert:!1}static \u0275fac=function(n){return new(n||t)};static \u0275cmp=I({type:t,selectors:[["ng-component"]],viewQuery:function(n,i){n&1&&pe(i.searchInput,Gi,5),n&2&&ce()},decls:13,vars:9,consts:[["searchInput",""],[1,"row","mb-3"],[1,"col-6"],[1,"primary-text","m-0"],[1,"col-6","text-end"],["type","button",1,"btn","btn-elegant","my-0","me-0",3,"click"],[1,"fa","fa-question-circle-o"],["type","button","container","body","placement","bottom","triggers","hover",1,"btn","btn-elegant","my-0","me-2",3,"click","openDelay","ngbTooltip","hidden"],["type","button","container","body","placement","bottom","triggers","hover",1,"btn","btn-elegant","my-0","me-2","d-none","d-md-inline-block",3,"click","openDelay","ngbTooltip"],[1,"row"],[1,"d-flex","flex-wrap","justify-content-between"],[1,"col-md-12"],["novalidate","",3,"ngSubmit","formGroup"],["type","text","formControlName","query",1,"search-bar",3,"placeholder"],["href","javascript:void(0)",1,"search-bar-clear"],["href","javascript:void(0)",1,"search-bar-clear",3,"click"],[1,"fas","fa-square-xmark"],[1,"hb-plugin-space-between"],[1,"alert","alert-info","mt-4","text-center","w-100"],[3,"plugin","childBridges"],[1,"fas","primary-text","my-3",2,"font-size","75px"],[1,"w-100","py-3","hb-stats-header","text-white","text-center"],[1,"mb-2"],["href","https://developers.homebridge.io/analytics","target","_blank"],[1,"fa","fa-external-link"],[1,"small","grey-text"],["src",de`https://developers.homebridge.io/analytics/`,"sandbox","allow-scripts allow-same-origin allow-popups","referrerpolicy","no-referrer",1,"hb-stats"]],template:function(n,i){n&1&&(u(0,Wi,1,0,"app-spinner"),l(1,"div",1)(2,"div",2)(3,"h3",3),p(4),o(5,"translate"),s()(),l(6,"div",4),u(7,Ji,8,21),l(8,"button",5),o(9,"translate"),f("click",function(){return i.openSupport()}),c(10,"i",6),s()()(),u(11,it,2,2)(12,tt,10,3)),n&2&&(g(i.loading()?0:-1),a(4),C(r(5,5,"menu.label_plugins")),a(3),g(i.isAdmin?7:-1),a(),B("aria-label",r(9,7,"support.title")),a(3),g(i.tab()==="main"?11:i.tab()==="stats"?12:-1))},dependencies:[Ne,Be,ye,he,be,ve,ke,Se,we,Fe,te,D],styles:[".search-bar[_ngcontent-%COMP%]{outline:none;box-sizing:inherit!important;background-color:inherit;height:50px!important;width:100%;border-width:.5px;padding:10px;margin-bottom:15px}@media(hover:hover){.search-bar[_ngcontent-%COMP%]:hover{border:1px solid #000000}}.search-bar[_ngcontent-%COMP%]:focus{border:1px solid #000000;box-shadow:0 1px #000}.search-bar-clear[_ngcontent-%COMP%]{position:absolute;right:30px;font-size:25px;color:#d0d0d0;line-height:50px;cursor:pointer}.hb-plugin-space-between[_ngcontent-%COMP%]{box-sizing:border-box;width:calc(50% - 6.6666666667px)}@media only screen and (max-width:991px){.hb-plugin-space-between[_ngcontent-%COMP%]{width:100%}}.hb-stats-header[_ngcontent-%COMP%]{background:#242424;border-top-left-radius:.5rem;border-top-right-radius:.5rem}.hb-stats-header[_ngcontent-%COMP%] code[_ngcontent-%COMP%]{border:1px solid grey;border-radius:5px;padding:5px;font-size:.8rem;color:#d3d3d3}.hb-stats[_ngcontent-%COMP%]{height:calc(100% - 121px);width:100%;overflow:hidden;border-bottom-left-radius:.5rem;border-bottom-right-radius:.5rem}@media(max-width:767px){.hb-stats[_ngcontent-%COMP%]{height:calc(100% - 60px)}}"]})}return t})();export{dn as PluginsComponent};
1
+ import{a as He,c as ne}from"./chunk-7IMDRRHF.js";import"./chunk-CQHE4TU3.js";import"./chunk-FL4D5IR7.js";import{a as U}from"./chunk-GV5JF2YJ.js";import{a as Ne}from"./chunk-FARCNAHH.js";import{a as Ae}from"./chunk-QRWK7JO5.js";import"./chunk-SIIM6WZ6.js";import"./chunk-BMOLDRJ3.js";import{a as $e}from"./chunk-3ND4FTJL.js";import"./chunk-H7F7H5MW.js";import"./chunk-2W47TKRP.js";import{a as Oe}from"./chunk-OWEBBEZA.js";import"./chunk-JH5W4II7.js";import"./chunk-XM3BXRQJ.js";import"./chunk-GQMGUEFI.js";import"./chunk-5INR7MRZ.js";import"./chunk-XEOYEVJE.js";import"./chunk-TXOHSX6R.js";import{a as ee}from"./chunk-74KAKFTX.js";import"./chunk-YJWJIJMQ.js";import"./chunk-CB6OGKHG.js";import"./chunk-NPWYNB2M.js";import"./chunk-W546I2QX.js";import"./chunk-TCWZ7ASJ.js";import"./chunk-NDBIOJ3K.js";import"./chunk-NMM246IB.js";import"./chunk-AU6YJ4VB.js";import"./chunk-2AZ4IAJX.js";import"./chunk-B2R3BKIF.js";import"./chunk-IUXXJEPG.js";import"./chunk-C2W3HONU.js";import"./chunk-OB3JM574.js";import"./chunk-HRBBCSGX.js";import"./chunk-AASDOQGB.js";import"./chunk-MKCBNPFH.js";import"./chunk-ZCGZM7LU.js";import"./chunk-GWQFQK2F.js";import{g as Ee,h as Te,i as Ie,j as De,k as Me,l as Ve,m as z,n as ie,t as te}from"./chunk-GAI5J4YQ.js";import{b as fe,e as Ce}from"./chunk-ZAKTSIL5.js";import{a as le}from"./chunk-JLNKCN3A.js";import{b as Z}from"./chunk-KTLG6VZT.js";import{C as Be,D as ke,c as he,e as be,f as ve,g as xe,j as Pe,m as ye,r as we,s as Se}from"./chunk-O6MJC7P2.js";import{b as Y}from"./chunk-CAB2VD3D.js";import{E as F,F as D,H as K,K as X,j as _e}from"./chunk-MW6H5Z5G.js";import{Ab as g,Ac as me,Cb as q,Db as G,Eb as Q,Ec as o,Fb as S,Fc as r,Gb as l,Gc as A,Hb as s,Ib as c,Jb as x,Kb as P,Lb as N,Lc as ue,Oc as oe,Pc as ge,Rb as w,Sb as R,Ua as $,Va as H,Wa as de,Xb as f,Yb as O,Za as a,Zb as m,aa as y,ec as pe,fc as ce,ga as b,ha as v,hc as W,jc as E,kc as p,lc as C,ma as re,mc as h,nb as I,sa as k,va as se,vc as ae,yb as B,yc as J,zb as u,zc as M}from"./chunk-ZPXACREZ.js";import"./chunk-KTE7SASZ.js";import"./chunk-MKFXR7SP.js";import"./chunk-32NSGOWJ.js";import"./chunk-5N6BZ66K.js";import"./chunk-JEWURKW3.js";import"./chunk-56AT4EBV.js";import{h as V}from"./chunk-B4AJQJMI.js";var qe=t=>({pluginName:t}),Ge=(t,d)=>({setting:t,value:d});function Qe(t,d){t&1&&(l(0,"li"),p(1),o(2,"translate"),s(),l(3,"li"),p(4),o(5,"translate"),s()),t&2&&(a(),C(r(2,2,"plugins.manage.confirm_disable_platform_1")),a(3),C(r(5,4,"plugins.manage.confirm_disable_platform_2")))}function We(t,d){t&1&&(l(0,"li"),p(1),o(2,"translate"),s(),l(3,"li"),p(4),o(5,"translate"),s()),t&2&&(a(),C(r(2,2,"plugins.manage.confirm_disable_accessory_1")),a(3),C(r(5,4,"plugins.manage.confirm_disable_accessory_2")))}function Je(t,d){if(t&1&&(l(0,"ul",15),c(1,"li",16),o(2,"translate"),l(3,"ul",17),u(4,Qe,6,6)(5,We,6,6),s()()),t&2){let e=m(2);a(),S("innerHtml",A(2,2,"plugins.manage.confirm_disable_setting",M(5,Ge,e.keepOrphansName,e.keepOrphansValue)),$),a(3),g(e.keepOrphansSignal()?4:5)}}function Ke(t,d){t&1&&(l(0,"ul",15)(1,"li"),p(2),o(3,"translate"),s(),l(4,"li"),p(5),o(6,"translate"),s()()),t&2&&(a(2),C(r(3,2,"plugins.manage.confirm_disable_accessory_1")),a(3),C(r(6,4,"plugins.manage.confirm_disable_accessory_2")))}function Xe(t,d){if(t&1&&u(0,Je,6,8,"ul",15)(1,Ke,7,6,"ul",15),t&2){let e=m();g(e.isConfiguredDynamicPlatformSignal()?0:1)}}var ze=(()=>{class t{$activeModal=y(z);$translate=y(F);_pluginName=k("",{});_isConfigured=k(!1,{});_isConfiguredDynamicPlatform=k(!1,{});_keepOrphans=k(!1,{});set pluginName(e){this._pluginName.set(e)}get pluginName(){return this._pluginName()}set isConfigured(e){this._isConfigured.set(e)}get isConfigured(){return this._isConfigured()}set isConfiguredDynamicPlatform(e){this._isConfiguredDynamicPlatform.set(e)}get isConfiguredDynamicPlatform(){return this._isConfiguredDynamicPlatform()}set keepOrphans(e){this._keepOrphans.set(e)}get keepOrphans(){return this._keepOrphans()}pluginNameSignal=this._pluginName.asReadonly();isConfiguredSignal=this._isConfigured.asReadonly();isConfiguredDynamicPlatformSignal=this._isConfiguredDynamicPlatform.asReadonly();keepOrphansSignal=this._keepOrphans.asReadonly();keepOrphansName=`<code>${this.$translate.instant("settings.startup.keep_accessories")}</code>`;get keepOrphansValue(){return`<code>${this._keepOrphans()}</code>`}dismissModal(){this.$activeModal.dismiss("Dismiss")}closeModal(){this.$activeModal.close()}static \u0275fac=function(n){return new(n||t)};static \u0275cmp=I({type:t,selectors:[["ng-component"]],decls:25,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,"mb-3","text-center"],[1,"fas","fa-circle-pause","primary-text",2,"font-size","75px"],["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"],[1,"mb-3"],[3,"innerHtml"],[1,"mb-1"]],template:function(n,i){n&1&&(l(0,"div",0)(1,"div",1)(2,"h5",2),p(3),s(),l(4,"button",3),o(5,"translate"),f("click",function(){return i.dismissModal()}),s()(),l(6,"div",4)(7,"div",5),c(8,"i",6),s(),u(9,Xe,2,1),l(10,"ngb-alert",7)(11,"p",8),p(12),o(13,"translate"),s()()(),l(14,"div",9)(15,"div",10)(16,"button",11),o(17,"translate"),f("click",function(){return i.dismissModal()}),p(18),o(19,"translate"),s()(),c(20,"div",12),l(21,"div",13)(22,"button",14),f("click",function(){return i.closeModal()}),p(23),o(24,"translate"),s()()()()),n&2&&(a(3),C(i.pluginNameSignal()),a(),B("aria-label",r(5,8,"form.button_close")),a(5),g(i.isConfiguredSignal()?9:-1),a(),S("dismissible",!1),a(2),h(" ",A(13,10,"plugins.manage.confirm_disable",J(19,qe,i.pluginNameSignal()))," "),a(4),B("aria-label",r(17,13,"form.button_close")),a(2),h(" ",r(19,15,"form.button_close")," "),a(5),h(" ",r(24,17,"plugins.manage.disable")," "))},dependencies:[Ee,D],encapsulation:2})}return t})();var Ye=t=>({author:t});function Ze(t,d){if(t&1&&(x(0,"li",9),N(1,"i",15),x(2,"a",16),p(3),P()()),t&2){let e=d.$implicit,n=m();a(),E(n.getIconClass(e.type)),a(),R("href",e.url,H),a(),C(e.url)}}var je=(()=>{class t{$activeModal=y(z);_plugin=k(null,{});set plugin(e){this._plugin.set(e)}get plugin(){return this._plugin()}pluginSignal=this._plugin.asReadonly();fundingOptions=k([],{});authorName=k("",{});ngOnInit(){this.initialize()}initialize(){let e=this.pluginSignal();if(!e||!e.funding){this.$activeModal.close();return}this.authorName.set(e.name==="homebridge-config-ui-x"?"oznu":e.author);let n=e.funding;if(Array.isArray(n)){let i=n.map(_=>{if(typeof _=="string")return{type:"other",url:_};if(typeof _=="object")return{type:_.type||"other",url:_.url}}).filter(Boolean);this.fundingOptions.set(i)}else typeof n=="string"?this.fundingOptions.set([{type:"other",url:n}]):typeof n=="object"&&n!==null&&this.fundingOptions.set([{type:n.type||"other",url:n.url}])}getIconClass(e){switch(e.toLowerCase()){case"paypal":return"fab fa-paypal";case"github":return"fab fa-github";case"patreon":return"fab fa-patreon";case"kofi":case"ko-fi":return"fas fa-coffee";default:return"fas fa-link"}}dismissModal(){this.$activeModal.dismiss("Dismiss")}static \u0275fac=function(n){return new(n||t)};static \u0275cmp=I({type:t,selectors:[["ng-component"]],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-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-xl"],["target","_blank","rel","noopener noreferrer",1,"text-break-all",3,"href"]],template:function(n,i){n&1&&(x(0,"div",0)(1,"div",1)(2,"h5",2),p(3),o(4,"translate"),P(),x(5,"button",3),o(6,"translate"),O("click",function(){return i.dismissModal()}),P()(),x(7,"div",4)(8,"div",5),N(9,"i",6),P(),x(10,"ul",7)(11,"li"),p(12),o(13,"translate"),P(),x(14,"li"),p(15),o(16,"translate"),P()(),x(17,"ul",8),G(18,Ze,4,4,"li",9,q),P()(),x(20,"div",10),N(21,"div",11),x(22,"div",12)(23,"button",13),o(24,"translate"),O("click",function(){return i.dismissModal()}),p(25),o(26,"translate"),P()(),N(27,"div",14),P()()),n&2&&(a(3),C(A(4,6,"plugins.donate.tile_donate_to",J(19,Ye,"@"+i.authorName()))),a(2),B("aria-label",r(6,9,"form.button_close")),a(7),C(r(13,11,"plugins.donate.message_1")),a(3),C(r(16,13,"plugins.donate.message_2")),a(3),Q(i.fundingOptions()),a(5),B("aria-label",r(24,15,"form.button_close")),a(2),h(" ",r(26,17,"form.button_close")," "))},dependencies:[D],styles:[".text-break-all[_ngcontent-%COMP%]{word-break:break-all}"]})}return t})();var ei=(t,d)=>({"orange-text":t,"grey-text":d}),ii=(t,d)=>({"green-text":t,"grey-text":d}),ti=(t,d)=>({"purple-text":t,"grey-text":d}),ni=(t,d)=>({scopedLink:t,verifiedLink:d});function ai(t,d){t&1&&(x(0,"h6",18),p(1),o(2,"translate"),P(),x(3,"p",19),p(4),o(5,"translate"),P(),x(6,"p",19),p(7),o(8,"translate"),P()),t&2&&(a(),C(r(2,3,"plugins.manage.scoped_subtitle")),a(3),C(r(5,5,"plugins.manage.scoped_message")),a(3),C(r(8,7,"plugins.manage.verified_message")))}function oi(t,d){t&1&&(x(0,"h6",18),p(1),o(2,"translate"),P(),x(3,"p",19),p(4),o(5,"translate"),P()),t&2&&(a(),C(r(2,2,"plugins.manage.verified_subtitle")),a(3),C(r(5,4,"plugins.manage.verified_message")))}function li(t,d){t&1&&(x(0,"h6",18),p(1),o(2,"translate"),P(),x(3,"p",19),p(4),o(5,"translate"),P()),t&2&&(a(),C(r(2,2,"plugins.manage.unverified_subtitle")),a(3),C(r(5,4,"plugins.manage.unverified_message")))}function ri(t,d){if(t&1){let e=w();x(0,"button",20),O("click",function(){b(e);let i=m();return v(i.dismissModal())}),p(1),o(2,"translate"),P()}t&2&&(a(),h(" ",r(2,1,"form.button_close")," "))}function si(t,d){if(t&1){let e=w();x(0,"button",20),O("click",function(){b(e);let i=m();return v(i.dismissModal())}),p(1),o(2,"translate"),P()}t&2&&(a(),h(" ",r(2,1,"form.button_close")," "))}function di(t,d){if(t&1&&(x(0,"a",17),p(1),o(2,"translate"),N(3,"i",21),P()),t&2){let e=m();R("href",e.pluginData().links.homepage||e.pluginData().links.npm,H),a(),h(" ",r(2,2,"plugins.button_homepage")," ")}}var Re=(()=>{class t{$activeModal=y(z);_plugin=k(null,{});iconError=k(!1,{});set plugin(e){this._plugin.set(e)}get plugin(){return this._plugin()}pluginData=this._plugin.asReadonly();pluginIcon=ue(()=>{let e=this._plugin();return e?.icon&&!this.iconError()?e.icon:this.defaultIcon},{});defaultIcon="assets/hb-icon.png";linkScoped='<a href="https://github.com/homebridge/plugins/wiki/Scoped-Plugins" target="_blank"><i class="fas fa-external-link-alt primary-text"></i></a>';linkVerified='<a href="https://github.com/homebridge/plugins/wiki/Verified-Plugins" target="_blank"><i class="fas fa-external-link-alt primary-text"></i></a>';handleIconError(){this.iconError.set(!0)}dismissModal(){this.$activeModal.dismiss("Dismiss")}static \u0275fac=function(n){return new(n||t)};static \u0275cmp=I({type:t,selectors:[["ng-component"]],decls:32,vars:45,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"],["alt","Plugin Icon",1,"mb-3","plugin-icon-card",3,"error","src"],[1,"mb-1"],[1,"grey-text","mb-0","font-monospace"],[1,"grey-text","mb-1","font-monospace"],[1,"mb-3"],[1,"fas","fa-shield-alt","mb-3",2,"font-size","48px"],[1,"mb-0","grey-text",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"],[1,"mb-2"],[1,"mb-1","grey-text"],["type","button","data-bs-dismiss","modal",1,"btn","btn-elegant",3,"click"],[1,"fas","fa-external-link-alt"]],template:function(n,i){n&1&&(x(0,"div",0)(1,"div",1)(2,"h5",2),p(3),o(4,"translate"),P(),x(5,"button",3),o(6,"translate"),O("click",function(){return i.dismissModal()}),P()(),x(7,"div",4)(8,"img",5),O("error",function(){return i.handleIconError()}),P(),x(9,"h4",6),p(10),P(),x(11,"p",7),p(12),P(),x(13,"p",8),p(14),P(),x(15,"p",9),p(16),P(),N(17,"i",10)(18,"i",10)(19,"i",10),u(20,ai,9,9),u(21,oi,6,6),u(22,li,6,6),N(23,"p",11),o(24,"translate"),P(),x(25,"div",12)(26,"div",13),u(27,ri,3,3,"button",14),P(),x(28,"div",15),u(29,si,3,3,"button",14),P(),x(30,"div",16),u(31,di,4,4,"a",17),P()()()),n&2&&(a(3),C(r(4,26,"plugins.manage.information")),a(2),B("aria-label",r(6,28,"form.button_close")),a(3),R("src",i.pluginIcon(),H),a(2),C(i.pluginData().displayName),a(2),C(i.pluginData().name),a(2),h("@",i.pluginData().author),a(2),C(i.pluginData().description),a(),E(M(33,ei,!i.pluginData().verifiedPlugin&&!i.pluginData().verifiedPlusPlugin,i.pluginData().verifiedPlugin||i.pluginData().verifiedPlusPlugin)),W("opacity",!i.pluginData().verifiedPlugin&&!i.pluginData().verifiedPlusPlugin?1:.25),a(),E(M(36,ii,!i.pluginData().isHbScoped&&(i.pluginData().verifiedPlugin||i.pluginData().verifiedPlusPlugin),i.pluginData().isHbScoped||!i.pluginData().verifiedPlugin&&!i.pluginData().verifiedPlusPlugin)),W("opacity",!i.pluginData().isHbScoped&&(i.pluginData().verifiedPlugin||i.pluginData().verifiedPlusPlugin)?1:.25),a(),E(M(39,ti,i.pluginData().isHbScoped,!i.pluginData().isHbScoped)),W("opacity",i.pluginData().isHbScoped?1:.25),a(),g(i.pluginData().isHbScoped?20:-1),a(),g(!i.pluginData().isHbScoped&&(i.pluginData().verifiedPlugin||i.pluginData().verifiedPlusPlugin)?21:-1),a(),g(!i.pluginData().verifiedPlugin&&!i.pluginData().verifiedPlusPlugin?22:-1),a(),R("innerHTML",A(24,30,"plugins.manage.more_info",M(42,ni,i.linkScoped,i.linkVerified)),$),a(4),g(i.pluginData().links.homepage||i.pluginData().links.npm?27:-1),a(2),g(!i.pluginData().links.homepage&&!i.pluginData().links.npm?29:-1),a(2),g(i.pluginData().links.homepage||i.pluginData().links.npm?31:-1))},dependencies:[D],styles:[".plugin-icon[_ngcontent-%COMP%]{height:75px;width:75px;border-radius:15px;border:1px solid #222222}"]})}return t})();var pi=(t,d,e)=>({"purple-text":t,"green-text":d,"orange-text":e}),ci=(t,d)=>({"fa-bridge-circle-exclamation orange-text":t,"fa-bridge-circle-xmark red-text":d});function mi(t,d){if(t&1){let e=w();l(0,"a",21),o(1,"translate"),o(2,"translate"),f("click",function(){b(e);let i=m(2);return v(i.checkAndUpdatePlugin())}),c(3,"i",22),s()}t&2&&(S("openDelay",150)("ngbTooltip",r(1,3,"plugins.button_update")),B("aria-label",r(2,5,"plugins.button_update")))}function ui(t,d){if(t&1){let e=w();l(0,"a",21),o(1,"translate"),o(2,"translate"),f("click",function(){b(e);let i=m(2);return v(i.switchToScoped())}),c(3,"i",23),s()}t&2&&(S("openDelay",150)("ngbTooltip",r(1,3,"plugins.manage.scoped.switch")),B("aria-label",r(2,5,"plugins.manage.scoped.switch")))}function gi(t,d){if(t&1){let e=w();l(0,"a",24),o(1,"translate"),o(2,"translate"),f("click",function(){b(e);let i=m(2);return v(i.openSettings())}),c(3,"i",25),s()}t&2&&(S("ngbTooltip",r(1,3,"plugins.button_set_up"))("openDelay",150),B("aria-label",r(2,5,"plugins.button_set_up")))}function _i(t,d){if(t&1){let e=w();l(0,"a",24),o(1,"translate"),o(2,"translate"),f("click",function(){b(e);let i=m(2);return v(i.openBridgeSettings())}),c(3,"i",26),s()}t&2&&(S("ngbTooltip",r(1,3,"child_bridge.setup"))("openDelay",150),B("aria-label",r(2,5,"child_bridge.setup")))}function fi(t,d){if(t&1){let e=w();l(0,"a",24),o(1,"translate"),o(2,"translate"),f("click",function(){b(e);let i=m(2);return v(i.openBridgeSettings())}),c(3,"i",27),s()}t&2&&(S("ngbTooltip",r(1,3,"child_bridge.bridge_connect"))("openDelay",150),B("aria-label",r(2,5,"child_bridge.bridge_connect")))}function Ci(t,d){if(t&1&&c(0,"i",28),t&2){let e=m(2);E(M(2,ci,e.childBridgeStatus==="pending",e.childBridgeStatus==="down"))}}function hi(t,d){if(t&1&&(l(0,"div",9),u(1,mi,4,7,"a",17),u(2,ui,4,7,"a",17),u(3,gi,4,7,"a",18),u(4,_i,4,7,"a",18),u(5,fi,4,7,"a",18),c(6,"i",19),u(7,Ci,1,5,"i",20),s()),t&2){let e,n=m();a(),g(n.plugin().installedVersion&&n.plugin().updateAvailable&&!n.childBridgeRestartInProgress?1:-1),a(),g(n.plugin().installedVersion&&((e=n.plugin().newHbScope)==null?null:e.switch)===n.plugin().installedVersion&&!n.childBridgeRestartInProgress?2:-1),a(),g(n.plugin().installedVersion&&(!n.plugin().newHbScope||n.plugin().newHbScope.switch!==n.plugin().installedVersion)&&!n.plugin().updateAvailable&&!n.plugin().isConfigured&&!n.childBridgeRestartInProgress&&!n.plugin().disabled?3:-1),a(),g(n.plugin().installedVersion&&(!n.plugin().newHbScope||n.plugin().newHbScope.switch!==n.plugin().installedVersion)&&!n.plugin().updateAvailable&&n.plugin().isConfigured&&!n.plugin().hasChildBridges&&!n.plugin().disabled&&n.plugin().recommendChildBridge&&!n.childBridgeRestartInProgress?4:-1),a(),g(n.plugin().installedVersion&&(!n.plugin().newHbScope||n.plugin().newHbScope.switch!==n.plugin().installedVersion)&&!n.plugin().updateAvailable&&n.plugin().isConfigured&&n.plugin().hasChildBridges&&!n.childBridgeRestartInProgress&&n.plugin().hasChildBridgesUnpaired&&n.childBridgeStatus==="ok"&&!n.plugin().disabled?5:-1),a(),S("hidden",!n.childBridgeRestartInProgress),a(),g(n.plugin().installedVersion&&(!n.plugin().newHbScope||n.plugin().newHbScope.switch!==n.plugin().installedVersion)&&!n.plugin().updateAvailable&&n.plugin().isConfigured&&n.plugin().hasChildBridges&&!n.childBridgeRestartInProgress&&!n.plugin().hasChildBridgesUnpaired&&n.childBridgeStatus!=="ok"&&!n.plugin().disabled?7:-1)}}function bi(t,d){if(t&1){let e=w();l(0,"a",11),f("click",function(){b(e);let i=m();return v(i.openFundingModal(i.plugin()))}),c(1,"i",29),l(2,"span",13),p(3),s()()}if(t&2){let e=m();a(3),h("@",e.plugin().author)}}function vi(t,d){if(t&1&&(l(0,"span",13),c(1,"i",30),p(2),s()),t&2){let e=m();a(2),h("@",e.plugin().author," ")}}function xi(t,d){if(t&1&&(l(0,"span"),p(1),o(2,"date"),s()),t&2){let e=m(2);a(),h("(",A(2,1,e.plugin().lastUpdated,"yyyy-MM-dd"),")")}}function Pi(t,d){if(t&1&&(l(0,"span"),c(1,"i",31),l(2,"span",13),p(3),u(4,xi,3,4,"span"),s()()),t&2){let e=m();a(3),h("v",e.plugin().latestVersion," "),a(),g(e.plugin().lastUpdated?4:-1)}}function yi(t,d){if(t&1&&(c(0,"i",32),p(1)),t&2){let e=m();a(),h("v",e.plugin().installedVersion," ")}}function wi(t,d){if(t&1){let e=w();l(0,"a",21),o(1,"translate"),f("click",function(){b(e);let i=m(2);return v(i.doChildBridgeAction("restart"))}),c(2,"i",36),s()}if(t&2){let e=m(2);S("openDelay",150)("ngbTooltip",r(1,2,e.setChildBridges.length>1?"child_bridge.restart_plural":"child_bridge.restart"))}}function Si(t,d){if(t&1){let e=w();l(0,"a",37),f("click",function(){b(e);let i=m(2);return v(i.enablePlugin(i.plugin()))}),c(1,"i",38),o(2,"translate"),s()}t&2&&(a(),S("ngbTooltip",r(2,2,"plugins.status_disabled"))("openDelay",150))}function Bi(t,d){if(t&1){let e=w();l(0,"a",39),f("click",function(){b(e);let i=m(2);return v(i.installAlternateVersion())}),c(1,"i",40),s()}}function ki(t,d){if(t&1){let e=w();l(0,"button",44),f("click",function(){b(e);let i=m(3);return v(i.viewPluginLog())}),c(1,"i",49),p(2),o(3,"translate"),s()}t&2&&(a(2),h(" ",r(3,1,"plugins.manage.plugin_logs")," "))}function Ei(t,d){if(t&1){let e=w();l(0,"button",44),f("click",function(){b(e);let i=m(3);return v(i.installAlternateVersion())}),c(1,"i",50),p(2),o(3,"translate"),s()}t&2&&(a(2),h(" ",r(3,1,"plugins.manage.manage_version")," "))}function Ti(t,d){if(t&1){let e=w();l(0,"button",44),f("click",function(){b(e);let i=m(3);return v(i.openJsonEditor())}),c(1,"i",51),p(2),o(3,"translate"),s()}t&2&&(a(2),h(" ",r(3,1,"plugins.manage.json_config")," "))}function Ii(t,d){if(t&1){let e=w();l(0,"button",44),f("click",function(){b(e);let i=m(3);return v(i.disablePlugin(i.plugin()))}),c(1,"i",52),p(2),o(3,"translate"),s()}t&2&&(a(2),h(" ",r(3,1,"plugins.manage.disable")," "))}function Di(t,d){if(t&1){let e=w();l(0,"button",44),f("click",function(){b(e);let i=m(3);return v(i.enablePlugin(i.plugin()))}),c(1,"i",53),p(2),o(3,"translate"),s()}t&2&&(a(2),h(" ",r(3,1,"plugins.manage.enable")," "))}function Mi(t,d){if(t&1){let e=w();l(0,"button",44),f("click",function(){b(e);let i=m(3);return v(i.uninstallPlugin())}),c(1,"i",54),p(2),o(3,"translate"),s()}t&2&&(a(2),h(" ",r(3,1,"plugins.button_uninstall")," "))}function Vi(t,d){t&1&&c(0,"div",47)}function $i(t,d){if(t&1){let e=w();l(0,"button",44),f("click",function(){b(e);let i=m(4);return v(i.doChildBridgeAction("restart"))}),c(1,"i",57),p(2),o(3,"translate"),s()}if(t&2){let e=m(4);a(2),h(" ",r(3,1,e.setChildBridges.length>1?"child_bridge.restart_plural":"child_bridge.restart")," ")}}function Ni(t,d){if(t&1){let e=w();l(0,"button",44),f("click",function(){b(e);let i=m(4);return v(i.doChildBridgeAction("stop"))}),c(1,"i",58),p(2),o(3,"translate"),s()}if(t&2){let e=m(4);a(2),h(" ",r(3,1,e.setChildBridges.length>1?"child_bridge.stop_plural":"child_bridge.stop")," ")}}function Ai(t,d){if(t&1){let e=w();l(0,"button",44),f("click",function(){b(e);let i=m(4);return v(i.doChildBridgeAction("start"))}),c(1,"i",59),p(2),o(3,"translate"),s()}if(t&2){let e=m(4);a(2),h(" ",r(3,1,e.setChildBridges.length>1?"child_bridge.start_plural":"child_bridge.start")," ")}}function Hi(t,d){if(t&1){let e=w();l(0,"button",44),f("click",function(){b(e);let i=m(3);return v(i.openBridgeSettings())}),c(1,"i",55),p(2),o(3,"translate"),s(),u(4,$i,4,3,"button",46),u(5,Ni,4,3,"button",46),u(6,Ai,4,3,"button",46),l(7,"button",44),f("click",function(){b(e);let i=m(3);return v(i.resetChildBridges())}),c(8,"i",56),p(9),o(10,"translate"),s()}if(t&2){let e=m(3);a(2),h(" ",r(3,5,"child_bridge.bridge_settings")," "),a(2),g(e.childBridgeRestartInProgress?-1:4),a(),g(e.allChildBridgesStopped?-1:5),a(),g(e.allChildBridgesStopped?6:-1),a(3),h(" ",r(10,7,"child_bridge.reset_accessories")," ")}}function Oi(t,d){t&1&&c(0,"div",47)}function zi(t,d){if(t&1){let e=w();l(0,"button",44),f("click",function(){b(e);let i=m(3);return v(i.openBridgeSettings())}),c(1,"i",60),p(2),o(3,"translate"),s()}t&2&&(a(2),h(" ",r(3,1,"child_bridge.setup")," "))}function ji(t,d){t&1&&c(0,"div",47)}function Ri(t,d){if(t&1){let e=w();l(0,"button",44),f("click",function(){b(e);let i=m(3);return v(i.openBridgeSettings())}),c(1,"i",60),p(2),o(3,"translate"),s()}t&2&&(a(2),h(" ",r(3,1,"child_bridge.setup")," "))}function Fi(t,d){t&1&&c(0,"div",47)}function Ui(t,d){if(t&1&&(l(0,"a",48),c(1,"i",61),p(2),o(3,"translate"),s()),t&2){let e=m(3);S("href",e.plugin().links.bugs,H),a(2),h(" ",r(3,2,"support.links.issue")," ")}}function Li(t,d){if(t&1){let e=w();l(0,"span",35)(1,"a",41),c(2,"i",42),s(),l(3,"div",43)(4,"button",44),f("click",function(){b(e);let i=m(2);return v(i.openSettings())}),c(5,"i",45),p(6),o(7,"translate"),s(),u(8,ki,4,3,"button",46),u(9,Ei,4,3,"button",46),u(10,Ti,4,3,"button",46),u(11,Ii,4,3,"button",46),u(12,Di,4,3,"button",46),u(13,Mi,4,3,"button",46),u(14,Vi,1,0,"div",47),u(15,Hi,11,9),u(16,Oi,1,0,"div",47),u(17,zi,4,3,"button",46),u(18,ji,1,0,"div",47),u(19,Ri,4,3,"button",46),u(20,Fi,1,0,"div",47),u(21,Ui,4,4,"a",48),s()()}if(t&2){let e,n,i=m(2);a(),B("aria-label","Plugin Actions Dropdown"),a(5),h(" ",r(7,16,"plugins.button_settings")," "),a(2),g(i.plugin().isConfigured&&!i.plugin().disabled?8:-1),a(),g(i.plugin().publicPackage?9:-1),a(),g(!i.isMobile&&i.plugin().name!=="homebridge-config-ui-x"?10:-1),a(),g(i.plugin().name!=="homebridge-config-ui-x"&&!i.plugin().disabled?11:-1),a(),g(i.plugin().name!=="homebridge-config-ui-x"&&i.plugin().disabled?12:-1),a(),g(i.plugin().name!=="homebridge-config-ui-x"?13:-1),a(),g(!i.plugin().disabled&&i.plugin().isConfigured&&i.plugin().hasChildBridges&&i.plugin().installedVersion&&i.plugin().name!=="homebridge-config-ui-x"?14:-1),a(),g(i.plugin().hasChildBridges&&!i.plugin().disabled?15:-1),a(),g(i.plugin().isConfigured&&!i.plugin().hasChildBridges&&!i.plugin().disabled&&!i.plugin().recommendChildBridge?16:-1),a(),g(i.plugin().isConfigured&&!i.plugin().hasChildBridges&&!i.plugin().disabled&&!i.plugin().recommendChildBridge?17:-1),a(),g(i.plugin().isConfigured&&!i.plugin().hasChildBridges&&!i.plugin().disabled&&i.plugin().recommendChildBridge&&i.plugin().updateAvailable?18:-1),a(),g(i.plugin().isConfigured&&!i.plugin().hasChildBridges&&!i.plugin().disabled&&i.plugin().recommendChildBridge&&i.plugin().updateAvailable?19:-1),a(),g((e=i.plugin().links)!=null&&e.bugs?20:-1),a(),g((n=i.plugin().links)!=null&&n.bugs?21:-1)}}function qi(t,d){if(t&1&&(l(0,"div",9),u(1,wi,3,4,"a",17),u(2,Si,3,4,"a",33),u(3,Bi,2,0,"a",34),u(4,Li,22,18,"span",35),s()),t&2){let e=m();a(),g(!e.plugin().disabled&&e.plugin().hasChildBridges&&e.childBridgeStatus==="ok"?1:-1),a(),g(e.plugin().installedVersion&&e.plugin().disabled?2:-1),a(),g(e.plugin().publicPackage&&!e.plugin().installedVersion?3:-1),a(),g(e.plugin().installedVersion?4:-1)}}var Fe=(()=>{class t{$api=y(X);$auth=y(Z);$md=y(Ae);$modal=y(ie);$plugin=y(ne);$settings=y(Y);$toastr=y(K);$translate=y(F);$ws=y(ee);io;plugin=oe.required({});childBridges=oe.required({});hasChildBridges=!1;allChildBridgesStopped=!1;childBridgeStatus="pending";childBridgeRestartInProgress=!1;defaultIcon="assets/hb-icon.png";isMobile;setChildBridges=[];isAdmin=this.$auth.user.admin;constructor(){se(()=>{let e=this.childBridges();this.hasChildBridges=e.length>0,this.allChildBridgesStopped=e.every(n=>n.manuallyStopped===!0),this.hasChildBridges&&(e.some(n=>n.status==="down")?this.childBridgeStatus="down":e.some(n=>n.status==="pending")?this.childBridgeStatus="pending":e.some(n=>n.status==="ok")&&(this.childBridgeStatus="ok")),this.setChildBridges=e})}ngOnInit(){this.isMobile=this.$md.detect.mobile(),this.io=this.$ws.getExistingNamespace("child-bridges"),this.isMobile&&this.plugin().displayName.toLowerCase().startsWith("homebridge ")&&(this.plugin().displayName=this.plugin().displayName.replace(/^homebridge /i,"")),this.plugin().icon||(this.plugin().icon=this.defaultIcon)}openFundingModal(e){let n=this.$modal.open(je,{size:"lg",backdrop:"static"});n.componentInstance.plugin=e}pluginInfoModal(e){let n=this.$modal.open(Re,{size:"lg",backdrop:"static"});n.componentInstance.plugin=e}disablePlugin(e){let n=this.$modal.open(ze,{size:"lg",backdrop:"static"});n.componentInstance.pluginName=e.displayName||e.name,n.componentInstance.isConfigured=e.isConfigured,n.componentInstance.isConfiguredDynamicPlatform=e.isConfiguredDynamicPlatform,n.componentInstance.keepOrphans=this.$settings.keepOrphans,n.result.then(()=>V(this,null,function*(){try{yield this.$api.put(`/config-editor/plugin/${encodeURIComponent(e.name)}/disable`,{}),e.disabled=!0,this.hasChildBridges&&this.doChildBridgeAction("stop"),this.$modal.open(U,{size:"lg",backdrop:"static"})}catch(i){console.error(i),this.$toastr.error(this.$translate.instant("plugins.disable.error"),this.$translate.instant("toast.title_error"))}}))}enablePlugin(e){let n=this.$modal.open($e,{size:"lg",backdrop:"static"});n.componentInstance.title=e.name,n.componentInstance.message=this.$translate.instant("plugins.manage.confirm_enable",{pluginName:e.displayName}),n.componentInstance.confirmButtonLabel=this.$translate.instant("plugins.manage.enable"),n.componentInstance.faIconClass="fa-circle-play primary-text",n.result.then(()=>V(this,null,function*(){try{yield this.$api.put(`/config-editor/plugin/${encodeURIComponent(e.name)}/enable`,{}),e.disabled=!1,this.hasChildBridges&&(yield this.doChildBridgeAction("start")),this.$modal.open(U,{size:"lg",backdrop:"static"})}catch(i){console.error(i),this.$toastr.error(this.$translate.instant("plugins.enable.error"),this.$translate.instant("toast.title_error"))}}))}viewPluginLog(){let e=this.$modal.open(He,{size:"xl",backdrop:"static"});e.componentInstance.plugin=this.plugin(),e.componentInstance.childBridges=this.setChildBridges}doChildBridgeAction(e){return V(this,null,function*(){this.childBridgeRestartInProgress=!0;try{for(let n of this.setChildBridges)yield this.io.request(`${e}-child-bridge`,n.username).toPromise()}catch(n){console.error(n),this.$toastr.error(this.$translate.instant("plugins.bridge.action_error",{action:e}),this.$translate.instant("toast.title_error")),this.childBridgeRestartInProgress=!1}finally{setTimeout(()=>{this.childBridgeRestartInProgress=!1},e==="restart"?12e3:e==="stop"?6e3:1e3)}})}handleIconError(){this.plugin().icon=this.defaultIcon}checkAndUpdatePlugin(){this.$plugin.checkAndUpdatePlugin(this.plugin(),this.plugin().latestVersion)}openSettings(){this.$plugin.settings(this.plugin())}openBridgeSettings(){this.$plugin.bridgeSettings(this.plugin())}switchToScoped(){this.$plugin.switchToScoped(this.plugin())}installAlternateVersion(){this.$plugin.installAlternateVersion(this.plugin())}openJsonEditor(){this.$plugin.jsonEditor(this.plugin())}uninstallPlugin(){this.$plugin.uninstallPlugin(this.plugin(),this.setChildBridges)}resetChildBridges(){this.$plugin.resetChildBridges(this.setChildBridges)}static \u0275fac=function(n){return new(n||t)};static \u0275cmp=I({type:t,selectors:[["app-plugin-card"]],inputs:{plugin:[1,"plugin"],childBridges:[1,"childBridges"]},decls:24,vars:15,consts:[[1,"card","card-body","mb-3"],[1,"d-flex","flex-row","justify-content-between"],[1,"d-flex","flex-column","me-3","align-items-center","justify-content-between"],["alt","Plugin Icon",1,"plugin-icon-card","mb-3",3,"error","src"],[1,"d-flex","flex-column","justify-content-between",2,"min-width","calc(100% - 80px)"],[1,"d-flex","flex-row","align-items-end"],[1,"d-flex","flex-column","w-100"],[1,"d-flex","flex-row"],[1,"card-title","mb-2","text-truncate"],[1,"ms-auto"],[1,"card-text","mb-2","text-truncate"],["href","javascript:void(0)",1,"card-link",3,"click"],[1,"fas","fa-shield-alt","fa-lg","me-1"],[1,"grey-text"],[1,"card-text","mb-2"],["href","javascript:void(0)",1,"card-link"],[1,"card-text","mb-0","grey-text"],["href","javascript:void(0)","container","body","triggers","hover",1,"card-link",3,"openDelay","ngbTooltip"],["href","javascript:void(0)","container","body","triggers","hover",1,"card-link",3,"ngbTooltip","openDelay"],[1,"fas","fa-spinner","fa-pulse","fa-lg","grey-text","ms-3",3,"hidden"],[1,"fas","fa-lg","ms-3",3,"class"],["href","javascript:void(0)","container","body","triggers","hover",1,"card-link",3,"click","openDelay","ngbTooltip"],[1,"far","fa-arrow-alt-circle-up","primary-text","fa-lg","fa-fade","ms-3",2,"--fa-animation-duration","2s"],[1,"fas","fa-arrow-right-arrow-left","primary-text","fa-lg","fa-fade","ms-3",2,"--fa-animation-duration","2s"],["href","javascript:void(0)","container","body","triggers","hover",1,"card-link",3,"click","ngbTooltip","openDelay"],[1,"fas","fa-sliders","primary-text","fa-lg","fa-fade","ms-3",2,"--fa-animation-duration","2s"],[1,"icon-button","fas","fa-bridge","primary-text","fa-lg","fa-fade","ms-3",2,"--fa-animation-duration","2s"],[1,"icon-button","fas","fa-qrcode","primary-text","fa-lg","fa-fade","ms-3",2,"--fa-animation-duration","2s"],[1,"fas","fa-lg","ms-3"],[1,"fas","fa-heart","fa-lg","me-1","pink-text"],[1,"fas","fa-heart","fa-lg","me-1",2,"opacity","0.5"],[1,"far","fa-circle-dot","fa-lg","me-1"],[1,"far","fa-circle-check","fa-lg","me-1"],["href","javascript:void(0)",1,"card-link","red-text"],["href","javascript:void(0)"],["ngbDropdown","","placement","left",1,"d-inline-block","ms-3","mt-auto"],[1,"fas","fa-lg","fa-power-off","ms-3"],["href","javascript:void(0)",1,"card-link","red-text",3,"click"],["container","body","triggers","hover",1,"far","fa-pause-circle","fa-lg",3,"ngbTooltip","openDelay"],["href","javascript:void(0)",3,"click"],[1,"far","fa-arrow-alt-circle-down","fa-lg"],["href","javascript:void(0)","ngbDropdownToggle","",1,"card-link","text-decoration-none","mt-auto",2,"outline","none"],[1,"fa-solid","fa-ellipsis-v","fa-lg"],["ngbDropdownMenu","","aria-labelledby","Plugin Actions Dropdown"],["ngbDropdownItem","",3,"click"],[1,"fas","fa-sliders"],["ngbDropdownItem",""],[1,"dropdown-divider"],["ngbDropdownItem","","rel","noopener noreferrer","target","_blank",3,"href"],[1,"fas","fa-wave-square"],[1,"fas","fa-code-compare"],[1,"fas","fa-code"],[1,"far","fa-circle-pause"],[1,"far","fa-circle-play"],[1,"fas","fa-trash"],[1,"fas","fa-bridge"],[1,"fas","fa-broom"],[1,"icon-button","fas","fa-power-off"],[1,"fas","fa-stop"],[1,"fas","fa-play"],[1,"icon-button","fas","fa-bridge"],[1,"icon-button","fa","fa-question-circle-o"]],template:function(n,i){n&1&&(l(0,"div",0)(1,"div",1)(2,"div",2)(3,"img",3),f("error",function(){return i.handleIconError()}),s()(),l(4,"div",4)(5,"div",5)(6,"div",6)(7,"div",7)(8,"h5",8),p(9),s(),u(10,hi,8,7,"div",9),s(),l(11,"p",10)(12,"a",11),f("click",function(){return i.pluginInfoModal(i.plugin())}),c(13,"i",12),l(14,"span",13),p(15),s()()(),l(16,"p",14),u(17,bi,4,1,"a",15),u(18,vi,3,1,"span",13),s(),l(19,"div",7)(20,"p",16),u(21,Pi,5,2,"span"),u(22,yi,2,1),s(),u(23,qi,5,4,"div",9),s()()()()()()),n&2&&(a(3),S("src",i.plugin().icon,H),a(6),C(i.plugin().displayName),a(),g(i.isAdmin?10:-1),a(3),E(me(11,pi,i.plugin().isHbScoped,!i.plugin().isHbScoped&&(i.plugin().verifiedPlugin||i.plugin().verifiedPlusPlugin),!i.plugin().isHbScoped&&!i.plugin().verifiedPlugin&&!i.plugin().verifiedPlusPlugin)),a(2),C(i.plugin().name),a(2),g((i.plugin().verifiedPlugin||i.plugin().verifiedPlusPlugin)&&i.plugin().funding?17:-1),a(),g((i.plugin().verifiedPlugin||i.plugin().verifiedPlusPlugin)&&i.plugin().funding?-1:18),a(3),g(i.plugin().publicPackage&&!i.plugin().installedVersion?21:-1),a(),g(i.plugin().installedVersion?22:-1),a(),g(i.isAdmin?23:-1))},dependencies:[te,Ve,Me,De,Ie,Te,_e,D],encapsulation:2})}return t})();var Ue=(()=>{class t{$activeModal=y(z);dismissModal(){this.$activeModal.dismiss("Dismiss")}static \u0275fac=function(n){return new(n||t)};static \u0275cmp=I({type:t,selectors:[["ng-component"]],decls:28,vars:22,consts:[["role","dialog","aria-modal","true",1,"modal-content"],[1,"modal-header"],["id","plugin-support-modal-title",1,"modal-title"],["type","button","data-bs-dismiss","modal",1,"btn-close",3,"click"],[1,"modal-body"],[1,"text-center","mb-3"],[1,"fa","fa-question-circle-o","primary-text",2,"font-size","75px"],[1,"mb-0"],[3,"innerHTML"],[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"]],template:function(n,i){n&1&&(l(0,"div",0)(1,"form")(2,"div",1)(3,"h5",2),p(4),o(5,"translate"),s(),l(6,"button",3),o(7,"translate"),f("click",function(){return i.dismissModal()}),s()(),l(8,"div",4)(9,"div",5),c(10,"i",6),s(),l(11,"ul",7),c(12,"li",8),o(13,"translate"),c(14,"li",8),o(15,"translate"),c(16,"li",8),o(17,"translate"),c(18,"li",8),o(19,"translate"),s(),c(20,"app-support-banner"),s(),l(21,"div",9),c(22,"div",10),l(23,"div",11)(24,"button",12),f("click",function(){return i.dismissModal()}),p(25),o(26,"translate"),s()(),c(27,"div",13),s()()()),n&2&&(B("aria-labelledby","plugin-support-modal-title"),a(4),C(r(5,8,"support.title")),a(2),B("aria-label",r(7,10,"form.button_close")),a(6),S("innerHTML",r(13,12,"plugins.support.list_1"),$),a(2),S("innerHTML",r(15,14,"plugins.support.list_2"),$),a(2),S("innerHTML",r(17,16,"plugins.support.list_3"),$),a(2),S("innerHTML",r(19,18,"plugins.support.list_4"),$),a(7),h(" ",r(26,20,"form.button_close")," "))},dependencies:[Oe,D],encapsulation:2})}return t})();var Gi=["searchInput"],Qi=(t,d)=>({"fa-magnifying-glass":t,"fa-exclamation-circle":d});function Wi(t,d){t&1&&c(0,"app-spinner")}function Ji(t,d){if(t&1){let e=w();l(0,"button",7),o(1,"translate"),o(2,"translate"),f("click",function(){b(e);let i=m();return v(i.showSearch())}),c(3,"i"),s(),l(4,"button",8),o(5,"translate"),o(6,"translate"),f("click",function(){b(e);let i=m();return v(i.showStats())}),c(7,"i"),s()}if(t&2){let e=m();S("openDelay",150)("ngbTooltip",r(1,13,"form.search"))("hidden",!e.installedPlugins().length&&!e.showSearchBar()),B("aria-label",r(2,15,"form.search")),a(3),E(ae("fas",e.showSearchBar()?" primary-text":""," fa-search")),a(),S("openDelay",150)("ngbTooltip",r(5,17,"plugins.stats")),B("aria-label",r(6,19,"plugins.stats")),a(3),E(ae("fas",e.tab()==="stats"?" primary-text":""," fa-sliders"))}}function Ki(t,d){if(t&1){let e=w();l(0,"a",15),f("click",function(){b(e);let i=m(3);return v(i.onClearSearch())}),c(1,"i",16),s()}}function Xi(t,d){if(t&1){let e=w();l(0,"div",9)(1,"div",11)(2,"form",12),f("ngSubmit",function(){b(e);let i=m(2);return v(i.onSubmit(i.form))}),c(3,"input",13,0),o(5,"translate"),u(6,Ki,2,0,"a",14),s()()()}if(t&2){let e=m(2);a(2),S("formGroup",e.form),a(),S("placeholder",r(5,3,"plugins.placeholder_search_plugin")),a(3),g(e.showExitButton()?6:-1)}}function Yi(t,d){if(t&1&&(l(0,"div",17),c(1,"app-plugin-card",19),s()),t&2){let e=d.$implicit,n=m(3);a(),S("plugin",e)("childBridges",n.getPluginChildBridges(e))}}function Zi(t,d){if(t&1&&(l(0,"div",18),c(1,"i",20),l(2,"p"),p(3),o(4,"translate"),s()()),t&2){let e=m(3);a(),E(M(5,Qi,!e.showExitButton(),e.showExitButton())),a(2),C(r(4,3,e.showExitButton()?"plugins.placeholder_search_none":"plugins.placeholder_search_first"))}}function et(t,d){if(t&1&&(l(0,"div",10),G(1,Yi,2,2,"div",17,q),u(3,Zi,5,8,"div",18),s()),t&2){let e=m(2);a(),Q(e.installedPlugins()),a(2),g(e.installedPlugins().length===0&&!e.loading()&&!e.mainError()?3:-1)}}function it(t,d){if(t&1&&(u(0,Xi,7,5,"div",9),u(1,et,4,1,"div",10)),t&2){let e=m();g(e.showSearchBar()?0:-1),a(),g(e.loading()?-1:1)}}function tt(t,d){t&1&&(l(0,"div",21)(1,"div",22)(2,"code"),p(3,"https://developers.homebridge.io/analytics "),l(4,"a",23),c(5,"i",24),s()()(),l(6,"div",25),p(7),o(8,"translate"),s()(),c(9,"iframe",26)),t&2&&(a(7),C(r(8,1,"plugins.stats_note")))}var dn=(()=>{class t{destroyRef=y(re);$api=y(X);$auth=y(Z);$modal=y(ie);$plugin=y(ne);$router=y(Ce);$settings=y(Y);$toastr=y(K);$translate=y(F);$ws=y(ee);searchInput=ge("searchInput",{});mainError=k(!1,{});loading=k(!0,{});tab=k("main",{});installedPlugins=k([],{});childBridges=k([],{});showSearchBar=k(!1,{});showExitButton=k(!1,{});isSearchMode=k(!1,{});io;isAdmin=this.$auth.user.admin;form=new xe({query:new Pe("")});ngOnInit(){let e=this.$translate.instant("menu.label_plugins");this.$settings.setPageTitle(e),this.$plugin.onPluginListRefresh.pipe(le(this.destroyRef)).subscribe(()=>{this.loadInstalledPlugins(),this.getChildBridgeMetadata()}),this.io=this.$ws.connectToNamespace("child-bridges"),this.io.connected.subscribe(()=>{this.initialize()}),this.io.socket.connected&&this.initialize(),this.io.socket.on("child-bridge-status-update",n=>{let i=this.childBridges().find(_=>_.username===n.username);i?(Object.assign(i,n),this.childBridges.set([...this.childBridges()])):this.childBridges.update(_=>[..._,n])}),this.$router.events.pipe(le(this.destroyRef)).subscribe(n=>{n instanceof fe&&this.loadInstalledPlugins()})}search(){return V(this,null,function*(){this.installedPlugins.set([]),this.loading.set(!0),this.showExitButton.set(!0);try{let e=yield this.$api.get(`/plugins/search/${encodeURIComponent(this.form.value.query)}`),n=new Set,i=new Map(e.map(_=>[_.name,_]));this.installedPlugins.set(e.reduce((_,T)=>{if(T.name==="homebridge-config-ui-x"||n.has(T.name))return _;if(T.newHbScope){let j=T.newHbScope.to,Le=i.has(j);(T.installedVersion||!Le)&&(n.add(j),_.push(T))}else _.push(T);return _},[])),yield this.appendMetaInfo()}catch(e){this.isSearchMode.set(!1),console.error(e);let n=e instanceof Error?e.message:this.$translate.instant("plugins.toast_failed_to_search_plugins");this.$toastr.error(n,this.$translate.instant("toast.title_error")),this.loadInstalledPlugins()}finally{this.loading.set(!1)}})}onClearSearch(){this.loadInstalledPlugins()}onSubmit({value:e}){e.query.length?(this.isSearchMode.set(!0),this.search()):this.isSearchMode()&&(this.isSearchMode.set(!1),this.loadInstalledPlugins())}showSearch(){if(this.showSearchBar())this.showSearchBar.set(!1),this.isSearchMode()&&(this.isSearchMode.set(!1),this.form.setValue({query:""}),this.loadInstalledPlugins());else{window.document.querySelector("body")?.classList.remove("bg-black"),this.tab.set("main"),this.showSearchBar.set(!0);let e=this.searchInput();e&&setTimeout(()=>e.nativeElement.focus(),0)}}showStats(){this.tab()==="stats"?(window.document.querySelector("body")?.classList.remove("bg-black"),this.tab.set("main")):(window.document.querySelector("body")?.classList.add("bg-black"),this.tab.set("stats"),this.showSearchBar.set(!1))}openSupport(){this.$modal.open(Ue,{size:"lg",backdrop:"static"})}ngOnDestroy(){window.document.querySelector("body")?.classList.remove("bg-black"),this.io.end()}getPluginChildBridges(e){return this.childBridges().filter(n=>n.plugin===e.name)}initialize(){return V(this,null,function*(){this.getChildBridgeMetadata(),this.io.socket.emit("monitor-child-bridge-status"),yield this.loadInstalledPlugins(),this.installedPlugins().length||this.showSearch();let{action:e,plugin:n}=this.$router.parseUrl(this.$router.url).queryParams;if(e){let i=this.installedPlugins().find(_=>_.name===n);switch(e){case"just-installed":{i&&(i.isConfigured?this.$modal.open(U,{size:"lg",backdrop:"static"}):this.$plugin.settings(i));break}}this.$router.navigate([],{queryParams:{},replaceUrl:!0,queryParamsHandling:""})}})}loadInstalledPlugins(){return V(this,null,function*(){this.form.setValue({query:""}),this.showExitButton.set(!1),this.installedPlugins.set([]),this.loading.set(!0),this.mainError.set(!1);try{let e=yield this.$api.get("/plugins");this.installedPlugins.set(e.filter(i=>i.name!=="homebridge-config-ui-x")),yield this.appendMetaInfo();let n=this.installedPlugins().sort((i,_)=>{let T=(i.updateAvailable?1e3:0)+(i.newHbScope?100:0)+(i.disabled?-10:0)+(i.isConfigured?-20:0)+(i.hasChildBridgesUnpaired?5:0)+(i.hasChildBridges&&this.$settings.env.recommendChildBridges?-1:0),j=(_.updateAvailable?1e3:0)+(_.newHbScope?100:0)+(_.disabled?-10:0)+(_.isConfigured?-20:0)+(_.hasChildBridgesUnpaired?5:0)+(_.hasChildBridges&&this.$settings.env.recommendChildBridges?-1:0);return T!==j?j-T:i.name.localeCompare(_.name)});return this.installedPlugins.set(n),n}catch(e){console.error(e);let n=e instanceof Error?e.message:this.$translate.instant("plugins.toast_failed_to_load_plugins");this.$toastr.error(n,this.$translate.instant("toast.title_error")),this.mainError.set(!0)}finally{this.loading.set(!1)}})}appendMetaInfo(){return V(this,null,function*(){this.isAdmin&&(yield Promise.all(this.installedPlugins().filter(e=>e.installedVersion).map(e=>V(this,null,function*(){try{let n=yield this.$api.get(`/config-editor/plugin/${encodeURIComponent(e.name)}`);e.isConfigured=n.length>0,e.isConfiguredDynamicPlatform=e.isConfigured&&Object.prototype.hasOwnProperty.call(n[0],"platform"),e.recommendChildBridge=e.isConfigured&&this.$settings.env.recommendChildBridges&&!["homebridge","homebridge-config-ui-x"].includes(e.name),e.hasChildBridges=e.isConfigured&&n.some(_=>_._bridge&&_._bridge.username);let i=this.getPluginChildBridges(e);e.hasChildBridgesUnpaired=i.some(_=>{let T=_.paired===!1&&!this.isBridgeAlertHidden(_.username,"hap"),j=_.matterConfig&&_.matterCommissioned===!1&&!this.isBridgeAlertHidden(_.username,"matter");return T||j}),this.$settings.env.plugins?.hideUpdatesFor?.includes(e.name)&&(e.updateAvailable=!1)}catch(n){console.error(`Failed to load config for ${e.name}:`,n),e.isConfigured=!0,e.hasChildBridges=!0}}))))})}getChildBridgeMetadata(){this.io.request("get-homebridge-child-bridge-status").subscribe(e=>{this.childBridges.set(e)})}isBridgeAlertHidden(e,n){let i=this.$settings.env.bridges?.find(_=>_.username.toUpperCase()===e.toUpperCase());return i?n==="hap"?!!i.hideHapAlert:!!i.hideMatterAlert:!1}static \u0275fac=function(n){return new(n||t)};static \u0275cmp=I({type:t,selectors:[["ng-component"]],viewQuery:function(n,i){n&1&&pe(i.searchInput,Gi,5),n&2&&ce()},decls:13,vars:9,consts:[["searchInput",""],[1,"row","mb-3"],[1,"col-6"],[1,"primary-text","m-0"],[1,"col-6","text-end"],["type","button",1,"btn","btn-elegant","my-0","me-0",3,"click"],[1,"fa","fa-question-circle-o"],["type","button","container","body","placement","bottom","triggers","hover",1,"btn","btn-elegant","my-0","me-2",3,"click","openDelay","ngbTooltip","hidden"],["type","button","container","body","placement","bottom","triggers","hover",1,"btn","btn-elegant","my-0","me-2","d-none","d-md-inline-block",3,"click","openDelay","ngbTooltip"],[1,"row"],[1,"d-flex","flex-wrap","justify-content-between"],[1,"col-md-12"],["novalidate","",3,"ngSubmit","formGroup"],["type","text","formControlName","query",1,"search-bar",3,"placeholder"],["href","javascript:void(0)",1,"search-bar-clear"],["href","javascript:void(0)",1,"search-bar-clear",3,"click"],[1,"fas","fa-square-xmark"],[1,"hb-plugin-space-between"],[1,"alert","alert-info","mt-4","text-center","w-100"],[3,"plugin","childBridges"],[1,"fas","primary-text","my-3",2,"font-size","75px"],[1,"w-100","py-3","hb-stats-header","text-white","text-center"],[1,"mb-2"],["href","https://developers.homebridge.io/analytics","target","_blank"],[1,"fa","fa-external-link"],[1,"small","grey-text"],["src",de`https://developers.homebridge.io/analytics/`,"sandbox","allow-scripts allow-same-origin allow-popups","referrerpolicy","no-referrer",1,"hb-stats"]],template:function(n,i){n&1&&(u(0,Wi,1,0,"app-spinner"),l(1,"div",1)(2,"div",2)(3,"h3",3),p(4),o(5,"translate"),s()(),l(6,"div",4),u(7,Ji,8,21),l(8,"button",5),o(9,"translate"),f("click",function(){return i.openSupport()}),c(10,"i",6),s()()(),u(11,it,2,2)(12,tt,10,3)),n&2&&(g(i.loading()?0:-1),a(4),C(r(5,5,"menu.label_plugins")),a(3),g(i.isAdmin?7:-1),a(),B("aria-label",r(9,7,"support.title")),a(3),g(i.tab()==="main"?11:i.tab()==="stats"?12:-1))},dependencies:[Ne,Be,ye,he,be,ve,ke,Se,we,Fe,te,D],styles:[".search-bar[_ngcontent-%COMP%]{outline:none;box-sizing:inherit!important;background-color:inherit;height:50px!important;width:100%;border-width:.5px;padding:10px;margin-bottom:15px}@media(hover:hover){.search-bar[_ngcontent-%COMP%]:hover{border:1px solid #000000}}.search-bar[_ngcontent-%COMP%]:focus{border:1px solid #000000;box-shadow:0 1px #000}.search-bar-clear[_ngcontent-%COMP%]{position:absolute;right:30px;font-size:25px;color:#d0d0d0;line-height:50px;cursor:pointer}.hb-plugin-space-between[_ngcontent-%COMP%]{box-sizing:border-box;width:calc(50% - 6.6666666667px)}@media only screen and (max-width:991px){.hb-plugin-space-between[_ngcontent-%COMP%]{width:100%}}.hb-stats-header[_ngcontent-%COMP%]{background:#242424;border-top-left-radius:.5rem;border-top-right-radius:.5rem}.hb-stats-header[_ngcontent-%COMP%] code[_ngcontent-%COMP%]{border:1px solid grey;border-radius:5px;padding:5px;font-size:.8rem;color:#d3d3d3}.hb-stats[_ngcontent-%COMP%]{height:calc(100% - 121px);width:100%;overflow:hidden;border-bottom-left-radius:.5rem;border-bottom-right-radius:.5rem}@media(max-width:767px){.hb-stats[_ngcontent-%COMP%]{height:calc(100% - 60px)}}"]})}return t})();export{dn as PluginsComponent};