homebridge-config-ui-x 5.0.0-beta.35 → 5.0.0-beta.37

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (179) hide show
  1. package/CHANGELOG.md +46 -15
  2. package/config.schema.json +2 -2
  3. package/dist/bin/hb-service.js +1 -1
  4. package/dist/bin/hb-service.js.map +1 -1
  5. package/dist/core/auth/jwt.strategy.d.ts +3 -1
  6. package/dist/core/config/config.service.js +1 -1
  7. package/dist/modules/accessories/accessories.controller.js +1 -1
  8. package/dist/modules/accessories/accessories.controller.js.map +1 -1
  9. package/dist/modules/config-editor/config-editor.controller.js +1 -1
  10. package/dist/modules/config-editor/config-editor.controller.js.map +1 -1
  11. package/dist/modules/platform-tools/hb-service/hb-service.controller.js +1 -1
  12. package/dist/modules/platform-tools/hb-service/hb-service.controller.js.map +1 -1
  13. package/dist/modules/plugins/plugins.service.d.ts +2 -1
  14. package/dist/modules/plugins/plugins.service.js +46 -29
  15. package/dist/modules/plugins/plugins.service.js.map +1 -1
  16. package/dist/modules/server/server.controller.d.ts +3 -0
  17. package/dist/modules/server/server.controller.js +12 -0
  18. package/dist/modules/server/server.controller.js.map +1 -1
  19. package/dist/modules/server/server.service.d.ts +1 -0
  20. package/dist/modules/server/server.service.js +10 -3
  21. package/dist/modules/server/server.service.js.map +1 -1
  22. package/dist/modules/status/status.gateway.d.ts +1 -0
  23. package/dist/modules/status/status.service.d.ts +1 -0
  24. package/dist/modules/status/status.service.js +1 -0
  25. package/dist/modules/status/status.service.js.map +1 -1
  26. package/dist/modules/users/users.controller.js +6 -6
  27. package/dist/modules/users/users.controller.js.map +1 -1
  28. package/package.json +29 -33
  29. package/public/3rdpartylicenses.txt +8 -8
  30. package/public/chunk-2FYN4AQW.js +1 -0
  31. package/public/{chunk-NEL5H4ZP.js → chunk-2G5W635D.js} +16 -16
  32. package/public/{chunk-XQNHUDX7.js → chunk-2UAJRTNP.js} +1 -1
  33. package/public/chunk-2VHNXX7S.js +1 -0
  34. package/public/{chunk-4SJ5YXGK.js → chunk-3BOXNWOI.js} +1 -1
  35. package/public/chunk-3X3JN7L2.js +1 -0
  36. package/public/chunk-43DZUHXS.js +1 -0
  37. package/public/chunk-55C65QIT.js +1 -0
  38. package/public/chunk-5F65XVN2.js +6 -0
  39. package/public/{chunk-W4HHTKG5.js → chunk-5GX76JEA.js} +1 -1
  40. package/public/chunk-5RZMUJ6S.js +1 -0
  41. package/public/{chunk-Y63TC2BD.js → chunk-5ZSMI5RW.js} +1 -1
  42. package/public/chunk-6DSQDU6X.js +1 -0
  43. package/public/{chunk-7BCHGXO4.js → chunk-6LUEJV3C.js} +1 -1
  44. package/public/{chunk-QBQBIGHH.js → chunk-6ZW6DFXM.js} +1 -1
  45. package/public/chunk-7HPEGK3R.js +1 -0
  46. package/public/chunk-A6ASL2RK.js +1 -0
  47. package/public/{chunk-SQJXCJMZ.js → chunk-AFHUSYKG.js} +1 -1
  48. package/public/chunk-BFEMJZWI.js +14 -0
  49. package/public/{chunk-5KLZWFYX.js → chunk-BN42B6ZN.js} +1 -1
  50. package/public/chunk-BQQ7SI73.js +1 -0
  51. package/public/chunk-BY7XCS73.js +1 -0
  52. package/public/chunk-C2RICIO2.js +1 -0
  53. package/public/{chunk-NSCP3SOQ.js → chunk-C2UJXFYZ.js} +1 -1
  54. package/public/chunk-CKRLUDH6.js +1 -0
  55. package/public/chunk-CNUMFNDI.js +1 -0
  56. package/public/{chunk-CLZ6XK3S.js → chunk-D67RSISA.js} +1 -1
  57. package/public/chunk-E66CIXOF.js +5 -0
  58. package/public/chunk-ELVGIIRZ.js +7 -0
  59. package/public/{chunk-K5KJYFWM.js → chunk-ESV4M6MU.js} +1 -1
  60. package/public/chunk-FMKN5WOC.js +1 -0
  61. package/public/chunk-G67F4LRX.js +1 -0
  62. package/public/{chunk-23M23WV2.js → chunk-HIDFXEU7.js} +1 -1
  63. package/public/chunk-HLCA3Q2D.js +1 -0
  64. package/public/chunk-I7356EVZ.js +1 -0
  65. package/public/chunk-I7MMB7MD.js +1 -0
  66. package/public/chunk-ICBZE4AQ.js +1 -0
  67. package/public/{chunk-FN5IQFDD.js → chunk-IK7NDR5D.js} +1 -1
  68. package/public/chunk-ILMG4QEX.js +1 -0
  69. package/public/chunk-IS2FWNNK.js +1 -0
  70. package/public/chunk-J535GCZZ.js +1 -0
  71. package/public/{chunk-OVFRRCBZ.js → chunk-J6THMA7C.js} +8 -8
  72. package/public/{chunk-474BOAR2.js → chunk-KBQ7X43U.js} +1 -1
  73. package/public/chunk-KFPAD73Q.js +1 -0
  74. package/public/chunk-KLH3Q4Y2.js +1 -0
  75. package/public/{chunk-TFXCOLWH.js → chunk-KP734VBH.js} +1 -1
  76. package/public/{chunk-422KDBY6.js → chunk-KPSDMQ2B.js} +1 -1
  77. package/public/chunk-LCDLXCTN.js +1 -0
  78. package/public/chunk-LCZPCRGZ.js +1 -0
  79. package/public/{chunk-H6I47YZL.js → chunk-LPZYBAR5.js} +1 -1
  80. package/public/{chunk-MVXWO6QY.js → chunk-LRWWB655.js} +1 -1
  81. package/public/{chunk-XP7D2PRA.js → chunk-NDNNBXT7.js} +1 -1
  82. package/public/{chunk-BOT4S75X.js → chunk-NKOXS7BF.js} +1 -1
  83. package/public/chunk-OHS6VJO6.js +1 -0
  84. package/public/chunk-OKRGBGAT.js +1 -0
  85. package/public/{chunk-WJQ5NIPP.js → chunk-PZFLYD2M.js} +1 -1
  86. package/public/chunk-QVTW3TV2.js +1 -0
  87. package/public/{chunk-C2XBPNOQ.js → chunk-QZ7FBUFJ.js} +1 -1
  88. package/public/chunk-RNZPYTKX.js +1 -0
  89. package/public/{chunk-YTJNIFE4.js → chunk-RWV2PLEE.js} +1 -1
  90. package/public/chunk-RYTJZDC4.js +1 -0
  91. package/public/{chunk-DUJ3BGGS.js → chunk-SASLISZ4.js} +1 -1
  92. package/public/{chunk-YUIH2PS7.js → chunk-SIUO7YU6.js} +2 -2
  93. package/public/{chunk-QNMOJRFY.js → chunk-SRFN5JIN.js} +1 -1
  94. package/public/chunk-T3Y7RYJZ.js +2 -0
  95. package/public/{chunk-RP5TYXWG.js → chunk-TAQCEDBC.js} +1 -1
  96. package/public/chunk-UFQ3GRVA.js +1 -0
  97. package/public/chunk-UGU6PGAK.js +1 -0
  98. package/public/chunk-UUN6ZLIL.js +1 -0
  99. package/public/chunk-V7AAZRAR.js +1 -0
  100. package/public/{chunk-XFK2EZ3K.js → chunk-VGMRIFZA.js} +1 -1
  101. package/public/{chunk-JF5AT3NK.js → chunk-VOG67KUU.js} +1 -1
  102. package/public/chunk-W37K3EET.js +1 -0
  103. package/public/{chunk-MW5FLUTC.js → chunk-WK4QAH4N.js} +1 -1
  104. package/public/chunk-WKCJOWBB.js +20 -0
  105. package/public/chunk-WLL3PI56.js +1 -0
  106. package/public/chunk-WZSACMEZ.js +1 -0
  107. package/public/chunk-X33TW7UK.js +1 -0
  108. package/public/{chunk-IZGH4P6X.js → chunk-XBUA2BEY.js} +1 -1
  109. package/public/{chunk-NFG4Y4PX.js → chunk-Z4JLHDGQ.js} +1 -1
  110. package/public/chunk-Z6DMRX3O.js +1 -0
  111. package/public/chunk-ZA7ZUC3I.js +1 -0
  112. package/public/chunk-ZGB2LSNB.js +1 -0
  113. package/public/index.html +2 -2
  114. package/public/main-323ROD6Y.js +1 -0
  115. package/public/styles-IBQHST5Z.css +1 -0
  116. package/scripts/upgrade-install-plugin.sh +1 -1
  117. package/public/chunk-3ANQRJ75.js +0 -14
  118. package/public/chunk-3NBOT4LS.js +0 -1
  119. package/public/chunk-3NUILNOV.js +0 -1
  120. package/public/chunk-4K52REGI.js +0 -1
  121. package/public/chunk-675OFXLW.js +0 -1
  122. package/public/chunk-6PASDO7Z.js +0 -1
  123. package/public/chunk-6ZBSMLTF.js +0 -1
  124. package/public/chunk-7QIBCP7M.js +0 -1
  125. package/public/chunk-A4EWGMID.js +0 -1
  126. package/public/chunk-BMWLHPL2.js +0 -1
  127. package/public/chunk-C5KFW74N.js +0 -1
  128. package/public/chunk-CKNHTRCL.js +0 -7
  129. package/public/chunk-CLRNWSOV.js +0 -1
  130. package/public/chunk-CYTZT7JJ.js +0 -1
  131. package/public/chunk-CZFALVDS.js +0 -1
  132. package/public/chunk-DQ74FZ3Y.js +0 -1
  133. package/public/chunk-E5E5IQT6.js +0 -1
  134. package/public/chunk-EEDUUZ6J.js +0 -1
  135. package/public/chunk-FAJ5V6VJ.js +0 -1
  136. package/public/chunk-FOI6EIET.js +0 -1
  137. package/public/chunk-FTQGTOHC.js +0 -1
  138. package/public/chunk-GPDMT3AA.js +0 -1
  139. package/public/chunk-GQSQBG3U.js +0 -1
  140. package/public/chunk-GUVLPN3O.js +0 -1
  141. package/public/chunk-HA6CO5NZ.js +0 -2
  142. package/public/chunk-I54VWEMF.js +0 -1
  143. package/public/chunk-JAFIYTUM.js +0 -1
  144. package/public/chunk-KJN5AUI6.js +0 -1
  145. package/public/chunk-KQPBNPKN.js +0 -1
  146. package/public/chunk-N4F42HDL.js +0 -5
  147. package/public/chunk-N722B4ER.js +0 -1
  148. package/public/chunk-NRZYSY7C.js +0 -1
  149. package/public/chunk-O7VQF4E3.js +0 -1
  150. package/public/chunk-OKMMSTW4.js +0 -1
  151. package/public/chunk-OLNAFRAE.js +0 -1
  152. package/public/chunk-PLBUFQSF.js +0 -1
  153. package/public/chunk-PZ2IXNJQ.js +0 -1
  154. package/public/chunk-RXB7TYLO.js +0 -1
  155. package/public/chunk-SQYMES5W.js +0 -1
  156. package/public/chunk-STQ2AZLE.js +0 -20
  157. package/public/chunk-T3GI7KUT.js +0 -1
  158. package/public/chunk-UF46IMIV.js +0 -1
  159. package/public/chunk-WBSQUODA.js +0 -6
  160. package/public/chunk-WJ3IINUA.js +0 -1
  161. package/public/chunk-WONZP2FV.js +0 -1
  162. package/public/chunk-X5YRTZFZ.js +0 -1
  163. package/public/chunk-XGP6D3NB.js +0 -1
  164. package/public/chunk-XZM6BEAM.js +0 -1
  165. package/public/chunk-YLEC7AUG.js +0 -1
  166. package/public/main-P2CDEM4R.js +0 -1
  167. package/public/media/01-RQ3S2L53.png +0 -0
  168. package/public/media/02-VNCG2I2A.png +0 -0
  169. package/public/media/03-HI42L4ZG.png +0 -0
  170. package/public/media/04-FJLL55LZ.png +0 -0
  171. package/public/media/05-V3EO6SPT.png +0 -0
  172. package/public/media/06-EOJZCQZN.png +0 -0
  173. package/public/media/07-KMKB5PBD.png +0 -0
  174. package/public/media/08-UQJRF6B2.png +0 -0
  175. package/public/media/09-2DJQFRHH.png +0 -0
  176. package/public/media/arrow_left-CQT7FZM7.svg +0 -4
  177. package/public/media/arrow_right-SBUDRR2G.svg +0 -4
  178. package/public/scripts-6GVLYD7F.js +0 -62
  179. package/public/styles-EZS52PWT.css +0 -1
@@ -1,2 +0,0 @@
1
- import{$a as tt,Db as ot,Ea as Ee,Eb as q,Fb as Q,Ga as M,Gb as Me,H as $e,Ha as Te,Jc as it,Kc as at,L as Xe,La as Ye,Ma as we,Na as Ke,Oa as N,Qa as Re,Qc as H,Rc as ct,Sc as lt,T as ye,Tc as R,Ua as V,Va as L,Wa as x,Xa as qe,Ya as Qe,Za as He,_a as et,a as B,aa as Ge,ab as nt,ad as ee,b as ze,bb as rt,cb as S,ea as b,fa as D,h as fe,ha as v,hb as $,ia as ge,k as pe,ka as w,kd as dt,ld as ut,ma as d,na as T,nb as st,nd as te,pd as ne,q as Ve,qa as ve,r as me,sa as Je,ta as Ze,ua as We,vb as be,x as z}from"./chunk-CKNHTRCL.js";var G=class{},se=class{},A=class r{headers;normalizedNames=new Map;lazyInit;lazyUpdate=null;constructor(t){t?typeof t=="string"?this.lazyInit=()=>{this.headers=new Map,t.split(`
2
- `).forEach(e=>{let n=e.indexOf(":");if(n>0){let s=e.slice(0,n),o=e.slice(n+1).trim();this.addHeaderEntry(s,o)}})}:typeof Headers<"u"&&t instanceof Headers?(this.headers=new Map,t.forEach((e,n)=>{this.addHeaderEntry(n,e)})):this.lazyInit=()=>{this.headers=new Map,Object.entries(t).forEach(([e,n])=>{this.setHeaderEntries(e,n)})}:this.headers=new Map}has(t){return this.init(),this.headers.has(t.toLowerCase())}get(t){this.init();let e=this.headers.get(t.toLowerCase());return e&&e.length>0?e[0]:null}keys(){return this.init(),Array.from(this.normalizedNames.values())}getAll(t){return this.init(),this.headers.get(t.toLowerCase())||null}append(t,e){return this.clone({name:t,value:e,op:"a"})}set(t,e){return this.clone({name:t,value:e,op:"s"})}delete(t,e){return this.clone({name:t,value:e,op:"d"})}maybeSetNormalizedName(t,e){this.normalizedNames.has(e)||this.normalizedNames.set(e,t)}init(){this.lazyInit&&(this.lazyInit instanceof r?this.copyFrom(this.lazyInit):this.lazyInit(),this.lazyInit=null,this.lazyUpdate&&(this.lazyUpdate.forEach(t=>this.applyUpdate(t)),this.lazyUpdate=null))}copyFrom(t){t.init(),Array.from(t.headers.keys()).forEach(e=>{this.headers.set(e,t.headers.get(e)),this.normalizedNames.set(e,t.normalizedNames.get(e))})}clone(t){let e=new r;return e.lazyInit=this.lazyInit&&this.lazyInit instanceof r?this.lazyInit:this,e.lazyUpdate=(this.lazyUpdate||[]).concat([t]),e}applyUpdate(t){let e=t.name.toLowerCase();switch(t.op){case"a":case"s":let n=t.value;if(typeof n=="string"&&(n=[n]),n.length===0)return;this.maybeSetNormalizedName(t.name,e);let s=(t.op==="a"?this.headers.get(e):void 0)||[];s.push(...n),this.headers.set(e,s);break;case"d":let o=t.value;if(!o)this.headers.delete(e),this.normalizedNames.delete(e);else{let i=this.headers.get(e);if(!i)return;i=i.filter(c=>o.indexOf(c)===-1),i.length===0?(this.headers.delete(e),this.normalizedNames.delete(e)):this.headers.set(e,i)}break}}addHeaderEntry(t,e){let n=t.toLowerCase();this.maybeSetNormalizedName(t,n),this.headers.has(n)?this.headers.get(n).push(e):this.headers.set(n,[e])}setHeaderEntries(t,e){let n=(Array.isArray(e)?e:[e]).map(o=>o.toString()),s=t.toLowerCase();this.headers.set(s,n),this.maybeSetNormalizedName(t,s)}forEach(t){this.init(),Array.from(this.normalizedNames.keys()).forEach(e=>t(this.normalizedNames.get(e),this.headers.get(e)))}};var De=class{encodeKey(t){return ht(t)}encodeValue(t){return ht(t)}decodeKey(t){return decodeURIComponent(t)}decodeValue(t){return decodeURIComponent(t)}};function Ft(r,t){let e=new Map;return r.length>0&&r.replace(/^\?/,"").split("&").forEach(s=>{let o=s.indexOf("="),[i,c]=o==-1?[t.decodeKey(s),""]:[t.decodeKey(s.slice(0,o)),t.decodeValue(s.slice(o+1))],a=e.get(i)||[];a.push(c),e.set(i,a)}),e}var Bt=/%(\d[a-f0-9])/gi,zt={40:"@","3A":":",24:"$","2C":",","3B":";","3D":"=","3F":"?","2F":"/"};function ht(r){return encodeURIComponent(r).replace(Bt,(t,e)=>{var n;return(n=zt[e])!=null?n:t})}function re(r){return`${r}`}var I=class r{map;encoder;updates=null;cloneFrom=null;constructor(t={}){if(this.encoder=t.encoder||new De,t.fromString){if(t.fromObject)throw new Error("Cannot specify both fromString and fromObject.");this.map=Ft(t.fromString,this.encoder)}else t.fromObject?(this.map=new Map,Object.keys(t.fromObject).forEach(e=>{let n=t.fromObject[e],s=Array.isArray(n)?n.map(re):[re(n)];this.map.set(e,s)})):this.map=null}has(t){return this.init(),this.map.has(t)}get(t){this.init();let e=this.map.get(t);return e?e[0]:null}getAll(t){return this.init(),this.map.get(t)||null}keys(){return this.init(),Array.from(this.map.keys())}append(t,e){return this.clone({param:t,value:e,op:"a"})}appendAll(t){let e=[];return Object.keys(t).forEach(n=>{let s=t[n];Array.isArray(s)?s.forEach(o=>{e.push({param:n,value:o,op:"a"})}):e.push({param:n,value:s,op:"a"})}),this.clone(e)}set(t,e){return this.clone({param:t,value:e,op:"s"})}delete(t,e){return this.clone({param:t,value:e,op:"d"})}toString(){return this.init(),this.keys().map(t=>{let e=this.encoder.encodeKey(t);return this.map.get(t).map(n=>e+"="+this.encoder.encodeValue(n)).join("&")}).filter(t=>t!=="").join("&")}clone(t){let e=new r({encoder:this.encoder});return e.cloneFrom=this.cloneFrom||this,e.updates=(this.updates||[]).concat(t),e}init(){this.map===null&&(this.map=new Map),this.cloneFrom!==null&&(this.cloneFrom.init(),this.cloneFrom.keys().forEach(t=>this.map.set(t,this.cloneFrom.map.get(t))),this.updates.forEach(t=>{switch(t.op){case"a":case"s":let e=(t.op==="a"?this.map.get(t.param):void 0)||[];e.push(re(t.value)),this.map.set(t.param,e);break;case"d":if(t.value!==void 0){let n=this.map.get(t.param)||[],s=n.indexOf(re(t.value));s!==-1&&n.splice(s,1),n.length>0?this.map.set(t.param,n):this.map.delete(t.param)}else{this.map.delete(t.param);break}}}),this.cloneFrom=this.updates=null)}};var Oe=class{map=new Map;set(t,e){return this.map.set(t,e),this}get(t){return this.map.has(t)||this.map.set(t,t.defaultValue()),this.map.get(t)}delete(t){return this.map.delete(t),this}has(t){return this.map.has(t)}keys(){return this.map.keys()}};function Vt(r){switch(r){case"DELETE":case"GET":case"HEAD":case"OPTIONS":case"JSONP":return!1;default:return!0}}function ft(r){return typeof ArrayBuffer<"u"&&r instanceof ArrayBuffer}function pt(r){return typeof Blob<"u"&&r instanceof Blob}function mt(r){return typeof FormData<"u"&&r instanceof FormData}function $t(r){return typeof URLSearchParams<"u"&&r instanceof URLSearchParams}var X=class r{url;body=null;headers;context;reportProgress=!1;withCredentials=!1;responseType="json";method;params;urlWithParams;transferCache;constructor(t,e,n,s){var i,c;this.url=e,this.method=t.toUpperCase();let o;if(Vt(this.method)||s?(this.body=n!==void 0?n:null,o=s):o=n,o&&(this.reportProgress=!!o.reportProgress,this.withCredentials=!!o.withCredentials,o.responseType&&(this.responseType=o.responseType),o.headers&&(this.headers=o.headers),o.context&&(this.context=o.context),o.params&&(this.params=o.params),this.transferCache=o.transferCache),(i=this.headers)!=null||(this.headers=new A),(c=this.context)!=null||(this.context=new Oe),!this.params)this.params=new I,this.urlWithParams=e;else{let a=this.params.toString();if(a.length===0)this.urlWithParams=e;else{let l=e.indexOf("?"),p=l===-1?"?":l<e.length-1?"&":"";this.urlWithParams=e+p+a}}}serializeBody(){return this.body===null?null:typeof this.body=="string"||ft(this.body)||pt(this.body)||mt(this.body)||$t(this.body)?this.body:this.body instanceof I?this.body.toString():typeof this.body=="object"||typeof this.body=="boolean"||Array.isArray(this.body)?JSON.stringify(this.body):this.body.toString()}detectContentTypeHeader(){return this.body===null||mt(this.body)?null:pt(this.body)?this.body.type||null:ft(this.body)?null:typeof this.body=="string"?"text/plain":this.body instanceof I?"application/x-www-form-urlencoded;charset=UTF-8":typeof this.body=="object"||typeof this.body=="number"||typeof this.body=="boolean"?"application/json":null}clone(t={}){var y,g,_,u;let e=t.method||this.method,n=t.url||this.url,s=t.responseType||this.responseType,o=(y=t.transferCache)!=null?y:this.transferCache,i=t.body!==void 0?t.body:this.body,c=(g=t.withCredentials)!=null?g:this.withCredentials,a=(_=t.reportProgress)!=null?_:this.reportProgress,l=t.headers||this.headers,p=t.params||this.params,m=(u=t.context)!=null?u:this.context;return t.setHeaders!==void 0&&(l=Object.keys(t.setHeaders).reduce((h,E)=>h.set(E,t.setHeaders[E]),l)),t.setParams&&(p=Object.keys(t.setParams).reduce((h,E)=>h.set(E,t.setParams[E]),p)),new r(e,n,i,{params:p,headers:l,context:m,reportProgress:a,responseType:s,withCredentials:c,transferCache:o})}},P=function(r){return r[r.Sent=0]="Sent",r[r.UploadProgress=1]="UploadProgress",r[r.ResponseHeader=2]="ResponseHeader",r[r.DownloadProgress=3]="DownloadProgress",r[r.Response=4]="Response",r[r.User=5]="User",r}(P||{}),J=class{headers;status;statusText;url;ok;type;constructor(t,e=200,n="OK"){this.headers=t.headers||new A,this.status=t.status!==void 0?t.status:e,this.statusText=t.statusText||n,this.url=t.url||null,this.ok=this.status>=200&&this.status<300}},oe=class r extends J{constructor(t={}){super(t)}type=P.ResponseHeader;clone(t={}){return new r({headers:t.headers||this.headers,status:t.status!==void 0?t.status:this.status,statusText:t.statusText||this.statusText,url:t.url||this.url||void 0})}},Z=class r extends J{body;constructor(t={}){super(t),this.body=t.body!==void 0?t.body:null}type=P.Response;clone(t={}){return new r({body:t.body!==void 0?t.body:this.body,headers:t.headers||this.headers,status:t.status!==void 0?t.status:this.status,statusText:t.statusText||this.statusText,url:t.url||this.url||void 0})}},O=class extends J{name="HttpErrorResponse";message;error;ok=!1;constructor(t){super(t,0,"Unknown Error"),this.status>=200&&this.status<300?this.message=`Http failure during parsing for ${t.url||"(unknown url)"}`:this.message=`Http failure response for ${t.url||"(unknown url)"}: ${t.status} ${t.statusText}`,this.error=t.error||null}},Tt=200,Xt=204;function Ae(r,t){return{body:t,headers:r.headers,context:r.context,observe:r.observe,params:r.params,reportProgress:r.reportProgress,responseType:r.responseType,withCredentials:r.withCredentials,transferCache:r.transferCache}}var Gt=(()=>{class r{handler;constructor(e){this.handler=e}request(e,n,s={}){let o;if(e instanceof X)o=e;else{let a;s.headers instanceof A?a=s.headers:a=new A(s.headers);let l;s.params&&(s.params instanceof I?l=s.params:l=new I({fromObject:s.params})),o=new X(e,n,s.body!==void 0?s.body:null,{headers:a,context:s.context,params:l,reportProgress:s.reportProgress,responseType:s.responseType||"json",withCredentials:s.withCredentials,transferCache:s.transferCache})}let i=me(o).pipe(Xe(a=>this.handler.handle(a)));if(e instanceof X||s.observe==="events")return i;let c=i.pipe($e(a=>a instanceof Z));switch(s.observe||"body"){case"body":switch(o.responseType){case"arraybuffer":return c.pipe(z(a=>{if(a.body!==null&&!(a.body instanceof ArrayBuffer))throw new Error("Response is not an ArrayBuffer.");return a.body}));case"blob":return c.pipe(z(a=>{if(a.body!==null&&!(a.body instanceof Blob))throw new Error("Response is not a Blob.");return a.body}));case"text":return c.pipe(z(a=>{if(a.body!==null&&typeof a.body!="string")throw new Error("Response is not a string.");return a.body}));case"json":default:return c.pipe(z(a=>a.body))}case"response":return c;default:throw new Error(`Unreachable: unhandled observe type ${s.observe}}`)}}delete(e,n={}){return this.request("DELETE",e,n)}get(e,n={}){return this.request("GET",e,n)}head(e,n={}){return this.request("HEAD",e,n)}jsonp(e,n){return this.request("JSONP",e,{params:new I().append(n,"JSONP_CALLBACK"),observe:"body",responseType:"json"})}options(e,n={}){return this.request("OPTIONS",e,n)}patch(e,n,s={}){return this.request("PATCH",e,Ae(s,n))}post(e,n,s={}){return this.request("POST",e,Ae(s,n))}put(e,n,s={}){return this.request("PUT",e,Ae(s,n))}static \u0275fac=function(n){return new(n||r)(d(G))};static \u0275prov=v({token:r,factory:r.\u0275fac})}return r})(),Jt=/^\)\]\}',?\n/,Zt="X-Request-URL";function yt(r){if(r.url)return r.url;let t=Zt.toLocaleLowerCase();return r.headers.get(t)}var Wt=(()=>{var t,e;class r{fetchImpl=(e=(t=T(Ie,{optional:!0}))==null?void 0:t.fetch)!=null?e:(...s)=>globalThis.fetch(...s);ngZone=T(M);handle(s){return new pe(o=>{let i=new AbortController;return this.doRequest(s,i.signal,o).then(Pe,c=>o.error(new O({error:c}))),()=>i.abort()})}doRequest(s,o,i){return fe(this,null,function*(){var u,h,E,C;let c=this.createRequestInit(s),a;try{let f=this.ngZone.runOutsideAngular(()=>this.fetchImpl(s.urlWithParams,B({signal:o},c)));Yt(f),i.next({type:P.Sent}),a=yield f}catch(f){i.error(new O({error:f,status:(u=f.status)!=null?u:0,statusText:f.statusText,url:s.urlWithParams,headers:f.headers}));return}let l=new A(a.headers),p=a.statusText,m=(h=yt(a))!=null?h:s.urlWithParams,y=a.status,g=null;if(s.reportProgress&&i.next(new oe({headers:l,status:y,statusText:p,url:m})),a.body){let f=a.headers.get("content-length"),k=[],de=a.body.getReader(),j=0,ue,U,Fe=typeof Zone<"u"&&Zone.current;yield this.ngZone.runOutsideAngular(()=>fe(this,null,function*(){for(;;){let{done:F,value:he}=yield de.read();if(F)break;if(k.push(he),j+=he.length,s.reportProgress){U=s.responseType==="text"?(U!=null?U:"")+(ue!=null?ue:ue=new TextDecoder).decode(he,{stream:!0}):void 0;let Be=()=>i.next({type:P.DownloadProgress,total:f?+f:void 0,loaded:j,partialText:U});Fe?Fe.run(Be):Be()}}}));let xt=this.concatChunks(k,j);try{let F=(E=a.headers.get("Content-Type"))!=null?E:"";g=this.parseBody(s,xt,F)}catch(F){i.error(new O({error:F,headers:new A(a.headers),status:a.status,statusText:a.statusText,url:(C=yt(a))!=null?C:s.urlWithParams}));return}}y===0&&(y=g?Tt:0),y>=200&&y<300?(i.next(new Z({body:g,headers:l,status:y,statusText:p,url:m})),i.complete()):i.error(new O({error:g,headers:l,status:y,statusText:p,url:m}))})}parseBody(s,o,i){switch(s.responseType){case"json":let c=new TextDecoder().decode(o).replace(Jt,"");return c===""?null:JSON.parse(c);case"text":return new TextDecoder().decode(o);case"blob":return new Blob([o],{type:i});case"arraybuffer":return o.buffer}}createRequestInit(s){let o={},i=s.withCredentials?"include":void 0;if(s.headers.forEach((c,a)=>o[c]=a.join(",")),s.headers.has("Accept")||(o.Accept="application/json, text/plain, */*"),!s.headers.has("Content-Type")){let c=s.detectContentTypeHeader();c!==null&&(o["Content-Type"]=c)}return{body:s.serializeBody(),method:s.method,headers:o,credentials:i}}concatChunks(s,o){let i=new Uint8Array(o),c=0;for(let a of s)i.set(a,c),c+=a.length;return i}static \u0275fac=function(o){return new(o||r)};static \u0275prov=v({token:r,factory:r.\u0275fac})}return r})(),Ie=class{};function Pe(){}function Yt(r){r.then(Pe,Pe)}function wt(r,t){return t(r)}function Kt(r,t){return(e,n)=>t.intercept(e,{handle:s=>r(s,n)})}function qt(r,t,e){return(n,s)=>We(e,()=>t(n,o=>r(o,s)))}var Qt=new w(""),Ne=new w(""),Ht=new w(""),Rt=new w("",{providedIn:"root",factory:()=>!0});function en(){let r=null;return(t,e)=>{var o;r===null&&(r=((o=T(Qt,{optional:!0}))!=null?o:[]).reduceRight(Kt,wt));let n=T(Ee);if(T(Rt)){let i=n.add();return r(t,e).pipe(ye(()=>n.remove(i)))}else return r(t,e)}}var gt=(()=>{class r extends G{backend;injector;chain=null;pendingTasks=T(Ee);contributeToStability=T(Rt);constructor(e,n){super(),this.backend=e,this.injector=n}handle(e){if(this.chain===null){let n=Array.from(new Set([...this.injector.get(Ne),...this.injector.get(Ht,[])]));this.chain=n.reduceRight((s,o)=>qt(s,o,this.injector),wt)}if(this.contributeToStability){let n=this.pendingTasks.add();return this.chain(e,s=>this.backend.handle(s)).pipe(ye(()=>this.pendingTasks.remove(n)))}else return this.chain(e,n=>this.backend.handle(n))}static \u0275fac=function(n){return new(n||r)(d(se),d(Ze))};static \u0275prov=v({token:r,factory:r.\u0275fac})}return r})();var tn=/^\)\]\}',?\n/;function nn(r){return"responseURL"in r&&r.responseURL?r.responseURL:/^X-Request-URL:/m.test(r.getAllResponseHeaders())?r.getResponseHeader("X-Request-URL"):null}var vt=(()=>{class r{xhrFactory;constructor(e){this.xhrFactory=e}handle(e){if(e.method==="JSONP")throw new b(-2800,!1);let n=this.xhrFactory;return(n.\u0275loadImpl?Ve(n.\u0275loadImpl()):me(null)).pipe(Ge(()=>new pe(o=>{let i=n.build();if(i.open(e.method,e.urlWithParams),e.withCredentials&&(i.withCredentials=!0),e.headers.forEach((u,h)=>i.setRequestHeader(u,h.join(","))),e.headers.has("Accept")||i.setRequestHeader("Accept","application/json, text/plain, */*"),!e.headers.has("Content-Type")){let u=e.detectContentTypeHeader();u!==null&&i.setRequestHeader("Content-Type",u)}if(e.responseType){let u=e.responseType.toLowerCase();i.responseType=u!=="json"?u:"text"}let c=e.serializeBody(),a=null,l=()=>{if(a!==null)return a;let u=i.statusText||"OK",h=new A(i.getAllResponseHeaders()),E=nn(i)||e.url;return a=new oe({headers:h,status:i.status,statusText:u,url:E}),a},p=()=>{let{headers:u,status:h,statusText:E,url:C}=l(),f=null;h!==Xt&&(f=typeof i.response>"u"?i.responseText:i.response),h===0&&(h=f?Tt:0);let k=h>=200&&h<300;if(e.responseType==="json"&&typeof f=="string"){let de=f;f=f.replace(tn,"");try{f=f!==""?JSON.parse(f):null}catch(j){f=de,k&&(k=!1,f={error:j,text:f})}}k?(o.next(new Z({body:f,headers:u,status:h,statusText:E,url:C||void 0})),o.complete()):o.error(new O({error:f,headers:u,status:h,statusText:E,url:C||void 0}))},m=u=>{let{url:h}=l(),E=new O({error:u,status:i.status||0,statusText:i.statusText||"Unknown Error",url:h||void 0});o.error(E)},y=!1,g=u=>{y||(o.next(l()),y=!0);let h={type:P.DownloadProgress,loaded:u.loaded};u.lengthComputable&&(h.total=u.total),e.responseType==="text"&&i.responseText&&(h.partialText=i.responseText),o.next(h)},_=u=>{let h={type:P.UploadProgress,loaded:u.loaded};u.lengthComputable&&(h.total=u.total),o.next(h)};return i.addEventListener("load",p),i.addEventListener("error",m),i.addEventListener("timeout",m),i.addEventListener("abort",m),e.reportProgress&&(i.addEventListener("progress",g),c!==null&&i.upload&&i.upload.addEventListener("progress",_)),i.send(c),o.next({type:P.Sent}),()=>{i.removeEventListener("error",m),i.removeEventListener("abort",m),i.removeEventListener("load",p),i.removeEventListener("timeout",m),e.reportProgress&&(i.removeEventListener("progress",g),c!==null&&i.upload&&i.upload.removeEventListener("progress",_)),i.readyState!==i.DONE&&i.abort()}})))}static \u0275fac=function(n){return new(n||r)(d(ne))};static \u0275prov=v({token:r,factory:r.\u0275fac})}return r})(),bt=new w(""),rn="XSRF-TOKEN",sn=new w("",{providedIn:"root",factory:()=>rn}),on="X-XSRF-TOKEN",an=new w("",{providedIn:"root",factory:()=>on}),ie=class{},cn=(()=>{class r{doc;platform;cookieName;lastCookieString="";lastToken=null;parseCount=0;constructor(e,n,s){this.doc=e,this.platform=n,this.cookieName=s}getToken(){if(this.platform==="server")return null;let e=this.doc.cookie||"";return e!==this.lastCookieString&&(this.parseCount++,this.lastToken=ee(e,this.cookieName),this.lastCookieString=e),this.lastToken}static \u0275fac=function(n){return new(n||r)(d(R),d(N),d(sn))};static \u0275prov=v({token:r,factory:r.\u0275fac})}return r})();function ln(r,t){let e=r.url.toLowerCase();if(!T(bt)||r.method==="GET"||r.method==="HEAD"||e.startsWith("http://")||e.startsWith("https://"))return t(r);let n=T(ie).getToken(),s=T(an);return n!=null&&!r.headers.has(s)&&(r=r.clone({headers:r.headers.set(s,n)})),t(r)}var Mt=function(r){return r[r.Interceptors=0]="Interceptors",r[r.LegacyInterceptors=1]="LegacyInterceptors",r[r.CustomXsrfConfiguration=2]="CustomXsrfConfiguration",r[r.NoXsrfProtection=3]="NoXsrfProtection",r[r.JsonpSupport=4]="JsonpSupport",r[r.RequestsMadeViaParent=5]="RequestsMadeViaParent",r[r.Fetch=6]="Fetch",r}(Mt||{});function dn(r,t){return{\u0275kind:r,\u0275providers:t}}function qn(...r){let t=[Gt,vt,gt,{provide:G,useExisting:gt},{provide:se,useFactory:()=>{var e;return(e=T(Wt,{optional:!0}))!=null?e:T(vt)}},{provide:Ne,useValue:ln,multi:!0},{provide:bt,useValue:!0},{provide:ie,useClass:cn}];for(let e of r)t.push(...e.\u0275providers);return ve(t)}var Et=new w("");function Qn(){return dn(Mt.LegacyInterceptors,[{provide:Et,useFactory:en},{provide:Ne,useExisting:Et,multi:!0}])}var _e=class extends lt{supportsDOMEvents=!0},ke=class r extends _e{static makeCurrent(){ct(new r)}onAndCancel(t,e,n){return t.addEventListener(e,n),()=>{t.removeEventListener(e,n)}}dispatchEvent(t,e){t.dispatchEvent(e)}remove(t){t.remove()}createElement(t,e){return e=e||this.getDefaultDocument(),e.createElement(t)}createHtmlDocument(){return document.implementation.createHTMLDocument("fakeTitle")}getDefaultDocument(){return document}isElementNode(t){return t.nodeType===Node.ELEMENT_NODE}isShadowRoot(t){return t instanceof DocumentFragment}getGlobalEventTarget(t,e){return e==="window"?window:e==="document"?t:e==="body"?t.body:null}getBaseHref(t){let e=hn();return e==null?null:fn(e)}resetBaseElement(){W=null}getUserAgent(){return window.navigator.userAgent}getCookie(t){return ee(document.cookie,t)}},W=null;function hn(){return W=W||document.querySelector("base"),W?W.getAttribute("href"):null}function fn(r){return new URL(r,document.baseURI).pathname}var Le=class{addToWindow(t){D.getAngularTestability=(n,s=!0)=>{let o=t.findTestabilityInTree(n,s);if(o==null)throw new b(5103,!1);return o},D.getAllAngularTestabilities=()=>t.getAllTestabilities(),D.getAllAngularRootElements=()=>t.getAllRootElements();let e=n=>{let s=D.getAllAngularTestabilities(),o=s.length,i=function(){o--,o==0&&n()};s.forEach(c=>{c.whenStable(i)})};D.frameworkStabilizers||(D.frameworkStabilizers=[]),D.frameworkStabilizers.push(e)}findTestabilityInTree(t,e,n){if(e==null)return null;let s=t.getTestability(e);return s!=null?s:n?H().isShadowRoot(e)?this.findTestabilityInTree(t,e.host,!0):this.findTestabilityInTree(t,e.parentElement,!0):null}},pn=(()=>{class r{build(){return new XMLHttpRequest}static \u0275fac=function(n){return new(n||r)};static \u0275prov=v({token:r,factory:r.\u0275fac})}return r})(),xe=new w(""),Nt=(()=>{class r{_zone;_plugins;_eventNameToPlugin=new Map;constructor(e,n){this._zone=n,e.forEach(s=>{s.manager=this}),this._plugins=e.slice().reverse()}addEventListener(e,n,s){return this._findPluginFor(n).addEventListener(e,n,s)}getZone(){return this._zone}_findPluginFor(e){let n=this._eventNameToPlugin.get(e);if(n)return n;if(n=this._plugins.find(o=>o.supports(e)),!n)throw new b(5101,!1);return this._eventNameToPlugin.set(e,n),n}static \u0275fac=function(n){return new(n||r)(d(xe),d(M))};static \u0275prov=v({token:r,factory:r.\u0275fac})}return r})(),ce=class{_doc;constructor(t){this._doc=t}manager},ae="ng-app-id";function At(r){for(let t of r)t.remove()}function Dt(r,t){let e=t.createElement("style");return e.textContent=r,e}function mn(r,t,e,n){var o;let s=(o=r.head)==null?void 0:o.querySelectorAll(`style[${ae}="${t}"],link[${ae}="${t}"]`);if(s)for(let i of s)i.removeAttribute(ae),i instanceof HTMLLinkElement?n.set(i.href.slice(i.href.lastIndexOf("/")+1),{usage:0,elements:[i]}):i.textContent&&e.set(i.textContent,{usage:0,elements:[i]})}function Ce(r,t){let e=t.createElement("link");return e.setAttribute("rel","stylesheet"),e.setAttribute("href",r),e}var St=(()=>{class r{doc;appId;nonce;inline=new Map;external=new Map;hosts=new Set;isServer;constructor(e,n,s,o={}){this.doc=e,this.appId=n,this.nonce=s,this.isServer=te(o),mn(e,n,this.inline,this.external),this.hosts.add(e.head)}addStyles(e,n){for(let s of e)this.addUsage(s,this.inline,Dt);n==null||n.forEach(s=>this.addUsage(s,this.external,Ce))}removeStyles(e,n){for(let s of e)this.removeUsage(s,this.inline);n==null||n.forEach(s=>this.removeUsage(s,this.external))}addUsage(e,n,s){let o=n.get(e);o?o.usage++:n.set(e,{usage:1,elements:[...this.hosts].map(i=>this.addElement(i,s(e,this.doc)))})}removeUsage(e,n){let s=n.get(e);s&&(s.usage--,s.usage<=0&&(At(s.elements),n.delete(e)))}ngOnDestroy(){for(let[,{elements:e}]of[...this.inline,...this.external])At(e);this.hosts.clear()}addHost(e){this.hosts.add(e);for(let[n,{elements:s}]of this.inline)s.push(this.addElement(e,Dt(n,this.doc)));for(let[n,{elements:s}]of this.external)s.push(this.addElement(e,Ce(n,this.doc)))}removeHost(e){this.hosts.delete(e)}addElement(e,n){return this.nonce&&n.setAttribute("nonce",this.nonce),this.isServer&&n.setAttribute(ae,this.appId),e.appendChild(n)}static \u0275fac=function(n){return new(n||r)(d(R),d(we),d(Re,8),d(N))};static \u0275prov=v({token:r,factory:r.\u0275fac})}return r})(),Se={svg:"http://www.w3.org/2000/svg",xhtml:"http://www.w3.org/1999/xhtml",xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/",math:"http://www.w3.org/1998/Math/MathML"},Ue=/%COMP%/g,_t="%COMP%",yn=`_nghost-${_t}`,gn=`_ngcontent-${_t}`,vn=!0,En=new w("",{providedIn:"root",factory:()=>vn});function Tn(r){return gn.replace(Ue,r)}function wn(r){return yn.replace(Ue,r)}function kt(r,t){return t.map(e=>e.replace(Ue,r))}var Ot=(()=>{class r{eventManager;sharedStylesHost;appId;removeStylesOnCompDestroy;doc;platformId;ngZone;nonce;rendererByCompId=new Map;defaultRenderer;platformIsServer;constructor(e,n,s,o,i,c,a,l=null){this.eventManager=e,this.sharedStylesHost=n,this.appId=s,this.removeStylesOnCompDestroy=o,this.doc=i,this.platformId=c,this.ngZone=a,this.nonce=l,this.platformIsServer=te(c),this.defaultRenderer=new Y(e,i,a,this.platformIsServer)}createRenderer(e,n){if(!e||!n)return this.defaultRenderer;this.platformIsServer&&n.encapsulation===V.ShadowDom&&(n=ze(B({},n),{encapsulation:V.Emulated}));let s=this.getOrCreateRenderer(e,n);return s instanceof le?s.applyToHost(e):s instanceof K&&s.applyStyles(),s}getOrCreateRenderer(e,n){let s=this.rendererByCompId,o=s.get(n.id);if(!o){let i=this.doc,c=this.ngZone,a=this.eventManager,l=this.sharedStylesHost,p=this.removeStylesOnCompDestroy,m=this.platformIsServer;switch(n.encapsulation){case V.Emulated:o=new le(a,l,n,this.appId,p,i,c,m);break;case V.ShadowDom:return new je(a,l,e,n,i,c,this.nonce,m);default:o=new K(a,l,n,p,i,c,m);break}s.set(n.id,o)}return o}ngOnDestroy(){this.rendererByCompId.clear()}static \u0275fac=function(n){return new(n||r)(d(Nt),d(St),d(we),d(En),d(R),d(N),d(M),d(Re))};static \u0275prov=v({token:r,factory:r.\u0275fac})}return r})(),Y=class{eventManager;doc;ngZone;platformIsServer;data=Object.create(null);throwOnSyntheticProps=!0;constructor(t,e,n,s){this.eventManager=t,this.doc=e,this.ngZone=n,this.platformIsServer=s}destroy(){}destroyNode=null;createElement(t,e){return e?this.doc.createElementNS(Se[e]||e,t):this.doc.createElement(t)}createComment(t){return this.doc.createComment(t)}createText(t){return this.doc.createTextNode(t)}appendChild(t,e){(It(t)?t.content:t).appendChild(e)}insertBefore(t,e,n){t&&(It(t)?t.content:t).insertBefore(e,n)}removeChild(t,e){e.remove()}selectRootElement(t,e){let n=typeof t=="string"?this.doc.querySelector(t):t;if(!n)throw new b(-5104,!1);return e||(n.textContent=""),n}parentNode(t){return t.parentNode}nextSibling(t){return t.nextSibling}setAttribute(t,e,n,s){if(s){e=s+":"+e;let o=Se[s];o?t.setAttributeNS(o,e,n):t.setAttribute(e,n)}else t.setAttribute(e,n)}removeAttribute(t,e,n){if(n){let s=Se[n];s?t.removeAttributeNS(s,e):t.removeAttribute(`${n}:${e}`)}else t.removeAttribute(e)}addClass(t,e){t.classList.add(e)}removeClass(t,e){t.classList.remove(e)}setStyle(t,e,n,s){s&($.DashCase|$.Important)?t.style.setProperty(e,n,s&$.Important?"important":""):t.style[e]=n}removeStyle(t,e,n){n&$.DashCase?t.style.removeProperty(e):t.style[e]=""}setProperty(t,e,n){t!=null&&(t[e]=n)}setValue(t,e){t.nodeValue=e}listen(t,e,n){if(typeof t=="string"&&(t=H().getGlobalEventTarget(this.doc,t),!t))throw new Error(`Unsupported event target ${t} for event ${e}`);return this.eventManager.addEventListener(t,e,this.decoratePreventDefault(n))}decoratePreventDefault(t){return e=>{if(e==="__ngUnwrap__")return t;(this.platformIsServer?this.ngZone.runGuarded(()=>t(e)):t(e))===!1&&e.preventDefault()}}};function It(r){return r.tagName==="TEMPLATE"&&r.content!==void 0}var je=class extends Y{sharedStylesHost;hostEl;shadowRoot;constructor(t,e,n,s,o,i,c,a){var m;super(t,o,i,a),this.sharedStylesHost=e,this.hostEl=n,this.shadowRoot=n.attachShadow({mode:"open"}),this.sharedStylesHost.addHost(this.shadowRoot);let l=kt(s.id,s.styles);for(let y of l){let g=document.createElement("style");c&&g.setAttribute("nonce",c),g.textContent=y,this.shadowRoot.appendChild(g)}let p=(m=s.getExternalStyles)==null?void 0:m.call(s);if(p)for(let y of p){let g=Ce(y,o);c&&g.setAttribute("nonce",c),this.shadowRoot.appendChild(g)}}nodeOrShadowRoot(t){return t===this.hostEl?this.shadowRoot:t}appendChild(t,e){return super.appendChild(this.nodeOrShadowRoot(t),e)}insertBefore(t,e,n){return super.insertBefore(this.nodeOrShadowRoot(t),e,n)}removeChild(t,e){return super.removeChild(null,e)}parentNode(t){return this.nodeOrShadowRoot(super.parentNode(this.nodeOrShadowRoot(t)))}destroy(){this.sharedStylesHost.removeHost(this.shadowRoot)}},K=class extends Y{sharedStylesHost;removeStylesOnCompDestroy;styles;styleUrls;constructor(t,e,n,s,o,i,c,a){var l;super(t,o,i,c),this.sharedStylesHost=e,this.removeStylesOnCompDestroy=s,this.styles=a?kt(a,n.styles):n.styles,this.styleUrls=(l=n.getExternalStyles)==null?void 0:l.call(n,a)}applyStyles(){this.sharedStylesHost.addStyles(this.styles,this.styleUrls)}destroy(){this.removeStylesOnCompDestroy&&this.sharedStylesHost.removeStyles(this.styles,this.styleUrls)}},le=class extends K{contentAttr;hostAttr;constructor(t,e,n,s,o,i,c,a){let l=s+"-"+n.id;super(t,e,n,o,i,c,a,l),this.contentAttr=Tn(l),this.hostAttr=wn(l)}applyToHost(t){this.applyStyles(),this.setAttribute(t,this.hostAttr,"")}createElement(t,e){let n=super.createElement(t,e);return super.setAttribute(n,this.contentAttr,""),n}},Rn=(()=>{class r extends ce{constructor(e){super(e)}supports(e){return!0}addEventListener(e,n,s){return e.addEventListener(n,s,!1),()=>this.removeEventListener(e,n,s)}removeEventListener(e,n,s){return e.removeEventListener(n,s)}static \u0275fac=function(n){return new(n||r)(d(R))};static \u0275prov=v({token:r,factory:r.\u0275fac})}return r})(),Pt=["alt","control","meta","shift"],bn={"\b":"Backspace"," ":"Tab","\x7F":"Delete","\x1B":"Escape",Del:"Delete",Esc:"Escape",Left:"ArrowLeft",Right:"ArrowRight",Up:"ArrowUp",Down:"ArrowDown",Menu:"ContextMenu",Scroll:"ScrollLock",Win:"OS"},Mn={alt:r=>r.altKey,control:r=>r.ctrlKey,meta:r=>r.metaKey,shift:r=>r.shiftKey},An=(()=>{class r extends ce{constructor(e){super(e)}supports(e){return r.parseEventName(e)!=null}addEventListener(e,n,s){let o=r.parseEventName(n),i=r.eventCallback(o.fullKey,s,this.manager.getZone());return this.manager.getZone().runOutsideAngular(()=>H().onAndCancel(e,o.domEventName,i))}static parseEventName(e){let n=e.toLowerCase().split("."),s=n.shift();if(n.length===0||!(s==="keydown"||s==="keyup"))return null;let o=r._normalizeKey(n.pop()),i="",c=n.indexOf("code");if(c>-1&&(n.splice(c,1),i="code."),Pt.forEach(l=>{let p=n.indexOf(l);p>-1&&(n.splice(p,1),i+=l+".")}),i+=o,n.length!=0||o.length===0)return null;let a={};return a.domEventName=s,a.fullKey=i,a}static matchEventFullKeyCode(e,n){let s=bn[e.key]||e.key,o="";return n.indexOf("code.")>-1&&(s=e.code,o="code."),s==null||!s?!1:(s=s.toLowerCase(),s===" "?s="space":s==="."&&(s="dot"),Pt.forEach(i=>{if(i!==s){let c=Mn[i];c(e)&&(o+=i+".")}}),o+=s,o===n)}static eventCallback(e,n,s){return o=>{r.matchEventFullKeyCode(o,e)&&s.runGuarded(()=>n(o))}}static _normalizeKey(e){return e==="esc"?"escape":e}static \u0275fac=function(n){return new(n||r)(d(R))};static \u0275prov=v({token:r,factory:r.\u0275fac})}return r})();function Er(r,t){return at(B({rootComponent:r},Dn(t)))}function Dn(r){var t;return{appProviders:[...Lt,...(t=r==null?void 0:r.providers)!=null?t:[]],platformProviders:Nn}}function On(){ke.makeCurrent()}function In(){return new Te}function Pn(){return Ye(document),document}var Nn=[{provide:N,useValue:ut},{provide:Ke,useValue:On,multi:!0},{provide:R,useFactory:Pn,deps:[]}];var Sn=new w(""),_n=[{provide:q,useClass:Le,deps:[]},{provide:ot,useClass:Q,deps:[M,Me,q]},{provide:Q,useClass:Q,deps:[M,Me,q]}],Lt=[{provide:Je,useValue:"root"},{provide:Te,useFactory:In,deps:[]},{provide:xe,useClass:Rn,multi:!0,deps:[R,M,N]},{provide:xe,useClass:An,multi:!0,deps:[R]},Ot,St,Nt,{provide:st,useExisting:Ot},{provide:ne,useClass:pn,deps:[]},[]],Tr=(()=>{class r{constructor(e){}static \u0275fac=function(n){return new(n||r)(d(Sn,12))};static \u0275mod=be({type:r});static \u0275inj=ge({providers:[...Lt,..._n],imports:[dt,it]})}return r})();var wr=(()=>{class r{_doc;constructor(e){this._doc=e}getTitle(){return this._doc.title}setTitle(e){this._doc.title=e||""}static \u0275fac=function(n){return new(n||r)(d(R))};static \u0275prov=v({token:r,factory:r.\u0275fac,providedIn:"root"})}return r})();var kn=(()=>{class r{static \u0275fac=function(n){return new(n||r)};static \u0275prov=v({token:r,factory:function(n){let s=null;return n?s=new(n||r):s=d(Ln),s},providedIn:"root"})}return r})(),Ln=(()=>{class r extends kn{_doc;constructor(e){super(),this._doc=e}sanitize(e,n){if(n==null)return null;switch(e){case S.NONE:return n;case S.HTML:return x(n,"HTML")?L(n):rt(this._doc,String(n)).toString();case S.STYLE:return x(n,"Style")?L(n):n;case S.SCRIPT:if(x(n,"Script"))return L(n);throw new b(5200,!1);case S.URL:return x(n,"URL")?L(n):nt(String(n));case S.RESOURCE_URL:if(x(n,"ResourceURL"))return L(n);throw new b(5201,!1);default:throw new b(5202,!1)}}bypassSecurityTrustHtml(e){return qe(e)}bypassSecurityTrustStyle(e){return Qe(e)}bypassSecurityTrustScript(e){return He(e)}bypassSecurityTrustUrl(e){return et(e)}bypassSecurityTrustResourceUrl(e){return tt(e)}static \u0275fac=function(n){return new(n||r)(d(R))};static \u0275prov=v({token:r,factory:r.\u0275fac,providedIn:"root"})}return r})();export{se as a,I as b,P as c,Z as d,Gt as e,Qt as f,qn as g,Qn as h,Ot as i,Er as j,Tr as k,wr as l,kn as m};
@@ -1 +0,0 @@
1
- import{b as X}from"./chunk-A4EWGMID.js";import{n as j}from"./chunk-N4F42HDL.js";import{c as M,d as C,e as P,f as V,g as O,j as F,m as R,p as W,q as N,y as D,z as G}from"./chunk-YLEC7AUG.js";import{e as L}from"./chunk-T3GI7KUT.js";import{c as Q}from"./chunk-MW5FLUTC.js";import{b as J}from"./chunk-YTJNIFE4.js";import{h as q,j as I,k as K}from"./chunk-3NBOT4LS.js";import{l as E}from"./chunk-HA6CO5NZ.js";import{a as H,b as A}from"./chunk-675OFXLW.js";import{Bb as z,Cc as s,Dc as l,Mb as _,Rb as f,Wb as i,Xb as r,Yb as c,ac as y,bd as B,dc as b,ec as m,h as w,ib as t,na as g,oc as a,pc as d,qc as v,ub as T,w as S,xa as x,ya as h,yc as $,zc as k}from"./chunk-CKNHTRCL.js";var U=(n,u)=>({"is-valid":n,"is-invalid":u}),Z=n=>({"button-loading":n});function ee(n,u){if(n&1){let e=y();i(0,"div",2),c(1,"img",3),i(2,"h3",4),a(3),s(4,"translate"),r(),i(5,"button",5),b("click",function(){x(e);let p=m();return h(p.onClickGettingStarted())}),a(6),s(7,"translate"),r(),i(8,"small",6)(9,"a",7),b("click",function(){x(e);let p=m();return h(p.onClickRestoreBackup())}),a(10),s(11,"translate"),r()()()}n&2&&(t(3),d(l(4,3,"setup.welcome_to_homebridge")),t(3),v(" ",l(7,5,"setup.button_get_started")," "),t(4),d(l(11,7,"setup_wizard_message_restore")))}function te(n,u){if(n&1){let e=y();i(0,"div",2),c(1,"img",8),i(2,"h3",4),a(3),s(4,"translate"),r(),i(5,"div",9)(6,"p"),a(7),s(8,"translate"),r(),i(9,"form",10),b("ngSubmit",function(){x(e);let p=m();return h(p.createFirstUser())}),i(10,"div",11),c(11,"i",12)(12,"input",13),i(13,"label",14),a(14),s(15,"translate"),r()(),i(16,"div",11),c(17,"i",15)(18,"input",16),i(19,"label",17),a(20),s(21,"translate"),r()(),i(22,"div",11),c(23,"i",15)(24,"input",18),i(25,"label",19),a(26),s(27,"translate"),r()(),i(28,"div",20)(29,"button",21),a(30),s(31,"translate"),c(32,"i",22),r()()()()()}if(n&2){let e=m();t(3),d(l(4,15,"setup.create_account")),t(4),d(l(8,17,"setup.create_account_reason")),t(2),_("formGroup",e.createUserForm),t(3),_("readonly",e.loading)("ngClass",k(27,U,e.createUserForm.controls.username.dirty&&e.createUserForm.controls.username.valid,e.createUserForm.controls.username.dirty&&e.createUserForm.controls.username.invalid)),t(2),d(l(15,19,"users.label_username")),t(4),_("readonly",e.loading)("ngClass",k(30,U,e.createUserForm.controls.password.dirty&&e.createUserForm.controls.password.valid,e.createUserForm.controls.password.dirty&&e.createUserForm.controls.password.errors)),t(2),d(l(21,21,"users.label_password")),t(4),_("readonly",e.loading)("ngClass",k(33,U,e.createUserForm.controls.passwordConfirm.dirty&&e.createUserForm.controls.passwordConfirm.valid,e.createUserForm.controls.passwordConfirm.dirty&&e.createUserForm.controls.passwordConfirm.errors)),t(2),d(l(27,23,"users.label_confirm_password")),t(3),_("disabled",e.createUserForm.invalid||e.loading)("ngClass",$(36,Z,e.loading)),t(),v(" ",l(31,25,"setup.create_account")," ")}}function ie(n,u){n&1&&(i(0,"span"),c(1,"i",29),a(2),s(3,"translate"),r()),n&2&&(t(2),v(" ",l(3,1,"backup.label_uploading")," "))}function ne(n,u){n&1&&(a(0),s(1,"translate")),n&2&&v(" ",l(1,1,"backup.button_restore_backup")," ")}function oe(n,u){if(n&1){let e=y();i(0,"div",2),c(1,"img",8),i(2,"h3",4),a(3),s(4,"translate"),r(),i(5,"p"),a(6),s(7,"translate"),r(),i(8,"div",23)(9,"input",24),b("change",function(p){x(e);let Y=m();return h(Y.handleRestoreFileInput(p.target.files))}),r(),i(10,"label",25),a(11),s(12,"translate"),r()(),i(13,"div",26)(14,"button",27),b("click",function(){x(e);let p=m();return h(p.onClickCancelRestore())}),a(15),s(16,"translate"),r(),i(17,"button",28),b("click",function(){x(e);let p=m();return h(p.onRestoreBackupClick())}),z(18,ie,4,3,"span")(19,ne,2,3),r()()()}if(n&2){let e=m();t(3),d(l(4,8,"form.button_restore")),t(3),d(l(7,10,"backup.restore_help_one")),t(5),v(" ",l(12,12,(e.selectedFile==null?null:e.selectedFile.name)||"backup.label_choose_backup_file_to_restore")," "),t(3),_("disabled",e.restoreUploading),t(),v(" ",l(16,14,"form.button_cancel")," "),t(2),_("disabled",e.restoreUploading||!e.selectedFile),t(),f(e.restoreUploading?18:-1),t(),f(e.restoreUploading?-1:19)}}function re(n,u){n&1&&(i(0,"div",2),c(1,"img",8),i(2,"h3",4),a(3),s(4,"translate"),r(),i(5,"h1"),c(6,"i",29),r()()),n&2&&(t(3),d(l(4,1,"restart.title_restart")))}function ae(n,u){n&1&&(i(0,"div",2),c(1,"img",8),i(2,"h3",30),a(3),s(4,"translate"),r(),i(5,"p",31),a(6),s(7,"translate"),r(),i(8,"a",32),a(9),s(10,"translate"),r()()),n&2&&(t(3),d(l(4,3,"setup_wizard_message_complete_title")),t(3),d(l(7,5,"setup_wizard_message_complete_message")),t(3),d(l(10,7,"setup.open_dashboard")))}var ye=(()=>{class n{$api=g(K);$auth=g(Q);$modal=g(j);$settings=g(J);$title=g(E);$toastr=g(q);$translate=g(H);previousTitle;step="welcome";createUserForm=new O({username:new F("",[C.required]),password:new F("",[C.compose([C.required,C.minLength(4)])]),passwordConfirm:new F("",[C.required])},this.matchPassword);loading=!1;selectedFile;restoreUploading=!1;constructor(){}ngOnInit(){this.previousTitle=this.$title.getTitle(),this.$title.setTitle("Setup Homebridge")}matchPassword(e){let o=e.get("password").value,p=e.get("passwordConfirm").value;if(o!==p)e.get("passwordConfirm").setErrors({matchPassword:!0});else return null}ngOnDestroy(){this.$title.setTitle(this.previousTitle)}onClickGettingStarted(){this.step="create-account"}onClickRestoreBackup(){this.step="restore-backup"}onClickCancelRestore(){this.selectedFile=null,this.step="welcome"}createFirstUser(){this.loading=!0;let e=this.createUserForm.getRawValue();e.name=e.username,this.$api.post("/setup-wizard/create-first-user",e).subscribe({next:()=>w(this,null,function*(){this.$settings.env.setupWizardComplete=!0,yield this.$auth.login({username:e.username,password:e.password}),this.step="setup-complete"}),error:o=>{this.loading=!1,console.error(o),this.$toastr.error(o.error.message||this.$translate.instant("users.toast_failed_to_add_user"),this.$translate.instant("toast.title_error"))}})}handleRestoreFileInput(e){e.length?this.selectedFile=e[0]:delete this.selectedFile}onRestoreBackupClick(){this.restoreUploading=!0,this.uploadHomebridgeArchive()}uploadHomebridgeArchive(){return w(this,null,function*(){try{let e=yield S(this.$api.get("/setup-wizard/get-setup-wizard-token"));window.localStorage.setItem(I.jwt.tokenKey,e.access_token),this.$auth.token=e.access_token;let o=new FormData;o.append("restoreArchive",this.selectedFile,this.selectedFile.name),yield S(this.$api.post("/backup/restore",o)),this.openRestoreModal(),this.restoreUploading=!1}catch(e){this.restoreUploading=!1,console.error(e),this.$toastr.error(e.error.message||this.$translate.instant("users.toast_failed_to_add_user"),this.$translate.instant("toast.title_error"))}})}openRestoreModal(){let e=this.$modal.open(X,{size:"lg",backdrop:"static"});e.componentInstance.setupWizardRestore=!0,e.result.then(o=>{o===!0&&this.waitForHomebridgeToRestart()})}waitForHomebridgeToRestart(){return w(this,null,function*(){this.step="restarting",window.localStorage.removeItem(I.jwt.tokenKey),this.$auth.token=null,yield new Promise(o=>setTimeout(o,15e3));let e=setInterval(()=>w(this,null,function*(){try{yield S(this.$api.get("/auth/settings")),clearInterval(e),location.reload()}catch{}}),1e3)})}static \u0275fac=function(o){return new(o||n)};static \u0275cmp=T({type:n,selectors:[["ng-component"]],decls:7,vars:5,consts:[[1,"setup-container","d-flex","align-items-center","justify-content-center"],[1,"w-100","setup-card","d-flex","py-5"],[1,"w-100","d-flex","flex-column","align-items-center"],["src","/assets/homebridge-color-round.svg","alt","hb logo",1,"homebridge-logo","mx-auto"],[1,"pt-4","pb-3","text-center"],["type","button",1,"btn","btn-lg","btn-primary",3,"click"],[1,"mt-3"],["href","javascript:void(0)",1,"grey-text",3,"click"],["src","/assets/homebridge-color-round.svg","alt","hb logo",1,"homebridge-logo","homebridge-logo-small","mx-auto"],[1,"w-100"],["novalidate","",3,"ngSubmit","formGroup"],[1,"md-form"],[1,"fas","fa-fw","fa-user","prefix","grey-text"],["formControlName","username","type","text","id","form-username","autocomplete","username","autocapitalize","none","tabindex","1",1,"form-control","px-0",3,"readonly","ngClass"],["for","form-username"],[1,"fas","fa-fw","fa-lock","prefix","grey-text"],["formControlName","password","type","password","id","form-pass","autocomplete","new-password","tabindex","2",1,"form-control","px-0",3,"readonly","ngClass"],["for","form-pass"],["formControlName","passwordConfirm","type","password","id","form-pass-confirm","autocomplete","new-password","tabindex","2",1,"form-control","px-0",3,"readonly","ngClass"],["for","form-pass-confirm"],[1,"w-100","text-center"],["type","submit",1,"btn","btn-primary",3,"disabled","ngClass"],[1,"button-loading-overlay","fas","fa-fw","fa-spinner","fa-pulse"],[1,"custom-file"],["type","file","id","restoreFileUpload","accept","application/gzip, .gz",1,"custom-file-input",3,"change"],["for","restoreFileUpload",1,"custom-file-label"],[1,"mt-3","w-100","d-flex","justify-content-between"],["type","button",1,"btn","btn-elegant","ml-0",3,"click","disabled"],["type","button",1,"btn","btn-primary","mr-0",3,"click","disabled"],[1,"fas","fa-fw","fa-spinner","fa-pulse"],[1,"pt-4","pb-3"],[1,"text-center"],["routerLink","/",1,"btn","btn-lg","btn-primary","mt-3"]],template:function(o,p){o&1&&(i(0,"div",0)(1,"div",1),z(2,ee,12,9,"div",2)(3,te,33,38,"div",2)(4,oe,20,16,"div",2)(5,re,7,3,"div",2)(6,ae,11,9,"div",2),r()()),o&2&&(t(2),f(p.step==="welcome"?2:-1),t(),f(p.step==="create-account"?3:-1),t(),f(p.step==="restore-backup"?4:-1),t(),f(p.step==="restarting"?5:-1),t(),f(p.step==="setup-complete"?6:-1))},dependencies:[D,R,M,P,V,G,W,N,B,L,A],styles:[".setup-container[_ngcontent-%COMP%]{background-size:cover;z-index:-1;padding-top:1em;padding-bottom:1em}@media screen and (min-height: 500px) and (min-width: 600px){.setup-container[_ngcontent-%COMP%]{padding-top:4em}}.setup-card[_ngcontent-%COMP%]{max-width:600px;border-radius:15px;background-color:#fff;padding-right:25px;padding-left:25px}.setup-card[_ngcontent-%COMP%] .form-control[_ngcontent-%COMP%]:focus{background-color:inherit!important}@media screen and (max-width: 600px){.setup-card[_ngcontent-%COMP%]{margin-left:1em;margin-right:1em}} body.dark-mode .setup-card{background-color:#2b2b2b;color:#fff}.homebridge-logo[_ngcontent-%COMP%]{margin-right:10px;height:200px}@media screen and (max-height: 500px){.homebridge-logo[_ngcontent-%COMP%]{height:100px}}@media screen and (max-width: 600px){.homebridge-logo[_ngcontent-%COMP%]{height:100px}}.homebridge-logo-small[_ngcontent-%COMP%]{height:50px}.button-loading[_ngcontent-%COMP%]{position:relative;color:#0000}.button-loading[_ngcontent-%COMP%] .button-loading-overlay[_ngcontent-%COMP%]{display:block;color:#fff}.button-loading-overlay[_ngcontent-%COMP%]{display:none;position:absolute;top:9px;left:0;right:0}small[_ngcontent-%COMP%] a[_ngcontent-%COMP%]:hover{text-decoration:underline}"]})}return n})();export{ye as a};
@@ -1 +0,0 @@
1
- import"./chunk-MVXWO6QY.js";import"./chunk-WJQ5NIPP.js";import"./chunk-C2XBPNOQ.js";import"./chunk-RP5TYXWG.js";import"./chunk-7BCHGXO4.js";import"./chunk-EEDUUZ6J.js";import{q as n}from"./chunk-N4F42HDL.js";import"./chunk-YLEC7AUG.js";import"./chunk-TFXCOLWH.js";import{g as i}from"./chunk-T3GI7KUT.js";import"./chunk-MW5FLUTC.js";import"./chunk-YTJNIFE4.js";import"./chunk-3NBOT4LS.js";import"./chunk-HA6CO5NZ.js";import{c as s}from"./chunk-675OFXLW.js";import{ia as t,kd as m,vb as r}from"./chunk-CKNHTRCL.js";var f=[{path:"",loadComponent:()=>import("./chunk-6PASDO7Z.js").then(o=>o.LogsComponent)}],p=(()=>{class o{static \u0275fac=function(e){return new(e||o)};static \u0275mod=r({type:o});static \u0275inj=t({imports:[i.forChild(f),i]})}return o})();var h=(()=>{class o{static \u0275fac=function(e){return new(e||o)};static \u0275mod=r({type:o});static \u0275inj=t({imports:[m,p,n,s.forChild()]})}return o})();export{h as LogsModule};
@@ -1 +0,0 @@
1
- import{a as f,b as u}from"./chunk-PLBUFQSF.js";import{a as d}from"./chunk-IZGH4P6X.js";import{c as p}from"./chunk-FAJ5V6VJ.js";import"./chunk-PZ2IXNJQ.js";import"./chunk-5KLZWFYX.js";import"./chunk-JF5AT3NK.js";import{q as n}from"./chunk-N4F42HDL.js";import{y as s}from"./chunk-YLEC7AUG.js";import"./chunk-TFXCOLWH.js";import{g as i}from"./chunk-T3GI7KUT.js";import"./chunk-MW5FLUTC.js";import"./chunk-YTJNIFE4.js";import"./chunk-3NBOT4LS.js";import"./chunk-HA6CO5NZ.js";import{c}from"./chunk-675OFXLW.js";import{ia as r,kd as m,vb as e}from"./chunk-CKNHTRCL.js";var C=[{path:"",loadComponent:()=>import("./chunk-FOI6EIET.js").then(o=>o.AccessoriesComponent)}],l=(()=>{class o{static \u0275fac=function(t){return new(t||o)};static \u0275mod=e({type:o});static \u0275inj=r({imports:[i.forChild(C),i]})}return o})();var S=(()=>{class o{static \u0275fac=function(t){return new(t||o)};static \u0275mod=e({type:o});static \u0275inj=r({imports:[m,s,n,p,c.forChild(),d,l,u,f]})}return o})();export{S as AccessoriesModule};
@@ -1 +0,0 @@
1
- import{a}from"./chunk-YUIH2PS7.js";import"./chunk-NSCP3SOQ.js";import"./chunk-JF5AT3NK.js";import"./chunk-YLEC7AUG.js";import"./chunk-T3GI7KUT.js";import"./chunk-YTJNIFE4.js";import"./chunk-3NBOT4LS.js";import"./chunk-HA6CO5NZ.js";import"./chunk-675OFXLW.js";import"./chunk-CKNHTRCL.js";export{a as StartupScriptComponent};
@@ -1,5 +0,0 @@
1
- import{a as hn}from"./chunk-YLEC7AUG.js";import{$b as an,Aa as nn,Ac as cn,Bb as ot,Ca as ie,Da as Tt,E as L,F as qi,Fa as T,Fc as dn,Ga as re,H as Re,I as Jt,Ic as We,J as Ot,Ka as J,Kb as ii,Lb as Se,Mb as Rt,O as Ve,Ob as W,Oc as St,Pb as ge,Q as Yi,Rb as ni,S as Zi,Sa as It,Sb as oi,Ta as nt,Tc as le,Ub as si,Vb as ri,Wb as je,Xb as Le,Yb as ai,Zb as sn,_b as rn,a as bt,aa as qt,ac as li,b as Qt,ba as k,bc as ae,ca as tt,da as Dt,dc as ve,ec as ye,fc as st,fd as un,ga as Yt,gc as rt,ha as K,hc as Ne,ia as I,ib as $e,ic as ci,jc as ce,k as wt,ka as en,kc as de,lb as Ct,n as X,na as u,nc as ln,o as Ki,oc as di,p as Qi,pb as ei,pc as ui,r as et,ta as Zt,ub as me,va as tn,vb as C,wa as it,wb as $,wc as hi,x as Ce,xa as Et,ya as Mt,yb as on,z as Ji,zb as ti}from"./chunk-CKNHTRCL.js";function Nt(t){t||(tn(Nt),t=u(Tt));let e=new wt(s=>t.onDestroy(s.next.bind(s)));return s=>s.pipe(k(e))}var R="top",H="bottom",B="right",N="left",xt="auto",be=[R,H,B,N],ue="start",xe="end",pn="clippingParents",Ft="viewport",ze="popper",fn="reference",pi=be.reduce(function(t,e){return t.concat([e+"-"+ue,e+"-"+xe])},[]),kt=[].concat(be,[xt]).reduce(function(t,e){return t.concat([e,e+"-"+ue,e+"-"+xe])},[]),uo="beforeRead",ho="read",po="afterRead",fo="beforeMain",_o="main",mo="afterMain",go="beforeWrite",vo="write",yo="afterWrite",_n=[uo,ho,po,fo,_o,mo,go,vo,yo];function P(t){return t?(t.nodeName||"").toLowerCase():null}function O(t){if(t==null)return window;if(t.toString()!=="[object Window]"){var e=t.ownerDocument;return e&&e.defaultView||window}return t}function q(t){var e=O(t).Element;return t instanceof e||t instanceof Element}function x(t){var e=O(t).HTMLElement;return t instanceof e||t instanceof HTMLElement}function Xe(t){if(typeof ShadowRoot>"u")return!1;var e=O(t).ShadowRoot;return t instanceof e||t instanceof ShadowRoot}function bo(t){var e=t.state;Object.keys(e.elements).forEach(function(s){var i=e.styles[s]||{},n=e.attributes[s]||{},o=e.elements[s];!x(o)||!P(o)||(Object.assign(o.style,i),Object.keys(n).forEach(function(a){var r=n[a];r===!1?o.removeAttribute(a):o.setAttribute(a,r===!0?"":r)}))})}function wo(t){var e=t.state,s={popper:{position:e.options.strategy,left:"0",top:"0",margin:"0"},arrow:{position:"absolute"},reference:{}};return Object.assign(e.elements.popper.style,s.popper),e.styles=s,e.elements.arrow&&Object.assign(e.elements.arrow.style,s.arrow),function(){Object.keys(e.elements).forEach(function(i){var n=e.elements[i],o=e.attributes[i]||{},a=Object.keys(e.styles.hasOwnProperty(i)?e.styles[i]:s[i]),r=a.reduce(function(l,d){return l[d]="",l},{});!x(n)||!P(n)||(Object.assign(n.style,r),Object.keys(o).forEach(function(l){n.removeAttribute(l)}))})}}var mn={name:"applyStyles",enabled:!0,phase:"write",fn:bo,effect:wo,requires:["computeStyles"]};function A(t){return t.split("-")[0]}var ne=Math.max,Fe=Math.min,he=Math.round;function Ke(){var t=navigator.userAgentData;return t!=null&&t.brands&&Array.isArray(t.brands)?t.brands.map(function(e){return e.brand+"/"+e.version}).join(" "):navigator.userAgent}function at(){return!/^((?!chrome|android).)*safari/i.test(Ke())}function Y(t,e,s){e===void 0&&(e=!1),s===void 0&&(s=!1);var i=t.getBoundingClientRect(),n=1,o=1;e&&x(t)&&(n=t.offsetWidth>0&&he(i.width)/t.offsetWidth||1,o=t.offsetHeight>0&&he(i.height)/t.offsetHeight||1);var a=q(t)?O(t):window,r=a.visualViewport,l=!at()&&s,d=(i.left+(l&&r?r.offsetLeft:0))/n,c=(i.top+(l&&r?r.offsetTop:0))/o,f=i.width/n,p=i.height/o;return{width:f,height:p,top:c,right:d+f,bottom:c+p,left:d,x:d,y:c}}function ke(t){var e=Y(t),s=t.offsetWidth,i=t.offsetHeight;return Math.abs(e.width-s)<=1&&(s=e.width),Math.abs(e.height-i)<=1&&(i=e.height),{x:t.offsetLeft,y:t.offsetTop,width:s,height:i}}function lt(t,e){var s=e.getRootNode&&e.getRootNode();if(t.contains(e))return!0;if(s&&Xe(s)){var i=e;do{if(i&&t.isSameNode(i))return!0;i=i.parentNode||i.host}while(i)}return!1}function z(t){return O(t).getComputedStyle(t)}function fi(t){return["table","td","th"].indexOf(P(t))>=0}function U(t){return((q(t)?t.ownerDocument:t.document)||window.document).documentElement}function pe(t){return P(t)==="html"?t:t.assignedSlot||t.parentNode||(Xe(t)?t.host:null)||U(t)}function gn(t){return!x(t)||z(t).position==="fixed"?null:t.offsetParent}function Oo(t){var e=/firefox/i.test(Ke()),s=/Trident/i.test(Ke());if(s&&x(t)){var i=z(t);if(i.position==="fixed")return null}var n=pe(t);for(Xe(n)&&(n=n.host);x(n)&&["html","body"].indexOf(P(n))<0;){var o=z(n);if(o.transform!=="none"||o.perspective!=="none"||o.contain==="paint"||["transform","perspective"].indexOf(o.willChange)!==-1||e&&o.willChange==="filter"||e&&o.filter&&o.filter!=="none")return n;n=n.parentNode}return null}function oe(t){for(var e=O(t),s=gn(t);s&&fi(s)&&z(s).position==="static";)s=gn(s);return s&&(P(s)==="html"||P(s)==="body"&&z(s).position==="static")?e:s||Oo(t)||e}function Be(t){return["top","bottom"].indexOf(t)>=0?"x":"y"}function Pe(t,e,s){return ne(t,Fe(e,s))}function vn(t,e,s){var i=Pe(t,e,s);return i>s?s:i}function ct(){return{top:0,right:0,bottom:0,left:0}}function dt(t){return Object.assign({},ct(),t)}function ut(t,e){return e.reduce(function(s,i){return s[i]=t,s},{})}var Do=function(e,s){return e=typeof e=="function"?e(Object.assign({},s.rects,{placement:s.placement})):e,dt(typeof e!="number"?e:ut(e,be))};function Eo(t){var e,s=t.state,i=t.name,n=t.options,o=s.elements.arrow,a=s.modifiersData.popperOffsets,r=A(s.placement),l=Be(r),d=[N,B].indexOf(r)>=0,c=d?"height":"width";if(!(!o||!a)){var f=Do(n.padding,s),p=ke(o),h=l==="y"?R:N,m=l==="y"?H:B,v=s.rects.reference[c]+s.rects.reference[l]-a[l]-s.rects.popper[c],g=a[l]-s.rects.reference[l],w=oe(o),E=w?l==="y"?w.clientHeight||0:w.clientWidth||0:0,M=v/2-g/2,_=f[h],y=E-p[c]-f[m],b=E/2-p[c]/2+M,D=Pe(_,b,y),G=l;s.modifiersData[i]=(e={},e[G]=D,e.centerOffset=D-b,e)}}function Mo(t){var e=t.state,s=t.options,i=s.element,n=i===void 0?"[data-popper-arrow]":i;n!=null&&(typeof n=="string"&&(n=e.elements.popper.querySelector(n),!n)||lt(e.elements.popper,n)&&(e.elements.arrow=n))}var _i={name:"arrow",enabled:!0,phase:"main",fn:Eo,effect:Mo,requires:["popperOffsets"],requiresIfExists:["preventOverflow"]};function Z(t){return t.split("-")[1]}var To={top:"auto",right:"auto",bottom:"auto",left:"auto"};function Io(t,e){var s=t.x,i=t.y,n=e.devicePixelRatio||1;return{x:he(s*n)/n||0,y:he(i*n)/n||0}}function yn(t){var e,s=t.popper,i=t.popperRect,n=t.placement,o=t.variation,a=t.offsets,r=t.position,l=t.gpuAcceleration,d=t.adaptive,c=t.roundOffsets,f=t.isFixed,p=a.x,h=p===void 0?0:p,m=a.y,v=m===void 0?0:m,g=typeof c=="function"?c({x:h,y:v}):{x:h,y:v};h=g.x,v=g.y;var w=a.hasOwnProperty("x"),E=a.hasOwnProperty("y"),M=N,_=R,y=window;if(d){var b=oe(s),D="clientHeight",G="clientWidth";if(b===O(s)&&(b=U(s),z(b).position!=="static"&&r==="absolute"&&(D="scrollHeight",G="scrollWidth")),b=b,n===R||(n===N||n===B)&&o===xe){_=H;var F=f&&b===y&&y.visualViewport?y.visualViewport.height:b[D];v-=F-i.height,v*=l?1:-1}if(n===N||(n===R||n===H)&&o===xe){M=B;var S=f&&b===y&&y.visualViewport?y.visualViewport.width:b[G];h-=S-i.width,h*=l?1:-1}}var V=Object.assign({position:r},d&&To),ee=c===!0?Io({x:h,y:v},O(s)):{x:h,y:v};if(h=ee.x,v=ee.y,l){var j;return Object.assign({},V,(j={},j[_]=E?"0":"",j[M]=w?"0":"",j.transform=(y.devicePixelRatio||1)<=1?"translate("+h+"px, "+v+"px)":"translate3d("+h+"px, "+v+"px, 0)",j))}return Object.assign({},V,(e={},e[_]=E?v+"px":"",e[M]=w?h+"px":"",e.transform="",e))}function Co(t){var e=t.state,s=t.options,i=s.gpuAcceleration,n=i===void 0?!0:i,o=s.adaptive,a=o===void 0?!0:o,r=s.roundOffsets,l=r===void 0?!0:r,d={placement:A(e.placement),variation:Z(e.placement),popper:e.elements.popper,popperRect:e.rects.popper,gpuAcceleration:n,isFixed:e.options.strategy==="fixed"};e.modifiersData.popperOffsets!=null&&(e.styles.popper=Object.assign({},e.styles.popper,yn(Object.assign({},d,{offsets:e.modifiersData.popperOffsets,position:e.options.strategy,adaptive:a,roundOffsets:l})))),e.modifiersData.arrow!=null&&(e.styles.arrow=Object.assign({},e.styles.arrow,yn(Object.assign({},d,{offsets:e.modifiersData.arrow,position:"absolute",adaptive:!1,roundOffsets:l})))),e.attributes.popper=Object.assign({},e.attributes.popper,{"data-popper-placement":e.placement})}var bn={name:"computeStyles",enabled:!0,phase:"beforeWrite",fn:Co,data:{}};var Bt={passive:!0};function Ro(t){var e=t.state,s=t.instance,i=t.options,n=i.scroll,o=n===void 0?!0:n,a=i.resize,r=a===void 0?!0:a,l=O(e.elements.popper),d=[].concat(e.scrollParents.reference,e.scrollParents.popper);return o&&d.forEach(function(c){c.addEventListener("scroll",s.update,Bt)}),r&&l.addEventListener("resize",s.update,Bt),function(){o&&d.forEach(function(c){c.removeEventListener("scroll",s.update,Bt)}),r&&l.removeEventListener("resize",s.update,Bt)}}var wn={name:"eventListeners",enabled:!0,phase:"write",fn:function(){},effect:Ro,data:{}};var So={left:"right",right:"left",bottom:"top",top:"bottom"};function Qe(t){return t.replace(/left|right|bottom|top/g,function(e){return So[e]})}var No={start:"end",end:"start"};function Pt(t){return t.replace(/start|end/g,function(e){return No[e]})}function Ae(t){var e=O(t),s=e.pageXOffset,i=e.pageYOffset;return{scrollLeft:s,scrollTop:i}}function Ge(t){return Y(U(t)).left+Ae(t).scrollLeft}function mi(t,e){var s=O(t),i=U(t),n=s.visualViewport,o=i.clientWidth,a=i.clientHeight,r=0,l=0;if(n){o=n.width,a=n.height;var d=at();(d||!d&&e==="fixed")&&(r=n.offsetLeft,l=n.offsetTop)}return{width:o,height:a,x:r+Ge(t),y:l}}function gi(t){var e,s=U(t),i=Ae(t),n=(e=t.ownerDocument)==null?void 0:e.body,o=ne(s.scrollWidth,s.clientWidth,n?n.scrollWidth:0,n?n.clientWidth:0),a=ne(s.scrollHeight,s.clientHeight,n?n.scrollHeight:0,n?n.clientHeight:0),r=-i.scrollLeft+Ge(t),l=-i.scrollTop;return z(n||s).direction==="rtl"&&(r+=ne(s.clientWidth,n?n.clientWidth:0)-o),{width:o,height:a,x:r,y:l}}function He(t){var e=z(t),s=e.overflow,i=e.overflowX,n=e.overflowY;return/auto|scroll|overlay|hidden/.test(s+n+i)}function At(t){return["html","body","#document"].indexOf(P(t))>=0?t.ownerDocument.body:x(t)&&He(t)?t:At(pe(t))}function we(t,e){var s;e===void 0&&(e=[]);var i=At(t),n=i===((s=t.ownerDocument)==null?void 0:s.body),o=O(i),a=n?[o].concat(o.visualViewport||[],He(i)?i:[]):i,r=e.concat(a);return n?r:r.concat(we(pe(a)))}function Je(t){return Object.assign({},t,{left:t.x,top:t.y,right:t.x+t.width,bottom:t.y+t.height})}function xo(t,e){var s=Y(t,!1,e==="fixed");return s.top=s.top+t.clientTop,s.left=s.left+t.clientLeft,s.bottom=s.top+t.clientHeight,s.right=s.left+t.clientWidth,s.width=t.clientWidth,s.height=t.clientHeight,s.x=s.left,s.y=s.top,s}function On(t,e,s){return e===Ft?Je(mi(t,s)):q(e)?xo(e,s):Je(gi(U(t)))}function Fo(t){var e=we(pe(t)),s=["absolute","fixed"].indexOf(z(t).position)>=0,i=s&&x(t)?oe(t):t;return q(i)?e.filter(function(n){return q(n)&&lt(n,i)&&P(n)!=="body"}):[]}function vi(t,e,s,i){var n=e==="clippingParents"?Fo(t):[].concat(e),o=[].concat(n,[s]),a=o[0],r=o.reduce(function(l,d){var c=On(t,d,i);return l.top=ne(c.top,l.top),l.right=Fe(c.right,l.right),l.bottom=Fe(c.bottom,l.bottom),l.left=ne(c.left,l.left),l},On(t,a,i));return r.width=r.right-r.left,r.height=r.bottom-r.top,r.x=r.left,r.y=r.top,r}function ht(t){var e=t.reference,s=t.element,i=t.placement,n=i?A(i):null,o=i?Z(i):null,a=e.x+e.width/2-s.width/2,r=e.y+e.height/2-s.height/2,l;switch(n){case R:l={x:a,y:e.y-s.height};break;case H:l={x:a,y:e.y+e.height};break;case B:l={x:e.x+e.width,y:r};break;case N:l={x:e.x-s.width,y:r};break;default:l={x:e.x,y:e.y}}var d=n?Be(n):null;if(d!=null){var c=d==="y"?"height":"width";switch(o){case ue:l[d]=l[d]-(e[c]/2-s[c]/2);break;case xe:l[d]=l[d]+(e[c]/2-s[c]/2);break;default:}}return l}function Oe(t,e){e===void 0&&(e={});var s=e,i=s.placement,n=i===void 0?t.placement:i,o=s.strategy,a=o===void 0?t.strategy:o,r=s.boundary,l=r===void 0?pn:r,d=s.rootBoundary,c=d===void 0?Ft:d,f=s.elementContext,p=f===void 0?ze:f,h=s.altBoundary,m=h===void 0?!1:h,v=s.padding,g=v===void 0?0:v,w=dt(typeof g!="number"?g:ut(g,be)),E=p===ze?fn:ze,M=t.rects.popper,_=t.elements[m?E:p],y=vi(q(_)?_:_.contextElement||U(t.elements.popper),l,c,a),b=Y(t.elements.reference),D=ht({reference:b,element:M,strategy:"absolute",placement:n}),G=Je(Object.assign({},M,D)),F=p===ze?G:b,S={top:y.top-F.top+w.top,bottom:F.bottom-y.bottom+w.bottom,left:y.left-F.left+w.left,right:F.right-y.right+w.right},V=t.modifiersData.offset;if(p===ze&&V){var ee=V[n];Object.keys(S).forEach(function(j){var De=[B,H].indexOf(j)>=0?1:-1,Ee=[R,H].indexOf(j)>=0?"y":"x";S[j]+=ee[Ee]*De})}return S}function yi(t,e){e===void 0&&(e={});var s=e,i=s.placement,n=s.boundary,o=s.rootBoundary,a=s.padding,r=s.flipVariations,l=s.allowedAutoPlacements,d=l===void 0?kt:l,c=Z(i),f=c?r?pi:pi.filter(function(m){return Z(m)===c}):be,p=f.filter(function(m){return d.indexOf(m)>=0});p.length===0&&(p=f);var h=p.reduce(function(m,v){return m[v]=Oe(t,{placement:v,boundary:n,rootBoundary:o,padding:a})[A(v)],m},{});return Object.keys(h).sort(function(m,v){return h[m]-h[v]})}function ko(t){if(A(t)===xt)return[];var e=Qe(t);return[Pt(t),e,Pt(e)]}function Bo(t){var e=t.state,s=t.options,i=t.name;if(!e.modifiersData[i]._skip){for(var n=s.mainAxis,o=n===void 0?!0:n,a=s.altAxis,r=a===void 0?!0:a,l=s.fallbackPlacements,d=s.padding,c=s.boundary,f=s.rootBoundary,p=s.altBoundary,h=s.flipVariations,m=h===void 0?!0:h,v=s.allowedAutoPlacements,g=e.options.placement,w=A(g),E=w===g,M=l||(E||!m?[Qe(g)]:ko(g)),_=[g].concat(M).reduce(function(Ue,_e){return Ue.concat(A(_e)===xt?yi(e,{placement:_e,boundary:c,rootBoundary:f,padding:d,flipVariations:m,allowedAutoPlacements:v}):_e)},[]),y=e.rects.reference,b=e.rects.popper,D=new Map,G=!0,F=_[0],S=0;S<_.length;S++){var V=_[S],ee=A(V),j=Z(V)===ue,De=[R,H].indexOf(ee)>=0,Ee=De?"width":"height",Q=Oe(e,{placement:V,boundary:c,rootBoundary:f,altBoundary:p,padding:d}),te=De?j?B:N:j?H:R;y[Ee]>b[Ee]&&(te=Qe(te));var _t=Qe(te),Me=[];if(o&&Me.push(Q[ee]<=0),r&&Me.push(Q[te]<=0,Q[_t]<=0),Me.every(function(Ue){return Ue})){F=V,G=!1;break}D.set(V,Me)}if(G)for(var mt=m?3:1,Wt=function(_e){var Ze=_.find(function(vt){var Te=D.get(vt);if(Te)return Te.slice(0,_e).every(function(zt){return zt})});if(Ze)return F=Ze,"break"},Ye=mt;Ye>0;Ye--){var gt=Wt(Ye);if(gt==="break")break}e.placement!==F&&(e.modifiersData[i]._skip=!0,e.placement=F,e.reset=!0)}}var bi={name:"flip",enabled:!0,phase:"main",fn:Bo,requiresIfExists:["offset"],data:{_skip:!1}};function Po(t,e,s){var i=A(t),n=[N,R].indexOf(i)>=0?-1:1,o=typeof s=="function"?s(Object.assign({},e,{placement:t})):s,a=o[0],r=o[1];return a=a||0,r=(r||0)*n,[N,B].indexOf(i)>=0?{x:r,y:a}:{x:a,y:r}}function Ao(t){var e=t.state,s=t.options,i=t.name,n=s.offset,o=n===void 0?[0,0]:n,a=kt.reduce(function(c,f){return c[f]=Po(f,e.rects,o),c},{}),r=a[e.placement],l=r.x,d=r.y;e.modifiersData.popperOffsets!=null&&(e.modifiersData.popperOffsets.x+=l,e.modifiersData.popperOffsets.y+=d),e.modifiersData[i]=a}var wi={name:"offset",enabled:!0,phase:"main",requires:["popperOffsets"],fn:Ao};function Go(t){var e=t.state,s=t.name;e.modifiersData[s]=ht({reference:e.rects.reference,element:e.rects.popper,strategy:"absolute",placement:e.placement})}var Dn={name:"popperOffsets",enabled:!0,phase:"read",fn:Go,data:{}};function Oi(t){return t==="x"?"y":"x"}function Ho(t){var e=t.state,s=t.options,i=t.name,n=s.mainAxis,o=n===void 0?!0:n,a=s.altAxis,r=a===void 0?!1:a,l=s.boundary,d=s.rootBoundary,c=s.altBoundary,f=s.padding,p=s.tether,h=p===void 0?!0:p,m=s.tetherOffset,v=m===void 0?0:m,g=Oe(e,{boundary:l,rootBoundary:d,padding:f,altBoundary:c}),w=A(e.placement),E=Z(e.placement),M=!E,_=Be(w),y=Oi(_),b=e.modifiersData.popperOffsets,D=e.rects.reference,G=e.rects.popper,F=typeof v=="function"?v(Object.assign({},e.rects,{placement:e.placement})):v,S=typeof F=="number"?{mainAxis:F,altAxis:F}:Object.assign({mainAxis:0,altAxis:0},F),V=e.modifiersData.offset?e.modifiersData.offset[e.placement]:null,ee={x:0,y:0};if(b){if(o){var j,De=_==="y"?R:N,Ee=_==="y"?H:B,Q=_==="y"?"height":"width",te=b[_],_t=te+g[De],Me=te-g[Ee],mt=h?-G[Q]/2:0,Wt=E===ue?D[Q]:G[Q],Ye=E===ue?-G[Q]:-D[Q],gt=e.elements.arrow,Ue=h&&gt?ke(gt):{width:0,height:0},_e=e.modifiersData["arrow#persistent"]?e.modifiersData["arrow#persistent"].padding:ct(),Ze=_e[De],vt=_e[Ee],Te=Pe(0,D[Q],Ue[Q]),zt=M?D[Q]/2-mt-Te-Ze-S.mainAxis:Wt-Te-Ze-S.mainAxis,oo=M?-D[Q]/2+mt+Te+vt+S.mainAxis:Ye+Te+vt+S.mainAxis,Xt=e.elements.arrow&&oe(e.elements.arrow),so=Xt?_==="y"?Xt.clientTop||0:Xt.clientLeft||0:0,Hi=(j=V==null?void 0:V[_])!=null?j:0,ro=te+zt-Hi-so,ao=te+oo-Hi,Ui=Pe(h?Fe(_t,ro):_t,te,h?ne(Me,ao):Me);b[_]=Ui,ee[_]=Ui-te}if(r){var Vi,lo=_==="x"?R:N,co=_==="x"?H:B,Ie=b[y],yt=y==="y"?"height":"width",$i=Ie+g[lo],ji=Ie-g[co],Kt=[R,N].indexOf(w)!==-1,Li=(Vi=V==null?void 0:V[y])!=null?Vi:0,Wi=Kt?$i:Ie-D[yt]-G[yt]-Li+S.altAxis,zi=Kt?Ie+D[yt]+G[yt]-Li-S.altAxis:ji,Xi=h&&Kt?vn(Wi,Ie,zi):Pe(h?Wi:$i,Ie,h?zi:ji);b[y]=Xi,ee[y]=Xi-Ie}e.modifiersData[i]=ee}}var Di={name:"preventOverflow",enabled:!0,phase:"main",fn:Ho,requiresIfExists:["offset"]};function Ei(t){return{scrollLeft:t.scrollLeft,scrollTop:t.scrollTop}}function Mi(t){return t===O(t)||!x(t)?Ae(t):Ei(t)}function Uo(t){var e=t.getBoundingClientRect(),s=he(e.width)/t.offsetWidth||1,i=he(e.height)/t.offsetHeight||1;return s!==1||i!==1}function Ti(t,e,s){s===void 0&&(s=!1);var i=x(e),n=x(e)&&Uo(e),o=U(e),a=Y(t,n,s),r={scrollLeft:0,scrollTop:0},l={x:0,y:0};return(i||!i&&!s)&&((P(e)!=="body"||He(o))&&(r=Mi(e)),x(e)?(l=Y(e,!0),l.x+=e.clientLeft,l.y+=e.clientTop):o&&(l.x=Ge(o))),{x:a.left+r.scrollLeft-l.x,y:a.top+r.scrollTop-l.y,width:a.width,height:a.height}}function Vo(t){var e=new Map,s=new Set,i=[];t.forEach(function(o){e.set(o.name,o)});function n(o){s.add(o.name);var a=[].concat(o.requires||[],o.requiresIfExists||[]);a.forEach(function(r){if(!s.has(r)){var l=e.get(r);l&&n(l)}}),i.push(o)}return t.forEach(function(o){s.has(o.name)||n(o)}),i}function Ii(t){var e=Vo(t);return _n.reduce(function(s,i){return s.concat(e.filter(function(n){return n.phase===i}))},[])}function Ci(t){var e;return function(){return e||(e=new Promise(function(s){Promise.resolve().then(function(){e=void 0,s(t())})})),e}}function Ri(t){var e=t.reduce(function(s,i){var n=s[i.name];return s[i.name]=n?Object.assign({},n,i,{options:Object.assign({},n.options,i.options),data:Object.assign({},n.data,i.data)}):i,s},{});return Object.keys(e).map(function(s){return e[s]})}var En={placement:"bottom",modifiers:[],strategy:"absolute"};function Mn(){for(var t=arguments.length,e=new Array(t),s=0;s<t;s++)e[s]=arguments[s];return!e.some(function(i){return!(i&&typeof i.getBoundingClientRect=="function")})}function Tn(t){t===void 0&&(t={});var e=t,s=e.defaultModifiers,i=s===void 0?[]:s,n=e.defaultOptions,o=n===void 0?En:n;return function(r,l,d){d===void 0&&(d=o);var c={placement:"bottom",orderedModifiers:[],options:Object.assign({},En,o),modifiersData:{},elements:{reference:r,popper:l},attributes:{},styles:{}},f=[],p=!1,h={state:c,setOptions:function(w){var E=typeof w=="function"?w(c.options):w;v(),c.options=Object.assign({},o,c.options,E),c.scrollParents={reference:q(r)?we(r):r.contextElement?we(r.contextElement):[],popper:we(l)};var M=Ii(Ri([].concat(i,c.options.modifiers)));return c.orderedModifiers=M.filter(function(_){return _.enabled}),m(),h.update()},forceUpdate:function(){if(!p){var w=c.elements,E=w.reference,M=w.popper;if(Mn(E,M)){c.rects={reference:Ti(E,oe(M),c.options.strategy==="fixed"),popper:ke(M)},c.reset=!1,c.placement=c.options.placement,c.orderedModifiers.forEach(function(S){return c.modifiersData[S.name]=Object.assign({},S.data)});for(var _=0;_<c.orderedModifiers.length;_++){if(c.reset===!0){c.reset=!1,_=-1;continue}var y=c.orderedModifiers[_],b=y.fn,D=y.options,G=D===void 0?{}:D,F=y.name;typeof b=="function"&&(c=b({state:c,options:G,name:F,instance:h})||c)}}}},update:Ci(function(){return new Promise(function(g){h.forceUpdate(),g(c)})}),destroy:function(){v(),p=!0}};if(!Mn(r,l))return h;h.setOptions(d).then(function(g){!p&&d.onFirstUpdate&&d.onFirstUpdate(g)});function m(){c.orderedModifiers.forEach(function(g){var w=g.name,E=g.options,M=E===void 0?{}:E,_=g.effect;if(typeof _=="function"){var y=_({state:c,name:w,instance:h,options:M}),b=function(){};f.push(y||b)}})}function v(){f.forEach(function(g){return g()}),f=[]}return h}}var $o=[wn,Dn,bn,mn],Si=Tn({defaultModifiers:$o});var jo=["container"],Lo=["ngbAccordionBody",""],jt=["*"];function Wo(t,e){if(t&1){let s=li();je(0,"button",1),ve("click",function(){Et(s);let n=ye();return Mt(n.close())}),Le()}}var zo=["dialog"];function Xo(t,e){if(t&1&&(je(0,"span"),di(1),Le()),t&2){let s=ye().$implicit,i=ye();ge(i.highlightClass),$e(),ui(s)}}function Ko(t,e){if(t&1&&(sn(0),di(1),rn()),t&2){let s=ye().$implicit;$e(),ui(s)}}function Qo(t,e){if(t&1&&ot(0,Xo,2,4,"span",0)(1,Ko,2,1,"ng-container"),t&2){let s=e.$index;ni(s%2!==0?0:1)}}var Jo=(t,e,s)=>({result:t,term:e,formatter:s});function qo(t,e){if(t&1&&ai(0,"ngb-highlight",2),t&2){let s=e.result,i=e.term,n=e.formatter;Rt("result",n(s))("term",i)}}function Yo(t,e){}function Zo(t,e){if(t&1){let s=li();je(0,"button",3),ve("mouseenter",function(){let n=Et(s).$index,o=ye();return Mt(o.markActive(n))})("click",function(){let n=Et(s).$implicit,o=ye();return Mt(o.select(n))}),ot(1,Yo,0,0,"ng-template",4),Le()}if(t&2){let s=e.$implicit,i=e.$index,n=ye(),o=ln(1);W("active",i===n.activeIdx),Rt("id",n.id+"-"+i),$e(),Rt("ngTemplateOutlet",n.resultTemplate||o)("ngTemplateOutletContext",cn(5,Jo,s,n.term,n.formatter))}}var Fn={animation:!0,transitionTimerDelayMs:5},ft=(()=>{let e=class e{constructor(){this.animation=Fn.animation}};e.\u0275fac=function(n){return new(n||e)},e.\u0275prov=K({token:e,factory:e.\u0275fac,providedIn:"root"});let t=e;return t})(),es=(()=>{let e=class e{constructor(){this._ngbConfig=u(ft),this.closeOthers=!1,this.destroyOnHide=!0}get animation(){var i;return(i=this._animation)!=null?i:this._ngbConfig.animation}set animation(i){this._animation=i}};e.\u0275fac=function(n){return new(n||e)},e.\u0275prov=K({token:e,factory:e.\u0275fac,providedIn:"root"});let t=e;return t})();function ts(t){let{transitionDelay:e,transitionDuration:s}=window.getComputedStyle(t),i=parseFloat(e),n=parseFloat(s);return(i+n)*1e3}function pt(t){return t!=null?`${t}`:""}function Lt(t){return typeof t=="string"}function Ut(t){return t!=null}function is(t){return t&&t.then}function ns(t){return t.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&")}function os(t,e){return!e||typeof t.closest>"u"?null:t.closest(e)}function ki(t){return(t||document.body).getBoundingClientRect()}function ss(t){return e=>new wt(s=>{let i=a=>t.run(()=>s.next(a)),n=a=>t.run(()=>s.error(a)),o=()=>t.run(()=>s.complete());return e.subscribe({next:i,error:n,complete:o})})}function In(t){return t.normalize("NFD").replace(/[\u0300-\u036f]/g,"")}function kn(t=document){let e=t==null?void 0:t.activeElement;return e?e.shadowRoot?kn(e.shadowRoot):e:null}var rs=()=>{},{transitionTimerDelayMs:as}=Fn,Gt=new Map,se=(t,e,s,i)=>{let n=i.context||{},o=Gt.get(e);if(o)switch(i.runningTransition){case"continue":return Qi;case"stop":t.run(()=>o.transition$.complete()),n=Object.assign(o.context,n),Gt.delete(e)}let a=s(e,i.animation,n)||rs;if(!i.animation||window.getComputedStyle(e).transitionProperty==="none")return t.run(()=>a()),et(void 0).pipe(ss(t));let r=new X,l=new X,d=r.pipe(Zi(!0));Gt.set(e,{transition$:r,complete:()=>{l.next(),l.complete()},context:n});let c=ts(e);return t.runOutsideAngular(()=>{let f=L(e,"transitionend").pipe(k(d),Re(({target:h})=>h===e)),p=qi(c+as).pipe(k(d));Jt(p,f,l).pipe(k(d)).subscribe(()=>{Gt.delete(e),t.run(()=>{a(),r.next(),r.complete()})})}),r.asObservable()};function ls(t,e){if(typeof navigator>"u")return"0px";let{classList:s}=t,i=s.contains("show");i||s.add("show"),t.style[e]="";let n=t.getBoundingClientRect()[e]+"px";return i||s.remove("show"),n}var cs=(t,e,s)=>{let{direction:i,maxSize:n,dimension:o}=s,{classList:a}=t;function r(){a.add("collapse"),i==="show"?a.add("show"):a.remove("show")}if(!e){r();return}return n||(n=ls(t,o),s.maxSize=n,t.style[o]=i!=="show"?n:"0px",a.remove("collapse","collapsing","show"),ki(t),a.add("collapsing")),t.style[o]=i==="show"?n:"0px",()=>{r(),a.remove("collapsing"),t.style[o]=""}},ds=(()=>{let e=class e{constructor(){this._ngbConfig=u(ft),this.horizontal=!1}get animation(){var i;return(i=this._animation)!=null?i:this._ngbConfig.animation}set animation(i){this._animation=i}};e.\u0275fac=function(n){return new(n||e)},e.\u0275prov=K({token:e,factory:e.\u0275fac,providedIn:"root"});let t=e;return t})(),Cn=(()=>{let e=class e{constructor(){this._config=u(ds),this._element=u(J),this._zone=u(re),this.animation=this._config.animation,this._afterInit=!1,this._isCollapsed=!1,this.ngbCollapseChange=new T,this.horizontal=this._config.horizontal,this.shown=new T,this.hidden=new T}set collapsed(i){this._isCollapsed!==i&&(this._isCollapsed=i,this._afterInit&&this._runTransitionWithEvents(i,this.animation))}ngOnInit(){this._runTransition(this._isCollapsed,!1),this._afterInit=!0}toggle(i=this._isCollapsed){this.collapsed=!i,this.ngbCollapseChange.next(this._isCollapsed)}_runTransition(i,n){return se(this._zone,this._element.nativeElement,cs,{animation:n,runningTransition:"stop",context:{direction:i?"hide":"show",dimension:this.horizontal?"width":"height"}})}_runTransitionWithEvents(i,n){this._runTransition(i,n).subscribe(()=>{i?this.hidden.emit():this.shown.emit()})}};e.\u0275fac=function(n){return new(n||e)},e.\u0275dir=$({type:e,selectors:[["","ngbCollapse",""]],hostVars:2,hostBindings:function(n,o){n&2&&W("collapse-horizontal",o.horizontal)},inputs:{animation:"animation",collapsed:[0,"ngbCollapse","collapsed"],horizontal:"horizontal"},outputs:{ngbCollapseChange:"ngbCollapseChange",shown:"shown",hidden:"hidden"},exportAs:["ngbCollapse"]});let t=e;return t})(),us=0,Yd=(()=>{let e=class e{constructor(){this._item=u(qe),this._viewRef=null,this.elementRef=u(J)}ngAfterContentChecked(){this._bodyTpl&&(this._item._shouldBeInDOM?this._createViewIfNotExists():this._destroyViewIfExists())}ngOnDestroy(){this._destroyViewIfExists()}_destroyViewIfExists(){var i;(i=this._viewRef)==null||i.destroy(),this._viewRef=null}_createViewIfNotExists(){this._viewRef||(this._viewRef=this._vcr.createEmbeddedView(this._bodyTpl),this._viewRef.detectChanges())}};e.\u0275fac=function(n){return new(n||e)},e.\u0275cmp=me({type:e,selectors:[["","ngbAccordionBody",""]],contentQueries:function(n,o,a){if(n&1&&Ne(a,Ct,7),n&2){let r;ce(r=de())&&(o._bodyTpl=r.first)}},viewQuery:function(n,o){if(n&1&&ci(jo,7,ei),n&2){let a;ce(a=de())&&(o._vcr=a.first)}},hostAttrs:[1,"accordion-body"],attrs:Lo,ngContentSelectors:jt,decls:3,vars:0,consts:[["container",""]],template:function(n,o){n&1&&(st(),an(0,null,0),rt(2))},encapsulation:2});let t=e;return t})(),hs=(()=>{let e=class e{constructor(){this.item=u(qe),this.ngbCollapse=u(Cn)}};e.\u0275fac=function(n){return new(n||e)},e.\u0275dir=$({type:e,selectors:[["","ngbAccordionCollapse",""]],hostAttrs:["role","region",1,"accordion-collapse"],hostVars:2,hostBindings:function(n,o){n&2&&(ae("id",o.item.collapseId),Se("aria-labelledby",o.item.toggleId))},exportAs:["ngbAccordionCollapse"],features:[ti([Cn])]});let t=e;return t})(),ps=(()=>{let e=class e{constructor(){this.item=u(qe),this.accordion=u(Bn)}};e.\u0275fac=function(n){return new(n||e)},e.\u0275dir=$({type:e,selectors:[["","ngbAccordionToggle",""]],hostVars:5,hostBindings:function(n,o){n&1&&ve("click",function(){return!o.item.disabled&&o.accordion.toggle(o.item.id)}),n&2&&(ae("id",o.item.toggleId),Se("aria-controls",o.item.collapseId)("aria-expanded",!o.item.collapsed),W("collapsed",o.item.collapsed))}});let t=e;return t})(),Zd=(()=>{let e=class e{constructor(){this.item=u(qe)}};e.\u0275fac=function(n){return new(n||e)},e.\u0275dir=$({type:e,selectors:[["button","ngbAccordionButton",""]],hostAttrs:["type","button",1,"accordion-button"],hostVars:1,hostBindings:function(n,o){n&2&&ae("disabled",o.item.disabled)},features:[ti([ps])]});let t=e;return t})(),eu=(()=>{let e=class e{constructor(){this.item=u(qe)}};e.\u0275fac=function(n){return new(n||e)},e.\u0275dir=$({type:e,selectors:[["","ngbAccordionHeader",""]],hostAttrs:["role","heading",1,"accordion-header"],hostVars:2,hostBindings:function(n,o){n&2&&W("collapsed",o.item.collapsed)}});let t=e;return t})(),qe=(()=>{let e=class e{constructor(){this._accordion=u(Bn),this._cd=u(We),this._destroyRef=u(Tt),this._collapsed=!0,this._id=`ngb-accordion-item-${us++}`,this._collapseAnimationRunning=!1,this.disabled=!1,this.show=new T,this.shown=new T,this.hide=new T,this.hidden=new T}set id(i){Lt(i)&&i!==""&&(this._id=i)}set destroyOnHide(i){this._destroyOnHide=i}get destroyOnHide(){return this._destroyOnHide===void 0?this._accordion.destroyOnHide:this._destroyOnHide}set collapsed(i){i?this.collapse():this.expand()}get collapsed(){return this._collapsed}get id(){return`${this._id}`}get toggleId(){return`${this.id}-toggle`}get collapseId(){return`${this.id}-collapse`}get _shouldBeInDOM(){return!this.collapsed||this._collapseAnimationRunning||!this.destroyOnHide}ngAfterContentInit(){let{ngbCollapse:i}=this._collapse;i.animation=!1,i.collapsed=this.collapsed,i.animation=this._accordion.animation,i.hidden.pipe(Nt(this._destroyRef)).subscribe(()=>{this._collapseAnimationRunning=!1,this.hidden.emit(),this._accordion.hidden.emit(this.id),this._cd.markForCheck()}),i.shown.pipe(Nt(this._destroyRef)).subscribe(()=>{this.shown.emit(),this._accordion.shown.emit(this.id),this._cd.markForCheck()})}toggle(){this.collapsed=!this.collapsed}expand(){if(this.collapsed){if(!this._accordion._ensureCanExpand(this))return;this._collapsed=!1,this._cd.markForCheck(),this._cd.detectChanges(),this.show.emit(),this._accordion.show.emit(this.id),this._collapse.ngbCollapse.animation=this._accordion.animation,this._collapse.ngbCollapse.collapsed=!1}}collapse(){this.collapsed||(this._collapsed=!0,this._collapseAnimationRunning=!0,this._cd.markForCheck(),this.hide.emit(),this._accordion.hide.emit(this.id),this._collapse.ngbCollapse.animation=this._accordion.animation,this._collapse.ngbCollapse.collapsed=!0)}};e.\u0275fac=function(n){return new(n||e)},e.\u0275dir=$({type:e,selectors:[["","ngbAccordionItem",""]],contentQueries:function(n,o,a){if(n&1&&Ne(a,hs,7),n&2){let r;ce(r=de())&&(o._collapse=r.first)}},hostAttrs:[1,"accordion-item"],hostVars:1,hostBindings:function(n,o){n&2&&ae("id",o.id)},inputs:{id:[0,"ngbAccordionItem","id"],destroyOnHide:"destroyOnHide",disabled:"disabled",collapsed:"collapsed"},outputs:{show:"show",shown:"shown",hide:"hide",hidden:"hidden"},exportAs:["ngbAccordionItem"]});let t=e;return t})(),Bn=(()=>{let e=class e{constructor(){this._config=u(es),this._anItemWasAlreadyExpandedDuringInitialisation=!1,this.animation=this._config.animation,this.closeOthers=this._config.closeOthers,this.destroyOnHide=this._config.destroyOnHide,this.show=new T,this.shown=new T,this.hide=new T,this.hidden=new T}toggle(i){var n;(n=this._getItem(i))==null||n.toggle()}expand(i){var n;(n=this._getItem(i))==null||n.expand()}expandAll(){this._items&&(this.closeOthers?this._items.find(i=>!i.collapsed)||this._items.first.expand():this._items.forEach(i=>i.expand()))}collapse(i){var n;(n=this._getItem(i))==null||n.collapse()}collapseAll(){var i;(i=this._items)==null||i.forEach(n=>n.collapse())}isExpanded(i){let n=this._getItem(i);return n?!n.collapsed:!1}_ensureCanExpand(i){var n;return this.closeOthers?this._items?((n=this._items.find(o=>!o.collapsed&&i!==o))==null||n.collapse(),!0):this._anItemWasAlreadyExpandedDuringInitialisation?!1:(this._anItemWasAlreadyExpandedDuringInitialisation=!0,!0):!0}_getItem(i){var n;return(n=this._items)==null?void 0:n.find(o=>o.id===i)}};e.\u0275fac=function(n){return new(n||e)},e.\u0275dir=$({type:e,selectors:[["","ngbAccordion",""]],contentQueries:function(n,o,a){if(n&1&&Ne(a,qe,4),n&2){let r;ce(r=de())&&(o._items=r)}},hostAttrs:[1,"accordion"],inputs:{animation:"animation",closeOthers:"closeOthers",destroyOnHide:"destroyOnHide"},outputs:{show:"show",shown:"shown",hide:"hide",hidden:"hidden"},exportAs:["ngbAccordion"]});let t=e;return t})();var Pn=(()=>{let e=class e{};e.\u0275fac=function(n){return new(n||e)},e.\u0275mod=C({type:e}),e.\u0275inj=I({});let t=e;return t})(),fs=(()=>{let e=class e{constructor(){this._ngbConfig=u(ft),this.dismissible=!0,this.type="warning"}get animation(){var i;return(i=this._animation)!=null?i:this._ngbConfig.animation}set animation(i){this._animation=i}};e.\u0275fac=function(n){return new(n||e)},e.\u0275prov=K({token:e,factory:e.\u0275fac,providedIn:"root"});let t=e;return t})(),_s=({classList:t})=>{t.remove("show")},tu=(()=>{let e=class e{constructor(){this._config=u(fs),this._elementRef=u(J),this._zone=u(re),this.animation=this._config.animation,this.dismissible=this._config.dismissible,this.type=this._config.type,this.closed=new T}close(){let i=se(this._zone,this._elementRef.nativeElement,_s,{animation:this.animation,runningTransition:"continue"});return i.subscribe(()=>this.closed.emit()),i}};e.\u0275fac=function(n){return new(n||e)},e.\u0275cmp=me({type:e,selectors:[["ngb-alert"]],hostAttrs:["role","alert"],hostVars:6,hostBindings:function(n,o){n&2&&(ge("alert show"+(o.type?" alert-"+o.type:"")),W("fade",o.animation)("alert-dismissible",o.dismissible))},inputs:{animation:"animation",dismissible:"dismissible",type:"type"},outputs:{closed:"closed"},exportAs:["ngbAlert"],ngContentSelectors:jt,decls:2,vars:1,consts:()=>{let i;return i=$localize`:@@ngb.alert.close:Close`,[["type","button","aria-label",i,1,"btn-close"],["type","button","aria-label",i,1,"btn-close",3,"click"]]},template:function(n,o){n&1&&(st(),rt(0),ot(1,Wo,1,0,"button",0)),n&2&&($e(),ni(o.dismissible?1:-1))},styles:[`ngb-alert{display:block}
2
- `],encapsulation:2,changeDetection:0});let t=e;return t})(),An=(()=>{let e=class e{};e.\u0275fac=function(n){return new(n||e)},e.\u0275mod=C({type:e}),e.\u0275inj=I({});let t=e;return t})();var Gn=(()=>{let e=class e{};e.\u0275fac=function(n){return new(n||e)},e.\u0275mod=C({type:e}),e.\u0275inj=I({});let t=e;return t})(),Hn=(()=>{let e=class e{};e.\u0275fac=function(n){return new(n||e)},e.\u0275mod=C({type:e}),e.\u0275inj=I({});let t=e;return t})();var Ht=(t,e)=>e?e.some(s=>s.contains(t)):!1,Rn=(t,e)=>!e||os(t,e)!=null,ms=(()=>{let t=()=>/iPad|iPhone|iPod/.test(navigator.userAgent)||/Macintosh/.test(navigator.userAgent)&&navigator.maxTouchPoints&&navigator.maxTouchPoints>2,e=()=>/Android/.test(navigator.userAgent);return typeof navigator<"u"?!!navigator.userAgent&&(t()||e()):!1})(),gs=t=>ms?()=>setTimeout(()=>t(),100):t;function Bi(t,e,s,i,n,o,a,r){s&&t.runOutsideAngular(gs(()=>{let l=p=>{let h=p.target;return p.button===2||Ht(h,a)?!1:s==="inside"?Ht(h,o)&&Rn(h,r):s==="outside"?!Ht(h,o):Rn(h,r)||!Ht(h,o)},d=L(e,"keydown").pipe(k(n),Re(p=>p.key==="Escape"),tt(p=>p.preventDefault())),c=L(e,"mousedown").pipe(Ce(l),k(n)),f=L(e,"mouseup").pipe(Dt(c),Re(([p,h])=>h),Yi(0),k(n));Jt([d.pipe(Ce(p=>0)),f.pipe(Ce(p=>1))]).subscribe(p=>t.run(()=>i(p)))}))}var Un=["a[href]","button:not([disabled])",'input:not([disabled]):not([type="hidden"])',"select:not([disabled])","textarea:not([disabled])","[contenteditable]",'[tabindex]:not([tabindex="-1"])'].join(", ");function Vn(t){let e=Array.from(t.querySelectorAll(Un)).filter(s=>s.tabIndex!==-1);return[e[0],e[e.length-1]]}var vs=(t,e,s,i=!1)=>{t.runOutsideAngular(()=>{let n=L(e,"focusin").pipe(k(s),Ce(o=>o.target));L(e,"keydown").pipe(k(s),Re(o=>o.key==="Tab"),Dt(n)).subscribe(([o,a])=>{let[r,l]=Vn(e);(a===r||a===e)&&o.shiftKey&&(l.focus(),o.preventDefault()),a===l&&!o.shiftKey&&(r.focus(),o.preventDefault())}),i&&L(e,"click").pipe(k(s),Dt(n),Ce(o=>o[1])).subscribe(o=>o.focus())})},ys=(()=>{let e=class e{constructor(){this._element=u(le).documentElement}isRTL(){return(this._element.getAttribute("dir")||"").toLowerCase()==="rtl"}};e.\u0275fac=function(n){return new(n||e)},e.\u0275prov=K({token:e,factory:e.\u0275fac,providedIn:"root"});let t=e;return t})(),bs=/\s+/,ws=/ +/gi,Os={top:["top"],bottom:["bottom"],start:["left","right"],left:["left"],end:["right","left"],right:["right"],"top-start":["top-start","top-end"],"top-left":["top-start"],"top-end":["top-end","top-start"],"top-right":["top-end"],"bottom-start":["bottom-start","bottom-end"],"bottom-left":["bottom-start"],"bottom-end":["bottom-end","bottom-start"],"bottom-right":["bottom-end"],"start-top":["left-start","right-start"],"left-top":["left-start"],"start-bottom":["left-end","right-end"],"left-bottom":["left-end"],"end-top":["right-start","left-start"],"right-top":["right-start"],"end-bottom":["right-end","left-end"],"right-bottom":["right-end"]};function Ds(t,e){let[s,i]=Os[t];return e&&i||s}var Es=/^left/,Ms=/^right/,Ts=/^start/,Is=/^end/;function Cs(t,e){let[s,i]=e.split("-"),n=s.replace(Es,"start").replace(Ms,"end"),o=[n];if(i){let a=i;(s==="left"||s==="right")&&(a=a.replace(Ts,"top").replace(Is,"bottom")),o.push(`${n}-${a}`)}return t&&(o=o.map(a=>`${t}-${a}`)),o.join(" ")}function Sn({placement:t,baseClass:e},s){let i=Array.isArray(t)?t:t.split(bs),n=["top","bottom","start","end","top-start","top-end","bottom-start","bottom-end","start-top","start-bottom","end-top","end-bottom"],o=i.findIndex(d=>d==="auto");o>=0&&n.forEach(function(d){i.find(c=>c.search("^"+d)!==-1)==null&&i.splice(o++,1,d)});let a=i.map(d=>Ds(d,s.isRTL()));return{placement:a.shift(),modifiers:[{name:"bootstrapClasses",enabled:!!e,phase:"write",fn({state:d}){let c=new RegExp(e+"(-[a-z]+)*","gi"),f=d.elements.popper,p=d.placement,h=f.className;h=h.replace(c,""),h+=` ${Cs(e,p)}`,h=h.trim().replace(ws," "),f.className=h}},bi,Di,_i,{enabled:!0,name:"flip",options:{fallbackPlacements:a}}]}}function Nn(t){return t}function Pi(){let t=u(ys),e=null;return{createPopper(s){if(!e){let n=(s.updatePopperOptions||Nn)(Sn(s,t));e=Si(s.hostElement,s.targetElement,n)}},update(){e&&e.update()},setOptions(s){if(e){let n=(s.updatePopperOptions||Nn)(Sn(s,t));e.setOptions(n)}},destroy(){e&&(e.destroy(),e=null)}}}function Ai(t){return e=>(e.modifiers.push(wi,{name:"offset",options:{offset:()=>t}}),e)}var iu=new Date(1882,10,12),nu=new Date(2174,10,25);var ou=1e3*60*60*24;var Gi=1080,Rs=24*Gi,Ss=12*Gi+793,su=29*Rs+Ss,ru=11*Gi+204;var $n=(()=>{let e=class e{};e.\u0275fac=function(n){return new(n||e)},e.\u0275mod=C({type:e}),e.\u0275inj=I({});let t=e;return t})(),Ns=(()=>{let e=class e{constructor(){this.autoClose=!0,this.placement=["bottom-start","bottom-end","top-start","top-end"],this.popperOptions=i=>i,this.container=null}};e.\u0275fac=function(n){return new(n||e)},e.\u0275prov=K({token:e,factory:e.\u0275fac,providedIn:"root"});let t=e;return t})(),jn=(()=>{let e=class e{constructor(){this._disabled=!1,this.nativeElement=u(J).nativeElement,this.tabindex=0}set disabled(i){this._disabled=i===""||i===!0}get disabled(){return this._disabled}};e.\u0275fac=function(n){return new(n||e)},e.\u0275dir=$({type:e,selectors:[["","ngbDropdownItem",""]],hostAttrs:[1,"dropdown-item"],hostVars:3,hostBindings:function(n,o){n&2&&(ae("tabIndex",o.disabled?-1:o.tabindex),W("disabled",o.disabled))},inputs:{tabindex:"tabindex",disabled:"disabled"}});let t=e;return t})(),au=(()=>{let e=class e{constructor(){this.item=u(jn)}};e.\u0275fac=function(n){return new(n||e)},e.\u0275dir=$({type:e,selectors:[["button","ngbDropdownItem",""]],hostVars:1,hostBindings:function(n,o){n&2&&ae("disabled",o.item.disabled)}});let t=e;return t})(),xs=(()=>{let e=class e{constructor(){this.dropdown=u(Ln),this.nativeElement=u(J).nativeElement}};e.\u0275fac=function(n){return new(n||e)},e.\u0275dir=$({type:e,selectors:[["","ngbDropdownMenu",""]],contentQueries:function(n,o,a){if(n&1&&Ne(a,jn,4),n&2){let r;ce(r=de())&&(o.menuItems=r)}},hostAttrs:[1,"dropdown-menu"],hostVars:2,hostBindings:function(n,o){n&1&&ve("keydown.ArrowUp",function(r){return o.dropdown.onKeyDown(r)})("keydown.ArrowDown",function(r){return o.dropdown.onKeyDown(r)})("keydown.Home",function(r){return o.dropdown.onKeyDown(r)})("keydown.End",function(r){return o.dropdown.onKeyDown(r)})("keydown.Enter",function(r){return o.dropdown.onKeyDown(r)})("keydown.Space",function(r){return o.dropdown.onKeyDown(r)})("keydown.Tab",function(r){return o.dropdown.onKeyDown(r)})("keydown.Shift.Tab",function(r){return o.dropdown.onKeyDown(r)}),n&2&&W("show",o.dropdown.isOpen())}});let t=e;return t})(),Ni=(()=>{let e=class e{constructor(){this.dropdown=u(Ln),this.nativeElement=u(J).nativeElement}};e.\u0275fac=function(n){return new(n||e)},e.\u0275dir=$({type:e,selectors:[["","ngbDropdownAnchor",""]],hostAttrs:[1,"dropdown-toggle"],hostVars:3,hostBindings:function(n,o){n&2&&(Se("aria-expanded",o.dropdown.isOpen()),W("show",o.dropdown.isOpen()))}});let t=e;return t})(),lu=(()=>{let e=class e extends Ni{};e.\u0275fac=(()=>{let i;return function(o){return(i||(i=nn(e)))(o||e)}})(),e.\u0275dir=$({type:e,selectors:[["","ngbDropdownToggle",""]],hostAttrs:[1,"dropdown-toggle"],hostVars:3,hostBindings:function(n,o){n&1&&ve("click",function(){return o.dropdown.toggle()})("keydown.ArrowUp",function(r){return o.dropdown.onKeyDown(r)})("keydown.ArrowDown",function(r){return o.dropdown.onKeyDown(r)})("keydown.Home",function(r){return o.dropdown.onKeyDown(r)})("keydown.End",function(r){return o.dropdown.onKeyDown(r)})("keydown.Tab",function(r){return o.dropdown.onKeyDown(r)})("keydown.Shift.Tab",function(r){return o.dropdown.onKeyDown(r)}),n&2&&(Se("aria-expanded",o.dropdown.isOpen()),W("show",o.dropdown.isOpen()))},features:[hi([{provide:Ni,useExisting:Yt(()=>e)}]),on]});let t=e;return t})(),Ln=(()=>{let e=class e{constructor(){this._changeDetector=u(We),this._config=u(Ns),this._document=u(le),this._injector=u(ie),this._ngZone=u(re),this._nativeElement=u(J).nativeElement,this._destroyCloseHandlers$=new X,this._bodyContainer=null,this._positioning=Pi(),this.autoClose=this._config.autoClose,this._open=!1,this.placement=this._config.placement,this.popperOptions=this._config.popperOptions,this.container=this._config.container,this.openChange=new T}ngOnInit(){this.display||(this.display=this._nativeElement.closest(".navbar")?"static":"dynamic")}ngAfterContentInit(){nt({write:()=>{this._applyPlacementClasses(),this._open&&this._setCloseHandlers()}},{injector:this._injector})}ngOnChanges(i){if(i.container&&this._open&&this._applyContainer(this.container),i.placement&&!i.placement.firstChange&&(this._positioning.setOptions({hostElement:this._anchor.nativeElement,targetElement:this._bodyContainer||this._menu.nativeElement,placement:this.placement}),this._applyPlacementClasses()),i.dropdownClass){let{currentValue:n,previousValue:o}=i.dropdownClass;this._applyCustomDropdownClass(n,o)}i.autoClose&&this._open&&(this.autoClose=i.autoClose.currentValue,this._setCloseHandlers())}isOpen(){return this._open}open(){this._open||(this._open=!0,this._applyContainer(this.container),this.openChange.emit(!0),this._setCloseHandlers(),this._anchor&&(this._anchor.nativeElement.focus(),this.display==="dynamic"&&this._ngZone.runOutsideAngular(()=>{this._positioning.createPopper({hostElement:this._anchor.nativeElement,targetElement:this._bodyContainer||this._menu.nativeElement,placement:this.placement,updatePopperOptions:i=>this.popperOptions(Ai([0,2])(i))}),this._applyPlacementClasses(),this._afterRenderRef=It({write:()=>{this._positionMenu()}},{injector:this._injector})})))}_setCloseHandlers(){this._destroyCloseHandlers$.next(),Bi(this._ngZone,this._document,this.autoClose,i=>{this.close(),i===0&&this._anchor.nativeElement.focus()},this._destroyCloseHandlers$,this._menu?[this._menu.nativeElement]:[],this._anchor?[this._anchor.nativeElement]:[],".dropdown-item,.dropdown-divider")}close(){var i;this._open&&(this._open=!1,this._resetContainer(),this._positioning.destroy(),(i=this._afterRenderRef)==null||i.destroy(),this._destroyCloseHandlers$.next(),this.openChange.emit(!1),this._changeDetector.markForCheck())}toggle(){this.isOpen()?this.close():this.open()}ngOnDestroy(){this.close()}onKeyDown(i){let{key:n}=i,o=this._getMenuElements(),a=-1,r=null,l=this._isEventFromToggle(i);if(!l&&o.length&&o.forEach((d,c)=>{d.contains(i.target)&&(r=d),d===kn(this._document)&&(a=c)}),n===" "||n==="Enter"){r&&(this.autoClose===!0||this.autoClose==="inside")&&L(r,"click").pipe(Ve(1)).subscribe(()=>this.close());return}if(n==="Tab"){if(i.target&&this.isOpen()&&this.autoClose)if(this._anchor.nativeElement===i.target){this.container==="body"&&!i.shiftKey?(this._menu.nativeElement.setAttribute("tabindex","0"),this._menu.nativeElement.focus(),this._menu.nativeElement.removeAttribute("tabindex")):i.shiftKey&&this.close();return}else if(this.container==="body"){let d=this._menu.nativeElement.querySelectorAll(Un);i.shiftKey&&i.target===d[0]?(this._anchor.nativeElement.focus(),i.preventDefault()):!i.shiftKey&&i.target===d[d.length-1]&&(this._anchor.nativeElement.focus(),this.close())}else L(i.target,"focusout").pipe(Ve(1)).subscribe(({relatedTarget:d})=>{this._nativeElement.contains(d)||this.close()});return}if(l||r){if(this.open(),o.length){switch(n){case"ArrowDown":a=Math.min(a+1,o.length-1);break;case"ArrowUp":if(this._isDropup()&&a===-1){a=o.length-1;break}a=Math.max(a-1,0);break;case"Home":a=0;break;case"End":a=o.length-1;break}o[a].focus()}i.preventDefault()}}_isDropup(){return this._nativeElement.classList.contains("dropup")}_isEventFromToggle(i){return this._anchor.nativeElement.contains(i.target)}_getMenuElements(){return this._menu?this._menu.menuItems.filter(({disabled:i})=>!i).map(({nativeElement:i})=>i):[]}_positionMenu(){let i=this._menu;this.isOpen()&&i&&(this.display==="dynamic"?(this._positioning.update(),this._applyPlacementClasses()):this._applyPlacementClasses(this._getFirstPlacement(this.placement)))}_getFirstPlacement(i){return Array.isArray(i)?i[0]:i.split(" ")[0]}_resetContainer(){this._menu&&this._nativeElement.appendChild(this._menu.nativeElement),this._bodyContainer&&(this._document.body.removeChild(this._bodyContainer),this._bodyContainer=null)}_applyContainer(i=null){if(this._resetContainer(),i==="body"){let n=this._menu.nativeElement,o=this._bodyContainer=this._bodyContainer||this._document.createElement("div");o.style.position="absolute",n.style.position="static",o.style.zIndex="1055",o.appendChild(n),this._document.body.appendChild(o)}this._applyCustomDropdownClass(this.dropdownClass)}_applyCustomDropdownClass(i,n){let o=this.container==="body"?this._bodyContainer:this._nativeElement;o&&(n&&o.classList.remove(n),i&&o.classList.add(i))}_applyPlacementClasses(i){if(this._menu){i||(i=this._getFirstPlacement(this.placement)),this._nativeElement.classList.remove("dropup","dropdown"),this.display==="static"?this._menu.nativeElement.setAttribute("data-bs-popper","static"):this._menu.nativeElement.removeAttribute("data-bs-popper");let n=i.search("^top")!==-1?"dropup":"dropdown";this._nativeElement.classList.add(n),this._bodyContainer&&(this._bodyContainer.classList.remove("dropup","dropdown"),this._bodyContainer.classList.add(n))}}};e.\u0275fac=function(n){return new(n||e)},e.\u0275dir=$({type:e,selectors:[["","ngbDropdown",""]],contentQueries:function(n,o,a){if(n&1&&(Ne(a,xs,5),Ne(a,Ni,5)),n&2){let r;ce(r=de())&&(o._menu=r.first),ce(r=de())&&(o._anchor=r.first)}},hostVars:2,hostBindings:function(n,o){n&2&&W("show",o.isOpen())},inputs:{autoClose:"autoClose",dropdownClass:"dropdownClass",_open:[0,"open","_open"],placement:"placement",popperOptions:"popperOptions",container:"container",display:"display"},outputs:{openChange:"openChange"},exportAs:["ngbDropdown"],features:[it]});let t=e;return t})();var Wn=(()=>{let e=class e{};e.\u0275fac=function(n){return new(n||e)},e.\u0275mod=C({type:e}),e.\u0275inj=I({});let t=e;return t})(),Fs=(()=>{let e=class e{constructor(){this._ngbConfig=u(ft),this.backdrop=!0,this.fullscreen=!1,this.keyboard=!0,this.role="dialog"}get animation(){var i;return(i=this._animation)!=null?i:this._ngbConfig.animation}set animation(i){this._animation=i}};e.\u0275fac=function(n){return new(n||e)},e.\u0275prov=K({token:e,factory:e.\u0275fac,providedIn:"root"});let t=e;return t})(),fe=class{constructor(e,s,i){this.nodes=e,this.viewRef=s,this.componentRef=i}},Vt=class{constructor(e){this._componentType=e,this._windowRef=null,this._contentRef=null,this._document=u(le),this._applicationRef=u(ii),this._injector=u(ie),this._viewContainerRef=u(ei),this._ngZone=u(re)}open(e,s,i=!1){this._windowRef||(this._contentRef=this._getContentRef(e,s),this._windowRef=this._viewContainerRef.createComponent(this._componentType,{injector:this._injector,projectableNodes:this._contentRef.nodes}));let{nativeElement:n}=this._windowRef.location,o=new X;nt({mixedReadWrite:()=>{o.next(),o.complete()}},{injector:this._injector});let a=o.pipe(Ji(()=>se(this._ngZone,n,({classList:r})=>r.add("show"),{animation:i,runningTransition:"continue"})));return{windowRef:this._windowRef,transition$:a}}close(e=!1){return this._windowRef?se(this._ngZone,this._windowRef.location.nativeElement,({classList:s})=>s.remove("show"),{animation:e,runningTransition:"stop"}).pipe(tt(()=>{var s,i,n;(s=this._windowRef)==null||s.destroy(),(n=(i=this._contentRef)==null?void 0:i.viewRef)==null||n.destroy(),this._windowRef=null,this._contentRef=null})):et(void 0)}_getContentRef(e,s){if(e)if(e instanceof Ct){let i=e.createEmbeddedView(s);return this._applicationRef.attachView(i),new fe([i.rootNodes],i)}else return new fe([[this._document.createTextNode(`${e}`)]]);else return new fe([])}},ks=(()=>{let e=class e{constructor(){this._document=u(le)}hide(){let i=Math.abs(window.innerWidth-this._document.documentElement.clientWidth),n=this._document.body,o=n.style,{overflow:a,paddingRight:r}=o;if(i>0){let l=parseFloat(window.getComputedStyle(n).paddingRight);o.paddingRight=`${l+i}px`}return o.overflow="hidden",()=>{i>0&&(o.paddingRight=r),o.overflow=a}}};e.\u0275fac=function(n){return new(n||e)},e.\u0275prov=K({token:e,factory:e.\u0275fac,providedIn:"root"});let t=e;return t})(),Bs=(()=>{let e=class e{constructor(){this._nativeElement=u(J).nativeElement,this._zone=u(re),this._injector=u(ie)}ngOnInit(){nt({mixedReadWrite:()=>se(this._zone,this._nativeElement,(i,n)=>{n&&ki(i),i.classList.add("show")},{animation:this.animation,runningTransition:"continue"})},{injector:this._injector})}hide(){return se(this._zone,this._nativeElement,({classList:i})=>i.remove("show"),{animation:this.animation,runningTransition:"stop"})}};e.\u0275fac=function(n){return new(n||e)},e.\u0275cmp=me({type:e,selectors:[["ngb-modal-backdrop"]],hostAttrs:[2,"z-index","1055"],hostVars:6,hostBindings:function(n,o){n&2&&(ge("modal-backdrop"+(o.backdropClass?" "+o.backdropClass:"")),W("show",!o.animation)("fade",o.animation))},inputs:{animation:"animation",backdropClass:"backdropClass"},decls:0,vars:0,template:function(n,o){},encapsulation:2});let t=e;return t})(),$t=class{update(e){}close(e){}dismiss(e){}},Ps=["animation","ariaLabelledBy","ariaDescribedBy","backdrop","centered","fullscreen","keyboard","role","scrollable","size","windowClass","modalDialogClass"],As=["animation","backdropClass"],xi=class{_applyWindowOptions(e,s){Ps.forEach(i=>{Ut(s[i])&&(e[i]=s[i])})}_applyBackdropOptions(e,s){As.forEach(i=>{Ut(s[i])&&(e[i]=s[i])})}update(e){this._applyWindowOptions(this._windowCmptRef.instance,e),this._backdropCmptRef&&this._backdropCmptRef.instance&&this._applyBackdropOptions(this._backdropCmptRef.instance,e)}get componentInstance(){if(this._contentRef&&this._contentRef.componentRef)return this._contentRef.componentRef.instance}get closed(){return this._closed.asObservable().pipe(k(this._hidden))}get dismissed(){return this._dismissed.asObservable().pipe(k(this._hidden))}get hidden(){return this._hidden.asObservable()}get shown(){return this._windowCmptRef.instance.shown.asObservable()}constructor(e,s,i,n){this._windowCmptRef=e,this._contentRef=s,this._backdropCmptRef=i,this._beforeDismiss=n,this._closed=new X,this._dismissed=new X,this._hidden=new X,e.instance.dismissEvent.subscribe(o=>{this.dismiss(o)}),this.result=new Promise((o,a)=>{this._resolve=o,this._reject=a}),this.result.then(null,()=>{})}close(e){this._windowCmptRef&&(this._closed.next(e),this._resolve(e),this._removeModalElements())}_dismiss(e){this._dismissed.next(e),this._reject(e),this._removeModalElements()}dismiss(e){if(this._windowCmptRef)if(!this._beforeDismiss)this._dismiss(e);else{let s=this._beforeDismiss();is(s)?s.then(i=>{i!==!1&&this._dismiss(e)},()=>{}):s!==!1&&this._dismiss(e)}}_removeModalElements(){let e=this._windowCmptRef.instance.hide(),s=this._backdropCmptRef?this._backdropCmptRef.instance.hide():et(void 0);e.subscribe(()=>{var n,o;let{nativeElement:i}=this._windowCmptRef.location;i.parentNode.removeChild(i),this._windowCmptRef.destroy(),(o=(n=this._contentRef)==null?void 0:n.viewRef)==null||o.destroy(),this._windowCmptRef=null,this._contentRef=null}),s.subscribe(()=>{if(this._backdropCmptRef){let{nativeElement:i}=this._backdropCmptRef.location;i.parentNode.removeChild(i),this._backdropCmptRef.destroy(),this._backdropCmptRef=null}}),Ot(e,s).subscribe(()=>{this._hidden.next(),this._hidden.complete()})}},Fi=function(t){return t[t.BACKDROP_CLICK=0]="BACKDROP_CLICK",t[t.ESC=1]="ESC",t}(Fi||{}),Gs=(()=>{let e=class e{constructor(){this._document=u(le),this._elRef=u(J),this._zone=u(re),this._injector=u(ie),this._closed$=new X,this._elWithFocus=null,this.backdrop=!0,this.keyboard=!0,this.role="dialog",this.dismissEvent=new T,this.shown=new X,this.hidden=new X}get fullscreenClass(){return this.fullscreen===!0?" modal-fullscreen":Lt(this.fullscreen)?` modal-fullscreen-${this.fullscreen}-down`:""}dismiss(i){this.dismissEvent.emit(i)}ngOnInit(){this._elWithFocus=this._document.activeElement,nt({mixedReadWrite:()=>this._show()},{injector:this._injector})}ngOnDestroy(){this._disableEventHandling()}hide(){let{nativeElement:i}=this._elRef,n={animation:this.animation,runningTransition:"stop"},o=se(this._zone,i,()=>i.classList.remove("show"),n),a=se(this._zone,this._dialogEl.nativeElement,()=>{},n),r=Ot(o,a);return r.subscribe(()=>{this.hidden.next(),this.hidden.complete()}),this._disableEventHandling(),this._restoreFocus(),r}_show(){let i={animation:this.animation,runningTransition:"continue"},n=se(this._zone,this._elRef.nativeElement,(a,r)=>{r&&ki(a),a.classList.add("show")},i),o=se(this._zone,this._dialogEl.nativeElement,()=>{},i);Ot(n,o).subscribe(()=>{this.shown.next(),this.shown.complete()}),this._enableEventHandling(),this._setFocus()}_enableEventHandling(){let{nativeElement:i}=this._elRef;this._zone.runOutsideAngular(()=>{L(i,"keydown").pipe(k(this._closed$),Re(o=>o.key==="Escape")).subscribe(o=>{this.keyboard?requestAnimationFrame(()=>{o.defaultPrevented||this._zone.run(()=>this.dismiss(Fi.ESC))}):this.backdrop==="static"&&this._bumpBackdrop()});let n=!1;L(this._dialogEl.nativeElement,"mousedown").pipe(k(this._closed$),tt(()=>n=!1),qt(()=>L(i,"mouseup").pipe(k(this._closed$),Ve(1))),Re(({target:o})=>i===o)).subscribe(()=>{n=!0}),L(i,"click").pipe(k(this._closed$)).subscribe(({target:o})=>{i===o&&(this.backdrop==="static"?this._bumpBackdrop():this.backdrop===!0&&!n&&this._zone.run(()=>this.dismiss(Fi.BACKDROP_CLICK))),n=!1})})}_disableEventHandling(){this._closed$.next()}_setFocus(){let{nativeElement:i}=this._elRef;if(!i.contains(document.activeElement)){let n=i.querySelector("[ngbAutofocus]"),o=Vn(i)[0];(n||o||i).focus()}}_restoreFocus(){let i=this._document.body,n=this._elWithFocus,o;n&&n.focus&&i.contains(n)?o=n:o=i,this._zone.runOutsideAngular(()=>{setTimeout(()=>o.focus()),this._elWithFocus=null})}_bumpBackdrop(){this.backdrop==="static"&&se(this._zone,this._elRef.nativeElement,({classList:i})=>(i.add("modal-static"),()=>i.remove("modal-static")),{animation:this.animation,runningTransition:"continue"})}};e.\u0275fac=function(n){return new(n||e)},e.\u0275cmp=me({type:e,selectors:[["ngb-modal-window"]],viewQuery:function(n,o){if(n&1&&ci(zo,7),n&2){let a;ce(a=de())&&(o._dialogEl=a.first)}},hostAttrs:["tabindex","-1"],hostVars:8,hostBindings:function(n,o){n&2&&(Se("aria-modal",!0)("aria-labelledby",o.ariaLabelledBy)("aria-describedby",o.ariaDescribedBy)("role",o.role),ge("modal d-block"+(o.windowClass?" "+o.windowClass:"")),W("fade",o.animation))},inputs:{animation:"animation",ariaLabelledBy:"ariaLabelledBy",ariaDescribedBy:"ariaDescribedBy",backdrop:"backdrop",centered:"centered",fullscreen:"fullscreen",keyboard:"keyboard",role:"role",scrollable:"scrollable",size:"size",windowClass:"windowClass",modalDialogClass:"modalDialogClass"},outputs:{dismissEvent:"dismiss"},ngContentSelectors:jt,decls:4,vars:2,consts:[["dialog",""],["role","document"],[1,"modal-content"]],template:function(n,o){n&1&&(st(),je(0,"div",1,0)(2,"div",2),rt(3),Le()()),n&2&&ge("modal-dialog"+(o.size?" modal-"+o.size:"")+(o.centered?" modal-dialog-centered":"")+o.fullscreenClass+(o.scrollable?" modal-dialog-scrollable":"")+(o.modalDialogClass?" "+o.modalDialogClass:""))},styles:[`ngb-modal-window .component-host-scrollable{display:flex;flex-direction:column;overflow:hidden}
3
- `],encapsulation:2});let t=e;return t})(),Hs=(()=>{let e=class e{constructor(){this._applicationRef=u(ii),this._injector=u(ie),this._environmentInjector=u(Zt),this._document=u(le),this._scrollBar=u(ks),this._activeWindowCmptHasChanged=new X,this._ariaHiddenValues=new Map,this._scrollBarRestoreFn=null,this._modalRefs=[],this._windowCmpts=[],this._activeInstances=new T;let i=u(re);this._activeWindowCmptHasChanged.subscribe(()=>{if(this._windowCmpts.length){let n=this._windowCmpts[this._windowCmpts.length-1];vs(i,n.location.nativeElement,this._activeWindowCmptHasChanged),this._revertAriaHidden(),this._setAriaHidden(n.location.nativeElement)}})}_restoreScrollBar(){let i=this._scrollBarRestoreFn;i&&(this._scrollBarRestoreFn=null,i())}_hideScrollBar(){this._scrollBarRestoreFn||(this._scrollBarRestoreFn=this._scrollBar.hide())}open(i,n,o){let a=o.container instanceof HTMLElement?o.container:Ut(o.container)?this._document.querySelector(o.container):this._document.body;if(!a)throw new Error(`The specified modal container "${o.container||"body"}" was not found in the DOM.`);this._hideScrollBar();let r=new $t;i=o.injector||i;let l=i.get(Zt,null)||this._environmentInjector,d=this._getContentRef(i,l,n,r,o),c=o.backdrop!==!1?this._attachBackdrop(a):void 0,f=this._attachWindowComponent(a,d.nodes),p=new xi(f,d,c,o.beforeDismiss);return this._registerModalRef(p),this._registerWindowCmpt(f),p.hidden.pipe(Ve(1)).subscribe(()=>Promise.resolve(!0).then(()=>{this._modalRefs.length||(this._document.body.classList.remove("modal-open"),this._restoreScrollBar(),this._revertAriaHidden())})),r.close=h=>{p.close(h)},r.dismiss=h=>{p.dismiss(h)},r.update=h=>{p.update(h)},p.update(o),this._modalRefs.length===1&&this._document.body.classList.add("modal-open"),c&&c.instance&&c.changeDetectorRef.detectChanges(),f.changeDetectorRef.detectChanges(),p}get activeInstances(){return this._activeInstances}dismissAll(i){this._modalRefs.forEach(n=>n.dismiss(i))}hasOpenModals(){return this._modalRefs.length>0}_attachBackdrop(i){let n=St(Bs,{environmentInjector:this._applicationRef.injector,elementInjector:this._injector});return this._applicationRef.attachView(n.hostView),i.appendChild(n.location.nativeElement),n}_attachWindowComponent(i,n){let o=St(Gs,{environmentInjector:this._applicationRef.injector,elementInjector:this._injector,projectableNodes:n});return this._applicationRef.attachView(o.hostView),i.appendChild(o.location.nativeElement),o}_getContentRef(i,n,o,a,r){return o?o instanceof Ct?this._createFromTemplateRef(o,a):Lt(o)?this._createFromString(o):this._createFromComponent(i,n,o,a,r):new fe([])}_createFromTemplateRef(i,n){let o={$implicit:n,close(r){n.close(r)},dismiss(r){n.dismiss(r)}},a=i.createEmbeddedView(o);return this._applicationRef.attachView(a),new fe([a.rootNodes],a)}_createFromString(i){let n=this._document.createTextNode(`${i}`);return new fe([[n]])}_createFromComponent(i,n,o,a,r){let l=ie.create({providers:[{provide:$t,useValue:a}],parent:i}),d=St(o,{environmentInjector:n,elementInjector:l}),c=d.location.nativeElement;return r.scrollable&&c.classList.add("component-host-scrollable"),this._applicationRef.attachView(d.hostView),new fe([[c]],d.hostView,d)}_setAriaHidden(i){let n=i.parentElement;n&&i!==this._document.body&&(Array.from(n.children).forEach(o=>{o!==i&&o.nodeName!=="SCRIPT"&&(this._ariaHiddenValues.set(o,o.getAttribute("aria-hidden")),o.setAttribute("aria-hidden","true"))}),this._setAriaHidden(n))}_revertAriaHidden(){this._ariaHiddenValues.forEach((i,n)=>{i?n.setAttribute("aria-hidden",i):n.removeAttribute("aria-hidden")}),this._ariaHiddenValues.clear()}_registerModalRef(i){let n=()=>{let o=this._modalRefs.indexOf(i);o>-1&&(this._modalRefs.splice(o,1),this._activeInstances.emit(this._modalRefs))};this._modalRefs.push(i),this._activeInstances.emit(this._modalRefs),i.result.then(n,n)}_registerWindowCmpt(i){this._windowCmpts.push(i),this._activeWindowCmptHasChanged.next(),i.onDestroy(()=>{let n=this._windowCmpts.indexOf(i);n>-1&&(this._windowCmpts.splice(n,1),this._activeWindowCmptHasChanged.next())})}};e.\u0275fac=function(n){return new(n||e)},e.\u0275prov=K({token:e,factory:e.\u0275fac,providedIn:"root"});let t=e;return t})(),Us=(()=>{let e=class e{constructor(){this._injector=u(ie),this._modalStack=u(Hs),this._config=u(Fs)}open(i,n={}){let o=bt(Qt(bt({},this._config),{animation:this._config.animation}),n);return this._modalStack.open(this._injector,i,o)}get activeInstances(){return this._modalStack.activeInstances}dismissAll(i){this._modalStack.dismissAll(i)}hasOpenModals(){return this._modalStack.hasOpenModals()}};e.\u0275fac=function(n){return new(n||e)},e.\u0275prov=K({token:e,factory:e.\u0275fac,providedIn:"root"});let t=e;return t})(),zn=(()=>{let e=class e{};e.\u0275fac=function(n){return new(n||e)},e.\u0275mod=C({type:e}),e.\u0275inj=I({providers:[Us]});let t=e;return t})();var Xn=(()=>{let e=class e{};e.\u0275fac=function(n){return new(n||e)},e.\u0275mod=C({type:e}),e.\u0275inj=I({});let t=e;return t})();var Kn=(()=>{let e=class e{};e.\u0275fac=function(n){return new(n||e)},e.\u0275mod=C({type:e}),e.\u0275inj=I({});let t=e;return t})(),Vs={hover:["mouseenter","mouseleave"],focus:["focusin","focusout"]};function $s(t){let e=(t||"").trim();if(e.length===0)return[];let s=e.split(/\s+/).map(n=>n.split(":")).map(n=>Vs[n[0]]||n),i=s.filter(n=>n.includes("manual"));if(i.length>1)throw"Triggers parse error: only one manual trigger is allowed";if(i.length===1&&s.length>1)throw"Triggers parse error: manual trigger can't be mixed with other triggers";return i.length?[]:s}function js(t,e,s,i,n,o=0,a=0){let r=$s(e);if(r.length===0)return()=>{};let l=new Set,d=[],c;function f(h,m){t.addEventListener(h,m),d.push(()=>t.removeEventListener(h,m))}function p(h,m){clearTimeout(c),m>0?c=setTimeout(h,m):h()}for(let[h,m]of r)m?(f(h,()=>{l.add(h),p(()=>l.size>0&&i(),o)}),f(m,()=>{l.delete(h),p(()=>l.size===0&&n(),a)})):f(h,()=>s()?p(n,a):p(i,o));return()=>d.forEach(h=>h())}var Qn=(()=>{let e=class e{};e.\u0275fac=function(n){return new(n||e)},e.\u0275mod=C({type:e}),e.\u0275inj=I({});let t=e;return t})();var Jn=(()=>{let e=class e{};e.\u0275fac=function(n){return new(n||e)},e.\u0275mod=C({type:e}),e.\u0275inj=I({});let t=e;return t})();var qn=(()=>{let e=class e{};e.\u0275fac=function(n){return new(n||e)},e.\u0275mod=C({type:e}),e.\u0275inj=I({});let t=e;return t})();var Yn=(()=>{let e=class e{};e.\u0275fac=function(n){return new(n||e)},e.\u0275mod=C({type:e}),e.\u0275inj=I({});let t=e;return t})();var Zn=(()=>{let e=class e{};e.\u0275fac=function(n){return new(n||e)},e.\u0275mod=C({type:e}),e.\u0275inj=I({});let t=e;return t})();var eo=(()=>{let e=class e{};e.\u0275fac=function(n){return new(n||e)},e.\u0275mod=C({type:e}),e.\u0275inj=I({});let t=e;return t})(),Ls=(()=>{let e=class e{constructor(){this._ngbConfig=u(ft),this.autoClose=!0,this.placement="auto",this.popperOptions=i=>i,this.triggers="hover focus",this.disableTooltip=!1,this.openDelay=0,this.closeDelay=0}get animation(){var i;return(i=this._animation)!=null?i:this._ngbConfig.animation}set animation(i){this._animation=i}};e.\u0275fac=function(n){return new(n||e)},e.\u0275prov=K({token:e,factory:e.\u0275fac,providedIn:"root"});let t=e;return t})(),Ws=0,zs=(()=>{let e=class e{};e.\u0275fac=function(n){return new(n||e)},e.\u0275cmp=me({type:e,selectors:[["ngb-tooltip-window"]],hostAttrs:["role","tooltip"],hostVars:5,hostBindings:function(n,o){n&2&&(ae("id",o.id),ge("tooltip"+(o.tooltipClass?" "+o.tooltipClass:"")),W("fade",o.animation))},inputs:{animation:"animation",id:"id",tooltipClass:"tooltipClass"},ngContentSelectors:jt,decls:3,vars:0,consts:[["data-popper-arrow","",1,"tooltip-arrow"],[1,"tooltip-inner"]],template:function(n,o){n&1&&(st(),ai(0,"div",0),je(1,"div",1),rt(2),Le())},styles:[`ngb-tooltip-window{pointer-events:none;position:absolute}ngb-tooltip-window .tooltip-inner{pointer-events:auto}ngb-tooltip-window.bs-tooltip-top,ngb-tooltip-window.bs-tooltip-bottom{padding-left:0;padding-right:0}ngb-tooltip-window.bs-tooltip-start,ngb-tooltip-window.bs-tooltip-end{padding-top:0;padding-bottom:0}
4
- `],encapsulation:2,changeDetection:0});let t=e;return t})(),cu=(()=>{let e=class e{constructor(){this._config=u(Ls),this.animation=this._config.animation,this.autoClose=this._config.autoClose,this.placement=this._config.placement,this.popperOptions=this._config.popperOptions,this.triggers=this._config.triggers,this.container=this._config.container,this.disableTooltip=this._config.disableTooltip,this.tooltipClass=this._config.tooltipClass,this.openDelay=this._config.openDelay,this.closeDelay=this._config.closeDelay,this.shown=new T,this.hidden=new T,this._nativeElement=u(J).nativeElement,this._ngZone=u(re),this._document=u(le),this._changeDetector=u(We),this._injector=u(ie),this._ngbTooltipWindowId=`ngb-tooltip-${Ws++}`,this._popupService=new Vt(zs),this._windowRef=null,this._positioning=Pi()}set ngbTooltip(i){this._ngbTooltip=i,!i&&this._windowRef&&this.close()}get ngbTooltip(){return this._ngbTooltip}open(i){if(!this._windowRef&&this._ngbTooltip&&!this.disableTooltip){let{windowRef:n,transition$:o}=this._popupService.open(this._ngbTooltip,i!=null?i:this.tooltipContext,this.animation);this._windowRef=n,this._windowRef.setInput("animation",this.animation),this._windowRef.setInput("tooltipClass",this.tooltipClass),this._windowRef.setInput("id",this._ngbTooltipWindowId),this._getPositionTargetElement().setAttribute("aria-describedby",this._ngbTooltipWindowId),this.container==="body"&&this._document.body.appendChild(this._windowRef.location.nativeElement),this._windowRef.changeDetectorRef.detectChanges(),this._windowRef.changeDetectorRef.markForCheck(),this._ngZone.runOutsideAngular(()=>{this._positioning.createPopper({hostElement:this._getPositionTargetElement(),targetElement:this._windowRef.location.nativeElement,placement:this.placement,baseClass:"bs-tooltip",updatePopperOptions:a=>this.popperOptions(Ai([0,6])(a))}),Promise.resolve().then(()=>{this._positioning.update()}),this._afterRenderRef=It({mixedReadWrite:()=>{this._positioning.update()}},{injector:this._injector})}),Bi(this._ngZone,this._document,this.autoClose,()=>this.close(),this.hidden,[this._windowRef.location.nativeElement],[this._nativeElement]),o.subscribe(()=>this.shown.emit())}}close(i=this.animation){this._windowRef!=null&&(this._getPositionTargetElement().removeAttribute("aria-describedby"),this._popupService.close(i).subscribe(()=>{var n;this._windowRef=null,this._positioning.destroy(),(n=this._afterRenderRef)==null||n.destroy(),this.hidden.emit(),this._changeDetector.markForCheck()}))}toggle(){this._windowRef?this.close():this.open()}isOpen(){return this._windowRef!=null}ngOnInit(){this._unregisterListenersFn=js(this._nativeElement,this.triggers,this.isOpen.bind(this),this.open.bind(this),this.close.bind(this),+this.openDelay,+this.closeDelay)}ngOnChanges({tooltipClass:i}){i&&this.isOpen()&&this._windowRef.setInput("tooltipClass",i.currentValue)}ngOnDestroy(){var i;this.close(!1),(i=this._unregisterListenersFn)==null||i.call(this)}_getPositionTargetElement(){return(Lt(this.positionTarget)?this._document.querySelector(this.positionTarget):this.positionTarget)||this._nativeElement}};e.\u0275fac=function(n){return new(n||e)},e.\u0275dir=$({type:e,selectors:[["","ngbTooltip",""]],inputs:{animation:"animation",autoClose:"autoClose",placement:"placement",popperOptions:"popperOptions",triggers:"triggers",positionTarget:"positionTarget",container:"container",disableTooltip:"disableTooltip",tooltipClass:"tooltipClass",tooltipContext:"tooltipContext",openDelay:"openDelay",closeDelay:"closeDelay",ngbTooltip:"ngbTooltip"},outputs:{shown:"shown",hidden:"hidden"},exportAs:["ngbTooltip"],features:[it]});let t=e;return t})(),to=(()=>{let e=class e{};e.\u0275fac=function(n){return new(n||e)},e.\u0275mod=C({type:e}),e.\u0275inj=I({});let t=e;return t})(),Xs=(()=>{let e=class e{constructor(){this.highlightClass="ngb-highlight",this.accentSensitive=!0}ngOnChanges(i){!this.accentSensitive&&!String.prototype.normalize&&(console.warn("The `accentSensitive` input in `ngb-highlight` cannot be set to `false` in a browser that does not implement the `String.normalize` function. You will have to include a polyfill in your application to use this feature in the current browser."),this.accentSensitive=!0);let n=pt(this.result),o=Array.isArray(this.term)?this.term:[this.term],a=c=>this.accentSensitive?c:In(c),r=o.map(c=>ns(a(pt(c)))).filter(c=>c),l=this.accentSensitive?n:In(n),d=r.length?l.split(new RegExp(`(${r.join("|")})`,"gmi")):[n];if(this.accentSensitive)this.parts=d;else{let c=0;this.parts=d.map(f=>n.substring(c,c+=f.length))}}};e.\u0275fac=function(n){return new(n||e)},e.\u0275cmp=me({type:e,selectors:[["ngb-highlight"]],inputs:{highlightClass:"highlightClass",result:"result",term:"term",accentSensitive:"accentSensitive"},features:[it],decls:2,vars:0,consts:[[3,"class"]],template:function(n,o){n&1&&si(0,Qo,2,1,null,null,oi),n&2&&ri(o.parts)},styles:[`.ngb-highlight{font-weight:700}
5
- `],encapsulation:2,changeDetection:0});let t=e;return t})(),Ks=new en("live announcer delay",{providedIn:"root",factory:()=>100});function xn(t,e=!1){let s=t.body.querySelector("#ngb-live");return s==null&&e&&(s=t.createElement("div"),s.setAttribute("id","ngb-live"),s.setAttribute("aria-live","polite"),s.setAttribute("aria-atomic","true"),s.classList.add("visually-hidden"),t.body.appendChild(s)),s}var Qs=(()=>{let e=class e{constructor(){this._document=u(le),this._delay=u(Ks)}ngOnDestroy(){let i=xn(this._document);i&&i.parentElement.removeChild(i)}say(i){let n=xn(this._document,!0),o=this._delay;if(n!=null){n.textContent="";let a=()=>n.textContent=i;o===null?a():setTimeout(a,o)}}};e.\u0275fac=function(n){return new(n||e)},e.\u0275prov=K({token:e,factory:e.\u0275fac,providedIn:"root"});let t=e;return t})(),Js=(()=>{let e=class e{constructor(){this.editable=!0,this.focusFirst=!0,this.selectOnExact=!1,this.showHint=!1,this.placement=["bottom-start","bottom-end","top-start","top-end"],this.popperOptions=i=>i}};e.\u0275fac=function(n){return new(n||e)},e.\u0275prov=K({token:e,factory:e.\u0275fac,providedIn:"root"});let t=e;return t})(),qs=(()=>{let e=class e{constructor(){this.activeIdx=0,this.focusFirst=!0,this.formatter=pt,this.selectEvent=new T,this.activeChangeEvent=new T}hasActive(){return this.activeIdx>-1&&this.activeIdx<this.results.length}getActive(){return this.results[this.activeIdx]}markActive(i){this.activeIdx=i,this._activeChanged()}next(){this.activeIdx===this.results.length-1?this.activeIdx=this.focusFirst?(this.activeIdx+1)%this.results.length:-1:this.activeIdx++,this._activeChanged()}prev(){this.activeIdx<0?this.activeIdx=this.results.length-1:this.activeIdx===0?this.activeIdx=this.focusFirst?this.results.length-1:-1:this.activeIdx--,this._activeChanged()}resetActive(){this.activeIdx=this.focusFirst?0:-1,this._activeChanged()}select(i){this.selectEvent.emit(i)}ngOnInit(){this.resetActive()}_activeChanged(){this.activeChangeEvent.emit(this.activeIdx>=0?this.id+"-"+this.activeIdx:void 0)}};e.\u0275fac=function(n){return new(n||e)},e.\u0275cmp=me({type:e,selectors:[["ngb-typeahead-window"]],hostAttrs:["role","listbox"],hostVars:3,hostBindings:function(n,o){n&1&&ve("mousedown",function(r){return r.preventDefault()}),n&2&&(ae("id",o.id),ge("dropdown-menu show"+(o.popupClass?" "+o.popupClass:"")))},inputs:{id:"id",focusFirst:"focusFirst",results:"results",term:"term",formatter:"formatter",resultTemplate:"resultTemplate",popupClass:"popupClass"},outputs:{selectEvent:"select",activeChangeEvent:"activeChange"},exportAs:["ngbTypeaheadWindow"],decls:4,vars:0,consts:[["rt",""],["type","button","role","option",1,"dropdown-item",3,"id","active"],[3,"result","term"],["type","button","role","option",1,"dropdown-item",3,"mouseenter","click","id"],[3,"ngTemplateOutlet","ngTemplateOutletContext"]],template:function(n,o){n&1&&(ot(0,qo,1,2,"ng-template",null,0,dn),si(2,Zo,2,9,"button",1,oi)),n&2&&($e(2),ri(o.results))},dependencies:[Xs,un],encapsulation:2});let t=e;return t})(),Ys=0,du=(()=>{let e=class e{constructor(){this._nativeElement=u(J).nativeElement,this._config=u(Js),this._live=u(Qs),this._document=u(le),this._ngZone=u(re),this._changeDetector=u(We),this._injector=u(ie),this._popupService=new Vt(qs),this._positioning=Pi(),this._subscription=null,this._closed$=new X,this._inputValueBackup=null,this._inputValueForSelectOnExact=null,this._valueChanges$=L(this._nativeElement,"input").pipe(Ce(i=>i.target.value)),this._resubscribeTypeahead$=new Ki(null),this._windowRef=null,this.autocomplete="off",this.container=this._config.container,this.editable=this._config.editable,this.focusFirst=this._config.focusFirst,this.selectOnExact=this._config.selectOnExact,this.showHint=this._config.showHint,this.placement=this._config.placement,this.popperOptions=this._config.popperOptions,this.selectItem=new T,this.activeDescendant=null,this.popupId=`ngb-typeahead-${Ys++}`,this._onTouched=()=>{},this._onChange=i=>{}}ngOnInit(){this._subscribeToUserInput()}ngOnChanges({ngbTypeahead:i}){i&&!i.firstChange&&(this._unsubscribeFromUserInput(),this._subscribeToUserInput())}ngOnDestroy(){this._closePopup(),this._unsubscribeFromUserInput()}registerOnChange(i){this._onChange=i}registerOnTouched(i){this._onTouched=i}writeValue(i){this._writeInputValue(this._formatItemForInput(i)),this.showHint&&(this._inputValueBackup=i)}setDisabledState(i){this._nativeElement.disabled=i}dismissPopup(){this.isPopupOpen()&&(this._resubscribeTypeahead$.next(null),this._closePopup(),this.showHint&&this._inputValueBackup!==null&&this._writeInputValue(this._inputValueBackup),this._changeDetector.markForCheck())}isPopupOpen(){return this._windowRef!=null}handleBlur(){this._resubscribeTypeahead$.next(null),this._onTouched()}handleKeyDown(i){if(this.isPopupOpen())switch(i.key){case"ArrowDown":i.preventDefault(),this._windowRef.instance.next(),this._showHint();break;case"ArrowUp":i.preventDefault(),this._windowRef.instance.prev(),this._showHint();break;case"Enter":case"Tab":{let n=this._windowRef.instance.getActive();Ut(n)&&(i.preventDefault(),i.stopPropagation(),this._selectResult(n)),this._closePopup();break}}}_openPopup(){if(!this.isPopupOpen()){this._inputValueBackup=this._nativeElement.value;let{windowRef:i}=this._popupService.open();this._windowRef=i,this._windowRef.setInput("id",this.popupId),this._windowRef.setInput("popupClass",this.popupClass),this._windowRef.instance.selectEvent.subscribe(n=>this._selectResultClosePopup(n)),this._windowRef.instance.activeChangeEvent.subscribe(n=>this.activeDescendant=n),this.container==="body"&&(this._windowRef.location.nativeElement.style.zIndex="1055",this._document.body.appendChild(this._windowRef.location.nativeElement)),this._changeDetector.markForCheck(),this._ngZone.runOutsideAngular(()=>{this._windowRef&&(this._positioning.createPopper({hostElement:this._nativeElement,targetElement:this._windowRef.location.nativeElement,placement:this.placement,updatePopperOptions:n=>this.popperOptions(Ai([0,2])(n))}),this._afterRenderRef=It({mixedReadWrite:()=>{this._positioning.update()}},{injector:this._injector}))}),Bi(this._ngZone,this._document,"outside",()=>this.dismissPopup(),this._closed$,[this._nativeElement,this._windowRef.location.nativeElement])}}_closePopup(){this._popupService.close().subscribe(()=>{var i;this._positioning.destroy(),(i=this._afterRenderRef)==null||i.destroy(),this._closed$.next(),this._windowRef=null,this.activeDescendant=null})}_selectResult(i){let n=!1;this.selectItem.emit({item:i,preventDefault:()=>{n=!0}}),this._resubscribeTypeahead$.next(null),n||(this.writeValue(i),this._onChange(i))}_selectResultClosePopup(i){this._selectResult(i),this._closePopup()}_showHint(){var i;if(this.showHint&&((i=this._windowRef)!=null&&i.instance.hasActive())&&this._inputValueBackup!=null){let n=this._inputValueBackup.toLowerCase(),o=this._formatItemForInput(this._windowRef.instance.getActive());n===o.substring(0,this._inputValueBackup.length).toLowerCase()?(this._writeInputValue(this._inputValueBackup+o.substring(this._inputValueBackup.length)),this._nativeElement.setSelectionRange.apply(this._nativeElement,[this._inputValueBackup.length,o.length])):this._writeInputValue(o)}}_formatItemForInput(i){return i!=null&&this.inputFormatter?this.inputFormatter(i):pt(i)}_writeInputValue(i){this._nativeElement.value=pt(i)}_subscribeToUserInput(){let i=this._valueChanges$.pipe(tt(n=>{this._inputValueBackup=this.showHint?n:null,this._inputValueForSelectOnExact=this.selectOnExact?n:null,this._onChange(this.editable?n:void 0)}),this.ngbTypeahead?this.ngbTypeahead:()=>et([]));this._subscription=this._resubscribeTypeahead$.pipe(qt(()=>i)).subscribe(n=>{!n||n.length===0?this._closePopup():this.selectOnExact&&n.length===1&&this._formatItemForInput(n[0])===this._inputValueForSelectOnExact?(this._selectResult(n[0]),this._closePopup()):(this._openPopup(),this._windowRef.setInput("focusFirst",this.focusFirst),this._windowRef.setInput("results",n),this._windowRef.setInput("term",this._nativeElement.value),this.resultFormatter&&this._windowRef.setInput("formatter",this.resultFormatter),this.resultTemplate&&this._windowRef.setInput("resultTemplate",this.resultTemplate),this._windowRef.instance.resetActive(),this._windowRef.changeDetectorRef.detectChanges(),this._showHint());let o=n?n.length:0;this._live.say(o===0?"No results available":`${o} result${o===1?"":"s"} available`)})}_unsubscribeFromUserInput(){this._subscription&&this._subscription.unsubscribe(),this._subscription=null}};e.\u0275fac=function(n){return new(n||e)},e.\u0275dir=$({type:e,selectors:[["input","ngbTypeahead",""]],hostAttrs:["autocapitalize","off","autocorrect","off","role","combobox"],hostVars:7,hostBindings:function(n,o){n&1&&ve("blur",function(){return o.handleBlur()})("keydown",function(r){return o.handleKeyDown(r)}),n&2&&(ae("autocomplete",o.autocomplete),Se("aria-autocomplete",o.showHint?"both":"list")("aria-activedescendant",o.activeDescendant)("aria-owns",o.isPopupOpen()?o.popupId:null)("aria-expanded",o.isPopupOpen()),W("open",o.isPopupOpen()))},inputs:{autocomplete:"autocomplete",container:"container",editable:"editable",focusFirst:"focusFirst",inputFormatter:"inputFormatter",ngbTypeahead:"ngbTypeahead",resultFormatter:"resultFormatter",resultTemplate:"resultTemplate",selectOnExact:"selectOnExact",showHint:"showHint",placement:"placement",popperOptions:"popperOptions",popupClass:"popupClass"},outputs:{selectItem:"selectItem"},exportAs:["ngbTypeahead"],features:[hi([{provide:hn,useExisting:Yt(()=>e),multi:!0}]),it]});let t=e;return t})(),io=(()=>{let e=class e{};e.\u0275fac=function(n){return new(n||e)},e.\u0275mod=C({type:e}),e.\u0275inj=I({});let t=e;return t})();var no=(()=>{let e=class e{};e.\u0275fac=function(n){return new(n||e)},e.\u0275mod=C({type:e}),e.\u0275inj=I({});let t=e;return t})(),Zs=[Pn,An,Gn,Hn,$n,Wn,zn,Xn,no,Kn,Qn,Jn,qn,Yn,Zn,eo,to,io],uu=(()=>{let e=class e{};e.\u0275fac=function(n){return new(n||e)},e.\u0275mod=C({type:e}),e.\u0275inj=I({imports:[Zs,Pn,An,Gn,Hn,$n,Wn,zn,Xn,no,Kn,Qn,Jn,qn,Yn,Zn,eo,to,io]});let t=e;return t})();export{Yd as a,hs as b,Zd as c,eu as d,qe as e,Bn as f,tu as g,jn as h,au as i,xs as j,lu as k,Ln as l,$t as m,Us as n,cu as o,du as p,uu as q};
@@ -1 +0,0 @@
1
- import{a as ne}from"./chunk-474BOAR2.js";import{g as O,m as G,n as te}from"./chunk-N4F42HDL.js";import{b as Z,c as M,d as x,e as F,f as z,g as N,j as w,m as q,o as R,p as L,q as j,w as ee,y as V,z as A}from"./chunk-YLEC7AUG.js";import{b as ie}from"./chunk-T3GI7KUT.js";import{c as Q}from"./chunk-MW5FLUTC.js";import{a as ce}from"./chunk-YTJNIFE4.js";import{h as U,k}from"./chunk-3NBOT4LS.js";import{a as E,b as $}from"./chunk-675OFXLW.js";import{Bb as g,Cc as s,Dc as l,Ec as Y,Lb as u,Mb as f,Rb as h,Tb as K,Ub as W,Vb as X,Wb as i,Xb as n,Yb as p,ac as D,bd as P,dc as b,ec as v,g as de,ib as e,na as c,oc as m,pc as d,qc as C,ub as y,xa as B,ya as T,yc as I}from"./chunk-CKNHTRCL.js";function ue(r,S){r&1&&(i(0,"ngb-alert",14)(1,"p",21),m(2),s(3,"translate"),n()()),r&2&&(f("dismissible",!1),e(2),d(l(3,2,"login.invalid_password")))}var re=(()=>{class r{$activeModal=c(G);$api=c(k);$toastr=c(U);$translate=c(E);formGroup=new N({password:new w("",[x.required])});invalidCredentials=!1;constructor(){}disable2fa(){this.invalidCredentials=!1,this.$api.post("/users/otp/deactivate",this.formGroup.value).subscribe({next:()=>{this.$activeModal.close(),this.$toastr.success(this.$translate.instant("users.setup_2fa_disable_success"),this.$translate.instant("toast.title_success"))},error:()=>{this.formGroup.setValue({password:""}),this.invalidCredentials=!0}})}static \u0275fac=function(o){return new(o||r)};static \u0275cmp=y({type:r,selectors:[["ng-component"]],decls:36,vars:27,consts:[[1,"modal-content",2,"min-height","300px"],[1,"modal-header"],[1,"modal-title"],["type","button","data-dismiss","modal",1,"close",3,"click"],["aria-hidden","true"],[1,"modal-body"],[1,"text-center","mb-3"],[1,"fas","fa-fw","fa-key","primary-text",2,"font-size","75px"],[1,"mb-3"],[1,"list-group","list-group-box","mb-0"],[1,"list-group-item","d-flex","flex-column","flex-md-row","align-items-center"],[1,"mb-2","mb-md-0","w-100","w-md-50"],[1,"text-left","text-md-right","w-100","w-md-50"],["type","password","autocomplete","current-password",1,"form-control","custom-input",3,"formControl","placeholder"],["type","error",1,"mt-3","mb-0",3,"dismissible"],[1,"modal-footer","justify-content-between"],[1,"text-left"],["type","button","data-dismiss","modal",1,"btn","btn-elegant",3,"click"],[1,"text-center"],[1,"text-right"],["type","button","data-dismiss","modal",1,"btn","btn-danger",3,"click","disabled"],[1,"mb-0"]],template:function(o,a){o&1&&(i(0,"div",0)(1,"div",1)(2,"h5",2),m(3),s(4,"translate"),n(),i(5,"button",3),s(6,"translate"),b("click",function(){return a.$activeModal.dismiss("Dismiss")}),i(7,"span",4),m(8,"\xD7"),n()()(),i(9,"div",5)(10,"div",6),p(11,"i",7),n(),i(12,"ul",8)(13,"li"),m(14),s(15,"translate"),n()(),i(16,"ul",9)(17,"li",10)(18,"label",11),m(19),s(20,"translate"),n(),i(21,"div",12),p(22,"input",13),s(23,"translate"),n()()(),g(24,ue,4,4,"ngb-alert",14),n(),i(25,"div",15)(26,"div",16)(27,"button",17),s(28,"translate"),b("click",function(){return a.$activeModal.dismiss("Dismiss")}),m(29),s(30,"translate"),n()(),p(31,"div",18),i(32,"div",19)(33,"button",20),b("click",function(){return a.disable2fa()}),m(34),s(35,"translate"),n()()()()),o&2&&(e(3),d(l(4,11,"users.setup_2fa_disable")),e(2),u("aria-label",l(6,13,"form.button_close")),e(9),d(l(15,15,"users.setup_2fa_disable_current_password")),e(5),d(l(20,17,"login.label_password")),e(3),f("formControl",a.formGroup.controls.password)("placeholder",l(23,19,"users.label_password")),e(2),h(a.invalidCredentials&&!a.formGroup.controls.password.value?24:-1),e(3),u("aria-label",l(28,21,"form.button_close")),e(2),C(" ",l(30,23,"form.button_close")," "),e(4),f("disabled",a.formGroup.invalid),e(),C(" ",l(35,25,"form.button_disable")," "))},dependencies:[V,M,F,A,R,$,O],encapsulation:2})}return r})();var ae=de(ce(),1);var fe=r=>({timeDiffError:r});function be(r,S){r&1&&(i(0,"li"),m(1),s(2,"translate"),n()),r&2&&(e(),d(l(2,1,"users.setup_2fa_scan_qr_code")))}function _e(r,S){if(r&1&&(i(0,"ngb-alert",9)(1,"p",17),m(2),s(3,"translate"),n(),i(4,"p",18),m(5),s(6,"translate"),n()()),r&2){let t=v();f("dismissible",!1),e(2),d(l(3,3,"users.setup_2fa_cannot_setup_2fa")),e(3),d(Y(6,5,"users.setup_2fa_server_time_out",I(8,fe,t.timeDiffError)))}}function ve(r,S){if(r&1&&(i(0,"ul",10)(1,"li",19)(2,"div",20),p(3,"app-qrcode",21),n()(),i(4,"li",22)(5,"label",23),m(6),s(7,"translate"),n(),i(8,"div",24),p(9,"input",25),n()()()),r&2){let t=v();e(3),f("data",t.otpString),e(3),d(l(7,3,"users.setup_2fa_enter_code")),e(3),f("formControl",t.formGroup.controls.code)}}function xe(r,S){if(r&1){let t=D();i(0,"button",26),s(1,"translate"),b("click",function(){B(t);let a=v();return T(a.$activeModal.dismiss("Dismiss"))}),m(2),s(3,"translate"),n()}r&2&&(u("aria-label",l(1,2,"form.button_close")),e(2),C(" ",l(3,4,"form.button_close")," "))}function we(r,S){if(r&1){let t=D();i(0,"button",26),s(1,"translate"),b("click",function(){B(t);let a=v();return T(a.$activeModal.dismiss("Dismiss"))}),m(2),s(3,"translate"),n()}r&2&&(u("aria-label",l(1,2,"form.button_close")),e(2),C(" ",l(3,4,"form.button_close")," "))}function Ce(r,S){if(r&1){let t=D();i(0,"button",27),b("click",function(){B(t);let a=v();return T(a.enable2fa())}),m(1),s(2,"translate"),n()}if(r&2){let t=v();f("disabled",t.formGroup.invalid),e(),C(" ",l(2,2,"form.button_enable")," ")}}var oe=(()=>{class r{$activeModal=c(G);$api=c(k);$toastr=c(U);$translate=c(E);user;timeDiffError=null;otpString;formGroup=new N({code:new w("",[x.required,x.minLength(6),x.maxLength(6)])});constructor(){}ngOnInit(){this.$api.post("/users/otp/setup",{}).subscribe({next:t=>{this.checkTimeDiff(t.timestamp),this.timeDiffError||(this.otpString=t.otpauth)},error:t=>{this.$activeModal.dismiss(),console.error(t),this.$toastr.error(this.$translate.instant("users.setup_2fa_enable_error"),this.$translate.instant("toast.title_error"))}})}checkTimeDiff(t){let o=(0,ae.default)(t).diff(new Date,"millisecond");o<-5e3||o>5e3?this.timeDiffError=o:this.timeDiffError=null}enable2fa(){this.$api.post("/users/otp/activate",this.formGroup.value).subscribe({next:()=>{this.$toastr.success(this.$translate.instant("users.setup_2fa_enabled_success"),this.$translate.instant("toast.title_success")),this.$activeModal.close()},error:t=>{console.error(t),this.$toastr.error(this.$translate.instant("users.setup_2fa_activate_error"),this.$translate.instant("toast.title_error"))}})}static \u0275fac=function(o){return new(o||r)};static \u0275cmp=y({type:r,selectors:[["ng-component"]],inputs:{user:"user"},decls:26,vars:15,consts:[[1,"modal-content","setup2fa"],[1,"modal-header"],[1,"modal-title"],["type","button","data-dismiss","modal",1,"close",3,"click"],["aria-hidden","true"],[1,"modal-body"],[1,"text-center","mb-3"],[1,"fas","fa-fw","fa-key","primary-text",2,"font-size","75px"],[1,"mb-3"],["type","error",1,"mb-0",3,"dismissible"],[1,"list-group","list-group-box","mb-0"],[1,"modal-footer","justify-content-between"],[1,"text-left"],["type","button","data-dismiss","modal",1,"btn","btn-elegant"],[1,"text-center"],[1,"text-right"],["type","button","data-dismiss","modal",1,"btn","btn-primary",3,"disabled"],[1,"font-weight-bold","mb-1"],[1,"mb-0"],[1,"list-group-item","text-center"],[1,"text-center","w-100","d-flex","justify-content-center"],[1,"mx-auto",2,"width","175px","height","175px",3,"data"],[1,"list-group-item","d-flex","flex-column","flex-md-row","align-items-center"],[1,"mb-2","mb-md-0","w-100","w-md-50"],[1,"text-left","text-md-right","w-100","w-md-50"],["formControlName","username","type","text","placeholder","eg. 123456","autocomplete","one-time-code","autocapitalize","none","inputmode","numeric","pattern","[0-9]*",1,"form-control","custom-input",3,"formControl"],["type","button","data-dismiss","modal",1,"btn","btn-elegant",3,"click"],["type","button","data-dismiss","modal",1,"btn","btn-primary",3,"click","disabled"]],template:function(o,a){o&1&&(i(0,"div",0)(1,"div",1)(2,"h5",2),m(3),s(4,"translate"),n(),i(5,"button",3),s(6,"translate"),b("click",function(){return a.$activeModal.dismiss("Dismiss")}),i(7,"span",4),m(8,"\xD7"),n()()(),i(9,"div",5)(10,"div",6),p(11,"i",7),n(),i(12,"ul",8)(13,"li"),m(14),s(15,"translate"),n(),g(16,be,3,3,"li"),n(),g(17,_e,7,10,"ngb-alert",9)(18,ve,10,5,"ul",10),n(),i(19,"div",11)(20,"div",12),g(21,xe,4,6,"button",13),n(),i(22,"div",14),g(23,we,4,6,"button",13),n(),i(24,"div",15),g(25,Ce,3,4,"button",16),n()()()),o&2&&(e(3),d(l(4,9,"users.setup_2fa")),e(2),u("aria-label",l(6,11,"form.button_close")),e(9),d(l(15,13,"users.setup_2fa_warning")),e(2),h(a.timeDiffError?-1:16),e(),h(a.timeDiffError?17:-1),e(),h(a.timeDiffError?-1:18),e(3),h(a.timeDiffError?-1:21),e(2),h(a.timeDiffError?23:-1),e(2),h(a.timeDiffError?-1:25))},dependencies:[O,ne,V,M,F,ee,A,R,j,$],encapsulation:2})}return r})();var se=r=>({"is-invalid":r}),le=(()=>{class r{$activeModal=c(G);$api=c(k);$toastr=c(U);$translate=c(E);form=new N({username:new w("",[x.required]),name:new w("",[x.required]),password:new w("",[x.compose([x.required,x.minLength(4)])]),passwordConfirm:new w("",[x.required]),admin:new w(!0)},this.matchPassword);page={title:"users.title_add_user",save:"users.button_add_new_user",password:"users.label_password"};constructor(){}matchPassword(t){let o=t.get("password").value,a=t.get("passwordConfirm").value;if(o!==a)t.get("passwordConfirm").setErrors({matchPassword:!0});else return null}onSubmit({value:t}){this.$api.post("/users",t).subscribe({next:()=>{this.$activeModal.close(),this.$toastr.success(this.$translate.instant("users.toast_added_new_user"),this.$translate.instant("toast.title_success"))},error:o=>{this.$toastr.error(o.error.message||this.$translate.instant("users.toast_failed_to_add_user"),this.$translate.instant("toast.title_error"))}})}static \u0275fac=function(o){return new(o||r)};static \u0275cmp=y({type:r,selectors:[["ng-component"]],decls:60,vars:50,consts:[[1,"modal-content"],["novalidate","",3,"ngSubmit","formGroup"],[1,"modal-header"],[1,"modal-title"],["type","button","data-dismiss","modal",1,"close",3,"click"],["aria-hidden","true"],[1,"modal-body"],[1,"text-center","mb-3"],[1,"fas","fa-fw","fa-user-plus","primary-text",2,"font-size","75px"],[1,"list-group","list-group-box","mb-0"],[1,"list-group-item","d-flex","flex-column","flex-md-row","align-items-center"],["for","form-username",1,"mb-2","mb-md-0","w-100","w-md-50"],[1,"text-left","text-md-right","w-100","w-md-50"],["formControlName","username","type","text","id","form-username","autocomplete","username","autocapitalize","none",1,"form-control","custom-input"],["for","form-name",1,"mb-2","mb-md-0","w-100","w-md-50"],["formControlName","name","type","text","id","form-name","autocomplete","name",1,"form-control","custom-input"],["for","form-pass",1,"mb-2","mb-md-0","w-100","w-md-50"],["formControlName","password","type","password","autocomplete","new-password","id","form-pass",1,"form-control","custom-input",3,"ngClass"],["for","form-pass-confirm",1,"mb-2","mb-md-0","w-100","w-md-50"],["formControlName","passwordConfirm","type","password","autocomplete","new-password","id","form-pass-confirm",1,"form-control","custom-input",3,"ngClass"],[1,"list-group-item","d-flex","justify-content-between","align-items-center","flex-row","pb-2"],[1,"text-left"],[1,"text-right","grey-text"],["type","checkbox","id","isAdmin",1,"rendux-input"],["for","isAdmin",1,"rendux-label","ml-3"],[1,"modal-footer","justify-content-between"],["type","button","data-dismiss","modal",1,"btn","btn-elegant",3,"click"],[1,"text-center"],[1,"text-right"],["type","submit",1,"btn","btn-primary",3,"disabled"]],template:function(o,a){o&1&&(i(0,"div",0)(1,"form",1),b("ngSubmit",function(){return a.onSubmit(a.form)}),i(2,"div",2)(3,"h5",3),m(4),s(5,"translate"),n(),i(6,"button",4),s(7,"translate"),b("click",function(){return a.$activeModal.dismiss("Dismiss")}),i(8,"span",5),m(9,"\xD7"),n()()(),i(10,"div",6)(11,"div",7),p(12,"i",8),n(),i(13,"ul",9)(14,"li",10)(15,"label",11),m(16),s(17,"translate"),n(),i(18,"div",12),p(19,"input",13),s(20,"translate"),n()(),i(21,"li",10)(22,"label",14),m(23),s(24,"translate"),n(),i(25,"div",12),p(26,"input",15),s(27,"translate"),n()(),i(28,"li",10)(29,"label",16),m(30),s(31,"translate"),n(),i(32,"div",12),p(33,"input",17),s(34,"translate"),n()(),i(35,"li",10)(36,"label",18),m(37),s(38,"translate"),n(),i(39,"div",12),p(40,"input",19),s(41,"translate"),n()(),i(42,"li",20)(43,"span",21),m(44),s(45,"translate"),n(),i(46,"div",22),p(47,"input",23),s(48,"translate"),p(49,"label",24),n()()()(),i(50,"div",25)(51,"div",21)(52,"button",26),b("click",function(){return a.$activeModal.dismiss("Dismiss")}),m(53),s(54,"translate"),n()(),p(55,"div",27),i(56,"div",28)(57,"button",29),m(58),s(59,"translate"),n()()()()()),o&2&&(e(),f("formGroup",a.form),e(3),d(l(5,18,"users.title_add_user")),e(2),u("aria-label",l(7,20,"form.button_close")),e(10),d(l(17,22,"users.label_username")),e(3),u("aria-label",l(20,24,"users.label_username")),e(4),d(l(24,26,"users.label_full_name")),e(3),u("aria-label",l(27,28,"users.label_full_name")),e(4),d(l(31,30,a.page.password)),e(3),f("ngClass",I(46,se,a.form.controls.password.dirty&&a.form.controls.password.errors)),u("aria-label",l(34,32,a.page.password)),e(4),d(l(38,34,"users.label_confirm_password")),e(3),f("ngClass",I(48,se,a.form.controls.passwordConfirm.dirty&&a.form.controls.passwordConfirm.errors)),u("aria-label",l(41,36,"users.label_confirm_password")),e(4),d(l(45,38,"users.label_admin_user")),e(3),u("aria-label",l(48,40,"users.label_admin_user")),e(6),C(" ",l(54,42,"form.button_close")," "),e(4),f("disabled",!a.form.valid),e(),C(" ",l(59,44,"form.button_save")," "))},dependencies:[V,q,M,F,z,A,L,j,P,$],encapsulation:2})}return r})();var me=r=>({"is-invalid":r});function he(r,S){if(r&1&&(i(0,"li",10)(1,"label",28),m(2),s(3,"translate"),n(),i(4,"div",12),p(5,"input",29),s(6,"translate"),n()()),r&2){let t=v();e(2),d(l(3,3,"users.label_confirm_password")),e(3),f("ngClass",I(7,me,t.form.controls.passwordConfirm.dirty&&t.form.controls.passwordConfirm.errors)),u("aria-label",l(6,5,"users.label_confirm_password"))}}var pe=(()=>{class r{$activeModal=c(G);$api=c(k);$auth=c(Q);$toastr=c(U);$translate=c(E);user;form=new N({username:new w("",[x.required]),name:new w("",[x.required]),password:new w(""),passwordConfirm:new w(""),admin:new w(!0)},this.matchPassword);page={title:"users.title_edit_user",save:"form.button_save",password:"users.label_new_password"};isCurrentUser=!1;constructor(){}ngOnInit(){this.isCurrentUser=this.$auth.user.username===this.user.username,this.form.patchValue(this.user)}matchPassword(t){let o=t.get("password").value,a=t.get("passwordConfirm").value;if(o!==a)t.get("passwordConfirm").setErrors({matchPassword:!0});else return null}onSubmit({value:t}){this.$api.patch(`/users/${this.user.id}`,t).subscribe({next:()=>{this.$activeModal.close(),this.$toastr.success(this.$translate.instant("users.toast_updated_user"),this.$translate.instant("toast.title_success")),this.isCurrentUser&&t.username!==this.$auth.user.username&&this.$auth.logout()},error:o=>{console.error(o),this.$toastr.error(o.error.message||this.$translate.instant("users.toast_failed_to_add_user"),this.$translate.instant("toast.title_error"))}})}static \u0275fac=function(o){return new(o||r)};static \u0275cmp=y({type:r,selectors:[["ng-component"]],inputs:{user:"user"},decls:54,vars:42,consts:[[1,"modal-content"],["novalidate","",3,"ngSubmit","formGroup"],[1,"modal-header"],[1,"modal-title"],["type","button","data-dismiss","modal",1,"close",3,"click"],["aria-hidden","true"],[1,"modal-body"],[1,"text-center","mb-3"],[1,"fas","fa-fw","fa-user-pen","primary-text",2,"font-size","75px"],[1,"list-group","list-group-box","mb-0"],[1,"list-group-item","d-flex","flex-column","flex-md-row","align-items-center"],["for","form-username",1,"mb-2","mb-md-0","w-100","w-md-50"],[1,"text-left","text-md-right","w-100","w-md-50"],["formControlName","username","type","text","id","form-username","autocomplete","off","autocapitalize","none",1,"form-control","custom-input"],["for","form-name",1,"mb-2","mb-md-0","w-100","w-md-50"],["formControlName","name","type","text","id","form-name","autocomplete","name",1,"form-control","custom-input"],["for","form-pass",1,"mb-2","mb-md-0","w-100","w-md-50"],["formControlName","password","type","password","autocomplete","new-password","id","form-pass",1,"form-control","custom-input",3,"ngClass"],[1,"list-group-item","d-flex","justify-content-between","align-items-center","flex-row","pb-2"],[1,"text-left"],[1,"text-right","grey-text"],["type","checkbox","formControlName","admin","id","isAdmin",1,"rendux-input"],["for","isAdmin",1,"rendux-label","ml-3"],[1,"modal-footer","justify-content-between"],["type","button","data-dismiss","modal",1,"btn","btn-elegant",3,"click"],[1,"text-center"],[1,"text-right"],["type","submit",1,"btn","btn-primary",3,"disabled"],["for","form-pass-confirm",1,"mb-2","mb-md-0","w-100","w-md-50"],["formControlName","passwordConfirm","type","password","autocomplete","new-password","id","form-pass-confirm",1,"form-control","custom-input",3,"ngClass"]],template:function(o,a){o&1&&(i(0,"div",0)(1,"form",1),b("ngSubmit",function(){return a.onSubmit(a.form)}),i(2,"div",2)(3,"h5",3),m(4),s(5,"translate"),n(),i(6,"button",4),s(7,"translate"),b("click",function(){return a.$activeModal.dismiss("Dismiss")}),i(8,"span",5),m(9,"\xD7"),n()()(),i(10,"div",6)(11,"div",7),p(12,"i",8),n(),i(13,"ul",9)(14,"li",10)(15,"label",11),m(16),s(17,"translate"),n(),i(18,"div",12),p(19,"input",13),s(20,"translate"),n()(),i(21,"li",10)(22,"label",14),m(23),s(24,"translate"),n(),i(25,"div",12),p(26,"input",15),s(27,"translate"),n()(),i(28,"li",10)(29,"label",16),m(30),s(31,"translate"),n(),i(32,"div",12),p(33,"input",17),s(34,"translate"),n()(),g(35,he,7,9,"li",10),i(36,"li",18)(37,"span",19),m(38),s(39,"translate"),n(),i(40,"div",20),p(41,"input",21),s(42,"translate"),p(43,"label",22),n()()()(),i(44,"div",23)(45,"div",19)(46,"button",24),b("click",function(){return a.$activeModal.dismiss("Dismiss")}),m(47),s(48,"translate"),n()(),p(49,"div",25),i(50,"div",26)(51,"button",27),m(52),s(53,"translate"),n()()()()()),o&2&&(e(),f("formGroup",a.form),e(3),d(l(5,16,"users.title_edit_user")),e(2),u("aria-label",l(7,18,"form.button_close")),e(10),d(l(17,20,"users.label_username")),e(3),u("aria-label",l(20,22,"users.label_username")),e(4),d(l(24,24,"users.label_full_name")),e(3),u("aria-label",l(27,26,"users.label_full_name")),e(4),d(l(31,28,a.page.password)),e(3),f("ngClass",I(40,me,a.form.controls.password.dirty&&a.form.controls.password.errors)),u("aria-label",l(34,30,a.page.password)),e(2),h(a.form.controls.password.value?35:-1),e(3),d(l(39,32,"users.label_admin_user")),e(3),u("aria-label",l(42,34,"users.label_admin_user")),e(6),C(" ",l(48,36,"form.button_close")," "),e(4),f("disabled",!a.form.valid),e(),C(" ",l(53,38,"form.button_save")," "))},dependencies:[V,q,M,Z,F,z,A,L,j,P,$],encapsulation:2})}return r})();function ge(r,S){if(r&1){let t=D();i(0,"button",21),b("click",function(){B(t);let a=v().$implicit,_=v();return T(_.setup2fa(a))}),m(1),s(2,"translate"),n()}r&2&&(e(),d(l(2,1,"users.setup_2fa")))}function Se(r,S){if(r&1){let t=D();i(0,"button",22),b("click",function(){B(t);let a=v().$implicit,_=v();return T(_.disable2fa(a))}),m(1),s(2,"translate"),n()}r&2&&(e(),C(" ",l(2,1,"users.setup_2fa_disable")," "))}function ye(r,S){if(r&1){let t=D();i(0,"div",7)(1,"div",8)(2,"div",9)(3,"div",10)(4,"span",11),p(5,"h4",12)(6,"h5",13),n()(),i(7,"div",14),g(8,ge,3,3,"button",15)(9,Se,3,3,"button",16),i(10,"div")(11,"button",17),s(12,"translate"),b("click",function(){let a=B(t).$implicit,_=v();return T(_.openEditUser(a))}),p(13,"i",18),n(),i(14,"button",19),s(15,"translate"),b("click",function(){let a=B(t).$implicit,_=v();return T(_.deleteUser(a.id))}),p(16,"i",20),n()()()()()()}if(r&2){let t=S.$implicit,o=v();e(5),f("innerText",t.name),e(),f("innerText",t.username),e(2),h(o.$auth.user.username===t.username&&!t.otpActive?8:-1),e(),h(o.$auth.user.username===t.username&&t.otpActive?9:-1),e(2),u("aria-label",l(12,7,"form.button_edit")),e(3),f("disabled",o.$auth.user.username===t.username),u("aria-label",l(15,9,"form.button_delete"))}}var ht=(()=>{class r{$api=c(k);$auth=c(Q);$modal=c(te);$route=c(ie);$toastr=c(U);$translate=c(E);homebridgeUsers;constructor(){}ngOnInit(){this.$route.data.subscribe(t=>{this.homebridgeUsers=t.homebridgeUsers})}reloadUsers(){return this.$api.get("/users").subscribe(t=>{this.homebridgeUsers=t})}openAddNewUser(){this.$modal.open(le,{size:"lg",backdrop:"static"}).result.finally(()=>{this.reloadUsers()})}openEditUser(t){let o=this.$modal.open(pe,{size:"lg",backdrop:"static"});o.componentInstance.user=t,o.result.finally(()=>{this.reloadUsers()})}deleteUser(t){this.$api.delete(`/users/${t}`).subscribe({next:()=>{this.$toastr.success(this.$translate.instant("users.toast_user_deleted"),this.$translate.instant("toast.title_success")),this.reloadUsers()},error:o=>{console.error(o),this.$toastr.error(o.error.message||this.$translate.instant("users.toast_failed_to_delete_user"),this.$translate.instant("toast.title_error"))}})}setup2fa(t){let o=this.$modal.open(oe,{size:"lg",backdrop:"static"});o.componentInstance.user=t,o.result.finally(()=>{this.reloadUsers()})}disable2fa(t){let o=this.$modal.open(re,{size:"lg",backdrop:"static"});o.componentInstance.user=t,o.result.finally(()=>{this.reloadUsers()})}static \u0275fac=function(o){return new(o||r)};static \u0275cmp=y({type:r,selectors:[["app-users"]],decls:12,vars:6,consts:[[1,"row","mb-3"],[1,"col-9"],[1,"primary-text","m-0"],[1,"col-3","text-right"],[1,"btn","btn-elegant","waves-effect","m-0",3,"click"],[1,"fas","fa-fw","fa-user-plus"],[1,"row"],[1,"col-md-6","mb-4"],[1,"card","card-body"],[1,"d-flex","flex-column"],[1,"d-flex","flex-row","mb-3"],[1,"me-auto","my-0"],[3,"innerText"],[1,"small","text-truncate","primary-text",3,"innerText"],[1,"d-flex","flex-row","justify-content-between"],[1,"btn","btn-primary","m-0"],[1,"btn","btn-elegant","m-0"],[1,"btn","btn-elegant","m-0","ml-3",3,"click"],[1,"fas","fa-fw","fa-user-pen"],[1,"btn","btn-danger","m-0","ml-3",3,"click","disabled"],[1,"fas","fa-fw","fa-trash"],[1,"btn","btn-primary","m-0",3,"click"],[1,"btn","btn-elegant","m-0",3,"click"]],template:function(o,a){o&1&&(i(0,"div",0)(1,"div",1)(2,"h3",2),m(3),s(4,"translate"),n()(),i(5,"div",3)(6,"button",4),s(7,"translate"),b("click",function(){return a.openAddNewUser()}),p(8,"i",5),n()()(),i(9,"div",6),W(10,ye,17,11,"div",7,K),n()),o&2&&(e(3),d(l(4,2,"users.title_users")),e(3),u("aria-label",l(7,4,"users.button_add_user")),e(4),X(a.homebridgeUsers))},dependencies:[$],encapsulation:2})}return r})();export{re as a,oe as b,le as c,pe as d,ht as e};
@@ -1 +0,0 @@
1
- import{a}from"./chunk-422KDBY6.js";import"./chunk-3NBOT4LS.js";import"./chunk-HA6CO5NZ.js";import"./chunk-675OFXLW.js";import"./chunk-CKNHTRCL.js";export{a as ShutdownLinuxComponent};
@@ -1 +0,0 @@
1
- import{a as l,b as u,c as a,d as g}from"./chunk-XGP6D3NB.js";import{a as f}from"./chunk-CLZ6XK3S.js";import"./chunk-A4EWGMID.js";import{a as c}from"./chunk-PZ2IXNJQ.js";import"./chunk-NEL5H4ZP.js";import"./chunk-3ANQRJ75.js";import"./chunk-NSCP3SOQ.js";import"./chunk-5KLZWFYX.js";import"./chunk-JF5AT3NK.js";import"./chunk-WJQ5NIPP.js";import"./chunk-C2XBPNOQ.js";import"./chunk-474BOAR2.js";import"./chunk-RP5TYXWG.js";import"./chunk-7BCHGXO4.js";import"./chunk-XFK2EZ3K.js";import"./chunk-EEDUUZ6J.js";import{q as s}from"./chunk-N4F42HDL.js";import{y as n,z as p}from"./chunk-YLEC7AUG.js";import"./chunk-TFXCOLWH.js";import{g as i}from"./chunk-T3GI7KUT.js";import"./chunk-MW5FLUTC.js";import"./chunk-YTJNIFE4.js";import"./chunk-3NBOT4LS.js";import"./chunk-HA6CO5NZ.js";import{c as d}from"./chunk-675OFXLW.js";import{ia as t,kd as m,vb as e}from"./chunk-CKNHTRCL.js";var v=[{path:"",loadComponent:()=>import("./chunk-GPDMT3AA.js").then(o=>o.SettingsComponent),canActivate:[f]}],C=(()=>{class o{static \u0275fac=function(r){return new(r||o)};static \u0275mod=e({type:o});static \u0275inj=t({imports:[i.forChild(v),i]})}return o})();var K=(()=>{class o{static \u0275fac=function(r){return new(r||o)};static \u0275mod=e({type:o});static \u0275inj=t({imports:[m,n,p,d,s,C,g,u,l,c,a]})}return o})();export{K as SettingsModule};
@@ -1 +0,0 @@
1
- import{a}from"./chunk-STQ2AZLE.js";import"./chunk-XP7D2PRA.js";import"./chunk-3ANQRJ75.js";import"./chunk-NSCP3SOQ.js";import"./chunk-JF5AT3NK.js";import"./chunk-N4F42HDL.js";import"./chunk-YLEC7AUG.js";import"./chunk-T3GI7KUT.js";import"./chunk-YTJNIFE4.js";import"./chunk-3NBOT4LS.js";import"./chunk-HA6CO5NZ.js";import"./chunk-675OFXLW.js";import"./chunk-CKNHTRCL.js";export{a as ConfigEditorComponent};
@@ -1 +0,0 @@
1
- import{c as N,d as x,e as O,f as T,g as q,j as w,m as G,p as Q,q as z,w as D,y as H,z as j}from"./chunk-YLEC7AUG.js";import{d as W}from"./chunk-T3GI7KUT.js";import{c as K}from"./chunk-MW5FLUTC.js";import{b as J}from"./chunk-YTJNIFE4.js";import{j as U}from"./chunk-3NBOT4LS.js";import{b as A}from"./chunk-675OFXLW.js";import{Bb as S,Cc as l,Dc as p,M as V,Mb as m,Rb as c,Wb as a,Xb as r,Yb as h,bd as B,dc as M,ec as I,ed as R,h as y,ib as o,lc as C,mc as $,na as g,oc as s,pc as d,qc as L,rb as v,ub as k,w as P,yc as f}from"./chunk-CKNHTRCL.js";var X=["password"],Y=["username"],Z=["otp"],ee=e=>({background:e}),F=e=>({"is-invalid":e});function te(e,_){if(e&1&&(a(0,"div",10),h(1,"i",11)(2,"input",12,0),a(4,"label",13),s(5),l(6,"translate"),r()(),a(7,"div",10),h(8,"i",14)(9,"input",15,1),a(11,"label",16),s(12),l(13,"translate"),r()()),e&2){let t=I();o(2),m("ngClass",f(8,F,t.form.controls.username.dirty&&t.form.controls.username.errors)),o(3),d(p(6,4,"login.label_username")),o(4),m("ngClass",f(10,F,t.form.controls.password.dirty&&t.form.controls.password.errors)),o(3),d(p(13,6,"login.label_password"))}}function ne(e,_){if(e&1&&(a(0,"p",7),s(1),l(2,"translate"),r(),a(3,"div",10),h(4,"i",17)(5,"input",18,2),a(7,"label",19),s(8),l(9,"translate"),r()()),e&2){let t=I();o(),d(p(2,3,"users.setup_2fa_enter_code")),o(4),m("ngClass",f(7,F,t.form.controls.otp.dirty&&t.form.controls.otp.errors)),o(3),d(p(9,5,"login.label_2fa_code"))}}function oe(e,_){e&1&&(a(0,"p",8)(1,"small"),s(2),l(3,"translate"),r()()),e&2&&(o(2),d(p(3,1,"login.invalid_credentials")))}function ie(e,_){e&1&&(a(0,"p",8)(1,"small"),s(2),l(3,"translate"),r()()),e&2&&(o(2),d(p(3,1,"login.message_invalid_2fa_code")))}var Ce=(()=>{class e{$auth=g(K);$router=g(W);$settings=g(J);passwordInput=v("password");usernameInput=v("username");otpInput=v("otp");form;backgroundStyle;invalidCredentials=!1;invalid2faCode=!1;twoFactorCodeRequired=!1;inProgress=!1;targetRoute;constructor(){}ngOnInit(){this.form=new q({username:new w(""),password:new w("")}),this.form.valueChanges.pipe(V(500)).subscribe(t=>{var n;let i=(n=this.passwordInput())==null?void 0:n.nativeElement.value;i&&i!==t.password&&this.form.controls.password.setValue(i)}),this.targetRoute=window.sessionStorage.getItem("target_route")||"",this.setBackground()}setBackground(){return y(this,null,function*(){if(this.$settings.settingsLoaded||(yield P(this.$settings.onSettingsLoaded)),this.$settings.env.customWallpaperHash){let t=this.$settings.env.customWallpaperHash?`${U.api.base}/auth/wallpaper/${this.$settings.env.customWallpaperHash}`:"/assets/snapshot.jpg";this.backgroundStyle=`url('${t}') center/cover`}})}onSubmit(){return y(this,null,function*(){var n,b,E;this.invalidCredentials=!1,this.invalid2faCode=!1,this.inProgress=!0;let t=(n=this.passwordInput())==null?void 0:n.nativeElement.value;t&&t!==this.form.get("password").value&&this.form.controls.password.setValue(t);let i=(b=this.usernameInput())==null?void 0:b.nativeElement.value;if(i&&i!==this.form.get("username").value&&this.form.controls.username.setValue(i),this.twoFactorCodeRequired){let u=(E=this.otpInput())==null?void 0:E.nativeElement.value;u&&u!==this.form.get("otp").value&&this.form.controls.username.setValue(u)}yield this.$auth.login(this.form.getRawValue()).then(()=>{this.$router.navigateByUrl(this.targetRoute),window.sessionStorage.removeItem("target_route")}).catch(u=>{u.status===412?(this.form.controls.otp?(this.form.controls.otp.setErrors(["Invalid Code"]),this.invalid2faCode=!0):this.form.addControl("otp",new w("",[x.required,x.minLength(6),x.maxLength(6)])),this.twoFactorCodeRequired=!0,setTimeout(()=>{document.getElementById("form-ota").focus()},100)):this.invalidCredentials=!0}),this.inProgress=!1})}static \u0275fac=function(i){return new(i||e)};static \u0275cmp=k({type:e,selectors:[["ng-component"]],viewQuery:function(i,n){i&1&&(C(n.passwordInput,X,5),C(n.usernameInput,Y,5),C(n.otpInput,Z,5)),i&2&&$(3)},decls:13,vars:12,consts:[["username",""],["password",""],["otp",""],[1,"login-container","d-flex","align-items-center","justify-content-center",3,"ngStyle"],[1,"card","card-body","mx-2","login-card"],["novalidate","",3,"ngSubmit","formGroup"],[1,"h4","text-center","mb-4"],[1,"text-center"],[1,"red-text"],["tabindex","3","type","submit",1,"btn","btn-primary",3,"disabled"],[1,"md-form"],[1,"fas","fa-fw","fa-user","prefix","grey-text"],["formControlName","username","type","text","id","form-username","autofocus","","autocomplete","username","autocapitalize","none","tabindex","1",1,"form-control","px-0",3,"ngClass"],["for","form-username"],[1,"fas","fa-fw","fa-lock","prefix","grey-text"],["formControlName","password","type","password","id","form-pass","autocomplete","current-password","tabindex","2",1,"form-control","px-0",3,"ngClass"],["for","form-pass"],[1,"fas","fa-fw","fa-key","prefix","grey-text"],["formControlName","otp","type","text","id","form-ota","autocomplete","one-time-code","autocapitalize","none","inputmode","numeric","pattern","[0-9]*","tabindex","1",1,"form-control","px-0",3,"ngClass"],["for","form-ota"]],template:function(i,n){i&1&&(a(0,"div",3)(1,"div",4)(2,"form",5),M("ngSubmit",function(){return n.onSubmit()}),a(3,"p",6),s(4,"Homebridge"),r(),S(5,te,14,12)(6,ne,10,9),a(7,"div",7),S(8,oe,4,3,"p",8)(9,ie,4,3,"p",8),a(10,"button",9),s(11),l(12,"translate"),r()()()()()),i&2&&(m("ngStyle",f(10,ee,n.backgroundStyle)),o(2),m("formGroup",n.form),o(3),c(n.twoFactorCodeRequired?-1:5),o(),c(n.twoFactorCodeRequired?6:-1),o(2),c(n.invalidCredentials?8:-1),o(),c(n.invalid2faCode?9:-1),o(),m("disabled",n.form.invalid),o(),L(" ",p(12,8,"login.button_login")," "))},dependencies:[R,H,G,N,O,T,D,j,Q,z,B,A],styles:[".login-container[_ngcontent-%COMP%]{background-color:#f4f4f4;background-size:cover;position:absolute;top:0;bottom:0;right:0;left:0}.login-card[_ngcontent-%COMP%]{max-width:500px;background-color:#ffffffe6}.login-card[_ngcontent-%COMP%] .form-control[_ngcontent-%COMP%]:focus{background-color:inherit!important}@media screen and (min-height: 800px){.login-card[_ngcontent-%COMP%]{margin-bottom:12em}}.login-logo[_ngcontent-%COMP%]{position:absolute;top:-35%;z-index:2000;max-width:450px}@media screen and (max-width: 450px){.login-logo[_ngcontent-%COMP%]{max-width:320px;top:-25%}}@media screen and (max-width: 320px){.login-logo[_ngcontent-%COMP%]{max-width:280px}}@media screen and (max-height: 450px){.login-logo[_ngcontent-%COMP%]{display:none}}"]})}return e})();export{Ce as a};
@@ -1 +0,0 @@
1
- import{T as ie,a as U,b as X,c as Y,f as te}from"./chunk-FAJ5V6VJ.js";import{a as ne}from"./chunk-JF5AT3NK.js";import{m as E,n as K,o as Q}from"./chunk-N4F42HDL.js";import{c as W,e as R,f as j,i as z,l as G,m as q,y as J}from"./chunk-YLEC7AUG.js";import{c as ee}from"./chunk-MW5FLUTC.js";import{b as Z}from"./chunk-YTJNIFE4.js";import{b as w}from"./chunk-675OFXLW.js";import{Bb as S,Cc as s,Dc as l,Ec as H,Lb as v,Mb as _,Rb as h,Tb as D,Ub as I,Vb as V,Wb as a,Xb as r,Yb as d,ac as B,bd as O,db as L,dc as f,ec as p,ib as n,na as g,oc as c,pc as u,qc as M,tc as k,ub as y,uc as T,vc as A,xa as x,xc as N,ya as C,yc as P}from"./chunk-CKNHTRCL.js";var oe=(()=>{class t{$activeModal=g(E);constructor(){}static \u0275fac=function(o){return new(o||t)};static \u0275cmp=y({type:t,selectors:[["ng-component"]],decls:33,vars:21,consts:[[1,"modal-content"],[1,"modal-header"],[1,"modal-title"],["type","button","data-dismiss","modal",1,"close",3,"click"],["aria-hidden","true"],[1,"modal-body"],[1,"text-center","mb-3"],[1,"fa","fa-fw","fa-question-circle-o","primary-text",2,"font-size","75px"],[1,"mb-0"],[1,"modal-footer","justify-content-between"],[1,"text-left"],[1,"text-center"],["type","button","data-dismiss","modal",1,"btn","btn-elegant",3,"click"],[1,"text-right"]],template:function(o,i){o&1&&(a(0,"div",0)(1,"form")(2,"div",1)(3,"h5",2),c(4),s(5,"translate"),r(),a(6,"button",3),s(7,"translate"),f("click",function(){return i.$activeModal.dismiss("Dismiss")}),a(8,"span",4),c(9,"\xD7"),r()()(),a(10,"div",5)(11,"div",6),d(12,"i",7),r(),a(13,"ul",8)(14,"li"),c(15),s(16,"translate"),r(),a(17,"li"),c(18),s(19,"translate"),r(),a(20,"li"),c(21),s(22,"translate"),r(),a(23,"li"),c(24),s(25,"translate"),r()()(),a(26,"div",9),d(27,"div",10),a(28,"div",11)(29,"button",12),f("click",function(){return i.$activeModal.dismiss("Dismiss")}),c(30),s(31,"translate"),r()(),d(32,"div",13),r()()()),o&2&&(n(4),u(l(5,7,"support.title")),n(2),v("aria-label",l(7,9,"form.button_close")),n(9),u(l(16,11,"accessories.support.list_1")),n(3),u(l(19,13,"accessories.support.list_2")),n(3),u(l(22,15,"accessories.support.list_3")),n(3),u(l(25,17,"accessories.support.list_4")),n(6),M(" ",l(31,19,"form.button_close")," "))},dependencies:[w],encapsulation:2})}return t})();var se=()=>({standalone:!0}),ae=(()=>{class t{$activeModal=g(E);roomName;constructor(){}static \u0275fac=function(o){return new(o||t)};static \u0275cmp=y({type:t,selectors:[["ng-component"]],inputs:{roomName:"roomName"},decls:30,vars:19,consts:[[1,"modal-content"],[1,"modal-header"],[1,"modal-title"],["type","button","data-dismiss","modal",1,"close",3,"click"],["aria-hidden","true"],[1,"modal-body"],[1,"text-center","mb-3"],[1,"fas","fa-fw","fa-folder-plus","primary-text",2,"font-size","75px"],[1,"list-group","list-group-box","mb-0"],[1,"list-group-item","d-flex","flex-column","flex-md-row","align-items-center"],["for","form-name",1,"mb-2","mb-md-0","w-100","w-md-50"],[1,"text-left","text-md-right","w-100","w-md-50"],["autocomplete","off","type","text","id","form-name","autofocus","",1,"form-control","custom-input",3,"ngModelChange","keyup.enter","ngModel","ngModelOptions"],[1,"modal-footer","justify-content-between"],[1,"text-left"],["type","button","data-dismiss","modal",1,"btn","btn-elegant",3,"click"],[1,"text-center"],[1,"text-right"],["type","button","data-dismiss","modal",1,"btn","btn-primary",3,"click","disabled"]],template:function(o,i){o&1&&(a(0,"div",0)(1,"form")(2,"div",1)(3,"h5",2),c(4),s(5,"translate"),r(),a(6,"button",3),s(7,"translate"),f("click",function(){return i.$activeModal.dismiss("Dismiss")}),a(8,"span",4),c(9,"\xD7"),r()()(),a(10,"div",5)(11,"div",6),d(12,"i",7),r(),a(13,"ul",8)(14,"li",9)(15,"label",10),c(16),s(17,"translate"),r(),a(18,"div",11)(19,"input",12),A("ngModelChange",function($){return T(i.roomName,$)||(i.roomName=$),$}),f("keyup.enter",function(){return i.$activeModal.close(i.roomName)}),r()()()()(),a(20,"div",13)(21,"div",14)(22,"button",15),f("click",function(){return i.$activeModal.dismiss("Dismiss")}),c(23),s(24,"translate"),r()(),d(25,"div",16),a(26,"div",17)(27,"button",18),f("click",function(){return i.$activeModal.close(i.roomName)}),c(28),s(29,"translate"),r()()()()()),o&2&&(n(4),u(l(5,8,"accessories.button_add_room")),n(2),v("aria-label",l(7,10,"form.button_close")),n(10),u(l(17,12,"accessories.room_name")),n(3),k("ngModel",i.roomName),_("ngModelOptions",N(18,se)),n(4),M(" ",l(24,14,"form.button_close")," "),n(4),_("disabled",!i.roomName),n(),M(" ",l(29,16,"form.button_save")," "))},dependencies:[J,q,W,R,j,G,z,w],encapsulation:2})}return t})();var re=(()=>{class t{constructor(){}static \u0275fac=function(o){return new(o||t)};static \u0275cmp=y({type:t,selectors:[["app-drag-here-placeholder"]],decls:5,vars:3,consts:[[1,"accessory-box"],[1,"fas","fa-fw","fa-arrow-alt-circle-down","accessory-icon"],[1,"accessory-label"]],template:function(o,i){o&1&&(a(0,"div",0),d(1,"i",1),a(2,"div",2),c(3),s(4,"translate"),r()()),o&2&&(n(3),u(l(4,1,"accessories.control.drag_here")))},dependencies:[w],styles:[".accessory-box[_ngcontent-%COMP%]{opacity:.2}"]})}return t})();var le=t=>({"cursor-move":t}),ce=t=>({link:t});function de(t,b){if(t&1&&(a(0,"div",0)(1,"div",18)(2,"h5",19),c(3),s(4,"translate"),r()()()),t&2){let e=p().$implicit,o=p(2);n(2),_("ngClass",P(4,le,!o.isMobile)),n(),M(" ",e.name==="Default Room"?l(4,2,"accessories.control.default_room"):e.name," ")}}function pe(t,b){if(t&1&&(a(0,"div",22),d(1,"app-accessory-tile",23),r()),t&2){let e=p().$implicit;n(),_("service",e)}}function me(t,b){if(t&1&&S(0,pe,2,1,"div",22),t&2){let e=b.$implicit,o=p(4);h(!o.hideHidden||!e.hidden?0:-1)}}function ue(t,b){if(t&1){let e=B();a(0,"div",20),A("dragulaModelChange",function(i){x(e);let m=p().$implicit;return T(m.services,i)||(m.services=i),C(i)}),I(1,me,1,1,null,null,D),d(3,"div",21)(4,"div",21)(5,"div",21)(6,"div",21)(7,"div",21)(8,"div",21)(9,"div",21)(10,"div",21)(11,"div",21)(12,"div",21)(13,"div",21)(14,"div",21)(15,"div",21)(16,"div",21)(17,"div",21),r()}if(t&2){let e=p().$implicit;_("dragula","services-bag"),k("dragulaModel",e.services),n(),V(e.services)}}function _e(t,b){if(t&1){let e=B();a(0,"div",24),A("dragulaModelChange",function(i){x(e);let m=p().$implicit;return T(m.services,i)||(m.services=i),C(i)}),d(1,"app-drag-here-placeholder",25),r()}if(t&2){let e=p().$implicit;_("dragula","services-bag"),k("dragulaModel",e.services)}}function fe(t,b){if(t&1&&(S(0,de,5,6,"div",0),a(1,"div",15),S(2,ue,18,2,"div",16)(3,_e,2,2,"div",17),r()),t&2){let e=b.$implicit,o=p(2);h(!o.isMobile||e.services.length?0:-1),n(2),h(e.services.length?2:-1),n(),h(!e.services.length&&!o.isMobile?3:-1)}}function ge(t,b){if(t&1){let e=B();a(0,"div",1)(1,"div",2)(2,"h3",3),c(3),s(4,"translate"),r()(),a(5,"div",4)(6,"div",5)(7,"button",6),s(8,"translate"),s(9,"translate"),f("click",function(){x(e);let i=p();return C(i.addRoom())}),d(10,"i",7),r()(),a(11,"div",5)(12,"button",6),s(13,"translate"),s(14,"translate"),s(15,"translate"),s(16,"translate"),f("click",function(){x(e);let i=p();return C(i.hideHidden=!i.hideHidden)}),d(17,"i",8),r()(),a(18,"div",5)(19,"button",9),s(20,"translate"),s(21,"translate"),f("click",function(){x(e);let i=p();return C(i.toggleLayoutLock())}),d(22,"i",10),r(),a(23,"button",9),s(24,"translate"),s(25,"translate"),f("click",function(){x(e);let i=p();return C(i.toggleLayoutLock())}),d(26,"i",11),r()(),a(27,"button",12),s(28,"translate"),f("click",function(){x(e);let i=p();return C(i.openSupport())}),d(29,"i",13),r()()(),a(30,"div",14),A("dragulaModelChange",function(i){x(e);let m=p();return T(m.$accessories.rooms,i)||(m.$accessories.rooms=i),C(i)}),I(31,fe,4,3,null,null,D),r()}if(t&2){let e=p();n(3),u(l(4,17,"accessories.title_accessories")),n(4),_("hidden",e.isMobile)("ngbTooltip",l(8,19,"accessories.button_add_room")),v("aria-label",l(9,21,"accessories.button_add_room")),n(5),_("hidden",e.isMobile)("ngbTooltip",e.hideHidden?l(13,23,"accessories.button_hidden_show"):l(14,25,"accessories.button_hidden_hide")),v("aria-label",e.hideHidden?l(15,27,"accessories.button_hidden_show"):l(16,29,"accessories.button_hidden_hide")),n(5),_("ngClass",e.hideHidden?"fa-eye-slash":"fa-eye"),n(2),_("disabled",!e.isMobile)("ngbTooltip",l(20,31,"form.button_unlock")),v("aria-label",l(21,33,"form.button_unlock")),n(4),_("disabled",e.isMobile)("ngbTooltip",l(24,35,"form.button_lock")),v("aria-label",l(25,37,"form.button_lock")),n(4),v("aria-label",l(28,39,"support.title")),n(3),_("dragula","rooms-bag"),k("dragulaModel",e.$accessories.rooms),n(),V(e.$accessories.rooms)}}function be(t,b){t&1&&(a(0,"p",32),c(1),s(2,"translate"),r()),t&2&&(n(),u(l(2,1,"accessories.settings_link")))}function ve(t,b){if(t&1&&(a(0,"div",0)(1,"div",26)(2,"h3",27),c(3),s(4,"translate"),r()(),a(5,"div",28)(6,"div",29)(7,"h5",30),c(8),s(9,"translate"),r(),d(10,"p",31),s(11,"translate"),S(12,be,3,3,"p",32),r()()()),t&2){let e=p();n(3),u(l(4,4,"accessories.title_accessories")),n(5),u(l(9,6,"accessories.control_disabled")),n(2),_("innerHTML",H(11,8,"accessories.message_must_use_insecure_mode",P(11,ce,e.linkInsecure)),L),n(2),h(e.$auth.user.admin?12:-1)}}var Qe=(()=>{class t{$auth=g(ee);dragulaService=g(U);$modal=g(K);$settings=g(Z);$md=g(ne);$accessories=g(te);isMobile=!1;hideHidden=!0;orderSubscription;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"></i></a>';constructor(){let e=this.dragulaService;this.isMobile=this.$md.detect.mobile(),e.createGroup("rooms-bag",{moves:(o,i,m)=>!this.isMobile&&m.classList.contains("drag-handle")}),e.createGroup("services-bag",{moves:o=>!this.isMobile&&!o.classList.contains("no-drag")}),this.orderSubscription=e.drop().subscribe(()=>{setTimeout(()=>{this.$accessories.saveLayout()})}),window.localStorage.getItem("accessories-layout-locked")&&(this.isMobile=!0)}ngOnInit(){this.$accessories.start()}addRoom(){this.$modal.open(ae,{size:"lg",backdrop:"static"}).result.then(e=>{!e||!e.length||this.$accessories.rooms.find(o=>o.name===e)||(this.$accessories.rooms.push({name:e,services:[]}),this.isMobile&&this.toggleLayoutLock())}).catch(()=>{})}toggleLayoutLock(){this.isMobile=!this.isMobile,this.isMobile?window.localStorage.setItem("accessories-layout-locked","yes"):window.localStorage.removeItem("accessories-layout-locked")}openSupport(){this.$modal.open(oe,{size:"lg",backdrop:"static"})}ngOnDestroy(){this.$accessories.stop(),this.orderSubscription.unsubscribe(),this.dragulaService.destroy("rooms-bag"),this.dragulaService.destroy("services-bag")}static \u0275fac=function(o){return new(o||t)};static \u0275cmp=y({type:t,selectors:[["app-accessories"]],decls:2,vars:2,consts:[[1,"row"],[1,"row","mb-3"],[1,"col-sm-6"],[1,"primary-text","m-0"],[1,"col-sm-6","text-right","d-none","d-sm-block"],["role","group",1,"btn-group"],["type","button","container","body","placement","bottom","openDelay","150","triggers","hover",1,"btn","btn-elegant","status-button","my-0",3,"click","hidden","ngbTooltip"],[1,"fas","fa-fw","fa-folder-plus"],[1,"fas","fa-fw",3,"ngClass"],["type","button","container","body","placement","bottom","openDelay","150","triggers","hover",1,"btn","btn-elegant","status-button","my-0",3,"click","disabled","ngbTooltip"],[1,"fas","fa-fw","fa-unlock"],[1,"fas","fa-fw","fa-lock"],["type","button",1,"btn","btn-elegant","status-button","my-0","mr-0",3,"click"],[1,"fa","fa-fw","fa-question-circle-o"],[3,"dragulaModelChange","dragula","dragulaModel"],[1,"row","mb-4"],[1,"col-md-12","d-flex","flex-wrap","justify-content-between","noselect","services-bag",3,"dragula","dragulaModel"],[1,"col-md-12","d-flex","flex-wrap","noselect",3,"dragula","dragulaModel"],[1,"col-md-12"],[1,"primary-text","drag-handle","room-title","m-0","mb-1","mb-sm-0",3,"ngClass"],[1,"col-md-12","d-flex","flex-wrap","justify-content-between","noselect","services-bag",3,"dragulaModelChange","dragula","dragulaModel"],[1,"accessory-box","invisible","py-0","my-0",2,"height","0 !important"],[1,"accessory-item","accessory-tab"],[3,"service"],[1,"col-md-12","d-flex","flex-wrap","noselect",3,"dragulaModelChange","dragula","dragulaModel"],[1,"no-drag"],[1,"col-12"],[1,"primary-text","m-0","mb-3"],[1,"col-12","text-center"],["role","alert",1,"alert","alert-warning","p-4"],[1,"mb-3","mt-0"],[1,"mb-0",3,"innerHTML"],[1,"mt-3","mb-0"]],template:function(o,i){o&1&&S(0,ge,33,41)(1,ve,13,13,"div",0),o&2&&(h(i.$settings.env.enableAccessories?0:-1),n(),h(i.$settings.env.enableAccessories?-1:1))},dependencies:[Q,O,Y,X,ie,re,w],styles:[".room-title[_ngcontent-%COMP%]{margin-left:10px}@media (max-width: 575px){.room-title[_ngcontent-%COMP%]{margin-left:7px}}.services-bag[_ngcontent-%COMP%]{min-height:170px}@media (max-width: 575px){.services-bag[_ngcontent-%COMP%]{min-height:initial}}.cursor-move[_ngcontent-%COMP%]{cursor:move}.gu-transit[_ngcontent-%COMP%] .manage-accessory-button[_ngcontent-%COMP%]{display:none}a[_ngcontent-%COMP%]:hover{text-decoration:none!important}"]})}return t})();export{ae as a,Qe as b};
@@ -1 +0,0 @@
1
- import{m as X}from"./chunk-N4F42HDL.js";import{e as q,l as G,r as H,s as J,t as K,y as Q}from"./chunk-YLEC7AUG.js";import{d as te}from"./chunk-T3GI7KUT.js";import{h as ee,k as ie}from"./chunk-3NBOT4LS.js";import{a as Y,b as Z}from"./chunk-675OFXLW.js";import{Ac as W,Bb as x,Cc as d,Dc as m,Lb as $,Mb as h,Rb as u,Tb as k,Ub as E,Vb as T,Wb as a,Xb as o,Yb as B,a as M,ac as S,b as V,bd as z,dc as b,ec as c,h as F,ib as s,na as w,oc as r,pc as g,qc as I,rc as L,tc as N,ub as U,uc as P,vc as j,w as A,xa as v,ya as C,zc as O}from"./chunk-CKNHTRCL.js";var se=(t,l)=>({"btn-danger":t,"btn-elegant":l}),ae=(t,l,e)=>({"fa-trash":t,"fa-undo":l,"fa-spinner fa-pulse":e});function oe(t,l){t&1&&(a(0,"div",13),B(1,"i",14),o(),a(2,"p",15),r(3),d(4,"translate"),o()),t&2&&(s(3),g(m(4,1,"reset.no_accessories")))}function re(t,l){if(t&1&&(a(0,"option",25),r(1),o()),t&2){let e=l.$implicit;h("value",e._id),s(),L("",e.name," (",e._username,")")}}function le(t,l){if(t&1){let e=S();a(0,"li",21),r(1),d(2,"translate"),o(),a(3,"li",19)(4,"label",22),r(5),d(6,"translate"),o(),a(7,"div",23)(8,"select",24),j("ngModelChange",function(i){v(e);let _=c(2);return P(_.selectedBridge,i)||(_.selectedBridge=i),C(i)}),b("change",function(i){v(e);let _=c(2);return C(_.onBridgeChange(i.target.value))}),E(9,re,2,3,"option",25,k),o()()()}if(t&2){let e=c(2);s(),g(m(2,3,"form.label.changes_kept")),s(4),g(m(6,5,"reset.accessory_ind.bridge")),s(3),N("ngModel",e.selectedBridge),s(),T(e.pairings)}}function ce(t,l){if(t&1&&(a(0,"li",19)(1,"label",26),r(2),d(3,"translate"),o(),a(4,"div",27),r(5),o()()),t&2){let e=c(2);s(2),g(m(3,2,"reset.accessory_ind.bridge")),s(3),I(" ",e.getCurrentlySelectedBridge()," ")}}function de(t,l){if(t&1){let e=S();a(0,"li",20)(1,"span"),r(2),B(3,"br"),a(4,"small")(5,"span",28),r(6),o()()(),a(7,"button",29),d(8,"translate"),b("click",function(){let i=v(e).$implicit,_=c(2);return C(_.toggleList(i.UUID,i.$cacheFile))}),B(9,"i",30),o()()}if(t&2){let e=l.$implicit,n=c(2);s(2),I(" ",e.displayName,""),s(4),g(e.UUID),s(),h("disabled",n.clicked)("ngClass",O(8,se,!n.isInList(e.UUID,e.$cacheFile),n.isInList(e.UUID,e.$cacheFile))),$("aria-label",m(8,6,"form.button_delete")),s(2),h("ngClass",W(11,ae,!n.isInList(e.UUID,e.$cacheFile),n.isInList(e.UUID,e.$cacheFile)&&!n.clicked,n.isInList(e.UUID,e.$cacheFile)&&n.clicked))}}function me(t,l){if(t&1&&(a(0,"div",13),B(1,"i",16),o(),a(2,"ul",17)(3,"li"),r(4),d(5,"translate"),o(),a(6,"li"),r(7),d(8,"translate"),o(),a(9,"li"),r(10),d(11,"translate"),o()(),a(12,"ul",18),x(13,le,11,7)(14,ce,6,4,"li",19),E(15,de,10,15,"li",20,k),o()),t&2){let e=c();s(4),g(m(5,5,"reset.accessory_ind.list_1")),s(3),g(m(8,7,"reset.accessory_ind.list_2")),s(3),g(m(11,9,"reset.accessory_ind.list_3")),s(3),u(e.pairings.length>1?13:-1),s(),u(e.pairings.length===1?14:-1),s(),T(e.selectedBridgeAccessories)}}function pe(t,l){if(t&1){let e=S();a(0,"button",31),b("click",function(){v(e);let i=c();return C(i.$activeModal.dismiss("Dismiss"))}),r(1),d(2,"translate"),o()}if(t&2){let e=c();h("disabled",e.clicked),s(),I(" ",m(2,2,"form.button_close")," ")}}function _e(t,l){if(t&1){let e=S();a(0,"button",32),b("click",function(){v(e);let i=c();return C(i.$activeModal.dismiss("Dismiss"))}),r(1),d(2,"translate"),o()}t&2&&(s(),I(" ",m(2,1,"form.button_close")," "))}function ue(t,l){if(t&1&&r(0),t&2){let e=c(3);I(" (",e.toDelete.length,") ")}}function ge(t,l){if(t&1&&(r(0),d(1,"translate"),x(2,ue,1,1)),t&2){let e=c(2);I(" ",m(1,2,"form.button_remove")," "),s(2),u(e.toDelete.length>0?2:-1)}}function xe(t,l){t&1&&B(0,"i",34)}function fe(t,l){if(t&1){let e=S();a(0,"button",33),b("click",function(){v(e);let i=c();return C(i.removeAccessories())}),x(1,ge,3,4)(2,xe,1,0,"i",34),o()}if(t&2){let e=c();h("disabled",!e.toDelete.length||e.clicked),s(),u(e.clicked?-1:1),s(),u(e.clicked?2:-1)}}var Te=(()=>{class t{$activeModal=w(X);$api=w(ie);$router=w(te);$toastr=w(ee);$translate=w(Y);pairings=[];selectedBridge="";clicked=!1;selectedBridgeAccessories=[];accessoriesExist=!1;toDelete=[];constructor(){}ngOnInit(){this.loadCachedAccessories()}loadCachedAccessories(){return F(this,null,function*(){var e;try{let[n,i]=yield Promise.all([A(this.$api.get("/server/cached-accessories")),A(this.$api.get("/server/pairings"))]),_=new Map(i.map(p=>[p._id,V(M({},p),{accessories:[]})]));n.sort((p,f)=>p.displayName.localeCompare(f.displayName)).forEach(p=>{var D,R;let f=i.find(ne=>ne._main),y=((R=(D=p.$cacheFile)==null?void 0:D.split("."))==null?void 0:R[1])||f._id;(!this.selectedBridge||this.selectedBridge===y)&&(_.has(y)||_.set(y,{_id:y,_username:y.match(/.{1,2}/g).join(":"),name:this.$translate.instant("reset.accessory_ind.unknown"),accessories:[]}),_.get(y).accessories.push(p))}),this.pairings=Array.from(_.values()).filter(p=>p.accessories.length>0).sort((p,f)=>p._main&&!f._main?-1:!p._main&&f._main?1:p.name.localeCompare(f.name)),this.selectedBridge=this.selectedBridge||((e=this.pairings[0])==null?void 0:e._id),this.selectedBridge&&(this.accessoriesExist=!0,this.selectedBridgeAccessories=this.pairings[0].accessories)}catch(n){console.error(n),this.$toastr.error(this.$translate.instant("reset.error_message"),this.$translate.instant("toast.title_error")),this.$activeModal.close()}})}onBridgeChange(e){var n;this.selectedBridge=e,this.selectedBridgeAccessories=(n=this.pairings.find(i=>i._id===this.selectedBridge))==null?void 0:n.accessories}getCurrentlySelectedBridge(){let e=this.pairings.find(n=>n._id===this.selectedBridge);return`${e.name} - ${e._username}`}toggleList(e,n){this.toDelete.some(i=>i.uuid===e&&i.cacheFile===n)?this.toDelete=this.toDelete.filter(i=>i.uuid!==e&&i.cacheFile!==n):this.toDelete.push({cacheFile:n,uuid:e})}isInList(e,n){return this.toDelete.some(i=>i.uuid===e&&i.cacheFile===n)}removeAccessories(){return this.clicked=!0,this.$api.delete("/server/cached-accessories",{body:this.toDelete}).subscribe({next:()=>{this.$toastr.success(this.$translate.instant("reset.accessory_ind.done"),this.$translate.instant("toast.title_success")),this.$activeModal.close(),this.$router.navigate(["/restart"],{queryParams:{restarting:!0}})},error:e=>{this.clicked=!1,console.error(e),this.$toastr.error(this.$translate.instant("reset.accessory_ind.fail"),this.$translate.instant("toast.title_error"))}})}static \u0275fac=function(n){return new(n||t)};static \u0275cmp=U({type:t,selectors:[["ng-component"]],inputs:{selectedBridge:"selectedBridge"},decls:19,vars:12,consts:[[1,"modal-content"],[1,"modal-header"],[1,"modal-title"],["type","button","data-dismiss","modal",1,"close",3,"click","disabled"],["aria-hidden","true"],[1,"modal-body"],[1,"modal-footer","justify-content-between"],[1,"text-left"],["type","button","data-dismiss","modal",1,"btn","btn-elegant",3,"disabled"],[1,"text-center"],["type","button","data-dismiss","modal",1,"btn","btn-elegant"],[1,"text-right"],["type","button","data-dismiss","modal",1,"btn","btn-danger",3,"disabled"],[1,"text-center","mb-3"],[1,"fas","fa-fw","fa-circle-check","primary-text",2,"font-size","75px"],[1,"mb-0","text-center"],[1,"fas","fa-fw","fa-network-wired","primary-text",2,"font-size","75px"],[1,"mb-3"],[1,"list-group","list-group-box","mb-0"],[1,"list-group-item","d-flex","flex-column","flex-md-row","align-items-center"],[1,"list-group-item","d-flex","justify-content-between","align-items-center"],[1,"list-group-item","text-center","grey-text","small"],["for","bridgeSelect",1,"mb-2","mb-md-0","w-100","w-md-50"],[1,"text-left","text-md-right","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-left","text-md-right","w-100","w-md-50","grey-text","text-monospace"],[1,"text-monospace","grey-text"],[1,"btn","btn-danger","m-0","ml-3",3,"click","disabled","ngClass"],[1,"fas","fa-fw",3,"ngClass"],["type","button","data-dismiss","modal",1,"btn","btn-elegant",3,"click","disabled"],["type","button","data-dismiss","modal",1,"btn","btn-elegant",3,"click"],["type","button","data-dismiss","modal",1,"btn","btn-danger",3,"click","disabled"],[1,"fas","fa-fw","fa-spinner","fa-pulse"]],template:function(n,i){n&1&&(a(0,"div",0)(1,"div",1)(2,"h5",2),r(3),d(4,"translate"),o(),a(5,"button",3),d(6,"translate"),b("click",function(){return i.$activeModal.dismiss("Dismiss")}),a(7,"span",4),r(8,"\xD7"),o()()(),a(9,"div",5),x(10,oe,5,3)(11,me,17,11),o(),a(12,"div",6)(13,"div",7),x(14,pe,3,4,"button",8),o(),a(15,"div",9),x(16,_e,3,3,"button",10),o(),a(17,"div",11),x(18,fe,3,3,"button",12),o()()()),n&2&&(s(3),g(m(4,8,"reset.accessory_ind.title")),s(2),h("disabled",i.clicked),$("aria-label",m(6,10,"form.button_close")),s(5),u(i.accessoriesExist?-1:10),s(),u(i.accessoriesExist?11:-1),s(3),u(i.accessoriesExist?14:-1),s(2),u(i.accessoriesExist?-1:16),s(2),u(i.accessoriesExist?18:-1))},dependencies:[z,Z,Q,J,K,H,q,G],encapsulation:2})}return t})();export{Te as a};