homebridge-config-ui-x 5.0.0-beta.31 → 5.0.0-beta.33
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.
- package/package.json +2 -2
- package/public/3rdpartylicenses.txt +16 -16
- package/public/{chunk-GT23NQ6X.js → chunk-434LJ6OT.js} +1 -1
- package/public/{chunk-5YQD6SFF.js → chunk-4Y35I3ZB.js} +1 -1
- package/public/{chunk-HZMFFGGL.js → chunk-535SHNCE.js} +1 -1
- package/public/{chunk-QAHKBWOC.js → chunk-5D5VS362.js} +1 -1
- package/public/{chunk-JN3CZQ6V.js → chunk-5NI2YZKY.js} +1 -1
- package/public/chunk-5WDISWJ3.js +1 -0
- package/public/chunk-6CZSY3Q6.js +1 -0
- package/public/{chunk-IBVQ5XHN.js → chunk-73SS2RFT.js} +1 -1
- package/public/{chunk-PIKLHZDA.js → chunk-7GT27K3E.js} +1 -1
- package/public/{chunk-DMNEGPYI.js → chunk-AC3C235T.js} +1 -1
- package/public/chunk-ADCZTDDT.js +1 -0
- package/public/chunk-B5ETSZTP.js +6 -0
- package/public/chunk-BBAREJCS.js +1 -0
- package/public/{chunk-WAHQ6FKA.js → chunk-BMFB2CR3.js} +1 -1
- package/public/{chunk-5FGGDMPF.js → chunk-BNZI5IYM.js} +1 -1
- package/public/chunk-CIF6FZS4.js +1 -0
- package/public/{chunk-OURKTFZU.js → chunk-CT72LAN4.js} +1 -1
- package/public/{chunk-VB5BRR2U.js → chunk-D6VQ2XSW.js} +1 -1
- package/public/{chunk-NN4AKVX5.js → chunk-DASL7RGE.js} +1 -1
- package/public/{chunk-BUJGF5XS.js → chunk-DHEJ72XV.js} +1 -1
- package/public/{chunk-27Y2SMZQ.js → chunk-DJXDSGTS.js} +1 -1
- package/public/{chunk-FYBGDBHS.js → chunk-DYAIZVQW.js} +1 -1
- package/public/chunk-EENQAA4Y.js +1 -0
- package/public/chunk-FFVPS42K.js +1 -0
- package/public/{chunk-KTZO3WBP.js → chunk-FGXB4ABC.js} +1 -1
- package/public/{chunk-OOXD7YEJ.js → chunk-G4QCORZA.js} +1 -1
- package/public/{chunk-LXXOSKLU.js → chunk-GPFJKK77.js} +1 -1
- package/public/{chunk-E4JGXDDX.js → chunk-HKUX6SIQ.js} +1 -1
- package/public/chunk-HOKDECJU.js +1 -0
- package/public/chunk-HYJNTVQ7.js +8 -0
- package/public/{chunk-JA6D57G2.js → chunk-I7ZQNVVI.js} +1 -1
- package/public/{chunk-RGOOY4ED.js → chunk-IZVXTMWH.js} +1 -1
- package/public/{chunk-GH44GF33.js → chunk-JTZVAPYW.js} +1 -1
- package/public/{chunk-GZ6LPTUZ.js → chunk-L4J26EOW.js} +1 -1
- package/public/chunk-MUUAF3E7.js +1 -0
- package/public/chunk-OBSMZNST.js +1 -0
- package/public/chunk-OLJ6JSXQ.js +1 -0
- package/public/{chunk-Z4NHF7RI.js → chunk-OLYOQI2N.js} +1 -1
- package/public/chunk-QVYOCVSK.js +1 -0
- package/public/chunk-QZU6CGDB.js +1 -0
- package/public/chunk-RP5TYXWG.js +1 -0
- package/public/{chunk-DI7XQKGK.js → chunk-RY4JLM5Q.js} +1 -1
- package/public/{chunk-DZK7ET6B.js → chunk-S4RPUBPU.js} +1 -1
- package/public/chunk-SC5UI2C5.js +1 -0
- package/public/chunk-SDH5ANWO.js +1 -0
- package/public/chunk-SN2RLKY5.js +1 -0
- package/public/{chunk-EPUIY43R.js → chunk-SO6OPTOU.js} +1 -1
- package/public/chunk-TU2JUQW2.js +1 -0
- package/public/{chunk-GAOJPT7Q.js → chunk-UE7ANWWM.js} +16 -16
- package/public/{chunk-TRQOR36U.js → chunk-UMWOVQL4.js} +1 -1
- package/public/{chunk-6SQJWZJ3.js → chunk-VBIPFSJS.js} +1 -1
- package/public/chunk-VZWZVEBH.js +1 -0
- package/public/chunk-WBKWERKR.js +1 -0
- package/public/{chunk-6VKXZGBQ.js → chunk-WKC47KND.js} +1 -1
- package/public/chunk-WKPWPRZJ.js +1 -0
- package/public/{chunk-QRKW54YY.js → chunk-WPD4PYFJ.js} +1 -1
- package/public/chunk-WZIQ43Z4.js +1 -0
- package/public/{chunk-EIDRJ2MZ.js → chunk-YE4T476I.js} +1 -1
- package/public/chunk-YK65RXXO.js +1 -0
- package/public/{chunk-R5E5WAV5.js → chunk-YTCXC42L.js} +1 -1
- package/public/{chunk-G6DEXV26.js → chunk-Z52JKZRJ.js} +1 -1
- package/public/index.html +2 -2
- package/public/main-AHGLEGVQ.js +1 -0
- package/public/{styles-7Q7QNSR3.css → styles-EZS52PWT.css} +1 -1
- package/public/chunk-6LLC6ASY.js +0 -1
- package/public/chunk-7ZWVTY7M.js +0 -1
- package/public/chunk-A4UEYJ65.js +0 -1
- package/public/chunk-CBZQXGMM.js +0 -1
- package/public/chunk-DPQL3CFN.js +0 -1
- package/public/chunk-FFAK3S6H.js +0 -1
- package/public/chunk-GMDD67DK.js +0 -1
- package/public/chunk-IFT3CY2Y.js +0 -1
- package/public/chunk-IN2KYSF4.js +0 -1
- package/public/chunk-JIBSE7F4.js +0 -1
- package/public/chunk-KKXQOKX2.js +0 -1
- package/public/chunk-L2ORBCR2.js +0 -1
- package/public/chunk-LEBQDAR4.js +0 -1
- package/public/chunk-OE2GYWRJ.js +0 -8
- package/public/chunk-REMR6QVW.js +0 -1
- package/public/chunk-SRBTIWVO.js +0 -1
- package/public/chunk-V6L2K2WY.js +0 -1
- package/public/chunk-WZWCA2UY.js +0 -1
- package/public/chunk-X6VYPTSJ.js +0 -1
- package/public/chunk-XADFYKJR.js +0 -1
- package/public/chunk-XASV7YHW.js +0 -6
- package/public/chunk-YLAFYHGY.js +0 -1
- package/public/chunk-YLOLF5VJ.js +0 -1
- package/public/chunk-Z2FKNCT7.js +0 -1
- package/public/main-422LQ5TU.js +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a}from"./chunk-
|
|
1
|
+
import{a}from"./chunk-DHEJ72XV.js";import"./chunk-73SS2RFT.js";import"./chunk-HA6CO5NZ.js";import"./chunk-675OFXLW.js";import"./chunk-CKNHTRCL.js";export{a as ShutdownLinuxComponent};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{a as Se}from"./chunk-CIF6FZS4.js";import{a as we}from"./chunk-YE4T476I.js";import{v as ke}from"./chunk-UE7ANWWM.js";import{g as J,m as N,n as be}from"./chunk-N4F42HDL.js";import{b as G,c as re,e as W,f as le,g as Z,j as D,k as oe,l as q,m as se,n as de,o as pe,p as ce,q as me,r as _e,s as ue,t as ge,u as ve,v as xe,y as K,z as fe}from"./chunk-YLEC7AUG.js";import{d as P,e as he}from"./chunk-T3GI7KUT.js";import{b as Ce}from"./chunk-IZVXTMWH.js";import{h as F,k as R}from"./chunk-73SS2RFT.js";import{a as V,b as $}from"./chunk-675OFXLW.js";import{Ac as O,Bb as h,Cc as l,Dc as o,Ec as Y,Lb as f,M as Q,Mb as g,Rb as v,Tb as A,Ub as T,Vb as M,Wb as i,Xb as a,Yb as m,ac as k,bd as L,db as X,dc as x,ec as u,gd as j,h as y,ib as t,na as w,oc as r,pc as p,qc as _,tc as ie,ub as B,uc as ne,vc as ae,w as E,xa as C,ya as S,yc as H,zc as I}from"./chunk-CKNHTRCL.js";function Me(n,c){n&1&&(i(0,"div",13),m(1,"i",14),a(),i(2,"p",15),r(3),l(4,"translate"),a()),n&2&&(t(3),p(o(4,1,"reset.no_accessories")))}function Ne(n,c){n&1&&(i(0,"div",13),m(1,"i",16),a(),i(2,"ul",17)(3,"li"),r(4),l(5,"translate"),a(),i(6,"li"),r(7),l(8,"translate"),a(),i(9,"li"),r(10),l(11,"translate"),a()(),i(12,"ngb-alert",18)(13,"p",19),r(14),l(15,"translate"),a()()),n&2&&(t(4),p(o(5,5,"reset.accessory_all.list_1")),t(3),p(o(8,7,"reset.accessory_all.list_2")),t(3),p(o(11,9,"reset.accessory_all.list_3")),t(2),g("dismissible",!1),t(2),p(o(15,11,"reset.action_is_irreversible")))}function Ve(n,c){if(n&1){let e=k();i(0,"button",20),l(1,"translate"),x("click",function(){C(e);let d=u();return S(d.$activeModal.dismiss("Dismiss"))}),r(2),l(3,"translate"),a()}if(n&2){let e=u();g("disabled",e.clicked),f("aria-label",o(1,3,"form.button_close")),t(2),_(" ",o(3,5,"form.button_close")," ")}}function Fe(n,c){if(n&1){let e=k();i(0,"button",21),l(1,"translate"),x("click",function(){C(e);let d=u();return S(d.$activeModal.dismiss("Dismiss"))}),r(2),l(3,"translate"),a()}n&2&&(f("aria-label",o(1,2,"form.button_close")),t(2),_(" ",o(3,4,"form.button_close")," "))}function Re(n,c){n&1&&(r(0),l(1,"translate")),n&2&&_(" ",o(1,1,"form.button_remove")," ")}function De(n,c){n&1&&m(0,"i",23)}function Pe(n,c){if(n&1){let e=k();i(0,"button",22),x("click",function(){C(e);let d=u();return S(d.onResetCachedAccessoriesClick())}),h(1,Re,2,3)(2,De,1,0,"i",23),a()}if(n&2){let e=u();g("disabled",e.clicked),t(),v(e.clicked?-1:1),t(),v(e.clicked?2:-1)}}var ye=(()=>{class n{$activeModal=w(N);$api=w(R);$router=w(P);$toastr=w(F);$translate=w(V);clicked=!1;cachedAccessories=[];constructor(){}ngOnInit(){this.loadCachedAccessories()}loadCachedAccessories(){return y(this,null,function*(){try{this.cachedAccessories=yield E(this.$api.get("/server/cached-accessories"))}catch(e){console.error(e),this.$toastr.error(this.$translate.instant("reset.error_message"),this.$translate.instant("toast.title_error")),this.$activeModal.close()}})}onResetCachedAccessoriesClick(){return this.clicked=!0,this.$api.put("/server/reset-cached-accessories",{}).subscribe({next:()=>{this.$toastr.success(this.$translate.instant("reset.delete_success"),this.$translate.instant("toast.title_success")),this.$activeModal.close(),this.$router.navigate(["/restart"],{queryParams:{restarting:!0}})},error:e=>{this.clicked=!1,console.error(e),this.$toastr.error(this.$translate.instant("reset.failed_to_reset"),this.$translate.instant("toast.title_error"))}})}static \u0275fac=function(s){return new(s||n)};static \u0275cmp=B({type:n,selectors:[["ng-component"]],decls:19,vars:12,consts:[[1,"modal-content"],[1,"modal-header"],[1,"modal-title"],["type","button","data-dismiss","modal",1,"close",3,"click","disabled"],["aria-hidden","true"],[1,"modal-body"],[1,"modal-footer","justify-content-between"],[1,"text-left"],["type","button","data-dismiss","modal",1,"btn","btn-elegant",3,"disabled"],[1,"text-center"],["type","button","data-dismiss","modal",1,"btn","btn-elegant"],[1,"text-right"],["type","button","data-dismiss","modal",1,"btn","btn-danger",3,"disabled"],[1,"text-center","mb-3"],[1,"fas","fa-fw","fa-circle-check","primary-text",2,"font-size","75px"],[1,"mb-0","text-center"],[1,"fas","fa-fw","fa-network-wired","primary-text",2,"font-size","75px"],[1,"mb-3"],["type","error",1,"mb-0",3,"dismissible"],[1,"text-center","mb-0"],["type","button","data-dismiss","modal",1,"btn","btn-elegant",3,"click","disabled"],["type","button","data-dismiss","modal",1,"btn","btn-elegant",3,"click"],["type","button","data-dismiss","modal",1,"btn","btn-danger",3,"click","disabled"],[1,"fas","fa-fw","fa-spinner","fa-pulse"]],template:function(s,d){s&1&&(i(0,"div",0)(1,"div",1)(2,"h5",2),r(3),l(4,"translate"),a(),i(5,"button",3),l(6,"translate"),x("click",function(){return d.$activeModal.dismiss("Dismiss")}),i(7,"span",4),r(8,"\xD7"),a()()(),i(9,"div",5),h(10,Me,5,3)(11,Ne,16,13),a(),i(12,"div",6)(13,"div",7),h(14,Ve,4,7,"button",8),a(),i(15,"div",9),h(16,Fe,4,6,"button",10),a(),i(17,"div",11),h(18,Pe,3,3,"button",12),a()()()),s&2&&(t(3),p(o(4,8,"reset.accessory_all.title")),t(2),g("disabled",d.clicked),f("aria-label",o(6,10,"form.button_close")),t(5),v(d.cachedAccessories.length===0?10:-1),t(),v(d.cachedAccessories.length>0?11:-1),t(3),v(d.cachedAccessories.length>0?14:-1),t(2),v(d.cachedAccessories.length===0?16:-1),t(2),v(d.cachedAccessories.length>0?18:-1))},dependencies:[J,$],encapsulation:2})}return n})();var He=(n,c)=>({"green-text":n,"grey-text":c}),Oe=(n,c)=>({"btn-danger":n,"btn-elegant":c}),Le=(n,c,e)=>({"fa-broom":n,"fa-undo":c,"fa-spinner fa-pulse":e});function Ue(n,c){n&1&&(i(0,"div",13),m(1,"i",14),a(),i(2,"p",15),r(3),l(4,"translate"),a()),n&2&&(t(3),p(o(4,1,"reset.bridge_accessories.empty")))}function ze(n,c){if(n&1){let e=k();i(0,"li",19)(1,"span"),r(2),m(3,"br"),i(4,"small",20),m(5,"i",21),r(6),l(7,"translate"),i(8,"span",22),r(9),a()()(),i(10,"button",23),l(11,"translate"),x("click",function(){let d=C(e).$implicit,b=u(2);return S(b.toggleList(d._id))}),m(12,"i",24),a()()}if(n&2){let e=c.$implicit,s=u(2);t(2),_(" ",e.name," "),t(3),g("ngClass",I(12,He,e._isPaired,!e._isPaired)),t(),_(" ",o(7,8,e._isPaired?"status.widget.qr_paired":"status.widget.qr_unpaired")," \xB7 "),t(3),p(e._username),t(),g("disabled",s.clicked)("ngClass",I(15,Oe,!s.toDelete.includes(e._id),s.toDelete.includes(e._id))),f("aria-label",o(11,10,"form.button_delete")),t(2),g("ngClass",O(18,Le,!s.toDelete.includes(e._id),s.toDelete.includes(e._id)&&!s.clicked,s.toDelete.includes(e._id)&&s.clicked))}}function je(n,c){if(n&1&&(i(0,"div",13),m(1,"i",16),a(),i(2,"ul",17)(3,"li"),r(4),l(5,"translate"),a(),i(6,"li"),r(7),l(8,"translate"),a(),i(9,"li"),r(10),l(11,"translate"),a()(),i(12,"ul",18),T(13,ze,13,22,"li",19,A),a()),n&2){let e=u();t(4),p(o(5,3,"reset.bridge_accessories.list_1")),t(3),p(o(8,5,"reset.clear_cache_single.list_3")),t(3),p(o(11,7,"reset.bridge_accessories.list_2")),t(3),M(e.pairings)}}function Ge(n,c){if(n&1){let e=k();i(0,"button",25),x("click",function(){C(e);let d=u();return S(d.$activeModal.dismiss("Dismiss"))}),r(1),l(2,"translate"),a()}if(n&2){let e=u();g("disabled",e.clicked),t(),_(" ",o(2,2,"form.button_close")," ")}}function We(n,c){if(n&1){let e=k();i(0,"button",26),x("click",function(){C(e);let d=u();return S(d.$activeModal.dismiss("Dismiss"))}),r(1),l(2,"translate"),a()}n&2&&(t(),_(" ",o(2,1,"form.button_close")," "))}function qe(n,c){if(n&1&&r(0),n&2){let e=u(3);_(" (",e.toDelete.length,") ")}}function Ke(n,c){if(n&1&&(r(0),l(1,"translate"),h(2,qe,1,1)),n&2){let e=u(2);_(" ",o(1,2,"form.button_remove")," "),t(2),v(e.toDelete.length>0?2:-1)}}function Je(n,c){n&1&&m(0,"i",28)}function Qe(n,c){if(n&1){let e=k();i(0,"button",27),x("click",function(){C(e);let d=u();return S(d.cleanBridges())}),h(1,Ke,3,4)(2,Je,1,0,"i",28),a()}if(n&2){let e=u();g("disabled",!e.toDelete.length||e.clicked),t(),v(e.clicked?-1:1),t(),v(e.clicked?2:-1)}}var Ee=(()=>{class n{$activeModal=w(N);$api=w(R);$router=w(P);$toastr=w(F);$translate=w(V);clicked=!1;pairings=[];toDelete=[];constructor(){}ngOnInit(){this.loadPairings()}loadPairings(){return y(this,null,function*(){try{this.pairings=(yield E(this.$api.get("/server/pairings"))).filter(e=>e._category==="bridge"&&!e._main).sort((e,s)=>e.name.localeCompare(s.name))}catch(e){console.error(e),this.$toastr.error(this.$translate.instant("settings.unpair_bridge.load_error"),this.$translate.instant("toast.title_error")),this.$activeModal.close()}})}toggleList(e){this.toDelete.includes(e)?this.toDelete=this.toDelete.filter(s=>s!==e):this.toDelete.push(e)}cleanBridges(){return this.clicked=!0,this.$api.delete("/server/pairings/accessories",{body:this.toDelete.map(e=>({id:e}))}).subscribe({next:()=>{this.$toastr.success(this.$translate.instant("reset.accessory_ind.done"),this.$translate.instant("toast.title_success")),this.$activeModal.close(),this.$router.navigate(["/restart"],{queryParams:{restarting:!0}})},error:e=>{this.clicked=!1,console.error(e),this.$toastr.error(this.$translate.instant("reset.accessory_ind.fail"),this.$translate.instant("toast.title_error"))}})}static \u0275fac=function(s){return new(s||n)};static \u0275cmp=B({type:n,selectors:[["ng-component"]],decls:19,vars:12,consts:[[1,"modal-content"],[1,"modal-header"],[1,"modal-title"],["type","button","data-dismiss","modal",1,"close",3,"click","disabled"],["aria-hidden","true"],[1,"modal-body"],[1,"modal-footer","justify-content-between"],[1,"text-left"],["type","button","data-dismiss","modal",1,"btn","btn-elegant",3,"disabled"],[1,"text-center"],["type","button","data-dismiss","modal",1,"btn","btn-elegant"],[1,"text-right"],["type","button","data-dismiss","modal",1,"btn","btn-danger",3,"disabled"],[1,"text-center","mb-3"],[1,"fas","fa-fw","fa-circle-check","primary-text",2,"font-size","75px"],[1,"mb-0","text-center"],[1,"fas","fa-fw","fa-broom","primary-text",2,"font-size","75px"],[1,"mb-3"],[1,"list-group","list-group-box","mt-2"],[1,"list-group-item","d-flex","justify-content-between","align-items-center"],[1,"grey-text"],[1,"fas","fa-fw","fa-link",3,"ngClass"],[1,"text-monospace"],[1,"btn","btn-danger","m-0","ml-3",3,"click","disabled","ngClass"],[1,"fas","fa-fw",3,"ngClass"],["type","button","data-dismiss","modal",1,"btn","btn-elegant",3,"click","disabled"],["type","button","data-dismiss","modal",1,"btn","btn-elegant",3,"click"],["type","button","data-dismiss","modal",1,"btn","btn-danger",3,"click","disabled"],[1,"fas","fa-fw","fa-spinner","fa-pulse"]],template:function(s,d){s&1&&(i(0,"div",0)(1,"div",1)(2,"h5",2),r(3),l(4,"translate"),a(),i(5,"button",3),l(6,"translate"),x("click",function(){return d.$activeModal.dismiss("Dismiss")}),i(7,"span",4),r(8,"\xD7"),a()()(),i(9,"div",5),h(10,Ue,5,3)(11,je,15,9),a(),i(12,"div",6)(13,"div",7),h(14,Ge,3,4,"button",8),a(),i(15,"div",9),h(16,We,3,3,"button",10),a(),i(17,"div",11),h(18,Qe,3,3,"button",12),a()()()),s&2&&(t(3),p(o(4,8,"reset.bridge_accessories.title")),t(2),g("disabled",d.clicked),f("aria-label",o(6,10,"form.button_close")),t(5),v(d.pairings.length===0?10:-1),t(),v(d.pairings.length>0?11:-1),t(3),v(d.pairings.length>0?14:-1),t(2),v(d.pairings.length===0?16:-1),t(2),v(d.pairings.length>0?18:-1))},dependencies:[L,$],encapsulation:2})}return n})();function Xe(n,c){n&1&&(r(0),l(1,"translate")),n&2&&_(" ",o(1,1,"form.button_reset")," ")}function Ye(n,c){n&1&&m(0,"i",17)}var Be=(()=>{class n{$activeModal=w(N);$api=w(R);$route=w(P);$toastr=w(F);$translate=w(V);clicked;constructor(){}onResetHomebridgeAccessoryClick(){return this.clicked=!0,this.$api.put("/server/reset-homebridge-accessory",{}).subscribe({next:()=>{this.$toastr.success(this.$translate.instant("reset.accessory_reset"),this.$translate.instant("toast.title_success")),this.$activeModal.close(),this.$route.navigate(["/restart"])},error:e=>{console.error(e),this.$toastr.error(this.$translate.instant("reset.failed_to_reset"),this.$translate.instant("toast.title_error"))}})}static \u0275fac=function(s){return new(s||n)};static \u0275cmp=B({type:n,selectors:[["ng-component"]],decls:40,vars:33,consts:[[1,"modal-content"],[1,"modal-header"],[1,"modal-title"],["type","button","data-dismiss","modal",1,"close",3,"click","disabled"],["aria-hidden","true"],[1,"modal-body"],[1,"text-center","mb-3"],[1,"fas","fa-fw","fa-bridge","primary-text",2,"font-size","75px"],[1,"mb-3"],["type","error",1,"mb-0",3,"dismissible"],[1,"text-center","mb-0"],[1,"modal-footer","justify-content-between"],[1,"text-left"],["type","button","data-dismiss","modal",1,"btn","btn-elegant",3,"click","disabled"],[1,"text-center"],[1,"text-right"],["type","button","data-dismiss","modal",1,"btn","btn-danger",3,"click","disabled"],[1,"fas","fa-fw","fa-spinner","fa-pulse"]],template:function(s,d){s&1&&(i(0,"div",0)(1,"div",1)(2,"h5",2),r(3),l(4,"translate"),a(),i(5,"button",3),l(6,"translate"),x("click",function(){return d.$activeModal.dismiss("Dismiss")}),i(7,"span",4),r(8,"\xD7"),a()()(),i(9,"div",5)(10,"div",6),m(11,"i",7),a(),i(12,"ul",8)(13,"li"),r(14),l(15,"translate"),a(),i(16,"li"),r(17),l(18,"translate"),a(),i(19,"li"),r(20),l(21,"translate"),a(),i(22,"li"),r(23),l(24,"translate"),a()(),i(25,"ngb-alert",9)(26,"p",10),r(27),l(28,"translate"),a()()(),i(29,"div",11)(30,"div",12)(31,"button",13),l(32,"translate"),x("click",function(){return d.$activeModal.dismiss("Dismiss")}),r(33),l(34,"translate"),a()(),m(35,"div",14),i(36,"div",15)(37,"button",16),x("click",function(){return d.onResetHomebridgeAccessoryClick()}),h(38,Xe,2,3)(39,Ye,1,0,"i",17),a()()()()),s&2&&(t(3),p(o(4,15,"reset.bridge_all.title")),t(2),g("disabled",d.clicked),f("aria-label",o(6,17,"form.button_close")),t(9),p(o(15,19,"reset.bridge_all.list_1")),t(3),p(o(18,21,"reset.bridge_all.list_2")),t(3),p(o(21,23,"reset.bridge_all.list_3")),t(3),p(o(24,25,"reset.bridge_all.list_4")),t(2),g("dismissible",!1),t(2),p(o(28,27,"reset.action_is_irreversible")),t(4),g("disabled",d.clicked),f("aria-label",o(32,29,"form.button_close")),t(2),_(" ",o(34,31,"form.button_close")," "),t(4),g("disabled",d.clicked),t(),v(d.clicked?-1:38),t(),v(d.clicked?39:-1))},dependencies:[J,$],encapsulation:2})}return n})();var ee=(n,c)=>({"green-text":n,"grey-text":c}),te=(n,c)=>({"btn-danger":n,"btn-elegant":c}),Ie=(n,c,e)=>({"fa-refresh":n,"fa-undo":c,"fa-spinner fa-pulse":e}),Ze=(n,c,e)=>({"fa-trash":n,"fa-undo":c,"fa-spinner fa-pulse":e});function et(n,c){n&1&&(i(0,"div",13),m(1,"i",14),a(),i(2,"p",15),r(3),l(4,"translate"),a()),n&2&&(t(3),p(o(4,1,"reset.bridges.empty")))}function tt(n,c){if(n&1){let e=k();i(0,"li",21)(1,"span"),r(2),m(3,"br"),i(4,"small",22),m(5,"i",23),r(6),l(7,"translate"),i(8,"span",24),r(9),a(),r(10),l(11,"titlecase"),a()(),i(12,"button",25),l(13,"translate"),x("click",function(){let d=C(e).$implicit,b=u(3);return S(b.toggleList(d._id,!1))}),m(14,"i",26),a()()}if(n&2){let e=c.$implicit,s=u(3);t(2),_(" ",e.name," "),t(3),g("ngClass",I(15,ee,e._isPaired,!e._isPaired)),t(),_(" ",o(7,9,e._isPaired?"status.widget.qr_paired":"status.widget.qr_unpaired")," \xB7 "),t(3),p(e._username),t(),_(" \xB7 ",e._main?"Homebridge":o(11,11,e._category)," "),t(2),g("disabled",s.clicked)("ngClass",I(18,te,!s.isInList(e._id),s.isInList(e._id))),f("aria-label",o(13,13,"form.button_unpair")),t(2),g("ngClass",O(21,Ie,!s.isInList(e._id),s.isInList(e._id)&&!s.clicked,s.isInList(e._id)&&s.clicked))}}function it(n,c){if(n&1&&(i(0,"ul",17)(1,"li",18)(2,"h6",19),r(3),l(4,"translate"),a(),i(5,"p",20),r(6),l(7,"translate"),a()(),T(8,tt,15,25,"li",21,A),a()),n&2){let e=u(2);t(3),p(o(4,2,"reset.bridge_ind.head_non_child")),t(3),p(o(7,4,"reset.bridge_ind.desc_non_child")),t(2),M(e.pairingsNonChild)}}function nt(n,c){if(n&1){let e=k();i(0,"li",21)(1,"span"),r(2),m(3,"br"),i(4,"small",22),m(5,"i",23),r(6),l(7,"translate"),i(8,"span",24),r(9),a()()(),i(10,"button",25),l(11,"translate"),x("click",function(){let d=C(e).$implicit,b=u(3);return S(b.toggleList(d._id,!0))}),m(12,"i",26),a()()}if(n&2){let e=c.$implicit,s=u(3);t(2),_(" ",e.name," "),t(3),g("ngClass",I(12,ee,e._isPaired,!e._isPaired)),t(),_(" ",o(7,8,e._isPaired?"status.widget.qr_paired":"status.widget.qr_unpaired")," \xB7 "),t(3),p(e._username),t(),g("disabled",s.clicked)("ngClass",I(15,te,!s.isInList(e._id),s.isInList(e._id))),f("aria-label",o(11,10,"form.button_unpair")),t(2),g("ngClass",O(18,Ie,!s.isInList(e._id),s.isInList(e._id)&&!s.clicked,s.isInList(e._id)&&s.clicked))}}function at(n,c){if(n&1&&(i(0,"ul",17)(1,"li",18)(2,"h6",19),r(3),l(4,"translate"),a(),i(5,"p",20),r(6),l(7,"translate"),a()(),T(8,nt,13,22,"li",21,A),a()),n&2){let e=u(2);t(3),p(o(4,2,"reset.bridge_ind.head_child_active")),t(3),p(o(7,4,"reset.bridge_ind.desc_child_active")),t(2),M(e.pairingsChildActive)}}function rt(n,c){if(n&1){let e=k();i(0,"li",21)(1,"span"),r(2),m(3,"br"),i(4,"small",22),m(5,"i",23),r(6),l(7,"translate"),i(8,"span",24),r(9),a()()(),i(10,"button",25),l(11,"translate"),x("click",function(){let d=C(e).$implicit,b=u(3);return S(b.toggleList(d._id,!1))}),m(12,"i",26),a()()}if(n&2){let e=c.$implicit,s=u(3);t(2),_(" ",e.name," "),t(3),g("ngClass",I(12,ee,e._isPaired,!e._isPaired)),t(),_(" ",o(7,8,e._isPaired?"status.widget.qr_paired":"status.widget.qr_unpaired")," \xB7 "),t(3),p(e._username),t(),g("disabled",s.clicked)("ngClass",I(15,te,!s.isInList(e._id),s.isInList(e._id))),f("aria-label",o(11,10,"form.button_unpair")),t(2),g("ngClass",O(18,Ze,!s.isInList(e._id),s.isInList(e._id)&&!s.clicked,s.isInList(e._id)&&s.clicked))}}function lt(n,c){if(n&1&&(i(0,"ul",17)(1,"li",18)(2,"h6",19),r(3),l(4,"translate"),a(),i(5,"p",20),r(6),l(7,"translate"),a()(),T(8,rt,13,22,"li",21,A),a()),n&2){let e=u(2);t(3),p(o(4,2,"reset.bridge_ind.head_child_stale")),t(3),p(o(7,4,"reset.bridge_ind.desc_child_stale")),t(2),M(e.pairingsChildStale)}}function ot(n,c){if(n&1&&(i(0,"div",13),m(1,"i",16),a(),h(2,it,10,6,"ul",17)(3,at,10,6,"ul",17)(4,lt,10,6,"ul",17)),n&2){let e=u();t(2),v(e.pairingsNonChild.length>0?2:-1),t(),v(e.pairingsChildActive.length>0?3:-1),t(),v(e.pairingsChildStale.length>0?4:-1)}}function st(n,c){if(n&1){let e=k();i(0,"button",27),x("click",function(){C(e);let d=u();return S(d.$activeModal.dismiss("Dismiss"))}),r(1),l(2,"translate"),a()}if(n&2){let e=u();g("disabled",e.clicked),t(),_(" ",o(2,2,"form.button_close")," ")}}function dt(n,c){if(n&1){let e=k();i(0,"button",28),x("click",function(){C(e);let d=u();return S(d.$activeModal.dismiss("Dismiss"))}),r(1),l(2,"translate"),a()}n&2&&(t(),_(" ",o(2,1,"form.button_close")," "))}function pt(n,c){if(n&1&&r(0),n&2){let e=u(3);_(" (",e.toDelete.length,") ")}}function ct(n,c){if(n&1&&(r(0),l(1,"translate"),h(2,pt,1,1)),n&2){let e=u(2);_(" ",o(1,2,"form.button_reset")," "),t(2),v(e.toDelete.length>0?2:-1)}}function mt(n,c){n&1&&m(0,"i",30)}function _t(n,c){if(n&1){let e=k();i(0,"button",29),x("click",function(){C(e);let d=u();return S(d.removeBridges())}),h(1,ct,3,4)(2,mt,1,0,"i",30),a()}if(n&2){let e=u();g("disabled",!e.toDelete.length||e.clicked),t(),v(e.clicked?-1:1),t(),v(e.clicked?2:-1)}}var $e=(()=>{class n{$activeModal=w(N);$api=w(R);$router=w(P);$toastr=w(F);$translate=w(V);clicked=!1;pairingsNonChild=[];pairingsChildActive=[];pairingsChildStale=[];toDelete=[];constructor(){}ngOnInit(){this.loadPairings()}loadPairings(){return y(this,null,function*(){try{let e=(yield E(this.$api.get("/server/pairings"))).filter(s=>!s._main).sort((s,d)=>s.name.localeCompare(d.name));this.pairingsChildActive=e.filter(s=>s._category==="bridge"&&!s._couldBeStale),this.pairingsNonChild=e.filter(s=>s._category!=="bridge"),this.pairingsChildStale=e.filter(s=>s._category==="bridge"&&s._couldBeStale)}catch(e){console.error(e),this.$toastr.error(this.$translate.instant("settings.unpair_bridge.load_error"),this.$translate.instant("toast.title_error")),this.$activeModal.close()}})}toggleList(e,s=!1){this.toDelete.some(d=>d.id===e)?this.toDelete=this.toDelete.filter(d=>d.id!==e):this.toDelete.push({id:e,resetPairingInfo:s})}isInList(e){return this.toDelete.some(s=>s.id===e)}removeBridges(){return this.clicked=!0,this.$api.delete("/server/pairings",{body:this.toDelete}).subscribe({next:()=>{this.$toastr.success(this.$translate.instant("reset.bridge_ind.done"),this.$translate.instant("toast.title_success")),this.$activeModal.close(),this.$router.navigate(["/restart"],{queryParams:{restarting:!0}})},error:e=>{this.clicked=!1,console.error(e),this.$toastr.error(this.$translate.instant("reset.bridge_ind.fail"),this.$translate.instant("toast.title_error"))}})}static \u0275fac=function(s){return new(s||n)};static \u0275cmp=B({type:n,selectors:[["ng-component"]],decls:19,vars:12,consts:[[1,"modal-content"],[1,"modal-header"],[1,"modal-title"],["type","button","data-dismiss","modal",1,"close",3,"click","disabled"],["aria-hidden","true"],[1,"modal-body"],[1,"modal-footer","justify-content-between"],[1,"text-left"],["type","button","data-dismiss","modal",1,"btn","btn-elegant",3,"disabled"],[1,"text-center"],["type","button","data-dismiss","modal",1,"btn","btn-elegant"],[1,"text-right"],["type","button","data-dismiss","modal",1,"btn","btn-danger",3,"disabled"],[1,"text-center","mb-3"],[1,"fas","fa-fw","fa-circle-check","primary-text",2,"font-size","75px"],[1,"text-center","mb-0"],[1,"fas","fa-fw","fa-bridge","primary-text",2,"font-size","75px"],[1,"list-group","list-group-box","mt-3","mb-0"],[1,"list-group-item"],[1,"mb-1","text-center"],[1,"mb-0","small","grey-text","text-center"],[1,"list-group-item","d-flex","justify-content-between","align-items-center"],[1,"grey-text"],[1,"fas","fa-fw","fa-link",3,"ngClass"],[1,"text-monospace"],[1,"btn","btn-danger","m-0","ml-3",3,"click","disabled","ngClass"],[1,"fas","fa-fw",3,"ngClass"],["type","button","data-dismiss","modal",1,"btn","btn-elegant",3,"click","disabled"],["type","button","data-dismiss","modal",1,"btn","btn-elegant",3,"click"],["type","button","data-dismiss","modal",1,"btn","btn-danger",3,"click","disabled"],[1,"fas","fa-fw","fa-spinner","fa-pulse"]],template:function(s,d){s&1&&(i(0,"div",0)(1,"div",1)(2,"h5",2),r(3),l(4,"translate"),a(),i(5,"button",3),l(6,"translate"),x("click",function(){return d.$activeModal.dismiss("Dismiss")}),i(7,"span",4),r(8,"\xD7"),a()()(),i(9,"div",5),h(10,et,5,3)(11,ot,5,3),a(),i(12,"div",6)(13,"div",7),h(14,st,3,4,"button",8),a(),i(15,"div",9),h(16,dt,3,3,"button",10),a(),i(17,"div",11),h(18,_t,3,3,"button",12),a()()()),s&2&&(t(3),p(o(4,8,"reset.bridge_ind.title")),t(2),g("disabled",d.clicked),f("aria-label",o(6,10,"form.button_close")),t(5),v(d.pairingsChildActive.length===0&&d.pairingsChildStale.length===0&&d.pairingsNonChild.length===0?10:-1),t(),v(d.pairingsChildActive.length>0||d.pairingsChildStale.length>0||d.pairingsNonChild.length>0?11:-1),t(3),v(d.pairingsChildActive.length>0||d.pairingsChildStale.length>0||d.pairingsNonChild.length>0?14:-1),t(2),v(d.pairingsChildActive.length===0&&d.pairingsChildStale.length===0&&d.pairingsNonChild.length===0?16:-1),t(2),v(d.pairingsChildActive.length>0||d.pairingsChildStale.length>0||d.pairingsNonChild.length>0?18:-1))},dependencies:[L,j,$],encapsulation:2})}return n})();function gt(n,c){if(n&1){let e=k();i(0,"li",11)(1,"span")(2,"label",18)(3,"input",19),ae("ngModelChange",function(d){let b=C(e).$implicit;return ne(b.selected,d)||(b.selected=d),S(d)}),a(),i(4,"span"),r(5),a(),m(6,"span",20),a()(),i(7,"span",21),r(8),a()()}if(n&2){let e=c.$implicit;t(2),g("for","adapter"+e.iface),t(),g("id","adapter"+e.iface),ie("ngModel",e.selected),t(2),p(e.iface),t(3),p(e.ip4||e.ip6)}}var Ae=(()=>{class n{$activeModal=w(N);availableNetworkAdapters=[];bridgeNetworkAdapters=[];constructor(){}submit(){this.$activeModal.close(this.availableNetworkAdapters.filter(e=>e.selected).map(e=>e.iface))}static \u0275fac=function(s){return new(s||n)};static \u0275cmp=B({type:n,selectors:[["ng-component"]],inputs:{availableNetworkAdapters:"availableNetworkAdapters",bridgeNetworkAdapters:"bridgeNetworkAdapters"},decls:37,vars:24,consts:[[1,"modal-content"],[1,"modal-header"],[1,"modal-title"],["type","button","data-dismiss","modal",1,"close",3,"click"],["aria-hidden","true"],[1,"modal-body"],[1,"text-center","mb-3"],[1,"fas","fa-fw","fa-ethernet","primary-text",2,"font-size","75px"],[1,"mb-3"],[1,"list-group","list-group-box"],[1,"list-group-item","d-flex","flex-row","justify-content-between"],[1,"list-group-item","d-flex","flex-row","flex-wrap","justify-content-between"],[1,"modal-footer","justify-content-between"],[1,"text-left"],["type","button","data-dismiss","modal",1,"btn","btn-elegant",3,"click"],[1,"text-center"],[1,"text-right"],["type","button","data-dismiss","modal",1,"btn","btn-primary",3,"click"],[1,"hb-uix-switch","d-inline","pr-3",3,"for"],["type","checkbox",3,"ngModelChange","id","ngModel"],[1,"hb-uix-slider","hb-uix-round"],[1,"text-monospace"]],template:function(s,d){s&1&&(i(0,"div",0)(1,"div",1)(2,"h5",2),r(3),l(4,"translate"),a(),i(5,"button",3),l(6,"translate"),x("click",function(){return d.$activeModal.dismiss("Dismiss")}),i(7,"span",4),r(8,"\xD7"),a()()(),i(9,"div",5)(10,"div",6),m(11,"i",7),a(),i(12,"ul",8)(13,"li"),r(14),l(15,"translate"),a()(),i(16,"ul",9)(17,"li",10)(18,"strong"),r(19),l(20,"translate"),a(),i(21,"strong"),r(22),l(23,"translate"),a()(),T(24,gt,9,5,"li",11,A),a()(),i(26,"div",12)(27,"div",13)(28,"button",14),l(29,"translate"),x("click",function(){return d.$activeModal.dismiss("Dismiss")}),r(30),l(31,"translate"),a()(),m(32,"div",15),i(33,"div",16)(34,"button",17),x("click",function(){return d.submit()}),r(35),l(36,"translate"),a()()()()),s&2&&(t(3),p(o(4,8,"settings.network.title_network_interfaces")),t(2),f("aria-label",o(6,10,"form.button_close")),t(9),p(o(15,12,"settings.network.message_network_interface")),t(5),p(o(20,14,"settings.network.label_interface_name")),t(3),p(o(23,16,"settings.network.label_ip_address")),t(2),M(d.availableNetworkAdapters),t(4),f("aria-label",o(29,18,"form.button_close")),t(2),_(" ",o(31,20,"form.button_close")," "),t(5),_(" ",o(36,22,"form.button_save")," "))},dependencies:[K,G,W,q,$],encapsulation:2})}return n})();var vt=n=>({file:n}),xt=n=>({link:n}),ft=n=>({"fa-pulse":n}),Te=n=>({"is-invalid":n}),bt=(n,c)=>({"badge-danger":n,"badge-info":c});function ht(n,c){if(n&1){let e=k();i(0,"ul",5)(1,"li",12)(2,"span",13),r(3),l(4,"translate"),a(),i(5,"button",14),l(6,"translate"),x("click",function(){C(e);let d=u();return S(d.openUiSettings())}),m(7,"i",15),a()(),i(8,"li",12)(9,"span",13),r(10),l(11,"translate"),a(),i(12,"button",14),l(13,"translate"),x("click",function(){C(e);let d=u();return S(d.openBackupModal())}),m(14,"i",15),a()(),i(15,"li",12)(16,"span",13),r(17),l(18,"translate"),a(),i(19,"a",16),l(20,"translate"),m(21,"i",15),a()()()}n&2&&(t(3),_(" ",o(4,6,"menu.label_settings_advanced")," "),t(2),f("aria-label",o(6,8,"menu.label_settings_advanced")),t(5),_(" ",o(11,10,"backup.title_backup")," "),t(2),f("aria-label",o(13,12,"backup.title_backup")),t(5),_(" ",o(18,14,"menu.tooltip_user_accounts")," "),t(2),f("aria-label",o(20,16,"menu.tooltip_user_accounts")))}function Ct(n,c){n&1&&(i(0,"li",70)(1,"small",71),r(2),l(3,"translate"),a(),i(4,"button",72),l(5,"translate"),r(6),l(7,"translate"),a()()),n&2&&(t(2),p(o(3,3,"settings.changes.saved")),t(2),f("aria-label",o(5,5,"menu.tooltip_restart")),t(2),_(" ",o(7,7,"menu.tooltip_restart")," "))}function St(n,c){if(n&1){let e=k();i(0,"ul",6)(1,"li",17),r(2),l(3,"translate"),i(4,"div",18)(5,"select",19),x("ngModelChange",function(d){C(e);let b=u();return S(b.saveUiSettingChange("lang",d))}),i(6,"option",20),r(7),l(8,"translate"),a(),i(9,"option",21),r(10,"Bulgarian (bg)"),a(),i(11,"option",22),r(12,"Catalan (ca)"),a(),i(13,"option",23),r(14,"Chinese - Simplified (zh-CN)"),a(),i(15,"option",24),r(16,"Chinese - Traditional (zh-TW)"),a(),i(17,"option",25),r(18,"Czech (cs)"),a(),i(19,"option",26),r(20,"Dutch (nl)"),a(),i(21,"option",27),r(22,"English (en)"),a(),i(23,"option",28),r(24,"Finnish (fi)"),a(),i(25,"option",29),r(26,"French (fr)"),a(),i(27,"option",30),r(28,"German (de)"),a(),i(29,"option",31),r(30,"Hebrew (he)"),a(),i(31,"option",32),r(32,"Hungarian (hu)"),a(),i(33,"option",33),r(34,"Indonesian (id)"),a(),i(35,"option",34),r(36,"Italian (it)"),a(),i(37,"option",35),r(38,"Japanese (ja)"),a(),i(39,"option",36),r(40,"Korean (ko)"),a(),i(41,"option",37),r(42,"Macedonian (mk)"),a(),i(43,"option",38),r(44,"Norwegian (no)"),a(),i(45,"option",39),r(46,"Polish (pl)"),a(),i(47,"option",40),r(48,"Portuguese (Brazil)"),a(),i(49,"option",41),r(50,"Portuguese (Portugal)"),a(),i(51,"option",42),r(52,"Russian (ru)"),a(),i(53,"option",43),r(54,"Slovenian (sl)"),a(),i(55,"option",44),r(56,"Spanish (es)"),a(),i(57,"option",45),r(58,"Swedish (sv)"),a(),i(59,"option",46),r(60,"Thai (th)"),a(),i(61,"option",47),r(62,"Turkish (tr)"),a(),i(63,"option",48),r(64,"Ukrainian (uk)"),a()()()(),i(65,"li",17),r(66),l(67,"translate"),i(68,"div",18)(69,"select",19),x("ngModelChange",function(d){C(e);let b=u();return S(b.saveUiSettingChange("theme",d))}),i(70,"option",49),r(71),l(72,"translate"),a(),i(73,"option",50),r(74),l(75,"translate"),a(),i(76,"option",51),r(77),l(78,"translate"),a(),i(79,"option",52),r(80),l(81,"translate"),a(),i(82,"option",53),r(83),l(84,"translate"),a(),i(85,"option",54),r(86),l(87,"translate"),a(),i(88,"option",55),r(89),l(90,"translate"),a(),i(91,"option",56),r(92),l(93,"translate"),a(),i(94,"option",57),r(95),l(96,"translate"),a(),i(97,"option",58),r(98),l(99,"translate"),a(),i(100,"option",59),r(101),l(102,"translate"),a(),i(103,"option",60),r(104),l(105,"translate"),a(),i(106,"option",61),r(107),l(108,"translate"),a()()()(),i(109,"li",17),r(110),l(111,"translate"),i(112,"div",18)(113,"select",19),x("ngModelChange",function(d){C(e);let b=u();return S(b.saveUiSettingChange("lightingMode",d))}),i(114,"option",20),r(115),l(116,"translate"),a(),i(117,"option",62),r(118),l(119,"translate"),a(),i(120,"option",63),r(121),l(122,"translate"),a()()()(),i(123,"li",17),r(124),l(125,"translate"),i(126,"div",18)(127,"select",19),x("ngModelChange",function(d){C(e);let b=u();return S(b.saveUiSettingChange("menuMode",d))}),i(128,"option",64),r(129),l(130,"translate"),a(),i(131,"option",65),r(132),l(133,"translate"),a()()()(),i(134,"li",17)(135,"span"),r(136),l(137,"translate"),m(138,"br")(139,"small",66),l(140,"translate"),a(),i(141,"div",18)(142,"input",67),x("ngModelChange",function(d){C(e);let b=u();return S(b.saveUiSettingChange("loginWallpaper",d))}),a()()(),i(143,"li",17),r(144),l(145,"translate"),i(146,"div",18)(147,"select",19),x("ngModelChange",function(d){C(e);let b=u();return S(b.saveUiSettingChange("tempUnits",d))}),i(148,"option",68),r(149),l(150,"translate"),a(),i(151,"option",69),r(152),l(153,"translate"),a()()()(),h(154,Ct,8,9,"li",70),a()}if(n&2){let e=u();t(2),_(" ",o(3,35,"settings.display.lang")," "),t(3),g("ngModel",e.$settings.env.lang),t(2),p(o(8,37,"form.select.auto")),t(59),_(" ",o(67,39,"settings.display.theme")," "),t(3),g("ngModel",e.$settings.theme),t(2),p(o(72,41,"settings.display.orange")),t(3),p(o(75,43,"settings.display.red")),t(3),p(o(78,45,"settings.display.pink")),t(3),p(o(81,47,"settings.display.purple")),t(3),p(o(84,49,"settings.display.deep_purple")),t(3),p(o(87,51,"settings.display.indigo")),t(3),p(o(90,53,"settings.display.blue")),t(3),p(o(93,55,"settings.display.bluegrey")),t(3),p(o(96,57,"settings.display.cyan")),t(3),p(o(99,59,"settings.display.green")),t(3),p(o(102,61,"settings.display.teal")),t(3),p(o(105,63,"settings.display.grey")),t(3),p(o(108,65,"settings.display.brown")),t(3),_(" ",o(111,67,"settings.display.lighting_mode")," "),t(3),g("ngModel",e.$settings.lightingMode),t(2),p(o(116,69,"form.select.auto")),t(3),p(o(119,71,"settings.display.light")),t(3),p(o(122,73,"settings.display.dark")),t(3),_(" ",o(125,75,"settings.display.menu_mode")," "),t(3),g("ngModel",e.$settings.menuMode),t(2),p(o(130,77,"settings.display.menu_default")),t(3),p(o(133,79,"settings.display.menu_freeze")),t(4),_(" ",o(137,81,"settings.display.login_wallpaper"),""),t(3),g("innerHTML",Y(140,83,"settings.display.login_wallpaper_desc",H(92,vt,e.file)),X),t(3),g("ngModel",e.$settings.loginWallpaper),t(2),_(" ",o(145,86,"settings.display.temp_units")," "),t(3),g("ngModel",e.$settings.env.temperatureUnits),t(2),p(o(150,88,"settings.display.temp_units.c")),t(3),p(o(153,90,"settings.display.temp_units.f")),t(2),v(e.hasChangedLoginWallpaper?154:-1)}}function wt(n,c){if(n&1&&(i(0,"li",12)(1,"span"),r(2),l(3,"translate"),i(4,"code"),r(5,"-D"),a(),m(6,"br"),i(7,"small",74),r(8),l(9,"translate"),a()(),m(10,"input",75),l(11,"translate"),m(12,"label",76),a()),n&2){let e=u(3);t(2),_(" ",o(3,3,"settings.startup.debug")," "),t(6),_(" ",o(9,5,e.isHbV2?"settings.startup.debug_desc_v2":"settings.startup.debug_desc_v1")," "),t(2),f("aria-label",o(11,7,"settings.startup.debug"))}}function kt(n,c){n&1&&(i(0,"li",12)(1,"span"),r(2),l(3,"translate"),i(4,"code"),r(5,"-I"),a(),m(6,"br"),i(7,"small",74),r(8),l(9,"translate"),a()(),m(10,"input",77),l(11,"translate"),m(12,"label",78),a()),n&2&&(t(2),_(" ",o(3,3,"settings.startup.insecure")," "),t(6),p(o(9,5,"settings.startup.insecure_desc")),t(2),f("aria-label",o(11,7,"settings.startup.insecure")))}function yt(n,c){n&1&&(i(0,"li",12)(1,"span"),r(2),l(3,"translate"),i(4,"code"),r(5,"-K"),a(),m(6,"br"),i(7,"small",74),r(8),l(9,"translate"),a()(),m(10,"input",79),l(11,"translate"),m(12,"label",80),a()),n&2&&(t(2),_(" ",o(3,3,"settings.startup.keep_accessories")," "),t(6),p(o(9,5,"settings.startup.keep_accessories_desc")),t(2),f("aria-label",o(11,7,"settings.startup.keep_accessories")))}function Et(n,c){if(n&1&&(i(0,"li",17)(1,"span")(2,"span",81),r(3,"DEBUG"),a(),m(4,"br")(5,"small",66),l(6,"translate"),a(),i(7,"div",18),m(8,"input",82),a()()),n&2){let e=u(3);t(5),g("innerHTML",Y(6,1,"settings.service.debug_tooltip",H(4,xt,e.linkDebug)),X)}}function Bt(n,c){n&1&&(i(0,"li",17)(1,"span")(2,"span",81),r(3,"NODE_OPTIONS"),a(),m(4,"br"),i(5,"small",74),r(6),l(7,"translate"),a()(),i(8,"div",18),m(9,"input",83),a()()),n&2&&(t(6),p(o(7,1,"settings.service.node_tooltip")))}function It(n,c){n&1&&(i(0,"li",12)(1,"span"),r(2),l(3,"translate"),m(4,"br"),i(5,"small",74),r(6),l(7,"translate"),a()(),i(8,"a",84),l(9,"translate"),m(10,"i",15),a()()),n&2&&(t(2),_(" ",o(3,3,"menu.docker.startup_script"),""),t(4),p(o(7,5,"platform.docker.script_help")),t(2),f("aria-label",o(9,7,"menu.docker.startup_script")))}function $t(n,c){n&1&&(i(0,"li",70)(1,"small",71),r(2),l(3,"translate"),a(),i(4,"button",72),l(5,"translate"),r(6),l(7,"translate"),a()()),n&2&&(t(2),p(o(3,3,"settings.changes.saved")),t(2),f("aria-label",o(5,5,"menu.tooltip_restart")),t(2),_(" ",o(7,7,"menu.tooltip_restart")," "))}function At(n,c){if(n&1&&(i(0,"ul",73),h(1,wt,13,9,"li",12)(2,kt,13,9,"li",12)(3,yt,13,9,"li",12)(4,Et,9,6,"li",17)(5,Bt,10,3,"li",17)(6,It,11,9,"li",12)(7,$t,8,9,"li",70),a()),n&2){let e=u(2);t(),v(e.$settings.env.serviceMode?1:-1),t(),v(e.$settings.env.serviceMode?2:-1),t(),v(e.$settings.env.serviceMode?3:-1),t(),v(e.$settings.env.serviceMode?4:-1),t(),v(e.$settings.env.serviceMode?5:-1),t(),v(e.$settings.env.runningInDocker?6:-1),t(),v(e.hasChangedService?7:-1)}}function Tt(n,c){if(n&1){let e=k();i(0,"form",7)(1,"div",2),x("click",function(){C(e);let d=u();return S(d.toggleSection("startup"))}),i(2,"h5",3),m(3,"i",4),r(4),l(5,"translate"),a()(),h(6,At,8,7,"ul",73),a()}if(n&2){let e=u();g("formGroup",e.serviceForm),t(),f("aria-expanded",e.showFields.startup?"true":"false")("aria-controls","fieldsStartup"),t(2),g("ngClass",e.showFields.startup?"fa-chevron-down":"fa-chevron-right"),t(),_(" ",o(5,6,"settings.title_startup_options")," "),t(2),v(e.showFields.startup?6:-1)}}function Mt(n,c){n&1&&m(0,"i",95)}function Nt(n,c){if(n&1&&(i(0,"span")(1,"span",94),h(2,Mt,1,0,"i",95),r(3),i(4,"span",96),r(5),l(6,"translate"),a()()()),n&2){let e=c.$implicit;t(),g("ngClass",I(6,bt,e.missing,!e.missing)),t(),v(e.missing?2:-1),t(),_(" ",e.iface,": "),t(2),p(e.missing?o(6,4,"settings.mdns_advertiser_not_connected"):e.ip4||e.ip6)}}function Vt(n,c){n&1&&(i(0,"option",88),r(1),l(2,"translate"),a()),n&2&&(t(),_("Avahi (",o(2,1,"settings.mdns_advertiser_rec"),")"))}function Ft(n,c){n&1&&(i(0,"option",91),r(1),l(2,"translate"),a()),n&2&&(t(),_("systemd-resolved (",o(2,1,"settings.mdns_advertiser_exp"),")"))}function Rt(n,c){n&1&&(i(0,"li",70)(1,"small",71),r(2),l(3,"translate"),a(),i(4,"button",72),l(5,"translate"),r(6),l(7,"translate"),a()()),n&2&&(t(2),p(o(3,3,"settings.changes.saved")),t(2),f("aria-label",o(5,5,"menu.tooltip_restart")),t(2),_(" ",o(7,7,"menu.tooltip_restart")," "))}function Dt(n,c){if(n&1){let e=k();i(0,"ul",8)(1,"li",12)(2,"span",13),r(3),l(4,"translate"),m(5,"br"),i(6,"small",74),r(7),l(8,"translate"),a(),T(9,Nt,7,9,"span",null,A),a(),i(11,"button",85),l(12,"translate"),x("click",function(){C(e);let d=u();return S(d.selectNetworkInterfaces())}),m(13,"i",86),a()(),i(14,"li",17)(15,"span"),r(16),l(17,"translate"),m(18,"br"),i(19,"small",74),r(20),l(21,"translate"),a()(),i(22,"div",18)(23,"select",87),l(24,"translate"),h(25,Vt,3,3,"option",88),i(26,"option",89),r(27),l(28,"translate"),a(),i(29,"option",90),r(30,"Bonjour HAP"),a(),h(31,Ft,3,3,"option",91),a()()(),i(32,"li",17)(33,"span"),r(34),l(35,"translate"),m(36,"br"),i(37,"small",74),r(38),l(39,"translate"),a()(),i(40,"div",18),m(41,"input",92),l(42,"translate"),a()(),i(43,"li",17)(44,"span"),r(45),l(46,"translate"),m(47,"br"),i(48,"small",74),r(49),l(50,"translate"),a()(),i(51,"div",18),m(52,"input",93),l(53,"translate"),a()(),h(54,Rt,8,9,"li",70),a()}if(n&2){let e=u();t(3),_(" ",o(4,22,"settings.network.title_network_interfaces"),""),t(4),p(o(8,24,"settings.network.message_network_interface")),t(2),M(e.bridgeNetworkAdapters),t(2),g("disabled",!e.availableNetworkAdapters.length),f("aria-label",o(12,26,"settings.network.title_network_interfaces")),t(2),g("ngClass",H(48,ft,!e.availableNetworkAdapters.length)),t(3),_(" ",o(17,28,"settings.mdns_advertiser"),""),t(4),p(o(21,30,"settings.mdns_advertiser_help")),t(3),g("formControl",e.legacyMdnsFormControl),f("aria-label",o(24,32,"settings.mdns_advertiser")),t(2),v(e.showAvahiMdnsOption?25:-1),t(2),_(" Ciao ",e.showAvahiMdnsOption?"":"("+o(28,34,"settings.mdns_advertiser_rec")+")"," "),t(4),v(e.showResolvedMdnsOption?31:-1),t(3),_(" ",o(35,36,"settings.network.port_hb"),""),t(4),p(o(39,38,"settings.network.port_hb_desc")),t(3),g("formControl",e.hbPortFormControl)("ngClass",H(50,Te,e.isInvalidHbPort)),f("aria-label",o(42,40,"settings.network.port_ui")),t(4),_(" ",o(46,42,"settings.network.port_ui"),""),t(4),p(o(50,44,"settings.network.port_ui_desc")),t(3),g("ngClass",H(52,Te,e.isInvalidHbUiPort)),f("aria-label",o(53,46,"settings.network.port_ui")),t(2),v(e.hasChangedHbPort||e.hasChangedUiSettings||e.hasChangedMdns||e.hasChangedBridgeNetworkAdapters?54:-1)}}function Pt(n,c){n&1&&(i(0,"p",9),r(1),l(2,"translate"),a()),n&2&&(t(),p(o(2,1,"settings.cache.desc")))}function Ht(n,c){if(n&1){let e=k();i(0,"ul",97)(1,"li",12)(2,"span",13),r(3),l(4,"translate"),m(5,"br"),i(6,"small",74),r(7),l(8,"translate"),a()(),i(9,"button",14),l(10,"translate"),x("click",function(){C(e);let d=u(2);return S(d.removeSingleCachedAccessories())}),m(11,"i",15),a()(),i(12,"li",12)(13,"span",13),r(14),l(15,"translate"),m(16,"br"),i(17,"small",74),r(18),l(19,"translate"),a()(),i(20,"button",14),l(21,"translate"),x("click",function(){C(e);let d=u(2);return S(d.removeBridgeAccessories())}),m(22,"i",15),a()(),i(23,"li",12)(24,"span",13),r(25),l(26,"translate"),m(27,"br"),i(28,"small",74),r(29),l(30,"translate"),a()(),i(31,"button",14),l(32,"translate"),x("click",function(){C(e);let d=u(2);return S(d.removeAllCachedAccessories())}),m(33,"i",15),a()()()}n&2&&(t(3),_(" ",o(4,9,"reset.accessory_ind.title"),""),t(4),p(o(8,11,"reset.accessory_ind.desc")),t(2),f("aria-label",o(10,13,"reset.accessory_ind.title")),t(5),_(" ",o(15,15,"reset.bridge_accessories.title"),""),t(4),p(o(19,17,"reset.bridge_accessories.desc")),t(2),f("aria-label",o(21,19,"reset.accessory_all.title")),t(5),_(" ",o(26,21,"reset.accessory_all.title"),""),t(4),p(o(30,23,"reset.accessory_all.desc")),t(2),f("aria-label",o(32,25,"reset.accessory_all.title")))}function Ot(n,c){if(n&1){let e=k();i(0,"div",1)(1,"div",2),x("click",function(){C(e);let d=u();return S(d.toggleSection("cache"))}),i(2,"h5",3),m(3,"i",4),r(4),l(5,"translate"),a()(),h(6,Pt,3,3,"p",9)(7,Ht,34,27,"ul",97),a()}if(n&2){let e=u();t(),f("aria-expanded",e.showFields.cache?"true":"false")("aria-controls","fieldsCache"),t(2),g("ngClass",e.showFields.cache?"fa-chevron-down":"fa-chevron-right"),t(),_(" ",o(5,6,"settings.cache.title")," "),t(2),v(e.showFields.cache?6:-1),t(),v(e.showFields.cache?7:-1)}}function Lt(n,c){n&1&&(i(0,"p",9),r(1),l(2,"translate"),a()),n&2&&(t(),p(o(2,1,"reset.bridges.desc")))}function Ut(n,c){if(n&1){let e=k();i(0,"li",12)(1,"span",13),r(2),l(3,"translate"),m(4,"br"),i(5,"small",74),r(6),l(7,"translate"),a()(),i(8,"button",14),l(9,"translate"),x("click",function(){C(e);let d=u(2);return S(d.unpairAccessory())}),m(10,"i",15),a()()}n&2&&(t(2),_(" ",o(3,3,"reset.bridge_ind.title"),""),t(4),p(o(7,5,"reset.bridge_ind.desc")),t(2),f("aria-label",o(9,7,"reset.bridge_ind.title")))}function zt(n,c){if(n&1){let e=k();i(0,"ul",10),h(1,Ut,11,9,"li",12),i(2,"li",12)(3,"span",13),r(4),l(5,"translate"),l(6,"titlecase"),m(7,"br"),i(8,"small",74),r(9),l(10,"translate"),a()(),i(11,"button",14),l(12,"translate"),x("click",function(){C(e);let d=u();return S(d.resetHomebridgeState())}),m(13,"i",15),a()()()}if(n&2){let e=u();t(),v(e.$settings.env.serviceMode?1:-1),t(3),_(" ",o(6,6,o(5,4,"reset.bridge_all.title")),""),t(5),p(o(10,8,"reset.bridge_all.desc")),t(2),f("aria-label",o(12,10,"reset.bridge_all.title"))}}var an=(()=>{class n{$api=w(R);$modal=w(be);$plugin=w(ke);$settings=w(Ce);$toastr=w(F);$translate=w(V);originalServiceForm={HOMEBRIDGE_DEBUG:!1,HOMEBRIDGE_KEEP_ORPHANS:!1,HOMEBRIDGE_INSECURE:!0,ENV_DEBUG:"",ENV_NODE_OPTIONS:""};originalUiSettingsForm={port:0};originalLoginWallpaper="";originalMdnsSetting="";originalBridgeNetworkAdapters=[];originalHbPort=0;hasChangedService=!1;hasChangedUiSettings=!1;hasChangedMdns=!1;hasChangedBridgeNetworkAdapters=!1;hasChangedHbPort=!1;hasChangedLoginWallpaper=!1;isInvalidHbPort=!1;isInvalidHbUiPort=!1;serviceForm=new Z({HOMEBRIDGE_DEBUG:new D(!1),HOMEBRIDGE_KEEP_ORPHANS:new D(!1),HOMEBRIDGE_INSECURE:new D(!0),ENV_DEBUG:new D(""),ENV_NODE_OPTIONS:new D("")});uiSettingsForm=new Z({port:new D(0)});loginWallpaper="";legacyMdnsFormControl=new oe(!1);showAvahiMdnsOption=!1;showResolvedMdnsOption=!1;availableNetworkAdapters=[];bridgeNetworkAdapters=[];hbPortFormControl=new D(0);isHbV2=!1;showFields={general:!0,display:!0,startup:!0,network:!0,reset:!0,cache:!0};file='<span class="text-monospace">ui-wallpaper.jpg</span>';linkDebug='<a href="https://github.com/homebridge/homebridge-config-ui-x/wiki/Debug-Common-Values" target="_blank"><i class="fa fa-fw fa-external-link-alt"></i></a>';constructor(){}ngOnInit(){this.isHbV2=this.$settings.env.homebridgeVersion.startsWith("2"),this.initUiSettingsForm(),this.initDisplaySettingsForm(),this.initNetworkingOptions(),this.$settings.env.serviceMode&&this.initServiceModeForm()}initUiSettingsForm(){this.originalUiSettingsForm={port:this.$settings.env.port},this.uiSettingsForm.patchValue({port:this.$settings.env.port}),this.uiSettingsForm.valueChanges.pipe(Q(500)).subscribe(e=>{let s=!1;Object.keys(e).forEach(d=>{this.originalUiSettingsForm[d]!==e[d]&&(this.saveUiSettingChange(d,e[d]),s=!0)}),this.hasChangedUiSettings=s})}initServiceModeForm(){this.$api.get("/platform-tools/hb-service/homebridge-startup-settings").subscribe({next:e=>{Object.keys(e).forEach(s=>{this.originalServiceForm[s]=e[s]}),this.serviceForm.patchValue(e),this.serviceForm.valueChanges.pipe(Q(500)).subscribe(this.saveServiceModeSettings.bind(this))},error:e=>{console.error(e),this.$toastr.error(e.message,this.$translate.instant("toast.title_error"))}})}initDisplaySettingsForm(){this.originalLoginWallpaper=this.$settings.loginWallpaper,this.loginWallpaper=this.$settings.loginWallpaper}saveUiSettingChange(e,s){switch(e){case"lang":this.$settings.setLang(s);break;case"lightingMode":this.$settings.setLightingMode(s,"user");break;case"menuMode":this.$settings.setMenuMode(s),window.location.reload();break;case"theme":this.$settings.setTheme(s);break;case"tempUnits":this.$settings.setEnvItem("temperatureUnits",s);break;case"loginWallpaper":this.$settings.setEnvItem("loginWallpaper",s),this.hasChangedLoginWallpaper=s!==this.originalLoginWallpaper;break;case"port":if(!s||typeof s!="number"||s<1025||s>65533||Number.isInteger(s)===!1||s===this.hbPortFormControl.value){this.isInvalidHbUiPort=!0;return}this.$settings.setEnvItem("port",s),this.isInvalidHbUiPort=!1;break}E(this.$api.put("/config-editor/ui",{key:e,value:s})).catch(d=>{console.error(d),this.$toastr.error(d.message,this.$translate.instant("toast.title_error"))})}openUiSettings(){this.$plugin.settings({name:"homebridge-config-ui-x",displayName:"Homebridge UI",settingsSchema:!0,links:{}})}openBackupModal(){this.$modal.open(Se,{size:"lg",backdrop:"static"})}saveServiceModeSettings(e=this.serviceForm.value){this.$api.put("/platform-tools/hb-service/homebridge-startup-settings",e).subscribe({next:()=>{this.hasChangedService=JSON.stringify(e)!==JSON.stringify(this.originalServiceForm)},error:s=>{console.error(s),this.$toastr.error(s.message,this.$translate.instant("toast.title_error"))}})}resetHomebridgeState(){this.$modal.open(Be,{size:"lg",backdrop:"static"})}unpairAccessory(){this.$modal.open($e,{size:"lg",backdrop:"static"})}removeAllCachedAccessories(){this.$modal.open(ye,{size:"lg",backdrop:"static"})}removeSingleCachedAccessories(){this.$modal.open(we,{size:"lg",backdrop:"static"})}removeBridgeAccessories(){this.$modal.open(Ee,{size:"lg",backdrop:"static"})}initNetworkingOptions(){return y(this,null,function*(){try{this.getNetworkSettings(),(this.$settings.env.runningInLinux||this.$settings.env.runningInDocker||this.$settings.env.runningInSynologyPackage||this.$settings.env.runningInPackageMode)&&(this.showAvahiMdnsOption=!0,this.showResolvedMdnsOption=!0)}catch{}})}getNetworkSettings(){return y(this,null,function*(){return Promise.all([E(this.$api.get("/server/network-interfaces/system")),E(this.$api.get("/server/network-interfaces/bridge")),E(this.$api.get("/server/mdns-advertiser")),E(this.$api.get("/server/port"))]).then(([e,s,d,b])=>{this.availableNetworkAdapters=e,this.buildBridgeNetworkAdapterList(s),this.legacyMdnsFormControl.patchValue(d.advertiser),this.originalMdnsSetting=d.advertiser,this.originalBridgeNetworkAdapters=this.bridgeNetworkAdapters.map(U=>U.iface),this.legacyMdnsFormControl.valueChanges.subscribe(U=>{this.setHomebridgeMdnsSetting(U)}),this.hbPortFormControl.patchValue(b.port),this.hbPortFormControl.valueChanges.subscribe(U=>this.setHomebridgePort(U)),this.originalHbPort=b.port})})}setHomebridgeMdnsSetting(e){return y(this,null,function*(){this.$api.put("/server/mdns-advertiser",{advertiser:e}).subscribe({next:()=>{this.hasChangedMdns=e!==this.originalMdnsSetting},error:s=>{console.error(s),this.$toastr.error(s.message,this.$translate.instant("toast.title_error"))}})})}setNetworkInterfaces(e){return y(this,null,function*(){this.$api.put("/server/network-interfaces/bridge",{adapters:e}).subscribe({next:()=>{this.hasChangedBridgeNetworkAdapters=this.originalBridgeNetworkAdapters.join(",")!==e.join(",")},error:s=>{console.error(s),this.$toastr.error(s.message,this.$translate.instant("toast.title_error"))}})})}setHomebridgePort(e){return y(this,null,function*(){if(e===this.uiSettingsForm.get("port").value){this.isInvalidHbPort=!0;return}this.$api.put("/server/port",{port:e}).subscribe({next:()=>{this.hasChangedHbPort=this.originalHbPort!==e,this.isInvalidHbPort=!1},error:()=>{this.isInvalidHbPort=!0}})})}buildBridgeNetworkAdapterList(e){if(!e.length){this.bridgeNetworkAdapters=[];return}this.bridgeNetworkAdapters=e.map(s=>{let d=this.availableNetworkAdapters.find(b=>b.iface===s);return d?(d.selected=!0,d.missing=!1,d):{iface:s,missing:!0}})}selectNetworkInterfaces(){let e=this.$modal.open(Ae,{size:"lg",backdrop:"static"});e.componentInstance.availableNetworkAdapters=this.availableNetworkAdapters,e.componentInstance.bridgeNetworkAdapters=this.bridgeNetworkAdapters,e.result.then(s=>{this.buildBridgeNetworkAdapterList(s),this.setNetworkInterfaces(s)}).catch(()=>{})}toggleSection(e){this.showFields[e]=!this.showFields[e]}static \u0275fac=function(s){return new(s||n)};static \u0275cmp=B({type:n,selectors:[["ng-component"]],decls:35,vars:35,consts:[[1,"primary-text","m-0"],[1,"my-4"],["role","button","tabindex","0",1,"mt-3","hover-pointer",3,"click"],[1,"primary-text"],[1,"fa","fa-fw",3,"ngClass"],["id","fieldsGeneral",1,"list-group","list-group-box","mt-2","mx-0"],["id","fieldsDisplay",1,"list-group","list-group-box","mt-2","mx-0"],["novalidate","",1,"my-4",3,"formGroup"],["id","fieldsNetwork",1,"list-group","list-group-box","mt-2","mx-0"],[1,"small","grey-text","mb-2","mx-0"],["id","fieldsReset",1,"list-group","list-group-box","mt-2","mx-0"],[1,"pb-3"],[1,"list-group-item","d-flex","justify-content-between","align-items-center"],[1,"pr-2"],[1,"btn","btn-primary","waves-effect","m-0","ml-3",2,"min-width","50px",3,"click"],[1,"fas","fa-fw","fa-arrow-right"],["routerLink","/users",1,"btn","btn-primary","waves-effect","m-0","ml-3",2,"min-width","50px"],[1,"list-group-item","d-block","d-md-flex","justify-content-between","align-items-center"],[1,"my-3","my-md-0","pl-0","pl-md-5","w-auto"],[1,"custom-select","resp-select",3,"ngModelChange","ngModel"],["value","auto"],["value","bg"],["value","ca"],["value","zh-CN"],["value","zh-TW"],["value","cs"],["value","nl"],["value","en"],["value","fi"],["value","fr"],["value","de"],["value","he"],["value","hu"],["value","id"],["value","it"],["value","ja"],["value","ko"],["value","mk"],["value","no"],["value","pl"],["value","pt-BR"],["value","pt"],["value","ru"],["value","sl"],["value","es"],["value","sv"],["value","th"],["value","tr"],["value","uk"],["value","orange"],["value","red"],["value","pink"],["value","purple"],["value","deep-purple"],["value","indigo"],["value","blue"],["value","blue-grey"],["value","cyan"],["value","green"],["value","teal"],["value","grey"],["value","brown"],["value","light"],["value","dark"],["value","default"],["value","freeze"],[1,"grey-text","pr-2",3,"innerHTML"],["name","search_wallpaper","autocomplete","off","type","text","placeholder","/path-to/image.png",1,"form-control","custom-input","form-control-sm","resp-input",3,"ngModelChange","ngModel"],["value","c"],["value","f"],[1,"list-group-item","d-flex","flex-column","align-items-center"],[1,"grey-text","my-2"],["routerLink","/restart",1,"btn","btn-primary","waves-effect","my-2"],["id","fieldsStartup",1,"list-group","list-group-box","mb-4","mx-0"],[1,"grey-text","pr-2"],["type","checkbox","id","homebridgeDebugMode","formControlName","HOMEBRIDGE_DEBUG",1,"rendux-input"],["for","homebridgeDebugMode",1,"rendux-label","ml-3",2,"min-width","50px"],["type","checkbox","id","homebridgeInsecureMode","formControlName","HOMEBRIDGE_INSECURE",1,"rendux-input"],["for","homebridgeInsecureMode",1,"rendux-label","ml-3",2,"min-width","50px"],["type","checkbox","id","homebridgeKeepOrphans","formControlName","HOMEBRIDGE_KEEP_ORPHANS",1,"rendux-input"],["for","homebridgeKeepOrphans",1,"rendux-label","ml-3",2,"min-width","50px"],[1,"text-monospace"],["formControlName","ENV_DEBUG","type","text","placeholder","HAP-NodeJS:Advertiser,HAP-NodeJS:Service",1,"form-control","custom-input","form-control-sm","resp-input"],["formControlName","ENV_NODE_OPTIONS","type","text","placeholder","--max-old-space-size=512 --max-http-header-size=8192",1,"form-control","custom-input","form-control-sm","resp-input"],["routerLink","/platform-tools/docker/startup-script",1,"btn","btn-primary","waves-effect","m-0","ml-3",2,"min-width","50px"],[1,"btn","btn-primary","waves-effect","m-0","ml-3",2,"min-width","50px",3,"click","disabled"],[1,"fas","fa-fw","fa-arrow-right",3,"ngClass"],[1,"custom-select","resp-select",3,"formControl"],["value","avahi"],["value","ciao"],["value","bonjour-hap"],["value","resolved"],["type","number","min","1025","max","65533",1,"form-control","custom-input","form-control-sm","resp-input",3,"formControl","ngClass"],["type","number","min","1025","max","65533","placeholder","8581","formControlName","port",1,"form-control","custom-input","form-control-sm","resp-input",3,"ngClass"],[1,"badge","badge-pill","mr-1",3,"ngClass"],[1,"fas","fa-fw","fa-exclamation-triangle"],[1,"font-weight-normal"],["id","fieldsCache",1,"list-group","list-group-box","mb-4","mx-0"]],template:function(s,d){s&1&&(i(0,"h3",0),r(1),l(2,"translate"),a(),i(3,"div",1)(4,"div",2),x("click",function(){return d.toggleSection("general")}),i(5,"h5",3),m(6,"i",4),r(7),l(8,"translate"),a()(),h(9,ht,22,18,"ul",5),a(),i(10,"div",1)(11,"div",2),x("click",function(){return d.toggleSection("display")}),i(12,"h5",3),m(13,"i",4),r(14),l(15,"translate"),a()(),h(16,St,155,94,"ul",6),a(),h(17,Tt,7,8,"form",7),i(18,"form",7)(19,"div",2),x("click",function(){return d.toggleSection("network")}),i(20,"h5",3),m(21,"i",4),r(22),l(23,"translate"),a()(),h(24,Dt,55,54,"ul",8),a(),h(25,Ot,8,8,"div",1),i(26,"div",1)(27,"div",2),x("click",function(){return d.toggleSection("reset")}),i(28,"h5",3),m(29,"i",4),r(30),l(31,"translate"),a()(),h(32,Lt,3,3,"p",9)(33,zt,14,12,"ul",10),a(),m(34,"div",11)),s&2&&(t(),p(o(2,25,"menu.settings.title")),t(3),f("aria-expanded",d.showFields.general?"true":"false")("aria-controls","fieldsGeneral"),t(2),g("ngClass",d.showFields.general?"fa-chevron-down":"fa-chevron-right"),t(),_(" ",o(8,27,"settings.general.title_general")," "),t(2),v(d.showFields.general?9:-1),t(2),f("aria-expanded",d.showFields.display?"true":"false")("aria-controls","fieldsDisplay"),t(2),g("ngClass",d.showFields.display?"fa-chevron-down":"fa-chevron-right"),t(),_(" ",o(15,29,"settings.general.title_display")," "),t(2),v(d.showFields.display?16:-1),t(),v(d.$settings.env.serviceMode||d.$settings.env.runningInDocker?17:-1),t(),g("formGroup",d.uiSettingsForm),t(),f("aria-expanded",d.showFields.network?"true":"false")("aria-controls","fieldsNetwork"),t(2),g("ngClass",d.showFields.network?"fa-chevron-down":"fa-chevron-right"),t(),_(" ",o(23,31,"settings.network.title_network")," "),t(2),v(d.showFields.network?24:-1),t(),v(d.$settings.env.serviceMode?25:-1),t(2),f("aria-expanded",d.showFields.reset?"true":"false")("aria-controls","fieldsReset"),t(2),g("ngClass",d.showFields.reset?"fa-chevron-down":"fa-chevron-right"),t(),_(" ",o(31,33,"reset.bridges.title")," "),t(2),v(d.showFields.reset?32:-1),t(),v(d.showFields.reset?33:-1))},dependencies:[L,he,K,se,ue,ge,re,de,G,_e,W,le,xe,ve,q,fe,pe,ce,me,j,$],encapsulation:2})}return n})();export{ye as a,Be as b,Ae as c,an as d};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{a}from"./chunk-SN2RLKY5.js";import"./chunk-HYJNTVQ7.js";import"./chunk-C2XBPNOQ.js";import"./chunk-RP5TYXWG.js";import"./chunk-7BCHGXO4.js";import"./chunk-EEDUUZ6J.js";import"./chunk-N4F42HDL.js";import"./chunk-YLEC7AUG.js";import"./chunk-JTZVAPYW.js";import"./chunk-RY4JLM5Q.js";import"./chunk-IZVXTMWH.js";import"./chunk-73SS2RFT.js";import"./chunk-HA6CO5NZ.js";import"./chunk-675OFXLW.js";import"./chunk-CKNHTRCL.js";export{a as LogsComponent};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{a as V}from"./chunk-HYJNTVQ7.js";import{a as q}from"./chunk-RP5TYXWG.js";import{a as _}from"./chunk-EEDUUZ6J.js";import{n as B,o as k}from"./chunk-N4F42HDL.js";import{h as D,k as F}from"./chunk-73SS2RFT.js";import{a as z,b as E}from"./chunk-675OFXLW.js";import{Cc as i,Dc as r,Lb as b,Mb as h,Wb as s,Xb as l,Yb as p,ac as T,dc as d,g as j,gb as y,h as w,ib as m,lc as C,mc as x,n as v,na as o,oc as I,pc as S,rb as $,ub as L,xa as u,ya as f}from"./chunk-CKNHTRCL.js";var H=j(q(),1);var A=["logoutput"],X=(()=>{class c{$api=o(F);$log=o(V);$modal=o(B);$toastr=o(D);$translate=o(z);termTarget=$("logoutput");resizeEvent=new v;constructor(){}onWindowResize(){this.resizeEvent.next(void 0)}ngOnInit(){window.document.querySelector("body").classList.add("bg-black"),this.$log.startTerminal(this.termTarget(),{},this.resizeEvent)}ngOnDestroy(){window.document.querySelector("body").classList.remove("bg-black"),this.$log.destroyTerminal()}downloadLogFile(){let t=this.$modal.open(_,{size:"lg",backdrop:"static"});t.componentInstance.title=this.$translate.instant("logs.title_download_log_file"),t.componentInstance.message=this.$translate.instant("logs.download_warning"),t.componentInstance.confirmButtonLabel=this.$translate.instant("form.button_download"),t.componentInstance.faIconClass="fas fa-fw fa-user-secret primary-text",t.result.then(()=>{this.$api.get("/platform-tools/hb-service/log/download",{observe:"response",responseType:"blob"}).subscribe({next:e=>{(0,H.saveAs)(e.body,"homebridge.log.txt")},error:e=>w(this,null,function*(){let n;try{n=JSON.parse(yield e.error.text()).message}catch(a){console.error(a)}this.$toastr.error(n||this.$translate.instant("logs.download.error"),this.$translate.instant("toast.title_error"))})})}).catch(()=>{})}truncateLogFile(){let t=this.$modal.open(_,{size:"lg",backdrop:"static"});t.componentInstance.title=this.$translate.instant("logs.title_truncate_log_file"),t.componentInstance.message=this.$translate.instant("logs.truncate_log_warning"),t.componentInstance.confirmButtonLabel=this.$translate.instant("form.button_delete"),t.componentInstance.confirmButtonClass="btn-danger",t.componentInstance.faIconClass="fas fa-fw fa-circle-exclamation primary-text",t.result.then(()=>{this.$api.put("/platform-tools/hb-service/log/truncate",{}).subscribe({next:()=>{this.$toastr.success(this.$translate.instant("logs.log_file_truncated"),this.$translate.instant("toast.title_success")),this.$log.term.clear()},error:e=>{console.error(e),this.$toastr.error(e.error.message||this.$translate.instant("logs.truncate.error"),this.$translate.instant("toast.title_error"))}})}).catch(()=>{})}static \u0275fac=function(e){return new(e||c)};static \u0275cmp=L({type:c,selectors:[["ng-component"]],viewQuery:function(e,n){e&1&&C(n.termTarget,A,5),e&2&&x()},hostBindings:function(e,n){e&1&&d("resize",function(g){return n.onWindowResize(g)},!1,y)},decls:17,vars:15,consts:[["logoutput",""],[1,"row","mb-3"],[1,"col-6"],[1,"primary-text","m-0"],[1,"col-6","text-right"],["container","body","placement","bottom","openDelay","150","triggers","hover",1,"btn","btn-elegant","my-0",3,"click","ngbTooltip"],[1,"fas","fa-fw","fa-download"],["container","body","placement","bottom","openDelay","150","triggers","hover",1,"btn","btn-elegant","my-0","mr-0",3,"click","ngbTooltip"],[1,"fas","fa-fw","fa-trash-alt"],[1,"flex-column","d-flex","align-items-stretch","adjust-for-mobile"],["id","log-output",1,"align-self-end","w-100","h-100","mb-1"]],template:function(e,n){if(e&1){let a=T();s(0,"div",1)(1,"div",2)(2,"h3",3),I(3),i(4,"translate"),l()(),s(5,"div",4)(6,"button",5),i(7,"translate"),i(8,"translate"),d("click",function(){return u(a),f(n.downloadLogFile())}),p(9,"i",6),l(),s(10,"button",7),i(11,"translate"),i(12,"translate"),d("click",function(){return u(a),f(n.truncateLogFile())}),p(13,"i",8),l()()(),s(14,"div",9),p(15,"div",10,0),l()}e&2&&(m(3),S(r(4,5,"menu.linux.label_logs")),m(3),h("ngbTooltip",r(7,7,"form.button_download")),b("aria-label",r(8,9,"form.button_download")),m(4),h("ngbTooltip",r(11,11,"form.button_delete")),b("aria-label",r(12,13,"form.button_delete")))},dependencies:[k,E],encapsulation:2})}return c})();export{X as a};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a as ne}from"./chunk-474BOAR2.js";import{g as O,m as G,n as te}from"./chunk-N4F42HDL.js";import{b as Z,c as M,d as x,e as F,f as z,g as N,j as w,m as q,o as R,p as L,q as j,w as ee,y as V,z as A}from"./chunk-YLEC7AUG.js";import{b as ie}from"./chunk-T3GI7KUT.js";import{c as Q}from"./chunk-DI7XQKGK.js";import{a as ce}from"./chunk-RGOOY4ED.js";import{h as U,k}from"./chunk-IBVQ5XHN.js";import{a as E,b as $}from"./chunk-675OFXLW.js";import{Bb as h,Cc as s,Dc as l,Ec as Y,Lb as u,Mb as f,Rb as g,Tb as K,Ub as W,Vb as X,Wb as i,Xb as n,Yb as p,ac as D,bd as P,dc as b,ec as v,g as de,ib as e,na as c,oc as m,pc as d,qc as C,ub as y,xa as B,ya as T,yc as I}from"./chunk-CKNHTRCL.js";function ue(r,S){r&1&&(i(0,"ngb-alert",14)(1,"p",21),m(2),s(3,"translate"),n()()),r&2&&(f("dismissible",!1),e(2),d(l(3,2,"login.invalid_password")))}var re=(()=>{class r{$activeModal=c(G);$api=c(k);$toastr=c(U);$translate=c(E);formGroup=new N({password:new w("",[x.required])});invalidCredentials=!1;constructor(){}disable2fa(){this.invalidCredentials=!1,this.$api.post("/users/otp/deactivate",this.formGroup.value).subscribe({next:()=>{this.$activeModal.close(),this.$toastr.success(this.$translate.instant("users.setup_2fa_disable_success"),this.$translate.instant("toast.title_success"))},error:()=>{this.formGroup.setValue({password:""}),this.invalidCredentials=!0}})}static \u0275fac=function(o){return new(o||r)};static \u0275cmp=y({type:r,selectors:[["ng-component"]],decls:36,vars:27,consts:[[1,"modal-content",2,"min-height","300px"],[1,"modal-header"],[1,"modal-title"],["type","button","data-dismiss","modal",1,"close",3,"click"],["aria-hidden","true"],[1,"modal-body"],[1,"text-center","mb-3"],[1,"fas","fa-fw","fa-key","primary-text",2,"font-size","75px"],[1,"mb-3"],[1,"list-group","list-group-box","mb-0"],[1,"list-group-item","d-flex","flex-column","flex-md-row","align-items-center"],[1,"mb-2","mb-md-0","w-100","w-md-50"],[1,"text-left","text-md-right","w-100","w-md-50"],["type","password","autocomplete","current-password",1,"form-control","custom-input",3,"formControl","placeholder"],["type","error",1,"mt-3","mb-0",3,"dismissible"],[1,"modal-footer","justify-content-between"],[1,"text-left"],["type","button","data-dismiss","modal",1,"btn","btn-elegant",3,"click"],[1,"text-center"],[1,"text-right"],["type","button","data-dismiss","modal",1,"btn","btn-danger",3,"click","disabled"],[1,"mb-0"]],template:function(o,a){o&1&&(i(0,"div",0)(1,"div",1)(2,"h5",2),m(3),s(4,"translate"),n(),i(5,"button",3),s(6,"translate"),b("click",function(){return a.$activeModal.dismiss("Dismiss")}),i(7,"span",4),m(8,"\xD7"),n()()(),i(9,"div",5)(10,"div",6),p(11,"i",7),n(),i(12,"ul",8)(13,"li"),m(14),s(15,"translate"),n()(),i(16,"ul",9)(17,"li",10)(18,"label",11),m(19),s(20,"translate"),n(),i(21,"div",12),p(22,"input",13),s(23,"translate"),n()()(),h(24,ue,4,4,"ngb-alert",14),n(),i(25,"div",15)(26,"div",16)(27,"button",17),s(28,"translate"),b("click",function(){return a.$activeModal.dismiss("Dismiss")}),m(29),s(30,"translate"),n()(),p(31,"div",18),i(32,"div",19)(33,"button",20),b("click",function(){return a.disable2fa()}),m(34),s(35,"translate"),n()()()()),o&2&&(e(3),d(l(4,11,"users.setup_2fa_disable")),e(2),u("aria-label",l(6,13,"form.button_close")),e(9),d(l(15,15,"users.setup_2fa_disable_current_password")),e(5),d(l(20,17,"login.label_password")),e(3),f("formControl",a.formGroup.controls.password)("placeholder",l(23,19,"users.label_password")),e(2),g(a.invalidCredentials&&!a.formGroup.controls.password.value?24:-1),e(3),u("aria-label",l(28,21,"form.button_close")),e(2),C(" ",l(30,23,"form.button_close")," "),e(4),f("disabled",a.formGroup.invalid),e(),C(" ",l(35,25,"form.button_disable")," "))},dependencies:[V,M,F,A,R,$,O],encapsulation:2})}return r})();var ae=de(ce(),1);var fe=r=>({timeDiffError:r});function be(r,S){r&1&&(i(0,"li"),m(1),s(2,"translate"),n()),r&2&&(e(),d(l(2,1,"users.setup_2fa_scan_qr_code")))}function _e(r,S){if(r&1&&(i(0,"ngb-alert",9)(1,"p",17),m(2),s(3,"translate"),n(),i(4,"p",18),m(5),s(6,"translate"),n()()),r&2){let t=v();f("dismissible",!1),e(2),d(l(3,3,"users.setup_2fa_cannot_setup_2fa")),e(3),d(Y(6,5,"users.setup_2fa_server_time_out",I(8,fe,t.timeDiffError)))}}function ve(r,S){if(r&1&&(i(0,"ul",10)(1,"li",19)(2,"div",20),p(3,"app-qrcode",21),n()(),i(4,"li",22)(5,"label",23),m(6),s(7,"translate"),n(),i(8,"div",24),p(9,"input",25),n()()()),r&2){let t=v();e(3),f("data",t.otpString),e(3),d(l(7,3,"users.setup_2fa_enter_code")),e(3),f("formControl",t.formGroup.controls.code)}}function xe(r,S){if(r&1){let t=D();i(0,"button",26),s(1,"translate"),b("click",function(){B(t);let a=v();return T(a.$activeModal.dismiss("Dismiss"))}),m(2),s(3,"translate"),n()}r&2&&(u("aria-label",l(1,2,"form.button_close")),e(2),C(" ",l(3,4,"form.button_close")," "))}function we(r,S){if(r&1){let t=D();i(0,"button",26),s(1,"translate"),b("click",function(){B(t);let a=v();return T(a.$activeModal.dismiss("Dismiss"))}),m(2),s(3,"translate"),n()}r&2&&(u("aria-label",l(1,2,"form.button_close")),e(2),C(" ",l(3,4,"form.button_close")," "))}function Ce(r,S){if(r&1){let t=D();i(0,"button",27),b("click",function(){B(t);let a=v();return T(a.enable2fa())}),m(1),s(2,"translate"),n()}if(r&2){let t=v();f("disabled",t.formGroup.invalid),e(),C(" ",l(2,2,"form.button_enable")," ")}}var oe=(()=>{class r{$activeModal=c(G);$api=c(k);$toastr=c(U);$translate=c(E);user;timeDiffError=null;otpString;formGroup=new N({code:new w("",[x.required,x.minLength(6),x.maxLength(6)])});constructor(){}ngOnInit(){this.$api.post("/users/otp/setup",{}).subscribe({next:t=>{this.checkTimeDiff(t.timestamp),this.timeDiffError||(this.otpString=t.otpauth)},error:t=>{this.$activeModal.dismiss(),console.error(t),this.$toastr.error(this.$translate.instant("users.setup_2fa_enable_error"),this.$translate.instant("toast.title_error"))}})}checkTimeDiff(t){let o=(0,ae.default)(t).diff(new Date,"millisecond");o<-5e3||o>5e3?this.timeDiffError=o:this.timeDiffError=null}enable2fa(){this.$api.post("/users/otp/activate",this.formGroup.value).subscribe({next:()=>{this.$toastr.success(this.$translate.instant("users.setup_2fa_enabled_success"),this.$translate.instant("toast.title_success")),this.$activeModal.close()},error:t=>{console.error(t),this.$toastr.error(this.$translate.instant("users.setup_2fa_activate_error"),this.$translate.instant("toast.title_error"))}})}static \u0275fac=function(o){return new(o||r)};static \u0275cmp=y({type:r,selectors:[["ng-component"]],inputs:{user:"user"},decls:26,vars:15,consts:[[1,"modal-content","setup2fa"],[1,"modal-header"],[1,"modal-title"],["type","button","data-dismiss","modal",1,"close",3,"click"],["aria-hidden","true"],[1,"modal-body"],[1,"text-center","mb-3"],[1,"fas","fa-fw","fa-key","primary-text",2,"font-size","75px"],[1,"mb-3"],["type","error",1,"mb-0",3,"dismissible"],[1,"list-group","list-group-box","mb-0"],[1,"modal-footer","justify-content-between"],[1,"text-left"],["type","button","data-dismiss","modal",1,"btn","btn-elegant"],[1,"text-center"],[1,"text-right"],["type","button","data-dismiss","modal",1,"btn","btn-primary",3,"disabled"],[1,"font-weight-bold","mb-1"],[1,"mb-0"],[1,"list-group-item","text-center"],[1,"text-center","w-100","d-flex","justify-content-center"],[1,"mx-auto",2,"width","175px","height","175px",3,"data"],[1,"list-group-item","d-flex","flex-column","flex-md-row","align-items-center"],[1,"mb-2","mb-md-0","w-100","w-md-50"],[1,"text-left","text-md-right","w-100","w-md-50"],["formControlName","username","type","text","placeholder","eg. 123456","autocomplete","one-time-code","autocapitalize","none","inputmode","numeric","pattern","[0-9]*",1,"form-control","custom-input",3,"formControl"],["type","button","data-dismiss","modal",1,"btn","btn-elegant",3,"click"],["type","button","data-dismiss","modal",1,"btn","btn-primary",3,"click","disabled"]],template:function(o,a){o&1&&(i(0,"div",0)(1,"div",1)(2,"h5",2),m(3),s(4,"translate"),n(),i(5,"button",3),s(6,"translate"),b("click",function(){return a.$activeModal.dismiss("Dismiss")}),i(7,"span",4),m(8,"\xD7"),n()()(),i(9,"div",5)(10,"div",6),p(11,"i",7),n(),i(12,"ul",8)(13,"li"),m(14),s(15,"translate"),n(),h(16,be,3,3,"li"),n(),h(17,_e,7,10,"ngb-alert",9)(18,ve,10,5,"ul",10),n(),i(19,"div",11)(20,"div",12),h(21,xe,4,6,"button",13),n(),i(22,"div",14),h(23,we,4,6,"button",13),n(),i(24,"div",15),h(25,Ce,3,4,"button",16),n()()()),o&2&&(e(3),d(l(4,9,"users.setup_2fa")),e(2),u("aria-label",l(6,11,"form.button_close")),e(9),d(l(15,13,"users.setup_2fa_warning")),e(2),g(a.timeDiffError?-1:16),e(),g(a.timeDiffError?17:-1),e(),g(a.timeDiffError?-1:18),e(3),g(a.timeDiffError?-1:21),e(2),g(a.timeDiffError?23:-1),e(2),g(a.timeDiffError?-1:25))},dependencies:[O,ne,V,M,F,ee,A,R,j,$],encapsulation:2})}return r})();var se=r=>({"is-invalid":r}),le=(()=>{class r{$activeModal=c(G);$api=c(k);$toastr=c(U);$translate=c(E);form=new N({username:new w("",[x.required]),name:new w("",[x.required]),password:new w("",[x.compose([x.required,x.minLength(4)])]),passwordConfirm:new w("",[x.required]),admin:new w(!0)},this.matchPassword);page={title:"users.title_add_user",save:"users.button_add_new_user",password:"users.label_password"};constructor(){}matchPassword(t){let o=t.get("password").value,a=t.get("passwordConfirm").value;if(o!==a)t.get("passwordConfirm").setErrors({matchPassword:!0});else return null}onSubmit({value:t}){this.$api.post("/users",t).subscribe({next:()=>{this.$activeModal.close(),this.$toastr.success(this.$translate.instant("users.toast_added_new_user"),this.$translate.instant("toast.title_success"))},error:o=>{this.$toastr.error(o.error.message||this.$translate.instant("users.toast_failed_to_add_user"),this.$translate.instant("toast.title_error"))}})}static \u0275fac=function(o){return new(o||r)};static \u0275cmp=y({type:r,selectors:[["ng-component"]],decls:60,vars:50,consts:[[1,"modal-content"],["novalidate","",3,"ngSubmit","formGroup"],[1,"modal-header"],[1,"modal-title"],["type","button","data-dismiss","modal",1,"close",3,"click"],["aria-hidden","true"],[1,"modal-body"],[1,"text-center","mb-3"],[1,"fas","fa-fw","fa-user-plus","primary-text",2,"font-size","75px"],[1,"list-group","list-group-box","mb-0"],[1,"list-group-item","d-flex","flex-column","flex-md-row","align-items-center"],["for","form-username",1,"mb-2","mb-md-0","w-100","w-md-50"],[1,"text-left","text-md-right","w-100","w-md-50"],["formControlName","username","type","text","id","form-username","autocomplete","username","autocapitalize","none",1,"form-control","custom-input"],["for","form-name",1,"mb-2","mb-md-0","w-100","w-md-50"],["formControlName","name","type","text","id","form-name","autocomplete","name",1,"form-control","custom-input"],["for","form-pass",1,"mb-2","mb-md-0","w-100","w-md-50"],["formControlName","password","type","password","autocomplete","new-password","id","form-pass",1,"form-control","custom-input",3,"ngClass"],["for","form-pass-confirm",1,"mb-2","mb-md-0","w-100","w-md-50"],["formControlName","passwordConfirm","type","password","autocomplete","new-password","id","form-pass-confirm",1,"form-control","custom-input",3,"ngClass"],[1,"list-group-item","d-flex","justify-content-between","align-items-center","flex-row","pb-2"],[1,"text-left"],[1,"text-right","grey-text"],["type","checkbox","id","isAdmin",1,"rendux-input"],["for","isAdmin",1,"rendux-label","ml-3"],[1,"modal-footer","justify-content-between"],["type","button","data-dismiss","modal",1,"btn","btn-elegant",3,"click"],[1,"text-center"],[1,"text-right"],["type","submit",1,"btn","btn-primary",3,"disabled"]],template:function(o,a){o&1&&(i(0,"div",0)(1,"form",1),b("ngSubmit",function(){return a.onSubmit(a.form)}),i(2,"div",2)(3,"h5",3),m(4),s(5,"translate"),n(),i(6,"button",4),s(7,"translate"),b("click",function(){return a.$activeModal.dismiss("Dismiss")}),i(8,"span",5),m(9,"\xD7"),n()()(),i(10,"div",6)(11,"div",7),p(12,"i",8),n(),i(13,"ul",9)(14,"li",10)(15,"label",11),m(16),s(17,"translate"),n(),i(18,"div",12),p(19,"input",13),s(20,"translate"),n()(),i(21,"li",10)(22,"label",14),m(23),s(24,"translate"),n(),i(25,"div",12),p(26,"input",15),s(27,"translate"),n()(),i(28,"li",10)(29,"label",16),m(30),s(31,"translate"),n(),i(32,"div",12),p(33,"input",17),s(34,"translate"),n()(),i(35,"li",10)(36,"label",18),m(37),s(38,"translate"),n(),i(39,"div",12),p(40,"input",19),s(41,"translate"),n()(),i(42,"li",20)(43,"span",21),m(44),s(45,"translate"),n(),i(46,"div",22),p(47,"input",23),s(48,"translate"),p(49,"label",24),n()()()(),i(50,"div",25)(51,"div",21)(52,"button",26),b("click",function(){return a.$activeModal.dismiss("Dismiss")}),m(53),s(54,"translate"),n()(),p(55,"div",27),i(56,"div",28)(57,"button",29),m(58),s(59,"translate"),n()()()()()),o&2&&(e(),f("formGroup",a.form),e(3),d(l(5,18,"users.title_add_user")),e(2),u("aria-label",l(7,20,"form.button_close")),e(10),d(l(17,22,"users.label_username")),e(3),u("aria-label",l(20,24,"users.label_username")),e(4),d(l(24,26,"users.label_full_name")),e(3),u("aria-label",l(27,28,"users.label_full_name")),e(4),d(l(31,30,a.page.password)),e(3),f("ngClass",I(46,se,a.form.controls.password.dirty&&a.form.controls.password.errors)),u("aria-label",l(34,32,a.page.password)),e(4),d(l(38,34,"users.label_confirm_password")),e(3),f("ngClass",I(48,se,a.form.controls.passwordConfirm.dirty&&a.form.controls.passwordConfirm.errors)),u("aria-label",l(41,36,"users.label_confirm_password")),e(4),d(l(45,38,"users.label_admin_user")),e(3),u("aria-label",l(48,40,"users.label_admin_user")),e(6),C(" ",l(54,42,"form.button_close")," "),e(4),f("disabled",!a.form.valid),e(),C(" ",l(59,44,"form.button_save")," "))},dependencies:[V,q,M,F,z,A,L,j,P,$],encapsulation:2})}return r})();var me=r=>({"is-invalid":r});function ge(r,S){if(r&1&&(i(0,"li",10)(1,"label",28),m(2),s(3,"translate"),n(),i(4,"div",12),p(5,"input",29),s(6,"translate"),n()()),r&2){let t=v();e(2),d(l(3,3,"users.label_confirm_password")),e(3),f("ngClass",I(7,me,t.form.controls.passwordConfirm.dirty&&t.form.controls.passwordConfirm.errors)),u("aria-label",l(6,5,"users.label_confirm_password"))}}var pe=(()=>{class r{$activeModal=c(G);$api=c(k);$auth=c(Q);$toastr=c(U);$translate=c(E);user;form=new N({username:new w("",[x.required]),name:new w("",[x.required]),password:new w(""),passwordConfirm:new w(""),admin:new w(!0)},this.matchPassword);page={title:"users.title_edit_user",save:"form.button_save",password:"users.label_new_password"};isCurrentUser=!1;constructor(){}ngOnInit(){this.isCurrentUser=this.$auth.user.username===this.user.username,this.form.patchValue(this.user)}matchPassword(t){let o=t.get("password").value,a=t.get("passwordConfirm").value;if(o!==a)t.get("passwordConfirm").setErrors({matchPassword:!0});else return null}onSubmit({value:t}){this.$api.patch(`/users/${this.user.id}`,t).subscribe({next:()=>{this.$activeModal.close(),this.$toastr.success(this.$translate.instant("users.toast_updated_user"),this.$translate.instant("toast.title_success")),this.isCurrentUser&&t.username!==this.$auth.user.username&&this.$auth.logout()},error:o=>{console.error(o),this.$toastr.error(o.error.message||this.$translate.instant("users.toast_failed_to_add_user"),this.$translate.instant("toast.title_error"))}})}static \u0275fac=function(o){return new(o||r)};static \u0275cmp=y({type:r,selectors:[["ng-component"]],inputs:{user:"user"},decls:54,vars:42,consts:[[1,"modal-content"],["novalidate","",3,"ngSubmit","formGroup"],[1,"modal-header"],[1,"modal-title"],["type","button","data-dismiss","modal",1,"close",3,"click"],["aria-hidden","true"],[1,"modal-body"],[1,"text-center","mb-3"],[1,"fas","fa-fw","fa-user-pen","primary-text",2,"font-size","75px"],[1,"list-group","list-group-box","mb-0"],[1,"list-group-item","d-flex","flex-column","flex-md-row","align-items-center"],["for","form-username",1,"mb-2","mb-md-0","w-100","w-md-50"],[1,"text-left","text-md-right","w-100","w-md-50"],["formControlName","username","type","text","id","form-username","autocomplete","off","autocapitalize","none",1,"form-control","custom-input"],["for","form-name",1,"mb-2","mb-md-0","w-100","w-md-50"],["formControlName","name","type","text","id","form-name","autocomplete","name",1,"form-control","custom-input"],["for","form-pass",1,"mb-2","mb-md-0","w-100","w-md-50"],["formControlName","password","type","password","autocomplete","new-password","id","form-pass",1,"form-control","custom-input",3,"ngClass"],[1,"list-group-item","d-flex","justify-content-between","align-items-center","flex-row","pb-2"],[1,"text-left"],[1,"text-right","grey-text"],["type","checkbox","formControlName","admin","id","isAdmin",1,"rendux-input"],["for","isAdmin",1,"rendux-label","ml-3"],[1,"modal-footer","justify-content-between"],["type","button","data-dismiss","modal",1,"btn","btn-elegant",3,"click"],[1,"text-center"],[1,"text-right"],["type","submit",1,"btn","btn-primary",3,"disabled"],["for","form-pass-confirm",1,"mb-2","mb-md-0","w-100","w-md-50"],["formControlName","passwordConfirm","type","password","autocomplete","new-password","id","form-pass-confirm",1,"form-control","custom-input",3,"ngClass"]],template:function(o,a){o&1&&(i(0,"div",0)(1,"form",1),b("ngSubmit",function(){return a.onSubmit(a.form)}),i(2,"div",2)(3,"h5",3),m(4),s(5,"translate"),n(),i(6,"button",4),s(7,"translate"),b("click",function(){return a.$activeModal.dismiss("Dismiss")}),i(8,"span",5),m(9,"\xD7"),n()()(),i(10,"div",6)(11,"div",7),p(12,"i",8),n(),i(13,"ul",9)(14,"li",10)(15,"label",11),m(16),s(17,"translate"),n(),i(18,"div",12),p(19,"input",13),s(20,"translate"),n()(),i(21,"li",10)(22,"label",14),m(23),s(24,"translate"),n(),i(25,"div",12),p(26,"input",15),s(27,"translate"),n()(),i(28,"li",10)(29,"label",16),m(30),s(31,"translate"),n(),i(32,"div",12),p(33,"input",17),s(34,"translate"),n()(),h(35,ge,7,9,"li",10),i(36,"li",18)(37,"span",19),m(38),s(39,"translate"),n(),i(40,"div",20),p(41,"input",21),s(42,"translate"),p(43,"label",22),n()()()(),i(44,"div",23)(45,"div",19)(46,"button",24),b("click",function(){return a.$activeModal.dismiss("Dismiss")}),m(47),s(48,"translate"),n()(),p(49,"div",25),i(50,"div",26)(51,"button",27),m(52),s(53,"translate"),n()()()()()),o&2&&(e(),f("formGroup",a.form),e(3),d(l(5,16,"users.title_edit_user")),e(2),u("aria-label",l(7,18,"form.button_close")),e(10),d(l(17,20,"users.label_username")),e(3),u("aria-label",l(20,22,"users.label_username")),e(4),d(l(24,24,"users.label_full_name")),e(3),u("aria-label",l(27,26,"users.label_full_name")),e(4),d(l(31,28,a.page.password)),e(3),f("ngClass",I(40,me,a.form.controls.password.dirty&&a.form.controls.password.errors)),u("aria-label",l(34,30,a.page.password)),e(2),g(a.form.controls.password.value?35:-1),e(3),d(l(39,32,"users.label_admin_user")),e(3),u("aria-label",l(42,34,"users.label_admin_user")),e(6),C(" ",l(48,36,"form.button_close")," "),e(4),f("disabled",!a.form.valid),e(),C(" ",l(53,38,"form.button_save")," "))},dependencies:[V,q,M,Z,F,z,A,L,j,P,$],encapsulation:2})}return r})();function he(r,S){if(r&1){let t=D();i(0,"button",22),b("click",function(){B(t);let a=v().$implicit,_=v();return T(_.setup2fa(a))}),m(1),s(2,"translate"),n()}r&2&&(e(),d(l(2,1,"users.setup_2fa")))}function Se(r,S){if(r&1){let t=D();i(0,"button",18),b("click",function(){B(t);let a=v().$implicit,_=v();return T(_.disable2fa(a))}),m(1),s(2,"translate"),n()}r&2&&(e(),C(" ",l(2,1,"users.setup_2fa_disable")," "))}function ye(r,S){if(r&1){let t=D();i(0,"div",7)(1,"div",8)(2,"div",9)(3,"div",10)(4,"span",11),p(5,"h4",12)(6,"h5",13),n()(),i(7,"div",14),h(8,he,3,3,"button",15)(9,Se,3,3,"button",16),i(10,"div",17)(11,"button",18),s(12,"translate"),b("click",function(){let a=B(t).$implicit,_=v();return T(_.openEditUser(a))}),p(13,"i",19),n(),i(14,"button",20),s(15,"translate"),b("click",function(){let a=B(t).$implicit,_=v();return T(_.deleteUser(a.id))}),p(16,"i",21),n()()()()()()}if(r&2){let t=S.$implicit,o=v();e(5),f("innerText",t.name),e(),f("innerText",t.username),e(2),g(o.$auth.user.username===t.username&&!t.otpActive?8:-1),e(),g(o.$auth.user.username===t.username&&t.otpActive?9:-1),e(2),u("aria-label",l(12,7,"form.button_edit")),e(3),f("disabled",o.$auth.user.username===t.username),u("aria-label",l(15,9,"form.button_delete"))}}var gt=(()=>{class r{$api=c(k);$auth=c(Q);$modal=c(te);$route=c(ie);$toastr=c(U);$translate=c(E);homebridgeUsers;constructor(){}ngOnInit(){this.$route.data.subscribe(t=>{this.homebridgeUsers=t.homebridgeUsers})}reloadUsers(){return this.$api.get("/users").subscribe(t=>{this.homebridgeUsers=t})}openAddNewUser(){this.$modal.open(le,{size:"lg",backdrop:"static"}).result.finally(()=>{this.reloadUsers()})}openEditUser(t){let o=this.$modal.open(pe,{size:"lg",backdrop:"static"});o.componentInstance.user=t,o.result.finally(()=>{this.reloadUsers()})}deleteUser(t){this.$api.delete(`/users/${t}`).subscribe({next:()=>{this.$toastr.success(this.$translate.instant("users.toast_user_deleted"),this.$translate.instant("toast.title_success")),this.reloadUsers()},error:o=>{console.error(o),this.$toastr.error(o.error.message||this.$translate.instant("users.toast_failed_to_delete_user"),this.$translate.instant("toast.title_error"))}})}setup2fa(t){let o=this.$modal.open(oe,{size:"lg",backdrop:"static"});o.componentInstance.user=t,o.result.finally(()=>{this.reloadUsers()})}disable2fa(t){let o=this.$modal.open(re,{size:"lg",backdrop:"static"});o.componentInstance.user=t,o.result.finally(()=>{this.reloadUsers()})}static \u0275fac=function(o){return new(o||r)};static \u0275cmp=y({type:r,selectors:[["app-users"]],decls:12,vars:6,consts:[[1,"row","mb-3"],[1,"col-9"],[1,"primary-text","m-0"],[1,"col-3","text-right"],[1,"btn","btn-elegant","waves-effect","m-0",3,"click"],[1,"fas","fa-fw","fa-user-plus"],[1,"row"],[1,"col-md-6","mb-4"],[1,"card","card-body"],[1,"d-flex","flex-column"],[1,"d-flex","flex-row","mb-3"],[1,"me-auto","my-0"],[3,"innerText"],[1,"small","text-truncate","primary-text",3,"innerText"],[1,"d-flex","flex-row","justify-content-between"],[1,"btn","btn-primary","m-0"],[1,"btn","btn-elegant","m-0"],["role","group",1,"btn-group"],[1,"btn","btn-elegant","m-0",3,"click"],[1,"fas","fa-fw","fa-user-pen"],[1,"btn","btn-danger","m-0",3,"click","disabled"],[1,"fas","fa-fw","fa-trash"],[1,"btn","btn-primary","m-0",3,"click"]],template:function(o,a){o&1&&(i(0,"div",0)(1,"div",1)(2,"h3",2),m(3),s(4,"translate"),n()(),i(5,"div",3)(6,"button",4),s(7,"translate"),b("click",function(){return a.openAddNewUser()}),p(8,"i",5),n()()(),i(9,"div",6),W(10,ye,17,11,"div",7,K),n()),o&2&&(e(3),d(l(4,2,"users.title_users")),e(3),u("aria-label",l(7,4,"users.button_add_user")),e(4),X(a.homebridgeUsers))},dependencies:[$],encapsulation:2})}return r})();export{re as a,oe as b,le as c,pe as d,gt as e};
|
|
1
|
+
import{a as ne}from"./chunk-474BOAR2.js";import{g as O,m as G,n as te}from"./chunk-N4F42HDL.js";import{b as Z,c as M,d as x,e as F,f as z,g as N,j as w,m as q,o as R,p as L,q as j,w as ee,y as V,z as A}from"./chunk-YLEC7AUG.js";import{b as ie}from"./chunk-T3GI7KUT.js";import{c as Q}from"./chunk-RY4JLM5Q.js";import{a as ce}from"./chunk-IZVXTMWH.js";import{h as U,k}from"./chunk-73SS2RFT.js";import{a as E,b as $}from"./chunk-675OFXLW.js";import{Bb as g,Cc as s,Dc as l,Ec as Y,Lb as u,Mb as f,Rb as h,Tb as K,Ub as W,Vb as X,Wb as i,Xb as n,Yb as p,ac as D,bd as P,dc as b,ec as v,g as de,ib as e,na as c,oc as m,pc as d,qc as C,ub as y,xa as B,ya as T,yc as I}from"./chunk-CKNHTRCL.js";function ue(r,S){r&1&&(i(0,"ngb-alert",14)(1,"p",21),m(2),s(3,"translate"),n()()),r&2&&(f("dismissible",!1),e(2),d(l(3,2,"login.invalid_password")))}var re=(()=>{class r{$activeModal=c(G);$api=c(k);$toastr=c(U);$translate=c(E);formGroup=new N({password:new w("",[x.required])});invalidCredentials=!1;constructor(){}disable2fa(){this.invalidCredentials=!1,this.$api.post("/users/otp/deactivate",this.formGroup.value).subscribe({next:()=>{this.$activeModal.close(),this.$toastr.success(this.$translate.instant("users.setup_2fa_disable_success"),this.$translate.instant("toast.title_success"))},error:()=>{this.formGroup.setValue({password:""}),this.invalidCredentials=!0}})}static \u0275fac=function(o){return new(o||r)};static \u0275cmp=y({type:r,selectors:[["ng-component"]],decls:36,vars:27,consts:[[1,"modal-content",2,"min-height","300px"],[1,"modal-header"],[1,"modal-title"],["type","button","data-dismiss","modal",1,"close",3,"click"],["aria-hidden","true"],[1,"modal-body"],[1,"text-center","mb-3"],[1,"fas","fa-fw","fa-key","primary-text",2,"font-size","75px"],[1,"mb-3"],[1,"list-group","list-group-box","mb-0"],[1,"list-group-item","d-flex","flex-column","flex-md-row","align-items-center"],[1,"mb-2","mb-md-0","w-100","w-md-50"],[1,"text-left","text-md-right","w-100","w-md-50"],["type","password","autocomplete","current-password",1,"form-control","custom-input",3,"formControl","placeholder"],["type","error",1,"mt-3","mb-0",3,"dismissible"],[1,"modal-footer","justify-content-between"],[1,"text-left"],["type","button","data-dismiss","modal",1,"btn","btn-elegant",3,"click"],[1,"text-center"],[1,"text-right"],["type","button","data-dismiss","modal",1,"btn","btn-danger",3,"click","disabled"],[1,"mb-0"]],template:function(o,a){o&1&&(i(0,"div",0)(1,"div",1)(2,"h5",2),m(3),s(4,"translate"),n(),i(5,"button",3),s(6,"translate"),b("click",function(){return a.$activeModal.dismiss("Dismiss")}),i(7,"span",4),m(8,"\xD7"),n()()(),i(9,"div",5)(10,"div",6),p(11,"i",7),n(),i(12,"ul",8)(13,"li"),m(14),s(15,"translate"),n()(),i(16,"ul",9)(17,"li",10)(18,"label",11),m(19),s(20,"translate"),n(),i(21,"div",12),p(22,"input",13),s(23,"translate"),n()()(),g(24,ue,4,4,"ngb-alert",14),n(),i(25,"div",15)(26,"div",16)(27,"button",17),s(28,"translate"),b("click",function(){return a.$activeModal.dismiss("Dismiss")}),m(29),s(30,"translate"),n()(),p(31,"div",18),i(32,"div",19)(33,"button",20),b("click",function(){return a.disable2fa()}),m(34),s(35,"translate"),n()()()()),o&2&&(e(3),d(l(4,11,"users.setup_2fa_disable")),e(2),u("aria-label",l(6,13,"form.button_close")),e(9),d(l(15,15,"users.setup_2fa_disable_current_password")),e(5),d(l(20,17,"login.label_password")),e(3),f("formControl",a.formGroup.controls.password)("placeholder",l(23,19,"users.label_password")),e(2),h(a.invalidCredentials&&!a.formGroup.controls.password.value?24:-1),e(3),u("aria-label",l(28,21,"form.button_close")),e(2),C(" ",l(30,23,"form.button_close")," "),e(4),f("disabled",a.formGroup.invalid),e(),C(" ",l(35,25,"form.button_disable")," "))},dependencies:[V,M,F,A,R,$,O],encapsulation:2})}return r})();var ae=de(ce(),1);var fe=r=>({timeDiffError:r});function be(r,S){r&1&&(i(0,"li"),m(1),s(2,"translate"),n()),r&2&&(e(),d(l(2,1,"users.setup_2fa_scan_qr_code")))}function _e(r,S){if(r&1&&(i(0,"ngb-alert",9)(1,"p",17),m(2),s(3,"translate"),n(),i(4,"p",18),m(5),s(6,"translate"),n()()),r&2){let t=v();f("dismissible",!1),e(2),d(l(3,3,"users.setup_2fa_cannot_setup_2fa")),e(3),d(Y(6,5,"users.setup_2fa_server_time_out",I(8,fe,t.timeDiffError)))}}function ve(r,S){if(r&1&&(i(0,"ul",10)(1,"li",19)(2,"div",20),p(3,"app-qrcode",21),n()(),i(4,"li",22)(5,"label",23),m(6),s(7,"translate"),n(),i(8,"div",24),p(9,"input",25),n()()()),r&2){let t=v();e(3),f("data",t.otpString),e(3),d(l(7,3,"users.setup_2fa_enter_code")),e(3),f("formControl",t.formGroup.controls.code)}}function xe(r,S){if(r&1){let t=D();i(0,"button",26),s(1,"translate"),b("click",function(){B(t);let a=v();return T(a.$activeModal.dismiss("Dismiss"))}),m(2),s(3,"translate"),n()}r&2&&(u("aria-label",l(1,2,"form.button_close")),e(2),C(" ",l(3,4,"form.button_close")," "))}function we(r,S){if(r&1){let t=D();i(0,"button",26),s(1,"translate"),b("click",function(){B(t);let a=v();return T(a.$activeModal.dismiss("Dismiss"))}),m(2),s(3,"translate"),n()}r&2&&(u("aria-label",l(1,2,"form.button_close")),e(2),C(" ",l(3,4,"form.button_close")," "))}function Ce(r,S){if(r&1){let t=D();i(0,"button",27),b("click",function(){B(t);let a=v();return T(a.enable2fa())}),m(1),s(2,"translate"),n()}if(r&2){let t=v();f("disabled",t.formGroup.invalid),e(),C(" ",l(2,2,"form.button_enable")," ")}}var oe=(()=>{class r{$activeModal=c(G);$api=c(k);$toastr=c(U);$translate=c(E);user;timeDiffError=null;otpString;formGroup=new N({code:new w("",[x.required,x.minLength(6),x.maxLength(6)])});constructor(){}ngOnInit(){this.$api.post("/users/otp/setup",{}).subscribe({next:t=>{this.checkTimeDiff(t.timestamp),this.timeDiffError||(this.otpString=t.otpauth)},error:t=>{this.$activeModal.dismiss(),console.error(t),this.$toastr.error(this.$translate.instant("users.setup_2fa_enable_error"),this.$translate.instant("toast.title_error"))}})}checkTimeDiff(t){let o=(0,ae.default)(t).diff(new Date,"millisecond");o<-5e3||o>5e3?this.timeDiffError=o:this.timeDiffError=null}enable2fa(){this.$api.post("/users/otp/activate",this.formGroup.value).subscribe({next:()=>{this.$toastr.success(this.$translate.instant("users.setup_2fa_enabled_success"),this.$translate.instant("toast.title_success")),this.$activeModal.close()},error:t=>{console.error(t),this.$toastr.error(this.$translate.instant("users.setup_2fa_activate_error"),this.$translate.instant("toast.title_error"))}})}static \u0275fac=function(o){return new(o||r)};static \u0275cmp=y({type:r,selectors:[["ng-component"]],inputs:{user:"user"},decls:26,vars:15,consts:[[1,"modal-content","setup2fa"],[1,"modal-header"],[1,"modal-title"],["type","button","data-dismiss","modal",1,"close",3,"click"],["aria-hidden","true"],[1,"modal-body"],[1,"text-center","mb-3"],[1,"fas","fa-fw","fa-key","primary-text",2,"font-size","75px"],[1,"mb-3"],["type","error",1,"mb-0",3,"dismissible"],[1,"list-group","list-group-box","mb-0"],[1,"modal-footer","justify-content-between"],[1,"text-left"],["type","button","data-dismiss","modal",1,"btn","btn-elegant"],[1,"text-center"],[1,"text-right"],["type","button","data-dismiss","modal",1,"btn","btn-primary",3,"disabled"],[1,"font-weight-bold","mb-1"],[1,"mb-0"],[1,"list-group-item","text-center"],[1,"text-center","w-100","d-flex","justify-content-center"],[1,"mx-auto",2,"width","175px","height","175px",3,"data"],[1,"list-group-item","d-flex","flex-column","flex-md-row","align-items-center"],[1,"mb-2","mb-md-0","w-100","w-md-50"],[1,"text-left","text-md-right","w-100","w-md-50"],["formControlName","username","type","text","placeholder","eg. 123456","autocomplete","one-time-code","autocapitalize","none","inputmode","numeric","pattern","[0-9]*",1,"form-control","custom-input",3,"formControl"],["type","button","data-dismiss","modal",1,"btn","btn-elegant",3,"click"],["type","button","data-dismiss","modal",1,"btn","btn-primary",3,"click","disabled"]],template:function(o,a){o&1&&(i(0,"div",0)(1,"div",1)(2,"h5",2),m(3),s(4,"translate"),n(),i(5,"button",3),s(6,"translate"),b("click",function(){return a.$activeModal.dismiss("Dismiss")}),i(7,"span",4),m(8,"\xD7"),n()()(),i(9,"div",5)(10,"div",6),p(11,"i",7),n(),i(12,"ul",8)(13,"li"),m(14),s(15,"translate"),n(),g(16,be,3,3,"li"),n(),g(17,_e,7,10,"ngb-alert",9)(18,ve,10,5,"ul",10),n(),i(19,"div",11)(20,"div",12),g(21,xe,4,6,"button",13),n(),i(22,"div",14),g(23,we,4,6,"button",13),n(),i(24,"div",15),g(25,Ce,3,4,"button",16),n()()()),o&2&&(e(3),d(l(4,9,"users.setup_2fa")),e(2),u("aria-label",l(6,11,"form.button_close")),e(9),d(l(15,13,"users.setup_2fa_warning")),e(2),h(a.timeDiffError?-1:16),e(),h(a.timeDiffError?17:-1),e(),h(a.timeDiffError?-1:18),e(3),h(a.timeDiffError?-1:21),e(2),h(a.timeDiffError?23:-1),e(2),h(a.timeDiffError?-1:25))},dependencies:[O,ne,V,M,F,ee,A,R,j,$],encapsulation:2})}return r})();var se=r=>({"is-invalid":r}),le=(()=>{class r{$activeModal=c(G);$api=c(k);$toastr=c(U);$translate=c(E);form=new N({username:new w("",[x.required]),name:new w("",[x.required]),password:new w("",[x.compose([x.required,x.minLength(4)])]),passwordConfirm:new w("",[x.required]),admin:new w(!0)},this.matchPassword);page={title:"users.title_add_user",save:"users.button_add_new_user",password:"users.label_password"};constructor(){}matchPassword(t){let o=t.get("password").value,a=t.get("passwordConfirm").value;if(o!==a)t.get("passwordConfirm").setErrors({matchPassword:!0});else return null}onSubmit({value:t}){this.$api.post("/users",t).subscribe({next:()=>{this.$activeModal.close(),this.$toastr.success(this.$translate.instant("users.toast_added_new_user"),this.$translate.instant("toast.title_success"))},error:o=>{this.$toastr.error(o.error.message||this.$translate.instant("users.toast_failed_to_add_user"),this.$translate.instant("toast.title_error"))}})}static \u0275fac=function(o){return new(o||r)};static \u0275cmp=y({type:r,selectors:[["ng-component"]],decls:60,vars:50,consts:[[1,"modal-content"],["novalidate","",3,"ngSubmit","formGroup"],[1,"modal-header"],[1,"modal-title"],["type","button","data-dismiss","modal",1,"close",3,"click"],["aria-hidden","true"],[1,"modal-body"],[1,"text-center","mb-3"],[1,"fas","fa-fw","fa-user-plus","primary-text",2,"font-size","75px"],[1,"list-group","list-group-box","mb-0"],[1,"list-group-item","d-flex","flex-column","flex-md-row","align-items-center"],["for","form-username",1,"mb-2","mb-md-0","w-100","w-md-50"],[1,"text-left","text-md-right","w-100","w-md-50"],["formControlName","username","type","text","id","form-username","autocomplete","username","autocapitalize","none",1,"form-control","custom-input"],["for","form-name",1,"mb-2","mb-md-0","w-100","w-md-50"],["formControlName","name","type","text","id","form-name","autocomplete","name",1,"form-control","custom-input"],["for","form-pass",1,"mb-2","mb-md-0","w-100","w-md-50"],["formControlName","password","type","password","autocomplete","new-password","id","form-pass",1,"form-control","custom-input",3,"ngClass"],["for","form-pass-confirm",1,"mb-2","mb-md-0","w-100","w-md-50"],["formControlName","passwordConfirm","type","password","autocomplete","new-password","id","form-pass-confirm",1,"form-control","custom-input",3,"ngClass"],[1,"list-group-item","d-flex","justify-content-between","align-items-center","flex-row","pb-2"],[1,"text-left"],[1,"text-right","grey-text"],["type","checkbox","id","isAdmin",1,"rendux-input"],["for","isAdmin",1,"rendux-label","ml-3"],[1,"modal-footer","justify-content-between"],["type","button","data-dismiss","modal",1,"btn","btn-elegant",3,"click"],[1,"text-center"],[1,"text-right"],["type","submit",1,"btn","btn-primary",3,"disabled"]],template:function(o,a){o&1&&(i(0,"div",0)(1,"form",1),b("ngSubmit",function(){return a.onSubmit(a.form)}),i(2,"div",2)(3,"h5",3),m(4),s(5,"translate"),n(),i(6,"button",4),s(7,"translate"),b("click",function(){return a.$activeModal.dismiss("Dismiss")}),i(8,"span",5),m(9,"\xD7"),n()()(),i(10,"div",6)(11,"div",7),p(12,"i",8),n(),i(13,"ul",9)(14,"li",10)(15,"label",11),m(16),s(17,"translate"),n(),i(18,"div",12),p(19,"input",13),s(20,"translate"),n()(),i(21,"li",10)(22,"label",14),m(23),s(24,"translate"),n(),i(25,"div",12),p(26,"input",15),s(27,"translate"),n()(),i(28,"li",10)(29,"label",16),m(30),s(31,"translate"),n(),i(32,"div",12),p(33,"input",17),s(34,"translate"),n()(),i(35,"li",10)(36,"label",18),m(37),s(38,"translate"),n(),i(39,"div",12),p(40,"input",19),s(41,"translate"),n()(),i(42,"li",20)(43,"span",21),m(44),s(45,"translate"),n(),i(46,"div",22),p(47,"input",23),s(48,"translate"),p(49,"label",24),n()()()(),i(50,"div",25)(51,"div",21)(52,"button",26),b("click",function(){return a.$activeModal.dismiss("Dismiss")}),m(53),s(54,"translate"),n()(),p(55,"div",27),i(56,"div",28)(57,"button",29),m(58),s(59,"translate"),n()()()()()),o&2&&(e(),f("formGroup",a.form),e(3),d(l(5,18,"users.title_add_user")),e(2),u("aria-label",l(7,20,"form.button_close")),e(10),d(l(17,22,"users.label_username")),e(3),u("aria-label",l(20,24,"users.label_username")),e(4),d(l(24,26,"users.label_full_name")),e(3),u("aria-label",l(27,28,"users.label_full_name")),e(4),d(l(31,30,a.page.password)),e(3),f("ngClass",I(46,se,a.form.controls.password.dirty&&a.form.controls.password.errors)),u("aria-label",l(34,32,a.page.password)),e(4),d(l(38,34,"users.label_confirm_password")),e(3),f("ngClass",I(48,se,a.form.controls.passwordConfirm.dirty&&a.form.controls.passwordConfirm.errors)),u("aria-label",l(41,36,"users.label_confirm_password")),e(4),d(l(45,38,"users.label_admin_user")),e(3),u("aria-label",l(48,40,"users.label_admin_user")),e(6),C(" ",l(54,42,"form.button_close")," "),e(4),f("disabled",!a.form.valid),e(),C(" ",l(59,44,"form.button_save")," "))},dependencies:[V,q,M,F,z,A,L,j,P,$],encapsulation:2})}return r})();var me=r=>({"is-invalid":r});function he(r,S){if(r&1&&(i(0,"li",10)(1,"label",28),m(2),s(3,"translate"),n(),i(4,"div",12),p(5,"input",29),s(6,"translate"),n()()),r&2){let t=v();e(2),d(l(3,3,"users.label_confirm_password")),e(3),f("ngClass",I(7,me,t.form.controls.passwordConfirm.dirty&&t.form.controls.passwordConfirm.errors)),u("aria-label",l(6,5,"users.label_confirm_password"))}}var pe=(()=>{class r{$activeModal=c(G);$api=c(k);$auth=c(Q);$toastr=c(U);$translate=c(E);user;form=new N({username:new w("",[x.required]),name:new w("",[x.required]),password:new w(""),passwordConfirm:new w(""),admin:new w(!0)},this.matchPassword);page={title:"users.title_edit_user",save:"form.button_save",password:"users.label_new_password"};isCurrentUser=!1;constructor(){}ngOnInit(){this.isCurrentUser=this.$auth.user.username===this.user.username,this.form.patchValue(this.user)}matchPassword(t){let o=t.get("password").value,a=t.get("passwordConfirm").value;if(o!==a)t.get("passwordConfirm").setErrors({matchPassword:!0});else return null}onSubmit({value:t}){this.$api.patch(`/users/${this.user.id}`,t).subscribe({next:()=>{this.$activeModal.close(),this.$toastr.success(this.$translate.instant("users.toast_updated_user"),this.$translate.instant("toast.title_success")),this.isCurrentUser&&t.username!==this.$auth.user.username&&this.$auth.logout()},error:o=>{console.error(o),this.$toastr.error(o.error.message||this.$translate.instant("users.toast_failed_to_add_user"),this.$translate.instant("toast.title_error"))}})}static \u0275fac=function(o){return new(o||r)};static \u0275cmp=y({type:r,selectors:[["ng-component"]],inputs:{user:"user"},decls:54,vars:42,consts:[[1,"modal-content"],["novalidate","",3,"ngSubmit","formGroup"],[1,"modal-header"],[1,"modal-title"],["type","button","data-dismiss","modal",1,"close",3,"click"],["aria-hidden","true"],[1,"modal-body"],[1,"text-center","mb-3"],[1,"fas","fa-fw","fa-user-pen","primary-text",2,"font-size","75px"],[1,"list-group","list-group-box","mb-0"],[1,"list-group-item","d-flex","flex-column","flex-md-row","align-items-center"],["for","form-username",1,"mb-2","mb-md-0","w-100","w-md-50"],[1,"text-left","text-md-right","w-100","w-md-50"],["formControlName","username","type","text","id","form-username","autocomplete","off","autocapitalize","none",1,"form-control","custom-input"],["for","form-name",1,"mb-2","mb-md-0","w-100","w-md-50"],["formControlName","name","type","text","id","form-name","autocomplete","name",1,"form-control","custom-input"],["for","form-pass",1,"mb-2","mb-md-0","w-100","w-md-50"],["formControlName","password","type","password","autocomplete","new-password","id","form-pass",1,"form-control","custom-input",3,"ngClass"],[1,"list-group-item","d-flex","justify-content-between","align-items-center","flex-row","pb-2"],[1,"text-left"],[1,"text-right","grey-text"],["type","checkbox","formControlName","admin","id","isAdmin",1,"rendux-input"],["for","isAdmin",1,"rendux-label","ml-3"],[1,"modal-footer","justify-content-between"],["type","button","data-dismiss","modal",1,"btn","btn-elegant",3,"click"],[1,"text-center"],[1,"text-right"],["type","submit",1,"btn","btn-primary",3,"disabled"],["for","form-pass-confirm",1,"mb-2","mb-md-0","w-100","w-md-50"],["formControlName","passwordConfirm","type","password","autocomplete","new-password","id","form-pass-confirm",1,"form-control","custom-input",3,"ngClass"]],template:function(o,a){o&1&&(i(0,"div",0)(1,"form",1),b("ngSubmit",function(){return a.onSubmit(a.form)}),i(2,"div",2)(3,"h5",3),m(4),s(5,"translate"),n(),i(6,"button",4),s(7,"translate"),b("click",function(){return a.$activeModal.dismiss("Dismiss")}),i(8,"span",5),m(9,"\xD7"),n()()(),i(10,"div",6)(11,"div",7),p(12,"i",8),n(),i(13,"ul",9)(14,"li",10)(15,"label",11),m(16),s(17,"translate"),n(),i(18,"div",12),p(19,"input",13),s(20,"translate"),n()(),i(21,"li",10)(22,"label",14),m(23),s(24,"translate"),n(),i(25,"div",12),p(26,"input",15),s(27,"translate"),n()(),i(28,"li",10)(29,"label",16),m(30),s(31,"translate"),n(),i(32,"div",12),p(33,"input",17),s(34,"translate"),n()(),g(35,he,7,9,"li",10),i(36,"li",18)(37,"span",19),m(38),s(39,"translate"),n(),i(40,"div",20),p(41,"input",21),s(42,"translate"),p(43,"label",22),n()()()(),i(44,"div",23)(45,"div",19)(46,"button",24),b("click",function(){return a.$activeModal.dismiss("Dismiss")}),m(47),s(48,"translate"),n()(),p(49,"div",25),i(50,"div",26)(51,"button",27),m(52),s(53,"translate"),n()()()()()),o&2&&(e(),f("formGroup",a.form),e(3),d(l(5,16,"users.title_edit_user")),e(2),u("aria-label",l(7,18,"form.button_close")),e(10),d(l(17,20,"users.label_username")),e(3),u("aria-label",l(20,22,"users.label_username")),e(4),d(l(24,24,"users.label_full_name")),e(3),u("aria-label",l(27,26,"users.label_full_name")),e(4),d(l(31,28,a.page.password)),e(3),f("ngClass",I(40,me,a.form.controls.password.dirty&&a.form.controls.password.errors)),u("aria-label",l(34,30,a.page.password)),e(2),h(a.form.controls.password.value?35:-1),e(3),d(l(39,32,"users.label_admin_user")),e(3),u("aria-label",l(42,34,"users.label_admin_user")),e(6),C(" ",l(48,36,"form.button_close")," "),e(4),f("disabled",!a.form.valid),e(),C(" ",l(53,38,"form.button_save")," "))},dependencies:[V,q,M,Z,F,z,A,L,j,P,$],encapsulation:2})}return r})();function ge(r,S){if(r&1){let t=D();i(0,"button",21),b("click",function(){B(t);let a=v().$implicit,_=v();return T(_.setup2fa(a))}),m(1),s(2,"translate"),n()}r&2&&(e(),d(l(2,1,"users.setup_2fa")))}function Se(r,S){if(r&1){let t=D();i(0,"button",22),b("click",function(){B(t);let a=v().$implicit,_=v();return T(_.disable2fa(a))}),m(1),s(2,"translate"),n()}r&2&&(e(),C(" ",l(2,1,"users.setup_2fa_disable")," "))}function ye(r,S){if(r&1){let t=D();i(0,"div",7)(1,"div",8)(2,"div",9)(3,"div",10)(4,"span",11),p(5,"h4",12)(6,"h5",13),n()(),i(7,"div",14),g(8,ge,3,3,"button",15)(9,Se,3,3,"button",16),i(10,"div")(11,"button",17),s(12,"translate"),b("click",function(){let a=B(t).$implicit,_=v();return T(_.openEditUser(a))}),p(13,"i",18),n(),i(14,"button",19),s(15,"translate"),b("click",function(){let a=B(t).$implicit,_=v();return T(_.deleteUser(a.id))}),p(16,"i",20),n()()()()()()}if(r&2){let t=S.$implicit,o=v();e(5),f("innerText",t.name),e(),f("innerText",t.username),e(2),h(o.$auth.user.username===t.username&&!t.otpActive?8:-1),e(),h(o.$auth.user.username===t.username&&t.otpActive?9:-1),e(2),u("aria-label",l(12,7,"form.button_edit")),e(3),f("disabled",o.$auth.user.username===t.username),u("aria-label",l(15,9,"form.button_delete"))}}var ht=(()=>{class r{$api=c(k);$auth=c(Q);$modal=c(te);$route=c(ie);$toastr=c(U);$translate=c(E);homebridgeUsers;constructor(){}ngOnInit(){this.$route.data.subscribe(t=>{this.homebridgeUsers=t.homebridgeUsers})}reloadUsers(){return this.$api.get("/users").subscribe(t=>{this.homebridgeUsers=t})}openAddNewUser(){this.$modal.open(le,{size:"lg",backdrop:"static"}).result.finally(()=>{this.reloadUsers()})}openEditUser(t){let o=this.$modal.open(pe,{size:"lg",backdrop:"static"});o.componentInstance.user=t,o.result.finally(()=>{this.reloadUsers()})}deleteUser(t){this.$api.delete(`/users/${t}`).subscribe({next:()=>{this.$toastr.success(this.$translate.instant("users.toast_user_deleted"),this.$translate.instant("toast.title_success")),this.reloadUsers()},error:o=>{console.error(o),this.$toastr.error(o.error.message||this.$translate.instant("users.toast_failed_to_delete_user"),this.$translate.instant("toast.title_error"))}})}setup2fa(t){let o=this.$modal.open(oe,{size:"lg",backdrop:"static"});o.componentInstance.user=t,o.result.finally(()=>{this.reloadUsers()})}disable2fa(t){let o=this.$modal.open(re,{size:"lg",backdrop:"static"});o.componentInstance.user=t,o.result.finally(()=>{this.reloadUsers()})}static \u0275fac=function(o){return new(o||r)};static \u0275cmp=y({type:r,selectors:[["app-users"]],decls:12,vars:6,consts:[[1,"row","mb-3"],[1,"col-9"],[1,"primary-text","m-0"],[1,"col-3","text-right"],[1,"btn","btn-elegant","waves-effect","m-0",3,"click"],[1,"fas","fa-fw","fa-user-plus"],[1,"row"],[1,"col-md-6","mb-4"],[1,"card","card-body"],[1,"d-flex","flex-column"],[1,"d-flex","flex-row","mb-3"],[1,"me-auto","my-0"],[3,"innerText"],[1,"small","text-truncate","primary-text",3,"innerText"],[1,"d-flex","flex-row","justify-content-between"],[1,"btn","btn-primary","m-0"],[1,"btn","btn-elegant","m-0"],[1,"btn","btn-elegant","m-0","ml-3",3,"click"],[1,"fas","fa-fw","fa-user-pen"],[1,"btn","btn-danger","m-0","ml-3",3,"click","disabled"],[1,"fas","fa-fw","fa-trash"],[1,"btn","btn-primary","m-0",3,"click"],[1,"btn","btn-elegant","m-0",3,"click"]],template:function(o,a){o&1&&(i(0,"div",0)(1,"div",1)(2,"h3",2),m(3),s(4,"translate"),n()(),i(5,"div",3)(6,"button",4),s(7,"translate"),b("click",function(){return a.openAddNewUser()}),p(8,"i",5),n()()(),i(9,"div",6),W(10,ye,17,11,"div",7,K),n()),o&2&&(e(3),d(l(4,2,"users.title_users")),e(3),u("aria-label",l(7,4,"users.button_add_user")),e(4),X(a.homebridgeUsers))},dependencies:[$],encapsulation:2})}return r})();export{re as a,oe as b,le as c,pe as d,ht as e};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{f as a}from"./chunk-B5ETSZTP.js";import"./chunk-DYAIZVQW.js";import"./chunk-QVYOCVSK.js";import"./chunk-YE4T476I.js";import"./chunk-XQNHUDX7.js";import"./chunk-23M23WV2.js";import"./chunk-UE7ANWWM.js";import"./chunk-7GT27K3E.js";import"./chunk-NSCP3SOQ.js";import"./chunk-5KLZWFYX.js";import"./chunk-JF5AT3NK.js";import"./chunk-HYJNTVQ7.js";import"./chunk-C2XBPNOQ.js";import"./chunk-474BOAR2.js";import"./chunk-RP5TYXWG.js";import"./chunk-7BCHGXO4.js";import"./chunk-LEFLOPGL.js";import"./chunk-XFK2EZ3K.js";import"./chunk-EEDUUZ6J.js";import"./chunk-N4F42HDL.js";import"./chunk-YLEC7AUG.js";import"./chunk-JTZVAPYW.js";import"./chunk-T3GI7KUT.js";import"./chunk-RY4JLM5Q.js";import"./chunk-IZVXTMWH.js";import"./chunk-73SS2RFT.js";import"./chunk-HA6CO5NZ.js";import"./chunk-675OFXLW.js";import"./chunk-CKNHTRCL.js";export{a as StatusComponent};
|