homebridge-config-ui-x 5.0.0-beta.17 → 5.0.0-beta.19
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +44 -8
- package/dist/bin/hb-service.js +1 -1
- package/dist/bin/hb-service.js.map +1 -1
- package/dist/modules/plugins/plugins.service.js +4 -1
- package/dist/modules/plugins/plugins.service.js.map +1 -1
- package/package.json +21 -16
- package/public/assets/hap-icons/valve-generic.svg +2 -2
- package/public/assets/hap-icons/valve-irrigation.svg +4 -4
- package/public/assets/hap-icons/valve-showerhead.svg +13 -0
- package/public/assets/hap-icons/valve-waterfaucet.svg +7 -0
- package/public/chunk-2FONRXNS.js +1 -0
- package/public/{chunk-JNR4NFBN.js → chunk-2NGWCZ7G.js} +1 -1
- package/public/{chunk-3X5XS2GD.js → chunk-3EZNSBTT.js} +1 -1
- package/public/chunk-4F545BYA.js +6 -0
- package/public/{chunk-3U4CGZIH.js → chunk-5R3LEKWW.js} +1 -1
- package/public/{chunk-TVL46Z6J.js → chunk-6BFW4QGM.js} +1 -1
- package/public/chunk-6TBAEXXH.js +1 -0
- package/public/{chunk-GPSZWI6A.js → chunk-6UXA5CDA.js} +1 -1
- package/public/chunk-6VNED2B7.js +1 -0
- package/public/{chunk-ENEUSDNM.js → chunk-7H6DGXSK.js} +1 -1
- package/public/chunk-ABMCCQFK.js +1 -0
- package/public/{chunk-63XMAKXM.js → chunk-AQ3L5HNX.js} +1 -1
- package/public/{chunk-FS5PEVUD.js → chunk-B7UYTZXL.js} +1 -1
- package/public/chunk-BBUNHZZ2.js +1 -0
- package/public/{chunk-6LC56BB2.js → chunk-BHRTYERJ.js} +1 -1
- package/public/{chunk-EOXKG2LG.js → chunk-BNFAGA2J.js} +1 -1
- package/public/chunk-C2OH5ZWH.js +1 -0
- package/public/{chunk-OHVZQ3PT.js → chunk-CAAIHLOW.js} +1 -1
- package/public/{chunk-64IHA4FC.js → chunk-CIBCOHRI.js} +1 -1
- package/public/{chunk-TKQHVRJM.js → chunk-CLZKKYED.js} +1 -1
- package/public/chunk-CSV74HQ4.js +1 -0
- package/public/chunk-DGXFIYFL.js +7 -0
- package/public/chunk-DICSCOX4.js +1 -0
- package/public/{chunk-7A7LGGLW.js → chunk-DOTDPU6I.js} +1 -1
- package/public/{chunk-NGW5QYCP.js → chunk-DOTHLAFP.js} +1 -1
- package/public/chunk-FS7AUYFB.js +1 -0
- package/public/{chunk-6T627TGJ.js → chunk-GNCZMUYC.js} +1 -1
- package/public/{chunk-IRGLFC77.js → chunk-GRKWTRPO.js} +1 -1
- package/public/chunk-H42YQB2K.js +1 -0
- package/public/{chunk-WFMX2K5O.js → chunk-H7QNI4SL.js} +1 -1
- package/public/{chunk-5PPIFCVN.js → chunk-I6JQZB5O.js} +1 -1
- package/public/{chunk-KCZAAXJW.js → chunk-J7PFU54S.js} +1 -1
- package/public/chunk-JYQW2TF2.js +1 -0
- package/public/{chunk-MAQWVLGF.js → chunk-JYSWXJEM.js} +1 -1
- package/public/{chunk-SHHUZA33.js → chunk-KGKHFXTV.js} +1 -1
- package/public/{chunk-ZWPSPZX2.js → chunk-KKLXPAWX.js} +1 -1
- package/public/{chunk-DPWWPEH7.js → chunk-KUSRTUPV.js} +1 -1
- package/public/{chunk-SLIBOJ4D.js → chunk-L44VK4MX.js} +1 -1
- package/public/{chunk-IK23UVWP.js → chunk-LHHSRBQN.js} +1 -1
- package/public/chunk-M5RQZ44G.js +1 -0
- package/public/chunk-MRFSUELJ.js +1 -0
- package/public/{chunk-23SC6OTA.js → chunk-MXGYFXAQ.js} +1 -1
- package/public/chunk-NA3KDDIG.js +1 -0
- package/public/{chunk-X3WXF4QL.js → chunk-NFM5TL2D.js} +1 -1
- package/public/{chunk-RJ3W3SKJ.js → chunk-NSNJSM3H.js} +1 -1
- package/public/{chunk-WYHLVQUV.js → chunk-O62BQ7X6.js} +1 -1
- package/public/chunk-OAFAQ3O5.js +1 -0
- package/public/{chunk-O7NQNFEF.js → chunk-OIU3EPA6.js} +1 -1
- package/public/{chunk-AOWN5XN4.js → chunk-OLI7NXK6.js} +1 -1
- package/public/{chunk-T2HX34UO.js → chunk-OLUE6FKW.js} +1 -1
- package/public/{chunk-CNALPQMI.js → chunk-PBQ7WARI.js} +1 -1
- package/public/{chunk-MLA3CVFN.js → chunk-PEPJJ2S2.js} +1 -1
- package/public/chunk-PKWCYS5H.js +1 -0
- package/public/chunk-PNDAULNN.js +1 -0
- package/public/chunk-PZ4AQXXH.js +1 -0
- package/public/{chunk-RBDXIYQQ.js → chunk-Q2PBTNVX.js} +1 -1
- package/public/{chunk-FLUSPBPU.js → chunk-Q7ULBWII.js} +1 -1
- package/public/chunk-QNF4CL6Z.js +1 -0
- package/public/{chunk-4TULJPPN.js → chunk-QRCM4ROA.js} +1 -1
- package/public/{chunk-7LWT67IC.js → chunk-RC3EKF6L.js} +1 -1
- package/public/chunk-RSJZPDIB.js +1 -0
- package/public/chunk-S7HHJZJG.js +1 -0
- package/public/{chunk-RUR5SLUK.js → chunk-SG7JRJFU.js} +1 -1
- package/public/chunk-SLORZQP7.js +1 -0
- package/public/{chunk-MO6NBKKU.js → chunk-T5OJYFIY.js} +1 -1
- package/public/{chunk-ZYYW5TAU.js → chunk-TAQPTNH3.js} +1 -1
- package/public/{chunk-Y4Q7QEO5.js → chunk-TLTUEKJ3.js} +1 -1
- package/public/chunk-TZVL2MQA.js +1 -0
- package/public/{chunk-DCVSB5TS.js → chunk-UKDRSQGK.js} +1 -1
- package/public/{chunk-KTW5C5OW.js → chunk-UKMABQF7.js} +1 -1
- package/public/{chunk-5XVPFQGJ.js → chunk-UQGUDBNN.js} +1 -1
- package/public/chunk-V6L575MT.js +1 -0
- package/public/{chunk-FGUBIKM4.js → chunk-VY4T3ANP.js} +1 -1
- package/public/chunk-W5V5ZZ2E.js +1 -0
- package/public/chunk-WFNGQHXX.js +1 -0
- package/public/chunk-XVS3HSWR.js +1 -0
- package/public/{chunk-6HBV2ISU.js → chunk-YWPSQFVI.js} +1 -1
- package/public/{chunk-S4MRBFHA.js → chunk-Z2WU6CI5.js} +1 -1
- package/public/{chunk-3UALBXOK.js → chunk-ZBISXPRT.js} +1 -1
- package/public/chunk-ZC3HEO3K.js +1 -0
- package/public/{chunk-365YECXT.js → chunk-ZEWKZT52.js} +1 -1
- package/public/index.html +1 -1
- package/public/main-2LOLR6YW.js +1 -0
- package/public/chunk-2BGPGGYD.js +0 -1
- package/public/chunk-4CCYVRCF.js +0 -1
- package/public/chunk-4RNBU3VW.js +0 -1
- package/public/chunk-543TBOCI.js +0 -1
- package/public/chunk-57BF34CN.js +0 -1
- package/public/chunk-5X6YZZ4Y.js +0 -1
- package/public/chunk-7Y43GPTE.js +0 -1
- package/public/chunk-BPOLCGDU.js +0 -1
- package/public/chunk-DCZ5JR2G.js +0 -1
- package/public/chunk-DF55XFMJ.js +0 -1
- package/public/chunk-E5UG6JK3.js +0 -1
- package/public/chunk-ESPZTQEE.js +0 -1
- package/public/chunk-FZHTR526.js +0 -1
- package/public/chunk-G43POB7Z.js +0 -1
- package/public/chunk-KKSO2HY6.js +0 -1
- package/public/chunk-N7JBAWYM.js +0 -7
- package/public/chunk-OURIKF5N.js +0 -1
- package/public/chunk-POWTBOBI.js +0 -1
- package/public/chunk-Q26XGS2B.js +0 -1
- package/public/chunk-QCVYCZ4W.js +0 -1
- package/public/chunk-RAXZ2SF5.js +0 -1
- package/public/chunk-RL7EFFVY.js +0 -1
- package/public/chunk-SE4FUIH2.js +0 -1
- package/public/chunk-TPI5UJRN.js +0 -1
- package/public/chunk-VGIYOOUW.js +0 -1
- package/public/chunk-WRHGUSTU.js +0 -1
- package/public/chunk-WXTCD4TR.js +0 -1
- package/public/chunk-YEGQBMEO.js +0 -1
- package/public/chunk-YKCV4SM3.js +0 -1
- package/public/chunk-YLB3DTWS.js +0 -6
- package/public/main-JTPPMUKD.js +0 -1
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{a as b}from"./chunk-
|
|
1
|
+
import{a as b}from"./chunk-VY4T3ANP.js";import{a as p,b as w}from"./chunk-Q2PBTNVX.js";import{a as d}from"./chunk-OLI7NXK6.js";import{M as i,g as o,ha as m,n,na as h}from"./chunk-DGXFIYFL.js";var c=o(p(),1),a=o(w(),1),l=o(b(),1);var v=(()=>{class t{$ws=h(d);term;io;fitAddon;webLinksAddon;resize;elementResize;destroyTerminal(){this.io.end(),this.term.dispose(),this.resize.complete(),this.elementResize&&this.elementResize.complete()}startTerminal(r,s={},f){this.elementResize=f,this.io=this.$ws.connectToNamespace("platform-tools/terminal"),this.term=new c.Terminal(s),setTimeout(()=>{this.term.loadAddon(this.fitAddon),this.term.loadAddon(this.webLinksAddon)}),this.fitAddon=new a.FitAddon,this.webLinksAddon=new l.WebLinksAddon,this.resize=new n,this.term.open(r.nativeElement),setTimeout(()=>{this.fitAddon.activate(this.term),this.fitAddon.fit()}),this.io.connected.pipe(i(200)).subscribe(()=>{this.startSession()}),this.io.socket.on("disconnect",()=>{this.term.write(`
|
|
2
2
|
\r
|
|
3
3
|
\rTerminal disconnected. Is the server running?
|
|
4
4
|
\r
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{b as S}from"./chunk-
|
|
1
|
+
import{b as S}from"./chunk-UKMABQF7.js";import{Bb as v,Bc as i,Cc as n,Lb as o,Mb as b,Rb as f,Wb as t,Xb as a,Yb as p,ad as g,cc as h,ib as e,nc as r,oc as d,pc as l,ub as x}from"./chunk-DGXFIYFL.js";function B(s,w){s&1&&(t(0,"ul",6)(1,"li",9)(2,"span",10),r(3),i(4,"translate"),p(5,"br"),t(6,"small",11),r(7),i(8,"translate"),a()(),t(9,"a",12),i(10,"translate"),p(11,"i",13),a()(),t(12,"li",9)(13,"span",10),r(14),i(15,"translate"),p(16,"br"),t(17,"small",11),r(18),i(19,"translate"),a()(),t(20,"a",14),i(21,"translate"),p(22,"i",13),a()(),t(23,"li",9)(24,"span",10),r(25),i(26,"translate"),p(27,"br"),t(28,"small",11),r(29),i(30,"translate"),a()(),t(31,"a",15),i(32,"translate"),p(33,"i",13),a()(),t(34,"li",9)(35,"span",10),r(36),i(37,"translate"),p(38,"br"),t(39,"small",11),r(40),i(41,"translate"),a()(),t(42,"a",16),i(43,"translate"),p(44,"i",13),a()()()),s&2&&(e(3),l(" ",n(4,12,"support.links.documentation"),""),e(4),d(n(8,14,"support.links.documentation_sub")),e(2),o("aria-label",n(10,16,"support.links.documentation")),e(5),l(" ",n(15,18,"support.links.issue"),""),e(4),d(n(19,20,"support.links.issue_sub")),e(2),o("aria-label",n(21,22,"support.links.issue")),e(5),l(" ",n(26,24,"support.links.discord"),""),e(4),d(n(30,26,"support.links.discord_sub")),e(2),o("aria-label",n(32,28,"support.links.discord")),e(5),l(" ",n(37,30,"support.links.reddit"),""),e(4),d(n(41,32,"support.links.reddit_sub")),e(2),o("aria-label",n(43,34,"support.links.reddit")))}function k(s,w){s&1&&(t(0,"ul",8)(1,"li",9)(2,"span",10),r(3),i(4,"translate"),p(5,"br"),t(6,"small",11),r(7),i(8,"translate"),a()(),t(9,"a",17),i(10,"translate"),p(11,"i",13),a()(),t(12,"li",9)(13,"span",10),r(14),i(15,"translate"),p(16,"br"),t(17,"small",11),r(18),i(19,"translate"),a()(),t(20,"a",18),i(21,"translate"),p(22,"i",13),a()(),t(23,"li",9)(24,"span",10),r(25),i(26,"translate"),p(27,"br"),t(28,"small",11),r(29),i(30,"translate"),a()(),t(31,"a",19),i(32,"translate"),p(33,"i",13),a()(),t(34,"li",9)(35,"span",10),r(36),i(37,"translate"),p(38,"br"),t(39,"small",11),r(40),i(41,"translate"),a()(),t(42,"a",20),i(43,"translate"),p(44,"i",13),a()(),t(45,"li",9)(46,"span",10),r(47),i(48,"translate"),p(49,"br"),t(50,"small",11),r(51),i(52,"translate"),a()(),t(53,"a",20),i(54,"translate"),p(55,"i",13),a()()()),s&2&&(e(3),l(" ",n(4,15,"support.dev.item_swagger"),""),e(4),l(" ",n(8,17,"support.dev.item_swagger_sub")," "),e(2),o("aria-label",n(10,19,"support.dev.item_swagger")),e(5),l(" ",n(15,21,"support.dev.api"),""),e(4),d(n(19,23,"support.dev.api_sub")),e(2),o("aria-label",n(21,25,"support.dev.api")),e(5),l(" ",n(26,27,"support.dev.api_hap"),""),e(4),d(n(30,29,"support.dev.api_hap_sub")),e(2),o("aria-label",n(32,31,"support.dev.api_hap")),e(5),l(" ",n(37,33,"support.dev.template"),""),e(4),l(" ",n(41,35,"support.dev.template_sub")," "),e(2),o("aria-label",n(43,37,"support.dev.template")),e(5),l(" ",n(48,39,"support.dev.verified"),""),e(4),d(n(52,41,"support.dev.verified_sub")),e(2),o("aria-label",n(54,43,"support.dev.verified")))}var C=(()=>{class s{showFields={general:!0,dev:!0};constructor(){}toggleSection(u){this.showFields[u]=!this.showFields[u]}static \u0275fac=function(c){return new(c||s)};static \u0275cmp=x({type:s,selectors:[["ng-component"]],decls:18,vars:17,consts:[[1,"d-flex","justify-content-between"],[1,"primary-text","m-0"],[1,"mb-4"],["role","button","tabindex","0",1,"mt-3","hover-pointer",3,"click"],[1,"primary-text"],[1,"fa","fa-fw",3,"ngClass"],["id","fieldsGeneral",1,"list-group","list-group-box","mt-2","mx-0"],[1,"pb-3"],["id","fieldsDev",1,"list-group","list-group-box","mt-2","mx-0"],[1,"list-group-item","d-flex","justify-content-between","align-items-center"],[1,"pr-2"],[1,"grey-text","pr-2"],["href","https://github.com/homebridge/homebridge/wiki","target","_blank","rel","noopener noreferrer",1,"btn","btn-primary","waves-effect","m-0",2,"min-width","50px"],[1,"fas","fa-fw","fa-external-link-alt"],["href","https://github.com/homebridge/homebridge-config-ui-x/issues/new/choose","target","_blank","rel","noopener noreferrer",1,"btn","btn-primary","waves-effect","m-0",2,"min-width","50px"],["href","https://discord.gg/C87Pvq3","target","_blank","rel","noopener noreferrer",1,"btn","btn-primary","waves-effect","m-0",2,"min-width","50px"],["href","https://www.reddit.com/r/homebridge/","target","_blank","rel","noopener noreferrer",1,"btn","btn-primary","waves-effect","m-0",2,"min-width","50px"],["href","/swagger","target","_blank","rel","noopener noreferrer",1,"btn","btn-primary","waves-effect","m-0",2,"min-width","50px"],["href","https://developers.homebridge.io/#/","target","_blank","rel","noopener noreferrer",1,"btn","btn-primary","waves-effect","m-0",2,"min-width","50px"],["href","https://developers.homebridge.io/HAP-NodeJS/","target","_blank","rel","noopener noreferrer",1,"btn","btn-primary","waves-effect","m-0",2,"min-width","50px"],["href","https://github.com/homebridge/homebridge-plugin-template","target","_blank","rel","noopener noreferrer",1,"btn","btn-primary","waves-effect","m-0",2,"min-width","50px"]],template:function(c,m){c&1&&(t(0,"div",0)(1,"h3",1),r(2),i(3,"translate"),a()(),t(4,"div",2)(5,"div",3),h("click",function(){return m.toggleSection("general")}),t(6,"h5",4),p(7,"i",5),r(8),i(9,"translate"),a()(),v(10,B,45,36,"ul",6),a(),t(11,"div",7)(12,"div",3),h("click",function(){return m.toggleSection("dev")}),t(13,"h5",4),p(14,"i",5),r(15),i(16,"translate"),a()(),v(17,k,56,45,"ul",8),a()),c&2&&(e(2),d(n(3,11,"support.title")),e(3),o("aria-expanded",m.showFields.general?"true":"false")("aria-controls","fieldsGeneral"),e(2),b("ngClass",m.showFields.general?"fa-chevron-down":"fa-chevron-right"),e(),l(" ",n(9,13,"support.links.title")," "),e(2),f(m.showFields.general?10:-1),e(2),o("aria-expanded",m.showFields.dev?"true":"false")("aria-controls","fieldsDev"),e(2),b("ngClass",m.showFields.dev?"fa-chevron-down":"fa-chevron-right"),e(),l(" ",n(16,15,"support.dev.title")," "),e(2),f(m.showFields.dev?17:-1))},dependencies:[g,S],encapsulation:2})}return s})();export{C as a};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a as w}from"./chunk-
|
|
1
|
+
import{a as w}from"./chunk-OLI7NXK6.js";import{d as T}from"./chunk-CLZKKYED.js";import{b as S}from"./chunk-LHHSRBQN.js";import{b as _,j as y}from"./chunk-DICSCOX4.js";import{a as g,b as $}from"./chunk-UKMABQF7.js";import{Bb as h,Bc as m,Cc as p,Rb as l,Wb as r,Xb as n,Yb as f,dc as v,ib as i,na as a,nc as s,oc as o,ub as x}from"./chunk-DGXFIYFL.js";function C(t,u){t&1&&(r(0,"p",7),s(1),m(2,"translate"),n()),t&2&&(i(),o(p(2,1,"restart.please_wait_while_server_restarts")))}function k(t,u){if(t&1&&(r(0,"div",8),s(1),n()),t&2){let e=v();i(),o(e.error)}}function b(t,u){t&1&&(r(0,"div",9)(1,"div",10),f(2,"i",11),n()())}function E(t,u){t&1&&(r(0,"div")(1,"div",12),s(2),m(3,"translate"),n()()),t&2&&(i(2),o(p(3,1,"platform.linux.long_time")))}var A=(()=>{class t{$api=a(_);$router=a(T);$settings=a(S);$toastr=a(y);$translate=a(g);$ws=a(w);checkTimeout;checkDelay;resp={};timeout=!1;error=!1;io;ngOnInit(){this.io=this.$ws.connectToNamespace("status"),this.io.connected.subscribe(()=>{this.io.socket.emit("monitor-server-status"),this.$settings.getAppSettings().catch()}),this.$api.put("/platform-tools/linux/restart-host",{}).subscribe({next:e=>{this.resp=e,this.checkIfServerUp()},error:e=>{console.error(e),this.error=this.$translate.instant("platform.linux.server_restart_error"),this.$toastr.error(this.$translate.instant("platform.linux.server_restart_error"),this.$translate.instant("toast.title_error"))}})}checkIfServerUp(){this.checkDelay=setTimeout(()=>{this.io.socket.on("homebridge-status",e=>{(e.status==="up"||e.status==="pending")&&(this.$toastr.success(this.$translate.instant("platform.linux.server_restarted"),this.$translate.instant("toast.title_success")),this.$router.navigate(["/"]))})},3e4),this.checkTimeout=setTimeout(()=>{this.$toastr.warning(this.$translate.instant("platform.linux.server_taking_long_time"),this.$translate.instant("toast.title_warning"),{timeOut:1e4}),this.timeout=!0},12e4)}ngOnDestroy(){this.io.end(),clearTimeout(this.checkDelay),clearTimeout(this.checkTimeout)}static \u0275fac=function(c){return new(c||t)};static \u0275cmp=x({type:t,selectors:[["ng-component"]],decls:15,vars:10,consts:[[1,"d-flex","justify-content-between"],[1,"primary-text","m-0"],[1,"my-4","align-items-center",2,"max-width","1000px","margin","auto"],[1,"w-100","text-center","primary-text","mb-5"],[1,"fas","fa-fw","fa-power-off",2,"font-size","75px"],[1,"text-center"],[1,"primary-text","mb-4"],[1,"grey-text"],[1,"alert","alert-error","my-4"],[1,"justify-content-center","my-4"],[1,"restart-progress-box","primary-text"],[1,"fas","fa-fw","fa-spinner","fa-spin"],[1,"alert","alert-warning","my-4"]],template:function(c,d){c&1&&(r(0,"div",0)(1,"h3",1),s(2),m(3,"translate"),n()(),r(4,"div",2)(5,"div",3),f(6,"i",4),n(),r(7,"div",5)(8,"h4",6),s(9),m(10,"translate"),n(),h(11,C,3,3,"p",7)(12,k,2,1,"div",8)(13,b,3,0,"div",9)(14,E,4,3,"div"),n()()),c&2&&(i(2),o(p(3,6,"menu.restart.title")),i(7),o(p(10,8,"platform.linux.restarting_server")),i(2),l(d.error?-1:11),i(),l(d.error?12:-1),i(),l(d.error?-1:13),i(),l(d.timeout?14:-1))},dependencies:[$],styles:[".restart-progress-box[_ngcontent-%COMP%]{font-size:22px;margin-top:15px}"]})}return t})();export{A as a};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{a as ee}from"./chunk-NGW5QYCP.js";import{a as Q,b as ne}from"./chunk-CNALPQMI.js";import{a as X,b as Z}from"./chunk-IRGLFC77.js";import{a as G}from"./chunk-5PPIFCVN.js";import{m as U,n as W,o as Y}from"./chunk-X3WXF4QL.js";import{c as q,e as z,l as J,y as K}from"./chunk-FLUSPBPU.js";import{b as F}from"./chunk-TKQHVRJM.js";import{b as N}from"./chunk-IK23UVWP.js";import{b as k,j as V}from"./chunk-5X6YZZ4Y.js";import{a as T,b as M}from"./chunk-KTW5C5OW.js";import{$b as C,Bb as w,Bc as l,Cc as c,Dc as O,Lb as y,Mb as v,Rb as g,Tb as I,Ub as H,Vb as j,Wb as r,Xb as a,Yb as _,cc as h,dc as d,g as oe,h as S,ib as n,kd as L,na as m,nc as b,ob as D,oc as x,pc as $,sc as P,tc as R,ub as E,uc as B,w as A,xa as p,ya as f}from"./chunk-N7JBAWYM.js";function ae(o,u){o&1&&(r(0,"div",6),_(1,"i",14),a())}function se(o,u){if(o&1){let e=C();r(0,"tr")(1,"td",15),b(2),l(3,"date"),a(),r(4,"td",16)(5,"a",17),h("click",function(){let t=p(e).$implicit,s=d(2);return f(s.restore(t.id))}),b(6),l(7,"translate"),_(8,"i",18),a()()()}if(o&2){let e=u.$implicit;n(2),x(O(3,2,e.timestamp,"medium")),n(4),$(" ",c(7,5,"config.restore.copy_to_editor")," ")}}function le(o,u){if(o&1&&(r(0,"table",7)(1,"tbody"),H(2,se,9,7,"tr",null,I),a()()),o&2){let e=d();n(2),j(e.backupList)}}function de(o,u){o&1&&(r(0,"div")(1,"h3",11),b(2),l(3,"translate"),a()()),o&2&&(n(2),x(c(3,1,"config.restore.no_backups")))}function ce(o,u){if(o&1){let e=C();r(0,"button",19),l(1,"translate"),h("click",function(){p(e);let t=d();return f(t.deleteAllBackups())}),b(2),l(3,"translate"),a()}o&2&&(y("aria-label",c(1,2,"form.button_remove")),n(2),$(" ",c(3,4,"form.button_remove")," "))}var te=(()=>{class o{$activeModal=m(U);$api=m(k);$toastr=m(V);$translate=m(T);loading=!0;backupList=[];ngOnInit(){this.$api.get("/config-editor/backups").subscribe({next:e=>{this.loading=!1,this.backupList=e},error:e=>{this.loading=!1,console.error(e),this.$toastr.error(e.error.message||e.message,this.$translate.instant("toast.title_error"))}})}restore(e){return this.$activeModal.close(e)}deleteAllBackups(){return this.$api.delete("/config-editor/backups").subscribe({next:()=>{this.$activeModal.dismiss(),this.$toastr.success(this.$translate.instant("config.restore.toast_backups_deleted"),this.$translate.instant("toast.title_success"))},error:e=>{console.error(e),this.$toastr.error(e.error.message||e.message,this.$translate.instant("toast.title_error"))}})}static \u0275fac=function(i){return new(i||o)};static \u0275cmp=E({type:o,selectors:[["ng-component"]],decls:22,vars:16,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","primary-text"],[1,"table","table-borderless","table-hover","table-sm"],[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",1,"btn","btn-danger","mr-auto"],[1,"fa","fa-fw","fa-cog","fa-spin",2,"font-size","75px"],[1,"w-100"],["nowrap",""],[1,"card-link",3,"click"],[1,"fas","fa-fw","fa-arrow-right"],["type","button",1,"btn","btn-danger","mr-auto",3,"click"]],template:function(i,t){i&1&&(r(0,"div",0)(1,"div",1)(2,"h5",2),b(3),l(4,"translate"),a(),r(5,"button",3),l(6,"translate"),h("click",function(){return t.$activeModal.dismiss("Dismiss")}),r(7,"span",4),b(8,"\xD7"),a()()(),r(9,"div",5),w(10,ae,2,0,"div",6)(11,le,4,0,"table",7)(12,de,4,3,"div"),a(),r(13,"div",8)(14,"div",9)(15,"button",10),l(16,"translate"),h("click",function(){return t.$activeModal.dismiss("Dismiss")}),b(17),l(18,"translate"),a()(),_(19,"div",11),r(20,"div",12),w(21,ce,4,6,"button",13),a()()()),i&2&&(n(3),x(c(4,8,"config.restore.title_restore_homebridge_backup")),n(2),y("aria-label",c(6,10,"form.button_close")),n(5),g(t.loading?10:-1),n(),g(!t.loading&&t.backupList&&t.backupList.length?11:-1),n(),g(!t.loading&&(!t.backupList||!t.backupList.length)?12:-1),n(3),y("aria-label",c(16,12,"form.button_close")),n(2),$(" ",c(18,14,"form.button_close")," "),n(4),g(!t.loading&&t.backupList.length?21:-1))},dependencies:[L,M],encapsulation:2})}return o})();var ie=oe(ne(),1);function me(o,u){if(o&1){let e=C();r(0,"button",13),l(1,"translate"),l(2,"translate"),h("click",function(){p(e);let t=d();return f(t.onExportConfig())}),_(3,"i",14),a()}o&2&&(v("ngbTooltip",c(1,2,"form.button_download")),y("aria-label",c(2,4,"form.button_download")))}function pe(o,u){if(o&1){let e=C();r(0,"button",15),l(1,"translate"),l(2,"translate"),h("click",function(){p(e);let t=d();return f(t.onCancelRestore())}),_(3,"i",16),a()}if(o&2){let e=d();v("disabled",e.saveInProgress)("ngbTooltip",c(1,3,"form.button_cancel")),y("aria-label",c(2,5,"form.button_cancel"))}}function fe(o,u){if(o&1){let e=C();r(0,"button",13),l(1,"translate"),l(2,"translate"),h("click",function(){p(e);let t=d();return f(t.onRestore())}),_(3,"i",17),a()}o&2&&(v("ngbTooltip",c(1,2,"form.button_restore")),y("aria-label",c(2,4,"form.button_restore")))}function ge(o,u){o&1&&_(0,"i",8)}function ue(o,u){o&1&&_(0,"i",9)}function he(o,u){if(o&1){let e=C();r(0,"ngx-monaco-editor",18),h("onInit",function(t){p(e);let s=d();return f(s.onEditorInit(t))})("keydown.control.s",function(t){p(e);let s=d();return t.preventDefault(),f(s.onSave())})("keydown.meta.s",function(t){p(e);let s=d();return t.preventDefault(),f(s.onSave())}),a()}if(o&2){let e=d();v("options",e.editorOptions)("model",e.monacoEditorModel)}}function be(o,u){if(o&1){let e=C();r(0,"ngx-monaco-diff-editor",19),h("onInit",function(t){p(e);let s=d();return f(s.onInitDiffEditor(t))})("keydown.control.s",function(t){p(e);let s=d();return t.preventDefault(),f(s.onSave())})("keydown.meta.s",function(t){p(e);let s=d();return t.preventDefault(),f(s.onSave())}),a()}if(o&2){let e=d();v("options",e.editorOptions)("originalModel",e.monacoEditorModel)("modifiedModel",e.monacoEditorModel)}}function _e(o,u){if(o&1){let e=C();r(0,"textarea",20),B("ngModelChange",function(t){p(e);let s=d();return R(s.homebridgeConfig,t)||(s.homebridgeConfig=t),f(t)}),b(1," "),a()}if(o&2){let e=d();P("ngModel",e.homebridgeConfig)}}var qe=(()=>{class o{$api=m(k);$md=m(G);$modal=m(W);$monacoEditor=m(ee);$route=m(F);$renderer=m(D);$settings=m(N);$toastr=m(V);$translate=m(T);homebridgeConfig;originalConfig;saveInProgress;isMobile=!1;monacoEditor;editorOptions;monacoEditorModel;editorDecorations=[];lastHeight;visualViewPortEventCallback;constructor(){this.isMobile=this.$md.detect.mobile()}ngOnInit(){this.editorOptions={language:"json",theme:this.$settings.actualLightingMode==="dark"?"vs-dark":"vs-light",automaticLayout:!0};let e=document.querySelector(".content");this.$renderer.setStyle(e,"height","100%"),this.visualViewPortEventCallback=()=>this.visualViewPortChanged(),this.lastHeight=window.innerHeight,window.visualViewport&&!this.isMobile&&(window.visualViewport.addEventListener("resize",this.visualViewPortEventCallback,!0),this.$md.disableTouchMove()),this.visualViewPortEventCallback=()=>this.visualViewPortChanged(),this.lastHeight=window.innerHeight,window.visualViewport&&!this.isMobile&&(window.visualViewport.addEventListener("resize",this.visualViewPortEventCallback,!0),this.$md.disableTouchMove()),this.$route.data.subscribe(i=>{this.homebridgeConfig=i.config}),this.monacoEditorModel={value:"{}",language:"json",uri:window.monaco?window.monaco.Uri.parse("a://homebridge/config.json"):void 0},window.monaco?this.setMonacoEditorModel():this.$monacoEditor.readyEvent.subscribe({next:()=>{this.setMonacoEditorModel()}})}onEditorInit(e){window.editor=e,this.monacoEditor=e,this.monacoEditor.getModel().setValue(this.homebridgeConfig)}onInitDiffEditor(e){this.monacoEditor=e.modifiedEditor,e.getModel().original.setValue(this.originalConfig),e.getModel().modified.setValue(this.homebridgeConfig),window.editor=e}onSave(){return S(this,null,function*(){if(!this.saveInProgress){this.monacoEditor&&(this.editorDecorations=this.monacoEditor.deltaDecorations(this.editorDecorations,[])),this.saveInProgress=!0;try{if(!this.isMobile){yield this.monacoEditor.getAction("editor.action.formatDocument").run();let i=window.monaco.editor.getModelMarkers({owner:"json"});for(let t of i)if(t.message==="Duplicate object key"){this.saveInProgress=!1,this.$toastr.error(this.$translate.instant("config.config_invalid_json"),this.$translate.instant("toast.title_error"));return}this.homebridgeConfig=this.monacoEditor.getModel().getValue()}let e=this.parseConfigFromEditor();this.homebridgeConfig=JSON.stringify(e,null,4),typeof e.bridge!="object"?this.$toastr.error(this.$translate.instant("config.config_bridge_missing"),this.$translate.instant("toast.title_error")):/^(?:[0-9A-F]{2}:){5}[0-9A-F]{2}$/i.test(e.bridge.username)?e.accessories&&!Array.isArray(e.accessories)?this.$toastr.error(this.$translate.instant("config.config_accessory_must_be_array"),this.$translate.instant("toast.title_error")):e.platforms&&!Array.isArray(e.platforms)?this.$toastr.error(this.$translate.instant("config.config_platform_must_be_array"),this.$translate.instant("toast.title_error")):e.platforms&&Array.isArray(e.platforms)&&!this.validateSection(e.platforms,"platform")||e.accessories&&Array.isArray(e.accessories)&&!this.validateSection(e.accessories,"accessory")||e.plugins&&Array.isArray(e.plugins)&&!this.validatePlugins(e.plugins,"plugins")||e.disabledPlugins&&Array.isArray(e.disabledPlugins)&&!this.validatePlugins(e.disabledPlugins,"disabledPlugins")||(yield this.saveConfig(e),this.originalConfig=""):this.$toastr.error(this.$translate.instant("config.config_username_error"),this.$translate.instant("toast.title_error"))}catch(e){console.error(e),this.$toastr.error(this.$translate.instant("config.config_invalid_json"),this.$translate.instant("toast.title_error"))}this.saveInProgress=!1}})}parseConfigFromEditor(){try{return JSON.parse(this.homebridgeConfig)}catch{let i=ie.default.parse(this.homebridgeConfig);return this.homebridgeConfig=JSON.stringify(i,null,4),this.monacoEditor&&this.monacoEditor.getModel().setValue(this.homebridgeConfig),i}}saveConfig(e){return S(this,null,function*(){try{let i=yield A(this.$api.post("/config-editor",e));this.homebridgeConfig=JSON.stringify(i,null,4),this.$modal.open(Q,{size:"lg",backdrop:"static"})}catch(i){console.error(i),this.$toastr.error(this.$translate.instant("config.failed_to_save_config"),this.$translate.instant("toast.title_error"))}})}onRestore(){this.$modal.open(te,{size:"lg",backdrop:"static"}).result.then(e=>{this.originalConfig||(this.originalConfig=this.homebridgeConfig),this.$api.get(`/config-editor/backups/${e}`).subscribe({next:i=>{this.$toastr.info(this.$translate.instant("config.restore.confirm"),this.$translate.instant("config.title_backup_loaded")),this.homebridgeConfig=JSON.stringify(i,null,4),this.monacoEditor&&window.editor.modifiedEditor&&(this.editorDecorations=this.monacoEditor.deltaDecorations(this.editorDecorations,[]),this.monacoEditor.executeEdits("beautifier",[{identifier:"delete",range:new monaco.Range(1,1,this.monacoEditor.getModel().getLineCount()+10,1),text:"",forceMoveMarkers:!0}]),this.monacoEditor.executeEdits("beautifier",[{identifier:"insert",range:new monaco.Range(1,1,1,1),text:this.homebridgeConfig,forceMoveMarkers:!0}]))},error:i=>{console.error(i),this.$toastr.error(i.error.message||this.$translate.instant("backup.load_error"),this.$translate.instant("toast.title_error"))}})}).catch(()=>{})}onExportConfig(){let e=`data:text/json;charset=utf-8,${encodeURIComponent(this.homebridgeConfig)}`,i=document.createElement("a");i.setAttribute("href",e),i.setAttribute("download","config.json"),document.body.appendChild(i),i.click(),i.remove()}onCancelRestore(){this.homebridgeConfig=this.originalConfig,this.originalConfig=""}validateSection(e,i){for(let t of e){if(typeof t!="object"||Array.isArray(t))return this.$toastr.error(this.$translate.instant("config.error_blocks_objects",{type:i}),this.$translate.instant("toast.title_error")),this.highlightOffendingArrayItem(t),!1;if(!t[i])return this.$toastr.error(this.$translate.instant("config.error_blocks_type",{type:i}),this.$translate.instant("toast.title_error")),this.highlightOffendingArrayItem(t),!1;if(typeof t[i]!="string")return this.$toastr.error(this.$translate.instant("config.error_string_type",{type:i}),this.$translate.instant("toast.title_error")),this.highlightOffendingArrayItem(t),!1}return!0}validatePlugins(e,i){for(let t of e)if(typeof t!="string")return this.$toastr.error(this.$translate.instant("config.error_string_array",{key:i}),this.$translate.instant("toast.title_error")),!1;return!0}highlightOffendingArrayItem(e){this.monacoEditor&&(e=JSON.stringify(e,null,4).split(`
|
|
1
|
+
import{a as ee}from"./chunk-DOTHLAFP.js";import{a as Q,b as ne}from"./chunk-PBQ7WARI.js";import{a as X,b as Z}from"./chunk-GRKWTRPO.js";import{a as G}from"./chunk-I6JQZB5O.js";import{m as U,n as W,o as Y}from"./chunk-NFM5TL2D.js";import{c as q,e as z,l as J,y as K}from"./chunk-Q7ULBWII.js";import{b as F}from"./chunk-CLZKKYED.js";import{b as N}from"./chunk-LHHSRBQN.js";import{b as k,j as V}from"./chunk-DICSCOX4.js";import{a as T,b as M}from"./chunk-UKMABQF7.js";import{$b as C,Bb as w,Bc as l,Cc as c,Dc as O,Lb as y,Mb as v,Rb as g,Tb as I,Ub as H,Vb as j,Wb as r,Xb as a,Yb as _,cc as h,dc as d,g as oe,h as S,ib as n,kd as L,na as m,nc as b,ob as D,oc as x,pc as $,sc as P,tc as R,ub as E,uc as B,w as A,xa as p,ya as f}from"./chunk-DGXFIYFL.js";function ae(o,u){o&1&&(r(0,"div",6),_(1,"i",14),a())}function se(o,u){if(o&1){let e=C();r(0,"tr")(1,"td",15),b(2),l(3,"date"),a(),r(4,"td",16)(5,"a",17),h("click",function(){let t=p(e).$implicit,s=d(2);return f(s.restore(t.id))}),b(6),l(7,"translate"),_(8,"i",18),a()()()}if(o&2){let e=u.$implicit;n(2),x(O(3,2,e.timestamp,"medium")),n(4),$(" ",c(7,5,"config.restore.copy_to_editor")," ")}}function le(o,u){if(o&1&&(r(0,"table",7)(1,"tbody"),H(2,se,9,7,"tr",null,I),a()()),o&2){let e=d();n(2),j(e.backupList)}}function de(o,u){o&1&&(r(0,"div")(1,"h3",11),b(2),l(3,"translate"),a()()),o&2&&(n(2),x(c(3,1,"config.restore.no_backups")))}function ce(o,u){if(o&1){let e=C();r(0,"button",19),l(1,"translate"),h("click",function(){p(e);let t=d();return f(t.deleteAllBackups())}),b(2),l(3,"translate"),a()}o&2&&(y("aria-label",c(1,2,"form.button_remove")),n(2),$(" ",c(3,4,"form.button_remove")," "))}var te=(()=>{class o{$activeModal=m(U);$api=m(k);$toastr=m(V);$translate=m(T);loading=!0;backupList=[];ngOnInit(){this.$api.get("/config-editor/backups").subscribe({next:e=>{this.loading=!1,this.backupList=e},error:e=>{this.loading=!1,console.error(e),this.$toastr.error(e.error.message||e.message,this.$translate.instant("toast.title_error"))}})}restore(e){return this.$activeModal.close(e)}deleteAllBackups(){return this.$api.delete("/config-editor/backups").subscribe({next:()=>{this.$activeModal.dismiss(),this.$toastr.success(this.$translate.instant("config.restore.toast_backups_deleted"),this.$translate.instant("toast.title_success"))},error:e=>{console.error(e),this.$toastr.error(e.error.message||e.message,this.$translate.instant("toast.title_error"))}})}static \u0275fac=function(i){return new(i||o)};static \u0275cmp=E({type:o,selectors:[["ng-component"]],decls:22,vars:16,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","primary-text"],[1,"table","table-borderless","table-hover","table-sm"],[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",1,"btn","btn-danger","mr-auto"],[1,"fa","fa-fw","fa-cog","fa-spin",2,"font-size","75px"],[1,"w-100"],["nowrap",""],[1,"card-link",3,"click"],[1,"fas","fa-fw","fa-arrow-right"],["type","button",1,"btn","btn-danger","mr-auto",3,"click"]],template:function(i,t){i&1&&(r(0,"div",0)(1,"div",1)(2,"h5",2),b(3),l(4,"translate"),a(),r(5,"button",3),l(6,"translate"),h("click",function(){return t.$activeModal.dismiss("Dismiss")}),r(7,"span",4),b(8,"\xD7"),a()()(),r(9,"div",5),w(10,ae,2,0,"div",6)(11,le,4,0,"table",7)(12,de,4,3,"div"),a(),r(13,"div",8)(14,"div",9)(15,"button",10),l(16,"translate"),h("click",function(){return t.$activeModal.dismiss("Dismiss")}),b(17),l(18,"translate"),a()(),_(19,"div",11),r(20,"div",12),w(21,ce,4,6,"button",13),a()()()),i&2&&(n(3),x(c(4,8,"config.restore.title_restore_homebridge_backup")),n(2),y("aria-label",c(6,10,"form.button_close")),n(5),g(t.loading?10:-1),n(),g(!t.loading&&t.backupList&&t.backupList.length?11:-1),n(),g(!t.loading&&(!t.backupList||!t.backupList.length)?12:-1),n(3),y("aria-label",c(16,12,"form.button_close")),n(2),$(" ",c(18,14,"form.button_close")," "),n(4),g(!t.loading&&t.backupList.length?21:-1))},dependencies:[L,M],encapsulation:2})}return o})();var ie=oe(ne(),1);function me(o,u){if(o&1){let e=C();r(0,"button",13),l(1,"translate"),l(2,"translate"),h("click",function(){p(e);let t=d();return f(t.onExportConfig())}),_(3,"i",14),a()}o&2&&(v("ngbTooltip",c(1,2,"form.button_download")),y("aria-label",c(2,4,"form.button_download")))}function pe(o,u){if(o&1){let e=C();r(0,"button",15),l(1,"translate"),l(2,"translate"),h("click",function(){p(e);let t=d();return f(t.onCancelRestore())}),_(3,"i",16),a()}if(o&2){let e=d();v("disabled",e.saveInProgress)("ngbTooltip",c(1,3,"form.button_cancel")),y("aria-label",c(2,5,"form.button_cancel"))}}function fe(o,u){if(o&1){let e=C();r(0,"button",13),l(1,"translate"),l(2,"translate"),h("click",function(){p(e);let t=d();return f(t.onRestore())}),_(3,"i",17),a()}o&2&&(v("ngbTooltip",c(1,2,"form.button_restore")),y("aria-label",c(2,4,"form.button_restore")))}function ge(o,u){o&1&&_(0,"i",8)}function ue(o,u){o&1&&_(0,"i",9)}function he(o,u){if(o&1){let e=C();r(0,"ngx-monaco-editor",18),h("onInit",function(t){p(e);let s=d();return f(s.onEditorInit(t))})("keydown.control.s",function(t){p(e);let s=d();return t.preventDefault(),f(s.onSave())})("keydown.meta.s",function(t){p(e);let s=d();return t.preventDefault(),f(s.onSave())}),a()}if(o&2){let e=d();v("options",e.editorOptions)("model",e.monacoEditorModel)}}function be(o,u){if(o&1){let e=C();r(0,"ngx-monaco-diff-editor",19),h("onInit",function(t){p(e);let s=d();return f(s.onInitDiffEditor(t))})("keydown.control.s",function(t){p(e);let s=d();return t.preventDefault(),f(s.onSave())})("keydown.meta.s",function(t){p(e);let s=d();return t.preventDefault(),f(s.onSave())}),a()}if(o&2){let e=d();v("options",e.editorOptions)("originalModel",e.monacoEditorModel)("modifiedModel",e.monacoEditorModel)}}function _e(o,u){if(o&1){let e=C();r(0,"textarea",20),B("ngModelChange",function(t){p(e);let s=d();return R(s.homebridgeConfig,t)||(s.homebridgeConfig=t),f(t)}),b(1," "),a()}if(o&2){let e=d();P("ngModel",e.homebridgeConfig)}}var qe=(()=>{class o{$api=m(k);$md=m(G);$modal=m(W);$monacoEditor=m(ee);$route=m(F);$renderer=m(D);$settings=m(N);$toastr=m(V);$translate=m(T);homebridgeConfig;originalConfig;saveInProgress;isMobile=!1;monacoEditor;editorOptions;monacoEditorModel;editorDecorations=[];lastHeight;visualViewPortEventCallback;constructor(){this.isMobile=this.$md.detect.mobile()}ngOnInit(){this.editorOptions={language:"json",theme:this.$settings.actualLightingMode==="dark"?"vs-dark":"vs-light",automaticLayout:!0};let e=document.querySelector(".content");this.$renderer.setStyle(e,"height","100%"),this.visualViewPortEventCallback=()=>this.visualViewPortChanged(),this.lastHeight=window.innerHeight,window.visualViewport&&!this.isMobile&&(window.visualViewport.addEventListener("resize",this.visualViewPortEventCallback,!0),this.$md.disableTouchMove()),this.visualViewPortEventCallback=()=>this.visualViewPortChanged(),this.lastHeight=window.innerHeight,window.visualViewport&&!this.isMobile&&(window.visualViewport.addEventListener("resize",this.visualViewPortEventCallback,!0),this.$md.disableTouchMove()),this.$route.data.subscribe(i=>{this.homebridgeConfig=i.config}),this.monacoEditorModel={value:"{}",language:"json",uri:window.monaco?window.monaco.Uri.parse("a://homebridge/config.json"):void 0},window.monaco?this.setMonacoEditorModel():this.$monacoEditor.readyEvent.subscribe({next:()=>{this.setMonacoEditorModel()}})}onEditorInit(e){window.editor=e,this.monacoEditor=e,this.monacoEditor.getModel().setValue(this.homebridgeConfig)}onInitDiffEditor(e){this.monacoEditor=e.modifiedEditor,e.getModel().original.setValue(this.originalConfig),e.getModel().modified.setValue(this.homebridgeConfig),window.editor=e}onSave(){return S(this,null,function*(){if(!this.saveInProgress){this.monacoEditor&&(this.editorDecorations=this.monacoEditor.deltaDecorations(this.editorDecorations,[])),this.saveInProgress=!0;try{if(!this.isMobile){yield this.monacoEditor.getAction("editor.action.formatDocument").run();let i=window.monaco.editor.getModelMarkers({owner:"json"});for(let t of i)if(t.message==="Duplicate object key"){this.saveInProgress=!1,this.$toastr.error(this.$translate.instant("config.config_invalid_json"),this.$translate.instant("toast.title_error"));return}this.homebridgeConfig=this.monacoEditor.getModel().getValue()}let e=this.parseConfigFromEditor();this.homebridgeConfig=JSON.stringify(e,null,4),typeof e.bridge!="object"?this.$toastr.error(this.$translate.instant("config.config_bridge_missing"),this.$translate.instant("toast.title_error")):/^(?:[0-9A-F]{2}:){5}[0-9A-F]{2}$/i.test(e.bridge.username)?e.accessories&&!Array.isArray(e.accessories)?this.$toastr.error(this.$translate.instant("config.config_accessory_must_be_array"),this.$translate.instant("toast.title_error")):e.platforms&&!Array.isArray(e.platforms)?this.$toastr.error(this.$translate.instant("config.config_platform_must_be_array"),this.$translate.instant("toast.title_error")):e.platforms&&Array.isArray(e.platforms)&&!this.validateSection(e.platforms,"platform")||e.accessories&&Array.isArray(e.accessories)&&!this.validateSection(e.accessories,"accessory")||e.plugins&&Array.isArray(e.plugins)&&!this.validatePlugins(e.plugins,"plugins")||e.disabledPlugins&&Array.isArray(e.disabledPlugins)&&!this.validatePlugins(e.disabledPlugins,"disabledPlugins")||(yield this.saveConfig(e),this.originalConfig=""):this.$toastr.error(this.$translate.instant("config.config_username_error"),this.$translate.instant("toast.title_error"))}catch(e){console.error(e),this.$toastr.error(this.$translate.instant("config.config_invalid_json"),this.$translate.instant("toast.title_error"))}this.saveInProgress=!1}})}parseConfigFromEditor(){try{return JSON.parse(this.homebridgeConfig)}catch{let i=ie.default.parse(this.homebridgeConfig);return this.homebridgeConfig=JSON.stringify(i,null,4),this.monacoEditor&&this.monacoEditor.getModel().setValue(this.homebridgeConfig),i}}saveConfig(e){return S(this,null,function*(){try{let i=yield A(this.$api.post("/config-editor",e));this.homebridgeConfig=JSON.stringify(i,null,4),this.$modal.open(Q,{size:"lg",backdrop:"static"})}catch(i){console.error(i),this.$toastr.error(this.$translate.instant("config.failed_to_save_config"),this.$translate.instant("toast.title_error"))}})}onRestore(){this.$modal.open(te,{size:"lg",backdrop:"static"}).result.then(e=>{this.originalConfig||(this.originalConfig=this.homebridgeConfig),this.$api.get(`/config-editor/backups/${e}`).subscribe({next:i=>{this.$toastr.info(this.$translate.instant("config.restore.confirm"),this.$translate.instant("config.title_backup_loaded")),this.homebridgeConfig=JSON.stringify(i,null,4),this.monacoEditor&&window.editor.modifiedEditor&&(this.editorDecorations=this.monacoEditor.deltaDecorations(this.editorDecorations,[]),this.monacoEditor.executeEdits("beautifier",[{identifier:"delete",range:new monaco.Range(1,1,this.monacoEditor.getModel().getLineCount()+10,1),text:"",forceMoveMarkers:!0}]),this.monacoEditor.executeEdits("beautifier",[{identifier:"insert",range:new monaco.Range(1,1,1,1),text:this.homebridgeConfig,forceMoveMarkers:!0}]))},error:i=>{console.error(i),this.$toastr.error(i.error.message||this.$translate.instant("backup.load_error"),this.$translate.instant("toast.title_error"))}})}).catch(()=>{})}onExportConfig(){let e=`data:text/json;charset=utf-8,${encodeURIComponent(this.homebridgeConfig)}`,i=document.createElement("a");i.setAttribute("href",e),i.setAttribute("download","config.json"),document.body.appendChild(i),i.click(),i.remove()}onCancelRestore(){this.homebridgeConfig=this.originalConfig,this.originalConfig=""}validateSection(e,i){for(let t of e){if(typeof t!="object"||Array.isArray(t))return this.$toastr.error(this.$translate.instant("config.error_blocks_objects",{type:i}),this.$translate.instant("toast.title_error")),this.highlightOffendingArrayItem(t),!1;if(!t[i])return this.$toastr.error(this.$translate.instant("config.error_blocks_type",{type:i}),this.$translate.instant("toast.title_error")),this.highlightOffendingArrayItem(t),!1;if(typeof t[i]!="string")return this.$toastr.error(this.$translate.instant("config.error_string_type",{type:i}),this.$translate.instant("toast.title_error")),this.highlightOffendingArrayItem(t),!1}return!0}validatePlugins(e,i){for(let t of e)if(typeof t!="string")return this.$toastr.error(this.$translate.instant("config.error_string_array",{key:i}),this.$translate.instant("toast.title_error")),!1;return!0}highlightOffendingArrayItem(e){this.monacoEditor&&(e=JSON.stringify(e,null,4).split(`
|
|
2
2
|
`).map(i=>` ${i}`).join(`
|
|
3
3
|
`),setTimeout(()=>{let i=this.monacoEditor.getModel().findMatches(e);if(i.length){let t=i[0].range,s=new monaco.Range(t.startLineNumber,t.startColumn,t.endLineNumber,t.endColumn);this.editorDecorations=this.monacoEditor.deltaDecorations(this.editorDecorations,[{range:s,options:{isWholeLine:!0,linesDecorationsClassName:"hb-monaco-editor-line-error"}}])}},200))}setMonacoEditorModel(){if(window.monaco.languages.json.jsonDefaults.diagnosticsOptions.schemas.some(i=>i.uri==="http://homebridge/config.json"))return;let e=monaco.Uri.parse("a://homebridge/config.json");window.monaco.languages.json.jsonDefaults.setDiagnosticsOptions({allowComments:!1,validate:!0,schemas:[{uri:"http://homebridge/config.json",fileMatch:[e.toString()],schema:{type:"object",required:["bridge"],properties:{bridge:{type:"object",required:["name","username","port","pin"],properties:{name:{type:"string",description:`The Homebridge instance name.
|
|
4
4
|
This should be unique if you are running multiple instances of Homebridge.`,default:"Homebridge"},username:{type:"string",description:`Homebridge username must be 6 pairs of colon-separated hexadecimal characters (A-F 0-9).
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{a as O}from"./chunk-
|
|
1
|
+
import{a as O}from"./chunk-GRKWTRPO.js";import{a as L}from"./chunk-I6JQZB5O.js";import{c as P,e as I,l as D,y as H}from"./chunk-Q7ULBWII.js";import{b as T}from"./chunk-CLZKKYED.js";import{b as $}from"./chunk-LHHSRBQN.js";import{b as y,j as k}from"./chunk-DICSCOX4.js";import{a as E}from"./chunk-UKMABQF7.js";import{$b as g,Bb as h,Mb as f,Rb as d,Wb as m,Xb as l,Yb as w,cc as _,dc as a,h as S,ib as s,na as r,nc as v,sc as b,tc as M,ub as x,uc as V,w as C,xa as c,ya as p}from"./chunk-DGXFIYFL.js";function z(i,u){i&1&&w(0,"i",6)}function A(i,u){i&1&&w(0,"i",7)}function F(i,u){if(i&1){let t=g();m(0,"ngx-monaco-editor",10),_("onInit",function(e){c(t);let o=a();return p(o.onEditorInit(e))})("keydown.control.s",function(e){c(t);let o=a();return e.preventDefault(),p(o.onSave())})("keydown.meta.s",function(e){c(t);let o=a();return e.preventDefault(),p(o.onSave())}),l()}if(i&2){let t=a();f("options",t.editorOptions)("model",t.monacoEditorModel)}}function W(i,u){if(i&1){let t=g();m(0,"textarea",11),V("ngModelChange",function(e){c(t);let o=a();return M(o.startupScript,e)||(o.startupScript=e),p(e)}),v(1," "),l()}if(i&2){let t=a();b("ngModel",t.startupScript)}}var tt=(()=>{class i{$api=r(y);$md=r(L);$route=r(T);$settings=r($);$toastr=r(k);$translate=r(E);startupScript;saveInProgress;isMobile=!1;options={printMargin:!1};monacoEditor;editorOptions;monacoEditorModel;lastHeight;visualViewPortEventCallback;constructor(){this.isMobile=this.$md.detect.mobile()}ngOnInit(){this.editorOptions={language:"shell",theme:this.$settings.actualLightingMode==="dark"?"vs-dark":"vs-light",automaticLayout:!0},this.visualViewPortEventCallback=()=>this.visualViewPortChanged(),this.lastHeight=window.innerHeight,window.visualViewport&&!this.isMobile&&(window.visualViewport.addEventListener("resize",this.visualViewPortEventCallback,!0),this.$md.disableTouchMove()),this.$route.data.subscribe(t=>{this.startupScript=t.startupScript.script}),this.monacoEditorModel={value:"",language:"shell"}}onEditorInit(t){this.monacoEditor=t,this.monacoEditor.getModel().setValue(this.startupScript)}onSave(){return S(this,null,function*(){if(!this.saveInProgress){if(this.saveInProgress=!0,this.isMobile||(yield this.monacoEditor.getAction("editor.action.formatDocument").run(),this.startupScript=this.monacoEditor.getModel().getValue()),!["#!/bin/sh","#!/bin/bash"].includes(this.startupScript.split(`
|
|
2
2
|
`)[0].trim())){this.$toastr.error(this.$translate.instant("platform.docker.must_use_hashbang"),this.$translate.instant("toast.title_error")),this.startupScript=`#!/bin/sh
|
|
3
3
|
|
|
4
4
|
${this.startupScript}`,this.isMobile||this.monacoEditor.getModel().setValue(this.startupScript),this.saveInProgress=!1;return}try{yield C(this.$api.put("/platform-tools/docker/startup-script",{script:this.startupScript})),this.$toastr.success(this.$translate.instant("platform.docker.restart_required"),this.$translate.instant("platform.docker.script_saved"))}catch(t){console.error(t),this.$toastr.error(t.message,this.$translate.instant("toast.title_error"))}this.saveInProgress=!1}})}visualViewPortChanged(){this.lastHeight<window.visualViewport.height&&document.activeElement.blur(),window.visualViewport.height<window.innerHeight?(this.$md.enableTouchMove(),this.lastHeight=window.visualViewport.height):window.visualViewport.height===window.innerHeight&&(this.$md.disableTouchMove(),this.lastHeight=window.visualViewport.height)}ngOnDestroy(){window.visualViewport&&(window.visualViewport.removeEventListener("resize",this.visualViewPortEventCallback,!0),this.$md.enableTouchMove()),this.monacoEditor&&this.monacoEditor.dispose()}static \u0275fac=function(n){return new(n||i)};static \u0275cmp=x({type:i,selectors:[["ng-component"]],decls:11,vars:5,consts:[[1,"flex-column","d-flex","align-items-stretch","h-100"],[1,"row","mb-3"],[1,"col-6"],[1,"primary-text","m-0","text-monospace"],[1,"col-6","text-right"],[1,"btn","btn-primary","waves-effect","m-0",3,"click","disabled"],[1,"fas","fa-fw","fa-floppy-disk"],[1,"fas","fa-fw","fa-spinner","fa-pulse"],[1,"flex-grow-1","h-100","w-100","my-2",3,"options","model"],["wrap","off","autocomplete","off","autocorrect","off","autocapitalize","off","spellcheck","false",1,"hb-plain-text-editor","align-self-end","h-100","w-100","my-2",3,"ngModel"],[1,"flex-grow-1","h-100","w-100","my-2",3,"onInit","keydown.control.s","keydown.meta.s","options","model"],["wrap","off","autocomplete","off","autocorrect","off","autocapitalize","off","spellcheck","false",1,"hb-plain-text-editor","align-self-end","h-100","w-100","my-2",3,"ngModelChange","ngModel"]],template:function(n,e){n&1&&(m(0,"div",0)(1,"div",1)(2,"div",2)(3,"h3",3),v(4,"startup.sh"),l()(),m(5,"div",4)(6,"button",5),_("click",function(){return e.onSave()}),h(7,z,1,0,"i",6)(8,A,1,0,"i",7),l()()(),h(9,F,1,2,"ngx-monaco-editor",8)(10,W,2,1,"textarea",9),l()),n&2&&(s(6),f("disabled",e.saveInProgress),s(),d(e.saveInProgress?-1:7),s(),d(e.saveInProgress?8:-1),s(),d(e.isMobile?-1:9),s(),d(e.isMobile?10:-1))},dependencies:[O,H,P,I,D],encapsulation:2})}return i})();export{tt as a};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{b as X,j as it}from"./chunk-
|
|
1
|
+
import{b as X,j as it}from"./chunk-DICSCOX4.js";import{l as tt}from"./chunk-UQGUDBNN.js";import{a as et}from"./chunk-UKMABQF7.js";import{U as K,e as ut,g as ct,h as P,ha as R,n as Q,na as Y,w as G}from"./chunk-DGXFIYFL.js";var nt=ut((N,J)=>{(function(p,b){typeof N=="object"&&typeof J<"u"?J.exports=b():typeof define=="function"&&define.amd?define(b):(p=typeof globalThis<"u"?globalThis:p||self).dayjs=b()})(N,function(){"use strict";var p=1e3,b=6e4,o=36e5,f="millisecond",v="second",L="minute",O="hour",y="day",W="week",M="month",q="quarter",S="year",_="date",z="Invalid Date",rt=/^(\d{4})[-/]?(\d{1,2})?[-/]?(\d{0,2})[Tt\s]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?[.:]?(\d+)?$/,st=/\[([^\]]+)]|Y{1,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,at={name:"en",weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),ordinal:function(r){var i=["th","st","nd","rd"],t=r%100;return"["+r+(i[(t-20)%10]||i[t]||i[0])+"]"}},F=function(r,i,t){var n=String(r);return!n||n.length>=i?r:""+Array(i+1-n.length).join(t)+r},ot={s:F,z:function(r){var i=-r.utcOffset(),t=Math.abs(i),n=Math.floor(t/60),e=t%60;return(i<=0?"+":"-")+F(n,2,"0")+":"+F(e,2,"0")},m:function r(i,t){if(i.date()<t.date())return-r(t,i);var n=12*(t.year()-i.year())+(t.month()-i.month()),e=i.clone().add(n,M),s=t-e<0,a=i.clone().add(n+(s?-1:1),M);return+(-(n+(t-e)/(s?e-a:a-e))||0)},a:function(r){return r<0?Math.ceil(r)||0:Math.floor(r)},p:function(r){return{M,y:S,w:W,d:y,D:_,h:O,m:L,s:v,ms:f,Q:q}[r]||String(r||"").toLowerCase().replace(/s$/,"")},u:function(r){return r===void 0}},x="en",D={};D[x]=at;var B="$isDayjsObject",U=function(r){return r instanceof V||!(!r||!r[B])},I=function r(i,t,n){var e;if(!i)return x;if(typeof i=="string"){var s=i.toLowerCase();D[s]&&(e=s),t&&(D[s]=t,e=s);var a=i.split("-");if(!e&&a.length>1)return r(a[0])}else{var c=i.name;D[c]=i,e=c}return!n&&e&&(x=e),e||!n&&x},d=function(r,i){if(U(r))return r.clone();var t=typeof i=="object"?i:{};return t.date=r,t.args=arguments,new V(t)},u=ot;u.l=I,u.i=U,u.w=function(r,i){return d(r,{locale:i.$L,utc:i.$u,x:i.$x,$offset:i.$offset})};var V=function(){function r(t){this.$L=I(t.locale,null,!0),this.parse(t),this.$x=this.$x||t.x||{},this[B]=!0}var i=r.prototype;return i.parse=function(t){this.$d=function(n){var e=n.date,s=n.utc;if(e===null)return new Date(NaN);if(u.u(e))return new Date;if(e instanceof Date)return new Date(e);if(typeof e=="string"&&!/Z$/i.test(e)){var a=e.match(rt);if(a){var c=a[2]-1||0,h=(a[7]||"0").substring(0,3);return s?new Date(Date.UTC(a[1],c,a[3]||1,a[4]||0,a[5]||0,a[6]||0,h)):new Date(a[1],c,a[3]||1,a[4]||0,a[5]||0,a[6]||0,h)}}return new Date(e)}(t),this.init()},i.init=function(){var t=this.$d;this.$y=t.getFullYear(),this.$M=t.getMonth(),this.$D=t.getDate(),this.$W=t.getDay(),this.$H=t.getHours(),this.$m=t.getMinutes(),this.$s=t.getSeconds(),this.$ms=t.getMilliseconds()},i.$utils=function(){return u},i.isValid=function(){return this.$d.toString()!==z},i.isSame=function(t,n){var e=d(t);return this.startOf(n)<=e&&e<=this.endOf(n)},i.isAfter=function(t,n){return d(t)<this.startOf(n)},i.isBefore=function(t,n){return this.endOf(n)<d(t)},i.$g=function(t,n,e){return u.u(t)?this[n]:this.set(e,t)},i.unix=function(){return Math.floor(this.valueOf()/1e3)},i.valueOf=function(){return this.$d.getTime()},i.startOf=function(t,n){var e=this,s=!!u.u(n)||n,a=u.p(t),c=function(k,m){var w=u.w(e.$u?Date.UTC(e.$y,m,k):new Date(e.$y,m,k),e);return s?w:w.endOf(y)},h=function(k,m){return u.w(e.toDate()[k].apply(e.toDate("s"),(s?[0,0,0,0]:[23,59,59,999]).slice(m)),e)},l=this.$W,g=this.$M,$=this.$D,j="set"+(this.$u?"UTC":"");switch(a){case S:return s?c(1,0):c(31,11);case M:return s?c(1,g):c(0,g+1);case W:var T=this.$locale().weekStart||0,A=(l<T?l+7:l)-T;return c(s?$-A:$+(6-A),g);case y:case _:return h(j+"Hours",0);case O:return h(j+"Minutes",1);case L:return h(j+"Seconds",2);case v:return h(j+"Milliseconds",3);default:return this.clone()}},i.endOf=function(t){return this.startOf(t,!1)},i.$set=function(t,n){var e,s=u.p(t),a="set"+(this.$u?"UTC":""),c=(e={},e[y]=a+"Date",e[_]=a+"Date",e[M]=a+"Month",e[S]=a+"FullYear",e[O]=a+"Hours",e[L]=a+"Minutes",e[v]=a+"Seconds",e[f]=a+"Milliseconds",e)[s],h=s===y?this.$D+(n-this.$W):n;if(s===M||s===S){var l=this.clone().set(_,1);l.$d[c](h),l.init(),this.$d=l.set(_,Math.min(this.$D,l.daysInMonth())).$d}else c&&this.$d[c](h);return this.init(),this},i.set=function(t,n){return this.clone().$set(t,n)},i.get=function(t){return this[u.p(t)]()},i.add=function(t,n){var e,s=this;t=Number(t);var a=u.p(n),c=function(g){var $=d(s);return u.w($.date($.date()+Math.round(g*t)),s)};if(a===M)return this.set(M,this.$M+t);if(a===S)return this.set(S,this.$y+t);if(a===y)return c(1);if(a===W)return c(7);var h=(e={},e[L]=b,e[O]=o,e[v]=p,e)[a]||1,l=this.$d.getTime()+t*h;return u.w(l,this)},i.subtract=function(t,n){return this.add(-1*t,n)},i.format=function(t){var n=this,e=this.$locale();if(!this.isValid())return e.invalidDate||z;var s=t||"YYYY-MM-DDTHH:mm:ssZ",a=u.z(this),c=this.$H,h=this.$m,l=this.$M,g=e.weekdays,$=e.months,j=e.meridiem,T=function(m,w,H,C){return m&&(m[w]||m(n,s))||H[w].slice(0,C)},A=function(m){return u.s(c%12||12,m,"0")},k=j||function(m,w,H){var C=m<12?"AM":"PM";return H?C.toLowerCase():C};return s.replace(st,function(m,w){return w||function(H){switch(H){case"YY":return String(n.$y).slice(-2);case"YYYY":return u.s(n.$y,4,"0");case"M":return l+1;case"MM":return u.s(l+1,2,"0");case"MMM":return T(e.monthsShort,l,$,3);case"MMMM":return T($,l);case"D":return n.$D;case"DD":return u.s(n.$D,2,"0");case"d":return String(n.$W);case"dd":return T(e.weekdaysMin,n.$W,g,2);case"ddd":return T(e.weekdaysShort,n.$W,g,3);case"dddd":return g[n.$W];case"H":return String(c);case"HH":return u.s(c,2,"0");case"h":return A(1);case"hh":return A(2);case"a":return k(c,h,!0);case"A":return k(c,h,!1);case"m":return String(h);case"mm":return u.s(h,2,"0");case"s":return String(n.$s);case"ss":return u.s(n.$s,2,"0");case"SSS":return u.s(n.$ms,3,"0");case"Z":return a}return null}(m)||a.replace(":","")})},i.utcOffset=function(){return 15*-Math.round(this.$d.getTimezoneOffset()/15)},i.diff=function(t,n,e){var s,a=this,c=u.p(n),h=d(t),l=(h.utcOffset()-this.utcOffset())*b,g=this-h,$=function(){return u.m(a,h)};switch(c){case S:s=$()/12;break;case M:s=$();break;case q:s=$()/3;break;case W:s=(g-l)/6048e5;break;case y:s=(g-l)/864e5;break;case O:s=g/o;break;case L:s=g/b;break;case v:s=g/p;break;default:s=g}return e?s:u.a(s)},i.daysInMonth=function(){return this.endOf(M).$D},i.$locale=function(){return D[this.$L]},i.locale=function(t,n){if(!t)return this.$L;var e=this.clone(),s=I(t,n,!0);return s&&(e.$L=s),e},i.clone=function(){return u.w(this.$d,this)},i.toDate=function(){return new Date(this.valueOf())},i.toJSON=function(){return this.isValid()?this.toISOString():null},i.toISOString=function(){return this.$d.toISOString()},i.toString=function(){return this.$d.toUTCString()},r}(),E=V.prototype;return d.prototype=E,[["$ms",f],["$s",v],["$m",L],["$H",O],["$W",y],["$M",M],["$y",S],["$D",_]].forEach(function(r){E[r[1]]=function(i){return this.$g(i,r[0],r[1])}}),d.extend=function(r,i){return r.$i||(r(i,V,d),r.$i=!0),d},d.locale=I,d.isDayjs=U,d.unix=function(r){return d(1e3*r)},d.en=D[x],d.Ls=D,d.p={},d})});var Z=ct(nt(),1);var vt=(()=>{class p{$api=Y(X);$title=Y(tt);$toastr=Y(it);$translate=Y(et);env={};formAuth=!0;uiVersion;theme;lightingMode;currentLightingMode;actualLightingMode;browserLightingMode;loginWallpaper;serverTimeOffset=0;themeList=["orange","red","pink","purple","deep-purple","indigo","blue","blue-grey","cyan","green","teal","grey","brown"];rtl=!1;settingsLoadedSubject=new Q;onSettingsLoaded=this.settingsLoadedSubject.pipe(K());settingsLoaded=!1;constructor(){this.getAppSettings()}getAppSettings(){return P(this,null,function*(){let o=yield G(this.$api.get("/auth/settings"));this.formAuth=o.formAuth,this.env=o.env,this.lightingMode=o.lightingMode,this.loginWallpaper=o.loginWallpaper,this.setLightingMode(this.lightingMode,"user"),this.setTheme(o.theme),this.setTitle(this.env.homebridgeInstanceName),this.checkServerTime(o.serverTimestamp),this.setUiVersion(o.env.packageVersion),this.setLang(this.env.lang),this.settingsLoaded=!0,this.settingsLoadedSubject.next(void 0)})}setBrowserLightingMode(o){this.browserLightingMode=o,this.lightingMode==="auto"&&this.setLightingMode(o,"browser")}setLightingMode(o,f){f==="user"&&(this.lightingMode=o),this.currentLightingMode=o,this.actualLightingMode=this.currentLightingMode==="auto"?this.browserLightingMode:this.currentLightingMode,this.theme&&this.setTheme(this.theme)}setTheme(o){(!o||!this.themeList.includes(o))&&(o="orange");let f=window.document.querySelector("body");f.classList.remove(`config-ui-x-${this.theme}`),f.classList.remove(`config-ui-x-dark-mode-${this.theme}`),this.theme=o,this.actualLightingMode==="dark"?(f.classList.add(`config-ui-x-dark-mode-${this.theme}`),f.classList.contains("dark-mode")||f.classList.add("dark-mode")):(f.classList.add(`config-ui-x-${this.theme}`),f.classList.contains("dark-mode")&&f.classList.remove("dark-mode"))}setTitle(o){this.$title.setTitle(o||"Homebridge")}setUiVersion(o){this.uiVersion||(this.uiVersion=o)}setLang(o){o?this.$translate.use(o):o="auto",this.env.lang=o}setEnvItem(o,f){this.env[o]=f}checkServerTime(o){let v=(0,Z.default)(o).diff((0,Z.default)(),"hour");this.serverTimeOffset=v*60*60,(v>=8||v<=-8)&&this.$toastr.warning(this.$translate.instant("settings.datetime.incorrect"),this.$translate.instant("toast.title_warning"),{timeOut:2e4,tapToDismiss:!1}).onTap.subscribe(()=>{window.open("https://homebridge.io/w/JqTFs","_blank")})}static \u0275fac=function(f){return new(f||p)};static \u0275prov=R({token:p,factory:p.\u0275fac,providedIn:"root"})}return p})();export{nt as a,vt as b};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{a}from"./chunk-CIBCOHRI.js";import"./chunk-OLI7NXK6.js";import"./chunk-CLZKKYED.js";import"./chunk-MXGYFXAQ.js";import"./chunk-LHHSRBQN.js";import"./chunk-DICSCOX4.js";import"./chunk-UQGUDBNN.js";import"./chunk-UKMABQF7.js";import"./chunk-DGXFIYFL.js";export{a as RestartComponent};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{a}from"./chunk-BHRTYERJ.js";import"./chunk-NFM5TL2D.js";import"./chunk-Q7ULBWII.js";import"./chunk-CLZKKYED.js";import"./chunk-LHHSRBQN.js";import"./chunk-DICSCOX4.js";import"./chunk-UQGUDBNN.js";import"./chunk-UKMABQF7.js";import"./chunk-DGXFIYFL.js";export{a as PowerOptionsComponent};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a as _,b as D}from"./chunk-
|
|
1
|
+
import{a as _,b as D}from"./chunk-LHHSRBQN.js";import{a as l,b as S}from"./chunk-DICSCOX4.js";import{f as x}from"./chunk-UQGUDBNN.js";import{C as v,Sc as I,g as O,h as a,ha as h,ia as E,ka as y,ma as c,na as f,r as p,vb as j,w as d,x as T,z as w}from"./chunk-DGXFIYFL.js";var g=new y("JWT_OPTIONS"),m=(()=>{class r{constructor(e=null){this.tokenGetter=e&&e.tokenGetter||function(){}}urlBase64Decode(e){let t=e.replace(/-/g,"+").replace(/_/g,"/");switch(t.length%4){case 0:break;case 2:{t+="==";break}case 3:{t+="=";break}default:throw new Error("Illegal base64url string!")}return this.b64DecodeUnicode(t)}b64decode(e){let t="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",o="";if(e=String(e).replace(/=+$/,""),e.length%4===1)throw new Error("'atob' failed: The string to be decoded is not correctly encoded.");for(let i=0,s,n,b=0;n=e.charAt(b++);~n&&(s=i%4?s*64+n:n,i++%4)?o+=String.fromCharCode(255&s>>(-2*i&6)):0)n=t.indexOf(n);return o}b64DecodeUnicode(e){return decodeURIComponent(Array.prototype.map.call(this.b64decode(e),t=>"%"+("00"+t.charCodeAt(0).toString(16)).slice(-2)).join(""))}decodeToken(e=this.tokenGetter()){return e instanceof Promise?e.then(t=>this._decodeToken(t)):this._decodeToken(e)}_decodeToken(e){if(!e||e==="")return null;let t=e.split(".");if(t.length!==3)throw new Error("The inspected token doesn't appear to be a JWT. Check to make sure it has three parts and see https://jwt.io for more.");let o=this.urlBase64Decode(t[1]);if(!o)throw new Error("Cannot decode the token.");return JSON.parse(o)}getTokenExpirationDate(e=this.tokenGetter()){return e instanceof Promise?e.then(t=>this._getTokenExpirationDate(t)):this._getTokenExpirationDate(e)}_getTokenExpirationDate(e){let t;if(t=this.decodeToken(e),!t||!t.hasOwnProperty("exp"))return null;let o=new Date(0);return o.setUTCSeconds(t.exp),o}isTokenExpired(e=this.tokenGetter(),t){return e instanceof Promise?e.then(o=>this._isTokenExpired(o,t)):this._isTokenExpired(e,t)}_isTokenExpired(e,t){if(!e||e==="")return!0;let o=this.getTokenExpirationDate(e);return t=t||0,o===null?!1:!(o.valueOf()>new Date().valueOf()+t*1e3)}getAuthScheme(e,t){return typeof e=="function"?e(t):e}}return r.\u0275fac=function(e){return new(e||r)(c(g))},r.\u0275prov=h({token:r,factory:r.\u0275fac}),r})(),$=r=>r instanceof Promise?v(()=>r):p(r),R=(()=>{class r{constructor(e,t,o){this.jwtHelper=t,this.document=o,this.standardPorts=["80","443"],this.tokenGetter=e.tokenGetter,this.headerName=e.headerName||"Authorization",this.authScheme=e.authScheme||e.authScheme===""?e.authScheme:"Bearer ",this.allowedDomains=e.allowedDomains||[],this.disallowedRoutes=e.disallowedRoutes||[],this.throwNoTokenError=e.throwNoTokenError||!1,this.skipWhenExpired=e.skipWhenExpired}isAllowedDomain(e){let t=new URL(e.url,this.document.location.origin);if(t.host===this.document.location.host)return!0;let o=`${t.hostname}${t.port&&!this.standardPorts.includes(t.port)?":"+t.port:""}`;return this.allowedDomains.findIndex(i=>typeof i=="string"?i===o:i instanceof RegExp?i.test(o):!1)>-1}isDisallowedRoute(e){let t=new URL(e.url,this.document.location.origin);return this.disallowedRoutes.findIndex(o=>{if(typeof o=="string"){let i=new URL(o,this.document.location.origin);return i.hostname===t.hostname&&i.pathname===t.pathname}return o instanceof RegExp?o.test(e.url):!1})>-1}handleInterception(e,t,o){let i=this.jwtHelper.getAuthScheme(this.authScheme,t);if(!e&&this.throwNoTokenError)throw new Error("Could not get token from tokenGetter function.");let s=p(!1);return this.skipWhenExpired&&(s=e?$(this.jwtHelper.isTokenExpired(e)):p(!0)),e?s.pipe(T(n=>n&&this.skipWhenExpired?t.clone():t.clone({setHeaders:{[this.headerName]:`${i}${e}`}})),w(n=>o.handle(n))):o.handle(t)}intercept(e,t){if(!this.isAllowedDomain(e)||this.isDisallowedRoute(e))return t.handle(e);let o=this.tokenGetter(e);return $(o).pipe(w(i=>this.handleInterception(i,e,t)))}}return r.\u0275fac=function(e){return new(e||r)(c(g),c(m),c(I))},r.\u0275prov=h({token:r,factory:r.\u0275fac}),r})(),F=(()=>{class r{constructor(e){if(e)throw new Error("JwtModule is already loaded. It should only be imported in your application's main module.")}static forRoot(e){return{ngModule:r,providers:[{provide:x,useClass:R,multi:!0},e.jwtOptionsProvider||{provide:g,useValue:e.config},m]}}}return r.\u0275fac=function(e){return new(e||r)(c(r,12))},r.\u0275mod=j({type:r}),r.\u0275inj=E({}),r})();var k=O(_(),1);var q=(()=>{class r{$api=f(S);$jwtHelper=f(m);$settings=f(D);token;user={};logoutTimer;constructor(){this.loadToken()}login(e){return a(this,null,function*(){let t=yield d(this.$api.post("/auth/login",e));if(!this.validateToken(t.access_token))throw new Error("Invalid username or password.");window.localStorage.setItem(l.jwt.tokenKey,t.access_token),yield this.$settings.getAppSettings()})}noauth(){return a(this,null,function*(){let e=yield d(this.$api.post("/auth/noauth",{}));if(this.validateToken(e.access_token))window.localStorage.setItem(l.jwt.tokenKey,e.access_token),yield this.$settings.getAppSettings();else throw new Error("Invalid username or password.")})}logout(){this.user=null,this.token=null,window.localStorage.removeItem(l.jwt.tokenKey),window.location.reload()}loadToken(){return a(this,null,function*(){this.$settings.settingsLoaded||(yield d(this.$settings.onSettingsLoaded));let e=window.localStorage.getItem(l.jwt.tokenKey);e&&this.validateToken(e)})}validateToken(e){try{return this.$jwtHelper.isTokenExpired(e,this.$settings.serverTimeOffset)&&this.logout(),this.user=this.$jwtHelper.decodeToken(e),this.token=e,this.setLogoutTimer(),!0}catch{return window.localStorage.removeItem(l.jwt.tokenKey),this.token=null,!1}}checkToken(){return a(this,null,function*(){try{return yield d(this.$api.get("/auth/check"))}catch(e){e.status===401&&(console.error("Current token is not valid"),this.logout())}})}setLogoutTimer(){if(clearTimeout(this.logoutTimer),!this.$jwtHelper.isTokenExpired(this.token,this.$settings.serverTimeOffset)){let t=(0,k.default)(this.$jwtHelper.getTokenExpirationDate(this.token)).diff((0,k.default)().add(this.$settings.serverTimeOffset,"s"),"millisecond");t<=2147483647&&(this.logoutTimer=setTimeout(()=>a(this,null,function*(){this.$settings.formAuth===!1?(yield this.noauth(),window.location.reload()):this.logout()}),t))}}isLoggedIn(){return this.$settings.env.instanceId!==this.user.instanceId?(console.error("Token does not match instance"),!1):this.user&&this.token&&!this.$jwtHelper.isTokenExpired(this.token,this.$settings.serverTimeOffset)}static \u0275fac=function(t){return new(t||r)};static \u0275prov=h({token:r,factory:r.\u0275fac})}return r})();export{m as a,F as b,q as c};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{e as a}from"./chunk-QRCM4ROA.js";import"./chunk-7H6DGXSK.js";import"./chunk-NFM5TL2D.js";import"./chunk-Q7ULBWII.js";import"./chunk-CLZKKYED.js";import"./chunk-MXGYFXAQ.js";import"./chunk-LHHSRBQN.js";import"./chunk-DICSCOX4.js";import"./chunk-UQGUDBNN.js";import"./chunk-UKMABQF7.js";import"./chunk-DGXFIYFL.js";export{a as UsersComponent};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{a as hn}from"./chunk-FLUSPBPU.js";import{$b as li,Aa as nn,Bb as st,Ca as ie,Da as Mt,E as L,Ec as dn,F as qi,Fa as T,Ga as re,H as Re,Hc as ze,I as Jt,J as wt,Ja as J,Kb as ii,Lb as Ne,Mb as Ct,Nc as Nt,O as $e,Ob as W,Pb as _e,Q as Yi,Ra as fe,Rb as ni,S as Zi,Sa as Tt,Sb as oi,Sc as le,Ta as ot,Ub as si,Vb as ri,Wb as Le,Xb as We,Yb as ai,Zb as sn,_b as rn,a as yt,aa as qt,ac as ae,b as Qt,ba as k,ca as it,cc as me,da as Ot,dc as ge,ec as Rt,fc as St,ga as Yt,gc as xe,ha as K,hc as an,hd as un,ia as I,ib as je,ic as ve,jc as ye,k as bt,ka as en,lb as It,mc as ln,n as X,na as u,nc as ci,o as Ki,oc as di,p as Qi,pb as ei,r as tt,ta as Zt,ub as Se,va as tn,vb as C,vc as ui,wa as nt,wb as H,x as Ce,xa as Dt,ya as Et,yb as on,z as Ji,zb as ti,zc as cn}from"./chunk-N7JBAWYM.js";function xt(t){t||(tn(xt),t=u(Mt));let e=new bt(s=>t.onDestroy(s.next.bind(s)));return s=>s.pipe(k(e))}var R="top",U="bottom",B="right",N="left",Ft="auto",be=[R,U,B,N],ce="start",Fe="end",pn="clippingParents",kt="viewport",Xe="popper",fn="reference",hi=be.reduce(function(t,e){return t.concat([e+"-"+ce,e+"-"+Fe])},[]),Bt=[].concat(be,[Ft]).reduce(function(t,e){return t.concat([e,e+"-"+ce,e+"-"+Fe])},[]),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 Ke(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,ke=Math.min,de=Math.round;function Qe(){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 rt(){return!/^((?!chrome|android).)*safari/i.test(Qe())}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&&de(i.width)/t.offsetWidth||1,o=t.offsetHeight>0&&de(i.height)/t.offsetHeight||1);var a=q(t)?O(t):window,r=a.visualViewport,l=!rt()&&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 Be(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 at(t,e){var s=e.getRootNode&&e.getRootNode();if(t.contains(e))return!0;if(s&&Ke(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 pi(t){return["table","td","th"].indexOf(P(t))>=0}function V(t){return((q(t)?t.ownerDocument:t.document)||window.document).documentElement}function ue(t){return P(t)==="html"?t:t.assignedSlot||t.parentNode||(Ke(t)?t.host:null)||V(t)}function gn(t){return!x(t)||z(t).position==="fixed"?null:t.offsetParent}function Oo(t){var e=/firefox/i.test(Qe()),s=/Trident/i.test(Qe());if(s&&x(t)){var i=z(t);if(i.position==="fixed")return null}var n=ue(t);for(Ke(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&&pi(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 Pe(t){return["top","bottom"].indexOf(t)>=0?"x":"y"}function Ae(t,e,s){return ne(t,ke(e,s))}function vn(t,e,s){var i=Ae(t,e,s);return i>s?s:i}function lt(){return{top:0,right:0,bottom:0,left:0}}function ct(t){return Object.assign({},lt(),t)}function dt(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,ct(typeof e!="number"?e:dt(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=Pe(r),d=[N,B].indexOf(r)>=0,c=d?"height":"width";if(!(!o||!a)){var f=Do(n.padding,s),p=Be(o),h=l==="y"?R:N,m=l==="y"?U: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=Ae(_,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)||at(e.elements.popper,n)&&(e.elements.arrow=n))}var fi={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:de(s*n)/n||0,y:de(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=V(s),z(b).position!=="static"&&r==="absolute"&&(D="scrollHeight",G="scrollWidth")),b=b,n===R||(n===N||n===B)&&o===Fe){_=U;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===U)&&o===Fe){M=B;var S=f&&b===y&&y.visualViewport?y.visualViewport.width:b[G];h-=S-i.width,h*=l?1:-1}}var $=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({},$,(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({},$,(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 Pt={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,Pt)}),r&&l.addEventListener("resize",s.update,Pt),function(){o&&d.forEach(function(c){c.removeEventListener("scroll",s.update,Pt)}),r&&l.removeEventListener("resize",s.update,Pt)}}var wn={name:"eventListeners",enabled:!0,phase:"write",fn:function(){},effect:Ro,data:{}};var So={left:"right",right:"left",bottom:"top",top:"bottom"};function Je(t){return t.replace(/left|right|bottom|top/g,function(e){return So[e]})}var No={start:"end",end:"start"};function At(t){return t.replace(/start|end/g,function(e){return No[e]})}function Ge(t){var e=O(t),s=e.pageXOffset,i=e.pageYOffset;return{scrollLeft:s,scrollTop:i}}function He(t){return Y(V(t)).left+Ge(t).scrollLeft}function _i(t,e){var s=O(t),i=V(t),n=s.visualViewport,o=i.clientWidth,a=i.clientHeight,r=0,l=0;if(n){o=n.width,a=n.height;var d=rt();(d||!d&&e==="fixed")&&(r=n.offsetLeft,l=n.offsetTop)}return{width:o,height:a,x:r+He(t),y:l}}function mi(t){var e,s=V(t),i=Ge(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+He(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 Ue(t){var e=z(t),s=e.overflow,i=e.overflowX,n=e.overflowY;return/auto|scroll|overlay|hidden/.test(s+n+i)}function Gt(t){return["html","body","#document"].indexOf(P(t))>=0?t.ownerDocument.body:x(t)&&Ue(t)?t:Gt(ue(t))}function we(t,e){var s;e===void 0&&(e=[]);var i=Gt(t),n=i===((s=t.ownerDocument)==null?void 0:s.body),o=O(i),a=n?[o].concat(o.visualViewport||[],Ue(i)?i:[]):i,r=e.concat(a);return n?r:r.concat(we(ue(a)))}function qe(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===kt?qe(_i(t,s)):q(e)?xo(e,s):qe(mi(V(t)))}function Fo(t){var e=we(ue(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)&&at(n,i)&&P(n)!=="body"}):[]}function gi(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=ke(c.right,l.right),l.bottom=ke(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 ut(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 U: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?Pe(n):null;if(d!=null){var c=d==="y"?"height":"width";switch(o){case ce:l[d]=l[d]-(e[c]/2-s[c]/2);break;case Fe: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?kt:d,f=s.elementContext,p=f===void 0?Xe:f,h=s.altBoundary,m=h===void 0?!1:h,v=s.padding,g=v===void 0?0:v,w=ct(typeof g!="number"?g:dt(g,be)),E=p===Xe?fn:Xe,M=t.rects.popper,_=t.elements[m?E:p],y=gi(q(_)?_:_.contextElement||V(t.elements.popper),l,c,a),b=Y(t.elements.reference),D=ut({reference:b,element:M,strategy:"absolute",placement:n}),G=qe(Object.assign({},M,D)),F=p===Xe?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},$=t.modifiersData.offset;if(p===Xe&&$){var ee=$[n];Object.keys(S).forEach(function(j){var De=[B,U].indexOf(j)>=0?1:-1,Ee=[R,U].indexOf(j)>=0?"y":"x";S[j]+=ee[Ee]*De})}return S}function vi(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?Bt:l,c=Z(i),f=c?r?hi:hi.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)===Ft)return[];var e=Je(t);return[At(t),e,At(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?[Je(g)]:ko(g)),_=[g].concat(M).reduce(function(Ve,pe){return Ve.concat(A(pe)===Ft?vi(e,{placement:pe,boundary:c,rootBoundary:f,padding:d,flipVariations:m,allowedAutoPlacements:v}):pe)},[]),y=e.rects.reference,b=e.rects.popper,D=new Map,G=!0,F=_[0],S=0;S<_.length;S++){var $=_[S],ee=A($),j=Z($)===ce,De=[R,U].indexOf(ee)>=0,Ee=De?"width":"height",Q=Oe(e,{placement:$,boundary:c,rootBoundary:f,altBoundary:p,padding:d}),te=De?j?B:N:j?U:R;y[Ee]>b[Ee]&&(te=Je(te));var ft=Je(te),Me=[];if(o&&Me.push(Q[ee]<=0),r&&Me.push(Q[te]<=0,Q[ft]<=0),Me.every(function(Ve){return Ve})){F=$,G=!1;break}D.set($,Me)}if(G)for(var _t=m?3:1,Wt=function(pe){var et=_.find(function(gt){var Te=D.get(gt);if(Te)return Te.slice(0,pe).every(function(zt){return zt})});if(et)return F=et,"break"},Ze=_t;Ze>0;Ze--){var mt=Wt(Ze);if(mt==="break")break}e.placement!==F&&(e.modifiersData[i]._skip=!0,e.placement=F,e.reset=!0)}}var yi={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=Bt.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 bi={name:"offset",enabled:!0,phase:"main",requires:["popperOffsets"],fn:Ao};function Go(t){var e=t.state,s=t.name;e.modifiersData[s]=ut({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 wi(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,_=Pe(w),y=wi(_),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),$=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"?U:B,Q=_==="y"?"height":"width",te=b[_],ft=te+g[De],Me=te-g[Ee],_t=h?-G[Q]/2:0,Wt=E===ce?D[Q]:G[Q],Ze=E===ce?-G[Q]:-D[Q],mt=e.elements.arrow,Ve=h&&mt?Be(mt):{width:0,height:0},pe=e.modifiersData["arrow#persistent"]?e.modifiersData["arrow#persistent"].padding:lt(),et=pe[De],gt=pe[Ee],Te=Ae(0,D[Q],Ve[Q]),zt=M?D[Q]/2-_t-Te-et-S.mainAxis:Wt-Te-et-S.mainAxis,oo=M?-D[Q]/2+_t+Te+gt+S.mainAxis:Ze+Te+gt+S.mainAxis,Xt=e.elements.arrow&&oe(e.elements.arrow),so=Xt?_==="y"?Xt.clientTop||0:Xt.clientLeft||0:0,Hi=(j=$==null?void 0:$[_])!=null?j:0,ro=te+zt-Hi-so,ao=te+oo-Hi,Ui=Ae(h?ke(ft,ro):ft,te,h?ne(Me,ao):Me);b[_]=Ui,ee[_]=Ui-te}if(r){var Vi,lo=_==="x"?R:N,co=_==="x"?U:B,Ie=b[y],vt=y==="y"?"height":"width",$i=Ie+g[lo],ji=Ie-g[co],Kt=[R,N].indexOf(w)!==-1,Li=(Vi=$==null?void 0:$[y])!=null?Vi:0,Wi=Kt?$i:Ie-D[vt]-G[vt]-Li+S.altAxis,zi=Kt?Ie+D[vt]+G[vt]-Li-S.altAxis:ji,Xi=h&&Kt?vn(Wi,Ie,zi):Ae(h?Wi:$i,Ie,h?zi:ji);b[y]=Xi,ee[y]=Xi-Ie}e.modifiersData[i]=ee}}var Oi={name:"preventOverflow",enabled:!0,phase:"main",fn:Ho,requiresIfExists:["offset"]};function Di(t){return{scrollLeft:t.scrollLeft,scrollTop:t.scrollTop}}function Ei(t){return t===O(t)||!x(t)?Ge(t):Di(t)}function Uo(t){var e=t.getBoundingClientRect(),s=de(e.width)/t.offsetWidth||1,i=de(e.height)/t.offsetHeight||1;return s!==1||i!==1}function Mi(t,e,s){s===void 0&&(s=!1);var i=x(e),n=x(e)&&Uo(e),o=V(e),a=Y(t,n,s),r={scrollLeft:0,scrollTop:0},l={x:0,y:0};return(i||!i&&!s)&&((P(e)!=="body"||Ue(o))&&(r=Ei(e)),x(e)?(l=Y(e,!0),l.x+=e.clientLeft,l.y+=e.clientTop):o&&(l.x=He(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 Ti(t){var e=Vo(t);return _n.reduce(function(s,i){return s.concat(e.filter(function(n){return n.phase===i}))},[])}function Ii(t){var e;return function(){return e||(e=new Promise(function(s){Promise.resolve().then(function(){e=void 0,s(t())})})),e}}function Ci(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=Ti(Ci([].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:Mi(E,oe(M),c.options.strategy==="fixed"),popper:Be(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:Ii(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],Ri=Tn({defaultModifiers:$o});var Fi=["*"];function jo(t,e){if(t&1){let s=li();Le(0,"button",1),me("click",function(){Dt(s);let n=ge();return Et(n.close())}),We()}}var Lo=["dialog"];function Wo(t,e){if(t&1&&(Le(0,"span"),ci(1),We()),t&2){let s=ge().$implicit,i=ge();_e(i.highlightClass),je(),di(s)}}function zo(t,e){if(t&1&&(sn(0),ci(1),rn()),t&2){let s=ge().$implicit;je(),di(s)}}function Xo(t,e){if(t&1&&st(0,Wo,2,4,"span",0)(1,zo,2,1,"ng-container"),t&2){let s=e.$index;ni(s%2!==0?0:1)}}var Ko=(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;Ct("result",n(s))("term",i)}}function Jo(t,e){}function qo(t,e){if(t&1){let s=li();Le(0,"button",3),me("mouseenter",function(){let n=Dt(s).$index,o=ge();return Et(o.markActive(n))})("click",function(){let n=Dt(s).$implicit,o=ge();return Et(o.select(n))}),st(1,Jo,0,0,"ng-template",4),We()}if(t&2){let s=e.$implicit,i=e.$index,n=ge(),o=ln(1);W("active",i===n.activeIdx),Ct("id",n.id+"-"+i),je(),Ct("ngTemplateOutlet",n.resultTemplate||o)("ngTemplateOutletContext",cn(5,Ko,s,n.term,n.formatter))}}var Fn={animation:!0,transitionTimerDelayMs:5},pt=(()=>{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})(),Yo=(()=>{let e=class e{constructor(){this._ngbConfig=u(pt),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 Zo(t){let{transitionDelay:e,transitionDuration:s}=window.getComputedStyle(t),i=parseFloat(e),n=parseFloat(s);return(i+n)*1e3}function ht(t){return t!=null?`${t}`:""}function Lt(t){return typeof t=="string"}function Vt(t){return t!=null}function es(t){return t&&t.then}function ts(t){return t.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&")}function is(t,e){return!e||typeof t.closest>"u"?null:t.closest(e)}function ki(t){return(t||document.body).getBoundingClientRect()}function ns(t){return e=>new bt(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 os=()=>{},{transitionTimerDelayMs:ss}=Fn,Ht=new Map,se=(t,e,s,i)=>{let n=i.context||{},o=Ht.get(e);if(o)switch(i.runningTransition){case"continue":return Qi;case"stop":t.run(()=>o.transition$.complete()),n=Object.assign(o.context,n),Ht.delete(e)}let a=s(e,i.animation,n)||os;if(!i.animation||window.getComputedStyle(e).transitionProperty==="none")return t.run(()=>a()),tt(void 0).pipe(ns(t));let r=new X,l=new X,d=r.pipe(Zi(!0));Ht.set(e,{transition$:r,complete:()=>{l.next(),l.complete()},context:n});let c=Zo(e);return t.runOutsideAngular(()=>{let f=L(e,"transitionend").pipe(k(d),Re(({target:h})=>h===e)),p=qi(c+ss).pipe(k(d));Jt(p,f,l).pipe(k(d)).subscribe(()=>{Ht.delete(e),t.run(()=>{a(),r.next(),r.complete()})})}),r.asObservable()};function rs(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 as=(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=rs(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]=""}},ls=(()=>{let e=class e{constructor(){this._ngbConfig=u(pt),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(ls),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,as,{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=H({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})(),cs=0,Jd=(()=>{let e=class e{constructor(){this._vcr=u(ei),this._element=u(J).nativeElement,this._item=u(Ye),this._viewRef=null}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(){if(!this._viewRef){this._viewRef=this._vcr.createEmbeddedView(this._bodyTpl),this._viewRef.detectChanges();for(let i of this._viewRef.rootNodes)this._element.appendChild(i)}}};e.\u0275fac=function(n){return new(n||e)},e.\u0275dir=H({type:e,selectors:[["","ngbAccordionBody",""]],contentQueries:function(n,o,a){if(n&1&&xe(a,It,7),n&2){let r;ve(r=ye())&&(o._bodyTpl=r.first)}},hostAttrs:[1,"accordion-body"]});let t=e;return t})(),ds=(()=>{let e=class e{constructor(){this.item=u(Ye),this.ngbCollapse=u(Cn)}};e.\u0275fac=function(n){return new(n||e)},e.\u0275dir=H({type:e,selectors:[["","ngbAccordionCollapse",""]],hostAttrs:["role","region",1,"accordion-collapse"],hostVars:2,hostBindings:function(n,o){n&2&&(ae("id",o.item.collapseId),Ne("aria-labelledby",o.item.toggleId))},exportAs:["ngbAccordionCollapse"],features:[ti([Cn])]});let t=e;return t})(),us=(()=>{let e=class e{constructor(){this.item=u(Ye),this.accordion=u(Bn)}};e.\u0275fac=function(n){return new(n||e)},e.\u0275dir=H({type:e,selectors:[["","ngbAccordionToggle",""]],hostVars:5,hostBindings:function(n,o){n&1&&me("click",function(){return!o.item.disabled&&o.accordion.toggle(o.item.id)}),n&2&&(ae("id",o.item.toggleId),Ne("aria-controls",o.item.collapseId)("aria-expanded",!o.item.collapsed),W("collapsed",o.item.collapsed))}});let t=e;return t})(),qd=(()=>{let e=class e{constructor(){this.item=u(Ye)}};e.\u0275fac=function(n){return new(n||e)},e.\u0275dir=H({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([us])]});let t=e;return t})(),Yd=(()=>{let e=class e{constructor(){this.item=u(Ye)}};e.\u0275fac=function(n){return new(n||e)},e.\u0275dir=H({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})(),Ye=(()=>{let e=class e{constructor(){this._accordion=u(Bn),this._cd=u(ze),this._destroyRef=u(Mt),this._collapsed=!0,this._id=`ngb-accordion-item-${cs++}`,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(xt(this._destroyRef)).subscribe(()=>{this._collapseAnimationRunning=!1,this.hidden.emit(),this._accordion.hidden.emit(this.id)}),i.shown.pipe(xt(this._destroyRef)).subscribe(()=>{this.shown.emit(),this._accordion.shown.emit(this.id)})}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=H({type:e,selectors:[["","ngbAccordionItem",""]],contentQueries:function(n,o,a){if(n&1&&xe(a,ds,7),n&2){let r;ve(r=ye())&&(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(Yo),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=H({type:e,selectors:[["","ngbAccordion",""]],contentQueries:function(n,o,a){if(n&1&&xe(a,Ye,4),n&2){let r;ve(r=ye())&&(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})(),hs=(()=>{let e=class e{constructor(){this._ngbConfig=u(pt),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})(),ps=({classList:t})=>{t.remove("show")},Zd=(()=>{let e=class e{constructor(){this._config=u(hs),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,ps,{animation:this.animation,runningTransition:"continue"});return i.subscribe(()=>this.closed.emit()),i}};e.\u0275fac=function(n){return new(n||e)},e.\u0275cmp=Se({type:e,selectors:[["ngb-alert"]],hostAttrs:["role","alert"],hostVars:6,hostBindings:function(n,o){n&2&&(_e("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:Fi,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&&(Rt(),St(0),st(1,jo,1,0,"button",0)),n&2&&(je(),ni(o.dismissible?1:-1))},styles:[`ngb-alert{display:block}
|
|
1
|
+
import{a as hn}from"./chunk-Q7ULBWII.js";import{$b as li,Aa as nn,Bb as st,Ca as ie,Da as Mt,E as L,Ec as dn,F as qi,Fa as T,Ga as re,H as Re,Hc as ze,I as Jt,J as wt,Ja as J,Kb as ii,Lb as Ne,Mb as Ct,Nc as Nt,O as $e,Ob as W,Pb as _e,Q as Yi,Ra as fe,Rb as ni,S as Zi,Sa as Tt,Sb as oi,Sc as le,Ta as ot,Ub as si,Vb as ri,Wb as Le,Xb as We,Yb as ai,Zb as sn,_b as rn,a as yt,aa as qt,ac as ae,b as Qt,ba as k,ca as it,cc as me,da as Ot,dc as ge,ec as Rt,fc as St,ga as Yt,gc as xe,ha as K,hc as an,hd as un,ia as I,ib as je,ic as ve,jc as ye,k as bt,ka as en,lb as It,mc as ln,n as X,na as u,nc as ci,o as Ki,oc as di,p as Qi,pb as ei,r as tt,ta as Zt,ub as Se,va as tn,vb as C,vc as ui,wa as nt,wb as H,x as Ce,xa as Dt,ya as Et,yb as on,z as Ji,zb as ti,zc as cn}from"./chunk-DGXFIYFL.js";function xt(t){t||(tn(xt),t=u(Mt));let e=new bt(s=>t.onDestroy(s.next.bind(s)));return s=>s.pipe(k(e))}var R="top",U="bottom",B="right",N="left",Ft="auto",be=[R,U,B,N],ce="start",Fe="end",pn="clippingParents",kt="viewport",Xe="popper",fn="reference",hi=be.reduce(function(t,e){return t.concat([e+"-"+ce,e+"-"+Fe])},[]),Bt=[].concat(be,[Ft]).reduce(function(t,e){return t.concat([e,e+"-"+ce,e+"-"+Fe])},[]),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 Ke(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,ke=Math.min,de=Math.round;function Qe(){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 rt(){return!/^((?!chrome|android).)*safari/i.test(Qe())}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&&de(i.width)/t.offsetWidth||1,o=t.offsetHeight>0&&de(i.height)/t.offsetHeight||1);var a=q(t)?O(t):window,r=a.visualViewport,l=!rt()&&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 Be(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 at(t,e){var s=e.getRootNode&&e.getRootNode();if(t.contains(e))return!0;if(s&&Ke(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 pi(t){return["table","td","th"].indexOf(P(t))>=0}function V(t){return((q(t)?t.ownerDocument:t.document)||window.document).documentElement}function ue(t){return P(t)==="html"?t:t.assignedSlot||t.parentNode||(Ke(t)?t.host:null)||V(t)}function gn(t){return!x(t)||z(t).position==="fixed"?null:t.offsetParent}function Oo(t){var e=/firefox/i.test(Qe()),s=/Trident/i.test(Qe());if(s&&x(t)){var i=z(t);if(i.position==="fixed")return null}var n=ue(t);for(Ke(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&&pi(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 Pe(t){return["top","bottom"].indexOf(t)>=0?"x":"y"}function Ae(t,e,s){return ne(t,ke(e,s))}function vn(t,e,s){var i=Ae(t,e,s);return i>s?s:i}function lt(){return{top:0,right:0,bottom:0,left:0}}function ct(t){return Object.assign({},lt(),t)}function dt(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,ct(typeof e!="number"?e:dt(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=Pe(r),d=[N,B].indexOf(r)>=0,c=d?"height":"width";if(!(!o||!a)){var f=Do(n.padding,s),p=Be(o),h=l==="y"?R:N,m=l==="y"?U: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=Ae(_,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)||at(e.elements.popper,n)&&(e.elements.arrow=n))}var fi={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:de(s*n)/n||0,y:de(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=V(s),z(b).position!=="static"&&r==="absolute"&&(D="scrollHeight",G="scrollWidth")),b=b,n===R||(n===N||n===B)&&o===Fe){_=U;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===U)&&o===Fe){M=B;var S=f&&b===y&&y.visualViewport?y.visualViewport.width:b[G];h-=S-i.width,h*=l?1:-1}}var $=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({},$,(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({},$,(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 Pt={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,Pt)}),r&&l.addEventListener("resize",s.update,Pt),function(){o&&d.forEach(function(c){c.removeEventListener("scroll",s.update,Pt)}),r&&l.removeEventListener("resize",s.update,Pt)}}var wn={name:"eventListeners",enabled:!0,phase:"write",fn:function(){},effect:Ro,data:{}};var So={left:"right",right:"left",bottom:"top",top:"bottom"};function Je(t){return t.replace(/left|right|bottom|top/g,function(e){return So[e]})}var No={start:"end",end:"start"};function At(t){return t.replace(/start|end/g,function(e){return No[e]})}function Ge(t){var e=O(t),s=e.pageXOffset,i=e.pageYOffset;return{scrollLeft:s,scrollTop:i}}function He(t){return Y(V(t)).left+Ge(t).scrollLeft}function _i(t,e){var s=O(t),i=V(t),n=s.visualViewport,o=i.clientWidth,a=i.clientHeight,r=0,l=0;if(n){o=n.width,a=n.height;var d=rt();(d||!d&&e==="fixed")&&(r=n.offsetLeft,l=n.offsetTop)}return{width:o,height:a,x:r+He(t),y:l}}function mi(t){var e,s=V(t),i=Ge(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+He(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 Ue(t){var e=z(t),s=e.overflow,i=e.overflowX,n=e.overflowY;return/auto|scroll|overlay|hidden/.test(s+n+i)}function Gt(t){return["html","body","#document"].indexOf(P(t))>=0?t.ownerDocument.body:x(t)&&Ue(t)?t:Gt(ue(t))}function we(t,e){var s;e===void 0&&(e=[]);var i=Gt(t),n=i===((s=t.ownerDocument)==null?void 0:s.body),o=O(i),a=n?[o].concat(o.visualViewport||[],Ue(i)?i:[]):i,r=e.concat(a);return n?r:r.concat(we(ue(a)))}function qe(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===kt?qe(_i(t,s)):q(e)?xo(e,s):qe(mi(V(t)))}function Fo(t){var e=we(ue(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)&&at(n,i)&&P(n)!=="body"}):[]}function gi(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=ke(c.right,l.right),l.bottom=ke(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 ut(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 U: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?Pe(n):null;if(d!=null){var c=d==="y"?"height":"width";switch(o){case ce:l[d]=l[d]-(e[c]/2-s[c]/2);break;case Fe: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?kt:d,f=s.elementContext,p=f===void 0?Xe:f,h=s.altBoundary,m=h===void 0?!1:h,v=s.padding,g=v===void 0?0:v,w=ct(typeof g!="number"?g:dt(g,be)),E=p===Xe?fn:Xe,M=t.rects.popper,_=t.elements[m?E:p],y=gi(q(_)?_:_.contextElement||V(t.elements.popper),l,c,a),b=Y(t.elements.reference),D=ut({reference:b,element:M,strategy:"absolute",placement:n}),G=qe(Object.assign({},M,D)),F=p===Xe?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},$=t.modifiersData.offset;if(p===Xe&&$){var ee=$[n];Object.keys(S).forEach(function(j){var De=[B,U].indexOf(j)>=0?1:-1,Ee=[R,U].indexOf(j)>=0?"y":"x";S[j]+=ee[Ee]*De})}return S}function vi(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?Bt:l,c=Z(i),f=c?r?hi:hi.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)===Ft)return[];var e=Je(t);return[At(t),e,At(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?[Je(g)]:ko(g)),_=[g].concat(M).reduce(function(Ve,pe){return Ve.concat(A(pe)===Ft?vi(e,{placement:pe,boundary:c,rootBoundary:f,padding:d,flipVariations:m,allowedAutoPlacements:v}):pe)},[]),y=e.rects.reference,b=e.rects.popper,D=new Map,G=!0,F=_[0],S=0;S<_.length;S++){var $=_[S],ee=A($),j=Z($)===ce,De=[R,U].indexOf(ee)>=0,Ee=De?"width":"height",Q=Oe(e,{placement:$,boundary:c,rootBoundary:f,altBoundary:p,padding:d}),te=De?j?B:N:j?U:R;y[Ee]>b[Ee]&&(te=Je(te));var ft=Je(te),Me=[];if(o&&Me.push(Q[ee]<=0),r&&Me.push(Q[te]<=0,Q[ft]<=0),Me.every(function(Ve){return Ve})){F=$,G=!1;break}D.set($,Me)}if(G)for(var _t=m?3:1,Wt=function(pe){var et=_.find(function(gt){var Te=D.get(gt);if(Te)return Te.slice(0,pe).every(function(zt){return zt})});if(et)return F=et,"break"},Ze=_t;Ze>0;Ze--){var mt=Wt(Ze);if(mt==="break")break}e.placement!==F&&(e.modifiersData[i]._skip=!0,e.placement=F,e.reset=!0)}}var yi={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=Bt.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 bi={name:"offset",enabled:!0,phase:"main",requires:["popperOffsets"],fn:Ao};function Go(t){var e=t.state,s=t.name;e.modifiersData[s]=ut({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 wi(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,_=Pe(w),y=wi(_),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),$=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"?U:B,Q=_==="y"?"height":"width",te=b[_],ft=te+g[De],Me=te-g[Ee],_t=h?-G[Q]/2:0,Wt=E===ce?D[Q]:G[Q],Ze=E===ce?-G[Q]:-D[Q],mt=e.elements.arrow,Ve=h&&mt?Be(mt):{width:0,height:0},pe=e.modifiersData["arrow#persistent"]?e.modifiersData["arrow#persistent"].padding:lt(),et=pe[De],gt=pe[Ee],Te=Ae(0,D[Q],Ve[Q]),zt=M?D[Q]/2-_t-Te-et-S.mainAxis:Wt-Te-et-S.mainAxis,oo=M?-D[Q]/2+_t+Te+gt+S.mainAxis:Ze+Te+gt+S.mainAxis,Xt=e.elements.arrow&&oe(e.elements.arrow),so=Xt?_==="y"?Xt.clientTop||0:Xt.clientLeft||0:0,Hi=(j=$==null?void 0:$[_])!=null?j:0,ro=te+zt-Hi-so,ao=te+oo-Hi,Ui=Ae(h?ke(ft,ro):ft,te,h?ne(Me,ao):Me);b[_]=Ui,ee[_]=Ui-te}if(r){var Vi,lo=_==="x"?R:N,co=_==="x"?U:B,Ie=b[y],vt=y==="y"?"height":"width",$i=Ie+g[lo],ji=Ie-g[co],Kt=[R,N].indexOf(w)!==-1,Li=(Vi=$==null?void 0:$[y])!=null?Vi:0,Wi=Kt?$i:Ie-D[vt]-G[vt]-Li+S.altAxis,zi=Kt?Ie+D[vt]+G[vt]-Li-S.altAxis:ji,Xi=h&&Kt?vn(Wi,Ie,zi):Ae(h?Wi:$i,Ie,h?zi:ji);b[y]=Xi,ee[y]=Xi-Ie}e.modifiersData[i]=ee}}var Oi={name:"preventOverflow",enabled:!0,phase:"main",fn:Ho,requiresIfExists:["offset"]};function Di(t){return{scrollLeft:t.scrollLeft,scrollTop:t.scrollTop}}function Ei(t){return t===O(t)||!x(t)?Ge(t):Di(t)}function Uo(t){var e=t.getBoundingClientRect(),s=de(e.width)/t.offsetWidth||1,i=de(e.height)/t.offsetHeight||1;return s!==1||i!==1}function Mi(t,e,s){s===void 0&&(s=!1);var i=x(e),n=x(e)&&Uo(e),o=V(e),a=Y(t,n,s),r={scrollLeft:0,scrollTop:0},l={x:0,y:0};return(i||!i&&!s)&&((P(e)!=="body"||Ue(o))&&(r=Ei(e)),x(e)?(l=Y(e,!0),l.x+=e.clientLeft,l.y+=e.clientTop):o&&(l.x=He(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 Ti(t){var e=Vo(t);return _n.reduce(function(s,i){return s.concat(e.filter(function(n){return n.phase===i}))},[])}function Ii(t){var e;return function(){return e||(e=new Promise(function(s){Promise.resolve().then(function(){e=void 0,s(t())})})),e}}function Ci(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=Ti(Ci([].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:Mi(E,oe(M),c.options.strategy==="fixed"),popper:Be(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:Ii(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],Ri=Tn({defaultModifiers:$o});var Fi=["*"];function jo(t,e){if(t&1){let s=li();Le(0,"button",1),me("click",function(){Dt(s);let n=ge();return Et(n.close())}),We()}}var Lo=["dialog"];function Wo(t,e){if(t&1&&(Le(0,"span"),ci(1),We()),t&2){let s=ge().$implicit,i=ge();_e(i.highlightClass),je(),di(s)}}function zo(t,e){if(t&1&&(sn(0),ci(1),rn()),t&2){let s=ge().$implicit;je(),di(s)}}function Xo(t,e){if(t&1&&st(0,Wo,2,4,"span",0)(1,zo,2,1,"ng-container"),t&2){let s=e.$index;ni(s%2!==0?0:1)}}var Ko=(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;Ct("result",n(s))("term",i)}}function Jo(t,e){}function qo(t,e){if(t&1){let s=li();Le(0,"button",3),me("mouseenter",function(){let n=Dt(s).$index,o=ge();return Et(o.markActive(n))})("click",function(){let n=Dt(s).$implicit,o=ge();return Et(o.select(n))}),st(1,Jo,0,0,"ng-template",4),We()}if(t&2){let s=e.$implicit,i=e.$index,n=ge(),o=ln(1);W("active",i===n.activeIdx),Ct("id",n.id+"-"+i),je(),Ct("ngTemplateOutlet",n.resultTemplate||o)("ngTemplateOutletContext",cn(5,Ko,s,n.term,n.formatter))}}var Fn={animation:!0,transitionTimerDelayMs:5},pt=(()=>{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})(),Yo=(()=>{let e=class e{constructor(){this._ngbConfig=u(pt),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 Zo(t){let{transitionDelay:e,transitionDuration:s}=window.getComputedStyle(t),i=parseFloat(e),n=parseFloat(s);return(i+n)*1e3}function ht(t){return t!=null?`${t}`:""}function Lt(t){return typeof t=="string"}function Vt(t){return t!=null}function es(t){return t&&t.then}function ts(t){return t.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&")}function is(t,e){return!e||typeof t.closest>"u"?null:t.closest(e)}function ki(t){return(t||document.body).getBoundingClientRect()}function ns(t){return e=>new bt(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 os=()=>{},{transitionTimerDelayMs:ss}=Fn,Ht=new Map,se=(t,e,s,i)=>{let n=i.context||{},o=Ht.get(e);if(o)switch(i.runningTransition){case"continue":return Qi;case"stop":t.run(()=>o.transition$.complete()),n=Object.assign(o.context,n),Ht.delete(e)}let a=s(e,i.animation,n)||os;if(!i.animation||window.getComputedStyle(e).transitionProperty==="none")return t.run(()=>a()),tt(void 0).pipe(ns(t));let r=new X,l=new X,d=r.pipe(Zi(!0));Ht.set(e,{transition$:r,complete:()=>{l.next(),l.complete()},context:n});let c=Zo(e);return t.runOutsideAngular(()=>{let f=L(e,"transitionend").pipe(k(d),Re(({target:h})=>h===e)),p=qi(c+ss).pipe(k(d));Jt(p,f,l).pipe(k(d)).subscribe(()=>{Ht.delete(e),t.run(()=>{a(),r.next(),r.complete()})})}),r.asObservable()};function rs(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 as=(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=rs(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]=""}},ls=(()=>{let e=class e{constructor(){this._ngbConfig=u(pt),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(ls),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,as,{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=H({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})(),cs=0,Jd=(()=>{let e=class e{constructor(){this._vcr=u(ei),this._element=u(J).nativeElement,this._item=u(Ye),this._viewRef=null}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(){if(!this._viewRef){this._viewRef=this._vcr.createEmbeddedView(this._bodyTpl),this._viewRef.detectChanges();for(let i of this._viewRef.rootNodes)this._element.appendChild(i)}}};e.\u0275fac=function(n){return new(n||e)},e.\u0275dir=H({type:e,selectors:[["","ngbAccordionBody",""]],contentQueries:function(n,o,a){if(n&1&&xe(a,It,7),n&2){let r;ve(r=ye())&&(o._bodyTpl=r.first)}},hostAttrs:[1,"accordion-body"]});let t=e;return t})(),ds=(()=>{let e=class e{constructor(){this.item=u(Ye),this.ngbCollapse=u(Cn)}};e.\u0275fac=function(n){return new(n||e)},e.\u0275dir=H({type:e,selectors:[["","ngbAccordionCollapse",""]],hostAttrs:["role","region",1,"accordion-collapse"],hostVars:2,hostBindings:function(n,o){n&2&&(ae("id",o.item.collapseId),Ne("aria-labelledby",o.item.toggleId))},exportAs:["ngbAccordionCollapse"],features:[ti([Cn])]});let t=e;return t})(),us=(()=>{let e=class e{constructor(){this.item=u(Ye),this.accordion=u(Bn)}};e.\u0275fac=function(n){return new(n||e)},e.\u0275dir=H({type:e,selectors:[["","ngbAccordionToggle",""]],hostVars:5,hostBindings:function(n,o){n&1&&me("click",function(){return!o.item.disabled&&o.accordion.toggle(o.item.id)}),n&2&&(ae("id",o.item.toggleId),Ne("aria-controls",o.item.collapseId)("aria-expanded",!o.item.collapsed),W("collapsed",o.item.collapsed))}});let t=e;return t})(),qd=(()=>{let e=class e{constructor(){this.item=u(Ye)}};e.\u0275fac=function(n){return new(n||e)},e.\u0275dir=H({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([us])]});let t=e;return t})(),Yd=(()=>{let e=class e{constructor(){this.item=u(Ye)}};e.\u0275fac=function(n){return new(n||e)},e.\u0275dir=H({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})(),Ye=(()=>{let e=class e{constructor(){this._accordion=u(Bn),this._cd=u(ze),this._destroyRef=u(Mt),this._collapsed=!0,this._id=`ngb-accordion-item-${cs++}`,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(xt(this._destroyRef)).subscribe(()=>{this._collapseAnimationRunning=!1,this.hidden.emit(),this._accordion.hidden.emit(this.id)}),i.shown.pipe(xt(this._destroyRef)).subscribe(()=>{this.shown.emit(),this._accordion.shown.emit(this.id)})}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=H({type:e,selectors:[["","ngbAccordionItem",""]],contentQueries:function(n,o,a){if(n&1&&xe(a,ds,7),n&2){let r;ve(r=ye())&&(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(Yo),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=H({type:e,selectors:[["","ngbAccordion",""]],contentQueries:function(n,o,a){if(n&1&&xe(a,Ye,4),n&2){let r;ve(r=ye())&&(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})(),hs=(()=>{let e=class e{constructor(){this._ngbConfig=u(pt),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})(),ps=({classList:t})=>{t.remove("show")},Zd=(()=>{let e=class e{constructor(){this._config=u(hs),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,ps,{animation:this.animation,runningTransition:"continue"});return i.subscribe(()=>this.closed.emit()),i}};e.\u0275fac=function(n){return new(n||e)},e.\u0275cmp=Se({type:e,selectors:[["ngb-alert"]],hostAttrs:["role","alert"],hostVars:6,hostBindings:function(n,o){n&2&&(_e("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:Fi,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&&(Rt(),St(0),st(1,jo,1,0,"button",0)),n&2&&(je(),ni(o.dismissible?1:-1))},styles:[`ngb-alert{display:block}
|
|
2
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 Ut=(t,e)=>e?e.some(s=>s.contains(t)):!1,Rn=(t,e)=>!e||is(t,e)!=null,fs=(()=>{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})(),_s=t=>fs?()=>setTimeout(()=>t(),100):t;function Bi(t,e,s,i,n,o,a,r){s&&t.runOutsideAngular(_s(()=>{let l=p=>{let h=p.target;return p.button===2||Ut(h,a)?!1:s==="inside"?Ut(h,o)&&Rn(h,r):s==="outside"?!Ut(h,o):Rn(h,r)||!Ut(h,o)},d=L(e,"keydown").pipe(k(n),Re(p=>p.key==="Escape"),it(p=>p.preventDefault())),c=L(e,"mousedown").pipe(Ce(l),k(n)),f=L(e,"mouseup").pipe(Ot(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 ms=(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"),Ot(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),Ot(n),Ce(o=>o[1])).subscribe(o=>o.focus())})},gs=(()=>{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})(),vs=/\s+/,ys=/ +/gi,bs={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 ws(t,e){let[s,i]=bs[t];return e&&i||s}var Os=/^left/,Ds=/^right/,Es=/^start/,Ms=/^end/;function Ts(t,e){let[s,i]=e.split("-"),n=s.replace(Os,"start").replace(Ds,"end"),o=[n];if(i){let a=i;(s==="left"||s==="right")&&(a=a.replace(Es,"top").replace(Ms,"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(vs),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=>ws(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+=` ${Ts(e,p)}`,h=h.trim().replace(ys," "),f.className=h}},yi,Oi,fi,{enabled:!0,name:"flip",options:{fallbackPlacements:a}},{enabled:!0,name:"preventOverflow",phase:"main",fn:function(){}}]}}function Nn(t){return t}function Pi(){let t=u(gs),e=null;return{createPopper(s){if(!e){let n=(s.updatePopperOptions||Nn)(Sn(s,t));e=Ri(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(bi,{name:"offset",options:{offset:()=>t}}),e)}var eu=new Date(1882,10,12),tu=new Date(2174,10,25);var iu=1e3*60*60*24;var Gi=1080,Is=24*Gi,Cs=12*Gi+793,nu=29*Is+Cs,ou=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})(),Rs=(()=>{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=H({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})(),su=(()=>{let e=class e{constructor(){this.item=u(jn)}};e.\u0275fac=function(n){return new(n||e)},e.\u0275dir=H({type:e,selectors:[["button","ngbDropdownItem",""]],hostVars:1,hostBindings:function(n,o){n&2&&ae("disabled",o.item.disabled)}});let t=e;return t})(),Ss=(()=>{let e=class e{constructor(){this.dropdown=u(Ln),this.nativeElement=u(J).nativeElement}};e.\u0275fac=function(n){return new(n||e)},e.\u0275dir=H({type:e,selectors:[["","ngbDropdownMenu",""]],contentQueries:function(n,o,a){if(n&1&&xe(a,jn,4),n&2){let r;ve(r=ye())&&(o.menuItems=r)}},hostAttrs:[1,"dropdown-menu"],hostVars:2,hostBindings:function(n,o){n&1&&me("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})(),Si=(()=>{let e=class e{constructor(){this.dropdown=u(Ln),this.nativeElement=u(J).nativeElement}};e.\u0275fac=function(n){return new(n||e)},e.\u0275dir=H({type:e,selectors:[["","ngbDropdownAnchor",""]],hostAttrs:[1,"dropdown-toggle"],hostVars:3,hostBindings:function(n,o){n&2&&(Ne("aria-expanded",o.dropdown.isOpen()),W("show",o.dropdown.isOpen()))}});let t=e;return t})(),ru=(()=>{let e=class e extends Si{};e.\u0275fac=(()=>{let i;return function(o){return(i||(i=nn(e)))(o||e)}})(),e.\u0275dir=H({type:e,selectors:[["","ngbDropdownToggle",""]],hostAttrs:[1,"dropdown-toggle"],hostVars:3,hostBindings:function(n,o){n&1&&me("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&&(Ne("aria-expanded",o.dropdown.isOpen()),W("show",o.dropdown.isOpen()))},features:[ui([{provide:Si,useExisting:Yt(()=>e)}]),on]});let t=e;return t})(),Ln=(()=>{let e=class e{constructor(){this._changeDetector=u(ze),this._config=u(Rs),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(){ot(()=>{this._applyPlacementClasses(),this._open&&this._setCloseHandlers()},{phase:fe.Write,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=Tt(()=>{this._positionMenu()},{phase:fe.Write,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($e(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($e(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=H({type:e,selectors:[["","ngbDropdown",""]],contentQueries:function(n,o,a){if(n&1&&(xe(a,Ss,5),xe(a,Si,5)),n&2){let r;ve(r=ye())&&(o._menu=r.first),ve(r=ye())&&(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:[nt]});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})(),Ns=(()=>{let e=class e{constructor(){this._ngbConfig=u(pt),this.backdrop=!0,this.fullscreen=!1,this.keyboard=!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})(),he=class{constructor(e,s,i){this.nodes=e,this.viewRef=s,this.componentRef=i}},$t=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;ot(()=>{o.next(),o.complete()},{injector:this._injector,phase:fe.MixedReadWrite});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(it(()=>{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})):tt(void 0)}_getContentRef(e,s){if(e)if(e instanceof It){let i=e.createEmbeddedView(s);return this._applicationRef.attachView(i),new he([i.rootNodes],i)}else return new he([[this._document.createTextNode(`${e}`)]]);else return new he([])}},xs=(()=>{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})(),Fs=(()=>{let e=class e{constructor(){this._nativeElement=u(J).nativeElement,this._zone=u(re),this._injector=u(ie)}ngOnInit(){ot(()=>se(this._zone,this._nativeElement,(i,n)=>{n&&ki(i),i.classList.add("show")},{animation:this.animation,runningTransition:"continue"}),{injector:this._injector,phase:fe.MixedReadWrite})}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=Se({type:e,selectors:[["ngb-modal-backdrop"]],hostAttrs:[2,"z-index","1055"],hostVars:6,hostBindings:function(n,o){n&2&&(_e("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})(),jt=class{update(e){}close(e){}dismiss(e){}},ks=["animation","ariaLabelledBy","ariaDescribedBy","backdrop","centered","fullscreen","keyboard","scrollable","size","windowClass","modalDialogClass"],Bs=["animation","backdropClass"],Ni=class{_applyWindowOptions(e,s){ks.forEach(i=>{Vt(s[i])&&(e[i]=s[i])})}_applyBackdropOptions(e,s){Bs.forEach(i=>{Vt(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();es(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():tt(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}}),wt(e,s).subscribe(()=>{this._hidden.next(),this._hidden.complete()})}},xi=function(t){return t[t.BACKDROP_CLICK=0]="BACKDROP_CLICK",t[t.ESC=1]="ESC",t}(xi||{}),Ps=(()=>{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.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,ot(()=>this._show(),{injector:this._injector,phase:fe.MixedReadWrite})}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=wt(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);wt(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(xi.ESC))}):this.backdrop==="static"&&this._bumpBackdrop()});let n=!1;L(this._dialogEl.nativeElement,"mousedown").pipe(k(this._closed$),it(()=>n=!1),qt(()=>L(i,"mouseup").pipe(k(this._closed$),$e(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(xi.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=Se({type:e,selectors:[["ngb-modal-window"]],viewQuery:function(n,o){if(n&1&&an(Lo,7),n&2){let a;ve(a=ye())&&(o._dialogEl=a.first)}},hostAttrs:["role","dialog","tabindex","-1"],hostVars:7,hostBindings:function(n,o){n&2&&(Ne("aria-modal",!0)("aria-labelledby",o.ariaLabelledBy)("aria-describedby",o.ariaDescribedBy),_e("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",scrollable:"scrollable",size:"size",windowClass:"windowClass",modalDialogClass:"modalDialogClass"},outputs:{dismissEvent:"dismiss"},ngContentSelectors:Fi,decls:4,vars:2,consts:[["dialog",""],["role","document"],[1,"modal-content"]],template:function(n,o){n&1&&(Rt(),Le(0,"div",1,0)(2,"div",2),St(3),We()()),n&2&&_e("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
3
|
`],encapsulation:2});let t=e;return t})(),As=(()=>{let e=class e{constructor(){this._applicationRef=u(ii),this._injector=u(ie),this._environmentInjector=u(Zt),this._document=u(le),this._scrollBar=u(xs),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];ms(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:Vt(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 jt;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 Ni(f,d,c,o.beforeDismiss);return this._registerModalRef(p),this._registerWindowCmpt(f),p.hidden.pipe($e(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=Nt(Fs,{environmentInjector:this._applicationRef.injector,elementInjector:this._injector});return this._applicationRef.attachView(n.hostView),i.appendChild(n.location.nativeElement),n}_attachWindowComponent(i,n){let o=Nt(Ps,{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 It?this._createFromTemplateRef(o,a):Lt(o)?this._createFromString(o):this._createFromComponent(i,n,o,a,r):new he([])}_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 he([a.rootNodes],a)}_createFromString(i){let n=this._document.createTextNode(`${i}`);return new he([[n]])}_createFromComponent(i,n,o,a,r){let l=ie.create({providers:[{provide:jt,useValue:a}],parent:i}),d=Nt(o,{environmentInjector:n,elementInjector:l}),c=d.location.nativeElement;return r.scrollable&&c.classList.add("component-host-scrollable"),this._applicationRef.attachView(d.hostView),new he([[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})(),Gs=(()=>{let e=class e{constructor(){this._injector=u(ie),this._modalStack=u(As),this._config=u(Ns)}open(i,n={}){let o=yt(Qt(yt({},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:[Gs]});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})(),Hs={hover:["mouseenter","mouseleave"],focus:["focusin","focusout"]};function Us(t){let e=(t||"").trim();if(e.length===0)return[];let s=e.split(/\s+/).map(n=>n.split(":")).map(n=>Hs[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 Vs(t,e,s,i,n,o=0,a=0){let r=Us(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})(),$s=(()=>{let e=class e{constructor(){this._ngbConfig=u(pt),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})(),js=0,Ls=(()=>{let e=class e{};e.\u0275fac=function(n){return new(n||e)},e.\u0275cmp=Se({type:e,selectors:[["ngb-tooltip-window"]],hostAttrs:["role","tooltip"],hostVars:5,hostBindings:function(n,o){n&2&&(ae("id",o.id),_e("tooltip"+(o.tooltipClass?" "+o.tooltipClass:"")),W("fade",o.animation))},inputs:{animation:"animation",id:"id",tooltipClass:"tooltipClass"},ngContentSelectors:Fi,decls:3,vars:0,consts:[["data-popper-arrow","",1,"tooltip-arrow"],[1,"tooltip-inner"]],template:function(n,o){n&1&&(Rt(),ai(0,"div",0),Le(1,"div",1),St(2),We())},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
4
|
`],encapsulation:2,changeDetection:0});let t=e;return t})(),au=(()=>{let e=class e{constructor(){this._config=u($s),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(ze),this._injector=u(ie),this._ngbTooltipWindowId=`ngb-tooltip-${js++}`,this._popupService=new $t(Ls),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=Tt(()=>{this._positioning.update()},{phase:fe.MixedReadWrite,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=Vs(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=H({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:[nt]});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})(),Ws=(()=>{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=ht(this.result),o=Array.isArray(this.term)?this.term:[this.term],a=c=>this.accentSensitive?c:In(c),r=o.map(c=>ts(a(ht(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=Se({type:e,selectors:[["ngb-highlight"]],inputs:{highlightClass:"highlightClass",result:"result",term:"term",accentSensitive:"accentSensitive"},features:[nt],decls:2,vars:0,consts:[[3,"class"]],template:function(n,o){n&1&&si(0,Xo,2,1,null,null,oi),n&2&&ri(o.parts)},styles:[`.ngb-highlight{font-weight:700}
|