homebridge-config-ui-x 5.0.0-beta.36 → 5.0.0-beta.38
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 +5 -5
- package/public/3rdpartylicenses.txt +0 -70
- package/public/chunk-25JGAZTU.js +1 -0
- package/public/{chunk-RYZ4IXCN.js → chunk-2FVNTMOQ.js} +1 -1
- package/public/chunk-3E6OK2P7.js +1 -0
- package/public/chunk-3KUBQVSV.js +1 -0
- package/public/chunk-3LAGI64C.js +1 -0
- package/public/{chunk-AHGEAOPV.js → chunk-3X5J254W.js} +1 -1
- package/public/chunk-45I5SPGX.js +1 -0
- package/public/{chunk-SBMAYKUX.js → chunk-4O5RZ66J.js} +1 -1
- package/public/{chunk-RRUCC4UM.js → chunk-4SJZ7PAW.js} +1 -1
- package/public/{chunk-XAUZKAOZ.js → chunk-4VJ4GWBA.js} +1 -1
- package/public/{chunk-6VQUZTBR.js → chunk-5L2WMP4L.js} +3 -3
- package/public/{chunk-JNL225HQ.js → chunk-6ZUGROTQ.js} +1 -1
- package/public/{chunk-Y34W3CUD.js → chunk-725HXV2G.js} +1 -1
- package/public/chunk-7DEATYPT.js +1 -0
- package/public/{chunk-POAKVVF2.js → chunk-AVXJGBG2.js} +1 -1
- package/public/{chunk-2IB7U7CP.js → chunk-AZPQMBX2.js} +1 -1
- package/public/{chunk-JNO6VU35.js → chunk-BSFAGDRB.js} +1 -1
- package/public/{chunk-FAPE5Q5F.js → chunk-BWR6O4JK.js} +1 -1
- package/public/chunk-D7JOXSYR.js +1 -0
- package/public/{chunk-ZW6RVKYH.js → chunk-E3JRNGIQ.js} +1 -1
- package/public/{chunk-7P7JUG4X.js → chunk-E66CIXOF.js} +5 -5
- package/public/{chunk-T4PURZCK.js → chunk-E7ORFP4S.js} +1 -1
- package/public/chunk-EWOD3ZFL.js +1 -0
- package/public/{chunk-CIIXSFUN.js → chunk-F43KGMAR.js} +1 -1
- package/public/chunk-FCAJFX5Q.js +1 -0
- package/public/chunk-GCMPTZDI.js +1 -0
- package/public/{chunk-76YMQE3M.js → chunk-GMKJQZJN.js} +1 -1
- package/public/{chunk-XLPWMFXX.js → chunk-GQSPHO73.js} +1 -1
- package/public/{chunk-W6PBFS4D.js → chunk-GVOKS7I6.js} +1 -1
- package/public/{chunk-KGZIU3W2.js → chunk-HBVM7W4F.js} +1 -1
- package/public/{chunk-AQX2C7OY.js → chunk-I4DX7GIX.js} +1 -1
- package/public/{chunk-OY5LBRVA.js → chunk-I7356EVZ.js} +1 -1
- package/public/{chunk-F6WFMKYJ.js → chunk-ILMG4QEX.js} +1 -1
- package/public/{chunk-2BNYOQCW.js → chunk-IOAR3CKS.js} +1 -1
- package/public/{chunk-GLU4GX3I.js → chunk-IS2FWNNK.js} +1 -1
- package/public/chunk-IS3TKWML.js +1 -0
- package/public/chunk-K5UJ27UF.js +1 -0
- package/public/{chunk-Y2Z3IZ4S.js → chunk-K7Q7WLIB.js} +1 -1
- package/public/chunk-KAE7DD6J.js +1 -0
- package/public/{chunk-KYPCX2ID.js → chunk-LQF2PA7Z.js} +1 -1
- package/public/chunk-M42ANQVN.js +1 -0
- package/public/{chunk-POVXCDK5.js → chunk-MAID4BP6.js} +1 -1
- package/public/{chunk-TROWBWOI.js → chunk-MKHNUIYH.js} +1 -1
- package/public/{chunk-ZQGDYLQU.js → chunk-MNIY5XXB.js} +1 -1
- package/public/{chunk-I2F2MP74.js → chunk-MX74KPSN.js} +1 -1
- package/public/chunk-O3AT5FQT.js +1 -0
- package/public/{chunk-UVFTNUVW.js → chunk-OCXZVN3Q.js} +1 -1
- package/public/{chunk-AGJQ475L.js → chunk-OE6IRU5R.js} +1 -1
- package/public/{chunk-7A25PAM7.js → chunk-OHS6VJO6.js} +1 -1
- package/public/{chunk-NTBDPWDW.js → chunk-PJ6GYQJZ.js} +1 -1
- package/public/{chunk-PGFH5ESW.js → chunk-QOPJ7PKO.js} +1 -1
- package/public/chunk-QR34GZUE.js +1 -0
- package/public/{chunk-YKNAHNGY.js → chunk-R67GIUE7.js} +1 -1
- package/public/{chunk-T3PFHQEF.js → chunk-RFTYUSHO.js} +1 -1
- package/public/{chunk-WHBCTF2I.js → chunk-RY2EPBKR.js} +1 -1
- package/public/{chunk-EJKY7TUH.js → chunk-S7TJUT47.js} +1 -1
- package/public/{chunk-QQK6ZXND.js → chunk-SQXYRBI4.js} +1 -1
- package/public/{chunk-37342H56.js → chunk-UG46KQRY.js} +8 -8
- package/public/{chunk-UWFYNH6W.js → chunk-UQ5FDHQI.js} +1 -1
- package/public/{chunk-WN6H7IUU.js → chunk-WFHKXN5H.js} +1 -1
- package/public/chunk-WHSJSO6Z.js +1 -0
- package/public/chunk-WW2BVAWM.js +1 -0
- package/public/{chunk-VCLNKK3Y.js → chunk-WYZFRFXG.js} +1 -1
- package/public/{chunk-5RNQ5G6T.js → chunk-XOH2MB7K.js} +1 -1
- package/public/{chunk-TI5JTR4M.js → chunk-Z4JI7QYC.js} +1 -1
- package/public/index.html +2 -2
- package/public/{main-MI73XX7G.js → main-W3TYZML3.js} +1 -1
- package/public/{styles-IBQHST5Z.css → styles-C224PCUE.css} +1 -1
- package/public/chunk-B32E2WRF.js +0 -1
- package/public/chunk-B44UNYWQ.js +0 -1
- package/public/chunk-D7EYNOYB.js +0 -1
- package/public/chunk-HXJQ7BOK.js +0 -1
- package/public/chunk-HYA4DWUG.js +0 -1
- package/public/chunk-INVOJS3B.js +0 -1
- package/public/chunk-KJKMLPII.js +0 -1
- package/public/chunk-LEPNWGOY.js +0 -1
- package/public/chunk-NCHGQZ5H.js +0 -1
- package/public/chunk-PKJVQL6N.js +0 -1
- package/public/chunk-PZ44YARR.js +0 -1
- package/public/chunk-RP7A23KE.js +0 -1
- package/public/chunk-SLHI7QNB.js +0 -1
- package/public/chunk-UVFODSI2.js +0 -1
- package/public/chunk-VDFXVBQ3.js +0 -1
- package/public/chunk-Z3RTHBQZ.js +0 -1
- package/public/chunk-ZQ4RT7G3.js +0 -1
- package/public/chunk-ZUT7DDEG.js +0 -1
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{a as St,b as qC}from"./chunk-T4PURZCK.js";import{a as zs}from"./chunk-C2UJXFYZ.js";import{a as ii,b as ni}from"./chunk-BN42B6ZN.js";import{a as Ks}from"./chunk-VOG67KUU.js";import{a as Zs}from"./chunk-FAPE5Q5F.js";import{a as Js}from"./chunk-KBQ7X43U.js";import{a as tn}from"./chunk-TAQCEDBC.js";import{a as Hs,b as Ws}from"./chunk-6LUEJV3C.js";import{a as ao}from"./chunk-VGMRIFZA.js";import{a as Gs}from"./chunk-GLU4GX3I.js";import{a as mf,b as Ff,c as Cf,d as gf,e as hf,f as Ef,g as ei,m as Ce,n as Ue,o as ti}from"./chunk-7P7JUG4X.js";import{a as Ms,b as Zu,c as Qu,e as rt,f as js,h as Ns,i as qs,k as Vs,l as ru,m as Rs,o as Xu,r as Yu,s as Su,t as $u,x as Ls,y as It,z as oo}from"./chunk-A6ASL2RK.js";import{a as ui}from"./chunk-AHGEAOPV.js";import{d as qt}from"./chunk-7HPEGK3R.js";import{a as Us}from"./chunk-XAUZKAOZ.js";import{b as ke}from"./chunk-5RNQ5G6T.js";import{h as ce,j as ou,k as De}from"./chunk-AQX2C7OY.js";import{e as Os}from"./chunk-T3Y7RYJZ.js";import{a as de,b as ge}from"./chunk-G67F4LRX.js";import{$c as Ct,Ac as _,Bc as B,Ca as xt,Cc as qe,D as _s,Da as Bs,Fa as uf,Gc as Ts,Ha as nf,Jb as W,Kb as g,Lb as wt,M as Yn,Mb as Ku,Nb as J,Ob as As,Pb as x,Rb as He,Sb as We,Tb as Ge,Ub as d,Vb as c,Wb as w,Xb as Is,Yb as Ss,Z as ro,_b as z,a as Z,aa as Yi,ad as Iu,b as Ee,bc as P,bd as it,cb as re,cc as C,e as F,ed as Ps,fa as ys,fb as xs,g as Oe,ga as Bt,gb as s,gc as Df,h as H,ha as ef,hb as pe,hc as sf,ic as lf,id as pf,jc as df,k as gs,kc as cf,la as tf,lb as ff,ma as $,mc as h,n as ct,nc as R,ob as rf,oc as q,pb as of,pc as Wt,q as hs,qc as $s,rc as Be,sb as K,sc as xe,ta as en,tb as af,tc as we,ua as j,ub as Gu,uc as ks,v as Es,va as N,vb as ws,vc as Ne,w as ie,wc as At,x as bs,xa as vs,xc as fu,yc as Gt,zb as S,zc as Ju}from"./chunk-ELVGIIRZ.js";var Xs=F((CV,Qs)=>{function RC(){this.__data__=[],this.size=0}Qs.exports=RC});var bf=F((gV,Ys)=>{function LC(e,u){return e===u||e!==e&&u!==u}Ys.exports=LC});var un=F((hV,e0)=>{var zC=bf();function UC(e,u){for(var t=e.length;t--;)if(zC(e[t][0],u))return t;return-1}e0.exports=UC});var u0=F((EV,t0)=>{var HC=un(),WC=Array.prototype,GC=WC.splice;function KC(e){var u=this.__data__,t=HC(u,e);if(t<0)return!1;var i=u.length-1;return t==i?u.pop():GC.call(u,t,1),--this.size,!0}t0.exports=KC});var n0=F((bV,i0)=>{var JC=un();function ZC(e){var u=this.__data__,t=JC(u,e);return t<0?void 0:u[t][1]}i0.exports=ZC});var r0=F((_V,f0)=>{var QC=un();function XC(e){return QC(this.__data__,e)>-1}f0.exports=XC});var a0=F((yV,o0)=>{var YC=un();function e4(e,u){var t=this.__data__,i=YC(t,e);return i<0?(++this.size,t.push([e,u])):t[i][1]=u,this}o0.exports=e4});var nn=F((vV,D0)=>{var t4=Xs(),u4=u0(),i4=n0(),n4=r0(),f4=a0();function ri(e){var u=-1,t=e==null?0:e.length;for(this.clear();++u<t;){var i=e[u];this.set(i[0],i[1])}}ri.prototype.clear=t4;ri.prototype.delete=u4;ri.prototype.get=i4;ri.prototype.has=n4;ri.prototype.set=f4;D0.exports=ri});var l0=F((BV,s0)=>{var r4=nn();function o4(){this.__data__=new r4,this.size=0}s0.exports=o4});var c0=F((xV,d0)=>{function a4(e){var u=this.__data__,t=u.delete(e);return this.size=u.size,t}d0.exports=a4});var m0=F((wV,p0)=>{function D4(e){return this.__data__.get(e)}p0.exports=D4});var C0=F((AV,F0)=>{function s4(e){return this.__data__.has(e)}F0.exports=s4});var Do=F((IV,g0)=>{var l4=typeof global=="object"&&global&&global.Object===Object&&global;g0.exports=l4});var $t=F((SV,h0)=>{var d4=Do(),c4=typeof self=="object"&&self&&self.Object===Object&&self,p4=d4||c4||Function("return this")();h0.exports=p4});var oi=F(($V,E0)=>{var m4=$t(),F4=m4.Symbol;E0.exports=F4});var v0=F((kV,y0)=>{var b0=oi(),_0=Object.prototype,C4=_0.hasOwnProperty,g4=_0.toString,fn=b0?b0.toStringTag:void 0;function h4(e){var u=C4.call(e,fn),t=e[fn];try{e[fn]=void 0;var i=!0}catch{}var n=g4.call(e);return i&&(u?e[fn]=t:delete e[fn]),n}y0.exports=h4});var x0=F((TV,B0)=>{var E4=Object.prototype,b4=E4.toString;function _4(e){return b4.call(e)}B0.exports=_4});var ku=F((PV,I0)=>{var w0=oi(),y4=v0(),v4=x0(),B4="[object Null]",x4="[object Undefined]",A0=w0?w0.toStringTag:void 0;function w4(e){return e==null?e===void 0?x4:B4:A0&&A0 in Object(e)?y4(e):v4(e)}I0.exports=w4});var Tu=F((OV,S0)=>{function A4(e){var u=typeof e;return e!=null&&(u=="object"||u=="function")}S0.exports=A4});var so=F((MV,$0)=>{var I4=ku(),S4=Tu(),$4="[object AsyncFunction]",k4="[object Function]",T4="[object GeneratorFunction]",P4="[object Proxy]";function O4(e){if(!S4(e))return!1;var u=I4(e);return u==k4||u==T4||u==$4||u==P4}$0.exports=O4});var T0=F((jV,k0)=>{var M4=$t(),j4=M4["__core-js_shared__"];k0.exports=j4});var M0=F((NV,O0)=>{var lo=T0(),P0=function(){var e=/[^.]+$/.exec(lo&&lo.keys&&lo.keys.IE_PROTO||"");return e?"Symbol(src)_1."+e:""}();function N4(e){return!!P0&&P0 in e}O0.exports=N4});var co=F((qV,j0)=>{var q4=Function.prototype,V4=q4.toString;function R4(e){if(e!=null){try{return V4.call(e)}catch{}try{return e+""}catch{}}return""}j0.exports=R4});var q0=F((VV,N0)=>{var L4=so(),z4=M0(),U4=Tu(),H4=co(),W4=/[\\^$.*+?()[\]{}|]/g,G4=/^\[object .+?Constructor\]$/,K4=Function.prototype,J4=Object.prototype,Z4=K4.toString,Q4=J4.hasOwnProperty,X4=RegExp("^"+Z4.call(Q4).replace(W4,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function Y4(e){if(!U4(e)||z4(e))return!1;var u=L4(e)?X4:G4;return u.test(H4(e))}N0.exports=Y4});var R0=F((RV,V0)=>{function e5(e,u){return e==null?void 0:e[u]}V0.exports=e5});var au=F((LV,L0)=>{var t5=q0(),u5=R0();function i5(e,u){var t=u5(e,u);return t5(t)?t:void 0}L0.exports=i5});var _f=F((zV,z0)=>{var n5=au(),f5=$t(),r5=n5(f5,"Map");z0.exports=r5});var rn=F((UV,U0)=>{var o5=au(),a5=o5(Object,"create");U0.exports=a5});var G0=F((HV,W0)=>{var H0=rn();function D5(){this.__data__=H0?H0(null):{},this.size=0}W0.exports=D5});var J0=F((WV,K0)=>{function s5(e){var u=this.has(e)&&delete this.__data__[e];return this.size-=u?1:0,u}K0.exports=s5});var Q0=F((GV,Z0)=>{var l5=rn(),d5="__lodash_hash_undefined__",c5=Object.prototype,p5=c5.hasOwnProperty;function m5(e){var u=this.__data__;if(l5){var t=u[e];return t===d5?void 0:t}return p5.call(u,e)?u[e]:void 0}Z0.exports=m5});var Y0=F((KV,X0)=>{var F5=rn(),C5=Object.prototype,g5=C5.hasOwnProperty;function h5(e){var u=this.__data__;return F5?u[e]!==void 0:g5.call(u,e)}X0.exports=h5});var t1=F((JV,e1)=>{var E5=rn(),b5="__lodash_hash_undefined__";function _5(e,u){var t=this.__data__;return this.size+=this.has(e)?0:1,t[e]=E5&&u===void 0?b5:u,this}e1.exports=_5});var i1=F((ZV,u1)=>{var y5=G0(),v5=J0(),B5=Q0(),x5=Y0(),w5=t1();function ai(e){var u=-1,t=e==null?0:e.length;for(this.clear();++u<t;){var i=e[u];this.set(i[0],i[1])}}ai.prototype.clear=y5;ai.prototype.delete=v5;ai.prototype.get=B5;ai.prototype.has=x5;ai.prototype.set=w5;u1.exports=ai});var r1=F((QV,f1)=>{var n1=i1(),A5=nn(),I5=_f();function S5(){this.size=0,this.__data__={hash:new n1,map:new(I5||A5),string:new n1}}f1.exports=S5});var a1=F((XV,o1)=>{function $5(e){var u=typeof e;return u=="string"||u=="number"||u=="symbol"||u=="boolean"?e!=="__proto__":e===null}o1.exports=$5});var on=F((YV,D1)=>{var k5=a1();function T5(e,u){var t=e.__data__;return k5(u)?t[typeof u=="string"?"string":"hash"]:t.map}D1.exports=T5});var l1=F((eR,s1)=>{var P5=on();function O5(e){var u=P5(this,e).delete(e);return this.size-=u?1:0,u}s1.exports=O5});var c1=F((tR,d1)=>{var M5=on();function j5(e){return M5(this,e).get(e)}d1.exports=j5});var m1=F((uR,p1)=>{var N5=on();function q5(e){return N5(this,e).has(e)}p1.exports=q5});var C1=F((iR,F1)=>{var V5=on();function R5(e,u){var t=V5(this,e),i=t.size;return t.set(e,u),this.size+=t.size==i?0:1,this}F1.exports=R5});var yf=F((nR,g1)=>{var L5=r1(),z5=l1(),U5=c1(),H5=m1(),W5=C1();function Di(e){var u=-1,t=e==null?0:e.length;for(this.clear();++u<t;){var i=e[u];this.set(i[0],i[1])}}Di.prototype.clear=L5;Di.prototype.delete=z5;Di.prototype.get=U5;Di.prototype.has=H5;Di.prototype.set=W5;g1.exports=Di});var E1=F((fR,h1)=>{var G5=nn(),K5=_f(),J5=yf(),Z5=200;function Q5(e,u){var t=this.__data__;if(t instanceof G5){var i=t.__data__;if(!K5||i.length<Z5-1)return i.push([e,u]),this.size=++t.size,this;t=this.__data__=new J5(i)}return t.set(e,u),this.size=t.size,this}h1.exports=Q5});var vf=F((rR,b1)=>{var X5=nn(),Y5=l0(),eg=c0(),tg=m0(),ug=C0(),ig=E1();function si(e){var u=this.__data__=new X5(e);this.size=u.size}si.prototype.clear=Y5;si.prototype.delete=eg;si.prototype.get=tg;si.prototype.has=ug;si.prototype.set=ig;b1.exports=si});var y1=F((oR,_1)=>{function ng(e,u){for(var t=-1,i=e==null?0:e.length;++t<i&&u(e[t],t,e)!==!1;);return e}_1.exports=ng});var B1=F((aR,v1)=>{var fg=au(),rg=function(){try{var e=fg(Object,"defineProperty");return e({},"",{}),e}catch{}}();v1.exports=rg});var po=F((DR,w1)=>{var x1=B1();function og(e,u,t){u=="__proto__"&&x1?x1(e,u,{configurable:!0,enumerable:!0,value:t,writable:!0}):e[u]=t}w1.exports=og});var mo=F((sR,A1)=>{var ag=po(),Dg=bf(),sg=Object.prototype,lg=sg.hasOwnProperty;function dg(e,u,t){var i=e[u];(!(lg.call(e,u)&&Dg(i,t))||t===void 0&&!(u in e))&&ag(e,u,t)}A1.exports=dg});var an=F((lR,I1)=>{var cg=mo(),pg=po();function mg(e,u,t,i){var n=!t;t||(t={});for(var f=-1,r=u.length;++f<r;){var o=u[f],a=i?i(t[o],e[o],o,t,e):void 0;a===void 0&&(a=e[o]),n?pg(t,o,a):cg(t,o,a)}return t}I1.exports=mg});var $1=F((dR,S1)=>{function Fg(e,u){for(var t=-1,i=Array(e);++t<e;)i[t]=u(t);return i}S1.exports=Fg});var Kt=F((cR,k1)=>{function Cg(e){return e!=null&&typeof e=="object"}k1.exports=Cg});var P1=F((pR,T1)=>{var gg=ku(),hg=Kt(),Eg="[object Arguments]";function bg(e){return hg(e)&&gg(e)==Eg}T1.exports=bg});var Fo=F((mR,j1)=>{var O1=P1(),_g=Kt(),M1=Object.prototype,yg=M1.hasOwnProperty,vg=M1.propertyIsEnumerable,Bg=O1(function(){return arguments}())?O1:function(e){return _g(e)&&yg.call(e,"callee")&&!vg.call(e,"callee")};j1.exports=Bg});var pt=F((FR,N1)=>{var xg=Array.isArray;N1.exports=xg});var V1=F((CR,q1)=>{function wg(){return!1}q1.exports=wg});var Bf=F((Dn,li)=>{var Ag=$t(),Ig=V1(),z1=typeof Dn=="object"&&Dn&&!Dn.nodeType&&Dn,R1=z1&&typeof li=="object"&&li&&!li.nodeType&&li,Sg=R1&&R1.exports===z1,L1=Sg?Ag.Buffer:void 0,$g=L1?L1.isBuffer:void 0,kg=$g||Ig;li.exports=kg});var Co=F((gR,U1)=>{var Tg=9007199254740991,Pg=/^(?:0|[1-9]\d*)$/;function Og(e,u){var t=typeof e;return u=u==null?Tg:u,!!u&&(t=="number"||t!="symbol"&&Pg.test(e))&&e>-1&&e%1==0&&e<u}U1.exports=Og});var xf=F((hR,H1)=>{var Mg=9007199254740991;function jg(e){return typeof e=="number"&&e>-1&&e%1==0&&e<=Mg}H1.exports=jg});var G1=F((ER,W1)=>{var Ng=ku(),qg=xf(),Vg=Kt(),Rg="[object Arguments]",Lg="[object Array]",zg="[object Boolean]",Ug="[object Date]",Hg="[object Error]",Wg="[object Function]",Gg="[object Map]",Kg="[object Number]",Jg="[object Object]",Zg="[object RegExp]",Qg="[object Set]",Xg="[object String]",Yg="[object WeakMap]",eh="[object ArrayBuffer]",th="[object DataView]",uh="[object Float32Array]",ih="[object Float64Array]",nh="[object Int8Array]",fh="[object Int16Array]",rh="[object Int32Array]",oh="[object Uint8Array]",ah="[object Uint8ClampedArray]",Dh="[object Uint16Array]",sh="[object Uint32Array]",Ae={};Ae[uh]=Ae[ih]=Ae[nh]=Ae[fh]=Ae[rh]=Ae[oh]=Ae[ah]=Ae[Dh]=Ae[sh]=!0;Ae[Rg]=Ae[Lg]=Ae[eh]=Ae[zg]=Ae[th]=Ae[Ug]=Ae[Hg]=Ae[Wg]=Ae[Gg]=Ae[Kg]=Ae[Jg]=Ae[Zg]=Ae[Qg]=Ae[Xg]=Ae[Yg]=!1;function lh(e){return Vg(e)&&qg(e.length)&&!!Ae[Ng(e)]}W1.exports=lh});var wf=F((bR,K1)=>{function dh(e){return function(u){return e(u)}}K1.exports=dh});var Af=F((sn,di)=>{var ch=Do(),J1=typeof sn=="object"&&sn&&!sn.nodeType&&sn,ln=J1&&typeof di=="object"&&di&&!di.nodeType&&di,ph=ln&&ln.exports===J1,go=ph&&ch.process,mh=function(){try{var e=ln&&ln.require&&ln.require("util").types;return e||go&&go.binding&&go.binding("util")}catch{}}();di.exports=mh});var ho=F((_R,X1)=>{var Fh=G1(),Ch=wf(),Z1=Af(),Q1=Z1&&Z1.isTypedArray,gh=Q1?Ch(Q1):Fh;X1.exports=gh});var Eo=F((yR,Y1)=>{var hh=$1(),Eh=Fo(),bh=pt(),_h=Bf(),yh=Co(),vh=ho(),Bh=Object.prototype,xh=Bh.hasOwnProperty;function wh(e,u){var t=bh(e),i=!t&&Eh(e),n=!t&&!i&&_h(e),f=!t&&!i&&!n&&vh(e),r=t||i||n||f,o=r?hh(e.length,String):[],a=o.length;for(var D in e)(u||xh.call(e,D))&&!(r&&(D=="length"||n&&(D=="offset"||D=="parent")||f&&(D=="buffer"||D=="byteLength"||D=="byteOffset")||yh(D,a)))&&o.push(D);return o}Y1.exports=wh});var If=F((vR,el)=>{var Ah=Object.prototype;function Ih(e){var u=e&&e.constructor,t=typeof u=="function"&&u.prototype||Ah;return e===t}el.exports=Ih});var bo=F((BR,tl)=>{function Sh(e,u){return function(t){return e(u(t))}}tl.exports=Sh});var il=F((xR,ul)=>{var $h=bo(),kh=$h(Object.keys,Object);ul.exports=kh});var fl=F((wR,nl)=>{var Th=If(),Ph=il(),Oh=Object.prototype,Mh=Oh.hasOwnProperty;function jh(e){if(!Th(e))return Ph(e);var u=[];for(var t in Object(e))Mh.call(e,t)&&t!="constructor"&&u.push(t);return u}nl.exports=jh});var dn=F((AR,rl)=>{var Nh=so(),qh=xf();function Vh(e){return e!=null&&qh(e.length)&&!Nh(e)}rl.exports=Vh});var ci=F((IR,ol)=>{var Rh=Eo(),Lh=fl(),zh=dn();function Uh(e){return zh(e)?Rh(e):Lh(e)}ol.exports=Uh});var Dl=F((SR,al)=>{var Hh=an(),Wh=ci();function Gh(e,u){return e&&Hh(u,Wh(u),e)}al.exports=Gh});var ll=F(($R,sl)=>{function Kh(e){var u=[];if(e!=null)for(var t in Object(e))u.push(t);return u}sl.exports=Kh});var cl=F((kR,dl)=>{var Jh=Tu(),Zh=If(),Qh=ll(),Xh=Object.prototype,Yh=Xh.hasOwnProperty;function e6(e){if(!Jh(e))return Qh(e);var u=Zh(e),t=[];for(var i in e)i=="constructor"&&(u||!Yh.call(e,i))||t.push(i);return t}dl.exports=e6});var Sf=F((TR,pl)=>{var t6=Eo(),u6=cl(),i6=dn();function n6(e){return i6(e)?t6(e,!0):u6(e)}pl.exports=n6});var Fl=F((PR,ml)=>{var f6=an(),r6=Sf();function o6(e,u){return e&&f6(u,r6(u),e)}ml.exports=o6});var bl=F((cn,pi)=>{var a6=$t(),El=typeof cn=="object"&&cn&&!cn.nodeType&&cn,Cl=El&&typeof pi=="object"&&pi&&!pi.nodeType&&pi,D6=Cl&&Cl.exports===El,gl=D6?a6.Buffer:void 0,hl=gl?gl.allocUnsafe:void 0;function s6(e,u){if(u)return e.slice();var t=e.length,i=hl?hl(t):new e.constructor(t);return e.copy(i),i}pi.exports=s6});var yl=F((OR,_l)=>{function l6(e,u){var t=-1,i=e.length;for(u||(u=Array(i));++t<i;)u[t]=e[t];return u}_l.exports=l6});var _o=F((MR,vl)=>{function d6(e,u){for(var t=-1,i=e==null?0:e.length,n=0,f=[];++t<i;){var r=e[t];u(r,t,e)&&(f[n++]=r)}return f}vl.exports=d6});var yo=F((jR,Bl)=>{function c6(){return[]}Bl.exports=c6});var $f=F((NR,wl)=>{var p6=_o(),m6=yo(),F6=Object.prototype,C6=F6.propertyIsEnumerable,xl=Object.getOwnPropertySymbols,g6=xl?function(e){return e==null?[]:(e=Object(e),p6(xl(e),function(u){return C6.call(e,u)}))}:m6;wl.exports=g6});var Il=F((qR,Al)=>{var h6=an(),E6=$f();function b6(e,u){return h6(e,E6(e),u)}Al.exports=b6});var vo=F((VR,Sl)=>{function _6(e,u){for(var t=-1,i=u.length,n=e.length;++t<i;)e[n+t]=u[t];return e}Sl.exports=_6});var kf=F((RR,$l)=>{var y6=bo(),v6=y6(Object.getPrototypeOf,Object);$l.exports=v6});var Bo=F((LR,kl)=>{var B6=vo(),x6=kf(),w6=$f(),A6=yo(),I6=Object.getOwnPropertySymbols,S6=I6?function(e){for(var u=[];e;)B6(u,w6(e)),e=x6(e);return u}:A6;kl.exports=S6});var Pl=F((zR,Tl)=>{var $6=an(),k6=Bo();function T6(e,u){return $6(e,k6(e),u)}Tl.exports=T6});var xo=F((UR,Ol)=>{var P6=vo(),O6=pt();function M6(e,u,t){var i=u(e);return O6(e)?i:P6(i,t(e))}Ol.exports=M6});var wo=F((HR,Ml)=>{var j6=xo(),N6=$f(),q6=ci();function V6(e){return j6(e,q6,N6)}Ml.exports=V6});var Nl=F((WR,jl)=>{var R6=xo(),L6=Bo(),z6=Sf();function U6(e){return R6(e,z6,L6)}jl.exports=U6});var Vl=F((GR,ql)=>{var H6=au(),W6=$t(),G6=H6(W6,"DataView");ql.exports=G6});var Ll=F((KR,Rl)=>{var K6=au(),J6=$t(),Z6=K6(J6,"Promise");Rl.exports=Z6});var Ul=F((JR,zl)=>{var Q6=au(),X6=$t(),Y6=Q6(X6,"Set");zl.exports=Y6});var Wl=F((ZR,Hl)=>{var eE=au(),tE=$t(),uE=eE(tE,"WeakMap");Hl.exports=uE});var pn=F((QR,Yl)=>{var Ao=Vl(),Io=_f(),So=Ll(),$o=Ul(),ko=Wl(),Xl=ku(),mi=co(),Gl="[object Map]",iE="[object Object]",Kl="[object Promise]",Jl="[object Set]",Zl="[object WeakMap]",Ql="[object DataView]",nE=mi(Ao),fE=mi(Io),rE=mi(So),oE=mi($o),aE=mi(ko),Pu=Xl;(Ao&&Pu(new Ao(new ArrayBuffer(1)))!=Ql||Io&&Pu(new Io)!=Gl||So&&Pu(So.resolve())!=Kl||$o&&Pu(new $o)!=Jl||ko&&Pu(new ko)!=Zl)&&(Pu=function(e){var u=Xl(e),t=u==iE?e.constructor:void 0,i=t?mi(t):"";if(i)switch(i){case nE:return Ql;case fE:return Gl;case rE:return Kl;case oE:return Jl;case aE:return Zl}return u});Yl.exports=Pu});var td=F((XR,ed)=>{var DE=Object.prototype,sE=DE.hasOwnProperty;function lE(e){var u=e.length,t=new e.constructor(u);return u&&typeof e[0]=="string"&&sE.call(e,"index")&&(t.index=e.index,t.input=e.input),t}ed.exports=lE});var To=F((YR,ud)=>{var dE=$t(),cE=dE.Uint8Array;ud.exports=cE});var Tf=F((eL,nd)=>{var id=To();function pE(e){var u=new e.constructor(e.byteLength);return new id(u).set(new id(e)),u}nd.exports=pE});var rd=F((tL,fd)=>{var mE=Tf();function FE(e,u){var t=u?mE(e.buffer):e.buffer;return new e.constructor(t,e.byteOffset,e.byteLength)}fd.exports=FE});var ad=F((uL,od)=>{var CE=/\w*$/;function gE(e){var u=new e.constructor(e.source,CE.exec(e));return u.lastIndex=e.lastIndex,u}od.exports=gE});var cd=F((iL,dd)=>{var Dd=oi(),sd=Dd?Dd.prototype:void 0,ld=sd?sd.valueOf:void 0;function hE(e){return ld?Object(ld.call(e)):{}}dd.exports=hE});var md=F((nL,pd)=>{var EE=Tf();function bE(e,u){var t=u?EE(e.buffer):e.buffer;return new e.constructor(t,e.byteOffset,e.length)}pd.exports=bE});var Cd=F((fL,Fd)=>{var _E=Tf(),yE=rd(),vE=ad(),BE=cd(),xE=md(),wE="[object Boolean]",AE="[object Date]",IE="[object Map]",SE="[object Number]",$E="[object RegExp]",kE="[object Set]",TE="[object String]",PE="[object Symbol]",OE="[object ArrayBuffer]",ME="[object DataView]",jE="[object Float32Array]",NE="[object Float64Array]",qE="[object Int8Array]",VE="[object Int16Array]",RE="[object Int32Array]",LE="[object Uint8Array]",zE="[object Uint8ClampedArray]",UE="[object Uint16Array]",HE="[object Uint32Array]";function WE(e,u,t){var i=e.constructor;switch(u){case OE:return _E(e);case wE:case AE:return new i(+e);case ME:return yE(e,t);case jE:case NE:case qE:case VE:case RE:case LE:case zE:case UE:case HE:return xE(e,t);case IE:return new i;case SE:case TE:return new i(e);case $E:return vE(e);case kE:return new i;case PE:return BE(e)}}Fd.exports=WE});var Ed=F((rL,hd)=>{var GE=Tu(),gd=Object.create,KE=function(){function e(){}return function(u){if(!GE(u))return{};if(gd)return gd(u);e.prototype=u;var t=new e;return e.prototype=void 0,t}}();hd.exports=KE});var _d=F((oL,bd)=>{var JE=Ed(),ZE=kf(),QE=If();function XE(e){return typeof e.constructor=="function"&&!QE(e)?JE(ZE(e)):{}}bd.exports=XE});var vd=F((aL,yd)=>{var YE=pn(),eb=Kt(),tb="[object Map]";function ub(e){return eb(e)&&YE(e)==tb}yd.exports=ub});var Ad=F((DL,wd)=>{var ib=vd(),nb=wf(),Bd=Af(),xd=Bd&&Bd.isMap,fb=xd?nb(xd):ib;wd.exports=fb});var Sd=F((sL,Id)=>{var rb=pn(),ob=Kt(),ab="[object Set]";function Db(e){return ob(e)&&rb(e)==ab}Id.exports=Db});var Pd=F((lL,Td)=>{var sb=Sd(),lb=wf(),$d=Af(),kd=$d&&$d.isSet,db=kd?lb(kd):sb;Td.exports=db});var qd=F((dL,Nd)=>{var cb=vf(),pb=y1(),mb=mo(),Fb=Dl(),Cb=Fl(),gb=bl(),hb=yl(),Eb=Il(),bb=Pl(),_b=wo(),yb=Nl(),vb=pn(),Bb=td(),xb=Cd(),wb=_d(),Ab=pt(),Ib=Bf(),Sb=Ad(),$b=Tu(),kb=Pd(),Tb=ci(),Pb=Sf(),Ob=1,Mb=2,jb=4,Od="[object Arguments]",Nb="[object Array]",qb="[object Boolean]",Vb="[object Date]",Rb="[object Error]",Md="[object Function]",Lb="[object GeneratorFunction]",zb="[object Map]",Ub="[object Number]",jd="[object Object]",Hb="[object RegExp]",Wb="[object Set]",Gb="[object String]",Kb="[object Symbol]",Jb="[object WeakMap]",Zb="[object ArrayBuffer]",Qb="[object DataView]",Xb="[object Float32Array]",Yb="[object Float64Array]",e_="[object Int8Array]",t_="[object Int16Array]",u_="[object Int32Array]",i_="[object Uint8Array]",n_="[object Uint8ClampedArray]",f_="[object Uint16Array]",r_="[object Uint32Array]",ye={};ye[Od]=ye[Nb]=ye[Zb]=ye[Qb]=ye[qb]=ye[Vb]=ye[Xb]=ye[Yb]=ye[e_]=ye[t_]=ye[u_]=ye[zb]=ye[Ub]=ye[jd]=ye[Hb]=ye[Wb]=ye[Gb]=ye[Kb]=ye[i_]=ye[n_]=ye[f_]=ye[r_]=!0;ye[Rb]=ye[Md]=ye[Jb]=!1;function Pf(e,u,t,i,n,f){var r,o=u&Ob,a=u&Mb,D=u&jb;if(t&&(r=n?t(e,i,n,f):t(e)),r!==void 0)return r;if(!$b(e))return e;var l=Ab(e);if(l){if(r=Bb(e),!o)return hb(e,r)}else{var p=vb(e),m=p==Md||p==Lb;if(Ib(e))return gb(e,o);if(p==jd||p==Od||m&&!n){if(r=a||m?{}:wb(e),!o)return a?bb(e,Cb(r,e)):Eb(e,Fb(r,e))}else{if(!ye[p])return n?e:{};r=xb(e,p,o)}}f||(f=new cb);var b=f.get(e);if(b)return b;f.set(e,r),kb(e)?e.forEach(function(v){r.add(Pf(v,u,t,v,e,f))}):Sb(e)&&e.forEach(function(v,I){r.set(I,Pf(v,u,t,I,e,f))});var E=D?a?yb:_b:a?Pb:Tb,y=l?void 0:E(e);return pb(y||e,function(v,I){y&&(I=v,v=e[I]),mb(r,I,Pf(v,u,t,I,e,f))}),r}Nd.exports=Pf});var Rd=F((cL,Vd)=>{var o_=qd(),a_=1,D_=4;function s_(e){return o_(e,a_|D_)}Vd.exports=s_});var zd=F((pL,Ld)=>{var l_="__lodash_hash_undefined__";function d_(e){return this.__data__.set(e,l_),this}Ld.exports=d_});var Hd=F((mL,Ud)=>{function c_(e){return this.__data__.has(e)}Ud.exports=c_});var Gd=F((FL,Wd)=>{var p_=yf(),m_=zd(),F_=Hd();function Of(e){var u=-1,t=e==null?0:e.length;for(this.__data__=new p_;++u<t;)this.add(e[u])}Of.prototype.add=Of.prototype.push=m_;Of.prototype.has=F_;Wd.exports=Of});var Jd=F((CL,Kd)=>{function C_(e,u){for(var t=-1,i=e==null?0:e.length;++t<i;)if(u(e[t],t,e))return!0;return!1}Kd.exports=C_});var Qd=F((gL,Zd)=>{function g_(e,u){return e.has(u)}Zd.exports=g_});var Po=F((hL,Xd)=>{var h_=Gd(),E_=Jd(),b_=Qd(),__=1,y_=2;function v_(e,u,t,i,n,f){var r=t&__,o=e.length,a=u.length;if(o!=a&&!(r&&a>o))return!1;var D=f.get(e),l=f.get(u);if(D&&l)return D==u&&l==e;var p=-1,m=!0,b=t&y_?new h_:void 0;for(f.set(e,u),f.set(u,e);++p<o;){var E=e[p],y=u[p];if(i)var v=r?i(y,E,p,u,e,f):i(E,y,p,e,u,f);if(v!==void 0){if(v)continue;m=!1;break}if(b){if(!E_(u,function(I,O){if(!b_(b,O)&&(E===I||n(E,I,t,i,f)))return b.push(O)})){m=!1;break}}else if(!(E===y||n(E,y,t,i,f))){m=!1;break}}return f.delete(e),f.delete(u),m}Xd.exports=v_});var e3=F((EL,Yd)=>{function B_(e){var u=-1,t=Array(e.size);return e.forEach(function(i,n){t[++u]=[n,i]}),t}Yd.exports=B_});var u3=F((bL,t3)=>{function x_(e){var u=-1,t=Array(e.size);return e.forEach(function(i){t[++u]=i}),t}t3.exports=x_});var o3=F((_L,r3)=>{var i3=oi(),n3=To(),w_=bf(),A_=Po(),I_=e3(),S_=u3(),$_=1,k_=2,T_="[object Boolean]",P_="[object Date]",O_="[object Error]",M_="[object Map]",j_="[object Number]",N_="[object RegExp]",q_="[object Set]",V_="[object String]",R_="[object Symbol]",L_="[object ArrayBuffer]",z_="[object DataView]",f3=i3?i3.prototype:void 0,Oo=f3?f3.valueOf:void 0;function U_(e,u,t,i,n,f,r){switch(t){case z_:if(e.byteLength!=u.byteLength||e.byteOffset!=u.byteOffset)return!1;e=e.buffer,u=u.buffer;case L_:return!(e.byteLength!=u.byteLength||!f(new n3(e),new n3(u)));case T_:case P_:case j_:return w_(+e,+u);case O_:return e.name==u.name&&e.message==u.message;case N_:case V_:return e==u+"";case M_:var o=I_;case q_:var a=i&$_;if(o||(o=S_),e.size!=u.size&&!a)return!1;var D=r.get(e);if(D)return D==u;i|=k_,r.set(e,u);var l=A_(o(e),o(u),i,n,f,r);return r.delete(e),l;case R_:if(Oo)return Oo.call(e)==Oo.call(u)}return!1}r3.exports=U_});var s3=F((yL,D3)=>{var a3=wo(),H_=1,W_=Object.prototype,G_=W_.hasOwnProperty;function K_(e,u,t,i,n,f){var r=t&H_,o=a3(e),a=o.length,D=a3(u),l=D.length;if(a!=l&&!r)return!1;for(var p=a;p--;){var m=o[p];if(!(r?m in u:G_.call(u,m)))return!1}var b=f.get(e),E=f.get(u);if(b&&E)return b==u&&E==e;var y=!0;f.set(e,u),f.set(u,e);for(var v=r;++p<a;){m=o[p];var I=e[m],O=u[m];if(i)var L=r?i(O,I,m,u,e,f):i(I,O,m,e,u,f);if(!(L===void 0?I===O||n(I,O,t,i,f):L)){y=!1;break}v||(v=m=="constructor")}if(y&&!v){var U=e.constructor,M=u.constructor;U!=M&&"constructor"in e&&"constructor"in u&&!(typeof U=="function"&&U instanceof U&&typeof M=="function"&&M instanceof M)&&(y=!1)}return f.delete(e),f.delete(u),y}D3.exports=K_});var g3=F((vL,C3)=>{var Mo=vf(),J_=Po(),Z_=o3(),Q_=s3(),l3=pn(),d3=pt(),c3=Bf(),X_=ho(),Y_=1,p3="[object Arguments]",m3="[object Array]",Mf="[object Object]",e9=Object.prototype,F3=e9.hasOwnProperty;function t9(e,u,t,i,n,f){var r=d3(e),o=d3(u),a=r?m3:l3(e),D=o?m3:l3(u);a=a==p3?Mf:a,D=D==p3?Mf:D;var l=a==Mf,p=D==Mf,m=a==D;if(m&&c3(e)){if(!c3(u))return!1;r=!0,l=!1}if(m&&!l)return f||(f=new Mo),r||X_(e)?J_(e,u,t,i,n,f):Z_(e,u,a,t,i,n,f);if(!(t&Y_)){var b=l&&F3.call(e,"__wrapped__"),E=p&&F3.call(u,"__wrapped__");if(b||E){var y=b?e.value():e,v=E?u.value():u;return f||(f=new Mo),n(y,v,t,i,f)}}return m?(f||(f=new Mo),Q_(e,u,t,i,n,f)):!1}C3.exports=t9});var jf=F((BL,b3)=>{var u9=g3(),h3=Kt();function E3(e,u,t,i,n){return e===u?!0:e==null||u==null||!h3(e)&&!h3(u)?e!==e&&u!==u:u9(e,u,t,i,E3,n)}b3.exports=E3});var y3=F((xL,_3)=>{var i9=jf();function n9(e,u){return i9(e,u)}_3.exports=n9});var Cn=F(le=>{"use strict";Object.defineProperty(le,"__esModule",{value:!0});le.regexpCode=le.getEsmExportName=le.getProperty=le.safeStringify=le.stringify=le.strConcat=le.addCodeArg=le.str=le._=le.nil=le._Code=le.Name=le.IDENTIFIER=le._CodeOrName=void 0;var mn=class{};le._CodeOrName=mn;le.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;var Ou=class extends mn{constructor(u){if(super(),!le.IDENTIFIER.test(u))throw new Error("CodeGen: name must be a valid identifier");this.str=u}toString(){return this.str}emptyStr(){return!1}get names(){return{[this.str]:1}}};le.Name=Ou;var gt=class extends mn{constructor(u){super(),this._items=typeof u=="string"?[u]:u}toString(){return this.str}emptyStr(){if(this._items.length>1)return!1;let u=this._items[0];return u===""||u==='""'}get str(){var u;return(u=this._str)!==null&&u!==void 0?u:this._str=this._items.reduce((t,i)=>`${t}${i}`,"")}get names(){var u;return(u=this._names)!==null&&u!==void 0?u:this._names=this._items.reduce((t,i)=>(i instanceof Ou&&(t[i.str]=(t[i.str]||0)+1),t),{})}};le._Code=gt;le.nil=new gt("");function v3(e,...u){let t=[e[0]],i=0;for(;i<u.length;)No(t,u[i]),t.push(e[++i]);return new gt(t)}le._=v3;var jo=new gt("+");function B3(e,...u){let t=[Fn(e[0])],i=0;for(;i<u.length;)t.push(jo),No(t,u[i]),t.push(jo,Fn(e[++i]));return f9(t),new gt(t)}le.str=B3;function No(e,u){u instanceof gt?e.push(...u._items):u instanceof Ou?e.push(u):e.push(a9(u))}le.addCodeArg=No;function f9(e){let u=1;for(;u<e.length-1;){if(e[u]===jo){let t=r9(e[u-1],e[u+1]);if(t!==void 0){e.splice(u-1,3,t);continue}e[u++]="+"}u++}}function r9(e,u){if(u==='""')return e;if(e==='""')return u;if(typeof e=="string")return u instanceof Ou||e[e.length-1]!=='"'?void 0:typeof u!="string"?`${e.slice(0,-1)}${u}"`:u[0]==='"'?e.slice(0,-1)+u.slice(1):void 0;if(typeof u=="string"&&u[0]==='"'&&!(e instanceof Ou))return`"${e}${u.slice(1)}`}function o9(e,u){return u.emptyStr()?e:e.emptyStr()?u:B3`${e}${u}`}le.strConcat=o9;function a9(e){return typeof e=="number"||typeof e=="boolean"||e===null?e:Fn(Array.isArray(e)?e.join(","):e)}function D9(e){return new gt(Fn(e))}le.stringify=D9;function Fn(e){return JSON.stringify(e).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")}le.safeStringify=Fn;function s9(e){return typeof e=="string"&&le.IDENTIFIER.test(e)?new gt(`.${e}`):v3`[${e}]`}le.getProperty=s9;function l9(e){if(typeof e=="string"&&le.IDENTIFIER.test(e))return new gt(`${e}`);throw new Error(`CodeGen: invalid export name: ${e}, use explicit $id name mapping`)}le.getEsmExportName=l9;function d9(e){return new gt(e.toString())}le.regexpCode=d9});var Ro=F(at=>{"use strict";Object.defineProperty(at,"__esModule",{value:!0});at.ValueScope=at.ValueScopeName=at.Scope=at.varKinds=at.UsedValueState=void 0;var ot=Cn(),qo=class extends Error{constructor(u){super(`CodeGen: "code" for ${u} not defined`),this.value=u.value}},Nf=function(e){return e[e.Started=0]="Started",e[e.Completed=1]="Completed",e}(Nf||(at.UsedValueState=Nf={}));at.varKinds={const:new ot.Name("const"),let:new ot.Name("let"),var:new ot.Name("var")};var qf=class{constructor({prefixes:u,parent:t}={}){this._names={},this._prefixes=u,this._parent=t}toName(u){return u instanceof ot.Name?u:this.name(u)}name(u){return new ot.Name(this._newName(u))}_newName(u){let t=this._names[u]||this._nameGroup(u);return`${u}${t.index++}`}_nameGroup(u){var t,i;if(!((i=(t=this._parent)===null||t===void 0?void 0:t._prefixes)===null||i===void 0)&&i.has(u)||this._prefixes&&!this._prefixes.has(u))throw new Error(`CodeGen: prefix "${u}" is not allowed in this scope`);return this._names[u]={prefix:u,index:0}}};at.Scope=qf;var Vf=class extends ot.Name{constructor(u,t){super(t),this.prefix=u}setValue(u,{property:t,itemIndex:i}){this.value=u,this.scopePath=(0,ot._)`.${new ot.Name(t)}[${i}]`}};at.ValueScopeName=Vf;var c9=(0,ot._)`\n`,Vo=class extends qf{constructor(u){super(u),this._values={},this._scope=u.scope,this.opts=Ee(Z({},u),{_n:u.lines?c9:ot.nil})}get(){return this._scope}name(u){return new Vf(u,this._newName(u))}value(u,t){var i;if(t.ref===void 0)throw new Error("CodeGen: ref must be passed in value");let n=this.toName(u),{prefix:f}=n,r=(i=t.key)!==null&&i!==void 0?i:t.ref,o=this._values[f];if(o){let l=o.get(r);if(l)return l}else o=this._values[f]=new Map;o.set(r,n);let a=this._scope[f]||(this._scope[f]=[]),D=a.length;return a[D]=t.ref,n.setValue(t,{property:f,itemIndex:D}),n}getValue(u,t){let i=this._values[u];if(i)return i.get(t)}scopeRefs(u,t=this._values){return this._reduceValues(t,i=>{if(i.scopePath===void 0)throw new Error(`CodeGen: name "${i}" has no value`);return(0,ot._)`${u}${i.scopePath}`})}scopeCode(u=this._values,t,i){return this._reduceValues(u,n=>{if(n.value===void 0)throw new Error(`CodeGen: name "${n}" has no value`);return n.value.code},t,i)}_reduceValues(u,t,i={},n){let f=ot.nil;for(let r in u){let o=u[r];if(!o)continue;let a=i[r]=i[r]||new Map;o.forEach(D=>{if(a.has(D))return;a.set(D,Nf.Started);let l=t(D);if(l){let p=this.opts.es5?at.varKinds.var:at.varKinds.const;f=(0,ot._)`${f}${p} ${D} = ${l};${this.opts._n}`}else if(l=n==null?void 0:n(D))f=(0,ot._)`${f}${l}${this.opts._n}`;else throw new qo(D);a.set(D,Nf.Completed)})}return f}};at.ValueScope=Vo});var ee=F(ue=>{"use strict";Object.defineProperty(ue,"__esModule",{value:!0});ue.or=ue.and=ue.not=ue.CodeGen=ue.operators=ue.varKinds=ue.ValueScopeName=ue.ValueScope=ue.Scope=ue.Name=ue.regexpCode=ue.stringify=ue.getProperty=ue.nil=ue.strConcat=ue.str=ue._=void 0;var ae=Cn(),kt=Ro(),Du=Cn();Object.defineProperty(ue,"_",{enumerable:!0,get:function(){return Du._}});Object.defineProperty(ue,"str",{enumerable:!0,get:function(){return Du.str}});Object.defineProperty(ue,"strConcat",{enumerable:!0,get:function(){return Du.strConcat}});Object.defineProperty(ue,"nil",{enumerable:!0,get:function(){return Du.nil}});Object.defineProperty(ue,"getProperty",{enumerable:!0,get:function(){return Du.getProperty}});Object.defineProperty(ue,"stringify",{enumerable:!0,get:function(){return Du.stringify}});Object.defineProperty(ue,"regexpCode",{enumerable:!0,get:function(){return Du.regexpCode}});Object.defineProperty(ue,"Name",{enumerable:!0,get:function(){return Du.Name}});var Hf=Ro();Object.defineProperty(ue,"Scope",{enumerable:!0,get:function(){return Hf.Scope}});Object.defineProperty(ue,"ValueScope",{enumerable:!0,get:function(){return Hf.ValueScope}});Object.defineProperty(ue,"ValueScopeName",{enumerable:!0,get:function(){return Hf.ValueScopeName}});Object.defineProperty(ue,"varKinds",{enumerable:!0,get:function(){return Hf.varKinds}});ue.operators={GT:new ae._Code(">"),GTE:new ae._Code(">="),LT:new ae._Code("<"),LTE:new ae._Code("<="),EQ:new ae._Code("==="),NEQ:new ae._Code("!=="),NOT:new ae._Code("!"),OR:new ae._Code("||"),AND:new ae._Code("&&"),ADD:new ae._Code("+")};var Jt=class{optimizeNodes(){return this}optimizeNames(u,t){return this}},Lo=class extends Jt{constructor(u,t,i){super(),this.varKind=u,this.name=t,this.rhs=i}render({es5:u,_n:t}){let i=u?kt.varKinds.var:this.varKind,n=this.rhs===void 0?"":` = ${this.rhs}`;return`${i} ${this.name}${n};`+t}optimizeNames(u,t){if(u[this.name.str])return this.rhs&&(this.rhs=Fi(this.rhs,u,t)),this}get names(){return this.rhs instanceof ae._CodeOrName?this.rhs.names:{}}},Lf=class extends Jt{constructor(u,t,i){super(),this.lhs=u,this.rhs=t,this.sideEffects=i}render({_n:u}){return`${this.lhs} = ${this.rhs};`+u}optimizeNames(u,t){if(!(this.lhs instanceof ae.Name&&!u[this.lhs.str]&&!this.sideEffects))return this.rhs=Fi(this.rhs,u,t),this}get names(){let u=this.lhs instanceof ae.Name?{}:Z({},this.lhs.names);return Uf(u,this.rhs)}},zo=class extends Lf{constructor(u,t,i,n){super(u,i,n),this.op=t}render({_n:u}){return`${this.lhs} ${this.op}= ${this.rhs};`+u}},Uo=class extends Jt{constructor(u){super(),this.label=u,this.names={}}render({_n:u}){return`${this.label}:`+u}},Ho=class extends Jt{constructor(u){super(),this.label=u,this.names={}}render({_n:u}){return`break${this.label?` ${this.label}`:""};`+u}},Wo=class extends Jt{constructor(u){super(),this.error=u}render({_n:u}){return`throw ${this.error};`+u}get names(){return this.error.names}},Go=class extends Jt{constructor(u){super(),this.code=u}render({_n:u}){return`${this.code};`+u}optimizeNodes(){return`${this.code}`?this:void 0}optimizeNames(u,t){return this.code=Fi(this.code,u,t),this}get names(){return this.code instanceof ae._CodeOrName?this.code.names:{}}},gn=class extends Jt{constructor(u=[]){super(),this.nodes=u}render(u){return this.nodes.reduce((t,i)=>t+i.render(u),"")}optimizeNodes(){let{nodes:u}=this,t=u.length;for(;t--;){let i=u[t].optimizeNodes();Array.isArray(i)?u.splice(t,1,...i):i?u[t]=i:u.splice(t,1)}return u.length>0?this:void 0}optimizeNames(u,t){let{nodes:i}=this,n=i.length;for(;n--;){let f=i[n];f.optimizeNames(u,t)||(p9(u,f.names),i.splice(n,1))}return i.length>0?this:void 0}get names(){return this.nodes.reduce((u,t)=>Mu(u,t.names),{})}},Zt=class extends gn{render(u){return"{"+u._n+super.render(u)+"}"+u._n}},Ko=class extends gn{},Jo=(()=>{class e extends Zt{}return e.kind="else",e})(),Rf=(()=>{class e extends Zt{constructor(t,i){super(i),this.condition=t}render(t){let i=`if(${this.condition})`+super.render(t);return this.else&&(i+="else "+this.else.render(t)),i}optimizeNodes(){super.optimizeNodes();let t=this.condition;if(t===!0)return this.nodes;let i=this.else;if(i){let n=i.optimizeNodes();i=this.else=Array.isArray(n)?new Jo(n):n}if(i)return t===!1?i instanceof e?i:i.nodes:this.nodes.length?this:new e(S3(t),i instanceof e?[i]:i.nodes);if(!(t===!1||!this.nodes.length))return this}optimizeNames(t,i){var n;if(this.else=(n=this.else)===null||n===void 0?void 0:n.optimizeNames(t,i),!!(super.optimizeNames(t,i)||this.else))return this.condition=Fi(this.condition,t,i),this}get names(){let t=super.names;return Uf(t,this.condition),this.else&&Mu(t,this.else.names),t}}return e.kind="if",e})(),Wf=(()=>{class e extends Zt{}return e.kind="for",e})(),Zo=class extends Wf{constructor(u){super(),this.iteration=u}render(u){return`for(${this.iteration})`+super.render(u)}optimizeNames(u,t){if(super.optimizeNames(u,t))return this.iteration=Fi(this.iteration,u,t),this}get names(){return Mu(super.names,this.iteration.names)}},Qo=class extends Wf{constructor(u,t,i,n){super(),this.varKind=u,this.name=t,this.from=i,this.to=n}render(u){let t=u.es5?kt.varKinds.var:this.varKind,{name:i,from:n,to:f}=this;return`for(${t} ${i}=${n}; ${i}<${f}; ${i}++)`+super.render(u)}get names(){let u=Uf(super.names,this.from);return Uf(u,this.to)}},zf=class extends Wf{constructor(u,t,i,n){super(),this.loop=u,this.varKind=t,this.name=i,this.iterable=n}render(u){return`for(${this.varKind} ${this.name} ${this.loop} ${this.iterable})`+super.render(u)}optimizeNames(u,t){if(super.optimizeNames(u,t))return this.iterable=Fi(this.iterable,u,t),this}get names(){return Mu(super.names,this.iterable.names)}},x3=(()=>{class e extends Zt{constructor(t,i,n){super(),this.name=t,this.args=i,this.async=n}render(t){return`${this.async?"async ":""}function ${this.name}(${this.args})`+super.render(t)}}return e.kind="func",e})(),w3=(()=>{class e extends gn{render(t){return"return "+super.render(t)}}return e.kind="return",e})(),Xo=class extends Zt{render(u){let t="try"+super.render(u);return this.catch&&(t+=this.catch.render(u)),this.finally&&(t+=this.finally.render(u)),t}optimizeNodes(){var u,t;return super.optimizeNodes(),(u=this.catch)===null||u===void 0||u.optimizeNodes(),(t=this.finally)===null||t===void 0||t.optimizeNodes(),this}optimizeNames(u,t){var i,n;return super.optimizeNames(u,t),(i=this.catch)===null||i===void 0||i.optimizeNames(u,t),(n=this.finally)===null||n===void 0||n.optimizeNames(u,t),this}get names(){let u=super.names;return this.catch&&Mu(u,this.catch.names),this.finally&&Mu(u,this.finally.names),u}},A3=(()=>{class e extends Zt{constructor(t){super(),this.error=t}render(t){return`catch(${this.error})`+super.render(t)}}return e.kind="catch",e})(),I3=(()=>{class e extends Zt{render(t){return"finally"+super.render(t)}}return e.kind="finally",e})(),Yo=class{constructor(u,t={}){this._values={},this._blockStarts=[],this._constants={},this.opts=Ee(Z({},t),{_n:t.lines?`
|
|
1
|
+
import{a as St,b as qC}from"./chunk-E7ORFP4S.js";import{a as zs}from"./chunk-C2UJXFYZ.js";import{a as ii,b as ni}from"./chunk-BN42B6ZN.js";import{a as Ks}from"./chunk-VOG67KUU.js";import{a as Zs}from"./chunk-BWR6O4JK.js";import{a as Js}from"./chunk-KBQ7X43U.js";import{a as tn}from"./chunk-TAQCEDBC.js";import{a as Hs,b as Ws}from"./chunk-6LUEJV3C.js";import{a as ao}from"./chunk-VGMRIFZA.js";import{a as Gs}from"./chunk-IS2FWNNK.js";import{a as mf,b as Ff,c as Cf,d as gf,e as hf,f as Ef,g as ei,m as Ce,n as Ue,o as ti}from"./chunk-E66CIXOF.js";import{a as Ms,b as Zu,c as Qu,e as rt,f as js,h as Ns,i as qs,k as Vs,l as ru,m as Rs,o as Xu,r as Yu,s as Su,t as $u,x as Ls,y as It,z as oo}from"./chunk-A6ASL2RK.js";import{a as ui}from"./chunk-3X5J254W.js";import{d as qt}from"./chunk-7HPEGK3R.js";import{a as Us}from"./chunk-4VJ4GWBA.js";import{b as ke}from"./chunk-XOH2MB7K.js";import{h as ce,j as ou,k as De}from"./chunk-I4DX7GIX.js";import{e as Os}from"./chunk-T3Y7RYJZ.js";import{a as de,b as ge}from"./chunk-G67F4LRX.js";import{$c as Ct,Ac as _,Bc as B,Ca as xt,Cc as qe,D as _s,Da as Bs,Fa as uf,Gc as Ts,Ha as nf,Jb as W,Kb as g,Lb as wt,M as Yn,Mb as Ku,Nb as J,Ob as As,Pb as x,Rb as He,Sb as We,Tb as Ge,Ub as d,Vb as c,Wb as w,Xb as Is,Yb as Ss,Z as ro,_b as z,a as Z,aa as Yi,ad as Iu,b as Ee,bc as P,bd as it,cb as re,cc as C,e as F,ed as Ps,fa as ys,fb as xs,g as Oe,ga as Bt,gb as s,gc as Df,h as H,ha as ef,hb as pe,hc as sf,ic as lf,id as pf,jc as df,k as gs,kc as cf,la as tf,lb as ff,ma as $,mc as h,n as ct,nc as R,ob as rf,oc as q,pb as of,pc as Wt,q as hs,qc as $s,rc as Be,sb as K,sc as xe,ta as en,tb as af,tc as we,ua as j,ub as Gu,uc as ks,v as Es,va as N,vb as ws,vc as Ne,w as ie,wc as At,x as bs,xa as vs,xc as fu,yc as Gt,zb as S,zc as Ju}from"./chunk-ELVGIIRZ.js";var Xs=F((CV,Qs)=>{function RC(){this.__data__=[],this.size=0}Qs.exports=RC});var bf=F((gV,Ys)=>{function LC(e,u){return e===u||e!==e&&u!==u}Ys.exports=LC});var un=F((hV,e0)=>{var zC=bf();function UC(e,u){for(var t=e.length;t--;)if(zC(e[t][0],u))return t;return-1}e0.exports=UC});var u0=F((EV,t0)=>{var HC=un(),WC=Array.prototype,GC=WC.splice;function KC(e){var u=this.__data__,t=HC(u,e);if(t<0)return!1;var i=u.length-1;return t==i?u.pop():GC.call(u,t,1),--this.size,!0}t0.exports=KC});var n0=F((bV,i0)=>{var JC=un();function ZC(e){var u=this.__data__,t=JC(u,e);return t<0?void 0:u[t][1]}i0.exports=ZC});var r0=F((_V,f0)=>{var QC=un();function XC(e){return QC(this.__data__,e)>-1}f0.exports=XC});var a0=F((yV,o0)=>{var YC=un();function e4(e,u){var t=this.__data__,i=YC(t,e);return i<0?(++this.size,t.push([e,u])):t[i][1]=u,this}o0.exports=e4});var nn=F((vV,D0)=>{var t4=Xs(),u4=u0(),i4=n0(),n4=r0(),f4=a0();function ri(e){var u=-1,t=e==null?0:e.length;for(this.clear();++u<t;){var i=e[u];this.set(i[0],i[1])}}ri.prototype.clear=t4;ri.prototype.delete=u4;ri.prototype.get=i4;ri.prototype.has=n4;ri.prototype.set=f4;D0.exports=ri});var l0=F((BV,s0)=>{var r4=nn();function o4(){this.__data__=new r4,this.size=0}s0.exports=o4});var c0=F((xV,d0)=>{function a4(e){var u=this.__data__,t=u.delete(e);return this.size=u.size,t}d0.exports=a4});var m0=F((wV,p0)=>{function D4(e){return this.__data__.get(e)}p0.exports=D4});var C0=F((AV,F0)=>{function s4(e){return this.__data__.has(e)}F0.exports=s4});var Do=F((IV,g0)=>{var l4=typeof global=="object"&&global&&global.Object===Object&&global;g0.exports=l4});var $t=F((SV,h0)=>{var d4=Do(),c4=typeof self=="object"&&self&&self.Object===Object&&self,p4=d4||c4||Function("return this")();h0.exports=p4});var oi=F(($V,E0)=>{var m4=$t(),F4=m4.Symbol;E0.exports=F4});var v0=F((kV,y0)=>{var b0=oi(),_0=Object.prototype,C4=_0.hasOwnProperty,g4=_0.toString,fn=b0?b0.toStringTag:void 0;function h4(e){var u=C4.call(e,fn),t=e[fn];try{e[fn]=void 0;var i=!0}catch{}var n=g4.call(e);return i&&(u?e[fn]=t:delete e[fn]),n}y0.exports=h4});var x0=F((TV,B0)=>{var E4=Object.prototype,b4=E4.toString;function _4(e){return b4.call(e)}B0.exports=_4});var ku=F((PV,I0)=>{var w0=oi(),y4=v0(),v4=x0(),B4="[object Null]",x4="[object Undefined]",A0=w0?w0.toStringTag:void 0;function w4(e){return e==null?e===void 0?x4:B4:A0&&A0 in Object(e)?y4(e):v4(e)}I0.exports=w4});var Tu=F((OV,S0)=>{function A4(e){var u=typeof e;return e!=null&&(u=="object"||u=="function")}S0.exports=A4});var so=F((MV,$0)=>{var I4=ku(),S4=Tu(),$4="[object AsyncFunction]",k4="[object Function]",T4="[object GeneratorFunction]",P4="[object Proxy]";function O4(e){if(!S4(e))return!1;var u=I4(e);return u==k4||u==T4||u==$4||u==P4}$0.exports=O4});var T0=F((jV,k0)=>{var M4=$t(),j4=M4["__core-js_shared__"];k0.exports=j4});var M0=F((NV,O0)=>{var lo=T0(),P0=function(){var e=/[^.]+$/.exec(lo&&lo.keys&&lo.keys.IE_PROTO||"");return e?"Symbol(src)_1."+e:""}();function N4(e){return!!P0&&P0 in e}O0.exports=N4});var co=F((qV,j0)=>{var q4=Function.prototype,V4=q4.toString;function R4(e){if(e!=null){try{return V4.call(e)}catch{}try{return e+""}catch{}}return""}j0.exports=R4});var q0=F((VV,N0)=>{var L4=so(),z4=M0(),U4=Tu(),H4=co(),W4=/[\\^$.*+?()[\]{}|]/g,G4=/^\[object .+?Constructor\]$/,K4=Function.prototype,J4=Object.prototype,Z4=K4.toString,Q4=J4.hasOwnProperty,X4=RegExp("^"+Z4.call(Q4).replace(W4,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function Y4(e){if(!U4(e)||z4(e))return!1;var u=L4(e)?X4:G4;return u.test(H4(e))}N0.exports=Y4});var R0=F((RV,V0)=>{function e5(e,u){return e==null?void 0:e[u]}V0.exports=e5});var au=F((LV,L0)=>{var t5=q0(),u5=R0();function i5(e,u){var t=u5(e,u);return t5(t)?t:void 0}L0.exports=i5});var _f=F((zV,z0)=>{var n5=au(),f5=$t(),r5=n5(f5,"Map");z0.exports=r5});var rn=F((UV,U0)=>{var o5=au(),a5=o5(Object,"create");U0.exports=a5});var G0=F((HV,W0)=>{var H0=rn();function D5(){this.__data__=H0?H0(null):{},this.size=0}W0.exports=D5});var J0=F((WV,K0)=>{function s5(e){var u=this.has(e)&&delete this.__data__[e];return this.size-=u?1:0,u}K0.exports=s5});var Q0=F((GV,Z0)=>{var l5=rn(),d5="__lodash_hash_undefined__",c5=Object.prototype,p5=c5.hasOwnProperty;function m5(e){var u=this.__data__;if(l5){var t=u[e];return t===d5?void 0:t}return p5.call(u,e)?u[e]:void 0}Z0.exports=m5});var Y0=F((KV,X0)=>{var F5=rn(),C5=Object.prototype,g5=C5.hasOwnProperty;function h5(e){var u=this.__data__;return F5?u[e]!==void 0:g5.call(u,e)}X0.exports=h5});var t1=F((JV,e1)=>{var E5=rn(),b5="__lodash_hash_undefined__";function _5(e,u){var t=this.__data__;return this.size+=this.has(e)?0:1,t[e]=E5&&u===void 0?b5:u,this}e1.exports=_5});var i1=F((ZV,u1)=>{var y5=G0(),v5=J0(),B5=Q0(),x5=Y0(),w5=t1();function ai(e){var u=-1,t=e==null?0:e.length;for(this.clear();++u<t;){var i=e[u];this.set(i[0],i[1])}}ai.prototype.clear=y5;ai.prototype.delete=v5;ai.prototype.get=B5;ai.prototype.has=x5;ai.prototype.set=w5;u1.exports=ai});var r1=F((QV,f1)=>{var n1=i1(),A5=nn(),I5=_f();function S5(){this.size=0,this.__data__={hash:new n1,map:new(I5||A5),string:new n1}}f1.exports=S5});var a1=F((XV,o1)=>{function $5(e){var u=typeof e;return u=="string"||u=="number"||u=="symbol"||u=="boolean"?e!=="__proto__":e===null}o1.exports=$5});var on=F((YV,D1)=>{var k5=a1();function T5(e,u){var t=e.__data__;return k5(u)?t[typeof u=="string"?"string":"hash"]:t.map}D1.exports=T5});var l1=F((eR,s1)=>{var P5=on();function O5(e){var u=P5(this,e).delete(e);return this.size-=u?1:0,u}s1.exports=O5});var c1=F((tR,d1)=>{var M5=on();function j5(e){return M5(this,e).get(e)}d1.exports=j5});var m1=F((uR,p1)=>{var N5=on();function q5(e){return N5(this,e).has(e)}p1.exports=q5});var C1=F((iR,F1)=>{var V5=on();function R5(e,u){var t=V5(this,e),i=t.size;return t.set(e,u),this.size+=t.size==i?0:1,this}F1.exports=R5});var yf=F((nR,g1)=>{var L5=r1(),z5=l1(),U5=c1(),H5=m1(),W5=C1();function Di(e){var u=-1,t=e==null?0:e.length;for(this.clear();++u<t;){var i=e[u];this.set(i[0],i[1])}}Di.prototype.clear=L5;Di.prototype.delete=z5;Di.prototype.get=U5;Di.prototype.has=H5;Di.prototype.set=W5;g1.exports=Di});var E1=F((fR,h1)=>{var G5=nn(),K5=_f(),J5=yf(),Z5=200;function Q5(e,u){var t=this.__data__;if(t instanceof G5){var i=t.__data__;if(!K5||i.length<Z5-1)return i.push([e,u]),this.size=++t.size,this;t=this.__data__=new J5(i)}return t.set(e,u),this.size=t.size,this}h1.exports=Q5});var vf=F((rR,b1)=>{var X5=nn(),Y5=l0(),eg=c0(),tg=m0(),ug=C0(),ig=E1();function si(e){var u=this.__data__=new X5(e);this.size=u.size}si.prototype.clear=Y5;si.prototype.delete=eg;si.prototype.get=tg;si.prototype.has=ug;si.prototype.set=ig;b1.exports=si});var y1=F((oR,_1)=>{function ng(e,u){for(var t=-1,i=e==null?0:e.length;++t<i&&u(e[t],t,e)!==!1;);return e}_1.exports=ng});var B1=F((aR,v1)=>{var fg=au(),rg=function(){try{var e=fg(Object,"defineProperty");return e({},"",{}),e}catch{}}();v1.exports=rg});var po=F((DR,w1)=>{var x1=B1();function og(e,u,t){u=="__proto__"&&x1?x1(e,u,{configurable:!0,enumerable:!0,value:t,writable:!0}):e[u]=t}w1.exports=og});var mo=F((sR,A1)=>{var ag=po(),Dg=bf(),sg=Object.prototype,lg=sg.hasOwnProperty;function dg(e,u,t){var i=e[u];(!(lg.call(e,u)&&Dg(i,t))||t===void 0&&!(u in e))&&ag(e,u,t)}A1.exports=dg});var an=F((lR,I1)=>{var cg=mo(),pg=po();function mg(e,u,t,i){var n=!t;t||(t={});for(var f=-1,r=u.length;++f<r;){var o=u[f],a=i?i(t[o],e[o],o,t,e):void 0;a===void 0&&(a=e[o]),n?pg(t,o,a):cg(t,o,a)}return t}I1.exports=mg});var $1=F((dR,S1)=>{function Fg(e,u){for(var t=-1,i=Array(e);++t<e;)i[t]=u(t);return i}S1.exports=Fg});var Kt=F((cR,k1)=>{function Cg(e){return e!=null&&typeof e=="object"}k1.exports=Cg});var P1=F((pR,T1)=>{var gg=ku(),hg=Kt(),Eg="[object Arguments]";function bg(e){return hg(e)&&gg(e)==Eg}T1.exports=bg});var Fo=F((mR,j1)=>{var O1=P1(),_g=Kt(),M1=Object.prototype,yg=M1.hasOwnProperty,vg=M1.propertyIsEnumerable,Bg=O1(function(){return arguments}())?O1:function(e){return _g(e)&&yg.call(e,"callee")&&!vg.call(e,"callee")};j1.exports=Bg});var pt=F((FR,N1)=>{var xg=Array.isArray;N1.exports=xg});var V1=F((CR,q1)=>{function wg(){return!1}q1.exports=wg});var Bf=F((Dn,li)=>{var Ag=$t(),Ig=V1(),z1=typeof Dn=="object"&&Dn&&!Dn.nodeType&&Dn,R1=z1&&typeof li=="object"&&li&&!li.nodeType&&li,Sg=R1&&R1.exports===z1,L1=Sg?Ag.Buffer:void 0,$g=L1?L1.isBuffer:void 0,kg=$g||Ig;li.exports=kg});var Co=F((gR,U1)=>{var Tg=9007199254740991,Pg=/^(?:0|[1-9]\d*)$/;function Og(e,u){var t=typeof e;return u=u==null?Tg:u,!!u&&(t=="number"||t!="symbol"&&Pg.test(e))&&e>-1&&e%1==0&&e<u}U1.exports=Og});var xf=F((hR,H1)=>{var Mg=9007199254740991;function jg(e){return typeof e=="number"&&e>-1&&e%1==0&&e<=Mg}H1.exports=jg});var G1=F((ER,W1)=>{var Ng=ku(),qg=xf(),Vg=Kt(),Rg="[object Arguments]",Lg="[object Array]",zg="[object Boolean]",Ug="[object Date]",Hg="[object Error]",Wg="[object Function]",Gg="[object Map]",Kg="[object Number]",Jg="[object Object]",Zg="[object RegExp]",Qg="[object Set]",Xg="[object String]",Yg="[object WeakMap]",eh="[object ArrayBuffer]",th="[object DataView]",uh="[object Float32Array]",ih="[object Float64Array]",nh="[object Int8Array]",fh="[object Int16Array]",rh="[object Int32Array]",oh="[object Uint8Array]",ah="[object Uint8ClampedArray]",Dh="[object Uint16Array]",sh="[object Uint32Array]",Ae={};Ae[uh]=Ae[ih]=Ae[nh]=Ae[fh]=Ae[rh]=Ae[oh]=Ae[ah]=Ae[Dh]=Ae[sh]=!0;Ae[Rg]=Ae[Lg]=Ae[eh]=Ae[zg]=Ae[th]=Ae[Ug]=Ae[Hg]=Ae[Wg]=Ae[Gg]=Ae[Kg]=Ae[Jg]=Ae[Zg]=Ae[Qg]=Ae[Xg]=Ae[Yg]=!1;function lh(e){return Vg(e)&&qg(e.length)&&!!Ae[Ng(e)]}W1.exports=lh});var wf=F((bR,K1)=>{function dh(e){return function(u){return e(u)}}K1.exports=dh});var Af=F((sn,di)=>{var ch=Do(),J1=typeof sn=="object"&&sn&&!sn.nodeType&&sn,ln=J1&&typeof di=="object"&&di&&!di.nodeType&&di,ph=ln&&ln.exports===J1,go=ph&&ch.process,mh=function(){try{var e=ln&&ln.require&&ln.require("util").types;return e||go&&go.binding&&go.binding("util")}catch{}}();di.exports=mh});var ho=F((_R,X1)=>{var Fh=G1(),Ch=wf(),Z1=Af(),Q1=Z1&&Z1.isTypedArray,gh=Q1?Ch(Q1):Fh;X1.exports=gh});var Eo=F((yR,Y1)=>{var hh=$1(),Eh=Fo(),bh=pt(),_h=Bf(),yh=Co(),vh=ho(),Bh=Object.prototype,xh=Bh.hasOwnProperty;function wh(e,u){var t=bh(e),i=!t&&Eh(e),n=!t&&!i&&_h(e),f=!t&&!i&&!n&&vh(e),r=t||i||n||f,o=r?hh(e.length,String):[],a=o.length;for(var D in e)(u||xh.call(e,D))&&!(r&&(D=="length"||n&&(D=="offset"||D=="parent")||f&&(D=="buffer"||D=="byteLength"||D=="byteOffset")||yh(D,a)))&&o.push(D);return o}Y1.exports=wh});var If=F((vR,el)=>{var Ah=Object.prototype;function Ih(e){var u=e&&e.constructor,t=typeof u=="function"&&u.prototype||Ah;return e===t}el.exports=Ih});var bo=F((BR,tl)=>{function Sh(e,u){return function(t){return e(u(t))}}tl.exports=Sh});var il=F((xR,ul)=>{var $h=bo(),kh=$h(Object.keys,Object);ul.exports=kh});var fl=F((wR,nl)=>{var Th=If(),Ph=il(),Oh=Object.prototype,Mh=Oh.hasOwnProperty;function jh(e){if(!Th(e))return Ph(e);var u=[];for(var t in Object(e))Mh.call(e,t)&&t!="constructor"&&u.push(t);return u}nl.exports=jh});var dn=F((AR,rl)=>{var Nh=so(),qh=xf();function Vh(e){return e!=null&&qh(e.length)&&!Nh(e)}rl.exports=Vh});var ci=F((IR,ol)=>{var Rh=Eo(),Lh=fl(),zh=dn();function Uh(e){return zh(e)?Rh(e):Lh(e)}ol.exports=Uh});var Dl=F((SR,al)=>{var Hh=an(),Wh=ci();function Gh(e,u){return e&&Hh(u,Wh(u),e)}al.exports=Gh});var ll=F(($R,sl)=>{function Kh(e){var u=[];if(e!=null)for(var t in Object(e))u.push(t);return u}sl.exports=Kh});var cl=F((kR,dl)=>{var Jh=Tu(),Zh=If(),Qh=ll(),Xh=Object.prototype,Yh=Xh.hasOwnProperty;function e6(e){if(!Jh(e))return Qh(e);var u=Zh(e),t=[];for(var i in e)i=="constructor"&&(u||!Yh.call(e,i))||t.push(i);return t}dl.exports=e6});var Sf=F((TR,pl)=>{var t6=Eo(),u6=cl(),i6=dn();function n6(e){return i6(e)?t6(e,!0):u6(e)}pl.exports=n6});var Fl=F((PR,ml)=>{var f6=an(),r6=Sf();function o6(e,u){return e&&f6(u,r6(u),e)}ml.exports=o6});var bl=F((cn,pi)=>{var a6=$t(),El=typeof cn=="object"&&cn&&!cn.nodeType&&cn,Cl=El&&typeof pi=="object"&&pi&&!pi.nodeType&&pi,D6=Cl&&Cl.exports===El,gl=D6?a6.Buffer:void 0,hl=gl?gl.allocUnsafe:void 0;function s6(e,u){if(u)return e.slice();var t=e.length,i=hl?hl(t):new e.constructor(t);return e.copy(i),i}pi.exports=s6});var yl=F((OR,_l)=>{function l6(e,u){var t=-1,i=e.length;for(u||(u=Array(i));++t<i;)u[t]=e[t];return u}_l.exports=l6});var _o=F((MR,vl)=>{function d6(e,u){for(var t=-1,i=e==null?0:e.length,n=0,f=[];++t<i;){var r=e[t];u(r,t,e)&&(f[n++]=r)}return f}vl.exports=d6});var yo=F((jR,Bl)=>{function c6(){return[]}Bl.exports=c6});var $f=F((NR,wl)=>{var p6=_o(),m6=yo(),F6=Object.prototype,C6=F6.propertyIsEnumerable,xl=Object.getOwnPropertySymbols,g6=xl?function(e){return e==null?[]:(e=Object(e),p6(xl(e),function(u){return C6.call(e,u)}))}:m6;wl.exports=g6});var Il=F((qR,Al)=>{var h6=an(),E6=$f();function b6(e,u){return h6(e,E6(e),u)}Al.exports=b6});var vo=F((VR,Sl)=>{function _6(e,u){for(var t=-1,i=u.length,n=e.length;++t<i;)e[n+t]=u[t];return e}Sl.exports=_6});var kf=F((RR,$l)=>{var y6=bo(),v6=y6(Object.getPrototypeOf,Object);$l.exports=v6});var Bo=F((LR,kl)=>{var B6=vo(),x6=kf(),w6=$f(),A6=yo(),I6=Object.getOwnPropertySymbols,S6=I6?function(e){for(var u=[];e;)B6(u,w6(e)),e=x6(e);return u}:A6;kl.exports=S6});var Pl=F((zR,Tl)=>{var $6=an(),k6=Bo();function T6(e,u){return $6(e,k6(e),u)}Tl.exports=T6});var xo=F((UR,Ol)=>{var P6=vo(),O6=pt();function M6(e,u,t){var i=u(e);return O6(e)?i:P6(i,t(e))}Ol.exports=M6});var wo=F((HR,Ml)=>{var j6=xo(),N6=$f(),q6=ci();function V6(e){return j6(e,q6,N6)}Ml.exports=V6});var Nl=F((WR,jl)=>{var R6=xo(),L6=Bo(),z6=Sf();function U6(e){return R6(e,z6,L6)}jl.exports=U6});var Vl=F((GR,ql)=>{var H6=au(),W6=$t(),G6=H6(W6,"DataView");ql.exports=G6});var Ll=F((KR,Rl)=>{var K6=au(),J6=$t(),Z6=K6(J6,"Promise");Rl.exports=Z6});var Ul=F((JR,zl)=>{var Q6=au(),X6=$t(),Y6=Q6(X6,"Set");zl.exports=Y6});var Wl=F((ZR,Hl)=>{var eE=au(),tE=$t(),uE=eE(tE,"WeakMap");Hl.exports=uE});var pn=F((QR,Yl)=>{var Ao=Vl(),Io=_f(),So=Ll(),$o=Ul(),ko=Wl(),Xl=ku(),mi=co(),Gl="[object Map]",iE="[object Object]",Kl="[object Promise]",Jl="[object Set]",Zl="[object WeakMap]",Ql="[object DataView]",nE=mi(Ao),fE=mi(Io),rE=mi(So),oE=mi($o),aE=mi(ko),Pu=Xl;(Ao&&Pu(new Ao(new ArrayBuffer(1)))!=Ql||Io&&Pu(new Io)!=Gl||So&&Pu(So.resolve())!=Kl||$o&&Pu(new $o)!=Jl||ko&&Pu(new ko)!=Zl)&&(Pu=function(e){var u=Xl(e),t=u==iE?e.constructor:void 0,i=t?mi(t):"";if(i)switch(i){case nE:return Ql;case fE:return Gl;case rE:return Kl;case oE:return Jl;case aE:return Zl}return u});Yl.exports=Pu});var td=F((XR,ed)=>{var DE=Object.prototype,sE=DE.hasOwnProperty;function lE(e){var u=e.length,t=new e.constructor(u);return u&&typeof e[0]=="string"&&sE.call(e,"index")&&(t.index=e.index,t.input=e.input),t}ed.exports=lE});var To=F((YR,ud)=>{var dE=$t(),cE=dE.Uint8Array;ud.exports=cE});var Tf=F((eL,nd)=>{var id=To();function pE(e){var u=new e.constructor(e.byteLength);return new id(u).set(new id(e)),u}nd.exports=pE});var rd=F((tL,fd)=>{var mE=Tf();function FE(e,u){var t=u?mE(e.buffer):e.buffer;return new e.constructor(t,e.byteOffset,e.byteLength)}fd.exports=FE});var ad=F((uL,od)=>{var CE=/\w*$/;function gE(e){var u=new e.constructor(e.source,CE.exec(e));return u.lastIndex=e.lastIndex,u}od.exports=gE});var cd=F((iL,dd)=>{var Dd=oi(),sd=Dd?Dd.prototype:void 0,ld=sd?sd.valueOf:void 0;function hE(e){return ld?Object(ld.call(e)):{}}dd.exports=hE});var md=F((nL,pd)=>{var EE=Tf();function bE(e,u){var t=u?EE(e.buffer):e.buffer;return new e.constructor(t,e.byteOffset,e.length)}pd.exports=bE});var Cd=F((fL,Fd)=>{var _E=Tf(),yE=rd(),vE=ad(),BE=cd(),xE=md(),wE="[object Boolean]",AE="[object Date]",IE="[object Map]",SE="[object Number]",$E="[object RegExp]",kE="[object Set]",TE="[object String]",PE="[object Symbol]",OE="[object ArrayBuffer]",ME="[object DataView]",jE="[object Float32Array]",NE="[object Float64Array]",qE="[object Int8Array]",VE="[object Int16Array]",RE="[object Int32Array]",LE="[object Uint8Array]",zE="[object Uint8ClampedArray]",UE="[object Uint16Array]",HE="[object Uint32Array]";function WE(e,u,t){var i=e.constructor;switch(u){case OE:return _E(e);case wE:case AE:return new i(+e);case ME:return yE(e,t);case jE:case NE:case qE:case VE:case RE:case LE:case zE:case UE:case HE:return xE(e,t);case IE:return new i;case SE:case TE:return new i(e);case $E:return vE(e);case kE:return new i;case PE:return BE(e)}}Fd.exports=WE});var Ed=F((rL,hd)=>{var GE=Tu(),gd=Object.create,KE=function(){function e(){}return function(u){if(!GE(u))return{};if(gd)return gd(u);e.prototype=u;var t=new e;return e.prototype=void 0,t}}();hd.exports=KE});var _d=F((oL,bd)=>{var JE=Ed(),ZE=kf(),QE=If();function XE(e){return typeof e.constructor=="function"&&!QE(e)?JE(ZE(e)):{}}bd.exports=XE});var vd=F((aL,yd)=>{var YE=pn(),eb=Kt(),tb="[object Map]";function ub(e){return eb(e)&&YE(e)==tb}yd.exports=ub});var Ad=F((DL,wd)=>{var ib=vd(),nb=wf(),Bd=Af(),xd=Bd&&Bd.isMap,fb=xd?nb(xd):ib;wd.exports=fb});var Sd=F((sL,Id)=>{var rb=pn(),ob=Kt(),ab="[object Set]";function Db(e){return ob(e)&&rb(e)==ab}Id.exports=Db});var Pd=F((lL,Td)=>{var sb=Sd(),lb=wf(),$d=Af(),kd=$d&&$d.isSet,db=kd?lb(kd):sb;Td.exports=db});var qd=F((dL,Nd)=>{var cb=vf(),pb=y1(),mb=mo(),Fb=Dl(),Cb=Fl(),gb=bl(),hb=yl(),Eb=Il(),bb=Pl(),_b=wo(),yb=Nl(),vb=pn(),Bb=td(),xb=Cd(),wb=_d(),Ab=pt(),Ib=Bf(),Sb=Ad(),$b=Tu(),kb=Pd(),Tb=ci(),Pb=Sf(),Ob=1,Mb=2,jb=4,Od="[object Arguments]",Nb="[object Array]",qb="[object Boolean]",Vb="[object Date]",Rb="[object Error]",Md="[object Function]",Lb="[object GeneratorFunction]",zb="[object Map]",Ub="[object Number]",jd="[object Object]",Hb="[object RegExp]",Wb="[object Set]",Gb="[object String]",Kb="[object Symbol]",Jb="[object WeakMap]",Zb="[object ArrayBuffer]",Qb="[object DataView]",Xb="[object Float32Array]",Yb="[object Float64Array]",e_="[object Int8Array]",t_="[object Int16Array]",u_="[object Int32Array]",i_="[object Uint8Array]",n_="[object Uint8ClampedArray]",f_="[object Uint16Array]",r_="[object Uint32Array]",ye={};ye[Od]=ye[Nb]=ye[Zb]=ye[Qb]=ye[qb]=ye[Vb]=ye[Xb]=ye[Yb]=ye[e_]=ye[t_]=ye[u_]=ye[zb]=ye[Ub]=ye[jd]=ye[Hb]=ye[Wb]=ye[Gb]=ye[Kb]=ye[i_]=ye[n_]=ye[f_]=ye[r_]=!0;ye[Rb]=ye[Md]=ye[Jb]=!1;function Pf(e,u,t,i,n,f){var r,o=u&Ob,a=u&Mb,D=u&jb;if(t&&(r=n?t(e,i,n,f):t(e)),r!==void 0)return r;if(!$b(e))return e;var l=Ab(e);if(l){if(r=Bb(e),!o)return hb(e,r)}else{var p=vb(e),m=p==Md||p==Lb;if(Ib(e))return gb(e,o);if(p==jd||p==Od||m&&!n){if(r=a||m?{}:wb(e),!o)return a?bb(e,Cb(r,e)):Eb(e,Fb(r,e))}else{if(!ye[p])return n?e:{};r=xb(e,p,o)}}f||(f=new cb);var b=f.get(e);if(b)return b;f.set(e,r),kb(e)?e.forEach(function(v){r.add(Pf(v,u,t,v,e,f))}):Sb(e)&&e.forEach(function(v,I){r.set(I,Pf(v,u,t,I,e,f))});var E=D?a?yb:_b:a?Pb:Tb,y=l?void 0:E(e);return pb(y||e,function(v,I){y&&(I=v,v=e[I]),mb(r,I,Pf(v,u,t,I,e,f))}),r}Nd.exports=Pf});var Rd=F((cL,Vd)=>{var o_=qd(),a_=1,D_=4;function s_(e){return o_(e,a_|D_)}Vd.exports=s_});var zd=F((pL,Ld)=>{var l_="__lodash_hash_undefined__";function d_(e){return this.__data__.set(e,l_),this}Ld.exports=d_});var Hd=F((mL,Ud)=>{function c_(e){return this.__data__.has(e)}Ud.exports=c_});var Gd=F((FL,Wd)=>{var p_=yf(),m_=zd(),F_=Hd();function Of(e){var u=-1,t=e==null?0:e.length;for(this.__data__=new p_;++u<t;)this.add(e[u])}Of.prototype.add=Of.prototype.push=m_;Of.prototype.has=F_;Wd.exports=Of});var Jd=F((CL,Kd)=>{function C_(e,u){for(var t=-1,i=e==null?0:e.length;++t<i;)if(u(e[t],t,e))return!0;return!1}Kd.exports=C_});var Qd=F((gL,Zd)=>{function g_(e,u){return e.has(u)}Zd.exports=g_});var Po=F((hL,Xd)=>{var h_=Gd(),E_=Jd(),b_=Qd(),__=1,y_=2;function v_(e,u,t,i,n,f){var r=t&__,o=e.length,a=u.length;if(o!=a&&!(r&&a>o))return!1;var D=f.get(e),l=f.get(u);if(D&&l)return D==u&&l==e;var p=-1,m=!0,b=t&y_?new h_:void 0;for(f.set(e,u),f.set(u,e);++p<o;){var E=e[p],y=u[p];if(i)var v=r?i(y,E,p,u,e,f):i(E,y,p,e,u,f);if(v!==void 0){if(v)continue;m=!1;break}if(b){if(!E_(u,function(I,O){if(!b_(b,O)&&(E===I||n(E,I,t,i,f)))return b.push(O)})){m=!1;break}}else if(!(E===y||n(E,y,t,i,f))){m=!1;break}}return f.delete(e),f.delete(u),m}Xd.exports=v_});var e3=F((EL,Yd)=>{function B_(e){var u=-1,t=Array(e.size);return e.forEach(function(i,n){t[++u]=[n,i]}),t}Yd.exports=B_});var u3=F((bL,t3)=>{function x_(e){var u=-1,t=Array(e.size);return e.forEach(function(i){t[++u]=i}),t}t3.exports=x_});var o3=F((_L,r3)=>{var i3=oi(),n3=To(),w_=bf(),A_=Po(),I_=e3(),S_=u3(),$_=1,k_=2,T_="[object Boolean]",P_="[object Date]",O_="[object Error]",M_="[object Map]",j_="[object Number]",N_="[object RegExp]",q_="[object Set]",V_="[object String]",R_="[object Symbol]",L_="[object ArrayBuffer]",z_="[object DataView]",f3=i3?i3.prototype:void 0,Oo=f3?f3.valueOf:void 0;function U_(e,u,t,i,n,f,r){switch(t){case z_:if(e.byteLength!=u.byteLength||e.byteOffset!=u.byteOffset)return!1;e=e.buffer,u=u.buffer;case L_:return!(e.byteLength!=u.byteLength||!f(new n3(e),new n3(u)));case T_:case P_:case j_:return w_(+e,+u);case O_:return e.name==u.name&&e.message==u.message;case N_:case V_:return e==u+"";case M_:var o=I_;case q_:var a=i&$_;if(o||(o=S_),e.size!=u.size&&!a)return!1;var D=r.get(e);if(D)return D==u;i|=k_,r.set(e,u);var l=A_(o(e),o(u),i,n,f,r);return r.delete(e),l;case R_:if(Oo)return Oo.call(e)==Oo.call(u)}return!1}r3.exports=U_});var s3=F((yL,D3)=>{var a3=wo(),H_=1,W_=Object.prototype,G_=W_.hasOwnProperty;function K_(e,u,t,i,n,f){var r=t&H_,o=a3(e),a=o.length,D=a3(u),l=D.length;if(a!=l&&!r)return!1;for(var p=a;p--;){var m=o[p];if(!(r?m in u:G_.call(u,m)))return!1}var b=f.get(e),E=f.get(u);if(b&&E)return b==u&&E==e;var y=!0;f.set(e,u),f.set(u,e);for(var v=r;++p<a;){m=o[p];var I=e[m],O=u[m];if(i)var L=r?i(O,I,m,u,e,f):i(I,O,m,e,u,f);if(!(L===void 0?I===O||n(I,O,t,i,f):L)){y=!1;break}v||(v=m=="constructor")}if(y&&!v){var U=e.constructor,M=u.constructor;U!=M&&"constructor"in e&&"constructor"in u&&!(typeof U=="function"&&U instanceof U&&typeof M=="function"&&M instanceof M)&&(y=!1)}return f.delete(e),f.delete(u),y}D3.exports=K_});var g3=F((vL,C3)=>{var Mo=vf(),J_=Po(),Z_=o3(),Q_=s3(),l3=pn(),d3=pt(),c3=Bf(),X_=ho(),Y_=1,p3="[object Arguments]",m3="[object Array]",Mf="[object Object]",e9=Object.prototype,F3=e9.hasOwnProperty;function t9(e,u,t,i,n,f){var r=d3(e),o=d3(u),a=r?m3:l3(e),D=o?m3:l3(u);a=a==p3?Mf:a,D=D==p3?Mf:D;var l=a==Mf,p=D==Mf,m=a==D;if(m&&c3(e)){if(!c3(u))return!1;r=!0,l=!1}if(m&&!l)return f||(f=new Mo),r||X_(e)?J_(e,u,t,i,n,f):Z_(e,u,a,t,i,n,f);if(!(t&Y_)){var b=l&&F3.call(e,"__wrapped__"),E=p&&F3.call(u,"__wrapped__");if(b||E){var y=b?e.value():e,v=E?u.value():u;return f||(f=new Mo),n(y,v,t,i,f)}}return m?(f||(f=new Mo),Q_(e,u,t,i,n,f)):!1}C3.exports=t9});var jf=F((BL,b3)=>{var u9=g3(),h3=Kt();function E3(e,u,t,i,n){return e===u?!0:e==null||u==null||!h3(e)&&!h3(u)?e!==e&&u!==u:u9(e,u,t,i,E3,n)}b3.exports=E3});var y3=F((xL,_3)=>{var i9=jf();function n9(e,u){return i9(e,u)}_3.exports=n9});var Cn=F(le=>{"use strict";Object.defineProperty(le,"__esModule",{value:!0});le.regexpCode=le.getEsmExportName=le.getProperty=le.safeStringify=le.stringify=le.strConcat=le.addCodeArg=le.str=le._=le.nil=le._Code=le.Name=le.IDENTIFIER=le._CodeOrName=void 0;var mn=class{};le._CodeOrName=mn;le.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;var Ou=class extends mn{constructor(u){if(super(),!le.IDENTIFIER.test(u))throw new Error("CodeGen: name must be a valid identifier");this.str=u}toString(){return this.str}emptyStr(){return!1}get names(){return{[this.str]:1}}};le.Name=Ou;var gt=class extends mn{constructor(u){super(),this._items=typeof u=="string"?[u]:u}toString(){return this.str}emptyStr(){if(this._items.length>1)return!1;let u=this._items[0];return u===""||u==='""'}get str(){var u;return(u=this._str)!==null&&u!==void 0?u:this._str=this._items.reduce((t,i)=>`${t}${i}`,"")}get names(){var u;return(u=this._names)!==null&&u!==void 0?u:this._names=this._items.reduce((t,i)=>(i instanceof Ou&&(t[i.str]=(t[i.str]||0)+1),t),{})}};le._Code=gt;le.nil=new gt("");function v3(e,...u){let t=[e[0]],i=0;for(;i<u.length;)No(t,u[i]),t.push(e[++i]);return new gt(t)}le._=v3;var jo=new gt("+");function B3(e,...u){let t=[Fn(e[0])],i=0;for(;i<u.length;)t.push(jo),No(t,u[i]),t.push(jo,Fn(e[++i]));return f9(t),new gt(t)}le.str=B3;function No(e,u){u instanceof gt?e.push(...u._items):u instanceof Ou?e.push(u):e.push(a9(u))}le.addCodeArg=No;function f9(e){let u=1;for(;u<e.length-1;){if(e[u]===jo){let t=r9(e[u-1],e[u+1]);if(t!==void 0){e.splice(u-1,3,t);continue}e[u++]="+"}u++}}function r9(e,u){if(u==='""')return e;if(e==='""')return u;if(typeof e=="string")return u instanceof Ou||e[e.length-1]!=='"'?void 0:typeof u!="string"?`${e.slice(0,-1)}${u}"`:u[0]==='"'?e.slice(0,-1)+u.slice(1):void 0;if(typeof u=="string"&&u[0]==='"'&&!(e instanceof Ou))return`"${e}${u.slice(1)}`}function o9(e,u){return u.emptyStr()?e:e.emptyStr()?u:B3`${e}${u}`}le.strConcat=o9;function a9(e){return typeof e=="number"||typeof e=="boolean"||e===null?e:Fn(Array.isArray(e)?e.join(","):e)}function D9(e){return new gt(Fn(e))}le.stringify=D9;function Fn(e){return JSON.stringify(e).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")}le.safeStringify=Fn;function s9(e){return typeof e=="string"&&le.IDENTIFIER.test(e)?new gt(`.${e}`):v3`[${e}]`}le.getProperty=s9;function l9(e){if(typeof e=="string"&&le.IDENTIFIER.test(e))return new gt(`${e}`);throw new Error(`CodeGen: invalid export name: ${e}, use explicit $id name mapping`)}le.getEsmExportName=l9;function d9(e){return new gt(e.toString())}le.regexpCode=d9});var Ro=F(at=>{"use strict";Object.defineProperty(at,"__esModule",{value:!0});at.ValueScope=at.ValueScopeName=at.Scope=at.varKinds=at.UsedValueState=void 0;var ot=Cn(),qo=class extends Error{constructor(u){super(`CodeGen: "code" for ${u} not defined`),this.value=u.value}},Nf=function(e){return e[e.Started=0]="Started",e[e.Completed=1]="Completed",e}(Nf||(at.UsedValueState=Nf={}));at.varKinds={const:new ot.Name("const"),let:new ot.Name("let"),var:new ot.Name("var")};var qf=class{constructor({prefixes:u,parent:t}={}){this._names={},this._prefixes=u,this._parent=t}toName(u){return u instanceof ot.Name?u:this.name(u)}name(u){return new ot.Name(this._newName(u))}_newName(u){let t=this._names[u]||this._nameGroup(u);return`${u}${t.index++}`}_nameGroup(u){var t,i;if(!((i=(t=this._parent)===null||t===void 0?void 0:t._prefixes)===null||i===void 0)&&i.has(u)||this._prefixes&&!this._prefixes.has(u))throw new Error(`CodeGen: prefix "${u}" is not allowed in this scope`);return this._names[u]={prefix:u,index:0}}};at.Scope=qf;var Vf=class extends ot.Name{constructor(u,t){super(t),this.prefix=u}setValue(u,{property:t,itemIndex:i}){this.value=u,this.scopePath=(0,ot._)`.${new ot.Name(t)}[${i}]`}};at.ValueScopeName=Vf;var c9=(0,ot._)`\n`,Vo=class extends qf{constructor(u){super(u),this._values={},this._scope=u.scope,this.opts=Ee(Z({},u),{_n:u.lines?c9:ot.nil})}get(){return this._scope}name(u){return new Vf(u,this._newName(u))}value(u,t){var i;if(t.ref===void 0)throw new Error("CodeGen: ref must be passed in value");let n=this.toName(u),{prefix:f}=n,r=(i=t.key)!==null&&i!==void 0?i:t.ref,o=this._values[f];if(o){let l=o.get(r);if(l)return l}else o=this._values[f]=new Map;o.set(r,n);let a=this._scope[f]||(this._scope[f]=[]),D=a.length;return a[D]=t.ref,n.setValue(t,{property:f,itemIndex:D}),n}getValue(u,t){let i=this._values[u];if(i)return i.get(t)}scopeRefs(u,t=this._values){return this._reduceValues(t,i=>{if(i.scopePath===void 0)throw new Error(`CodeGen: name "${i}" has no value`);return(0,ot._)`${u}${i.scopePath}`})}scopeCode(u=this._values,t,i){return this._reduceValues(u,n=>{if(n.value===void 0)throw new Error(`CodeGen: name "${n}" has no value`);return n.value.code},t,i)}_reduceValues(u,t,i={},n){let f=ot.nil;for(let r in u){let o=u[r];if(!o)continue;let a=i[r]=i[r]||new Map;o.forEach(D=>{if(a.has(D))return;a.set(D,Nf.Started);let l=t(D);if(l){let p=this.opts.es5?at.varKinds.var:at.varKinds.const;f=(0,ot._)`${f}${p} ${D} = ${l};${this.opts._n}`}else if(l=n==null?void 0:n(D))f=(0,ot._)`${f}${l}${this.opts._n}`;else throw new qo(D);a.set(D,Nf.Completed)})}return f}};at.ValueScope=Vo});var ee=F(ue=>{"use strict";Object.defineProperty(ue,"__esModule",{value:!0});ue.or=ue.and=ue.not=ue.CodeGen=ue.operators=ue.varKinds=ue.ValueScopeName=ue.ValueScope=ue.Scope=ue.Name=ue.regexpCode=ue.stringify=ue.getProperty=ue.nil=ue.strConcat=ue.str=ue._=void 0;var ae=Cn(),kt=Ro(),Du=Cn();Object.defineProperty(ue,"_",{enumerable:!0,get:function(){return Du._}});Object.defineProperty(ue,"str",{enumerable:!0,get:function(){return Du.str}});Object.defineProperty(ue,"strConcat",{enumerable:!0,get:function(){return Du.strConcat}});Object.defineProperty(ue,"nil",{enumerable:!0,get:function(){return Du.nil}});Object.defineProperty(ue,"getProperty",{enumerable:!0,get:function(){return Du.getProperty}});Object.defineProperty(ue,"stringify",{enumerable:!0,get:function(){return Du.stringify}});Object.defineProperty(ue,"regexpCode",{enumerable:!0,get:function(){return Du.regexpCode}});Object.defineProperty(ue,"Name",{enumerable:!0,get:function(){return Du.Name}});var Hf=Ro();Object.defineProperty(ue,"Scope",{enumerable:!0,get:function(){return Hf.Scope}});Object.defineProperty(ue,"ValueScope",{enumerable:!0,get:function(){return Hf.ValueScope}});Object.defineProperty(ue,"ValueScopeName",{enumerable:!0,get:function(){return Hf.ValueScopeName}});Object.defineProperty(ue,"varKinds",{enumerable:!0,get:function(){return Hf.varKinds}});ue.operators={GT:new ae._Code(">"),GTE:new ae._Code(">="),LT:new ae._Code("<"),LTE:new ae._Code("<="),EQ:new ae._Code("==="),NEQ:new ae._Code("!=="),NOT:new ae._Code("!"),OR:new ae._Code("||"),AND:new ae._Code("&&"),ADD:new ae._Code("+")};var Jt=class{optimizeNodes(){return this}optimizeNames(u,t){return this}},Lo=class extends Jt{constructor(u,t,i){super(),this.varKind=u,this.name=t,this.rhs=i}render({es5:u,_n:t}){let i=u?kt.varKinds.var:this.varKind,n=this.rhs===void 0?"":` = ${this.rhs}`;return`${i} ${this.name}${n};`+t}optimizeNames(u,t){if(u[this.name.str])return this.rhs&&(this.rhs=Fi(this.rhs,u,t)),this}get names(){return this.rhs instanceof ae._CodeOrName?this.rhs.names:{}}},Lf=class extends Jt{constructor(u,t,i){super(),this.lhs=u,this.rhs=t,this.sideEffects=i}render({_n:u}){return`${this.lhs} = ${this.rhs};`+u}optimizeNames(u,t){if(!(this.lhs instanceof ae.Name&&!u[this.lhs.str]&&!this.sideEffects))return this.rhs=Fi(this.rhs,u,t),this}get names(){let u=this.lhs instanceof ae.Name?{}:Z({},this.lhs.names);return Uf(u,this.rhs)}},zo=class extends Lf{constructor(u,t,i,n){super(u,i,n),this.op=t}render({_n:u}){return`${this.lhs} ${this.op}= ${this.rhs};`+u}},Uo=class extends Jt{constructor(u){super(),this.label=u,this.names={}}render({_n:u}){return`${this.label}:`+u}},Ho=class extends Jt{constructor(u){super(),this.label=u,this.names={}}render({_n:u}){return`break${this.label?` ${this.label}`:""};`+u}},Wo=class extends Jt{constructor(u){super(),this.error=u}render({_n:u}){return`throw ${this.error};`+u}get names(){return this.error.names}},Go=class extends Jt{constructor(u){super(),this.code=u}render({_n:u}){return`${this.code};`+u}optimizeNodes(){return`${this.code}`?this:void 0}optimizeNames(u,t){return this.code=Fi(this.code,u,t),this}get names(){return this.code instanceof ae._CodeOrName?this.code.names:{}}},gn=class extends Jt{constructor(u=[]){super(),this.nodes=u}render(u){return this.nodes.reduce((t,i)=>t+i.render(u),"")}optimizeNodes(){let{nodes:u}=this,t=u.length;for(;t--;){let i=u[t].optimizeNodes();Array.isArray(i)?u.splice(t,1,...i):i?u[t]=i:u.splice(t,1)}return u.length>0?this:void 0}optimizeNames(u,t){let{nodes:i}=this,n=i.length;for(;n--;){let f=i[n];f.optimizeNames(u,t)||(p9(u,f.names),i.splice(n,1))}return i.length>0?this:void 0}get names(){return this.nodes.reduce((u,t)=>Mu(u,t.names),{})}},Zt=class extends gn{render(u){return"{"+u._n+super.render(u)+"}"+u._n}},Ko=class extends gn{},Jo=(()=>{class e extends Zt{}return e.kind="else",e})(),Rf=(()=>{class e extends Zt{constructor(t,i){super(i),this.condition=t}render(t){let i=`if(${this.condition})`+super.render(t);return this.else&&(i+="else "+this.else.render(t)),i}optimizeNodes(){super.optimizeNodes();let t=this.condition;if(t===!0)return this.nodes;let i=this.else;if(i){let n=i.optimizeNodes();i=this.else=Array.isArray(n)?new Jo(n):n}if(i)return t===!1?i instanceof e?i:i.nodes:this.nodes.length?this:new e(S3(t),i instanceof e?[i]:i.nodes);if(!(t===!1||!this.nodes.length))return this}optimizeNames(t,i){var n;if(this.else=(n=this.else)===null||n===void 0?void 0:n.optimizeNames(t,i),!!(super.optimizeNames(t,i)||this.else))return this.condition=Fi(this.condition,t,i),this}get names(){let t=super.names;return Uf(t,this.condition),this.else&&Mu(t,this.else.names),t}}return e.kind="if",e})(),Wf=(()=>{class e extends Zt{}return e.kind="for",e})(),Zo=class extends Wf{constructor(u){super(),this.iteration=u}render(u){return`for(${this.iteration})`+super.render(u)}optimizeNames(u,t){if(super.optimizeNames(u,t))return this.iteration=Fi(this.iteration,u,t),this}get names(){return Mu(super.names,this.iteration.names)}},Qo=class extends Wf{constructor(u,t,i,n){super(),this.varKind=u,this.name=t,this.from=i,this.to=n}render(u){let t=u.es5?kt.varKinds.var:this.varKind,{name:i,from:n,to:f}=this;return`for(${t} ${i}=${n}; ${i}<${f}; ${i}++)`+super.render(u)}get names(){let u=Uf(super.names,this.from);return Uf(u,this.to)}},zf=class extends Wf{constructor(u,t,i,n){super(),this.loop=u,this.varKind=t,this.name=i,this.iterable=n}render(u){return`for(${this.varKind} ${this.name} ${this.loop} ${this.iterable})`+super.render(u)}optimizeNames(u,t){if(super.optimizeNames(u,t))return this.iterable=Fi(this.iterable,u,t),this}get names(){return Mu(super.names,this.iterable.names)}},x3=(()=>{class e extends Zt{constructor(t,i,n){super(),this.name=t,this.args=i,this.async=n}render(t){return`${this.async?"async ":""}function ${this.name}(${this.args})`+super.render(t)}}return e.kind="func",e})(),w3=(()=>{class e extends gn{render(t){return"return "+super.render(t)}}return e.kind="return",e})(),Xo=class extends Zt{render(u){let t="try"+super.render(u);return this.catch&&(t+=this.catch.render(u)),this.finally&&(t+=this.finally.render(u)),t}optimizeNodes(){var u,t;return super.optimizeNodes(),(u=this.catch)===null||u===void 0||u.optimizeNodes(),(t=this.finally)===null||t===void 0||t.optimizeNodes(),this}optimizeNames(u,t){var i,n;return super.optimizeNames(u,t),(i=this.catch)===null||i===void 0||i.optimizeNames(u,t),(n=this.finally)===null||n===void 0||n.optimizeNames(u,t),this}get names(){let u=super.names;return this.catch&&Mu(u,this.catch.names),this.finally&&Mu(u,this.finally.names),u}},A3=(()=>{class e extends Zt{constructor(t){super(),this.error=t}render(t){return`catch(${this.error})`+super.render(t)}}return e.kind="catch",e})(),I3=(()=>{class e extends Zt{render(t){return"finally"+super.render(t)}}return e.kind="finally",e})(),Yo=class{constructor(u,t={}){this._values={},this._blockStarts=[],this._constants={},this.opts=Ee(Z({},t),{_n:t.lines?`
|
|
2
2
|
`:""}),this._extScope=u,this._scope=new kt.Scope({parent:u}),this._nodes=[new Ko]}toString(){return this._root.render(this.opts)}name(u){return this._scope.name(u)}scopeName(u){return this._extScope.name(u)}scopeValue(u,t){let i=this._extScope.value(u,t);return(this._values[i.prefix]||(this._values[i.prefix]=new Set)).add(i),i}getScopeValue(u,t){return this._extScope.getValue(u,t)}scopeRefs(u){return this._extScope.scopeRefs(u,this._values)}scopeCode(){return this._extScope.scopeCode(this._values)}_def(u,t,i,n){let f=this._scope.toName(t);return i!==void 0&&n&&(this._constants[f.str]=i),this._leafNode(new Lo(u,f,i)),f}const(u,t,i){return this._def(kt.varKinds.const,u,t,i)}let(u,t,i){return this._def(kt.varKinds.let,u,t,i)}var(u,t,i){return this._def(kt.varKinds.var,u,t,i)}assign(u,t,i){return this._leafNode(new Lf(u,t,i))}add(u,t){return this._leafNode(new zo(u,ue.operators.ADD,t))}code(u){return typeof u=="function"?u():u!==ae.nil&&this._leafNode(new Go(u)),this}object(...u){let t=["{"];for(let[i,n]of u)t.length>1&&t.push(","),t.push(i),(i!==n||this.opts.es5)&&(t.push(":"),(0,ae.addCodeArg)(t,n));return t.push("}"),new ae._Code(t)}if(u,t,i){if(this._blockNode(new Rf(u)),t&&i)this.code(t).else().code(i).endIf();else if(t)this.code(t).endIf();else if(i)throw new Error('CodeGen: "else" body without "then" body');return this}elseIf(u){return this._elseNode(new Rf(u))}else(){return this._elseNode(new Jo)}endIf(){return this._endBlockNode(Rf,Jo)}_for(u,t){return this._blockNode(u),t&&this.code(t).endFor(),this}for(u,t){return this._for(new Zo(u),t)}forRange(u,t,i,n,f=this.opts.es5?kt.varKinds.var:kt.varKinds.let){let r=this._scope.toName(u);return this._for(new Qo(f,r,t,i),()=>n(r))}forOf(u,t,i,n=kt.varKinds.const){let f=this._scope.toName(u);if(this.opts.es5){let r=t instanceof ae.Name?t:this.var("_arr",t);return this.forRange("_i",0,(0,ae._)`${r}.length`,o=>{this.var(f,(0,ae._)`${r}[${o}]`),i(f)})}return this._for(new zf("of",n,f,t),()=>i(f))}forIn(u,t,i,n=this.opts.es5?kt.varKinds.var:kt.varKinds.const){if(this.opts.ownProperties)return this.forOf(u,(0,ae._)`Object.keys(${t})`,i);let f=this._scope.toName(u);return this._for(new zf("in",n,f,t),()=>i(f))}endFor(){return this._endBlockNode(Wf)}label(u){return this._leafNode(new Uo(u))}break(u){return this._leafNode(new Ho(u))}return(u){let t=new w3;if(this._blockNode(t),this.code(u),t.nodes.length!==1)throw new Error('CodeGen: "return" should have one node');return this._endBlockNode(w3)}try(u,t,i){if(!t&&!i)throw new Error('CodeGen: "try" without "catch" and "finally"');let n=new Xo;if(this._blockNode(n),this.code(u),t){let f=this.name("e");this._currNode=n.catch=new A3(f),t(f)}return i&&(this._currNode=n.finally=new I3,this.code(i)),this._endBlockNode(A3,I3)}throw(u){return this._leafNode(new Wo(u))}block(u,t){return this._blockStarts.push(this._nodes.length),u&&this.code(u).endBlock(t),this}endBlock(u){let t=this._blockStarts.pop();if(t===void 0)throw new Error("CodeGen: not in self-balancing block");let i=this._nodes.length-t;if(i<0||u!==void 0&&i!==u)throw new Error(`CodeGen: wrong number of nodes: ${i} vs ${u} expected`);return this._nodes.length=t,this}func(u,t=ae.nil,i,n){return this._blockNode(new x3(u,t,i)),n&&this.code(n).endFunc(),this}endFunc(){return this._endBlockNode(x3)}optimize(u=1){for(;u-- >0;)this._root.optimizeNodes(),this._root.optimizeNames(this._root.names,this._constants)}_leafNode(u){return this._currNode.nodes.push(u),this}_blockNode(u){this._currNode.nodes.push(u),this._nodes.push(u)}_endBlockNode(u,t){let i=this._currNode;if(i instanceof u||t&&i instanceof t)return this._nodes.pop(),this;throw new Error(`CodeGen: not in block "${t?`${u.kind}/${t.kind}`:u.kind}"`)}_elseNode(u){let t=this._currNode;if(!(t instanceof Rf))throw new Error('CodeGen: "else" without "if"');return this._currNode=t.else=u,this}get _root(){return this._nodes[0]}get _currNode(){let u=this._nodes;return u[u.length-1]}set _currNode(u){let t=this._nodes;t[t.length-1]=u}};ue.CodeGen=Yo;function Mu(e,u){for(let t in u)e[t]=(e[t]||0)+(u[t]||0);return e}function Uf(e,u){return u instanceof ae._CodeOrName?Mu(e,u.names):e}function Fi(e,u,t){if(e instanceof ae.Name)return i(e);if(!n(e))return e;return new ae._Code(e._items.reduce((f,r)=>(r instanceof ae.Name&&(r=i(r)),r instanceof ae._Code?f.push(...r._items):f.push(r),f),[]));function i(f){let r=t[f.str];return r===void 0||u[f.str]!==1?f:(delete u[f.str],r)}function n(f){return f instanceof ae._Code&&f._items.some(r=>r instanceof ae.Name&&u[r.str]===1&&t[r.str]!==void 0)}}function p9(e,u){for(let t in u)e[t]=(e[t]||0)-(u[t]||0)}function S3(e){return typeof e=="boolean"||typeof e=="number"||e===null?!e:(0,ae._)`!${ea(e)}`}ue.not=S3;var m9=$3(ue.operators.AND);function F9(...e){return e.reduce(m9)}ue.and=F9;var C9=$3(ue.operators.OR);function g9(...e){return e.reduce(C9)}ue.or=g9;function $3(e){return(u,t)=>u===ae.nil?t:t===ae.nil?u:(0,ae._)`${ea(u)} ${e} ${ea(t)}`}function ea(e){return e instanceof ae.Name?e:(0,ae._)`(${e})`}});var fe=F(ne=>{"use strict";Object.defineProperty(ne,"__esModule",{value:!0});ne.checkStrictMode=ne.getErrorPath=ne.Type=ne.useFunc=ne.setEvaluated=ne.evaluatedPropsToName=ne.mergeEvaluated=ne.eachItem=ne.unescapeJsonPointer=ne.escapeJsonPointer=ne.escapeFragment=ne.unescapeFragment=ne.schemaRefOrVal=ne.schemaHasRulesButRef=ne.schemaHasRules=ne.checkUnknownRules=ne.alwaysValidSchema=ne.toHash=void 0;var be=ee(),h9=Cn();function E9(e){let u={};for(let t of e)u[t]=!0;return u}ne.toHash=E9;function b9(e,u){return typeof u=="boolean"?u:Object.keys(u).length===0?!0:(P3(e,u),!O3(u,e.self.RULES.all))}ne.alwaysValidSchema=b9;function P3(e,u=e.schema){let{opts:t,self:i}=e;if(!t.strictSchema||typeof u=="boolean")return;let n=i.RULES.keywords;for(let f in u)n[f]||N3(e,`unknown keyword: "${f}"`)}ne.checkUnknownRules=P3;function O3(e,u){if(typeof e=="boolean")return!e;for(let t in e)if(u[t])return!0;return!1}ne.schemaHasRules=O3;function _9(e,u){if(typeof e=="boolean")return!e;for(let t in e)if(t!=="$ref"&&u.all[t])return!0;return!1}ne.schemaHasRulesButRef=_9;function y9({topSchemaRef:e,schemaPath:u},t,i,n){if(!n){if(typeof t=="number"||typeof t=="boolean")return t;if(typeof t=="string")return(0,be._)`${t}`}return(0,be._)`${e}${u}${(0,be.getProperty)(i)}`}ne.schemaRefOrVal=y9;function v9(e){return M3(decodeURIComponent(e))}ne.unescapeFragment=v9;function B9(e){return encodeURIComponent(ua(e))}ne.escapeFragment=B9;function ua(e){return typeof e=="number"?`${e}`:e.replace(/~/g,"~0").replace(/\//g,"~1")}ne.escapeJsonPointer=ua;function M3(e){return e.replace(/~1/g,"/").replace(/~0/g,"~")}ne.unescapeJsonPointer=M3;function x9(e,u){if(Array.isArray(e))for(let t of e)u(t);else u(e)}ne.eachItem=x9;function k3({mergeNames:e,mergeToName:u,mergeValues:t,resultToName:i}){return(n,f,r,o)=>{let a=r===void 0?f:r instanceof be.Name?(f instanceof be.Name?e(n,f,r):u(n,f,r),r):f instanceof be.Name?(u(n,r,f),f):t(f,r);return o===be.Name&&!(a instanceof be.Name)?i(n,a):a}}ne.mergeEvaluated={props:k3({mergeNames:(e,u,t)=>e.if((0,be._)`${t} !== true && ${u} !== undefined`,()=>{e.if((0,be._)`${u} === true`,()=>e.assign(t,!0),()=>e.assign(t,(0,be._)`${t} || {}`).code((0,be._)`Object.assign(${t}, ${u})`))}),mergeToName:(e,u,t)=>e.if((0,be._)`${t} !== true`,()=>{u===!0?e.assign(t,!0):(e.assign(t,(0,be._)`${t} || {}`),ia(e,t,u))}),mergeValues:(e,u)=>e===!0?!0:Z(Z({},e),u),resultToName:j3}),items:k3({mergeNames:(e,u,t)=>e.if((0,be._)`${t} !== true && ${u} !== undefined`,()=>e.assign(t,(0,be._)`${u} === true ? true : ${t} > ${u} ? ${t} : ${u}`)),mergeToName:(e,u,t)=>e.if((0,be._)`${t} !== true`,()=>e.assign(t,u===!0?!0:(0,be._)`${t} > ${u} ? ${t} : ${u}`)),mergeValues:(e,u)=>e===!0?!0:Math.max(e,u),resultToName:(e,u)=>e.var("items",u)})};function j3(e,u){if(u===!0)return e.var("props",!0);let t=e.var("props",(0,be._)`{}`);return u!==void 0&&ia(e,t,u),t}ne.evaluatedPropsToName=j3;function ia(e,u,t){Object.keys(t).forEach(i=>e.assign((0,be._)`${u}${(0,be.getProperty)(i)}`,!0))}ne.setEvaluated=ia;var T3={};function w9(e,u){return e.scopeValue("func",{ref:u,code:T3[u.code]||(T3[u.code]=new h9._Code(u.code))})}ne.useFunc=w9;var ta=function(e){return e[e.Num=0]="Num",e[e.Str=1]="Str",e}(ta||(ne.Type=ta={}));function A9(e,u,t){if(e instanceof be.Name){let i=u===ta.Num;return t?i?(0,be._)`"[" + ${e} + "]"`:(0,be._)`"['" + ${e} + "']"`:i?(0,be._)`"/" + ${e}`:(0,be._)`"/" + ${e}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return t?(0,be.getProperty)(e).toString():"/"+ua(e)}ne.getErrorPath=A9;function N3(e,u,t=e.opts.strictSchema){if(t){if(u=`strict mode: ${u}`,t===!0)throw new Error(u);e.self.logger.warn(u)}}ne.checkStrictMode=N3});var ht=F(na=>{"use strict";Object.defineProperty(na,"__esModule",{value:!0});var Qe=ee(),I9={data:new Qe.Name("data"),valCxt:new Qe.Name("valCxt"),instancePath:new Qe.Name("instancePath"),parentData:new Qe.Name("parentData"),parentDataProperty:new Qe.Name("parentDataProperty"),rootData:new Qe.Name("rootData"),dynamicAnchors:new Qe.Name("dynamicAnchors"),vErrors:new Qe.Name("vErrors"),errors:new Qe.Name("errors"),this:new Qe.Name("this"),self:new Qe.Name("self"),scope:new Qe.Name("scope"),json:new Qe.Name("json"),jsonPos:new Qe.Name("jsonPos"),jsonLen:new Qe.Name("jsonLen"),jsonPart:new Qe.Name("jsonPart")};na.default=I9});var hn=F(Xe=>{"use strict";Object.defineProperty(Xe,"__esModule",{value:!0});Xe.extendErrors=Xe.resetErrorsCount=Xe.reportExtraError=Xe.reportError=Xe.keyword$DataError=Xe.keywordError=void 0;var se=ee(),Gf=fe(),nt=ht();Xe.keywordError={message:({keyword:e})=>(0,se.str)`must pass "${e}" keyword validation`};Xe.keyword$DataError={message:({keyword:e,schemaType:u})=>u?(0,se.str)`"${e}" keyword must be ${u} ($data)`:(0,se.str)`"${e}" keyword is invalid ($data)`};function S9(e,u=Xe.keywordError,t,i){let{it:n}=e,{gen:f,compositeRule:r,allErrors:o}=n,a=R3(e,u,t);(i!=null?i:r||o)?q3(f,a):V3(n,(0,se._)`[${a}]`)}Xe.reportError=S9;function $9(e,u=Xe.keywordError,t){let{it:i}=e,{gen:n,compositeRule:f,allErrors:r}=i,o=R3(e,u,t);q3(n,o),f||r||V3(i,nt.default.vErrors)}Xe.reportExtraError=$9;function k9(e,u){e.assign(nt.default.errors,u),e.if((0,se._)`${nt.default.vErrors} !== null`,()=>e.if(u,()=>e.assign((0,se._)`${nt.default.vErrors}.length`,u),()=>e.assign(nt.default.vErrors,null)))}Xe.resetErrorsCount=k9;function T9({gen:e,keyword:u,schemaValue:t,data:i,errsCount:n,it:f}){if(n===void 0)throw new Error("ajv implementation error");let r=e.name("err");e.forRange("i",n,nt.default.errors,o=>{e.const(r,(0,se._)`${nt.default.vErrors}[${o}]`),e.if((0,se._)`${r}.instancePath === undefined`,()=>e.assign((0,se._)`${r}.instancePath`,(0,se.strConcat)(nt.default.instancePath,f.errorPath))),e.assign((0,se._)`${r}.schemaPath`,(0,se.str)`${f.errSchemaPath}/${u}`),f.opts.verbose&&(e.assign((0,se._)`${r}.schema`,t),e.assign((0,se._)`${r}.data`,i))})}Xe.extendErrors=T9;function q3(e,u){let t=e.const("err",u);e.if((0,se._)`${nt.default.vErrors} === null`,()=>e.assign(nt.default.vErrors,(0,se._)`[${t}]`),(0,se._)`${nt.default.vErrors}.push(${t})`),e.code((0,se._)`${nt.default.errors}++`)}function V3(e,u){let{gen:t,validateName:i,schemaEnv:n}=e;n.$async?t.throw((0,se._)`new ${e.ValidationError}(${u})`):(t.assign((0,se._)`${i}.errors`,u),t.return(!1))}var ju={keyword:new se.Name("keyword"),schemaPath:new se.Name("schemaPath"),params:new se.Name("params"),propertyName:new se.Name("propertyName"),message:new se.Name("message"),schema:new se.Name("schema"),parentSchema:new se.Name("parentSchema")};function R3(e,u,t){let{createErrors:i}=e.it;return i===!1?(0,se._)`{}`:P9(e,u,t)}function P9(e,u,t={}){let{gen:i,it:n}=e,f=[O9(n,t),M9(e,t)];return j9(e,u,f),i.object(...f)}function O9({errorPath:e},{instancePath:u}){let t=u?(0,se.str)`${e}${(0,Gf.getErrorPath)(u,Gf.Type.Str)}`:e;return[nt.default.instancePath,(0,se.strConcat)(nt.default.instancePath,t)]}function M9({keyword:e,it:{errSchemaPath:u}},{schemaPath:t,parentSchema:i}){let n=i?u:(0,se.str)`${u}/${e}`;return t&&(n=(0,se.str)`${n}${(0,Gf.getErrorPath)(t,Gf.Type.Str)}`),[ju.schemaPath,n]}function j9(e,{params:u,message:t},i){let{keyword:n,data:f,schemaValue:r,it:o}=e,{opts:a,propertyName:D,topSchemaRef:l,schemaPath:p}=o;i.push([ju.keyword,n],[ju.params,typeof u=="function"?u(e):u||(0,se._)`{}`]),a.messages&&i.push([ju.message,typeof t=="function"?t(e):t]),a.verbose&&i.push([ju.schema,r],[ju.parentSchema,(0,se._)`${l}${p}`],[nt.default.data,f]),D&&i.push([ju.propertyName,D])}});var z3=F(Ci=>{"use strict";Object.defineProperty(Ci,"__esModule",{value:!0});Ci.boolOrEmptySchema=Ci.topBoolOrEmptySchema=void 0;var N9=hn(),q9=ee(),V9=ht(),R9={message:"boolean schema is false"};function L9(e){let{gen:u,schema:t,validateName:i}=e;t===!1?L3(e,!1):typeof t=="object"&&t.$async===!0?u.return(V9.default.data):(u.assign((0,q9._)`${i}.errors`,null),u.return(!0))}Ci.topBoolOrEmptySchema=L9;function z9(e,u){let{gen:t,schema:i}=e;i===!1?(t.var(u,!1),L3(e)):t.var(u,!0)}Ci.boolOrEmptySchema=z9;function L3(e,u){let{gen:t,data:i}=e,n={gen:t,keyword:"false schema",data:i,schema:!1,schemaCode:!1,schemaValue:!1,params:{},it:e};(0,N9.reportError)(n,R9,void 0,u)}});var fa=F(gi=>{"use strict";Object.defineProperty(gi,"__esModule",{value:!0});gi.getRules=gi.isJSONType=void 0;var U9=["string","number","integer","boolean","null","object","array"],H9=new Set(U9);function W9(e){return typeof e=="string"&&H9.has(e)}gi.isJSONType=W9;function G9(){let e={number:{type:"number",rules:[]},string:{type:"string",rules:[]},array:{type:"array",rules:[]},object:{type:"object",rules:[]}};return{types:Ee(Z({},e),{integer:!0,boolean:!0,null:!0}),rules:[{rules:[]},e.number,e.string,e.array,e.object],post:{rules:[]},all:{},keywords:{}}}gi.getRules=G9});var ra=F(su=>{"use strict";Object.defineProperty(su,"__esModule",{value:!0});su.shouldUseRule=su.shouldUseGroup=su.schemaHasRulesForType=void 0;function K9({schema:e,self:u},t){let i=u.RULES.types[t];return i&&i!==!0&&U3(e,i)}su.schemaHasRulesForType=K9;function U3(e,u){return u.rules.some(t=>H3(e,t))}su.shouldUseGroup=U3;function H3(e,u){var t;return e[u.keyword]!==void 0||((t=u.definition.implements)===null||t===void 0?void 0:t.some(i=>e[i]!==void 0))}su.shouldUseRule=H3});var En=F(Ye=>{"use strict";Object.defineProperty(Ye,"__esModule",{value:!0});Ye.reportTypeError=Ye.checkDataTypes=Ye.checkDataType=Ye.coerceAndCheckDataType=Ye.getJSONTypes=Ye.getSchemaTypes=Ye.DataType=void 0;var J9=fa(),Z9=ra(),Q9=hn(),te=ee(),W3=fe(),hi=function(e){return e[e.Correct=0]="Correct",e[e.Wrong=1]="Wrong",e}(hi||(Ye.DataType=hi={}));function X9(e){let u=G3(e.type);if(u.includes("null")){if(e.nullable===!1)throw new Error("type: null contradicts nullable: false")}else{if(!u.length&&e.nullable!==void 0)throw new Error('"nullable" cannot be used without "type"');e.nullable===!0&&u.push("null")}return u}Ye.getSchemaTypes=X9;function G3(e){let u=Array.isArray(e)?e:e?[e]:[];if(u.every(J9.isJSONType))return u;throw new Error("type must be JSONType or JSONType[]: "+u.join(","))}Ye.getJSONTypes=G3;function Y9(e,u){let{gen:t,data:i,opts:n}=e,f=ey(u,n.coerceTypes),r=u.length>0&&!(f.length===0&&u.length===1&&(0,Z9.schemaHasRulesForType)(e,u[0]));if(r){let o=aa(u,i,n.strictNumbers,hi.Wrong);t.if(o,()=>{f.length?ty(e,u,f):Da(e)})}return r}Ye.coerceAndCheckDataType=Y9;var K3=new Set(["string","number","integer","boolean","null"]);function ey(e,u){return u?e.filter(t=>K3.has(t)||u==="array"&&t==="array"):[]}function ty(e,u,t){let{gen:i,data:n,opts:f}=e,r=i.let("dataType",(0,te._)`typeof ${n}`),o=i.let("coerced",(0,te._)`undefined`);f.coerceTypes==="array"&&i.if((0,te._)`${r} == 'object' && Array.isArray(${n}) && ${n}.length == 1`,()=>i.assign(n,(0,te._)`${n}[0]`).assign(r,(0,te._)`typeof ${n}`).if(aa(u,n,f.strictNumbers),()=>i.assign(o,n))),i.if((0,te._)`${o} !== undefined`);for(let D of t)(K3.has(D)||D==="array"&&f.coerceTypes==="array")&&a(D);i.else(),Da(e),i.endIf(),i.if((0,te._)`${o} !== undefined`,()=>{i.assign(n,o),uy(e,o)});function a(D){switch(D){case"string":i.elseIf((0,te._)`${r} == "number" || ${r} == "boolean"`).assign(o,(0,te._)`"" + ${n}`).elseIf((0,te._)`${n} === null`).assign(o,(0,te._)`""`);return;case"number":i.elseIf((0,te._)`${r} == "boolean" || ${n} === null
|
|
3
3
|
|| (${r} == "string" && ${n} && ${n} == +${n})`).assign(o,(0,te._)`+${n}`);return;case"integer":i.elseIf((0,te._)`${r} === "boolean" || ${n} === null
|
|
4
4
|
|| (${r} === "string" && ${n} && ${n} == +${n} && !(${n} % 1))`).assign(o,(0,te._)`+${n}`);return;case"boolean":i.elseIf((0,te._)`${n} === "false" || ${n} === 0 || ${n} === null`).assign(o,!1).elseIf((0,te._)`${n} === "true" || ${n} === 1`).assign(o,!0);return;case"null":i.elseIf((0,te._)`${n} === "" || ${n} === 0 || ${n} === false`),i.assign(o,null);return;case"array":i.elseIf((0,te._)`${r} === "string" || ${r} === "number"
|
|
@@ -17,7 +17,7 @@ Should be: [ [ object1, pointer1 ], [ object 2, pointer2 ], etc... ]`),n}}static
|
|
|
17
17
|
color: ${n?"#FFFFFF":"#000000"};
|
|
18
18
|
padding: 5px !important;
|
|
19
19
|
}
|
|
20
|
-
`;t.source.postMessage({action:"inline-style",style:o},t.origin)})}getConfigBlocks(){return this.pluginConfig}updateConfigBlocks(t){for(let i of t)i[this.pluginType]=this.pluginAlias;this.pluginConfig=t}schemaFormUpdated(){if(!(!this.iframe||!this.iframe.contentWindow)){if(this.schemaFormRecentlyRefreshed){this.schemaFormRecentlyRefreshed=!1;return}this.schemaFormRecentlyUpdated=!0,this.iframe.contentWindow.postMessage({action:"stream",event:"configChanged",data:this.pluginConfig},ou.api.origin)}}schemaFormRefresh(){if(this.schemaFormRecentlyUpdated){this.schemaFormRecentlyUpdated=!1;return}this.schemaFormRecentlyRefreshed=!0,this.showSchemaForm&&(this.showSchemaForm=!1,setTimeout(()=>{this.showSchemaForm=!0}))}formCreate(t,i,n,f,r){return H(this,null,function*(){yield this.formEnd(),this.formId=t,this.formSchema=i,this.formData=n,this.formSubmitButtonLabel=f,this.formCancelButtonLabel=r})}formEnd(){return H(this,null,function*(){this.formId&&(this.formId=void 0,this.formSchema=void 0,this.formData=void 0,this.formSubmitButtonLabel=void 0,this.formCancelButtonLabel=void 0,yield new Promise(t=>setTimeout(t)))})}formUpdated(t){this.iframe.contentWindow.postMessage({action:"stream",event:this.formId,data:{formEvent:"change",formData:t}},ou.api.origin)}formValidEvent(t){this.formValid=t}formActionEvent(t){this.iframe.contentWindow.postMessage({action:"stream",event:this.formId,data:{formEvent:t,formData:this.formData}},ou.api.origin)}handleGetCachedAccessories(t){return H(this,null,function*(){let i=yield ie(this.$api.get("/server/cached-accessories"));return this.requestResponse(t,i.filter(n=>n.plugin===this.plugin.name))})}savePluginConfig(t=!1){return H(this,null,function*(){var i;this.saveInProgress=!0;try{let n=yield ie(this.$api.post(`/config-editor/plugin/${encodeURIComponent(this.plugin.name)}`,this.pluginConfig));if(this.saveInProgress=!1,t){if(this.isFirstSave&&this.$settings.env.recommendChildBridges&&this.$settings.env.serviceMode&&((i=n[0])!=null&&i.platform)){this.$activeModal.close(),this.$plugin.bridgeSettings(this.plugin,!0);return}if(!["homebridge","homebridge-config-ui-x"].includes(this.plugin.name)&&this.$settings.env.serviceMode&&(yield this.getChildBridges(),this.childBridges.length>0)){this.$activeModal.close();let f=this.$modal.open(fi,{size:"lg",backdrop:"static"});f.componentInstance.bridges=this.childBridges.map(r=>({name:r.name,username:r.username}));return}this.$activeModal.close(),this.$modal.open(St,{size:"lg",backdrop:"static"})}}catch(n){this.saveInProgress=!1,console.error(n),this.$toastr.error(this.$translate.instant("config.failed_to_save_config"),this.$translate.instant("toast.title_error"))}})}getChildBridges(){return H(this,null,function*(){try{(yield ie(this.$api.get("/status/homebridge/child-bridges"))).forEach(i=>{this.plugin.name===i.plugin&&this.childBridges.push(i)})}catch(t){console.error(t),this.$toastr.error(t.message,this.$translate.instant("toast.title_error")),this.childBridges=[]}})}onIsValid(t){this.formIsValid=t}ngOnDestroy(){window.removeEventListener("message",this.handleMessage),this.io.end(),this.schemaFormRefreshSubject.complete(),this.schemaFormUpdatedSubject.complete(),this.formUpdatedSubject.complete()}static \u0275fac=function(i){return new(i||e)};static \u0275cmp=K({type:e,selectors:[["ng-component"]],viewQuery:function(i,n){i&1&&df(n.customPluginUiElementTarget,ZM,5),i&2&&cf()},inputs:{plugin:"plugin",schema:"schema",pluginConfig:"pluginConfig"},decls:24,vars:17,consts:[["custompluginui",""],[1,"modal-content"],[1,"modal-header"],[1,"modal-title"],["type","button","data-bs-dismiss","modal",1,"btn-close",3,"click","disabled"],[1,"modal-body","pb-0",2,"min-height","110px"],[1,"text-center","primary-text"],["width","100%","height","1px;","sandbox","allow-same-origin allow-scripts allow-popups allow-popups-to-escape-sandbox allow-downloads allow-forms",2,"border","0"],[1,"card","card-body"],[1,"loading-overlay","text-center","primary-text","d-flex","align-items-center","justify-content-center"],[1,"modal-footer","justify-content-between"],[1,"text-start"],["type","button","data-bs-dismiss","modal",1,"btn","btn-elegant",3,"click","disabled"],[1,"text-center"],[1,"text-end","d-flex","align-items-center","justify-content-end"],["container","modal","placement","top","openDelay","150","triggers","hover",1,"fa","fa-fw","fa-2xl","me-1",3,"ngClass","ngbTooltip"],["type","button","data-bs-dismiss","modal",1,"btn","btn-primary",3,"click","disabled"],[1,"fas","fa-fw","fa-spinner","fa-pulse"],[1,"fa","fa-fw","fa-cog","fa-spin",2,"font-size","75px"],[3,"dataChange","dataChanged","isValid","configSchema","data"],[1,"text-end","custom-form-action-buttons"],[1,"btn","btn-elegant"],[1,"btn","btn-primary",3,"disabled"],[1,"btn","btn-elegant",3,"click"],[1,"btn","btn-primary",3,"click","disabled"]],template:function(i,n){if(i&1){let f=z();d(0,"div",1)(1,"div",2)(2,"h5",3),h(3),c(),d(4,"button",4),_(5,"translate"),P("click",function(){return j(f),N(n.$activeModal.dismiss("Dismiss"))}),c()(),d(6,"div",5),S(7,QM,2,0,"div",6),w(8,"iframe",7,0),S(10,XM,2,2,"div",8)(11,tj,5,4,"div",8)(12,uj,2,0,"div",9),c(),d(13,"div",10)(14,"div",11)(15,"button",12),P("click",function(){return j(f),N(n.$activeModal.dismiss("Dismiss"))}),h(16),_(17,"translate"),c()(),w(18,"div",13),d(19,"div",14),S(20,ij,2,4,"i",15),d(21,"button",16),P("click",function(){return j(f),N(n.savePluginConfig(!0))}),S(22,nj,2,3)(23,fj,1,0,"i",17),c()()()()}i&2&&(s(3),R(n.plugin.displayName||n.plugin.name),s(),g("disabled",n.saveInProgress),W("aria-label",B(5,13,"form.button_close")),s(3),x(n.loading?7:-1),s(3),x(n.uiLoaded&&n.pluginConfig.length&&n.schema.singular&&n.showSchemaForm?10:-1),s(),x(n.formId?11:-1),s(),x(n.pluginSpinner?12:-1),s(3),g("disabled",n.saveInProgress),s(),q(" ",B(17,15,"form.button_close")," "),s(4),x(n.saveButtonDisabled?-1:20),s(),g("disabled",n.saveInProgress||n.saveButtonDisabled),s(),x(n.saveInProgress?-1:22),s(),x(n.saveInProgress?23:-1))},dependencies:[Ki,ti,Ct,ge],styles:[".manage-plugin-config-external-icons[_ngcontent-%COMP%]{font-size:1.5rem;font-weight:700;line-height:1;color:#000;opacity:.5;background-color:transparent;border:0}.loading-overlay[_ngcontent-%COMP%]{position:absolute;top:16px;left:16px;right:16px;bottom:16px;background-color:#ffffffb3} body.dark-mode .loading-overlay{background-color:#242424b3}.custom-form-action-buttons[_ngcontent-%COMP%] button[_ngcontent-%COMP%]:last-child{margin-right:2px}"]})}return e})();var fC=Oe(nC(),1);var Ji=(()=>{class e{el=$(nf);constructor(){}ngOnInit(){this.el.nativeElement.querySelectorAll("a").forEach(n=>{n.target="_blank",n.rel="noopener noreferrer"});let i=new fC.EmojiConvertor;this.el.nativeElement.innerHTML=i.replace_colons(this.el.nativeElement.innerHTML)}static \u0275fac=function(i){return new(i||e)};static \u0275dir=Gu({type:e,selectors:[["markdown"]]})}return e})();var rj=e=>({link:e});function oj(e,u){if(e&1&&(d(0,"div",5),w(1,"p",10),_(2,"translate"),c()),e&2){let t=C();s(),g("innerHTML",qe(2,1,"accessories.message_must_use_insecure_mode",At(4,rj,t.linkInsecure)),re)}}function aj(e,u){e&1&&(d(0,"p"),h(1),_(2,"translate"),c()),e&2&&(s(),R(B(2,1,"plugins.settings.custom.homebridge-gsh.message_account_link_required")))}function Dj(e,u){if(e&1){let t=z();d(0,"div",11)(1,"button",13),P("click",function(){j(t);let n=C(2);return N(n.linkAccount())}),h(2),_(3,"translate"),c()()}e&2&&(s(2),q(" ",B(3,1,"plugins.settings.custom.homebridge-gsh.label_link_account")," "))}function sj(e,u){e&1&&(d(0,"div",16)(1,"p",17)(2,"strong"),h(3),_(4,"translate"),c()()()),e&2&&(s(3),R(B(4,1,"plugins.settings.custom.homebridge-gsh.message_homebridge_restart_required")))}function lj(e,u){if(e&1&&(d(0,"div",12),w(1,"i",14),d(2,"h4",15),h(3),_(4,"titlecase"),_(5,"translate"),c(),S(6,sj,5,3,"div",16),c()),e&2){let t=C(2);s(3),Wt(" ",B(4,3,t.linkType)," ",B(5,5,"plugins.settings.custom.homebridge-gsh.label_account_linked")," "),s(3),x(t.justLinked?6:-1)}}function dj(e,u){if(e&1&&w(0,"markdown",18),e&2){let t=C(3);g("data",t.schema.footerDisplay)}}function cj(e,u){if(e&1){let t=z();d(0,"div",16),S(1,dj,1,1,"markdown",18),c(),d(2,"div",19)(3,"app-schema-form",20),we("dataChange",function(n){j(t);let f=C(2);return xe(f.gshConfig,n)||(f.gshConfig=n),N(n)}),c()()}if(e&2){let t=C(2);s(),x(t.schema.footerDisplay?1:-1),s(2),g("configSchema",t.schema),Be("data",t.gshConfig)}}function pj(e,u){if(e&1&&(d(0,"p"),h(1),_(2,"translate"),c(),S(3,aj,3,3,"p")(4,Dj,4,3,"div",11)(5,lj,7,7,"div",12)(6,cj,4,3)),e&2){let t=C();s(),R(B(2,5,"plugins.settings.custom.homebridge-gsh.message_about")),s(2),x(t.gshConfig.token?-1:3),s(),x(t.gshConfig.token?-1:4),s(),x(t.gshConfig.token?5:-1),s(),x(t.gshConfig&&t.gshConfig.token?6:-1)}}function mj(e,u){if(e&1){let t=z();d(0,"button",21),P("click",function(){j(t);let n=C();return N(n.unlinkAccount())}),h(1),_(2,"translate"),c()}e&2&&(s(),q(" ",B(2,1,"plugins.settings.custom.homebridge-gsh.label_unlink_account")," "))}function Fj(e,u){if(e&1){let t=z();d(0,"button",22),P("click",function(){j(t);let n=C();return N(n.saveAndClose())}),h(1),_(2,"translate"),c()}e&2&&(s(),q(" ",B(2,1,"form.button_save")," "))}var oC=(()=>{class e{$activeModal=$(Ce);$api=$(De);$jwtHelper=$(Us);$settings=$(ke);$toastr=$(ce);$translate=$(de);plugin;schema;pluginConfig;justLinked=!1;gshConfig;linkType;linkInsecure='<a href="https://github.com/homebridge/homebridge-config-ui-x/wiki/Enabling-Accessory-Control" target="_blank"><i class="fa fa-fw fa-external-link-alt primary-text"></i></a>';linkDomain="https://homebridge-gsh.iot.oz.nu";linkUrl=`${this.linkDomain}/link-account`;popup;originCheckInterval;constructor(){window.addEventListener("message",this.windowMessageListener,!1)}ngOnInit(){this.pluginConfig.length||this.pluginConfig.push({name:"Google Smart Home",platform:this.schema.pluginAlias}),this.gshConfig=this.pluginConfig[0],this.parseToken()}windowMessageListener=t=>{t.origin!==this.linkDomain&&(console.error("Refusing to process message from",t.origin),console.error(t));try{let i=JSON.parse(t.data);i.token&&this.processToken(i.token)}catch(i){console.error(i)}};linkAccount(){let n=window.top.outerHeight/2+window.top.screenY-350,f=window.top.outerWidth/2+window.top.screenX-450/2;this.popup=window.open(this.linkUrl,"oznu-google-smart-home-auth",`toolbar=no, location=no, directories=no, status=no, menubar=no scrollbars=no, resizable=no, copyhistory=no, width=450, height=700, top=${n}, left=${f}`),this.originCheckInterval=setInterval(()=>{this.popup.postMessage("origin-check",this.linkDomain)},2e3)}unlinkAccount(){this.gshConfig={name:"Google Smart Home",platform:this.schema.pluginAlias},this.pluginConfig.splice(0,this.pluginConfig.length),this.saveConfig()}processToken(t){clearInterval(this.originCheckInterval),this.popup&&this.popup.close(),this.gshConfig.token=t,this.gshConfig.notice="Keep your token a secret!",this.pluginConfig.length||this.pluginConfig.push(this.gshConfig),this.parseToken(),this.saveConfig()}parseToken(){if(this.gshConfig.token)try{let t=this.$jwtHelper.decodeToken(this.gshConfig.token);this.linkType=t.id.split("|")[0].split("-")[0]}catch(t){console.error(t),this.$toastr.error(this.$translate.instant("plugins.settings.custom.homebridge-gsh.message_invalid_token"),this.$translate.instant("toast.title_error")),delete this.gshConfig.token}}saveConfig(){return H(this,null,function*(){try{yield ie(this.$api.post(`/config-editor/plugin/${encodeURIComponent(this.plugin.name)}`,this.pluginConfig)),this.justLinked=!0,this.$toastr.success(this.$translate.instant("plugins.settings.restart_required"),this.$translate.instant("plugins.settings.plugin_config_saved"))}catch(t){console.error(t),this.$toastr.error(this.$translate.instant("config.failed_to_save_config"),this.$translate.instant("toast.title_error"))}})}saveAndClose(){return H(this,null,function*(){this.gshConfig.platform=this.schema.pluginAlias,this.pluginConfig[0]=this.gshConfig,yield this.saveConfig(),this.$activeModal.close()})}close(){this.$activeModal.close()}ngOnDestroy(){clearInterval(this.originCheckInterval),window.removeEventListener("message",this.windowMessageListener),this.popup&&this.popup.close()}static \u0275fac=function(i){return new(i||e)};static \u0275cmp=K({type:e,selectors:[["app-homebridge-google-smarthome"]],inputs:{plugin:"plugin",schema:"schema",pluginConfig:"pluginConfig"},decls:15,vars:10,consts:[[1,"modal-content"],[1,"modal-header"],[1,"modal-title"],["type","button","data-bs-dismiss","modal",1,"btn-close",3,"click"],[1,"modal-body"],["role","alert",1,"alert","alert-warning"],[1,"modal-footer"],["type","button","data-bs-dismiss","modal",1,"btn","btn-elegant","me-auto"],["type","button","data-bs-dismiss","modal",1,"btn","btn-elegant",3,"click"],["type","button","data-bs-dismiss","modal",1,"btn","btn-primary"],[1,"mb-0",3,"innerHTML"],[1,"text-center"],[1,"text-center","mt-1"],[1,"btn","btn-primary","btn-lg",3,"click"],[1,"fas","fa-fw","fa-check-circle","primary-text",2,"font-size","50px"],[1,"mt-2"],[1,"mt-3"],[1,"primary-text"],[1,"plugin-md",3,"data"],[1,"card","p-2","pt-3","mt-4"],[3,"dataChange","configSchema","data"],["type","button","data-bs-dismiss","modal",1,"btn","btn-elegant","me-auto",3,"click"],["type","button","data-bs-dismiss","modal",1,"btn","btn-primary",3,"click"]],template:function(i,n){i&1&&(d(0,"div",0)(1,"div",1)(2,"h5",2),h(3,"Homebridge Google Smart Home"),c(),d(4,"button",3),_(5,"translate"),P("click",function(){return n.$activeModal.dismiss("Dismiss")}),c()(),d(6,"div",4),S(7,oj,3,6,"div",5)(8,pj,7,7),c(),d(9,"div",6),S(10,mj,3,3,"button",7),d(11,"button",8),P("click",function(){return n.close()}),h(12),_(13,"translate"),c(),S(14,Fj,3,3,"button",9),c()()),i&2&&(s(4),W("aria-label",B(5,6,"form.button_close")),s(3),x(n.$settings.env.enableAccessories?-1:7),s(),x(n.$settings.env.enableAccessories?8:-1),s(2),x(n.gshConfig.token?10:-1),s(2),q(" ",B(13,8,"form.button_close")," "),s(2),x(n.gshConfig.token?14:-1))},dependencies:[ni,ii,Ji,Ki,Ps,ge],encapsulation:2})}return e})();var aC=(()=>{class e{$api=$(De);$modal=$(Ue);plugins={"homebridge-gsh":oC};constructor(){}openSettings(t,i){return H(this,null,function*(){let n=yield this.loadPluginConfig(t.name),f=this.$modal.open(this.plugins[t.name],{size:"lg",backdrop:"static"});return f.componentInstance.plugin=t,f.componentInstance.schema=i,f.componentInstance.pluginConfig=n,f.result.catch(()=>{})})}openCustomSettingsUi(t,i){return H(this,null,function*(){let n=yield this.loadPluginConfig(t.name),f=this.$modal.open(iC,{size:"lg",backdrop:"static"});return f.componentInstance.plugin=t,f.componentInstance.schema=i,f.componentInstance.pluginConfig=n,f.result.catch(()=>{})})}loadPluginConfig(t){return H(this,null,function*(){return ie(this.$api.get(`/config-editor/plugin/${encodeURIComponent(t)}`))})}static \u0275fac=function(i){return new(i||e)};static \u0275prov=Bt({token:e,factory:e.\u0275fac,providedIn:"root"})}return e})();var cC=Oe(tn(),1);var pC=Oe(Hs(),1),mC=Oe(Ws(),1);function Cj(e,u){e&1&&(d(0,"div",5),w(1,"i",12),c())}function gj(e,u){e&1&&(d(0,"div",15),w(1,"i",16),c(),d(2,"ul",17)(3,"li"),h(4," All your plugins are marked as compatible with the new version of Homebridge. You are all set to continue below. "),c()())}function hj(e,u){e&1&&(d(0,"div",15),w(1,"i",18),c(),d(2,"ul",17)(3,"li"),h(4,"Some of your plugins are not explicitly marked as compatible with the new version of Homebridge."),c(),d(5,"li"),h(6," This does "),d(7,"span",19),h(8,"not"),c(),h(9," necessarily mean that they won't work. We just can't guarantee that they will. "),c(),d(10,"li"),h(11," For more information about this update, please see the "),d(12,"a",20),h(13,"wiki page"),c(),h(14,". "),c(),d(15,"li"),h(16,"To ignore this warning and continue with the update, click continue below."),c()())}function Ej(e,u){e&1&&w(0,"i",21)}function bj(e,u){e&1&&w(0,"i",22)}function _j(e,u){if(e&1&&(d(0,"li",14),h(1),S(2,Ej,1,0,"i",21)(3,bj,1,0,"i",22),c()),e&2){let t=u.$implicit;s(),q(" ",t.displayName," "),s(),x(t.hb2Ready==="supported"?2:-1),s(),x(t.hb2Ready==="unknown"?3:-1)}}function yj(e,u){if(e&1&&(S(0,gj,5,0)(1,hj,17,0),d(2,"ul",13),We(3,_j,4,3,"li",14,He),c()),e&2){let t=C();x(t.allPluginsSupported?0:-1),s(),x(t.allPluginsSupported?-1:1),s(2),Ge(t.installedPlugins)}}var DC=(()=>{class e{$activeModal=$(Ce);$api=$(De);$settings=$(ke);$toastr=$(ce);$translate=$(de);loading=!0;installedPlugins=[];allPluginsSupported=!0;constructor(){}ngOnInit(){this.loadInstalledPlugins()}loadInstalledPlugins(){return H(this,null,function*(){this.installedPlugins=[],this.loading=!0;let t=this.$settings.env.homebridgeVersion.split(".")[0];try{let i=yield ie(this.$api.get("/plugins"));this.installedPlugins=i.filter(n=>n.name!=="homebridge-config-ui-x").map(n=>{var o,a;let f=((a=(o=n.engines)==null?void 0:o.homebridge)==null?void 0:a.split("||").map(D=>D.trim()))||[],r=t==="2"?"hide":f.some(D=>D.startsWith("^2")||D.startsWith(">=2"))?"supported":"unknown";return r==="unknown"&&(this.allPluginsSupported=!1),Ee(Z({},n),{hb2Ready:r})}),this.installedPlugins.length===0&&this.$activeModal.close("update"),this.loading=!1}catch(i){console.error(i),this.$toastr.error(this.$translate.instant("plugins.toast_failed_to_load_plugins"),this.$translate.instant("toast.title_error"))}})}static \u0275fac=function(i){return new(i||e)};static \u0275cmp=K({type:e,selectors:[["ng-component"]],decls:20,vars:15,consts:[[1,"modal-content"],[1,"modal-header"],[1,"modal-title"],["type","button","data-bs-dismiss","modal",1,"btn-close",3,"click"],[1,"modal-body"],[1,"w-100","text-center","primary-text"],[1,"modal-footer","justify-content-between"],[1,"text-start"],["type","button","data-bs-dismiss","modal",1,"btn","btn-elegant",3,"click"],[1,"text-center"],[1,"text-end"],["type","button","data-bs-dismiss","modal",1,"btn","btn-primary",3,"click","disabled"],[1,"fa","fa-fw","fa-cog","fa-spin",2,"font-size","75px"],[1,"list-group","list-group-box","mb-0"],[1,"list-group-item","d-flex","flex-row","flex-wrap","justify-content-between"],[1,"text-center","mb-3"],[1,"fas","fa-fw","fa-check-circle","primary-text",2,"font-size","75px"],[1,"mb-3"],[1,"fas","fa-fw","fa-info-circle","primary-text",2,"font-size","75px"],[1,"fw-bold"],["href","https://github.com/homebridge/homebridge/wiki/Updating-To-Homebridge-v2.0","target","_blank"],["aria-label","The developer has specifically marked this plugin as compatible with Homebridge v2.0",1,"fas","fa-check-circle","green-text","fa-xl","ms-2"],["aria-label","The developer has not specifically marked this plugin as compatible with Homebridge v2.0, but it may still work.",1,"fas","fa-question-circle","orange-text","fa-xl","ms-2"]],template:function(i,n){i&1&&(d(0,"div",0)(1,"div",1)(2,"h5",2),h(3,"Homebridge v2 Update"),c(),d(4,"button",3),_(5,"translate"),P("click",function(){return n.$activeModal.close("Dismiss")}),c()(),d(6,"div",4),S(7,Cj,2,0,"div",5)(8,yj,5,2),c(),d(9,"div",6)(10,"div",7)(11,"button",8),_(12,"translate"),P("click",function(){return n.$activeModal.close("Dismiss")}),h(13),_(14,"translate"),c()(),w(15,"div",9),d(16,"div",10)(17,"button",11),P("click",function(){return n.$activeModal.close("update")}),h(18),_(19,"translate"),c()()()()),i&2&&(s(4),W("aria-label",B(5,7,"form.button_close")),s(3),x(n.loading?7:-1),s(),x(n.loading?-1:8),s(3),W("aria-label",B(12,9,"form.button_close")),s(2),q(" ",B(14,11,"form.button_close")," "),s(4),g("disabled",n.loading),s(),q(" ",B(19,13,"plugins.node_update.continue")," "))},dependencies:[ge],encapsulation:2})}return e})();var sC=Oe(tn(),1);var vj=["pluginlogoutput"],lC=(()=>{class e{$activeModal=$(Ce);$api=$(De);$log=$(Zs);$modal=$(Ue);$toastr=$(ce);$translate=$(de);plugin;termTarget=of("pluginlogoutput");resizeEvent=new ct;pluginAlias;constructor(){}onWindowResize(){this.resizeEvent.next(void 0)}ngOnInit(){this.getPluginLog()}getPluginLog(){this.$api.get(`/config-editor/plugin/${encodeURIComponent(this.plugin.name)}`).subscribe({next:t=>{var i;this.pluginAlias=this.plugin.name==="homebridge-config-ui-x"?"Homebridge UI":((i=t[0])==null?void 0:i.name)||this.plugin.name,this.$log.startTerminal(this.termTarget(),{},this.resizeEvent,this.pluginAlias)},error:t=>{console.error(t),this.$toastr.error(t.error.message||t.message,this.$translate.instant("toast.title_error")),this.$activeModal.dismiss()}})}downloadLogFile(){let t=this.$modal.open(Gs,{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?colour=yes",{observe:"response",responseType:"text"}).subscribe({next:i=>{if(!i.body)return;let n=i.body.split(`
|
|
20
|
+
`;t.source.postMessage({action:"inline-style",style:o},t.origin)})}getConfigBlocks(){return this.pluginConfig}updateConfigBlocks(t){for(let i of t)i[this.pluginType]=this.pluginAlias;this.pluginConfig=t}schemaFormUpdated(){if(!(!this.iframe||!this.iframe.contentWindow)){if(this.schemaFormRecentlyRefreshed){this.schemaFormRecentlyRefreshed=!1;return}this.schemaFormRecentlyUpdated=!0,this.iframe.contentWindow.postMessage({action:"stream",event:"configChanged",data:this.pluginConfig},ou.api.origin)}}schemaFormRefresh(){if(this.schemaFormRecentlyUpdated){this.schemaFormRecentlyUpdated=!1;return}this.schemaFormRecentlyRefreshed=!0,this.showSchemaForm&&(this.showSchemaForm=!1,setTimeout(()=>{this.showSchemaForm=!0}))}formCreate(t,i,n,f,r){return H(this,null,function*(){yield this.formEnd(),this.formId=t,this.formSchema=i,this.formData=n,this.formSubmitButtonLabel=f,this.formCancelButtonLabel=r})}formEnd(){return H(this,null,function*(){this.formId&&(this.formId=void 0,this.formSchema=void 0,this.formData=void 0,this.formSubmitButtonLabel=void 0,this.formCancelButtonLabel=void 0,yield new Promise(t=>setTimeout(t)))})}formUpdated(t){this.iframe.contentWindow.postMessage({action:"stream",event:this.formId,data:{formEvent:"change",formData:t}},ou.api.origin)}formValidEvent(t){this.formValid=t}formActionEvent(t){this.iframe.contentWindow.postMessage({action:"stream",event:this.formId,data:{formEvent:t,formData:this.formData}},ou.api.origin)}handleGetCachedAccessories(t){return H(this,null,function*(){let i=yield ie(this.$api.get("/server/cached-accessories"));return this.requestResponse(t,i.filter(n=>n.plugin===this.plugin.name))})}savePluginConfig(t=!1){return H(this,null,function*(){var i;this.saveInProgress=!0;try{let n=yield ie(this.$api.post(`/config-editor/plugin/${encodeURIComponent(this.plugin.name)}`,this.pluginConfig));if(this.saveInProgress=!1,t){if(this.isFirstSave&&this.$settings.env.recommendChildBridges&&this.$settings.env.serviceMode&&((i=n[0])!=null&&i.platform)){this.$activeModal.close(),this.$plugin.bridgeSettings(this.plugin,!0);return}if(!["homebridge","homebridge-config-ui-x"].includes(this.plugin.name)&&this.$settings.env.serviceMode&&(yield this.getChildBridges(),this.childBridges.length>0)){this.$activeModal.close();let f=this.$modal.open(fi,{size:"lg",backdrop:"static"});f.componentInstance.bridges=this.childBridges.map(r=>({name:r.name,username:r.username}));return}this.$activeModal.close(),this.$modal.open(St,{size:"lg",backdrop:"static"})}}catch(n){this.saveInProgress=!1,console.error(n),this.$toastr.error(this.$translate.instant("config.failed_to_save_config"),this.$translate.instant("toast.title_error"))}})}getChildBridges(){return H(this,null,function*(){try{(yield ie(this.$api.get("/status/homebridge/child-bridges"))).forEach(i=>{this.plugin.name===i.plugin&&this.childBridges.push(i)})}catch(t){console.error(t),this.$toastr.error(t.message,this.$translate.instant("toast.title_error")),this.childBridges=[]}})}onIsValid(t){this.formIsValid=t}ngOnDestroy(){window.removeEventListener("message",this.handleMessage),this.io.end(),this.schemaFormRefreshSubject.complete(),this.schemaFormUpdatedSubject.complete(),this.formUpdatedSubject.complete()}static \u0275fac=function(i){return new(i||e)};static \u0275cmp=K({type:e,selectors:[["ng-component"]],viewQuery:function(i,n){i&1&&df(n.customPluginUiElementTarget,ZM,5),i&2&&cf()},inputs:{plugin:"plugin",schema:"schema",pluginConfig:"pluginConfig"},decls:24,vars:17,consts:[["custompluginui",""],[1,"modal-content"],[1,"modal-header"],[1,"modal-title"],["type","button","data-bs-dismiss","modal",1,"btn-close",3,"click","disabled"],[1,"modal-body","pb-0",2,"min-height","110px"],[1,"text-center","primary-text"],["width","100%","height","1px;","sandbox","allow-same-origin allow-scripts allow-popups allow-popups-to-escape-sandbox allow-downloads allow-forms",2,"border","0"],[1,"card","card-body"],[1,"loading-overlay","text-center","primary-text","d-flex","align-items-center","justify-content-center"],[1,"modal-footer","justify-content-between"],[1,"text-start"],["type","button","data-bs-dismiss","modal",1,"btn","btn-elegant",3,"click","disabled"],[1,"text-center"],[1,"text-end","d-flex","align-items-center","justify-content-end"],["container","modal","placement","top","openDelay","150","triggers","hover",1,"fa","fa-fw","fa-xl","me-2",3,"ngClass","ngbTooltip"],["type","button","data-bs-dismiss","modal",1,"btn","btn-primary",3,"click","disabled"],[1,"fas","fa-fw","fa-spinner","fa-pulse"],[1,"fa","fa-fw","fa-cog","fa-spin",2,"font-size","75px"],[3,"dataChange","dataChanged","isValid","configSchema","data"],[1,"text-end","custom-form-action-buttons"],[1,"btn","btn-elegant"],[1,"btn","btn-primary",3,"disabled"],[1,"btn","btn-elegant",3,"click"],[1,"btn","btn-primary",3,"click","disabled"]],template:function(i,n){if(i&1){let f=z();d(0,"div",1)(1,"div",2)(2,"h5",3),h(3),c(),d(4,"button",4),_(5,"translate"),P("click",function(){return j(f),N(n.$activeModal.dismiss("Dismiss"))}),c()(),d(6,"div",5),S(7,QM,2,0,"div",6),w(8,"iframe",7,0),S(10,XM,2,2,"div",8)(11,tj,5,4,"div",8)(12,uj,2,0,"div",9),c(),d(13,"div",10)(14,"div",11)(15,"button",12),P("click",function(){return j(f),N(n.$activeModal.dismiss("Dismiss"))}),h(16),_(17,"translate"),c()(),w(18,"div",13),d(19,"div",14),S(20,ij,2,4,"i",15),d(21,"button",16),P("click",function(){return j(f),N(n.savePluginConfig(!0))}),S(22,nj,2,3)(23,fj,1,0,"i",17),c()()()()}i&2&&(s(3),R(n.plugin.displayName||n.plugin.name),s(),g("disabled",n.saveInProgress),W("aria-label",B(5,13,"form.button_close")),s(3),x(n.loading?7:-1),s(3),x(n.uiLoaded&&n.pluginConfig.length&&n.schema.singular&&n.showSchemaForm?10:-1),s(),x(n.formId?11:-1),s(),x(n.pluginSpinner?12:-1),s(3),g("disabled",n.saveInProgress),s(),q(" ",B(17,15,"form.button_close")," "),s(4),x(n.saveButtonDisabled?-1:20),s(),g("disabled",n.saveInProgress||n.saveButtonDisabled),s(),x(n.saveInProgress?-1:22),s(),x(n.saveInProgress?23:-1))},dependencies:[Ki,ti,Ct,ge],styles:[".manage-plugin-config-external-icons[_ngcontent-%COMP%]{font-size:1.5rem;font-weight:700;line-height:1;color:#000;opacity:.5;background-color:transparent;border:0}.loading-overlay[_ngcontent-%COMP%]{position:absolute;top:16px;left:16px;right:16px;bottom:16px;background-color:#ffffffb3} body.dark-mode .loading-overlay{background-color:#242424b3}.custom-form-action-buttons[_ngcontent-%COMP%] button[_ngcontent-%COMP%]:last-child{margin-right:2px}"]})}return e})();var fC=Oe(nC(),1);var Ji=(()=>{class e{el=$(nf);constructor(){}ngOnInit(){this.el.nativeElement.querySelectorAll("a").forEach(n=>{n.target="_blank",n.rel="noopener noreferrer"});let i=new fC.EmojiConvertor;this.el.nativeElement.innerHTML=i.replace_colons(this.el.nativeElement.innerHTML)}static \u0275fac=function(i){return new(i||e)};static \u0275dir=Gu({type:e,selectors:[["markdown"]]})}return e})();var rj=e=>({link:e});function oj(e,u){if(e&1&&(d(0,"div",5),w(1,"p",10),_(2,"translate"),c()),e&2){let t=C();s(),g("innerHTML",qe(2,1,"accessories.message_must_use_insecure_mode",At(4,rj,t.linkInsecure)),re)}}function aj(e,u){e&1&&(d(0,"p"),h(1),_(2,"translate"),c()),e&2&&(s(),R(B(2,1,"plugins.settings.custom.homebridge-gsh.message_account_link_required")))}function Dj(e,u){if(e&1){let t=z();d(0,"div",11)(1,"button",13),P("click",function(){j(t);let n=C(2);return N(n.linkAccount())}),h(2),_(3,"translate"),c()()}e&2&&(s(2),q(" ",B(3,1,"plugins.settings.custom.homebridge-gsh.label_link_account")," "))}function sj(e,u){e&1&&(d(0,"div",16)(1,"p",17)(2,"strong"),h(3),_(4,"translate"),c()()()),e&2&&(s(3),R(B(4,1,"plugins.settings.custom.homebridge-gsh.message_homebridge_restart_required")))}function lj(e,u){if(e&1&&(d(0,"div",12),w(1,"i",14),d(2,"h4",15),h(3),_(4,"titlecase"),_(5,"translate"),c(),S(6,sj,5,3,"div",16),c()),e&2){let t=C(2);s(3),Wt(" ",B(4,3,t.linkType)," ",B(5,5,"plugins.settings.custom.homebridge-gsh.label_account_linked")," "),s(3),x(t.justLinked?6:-1)}}function dj(e,u){if(e&1&&w(0,"markdown",18),e&2){let t=C(3);g("data",t.schema.footerDisplay)}}function cj(e,u){if(e&1){let t=z();d(0,"div",16),S(1,dj,1,1,"markdown",18),c(),d(2,"div",19)(3,"app-schema-form",20),we("dataChange",function(n){j(t);let f=C(2);return xe(f.gshConfig,n)||(f.gshConfig=n),N(n)}),c()()}if(e&2){let t=C(2);s(),x(t.schema.footerDisplay?1:-1),s(2),g("configSchema",t.schema),Be("data",t.gshConfig)}}function pj(e,u){if(e&1&&(d(0,"p"),h(1),_(2,"translate"),c(),S(3,aj,3,3,"p")(4,Dj,4,3,"div",11)(5,lj,7,7,"div",12)(6,cj,4,3)),e&2){let t=C();s(),R(B(2,5,"plugins.settings.custom.homebridge-gsh.message_about")),s(2),x(t.gshConfig.token?-1:3),s(),x(t.gshConfig.token?-1:4),s(),x(t.gshConfig.token?5:-1),s(),x(t.gshConfig&&t.gshConfig.token?6:-1)}}function mj(e,u){if(e&1){let t=z();d(0,"button",21),P("click",function(){j(t);let n=C();return N(n.unlinkAccount())}),h(1),_(2,"translate"),c()}e&2&&(s(),q(" ",B(2,1,"plugins.settings.custom.homebridge-gsh.label_unlink_account")," "))}function Fj(e,u){if(e&1){let t=z();d(0,"button",22),P("click",function(){j(t);let n=C();return N(n.saveAndClose())}),h(1),_(2,"translate"),c()}e&2&&(s(),q(" ",B(2,1,"form.button_save")," "))}var oC=(()=>{class e{$activeModal=$(Ce);$api=$(De);$jwtHelper=$(Us);$settings=$(ke);$toastr=$(ce);$translate=$(de);plugin;schema;pluginConfig;justLinked=!1;gshConfig;linkType;linkInsecure='<a href="https://github.com/homebridge/homebridge-config-ui-x/wiki/Enabling-Accessory-Control" target="_blank"><i class="fa fa-fw fa-external-link-alt primary-text"></i></a>';linkDomain="https://homebridge-gsh.iot.oz.nu";linkUrl=`${this.linkDomain}/link-account`;popup;originCheckInterval;constructor(){window.addEventListener("message",this.windowMessageListener,!1)}ngOnInit(){this.pluginConfig.length||this.pluginConfig.push({name:"Google Smart Home",platform:this.schema.pluginAlias}),this.gshConfig=this.pluginConfig[0],this.parseToken()}windowMessageListener=t=>{t.origin!==this.linkDomain&&(console.error("Refusing to process message from",t.origin),console.error(t));try{let i=JSON.parse(t.data);i.token&&this.processToken(i.token)}catch(i){console.error(i)}};linkAccount(){let n=window.top.outerHeight/2+window.top.screenY-350,f=window.top.outerWidth/2+window.top.screenX-450/2;this.popup=window.open(this.linkUrl,"oznu-google-smart-home-auth",`toolbar=no, location=no, directories=no, status=no, menubar=no scrollbars=no, resizable=no, copyhistory=no, width=450, height=700, top=${n}, left=${f}`),this.originCheckInterval=setInterval(()=>{this.popup.postMessage("origin-check",this.linkDomain)},2e3)}unlinkAccount(){this.gshConfig={name:"Google Smart Home",platform:this.schema.pluginAlias},this.pluginConfig.splice(0,this.pluginConfig.length),this.saveConfig()}processToken(t){clearInterval(this.originCheckInterval),this.popup&&this.popup.close(),this.gshConfig.token=t,this.gshConfig.notice="Keep your token a secret!",this.pluginConfig.length||this.pluginConfig.push(this.gshConfig),this.parseToken(),this.saveConfig()}parseToken(){if(this.gshConfig.token)try{let t=this.$jwtHelper.decodeToken(this.gshConfig.token);this.linkType=t.id.split("|")[0].split("-")[0]}catch(t){console.error(t),this.$toastr.error(this.$translate.instant("plugins.settings.custom.homebridge-gsh.message_invalid_token"),this.$translate.instant("toast.title_error")),delete this.gshConfig.token}}saveConfig(){return H(this,null,function*(){try{yield ie(this.$api.post(`/config-editor/plugin/${encodeURIComponent(this.plugin.name)}`,this.pluginConfig)),this.justLinked=!0,this.$toastr.success(this.$translate.instant("plugins.settings.restart_required"),this.$translate.instant("plugins.settings.plugin_config_saved"))}catch(t){console.error(t),this.$toastr.error(this.$translate.instant("config.failed_to_save_config"),this.$translate.instant("toast.title_error"))}})}saveAndClose(){return H(this,null,function*(){this.gshConfig.platform=this.schema.pluginAlias,this.pluginConfig[0]=this.gshConfig,yield this.saveConfig(),this.$activeModal.close()})}close(){this.$activeModal.close()}ngOnDestroy(){clearInterval(this.originCheckInterval),window.removeEventListener("message",this.windowMessageListener),this.popup&&this.popup.close()}static \u0275fac=function(i){return new(i||e)};static \u0275cmp=K({type:e,selectors:[["app-homebridge-google-smarthome"]],inputs:{plugin:"plugin",schema:"schema",pluginConfig:"pluginConfig"},decls:15,vars:10,consts:[[1,"modal-content"],[1,"modal-header"],[1,"modal-title"],["type","button","data-bs-dismiss","modal",1,"btn-close",3,"click"],[1,"modal-body"],["role","alert",1,"alert","alert-warning"],[1,"modal-footer"],["type","button","data-bs-dismiss","modal",1,"btn","btn-elegant","me-auto"],["type","button","data-bs-dismiss","modal",1,"btn","btn-elegant",3,"click"],["type","button","data-bs-dismiss","modal",1,"btn","btn-primary"],[1,"mb-0",3,"innerHTML"],[1,"text-center"],[1,"text-center","mt-1"],[1,"btn","btn-primary","btn-lg",3,"click"],[1,"fas","fa-fw","fa-check-circle","primary-text",2,"font-size","50px"],[1,"mt-2"],[1,"mt-3"],[1,"primary-text"],[1,"plugin-md",3,"data"],[1,"card","p-2","pt-3","mt-4"],[3,"dataChange","configSchema","data"],["type","button","data-bs-dismiss","modal",1,"btn","btn-elegant","me-auto",3,"click"],["type","button","data-bs-dismiss","modal",1,"btn","btn-primary",3,"click"]],template:function(i,n){i&1&&(d(0,"div",0)(1,"div",1)(2,"h5",2),h(3,"Homebridge Google Smart Home"),c(),d(4,"button",3),_(5,"translate"),P("click",function(){return n.$activeModal.dismiss("Dismiss")}),c()(),d(6,"div",4),S(7,oj,3,6,"div",5)(8,pj,7,7),c(),d(9,"div",6),S(10,mj,3,3,"button",7),d(11,"button",8),P("click",function(){return n.close()}),h(12),_(13,"translate"),c(),S(14,Fj,3,3,"button",9),c()()),i&2&&(s(4),W("aria-label",B(5,6,"form.button_close")),s(3),x(n.$settings.env.enableAccessories?-1:7),s(),x(n.$settings.env.enableAccessories?8:-1),s(2),x(n.gshConfig.token?10:-1),s(2),q(" ",B(13,8,"form.button_close")," "),s(2),x(n.gshConfig.token?14:-1))},dependencies:[ni,ii,Ji,Ki,Ps,ge],encapsulation:2})}return e})();var aC=(()=>{class e{$api=$(De);$modal=$(Ue);plugins={"homebridge-gsh":oC};constructor(){}openSettings(t,i){return H(this,null,function*(){let n=yield this.loadPluginConfig(t.name),f=this.$modal.open(this.plugins[t.name],{size:"lg",backdrop:"static"});return f.componentInstance.plugin=t,f.componentInstance.schema=i,f.componentInstance.pluginConfig=n,f.result.catch(()=>{})})}openCustomSettingsUi(t,i){return H(this,null,function*(){let n=yield this.loadPluginConfig(t.name),f=this.$modal.open(iC,{size:"lg",backdrop:"static"});return f.componentInstance.plugin=t,f.componentInstance.schema=i,f.componentInstance.pluginConfig=n,f.result.catch(()=>{})})}loadPluginConfig(t){return H(this,null,function*(){return ie(this.$api.get(`/config-editor/plugin/${encodeURIComponent(t)}`))})}static \u0275fac=function(i){return new(i||e)};static \u0275prov=Bt({token:e,factory:e.\u0275fac,providedIn:"root"})}return e})();var cC=Oe(tn(),1);var pC=Oe(Hs(),1),mC=Oe(Ws(),1);function Cj(e,u){e&1&&(d(0,"div",5),w(1,"i",12),c())}function gj(e,u){e&1&&(d(0,"div",15),w(1,"i",16),c(),d(2,"ul",17)(3,"li"),h(4," All your plugins are marked as compatible with the new version of Homebridge. You are all set to continue below. "),c()())}function hj(e,u){e&1&&(d(0,"div",15),w(1,"i",18),c(),d(2,"ul",17)(3,"li"),h(4,"Some of your plugins are not explicitly marked as compatible with the new version of Homebridge."),c(),d(5,"li"),h(6," This does "),d(7,"span",19),h(8,"not"),c(),h(9," necessarily mean that they won't work. We just can't guarantee that they will. "),c(),d(10,"li"),h(11," For more information about this update, please see the "),d(12,"a",20),h(13,"wiki page"),c(),h(14,". "),c(),d(15,"li"),h(16,"To ignore this warning and continue with the update, click continue below."),c()())}function Ej(e,u){e&1&&w(0,"i",21)}function bj(e,u){e&1&&w(0,"i",22)}function _j(e,u){if(e&1&&(d(0,"li",14),h(1),S(2,Ej,1,0,"i",21)(3,bj,1,0,"i",22),c()),e&2){let t=u.$implicit;s(),q(" ",t.displayName," "),s(),x(t.hb2Ready==="supported"?2:-1),s(),x(t.hb2Ready==="unknown"?3:-1)}}function yj(e,u){if(e&1&&(S(0,gj,5,0)(1,hj,17,0),d(2,"ul",13),We(3,_j,4,3,"li",14,He),c()),e&2){let t=C();x(t.allPluginsSupported?0:-1),s(),x(t.allPluginsSupported?-1:1),s(2),Ge(t.installedPlugins)}}var DC=(()=>{class e{$activeModal=$(Ce);$api=$(De);$settings=$(ke);$toastr=$(ce);$translate=$(de);loading=!0;installedPlugins=[];allPluginsSupported=!0;constructor(){}ngOnInit(){this.loadInstalledPlugins()}loadInstalledPlugins(){return H(this,null,function*(){this.installedPlugins=[],this.loading=!0;let t=this.$settings.env.homebridgeVersion.split(".")[0];try{let i=yield ie(this.$api.get("/plugins"));this.installedPlugins=i.filter(n=>n.name!=="homebridge-config-ui-x").map(n=>{var o,a;let f=((a=(o=n.engines)==null?void 0:o.homebridge)==null?void 0:a.split("||").map(D=>D.trim()))||[],r=t==="2"?"hide":f.some(D=>D.startsWith("^2")||D.startsWith(">=2"))?"supported":"unknown";return r==="unknown"&&(this.allPluginsSupported=!1),Ee(Z({},n),{hb2Ready:r})}),this.installedPlugins.length===0&&this.$activeModal.close("update"),this.loading=!1}catch(i){console.error(i),this.$toastr.error(this.$translate.instant("plugins.toast_failed_to_load_plugins"),this.$translate.instant("toast.title_error"))}})}static \u0275fac=function(i){return new(i||e)};static \u0275cmp=K({type:e,selectors:[["ng-component"]],decls:20,vars:15,consts:[[1,"modal-content"],[1,"modal-header"],[1,"modal-title"],["type","button","data-bs-dismiss","modal",1,"btn-close",3,"click"],[1,"modal-body"],[1,"w-100","text-center","primary-text"],[1,"modal-footer","justify-content-between"],[1,"text-start"],["type","button","data-bs-dismiss","modal",1,"btn","btn-elegant",3,"click"],[1,"text-center"],[1,"text-end"],["type","button","data-bs-dismiss","modal",1,"btn","btn-primary",3,"click","disabled"],[1,"fa","fa-fw","fa-cog","fa-spin",2,"font-size","75px"],[1,"list-group","list-group-box","mb-0"],[1,"list-group-item","d-flex","flex-row","flex-wrap","justify-content-between"],[1,"text-center","mb-3"],[1,"fas","fa-fw","fa-check-circle","primary-text",2,"font-size","75px"],[1,"mb-3"],[1,"fas","fa-fw","fa-info-circle","primary-text",2,"font-size","75px"],[1,"fw-bold"],["href","https://github.com/homebridge/homebridge/wiki/Updating-To-Homebridge-v2.0","target","_blank"],["aria-label","The developer has specifically marked this plugin as compatible with Homebridge v2.0",1,"fas","fa-check-circle","green-text","fa-xl","ms-2"],["aria-label","The developer has not specifically marked this plugin as compatible with Homebridge v2.0, but it may still work.",1,"fas","fa-question-circle","orange-text","fa-xl","ms-2"]],template:function(i,n){i&1&&(d(0,"div",0)(1,"div",1)(2,"h5",2),h(3,"Homebridge v2 Update"),c(),d(4,"button",3),_(5,"translate"),P("click",function(){return n.$activeModal.close("Dismiss")}),c()(),d(6,"div",4),S(7,Cj,2,0,"div",5)(8,yj,5,2),c(),d(9,"div",6)(10,"div",7)(11,"button",8),_(12,"translate"),P("click",function(){return n.$activeModal.close("Dismiss")}),h(13),_(14,"translate"),c()(),w(15,"div",9),d(16,"div",10)(17,"button",11),P("click",function(){return n.$activeModal.close("update")}),h(18),_(19,"translate"),c()()()()),i&2&&(s(4),W("aria-label",B(5,7,"form.button_close")),s(3),x(n.loading?7:-1),s(),x(n.loading?-1:8),s(3),W("aria-label",B(12,9,"form.button_close")),s(2),q(" ",B(14,11,"form.button_close")," "),s(4),g("disabled",n.loading),s(),q(" ",B(19,13,"plugins.node_update.continue")," "))},dependencies:[ge],encapsulation:2})}return e})();var sC=Oe(tn(),1);var vj=["pluginlogoutput"],lC=(()=>{class e{$activeModal=$(Ce);$api=$(De);$log=$(Zs);$modal=$(Ue);$toastr=$(ce);$translate=$(de);plugin;termTarget=of("pluginlogoutput");resizeEvent=new ct;pluginAlias;constructor(){}onWindowResize(){this.resizeEvent.next(void 0)}ngOnInit(){this.getPluginLog()}getPluginLog(){this.$api.get(`/config-editor/plugin/${encodeURIComponent(this.plugin.name)}`).subscribe({next:t=>{var i;this.pluginAlias=this.plugin.name==="homebridge-config-ui-x"?"Homebridge UI":((i=t[0])==null?void 0:i.name)||this.plugin.name,this.$log.startTerminal(this.termTarget(),{},this.resizeEvent,this.pluginAlias)},error:t=>{console.error(t),this.$toastr.error(t.error.message||t.message,this.$translate.instant("toast.title_error")),this.$activeModal.dismiss()}})}downloadLogFile(){let t=this.$modal.open(Gs,{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?colour=yes",{observe:"response",responseType:"text"}).subscribe({next:i=>{if(!i.body)return;let n=i.body.split(`
|
|
21
21
|
`),f="",r=!1;n.forEach(o=>{if(o){if(r)if(o.match(/36m\[.*?\]/))r=!1;else{f+=`${o.replace(/\x1B\[(\d{1,3}(;\d{1,2})?)?[mGK]/g,"")}\r
|
|
22
22
|
`;return}o.includes(`36m[${this.pluginAlias}]`)&&(f+=`${o.replace(/\x1B\[(\d{1,3}(;\d{1,2})?)?[mGK]/g,"")}\r
|
|
23
23
|
`,r=!0)}}),(0,sC.saveAs)(new Blob([f],{type:"text/plain;charset=utf-8"}),`${this.plugin.name}.log.txt`)},error:i=>H(this,null,function*(){let n;try{n=JSON.parse(yield i.error.text()).message}catch(f){console.error(f)}this.$toastr.error(n||this.$translate.instant("logs.download.error"),this.$translate.instant("toast.title_error"))})})}).catch(()=>{})}ngOnDestroy(){this.$log.destroyTerminal()}static \u0275fac=function(i){return new(i||e)};static \u0275cmp=K({type:e,selectors:[["ng-component"]],viewQuery:function(i,n){i&1&&df(n.termTarget,vj,5),i&2&&cf()},hostBindings:function(i,n){i&1&&P("resize",function(r){return n.onWindowResize(r)},!1,xs)},inputs:{plugin:"plugin"},decls:20,vars:13,consts:[["pluginlogoutput",""],[1,"modal-content"],[1,"modal-header"],[1,"modal-title"],["type","button","data-bs-dismiss","modal",1,"btn-close",3,"click"],[1,"modal-body","d-flex","flex-row","flex-grow-1","w-100","p-0"],[1,"w-100","bg-black","plugin-log-output","terminal","align-self-end","w-100","h-100","mb-0","p-2"],[1,"modal-footer","justify-content-between"],[1,"text-start"],["type","button","data-bs-dismiss","modal",1,"btn","btn-elegant",3,"click"],[1,"text-center"],[1,"text-end"],[1,"btn","btn-primary",3,"click"]],template:function(i,n){if(i&1){let f=z();d(0,"div",1)(1,"div",2)(2,"h5",3),h(3),c(),d(4,"button",4),_(5,"translate"),P("click",function(){return j(f),N(n.$activeModal.dismiss("Dismiss"))}),c()(),d(6,"div",5),w(7,"div",6,0),c(),d(9,"div",7)(10,"div",8)(11,"button",9),_(12,"translate"),P("click",function(){return j(f),N(n.$activeModal.dismiss("Dismiss"))}),h(13),_(14,"translate"),c()(),w(15,"div",10),d(16,"div",11)(17,"button",12),P("click",function(){return j(f),N(n.downloadLogFile())}),h(18),_(19,"translate"),c()()()()}i&2&&(s(3),R(n.plugin.displayName||n.plugin.name),s(),W("aria-label",B(5,5,"form.button_close")),s(7),W("aria-label",B(12,7,"form.button_close")),s(2),q(" ",B(14,9,"form.button_close")," "),s(5),R(B(19,11,"form.button_download")))},dependencies:[ge],encapsulation:2})}return e})();var Bj=(e,u)=>({pluginName:e,targetVersion:u}),xj=(e,u)=>({iconStar:e,iconThumbsUp:u}),dC=()=>["homebridge","homebridge-config-ui-x"],FC=(e,u,t,i)=>({"fa-arrow-alt-circle-down":e,"fa-code-compare":u,"fa-arrow-alt-circle-up":t,"fa-trash":i});function wj(e,u){e&1&&(d(0,"p",13),h(1),_(2,"translate"),c()),e&2&&(s(),R(B(2,1,"plugins.settings.restart_required")))}function Aj(e,u){e&1&&(d(0,"p",13),h(1),_(2,"translate"),c()),e&2&&(s(),R(B(2,1,"restart.child_bridges")))}function Ij(e,u){if(e&1&&(w(0,"p",12),_(1,"translate"),S(2,wj,3,3,"p",13)(3,Aj,3,3,"p",13)),e&2){let t=C(3);g("innerHTML",qe(1,3,"plugins.manage.github_support",fu(6,xj,t.iconStar,t.iconThumbsUp)),re),s(2),x(Ne(9,dC).includes(t.pluginName)||t.childBridges.length===0?2:-1),s(),x(!Ne(10,dC).includes(t.pluginName)&&t.childBridges.length>0?3:-1)}}function Sj(e,u){if(e&1&&(d(0,"div",11),w(1,"markdown",14),c()),e&2){let t=C(3);s(),g("data",t.changeLog)}}function $j(e,u){if(e&1&&(d(0,"div",8),w(1,"i",9),c(),d(2,"h5",10),h(3),_(4,"translate"),c(),S(5,Ij,4,11)(6,Sj,2,1,"div",11)),e&2){let t=C(2);s(3),q(" ",qe(4,3,"plugins.manage.thanks_for_updating",fu(6,Bj,t.pluginDisplayName,t.targetVersion))," "),s(2),x(t.isDisabled?-1:5),s(),x(t.changeLog?6:-1)}}function kj(e,u){if(e&1&&(d(0,"div",5),S(1,$j,7,9),c()),e&2){let t=C();s(),x(t.justUpdatedPlugin?1:-1)}}function Tj(e,u){e&1&&(d(0,"li"),h(1),_(2,"translate"),c()),e&2&&(s(),R(B(2,1,"plugins.manage.manual_update_command")))}function Pj(e,u){if(e&1&&(d(0,"pre",17),h(1),c()),e&2){let t=C(2);s(),Wt(`hb-service stop
|
|
@@ -25,7 +25,7 @@ npm install -g `,t.pluginName,"@",t.targetVersion,`
|
|
|
25
25
|
hb-service start`)}}function Oj(e,u){if(e&1&&(d(0,"div",6)(1,"div",8),w(2,"i",15),c(),d(3,"ul",16)(4,"li"),h(5),_(6,"translate"),c(),S(7,Tj,3,3,"li"),c(),S(8,Pj,2,2,"pre",17),c()),e&2){let t=C();s(2),g("ngClass",Ju(6,FC,t.action==="Install",t.action==="Update"&&t.installedVersion,t.action==="Update"&&!t.installedVersion,t.action==="Uninstall")),s(3),R(B(6,4,"plugins.manage.online_updates")),s(2),x(t.$settings.env.serviceMode?7:-1),s(),x(t.$settings.env.serviceMode?8:-1)}}function Mj(e,u){if(e&1&&(d(0,"span"),h(1),c()),e&2){let t=C(3);s(),q("v",t.installedVersion," \u2192 ")}}function jj(e,u){if(e&1&&h(0),e&2){let t=C(3);q(" ",t.release.name," ")}}function Nj(e,u){if(e&1&&h(0),e&2){let t=C(3);q(" v",t.latestVersion," ")}}function qj(e,u){if(e&1&&(d(0,"h5",8),S(1,Mj,2,1,"span")(2,jj,1,1)(3,Nj,1,1),c()),e&2){let t=C(2);s(),x(t.installedVersion?1:-1),s(),x(t.release.name?2:-1),s(),x(t.release.name?-1:3)}}function Vj(e,u){if(e&1&&(d(0,"div",5)(1,"div",8),w(2,"i",18),c(),S(3,qj,4,3,"h5",8),d(4,"div",19),w(5,"markdown",14),c()()),e&2){let t=C();s(2),g("ngClass",Ju(3,FC,t.action==="Install"&&!t.installedVersion,t.action==="Install"&&t.installedVersion,t.action==="Update",t.action==="Uninstall")),s(),x(t.release.name||t.latestVersion?3:-1),s(2),g("data",t.release.changelog)}}function Rj(e,u){if(e&1){let t=z();d(0,"button",26),_(1,"translate"),P("click",function(){j(t);let n=C(2);return N(n.$activeModal.dismiss("Dismiss"))}),h(2),_(3,"translate"),c()}e&2&&(W("aria-label",B(1,2,"form.button_close")),s(2),q(" ",B(3,4,"form.button_close")," "))}function Lj(e,u){if(e&1){let t=z();d(0,"button",26),_(1,"translate"),P("click",function(){j(t);let n=C(2);return N(n.$activeModal.dismiss("Dismiss"))}),h(2),_(3,"translate"),c()}e&2&&(W("aria-label",B(1,2,"form.button_close")),s(2),q(" ",B(3,4,"form.button_close")," "))}function zj(e,u){if(e&1){let t=z();d(0,"button",27),P("click",function(){j(t);let n=C(2);return N(n.update())}),h(1),_(2,"translate"),c()}e&2&&(s(),q(" ",B(2,1,"plugins.button_update")," "))}function Uj(e,u){if(e&1){let t=z();d(0,"button",27),P("click",function(){j(t);let n=C(2);return N(!["homebridge","homebridge-config-ui-x"].includes(n.pluginName)&&n.childBridges.length>0?n.onRestartChildBridgeClick():n.onRestartHomebridgeClick())}),h(1),_(2,"translate"),c()}e&2&&(s(),q(" ",B(2,1,"menu.tooltip_restart")," "))}function Hj(e,u){if(e&1){let t=z();d(0,"button",28),P("click",function(){j(t);let n=C(2);return N(n.downloadLogFile())}),h(1),_(2,"translate"),c()}e&2&&(s(),R(B(2,1,"form.button_download")))}function Wj(e,u){if(e&1&&(d(0,"div",7)(1,"div",20),S(2,Rj,4,6,"button",21),c(),d(3,"div",22),S(4,Lj,4,6,"button",21),c(),d(5,"div",23),S(6,zj,3,3,"button",24)(7,Uj,3,3,"button",24)(8,Hj,3,3,"button",25),c()()),e&2){let t=C();s(2),x(!t.justUpdatedPlugin&&t.onlineUpdateOk||t.justUpdatedPlugin&&(!t.isDisabled||t.actionFailed)?2:-1),s(2),x(t.justUpdatedPlugin&&t.isDisabled&&!t.actionFailed||!t.onlineUpdateOk?4:-1),s(2),x(t.onlineUpdateOk&&t.showReleaseNotes?6:-1),s(),x(t.justUpdatedPlugin&&!t.isDisabled?7:-1),s(),x(t.actionFailed?8:-1)}}var Zi=(()=>{class e{$activeModal=$(Ce);$api=$(De);$modal=$(Ue);$router=$(qt);$settings=$(ke);$toastr=$(ce);$translate=$(de);$ws=$(ui);pluginName;pluginDisplayName;targetVersion="latest";latestVersion;installedVersion;isDisabled;action;actionComplete=!1;actionFailed=!1;showReleaseNotes=!1;justUpdatedPlugin=!1;updateToBeta=!1;changeLog;childBridges=[];release;presentTenseVerb;pastTenseVerb;onlineUpdateOk;iconStar='<i class="fas fa-fw fa-star primary-text"></i>';iconThumbsUp='<i class="fas fa-fw fa-thumbs-up primary-text"></i>';io;toastSuccess;term=new pC.Terminal;termTarget;fitAddon=new mC.FitAddon;errorLog="";constructor(){this.term.loadAddon(this.fitAddon)}ngOnInit(){switch(this.io=this.$ws.connectToNamespace("plugins"),this.termTarget=document.getElementById("plugin-log-output"),this.term.open(this.termTarget),this.fitAddon.fit(),this.io.socket.on("stdout",t=>{this.term.write(t);let i=t.toString().replace(/\x1B\[(\d{1,3}(;\d{1,2})?)?[mGK]/g,"").trimEnd();i&&(this.errorLog+=`${i}\r
|
|
26
26
|
`)}),this.toastSuccess=this.$translate.instant("toast.title_success"),this.onlineUpdateOk=!(["homebridge","homebridge-config-ui-x"].includes(this.pluginName)&&this.$settings.env.platform==="win32"),this.action){case"Install":this.install(),this.presentTenseVerb=this.$translate.instant("plugins.manage.install"),this.pastTenseVerb=this.$translate.instant("plugins.manage.installed");break;case"Uninstall":this.uninstall(),this.presentTenseVerb=this.$translate.instant("plugins.manage.uninstall"),this.pastTenseVerb=this.$translate.instant("plugins.manage.uninstalled");break;case"Update":switch(this.targetVersion){case"latest":this.updateToBeta=!1,this.getReleaseNotes();break;case"alpha":case"beta":case"test":this.updateToBeta=!0,this.getReleaseNotes();break;default:this.update()}this.presentTenseVerb=this.$translate.instant("plugins.manage.update"),this.pastTenseVerb=this.$translate.instant("plugins.manage.updated");break}}install(){if(this.onlineUpdateOk){if(this.pluginName==="homebridge")return this.upgradeHomebridge();this.io.request("install",{name:this.pluginName,version:this.targetVersion,termCols:this.term.cols,termRows:this.term.rows}).subscribe({next:()=>{this.$activeModal.close(),this.$toastr.success(`${this.pastTenseVerb} ${this.pluginName}`,this.toastSuccess),window.location.href=`/plugins?installed=${this.pluginName}`},error:t=>{this.actionFailed=!0,console.error(t),this.$router.navigate(["/plugins"]),this.$toastr.error(t.message,this.$translate.instant("toast.title_error"))}})}}uninstall(){this.io.request("uninstall",{name:this.pluginName,termCols:this.term.cols,termRows:this.term.rows}).subscribe({next:()=>{this.$activeModal.close(),this.$router.navigate(["/plugins"]),this.$modal.open(St,{size:"lg",backdrop:"static"})},error:t=>{this.actionFailed=!0,console.error(t),this.$toastr.error(t.message,this.$translate.instant("toast.title_error"))}})}update(){if(this.showReleaseNotes=!1,!!this.onlineUpdateOk){if(this.pluginName==="homebridge")return this.upgradeHomebridge();this.io.request("update",{name:this.pluginName,version:this.targetVersion,termCols:this.term.cols,termRows:this.term.rows}).subscribe({next:()=>H(this,null,function*(){try{yield Promise.all([this.getChangeLog(),this.getChildBridges()])}catch(t){console.error(t)}this.actionComplete=!0,this.justUpdatedPlugin=!0,this.$router.navigate([this.pluginName==="homebridge-config-ui-x"?"/":"/plugins"])}),error:t=>{this.actionFailed=!0,console.error(t),this.$toastr.error(t.message,this.$translate.instant("toast.title_error"))}})}}upgradeHomebridge(){return H(this,null,function*(){let t="update";Number(this.installedVersion.split(".")[0])<2&&["2","alpha","beta"].includes(this.targetVersion.split(".")[0])&&(t=yield this.$modal.open(DC,{size:"lg",backdrop:"static"}).result),t==="update"?this.io.request("homebridge-update",{version:this.targetVersion,termCols:this.term.cols,termRows:this.term.rows}).subscribe({next:()=>{this.$activeModal.close();let i=this.$modal.open(St,{size:"lg",backdrop:"static"});i.componentInstance.fullRestart=!0},error:i=>{this.actionFailed=!0,console.error(i),this.$toastr.error(i.message,this.$translate.instant("toast.title_error")),this.$activeModal.close()}}):this.$activeModal.close()})}getChangeLog(){return H(this,null,function*(){let t=yield ie(this.$api.get(`/plugins/changelog/${encodeURIComponent(this.pluginName)}`));this.changeLog=t.changelog})}getChildBridges(){return H(this,null,function*(){if(!this.$settings.env.serviceMode)return;(yield ie(this.$api.get("/status/homebridge/child-bridges"))).forEach(i=>{this.pluginName===i.plugin&&this.childBridges.push(i)})})}getReleaseNotes(){this.$api.get(`/plugins/release/${encodeURIComponent(this.pluginName)}`).subscribe({next:t=>{this.showReleaseNotes=!0,this.release=t},error:()=>{this.onlineUpdateOk&&this.update()}})}onRestartHomebridgeClick(){this.pluginName==="homebridge-config-ui-x"?this.$api.put("/platform-tools/hb-service/set-full-service-restart-flag",{}).subscribe({next:()=>{window.location.href="/restart"},error:t=>{console.error(t),window.location.href="/restart"}}):(this.$router.navigate(["/restart"]),this.$activeModal.close())}onRestartChildBridgeClick(){return H(this,null,function*(){try{for(let i of this.childBridges)yield ie(this.$api.put(`/server/restart/${i.username}`,{}));let t=this.$modal.open(lC,{size:"xl",backdrop:"static"});t.componentInstance.plugin={name:this.pluginName}}catch(t){console.error(t),this.$toastr.error(this.$translate.instant("plugins.manage.child_bridge_restart_failed"),this.$translate.instant("toast.title_error"))}finally{this.$activeModal.close()}})}downloadLogFile(){let t=new Blob([this.errorLog],{type:"text/plain;charset=utf-8"});(0,cC.saveAs)(t,`${this.pluginName}-error.log`)}ngOnDestroy(){this.io.end()}static \u0275fac=function(i){return new(i||e)};static \u0275cmp=K({type:e,selectors:[["ng-component"]],inputs:{pluginName:"pluginName",pluginDisplayName:"pluginDisplayName",targetVersion:"targetVersion",latestVersion:"latestVersion",installedVersion:"installedVersion",isDisabled:"isDisabled",action:"action"},decls:11,vars:9,consts:[[1,"modal-content"],[1,"modal-header"],[1,"modal-title"],["type","button","data-bs-dismiss","modal",1,"btn-close",3,"click"],["id","plugin-log-output",1,"modal-body",3,"hidden"],[1,"modal-body","plugin-modal-body"],[1,"modal-body"],[1,"modal-footer","justify-content-between"],[1,"mb-3","text-center"],[1,"far","fa-fw","fa-check-circle","primary-text",2,"font-size","75px"],[1,"text-center","mb-3"],[1,"alert","p-3","pb-1","mt-3"],[1,"mb-3","text-center","grey-text",3,"innerHTML"],[1,"text-center","mb-0"],[1,"plugin-md",3,"data"],[1,"fas","fa-fw","primary-text",2,"font-size","75px",3,"ngClass"],[1,"mb-3"],[1,"p-2","mb-0",2,"background-color","#efefef"],[1,"far","fa-fw","primary-text",2,"font-size","75px",3,"ngClass"],[1,"alert","p-3","pb-1","mb-0"],[1,"text-start"],["type","button","data-bs-dismiss","modal",1,"btn","btn-elegant"],[1,"text-center"],[1,"text-end"],["type","button",1,"btn","btn-primary"],[1,"btn","btn-primary"],["type","button","data-bs-dismiss","modal",1,"btn","btn-elegant",3,"click"],["type","button",1,"btn","btn-primary",3,"click"],[1,"btn","btn-primary",3,"click"]],template:function(i,n){i&1&&(d(0,"div",0)(1,"div",1)(2,"h5",2),h(3),c(),d(4,"button",3),_(5,"translate"),P("click",function(){return n.$activeModal.dismiss("Dismiss")}),c()(),w(6,"div",4),S(7,kj,2,1,"div",5)(8,Oj,9,11,"div",6)(9,Vj,6,8,"div",5)(10,Wj,9,5,"div",7),c()),i&2&&(s(3),R(n.pluginDisplayName),s(),W("aria-label",B(5,7,"form.button_close")),s(2),g("hidden",!n.onlineUpdateOk||n.actionComplete||n.showReleaseNotes),s(),x(n.actionComplete?7:-1),s(),x(n.onlineUpdateOk?-1:8),s(),x(n.showReleaseNotes&&!n.actionComplete&&n.onlineUpdateOk?9:-1),s(),x(!n.onlineUpdateOk||n.actionComplete||n.showReleaseNotes||n.actionFailed?10:-1))},dependencies:[ni,ii,Ji,ge,Ct],styles:[".plugin-modal-body[_ngcontent-%COMP%]{max-height:60vh;overflow-y:auto;overflow-x:hidden} .plugin-md{text-align:left;font-size:.95rem;word-wrap:break-word} .plugin-md img{max-width:100%} .plugin-md h1{font-size:1.4rem;font-weight:300} .plugin-md h2{font-size:1.3rem;font-weight:300} .plugin-md h3{font-size:1.2rem;font-weight:300} .plugin-md h4{font-size:1.1rem;font-weight:300} .plugin-md h5{font-size:1rem;font-weight:300} .plugin-md pre{padding:16px;overflow:auto;font-size:85%;line-height:1.45;background-color:#f6f8fa;border-radius:3px}"]})}return e})();var CC=Oe(ao(),1);function Gj(e,u){e&1&&(d(0,"div",5),w(1,"i",12),c())}function Kj(e,u){if(e&1&&(w(0,"i",20),d(1,"h6",21),h(2),_(3,"translate"),c(),d(4,"p",21),h(5),_(6,"translate"),d(7,"span",22),h(8),c()()),e&2){let t=C(2);s(2),R(B(3,3,"plugins.manage.select_version")),s(3),q(" ",B(6,5,"plugins.status_installed"),": "),s(3),q("v",t.plugin.installedVersion,"")}}function Jj(e,u){e&1&&(w(0,"i",23),d(1,"h6",21),h(2),_(3,"translate"),c()),e&2&&(s(2),R(B(3,1,"plugins.manage.select_version")))}function Zj(e,u){if(e&1){let t=z();d(0,"button",26),P("click",function(){j(t);let n=C().$implicit,f=C(2);return N(f.doInstall(n.version))}),w(1,"i",27),c()}}function Qj(e,u){e&1&&(d(0,"button",19),w(1,"i",28),c())}function Xj(e,u){if(e&1&&(d(0,"li",14)(1,"span",8),h(2),w(3,"br"),d(4,"small",24),h(5),c()(),S(6,Zj,2,0,"button",25)(7,Qj,2,0,"button",19),c()),e&2){let t=u.$implicit,i=C(2);s(2),q(" ",t.tag," "),s(3),q("v",t.version,""),s(),x(i.plugin.installedVersion!==t.version?6:-1),s(),x(i.plugin.installedVersion===t.version?7:-1)}}function Yj(e,u){if(e&1&&(d(0,"option",17),h(1),c()),e&2){let t=u.$implicit;g("value",t.version),s(),q("v",t.version,"")}}function eN(e,u){if(e&1){let t=z();d(0,"button",29),P("click",function(){j(t);let n=C(2);return N(n.doInstall(n.versionSelect))}),w(1,"i",27),c()}if(e&2){let t=C(2);g("disabled",!t.versionSelect)}}function tN(e,u){e&1&&(d(0,"button",19),w(1,"i",28),c())}function uN(e,u){if(e&1){let t=z();d(0,"div",6),S(1,Kj,9,7)(2,Jj,4,3),d(3,"ul",13),We(4,Xj,8,4,"li",14,He),d(6,"li",14)(7,"div",15),h(8),_(9,"translate"),w(10,"br"),d(11,"select",16),we("ngModelChange",function(n){j(t);let f=C();return xe(f.versionSelect,n)||(f.versionSelect=n),N(n)}),We(12,Yj,2,2,"option",17,He),c()(),S(14,eN,2,1,"button",18)(15,tN,2,0,"button",19),c()()()}if(e&2){let t=C();s(),x(t.plugin.installedVersion?1:-1),s(),x(t.plugin.installedVersion?-1:2),s(2),Ge(t.versionsWithTags),s(4),q(" ",B(9,6,"plugins.manage.all_versions")," "),s(3),Be("ngModel",t.versionSelect),s(),Ge(t.versions),s(2),x(t.versionSelect!==t.plugin.installedVersion?14:-1),s(),x(t.versionSelect&&t.versionSelect===t.plugin.installedVersion?15:-1)}}var gC=(()=>{class e{$activeModal=$(Ce);$api=$(De);$toastr=$(ce);$translate=$(de);plugin;loading=!0;versions=[];versionsWithTags=[];versionSelect;constructor(){}ngOnInit(){this.versionSelect=this.plugin.installedVersion||this.plugin.latestVersion,this.lookupVersions()}lookupVersions(){this.$api.get(`/plugins/lookup/${encodeURIComponent(this.plugin.name)}/versions`).subscribe({next:t=>{let i=new Set;for(let[n,f]of Object.entries(t.versions)){this.versions.push({version:n,engines:f.engines||null});let r=Object.keys(t.tags).find(o=>t.tags[o]===n);r&&(this.versionsWithTags.push({version:n,tag:r}),i.add(n))}this.versions.sort((n,f)=>(0,CC.rcompare)(n.version,f.version)),this.versionsWithTags.sort((n,f)=>{let r=["latest","next","beta","alpha"],o=r.includes(n.tag)?r.indexOf(n.tag):999,a=r.includes(f.tag)?r.indexOf(f.tag):999;return o-a}),!this.versions.find(n=>n.version===this.versionSelect)&&t.tags.latest&&(this.versionSelect=t.tags.latest),this.loading=!1},error:t=>{console.error(t),this.$toastr.error(t.error.message||t.message,this.$translate.instant("toast.title_error")),this.$activeModal.dismiss()}})}doInstall(t){this.$activeModal.close({name:this.plugin.name,version:t,engines:this.versions.find(i=>i.version===t).engines,action:this.plugin.installedVersion?"alternate":"install"})}static \u0275fac=function(i){return new(i||e)};static \u0275cmp=K({type:e,selectors:[["ng-component"]],inputs:{plugin:"plugin"},decls:17,vars:12,consts:[[1,"modal-content"],[1,"modal-header"],[1,"modal-title"],["type","button","data-bs-dismiss","modal",1,"btn-close",3,"click"],[1,"modal-body","d-flex","flex-row","flex-grow-1","w-100"],[1,"w-100","text-center","primary-text"],[1,"w-100","text-center"],[1,"modal-footer","justify-content-between"],[1,"text-start"],[1,"text-center"],["type","button","data-bs-dismiss","modal",1,"btn","btn-elegant",3,"click"],[1,"text-end"],[1,"fa","fa-fw","fa-cog","fa-spin",2,"font-size","75px"],[1,"list-group","list-group-box","mb-0"],[1,"list-group-item","d-flex","justify-content-between","align-items-center"],[1,"text-start",2,"min-width","50%"],[1,"custom-select","w-100",2,"font-size","0.875rem",3,"ngModelChange","ngModel"],[3,"value"],[1,"btn","btn-primary","m-0","ms-3",3,"disabled"],["disabled","",1,"btn","btn-primary","m-0","ms-3"],[1,"fas","fa-fw","fa-code-compare","primary-text","mb-3",2,"font-size","75px"],[1,"mb-3"],[1,"font-monospace"],[1,"far","fa-fw","fa-arrow-alt-circle-down","primary-text","mb-3",2,"font-size","75px"],[1,"grey-text","font-monospace"],[1,"btn","btn-primary","m-0","ms-3"],[1,"btn","btn-primary","m-0","ms-3",3,"click"],[1,"fas","fa-fw","fa-arrow-alt-circle-down"],[1,"fas","fa-fw","fa-check-circle"],[1,"btn","btn-primary","m-0","ms-3",3,"click","disabled"]],template:function(i,n){i&1&&(d(0,"div",0)(1,"div",1)(2,"h5",2),h(3),c(),d(4,"button",3),_(5,"translate"),P("click",function(){return n.$activeModal.dismiss("Dismiss")}),c()(),d(6,"div",4),S(7,Gj,2,0,"div",5)(8,uN,16,8,"div",6),c(),d(9,"div",7),w(10,"div",8),d(11,"div",9)(12,"button",10),_(13,"translate"),P("click",function(){return n.$activeModal.dismiss("Dismiss")}),h(14),_(15,"translate"),c()(),w(16,"div",11),c()()),i&2&&(s(3),R(n.plugin.displayName||n.plugin.name),s(),W("aria-label",B(5,6,"form.button_close")),s(3),x(n.loading?7:-1),s(),x(n.loading?-1:8),s(4),W("aria-label",B(13,8,"form.button_close")),s(2),q(" ",B(15,10,"form.button_close")," "))},dependencies:[It,Su,$u,Yu,rt,ru,ge],encapsulation:2})}return e})();var hC=Oe(qC(),1);function iN(e,u){e&1&&(d(0,"div",5),w(1,"i",16),c())}function nN(e,u){e&1&&(d(0,"div",6),h(1),_(2,"translate"),_(3,"translate"),c()),e&2&&(s(),Wt(" ",B(2,2,"plugins.settings.message_manual_config_required")," ",B(3,4,"plugins.settings.message_consult_documentation")," "))}function fN(e,u){if(e&1){let t=z();d(0,"button",27),_(1,"translate"),P("click",function(){j(t);let n=C().$index,f=C(2);return N(f.removeBlock(n))}),w(2,"i",28),c()}e&2&&g("ngbTooltip",B(1,1,"form.button_delete"))}function rN(e,u){if(e&1){let t=z();d(0,"div",17)(1,"div",18)(2,"div",19)(3,"h5",20),h(4),c(),d(5,"div"),S(6,fN,3,3,"button",21),d(7,"button",22),_(8,"translate"),P("click",function(){let n=j(t).$index,f=C(2);return N(f.editBlock(n))}),w(9,"i",23),c()()()(),d(10,"div",24)(11,"div",25)(12,"ngx-monaco-editor",26),we("ngModelChange",function(n){j(t);let f=C(2);return xe(f.currentBlock,n)||(f.currentBlock=n),N(n)}),P("onInit",function(n){j(t);let f=C(2);return N(f.onEditorInit(n))}),c()()()()}if(e&2){let t=u.$implicit,i=u.$index,n=C(2);g("ngbAccordionItem","configBlock."+i)("collapsed",n.show!=="configBlock."+i)("id","configBlock."+i),s(4),R(t.name||n.pluginAlias),s(2),x(n.show==="configBlock."+i?6:-1),s(),g("ngbTooltip",B(8,8,"form.button_edit")),s(5),g("options",n.editorOptions),Be("ngModel",n.currentBlock)}}function oN(e,u){if(e&1&&(d(0,"div",7),We(1,rN,13,10,"div",17,He),c()),e&2){let t=C();g("closeOthers",!0),s(),Ge(t.pluginConfig)}}function aN(e,u){if(e&1){let t=z();d(0,"button",29),P("click",function(){j(t);let n=C();return N(n.addBlock())}),w(1,"i",30),c()}}function DN(e,u){e&1&&(h(0),_(1,"translate")),e&2&&q(" ",B(1,1,"form.button_save")," ")}function sN(e,u){e&1&&w(0,"i",32)}function lN(e,u){if(e&1){let t=z();d(0,"button",31),P("click",function(){j(t);let n=C();return N(n.save())}),S(1,DN,2,3)(2,sN,1,0,"i",32),c()}if(e&2){let t=C();g("disabled",t.saveInProgress),s(),x(t.saveInProgress?-1:1),s(),x(t.saveInProgress?2:-1)}}function dN(e,u){if(e&1){let t=z();d(0,"button",33),P("click",function(){j(t);let n=C();return N(n.openFullConfigEditor())}),h(1),_(2,"translate"),c()}e&2&&(s(),q(" ",B(2,1,"plugins.settings.label_open_config_editor")," "))}var ls=(()=>{class e{$activeModal=$(Ce);$api=$(De);$md=$(Ks);$modal=$(Ue);$plugin=$(xu);$router=$(qt);$settings=$(ke);$toastr=$(ce);$translate=$(de);plugin;pluginAlias;pluginType;loading=!0;canConfigure=!1;show="";pluginConfig;currentBlock;currentBlockIndex=null;saveInProgress=!1;childBridges=[];isFirstSave=!1;monacoEditor;editorOptions;constructor(){}get arrayKey(){return this.pluginType==="accessory"?"accessories":"platforms"}ngOnInit(){this.editorOptions={language:"json",theme:this.$settings.actualLightingMode==="dark"?"vs-dark":"vs-light",automaticLayout:!0},this.$md.detect.mobile()?(this.loading=!1,this.canConfigure=!1):this.loadPluginAlias()}onEditorInit(t){return H(this,null,function*(){window.editor=t,this.monacoEditor=t,yield this.monacoEditor.getModel().setValue(this.currentBlock),yield this.monacoEditor.getAction("editor.action.formatDocument").run()})}loadPluginAlias(){this.$api.get(`/plugins/alias/${encodeURIComponent(this.plugin.name)}`).subscribe({next:t=>{t.pluginAlias&&t.pluginType?(this.pluginAlias=t.pluginAlias,this.pluginType=t.pluginType,this.loadHomebridgeConfig()):this.loading=!1},error:()=>{this.loading=!1}})}loadHomebridgeConfig(){this.$api.get(`/config-editor/plugin/${encodeURIComponent(this.plugin.name)}`).subscribe(t=>{this.pluginConfig=t,this.canConfigure=!0,this.loading=!1,this.pluginConfig.length?this.editBlock(0):(this.isFirstSave=!0,this.addBlock())})}addBlock(){if(!this.saveCurrentBlock()){this.$toastr.error(this.$translate.instant("plugins.config.please_fix"),this.$translate.instant("toast.title_error"));return}this.pluginConfig.push({[this.pluginType]:this.pluginAlias,name:this.pluginAlias}),this.editBlock(this.pluginConfig.length-1)}saveCurrentBlock(){if(this.currentBlockIndex!==null&&this.monacoEditor){let t=this.monacoEditor.getModel().getValue().trim(),i;t.charAt(0)==='"'&&t.charAt(t.length-1)==="]"&&(t=`{${t}}`);try{i=hC.default.parse(t)}catch(f){return console.error(f),this.$toastr.error(this.$translate.instant("config.config_invalid_json"),this.$translate.instant("toast.title_error")),!1}if(Array.isArray(i)||typeof i!="object")return this.$toastr.error(this.$translate.instant("plugins.config.must_be_object"),this.$translate.instant("toast.title_error")),!1;if(!i[this.pluginType]&&Array.isArray(i[this.arrayKey])&&i[this.arrayKey].length&&Object.keys(i).length===1&&(i=i[this.arrayKey][0]),this.pluginType==="accessory"&&(!i.name||typeof i.name!="string"))return this.$toastr.error(this.$translate.instant("plugins.config.name_property"),this.$translate.instant("toast.title_error")),i.name="",this.monacoEditor.getModel().setValue(JSON.stringify(i,null,4)),!1;let n=this.pluginConfig[this.currentBlockIndex];Object.keys(n).forEach(f=>delete n[f]),Object.assign(n,i),n[this.pluginType]=this.pluginAlias}return!0}editBlock(t){this.saveCurrentBlock()&&(this.show=`configBlock.${t}`,this.currentBlockIndex=t,this.currentBlock=JSON.stringify(this.pluginConfig[this.currentBlockIndex],null,4))}removeBlock(t){let i=this.pluginConfig[t],n=this.pluginConfig.findIndex(f=>f===i);n>-1&&this.pluginConfig.splice(n,1),this.currentBlockIndex=null,this.currentBlock=void 0,this.show=""}save(){return H(this,null,function*(){var t;if(this.saveInProgress=!0,!this.saveCurrentBlock()){this.saveInProgress=!1;return}try{let i=yield ie(this.$api.post(`/config-editor/plugin/${encodeURIComponent(this.plugin.name)}`,this.pluginConfig));if(this.$activeModal.close(),this.isFirstSave&&this.$settings.env.recommendChildBridges&&this.$settings.env.serviceMode&&((t=i[0])!=null&&t.platform)){this.$activeModal.close(),this.$plugin.bridgeSettings(this.plugin,!0);return}if(!["homebridge","homebridge-config-ui-x"].includes(this.plugin.name)&&this.$settings.env.serviceMode&&(yield this.getChildBridges(),this.childBridges.length>0)){this.$activeModal.close();let n=this.$modal.open(fi,{size:"lg",backdrop:"static"});n.componentInstance.bridges=this.childBridges.map(f=>({name:f.name,username:f.username}));return}this.$activeModal.close(),this.$modal.open(St,{size:"lg",backdrop:"static"})}catch(i){console.error(i),this.$toastr.error(this.$translate.instant("config.failed_to_save_config"),this.$translate.instant("toast.title_error")),this.saveInProgress=!1}})}openFullConfigEditor(){this.$router.navigate(["/config"]),this.$activeModal.close()}getChildBridges(){return H(this,null,function*(){try{(yield ie(this.$api.get("/status/homebridge/child-bridges"))).forEach(i=>{this.plugin.name===i.plugin&&this.childBridges.push(i)})}catch(t){console.error(t),this.$toastr.error(t.message,this.$translate.instant("toast.title_error")),this.childBridges=[]}})}static \u0275fac=function(i){return new(i||e)};static \u0275cmp=K({type:e,selectors:[["ng-component"]],inputs:{plugin:"plugin"},decls:20,vars:15,consts:[[1,"modal-content"],[1,"modal-header"],[1,"modal-title"],["type","button","data-bs-dismiss","modal",1,"btn-close",3,"click","disabled"],[1,"modal-body"],[1,"text-center","primary-text"],[1,"alert","alert-warning","mb-0"],["ngbAccordion","",3,"closeOthers"],[1,"modal-footer","justify-content-between"],[1,"text-start"],["type","button","data-bs-dismiss","modal",1,"btn","btn-elegant",3,"click","disabled"],[1,"text-center"],[1,"text-end"],["type","button","data-bs-dismiss","modal",1,"btn","btn-elegant","me-2"],["type","button","data-bs-dismiss","modal",1,"btn","btn-primary",3,"disabled"],[1,"btn","btn-primary"],[1,"fa","fa-fw","fa-cog","fa-spin",2,"font-size","75px"],[1,"card",3,"ngbAccordionItem","collapsed","id"],["ngbAccordionHeader","",1,"card-header"],[1,"d-flex","align-items-center","justify-content-between"],[1,"m-0"],["container","modal","openDelay","150","triggers","hover",1,"btn","btn-danger","m-0","ms-3",3,"ngbTooltip"],["ngbAccordionToggle","","container","modal","openDelay","150","triggers","hover",1,"btn","btn-primary","m-0","ms-2",3,"click","ngbTooltip"],[1,"fa","fa-fw","fa-edit"],["ngbAccordionCollapse",""],["ngbAccordionBody","",1,"card-body","p-0",2,"height","400px"],[1,"flex-grow-1","h-100","w-100","mb-0","pb-0",3,"ngModelChange","onInit","options","ngModel"],["container","modal","openDelay","150","triggers","hover",1,"btn","btn-danger","m-0","ms-3",3,"click","ngbTooltip"],[1,"fa","fa-fw","fa-trash"],["type","button","data-bs-dismiss","modal",1,"btn","btn-elegant","me-2",3,"click"],[1,"fa","fa-fw","fa-plus"],["type","button","data-bs-dismiss","modal",1,"btn","btn-primary",3,"click","disabled"],[1,"fas","fa-fw","fa-spinner","fa-pulse"],[1,"btn","btn-primary",3,"click"]],template:function(i,n){i&1&&(d(0,"div",0)(1,"div",1)(2,"h5",2),h(3),c(),d(4,"button",3),_(5,"translate"),P("click",function(){return n.$activeModal.close()}),c()(),d(6,"div",4),S(7,iN,2,0,"div",5)(8,nN,4,6,"div",6)(9,oN,3,1,"div",7),c(),d(10,"div",8)(11,"div",9)(12,"button",10),P("click",function(){return n.$activeModal.close()}),h(13),_(14,"translate"),c()(),w(15,"div",11),d(16,"div",12),S(17,aN,2,0,"button",13)(18,lN,3,3,"button",14)(19,dN,3,3,"button",15),c()()()),i&2&&(s(3),R(n.plugin.displayName||n.plugin.name),s(),g("disabled",n.saveInProgress),W("aria-label",B(5,11,"form.button_close")),s(3),x(n.loading?7:-1),s(),x(!n.loading&&!n.canConfigure?8:-1),s(),x(!n.loading&&n.canConfigure?9:-1),s(3),g("disabled",n.saveInProgress),s(),q(" ",B(14,13,"form.button_close")," "),s(4),x(n.canConfigure?17:-1),s(),x(n.canConfigure?18:-1),s(),x(n.canConfigure?-1:19))},dependencies:[Ef,hf,gf,ti,Ff,mf,zs,It,rt,ru,ge,Cf],styles:[".no-padding-card-body .card-body{padding:0!important} body.dark-mode .no-padding-card-body .card-body{background-color:#1e1e1e}.manage-plugin-config-external-icons[_ngcontent-%COMP%]{font-size:1.5rem;font-weight:700;line-height:1;color:#000;opacity:.5;background-color:transparent;border:0}"]})}return e})();var EC=e=>({link:e}),cN=(e,u)=>({"green-text":e,"grey-text":u});function pN(e,u){if(e&1){let t=z();d(0,"button",13),_(1,"translate"),P("click",function(){j(t);let n=C();return N(n.$activeModal.close("Dismiss"))}),c()}if(e&2){let t=C();g("disabled",t.saveInProgress),W("aria-label",B(1,2,"form.button_close"))}}function mN(e,u){e&1&&(d(0,"div",5),w(1,"i",14),c())}function FN(e,u){e&1&&(d(0,"li"),h(1),_(2,"translate"),c()),e&2&&(s(),R(B(2,1,"child_bridge.bridges_paired_2")))}function CN(e,u){e&1&&(d(0,"li"),h(1),_(2,"translate"),c()),e&2&&(s(),q("",B(2,1,"child_bridge.select_type"),":"))}function gN(e,u){if(e&1&&(d(0,"li"),h(1),_(2,"translate"),c(),S(3,FN,3,3,"li")(4,CN,3,3,"li")),e&2){let t=C(2);s(),R(B(2,3,"child_bridge.bridges_paired")),s(2),x(t.configBlocks.length===1&&!t.deviceInfo[t.configBlocks[0]._bridge==null?null:t.configBlocks[0]._bridge.username]&&t.originalBridges.length===0?3:-1),s(),x(t.canConfigure?4:-1)}}function hN(e,u){if(e&1&&(d(0,"option",29),h(1),c()),e&2){let t=u.$implicit,i=u.$index;g("value",i),s(),R(t.name||t.platform||t.accessory)}}function EN(e,u){if(e&1){let t=z();d(0,"li",25),h(1),_(2,"translate"),c(),d(3,"li",23)(4,"label",26),h(5),_(6,"translate"),c(),d(7,"div",27)(8,"select",28),we("ngModelChange",function(n){j(t);let f=C(3);return xe(f.selectedBlock,n)||(f.selectedBlock=n),N(n)}),P("change",function(n){j(t);let f=C(3);return N(f.onBlockChange(n.target.value))}),We(9,hN,2,2,"option",29,He),c()()()}if(e&2){let t=C(3);s(),R(B(2,3,"form.label.changes_kept")),s(4),q(" ",B(6,5,t.isPlatform?"child_bridge.config.platform":"child_bridge.config.accessory")," "),s(3),Be("ngModel",t.selectedBlock),s(),Ge(t.configBlocks)}}function bN(e,u){if(e&1&&(d(0,"li",23)(1,"label",30),h(2),_(3,"translate"),c(),d(4,"div",31),h(5),c()()),e&2){let t=C(3);s(2),q(" ",B(3,2,t.isPlatform?"child_bridge.config.platform":"child_bridge.config.accessory")," "),s(3),q(" ",t.configBlocks[t.selectedBlock].name||t.configBlocks[t.selectedBlock].platform||t.configBlocks[t.selectedBlock].accessory," ")}}function _N(e,u){e&1&&(d(0,"li",23)(1,"label",30),h(2),_(3,"translate"),c(),d(4,"div",32),h(5),_(6,"translate"),c()()),e&2&&(s(2),R(B(3,2,"child_bridge.config.use")),s(3),q(" ",B(6,4,"child_bridge.config.prevent")," "))}function yN(e,u){if(e&1&&(d(0,"option",29),h(1),c()),e&2){let t=u.$implicit;g("value",t.username),s(),Wt("",t.name," (",t.username,")")}}function vN(e,u){if(e&1){let t=z();d(0,"li",23)(1,"label",37),h(2),_(3,"translate"),c(),d(4,"div",27)(5,"select",38),P("change",function(n){j(t);let f=C(4);return N(f.onLinkBridgeChange(n.target.value))}),d(6,"option",29),h(7),_(8,"translate"),c(),We(9,yN,2,3,"option",29,He),c()()()}if(e&2){let t=C(4);s(2),R(B(3,2,"child_bridge.config.or_link")),s(5),R(B(8,4,"child_bridge.config.select_existing")),s(2),Ge(t.bridgesAvailableForLink)}}function BN(e,u){if(e&1){let t=z();d(0,"li",33)(1,"span",7),h(2),_(3,"translate"),c(),d(4,"div",34)(5,"input",35),P("change",function(){j(t);let n=C(3);return N(n.toggleExternalBridge(n.configBlocks[n.selectedBlock],n.enabledBlocks[n.selectedBlock],n.selectedBlock))}),we("ngModelChange",function(n){j(t);let f=C(3);return xe(f.enabledBlocks[f.selectedBlock],n)||(f.enabledBlocks[f.selectedBlock]=n),N(n)}),c(),w(6,"label",36),c()(),S(7,vN,11,6,"li",23)}if(e&2){let t=C(3);s(2),R(B(3,5,"child_bridge.config.use")),s(3),g("id","toggleExternalBridgeInput_"+t.selectedBlock),Be("ngModel",t.enabledBlocks[t.selectedBlock]),s(),g("for","toggleExternalBridgeInput_"+t.selectedBlock),s(),x(!(t.configBlocks[t.selectedBlock]._bridge!=null&&t.configBlocks[t.selectedBlock]._bridge.username)&&t.bridgesAvailableForLink.length?7:-1)}}function xN(e,u){if(e&1&&(d(0,"li",23)(1,"label",30),h(2),_(3,"translate"),c(),d(4,"div",31),h(5),c()(),d(6,"li",23)(7,"label",30),h(8),_(9,"translate"),c(),d(10,"div",31),h(11),c()(),d(12,"li",23)(13,"label",30),h(14),_(15,"translate"),c(),d(16,"div",31),h(17),c()()),e&2){let t=C(3);s(2),R(B(3,6,"accessories.bridge_link_username")),s(3),q(" ",t.currentlySelectedLink.username," "),s(3),R(B(9,8,"accessories.bridge_link_port")),s(3),q(" ",t.currentlySelectedLink.port," "),s(3),R(B(15,10,"accessories.bridge_link_name")),s(3),q(" ",t.currentlySelectedLink.name," ")}}function wN(e,u){e&1&&(d(0,"span"),h(1),_(2,"translate"),c()),e&2&&(s(),q(" \xB7 ",B(2,1,"status.code_scan")," "))}function AN(e,u){if(e&1){let t=z();d(0,"li",33)(1,"span",7),h(2),_(3,"translate"),d(4,"code"),h(5,"-D"),c()(),d(6,"div",34)(7,"input",51),_(8,"translate"),we("ngModelChange",function(n){j(t);let f=C(6);return xe(f.configBlocks[f.selectedBlock]._bridge.debugModeEnabled,n)||(f.configBlocks[f.selectedBlock]._bridge.debugModeEnabled=n),N(n)}),c(),w(9,"label",36),c()()}if(e&2){let t=C(6);s(2),q("",B(3,5,"child_bridge.config.debug")," "),s(5),g("id","homebridgeDebugMode_"+t.selectedBlock),Be("ngModel",t.configBlocks[t.selectedBlock]._bridge.debugModeEnabled),W("aria-label",B(8,7,"settings.startup.debug")),s(2),g("for","homebridgeDebugMode_"+t.selectedBlock)}}function IN(e,u){if(e&1){let t=z();d(0,"li",23)(1,"label",30),h(2),_(3,"translate"),c(),d(4,"div",27)(5,"input",45),we("ngModelChange",function(n){j(t);let f=C(5);return xe(f.configBlocks[f.selectedBlock]._bridge.name,n)||(f.configBlocks[f.selectedBlock]._bridge.name=n),N(n)}),c()()(),d(6,"li",23)(7,"label",30),h(8),_(9,"translate"),c(),d(10,"div",27)(11,"input",45),we("ngModelChange",function(n){j(t);let f=C(5);return xe(f.configBlocks[f.selectedBlock]._bridge.manufacturer,n)||(f.configBlocks[f.selectedBlock]._bridge.manufacturer=n),N(n)}),c()()(),d(12,"li",23)(13,"label",30),h(14),_(15,"translate"),c(),d(16,"div",27)(17,"input",45),we("ngModelChange",function(n){j(t);let f=C(5);return xe(f.configBlocks[f.selectedBlock]._bridge.model,n)||(f.configBlocks[f.selectedBlock]._bridge.model=n),N(n)}),c()()(),d(18,"li",23)(19,"label",30),h(20),_(21,"translate"),c(),d(22,"div",27)(23,"input",45),we("ngModelChange",function(n){j(t);let f=C(5);return xe(f.configBlocks[f.selectedBlock]._bridge.firmwareRevision,n)||(f.configBlocks[f.selectedBlock]._bridge.firmwareRevision=n),N(n)}),c()()(),S(24,AN,10,9,"li",33),d(25,"li",23)(26,"label",30)(27,"span",46),h(28,"DEBUG"),c(),w(29,"br")(30,"small",47),_(31,"translate"),c(),d(32,"div",27)(33,"input",48),we("ngModelChange",function(n){j(t);let f=C(5);return xe(f.configBlocks[f.selectedBlock]._bridge.env.DEBUG,n)||(f.configBlocks[f.selectedBlock]._bridge.env.DEBUG=n),N(n)}),c()()(),d(34,"li",23)(35,"label",30)(36,"span",46),h(37,"NODE_OPTIONS"),c(),w(38,"br"),d(39,"small",49),h(40),_(41,"translate"),c()(),d(42,"div",27)(43,"input",50),we("ngModelChange",function(n){j(t);let f=C(5);return xe(f.configBlocks[f.selectedBlock]._bridge.env.NODE_OPTIONS,n)||(f.configBlocks[f.selectedBlock]._bridge.env.NODE_OPTIONS=n),N(n)}),c()()()}if(e&2){let t=C(5);s(2),R(B(3,13,"child_bridge.config.name")),s(3),Be("ngModel",t.configBlocks[t.selectedBlock]._bridge.name),s(3),R(B(9,15,"child_bridge.config.manufacturer")),s(3),Be("ngModel",t.configBlocks[t.selectedBlock]._bridge.manufacturer),s(3),R(B(15,17,"child_bridge.config.model")),s(3),Be("ngModel",t.configBlocks[t.selectedBlock]._bridge.model),s(3),R(B(21,19,"child_bridge.config.firmware")),s(3),Be("ngModel",t.configBlocks[t.selectedBlock]._bridge.firmwareRevision),s(),x(t.canShowBridgeDebug?24:-1),s(6),g("innerHTML",qe(31,21,"settings.service.debug_tooltip",At(26,EC,t.linkDebug)),re),s(3),Be("ngModel",t.configBlocks[t.selectedBlock]._bridge.env.DEBUG),s(7),R(B(41,24,"settings.service.node_tooltip")),s(3),Be("ngModel",t.configBlocks[t.selectedBlock]._bridge.env.NODE_OPTIONS)}}function SN(e,u){if(e&1&&(d(0,"li",39)(1,"div",40),w(2,"app-qrcode",41),d(3,"p",42),h(4),c(),d(5,"p",43),w(6,"i",44),h(7),_(8,"translate"),S(9,wN,3,3,"span"),c()()(),d(10,"li",23)(11,"label",30),h(12),_(13,"translate"),c(),d(14,"div",31),h(15),c()(),d(16,"li",23)(17,"label",30),h(18),_(19,"translate"),c(),d(20,"div",31),h(21),c()(),S(22,IN,44,28)),e&2){let t=C(4);s(2),g("data",t.deviceInfo[t.configBlocks[t.selectedBlock]._bridge==null?null:t.configBlocks[t.selectedBlock]._bridge.username]._setupCode),s(2),R(t.deviceInfo[t.configBlocks[t.selectedBlock]._bridge==null?null:t.configBlocks[t.selectedBlock]._bridge.username].pincode),s(2),g("ngClass",fu(16,cN,t.deviceInfo[t.configBlocks[t.selectedBlock]._bridge==null?null:t.configBlocks[t.selectedBlock]._bridge.username]._isPaired,!t.deviceInfo[t.configBlocks[t.selectedBlock]._bridge==null?null:t.configBlocks[t.selectedBlock]._bridge.username]._isPaired)),s(),q(" ",B(8,10,t.deviceInfo[t.configBlocks[t.selectedBlock]._bridge==null?null:t.configBlocks[t.selectedBlock]._bridge.username]._isPaired?"status.widget.qr_paired":"status.widget.qr_unpaired")," "),s(2),x(t.deviceInfo[t.configBlocks[t.selectedBlock]._bridge==null?null:t.configBlocks[t.selectedBlock]._bridge.username]._isPaired?-1:9),s(3),R(B(13,12,"accessories.bridge_username")),s(3),q(" ",t.configBlocks[t.selectedBlock]._bridge.username," "),s(3),R(B(19,14,"accessories.bridge_port")),s(3),q(" ",t.configBlocks[t.selectedBlock]._bridge.port," "),s(),x(t.$settings.env.serviceMode?22:-1)}}function $N(e,u){if(e&1&&S(0,SN,23,19),e&2){let t=C(3);x(t.deviceInfo[t.configBlocks[t.selectedBlock]._bridge==null?null:t.configBlocks[t.selectedBlock]._bridge.username]?0:-1)}}function kN(e,u){e&1&&(d(0,"ngb-alert",24),h(1),_(2,"translate"),w(3,"br"),h(4),_(5,"translate"),c()),e&2&&(g("dismissible",!1),s(),q(" ",B(2,3,"child_bridge.restart_homebridge")," "),s(3),q("",B(5,5,"child_bridge.return_to_pair")," "))}function TN(e,u){if(e&1&&(d(0,"ul",22),S(1,EN,11,7)(2,bN,6,4,"li",23)(3,_N,7,6,"li",23)(4,BN,8,7)(5,xN,18,12)(6,$N,1,1),c(),S(7,kN,6,7,"ngb-alert",24)),e&2){let t=C(2);s(),x(t.configBlocks.length>1?1:-1),s(),x(t.configBlocks.length===1?2:-1),s(),x(t.currentBridgeHasLinks?3:-1),s(),x(t.currentBridgeHasLinks?-1:4),s(),x(t.currentlySelectedLink?5:-1),s(),x(!t.currentlySelectedLink&&(t.configBlocks[t.selectedBlock]._bridge!=null&&t.configBlocks[t.selectedBlock]._bridge.username)?6:-1),s(),x(t.configBlocks[t.selectedBlock]._bridge!=null&&t.configBlocks[t.selectedBlock]._bridge.username&&t.deviceInfo[t.configBlocks[t.selectedBlock]._bridge==null?null:t.configBlocks[t.selectedBlock]._bridge.username]===!1?7:-1)}}function PN(e,u){e&1&&(h(0),_(1,"translate")),e&2&&q(" ",B(1,1,"child_bridge.confirm_delete_2")," ")}function ON(e,u){if(e&1&&(d(0,"li"),h(1),d(2,"span",46),h(3),c(),h(4,") "),c()),e&2){let t=u.$implicit,i=C(3);s(),q(" ",t.bridgeName||(i.deviceInfo[t.id]==null?null:i.deviceInfo[t.id].displayName)," ("),s(2),R(t.id)}}function MN(e,u){if(e&1&&(d(0,"ngb-alert",19)(1,"p"),h(2),_(3,"translate"),S(4,PN,2,3),c(),d(5,"div",9)(6,"ul",52),We(7,ON,5,2,"li",null,He),c()()()),e&2){let t=C(2);g("dismissible",!1),s(2),q(" ",B(3,3,"child_bridge.confirm_delete_1")," "),s(2),x(t.deletingPairedBridge?4:-1),s(3),Ge(t.deleteBridges)}}function jN(e,u){e&1&&(d(0,"ngb-alert",20),h(1),_(2,"translate"),c()),e&2&&(g("dismissible",!1),s(),q(" ",B(2,2,"child_bridge.must_configure_plugin")," "))}function NN(e,u){if(e&1){let t=z();d(0,"ngb-alert",21)(1,"div",17),h(2),_(3,"translate"),_(4,"translate"),c(),d(5,"button",53),P("click",function(){j(t);let n=C(2);return N(n.openFullConfigEditor())}),h(6),_(7,"translate"),c()()}e&2&&(g("dismissible",!1),s(2),Wt(" ",B(3,4,"plugins.settings.message_manual_config_required")," ",B(4,6,"plugins.settings.message_consult_documentation")," "),s(4),q(" ",B(7,8,"plugins.settings.label_open_config_editor")," "))}function qN(e,u){if(e&1&&(d(0,"div",15),w(1,"i",16),c(),d(2,"ul",17),w(3,"li",18),_(4,"translate"),S(5,gN,5,5),c(),S(6,TN,8,7)(7,MN,9,5,"ngb-alert",19)(8,jN,3,4,"ngb-alert",20)(9,NN,8,10,"ngb-alert",21)),e&2){let t=C();s(3),g("innerHTML",qe(4,6,"child_bridge.about",At(9,EC,t.linkChildBridges)),re),s(2),x(t.configBlocks.length?5:-1),s(),x(t.canConfigure&&t.configBlocks.length?6:-1),s(),x(t.deleteBridges.length&&t.$settings.env.serviceMode?7:-1),s(),x(!t.configBlocks.length&&t.canConfigure?8:-1),s(),x(t.canConfigure?-1:9)}}function VN(e,u){if(e&1){let t=z();d(0,"button",54),P("click",function(){j(t);let n=C();return N(n.$activeModal.close("Dismiss"))}),h(1),_(2,"translate"),c()}if(e&2){let t=C();g("disabled",t.saveInProgress),s(),q(" ",B(2,2,"form.button_close")," ")}}function RN(e,u){e&1&&w(0,"i",56)}function LN(e,u){if(e&1){let t=z();d(0,"button",55),P("click",function(){j(t);let n=C();return N(n.save())}),h(1),_(2,"translate"),S(3,RN,1,0,"i",56),c()}if(e&2){let t=C();g("disabled",t.saveInProgress),s(),q(" ",B(2,3,"form.button_save")," "),s(2),x(t.saveInProgress?3:-1)}}function zN(e,u){if(e&1){let t=z();d(0,"button",57),P("click",function(){j(t);let n=C();return N(n.$activeModal.close("Dismiss"))}),h(1),_(2,"translate"),c()}e&2&&(s(),q(" ",B(2,1,"form.button_close")," "))}function UN(e,u){e&1&&(h(0),_(1,"translate")),e&2&&q(" ",B(1,1,"form.button_save")," ")}function HN(e,u){e&1&&w(0,"i",56)}function WN(e,u){if(e&1){let t=z();d(0,"button",55),P("click",function(){j(t);let n=C(2);return N(n.save())}),S(1,UN,2,3)(2,HN,1,0,"i",56),c()}if(e&2){let t=C(2);g("disabled",t.saveInProgress||t.loading),s(),x(t.saveInProgress?-1:1),s(),x(t.saveInProgress?2:-1)}}function GN(e,u){if(e&1){let t=z();d(0,"button",59),P("click",function(){j(t);let n=C(2);return N(n.openPluginConfig())}),h(1),_(2,"translate"),c()}e&2&&(s(),q(" ",B(2,1,"plugins.button_settings")," "))}function KN(e,u){if(e&1&&S(0,WN,3,3,"button",10)(1,GN,3,3,"button",58),e&2){let t=C();x(t.configBlocks.length?0:-1),s(),x(t.configBlocks.length?-1:1)}}var bC=(()=>{class e{$activeModal=$(Ce);$api=$(De);$modal=$(Ue);$plugins=$(xu);$router=$(qt);$settings=$(ke);$toastr=$(ce);$translate=$(de);plugin;schema;justInstalled=!1;loading=!0;canConfigure=!0;configBlocks=[];selectedBlock="0";isPlatform;enabledBlocks={};bridgeCache=new Map;originalBridges=[];deviceInfo=new Map;saveInProgress=!1;canShowBridgeDebug=!1;deleteBridges=[];deletingPairedBridge=!1;accessoryBridgeLinks=[];bridgesAvailableForLink=[];currentlySelectedLink=null;currentBridgeHasLinks=!1;linkChildBridges='<a href="https://github.com/homebridge/homebridge/wiki/Child-Bridges" target="_blank"><i class="fas fa-fw fa-external-link-alt primary-text"></i></a>';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 primary-text"></i></a>';constructor(){}ngOnInit(){return H(this,null,function*(){yield Promise.all([this.getPluginType(),this.loadPluginConfig()]),this.canShowBridgeDebug=this.$settings.env.homebridgeVersion.startsWith("2"),this.loading=!1})}onBlockChange(t){if(this.selectedBlock=t,this.currentlySelectedLink=this.accessoryBridgeLinks.find(i=>i.index===t)||null,this.currentBridgeHasLinks=this.accessoryBridgeLinks.some(i=>i.usesIndex===t),this.bridgesAvailableForLink=[],this.configBlocks[Number(t)].accessory)for(let[i,n]of Array.from(this.bridgeCache.entries()))this.deleteBridges.some(f=>f.id===n.username)||i<Number(t)&&this.bridgesAvailableForLink.push({index:i.toString(),usesIndex:t,name:n.name,port:n.port,username:n.username})}onLinkBridgeChange(t){var i,n;if(t){let f=this.configBlocks.findIndex(o=>{var a;return((a=o._bridge)==null?void 0:a.username)===t});this.accessoryBridgeLinks.push({index:this.selectedBlock,usesIndex:f.toString(),name:(i=this.bridgeCache.get(f))==null?void 0:i.name,port:(n=this.bridgeCache.get(f))==null?void 0:n.port,username:t}),this.currentlySelectedLink=this.accessoryBridgeLinks.find(o=>o.index===this.selectedBlock)||null,this.enabledBlocks[Number(this.selectedBlock)]=!0;let r=this.configBlocks[Number(this.selectedBlock)];r._bridge={username:t}}}getPluginType(){return H(this,null,function*(){try{let t=yield ie(this.$api.get(`/plugins/alias/${encodeURIComponent(this.plugin.name)}`));this.isPlatform=t.pluginType==="platform"}catch(t){this.$toastr.error(this.$translate.instant("plugins.config.load_error"),this.$translate.instant("toast.title_error")),this.$activeModal.close(),console.error(t)}})}loadPluginConfig(){return H(this,null,function*(){var t;try{this.configBlocks=yield ie(this.$api.get(`/config-editor/plugin/${encodeURIComponent(this.plugin.name)}`));for(let[n,f]of this.configBlocks.entries())if(f._bridge&&f._bridge.username){this.enabledBlocks[n]=!0;let r=Array.from(this.bridgeCache.values()).findIndex(a=>a.username===f._bridge.username),o=r!==-1?Array.from(this.bridgeCache.values())[r]:void 0;o?(f._bridge.env={},this.accessoryBridgeLinks.push({index:n.toString(),usesIndex:r.toString(),name:o.name,port:o.port,username:f._bridge.username})):(f._bridge.env=f._bridge.env||{},this.bridgeCache.set(n,f._bridge),yield this.getDeviceInfo(f._bridge.username),f._bridge.name||(f._bridge.name=(t=this.deviceInfo[f._bridge.username])==null?void 0:t.displayName),this.originalBridges.push(f._bridge))}this.justInstalled&&this.bridgeCache.size===0&&this.configBlocks.forEach((n,f)=>{this.enabledBlocks[f]=!0,this.toggleExternalBridge(n,!0,f.toString())}),this.accessoryBridgeLinks.find(n=>{var f;return n.username===((f=this.bridgeCache.get(Number(this.selectedBlock)))==null?void 0:f.username)})&&(this.currentBridgeHasLinks=!0)}catch(i){this.canConfigure=!1,console.error(i)}})}toggleExternalBridge(t,i,n){return H(this,null,function*(){var f;if(i){let r=this.bridgeCache.get(Number(n));t._bridge={username:r?r.username:this.generateUsername(),port:yield this.getUnusedPort(),name:r==null?void 0:r.name,model:r==null?void 0:r.model,manufacturer:r==null?void 0:r.manufacturer,firmwareRevision:r==null?void 0:r.firmwareRevision,debugModeEnabled:r==null?void 0:r.debugModeEnabled,env:r==null?void 0:r.env},this.deleteBridges.some(o=>o.id===t._bridge.username)&&(this.deleteBridges=this.deleteBridges.filter(o=>o.id!==t._bridge.username)),this.bridgeCache.set(Number(n),t._bridge),yield this.getDeviceInfo(t._bridge.username)}else{if(this.accessoryBridgeLinks.some(r=>r.index===n))this.accessoryBridgeLinks=this.accessoryBridgeLinks.filter(r=>r.index!==n),this.currentlySelectedLink=null;else{let r=this.originalBridges.find(o=>o.username===t._bridge.username);r&&this.deleteBridges.push({id:t._bridge.username,bridgeName:t._bridge.name||r.displayName,paired:(f=this.deviceInfo[t._bridge.username])==null?void 0:f._isPaired})}delete t._bridge}this.deletingPairedBridge=this.deleteBridges.some(r=>r.paired)})}getUnusedPort(){return H(this,null,function*(){this.saveInProgress=!0;try{return(yield ie(this.$api.get("/server/port/new"))).port}catch{return Math.floor(Math.random()*30001+3e4)}finally{this.saveInProgress=!1}})}getDeviceInfo(t){return H(this,null,function*(){try{this.deviceInfo[t]=yield ie(this.$api.get(`/server/pairings/${t.replace(/:/g,"")}`))}catch(i){console.error(i),this.deviceInfo[t]=!1}})}save(){return H(this,null,function*(){this.saveInProgress=!0;try{if(yield ie(this.$api.post(`/config-editor/plugin/${encodeURIComponent(this.plugin.name)}`,this.configBlocks)),this.$settings.env.serviceMode)for(let t of this.deleteBridges)try{yield ie(this.$api.delete(`/server/pairings/${t.id.replace(/:/g,"")}`))}catch(i){console.error(i),this.$toastr.error(this.$translate.instant("settings.reset_bridge.error"),this.$translate.instant("toast.title_error"))}this.$activeModal.close(),this.$modal.open(St,{size:"lg",backdrop:"static"})}catch(t){console.error(t),this.$toastr.error(this.$translate.instant("config.failed_to_save_config"),this.$translate.instant("toast.title_error"))}finally{this.saveInProgress=!1}})}openPluginConfig(){this.$activeModal.close(),this.$plugins.settings({name:this.plugin.name,settingsSchema:!0,links:{}})}generateUsername(){let t="0123456789ABCDEF",i="0E:";for(let n=0;n<5;n++)i+=t.charAt(Math.round(Math.random()*15)),i+=t.charAt(Math.round(Math.random()*15)),n!==4&&(i+=":");return i}openFullConfigEditor(){this.$router.navigate(["/config"]),this.$activeModal.close()}static \u0275fac=function(i){return new(i||e)};static \u0275cmp=K({type:e,selectors:[["ng-component"]],inputs:{plugin:"plugin",schema:"schema",justInstalled:"justInstalled"},decls:16,vars:8,consts:[[1,"modal-content"],[1,"modal-header"],[1,"modal-title"],["type","button","data-bs-dismiss","modal",1,"btn-close",3,"disabled"],[1,"modal-body"],[1,"text-center","primary-text"],[1,"modal-footer","justify-content-between"],[1,"text-start"],["type","button","data-bs-dismiss","modal",1,"btn","btn-elegant",3,"disabled"],[1,"text-center"],["type","button",1,"btn","btn-primary",3,"disabled"],["type","button","data-bs-dismiss","modal",1,"btn","btn-elegant"],[1,"text-end"],["type","button","data-bs-dismiss","modal",1,"btn-close",3,"click","disabled"],[1,"fa","fa-fw","fa-cog","fa-spin",2,"font-size","75px"],[1,"mb-3","text-center"],[1,"fas","fa-fw","fa-bridge","primary-text",2,"font-size","75px"],[1,"mb-3"],[3,"innerHTML"],["type","error",1,"mt-3","mb-0",3,"dismissible"],["type","info",3,"dismissible"],["type","info",1,"mb-0",3,"dismissible"],[1,"list-group","list-group-box","mb-0"],[1,"list-group-item","d-flex","flex-column","flex-md-row","align-items-center"],["type","info",1,"mt-3","mb-0",3,"dismissible"],[1,"list-group-item","text-center","grey-text","small"],["for","bridgeSelect",1,"mb-2","mb-md-0","w-100","w-md-50"],[1,"text-start","text-md-end","w-100","w-md-50"],["id","bridgeSelect",1,"custom-select",3,"ngModelChange","change","ngModel"],[3,"value"],[1,"mb-2","mb-md-0","w-100","w-md-50"],[1,"text-start","text-md-end","w-100","w-md-50","grey-text","font-monospace"],[1,"text-start","text-md-end","w-100","w-md-50","grey-text"],[1,"list-group-item","d-flex","justify-content-between","align-items-center","flex-row","pb-2"],[1,"text-end","grey-text"],["type","checkbox",1,"rendux-input",3,"change","ngModelChange","id","ngModel"],[1,"rendux-label",3,"for"],["for","bridgeLink",1,"mb-2","mb-md-0","w-100","w-md-50"],["id","bridgeLink",1,"custom-select",3,"change"],[1,"list-group-item","text-center"],[1,"w-100","d-flex","flex-column","text-center"],[1,"mx-auto",2,"width","175px","height","175px",3,"data"],[1,"mx-auto","mt-3","mb-1"],[1,"grey-text","mx-auto","small","mb-1",2,"max-width","400px"],[1,"fas","fa-fw","fa-link",3,"ngClass"],["type","text",1,"form-control","custom-input",3,"ngModelChange","ngModel"],[1,"font-monospace"],[1,"grey-text",3,"innerHTML"],["type","text","placeholder","HAP-NodeJS:Advertiser,HAP-NodeJS:Service",1,"form-control","custom-input",3,"ngModelChange","ngModel"],[1,"grey-text"],["type","text","placeholder","--max-old-space-size=512 --max-http-header-size=8192",1,"form-control","custom-input",3,"ngModelChange","ngModel"],["type","checkbox",1,"rendux-input",3,"ngModelChange","id","ngModel"],[1,"d-inline-block","text-start","mb-0"],[1,"btn","btn-primary","mb-0",3,"click"],["type","button","data-bs-dismiss","modal",1,"btn","btn-elegant",3,"click","disabled"],["type","button",1,"btn","btn-primary",3,"click","disabled"],[1,"fas","fa-fw","fa-spinner","fa-pulse"],["type","button","data-bs-dismiss","modal",1,"btn","btn-elegant",3,"click"],["type","button","data-bs-dismiss","modal",1,"btn","btn-primary"],["type","button","data-bs-dismiss","modal",1,"btn","btn-primary",3,"click"]],template:function(i,n){i&1&&(d(0,"div",0)(1,"div",1)(2,"h5",2),h(3),c(),S(4,pN,2,4,"button",3),c(),d(5,"div",4),S(6,mN,2,0,"div",5)(7,qN,10,11),c(),d(8,"div",6)(9,"div",7),S(10,VN,3,4,"button",8),c(),d(11,"div",9),S(12,LN,4,5,"button",10)(13,zN,3,3,"button",11),c(),d(14,"div",12),S(15,KN,2,2),c()()()),i&2&&(s(3),R(n.plugin.displayName||n.plugin.name),s(),x(n.justInstalled?-1:4),s(2),x(n.loading?6:-1),s(),x(n.loading?-1:7),s(3),x(n.canConfigure&&!n.justInstalled?10:-1),s(2),x(n.justInstalled?12:-1),s(),x(n.canConfigure?-1:13),s(2),x(n.canConfigure&&!n.justInstalled?15:-1))},dependencies:[It,Su,$u,Qu,Zu,Yu,rt,ru,ei,Js,Ct,ge],styles:[".manage-plugin-config-external-icons[_ngcontent-%COMP%]{font-size:1.5rem;font-weight:700;line-height:1;color:#000;opacity:.5;background-color:transparent;border:0}"]})}return e})();var ds=Oe(ao(),1);var io=()=>["homebridge","homebridge-config-ui-x"],_C=(e,u,t)=>({pluginName:e,minVersion:u,installedVersion:t}),JN=(e,u,t)=>({minVersion:e,installedVersion:u,latestVersion:t,packageName:"Homebridge"}),ZN=()=>({packageName:"Homebridge"}),QN=(e,u,t)=>({minVersion:e,installedVersion:u,latestVersion:t,packageName:"Homebridge UI"}),XN=()=>({packageName:"Homebridge UI"});function YN(e,u){if(e&1&&(d(0,"li"),h(1),_(2,"translate"),c()),e&2){let t=C(2);s(),q(" ",qe(2,1,"plugins.compat.node_too_low",Gt(4,_C,t.plugin.displayName,t.nodeMinVersion,t.nodeInstalledVersion))," ")}}function eq(e,u){if(e&1&&(d(0,"li"),h(1),_(2,"translate"),c()),e&2){let t=C(2);s(),q(" ",qe(2,1,"plugins.compat.hb_too_low",Gt(4,_C,t.plugin.name,t.hbMinVersion,t.hbInstalledVersion))," ")}}function tq(e,u){if(e&1&&(d(0,"div",11),w(1,"i",12),c(),d(2,"ul",13),S(3,YN,3,8,"li")(4,eq,3,8,"li"),c(),d(5,"ngb-alert",14)(6,"p",15),h(7),_(8,"translate"),c()()),e&2){let t=C();s(),As("",t.action==="install"?"far fa-fw fa-arrow-alt-circle-down":t.action==="update"?"far fa-fw fa-arrow-alt-circle-up":"fas fa-fw fa-code-compare"," primary-text"),s(2),x(t.isValidNode?-1:3),s(),x(t.isValidHb?-1:4),s(),g("dismissible",!1),s(2),R(B(8,7,"plugins.compat.are_you_sure"))}}function uq(e,u){if(e&1&&(d(0,"div",11),w(1,"i",16),c(),d(2,"ul",13)(3,"li"),h(4),_(5,"translate"),c()(),d(6,"ngb-alert",14)(7,"p",17),h(8),_(9,"translate"),c(),d(10,"p",15)(11,"a",18),h(12),_(13,"translate"),w(14,"i",19),c()()()),e&2){let t=C();s(4),q(" ",qe(5,4,"plugins.compat.hb_node_too_low",Gt(12,JN,t.nodeMinVersion,t.nodeInstalledVersion,t.plugin.latestVersion))," "),s(2),g("dismissible",!1),s(2),R(qe(9,7,"plugins.compat.node_first",Ne(16,ZN))),s(4),q(" ",B(13,10,"plugins.compat.node_link")," ")}}function iq(e,u){if(e&1&&(d(0,"div",11),w(1,"i",16),c(),d(2,"ul",13)(3,"li"),h(4),_(5,"translate"),c()(),d(6,"ngb-alert",14)(7,"p",17),h(8),_(9,"translate"),c(),d(10,"p",15)(11,"a",18),h(12),_(13,"translate"),w(14,"i",19),c()()()),e&2){let t=C();s(4),q(" ",qe(5,4,"plugins.compat.hb_node_too_low",Gt(12,QN,t.nodeMinVersion,t.nodeInstalledVersion,t.plugin.latestVersion))," "),s(2),g("dismissible",!1),s(2),R(qe(9,7,"plugins.compat.node_first",Ne(16,XN))),s(4),q(" ",B(13,10,"plugins.compat.node_link")," ")}}function nq(e,u){if(e&1){let t=z();d(0,"button",20),P("click",function(){j(t);let n=C();return N(n.$activeModal.dismiss("Dismiss"))}),h(1),_(2,"translate"),c()}e&2&&(s(),q(" ",B(2,1,"form.button_close")," "))}function fq(e,u){if(e&1){let t=z();d(0,"button",20),P("click",function(){j(t);let n=C();return N(n.$activeModal.dismiss("Dismiss"))}),h(1),_(2,"translate"),c()}e&2&&(s(),q(" ",B(2,1,"form.button_close")," "))}function rq(e,u){if(e&1){let t=z();d(0,"button",21),P("click",function(){j(t);let n=C();return N(n.$activeModal.close(!0))}),h(1),_(2,"translate"),c()}e&2&&(s(),q(" ",B(2,1,"plugins.node_update.continue")," "))}var yC=(()=>{class e{$activeModal=$(Ce);$settings=$(ke);plugin;isValidNode;isValidHb;action;nodeMinVersion;nodeInstalledVersion;hbMinVersion;hbInstalledVersion;constructor(){}ngOnInit(){var t,i;this.nodeMinVersion=(0,ds.minVersion)((t=this.plugin.updateEngines)==null?void 0:t.node),this.nodeInstalledVersion=this.$settings.env.nodeVersion,this.hbMinVersion=(0,ds.minVersion)((i=this.plugin.updateEngines)==null?void 0:i.homebridge),this.hbInstalledVersion=this.$settings.env.homebridgeVersion}static \u0275fac=function(i){return new(i||e)};static \u0275cmp=K({type:e,selectors:[["ng-component"]],inputs:{plugin:"plugin",isValidNode:"isValidNode",isValidHb:"isValidHb",action:"action"},decls:18,vars:16,consts:[[1,"modal-content",2,"min-height","300px"],[1,"modal-header"],[1,"modal-title"],["type","button","data-bs-dismiss","modal",1,"btn-close",3,"click"],[1,"modal-body"],[1,"modal-footer","justify-content-between"],[1,"text-start"],["type","button","data-bs-dismiss","modal",1,"btn","btn-elegant"],[1,"text-center"],[1,"text-end"],["type","button","data-bs-dismiss","modal",1,"btn","btn-danger"],[1,"text-center","mb-3"],[2,"font-size","75px"],[1,"mb-3"],["type","warning",1,"mb-0",3,"dismissible"],[1,"text-center","mb-0"],[1,"fab","fa-fw","fa-node-js","primary-text",2,"font-size","75px"],[1,"text-center","mb-1"],["href","https://homebridge.io/w/JTKEF","target","_blank","rel","noopener noreferrer"],[1,"fa","fa-fw","fa-external-link-alt"],["type","button","data-bs-dismiss","modal",1,"btn","btn-elegant",3,"click"],["type","button","data-bs-dismiss","modal",1,"btn","btn-danger",3,"click"]],template:function(i,n){i&1&&(d(0,"div",0)(1,"div",1)(2,"h5",2),h(3),_(4,"translate"),c(),d(5,"button",3),_(6,"translate"),P("click",function(){return n.$activeModal.dismiss("Dismiss")}),c()(),d(7,"div",4),S(8,tq,9,9)(9,uq,15,17)(10,iq,15,17),c(),d(11,"div",5)(12,"div",6),S(13,nq,3,3,"button",7),c(),d(14,"div",8),S(15,fq,3,3,"button",7),c(),d(16,"div",9),S(17,rq,3,3,"button",10),c()()()),i&2&&(s(3),R(B(4,8,"plugins.compat.title")),s(2),W("aria-label",B(6,10,"form.button_close")),s(3),x(Ne(12,io).includes(n.plugin.name)?-1:8),s(),x(n.plugin.name==="homebridge"?9:-1),s(),x(n.plugin.name==="homebridge-config-ui-x"?10:-1),s(3),x(Ne(13,io).includes(n.plugin.name)?-1:13),s(2),x(Ne(14,io).includes(n.plugin.name)?15:-1),s(2),x(Ne(15,io).includes(n.plugin.name)?-1:17))},dependencies:[ge,ei],encapsulation:2})}return e})();var Ze=[];for(let e=0;e<256;++e)Ze.push((e+256).toString(16).slice(1));function vC(e,u=0){return(Ze[e[u+0]]+Ze[e[u+1]]+Ze[e[u+2]]+Ze[e[u+3]]+"-"+Ze[e[u+4]]+Ze[e[u+5]]+"-"+Ze[e[u+6]]+Ze[e[u+7]]+"-"+Ze[e[u+8]]+Ze[e[u+9]]+"-"+Ze[e[u+10]]+Ze[e[u+11]]+Ze[e[u+12]]+Ze[e[u+13]]+Ze[e[u+14]]+Ze[e[u+15]]).toLowerCase()}var cs,oq=new Uint8Array(16);function ps(){if(!cs){if(typeof crypto>"u"||!crypto.getRandomValues)throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported");cs=crypto.getRandomValues.bind(crypto)}return cs(oq)}var aq=typeof crypto<"u"&&crypto.randomUUID&&crypto.randomUUID.bind(crypto),ms={randomUUID:aq};function Dq(e,u,t){var n,f,r;if(ms.randomUUID&&!u&&!e)return ms.randomUUID();e=e||{};let i=(r=(f=e.random)!=null?f:(n=e.rng)==null?void 0:n.call(e))!=null?r:ps();if(i.length<16)throw new Error("Random bytes length must be >= 16");if(i[6]=i[6]&15|64,i[8]=i[8]&63|128,u){if(t=t||0,t<0||t+16>u.length)throw new RangeError(`UUID byte range ${t}:${t+15} is out of buffer bounds`);for(let o=0;o<16;++o)u[t+o]=i[o];return u}return vC(i)}var no=Dq;var BC=Oe(tn(),1);var xC=(()=>{class e{$api=$(De);$toastr=$(ce);$translate=$(de);constructor(){}downloadDumpFile(){this.$api.get("/plugins/custom-plugins/homebridge-deconz/dump-file",{observe:"response",responseType:"blob"}).subscribe({next:t=>{(0,BC.saveAs)(t.body,"homebridge-deconz.json.gz")},error:t=>{console.error(t),this.$toastr.error(this.$translate.instant("plugins.settings.deconz.dump_no_exist"),this.$translate.instant("toast.title_error"))}})}static \u0275fac=function(i){return new(i||e)};static \u0275cmp=K({type:e,selectors:[["app-homebridge-deconz"]],decls:3,vars:0,consts:[["type","button","data-bs-dismiss","modal",1,"btn","btn-elegant","m-0",3,"click"],[1,"fas","fa-fw","fa-download"]],template:function(i,n){i&1&&(d(0,"button",0),P("click",function(){return n.downloadDumpFile()}),w(1,"i",1),h(2,` Download Dump File
|
|
27
27
|
`),c())},encapsulation:2})}return e})();var wC=Oe(tn(),1);var AC=(()=>{class e{$api=$(De);$translate=$(de);$toastr=$(ce);constructor(){}downloadDumpFile(){this.$api.get("/plugins/custom-plugins/homebridge-hue/dump-file",{observe:"response",responseType:"blob"}).subscribe({next:t=>{(0,wC.saveAs)(t.body,"homebridge-hue.json.gz")},error:t=>{console.error(t),this.$toastr.error(this.$translate.instant("plugins.settings.hue.dump_no_exist"),this.$translate.instant("toast.title_error"))}})}static \u0275fac=function(i){return new(i||e)};static \u0275cmp=K({type:e,selectors:[["app-homebridge-hue"]],decls:3,vars:0,consts:[["type","button","data-bs-dismiss","modal",1,"btn","btn-elegant","m-0",3,"click"],[1,"fas","fa-fw","fa-download"]],template:function(i,n){i&1&&(d(0,"button",0),P("click",function(){return n.downloadDumpFile()}),w(1,"i",1),h(2,` Download Dump File
|
|
28
|
-
`),c())},encapsulation:2})}return e})();var IC=(()=>{class e{transform(t){return t.replace(/\$\{\{HOSTNAME\}\}/g,location.hostname)}static \u0275fac=function(i){return new(i||e)};static \u0275pipe=ws({name:"interpolateMd",type:e,pure:!0})}return e})();function sq(e,u){if(e&1&&(w(0,"markdown",5),_(1,"interpolateMd")),e&2){let t=C();g("data",B(1,1,t.schema.headerDisplay))}}function lq(e,u){if(e&1){let t=z();d(0,"button",30),_(1,"translate"),P("click",function(){j(t);let n=C().$implicit,f=C(2);return N(f.removeBlock(n.__uuid__))}),w(2,"i",31),c()}e&2&&g("ngbTooltip",B(1,1,"form.button_delete"))}function dq(e,u){if(e&1){let t=z();d(0,"div",18)(1,"div",19)(2,"div",20)(3,"h5",21),h(4),c(),d(5,"div",22),S(6,lq,3,3,"button",23),d(7,"button",24),_(8,"translate"),w(9,"i",25),c(),w(10,"i",26),_(11,"translate"),c()()(),d(12,"div",27)(13,"div",28)(14,"app-schema-form",29),we("dataChange",function(n){let f=j(t).$implicit;return xe(f.config,n)||(f.config=n),N(n)}),P("isValid",function(n){let f=j(t).$index,r=C(2);return N(r.onIsValid(n,f))}),c()()()()}if(e&2){let t=u.$implicit,i=u.$index,n=C(2);g("ngbAccordionItem",t.__uuid__)("collapsed",n.show!==t.__uuid__)("id",t.__uuid__),s(4),R(t.name),s(2),x(n.plugin.name!=="homebridge-config-ui-x"&&n.show===t.__uuid__?6:-1),s(),g("ngbTooltip",B(8,10,"form.button_edit")),s(3),g("ngClass",n.formBlocksValid[i]?"fa-circle-check green-text":n.strictValidation?"fa-circle-exclamation red-text":"fa-circle-exclamation orange-text")("ngbTooltip",B(11,12,n.formBlocksValid[i]?"form.label_valid":n.strictValidation?"form.label_invalid_strict":"form.label_invalid")),s(4),g("configSchema",n.schema),Be("data",t.config)}}function cq(e,u){if(e&1){let t=z();d(0,"div",17),P("show",function(n){j(t);let f=C();return N(f.blockShown(n))})("hide",function(n){j(t);let f=C();return N(f.blockHidden(n))}),We(1,dq,15,14,"div",18,He),c()}if(e&2){let t=C();g("closeOthers",!0),s(),Ge(t.pluginConfig)}}function pq(e,u){e&1&&w(0,"app-homebridge-deconz")}function mq(e,u){e&1&&w(0,"app-homebridge-hue")}function Fq(e,u){if(e&1){let t=z();d(0,"div",7)(1,"app-schema-form",29),we("dataChange",function(n){j(t);let f=C();return xe(f.pluginConfig[0].config,n)||(f.pluginConfig[0].config=n),N(n)}),P("isValid",function(n){j(t);let f=C();return N(f.onIsValid(n,0))}),c(),S(2,pq,1,0,"app-homebridge-deconz")(3,mq,1,0,"app-homebridge-hue"),c()}if(e&2){let t=C();s(),g("configSchema",t.schema),Be("data",t.pluginConfig[0].config),s(),x(t.plugin.name==="homebridge-deconz"?2:-1),s(),x(t.plugin.name==="homebridge-hue"?3:-1)}}function Cq(e,u){if(e&1&&(w(0,"markdown",5),_(1,"interpolateMd")),e&2){let t=C();g("data",B(1,1,t.schema.footerDisplay))}}function gq(e,u){if(e&1&&(w(0,"i",14),_(1,"translate")),e&2){let t=C();g("ngClass",t.formIsValid?"fa-circle-check green-text":t.strictValidation?"fa-circle-exclamation red-text":"fa-circle-exclamation orange-text")("ngbTooltip",B(1,2,t.formIsValid?"form.label_valid":t.strictValidation?"form.label_invalid_strict":"form.label_invalid"))}}function hq(e,u){e&1&&(d(0,"span"),h(1),_(2,"translate"),c()),e&2&&(s(),R(B(2,1,"form.button_save")))}function Eq(e,u){e&1&&w(0,"i",16)}var SC=(()=>{class e{$activeModal=$(Ce);$api=$(De);$plugin=$(xu);$modal=$(Ue);$settings=$(ke);$toastr=$(ce);$translate=$(de);plugin;schema;pluginAlias;pluginType;pluginConfig=[];form={};show="";saveInProgress;childBridges=[];isFirstSave=!1;formBlocksValid={};formIsValid=!0;strictValidation=!1;constructor(){}ngOnInit(){this.pluginAlias=this.schema.pluginAlias,this.pluginType=this.schema.pluginType,this.strictValidation=this.schema.strictValidation,this.loadPluginConfig()}loadPluginConfig(){this.$api.get(`/config-editor/plugin/${encodeURIComponent(this.plugin.name)}`).subscribe({next:t=>{for(let i of t){let n={__uuid__:no(),name:i.name||this.schema.pluginAlias,config:i};this.pluginConfig.push(n)}this.pluginConfig.length?this.show=this.pluginConfig[0].__uuid__:(this.isFirstSave=!0,this.addBlock()),this.plugin.name==="homebridge-hue"&&this.pluginConfig.length&&this.homebridgeHueFix(this.pluginConfig[0].config)},error:t=>{var i;console.error(t),this.$toastr.error(((i=t.error)==null?void 0:i.message)||this.$translate.instant("plugins.config.load_error"),this.$translate.instant("toast.title_error"))}})}save(){return H(this,null,function*(){var i;this.saveInProgress=!0;let t=this.pluginConfig.map(n=>n.config);try{let n=yield ie(this.$api.post(`/config-editor/plugin/${encodeURIComponent(this.plugin.name)}`,t));if(this.saveInProgress=!1,this.plugin.name==="homebridge-config-ui-x")this.$settings.getAppSettings().catch(()=>{});else if(this.isFirstSave&&this.$settings.env.recommendChildBridges&&this.$settings.env.serviceMode&&((i=n[0])!=null&&i.platform)){this.$activeModal.close(),this.$plugin.bridgeSettings(this.plugin,!0);return}if(!["homebridge","homebridge-config-ui-x"].includes(this.plugin.name)&&this.$settings.env.serviceMode&&(yield this.getChildBridges(),this.childBridges.length>0)){this.$activeModal.close();let f=this.$modal.open(fi,{size:"lg",backdrop:"static"});f.componentInstance.bridges=this.childBridges.map(r=>({name:r.name,username:r.username}));return}this.$activeModal.close(),this.$modal.open(St,{size:"lg",backdrop:"static"})}catch(n){this.saveInProgress=!1,console.error(n),this.$toastr.error(this.$translate.instant("config.failed_to_save_config"),this.$translate.instant("toast.title_error"))}})}blockShown(t){this.show=t;for(let i of this.pluginConfig)i.name=i.config.name||i.name}blockHidden(t){this.show===t&&(this.show="")}addBlock(){let t=no();this.pluginConfig.push({__uuid__:t,name:this.schema.pluginAlias,config:{[this.pluginType]:this.schema.pluginAlias}}),this.formBlocksValid[this.pluginConfig.length-1]=!1,this.blockShown(t)}removeBlock(t){let i=this.pluginConfig.findIndex(n=>n.__uuid__===t);this.pluginConfig.splice(i,1),delete this.formBlocksValid[i],Object.keys(this.formBlocksValid).length||(this.formIsValid=!0)}getChildBridges(){return H(this,null,function*(){try{(yield ie(this.$api.get("/status/homebridge/child-bridges"))).forEach(i=>{this.plugin.name===i.plugin&&this.childBridges.push(i)})}catch(t){console.error(t),this.$toastr.error(t.message,this.$translate.instant("toast.title_error")),this.childBridges=[]}})}homebridgeHueFix(t){if(this.schema.schema.properties.users={type:"object",properties:{}},!(!t.users||typeof t.users!="object"))for(let i of Object.keys(t.users))this.schema.schema.properties.users.properties[i]={type:"string"}}onIsValid(t,i){this.formBlocksValid[i]=t,this.formIsValid=Object.values(this.formBlocksValid).every(n=>n)}static \u0275fac=function(i){return new(i||e)};static \u0275cmp=K({type:e,selectors:[["ng-component"]],inputs:{plugin:"plugin",schema:"schema"},decls:23,vars:17,consts:[[1,"modal-content"],[1,"modal-header"],[1,"modal-title"],["type","button","data-bs-dismiss","modal",1,"btn-close",3,"click","disabled"],[1,"modal-body","pb-0"],[1,"plugin-md",3,"data"],["ngbAccordion","",3,"closeOthers"],[1,"card","card-body"],[1,"mt-3"],[1,"modal-footer","justify-content-between"],[1,"text-start"],["type","button","data-bs-dismiss","modal",1,"btn","btn-elegant",3,"click","disabled"],[1,"text-center"],[1,"text-end","d-flex","align-items-center","justify-content-end"],["container","modal","placement","top","openDelay","150","triggers","hover",1,"fa","fa-fw","fa-xl","me-1",3,"ngClass","ngbTooltip"],["type","button","data-bs-dismiss","modal",1,"btn","btn-primary",3,"click","disabled"],[1,"fas","fa-fw","fa-spinner","fa-pulse"],["ngbAccordion","",3,"show","hide","closeOthers"],[1,"card",3,"ngbAccordionItem","collapsed","id"],["ngbAccordionHeader","",1,"card-header"],[1,"d-flex","align-items-center","justify-content-between"],[1,"m-0"],[1,"d-flex","align-items-center"],["container","modal","placement","left","openDelay","150","triggers","hover",1,"btn","btn-danger","ms-2",3,"ngbTooltip"],["ngbAccordionToggle","","container","modal","placement","left","openDelay","150","triggers","hover",1,"btn","btn-primary","ms-2","me-2",3,"ngbTooltip"],[1,"fa","fa-fw","fa-edit"],["container","modal","placement","left","openDelay","150","triggers","hover",1,"fa","fa-fw","fa-xl",3,"ngClass","ngbTooltip"],["ngbAccordionCollapse",""],["ngbAccordionBody","",1,"card-body"],[3,"dataChange","isValid","configSchema","data"],["container","modal","placement","left","openDelay","150","triggers","hover",1,"btn","btn-danger","ms-2",3,"click","ngbTooltip"],[1,"fa","fa-fw","fa-trash"]],template:function(i,n){i&1&&(d(0,"div",0)(1,"div",1)(2,"h5",2),h(3),c(),d(4,"button",3),_(5,"translate"),P("click",function(){return n.$activeModal.close("Dismiss")}),c()(),d(6,"div",4),S(7,sq,2,3,"markdown",5)(8,cq,3,1,"div",6)(9,Fq,4,4,"div",7),d(10,"div",8),S(11,Cq,2,3,"markdown",5),c()(),d(12,"div",9)(13,"div",10)(14,"button",11),P("click",function(){return n.$activeModal.close()}),h(15),_(16,"translate"),c()(),w(17,"div",12),d(18,"div",13),S(19,gq,2,4,"i",14),d(20,"button",15),P("click",function(){return n.save()}),S(21,hq,3,3,"span")(22,Eq,1,0,"i",16),c()()()()),i&2&&(s(3),R(n.plugin.displayName||n.plugin.name),s(),g("disabled",n.saveInProgress),W("aria-label",B(5,13,"form.button_close")),s(3),x(n.schema.headerDisplay?7:-1),s(),x(n.pluginConfig.length&&!n.schema.singular?8:-1),s(),x(n.pluginConfig.length&&n.schema.singular?9:-1),s(2),x(n.schema.footerDisplay?11:-1),s(3),g("disabled",n.saveInProgress),s(),q(" ",B(16,15,"form.button_close")," "),s(4),x(n.schema.singular?19:-1),s(),g("disabled",n.saveInProgress||!n.formIsValid&&n.strictValidation),s(),x(n.saveInProgress?-1:21),s(),x(n.saveInProgress?22:-1))},dependencies:[ni,ii,Ji,Ef,hf,gf,ti,Ff,mf,Ct,Ki,xC,AC,ge,IC,Cf],styles:[".manage-plugin-config-external-icons[_ngcontent-%COMP%]{font-size:1.5rem;font-weight:700;line-height:1;color:#000;opacity:.5;background-color:transparent;border:0}"]})}return e})();var bq=(e,u)=>({"green-text":e,"grey-text":u}),_q=(e,u)=>({"btn-danger":e,"btn-elegant":u}),yq=(e,u,t)=>({"fa-broom":e,"fa-undo":u,"fa-spinner fa-pulse":t});function vq(e,u){e&1&&(d(0,"div",12),w(1,"i",13),c(),d(2,"p",14),h(3),_(4,"translate"),c()),e&2&&(s(3),R(B(4,1,"reset.bridge_accessories.empty")))}function Bq(e,u){if(e&1){let t=z();d(0,"li",18)(1,"span"),h(2),w(3,"br"),d(4,"small",19),w(5,"i",20),h(6),_(7,"translate"),d(8,"span",21),h(9),c()()(),d(10,"button",22),_(11,"translate"),P("click",function(){let n=j(t).$implicit,f=C(2);return N(f.toggleList(n._id))}),w(12,"i",23),c()()}if(e&2){let t=u.$implicit,i=C(2);s(2),q(" ",t.name," "),s(3),g("ngClass",fu(12,bq,t._isPaired,!t._isPaired)),s(),q(" ",B(7,8,t._isPaired?"status.widget.qr_paired":"status.widget.qr_unpaired")," \xB7 "),s(3),R(t._username),s(),g("disabled",i.clicked)("ngClass",fu(15,_q,!i.toDelete.includes(t._id),i.toDelete.includes(t._id))),W("aria-label",B(11,10,"form.button_delete")),s(2),g("ngClass",Gt(18,yq,!i.toDelete.includes(t._id),i.toDelete.includes(t._id)&&!i.clicked,i.toDelete.includes(t._id)&&i.clicked))}}function xq(e,u){if(e&1&&(d(0,"div",12),w(1,"i",15),c(),d(2,"ul",16)(3,"li"),h(4),_(5,"translate"),c(),d(6,"li"),h(7),_(8,"translate"),c()(),d(9,"ul",17),We(10,Bq,13,22,"li",18,He),c()),e&2){let t=C();s(4),R(B(5,2,"reset.bridge_accessories.list_1")),s(3),R(B(8,4,"reset.clear_cache_single.list_3")),s(3),Ge(t.pairings)}}function wq(e,u){if(e&1){let t=z();d(0,"button",24),P("click",function(){j(t);let n=C();return N(n.$activeModal.dismiss("Dismiss"))}),h(1),_(2,"translate"),c()}if(e&2){let t=C();g("disabled",t.clicked),s(),q(" ",B(2,2,"form.button_close")," ")}}function Aq(e,u){if(e&1){let t=z();d(0,"button",25),P("click",function(){j(t);let n=C();return N(n.$activeModal.dismiss("Dismiss"))}),h(1),_(2,"translate"),c()}e&2&&(s(),q(" ",B(2,1,"form.button_close")," "))}function Iq(e,u){if(e&1&&h(0),e&2){let t=C(3);q(" (",t.toDelete.length,") ")}}function Sq(e,u){if(e&1&&(h(0),_(1,"translate"),S(2,Iq,1,1)),e&2){let t=C(2);q(" ",B(1,2,"form.button_remove")," "),s(2),x(t.toDelete.length>0?2:-1)}}function $q(e,u){e&1&&w(0,"i",27)}function kq(e,u){if(e&1){let t=z();d(0,"button",26),P("click",function(){j(t);let n=C();return N(n.cleanBridges())}),S(1,Sq,3,4)(2,$q,1,0,"i",27),c()}if(e&2){let t=C();g("disabled",!t.toDelete.length||t.clicked),s(),x(t.clicked?-1:1),s(),x(t.clicked?2:-1)}}var $C=(()=>{class e{$activeModal=$(Ce);$api=$(De);$router=$(qt);$toastr=$(ce);$translate=$(de);childBridges=[];clicked=!1;pairings=[];toDelete=[];constructor(){}ngOnInit(){this.loadPairings()}loadPairings(){return H(this,null,function*(){try{this.pairings=(yield ie(this.$api.get("/server/pairings"))).filter(t=>t._category==="bridge"&&!t._main&&this.childBridges.find(i=>i.username===t._username)).sort((t,i)=>t.name.localeCompare(i.name))}catch(t){console.error(t),this.$toastr.error(this.$translate.instant("settings.unpair_bridge.load_error"),this.$translate.instant("toast.title_error")),this.$activeModal.close()}})}toggleList(t){this.toDelete.includes(t)?this.toDelete=this.toDelete.filter(i=>i!==t):this.toDelete.push(t)}cleanBridges(){return this.clicked=!0,this.$api.delete("/server/pairings/accessories",{body:this.toDelete.map(t=>({id:t}))}).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:t=>{this.clicked=!1,console.error(t),this.$toastr.error(this.$translate.instant("reset.accessory_ind.fail"),this.$translate.instant("toast.title_error"))}})}static \u0275fac=function(i){return new(i||e)};static \u0275cmp=K({type:e,selectors:[["ng-component"]],inputs:{childBridges:"childBridges"},decls:17,vars:12,consts:[[1,"modal-content"],[1,"modal-header"],[1,"modal-title"],["type","button","data-bs-dismiss","modal",1,"btn-close",3,"click","disabled"],[1,"modal-body"],[1,"modal-footer","justify-content-between"],[1,"text-start"],["type","button","data-bs-dismiss","modal",1,"btn","btn-elegant",3,"disabled"],[1,"text-center"],["type","button","data-bs-dismiss","modal",1,"btn","btn-elegant"],[1,"text-end"],["type","button","data-bs-dismiss","modal",1,"btn","btn-danger",3,"disabled"],[1,"text-center","mb-3"],[1,"fas","fa-fw","fa-circle-check","primary-text",2,"font-size","75px"],[1,"mb-0","text-center"],[1,"fas","fa-fw","fa-broom","primary-text",2,"font-size","75px"],[1,"mb-3"],[1,"list-group","list-group-box","mb-0"],[1,"list-group-item","d-flex","justify-content-between","align-items-center"],[1,"grey-text"],[1,"fas","fa-fw","fa-link",3,"ngClass"],[1,"font-monospace"],[1,"btn","btn-danger","m-0","ms-3",3,"click","disabled","ngClass"],[1,"fas","fa-fw",3,"ngClass"],["type","button","data-bs-dismiss","modal",1,"btn","btn-elegant",3,"click","disabled"],["type","button","data-bs-dismiss","modal",1,"btn","btn-elegant",3,"click"],["type","button","data-bs-dismiss","modal",1,"btn","btn-danger",3,"click","disabled"],[1,"fas","fa-fw","fa-spinner","fa-pulse"]],template:function(i,n){i&1&&(d(0,"div",0)(1,"div",1)(2,"h5",2),h(3),_(4,"translate"),c(),d(5,"button",3),_(6,"translate"),P("click",function(){return n.$activeModal.dismiss("Dismiss")}),c()(),d(7,"div",4),S(8,vq,5,3)(9,xq,12,6),c(),d(10,"div",5)(11,"div",6),S(12,wq,3,4,"button",7),c(),d(13,"div",8),S(14,Aq,3,3,"button",9),c(),d(15,"div",10),S(16,kq,3,3,"button",11),c()()()),i&2&&(s(3),R(B(4,8,"child_bridge.reset_accessories")),s(2),g("disabled",n.clicked),W("aria-label",B(6,10,"form.button_close")),s(3),x(n.pairings.length===0?8:-1),s(),x(n.pairings.length>0?9:-1),s(3),x(n.pairings.length>0?12:-1),s(2),x(n.pairings.length===0?14:-1),s(2),x(n.pairings.length>0?16:-1))},dependencies:[Ct,ge],encapsulation:2})}return e})();var TC=Oe(tn(),1);var PC=Oe(Hs(),1),OC=Oe(Ws(),1);var Tq=e=>({prefix:e}),Pq=e=>({link:e}),kC=(e,u,t,i)=>({"fa-circle-o":e,"fa-spinner fa-pulse":u,"fa-check-circle green-text":t,"fa-times-circle red-text":i}),Oq=(e,u,t)=>({"fa-circle-o":e,"fa-spinner fa-pulse":u,"fa-times-circle red-text":t});function Mq(e,u){e&1&&(d(0,"li"),h(1),_(2,"translate"),c()),e&2&&(s(),R(B(2,1,"plugins.manage.scoped.process")))}function jq(e,u){e&1&&(d(0,"li"),h(1),_(2,"translate"),c()),e&2&&(s(),R(B(2,1,"plugins.manage.manual_update_command")))}function Nq(e,u){if(e&1&&(w(0,"li",8),_(1,"translate"),S(2,jq,3,3,"li")),e&2){let t=C();g("innerHTML",B(1,2,"plugins.manage.scoped.windows"),re),s(2),x(t.$settings.env.serviceMode?2:-1)}}function qq(e,u){if(e&1&&(d(0,"pre",17),h(1),c()),e&2){let t=C(2);s(),$s(`hb-service stop
|
|
28
|
+
`),c())},encapsulation:2})}return e})();var IC=(()=>{class e{transform(t){return t.replace(/\$\{\{HOSTNAME\}\}/g,location.hostname)}static \u0275fac=function(i){return new(i||e)};static \u0275pipe=ws({name:"interpolateMd",type:e,pure:!0})}return e})();function sq(e,u){if(e&1&&(w(0,"markdown",5),_(1,"interpolateMd")),e&2){let t=C();g("data",B(1,1,t.schema.headerDisplay))}}function lq(e,u){if(e&1){let t=z();d(0,"button",30),_(1,"translate"),P("click",function(){j(t);let n=C().$implicit,f=C(2);return N(f.removeBlock(n.__uuid__))}),w(2,"i",31),c()}e&2&&g("ngbTooltip",B(1,1,"form.button_delete"))}function dq(e,u){if(e&1){let t=z();d(0,"div",18)(1,"div",19)(2,"div",20)(3,"h5",21),h(4),c(),d(5,"div",22),S(6,lq,3,3,"button",23),d(7,"button",24),_(8,"translate"),w(9,"i",25),c(),w(10,"i",26),_(11,"translate"),c()()(),d(12,"div",27)(13,"div",28)(14,"app-schema-form",29),we("dataChange",function(n){let f=j(t).$implicit;return xe(f.config,n)||(f.config=n),N(n)}),P("isValid",function(n){let f=j(t).$index,r=C(2);return N(r.onIsValid(n,f))}),c()()()()}if(e&2){let t=u.$implicit,i=u.$index,n=C(2);g("ngbAccordionItem",t.__uuid__)("collapsed",n.show!==t.__uuid__)("id",t.__uuid__),s(4),R(t.name),s(2),x(n.plugin.name!=="homebridge-config-ui-x"&&n.show===t.__uuid__?6:-1),s(),g("ngbTooltip",B(8,10,"form.button_edit")),s(3),g("ngClass",n.formBlocksValid[i]?"fa-circle-check green-text":n.strictValidation?"fa-circle-exclamation red-text":"fa-circle-exclamation orange-text")("ngbTooltip",B(11,12,n.formBlocksValid[i]?"form.label_valid":n.strictValidation?"form.label_invalid_strict":"form.label_invalid")),s(4),g("configSchema",n.schema),Be("data",t.config)}}function cq(e,u){if(e&1){let t=z();d(0,"div",17),P("show",function(n){j(t);let f=C();return N(f.blockShown(n))})("hide",function(n){j(t);let f=C();return N(f.blockHidden(n))}),We(1,dq,15,14,"div",18,He),c()}if(e&2){let t=C();g("closeOthers",!0),s(),Ge(t.pluginConfig)}}function pq(e,u){e&1&&w(0,"app-homebridge-deconz")}function mq(e,u){e&1&&w(0,"app-homebridge-hue")}function Fq(e,u){if(e&1){let t=z();d(0,"div",7)(1,"app-schema-form",29),we("dataChange",function(n){j(t);let f=C();return xe(f.pluginConfig[0].config,n)||(f.pluginConfig[0].config=n),N(n)}),P("isValid",function(n){j(t);let f=C();return N(f.onIsValid(n,0))}),c(),S(2,pq,1,0,"app-homebridge-deconz")(3,mq,1,0,"app-homebridge-hue"),c()}if(e&2){let t=C();s(),g("configSchema",t.schema),Be("data",t.pluginConfig[0].config),s(),x(t.plugin.name==="homebridge-deconz"?2:-1),s(),x(t.plugin.name==="homebridge-hue"?3:-1)}}function Cq(e,u){if(e&1&&(w(0,"markdown",5),_(1,"interpolateMd")),e&2){let t=C();g("data",B(1,1,t.schema.footerDisplay))}}function gq(e,u){if(e&1&&(w(0,"i",14),_(1,"translate")),e&2){let t=C();g("ngClass",t.formIsValid?"fa-circle-check green-text":t.strictValidation?"fa-circle-exclamation red-text":"fa-circle-exclamation orange-text")("ngbTooltip",B(1,2,t.formIsValid?"form.label_valid":t.strictValidation?"form.label_invalid_strict":"form.label_invalid"))}}function hq(e,u){e&1&&(d(0,"span"),h(1),_(2,"translate"),c()),e&2&&(s(),R(B(2,1,"form.button_save")))}function Eq(e,u){e&1&&w(0,"i",16)}var SC=(()=>{class e{$activeModal=$(Ce);$api=$(De);$plugin=$(xu);$modal=$(Ue);$settings=$(ke);$toastr=$(ce);$translate=$(de);plugin;schema;pluginAlias;pluginType;pluginConfig=[];form={};show="";saveInProgress;childBridges=[];isFirstSave=!1;formBlocksValid={};formIsValid=!0;strictValidation=!1;constructor(){}ngOnInit(){this.pluginAlias=this.schema.pluginAlias,this.pluginType=this.schema.pluginType,this.strictValidation=this.schema.strictValidation,this.loadPluginConfig()}loadPluginConfig(){this.$api.get(`/config-editor/plugin/${encodeURIComponent(this.plugin.name)}`).subscribe({next:t=>{for(let i of t){let n={__uuid__:no(),name:i.name||this.schema.pluginAlias,config:i};this.pluginConfig.push(n)}this.pluginConfig.length?this.show=this.pluginConfig[0].__uuid__:(this.isFirstSave=!0,this.addBlock()),this.plugin.name==="homebridge-hue"&&this.pluginConfig.length&&this.homebridgeHueFix(this.pluginConfig[0].config)},error:t=>{var i;console.error(t),this.$toastr.error(((i=t.error)==null?void 0:i.message)||this.$translate.instant("plugins.config.load_error"),this.$translate.instant("toast.title_error"))}})}save(){return H(this,null,function*(){var i;this.saveInProgress=!0;let t=this.pluginConfig.map(n=>n.config);try{let n=yield ie(this.$api.post(`/config-editor/plugin/${encodeURIComponent(this.plugin.name)}`,t));if(this.saveInProgress=!1,this.plugin.name==="homebridge-config-ui-x")this.$settings.getAppSettings().catch(()=>{});else if(this.isFirstSave&&this.$settings.env.recommendChildBridges&&this.$settings.env.serviceMode&&((i=n[0])!=null&&i.platform)){this.$activeModal.close(),this.$plugin.bridgeSettings(this.plugin,!0);return}if(!["homebridge","homebridge-config-ui-x"].includes(this.plugin.name)&&this.$settings.env.serviceMode&&(yield this.getChildBridges(),this.childBridges.length>0)){this.$activeModal.close();let f=this.$modal.open(fi,{size:"lg",backdrop:"static"});f.componentInstance.bridges=this.childBridges.map(r=>({name:r.name,username:r.username}));return}this.$activeModal.close(),this.$modal.open(St,{size:"lg",backdrop:"static"})}catch(n){this.saveInProgress=!1,console.error(n),this.$toastr.error(this.$translate.instant("config.failed_to_save_config"),this.$translate.instant("toast.title_error"))}})}blockShown(t){this.show=t;for(let i of this.pluginConfig)i.name=i.config.name||i.name}blockHidden(t){this.show===t&&(this.show="")}addBlock(){let t=no();this.pluginConfig.push({__uuid__:t,name:this.schema.pluginAlias,config:{[this.pluginType]:this.schema.pluginAlias}}),this.formBlocksValid[this.pluginConfig.length-1]=!1,this.blockShown(t)}removeBlock(t){let i=this.pluginConfig.findIndex(n=>n.__uuid__===t);this.pluginConfig.splice(i,1),delete this.formBlocksValid[i],Object.keys(this.formBlocksValid).length||(this.formIsValid=!0)}getChildBridges(){return H(this,null,function*(){try{(yield ie(this.$api.get("/status/homebridge/child-bridges"))).forEach(i=>{this.plugin.name===i.plugin&&this.childBridges.push(i)})}catch(t){console.error(t),this.$toastr.error(t.message,this.$translate.instant("toast.title_error")),this.childBridges=[]}})}homebridgeHueFix(t){if(this.schema.schema.properties.users={type:"object",properties:{}},!(!t.users||typeof t.users!="object"))for(let i of Object.keys(t.users))this.schema.schema.properties.users.properties[i]={type:"string"}}onIsValid(t,i){this.formBlocksValid[i]=t,this.formIsValid=Object.values(this.formBlocksValid).every(n=>n)}static \u0275fac=function(i){return new(i||e)};static \u0275cmp=K({type:e,selectors:[["ng-component"]],inputs:{plugin:"plugin",schema:"schema"},decls:23,vars:17,consts:[[1,"modal-content"],[1,"modal-header"],[1,"modal-title"],["type","button","data-bs-dismiss","modal",1,"btn-close",3,"click","disabled"],[1,"modal-body","pb-0"],[1,"plugin-md",3,"data"],["ngbAccordion","",3,"closeOthers"],[1,"card","card-body"],[1,"mt-3"],[1,"modal-footer","justify-content-between"],[1,"text-start"],["type","button","data-bs-dismiss","modal",1,"btn","btn-elegant",3,"click","disabled"],[1,"text-center"],[1,"text-end","d-flex","align-items-center","justify-content-end"],["container","modal","placement","top","openDelay","150","triggers","hover",1,"fa","fa-fw","fa-xl","me-2",3,"ngClass","ngbTooltip"],["type","button","data-bs-dismiss","modal",1,"btn","btn-primary",3,"click","disabled"],[1,"fas","fa-fw","fa-spinner","fa-pulse"],["ngbAccordion","",3,"show","hide","closeOthers"],[1,"card",3,"ngbAccordionItem","collapsed","id"],["ngbAccordionHeader","",1,"card-header"],[1,"d-flex","align-items-center","justify-content-between"],[1,"m-0"],[1,"d-flex","align-items-center"],["container","modal","placement","left","openDelay","150","triggers","hover",1,"btn","btn-danger","ms-2",3,"ngbTooltip"],["ngbAccordionToggle","","container","modal","placement","left","openDelay","150","triggers","hover",1,"btn","btn-primary","ms-2","me-2",3,"ngbTooltip"],[1,"fa","fa-fw","fa-edit"],["container","modal","placement","left","openDelay","150","triggers","hover",1,"fa","fa-fw","fa-xl",3,"ngClass","ngbTooltip"],["ngbAccordionCollapse",""],["ngbAccordionBody","",1,"card-body"],[3,"dataChange","isValid","configSchema","data"],["container","modal","placement","left","openDelay","150","triggers","hover",1,"btn","btn-danger","ms-2",3,"click","ngbTooltip"],[1,"fa","fa-fw","fa-trash"]],template:function(i,n){i&1&&(d(0,"div",0)(1,"div",1)(2,"h5",2),h(3),c(),d(4,"button",3),_(5,"translate"),P("click",function(){return n.$activeModal.close("Dismiss")}),c()(),d(6,"div",4),S(7,sq,2,3,"markdown",5)(8,cq,3,1,"div",6)(9,Fq,4,4,"div",7),d(10,"div",8),S(11,Cq,2,3,"markdown",5),c()(),d(12,"div",9)(13,"div",10)(14,"button",11),P("click",function(){return n.$activeModal.close()}),h(15),_(16,"translate"),c()(),w(17,"div",12),d(18,"div",13),S(19,gq,2,4,"i",14),d(20,"button",15),P("click",function(){return n.save()}),S(21,hq,3,3,"span")(22,Eq,1,0,"i",16),c()()()()),i&2&&(s(3),R(n.plugin.displayName||n.plugin.name),s(),g("disabled",n.saveInProgress),W("aria-label",B(5,13,"form.button_close")),s(3),x(n.schema.headerDisplay?7:-1),s(),x(n.pluginConfig.length&&!n.schema.singular?8:-1),s(),x(n.pluginConfig.length&&n.schema.singular?9:-1),s(2),x(n.schema.footerDisplay?11:-1),s(3),g("disabled",n.saveInProgress),s(),q(" ",B(16,15,"form.button_close")," "),s(4),x(n.schema.singular?19:-1),s(),g("disabled",n.saveInProgress||!n.formIsValid&&n.strictValidation),s(),x(n.saveInProgress?-1:21),s(),x(n.saveInProgress?22:-1))},dependencies:[ni,ii,Ji,Ef,hf,gf,ti,Ff,mf,Ct,Ki,xC,AC,ge,IC,Cf],styles:[".manage-plugin-config-external-icons[_ngcontent-%COMP%]{font-size:1.5rem;font-weight:700;line-height:1;color:#000;opacity:.5;background-color:transparent;border:0}"]})}return e})();var bq=(e,u)=>({"green-text":e,"grey-text":u}),_q=(e,u)=>({"btn-danger":e,"btn-elegant":u}),yq=(e,u,t)=>({"fa-broom":e,"fa-undo":u,"fa-spinner fa-pulse":t});function vq(e,u){e&1&&(d(0,"div",12),w(1,"i",13),c(),d(2,"p",14),h(3),_(4,"translate"),c()),e&2&&(s(3),R(B(4,1,"reset.bridge_accessories.empty")))}function Bq(e,u){if(e&1){let t=z();d(0,"li",18)(1,"span"),h(2),w(3,"br"),d(4,"small",19),w(5,"i",20),h(6),_(7,"translate"),d(8,"span",21),h(9),c()()(),d(10,"button",22),_(11,"translate"),P("click",function(){let n=j(t).$implicit,f=C(2);return N(f.toggleList(n._id))}),w(12,"i",23),c()()}if(e&2){let t=u.$implicit,i=C(2);s(2),q(" ",t.name," "),s(3),g("ngClass",fu(12,bq,t._isPaired,!t._isPaired)),s(),q(" ",B(7,8,t._isPaired?"status.widget.qr_paired":"status.widget.qr_unpaired")," \xB7 "),s(3),R(t._username),s(),g("disabled",i.clicked)("ngClass",fu(15,_q,!i.toDelete.includes(t._id),i.toDelete.includes(t._id))),W("aria-label",B(11,10,"form.button_delete")),s(2),g("ngClass",Gt(18,yq,!i.toDelete.includes(t._id),i.toDelete.includes(t._id)&&!i.clicked,i.toDelete.includes(t._id)&&i.clicked))}}function xq(e,u){if(e&1&&(d(0,"div",12),w(1,"i",15),c(),d(2,"ul",16)(3,"li"),h(4),_(5,"translate"),c(),d(6,"li"),h(7),_(8,"translate"),c()(),d(9,"ul",17),We(10,Bq,13,22,"li",18,He),c()),e&2){let t=C();s(4),R(B(5,2,"reset.bridge_accessories.list_1")),s(3),R(B(8,4,"reset.clear_cache_single.list_3")),s(3),Ge(t.pairings)}}function wq(e,u){if(e&1){let t=z();d(0,"button",24),P("click",function(){j(t);let n=C();return N(n.$activeModal.dismiss("Dismiss"))}),h(1),_(2,"translate"),c()}if(e&2){let t=C();g("disabled",t.clicked),s(),q(" ",B(2,2,"form.button_close")," ")}}function Aq(e,u){if(e&1){let t=z();d(0,"button",25),P("click",function(){j(t);let n=C();return N(n.$activeModal.dismiss("Dismiss"))}),h(1),_(2,"translate"),c()}e&2&&(s(),q(" ",B(2,1,"form.button_close")," "))}function Iq(e,u){if(e&1&&h(0),e&2){let t=C(3);q(" (",t.toDelete.length,") ")}}function Sq(e,u){if(e&1&&(h(0),_(1,"translate"),S(2,Iq,1,1)),e&2){let t=C(2);q(" ",B(1,2,"form.button_remove")," "),s(2),x(t.toDelete.length>0?2:-1)}}function $q(e,u){e&1&&w(0,"i",27)}function kq(e,u){if(e&1){let t=z();d(0,"button",26),P("click",function(){j(t);let n=C();return N(n.cleanBridges())}),S(1,Sq,3,4)(2,$q,1,0,"i",27),c()}if(e&2){let t=C();g("disabled",!t.toDelete.length||t.clicked),s(),x(t.clicked?-1:1),s(),x(t.clicked?2:-1)}}var $C=(()=>{class e{$activeModal=$(Ce);$api=$(De);$router=$(qt);$toastr=$(ce);$translate=$(de);childBridges=[];clicked=!1;pairings=[];toDelete=[];constructor(){}ngOnInit(){this.loadPairings()}loadPairings(){return H(this,null,function*(){try{this.pairings=(yield ie(this.$api.get("/server/pairings"))).filter(t=>t._category==="bridge"&&!t._main&&this.childBridges.find(i=>i.username===t._username)).sort((t,i)=>t.name.localeCompare(i.name))}catch(t){console.error(t),this.$toastr.error(this.$translate.instant("settings.unpair_bridge.load_error"),this.$translate.instant("toast.title_error")),this.$activeModal.close()}})}toggleList(t){this.toDelete.includes(t)?this.toDelete=this.toDelete.filter(i=>i!==t):this.toDelete.push(t)}cleanBridges(){return this.clicked=!0,this.$api.delete("/server/pairings/accessories",{body:this.toDelete.map(t=>({id:t}))}).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:t=>{this.clicked=!1,console.error(t),this.$toastr.error(this.$translate.instant("reset.accessory_ind.fail"),this.$translate.instant("toast.title_error"))}})}static \u0275fac=function(i){return new(i||e)};static \u0275cmp=K({type:e,selectors:[["ng-component"]],inputs:{childBridges:"childBridges"},decls:17,vars:12,consts:[[1,"modal-content"],[1,"modal-header"],[1,"modal-title"],["type","button","data-bs-dismiss","modal",1,"btn-close",3,"click","disabled"],[1,"modal-body"],[1,"modal-footer","justify-content-between"],[1,"text-start"],["type","button","data-bs-dismiss","modal",1,"btn","btn-elegant",3,"disabled"],[1,"text-center"],["type","button","data-bs-dismiss","modal",1,"btn","btn-elegant"],[1,"text-end"],["type","button","data-bs-dismiss","modal",1,"btn","btn-danger",3,"disabled"],[1,"text-center","mb-3"],[1,"fas","fa-fw","fa-circle-check","primary-text",2,"font-size","75px"],[1,"mb-0","text-center"],[1,"fas","fa-fw","fa-broom","primary-text",2,"font-size","75px"],[1,"mb-3"],[1,"list-group","list-group-box","mb-0"],[1,"list-group-item","d-flex","justify-content-between","align-items-center"],[1,"grey-text"],[1,"fas","fa-fw","fa-link",3,"ngClass"],[1,"font-monospace"],[1,"btn","btn-danger","m-0","ms-3",3,"click","disabled","ngClass"],[1,"fas","fa-fw",3,"ngClass"],["type","button","data-bs-dismiss","modal",1,"btn","btn-elegant",3,"click","disabled"],["type","button","data-bs-dismiss","modal",1,"btn","btn-elegant",3,"click"],["type","button","data-bs-dismiss","modal",1,"btn","btn-danger",3,"click","disabled"],[1,"fas","fa-fw","fa-spinner","fa-pulse"]],template:function(i,n){i&1&&(d(0,"div",0)(1,"div",1)(2,"h5",2),h(3),_(4,"translate"),c(),d(5,"button",3),_(6,"translate"),P("click",function(){return n.$activeModal.dismiss("Dismiss")}),c()(),d(7,"div",4),S(8,vq,5,3)(9,xq,12,6),c(),d(10,"div",5)(11,"div",6),S(12,wq,3,4,"button",7),c(),d(13,"div",8),S(14,Aq,3,3,"button",9),c(),d(15,"div",10),S(16,kq,3,3,"button",11),c()()()),i&2&&(s(3),R(B(4,8,"child_bridge.reset_accessories")),s(2),g("disabled",n.clicked),W("aria-label",B(6,10,"form.button_close")),s(3),x(n.pairings.length===0?8:-1),s(),x(n.pairings.length>0?9:-1),s(3),x(n.pairings.length>0?12:-1),s(2),x(n.pairings.length===0?14:-1),s(2),x(n.pairings.length>0?16:-1))},dependencies:[Ct,ge],encapsulation:2})}return e})();var TC=Oe(tn(),1);var PC=Oe(Hs(),1),OC=Oe(Ws(),1);var Tq=e=>({prefix:e}),Pq=e=>({link:e}),kC=(e,u,t,i)=>({"fa-circle-o":e,"fa-spinner fa-pulse":u,"fa-check-circle green-text":t,"fa-times-circle red-text":i}),Oq=(e,u,t)=>({"fa-circle-o":e,"fa-spinner fa-pulse":u,"fa-times-circle red-text":t});function Mq(e,u){e&1&&(d(0,"li"),h(1),_(2,"translate"),c()),e&2&&(s(),R(B(2,1,"plugins.manage.scoped.process")))}function jq(e,u){e&1&&(d(0,"li"),h(1),_(2,"translate"),c()),e&2&&(s(),R(B(2,1,"plugins.manage.manual_update_command")))}function Nq(e,u){if(e&1&&(w(0,"li",8),_(1,"translate"),S(2,jq,3,3,"li")),e&2){let t=C();g("innerHTML",B(1,2,"plugins.manage.scoped.windows"),re),s(2),x(t.$settings.env.serviceMode?2:-1)}}function qq(e,u){if(e&1&&(d(0,"pre",17),h(1),c()),e&2){let t=C(2);s(),$s(`hb-service stop
|
|
29
29
|
npm install -g `,t.plugin.newHbScope.to,"@",t.plugin.newHbScope.switch,`
|
|
30
30
|
npm uninstall -g `,t.plugin.newHbScope.from,`
|
|
31
31
|
hb-service start`)}}function Vq(e,u){if(e&1&&(d(0,"ul",17)(1,"li"),h(2),_(3,"translate"),d(4,"span",18),h(5),c()(),d(6,"li"),h(7),_(8,"translate"),d(9,"span",18),h(10),c()(),d(11,"li"),h(12),_(13,"translate"),c()()),e&2){let t=C(2);s(2),q("",B(3,5,"plugins.manage.install")," "),s(3),R(t.plugin.newHbScope.to),s(2),q(" ",B(8,7,"plugins.manage.uninstall")," "),s(3),R(t.plugin.newHbScope.from),s(2),R(B(13,9,"menu.hbrestart.title"))}}function Rq(e,u){if(e&1&&S(0,qq,2,3,"pre",17)(1,Vq,14,11,"ul",17),e&2){let t=C();x(t.$settings.env.serviceMode?0:-1),s(),x(t.$settings.env.serviceMode?-1:1)}}function Lq(e,u){if(e&1&&(d(0,"div",9)(1,"ul",19)(2,"li"),w(3,"i",20),h(4),_(5,"translate"),d(6,"span",18),h(7),c()(),d(8,"li"),w(9,"i",20),h(10),_(11,"translate"),d(12,"span",18),h(13),c()(),d(14,"li"),w(15,"i",20),h(16),_(17,"translate"),c()()()),e&2){let t=C();s(3),g("ngClass",Ju(14,kC,!t.installing&&!t.installed&&!t.failure,t.installing,t.installed&&!t.failure,!t.installed&&t.failure)),s(),q(" ",B(5,8,"plugins.manage.install")," "),s(3),R(t.plugin.newHbScope.to),s(2),g("ngClass",Ju(19,kC,!t.uninstalling&&!t.uninstalled&&!t.failure,t.uninstalling,t.uninstalled&&!t.failure,!t.uninstalled&&t.failure)),s(),q(" ",B(11,10,"plugins.manage.uninstall")," "),s(3),R(t.plugin.newHbScope.from),s(2),g("ngClass",Gt(24,Oq,!t.restarting&&!t.failure,t.restarting,t.failure)),s(),q(" ",B(17,12,"menu.hbrestart.title")," ")}}function zq(e,u){if(e&1){let t=z();d(0,"div",10)(1,"p"),h(2),_(3,"translate"),c(),d(4,"p",18),h(5),c(),d(6,"button",21),P("click",function(){j(t);let n=C();return N(n.downloadLogFile())}),h(7),_(8,"translate"),c()()}if(e&2){let t=C();s(2),R(B(3,3,"plugins.manage.scoped.error")),s(3),R(t.failure),s(2),R(B(8,5,"form.button_download"))}}function Uq(e,u){if(e&1){let t=z();d(0,"button",22),_(1,"translate"),P("click",function(){j(t);let n=C();return N(n.$activeModal.dismiss("Dismiss"))}),h(2),_(3,"translate"),c()}if(e&2){let t=C();g("disabled",t.installing||t.uninstalling||t.restarting),W("aria-label",B(1,3,"form.button_close")),s(2),q(" ",B(3,5,"form.button_close")," ")}}function Hq(e,u){if(e&1){let t=z();d(0,"button",22),_(1,"translate"),P("click",function(){j(t);let n=C();return N(n.$activeModal.dismiss("Dismiss"))}),h(2),_(3,"translate"),c()}if(e&2){let t=C();g("disabled",t.installing||t.uninstalling||t.restarting),W("aria-label",B(1,3,"form.button_close")),s(2),q(" ",B(3,5,"form.button_close")," ")}}function Wq(e,u){e&1&&(d(0,"span"),h(1),_(2,"translate"),c()),e&2&&(s(),q(" ",B(2,1,"plugins.node_update.continue")," "))}function Gq(e,u){e&1&&w(0,"i",24)}function Kq(e,u){if(e&1){let t=z();d(0,"button",23),P("click",function(){j(t);let n=C();return N(n.doSwitch())}),S(1,Wq,3,3,"span")(2,Gq,1,0,"i",24),c()}if(e&2){let t=C();g("disabled",t.installing||t.uninstalling||t.restarting||!t.onlineUpdateOk||t.failure),s(),x(!t.installing&&!t.uninstalling&&!t.restarting?1:-1),s(),x((t.installing||t.uninstalling||t.restarting)&&!t.failure?2:-1)}}var MC=(()=>{class e{$activeModal=$(Ce);$api=$(De);$router=$(qt);$settings=$(ke);$toastr=$(ce);$translate=$(de);$ws=$(ui);plugin;installing=!1;installed=!1;uninstalling=!1;uninstalled=!1;restarting=!1;failure="";onlineUpdateOk;moreInfo='<a href="https://github.com/homebridge/plugins/wiki/Scoped-Plugins" target="_blank"><i class="fa fa-fw fa-external-link-alt primary-text"></i></a>';prefix='<span class="font-monospace">@homebridge-plugins/</span>';io;term;termTarget;fitAddon=new OC.FitAddon;errorLog="";constructor(){this.term=new PC.Terminal({theme:{background:"#00000000",foreground:this.$settings.actualLightingMode==="light"?"#333333":"#eeeeee",cursor:"#d2d2d2",selection:"#d2d2d2"},allowTransparency:!0}),this.term.loadAddon(this.fitAddon)}ngOnInit(){this.onlineUpdateOk=this.$settings.env.platform!=="win32",this.io=this.$ws.connectToNamespace("plugins"),this.termTarget=document.getElementById("plugin-output"),this.term.open(this.termTarget),this.fitAddon.fit(),this.io.socket.on("stdout",t=>{this.term.write(t);let i=t.toString().replace(/\x1B\[(\d{1,3}(;\d{1,2})?)?[mGK]/g,"").trimEnd();i&&(this.errorLog+=`${i}\r
|