From 19fcec84d8d7d21e796c7624e521b60d28ee21ed Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Sun, 7 Apr 2024 20:45:59 +0200 Subject: Adding upstream version 16.2.11+ds. Signed-off-by: Daniel Baumann --- .../dist/en-US/117.9781bbf8cc6a4aaa7e8e.js | 1 + .../dist/en-US/281.0d0cd268ddc6a6760dd4.js | 1 + .../frontend/dist/en-US/3rdpartylicenses.txt | 3508 ++++++++++++++++++++ .../dist/en-US/483.f42c1d67e206231ecdac.js | 1 + .../dist/en-US/Ceph_Logo.487a0001b327fa7f5232.svg | 71 + .../assets/Ceph_Ceph_Logo_with_text_red_white.svg | 69 + .../assets/Ceph_Ceph_Logo_with_text_white.svg | 69 + .../frontend/dist/en-US/assets/Ceph_Logo.svg | 71 + .../frontend/dist/en-US/assets/ceph_background.gif | Bin 0 -> 98115 bytes .../frontend/dist/en-US/assets/loading.gif | Bin 0 -> 35386 bytes .../frontend/dist/en-US/assets/logo-mini.png | Bin 0 -> 1811 bytes .../frontend/dist/en-US/assets/prometheus_logo.svg | 50 + .../en-US/ceph_background.e82dd79127290ddbe8cb.gif | Bin 0 -> 98115 bytes .../mgr/dashboard/frontend/dist/en-US/favicon.ico | Bin 0 -> 1150 bytes .../forkawesome-webfont.2dfb5f36fc148e26e398.woff | Bin 0 -> 115148 bytes .../forkawesome-webfont.7c20758e3e7c7dff7c8d.woff2 | Bin 0 -> 91624 bytes .../forkawesome-webfont.86541105409e56d17291.svg | 2849 ++++++++++++++++ .../forkawesome-webfont.e182ad6df04f9177b326.eot | Bin 0 -> 188946 bytes .../forkawesome-webfont.ee4d8bfd0af89fc714a2.ttf | Bin 0 -> 188756 bytes .../mgr/dashboard/frontend/dist/en-US/index.html | 23 + .../dist/en-US/main.c3b711a3156fe72f66f4.js | 3 + .../dist/en-US/polyfills.2068f3f22a496426465b.js | 1 + .../en-US/prometheus_logo.8b3183e5a2db0e87bb2b.svg | 50 + .../dist/en-US/runtime.dfeb6a20b4d203b567dc.js | 1 + .../dist/en-US/scripts.6bda3fa7e09a87cd4228.js | 7 + .../dist/en-US/styles.f05c06a6a64f4730faae.css | 20 + 26 files changed, 6795 insertions(+) create mode 100644 src/pybind/mgr/dashboard/frontend/dist/en-US/117.9781bbf8cc6a4aaa7e8e.js create mode 100644 src/pybind/mgr/dashboard/frontend/dist/en-US/281.0d0cd268ddc6a6760dd4.js create mode 100644 src/pybind/mgr/dashboard/frontend/dist/en-US/3rdpartylicenses.txt create mode 100644 src/pybind/mgr/dashboard/frontend/dist/en-US/483.f42c1d67e206231ecdac.js create mode 100644 src/pybind/mgr/dashboard/frontend/dist/en-US/Ceph_Logo.487a0001b327fa7f5232.svg create mode 100644 src/pybind/mgr/dashboard/frontend/dist/en-US/assets/Ceph_Ceph_Logo_with_text_red_white.svg create mode 100644 src/pybind/mgr/dashboard/frontend/dist/en-US/assets/Ceph_Ceph_Logo_with_text_white.svg create mode 100644 src/pybind/mgr/dashboard/frontend/dist/en-US/assets/Ceph_Logo.svg create mode 100644 src/pybind/mgr/dashboard/frontend/dist/en-US/assets/ceph_background.gif create mode 100755 src/pybind/mgr/dashboard/frontend/dist/en-US/assets/loading.gif create mode 100644 src/pybind/mgr/dashboard/frontend/dist/en-US/assets/logo-mini.png create mode 100644 src/pybind/mgr/dashboard/frontend/dist/en-US/assets/prometheus_logo.svg create mode 100644 src/pybind/mgr/dashboard/frontend/dist/en-US/ceph_background.e82dd79127290ddbe8cb.gif create mode 100644 src/pybind/mgr/dashboard/frontend/dist/en-US/favicon.ico create mode 100644 src/pybind/mgr/dashboard/frontend/dist/en-US/forkawesome-webfont.2dfb5f36fc148e26e398.woff create mode 100644 src/pybind/mgr/dashboard/frontend/dist/en-US/forkawesome-webfont.7c20758e3e7c7dff7c8d.woff2 create mode 100644 src/pybind/mgr/dashboard/frontend/dist/en-US/forkawesome-webfont.86541105409e56d17291.svg create mode 100644 src/pybind/mgr/dashboard/frontend/dist/en-US/forkawesome-webfont.e182ad6df04f9177b326.eot create mode 100644 src/pybind/mgr/dashboard/frontend/dist/en-US/forkawesome-webfont.ee4d8bfd0af89fc714a2.ttf create mode 100644 src/pybind/mgr/dashboard/frontend/dist/en-US/index.html create mode 100644 src/pybind/mgr/dashboard/frontend/dist/en-US/main.c3b711a3156fe72f66f4.js create mode 100644 src/pybind/mgr/dashboard/frontend/dist/en-US/polyfills.2068f3f22a496426465b.js create mode 100644 src/pybind/mgr/dashboard/frontend/dist/en-US/prometheus_logo.8b3183e5a2db0e87bb2b.svg create mode 100644 src/pybind/mgr/dashboard/frontend/dist/en-US/runtime.dfeb6a20b4d203b567dc.js create mode 100644 src/pybind/mgr/dashboard/frontend/dist/en-US/scripts.6bda3fa7e09a87cd4228.js create mode 100644 src/pybind/mgr/dashboard/frontend/dist/en-US/styles.f05c06a6a64f4730faae.css (limited to 'src/pybind/mgr/dashboard/frontend/dist/en-US') diff --git a/src/pybind/mgr/dashboard/frontend/dist/en-US/117.9781bbf8cc6a4aaa7e8e.js b/src/pybind/mgr/dashboard/frontend/dist/en-US/117.9781bbf8cc6a4aaa7e8e.js new file mode 100644 index 000000000..b02db3d52 --- /dev/null +++ b/src/pybind/mgr/dashboard/frontend/dist/en-US/117.9781bbf8cc6a4aaa7e8e.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkceph_dashboard=self.webpackChunkceph_dashboard||[]).push([[117],{73117:(Si,Ae,r)=>{r.r(Ae),r.d(Ae,{PoolModule:()=>ze,RoutedPoolModule:()=>hi});var C=r(12057),a=r(24751),Oe=r(6283),E=r(38549),M=r(79512),O_=r(44466),d_=r(70483),u_=r(370),f_=r(23815),g=r.n(f_),P_=r(80226),E_=r(26504),ue=r(80842);class S{constructor(){this.nodes=[],this.idTree={},this.allDevices=[],this.buckets=[],this.failureDomains={},this.failureDomainKeys=[],this.devices=[],this.deviceCount=0}static searchFailureDomains(i,_){return this.getFailureDomains(this.search(i,_))}static search(i,_){const[o,n]=_.split("~"),s=i.find(c=>["name","id","type"].some(d=>c[d]===o));return s?(i=this.getSubNodes(s,this.createIdTreeFromNodes(i)),n&&(i=this.filterNodesByDeviceType(i,n)),i):[]}static createIdTreeFromNodes(i){const _={};return i.forEach(o=>{_[o.id]=o}),_}static getSubNodes(i,_){let o=[i];return i.children&&i.children.forEach(n=>{o=o.concat(this.getSubNodes(_[n],_))}),o}static filterNodesByDeviceType(i,_){let n,o=i.filter(c=>c.device_class&&c.device_class!==_).map(c=>c.id),s=o;do{n=!1,i=i.filter(d=>!o.includes(d.id));const c=[];i.forEach(d=>{d.children&&d.children.every(f=>o.includes(f))&&(c.push(d.id),n=!0)}),n&&(o=c,s=s.concat(c))}while(n);return(i=g().cloneDeep(i)).map(c=>(c.children&&(c.children=c.children.filter(d=>!s.includes(d))),c))}static getFailureDomains(i){const _={};return i.forEach(o=>{const n=o.type;_[n]||(_[n]=[]),_[n].push(o)}),_}initCrushNodeSelection(i,_,o,n){this.nodes=i,this.idTree=S.createIdTreeFromNodes(i),i.forEach(s=>{this.idTree[s.id]=s}),this.buckets=g().sortBy(i.filter(s=>s.children),"name"),this.controls={root:_,failure:o,device:n},this.preSelectRoot(),this.controls.root.valueChanges.subscribe(()=>this.onRootChange()),this.controls.failure.valueChanges.subscribe(()=>this.onFailureDomainChange()),this.controls.device.valueChanges.subscribe(()=>this.onDeviceChange())}preSelectRoot(){const i=this.nodes.find(_=>"root"===_.type);this.silentSet(this.controls.root,i),this.onRootChange()}silentSet(i,_){i.setValue(_,{emitEvent:!1})}onRootChange(){const i=S.getSubNodes(this.controls.root.value,this.idTree),_=S.getFailureDomains(i);Object.keys(_).forEach(o=>{_[o].length<=1&&delete _[o]}),this.failureDomains=_,this.failureDomainKeys=Object.keys(_).sort(),this.updateFailureDomain()}updateFailureDomain(){let i=this.getIncludedCustomValue(this.controls.failure,Object.keys(this.failureDomains));""===i&&(i=this.setMostCommonDomain(this.controls.failure)),this.updateDevices(i)}getIncludedCustomValue(i,_){return i.dirty&&_.includes(i.value)?i.value:""}setMostCommonDomain(i){let _={n:0,type:""};return Object.keys(this.failureDomains).forEach(o=>{const n=this.failureDomains[o].length;_.nS.getSubNodes(n,this.idTree)));this.allDevices=_.filter(n=>n.device_class).map(n=>n.device_class),this.devices=g().uniq(this.allDevices).sort();const o=1===this.devices.length?this.devices[0]:this.getIncludedCustomValue(this.controls.device,this.devices);this.silentSet(this.controls.device,o),this.onDeviceChange(o)}onDeviceChange(i=this.controls.device.value){this.deviceCount=""===i?this.allDevices.length:this.allDevices.filter(_=>_===i).length}}var Fe=r(30982),g_=r(14745),v=r(65862),p_=r(93614),Ne=r(95463),P=r(77205),m_=r(30633),I=r(76111),R_=r(47557),C_=r(28211),de=r(32337),e=r(74788),be=r(62862),ve=r(83608),Ie=r(60312),fe=r(41582),Pe=r(56310),Ee=r(87925),ge=r(94276),pe=r(82945),me=r(18372),Re=r(30839),Ce=r(10545);function M_(t,i){1&t&&(e.TgZ(0,"span",30),e.SDv(1,31),e.qZA())}function T_(t,i){1&t&&(e.TgZ(0,"span",30),e.SDv(1,32),e.qZA())}function h_(t,i){1&t&&(e.TgZ(0,"span",30),e.SDv(1,33),e.qZA())}function S_(t,i){1&t&&(e.TgZ(0,"option",26),e.SDv(1,34),e.qZA())}function L_(t,i){if(1&t&&(e.TgZ(0,"option",35),e._uU(1),e.qZA()),2&t){const _=i.$implicit;e.Q6J("ngValue",_),e.xp6(1),e.hij(" ",_.name," ")}}function A_(t,i){1&t&&(e.TgZ(0,"span",30),e.SDv(1,36),e.qZA())}function F_(t,i){1&t&&(e.TgZ(0,"option",26),e.SDv(1,37),e.qZA())}function N_(t,i){if(1&t&&(e.TgZ(0,"option",35),e._uU(1),e.qZA()),2&t){const _=i.$implicit,o=e.oxw();e.Q6J("ngValue",_),e.xp6(1),e.AsE(" ",_," ( ",o.failureDomains[_].length," ) ")}}function b_(t,i){1&t&&(e.TgZ(0,"span",30),e.SDv(1,38),e.qZA())}function v_(t,i){if(1&t&&(e.TgZ(0,"option",35),e._uU(1),e.qZA()),2&t){const _=i.$implicit;e.Q6J("ngValue",_),e.xp6(1),e.hij(" ",_," ")}}let I_=(()=>{class t extends S{constructor(_,o,n,s,c){super(),this.formBuilder=_,this.activeModal=o,this.taskWrapper=n,this.crushRuleService=s,this.actionLabels=c,this.submitAction=new e.vpe,this.tooltips=this.crushRuleService.formTooltips,this.action=this.actionLabels.CREATE,this.resource="Crush Rule",this.createForm()}createForm(){this.form=this.formBuilder.group({name:["",[a.kI.required,a.kI.pattern("[A-Za-z0-9_-]+"),P.h.custom("uniqueName",_=>this.names&&-1!==this.names.indexOf(_))]],root:null,failure_domain:"",device_class:""})}ngOnInit(){this.crushRuleService.getInfo().subscribe(({names:_,nodes:o})=>{this.initCrushNodeSelection(o,this.form.get("root"),this.form.get("failure_domain"),this.form.get("device_class")),this.names=_})}onSubmit(){if(this.form.invalid)return void this.form.setErrors({cdSubmitButton:!0});const _=g().cloneDeep(this.form.value);_.root=_.root.name,""===_.device_class&&delete _.device_class,this.taskWrapper.wrapTaskAroundCall({task:new I.R("crushRule/create",_),call:this.crushRuleService.create(_)}).subscribe({error:()=>{this.form.setErrors({cdSubmitButton:!0})},complete:()=>{this.activeModal.close(),this.submitAction.emit(_)}})}}return t.\u0275fac=function(_){return new(_||t)(e.Y36(be.O),e.Y36(E.Kz),e.Y36(de.P),e.Y36(ve.H),e.Y36(M.p4))},t.\u0275cmp=e.Xpm({type:t,selectors:[["cd-crush-rule-form-modal"]],outputs:{submitAction:"submitAction"},features:[e.qOj],decls:55,vars:27,consts:function(){let i,_,o,n,s,c,d,f,p,m,T,h,R;return i="" + "\ufffd0\ufffd" + " " + "\ufffd1\ufffd" + "",_="Name",o="Root",n="Failure domain type",s="Device class",c="Let Ceph decide",d="This field is required!",f="The name can only consist of alphanumeric characters, dashes and underscores.",p="The chosen erasure code profile name is already in use.",m="Loading...",T="This field is required!",h="Loading...",R="This field is required!",[[3,"modalRef"],[1,"modal-title"],i,[1,"modal-content"],["novalidate","",3,"formGroup"],["frm","ngForm"],[1,"modal-body"],[1,"form-group","row"],["for","name",1,"cd-col-form-label"],_,[1,"required"],[1,"cd-col-form-input"],["type","text","id","name","name","name","placeholder","Name...","formControlName","name","autofocus","",1,"form-control"],["class","invalid-feedback",4,"ngIf"],["for","root",1,"cd-col-form-label"],o,[3,"html"],["id","root","name","root","formControlName","root",1,"form-control"],["ngValue","",4,"ngIf"],[3,"ngValue",4,"ngFor","ngForOf"],["for","failure_domain",1,"cd-col-form-label"],n,["id","failure_domain","name","failure_domain","formControlName","failure_domain",1,"form-control"],["for","device_class",1,"cd-col-form-label"],s,["id","device_class","name","device_class","formControlName","device_class",1,"form-control"],["ngValue",""],c,[1,"modal-footer"],[3,"form","submitText","submitActionEvent"],[1,"invalid-feedback"],d,f,p,m,[3,"ngValue"],T,h,R]},template:function(_,o){if(1&_&&(e.TgZ(0,"cd-modal",0),e.ynx(1,1),e.SDv(2,2),e.ALo(3,"titlecase"),e.ALo(4,"upperFirst"),e.BQk(),e.ynx(5,3),e.TgZ(6,"form",4,5),e.TgZ(8,"div",6),e.TgZ(9,"div",7),e.TgZ(10,"label",8),e.ynx(11),e.SDv(12,9),e.BQk(),e._UZ(13,"span",10),e.qZA(),e.TgZ(14,"div",11),e._UZ(15,"input",12),e.YNc(16,M_,2,0,"span",13),e.YNc(17,T_,2,0,"span",13),e.YNc(18,h_,2,0,"span",13),e.qZA(),e.qZA(),e.TgZ(19,"div",7),e.TgZ(20,"label",14),e.ynx(21),e.SDv(22,15),e.BQk(),e._UZ(23,"cd-helper",16),e._UZ(24,"span",10),e.qZA(),e.TgZ(25,"div",11),e.TgZ(26,"select",17),e.YNc(27,S_,2,0,"option",18),e.YNc(28,L_,2,2,"option",19),e.qZA(),e.YNc(29,A_,2,0,"span",13),e.qZA(),e.qZA(),e.TgZ(30,"div",7),e.TgZ(31,"label",20),e.ynx(32),e.SDv(33,21),e.BQk(),e._UZ(34,"cd-helper",16),e._UZ(35,"span",10),e.qZA(),e.TgZ(36,"div",11),e.TgZ(37,"select",22),e.YNc(38,F_,2,0,"option",18),e.YNc(39,N_,2,3,"option",19),e.qZA(),e.YNc(40,b_,2,0,"span",13),e.qZA(),e.qZA(),e.TgZ(41,"div",7),e.TgZ(42,"label",23),e.ynx(43),e.SDv(44,24),e.BQk(),e._UZ(45,"cd-helper",16),e.qZA(),e.TgZ(46,"div",11),e.TgZ(47,"select",25),e.TgZ(48,"option",26),e.SDv(49,27),e.qZA(),e.YNc(50,v_,2,2,"option",19),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.TgZ(51,"div",28),e.TgZ(52,"cd-form-button-panel",29),e.NdJ("submitActionEvent",function(){return o.onSubmit()}),e.ALo(53,"titlecase"),e.ALo(54,"upperFirst"),e.qZA(),e.qZA(),e.qZA(),e.BQk(),e.qZA()),2&_){const n=e.MAs(7);e.Q6J("modalRef",o.activeModal),e.xp6(4),e.pQV(e.lcZ(3,19,o.action))(e.lcZ(4,21,o.resource)),e.QtT(2),e.xp6(2),e.Q6J("formGroup",o.form),e.xp6(10),e.Q6J("ngIf",o.form.showError("name",n,"required")),e.xp6(1),e.Q6J("ngIf",o.form.showError("name",n,"pattern")),e.xp6(1),e.Q6J("ngIf",o.form.showError("name",n,"uniqueName")),e.xp6(5),e.Q6J("html",o.tooltips.root),e.xp6(4),e.Q6J("ngIf",!o.buckets),e.xp6(1),e.Q6J("ngForOf",o.buckets),e.xp6(1),e.Q6J("ngIf",o.form.showError("root",n,"required")),e.xp6(5),e.Q6J("html",o.tooltips.failure_domain),e.xp6(4),e.Q6J("ngIf",!o.failureDomains),e.xp6(1),e.Q6J("ngForOf",o.failureDomainKeys),e.xp6(1),e.Q6J("ngIf",o.form.showError("failure_domain",n,"required")),e.xp6(5),e.Q6J("html",o.tooltips.device_class),e.xp6(5),e.Q6J("ngForOf",o.devices),e.xp6(2),e.Q6J("form",o.form)("submitText",e.lcZ(53,23,o.action)+" "+e.lcZ(54,25,o.resource))}},directives:[Ie.z,a._Y,a.JL,fe.V,a.sg,Pe.P,Ee.o,a.Fj,ge.b,a.JJ,a.u,pe.U,C.O5,me.S,a.EJ,C.sg,a.YN,a.Kr,Re.p],pipes:[C.rS,Ce.m],styles:[""]}),t})();class $_{}var D_=r(58497);let Me=(()=>{class t{constructor(_){this.http=_,this.apiPath="api/erasure_code_profile",this.formTooltips={k:"Each object is split in data-chunks parts, each stored on a different OSD.",m:"Compute coding chunks for each object and store them on different OSDs.\n The number of coding chunks is also the number of OSDs that can be down without losing data.",plugins:{jerasure:{description:"The jerasure plugin is the most generic and flexible plugin,\n it is also the default for Ceph erasure coded pools.",technique:"The more flexible technique is reed_sol_van : it is enough to set k\n and m. The cauchy_good technique can be faster but you need to chose the packetsize\n carefully. All of reed_sol_r6_op, liberation, blaum_roth, liber8tion are RAID6 equivalents\n in the sense that they can only be configured with m=2.",packetSize:"The encoding will be done on packets of bytes size at a time.\n Choosing the right packet size is difficult.\n The jerasure documentation contains extensive information on this topic."},lrc:{description:"With the jerasure plugin, when an erasure coded object is stored on\n multiple OSDs, recovering from the loss of one OSD requires reading from all the others.\n For instance if jerasure is configured with k=8 and m=4, losing one OSD requires reading\n from the eleven others to repair.\n\n The lrc erasure code plugin creates local parity chunks to be able to recover using\n less OSDs. For instance if lrc is configured with k=8, m=4 and l=4, it will create\n an additional parity chunk for every four OSDs. When a single OSD is lost, it can be\n recovered with only four OSDs instead of eleven.",l:"Group the coding and data chunks into sets of size locality. For instance,\n for k=4 and m=2, when locality=3 two groups of three are created. Each set can\n be recovered without reading chunks from another set.",crushLocality:"The type of the crush bucket in which each set of chunks defined\n by l will be stored. For instance, if it is set to rack, each group of l chunks will be\n placed in a different rack. It is used to create a CRUSH rule step such as step choose\n rack. If it is not set, no such grouping is done."},isa:{description:"The isa plugin encapsulates the ISA library. It only runs on Intel processors.",technique:"The ISA plugin comes in two Reed Solomon forms.\n If reed_sol_van is set, it is Vandermonde, if cauchy is set, it is Cauchy."},shec:{description:"The shec plugin encapsulates the multiple SHEC library.\n It allows ceph to recover data more efficiently than Reed Solomon codes.",c:"The number of parity chunks each of which includes each data chunk in its\n calculation range. The number is used as a durability estimator. For instance, if c=2,\n 2 OSDs can be down without losing data."},clay:{description:"CLAY (short for coupled-layer) codes are erasure codes designed to\n bring about significant savings in terms of network bandwidth and disk IO when a failed\n node/OSD/rack is being repaired.",d:"Number of OSDs requested to send data during recovery of a single chunk.\n d needs to be chosen such that k+1 <= d <= k+m-1. The larger the d, the better\n the savings.",scalar_mds:"scalar_mds specifies the plugin that is used as a building block\n in the layered construction. It can be one of jerasure, isa, shec.",technique:"technique specifies the technique that will be picked\n within the 'scalar_mds' plugin specified. Supported techniques\n are 'reed_sol_van', 'reed_sol_r6_op', 'cauchy_orig',\n 'cauchy_good', 'liber8tion' for jerasure, 'reed_sol_van',\n 'cauchy' for isa and 'single', 'multiple' for shec."}},crushRoot:"The name of the crush bucket used for the first step of the CRUSH rule.\n For instance step take default.",crushFailureDomain:"Ensure that no two chunks are in a bucket with the same failure\n domain. For instance, if the failure domain is host no two chunks will be stored on the same\n host. It is used to create a CRUSH rule step such as step chooseleaf host.",crushDeviceClass:"Restrict placement to devices of a specific class\n (e.g., ssd or hdd), using the crush device class names in the CRUSH map.",directory:"Set the directory name from which the erasure code plugin is loaded."}}list(){return this.http.get(this.apiPath)}create(_){return this.http.post(this.apiPath,_,{observe:"response"})}delete(_){return this.http.delete(`${this.apiPath}/${_}`,{observe:"response"})}getInfo(){return this.http.get(`ui-${this.apiPath}/info`)}}return t.\u0275fac=function(_){return new(_||t)(e.LFG(D_.eN))},t.\u0275prov=e.Yz7({token:t,factory:t.\u0275fac,providedIn:"root"}),t})();function Z_(t,i){1&t&&(e.TgZ(0,"span",46),e.SDv(1,47),e.qZA())}function x_(t,i){1&t&&(e.TgZ(0,"span",46),e.SDv(1,48),e.qZA())}function y_(t,i){1&t&&(e.TgZ(0,"span",46),e.SDv(1,49),e.qZA())}function U_(t,i){1&t&&(e.TgZ(0,"option",37),e.SDv(1,50),e.qZA())}function q_(t,i){if(1&t&&(e.TgZ(0,"option",51),e._uU(1),e.qZA()),2&t){const _=i.$implicit;e.Q6J("ngValue",_),e.xp6(1),e.hij(" ",_," ")}}function H_(t,i){1&t&&(e.TgZ(0,"span",46),e.SDv(1,52),e.qZA())}function G_(t,i){1&t&&(e.TgZ(0,"span",46),e.SDv(1,53),e.qZA())}function z_(t,i){1&t&&(e.TgZ(0,"span",46),e.SDv(1,54),e.qZA())}function X_(t,i){if(1&t&&(e.TgZ(0,"span",46),e.SDv(1,55),e.qZA()),2&t){const _=e.oxw();e.xp6(1),e.pQV(_.deviceCount),e.QtT(1)}}function w_(t,i){1&t&&(e.TgZ(0,"span",46),e.SDv(1,56),e.qZA())}function Q_(t,i){1&t&&(e.TgZ(0,"span",46),e.SDv(1,57),e.qZA())}function J_(t,i){if(1&t&&(e.TgZ(0,"span",39),e.SDv(1,58),e.qZA()),2&t){const _=e.oxw();e.xp6(1),e.pQV(_.lrcMultiK),e.QtT(1)}}function k_(t,i){1&t&&(e.TgZ(0,"span",46),e.SDv(1,59),e.qZA())}function V_(t,i){1&t&&(e.TgZ(0,"span",46),e.SDv(1,60),e.qZA())}function Y_(t,i){if(1&t&&(e.TgZ(0,"span",46),e.SDv(1,61),e.qZA()),2&t){const _=e.oxw();e.xp6(1),e.pQV(_.deviceCount),e.QtT(1)}}function B_(t,i){1&t&&(e.TgZ(0,"span",46),e.SDv(1,65),e.qZA())}function j_(t,i){1&t&&(e.TgZ(0,"span",46),e.SDv(1,66),e.qZA())}function K_(t,i){if(1&t&&(e.TgZ(0,"div",7),e.TgZ(1,"label",62),e.TgZ(2,"span",14),e.SDv(3,63),e.qZA(),e._UZ(4,"cd-helper",16),e.qZA(),e.TgZ(5,"div",10),e._UZ(6,"input",64),e.YNc(7,B_,2,0,"span",12),e.YNc(8,j_,2,0,"span",12),e.qZA(),e.qZA()),2&t){const _=e.oxw(),o=e.MAs(7);e.xp6(4),e.Q6J("html",_.tooltips.plugins.shec.c),e.xp6(3),e.Q6J("ngIf",_.form.showError("c",o,"min")),e.xp6(1),e.Q6J("ngIf",_.form.showError("c",o,"cGreaterM"))}}function W_(t,i){1&t&&(e.TgZ(0,"span",39),e.SDv(1,75),e.qZA())}function eo(t,i){if(1&t&&(e.TgZ(0,"span",39),e.SDv(1,76),e.qZA()),2&t){const _=e.oxw(3);e.xp6(1),e.pQV(_.getDMin())(_.getDMax()),e.QtT(1)}}function _o(t,i){if(1&t&&(e.TgZ(0,"span",39),e.SDv(1,77),e.qZA()),2&t){const _=e.oxw(3);e.xp6(1),e.pQV(_.getDMax()),e.QtT(1)}}function oo(t,i){if(1&t&&(e.ynx(0),e.YNc(1,eo,2,2,"span",23),e.YNc(2,_o,2,1,"span",23),e.BQk()),2&t){const _=e.oxw(2);e.xp6(1),e.Q6J("ngIf",_.getDMin()<_.getDMax()),e.xp6(1),e.Q6J("ngIf",_.getDMin()===_.getDMax())}}function to(t,i){if(1&t&&(e.TgZ(0,"span",46),e.SDv(1,78),e.qZA()),2&t){const _=e.oxw(2);e.xp6(1),e.pQV(_.getDMin()),e.QtT(1)}}function io(t,i){if(1&t&&(e.TgZ(0,"span",46),e.SDv(1,79),e.qZA()),2&t){const _=e.oxw(2);e.xp6(1),e.pQV(_.getDMax()),e.QtT(1)}}function no(t,i){if(1&t){const _=e.EpF();e.TgZ(0,"div",7),e.TgZ(1,"label",67),e.TgZ(2,"span",14),e.SDv(3,68),e.qZA(),e._UZ(4,"cd-helper",16),e.qZA(),e.TgZ(5,"div",10),e.TgZ(6,"div",69),e._UZ(7,"input",70),e.TgZ(8,"span",71),e.TgZ(9,"button",72),e.NdJ("click",function(){return e.CHM(_),e.oxw().toggleDCalc()}),e._UZ(10,"i",73),e.qZA(),e.qZA(),e.qZA(),e.YNc(11,W_,2,0,"span",23),e.YNc(12,oo,3,2,"ng-container",74),e.YNc(13,to,2,1,"span",12),e.YNc(14,io,2,1,"span",12),e.qZA(),e.qZA()}if(2&t){const _=e.oxw(),o=e.MAs(7);e.xp6(4),e.Q6J("html",_.tooltips.plugins.clay.d),e.xp6(6),e.Q6J("ngClass",_.dCalc?_.icons.unlock:_.icons.lock),e.xp6(1),e.Q6J("ngIf",_.dCalc),e.xp6(1),e.Q6J("ngIf",!_.dCalc),e.xp6(1),e.Q6J("ngIf",_.form.showError("d",o,"dMin")),e.xp6(1),e.Q6J("ngIf",_.form.showError("d",o,"dMax"))}}function so(t,i){1&t&&(e.TgZ(0,"span",46),e.SDv(1,84),e.qZA())}function ao(t,i){1&t&&(e.TgZ(0,"span",46),e.SDv(1,85),e.qZA())}function lo(t,i){1&t&&(e.TgZ(0,"span",46),e.SDv(1,86),e.qZA())}function ro(t,i){if(1&t&&(e.TgZ(0,"div",7),e.TgZ(1,"label",80),e.TgZ(2,"span",14),e.SDv(3,81),e.qZA(),e._UZ(4,"cd-helper",16),e.qZA(),e.TgZ(5,"div",10),e._UZ(6,"input",82),e.YNc(7,so,2,0,"span",12),e.YNc(8,ao,2,0,"span",12),e.YNc(9,lo,2,0,"span",12),e.TgZ(10,"span",39),e.SDv(11,83),e.qZA(),e.qZA(),e.qZA()),2&t){const _=e.oxw(),o=e.MAs(7);e.xp6(4),e.Q6J("html",_.tooltips.plugins.lrc.l),e.xp6(3),e.Q6J("ngIf",_.form.showError("l",o,"required")),e.xp6(1),e.Q6J("ngIf",_.form.showError("l",o,"min")),e.xp6(1),e.Q6J("ngIf",_.form.showError("l",o,"unequal")),e.xp6(2),e.pQV(_.lrcGroups),e.QtT(11)}}function co(t,i){1&t&&(e.TgZ(0,"option",37),e.SDv(1,87),e.qZA())}function Oo(t,i){if(1&t&&(e.TgZ(0,"option",51),e._uU(1),e.qZA()),2&t){const _=i.$implicit,o=e.oxw();e.Q6J("ngValue",_),e.xp6(1),e.AsE(" ",_," ( ",o.failureDomains[_].length," ) ")}}function uo(t,i){1&t&&(e.TgZ(0,"option",37),e.SDv(1,91),e.qZA())}function fo(t,i){1&t&&(e.TgZ(0,"option",37),e.SDv(1,92),e.qZA())}function Po(t,i){if(1&t&&(e.TgZ(0,"option",51),e._uU(1),e.qZA()),2&t){const _=i.$implicit,o=e.oxw(2);e.Q6J("ngValue",_),e.xp6(1),e.AsE(" ",_," ( ",o.failureDomains[_].length," ) ")}}function Eo(t,i){if(1&t&&(e.TgZ(0,"div",7),e.TgZ(1,"label",88),e.ynx(2),e.SDv(3,89),e.BQk(),e._UZ(4,"cd-helper",16),e.qZA(),e.TgZ(5,"div",10),e.TgZ(6,"select",90),e.YNc(7,uo,2,0,"option",18),e.YNc(8,fo,2,0,"option",18),e.YNc(9,Po,2,3,"option",19),e.qZA(),e.qZA(),e.qZA()),2&t){const _=e.oxw();e.xp6(4),e.Q6J("html",_.tooltips.plugins.lrc.crushLocality),e.xp6(3),e.Q6J("ngIf",!_.failureDomains),e.xp6(1),e.Q6J("ngIf",_.failureDomainKeys.length>0),e.xp6(1),e.Q6J("ngForOf",_.failureDomainKeys)}}function go(t,i){if(1&t&&(e.TgZ(0,"option",51),e._uU(1),e.qZA()),2&t){const _=i.$implicit;e.Q6J("ngValue",_),e.xp6(1),e.hij(" ",_," ")}}const $e=function(t,i,_){return[t,i,_]};function po(t,i){if(1&t&&(e.TgZ(0,"div",7),e.TgZ(1,"label",93),e.ynx(2),e.SDv(3,94),e.BQk(),e._UZ(4,"cd-helper",16),e.qZA(),e.TgZ(5,"div",10),e.TgZ(6,"select",95),e.YNc(7,go,2,2,"option",19),e.qZA(),e.qZA(),e.qZA()),2&t){const _=e.oxw();e.xp6(4),e.Q6J("html",_.tooltips.plugins.clay.scalar_mds),e.xp6(3),e.Q6J("ngForOf",e.kEZ(2,$e,_.PLUGIN.JERASURE,_.PLUGIN.ISA,_.PLUGIN.SHEC))}}function mo(t,i){if(1&t&&(e.TgZ(0,"option",51),e._uU(1),e.qZA()),2&t){const _=i.$implicit;e.Q6J("ngValue",_),e.xp6(1),e.hij(" ",_," ")}}function Ro(t,i){if(1&t&&(e.TgZ(0,"div",7),e.TgZ(1,"label",96),e.ynx(2),e.SDv(3,97),e.BQk(),e._UZ(4,"cd-helper",16),e.qZA(),e.TgZ(5,"div",10),e.TgZ(6,"select",98),e.YNc(7,mo,2,2,"option",19),e.qZA(),e.qZA(),e.qZA()),2&t){const _=e.oxw();e.xp6(4),e.Q6J("html",_.tooltips.plugins[_.plugin].technique),e.xp6(3),e.Q6J("ngForOf",_.techniques)}}function Co(t,i){1&t&&(e.TgZ(0,"span",46),e.SDv(1,102),e.qZA())}function Mo(t,i){if(1&t&&(e.TgZ(0,"div",7),e.TgZ(1,"label",99),e.ynx(2),e.SDv(3,100),e.BQk(),e._UZ(4,"cd-helper",16),e.qZA(),e.TgZ(5,"div",10),e._UZ(6,"input",101),e.YNc(7,Co,2,0,"span",12),e.qZA(),e.qZA()),2&t){const _=e.oxw(),o=e.MAs(7);e.xp6(4),e.Q6J("html",_.tooltips.plugins.jerasure.packetSize),e.xp6(3),e.Q6J("ngIf",_.form.showError("packetSize",o,"min"))}}function To(t,i){1&t&&(e.TgZ(0,"option",37),e.SDv(1,103),e.qZA())}function ho(t,i){if(1&t&&(e.TgZ(0,"option",51),e._uU(1),e.qZA()),2&t){const _=i.$implicit;e.Q6J("ngValue",_),e.xp6(1),e.hij(" ",_.name," ")}}function So(t,i){if(1&t&&(e.TgZ(0,"option",51),e._uU(1),e.qZA()),2&t){const _=i.$implicit;e.Q6J("ngValue",_),e.xp6(1),e.hij(" ",_," ")}}let Lo=(()=>{class t extends S{constructor(_,o,n,s,c){super(),this.formBuilder=_,this.activeModal=o,this.taskWrapper=n,this.ecpService=s,this.actionLabels=c,this.submitAction=new e.vpe,this.tooltips=this.ecpService.formTooltips,this.PLUGIN={LRC:"lrc",SHEC:"shec",CLAY:"clay",JERASURE:"jerasure",ISA:"isa"},this.plugin=this.PLUGIN.JERASURE,this.icons=v.P,this.action=this.actionLabels.CREATE,this.resource="EC Profile",this.createForm(),this.setJerasureDefaults()}createForm(){this.form=this.formBuilder.group({name:[null,[a.kI.required,a.kI.pattern("[A-Za-z0-9_-]+"),P.h.custom("uniqueName",_=>this.names&&-1!==this.names.indexOf(_))]],plugin:[this.PLUGIN.JERASURE,[a.kI.required]],k:[4,[a.kI.required,P.h.custom("max",()=>this.baseValueValidation(!0)),P.h.custom("unequal",_=>this.lrcDataValidation(_)),P.h.custom("kLowerM",_=>this.shecDataValidation(_))]],m:[2,[a.kI.required,P.h.custom("max",()=>this.baseValueValidation())]],crushFailureDomain:"",crushRoot:null,crushDeviceClass:"",directory:"",technique:"reed_sol_van",packetSize:[2048],l:[3,[a.kI.required,P.h.custom("unequal",_=>this.lrcLocalityValidation(_))]],crushLocality:"",c:[2,[a.kI.required,P.h.custom("cGreaterM",_=>this.shecDurabilityValidation(_))]],d:[5,[a.kI.required,P.h.custom("dMin",_=>this.dMinValidation(_)),P.h.custom("dMax",_=>this.dMaxValidation(_))]],scalar_mds:[this.PLUGIN.JERASURE,[a.kI.required]]}),this.toggleDCalc(),this.form.get("k").valueChanges.subscribe(()=>this.updateValidityOnChange(["m","l","d"])),this.form.get("m").valueChanges.subscribe(()=>this.updateValidityOnChange(["k","l","c","d"])),this.form.get("l").valueChanges.subscribe(()=>this.updateValidityOnChange(["k","m"])),this.form.get("plugin").valueChanges.subscribe(_=>this.onPluginChange(_)),this.form.get("scalar_mds").valueChanges.subscribe(()=>this.setClayDefaultsForScalar())}baseValueValidation(_=!1){return this.validValidation(()=>this.getKMSum()>this.deviceCount&&this.form.getValue("k")>this.form.getValue("m")===_)}validValidation(_,o){return!((!this.form||o)&&this.plugin!==o)&&_()}getKMSum(){return this.form.getValue("k")+this.form.getValue("m")}lrcDataValidation(_){return this.validValidation(()=>{const o=this.form.getValue("m"),n=this.form.getValue("l"),s=_+o;return this.lrcMultiK=_/(s/n),_%(s/n)!=0},"lrc")}shecDataValidation(_){return this.validValidation(()=>this.form.getValue("m")>_,"shec")}lrcLocalityValidation(_){return this.validValidation(()=>{const o=this.getKMSum();return this.lrcGroups=_>0?o/_:0,_>0&&o%_!=0},"lrc")}shecDurabilityValidation(_){return this.validValidation(()=>{const o=this.form.getValue("m");return _>o},"shec")}dMinValidation(_){return this.validValidation(()=>this.getDMin()>_,"clay")}getDMin(){return this.form.getValue("k")+1}dMaxValidation(_){return this.validValidation(()=>_>this.getDMax(),"clay")}getDMax(){const _=this.form.getValue("m");return this.form.getValue("k")+_-1}toggleDCalc(){this.dCalc=!this.dCalc,this.form.get("d")[this.dCalc?"disable":"enable"](),this.calculateD()}calculateD(){this.plugin!==this.PLUGIN.CLAY||!this.dCalc||this.form.silentSet("d",this.getDMax())}updateValidityOnChange(_){_.forEach(o=>{"d"===o&&this.calculateD(),this.form.get(o).updateValueAndValidity({emitEvent:!1})})}onPluginChange(_){this.plugin=_,_===this.PLUGIN.JERASURE?this.setJerasureDefaults():_===this.PLUGIN.LRC?this.setLrcDefaults():_===this.PLUGIN.ISA?this.setIsaDefaults():_===this.PLUGIN.SHEC?this.setShecDefaults():_===this.PLUGIN.CLAY&&this.setClayDefaults(),this.updateValidityOnChange(["m"])}setJerasureDefaults(){this.techniques=["reed_sol_van","reed_sol_r6_op","cauchy_orig","cauchy_good","liberation","blaum_roth","liber8tion"],this.setDefaults({k:4,m:2,technique:"reed_sol_van"})}setLrcDefaults(){this.setDefaults({k:4,m:2,l:3})}setIsaDefaults(){this.techniques=["reed_sol_van","cauchy"],this.setDefaults({k:7,m:3,technique:"reed_sol_van"})}setShecDefaults(){this.setDefaults({k:4,m:3,c:2})}setClayDefaults(){this.setDefaults({k:4,m:2,scalar_mds:this.PLUGIN.JERASURE}),this.setClayDefaultsForScalar()}setClayDefaultsForScalar(){const _=this.form.getValue("scalar_mds");let o="reed_sol_van";_===this.PLUGIN.JERASURE?this.techniques=["reed_sol_van","reed_sol_r6_op","cauchy_orig","cauchy_good","liber8tion"]:_===this.PLUGIN.ISA?this.techniques=["reed_sol_van","cauchy"]:(o="single",this.techniques=["single","multiple"]),this.setDefaults({technique:o})}setDefaults(_){Object.keys(_).forEach(o=>{const n=this.form.get(o),s=n.value;n.pristine||"technique"===o&&!this.techniques.includes(s)||"k"===o&&[4,7].includes(s)||"m"===o&&[2,3].includes(s)?n.setValue(_[o]):n.updateValueAndValidity()})}ngOnInit(){this.ecpService.getInfo().subscribe(({plugins:_,names:o,directory:n,nodes:s})=>{this.initCrushNodeSelection(s,this.form.get("crushRoot"),this.form.get("crushFailureDomain"),this.form.get("crushDeviceClass")),this.plugins=_,this.names=o,this.form.silentSet("directory",n),this.preValidateNumericInputFields()})}preValidateNumericInputFields(){const _=["k","m","l","c","d"].map(o=>this.form.get(o));_.forEach(o=>{o.markAsTouched(),o.markAsDirty()}),_[1].updateValueAndValidity()}onSubmit(){if(this.form.invalid)return void this.form.setErrors({cdSubmitButton:!0});const _=this.createJson();this.taskWrapper.wrapTaskAroundCall({task:new I.R("ecp/create",{name:_.name}),call:this.ecpService.create(_)}).subscribe({error:()=>{this.form.setErrors({cdSubmitButton:!0})},complete:()=>{this.activeModal.close(),this.submitAction.emit(_)}})}createJson(){const _={technique:[this.PLUGIN.ISA,this.PLUGIN.JERASURE,this.PLUGIN.CLAY],packetSize:[this.PLUGIN.JERASURE],l:[this.PLUGIN.LRC],crushLocality:[this.PLUGIN.LRC],c:[this.PLUGIN.SHEC],d:[this.PLUGIN.CLAY],scalar_mds:[this.PLUGIN.CLAY]},o=new $_,n=this.form.getValue("plugin");return Object.keys(this.form.controls).filter(s=>{const c=_[s],d=this.form.getValue(s);return(c&&c.includes(n)||!c)&&d&&""!==d}).forEach(s=>{this.extendJson(s,o)}),o}extendJson(_,o){const s=this.form.getValue(_);o[{crushFailureDomain:"crush-failure-domain",crushRoot:"crush-root",crushDeviceClass:"crush-device-class",packetSize:"packetsize",crushLocality:"crush-locality"}[_]||_]="crushRoot"===_?s.name:s}}return t.\u0275fac=function(_){return new(_||t)(e.Y36(be.O),e.Y36(E.Kz),e.Y36(de.P),e.Y36(Me),e.Y36(M.p4))},t.\u0275cmp=e.Xpm({type:t,selectors:[["cd-erasure-code-profile-form-modal"]],outputs:{submitAction:"submitAction"},features:[e.qOj],decls:98,vars:53,consts:function(){let i,_,o,n,s,c,d,f,p,m,T,h,R,u,A,$,D,Z,x,y,U,q,H,G,z,X,w,Q,J,k,V,Y,B,j,K,N,W,ee,_e,oe,te,ie,ne,se,ae,le,re,ce,b;return i="" + "\ufffd0\ufffd" + " " + "\ufffd1\ufffd" + "",_="Name",o="Plugin",n="Data chunks (k)",s="Coding chunks (m)",c="Crush failure domain",d="Crush root",f="Crush device class",p="Let Ceph decide",m="Available OSDs: " + "\ufffd0\ufffd" + "",T="Directory",h="This field is required!",R="The name can only consist of alphanumeric characters, dashes and underscores.",u="The chosen erasure code profile name is already in use.",A="Loading...",$="This field is required!",D="This field is required!",Z="Must be equal to or greater than 2.",x="Chunks (k+m) have exceeded the available OSDs of " + "\ufffd0\ufffd" + ".",y="For an equal distribution k has to be a multiple of (k+m)/l.",U="K has to be equal to or greater than m in order to recover data correctly through c.",q="Distribution factor: " + "\ufffd0\ufffd" + "",H="This field is required!",G="Must be equal to or greater than 1.",z="Chunks (k+m) have exceeded the available OSDs of " + "\ufffd0\ufffd" + ".",X="Durability estimator (c)",w="Must be equal to or greater than 1.",Q="C has to be equal to or lower than m as m defines the amount of chunks that can be used.",J="Helper chunks (d)",k="Set d manually or use the plugin's default calculation that maximizes d.",V="D is automatically updated on k and m changes",Y="D can be set from " + "\ufffd0\ufffd" + " to " + "\ufffd1\ufffd" + "",B="D can only be set to " + "\ufffd0\ufffd" + "",j="D has to be greater than k (" + "\ufffd0\ufffd" + ").",K="D has to be lower than k + m (" + "\ufffd0\ufffd" + ").",N="Locality (l)",W="Locality groups: " + "\ufffd0\ufffd" + "",ee="This field is required!",_e="Must be equal to or greater than 1.",oe="Can't split up chunks (k+m) correctly with the current locality.",te="Loading...",ie="Crush Locality",ne="Loading...",se="None",ae="Scalar mds",le="Technique",re="Packetsize",ce="Must be equal to or greater than 1.",b="Loading...",[[3,"modalRef"],[1,"modal-title"],i,[1,"modal-content"],["novalidate","",3,"formGroup"],["frm","ngForm"],[1,"modal-body"],[1,"form-group","row"],["for","name",1,"cd-col-form-label"],_,[1,"cd-col-form-input"],["type","text","id","name","name","name","placeholder","Name...","formControlName","name","autofocus","",1,"form-control"],["class","invalid-feedback",4,"ngIf"],["for","plugin",1,"cd-col-form-label"],[1,"required"],o,[3,"html"],["id","plugin","name","plugin","formControlName","plugin",1,"form-control"],["ngValue","",4,"ngIf"],[3,"ngValue",4,"ngFor","ngForOf"],["for","k",1,"cd-col-form-label"],n,["type","number","id","k","name","k","ng-model","$ctrl.erasureCodeProfile.k","placeholder","Data chunks...","formControlName","k","min","2",1,"form-control"],["class","form-text text-muted",4,"ngIf"],["for","m",1,"cd-col-form-label"],s,["type","number","id","m","name","m","placeholder","Coding chunks...","formControlName","m","min","1",1,"form-control"],["class","form-group row",4,"ngIf"],["for","crushFailureDomain",1,"cd-col-form-label"],c,["id","crushFailureDomain","name","crushFailureDomain","formControlName","crushFailureDomain",1,"form-control"],["for","crushRoot",1,"cd-col-form-label"],d,["id","crushRoot","name","crushRoot","formControlName","crushRoot",1,"form-control"],["for","crushDeviceClass",1,"cd-col-form-label"],f,["id","crushDeviceClass","name","crushDeviceClass","formControlName","crushDeviceClass",1,"form-control"],["ngValue",""],p,[1,"form-text","text-muted"],m,["for","directory",1,"cd-col-form-label"],T,["type","text","id","directory","name","directory","placeholder","Path...","formControlName","directory",1,"form-control"],[1,"modal-footer"],[3,"form","submitText","submitActionEvent"],[1,"invalid-feedback"],h,R,u,A,[3,"ngValue"],$,D,Z,x,y,U,q,H,G,z,["for","c",1,"cd-col-form-label"],X,["type","number","id","c","name","c","placeholder","Coding chunks...","formControlName","c","min","1",1,"form-control"],w,Q,["for","d",1,"cd-col-form-label"],J,[1,"input-group"],["type","number","id","d","name","d","placeholder","Helper chunks...","formControlName","d",1,"form-control"],[1,"input-group-append"],["id","d-calc-btn","ngbTooltip",k,"type","button",1,"btn","btn-light",3,"click"],["aria-hidden","true",3,"ngClass"],[4,"ngIf"],V,Y,B,j,K,["for","l",1,"cd-col-form-label"],N,["type","number","id","l","name","l","placeholder","Coding chunks...","formControlName","l","min","1",1,"form-control"],W,ee,_e,oe,te,["for","crushLocality",1,"cd-col-form-label"],ie,["id","crushLocality","name","crushLocality","formControlName","crushLocality",1,"form-control"],ne,se,["for","scalar_mds",1,"cd-col-form-label"],ae,["id","scalar_mds","name","scalar_mds","formControlName","scalar_mds",1,"form-control"],["for","technique",1,"cd-col-form-label"],le,["id","technique","name","technique","formControlName","technique",1,"form-control"],["for","packetSize",1,"cd-col-form-label"],re,["type","number","id","packetSize","name","packetSize","placeholder","Packetsize...","formControlName","packetSize","min","1",1,"form-control"],ce,b]},template:function(_,o){if(1&_&&(e.TgZ(0,"cd-modal",0),e.ynx(1,1),e.SDv(2,2),e.ALo(3,"titlecase"),e.ALo(4,"upperFirst"),e.BQk(),e.ynx(5,3),e.TgZ(6,"form",4,5),e.TgZ(8,"div",6),e.TgZ(9,"div",7),e.TgZ(10,"label",8),e.SDv(11,9),e.qZA(),e.TgZ(12,"div",10),e._UZ(13,"input",11),e.YNc(14,Z_,2,0,"span",12),e.YNc(15,x_,2,0,"span",12),e.YNc(16,y_,2,0,"span",12),e.qZA(),e.qZA(),e.TgZ(17,"div",7),e.TgZ(18,"label",13),e.TgZ(19,"span",14),e.SDv(20,15),e.qZA(),e._UZ(21,"cd-helper",16),e.qZA(),e.TgZ(22,"div",10),e.TgZ(23,"select",17),e.YNc(24,U_,2,0,"option",18),e.YNc(25,q_,2,2,"option",19),e.qZA(),e.YNc(26,H_,2,0,"span",12),e.qZA(),e.qZA(),e.TgZ(27,"div",7),e.TgZ(28,"label",20),e.TgZ(29,"span",14),e.SDv(30,21),e.qZA(),e._UZ(31,"cd-helper",16),e.qZA(),e.TgZ(32,"div",10),e._UZ(33,"input",22),e.YNc(34,G_,2,0,"span",12),e.YNc(35,z_,2,0,"span",12),e.YNc(36,X_,2,1,"span",12),e.YNc(37,w_,2,0,"span",12),e.YNc(38,Q_,2,0,"span",12),e.YNc(39,J_,2,1,"span",23),e.qZA(),e.qZA(),e.TgZ(40,"div",7),e.TgZ(41,"label",24),e.TgZ(42,"span",14),e.SDv(43,25),e.qZA(),e._UZ(44,"cd-helper",16),e.qZA(),e.TgZ(45,"div",10),e._UZ(46,"input",26),e.YNc(47,k_,2,0,"span",12),e.YNc(48,V_,2,0,"span",12),e.YNc(49,Y_,2,1,"span",12),e.qZA(),e.qZA(),e.YNc(50,K_,9,3,"div",27),e.YNc(51,no,15,6,"div",27),e.YNc(52,ro,12,5,"div",27),e.TgZ(53,"div",7),e.TgZ(54,"label",28),e.ynx(55),e.SDv(56,29),e.BQk(),e._UZ(57,"cd-helper",16),e.qZA(),e.TgZ(58,"div",10),e.TgZ(59,"select",30),e.YNc(60,co,2,0,"option",18),e.YNc(61,Oo,2,3,"option",19),e.qZA(),e.qZA(),e.qZA(),e.YNc(62,Eo,10,4,"div",27),e.YNc(63,po,8,6,"div",27),e.YNc(64,Ro,8,2,"div",27),e.YNc(65,Mo,8,2,"div",27),e.TgZ(66,"div",7),e.TgZ(67,"label",31),e.ynx(68),e.SDv(69,32),e.BQk(),e._UZ(70,"cd-helper",16),e.qZA(),e.TgZ(71,"div",10),e.TgZ(72,"select",33),e.YNc(73,To,2,0,"option",18),e.YNc(74,ho,2,2,"option",19),e.qZA(),e.qZA(),e.qZA(),e.TgZ(75,"div",7),e.TgZ(76,"label",34),e.ynx(77),e.SDv(78,35),e.BQk(),e._UZ(79,"cd-helper",16),e.qZA(),e.TgZ(80,"div",10),e.TgZ(81,"select",36),e.TgZ(82,"option",37),e.SDv(83,38),e.qZA(),e.YNc(84,So,2,2,"option",19),e.qZA(),e.TgZ(85,"span",39),e.SDv(86,40),e.qZA(),e.qZA(),e.qZA(),e.TgZ(87,"div",7),e.TgZ(88,"label",41),e.ynx(89),e.SDv(90,42),e.BQk(),e._UZ(91,"cd-helper",16),e.qZA(),e.TgZ(92,"div",10),e._UZ(93,"input",43),e.qZA(),e.qZA(),e.qZA(),e.TgZ(94,"div",44),e.TgZ(95,"cd-form-button-panel",45),e.NdJ("submitActionEvent",function(){return o.onSubmit()}),e.ALo(96,"titlecase"),e.ALo(97,"upperFirst"),e.qZA(),e.qZA(),e.qZA(),e.BQk(),e.qZA()),2&_){const n=e.MAs(7);e.Q6J("modalRef",o.activeModal),e.xp6(4),e.pQV(e.lcZ(3,41,o.action))(e.lcZ(4,43,o.resource)),e.QtT(2),e.xp6(2),e.Q6J("formGroup",o.form),e.xp6(8),e.Q6J("ngIf",o.form.showError("name",n,"required")),e.xp6(1),e.Q6J("ngIf",o.form.showError("name",n,"pattern")),e.xp6(1),e.Q6J("ngIf",o.form.showError("name",n,"uniqueName")),e.xp6(5),e.Q6J("html",o.tooltips.plugins[o.plugin].description),e.xp6(3),e.Q6J("ngIf",!o.plugins),e.xp6(1),e.Q6J("ngForOf",o.plugins),e.xp6(1),e.Q6J("ngIf",o.form.showError("name",n,"required")),e.xp6(5),e.Q6J("html",o.tooltips.k),e.xp6(3),e.Q6J("ngIf",o.form.showError("k",n,"required")),e.xp6(1),e.Q6J("ngIf",o.form.showError("k",n,"min")),e.xp6(1),e.Q6J("ngIf",o.form.showError("k",n,"max")),e.xp6(1),e.Q6J("ngIf",o.form.showError("k",n,"unequal")),e.xp6(1),e.Q6J("ngIf",o.form.showError("k",n,"kLowerM")),e.xp6(1),e.Q6J("ngIf","lrc"===o.plugin),e.xp6(5),e.Q6J("html",o.tooltips.m),e.xp6(3),e.Q6J("ngIf",o.form.showError("m",n,"required")),e.xp6(1),e.Q6J("ngIf",o.form.showError("m",n,"min")),e.xp6(1),e.Q6J("ngIf",o.form.showError("m",n,"max")),e.xp6(1),e.Q6J("ngIf","shec"===o.plugin),e.xp6(1),e.Q6J("ngIf","clay"===o.plugin),e.xp6(1),e.Q6J("ngIf",o.plugin===o.PLUGIN.LRC),e.xp6(5),e.Q6J("html",o.tooltips.crushFailureDomain),e.xp6(3),e.Q6J("ngIf",!o.failureDomains),e.xp6(1),e.Q6J("ngForOf",o.failureDomainKeys),e.xp6(1),e.Q6J("ngIf",o.plugin===o.PLUGIN.LRC),e.xp6(1),e.Q6J("ngIf",o.PLUGIN.CLAY===o.plugin),e.xp6(1),e.Q6J("ngIf",e.kEZ(49,$e,o.PLUGIN.JERASURE,o.PLUGIN.ISA,o.PLUGIN.CLAY).includes(o.plugin)),e.xp6(1),e.Q6J("ngIf",o.plugin===o.PLUGIN.JERASURE),e.xp6(5),e.Q6J("html",o.tooltips.crushRoot),e.xp6(3),e.Q6J("ngIf",!o.buckets),e.xp6(1),e.Q6J("ngForOf",o.buckets),e.xp6(5),e.Q6J("html",o.tooltips.crushDeviceClass),e.xp6(5),e.Q6J("ngForOf",o.devices),e.xp6(2),e.pQV(o.deviceCount),e.QtT(86),e.xp6(5),e.Q6J("html",o.tooltips.directory),e.xp6(4),e.Q6J("form",o.form)("submitText",e.lcZ(96,45,o.action)+" "+e.lcZ(97,47,o.resource))}},directives:[Ie.z,a._Y,a.JL,fe.V,a.sg,Pe.P,Ee.o,a.Fj,ge.b,a.JJ,a.u,pe.U,C.O5,me.S,a.EJ,C.sg,a.wV,a.qQ,a.YN,a.Kr,Re.p,E._L,C.mk],pipes:[C.rS,Ce.m],styles:[""]}),t})();var Ao=r(7022);class Fo{constructor(){this.erasureInfo=!1,this.crushInfo=!1,this.pgs=1,this.poolTypes=["erasure","replicated"],this.applications={selected:[],default:["cephfs","rbd","rgw"],available:[],validators:[a.kI.pattern("[A-Za-z0-9_]+"),a.kI.maxLength(128)],messages:new Ao.a({empty:"No applications added",selectionLimit:{text:"Applications limit reached",tooltip:"A pool can only have up to four applications definitions."},customValidations:{pattern:"Allowed characters '_a-zA-Z0-9'",maxlength:"Maximum length is 128 characters"},filter:"Filter or add applications'",add:"Add application"})}}}var De=r(63285),Ze=r(74937),No=r(63622),bo=r(60192),vo=r(17932),Io=r(54555),$o=r(30490),xe=r(61350);const Do=["crushInfoTabs"],Zo=["crushDeletionBtn"],xo=["ecpInfoTabs"],yo=["ecpDeletionBtn"];function Uo(t,i){1&t&&(e.TgZ(0,"span",40),e.SDv(1,41),e.qZA())}function qo(t,i){1&t&&(e.TgZ(0,"span",40),e.SDv(1,42),e.qZA())}function Ho(t,i){1&t&&(e.TgZ(0,"span",40),e.SDv(1,43),e.qZA())}function Go(t,i){1&t&&(e.TgZ(0,"span",40),e.SDv(1,44),e.qZA())}function zo(t,i){if(1&t&&(e.TgZ(0,"option",45),e._uU(1),e.qZA()),2&t){const _=i.$implicit;e.Q6J("value",_),e.xp6(1),e.hij(" ",_," ")}}function Xo(t,i){1&t&&(e.TgZ(0,"span",40),e.SDv(1,46),e.qZA())}function wo(t,i){if(1&t&&(e.TgZ(0,"option",45),e._uU(1),e.qZA()),2&t){const _=i.$implicit;e.Q6J("value",_),e.xp6(1),e.hij(" ",_," ")}}function Qo(t,i){1&t&&(e.TgZ(0,"span",40),e.SDv(1,57),e.qZA())}function Jo(t,i){1&t&&(e.TgZ(0,"span",40),e.SDv(1,58),e.qZA())}function ko(t,i){1&t&&(e.TgZ(0,"span",40),e.SDv(1,59),e.qZA())}function Vo(t,i){1&t&&(e.TgZ(0,"span",54),e.SDv(1,60),e.qZA())}function Yo(t,i){if(1&t){const _=e.EpF();e.TgZ(0,"div",8),e.TgZ(1,"label",51),e.SDv(2,52),e.qZA(),e.TgZ(3,"div",11),e.TgZ(4,"input",53),e.NdJ("focus",function(){return e.CHM(_),e.oxw(3).externalPgChange=!1})("blur",function(){return e.CHM(_),e.oxw(3).alignPgs()}),e.qZA(),e.YNc(5,Qo,2,0,"span",13),e.YNc(6,Jo,2,0,"span",13),e.YNc(7,ko,2,0,"span",13),e.TgZ(8,"span",54),e._UZ(9,"cd-doc",55),e.qZA(),e.YNc(10,Vo,2,0,"span",56),e.qZA(),e.qZA()}if(2&t){e.oxw(2);const _=e.MAs(2),o=e.oxw();e.xp6(5),e.Q6J("ngIf",o.form.showError("pgNum",_,"required")),e.xp6(1),e.Q6J("ngIf",o.form.showError("pgNum",_,"min")),e.xp6(1),e.Q6J("ngIf",o.form.showError("pgNum",_,"34")),e.xp6(3),e.Q6J("ngIf",o.externalPgChange)}}function Bo(t,i){if(1&t&&(e.TgZ(0,"span",40),e.TgZ(1,"ul",65),e.TgZ(2,"li"),e.SDv(3,66),e.qZA(),e.TgZ(4,"li"),e.SDv(5,67),e.qZA(),e.qZA(),e.qZA()),2&t){const _=e.oxw(4);e.xp6(3),e.pQV(_.getMinSize()),e.QtT(3),e.xp6(2),e.pQV(_.getMaxSize()),e.QtT(5)}}function jo(t,i){if(1&t&&(e.TgZ(0,"span",40),e.SDv(1,68),e.qZA()),2&t){const _=e.oxw(4);e.xp6(1),e.pQV(_.getMinSize())(_.getMaxSize()),e.QtT(1)}}function Ko(t,i){1&t&&(e.TgZ(0,"span",69),e.SDv(1,70),e.qZA())}function Wo(t,i){if(1&t&&(e.TgZ(0,"div",8),e.TgZ(1,"label",61),e.SDv(2,62),e.qZA(),e.TgZ(3,"div",11),e._UZ(4,"input",63),e.YNc(5,Bo,6,2,"span",13),e.YNc(6,jo,2,2,"span",13),e.YNc(7,Ko,2,0,"span",64),e.qZA(),e.qZA()),2&t){e.oxw(2);const _=e.MAs(2),o=e.oxw();e.xp6(4),e.Q6J("max",o.getMaxSize())("min",o.getMinSize()),e.xp6(1),e.Q6J("ngIf",o.form.showError("size",_)),e.xp6(1),e.Q6J("ngIf",o.form.showError("size",_)),e.xp6(1),e.Q6J("ngIf",1===o.form.getValue("size"))}}function et(t,i){1&t&&(e.TgZ(0,"div",8),e.TgZ(1,"label",71),e.SDv(2,72),e.qZA(),e.TgZ(3,"div",11),e.TgZ(4,"div",73),e._UZ(5,"input",74),e.TgZ(6,"label",75),e.SDv(7,76),e.qZA(),e.qZA(),e.qZA(),e.qZA())}function _t(t,i){if(1&t&&(e.TgZ(0,"div"),e.TgZ(1,"div",8),e.TgZ(2,"label",47),e.SDv(3,48),e.qZA(),e.TgZ(4,"div",11),e.TgZ(5,"select",49),e.YNc(6,wo,2,2,"option",19),e.qZA(),e.qZA(),e.qZA(),e.YNc(7,Yo,11,4,"div",50),e.YNc(8,Wo,8,5,"div",50),e.YNc(9,et,8,0,"div",50),e.qZA()),2&t){const _=e.oxw(2);e.xp6(6),e.Q6J("ngForOf",_.pgAutoscaleModes),e.xp6(1),e.Q6J("ngIf","on"!==_.form.getValue("pgAutoscaleMode")),e.xp6(1),e.Q6J("ngIf",_.isReplicated),e.xp6(1),e.Q6J("ngIf",_.info.is_all_bluestore&&_.isErasure)}}function ot(t,i){1&t&&(e.TgZ(0,"option",17),e.SDv(1,91),e.qZA())}function tt(t,i){1&t&&(e.TgZ(0,"option",92),e.SDv(1,93),e.qZA()),2&t&&e.Q6J("ngValue",null)}function it(t,i){1&t&&(e.TgZ(0,"option",92),e.SDv(1,94),e.qZA()),2&t&&e.Q6J("ngValue",null)}function nt(t,i){if(1&t&&(e.TgZ(0,"option",92),e._uU(1),e.qZA()),2&t){const _=i.$implicit;e.Q6J("ngValue",_),e.xp6(1),e.hij(" ",_.name," ")}}const F=function(t){return[t]};function st(t,i){if(1&t){const _=e.EpF();e.TgZ(0,"button",95),e.NdJ("click",function(){return e.CHM(_),e.oxw(4).addErasureCodeProfile()}),e._UZ(1,"i",87),e.qZA()}if(2&t){const _=e.oxw(4);e.xp6(1),e.Q6J("ngClass",e.VKq(1,F,_.icons.add))}}function at(t,i){if(1&t){const _=e.EpF();e.TgZ(0,"button",96,97),e.NdJ("click",function(){return e.CHM(_),e.oxw(4).deleteErasureCodeProfile()}),e._UZ(2,"i",87),e.qZA()}if(2&t){const _=e.oxw(4);e.xp6(2),e.Q6J("ngClass",e.VKq(1,F,_.icons.trash))}}const lt=function(){return["name"]};function rt(t,i){if(1&t&&e._UZ(0,"cd-table-key-value",108),2&t){const _=e.oxw(5);e.Q6J("renderObjects",!0)("hideKeys",e.DdM(4,lt))("data",_.form.getValue("erasureProfile"))("autoReload",!1)}}function ct(t,i){1&t&&(e.TgZ(0,"span"),e.SDv(1,111),e.qZA())}function Ot(t,i){if(1&t&&(e.TgZ(0,"li"),e._uU(1),e.qZA()),2&t){const _=i.$implicit;e.xp6(1),e.hij(" ",_," ")}}function dt(t,i){if(1&t&&(e.TgZ(0,"ul"),e.YNc(1,Ot,2,1,"li",112),e.qZA()),2&t){const _=e.oxw(6);e.xp6(1),e.Q6J("ngForOf",_.ecpUsage)}}function ut(t,i){if(1&t&&(e.YNc(0,ct,2,0,"ng-template",null,109,e.W1O),e.YNc(2,dt,2,1,"ul",110)),2&t){const _=e.MAs(1),o=e.oxw(5);e.xp6(2),e.Q6J("ngIf",o.ecpUsage)("ngIfElse",_)}}function ft(t,i){if(1&t&&(e.TgZ(0,"span",98),e.TgZ(1,"ul",99,100),e.TgZ(3,"li",101),e.TgZ(4,"a",102),e.SDv(5,103),e.qZA(),e.YNc(6,rt,1,5,"ng-template",104),e.qZA(),e.TgZ(7,"li",105),e.TgZ(8,"a",102),e.SDv(9,106),e.qZA(),e.YNc(10,ut,3,2,"ng-template",104),e.qZA(),e.qZA(),e._UZ(11,"div",107),e.qZA()),2&t){const _=e.MAs(2);e.xp6(11),e.Q6J("ngbNavOutlet",_)}}const ye=function(t){return{active:t}};function Pt(t,i){if(1&t){const _=e.EpF();e.TgZ(0,"div",8),e.TgZ(1,"label",78),e.SDv(2,79),e.qZA(),e.TgZ(3,"div",11),e.TgZ(4,"div",80),e.TgZ(5,"select",81),e.YNc(6,ot,2,0,"option",82),e.YNc(7,tt,2,1,"option",83),e.YNc(8,it,2,1,"option",83),e.YNc(9,nt,2,2,"option",84),e.qZA(),e.TgZ(10,"span",85),e.TgZ(11,"button",86),e.NdJ("click",function(){e.CHM(_);const n=e.oxw(3);return n.data.erasureInfo=!n.data.erasureInfo}),e._UZ(12,"i",87),e.qZA(),e.YNc(13,st,2,3,"button",88),e.YNc(14,at,3,3,"button",89),e.qZA(),e.qZA(),e.YNc(15,ft,12,1,"span",90),e.qZA(),e.qZA()}if(2&t){const _=e.oxw(3);e.xp6(6),e.Q6J("ngIf",!_.ecProfiles),e.xp6(1),e.Q6J("ngIf",_.ecProfiles&&0===_.ecProfiles.length),e.xp6(1),e.Q6J("ngIf",_.ecProfiles&&_.ecProfiles.length>0),e.xp6(1),e.Q6J("ngForOf",_.ecProfiles),e.xp6(2),e.Q6J("ngClass",e.VKq(9,ye,_.data.erasureInfo)),e.xp6(1),e.Q6J("ngClass",e.VKq(11,F,_.icons.questionCircle)),e.xp6(1),e.Q6J("ngIf",!_.editing),e.xp6(1),e.Q6J("ngIf",!_.editing),e.xp6(1),e.Q6J("ngIf",_.data.erasureInfo&&_.form.getValue("erasureProfile"))}}function Et(t,i){1&t&&(e.TgZ(0,"div",8),e.TgZ(1,"label",113),e.SDv(2,114),e.qZA(),e.TgZ(3,"div",11),e.TgZ(4,"span",54),e.SDv(5,115),e.qZA(),e.qZA(),e.qZA())}function gt(t,i){1&t&&(e.TgZ(0,"span",54),e.TgZ(1,"span"),e.SDv(2,118),e.qZA(),e._uU(3,"\xa0 "),e.qZA())}function pt(t,i){if(1&t&&(e.TgZ(0,"option",92),e._uU(1),e.qZA()),2&t){const _=i.$implicit;e.Q6J("ngValue",_),e.xp6(1),e.hij(" ",_.rule_name," ")}}function mt(t,i){if(1&t){const _=e.EpF();e.TgZ(0,"button",95),e.NdJ("click",function(){return e.CHM(_),e.oxw(5).addCrushRule()}),e._UZ(1,"i",87),e.qZA()}if(2&t){const _=e.oxw(5);e.xp6(1),e.Q6J("ngClass",e.VKq(1,F,_.icons.add))}}function Rt(t,i){if(1&t){const _=e.EpF();e.TgZ(0,"button",124,125),e.NdJ("click",function(){return e.CHM(_),e.oxw(5).deleteCrushRule()}),e._UZ(2,"i",87),e.qZA()}if(2&t){const _=e.oxw(5);e.xp6(2),e.Q6J("ngClass",e.VKq(1,F,_.icons.trash))}}const Ct=function(){return["steps","ruleset","type","rule_name"]};function Mt(t,i){if(1&t&&e._UZ(0,"cd-table-key-value",108),2&t){const _=e.oxw(6);e.Q6J("renderObjects",!1)("hideKeys",e.DdM(4,Ct))("data",_.form.getValue("crushRule"))("autoReload",!1)}}function Tt(t,i){if(1&t&&(e.TgZ(0,"li"),e._uU(1),e.qZA()),2&t){const _=i.$implicit,o=e.oxw(7);e.xp6(1),e.hij(" ",o.describeCrushStep(_)," ")}}function ht(t,i){if(1&t&&(e.TgZ(0,"ol"),e.YNc(1,Tt,2,1,"li",112),e.qZA()),2&t){const _=e.oxw(6);e.xp6(1),e.Q6J("ngForOf",_.form.get("crushRule").value.steps)}}function St(t,i){1&t&&(e.TgZ(0,"span"),e.SDv(1,134),e.qZA())}function Lt(t,i){if(1&t&&(e.TgZ(0,"li"),e._uU(1),e.qZA()),2&t){const _=i.$implicit;e.xp6(1),e.hij(" ",_," ")}}function At(t,i){if(1&t&&(e.TgZ(0,"ul"),e.YNc(1,Lt,2,1,"li",112),e.qZA()),2&t){const _=e.oxw(7);e.xp6(1),e.Q6J("ngForOf",_.crushUsage)}}function Ft(t,i){if(1&t&&(e.YNc(0,St,2,0,"ng-template",null,133,e.W1O),e.YNc(2,At,2,1,"ul",110)),2&t){const _=e.MAs(1),o=e.oxw(6);e.xp6(2),e.Q6J("ngIf",o.crushUsage)("ngIfElse",_)}}function Nt(t,i){if(1&t&&(e.TgZ(0,"div",126),e.TgZ(1,"ul",99,127),e.TgZ(3,"li",128),e.TgZ(4,"a",102),e.SDv(5,129),e.qZA(),e.YNc(6,Mt,1,5,"ng-template",104),e.qZA(),e.TgZ(7,"li",130),e.TgZ(8,"a",102),e.SDv(9,131),e.qZA(),e.YNc(10,ht,2,1,"ng-template",104),e.qZA(),e.TgZ(11,"li",105),e.TgZ(12,"a",102),e.SDv(13,132),e.qZA(),e.YNc(14,Ft,3,2,"ng-template",104),e.qZA(),e.qZA(),e._UZ(15,"div",107),e.qZA()),2&t){const _=e.MAs(2);e.xp6(15),e.Q6J("ngbNavOutlet",_)}}function bt(t,i){1&t&&(e.TgZ(0,"span",40),e.SDv(1,135),e.qZA())}function vt(t,i){1&t&&(e.TgZ(0,"span",40),e.SDv(1,136),e.qZA())}function It(t,i){if(1&t){const _=e.EpF();e.TgZ(0,"div"),e.TgZ(1,"div",80),e.TgZ(2,"select",119),e.TgZ(3,"option",92),e.SDv(4,120),e.qZA(),e.YNc(5,pt,2,2,"option",84),e.qZA(),e.TgZ(6,"span",85),e.TgZ(7,"button",121),e.NdJ("click",function(){e.CHM(_);const n=e.oxw(4);return n.data.crushInfo=!n.data.crushInfo}),e._UZ(8,"i",87),e.qZA(),e.YNc(9,mt,2,3,"button",88),e.YNc(10,Rt,3,3,"button",122),e.qZA(),e.qZA(),e.YNc(11,Nt,16,1,"div",123),e.YNc(12,bt,2,0,"span",13),e.YNc(13,vt,2,0,"span",13),e.qZA()}if(2&t){e.oxw(3);const _=e.MAs(2),o=e.oxw();e.xp6(3),e.Q6J("ngValue",null),e.xp6(2),e.Q6J("ngForOf",o.current.rules),e.xp6(2),e.Q6J("ngClass",e.VKq(9,ye,o.data.crushInfo)),e.xp6(1),e.Q6J("ngClass",e.VKq(11,F,o.icons.questionCircle)),e.xp6(1),e.Q6J("ngIf",o.isReplicated&&!o.editing),e.xp6(1),e.Q6J("ngIf",o.isReplicated&&!o.editing),e.xp6(1),e.Q6J("ngIf",o.data.crushInfo&&o.form.getValue("crushRule")),e.xp6(1),e.Q6J("ngIf",o.form.showError("crushRule",_,"required")),e.xp6(1),e.Q6J("ngIf",o.form.showError("crushRule",_,"tooFewOsds"))}}function $t(t,i){if(1&t&&(e.TgZ(0,"div",8),e.TgZ(1,"label",113),e.SDv(2,116),e.qZA(),e.TgZ(3,"div",11),e.YNc(4,gt,4,0,"ng-template",null,117,e.W1O),e.YNc(6,It,14,13,"div",110),e.qZA(),e.qZA()),2&t){const _=e.MAs(5),o=e.oxw(3);e.xp6(6),e.Q6J("ngIf",o.current.rules.length>0)("ngIfElse",_)}}function Dt(t,i){if(1&t&&(e.TgZ(0,"div"),e.TgZ(1,"legend"),e.SDv(2,77),e.qZA(),e.YNc(3,Pt,16,13,"div",50),e.YNc(4,Et,6,0,"div",50),e.YNc(5,$t,7,2,"div",50),e.qZA()),2&t){const _=e.oxw(2);e.xp6(3),e.Q6J("ngIf",_.isErasure),e.xp6(1),e.Q6J("ngIf",_.isErasure&&!_.editing),e.xp6(1),e.Q6J("ngIf",_.isReplicated||_.editing)}}function Zt(t,i){if(1&t&&(e.TgZ(0,"option",45),e._uU(1),e.qZA()),2&t){const _=i.$implicit;e.Q6J("value",_),e.xp6(1),e.hij(" ",_," ")}}function xt(t,i){1&t&&(e.TgZ(0,"option",17),e.SDv(1,154),e.qZA())}function yt(t,i){1&t&&(e.TgZ(0,"option",17),e.SDv(1,155),e.qZA())}function Ut(t,i){if(1&t&&(e.TgZ(0,"option",45),e._uU(1),e.qZA()),2&t){const _=i.$implicit;e.Q6J("value",_),e.xp6(1),e.hij(" ",_," ")}}function qt(t,i){1&t&&(e.TgZ(0,"span",40),e.SDv(1,156),e.qZA())}function Ht(t,i){1&t&&(e.TgZ(0,"span",40),e.SDv(1,157),e.qZA())}function Gt(t,i){1&t&&(e.TgZ(0,"span",40),e.SDv(1,158),e.qZA())}function zt(t,i){1&t&&(e.TgZ(0,"span",40),e.SDv(1,159),e.qZA())}function Xt(t,i){1&t&&(e.TgZ(0,"span",40),e.SDv(1,160),e.qZA())}function wt(t,i){if(1&t&&(e.TgZ(0,"div"),e.TgZ(1,"div",8),e.TgZ(2,"label",142),e.SDv(3,143),e.qZA(),e.TgZ(4,"div",11),e.TgZ(5,"select",144),e.YNc(6,xt,2,0,"option",82),e.YNc(7,yt,2,0,"option",82),e.YNc(8,Ut,2,2,"option",19),e.qZA(),e.qZA(),e.qZA(),e.TgZ(9,"div",8),e.TgZ(10,"label",145),e.SDv(11,146),e.qZA(),e.TgZ(12,"div",11),e._UZ(13,"input",147),e.YNc(14,qt,2,0,"span",13),e.YNc(15,Ht,2,0,"span",13),e.qZA(),e.qZA(),e.TgZ(16,"div",8),e.TgZ(17,"label",148),e.SDv(18,149),e.qZA(),e.TgZ(19,"div",11),e._UZ(20,"input",150),e.YNc(21,Gt,2,0,"span",13),e.YNc(22,zt,2,0,"span",13),e.qZA(),e.qZA(),e.TgZ(23,"div",8),e.TgZ(24,"label",151),e.SDv(25,152),e.qZA(),e.TgZ(26,"div",11),e._UZ(27,"input",153),e.YNc(28,Xt,2,0,"span",13),e.qZA(),e.qZA(),e.qZA()),2&t){e.oxw(2);const _=e.MAs(2),o=e.oxw();e.xp6(6),e.Q6J("ngIf",!o.info.compression_algorithms),e.xp6(1),e.Q6J("ngIf",o.info.compression_algorithms&&0===o.info.compression_algorithms.length),e.xp6(1),e.Q6J("ngForOf",o.info.compression_algorithms),e.xp6(6),e.Q6J("ngIf",o.form.showError("minBlobSize",_,"min")),e.xp6(1),e.Q6J("ngIf",o.form.showError("minBlobSize",_,"maximum")),e.xp6(6),e.Q6J("ngIf",o.form.showError("maxBlobSize",_,"min")),e.xp6(1),e.Q6J("ngIf",o.form.showError("maxBlobSize",_,"minimum")),e.xp6(6),e.Q6J("ngIf",o.form.showError("ratio",_,"min")||o.form.showError("ratio",_,"max"))}}function Qt(t,i){if(1&t&&(e.TgZ(0,"div",137),e.TgZ(1,"legend"),e.SDv(2,138),e.qZA(),e.TgZ(3,"div",8),e.TgZ(4,"label",139),e.SDv(5,140),e.qZA(),e.TgZ(6,"div",11),e.TgZ(7,"select",141),e.YNc(8,Zt,2,2,"option",19),e.qZA(),e.qZA(),e.qZA(),e.YNc(9,wt,29,8,"div",20),e.qZA()),2&t){const _=e.oxw(2);e.xp6(8),e.Q6J("ngForOf",_.info.compression_modes),e.xp6(1),e.Q6J("ngIf",_.hasCompressionEnabled())}}function Jt(t,i){1&t&&(e.TgZ(0,"span",40),e.SDv(1,161),e.qZA())}function kt(t,i){if(1&t){const _=e.EpF();e.TgZ(0,"div",1),e.TgZ(1,"form",2,3),e.TgZ(3,"div",4),e.TgZ(4,"div",5),e.SDv(5,6),e.ALo(6,"titlecase"),e.ALo(7,"upperFirst"),e.qZA(),e.TgZ(8,"div",7),e.TgZ(9,"div",8),e.TgZ(10,"label",9),e.SDv(11,10),e.qZA(),e.TgZ(12,"div",11),e._UZ(13,"input",12),e.YNc(14,Uo,2,0,"span",13),e.YNc(15,qo,2,0,"span",13),e.YNc(16,Ho,2,0,"span",13),e.YNc(17,Go,2,0,"span",13),e.qZA(),e.qZA(),e.TgZ(18,"div",8),e.TgZ(19,"label",14),e.SDv(20,15),e.qZA(),e.TgZ(21,"div",11),e.TgZ(22,"select",16),e.TgZ(23,"option",17),e.SDv(24,18),e.qZA(),e.YNc(25,zo,2,2,"option",19),e.qZA(),e.YNc(26,Xo,2,0,"span",13),e.qZA(),e.qZA(),e.YNc(27,_t,10,4,"div",20),e.TgZ(28,"div",8),e.TgZ(29,"label",21),e.SDv(30,22),e.qZA(),e.TgZ(31,"div",11),e.TgZ(32,"cd-select-badges",23),e.NdJ("selection",function(){return e.CHM(_),e.oxw().appSelection()}),e.qZA(),e.qZA(),e.qZA(),e.YNc(33,Dt,6,3,"div",20),e.YNc(34,Qt,10,2,"div",24),e.TgZ(35,"div"),e.TgZ(36,"legend"),e.SDv(37,25),e.qZA(),e.TgZ(38,"div",8),e.TgZ(39,"label",26),e.ynx(40),e.SDv(41,27),e.BQk(),e.TgZ(42,"cd-helper"),e.TgZ(43,"span"),e.SDv(44,28),e.qZA(),e._UZ(45,"br"),e.TgZ(46,"span"),e.SDv(47,29),e.qZA(),e.qZA(),e.qZA(),e.TgZ(48,"div",11),e._UZ(49,"input",30),e.qZA(),e.qZA(),e.TgZ(50,"div",8),e.TgZ(51,"label",31),e.ynx(52),e.SDv(53,32),e.BQk(),e.TgZ(54,"cd-helper"),e.TgZ(55,"span"),e.SDv(56,33),e.qZA(),e._UZ(57,"br"),e.TgZ(58,"span"),e.SDv(59,34),e.qZA(),e.qZA(),e.qZA(),e.TgZ(60,"div",11),e._UZ(61,"input",35),e.YNc(62,Jt,2,0,"span",13),e.qZA(),e.qZA(),e.qZA(),e.TgZ(63,"div",36),e.TgZ(64,"cd-rbd-configuration-form",37),e.NdJ("changes",function(n){return e.CHM(_),e.oxw().currentConfigurationValues=n()}),e.qZA(),e.qZA(),e.qZA(),e.TgZ(65,"div",38),e.TgZ(66,"cd-form-button-panel",39),e.NdJ("submitActionEvent",function(){return e.CHM(_),e.oxw().submit()}),e.ALo(67,"titlecase"),e.ALo(68,"upperFirst"),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA()}if(2&t){const _=e.MAs(2),o=e.oxw();e.xp6(1),e.Q6J("formGroup",o.form),e.xp6(6),e.pQV(e.lcZ(6,24,o.action))(e.lcZ(7,26,o.resource)),e.QtT(5),e.xp6(7),e.Q6J("ngIf",o.form.showError("name",_,"required")),e.xp6(1),e.Q6J("ngIf",o.form.showError("name",_,"uniqueName")),e.xp6(1),e.Q6J("ngIf",o.form.showError("name",_,"rbdPool")),e.xp6(1),e.Q6J("ngIf",o.form.showError("name",_,"pattern")),e.xp6(8),e.Q6J("ngForOf",o.data.poolTypes),e.xp6(1),e.Q6J("ngIf",o.form.showError("poolType",_,"required")),e.xp6(1),e.Q6J("ngIf",o.isReplicated||o.isErasure),e.xp6(5),e.Q6J("customBadges",!0)("customBadgeValidators",o.data.applications.validators)("messages",o.data.applications.messages)("data",o.data.applications.selected)("options",o.data.applications.available)("selectionLimit",4),e.xp6(1),e.Q6J("ngIf",o.isErasure||o.isReplicated),e.xp6(1),e.Q6J("ngIf",o.info.is_all_bluestore),e.xp6(28),e.Q6J("ngIf",o.form.showError("max_objects",_,"min")),e.xp6(1),e.Q6J("hidden",o.isErasure||-1===o.data.applications.selected.indexOf("rbd")),e.xp6(1),e.Q6J("form",o.form)("initializeData",o.initializeConfigData),e.xp6(2),e.Q6J("form",o.form)("submitText",e.lcZ(67,28,o.action)+" "+e.lcZ(68,30,o.resource))}}let Ue=(()=>{class t extends p_.E{constructor(_,o,n,s,c,d,f,p,m,T,h){super(),this.dimlessBinaryPipe=_,this.route=o,this.router=n,this.modalService=s,this.poolService=c,this.authStorageService=d,this.formatter=f,this.taskWrapper=p,this.ecpService=m,this.crushRuleService=T,this.actionLabels=h,this.editing=!1,this.isReplicated=!1,this.isErasure=!1,this.data=new Fo,this.externalPgChange=!1,this.current={rules:[]},this.initializeConfigData=new P_.t(1),this.currentConfigurationValues={},this.icons=v.P,this.crushUsage=void 0,this.ecpUsage=void 0,this.editing=this.router.url.startsWith(`/pool/${M.MQ.EDIT}`),this.action=this.editing?this.actionLabels.EDIT:this.actionLabels.CREATE,this.resource="pool",this.authenticate(),this.createForm()}authenticate(){if(this.permission=this.authStorageService.getPermissions().pool,!this.permission.read||!this.permission.update&&this.editing||!this.permission.create&&!this.editing)throw new E_._2}createForm(){const _=new Ne.d({mode:new a.NI("none"),algorithm:new a.NI(""),minBlobSize:new a.NI("",{updateOn:"blur"}),maxBlobSize:new a.NI("",{updateOn:"blur"}),ratio:new a.NI("",{updateOn:"blur"})});this.form=new Ne.d({name:new a.NI("",{validators:[a.kI.pattern(/^[.A-Za-z0-9_/-]+$/),a.kI.required,P.h.custom("rbdPool",()=>this.form&&this.form.getValue("name").includes("/")&&this.data&&-1!==this.data.applications.selected.indexOf("rbd"))]}),poolType:new a.NI("",{validators:[a.kI.required]}),crushRule:new a.NI(null,{validators:[P.h.custom("tooFewOsds",o=>this.info&&o&&this.info.osd_countthis.isReplicated&&this.info.crush_rules_replicated.length>0&&!o)]}),size:new a.NI("",{updateOn:"blur"}),erasureProfile:new a.NI(null),pgNum:new a.NI("",{validators:[a.kI.required]}),pgAutoscaleMode:new a.NI(null),ecOverwrites:new a.NI(!1),compression:_,max_bytes:new a.NI(""),max_objects:new a.NI(0)},[P.h.custom("form",()=>null)])}ngOnInit(){this.poolService.getInfo().subscribe(_=>{this.initInfo(_),this.editing?this.initEditMode():(this.setAvailableApps(),this.loadingReady()),this.listenToChanges(),this.setComplexValidators()})}initInfo(_){this.pgAutoscaleModes=_.pg_autoscale_modes,this.form.silentSet("pgAutoscaleMode",_.pg_autoscale_default_mode),this.form.silentSet("algorithm",_.bluestore_compression_algorithm),this.info=_,this.initEcp(_.erasure_code_profiles)}initEcp(_){this.setListControlStatus("erasureProfile",_),this.ecProfiles=_}setListControlStatus(_,o){const n=this.form.get(_),s=n.value;1!==o.length||s&&g().isEqual(s,o[0])?0===o.length&&s&&n.setValue(null):n.setValue(o[0]),o.length<=1?n.enabled&&n.disable():n.disabled&&n.enable()}initEditMode(){this.disableForEdit(),this.routeParamsSubscribe=this.route.params.subscribe(_=>this.poolService.get(_.name).subscribe(o=>{this.data.pool=o,this.initEditFormData(o),this.loadingReady()}))}disableForEdit(){["poolType","crushRule","size","erasureProfile","ecOverwrites"].forEach(_=>this.form.get(_).disable())}initEditFormData(_){this.initializeConfigData.next({initialData:_.configuration,sourceType:m_.h.pool}),this.poolTypeChange(_.type);const o=this.info.crush_rules_replicated.concat(this.info.crush_rules_erasure),n={name:_.pool_name,poolType:_.type,crushRule:o.find(s=>s.rule_name===_.crush_rule),size:_.size,erasureProfile:this.ecProfiles.find(s=>s.name===_.erasure_code_profile),pgAutoscaleMode:_.pg_autoscale_mode,pgNum:_.pg_num,ecOverwrites:_.flags_names.includes("ec_overwrites"),mode:_.options.compression_mode,algorithm:_.options.compression_algorithm,minBlobSize:this.dimlessBinaryPipe.transform(_.options.compression_min_blob_size),maxBlobSize:this.dimlessBinaryPipe.transform(_.options.compression_max_blob_size),ratio:_.options.compression_required_ratio,max_bytes:this.dimlessBinaryPipe.transform(_.quota_max_bytes),max_objects:_.quota_max_objects};Object.keys(n).forEach(s=>{const c=n[s];!g().isUndefined(c)&&""!==c&&this.form.silentSet(s,c)}),this.data.pgs=this.form.getValue("pgNum"),this.setAvailableApps(this.data.applications.default.concat(_.application_metadata)),this.data.applications.selected=_.application_metadata}setAvailableApps(_=this.data.applications.default){this.data.applications.available=g().uniq(_.sort()).map(o=>new g_.$(!1,o,""))}listenToChanges(){this.listenToChangesDuringAddEdit(),this.editing||this.listenToChangesDuringAdd()}listenToChangesDuringAddEdit(){this.form.get("pgNum").valueChanges.subscribe(_=>{const o=_-this.data.pgs;1===Math.abs(o)&&2!==_?this.doPgPowerJump(o):this.data.pgs=_})}doPgPowerJump(_){const o=this.calculatePgPower()+_;this.setPgs(-1===_?Math.round(o):Math.floor(o))}calculatePgPower(_=this.form.getValue("pgNum")){return Math.log(_)/Math.log(2)}setPgs(_){const o=Math.pow(2,_<0?0:_);this.data.pgs=o,this.form.silentSet("pgNum",o)}listenToChangesDuringAdd(){this.form.get("poolType").valueChanges.subscribe(_=>{this.poolTypeChange(_)}),this.form.get("crushRule").valueChanges.subscribe(_=>{this.crushDeletionBtn&&this.crushDeletionBtn.isOpen()&&this.crushDeletionBtn.close(),_&&(this.setCorrectMaxSize(_),this.crushRuleIsUsedBy(_.rule_name),this.replicatedRuleChange(),this.pgCalc())}),this.form.get("size").valueChanges.subscribe(()=>{this.pgCalc()}),this.form.get("erasureProfile").valueChanges.subscribe(_=>{this.ecpDeletionBtn&&this.ecpDeletionBtn.isOpen()&&this.ecpDeletionBtn.close(),_&&(this.ecpIsUsedBy(_.name),this.pgCalc())}),this.form.get("mode").valueChanges.subscribe(()=>{["minBlobSize","maxBlobSize","ratio"].forEach(_=>{this.form.get(_).updateValueAndValidity({emitEvent:!1})})}),this.form.get("minBlobSize").valueChanges.subscribe(()=>{this.form.get("maxBlobSize").updateValueAndValidity({emitEvent:!1})}),this.form.get("maxBlobSize").valueChanges.subscribe(()=>{this.form.get("minBlobSize").updateValueAndValidity({emitEvent:!1})})}poolTypeChange(_){if("replicated"===_?this.setTypeBooleans(!0,!1):this.setTypeBooleans(!1,"erasure"===_),!_||!this.info)return void(this.current.rules=[]);const o=this.info["crush_rules_"+_]||[];this.current.rules=o,!this.editing&&(this.isReplicated&&this.setListControlStatus("crushRule",o),this.replicatedRuleChange(),this.pgCalc())}setTypeBooleans(_,o){this.isReplicated=_,this.isErasure=o}replicatedRuleChange(){if(!this.isReplicated)return;const _=this.form.get("size");let o=this.form.getValue("size")||3;const n=this.getMinSize(),s=this.getMaxSize();os&&(o=s),o!==_.value&&this.form.silentSet("size",o)}getMinSize(){if(!this.info||this.info.osd_count<1)return 0;const _=this.form.getValue("crushRule");return _?_.min_size:1}getMaxSize(){const _=this.form.getValue("crushRule");return this.info?_?_.usable_size:Math.min(this.info.osd_count,3):0}pgCalc(){const _=this.form.getValue("poolType");if(!this.info||this.form.get("pgNum").dirty||!_)return;const o=100*this.info.osd_count,n=this.isReplicated?this.replicatedPgCalc(o):this.erasurePgCalc(o);if(!n)return;const s=this.data.pgs;this.alignPgs(n),this.externalPgChange||(this.externalPgChange=s!==this.data.pgs)}setCorrectMaxSize(_=this.form.getValue("crushRule")){if(!_)return;const n=S.searchFailureDomains(this.info.nodes,_.steps[0].item_name)[_.steps[1].type];_.usable_size=Math.min(n?n.length:_.max_size,_.max_size)}replicatedPgCalc(_){const o=this.form.get("size"),n=o.value;return o.valid&&n>0?_/n:0}erasurePgCalc(_){const o=this.form.get("erasureProfile"),n=o.value;return(o.valid||o.disabled)&&n?_/(n.k+n.m):0}alignPgs(_=this.form.getValue("pgNum")){this.setPgs(Math.round(this.calculatePgPower(_<1?1:_)))}setComplexValidators(){this.editing?this.form.get("name").setValidators([this.form.get("name").validator,P.h.custom("uniqueName",_=>this.data.pool&&this.info&&-1!==this.info.pool_names.indexOf(_)&&this.info.pool_names.indexOf(_)!==this.info.pool_names.indexOf(this.data.pool.pool_name))]):(P.h.validateIf(this.form.get("size"),()=>this.isReplicated,[P.h.custom("min",_=>this.form.getValue("size")&&_this.form.getValue("size")&&this.getMaxSize()<_)]),this.form.get("name").setValidators([this.form.get("name").validator,P.h.custom("uniqueName",_=>this.info&&-1!==this.info.pool_names.indexOf(_))])),this.setCompressionValidators()}setCompressionValidators(){P.h.validateIf(this.form.get("minBlobSize"),()=>this.hasCompressionEnabled(),[a.kI.min(0),P.h.custom("maximum",_=>this.oddBlobSize(_,this.form.getValue("maxBlobSize")))]),P.h.validateIf(this.form.get("maxBlobSize"),()=>this.hasCompressionEnabled(),[a.kI.min(0),P.h.custom("minimum",_=>this.oddBlobSize(this.form.getValue("minBlobSize"),_))]),P.h.validateIf(this.form.get("ratio"),()=>this.hasCompressionEnabled(),[a.kI.min(0),a.kI.max(1)])}oddBlobSize(_,o){const n=this.formatter.toBytes(_),s=this.formatter.toBytes(o);return Boolean(n&&s&&n>=s)}hasCompressionEnabled(){return this.form.getValue("mode")&&"none"!==this.form.get("mode").value.toLowerCase()}describeCrushStep(_){return[_.op.replace("_"," "),_.item_name||"",_.type?_.num+" type "+_.type:""].join(" ")}addErasureCodeProfile(){this.addModal(Lo,_=>this.reloadECPs(_))}addModal(_,o){this.hideOpenTooltips(),this.modalService.show(_).componentInstance.submitAction.subscribe(s=>{o(s.name)})}hideOpenTooltips(){const _=o=>o&&o.isOpen()&&o.close();_(this.ecpDeletionBtn),_(this.crushDeletionBtn)}reloadECPs(_){this.reloadList({newItemName:_,getInfo:()=>this.ecpService.list(),initInfo:o=>this.initEcp(o),findNewItem:()=>this.ecProfiles.find(o=>o.name===_),controlName:"erasureProfile"})}reloadList({newItemName:_,getInfo:o,initInfo:n,findNewItem:s,controlName:c}){this.modalSubscription&&this.modalSubscription.unsubscribe(),o().subscribe(d=>{if(n(d),!_)return;const f=s();f&&this.form.get(c).setValue(f)})}deleteErasureCodeProfile(){this.deletionModal({value:this.form.getValue("erasureProfile"),usage:this.ecpUsage,deletionBtn:this.ecpDeletionBtn,dataName:"erasureInfo",getTabs:()=>this.ecpInfoTabs,tabPosition:"used-by-pools",nameAttribute:"name",itemDescription:"erasure code profile",reloadFn:()=>this.reloadECPs(),deleteFn:_=>this.ecpService.delete(_),taskName:"ecp/delete"})}deletionModal({value:_,usage:o,deletionBtn:n,dataName:s,getTabs:c,tabPosition:d,nameAttribute:f,itemDescription:p,reloadFn:m,deleteFn:T,taskName:h}){if(!_)return;if(o)return n.animation=!1,n.toggle(),this.data[s]=!0,void setTimeout(()=>{const u=c();u&&u.select(d)},50);const R=_[f];this.modalService.show(Fe.M,{itemDescription:p,itemNames:[R],submitActionObservable:()=>{const u=T(R);return u.subscribe(()=>m()),this.taskWrapper.wrapTaskAroundCall({task:new I.R(h,{name:R}),call:u})}})}addCrushRule(){this.addModal(I_,_=>this.reloadCrushRules(_))}reloadCrushRules(_){this.reloadList({newItemName:_,getInfo:()=>this.poolService.getInfo(),initInfo:o=>{this.initInfo(o),this.poolTypeChange("replicated")},findNewItem:()=>this.info.crush_rules_replicated.find(o=>o.rule_name===_),controlName:"crushRule"})}deleteCrushRule(){this.deletionModal({value:this.form.getValue("crushRule"),usage:this.crushUsage,deletionBtn:this.crushDeletionBtn,dataName:"crushInfo",getTabs:()=>this.crushInfoTabs,tabPosition:"used-by-pools",nameAttribute:"rule_name",itemDescription:"crush rule",reloadFn:()=>this.reloadCrushRules(),deleteFn:_=>this.crushRuleService.delete(_),taskName:"crushRule/delete"})}crushRuleIsUsedBy(_){this.crushUsage=_?this.info.used_rules[_]:void 0}ecpIsUsedBy(_){this.ecpUsage=_?this.info.used_profiles[_]:void 0}submit(){if(this.form.invalid)return void this.form.setErrors({cdSubmitButton:!0});const _={pool:this.form.getValue("name")};this.assignFormFields(_,[{externalFieldName:"pool_type",formControlName:"poolType"},{externalFieldName:"pg_autoscale_mode",formControlName:"pgAutoscaleMode",editable:!0},{externalFieldName:"pg_num",formControlName:"pgNum",replaceFn:n=>"on"===this.form.getValue("pgAutoscaleMode")?1:n,editable:!0},this.isReplicated?{externalFieldName:"size",formControlName:"size"}:{externalFieldName:"erasure_code_profile",formControlName:"erasureProfile",attr:"name"},{externalFieldName:"rule_name",formControlName:"crushRule",replaceFn:n=>this.isReplicated?n&&n.rule_name:void 0},{externalFieldName:"quota_max_bytes",formControlName:"max_bytes",replaceFn:this.formatter.toBytes,editable:!0,resetValue:this.editing?0:void 0},{externalFieldName:"quota_max_objects",formControlName:"max_objects",editable:!0,resetValue:this.editing?0:void 0}]),this.info.is_all_bluestore&&(this.assignFormField(_,{externalFieldName:"flags",formControlName:"ecOverwrites",replaceFn:()=>this.isErasure?["ec_overwrites"]:void 0}),"none"!==this.form.getValue("mode")?this.assignFormFields(_,[{externalFieldName:"compression_mode",formControlName:"mode",editable:!0,replaceFn:n=>this.hasCompressionEnabled()&&n},{externalFieldName:"compression_algorithm",formControlName:"algorithm",editable:!0},{externalFieldName:"compression_min_blob_size",formControlName:"minBlobSize",replaceFn:this.formatter.toBytes,editable:!0,resetValue:0},{externalFieldName:"compression_max_blob_size",formControlName:"maxBlobSize",replaceFn:this.formatter.toBytes,editable:!0,resetValue:0},{externalFieldName:"compression_required_ratio",formControlName:"ratio",editable:!0,resetValue:0}]):this.editing&&this.assignFormFields(_,[{externalFieldName:"compression_mode",formControlName:"mode",editable:!0,replaceFn:()=>"unset"},{externalFieldName:"srcpool",formControlName:"name",editable:!0,replaceFn:()=>this.data.pool.pool_name}]));const o=this.data.applications.selected;(o.length>0||this.editing)&&(_.application_metadata=o),this.isReplicated&&!g().isEmpty(this.currentConfigurationValues)&&(_.configuration=this.currentConfigurationValues),this.triggerApiTask(_)}assignFormFields(_,o){o.forEach(n=>this.assignFormField(_,n))}assignFormField(_,{externalFieldName:o,formControlName:n,attr:s,replaceFn:c,editable:d,resetValue:f}){if(this.editing&&(!d||this.form.get(n).pristine))return;const p=this.form.getValue(n);let m=c?c(p):s?g().get(p,s):p;if(!p||!m){if(!d||g().isUndefined(f))return;m=f}_[o]=m}triggerApiTask(_){this.taskWrapper.wrapTaskAroundCall({task:new I.R("pool/"+(this.editing?M.MQ.EDIT:M.MQ.CREATE),{pool_name:_.hasOwnProperty("srcpool")?_.srcpool:_.pool}),call:this.poolService[this.editing?M.MQ.UPDATE:M.MQ.CREATE](_)}).subscribe({error:o=>{g().isObject(o.error)&&"34"===o.error.code&&this.form.get("pgNum").setErrors({34:!0}),this.form.setErrors({cdSubmitButton:!0})},complete:()=>this.router.navigate(["/pool"])})}appSelection(){this.form.get("name").updateValueAndValidity({emitEvent:!1,onlySelf:!0})}}return t.\u0275fac=function(_){return new(_||t)(e.Y36(R_.$),e.Y36(Oe.gz),e.Y36(Oe.F0),e.Y36(De.Z),e.Y36(ue.q),e.Y36(Ze.j),e.Y36(C_.H),e.Y36(de.P),e.Y36(Me),e.Y36(ve.H),e.Y36(M.p4))},t.\u0275cmp=e.Xpm({type:t,selectors:[["cd-pool-form"]],viewQuery:function(_,o){if(1&_&&(e.Gf(Do,5),e.Gf(Zo,5),e.Gf(xo,5),e.Gf(yo,5)),2&_){let n;e.iGM(n=e.CRH())&&(o.crushInfoTabs=n.first),e.iGM(n=e.CRH())&&(o.crushDeletionBtn=n.first),e.iGM(n=e.CRH())&&(o.ecpInfoTabs=n.first),e.iGM(n=e.CRH())&&(o.ecpDeletionBtn=n.first)}},features:[e.qOj],decls:1,vars:1,consts:function(){let i,_,o,n,s,c,d,f,p,m,T,h,R,u,A,$,D,Z,x,y,U,q,H,G,z,X,w,Q,J,k,V,Y,B,j,K,N,W,ee,_e,oe,te,ie,ne,se,ae,le,re,ce,b,O,Xe,we,Qe,Je,ke,Ve,Ye,Be,je,Ke,We,e_,__,o_,t_,i_,n_,s_,a_,l_,r_,c_;return i="" + "\ufffd0\ufffd" + " " + "\ufffd1\ufffd" + "",_="Name",o="Name...",n="Pool type",s="-- Select a pool type --",c="Applications",d="Quotas",f="Max bytes",p="Leave it blank or specify 0 to disable this quota.",m="A valid quota should be greater than 0.",T="e.g., 10GiB",h="Max objects",R="Leave it blank or specify 0 to disable this quota.",u="A valid quota should be greater than 0.",A="This field is required!",$="The chosen Ceph pool name is already in use.",D="It's not possible to create an RBD pool with '/' in the name. Please change the name or remove 'rbd' from the applications list.",Z="Pool name can only contain letters, numbers, '.', '-', '_' or '/'.",x="This field is required!",y="PG Autoscale",U="Placement groups",q="Calculation help",H="This field is required!",G="At least one placement group is needed!",z="Your cluster can't handle this many PGs. Please recalculate the PG amount needed.",X="The current PGs settings were calculated for you, you should make sure the values suit your needs before submit.",w="Replicated size",Q="Minimum: " + "\ufffd0\ufffd" + "",J="Maximum: " + "\ufffd0\ufffd" + "",k="The size specified is out of range. A value from " + "\ufffd0\ufffd" + " to " + "\ufffd1\ufffd" + " is usable.",V="A size of 1 will not create a replication of the object. The 'Replicated size' includes the object itself.",Y="Flags",B="EC Overwrites",j="CRUSH",K="Erasure code profile",N="This profile can't be deleted as it is in use.",W="Loading...",ee="-- No erasure code profile available --",_e="-- Select an erasure code profile --",oe="Profile",te="Used by pools",ie="Profile is not in use.",ne="Crush ruleset",se="A new crush ruleset will be implicitly created.",ae="Crush ruleset",le="There are no rules.",re="-- Select a crush rule --",ce="Placement and\n replication strategies or distribution policies that allow to\n specify how CRUSH places data replicas.",b="This rule can't be deleted as it is in use.",O="Crush rule",Xe="Crush steps",we="Used by pools",Qe="Rule is not in use.",Je="This field is required!",ke="The rule can't be used in the current cluster as it has too few OSDs to meet the minimum required OSD by this rule.",Ve="Compression",Ye="Mode",Be="Algorithm",je="Minimum blob size",Ke="e.g., 128KiB",We="Maximum blob size",e_="e.g., 512KiB",__="Ratio",o_="Compression ratio",t_="Loading...",i_="-- No erasure compression algorithm available --",n_="Value should be greater than 0",s_="Value should be less than the maximum blob size",a_="Value should be greater than 0",l_="Value should be greater than the minimum blob size",r_="Value should be between 0.0 and 1.0",c_="The value should be greater or equal to 0",[["class","cd-col-form",4,"cdFormLoading"],[1,"cd-col-form"],["name","form","novalidate","",3,"formGroup"],["formDir","ngForm"],[1,"card"],[1,"card-header"],i,[1,"card-body"],[1,"form-group","row"],["for","name",1,"cd-col-form-label","required"],_,[1,"cd-col-form-input"],["id","name","name","name","type","text","placeholder",o,"formControlName","name","autofocus","",1,"form-control"],["class","invalid-feedback",4,"ngIf"],["for","poolType",1,"cd-col-form-label","required"],n,["id","poolType","formControlName","poolType","name","poolType",1,"form-control"],["ngValue",""],s,[3,"value",4,"ngFor","ngForOf"],[4,"ngIf"],["for","applications",1,"cd-col-form-label"],c,["id","applications",3,"customBadges","customBadgeValidators","messages","data","options","selectionLimit","selection"],["formGroupName","compression",4,"ngIf"],d,["for","max_bytes",1,"cd-col-form-label"],f,p,m,["id","max_bytes","name","max_bytes","type","text","formControlName","max_bytes","placeholder",T,"defaultUnit","GiB","cdDimlessBinary","",1,"form-control"],["for","max_objects",1,"cd-col-form-label"],h,R,u,["id","max_objects","min","0","name","max_objects","type","number","formControlName","max_objects",1,"form-control"],[3,"hidden"],[3,"form","initializeData","changes"],[1,"card-footer"],["wrappingClass","text-right",3,"form","submitText","submitActionEvent"],[1,"invalid-feedback"],A,$,D,Z,[3,"value"],x,["for","pgAutoscaleMode",1,"cd-col-form-label"],y,["id","pgAutoscaleMode","name","pgAutoscaleMode","formControlName","pgAutoscaleMode",1,"form-control"],["class","form-group row",4,"ngIf"],["for","pgNum",1,"cd-col-form-label","required"],U,["id","pgNum","name","pgNum","formControlName","pgNum","min","1","type","number","required","",1,"form-control",3,"focus","blur"],[1,"form-text","text-muted"],["section","pgs","docText",q],["class","form-text text-muted",4,"ngIf"],H,G,z,X,["for","size",1,"cd-col-form-label","required"],w,["id","size","name","size","type","number","formControlName","size",1,"form-control",3,"max","min"],["class","text-warning-dark",4,"ngIf"],[1,"list-inline"],Q,J,k,[1,"text-warning-dark"],V,[1,"cd-col-form-label"],Y,[1,"custom-control","custom-checkbox"],["type","checkbox","id","ec-overwrites","formControlName","ecOverwrites",1,"custom-control-input"],["for","ec-overwrites",1,"custom-control-label"],B,j,["for","erasureProfile",1,"cd-col-form-label"],K,[1,"input-group"],["id","erasureProfile","name","erasureProfile","formControlName","erasureProfile",1,"form-control"],["ngValue","",4,"ngIf"],[3,"ngValue",4,"ngIf"],[3,"ngValue",4,"ngFor","ngForOf"],[1,"input-group-append"],["id","ecp-info-button","type","button",1,"btn","btn-light",3,"ngClass","click"],["aria-hidden","true",3,"ngClass"],["class","btn btn-light","type","button",3,"click",4,"ngIf"],["class","btn btn-light","type","button","ngbTooltip",N,"triggers","manual",3,"click",4,"ngIf"],["class","form-text text-muted","id","ecp-info-block",4,"ngIf"],W,[3,"ngValue"],ee,_e,["type","button",1,"btn","btn-light",3,"click"],["type","button","ngbTooltip",N,"triggers","manual",1,"btn","btn-light",3,"click"],["ecpDeletionBtn","ngbTooltip"],["id","ecp-info-block",1,"form-text","text-muted"],["ngbNav","",1,"nav-tabs"],["ecpInfoTabs","ngbNav"],["ngbNavItem","ecp-info"],["ngbNavLink",""],oe,["ngbNavContent",""],["ngbNavItem","used-by-pools"],te,[3,"ngbNavOutlet"],[3,"renderObjects","hideKeys","data","autoReload"],["ecpIsNotUsed",""],[4,"ngIf","ngIfElse"],ie,[4,"ngFor","ngForOf"],["for","crushRule",1,"cd-col-form-label"],ne,se,ae,["noRules",""],le,["id","crushRule","formControlName","crushRule","name","crushSet",1,"form-control"],re,["id","crush-info-button","type","button","ngbTooltip",ce,1,"btn","btn-light",3,"ngClass","click"],["class","btn btn-light","type","button","ngbTooltip",b,"triggers","manual",3,"click",4,"ngIf"],["class","form-text text-muted","id","crush-info-block",4,"ngIf"],["type","button","ngbTooltip",b,"triggers","manual",1,"btn","btn-light",3,"click"],["crushDeletionBtn","ngbTooltip"],["id","crush-info-block",1,"form-text","text-muted"],["crushInfoTabs","ngbNav"],["ngbNavItem","crush-rule-info"],O,["ngbNavItem","crush-rule-steps"],Xe,we,["ruleIsNotUsed",""],Qe,Je,ke,["formGroupName","compression"],Ve,["for","mode",1,"cd-col-form-label"],Ye,["id","mode","name","mode","formControlName","mode",1,"form-control"],["for","algorithm",1,"cd-col-form-label"],Be,["id","algorithm","name","algorithm","formControlName","algorithm",1,"form-control"],["for","minBlobSize",1,"cd-col-form-label"],je,["id","minBlobSize","name","minBlobSize","formControlName","minBlobSize","type","text","min","0","placeholder",Ke,"defaultUnit","KiB","cdDimlessBinary","",1,"form-control"],["for","maxBlobSize",1,"cd-col-form-label"],We,["id","maxBlobSize","type","text","min","0","formControlName","maxBlobSize","placeholder",e_,"defaultUnit","KiB","cdDimlessBinary","",1,"form-control"],["for","ratio",1,"cd-col-form-label"],__,["id","ratio","name","ratio","formControlName","ratio","type","number","min","0","max","1","step","0.1","placeholder",o_,1,"form-control"],t_,i_,n_,s_,a_,l_,r_,c_]},template:function(_,o){1&_&&e.YNc(0,kt,69,32,"div",0),2&_&&e.Q6J("cdFormLoading",o.loading)},directives:[No.y,a._Y,a.JL,fe.V,a.sg,Pe.P,Ee.o,a.Fj,ge.b,a.JJ,a.u,pe.U,C.O5,a.EJ,a.YN,a.Kr,C.sg,bo.m,me.S,vo.Q,a.qQ,a.wV,Io.d,Re.p,a.Q7,$o.K,a.Fd,a.Wl,C.mk,E._L,E.Pz,E.nv,E.Vx,E.uN,E.tO,xe.b,a.x0],pipes:[C.rS,Ce.m],styles:[""]}),t})();var Vt=r(19773),Yt=r(49671),Bt=r(68136),Te=r(69158),he=r(35905),L=r(99466),jt=r(91801),Kt=r(68774),Wt=r(66369),qe=r(38047),Se=r(51847);class ei{constructor(i){this.pool_name=i}}var _i=r(64724),oi=r(94928),He=r(51295),ti=r(59376),Ge=r(76317),ii=r(71752);function ni(t,i){if(1&t&&e._UZ(0,"cd-table-key-value",12),2&t){const _=e.oxw(2);e.Q6J("renderObjects",!0)("data",_.poolDetails)("autoReload",!1)}}function si(t,i){if(1&t&&e._UZ(0,"cd-grafana",15),2&t){const _=e.oxw(3);e.MGl("grafanaPath","ceph-pool-detail?var-pool_name=",_.selection.pool_name,"")}}function ai(t,i){1&t&&(e.TgZ(0,"li",13),e.TgZ(1,"a",5),e.SDv(2,14),e.qZA(),e.YNc(3,si,1,1,"ng-template",7),e.qZA())}function li(t,i){if(1&t&&e._UZ(0,"cd-rbd-configuration-table",18),2&t){const _=e.oxw(3);e.Q6J("data",_.selectedPoolConfiguration)}}function ri(t,i){1&t&&(e.TgZ(0,"li",16),e.TgZ(1,"a",5),e.SDv(2,17),e.qZA(),e.YNc(3,li,1,1,"ng-template",7),e.qZA())}function ci(t,i){if(1&t&&e._UZ(0,"cd-table",21),2&t){const _=e.oxw(3);e.Q6J("data",_.cacheTiers)("columns",_.cacheTierColumns)("autoSave",!1)}}function Oi(t,i){1&t&&(e.TgZ(0,"li",19),e.TgZ(1,"a",5),e.SDv(2,20),e.qZA(),e.YNc(3,ci,1,3,"ng-template",7),e.qZA())}function di(t,i){if(1&t&&(e.ynx(0,1),e.TgZ(1,"ul",2,3),e.TgZ(3,"li",4),e.TgZ(4,"a",5),e.SDv(5,6),e.qZA(),e.YNc(6,ni,1,3,"ng-template",7),e.qZA(),e.YNc(7,ai,4,0,"li",8),e.YNc(8,ri,4,0,"li",9),e.YNc(9,Oi,4,0,"li",10),e.qZA(),e._UZ(10,"div",11),e.BQk()),2&t){const _=e.MAs(2),o=e.oxw();e.xp6(7),e.Q6J("ngIf",o.permissions.grafana.read),e.xp6(1),e.Q6J("ngIf","replicated"===o.selection.type),e.xp6(1),e.Q6J("ngIf",(null==o.selection.tiers?null:o.selection.tiers.length)>0),e.xp6(1),e.Q6J("ngbNavOutlet",_)}}let ui=(()=>{class t{constructor(_){this.poolService=_,this.cacheTierColumns=[],this.omittedPoolAttributes=["cdExecuting","cdIsBinary","stats"],this.cacheTierColumns=[{prop:"pool_name",name:"Name",flexGrow:3},{prop:"cache_mode",name:"Cache Mode",flexGrow:2},{prop:"cache_min_evict_age",name:"Min Evict Age",flexGrow:2},{prop:"cache_min_flush_age",name:"Min Flush Age",flexGrow:2},{prop:"target_max_bytes",name:"Target Max Bytes",flexGrow:2},{prop:"target_max_objects",name:"Target Max Objects",flexGrow:2}]}ngOnChanges(){this.selection&&(this.poolService.getConfiguration(this.selection.pool_name).subscribe(_=>{He.T.updateChanged(this,{selectedPoolConfiguration:_})}),He.T.updateChanged(this,{poolDetails:g().omit(this.selection,this.omittedPoolAttributes)}))}}return t.\u0275fac=function(_){return new(_||t)(e.Y36(ue.q))},t.\u0275cmp=e.Xpm({type:t,selectors:[["cd-pool-details"]],inputs:{cacheTiers:"cacheTiers",permissions:"permissions",selection:"selection"},features:[e.TTD],decls:1,vars:1,consts:function(){let i,_,o,n;return i="Details",_="Performance Details",o="Configuration",n="Cache Tiers Details",[["cdTableDetail","",4,"ngIf"],["cdTableDetail",""],["ngbNav","","cdStatefulTab","pool-details",1,"nav-tabs"],["nav","ngbNav"],["ngbNavItem","details"],["ngbNavLink",""],i,["ngbNavContent",""],["ngbNavItem","performance-details",4,"ngIf"],["ngbNavItem","configuration",4,"ngIf"],["ngbNavItem","cache-tiers-details",4,"ngIf"],[3,"ngbNavOutlet"],[3,"renderObjects","data","autoReload"],["ngbNavItem","performance-details"],_,["uid","-xyV8KCiz","grafanaStyle","three",3,"grafanaPath"],["ngbNavItem","configuration"],o,[3,"data"],["ngbNavItem","cache-tiers-details"],n,["columnMode","flex",3,"data","columns","autoSave"]]},template:function(_,o){1&_&&e.YNc(0,di,11,4,"ng-container",0),2&_&&e.Q6J("ngIf",o.selection)},directives:[C.O5,E.Pz,ti.m,E.nv,E.Vx,E.uN,E.tO,xe.b,Ge.F,ii.P,he.a],styles:[""],changeDetection:0}),t})();var fi=r(60251);const Pi=["poolUsageTpl"],Ei=["poolConfigurationSourceTpl"];function gi(t,i){if(1&t){const _=e.EpF();e.TgZ(0,"cd-table",9,10),e.NdJ("fetchData",function(){return e.CHM(_),e.oxw().taskListService.fetch()})("setExpandedRow",function(n){return e.CHM(_),e.oxw().setExpandedRow(n)})("updateSelection",function(n){return e.CHM(_),e.oxw().updateSelection(n)}),e._UZ(2,"cd-table-actions",11),e._UZ(3,"cd-pool-details",12),e.qZA()}if(2&t){const _=e.oxw();e.Q6J("data",_.pools)("columns",_.columns)("hasDetails",!0)("status",_.tableStatus)("autoReload",-1),e.xp6(2),e.Q6J("permission",_.permissions.pool)("selection",_.selection)("tableActions",_.tableActions),e.xp6(1),e.Q6J("selection",_.expandedRow)("permissions",_.permissions)("cacheTiers",_.cacheTiers)}}function pi(t,i){1&t&&e._UZ(0,"cd-grafana",14),2&t&&e.Q6J("grafanaPath","ceph-pools-overview?")}function mi(t,i){1&t&&(e.TgZ(0,"li",2),e.TgZ(1,"a",3),e.SDv(2,13),e.qZA(),e.YNc(3,pi,1,1,"ng-template",5),e.qZA())}function Ri(t,i){if(1&t&&e._UZ(0,"cd-usage-bar",16),2&t){const _=e.oxw().row;e.Q6J("total",_.stats.bytes_used.latest+_.stats.avail_raw.latest)("used",_.stats.bytes_used.latest)}}function Ci(t,i){if(1&t&&e.YNc(0,Ri,1,2,"cd-usage-bar",15),2&t){const _=i.row;e.Q6J("ngIf",null==_.stats||null==_.stats.avail_raw?null:_.stats.avail_raw.latest)}}let Mi=(()=>{class t extends Bt.o{constructor(_,o,n,s,c,d,f,p,m,T,h){super(),this.poolService=_,this.taskWrapper=o,this.ecpService=n,this.authStorageService=s,this.taskListService=c,this.modalService=d,this.pgCategoryService=f,this.dimlessPipe=p,this.urlBuilder=m,this.configurationService=T,this.actionLabels=h,this.selection=new Kt.r,this.executingTasks=[],this.tableStatus=new Te.E,this.cacheTiers=[],this.monAllowPoolDelete=!1,this.permissions=this.authStorageService.getPermissions(),this.tableActions=[{permission:"create",icon:v.P.add,routerLink:()=>this.urlBuilder.getCreate(),name:this.actionLabels.CREATE},{permission:"update",icon:v.P.edit,routerLink:()=>this.urlBuilder.getEdit(encodeURIComponent(this.selection.first().pool_name)),name:this.actionLabels.EDIT},{permission:"delete",icon:v.P.destroy,click:()=>this.deletePoolModal(),name:this.actionLabels.DELETE,disable:this.getDisableDesc.bind(this)}],this.permissions.configOpt.read&&this.configurationService.get("mon_allow_pool_delete").subscribe(R=>{if(g().has(R,"value")){const u=g().find(R.value,A=>"mon"===A.section)||{value:!1};this.monAllowPoolDelete="true"===u.value}})}ngOnInit(){const _=(o,n,s)=>g().get(n,o)>g().get(s,o)?1:-1;this.columns=[{prop:"pool_name",name:"Name",flexGrow:4,cellTransformation:L.e.executing},{prop:"data_protection",name:"Data Protection",cellTransformation:L.e.badge,customTemplateConfig:{class:"badge-background-gray"},flexGrow:1.3},{prop:"application_metadata",name:"Applications",cellTransformation:L.e.badge,customTemplateConfig:{class:"badge-background-primary"},flexGrow:1.5},{prop:"pg_status",name:"PG Status",flexGrow:1.2,cellClass:({row:o,column:n,value:s})=>this.getPgStatusCellClass(o,n,s)},{prop:"crush_rule",name:"Crush Ruleset",isHidden:!0,flexGrow:2},{name:"Usage",prop:"usage",cellTemplate:this.poolUsageTpl,flexGrow:1.2},{prop:"stats.rd_bytes.rates",name:"Read bytes",comparator:(o,n,s,c)=>_("stats.rd_bytes.latest",s,c),cellTransformation:L.e.sparkline,flexGrow:1.5},{prop:"stats.wr_bytes.rates",name:"Write bytes",comparator:(o,n,s,c)=>_("stats.wr_bytes.latest",s,c),cellTransformation:L.e.sparkline,flexGrow:1.5},{prop:"stats.rd.rate",name:"Read ops",flexGrow:1,pipe:this.dimlessPipe,cellTransformation:L.e.perSecond},{prop:"stats.wr.rate",name:"Write ops",flexGrow:1,pipe:this.dimlessPipe,cellTransformation:L.e.perSecond}],this.taskListService.init(()=>this.ecpService.list().pipe((0,Vt.zg)(o=>(this.ecProfileList=o,this.poolService.getList()))),void 0,o=>{this.pools=this.transformPoolsData(o),this.tableStatus=new Te.E},()=>{this.table.reset(),this.tableStatus=new Te.E(jt.T.ValueException)},o=>o.name.startsWith("pool/"),(o,n)=>n.metadata.pool_name===o.pool_name,{default:o=>new ei(o.pool_name)})}updateSelection(_){this.selection=_}deletePoolModal(){const _=this.selection.first().pool_name;this.modalService.show(Fe.M,{itemDescription:"Pool",itemNames:[_],submitActionObservable:()=>this.taskWrapper.wrapTaskAroundCall({task:new I.R(`pool/${M.MQ.DELETE}`,{pool_name:_}),call:this.poolService.delete(_)})})}getPgStatusCellClass(_,o,n){return{"text-right":!0,[`pg-${this.pgCategoryService.getTypeByStates(n)}`]:!0}}getErasureCodeProfile(_){let o="";return g().forEach(this.ecProfileList,n=>{n.name===_&&(o=`EC: ${n.k}+${n.m}`)}),o}transformPoolsData(_){const o=["bytes_used","max_avail","avail_raw","percent_used","rd_bytes","wr_bytes","rd","wr"],n={latest:0,rate:0,rates:[]};return g().forEach(_,s=>{s.pg_status=this.transformPgStatus(s.pg_status);const c={};g().forEach(o,d=>{c[d]=s.stats&&s.stats[d]?s.stats[d]:n}),s.stats=c,s.usage=c.percent_used.latest,!s.cdExecuting&&s.pg_num+s.pg_placement_num!==s.pg_num_target+s.pg_placement_num_target&&(s.cdExecuting="Updating"),["rd_bytes","wr_bytes"].forEach(d=>{s.stats[d].rates=s.stats[d].rates.map(f=>f[1])}),s.cdIsBinary=!0,"erasure"===s.type&&(s.data_protection=this.getErasureCodeProfile(s.erasure_code_profile)),"replicated"===s.type&&(s.data_protection=`replica: \xd7${s.size}`)}),_}transformPgStatus(_){const o=[];return g().forEach(_,(n,s)=>{o.push(`${n} ${s}`)}),o.join(", ")}getSelectionTiers(){if(void 0!==this.expandedRow){const _=this.expandedRow.tiers;this.cacheTiers=this.pools.filter(o=>_.includes(o.pool))}}getDisableDesc(){var _;return!(null===(_=this.selection)||void 0===_?void 0:_.hasSelection)||!this.monAllowPoolDelete&&"Pool deletion is disabled by the mon_allow_pool_delete configuration setting."}setExpandedRow(_){super.setExpandedRow(_),this.getSelectionTiers()}}return t.\u0275fac=function(_){return new(_||t)(e.Y36(ue.q),e.Y36(de.P),e.Y36(Me),e.Y36(Ze.j),e.Y36(qe.j),e.Y36(De.Z),e.Y36(Yt.j),e.Y36(Wt.n),e.Y36(Se.F),e.Y36(_i.e),e.Y36(M.p4))},t.\u0275cmp=e.Xpm({type:t,selectors:[["cd-pool-list"]],viewQuery:function(_,o){if(1&_&&(e.Gf(he.a,5),e.Gf(Pi,7),e.Gf(Ei,5)),2&_){let n;e.iGM(n=e.CRH())&&(o.table=n.first),e.iGM(n=e.CRH())&&(o.poolUsageTpl=n.first),e.iGM(n=e.CRH())&&(o.poolConfigurationSourceTpl=n.first)}},features:[e._Bn([qe.j,{provide:Se.F,useValue:new Se.F("pool")}]),e.qOj],decls:10,vars:2,consts:function(){let i,_;return i="Pools List",_="Overall Performance",[["ngbNav","",1,"nav-tabs"],["nav","ngbNav"],["ngbNavItem",""],["ngbNavLink",""],i,["ngbNavContent",""],["ngbNavItem","",4,"ngIf"],[3,"ngbNavOutlet"],["poolUsageTpl",""],["id","pool-list","selectionType","single",3,"data","columns","hasDetails","status","autoReload","fetchData","setExpandedRow","updateSelection"],["table",""],["id","pool-list-actions",1,"table-actions",3,"permission","selection","tableActions"],["cdTableDetail","","id","pool-list-details",3,"selection","permissions","cacheTiers"],_,["uid","z99hzWtmk","grafanaStyle","two",3,"grafanaPath"],["decimals","2",3,"total","used",4,"ngIf"],["decimals","2",3,"total","used"]]},template:function(_,o){if(1&_&&(e.TgZ(0,"ul",0,1),e.TgZ(2,"li",2),e.TgZ(3,"a",3),e.SDv(4,4),e.qZA(),e.YNc(5,gi,4,11,"ng-template",5),e.qZA(),e.YNc(6,mi,4,0,"li",6),e.qZA(),e._UZ(7,"div",7),e.YNc(8,Ci,1,1,"ng-template",null,8,e.W1O)),2&_){const n=e.MAs(1);e.xp6(6),e.Q6J("ngIf",o.permissions.grafana.read),e.xp6(1),e.Q6J("ngbNavOutlet",n)}},directives:[E.Pz,E.nv,E.Vx,E.uN,C.O5,E.tO,he.a,oi.K,ui,Ge.F,fi.O],styles:["cd-pool-list .pg-clean{color:#0b0} cd-pool-list .pg-working{color:#2b99a8} cd-pool-list .pg-warning{color:#ffc200} cd-pool-list .pg-unknown{color:#ef5c55}"]}),t})(),ze=(()=>{class t{}return t.\u0275fac=function(_){return new(_||t)},t.\u0275mod=e.oAB({type:t}),t.\u0275inj=e.cJS({imports:[[u_.t,C.ez,E.Oz,O_.m,Oe.Bz,a.UX,E.HK,d_.BlockModule]]}),t})();const Ti=[{path:"",component:Mi},{path:M.MQ.CREATE,component:Ue,data:{breadcrumbs:M.Qn.CREATE}},{path:`${M.MQ.EDIT}/:name`,component:Ue,data:{breadcrumbs:M.Qn.EDIT}}];let hi=(()=>{class t{}return t.\u0275fac=function(_){return new(_||t)},t.\u0275mod=e.oAB({type:t}),t.\u0275inj=e.cJS({imports:[[ze,Oe.Bz.forChild(Ti)]]}),t})()}}]); \ No newline at end of file diff --git a/src/pybind/mgr/dashboard/frontend/dist/en-US/281.0d0cd268ddc6a6760dd4.js b/src/pybind/mgr/dashboard/frontend/dist/en-US/281.0d0cd268ddc6a6760dd4.js new file mode 100644 index 000000000..84a069270 --- /dev/null +++ b/src/pybind/mgr/dashboard/frontend/dist/en-US/281.0d0cd268ddc6a6760dd4.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkceph_dashboard=self.webpackChunkceph_dashboard||[]).push([[281],{59281:(si,Oe,r)=>{r.r(Oe),r.d(Oe,{RgwModule:()=>e_,RoutedRgwModule:()=>ii});var f=r(12057),a=r(24751),w=r(6283),M=r(38549),Ue=r(37496),A=r(79512),N_=r(44466),O_=r(66265),U_=r(23815),u=r.n(U_),Y=r(35758),Me=r(95152),We=r(33394),Ze=r(64762),$e=r(58497),me=r(25917),he=r(19773),W_=r(96736),Z_=r(5304),ge=r(20523),$_=r(93523),e=r(74788);let O=class{constructor(o,_){this.http=o,this.rgwDaemonService=_,this.url="api/rgw/user"}list(){return this.enumerate().pipe((0,he.zg)(o=>o.length>0?(0,Y.D)(o.map(_=>this.get(_))):(0,me.of)([])))}enumerate(){return this.rgwDaemonService.request(o=>this.http.get(this.url,{params:o}))}enumerateEmail(){return this.rgwDaemonService.request(o=>this.http.get(`${this.url}/get_emails`,{params:o}))}get(o){return this.rgwDaemonService.request(_=>this.http.get(`${this.url}/${o}`,{params:_}))}getQuota(o){return this.rgwDaemonService.request(_=>this.http.get(`${this.url}/${o}/quota`,{params:_}))}create(o){return this.rgwDaemonService.request(_=>(u().keys(o).forEach(n=>{_=_.append(n,o[n])}),this.http.post(this.url,null,{params:_})))}update(o,_){return this.rgwDaemonService.request(n=>(u().keys(_).forEach(i=>{n=n.append(i,_[i])}),this.http.put(`${this.url}/${o}`,null,{params:n})))}updateQuota(o,_){return this.rgwDaemonService.request(n=>(u().keys(_).forEach(i=>{n=n.append(i,_[i])}),this.http.put(`${this.url}/${o}/quota`,null,{params:n})))}delete(o){return this.rgwDaemonService.request(_=>this.http.delete(`${this.url}/${o}`,{params:_}))}createSubuser(o,_){return this.rgwDaemonService.request(n=>(u().keys(_).forEach(i=>{n=n.append(i,_[i])}),this.http.post(`${this.url}/${o}/subuser`,null,{params:n})))}deleteSubuser(o,_){return this.rgwDaemonService.request(n=>this.http.delete(`${this.url}/${o}/subuser/${_}`,{params:n}))}addCapability(o,_,n){return this.rgwDaemonService.request(i=>(i=(i=i.append("type",_)).append("perm",n),this.http.post(`${this.url}/${o}/capability`,null,{params:i})))}deleteCapability(o,_,n){return this.rgwDaemonService.request(i=>(i=(i=i.append("type",_)).append("perm",n),this.http.delete(`${this.url}/${o}/capability`,{params:i})))}addS3Key(o,_){return this.rgwDaemonService.request(n=>(n=n.append("key_type","s3"),u().keys(_).forEach(i=>{n=n.append(i,_[i])}),this.http.post(`${this.url}/${o}/key`,null,{params:n})))}deleteS3Key(o,_){return this.rgwDaemonService.request(n=>(n=(n=n.append("key_type","s3")).append("access_key",_),this.http.delete(`${this.url}/${o}/key`,{params:n})))}exists(o){return this.get(o).pipe((0,W_.h)(!0),(0,Z_.K)(_=>(u().isFunction(_.preventDefault)&&_.preventDefault(),(0,me.of)(!1))))}emailExists(o){return o=decodeURIComponent(o),this.enumerateEmail().pipe((0,he.zg)(_=>{const n=u().indexOf(_,o);return(0,me.of)(-1!==n)}))}};O.\u0275fac=function(o){return new(o||O)(e.LFG($e.eN),e.LFG(ge.b))},O.\u0275prov=e.Yz7({token:O,factory:O.\u0275fac,providedIn:"root"}),O=(0,Ze.gn)([$_.o,(0,Ze.w6)("design:paramtypes",[$e.eN,ge.b])],O);var D=r(65862),Ae=r(18001),Ie=r(93614),m=r(77205),ve=r(97161),k=(()=>{return(t=k||(k={})).ENABLED="Enabled",t.DISABLED="Disabled",k;var t})(),B=(()=>{return(t=B||(B={})).ENABLED="Enabled",t.SUSPENDED="Suspended",B;var t})(),J=r(62862),Fe=r(63622),V=r(41582),H=r(56310),q=r(87925),X=r(94276),j=r(82945),h_=r(18372),ee=r(30839),K=r(10545);function I_(t,o){1&t&&(e.TgZ(0,"div",9),e.TgZ(1,"label",35),e.SDv(2,36),e.qZA(),e.TgZ(3,"div",12),e._UZ(4,"input",37),e.qZA(),e.qZA())}function v_(t,o){1&t&&(e.TgZ(0,"span",38),e.SDv(1,39),e.qZA())}function F_(t,o){1&t&&(e.TgZ(0,"span",38),e.SDv(1,40),e.qZA())}function L_(t,o){1&t&&(e.TgZ(0,"span",38),e.SDv(1,41),e.qZA())}function D_(t,o){1&t&&(e.TgZ(0,"span",38),e.SDv(1,42),e.qZA())}function x_(t,o){1&t&&(e.TgZ(0,"span",38),e.SDv(1,43),e.qZA())}function y_(t,o){1&t&&(e.TgZ(0,"span",38),e.SDv(1,44),e.qZA())}function q_(t,o){1&t&&(e.TgZ(0,"span",38),e.SDv(1,45),e.qZA())}function w_(t,o){1&t&&(e.TgZ(0,"span",38),e.SDv(1,46),e.qZA())}function k_(t,o){1&t&&(e.TgZ(0,"option",47),e.SDv(1,48),e.qZA()),2&t&&e.Q6J("ngValue",null)}function B_(t,o){1&t&&(e.TgZ(0,"option",47),e.SDv(1,49),e.qZA()),2&t&&e.Q6J("ngValue",null)}function H_(t,o){if(1&t&&(e.TgZ(0,"option",50),e._uU(1),e.qZA()),2&t){const _=o.$implicit;e.Q6J("value",_),e.xp6(1),e.Oqu(_)}}function X_(t,o){1&t&&(e.TgZ(0,"span",38),e.SDv(1,51),e.qZA())}function K_(t,o){1&t&&(e.TgZ(0,"option",47),e.SDv(1,53),e.qZA()),2&t&&e.Q6J("ngValue",null)}function z_(t,o){1&t&&(e.TgZ(0,"option",47),e.SDv(1,54),e.qZA()),2&t&&e.Q6J("ngValue",null)}function Q_(t,o){if(1&t&&(e.TgZ(0,"option",50),e._uU(1),e.qZA()),2&t){const _=o.$implicit;e.Q6J("value",_.name),e.xp6(1),e.Oqu(_.description)}}function Y_(t,o){1&t&&(e.TgZ(0,"span",38),e.SDv(1,55),e.qZA())}function J_(t,o){if(1&t&&(e.TgZ(0,"select",52),e.YNc(1,K_,2,1,"option",18),e.YNc(2,z_,2,1,"option",18),e.YNc(3,Q_,2,2,"option",19),e.qZA(),e.YNc(4,Y_,2,0,"span",14)),2&t){e.oxw();const _=e.MAs(2),n=e.oxw();e.xp6(1),e.Q6J("ngIf",null===n.placementTargets),e.xp6(1),e.Q6J("ngIf",null!==n.placementTargets),e.xp6(1),e.Q6J("ngForOf",n.placementTargets),e.xp6(1),e.Q6J("ngIf",n.bucketForm.showError("placement-target",_,"required"))}}function V_(t,o){1&t&&(e.ynx(0),e._UZ(1,"input",56),e.BQk())}function j_(t,o){if(1&t){const _=e.EpF();e.TgZ(0,"fieldset"),e.TgZ(1,"legend",25),e.SDv(2,57),e.qZA(),e.TgZ(3,"div",9),e.TgZ(4,"div",27),e.TgZ(5,"div",28),e.TgZ(6,"input",58),e.NdJ("change",function(){return e.CHM(_),e.oxw(2).setMfaDeleteValidators()}),e.qZA(),e.TgZ(7,"label",59),e.SDv(8,60),e.qZA(),e.TgZ(9,"cd-helper"),e.TgZ(10,"span"),e.SDv(11,61),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA()}}function et(t,o){1&t&&(e.TgZ(0,"span",38),e.SDv(1,70),e.qZA())}function _t(t,o){if(1&t&&(e.TgZ(0,"div",9),e.TgZ(1,"label",67),e.SDv(2,68),e.qZA(),e.TgZ(3,"div",12),e._UZ(4,"input",69),e.YNc(5,et,2,0,"span",14),e.qZA(),e.qZA()),2&t){e.oxw(2);const _=e.MAs(2),n=e.oxw();e.xp6(5),e.Q6J("ngIf",n.bucketForm.showError("mfa-token-serial",_,"required"))}}function tt(t,o){1&t&&(e.TgZ(0,"span",38),e.SDv(1,74),e.qZA())}function nt(t,o){if(1&t&&(e.TgZ(0,"div",9),e.TgZ(1,"label",71),e.SDv(2,72),e.qZA(),e.TgZ(3,"div",12),e._UZ(4,"input",73),e.YNc(5,tt,2,0,"span",14),e.qZA(),e.qZA()),2&t){e.oxw(2);const _=e.MAs(2),n=e.oxw();e.xp6(5),e.Q6J("ngIf",n.bucketForm.showError("mfa-token-pin",_,"required"))}}function ot(t,o){if(1&t){const _=e.EpF();e.TgZ(0,"fieldset"),e.TgZ(1,"legend",25),e.SDv(2,62),e.qZA(),e.TgZ(3,"div",9),e.TgZ(4,"div",27),e.TgZ(5,"div",28),e.TgZ(6,"input",63),e.NdJ("change",function(){return e.CHM(_),e.oxw(2).setMfaDeleteValidators()}),e.qZA(),e.TgZ(7,"label",64),e.SDv(8,65),e.qZA(),e.TgZ(9,"cd-helper"),e.TgZ(10,"span"),e.SDv(11,66),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.YNc(12,_t,6,1,"div",8),e.YNc(13,nt,6,1,"div",8),e.qZA()}if(2&t){const _=e.oxw(2);e.xp6(12),e.Q6J("ngIf",_.areMfaCredentialsRequired()),e.xp6(1),e.Q6J("ngIf",_.areMfaCredentialsRequired())}}function it(t,o){1&t&&(e.TgZ(0,"div",9),e.TgZ(1,"label",75),e.SDv(2,76),e.qZA(),e.TgZ(3,"div",12),e.TgZ(4,"select",77),e.TgZ(5,"option",78),e.SDv(6,79),e.qZA(),e.TgZ(7,"option",80),e.SDv(8,81),e.qZA(),e.qZA(),e.qZA(),e.qZA())}function st(t,o){1&t&&(e.TgZ(0,"span",38),e.SDv(1,86),e.qZA())}function at(t,o){1&t&&(e.TgZ(0,"span",38),e.SDv(1,87),e.qZA())}function rt(t,o){if(1&t&&(e.TgZ(0,"div",9),e.TgZ(1,"label",82),e.ynx(2),e.SDv(3,83),e.BQk(),e.TgZ(4,"cd-helper"),e.SDv(5,84),e.qZA(),e.qZA(),e.TgZ(6,"div",12),e._UZ(7,"input",85),e.YNc(8,st,2,0,"span",14),e.YNc(9,at,2,0,"span",14),e.qZA(),e.qZA()),2&t){e.oxw();const _=e.MAs(2),n=e.oxw();e.xp6(8),e.Q6J("ngIf",n.bucketForm.showError("lock_retention_period_days",_,"pattern")),e.xp6(1),e.Q6J("ngIf",n.bucketForm.showError("lock_retention_period_days",_,"lockDays"))}}const Le=function(t){return{required:t}};function lt(t,o){if(1&t){const _=e.EpF();e.TgZ(0,"div",1),e.TgZ(1,"form",2,3),e.TgZ(3,"div",4),e.TgZ(4,"div",5),e.SDv(5,6),e.ALo(6,"titlecase"),e.ALo(7,"upperFirst"),e.qZA(),e.TgZ(8,"div",7),e.YNc(9,I_,5,0,"div",8),e.TgZ(10,"div",9),e.TgZ(11,"label",10),e.SDv(12,11),e.qZA(),e.TgZ(13,"div",12),e._UZ(14,"input",13),e.YNc(15,v_,2,0,"span",14),e.YNc(16,F_,2,0,"span",14),e.YNc(17,L_,2,0,"span",14),e.YNc(18,D_,2,0,"span",14),e.YNc(19,x_,2,0,"span",14),e.YNc(20,y_,2,0,"span",14),e.YNc(21,q_,2,0,"span",14),e.YNc(22,w_,2,0,"span",14),e.qZA(),e.qZA(),e.TgZ(23,"div",9),e.TgZ(24,"label",15),e.SDv(25,16),e.qZA(),e.TgZ(26,"div",12),e.TgZ(27,"select",17),e.YNc(28,k_,2,1,"option",18),e.YNc(29,B_,2,1,"option",18),e.YNc(30,H_,2,2,"option",19),e.qZA(),e.YNc(31,X_,2,0,"span",14),e.qZA(),e.qZA(),e.TgZ(32,"div",9),e.TgZ(33,"label",20),e.SDv(34,21),e.qZA(),e.TgZ(35,"div",12),e.YNc(36,J_,5,4,"ng-template",null,22,e.W1O),e.YNc(38,V_,2,0,"ng-container",23),e.qZA(),e.qZA(),e.YNc(39,j_,12,0,"fieldset",24),e.YNc(40,ot,14,2,"fieldset",24),e.TgZ(41,"fieldset"),e.TgZ(42,"legend",25),e.SDv(43,26),e.qZA(),e.TgZ(44,"div",9),e.TgZ(45,"div",27),e.TgZ(46,"div",28),e._UZ(47,"input",29),e.TgZ(48,"label",30),e.SDv(49,31),e.qZA(),e.TgZ(50,"cd-helper"),e.TgZ(51,"span"),e.SDv(52,32),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.YNc(53,it,9,0,"div",8),e.YNc(54,rt,10,2,"div",8),e.qZA(),e.qZA(),e.TgZ(55,"div",33),e.TgZ(56,"cd-form-button-panel",34),e.NdJ("submitActionEvent",function(){return e.CHM(_),e.oxw().submit()}),e.ALo(57,"titlecase"),e.ALo(58,"upperFirst"),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA()}if(2&t){const _=e.MAs(2),n=e.MAs(37),i=e.oxw();e.xp6(1),e.Q6J("formGroup",i.bucketForm),e.xp6(6),e.pQV(e.lcZ(6,29,i.action))(e.lcZ(7,31,i.resource)),e.QtT(5),e.xp6(2),e.Q6J("ngIf",i.editing),e.xp6(2),e.Q6J("ngClass",e.VKq(37,Le,!i.editing)),e.xp6(3),e.Q6J("readonly",i.editing)("autofocus",!i.editing),e.xp6(1),e.Q6J("ngIf",i.bucketForm.showError("bid",_,"required")),e.xp6(1),e.Q6J("ngIf",i.bucketForm.showError("bid",_,"bucketNameInvalid")),e.xp6(1),e.Q6J("ngIf",i.bucketForm.showError("bid",_,"bucketNameNotAllowed")),e.xp6(1),e.Q6J("ngIf",i.bucketForm.showError("bid",_,"containsUpperCase")),e.xp6(1),e.Q6J("ngIf",i.bucketForm.showError("bid",_,"lowerCaseOrNumber")),e.xp6(1),e.Q6J("ngIf",i.bucketForm.showError("bid",_,"ipAddress")),e.xp6(1),e.Q6J("ngIf",i.bucketForm.showError("bid",_,"onlyLowerCaseAndNumbers")),e.xp6(1),e.Q6J("ngIf",i.bucketForm.showError("bid",_,"shouldBeInRange")),e.xp6(5),e.Q6J("autofocus",i.editing),e.xp6(1),e.Q6J("ngIf",null===i.owners),e.xp6(1),e.Q6J("ngIf",null!==i.owners),e.xp6(1),e.Q6J("ngForOf",i.owners),e.xp6(1),e.Q6J("ngIf",i.bucketForm.showError("owner",_,"required")),e.xp6(2),e.Q6J("ngClass",e.VKq(39,Le,!i.editing)),e.xp6(5),e.Q6J("ngIf",i.editing)("ngIfElse",n),e.xp6(1),e.Q6J("ngIf",i.editing),e.xp6(1),e.Q6J("ngIf",i.editing),e.xp6(13),e.Q6J("ngIf",i.bucketForm.getValue("lock_enabled")),e.xp6(1),e.Q6J("ngIf",i.bucketForm.getValue("lock_enabled")),e.xp6(2),e.Q6J("form",i.bucketForm)("submitText",e.lcZ(57,33,i.action)+" "+e.lcZ(58,35,i.resource))}}let De=(()=>{class t extends Ie.E{constructor(_,n,i,s,c,d,E,g){super(),this.route=_,this.router=n,this.formBuilder=i,this.rgwBucketService=s,this.rgwSiteService=c,this.rgwUserService=d,this.notificationService=E,this.actionLabels=g,this.editing=!1,this.owners=null,this.placementTargets=[],this.isVersioningAlreadyEnabled=!1,this.isMfaDeleteAlreadyEnabled=!1,this.icons=D.P,this.editing=this.router.url.startsWith(`/rgw/bucket/${A.MQ.EDIT}`),this.action=this.editing?this.actionLabels.EDIT:this.actionLabels.CREATE,this.resource="bucket",this.createForm()}get isVersioningEnabled(){return this.bucketForm.getValue("versioning")}get isMfaDeleteEnabled(){return this.bucketForm.getValue("mfa-delete")}createForm(){const _=this,n=m.h.custom("lockDays",()=>{if(!_.bucketForm||!u().get(_.bucketForm.getRawValue(),"lock_enabled"))return!1;const i=Number(_.bucketForm.getValue("lock_retention_period_days"));return!Number.isInteger(i)||0===i});this.bucketForm=this.formBuilder.group({id:[null],bid:[null,[a.kI.required],this.editing?[]:[m.h.bucketName(),m.h.bucketExistence(!1,this.rgwBucketService)]],owner:[null,[a.kI.required]],"placement-target":[null,this.editing?[]:[a.kI.required]],versioning:[null],"mfa-delete":[null],"mfa-token-serial":[""],"mfa-token-pin":[""],lock_enabled:[{value:!1,disabled:this.editing}],lock_mode:["COMPLIANCE"],lock_retention_period_days:[0,[m.h.number(!1),n]]})}ngOnInit(){const _={owners:this.rgwUserService.enumerate()};this.editing||(_.getPlacementTargets=this.rgwSiteService.get("placement-targets")),this.route.params.subscribe(n=>{if(n.hasOwnProperty("bid")){const i=decodeURIComponent(n.bid);_.getBid=this.rgwBucketService.get(i)}(0,Y.D)(_).subscribe(i=>{if(this.owners=i.owners.sort(),i.getPlacementTargets){const s=i.getPlacementTargets;this.zonegroup=s.zonegroup,u().forEach(s.placement_targets,c=>{c.description=`${c.name} (${"pool"}: ${c.data_pool})`,this.placementTargets.push(c)}),1===this.placementTargets.length&&this.bucketForm.get("placement-target").setValue(this.placementTargets[0].name)}if(i.getBid){const s=i.getBid,c=u().clone(this.bucketForm.getRawValue());let d=u().pick(s,u().keys(c));d.lock_retention_period_days=this.rgwBucketService.getLockDays(s),d["placement-target"]=s.placement_rule,d.versioning=s.versioning===B.ENABLED,d["mfa-delete"]=s.mfa_delete===k.ENABLED,d=u().merge(c,d),this.bucketForm.setValue(d),this.editing&&(this.isVersioningAlreadyEnabled=this.isVersioningEnabled,this.isMfaDeleteAlreadyEnabled=this.isMfaDeleteEnabled,this.setMfaDeleteValidators(),d.lock_enabled&&this.bucketForm.controls.versioning.disable())}this.loadingReady()})})}goToListView(){this.router.navigate(["/rgw/bucket"])}submit(){if(this.bucketForm.pristine)return void this.goToListView();const _=this.bucketForm.value;if(this.editing){const n=this.getVersioningStatus(),i=this.getMfaDeleteStatus();this.rgwBucketService.update(_.bid,_.id,_.owner,n,i,_["mfa-token-serial"],_["mfa-token-pin"],_.lock_mode,_.lock_retention_period_days).subscribe(()=>{this.notificationService.show(Ae.k.success,"Updated Object Gateway bucket '" + _.bid + "'."),this.goToListView()},()=>{this.bucketForm.setErrors({cdSubmitButton:!0})})}else this.rgwBucketService.create(_.bid,_.owner,this.zonegroup,_["placement-target"],_.lock_enabled,_.lock_mode,_.lock_retention_period_days).subscribe(()=>{this.notificationService.show(Ae.k.success,"Created Object Gateway bucket '" + _.bid + "'"),this.goToListView()},()=>{this.bucketForm.setErrors({cdSubmitButton:!0})})}areMfaCredentialsRequired(){return this.isMfaDeleteEnabled!==this.isMfaDeleteAlreadyEnabled||this.isMfaDeleteAlreadyEnabled&&this.isVersioningEnabled!==this.isVersioningAlreadyEnabled}setMfaDeleteValidators(){const _=this.bucketForm.get("mfa-token-serial"),n=this.bucketForm.get("mfa-token-pin");this.areMfaCredentialsRequired()?(_.setValidators(a.kI.required),n.setValidators(a.kI.required)):(_.setValidators(null),n.setValidators(null)),_.updateValueAndValidity(),n.updateValueAndValidity()}getVersioningStatus(){return this.isVersioningEnabled?B.ENABLED:B.SUSPENDED}getMfaDeleteStatus(){return this.isMfaDeleteEnabled?k.ENABLED:k.DISABLED}}return t.\u0275fac=function(_){return new(_||t)(e.Y36(w.gz),e.Y36(w.F0),e.Y36(J.O),e.Y36(Me.o),e.Y36(We.I),e.Y36(O),e.Y36(ve.g),e.Y36(A.p4))},t.\u0275cmp=e.Xpm({type:t,selectors:[["cd-rgw-bucket-form"]],features:[e.qOj],decls:1,vars:1,consts:function(){let o,_,n,i,s,c,d,E,g,C,b,P,G,N,p,U,W,Z,$,h,I,v,F,T,x,y,S,_e,te,ne,oe,ie,se,ae,re,le,ce,de,ue,Re;return o="" + "\ufffd0\ufffd" + " " + "\ufffd1\ufffd" + "",_="Name",n="Name...",i="Owner",s="Placement target",c="Locking",d="Enabled",E="Enables locking for the objects in the bucket. Locking can only be enabled while creating a bucket.",g="Id",C="This field is required.",b="Bucket names can only contain lowercase letters, numbers, periods and hyphens.",P="The chosen name is already in use.",G="Bucket names must not contain uppercase characters or underscores.",N="Each label must start and end with a lowercase letter or a number.",p="Bucket names cannot be formatted as IP address.",U="Bucket labels cannot be empty and can only contain lowercase letters, numbers and hyphens.",W="Bucket names must be 3 to 63 characters long.",Z="Loading...",$="-- Select a user --",h="This field is required.",I="Loading...",v="-- Select a placement target --",F="This field is required.",T="Versioning",x="Enabled",y="Enables versioning for the objects in the bucket.",S="Multi-Factor Authentication",_e="Delete enabled",te="Enables MFA (multi-factor authentication) Delete, which requires additional authentication for changing the bucket versioning state.",ne="Token Serial Number",oe="This field is required.",ie="Token PIN",se="This field is required.",ae="Mode",re="Compliance",le="Governance",ce="Days",de="The number of days that you want to specify for the default retention period that will be applied to new objects placed in this bucket.",ue="The entered value must be a positive integer.",Re="Retention Days must be a positive integer.",[["class","cd-col-form",4,"cdFormLoading"],[1,"cd-col-form"],["name","bucketForm","novalidate","",3,"formGroup"],["frm","ngForm"],[1,"card"],[1,"card-header"],o,[1,"card-body"],["class","form-group row",4,"ngIf"],[1,"form-group","row"],["for","bid",1,"cd-col-form-label",3,"ngClass"],_,[1,"cd-col-form-input"],["id","bid","name","bid","type","text","placeholder",n,"formControlName","bid",1,"form-control",3,"readonly","autofocus"],["class","invalid-feedback",4,"ngIf"],["for","owner",1,"cd-col-form-label","required"],i,["id","owner","name","owner","formControlName","owner",1,"form-control",3,"autofocus"],[3,"ngValue",4,"ngIf"],[3,"value",4,"ngFor","ngForOf"],["for","placement-target",1,"cd-col-form-label",3,"ngClass"],s,["placementTargetSelect",""],[4,"ngIf","ngIfElse"],[4,"ngIf"],[1,"cd-header"],c,[1,"cd-col-form-offset"],[1,"custom-control","custom-checkbox"],["id","lock_enabled","formControlName","lock_enabled","type","checkbox",1,"custom-control-input"],["for","lock_enabled",1,"custom-control-label"],d,E,[1,"card-footer"],["wrappingClass","text-right",3,"form","submitText","submitActionEvent"],["for","id",1,"cd-col-form-label"],g,["id","id","name","id","type","text","formControlName","id","readonly","",1,"form-control"],[1,"invalid-feedback"],C,b,P,G,N,p,U,W,[3,"ngValue"],Z,$,[3,"value"],h,["id","placement-target","name","placement-target","formControlName","placement-target",1,"form-control"],I,v,F,["id","placement-target","name","placement-target","formControlName","placement-target","type","text","readonly","",1,"form-control"],T,["type","checkbox","id","versioning","name","versioning","formControlName","versioning",1,"custom-control-input",3,"change"],["for","versioning",1,"custom-control-label"],x,y,S,["type","checkbox","id","mfa-delete","name","mfa-delete","formControlName","mfa-delete",1,"custom-control-input",3,"change"],["for","mfa-delete",1,"custom-control-label"],_e,te,["for","mfa-token-serial",1,"cd-col-form-label"],ne,["type","text","id","mfa-token-serial","name","mfa-token-serial","formControlName","mfa-token-serial",1,"form-control"],oe,["for","mfa-token-pin",1,"cd-col-form-label"],ie,["type","text","id","mfa-token-pin","name","mfa-token-pin","formControlName","mfa-token-pin",1,"form-control"],se,["for","lock_mode",1,"cd-col-form-label"],ae,["formControlName","lock_mode","name","lock_mode","id","lock_mode",1,"form-control"],["value","COMPLIANCE"],re,["value","GOVERNANCE"],le,["for","lock_retention_period_days",1,"cd-col-form-label"],ce,de,["type","number","id","lock_retention_period_days","formControlName","lock_retention_period_days","min","0",1,"form-control"],ue,Re]},template:function(_,n){1&_&&e.YNc(0,lt,59,41,"div",0),2&_&&e.Q6J("cdFormLoading",n.loading)},directives:[Fe.y,a._Y,a.JL,V.V,a.sg,f.O5,H.P,f.mk,q.o,a.Fj,X.b,a.JJ,a.u,j.U,a.EJ,f.sg,a.Wl,h_.S,ee.p,a.YN,a.Kr,a.wV,a.qQ],pipes:[f.rS,K.m],styles:[""]}),t})();var xe=r(18891),be=r(68136),ye=r(30982),z=r(35905),Pe=r(68774),qe=r(47557),we=r(66369),Q=r(51847),Ee=r(74937),Te=r(63285),ke=r(94928),ct=r(96102),Be=r(68962);function dt(t,o){1&t&&(e.TgZ(0,"td"),e.SDv(1,24),e.qZA())}function ut(t,o){if(1&t&&(e.TgZ(0,"td"),e._uU(1),e.ALo(2,"dimless"),e.qZA()),2&t){const _=e.oxw(3);e.xp6(1),e.hij(" ",e.lcZ(2,1,_.selection.bucket_quota.max_size)," ")}}function Rt(t,o){1&t&&(e.TgZ(0,"td"),e.SDv(1,25),e.qZA())}function gt(t,o){if(1&t&&(e.TgZ(0,"td"),e._uU(1),e.qZA()),2&t){const _=e.oxw(3);e.xp6(1),e.hij(" ",_.selection.bucket_quota.max_objects," ")}}function Et(t,o){if(1&t&&(e.TgZ(0,"div"),e.TgZ(1,"legend"),e.SDv(2,20),e.qZA(),e.TgZ(3,"table",1),e.TgZ(4,"tbody"),e.TgZ(5,"tr"),e.TgZ(6,"td",2),e.SDv(7,21),e.qZA(),e.TgZ(8,"td",4),e._uU(9),e.ALo(10,"booleanText"),e.qZA(),e.qZA(),e.TgZ(11,"tr"),e.TgZ(12,"td",5),e.SDv(13,22),e.qZA(),e.YNc(14,dt,2,0,"td",0),e.YNc(15,ut,3,3,"td",0),e.qZA(),e.TgZ(16,"tr"),e.TgZ(17,"td",5),e.SDv(18,23),e.qZA(),e.YNc(19,Rt,2,0,"td",0),e.YNc(20,gt,2,1,"td",0),e.qZA(),e.qZA(),e.qZA(),e.qZA()),2&t){const _=e.oxw(2);e.xp6(9),e.Oqu(e.lcZ(10,5,_.selection.bucket_quota.enabled)),e.xp6(5),e.Q6J("ngIf",_.selection.bucket_quota.max_size<=-1),e.xp6(1),e.Q6J("ngIf",_.selection.bucket_quota.max_size>-1),e.xp6(4),e.Q6J("ngIf",_.selection.bucket_quota.max_objects<=-1),e.xp6(1),e.Q6J("ngIf",_.selection.bucket_quota.max_objects>-1)}}function Tt(t,o){if(1&t&&(e.ynx(0),e.TgZ(1,"tr"),e.TgZ(2,"td",5),e.SDv(3,26),e.qZA(),e.TgZ(4,"td"),e._uU(5),e.qZA(),e.qZA(),e.TgZ(6,"tr"),e.TgZ(7,"td",5),e.SDv(8,27),e.qZA(),e.TgZ(9,"td"),e._uU(10),e.qZA(),e.qZA(),e.BQk()),2&t){const _=e.oxw(2);e.xp6(5),e.Oqu(_.selection.lock_mode),e.xp6(5),e.Oqu(_.selection.lock_retention_period_days)}}function St(t,o){if(1&t&&(e.ynx(0),e.TgZ(1,"table",1),e.TgZ(2,"tbody"),e.TgZ(3,"tr"),e.TgZ(4,"td",2),e.SDv(5,3),e.qZA(),e.TgZ(6,"td",4),e._uU(7),e.qZA(),e.qZA(),e.TgZ(8,"tr"),e.TgZ(9,"td",5),e.SDv(10,6),e.qZA(),e.TgZ(11,"td"),e._uU(12),e.qZA(),e.qZA(),e.TgZ(13,"tr"),e.TgZ(14,"td",5),e.SDv(15,7),e.qZA(),e.TgZ(16,"td"),e._uU(17),e.qZA(),e.qZA(),e.TgZ(18,"tr"),e.TgZ(19,"td",5),e.SDv(20,8),e.qZA(),e.TgZ(21,"td"),e._uU(22),e.qZA(),e.qZA(),e.TgZ(23,"tr"),e.TgZ(24,"td",5),e.SDv(25,9),e.qZA(),e.TgZ(26,"td"),e._uU(27),e.qZA(),e.qZA(),e.TgZ(28,"tr"),e.TgZ(29,"td",5),e.SDv(30,10),e.qZA(),e.TgZ(31,"td"),e._uU(32),e.qZA(),e.qZA(),e.TgZ(33,"tr"),e.TgZ(34,"td",5),e.SDv(35,11),e.qZA(),e.TgZ(36,"td"),e._uU(37),e.qZA(),e.qZA(),e.TgZ(38,"tr"),e.TgZ(39,"td",5),e.SDv(40,12),e.qZA(),e.TgZ(41,"td"),e._uU(42),e.qZA(),e.qZA(),e.TgZ(43,"tr"),e.TgZ(44,"td",5),e.SDv(45,13),e.qZA(),e.TgZ(46,"td"),e._uU(47),e.qZA(),e.qZA(),e.TgZ(48,"tr"),e.TgZ(49,"td",5),e.SDv(50,14),e.qZA(),e.TgZ(51,"td"),e._uU(52),e.ALo(53,"cdDate"),e.qZA(),e.qZA(),e.TgZ(54,"tr"),e.TgZ(55,"td",5),e.SDv(56,15),e.qZA(),e.TgZ(57,"td"),e._uU(58),e.qZA(),e.qZA(),e.TgZ(59,"tr"),e.TgZ(60,"td",5),e.SDv(61,16),e.qZA(),e.TgZ(62,"td"),e._uU(63),e.qZA(),e.qZA(),e.TgZ(64,"tr"),e.TgZ(65,"td",5),e.SDv(66,17),e.qZA(),e.TgZ(67,"td"),e._uU(68),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.YNc(69,Et,21,7,"div",0),e.TgZ(70,"legend"),e.SDv(71,18),e.qZA(),e.TgZ(72,"table",1),e.TgZ(73,"tbody"),e.TgZ(74,"tr"),e.TgZ(75,"td",2),e.SDv(76,19),e.qZA(),e.TgZ(77,"td",4),e._uU(78),e.ALo(79,"booleanText"),e.qZA(),e.qZA(),e.YNc(80,Tt,11,2,"ng-container",0),e.qZA(),e.qZA(),e.BQk()),2&t){const _=e.oxw();e.xp6(7),e.Oqu(_.selection.bid),e.xp6(5),e.Oqu(_.selection.id),e.xp6(5),e.Oqu(_.selection.owner),e.xp6(5),e.Oqu(_.selection.index_type),e.xp6(5),e.Oqu(_.selection.placement_rule),e.xp6(5),e.Oqu(_.selection.marker),e.xp6(5),e.Oqu(_.selection.max_marker),e.xp6(5),e.Oqu(_.selection.ver),e.xp6(5),e.Oqu(_.selection.master_ver),e.xp6(5),e.Oqu(e.lcZ(53,16,_.selection.mtime)),e.xp6(6),e.Oqu(_.selection.zonegroup),e.xp6(5),e.Oqu(_.selection.versioning),e.xp6(5),e.Oqu(_.selection.mfa_delete),e.xp6(1),e.Q6J("ngIf",_.selection.bucket_quota),e.xp6(9),e.Oqu(e.lcZ(79,18,_.selection.lock_enabled)),e.xp6(2),e.Q6J("ngIf",_.selection.lock_enabled)}}let ft=(()=>{class t{constructor(_){this.rgwBucketService=_}ngOnChanges(){this.selection&&this.rgwBucketService.get(this.selection.bid).subscribe(_=>{_.lock_retention_period_days=this.rgwBucketService.getLockDays(_),this.selection=_})}}return t.\u0275fac=function(_){return new(_||t)(e.Y36(Me.o))},t.\u0275cmp=e.Xpm({type:t,selectors:[["cd-rgw-bucket-details"]],inputs:{selection:"selection"},features:[e.TTD],decls:1,vars:1,consts:function(){let o,_,n,i,s,c,d,E,g,C,b,P,G,N,p,U,W,Z,$,h,I,v,F;return o="Name",_="ID",n="Owner",i="Index type",s="Placement rule",c="Marker",d="Maximum marker",E="Version",g="Master version",C="Modification time",b="Zonegroup",P="Versioning",G="MFA Delete",N="Locking",p="Enabled",U="Bucket quota",W="Enabled",Z="Maximum size",$="Maximum objects",h="Unlimited",I="Unlimited",v="Mode",F="Days",[[4,"ngIf"],[1,"table","table-striped","table-bordered"],[1,"bold","w-25"],o,[1,"w-75"],[1,"bold"],_,n,i,s,c,d,E,g,C,b,P,G,N,p,U,W,Z,$,h,I,v,F]},template:function(_,n){1&_&&e.YNc(0,St,81,20,"ng-container",0),2&_&&e.Q6J("ngIf",n.selection)},directives:[f.O5],pipes:[ct.N,Be.T,we.n],styles:["table[_ngcontent-%COMP%]{table-layout:fixed}table[_ngcontent-%COMP%] td[_ngcontent-%COMP%]{word-wrap:break-word}"]}),t})();var He=r(60251);const Ct=["bucketSizeTpl"],pt=["bucketObjectTpl"];function Mt(t,o){if(1&t&&e._UZ(0,"cd-usage-bar",8),2&t){const _=e.oxw().row;e.Q6J("total",_.bucket_quota.max_size)("used",_.bucket_size)}}function mt(t,o){1&t&&e.SDv(0,9)}function At(t,o){if(1&t&&(e.YNc(0,Mt,1,2,"cd-usage-bar",6),e.YNc(1,mt,1,0,"ng-template",null,7,e.W1O)),2&t){const _=o.row,n=e.MAs(2);e.Q6J("ngIf",_.bucket_quota.max_size>0&&_.bucket_quota.enabled)("ngIfElse",n)}}function bt(t,o){if(1&t&&e._UZ(0,"cd-usage-bar",12),2&t){const _=e.oxw().row;e.Q6J("total",_.bucket_quota.max_objects)("used",_.num_objects)("isBinary",!1)}}function Pt(t,o){1&t&&e.SDv(0,13)}function Gt(t,o){if(1&t&&(e.YNc(0,bt,1,3,"cd-usage-bar",10),e.YNc(1,Pt,1,0,"ng-template",null,11,e.W1O)),2&t){const _=o.row,n=e.MAs(2);e.Q6J("ngIf",_.bucket_quota.max_objects>0&&_.bucket_quota.enabled)("ngIfElse",n)}}let Ot=(()=>{class t extends be.o{constructor(_,n,i,s,c,d,E,g){super(g),this.authStorageService=_,this.dimlessBinaryPipe=n,this.dimlessPipe=i,this.rgwBucketService=s,this.modalService=c,this.urlBuilder=d,this.actionLabels=E,this.ngZone=g,this.columns=[],this.buckets=[],this.selection=new Pe.r}ngOnInit(){this.permission=this.authStorageService.getPermissions().rgw,this.columns=[{name:"Name",prop:"bid",flexGrow:2},{name:"Owner",prop:"owner",flexGrow:2.5},{name:"Used Capacity",prop:"bucket_size",flexGrow:.6,pipe:this.dimlessBinaryPipe},{name:"Capacity Limit %",prop:"size_usage",cellTemplate:this.bucketSizeTpl,flexGrow:.8},{name:"Objects",prop:"num_objects",flexGrow:.6,pipe:this.dimlessPipe},{name:"Object Limit %",prop:"object_usage",cellTemplate:this.bucketObjectTpl,flexGrow:.8}];const _=()=>this.selection.first()&&`${encodeURIComponent(this.selection.first().bid)}`;this.tableActions=[{permission:"create",icon:D.P.add,routerLink:()=>this.urlBuilder.getCreate(),name:this.actionLabels.CREATE,canBePrimary:c=>!c.hasSelection},{permission:"update",icon:D.P.edit,routerLink:()=>this.urlBuilder.getEdit(_()),name:this.actionLabels.EDIT},{permission:"delete",icon:D.P.destroy,click:()=>this.deleteAction(),disable:()=>!this.selection.hasSelection,name:this.actionLabels.DELETE,canBePrimary:c=>c.hasMultiSelection}],this.setTableRefreshTimeout()}transformBucketData(){u().forEach(this.buckets,_=>{const n=_.bucket_quota.max_size,i=_.bucket_quota.max_objects;_.bucket_size=0,_.num_objects=0,u().isEmpty(_.usage)||(_.bucket_size=_.usage["rgw.main"].size_actual,_.num_objects=_.usage["rgw.main"].num_objects),_.size_usage=n>0?_.bucket_size/n:void 0,_.object_usage=i>0?_.num_objects/i:void 0})}getBucketList(_){this.setTableRefreshTimeout(),this.rgwBucketService.list(!0).subscribe(n=>{this.buckets=n,this.transformBucketData()},()=>{_.error()})}updateSelection(_){this.selection=_}deleteAction(){this.modalService.show(ye.M,{itemDescription:this.selection.hasSingleSelection?"bucket":"buckets",itemNames:this.selection.selected.map(_=>_.bid),submitActionObservable:()=>new xe.y(_=>{(0,Y.D)(this.selection.selected.map(n=>this.rgwBucketService.delete(n.bid))).subscribe({error:n=>{_.error(n),this.table.refreshBtn()},complete:()=>{_.complete(),this.table.refreshBtn()}})})})}}return t.\u0275fac=function(_){return new(_||t)(e.Y36(Ee.j),e.Y36(qe.$),e.Y36(we.n),e.Y36(Me.o),e.Y36(Te.Z),e.Y36(Q.F),e.Y36(A.p4),e.Y36(e.R0b))},t.\u0275cmp=e.Xpm({type:t,selectors:[["cd-rgw-bucket-list"]],viewQuery:function(_,n){if(1&_&&(e.Gf(z.a,7),e.Gf(Ct,7),e.Gf(pt,7)),2&_){let i;e.iGM(i=e.CRH())&&(n.table=i.first),e.iGM(i=e.CRH())&&(n.bucketSizeTpl=i.first),e.iGM(i=e.CRH())&&(n.bucketObjectTpl=i.first)}},features:[e._Bn([{provide:Q.F,useValue:new Q.F("rgw/bucket")}]),e.qOj],decls:8,vars:9,consts:function(){let o,_;return o="No Limit",_="No Limit",[["columnMode","flex","selectionType","multiClick","identifier","bid",3,"autoReload","data","columns","hasDetails","status","setExpandedRow","updateSelection","fetchData"],["table",""],[1,"table-actions",3,"permission","selection","tableActions"],["cdTableDetail","",3,"selection"],["bucketSizeTpl",""],["bucketObjectTpl",""],[3,"total","used",4,"ngIf","ngIfElse"],["noSizeQuota",""],[3,"total","used"],o,[3,"total","used","isBinary",4,"ngIf","ngIfElse"],["noObjectQuota",""],[3,"total","used","isBinary"],_]},template:function(_,n){1&_&&(e.TgZ(0,"cd-table",0,1),e.NdJ("setExpandedRow",function(s){return n.setExpandedRow(s)})("updateSelection",function(s){return n.updateSelection(s)})("fetchData",function(s){return n.getBucketList(s)}),e._UZ(2,"cd-table-actions",2),e._UZ(3,"cd-rgw-bucket-details",3),e.qZA(),e.YNc(4,At,3,2,"ng-template",null,4,e.W1O),e.YNc(6,Gt,3,2,"ng-template",null,5,e.W1O)),2&_&&(e.Q6J("autoReload",!1)("data",n.buckets)("columns",n.columns)("hasDetails",!0)("status",n.tableStatus),e.xp6(2),e.Q6J("permission",n.permission)("selection",n.selection)("tableActions",n.tableActions),e.xp6(1),e.Q6J("selection",n.expandedRow))},directives:[z.a,ke.K,ft,f.O5,He.O],styles:[""]}),t})();var Ut=r(58111),Xe=r(59376),Wt=r(61350),Zt=r(98056),Ke=r(76317);function $t(t,o){if(1&t){const _=e.EpF();e.TgZ(0,"cd-table-key-value",11),e.NdJ("fetchData",function(){return e.CHM(_),e.oxw(2).getMetaData()}),e.qZA()}if(2&t){const _=e.oxw(2);e.Q6J("data",_.metadata)}}function ht(t,o){if(1&t&&e._UZ(0,"cd-table-performance-counter",12),2&t){const _=e.oxw(2);e.Q6J("serviceId",_.serviceMapId)}}function It(t,o){if(1&t&&e._UZ(0,"cd-grafana",15),2&t){const _=e.oxw(3);e.Q6J("grafanaPath","rgw-instance-detail?var-rgw_servers=rgw."+_.serviceId)}}function vt(t,o){1&t&&(e.TgZ(0,"li",13),e.TgZ(1,"a",4),e.SDv(2,14),e.qZA(),e.YNc(3,It,1,1,"ng-template",6),e.qZA())}function Ft(t,o){if(1&t&&(e.ynx(0),e.TgZ(1,"ul",1,2),e.TgZ(3,"li",3),e.TgZ(4,"a",4),e.SDv(5,5),e.qZA(),e.YNc(6,$t,1,1,"ng-template",6),e.qZA(),e.TgZ(7,"li",7),e.TgZ(8,"a",4),e.SDv(9,8),e.qZA(),e.YNc(10,ht,1,1,"ng-template",6),e.qZA(),e.YNc(11,vt,4,0,"li",9),e.qZA(),e._UZ(12,"div",10),e.BQk()),2&t){const _=e.MAs(2),n=e.oxw();e.xp6(11),e.Q6J("ngIf",n.grafanaPermission.read),e.xp6(1),e.Q6J("ngbNavOutlet",_)}}let Lt=(()=>{class t{constructor(_,n){this.rgwDaemonService=_,this.authStorageService=n,this.serviceId="",this.serviceMapId="",this.grafanaPermission=this.authStorageService.getPermissions().grafana}ngOnChanges(){this.selection&&(this.serviceId=this.selection.id,this.serviceMapId=this.selection.service_map_id)}getMetaData(){u().isEmpty(this.serviceId)||this.rgwDaemonService.get(this.serviceId).subscribe(_=>{this.metadata=_.rgw_metadata})}}return t.\u0275fac=function(_){return new(_||t)(e.Y36(ge.b),e.Y36(Ee.j))},t.\u0275cmp=e.Xpm({type:t,selectors:[["cd-rgw-daemon-details"]],inputs:{selection:"selection"},features:[e.TTD],decls:1,vars:1,consts:function(){let o,_,n;return o="Details",_="Performance Counters",n="Performance Details",[[4,"ngIf"],["ngbNav","","cdStatefulTab","rgw-daemon-details",1,"nav-tabs"],["nav","ngbNav"],["ngbNavItem","details"],["ngbNavLink",""],o,["ngbNavContent",""],["ngbNavItem","performance-counters"],_,["ngbNavItem","performance-details",4,"ngIf"],[3,"ngbNavOutlet"],[3,"data","fetchData"],["serviceType","rgw",3,"serviceId"],["ngbNavItem","performance-details"],n,["uid","x5ARzZtmk","grafanaStyle","one",3,"grafanaPath"]]},template:function(_,n){1&_&&e.YNc(0,Ft,13,2,"ng-container",0),2&_&&e.Q6J("ngIf",n.selection)},directives:[f.O5,M.Pz,Xe.m,M.nv,M.Vx,M.uN,M.tO,Wt.b,Zt.p,Ke.F],styles:[""]}),t})();function Dt(t,o){if(1&t){const _=e.EpF();e.TgZ(0,"cd-table",8),e.NdJ("setExpandedRow",function(i){return e.CHM(_),e.oxw().setExpandedRow(i)})("fetchData",function(i){return e.CHM(_),e.oxw().getDaemonList(i)}),e._UZ(1,"cd-rgw-daemon-details",9),e.qZA()}if(2&t){const _=e.oxw();e.Q6J("data",_.daemons)("columns",_.columns)("hasDetails",!0),e.xp6(1),e.Q6J("selection",_.expandedRow)}}function xt(t,o){1&t&&e._UZ(0,"cd-grafana",11),2&t&&e.Q6J("grafanaPath","rgw-overview?")}function yt(t,o){1&t&&(e.TgZ(0,"li",2),e.TgZ(1,"a",3),e.SDv(2,10),e.qZA(),e.YNc(3,xt,1,1,"ng-template",5),e.qZA())}function qt(t,o){1&t&&e._UZ(0,"cd-grafana",13),2&t&&e.Q6J("grafanaPath","radosgw-sync-overview?")}function wt(t,o){1&t&&(e.TgZ(0,"li",2),e.TgZ(1,"a",3),e.SDv(2,12),e.qZA(),e.YNc(3,qt,1,1,"ng-template",5),e.qZA())}let kt=(()=>{class t extends be.o{constructor(_,n,i,s){super(),this.rgwDaemonService=_,this.authStorageService=n,this.cephShortVersionPipe=i,this.rgwSiteService=s,this.columns=[],this.daemons=[],this.updateDaemons=c=>{this.daemons=c}}ngOnInit(){this.grafanaPermission=this.authStorageService.getPermissions().grafana,this.columns=[{name:"ID",prop:"id",flexGrow:2},{name:"Hostname",prop:"server_hostname",flexGrow:2},{name:"Zone",prop:"zone_name",flexGrow:2},{name:"Zone Group",prop:"zonegroup_name",flexGrow:2},{name:"Realm",prop:"realm_name",flexGrow:2},{name:"Version",prop:"version",flexGrow:1,pipe:this.cephShortVersionPipe}],this.rgwSiteService.get("realms").subscribe(_=>this.isMultiSite=_.length>0)}getDaemonList(_){this.rgwDaemonService.list().subscribe(this.updateDaemons,()=>{_.error()})}}return t.\u0275fac=function(_){return new(_||t)(e.Y36(ge.b),e.Y36(Ee.j),e.Y36(Ut.F),e.Y36(We.I))},t.\u0275cmp=e.Xpm({type:t,selectors:[["cd-rgw-daemon-list"]],features:[e.qOj],decls:9,vars:3,consts:function(){let o,_,n;return o="Daemons List",_="Overall Performance",n="Sync Performance",[["ngbNav","",1,"nav-tabs"],["nav","ngbNav"],["ngbNavItem",""],["ngbNavLink",""],o,["ngbNavContent",""],["ngbNavItem","",4,"ngIf"],[3,"ngbNavOutlet"],["columnMode","flex",3,"data","columns","hasDetails","setExpandedRow","fetchData"],["cdTableDetail","",3,"selection"],_,["uid","WAkugZpiz","grafanaStyle","two",3,"grafanaPath"],n,["uid","rgw-sync-overview","grafanaStyle","two",3,"grafanaPath"]]},template:function(_,n){if(1&_&&(e.TgZ(0,"ul",0,1),e.TgZ(2,"li",2),e.TgZ(3,"a",3),e.SDv(4,4),e.qZA(),e.YNc(5,Dt,2,4,"ng-template",5),e.qZA(),e.YNc(6,yt,4,0,"li",6),e.YNc(7,wt,4,0,"li",6),e.qZA(),e._UZ(8,"div",7)),2&_){const i=e.MAs(1);e.xp6(6),e.Q6J("ngIf",n.grafanaPermission.read),e.xp6(1),e.Q6J("ngIf",n.grafanaPermission.read&&n.isMultiSite),e.xp6(1),e.Q6J("ngbNavOutlet",i)}},directives:[M.Pz,M.nv,M.Vx,M.uN,f.O5,M.tO,z.a,Lt,Ke.F],styles:[""]}),t})();var Bt=r(58071),Ge=r(28211),Se=(()=>{return(t=Se||(Se={})).USERS="users",t.BUCKETS="buckets",t.METADATA="metadata",t.USAGE="usage",t.ZONE="zone",Se;var t})();let ze=(()=>{class t{static getAll(){return Object.values(t.capabilities)}}return t.capabilities=Se,t})();var fe=r(60312);function Ht(t,o){1&t&&e._UZ(0,"input",22),2&t&&e.Q6J("readonly",!0)}function Xt(t,o){1&t&&(e.TgZ(0,"option",17),e.SDv(1,25),e.qZA()),2&t&&e.Q6J("ngValue",null)}function Kt(t,o){if(1&t&&(e.TgZ(0,"option",26),e._uU(1),e.qZA()),2&t){const _=o.$implicit;e.Q6J("value",_),e.xp6(1),e.Oqu(_)}}function zt(t,o){if(1&t&&(e.TgZ(0,"select",23),e.YNc(1,Xt,2,1,"option",24),e.YNc(2,Kt,2,2,"option",19),e.qZA()),2&t){const _=e.oxw();e.xp6(1),e.Q6J("ngIf",null!==_.types),e.xp6(1),e.Q6J("ngForOf",_.types)}}function Qt(t,o){1&t&&(e.TgZ(0,"span",27),e.SDv(1,28),e.qZA())}function Yt(t,o){if(1&t&&(e.TgZ(0,"option",26),e._uU(1),e.qZA()),2&t){const _=o.$implicit;e.Q6J("value",_),e.xp6(1),e.hij(" ",_," ")}}function Jt(t,o){1&t&&(e.TgZ(0,"span",27),e.SDv(1,29),e.qZA())}const Vt=function(t){return{required:t}},jt=function(){return["read","write","*"]};let en=(()=>{class t{constructor(_,n,i){this.formBuilder=_,this.activeModal=n,this.actionLabels=i,this.submitAction=new e.vpe,this.editing=!0,this.types=[],this.resource="capability",this.createForm()}createForm(){this.formGroup=this.formBuilder.group({type:[null,[a.kI.required]],perm:[null,[a.kI.required]]})}setEditing(_=!0){this.editing=_,this.action=this.editing?this.actionLabels.EDIT:this.actionLabels.ADD}setValues(_,n){this.formGroup.setValue({type:_,perm:n})}setCapabilities(_){const n=[];_.forEach(i=>{n.push(i.type)}),this.types=[],ze.getAll().forEach(i=>{-1===u().indexOf(n,i)&&this.types.push(i)})}onSubmit(){this.submitAction.emit(this.formGroup.value),this.activeModal.close()}}return t.\u0275fac=function(_){return new(_||t)(e.Y36(J.O),e.Y36(M.Kz),e.Y36(A.p4))},t.\u0275cmp=e.Xpm({type:t,selectors:[["cd-rgw-user-capability-modal"]],outputs:{submitAction:"submitAction"},decls:29,vars:24,consts:function(){let o,_,n,i,s,c,d;return o="" + "\ufffd0\ufffd" + " " + "\ufffd1\ufffd" + "",_="Type",n="Permission",i="-- Select a permission --",s="-- Select a type --",c="This field is required.",d="This field is required.",[[3,"modalRef"],[1,"modal-title"],o,[1,"modal-content"],["novalidate","",3,"formGroup"],["frm","ngForm"],[1,"modal-body"],[1,"form-group","row"],["for","type",1,"cd-col-form-label",3,"ngClass"],_,[1,"cd-col-form-input"],["id","type","class","form-control","type","text","formControlName","type",3,"readonly",4,"ngIf"],["id","type","class","form-control","formControlName","type","autofocus","",4,"ngIf"],["class","invalid-feedback",4,"ngIf"],["for","perm",1,"cd-col-form-label","required"],n,["id","perm","formControlName","perm",1,"form-control"],[3,"ngValue"],i,[3,"value",4,"ngFor","ngForOf"],[1,"modal-footer"],[3,"form","submitText","submitActionEvent"],["id","type","type","text","formControlName","type",1,"form-control",3,"readonly"],["id","type","formControlName","type","autofocus","",1,"form-control"],[3,"ngValue",4,"ngIf"],s,[3,"value"],[1,"invalid-feedback"],c,d]},template:function(_,n){if(1&_&&(e.TgZ(0,"cd-modal",0),e.ynx(1,1),e.SDv(2,2),e.ALo(3,"titlecase"),e.ALo(4,"upperFirst"),e.BQk(),e.ynx(5,3),e.TgZ(6,"form",4,5),e.TgZ(8,"div",6),e.TgZ(9,"div",7),e.TgZ(10,"label",8),e.SDv(11,9),e.qZA(),e.TgZ(12,"div",10),e.YNc(13,Ht,1,1,"input",11),e.YNc(14,zt,3,2,"select",12),e.YNc(15,Qt,2,0,"span",13),e.qZA(),e.qZA(),e.TgZ(16,"div",7),e.TgZ(17,"label",14),e.SDv(18,15),e.qZA(),e.TgZ(19,"div",10),e.TgZ(20,"select",16),e.TgZ(21,"option",17),e.SDv(22,18),e.qZA(),e.YNc(23,Yt,2,2,"option",19),e.qZA(),e.YNc(24,Jt,2,0,"span",13),e.qZA(),e.qZA(),e.qZA(),e.TgZ(25,"div",20),e.TgZ(26,"cd-form-button-panel",21),e.NdJ("submitActionEvent",function(){return n.onSubmit()}),e.ALo(27,"titlecase"),e.ALo(28,"upperFirst"),e.qZA(),e.qZA(),e.qZA(),e.BQk(),e.qZA()),2&_){const i=e.MAs(7);e.Q6J("modalRef",n.activeModal),e.xp6(4),e.pQV(e.lcZ(3,13,n.action))(e.lcZ(4,15,n.resource)),e.QtT(2),e.xp6(2),e.Q6J("formGroup",n.formGroup),e.xp6(4),e.Q6J("ngClass",e.VKq(21,Vt,!n.editing)),e.xp6(3),e.Q6J("ngIf",n.editing),e.xp6(1),e.Q6J("ngIf",!n.editing),e.xp6(1),e.Q6J("ngIf",n.formGroup.showError("type",i,"required")),e.xp6(6),e.Q6J("ngValue",null),e.xp6(2),e.Q6J("ngForOf",e.DdM(23,jt)),e.xp6(1),e.Q6J("ngIf",n.formGroup.showError("perm",i,"required")),e.xp6(2),e.Q6J("form",n.formGroup)("submitText",e.lcZ(27,17,n.action)+" "+e.lcZ(28,19,n.resource))}},directives:[fe.z,a._Y,a.JL,V.V,a.sg,H.P,f.mk,f.O5,q.o,a.EJ,X.b,a.JJ,a.u,a.YN,a.Kr,f.sg,ee.p,a.Fj,j.U],pipes:[f.rS,K.m],styles:[""]}),t})();var Ce=r(4416),pe=r(58039);function _n(t,o){1&t&&e._UZ(0,"input",17),2&t&&e.Q6J("readonly",!0)}function tn(t,o){1&t&&(e.TgZ(0,"option",21),e.SDv(1,22),e.qZA()),2&t&&e.Q6J("ngValue",null)}function nn(t,o){if(1&t&&(e.TgZ(0,"option",23),e._uU(1),e.qZA()),2&t){const _=o.$implicit;e.Q6J("value",_),e.xp6(1),e.Oqu(_)}}function on(t,o){if(1&t&&(e.TgZ(0,"select",18),e.YNc(1,tn,2,1,"option",19),e.YNc(2,nn,2,2,"option",20),e.qZA()),2&t){const _=e.oxw();e.xp6(1),e.Q6J("ngIf",null!==_.userCandidates),e.xp6(1),e.Q6J("ngForOf",_.userCandidates)}}function sn(t,o){1&t&&(e.TgZ(0,"span",24),e.SDv(1,25),e.qZA())}function an(t,o){1&t&&(e.TgZ(0,"div",7),e.TgZ(1,"div",26),e.TgZ(2,"div",27),e._UZ(3,"input",28),e.TgZ(4,"label",29),e.SDv(5,30),e.qZA(),e.qZA(),e.qZA(),e.qZA())}function rn(t,o){1&t&&(e.TgZ(0,"span",24),e.SDv(1,38),e.qZA())}const Ne=function(t){return{required:t}};function ln(t,o){if(1&t&&(e.TgZ(0,"div",7),e.TgZ(1,"label",31),e.SDv(2,32),e.qZA(),e.TgZ(3,"div",10),e.TgZ(4,"div",33),e._UZ(5,"input",34),e.TgZ(6,"span",35),e._UZ(7,"button",36),e._UZ(8,"cd-copy-2-clipboard-button",37),e.qZA(),e.qZA(),e.YNc(9,rn,2,0,"span",13),e.qZA(),e.qZA()),2&t){const _=e.oxw(),n=e.MAs(7);e.xp6(1),e.Q6J("ngClass",e.VKq(3,Ne,!_.viewing)),e.xp6(4),e.Q6J("readonly",_.viewing),e.xp6(4),e.Q6J("ngIf",_.formGroup.showError("access_key",n,"required"))}}function cn(t,o){1&t&&(e.TgZ(0,"span",24),e.SDv(1,44),e.qZA())}function dn(t,o){if(1&t&&(e.TgZ(0,"div",7),e.TgZ(1,"label",39),e.SDv(2,40),e.qZA(),e.TgZ(3,"div",10),e.TgZ(4,"div",33),e._UZ(5,"input",41),e.TgZ(6,"span",35),e._UZ(7,"button",42),e._UZ(8,"cd-copy-2-clipboard-button",43),e.qZA(),e.qZA(),e.YNc(9,cn,2,0,"span",13),e.qZA(),e.qZA()),2&t){const _=e.oxw(),n=e.MAs(7);e.xp6(1),e.Q6J("ngClass",e.VKq(3,Ne,!_.viewing)),e.xp6(4),e.Q6J("readonly",_.viewing),e.xp6(4),e.Q6J("ngIf",_.formGroup.showError("secret_key",n,"required"))}}let Qe=(()=>{class t{constructor(_,n,i){this.formBuilder=_,this.activeModal=n,this.actionLabels=i,this.submitAction=new e.vpe,this.viewing=!0,this.userCandidates=[],this.resource="S3 Key",this.createForm()}createForm(){this.formGroup=this.formBuilder.group({user:[null,[a.kI.required]],generate_key:[!0],access_key:[null,[m.h.requiredIf({generate_key:!1})]],secret_key:[null,[m.h.requiredIf({generate_key:!1})]]})}setViewing(_=!0){this.viewing=_,this.action=this.viewing?this.actionLabels.SHOW:this.actionLabels.CREATE}setValues(_,n,i){this.formGroup.setValue({user:_,generate_key:u().isEmpty(n),access_key:n,secret_key:i})}setUserCandidates(_){this.userCandidates=_}onSubmit(){this.submitAction.emit(this.formGroup.value),this.activeModal.close()}}return t.\u0275fac=function(_){return new(_||t)(e.Y36(J.O),e.Y36(M.Kz),e.Y36(A.p4))},t.\u0275cmp=e.Xpm({type:t,selectors:[["cd-rgw-user-s3-key-modal"]],outputs:{submitAction:"submitAction"},decls:23,vars:24,consts:function(){let o,_,n,i,s,c,d,E,g;return o="" + "\ufffd0\ufffd" + " " + "\ufffd1\ufffd" + "",_="Username",n="-- Select a username --",i="This field is required.",s="Auto-generate key",c="Access key",d="This field is required.",E="Secret key",g="This field is required.",[[3,"modalRef"],[1,"modal-title"],o,[1,"modal-content"],["novalidate","",3,"formGroup"],["frm","ngForm"],[1,"modal-body"],[1,"form-group","row"],["for","user",1,"cd-col-form-label",3,"ngClass"],_,[1,"cd-col-form-input"],["id","user","class","form-control","type","text","formControlName","user",3,"readonly",4,"ngIf"],["id","user","class","form-control","formControlName","user","autofocus","",4,"ngIf"],["class","invalid-feedback",4,"ngIf"],["class","form-group row",4,"ngIf"],[1,"modal-footer"],[3,"form","submitText","showSubmit","submitActionEvent"],["id","user","type","text","formControlName","user",1,"form-control",3,"readonly"],["id","user","formControlName","user","autofocus","",1,"form-control"],[3,"ngValue",4,"ngIf"],[3,"value",4,"ngFor","ngForOf"],[3,"ngValue"],n,[3,"value"],[1,"invalid-feedback"],i,[1,"cd-col-form-offset"],[1,"custom-control","custom-checkbox"],["id","generate_key","type","checkbox","formControlName","generate_key",1,"custom-control-input"],["for","generate_key",1,"custom-control-label"],s,["for","access_key",1,"cd-col-form-label",3,"ngClass"],c,[1,"input-group"],["id","access_key","type","password","formControlName","access_key",1,"form-control",3,"readonly"],[1,"input-group-append"],["type","button","cdPasswordButton","access_key",1,"btn","btn-light"],["source","access_key"],d,["for","secret_key",1,"cd-col-form-label",3,"ngClass"],E,["id","secret_key","type","password","formControlName","secret_key",1,"form-control",3,"readonly"],["type","button","cdPasswordButton","secret_key",1,"btn","btn-light"],["source","secret_key"],g]},template:function(_,n){if(1&_&&(e.TgZ(0,"cd-modal",0),e.ynx(1,1),e.SDv(2,2),e.ALo(3,"titlecase"),e.ALo(4,"upperFirst"),e.BQk(),e.ynx(5,3),e.TgZ(6,"form",4,5),e.TgZ(8,"div",6),e.TgZ(9,"div",7),e.TgZ(10,"label",8),e.SDv(11,9),e.qZA(),e.TgZ(12,"div",10),e.YNc(13,_n,1,1,"input",11),e.YNc(14,on,3,2,"select",12),e.YNc(15,sn,2,0,"span",13),e.qZA(),e.qZA(),e.YNc(16,an,6,0,"div",14),e.YNc(17,ln,10,5,"div",14),e.YNc(18,dn,10,5,"div",14),e.qZA(),e.TgZ(19,"div",15),e.TgZ(20,"cd-form-button-panel",16),e.NdJ("submitActionEvent",function(){return n.onSubmit()}),e.ALo(21,"titlecase"),e.ALo(22,"upperFirst"),e.qZA(),e.qZA(),e.qZA(),e.BQk(),e.qZA()),2&_){const i=e.MAs(7);e.Q6J("modalRef",n.activeModal),e.xp6(4),e.pQV(e.lcZ(3,14,n.action))(e.lcZ(4,16,n.resource)),e.QtT(2),e.xp6(2),e.Q6J("formGroup",n.formGroup),e.xp6(4),e.Q6J("ngClass",e.VKq(22,Ne,!n.viewing)),e.xp6(3),e.Q6J("ngIf",n.viewing),e.xp6(1),e.Q6J("ngIf",!n.viewing),e.xp6(1),e.Q6J("ngIf",n.formGroup.showError("user",i,"required")),e.xp6(1),e.Q6J("ngIf",!n.viewing),e.xp6(1),e.Q6J("ngIf",!n.formGroup.getValue("generate_key")),e.xp6(1),e.Q6J("ngIf",!n.formGroup.getValue("generate_key")),e.xp6(2),e.Q6J("form",n.formGroup)("submitText",e.lcZ(21,18,n.action)+" "+e.lcZ(22,20,n.resource))("showSubmit",!n.viewing)}},directives:[fe.z,a._Y,a.JL,V.V,a.sg,H.P,f.mk,f.O5,ee.p,q.o,a.Fj,X.b,a.JJ,a.u,a.EJ,j.U,f.sg,a.YN,a.Kr,a.Wl,Ce.C,pe.s],pipes:[f.rS,K.m],styles:[""]}),t})();class un{}function Rn(t,o){1&t&&(e.TgZ(0,"span",29),e.SDv(1,30),e.qZA())}function gn(t,o){1&t&&(e.TgZ(0,"span",29),e.SDv(1,31),e.qZA())}function En(t,o){if(1&t&&(e.TgZ(0,"option",32),e._uU(1),e.qZA()),2&t){const _=o.$implicit;e.Q6J("value",_),e.xp6(1),e.hij(" ",_," ")}}function Tn(t,o){1&t&&(e.TgZ(0,"span",29),e.SDv(1,33),e.qZA())}function Sn(t,o){1&t&&(e.TgZ(0,"span",29),e.SDv(1,48),e.qZA())}function fn(t,o){if(1&t&&(e.TgZ(0,"div",7),e.TgZ(1,"label",41),e.SDv(2,42),e.qZA(),e.TgZ(3,"div",10),e.TgZ(4,"div",43),e._UZ(5,"input",44),e.TgZ(6,"span",45),e._UZ(7,"button",46),e._UZ(8,"cd-copy-2-clipboard-button",47),e.qZA(),e.qZA(),e.YNc(9,Sn,2,0,"span",15),e.qZA(),e.qZA()),2&t){const _=e.oxw(2),n=e.MAs(7);e.xp6(9),e.Q6J("ngIf",_.formGroup.showError("secret_key",n,"required"))}}function Cn(t,o){if(1&t&&(e.TgZ(0,"fieldset"),e.TgZ(1,"legend"),e.SDv(2,34),e.qZA(),e.TgZ(3,"div",7),e.TgZ(4,"div",35),e.TgZ(5,"div",36),e._UZ(6,"input",37),e.TgZ(7,"label",38),e.SDv(8,39),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.YNc(9,fn,10,1,"div",40),e.qZA()),2&t){const _=e.oxw();e.xp6(9),e.Q6J("ngIf",!_.editing&&!_.formGroup.getValue("generate_secret"))}}const pn=function(t){return{required:t}},Mn=function(){return["read","write"]};let mn=(()=>{class t{constructor(_,n,i){this.formBuilder=_,this.bsModalRef=n,this.actionLabels=i,this.submitAction=new e.vpe,this.editing=!0,this.subusers=[],this.resource="Subuser",this.createForm()}createForm(){this.formGroup=this.formBuilder.group({uid:[null],subuid:[null,[a.kI.required,this.subuserValidator()]],perm:[null,[a.kI.required]],generate_secret:[!0],secret_key:[null,[m.h.requiredIf({generate_secret:!1})]]})}subuserValidator(){const _=this;return n=>_.editing||(0,m.P)(n.value)?null:_.subusers.some(s=>u().isEqual(_.getSubuserName(s.id),n.value))?{subuserIdExists:!0}:null}getSubuserName(_){if(u().isEmpty(_))return _;const n=_.match(/([^:]+)(:(.+))?/);return u().isUndefined(n[3])?n[1]:n[3]}setEditing(_=!0){this.editing=_,this.action=this.editing?this.actionLabels.EDIT:this.actionLabels.CREATE}setValues(_,n="",i=""){this.formGroup.setValue({uid:_,subuid:this.getSubuserName(n),perm:i,generate_secret:!0,secret_key:null})}setSubusers(_){this.subusers=_}onSubmit(){const _=this.formGroup.value,n=new un;n.id=`${_.uid}:${_.subuid}`,n.permissions=_.perm,n.generate_secret=_.generate_secret,n.secret_key=_.secret_key,this.submitAction.emit(n),this.bsModalRef.close()}}return t.\u0275fac=function(_){return new(_||t)(e.Y36(J.O),e.Y36(M.Kz),e.Y36(A.p4))},t.\u0275cmp=e.Xpm({type:t,selectors:[["cd-rgw-user-subuser-modal"]],outputs:{submitAction:"submitAction"},decls:39,vars:26,consts:function(){let o,_,n,i,s,c,d,E,g,C,b,P,G,N;return o="" + "\ufffd0\ufffd" + " " + "\ufffd1\ufffd" + "",_="Username",n="Subuser",i="Permission",s="-- Select a permission --",c="read, write",d="full",E="This field is required.",g="The chosen subuser ID is already in use.",C="This field is required.",b="Swift key",P="Auto-generate secret",G="Secret key",N="This field is required.",[[3,"modalRef"],[1,"modal-title"],o,[1,"modal-content"],["novalidate","",3,"formGroup"],["frm","ngForm"],[1,"modal-body"],[1,"form-group","row"],["for","uid",1,"cd-col-form-label"],_,[1,"cd-col-form-input"],["id","uid","type","text","formControlName","uid",1,"form-control",3,"readonly"],["for","subuid",1,"cd-col-form-label",3,"ngClass"],n,["id","subuid","type","text","formControlName","subuid","autofocus","",1,"form-control",3,"readonly"],["class","invalid-feedback",4,"ngIf"],["for","perm",1,"cd-col-form-label","required"],i,["id","perm","formControlName","perm",1,"form-control"],[3,"ngValue"],s,[3,"value",4,"ngFor","ngForOf"],["value","read-write"],c,["value","full-control"],d,[4,"ngIf"],[1,"modal-footer"],[3,"form","submitText","submitActionEvent"],[1,"invalid-feedback"],E,g,[3,"value"],C,b,[1,"cd-col-form-offset"],[1,"custom-control","custom-checkbox"],["id","generate_secret","type","checkbox","formControlName","generate_secret",1,"custom-control-input"],["for","generate_secret",1,"custom-control-label"],P,["class","form-group row",4,"ngIf"],["for","secret_key",1,"cd-col-form-label","required"],G,[1,"input-group"],["id","secret_key","type","password","formControlName","secret_key",1,"form-control"],[1,"input-group-append"],["type","button","cdPasswordButton","secret_key",1,"btn","btn-light"],["source","secret_key"],N]},template:function(_,n){if(1&_&&(e.TgZ(0,"cd-modal",0),e.ynx(1,1),e.SDv(2,2),e.ALo(3,"titlecase"),e.ALo(4,"upperFirst"),e.BQk(),e.ynx(5,3),e.TgZ(6,"form",4,5),e.TgZ(8,"div",6),e.TgZ(9,"div",7),e.TgZ(10,"label",8),e.SDv(11,9),e.qZA(),e.TgZ(12,"div",10),e._UZ(13,"input",11),e.qZA(),e.qZA(),e.TgZ(14,"div",7),e.TgZ(15,"label",12),e.SDv(16,13),e.qZA(),e.TgZ(17,"div",10),e._UZ(18,"input",14),e.YNc(19,Rn,2,0,"span",15),e.YNc(20,gn,2,0,"span",15),e.qZA(),e.qZA(),e.TgZ(21,"div",7),e.TgZ(22,"label",16),e.SDv(23,17),e.qZA(),e.TgZ(24,"div",10),e.TgZ(25,"select",18),e.TgZ(26,"option",19),e.SDv(27,20),e.qZA(),e.YNc(28,En,2,2,"option",21),e.TgZ(29,"option",22),e.SDv(30,23),e.qZA(),e.TgZ(31,"option",24),e.SDv(32,25),e.qZA(),e.qZA(),e.YNc(33,Tn,2,0,"span",15),e.qZA(),e.qZA(),e.YNc(34,Cn,10,1,"fieldset",26),e.qZA(),e.TgZ(35,"div",27),e.TgZ(36,"cd-form-button-panel",28),e.NdJ("submitActionEvent",function(){return n.onSubmit()}),e.ALo(37,"titlecase"),e.ALo(38,"upperFirst"),e.qZA(),e.qZA(),e.qZA(),e.BQk(),e.qZA()),2&_){const i=e.MAs(7);e.Q6J("modalRef",n.bsModalRef),e.xp6(4),e.pQV(e.lcZ(3,15,n.action))(e.lcZ(4,17,n.resource)),e.QtT(2),e.xp6(2),e.Q6J("formGroup",n.formGroup),e.xp6(7),e.Q6J("readonly",!0),e.xp6(2),e.Q6J("ngClass",e.VKq(23,pn,!n.editing)),e.xp6(3),e.Q6J("readonly",n.editing),e.xp6(1),e.Q6J("ngIf",n.formGroup.showError("subuid",i,"required")),e.xp6(1),e.Q6J("ngIf",n.formGroup.showError("subuid",i,"subuserIdExists")),e.xp6(6),e.Q6J("ngValue",null),e.xp6(2),e.Q6J("ngForOf",e.DdM(25,Mn)),e.xp6(5),e.Q6J("ngIf",n.formGroup.showError("perm",i,"required")),e.xp6(1),e.Q6J("ngIf",!n.editing),e.xp6(2),e.Q6J("form",n.formGroup)("submitText",e.lcZ(37,19,n.action)+" "+e.lcZ(38,21,n.resource))}},directives:[fe.z,a._Y,a.JL,V.V,a.sg,H.P,q.o,a.Fj,X.b,a.JJ,a.u,f.mk,j.U,f.O5,a.EJ,a.YN,a.Kr,f.sg,ee.p,a.Wl,Ce.C,pe.s],pipes:[f.rS,K.m],styles:[""]}),t})();var An=r(13472);let Ye=(()=>{class t{constructor(_,n){this.activeModal=_,this.actionLabels=n,this.resource="Swift Key",this.action=this.actionLabels.SHOW}setValues(_,n){this.user=_,this.secret_key=n}}return t.\u0275fac=function(_){return new(_||t)(e.Y36(M.Kz),e.Y36(A.p4))},t.\u0275cmp=e.Xpm({type:t,selectors:[["cd-rgw-user-swift-key-modal"]],decls:24,vars:11,consts:function(){let o,_,n;return o="" + "\ufffd0\ufffd" + " " + "\ufffd1\ufffd" + "",_="Username",n="Secret key",[[3,"modalRef"],[1,"modal-title"],o,[1,"modal-content"],[1,"modal-body"],["novalidate",""],[1,"form-group","row"],["for","user",1,"cd-col-form-label"],_,[1,"cd-col-form-input"],["id","user","name","user","type","text",1,"form-control",3,"readonly","ngModel","ngModelChange"],["for","secret_key",1,"cd-col-form-label"],n,[1,"input-group"],["id","secret_key","name","secret_key","type","password",1,"form-control",3,"ngModel","readonly","ngModelChange"],[1,"input-group-append"],["type","button","cdPasswordButton","secret_key",1,"btn","btn-light"],["source","secret_key"],[1,"modal-footer"],[3,"backAction"]]},template:function(_,n){1&_&&(e.TgZ(0,"cd-modal",0),e.ynx(1,1),e.SDv(2,2),e.ALo(3,"titlecase"),e.ALo(4,"upperFirst"),e.BQk(),e.ynx(5,3),e.TgZ(6,"div",4),e.TgZ(7,"form",5),e.TgZ(8,"div",6),e.TgZ(9,"label",7),e.SDv(10,8),e.qZA(),e.TgZ(11,"div",9),e.TgZ(12,"input",10),e.NdJ("ngModelChange",function(s){return n.user=s}),e.qZA(),e.qZA(),e.qZA(),e.TgZ(13,"div",6),e.TgZ(14,"label",11),e.SDv(15,12),e.qZA(),e.TgZ(16,"div",9),e.TgZ(17,"div",13),e.TgZ(18,"input",14),e.NdJ("ngModelChange",function(s){return n.secret_key=s}),e.qZA(),e.TgZ(19,"span",15),e._UZ(20,"button",16),e._UZ(21,"cd-copy-2-clipboard-button",17),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.TgZ(22,"div",18),e.TgZ(23,"cd-back-button",19),e.NdJ("backAction",function(){return n.activeModal.close()}),e.qZA(),e.qZA(),e.BQk(),e.qZA()),2&_&&(e.Q6J("modalRef",n.activeModal),e.xp6(4),e.pQV(e.lcZ(3,7,n.action))(e.lcZ(4,9,n.resource)),e.QtT(2),e.xp6(8),e.Q6J("readonly",!0)("ngModel",n.user),e.xp6(6),e.Q6J("ngModel",n.secret_key)("readonly",!0))},directives:[fe.z,a._Y,a.JL,a.F,H.P,q.o,a.Fj,X.b,a.JJ,a.On,Ce.C,pe.s,An.W],pipes:[f.rS,K.m],styles:[""]}),t})();var bn=r(17932);function Pn(t,o){1&t&&(e.TgZ(0,"span",49),e.SDv(1,50),e.qZA())}function Gn(t,o){1&t&&(e.TgZ(0,"span",49),e.SDv(1,51),e.qZA())}function Nn(t,o){1&t&&(e.TgZ(0,"span",49),e.SDv(1,52),e.qZA())}function On(t,o){1&t&&(e.TgZ(0,"span",49),e.SDv(1,56),e.qZA())}function Un(t,o){1&t&&(e.TgZ(0,"span",49),e.SDv(1,57),e.qZA())}function Wn(t,o){if(1&t&&(e.TgZ(0,"div",8),e.TgZ(1,"label",53),e.SDv(2,54),e.qZA(),e.TgZ(3,"div",11),e._UZ(4,"input",55),e.YNc(5,On,2,0,"span",13),e.YNc(6,Un,2,0,"span",13),e.qZA(),e.qZA()),2&t){e.oxw();const _=e.MAs(2),n=e.oxw();e.xp6(4),e.Q6J("readonly",n.editing),e.xp6(1),e.Q6J("ngIf",n.userForm.showError("tenant",_,"pattern")),e.xp6(1),e.Q6J("ngIf",n.userForm.showError("tenant",_,"notUnique"))}}function Zn(t,o){1&t&&(e.TgZ(0,"span",49),e.SDv(1,58),e.qZA())}function $n(t,o){1&t&&(e.TgZ(0,"span",49),e.SDv(1,59),e.qZA())}function hn(t,o){1&t&&(e.TgZ(0,"span",49),e.SDv(1,60),e.qZA())}function In(t,o){1&t&&(e.TgZ(0,"span",49),e.SDv(1,63),e.qZA())}function vn(t,o){1&t&&(e.TgZ(0,"span",49),e.SDv(1,64),e.qZA())}function Fn(t,o){if(1&t&&(e.TgZ(0,"div",8),e._UZ(1,"label",61),e.TgZ(2,"div",11),e._UZ(3,"input",62),e.YNc(4,In,2,0,"span",13),e.YNc(5,vn,2,0,"span",13),e.qZA(),e.qZA()),2&t){e.oxw();const _=e.MAs(2),n=e.oxw();e.xp6(4),e.Q6J("ngIf",n.userForm.showError("max_buckets",_,"required")),e.xp6(1),e.Q6J("ngIf",n.userForm.showError("max_buckets",_,"min"))}}function Ln(t,o){1&t&&(e.TgZ(0,"span",49),e.SDv(1,76),e.qZA())}function Dn(t,o){if(1&t&&(e.TgZ(0,"div",8),e.TgZ(1,"label",69),e.SDv(2,70),e.qZA(),e.TgZ(3,"div",11),e.TgZ(4,"div",71),e._UZ(5,"input",72),e.TgZ(6,"span",73),e._UZ(7,"button",74),e._UZ(8,"cd-copy-2-clipboard-button",75),e.qZA(),e.qZA(),e.YNc(9,Ln,2,0,"span",13),e.qZA(),e.qZA()),2&t){e.oxw(2);const _=e.MAs(2),n=e.oxw();e.xp6(9),e.Q6J("ngIf",n.userForm.showError("access_key",_,"required"))}}function xn(t,o){1&t&&(e.TgZ(0,"span",49),e.SDv(1,82),e.qZA())}function yn(t,o){if(1&t&&(e.TgZ(0,"div",8),e.TgZ(1,"label",77),e.SDv(2,78),e.qZA(),e.TgZ(3,"div",11),e.TgZ(4,"div",71),e._UZ(5,"input",79),e.TgZ(6,"span",73),e._UZ(7,"button",80),e._UZ(8,"cd-copy-2-clipboard-button",81),e.qZA(),e.qZA(),e.YNc(9,xn,2,0,"span",13),e.qZA(),e.qZA()),2&t){e.oxw(2);const _=e.MAs(2),n=e.oxw();e.xp6(9),e.Q6J("ngIf",n.userForm.showError("secret_key",_,"required"))}}function qn(t,o){if(1&t&&(e.TgZ(0,"fieldset"),e.TgZ(1,"legend"),e.SDv(2,65),e.qZA(),e.TgZ(3,"div",8),e.TgZ(4,"div",14),e.TgZ(5,"div",15),e._UZ(6,"input",66),e.TgZ(7,"label",67),e.SDv(8,68),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.YNc(9,Dn,10,1,"div",19),e.YNc(10,yn,10,1,"div",19),e.qZA()),2&t){const _=e.oxw(2);e.xp6(9),e.Q6J("ngIf",!_.editing&&!_.userForm.getValue("generate_key")),e.xp6(1),e.Q6J("ngIf",!_.editing&&!_.userForm.getValue("generate_key"))}}function wn(t,o){1&t&&(e.TgZ(0,"span",92),e.TgZ(1,"span",93),e.SDv(2,94),e.qZA(),e.qZA())}const L=function(t){return[t]};function kn(t,o){if(1&t){const _=e.EpF();e.TgZ(0,"span"),e.TgZ(1,"div",71),e.TgZ(2,"div",95),e.TgZ(3,"span",96),e._UZ(4,"i"),e.qZA(),e.qZA(),e._UZ(5,"input",97),e.TgZ(6,"div",98),e.TgZ(7,"span",96),e._UZ(8,"i"),e.qZA(),e.qZA(),e._UZ(9,"input",97),e.TgZ(10,"span",73),e.TgZ(11,"button",99),e.NdJ("click",function(){const s=e.CHM(_).index;return e.oxw(3).showSubuserModal(s)}),e._UZ(12,"i",89),e.qZA(),e.TgZ(13,"button",100),e.NdJ("click",function(){const s=e.CHM(_).index;return e.oxw(3).deleteSubuser(s)}),e._UZ(14,"i",89),e.qZA(),e.qZA(),e.qZA(),e._UZ(15,"span",93),e.qZA()}if(2&t){const _=o.$implicit,n=e.oxw(3);e.xp6(4),e.Tol(n.icons.user),e.xp6(1),e.s9C("value",_.id),e.xp6(3),e.Tol(n.icons.share),e.xp6(1),e.s9C("value","full-control"===_.permissions?"full":_.permissions),e.xp6(3),e.Q6J("ngClass",e.VKq(10,L,n.icons.edit)),e.xp6(2),e.Q6J("ngClass",e.VKq(12,L,n.icons.destroy))}}function Bn(t,o){if(1&t){const _=e.EpF();e.TgZ(0,"fieldset"),e.TgZ(1,"legend"),e.SDv(2,83),e.qZA(),e.TgZ(3,"div",84),e.TgZ(4,"div",14),e.YNc(5,wn,3,0,"span",85),e.YNc(6,kn,16,14,"span",86),e.TgZ(7,"div",84),e.TgZ(8,"div",87),e.TgZ(9,"button",88),e.NdJ("click",function(){return e.CHM(_),e.oxw(2).showSubuserModal()}),e._UZ(10,"i",89),e.ynx(11),e.SDv(12,90),e.ALo(13,"titlecase"),e.ALo(14,"upperFirst"),e.BQk(),e.qZA(),e.qZA(),e.qZA(),e._UZ(15,"span",91),e.qZA(),e.qZA(),e.qZA()}if(2&t){const _=e.oxw(2);e.xp6(5),e.Q6J("ngIf",0===_.subusers.length),e.xp6(1),e.Q6J("ngForOf",_.subusers),e.xp6(4),e.Q6J("ngClass",e.VKq(9,L,_.icons.add)),e.xp6(4),e.pQV(e.lcZ(13,5,_.actionLabels.CREATE))(e.lcZ(14,7,_.subuserLabel)),e.QtT(12)}}function Hn(t,o){1&t&&(e.TgZ(0,"span",92),e.TgZ(1,"span",93),e.SDv(2,106),e.qZA(),e.qZA())}function Xn(t,o){if(1&t){const _=e.EpF();e.TgZ(0,"span"),e.TgZ(1,"div",71),e.TgZ(2,"div",95),e.TgZ(3,"div",96),e._UZ(4,"i"),e.qZA(),e.qZA(),e._UZ(5,"input",97),e.TgZ(6,"span",73),e.TgZ(7,"button",107),e.NdJ("click",function(){const s=e.CHM(_).index;return e.oxw(3).showS3KeyModal(s)}),e._UZ(8,"i",89),e.qZA(),e.TgZ(9,"button",108),e.NdJ("click",function(){const s=e.CHM(_).index;return e.oxw(3).deleteS3Key(s)}),e._UZ(10,"i",89),e.qZA(),e.qZA(),e.qZA(),e._UZ(11,"span",93),e.qZA()}if(2&t){const _=o.$implicit,n=e.oxw(3);e.xp6(4),e.Tol(n.icons.key),e.xp6(1),e.s9C("value",_.user),e.xp6(3),e.Q6J("ngClass",e.VKq(6,L,n.icons.show)),e.xp6(2),e.Q6J("ngClass",e.VKq(8,L,n.icons.destroy))}}function Kn(t,o){1&t&&(e.TgZ(0,"span",92),e.TgZ(1,"span",93),e.SDv(2,109),e.qZA(),e.qZA())}function zn(t,o){if(1&t){const _=e.EpF();e.TgZ(0,"span"),e.TgZ(1,"div",71),e.TgZ(2,"div",95),e.TgZ(3,"span",96),e._UZ(4,"i"),e.qZA(),e.qZA(),e._UZ(5,"input",97),e.TgZ(6,"span",73),e.TgZ(7,"button",110),e.NdJ("click",function(){const s=e.CHM(_).index;return e.oxw(3).showSwiftKeyModal(s)}),e._UZ(8,"i",89),e.qZA(),e.qZA(),e.qZA(),e._UZ(9,"span",93),e.qZA()}if(2&t){const _=o.$implicit,n=e.oxw(3);e.xp6(4),e.Tol(n.icons.key),e.xp6(1),e.s9C("value",_.user),e.xp6(3),e.Q6J("ngClass",e.VKq(5,L,n.icons.show))}}function Qn(t,o){if(1&t){const _=e.EpF();e.TgZ(0,"fieldset"),e.TgZ(1,"legend"),e.SDv(2,101),e.qZA(),e.TgZ(3,"div",8),e.TgZ(4,"label",61),e.SDv(5,102),e.qZA(),e.TgZ(6,"div",11),e.YNc(7,Hn,3,0,"span",85),e.YNc(8,Xn,12,10,"span",86),e.TgZ(9,"div",84),e.TgZ(10,"div",87),e.TgZ(11,"button",103),e.NdJ("click",function(){return e.CHM(_),e.oxw(2).showS3KeyModal()}),e._UZ(12,"i",89),e.ynx(13),e.SDv(14,104),e.ALo(15,"titlecase"),e.ALo(16,"upperFirst"),e.BQk(),e.qZA(),e.qZA(),e.qZA(),e._UZ(17,"span",91),e.qZA(),e._UZ(18,"hr"),e.qZA(),e.TgZ(19,"div",8),e.TgZ(20,"label",61),e.SDv(21,105),e.qZA(),e.TgZ(22,"div",11),e.YNc(23,Kn,3,0,"span",85),e.YNc(24,zn,10,7,"span",86),e.qZA(),e.qZA(),e.qZA()}if(2&t){const _=e.oxw(2);e.xp6(7),e.Q6J("ngIf",0===_.s3Keys.length),e.xp6(1),e.Q6J("ngForOf",_.s3Keys),e.xp6(4),e.Q6J("ngClass",e.VKq(11,L,_.icons.add)),e.xp6(4),e.pQV(e.lcZ(15,7,_.actionLabels.CREATE))(e.lcZ(16,9,_.s3keyLabel)),e.QtT(14),e.xp6(7),e.Q6J("ngIf",0===_.swiftKeys.length),e.xp6(1),e.Q6J("ngForOf",_.swiftKeys)}}function Yn(t,o){1&t&&(e.TgZ(0,"span",92),e.TgZ(1,"span",93),e.SDv(2,114),e.qZA(),e.qZA())}function Jn(t,o){if(1&t){const _=e.EpF();e.TgZ(0,"span"),e.TgZ(1,"div",71),e.TgZ(2,"span",95),e.TgZ(3,"div",96),e._UZ(4,"i"),e.qZA(),e.qZA(),e._UZ(5,"input",97),e.TgZ(6,"span",73),e.TgZ(7,"button",115),e.NdJ("click",function(){const s=e.CHM(_).index;return e.oxw(3).showCapabilityModal(s)}),e._UZ(8,"i",89),e.qZA(),e.TgZ(9,"button",116),e.NdJ("click",function(){const s=e.CHM(_).index;return e.oxw(3).deleteCapability(s)}),e._UZ(10,"i",89),e.qZA(),e.qZA(),e.qZA(),e._UZ(11,"span",93),e.qZA()}if(2&t){const _=o.$implicit,n=e.oxw(3);e.xp6(4),e.Tol(n.icons.share),e.xp6(1),e.hYB("value","",_.type,":",_.perm,""),e.xp6(3),e.Q6J("ngClass",e.VKq(7,L,n.icons.edit)),e.xp6(2),e.Q6J("ngClass",e.VKq(9,L,n.icons.destroy))}}function Vn(t,o){if(1&t){const _=e.EpF();e.TgZ(0,"fieldset"),e.TgZ(1,"legend"),e.SDv(2,111),e.qZA(),e.TgZ(3,"div",8),e.TgZ(4,"div",14),e.YNc(5,Yn,3,0,"span",85),e.YNc(6,Jn,12,11,"span",86),e.TgZ(7,"div",84),e.TgZ(8,"div",87),e.TgZ(9,"button",112),e.NdJ("click",function(){return e.CHM(_),e.oxw(2).showCapabilityModal()}),e.ALo(10,"pipeFunction"),e.ALo(11,"pipeFunction"),e._UZ(12,"i",89),e.ynx(13),e.SDv(14,113),e.ALo(15,"titlecase"),e.ALo(16,"upperFirst"),e.BQk(),e.qZA(),e.qZA(),e.qZA(),e._UZ(17,"span",91),e.qZA(),e.qZA(),e.qZA()}if(2&t){const _=e.oxw(2);e.xp6(5),e.Q6J("ngIf",0===_.capabilities.length),e.xp6(1),e.Q6J("ngForOf",_.capabilities),e.xp6(3),e.Q6J("disabled",e.xi3(10,7,_.capabilities,_.hasAllCapabilities))("disableTooltip",!e.xi3(11,10,_.capabilities,_.hasAllCapabilities)),e.xp6(3),e.Q6J("ngClass",e.VKq(17,L,_.icons.add)),e.xp6(4),e.pQV(e.lcZ(15,13,_.actionLabels.ADD))(e.lcZ(16,15,_.capabilityLabel)),e.QtT(14)}}function jn(t,o){1&t&&(e.TgZ(0,"div",8),e.TgZ(1,"div",14),e.TgZ(2,"div",15),e._UZ(3,"input",117),e.TgZ(4,"label",118),e.SDv(5,119),e.qZA(),e.qZA(),e.qZA(),e.qZA())}function eo(t,o){1&t&&(e.TgZ(0,"span",49),e.SDv(1,123),e.qZA())}function _o(t,o){1&t&&(e.TgZ(0,"span",49),e.SDv(1,124),e.qZA())}function to(t,o){if(1&t&&(e.TgZ(0,"div",8),e.TgZ(1,"label",120),e.SDv(2,121),e.qZA(),e.TgZ(3,"div",11),e._UZ(4,"input",122),e.YNc(5,eo,2,0,"span",13),e.YNc(6,_o,2,0,"span",13),e.qZA(),e.qZA()),2&t){e.oxw();const _=e.MAs(2),n=e.oxw();e.xp6(5),e.Q6J("ngIf",n.userForm.showError("user_quota_max_size",_,"required")),e.xp6(1),e.Q6J("ngIf",n.userForm.showError("user_quota_max_size",_,"quotaMaxSize"))}}function no(t,o){1&t&&(e.TgZ(0,"div",8),e.TgZ(1,"div",14),e.TgZ(2,"div",15),e._UZ(3,"input",125),e.TgZ(4,"label",126),e.SDv(5,127),e.qZA(),e.qZA(),e.qZA(),e.qZA())}function oo(t,o){1&t&&(e.TgZ(0,"span",49),e.SDv(1,131),e.qZA())}function io(t,o){1&t&&(e.TgZ(0,"span",49),e.SDv(1,132),e.qZA())}function so(t,o){if(1&t&&(e.TgZ(0,"div",8),e.TgZ(1,"label",128),e.SDv(2,129),e.qZA(),e.TgZ(3,"div",11),e._UZ(4,"input",130),e.YNc(5,oo,2,0,"span",13),e.YNc(6,io,2,0,"span",13),e.qZA(),e.qZA()),2&t){e.oxw();const _=e.MAs(2),n=e.oxw();e.xp6(5),e.Q6J("ngIf",n.userForm.showError("user_quota_max_objects",_,"required")),e.xp6(1),e.Q6J("ngIf",n.userForm.showError("user_quota_max_objects",_,"min"))}}function ao(t,o){1&t&&(e.TgZ(0,"div",8),e.TgZ(1,"div",14),e.TgZ(2,"div",15),e._UZ(3,"input",133),e.TgZ(4,"label",134),e.SDv(5,135),e.qZA(),e.qZA(),e.qZA(),e.qZA())}function ro(t,o){1&t&&(e.TgZ(0,"span",49),e.SDv(1,139),e.qZA())}function lo(t,o){1&t&&(e.TgZ(0,"span",49),e.SDv(1,140),e.qZA())}function co(t,o){if(1&t&&(e.TgZ(0,"div",8),e.TgZ(1,"label",136),e.SDv(2,137),e.qZA(),e.TgZ(3,"div",11),e._UZ(4,"input",138),e.YNc(5,ro,2,0,"span",13),e.YNc(6,lo,2,0,"span",13),e.qZA(),e.qZA()),2&t){e.oxw();const _=e.MAs(2),n=e.oxw();e.xp6(5),e.Q6J("ngIf",n.userForm.showError("bucket_quota_max_size",_,"required")),e.xp6(1),e.Q6J("ngIf",n.userForm.showError("bucket_quota_max_size",_,"quotaMaxSize"))}}function uo(t,o){1&t&&(e.TgZ(0,"div",8),e.TgZ(1,"div",14),e.TgZ(2,"div",15),e._UZ(3,"input",141),e.TgZ(4,"label",142),e.SDv(5,143),e.qZA(),e.qZA(),e.qZA(),e.qZA())}function Ro(t,o){1&t&&(e.TgZ(0,"span",49),e.SDv(1,147),e.qZA())}function go(t,o){1&t&&(e.TgZ(0,"span",49),e.SDv(1,148),e.qZA())}function Eo(t,o){if(1&t&&(e.TgZ(0,"div",8),e.TgZ(1,"label",144),e.SDv(2,145),e.qZA(),e.TgZ(3,"div",11),e._UZ(4,"input",146),e.YNc(5,Ro,2,0,"span",13),e.YNc(6,go,2,0,"span",13),e.qZA(),e.qZA()),2&t){e.oxw();const _=e.MAs(2),n=e.oxw();e.xp6(5),e.Q6J("ngIf",n.userForm.showError("bucket_quota_max_objects",_,"required")),e.xp6(1),e.Q6J("ngIf",n.userForm.showError("bucket_quota_max_objects",_,"min"))}}const Je=function(t){return{required:t}};function To(t,o){if(1&t){const _=e.EpF();e.TgZ(0,"div",1),e.TgZ(1,"form",2,3),e.TgZ(3,"div",4),e.TgZ(4,"div",5),e.SDv(5,6),e.ALo(6,"titlecase"),e.ALo(7,"upperFirst"),e.qZA(),e.TgZ(8,"div",7),e.TgZ(9,"div",8),e.TgZ(10,"label",9),e.SDv(11,10),e.qZA(),e.TgZ(12,"div",11),e._UZ(13,"input",12),e.YNc(14,Pn,2,0,"span",13),e.YNc(15,Gn,2,0,"span",13),e.YNc(16,Nn,2,0,"span",13),e.qZA(),e.qZA(),e.TgZ(17,"div",8),e.TgZ(18,"div",14),e.TgZ(19,"div",15),e.TgZ(20,"input",16),e.NdJ("click",function(){return e.CHM(_),e.oxw().updateFieldsWhenTenanted()}),e.qZA(),e.TgZ(21,"label",17),e.SDv(22,18),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.YNc(23,Wn,7,3,"div",19),e.TgZ(24,"div",8),e.TgZ(25,"label",20),e.SDv(26,21),e.qZA(),e.TgZ(27,"div",11),e._UZ(28,"input",22),e.YNc(29,Zn,2,0,"span",13),e.qZA(),e.qZA(),e.TgZ(30,"div",8),e.TgZ(31,"label",23),e.SDv(32,24),e.qZA(),e.TgZ(33,"div",11),e._UZ(34,"input",25),e.YNc(35,$n,2,0,"span",13),e.YNc(36,hn,2,0,"span",13),e.qZA(),e.qZA(),e.TgZ(37,"div",8),e.TgZ(38,"label",26),e.SDv(39,27),e.qZA(),e.TgZ(40,"div",11),e.TgZ(41,"select",28),e.NdJ("change",function(i){return e.CHM(_),e.oxw().onMaxBucketsModeChange(i.target.value)}),e.TgZ(42,"option",29),e.SDv(43,30),e.qZA(),e.TgZ(44,"option",31),e.SDv(45,32),e.qZA(),e.TgZ(46,"option",33),e.SDv(47,34),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.YNc(48,Fn,6,2,"div",19),e.TgZ(49,"div",8),e.TgZ(50,"div",14),e.TgZ(51,"div",15),e._UZ(52,"input",35),e.TgZ(53,"label",36),e.SDv(54,37),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.YNc(55,qn,11,2,"fieldset",38),e.YNc(56,Bn,16,11,"fieldset",38),e.YNc(57,Qn,25,13,"fieldset",38),e.YNc(58,Vn,18,19,"fieldset",38),e.TgZ(59,"fieldset"),e.TgZ(60,"legend"),e.SDv(61,39),e.qZA(),e.TgZ(62,"div",8),e.TgZ(63,"div",14),e.TgZ(64,"div",15),e._UZ(65,"input",40),e.TgZ(66,"label",41),e.SDv(67,42),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.YNc(68,jn,6,0,"div",19),e.YNc(69,to,7,2,"div",19),e.YNc(70,no,6,0,"div",19),e.YNc(71,so,7,2,"div",19),e.qZA(),e.TgZ(72,"fieldset"),e.TgZ(73,"legend"),e.SDv(74,43),e.qZA(),e.TgZ(75,"div",8),e.TgZ(76,"div",14),e.TgZ(77,"div",15),e._UZ(78,"input",44),e.TgZ(79,"label",45),e.SDv(80,46),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.YNc(81,ao,6,0,"div",19),e.YNc(82,co,7,2,"div",19),e.YNc(83,uo,6,0,"div",19),e.YNc(84,Eo,7,2,"div",19),e.qZA(),e.qZA(),e.TgZ(85,"div",47),e.TgZ(86,"cd-form-button-panel",48),e.NdJ("submitActionEvent",function(){return e.CHM(_),e.oxw().onSubmit()}),e.ALo(87,"titlecase"),e.ALo(88,"upperFirst"),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA()}if(2&t){const _=e.MAs(2),n=e.oxw();e.xp6(1),e.Q6J("formGroup",n.userForm),e.xp6(6),e.pQV(e.lcZ(6,29,n.action))(e.lcZ(7,31,n.resource)),e.QtT(5),e.xp6(3),e.Q6J("ngClass",e.VKq(37,Je,!n.editing)),e.xp6(3),e.Q6J("readonly",n.editing),e.xp6(1),e.Q6J("ngIf",n.userForm.showError("user_id",_,"required")),e.xp6(1),e.Q6J("ngIf",n.userForm.showError("user_id",_,"pattern")),e.xp6(1),e.Q6J("ngIf",!n.userForm.getValue("show_tenant")&&n.userForm.showError("user_id",_,"notUnique")),e.xp6(4),e.Q6J("readonly",!0),e.xp6(3),e.Q6J("ngIf",n.userForm.getValue("show_tenant")),e.xp6(2),e.Q6J("ngClass",e.VKq(39,Je,!n.editing)),e.xp6(4),e.Q6J("ngIf",n.userForm.showError("display_name",_,"required")),e.xp6(6),e.Q6J("ngIf",n.userForm.showError("email",_,"email")),e.xp6(1),e.Q6J("ngIf",n.userForm.showError("email",_,"notUnique")),e.xp6(12),e.Q6J("ngIf",1==n.userForm.get("max_buckets_mode").value),e.xp6(7),e.Q6J("ngIf",!n.editing),e.xp6(1),e.Q6J("ngIf",n.editing),e.xp6(1),e.Q6J("ngIf",n.editing),e.xp6(1),e.Q6J("ngIf",n.editing),e.xp6(10),e.Q6J("ngIf",n.userForm.controls.user_quota_enabled.value),e.xp6(1),e.Q6J("ngIf",n.userForm.controls.user_quota_enabled.value&&!n.userForm.getValue("user_quota_max_size_unlimited")),e.xp6(1),e.Q6J("ngIf",n.userForm.controls.user_quota_enabled.value),e.xp6(1),e.Q6J("ngIf",n.userForm.controls.user_quota_enabled.value&&!n.userForm.getValue("user_quota_max_objects_unlimited")),e.xp6(10),e.Q6J("ngIf",n.userForm.controls.bucket_quota_enabled.value),e.xp6(1),e.Q6J("ngIf",n.userForm.controls.bucket_quota_enabled.value&&!n.userForm.getValue("bucket_quota_max_size_unlimited")),e.xp6(1),e.Q6J("ngIf",n.userForm.controls.bucket_quota_enabled.value),e.xp6(1),e.Q6J("ngIf",n.userForm.controls.bucket_quota_enabled.value&&!n.userForm.getValue("bucket_quota_max_objects_unlimited")),e.xp6(2),e.Q6J("form",n.userForm)("submitText",e.lcZ(87,33,n.action)+" "+e.lcZ(88,35,n.resource))}}let Ve=(()=>{class t extends Ie.E{constructor(_,n,i,s,c,d,E){super(),this.formBuilder=_,this.route=n,this.router=i,this.rgwUserService=s,this.modalService=c,this.notificationService=d,this.actionLabels=E,this.editing=!1,this.submitObservables=[],this.icons=D.P,this.subusers=[],this.s3Keys=[],this.swiftKeys=[],this.capabilities=[],this.showTenant=!1,this.previousTenant=null,this.resource="user",this.subuserLabel="subuser",this.s3keyLabel="S3 Key",this.capabilityLabel="capability",this.editing=this.router.url.startsWith(`/rgw/user/${A.MQ.EDIT}`),this.action=this.editing?this.actionLabels.EDIT:this.actionLabels.CREATE,this.createForm()}createForm(){this.userForm=this.formBuilder.group({user_id:[null,[a.kI.required,a.kI.pattern(/^[a-zA-Z0-9!@#%^&*()_-]+$/)],this.editing?[]:[m.h.unique(this.rgwUserService.exists,this.rgwUserService,()=>this.userForm.getValue("tenant"))]],show_tenant:[this.editing],tenant:[null,[a.kI.pattern(/^[a-zA-Z0-9!@#%^&*()_-]+$/)],this.editing?[]:[m.h.unique(this.rgwUserService.exists,this.rgwUserService,()=>this.userForm.getValue("user_id"),!0)]],display_name:[null,[a.kI.required]],email:[null,[m.h.email],[m.h.unique(this.rgwUserService.emailExists,this.rgwUserService)]],max_buckets_mode:[1],max_buckets:[1e3,[m.h.requiredIf({max_buckets_mode:"1"}),m.h.number(!1)]],suspended:[!1],generate_key:[!0],access_key:[null,[m.h.requiredIf({generate_key:!1})]],secret_key:[null,[m.h.requiredIf({generate_key:!1})]],user_quota_enabled:[!1],user_quota_max_size_unlimited:[!0],user_quota_max_size:[null,[m.h.composeIf({user_quota_enabled:!0,user_quota_max_size_unlimited:!1},[a.kI.required,this.quotaMaxSizeValidator])]],user_quota_max_objects_unlimited:[!0],user_quota_max_objects:[null,[m.h.requiredIf({user_quota_enabled:!0,user_quota_max_objects_unlimited:!1})]],bucket_quota_enabled:[!1],bucket_quota_max_size_unlimited:[!0],bucket_quota_max_size:[null,[m.h.composeIf({bucket_quota_enabled:!0,bucket_quota_max_size_unlimited:!1},[a.kI.required,this.quotaMaxSizeValidator])]],bucket_quota_max_objects_unlimited:[!0],bucket_quota_max_objects:[null,[m.h.requiredIf({bucket_quota_enabled:!0,bucket_quota_max_objects_unlimited:!1})]]})}ngOnInit(){this.route.params.subscribe(_=>{if(!_.hasOwnProperty("uid"))return void this.loadingReady();const n=decodeURIComponent(_.uid),i=[];i.push(this.rgwUserService.get(n)),i.push(this.rgwUserService.getQuota(n)),(0,Y.D)(i).subscribe(s=>{const c=u().clone(this.userForm.value);let d=u().pick(s[0],u().keys(this.userForm.value));switch(d.max_buckets){case-1:d.max_buckets_mode=-1,d.max_buckets="";break;case 0:d.max_buckets_mode=0,d.max_buckets="";break;default:d.max_buckets_mode=1}["user","bucket"].forEach(g=>{const C=s[1][g+"_quota"];d[g+"_quota_enabled"]=C.enabled,C.max_size<0?(d[g+"_quota_max_size_unlimited"]=!0,d[g+"_quota_max_size"]=null):(d[g+"_quota_max_size_unlimited"]=!1,d[g+"_quota_max_size"]=`${C.max_size} B`),C.max_objects<0?(d[g+"_quota_max_objects_unlimited"]=!0,d[g+"_quota_max_objects"]=null):(d[g+"_quota_max_objects_unlimited"]=!1,d[g+"_quota_max_objects"]=C.max_objects)}),d=u().merge(c,d),this.userForm.setValue(d),this.subusers=s[0].subusers,this.s3Keys=s[0].keys,this.swiftKeys=s[0].swift_keys;const E={"read, write":"*"};s[0].caps.forEach(g=>{g.perm in E&&(g.perm=E[g.perm])}),this.capabilities=s[0].caps,this.loadingReady()},()=>{this.loadingError()})})}goToListView(){this.router.navigate(["/rgw/user"])}onSubmit(){let _;if(this.userForm.pristine)return void this.goToListView();const n=this.getUID();if(this.editing){if(this._isGeneralDirty()){const i=this._getUpdateArgs();this.submitObservables.push(this.rgwUserService.update(n,i))}_="Updated Object Gateway user '" + n + "'"}else{const i=this._getCreateArgs();this.submitObservables.push(this.rgwUserService.create(i)),_="Created Object Gateway user '" + n + "'"}if(this._isUserQuotaDirty()){const i=this._getUserQuotaArgs();this.submitObservables.push(this.rgwUserService.updateQuota(n,i))}if(this._isBucketQuotaDirty()){const i=this._getBucketQuotaArgs();this.submitObservables.push(this.rgwUserService.updateQuota(n,i))}(0,Bt.z)(...this.submitObservables).subscribe({error:()=>{this.userForm.setErrors({cdSubmitButton:!0})},complete:()=>{this.notificationService.show(Ae.k.success,_),this.goToListView()}})}updateFieldsWhenTenanted(){this.showTenant=this.userForm.getValue("show_tenant"),this.showTenant?(this.userForm.get("user_id").markAsTouched(),this.previousTenant=this.userForm.get("tenant").value,this.userForm.get("tenant").patchValue(null)):(this.userForm.get("user_id").markAsUntouched(),this.userForm.get("tenant").patchValue(this.previousTenant))}getUID(){var _;let n=this.userForm.getValue("user_id");const i=null===(_=this.userForm)||void 0===_?void 0:_.getValue("tenant");return i&&i.length>0&&(n=`${this.userForm.getValue("tenant")}$${n}`),n}quotaMaxSizeValidator(_){return(0,m.P)(_.value)?null:null===RegExp("^(\\d+(\\.\\d+)?)\\s*(B|K(B|iB)?|M(B|iB)?|G(B|iB)?|T(B|iB)?)?$","i").exec(_.value)||(new Ge.H).toBytes(_.value)<1024?{quotaMaxSize:!0}:null}setSubuser(_,n){const i={"full-control":"full","read-write":"readwrite"},s=this.getUID();this.submitObservables.push(this.rgwUserService.createSubuser(s,{subuser:_.id,access:_.permissions in i?i[_.permissions]:_.permissions,key_type:"swift",secret_key:_.secret_key,generate_secret:_.generate_secret?"true":"false"})),u().isNumber(n)?this.subusers[n]=_:(this.subusers.push(_),this.swiftKeys.push({user:_.id,secret_key:_.generate_secret?"Apply your changes first...":_.secret_key})),this.userForm.markAsDirty()}deleteSubuser(_){const n=this.subusers[_];this.submitObservables.push(this.rgwUserService.deleteSubuser(this.getUID(),n.id)),this.s3Keys=this.s3Keys.filter(i=>i.user!==n.id),this.swiftKeys=this.swiftKeys.filter(i=>i.user!==n.id),this.subusers.splice(_,1),this.userForm.markAsDirty()}setCapability(_,n){const i=this.getUID();if(u().isNumber(n)){const s=this.capabilities[n];this.submitObservables.push(this.rgwUserService.deleteCapability(i,s.type,s.perm)),this.submitObservables.push(this.rgwUserService.addCapability(i,_.type,_.perm)),this.capabilities[n]=_}else this.submitObservables.push(this.rgwUserService.addCapability(i,_.type,_.perm)),this.capabilities=[...this.capabilities,_];this.userForm.markAsDirty()}deleteCapability(_){const n=this.capabilities[_];this.submitObservables.push(this.rgwUserService.deleteCapability(this.getUID(),n.type,n.perm)),this.capabilities.splice(_,1),this.capabilities=[...this.capabilities],this.userForm.markAsDirty()}hasAllCapabilities(_){return!u().difference(ze.getAll(),u().map(_,"type")).length}setS3Key(_,n){if(!u().isNumber(n)){const i=_.user.match(/([^:]+)(:(.+))?/),s=i[1],c={subuser:i[2]?i[3]:"",generate_key:_.generate_key?"true":"false"};"false"===c.generate_key&&(u().isNil(_.access_key)||(c.access_key=_.access_key),u().isNil(_.secret_key)||(c.secret_key=_.secret_key)),this.submitObservables.push(this.rgwUserService.addS3Key(s,c)),this.s3Keys.push({user:_.user,access_key:_.generate_key?"Apply your changes first...":_.access_key,secret_key:_.generate_key?"Apply your changes first...":_.secret_key})}this.userForm.markAsDirty()}deleteS3Key(_){const n=this.s3Keys[_];this.submitObservables.push(this.rgwUserService.deleteS3Key(this.getUID(),n.access_key)),this.s3Keys.splice(_,1),this.userForm.markAsDirty()}showSubuserModal(_){const n=this.getUID(),i=this.modalService.show(mn);if(u().isNumber(_)){const s=this.subusers[_];i.componentInstance.setEditing(),i.componentInstance.setValues(n,s.id,s.permissions)}else i.componentInstance.setEditing(!1),i.componentInstance.setValues(n),i.componentInstance.setSubusers(this.subusers);i.componentInstance.submitAction.subscribe(s=>{this.setSubuser(s,_)})}showS3KeyModal(_){const n=this.modalService.show(Qe);if(u().isNumber(_)){const i=this.s3Keys[_];n.componentInstance.setViewing(),n.componentInstance.setValues(i.user,i.access_key,i.secret_key)}else{const i=this._getS3KeyUserCandidates();n.componentInstance.setViewing(!1),n.componentInstance.setUserCandidates(i),n.componentInstance.submitAction.subscribe(s=>{this.setS3Key(s)})}}showSwiftKeyModal(_){const n=this.modalService.show(Ye),i=this.swiftKeys[_];n.componentInstance.setValues(i.user,i.secret_key)}showCapabilityModal(_){const n=this.modalService.show(en);if(u().isNumber(_)){const i=this.capabilities[_];n.componentInstance.setEditing(),n.componentInstance.setValues(i.type,i.perm)}else n.componentInstance.setEditing(!1),n.componentInstance.setCapabilities(this.capabilities);n.componentInstance.submitAction.subscribe(i=>{this.setCapability(i,_)})}_isGeneralDirty(){return["display_name","email","max_buckets_mode","max_buckets","suspended"].some(_=>this.userForm.get(_).dirty)}_isUserQuotaDirty(){return["user_quota_enabled","user_quota_max_size_unlimited","user_quota_max_size","user_quota_max_objects_unlimited","user_quota_max_objects"].some(_=>this.userForm.get(_).dirty)}_isBucketQuotaDirty(){return["bucket_quota_enabled","bucket_quota_max_size_unlimited","bucket_quota_max_size","bucket_quota_max_objects_unlimited","bucket_quota_max_objects"].some(_=>this.userForm.get(_).dirty)}_getCreateArgs(){const _={uid:this.getUID(),display_name:this.userForm.getValue("display_name"),suspended:this.userForm.getValue("suspended"),email:"",max_buckets:this.userForm.getValue("max_buckets"),generate_key:this.userForm.getValue("generate_key"),access_key:"",secret_key:""},n=this.userForm.getValue("email");u().isString(n)&&n.length>0&&u().merge(_,{email:n}),this.userForm.getValue("generate_key")||u().merge(_,{generate_key:!1,access_key:this.userForm.getValue("access_key"),secret_key:this.userForm.getValue("secret_key")});const s=parseInt(this.userForm.getValue("max_buckets_mode"),10);return u().includes([-1,0],s)&&u().merge(_,{max_buckets:s}),_}_getUpdateArgs(){const _={},n=["display_name","email","max_buckets","suspended"];for(const s of n)_[s]=this.userForm.getValue(s);const i=parseInt(this.userForm.getValue("max_buckets_mode"),10);return u().includes([-1,0],i)&&(_.max_buckets=i),_}_getUserQuotaArgs(){const _={quota_type:"user",enabled:this.userForm.getValue("user_quota_enabled"),max_size_kb:-1,max_objects:-1};if(!this.userForm.getValue("user_quota_max_size_unlimited")){const n=(new Ge.H).toBytes(this.userForm.getValue("user_quota_max_size"));_.max_size_kb=(n/1024).toFixed(0)}return this.userForm.getValue("user_quota_max_objects_unlimited")||(_.max_objects=this.userForm.getValue("user_quota_max_objects")),_}_getBucketQuotaArgs(){const _={quota_type:"bucket",enabled:this.userForm.getValue("bucket_quota_enabled"),max_size_kb:-1,max_objects:-1};if(!this.userForm.getValue("bucket_quota_max_size_unlimited")){const n=(new Ge.H).toBytes(this.userForm.getValue("bucket_quota_max_size"));_.max_size_kb=(n/1024).toFixed(0)}return this.userForm.getValue("bucket_quota_max_objects_unlimited")||(_.max_objects=this.userForm.getValue("bucket_quota_max_objects")),_}_getS3KeyUserCandidates(){let _=[];const n=this.getUID();return u().isString(n)&&!u().isEmpty(n)&&_.push(n),this.subusers.forEach(i=>{_.push(i.id)}),this.s3Keys.forEach(i=>{_.push(i.user)}),_=u().uniq(_),_}onMaxBucketsModeChange(_){"1"===_&&(this.userForm.get("max_buckets").valid||this.userForm.patchValue({max_buckets:1e3}))}}return t.\u0275fac=function(_){return new(_||t)(e.Y36(J.O),e.Y36(w.gz),e.Y36(w.F0),e.Y36(O),e.Y36(Te.Z),e.Y36(ve.g),e.Y36(A.p4))},t.\u0275cmp=e.Xpm({type:t,selectors:[["cd-rgw-user-form"]],features:[e.qOj],decls:1,vars:1,consts:function(){let o,_,n,i,s,c,d,E,g,C,b,P,G,N,p,U,W,Z,$,h,I,v,F,T,x,y,S,_e,te,ne,oe,ie,se,ae,re,le,ce,de,ue,Re,R,__,t_,n_,o_,i_,s_,a_,r_,l_,c_,d_,u_,R_,g_,E_,T_,S_,f_,C_,p_,M_,m_,A_,b_,P_,G_;return o="" + "\ufffd0\ufffd" + " " + "\ufffd1\ufffd" + "",_="User ID",n="Show Tenant",i="Full name",s="Email address",c="Max. buckets",d="Disabled",E="Unlimited",g="Custom",C="Suspended",b="User quota",P="Enabled",G="Bucket quota",N="Enabled",p="This field is required.",U="The value is not valid.",W="The chosen user ID is already in use.",Z="Tenant",$="The value is not valid.",h="The chosen user ID exists in this tenant.",I="This field is required.",v="This is not a valid email address.",F="The chosen email address is already in use.",T="This field is required.",x="The entered value must be >= 1.",y="S3 key",S="Auto-generate key",_e="Access key",te="This field is required.",ne="Secret key",oe="This field is required.",ie="Subusers",se="" + "\ufffd0\ufffd" + " " + "\ufffd1\ufffd" + "",ae="There are no subusers.",re="Edit",le="Delete",ce="Keys",de="S3",ue="" + "\ufffd0\ufffd" + " " + "\ufffd1\ufffd" + "",Re="Swift",R="There are no keys.",__="Show",t_="Delete",n_="There are no keys.",o_="Show",i_="Capabilities",s_="All capabilities are already added.",a_="" + "\ufffd0\ufffd" + " " + "\ufffd1\ufffd" + "",r_="There are no capabilities.",l_="Edit",c_="Delete",d_="Unlimited size",u_="Max. size",R_="This field is required.",g_="The value is not valid.",E_="Unlimited objects",T_="Max. objects",S_="This field is required.",f_="The entered value must be >= 0.",C_="Unlimited size",p_="Max. size",M_="This field is required.",m_="The value is not valid.",A_="Unlimited objects",b_="Max. objects",P_="This field is required.",G_="The entered value must be >= 0.",[["class","cd-col-form",4,"cdFormLoading"],[1,"cd-col-form"],["novalidate","",3,"formGroup"],["frm","ngForm"],[1,"card"],[1,"card-header"],o,[1,"card-body"],[1,"form-group","row"],["for","user_id",1,"cd-col-form-label",3,"ngClass"],_,[1,"cd-col-form-input"],["id","user_id","type","text","formControlName","user_id",1,"form-control",3,"readonly"],["class","invalid-feedback",4,"ngIf"],[1,"cd-col-form-offset"],[1,"custom-control","custom-checkbox"],["id","show_tenant","type","checkbox","formControlName","show_tenant",1,"custom-control-input",3,"readonly","click"],["for","show_tenant",1,"custom-control-label"],n,["class","form-group row",4,"ngIf"],["for","display_name",1,"cd-col-form-label",3,"ngClass"],i,["id","display_name","type","text","formControlName","display_name",1,"form-control"],["for","email",1,"cd-col-form-label"],s,["id","email","type","text","formControlName","email",1,"form-control"],["for","max_buckets_mode",1,"cd-col-form-label"],c,["formControlName","max_buckets_mode","name","max_buckets_mode","id","max_buckets_mode",1,"form-control",3,"change"],["value","-1"],d,["value","0"],E,["value","1"],g,["id","suspended","type","checkbox","formControlName","suspended",1,"custom-control-input"],["for","suspended",1,"custom-control-label"],C,[4,"ngIf"],b,["id","user_quota_enabled","type","checkbox","formControlName","user_quota_enabled",1,"custom-control-input"],["for","user_quota_enabled",1,"custom-control-label"],P,G,["id","bucket_quota_enabled","type","checkbox","formControlName","bucket_quota_enabled",1,"custom-control-input"],["for","bucket_quota_enabled",1,"custom-control-label"],N,[1,"card-footer"],["wrappingClass","text-right",3,"form","submitText","submitActionEvent"],[1,"invalid-feedback"],p,U,W,["for","tenant",1,"cd-col-form-label"],Z,["id","tenant","type","text","formControlName","tenant","autofocus","",1,"form-control",3,"readonly"],$,h,I,v,F,[1,"cd-col-form-label"],["id","max_buckets","type","number","formControlName","max_buckets","min","1",1,"form-control"],T,x,y,["id","generate_key","type","checkbox","formControlName","generate_key",1,"custom-control-input"],["for","generate_key",1,"custom-control-label"],S,["for","access_key",1,"cd-col-form-label","required"],_e,[1,"input-group"],["id","access_key","type","password","formControlName","access_key",1,"form-control"],[1,"input-group-append"],["type","button","cdPasswordButton","access_key",1,"btn","btn-light"],["source","access_key"],te,["for","secret_key",1,"cd-col-form-label","required"],ne,["id","secret_key","type","password","formControlName","secret_key",1,"form-control"],["type","button","cdPasswordButton","secret_key",1,"btn","btn-light"],["source","secret_key"],oe,ie,[1,"row"],["class","no-border",4,"ngIf"],[4,"ngFor","ngForOf"],[1,"col-12"],["type","button",1,"btn","btn-light","float-right","tc_addSubuserButton",3,"click"],[3,"ngClass"],se,[1,"help-block"],[1,"no-border"],[1,"form-text","text-muted"],ae,[1,"input-group-prepend"],[1,"input-group-text"],["type","text","readonly","",1,"cd-form-control",3,"value"],[1,"input-group-prepend","border-left-0","border-right-0"],["type","button","ngbTooltip",re,1,"btn","btn-light","tc_showSubuserButton",3,"click"],["type","button","ngbTooltip",le,1,"btn","btn-light","tc_deleteSubuserButton",3,"click"],ce,de,["type","button",1,"btn","btn-light","float-right","tc_addS3KeyButton",3,"click"],ue,Re,R,["type","button","ngbTooltip",__,1,"btn","btn-light","tc_showS3KeyButton",3,"click"],["type","button","ngbTooltip",t_,1,"btn","btn-light","tc_deleteS3KeyButton",3,"click"],n_,["type","button","ngbTooltip",o_,1,"btn","btn-light","tc_showSwiftKeyButton",3,"click"],i_,["type","button","ngbTooltip",s_,"triggers","pointerenter:pointerleave",1,"btn","btn-light","float-right","tc_addCapButton",3,"disabled","disableTooltip","click"],a_,r_,["type","button","ngbTooltip",l_,1,"btn","btn-light","tc_editCapButton",3,"click"],["type","button","ngbTooltip",c_,1,"btn","btn-light","tc_deleteCapButton",3,"click"],["id","user_quota_max_size_unlimited","type","checkbox","formControlName","user_quota_max_size_unlimited",1,"custom-control-input"],["for","user_quota_max_size_unlimited",1,"custom-control-label"],d_,["for","user_quota_max_size",1,"cd-col-form-label","required"],u_,["id","user_quota_max_size","type","text","formControlName","user_quota_max_size","cdDimlessBinary","",1,"form-control"],R_,g_,["id","user_quota_max_objects_unlimited","type","checkbox","formControlName","user_quota_max_objects_unlimited",1,"custom-control-input"],["for","user_quota_max_objects_unlimited",1,"custom-control-label"],E_,["for","user_quota_max_objects",1,"cd-col-form-label","required"],T_,["id","user_quota_max_objects","type","number","formControlName","user_quota_max_objects","min","0",1,"form-control"],S_,f_,["id","bucket_quota_max_size_unlimited","type","checkbox","formControlName","bucket_quota_max_size_unlimited",1,"custom-control-input"],["for","bucket_quota_max_size_unlimited",1,"custom-control-label"],C_,["for","bucket_quota_max_size",1,"cd-col-form-label","required"],p_,["id","bucket_quota_max_size","type","text","formControlName","bucket_quota_max_size","cdDimlessBinary","",1,"form-control"],M_,m_,["id","bucket_quota_max_objects_unlimited","type","checkbox","formControlName","bucket_quota_max_objects_unlimited",1,"custom-control-input"],["for","bucket_quota_max_objects_unlimited",1,"custom-control-label"],A_,["for","bucket_quota_max_objects",1,"cd-col-form-label","required"],b_,["id","bucket_quota_max_objects","type","number","formControlName","bucket_quota_max_objects","min","0",1,"form-control"],P_,G_]},template:function(_,n){1&_&&e.YNc(0,To,89,41,"div",0),2&_&&e.Q6J("cdFormLoading",n.loading)},directives:[Fe.y,a._Y,a.JL,V.V,a.sg,H.P,f.mk,q.o,a.Fj,X.b,a.JJ,a.u,f.O5,a.Wl,a.EJ,a.YN,a.Kr,ee.p,j.U,a.wV,a.qQ,Ce.C,pe.s,f.sg,M._L,bn.Q],pipes:[f.rS,K.m,Ue.i],styles:[""]}),t})();var je=r(99466),So=r(78877),fo=r(86969);const Co=["accessKeyTpl"],po=["secretKeyTpl"];function Mo(t,o){if(1&t&&(e.TgZ(0,"tr"),e.TgZ(1,"td",15),e.SDv(2,20),e.qZA(),e.TgZ(3,"td"),e._uU(4),e.qZA(),e.qZA()),2&t){const _=e.oxw(4);e.xp6(4),e.Oqu(_.user.email)}}function mo(t,o){if(1&t&&(e.TgZ(0,"div"),e._uU(1),e.qZA()),2&t){const _=o.$implicit;e.xp6(1),e.AsE(" ",_.id," (",_.permissions,") ")}}function Ao(t,o){if(1&t&&(e.TgZ(0,"tr"),e.TgZ(1,"td",15),e.SDv(2,21),e.qZA(),e.TgZ(3,"td"),e.YNc(4,mo,2,2,"div",22),e.qZA(),e.qZA()),2&t){const _=e.oxw(4);e.xp6(4),e.Q6J("ngForOf",_.user.subusers)}}function bo(t,o){if(1&t&&(e.TgZ(0,"div"),e._uU(1),e.qZA()),2&t){const _=o.$implicit;e.xp6(1),e.AsE(" ",_.type," (",_.perm,") ")}}function Po(t,o){if(1&t&&(e.TgZ(0,"tr"),e.TgZ(1,"td",15),e.SDv(2,23),e.qZA(),e.TgZ(3,"td"),e.YNc(4,bo,2,2,"div",22),e.qZA(),e.qZA()),2&t){const _=e.oxw(4);e.xp6(4),e.Q6J("ngForOf",_.user.caps)}}function Go(t,o){if(1&t&&(e.TgZ(0,"tr"),e.TgZ(1,"td",15),e.SDv(2,24),e.qZA(),e.TgZ(3,"td"),e._uU(4),e.ALo(5,"join"),e.qZA(),e.qZA()),2&t){const _=e.oxw(4);e.xp6(4),e.Oqu(e.lcZ(5,1,_.user.mfa_ids))}}function No(t,o){1&t&&(e.TgZ(0,"td"),e._uU(1,"-"),e.qZA())}function Oo(t,o){1&t&&(e.TgZ(0,"td"),e.SDv(1,29),e.qZA())}function Uo(t,o){if(1&t&&(e.TgZ(0,"td"),e._uU(1),e.ALo(2,"dimlessBinary"),e.qZA()),2&t){const _=e.oxw(5);e.xp6(1),e.hij(" ",e.lcZ(2,1,_.user.user_quota.max_size)," ")}}function Wo(t,o){1&t&&(e.TgZ(0,"td"),e._uU(1,"-"),e.qZA())}function Zo(t,o){1&t&&(e.TgZ(0,"td"),e.SDv(1,30),e.qZA())}function $o(t,o){if(1&t&&(e.TgZ(0,"td"),e._uU(1),e.qZA()),2&t){const _=e.oxw(5);e.xp6(1),e.hij(" ",_.user.user_quota.max_objects," ")}}function ho(t,o){if(1&t&&(e.TgZ(0,"div"),e.TgZ(1,"legend"),e.SDv(2,25),e.qZA(),e.TgZ(3,"table",9),e.TgZ(4,"tbody"),e.TgZ(5,"tr"),e.TgZ(6,"td",10),e.SDv(7,26),e.qZA(),e.TgZ(8,"td",12),e._uU(9),e.ALo(10,"booleanText"),e.qZA(),e.qZA(),e.TgZ(11,"tr"),e.TgZ(12,"td",15),e.SDv(13,27),e.qZA(),e.YNc(14,No,2,0,"td",0),e.YNc(15,Oo,2,0,"td",0),e.YNc(16,Uo,3,3,"td",0),e.qZA(),e.TgZ(17,"tr"),e.TgZ(18,"td",15),e.SDv(19,28),e.qZA(),e.YNc(20,Wo,2,0,"td",0),e.YNc(21,Zo,2,0,"td",0),e.YNc(22,$o,2,1,"td",0),e.qZA(),e.qZA(),e.qZA(),e.qZA()),2&t){const _=e.oxw(4);e.xp6(9),e.Oqu(e.lcZ(10,7,_.user.user_quota.enabled)),e.xp6(5),e.Q6J("ngIf",!_.user.user_quota.enabled),e.xp6(1),e.Q6J("ngIf",_.user.user_quota.enabled&&_.user.user_quota.max_size<=-1),e.xp6(1),e.Q6J("ngIf",_.user.user_quota.enabled&&_.user.user_quota.max_size>-1),e.xp6(4),e.Q6J("ngIf",!_.user.user_quota.enabled),e.xp6(1),e.Q6J("ngIf",_.user.user_quota.enabled&&_.user.user_quota.max_objects<=-1),e.xp6(1),e.Q6J("ngIf",_.user.user_quota.enabled&&_.user.user_quota.max_objects>-1)}}function Io(t,o){1&t&&(e.TgZ(0,"td"),e._uU(1,"-"),e.qZA())}function vo(t,o){1&t&&(e.TgZ(0,"td"),e.SDv(1,35),e.qZA())}function Fo(t,o){if(1&t&&(e.TgZ(0,"td"),e._uU(1),e.ALo(2,"dimlessBinary"),e.qZA()),2&t){const _=e.oxw(5);e.xp6(1),e.hij(" ",e.lcZ(2,1,_.user.bucket_quota.max_size)," ")}}function Lo(t,o){1&t&&(e.TgZ(0,"td"),e._uU(1,"-"),e.qZA())}function Do(t,o){1&t&&(e.TgZ(0,"td"),e.SDv(1,36),e.qZA())}function xo(t,o){if(1&t&&(e.TgZ(0,"td"),e._uU(1),e.qZA()),2&t){const _=e.oxw(5);e.xp6(1),e.hij(" ",_.user.bucket_quota.max_objects," ")}}function yo(t,o){if(1&t&&(e.TgZ(0,"div"),e.TgZ(1,"legend"),e.SDv(2,31),e.qZA(),e.TgZ(3,"table",9),e.TgZ(4,"tbody"),e.TgZ(5,"tr"),e.TgZ(6,"td",10),e.SDv(7,32),e.qZA(),e.TgZ(8,"td",12),e._uU(9),e.ALo(10,"booleanText"),e.qZA(),e.qZA(),e.TgZ(11,"tr"),e.TgZ(12,"td",15),e.SDv(13,33),e.qZA(),e.YNc(14,Io,2,0,"td",0),e.YNc(15,vo,2,0,"td",0),e.YNc(16,Fo,3,3,"td",0),e.qZA(),e.TgZ(17,"tr"),e.TgZ(18,"td",15),e.SDv(19,34),e.qZA(),e.YNc(20,Lo,2,0,"td",0),e.YNc(21,Do,2,0,"td",0),e.YNc(22,xo,2,1,"td",0),e.qZA(),e.qZA(),e.qZA(),e.qZA()),2&t){const _=e.oxw(4);e.xp6(9),e.Oqu(e.lcZ(10,7,_.user.bucket_quota.enabled)),e.xp6(5),e.Q6J("ngIf",!_.user.bucket_quota.enabled),e.xp6(1),e.Q6J("ngIf",_.user.bucket_quota.enabled&&_.user.bucket_quota.max_size<=-1),e.xp6(1),e.Q6J("ngIf",_.user.bucket_quota.enabled&&_.user.bucket_quota.max_size>-1),e.xp6(4),e.Q6J("ngIf",!_.user.bucket_quota.enabled),e.xp6(1),e.Q6J("ngIf",_.user.bucket_quota.enabled&&_.user.bucket_quota.max_objects<=-1),e.xp6(1),e.Q6J("ngIf",_.user.bucket_quota.enabled&&_.user.bucket_quota.max_objects>-1)}}function qo(t,o){if(1&t&&(e.TgZ(0,"div"),e.TgZ(1,"table",9),e.TgZ(2,"tbody"),e.TgZ(3,"tr"),e.TgZ(4,"td",10),e.SDv(5,11),e.qZA(),e.TgZ(6,"td",12),e._uU(7),e.qZA(),e.qZA(),e.TgZ(8,"tr"),e.TgZ(9,"td",10),e.SDv(10,13),e.qZA(),e.TgZ(11,"td",12),e._uU(12),e.qZA(),e.qZA(),e.TgZ(13,"tr"),e.TgZ(14,"td",10),e.SDv(15,14),e.qZA(),e.TgZ(16,"td",12),e._uU(17),e.qZA(),e.qZA(),e.TgZ(18,"tr"),e.TgZ(19,"td",15),e.SDv(20,16),e.qZA(),e.TgZ(21,"td"),e._uU(22),e.qZA(),e.qZA(),e.YNc(23,Mo,5,1,"tr",0),e.TgZ(24,"tr"),e.TgZ(25,"td",15),e.SDv(26,17),e.qZA(),e.TgZ(27,"td"),e._uU(28),e.ALo(29,"booleanText"),e.qZA(),e.qZA(),e.TgZ(30,"tr"),e.TgZ(31,"td",15),e.SDv(32,18),e.qZA(),e.TgZ(33,"td"),e._uU(34),e.ALo(35,"booleanText"),e.qZA(),e.qZA(),e.TgZ(36,"tr"),e.TgZ(37,"td",15),e.SDv(38,19),e.qZA(),e.TgZ(39,"td"),e._uU(40),e.ALo(41,"map"),e.qZA(),e.qZA(),e.YNc(42,Ao,5,1,"tr",0),e.YNc(43,Po,5,1,"tr",0),e.YNc(44,Go,6,3,"tr",0),e.qZA(),e.qZA(),e.YNc(45,ho,23,9,"div",0),e.YNc(46,yo,23,9,"div",0),e.qZA()),2&t){const _=e.oxw(3);e.xp6(7),e.Oqu(_.user.tenant),e.xp6(5),e.Oqu(_.user.user_id),e.xp6(5),e.Oqu(_.user.uid),e.xp6(5),e.Oqu(_.user.display_name),e.xp6(1),e.Q6J("ngIf",null==_.user.email?null:_.user.email.length),e.xp6(5),e.Oqu(e.lcZ(29,13,_.user.suspended)),e.xp6(6),e.Oqu(e.lcZ(35,15,"true"===_.user.system)),e.xp6(6),e.Oqu(e.xi3(41,17,_.user.max_buckets,_.maxBucketsMap)),e.xp6(2),e.Q6J("ngIf",_.user.subusers&&_.user.subusers.length),e.xp6(1),e.Q6J("ngIf",_.user.caps&&_.user.caps.length),e.xp6(1),e.Q6J("ngIf",null==_.user.mfa_ids?null:_.user.mfa_ids.length),e.xp6(1),e.Q6J("ngIf",_.user.user_quota),e.xp6(1),e.Q6J("ngIf",_.user.bucket_quota)}}function wo(t,o){if(1&t&&e.YNc(0,qo,47,20,"div",0),2&t){const _=e.oxw(2);e.Q6J("ngIf",_.user)}}const ko=function(t){return[t]};function Bo(t,o){if(1&t){const _=e.EpF();e.TgZ(0,"cd-table",39),e.NdJ("updateSelection",function(i){return e.CHM(_),e.oxw(3).updateKeysSelection(i)}),e.TgZ(1,"div",40),e.TgZ(2,"div",41),e.TgZ(3,"button",42),e.NdJ("click",function(){return e.CHM(_),e.oxw(3).showKeyModal()}),e._UZ(4,"i",43),e.ynx(5),e.SDv(6,44),e.BQk(),e.qZA(),e.qZA(),e.qZA(),e.qZA()}if(2&t){const _=e.oxw(3);e.Q6J("data",_.keys)("columns",_.keysColumns),e.xp6(3),e.Q6J("disabled",!_.keysSelection.hasSingleSelection),e.xp6(1),e.Q6J("ngClass",e.VKq(4,ko,_.icons.show))}}function Ho(t,o){1&t&&(e.TgZ(0,"li",37),e.TgZ(1,"a",4),e.SDv(2,38),e.qZA(),e.YNc(3,Bo,7,6,"ng-template",6),e.qZA())}function Xo(t,o){if(1&t&&(e.ynx(0),e.TgZ(1,"ul",1,2),e.TgZ(3,"li",3),e.TgZ(4,"a",4),e.SDv(5,5),e.qZA(),e.YNc(6,wo,1,1,"ng-template",6),e.qZA(),e.YNc(7,Ho,4,0,"li",7),e.qZA(),e._UZ(8,"div",8),e.BQk()),2&t){const _=e.MAs(2),n=e.oxw();e.xp6(7),e.Q6J("ngIf",n.keys.length),e.xp6(1),e.Q6J("ngbNavOutlet",_)}}let Ko=(()=>{class t{constructor(_,n){this.rgwUserService=_,this.modalService=n,this.keys=[],this.keysColumns=[],this.keysSelection=new Pe.r,this.icons=D.P}ngOnInit(){this.keysColumns=[{name:"Username",prop:"username",flexGrow:1},{name:"Type",prop:"type",flexGrow:1}],this.maxBucketsMap={"-1":"Disabled",0:"Unlimited"}}ngOnChanges(){this.selection&&(this.user=this.selection,this.user.subusers=u().sortBy(this.user.subusers,"id"),this.user.caps=u().sortBy(this.user.caps,"type"),this.rgwUserService.getQuota(this.user.uid).subscribe(_=>{u().extend(this.user,_)}),this.keys=[],this.user.keys&&this.user.keys.forEach(_=>{this.keys.push({id:this.keys.length+1,type:"S3",username:_.user,ref:_})}),this.user.swift_keys&&this.user.swift_keys.forEach(_=>{this.keys.push({id:this.keys.length+1,type:"Swift",username:_.user,ref:_})}),this.keys=u().sortBy(this.keys,"user"))}updateKeysSelection(_){this.keysSelection=_}showKeyModal(){const _=this.keysSelection.first(),n=this.modalService.show("S3"===_.type?Qe:Ye);switch(_.type){case"S3":n.componentInstance.setViewing(),n.componentInstance.setValues(_.ref.user,_.ref.access_key,_.ref.secret_key);break;case"Swift":n.componentInstance.setValues(_.ref.user,_.ref.secret_key)}}}return t.\u0275fac=function(_){return new(_||t)(e.Y36(O),e.Y36(Te.Z))},t.\u0275cmp=e.Xpm({type:t,selectors:[["cd-rgw-user-details"]],viewQuery:function(_,n){if(1&_&&(e.Gf(Co,5),e.Gf(po,5)),2&_){let i;e.iGM(i=e.CRH())&&(n.accessKeyTpl=i.first),e.iGM(i=e.CRH())&&(n.secretKeyTpl=i.first)}},inputs:{selection:"selection"},features:[e.TTD],decls:1,vars:1,consts:function(){let o,_,n,i,s,c,d,E,g,C,b,P,G,N,p,U,W,Z,$,h,I,v,F,T,x,y;return o="Details",_="Tenant",n="User ID",i="Username",s="Full name",c="Suspended",d="System",E="Maximum buckets",g="Email address",C="Subusers",b="Capabilities",P="MFAs(Id)",G="User quota",N="Enabled",p="Maximum size",U="Maximum objects",W="Unlimited",Z="Unlimited",$="Bucket quota",h="Enabled",I="Maximum size",v="Maximum objects",F="Unlimited",T="Unlimited",x="Keys",y="Show",[[4,"ngIf"],["ngbNav","","cdStatefulTab","rgw-user-details",1,"nav-tabs"],["nav","ngbNav"],["ngbNavItem","details"],["ngbNavLink",""],o,["ngbNavContent",""],["ngbNavItem","keys",4,"ngIf"],[3,"ngbNavOutlet"],[1,"table","table-striped","table-bordered"],[1,"bold","w-25"],_,[1,"w-75"],n,i,[1,"bold"],s,c,d,E,g,C,[4,"ngFor","ngForOf"],b,P,G,N,p,U,W,Z,$,h,I,v,F,T,["ngbNavItem","keys"],x,["columnMode","flex","selectionType","multi","forceIdentifier","true",3,"data","columns","updateSelection"],[1,"table-actions"],["dropdown","",1,"btn-group"],["type","button",1,"btn","btn-accent",3,"disabled","click"],[3,"ngClass"],y]},template:function(_,n){1&_&&e.YNc(0,Xo,9,2,"ng-container",0),2&_&&e.Q6J("ngIf",n.selection)},directives:[f.O5,M.Pz,Xe.m,M.nv,M.Vx,M.uN,M.tO,f.sg,z.a,q.o,f.mk],pipes:[Be.T,So.b,fo.A,qe.$],styles:[""]}),t})();const zo=["userSizeTpl"],Qo=["userObjectTpl"];function Yo(t,o){if(1&t&&e._UZ(0,"cd-usage-bar",8),2&t){const _=e.oxw().row;e.Q6J("total",_.user_quota.max_size)("used",_.stats.size_actual)}}function Jo(t,o){1&t&&e.SDv(0,9)}function Vo(t,o){if(1&t&&(e.YNc(0,Yo,1,2,"cd-usage-bar",6),e.YNc(1,Jo,1,0,"ng-template",null,7,e.W1O)),2&t){const _=o.row,n=e.MAs(2);e.Q6J("ngIf",_.user_quota.max_size>0&&_.user_quota.enabled)("ngIfElse",n)}}function jo(t,o){if(1&t&&e._UZ(0,"cd-usage-bar",12),2&t){const _=e.oxw().row;e.Q6J("total",_.user_quota.max_objects)("used",_.stats.num_objects)("isBinary",!1)}}function ei(t,o){1&t&&e.SDv(0,13)}function _i(t,o){if(1&t&&(e.YNc(0,jo,1,3,"cd-usage-bar",10),e.YNc(1,ei,1,0,"ng-template",null,11,e.W1O)),2&t){const _=o.row,n=e.MAs(2);e.Q6J("ngIf",_.user_quota.max_objects>0&&_.user_quota.enabled)("ngIfElse",n)}}let ni=(()=>{class t extends be.o{constructor(_,n,i,s,c,d){super(d),this.authStorageService=_,this.rgwUserService=n,this.modalService=i,this.urlBuilder=s,this.actionLabels=c,this.ngZone=d,this.columns=[],this.users=[],this.selection=new Pe.r}ngOnInit(){this.permission=this.authStorageService.getPermissions().rgw,this.columns=[{name:"Username",prop:"uid",flexGrow:1},{name:"Tenant",prop:"tenant",flexGrow:1},{name:"Full name",prop:"display_name",flexGrow:1},{name:"Email address",prop:"email",flexGrow:1},{name:"Suspended",prop:"suspended",flexGrow:1,cellClass:"text-center",cellTransformation:je.e.checkIcon},{name:"Max. buckets",prop:"max_buckets",flexGrow:1,cellTransformation:je.e.map,customTemplateConfig:{"-1":"Disabled",0:"Unlimited"}},{name:"Capacity Limit %",prop:"size_usage",cellTemplate:this.userSizeTpl,flexGrow:.8},{name:"Object Limit %",prop:"object_usage",cellTemplate:this.userObjectTpl,flexGrow:.8}];const _=()=>this.selection.first()&&`${encodeURIComponent(this.selection.first().uid)}`;this.tableActions=[{permission:"create",icon:D.P.add,routerLink:()=>this.urlBuilder.getCreate(),name:this.actionLabels.CREATE,canBePrimary:c=>!c.hasSelection},{permission:"update",icon:D.P.edit,routerLink:()=>this.urlBuilder.getEdit(_()),name:this.actionLabels.EDIT},{permission:"delete",icon:D.P.destroy,click:()=>this.deleteAction(),disable:()=>!this.selection.hasSelection,name:this.actionLabels.DELETE,canBePrimary:c=>c.hasMultiSelection}],this.setTableRefreshTimeout()}getUserList(_){this.setTableRefreshTimeout(),this.rgwUserService.list().subscribe(n=>{this.users=n},()=>{_.error()})}updateSelection(_){this.selection=_}deleteAction(){this.modalService.show(ye.M,{itemDescription:this.selection.hasSingleSelection?"user":"users",itemNames:this.selection.selected.map(_=>_.uid),submitActionObservable:()=>new xe.y(_=>{(0,Y.D)(this.selection.selected.map(n=>this.rgwUserService.delete(n.uid))).subscribe({error:n=>{_.error(n),this.table.refreshBtn()},complete:()=>{_.complete(),this.table.refreshBtn()}})})})}}return t.\u0275fac=function(_){return new(_||t)(e.Y36(Ee.j),e.Y36(O),e.Y36(Te.Z),e.Y36(Q.F),e.Y36(A.p4),e.Y36(e.R0b))},t.\u0275cmp=e.Xpm({type:t,selectors:[["cd-rgw-user-list"]],viewQuery:function(_,n){if(1&_&&(e.Gf(z.a,7),e.Gf(zo,7),e.Gf(Qo,7)),2&_){let i;e.iGM(i=e.CRH())&&(n.table=i.first),e.iGM(i=e.CRH())&&(n.userSizeTpl=i.first),e.iGM(i=e.CRH())&&(n.userObjectTpl=i.first)}},features:[e._Bn([{provide:Q.F,useValue:new Q.F("rgw/user")}]),e.qOj],decls:8,vars:9,consts:function(){let o,_;return o="No Limit",_="No Limit",[["columnMode","flex","selectionType","multiClick","identifier","uid",3,"autoReload","data","columns","hasDetails","status","setExpandedRow","updateSelection","fetchData"],["table",""],[1,"table-actions",3,"permission","selection","tableActions"],["cdTableDetail","",3,"selection"],["userSizeTpl",""],["userObjectTpl",""],[3,"total","used",4,"ngIf","ngIfElse"],["noSizeQuota",""],[3,"total","used"],o,[3,"total","used","isBinary",4,"ngIf","ngIfElse"],["noObjectQuota",""],[3,"total","used","isBinary"],_]},template:function(_,n){1&_&&(e.TgZ(0,"cd-table",0,1),e.NdJ("setExpandedRow",function(s){return n.setExpandedRow(s)})("updateSelection",function(s){return n.updateSelection(s)})("fetchData",function(s){return n.getUserList(s)}),e._UZ(2,"cd-table-actions",2),e._UZ(3,"cd-rgw-user-details",3),e.qZA(),e.YNc(4,Vo,3,2,"ng-template",null,4,e.W1O),e.YNc(6,_i,3,2,"ng-template",null,5,e.W1O)),2&_&&(e.Q6J("autoReload",!1)("data",n.users)("columns",n.columns)("hasDetails",!0)("status",n.tableStatus),e.xp6(2),e.Q6J("permission",n.permission)("selection",n.selection)("tableActions",n.tableActions),e.xp6(1),e.Q6J("selection",n.expandedRow))},directives:[z.a,ke.K,Ko,f.O5,He.O],styles:[""]}),t})(),e_=(()=>{class t{}return t.\u0275fac=function(_){return new(_||t)},t.\u0275mod=e.oAB({type:t}),t.\u0275inj=e.cJS({imports:[[f.ez,N_.m,a.u5,a.UX,O_.B,M.Oz,w.Bz,M.HK,Ue.b]]}),t})();const oi=[{path:""},{path:"daemon",component:kt,data:{breadcrumbs:"Daemons"}},{path:"user",data:{breadcrumbs:"Users"},children:[{path:"",component:ni},{path:A.MQ.CREATE,component:Ve,data:{breadcrumbs:A.Qn.CREATE}},{path:`${A.MQ.EDIT}/:uid`,component:Ve,data:{breadcrumbs:A.Qn.EDIT}}]},{path:"bucket",data:{breadcrumbs:"Buckets"},children:[{path:"",component:Ot},{path:A.MQ.CREATE,component:De,data:{breadcrumbs:A.Qn.CREATE}},{path:`${A.MQ.EDIT}/:bid`,component:De,data:{breadcrumbs:A.Qn.EDIT}}]}];let ii=(()=>{class t{}return t.\u0275fac=function(_){return new(_||t)},t.\u0275mod=e.oAB({type:t}),t.\u0275inj=e.cJS({imports:[[e_,w.Bz.forChild(oi)]]}),t})()}}]); \ No newline at end of file diff --git a/src/pybind/mgr/dashboard/frontend/dist/en-US/3rdpartylicenses.txt b/src/pybind/mgr/dashboard/frontend/dist/en-US/3rdpartylicenses.txt new file mode 100644 index 000000000..0f40b833c --- /dev/null +++ b/src/pybind/mgr/dashboard/frontend/dist/en-US/3rdpartylicenses.txt @@ -0,0 +1,3508 @@ +@angular/animations +MIT + +@angular/common +MIT + +@angular/core +MIT + +@angular/forms +MIT + +@angular/platform-browser +MIT + +@angular/router +MIT + +@babel/runtime +MIT +MIT License + +Copyright (c) 2014-present Sebastian McKenzie and other contributors + +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE +LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION +WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + + +@babel/runtime-corejs3 +MIT +MIT License + +Copyright (c) 2014-present Sebastian McKenzie and other contributors + +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE +LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION +WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + + +@braintree/sanitize-url +MIT +MIT License + +Copyright (c) 2017 Braintree + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + +@circlon/angular-tree-component +MIT +The MIT License (MIT) + +Copyright (c) 2020 Circlon Group + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + +@juggle/resize-observer +Apache-2.0 + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright 2019 JUGGLE LTD + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + + +@ng-bootstrap/ng-bootstrap +MIT +The MIT License (MIT) + +Copyright (c) 2015-2018 Angular ng-bootstrap team + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + + +@swimlane/ngx-datatable +MIT +(The MIT License) + +Copyright (c) 2019 Swimlane + +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +'Software'), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. +IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY +CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, +TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE +SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + + +async-mutex +MIT +The MIT License (MIT) + +Copyright (c) 2016 Christian Speckner + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + + +autolinker +MIT +The MIT License (MIT) + +Copyright (c) 2014 Gregory Jacobs (http://greg-jacobs.com) + +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE +LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION +WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +balanced-match +MIT +(MIT) + +Copyright (c) 2013 Julian Gruber <julian@juliangruber.com> + +Permission is hereby granted, free of charge, to any person obtaining a copy of +this software and associated documentation files (the "Software"), to deal in +the Software without restriction, including without limitation the rights to +use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies +of the Software, and to permit persons to whom the Software is furnished to do +so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + +base64-js +MIT +The MIT License (MIT) + +Copyright (c) 2014 Jameson Little + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + + +brace-expansion +MIT +MIT License + +Copyright (c) 2013 Julian Gruber + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + +call-bind +MIT +MIT License + +Copyright (c) 2020 Jordan Harband + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + +can-use-dom +MIT +The MIT License (MIT) + +Copyright (c) 2015 Kiran Abburi + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + + +chart.js +MIT +The MIT License (MIT) + +Copyright (c) 2018 Chart.js Contributors + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + + +classnames +MIT +The MIT License (MIT) + +Copyright (c) 2018 Jed Watson + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + +concat-map +MIT +This software is released under the MIT license: + +Permission is hereby granted, free of charge, to any person obtaining a copy of +this software and associated documentation files (the "Software"), to deal in +the Software without restriction, including without limitation the rights to +use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of +the Software, and to permit persons to whom the Software is furnished to do so, +subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS +FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR +COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER +IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + + +cookie +MIT +(The MIT License) + +Copyright (c) 2012-2014 Roman Shtylman +Copyright (c) 2015 Douglas Christopher Wilson + +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +'Software'), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. +IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY +CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, +TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE +SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + + + +copy-to-clipboard +MIT +MIT License + +Copyright (c) 2017 sudodoki + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + +core-js +MIT +Copyright (c) 2014-2022 Denis Pushkarev + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + + +core-js-pure +MIT +Copyright (c) 2014-2022 Denis Pushkarev + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + + +cross-fetch +MIT +The MIT License (MIT) + +Copyright (c) 2017 Leonardo Quixadá + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + +css.escape +MIT +Copyright Mathias Bynens + +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE +LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION +WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + + +deepmerge +MIT +The MIT License (MIT) + +Copyright (c) 2012 James Halliday, Josh Duff, and other contributors + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + + +detect-browser +MIT +The MIT License (MIT) + +Copyright (c) 2019 Damon Oehlman + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + +dompurify +(MPL-2.0 OR Apache-2.0) +DOMPurify +Copyright 2015 Mario Heiderich + +DOMPurify is free software; you can redistribute it and/or modify it under the +terms of either: + +a) the Apache License Version 2.0, or +b) the Mozilla Public License Version 2.0 + +----------------------------------------------------------------------------- + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + +----------------------------------------------------------------------------- +Mozilla Public License, version 2.0 + +1. Definitions + +1.1. “Contributor” + + means each individual or legal entity that creates, contributes to the + creation of, or owns Covered Software. + +1.2. “Contributor Version” + + means the combination of the Contributions of others (if any) used by a + Contributor and that particular Contributor’s Contribution. + +1.3. “Contribution” + + means Covered Software of a particular Contributor. + +1.4. “Covered Software” + + means Source Code Form to which the initial Contributor has attached the + notice in Exhibit A, the Executable Form of such Source Code Form, and + Modifications of such Source Code Form, in each case including portions + thereof. + +1.5. “Incompatible With Secondary Licenses” + means + + a. that the initial Contributor has attached the notice described in + Exhibit B to the Covered Software; or + + b. that the Covered Software was made available under the terms of version + 1.1 or earlier of the License, but not also under the terms of a + Secondary License. + +1.6. “Executable Form” + + means any form of the work other than Source Code Form. + +1.7. “Larger Work” + + means a work that combines Covered Software with other material, in a separate + file or files, that is not Covered Software. + +1.8. “License” + + means this document. + +1.9. “Licensable” + + means having the right to grant, to the maximum extent possible, whether at the + time of the initial grant or subsequently, any and all of the rights conveyed by + this License. + +1.10. “Modifications” + + means any of the following: + + a. any file in Source Code Form that results from an addition to, deletion + from, or modification of the contents of Covered Software; or + + b. any new file in Source Code Form that contains any Covered Software. + +1.11. “Patent Claims” of a Contributor + + means any patent claim(s), including without limitation, method, process, + and apparatus claims, in any patent Licensable by such Contributor that + would be infringed, but for the grant of the License, by the making, + using, selling, offering for sale, having made, import, or transfer of + either its Contributions or its Contributor Version. + +1.12. “Secondary License” + + means either the GNU General Public License, Version 2.0, the GNU Lesser + General Public License, Version 2.1, the GNU Affero General Public + License, Version 3.0, or any later versions of those licenses. + +1.13. “Source Code Form” + + means the form of the work preferred for making modifications. + +1.14. “You” (or “Your”) + + means an individual or a legal entity exercising rights under this + License. For legal entities, “You” includes any entity that controls, is + controlled by, or is under common control with You. For purposes of this + definition, “control” means (a) the power, direct or indirect, to cause + the direction or management of such entity, whether by contract or + otherwise, or (b) ownership of more than fifty percent (50%) of the + outstanding shares or beneficial ownership of such entity. + + +2. License Grants and Conditions + +2.1. Grants + + Each Contributor hereby grants You a world-wide, royalty-free, + non-exclusive license: + + a. under intellectual property rights (other than patent or trademark) + Licensable by such Contributor to use, reproduce, make available, + modify, display, perform, distribute, and otherwise exploit its + Contributions, either on an unmodified basis, with Modifications, or as + part of a Larger Work; and + + b. under Patent Claims of such Contributor to make, use, sell, offer for + sale, have made, import, and otherwise transfer either its Contributions + or its Contributor Version. + +2.2. Effective Date + + The licenses granted in Section 2.1 with respect to any Contribution become + effective for each Contribution on the date the Contributor first distributes + such Contribution. + +2.3. Limitations on Grant Scope + + The licenses granted in this Section 2 are the only rights granted under this + License. No additional rights or licenses will be implied from the distribution + or licensing of Covered Software under this License. Notwithstanding Section + 2.1(b) above, no patent license is granted by a Contributor: + + a. for any code that a Contributor has removed from Covered Software; or + + b. for infringements caused by: (i) Your and any other third party’s + modifications of Covered Software, or (ii) the combination of its + Contributions with other software (except as part of its Contributor + Version); or + + c. under Patent Claims infringed by Covered Software in the absence of its + Contributions. + + This License does not grant any rights in the trademarks, service marks, or + logos of any Contributor (except as may be necessary to comply with the + notice requirements in Section 3.4). + +2.4. Subsequent Licenses + + No Contributor makes additional grants as a result of Your choice to + distribute the Covered Software under a subsequent version of this License + (see Section 10.2) or under the terms of a Secondary License (if permitted + under the terms of Section 3.3). + +2.5. Representation + + Each Contributor represents that the Contributor believes its Contributions + are its original creation(s) or it has sufficient rights to grant the + rights to its Contributions conveyed by this License. + +2.6. Fair Use + + This License is not intended to limit any rights You have under applicable + copyright doctrines of fair use, fair dealing, or other equivalents. + +2.7. Conditions + + Sections 3.1, 3.2, 3.3, and 3.4 are conditions of the licenses granted in + Section 2.1. + + +3. Responsibilities + +3.1. Distribution of Source Form + + All distribution of Covered Software in Source Code Form, including any + Modifications that You create or to which You contribute, must be under the + terms of this License. You must inform recipients that the Source Code Form + of the Covered Software is governed by the terms of this License, and how + they can obtain a copy of this License. You may not attempt to alter or + restrict the recipients’ rights in the Source Code Form. + +3.2. Distribution of Executable Form + + If You distribute Covered Software in Executable Form then: + + a. such Covered Software must also be made available in Source Code Form, + as described in Section 3.1, and You must inform recipients of the + Executable Form how they can obtain a copy of such Source Code Form by + reasonable means in a timely manner, at a charge no more than the cost + of distribution to the recipient; and + + b. You may distribute such Executable Form under the terms of this License, + or sublicense it under different terms, provided that the license for + the Executable Form does not attempt to limit or alter the recipients’ + rights in the Source Code Form under this License. + +3.3. Distribution of a Larger Work + + You may create and distribute a Larger Work under terms of Your choice, + provided that You also comply with the requirements of this License for the + Covered Software. If the Larger Work is a combination of Covered Software + with a work governed by one or more Secondary Licenses, and the Covered + Software is not Incompatible With Secondary Licenses, this License permits + You to additionally distribute such Covered Software under the terms of + such Secondary License(s), so that the recipient of the Larger Work may, at + their option, further distribute the Covered Software under the terms of + either this License or such Secondary License(s). + +3.4. Notices + + You may not remove or alter the substance of any license notices (including + copyright notices, patent notices, disclaimers of warranty, or limitations + of liability) contained within the Source Code Form of the Covered + Software, except that You may alter any license notices to the extent + required to remedy known factual inaccuracies. + +3.5. Application of Additional Terms + + You may choose to offer, and to charge a fee for, warranty, support, + indemnity or liability obligations to one or more recipients of Covered + Software. However, You may do so only on Your own behalf, and not on behalf + of any Contributor. You must make it absolutely clear that any such + warranty, support, indemnity, or liability obligation is offered by You + alone, and You hereby agree to indemnify every Contributor for any + liability incurred by such Contributor as a result of warranty, support, + indemnity or liability terms You offer. You may include additional + disclaimers of warranty and limitations of liability specific to any + jurisdiction. + +4. Inability to Comply Due to Statute or Regulation + + If it is impossible for You to comply with any of the terms of this License + with respect to some or all of the Covered Software due to statute, judicial + order, or regulation then You must: (a) comply with the terms of this License + to the maximum extent possible; and (b) describe the limitations and the code + they affect. Such description must be placed in a text file included with all + distributions of the Covered Software under this License. Except to the + extent prohibited by statute or regulation, such description must be + sufficiently detailed for a recipient of ordinary skill to be able to + understand it. + +5. Termination + +5.1. The rights granted under this License will terminate automatically if You + fail to comply with any of its terms. However, if You become compliant, + then the rights granted under this License from a particular Contributor + are reinstated (a) provisionally, unless and until such Contributor + explicitly and finally terminates Your grants, and (b) on an ongoing basis, + if such Contributor fails to notify You of the non-compliance by some + reasonable means prior to 60 days after You have come back into compliance. + Moreover, Your grants from a particular Contributor are reinstated on an + ongoing basis if such Contributor notifies You of the non-compliance by + some reasonable means, this is the first time You have received notice of + non-compliance with this License from such Contributor, and You become + compliant prior to 30 days after Your receipt of the notice. + +5.2. If You initiate litigation against any entity by asserting a patent + infringement claim (excluding declaratory judgment actions, counter-claims, + and cross-claims) alleging that a Contributor Version directly or + indirectly infringes any patent, then the rights granted to You by any and + all Contributors for the Covered Software under Section 2.1 of this License + shall terminate. + +5.3. In the event of termination under Sections 5.1 or 5.2 above, all end user + license agreements (excluding distributors and resellers) which have been + validly granted by You or Your distributors under this License prior to + termination shall survive termination. + +6. Disclaimer of Warranty + + Covered Software is provided under this License on an “as is” basis, without + warranty of any kind, either expressed, implied, or statutory, including, + without limitation, warranties that the Covered Software is free of defects, + merchantable, fit for a particular purpose or non-infringing. The entire + risk as to the quality and performance of the Covered Software is with You. + Should any Covered Software prove defective in any respect, You (not any + Contributor) assume the cost of any necessary servicing, repair, or + correction. This disclaimer of warranty constitutes an essential part of this + License. No use of any Covered Software is authorized under this License + except under this disclaimer. + +7. Limitation of Liability + + Under no circumstances and under no legal theory, whether tort (including + negligence), contract, or otherwise, shall any Contributor, or anyone who + distributes Covered Software as permitted above, be liable to You for any + direct, indirect, special, incidental, or consequential damages of any + character including, without limitation, damages for lost profits, loss of + goodwill, work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses, even if such party shall have been + informed of the possibility of such damages. This limitation of liability + shall not apply to liability for death or personal injury resulting from such + party’s negligence to the extent applicable law prohibits such limitation. + Some jurisdictions do not allow the exclusion or limitation of incidental or + consequential damages, so this exclusion and limitation may not apply to You. + +8. Litigation + + Any litigation relating to this License may be brought only in the courts of + a jurisdiction where the defendant maintains its principal place of business + and such litigation shall be governed by laws of that jurisdiction, without + reference to its conflict-of-law provisions. Nothing in this Section shall + prevent a party’s ability to bring cross-claims or counter-claims. + +9. Miscellaneous + + This License represents the complete agreement concerning the subject matter + hereof. If any provision of this License is held to be unenforceable, such + provision shall be reformed only to the extent necessary to make it + enforceable. Any law or regulation which provides that the language of a + contract shall be construed against the drafter shall not be used to construe + this License against a Contributor. + + +10. Versions of the License + +10.1. New Versions + + Mozilla Foundation is the license steward. Except as provided in Section + 10.3, no one other than the license steward has the right to modify or + publish new versions of this License. Each version will be given a + distinguishing version number. + +10.2. Effect of New Versions + + You may distribute the Covered Software under the terms of the version of + the License under which You originally received the Covered Software, or + under the terms of any subsequent version published by the license + steward. + +10.3. Modified Versions + + If you create software not governed by this License, and you want to + create a new license for such software, you may create and use a modified + version of this License if you rename the license and remove any + references to the name of the license steward (except to note that such + modified license differs from this License). + +10.4. Distributing Source Code Form that is Incompatible With Secondary Licenses + If You choose to distribute Source Code Form that is Incompatible With + Secondary Licenses under the terms of this version of the License, the + notice described in Exhibit B of this License must be attached. + +Exhibit A - Source Code Form License Notice + + This Source Code Form is subject to the + terms of the Mozilla Public License, v. + 2.0. If a copy of the MPL was not + distributed with this file, You can + obtain one at + http://mozilla.org/MPL/2.0/. + +If it is not possible or desirable to put the notice in a particular file, then +You may include the notice in a location (such as a LICENSE file in a relevant +directory) where a recipient would be likely to look for such a notice. + +You may add additional accurate notices of copyright ownership. + +Exhibit B - “Incompatible With Secondary Licenses” Notice + + This Source Code Form is “Incompatible + With Secondary Licenses”, as defined by + the Mozilla Public License, v. 2.0. + + + +drange +MIT +The MIT License (MIT) + +Copyright (c) 2014 David Tudury + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + +fast-json-patch +MIT +(The MIT License) + +Copyright (c) 2013, 2014, 2020 Joachim Wester + +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +'Software'), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. +IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY +CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, +TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE +SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + + +fault +MIT +(The MIT License) + +Copyright (c) 2015 Titus Wormer + +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +'Software'), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. +IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY +CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, +TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE +SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + + +file-saver +MIT +The MIT License + +Copyright © 2016 [Eli Grey][1]. + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + + [1]: http://eligrey.com + + +format +MIT + +formdata-node +MIT +The MIT License (MIT) + +Copyright (c) 2017-present Nick K. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + +function-bind +MIT +Copyright (c) 2013 Raynos. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + + + +get-intrinsic +MIT +MIT License + +Copyright (c) 2020 Jordan Harband + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + +has +MIT +Copyright (c) 2013 Thiago de Arruda + +Permission is hereby granted, free of charge, to any person +obtaining a copy of this software and associated documentation +files (the "Software"), to deal in the Software without +restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the +Software is furnished to do so, subject to the following +conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES +OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT +HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, +WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING +FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR +OTHER DEALINGS IN THE SOFTWARE. + + +has-symbols +MIT +MIT License + +Copyright (c) 2016 Jordan Harband + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + +highlight.js +BSD-3-Clause +BSD 3-Clause License + +Copyright (c) 2006, Ivan Sagalaev. +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + +* Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. + +* Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + +* Neither the name of the copyright holder nor the names of its + contributors may be used to endorse or promote products derived from + this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE +FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER +CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, +OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +hoist-non-react-statics +BSD-3-Clause +Software License Agreement (BSD License) +======================================== + +Copyright (c) 2015, Yahoo! Inc. All rights reserved. +---------------------------------------------------- + +Redistribution and use of this software in source and binary forms, with or +without modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + * Neither the name of Yahoo! Inc. nor the names of YUI's contributors may be + used to endorse or promote products derived from this software without + specific prior written permission of Yahoo! Inc. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR +ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON +ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +ieee754 +BSD-3-Clause +Copyright 2008 Fair Oaks Labs, Inc. + +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: + +1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. + +3. Neither the name of the copyright holder nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +immutable +MIT +MIT License + +Copyright (c) 2014-present, Facebook, Inc. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + +is-plain-object +MIT +The MIT License (MIT) + +Copyright (c) 2014-2017, Jon Schlinkert. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + + +js-file-download +MIT +Copyright 2017 Kenneth Jiang + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE + + +js-yaml +MIT +(The MIT License) + +Copyright (C) 2011-2015 by Vitaly Puzrin + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + + +lodash +MIT +Copyright OpenJS Foundation and other contributors + +Based on Underscore.js, copyright Jeremy Ashkenas, +DocumentCloud and Investigative Reporters & Editors + +This software consists of voluntary contributions made by many +individuals. For exact contribution history, see the revision history +available at https://github.com/lodash/lodash + +The following license applies to all parts of this software except as +documented below: + +==== + +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE +LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION +WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +==== + +Copyright and related rights for sample code are waived via CC0. Sample +code is defined as all source code displayed within the prose of the +documentation. + +CC0: http://creativecommons.org/publicdomain/zero/1.0/ + +==== + +Files located in the node_modules and vendor directories are externally +maintained libraries used by this software which have their own +licenses; we recommend you read them, as their terms may differ from the +terms above. + + +lodash-es +MIT +Copyright OpenJS Foundation and other contributors + +Based on Underscore.js, copyright Jeremy Ashkenas, +DocumentCloud and Investigative Reporters & Editors + +This software consists of voluntary contributions made by many +individuals. For exact contribution history, see the revision history +available at https://github.com/lodash/lodash + +The following license applies to all parts of this software except as +documented below: + +==== + +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE +LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION +WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +==== + +Copyright and related rights for sample code are waived via CC0. Sample +code is defined as all source code displayed within the prose of the +documentation. + +CC0: http://creativecommons.org/publicdomain/zero/1.0/ + +==== + +Files located in the node_modules and vendor directories are externally +maintained libraries used by this software which have their own +licenses; we recommend you read them, as their terms may differ from the +terms above. + + +lodash.debounce +MIT +Copyright jQuery Foundation and other contributors + +Based on Underscore.js, copyright Jeremy Ashkenas, +DocumentCloud and Investigative Reporters & Editors + +This software consists of voluntary contributions made by many +individuals. For exact contribution history, see the revision history +available at https://github.com/lodash/lodash + +The following license applies to all parts of this software except as +documented below: + +==== + +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE +LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION +WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +==== + +Copyright and related rights for sample code are waived via CC0. Sample +code is defined as all source code displayed within the prose of the +documentation. + +CC0: http://creativecommons.org/publicdomain/zero/1.0/ + +==== + +Files located in the node_modules and vendor directories are externally +maintained libraries used by this software which have their own +licenses; we recommend you read them, as their terms may differ from the +terms above. + + +lodash.memoize +MIT +Copyright jQuery Foundation and other contributors + +Based on Underscore.js, copyright Jeremy Ashkenas, +DocumentCloud and Investigative Reporters & Editors + +This software consists of voluntary contributions made by many +individuals. For exact contribution history, see the revision history +available at https://github.com/lodash/lodash + +The following license applies to all parts of this software except as +documented below: + +==== + +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE +LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION +WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +==== + +Copyright and related rights for sample code are waived via CC0. Sample +code is defined as all source code displayed within the prose of the +documentation. + +CC0: http://creativecommons.org/publicdomain/zero/1.0/ + +==== + +Files located in the node_modules and vendor directories are externally +maintained libraries used by this software which have their own +licenses; we recommend you read them, as their terms may differ from the +terms above. + + +lodash.throttle +MIT +Copyright jQuery Foundation and other contributors + +Based on Underscore.js, copyright Jeremy Ashkenas, +DocumentCloud and Investigative Reporters & Editors + +This software consists of voluntary contributions made by many +individuals. For exact contribution history, see the revision history +available at https://github.com/lodash/lodash + +The following license applies to all parts of this software except as +documented below: + +==== + +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE +LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION +WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +==== + +Copyright and related rights for sample code are waived via CC0. Sample +code is defined as all source code displayed within the prose of the +documentation. + +CC0: http://creativecommons.org/publicdomain/zero/1.0/ + +==== + +Files located in the node_modules and vendor directories are externally +maintained libraries used by this software which have their own +licenses; we recommend you read them, as their terms may differ from the +terms above. + + +lowlight +MIT +(The MIT License) + +Copyright (c) 2016 Titus Wormer + +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +'Software'), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. +IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY +CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, +TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE +SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + + +mobx +MIT +The MIT License (MIT) + +Copyright (c) 2015 Michel Weststrate + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + +moment +MIT +Copyright (c) JS Foundation and other contributors + +Permission is hereby granted, free of charge, to any person +obtaining a copy of this software and associated documentation +files (the "Software"), to deal in the Software without +restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the +Software is furnished to do so, subject to the following +conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES +OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT +HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, +WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING +FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR +OTHER DEALINGS IN THE SOFTWARE. + + +ng-block-ui +MIT +MIT License + +Copyright (c) 2017 + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + +ng-click-outside +MIT +The MIT License (MIT) + +Copyright (c) 2016 Eugene Cheung + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + + +ng2-charts +ISC + +ngx-pipe-function +MIT License + +Copyright (c) 2019 Artem Lanovyy + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + +ngx-toastr +MIT +The MIT License (MIT) + +Copyright (c) Scott Cooper + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + +object-assign +MIT +The MIT License (MIT) + +Copyright (c) Sindre Sorhus (sindresorhus.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + + +object-inspect +MIT +MIT License + +Copyright (c) 2013 James Halliday + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + +prop-types +MIT +MIT License + +Copyright (c) 2013-present, Facebook, Inc. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + +punycode +MIT +Copyright Mathias Bynens + +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE +LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION +WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + + +qs +BSD-3-Clause +BSD 3-Clause License + +Copyright (c) 2014, Nathan LaFreniere and other [contributors](https://github.com/ljharb/qs/graphs/contributors) +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + +1. Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + +3. Neither the name of the copyright holder nor the names of its + contributors may be used to endorse or promote products derived from + this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE +FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER +CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, +OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +querystring +MIT + +Copyright 2012 Irakli Gozalishvili. All rights reserved. +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to +deal in the Software without restriction, including without limitation the +rights to use, copy, modify, merge, publish, distribute, sublicense, and/or +sell copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING +FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS +IN THE SOFTWARE. + + +querystringify +MIT +The MIT License (MIT) + +Copyright (c) 2015 Unshift.io, Arnout Kazemier, the Contributors. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + + +randexp +MIT +MIT License + +Copyright (C) 2011 by fent + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + + +react +MIT +MIT License + +Copyright (c) Facebook, Inc. and its affiliates. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + +react-copy-to-clipboard +MIT +The MIT License (MIT) + +Copyright (c) 2016 Nik Butenko + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + + +react-debounce-input +MIT +The MIT License (MIT) + +Copyright (c) 2016 Nik Butenko + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + + +react-dom +MIT +MIT License + +Copyright (c) Facebook, Inc. and its affiliates. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + +react-immutable-proptypes +MIT +The MIT License (MIT) + +Copyright (c) 2015 James Burnett + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + + +react-immutable-pure-component +MIT +The MIT License (MIT) + +Copyright (c) 2017 Piotr Tomasz Monarski + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + +react-is +MIT +MIT License + +Copyright (c) Facebook, Inc. and its affiliates. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + +react-redux +MIT +The MIT License (MIT) + +Copyright (c) 2015-present Dan Abramov + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + +react-syntax-highlighter +MIT +MIT License + +Copyright (c) 2019 Conor Hastings + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + +redux +MIT +The MIT License (MIT) + +Copyright (c) 2015-present Dan Abramov + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + +redux-immutable +BSD-3-Clause +Copyright (c) 2016, Gajus Kuizinas (http://gajus.com/) +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + * Neither the name of the Gajus Kuizinas (http://gajus.com/) nor the + names of its contributors may be used to endorse or promote products + derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL ANUARY BE LIABLE FOR ANY +DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND +ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +remarkable +MIT +The MIT License (MIT) + +Copyright (c) 2014-2016, Jon Schlinkert +Copyright (c) 2014 Jon Schlinkert, Vitaly Puzrin. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + + +repeat-string +MIT +The MIT License (MIT) + +Copyright (c) 2014-2016, Jon Schlinkert. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + + +requires-port +MIT +The MIT License (MIT) + +Copyright (c) 2015 Unshift.io, Arnout Kazemier, the Contributors. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + + +reselect +MIT +The MIT License (MIT) + +Copyright (c) 2015-2018 Reselect Contributors + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + +ret +MIT +MIT License + +Copyright (C) 2011 by fent + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + + +rxjs +Apache-2.0 + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright (c) 2015-2018 Google, Inc., Netflix, Inc., Microsoft Corp. and contributors + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + + + +scheduler +MIT +MIT License + +Copyright (c) Facebook, Inc. and its affiliates. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + +serialize-error +MIT +MIT License + +Copyright (c) Sindre Sorhus (https://sindresorhus.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + + +side-channel +MIT +MIT License + +Copyright (c) 2019 Jordan Harband + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + +simplebar +MIT + +simplebar-angular +The MIT License (MIT) + +Copyright (c) 2015 Jonathan Nicol + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + +swagger-client +Apache-2.0 + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + + +swagger-ui +Apache-2.0 + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + + +toggle-selection +MIT + +traverse +MIT +Copyright 2010 James Halliday (mail@substack.net) + +This project is free software released under the MIT/X11 license: +http://www.opensource.org/licenses/mit-license.php + +Copyright 2010 James Halliday (mail@substack.net) + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + + +tslib +0BSD +Copyright (c) Microsoft Corporation. + +Permission to use, copy, modify, and/or distribute this software for any +purpose with or without fee is hereby granted. + +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH +REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY +AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, +INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM +LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR +OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THIS SOFTWARE. + +url +MIT +The MIT License (MIT) + +Copyright Joyent, Inc. and other Node contributors. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + +url-parse +MIT +The MIT License (MIT) + +Copyright (c) 2015 Unshift.io, Arnout Kazemier, the Contributors. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + + +xml-but-prettier +MIT +The MIT License (MIT) + +Copyright (c) 2015 Jonathan Persson + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + +zenscroll +Unlicense +This is free and unencumbered software released into the public domain. + +Anyone is free to copy, modify, publish, use, compile, sell, or +distribute this software, either in source code form or as a compiled +binary, for any purpose, commercial or non-commercial, and by any +means. + +In jurisdictions that recognize copyright laws, the author or authors +of this software dedicate any and all copyright interest in the +software to the public domain. We make this dedication for the benefit +of the public at large and to the detriment of our heirs and +successors. We intend this dedication to be an overt act of +relinquishment in perpetuity of all present and future rights to this +software under copyright law. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. +IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR +OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, +ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR +OTHER DEALINGS IN THE SOFTWARE. + +For more information, please refer to + + + +zone.js +MIT +The MIT License + +Copyright (c) 2010-2020 Google LLC. http://angular.io/license + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. diff --git a/src/pybind/mgr/dashboard/frontend/dist/en-US/483.f42c1d67e206231ecdac.js b/src/pybind/mgr/dashboard/frontend/dist/en-US/483.f42c1d67e206231ecdac.js new file mode 100644 index 000000000..b1f3294a4 --- /dev/null +++ b/src/pybind/mgr/dashboard/frontend/dist/en-US/483.f42c1d67e206231ecdac.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkceph_dashboard=self.webpackChunkceph_dashboard||[]).push([[483],{70483:(ct,Oe,p)=>{p.r(Oe),p.d(Oe,{BlockModule:()=>$t,RoutedBlockModule:()=>sr});var l=p(12057),a=p(24751),m=p(6283),ne=p(19723),N=p(38549),Ie=p(37496),v=p(79512),U=p(4222),re=p(54462),Ae=p(44466),be=p(23815),S=p.n(be),le=p(35758),D=p(64762),ie=p(58497),V=p(93523),e=p(74788);let X=class{constructor(s){this.http=s}listTargets(){return this.http.get("api/iscsi/target")}getTarget(s){return this.http.get(`api/iscsi/target/${s}`)}updateTarget(s,t){return this.http.put(`api/iscsi/target/${s}`,t,{observe:"response"})}status(){return this.http.get("ui-api/iscsi/status")}settings(){return this.http.get("ui-api/iscsi/settings")}version(){return this.http.get("ui-api/iscsi/version")}portals(){return this.http.get("ui-api/iscsi/portals")}createTarget(s){return this.http.post("api/iscsi/target",s,{observe:"response"})}deleteTarget(s){return this.http.delete(`api/iscsi/target/${s}`,{observe:"response"})}getDiscovery(){return this.http.get("api/iscsi/discoveryauth")}updateDiscovery(s){return this.http.put("api/iscsi/discoveryauth",s)}overview(){return this.http.get("ui-api/iscsi/overview")}};X.\u0275fac=function(s){return new(s||X)(e.LFG(ie.eN))},X.\u0275prov=e.Yz7({token:X,factory:X.\u0275fac,providedIn:"root"}),X=(0,D.gn)([V.o,(0,D.w6)("design:paramtypes",[ie.eN])],X);var Ne=p(88002),Fe=p(76189),L=p(19358),he=p(34089);let q=class extends Fe.S{constructor(s,t){super(),this.http=s,this.rbdConfigurationService=t}isRBDPool(s){return-1!==S().indexOf(s.application_metadata,"rbd")&&!s.pool_name.includes("/")}create(s){return this.http.post("api/block/image",s,{observe:"response"})}delete(s){return this.http.delete(`api/block/image/${s.toStringEncoded()}`,{observe:"response"})}update(s,t){return this.http.put(`api/block/image/${s.toStringEncoded()}`,t,{observe:"response"})}get(s){return this.http.get(`api/block/image/${s.toStringEncoded()}`)}list(s){return this.http.get("api/block/image",{params:s,headers:{Accept:this.getVersionHeaderValue(2,0)},observe:"response"}).pipe((0,Ne.U)(t=>t.body.map(o=>(o.value.map(i=>(i.configuration&&i.configuration.map(_=>Object.assign(_,this.rbdConfigurationService.getOptionByName(_.name))),i)),o.headers=t.headers,o))))}copy(s,t){return this.http.post(`api/block/image/${s.toStringEncoded()}/copy`,t,{observe:"response"})}flatten(s){return this.http.post(`api/block/image/${s.toStringEncoded()}/flatten`,null,{observe:"response"})}defaultFeatures(){return this.http.get("api/block/image/default_features")}cloneFormatVersion(){return this.http.get("api/block/image/clone_format_version")}createSnapshot(s,t){const o={snapshot_name:t};return this.http.post(`api/block/image/${s.toStringEncoded()}/snap`,o,{observe:"response"})}renameSnapshot(s,t,o){const i={new_snap_name:o};return this.http.put(`api/block/image/${s.toStringEncoded()}/snap/${t}`,i,{observe:"response"})}protectSnapshot(s,t,o){const i={is_protected:o};return this.http.put(`api/block/image/${s.toStringEncoded()}/snap/${t}`,i,{observe:"response"})}rollbackSnapshot(s,t){return this.http.post(`api/block/image/${s.toStringEncoded()}/snap/${t}/rollback`,null,{observe:"response"})}cloneSnapshot(s,t,o){return this.http.post(`api/block/image/${s.toStringEncoded()}/snap/${t}/clone`,o,{observe:"response"})}deleteSnapshot(s,t){return this.http.delete(`api/block/image/${s.toStringEncoded()}/snap/${t}`,{observe:"response"})}listTrash(){return this.http.get("api/block/image/trash/")}createNamespace(s,t){return this.http.post(`api/block/pool/${s}/namespace`,{namespace:t},{observe:"response"})}listNamespaces(s){return this.http.get(`api/block/pool/${s}/namespace/`)}deleteNamespace(s,t){return this.http.delete(`api/block/pool/${s}/namespace/${t}`,{observe:"response"})}moveTrash(s,t){return this.http.post(`api/block/image/${s.toStringEncoded()}/move_trash`,{delay:t},{observe:"response"})}purgeTrash(s){return this.http.post(`api/block/image/trash/purge/?pool_name=${s}`,null,{observe:"response"})}restoreTrash(s,t){return this.http.post(`api/block/image/trash/${s.toStringEncoded()}/restore`,{new_image_name:t},{observe:"response"})}removeTrash(s,t=!1){return this.http.delete(`api/block/image/trash/${s.toStringEncoded()}/?force=${t}`,{observe:"response"})}};q.\u0275fac=function(s){return new(s||q)(e.LFG(ie.eN),e.LFG(he.n))},q.\u0275prov=e.Yz7({token:q,factory:q.\u0275fac,providedIn:"root"}),(0,D.gn)([(0,D.fM)(1,V.G),(0,D.w6)("design:type",Function),(0,D.w6)("design:paramtypes",[L.N,String]),(0,D.w6)("design:returntype",void 0)],q.prototype,"createSnapshot",null),(0,D.gn)([(0,D.fM)(2,V.G),(0,D.w6)("design:type",Function),(0,D.w6)("design:paramtypes",[L.N,String,String]),(0,D.w6)("design:returntype",void 0)],q.prototype,"renameSnapshot",null),(0,D.gn)([(0,D.fM)(2,V.G),(0,D.w6)("design:type",Function),(0,D.w6)("design:paramtypes",[L.N,String,Boolean]),(0,D.w6)("design:returntype",void 0)],q.prototype,"protectSnapshot",null),(0,D.gn)([(0,D.fM)(1,V.G),(0,D.w6)("design:type",Function),(0,D.w6)("design:paramtypes",[L.N,String]),(0,D.w6)("design:returntype",void 0)],q.prototype,"restoreTrash",null),q=(0,D.gn)([V.o,(0,D.w6)("design:paramtypes",[ie.eN,he.n])],q);var F=p(7022),x=p(14745),T=p(65862),H=p(93614),y=p(95463),z=p(77205),A=p(86919),R=p(76111),u=p(32337),C=p(60312),h=p(41582),O=p(56310),$=p(87925),k=p(94276),j=p(30839);function to(n,s){if(1&n&&(e.TgZ(0,"option",6),e._uU(1),e.qZA()),2&n){const t=s.$implicit;e.Q6J("ngValue",t),e.xp6(1),e.Oqu(t)}}function oo(n,s){if(1&n&&(e.TgZ(0,"select",5),e._UZ(1,"option",6),e.YNc(2,to,2,2,"option",7),e.qZA()),2&n){const t=e.oxw();e.s9C("id",t.setting),e.s9C("name",t.setting),e.Q6J("formControlName",t.setting),e.xp6(1),e.Q6J("ngValue",null),e.xp6(1),e.Q6J("ngForOf",t.limits.values)}}function no(n,s){if(1&n&&e._UZ(0,"input",10),2&n){const t=e.oxw(2);e.Q6J("formControlName",t.setting)}}function io(n,s){if(1&n&&e._UZ(0,"input",11),2&n){const t=e.oxw(2);e.Q6J("formControlName",t.setting)}}function so(n,s){if(1&n&&(e.ynx(0),e._UZ(1,"br"),e.TgZ(2,"div",12),e._UZ(3,"input",13),e.TgZ(4,"label",14),e._uU(5,"Yes"),e.qZA(),e.qZA(),e.TgZ(6,"div",12),e._UZ(7,"input",13),e.TgZ(8,"label",14),e._uU(9,"No"),e.qZA(),e.qZA(),e.BQk()),2&n){const t=e.oxw(2);e.xp6(3),e.Q6J("id",t.setting+"True")("value",!0)("formControlName",t.setting),e.xp6(1),e.Q6J("for",t.setting+"True"),e.xp6(3),e.Q6J("id",t.setting+"False")("value",!1)("formControlName",t.setting),e.xp6(1),e.Q6J("for",t.setting+"False")}}function _o(n,s){if(1&n&&(e.TgZ(0,"span"),e.YNc(1,no,1,1,"input",8),e.YNc(2,io,1,1,"input",9),e.YNc(3,so,10,8,"ng-container",3),e.qZA()),2&n){const t=e.oxw();e.xp6(1),e.Q6J("ngIf","int"===t.limits.type),e.xp6(1),e.Q6J("ngIf","str"===t.limits.type),e.xp6(1),e.Q6J("ngIf","bool"===t.limits.type)}}function ao(n,s){if(1&n&&(e.TgZ(0,"span",15),e.ynx(1),e.SDv(2,16),e.BQk(),e.qZA()),2&n){const t=e.oxw();e.xp6(2),e.pQV(t.limits.min),e.QtT(2)}}function ro(n,s){if(1&n&&(e.TgZ(0,"span",15),e.ynx(1),e.SDv(2,17),e.BQk(),e.qZA()),2&n){const t=e.oxw();e.xp6(2),e.pQV(t.limits.max),e.QtT(2)}}let dt=(()=>{class n{ngOnInit(){const t=[];"min"in this.limits&&t.push(a.kI.min(this.limits.min)),"max"in this.limits&&t.push(a.kI.max(this.limits.max)),this.settingsForm.get(this.setting).setValidators(t)}}return n.\u0275fac=function(t){return new(t||n)},n.\u0275cmp=e.Xpm({type:n,selectors:[["cd-iscsi-setting"]],inputs:{settingsForm:"settingsForm",formDir:"formDir",setting:"setting",limits:"limits"},decls:7,vars:7,consts:function(){let s,t;return s="Must be greater than or equal to " + "\ufffd0\ufffd" + ".",t="Must be less than or equal to " + "\ufffd0\ufffd" + ".",[[1,"form-group",3,"formGroup"],[1,"col-form-label",3,"for"],["class","form-control",3,"id","name","formControlName",4,"ngIf"],[4,"ngIf"],["class","invalid-feedback",4,"ngIf"],[1,"form-control",3,"id","name","formControlName"],[3,"ngValue"],[3,"ngValue",4,"ngFor","ngForOf"],["type","number","class","form-control",3,"formControlName",4,"ngIf"],["type","text","class","form-control",3,"formControlName",4,"ngIf"],["type","number",1,"form-control",3,"formControlName"],["type","text",1,"form-control",3,"formControlName"],[1,"custom-control","custom-radio","custom-control-inline"],["type","radio",1,"custom-control-input",3,"id","value","formControlName"],[1,"custom-control-label",3,"for"],[1,"invalid-feedback"],s,t]},template:function(t,o){1&t&&(e.TgZ(0,"div",0),e.TgZ(1,"label",1),e._uU(2),e.qZA(),e.YNc(3,oo,3,5,"select",2),e.YNc(4,_o,4,3,"span",3),e.YNc(5,ao,3,1,"span",4),e.YNc(6,ro,3,1,"span",4),e.qZA()),2&t&&(e.Q6J("formGroup",o.settingsForm),e.xp6(1),e.s9C("for",o.setting),e.xp6(1),e.Oqu(o.setting),e.xp6(1),e.Q6J("ngIf","enum"===o.limits.type),e.xp6(1),e.Q6J("ngIf","enum"!==o.limits.type),e.xp6(1),e.Q6J("ngIf",o.settingsForm.showError(o.setting,o.formDir,"min")),e.xp6(1),e.Q6J("ngIf",o.settingsForm.showError(o.setting,o.formDir,"max")))},directives:[O.P,a.JL,a.sg,h.V,l.O5,$.o,a.EJ,k.b,a.JJ,a.u,a.YN,a.Kr,l.sg,a.wV,a.Fj,a._],styles:[""]}),n})();var Je=p(88820);function lo(n,s){1&n&&(e.TgZ(0,"span",29),e.SDv(1,30),e.qZA())}function co(n,s){if(1&n&&(e.TgZ(0,"span"),e.TgZ(1,"legend",10),e.SDv(2,21),e.qZA(),e.TgZ(3,"div",12),e.TgZ(4,"div",13),e.TgZ(5,"label",22),e.SDv(6,23),e.qZA(),e._UZ(7,"input",24),e.YNc(8,lo,2,0,"span",25),e.qZA(),e.qZA(),e.TgZ(9,"div",12),e.TgZ(10,"div",13),e.TgZ(11,"label",26),e.SDv(12,27),e.qZA(),e._UZ(13,"input",28),e.qZA(),e.qZA(),e.qZA()),2&n){const t=e.oxw(),o=e.MAs(9);e.xp6(8),e.Q6J("ngIf",t.settingsForm.showError("lun",o,"required"))}}function po(n,s){if(1&n&&(e.TgZ(0,"option",31),e._uU(1),e.ALo(2,"iscsiBackstore"),e.qZA()),2&n){const t=s.$implicit;e.Q6J("value",t),e.xp6(1),e.Oqu(e.lcZ(2,2,t))}}function go(n,s){if(1&n&&(e.TgZ(0,"div",12),e.TgZ(1,"div",13),e._UZ(2,"cd-iscsi-setting",33),e.qZA(),e.qZA()),2&n){const t=s.$implicit,o=e.oxw(2).$implicit,i=e.oxw(),_=e.MAs(9);e.xp6(2),e.Q6J("settingsForm",i.settingsForm)("formDir",_)("setting",t.key)("limits",i.getDiskControlLimits(o,t.key))}}function uo(n,s){if(1&n&&(e.ynx(0),e.YNc(1,go,3,4,"div",32),e.ALo(2,"keyvalue"),e.BQk()),2&n){const t=e.oxw().$implicit,o=e.oxw();e.xp6(1),e.Q6J("ngForOf",e.lcZ(2,1,o.disk_default_controls[t]))}}function mo(n,s){if(1&n&&(e.ynx(0),e.YNc(1,uo,3,3,"ng-container",9),e.BQk()),2&n){const t=s.$implicit,o=e.oxw();e.xp6(1),e.Q6J("ngIf",o.settingsForm.value.backstore===t)}}let To=(()=>{class n{constructor(t,o,i){this.activeModal=t,this.iscsiService=o,this.actionLabels=i}ngOnInit(){const t={backstore:new a.NI(this.imagesSettings[this.image].backstore),lun:new a.NI(this.imagesSettings[this.image].lun),wwn:new a.NI(this.imagesSettings[this.image].wwn)};S().forEach(this.backstores,o=>{const i=this.imagesSettings[this.image][o]||{};S().forIn(this.disk_default_controls[o],(_,r)=>{t[r]=new a.NI(i[r])})}),this.settingsForm=new y.d(t)}getDiskControlLimits(t,o){return this.disk_controls_limits?this.disk_controls_limits[t][o]:{type:"int"}}save(){const t=this.settingsForm.controls.backstore.value,o=this.settingsForm.controls.lun.value,i=this.settingsForm.controls.wwn.value,_={};S().forIn(this.settingsForm.controls,(r,c)=>{""!==r.value&&null!==r.value&&c in this.disk_default_controls[this.settingsForm.value.backstore]&&(_[c]=r.value,S().forEach(this.backstores,d=>{d!==t&&c in(this.imagesSettings[this.image][d]||{})&&(this.imagesSettings[this.image][d][c]=r.value)}))}),this.imagesSettings[this.image].backstore=t,this.imagesSettings[this.image].lun=o,this.imagesSettings[this.image].wwn=i,this.imagesSettings[this.image][t]=_,this.imagesSettings=Object.assign({},this.imagesSettings),this.control.updateValueAndValidity({emitEvent:!1}),this.activeModal.close()}}return n.\u0275fac=function(t){return new(t||n)(e.Y36(N.Kz),e.Y36(X),e.Y36(v.p4))},n.\u0275cmp=e.Xpm({type:n,selectors:[["cd-iscsi-target-image-settings-modal"]],decls:25,vars:8,consts:function(){let s,t,o,i,_,r,c,d;return s="Configure",t="Changing these parameters from their default values is usually not necessary.",o="Settings",i="Backstore",_="Identifier",r="lun",c="wwn",d="This field is required.",[[3,"modalRef"],[1,"modal-title"],s,[1,"modal-content"],["name","settingsForm","novalidate","",1,"form",3,"formGroup"],["formDir","ngForm"],[1,"modal-body"],[1,"alert-warning"],t,[4,"ngIf"],[1,"cd-header"],o,[1,"form-group","row"],[1,"col-sm-12"],[1,"col-form-label"],i,["id","backstore","name","backstore","formControlName","backstore",1,"form-control"],[3,"value",4,"ngFor","ngForOf"],[4,"ngFor","ngForOf"],[1,"modal-footer"],[3,"form","submitText","submitActionEvent"],_,["for","lun",1,"col-form-label","required"],r,["type","number","id","lun","name","lun","formControlName","lun",1,"form-control"],["class","invalid-feedback",4,"ngIf"],["for","wwn",1,"col-form-label"],c,["type","text","id","wwn","name","wwn","formControlName","wwn",1,"form-control"],[1,"invalid-feedback"],d,[3,"value"],["class","form-group row",4,"ngFor","ngForOf"],[3,"settingsForm","formDir","setting","limits"]]},template:function(t,o){1&t&&(e.TgZ(0,"cd-modal",0),e.ynx(1,1),e.ynx(2),e.SDv(3,2),e.BQk(),e._uU(4,"\xa0 "),e.TgZ(5,"small"),e._uU(6),e.qZA(),e.BQk(),e.ynx(7,3),e.TgZ(8,"form",4,5),e.TgZ(10,"div",6),e.TgZ(11,"p",7),e.SDv(12,8),e.qZA(),e.YNc(13,co,14,1,"span",9),e.TgZ(14,"legend",10),e.SDv(15,11),e.qZA(),e.TgZ(16,"div",12),e.TgZ(17,"div",13),e.TgZ(18,"label",14),e.SDv(19,15),e.qZA(),e.TgZ(20,"select",16),e.YNc(21,po,3,4,"option",17),e.qZA(),e.qZA(),e.qZA(),e.YNc(22,mo,2,1,"ng-container",18),e.qZA(),e.TgZ(23,"div",19),e.TgZ(24,"cd-form-button-panel",20),e.NdJ("submitActionEvent",function(){return o.save()}),e.qZA(),e.qZA(),e.qZA(),e.BQk(),e.qZA()),2&t&&(e.Q6J("modalRef",o.activeModal),e.xp6(6),e.Oqu(o.image),e.xp6(2),e.Q6J("formGroup",o.settingsForm),e.xp6(5),e.Q6J("ngIf",o.api_version>=1),e.xp6(8),e.Q6J("ngForOf",o.backstores),e.xp6(1),e.Q6J("ngForOf",o.backstores),e.xp6(2),e.Q6J("form",o.settingsForm)("submitText",o.actionLabels.UPDATE))},directives:[C.z,a._Y,a.JL,a.sg,h.V,l.O5,O.P,$.o,a.EJ,k.b,a.JJ,a.u,l.sg,j.p,a.wV,a.Fj,a.YN,a.Kr,dt],pipes:[Je.V,l.Nd],styles:[""]}),n})();function fo(n,s){if(1&n&&(e.TgZ(0,"div",12),e.TgZ(1,"div",13),e._UZ(2,"cd-iscsi-setting",14),e.qZA(),e.qZA()),2&n){const t=s.$implicit,o=e.oxw(),i=e.MAs(5);e.xp6(2),e.Q6J("settingsForm",o.settingsForm)("formDir",i)("setting",t.key)("limits",o.getTargetControlLimits(t.key))}}let Co=(()=>{class n{constructor(t,o,i){this.activeModal=t,this.iscsiService=o,this.actionLabels=i}ngOnInit(){const t={};S().forIn(this.target_default_controls,(o,i)=>{t[i]=new a.NI(this.target_controls.value[i])}),this.settingsForm=new y.d(t)}save(){const t={};S().forIn(this.settingsForm.controls,(o,i)=>{""===o.value||null===o.value||(t[i]=o.value)}),this.target_controls.setValue(t),this.activeModal.close()}getTargetControlLimits(t){return this.target_controls_limits?this.target_controls_limits[t]:["Yes","No"].includes(this.target_default_controls[t])?{type:"bool"}:{type:"int"}}}return n.\u0275fac=function(t){return new(t||n)(e.Y36(N.Kz),e.Y36(X),e.Y36(v.p4))},n.\u0275cmp=e.Xpm({type:n,selectors:[["cd-iscsi-target-iqn-settings-modal"]],decls:13,vars:7,consts:function(){let s,t;return s="Advanced Settings",t="Changing these parameters from their default values is usually not necessary.",[[3,"modalRef"],[1,"modal-title"],s,[1,"modal-content"],["name","settingsForm","novalidate","",3,"formGroup"],["formDir","ngForm"],[1,"modal-body"],[1,"alert-warning"],t,["class","form-group row",4,"ngFor","ngForOf"],[1,"modal-footer"],[3,"form","submitText","submitActionEvent"],[1,"form-group","row"],[1,"col-sm-12"],[3,"settingsForm","formDir","setting","limits"]]},template:function(t,o){1&t&&(e.TgZ(0,"cd-modal",0),e.ynx(1,1),e.SDv(2,2),e.BQk(),e.ynx(3,3),e.TgZ(4,"form",4,5),e.TgZ(6,"div",6),e.TgZ(7,"p",7),e.SDv(8,8),e.qZA(),e.YNc(9,fo,3,4,"div",9),e.ALo(10,"keyvalue"),e.qZA(),e.TgZ(11,"div",10),e.TgZ(12,"cd-form-button-panel",11),e.NdJ("submitActionEvent",function(){return o.save()}),e.qZA(),e.qZA(),e.qZA(),e.BQk(),e.qZA()),2&t&&(e.Q6J("modalRef",o.activeModal),e.xp6(4),e.Q6J("formGroup",o.settingsForm),e.xp6(5),e.Q6J("ngForOf",e.lcZ(10,5,o.settingsForm.controls)),e.xp6(3),e.Q6J("form",o.settingsForm)("submitText",o.actionLabels.UPDATE))},directives:[C.z,a._Y,a.JL,a.sg,h.V,l.sg,j.p,O.P,dt],pipes:[l.Nd],styles:[""]}),n})();var de=p(63285),pt=p(63622);let So=(()=>{class n{constructor(t){this.ngControl=t}onInput(t){this.setValue(t)}setValue(t){t=S().isString(t)?t.trim():t,this.ngControl.control.setValue(t)}}return n.\u0275fac=function(t){return new(t||n)(e.Y36(a.a5))},n.\u0275dir=e.lG2({type:n,selectors:[["","cdTrim",""]],hostBindings:function(t,o){1&t&&e.NdJ("input",function(_){return o.onInput(_.target.value)})}}),n})();var Eo=p(39092),gt=p(4416),Ye=p(58039),et=p(10545);function Ro(n,s){1&n&&(e.TgZ(0,"span",41),e.SDv(1,42),e.qZA())}function Mo(n,s){1&n&&(e.TgZ(0,"span",41),e.SDv(1,43),e.qZA())}function Oo(n,s){1&n&&(e.TgZ(0,"span",41),e.ynx(1),e.SDv(2,44),e.BQk(),e._UZ(3,"br"),e.ynx(4),e.SDv(5,45),e.BQk(),e._UZ(6,"br"),e.TgZ(7,"a",46),e.SDv(8,47),e.qZA(),e.qZA())}function Ao(n,s){1&n&&(e.TgZ(0,"span",48),e.SDv(1,49),e.qZA())}const J=function(n){return[n]};function ho(n,s){if(1&n){const t=e.EpF();e.ynx(0),e.TgZ(1,"div",50),e._UZ(2,"input",51),e.TgZ(3,"span",14),e.TgZ(4,"button",52),e.NdJ("click",function(){const i=e.CHM(t),_=i.index,r=i.$implicit;return e.oxw(2).removePortal(_,r)}),e._UZ(5,"i",16),e.qZA(),e.qZA(),e.qZA(),e.BQk()}if(2&n){const t=s.$implicit,o=e.oxw(2);e.xp6(2),e.Q6J("value",t),e.xp6(3),e.Q6J("ngClass",e.VKq(2,J,o.icons.destroy))}}function Po(n,s){if(1&n&&(e.TgZ(0,"span",41),e.SDv(1,53),e.qZA()),2&n){const t=e.oxw(2);e.xp6(1),e.pQV(t.minimum_gateways),e.QtT(1)}}function Io(n,s){if(1&n&&(e.TgZ(0,"div",56),e._uU(1),e.qZA()),2&n){const t=e.oxw().$implicit,o=e.oxw(2);e.xp6(1),e.hij("lun: ",o.imagesSettings[t].lun,"")}}function bo(n,s){if(1&n&&(e.ynx(0),e.SDv(1,57),e.ALo(2,"iscsiBackstore"),e.BQk()),2&n){const t=e.oxw().$implicit,o=e.oxw(2);e.xp6(2),e.pQV(e.lcZ(2,1,o.imagesSettings[t].backstore)),e.QtT(1)}}function No(n,s){1&n&&(e.ynx(0),e.SDv(1,58),e.BQk())}function Fo(n,s){if(1&n){const t=e.EpF();e.ynx(0),e.TgZ(1,"div",50),e._UZ(2,"input",51),e.TgZ(3,"span",14),e.YNc(4,Io,2,1,"div",54),e.TgZ(5,"button",52),e.NdJ("click",function(){const _=e.CHM(t).$implicit;return e.oxw(2).imageSettingsModal(_)}),e._UZ(6,"i",16),e.qZA(),e.TgZ(7,"button",52),e.NdJ("click",function(){const i=e.CHM(t),_=i.index,r=i.$implicit;return e.oxw(2).removeImage(_,r)}),e._UZ(8,"i",16),e.qZA(),e.qZA(),e.qZA(),e.TgZ(9,"span",48),e.YNc(10,bo,3,3,"ng-container",55),e.YNc(11,No,2,0,"ng-container",55),e.qZA(),e.BQk()}if(2&n){const t=s.$implicit,o=e.oxw(2);e.xp6(2),e.Q6J("value",t),e.xp6(2),e.Q6J("ngIf",o.api_version>=1),e.xp6(2),e.Q6J("ngClass",e.VKq(6,J,o.icons.deepCheck)),e.xp6(2),e.Q6J("ngClass",e.VKq(8,J,o.icons.destroy)),e.xp6(2),e.Q6J("ngIf",o.backstores.length>1),e.xp6(1),e.Q6J("ngIf",o.hasAdvancedSettings(o.imagesSettings[t][o.imagesSettings[t].backstore]))}}function Do(n,s){1&n&&(e.TgZ(0,"span",41),e.SDv(1,59),e.qZA())}function vo(n,s){1&n&&(e.TgZ(0,"span",41),e.SDv(1,60),e.qZA())}function Lo(n,s){1&n&&(e.TgZ(0,"span",41),e.SDv(1,78),e.qZA())}function $o(n,s){1&n&&(e.TgZ(0,"span",41),e.SDv(1,79),e.qZA())}function Zo(n,s){1&n&&(e.TgZ(0,"span",41),e.SDv(1,80),e.qZA())}function Bo(n,s){1&n&&(e.TgZ(0,"span",41),e.SDv(1,81),e.qZA())}function Go(n,s){1&n&&(e.TgZ(0,"span",41),e.SDv(1,82),e.qZA())}function xo(n,s){1&n&&(e.TgZ(0,"span",41),e.SDv(1,83),e.qZA())}function yo(n,s){1&n&&(e.TgZ(0,"span",41),e.SDv(1,84),e.qZA())}function wo(n,s){1&n&&(e.TgZ(0,"span",41),e.SDv(1,85),e.qZA())}function qo(n,s){if(1&n&&(e.TgZ(0,"div",61),e.TgZ(1,"div",8),e.TgZ(2,"label",62),e.ynx(3),e.SDv(4,63),e.BQk(),e.qZA(),e.TgZ(5,"div",11),e._UZ(6,"input",64),e.YNc(7,Lo,2,0,"span",17),e.YNc(8,$o,2,0,"span",17),e.qZA(),e.qZA(),e.TgZ(9,"div",8),e.TgZ(10,"label",65),e.ynx(11),e.SDv(12,66),e.BQk(),e.qZA(),e.TgZ(13,"div",11),e.TgZ(14,"div",12),e._UZ(15,"input",67),e.TgZ(16,"span",14),e._UZ(17,"button",68),e._UZ(18,"cd-copy-2-clipboard-button",69),e.qZA(),e.qZA(),e.YNc(19,Zo,2,0,"span",17),e.YNc(20,Bo,2,0,"span",17),e.qZA(),e.qZA(),e.TgZ(21,"div",8),e.TgZ(22,"label",70),e.ynx(23),e.SDv(24,71),e.BQk(),e.qZA(),e.TgZ(25,"div",11),e._UZ(26,"input",72),e.YNc(27,Go,2,0,"span",17),e.YNc(28,xo,2,0,"span",17),e.qZA(),e.qZA(),e.TgZ(29,"div",8),e.TgZ(30,"label",73),e.ynx(31),e.SDv(32,74),e.BQk(),e.qZA(),e.TgZ(33,"div",11),e.TgZ(34,"div",12),e._UZ(35,"input",75),e.TgZ(36,"span",14),e._UZ(37,"button",76),e._UZ(38,"cd-copy-2-clipboard-button",77),e.qZA(),e.qZA(),e.YNc(39,yo,2,0,"span",17),e.YNc(40,wo,2,0,"span",17),e.qZA(),e.qZA(),e.qZA()),2&n){e.oxw();const t=e.MAs(2),o=e.oxw();e.xp6(7),e.Q6J("ngIf",o.targetForm.showError("user",t,"required")),e.xp6(1),e.Q6J("ngIf",o.targetForm.showError("user",t,"pattern")),e.xp6(11),e.Q6J("ngIf",o.targetForm.showError("password",t,"required")),e.xp6(1),e.Q6J("ngIf",o.targetForm.showError("password",t,"pattern")),e.xp6(7),e.Q6J("ngIf",o.targetForm.showError("mutual_user",t,"required")),e.xp6(1),e.Q6J("ngIf",o.targetForm.showError("mutual_user",t,"pattern")),e.xp6(11),e.Q6J("ngIf",o.targetForm.showError("mutual_password",t,"required")),e.xp6(1),e.Q6J("ngIf",o.targetForm.showError("mutual_password",t,"pattern"))}}function Ho(n,s){1&n&&(e.TgZ(0,"span",41),e.SDv(1,115),e.qZA())}function ko(n,s){1&n&&(e.TgZ(0,"span",41),e.SDv(1,116),e.qZA())}function Ko(n,s){1&n&&(e.TgZ(0,"span",41),e.SDv(1,117),e.qZA())}function Xo(n,s){1&n&&(e.TgZ(0,"span",41),e.SDv(1,118),e.qZA())}function Qo(n,s){1&n&&(e.TgZ(0,"span",41),e.SDv(1,119),e.qZA())}function zo(n,s){1&n&&(e.TgZ(0,"span",41),e.SDv(1,120),e.qZA())}function Jo(n,s){1&n&&(e.TgZ(0,"span",41),e.SDv(1,121),e.qZA())}function Yo(n,s){1&n&&(e.TgZ(0,"span",41),e.SDv(1,122),e.qZA())}function Vo(n,s){1&n&&(e.TgZ(0,"span",41),e.SDv(1,123),e.qZA())}function Uo(n,s){1&n&&(e.TgZ(0,"span",41),e.SDv(1,124),e.qZA())}function jo(n,s){1&n&&(e.TgZ(0,"span",41),e.SDv(1,125),e.qZA())}function Wo(n,s){if(1&n){const t=e.EpF();e.ynx(0),e.TgZ(1,"div",50),e._UZ(2,"input",51),e.TgZ(3,"span",14),e.TgZ(4,"button",52),e.NdJ("click",function(){const i=e.CHM(t),_=i.index,r=i.$implicit,c=e.oxw(),d=c.$implicit,g=c.index;return e.oxw(3).removeInitiatorImage(d,_,g,r)}),e._UZ(5,"i",16),e.qZA(),e.qZA(),e.qZA(),e.BQk()}if(2&n){const t=s.$implicit,o=e.oxw(4);e.xp6(2),e.Q6J("value",t),e.xp6(3),e.Q6J("ngClass",e.VKq(2,J,o.icons.destroy))}}function en(n,s){1&n&&(e.TgZ(0,"span"),e.SDv(1,126),e.qZA())}function tn(n,s){if(1&n&&(e.TgZ(0,"div",22),e.TgZ(1,"div",23),e.TgZ(2,"cd-select",127),e._UZ(3,"i",25),e.ynx(4),e.SDv(5,128),e.BQk(),e.qZA(),e.qZA(),e.qZA()),2&n){const t=e.oxw(),o=t.$implicit,i=t.index,_=e.oxw(3);e.xp6(2),e.Q6J("data",o.getValue("luns"))("options",_.imagesInitiatorSelections[i])("messages",_.messages.initiatorImage),e.xp6(1),e.Q6J("ngClass",e.VKq(4,J,_.icons.add))}}function on(n,s){if(1&n){const t=e.EpF();e.TgZ(0,"div",92),e.TgZ(1,"div",5),e.ynx(2),e.SDv(3,93),e.BQk(),e._uU(4),e.TgZ(5,"button",94),e.NdJ("click",function(){const _=e.CHM(t).index;return e.oxw(3).removeInitiator(_)}),e._UZ(6,"i",25),e.qZA(),e.qZA(),e.TgZ(7,"div",7),e.TgZ(8,"div",8),e.TgZ(9,"label",95),e.SDv(10,96),e.qZA(),e.TgZ(11,"div",11),e.TgZ(12,"input",97),e.NdJ("blur",function(){return e.CHM(t),e.oxw(3).updatedInitiatorSelector()}),e.qZA(),e.YNc(13,Ho,2,0,"span",17),e.YNc(14,ko,2,0,"span",17),e.YNc(15,Ko,2,0,"span",17),e.qZA(),e.qZA(),e.ynx(16,61),e.TgZ(17,"div",8),e.TgZ(18,"label",98),e.SDv(19,99),e.qZA(),e.TgZ(20,"div",11),e._UZ(21,"input",100),e.YNc(22,Xo,2,0,"span",17),e.YNc(23,Qo,2,0,"span",17),e.qZA(),e.qZA(),e.TgZ(24,"div",8),e.TgZ(25,"label",101),e.SDv(26,102),e.qZA(),e.TgZ(27,"div",11),e.TgZ(28,"div",12),e._UZ(29,"input",103),e.TgZ(30,"span",14),e._UZ(31,"button",104),e._UZ(32,"cd-copy-2-clipboard-button",105),e.qZA(),e.qZA(),e.YNc(33,zo,2,0,"span",17),e.YNc(34,Jo,2,0,"span",17),e.qZA(),e.qZA(),e.TgZ(35,"div",8),e.TgZ(36,"label",106),e.ynx(37),e.SDv(38,107),e.BQk(),e.qZA(),e.TgZ(39,"div",11),e._UZ(40,"input",108),e.YNc(41,Yo,2,0,"span",17),e.YNc(42,Vo,2,0,"span",17),e.qZA(),e.qZA(),e.TgZ(43,"div",8),e.TgZ(44,"label",109),e.SDv(45,110),e.qZA(),e.TgZ(46,"div",11),e.TgZ(47,"div",12),e._UZ(48,"input",111),e.TgZ(49,"span",14),e._UZ(50,"button",104),e._UZ(51,"cd-copy-2-clipboard-button",105),e.qZA(),e.qZA(),e.YNc(52,Uo,2,0,"span",17),e.YNc(53,jo,2,0,"span",17),e.qZA(),e.qZA(),e.BQk(),e.TgZ(54,"div",8),e.TgZ(55,"label",112),e.SDv(56,113),e.qZA(),e.TgZ(57,"div",11),e.YNc(58,Wo,6,4,"ng-container",21),e.YNc(59,en,2,0,"span",55),e.YNc(60,tn,6,6,"div",114),e.qZA(),e.qZA(),e.qZA(),e.qZA()}if(2&n){const t=s.$implicit,o=s.index;e.oxw(2);const i=e.MAs(2),_=e.oxw();e.Q6J("formGroup",t),e.xp6(4),e.hij(": ",t.getValue("client_iqn")," "),e.xp6(2),e.Q6J("ngClass",e.VKq(25,J,_.icons.destroy)),e.xp6(7),e.Q6J("ngIf",t.showError("client_iqn",i,"notUnique")),e.xp6(1),e.Q6J("ngIf",t.showError("client_iqn",i,"required")),e.xp6(1),e.Q6J("ngIf",t.showError("client_iqn",i,"pattern")),e.xp6(6),e.Q6J("id","user"+o),e.xp6(1),e.Q6J("ngIf",t.showError("user",i,"required")),e.xp6(1),e.Q6J("ngIf",t.showError("user",i,"pattern")),e.xp6(6),e.Q6J("id","password"+o),e.xp6(2),e.Q6J("cdPasswordButton","password"+o),e.xp6(1),e.Q6J("source","password"+o),e.xp6(1),e.Q6J("ngIf",t.showError("password",i,"required")),e.xp6(1),e.Q6J("ngIf",t.showError("password",i,"pattern")),e.xp6(6),e.Q6J("id","mutual_user"+o),e.xp6(1),e.Q6J("ngIf",t.showError("mutual_user",i,"required")),e.xp6(1),e.Q6J("ngIf",t.showError("mutual_user",i,"pattern")),e.xp6(6),e.Q6J("id","mutual_password"+o),e.xp6(2),e.Q6J("cdPasswordButton","mutual_password"+o),e.xp6(1),e.Q6J("source","mutual_password"+o),e.xp6(1),e.Q6J("ngIf",t.showError("mutual_password",i,"required")),e.xp6(1),e.Q6J("ngIf",t.showError("mutual_password",i,"pattern")),e.xp6(5),e.Q6J("ngForOf",t.getValue("luns")),e.xp6(1),e.Q6J("ngIf",t.getValue("cdIsInGroup")),e.xp6(1),e.Q6J("ngIf",!t.getValue("cdIsInGroup"))}}function nn(n,s){1&n&&(e.TgZ(0,"span",48),e.SDv(1,129),e.qZA())}function sn(n,s){if(1&n){const t=e.EpF();e.TgZ(0,"div",8),e.TgZ(1,"label",86),e.SDv(2,87),e.qZA(),e.TgZ(3,"div",88),e.YNc(4,on,61,27,"div",89),e.TgZ(5,"div",22),e.TgZ(6,"div",23),e.YNc(7,nn,2,0,"span",18),e.TgZ(8,"button",90),e.NdJ("click",function(){return e.CHM(t),e.oxw(2).addInitiator(),!1}),e._UZ(9,"i",25),e.ynx(10),e.SDv(11,91),e.BQk(),e.qZA(),e.qZA(),e.qZA(),e._UZ(12,"hr"),e.qZA(),e.qZA()}if(2&n){const t=e.oxw(2);e.xp6(4),e.Q6J("ngForOf",t.initiators.controls),e.xp6(3),e.Q6J("ngIf",0===t.initiators.controls.length),e.xp6(2),e.Q6J("ngClass",e.VKq(3,J,t.icons.add))}}function _n(n,s){if(1&n){const t=e.EpF();e.ynx(0),e.TgZ(1,"div",50),e._UZ(2,"input",51),e.TgZ(3,"span",14),e.TgZ(4,"button",52),e.NdJ("click",function(){const _=e.CHM(t).index,r=e.oxw(),c=r.$implicit,d=r.index;return e.oxw(3).removeGroupInitiator(c,_,d)}),e._UZ(5,"i",16),e.qZA(),e.qZA(),e.qZA(),e.BQk()}if(2&n){const t=s.$implicit,o=e.oxw(4);e.xp6(2),e.Q6J("value",t),e.xp6(3),e.Q6J("ngClass",e.VKq(2,J,o.icons.destroy))}}function an(n,s){if(1&n){const t=e.EpF();e.ynx(0),e.TgZ(1,"div",50),e._UZ(2,"input",51),e.TgZ(3,"span",14),e.TgZ(4,"button",52),e.NdJ("click",function(){const _=e.CHM(t).index,r=e.oxw(),c=r.$implicit,d=r.index;return e.oxw(3).removeGroupDisk(c,_,d)}),e._UZ(5,"i",16),e.qZA(),e.qZA(),e.qZA(),e.BQk()}if(2&n){const t=s.$implicit,o=e.oxw(4);e.xp6(2),e.Q6J("value",t),e.xp6(3),e.Q6J("ngClass",e.VKq(2,J,o.icons.destroy))}}function rn(n,s){if(1&n){const t=e.EpF();e.TgZ(0,"div",92),e.TgZ(1,"div",5),e.ynx(2),e.SDv(3,133),e.BQk(),e._uU(4),e.TgZ(5,"button",94),e.NdJ("click",function(){const _=e.CHM(t).index;return e.oxw(3).removeGroup(_)}),e._UZ(6,"i",25),e.qZA(),e.qZA(),e.TgZ(7,"div",7),e.TgZ(8,"div",8),e.TgZ(9,"label",134),e.SDv(10,135),e.qZA(),e.TgZ(11,"div",11),e._UZ(12,"input",136),e.qZA(),e.qZA(),e.TgZ(13,"div",8),e.TgZ(14,"label",137),e.ynx(15),e.SDv(16,138),e.BQk(),e.qZA(),e.TgZ(17,"div",11),e.YNc(18,_n,6,4,"ng-container",21),e.TgZ(19,"div",22),e.TgZ(20,"div",23),e.TgZ(21,"cd-select",24),e.NdJ("selection",function(i){const r=e.CHM(t).index;return e.oxw(3).onGroupMemberSelection(i,r)}),e._UZ(22,"i",25),e.ynx(23),e.SDv(24,139),e.BQk(),e.qZA(),e.qZA(),e.qZA(),e._UZ(25,"hr"),e.qZA(),e.qZA(),e.TgZ(26,"div",8),e.TgZ(27,"label",28),e.ynx(28),e.SDv(29,140),e.BQk(),e.qZA(),e.TgZ(30,"div",11),e.YNc(31,an,6,4,"ng-container",21),e.TgZ(32,"div",22),e.TgZ(33,"div",23),e.TgZ(34,"cd-select",127),e._UZ(35,"i",25),e.ynx(36),e.SDv(37,141),e.BQk(),e.qZA(),e.qZA(),e.qZA(),e._UZ(38,"hr"),e.qZA(),e.qZA(),e.qZA(),e.qZA()}if(2&n){const t=s.$implicit,o=s.index,i=e.oxw(3);e.Q6J("formGroup",t),e.xp6(4),e.hij(": ",t.getValue("group_id")," "),e.xp6(2),e.Q6J("ngClass",e.VKq(13,J,i.icons.destroy)),e.xp6(12),e.Q6J("ngForOf",t.getValue("members")),e.xp6(3),e.Q6J("data",t.getValue("members"))("options",i.groupMembersSelections[o])("messages",i.messages.groupInitiator),e.xp6(1),e.Q6J("ngClass",e.VKq(15,J,i.icons.add)),e.xp6(9),e.Q6J("ngForOf",t.getValue("disks")),e.xp6(3),e.Q6J("data",t.getValue("disks"))("options",i.groupDiskSelections[o])("messages",i.messages.initiatorImage),e.xp6(1),e.Q6J("ngClass",e.VKq(17,J,i.icons.add))}}function ln(n,s){1&n&&(e.TgZ(0,"span",48),e.SDv(1,142),e.qZA())}function cn(n,s){if(1&n){const t=e.EpF();e.TgZ(0,"div",8),e.TgZ(1,"label",86),e.SDv(2,130),e.qZA(),e.TgZ(3,"div",131),e.YNc(4,rn,39,19,"div",89),e.TgZ(5,"div",22),e.TgZ(6,"div",23),e.YNc(7,ln,2,0,"span",18),e.TgZ(8,"button",90),e.NdJ("click",function(){return e.CHM(t),e.oxw(2).addGroup(),!1}),e._UZ(9,"i",25),e.ynx(10),e.SDv(11,132),e.BQk(),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA()}if(2&n){const t=e.oxw(2);e.xp6(4),e.Q6J("ngForOf",t.groups.controls),e.xp6(3),e.Q6J("ngIf",0===t.groups.controls.length),e.xp6(2),e.Q6J("ngClass",e.VKq(3,J,t.icons.add))}}function dn(n,s){if(1&n){const t=e.EpF();e.TgZ(0,"div",1),e.TgZ(1,"form",2,3),e.TgZ(3,"div",4),e.TgZ(4,"div",5),e.SDv(5,6),e.ALo(6,"titlecase"),e.ALo(7,"upperFirst"),e.qZA(),e.TgZ(8,"div",7),e.TgZ(9,"div",8),e.TgZ(10,"label",9),e.SDv(11,10),e.qZA(),e.TgZ(12,"div",11),e.TgZ(13,"div",12),e._UZ(14,"input",13),e.TgZ(15,"span",14),e.TgZ(16,"button",15),e.NdJ("click",function(){return e.CHM(t),e.oxw().targetSettingsModal()}),e._UZ(17,"i",16),e.qZA(),e.qZA(),e.qZA(),e.YNc(18,Ro,2,0,"span",17),e.YNc(19,Mo,2,0,"span",17),e.YNc(20,Oo,9,0,"span",17),e.YNc(21,Ao,2,0,"span",18),e._UZ(22,"hr"),e.qZA(),e.qZA(),e.TgZ(23,"div",8),e.TgZ(24,"label",19),e.SDv(25,20),e.qZA(),e.TgZ(26,"div",11),e.YNc(27,ho,6,4,"ng-container",21),e.TgZ(28,"div",22),e.TgZ(29,"div",23),e.TgZ(30,"cd-select",24),e.NdJ("selection",function(i){return e.CHM(t),e.oxw().onPortalSelection(i)}),e._UZ(31,"i",25),e.ynx(32),e.SDv(33,26),e.BQk(),e.qZA(),e.qZA(),e.qZA(),e._UZ(34,"input",27),e.YNc(35,Po,2,1,"span",17),e._UZ(36,"hr"),e.qZA(),e.qZA(),e.TgZ(37,"div",8),e.TgZ(38,"label",28),e.SDv(39,29),e.qZA(),e.TgZ(40,"div",11),e.YNc(41,Fo,12,10,"ng-container",21),e._UZ(42,"input",30),e.YNc(43,Do,2,0,"span",17),e.YNc(44,vo,2,0,"span",17),e.TgZ(45,"div",22),e.TgZ(46,"div",23),e.TgZ(47,"cd-select",24),e.NdJ("selection",function(i){return e.CHM(t),e.oxw().onImageSelection(i)}),e._UZ(48,"i",25),e.ynx(49),e.SDv(50,31),e.BQk(),e.qZA(),e.qZA(),e.qZA(),e._UZ(51,"hr"),e.qZA(),e.qZA(),e.TgZ(52,"div",8),e.TgZ(53,"div",32),e.TgZ(54,"div",33),e._UZ(55,"input",34),e.TgZ(56,"label",35),e.SDv(57,36),e.qZA(),e.qZA(),e._UZ(58,"hr"),e.qZA(),e.qZA(),e.YNc(59,qo,41,8,"div",37),e.YNc(60,sn,13,5,"div",38),e.YNc(61,cn,12,5,"div",38),e.qZA(),e.TgZ(62,"div",39),e.TgZ(63,"cd-form-button-panel",40),e.NdJ("submitActionEvent",function(){return e.CHM(t),e.oxw().submit()}),e.ALo(64,"titlecase"),e.ALo(65,"upperFirst"),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA()}if(2&n){const t=e.MAs(2),o=e.oxw();e.xp6(1),e.Q6J("formGroup",o.targetForm),e.xp6(6),e.pQV(e.lcZ(6,26,o.action))(e.lcZ(7,28,o.resource)),e.QtT(5),e.xp6(10),e.Q6J("ngClass",e.VKq(34,J,o.icons.deepCheck)),e.xp6(1),e.Q6J("ngIf",o.targetForm.showError("target_iqn",t,"required")),e.xp6(1),e.Q6J("ngIf",o.targetForm.showError("target_iqn",t,"pattern")),e.xp6(1),e.Q6J("ngIf",o.targetForm.showError("target_iqn",t,"iqn")),e.xp6(1),e.Q6J("ngIf",o.hasAdvancedSettings(o.targetForm.getValue("target_controls"))),e.xp6(6),e.Q6J("ngForOf",o.portals.value),e.xp6(3),e.Q6J("data",o.portals.value)("options",o.portalsSelections)("messages",o.messages.portals),e.xp6(1),e.Q6J("ngClass",e.VKq(36,J,o.icons.add)),e.xp6(4),e.Q6J("ngIf",o.targetForm.showError("portals",t,"minGateways")),e.xp6(6),e.Q6J("ngForOf",o.targetForm.getValue("disks")),e.xp6(2),e.Q6J("ngIf",o.targetForm.showError("disks",t,"dupLunId")),e.xp6(1),e.Q6J("ngIf",o.targetForm.showError("disks",t,"dupWwn")),e.xp6(3),e.Q6J("data",o.disks.value)("options",o.imagesSelections)("messages",o.messages.images),e.xp6(1),e.Q6J("ngClass",e.VKq(38,J,o.icons.add)),e.xp6(11),e.Q6J("ngIf",o.cephIscsiConfigVersion>10&&!o.targetForm.getValue("acl_enabled")),e.xp6(1),e.Q6J("ngIf",o.targetForm.getValue("acl_enabled")),e.xp6(1),e.Q6J("ngIf",o.targetForm.getValue("acl_enabled")),e.xp6(2),e.Q6J("form",o.targetForm)("submitText",e.lcZ(64,30,o.action)+" "+e.lcZ(65,32,o.resource))}}let ut=(()=>{class n extends H.E{constructor(t,o,i,_,r,c,d){super(),this.iscsiService=t,this.modalService=o,this.rbdService=i,this.router=_,this.route=r,this.taskWrapper=c,this.actionLabels=d,this.api_version=0,this.minimum_gateways=1,this.icons=T.P,this.isEdit=!1,this.portalsSelections=[],this.imagesInitiatorSelections=[],this.groupDiskSelections=[],this.groupMembersSelections=[],this.imagesSettings={},this.messages={portals:new F.a({noOptions:"There are no portals available."}),images:new F.a({noOptions:"There are no images available."}),initiatorImage:new F.a({noOptions:"There are no images available. Please make sure you add an image to the target."}),groupInitiator:new F.a({noOptions:"There are no initiators available. Please make sure you add an initiator to the target."})},this.IQN_REGEX=/^iqn\.(19|20)\d\d-(0[1-9]|1[0-2])\.\D{2,3}(\.[A-Za-z0-9-]+)+(:[A-Za-z0-9-\.]+)*$/,this.USER_REGEX=/^[\w\.:@_-]{8,64}$/,this.PASSWORD_REGEX=/^[\w@\-_\/]{12,16}$/,this.resource="target"}ngOnInit(){const t=new A.E(()=>{});t.pageInfo.limit=-1;const o=[this.iscsiService.listTargets(),this.rbdService.list(t.toParams()),this.iscsiService.portals(),this.iscsiService.settings(),this.iscsiService.version()];this.router.url.startsWith("/block/iscsi/targets/edit")&&(this.isEdit=!0,this.route.params.subscribe(i=>{this.target_iqn=decodeURIComponent(i.target_iqn),o.push(this.iscsiService.getTarget(this.target_iqn))})),this.action=this.isEdit?this.actionLabels.EDIT:this.actionLabels.CREATE,(0,le.D)(o).subscribe(i=>{const _=S()(i[0]).filter(c=>c.target_iqn!==this.target_iqn).flatMap(c=>c.disks).map(c=>`${c.pool}/${c.image}`).value();"api_version"in i[3]&&(this.api_version=i[3].api_version),this.minimum_gateways=i[3].config.minimum_gateways,this.target_default_controls=i[3].target_default_controls,this.target_controls_limits=i[3].target_controls_limits,this.disk_default_controls=i[3].disk_default_controls,this.disk_controls_limits=i[3].disk_controls_limits,this.backstores=i[3].backstores,this.default_backstore=i[3].default_backstore,this.unsupported_rbd_features=i[3].unsupported_rbd_features,this.required_rbd_features=i[3].required_rbd_features,this.imagesAll=S()(i[1]).flatMap(c=>c.value).filter(c=>!c.namespace&&!(-1!==_.indexOf(`${c.pool_name}/${c.name}`)||0===this.getValidBackstores(c).length)).value(),this.imagesSelections=this.imagesAll.map(c=>new x.$(!1,`${c.pool_name}/${c.name}`,""));const r=[];i[2].forEach(c=>{c.ip_addresses.forEach(d=>{r.push(new x.$(!1,c.name+":"+d,""))})}),this.portalsSelections=[...r],this.cephIscsiConfigVersion=i[4].ceph_iscsi_config_version,this.createForm(),i[5]&&this.resolveModel(i[5]),this.loadingReady()})}createForm(){if(this.targetForm=new y.d({target_iqn:new a.NI("iqn.2001-07.com.ceph:"+Date.now(),{validators:[a.kI.required,a.kI.pattern(this.IQN_REGEX)]}),target_controls:new a.NI({}),portals:new a.NI([],{validators:[z.h.custom("minGateways",t=>S().uniq(t.map(i=>i.split(":")[0])).length{const o=this.getLunIds(t);return o.length!==S().uniq(o).length}),z.h.custom("dupWwn",t=>{const o=this.getWwns(t);return o.length!==S().uniq(o).length})]}),initiators:new a.Oe([]),groups:new a.Oe([]),acl_enabled:new a.NI(!1)}),this.cephIscsiConfigVersion>10){const t=new y.d({user:new a.NI(""),password:new a.NI(""),mutual_user:new a.NI(""),mutual_password:new a.NI("")});this.setAuthValidator(t),this.targetForm.addControl("auth",t)}}resolveModel(t){this.targetForm.patchValue({target_iqn:t.target_iqn,target_controls:t.target_controls,acl_enabled:t.acl_enabled}),this.cephIscsiConfigVersion>10&&this.targetForm.patchValue({auth:t.auth});const o=[];S().forEach(t.portals,_=>{o.push(`${_.host}:${_.ip}`)}),this.targetForm.patchValue({portals:o});const i=[];S().forEach(t.disks,_=>{const r=`${_.pool}/${_.image}`;i.push(r),this.imagesSettings[r]={backstore:_.backstore},this.imagesSettings[r][_.backstore]=_.controls,"lun"in _&&(this.imagesSettings[r].lun=_.lun),"wwn"in _&&(this.imagesSettings[r].wwn=_.wwn),this.onImageSelection({option:{name:r,selected:!0}})}),this.targetForm.patchValue({disks:i}),S().forEach(t.clients,_=>{const r=this.addInitiator();_.luns=S().map(_.luns,c=>`${c.pool}/${c.image}`),r.patchValue(_)}),t.groups.forEach((_,r)=>{const c=this.addGroup();_.disks=S().map(_.disks,d=>`${d.pool}/${d.image}`),c.patchValue(_),S().forEach(_.members,d=>{this.onGroupMemberSelection({option:new x.$(!0,d,"")},r)})})}hasAdvancedSettings(t){return Object.values(t).length>0}get portals(){return this.targetForm.get("portals")}onPortalSelection(){this.portals.setValue(this.portals.value)}removePortal(t,o){return this.portalsSelections.forEach(i=>{i.name===o&&(i.selected=!1)}),this.portals.value.splice(t,1),this.portals.setValue(this.portals.value),!1}get disks(){return this.targetForm.get("disks")}removeImage(t,o){return this.imagesSelections.forEach(i=>{i.name===o&&(i.selected=!1)}),this.disks.value.splice(t,1),this.removeImageRefs(o),this.targetForm.get("disks").updateValueAndValidity({emitEvent:!1}),!1}removeImageRefs(t){this.initiators.controls.forEach(o=>{const i=o.value.luns.filter(_=>_!==t);o.get("luns").setValue(i)}),this.groups.controls.forEach(o=>{const i=o.value.disks.filter(_=>_!==t);o.get("disks").setValue(i)}),S().forEach(this.imagesInitiatorSelections,(o,i)=>{this.imagesInitiatorSelections[i]=o.filter(_=>_.name!==t)}),S().forEach(this.groupDiskSelections,(o,i)=>{this.groupDiskSelections[i]=o.filter(_=>_.name!==t)})}getDefaultBackstore(t){let o=this.default_backstore;const i=this.getImageById(t);return this.validFeatures(i,this.default_backstore)||this.backstores.forEach(_=>{_!==this.default_backstore&&this.validFeatures(i,_)&&(o=_)}),o}isLunIdInUse(t,o){const i=this.disks.value.filter(_=>_!==o);return this.getLunIds(i).includes(t)}getLunIds(t){return S().map(t,o=>this.imagesSettings[o].lun)}nextLunId(t){const o=this.disks.value.filter(r=>r!==t),i=this.getLunIds(o);let _=0;for(;i.includes(_);)_++;return _}getWwns(t){return S().map(t,i=>this.imagesSettings[i].wwn).filter(i=>S().isString(i)&&""!==i)}onImageSelection(t){const o=t.option;if(o.selected){if(this.imagesSettings[o.name])this.isLunIdInUse(this.imagesSettings[o.name].lun,o.name)&&(this.imagesSettings[o.name].lun=this.nextLunId(o.name));else{const i=this.getDefaultBackstore(o.name);this.imagesSettings[o.name]={backstore:i,lun:this.nextLunId(o.name)},this.imagesSettings[o.name][i]={}}S().forEach(this.imagesInitiatorSelections,(i,_)=>{i.push(new x.$(!1,o.name,"")),this.imagesInitiatorSelections[_]=[...i]}),S().forEach(this.groupDiskSelections,(i,_)=>{i.push(new x.$(!1,o.name,"")),this.groupDiskSelections[_]=[...i]})}else this.removeImageRefs(o.name);this.targetForm.get("disks").updateValueAndValidity({emitEvent:!1})}get initiators(){return this.targetForm.get("initiators")}addInitiator(){const t=new y.d({client_iqn:new a.NI("",{validators:[a.kI.required,z.h.custom("notUnique",i=>{const _=this.initiators.controls.reduce(function(r,c){return r.concat(c.value.client_iqn)},[]);return _.indexOf(i)!==_.lastIndexOf(i)}),a.kI.pattern(this.IQN_REGEX)]}),auth:new y.d({user:new a.NI(""),password:new a.NI(""),mutual_user:new a.NI(""),mutual_password:new a.NI("")}),luns:new a.NI([]),cdIsInGroup:new a.NI(!1)});this.setAuthValidator(t),this.initiators.push(t),S().forEach(this.groupMembersSelections,(i,_)=>{i.push(new x.$(!1,"","")),this.groupMembersSelections[_]=[...i]});const o=S().map(this.targetForm.getValue("disks"),i=>new x.$(!1,i,""));return this.imagesInitiatorSelections.push(o),t}setAuthValidator(t){z.h.validateIf(t.get("user"),()=>t.getValue("password")||t.getValue("mutual_user")||t.getValue("mutual_password"),[a.kI.required],[a.kI.pattern(this.USER_REGEX)],[t.get("password"),t.get("mutual_user"),t.get("mutual_password")]),z.h.validateIf(t.get("password"),()=>t.getValue("user")||t.getValue("mutual_user")||t.getValue("mutual_password"),[a.kI.required],[a.kI.pattern(this.PASSWORD_REGEX)],[t.get("user"),t.get("mutual_user"),t.get("mutual_password")]),z.h.validateIf(t.get("mutual_user"),()=>t.getValue("mutual_password"),[a.kI.required],[a.kI.pattern(this.USER_REGEX)],[t.get("user"),t.get("password"),t.get("mutual_password")]),z.h.validateIf(t.get("mutual_password"),()=>t.getValue("mutual_user"),[a.kI.required],[a.kI.pattern(this.PASSWORD_REGEX)],[t.get("user"),t.get("password"),t.get("mutual_user")])}removeInitiator(t){const o=this.initiators.value[t];this.initiators.removeAt(t),S().forEach(this.groupMembersSelections,(i,_)=>{i.splice(t,1),this.groupMembersSelections[_]=[...i]}),this.groups.controls.forEach(i=>{const _=i.value.members.filter(r=>r!==o.client_iqn);i.get("members").setValue(_)}),this.imagesInitiatorSelections.splice(t,1)}updatedInitiatorSelector(){this.initiators.controls.forEach(t=>{t.get("client_iqn").updateValueAndValidity({emitEvent:!1})}),S().forEach(this.groupMembersSelections,(t,o)=>{S().forEach(t,(i,_)=>{const r=i.name;i.name=this.initiators.controls[_].value.client_iqn,this.groups.controls.forEach(c=>{const d=c.value.members,g=d.indexOf(r);-1!==g&&(d[g]=i.name),c.get("members").setValue(d)})}),this.groupMembersSelections[o]=[...this.groupMembersSelections[o]]})}removeInitiatorImage(t,o,i,_){const r=t.getValue("luns");return r.splice(o,1),t.patchValue({luns:r}),this.imagesInitiatorSelections[i].forEach(c=>{c.name===_&&(c.selected=!1)}),!1}get groups(){return this.targetForm.get("groups")}addGroup(){const t=new y.d({group_id:new a.NI("",{validators:[a.kI.required]}),members:new a.NI([]),disks:new a.NI([])});this.groups.push(t);const o=S().map(this.targetForm.getValue("disks"),_=>new x.$(!1,_,""));this.groupDiskSelections.push(o);const i=S().map(this.initiators.value,_=>new x.$(!1,_.client_iqn,"",!_.cdIsInGroup));return this.groupMembersSelections.push(i),t}removeGroup(t){this.groups.removeAt(t),this.groupMembersSelections[t].filter(i=>i.selected).forEach(i=>{i.selected=!1,this.onGroupMemberSelection({option:i},t)}),this.groupMembersSelections.splice(t,1),this.groupDiskSelections.splice(t,1)}onGroupMemberSelection(t,o){const i=t.option;let _=[];i.selected||(_=this.groupDiskSelections[o].filter(c=>c.selected).map(c=>c.name)),this.initiators.controls.forEach((r,c)=>{r.value.client_iqn===i.name&&(r.patchValue({luns:_}),r.get("cdIsInGroup").setValue(i.selected),S().forEach(this.groupMembersSelections,d=>{d[c].enabled=!i.selected}),this.imagesInitiatorSelections[c].forEach(d=>{d.selected=_.includes(d.name)}))})}removeGroupInitiator(t,o,i){const _=t.getValue("members")[o];t.getValue("members").splice(o,1),this.onGroupMemberSelection({option:new x.$(!1,_,"")},i)}removeGroupDisk(t,o,i){const _=t.getValue("disks")[o];t.getValue("disks").splice(o,1),this.groupDiskSelections[i].forEach(r=>{r.name===_&&(r.selected=!1)}),this.groupDiskSelections[i]=[...this.groupDiskSelections[i]]}submit(){const t=S().cloneDeep(this.targetForm.value),o={target_iqn:this.targetForm.getValue("target_iqn"),target_controls:this.targetForm.getValue("target_controls"),acl_enabled:this.targetForm.getValue("acl_enabled"),portals:[],disks:[],clients:[],groups:[]};if(this.cephIscsiConfigVersion>10){const _=this.targetForm.get("auth");_.getValue("user")||_.get("user").setValue(""),_.getValue("password")||_.get("password").setValue(""),_.getValue("mutual_user")||_.get("mutual_user").setValue(""),_.getValue("mutual_password")||_.get("mutual_password").setValue("");const r=this.targetForm.getValue("acl_enabled");o.auth={user:r?"":_.getValue("user"),password:r?"":_.getValue("password"),mutual_user:r?"":_.getValue("mutual_user"),mutual_password:r?"":_.getValue("mutual_password")}}let i;t.disks.forEach(_=>{const r=_.split("/"),c=this.imagesSettings[_].backstore;o.disks.push({pool:r[0],image:r[1],backstore:c,controls:this.imagesSettings[_][c],lun:this.imagesSettings[_].lun,wwn:this.imagesSettings[_].wwn})}),t.portals.forEach(_=>{const r=_.indexOf(":");o.portals.push({host:_.substring(0,r),ip:_.substring(r+1)})}),o.acl_enabled&&(t.initiators.forEach(_=>{_.auth.user||(_.auth.user=""),_.auth.password||(_.auth.password=""),_.auth.mutual_user||(_.auth.mutual_user=""),_.auth.mutual_password||(_.auth.mutual_password=""),delete _.cdIsInGroup;const r=[];_.luns.forEach(c=>{const d=c.split("/");r.push({pool:d[0],image:d[1]})}),_.luns=r}),o.clients=t.initiators),o.acl_enabled&&(t.groups.forEach(_=>{const r=[];_.disks.forEach(c=>{const d=c.split("/");r.push({pool:d[0],image:d[1]})}),_.disks=r}),o.groups=t.groups),this.isEdit?(o.new_target_iqn=o.target_iqn,o.target_iqn=this.target_iqn,i=this.taskWrapper.wrapTaskAroundCall({task:new R.R("iscsi/target/edit",{target_iqn:o.target_iqn}),call:this.iscsiService.updateTarget(this.target_iqn,o)})):i=this.taskWrapper.wrapTaskAroundCall({task:new R.R("iscsi/target/create",{target_iqn:o.target_iqn}),call:this.iscsiService.createTarget(o)}),i.subscribe({error:()=>{this.targetForm.setErrors({cdSubmitButton:!0})},complete:()=>this.router.navigate(["/block/iscsi/targets"])})}targetSettingsModal(){const t={target_controls:this.targetForm.get("target_controls"),target_default_controls:this.target_default_controls,target_controls_limits:this.target_controls_limits};this.modalRef=this.modalService.show(Co,t)}imageSettingsModal(t){const o={imagesSettings:this.imagesSettings,image:t,api_version:this.api_version,disk_default_controls:this.disk_default_controls,disk_controls_limits:this.disk_controls_limits,backstores:this.getValidBackstores(this.getImageById(t)),control:this.targetForm.get("disks")};this.modalRef=this.modalService.show(To,o)}validFeatures(t,o){const i=t.features,_=this.required_rbd_features[o];return(i&_)===_&&0==(i&this.unsupported_rbd_features[o])}getImageById(t){return this.imagesAll.find(o=>t===`${o.pool_name}/${o.name}`)}getValidBackstores(t){return this.backstores.filter(o=>this.validFeatures(t,o))}}return n.\u0275fac=function(t){return new(t||n)(e.Y36(X),e.Y36(de.Z),e.Y36(q),e.Y36(m.F0),e.Y36(m.gz),e.Y36(u.P),e.Y36(v.p4))},n.\u0275cmp=e.Xpm({type:n,selectors:[["cd-iscsi-target-form"]],features:[e.qOj],decls:1,vars:1,consts:function(){let s,t,o,i,_,r,c,d,g,f,I,P,Z,B,Q,Y,ee,te,w,_e,ae,M,ge,ue,me,Te,fe,Ce,G,Be,Ge,xe,ye,we,qe,He,ke,Ke,Xe,Qe,ze,b,Zt,Bt,Gt,xt,yt,wt,qt,Ht,kt,Kt,Xt,Qt,zt,Jt,Yt,Vt,Ut,jt,Wt,eo;return s="" + "\ufffd0\ufffd" + " " + "\ufffd1\ufffd" + "",t="Target IQN",o="Portals",i="Add portal",_="Images",r="Add image",c="ACL authentication",d="This field is required.",g="IQN has wrong pattern.",f="An IQN has the following notation 'iqn.$year-$month.$reversedAddress:$definedName'",I="For example: iqn.2016-06.org.dashboard:storage:disk.sn-a8675309",P="More information",Z="This target has modified advanced settings.",B="At least " + "\ufffd0\ufffd" + " gateways are required.",Q="Backstore: " + "\ufffd0\ufffd" + ".\xA0",Y="This image has modified settings.",ee="Duplicated LUN numbers.",te="Duplicated WWN.",w="User",_e="Password",ae="Mutual User",M="Mutual Password",ge="This field is required.",ue="User names must have a length of 8 to 64 characters and can contain alphanumeric characters, '.', '@', '-', '_' or ':'.",me="This field is required.",Te="Passwords must have a length of 12 to 16 characters and can contain alphanumeric characters, '@', '-', '_' or '/'.",fe="This field is required.",Ce="User names must have a length of 8 to 64 characters and can contain alphanumeric characters, '.', '@', '-', '_' or ':'.",G="This field is required.",Be="Passwords must have a length of 12 to 16 characters and can contain alphanumeric characters, '@', '-', '_' or '/'.",Ge="Initiators",xe="Add initiator",ye="Initiator",we="Client IQN",qe="User",He="Password",ke="Mutual User",Ke="Mutual Password",Xe="Images",Qe="Initiator IQN needs to be unique.",ze="This field is required.",b="IQN has wrong pattern.",Zt="This field is required.",Bt="User names must have a length of 8 to 64 characters and can contain alphanumeric characters, '.', '@', '-', '_' or ':'.",Gt="This field is required.",xt="Passwords must have a length of 12 to 16 characters and can contain alphanumeric characters, '@', '-', '_' or '/'.",yt="This field is required.",wt="User names must have a length of 8 to 64 characters and can contain alphanumeric characters, '.', '@', '-', '_' or ':'.",qt="This field is required.",Ht="Passwords must have a length of 12 to 16 characters and can contain alphanumeric characters, '@', '-', '_' or '/'.",kt="Initiator belongs to a group. Images will be configure in the group.",Kt="Add image",Xt="No items added.",Qt="Groups",zt="Add group",Jt="Group",Yt="Name",Vt="Initiators",Ut="Add initiator",jt="Images",Wt="Add image",eo="No items added.",[["class","cd-col-form",4,"cdFormLoading"],[1,"cd-col-form"],["name","targetForm","novalidate","",3,"formGroup"],["formDir","ngForm"],[1,"card"],[1,"card-header"],s,[1,"card-body"],[1,"form-group","row"],["for","target_iqn",1,"cd-col-form-label","required"],t,[1,"cd-col-form-input"],[1,"input-group"],["type","text","id","target_iqn","name","target_iqn","formControlName","target_iqn","cdTrim","",1,"form-control"],[1,"input-group-append"],["id","ecp-info-button","type","button",1,"btn","btn-light",3,"click"],["aria-hidden","true",3,"ngClass"],["class","invalid-feedback",4,"ngIf"],["class","form-text text-muted",4,"ngIf"],["for","portals",1,"cd-col-form-label","required"],o,[4,"ngFor","ngForOf"],[1,"row"],[1,"col-md-12"],["elemClass","btn btn-light float-right",3,"data","options","messages","selection"],[3,"ngClass"],i,["type","hidden","id","portals","name","portals","formControlName","portals",1,"form-control"],["for","disks",1,"cd-col-form-label"],_,["type","hidden","id","disks","name","disks","formControlName","disks",1,"form-control"],r,[1,"cd-col-form-offset"],[1,"custom-control","custom-checkbox"],["type","checkbox","formControlName","acl_enabled","name","acl_enabled","id","acl_enabled",1,"custom-control-input"],["for","acl_enabled",1,"custom-control-label"],c,["formGroupName","auth",4,"ngIf"],["class","form-group row",4,"ngIf"],[1,"card-footer"],["wrappingClass","text-right",3,"form","submitText","submitActionEvent"],[1,"invalid-feedback"],d,g,f,I,["target","_blank","href","https://en.wikipedia.org/wiki/ISCSI#Addressing"],P,[1,"form-text","text-muted"],Z,[1,"input-group","cd-mb"],["type","text","disabled","",1,"cd-form-control",3,"value"],["type","button",1,"btn","btn-light",3,"click"],B,["class","input-group-text",4,"ngIf"],[4,"ngIf"],[1,"input-group-text"],Q,Y,ee,te,["formGroupName","auth"],["for","target_user",1,"cd-col-form-label"],w,["type","text","autocomplete","off","id","target_user","name","target_user","formControlName","user",1,"form-control"],["for","target_password",1,"cd-col-form-label"],_e,["type","password","autocomplete","new-password","id","target_password","name","target_password","formControlName","password",1,"form-control"],["type","button","cdPasswordButton","target_password",1,"btn","btn-light"],["source","target_password"],["for","target_mutual_user",1,"cd-col-form-label"],ae,["type","text","autocomplete","off","id","target_mutual_user","name","target_mutual_user","formControlName","mutual_user",1,"form-control"],["for","target_mutual_password",1,"cd-col-form-label"],M,["type","password","autocomplete","new-password","id","target_mutual_password","name","target_mutual_password","formControlName","mutual_password",1,"form-control"],["type","button","cdPasswordButton","target_mutual_password",1,"btn","btn-light"],["source","target_mutual_password"],ge,ue,me,Te,fe,Ce,G,Be,["for","initiators",1,"cd-col-form-label"],Ge,["formArrayName","initiators",1,"cd-col-form-input"],["class","card mb-2",3,"formGroup",4,"ngFor","ngForOf"],[1,"btn","btn-light","float-right",3,"click"],xe,[1,"card","mb-2",3,"formGroup"],ye,["type","button",1,"close",3,"click"],["for","client_iqn",1,"cd-col-form-label","required"],we,["type","text","formControlName","client_iqn","cdTrim","",1,"form-control",3,"blur"],["for","user",1,"cd-col-form-label"],qe,["formControlName","user","autocomplete","off","type","text",1,"form-control",3,"id"],["for","password",1,"cd-col-form-label"],He,["formControlName","password","autocomplete","new-password","type","password",1,"form-control",3,"id"],["type","button",1,"btn","btn-light",3,"cdPasswordButton"],[3,"source"],["for","mutual_user",1,"cd-col-form-label"],ke,["formControlName","mutual_user","autocomplete","off","type","text",1,"form-control",3,"id"],["for","mutual_password",1,"cd-col-form-label"],Ke,["formControlName","mutual_password","autocomplete","new-password","type","password",1,"form-control",3,"id"],["for","luns",1,"cd-col-form-label"],Xe,["class","row",4,"ngIf"],Qe,ze,b,Zt,Bt,Gt,xt,yt,wt,qt,Ht,kt,["elemClass","btn btn-light float-right",3,"data","options","messages"],Kt,Xt,Qt,["formArrayName","groups",1,"cd-col-form-input"],zt,Jt,["for","group_id",1,"cd-col-form-label","required"],Yt,["type","text","formControlName","group_id",1,"form-control"],["for","members",1,"cd-col-form-label"],Vt,Ut,jt,Wt,eo]},template:function(t,o){1&t&&e.YNc(0,dn,66,40,"div",0),2&t&&e.Q6J("cdFormLoading",o.loading)},directives:[pt.y,a._Y,a.JL,a.sg,h.V,O.P,$.o,a.Fj,k.b,a.JJ,a.u,So,l.mk,l.O5,l.sg,Eo.H,a.Wl,j.p,a.x0,gt.C,Ye.s,a.CE],pipes:[l.rS,et.m,Je.V],styles:[".cd-mb[_ngcontent-%COMP%]{margin-bottom:10px}"]}),n})();var mt=p(68136),pe=p(30982),W=p(35905),De=p(99466),Se=p(68774),Tt=p(55657),ce=p(38047),tt=p(18001),ve=p(97161),oe=p(74937);function pn(n,s){1&n&&(e.TgZ(0,"span",30),e.SDv(1,31),e.qZA())}function gn(n,s){1&n&&(e.TgZ(0,"span",30),e.SDv(1,32),e.qZA())}function un(n,s){1&n&&(e.TgZ(0,"span",30),e.SDv(1,33),e.qZA())}function mn(n,s){1&n&&(e.TgZ(0,"span",30),e.SDv(1,34),e.qZA())}function Tn(n,s){1&n&&(e.TgZ(0,"span",30),e.SDv(1,35),e.qZA())}function fn(n,s){1&n&&(e.TgZ(0,"span",30),e.SDv(1,36),e.qZA())}function Cn(n,s){1&n&&(e.TgZ(0,"span",30),e.SDv(1,37),e.qZA())}function Sn(n,s){1&n&&(e.TgZ(0,"span",30),e.SDv(1,38),e.qZA())}let En=(()=>{class n{constructor(t,o,i,_,r){this.authStorageService=t,this.activeModal=o,this.actionLabels=i,this.iscsiService=_,this.notificationService=r,this.USER_REGEX=/^[\w\.:@_-]{8,64}$/,this.PASSWORD_REGEX=/^[\w@\-_\/]{12,16}$/,this.permission=this.authStorageService.getPermissions().iscsi}ngOnInit(){this.hasPermission=this.permission.update,this.createForm(),this.iscsiService.getDiscovery().subscribe(t=>{this.discoveryForm.patchValue(t)})}createForm(){this.discoveryForm=new y.d({user:new a.NI({value:"",disabled:!this.hasPermission}),password:new a.NI({value:"",disabled:!this.hasPermission}),mutual_user:new a.NI({value:"",disabled:!this.hasPermission}),mutual_password:new a.NI({value:"",disabled:!this.hasPermission})}),z.h.validateIf(this.discoveryForm.get("user"),()=>this.discoveryForm.getValue("password")||this.discoveryForm.getValue("mutual_user")||this.discoveryForm.getValue("mutual_password"),[a.kI.required],[a.kI.pattern(this.USER_REGEX)],[this.discoveryForm.get("password"),this.discoveryForm.get("mutual_user"),this.discoveryForm.get("mutual_password")]),z.h.validateIf(this.discoveryForm.get("password"),()=>this.discoveryForm.getValue("user")||this.discoveryForm.getValue("mutual_user")||this.discoveryForm.getValue("mutual_password"),[a.kI.required],[a.kI.pattern(this.PASSWORD_REGEX)],[this.discoveryForm.get("user"),this.discoveryForm.get("mutual_user"),this.discoveryForm.get("mutual_password")]),z.h.validateIf(this.discoveryForm.get("mutual_user"),()=>this.discoveryForm.getValue("mutual_password"),[a.kI.required],[a.kI.pattern(this.USER_REGEX)],[this.discoveryForm.get("user"),this.discoveryForm.get("password"),this.discoveryForm.get("mutual_password")]),z.h.validateIf(this.discoveryForm.get("mutual_password"),()=>this.discoveryForm.getValue("mutual_user"),[a.kI.required],[a.kI.pattern(this.PASSWORD_REGEX)],[this.discoveryForm.get("user"),this.discoveryForm.get("password"),this.discoveryForm.get("mutual_user")])}submitAction(){this.iscsiService.updateDiscovery(this.discoveryForm.value).subscribe(()=>{this.notificationService.show(tt.k.success,"Updated discovery authentication"),this.activeModal.close()},()=>{this.discoveryForm.setErrors({cdSubmitButton:!0})})}}return n.\u0275fac=function(t){return new(t||n)(e.Y36(oe.j),e.Y36(N.Kz),e.Y36(v.p4),e.Y36(X),e.Y36(ve.g))},n.\u0275cmp=e.Xpm({type:n,selectors:[["cd-iscsi-target-discovery-modal"]],decls:46,vars:13,consts:function(){let s,t,o,i,_,r,c,d,g,f,I,P,Z;return s="Discovery Authentication",t="User",o="Password",i="Mutual User",_="Mutual Password",r="This field is required.",c="User names must have a length of 8 to 64 characters and can contain alphanumeric characters, '.', '@', '-', '_' or ':'.",d="This field is required.",g="Passwords must have a length of 12 to 16 characters and can contain alphanumeric characters, '@', '-', '_' or '/'.",f="This field is required.",I="User names must have a length of 8 to 64 characters and can contain alphanumeric characters, '.', '@', '-', '_' or ':'.",P="This field is required.",Z="Passwords must have a length of 12 to 16 characters and can contain alphanumeric characters, '@', '-', '_' or '/'.",[[3,"modalRef"],[1,"modal-title"],s,[1,"modal-content"],["name","discoveryForm","novalidate","",3,"formGroup"],["formDir","ngForm"],[1,"modal-body"],[1,"form-group","row"],["for","user",1,"cd-col-form-label"],t,[1,"cd-col-form-input"],["id","user","formControlName","user","type","text","autocomplete","off",1,"form-control"],["class","invalid-feedback",4,"ngIf"],["for","password",1,"cd-col-form-label"],o,[1,"input-group"],["id","password","formControlName","password","type","password","autocomplete","new-password",1,"form-control"],[1,"input-group-append"],["type","button","cdPasswordButton","password",1,"btn","btn-light"],["source","password"],["for","mutual_user",1,"cd-col-form-label"],i,["id","mutual_user","formControlName","mutual_user","type","text","autocomplete","off",1,"form-control"],["for","mutual_password",1,"cd-col-form-label"],_,["id","mutual_password","formControlName","mutual_password","type","password","autocomplete","new-password",1,"form-control"],["type","button","cdPasswordButton","mutual_password",1,"btn","btn-light"],["source","mutual_password"],[1,"modal-footer"],[3,"form","showSubmit","submitText","submitActionEvent"],[1,"invalid-feedback"],r,c,d,g,f,I,P,Z]},template:function(t,o){if(1&t&&(e.TgZ(0,"cd-modal",0),e.ynx(1,1),e.SDv(2,2),e.BQk(),e.ynx(3,3),e.TgZ(4,"form",4,5),e.TgZ(6,"div",6),e.TgZ(7,"div",7),e.TgZ(8,"label",8),e.SDv(9,9),e.qZA(),e.TgZ(10,"div",10),e._UZ(11,"input",11),e.YNc(12,pn,2,0,"span",12),e.YNc(13,gn,2,0,"span",12),e.qZA(),e.qZA(),e.TgZ(14,"div",7),e.TgZ(15,"label",13),e.SDv(16,14),e.qZA(),e.TgZ(17,"div",10),e.TgZ(18,"div",15),e._UZ(19,"input",16),e.TgZ(20,"span",17),e._UZ(21,"button",18),e._UZ(22,"cd-copy-2-clipboard-button",19),e.qZA(),e.qZA(),e.YNc(23,un,2,0,"span",12),e.YNc(24,mn,2,0,"span",12),e.qZA(),e.qZA(),e.TgZ(25,"div",7),e.TgZ(26,"label",20),e.ynx(27),e.SDv(28,21),e.BQk(),e.qZA(),e.TgZ(29,"div",10),e._UZ(30,"input",22),e.YNc(31,Tn,2,0,"span",12),e.YNc(32,fn,2,0,"span",12),e.qZA(),e.qZA(),e.TgZ(33,"div",7),e.TgZ(34,"label",23),e.SDv(35,24),e.qZA(),e.TgZ(36,"div",10),e.TgZ(37,"div",15),e._UZ(38,"input",25),e.TgZ(39,"span",17),e._UZ(40,"button",26),e._UZ(41,"cd-copy-2-clipboard-button",27),e.qZA(),e.qZA(),e.YNc(42,Cn,2,0,"span",12),e.YNc(43,Sn,2,0,"span",12),e.qZA(),e.qZA(),e.qZA(),e.TgZ(44,"div",28),e.TgZ(45,"cd-form-button-panel",29),e.NdJ("submitActionEvent",function(){return o.submitAction()}),e.qZA(),e.qZA(),e.qZA(),e.BQk(),e.qZA()),2&t){const i=e.MAs(5);e.Q6J("modalRef",o.activeModal),e.xp6(4),e.Q6J("formGroup",o.discoveryForm),e.xp6(8),e.Q6J("ngIf",o.discoveryForm.showError("user",i,"required")),e.xp6(1),e.Q6J("ngIf",o.discoveryForm.showError("user",i,"pattern")),e.xp6(10),e.Q6J("ngIf",o.discoveryForm.showError("password",i,"required")),e.xp6(1),e.Q6J("ngIf",o.discoveryForm.showError("password",i,"pattern")),e.xp6(7),e.Q6J("ngIf",o.discoveryForm.showError("mutual_user",i,"required")),e.xp6(1),e.Q6J("ngIf",o.discoveryForm.showError("mutual_user",i,"pattern")),e.xp6(10),e.Q6J("ngIf",o.discoveryForm.showError("mutual_password",i,"required")),e.xp6(1),e.Q6J("ngIf",o.discoveryForm.showError("mutual_password",i,"pattern")),e.xp6(2),e.Q6J("form",o.discoveryForm)("showSubmit",o.hasPermission)("submitText",o.actionLabels.SUBMIT)}},directives:[C.z,a._Y,a.JL,a.sg,h.V,O.P,$.o,a.Fj,k.b,a.JJ,a.u,l.O5,gt.C,Ye.s,j.p],styles:[""]}),n})();var Rn=p(86969);let ft=(()=>{class n{constructor(t){this.router=t}}return n.\u0275fac=function(t){return new(t||n)(e.Y36(m.F0))},n.\u0275cmp=e.Xpm({type:n,selectors:[["cd-iscsi-tabs"]],decls:8,vars:1,consts:function(){let s,t;return s="Overview",t="Targets",[["ngbNav","",1,"nav-tabs",3,"activeId","navChange"],["nav","ngbNav"],["ngbNavItem","/block/iscsi/overview"],["ngbNavLink",""],s,["ngbNavItem","/block/iscsi/targets"],t]},template:function(t,o){1&t&&(e.TgZ(0,"ul",0,1),e.NdJ("navChange",function(_){return o.router.navigate([_.nextId])}),e.TgZ(2,"li",2),e.TgZ(3,"a",3),e.SDv(4,4),e.qZA(),e.qZA(),e.TgZ(5,"li",5),e.TgZ(6,"a",3),e.SDv(7,6),e.qZA(),e.qZA(),e.qZA()),2&t&&e.Q6J("activeId",o.router.url)},directives:[N.Pz,N.nv,N.Vx],styles:[""]}),n})();var Ct=p(34501),Mn=p(30490),Ee=p(94928),On=p(68962);const An=["highlightTpl"],hn=["detailTable"],Pn=["tree"],In=function(){return["logged_in"]},bn=function(){return["logged_out"]},Nn=function(n,s){return{"badge-success":n,"badge-danger":s}};function Fn(n,s){if(1&n&&(e._UZ(0,"i"),e.TgZ(1,"span"),e._uU(2),e.qZA(),e._uU(3," \xa0 "),e.TgZ(4,"span",8),e._uU(5),e.qZA()),2&n){const t=s.$implicit;e.Tol(t.data.cdIcon),e.xp6(2),e.Oqu(t.data.name),e.xp6(2),e.Q6J("ngClass",e.WLB(7,Nn,e.DdM(5,In).includes(t.data.status),e.DdM(6,bn).includes(t.data.status))),e.xp6(1),e.hij(" ",t.data.status," ")}}function Dn(n,s){if(1&n&&(e.TgZ(0,"div",9),e.TgZ(1,"legend"),e._uU(2),e.qZA(),e._UZ(3,"cd-table",10,11),e.qZA()),2&n){const t=e.oxw();e.xp6(2),e.Oqu(t.title),e.xp6(1),e.Q6J("data",t.data)("columns",t.columns)("limit",0)}}function vn(n,s){if(1&n&&(e.TgZ(0,"span"),e._uU(1),e.qZA()),2&n){const t=e.oxw().value;e.xp6(1),e.Oqu(t)}}function Ln(n,s){if(1&n&&(e.TgZ(0,"strong"),e._uU(1),e.qZA()),2&n){const t=e.oxw().value;e.xp6(1),e.Oqu(t)}}function $n(n,s){if(1&n&&(e.YNc(0,vn,2,1,"span",12),e.YNc(1,Ln,2,1,"strong",12)),2&n){const t=s.row;e.Q6J("ngIf",void 0===t.default||t.default===t.current),e.xp6(1),e.Q6J("ngIf",void 0!==t.default&&t.default!==t.current)}}let Zn=(()=>{class n{constructor(t,o){this.iscsiBackstorePipe=t,this.booleanTextPipe=o,this.icons=T.P,this.metadata={},this.nodes=[],this.treeOptions={useVirtualScroll:!0,actionMapping:{mouse:{click:this.onNodeSelected.bind(this)}}}}set content(t){this.detailTable=t,t&&t.updateColumns()}ngOnInit(){this.columns=[{prop:"displayName",name:"Name",flexGrow:1,cellTemplate:this.highlightTpl},{prop:"current",name:"Current",flexGrow:1,cellTemplate:this.highlightTpl},{prop:"default",name:"Default",flexGrow:1,cellTemplate:this.highlightTpl}]}ngOnChanges(){this.selection&&(this.selectedItem=this.selection,this.generateTree()),this.data=void 0}generateTree(){const t=S().cloneDeep(this.selectedItem.target_controls);this.cephIscsiConfigVersion>10&&S().extend(t,S().cloneDeep(this.selectedItem.auth)),this.metadata={root:t};const o={target:{expanded:S().join(this.selectedItem.cdExecuting?[T.P.large,T.P.spinner,T.P.spin]:[T.P.large,T.P.bullseye]," ")},initiators:{expanded:S().join([T.P.large,T.P.user]," "),leaf:S().join([T.P.user]," ")},groups:{expanded:S().join([T.P.large,T.P.users]," "),leaf:S().join([T.P.users]," ")},disks:{expanded:S().join([T.P.large,T.P.disk]," "),leaf:S().join([T.P.disk]," ")},portals:{expanded:S().join([T.P.large,T.P.server]," "),leaf:S().join([T.P.server]," ")}},i=[];S().forEach(this.selectedItem.disks,d=>{const g="disk_"+d.pool+"_"+d.image;this.metadata[g]={controls:d.controls,backstore:d.backstore},["wwn","lun"].forEach(f=>{f in d&&(this.metadata[g][f]=d[f])}),i.push({name:`${d.pool}/${d.image}`,cdId:g,cdIcon:o.disks.leaf})});const _=[];S().forEach(this.selectedItem.portals,d=>{_.push({name:`${d.host}:${d.ip}`,cdIcon:o.portals.leaf})});const r=[];S().forEach(this.selectedItem.clients,d=>{const g=S().cloneDeep(d.auth);d.info&&(S().extend(g,d.info),delete g.state,S().forEach(Object.keys(d.info.state),P=>{g[P.toLowerCase()]=d.info.state[P]})),this.metadata["client_"+d.client_iqn]=g;const f=[];d.luns.forEach(P=>{f.push({name:`${P.pool}/${P.image}`,cdId:"disk_"+P.pool+"_"+P.image,cdIcon:o.disks.leaf})});let I="";d.info&&(I=Object.keys(d.info.state).includes("LOGGED_IN")?"logged_in":"logged_out"),r.push({name:d.client_iqn,status:I,cdId:"client_"+d.client_iqn,children:f,cdIcon:o.initiators.leaf})});const c=[];S().forEach(this.selectedItem.groups,d=>{const g=[];d.disks.forEach(I=>{g.push({name:`${I.pool}/${I.image}`,cdId:"disk_"+I.pool+"_"+I.image,cdIcon:o.disks.leaf})});const f=[];d.members.forEach(I=>{f.push({name:I,cdId:"client_"+I})}),c.push({name:d.group_id,cdIcon:o.groups.leaf,children:[{name:"Disks",children:g,cdIcon:o.disks.expanded},{name:"Initiators",children:f,cdIcon:o.initiators.expanded}]})}),this.nodes=[{name:this.selectedItem.target_iqn,cdId:"root",isExpanded:!0,cdIcon:o.target.expanded,children:[{name:"Disks",isExpanded:!0,children:i,cdIcon:o.disks.expanded},{name:"Portals",isExpanded:!0,children:_,cdIcon:o.portals.expanded},{name:"Initiators",isExpanded:!0,children:r,cdIcon:o.initiators.expanded},{name:"Groups",isExpanded:!0,children:c,cdIcon:o.groups.expanded}]}]}format(t){return"boolean"==typeof t?this.booleanTextPipe.transform(t):t}onNodeSelected(t,o){var i,_,r,c;if(ne.iM.ACTIVATE(t,o,!0),o.data.cdId){this.title=o.data.name;const d=this.metadata[o.data.cdId]||{};"root"===o.data.cdId?(null===(i=this.detailTable)||void 0===i||i.toggleColumn({prop:"default",isHidden:!0}),this.data=S().map(this.settings.target_default_controls,(g,f)=>({displayName:f,default:g=this.format(g),current:S().isUndefined(d[f])?g:this.format(d[f])})),this.cephIscsiConfigVersion>10&&["user","password","mutual_user","mutual_password"].forEach(g=>{this.data.push({displayName:g,default:null,current:d[g]})})):o.data.cdId.toString().startsWith("disk_")?(null===(_=this.detailTable)||void 0===_||_.toggleColumn({prop:"default",isHidden:!0}),this.data=S().map(this.settings.disk_default_controls[d.backstore],(g,f)=>({displayName:f,default:g=this.format(g),current:S().isUndefined(d.controls[f])?g:this.format(d.controls[f])})),this.data.push({displayName:"backstore",default:this.iscsiBackstorePipe.transform(this.settings.default_backstore),current:this.iscsiBackstorePipe.transform(d.backstore)}),["wwn","lun"].forEach(g=>{g in d&&this.data.push({displayName:g,default:void 0,current:d[g]})})):(null===(r=this.detailTable)||void 0===r||r.toggleColumn({prop:"default",isHidden:!1}),this.data=S().map(d,(g,f)=>({displayName:f,default:void 0,current:this.format(g)})))}else this.data=void 0;null===(c=this.detailTable)||void 0===c||c.updateColumns()}onUpdateData(){this.tree.treeModel.expandAll()}}return n.\u0275fac=function(t){return new(t||n)(e.Y36(Je.V),e.Y36(On.T))},n.\u0275cmp=e.Xpm({type:n,selectors:[["cd-iscsi-target-details"]],viewQuery:function(t,o){if(1&t&&(e.Gf(An,7),e.Gf(hn,5),e.Gf(Pn,5)),2&t){let i;e.iGM(i=e.CRH())&&(o.highlightTpl=i.first),e.iGM(i=e.CRH())&&(o.content=i.first),e.iGM(i=e.CRH())&&(o.tree=i.first)}},inputs:{selection:"selection",settings:"settings",cephIscsiConfigVersion:"cephIscsiConfigVersion"},features:[e.TTD],decls:11,vars:3,consts:function(){let s;return s="iSCSI Topology",[[1,"row"],[1,"col-6"],s,[3,"nodes","options","updateData"],["tree",""],["treeNodeTemplate",""],["class","col-6 metadata",4,"ngIf"],["highlightTpl",""],[1,"badge",3,"ngClass"],[1,"col-6","metadata"],["columnMode","flex",3,"data","columns","limit"],["detailTable",""],[4,"ngIf"]]},template:function(t,o){1&t&&(e.TgZ(0,"div",0),e.TgZ(1,"div",1),e.TgZ(2,"legend"),e.SDv(3,2),e.qZA(),e.TgZ(4,"tree-root",3,4),e.NdJ("updateData",function(){return o.onUpdateData()}),e.YNc(6,Fn,6,10,"ng-template",null,5,e.W1O),e.qZA(),e.qZA(),e.YNc(8,Dn,5,4,"div",6),e.qZA(),e.YNc(9,$n,2,2,"ng-template",null,7,e.W1O)),2&t&&(e.xp6(4),e.Q6J("nodes",o.nodes)("options",o.treeOptions),e.xp6(4),e.Q6J("ngIf",o.data))},directives:[ne.qr,l.O5,l.mk,W.a],styles:[""]}),n})();function Bn(n,s){if(1&n&&(e.ynx(0),e._UZ(1,"br"),e.TgZ(2,"span"),e.SDv(3,6),e.qZA(),e.TgZ(4,"pre"),e._uU(5),e.qZA(),e.BQk()),2&n){const t=e.oxw(2);e.xp6(5),e.Oqu(t.status)}}function Gn(n,s){if(1&n&&(e.TgZ(0,"cd-alert-panel",2),e.ynx(1),e.tHW(2,3),e._UZ(3,"cd-doc",4),e.N_p(),e.BQk(),e.YNc(4,Bn,6,1,"ng-container",5),e.qZA()),2&n){const t=e.oxw();e.xp6(4),e.Q6J("ngIf",t.status)}}function xn(n,s){if(1&n&&e._UZ(0,"cd-iscsi-target-details",15),2&n){const t=e.oxw(2);e.Q6J("cephIscsiConfigVersion",t.cephIscsiConfigVersion)("selection",t.expandedRow)("settings",t.settings)}}const yn=function(n){return[n]};function wn(n,s){if(1&n){const t=e.EpF();e.TgZ(0,"cd-table",7,8),e.NdJ("fetchData",function(){return e.CHM(t),e.oxw().getTargets()})("setExpandedRow",function(i){return e.CHM(t),e.oxw().setExpandedRow(i)})("updateSelection",function(i){return e.CHM(t),e.oxw().updateSelection(i)}),e.TgZ(2,"div",9),e._UZ(3,"cd-table-actions",10),e.TgZ(4,"button",11),e.NdJ("click",function(){return e.CHM(t),e.oxw().configureDiscoveryAuth()}),e._UZ(5,"i",12),e.ynx(6),e.SDv(7,13),e.BQk(),e.qZA(),e.qZA(),e.YNc(8,xn,1,3,"cd-iscsi-target-details",14),e.qZA()}if(2&n){const t=e.oxw();e.Q6J("data",t.targets)("columns",t.columns)("hasDetails",!0)("autoReload",!1)("status",t.tableStatus),e.xp6(3),e.Q6J("permission",t.permission)("selection",t.selection)("tableActions",t.tableActions),e.xp6(2),e.Q6J("ngClass",e.VKq(10,yn,t.icons.key)),e.xp6(3),e.Q6J("ngIf",t.expandedRow)}}let qn=(()=>{class n extends mt.o{constructor(t,o,i,_,r,c,d,g,f){super(f),this.authStorageService=t,this.iscsiService=o,this.joinPipe=i,this.taskListService=_,this.notAvailablePipe=r,this.modalService=c,this.taskWrapper=d,this.actionLabels=g,this.ngZone=f,this.available=void 0,this.selection=new Se.r,this.targets=[],this.icons=T.P,this.builders={"iscsi/target/create":I=>({target_iqn:I.target_iqn})},this.permission=this.authStorageService.getPermissions().iscsi,this.tableActions=[{permission:"create",icon:T.P.add,routerLink:()=>"/block/iscsi/targets/create",name:this.actionLabels.CREATE},{permission:"update",icon:T.P.edit,routerLink:()=>`/block/iscsi/targets/edit/${this.selection.first().target_iqn}`,name:this.actionLabels.EDIT,disable:()=>this.getEditDisableDesc()},{permission:"delete",icon:T.P.destroy,click:()=>this.deleteIscsiTargetModal(),name:this.actionLabels.DELETE,disable:()=>this.getDeleteDisableDesc()}]}ngOnInit(){this.columns=[{name:"Target",prop:"target_iqn",flexGrow:2,cellTransformation:De.e.executing},{name:"Portals",prop:"cdPortals",pipe:this.joinPipe,flexGrow:2},{name:"Images",prop:"cdImages",pipe:this.joinPipe,flexGrow:2},{name:"# Sessions",prop:"info.num_sessions",pipe:this.notAvailablePipe,flexGrow:1}],this.iscsiService.status().subscribe(t=>{this.available=t.available,t.available||(this.status=t.message)})}getTargets(){this.available&&(this.setTableRefreshTimeout(),this.iscsiService.version().subscribe(t=>{this.cephIscsiConfigVersion=t.ceph_iscsi_config_version}),this.taskListService.init(()=>this.iscsiService.listTargets(),t=>this.prepareResponse(t),t=>this.targets=t,()=>this.onFetchError(),this.taskFilter,this.itemFilter,this.builders),this.iscsiService.settings().subscribe(t=>{this.settings=t}))}ngOnDestroy(){this.summaryDataSubscription&&this.summaryDataSubscription.unsubscribe()}getEditDisableDesc(){const t=this.selection.first();return t&&(null==t?void 0:t.cdExecuting)?t.cdExecuting:t&&S().isUndefined(null==t?void 0:t.info)?"Unavailable gateway(s)":!t}getDeleteDisableDesc(){var t;const o=this.selection.first();return(null==o?void 0:o.cdExecuting)?o.cdExecuting:o&&S().isUndefined(null==o?void 0:o.info)?"Unavailable gateway(s)":o&&(null===(t=null==o?void 0:o.info)||void 0===t?void 0:t.num_sessions)?"Target has active sessions":!o}prepareResponse(t){return t.forEach(o=>{o.cdPortals=o.portals.map(i=>`${i.host}:${i.ip}`),o.cdImages=o.disks.map(i=>`${i.pool}/${i.image}`)}),t}onFetchError(){this.table.reset()}itemFilter(t,o){return t.target_iqn===o.metadata.target_iqn}taskFilter(t){return["iscsi/target/create","iscsi/target/edit","iscsi/target/delete"].includes(t.name)}updateSelection(t){this.selection=t}deleteIscsiTargetModal(){const t=this.selection.first().target_iqn;this.modalRef=this.modalService.show(pe.M,{itemDescription:"iSCSI target",itemNames:[t],submitActionObservable:()=>this.taskWrapper.wrapTaskAroundCall({task:new R.R("iscsi/target/delete",{target_iqn:t}),call:this.iscsiService.deleteTarget(t)})})}configureDiscoveryAuth(){this.modalService.show(En)}}return n.\u0275fac=function(t){return new(t||n)(e.Y36(oe.j),e.Y36(X),e.Y36(Rn.A),e.Y36(ce.j),e.Y36(Tt.g),e.Y36(de.Z),e.Y36(u.P),e.Y36(v.p4),e.Y36(e.R0b))},n.\u0275cmp=e.Xpm({type:n,selectors:[["cd-iscsi-target-list"]],viewQuery:function(t,o){if(1&t&&e.Gf(W.a,5),2&t){let i;e.iGM(i=e.CRH())&&(o.table=i.first)}},features:[e._Bn([ce.j]),e.qOj],decls:3,vars:2,consts:function(){let s,t,o,i;return s="iSCSI Targets not available",t="Please consult the " + "\ufffd#3\ufffd" + "" + "\ufffd/#3\ufffd" + " on how to configure and enable the iSCSI Targets management functionality.",o="Available information:",i="Discovery authentication",[["type","info","title",s,4,"ngIf"],["columnMode","flex","identifier","target_iqn","forceIdentifier","true","selectionType","single",3,"data","columns","hasDetails","autoReload","status","fetchData","setExpandedRow","updateSelection",4,"ngIf"],["type","info","title",s],t,["section","iscsi"],[4,"ngIf"],o,["columnMode","flex","identifier","target_iqn","forceIdentifier","true","selectionType","single",3,"data","columns","hasDetails","autoReload","status","fetchData","setExpandedRow","updateSelection"],["table",""],[1,"table-actions","btn-toolbar"],[1,"btn-group",3,"permission","selection","tableActions"],["type","button",1,"btn","btn-light",3,"click"],["aria-hidden","true",3,"ngClass"],i,["cdTableDetail","",3,"cephIscsiConfigVersion","selection","settings",4,"ngIf"],["cdTableDetail","",3,"cephIscsiConfigVersion","selection","settings"]]},template:function(t,o){1&t&&(e._UZ(0,"cd-iscsi-tabs"),e.YNc(1,Gn,5,1,"cd-alert-panel",0),e.YNc(2,wn,9,12,"cd-table",1)),2&t&&(e.xp6(1),e.Q6J("ngIf",!1===o.available),e.xp6(1),e.Q6J("ngIf",!0===o.available))},directives:[ft,l.O5,Ct.G,Mn.K,W.a,Ee.K,$.o,l.mk,Zn],styles:[""]}),n})();var ot=p(66369),Hn=p(76446),kn=p(90068);const Kn=["iscsiSparklineTpl"],Xn=["iscsiPerSecondTpl"],Qn=["iscsiRelativeDateTpl"];function zn(n,s){if(1&n&&(e.TgZ(0,"span"),e._UZ(1,"cd-sparkline",9),e.qZA()),2&n){const t=e.oxw(),o=t.value,i=t.row;e.xp6(1),e.Q6J("data",o)("isBinary",i.cdIsBinary)}}function Jn(n,s){1&n&&(e.TgZ(0,"span",10),e._uU(1," n/a "),e.qZA())}function Yn(n,s){if(1&n&&(e.YNc(0,zn,2,2,"span",7),e.YNc(1,Jn,2,0,"span",8)),2&n){const t=s.row;e.Q6J("ngIf","user:rbd"===t.backstore),e.xp6(1),e.Q6J("ngIf","user:rbd"!==t.backstore)}}function Vn(n,s){if(1&n&&(e.TgZ(0,"span"),e._uU(1),e.qZA()),2&n){const t=e.oxw().value;e.xp6(1),e.hij(" ",t," /s ")}}function Un(n,s){1&n&&(e.TgZ(0,"span",10),e._uU(1," n/a "),e.qZA())}function jn(n,s){if(1&n&&(e.YNc(0,Vn,2,1,"span",7),e.YNc(1,Un,2,0,"span",8)),2&n){const t=s.row;e.Q6J("ngIf","user:rbd"===t.backstore),e.xp6(1),e.Q6J("ngIf","user:rbd"!==t.backstore)}}function Wn(n,s){if(1&n&&(e.TgZ(0,"span"),e._uU(1),e.ALo(2,"notAvailable"),e.ALo(3,"relativeDate"),e.qZA()),2&n){const t=e.oxw().value;e.xp6(1),e.hij(" ",e.lcZ(2,1,e.lcZ(3,3,t))," ")}}function ei(n,s){1&n&&(e.TgZ(0,"span",10),e._uU(1," n/a "),e.qZA())}function ti(n,s){if(1&n&&(e.YNc(0,Wn,4,5,"span",7),e.YNc(1,ei,2,0,"span",8)),2&n){const t=s.row;e.Q6J("ngIf","user:rbd"===t.backstore),e.xp6(1),e.Q6J("ngIf","user:rbd"!==t.backstore)}}let oi=(()=>{class n{constructor(t,o,i){this.iscsiService=t,this.dimlessPipe=o,this.iscsiBackstorePipe=i,this.gateways=[],this.images=[]}ngOnInit(){this.gatewaysColumns=[{name:"Name",prop:"name"},{name:"State",prop:"state",flexGrow:1,cellTransformation:De.e.badge,customTemplateConfig:{map:{up:{class:"badge-success"},down:{class:"badge-danger"}}}},{name:"# Targets",prop:"num_targets"},{name:"# Sessions",prop:"num_sessions"}],this.imagesColumns=[{name:"Pool",prop:"pool"},{name:"Image",prop:"image"},{name:"Backstore",prop:"backstore",pipe:this.iscsiBackstorePipe},{name:"Read Bytes",prop:"stats_history.rd_bytes",cellTemplate:this.iscsiSparklineTpl},{name:"Write Bytes",prop:"stats_history.wr_bytes",cellTemplate:this.iscsiSparklineTpl},{name:"Read Ops",prop:"stats.rd",pipe:this.dimlessPipe,cellTemplate:this.iscsiPerSecondTpl},{name:"Write Ops",prop:"stats.wr",pipe:this.dimlessPipe,cellTemplate:this.iscsiPerSecondTpl},{name:"A/O Since",prop:"optimized_since",cellTemplate:this.iscsiRelativeDateTpl}]}refresh(){this.iscsiService.overview().subscribe(t=>{this.gateways=t.gateways,this.images=t.images,this.images.map(o=>(o.stats_history&&(o.stats_history.rd_bytes=o.stats_history.rd_bytes.map(i=>i[1]),o.stats_history.wr_bytes=o.stats_history.wr_bytes.map(i=>i[1])),o.cdIsBinary=!0,o))})}}return n.\u0275fac=function(t){return new(t||n)(e.Y36(X),e.Y36(ot.n),e.Y36(Je.V))},n.\u0275cmp=e.Xpm({type:n,selectors:[["cd-iscsi"]],viewQuery:function(t,o){if(1&t&&(e.Gf(Kn,7),e.Gf(Xn,7),e.Gf(Qn,7)),2&t){let i;e.iGM(i=e.CRH())&&(o.iscsiSparklineTpl=i.first),e.iGM(i=e.CRH())&&(o.iscsiPerSecondTpl=i.first),e.iGM(i=e.CRH())&&(o.iscsiRelativeDateTpl=i.first)}},decls:13,vars:4,consts:function(){let s,t;return s="Gateways",t="Images",[s,[3,"data","columns","fetchData"],t,[3,"data","columns"],["iscsiSparklineTpl",""],["iscsiPerSecondTpl",""],["iscsiRelativeDateTpl",""],[4,"ngIf"],["class","text-muted",4,"ngIf"],[3,"data","isBinary"],[1,"text-muted"]]},template:function(t,o){1&t&&(e._UZ(0,"cd-iscsi-tabs"),e.TgZ(1,"legend"),e.SDv(2,0),e.qZA(),e.TgZ(3,"cd-table",1),e.NdJ("fetchData",function(){return o.refresh()}),e.qZA(),e.TgZ(4,"legend"),e.SDv(5,2),e.qZA(),e._UZ(6,"cd-table",3),e.YNc(7,Yn,2,2,"ng-template",null,4,e.W1O),e.YNc(9,jn,2,2,"ng-template",null,5,e.W1O),e.YNc(11,ti,2,2,"ng-template",null,6,e.W1O)),2&t&&(e.xp6(3),e.Q6J("data",o.gateways)("columns",o.gatewaysColumns),e.xp6(3),e.Q6J("data",o.images)("columns",o.imagesColumns))},directives:[ft,W.a,l.O5,Hn.l],pipes:[Tt.g,kn.h],styles:[""]}),n})(),ni=(()=>{class n{}return n.\u0275fac=function(t){return new(t||n)},n.\u0275mod=e.oAB({type:n}),n.\u0275inj=e.cJS({imports:[[l.ez,Ae.m,N.Oz,m.Bz,a.u5,a.UX,N.ZQ]]}),n})();var ii=p(75319),si=p(26215),_i=p(45435),St=p(46947);let K=class{constructor(s,t){this.http=s,this.timerService=t,this.REFRESH_INTERVAL=3e4,this.summaryDataSource=new si.X(null),this.summaryData$=this.summaryDataSource.asObservable()}startPolling(){return this.timerService.get(()=>this.retrieveSummaryObservable(),this.REFRESH_INTERVAL).subscribe(this.retrieveSummaryObserver())}refresh(){return this.retrieveSummaryObservable().subscribe(this.retrieveSummaryObserver())}retrieveSummaryObservable(){return this.http.get("api/block/mirroring/summary")}retrieveSummaryObserver(){return s=>{this.summaryDataSource.next(s)}}subscribeSummary(s,t){return this.summaryData$.pipe((0,_i.h)(o=>!!o)).subscribe(s,t)}getPool(s){return this.http.get(`api/block/mirroring/pool/${s}`)}updatePool(s,t){return this.http.put(`api/block/mirroring/pool/${s}`,t,{observe:"response"})}getSiteName(){return this.http.get("api/block/mirroring/site_name")}setSiteName(s){return this.http.put("api/block/mirroring/site_name",{site_name:s},{observe:"response"})}createBootstrapToken(s){return this.http.post(`api/block/mirroring/pool/${s}/bootstrap/token`,{})}importBootstrapToken(s,t,o){return this.http.post(`api/block/mirroring/pool/${s}/bootstrap/peer`,{direction:t,token:o},{observe:"response"})}getPeer(s,t){return this.http.get(`api/block/mirroring/pool/${s}/peer/${t}`)}addPeer(s,t){return this.http.post(`api/block/mirroring/pool/${s}/peer`,t,{observe:"response"})}updatePeer(s,t,o){return this.http.put(`api/block/mirroring/pool/${s}/peer/${t}`,o,{observe:"response"})}deletePeer(s,t){return this.http.delete(`api/block/mirroring/pool/${s}/peer/${t}`,{observe:"response"})}};K.\u0275fac=function(s){return new(s||K)(e.LFG(ie.eN),e.LFG(St.f))},K.\u0275prov=e.Yz7({token:K,factory:K.\u0275fac,providedIn:"root"}),(0,D.gn)([(0,D.fM)(0,V.G),(0,D.w6)("design:type",Function),(0,D.w6)("design:paramtypes",[String]),(0,D.w6)("design:returntype",void 0)],K.prototype,"setSiteName",null),(0,D.gn)([(0,D.fM)(1,V.G),(0,D.fM)(2,V.G),(0,D.w6)("design:type",Function),(0,D.w6)("design:paramtypes",[String,String,String]),(0,D.w6)("design:returntype",void 0)],K.prototype,"importBootstrapToken",null),K=(0,D.gn)([V.o,(0,D.w6)("design:paramtypes",[ie.eN,St.f])],K);var nt=p(58071),ai=p(68307),Et=p(12627),Re=p(82945),ri=p(39749),li=p(13472);function ci(n,s){1&n&&(e.TgZ(0,"span",25),e.SDv(1,26),e.qZA())}function di(n,s){if(1&n&&(e.TgZ(0,"div",27),e._UZ(1,"input",28),e.TgZ(2,"label",29),e._uU(3),e.qZA(),e.qZA()),2&n){const t=s.$implicit;e.xp6(1),e.s9C("id",t.name),e.s9C("name",t.name),e.s9C("formControlName",t.name),e.xp6(1),e.s9C("for",t.name),e.xp6(1),e.Oqu(t.name)}}function pi(n,s){1&n&&(e.TgZ(0,"span",25),e.SDv(1,30),e.qZA())}let gi=(()=>{class n{constructor(t,o,i){this.activeModal=t,this.rbdMirroringService=o,this.taskWrapper=i,this.pools=[],this.createForm()}createForm(){this.createBootstrapForm=new y.d({siteName:new a.NI("",{validators:[a.kI.required]}),pools:new a.cw({},{validators:[this.validatePools()]}),token:new a.NI("",{})})}ngOnInit(){this.createBootstrapForm.get("siteName").setValue(this.siteName),this.rbdMirroringService.getSiteName().subscribe(t=>{this.createBootstrapForm.get("siteName").setValue(t.site_name)}),this.subs=this.rbdMirroringService.subscribeSummary(t=>{this.pools=t.content_data.pools.reduce((_,r)=>(_.push({name:r.name,mirror_mode:r.mirror_mode}),_),[]);const i=this.createBootstrapForm.get("pools");S().each(this.pools,_=>{const r=_.name,c="disabled"===_.mirror_mode,d=i.controls[r];d?c&&d.disabled?d.enable():!c&&d.enabled&&(d.disable(),d.setValue(!0)):i.addControl(r,new a.NI({value:!c,disabled:!c}))})})}ngOnDestroy(){this.subs&&this.subs.unsubscribe()}validatePools(){return t=>{let o=0;return S().each(t.controls,i=>{!0===i.value&&++o}),o>0?null:{requirePool:!0}}}generate(){this.createBootstrapForm.get("token").setValue("");let t="";const o=[],i=this.createBootstrapForm.get("pools");S().each(i.controls,(g,f)=>{!0===g.value&&(t=f,g.disabled||o.push(f))});const _={mirror_mode:"image"},r=(0,nt.z)(this.rbdMirroringService.setSiteName(this.createBootstrapForm.getValue("siteName")),(0,le.D)(o.map(g=>this.rbdMirroringService.updatePool(g,_))),this.rbdMirroringService.createBootstrapToken(t).pipe((0,ai.b)(g=>this.createBootstrapForm.get("token").setValue(g.token)))).pipe((0,Et.Z)()),c=()=>{this.rbdMirroringService.refresh(),this.createBootstrapForm.setErrors({cdSubmitButton:!0})};this.taskWrapper.wrapTaskAroundCall({task:new R.R("rbd/mirroring/bootstrap/create",{}),call:r}).subscribe({error:c,complete:c})}}return n.\u0275fac=function(t){return new(t||n)(e.Y36(N.Kz),e.Y36(K),e.Y36(u.P))},n.\u0275cmp=e.Xpm({type:n,selectors:[["cd-bootstrap-create-modal"]],decls:32,vars:6,consts:function(){let s,t,o,i,_,r,c,d,g,f,I;return s="Create Bootstrap Token",t="To create a bootstrap token which can be imported by a peer site cluster, provide the local site's name, select which pools will have mirroring enabled, and click\xA0 " + "\ufffd#10\ufffd" + "Generate" + "\ufffd/#10\ufffd" + ".",o="Site Name",i="Name...",_="Pools",r="Generate",c="Token",d="Generated token...",g="Close",f="This field is required.",I="At least one pool is required.",[[3,"modalRef"],[1,"modal-title"],s,[1,"modal-content"],["name","createBootstrapForm","novalidate","",1,"form",3,"formGroup"],["formDir","ngForm"],[1,"modal-body"],t,[1,"form-group"],["for","siteName",1,"col-form-label","required"],o,["type","text","placeholder",i,"id","siteName","name","siteName","formControlName","siteName","autofocus","",1,"form-control"],["class","invalid-feedback",4,"ngIf"],["formGroupName","pools",1,"form-group"],["for","pools",1,"col-form-label","required"],_,["class","custom-control custom-checkbox",4,"ngFor","ngForOf"],[1,"mb-4","float-right",3,"form","submitAction"],r,["for","token",1,"col-form-label"],c,["placeholder",d,"id","token","formControlName","token","readonly","",1,"form-control","resize-vertical"],["source","token",1,"float-right"],[1,"modal-footer"],["name",g,3,"backAction"],[1,"invalid-feedback"],f,[1,"custom-control","custom-checkbox"],["type","checkbox",1,"custom-control-input",3,"id","name","formControlName"],[1,"custom-control-label",3,"for"],I]},template:function(t,o){if(1&t&&(e.TgZ(0,"cd-modal",0),e.ynx(1,1),e.SDv(2,2),e.BQk(),e.ynx(3,3),e.TgZ(4,"form",4,5),e.TgZ(6,"div",6),e.TgZ(7,"p"),e.ynx(8),e.tHW(9,7),e._UZ(10,"kbd"),e.N_p(),e.BQk(),e.qZA(),e.TgZ(11,"div",8),e.TgZ(12,"label",9),e.SDv(13,10),e.qZA(),e._UZ(14,"input",11),e.YNc(15,ci,2,0,"span",12),e.qZA(),e.TgZ(16,"div",13),e.TgZ(17,"label",14),e.SDv(18,15),e.qZA(),e.YNc(19,di,4,5,"div",16),e.YNc(20,pi,2,0,"span",12),e.qZA(),e.TgZ(21,"cd-submit-button",17),e.NdJ("submitAction",function(){return o.generate()}),e.SDv(22,18),e.qZA(),e.TgZ(23,"div",8),e.TgZ(24,"label",19),e.TgZ(25,"span"),e.SDv(26,20),e.qZA(),e.qZA(),e.TgZ(27,"textarea",21),e._uU(28," "),e.qZA(),e.qZA(),e._UZ(29,"cd-copy-2-clipboard-button",22),e.qZA(),e.TgZ(30,"div",23),e.TgZ(31,"cd-back-button",24),e.NdJ("backAction",function(){return o.activeModal.close()}),e.qZA(),e.qZA(),e.qZA(),e.BQk(),e.qZA()),2&t){const i=e.MAs(5);e.Q6J("modalRef",o.activeModal),e.xp6(4),e.Q6J("formGroup",o.createBootstrapForm),e.xp6(11),e.Q6J("ngIf",o.createBootstrapForm.showError("siteName",i,"required")),e.xp6(4),e.Q6J("ngForOf",o.pools),e.xp6(1),e.Q6J("ngIf",o.createBootstrapForm.showError("pools",i,"requirePool")),e.xp6(1),e.Q6J("form",o.createBootstrapForm)}},directives:[C.z,a._Y,a.JL,h.V,a.sg,O.P,$.o,a.Fj,k.b,a.JJ,a.u,Re.U,l.O5,a.x0,l.sg,ri.w,Ye.s,li.W,a.Wl],styles:[".form-group.ng-invalid[_ngcontent-%COMP%] .invalid-feedback[_ngcontent-%COMP%]{display:block}"]}),n})();function ui(n,s){1&n&&(e.TgZ(0,"span",26),e.SDv(1,27),e.qZA())}function mi(n,s){if(1&n&&(e.TgZ(0,"option",28),e._uU(1),e.qZA()),2&n){const t=s.$implicit;e.Q6J("value",t.key),e.xp6(1),e.Oqu(t.desc)}}function Ti(n,s){if(1&n&&(e.TgZ(0,"div",29),e._UZ(1,"input",30),e.TgZ(2,"label",31),e._uU(3),e.qZA(),e.qZA()),2&n){const t=s.$implicit;e.xp6(1),e.s9C("id",t.name),e.s9C("name",t.name),e.s9C("formControlName",t.name),e.xp6(1),e.s9C("for",t.name),e.xp6(1),e.Oqu(t.name)}}function fi(n,s){1&n&&(e.TgZ(0,"span",26),e.SDv(1,32),e.qZA())}function Ci(n,s){1&n&&(e.TgZ(0,"span",26),e.SDv(1,33),e.qZA())}function Si(n,s){1&n&&(e.TgZ(0,"span",26),e.SDv(1,34),e.qZA())}let Ei=(()=>{class n{constructor(t,o,i,_){this.activeModal=t,this.actionLabels=o,this.rbdMirroringService=i,this.taskWrapper=_,this.pools=[],this.directions=[{key:"rx-tx",desc:"Bidirectional"},{key:"rx",desc:"Unidirectional (receive-only)"}],this.createForm()}createForm(){this.importBootstrapForm=new y.d({siteName:new a.NI("",{validators:[a.kI.required]}),direction:new a.NI("rx-tx",{}),pools:new a.cw({},{validators:[this.validatePools()]}),token:new a.NI("",{validators:[a.kI.required,this.validateToken()]})})}ngOnInit(){this.rbdMirroringService.getSiteName().subscribe(t=>{this.importBootstrapForm.get("siteName").setValue(t.site_name)}),this.subs=this.rbdMirroringService.subscribeSummary(t=>{this.pools=t.content_data.pools.reduce((_,r)=>(_.push({name:r.name,mirror_mode:r.mirror_mode}),_),[]);const i=this.importBootstrapForm.get("pools");S().each(this.pools,_=>{const r=_.name,c="disabled"===_.mirror_mode,d=i.controls[r];d?c&&d.disabled?d.enable():!c&&d.enabled&&(d.disable(),d.setValue(!0)):i.addControl(r,new a.NI({value:!c,disabled:!c}))})})}ngOnDestroy(){this.subs&&this.subs.unsubscribe()}validatePools(){return t=>{let o=0;return S().each(t.controls,i=>{!0===i.value&&++o}),o>0?null:{requirePool:!0}}}validateToken(){return t=>{try{if(JSON.parse(atob(t.value)))return null}catch(o){}return{invalidToken:!0}}}import(){const t=[],o=[],i=this.importBootstrapForm.get("pools");S().each(i.controls,(g,f)=>{!0===g.value&&(t.push(f),g.disabled||o.push(f))});const _={mirror_mode:"image"};let r=(0,nt.z)(this.rbdMirroringService.setSiteName(this.importBootstrapForm.getValue("siteName")),(0,le.D)(o.map(g=>this.rbdMirroringService.updatePool(g,_))));r=t.reduce((g,f)=>(0,nt.z)(g,this.rbdMirroringService.importBootstrapToken(f,this.importBootstrapForm.getValue("direction"),this.importBootstrapForm.getValue("token"))),r).pipe((0,Et.Z)());const c=()=>{this.rbdMirroringService.refresh(),this.importBootstrapForm.setErrors({cdSubmitButton:!0})};this.taskWrapper.wrapTaskAroundCall({task:new R.R("rbd/mirroring/bootstrap/import",{}),call:r}).subscribe({error:c,complete:()=>{c(),this.activeModal.close()}})}}return n.\u0275fac=function(t){return new(t||n)(e.Y36(N.Kz),e.Y36(v.p4),e.Y36(K),e.Y36(u.P))},n.\u0275cmp=e.Xpm({type:n,selectors:[["cd-bootstrap-import-modal"]],decls:36,vars:10,consts:function(){let s,t,o,i,_,r,c,d,g,f,I,P;return s="Import Bootstrap Token",t="To import a bootstrap token which was created by a peer site cluster, provide the local site's name, select which pools will have mirroring enabled, provide the generated token, and click\xA0" + "\ufffd#10\ufffd" + "Import" + "\ufffd/#10\ufffd" + ".",o="Site Name",i="Name...",_="Direction",r="Pools",c="Token",d="Generated token...",g="This field is required.",f="At least one pool is required.",I="This field is required.",P="The token is invalid.",[[3,"modalRef"],[1,"modal-title"],s,[1,"modal-content"],["name","importBootstrapForm","novalidate","",1,"form",3,"formGroup"],["formDir","ngForm"],[1,"modal-body"],t,[1,"form-group"],["for","siteName",1,"col-form-label","required"],o,["type","text","placeholder",i,"id","siteName","name","siteName","formControlName","siteName","autofocus","",1,"form-control"],["class","invalid-feedback",4,"ngIf"],["for","direction",1,"col-form-label"],_,["id","direction","name","direction","formControlName","direction",1,"form-control"],[3,"value",4,"ngFor","ngForOf"],["formGroupName","pools",1,"form-group"],["for","pools",1,"col-form-label","required"],r,["class","custom-control custom-checkbox",4,"ngFor","ngForOf"],["for","token",1,"col-form-label","required"],c,["placeholder",d,"id","token","formControlName","token",1,"form-control","resize-vertical"],[1,"modal-footer"],[3,"form","submitText","submitActionEvent"],[1,"invalid-feedback"],g,[3,"value"],[1,"custom-control","custom-checkbox"],["type","checkbox",1,"custom-control-input",3,"id","name","formControlName"],[1,"custom-control-label",3,"for"],f,I,P]},template:function(t,o){if(1&t&&(e.TgZ(0,"cd-modal",0),e.ynx(1,1),e.SDv(2,2),e.BQk(),e.ynx(3,3),e.TgZ(4,"form",4,5),e.TgZ(6,"div",6),e.TgZ(7,"p"),e.ynx(8),e.tHW(9,7),e._UZ(10,"kbd"),e.N_p(),e.BQk(),e.qZA(),e.TgZ(11,"div",8),e.TgZ(12,"label",9),e.SDv(13,10),e.qZA(),e._UZ(14,"input",11),e.YNc(15,ui,2,0,"span",12),e.qZA(),e.TgZ(16,"div",8),e.TgZ(17,"label",13),e.TgZ(18,"span"),e.SDv(19,14),e.qZA(),e.qZA(),e.TgZ(20,"select",15),e.YNc(21,mi,2,2,"option",16),e.qZA(),e.qZA(),e.TgZ(22,"div",17),e.TgZ(23,"label",18),e.SDv(24,19),e.qZA(),e.YNc(25,Ti,4,5,"div",20),e.YNc(26,fi,2,0,"span",12),e.qZA(),e.TgZ(27,"div",8),e.TgZ(28,"label",21),e.SDv(29,22),e.qZA(),e.TgZ(30,"textarea",23),e._uU(31," "),e.qZA(),e.YNc(32,Ci,2,0,"span",12),e.YNc(33,Si,2,0,"span",12),e.qZA(),e.qZA(),e.TgZ(34,"div",24),e.TgZ(35,"cd-form-button-panel",25),e.NdJ("submitActionEvent",function(){return o.import()}),e.qZA(),e.qZA(),e.qZA(),e.BQk(),e.qZA()),2&t){const i=e.MAs(5);e.Q6J("modalRef",o.activeModal),e.xp6(4),e.Q6J("formGroup",o.importBootstrapForm),e.xp6(11),e.Q6J("ngIf",o.importBootstrapForm.showError("siteName",i,"required")),e.xp6(6),e.Q6J("ngForOf",o.directions),e.xp6(4),e.Q6J("ngForOf",o.pools),e.xp6(1),e.Q6J("ngIf",o.importBootstrapForm.showError("pools",i,"requirePool")),e.xp6(6),e.Q6J("ngIf",o.importBootstrapForm.showError("token",i,"required")),e.xp6(1),e.Q6J("ngIf",o.importBootstrapForm.showError("token",i,"invalidToken")),e.xp6(2),e.Q6J("form",o.importBootstrapForm)("submitText",o.actionLabels.SUBMIT)}},directives:[C.z,a._Y,a.JL,h.V,a.sg,O.P,$.o,a.Fj,k.b,a.JJ,a.u,Re.U,l.O5,a.EJ,l.sg,a.x0,j.p,a.YN,a.Kr,a.Wl],styles:[""]}),n})();var se=p(69158),Ri=p(58111);let it=(()=>{class n{transform(t){return"warning"===t?"badge badge-warning":"error"===t?"badge badge-danger":"success"===t?"badge badge-success":"badge badge-info"}}return n.\u0275fac=function(t){return new(t||n)},n.\u0275pipe=e.Yjl({name:"mirrorHealthColor",type:n,pure:!0}),n})();const Mi=["healthTmpl"];function Oi(n,s){if(1&n&&(e.TgZ(0,"span",2),e.ALo(1,"mirrorHealthColor"),e._uU(2),e.qZA()),2&n){const o=s.value;e.Q6J("ngClass",e.lcZ(1,2,s.row.health_color)),e.xp6(2),e.Oqu(o)}}let Ai=(()=>{class n{constructor(t,o){this.rbdMirroringService=t,this.cephShortVersionPipe=o,this.tableStatus=new se.E}ngOnInit(){this.columns=[{prop:"instance_id",name:"Instance",flexGrow:2},{prop:"id",name:"ID",flexGrow:2},{prop:"server_hostname",name:"Hostname",flexGrow:2},{prop:"version",name:"Version",pipe:this.cephShortVersionPipe,flexGrow:2},{prop:"health",name:"Health",cellTemplate:this.healthTmpl,flexGrow:1}],this.subs=this.rbdMirroringService.subscribeSummary(t=>{this.data=t.content_data.daemons,this.tableStatus=new se.E(t.status)})}ngOnDestroy(){this.subs.unsubscribe()}refresh(){this.rbdMirroringService.refresh()}}return n.\u0275fac=function(t){return new(t||n)(e.Y36(K),e.Y36(Ri.F))},n.\u0275cmp=e.Xpm({type:n,selectors:[["cd-mirroring-daemons"]],viewQuery:function(t,o){if(1&t&&e.Gf(Mi,7),2&t){let i;e.iGM(i=e.CRH())&&(o.healthTmpl=i.first)}},decls:3,vars:4,consts:[["columnMode","flex",3,"data","columns","autoReload","status","fetchData"],["healthTmpl",""],[3,"ngClass"]],template:function(t,o){1&t&&(e.TgZ(0,"cd-table",0),e.NdJ("fetchData",function(){return o.refresh()}),e.qZA(),e.YNc(1,Oi,3,4,"ng-template",null,1,e.W1O)),2&t&&e.Q6J("data",o.data)("columns",o.columns)("autoReload",-1)("status",o.tableStatus)},directives:[W.a,l.mk],pipes:[it],styles:[""]}),n})();var Rt=p(18891);class hi{}function Pi(n,s){1&n&&(e.TgZ(0,"span",24),e.SDv(1,25),e.qZA())}function Ii(n,s){1&n&&(e.TgZ(0,"span",24),e.SDv(1,26),e.qZA())}function bi(n,s){1&n&&(e.TgZ(0,"span",24),e.SDv(1,27),e.qZA())}function Ni(n,s){1&n&&(e.TgZ(0,"span",24),e.SDv(1,28),e.qZA())}function Fi(n,s){1&n&&(e.TgZ(0,"span",24),e.SDv(1,29),e.qZA())}function Di(n,s){1&n&&(e.TgZ(0,"span",24),e.SDv(1,30),e.qZA())}let vi=(()=>{class n{constructor(t,o,i,_){this.activeModal=t,this.actionLabels=o,this.rbdMirroringService=i,this.taskWrapper=_,this.bsConfig={containerClass:"theme-default"},this.createForm()}createForm(){this.editPeerForm=new y.d({clusterName:new a.NI("",{validators:[a.kI.required,this.validateClusterName]}),clientID:new a.NI("",{validators:[a.kI.required,this.validateClientID]}),monAddr:new a.NI("",{validators:[this.validateMonAddr]}),key:new a.NI("",{validators:[this.validateKey]})})}ngOnInit(){this.pattern=`${this.poolName}/${this.peerUUID}`,"edit"===this.mode&&this.rbdMirroringService.getPeer(this.poolName,this.peerUUID).subscribe(t=>{this.setResponse(t)})}validateClusterName(t){if(!t.value.match(/^[\w\-_]*$/))return{invalidClusterName:{value:t.value}}}validateClientID(t){if(!t.value.match(/^(?!client\.)[\w\-_.]*$/))return{invalidClientID:{value:t.value}}}validateMonAddr(t){if(!t.value.match(/^[,; ]*([\w.\-_\[\]]+(:[\d]+)?[,; ]*)*$/))return{invalidMonAddr:{value:t.value}}}validateKey(t){try{if(""===t.value||atob(t.value))return null}catch(o){}return{invalidKey:{value:t.value}}}setResponse(t){this.response=t,this.editPeerForm.get("clusterName").setValue(t.cluster_name),this.editPeerForm.get("clientID").setValue(t.client_id),this.editPeerForm.get("monAddr").setValue(t.mon_host),this.editPeerForm.get("key").setValue(t.key)}update(){const t=new hi;let o;t.cluster_name=this.editPeerForm.getValue("clusterName"),t.client_id=this.editPeerForm.getValue("clientID"),t.mon_host=this.editPeerForm.getValue("monAddr"),t.key=this.editPeerForm.getValue("key"),o=this.taskWrapper.wrapTaskAroundCall("edit"===this.mode?{task:new R.R("rbd/mirroring/peer/edit",{pool_name:this.poolName}),call:this.rbdMirroringService.updatePeer(this.poolName,this.peerUUID,t)}:{task:new R.R("rbd/mirroring/peer/add",{pool_name:this.poolName}),call:this.rbdMirroringService.addPeer(this.poolName,t)}),o.subscribe({error:()=>this.editPeerForm.setErrors({cdSubmitButton:!0}),complete:()=>{this.rbdMirroringService.refresh(),this.activeModal.close()}})}}return n.\u0275fac=function(t){return new(t||n)(e.Y36(N.Kz),e.Y36(v.p4),e.Y36(K),e.Y36(u.P))},n.\u0275cmp=e.Xpm({type:n,selectors:[["cd-pool-edit-peer-modal"]],decls:38,vars:13,consts:function(){let s,t,o,i,_,r,c,d,g,f,I,P,Z,B,Q,Y,ee,te;return s="{VAR_SELECT, select, edit {Edit} other {Add}}",s=e.Zx4(s,{VAR_SELECT:"\ufffd0\ufffd"}),t="" + s + " pool mirror peer",o="{VAR_SELECT, select, edit {Edit} other {Add}}",o=e.Zx4(o,{VAR_SELECT:"\ufffd0\ufffd"}),i="" + o + " the pool mirror peer attributes for pool " + "[\ufffd#10\ufffd|\ufffd#11\ufffd]" + "" + "\ufffd1\ufffd" + "" + "[\ufffd/#10\ufffd|\ufffd/#11\ufffd]" + " and click " + "[\ufffd#10\ufffd|\ufffd#11\ufffd]" + "Submit" + "[\ufffd/#10\ufffd|\ufffd/#11\ufffd]" + ".",i=e.Zx4(i),_="Cluster Name",r="Name...",c="CephX ID",d="CephX ID...",g="Monitor Addresses",f="Comma-delimited addresses...",I="CephX Key",P="Base64-encoded key...",Z="This field is required.",B="The cluster name is not valid.",Q="This field is required.",Y="The CephX ID is not valid.",ee="The monitory address is not valid.",te="CephX key must be base64 encoded.",[[3,"modalRef"],[1,"modal-title"],t,[1,"modal-content"],["name","editPeerForm","novalidate","",1,"form",3,"formGroup"],["formDir","ngForm"],[1,"modal-body"],i,[1,"form-group"],["for","clusterName",1,"col-form-label","required"],_,["type","text","placeholder",r,"id","clusterName","name","clusterName","formControlName","clusterName","autofocus","",1,"form-control"],["class","invalid-feedback",4,"ngIf"],["for","clientID",1,"col-form-label","required"],c,["type","text","placeholder",d,"id","clientID","name","clientID","formControlName","clientID",1,"form-control"],["for","monAddr",1,"col-form-label"],g,["type","text","placeholder",f,"id","monAddr","name","monAddr","formControlName","monAddr",1,"form-control"],["for","key",1,"col-form-label"],I,["type","text","placeholder",P,"id","key","name","key","formControlName","key",1,"form-control"],[1,"modal-footer"],[3,"form","submitText","submitActionEvent"],[1,"invalid-feedback"],Z,B,Q,Y,ee,te]},template:function(t,o){if(1&t&&(e.TgZ(0,"cd-modal",0),e.TgZ(1,"span",1),e.SDv(2,2),e.qZA(),e.ynx(3,3),e.TgZ(4,"form",4,5),e.TgZ(6,"div",6),e.TgZ(7,"p"),e.TgZ(8,"span"),e.tHW(9,7),e._UZ(10,"kbd"),e._UZ(11,"kbd"),e.N_p(),e.qZA(),e.qZA(),e.TgZ(12,"div",8),e.TgZ(13,"label",9),e.SDv(14,10),e.qZA(),e._UZ(15,"input",11),e.YNc(16,Pi,2,0,"span",12),e.YNc(17,Ii,2,0,"span",12),e.qZA(),e.TgZ(18,"div",8),e.TgZ(19,"label",13),e.SDv(20,14),e.qZA(),e._UZ(21,"input",15),e.YNc(22,bi,2,0,"span",12),e.YNc(23,Ni,2,0,"span",12),e.qZA(),e.TgZ(24,"div",8),e.TgZ(25,"label",16),e.TgZ(26,"span"),e.SDv(27,17),e.qZA(),e.qZA(),e._UZ(28,"input",18),e.YNc(29,Fi,2,0,"span",12),e.qZA(),e.TgZ(30,"div",8),e.TgZ(31,"label",19),e.TgZ(32,"span"),e.SDv(33,20),e.qZA(),e.qZA(),e._UZ(34,"input",21),e.YNc(35,Di,2,0,"span",12),e.qZA(),e.qZA(),e.TgZ(36,"div",22),e.TgZ(37,"cd-form-button-panel",23),e.NdJ("submitActionEvent",function(){return o.update()}),e.qZA(),e.qZA(),e.qZA(),e.BQk(),e.qZA()),2&t){const i=e.MAs(5);e.Q6J("modalRef",o.activeModal),e.xp6(2),e.pQV(o.mode),e.QtT(2),e.xp6(2),e.Q6J("formGroup",o.editPeerForm),e.xp6(7),e.pQV(o.mode)(o.poolName),e.QtT(9),e.xp6(5),e.Q6J("ngIf",o.editPeerForm.showError("clusterName",i,"required")),e.xp6(1),e.Q6J("ngIf",o.editPeerForm.showError("clusterName",i,"invalidClusterName")),e.xp6(5),e.Q6J("ngIf",o.editPeerForm.showError("clientID",i,"required")),e.xp6(1),e.Q6J("ngIf",o.editPeerForm.showError("clientID",i,"invalidClientID")),e.xp6(6),e.Q6J("ngIf",o.editPeerForm.showError("monAddr",i,"invalidMonAddr")),e.xp6(6),e.Q6J("ngIf",o.editPeerForm.showError("key",i,"invalidKey")),e.xp6(2),e.Q6J("form",o.editPeerForm)("submitText",o.actionLabels.SUBMIT)}},directives:[C.z,a._Y,a.JL,h.V,a.sg,O.P,$.o,a.Fj,k.b,a.JJ,a.u,Re.U,l.O5,j.p],styles:[""]}),n})();const Li=["healthTmpl"];function $i(n,s){if(1&n&&(e.TgZ(0,"span",4),e.ALo(1,"mirrorHealthColor"),e._uU(2),e.qZA()),2&n){const o=s.value;e.Q6J("ngClass",e.lcZ(1,2,s.row.health_color)),e.xp6(2),e.Oqu(o)}}let Bi=(()=>{class n{constructor(t,o,i,_,r){this.authStorageService=t,this.rbdMirroringService=o,this.modalService=i,this.taskWrapper=_,this.router=r,this.selection=new Se.r,this.tableStatus=new se.E,this.data=[],this.permission=this.authStorageService.getPermissions().rbdMirroring;const c={permission:"update",icon:T.P.edit,click:()=>this.editModeModal(),name:"Edit Mode",canBePrimary:()=>!0},d={permission:"create",icon:T.P.add,name:"Add Peer",click:()=>this.editPeersModal("add"),disable:()=>!this.selection.first()||"disabled"===this.selection.first().mirror_mode,visible:()=>!this.getPeerUUID(),canBePrimary:()=>!1},g={permission:"update",icon:T.P.exchange,name:"Edit Peer",click:()=>this.editPeersModal("edit"),visible:()=>!!this.getPeerUUID()},f={permission:"delete",icon:T.P.destroy,name:"Delete Peer",click:()=>this.deletePeersModal(),visible:()=>!!this.getPeerUUID()};this.tableActions=[c,d,g,f]}ngOnInit(){this.columns=[{prop:"name",name:"Name",flexGrow:2},{prop:"mirror_mode",name:"Mode",flexGrow:2},{prop:"leader_id",name:"Leader",flexGrow:2},{prop:"image_local_count",name:"# Local",flexGrow:2},{prop:"image_remote_count",name:"# Remote",flexGrow:2},{prop:"health",name:"Health",cellTemplate:this.healthTmpl,flexGrow:1}],this.subs=this.rbdMirroringService.subscribeSummary(t=>{this.data=t.content_data.pools,this.tableStatus=new se.E(t.status)})}ngOnDestroy(){this.subs.unsubscribe()}refresh(){this.rbdMirroringService.refresh()}editModeModal(){this.router.navigate(["/block/mirroring",{outlets:{modal:[v.MQ.EDIT,this.selection.first().name]}}])}editPeersModal(t){const o={poolName:this.selection.first().name,mode:t};"edit"===t&&(o.peerUUID=this.getPeerUUID()),this.modalRef=this.modalService.show(vi,o)}deletePeersModal(){const t=this.selection.first().name,o=this.getPeerUUID();this.modalRef=this.modalService.show(pe.M,{itemDescription:"mirror peer",itemNames:[`${t} (${o})`],submitActionObservable:()=>new Rt.y(i=>{this.taskWrapper.wrapTaskAroundCall({task:new R.R("rbd/mirroring/peer/delete",{pool_name:t}),call:this.rbdMirroringService.deletePeer(t,o)}).subscribe({error:_=>i.error(_),complete:()=>{this.rbdMirroringService.refresh(),i.complete()}})})})}getPeerUUID(){const t=this.selection.first(),o=this.data.find(i=>t&&t.name===i.name);if(o&&o.peer_uuids)return o.peer_uuids[0]}updateSelection(t){this.selection=t}}return n.\u0275fac=function(t){return new(t||n)(e.Y36(oe.j),e.Y36(K),e.Y36(de.Z),e.Y36(u.P),e.Y36(m.F0))},n.\u0275cmp=e.Xpm({type:n,selectors:[["cd-mirroring-pools"]],viewQuery:function(t,o){if(1&t&&e.Gf(Li,7),2&t){let i;e.iGM(i=e.CRH())&&(o.healthTmpl=i.first)}},decls:5,vars:7,consts:[["columnMode","flex","identifier","name","forceIdentifier","true","selectionType","single",3,"data","columns","autoReload","status","fetchData","updateSelection"],[1,"table-actions",3,"permission","selection","tableActions"],["healthTmpl",""],["name","modal"],[3,"ngClass"]],template:function(t,o){1&t&&(e.TgZ(0,"cd-table",0),e.NdJ("fetchData",function(){return o.refresh()})("updateSelection",function(_){return o.updateSelection(_)}),e._UZ(1,"cd-table-actions",1),e.qZA(),e.YNc(2,$i,3,4,"ng-template",null,2,e.W1O),e._UZ(4,"router-outlet",3)),2&t&&(e.Q6J("data",o.data)("columns",o.columns)("autoReload",-1)("status",o.tableStatus),e.xp6(1),e.Q6J("permission",o.permission)("selection",o.selection)("tableActions",o.tableActions))},directives:[W.a,Ee.K,m.lC,l.mk],pipes:[it],styles:[""]}),n})();var Mt=p(59376);const Gi=["stateTmpl"],xi=["syncTmpl"],yi=["progressTmpl"];function wi(n,s){if(1&n){const t=e.EpF();e.TgZ(0,"cd-table",13),e.NdJ("fetchData",function(){return e.CHM(t),e.oxw().refresh()}),e.qZA()}if(2&n){const t=e.oxw();e.Q6J("data",t.image_error.data)("columns",t.image_error.columns)("autoReload",-1)("status",t.tableStatus)}}function qi(n,s){if(1&n){const t=e.EpF();e.TgZ(0,"cd-table",13),e.NdJ("fetchData",function(){return e.CHM(t),e.oxw().refresh()}),e.qZA()}if(2&n){const t=e.oxw();e.Q6J("data",t.image_syncing.data)("columns",t.image_syncing.columns)("autoReload",-1)("status",t.tableStatus)}}function Hi(n,s){if(1&n){const t=e.EpF();e.TgZ(0,"cd-table",13),e.NdJ("fetchData",function(){return e.CHM(t),e.oxw().refresh()}),e.qZA()}if(2&n){const t=e.oxw();e.Q6J("data",t.image_ready.data)("columns",t.image_ready.columns)("autoReload",-1)("status",t.tableStatus)}}function ki(n,s){if(1&n&&(e.TgZ(0,"span",14),e.ALo(1,"mirrorHealthColor"),e._uU(2),e.qZA()),2&n){const o=s.value;e.Q6J("ngClass",e.lcZ(1,2,s.row.state_color)),e.xp6(2),e.Oqu(o)}}function Ki(n,s){1&n&&e._UZ(0,"div")}function Xi(n,s){if(1&n&&e._UZ(0,"ngb-progressbar",17),2&n){const t=e.oxw().value;e.Q6J("value",t)("showValue",!0)}}function Qi(n,s){if(1&n&&(e.YNc(0,Ki,1,0,"div",15),e.YNc(1,Xi,1,2,"ngb-progressbar",16)),2&n){const t=s.row;e.Q6J("ngIf","Replaying"===t.state),e.xp6(1),e.Q6J("ngIf","Syncing"===t.state)}}let zi=(()=>{class n{constructor(t){this.rbdMirroringService=t,this.image_error={data:[],columns:{}},this.image_syncing={data:[],columns:{}},this.image_ready={data:[],columns:{}},this.tableStatus=new se.E}ngOnInit(){this.image_error.columns=[{prop:"pool_name",name:"Pool",flexGrow:2},{prop:"name",name:"Image",flexGrow:2},{prop:"state",name:"State",cellTemplate:this.stateTmpl,flexGrow:1},{prop:"description",name:"Issue",flexGrow:4}],this.image_syncing.columns=[{prop:"pool_name",name:"Pool",flexGrow:2},{prop:"name",name:"Image",flexGrow:2},{prop:"state",name:"State",cellTemplate:this.stateTmpl,flexGrow:1},{prop:"progress",name:"Progress",cellTemplate:this.progressTmpl,flexGrow:2},{prop:"bytes_per_second",name:"Bytes per second",flexGrow:2},{prop:"entries_behind_primary",name:"Entries behind primary",flexGrow:2}],this.image_ready.columns=[{prop:"pool_name",name:"Pool",flexGrow:2},{prop:"name",name:"Image",flexGrow:2},{prop:"state",name:"State",cellTemplate:this.stateTmpl,flexGrow:1},{prop:"description",name:"Description",flexGrow:4}],this.subs=this.rbdMirroringService.subscribeSummary(t=>{this.image_error.data=t.content_data.image_error,this.image_syncing.data=t.content_data.image_syncing,this.image_ready.data=t.content_data.image_ready,this.tableStatus=new se.E(t.status)})}ngOnDestroy(){this.subs.unsubscribe()}refresh(){this.rbdMirroringService.refresh()}}return n.\u0275fac=function(t){return new(t||n)(e.Y36(K))},n.\u0275cmp=e.Xpm({type:n,selectors:[["cd-mirroring-images"]],viewQuery:function(t,o){if(1&t&&(e.Gf(Gi,7),e.Gf(xi,7),e.Gf(yi,7)),2&t){let i;e.iGM(i=e.CRH())&&(o.stateTmpl=i.first),e.iGM(i=e.CRH())&&(o.syncTmpl=i.first),e.iGM(i=e.CRH())&&(o.progressTmpl=i.first)}},decls:19,vars:4,consts:function(){let s,t,o;return s="Issues (" + "\ufffd0\ufffd" + ")",t="Syncing (" + "\ufffd0\ufffd" + ")",o="Ready (" + "\ufffd0\ufffd" + ")",[["ngbNav","","cdStatefulTab","image-list",1,"nav-tabs"],["nav","ngbNav"],["ngbNavItem","issues"],["ngbNavLink",""],s,["ngbNavContent",""],["ngbNavItem","syncing"],t,["ngbNavItem","ready"],o,[3,"ngbNavOutlet"],["stateTmpl",""],["progressTmpl",""],["columnMode","flex",3,"data","columns","autoReload","status","fetchData"],[3,"ngClass"],[4,"ngIf"],["type","info",3,"value","showValue",4,"ngIf"],["type","info",3,"value","showValue"]]},template:function(t,o){if(1&t&&(e.TgZ(0,"ul",0,1),e.TgZ(2,"li",2),e.TgZ(3,"a",3),e.SDv(4,4),e.qZA(),e.YNc(5,wi,1,4,"ng-template",5),e.qZA(),e.TgZ(6,"li",6),e.TgZ(7,"a",3),e.SDv(8,7),e.qZA(),e.YNc(9,qi,1,4,"ng-template",5),e.qZA(),e.TgZ(10,"li",8),e.TgZ(11,"a",3),e.SDv(12,9),e.qZA(),e.YNc(13,Hi,1,4,"ng-template",5),e.qZA(),e.qZA(),e._UZ(14,"div",10),e.YNc(15,ki,3,4,"ng-template",null,11,e.W1O),e.YNc(17,Qi,2,2,"ng-template",null,12,e.W1O)),2&t){const i=e.MAs(1);e.xp6(4),e.pQV(o.image_error.data.length),e.QtT(4),e.xp6(4),e.pQV(o.image_syncing.data.length),e.QtT(8),e.xp6(4),e.pQV(o.image_ready.data.length),e.QtT(12),e.xp6(2),e.Q6J("ngbNavOutlet",i)}},directives:[N.Pz,Mt.m,N.nv,N.Vx,N.uN,N.tO,W.a,l.mk,l.O5,N.Ly],pipes:[it],styles:[""]}),n})();function Ji(n,s){if(1&n&&e._UZ(0,"i",18),2&n){const t=e.oxw();e.Q6J("ngClass",t.icons.edit)}}function Yi(n,s){if(1&n&&e._UZ(0,"i",18),2&n){const t=e.oxw();e.Q6J("ngClass",t.icons.check)}}let Vi=(()=>{class n{constructor(t,o,i,_){this.authStorageService=t,this.rbdMirroringService=o,this.modalService=i,this.taskWrapper=_,this.selection=new Se.r,this.peersExist=!0,this.subs=new ii.w,this.editing=!1,this.icons=T.P,this.permission=this.authStorageService.getPermissions().rbdMirroring;const r={permission:"update",icon:T.P.upload,click:()=>this.createBootstrapModal(),name:"Create Bootstrap Token",canBePrimary:()=>!0,disable:()=>!1},c={permission:"update",icon:T.P.download,click:()=>this.importBootstrapModal(),name:"Import Bootstrap Token",disable:()=>this.peersExist};this.tableActions=[r,c]}ngOnInit(){this.createForm(),this.subs.add(this.rbdMirroringService.startPolling()),this.subs.add(this.rbdMirroringService.subscribeSummary(t=>{this.status=t.content_data.status,this.peersExist=!!t.content_data.pools.find(o=>o.peer_uuids.length>0)})),this.rbdMirroringService.getSiteName().subscribe(t=>{this.siteName=t.site_name,this.rbdmirroringForm.get("siteName").setValue(this.siteName)})}createForm(){this.rbdmirroringForm=new y.d({siteName:new a.NI({value:"",disabled:!0})})}ngOnDestroy(){this.subs.unsubscribe()}updateSiteName(){this.editing&&this.taskWrapper.wrapTaskAroundCall({task:new R.R("rbd/mirroring/site_name/edit",{}),call:this.rbdMirroringService.setSiteName(this.rbdmirroringForm.getValue("siteName"))}).subscribe({complete:()=>{this.rbdMirroringService.refresh()}}),this.editing=!this.editing}createBootstrapModal(){this.modalRef=this.modalService.show(gi,{siteName:this.siteName})}importBootstrapModal(){this.modalRef=this.modalService.show(Ei,{siteName:this.siteName})}}return n.\u0275fac=function(t){return new(t||n)(e.Y36(oe.j),e.Y36(K),e.Y36(de.Z),e.Y36(u.P))},n.\u0275cmp=e.Xpm({type:n,selectors:[["cd-mirroring"]],decls:29,vars:9,consts:function(){let s,t,o,i;return s="Site Name",t="Daemons",o="Pools",i="Images",[[1,"row"],[1,"col-md-12"],["name","rbdmirroringForm","novalidate","",3,"formGroup"],["formDir","ngForm"],[1,"d-flex","flex-row"],["for","siteName",1,"col-form-label"],s,[1,"col-md-4","input-group","mb-3","mr-auto"],["type","text","id","siteName","name","siteName","formControlName","siteName",1,"form-control"],[1,"input-group-append"],["id","editSiteName",1,"btn","btn-light",3,"click"],[3,"ngClass",4,"ngIf"],[3,"source","byId"],[1,"table-actions",3,"permission","selection","tableActions"],[1,"col-sm-6"],t,o,i,[3,"ngClass"]]},template:function(t,o){1&t&&(e.TgZ(0,"div",0),e.TgZ(1,"div",1),e.TgZ(2,"form",2,3),e.TgZ(4,"div",4),e.TgZ(5,"label",5),e.SDv(6,6),e.qZA(),e.TgZ(7,"div",7),e._UZ(8,"input",8),e.TgZ(9,"div",9),e.TgZ(10,"button",10),e.NdJ("click",function(){return o.updateSiteName()}),e.YNc(11,Ji,1,1,"i",11),e.YNc(12,Yi,1,1,"i",11),e.qZA(),e._UZ(13,"cd-copy-2-clipboard-button",12),e.qZA(),e.qZA(),e._UZ(14,"cd-table-actions",13),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.TgZ(15,"div",0),e.TgZ(16,"div",14),e.TgZ(17,"legend"),e.SDv(18,15),e.qZA(),e._UZ(19,"cd-mirroring-daemons"),e.qZA(),e.TgZ(20,"div",14),e.TgZ(21,"legend"),e.SDv(22,16),e.qZA(),e._UZ(23,"cd-mirroring-pools"),e.qZA(),e.qZA(),e.TgZ(24,"div",0),e.TgZ(25,"div",1),e.TgZ(26,"legend"),e.SDv(27,17),e.qZA(),e._UZ(28,"cd-mirroring-images"),e.qZA(),e.qZA()),2&t&&(e.xp6(2),e.Q6J("formGroup",o.rbdmirroringForm),e.xp6(6),e.uIk("disabled",!o.editing||null),e.xp6(3),e.Q6J("ngIf",!o.editing),e.xp6(1),e.Q6J("ngIf",o.editing),e.xp6(1),e.Q6J("source",o.siteName)("byId",!1),e.xp6(1),e.Q6J("permission",o.permission)("selection",o.selection)("tableActions",o.tableActions))},directives:[a._Y,a.JL,h.V,a.sg,$.o,a.Fj,k.b,a.JJ,a.u,l.O5,Ye.s,Ee.K,Ai,Bi,zi,l.mk],styles:[""]}),n})();class Ui{}function ji(n,s){if(1&n&&(e.TgZ(0,"option",16),e._uU(1),e.qZA()),2&n){const t=s.$implicit;e.Q6J("value",t.id),e.xp6(1),e.Oqu(t.name)}}function Wi(n,s){1&n&&(e.TgZ(0,"span",17),e.SDv(1,18),e.qZA())}let es=(()=>{class n{constructor(t,o,i,_,r,c){this.activeModal=t,this.actionLabels=o,this.rbdMirroringService=i,this.taskWrapper=_,this.route=r,this.location=c,this.bsConfig={containerClass:"theme-default"},this.peerExists=!1,this.mirrorModes=[{id:"disabled",name:"Disabled"},{id:"pool",name:"Pool"},{id:"image",name:"Image"}],this.createForm()}createForm(){this.editModeForm=new y.d({mirrorMode:new a.NI("",{validators:[a.kI.required,this.validateMode.bind(this)]})})}ngOnInit(){this.route.params.subscribe(t=>{this.poolName=t.pool_name}),this.pattern=`${this.poolName}`,this.rbdMirroringService.getPool(this.poolName).subscribe(t=>{this.setResponse(t)}),this.subs=this.rbdMirroringService.subscribeSummary(t=>{this.peerExists=!1;const i=t.content_data.pools.find(_=>this.poolName===_.name);this.peerExists=i&&i.peer_uuids.length})}ngOnDestroy(){this.subs.unsubscribe()}validateMode(t){return"disabled"===t.value&&this.peerExists?{cannotDisable:{value:t.value}}:null}setResponse(t){this.editModeForm.get("mirrorMode").setValue(t.mirror_mode)}update(){const t=new Ui;t.mirror_mode=this.editModeForm.getValue("mirrorMode"),this.taskWrapper.wrapTaskAroundCall({task:new R.R("rbd/mirroring/pool/edit",{pool_name:this.poolName}),call:this.rbdMirroringService.updatePool(this.poolName,t)}).subscribe({error:()=>this.editModeForm.setErrors({cdSubmitButton:!0}),complete:()=>{this.rbdMirroringService.refresh(),this.location.back()}})}}return n.\u0275fac=function(t){return new(t||n)(e.Y36(N.Kz),e.Y36(v.p4),e.Y36(K),e.Y36(u.P),e.Y36(m.gz),e.Y36(l.Ye))},n.\u0275cmp=e.Xpm({type:n,selectors:[["cd-pool-edit-mode-modal"]],decls:21,vars:7,consts:function(){let s,t,o,i;return s="Edit pool mirror mode",t="To edit the mirror mode for pool\xA0 " + "[\ufffd#10\ufffd|\ufffd#11\ufffd]" + "" + "\ufffd0\ufffd" + "" + "[\ufffd/#10\ufffd|\ufffd/#11\ufffd]" + ", select a new mode from the list and click\xA0 " + "[\ufffd#10\ufffd|\ufffd#11\ufffd]" + "Update" + "[\ufffd/#10\ufffd|\ufffd/#11\ufffd]" + ".",t=e.Zx4(t),o="Mode",i="Peer clusters must be removed prior to disabling mirror.",[["pageURL","mirroring",3,"modalRef"],[1,"modal-title"],s,[1,"modal-content"],["name","editModeForm","novalidate","",1,"form",3,"formGroup"],["formDir","ngForm"],[1,"modal-body"],t,[1,"form-group"],["for","mirrorMode",1,"col-form-label"],o,["id","mirrorMode","name","mirrorMode","formControlName","mirrorMode",1,"form-control"],[3,"value",4,"ngFor","ngForOf"],["class","invalid-feedback",4,"ngIf"],[1,"modal-footer"],[3,"form","submitText","submitActionEvent"],[3,"value"],[1,"invalid-feedback"],i]},template:function(t,o){if(1&t&&(e.TgZ(0,"cd-modal",0),e.ynx(1,1),e.SDv(2,2),e.BQk(),e.ynx(3,3),e.TgZ(4,"form",4,5),e.TgZ(6,"div",6),e.TgZ(7,"p"),e.ynx(8),e.tHW(9,7),e._UZ(10,"kbd"),e._UZ(11,"kbd"),e.N_p(),e.BQk(),e.qZA(),e.TgZ(12,"div",8),e.TgZ(13,"label",9),e.TgZ(14,"span"),e.SDv(15,10),e.qZA(),e.qZA(),e.TgZ(16,"select",11),e.YNc(17,ji,2,2,"option",12),e.qZA(),e.YNc(18,Wi,2,0,"span",13),e.qZA(),e.qZA(),e.TgZ(19,"div",14),e.TgZ(20,"cd-form-button-panel",15),e.NdJ("submitActionEvent",function(){return o.update()}),e.qZA(),e.qZA(),e.qZA(),e.BQk(),e.qZA()),2&t){const i=e.MAs(5);e.Q6J("modalRef",o.activeModal),e.xp6(4),e.Q6J("formGroup",o.editModeForm),e.xp6(7),e.pQV(o.poolName),e.QtT(9),e.xp6(6),e.Q6J("ngForOf",o.mirrorModes),e.xp6(1),e.Q6J("ngIf",o.editModeForm.showError("mirrorMode",i,"cannotDisable")),e.xp6(2),e.Q6J("form",o.editModeForm)("submitText",o.actionLabels.UPDATE)}},directives:[C.z,a._Y,a.JL,h.V,a.sg,O.P,$.o,a.EJ,k.b,a.JJ,a.u,l.sg,l.O5,j.p,a.YN,a.Kr],styles:[""]}),n})();var Ot=p(80226),ts=p(28049),os=p(43190),Ve=p(80842),st=p(30633),Le=p(47557),ns=p(28211);class is{}var Pe=(()=>{return(n=Pe||(Pe={}))[n.V1=1]="V1",n[n.V2=2]="V2",Pe;var n})();class ss{constructor(){this.features=[]}}class _s{constructor(){this.features=[]}}class rs extends class{}{constructor(){super(...arguments),this.features=[]}}class _t{constructor(){this.features=[],this.remove_scheduling=!1}}var Ue=(()=>{return(n=Ue||(Ue={})).editing="editing",n.cloning="cloning",n.copying="copying",Ue;var n})(),ls=p(17932),cs=p(18372),ds=p(54555);function ps(n,s){if(1&n&&(e.TgZ(0,"div",9),e.TgZ(1,"label",58),e.SDv(2,59),e.ALo(3,"titlecase"),e.qZA(),e.TgZ(4,"div",12),e._UZ(5,"input",60),e._UZ(6,"hr"),e.qZA(),e.qZA()),2&n){const t=e.oxw(2);e.xp6(3),e.pQV(e.lcZ(3,1,t.action)),e.QtT(2)}}function gs(n,s){1&n&&(e.TgZ(0,"span",61),e.ynx(1),e.SDv(2,62),e.BQk(),e.qZA())}function us(n,s){1&n&&(e.TgZ(0,"span",61),e.ynx(1),e.SDv(2,63),e.BQk(),e.qZA())}function ms(n,s){1&n&&e._UZ(0,"input",64)}function Ts(n,s){1&n&&(e.TgZ(0,"option",50),e.SDv(1,67),e.qZA()),2&n&&e.Q6J("ngValue",null)}function fs(n,s){1&n&&(e.TgZ(0,"option",50),e.SDv(1,68),e.qZA()),2&n&&e.Q6J("ngValue",null)}function Cs(n,s){1&n&&(e.TgZ(0,"option",50),e.SDv(1,69),e.qZA()),2&n&&e.Q6J("ngValue",null)}function Ss(n,s){if(1&n&&(e.TgZ(0,"option",70),e._uU(1),e.qZA()),2&n){const t=s.$implicit;e.Q6J("value",t.pool_name),e.xp6(1),e.Oqu(t.pool_name)}}function Es(n,s){if(1&n){const t=e.EpF();e.TgZ(0,"select",65),e.NdJ("change",function(){return e.CHM(t),e.oxw(2).setPoolMirrorMode()}),e.YNc(1,Ts,2,1,"option",66),e.YNc(2,fs,2,1,"option",66),e.YNc(3,Cs,2,1,"option",66),e.YNc(4,Ss,2,2,"option",46),e.qZA()}if(2&n){const t=e.oxw(2);e.xp6(1),e.Q6J("ngIf",null===t.pools),e.xp6(1),e.Q6J("ngIf",null!==t.pools&&0===t.pools.length),e.xp6(1),e.Q6J("ngIf",null!==t.pools&&t.pools.length>0),e.xp6(1),e.Q6J("ngForOf",t.pools)}}function Rs(n,s){1&n&&(e.TgZ(0,"span",61),e.SDv(1,71),e.qZA())}const Ms=function(n,s){return[n,s]};function Os(n,s){if(1&n&&(e.TgZ(0,"div",9),e.TgZ(1,"div",20),e._UZ(2,"i",72),e.qZA(),e.qZA()),2&n){const t=e.oxw(2);e.xp6(2),e.Q6J("ngClass",e.WLB(1,Ms,t.icons.spinner,t.icons.spin))}}function As(n,s){1&n&&e._UZ(0,"input",76)}function hs(n,s){1&n&&(e.TgZ(0,"option",50),e.SDv(1,78),e.qZA()),2&n&&e.Q6J("ngValue",null)}function Ps(n,s){1&n&&(e.TgZ(0,"option",50),e.SDv(1,79),e.qZA()),2&n&&e.Q6J("ngValue",null)}function Is(n,s){1&n&&(e.TgZ(0,"option",50),e.SDv(1,80),e.qZA()),2&n&&e.Q6J("ngValue",null)}function bs(n,s){if(1&n&&(e.TgZ(0,"option",70),e._uU(1),e.qZA()),2&n){const t=s.$implicit;e.Q6J("value",t),e.xp6(1),e.Oqu(t)}}function Ns(n,s){if(1&n&&(e.TgZ(0,"select",77),e.YNc(1,hs,2,1,"option",66),e.YNc(2,Ps,2,1,"option",66),e.YNc(3,Is,2,1,"option",66),e.YNc(4,bs,2,2,"option",46),e.qZA()),2&n){const t=e.oxw(3);e.xp6(1),e.Q6J("ngIf",null===t.pools),e.xp6(1),e.Q6J("ngIf",null!==t.pools&&0===t.pools.length),e.xp6(1),e.Q6J("ngIf",null!==t.pools&&t.pools.length>0),e.xp6(1),e.Q6J("ngForOf",t.namespaces)}}function Fs(n,s){if(1&n&&(e.TgZ(0,"div",9),e.TgZ(1,"label",73),e._uU(2," Namespace "),e.qZA(),e.TgZ(3,"div",12),e.YNc(4,As,1,0,"input",74),e.YNc(5,Ns,5,4,"select",75),e.qZA(),e.qZA()),2&n){const t=e.oxw(2);e.xp6(4),e.Q6J("ngIf","editing"===t.mode||!t.poolPermission.read),e.xp6(1),e.Q6J("ngIf","editing"!==t.mode&&t.poolPermission.read)}}function Ds(n,s){1&n&&(e.TgZ(0,"cd-helper"),e.TgZ(1,"span"),e.SDv(2,81),e.qZA(),e.qZA())}function vs(n,s){1&n&&e._UZ(0,"input",87)}function Ls(n,s){1&n&&(e.TgZ(0,"option",50),e.SDv(1,89),e.qZA()),2&n&&e.Q6J("ngValue",null)}function $s(n,s){1&n&&(e.TgZ(0,"option",50),e.SDv(1,90),e.qZA()),2&n&&e.Q6J("ngValue",null)}function Zs(n,s){1&n&&(e.TgZ(0,"option",50),e._uU(1,"-- Select a data pool -- "),e.qZA()),2&n&&e.Q6J("ngValue",null)}function Bs(n,s){if(1&n&&(e.TgZ(0,"option",70),e._uU(1),e.qZA()),2&n){const t=s.$implicit;e.Q6J("value",t.pool_name),e.xp6(1),e.Oqu(t.pool_name)}}function Gs(n,s){if(1&n){const t=e.EpF();e.TgZ(0,"select",88),e.NdJ("change",function(i){return e.CHM(t),e.oxw(3).onDataPoolChange(i.target.value)}),e.YNc(1,Ls,2,1,"option",66),e.YNc(2,$s,2,1,"option",66),e.YNc(3,Zs,2,1,"option",66),e.YNc(4,Bs,2,2,"option",46),e.qZA()}if(2&n){const t=e.oxw(3);e.xp6(1),e.Q6J("ngIf",null===t.dataPools),e.xp6(1),e.Q6J("ngIf",null!==t.dataPools&&0===t.dataPools.length),e.xp6(1),e.Q6J("ngIf",null!==t.dataPools&&t.dataPools.length>0),e.xp6(1),e.Q6J("ngForOf",t.dataPools)}}function xs(n,s){1&n&&(e.TgZ(0,"span",61),e.SDv(1,91),e.qZA())}const je=function(n){return{required:n}};function ys(n,s){if(1&n&&(e.TgZ(0,"div",9),e.TgZ(1,"label",82),e.TgZ(2,"span",72),e.SDv(3,83),e.qZA(),e._UZ(4,"cd-helper",84),e.qZA(),e.TgZ(5,"div",12),e.YNc(6,vs,1,0,"input",85),e.YNc(7,Gs,5,4,"select",86),e.YNc(8,xs,2,0,"span",14),e.qZA(),e.qZA()),2&n){e.oxw();const t=e.MAs(2),o=e.oxw();e.xp6(2),e.Q6J("ngClass",e.VKq(4,je,"editing"!==o.mode)),e.xp6(4),e.Q6J("ngIf","editing"===o.mode||!o.poolPermission.read),e.xp6(1),e.Q6J("ngIf","editing"!==o.mode&&o.poolPermission.read),e.xp6(1),e.Q6J("ngIf",o.rbdForm.showError("dataPool",t,"required"))}}function ws(n,s){1&n&&(e.TgZ(0,"span",61),e.SDv(1,92),e.qZA())}function qs(n,s){1&n&&(e.TgZ(0,"span",61),e.SDv(1,93),e.qZA())}function Hs(n,s){if(1&n&&e._UZ(0,"cd-helper",97),2&n){const t=e.oxw().$implicit;e.s9C("html",t.helperHtml)}}function ks(n,s){if(1&n&&(e.TgZ(0,"div",21),e._UZ(1,"input",94),e.TgZ(2,"label",95),e._uU(3),e.qZA(),e.YNc(4,Hs,1,1,"cd-helper",96),e.qZA()),2&n){const t=s.$implicit;e.xp6(1),e.s9C("id",t.key),e.s9C("name",t.key),e.s9C("formControlName",t.key),e.xp6(1),e.s9C("for",t.key),e.xp6(1),e.Oqu(t.desc),e.xp6(1),e.Q6J("ngIf",t.helperHtml)}}const At=function(n){return["edit",n]},ht=function(n){return{modal:n}},Pt=function(n){return{outlets:n}},It=function(n){return["/block/mirroring",n]};function Ks(n,s){if(1&n&&(e.TgZ(0,"cd-helper"),e.TgZ(1,"span"),e.tHW(2,98),e._UZ(3,"b"),e._UZ(4,"a",99),e.N_p(),e.qZA(),e.qZA()),2&n){const t=e.oxw(2);e.xp6(4),e.Q6J("routerLink",e.VKq(7,It,e.VKq(5,Pt,e.VKq(3,ht,e.VKq(1,At,t.currentPoolName)))))}}function Xs(n,s){if(1&n&&(e.TgZ(0,"cd-helper"),e.TgZ(1,"span"),e.tHW(2,103),e._UZ(3,"b"),e._UZ(4,"a",99),e.N_p(),e.qZA(),e.qZA()),2&n){const t=e.oxw(4);e.xp6(4),e.Q6J("routerLink",e.VKq(7,It,e.VKq(5,Pt,e.VKq(3,ht,e.VKq(1,At,t.currentPoolName)))))}}function Qs(n,s){if(1&n){const t=e.EpF();e.TgZ(0,"div",101),e.TgZ(1,"input",102),e.NdJ("change",function(){return e.CHM(t),e.oxw(3).setExclusiveLock()}),e.qZA(),e.TgZ(2,"label",95),e._uU(3),e.ALo(4,"titlecase"),e.qZA(),e.YNc(5,Xs,5,9,"cd-helper",25),e.qZA()}if(2&n){const t=s.$implicit,o=e.oxw(3);e.xp6(1),e.Q6J("id",t)("value",t),e.uIk("disabled","pool"===o.poolMirrorMode&&"snapshot"===t||null),e.xp6(1),e.Q6J("for",t),e.xp6(1),e.Oqu(e.lcZ(4,6,t)),e.xp6(2),e.Q6J("ngIf","pool"===o.poolMirrorMode&&"snapshot"===t)}}function zs(n,s){if(1&n&&(e.TgZ(0,"div"),e.YNc(1,Qs,6,8,"div",100),e.qZA()),2&n){const t=e.oxw(2);e.xp6(1),e.Q6J("ngForOf",t.mirroringOptions)}}function Js(n,s){if(1&n&&(e.TgZ(0,"div",9),e.TgZ(1,"label",104),e.tHW(2,105),e._UZ(3,"cd-helper",106),e.N_p(),e.qZA(),e.TgZ(4,"div",12),e._UZ(5,"input",107),e.qZA(),e.qZA()),2&n){const t=e.oxw(2);e.xp6(5),e.uIk("disabled",t.mode===t.rbdFormMode.editing||null)}}function Ys(n,s){if(1&n){const t=e.EpF();e.TgZ(0,"a",108),e.NdJ("click",function(){return e.CHM(t),e.oxw(2).advancedEnabled=!0,!1}),e.SDv(1,109),e.qZA()}}function Vs(n,s){if(1&n&&(e.TgZ(0,"option",70),e._uU(1),e.qZA()),2&n){const t=s.$implicit;e.Q6J("value",t),e.xp6(1),e.Oqu(t)}}function Us(n,s){if(1&n&&(e.TgZ(0,"option",70),e._uU(1),e.qZA()),2&n){const t=s.$implicit;e.Q6J("value",t),e.xp6(1),e.Oqu(t)}}function js(n,s){1&n&&(e.TgZ(0,"span",61),e.SDv(1,110),e.qZA())}function Ws(n,s){1&n&&(e.TgZ(0,"span",61),e.SDv(1,111),e.qZA())}function e_(n,s){1&n&&(e.TgZ(0,"span",61),e.SDv(1,112),e.qZA())}function t_(n,s){1&n&&(e.TgZ(0,"span",61),e.SDv(1,113),e.qZA())}function o_(n,s){if(1&n){const t=e.EpF();e.TgZ(0,"div",1),e.TgZ(1,"form",2,3),e.TgZ(3,"div",4),e.TgZ(4,"div",5),e.SDv(5,6),e.ALo(6,"titlecase"),e.ALo(7,"upperFirst"),e.qZA(),e.TgZ(8,"div",7),e.YNc(9,ps,7,3,"div",8),e.TgZ(10,"div",9),e.TgZ(11,"label",10),e.SDv(12,11),e.qZA(),e.TgZ(13,"div",12),e._UZ(14,"input",13),e.YNc(15,gs,3,0,"span",14),e.YNc(16,us,3,0,"span",14),e.qZA(),e.qZA(),e.TgZ(17,"div",15),e.NdJ("change",function(i){return e.CHM(t),e.oxw().onPoolChange(i.target.value)}),e.TgZ(18,"label",16),e.SDv(19,17),e.qZA(),e.TgZ(20,"div",12),e.YNc(21,ms,1,0,"input",18),e.YNc(22,Es,5,4,"select",19),e.YNc(23,Rs,2,0,"span",14),e.qZA(),e.qZA(),e.YNc(24,Os,3,4,"div",8),e.YNc(25,Fs,6,2,"div",8),e.TgZ(26,"div",9),e.TgZ(27,"div",20),e.TgZ(28,"div",21),e.TgZ(29,"input",22),e.NdJ("change",function(){return e.CHM(t),e.oxw().onUseDataPoolChange()}),e.qZA(),e.TgZ(30,"label",23),e.SDv(31,24),e.qZA(),e.YNc(32,Ds,3,0,"cd-helper",25),e.qZA(),e.qZA(),e.qZA(),e.YNc(33,ys,9,6,"div",8),e.TgZ(34,"div",9),e.TgZ(35,"label",26),e.SDv(36,27),e.qZA(),e.TgZ(37,"div",12),e._UZ(38,"input",28),e.YNc(39,ws,2,0,"span",14),e.YNc(40,qs,2,0,"span",14),e.qZA(),e.qZA(),e.TgZ(41,"div",29),e.TgZ(42,"label",30),e.SDv(43,31),e.qZA(),e.TgZ(44,"div",12),e.YNc(45,ks,5,6,"div",32),e.qZA(),e.qZA(),e.TgZ(46,"div",9),e.TgZ(47,"div",20),e.TgZ(48,"div",21),e.TgZ(49,"input",33),e.NdJ("change",function(){return e.CHM(t),e.oxw().setMirrorMode()}),e.qZA(),e.TgZ(50,"label",34),e._uU(51,"Mirroring"),e.qZA(),e.YNc(52,Ks,5,9,"cd-helper",25),e.qZA(),e.YNc(53,zs,2,1,"div",25),e.qZA(),e.qZA(),e.YNc(54,Js,6,1,"div",8),e.TgZ(55,"div",35),e.TgZ(56,"div",36),e.YNc(57,Ys,2,0,"a",37),e.qZA(),e.qZA(),e.TgZ(58,"div",38),e.TgZ(59,"legend",39),e.SDv(60,40),e.qZA(),e.TgZ(61,"div",41),e.TgZ(62,"h4",39),e.SDv(63,42),e.qZA(),e.TgZ(64,"div",9),e.TgZ(65,"label",43),e.tHW(66,44),e._UZ(67,"cd-helper"),e.N_p(),e.qZA(),e.TgZ(68,"div",12),e.TgZ(69,"select",45),e.YNc(70,Vs,2,2,"option",46),e.qZA(),e.qZA(),e.qZA(),e.TgZ(71,"div",9),e.TgZ(72,"label",47),e.tHW(73,48),e._UZ(74,"cd-helper"),e.N_p(),e.qZA(),e.TgZ(75,"div",12),e.TgZ(76,"select",49),e.TgZ(77,"option",50),e.SDv(78,51),e.qZA(),e.YNc(79,Us,2,2,"option",46),e.qZA(),e.YNc(80,js,2,0,"span",14),e.YNc(81,Ws,2,0,"span",14),e.qZA(),e.qZA(),e.TgZ(82,"div",9),e.TgZ(83,"label",52),e.tHW(84,53),e._UZ(85,"cd-helper"),e.N_p(),e.qZA(),e.TgZ(86,"div",12),e._UZ(87,"input",54),e.YNc(88,e_,2,0,"span",14),e.YNc(89,t_,2,0,"span",14),e.qZA(),e.qZA(),e.qZA(),e.TgZ(90,"cd-rbd-configuration-form",55),e.NdJ("changes",function(i){return e.CHM(t),e.oxw().getDirtyConfigurationValues=i}),e.qZA(),e.qZA(),e.qZA(),e.TgZ(91,"div",56),e.TgZ(92,"cd-form-button-panel",57),e.NdJ("submitActionEvent",function(){return e.CHM(t),e.oxw().submit()}),e.ALo(93,"titlecase"),e.ALo(94,"upperFirst"),e.qZA(),e.qZA(),e.qZA(),e.qZA(),e.qZA()}if(2&n){const t=e.MAs(2),o=e.oxw();e.xp6(1),e.Q6J("formGroup",o.rbdForm),e.xp6(6),e.pQV(e.lcZ(6,35,o.action))(e.lcZ(7,37,o.resource)),e.QtT(5),e.xp6(2),e.Q6J("ngIf",o.rbdForm.getValue("parent")),e.xp6(6),e.Q6J("ngIf",o.rbdForm.showError("name",t,"required")),e.xp6(1),e.Q6J("ngIf",o.rbdForm.showError("name",t,"pattern")),e.xp6(2),e.Q6J("ngClass",e.VKq(43,je,"editing"!==o.mode)),e.xp6(3),e.Q6J("ngIf","editing"===o.mode||!o.poolPermission.read),e.xp6(1),e.Q6J("ngIf","editing"!==o.mode&&o.poolPermission.read),e.xp6(1),e.Q6J("ngIf",o.rbdForm.showError("pool",t,"required")),e.xp6(1),e.Q6J("ngIf","editing"!==o.mode&&o.rbdForm.getValue("pool")&&null===o.namespaces),e.xp6(1),e.Q6J("ngIf","editing"===o.mode&&o.rbdForm.getValue("namespace")||"editing"!==o.mode&&(o.namespaces&&o.namespaces.length>0||!o.poolPermission.read)),e.xp6(7),e.Q6J("ngIf",o.allDataPools.length<=1),e.xp6(1),e.Q6J("ngIf",o.rbdForm.getValue("useDataPool")),e.xp6(6),e.Q6J("ngIf",o.rbdForm.showError("size",t,"required")),e.xp6(1),e.Q6J("ngIf",o.rbdForm.showError("size",t,"invalidSizeObject")),e.xp6(5),e.Q6J("ngForOf",o.featuresList),e.xp6(7),e.Q6J("ngIf",!1===o.mirroring&&o.currentPoolName),e.xp6(1),e.Q6J("ngIf",o.mirroring),e.xp6(1),e.Q6J("ngIf","snapshot"===o.rbdForm.getValue("mirroringMode")&&o.mirroring),e.xp6(3),e.Q6J("ngIf",!o.advancedEnabled),e.xp6(1),e.Q6J("hidden",!o.advancedEnabled),e.xp6(12),e.Q6J("ngForOf",o.objectSizes),e.xp6(2),e.Q6J("ngClass",e.VKq(45,je,o.rbdForm.getValue("stripingCount"))),e.xp6(5),e.Q6J("ngValue",null),e.xp6(2),e.Q6J("ngForOf",o.objectSizes),e.xp6(1),e.Q6J("ngIf",o.rbdForm.showError("stripingUnit",t,"required")),e.xp6(1),e.Q6J("ngIf",o.rbdForm.showError("stripingUnit",t,"invalidStripingUnit")),e.xp6(2),e.Q6J("ngClass",e.VKq(47,je,o.rbdForm.getValue("stripingUnit"))),e.xp6(5),e.Q6J("ngIf",o.rbdForm.showError("stripingCount",t,"required")),e.xp6(1),e.Q6J("ngIf",o.rbdForm.showError("stripingCount",t,"min")),e.xp6(1),e.Q6J("form",o.rbdForm)("initializeData",o.initializeConfigData),e.xp6(2),e.Q6J("form",t)("submitText",e.lcZ(93,39,o.action)+" "+e.lcZ(94,41,o.resource))}}let $e=(()=>{class n extends H.E{constructor(t,o,i,_,r,c,d,g,f,I){super(),this.authStorageService=t,this.route=o,this.poolService=i,this.rbdService=_,this.formatter=r,this.taskWrapper=c,this.dimlessBinaryPipe=d,this.actionLabels=g,this.router=f,this.rbdMirroringService=I,this.namespaces=[],this.namespacesByPoolCache={},this.pools=null,this.allPools=null,this.dataPools=null,this.allDataPools=[],this.featuresList=[],this.initializeConfigData=new Ot.t(1),this.advancedEnabled=!1,this.rbdFormMode=Ue,this.defaultObjectSize="4 MiB",this.mirroringOptions=["journal","snapshot"],this.mirroring=!1,this.currentPoolName="",this.objectSizes=["4 KiB","8 KiB","16 KiB","32 KiB","64 KiB","128 KiB","256 KiB","512 KiB","1 MiB","2 MiB","4 MiB","8 MiB","16 MiB","32 MiB"],this.defaultStripingUnit="4 MiB",this.defaultStripingCount=1,this.rbdImage=new Ot.t(1),this.icons=T.P,this.routerUrl=this.router.url,this.poolPermission=this.authStorageService.getPermissions().pool,this.resource="RBD",this.features={"deep-flatten":{desc:"Deep flatten",requires:null,allowEnable:!1,allowDisable:!0},layering:{desc:"Layering",requires:null,allowEnable:!1,allowDisable:!1},"exclusive-lock":{desc:"Exclusive lock",requires:null,allowEnable:!0,allowDisable:!0},"object-map":{desc:"Object map (requires exclusive-lock)",requires:"exclusive-lock",allowEnable:!0,allowDisable:!0,initDisabled:!0},"fast-diff":{desc:"Fast diff (interlocked with object-map)",requires:"object-map",allowEnable:!0,allowDisable:!0,interlockedWith:"object-map",initDisabled:!0}},this.featuresList=this.objToArray(this.features),this.createForm()}objToArray(t){return S().map(t,(o,i)=>Object.assign(o,{key:i}))}createForm(){this.rbdForm=new y.d({parent:new a.NI(""),name:new a.NI("",{validators:[a.kI.required,a.kI.pattern(/^[^@/]+?$/)]}),pool:new a.NI(null,{validators:[a.kI.required]}),namespace:new a.NI(null),useDataPool:new a.NI(!1),dataPool:new a.NI(null),size:new a.NI(null,{updateOn:"blur"}),obj_size:new a.NI(this.defaultObjectSize),features:new y.d(this.featuresList.reduce((t,o)=>(t[o.key]=new a.NI({value:!1,disabled:!!o.initDisabled}),t),{})),mirroring:new a.NI(!1),schedule:new a.NI("",{validators:[a.kI.pattern(/^([0-9]+)d|([0-9]+)h|([0-9]+)m$/)]}),mirroringMode:new a.NI(this.mirroringOptions[0]),stripingUnit:new a.NI(this.defaultStripingUnit),stripingCount:new a.NI(this.defaultStripingCount,{updateOn:"blur"})},this.validateRbdForm(this.formatter))}disableForEdit(){this.rbdForm.get("parent").disable(),this.rbdForm.get("pool").disable(),this.rbdForm.get("namespace").disable(),this.rbdForm.get("useDataPool").disable(),this.rbdForm.get("dataPool").disable(),this.rbdForm.get("obj_size").disable(),this.rbdForm.get("stripingUnit").disable(),this.rbdForm.get("stripingCount").disable(),this.rbdImage.subscribe(t=>{t.image_format===Pe.V1&&(this.rbdForm.get("deep-flatten").disable(),this.rbdForm.get("layering").disable(),this.rbdForm.get("exclusive-lock").disable())})}disableForClone(){this.rbdForm.get("parent").disable(),this.rbdForm.get("size").disable()}disableForCopy(){this.rbdForm.get("parent").disable(),this.rbdForm.get("size").disable()}ngOnInit(){this.prepareFormForAction(),this.gatherNeededData().subscribe(this.handleExternalData.bind(this))}setExclusiveLock(){this.mirroring&&"journal"===this.rbdForm.get("mirroringMode").value?(this.rbdForm.get("exclusive-lock").setValue(!0),this.rbdForm.get("exclusive-lock").disable()):(this.rbdForm.get("exclusive-lock").enable(),"pool"===this.poolMirrorMode&&this.rbdForm.get("mirroringMode").setValue(this.mirroringOptions[0]))}setMirrorMode(){this.mirroring=!this.mirroring,this.setExclusiveLock()}setPoolMirrorMode(){var t;this.currentPoolName=this.mode===this.rbdFormMode.editing?null===(t=this.response)||void 0===t?void 0:t.pool_name:this.rbdForm.getValue("pool"),this.currentPoolName&&(this.rbdMirroringService.refresh(),this.rbdMirroringService.subscribeSummary(o=>{const i=o.content_data.pools.find(_=>_.name===this.currentPoolName);this.poolMirrorMode=i.mirror_mode,"disabled"===i.mirror_mode?(this.mirroring=!1,this.rbdForm.get("mirroring").setValue(this.mirroring),this.rbdForm.get("mirroring").disable()):this.mode!==this.rbdFormMode.editing&&(this.rbdForm.get("mirroring").enable(),this.mirroring=!0,this.rbdForm.get("mirroring").setValue(this.mirroring))})),this.setExclusiveLock()}prepareFormForAction(){const t=this.routerUrl;t.startsWith("/block/rbd/edit")?(this.mode=this.rbdFormMode.editing,this.action=this.actionLabels.EDIT,this.disableForEdit()):t.startsWith("/block/rbd/clone")?(this.mode=this.rbdFormMode.cloning,this.disableForClone(),this.action=this.actionLabels.CLONE):t.startsWith("/block/rbd/copy")?(this.mode=this.rbdFormMode.copying,this.action=this.actionLabels.COPY,this.disableForCopy()):this.action=this.actionLabels.CREATE,S().each(this.features,o=>{this.rbdForm.get("features").get(o.key).valueChanges.subscribe(i=>this.featureFormUpdate(o.key,i))})}gatherNeededData(){const t={};return this.mode?this.route.params.subscribe(o=>{const i=L.N.fromString(decodeURIComponent(o.image_spec));o.snap&&(this.snapName=decodeURIComponent(o.snap)),t.rbd=this.rbdService.get(i)}):t.defaultFeatures=this.rbdService.defaultFeatures(),this.mode!==this.rbdFormMode.editing&&this.poolPermission.read&&(t.pools=this.poolService.list(["pool_name","type","flags_names","application_metadata"])),(0,le.D)(t)}handleExternalData(t){if(this.handlePoolData(t.pools),this.setPoolMirrorMode(),t.defaultFeatures&&this.setFeatures(t.defaultFeatures),t.rbd){const o=t.rbd;this.setResponse(o,this.snapName),this.rbdImage.next(o)}this.loadingReady()}handlePoolData(t){if(!t)return;const o=[],i=[];for(const _ of t)this.rbdService.isRBDPool(_)&&("replicated"===_.type?(o.push(_),i.push(_)):"erasure"===_.type&&-1!==_.flags_names.indexOf("ec_overwrites")&&i.push(_));if(this.pools=o,this.allPools=o,this.dataPools=i,this.allDataPools=i,1===this.pools.length){const _=this.pools[0].pool_name;this.rbdForm.get("pool").setValue(_),this.onPoolChange(_)}this.allDataPools.length<=1&&this.rbdForm.get("useDataPool").disable()}onPoolChange(t){const o=this.rbdForm.get("dataPool");o.value===t&&o.setValue(null),this.dataPools=this.allDataPools?this.allDataPools.filter(i=>i.pool_name!==t):[],this.namespaces=null,t in this.namespacesByPoolCache?this.namespaces=this.namespacesByPoolCache[t]:this.rbdService.listNamespaces(t).subscribe(i=>{i=i.map(_=>_.namespace),this.namespacesByPoolCache[t]=i,this.namespaces=i}),this.rbdForm.get("namespace").setValue(null)}onUseDataPoolChange(){this.rbdForm.getValue("useDataPool")||(this.rbdForm.get("dataPool").setValue(null),this.onDataPoolChange(null))}onDataPoolChange(t){const o=this.allPools.filter(i=>i.pool_name!==t);this.rbdForm.getValue("pool")===t&&this.rbdForm.get("pool").setValue(null),this.pools=o}validateRbdForm(t){return o=>{const i=o.get("useDataPool"),_=o.get("dataPool");let r=null;i.value&&null==_.value&&(r={required:!0}),_.setErrors(r);const c=o.get("size"),d=o.get("obj_size"),g=t.toBytes(null!=d.value?d.value:this.defaultObjectSize),f=o.get("stripingCount"),I=null!=f.value?f.value:this.defaultStripingCount;let P=null;null===c.value?P={required:!0}:I*g>t.toBytes(c.value)&&(P={invalidSizeObject:!0}),c.setErrors(P);const Z=o.get("stripingUnit");let B=null;null===Z.value&&null!==f.value?B={required:!0}:null!==Z.value&&t.toBytes(Z.value)>g&&(B={invalidStripingUnit:!0}),Z.setErrors(B);let Q=null;return null===f.value&&null!==Z.value?Q={required:!0}:I<1&&(Q={min:!0}),f.setErrors(Q),null}}deepBoxCheck(t,o){this.getDependentChildFeatures(t).forEach(_=>{const r=this.rbdForm.get(_.key);o?r.enable({emitEvent:!1}):(r.disable({emitEvent:!1}),r.setValue(!1,{emitEvent:!1}),this.deepBoxCheck(_.key,o));const c=this.rbdForm.get("features");this.mode===this.rbdFormMode.editing&&c.get(_.key).enabled&&(-1!==this.response.features_name.indexOf(_.key)&&!_.allowDisable||-1===this.response.features_name.indexOf(_.key)&&!_.allowEnable)&&c.get(_.key).disable()})}getDependentChildFeatures(t){return S().filter(this.features,o=>o.requires===t)||[]}interlockCheck(t,o){const i=this.featuresList.find(_=>_.key===t);if(this.response){const _=null!=i.interlockedWith,r=this.featuresList.find(d=>d.interlockedWith===i.key),c=!!this.response.features_name.find(d=>d===i.key);if(_){if(c!==!!this.response.features_name.find(g=>g===i.interlockedWith))return}else if(r&&!!this.response.features_name.find(g=>g===r.key)!==c)return}o?S().filter(this.features,_=>_.interlockedWith===t).forEach(_=>this.rbdForm.get(_.key).setValue(!0,{emitEvent:!1})):i.interlockedWith&&this.rbdForm.get("features").get(i.interlockedWith).setValue(!1)}featureFormUpdate(t,o){if(o){const i=this.features[t].requires;if(i&&!this.rbdForm.getValue(i))return void this.rbdForm.get(`features.${t}`).setValue(!1)}this.deepBoxCheck(t,o),this.interlockCheck(t,o)}setFeatures(t){const o=this.rbdForm.get("features");S().forIn(this.features,i=>{-1!==t.indexOf(i.key)&&o.get(i.key).setValue(!0),this.featureFormUpdate(i.key,o.get(i.key).value)})}setResponse(t,o){this.response=t;const i=new L.N(t.pool_name,t.namespace,t.name).toString();if(this.mode===this.rbdFormMode.cloning)this.rbdForm.get("parent").setValue(`${i}@${o}`);else if(this.mode===this.rbdFormMode.copying)o?this.rbdForm.get("parent").setValue(`${i}@${o}`):this.rbdForm.get("parent").setValue(`${i}`);else if(t.parent){const _=t.parent;this.rbdForm.get("parent").setValue(`${_.pool_name}/${_.image_name}@${_.snap_name}`)}this.mode===this.rbdFormMode.editing&&(this.rbdForm.get("name").setValue(t.name),"snapshot"===(null==t?void 0:t.mirror_mode)||t.features_name.includes("journaling")?(this.mirroring=!0,this.rbdForm.get("mirroring").setValue(this.mirroring),this.rbdForm.get("mirroringMode").setValue(null==t?void 0:t.mirror_mode),this.rbdForm.get("schedule").setValue(null==t?void 0:t.schedule_interval)):(this.mirroring=!1,this.rbdForm.get("mirroring").setValue(this.mirroring)),this.setPoolMirrorMode()),this.rbdForm.get("pool").setValue(t.pool_name),this.onPoolChange(t.pool_name),this.rbdForm.get("namespace").setValue(t.namespace),t.data_pool&&(this.rbdForm.get("useDataPool").setValue(!0),this.rbdForm.get("dataPool").setValue(t.data_pool)),this.rbdForm.get("size").setValue(this.dimlessBinaryPipe.transform(t.size)),this.rbdForm.get("obj_size").setValue(this.dimlessBinaryPipe.transform(t.obj_size)),this.setFeatures(t.features_name),this.rbdForm.get("stripingUnit").setValue(this.dimlessBinaryPipe.transform(t.stripe_unit)),this.rbdForm.get("stripingCount").setValue(t.stripe_count),this.initializeConfigData.next({initialData:this.response.configuration,sourceType:st.h.image})}createRequest(){const t=new rs;return t.pool_name=this.rbdForm.getValue("pool"),t.namespace=this.rbdForm.getValue("namespace"),t.name=this.rbdForm.getValue("name"),t.schedule_interval=this.rbdForm.getValue("schedule"),t.size=this.formatter.toBytes(this.rbdForm.getValue("size")),"image"===this.poolMirrorMode&&(t.mirror_mode=this.rbdForm.getValue("mirroringMode")),this.addObjectSizeAndStripingToRequest(t),t.configuration=this.getDirtyConfigurationValues(),t}addObjectSizeAndStripingToRequest(t){t.obj_size=this.formatter.toBytes(this.rbdForm.getValue("obj_size")),S().forIn(this.features,o=>{this.rbdForm.getValue(o.key)&&t.features.push(o.key)}),this.mirroring&&"journal"===this.rbdForm.getValue("mirroringMode")&&t.features.push("journaling"),t.stripe_unit=this.formatter.toBytes(this.rbdForm.getValue("stripingUnit")),t.stripe_count=this.rbdForm.getValue("stripingCount"),t.data_pool=this.rbdForm.getValue("dataPool")}createAction(){const t=this.createRequest();return this.taskWrapper.wrapTaskAroundCall({task:new R.R("rbd/create",{pool_name:t.pool_name,namespace:t.namespace,image_name:t.name,schedule_interval:t.schedule_interval,start_time:t.start_time}),call:this.rbdService.create(t)})}editRequest(){const t=new _t;if(t.name=this.rbdForm.getValue("name"),t.schedule_interval=this.rbdForm.getValue("schedule"),t.name=this.rbdForm.getValue("name"),t.size=this.formatter.toBytes(this.rbdForm.getValue("size")),S().forIn(this.features,o=>{this.rbdForm.getValue(o.key)&&t.features.push(o.key)}),t.enable_mirror=this.rbdForm.getValue("mirroring"),t.enable_mirror)"journal"===this.rbdForm.getValue("mirroringMode")&&t.features.push("journaling"),"image"===this.poolMirrorMode&&(t.mirror_mode=this.rbdForm.getValue("mirroringMode"));else{const o=t.features.indexOf("journaling",0);o>-1&&t.features.splice(o,1)}return t.configuration=this.getDirtyConfigurationValues(),t}cloneRequest(){const t=new ss;return t.child_pool_name=this.rbdForm.getValue("pool"),t.child_namespace=this.rbdForm.getValue("namespace"),t.child_image_name=this.rbdForm.getValue("name"),this.addObjectSizeAndStripingToRequest(t),t.configuration=this.getDirtyConfigurationValues(!0,st.h.image),t}editAction(){const t=new L.N(this.response.pool_name,this.response.namespace,this.response.name);return this.taskWrapper.wrapTaskAroundCall({task:new R.R("rbd/edit",{image_spec:t.toString()}),call:this.rbdService.update(t,this.editRequest())})}cloneAction(){const t=this.cloneRequest(),o=new L.N(this.response.pool_name,this.response.namespace,this.response.name);return this.taskWrapper.wrapTaskAroundCall({task:new R.R("rbd/clone",{parent_image_spec:o.toString(),parent_snap_name:this.snapName,child_pool_name:t.child_pool_name,child_namespace:t.child_namespace,child_image_name:t.child_image_name}),call:this.rbdService.cloneSnapshot(o,this.snapName,t)})}copyRequest(){const t=new _s;return this.snapName&&(t.snapshot_name=this.snapName),t.dest_pool_name=this.rbdForm.getValue("pool"),t.dest_namespace=this.rbdForm.getValue("namespace"),t.dest_image_name=this.rbdForm.getValue("name"),this.addObjectSizeAndStripingToRequest(t),t.configuration=this.getDirtyConfigurationValues(!0,st.h.image),t}copyAction(){const t=this.copyRequest(),o=new L.N(this.response.pool_name,this.response.namespace,this.response.name);return this.taskWrapper.wrapTaskAroundCall({task:new R.R("rbd/copy",{src_image_spec:o.toString(),dest_pool_name:t.dest_pool_name,dest_namespace:t.dest_namespace,dest_image_name:t.dest_image_name}),call:this.rbdService.copy(o,t)})}submit(){this.mode||this.rbdImage.next("create"),this.rbdImage.pipe((0,ts.P)(),(0,os.w)(()=>this.mode===this.rbdFormMode.editing?this.editAction():this.mode===this.rbdFormMode.cloning?this.cloneAction():this.mode===this.rbdFormMode.copying?this.copyAction():this.createAction())).subscribe(()=>{},()=>this.rbdForm.setErrors({cdSubmitButton:!0}),()=>this.router.navigate(["/block/rbd"]))}}return n.\u0275fac=function(t){return new(t||n)(e.Y36(oe.j),e.Y36(m.gz),e.Y36(Ve.q),e.Y36(q),e.Y36(ns.H),e.Y36(u.P),e.Y36(Le.$),e.Y36(v.p4),e.Y36(m.F0),e.Y36(K))},n.\u0275cmp=e.Xpm({type:n,selectors:[["cd-rbd-form"]],features:[e.qOj],decls:1,vars:1,consts:function(){let s,t,o,i,_,r,c,d,g,f,I,P,Z,B,Q,Y,ee,te,w,_e,ae,M,ge,ue,me,Te,fe,Ce,G,Be,Ge,xe,ye,we,qe,He,ke,Ke,Xe,Qe,ze;return s="" + "\ufffd0\ufffd" + " " + "\ufffd1\ufffd" + "",t="Name",o="Pool",i="Use a dedicated data pool",_="Size",r="e.g., 10GiB",c="Features",d="Advanced",g="Striping",f="Object size" + "\ufffd#67\ufffd" + "Objects in the Ceph Storage Cluster have a maximum configurable size (e.g., 2MB, 4MB, etc.). The object size should be large enough to accommodate many stripe units, and should be a multiple of the stripe unit." + "\ufffd/#67\ufffd" + "",I="Stripe unit" + "\ufffd#74\ufffd" + "Stripes have a configurable unit size (e.g., 64kb). The Ceph Client divides the data it will write to objects into equally sized stripe units, except for the last stripe unit. A stripe width, should be a fraction of the Object Size so that an object may contain many stripe units." + "\ufffd/#74\ufffd" + "",P="-- Select stripe unit --",Z="Stripe count" + "\ufffd#85\ufffd" + "The Ceph Client writes a sequence of stripe units over a series of objects determined by the stripe count. The series of objects is called an object set. After the Ceph Client writes to the last object in the object set, it returns to the first object in the object set." + "\ufffd/#85\ufffd" + "",B="" + "\ufffd0\ufffd" + " from",Q="This field is required.",Y="'/' and '@' are not allowed.",ee="Loading...",te="-- No rbd pools available --",w="-- Select a pool --",_e="This field is required.",ae="Loading...",M="-- No namespaces available --",ge="-- Select a namespace --",ue="You need more than one pool with the rbd application label use to use a dedicated data pool.",me="Data pool",Te="Dedicated pool that stores the object-data of the RBD.",fe="Loading...",Ce="-- No data pools available --",G="This field is required.",Be="This field is required.",Ge="You have to increase the size.",xe="You need to enable a " + "\ufffd#3\ufffd" + "mirror mode" + "\ufffd/#3\ufffd" + " in the selected pool. Please " + "\ufffd#4\ufffd" + "click here to select a mode and enable it in this pool." + "\ufffd/#4\ufffd" + "",ye="You need to enable " + "\ufffd#3\ufffd" + "image mirror mode" + "\ufffd/#3\ufffd" + " in the selected pool. Please " + "\ufffd#4\ufffd" + "click here to select a mode and enable it in this pool." + "\ufffd/#4\ufffd" + "",we="Create Mirror-Snapshots automatically on a periodic basis. The interval can be specified in days, hours, or minutes using d, h, m suffix respectively.",qe="Schedule Interval " + "\ufffd#3\ufffd" + "" + "\ufffd/#3\ufffd" + "",He="e.g., 12h or 1d or 10m",ke="Advanced...",Ke="This field is required because stripe count is defined!",Xe="Stripe unit is greater than object size.",Qe="This field is required because stripe unit is defined!",ze="Stripe count must be greater than 0.",[["class","cd-col-form",4,"cdFormLoading"],[1,"cd-col-form"],["name","rbdForm","novalidate","",3,"formGroup"],["formDir","ngForm"],[1,"card"],[1,"card-header"],s,[1,"card-body"],["class","form-group row",4,"ngIf"],[1,"form-group","row"],["for","name",1,"cd-col-form-label","required"],t,[1,"cd-col-form-input"],["type","text","placeholder","Name...","id","name","name","name","formControlName","name","autofocus","",1,"form-control"],["class","invalid-feedback",4,"ngIf"],[1,"form-group","row",3,"change"],["for","pool",1,"cd-col-form-label",3,"ngClass"],o,["class","form-control","type","text","placeholder","Pool name...","id","pool","name","pool","formControlName","pool",4,"ngIf"],["id","pool","name","pool","class","form-control","formControlName","pool",3,"change",4,"ngIf"],[1,"cd-col-form-offset"],[1,"custom-control","custom-checkbox"],["type","checkbox","id","useDataPool","name","useDataPool","formControlName","useDataPool",1,"custom-control-input",3,"change"],["for","useDataPool",1,"custom-control-label"],i,[4,"ngIf"],["for","size",1,"cd-col-form-label","required"],_,["id","size","name","size","type","text","formControlName","size","placeholder",r,"defaultUnit","GiB","cdDimlessBinary","",1,"form-control"],["formGroupName","features",1,"form-group","row"],["for","features",1,"cd-col-form-label"],c,["class","custom-control custom-checkbox",4,"ngFor","ngForOf"],["type","checkbox","id","mirroring","name","mirroring","formControlName","mirroring",1,"custom-control-input",3,"change"],["for","mirroring",1,"custom-control-label"],[1,"row"],[1,"col-sm-12"],["class","float-right margin-right-md","href","",3,"click",4,"ngIf"],[3,"hidden"],[1,"cd-header"],d,[1,"col-md-12"],g,["for","size",1,"cd-col-form-label"],f,["id","obj_size","name","obj_size","formControlName","obj_size",1,"form-control"],[3,"value",4,"ngFor","ngForOf"],["for","stripingUnit",1,"cd-col-form-label",3,"ngClass"],I,["id","stripingUnit","name","stripingUnit","formControlName","stripingUnit",1,"form-control"],[3,"ngValue"],P,["for","stripingCount",1,"cd-col-form-label",3,"ngClass"],Z,["id","stripingCount","name","stripingCount","formControlName","stripingCount","type","number",1,"form-control"],[3,"form","initializeData","changes"],[1,"card-footer"],["wrappingClass","text-right",3,"form","submitText","submitActionEvent"],["for","name",1,"cd-col-form-label"],B,["type","text","id","parent","name","parent","formControlName","parent",1,"form-control"],[1,"invalid-feedback"],Q,Y,["type","text","placeholder","Pool name...","id","pool","name","pool","formControlName","pool",1,"form-control"],["id","pool","name","pool","formControlName","pool",1,"form-control",3,"change"],[3,"ngValue",4,"ngIf"],ee,te,w,[3,"value"],_e,[3,"ngClass"],["for","pool",1,"cd-col-form-label"],["class","form-control","type","text","placeholder","Namespace...","id","namespace","name","namespace","formControlName","namespace",4,"ngIf"],["id","namespace","name","namespace","class","form-control","formControlName","namespace",4,"ngIf"],["type","text","placeholder","Namespace...","id","namespace","name","namespace","formControlName","namespace",1,"form-control"],["id","namespace","name","namespace","formControlName","namespace",1,"form-control"],ae,M,ge,ue,["for","dataPool",1,"cd-col-form-label"],me,["html",Te],["class","form-control","type","text","placeholder","Data pool name...","id","dataPool","name","dataPool","formControlName","dataPool",4,"ngIf"],["id","dataPool","name","dataPool","class","form-control","formControlName","dataPool",3,"change",4,"ngIf"],["type","text","placeholder","Data pool name...","id","dataPool","name","dataPool","formControlName","dataPool",1,"form-control"],["id","dataPool","name","dataPool","formControlName","dataPool",1,"form-control",3,"change"],fe,Ce,G,Be,Ge,["type","checkbox",1,"custom-control-input",3,"id","name","formControlName"],[1,"custom-control-label",3,"for"],[3,"html",4,"ngIf"],[3,"html"],xe,[3,"routerLink"],["class","custom-control custom-radio ml-2",4,"ngFor","ngForOf"],[1,"custom-control","custom-radio","ml-2"],["type","radio","name","mirroringMode","formControlName","mirroringMode",1,"custom-control-input",3,"id","value","change"],ye,[1,"cd-col-form-label"],qe,["html",we],["id","schedule","name","schedule","type","text","formControlName","schedule","placeholder",He,1,"form-control"],["href","",1,"float-right","margin-right-md",3,"click"],ke,Ke,Xe,Qe,ze]},template:function(t,o){1&t&&e.YNc(0,o_,95,49,"div",0),2&t&&e.Q6J("cdFormLoading",o.loading)},directives:[pt.y,a._Y,a.JL,a.sg,h.V,l.O5,O.P,$.o,a.Fj,k.b,a.JJ,a.u,Re.U,l.mk,a.Wl,ls.Q,a.x0,l.sg,cs.S,a.EJ,a.YN,a.Kr,a.wV,ds.d,j.p,m.yS,a._],pipes:[l.rS,et.m],styles:[""]}),n})();var bt=p(71225),Nt=p(36169);let n_=(()=>{class n{constructor(){}static getCount(t){var o;return Number(null===(o=t.headers)||void 0===o?void 0:o.get("X-Total-Count"))}}return n.\u0275fac=function(t){return new(t||n)},n.\u0275prov=e.Yz7({token:n,factory:n.\u0275fac,providedIn:"root"}),n})();var at=p(51847),i_=p(16738),Me=p.n(i_),rt=p(62862),s_=p(52266);function __(n,s){1&n&&(e.TgZ(0,"div",18),e.TgZ(1,"span"),e.SDv(2,19),e.qZA(),e.qZA())}function a_(n,s){1&n&&(e.TgZ(0,"span",20),e.SDv(1,21),e.qZA())}function r_(n,s){1&n&&(e.TgZ(0,"span",20),e.SDv(1,22),e.qZA())}function l_(n,s){if(1&n&&e._UZ(0,"cd-date-time-picker",23),2&n){const t=e.oxw();e.Q6J("control",t.moveForm.get("expiresAt"))}}let c_=(()=>{class n{constructor(t,o,i,_,r){this.rbdService=t,this.activeModal=o,this.actionLabels=i,this.fb=_,this.taskWrapper=r,this.createForm()}createForm(){this.moveForm=this.fb.group({expiresAt:["",[z.h.custom("format",t=>!(""===t||Me()(t,"YYYY-MM-DD HH:mm:ss").isValid())),z.h.custom("expired",t=>Me()().isAfter(t))]]})}ngOnInit(){this.imageSpec=new L.N(this.poolName,this.namespace,this.imageName),this.imageSpecStr=this.imageSpec.toString(),this.pattern=`${this.poolName}/${this.imageName}`}moveImage(){let t=0;const o=this.moveForm.getValue("expiresAt");o&&(t=Me()(o,"YYYY-MM-DD HH:mm:ss").diff(Me()(),"seconds",!0)),t<0&&(t=0),this.taskWrapper.wrapTaskAroundCall({task:new R.R("rbd/trash/move",{image_spec:this.imageSpecStr}),call:this.rbdService.moveTrash(this.imageSpec,t)}).subscribe({complete:()=>{this.activeModal.close()}})}}return n.\u0275fac=function(t){return new(t||n)(e.Y36(q),e.Y36(N.Kz),e.Y36(v.p4),e.Y36(rt.O),e.Y36(u.P))},n.\u0275cmp=e.Xpm({type:n,selectors:[["cd-rbd-trash-move-modal"]],decls:23,vars:9,consts:function(){let s,t,o,i,_,r,c;return s="Move an image to trash",t="To move " + "[\ufffd#10\ufffd|\ufffd#11\ufffd]" + "" + "\ufffd0\ufffd" + "" + "[\ufffd/#10\ufffd|\ufffd/#11\ufffd]" + " to trash, click " + "[\ufffd#10\ufffd|\ufffd#11\ufffd]" + "Move" + "[\ufffd/#10\ufffd|\ufffd/#11\ufffd]" + ". Optionally, you can pick an expiration date.",t=e.Zx4(t),o="Protection expires at",i="NOT PROTECTED",_="This image contains snapshot(s), which will prevent it from being removed after moved to trash.",r="Wrong date format. Please use \"YYYY-MM-DD HH:mm:ss\".",c="Protection has already expired. Please pick a future date or leave it empty.",[[3,"modalRef"],[1,"modal-title"],s,[1,"modal-content"],["name","moveForm","novalidate","",1,"form",3,"formGroup"],["formDir","ngForm"],[1,"modal-body"],["class","alert alert-warning","role","alert",4,"ngIf"],t,[1,"form-group"],["for","expiresAt",1,"col-form-label"],o,["type","text","placeholder",i,"formControlName","expiresAt","triggers","manual",1,"form-control",3,"ngbPopover","click","keypress"],["p","ngbPopover"],["class","invalid-feedback",4,"ngIf"],[1,"modal-footer"],[3,"form","submitText","submitActionEvent"],["popContent",""],["role","alert",1,"alert","alert-warning"],_,[1,"invalid-feedback"],r,c,[3,"control"]]},template:function(t,o){if(1&t){const i=e.EpF();e.TgZ(0,"cd-modal",0),e.ynx(1,1),e.SDv(2,2),e.BQk(),e.ynx(3,3),e.TgZ(4,"form",4,5),e.TgZ(6,"div",6),e.YNc(7,__,3,0,"div",7),e.TgZ(8,"p"),e.tHW(9,8),e._UZ(10,"kbd"),e._UZ(11,"kbd"),e.N_p(),e.qZA(),e.TgZ(12,"div",9),e.TgZ(13,"label",10),e.SDv(14,11),e.qZA(),e.TgZ(15,"input",12,13),e.NdJ("click",function(){return e.CHM(i),e.MAs(16).open()})("keypress",function(){return e.CHM(i),e.MAs(16).close()}),e.qZA(),e.YNc(17,a_,2,0,"span",14),e.YNc(18,r_,2,0,"span",14),e.qZA(),e.qZA(),e.TgZ(19,"div",15),e.TgZ(20,"cd-form-button-panel",16),e.NdJ("submitActionEvent",function(){return o.moveImage()}),e.qZA(),e.qZA(),e.qZA(),e.BQk(),e.qZA(),e.YNc(21,l_,1,1,"ng-template",null,17,e.W1O)}if(2&t){const i=e.MAs(5),_=e.MAs(22);e.Q6J("modalRef",o.activeModal),e.xp6(4),e.Q6J("formGroup",o.moveForm),e.xp6(3),e.Q6J("ngIf",o.hasSnapshots),e.xp6(4),e.pQV(o.imageSpecStr),e.QtT(9),e.xp6(4),e.Q6J("ngbPopover",_),e.xp6(2),e.Q6J("ngIf",o.moveForm.showError("expiresAt",i,"format")),e.xp6(1),e.Q6J("ngIf",o.moveForm.showError("expiresAt",i,"expired")),e.xp6(2),e.Q6J("form",o.moveForm)("submitText",o.actionLabels.MOVE)}},directives:[C.z,a._Y,a.JL,a.sg,h.V,l.O5,O.P,$.o,a.Fj,k.b,a.JJ,a.u,N.o8,j.p,s_.J],styles:[""]}),n})();function d_(n,s){1&n&&(e.TgZ(0,"li",10),e.TgZ(1,"a",3),e.SDv(2,11),e.qZA(),e.qZA())}let We=(()=>{class n{constructor(t,o){this.authStorageService=t,this.router=o,this.grafanaPermission=this.authStorageService.getPermissions().grafana}}return n.\u0275fac=function(t){return new(t||n)(e.Y36(oe.j),e.Y36(m.F0))},n.\u0275cmp=e.Xpm({type:n,selectors:[["cd-rbd-tabs"]],decls:12,vars:2,consts:function(){let s,t,o,i;return s="Images",t="Namespaces",o="Trash",i="Overall Performance",[["ngbNav","",1,"nav-tabs",3,"activeId","navChange"],["nav","ngbNav"],["ngbNavItem","/block/rbd"],["ngbNavLink",""],s,["ngbNavItem","/block/rbd/namespaces"],t,["ngbNavItem","/block/rbd/trash"],o,["ngbNavItem","/block/rbd/performance",4,"ngIf"],["ngbNavItem","/block/rbd/performance"],i]},template:function(t,o){1&t&&(e.TgZ(0,"ul",0,1),e.NdJ("navChange",function(_){return o.router.navigate([_.nextId])}),e.TgZ(2,"li",2),e.TgZ(3,"a",3),e.SDv(4,4),e.qZA(),e.qZA(),e.TgZ(5,"li",5),e.TgZ(6,"a",3),e.SDv(7,6),e.qZA(),e.qZA(),e.TgZ(8,"li",7),e.TgZ(9,"a",3),e.SDv(10,8),e.qZA(),e.qZA(),e.YNc(11,d_,3,0,"li",9),e.qZA()),2&t&&(e.Q6J("activeId",o.router.url),e.xp6(11),e.Q6J("ngIf",o.grafanaPermission.read))},directives:[N.Pz,N.nv,N.Vx,l.O5],styles:[""]}),n})();var p_=p(25917),Ft=p(51295),lt=p(60737),g_=p(74255),Dt=p(71099),vt=p(79765);function u_(n,s){1&n&&(e.TgZ(0,"span",16),e.SDv(1,17),e.qZA())}function m_(n,s){if(1&n&&(e.TgZ(0,"span"),e.tHW(1,18),e._UZ(2,"b"),e.N_p(),e.qZA()),2&n){const t=e.oxw();e.xp6(2),e.pQV(t.imageName),e.QtT(1)}}let T_=(()=>{class n{constructor(t,o,i,_,r){this.activeModal=t,this.rbdService=o,this.taskManagerService=i,this.notificationService=_,this.actionLabels=r,this.editing=!1,this.onSubmit=new vt.xQ,this.action=this.actionLabels.CREATE,this.resource="RBD Snapshot",this.createForm()}createForm(){this.snapshotForm=new y.d({snapshotName:new a.NI("",{validators:[a.kI.required]})})}setSnapName(t){this.snapName=t,"snapshot"!==this.mirroring?this.snapshotForm.get("snapshotName").setValue(t):this.snapshotForm.get("snapshotName").clearValidators()}setEditing(t=!0){this.editing=t,this.action=this.editing?this.actionLabels.RENAME:this.actionLabels.CREATE}editAction(){const t=this.snapshotForm.getValue("snapshotName"),o=new L.N(this.poolName,this.namespace,this.imageName),i=new R.R;i.name="rbd/snap/edit",i.metadata={image_spec:o.toString(),snapshot_name:t},this.rbdService.renameSnapshot(o,this.snapName,t).toPromise().then(()=>{this.taskManagerService.subscribe(i.name,i.metadata,_=>{this.notificationService.notifyTask(_)}),this.activeModal.close(),this.onSubmit.next(this.snapName)}).catch(()=>{this.snapshotForm.setErrors({cdSubmitButton:!0})})}createAction(){const t=this.snapshotForm.getValue("snapshotName"),o=new L.N(this.poolName,this.namespace,this.imageName),i=new R.R;i.name="rbd/snap/create",i.metadata={image_spec:o.toString(),snapshot_name:t},this.rbdService.createSnapshot(o,t).toPromise().then(()=>{this.taskManagerService.subscribe(i.name,i.metadata,_=>{this.notificationService.notifyTask(_)}),this.activeModal.close(),this.onSubmit.next(t)}).catch(()=>{this.snapshotForm.setErrors({cdSubmitButton:!0})})}submit(){this.editing?this.editAction():this.createAction()}}return n.\u0275fac=function(t){return new(t||n)(e.Y36(N.Kz),e.Y36(q),e.Y36(Dt.k),e.Y36(ve.g),e.Y36(v.p4))},n.\u0275cmp=e.Xpm({type:n,selectors:[["cd-rbd-snapshot-form-modal"]],decls:22,vars:17,consts:function(){let s,t,o,i;return s="" + "\ufffd0\ufffd" + " " + "\ufffd1\ufffd" + "",t="Name",o="This field is required.",i="Snapshot mode is enabled on image " + "\ufffd#2\ufffd" + "" + "\ufffd0\ufffd" + "" + "\ufffd/#2\ufffd" + ": snapshot names are auto generated",[[3,"modalRef"],[1,"modal-title"],s,[1,"modal-content"],["name","snapshotForm","novalidate","",3,"formGroup"],["formDir","ngForm"],[1,"modal-body"],[1,"form-group","row"],["for","snapshotName",1,"cd-col-form-label","required"],t,[1,"cd-col-form-input"],["type","text","placeholder","Snapshot name...","id","snapshotName","name","snapshotName","formControlName","snapshotName","autofocus","",1,"form-control"],["class","invalid-feedback",4,"ngIf"],[4,"ngIf"],[1,"modal-footer"],[3,"form","submitText","submitActionEvent"],[1,"invalid-feedback"],o,i]},template:function(t,o){if(1&t&&(e.TgZ(0,"cd-modal",0),e.ynx(1,1),e.SDv(2,2),e.ALo(3,"titlecase"),e.ALo(4,"upperFirst"),e.BQk(),e.ynx(5,3),e.TgZ(6,"form",4,5),e.TgZ(8,"div",6),e.TgZ(9,"div",7),e.TgZ(10,"label",8),e.SDv(11,9),e.qZA(),e.TgZ(12,"div",10),e._UZ(13,"input",11),e.YNc(14,u_,2,0,"span",12),e._UZ(15,"br"),e._UZ(16,"br"),e.YNc(17,m_,3,1,"span",13),e.qZA(),e.qZA(),e.qZA(),e.TgZ(18,"div",14),e.TgZ(19,"cd-form-button-panel",15),e.NdJ("submitActionEvent",function(){return o.submit()}),e.ALo(20,"titlecase"),e.ALo(21,"upperFirst"),e.qZA(),e.qZA(),e.qZA(),e.BQk(),e.qZA()),2&t){const i=e.MAs(7);e.Q6J("modalRef",o.activeModal),e.xp6(4),e.pQV(e.lcZ(3,9,o.action))(e.lcZ(4,11,o.resource)),e.QtT(2),e.xp6(2),e.Q6J("formGroup",o.snapshotForm),e.xp6(7),e.uIk("disabled","snapshot"===o.mirroring||null),e.xp6(1),e.Q6J("ngIf",o.snapshotForm.showError("snapshotName",i,"required")),e.xp6(3),e.Q6J("ngIf","snapshot"===o.mirroring),e.xp6(2),e.Q6J("form",o.snapshotForm)("submitText",e.lcZ(20,13,o.action)+" "+e.lcZ(21,15,o.resource))}},directives:[C.z,a._Y,a.JL,a.sg,h.V,O.P,$.o,a.Fj,k.b,a.JJ,a.u,Re.U,l.O5,j.p],pipes:[l.rS,et.m],styles:[""]}),n})();class f_{constructor(s,t,o){this.featuresName=t,this.cloneFormatVersion=1,o.cloneFormatVersion().subscribe(i=>{this.cloneFormatVersion=i}),this.create={permission:"create",icon:T.P.add,name:s.CREATE},this.rename={permission:"update",icon:T.P.edit,name:s.RENAME,disable:i=>this.disableForMirrorSnapshot(i)},this.protect={permission:"update",icon:T.P.lock,visible:i=>i.hasSingleSelection&&!i.first().is_protected,name:s.PROTECT,disable:i=>this.disableForMirrorSnapshot(i)},this.unprotect={permission:"update",icon:T.P.unlock,visible:i=>i.hasSingleSelection&&i.first().is_protected,name:s.UNPROTECT,disable:i=>this.disableForMirrorSnapshot(i)},this.clone={permission:"create",canBePrimary:i=>i.hasSingleSelection,disable:i=>this.getCloneDisableDesc(i,this.featuresName)||this.disableForMirrorSnapshot(i),icon:T.P.clone,name:s.CLONE},this.copy={permission:"create",canBePrimary:i=>i.hasSingleSelection,disable:i=>!i.hasSingleSelection||i.first().cdExecuting||this.disableForMirrorSnapshot(i),icon:T.P.copy,name:s.COPY},this.rollback={permission:"update",icon:T.P.undo,name:s.ROLLBACK,disable:i=>this.disableForMirrorSnapshot(i)},this.deleteSnap={permission:"delete",icon:T.P.destroy,disable:i=>{const _=i.first();return!i.hasSingleSelection||_.cdExecuting||_.is_protected||this.disableForMirrorSnapshot(i)},name:s.DELETE},this.ordering=[this.create,this.rename,this.protect,this.unprotect,this.clone,this.copy,this.rollback,this.deleteSnap]}getCloneDisableDesc(s,t){return!(s.hasSingleSelection&&!s.first().cdExecuting)||((null==t?void 0:t.includes("layering"))?1===this.cloneFormatVersion&&!s.first().is_protected&&"Snapshot must be protected in order to clone.":"Parent image must support Layering")}disableForMirrorSnapshot(s){return s.hasSingleSelection&&"snapshot"===s.first().mirror_mode&&s.first().name.includes(".mirror.")}}class C_{}var Ze=p(96102);const S_=["nameTpl"],E_=["rollbackTpl"];function R_(n,s){if(1&n&&(e.ynx(0),e.SDv(1,3),e.BQk(),e.TgZ(2,"strong"),e._uU(3),e.qZA(),e._uU(4,".\n")),2&n){const t=s.$implicit;e.xp6(3),e.hij(" ",t.snapName,"")}}let M_=(()=>{class n{constructor(t,o,i,_,r,c,d,g,f,I,P){this.authStorageService=t,this.modalService=o,this.dimlessBinaryPipe=i,this.cdDatePipe=_,this.rbdService=r,this.taskManagerService=c,this.notificationService=d,this.summaryService=g,this.taskListService=f,this.actionLabels=I,this.cdr=P,this.snapshots=[],this.selection=new Se.r,this.builders={"rbd/snap/create":Z=>{const B=new C_;return B.name=Z.snapshot_name,B}},this.permission=this.authStorageService.getPermissions().rbdImage}ngOnInit(){this.columns=[{name:"Name",prop:"name",cellTransformation:De.e.executing,flexGrow:2},{name:"Size",prop:"size",flexGrow:1,cellClass:"text-right",pipe:this.dimlessBinaryPipe},{name:"Provisioned",prop:"disk_usage",flexGrow:1,cellClass:"text-right",pipe:this.dimlessBinaryPipe},{name:"State",prop:"is_protected",flexGrow:1,cellTransformation:De.e.badge,customTemplateConfig:{map:{true:{value:"PROTECTED",class:"badge-success"},false:{value:"UNPROTECTED",class:"badge-info"}}}},{name:"Created",prop:"timestamp",flexGrow:1,pipe:this.cdDatePipe}],this.imageSpec=new L.N(this.poolName,this.namespace,this.rbdName),this.rbdTableActions=new f_(this.actionLabels,this.featuresName,this.rbdService),this.rbdTableActions.create.click=()=>this.openCreateSnapshotModal(),this.rbdTableActions.rename.click=()=>this.openEditSnapshotModal(),this.rbdTableActions.protect.click=()=>this.toggleProtection(),this.rbdTableActions.unprotect.click=()=>this.toggleProtection();const t=()=>this.selection.first()&&`${this.imageSpec.toStringEncoded()}/${encodeURIComponent(this.selection.first().name)}`;this.rbdTableActions.clone.routerLink=()=>`/block/rbd/clone/${t()}`,this.rbdTableActions.copy.routerLink=()=>`/block/rbd/copy/${t()}`,this.rbdTableActions.rollback.click=()=>this.rollbackModal(),this.rbdTableActions.deleteSnap.click=()=>this.deleteSnapshotModal(),this.tableActions=this.rbdTableActions.ordering,this.taskListService.init(()=>(0,p_.of)(this.snapshots),null,_=>{Ft.T.updateChanged(this,{data:_})&&(this.cdr.detectChanges(),this.data=[...this.data])},()=>{Ft.T.updateChanged(this,{data:this.snapshots})&&(this.cdr.detectChanges(),this.data=[...this.data])},_=>["rbd/snap/create","rbd/snap/delete","rbd/snap/edit","rbd/snap/rollback"].includes(_.name)&&this.imageSpec.toString()===_.metadata.image_spec,(_,r)=>_.name===r.metadata.snapshot_name,this.builders)}ngOnChanges(){this.columns&&(this.imageSpec=new L.N(this.poolName,this.namespace,this.rbdName),this.rbdTableActions&&(this.rbdTableActions.featuresName=this.featuresName),this.taskListService.fetch())}openSnapshotModal(t,o=null){this.modalRef=this.modalService.show(T_,{mirroring:this.mirroring}),this.modalRef.componentInstance.poolName=this.poolName,this.modalRef.componentInstance.imageName=this.rbdName,this.modalRef.componentInstance.namespace=this.namespace,o?this.modalRef.componentInstance.setEditing():o=`${this.rbdName}_${Me()().toISOString(!0)}`,this.modalRef.componentInstance.setSnapName(o),this.modalRef.componentInstance.onSubmit.subscribe(_=>{const r=new lt.o;r.name=t,r.metadata={image_spec:this.imageSpec.toString(),snapshot_name:_},this.summaryService.addRunningTask(r)})}openCreateSnapshotModal(){this.openSnapshotModal("rbd/snap/create")}openEditSnapshotModal(){this.openSnapshotModal("rbd/snap/edit",this.selection.first().name)}toggleProtection(){const t=this.selection.first().name,o=this.selection.first().is_protected,i=new R.R;i.name="rbd/snap/edit";const _=new L.N(this.poolName,this.namespace,this.rbdName);i.metadata={image_spec:_.toString(),snapshot_name:t},this.rbdService.protectSnapshot(_,t,!o).toPromise().then(()=>{const r=new lt.o;r.name=i.name,r.metadata=i.metadata,this.summaryService.addRunningTask(r),this.taskManagerService.subscribe(i.name,i.metadata,c=>{this.notificationService.notifyTask(c)})})}_asyncTask(t,o,i){const _=new R.R;_.name=o,_.metadata={image_spec:new L.N(this.poolName,this.namespace,this.rbdName).toString(),snapshot_name:i};const r=new L.N(this.poolName,this.namespace,this.rbdName);this.rbdService[t](r,i).toPromise().then(()=>{const c=new lt.o;c.name=_.name,c.metadata=_.metadata,this.summaryService.addRunningTask(c),this.modalRef.close(),this.taskManagerService.subscribe(c.name,c.metadata,d=>{this.notificationService.notifyTask(d)})}).catch(()=>{this.modalRef.componentInstance.stopLoadingSpinner()})}rollbackModal(){const t=this.selection.selected[0].name,o=new L.N(this.poolName,this.namespace,this.rbdName).toString(),i={titleText:"RBD snapshot rollback",buttonText:"Rollback",bodyTpl:this.rollbackTpl,bodyData:{snapName:`${o}@${t}`},onSubmit:()=>{this._asyncTask("rollbackSnapshot","rbd/snap/rollback",t)}};this.modalRef=this.modalService.show(Nt.Y,i)}deleteSnapshotModal(){const t=this.selection.selected[0].name;this.modalRef=this.modalService.show(pe.M,{itemDescription:"RBD snapshot",itemNames:[t],submitAction:()=>this._asyncTask("deleteSnapshot","rbd/snap/delete",t)})}updateSelection(t){this.selection=t}}return n.\u0275fac=function(t){return new(t||n)(e.Y36(oe.j),e.Y36(de.Z),e.Y36(Le.$),e.Y36(Ze.N),e.Y36(q),e.Y36(Dt.k),e.Y36(ve.g),e.Y36(g_.J),e.Y36(ce.j),e.Y36(v.p4),e.Y36(e.sBO))},n.\u0275cmp=e.Xpm({type:n,selectors:[["cd-rbd-snapshot-list"]],viewQuery:function(t,o){if(1&t&&(e.Gf(S_,5),e.Gf(E_,7)),2&t){let i;e.iGM(i=e.CRH())&&(o.nameTpl=i.first),e.iGM(i=e.CRH())&&(o.rollbackTpl=i.first)}},inputs:{snapshots:"snapshots",featuresName:"featuresName",poolName:"poolName",namespace:"namespace",mirroring:"mirroring",rbdName:"rbdName"},features:[e._Bn([ce.j]),e.TTD],decls:4,vars:5,consts:function(){let s;return s="You are about to rollback",[["columnMode","flex","selectionType","single",3,"data","columns","updateSelection"],[1,"table-actions",3,"permission","selection","tableActions"],["rollbackTpl",""],s]},template:function(t,o){1&t&&(e.TgZ(0,"cd-table",0),e.NdJ("updateSelection",function(_){return o.updateSelection(_)}),e._UZ(1,"cd-table-actions",1),e.qZA(),e.YNc(2,R_,5,1,"ng-template",null,2,e.W1O)),2&t&&(e.Q6J("data",o.data)("columns",o.columns),e.xp6(1),e.Q6J("permission",o.permission)("selection",o.selection)("tableActions",o.tableActions))},directives:[W.a,Ee.K],styles:[""],changeDetection:0}),n})();var O_=p(71752),Lt=p(76317),A_=p(41039);const h_=["poolConfigurationSourceTpl"];function P_(n,s){1&n&&(e.ynx(0),e.tHW(1,3),e._UZ(2,"strong"),e.N_p(),e.BQk())}function I_(n,s){if(1&n&&(e.TgZ(0,"span"),e.TgZ(1,"span",38),e._uU(2),e.qZA(),e.qZA()),2&n){const t=s.$implicit;e.xp6(2),e.Oqu(t)}}function b_(n,s){if(1&n&&(e.TgZ(0,"span"),e.TgZ(1,"span",39),e.SDv(2,40),e.qZA(),e.qZA()),2&n){e.oxw(3);const t=e.MAs(1);e.xp6(1),e.Q6J("ngbTooltip",t)}}function N_(n,s){if(1&n&&(e.TgZ(0,"span"),e._uU(1),e.ALo(2,"dimlessBinary"),e.qZA()),2&n){const t=e.oxw(3);e.xp6(1),e.hij(" ",e.lcZ(2,1,t.selection.disk_usage)," ")}}function F_(n,s){if(1&n&&(e.TgZ(0,"span"),e.TgZ(1,"span",39),e.SDv(2,41),e.qZA(),e.qZA()),2&n){e.oxw(3);const t=e.MAs(1);e.xp6(1),e.Q6J("ngbTooltip",t)}}function D_(n,s){if(1&n&&(e.TgZ(0,"span"),e._uU(1),e.ALo(2,"dimlessBinary"),e.qZA()),2&n){const t=e.oxw(3);e.xp6(1),e.hij(" ",e.lcZ(2,1,t.selection.total_disk_usage)," ")}}function v_(n,s){if(1&n&&(e.TgZ(0,"span"),e._uU(1),e.qZA()),2&n){const t=e.oxw(4);e.xp6(1),e.hij("/",t.selection.parent.pool_namespace,"")}}function L_(n,s){if(1&n&&(e.TgZ(0,"span"),e._uU(1),e.YNc(2,v_,2,1,"span",1),e._uU(3),e.qZA()),2&n){const t=e.oxw(3);e.xp6(1),e.Oqu(t.selection.parent.pool_name),e.xp6(1),e.Q6J("ngIf",t.selection.parent.pool_namespace),e.xp6(1),e.AsE("/",t.selection.parent.image_name,"@",t.selection.parent.snap_name,"")}}function $_(n,s){1&n&&(e.TgZ(0,"span"),e._uU(1,"-"),e.qZA())}function Z_(n,s){if(1&n&&(e.TgZ(0,"table",17),e.TgZ(1,"tbody"),e.TgZ(2,"tr"),e.TgZ(3,"td",18),e.SDv(4,19),e.qZA(),e.TgZ(5,"td",20),e._uU(6),e.qZA(),e.qZA(),e.TgZ(7,"tr"),e.TgZ(8,"td",21),e.SDv(9,22),e.qZA(),e.TgZ(10,"td"),e._uU(11),e.qZA(),e.qZA(),e.TgZ(12,"tr"),e.TgZ(13,"td",21),e.SDv(14,23),e.qZA(),e.TgZ(15,"td"),e._uU(16),e.ALo(17,"empty"),e.qZA(),e.qZA(),e.TgZ(18,"tr"),e.TgZ(19,"td",21),e.SDv(20,24),e.qZA(),e.TgZ(21,"td"),e._uU(22),e.ALo(23,"cdDate"),e.qZA(),e.qZA(),e.TgZ(24,"tr"),e.TgZ(25,"td",21),e.SDv(26,25),e.qZA(),e.TgZ(27,"td"),e._uU(28),e.ALo(29,"dimlessBinary"),e.qZA(),e.qZA(),e.TgZ(30,"tr"),e.TgZ(31,"td",21),e.SDv(32,26),e.qZA(),e.TgZ(33,"td"),e._uU(34),e.ALo(35,"dimless"),e.qZA(),e.qZA(),e.TgZ(36,"tr"),e.TgZ(37,"td",21),e.SDv(38,27),e.qZA(),e.TgZ(39,"td"),e._uU(40),e.ALo(41,"dimlessBinary"),e.qZA(),e.qZA(),e.TgZ(42,"tr"),e.TgZ(43,"td",21),e.SDv(44,28),e.qZA(),e.TgZ(45,"td"),e.YNc(46,I_,3,1,"span",29),e.qZA(),e.qZA(),e.TgZ(47,"tr"),e.TgZ(48,"td",21),e.SDv(49,30),e.qZA(),e.TgZ(50,"td"),e.YNc(51,b_,3,1,"span",1),e.YNc(52,N_,3,3,"span",1),e.qZA(),e.qZA(),e.TgZ(53,"tr"),e.TgZ(54,"td",21),e.SDv(55,31),e.qZA(),e.TgZ(56,"td"),e.YNc(57,F_,3,1,"span",1),e.YNc(58,D_,3,3,"span",1),e.qZA(),e.qZA(),e.TgZ(59,"tr"),e.TgZ(60,"td",21),e.SDv(61,32),e.qZA(),e.TgZ(62,"td"),e._uU(63),e.ALo(64,"dimlessBinary"),e.qZA(),e.qZA(),e.TgZ(65,"tr"),e.TgZ(66,"td",21),e.SDv(67,33),e.qZA(),e.TgZ(68,"td"),e._uU(69),e.qZA(),e.qZA(),e.TgZ(70,"tr"),e.TgZ(71,"td",21),e.SDv(72,34),e.qZA(),e.TgZ(73,"td"),e.YNc(74,L_,4,4,"span",1),e.YNc(75,$_,2,0,"span",1),e.qZA(),e.qZA(),e.TgZ(76,"tr"),e.TgZ(77,"td",21),e.SDv(78,35),e.qZA(),e.TgZ(79,"td"),e._uU(80),e.qZA(),e.qZA(),e.TgZ(81,"tr"),e.TgZ(82,"td",21),e.SDv(83,36),e.qZA(),e.TgZ(84,"td"),e._uU(85),e.qZA(),e.qZA(),e.TgZ(86,"tr"),e.TgZ(87,"td",21),e.SDv(88,37),e.qZA(),e.TgZ(89,"td"),e._uU(90),e.qZA(),e.qZA(),e.qZA(),e.qZA()),2&n){const t=e.oxw(2);e.xp6(6),e.Oqu(t.selection.name),e.xp6(5),e.Oqu(t.selection.pool_name),e.xp6(5),e.Oqu(e.lcZ(17,19,t.selection.data_pool)),e.xp6(6),e.Oqu(e.lcZ(23,21,t.selection.timestamp)),e.xp6(6),e.Oqu(e.lcZ(29,23,t.selection.size)),e.xp6(6),e.Oqu(e.lcZ(35,25,t.selection.num_objs)),e.xp6(6),e.Oqu(e.lcZ(41,27,t.selection.obj_size)),e.xp6(6),e.Q6J("ngForOf",t.selection.features_name),e.xp6(5),e.Q6J("ngIf",-1===(null==t.selection.features_name?null:t.selection.features_name.indexOf("fast-diff"))),e.xp6(1),e.Q6J("ngIf",-1!==(null==t.selection.features_name?null:t.selection.features_name.indexOf("fast-diff"))),e.xp6(5),e.Q6J("ngIf",-1===(null==t.selection.features_name?null:t.selection.features_name.indexOf("fast-diff"))),e.xp6(1),e.Q6J("ngIf",-1!==(null==t.selection.features_name?null:t.selection.features_name.indexOf("fast-diff"))),e.xp6(5),e.Oqu(e.lcZ(64,29,t.selection.stripe_unit)),e.xp6(6),e.Oqu(t.selection.stripe_count),e.xp6(5),e.Q6J("ngIf",t.selection.parent),e.xp6(1),e.Q6J("ngIf",!t.selection.parent),e.xp6(5),e.Oqu(t.selection.block_name_prefix),e.xp6(5),e.Oqu(t.selection.order),e.xp6(5),e.Oqu(t.selection.image_format)}}function B_(n,s){if(1&n&&e._UZ(0,"cd-rbd-snapshot-list",42),2&n){const t=e.oxw(2);e.Q6J("snapshots",t.selection.snapshots)("featuresName",t.selection.features_name)("poolName",t.selection.pool_name)("namespace",t.selection.namespace)("mirroring",t.selection.mirror_mode)("rbdName",t.selection.name)}}function G_(n,s){if(1&n&&e._UZ(0,"cd-rbd-configuration-table",43),2&n){const t=e.oxw(2);e.Q6J("data",t.selection.configuration)}}function x_(n,s){if(1&n&&e._UZ(0,"cd-grafana",44),2&n){const t=e.oxw(2);e.Q6J("grafanaPath",t.rbdDashboardUrl)}}function y_(n,s){if(1&n&&(e.ynx(0),e.TgZ(1,"ul",4,5),e.TgZ(3,"li",6),e.TgZ(4,"a",7),e.SDv(5,8),e.qZA(),e.YNc(6,Z_,91,31,"ng-template",9),e.qZA(),e.TgZ(7,"li",10),e.TgZ(8,"a",7),e.SDv(9,11),e.qZA(),e.YNc(10,B_,1,6,"ng-template",9),e.qZA(),e.TgZ(11,"li",12),e.TgZ(12,"a",7),e.SDv(13,13),e.qZA(),e.YNc(14,G_,1,1,"ng-template",9),e.qZA(),e.TgZ(15,"li",14),e.TgZ(16,"a",7),e.SDv(17,15),e.qZA(),e.YNc(18,x_,1,1,"ng-template",9),e.qZA(),e.qZA(),e._UZ(19,"div",16),e.BQk()),2&n){const t=e.MAs(2);e.xp6(19),e.Q6J("ngbNavOutlet",t)}}function w_(n,s){1&n&&(e.ynx(0),e.TgZ(1,"cd-alert-panel",45),e.SDv(2,46),e.qZA(),e.BQk())}function q_(n,s){1&n&&(e.ynx(0),e.TgZ(1,"strong",49),e.SDv(2,50),e.qZA(),e.BQk())}function H_(n,s){1&n&&(e.TgZ(0,"span",51),e.SDv(1,52),e.qZA())}function k_(n,s){if(1&n&&(e.YNc(0,q_,3,0,"ng-container",47),e.YNc(1,H_,2,0,"ng-template",null,48,e.W1O)),2&n){const t=s.value,o=e.MAs(2);e.Q6J("ngIf",+t)("ngIfElse",o)}}let K_=(()=>{class n{ngOnChanges(){this.selection&&(this.rbdDashboardUrl=`rbd-details?var-Pool=${this.selection.pool_name}&var-Image=${this.selection.name}`)}}return n.\u0275fac=function(t){return new(t||n)},n.\u0275cmp=e.Xpm({type:n,selectors:[["cd-rbd-details"]],viewQuery:function(t,o){if(1&t&&(e.Gf(h_,7),e.Gf(N.Pz,7)),2&t){let i;e.iGM(i=e.CRH())&&(o.poolConfigurationSourceTpl=i.first),e.iGM(i=e.CRH())&&(o.nav=i.first)}},inputs:{selection:"selection",images:"images"},features:[e.TTD],decls:6,vars:2,consts:function(){let s,t,o,i,_,r,c,d,g,f,I,P,Z,B,Q,Y,ee,te,w,_e,ae,M,ge,ue,me,Te,fe,Ce;return s="Only available for RBD images with " + "\ufffd#2\ufffd" + "fast-diff" + "\ufffd/#2\ufffd" + " enabled",t="Details",o="Snapshots",i="Configuration",_="Performance",r="Name",c="Pool",d="Data Pool",g="Created",f="Size",I="Objects",P="Object size",Z="Features",B="Provisioned",Q="Total provisioned",Y="Striping unit",ee="Striping count",te="Parent",w="Block name prefix",_e="Order",ae="Format Version",M="N/A",ge="N/A",ue="Information can not be displayed for RBD in status 'Removing'.",me="This setting overrides the global value",Te="Image",fe="This is the global value. No value for this option has been set for this image.",Ce="Global",[["usageNotAvailableTooltipTpl",""],[4,"ngIf"],["poolConfigurationSourceTpl",""],s,["ngbNav","","cdStatefulTab","rbd-details",1,"nav-tabs"],["nav","ngbNav"],["ngbNavItem","details"],["ngbNavLink",""],t,["ngbNavContent",""],["ngbNavItem","snapshots"],o,["ngbNavItem","configuration"],i,["ngbNavItem","performance"],_,[3,"ngbNavOutlet"],[1,"table","table-striped","table-bordered"],[1,"bold","w-25"],r,[1,"w-75"],[1,"bold"],c,d,g,f,I,P,Z,[4,"ngFor","ngForOf"],B,Q,Y,ee,te,w,_e,ae,[1,"badge","badge-dark","mr-2"],["placement","top",1,"form-text","text-muted",3,"ngbTooltip"],M,ge,[3,"snapshots","featuresName","poolName","namespace","mirroring","rbdName"],[3,"data"],["uid","YhCYGcuZz","grafanaStyle","one",3,"grafanaPath"],["type","warning"],ue,[4,"ngIf","ngIfElse"],["global",""],["ngbTooltip",me],Te,["ngbTooltip",fe],Ce]},template:function(t,o){1&t&&(e.YNc(0,P_,3,0,"ng-template",null,0,e.W1O),e.YNc(2,y_,20,1,"ng-container",1),e.YNc(3,w_,3,0,"ng-container",1),e.YNc(4,k_,3,2,"ng-template",null,2,e.W1O)),2&t&&(e.xp6(2),e.Q6J("ngIf",o.selection&&"REMOVING"!==o.selection.source),e.xp6(1),e.Q6J("ngIf",o.selection&&"REMOVING"===o.selection.source))},directives:[l.O5,N.Pz,Mt.m,N.nv,N.Vx,N.uN,N.tO,l.sg,N._L,M_,O_.P,Lt.F,Ct.G],pipes:[A_.W,Ze.N,Le.$,ot.n],styles:[""]}),n})();const X_=["usageTpl"],Q_=["parentTpl"],z_=["nameTpl"],J_=["mirroringTpl"],Y_=["flattenTpl"],V_=["deleteTpl"],U_=["removingStatTpl"],j_=["provisionedNotAvailableTooltipTpl"],W_=["totalProvisionedNotAvailableTooltipTpl"];function ea(n,s){1&n&&e._UZ(0,"div",12),2&n&&e.Q6J("innerHtml","Only available for RBD images with fast-diff enabled",e.oJD)}function ta(n,s){if(1&n&&(e.TgZ(0,"span",15),e.SDv(1,16),e.qZA()),2&n){const t=e.oxw(2);e.Q6J("ngbTooltip",t.usageNotAvailableTooltipTpl)}}function oa(n,s){if(1&n&&(e.SDv(0,17),e.ALo(1,"dimlessBinary")),2&n){const t=e.oxw().row;e.xp6(1),e.pQV(e.lcZ(1,1,t.disk_usage)),e.QtT(0)}}function na(n,s){if(1&n&&(e.YNc(0,ta,2,1,"span",13),e.YNc(1,oa,2,3,"ng-template",null,14,e.W1O)),2&n){const t=s.row,o=e.MAs(2);e.Q6J("ngIf",null===t.disk_usage&&!t.features_name.includes("fast-diff"))("ngIfElse",o)}}function ia(n,s){if(1&n&&(e.TgZ(0,"span",15),e.SDv(1,19),e.qZA()),2&n){const t=e.oxw(2);e.Q6J("ngbTooltip",t.usageNotAvailableTooltipTpl)}}function sa(n,s){if(1&n&&(e.SDv(0,20),e.ALo(1,"dimlessBinary")),2&n){const t=e.oxw().row;e.xp6(1),e.pQV(e.lcZ(1,1,t.total_disk_usage)),e.QtT(0)}}function _a(n,s){if(1&n&&(e.YNc(0,ia,2,1,"span",13),e.YNc(1,sa,2,3,"ng-template",null,18,e.W1O)),2&n){const t=s.row,o=e.MAs(2);e.Q6J("ngIf",null===t.total_disk_usage&&!t.features_name.includes("fast-diff"))("ngIfElse",o)}}function aa(n,s){if(1&n&&(e.TgZ(0,"span"),e._uU(1),e.qZA()),2&n){const t=e.oxw(2).value;e.xp6(1),e.hij("/",t.pool_namespace,"")}}function ra(n,s){if(1&n&&(e.TgZ(0,"span"),e._uU(1),e.YNc(2,aa,2,1,"span",21),e._uU(3),e.qZA()),2&n){const t=e.oxw().value;e.xp6(1),e.Oqu(t.pool_name),e.xp6(1),e.Q6J("ngIf",t.pool_namespace),e.xp6(1),e.AsE("/",t.image_name,"@",t.snap_name,"")}}function la(n,s){1&n&&(e.TgZ(0,"span"),e._uU(1,"-"),e.qZA())}function ca(n,s){if(1&n&&(e.YNc(0,ra,4,4,"span",21),e.YNc(1,la,2,0,"span",21)),2&n){const t=s.value;e.Q6J("ngIf",t),e.xp6(1),e.Q6J("ngIf",!t)}}function da(n,s){if(1&n&&(e.TgZ(0,"span",26),e._uU(1),e.qZA()),2&n){const t=e.oxw().value;e.xp6(1),e.Oqu(t[0])}}function pa(n,s){if(1&n&&(e.TgZ(0,"span",27),e.ALo(1,"cdDate"),e._uU(2),e.qZA()),2&n){const t=e.oxw().value;e.Q6J("ngbTooltip","Next scheduled snapshot on "+e.lcZ(1,2,t[2])),e.xp6(2),e.Oqu(t[1])}}function ga(n,s){1&n&&(e.TgZ(0,"span",26),e.SDv(1,28),e.qZA())}function ua(n,s){1&n&&(e.TgZ(0,"span",26),e.SDv(1,29),e.qZA())}function ma(n,s){if(1&n&&(e.TgZ(0,"span",26),e._uU(1),e.qZA()),2&n){const t=e.oxw().value;e.xp6(1),e.Oqu(t)}}function Ta(n,s){if(1&n&&(e.YNc(0,da,2,1,"span",22),e._uU(1,"\xa0 "),e.YNc(2,pa,3,4,"span",23),e.YNc(3,ga,2,0,"span",24),e.YNc(4,ua,2,0,"span",24),e.YNc(5,ma,2,1,"ng-template",null,25,e.W1O)),2&n){const t=s.value,o=s.row,i=e.MAs(6);e.Q6J("ngIf",3===t.length)("ngIfElse",i),e.xp6(2),e.Q6J("ngIf",3===t.length),e.xp6(1),e.Q6J("ngIf",!0===o.primary),e.xp6(1),e.Q6J("ngIf",!1===o.primary)}}function fa(n,s){if(1&n&&(e._uU(0," You are about to flatten "),e.TgZ(1,"strong"),e._uU(2),e.qZA(),e._uU(3,". "),e._UZ(4,"br"),e._UZ(5,"br"),e._uU(6," All blocks will be copied from parent "),e.TgZ(7,"strong"),e._uU(8),e.qZA(),e._uU(9," to child "),e.TgZ(10,"strong"),e._uU(11),e.qZA(),e._uU(12,".\n")),2&n){const t=s.$implicit;e.xp6(2),e.Oqu(t.child),e.xp6(6),e.Oqu(t.parent),e.xp6(3),e.Oqu(t.child)}}function Ca(n,s){if(1&n&&(e.TgZ(0,"li"),e._uU(1),e.qZA()),2&n){const t=s.$implicit;e.xp6(1),e.Oqu(t)}}function Sa(n,s){if(1&n&&(e.ynx(0),e.TgZ(1,"span"),e.SDv(2,33),e.qZA(),e.TgZ(3,"ul"),e.YNc(4,Ca,2,1,"li",34),e.qZA(),e.BQk()),2&n){const t=e.oxw(2).snapshots;e.xp6(4),e.Q6J("ngForOf",t)}}function Ea(n,s){if(1&n&&(e.TgZ(0,"div",31),e.TgZ(1,"span"),e.SDv(2,32),e.qZA(),e._UZ(3,"br"),e.YNc(4,Sa,5,1,"ng-container",21),e.qZA()),2&n){const t=e.oxw().snapshots;e.xp6(4),e.Q6J("ngIf",t.length>0)}}function Ra(n,s){1&n&&e.YNc(0,Ea,5,1,"div",30),2&n&&e.Q6J("ngIf",s.hasSnapshots)}const Ma=function(n,s){return[n,s]};function Oa(n,s){if(1&n&&e._UZ(0,"i",36),2&n){const t=e.oxw(2);e.Q6J("ngClass",e.WLB(1,Ma,t.icons.spinner,t.icons.spin))}}function Aa(n,s){if(1&n&&(e.TgZ(0,"span",36),e._uU(1),e.qZA()),2&n){const t=e.oxw(),o=t.column,i=t.row;e.Q6J("ngClass",null!=o&&null!=o.customTemplateConfig&&o.customTemplateConfig.executingClass?o.customTemplateConfig.executingClass:"text-muted italic"),e.xp6(1),e.hij(" (",i.cdExecuting,") ")}}function ha(n,s){if(1&n&&e._UZ(0,"i",38),2&n){const t=e.oxw(2);e.Gre("",t.icons.warning," warn")}}function Pa(n,s){if(1&n&&(e.YNc(0,Oa,1,4,"i",35),e.TgZ(1,"span",36),e._uU(2),e.qZA(),e.YNc(3,Aa,2,2,"span",35),e.YNc(4,ha,1,3,"i",37)),2&n){const t=s.column,o=s.value,i=s.row;e.Q6J("ngIf",i.cdExecuting),e.xp6(1),e.Q6J("ngClass",null==t||null==t.customTemplateConfig?null:t.customTemplateConfig.valueClass),e.xp6(1),e.hij(" ",o," "),e.xp6(1),e.Q6J("ngIf",i.cdExecuting),e.xp6(1),e.Q6J("ngIf",i.source&&"REMOVING"===i.source)}}let ba=(()=>{class n extends mt.o{constructor(t,o,i,_,r,c,d,g,f){super(),this.authStorageService=t,this.rbdService=o,this.dimlessBinaryPipe=i,this.dimlessPipe=_,this.modalService=r,this.taskWrapper=c,this.taskListService=d,this.urlBuilder=g,this.actionLabels=f,this.tableStatus=new bt.c("light"),this.selection=new Se.r,this.icons=T.P,this.count=0,this.tableContext=null,this.builders={"rbd/create":M=>this.createRbdFromTask(M.pool_name,M.namespace,M.image_name),"rbd/delete":M=>this.createRbdFromTaskImageSpec(M.image_spec),"rbd/clone":M=>this.createRbdFromTask(M.child_pool_name,M.child_namespace,M.child_image_name),"rbd/copy":M=>this.createRbdFromTask(M.dest_pool_name,M.dest_namespace,M.dest_image_name)},this.permission=this.authStorageService.getPermissions().rbdImage;const I=()=>this.selection.first()&&new L.N(this.selection.first().pool_name,this.selection.first().namespace,this.selection.first().name).toStringEncoded();this.tableActions=[{permission:"create",icon:T.P.add,routerLink:()=>this.urlBuilder.getCreate(),canBePrimary:M=>!M.hasSingleSelection,name:this.actionLabels.CREATE},{permission:"update",icon:T.P.edit,routerLink:()=>this.urlBuilder.getEdit(I()),name:this.actionLabels.EDIT,disable:M=>this.getRemovingStatusDesc(M)||this.getInvalidNameDisable(M)},{permission:"create",canBePrimary:M=>M.hasSingleSelection,disable:M=>this.getRemovingStatusDesc(M)||this.getInvalidNameDisable(M)||!!M.first().cdExecuting,icon:T.P.copy,routerLink:()=>`/block/rbd/copy/${I()}`,name:this.actionLabels.COPY},{permission:"update",disable:M=>this.getRemovingStatusDesc(M)||this.getInvalidNameDisable(M)||M.first().cdExecuting||!M.first().parent,icon:T.P.flatten,click:()=>this.flattenRbdModal(),name:this.actionLabels.FLATTEN},{permission:"update",icon:T.P.refresh,click:()=>this.resyncRbdModal(),name:this.actionLabels.RESYNC,disable:M=>this.getResyncDisableDesc(M)},{permission:"delete",icon:T.P.destroy,click:()=>this.deleteRbdModal(),name:this.actionLabels.DELETE,disable:M=>this.getDeleteDisableDesc(M)},{permission:"delete",icon:T.P.trash,click:()=>this.trashRbdModal(),name:this.actionLabels.TRASH,disable:M=>this.getRemovingStatusDesc(M)||this.getInvalidNameDisable(M)||M.first().image_format===Pe.V1},{permission:"update",icon:T.P.edit,click:()=>this.removeSchedulingModal(),name:this.actionLabels.REMOVE_SCHEDULING,disable:M=>this.getRemovingStatusDesc(M)||this.getInvalidNameDisable(M)||void 0===M.first().schedule_info},{permission:"update",icon:T.P.edit,click:()=>this.actionPrimary(!0),name:this.actionLabels.PROMOTE,visible:()=>null!=this.selection.first()&&!this.selection.first().primary},{permission:"update",icon:T.P.edit,click:()=>this.actionPrimary(!1),name:this.actionLabels.DEMOTE,visible:()=>null!=this.selection.first()&&this.selection.first().primary}]}createRbdFromTaskImageSpec(t){const o=L.N.fromString(t);return this.createRbdFromTask(o.poolName,o.namespace,o.imageName)}createRbdFromTask(t,o,i){const _=new is;return _.id="-1",_.unique_id="-1",_.name=i,_.namespace=o,_.pool_name=t,_.image_format=Pe.V2,_}ngOnInit(){this.columns=[{name:"Name",prop:"name",flexGrow:2,cellTemplate:this.removingStatTpl},{name:"Pool",prop:"pool_name",flexGrow:2},{name:"Namespace",prop:"namespace",flexGrow:2},{name:"Size",prop:"size",flexGrow:1,cellClass:"text-right",sortable:!1,pipe:this.dimlessBinaryPipe},{name:"Objects",prop:"num_objs",flexGrow:1,cellClass:"text-right",sortable:!1,pipe:this.dimlessPipe},{name:"Object size",prop:"obj_size",flexGrow:1,cellClass:"text-right",sortable:!1,pipe:this.dimlessBinaryPipe},{name:"Provisioned",prop:"disk_usage",cellClass:"text-center",flexGrow:1,pipe:this.dimlessBinaryPipe,sortable:!1,cellTemplate:this.provisionedNotAvailableTooltipTpl},{name:"Total provisioned",prop:"total_disk_usage",cellClass:"text-center",flexGrow:1,pipe:this.dimlessBinaryPipe,sortable:!1,cellTemplate:this.totalProvisionedNotAvailableTooltipTpl},{name:"Parent",prop:"parent",flexGrow:2,sortable:!1,cellTemplate:this.parentTpl},{name:"Mirroring",prop:"mirror_mode",flexGrow:3,sortable:!1,cellTemplate:this.mirroringTpl}],this.taskListService.init(i=>this.getRbdImages(i),i=>this.prepareResponse(i),i=>this.images=i,()=>this.onFetchError(),i=>["rbd/clone","rbd/copy","rbd/create","rbd/delete","rbd/edit","rbd/flatten","rbd/trash/move"].includes(i.name),(i,_)=>{let r;switch(_.name){case"rbd/copy":r=new L.N(_.metadata.dest_pool_name,_.metadata.dest_namespace,_.metadata.dest_image_name).toString();break;case"rbd/clone":r=new L.N(_.metadata.child_pool_name,_.metadata.child_namespace,_.metadata.child_image_name).toString();break;case"rbd/create":r=new L.N(_.metadata.pool_name,_.metadata.namespace,_.metadata.image_name).toString();break;default:r=_.metadata.image_spec}return r===new L.N(i.pool_name,i.namespace,i.name).toString()},this.builders)}onFetchError(){this.table.reset(),this.tableStatus=new bt.c("danger")}getRbdImages(t){var o;return null!==t&&(this.tableContext=t),null==this.tableContext&&(this.tableContext=new A.E(()=>{})),this.rbdService.list(null===(o=this.tableContext)||void 0===o?void 0:o.toParams())}prepareResponse(t){let o=[];return t.forEach(i=>{o=o.concat(i.value)}),o.forEach(i=>{if(void 0!==i.schedule_info){let _=[];const r="scheduled";let c=+new Date(i.schedule_info.schedule_time);const d=(new Date).getTimezoneOffset();c+=6e4*Math.abs(d),_.push(i.mirror_mode,r,c),i.mirror_mode=_,_=[]}}),this.count=o.length>0?n_.getCount(t[0]):0,o}updateSelection(t){this.selection=t}deleteRbdModal(){const t=this.selection.first().pool_name,o=this.selection.first().namespace,i=this.selection.first().name,_=new L.N(t,o,i);this.modalRef=this.modalService.show(pe.M,{itemDescription:"RBD",itemNames:[_],bodyTemplate:this.deleteTpl,bodyContext:{hasSnapshots:this.hasSnapshots(),snapshots:this.listProtectedSnapshots()},submitActionObservable:()=>this.taskWrapper.wrapTaskAroundCall({task:new R.R("rbd/delete",{image_spec:_.toString()}),call:this.rbdService.delete(_)})})}resyncRbdModal(){const t=this.selection.first().pool_name,o=this.selection.first().namespace,i=this.selection.first().name,_=new L.N(t,o,i);this.modalRef=this.modalService.show(pe.M,{itemDescription:"RBD",itemNames:[_],actionDescription:"resync",submitActionObservable:()=>this.taskWrapper.wrapTaskAroundCall({task:new R.R("rbd/edit",{image_spec:_.toString()}),call:this.rbdService.update(_,{resync:!0})})})}trashRbdModal(){const t={poolName:this.selection.first().pool_name,namespace:this.selection.first().namespace,imageName:this.selection.first().name,hasSnapshots:this.hasSnapshots()};this.modalRef=this.modalService.show(c_,t)}flattenRbd(t){this.taskWrapper.wrapTaskAroundCall({task:new R.R("rbd/flatten",{image_spec:t.toString()}),call:this.rbdService.flatten(t)}).subscribe({complete:()=>{this.modalRef.close()}})}flattenRbdModal(){const t=this.selection.first().pool_name,o=this.selection.first().namespace,i=this.selection.first().name,_=this.selection.first().parent,r=new L.N(_.pool_name,_.pool_namespace,_.image_name),c=new L.N(t,o,i),d={titleText:"RBD flatten",buttonText:"Flatten",bodyTpl:this.flattenTpl,bodyData:{parent:`${r}@${_.snap_name}`,child:c.toString()},onSubmit:()=>{this.flattenRbd(c)}};this.modalRef=this.modalService.show(Nt.Y,d)}editRequest(){const t=new _t;return t.remove_scheduling=!t.remove_scheduling,t}removeSchedulingModal(){const t=this.selection.first().name,o=new L.N(this.selection.first().pool_name,this.selection.first().namespace,this.selection.first().name);this.modalRef=this.modalService.show(pe.M,{actionDescription:"remove scheduling on",itemDescription:"image",itemNames:[`${t}`],submitActionObservable:()=>new Rt.y(i=>{this.taskWrapper.wrapTaskAroundCall({task:new R.R("rbd/edit",{image_spec:o.toString()}),call:this.rbdService.update(o,this.editRequest())}).subscribe({error:_=>i.error(_),complete:()=>{this.modalRef.close()}})})})}actionPrimary(t){const o=new _t;o.primary=t,o.features=null;const i=new L.N(this.selection.first().pool_name,this.selection.first().namespace,this.selection.first().name);this.taskWrapper.wrapTaskAroundCall({task:new R.R("rbd/edit",{image_spec:i.toString()}),call:this.rbdService.update(i,o)}).subscribe()}hasSnapshots(){return(this.selection.first().snapshots||[]).length>0}hasClonedSnapshots(t){return(t.snapshots||[]).some(i=>i.children&&i.children.length>0)}listProtectedSnapshots(){return this.selection.first().snapshots.reduce((i,_)=>(_.is_protected&&i.push(_.name),i),[])}getDeleteDisableDesc(t){const o=t.first();return o&&this.hasClonedSnapshots(o)?"This RBD has cloned snapshots. Please delete related RBDs before deleting this RBD.":this.getInvalidNameDisable(t)||this.hasClonedSnapshots(t.first())}getResyncDisableDesc(t){const o=t.first();return o&&this.imageIsPrimary(o)?"Primary RBD images cannot be resynced":this.getInvalidNameDisable(t)}imageIsPrimary(t){return t.primary}getInvalidNameDisable(t){var o;const i=t.first();return(null===(o=null==i?void 0:i.name)||void 0===o?void 0:o.match(/[@/]/))?"This RBD image has an invalid name and can't be managed by ceph.":!t.first()||!t.hasSingleSelection}getRemovingStatusDesc(t){const o=t.first();return"REMOVING"===(null==o?void 0:o.source)&&"Action not possible for an RBD in status 'Removing'"}}return n.\u0275fac=function(t){return new(t||n)(e.Y36(oe.j),e.Y36(q),e.Y36(Le.$),e.Y36(ot.n),e.Y36(de.Z),e.Y36(u.P),e.Y36(ce.j),e.Y36(at.F),e.Y36(v.p4))},n.\u0275cmp=e.Xpm({type:n,selectors:[["cd-rbd-list"]],viewQuery:function(t,o){if(1&t&&(e.Gf(W.a,7),e.Gf(X_,5),e.Gf(Q_,7),e.Gf(z_,5),e.Gf(J_,7),e.Gf(Y_,7),e.Gf(V_,7),e.Gf(U_,7),e.Gf(j_,7),e.Gf(W_,7)),2&t){let i;e.iGM(i=e.CRH())&&(o.table=i.first),e.iGM(i=e.CRH())&&(o.usageTpl=i.first),e.iGM(i=e.CRH())&&(o.parentTpl=i.first),e.iGM(i=e.CRH())&&(o.nameTpl=i.first),e.iGM(i=e.CRH())&&(o.mirroringTpl=i.first),e.iGM(i=e.CRH())&&(o.flattenTpl=i.first),e.iGM(i=e.CRH())&&(o.deleteTpl=i.first),e.iGM(i=e.CRH())&&(o.removingStatTpl=i.first),e.iGM(i=e.CRH())&&(o.provisionedNotAvailableTooltipTpl=i.first),e.iGM(i=e.CRH())&&(o.totalProvisionedNotAvailableTooltipTpl=i.first)}},features:[e._Bn([ce.j,{provide:at.F,useValue:new at.F("block/rbd")}]),e.qOj],decls:21,vars:13,consts:function(){let s,t,o,i,_,r,c,d,g;return s="N/A",t="" + "\ufffd0\ufffd" + "",o="N/A",i="" + "\ufffd0\ufffd" + "",_="primary",r="secondary",c="Deleting this image will also delete all its snapshots.",d="The following snapshots are currently protected and will be removed:",g="RBD in status 'Removing'",[["columnMode","flex","identifier","unique_id","forceIdentifier","true","selectionType","single",3,"data","columns","searchableObjects","serverSide","count","hasDetails","status","maxLimit","autoReload","fetchData","setExpandedRow","updateSelection"],["table",""],[1,"table-actions",3,"permission","selection","tableActions"],["cdTableDetail","",3,"selection"],["scheduleStatus",""],["provisionedNotAvailableTooltipTpl",""],["totalProvisionedNotAvailableTooltipTpl",""],["parentTpl",""],["mirroringTpl",""],["flattenTpl",""],["deleteTpl",""],["removingStatTpl",""],[3,"innerHtml"],["placement","top",3,"ngbTooltip",4,"ngIf","ngIfElse"],["provisioned",""],["placement","top",3,"ngbTooltip"],s,t,["totalProvisioned",""],o,i,[4,"ngIf"],["class","badge badge-info",4,"ngIf","ngIfElse"],["class","badge badge-info",3,"ngbTooltip",4,"ngIf"],["class","badge badge-info",4,"ngIf"],["probb",""],[1,"badge","badge-info"],[1,"badge","badge-info",3,"ngbTooltip"],_,r,["class","alert alert-warning","role","alert",4,"ngIf"],["role","alert",1,"alert","alert-warning"],c,d,[4,"ngFor","ngForOf"],[3,"ngClass",4,"ngIf"],[3,"ngClass"],["title",g,3,"class",4,"ngIf"],["title",g]]},template:function(t,o){1&t&&(e._UZ(0,"cd-rbd-tabs"),e.TgZ(1,"cd-table",0,1),e.NdJ("fetchData",function(_){return o.taskListService.fetch(_)})("setExpandedRow",function(_){return o.setExpandedRow(_)})("updateSelection",function(_){return o.updateSelection(_)}),e._UZ(3,"cd-table-actions",2),e._UZ(4,"cd-rbd-details",3),e.qZA(),e.YNc(5,ea,1,1,"ng-template",null,4,e.W1O),e.YNc(7,na,3,2,"ng-template",null,5,e.W1O),e.YNc(9,_a,3,2,"ng-template",null,6,e.W1O),e.YNc(11,ca,2,2,"ng-template",null,7,e.W1O),e.YNc(13,Ta,7,5,"ng-template",null,8,e.W1O),e.YNc(15,fa,13,3,"ng-template",null,9,e.W1O),e.YNc(17,Ra,1,1,"ng-template",null,10,e.W1O),e.YNc(19,Pa,5,5,"ng-template",null,11,e.W1O)),2&t&&(e.xp6(1),e.Q6J("data",o.images)("columns",o.columns)("searchableObjects",!0)("serverSide",!0)("count",o.count)("hasDetails",!0)("status",o.tableStatus)("maxLimit",25)("autoReload",-1),e.xp6(2),e.Q6J("permission",o.permission)("selection",o.selection)("tableActions",o.tableActions),e.xp6(1),e.Q6J("selection",o.expandedRow))},directives:[We,W.a,Ee.K,K_,l.O5,N._L,l.sg,l.mk],pipes:[Le.$,Ze.N],styles:[".warn[_ngcontent-%COMP%]{color:#ffc200}"]}),n})();function Na(n,s){1&n&&e._UZ(0,"input",19)}function Fa(n,s){1&n&&(e.TgZ(0,"option",23),e.SDv(1,24),e.qZA()),2&n&&e.Q6J("ngValue",null)}function Da(n,s){1&n&&(e.TgZ(0,"option",23),e.SDv(1,25),e.qZA()),2&n&&e.Q6J("ngValue",null)}function va(n,s){1&n&&(e.TgZ(0,"option",23),e.SDv(1,26),e.qZA()),2&n&&e.Q6J("ngValue",null)}function La(n,s){if(1&n&&(e.TgZ(0,"option",27),e._uU(1),e.qZA()),2&n){const t=s.$implicit;e.Q6J("value",t.pool_name),e.xp6(1),e.Oqu(t.pool_name)}}function $a(n,s){if(1&n&&(e.TgZ(0,"select",20),e.YNc(1,Fa,2,1,"option",21),e.YNc(2,Da,2,1,"option",21),e.YNc(3,va,2,1,"option",21),e.YNc(4,La,2,2,"option",22),e.qZA()),2&n){const t=e.oxw();e.xp6(1),e.Q6J("ngIf",null===t.pools),e.xp6(1),e.Q6J("ngIf",null!==t.pools&&0===t.pools.length),e.xp6(1),e.Q6J("ngIf",null!==t.pools&&t.pools.length>0),e.xp6(1),e.Q6J("ngForOf",t.pools)}}function Za(n,s){1&n&&(e.TgZ(0,"span",28),e.SDv(1,29),e.qZA())}function Ba(n,s){1&n&&(e.TgZ(0,"span",28),e.SDv(1,30),e.qZA())}function Ga(n,s){1&n&&(e.TgZ(0,"span",28),e.SDv(1,31),e.qZA())}let xa=(()=>{class n{constructor(t,o,i,_,r,c){this.activeModal=t,this.actionLabels=o,this.authStorageService=i,this.notificationService=_,this.poolService=r,this.rbdService=c,this.pools=null,this.editing=!1,this.poolPermission=this.authStorageService.getPermissions().pool,this.createForm()}createForm(){this.namespaceForm=new y.d({pool:new a.NI(""),namespace:new a.NI("")},this.validator(),this.asyncValidator())}validator(){return t=>{const o=t.get("pool"),i=t.get("namespace");let _=null;o.value||(_={required:!0}),o.setErrors(_);let r=null;return i.value||(r={required:!0}),i.setErrors(r),null}}asyncValidator(){return t=>new Promise(o=>{const i=t.get("pool"),_=t.get("namespace");this.rbdService.listNamespaces(i.value).subscribe(r=>{if(r.some(c=>c.namespace===_.value)){const c={namespaceExists:!0};_.setErrors(c),o(c)}else o(null)})})}ngOnInit(){this.onSubmit=new vt.xQ,this.poolPermission.read&&this.poolService.list(["pool_name","type","application_metadata"]).then(t=>{const o=[];for(const i of t)this.rbdService.isRBDPool(i)&&"replicated"===i.type&&o.push(i);if(this.pools=o,1===this.pools.length){const i=this.pools[0].pool_name;this.namespaceForm.get("pool").setValue(i)}})}submit(){const t=this.namespaceForm.getValue("pool"),o=this.namespaceForm.getValue("namespace"),i=new R.R;i.name="rbd/namespace/create",i.metadata={pool:t,namespace:o},this.rbdService.createNamespace(t,o).toPromise().then(()=>{this.notificationService.show(tt.k.success,"Created namespace '" + t + "/" + o + "'"),this.activeModal.close(),this.onSubmit.next()}).catch(()=>{this.namespaceForm.setErrors({cdSubmitButton:!0})})}}return n.\u0275fac=function(t){return new(t||n)(e.Y36(N.Kz),e.Y36(v.p4),e.Y36(oe.j),e.Y36(ve.g),e.Y36(Ve.q),e.Y36(q))},n.\u0275cmp=e.Xpm({type:n,selectors:[["cd-rbd-namespace-form-modal"]],decls:23,vars:9,consts:function(){let s,t,o,i,_,r,c,d,g;return s="Create Namespace",t="Pool",o="Name",i="Loading...",_="-- No rbd pools available --",r="-- Select a pool --",c="This field is required.",d="This field is required.",g="Namespace already exists.",[[3,"modalRef"],[1,"modal-title"],s,[1,"modal-content"],["name","namespaceForm","novalidate","",3,"formGroup"],["formDir","ngForm"],[1,"modal-body"],[1,"form-group","row"],["for","pool",1,"cd-col-form-label","required"],t,[1,"cd-col-form-input"],["class","form-control","type","text","placeholder","Pool name...","id","pool","name","pool","formControlName","pool",4,"ngIf"],["id","pool","name","pool","class","form-control","formControlName","pool",4,"ngIf"],["class","invalid-feedback",4,"ngIf"],["for","namespace",1,"cd-col-form-label","required"],o,["type","text","placeholder","Namespace name...","id","namespace","name","namespace","formControlName","namespace","autofocus","",1,"form-control"],[1,"modal-footer"],[3,"form","submitText","submitActionEvent"],["type","text","placeholder","Pool name...","id","pool","name","pool","formControlName","pool",1,"form-control"],["id","pool","name","pool","formControlName","pool",1,"form-control"],[3,"ngValue",4,"ngIf"],[3,"value",4,"ngFor","ngForOf"],[3,"ngValue"],i,_,r,[3,"value"],[1,"invalid-feedback"],c,d,g]},template:function(t,o){if(1&t&&(e.TgZ(0,"cd-modal",0),e.ynx(1,1),e.SDv(2,2),e.BQk(),e.ynx(3,3),e.TgZ(4,"form",4,5),e.TgZ(6,"div",6),e.TgZ(7,"div",7),e.TgZ(8,"label",8),e.SDv(9,9),e.qZA(),e.TgZ(10,"div",10),e.YNc(11,Na,1,0,"input",11),e.YNc(12,$a,5,4,"select",12),e.YNc(13,Za,2,0,"span",13),e.qZA(),e.qZA(),e.TgZ(14,"div",7),e.TgZ(15,"label",14),e.SDv(16,15),e.qZA(),e.TgZ(17,"div",10),e._UZ(18,"input",16),e.YNc(19,Ba,2,0,"span",13),e.YNc(20,Ga,2,0,"span",13),e.qZA(),e.qZA(),e.qZA(),e.TgZ(21,"div",17),e.TgZ(22,"cd-form-button-panel",18),e.NdJ("submitActionEvent",function(){return o.submit()}),e.qZA(),e.qZA(),e.qZA(),e.BQk(),e.qZA()),2&t){const i=e.MAs(5);e.Q6J("modalRef",o.activeModal),e.xp6(4),e.Q6J("formGroup",o.namespaceForm),e.xp6(7),e.Q6J("ngIf",!o.poolPermission.read),e.xp6(1),e.Q6J("ngIf",o.poolPermission.read),e.xp6(1),e.Q6J("ngIf",o.namespaceForm.showError("pool",i,"required")),e.xp6(6),e.Q6J("ngIf",o.namespaceForm.showError("namespace",i,"required")),e.xp6(1),e.Q6J("ngIf",o.namespaceForm.showError("namespace",i,"namespaceExists")),e.xp6(2),e.Q6J("form",o.namespaceForm)("submitText",o.actionLabels.CREATE)}},directives:[C.z,a._Y,a.JL,a.sg,h.V,O.P,l.O5,$.o,a.Fj,k.b,a.JJ,a.u,Re.U,j.p,a.EJ,l.sg,a.YN,a.Kr],styles:[""]}),n})(),ya=(()=>{class n{constructor(t,o,i,_,r,c){this.authStorageService=t,this.rbdService=o,this.poolService=i,this.modalService=_,this.notificationService=r,this.actionLabels=c,this.selection=new Se.r,this.permission=this.authStorageService.getPermissions().rbdImage,this.tableActions=[{permission:"create",icon:T.P.add,click:()=>this.createModal(),name:this.actionLabels.CREATE},{permission:"delete",icon:T.P.destroy,click:()=>this.deleteModal(),name:this.actionLabels.DELETE,disable:()=>this.getDeleteDisableDesc()}]}ngOnInit(){this.columns=[{name:"Namespace",prop:"namespace",flexGrow:1},{name:"Pool",prop:"pool",flexGrow:1},{name:"Total images",prop:"num_images",flexGrow:1}],this.refresh()}refresh(){this.poolService.list(["pool_name","type","application_metadata"]).then(t=>{t=t.filter(i=>this.rbdService.isRBDPool(i)&&"replicated"===i.type);const o=[];t.forEach(i=>{o.push(this.rbdService.listNamespaces(i.pool_name))}),o.length>0?(0,le.D)(o).subscribe(i=>{const _=[];for(let r=0;r{_.push({id:`${d}/${g.namespace}`,pool:d,namespace:g.namespace,num_images:g.num_images})})}this.namespaces=_}):this.namespaces=[]})}updateSelection(t){this.selection=t}createModal(){this.modalRef=this.modalService.show(xa),this.modalRef.componentInstance.onSubmit.subscribe(()=>{this.refresh()})}deleteModal(){const t=this.selection.first().pool,o=this.selection.first().namespace;this.modalRef=this.modalService.show(pe.M,{itemDescription:"Namespace",itemNames:[`${t}/${o}`],submitAction:()=>this.rbdService.deleteNamespace(t,o).subscribe(()=>{this.notificationService.show(tt.k.success,"Deleted namespace '" + t + "/" + o + "'"),this.modalRef.close(),this.refresh()},()=>{this.modalRef.componentInstance.stopLoadingSpinner()})})}getDeleteDisableDesc(){var t;const o=this.selection.first();return(null==o?void 0:o.num_images)>0?"Namespace contains images":!(null===(t=this.selection)||void 0===t?void 0:t.first())}}return n.\u0275fac=function(t){return new(t||n)(e.Y36(oe.j),e.Y36(q),e.Y36(Ve.q),e.Y36(de.Z),e.Y36(ve.g),e.Y36(v.p4))},n.\u0275cmp=e.Xpm({type:n,selectors:[["cd-rbd-namespace-list"]],features:[e._Bn([ce.j])],decls:4,vars:5,consts:[["columnMode","flex","identifier","id","forceIdentifier","true","selectionType","single",3,"data","columns","fetchData","updateSelection"],[1,"table-actions","btn-toolbar"],[1,"btn-group",3,"permission","selection","tableActions"]],template:function(t,o){1&t&&(e._UZ(0,"cd-rbd-tabs"),e.TgZ(1,"cd-table",0),e.NdJ("fetchData",function(){return o.refresh()})("updateSelection",function(_){return o.updateSelection(_)}),e.TgZ(2,"div",1),e._UZ(3,"cd-table-actions",2),e.qZA(),e.qZA()),2&t&&(e.xp6(1),e.Q6J("data",o.namespaces)("columns",o.columns),e.xp6(2),e.Q6J("permission",o.permission)("selection",o.selection)("tableActions",o.tableActions))},directives:[We,W.a,Ee.K],styles:[""]}),n})(),wa=(()=>{class n{}return n.\u0275fac=function(t){return new(t||n)},n.\u0275cmp=e.Xpm({type:n,selectors:[["cd-rbd-performance"]],decls:2,vars:1,consts:[["uid","41FrpeUiz","grafanaStyle","two",3,"grafanaPath"]],template:function(t,o){1&t&&(e._UZ(0,"cd-rbd-tabs"),e._UZ(1,"cd-grafana",0)),2&t&&(e.xp6(1),e.Q6J("grafanaPath","rbd-overview?"))},directives:[We,Lt.F],styles:[""]}),n})();var qa=p(91801);function Ha(n,s){1&n&&e._UZ(0,"input",15)}function ka(n,s){if(1&n&&(e.TgZ(0,"option",20),e._uU(1),e.qZA()),2&n){const t=s.$implicit;e.Q6J("value",t),e.xp6(1),e.Oqu(t)}}function Ka(n,s){if(1&n&&(e.TgZ(0,"select",16),e.TgZ(1,"option",17),e.SDv(2,18),e.qZA(),e.YNc(3,ka,2,2,"option",19),e.qZA()),2&n){const t=e.oxw();e.xp6(3),e.Q6J("ngForOf",t.pools)}}let Xa=(()=>{class n{constructor(t,o,i,_,r,c,d){this.authStorageService=t,this.rbdService=o,this.activeModal=i,this.actionLabels=_,this.fb=r,this.poolService=c,this.taskWrapper=d,this.poolPermission=this.authStorageService.getPermissions().pool}createForm(){this.purgeForm=this.fb.group({poolName:""})}ngOnInit(){this.poolPermission.read&&this.poolService.list(["pool_name","application_metadata"]).then(t=>{this.pools=t.filter(o=>o.application_metadata.includes("rbd")).map(o=>o.pool_name)}),this.createForm()}purge(){const t=this.purgeForm.getValue("poolName")||"";this.taskWrapper.wrapTaskAroundCall({task:new R.R("rbd/trash/purge",{pool_name:t}),call:this.rbdService.purgeTrash(t)}).subscribe({error:()=>{this.purgeForm.setErrors({cdSubmitButton:!0})},complete:()=>{this.activeModal.close()}})}}return n.\u0275fac=function(t){return new(t||n)(e.Y36(oe.j),e.Y36(q),e.Y36(N.Kz),e.Y36(v.p4),e.Y36(rt.O),e.Y36(Ve.q),e.Y36(u.P))},n.\u0275cmp=e.Xpm({type:n,selectors:[["cd-rbd-trash-purge-modal"]],decls:18,vars:6,consts:function(){let s,t,o,i,_;return s="Purge Trash",t="To purge, select\xA0 " + "[\ufffd#9\ufffd|\ufffd#10\ufffd]" + "All" + "[\ufffd/#9\ufffd|\ufffd/#10\ufffd]" + "\xA0 or one pool and click\xA0 " + "[\ufffd#9\ufffd|\ufffd#10\ufffd]" + "Purge" + "[\ufffd/#9\ufffd|\ufffd/#10\ufffd]" + ".\xA0",t=e.Zx4(t),o="Pool:",i="Pool name...",_="All",[[3,"modalRef"],[1,"modal-title"],s,[1,"modal-content"],["name","purgeForm","novalidate","",1,"form",3,"formGroup"],["formDir","ngForm"],[1,"modal-body"],t,[1,"form-group"],[1,"col-form-label","mx-auto"],o,["class","form-control","type","text","placeholder",i,"formControlName","poolName",4,"ngIf"],["id","poolName","name","poolName","class","form-control","formControlName","poolName",4,"ngIf"],[1,"modal-footer"],[3,"form","submitText","submitActionEvent"],["type","text","placeholder",i,"formControlName","poolName",1,"form-control"],["id","poolName","name","poolName","formControlName","poolName",1,"form-control"],["value",""],_,[3,"value",4,"ngFor","ngForOf"],[3,"value"]]},template:function(t,o){1&t&&(e.TgZ(0,"cd-modal",0),e.ynx(1,1),e.SDv(2,2),e.BQk(),e.ynx(3,3),e.TgZ(4,"form",4,5),e.TgZ(6,"div",6),e.TgZ(7,"p"),e.tHW(8,7),e._UZ(9,"kbd"),e._UZ(10,"kbd"),e.N_p(),e.qZA(),e.TgZ(11,"div",8),e.TgZ(12,"label",9),e.SDv(13,10),e.qZA(),e.YNc(14,Ha,1,0,"input",11),e.YNc(15,Ka,4,1,"select",12),e.qZA(),e.qZA(),e.TgZ(16,"div",13),e.TgZ(17,"cd-form-button-panel",14),e.NdJ("submitActionEvent",function(){return o.purge()}),e.qZA(),e.qZA(),e.qZA(),e.BQk(),e.qZA()),2&t&&(e.Q6J("modalRef",o.activeModal),e.xp6(4),e.Q6J("formGroup",o.purgeForm),e.xp6(10),e.Q6J("ngIf",!o.poolPermission.read),e.xp6(1),e.Q6J("ngIf",o.poolPermission.read),e.xp6(2),e.Q6J("form",o.purgeForm)("submitText",o.actionLabels.PURGE))},directives:[C.z,a._Y,a.JL,a.sg,h.V,O.P,l.O5,j.p,$.o,a.Fj,k.b,a.JJ,a.u,a.EJ,a.YN,a.Kr,l.sg],styles:[""]}),n})();function Qa(n,s){1&n&&(e.TgZ(0,"span",15),e.SDv(1,16),e.qZA())}let za=(()=>{class n{constructor(t,o,i,_,r){this.rbdService=t,this.activeModal=o,this.actionLabels=i,this.fb=_,this.taskWrapper=r}ngOnInit(){this.imageSpec=new L.N(this.poolName,this.namespace,this.imageName).toString(),this.restoreForm=this.fb.group({name:this.imageName})}restore(){const t=this.restoreForm.getValue("name"),o=new L.N(this.poolName,this.namespace,this.imageId);this.taskWrapper.wrapTaskAroundCall({task:new R.R("rbd/trash/restore",{image_id_spec:o.toString(),new_image_name:t}),call:this.rbdService.restoreTrash(o,t)}).subscribe({error:()=>{this.restoreForm.setErrors({cdSubmitButton:!0})},complete:()=>{this.activeModal.close()}})}}return n.\u0275fac=function(t){return new(t||n)(e.Y36(q),e.Y36(N.Kz),e.Y36(v.p4),e.Y36(rt.O),e.Y36(u.P))},n.\u0275cmp=e.Xpm({type:n,selectors:[["cd-rbd-trash-restore-modal"]],decls:18,vars:7,consts:function(){let s,t,o,i;return s="Restore Image",t="To restore\xA0 " + "[\ufffd#9\ufffd|\ufffd#10\ufffd]" + "" + "\ufffd0\ufffd" + "@" + "\ufffd1\ufffd" + "" + "[\ufffd/#9\ufffd|\ufffd/#10\ufffd]" + ",\xA0 type the image's new name and click\xA0 " + "[\ufffd#9\ufffd|\ufffd#10\ufffd]" + "Restore" + "[\ufffd/#9\ufffd|\ufffd/#10\ufffd]" + ".",t=e.Zx4(t),o="New Name",i="This field is required.",[[3,"modalRef"],[1,"modal-title"],s,[1,"modal-content"],["name","restoreForm","novalidate","",1,"form",3,"formGroup"],["formDir","ngForm"],[1,"modal-body"],t,[1,"form-group"],["for","name",1,"col-form-label"],o,["type","text","name","name","id","name","autocomplete","off","formControlName","name","autofocus","",1,"form-control"],["class","invalid-feedback",4,"ngIf"],[1,"modal-footer"],[3,"form","submitText","submitActionEvent"],[1,"invalid-feedback"],i]},template:function(t,o){if(1&t&&(e.TgZ(0,"cd-modal",0),e.ynx(1,1),e.SDv(2,2),e.BQk(),e.ynx(3,3),e.TgZ(4,"form",4,5),e.TgZ(6,"div",6),e.TgZ(7,"p"),e.tHW(8,7),e._UZ(9,"kbd"),e._UZ(10,"kbd"),e.N_p(),e.qZA(),e.TgZ(11,"div",8),e.TgZ(12,"label",9),e.SDv(13,10),e.qZA(),e._UZ(14,"input",11),e.YNc(15,Qa,2,0,"span",12),e.qZA(),e.qZA(),e.TgZ(16,"div",13),e.TgZ(17,"cd-form-button-panel",14),e.NdJ("submitActionEvent",function(){return o.restore()}),e.qZA(),e.qZA(),e.qZA(),e.BQk(),e.qZA()),2&t){const i=e.MAs(5);e.Q6J("modalRef",o.activeModal),e.xp6(4),e.Q6J("formGroup",o.restoreForm),e.xp6(6),e.pQV(o.imageSpec)(o.imageId),e.QtT(8),e.xp6(5),e.Q6J("ngIf",o.restoreForm.showError("name",i,"required")),e.xp6(2),e.Q6J("form",o.restoreForm)("submitText",o.actionLabels.RESTORE)}},directives:[C.z,a._Y,a.JL,a.sg,h.V,O.P,$.o,a.Fj,k.b,a.JJ,a.u,Re.U,l.O5,j.p],styles:[""]}),n})();const Ja=["expiresTpl"],Ya=["deleteTpl"],Va=function(n){return[n]};function Ua(n,s){if(1&n){const t=e.EpF();e.TgZ(0,"button",6),e.NdJ("click",function(){return e.CHM(t),e.oxw().purgeModal()}),e._UZ(1,"i",7),e.ynx(2),e.SDv(3,8),e.BQk(),e.qZA()}if(2&n){const t=e.oxw();e.Q6J("disabled",t.disablePurgeBtn),e.xp6(1),e.Q6J("ngClass",e.VKq(2,Va,t.icons.destroy))}}function ja(n,s){1&n&&(e.ynx(0),e.SDv(1,10),e.BQk())}function Wa(n,s){1&n&&(e.ynx(0),e.SDv(1,11),e.BQk())}function er(n,s){if(1&n&&(e.YNc(0,ja,2,0,"ng-container",9),e.YNc(1,Wa,2,0,"ng-container",9),e._uU(2),e.ALo(3,"cdDate")),2&n){const t=s.row,o=s.value;e.Q6J("ngIf",t.cdIsExpired),e.xp6(1),e.Q6J("ngIf",!t.cdIsExpired),e.xp6(1),e.hij(" ",e.lcZ(3,3,o),"\n")}}function tr(n,s){if(1&n&&(e.TgZ(0,"p",13),e.TgZ(1,"strong"),e.ynx(2),e.SDv(3,14),e.ALo(4,"cdDate"),e.BQk(),e.qZA(),e.qZA()),2&n){const t=e.oxw().expiresAt;e.xp6(4),e.pQV(e.lcZ(4,1,t)),e.QtT(3)}}function or(n,s){1&n&&e.YNc(0,tr,5,3,"p",12),2&n&&e.Q6J("ngIf",!s.isExpired)}let nr=(()=>{class n{constructor(t,o,i,_,r,c,d){this.authStorageService=t,this.rbdService=o,this.modalService=i,this.cdDatePipe=_,this.taskListService=r,this.taskWrapper=c,this.actionLabels=d,this.icons=T.P,this.executingTasks=[],this.selection=new Se.r,this.tableStatus=new se.E,this.disablePurgeBtn=!0,this.permission=this.authStorageService.getPermissions().rbdImage,this.tableActions=[{permission:"update",icon:T.P.undo,click:()=>this.restoreModal(),name:this.actionLabels.RESTORE},{permission:"delete",icon:T.P.destroy,click:()=>this.deleteModal(),name:this.actionLabels.DELETE}]}ngOnInit(){this.columns=[{name:"ID",prop:"id",flexGrow:1,cellTransformation:De.e.executing},{name:"Name",prop:"name",flexGrow:1},{name:"Pool",prop:"pool_name",flexGrow:1},{name:"Namespace",prop:"namespace",flexGrow:1},{name:"Status",prop:"deferment_end_time",flexGrow:1,cellTemplate:this.expiresTpl},{name:"Deleted At",prop:"deletion_time",flexGrow:1,pipe:this.cdDatePipe}],this.taskListService.init(()=>this.rbdService.listTrash(),i=>this.prepareResponse(i),i=>this.images=i,()=>this.onFetchError(),i=>["rbd/trash/remove","rbd/trash/restore"].includes(i.name),(i,_)=>new L.N(i.pool_name,i.namespace,i.id).toString()===_.metadata.image_id_spec,void 0)}prepareResponse(t){let o=[];const i={};let _;if(t.forEach(r=>{S().isUndefined(i[r.status])&&(i[r.status]=[]),i[r.status].push(r.pool_name),o=o.concat(r.value),this.disablePurgeBtn=!o.length}),i[3]?_=3:i[1]?_=1:i[2]&&(_=2),_){const r=(i[_].length>1?"pools ":"pool ")+i[_].join();this.tableStatus=new se.E(_,r)}else this.tableStatus=new se.E;return o.forEach(r=>{r.cdIsExpired=Me()().isAfter(r.deferment_end_time)}),o}onFetchError(){this.table.reset(),this.tableStatus=new se.E(qa.T.ValueException)}updateSelection(t){this.selection=t}restoreModal(){const t={poolName:this.selection.first().pool_name,namespace:this.selection.first().namespace,imageName:this.selection.first().name,imageId:this.selection.first().id};this.modalRef=this.modalService.show(za,t)}deleteModal(){const t=this.selection.first().pool_name,o=this.selection.first().namespace,i=this.selection.first().id,_=this.selection.first().deferment_end_time,r=Me()().isAfter(_),c=new L.N(t,o,i);this.modalRef=this.modalService.show(pe.M,{itemDescription:"RBD",itemNames:[c],bodyTemplate:this.deleteTpl,bodyContext:{expiresAt:_,isExpired:r},submitActionObservable:()=>this.taskWrapper.wrapTaskAroundCall({task:new R.R("rbd/trash/remove",{image_id_spec:c.toString()}),call:this.rbdService.removeTrash(c,!0)})})}purgeModal(){this.modalService.show(Xa)}}return n.\u0275fac=function(t){return new(t||n)(e.Y36(oe.j),e.Y36(q),e.Y36(de.Z),e.Y36(Ze.N),e.Y36(ce.j),e.Y36(u.P),e.Y36(v.p4))},n.\u0275cmp=e.Xpm({type:n,selectors:[["cd-rbd-trash-list"]],viewQuery:function(t,o){if(1&t&&(e.Gf(W.a,7),e.Gf(Ja,7),e.Gf(Ya,7)),2&t){let i;e.iGM(i=e.CRH())&&(o.table=i.first),e.iGM(i=e.CRH())&&(o.expiresTpl=i.first),e.iGM(i=e.CRH())&&(o.deleteTpl=i.first)}},features:[e._Bn([ce.j])],decls:9,vars:8,consts:function(){let s,t,o,i;return s="Purge Trash",t="Expired at",o="Protected until",i="This image is protected until " + "\ufffd0\ufffd" + ".",[["columnMode","flex","identifier","id","forceIdentifier","true","selectionType","single",3,"data","columns","status","autoReload","fetchData","updateSelection"],[1,"table-actions","btn-toolbar"],[1,"btn-group",3,"permission","selection","tableActions"],["class","btn btn-light","type","button",3,"disabled","click",4,"ngIf"],["expiresTpl",""],["deleteTpl",""],["type","button",1,"btn","btn-light",3,"disabled","click"],["aria-hidden","true",3,"ngClass"],s,[4,"ngIf"],t,o,["class","text-danger",4,"ngIf"],[1,"text-danger"],i]},template:function(t,o){1&t&&(e._UZ(0,"cd-rbd-tabs"),e.TgZ(1,"cd-table",0),e.NdJ("fetchData",function(){return o.taskListService.fetch()})("updateSelection",function(_){return o.updateSelection(_)}),e.TgZ(2,"div",1),e._UZ(3,"cd-table-actions",2),e.YNc(4,Ua,4,4,"button",3),e.qZA(),e.qZA(),e.YNc(5,er,4,5,"ng-template",null,4,e.W1O),e.YNc(7,or,1,1,"ng-template",null,5,e.W1O)),2&t&&(e.xp6(1),e.Q6J("data",o.images)("columns",o.columns)("status",o.tableStatus)("autoReload",-1),e.xp6(2),e.Q6J("permission",o.permission)("selection",o.selection)("tableActions",o.tableActions),e.xp6(1),e.Q6J("ngIf",o.permission.delete))},directives:[We,W.a,Ee.K,l.O5,$.o,l.mk],pipes:[Ze.N],styles:[""]}),n})(),$t=(()=>{class n{}return n.\u0275fac=function(t){return new(t||n)},n.\u0275mod=e.oAB({type:n}),n.\u0275inj=e.cJS({imports:[[l.ez,ni,a.u5,a.UX,N.Oz,N.dT,N.HK,Ie.b,Ae.m,m.Bz,ne.xc]]}),n})();const ir=[{path:"",redirectTo:"rbd",pathMatch:"full"},{path:"rbd",canActivate:[U.T,re.P],data:{moduleStatusGuardConfig:{uiApiPath:"block/rbd",redirectTo:"error",header:"No RBD pools available",button_name:"Create RBD pool",button_route:"/pool/create"},breadcrumbs:"Images"},children:[{path:"",component:ba},{path:"namespaces",component:ya,data:{breadcrumbs:"Namespaces"}},{path:"trash",component:nr,data:{breadcrumbs:"Trash"}},{path:"performance",component:wa,data:{breadcrumbs:"Overall Performance"}},{path:v.MQ.CREATE,component:$e,data:{breadcrumbs:v.Qn.CREATE}},{path:`${v.MQ.EDIT}/:image_spec`,component:$e,data:{breadcrumbs:v.Qn.EDIT}},{path:`${v.MQ.CLONE}/:image_spec/:snap`,component:$e,data:{breadcrumbs:v.Qn.CLONE}},{path:`${v.MQ.COPY}/:image_spec`,component:$e,data:{breadcrumbs:v.Qn.COPY}},{path:`${v.MQ.COPY}/:image_spec/:snap`,component:$e,data:{breadcrumbs:v.Qn.COPY}}]},{path:"mirroring",component:Vi,canActivate:[U.T,re.P],data:{moduleStatusGuardConfig:{uiApiPath:"block/mirroring",redirectTo:"error",header:"RBD mirroring is not configured",button_name:"Configure RBD Mirroring",button_title:"This will create rbd-mirror service and a replicated RBD pool",component:"RBD Mirroring",uiConfig:!0},breadcrumbs:"Mirroring"},children:[{path:`${v.MQ.EDIT}/:pool_name`,component:es,outlet:"modal"}]},{path:"iscsi",canActivate:[U.T],data:{breadcrumbs:"iSCSI"},children:[{path:"",redirectTo:"overview",pathMatch:"full"},{path:"overview",component:oi,data:{breadcrumbs:"Overview"}},{path:"targets",data:{breadcrumbs:"Targets"},children:[{path:"",component:qn},{path:v.MQ.CREATE,component:ut,data:{breadcrumbs:v.Qn.CREATE}},{path:`${v.MQ.EDIT}/:target_iqn`,component:ut,data:{breadcrumbs:v.Qn.EDIT}}]}]}];let sr=(()=>{class n{}return n.\u0275fac=function(t){return new(t||n)},n.\u0275mod=e.oAB({type:n}),n.\u0275inj=e.cJS({imports:[[$t,m.Bz.forChild(ir)]]}),n})()},54555:(ct,Oe,p)=>{p.d(Oe,{d:()=>z});var l=p(74788),a=p(24751),m=p(23815),ne=p.n(m),N=p(80226),Ie=p(65862),v=p(95463),U=p(30633),re=p(28211),Ae=p(34089),be=p(41582),S=p(12057),le=p(56310),D=p(18372),ie=p(87925),V=p(94276);let e=(()=>{class A{constructor(u,C){this.control=u,this.formatter=C}setValue(u){const C=this.formatter.toMilliseconds(u);this.control.control.setValue(`${C} ms`)}ngOnInit(){this.setValue(this.control.value),this.ngDataReady&&this.ngDataReady.subscribe(()=>this.setValue(this.control.value))}onUpdate(u){this.setValue(u)}}return A.\u0275fac=function(u){return new(u||A)(l.Y36(a.a5),l.Y36(re.H))},A.\u0275dir=l.lG2({type:A,selectors:[["","cdMilliseconds",""]],hostBindings:function(u,C){1&u&&l.NdJ("blur",function(O){return C.onUpdate(O.target.value)})},inputs:{ngDataReady:"ngDataReady"}}),A})();var X=p(20044);let Ne=(()=>{class A{constructor(u,C,h,O){this.elementRef=u,this.control=C,this.dimlessBinaryPerSecondPipe=h,this.formatter=O,this.ngModelChange=new l.vpe,this.el=this.elementRef.nativeElement}ngOnInit(){this.setValue(this.el.value),this.ngDataReady&&this.ngDataReady.subscribe(()=>this.setValue(this.el.value))}setValue(u){/^[\d.]+$/.test(u)&&(u+=this.defaultUnit||"m");const C=this.formatter.toBytes(u,0),h=this.round(C);this.el.value=this.dimlessBinaryPerSecondPipe.transform(h),null!==C?(this.ngModelChange.emit(this.el.value),this.control.control.setValue(this.el.value)):(this.ngModelChange.emit(null),this.control.control.setValue(null))}round(u){if(null!==u&&0!==u){if(!ne().isUndefined(this.minBytes)&&uthis.maxBytes)return this.maxBytes;if(!ne().isUndefined(this.roundPower)){const C=Math.round(Math.log(u)/Math.log(this.roundPower));return Math.pow(this.roundPower,C)}}return u}onBlur(u){this.setValue(u)}}return A.\u0275fac=function(u){return new(u||A)(l.Y36(l.SBq),l.Y36(a.a5),l.Y36(X.O),l.Y36(re.H))},A.\u0275dir=l.lG2({type:A,selectors:[["","cdDimlessBinaryPerSecond",""]],hostBindings:function(u,C){1&u&&l.NdJ("blur",function(O){return C.onBlur(O.target.value)})},inputs:{ngDataReady:"ngDataReady",minBytes:"minBytes",maxBytes:"maxBytes",roundPower:"roundPower",defaultUnit:"defaultUnit"},outputs:{ngModelChange:"ngModelChange"}}),A})(),Fe=(()=>{class A{constructor(u,C){this.formatter=u,this.ngControl=C}setValue(u){const C=this.formatter.toIops(u);this.ngControl.control.setValue(`${C} IOPS`)}ngOnInit(){this.setValue(this.ngControl.value),this.ngDataReady&&this.ngDataReady.subscribe(()=>this.setValue(this.ngControl.value))}onUpdate(u){this.setValue(u)}}return A.\u0275fac=function(u){return new(u||A)(l.Y36(re.H),l.Y36(a.a5))},A.\u0275dir=l.lG2({type:A,selectors:[["","cdIops",""]],hostBindings:function(u,C){1&u&&l.NdJ("blur",function(O){return C.onUpdate(O.target.value)})},inputs:{ngDataReady:"ngDataReady"}}),A})();function L(A,R){if(1&A&&(l.ynx(0),l._UZ(1,"input",18),l.BQk()),2&A){const u=l.oxw().$implicit,C=l.oxw(2);l.xp6(1),l.Q6J("id",u.name)("name",u.name)("formControlName",u.name)("ngDataReady",C.ngDataReady)}}function he(A,R){if(1&A&&(l.ynx(0),l._UZ(1,"input",19),l.BQk()),2&A){const u=l.oxw().$implicit,C=l.oxw(2);l.xp6(1),l.Q6J("id",u.name)("name",u.name)("formControlName",u.name)("ngDataReady",C.ngDataReady)}}function q(A,R){if(1&A&&(l.ynx(0),l._UZ(1,"input",20),l.BQk()),2&A){const u=l.oxw().$implicit,C=l.oxw(2);l.xp6(1),l.Q6J("id",u.name)("name",u.name)("formControlName",u.name)("ngDataReady",C.ngDataReady)}}function F(A,R){1&A&&(l.TgZ(0,"span",21),l.SDv(1,22),l.qZA())}const x=function(A){return{active:A}},T=function(A){return[A]};function H(A,R){if(1&A){const u=l.EpF();l.TgZ(0,"div",10),l.TgZ(1,"label",11),l._uU(2),l.TgZ(3,"cd-helper"),l._uU(4),l.qZA(),l.qZA(),l.TgZ(5,"div"),l.TgZ(6,"div",12),l.ynx(7,13),l.YNc(8,L,2,4,"ng-container",14),l.YNc(9,he,2,4,"ng-container",14),l.YNc(10,q,2,4,"ng-container",14),l.BQk(),l.TgZ(11,"span",15),l.TgZ(12,"button",16),l.NdJ("click",function(){const O=l.CHM(u).$implicit;return l.oxw(2).reset(O.name)}),l._UZ(13,"i",7),l.qZA(),l.qZA(),l.qZA(),l.YNc(14,F,2,0,"span",17),l.qZA(),l.qZA()}if(2&A){const u=R.$implicit,C=l.oxw().$implicit,h=l.oxw(),O=l.MAs(1);l.xp6(1),l.Q6J("for",u.name),l.xp6(1),l.Oqu(u.displayName),l.xp6(2),l.Oqu(u.description),l.xp6(1),l.Gre("cd-col-form-input ",C.heading,""),l.xp6(2),l.Q6J("ngSwitch",u.type),l.xp6(1),l.Q6J("ngSwitchCase",h.configurationType.milliseconds),l.xp6(1),l.Q6J("ngSwitchCase",h.configurationType.bps),l.xp6(1),l.Q6J("ngSwitchCase",h.configurationType.iops),l.xp6(2),l.Q6J("ngClass",l.VKq(13,x,h.isDisabled(u.name))),l.xp6(1),l.Q6J("ngClass",l.VKq(15,T,h.icons.erase)),l.xp6(1),l.Q6J("ngIf",h.form.showError("configuration."+u.name,O,"min"))}}function y(A,R){if(1&A){const u=l.EpF();l.TgZ(0,"div",4),l.TgZ(1,"h4",5),l.TgZ(2,"span",6),l.NdJ("click",function(){const O=l.CHM(u).$implicit;return l.oxw().toggleSectionVisibility(O.class)}),l._uU(3),l._UZ(4,"i",7),l.qZA(),l.qZA(),l.TgZ(5,"div",8),l.YNc(6,H,15,17,"div",9),l.qZA(),l.qZA()}if(2&A){const u=R.$implicit,C=l.oxw();l.xp6(3),l.hij(" ",u.heading," "),l.xp6(1),l.Q6J("ngClass",C.sectionVisibility[u.class]?C.icons.minusCircle:C.icons.addCircle),l.xp6(1),l.Tol(u.class),l.Q6J("hidden",!C.sectionVisibility[u.class]),l.xp6(1),l.Q6J("ngForOf",u.options)}}let z=(()=>{class A{constructor(u,C){this.formatterService=u,this.rbdConfigurationService=C,this.initializeData=new N.t(1),this.changes=new l.vpe,this.icons=Ie.P,this.ngDataReady=new l.vpe,this.configurationType=U.r,this.sectionVisibility={}}ngOnInit(){const u=this.createConfigurationFormGroup();this.form.addControl("configuration",u),u.valueChanges.subscribe(()=>{this.changes.emit(this.getDirtyValues.bind(this))}),this.initializeData&&this.initializeData.subscribe(C=>{this.initialData=C.initialData;const h=C.sourceType;this.rbdConfigurationService.getWritableOptionFields().forEach(O=>{const $=C.initialData.filter(k=>k.name===O.name).pop();$&&$.source===h&&this.form.get(`configuration.${O.name}`).setValue($.value)}),this.ngDataReady.emit()}),this.rbdConfigurationService.getWritableSections().forEach(C=>this.sectionVisibility[C.class]=!1)}getDirtyValues(u=!1,C){if(u&&!C)throw new Error("ProgrammingError: If local values shall be included, a proper localFieldType argument has to be provided, too");const h={};return this.rbdConfigurationService.getWritableOptionFields().forEach(O=>{const $=this.form.get("configuration").get(O.name);this.initialData&&this.initialData[O.name]===$.value||($.dirty||u&&$.source===C)&&(h[O.name]=null===$.value?$.value:O.type===U.r.bps?this.formatterService.toBytes($.value):O.type===U.r.milliseconds?this.formatterService.toMilliseconds($.value):O.type===U.r.iops?this.formatterService.toIops($.value):$.value)}),h}createConfigurationFormGroup(){const u=new v.d({});return this.rbdConfigurationService.getWritableOptionFields().forEach(C=>{let h;if(C.type!==U.r.milliseconds&&C.type!==U.r.iops&&C.type!==U.r.bps)throw new Error(`Type ${C.type} is unknown, you may need to add it to RbdConfiguration class`);{let O=0;ne().forEach(this.initialData,$=>{$.name===C.name&&(O=$.value)}),h=new a.NI(O,a.kI.min(0))}u.addControl(C.name,h)}),u}reset(u){const C=this.form.get("configuration").get(u);C.disabled?(C.setValue(C.previousValue||0),C.enable(),C.previousValue||C.markAsPristine()):(C.previousValue=C.value,C.setValue(null),C.markAsDirty(),C.disable())}isDisabled(u){return this.form.get("configuration").get(u).disabled}toggleSectionVisibility(u){this.sectionVisibility[u]=!this.sectionVisibility[u]}}return A.\u0275fac=function(u){return new(u||A)(l.Y36(re.H),l.Y36(Ae.n))},A.\u0275cmp=l.Xpm({type:A,selectors:[["cd-rbd-configuration-form"]],inputs:{form:"form",initializeData:"initializeData"},outputs:{changes:"changes"},decls:5,vars:2,consts:function(){let R,u,C;return R="RBD Configuration",u="Remove the local configuration value. The parent configuration value will be inherited and used instead.",C="The minimum value is 0",[[3,"formGroup"],["cfgFormGroup",""],R,["class","col-12",4,"ngFor","ngForOf"],[1,"col-12"],[1,"cd-header"],[1,"collapsible",3,"click"],["aria-hidden","true",3,"ngClass"],[3,"hidden"],["class","form-group row",4,"ngFor","ngForOf"],[1,"form-group","row"],[1,"cd-col-form-label",3,"for"],[1,"input-group"],[3,"ngSwitch"],[4,"ngSwitchCase"],[1,"input-group-append"],["type","button","data-toggle","button","title",u,1,"btn","btn-light",3,"ngClass","click"],["class","invalid-feedback",4,"ngIf"],["type","text","cdMilliseconds","",1,"form-control",3,"id","name","formControlName","ngDataReady"],["type","text","defaultUnit","b","cdDimlessBinaryPerSecond","",1,"form-control",3,"id","name","formControlName","ngDataReady"],["type","text","cdIops","",1,"form-control",3,"id","name","formControlName","ngDataReady"],[1,"invalid-feedback"],C]},template:function(u,C){1&u&&(l.TgZ(0,"fieldset",0,1),l.TgZ(2,"legend"),l.SDv(3,2),l.qZA(),l.YNc(4,y,7,7,"div",3),l.qZA()),2&u&&(l.Q6J("formGroup",C.form.get("configuration")),l.xp6(4),l.Q6J("ngForOf",C.rbdConfigurationService.sections))},directives:[a.JL,a.sg,be.V,S.sg,S.mk,le.P,D.S,S.RF,S.n9,ie.o,S.O5,a.Fj,V.b,e,a.JJ,a.u,Ne,Fe],styles:[".collapsible[_ngcontent-%COMP%]{cursor:pointer;user-select:none}"]}),A})()},71752:(ct,Oe,p)=>{p.d(Oe,{P:()=>q});var l=p(35905),a=p(30633),m=p(74788);let ne=(()=>{class F{transform(T){return{0:"global",1:"pool",2:"image"}[T]}}return F.\u0275fac=function(T){return new(T||F)},F.\u0275pipe=m.Yjl({name:"rbdConfigurationSource",type:F,pure:!0}),F})();var N=p(28211),Ie=p(34089),v=p(12057),U=p(20044),re=p(48537),Ae=p(21766);const be=["configurationSourceTpl"],S=["configurationValueTpl"],le=["poolConfTable"];function D(F,x){1&F&&(m.TgZ(0,"span"),m.SDv(1,6),m.qZA())}function ie(F,x){1&F&&(m.TgZ(0,"strong"),m.SDv(1,7),m.qZA())}function V(F,x){1&F&&(m.TgZ(0,"strong"),m.SDv(1,8),m.qZA())}function e(F,x){1&F&&(m.TgZ(0,"div",4),m.YNc(1,D,2,0,"span",5),m.YNc(2,ie,2,0,"strong",5),m.YNc(3,V,2,0,"strong",5),m.qZA()),2&F&&(m.Q6J("ngSwitch",x.value),m.xp6(1),m.Q6J("ngSwitchCase","global"),m.xp6(1),m.Q6J("ngSwitchCase","image"),m.xp6(1),m.Q6J("ngSwitchCase","pool"))}function X(F,x){if(1&F&&(m.TgZ(0,"span"),m._uU(1),m.ALo(2,"dimlessBinaryPerSecond"),m.qZA()),2&F){const T=m.oxw().value;m.xp6(1),m.Oqu(m.lcZ(2,1,T))}}function Ne(F,x){if(1&F&&(m.TgZ(0,"span"),m._uU(1),m.ALo(2,"milliseconds"),m.qZA()),2&F){const T=m.oxw().value;m.xp6(1),m.Oqu(m.lcZ(2,1,T))}}function Fe(F,x){if(1&F&&(m.TgZ(0,"span"),m._uU(1),m.ALo(2,"iops"),m.qZA()),2&F){const T=m.oxw().value;m.xp6(1),m.Oqu(m.lcZ(2,1,T))}}function L(F,x){if(1&F&&(m.TgZ(0,"span"),m._uU(1),m.qZA()),2&F){const T=m.oxw().value;m.xp6(1),m.Oqu(T)}}function he(F,x){if(1&F&&(m.TgZ(0,"div",4),m.YNc(1,X,3,3,"span",5),m.YNc(2,Ne,3,3,"span",5),m.YNc(3,Fe,3,3,"span",5),m.YNc(4,L,2,1,"span",9),m.qZA()),2&F){const T=x.row,H=m.oxw();m.Q6J("ngSwitch",T.type),m.xp6(1),m.Q6J("ngSwitchCase",H.typeField.bps),m.xp6(1),m.Q6J("ngSwitchCase",H.typeField.milliseconds),m.xp6(1),m.Q6J("ngSwitchCase",H.typeField.iops)}}let q=(()=>{class F{constructor(T,H){this.formatterService=T,this.rbdConfigurationService=H,this.sourceField=a.h,this.typeField=a.r}ngOnInit(){this.poolConfigurationColumns=[{prop:"displayName",name:"Name"},{prop:"description",name:"Description"},{prop:"name",name:"Key"},{prop:"source",name:"Source",cellTemplate:this.configurationSourceTpl,pipe:new ne},{prop:"value",name:"Value",cellTemplate:this.configurationValueTpl}]}ngOnChanges(){!this.data||(this.data=this.data.filter(T=>this.rbdConfigurationService.getOptionFields().map(H=>H.name).includes(T.name)))}}return F.\u0275fac=function(T){return new(T||F)(m.Y36(N.H),m.Y36(Ie.n))},F.\u0275cmp=m.Xpm({type:F,selectors:[["cd-rbd-configuration-table"]],viewQuery:function(T,H){if(1&T&&(m.Gf(be,7),m.Gf(S,7),m.Gf(le,7)),2&T){let y;m.iGM(y=m.CRH())&&(H.configurationSourceTpl=y.first),m.iGM(y=m.CRH())&&(H.configurationValueTpl=y.first),m.iGM(y=m.CRH())&&(H.poolConfTable=y.first)}},inputs:{data:"data"},features:[m.TTD],decls:6,vars:2,consts:function(){let x,T,H;return x="Global",T="Image",H="Pool",[["identifier","name",3,"data","columns"],["poolConfTable",""],["configurationSourceTpl",""],["configurationValueTpl",""],[3,"ngSwitch"],[4,"ngSwitchCase"],x,T,H,[4,"ngSwitchDefault"]]},template:function(T,H){1&T&&(m._UZ(0,"cd-table",0,1),m.YNc(2,e,4,4,"ng-template",null,2,m.W1O),m.YNc(4,he,5,4,"ng-template",null,3,m.W1O)),2&T&&m.Q6J("data",H.data)("columns",H.poolConfigurationColumns)},directives:[l.a,v.RF,v.n9,v.ED],pipes:[U.O,re.J,Ae.A],styles:[""]}),F})()}}]); \ No newline at end of file diff --git a/src/pybind/mgr/dashboard/frontend/dist/en-US/Ceph_Logo.487a0001b327fa7f5232.svg b/src/pybind/mgr/dashboard/frontend/dist/en-US/Ceph_Logo.487a0001b327fa7f5232.svg new file mode 100644 index 000000000..9426c300d --- /dev/null +++ b/src/pybind/mgr/dashboard/frontend/dist/en-US/Ceph_Logo.487a0001b327fa7f5232.svg @@ -0,0 +1,71 @@ + + + + + + + + + + image/svg+xml + + + + + + + + + diff --git a/src/pybind/mgr/dashboard/frontend/dist/en-US/assets/Ceph_Ceph_Logo_with_text_red_white.svg b/src/pybind/mgr/dashboard/frontend/dist/en-US/assets/Ceph_Ceph_Logo_with_text_red_white.svg new file mode 100644 index 000000000..a5b0602eb --- /dev/null +++ b/src/pybind/mgr/dashboard/frontend/dist/en-US/assets/Ceph_Ceph_Logo_with_text_red_white.svg @@ -0,0 +1,69 @@ + +image/svg+xml diff --git a/src/pybind/mgr/dashboard/frontend/dist/en-US/assets/Ceph_Ceph_Logo_with_text_white.svg b/src/pybind/mgr/dashboard/frontend/dist/en-US/assets/Ceph_Ceph_Logo_with_text_white.svg new file mode 100644 index 000000000..35bcc8c0a --- /dev/null +++ b/src/pybind/mgr/dashboard/frontend/dist/en-US/assets/Ceph_Ceph_Logo_with_text_white.svg @@ -0,0 +1,69 @@ + +image/svg+xml diff --git a/src/pybind/mgr/dashboard/frontend/dist/en-US/assets/Ceph_Logo.svg b/src/pybind/mgr/dashboard/frontend/dist/en-US/assets/Ceph_Logo.svg new file mode 100644 index 000000000..9426c300d --- /dev/null +++ b/src/pybind/mgr/dashboard/frontend/dist/en-US/assets/Ceph_Logo.svg @@ -0,0 +1,71 @@ + + + + + + + + + + image/svg+xml + + + + + + + + + diff --git a/src/pybind/mgr/dashboard/frontend/dist/en-US/assets/ceph_background.gif b/src/pybind/mgr/dashboard/frontend/dist/en-US/assets/ceph_background.gif new file mode 100644 index 000000000..0f7426ee0 Binary files /dev/null and b/src/pybind/mgr/dashboard/frontend/dist/en-US/assets/ceph_background.gif differ diff --git a/src/pybind/mgr/dashboard/frontend/dist/en-US/assets/loading.gif b/src/pybind/mgr/dashboard/frontend/dist/en-US/assets/loading.gif new file mode 100755 index 000000000..8fb88dea3 Binary files /dev/null and b/src/pybind/mgr/dashboard/frontend/dist/en-US/assets/loading.gif differ diff --git a/src/pybind/mgr/dashboard/frontend/dist/en-US/assets/logo-mini.png b/src/pybind/mgr/dashboard/frontend/dist/en-US/assets/logo-mini.png new file mode 100644 index 000000000..b3446a894 Binary files /dev/null and b/src/pybind/mgr/dashboard/frontend/dist/en-US/assets/logo-mini.png differ diff --git a/src/pybind/mgr/dashboard/frontend/dist/en-US/assets/prometheus_logo.svg b/src/pybind/mgr/dashboard/frontend/dist/en-US/assets/prometheus_logo.svg new file mode 100644 index 000000000..5c51f66d9 --- /dev/null +++ b/src/pybind/mgr/dashboard/frontend/dist/en-US/assets/prometheus_logo.svg @@ -0,0 +1,50 @@ + + + +image/svg+xml \ No newline at end of file diff --git a/src/pybind/mgr/dashboard/frontend/dist/en-US/ceph_background.e82dd79127290ddbe8cb.gif b/src/pybind/mgr/dashboard/frontend/dist/en-US/ceph_background.e82dd79127290ddbe8cb.gif new file mode 100644 index 000000000..0f7426ee0 Binary files /dev/null and b/src/pybind/mgr/dashboard/frontend/dist/en-US/ceph_background.e82dd79127290ddbe8cb.gif differ diff --git a/src/pybind/mgr/dashboard/frontend/dist/en-US/favicon.ico b/src/pybind/mgr/dashboard/frontend/dist/en-US/favicon.ico new file mode 100644 index 000000000..90e538ba7 Binary files /dev/null and b/src/pybind/mgr/dashboard/frontend/dist/en-US/favicon.ico differ diff --git a/src/pybind/mgr/dashboard/frontend/dist/en-US/forkawesome-webfont.2dfb5f36fc148e26e398.woff b/src/pybind/mgr/dashboard/frontend/dist/en-US/forkawesome-webfont.2dfb5f36fc148e26e398.woff new file mode 100644 index 000000000..477da445a Binary files /dev/null and b/src/pybind/mgr/dashboard/frontend/dist/en-US/forkawesome-webfont.2dfb5f36fc148e26e398.woff differ diff --git a/src/pybind/mgr/dashboard/frontend/dist/en-US/forkawesome-webfont.7c20758e3e7c7dff7c8d.woff2 b/src/pybind/mgr/dashboard/frontend/dist/en-US/forkawesome-webfont.7c20758e3e7c7dff7c8d.woff2 new file mode 100644 index 000000000..f3520b533 Binary files /dev/null and b/src/pybind/mgr/dashboard/frontend/dist/en-US/forkawesome-webfont.7c20758e3e7c7dff7c8d.woff2 differ diff --git a/src/pybind/mgr/dashboard/frontend/dist/en-US/forkawesome-webfont.86541105409e56d17291.svg b/src/pybind/mgr/dashboard/frontend/dist/en-US/forkawesome-webfont.86541105409e56d17291.svg new file mode 100644 index 000000000..e99720454 --- /dev/null +++ b/src/pybind/mgr/dashboard/frontend/dist/en-US/forkawesome-webfont.86541105409e56d17291.svg @@ -0,0 +1,2849 @@ + + + + + +Created by FontForge 20180321 at Mon Feb 18 18:29:30 2019 + By Julien Deswaef +The Fork Awesome font is licensed under the SIL OFL 1.1 (http://scripts.sil.org/OFL). Fork Awesome is a fork based of off Font Awesome 4.7.0 by Dave Gandy. More info on licenses at https://forkawesome.github.io + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/pybind/mgr/dashboard/frontend/dist/en-US/forkawesome-webfont.e182ad6df04f9177b326.eot b/src/pybind/mgr/dashboard/frontend/dist/en-US/forkawesome-webfont.e182ad6df04f9177b326.eot new file mode 100644 index 000000000..b96d208fa Binary files /dev/null and b/src/pybind/mgr/dashboard/frontend/dist/en-US/forkawesome-webfont.e182ad6df04f9177b326.eot differ diff --git a/src/pybind/mgr/dashboard/frontend/dist/en-US/forkawesome-webfont.ee4d8bfd0af89fc714a2.ttf b/src/pybind/mgr/dashboard/frontend/dist/en-US/forkawesome-webfont.ee4d8bfd0af89fc714a2.ttf new file mode 100644 index 000000000..6cf62efb8 Binary files /dev/null and b/src/pybind/mgr/dashboard/frontend/dist/en-US/forkawesome-webfont.ee4d8bfd0af89fc714a2.ttf differ diff --git a/src/pybind/mgr/dashboard/frontend/dist/en-US/index.html b/src/pybind/mgr/dashboard/frontend/dist/en-US/index.html new file mode 100644 index 000000000..75c21411f --- /dev/null +++ b/src/pybind/mgr/dashboard/frontend/dist/en-US/index.html @@ -0,0 +1,23 @@ + + + Ceph + + + + + + + + + + + \ No newline at end of file diff --git a/src/pybind/mgr/dashboard/frontend/dist/en-US/main.c3b711a3156fe72f66f4.js b/src/pybind/mgr/dashboard/frontend/dist/en-US/main.c3b711a3156fe72f66f4.js new file mode 100644 index 000000000..0933ce611 --- /dev/null +++ b/src/pybind/mgr/dashboard/frontend/dist/en-US/main.c3b711a3156fe72f66f4.js @@ -0,0 +1,3 @@ +var $localize=Object.assign(void 0===$localize?{}:$localize,{locale:"en-US"}); +"use strict";(function(global){global.ng=global.ng||{};global.ng.common=global.ng.common||{};global.ng.common.locales=global.ng.common.locales||{};const u=undefined;function plural(n){const i=Math.floor(Math.abs(n)),v=n.toString().replace(/^[^.]*\.?/,"").length;if(i===1&&v===0)return 1;return 5}global.ng.common.locales["en-us-posix"]=["en-US-POSIX",[["a","p"],["AM","PM"],u],[["AM","PM"],u,u],[["S","M","T","W","T","F","S"],["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],["Su","Mo","Tu","We","Th","Fr","Sa"]],u,[["J","F","M","A","M","J","J","A","S","O","N","D"],["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],["January","February","March","April","May","June","July","August","September","October","November","December"]],u,[["B","A"],["BC","AD"],["Before Christ","Anno Domini"]],0,[6,0],["M/d/yy","MMM d, y","MMMM d, y","EEEE, MMMM d, y"],["h:mm a","h:mm:ss a","h:mm:ss a z","h:mm:ss a zzzz"],["{1}, {0}",u,"{1} 'at' {0}",u],[".",",",";","%","+","-","E","\xD7","0/00","INF","NaN",":"],["0.######","0%","\xA4\xA00.00","0.000000E+000"],"USD","$","US Dollar",{},"ltr",plural,[[["mi","n","in the morning","in the afternoon","in the evening","at night"],["midnight","noon","in the morning","in the afternoon","in the evening","at night"],u],[["midnight","noon","morning","afternoon","evening","night"],u,u],["00:00","12:00",["06:00","12:00"],["12:00","18:00"],["18:00","21:00"],["21:00","06:00"]]]]})(typeof globalThis!=="undefined"&&globalThis||typeof global!=="undefined"&&global||typeof window!=="undefined"&&window);; +var vm=Math.pow;(self.webpackChunkceph_dashboard=self.webpackChunkceph_dashboard||[]).push([[179],{98255:v=>{function T(i){return Promise.resolve().then(()=>{var r=new Error("Cannot find module '"+i+"'");throw r.code="MODULE_NOT_FOUND",r})}T.keys=()=>[],T.resolve=T,T.id=98255,v.exports=T},56083:(v,T,i)=>{"use strict";i.d(T,{l3:()=>p,_j:()=>r,LC:()=>u,ZN:()=>H,jt:()=>e,vP:()=>y,SB:()=>A,oB:()=>S,eR:()=>L,X$:()=>d,ZE:()=>se,k1:()=>Ee});class r{}class u{}const p="*";function d(ie,he){return{type:7,name:ie,definitions:he,options:{}}}function e(ie,he=null){return{type:4,styles:he,timings:ie}}function y(ie,he=null){return{type:2,steps:ie,options:he}}function S(ie){return{type:6,styles:ie,offset:null}}function A(ie,he,ge){return{type:0,name:ie,styles:he,options:ge}}function L(ie,he,ge=null){return{type:1,expr:ie,animation:he,options:ge}}function ae(ie){Promise.resolve(null).then(ie)}class H{constructor(he=0,ge=0){this._onDoneFns=[],this._onStartFns=[],this._onDestroyFns=[],this._started=!1,this._destroyed=!1,this._finished=!1,this._position=0,this.parentPlayer=null,this.totalTime=he+ge}_onFinish(){this._finished||(this._finished=!0,this._onDoneFns.forEach(he=>he()),this._onDoneFns=[])}onStart(he){this._onStartFns.push(he)}onDone(he){this._onDoneFns.push(he)}onDestroy(he){this._onDestroyFns.push(he)}hasStarted(){return this._started}init(){}play(){this.hasStarted()||(this._onStart(),this.triggerMicrotask()),this._started=!0}triggerMicrotask(){ae(()=>this._onFinish())}_onStart(){this._onStartFns.forEach(he=>he()),this._onStartFns=[]}pause(){}restart(){}finish(){this._onFinish()}destroy(){this._destroyed||(this._destroyed=!0,this.hasStarted()||this._onStart(),this.finish(),this._onDestroyFns.forEach(he=>he()),this._onDestroyFns=[])}reset(){this._started=!1}setPosition(he){this._position=this.totalTime?he*this.totalTime:1}getPosition(){return this.totalTime?this._position/this.totalTime:1}triggerCallback(he){const ge="start"==he?this._onStartFns:this._onDoneFns;ge.forEach(De=>De()),ge.length=0}}class se{constructor(he){this._onDoneFns=[],this._onStartFns=[],this._finished=!1,this._started=!1,this._destroyed=!1,this._onDestroyFns=[],this.parentPlayer=null,this.totalTime=0,this.players=he;let ge=0,De=0,ce=0;const lt=this.players.length;0==lt?ae(()=>this._onFinish()):this.players.forEach(Ve=>{Ve.onDone(()=>{++ge==lt&&this._onFinish()}),Ve.onDestroy(()=>{++De==lt&&this._onDestroy()}),Ve.onStart(()=>{++ce==lt&&this._onStart()})}),this.totalTime=this.players.reduce((Ve,ze)=>Math.max(Ve,ze.totalTime),0)}_onFinish(){this._finished||(this._finished=!0,this._onDoneFns.forEach(he=>he()),this._onDoneFns=[])}init(){this.players.forEach(he=>he.init())}onStart(he){this._onStartFns.push(he)}_onStart(){this.hasStarted()||(this._started=!0,this._onStartFns.forEach(he=>he()),this._onStartFns=[])}onDone(he){this._onDoneFns.push(he)}onDestroy(he){this._onDestroyFns.push(he)}hasStarted(){return this._started}play(){this.parentPlayer||this.init(),this._onStart(),this.players.forEach(he=>he.play())}pause(){this.players.forEach(he=>he.pause())}restart(){this.players.forEach(he=>he.restart())}finish(){this._onFinish(),this.players.forEach(he=>he.finish())}destroy(){this._onDestroy()}_onDestroy(){this._destroyed||(this._destroyed=!0,this._onFinish(),this.players.forEach(he=>he.destroy()),this._onDestroyFns.forEach(he=>he()),this._onDestroyFns=[])}reset(){this.players.forEach(he=>he.reset()),this._destroyed=!1,this._finished=!1,this._started=!1}setPosition(he){const ge=he*this.totalTime;this.players.forEach(De=>{const ce=De.totalTime?Math.min(1,ge/De.totalTime):1;De.setPosition(ce)})}getPosition(){const he=this.players.reduce((ge,De)=>null===ge||De.totalTime>ge.totalTime?De:ge,null);return null!=he?he.getPosition():0}beforeDestroy(){this.players.forEach(he=>{he.beforeDestroy&&he.beforeDestroy()})}triggerCallback(he){const ge="start"==he?this._onStartFns:this._onDoneFns;ge.forEach(De=>De()),ge.length=0}}const Ee="!"},12057:(v,T,i)=>{"use strict";i.d(T,{mr:()=>se,Ov:()=>Ws,ez:()=>Eo,K0:()=>y,uU:()=>So,JJ:()=>an,x:()=>Be,Do:()=>ie,Gx:()=>to,Ts:()=>sn,Nd:()=>$e,V_:()=>N,Ye:()=>he,S$:()=>ae,i8:()=>Po,mk:()=>si,sg:()=>co,O5:()=>ls,PC:()=>Il,RF:()=>us,n9:()=>ya,ED:()=>el,tP:()=>fo,b0:()=>Ee,Zx:()=>ti,lw:()=>S,rS:()=>Ls,Tn:()=>Pe,gd:()=>ps,EM:()=>Fs,JF:()=>Zl,p6:()=>_i,Mn:()=>It,ol:()=>tn,UT:()=>Zt,NF:()=>bc,w_:()=>_,bD:()=>ba,q:()=>p,Mx:()=>on,HT:()=>e});var r=i(74788);let u=null;function p(){return u}function e(rt){u||(u=rt)}class _{}const y=new r.OlP("DocumentToken");let S=(()=>{class rt{historyGo(dt){throw new Error("Not implemented")}}return rt.\u0275fac=function(dt){return new(dt||rt)},rt.\u0275prov=(0,r.Yz7)({factory:A,token:rt,providedIn:"platform"}),rt})();function A(){return(0,r.LFG)(L)}const N=new r.OlP("Location Initialized");let L=(()=>{class rt extends S{constructor(dt){super(),this._doc=dt,this._init()}_init(){this.location=window.location,this._history=window.history}getBaseHrefFromDOM(){return p().getBaseHref(this._doc)}onPopState(dt){const Te=p().getGlobalEventTarget(this._doc,"window");return Te.addEventListener("popstate",dt,!1),()=>Te.removeEventListener("popstate",dt)}onHashChange(dt){const Te=p().getGlobalEventTarget(this._doc,"window");return Te.addEventListener("hashchange",dt,!1),()=>Te.removeEventListener("hashchange",dt)}get href(){return this.location.href}get protocol(){return this.location.protocol}get hostname(){return this.location.hostname}get port(){return this.location.port}get pathname(){return this.location.pathname}get search(){return this.location.search}get hash(){return this.location.hash}set pathname(dt){this.location.pathname=dt}pushState(dt,Te,Me){Z()?this._history.pushState(dt,Te,Me):this.location.hash=Me}replaceState(dt,Te,Me){Z()?this._history.replaceState(dt,Te,Me):this.location.hash=Me}forward(){this._history.forward()}back(){this._history.back()}historyGo(dt=0){this._history.go(dt)}getState(){return this._history.state}}return rt.\u0275fac=function(dt){return new(dt||rt)(r.LFG(y))},rt.\u0275prov=(0,r.Yz7)({factory:J,token:rt,providedIn:"platform"}),rt})();function Z(){return!!window.history.pushState}function J(){return new L((0,r.LFG)(y))}function K(rt,Pt){if(0==rt.length)return Pt;if(0==Pt.length)return rt;let dt=0;return rt.endsWith("/")&&dt++,Pt.startsWith("/")&&dt++,2==dt?rt+Pt.substring(1):1==dt?rt+Pt:rt+"/"+Pt}function ee(rt){const Pt=rt.match(/#|\?|$/),dt=Pt&&Pt.index||rt.length;return rt.slice(0,dt-("/"===rt[dt-1]?1:0))+rt.slice(dt)}function ue(rt){return rt&&"?"!==rt[0]?"?"+rt:rt}let ae=(()=>{class rt{historyGo(dt){throw new Error("Not implemented")}}return rt.\u0275fac=function(dt){return new(dt||rt)},rt.\u0275prov=(0,r.Yz7)({factory:H,token:rt,providedIn:"root"}),rt})();function H(rt){const Pt=(0,r.LFG)(y).location;return new Ee((0,r.LFG)(S),Pt&&Pt.origin||"")}const se=new r.OlP("appBaseHref");let Ee=(()=>{class rt extends ae{constructor(dt,Te){if(super(),this._platformLocation=dt,this._removeListenerFns=[],null==Te&&(Te=this._platformLocation.getBaseHrefFromDOM()),null==Te)throw new Error("No base href set. Please provide a value for the APP_BASE_HREF token or add a base element to the document.");this._baseHref=Te}ngOnDestroy(){for(;this._removeListenerFns.length;)this._removeListenerFns.pop()()}onPopState(dt){this._removeListenerFns.push(this._platformLocation.onPopState(dt),this._platformLocation.onHashChange(dt))}getBaseHref(){return this._baseHref}prepareExternalUrl(dt){return K(this._baseHref,dt)}path(dt=!1){const Te=this._platformLocation.pathname+ue(this._platformLocation.search),Me=this._platformLocation.hash;return Me&&dt?`${Te}${Me}`:Te}pushState(dt,Te,Me,xe){const Ct=this.prepareExternalUrl(Me+ue(xe));this._platformLocation.pushState(dt,Te,Ct)}replaceState(dt,Te,Me,xe){const Ct=this.prepareExternalUrl(Me+ue(xe));this._platformLocation.replaceState(dt,Te,Ct)}forward(){this._platformLocation.forward()}back(){this._platformLocation.back()}historyGo(dt=0){var Te,Me;null===(Me=(Te=this._platformLocation).historyGo)||void 0===Me||Me.call(Te,dt)}}return rt.\u0275fac=function(dt){return new(dt||rt)(r.LFG(S),r.LFG(se,8))},rt.\u0275prov=r.Yz7({token:rt,factory:rt.\u0275fac}),rt})(),ie=(()=>{class rt extends ae{constructor(dt,Te){super(),this._platformLocation=dt,this._baseHref="",this._removeListenerFns=[],null!=Te&&(this._baseHref=Te)}ngOnDestroy(){for(;this._removeListenerFns.length;)this._removeListenerFns.pop()()}onPopState(dt){this._removeListenerFns.push(this._platformLocation.onPopState(dt),this._platformLocation.onHashChange(dt))}getBaseHref(){return this._baseHref}path(dt=!1){let Te=this._platformLocation.hash;return null==Te&&(Te="#"),Te.length>0?Te.substring(1):Te}prepareExternalUrl(dt){const Te=K(this._baseHref,dt);return Te.length>0?"#"+Te:Te}pushState(dt,Te,Me,xe){let Ct=this.prepareExternalUrl(Me+ue(xe));0==Ct.length&&(Ct=this._platformLocation.pathname),this._platformLocation.pushState(dt,Te,Ct)}replaceState(dt,Te,Me,xe){let Ct=this.prepareExternalUrl(Me+ue(xe));0==Ct.length&&(Ct=this._platformLocation.pathname),this._platformLocation.replaceState(dt,Te,Ct)}forward(){this._platformLocation.forward()}back(){this._platformLocation.back()}historyGo(dt=0){var Te,Me;null===(Me=(Te=this._platformLocation).historyGo)||void 0===Me||Me.call(Te,dt)}}return rt.\u0275fac=function(dt){return new(dt||rt)(r.LFG(S),r.LFG(se,8))},rt.\u0275prov=r.Yz7({token:rt,factory:rt.\u0275fac}),rt})(),he=(()=>{class rt{constructor(dt,Te){this._subject=new r.vpe,this._urlChangeListeners=[],this._platformStrategy=dt;const Me=this._platformStrategy.getBaseHref();this._platformLocation=Te,this._baseHref=ee(ce(Me)),this._platformStrategy.onPopState(xe=>{this._subject.emit({url:this.path(!0),pop:!0,state:xe.state,type:xe.type})})}path(dt=!1){return this.normalize(this._platformStrategy.path(dt))}getState(){return this._platformLocation.getState()}isCurrentPathEqualTo(dt,Te=""){return this.path()==this.normalize(dt+ue(Te))}normalize(dt){return rt.stripTrailingSlash(function(rt,Pt){return rt&&Pt.startsWith(rt)?Pt.substring(rt.length):Pt}(this._baseHref,ce(dt)))}prepareExternalUrl(dt){return dt&&"/"!==dt[0]&&(dt="/"+dt),this._platformStrategy.prepareExternalUrl(dt)}go(dt,Te="",Me=null){this._platformStrategy.pushState(Me,"",dt,Te),this._notifyUrlChangeListeners(this.prepareExternalUrl(dt+ue(Te)),Me)}replaceState(dt,Te="",Me=null){this._platformStrategy.replaceState(Me,"",dt,Te),this._notifyUrlChangeListeners(this.prepareExternalUrl(dt+ue(Te)),Me)}forward(){this._platformStrategy.forward()}back(){this._platformStrategy.back()}historyGo(dt=0){var Te,Me;null===(Me=(Te=this._platformStrategy).historyGo)||void 0===Me||Me.call(Te,dt)}onUrlChange(dt){this._urlChangeListeners.push(dt),this._urlChangeSubscription||(this._urlChangeSubscription=this.subscribe(Te=>{this._notifyUrlChangeListeners(Te.url,Te.state)}))}_notifyUrlChangeListeners(dt="",Te){this._urlChangeListeners.forEach(Me=>Me(dt,Te))}subscribe(dt,Te,Me){return this._subject.subscribe({next:dt,error:Te,complete:Me})}}return rt.\u0275fac=function(dt){return new(dt||rt)(r.LFG(ae),r.LFG(S))},rt.normalizeQueryParams=ue,rt.joinWithSlash=K,rt.stripTrailingSlash=ee,rt.\u0275prov=(0,r.Yz7)({factory:ge,token:rt,providedIn:"root"}),rt})();function ge(){return new he((0,r.LFG)(ae),(0,r.LFG)(S))}function ce(rt){return rt.replace(/\/index.html$/,"")}var Ve=(()=>((Ve=Ve||{})[Ve.Decimal=0]="Decimal",Ve[Ve.Percent=1]="Percent",Ve[Ve.Currency=2]="Currency",Ve[Ve.Scientific=3]="Scientific",Ve))(),ze=(()=>((ze=ze||{})[ze.Zero=0]="Zero",ze[ze.One=1]="One",ze[ze.Two=2]="Two",ze[ze.Few=3]="Few",ze[ze.Many=4]="Many",ze[ze.Other=5]="Other",ze))(),Be=(()=>((Be=Be||{})[Be.Format=0]="Format",Be[Be.Standalone=1]="Standalone",Be))(),Pe=(()=>((Pe=Pe||{})[Pe.Narrow=0]="Narrow",Pe[Pe.Abbreviated=1]="Abbreviated",Pe[Pe.Wide=2]="Wide",Pe[Pe.Short=3]="Short",Pe))(),je=(()=>((je=je||{})[je.Short=0]="Short",je[je.Medium=1]="Medium",je[je.Long=2]="Long",je[je.Full=3]="Full",je))(),He=(()=>((He=He||{})[He.Decimal=0]="Decimal",He[He.Group=1]="Group",He[He.List=2]="List",He[He.PercentSign=3]="PercentSign",He[He.PlusSign=4]="PlusSign",He[He.MinusSign=5]="MinusSign",He[He.Exponential=6]="Exponential",He[He.SuperscriptingExponent=7]="SuperscriptingExponent",He[He.PerMille=8]="PerMille",He[He.Infinity=9]="Infinity",He[He.NaN=10]="NaN",He[He.TimeSeparator=11]="TimeSeparator",He[He.CurrencyDecimal=12]="CurrencyDecimal",He[He.CurrencyGroup=13]="CurrencyGroup",He))();function tn(rt,Pt,dt){const Te=(0,r.cg1)(rt),xe=fi([Te[r.wAp.DayPeriodsFormat],Te[r.wAp.DayPeriodsStandalone]],Pt);return fi(xe,dt)}function It(rt,Pt,dt){const Te=(0,r.cg1)(rt),xe=fi([Te[r.wAp.DaysFormat],Te[r.wAp.DaysStandalone]],Pt);return fi(xe,dt)}function Zt(rt,Pt,dt){const Te=(0,r.cg1)(rt),xe=fi([Te[r.wAp.MonthsFormat],Te[r.wAp.MonthsStandalone]],Pt);return fi(xe,dt)}function Gt(rt,Pt){return fi((0,r.cg1)(rt)[r.wAp.DateFormat],Pt)}function xt(rt,Pt){return fi((0,r.cg1)(rt)[r.wAp.TimeFormat],Pt)}function Xt(rt,Pt){return fi((0,r.cg1)(rt)[r.wAp.DateTimeFormat],Pt)}function Zn(rt,Pt){const dt=(0,r.cg1)(rt),Te=dt[r.wAp.NumberSymbols][Pt];if(void 0===Te){if(Pt===He.CurrencyDecimal)return dt[r.wAp.NumberSymbols][He.Decimal];if(Pt===He.CurrencyGroup)return dt[r.wAp.NumberSymbols][He.Group]}return Te}function Ur(rt,Pt){return(0,r.cg1)(rt)[r.wAp.NumberFormats][Pt]}const ei=r.kL8;function Nn(rt){if(!rt[r.wAp.ExtraData])throw new Error(`Missing extra locale data for the locale "${rt[r.wAp.LocaleId]}". Use "registerLocaleData" to load new data. See the "I18n guide" on angular.io to know more.`)}function fi(rt,Pt){for(let dt=Pt;dt>-1;dt--)if(void 0!==rt[dt])return rt[dt];throw new Error("Locale data API: locale data undefined")}function ki(rt){const[Pt,dt]=rt.split(":");return{hours:+Pt,minutes:+dt}}const Wt=/^(\d{4})-?(\d\d)-?(\d\d)(?:T(\d\d)(?::?(\d\d)(?::?(\d\d)(?:\.(\d+))?)?)?(Z|([+-])(\d\d):?(\d\d))?)?$/,zn={},rr=/((?:[^BEGHLMOSWYZabcdhmswyz']+)|(?:'(?:[^']|'')*')|(?:G{1,5}|y{1,4}|Y{1,4}|M{1,5}|L{1,5}|w{1,2}|W{1}|d{1,2}|E{1,6}|c{1,6}|a{1,5}|b{1,5}|B{1,5}|h{1,2}|H{1,2}|m{1,2}|s{1,2}|S{1,3}|z{1,4}|Z{1,5}|O{1,4}))([\s\S]*)/;var Fr=(()=>((Fr=Fr||{})[Fr.Short=0]="Short",Fr[Fr.ShortGMT=1]="ShortGMT",Fr[Fr.Long=2]="Long",Fr[Fr.Extended=3]="Extended",Fr))(),Gn=(()=>((Gn=Gn||{})[Gn.FullYear=0]="FullYear",Gn[Gn.Month=1]="Month",Gn[Gn.Date=2]="Date",Gn[Gn.Hours=3]="Hours",Gn[Gn.Minutes=4]="Minutes",Gn[Gn.Seconds=5]="Seconds",Gn[Gn.FractionalSeconds=6]="FractionalSeconds",Gn[Gn.Day=7]="Day",Gn))(),Jr=(()=>((Jr=Jr||{})[Jr.DayPeriods=0]="DayPeriods",Jr[Jr.Days=1]="Days",Jr[Jr.Months=2]="Months",Jr[Jr.Eras=3]="Eras",Jr))();function _i(rt,Pt,dt,Te){let Me=function(rt){if(lo(rt))return rt;if("number"==typeof rt&&!isNaN(rt))return new Date(rt);if("string"==typeof rt){if(rt=rt.trim(),/^(\d{4}(-\d{1,2}(-\d{1,2})?)?)$/.test(rt)){const[Me,xe=1,Ct=1]=rt.split("-").map(ur=>+ur);return wi(Me,xe-1,Ct)}const dt=parseFloat(rt);if(!isNaN(rt-dt))return new Date(dt);let Te;if(Te=rt.match(Wt))return function(rt){const Pt=new Date(0);let dt=0,Te=0;const Me=rt[8]?Pt.setUTCFullYear:Pt.setFullYear,xe=rt[8]?Pt.setUTCHours:Pt.setHours;rt[9]&&(dt=Number(rt[9]+rt[10]),Te=Number(rt[9]+rt[11])),Me.call(Pt,Number(rt[1]),Number(rt[2])-1,Number(rt[3]));const Ct=Number(rt[4]||0)-dt,ur=Number(rt[5]||0)-Te,Qi=Number(rt[6]||0),Go=Math.floor(1e3*parseFloat("0."+(rt[7]||0)));return xe.call(Pt,Ct,ur,Qi,Go),Pt}(Te)}const Pt=new Date(rt);if(!lo(Pt))throw new Error(`Unable to convert "${rt}" into a date`);return Pt}(rt);Pt=br(dt,Pt)||Pt;let ur,Ct=[];for(;Pt;){if(ur=rr.exec(Pt),!ur){Ct.push(Pt);break}{Ct=Ct.concat(ur.slice(1));const ms=Ct.pop();if(!ms)break;Pt=ms}}let Qi=Me.getTimezoneOffset();Te&&(Qi=Wr(Te,Qi),Me=function(rt,Pt,dt){const Me=rt.getTimezoneOffset();return function(rt,Pt){return(rt=new Date(rt.getTime())).setMinutes(rt.getMinutes()+Pt),rt}(rt,-1*(Wr(Pt,Me)-Me))}(Me,Te));let Go="";return Ct.forEach(ms=>{const hs=function(rt){if(An[rt])return An[rt];let Pt;switch(rt){case"G":case"GG":case"GGG":Pt=Vn(Jr.Eras,Pe.Abbreviated);break;case"GGGG":Pt=Vn(Jr.Eras,Pe.Wide);break;case"GGGGG":Pt=Vn(Jr.Eras,Pe.Narrow);break;case"y":Pt=gr(Gn.FullYear,1,0,!1,!0);break;case"yy":Pt=gr(Gn.FullYear,2,0,!0,!0);break;case"yyy":Pt=gr(Gn.FullYear,3,0,!1,!0);break;case"yyyy":Pt=gr(Gn.FullYear,4,0,!1,!0);break;case"Y":Pt=mi(1);break;case"YY":Pt=mi(2,!0);break;case"YYY":Pt=mi(3);break;case"YYYY":Pt=mi(4);break;case"M":case"L":Pt=gr(Gn.Month,1,1);break;case"MM":case"LL":Pt=gr(Gn.Month,2,1);break;case"MMM":Pt=Vn(Jr.Months,Pe.Abbreviated);break;case"MMMM":Pt=Vn(Jr.Months,Pe.Wide);break;case"MMMMM":Pt=Vn(Jr.Months,Pe.Narrow);break;case"LLL":Pt=Vn(Jr.Months,Pe.Abbreviated,Be.Standalone);break;case"LLLL":Pt=Vn(Jr.Months,Pe.Wide,Be.Standalone);break;case"LLLLL":Pt=Vn(Jr.Months,Pe.Narrow,Be.Standalone);break;case"w":Pt=kr(1);break;case"ww":Pt=kr(2);break;case"W":Pt=kr(1,!0);break;case"d":Pt=gr(Gn.Date,1);break;case"dd":Pt=gr(Gn.Date,2);break;case"c":case"cc":Pt=gr(Gn.Day,1);break;case"ccc":Pt=Vn(Jr.Days,Pe.Abbreviated,Be.Standalone);break;case"cccc":Pt=Vn(Jr.Days,Pe.Wide,Be.Standalone);break;case"ccccc":Pt=Vn(Jr.Days,Pe.Narrow,Be.Standalone);break;case"cccccc":Pt=Vn(Jr.Days,Pe.Short,Be.Standalone);break;case"E":case"EE":case"EEE":Pt=Vn(Jr.Days,Pe.Abbreviated);break;case"EEEE":Pt=Vn(Jr.Days,Pe.Wide);break;case"EEEEE":Pt=Vn(Jr.Days,Pe.Narrow);break;case"EEEEEE":Pt=Vn(Jr.Days,Pe.Short);break;case"a":case"aa":case"aaa":Pt=Vn(Jr.DayPeriods,Pe.Abbreviated);break;case"aaaa":Pt=Vn(Jr.DayPeriods,Pe.Wide);break;case"aaaaa":Pt=Vn(Jr.DayPeriods,Pe.Narrow);break;case"b":case"bb":case"bbb":Pt=Vn(Jr.DayPeriods,Pe.Abbreviated,Be.Standalone,!0);break;case"bbbb":Pt=Vn(Jr.DayPeriods,Pe.Wide,Be.Standalone,!0);break;case"bbbbb":Pt=Vn(Jr.DayPeriods,Pe.Narrow,Be.Standalone,!0);break;case"B":case"BB":case"BBB":Pt=Vn(Jr.DayPeriods,Pe.Abbreviated,Be.Format,!0);break;case"BBBB":Pt=Vn(Jr.DayPeriods,Pe.Wide,Be.Format,!0);break;case"BBBBB":Pt=Vn(Jr.DayPeriods,Pe.Narrow,Be.Format,!0);break;case"h":Pt=gr(Gn.Hours,1,-12);break;case"hh":Pt=gr(Gn.Hours,2,-12);break;case"H":Pt=gr(Gn.Hours,1);break;case"HH":Pt=gr(Gn.Hours,2);break;case"m":Pt=gr(Gn.Minutes,1);break;case"mm":Pt=gr(Gn.Minutes,2);break;case"s":Pt=gr(Gn.Seconds,1);break;case"ss":Pt=gr(Gn.Seconds,2);break;case"S":Pt=gr(Gn.FractionalSeconds,1);break;case"SS":Pt=gr(Gn.FractionalSeconds,2);break;case"SSS":Pt=gr(Gn.FractionalSeconds,3);break;case"Z":case"ZZ":case"ZZZ":Pt=Dn(Fr.Short);break;case"ZZZZZ":Pt=Dn(Fr.Extended);break;case"O":case"OO":case"OOO":case"z":case"zz":case"zzz":Pt=Dn(Fr.ShortGMT);break;case"OOOO":case"ZZZZ":case"zzzz":Pt=Dn(Fr.Long);break;default:return null}return An[rt]=Pt,Pt}(ms);Go+=hs?hs(Me,dt,Qi):"''"===ms?"'":ms.replace(/(^'|'$)/g,"").replace(/''/g,"'")}),Go}function wi(rt,Pt,dt){const Te=new Date(0);return Te.setFullYear(rt,Pt,dt),Te.setHours(0,0,0),Te}function br(rt,Pt){const dt=function(rt){return(0,r.cg1)(rt)[r.wAp.LocaleId]}(rt);if(zn[dt]=zn[dt]||{},zn[dt][Pt])return zn[dt][Pt];let Te="";switch(Pt){case"shortDate":Te=Gt(rt,je.Short);break;case"mediumDate":Te=Gt(rt,je.Medium);break;case"longDate":Te=Gt(rt,je.Long);break;case"fullDate":Te=Gt(rt,je.Full);break;case"shortTime":Te=xt(rt,je.Short);break;case"mediumTime":Te=xt(rt,je.Medium);break;case"longTime":Te=xt(rt,je.Long);break;case"fullTime":Te=xt(rt,je.Full);break;case"short":const Me=br(rt,"shortTime"),xe=br(rt,"shortDate");Te=Dr(Xt(rt,je.Short),[Me,xe]);break;case"medium":const Ct=br(rt,"mediumTime"),ur=br(rt,"mediumDate");Te=Dr(Xt(rt,je.Medium),[Ct,ur]);break;case"long":const Qi=br(rt,"longTime"),Go=br(rt,"longDate");Te=Dr(Xt(rt,je.Long),[Qi,Go]);break;case"full":const ms=br(rt,"fullTime"),hs=br(rt,"fullDate");Te=Dr(Xt(rt,je.Full),[ms,hs])}return Te&&(zn[dt][Pt]=Te),Te}function Dr(rt,Pt){return Pt&&(rt=rt.replace(/\{([^}]+)}/g,function(dt,Te){return null!=Pt&&Te in Pt?Pt[Te]:dt})),rt}function gn(rt,Pt,dt="-",Te,Me){let xe="";(rt<0||Me&&rt<=0)&&(Me?rt=1-rt:(rt=-rt,xe=dt));let Ct=String(rt);for(;Ct.length0||ur>-dt)&&(ur+=dt),rt===Gn.Hours)0===ur&&-12===dt&&(ur=12);else if(rt===Gn.FractionalSeconds)return function(rt,Pt){return gn(rt,3).substr(0,Pt)}(ur,Pt);const Qi=Zn(Ct,He.MinusSign);return gn(ur,Pt,Qi,Te,Me)}}function Vn(rt,Pt,dt=Be.Format,Te=!1){return function(Me,xe){return function(rt,Pt,dt,Te,Me,xe){switch(dt){case Jr.Months:return Zt(Pt,Me,Te)[rt.getMonth()];case Jr.Days:return It(Pt,Me,Te)[rt.getDay()];case Jr.DayPeriods:const Ct=rt.getHours(),ur=rt.getMinutes();if(xe){const Go=function(rt){const Pt=(0,r.cg1)(rt);return Nn(Pt),(Pt[r.wAp.ExtraData][2]||[]).map(Te=>"string"==typeof Te?ki(Te):[ki(Te[0]),ki(Te[1])])}(Pt),ms=function(rt,Pt,dt){const Te=(0,r.cg1)(rt);Nn(Te);const xe=fi([Te[r.wAp.ExtraData][0],Te[r.wAp.ExtraData][1]],Pt)||[];return fi(xe,dt)||[]}(Pt,Me,Te),hs=Go.findIndex(Ts=>{if(Array.isArray(Ts)){const[Ma,au]=Ts,Wa=Ct>=Ma.hours&&ur>=Ma.minutes,Rl=Ct0?Math.floor(Me/60):Math.ceil(Me/60);switch(rt){case Fr.Short:return(Me>=0?"+":"")+gn(Ct,2,xe)+gn(Math.abs(Me%60),2,xe);case Fr.ShortGMT:return"GMT"+(Me>=0?"+":"")+gn(Ct,1,xe);case Fr.Long:return"GMT"+(Me>=0?"+":"")+gn(Ct,2,xe)+":"+gn(Math.abs(Me%60),2,xe);case Fr.Extended:return 0===Te?"Z":(Me>=0?"+":"")+gn(Ct,2,xe)+":"+gn(Math.abs(Me%60),2,xe);default:throw new Error(`Unknown zone width "${rt}"`)}}}function Ge(rt){return wi(rt.getFullYear(),rt.getMonth(),rt.getDate()+(4-rt.getDay()))}function kr(rt,Pt=!1){return function(dt,Te){let Me;if(Pt){const xe=new Date(dt.getFullYear(),dt.getMonth(),1).getDay()-1,Ct=dt.getDate();Me=1+Math.floor((Ct+xe)/7)}else{const xe=Ge(dt),Ct=function(rt){const Pt=wi(rt,0,1).getDay();return wi(rt,0,1+(Pt<=4?4:11)-Pt)}(xe.getFullYear()),ur=xe.getTime()-Ct.getTime();Me=1+Math.round(ur/6048e5)}return gn(Me,rt,Zn(Te,He.MinusSign))}}function mi(rt,Pt=!1){return function(dt,Te){return gn(Ge(dt).getFullYear(),rt,Zn(Te,He.MinusSign),Pt)}}const An={};function Wr(rt,Pt){rt=rt.replace(/:/g,"");const dt=Date.parse("Jan 01, 1970 00:00:00 "+rt)/6e4;return isNaN(dt)?Pt:dt}function lo(rt){return rt instanceof Date&&!isNaN(rt.valueOf())}const vo=/^(\d+)?\.((\d+)(-(\d+))?)?$/;function lr(rt,Pt,dt,Te,Me,xe,Ct=!1){let ur="",Qi=!1;if(isFinite(rt)){let Go=function(rt){let Te,Me,xe,Ct,ur,Pt=Math.abs(rt)+"",dt=0;for((Me=Pt.indexOf("."))>-1&&(Pt=Pt.replace(".","")),(xe=Pt.search(/e/i))>0?(Me<0&&(Me=xe),Me+=+Pt.slice(xe+1),Pt=Pt.substring(0,xe)):Me<0&&(Me=Pt.length),xe=0;"0"===Pt.charAt(xe);xe++);if(xe===(ur=Pt.length))Te=[0],Me=1;else{for(ur--;"0"===Pt.charAt(ur);)ur--;for(Me-=xe,Te=[],Ct=0;xe<=ur;xe++,Ct++)Te[Ct]=Number(Pt.charAt(xe))}return Me>22&&(Te=Te.splice(0,21),dt=Me-1,Me=1),{digits:Te,exponent:dt,integerLen:Me}}(rt);Ct&&(Go=function(rt){if(0===rt.digits[0])return rt;const Pt=rt.digits.length-rt.integerLen;return rt.exponent?rt.exponent+=2:(0===Pt?rt.digits.push(0,0):1===Pt&&rt.digits.push(0),rt.integerLen+=2),rt}(Go));let ms=Pt.minInt,hs=Pt.minFrac,Ts=Pt.maxFrac;if(xe){const Al=xe.match(vo);if(null===Al)throw new Error(`${xe} is not a valid digit info`);const vs=Al[1],Lc=Al[3],Tc=Al[5];null!=vs&&(ms=Ar(vs)),null!=Lc&&(hs=Ar(Lc)),null!=Tc?Ts=Ar(Tc):null!=Lc&&hs>Ts&&(Ts=hs)}!function(rt,Pt,dt){if(Pt>dt)throw new Error(`The minimum number of digits after fraction (${Pt}) is higher than the maximum (${dt}).`);let Te=rt.digits,Me=Te.length-rt.integerLen;const xe=Math.min(Math.max(Pt,Me),dt);let Ct=xe+rt.integerLen,ur=Te[Ct];if(Ct>0){Te.splice(Math.max(rt.integerLen,Ct));for(let hs=Ct;hs=5)if(Ct-1<0){for(let hs=0;hs>Ct;hs--)Te.unshift(0),rt.integerLen++;Te.unshift(1),rt.integerLen++}else Te[Ct-1]++;for(;Me=Go?au.pop():Qi=!1),Ts>=10?1:0},0);ms&&(Te.unshift(ms),rt.integerLen++)}(Go,hs,Ts);let Ma=Go.digits,au=Go.integerLen;const Wa=Go.exponent;let Rl=[];for(Qi=Ma.every(Al=>!Al);au0?Rl=Ma.splice(au,Ma.length):(Rl=Ma,Ma=[0]);const nc=[];for(Ma.length>=Pt.lgSize&&nc.unshift(Ma.splice(-Pt.lgSize,Ma.length).join(""));Ma.length>Pt.gSize;)nc.unshift(Ma.splice(-Pt.gSize,Ma.length).join(""));Ma.length&&nc.unshift(Ma.join("")),ur=nc.join(Zn(dt,Te)),Rl.length&&(ur+=Zn(dt,Me)+Rl.join("")),Wa&&(ur+=Zn(dt,He.Exponential)+"+"+Wa)}else ur=Zn(dt,He.Infinity);return ur=rt<0&&!Qi?Pt.negPre+ur+Pt.negSuf:Pt.posPre+ur+Pt.posSuf,ur}function uo(rt,Pt="-"){const dt={minInt:1,minFrac:0,maxFrac:0,posPre:"",posSuf:"",negPre:"",negSuf:"",gSize:0,lgSize:0},Te=rt.split(";"),Me=Te[0],xe=Te[1],Ct=-1!==Me.indexOf(".")?Me.split("."):[Me.substring(0,Me.lastIndexOf("0")+1),Me.substring(Me.lastIndexOf("0")+1)],ur=Ct[0],Qi=Ct[1]||"";dt.posPre=ur.substr(0,ur.indexOf("#"));for(let ms=0;ms{class rt extends Rt{constructor(dt){super(),this.locale=dt}getPluralCategory(dt,Te){switch(ei(Te||this.locale)(dt)){case ze.Zero:return"zero";case ze.One:return"one";case ze.Two:return"two";case ze.Few:return"few";case ze.Many:return"many";default:return"other"}}}return rt.\u0275fac=function(dt){return new(dt||rt)(r.LFG(r.soG))},rt.\u0275prov=r.Yz7({token:rt,factory:rt.\u0275fac}),rt})();function on(rt,Pt){Pt=encodeURIComponent(Pt);for(const dt of rt.split(";")){const Te=dt.indexOf("="),[Me,xe]=-1==Te?[dt,""]:[dt.slice(0,Te),dt.slice(Te+1)];if(Me.trim()===Pt)return decodeURIComponent(xe)}return null}let si=(()=>{class rt{constructor(dt,Te,Me,xe){this._iterableDiffers=dt,this._keyValueDiffers=Te,this._ngEl=Me,this._renderer=xe,this._iterableDiffer=null,this._keyValueDiffer=null,this._initialClasses=[],this._rawClass=null}set klass(dt){this._removeClasses(this._initialClasses),this._initialClasses="string"==typeof dt?dt.split(/\s+/):[],this._applyClasses(this._initialClasses),this._applyClasses(this._rawClass)}set ngClass(dt){this._removeClasses(this._rawClass),this._applyClasses(this._initialClasses),this._iterableDiffer=null,this._keyValueDiffer=null,this._rawClass="string"==typeof dt?dt.split(/\s+/):dt,this._rawClass&&((0,r.sIi)(this._rawClass)?this._iterableDiffer=this._iterableDiffers.find(this._rawClass).create():this._keyValueDiffer=this._keyValueDiffers.find(this._rawClass).create())}ngDoCheck(){if(this._iterableDiffer){const dt=this._iterableDiffer.diff(this._rawClass);dt&&this._applyIterableChanges(dt)}else if(this._keyValueDiffer){const dt=this._keyValueDiffer.diff(this._rawClass);dt&&this._applyKeyValueChanges(dt)}}_applyKeyValueChanges(dt){dt.forEachAddedItem(Te=>this._toggleClass(Te.key,Te.currentValue)),dt.forEachChangedItem(Te=>this._toggleClass(Te.key,Te.currentValue)),dt.forEachRemovedItem(Te=>{Te.previousValue&&this._toggleClass(Te.key,!1)})}_applyIterableChanges(dt){dt.forEachAddedItem(Te=>{if("string"!=typeof Te.item)throw new Error(`NgClass can only toggle CSS classes expressed as strings, got ${(0,r.AaK)(Te.item)}`);this._toggleClass(Te.item,!0)}),dt.forEachRemovedItem(Te=>this._toggleClass(Te.item,!1))}_applyClasses(dt){dt&&(Array.isArray(dt)||dt instanceof Set?dt.forEach(Te=>this._toggleClass(Te,!0)):Object.keys(dt).forEach(Te=>this._toggleClass(Te,!!dt[Te])))}_removeClasses(dt){dt&&(Array.isArray(dt)||dt instanceof Set?dt.forEach(Te=>this._toggleClass(Te,!1)):Object.keys(dt).forEach(Te=>this._toggleClass(Te,!1)))}_toggleClass(dt,Te){(dt=dt.trim())&&dt.split(/\s+/g).forEach(Me=>{Te?this._renderer.addClass(this._ngEl.nativeElement,Me):this._renderer.removeClass(this._ngEl.nativeElement,Me)})}}return rt.\u0275fac=function(dt){return new(dt||rt)(r.Y36(r.ZZ4),r.Y36(r.aQg),r.Y36(r.SBq),r.Y36(r.Qsj))},rt.\u0275dir=r.lG2({type:rt,selectors:[["","ngClass",""]],inputs:{klass:["class","klass"],ngClass:"ngClass"}}),rt})();class _o{constructor(Pt,dt,Te,Me){this.$implicit=Pt,this.ngForOf=dt,this.index=Te,this.count=Me}get first(){return 0===this.index}get last(){return this.index===this.count-1}get even(){return this.index%2==0}get odd(){return!this.even}}let co=(()=>{class rt{constructor(dt,Te,Me){this._viewContainer=dt,this._template=Te,this._differs=Me,this._ngForOf=null,this._ngForOfDirty=!0,this._differ=null}set ngForOf(dt){this._ngForOf=dt,this._ngForOfDirty=!0}set ngForTrackBy(dt){this._trackByFn=dt}get ngForTrackBy(){return this._trackByFn}set ngForTemplate(dt){dt&&(this._template=dt)}ngDoCheck(){if(this._ngForOfDirty){this._ngForOfDirty=!1;const dt=this._ngForOf;if(!this._differ&&dt)try{this._differ=this._differs.find(dt).create(this.ngForTrackBy)}catch(Te){throw new Error(`Cannot find a differ supporting object '${dt}' of type '${function(rt){return rt.name||typeof rt}(dt)}'. NgFor only supports binding to Iterables such as Arrays.`)}}if(this._differ){const dt=this._differ.diff(this._ngForOf);dt&&this._applyChanges(dt)}}_applyChanges(dt){const Te=[];dt.forEachOperation((Me,xe,Ct)=>{if(null==Me.previousIndex){const ur=this._viewContainer.createEmbeddedView(this._template,new _o(null,this._ngForOf,-1,-1),null===Ct?void 0:Ct),Qi=new Es(Me,ur);Te.push(Qi)}else if(null==Ct)this._viewContainer.remove(null===xe?void 0:xe);else if(null!==xe){const ur=this._viewContainer.get(xe);this._viewContainer.move(ur,Ct);const Qi=new Es(Me,ur);Te.push(Qi)}});for(let Me=0;Me{this._viewContainer.get(Me.currentIndex).context.$implicit=Me.item})}_perViewChange(dt,Te){dt.context.$implicit=Te.item}static ngTemplateContextGuard(dt,Te){return!0}}return rt.\u0275fac=function(dt){return new(dt||rt)(r.Y36(r.s_b),r.Y36(r.Rgc),r.Y36(r.ZZ4))},rt.\u0275dir=r.lG2({type:rt,selectors:[["","ngFor","","ngForOf",""]],inputs:{ngForOf:"ngForOf",ngForTrackBy:"ngForTrackBy",ngForTemplate:"ngForTemplate"}}),rt})();class Es{constructor(Pt,dt){this.record=Pt,this.view=dt}}let ls=(()=>{class rt{constructor(dt,Te){this._viewContainer=dt,this._context=new La,this._thenTemplateRef=null,this._elseTemplateRef=null,this._thenViewRef=null,this._elseViewRef=null,this._thenTemplateRef=Te}set ngIf(dt){this._context.$implicit=this._context.ngIf=dt,this._updateView()}set ngIfThen(dt){ta("ngIfThen",dt),this._thenTemplateRef=dt,this._thenViewRef=null,this._updateView()}set ngIfElse(dt){ta("ngIfElse",dt),this._elseTemplateRef=dt,this._elseViewRef=null,this._updateView()}_updateView(){this._context.$implicit?this._thenViewRef||(this._viewContainer.clear(),this._elseViewRef=null,this._thenTemplateRef&&(this._thenViewRef=this._viewContainer.createEmbeddedView(this._thenTemplateRef,this._context))):this._elseViewRef||(this._viewContainer.clear(),this._thenViewRef=null,this._elseTemplateRef&&(this._elseViewRef=this._viewContainer.createEmbeddedView(this._elseTemplateRef,this._context)))}static ngTemplateContextGuard(dt,Te){return!0}}return rt.\u0275fac=function(dt){return new(dt||rt)(r.Y36(r.s_b),r.Y36(r.Rgc))},rt.\u0275dir=r.lG2({type:rt,selectors:[["","ngIf",""]],inputs:{ngIf:"ngIf",ngIfThen:"ngIfThen",ngIfElse:"ngIfElse"}}),rt})();class La{constructor(){this.$implicit=null,this.ngIf=null}}function ta(rt,Pt){if(Pt&&!Pt.createEmbeddedView)throw new Error(`${rt} must be a TemplateRef, but received '${(0,r.AaK)(Pt)}'.`)}class Is{constructor(Pt,dt){this._viewContainerRef=Pt,this._templateRef=dt,this._created=!1}create(){this._created=!0,this._viewContainerRef.createEmbeddedView(this._templateRef)}destroy(){this._created=!1,this._viewContainerRef.clear()}enforceState(Pt){Pt&&!this._created?this.create():!Pt&&this._created&&this.destroy()}}let us=(()=>{class rt{constructor(){this._defaultUsed=!1,this._caseCount=0,this._lastCaseCheckIndex=0,this._lastCasesMatched=!1}set ngSwitch(dt){this._ngSwitch=dt,0===this._caseCount&&this._updateDefaultCases(!0)}_addCase(){return this._caseCount++}_addDefault(dt){this._defaultViews||(this._defaultViews=[]),this._defaultViews.push(dt)}_matchCase(dt){const Te=dt==this._ngSwitch;return this._lastCasesMatched=this._lastCasesMatched||Te,this._lastCaseCheckIndex++,this._lastCaseCheckIndex===this._caseCount&&(this._updateDefaultCases(!this._lastCasesMatched),this._lastCaseCheckIndex=0,this._lastCasesMatched=!1),Te}_updateDefaultCases(dt){if(this._defaultViews&&dt!==this._defaultUsed){this._defaultUsed=dt;for(let Te=0;Te{class rt{constructor(dt,Te,Me){this.ngSwitch=Me,Me._addCase(),this._view=new Is(dt,Te)}ngDoCheck(){this._view.enforceState(this.ngSwitch._matchCase(this.ngSwitchCase))}}return rt.\u0275fac=function(dt){return new(dt||rt)(r.Y36(r.s_b),r.Y36(r.Rgc),r.Y36(us,9))},rt.\u0275dir=r.lG2({type:rt,selectors:[["","ngSwitchCase",""]],inputs:{ngSwitchCase:"ngSwitchCase"}}),rt})(),el=(()=>{class rt{constructor(dt,Te,Me){Me._addDefault(new Is(dt,Te))}}return rt.\u0275fac=function(dt){return new(dt||rt)(r.Y36(r.s_b),r.Y36(r.Rgc),r.Y36(us,9))},rt.\u0275dir=r.lG2({type:rt,selectors:[["","ngSwitchDefault",""]]}),rt})(),Il=(()=>{class rt{constructor(dt,Te,Me){this._ngEl=dt,this._differs=Te,this._renderer=Me,this._ngStyle=null,this._differ=null}set ngStyle(dt){this._ngStyle=dt,!this._differ&&dt&&(this._differ=this._differs.find(dt).create())}ngDoCheck(){if(this._differ){const dt=this._differ.diff(this._ngStyle);dt&&this._applyChanges(dt)}}_setStyle(dt,Te){const[Me,xe]=dt.split(".");null!=(Te=null!=Te&&xe?`${Te}${xe}`:Te)?this._renderer.setStyle(this._ngEl.nativeElement,Me,Te):this._renderer.removeStyle(this._ngEl.nativeElement,Me)}_applyChanges(dt){dt.forEachRemovedItem(Te=>this._setStyle(Te.key,null)),dt.forEachAddedItem(Te=>this._setStyle(Te.key,Te.currentValue)),dt.forEachChangedItem(Te=>this._setStyle(Te.key,Te.currentValue))}}return rt.\u0275fac=function(dt){return new(dt||rt)(r.Y36(r.SBq),r.Y36(r.aQg),r.Y36(r.Qsj))},rt.\u0275dir=r.lG2({type:rt,selectors:[["","ngStyle",""]],inputs:{ngStyle:"ngStyle"}}),rt})(),fo=(()=>{class rt{constructor(dt){this._viewContainerRef=dt,this._viewRef=null,this.ngTemplateOutletContext=null,this.ngTemplateOutlet=null}ngOnChanges(dt){if(dt.ngTemplateOutlet){const Te=this._viewContainerRef;this._viewRef&&Te.remove(Te.indexOf(this._viewRef)),this._viewRef=this.ngTemplateOutlet?Te.createEmbeddedView(this.ngTemplateOutlet,this.ngTemplateOutletContext):null}else this._viewRef&&dt.ngTemplateOutletContext&&this.ngTemplateOutletContext&&(this._viewRef.context=this.ngTemplateOutletContext)}}return rt.\u0275fac=function(dt){return new(dt||rt)(r.Y36(r.s_b))},rt.\u0275dir=r.lG2({type:rt,selectors:[["","ngTemplateOutlet",""]],inputs:{ngTemplateOutletContext:"ngTemplateOutletContext",ngTemplateOutlet:"ngTemplateOutlet"},features:[r.TTD]}),rt})();function Ao(rt,Pt){return Error(`InvalidPipeArgument: '${Pt}' for pipe '${(0,r.AaK)(rt)}'`)}class fs{createSubscription(Pt,dt){return Pt.subscribe({next:dt,error:Te=>{throw Te}})}dispose(Pt){Pt.unsubscribe()}onDestroy(Pt){Pt.unsubscribe()}}class Ca{createSubscription(Pt,dt){return Pt.then(dt,Te=>{throw Te})}dispose(Pt){}onDestroy(Pt){}}const Ra=new Ca,pl=new fs;let Ws=(()=>{class rt{constructor(dt){this._ref=dt,this._latestValue=null,this._subscription=null,this._obj=null,this._strategy=null}ngOnDestroy(){this._subscription&&this._dispose()}transform(dt){return this._obj?dt!==this._obj?(this._dispose(),this.transform(dt)):this._latestValue:(dt&&this._subscribe(dt),this._latestValue)}_subscribe(dt){this._obj=dt,this._strategy=this._selectStrategy(dt),this._subscription=this._strategy.createSubscription(dt,Te=>this._updateLatestValue(dt,Te))}_selectStrategy(dt){if((0,r.QGY)(dt))return Ra;if((0,r.F4k)(dt))return pl;throw Ao(rt,dt)}_dispose(){this._strategy.dispose(this._subscription),this._latestValue=null,this._subscription=null,this._obj=null}_updateLatestValue(dt,Te){dt===this._obj&&(this._latestValue=Te,this._ref.markForCheck())}}return rt.\u0275fac=function(dt){return new(dt||rt)(r.Y36(r.sBO,16))},rt.\u0275pipe=r.Yjl({name:"async",type:rt,pure:!1}),rt})(),Po=(()=>{class rt{transform(dt){if(null==dt)return null;if("string"!=typeof dt)throw Ao(rt,dt);return dt.toLowerCase()}}return rt.\u0275fac=function(dt){return new(dt||rt)},rt.\u0275pipe=r.Yjl({name:"lowercase",type:rt,pure:!0}),rt})();const bo=/(?:[0-9A-Za-z\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0560-\u0588\u05D0-\u05EA\u05EF-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u0860-\u086A\u0870-\u0887\u0889-\u088E\u08A0-\u08C9\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u09FC\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0AF9\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C5D\u0C60\u0C61\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D04-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D5F-\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81\u0E82\u0E84\u0E86-\u0E8A\u0E8C-\u0EA3\u0EA5\u0EA7-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16F1-\u16F8\u1700-\u1711\u171F-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1878\u1880-\u1884\u1887-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4C\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1C80-\u1C88\u1C90-\u1CBA\u1CBD-\u1CBF\u1CE9-\u1CEC\u1CEE-\u1CF3\u1CF5\u1CF6\u1CFA\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2183\u2184\u2C00-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005\u3006\u3031-\u3035\u303B\u303C\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312F\u3131-\u318E\u31A0-\u31BF\u31F0-\u31FF\u3400-\u4DBF\u4E00-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6E5\uA717-\uA71F\uA722-\uA788\uA78B-\uA7CA\uA7D0\uA7D1\uA7D3\uA7D5-\uA7D9\uA7F2-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA8FD\uA8FE\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uA9E0-\uA9E4\uA9E6-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB69\uAB70-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]|\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDE80-\uDE9C\uDEA0-\uDED0\uDF00-\uDF1F\uDF2D-\uDF40\uDF42-\uDF49\uDF50-\uDF75\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF]|\uD801[\uDC00-\uDC9D\uDCB0-\uDCD3\uDCD8-\uDCFB\uDD00-\uDD27\uDD30-\uDD63\uDD70-\uDD7A\uDD7C-\uDD8A\uDD8C-\uDD92\uDD94\uDD95\uDD97-\uDDA1\uDDA3-\uDDB1\uDDB3-\uDDB9\uDDBB\uDDBC\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67\uDF80-\uDF85\uDF87-\uDFB0\uDFB2-\uDFBA]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC60-\uDC76\uDC80-\uDC9E\uDCE0-\uDCF2\uDCF4\uDCF5\uDD00-\uDD15\uDD20-\uDD39\uDD80-\uDDB7\uDDBE\uDDBF\uDE00\uDE10-\uDE13\uDE15-\uDE17\uDE19-\uDE35\uDE60-\uDE7C\uDE80-\uDE9C\uDEC0-\uDEC7\uDEC9-\uDEE4\uDF00-\uDF35\uDF40-\uDF55\uDF60-\uDF72\uDF80-\uDF91]|\uD803[\uDC00-\uDC48\uDC80-\uDCB2\uDCC0-\uDCF2\uDD00-\uDD23\uDE80-\uDEA9\uDEB0\uDEB1\uDF00-\uDF1C\uDF27\uDF30-\uDF45\uDF70-\uDF81\uDFB0-\uDFC4\uDFE0-\uDFF6]|\uD804[\uDC03-\uDC37\uDC71\uDC72\uDC75\uDC83-\uDCAF\uDCD0-\uDCE8\uDD03-\uDD26\uDD44\uDD47\uDD50-\uDD72\uDD76\uDD83-\uDDB2\uDDC1-\uDDC4\uDDDA\uDDDC\uDE00-\uDE11\uDE13-\uDE2B\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEDE\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3D\uDF50\uDF5D-\uDF61]|\uD805[\uDC00-\uDC34\uDC47-\uDC4A\uDC5F-\uDC61\uDC80-\uDCAF\uDCC4\uDCC5\uDCC7\uDD80-\uDDAE\uDDD8-\uDDDB\uDE00-\uDE2F\uDE44\uDE80-\uDEAA\uDEB8\uDF00-\uDF1A\uDF40-\uDF46]|\uD806[\uDC00-\uDC2B\uDCA0-\uDCDF\uDCFF-\uDD06\uDD09\uDD0C-\uDD13\uDD15\uDD16\uDD18-\uDD2F\uDD3F\uDD41\uDDA0-\uDDA7\uDDAA-\uDDD0\uDDE1\uDDE3\uDE00\uDE0B-\uDE32\uDE3A\uDE50\uDE5C-\uDE89\uDE9D\uDEB0-\uDEF8]|\uD807[\uDC00-\uDC08\uDC0A-\uDC2E\uDC40\uDC72-\uDC8F\uDD00-\uDD06\uDD08\uDD09\uDD0B-\uDD30\uDD46\uDD60-\uDD65\uDD67\uDD68\uDD6A-\uDD89\uDD98\uDEE0-\uDEF2\uDFB0]|\uD808[\uDC00-\uDF99]|\uD809[\uDC80-\uDD43]|\uD80B[\uDF90-\uDFF0]|[\uD80C\uD81C-\uD820\uD822\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872\uD874-\uD879\uD880-\uD883][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2E]|\uD811[\uDC00-\uDE46]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDE70-\uDEBE\uDED0-\uDEED\uDF00-\uDF2F\uDF40-\uDF43\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDE40-\uDE7F\uDF00-\uDF4A\uDF50\uDF93-\uDF9F\uDFE0\uDFE1\uDFE3]|\uD821[\uDC00-\uDFF7]|\uD823[\uDC00-\uDCD5\uDD00-\uDD08]|\uD82B[\uDFF0-\uDFF3\uDFF5-\uDFFB\uDFFD\uDFFE]|\uD82C[\uDC00-\uDD22\uDD50-\uDD52\uDD64-\uDD67\uDD70-\uDEFB]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB]|\uD837[\uDF00-\uDF1E]|\uD838[\uDD00-\uDD2C\uDD37-\uDD3D\uDD4E\uDE90-\uDEAD\uDEC0-\uDEEB]|\uD839[\uDFE0-\uDFE6\uDFE8-\uDFEB\uDFED\uDFEE\uDFF0-\uDFFE]|\uD83A[\uDC00-\uDCC4\uDD00-\uDD43\uDD4B]|\uD83B[\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD869[\uDC00-\uDEDF\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF38\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1\uDEB0-\uDFFF]|\uD87A[\uDC00-\uDFE0]|\uD87E[\uDC00-\uDE1D]|\uD884[\uDC00-\uDF4A])\S*/g;let Ls=(()=>{class rt{transform(dt){if(null==dt)return null;if("string"!=typeof dt)throw Ao(rt,dt);return dt.replace(bo,Te=>Te[0].toUpperCase()+Te.substr(1).toLowerCase())}}return rt.\u0275fac=function(dt){return new(dt||rt)},rt.\u0275pipe=r.Yjl({name:"titlecase",type:rt,pure:!0}),rt})(),ps=(()=>{class rt{transform(dt){if(null==dt)return null;if("string"!=typeof dt)throw Ao(rt,dt);return dt.toUpperCase()}}return rt.\u0275fac=function(dt){return new(dt||rt)},rt.\u0275pipe=r.Yjl({name:"uppercase",type:rt,pure:!0}),rt})(),So=(()=>{class rt{constructor(dt){this.locale=dt}transform(dt,Te="mediumDate",Me,xe){if(null==dt||""===dt||dt!=dt)return null;try{return _i(dt,Te,xe||this.locale,Me)}catch(Ct){throw Ao(rt,Ct.message)}}}return rt.\u0275fac=function(dt){return new(dt||rt)(r.Y36(r.soG,16))},rt.\u0275pipe=r.Yjl({name:"date",type:rt,pure:!0}),rt})();const $r=/#/g;let to=(()=>{class rt{constructor(dt){this._localization=dt}transform(dt,Te,Me){if(null==dt)return"";if("object"!=typeof Te||null===Te)throw Ao(rt,Te);return Te[function(rt,Pt,dt,Te){let Me=`=${rt}`;if(Pt.indexOf(Me)>-1||(Me=dt.getPluralCategory(rt,Te),Pt.indexOf(Me)>-1))return Me;if(Pt.indexOf("other")>-1)return"other";throw new Error(`No plural message found for value "${rt}"`)}(dt,Object.keys(Te),this._localization,Me)].replace($r,dt.toString())}}return rt.\u0275fac=function(dt){return new(dt||rt)(r.Y36(Rt,16))},rt.\u0275pipe=r.Yjl({name:"i18nPlural",type:rt,pure:!0}),rt})(),sn=(()=>{class rt{transform(dt){return JSON.stringify(dt,null,2)}}return rt.\u0275fac=function(dt){return new(dt||rt)},rt.\u0275pipe=r.Yjl({name:"json",type:rt,pure:!1}),rt})(),$e=(()=>{class rt{constructor(dt){this.differs=dt,this.keyValues=[],this.compareFn=Lt}transform(dt,Te=Lt){if(!dt||!(dt instanceof Map)&&"object"!=typeof dt)return null;this.differ||(this.differ=this.differs.find(dt).create());const Me=this.differ.diff(dt),xe=Te!==this.compareFn;return Me&&(this.keyValues=[],Me.forEachItem(Ct=>{this.keyValues.push(function(rt,Pt){return{key:rt,value:Pt}}(Ct.key,Ct.currentValue))})),(Me||xe)&&(this.keyValues.sort(Te),this.compareFn=Te),this.keyValues}}return rt.\u0275fac=function(dt){return new(dt||rt)(r.Y36(r.aQg,16))},rt.\u0275pipe=r.Yjl({name:"keyvalue",type:rt,pure:!1}),rt})();function Lt(rt,Pt){const dt=rt.key,Te=Pt.key;if(dt===Te)return 0;if(void 0===dt)return 1;if(void 0===Te)return-1;if(null===dt)return 1;if(null===Te)return-1;if("string"==typeof dt&&"string"==typeof Te)return dt{class rt{constructor(dt){this._locale=dt}transform(dt,Te,Me){if(!xi(dt))return null;Me=Me||this._locale;try{return function(rt,Pt,dt){return lr(rt,uo(Ur(Pt,Ve.Decimal),Zn(Pt,He.MinusSign)),Pt,He.Group,He.Decimal,dt)}(ts(dt),Me,Te)}catch(xe){throw Ao(rt,xe.message)}}}return rt.\u0275fac=function(dt){return new(dt||rt)(r.Y36(r.soG,16))},rt.\u0275pipe=r.Yjl({name:"number",type:rt,pure:!0}),rt})(),ti=(()=>{class rt{constructor(dt){this._locale=dt}transform(dt,Te,Me){if(!xi(dt))return null;Me=Me||this._locale;try{return function(rt,Pt,dt){return lr(rt,uo(Ur(Pt,Ve.Percent),Zn(Pt,He.MinusSign)),Pt,He.Group,He.Decimal,dt,!0).replace(new RegExp("%","g"),Zn(Pt,He.PercentSign))}(ts(dt),Me,Te)}catch(xe){throw Ao(rt,xe.message)}}}return rt.\u0275fac=function(dt){return new(dt||rt)(r.Y36(r.soG,16))},rt.\u0275pipe=r.Yjl({name:"percent",type:rt,pure:!0}),rt})();function xi(rt){return!(null==rt||""===rt||rt!=rt)}function ts(rt){if("string"==typeof rt&&!isNaN(Number(rt)-parseFloat(rt)))return Number(rt);if("number"!=typeof rt)throw new Error(`${rt} is not a number`);return rt}let Eo=(()=>{class rt{}return rt.\u0275fac=function(dt){return new(dt||rt)},rt.\u0275mod=r.oAB({type:rt}),rt.\u0275inj=r.cJS({providers:[{provide:Rt,useClass:mt}]}),rt})();const ba="browser";function bc(rt){return rt===ba}let Fs=(()=>{class rt{}return rt.\u0275prov=(0,r.Yz7)({token:rt,providedIn:"root",factory:()=>new dc((0,r.LFG)(y),window)}),rt})();class dc{constructor(Pt,dt){this.document=Pt,this.window=dt,this.offset=()=>[0,0]}setOffset(Pt){this.offset=Array.isArray(Pt)?()=>Pt:Pt}getScrollPosition(){return this.supportsScrolling()?[this.window.pageXOffset,this.window.pageYOffset]:[0,0]}scrollToPosition(Pt){this.supportsScrolling()&&this.window.scrollTo(Pt[0],Pt[1])}scrollToAnchor(Pt){if(!this.supportsScrolling())return;const dt=function(rt,Pt){const dt=rt.getElementById(Pt)||rt.getElementsByName(Pt)[0];if(dt)return dt;if("function"==typeof rt.createTreeWalker&&rt.body&&(rt.body.createShadowRoot||rt.body.attachShadow)){const Te=rt.createTreeWalker(rt.body,NodeFilter.SHOW_ELEMENT);let Me=Te.currentNode;for(;Me;){const xe=Me.shadowRoot;if(xe){const Ct=xe.getElementById(Pt)||xe.querySelector(`[name="${Pt}"]`);if(Ct)return Ct}Me=Te.nextNode()}}return null}(this.document,Pt);dt&&(this.scrollToElement(dt),this.attemptFocus(dt))}setHistoryScrollRestoration(Pt){if(this.supportScrollRestoration()){const dt=this.window.history;dt&&dt.scrollRestoration&&(dt.scrollRestoration=Pt)}}scrollToElement(Pt){const dt=Pt.getBoundingClientRect(),Te=dt.left+this.window.pageXOffset,Me=dt.top+this.window.pageYOffset,xe=this.offset();this.window.scrollTo(Te-xe[0],Me-xe[1])}attemptFocus(Pt){return Pt.focus(),this.document.activeElement===Pt}supportScrollRestoration(){try{if(!this.supportsScrolling())return!1;const Pt=iu(this.window.history)||iu(Object.getPrototypeOf(this.window.history));return!(!Pt||!Pt.writable&&!Pt.set)}catch(Pt){return!1}}supportsScrolling(){try{return!!this.window&&!!this.window.scrollTo&&"pageXOffset"in this.window}catch(Pt){return!1}}}function iu(rt){return Object.getOwnPropertyDescriptor(rt,"scrollRestoration")}class Zl{}},58497:(v,T,i)=>{"use strict";i.d(T,{TP:()=>it,eN:()=>He,JF:()=>fi,UA:()=>Pe,LE:()=>ae});var r=i(12057),u=i(74788),p=i(25917),d=i(18891),e=i(94612),_=i(45435),y=i(88002);class S{}class A{}class N{constructor(Cn){this.normalizedNames=new Map,this.lazyUpdate=null,Cn?this.lazyInit="string"==typeof Cn?()=>{this.headers=new Map,Cn.split("\n").forEach(Wt=>{const zn=Wt.indexOf(":");if(zn>0){const rr=Wt.slice(0,zn),Fr=rr.toLowerCase(),Gn=Wt.slice(zn+1).trim();this.maybeSetNormalizedName(rr,Fr),this.headers.has(Fr)?this.headers.get(Fr).push(Gn):this.headers.set(Fr,[Gn])}})}:()=>{this.headers=new Map,Object.keys(Cn).forEach(Wt=>{let zn=Cn[Wt];const rr=Wt.toLowerCase();"string"==typeof zn&&(zn=[zn]),zn.length>0&&(this.headers.set(rr,zn),this.maybeSetNormalizedName(Wt,rr))})}:this.headers=new Map}has(Cn){return this.init(),this.headers.has(Cn.toLowerCase())}get(Cn){this.init();const Wt=this.headers.get(Cn.toLowerCase());return Wt&&Wt.length>0?Wt[0]:null}keys(){return this.init(),Array.from(this.normalizedNames.values())}getAll(Cn){return this.init(),this.headers.get(Cn.toLowerCase())||null}append(Cn,Wt){return this.clone({name:Cn,value:Wt,op:"a"})}set(Cn,Wt){return this.clone({name:Cn,value:Wt,op:"s"})}delete(Cn,Wt){return this.clone({name:Cn,value:Wt,op:"d"})}maybeSetNormalizedName(Cn,Wt){this.normalizedNames.has(Wt)||this.normalizedNames.set(Wt,Cn)}init(){this.lazyInit&&(this.lazyInit instanceof N?this.copyFrom(this.lazyInit):this.lazyInit(),this.lazyInit=null,this.lazyUpdate&&(this.lazyUpdate.forEach(Cn=>this.applyUpdate(Cn)),this.lazyUpdate=null))}copyFrom(Cn){Cn.init(),Array.from(Cn.headers.keys()).forEach(Wt=>{this.headers.set(Wt,Cn.headers.get(Wt)),this.normalizedNames.set(Wt,Cn.normalizedNames.get(Wt))})}clone(Cn){const Wt=new N;return Wt.lazyInit=this.lazyInit&&this.lazyInit instanceof N?this.lazyInit:this,Wt.lazyUpdate=(this.lazyUpdate||[]).concat([Cn]),Wt}applyUpdate(Cn){const Wt=Cn.name.toLowerCase();switch(Cn.op){case"a":case"s":let zn=Cn.value;if("string"==typeof zn&&(zn=[zn]),0===zn.length)return;this.maybeSetNormalizedName(Cn.name,Wt);const rr=("a"===Cn.op?this.headers.get(Wt):void 0)||[];rr.push(...zn),this.headers.set(Wt,rr);break;case"d":const Fr=Cn.value;if(Fr){let Gn=this.headers.get(Wt);if(!Gn)return;Gn=Gn.filter(Jr=>-1===Fr.indexOf(Jr)),0===Gn.length?(this.headers.delete(Wt),this.normalizedNames.delete(Wt)):this.headers.set(Wt,Gn)}else this.headers.delete(Wt),this.normalizedNames.delete(Wt)}}forEach(Cn){this.init(),Array.from(this.normalizedNames.keys()).forEach(Wt=>Cn(this.normalizedNames.get(Wt),this.headers.get(Wt)))}}class L{encodeKey(Cn){return ee(Cn)}encodeValue(Cn){return ee(Cn)}decodeKey(Cn){return decodeURIComponent(Cn)}decodeValue(Cn){return decodeURIComponent(Cn)}}const J=/%(\d[a-f0-9])/gi,K={40:"@","3A":":",24:"$","2C":",","3B":";","2B":"+","3D":"=","3F":"?","2F":"/"};function ee(Zr){return encodeURIComponent(Zr).replace(J,(Cn,Wt)=>{var zn;return null!==(zn=K[Wt])&&void 0!==zn?zn:Cn})}function ue(Zr){return`${Zr}`}class ae{constructor(Cn={}){if(this.updates=null,this.cloneFrom=null,this.encoder=Cn.encoder||new L,Cn.fromString){if(Cn.fromObject)throw new Error("Cannot specify both fromString and fromObject.");this.map=function(Zr,Cn){const Wt=new Map;return Zr.length>0&&Zr.replace(/^\?/,"").split("&").forEach(rr=>{const Fr=rr.indexOf("="),[Gn,Jr]=-1==Fr?[Cn.decodeKey(rr),""]:[Cn.decodeKey(rr.slice(0,Fr)),Cn.decodeValue(rr.slice(Fr+1))],_i=Wt.get(Gn)||[];_i.push(Jr),Wt.set(Gn,_i)}),Wt}(Cn.fromString,this.encoder)}else Cn.fromObject?(this.map=new Map,Object.keys(Cn.fromObject).forEach(Wt=>{const zn=Cn.fromObject[Wt];this.map.set(Wt,Array.isArray(zn)?zn:[zn])})):this.map=null}has(Cn){return this.init(),this.map.has(Cn)}get(Cn){this.init();const Wt=this.map.get(Cn);return Wt?Wt[0]:null}getAll(Cn){return this.init(),this.map.get(Cn)||null}keys(){return this.init(),Array.from(this.map.keys())}append(Cn,Wt){return this.clone({param:Cn,value:Wt,op:"a"})}appendAll(Cn){const Wt=[];return Object.keys(Cn).forEach(zn=>{const rr=Cn[zn];Array.isArray(rr)?rr.forEach(Fr=>{Wt.push({param:zn,value:Fr,op:"a"})}):Wt.push({param:zn,value:rr,op:"a"})}),this.clone(Wt)}set(Cn,Wt){return this.clone({param:Cn,value:Wt,op:"s"})}delete(Cn,Wt){return this.clone({param:Cn,value:Wt,op:"d"})}toString(){return this.init(),this.keys().map(Cn=>{const Wt=this.encoder.encodeKey(Cn);return this.map.get(Cn).map(zn=>Wt+"="+this.encoder.encodeValue(zn)).join("&")}).filter(Cn=>""!==Cn).join("&")}clone(Cn){const Wt=new ae({encoder:this.encoder});return Wt.cloneFrom=this.cloneFrom||this,Wt.updates=(this.updates||[]).concat(Cn),Wt}init(){null===this.map&&(this.map=new Map),null!==this.cloneFrom&&(this.cloneFrom.init(),this.cloneFrom.keys().forEach(Cn=>this.map.set(Cn,this.cloneFrom.map.get(Cn))),this.updates.forEach(Cn=>{switch(Cn.op){case"a":case"s":const Wt=("a"===Cn.op?this.map.get(Cn.param):void 0)||[];Wt.push(ue(Cn.value)),this.map.set(Cn.param,Wt);break;case"d":if(void 0===Cn.value){this.map.delete(Cn.param);break}{let zn=this.map.get(Cn.param)||[];const rr=zn.indexOf(ue(Cn.value));-1!==rr&&zn.splice(rr,1),zn.length>0?this.map.set(Cn.param,zn):this.map.delete(Cn.param)}}}),this.cloneFrom=this.updates=null)}}class se{constructor(){this.map=new Map}set(Cn,Wt){return this.map.set(Cn,Wt),this}get(Cn){return this.map.has(Cn)||this.map.set(Cn,Cn.defaultValue()),this.map.get(Cn)}delete(Cn){return this.map.delete(Cn),this}keys(){return this.map.keys()}}function ie(Zr){return"undefined"!=typeof ArrayBuffer&&Zr instanceof ArrayBuffer}function he(Zr){return"undefined"!=typeof Blob&&Zr instanceof Blob}function ge(Zr){return"undefined"!=typeof FormData&&Zr instanceof FormData}class ce{constructor(Cn,Wt,zn,rr){let Fr;if(this.url=Wt,this.body=null,this.reportProgress=!1,this.withCredentials=!1,this.responseType="json",this.method=Cn.toUpperCase(),function(Zr){switch(Zr){case"DELETE":case"GET":case"HEAD":case"OPTIONS":case"JSONP":return!1;default:return!0}}(this.method)||rr?(this.body=void 0!==zn?zn:null,Fr=rr):Fr=zn,Fr&&(this.reportProgress=!!Fr.reportProgress,this.withCredentials=!!Fr.withCredentials,Fr.responseType&&(this.responseType=Fr.responseType),Fr.headers&&(this.headers=Fr.headers),Fr.context&&(this.context=Fr.context),Fr.params&&(this.params=Fr.params)),this.headers||(this.headers=new N),this.context||(this.context=new se),this.params){const Gn=this.params.toString();if(0===Gn.length)this.urlWithParams=Wt;else{const Jr=Wt.indexOf("?");this.urlWithParams=Wt+(-1===Jr?"?":Jrgn.set(yn,Cn.setHeaders[yn]),wi)),Cn.setParams&&(br=Object.keys(Cn.setParams).reduce((gn,yn)=>gn.set(yn,Cn.setParams[yn]),br)),new ce(zn,rr,Gn,{params:br,headers:wi,context:Dr,reportProgress:_i,responseType:Fr,withCredentials:Jr})}}var lt=(()=>((lt=lt||{})[lt.Sent=0]="Sent",lt[lt.UploadProgress=1]="UploadProgress",lt[lt.ResponseHeader=2]="ResponseHeader",lt[lt.DownloadProgress=3]="DownloadProgress",lt[lt.Response=4]="Response",lt[lt.User=5]="User",lt))();class Ve{constructor(Cn,Wt=200,zn="OK"){this.headers=Cn.headers||new N,this.status=void 0!==Cn.status?Cn.status:Wt,this.statusText=Cn.statusText||zn,this.url=Cn.url||null,this.ok=this.status>=200&&this.status<300}}class ze extends Ve{constructor(Cn={}){super(Cn),this.type=lt.ResponseHeader}clone(Cn={}){return new ze({headers:Cn.headers||this.headers,status:void 0!==Cn.status?Cn.status:this.status,statusText:Cn.statusText||this.statusText,url:Cn.url||this.url||void 0})}}class Be extends Ve{constructor(Cn={}){super(Cn),this.type=lt.Response,this.body=void 0!==Cn.body?Cn.body:null}clone(Cn={}){return new Be({body:void 0!==Cn.body?Cn.body:this.body,headers:Cn.headers||this.headers,status:void 0!==Cn.status?Cn.status:this.status,statusText:Cn.statusText||this.statusText,url:Cn.url||this.url||void 0})}}class Pe extends Ve{constructor(Cn){super(Cn,0,"Unknown Error"),this.name="HttpErrorResponse",this.ok=!1,this.message=this.status>=200&&this.status<300?`Http failure during parsing for ${Cn.url||"(unknown url)"}`:`Http failure response for ${Cn.url||"(unknown url)"}: ${Cn.status} ${Cn.statusText}`,this.error=Cn.error||null}}function je(Zr,Cn){return{body:Cn,headers:Zr.headers,context:Zr.context,observe:Zr.observe,params:Zr.params,reportProgress:Zr.reportProgress,responseType:Zr.responseType,withCredentials:Zr.withCredentials}}let He=(()=>{class Zr{constructor(Wt){this.handler=Wt}request(Wt,zn,rr={}){let Fr;if(Wt instanceof ce)Fr=Wt;else{let _i,wi;_i=rr.headers instanceof N?rr.headers:new N(rr.headers),rr.params&&(wi=rr.params instanceof ae?rr.params:new ae({fromObject:rr.params})),Fr=new ce(Wt,zn,void 0!==rr.body?rr.body:null,{headers:_i,context:rr.context,params:wi,reportProgress:rr.reportProgress,responseType:rr.responseType||"json",withCredentials:rr.withCredentials})}const Gn=(0,p.of)(Fr).pipe((0,e.b)(_i=>this.handler.handle(_i)));if(Wt instanceof ce||"events"===rr.observe)return Gn;const Jr=Gn.pipe((0,_.h)(_i=>_i instanceof Be));switch(rr.observe||"body"){case"body":switch(Fr.responseType){case"arraybuffer":return Jr.pipe((0,y.U)(_i=>{if(null!==_i.body&&!(_i.body instanceof ArrayBuffer))throw new Error("Response is not an ArrayBuffer.");return _i.body}));case"blob":return Jr.pipe((0,y.U)(_i=>{if(null!==_i.body&&!(_i.body instanceof Blob))throw new Error("Response is not a Blob.");return _i.body}));case"text":return Jr.pipe((0,y.U)(_i=>{if(null!==_i.body&&"string"!=typeof _i.body)throw new Error("Response is not a string.");return _i.body}));case"json":default:return Jr.pipe((0,y.U)(_i=>_i.body))}case"response":return Jr;default:throw new Error(`Unreachable: unhandled observe type ${rr.observe}}`)}}delete(Wt,zn={}){return this.request("DELETE",Wt,zn)}get(Wt,zn={}){return this.request("GET",Wt,zn)}head(Wt,zn={}){return this.request("HEAD",Wt,zn)}jsonp(Wt,zn){return this.request("JSONP",Wt,{params:(new ae).append(zn,"JSONP_CALLBACK"),observe:"body",responseType:"json"})}options(Wt,zn={}){return this.request("OPTIONS",Wt,zn)}patch(Wt,zn,rr={}){return this.request("PATCH",Wt,je(rr,zn))}post(Wt,zn,rr={}){return this.request("POST",Wt,je(rr,zn))}put(Wt,zn,rr={}){return this.request("PUT",Wt,je(rr,zn))}}return Zr.\u0275fac=function(Wt){return new(Wt||Zr)(u.LFG(S))},Zr.\u0275prov=u.Yz7({token:Zr,factory:Zr.\u0275fac}),Zr})();class Vt{constructor(Cn,Wt){this.next=Cn,this.interceptor=Wt}handle(Cn){return this.interceptor.intercept(Cn,this.next)}}const it=new u.OlP("HTTP_INTERCEPTORS");let tn=(()=>{class Zr{intercept(Wt,zn){return zn.handle(Wt)}}return Zr.\u0275fac=function(Wt){return new(Wt||Zr)},Zr.\u0275prov=u.Yz7({token:Zr,factory:Zr.\u0275fac}),Zr})();const Xt=/^\)\]\}',?\n/;let Ur=(()=>{class Zr{constructor(Wt){this.xhrFactory=Wt}handle(Wt){if("JSONP"===Wt.method)throw new Error("Attempted to construct Jsonp request without HttpClientJsonpModule installed.");return new d.y(zn=>{const rr=this.xhrFactory.build();if(rr.open(Wt.method,Wt.urlWithParams),Wt.withCredentials&&(rr.withCredentials=!0),Wt.headers.forEach((yn,gr)=>rr.setRequestHeader(yn,gr.join(","))),Wt.headers.has("Accept")||rr.setRequestHeader("Accept","application/json, text/plain, */*"),!Wt.headers.has("Content-Type")){const yn=Wt.detectContentTypeHeader();null!==yn&&rr.setRequestHeader("Content-Type",yn)}if(Wt.responseType){const yn=Wt.responseType.toLowerCase();rr.responseType="json"!==yn?yn:"text"}const Fr=Wt.serializeBody();let Gn=null;const Jr=()=>{if(null!==Gn)return Gn;const yn=1223===rr.status?204:rr.status,gr=rr.statusText||"OK",Jt=new N(rr.getAllResponseHeaders()),Vn=function(Zr){return"responseURL"in Zr&&Zr.responseURL?Zr.responseURL:/^X-Request-URL:/m.test(Zr.getAllResponseHeaders())?Zr.getResponseHeader("X-Request-URL"):null}(rr)||Wt.url;return Gn=new ze({headers:Jt,status:yn,statusText:gr,url:Vn}),Gn},_i=()=>{let{headers:yn,status:gr,statusText:Jt,url:Vn}=Jr(),mr=null;204!==gr&&(mr=void 0===rr.response?rr.responseText:rr.response),0===gr&&(gr=mr?200:0);let Dn=gr>=200&&gr<300;if("json"===Wt.responseType&&"string"==typeof mr){const Pr=mr;mr=mr.replace(Xt,"");try{mr=""!==mr?JSON.parse(mr):null}catch(Yt){mr=Pr,Dn&&(Dn=!1,mr={error:Yt,text:mr})}}Dn?(zn.next(new Be({body:mr,headers:yn,status:gr,statusText:Jt,url:Vn||void 0})),zn.complete()):zn.error(new Pe({error:mr,headers:yn,status:gr,statusText:Jt,url:Vn||void 0}))},wi=yn=>{const{url:gr}=Jr(),Jt=new Pe({error:yn,status:rr.status||0,statusText:rr.statusText||"Unknown Error",url:gr||void 0});zn.error(Jt)};let br=!1;const Dr=yn=>{br||(zn.next(Jr()),br=!0);let gr={type:lt.DownloadProgress,loaded:yn.loaded};yn.lengthComputable&&(gr.total=yn.total),"text"===Wt.responseType&&!!rr.responseText&&(gr.partialText=rr.responseText),zn.next(gr)},gn=yn=>{let gr={type:lt.UploadProgress,loaded:yn.loaded};yn.lengthComputable&&(gr.total=yn.total),zn.next(gr)};return rr.addEventListener("load",_i),rr.addEventListener("error",wi),rr.addEventListener("timeout",wi),rr.addEventListener("abort",wi),Wt.reportProgress&&(rr.addEventListener("progress",Dr),null!==Fr&&rr.upload&&rr.upload.addEventListener("progress",gn)),rr.send(Fr),zn.next({type:lt.Sent}),()=>{rr.removeEventListener("error",wi),rr.removeEventListener("abort",wi),rr.removeEventListener("load",_i),rr.removeEventListener("timeout",wi),Wt.reportProgress&&(rr.removeEventListener("progress",Dr),null!==Fr&&rr.upload&&rr.upload.removeEventListener("progress",gn)),rr.readyState!==rr.DONE&&rr.abort()}})}}return Zr.\u0275fac=function(Wt){return new(Wt||Zr)(u.LFG(r.JF))},Zr.\u0275prov=u.Yz7({token:Zr,factory:Zr.\u0275fac}),Zr})();const di=new u.OlP("XSRF_COOKIE_NAME"),Lr=new u.OlP("XSRF_HEADER_NAME");class Mr{}let Kr=(()=>{class Zr{constructor(Wt,zn,rr){this.doc=Wt,this.platform=zn,this.cookieName=rr,this.lastCookieString="",this.lastToken=null,this.parseCount=0}getToken(){if("server"===this.platform)return null;const Wt=this.doc.cookie||"";return Wt!==this.lastCookieString&&(this.parseCount++,this.lastToken=(0,r.Mx)(Wt,this.cookieName),this.lastCookieString=Wt),this.lastToken}}return Zr.\u0275fac=function(Wt){return new(Wt||Zr)(u.LFG(r.K0),u.LFG(u.Lbi),u.LFG(di))},Zr.\u0275prov=u.Yz7({token:Zr,factory:Zr.\u0275fac}),Zr})(),ei=(()=>{class Zr{constructor(Wt,zn){this.tokenService=Wt,this.headerName=zn}intercept(Wt,zn){const rr=Wt.url.toLowerCase();if("GET"===Wt.method||"HEAD"===Wt.method||rr.startsWith("http://")||rr.startsWith("https://"))return zn.handle(Wt);const Fr=this.tokenService.getToken();return null!==Fr&&!Wt.headers.has(this.headerName)&&(Wt=Wt.clone({headers:Wt.headers.set(this.headerName,Fr)})),zn.handle(Wt)}}return Zr.\u0275fac=function(Wt){return new(Wt||Zr)(u.LFG(Mr),u.LFG(Lr))},Zr.\u0275prov=u.Yz7({token:Zr,factory:Zr.\u0275fac}),Zr})(),Nn=(()=>{class Zr{constructor(Wt,zn){this.backend=Wt,this.injector=zn,this.chain=null}handle(Wt){if(null===this.chain){const zn=this.injector.get(it,[]);this.chain=zn.reduceRight((rr,Fr)=>new Vt(rr,Fr),this.backend)}return this.chain.handle(Wt)}}return Zr.\u0275fac=function(Wt){return new(Wt||Zr)(u.LFG(A),u.LFG(u.zs3))},Zr.\u0275prov=u.Yz7({token:Zr,factory:Zr.\u0275fac}),Zr})(),Yr=(()=>{class Zr{static disable(){return{ngModule:Zr,providers:[{provide:ei,useClass:tn}]}}static withOptions(Wt={}){return{ngModule:Zr,providers:[Wt.cookieName?{provide:di,useValue:Wt.cookieName}:[],Wt.headerName?{provide:Lr,useValue:Wt.headerName}:[]]}}}return Zr.\u0275fac=function(Wt){return new(Wt||Zr)},Zr.\u0275mod=u.oAB({type:Zr}),Zr.\u0275inj=u.cJS({providers:[ei,{provide:it,useExisting:ei,multi:!0},{provide:Mr,useClass:Kr},{provide:di,useValue:"XSRF-TOKEN"},{provide:Lr,useValue:"X-XSRF-TOKEN"}]}),Zr})(),fi=(()=>{class Zr{}return Zr.\u0275fac=function(Wt){return new(Wt||Zr)},Zr.\u0275mod=u.oAB({type:Zr}),Zr.\u0275inj=u.cJS({providers:[He,{provide:S,useClass:Nn},Ur,{provide:A,useExisting:Ur}],imports:[[Yr.withOptions({cookieName:"XSRF-TOKEN",headerName:"X-XSRF-TOKEN"})]]}),Zr})()},74788:(v,T,i)=>{"use strict";i.d(T,{deG:()=>vd,tb:()=>Pp,AFp:()=>N2,ip1:()=>yT,CZH:()=>Zv,hGG:()=>$T,z2F:()=>r0,sBO:()=>Kw,Sil:()=>n0,_Vd:()=>Pv,UuU:()=>nM,EJc:()=>F2,SBq:()=>og,qLn:()=>Gf,vpe:()=>Wp,gxx:()=>Jg,tBr:()=>ha,XFs:()=>Yr,OlP:()=>Jl,zs3:()=>Ac,IIB:()=>w2,ZZ4:()=>Ay,aQg:()=>Oy,soG:()=>Gy,YKP:()=>DE,v3s:()=>UD,h0i:()=>zm,PXZ:()=>FD,R0b:()=>Eh,FiY:()=>ia,r_U:()=>gD,Lbi:()=>cm,g9A:()=>D_,Qsj:()=>kw,FYo:()=>Cy,JOm:()=>Bd,Tiy:()=>xE,q3G:()=>Vs,tp0:()=>il,EAV:()=>ZD,Rgc:()=>F1,dDg:()=>AT,DyG:()=>Hf,GfV:()=>aM,i9L:()=>fp,s_b:()=>Dy,ifc:()=>Gn,eFA:()=>DT,G48:()=>RD,Gpc:()=>L,X6Q:()=>xT,_c5:()=>JD,VLi:()=>DD,c2e:()=>L2,zSh:()=>Im,wAp:()=>Ua,vHH:()=>ee,EiD:()=>Xo,mCW:()=>vf,qzn:()=>Yf,JVY:()=>bd,pB0:()=>Nh,eBb:()=>th,L6k:()=>Rh,LAX:()=>nh,cg1:()=>fE,Tjo:()=>WD,kL8:()=>wC,yhl:()=>eh,dqk:()=>Dr,sIi:()=>Hm,CqO:()=>qb,QGY:()=>Zm,F4k:()=>kS,RDi:()=>tl,AaK:()=>S,z3N:()=>kd,qOj:()=>T1,TTD:()=>Eo,_Bn:()=>Pw,xp6:()=>Fa,uIk:()=>A1,Tol:()=>rC,Gre:()=>gC,MT6:()=>mC,DjV:()=>vC,ekj:()=>oE,Suo:()=>a2,Xpm:()=>mi,lG2:()=>lo,Yz7:()=>xt,cJS:()=>Zn,oAB:()=>Fn,Yjl:()=>vo,Y36:()=>D1,_UZ:()=>LS,GkF:()=>FS,BQk:()=>Kb,ynx:()=>Xb,qZA:()=>Qb,TgZ:()=>Jb,EpF:()=>fy,n5z:()=>$f,Ikx:()=>cE,SDv:()=>QC,QtT:()=>KC,DtL:()=>XC,N_p:()=>EE,pQV:()=>TE,Zx4:()=>qC,tHW:()=>Ty,LFG:()=>xn,$8M:()=>Sl,NdJ:()=>eE,CRH:()=>l2,oxw:()=>BS,ALo:()=>e2,lcZ:()=>t2,xi3:()=>bh,Dn7:()=>n2,Hsn:()=>ZS,F$t:()=>YS,Q6J:()=>zb,s9C:()=>nE,MGl:()=>py,hYB:()=>xg,DdM:()=>WE,VKq:()=>JE,WLB:()=>z1,kEZ:()=>WM,l5B:()=>e_,qbA:()=>JM,iGM:()=>o2,MAs:()=>Ke,pYS:()=>Vf,Jf7:()=>Uh,CHM:()=>Aa,oJD:()=>_c,uOi:()=>Hd,LSH:()=>wu,kYT:()=>ar,Udp:()=>iE,d8E:()=>dE,YNc:()=>$,W1O:()=>of,_uU:()=>uC,Oqu:()=>aE,hij:()=>gy,AsE:()=>lE,lnq:()=>uE,Gf:()=>s2});var r=i(79765),u=i(75319),p=i(18891),d=i(66682),e=i(18819);function _(a){for(let l in a)if(a[l]===_)return l;throw Error("Could not find renamed property on target object.")}function y(a,l){for(const f in l)l.hasOwnProperty(f)&&!a.hasOwnProperty(f)&&(a[f]=l[f])}function S(a){if("string"==typeof a)return a;if(Array.isArray(a))return"["+a.map(S).join(", ")+"]";if(null==a)return""+a;if(a.overriddenName)return`${a.overriddenName}`;if(a.name)return`${a.name}`;const l=a.toString();if(null==l)return""+l;const f=l.indexOf("\n");return-1===f?l:l.substring(0,f)}function A(a,l){return null==a||""===a?null===l?"":l:null==l||""===l?a:a+" "+l}const N=_({__forward_ref__:_});function L(a){return a.__forward_ref__=L,a.toString=function(){return S(this())},a}function Z(a){return J(a)?a():a}function J(a){return"function"==typeof a&&a.hasOwnProperty(N)&&a.__forward_ref__===L}class ee extends Error{constructor(l,f){super(function(a,l){return`${a?`NG0${a}: `:""}${l}`}(l,f)),this.code=l}}function H(a){return"string"==typeof a?a:null==a?"":String(a)}function se(a){return"function"==typeof a?a.name||a.toString():"object"==typeof a&&null!=a&&"function"==typeof a.type?a.type.name||a.type.toString():H(a)}function ge(a,l){const f=l?` in ${l}`:"";throw new ee("201",`No provider for ${se(a)} found${f}`)}function Ut(a,l,f,m){throw new Error(`ASSERTION ERROR: ${a}`+(null==m?"":` [Expected=> ${f} ${m} ${l} <=Actual]`))}function xt(a){return{token:a.token,providedIn:a.providedIn||null,factory:a.factory,value:void 0}}function Zn(a){return{providers:a.providers||[],imports:a.imports||[]}}function Ur(a){return di(a,ei)||di(a,$n)}function di(a,l){return a.hasOwnProperty(l)?a[l]:null}function Kr(a){return a&&(a.hasOwnProperty(Nn)||a.hasOwnProperty(Br))?a[Nn]:null}const ei=_({\u0275prov:_}),Nn=_({\u0275inj:_}),$n=_({ngInjectableDef:_}),Br=_({ngInjectorDef:_});var Yr=(()=>((Yr=Yr||{})[Yr.Default=0]="Default",Yr[Yr.Host=1]="Host",Yr[Yr.Self=2]="Self",Yr[Yr.SkipSelf=4]="SkipSelf",Yr[Yr.Optional=8]="Optional",Yr))();let fi;function Hi(a){const l=fi;return fi=a,l}function Zr(a,l,f){const m=Ur(a);return m&&"root"==m.providedIn?void 0===m.value?m.value=m.factory():m.value:f&Yr.Optional?null:void 0!==l?l:void ge(S(a),"Injector")}function Wt(a){return{toString:a}.toString()}var zn=(()=>((zn=zn||{})[zn.OnPush=0]="OnPush",zn[zn.Default=1]="Default",zn))(),Gn=(()=>((Gn=Gn||{})[Gn.Emulated=0]="Emulated",Gn[Gn.None=2]="None",Gn[Gn.ShadowDom=3]="ShadowDom",Gn))();const Jr="undefined"!=typeof globalThis&&globalThis,_i="undefined"!=typeof window&&window,wi="undefined"!=typeof self&&"undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope&&self,Dr=Jr||"undefined"!=typeof global&&global||_i||wi,gr={},Jt=[],Vn=_({\u0275cmp:_}),mr=_({\u0275dir:_}),Dn=_({\u0275pipe:_}),Pr=_({\u0275mod:_}),Yt=_({\u0275loc:_}),_n=_({\u0275fac:_}),Ge=_({__NG_ELEMENT_ID__:_});let kr=0;function mi(a){return Wt(()=>{const f={},m={type:a.type,providersResolver:null,decls:a.decls,vars:a.vars,factory:null,template:a.template||null,consts:a.consts||null,ngContentSelectors:a.ngContentSelectors,hostBindings:a.hostBindings||null,hostVars:a.hostVars||0,hostAttrs:a.hostAttrs||null,contentQueries:a.contentQueries||null,declaredInputs:f,inputs:null,outputs:null,exportAs:a.exportAs||null,onPush:a.changeDetection===zn.OnPush,directiveDefs:null,pipeDefs:null,selectors:a.selectors||Jt,viewQuery:a.viewQuery||null,features:a.features||null,data:a.data||{},encapsulation:a.encapsulation||Gn.Emulated,id:"c",styles:a.styles||Jt,_:null,setInput:null,schemas:a.schemas||null,tView:null},M=a.directives,k=a.features,te=a.pipes;return m.id+=kr++,m.inputs=Wi(a.inputs,f),m.outputs=Wi(a.outputs),k&&k.forEach(le=>le(m)),m.directiveDefs=M?()=>("function"==typeof M?M():M).map(Er):null,m.pipeDefs=te?()=>("function"==typeof te?te():te).map(Wr):null,m})}function Er(a){return Co(a)||function(a){return a[mr]||null}(a)}function Wr(a){return function(a){return a[Dn]||null}(a)}const dr={};function Fn(a){return Wt(()=>{const l={type:a.type,bootstrap:a.bootstrap||Jt,declarations:a.declarations||Jt,imports:a.imports||Jt,exports:a.exports||Jt,transitiveCompileScopes:null,schemas:a.schemas||null,id:a.id||null};return null!=a.id&&(dr[a.id]=a.type),l})}function ar(a,l){return Wt(()=>{const f=jo(a,!0);f.declarations=l.declarations||Jt,f.imports=l.imports||Jt,f.exports=l.exports||Jt})}function Wi(a,l){if(null==a)return gr;const f={};for(const m in a)if(a.hasOwnProperty(m)){let M=a[m],k=M;Array.isArray(M)&&(k=M[1],M=M[0]),f[M]=m,l&&(l[M]=k)}return f}const lo=mi;function vo(a){return{type:a.type,name:a.name,factory:null,pure:!1!==a.pure,onDestroy:a.type.prototype.ngOnDestroy||null}}function Co(a){return a[Vn]||null}function jo(a,l){const f=a[Pr]||null;if(!f&&!0===l)throw new Error(`Type ${S(a)} does not have '\u0275mod' property.`);return f}function ca(a){return Array.isArray(a)&&"object"==typeof a[1]}function $s(a){return Array.isArray(a)&&!0===a[1]}function da(a){return 0!=(8&a.flags)}function Il(a){return 2==(2&a.flags)}function fo(a){return 1==(1&a.flags)}function Ya(a){return null!==a.template}function Ao(a){return 0!=(512&a[2])}function wo(a,l){return a.hasOwnProperty(_n)?a[_n]:null}class ko{constructor(l,f,m){this.previousValue=l,this.currentValue=f,this.firstChange=m}isFirstChange(){return this.firstChange}}function Eo(){return ba}function ba(a){return a.type.prototype.ngOnChanges&&(a.setInput=tc),sl}function sl(){const a=bc(this),l=null==a?void 0:a.current;if(l){const f=a.previous;if(f===gr)a.previous=l;else for(let m in l)f[m]=l[m];a.current=null,this.ngOnChanges(l)}}function tc(a,l,f,m){const M=bc(a)||function(a,l){return a[Nu]=l}(a,{previous:gr,current:null}),k=M.current||(M.current={}),te=M.previous,le=this.declaredInputs[f],Ne=te[le];k[le]=new ko(Ne&&Ne.currentValue,l,te===gr),a[m]=l}Eo.ngInherit=!0;const Nu="__ngSimpleChanges__";function bc(a){return a[Nu]||null}let iu;function tl(a){iu=a}function Su(){return void 0!==iu?iu:"undefined"!=typeof document?document:void 0}function rt(a){return!!a.listen}const dt={createRenderer:(a,l)=>Su()};function Me(a){for(;Array.isArray(a);)a=a[0];return a}function ur(a,l){return Me(l[a])}function Qi(a,l){return Me(l[a.index])}function ms(a,l){return a.data[l]}function hs(a,l){return a[l]}function Ts(a,l){const f=l[a];return ca(f)?f:f[0]}function Ma(a){return 4==(4&a[2])}function au(a){return 128==(128&a[2])}function Rl(a,l){return null==l?null:a[l]}function nc(a){a[18]=0}function Al(a,l){a[5]+=l;let f=a,m=a[3];for(;null!==m&&(1===l&&1===f[5]||-1===l&&0===f[5]);)m[5]+=l,f=m,m=m[3]}const vs={lFrame:Or(null),bindingsEnabled:!0,isInCheckNoChangesMode:!1};function kc(){return vs.bindingsEnabled}function Li(){return vs.lFrame.lView}function sa(){return vs.lFrame.tView}function Aa(a){return vs.lFrame.contextLView=a,a[8]}function Ss(){let a=$u();for(;null!==a&&64===a.type;)a=a.parent;return a}function $u(){return vs.lFrame.currentTNode}function yl(){const a=vs.lFrame,l=a.currentTNode;return a.isParent?l:l.parent}function Mu(a,l){const f=vs.lFrame;f.currentTNode=a,f.isParent=l}function yu(){return vs.lFrame.isParent}function lu(){vs.lFrame.isParent=!1}function Uu(){return vs.isInCheckNoChangesMode}function Bo(a){vs.isInCheckNoChangesMode=a}function uu(){const a=vs.lFrame;let l=a.bindingRootIndex;return-1===l&&(l=a.bindingRootIndex=a.tView.bindingStartIndex),l}function wr(){return vs.lFrame.bindingIndex}function pu(){return vs.lFrame.bindingIndex++}function aa(a){const l=vs.lFrame,f=l.bindingIndex;return l.bindingIndex=l.bindingIndex+a,f}function bl(a){vs.lFrame.inI18n=a}function El(a,l){const f=vs.lFrame;f.bindingIndex=f.bindingRootIndex=a,ks(l)}function ks(a){vs.lFrame.currentDirectiveIndex=a}function V(a){const l=vs.lFrame.currentDirectiveIndex;return-1===l?null:a[l]}function Ae(){return vs.lFrame.currentQueryIndex}function st(a){vs.lFrame.currentQueryIndex=a}function vt(a){const l=a[1];return 2===l.type?l.declTNode:1===l.type?a[6]:null}function ut(a,l,f){if(f&Yr.SkipSelf){let M=l,k=a;for(;!(M=M.parent,null!==M||f&Yr.Host||(M=vt(k),null===M||(k=k[15],10&M.type))););if(null===M)return!1;l=M,a=k}const m=vs.lFrame=mn();return m.currentTNode=l,m.lView=a,!0}function un(a){const l=mn(),f=a[1];vs.lFrame=l,l.currentTNode=f.firstChild,l.lView=a,l.tView=f,l.contextLView=a,l.bindingIndex=f.bindingStartIndex,l.inI18n=!1}function mn(){const a=vs.lFrame,l=null===a?null:a.child;return null===l?Or(a):l}function Or(a){const l={currentTNode:null,isParent:!0,lView:null,tView:null,selectedIndex:-1,contextLView:null,elementDepthCount:0,currentNamespace:null,currentDirectiveIndex:-1,bindingRootIndex:-1,bindingIndex:-1,currentQueryIndex:0,parent:a,child:null,inI18n:!1};return null!==a&&(a.child=l),l}function zr(){const a=vs.lFrame;return vs.lFrame=a.parent,a.currentTNode=null,a.lView=null,a}const gi=zr;function ai(){const a=zr();a.isParent=!0,a.tView=null,a.selectedIndex=-1,a.contextLView=null,a.elementDepthCount=0,a.currentDirectiveIndex=-1,a.currentNamespace=null,a.bindingRootIndex=-1,a.bindingIndex=-1,a.currentQueryIndex=0}function In(){return vs.lFrame.selectedIndex}function Cr(a){vs.lFrame.selectedIndex=a}function hr(){const a=vs.lFrame;return ms(a.tView,a.selectedIndex)}function $c(a,l){for(let f=l.directiveStart,m=l.directiveEnd;f=m)break}else l[Ne]<0&&(a[18]+=65536),(le>11>16&&(3&a[2])===l){a[2]+=2048;try{k.call(le)}finally{}}}else try{k.call(le)}finally{}}class Js{constructor(l,f,m){this.factory=l,this.resolving=!1,this.canSeeViewProviders=f,this.injectImpl=m}}function ic(a,l,f){const m=rt(a);let M=0;for(;Ml){te=k-1;break}}}for(;k>16}(a),m=l;for(;f>0;)m=m[15],f--;return m}let Et=!0;function qt(a){const l=Et;return Et=a,l}let Yo=0;function ns(a,l){const f=Hs(a,l);if(-1!==f)return f;const m=l[1];m.firstCreatePass&&(a.injectorIndex=l.length,Oa(m.data,a),Oa(l,null),Oa(m.blueprint,null));const M=fc(a,l),k=a.injectorIndex;if(Ye(M)){const te=Ie(M),le=ot(M,l),Ne=le[1].data;for(let qe=0;qe<8;qe++)l[k+qe]=le[te+qe]|Ne[te+qe]}return l[k+8]=M,k}function Oa(a,l){a.push(0,0,0,0,0,0,0,0,l)}function Hs(a,l){return-1===a.injectorIndex||a.parent&&a.parent.injectorIndex===a.injectorIndex||null===l[a.injectorIndex+8]?-1:a.injectorIndex}function fc(a,l){if(a.parent&&-1!==a.parent.injectorIndex)return a.parent.injectorIndex;let f=0,m=null,M=l;for(;null!==M;){const k=M[1],te=k.type;if(m=2===te?k.declTNode:1===te?M[6]:null,null===m)return-1;if(f++,M=M[15],-1!==m.injectorIndex)return m.injectorIndex|f<<16}return-1}function ga(a,l,f){!function(a,l,f){let m;"string"==typeof f?m=f.charCodeAt(0)||0:f.hasOwnProperty(Ge)&&(m=f[Ge]),null==m&&(m=f[Ge]=Yo++);const M=255&m;l.data[a+(M>>5)]|=1<=0?255&l:Of:l}(f);if("function"==typeof k){if(!ut(l,a,m))return m&Yr.Host?ll(M,f,m):Za(l,f,m,M);try{const te=k(m);if(null!=te||m&Yr.Optional)return te;ge(f)}finally{gi()}}else if("number"==typeof k){let te=null,le=Hs(a,l),Ne=-1,qe=m&Yr.Host?l[16][6]:null;for((-1===le||m&Yr.SkipSelf)&&(Ne=-1===le?fc(a,l):l[le+8],-1!==Ne&&Xd(m,!1)?(te=l[1],le=Ie(Ne),l=ot(Ne,l)):le=-1);-1!==le;){const wt=l[1];if(Cc(k,le,wt.data)){const ln=Rd(le,l,f,te,m,qe);if(ln!==ul)return ln}Ne=l[le+8],-1!==Ne&&Xd(m,l[1].data[le+8]===qe)&&Cc(k,le,l)?(te=wt,le=Ie(Ne),l=ot(Ne,l)):le=-1}}}return Za(l,f,m,M)}const ul={};function Of(){return new jc(Ss(),Li())}function Rd(a,l,f,m,M,k){const te=l[1],le=te.data[a+8],wt=Qd(le,te,f,null==m?Il(le)&&Et:m!=te&&0!=(3&le.type),M&Yr.Host&&k===le);return null!==wt?Sc(l,te,wt,le):ul}function Qd(a,l,f,m,M){const k=a.providerIndexes,te=l.data,le=1048575&k,Ne=a.directiveStart,wt=k>>20,dn=M?le+wt:a.directiveEnd;for(let nr=m?le:le+wt;nr=Ne&&Rr.type===f)return nr}if(M){const nr=te[Ne];if(nr&&Ya(nr)&&nr.type===f)return Ne}return null}function Sc(a,l,f,m){let M=a[f];const k=l.data;if(function(a){return a instanceof Js}(M)){const te=M;te.resolving&&function(a,l){throw new ee("200",`Circular dependency in DI detected for ${a}`)}(se(k[f]));const le=qt(te.canSeeViewProviders);te.resolving=!0;const Ne=te.injectImpl?Hi(te.injectImpl):null;ut(a,m,Yr.Default);try{M=a[f]=te.factory(void 0,k,a,m),l.firstCreatePass&&f>=m.directiveStart&&function(a,l,f){const{ngOnChanges:m,ngOnInit:M,ngDoCheck:k}=l.type.prototype;if(m){const te=ba(l);(f.preOrderHooks||(f.preOrderHooks=[])).push(a,te),(f.preOrderCheckHooks||(f.preOrderCheckHooks=[])).push(a,te)}M&&(f.preOrderHooks||(f.preOrderHooks=[])).push(0-a,M),k&&((f.preOrderHooks||(f.preOrderHooks=[])).push(a,k),(f.preOrderCheckHooks||(f.preOrderCheckHooks=[])).push(a,k))}(f,k[f],l)}finally{null!==Ne&&Hi(Ne),qt(le),te.resolving=!1,gi()}}return M}function Cc(a,l,f){return!!(f[l+(a>>5)]&1<{const l=a.prototype.constructor,f=l[_n]||Ju(l),m=Object.prototype;let M=Object.getPrototypeOf(a.prototype).constructor;for(;M&&M!==m;){const k=M[_n]||Ju(M);if(k&&k!==f)return k;M=Object.getPrototypeOf(M)}return k=>new k})}function Ju(a){return J(a)?()=>{const l=Ju(Z(a));return l&&l()}:wo(a)}function Sl(a){return function(a,l){if("class"===l)return a.classes;if("style"===l)return a.styles;const f=a.attrs;if(f){const m=f.length;let M=0;for(;M{const m=Qu(l);function M(...k){if(this instanceof M)return m.apply(this,k),this;const te=new M(...k);return le.annotation=te,le;function le(Ne,qe,wt){const ln=Ne.hasOwnProperty(kl)?Ne[kl]:Object.defineProperty(Ne,kl,{value:[]})[kl];for(;ln.length<=wt;)ln.push(null);return(ln[wt]=ln[wt]||[]).push(te),Ne}}return f&&(M.prototype=Object.create(f.prototype)),M.prototype.ngMetadataName=a,M.annotationCls=M,M})}function Oc(a,l,f,m){return Wt(()=>{const M=Qu(l);function k(...te){if(this instanceof k)return M.apply(this,te),this;const le=new k(...te);return function(qe,wt){const ln=qe.constructor,dn=ln.hasOwnProperty(Pu)?ln[Pu]:Object.defineProperty(ln,Pu,{value:{}})[Pu];dn[wt]=dn.hasOwnProperty(wt)&&dn[wt]||[],dn[wt].unshift(le),m&&m(qe,wt,...te)}}return f&&(k.prototype=Object.create(f.prototype)),k.prototype.ngMetadataName=a,k.annotationCls=k,k})}class Jl{constructor(l,f){this._desc=l,this.ngMetadataName="InjectionToken",this.\u0275prov=void 0,"number"==typeof f?this.__NG_ELEMENT_ID__=f:void 0!==f&&(this.\u0275prov=xt({token:this,providedIn:f.providedIn||"root",factory:f.factory}))}toString(){return`InjectionToken ${this._desc}`}}const vd=new Jl("AnalyzeForEntryComponents");class Gc{}const fp=Oc("ViewChild",(a,l)=>Object.assign({selector:a,first:!0,isViewQuery:!0,descendants:!0},l),Gc),Hf=Function;function Dc(a,l){void 0===l&&(l=a);for(let f=0;fArray.isArray(f)?Xl(f,l):l(f))}function Ji(a,l,f){l>=a.length?a.push(f):a.splice(l,0,f)}function cl(a,l){return l>=a.length-1?a.pop():a.splice(l,1)[0]}function Ll(a,l){const f=[];for(let m=0;m=0?a[1|m]=f:(m=~m,function(a,l,f,m){let M=a.length;if(M==l)a.push(f,m);else if(1===M)a.push(m,a[0]),a[0]=f;else{for(M--,a.push(a[M-1],a[M]);M>l;)a[M]=a[M-2],M--;a[l]=f,a[l+1]=m}}(a,m,l,f)),m}function Id(a,l){const f=oc(a,l);if(f>=0)return a[1|f]}function oc(a,l){return function(a,l,f){let m=0,M=a.length>>f;for(;M!==m;){const k=m+(M-m>>1),te=a[k<l?M=k:m=k+1}return~(M< ");else if("object"==typeof l){let k=[];for(let te in l)if(l.hasOwnProperty(te)){let le=l[te];k.push(te+":"+("string"==typeof le?JSON.stringify(le):S(le)))}M=`{${k.join(", ")}}`}return`${f}${m?"("+m+")":""}[${M}]: ${a.replace(ye,"\n ")}`}("\n"+a.message,M,f,m),a.ngTokenPath=M,a[q]=null,a}const ha=Zo(en("Inject",a=>({token:a})),-1),ia=Zo(en("Optional"),8),il=Zo(en("SkipSelf"),4);let na,Hp;function zl(a){var l;return(null===(l=function(){if(void 0===na&&(na=null,Dr.trustedTypes))try{na=Dr.trustedTypes.createPolicy("angular",{createHTML:a=>a,createScript:a=>a,createScriptURL:a=>a})}catch(a){}return na}())||void 0===l?void 0:l.createHTML(a))||a}function Up(){if(void 0===Hp&&(Hp=null,Dr.trustedTypes))try{Hp=Dr.trustedTypes.createPolicy("angular#unsafe-bypass",{createHTML:a=>a,createScript:a=>a,createScriptURL:a=>a})}catch(a){}return Hp}function mf(a){var l;return(null===(l=Up())||void 0===l?void 0:l.createHTML(a))||a}function dd(a){var l;return(null===(l=Up())||void 0===l?void 0:l.createScriptURL(a))||a}class Fd{constructor(l){this.changingThisBreaksApplicationSecurity=l}toString(){return`SafeValue must use [property]=binding: ${this.changingThisBreaksApplicationSecurity} (see https://g.co/ng/security#xss)`}}class pp extends Fd{getTypeName(){return"HTML"}}class fl extends Fd{getTypeName(){return"Style"}}class i_ extends Fd{getTypeName(){return"Script"}}class F_ extends Fd{getTypeName(){return"URL"}}class Bf extends Fd{getTypeName(){return"ResourceURL"}}function kd(a){return a instanceof Fd?a.changingThisBreaksApplicationSecurity:a}function Yf(a,l){const f=eh(a);if(null!=f&&f!==l){if("ResourceURL"===f&&"URL"===l)return!0;throw new Error(`Required a safe ${l}, got a ${f} (see https://g.co/ng/security#xss)`)}return f===l}function eh(a){return a instanceof Fd&&a.getTypeName()||null}function bd(a){return new pp(a)}function Rh(a){return new fl(a)}function th(a){return new i_(a)}function nh(a){return new F_(a)}function Nh(a){return new Bf(a)}function rh(a){const l=new xf(a);return function(){try{return!!(new window.DOMParser).parseFromString(zl(""),"text/html")}catch(a){return!1}}()?new Ed(l):l}class Ed{constructor(l){this.inertDocumentHelper=l}getInertBodyElement(l){l=""+l;try{const f=(new window.DOMParser).parseFromString(zl(l),"text/html").body;return null===f?this.inertDocumentHelper.getInertBodyElement(l):(f.removeChild(f.firstChild),f)}catch(f){return null}}}class xf{constructor(l){if(this.defaultDoc=l,this.inertDocument=this.defaultDoc.implementation.createHTMLDocument("sanitization-inert"),null==this.inertDocument.body){const f=this.inertDocument.createElement("html");this.inertDocument.appendChild(f);const m=this.inertDocument.createElement("body");f.appendChild(m)}}getInertBodyElement(l){const f=this.inertDocument.createElement("template");if("content"in f)return f.innerHTML=zl(l),f;const m=this.inertDocument.createElement("body");return m.innerHTML=zl(l),this.defaultDoc.documentMode&&this.stripCustomNsAttrs(m),m}stripCustomNsAttrs(l){const f=l.attributes;for(let M=f.length-1;0vf(l.trim())).join(", ")}function $d(a){const l={};for(const f of a.split(","))l[f]=!0;return l}function hp(...a){const l={};for(const f of a)for(const m in f)f.hasOwnProperty(m)&&(l[m]=!0);return l}const Zf=$d("area,br,col,hr,img,wbr"),qd=$d("colgroup,dd,dt,li,p,tbody,td,tfoot,th,thead,tr"),ac=$d("rp,rt"),Y=hp(Zf,hp(qd,$d("address,article,aside,blockquote,caption,center,del,details,dialog,dir,div,dl,figure,figcaption,footer,h1,h2,h3,h4,h5,h6,header,hgroup,hr,ins,main,map,menu,nav,ol,pre,section,summary,table,ul")),hp(ac,$d("a,abbr,acronym,audio,b,bdi,bdo,big,br,cite,code,del,dfn,em,font,i,img,ins,kbd,label,map,mark,picture,q,ruby,rp,rt,s,samp,small,source,span,strike,strong,sub,sup,time,track,tt,u,var,video")),hp(ac,qd)),fe=$d("background,cite,href,itemtype,longdesc,poster,src,xlink:href"),w=$d("srcset"),ct=hp(fe,w,$d("abbr,accesskey,align,alt,autoplay,axis,bgcolor,border,cellpadding,cellspacing,class,clear,color,cols,colspan,compact,controls,coords,datetime,default,dir,download,face,headers,height,hidden,hreflang,hspace,ismap,itemscope,itemprop,kind,label,lang,language,loop,media,muted,nohref,nowrap,open,preload,rel,rev,role,rows,rowspan,rules,scope,scrolling,shape,size,sizes,span,srclang,start,summary,tabindex,target,title,translate,type,usemap,valign,value,vspace,width"),$d("aria-activedescendant,aria-atomic,aria-autocomplete,aria-busy,aria-checked,aria-colcount,aria-colindex,aria-colspan,aria-controls,aria-current,aria-describedby,aria-details,aria-disabled,aria-dropeffect,aria-errormessage,aria-expanded,aria-flowto,aria-grabbed,aria-haspopup,aria-hidden,aria-invalid,aria-keyshortcuts,aria-label,aria-labelledby,aria-level,aria-live,aria-modal,aria-multiline,aria-multiselectable,aria-orientation,aria-owns,aria-placeholder,aria-posinset,aria-pressed,aria-readonly,aria-relevant,aria-required,aria-roledescription,aria-rowcount,aria-rowindex,aria-rowspan,aria-selected,aria-setsize,aria-sort,aria-valuemax,aria-valuemin,aria-valuenow,aria-valuetext")),Jn=$d("script,style,template");class Ir{constructor(){this.sanitizedSomething=!1,this.buf=[]}sanitizeChildren(l){let f=l.firstChild,m=!0;for(;f;)if(f.nodeType===Node.ELEMENT_NODE?m=this.startElement(f):f.nodeType===Node.TEXT_NODE?this.chars(f.nodeValue):this.sanitizedSomething=!0,m&&f.firstChild)f=f.firstChild;else for(;f;){f.nodeType===Node.ELEMENT_NODE&&this.endElement(f);let M=this.checkClobberedElement(f,f.nextSibling);if(M){f=M;break}f=this.checkClobberedElement(f,f.parentNode)}return this.buf.join("")}startElement(l){const f=l.nodeName.toLowerCase();if(!Y.hasOwnProperty(f))return this.sanitizedSomething=!0,!Jn.hasOwnProperty(f);this.buf.push("<"),this.buf.push(f);const m=l.attributes;for(let M=0;M"),!0}endElement(l){const f=l.nodeName.toLowerCase();Y.hasOwnProperty(f)&&!Zf.hasOwnProperty(f)&&(this.buf.push(""))}chars(l){this.buf.push(Do(l))}checkClobberedElement(l,f){if(f&&(l.compareDocumentPosition(f)&Node.DOCUMENT_POSITION_CONTAINED_BY)===Node.DOCUMENT_POSITION_CONTAINED_BY)throw new Error(`Failed to sanitize html because the element is clobbered: ${l.outerHTML}`);return f}}const vi=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,zi=/([^\#-~ |!])/g;function Do(a){return a.replace(/&/g,"&").replace(vi,function(l){return"&#"+(1024*(l.charCodeAt(0)-55296)+(l.charCodeAt(1)-56320)+65536)+";"}).replace(zi,function(l){return"&#"+l.charCodeAt(0)+";"}).replace(//g,">")}let xs;function Xo(a,l){let f=null;try{xs=xs||rh(a);let m=l?String(l):"";f=xs.getInertBodyElement(m);let M=5,k=m;do{if(0===M)throw new Error("Failed to sanitize html because the input is unstable");M--,m=k,k=f.innerHTML,f=xs.getInertBodyElement(m)}while(m!==k);return zl((new Ir).sanitizeChildren(Rs(f)||f))}finally{if(f){const m=Rs(f)||f;for(;m.firstChild;)m.removeChild(m.firstChild)}}}function Rs(a){return"content"in a&&function(a){return a.nodeType===Node.ELEMENT_NODE&&"TEMPLATE"===a.nodeName}(a)?a.content:null}var Vs=(()=>((Vs=Vs||{})[Vs.NONE=0]="NONE",Vs[Vs.HTML=1]="HTML",Vs[Vs.STYLE=2]="STYLE",Vs[Vs.SCRIPT=3]="SCRIPT",Vs[Vs.URL=4]="URL",Vs[Vs.RESOURCE_URL=5]="RESOURCE_URL",Vs))();function _c(a){const l=gp();return l?mf(l.sanitize(Vs.HTML,a)||""):Yf(a,"HTML")?mf(kd(a)):Xo(Su(),H(a))}function wu(a){const l=gp();return l?l.sanitize(Vs.URL,a)||"":Yf(a,"URL")?kd(a):vf(H(a))}function Hd(a){const l=gp();if(l)return dd(l.sanitize(Vs.RESOURCE_URL,a)||"");if(Yf(a,"ResourceURL"))return dd(kd(a));throw new Error("unsafe value used in a resource URL context (see https://g.co/ng/security#xss)")}function gp(){const a=Li();return a&&a[12]}const B_="__ngContext__";function Wc(a,l){a[B_]=l}function a_(a){const l=function(a){return a[B_]||null}(a);return l?Array.isArray(l)?l:l.lView:null}function Zu(a){return a.ngOriginalError}function Yp(a,...l){a.error(...l)}class Gf{constructor(){this._console=console}handleError(l){const f=this._findOriginalError(l),m=this._findContext(l),M=(a=l)&&a.ngErrorLogger||Yp;var a;M(this._console,"ERROR",l),f&&M(this._console,"ORIGINAL ERROR",f),m&&M(this._console,"ERROR CONTEXT",m)}_findContext(l){return l?l.ngDebugContext||this._findContext(Zu(l)):null}_findOriginalError(l){let f=l&&Zu(l);for(;f&&Zu(f);)f=Zu(f);return f||null}}const Z_=/^>|^->||--!>|)/;const Hh=(()=>("undefined"!=typeof requestAnimationFrame&&requestAnimationFrame||setTimeout).bind(Dr))();function Uh(a){return a.ownerDocument.defaultView}function Vf(a){return a.ownerDocument.body}function yf(a){return a instanceof Function?a():a}var Bd=(()=>((Bd=Bd||{})[Bd.Important=1]="Important",Bd[Bd.DashCase=2]="DashCase",Bd))();let fd;function bf(a,l){return fd(a,l)}function od(a){const l=a[3];return $s(l)?l[3]:l}function np(a){return fh(a[13])}function V_(a){return fh(a[4])}function fh(a){for(;null!==a&&!$s(a);)a=a[4];return a}function Bc(a,l,f,m,M){if(null!=m){let k,te=!1;$s(m)?k=m:ca(m)&&(te=!0,m=m[0]);const le=Me(m);0===a&&null!==f?null==M?Bg(l,f,le):_h(l,f,le,M||null,!0):1===a&&null!==f?_h(l,f,le,M||null,!0):2===a?y_(l,le,te):3===a&&l.destroyNode(le),null!=k&&function(a,l,f,m,M){const k=f[7];k!==Me(f)&&Bc(l,a,m,k,M);for(let le=10;lel.replace(j_,"\u200b$1\u200b"))}(l))}function Bh(a,l,f){return rt(a)?a.createElement(l,f):null===f?a.createElement(l):a.createElementNS(f,l)}function Hg(a,l){const f=a[9],m=f.indexOf(l),M=l[3];1024&l[2]&&(l[2]&=-1025,Al(M,-1)),f.splice(m,1)}function gg(a,l){if(a.length<=10)return;const f=10+l,m=a[f];if(m){const M=m[17];null!==M&&M!==a&&Hg(M,m),l>0&&(a[f-1][4]=m[4]);const k=cl(a,10+l);!function(a,l){jh(a,l,l[11],2,null,null),l[0]=null,l[6]=null}(m[1],m);const te=k[19];null!==te&&te.detachView(k[1]),m[3]=null,m[4]=null,m[2]&=-129}return m}function Ep(a,l){if(!(256&l[2])){const f=l[11];rt(f)&&f.destroyNode&&jh(a,l,f,3,null,null),function(a){let l=a[13];if(!l)return mg(a[1],a);for(;l;){let f=null;if(ca(l))f=l[13];else{const m=l[10];m&&(f=m)}if(!f){for(;l&&!l[4]&&l!==a;)ca(l)&&mg(l[1],l),l=l[3];null===l&&(l=a),ca(l)&&mg(l[1],l),f=l&&l[4]}l=f}}(l)}}function mg(a,l){if(!(256&l[2])){l[2]&=-129,l[2]|=256,function(a,l){let f;if(null!=a&&null!=(f=a.destroyHooks))for(let m=0;m=0?m[M=qe]():m[M=-qe].unsubscribe(),k+=2}else{const te=m[M=f[k+1]];f[k].call(te)}if(null!==m){for(let k=M+1;kk?"":M[ln+1].toLowerCase();const nr=8&m?dn:null;if(nr&&-1!==Sg(nr,qe,0)||2&m&&qe!==dn){if(G(m))return!1;te=!0}}}}else{if(!te&&!G(m)&&!G(Ne))return!1;if(te&&G(Ne))continue;te=!1,m=Ne|1&m}}return G(m)||te}function G(a){return 0==(1&a)}function Se(a,l,f,m){if(null===l)return-1;let M=0;if(m||!f){let k=!1;for(;M-1)for(f++;f0?'="'+le+'"':"")+"]"}else 8&m?M+="."+te:4&m&&(M+=" "+te);else""!==M&&!G(te)&&(l+=Si(k,M),M=""),m=te,k=k||!G(m);f++}return""!==M&&(l+=Si(k,M)),l}const po={};function Fa(a){Ta(sa(),Li(),In()+a,Uu())}function Ta(a,l,f,m){if(!m)if(3==(3&l[2])){const k=a.preOrderCheckHooks;null!==k&&Gl(l,k,f)}else{const k=a.preOrderHooks;null!==k&&$i(l,k,0,f)}Cr(f)}function ni(a,l){return a<<17|l<<2}function Tr(a){return a>>17&32767}function io(a){return 2|a}function va(a){return(131068&a)>>2}function Cs(a,l){return-131069&a|l<<2}function xl(a){return 1|a}function hv(a,l){const f=a.contentQueries;if(null!==f)for(let m=0;m20&&Ta(a,l,20,Uu()),f(m,M)}finally{Cr(k)}}function c1(a,l,f){if(da(l)){const M=l.directiveEnd;for(let k=l.directiveStart;k0;){const f=a[--l];if("number"==typeof f&&f<0)return f}return 0})(le)!=Ne&&le.push(Ne),le.push(m,M,te)}}function Qc(a,l){null!==a.hostBindings&&a.hostBindings(1,l)}function ju(a,l){l.flags|=2,(a.components||(a.components=[])).push(l.index)}function D0(a,l,f){if(f){if(l.exportAs)for(let m=0;m0&&Gu(f)}}function Gu(a){for(let m=np(a);null!==m;m=V_(m))for(let M=10;M0&&Gu(k)}const f=a[1].components;if(null!==f)for(let m=0;m0&&Gu(M)}}function Nm(a,l){const f=Ts(l,a),m=f[1];(function(a,l){for(let f=l.length;fPromise.resolve(null))();function Vu(a){return a[7]||(a[7]=[])}function yb(a){return a.cleanup||(a.cleanup=[])}function mv(a,l){const f=a[9],m=f?f.get(Gf,null):null;m&&m.handleError(l)}function bb(a,l,f,m,M){for(let k=0;kthis.processProvider(le,l,f)),Xl([l],le=>this.processInjectorType(le,[],k)),this.records.set(Jg,sd(void 0,this));const te=this.records.get(Im);this.scope=null!=te?te.value:null,this.source=M||("object"==typeof l?null:S(l))}get destroyed(){return this._destroyed}destroy(){this.assertNotDestroyed(),this._destroyed=!0;try{this.onDestroy.forEach(l=>l.ngOnDestroy())}finally{this.records.clear(),this.onDestroy.clear(),this.injectorDefTypes.clear()}}get(l,f=R,m=Yr.Default){this.assertNotDestroyed();const M=nn(this),k=Hi(void 0);try{if(!(m&Yr.SkipSelf)){let le=this.records.get(l);if(void 0===le){const Ne=("function"==typeof(a=l)||"object"==typeof a&&a instanceof Jl)&&Ur(l);le=Ne&&this.injectableDefInScope(Ne)?sd(yv(l),Lm):null,this.records.set(l,le)}if(null!=le)return this.hydrate(l,le)}return(m&Yr.Self?Ag():this.parent).get(l,f=m&Yr.Optional&&f===R?null:f)}catch(te){if("NullInjectorError"===te.name){if((te[q]=te[q]||[]).unshift(S(l)),M)throw te;return Gs(te,l,"R3InjectorError",this.source)}throw te}finally{Hi(k),nn(M)}var a}_resolveInjectorDefTypes(){this.injectorDefTypes.forEach(l=>this.get(l))}toString(){const l=[];return this.records.forEach((m,M)=>l.push(S(M))),`R3Injector[${l.join(", ")}]`}assertNotDestroyed(){if(this._destroyed)throw new Error("Injector has already been destroyed.")}processInjectorType(l,f,m){if(!(l=Z(l)))return!1;let M=Kr(l);const k=null==M&&l.ngModule||void 0,te=void 0===k?l:k,le=-1!==m.indexOf(te);if(void 0!==k&&(M=Kr(k)),null==M)return!1;if(null!=M.imports&&!le){let wt;m.push(te);try{Xl(M.imports,ln=>{this.processInjectorType(ln,f,m)&&(void 0===wt&&(wt=[]),wt.push(ln))})}finally{}if(void 0!==wt)for(let ln=0;lnthis.processProvider(Rr,dn,nr||Jt))}}this.injectorDefTypes.add(te);const Ne=wo(te)||(()=>new te);this.records.set(te,sd(Ne,Lm));const qe=M.providers;if(null!=qe&&!le){const wt=l;Xl(qe,ln=>this.processProvider(ln,wt,qe))}return void 0!==k&&void 0!==l.providers}processProvider(l,f,m){let M=Og(l=Z(l))?l:Z(l&&l.provide);const k=g1(a=l)?sd(void 0,a.useValue):sd(Md(a),Lm);var a;if(Og(l)||!0!==l.multi)this.records.get(M);else{let te=this.records.get(M);te||(te=sd(void 0,Lm,!0),te.factory=()=>Pi(te.multi),this.records.set(M,te)),M=l,te.multi.push(l)}this.records.set(M,k)}hydrate(l,f){return f.value===Lm&&(f.value=pd,f.value=f.factory()),"object"==typeof f.value&&f.value&&null!==(a=f.value)&&"object"==typeof a&&"function"==typeof a.ngOnDestroy&&this.onDestroy.add(f.value),f.value;var a}injectableDefInScope(l){if(!l.providedIn)return!1;const f=Z(l.providedIn);return"string"==typeof f?"any"===f||f===this.scope:this.injectorDefTypes.has(f)}}function yv(a){const l=Ur(a),f=null!==l?l.factory:wo(a);if(null!==f)return f;if(a instanceof Jl)throw new Error(`Token ${S(a)} is missing a \u0275prov definition.`);if(a instanceof Function)return function(a){const l=a.length;if(l>0){const m=Ll(l,"?");throw new Error(`Can't resolve all parameters for ${S(a)}: (${m.join(", ")}).`)}const f=function(a){const l=a&&(a[ei]||a[$n]);if(l){const f=function(a){if(a.hasOwnProperty("name"))return a.name;const l=(""+a).match(/^function\s*([^\s(]+)/);return null===l?"":l[1]}(a);return console.warn(`DEPRECATED: DI is instantiating a token "${f}" that inherits its @Injectable decorator but does not provide one itself.\nThis will become an error in a future version of Angular. Please add @Injectable() to the "${f}" class.`),l}return null}(a);return null!==f?()=>f.factory(a):()=>new a}(a);throw new Error("unreachable")}function Md(a,l,f){let m;if(Og(a)){const M=Z(a);return wo(M)||yv(M)}if(g1(a))m=()=>Z(a.useValue);else if(function(a){return!(!a||!a.useFactory)}(a))m=()=>a.useFactory(...Pi(a.deps||[]));else if(function(a){return!(!a||!a.useExisting)}(a))m=()=>xn(Z(a.useExisting));else{const M=Z(a&&(a.useClass||a.provide));if(!function(a){return!!a.deps}(a))return wo(M)||yv(M);m=()=>new M(...Pi(a.deps))}return m}function sd(a,l,f=!1){return{factory:a,value:l,multi:f?[]:void 0}}function g1(a){return null!==a&&"object"==typeof a&> in a}function Og(a){return"function"==typeof a}const U0=function(a,l,f){return function(a,l=null,f=null,m){const M=Sb(a,l,f,m);return M._resolveInjectorDefTypes(),M}({name:f},l,a,f)};let Ac=(()=>{class a{static create(f,m){return Array.isArray(f)?U0(f,m,""):U0(f.providers,f.parent,f.name||"")}}return a.THROW_IF_NOT_FOUND=R,a.NULL=new k0,a.\u0275prov=xt({token:a,providedIn:"any",factory:()=>xn(Jg)}),a.__NG_ELEMENT_ID__=-1,a})();function ny(a,l){$c(a_(a)[1],Ss())}function T1(a){let l=function(a){return Object.getPrototypeOf(a.prototype).constructor}(a.type),f=!0;const m=[a];for(;l;){let M;if(Ya(a))M=l.\u0275cmp||l.\u0275dir;else{if(l.\u0275cmp)throw new Error("Directives cannot inherit Components");M=l.\u0275dir}if(M){if(f){m.push(M);const te=a;te.inputs=Nf(a.inputs),te.declaredInputs=Nf(a.declaredInputs),te.outputs=Nf(a.outputs);const le=M.hostBindings;le&&Bb(a,le);const Ne=M.viewQuery,qe=M.contentQueries;if(Ne&&S1(a,Ne),qe&&Ub(a,qe),y(a.inputs,M.inputs),y(a.declaredInputs,M.declaredInputs),y(a.outputs,M.outputs),Ya(M)&&M.data.animation){const wt=a.data;wt.animation=(wt.animation||[]).concat(M.data.animation)}}const k=M.features;if(k)for(let te=0;te=0;m--){const M=a[m];M.hostVars=l+=M.hostVars,M.hostAttrs=Wd(M.hostAttrs,f=Wd(f,M.hostAttrs))}}(m)}function Nf(a){return a===gr?{}:a===Jt?[]:a}function S1(a,l){const f=a.viewQuery;a.viewQuery=f?(m,M)=>{l(m,M),f(m,M)}:l}function Ub(a,l){const f=a.contentQueries;a.contentQueries=f?(m,M,k)=>{l(m,M,k),f(m,M,k)}:l}function Bb(a,l){const f=a.hostBindings;a.hostBindings=f?(m,M)=>{l(m,M),f(m,M)}:l}let Tv=null;function tg(){if(!Tv){const a=Dr.Symbol;if(a&&a.iterator)Tv=a.iterator;else{const l=Object.getOwnPropertyNames(Map.prototype);for(let f=0;fle(Me(Xa[m.index])):m.index;if(rt(f)){let Xa=null;if(!le&&Ne&&(Xa=function(a,l,f,m){const M=a.cleanup;if(null!=M)for(let k=0;kNe?le[Ne]:null}"string"==typeof te&&(k+=2)}return null}(a,l,M,m.index)),null!==Xa)(Xa.__ngLastListenerFn__||Xa).__ngNextListenerFn__=k,Xa.__ngLastListenerFn__=k,nr=!1;else{k=tE(m,l,ln,k,!1);const du=f.listen(Oo,M,k);dn.push(k,du),wt&&wt.push(M,ua,Xi,Xi+1)}}else k=tE(m,l,ln,k,!0),Oo.addEventListener(M,k,te),dn.push(k),wt&&wt.push(M,ua,Xi,te)}else k=tE(m,l,ln,k,!1);const Rr=m.outputs;let Ti;if(nr&&null!==Rr&&(Ti=Rr[M])){const ii=Ti.length;if(ii)for(let Oo=0;Oo0;)l=l[15],a--;return l}(a,vs.lFrame.contextLView))[8]}(a)}function fO(a,l){let f=null;const m=function(a){const l=a.attrs;if(null!=l){const f=l.indexOf(5);if(0==(1&f))return l[f+1]}return null}(a);for(let M=0;M=0}const Tf={textEnd:0,key:0,keyEnd:0,value:0,valueEnd:0};function XS(a){return a.substring(Tf.key,Tf.keyEnd)}function KS(a,l){const f=Tf.textEnd;return f===l?-1:(l=Tf.keyEnd=function(a,l,f){for(;l32;)l++;return l}(a,Tf.key=l,f),Ov(a,l,f))}function Ov(a,l,f){for(;l=0;f=KS(l,f))Vl(a,XS(l),!0)}function O_(a,l,f,m){const M=Li(),k=sa(),te=aa(2);k.firstUpdatePass&&oC(k,a,te,m),l!==po&&nf(M,te,l)&&wv(k,k.data[In()],M,M[11],a,M[te+1]=function(a,l){return null==a||("string"==typeof l?a+=l:"object"==typeof a&&(a=S(kd(a)))),a}(l,f),m,te)}function w_(a,l,f,m){const M=sa(),k=aa(2);M.firstUpdatePass&&oC(M,null,k,m);const te=Li();if(f!==po&&nf(te,k,f)){const le=M.data[In()];if(_y(le,m)&&!iC(M,k)){let Ne=m?le.classesWithoutHost:le.stylesWithoutHost;null!==Ne&&(f=A(Ne,f||"")),Wb(M,le,te,f,m)}else!function(a,l,f,m,M,k,te,le){M===po&&(M=Jt);let Ne=0,qe=0,wt=0=a.expandoStartIndex}function oC(a,l,f,m){const M=a.data;if(null===M[f+1]){const k=M[In()],te=iC(a,f);_y(k,m)&&null===l&&!te&&(l=!1),l=function(a,l,f,m){const M=V(a);let k=m?l.residualClasses:l.residualStyles;if(null===M)0===(m?l.classBindings:l.styleBindings)&&(f=R1(f=sE(null,a,l,f,m),l.attrs,m),k=null);else{const te=l.directiveStylingLast;if(-1===te||a[te]!==M)if(f=sE(M,a,l,f,m),null===k){let Ne=function(a,l,f){const m=f?l.classBindings:l.styleBindings;if(0!==va(m))return a[Tr(m)]}(a,l,m);void 0!==Ne&&Array.isArray(Ne)&&(Ne=sE(null,a,l,Ne[1],m),Ne=R1(Ne,l.attrs,m),function(a,l,f,m){a[Tr(f?l.classBindings:l.styleBindings)]=m}(a,l,m,Ne))}else k=function(a,l,f){let m;const M=l.directiveEnd;for(let k=1+l.directiveStylingLast;k0)&&(qe=!0)}else wt=f;if(M)if(0!==Ne){const dn=Tr(a[le+1]);a[m+1]=ni(dn,le),0!==dn&&(a[dn+1]=Cs(a[dn+1],m)),a[le+1]=function(a,l){return 131071&a|l<<17}(a[le+1],m)}else a[m+1]=ni(le,0),0!==le&&(a[le+1]=Cs(a[le+1],m)),le=m;else a[m+1]=ni(Ne,0),0===le?le=m:a[Ne+1]=Cs(a[Ne+1],m),Ne=m;qe&&(a[m+1]=io(a[m+1])),QS(a,wt,m,!0),QS(a,wt,m,!1),function(a,l,f,m,M){const k=M?a.residualClasses:a.residualStyles;null!=k&&"string"==typeof l&&oc(k,l)>=0&&(f[m+1]=xl(f[m+1]))}(l,wt,a,m,k),te=ni(le,Ne),k?l.classBindings=te:l.styleBindings=te}(M,k,l,f,te,m)}}function sE(a,l,f,m,M){let k=null;const te=f.directiveEnd;let le=f.directiveStylingLast;for(-1===le?le=f.directiveStart:le++;le0;){const Ne=a[M],qe=Array.isArray(Ne),wt=qe?Ne[1]:Ne,ln=null===wt;let dn=f[M+1];dn===po&&(dn=ln?Jt:void 0);let nr=ln?Id(dn,m):wt===m?dn:void 0;if(qe&&!hy(nr)&&(nr=Id(Ne,m)),hy(nr)&&(le=nr,te))return le;const Rr=a[M+1];M=te?Tr(Rr):va(Rr)}if(null!==l){let Ne=k?l.residualClasses:l.residualStyles;null!=Ne&&(le=Id(Ne,m))}return le}function hy(a){return void 0!==a}function _y(a,l){return 0!=(a.flags&(l?16:32))}function uC(a,l=""){const f=Li(),m=sa(),M=a+20,k=m.firstCreatePass?ip(m,M,1,l,null):m.data[M],te=f[M]=Rf(f[11],l);Yh(m,f,te,k),Mu(k,!1)}function aE(a){return gy("",a,""),aE}function gy(a,l,f){const m=Li(),M=Kg(m,a,l,f);return M!==po&&eg(m,In(),M),gy}function lE(a,l,f,m,M){const k=Li(),te=qg(k,a,l,f,m,M);return te!==po&&eg(k,In(),te),lE}function uE(a,l,f,m,M,k,te){const le=Li(),Ne=function(a,l,f,m,M,k,te,le){const qe=Sv(a,wr(),f,M,te);return aa(3),qe?l+H(f)+m+H(M)+k+H(te)+le:po}(le,a,l,f,m,M,k,te);return Ne!==po&&eg(le,In(),Ne),uE}function gC(a,l,f){w_(Vl,ig,Kg(Li(),a,l,f),!0)}function mC(a,l,f,m,M){w_(Vl,ig,qg(Li(),a,l,f,m,M),!0)}function vC(a,l,f,m,M,k,te,le,Ne){w_(Vl,ig,function(a,l,f,m,M,k,te,le,Ne,qe){const ln=zp(a,wr(),f,M,te,Ne);return aa(4),ln?l+H(f)+m+H(M)+k+H(te)+le+H(Ne)+qe:po}(Li(),a,l,f,m,M,k,te,le,Ne),!0)}function cE(a,l,f){const m=Li();return nf(m,pu(),l)&&Ro(sa(),hr(),m,a,l,m[11],f,!0),cE}function dE(a,l,f){const m=Li();if(nf(m,pu(),l)){const k=sa(),te=hr();Ro(k,te,m,a,l,function(a,l,f){return(null===a||Ya(a))&&(f=function(a){for(;Array.isArray(a);){if("object"==typeof a[1])return a;a=a[0]}return null}(f[l.index])),f[11]}(V(k.data),te,m),f,!0)}return dE}const jm=void 0;var GO=["en",[["a","p"],["AM","PM"],jm],[["AM","PM"],jm,jm],[["S","M","T","W","T","F","S"],["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],["Su","Mo","Tu","We","Th","Fr","Sa"]],jm,[["J","F","M","A","M","J","J","A","S","O","N","D"],["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],["January","February","March","April","May","June","July","August","September","October","November","December"]],jm,[["B","A"],["BC","AD"],["Before Christ","Anno Domini"]],0,[6,0],["M/d/yy","MMM d, y","MMMM d, y","EEEE, MMMM d, y"],["h:mm a","h:mm:ss a","h:mm:ss a z","h:mm:ss a zzzz"],["{1}, {0}",jm,"{1} 'at' {0}",jm],[".",",",";","%","+","-","E","\xd7","\u2030","\u221e","NaN",":"],["#,##0.###","#,##0%","\xa4#,##0.00","#E0"],"USD","$","US Dollar",{},"ltr",function(a){const l=Math.floor(Math.abs(a)),f=a.toString().replace(/^[^.]*\.?/,"").length;return 1===l&&0===f?1:5}];let xv={};function fE(a){const l=function(a){return a.toLowerCase().replace(/_/g,"-")}(a);let f=xC(l);if(f)return f;const m=l.split("-")[0];if(f=xC(m),f)return f;if("en"===m)return GO;throw new Error(`Missing locale data for the locale "${a}".`)}function wC(a){return fE(a)[Ua.PluralCase]}function xC(a){return a in xv||(xv[a]=Dr.ng&&Dr.ng.common&&Dr.ng.common.locales&&Dr.ng.common.locales[a]),xv[a]}var Ua=(()=>((Ua=Ua||{})[Ua.LocaleId=0]="LocaleId",Ua[Ua.DayPeriodsFormat=1]="DayPeriodsFormat",Ua[Ua.DayPeriodsStandalone=2]="DayPeriodsStandalone",Ua[Ua.DaysFormat=3]="DaysFormat",Ua[Ua.DaysStandalone=4]="DaysStandalone",Ua[Ua.MonthsFormat=5]="MonthsFormat",Ua[Ua.MonthsStandalone=6]="MonthsStandalone",Ua[Ua.Eras=7]="Eras",Ua[Ua.FirstDayOfWeek=8]="FirstDayOfWeek",Ua[Ua.WeekendRange=9]="WeekendRange",Ua[Ua.DateFormat=10]="DateFormat",Ua[Ua.TimeFormat=11]="TimeFormat",Ua[Ua.DateTimeFormat=12]="DateTimeFormat",Ua[Ua.NumberSymbols=13]="NumberSymbols",Ua[Ua.NumberFormats=14]="NumberFormats",Ua[Ua.CurrencyCode=15]="CurrencyCode",Ua[Ua.CurrencySymbol=16]="CurrencySymbol",Ua[Ua.CurrencyName=17]="CurrencyName",Ua[Ua.Currencies=18]="Currencies",Ua[Ua.Directionality=19]="Directionality",Ua[Ua.PluralCase=20]="PluralCase",Ua[Ua.ExtraData=21]="ExtraData",Ua))();const zO=["zero","one","two","few","many"],my="en-US",vy={marker:"element"},yy={marker:"ICU"};var Ad=(()=>((Ad=Ad||{})[Ad.SHIFT=2]="SHIFT",Ad[Ad.APPEND_EAGERLY=1]="APPEND_EAGERLY",Ad[Ad.COMMENT=2]="COMMENT",Ad))();let DC=my;function pE(a){(function(a,l){null==a&&Ut(l,a,null,"!=")})(a,"Expected localeId to be defined"),"string"==typeof a&&(DC=a.toLowerCase().replace(/_/g,"-"))}function RC(a,l,f){const m=l.insertBeforeIndex,M=Array.isArray(m)?m[0]:m;return null===M?Sp(a,0,f):Me(f[M])}function hE(a,l,f,m,M){const k=l.insertBeforeIndex;if(Array.isArray(k)){let te=m,le=null;if(3&l.type||(le=te,te=M),null!==te&&0==(2&l.flags))for(let Ne=1;Ne1)for(let f=a.length-2;f>=0;f--){const m=a[f];NC(m)||XO(m,l)&&null===KO(m)&&qO(m,l.index)}}function NC(a){return!(64&a.type)}function XO(a,l){return NC(l)||a.index>l.index}function KO(a){const l=a.insertBeforeIndex;return Array.isArray(l)?l[0]:l}function qO(a,l){const f=a.insertBeforeIndex;Array.isArray(f)?f[0]=l:(J_(RC,hE),a.insertBeforeIndex=l)}function N1(a,l){const f=a.data[l];return null===f||"string"==typeof f?null:f.hasOwnProperty("currentCaseLViewIndex")?f:f.value}function nw(a,l,f){const m=Jh(a,f,64,null,null);return _E(l,m),m}function by(a,l){const f=l[a.currentCaseLViewIndex];return null===f?f:f<0?~f:f}function PC(a){return a>>>17}function IC(a){return(131070&a)>>>1}let Dv=0,Gm=0;function FC(a,l,f,m){const M=f[11];let te,k=null;for(let le=0;le>>1,f),null,null,nr,Rr,null);break;default:throw new Error(`Unable to determine the type of mutate operation for "${Ne}"`)}else switch(Ne){case yy:const qe=l[++le],wt=l[++le];null===f[wt]&&Wc(f[wt]=_g(M,qe),f);break;case vy:const ln=l[++le],dn=l[++le];null===f[dn]&&Wc(f[dn]=Bh(M,ln,null),f)}}}function kC(a,l,f,m,M){for(let k=0;k>>2;switch(3&wt){case 1:const dn=f[++qe],nr=f[++qe],Rr=a.data[ln];"string"==typeof Rr?d1(l[11],l[ln],null,Rr,dn,Ne,nr):Ro(a,Rr,l,dn,Ne,l[11],nr,!1);break;case 0:const Ti=l[ln];null!==Ti&&ph(l[11],Ti,Ne);break;case 2:sw(a,N1(a,ln),l,Ne);break;case 3:$C(a,N1(a,ln),m,l)}}}}else{const Ne=f[k+1];if(Ne>0&&3==(3&Ne)){const wt=N1(a,Ne>>>2);l[wt.currentCaseLViewIndex]<0&&$C(a,wt,m,l)}}k+=le}}function $C(a,l,f,m){let M=m[l.currentCaseLViewIndex];if(null!==M){let k=Dv;M<0&&(M=m[l.currentCaseLViewIndex]=~M,k=-1),kC(a,m,l.update[M],f,k)}}function sw(a,l,f,m){const M=function(a,l){let f=a.cases.indexOf(l);if(-1===f)switch(a.type){case 1:{const m=function(a,l){const f=wC(l)(parseInt(a,10)),m=zO[f];return void 0!==m?m:"other"}(l,DC);f=a.cases.indexOf(m),-1===f&&"other"!==m&&(f=a.cases.indexOf("other"));break}case 0:f=a.cases.indexOf("other")}return-1===f?null:f}(l,m);if(by(l,f)!==M&&(HC(a,l,f),f[l.currentCaseLViewIndex]=null===M?null:~M,null!==M)){const te=f[l.anchorIdx];te&&FC(a,l.create[M],f,te)}}function HC(a,l,f){let m=by(l,f);if(null!==m){const M=l.remove[m];for(let k=0;k0){const le=ur(te,f);null!==le&&y_(f[11],le)}else HC(a,N1(a,~te),f)}}}function aw(){const a=[];let f,m,l=-1;function k(le,Ne){l=0;const qe=by(le,Ne);m=null!==qe?le.remove[qe]:Jt}function te(){if(l0?f[le]:(a.push(l,m),k(f[1].data[~le],f),te())}return 0===a.length?null:(m=a.pop(),l=a.pop(),te())}return function(le,Ne){for(f=Ne;a.length;)a.pop();return k(le.value,Ne),te}}const Ey=/\ufffd(\d+):?\d*\ufffd/gi,lw=/({\s*\ufffd\d+:?\d*\ufffd\s*,\s*\S{6}\s*,[\s\S]*})/gi,uw=/\ufffd(\d+)\ufffd/,YC=/^\s*(\ufffd\d+:?\d*\ufffd)\s*,\s*(select|plural)\s*,/,cw=/\ufffd\/?\*(\d+:\d+)\ufffd/gi,dw=/\ufffd(\/?[#*]\d+):?\d*\ufffd/gi,ZC=/\uE500/g;function jC(a,l,f,m,M,k,te){const le=Vp(a,m,1,null);let Ne=le<f.length&&f.push(Ne)}return{type:m,mainBinding:M,cases:l,values:f}}function Vm(a){if(!a)return[];let l=0;const f=[],m=[],M=/[{}]/g;let k;for(M.lastIndex=0;k=M.exec(a);){const le=k.index;if("}"==k[0]){if(f.pop(),0==f.length){const Ne=a.substring(l,le);YC.test(Ne)?m.push(yw(Ne)):m.push(Ne),l=le+1}}else{if(0==f.length){const Ne=a.substring(l,le);m.push(Ne),l=le+1}f.push("{")}}const te=a.substring(l);return m.push(te),m}function bw(a,l,f,m,M,k,te,le){const Ne=[],qe=[],wt=[];l.cases.push(k),l.create.push(Ne),l.remove.push(qe),l.update.push(wt);const dn=rh(Su()).getInertBodyElement(te),nr=Rs(dn)||dn;return nr?vE(a,l,f,m,Ne,qe,wt,nr,M,le,0):0}function vE(a,l,f,m,M,k,te,le,Ne,qe,wt){let ln=0,dn=le.firstChild;for(;dn;){const nr=Vp(a,f,1,null);switch(dn.nodeType){case Node.ELEMENT_NODE:const Rr=dn,Ti=Rr.tagName.toLowerCase();if(Y.hasOwnProperty(Ti)){yE(M,vy,Ti,Ne,nr),a.data[nr]=Ti;const ua=Rr.attributes;for(let Xa=0;Xa>>Ad.SHIFT;let ln=a[wt];null===ln&&(ln=a[wt]=Ne?M.createComment(le):Rf(M,le)),qe&&null!==f&&_h(M,f,ln,m,!1)}})(M,Ne.create,wt,le&&8&le.type?M[le.index]:null),bl(!0)}function EE(){bl(!1)}function QC(a,l,f){Ty(a,l,f),EE()}function XC(a,l){const f=sa();!function(a,l,f){const M=Ss().index,k=[];if(a.firstCreatePass&&null===a.data[l]){for(let te=0;te0){const m=a.data[f];kC(a,l,Array.isArray(m)?m:m.update,wr()-Gm-1,Dv)}Dv=0,Gm=0}(sa(),Li(),a+20)}function qC(a,l={}){return function(a,l={}){let f=a;if(Cw.test(a)){const m={},M=[0];f=f.replace(WC,(k,te,le)=>{const Ne=te||le,qe=m[Ne]||[];if(qe.length||(Ne.split("|").forEach(Ti=>{const ii=Ti.match(ww),Oo=ii?parseInt(ii[1],10):0,Xi=Ow.test(Ti);qe.push([Oo,Xi,Ti])}),m[Ne]=qe),!qe.length)throw new Error(`i18n postprocess: unmatched placeholder - ${Ne}`);const wt=M[M.length-1];let ln=0;for(let Ti=0;Til.hasOwnProperty(k)?`${M}${l[k]}${Ne}`:m),f=f.replace(Aw,(m,M)=>l.hasOwnProperty(M)?l[M]:m),f=f.replace(JC,(m,M)=>{if(l.hasOwnProperty(M)){const k=l[M];if(!k.length)throw new Error(`i18n postprocess: unmatched ICU - ${m} with key: ${M}`);return k.shift()}return m})),f}(a,l)}function SE(a,l,f,m,M){if(a=Z(a),Array.isArray(a))for(let k=0;k>20;if(Og(a)||!a.multi){const nr=new Js(Ne,M,D1),Rr=ME(le,l,M?wt:wt+dn,ln);-1===Rr?(ga(ns(qe,te),k,le),CE(k,a,l.length),l.push(le),qe.directiveStart++,qe.directiveEnd++,M&&(qe.providerIndexes+=1048576),f.push(nr),te.push(nr)):(f[Rr]=nr,te[Rr]=nr)}else{const nr=ME(le,l,wt+dn,ln),Rr=ME(le,l,wt,wt+dn),Ti=nr>=0&&f[nr],ii=Rr>=0&&f[Rr];if(M&&!ii||!M&&!Ti){ga(ns(qe,te),k,le);const Oo=function(a,l,f,m,M){const k=new Js(a,f,D1);return k.multi=[],k.index=l,k.componentProviders=0,eM(k,M,m&&!f),k}(M?Nw:Rw,f.length,M,m,Ne);!M&&ii&&(f[Rr].providerFactory=Oo),CE(k,a,l.length,0),l.push(le),qe.directiveStart++,qe.directiveEnd++,M&&(qe.providerIndexes+=1048576),f.push(Oo),te.push(Oo)}else CE(k,a,nr>-1?nr:Rr,eM(f[M?Rr:nr],Ne,!M&&m));!M&&m&&ii&&f[Rr].componentProviders++}}}function CE(a,l,f,m){const M=Og(l);if(M||function(a){return!!a.useClass}(l)){const te=(l.useClass||l).prototype.ngOnDestroy;if(te){const le=a.destroyHooks||(a.destroyHooks=[]);if(!M&&l.multi){const Ne=le.indexOf(f);-1===Ne?le.push(f,[m,te]):le[Ne+1].push(m,te)}else le.push(f,te)}}}function eM(a,l,f){return f&&a.componentProviders++,a.multi.push(l)-1}function ME(a,l,f,m){for(let M=f;M{f.providersResolver=(m,M)=>function(a,l,f){const m=sa();if(m.firstCreatePass){const M=Ya(a);SE(f,m.data,m.blueprint,M,!0),SE(l,m.data,m.blueprint,M,!1)}}(m,M?M(a):a,l)}}class nM{}class rM{}const Sy="ngComponent";class Iw{resolveComponentFactory(l){throw function(a){const l=Error(`No component factory found for ${S(a)}. Did you add it to @NgModule.entryComponents?`);return l[Sy]=a,l}(l)}}let Pv=(()=>{class a{}return a.NULL=new Iw,a})();function I1(...a){}function Iv(a,l){return new og(Qi(a,l))}const Fw=function(){return Iv(Ss(),Li())};let og=(()=>{class a{constructor(f){this.nativeElement=f}}return a.__NG_ELEMENT_ID__=Fw,a})();function sM(a){return a instanceof og?a.nativeElement:a}class Cy{}let kw=(()=>{class a{}return a.__NG_ELEMENT_ID__=()=>Hw(),a})();const Hw=function(){const a=Li(),f=Ts(Ss().index,a);return function(a){return a[11]}(ca(f)?f:a)};let xE=(()=>{class a{}return a.\u0275prov=xt({token:a,providedIn:"root",factory:()=>null}),a})();class aM{constructor(l){this.full=l,this.major=l.split(".")[0],this.minor=l.split(".")[1],this.patch=l.split(".").slice(2).join(".")}}const lM=new aM("12.2.13");class uM{constructor(){}supports(l){return Hm(l)}create(l){return new Zw(l)}}const Yw=(a,l)=>l;class Zw{constructor(l){this.length=0,this._linkedRecords=null,this._unlinkedRecords=null,this._previousItHead=null,this._itHead=null,this._itTail=null,this._additionsHead=null,this._additionsTail=null,this._movesHead=null,this._movesTail=null,this._removalsHead=null,this._removalsTail=null,this._identityChangesHead=null,this._identityChangesTail=null,this._trackByFn=l||Yw}forEachItem(l){let f;for(f=this._itHead;null!==f;f=f._next)l(f)}forEachOperation(l){let f=this._itHead,m=this._removalsHead,M=0,k=null;for(;f||m;){const te=!m||f&&f.currentIndex{te=this._trackByFn(M,le),null!==f&&Object.is(f.trackById,te)?(m&&(f=this._verifyReinsertion(f,le,te,M)),Object.is(f.item,le)||this._addIdentityChange(f,le)):(f=this._mismatch(f,le,te,M),m=!0),f=f._next,M++}),this.length=M;return this._truncate(f),this.collection=l,this.isDirty}get isDirty(){return null!==this._additionsHead||null!==this._movesHead||null!==this._removalsHead||null!==this._identityChangesHead}_reset(){if(this.isDirty){let l;for(l=this._previousItHead=this._itHead;null!==l;l=l._next)l._nextPrevious=l._next;for(l=this._additionsHead;null!==l;l=l._nextAdded)l.previousIndex=l.currentIndex;for(this._additionsHead=this._additionsTail=null,l=this._movesHead;null!==l;l=l._nextMoved)l.previousIndex=l.currentIndex;this._movesHead=this._movesTail=null,this._removalsHead=this._removalsTail=null,this._identityChangesHead=this._identityChangesTail=null}}_mismatch(l,f,m,M){let k;return null===l?k=this._itTail:(k=l._prev,this._remove(l)),null!==(l=null===this._unlinkedRecords?null:this._unlinkedRecords.get(m,null))?(Object.is(l.item,f)||this._addIdentityChange(l,f),this._reinsertAfter(l,k,M)):null!==(l=null===this._linkedRecords?null:this._linkedRecords.get(m,M))?(Object.is(l.item,f)||this._addIdentityChange(l,f),this._moveAfter(l,k,M)):l=this._addAfter(new jw(f,m),k,M),l}_verifyReinsertion(l,f,m,M){let k=null===this._unlinkedRecords?null:this._unlinkedRecords.get(m,null);return null!==k?l=this._reinsertAfter(k,l._prev,M):l.currentIndex!=M&&(l.currentIndex=M,this._addToMoves(l,M)),l}_truncate(l){for(;null!==l;){const f=l._next;this._addToRemovals(this._unlink(l)),l=f}null!==this._unlinkedRecords&&this._unlinkedRecords.clear(),null!==this._additionsTail&&(this._additionsTail._nextAdded=null),null!==this._movesTail&&(this._movesTail._nextMoved=null),null!==this._itTail&&(this._itTail._next=null),null!==this._removalsTail&&(this._removalsTail._nextRemoved=null),null!==this._identityChangesTail&&(this._identityChangesTail._nextIdentityChange=null)}_reinsertAfter(l,f,m){null!==this._unlinkedRecords&&this._unlinkedRecords.remove(l);const M=l._prevRemoved,k=l._nextRemoved;return null===M?this._removalsHead=k:M._nextRemoved=k,null===k?this._removalsTail=M:k._prevRemoved=M,this._insertAfter(l,f,m),this._addToMoves(l,m),l}_moveAfter(l,f,m){return this._unlink(l),this._insertAfter(l,f,m),this._addToMoves(l,m),l}_addAfter(l,f,m){return this._insertAfter(l,f,m),this._additionsTail=null===this._additionsTail?this._additionsHead=l:this._additionsTail._nextAdded=l,l}_insertAfter(l,f,m){const M=null===f?this._itHead:f._next;return l._next=M,l._prev=f,null===M?this._itTail=l:M._prev=l,null===f?this._itHead=l:f._next=l,null===this._linkedRecords&&(this._linkedRecords=new My),this._linkedRecords.put(l),l.currentIndex=m,l}_remove(l){return this._addToRemovals(this._unlink(l))}_unlink(l){null!==this._linkedRecords&&this._linkedRecords.remove(l);const f=l._prev,m=l._next;return null===f?this._itHead=m:f._next=m,null===m?this._itTail=f:m._prev=f,l}_addToMoves(l,f){return l.previousIndex===f||(this._movesTail=null===this._movesTail?this._movesHead=l:this._movesTail._nextMoved=l),l}_addToRemovals(l){return null===this._unlinkedRecords&&(this._unlinkedRecords=new My),this._unlinkedRecords.put(l),l.currentIndex=null,l._nextRemoved=null,null===this._removalsTail?(this._removalsTail=this._removalsHead=l,l._prevRemoved=null):(l._prevRemoved=this._removalsTail,this._removalsTail=this._removalsTail._nextRemoved=l),l}_addIdentityChange(l,f){return l.item=f,this._identityChangesTail=null===this._identityChangesTail?this._identityChangesHead=l:this._identityChangesTail._nextIdentityChange=l,l}}class jw{constructor(l,f){this.item=l,this.trackById=f,this.currentIndex=null,this.previousIndex=null,this._nextPrevious=null,this._prev=null,this._next=null,this._prevDup=null,this._nextDup=null,this._prevRemoved=null,this._nextRemoved=null,this._nextAdded=null,this._nextMoved=null,this._nextIdentityChange=null}}class Gw{constructor(){this._head=null,this._tail=null}add(l){null===this._head?(this._head=this._tail=l,l._nextDup=null,l._prevDup=null):(this._tail._nextDup=l,l._prevDup=this._tail,l._nextDup=null,this._tail=l)}get(l,f){let m;for(m=this._head;null!==m;m=m._nextDup)if((null===f||f<=m.currentIndex)&&Object.is(m.trackById,l))return m;return null}remove(l){const f=l._prevDup,m=l._nextDup;return null===f?this._head=m:f._nextDup=m,null===m?this._tail=f:m._prevDup=f,null===this._head}}class My{constructor(){this.map=new Map}put(l){const f=l.trackById;let m=this.map.get(f);m||(m=new Gw,this.map.set(f,m)),m.add(l)}get(l,f){const M=this.map.get(l);return M?M.get(l,f):null}remove(l){const f=l.trackById;return this.map.get(f).remove(l)&&this.map.delete(f),l}get isEmpty(){return 0===this.map.size}clear(){this.map.clear()}}function cM(a,l,f){const m=a.previousIndex;if(null===m)return m;let M=0;return f&&m{if(f&&f.key===M)this._maybeAddToChanges(f,m),this._appendAfter=f,f=f._next;else{const k=this._getOrCreateRecordForKey(M,m);f=this._insertBeforeOrAppend(f,k)}}),f){f._prev&&(f._prev._next=null),this._removalsHead=f;for(let m=f;null!==m;m=m._nextRemoved)m===this._mapHead&&(this._mapHead=null),this._records.delete(m.key),m._nextRemoved=m._next,m.previousValue=m.currentValue,m.currentValue=null,m._prev=null,m._next=null}return this._changesTail&&(this._changesTail._nextChanged=null),this._additionsTail&&(this._additionsTail._nextAdded=null),this.isDirty}_insertBeforeOrAppend(l,f){if(l){const m=l._prev;return f._next=l,f._prev=m,l._prev=f,m&&(m._next=f),l===this._mapHead&&(this._mapHead=f),this._appendAfter=l,l}return this._appendAfter?(this._appendAfter._next=f,f._prev=this._appendAfter):this._mapHead=f,this._appendAfter=f,null}_getOrCreateRecordForKey(l,f){if(this._records.has(l)){const M=this._records.get(l);this._maybeAddToChanges(M,f);const k=M._prev,te=M._next;return k&&(k._next=te),te&&(te._prev=k),M._next=null,M._prev=null,M}const m=new zw(l);return this._records.set(l,m),m.currentValue=f,this._addToAdditions(m),m}_reset(){if(this.isDirty){let l;for(this._previousMapHead=this._mapHead,l=this._previousMapHead;null!==l;l=l._next)l._nextPrevious=l._next;for(l=this._changesHead;null!==l;l=l._nextChanged)l.previousValue=l.currentValue;for(l=this._additionsHead;null!=l;l=l._nextAdded)l.previousValue=l.currentValue;this._changesHead=this._changesTail=null,this._additionsHead=this._additionsTail=null,this._removalsHead=null}}_maybeAddToChanges(l,f){Object.is(f,l.currentValue)||(l.previousValue=l.currentValue,l.currentValue=f,this._addToChanges(l))}_addToAdditions(l){null===this._additionsHead?this._additionsHead=this._additionsTail=l:(this._additionsTail._nextAdded=l,this._additionsTail=l)}_addToChanges(l){null===this._changesHead?this._changesHead=this._changesTail=l:(this._changesTail._nextChanged=l,this._changesTail=l)}_forEach(l,f){l instanceof Map?l.forEach(f):Object.keys(l).forEach(m=>f(l[m],m))}}class zw{constructor(l){this.key=l,this.previousValue=null,this.currentValue=null,this._nextPrevious=null,this._next=null,this._prev=null,this._nextAdded=null,this._nextRemoved=null,this._nextChanged=null}}function fM(){return new Ay([new uM])}let Ay=(()=>{class a{constructor(f){this.factories=f}static create(f,m){if(null!=m){const M=m.factories.slice();f=f.concat(M)}return new a(f)}static extend(f){return{provide:a,useFactory:m=>a.create(f,m||fM()),deps:[[a,new il,new ia]]}}find(f){const m=this.factories.find(M=>M.supports(f));if(null!=m)return m;throw new Error(`Cannot find a differ supporting object '${f}' of type '${function(a){return a.name||typeof a}(f)}'`)}}return a.\u0275prov=xt({token:a,providedIn:"root",factory:fM}),a})();function pM(){return new Oy([new dM])}let Oy=(()=>{class a{constructor(f){this.factories=f}static create(f,m){if(m){const M=m.factories.slice();f=f.concat(M)}return new a(f)}static extend(f){return{provide:a,useFactory:m=>a.create(f,m||pM()),deps:[[a,new il,new ia]]}}find(f){const m=this.factories.find(M=>M.supports(f));if(m)return m;throw new Error(`Cannot find a differ supporting object '${f}'`)}}return a.\u0275prov=xt({token:a,providedIn:"root",factory:pM}),a})();function wy(a,l,f,m,M=!1){for(;null!==f;){const k=l[f.index];if(null!==k&&m.push(Me(k)),$s(k))for(let le=10;le-1&&(gg(l,m),cl(f,m))}this._attachedToViewContainer=!1}Ep(this._lView[1],this._lView)}onDestroy(l){at(this._lView[1],this._lView,null,l)}markForCheck(){I0(this._cdRefInjectingView||this._lView)}detach(){this._lView[2]&=-129}reattach(){this._lView[2]|=128}detectChanges(){Pm(this._lView[1],this._lView,this.context)}checkNoChanges(){!function(a,l,f){Bo(!0);try{Pm(a,l,f)}finally{Bo(!1)}}(this._lView[1],this._lView,this.context)}attachToViewContainerRef(){if(this._appRef)throw new Error("This view is already attached directly to the ApplicationRef!");this._attachedToViewContainer=!0}detachFromAppRef(){var l;this._appRef=null,jh(this._lView[1],l=this._lView,l[11],2,null,null)}attachToAppRef(l){if(this._attachedToViewContainer)throw new Error("This view is already attached to a ViewContainer!");this._appRef=l}}class Jw extends L1{constructor(l){super(l),this._view=l}detectChanges(){Xh(this._view)}checkNoChanges(){!function(a){Bo(!0);try{Xh(a)}finally{Bo(!1)}}(this._view)}get context(){return null}}const Xw=function(a){return function(a,l,f){if(Il(a)&&!f){const m=Ts(a.index,l);return new L1(m,m)}return 47&a.type?new L1(l[16],l):null}(Ss(),Li(),16==(16&a))};let Kw=(()=>{class a{}return a.__NG_ELEMENT_ID__=Xw,a})();const tx=[new dM],rx=new Ay([new uM]),ix=new Oy(tx),sx=function(){return xy(Ss(),Li())};let F1=(()=>{class a{}return a.__NG_ELEMENT_ID__=sx,a})();const ax=F1,lx=class extends ax{constructor(l,f,m){super(),this._declarationLView=l,this._declarationTContainer=f,this.elementRef=m}createEmbeddedView(l){const f=this._declarationTContainer.tViews,m=Ap(this._declarationLView,f,l,16,null,f.declTNode,null,null,null,null);m[17]=this._declarationLView[this._declarationTContainer.index];const k=this._declarationLView[19];return null!==k&&(m[19]=k.createEmbeddedView(f)),X_(f,m,l),new L1(m)}};function xy(a,l){return 4&a.type?new lx(l,a,Iv(a,l)):null}class zm{}class DE{}const dx=function(){return gM(Ss(),Li())};let Dy=(()=>{class a{}return a.__NG_ELEMENT_ID__=dx,a})();const px=Dy,hM=class extends px{constructor(l,f,m){super(),this._lContainer=l,this._hostTNode=f,this._hostLView=m}get element(){return Iv(this._hostTNode,this._hostLView)}get injector(){return new jc(this._hostTNode,this._hostLView)}get parentInjector(){const l=fc(this._hostTNode,this._hostLView);if(Ye(l)){const f=ot(l,this._hostLView),m=Ie(l);return new jc(f[1].data[m+8],f)}return new jc(null,this._hostLView)}clear(){for(;this.length>0;)this.remove(this.length-1)}get(l){const f=_M(this._lContainer);return null!==f&&f[l]||null}get length(){return this._lContainer.length-10}createEmbeddedView(l,f,m){const M=l.createEmbeddedView(f||{});return this.insert(M,m),M}createComponent(l,f,m,M,k){const te=m||this.parentInjector;if(!k&&null==l.ngModule&&te){const Ne=te.get(zm,null);Ne&&(k=Ne)}const le=l.create(te,M,void 0,k);return this.insert(le.hostView,f),le}insert(l,f){const m=l._lView,M=m[1];if($s(m[3])){const wt=this.indexOf(l);if(-1!==wt)this.detach(wt);else{const ln=m[3],dn=new hM(ln,ln[6],ln[3]);dn.detach(dn.indexOf(l))}}const k=this._adjustIndex(f),te=this._lContainer;!function(a,l,f,m){const M=10+m,k=f.length;m>0&&(f[M-1][4]=l),mHh});class V1 extends rM{constructor(l,f){super(),this.componentDef=l,this.ngModule=f,this.componentType=l.type,this.selector=l.selectors.map(as).join(","),this.ngContentSelectors=l.ngContentSelectors?l.ngContentSelectors:[],this.isBoundToModule=!!f}get inputs(){return GE(this.componentDef.inputs)}get outputs(){return GE(this.componentDef.outputs)}create(l,f,m,M){const k=(M=M||this.ngModule)?function(a,l){return{get:(f,m,M)=>{const k=a.get(f,Uv,M);return k!==Uv||m===Uv?k:l.get(f,m,M)}}}(l,M.injector):l,te=k.get(Cy,dt),le=k.get(xE,null),Ne=te.createRenderer(null,this.componentDef),qe=this.componentDef.selectors[0][0]||"div",wt=m?function(a,l,f){if(rt(a))return a.selectRootElement(l,f===Gn.ShadowDom);let m="string"==typeof l?a.querySelector(l):l;return m.textContent="",m}(Ne,m,this.componentDef.encapsulation):Bh(te.createRenderer(null,this.componentDef),qe,function(a){const l=a.toLowerCase();return"svg"===l?"http://www.w3.org/2000/svg":"math"===l?"http://www.w3.org/1998/MathML/":null}(qe)),ln=this.componentDef.onPush?576:528,dn=function(a,l){return{components:[],scheduler:a||Hh,clean:vS,playerHandler:l||null,flags:0}}(),nr=zg(0,null,null,1,0,null,null,null,null,null),Rr=Ap(null,nr,dn,ln,null,null,te,Ne,le,k);let Ti,ii;un(Rr);try{const Oo=function(a,l,f,m,M,k){const te=f[1];f[20]=a;const Ne=ip(te,20,2,"#host",null),qe=Ne.mergedAttrs=l.hostAttrs;null!==qe&&(vv(Ne,qe,!0),null!==a&&(ic(M,a,qe),null!==Ne.classes&&Gh(M,a,Ne.classes),null!==Ne.styles&&Zg(M,a,Ne.styles)));const wt=m.createRenderer(a,l),ln=Ap(f,_v(l),null,l.onPush?64:16,f[20],Ne,m,wt,k||null,null);return te.firstCreatePass&&(ga(ns(Ne,f),te,l.type),ju(te,Ne),R0(Ne,f.length,1)),h1(f,ln),f[20]=ln}(wt,this.componentDef,Rr,te,Ne);if(wt)if(m)ic(Ne,wt,["ng-version",lM.full]);else{const{attrs:Xi,classes:ua}=function(a){const l=[],f=[];let m=1,M=2;for(;m0&&Gh(Ne,wt,ua.join(" "))}if(ii=ms(nr,20),void 0!==f){const Xi=ii.projection=[];for(let ua=0;uaNe(te,l)),l.contentQueries){const Ne=Ss();l.contentQueries(1,te,Ne.directiveStart)}const le=Ss();return!k.firstCreatePass||null===l.hostBindings&&null===l.hostAttrs||(Cr(le.index),Op(f[1],le,0,le.directiveStart,le.directiveEnd,l),Qc(l,te)),te}(Oo,this.componentDef,Rr,dn,[ny]),X_(nr,Rr,null)}finally{ai()}return new jx(this.componentType,Ti,Iv(ii,Rr),Rr,ii)}}class jx extends nM{constructor(l,f,m,M,k){super(),this.location=m,this._rootLView=M,this._tNode=k,this.instance=f,this.hostView=this.changeDetectorRef=new Jw(M),this.componentType=l}get injector(){return new jc(this._tNode,this._rootLView)}destroy(){this.hostView.destroy()}onDestroy(l){this.hostView.onDestroy(l)}}const Bv=new Map;class zx extends zm{constructor(l,f){super(),this._parent=f,this._bootstrapComponents=[],this.injector=this,this.destroyCbs=[],this.componentFactoryResolver=new Uy(this);const m=jo(l),M=l[Yt]||null;M&&pE(M),this._bootstrapComponents=yf(m.bootstrap),this._r3Injector=Sb(l,f,[{provide:zm,useValue:this},{provide:Pv,useValue:this.componentFactoryResolver}],S(l)),this._r3Injector._resolveInjectorDefTypes(),this.instance=this.get(l)}get(l,f=Ac.THROW_IF_NOT_FOUND,m=Yr.Default){return l===Ac||l===zm||l===Jg?this:this._r3Injector.get(l,f,m)}destroy(){const l=this._r3Injector;!l.destroyed&&l.destroy(),this.destroyCbs.forEach(f=>f()),this.destroyCbs=null}onDestroy(l){this.destroyCbs.push(l)}}class zE extends DE{constructor(l){super(),this.moduleType=l,null!==jo(l)&&function(a){const l=new Set;!function f(m){const M=jo(m,!0),k=M.id;null!==k&&(function(a,l,f){if(l&&l!==f)throw new Error(`Duplicate module registered for ${a} - ${S(l)} vs ${S(l.name)}`)}(k,Bv.get(k),m),Bv.set(k,m));const te=yf(M.imports);for(const le of te)l.has(le)||(l.add(le),f(le))}(a)}(l)}create(l){return new zx(this.moduleType,l)}}function WE(a,l,f){const m=uu()+a,M=Li();return M[m]===po?Kh(M,m,f?l.call(f):l()):Um(M,m)}function JE(a,l,f,m){return QM(Li(),uu(),a,l,f,m)}function z1(a,l,f,m,M){return XM(Li(),uu(),a,l,f,m,M)}function WM(a,l,f,m,M,k){return KM(Li(),uu(),a,l,f,m,M,k)}function e_(a,l,f,m,M,k,te){return function(a,l,f,m,M,k,te,le,Ne){const qe=l+f;return zp(a,qe,M,k,te,le)?Kh(a,qe+4,Ne?m.call(Ne,M,k,te,le):m(M,k,te,le)):W1(a,qe+4)}(Li(),uu(),a,l,f,m,M,k,te)}function JM(a,l,f,m,M,k,te,le){const Ne=uu()+a,qe=Li(),wt=zp(qe,Ne,f,m,M,k);return nf(qe,Ne+4,te)||wt?Kh(qe,Ne+5,le?l.call(le,f,m,M,k,te):l(f,m,M,k,te)):Um(qe,Ne+5)}function W1(a,l){const f=a[l];return f===po?void 0:f}function QM(a,l,f,m,M,k){const te=l+f;return nf(a,te,M)?Kh(a,te+1,k?m.call(k,M):m(M)):W1(a,te+1)}function XM(a,l,f,m,M,k,te){const le=l+f;return A_(a,le,M,k)?Kh(a,le+2,te?m.call(te,M,k):m(M,k)):W1(a,le+2)}function KM(a,l,f,m,M,k,te,le){const Ne=l+f;return Sv(a,Ne,M,k,te)?Kh(a,Ne+3,le?m.call(le,M,k,te):m(M,k,te)):W1(a,Ne+3)}function e2(a,l){const f=sa();let m;const M=a+20;f.firstCreatePass?(m=function(a,l){if(l)for(let f=l.length-1;f>=0;f--){const m=l[f];if(a===m.name)return m}throw new ee("302",`The pipe '${a}' could not be found!`)}(l,f.pipeRegistry),f.data[M]=m,m.onDestroy&&(f.destroyHooks||(f.destroyHooks=[])).push(M,m.onDestroy)):m=f.data[M];const k=m.factory||(m.factory=wo(m.type)),te=Hi(D1);try{const le=qt(!1),Ne=k();return qt(le),function(a,l,f,m){f>=a.data.length&&(a.data[f]=null,a.blueprint[f]=null),l[f]=m}(f,Li(),M,Ne),Ne}finally{Hi(te)}}function t2(a,l,f){const m=a+20,M=Li(),k=hs(M,m);return J1(M,Qm(M,m)?QM(M,uu(),l,k.transform,f,k):k.transform(f))}function bh(a,l,f,m){const M=a+20,k=Li(),te=hs(k,M);return J1(k,Qm(k,M)?XM(k,uu(),l,te.transform,f,m,te):te.transform(f,m))}function n2(a,l,f,m,M){const k=a+20,te=Li(),le=hs(te,k);return J1(te,Qm(te,k)?KM(te,uu(),l,le.transform,f,m,M,le):le.transform(f,m,M))}function Qm(a,l){return a[1].data[l].pure}function J1(a,l){return mh.isWrapped(l)&&(l=mh.unwrap(l),a[wr()]=po),l}function XE(a){return l=>{setTimeout(a,void 0,l)}}const Wp=class extends r.xQ{constructor(l=!1){super(),this.__isAsync=l}emit(l){super.next(l)}subscribe(l,f,m){var M,k,te;let le=l,Ne=f||(()=>null),qe=m;if(l&&"object"==typeof l){const ln=l;le=null===(M=ln.next)||void 0===M?void 0:M.bind(ln),Ne=null===(k=ln.error)||void 0===k?void 0:k.bind(ln),qe=null===(te=ln.complete)||void 0===te?void 0:te.bind(ln)}this.__isAsync&&(Ne=XE(Ne),le&&(le=XE(le)),qe&&(qe=XE(qe)));const wt=super.subscribe({next:le,error:Ne,complete:qe});return l instanceof u.w&&l.add(wt),wt}};function Kx(){return this._results[tg()]()}class Tu{constructor(l=!1){this._emitDistinctChangesOnly=l,this.dirty=!0,this._results=[],this._changesDetected=!1,this._changes=null,this.length=0,this.first=void 0,this.last=void 0;const f=tg(),m=Tu.prototype;m[f]||(m[f]=Kx)}get changes(){return this._changes||(this._changes=new Wp)}get(l){return this._results[l]}map(l){return this._results.map(l)}filter(l){return this._results.filter(l)}find(l){return this._results.find(l)}reduce(l,f){return this._results.reduce(l,f)}forEach(l){this._results.forEach(l)}some(l){return this._results.some(l)}toArray(){return this._results.slice()}toString(){return this._results.toString()}reset(l,f){const m=this;m.dirty=!1;const M=Dc(l);(this._changesDetected=!function(a,l,f){if(a.length!==l.length)return!1;for(let m=0;m0)m.push(te[le/2]);else{const qe=k[le+1],wt=l[-Ne];for(let ln=10;ln({bindingPropertyName:a})),gD=Oc("Output",a=>({bindingPropertyName:a})),yT=new Jl("Application Initializer");let Zv=(()=>{class a{constructor(f){this.appInits=f,this.resolve=I1,this.reject=I1,this.initialized=!1,this.done=!1,this.donePromise=new Promise((m,M)=>{this.resolve=m,this.reject=M})}runInitializers(){if(this.initialized)return;const f=[],m=()=>{this.done=!0,this.resolve()};if(this.appInits)for(let M=0;M{k.subscribe({complete:le,error:Ne})});f.push(te)}}Promise.all(f).then(()=>{m()}).catch(M=>{this.reject(M)}),0===f.length&&m(),this.initialized=!0}}return a.\u0275fac=function(f){return new(f||a)(xn(yT,8))},a.\u0275prov=xt({token:a,factory:a.\u0275fac}),a})();const N2=new Jl("AppId"),I2={provide:N2,useFactory:function(){return`${jy()}${jy()}${jy()}`},deps:[]};function jy(){return String.fromCharCode(97+Math.floor(25*Math.random()))}const D_=new Jl("Platform Initializer"),cm=new Jl("Platform ID"),Pp=new Jl("appBootstrapListener");let L2=(()=>{class a{log(f){console.log(f)}warn(f){console.warn(f)}}return a.\u0275fac=function(f){return new(f||a)},a.\u0275prov=xt({token:a,factory:a.\u0275fac}),a})();const Gy=new Jl("LocaleId"),F2=new Jl("DefaultCurrencyCode");class $2{constructor(l,f){this.ngModuleFactory=l,this.componentFactories=f}}const zy=function(a){return new zE(a)},dm=zy,ET=function(a){return Promise.resolve(zy(a))},t0=function(a){const l=zy(a),m=yf(jo(a).declarations).reduce((M,k)=>{const te=Co(k);return te&&M.push(new V1(te)),M},[]);return new $2(l,m)},TT=t0,MD=function(a){return Promise.resolve(t0(a))};let n0=(()=>{class a{constructor(){this.compileModuleSync=dm,this.compileModuleAsync=ET,this.compileModuleAndAllComponentsSync=TT,this.compileModuleAndAllComponentsAsync=MD}clearCache(){}clearCacheFor(f){}getModuleId(f){}}return a.\u0275fac=function(f){return new(f||a)},a.\u0275prov=xt({token:a,factory:a.\u0275fac}),a})();const OD=(()=>Promise.resolve(0))();function ST(a){"undefined"==typeof Zone?OD.then(()=>{a&&a.apply(null,null)}):Zone.current.scheduleMicroTask("scheduleMicrotask",a)}class Eh{constructor({enableLongStackTrace:l=!1,shouldCoalesceEventChangeDetection:f=!1,shouldCoalesceRunChangeDetection:m=!1}){if(this.hasPendingMacrotasks=!1,this.hasPendingMicrotasks=!1,this.isStable=!0,this.onUnstable=new Wp(!1),this.onMicrotaskEmpty=new Wp(!1),this.onStable=new Wp(!1),this.onError=new Wp(!1),"undefined"==typeof Zone)throw new Error("In this configuration Angular requires Zone.js");Zone.assertZonePatched();const M=this;M._nesting=0,M._outer=M._inner=Zone.current,Zone.TaskTrackingZoneSpec&&(M._inner=M._inner.fork(new Zone.TaskTrackingZoneSpec)),l&&Zone.longStackTraceZoneSpec&&(M._inner=M._inner.fork(Zone.longStackTraceZoneSpec)),M.shouldCoalesceEventChangeDetection=!m&&f,M.shouldCoalesceRunChangeDetection=m,M.lastRequestAnimationFrameId=-1,M.nativeRequestAnimationFrame=function(){let a=Dr.requestAnimationFrame,l=Dr.cancelAnimationFrame;if("undefined"!=typeof Zone&&a&&l){const f=a[Zone.__symbol__("OriginalDelegate")];f&&(a=f);const m=l[Zone.__symbol__("OriginalDelegate")];m&&(l=m)}return{nativeRequestAnimationFrame:a,nativeCancelAnimationFrame:l}}().nativeRequestAnimationFrame,function(a){const l=()=>{!function(a){a.isCheckStableRunning||-1!==a.lastRequestAnimationFrameId||(a.lastRequestAnimationFrameId=a.nativeRequestAnimationFrame.call(Dr,()=>{a.fakeTopEventTask||(a.fakeTopEventTask=Zone.root.scheduleEventTask("fakeTopEventTask",()=>{a.lastRequestAnimationFrameId=-1,MT(a),a.isCheckStableRunning=!0,CT(a),a.isCheckStableRunning=!1},void 0,()=>{},()=>{})),a.fakeTopEventTask.invoke()}),MT(a))}(a)};a._inner=a._inner.fork({name:"angular",properties:{isAngularZone:!0},onInvokeTask:(f,m,M,k,te,le)=>{try{return B2(a),f.invokeTask(M,k,te,le)}finally{(a.shouldCoalesceEventChangeDetection&&"eventTask"===k.type||a.shouldCoalesceRunChangeDetection)&&l(),Y2(a)}},onInvoke:(f,m,M,k,te,le,Ne)=>{try{return B2(a),f.invoke(M,k,te,le,Ne)}finally{a.shouldCoalesceRunChangeDetection&&l(),Y2(a)}},onHasTask:(f,m,M,k)=>{f.hasTask(M,k),m===M&&("microTask"==k.change?(a._hasPendingMicrotasks=k.microTask,MT(a),CT(a)):"macroTask"==k.change&&(a.hasPendingMacrotasks=k.macroTask))},onHandleError:(f,m,M,k)=>(f.handleError(M,k),a.runOutsideAngular(()=>a.onError.emit(k)),!1)})}(M)}static isInAngularZone(){return!0===Zone.current.get("isAngularZone")}static assertInAngularZone(){if(!Eh.isInAngularZone())throw new Error("Expected to be in Angular Zone, but it is not!")}static assertNotInAngularZone(){if(Eh.isInAngularZone())throw new Error("Expected to not be in Angular Zone, but it is!")}run(l,f,m){return this._inner.run(l,f,m)}runTask(l,f,m,M){const k=this._inner,te=k.scheduleEventTask("NgZoneEvent: "+M,l,jv,I1,I1);try{return k.runTask(te,f,m)}finally{k.cancelTask(te)}}runGuarded(l,f,m){return this._inner.runGuarded(l,f,m)}runOutsideAngular(l){return this._outer.run(l)}}const jv={};function CT(a){if(0==a._nesting&&!a.hasPendingMicrotasks&&!a.isStable)try{a._nesting++,a.onMicrotaskEmpty.emit(null)}finally{if(a._nesting--,!a.hasPendingMicrotasks)try{a.runOutsideAngular(()=>a.onStable.emit(null))}finally{a.isStable=!0}}}function MT(a){a.hasPendingMicrotasks=!!(a._hasPendingMicrotasks||(a.shouldCoalesceEventChangeDetection||a.shouldCoalesceRunChangeDetection)&&-1!==a.lastRequestAnimationFrameId)}function B2(a){a._nesting++,a.isStable&&(a.isStable=!1,a.onUnstable.emit(null))}function Y2(a){a._nesting--,CT(a)}class Z2{constructor(){this.hasPendingMicrotasks=!1,this.hasPendingMacrotasks=!1,this.isStable=!0,this.onUnstable=new Wp,this.onMicrotaskEmpty=new Wp,this.onStable=new Wp,this.onError=new Wp}run(l,f,m){return l.apply(f,m)}runGuarded(l,f,m){return l.apply(f,m)}runOutsideAngular(l){return l()}runTask(l,f,m,M){return l.apply(f,m)}}let AT=(()=>{class a{constructor(f){this._ngZone=f,this._pendingCount=0,this._isZoneStable=!0,this._didWork=!1,this._callbacks=[],this.taskTrackingZone=null,this._watchAngularEvents(),f.run(()=>{this.taskTrackingZone="undefined"==typeof Zone?null:Zone.current.get("TaskTrackingZone")})}_watchAngularEvents(){this._ngZone.onUnstable.subscribe({next:()=>{this._didWork=!0,this._isZoneStable=!1}}),this._ngZone.runOutsideAngular(()=>{this._ngZone.onStable.subscribe({next:()=>{Eh.assertNotInAngularZone(),ST(()=>{this._isZoneStable=!0,this._runCallbacksIfReady()})}})})}increasePendingRequestCount(){return this._pendingCount+=1,this._didWork=!0,this._pendingCount}decreasePendingRequestCount(){if(this._pendingCount-=1,this._pendingCount<0)throw new Error("pending async requests below zero");return this._runCallbacksIfReady(),this._pendingCount}isStable(){return this._isZoneStable&&0===this._pendingCount&&!this._ngZone.hasPendingMacrotasks}_runCallbacksIfReady(){if(this.isStable())ST(()=>{for(;0!==this._callbacks.length;){let f=this._callbacks.pop();clearTimeout(f.timeoutId),f.doneCb(this._didWork)}this._didWork=!1});else{let f=this.getPendingTasks();this._callbacks=this._callbacks.filter(m=>!m.updateCb||!m.updateCb(f)||(clearTimeout(m.timeoutId),!1)),this._didWork=!0}}getPendingTasks(){return this.taskTrackingZone?this.taskTrackingZone.macroTasks.map(f=>({source:f.source,creationLocation:f.creationLocation,data:f.data})):[]}addCallback(f,m,M){let k=-1;m&&m>0&&(k=setTimeout(()=>{this._callbacks=this._callbacks.filter(te=>te.timeoutId!==k),f(this._didWork,this.getPendingTasks())},m)),this._callbacks.push({doneCb:f,timeoutId:k,updateCb:M})}whenStable(f,m,M){if(M&&!this.taskTrackingZone)throw new Error('Task tracking zone is required when passing an update callback to whenStable(). Is "zone.js/plugins/task-tracking" loaded?');this.addCallback(f,m,M),this._runCallbacksIfReady()}getPendingRequestCount(){return this._pendingCount}findProviders(f,m,M){return[]}}return a.\u0275fac=function(f){return new(f||a)(xn(Eh))},a.\u0275prov=xt({token:a,factory:a.\u0275fac}),a})(),OT=(()=>{class a{constructor(){this._applications=new Map,Xm.addToWindow(this)}registerApplication(f,m){this._applications.set(f,m)}unregisterApplication(f){this._applications.delete(f)}unregisterAllApplications(){this._applications.clear()}getTestability(f){return this._applications.get(f)||null}getAllTestabilities(){return Array.from(this._applications.values())}getAllRootElements(){return Array.from(this._applications.keys())}findTestabilityInTree(f,m=!0){return Xm.findTestabilityInTree(this,f,m)}}return a.\u0275fac=function(f){return new(f||a)},a.\u0275prov=xt({token:a,factory:a.\u0275fac}),a})();class wT{addToWindow(l){}findTestabilityInTree(l,f,m){return null}}function DD(a){Xm=a}let Xm=new wT,j2=!0,G2=!1;function xT(){return G2=!0,j2}function RD(){if(G2)throw new Error("Cannot enable prod mode after platform setup.");j2=!1}let Th;const z2=new Jl("AllowMultipleToken");class FD{constructor(l,f){this.name=l,this.token=f}}function DT(a,l,f=[]){const m=`Platform: ${l}`,M=new Jl(m);return(k=[])=>{let te=J2();if(!te||te.injector.get(z2,!1))if(a)a(f.concat(k).concat({provide:M,useValue:!0}));else{const le=f.concat(k).concat({provide:M,useValue:!0},{provide:Im,useValue:"platform"});!function(a){if(Th&&!Th.destroyed&&!Th.injector.get(z2,!1))throw new Error("There can be only one platform. Destroy the previous one to create a new one.");Th=a.get(RT);const l=a.get(D_,null);l&&l.forEach(f=>f())}(Ac.create({providers:le,name:m}))}return function(a){const l=J2();if(!l)throw new Error("No platform exists!");if(!l.injector.get(a,null))throw new Error("A platform with a different configuration has been created. Please destroy it first.");return l}(M)}}function J2(){return Th&&!Th.destroyed?Th:null}let RT=(()=>{class a{constructor(f){this._injector=f,this._modules=[],this._destroyListeners=[],this._destroyed=!1}bootstrapModuleFactory(f,m){const le=function(a,l){let f;return f="noop"===a?new Z2:("zone.js"===a?void 0:a)||new Eh({enableLongStackTrace:xT(),shouldCoalesceEventChangeDetection:!!(null==l?void 0:l.ngZoneEventCoalescing),shouldCoalesceRunChangeDetection:!!(null==l?void 0:l.ngZoneRunCoalescing)}),f}(m?m.ngZone:void 0,{ngZoneEventCoalescing:m&&m.ngZoneEventCoalescing||!1,ngZoneRunCoalescing:m&&m.ngZoneRunCoalescing||!1}),Ne=[{provide:Eh,useValue:le}];return le.run(()=>{const qe=Ac.create({providers:Ne,parent:this.injector,name:f.moduleType.name}),wt=f.create(qe),ln=wt.injector.get(Gf,null);if(!ln)throw new Error("No ErrorHandler. Is platform module (BrowserModule) included?");return le.runOutsideAngular(()=>{const dn=le.onError.subscribe({next:nr=>{ln.handleError(nr)}});wt.onDestroy(()=>{NT(this._modules,wt),dn.unsubscribe()})}),function(a,l,f){try{const m=f();return Zm(m)?m.catch(M=>{throw l.runOutsideAngular(()=>a.handleError(M)),M}):m}catch(m){throw l.runOutsideAngular(()=>a.handleError(m)),m}}(ln,le,()=>{const dn=wt.injector.get(Zv);return dn.runInitializers(),dn.donePromise.then(()=>(pE(wt.injector.get(Gy,my)||my),this._moduleDoBootstrap(wt),wt))})})}bootstrapModule(f,m=[]){const M=Q2({},m);return function(a,l,f){const m=new zE(f);return Promise.resolve(m)}(0,0,f).then(k=>this.bootstrapModuleFactory(k,M))}_moduleDoBootstrap(f){const m=f.injector.get(r0);if(f._bootstrapComponents.length>0)f._bootstrapComponents.forEach(M=>m.bootstrap(M));else{if(!f.instance.ngDoBootstrap)throw new Error(`The module ${S(f.instance.constructor)} was bootstrapped, but it does not declare "@NgModule.bootstrap" components nor a "ngDoBootstrap" method. Please define one of these.`);f.instance.ngDoBootstrap(m)}this._modules.push(f)}onDestroy(f){this._destroyListeners.push(f)}get injector(){return this._injector}destroy(){if(this._destroyed)throw new Error("The platform has already been destroyed!");this._modules.slice().forEach(f=>f.destroy()),this._destroyListeners.forEach(f=>f()),this._destroyed=!0}get destroyed(){return this._destroyed}}return a.\u0275fac=function(f){return new(f||a)(xn(Ac))},a.\u0275prov=xt({token:a,factory:a.\u0275fac}),a})();function Q2(a,l){return Array.isArray(l)?l.reduce(Q2,a):Object.assign(Object.assign({},a),l)}let r0=(()=>{class a{constructor(f,m,M,k,te){this._zone=f,this._injector=m,this._exceptionHandler=M,this._componentFactoryResolver=k,this._initStatus=te,this._bootstrapListeners=[],this._views=[],this._runningTick=!1,this._stable=!0,this.componentTypes=[],this.components=[],this._onMicrotaskEmptySubscription=this._zone.onMicrotaskEmpty.subscribe({next:()=>{this._zone.run(()=>{this.tick()})}});const le=new p.y(qe=>{this._stable=this._zone.isStable&&!this._zone.hasPendingMacrotasks&&!this._zone.hasPendingMicrotasks,this._zone.runOutsideAngular(()=>{qe.next(this._stable),qe.complete()})}),Ne=new p.y(qe=>{let wt;this._zone.runOutsideAngular(()=>{wt=this._zone.onStable.subscribe(()=>{Eh.assertNotInAngularZone(),ST(()=>{!this._stable&&!this._zone.hasPendingMacrotasks&&!this._zone.hasPendingMicrotasks&&(this._stable=!0,qe.next(!0))})})});const ln=this._zone.onUnstable.subscribe(()=>{Eh.assertInAngularZone(),this._stable&&(this._stable=!1,this._zone.runOutsideAngular(()=>{qe.next(!1)}))});return()=>{wt.unsubscribe(),ln.unsubscribe()}});this.isStable=(0,d.T)(le,Ne.pipe((0,e.B)()))}bootstrap(f,m){if(!this._initStatus.done)throw new Error("Cannot bootstrap as there are still asynchronous initializers running. Bootstrap components in the `ngDoBootstrap` method of the root module.");let M;M=f instanceof rM?f:this._componentFactoryResolver.resolveComponentFactory(f),this.componentTypes.push(M.componentType);const k=function(a){return a.isBoundToModule}(M)?void 0:this._injector.get(zm),le=M.create(Ac.NULL,[],m||M.selector,k),Ne=le.location.nativeElement,qe=le.injector.get(AT,null),wt=qe&&le.injector.get(OT);return qe&&wt&&wt.registerApplication(Ne,qe),le.onDestroy(()=>{this.detachView(le.hostView),NT(this.components,le),wt&&wt.unregisterApplication(Ne)}),this._loadComponent(le),le}tick(){if(this._runningTick)throw new Error("ApplicationRef.tick is called recursively");try{this._runningTick=!0;for(let f of this._views)f.detectChanges()}catch(f){this._zone.runOutsideAngular(()=>this._exceptionHandler.handleError(f))}finally{this._runningTick=!1}}attachView(f){const m=f;this._views.push(m),m.attachToAppRef(this)}detachView(f){const m=f;NT(this._views,m),m.detachFromAppRef()}_loadComponent(f){this.attachView(f.hostView),this.tick(),this.components.push(f),this._injector.get(Pp,[]).concat(this._bootstrapListeners).forEach(M=>M(f))}ngOnDestroy(){this._views.slice().forEach(f=>f.destroy()),this._onMicrotaskEmptySubscription.unsubscribe()}get viewCount(){return this._views.length}}return a.\u0275fac=function(f){return new(f||a)(xn(Eh),xn(Ac),xn(Gf),xn(Pv),xn(Zv))},a.\u0275prov=xt({token:a,factory:a.\u0275fac}),a})();function NT(a,l){const f=a.indexOf(l);f>-1&&a.splice(f,1)}class UD{}class eA{}const YD={factoryPathPrefix:"",factoryPathSuffix:".ngfactory"};let ZD=(()=>{class a{constructor(f,m){this._compiler=f,this._config=m||YD}load(f){return this.loadAndCompile(f)}loadAndCompile(f){let[m,M]=f.split("#");return void 0===M&&(M="default"),i(98255)(m).then(k=>k[M]).then(k=>Vv(k,m,M)).then(k=>this._compiler.compileModuleAsync(k))}loadFactory(f){let[m,M]=f.split("#"),k="NgFactory";return void 0===M&&(M="default",k=""),i(98255)(this._config.factoryPathPrefix+m+this._config.factoryPathSuffix).then(te=>te[M+k]).then(te=>Vv(te,m,M))}}return a.\u0275fac=function(f){return new(f||a)(xn(n0),xn(eA,8))},a.\u0275prov=xt({token:a,factory:a.\u0275fac}),a})();function Vv(a,l,f){if(!a)throw new Error(`Cannot find '${f}' in '${l}'`);return a}const WD=function(a){return null},JD=DT(null,"core",[{provide:cm,useValue:"unknown"},{provide:RT,deps:[Ac]},{provide:OT,deps:[]},{provide:L2,deps:[]}]),e3=[{provide:r0,useClass:r0,deps:[Eh,Ac,Gf,Pv,Zv]},{provide:Zx,deps:[Eh],useFactory:function(a){let l=[];return a.onStable.subscribe(()=>{for(;l.length;)l.pop()()}),function(f){l.push(f)}}},{provide:Zv,useClass:Zv,deps:[[new ia,yT]]},{provide:n0,useClass:n0,deps:[]},I2,{provide:Ay,useFactory:function(){return rx},deps:[]},{provide:Oy,useFactory:function(){return ix},deps:[]},{provide:Gy,useFactory:function(a){return pE(a=a||"undefined"!=typeof $localize&&$localize.locale||my),a},deps:[[new ha(Gy),new ia,new il]]},{provide:F2,useValue:"USD"}];let $T=(()=>{class a{constructor(f){}}return a.\u0275fac=function(f){return new(f||a)(xn(r0))},a.\u0275mod=Fn({type:a}),a.\u0275inj=Zn({providers:e3}),a})()},24751:(v,T,i)=>{"use strict";i.d(T,{TO:()=>li,Wl:()=>N,gN:()=>Mr,Fj:()=>K,Oe:()=>vr,CE:()=>Ca,qu:()=>Pt,NI:()=>Bn,u:()=>Ws,cw:()=>lr,sg:()=>fo,x0:()=>Ao,u5:()=>Su,Fd:()=>pi,qQ:()=>ts,Cf:()=>ae,JU:()=>S,a5:()=>Kr,JJ:()=>Br,JL:()=>Yr,F:()=>Ci,On:()=>_o,YN:()=>So,wV:()=>Zs,_:()=>us,UX:()=>Zl,Q7:()=>Eo,EJ:()=>ps,kI:()=>Ee,_Y:()=>co,Kr:()=>$e});var r=i(74788),u=i(12057),p=i(94402),d=i(35758),e=i(88002);let _=(()=>{class Te{constructor(xe,Ct){this._renderer=xe,this._elementRef=Ct,this.onChange=ur=>{},this.onTouched=()=>{}}setProperty(xe,Ct){this._renderer.setProperty(this._elementRef.nativeElement,xe,Ct)}registerOnTouched(xe){this.onTouched=xe}registerOnChange(xe){this.onChange=xe}setDisabledState(xe){this.setProperty("disabled",xe)}}return Te.\u0275fac=function(xe){return new(xe||Te)(r.Y36(r.Qsj),r.Y36(r.SBq))},Te.\u0275dir=r.lG2({type:Te}),Te})(),y=(()=>{class Te extends _{}return Te.\u0275fac=function(){let Me;return function(Ct){return(Me||(Me=r.n5z(Te)))(Ct||Te)}}(),Te.\u0275dir=r.lG2({type:Te,features:[r.qOj]}),Te})();const S=new r.OlP("NgValueAccessor"),A={provide:S,useExisting:(0,r.Gpc)(()=>N),multi:!0};let N=(()=>{class Te extends y{writeValue(xe){this.setProperty("checked",xe)}}return Te.\u0275fac=function(){let Me;return function(Ct){return(Me||(Me=r.n5z(Te)))(Ct||Te)}}(),Te.\u0275dir=r.lG2({type:Te,selectors:[["input","type","checkbox","formControlName",""],["input","type","checkbox","formControl",""],["input","type","checkbox","ngModel",""]],hostBindings:function(xe,Ct){1&xe&&r.NdJ("change",function(Qi){return Ct.onChange(Qi.target.checked)})("blur",function(){return Ct.onTouched()})},features:[r._Bn([A]),r.qOj]}),Te})();const L={provide:S,useExisting:(0,r.Gpc)(()=>K),multi:!0},J=new r.OlP("CompositionEventMode");let K=(()=>{class Te extends _{constructor(xe,Ct,ur){super(xe,Ct),this._compositionMode=ur,this._composing=!1,null==this._compositionMode&&(this._compositionMode=!function(){const Te=(0,u.q)()?(0,u.q)().getUserAgent():"";return/android (\d+)/.test(Te.toLowerCase())}())}writeValue(xe){this.setProperty("value",null==xe?"":xe)}_handleInput(xe){(!this._compositionMode||this._compositionMode&&!this._composing)&&this.onChange(xe)}_compositionStart(){this._composing=!0}_compositionEnd(xe){this._composing=!1,this._compositionMode&&this.onChange(xe)}}return Te.\u0275fac=function(xe){return new(xe||Te)(r.Y36(r.Qsj),r.Y36(r.SBq),r.Y36(J,8))},Te.\u0275dir=r.lG2({type:Te,selectors:[["input","formControlName","",3,"type","checkbox"],["textarea","formControlName",""],["input","formControl","",3,"type","checkbox"],["textarea","formControl",""],["input","ngModel","",3,"type","checkbox"],["textarea","ngModel",""],["","ngDefaultControl",""]],hostBindings:function(xe,Ct){1&xe&&r.NdJ("input",function(Qi){return Ct._handleInput(Qi.target.value)})("blur",function(){return Ct.onTouched()})("compositionstart",function(){return Ct._compositionStart()})("compositionend",function(Qi){return Ct._compositionEnd(Qi.target.value)})},features:[r._Bn([L]),r.qOj]}),Te})();function ee(Te){return null==Te||0===Te.length}function ue(Te){return null!=Te&&"number"==typeof Te.length}const ae=new r.OlP("NgValidators"),H=new r.OlP("NgAsyncValidators"),se=/^(?=.{1,254}$)(?=.{1,64}@)[a-zA-Z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-zA-Z0-9!#$%&'*+/=?^_`{|}~-]+)*@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/;class Ee{static min(Me){return ie(Me)}static max(Me){return he(Me)}static required(Me){return ge(Me)}static requiredTrue(Me){return!0===Me.value?null:{required:!0}}static email(Me){return ee((Te=Me).value)||se.test(Te.value)?null:{email:!0};var Te}static minLength(Me){return Te=Me,Me=>ee(Me.value)||!ue(Me.value)?null:Me.value.lengthue(Me.value)&&Me.value.length>Te?{maxlength:{requiredLength:Te,actualLength:Me.value.length}}:null;var Te}static pattern(Me){return function(Te){if(!Te)return Be;let Me,xe;return"string"==typeof Te?(xe="","^"!==Te.charAt(0)&&(xe+="^"),xe+=Te,"$"!==Te.charAt(Te.length-1)&&(xe+="$"),Me=new RegExp(xe)):(xe=Te.toString(),Me=Te),Ct=>{if(ee(Ct.value))return null;const ur=Ct.value;return Me.test(ur)?null:{pattern:{requiredPattern:xe,actualValue:ur}}}}(Me)}static nullValidator(Me){return null}static compose(Me){return It(Me)}static composeAsync(Me){return Ut(Me)}}function ie(Te){return Me=>{if(ee(Me.value)||ee(Te))return null;const xe=parseFloat(Me.value);return!isNaN(xe)&&xe{if(ee(Me.value)||ee(Te))return null;const xe=parseFloat(Me.value);return!isNaN(xe)&&xe>Te?{max:{max:Te,actual:Me.value}}:null}}function ge(Te){return ee(Te.value)?{required:!0}:null}function Be(Te){return null}function Pe(Te){return null!=Te}function je(Te){const Me=(0,r.QGY)(Te)?(0,p.D)(Te):Te;return(0,r.CqO)(Me),Me}function He(Te){let Me={};return Te.forEach(xe=>{Me=null!=xe?Object.assign(Object.assign({},Me),xe):Me}),0===Object.keys(Me).length?null:Me}function Vt(Te,Me){return Me.map(xe=>xe(Te))}function tn(Te){return Te.map(Me=>function(Te){return!Te.validate}(Me)?Me:xe=>Me.validate(xe))}function It(Te){if(!Te)return null;const Me=Te.filter(Pe);return 0==Me.length?null:function(xe){return He(Vt(xe,Me))}}function Zt(Te){return null!=Te?It(tn(Te)):null}function Ut(Te){if(!Te)return null;const Me=Te.filter(Pe);return 0==Me.length?null:function(xe){const Ct=Vt(xe,Me).map(je);return(0,d.D)(Ct).pipe((0,e.U)(He))}}function Bt(Te){return null!=Te?Ut(tn(Te)):null}function bt(Te,Me){return null===Te?[Me]:Array.isArray(Te)?[...Te,Me]:[Te,Me]}function Gt(Te){return Te._rawValidators}function xt(Te){return Te._rawAsyncValidators}function Xt(Te){return Te?Array.isArray(Te)?Te:[Te]:[]}function Zn(Te,Me){return Array.isArray(Te)?Te.includes(Me):Te===Me}function Ur(Te,Me){const xe=Xt(Me);return Xt(Te).forEach(ur=>{Zn(xe,ur)||xe.push(ur)}),xe}function di(Te,Me){return Xt(Me).filter(xe=>!Zn(Te,xe))}let Lr=(()=>{class Te{constructor(){this._rawValidators=[],this._rawAsyncValidators=[],this._onDestroyCallbacks=[]}get value(){return this.control?this.control.value:null}get valid(){return this.control?this.control.valid:null}get invalid(){return this.control?this.control.invalid:null}get pending(){return this.control?this.control.pending:null}get disabled(){return this.control?this.control.disabled:null}get enabled(){return this.control?this.control.enabled:null}get errors(){return this.control?this.control.errors:null}get pristine(){return this.control?this.control.pristine:null}get dirty(){return this.control?this.control.dirty:null}get touched(){return this.control?this.control.touched:null}get status(){return this.control?this.control.status:null}get untouched(){return this.control?this.control.untouched:null}get statusChanges(){return this.control?this.control.statusChanges:null}get valueChanges(){return this.control?this.control.valueChanges:null}get path(){return null}_setValidators(xe){this._rawValidators=xe||[],this._composedValidatorFn=Zt(this._rawValidators)}_setAsyncValidators(xe){this._rawAsyncValidators=xe||[],this._composedAsyncValidatorFn=Bt(this._rawAsyncValidators)}get validator(){return this._composedValidatorFn||null}get asyncValidator(){return this._composedAsyncValidatorFn||null}_registerOnDestroy(xe){this._onDestroyCallbacks.push(xe)}_invokeOnDestroyCallbacks(){this._onDestroyCallbacks.forEach(xe=>xe()),this._onDestroyCallbacks=[]}reset(xe){this.control&&this.control.reset(xe)}hasError(xe,Ct){return!!this.control&&this.control.hasError(xe,Ct)}getError(xe,Ct){return this.control?this.control.getError(xe,Ct):null}}return Te.\u0275fac=function(xe){return new(xe||Te)},Te.\u0275dir=r.lG2({type:Te}),Te})(),Mr=(()=>{class Te extends Lr{get formDirective(){return null}get path(){return null}}return Te.\u0275fac=function(){let Me;return function(Ct){return(Me||(Me=r.n5z(Te)))(Ct||Te)}}(),Te.\u0275dir=r.lG2({type:Te,features:[r.qOj]}),Te})();class Kr extends Lr{constructor(){super(...arguments),this._parent=null,this.name=null,this.valueAccessor=null}}class ei{constructor(Me){this._cd=Me}is(Me){var xe,Ct,ur;return"submitted"===Me?!!(null===(xe=this._cd)||void 0===xe?void 0:xe.submitted):!!(null===(ur=null===(Ct=this._cd)||void 0===Ct?void 0:Ct.control)||void 0===ur?void 0:ur[Me])}}let Br=(()=>{class Te extends ei{constructor(xe){super(xe)}}return Te.\u0275fac=function(xe){return new(xe||Te)(r.Y36(Kr,2))},Te.\u0275dir=r.lG2({type:Te,selectors:[["","formControlName",""],["","ngModel",""],["","formControl",""]],hostVars:14,hostBindings:function(xe,Ct){2&xe&&r.ekj("ng-untouched",Ct.is("untouched"))("ng-touched",Ct.is("touched"))("ng-pristine",Ct.is("pristine"))("ng-dirty",Ct.is("dirty"))("ng-valid",Ct.is("valid"))("ng-invalid",Ct.is("invalid"))("ng-pending",Ct.is("pending"))},features:[r.qOj]}),Te})(),Yr=(()=>{class Te extends ei{constructor(xe){super(xe)}}return Te.\u0275fac=function(xe){return new(xe||Te)(r.Y36(Mr,10))},Te.\u0275dir=r.lG2({type:Te,selectors:[["","formGroupName",""],["","formArrayName",""],["","ngModelGroup",""],["","formGroup",""],["form",3,"ngNoForm",""],["","ngForm",""]],hostVars:16,hostBindings:function(xe,Ct){2&xe&&r.ekj("ng-untouched",Ct.is("untouched"))("ng-touched",Ct.is("touched"))("ng-pristine",Ct.is("pristine"))("ng-dirty",Ct.is("dirty"))("ng-valid",Ct.is("valid"))("ng-invalid",Ct.is("invalid"))("ng-pending",Ct.is("pending"))("ng-submitted",Ct.is("submitted"))},features:[r.qOj]}),Te})();function wi(Te,Me){return[...Me.path,Te]}function br(Te,Me){gr(Te,Me),Me.valueAccessor.writeValue(Te.value),function(Te,Me){Me.valueAccessor.registerOnChange(xe=>{Te._pendingValue=xe,Te._pendingChange=!0,Te._pendingDirty=!0,"change"===Te.updateOn&&Dn(Te,Me)})}(Te,Me),function(Te,Me){const xe=(Ct,ur)=>{Me.valueAccessor.writeValue(Ct),ur&&Me.viewToModelUpdate(Ct)};Te.registerOnChange(xe),Me._registerOnDestroy(()=>{Te._unregisterOnChange(xe)})}(Te,Me),function(Te,Me){Me.valueAccessor.registerOnTouched(()=>{Te._pendingTouched=!0,"blur"===Te.updateOn&&Te._pendingChange&&Dn(Te,Me),"submit"!==Te.updateOn&&Te.markAsTouched()})}(Te,Me),function(Te,Me){if(Me.valueAccessor.setDisabledState){const xe=Ct=>{Me.valueAccessor.setDisabledState(Ct)};Te.registerOnDisabledChange(xe),Me._registerOnDestroy(()=>{Te._unregisterOnDisabledChange(xe)})}}(Te,Me)}function Dr(Te,Me,xe=!0){const Ct=()=>{};Me.valueAccessor&&(Me.valueAccessor.registerOnChange(Ct),Me.valueAccessor.registerOnTouched(Ct)),Jt(Te,Me),Te&&(Me._invokeOnDestroyCallbacks(),Te._registerOnCollectionChange(()=>{}))}function gn(Te,Me){Te.forEach(xe=>{xe.registerOnValidatorChange&&xe.registerOnValidatorChange(Me)})}function gr(Te,Me){const xe=Gt(Te);null!==Me.validator?Te.setValidators(bt(xe,Me.validator)):"function"==typeof xe&&Te.setValidators([xe]);const Ct=xt(Te);null!==Me.asyncValidator?Te.setAsyncValidators(bt(Ct,Me.asyncValidator)):"function"==typeof Ct&&Te.setAsyncValidators([Ct]);const ur=()=>Te.updateValueAndValidity();gn(Me._rawValidators,ur),gn(Me._rawAsyncValidators,ur)}function Jt(Te,Me){let xe=!1;if(null!==Te){if(null!==Me.validator){const ur=Gt(Te);if(Array.isArray(ur)&&ur.length>0){const Qi=ur.filter(Go=>Go!==Me.validator);Qi.length!==ur.length&&(xe=!0,Te.setValidators(Qi))}}if(null!==Me.asyncValidator){const ur=xt(Te);if(Array.isArray(ur)&&ur.length>0){const Qi=ur.filter(Go=>Go!==Me.asyncValidator);Qi.length!==ur.length&&(xe=!0,Te.setAsyncValidators(Qi))}}}const Ct=()=>{};return gn(Me._rawValidators,Ct),gn(Me._rawAsyncValidators,Ct),xe}function Dn(Te,Me){Te._pendingDirty&&Te.markAsDirty(),Te.setValue(Te._pendingValue,{emitModelToViewChange:!1}),Me.viewToModelUpdate(Te._pendingValue),Te._pendingChange=!1}function Yt(Te,Me){gr(Te,Me)}function mi(Te,Me){if(!Te.hasOwnProperty("model"))return!1;const xe=Te.model;return!!xe.isFirstChange()||!Object.is(Me,xe.currentValue)}function Er(Te,Me){Te._syncPendingControls(),Me.forEach(xe=>{const Ct=xe.control;"submit"===Ct.updateOn&&Ct._pendingChange&&(xe.viewToModelUpdate(Ct._pendingValue),Ct._pendingChange=!1)})}function Wr(Te,Me){if(!Me)return null;let xe,Ct,ur;return Array.isArray(Me),Me.forEach(Qi=>{Qi.constructor===K?xe=Qi:function(Te){return Object.getPrototypeOf(Te.constructor)===y}(Qi)?Ct=Qi:ur=Qi}),ur||Ct||xe||null}function dr(Te,Me){const xe=Te.indexOf(Me);xe>-1&&Te.splice(xe,1)}const ar="VALID",Wi="INVALID",lo="PENDING",vo="DISABLED";function Gi(Te){return(Mi(Te)?Te.validators:Te)||null}function os(Te){return Array.isArray(Te)?Zt(Te):Te||null}function jo(Te,Me){return(Mi(Me)?Me.asyncValidators:Te)||null}function To(Te){return Array.isArray(Te)?Bt(Te):Te||null}function Mi(Te){return null!=Te&&!Array.isArray(Te)&&"object"==typeof Te}class li{constructor(Me,xe){this._hasOwnPendingAsyncValidator=!1,this._onCollectionChange=()=>{},this._parent=null,this.pristine=!0,this.touched=!1,this._onDisabledChange=[],this._rawValidators=Me,this._rawAsyncValidators=xe,this._composedValidatorFn=os(this._rawValidators),this._composedAsyncValidatorFn=To(this._rawAsyncValidators)}get validator(){return this._composedValidatorFn}set validator(Me){this._rawValidators=this._composedValidatorFn=Me}get asyncValidator(){return this._composedAsyncValidatorFn}set asyncValidator(Me){this._rawAsyncValidators=this._composedAsyncValidatorFn=Me}get parent(){return this._parent}get valid(){return this.status===ar}get invalid(){return this.status===Wi}get pending(){return this.status==lo}get disabled(){return this.status===vo}get enabled(){return this.status!==vo}get dirty(){return!this.pristine}get untouched(){return!this.touched}get updateOn(){return this._updateOn?this._updateOn:this.parent?this.parent.updateOn:"change"}setValidators(Me){this._rawValidators=Me,this._composedValidatorFn=os(Me)}setAsyncValidators(Me){this._rawAsyncValidators=Me,this._composedAsyncValidatorFn=To(Me)}addValidators(Me){this.setValidators(Ur(Me,this._rawValidators))}addAsyncValidators(Me){this.setAsyncValidators(Ur(Me,this._rawAsyncValidators))}removeValidators(Me){this.setValidators(di(Me,this._rawValidators))}removeAsyncValidators(Me){this.setAsyncValidators(di(Me,this._rawAsyncValidators))}hasValidator(Me){return Zn(this._rawValidators,Me)}hasAsyncValidator(Me){return Zn(this._rawAsyncValidators,Me)}clearValidators(){this.validator=null}clearAsyncValidators(){this.asyncValidator=null}markAsTouched(Me={}){this.touched=!0,this._parent&&!Me.onlySelf&&this._parent.markAsTouched(Me)}markAllAsTouched(){this.markAsTouched({onlySelf:!0}),this._forEachChild(Me=>Me.markAllAsTouched())}markAsUntouched(Me={}){this.touched=!1,this._pendingTouched=!1,this._forEachChild(xe=>{xe.markAsUntouched({onlySelf:!0})}),this._parent&&!Me.onlySelf&&this._parent._updateTouched(Me)}markAsDirty(Me={}){this.pristine=!1,this._parent&&!Me.onlySelf&&this._parent.markAsDirty(Me)}markAsPristine(Me={}){this.pristine=!0,this._pendingDirty=!1,this._forEachChild(xe=>{xe.markAsPristine({onlySelf:!0})}),this._parent&&!Me.onlySelf&&this._parent._updatePristine(Me)}markAsPending(Me={}){this.status=lo,!1!==Me.emitEvent&&this.statusChanges.emit(this.status),this._parent&&!Me.onlySelf&&this._parent.markAsPending(Me)}disable(Me={}){const xe=this._parentMarkedDirty(Me.onlySelf);this.status=vo,this.errors=null,this._forEachChild(Ct=>{Ct.disable(Object.assign(Object.assign({},Me),{onlySelf:!0}))}),this._updateValue(),!1!==Me.emitEvent&&(this.valueChanges.emit(this.value),this.statusChanges.emit(this.status)),this._updateAncestors(Object.assign(Object.assign({},Me),{skipPristineCheck:xe})),this._onDisabledChange.forEach(Ct=>Ct(!0))}enable(Me={}){const xe=this._parentMarkedDirty(Me.onlySelf);this.status=ar,this._forEachChild(Ct=>{Ct.enable(Object.assign(Object.assign({},Me),{onlySelf:!0}))}),this.updateValueAndValidity({onlySelf:!0,emitEvent:Me.emitEvent}),this._updateAncestors(Object.assign(Object.assign({},Me),{skipPristineCheck:xe})),this._onDisabledChange.forEach(Ct=>Ct(!1))}_updateAncestors(Me){this._parent&&!Me.onlySelf&&(this._parent.updateValueAndValidity(Me),Me.skipPristineCheck||this._parent._updatePristine(),this._parent._updateTouched())}setParent(Me){this._parent=Me}updateValueAndValidity(Me={}){this._setInitialStatus(),this._updateValue(),this.enabled&&(this._cancelExistingSubscription(),this.errors=this._runValidator(),this.status=this._calculateStatus(),(this.status===ar||this.status===lo)&&this._runAsyncValidator(Me.emitEvent)),!1!==Me.emitEvent&&(this.valueChanges.emit(this.value),this.statusChanges.emit(this.status)),this._parent&&!Me.onlySelf&&this._parent.updateValueAndValidity(Me)}_updateTreeValidity(Me={emitEvent:!0}){this._forEachChild(xe=>xe._updateTreeValidity(Me)),this.updateValueAndValidity({onlySelf:!0,emitEvent:Me.emitEvent})}_setInitialStatus(){this.status=this._allControlsDisabled()?vo:ar}_runValidator(){return this.validator?this.validator(this):null}_runAsyncValidator(Me){if(this.asyncValidator){this.status=lo,this._hasOwnPendingAsyncValidator=!0;const xe=je(this.asyncValidator(this));this._asyncValidationSubscription=xe.subscribe(Ct=>{this._hasOwnPendingAsyncValidator=!1,this.setErrors(Ct,{emitEvent:Me})})}}_cancelExistingSubscription(){this._asyncValidationSubscription&&(this._asyncValidationSubscription.unsubscribe(),this._hasOwnPendingAsyncValidator=!1)}setErrors(Me,xe={}){this.errors=Me,this._updateControlsErrors(!1!==xe.emitEvent)}get(Me){return function(Te,Me,xe){if(null==Me||(Array.isArray(Me)||(Me=Me.split(".")),Array.isArray(Me)&&0===Me.length))return null;let Ct=Te;return Me.forEach(ur=>{Ct=Ct instanceof lr?Ct.controls.hasOwnProperty(ur)?Ct.controls[ur]:null:Ct instanceof vr&&Ct.at(ur)||null}),Ct}(this,Me)}getError(Me,xe){const Ct=xe?this.get(xe):this;return Ct&&Ct.errors?Ct.errors[Me]:null}hasError(Me,xe){return!!this.getError(Me,xe)}get root(){let Me=this;for(;Me._parent;)Me=Me._parent;return Me}_updateControlsErrors(Me){this.status=this._calculateStatus(),Me&&this.statusChanges.emit(this.status),this._parent&&this._parent._updateControlsErrors(Me)}_initObservables(){this.valueChanges=new r.vpe,this.statusChanges=new r.vpe}_calculateStatus(){return this._allControlsDisabled()?vo:this.errors?Wi:this._hasOwnPendingAsyncValidator||this._anyControlsHaveStatus(lo)?lo:this._anyControlsHaveStatus(Wi)?Wi:ar}_anyControlsHaveStatus(Me){return this._anyControls(xe=>xe.status===Me)}_anyControlsDirty(){return this._anyControls(Me=>Me.dirty)}_anyControlsTouched(){return this._anyControls(Me=>Me.touched)}_updatePristine(Me={}){this.pristine=!this._anyControlsDirty(),this._parent&&!Me.onlySelf&&this._parent._updatePristine(Me)}_updateTouched(Me={}){this.touched=this._anyControlsTouched(),this._parent&&!Me.onlySelf&&this._parent._updateTouched(Me)}_isBoxedValue(Me){return"object"==typeof Me&&null!==Me&&2===Object.keys(Me).length&&"value"in Me&&"disabled"in Me}_registerOnCollectionChange(Me){this._onCollectionChange=Me}_setUpdateStrategy(Me){Mi(Me)&&null!=Me.updateOn&&(this._updateOn=Me.updateOn)}_parentMarkedDirty(Me){return!Me&&!(!this._parent||!this._parent.dirty)&&!this._parent._anyControlsDirty()}}class Bn extends li{constructor(Me=null,xe,Ct){super(Gi(xe),jo(Ct,xe)),this._onChange=[],this._applyFormState(Me),this._setUpdateStrategy(xe),this._initObservables(),this.updateValueAndValidity({onlySelf:!0,emitEvent:!!this.asyncValidator})}setValue(Me,xe={}){this.value=this._pendingValue=Me,this._onChange.length&&!1!==xe.emitModelToViewChange&&this._onChange.forEach(Ct=>Ct(this.value,!1!==xe.emitViewToModelChange)),this.updateValueAndValidity(xe)}patchValue(Me,xe={}){this.setValue(Me,xe)}reset(Me=null,xe={}){this._applyFormState(Me),this.markAsPristine(xe),this.markAsUntouched(xe),this.setValue(this.value,xe),this._pendingChange=!1}_updateValue(){}_anyControls(Me){return!1}_allControlsDisabled(){return this.disabled}registerOnChange(Me){this._onChange.push(Me)}_unregisterOnChange(Me){dr(this._onChange,Me)}registerOnDisabledChange(Me){this._onDisabledChange.push(Me)}_unregisterOnDisabledChange(Me){dr(this._onDisabledChange,Me)}_forEachChild(Me){}_syncPendingControls(){return!("submit"!==this.updateOn||(this._pendingDirty&&this.markAsDirty(),this._pendingTouched&&this.markAsTouched(),!this._pendingChange)||(this.setValue(this._pendingValue,{onlySelf:!0,emitModelToViewChange:!1}),0))}_applyFormState(Me){this._isBoxedValue(Me)?(this.value=this._pendingValue=Me.value,Me.disabled?this.disable({onlySelf:!0,emitEvent:!1}):this.enable({onlySelf:!0,emitEvent:!1})):this.value=this._pendingValue=Me}}class lr extends li{constructor(Me,xe,Ct){super(Gi(xe),jo(Ct,xe)),this.controls=Me,this._initObservables(),this._setUpdateStrategy(xe),this._setUpControls(),this.updateValueAndValidity({onlySelf:!0,emitEvent:!!this.asyncValidator})}registerControl(Me,xe){return this.controls[Me]?this.controls[Me]:(this.controls[Me]=xe,xe.setParent(this),xe._registerOnCollectionChange(this._onCollectionChange),xe)}addControl(Me,xe,Ct={}){this.registerControl(Me,xe),this.updateValueAndValidity({emitEvent:Ct.emitEvent}),this._onCollectionChange()}removeControl(Me,xe={}){this.controls[Me]&&this.controls[Me]._registerOnCollectionChange(()=>{}),delete this.controls[Me],this.updateValueAndValidity({emitEvent:xe.emitEvent}),this._onCollectionChange()}setControl(Me,xe,Ct={}){this.controls[Me]&&this.controls[Me]._registerOnCollectionChange(()=>{}),delete this.controls[Me],xe&&this.registerControl(Me,xe),this.updateValueAndValidity({emitEvent:Ct.emitEvent}),this._onCollectionChange()}contains(Me){return this.controls.hasOwnProperty(Me)&&this.controls[Me].enabled}setValue(Me,xe={}){this._checkAllValuesPresent(Me),Object.keys(Me).forEach(Ct=>{this._throwIfControlMissing(Ct),this.controls[Ct].setValue(Me[Ct],{onlySelf:!0,emitEvent:xe.emitEvent})}),this.updateValueAndValidity(xe)}patchValue(Me,xe={}){null!=Me&&(Object.keys(Me).forEach(Ct=>{this.controls[Ct]&&this.controls[Ct].patchValue(Me[Ct],{onlySelf:!0,emitEvent:xe.emitEvent})}),this.updateValueAndValidity(xe))}reset(Me={},xe={}){this._forEachChild((Ct,ur)=>{Ct.reset(Me[ur],{onlySelf:!0,emitEvent:xe.emitEvent})}),this._updatePristine(xe),this._updateTouched(xe),this.updateValueAndValidity(xe)}getRawValue(){return this._reduceChildren({},(Me,xe,Ct)=>(Me[Ct]=xe instanceof Bn?xe.value:xe.getRawValue(),Me))}_syncPendingControls(){let Me=this._reduceChildren(!1,(xe,Ct)=>!!Ct._syncPendingControls()||xe);return Me&&this.updateValueAndValidity({onlySelf:!0}),Me}_throwIfControlMissing(Me){if(!Object.keys(this.controls).length)throw new Error("\n There are no form controls registered with this group yet. If you're using ngModel,\n you may want to check next tick (e.g. use setTimeout).\n ");if(!this.controls[Me])throw new Error(`Cannot find form control with name: ${Me}.`)}_forEachChild(Me){Object.keys(this.controls).forEach(xe=>{const Ct=this.controls[xe];Ct&&Me(Ct,xe)})}_setUpControls(){this._forEachChild(Me=>{Me.setParent(this),Me._registerOnCollectionChange(this._onCollectionChange)})}_updateValue(){this.value=this._reduceValue()}_anyControls(Me){for(const xe of Object.keys(this.controls)){const Ct=this.controls[xe];if(this.contains(xe)&&Me(Ct))return!0}return!1}_reduceValue(){return this._reduceChildren({},(Me,xe,Ct)=>((xe.enabled||this.disabled)&&(Me[Ct]=xe.value),Me))}_reduceChildren(Me,xe){let Ct=Me;return this._forEachChild((ur,Qi)=>{Ct=xe(Ct,ur,Qi)}),Ct}_allControlsDisabled(){for(const Me of Object.keys(this.controls))if(this.controls[Me].enabled)return!1;return Object.keys(this.controls).length>0||this.disabled}_checkAllValuesPresent(Me){this._forEachChild((xe,Ct)=>{if(void 0===Me[Ct])throw new Error(`Must supply a value for form control with name: '${Ct}'.`)})}}class vr extends li{constructor(Me,xe,Ct){super(Gi(xe),jo(Ct,xe)),this.controls=Me,this._initObservables(),this._setUpdateStrategy(xe),this._setUpControls(),this.updateValueAndValidity({onlySelf:!0,emitEvent:!!this.asyncValidator})}at(Me){return this.controls[Me]}push(Me,xe={}){this.controls.push(Me),this._registerControl(Me),this.updateValueAndValidity({emitEvent:xe.emitEvent}),this._onCollectionChange()}insert(Me,xe,Ct={}){this.controls.splice(Me,0,xe),this._registerControl(xe),this.updateValueAndValidity({emitEvent:Ct.emitEvent})}removeAt(Me,xe={}){this.controls[Me]&&this.controls[Me]._registerOnCollectionChange(()=>{}),this.controls.splice(Me,1),this.updateValueAndValidity({emitEvent:xe.emitEvent})}setControl(Me,xe,Ct={}){this.controls[Me]&&this.controls[Me]._registerOnCollectionChange(()=>{}),this.controls.splice(Me,1),xe&&(this.controls.splice(Me,0,xe),this._registerControl(xe)),this.updateValueAndValidity({emitEvent:Ct.emitEvent}),this._onCollectionChange()}get length(){return this.controls.length}setValue(Me,xe={}){this._checkAllValuesPresent(Me),Me.forEach((Ct,ur)=>{this._throwIfControlMissing(ur),this.at(ur).setValue(Ct,{onlySelf:!0,emitEvent:xe.emitEvent})}),this.updateValueAndValidity(xe)}patchValue(Me,xe={}){null!=Me&&(Me.forEach((Ct,ur)=>{this.at(ur)&&this.at(ur).patchValue(Ct,{onlySelf:!0,emitEvent:xe.emitEvent})}),this.updateValueAndValidity(xe))}reset(Me=[],xe={}){this._forEachChild((Ct,ur)=>{Ct.reset(Me[ur],{onlySelf:!0,emitEvent:xe.emitEvent})}),this._updatePristine(xe),this._updateTouched(xe),this.updateValueAndValidity(xe)}getRawValue(){return this.controls.map(Me=>Me instanceof Bn?Me.value:Me.getRawValue())}clear(Me={}){this.controls.length<1||(this._forEachChild(xe=>xe._registerOnCollectionChange(()=>{})),this.controls.splice(0),this.updateValueAndValidity({emitEvent:Me.emitEvent}))}_syncPendingControls(){let Me=this.controls.reduce((xe,Ct)=>!!Ct._syncPendingControls()||xe,!1);return Me&&this.updateValueAndValidity({onlySelf:!0}),Me}_throwIfControlMissing(Me){if(!this.controls.length)throw new Error("\n There are no form controls registered with this array yet. If you're using ngModel,\n you may want to check next tick (e.g. use setTimeout).\n ");if(!this.at(Me))throw new Error(`Cannot find form control at index ${Me}`)}_forEachChild(Me){this.controls.forEach((xe,Ct)=>{Me(xe,Ct)})}_updateValue(){this.value=this.controls.filter(Me=>Me.enabled||this.disabled).map(Me=>Me.value)}_anyControls(Me){return this.controls.some(xe=>xe.enabled&&Me(xe))}_setUpControls(){this._forEachChild(Me=>this._registerControl(Me))}_checkAllValuesPresent(Me){this._forEachChild((xe,Ct)=>{if(void 0===Me[Ct])throw new Error(`Must supply a value for form control at index: ${Ct}.`)})}_allControlsDisabled(){for(const Me of this.controls)if(Me.enabled)return!1;return this.controls.length>0||this.disabled}_registerControl(Me){Me.setParent(this),Me._registerOnCollectionChange(this._onCollectionChange)}}const er={provide:Mr,useExisting:(0,r.Gpc)(()=>Ci)},uo=(()=>Promise.resolve(null))();let Ci=(()=>{class Te extends Mr{constructor(xe,Ct){super(),this.submitted=!1,this._directives=[],this.ngSubmit=new r.vpe,this.form=new lr({},Zt(xe),Bt(Ct))}ngAfterViewInit(){this._setUpdateStrategy()}get formDirective(){return this}get control(){return this.form}get path(){return[]}get controls(){return this.form.controls}addControl(xe){uo.then(()=>{const Ct=this._findContainer(xe.path);xe.control=Ct.registerControl(xe.name,xe.control),br(xe.control,xe),xe.control.updateValueAndValidity({emitEvent:!1}),this._directives.push(xe)})}getControl(xe){return this.form.get(xe.path)}removeControl(xe){uo.then(()=>{const Ct=this._findContainer(xe.path);Ct&&Ct.removeControl(xe.name),dr(this._directives,xe)})}addFormGroup(xe){uo.then(()=>{const Ct=this._findContainer(xe.path),ur=new lr({});Yt(ur,xe),Ct.registerControl(xe.name,ur),ur.updateValueAndValidity({emitEvent:!1})})}removeFormGroup(xe){uo.then(()=>{const Ct=this._findContainer(xe.path);Ct&&Ct.removeControl(xe.name)})}getFormGroup(xe){return this.form.get(xe.path)}updateModel(xe,Ct){uo.then(()=>{this.form.get(xe.path).setValue(Ct)})}setValue(xe){this.control.setValue(xe)}onSubmit(xe){return this.submitted=!0,Er(this.form,this._directives),this.ngSubmit.emit(xe),!1}onReset(){this.resetForm()}resetForm(xe){this.form.reset(xe),this.submitted=!1}_setUpdateStrategy(){this.options&&null!=this.options.updateOn&&(this.form._updateOn=this.options.updateOn)}_findContainer(xe){return xe.pop(),xe.length?this.form.get(xe):this.form}}return Te.\u0275fac=function(xe){return new(xe||Te)(r.Y36(ae,10),r.Y36(H,10))},Te.\u0275dir=r.lG2({type:Te,selectors:[["form",3,"ngNoForm","",3,"formGroup",""],["ng-form"],["","ngForm",""]],hostBindings:function(xe,Ct){1&xe&&r.NdJ("submit",function(Qi){return Ct.onSubmit(Qi)})("reset",function(){return Ct.onReset()})},inputs:{options:["ngFormOptions","options"]},outputs:{ngSubmit:"ngSubmit"},exportAs:["ngForm"],features:[r._Bn([er]),r.qOj]}),Te})(),$o=(()=>{class Te extends Mr{ngOnInit(){this._checkParentType(),this.formDirective.addFormGroup(this)}ngOnDestroy(){this.formDirective&&this.formDirective.removeFormGroup(this)}get control(){return this.formDirective.getFormGroup(this)}get path(){return wi(null==this.name?this.name:this.name.toString(),this._parent)}get formDirective(){return this._parent?this._parent.formDirective:null}_checkParentType(){}}return Te.\u0275fac=function(){let Me;return function(Ct){return(Me||(Me=r.n5z(Te)))(Ct||Te)}}(),Te.\u0275dir=r.lG2({type:Te,features:[r.qOj]}),Te})();const on={provide:Kr,useExisting:(0,r.Gpc)(()=>_o)},Vi=(()=>Promise.resolve(null))();let _o=(()=>{class Te extends Kr{constructor(xe,Ct,ur,Qi){super(),this.control=new Bn,this._registered=!1,this.update=new r.vpe,this._parent=xe,this._setValidators(Ct),this._setAsyncValidators(ur),this.valueAccessor=Wr(0,Qi)}ngOnChanges(xe){this._checkForErrors(),this._registered||this._setUpControl(),"isDisabled"in xe&&this._updateDisabled(xe),mi(xe,this.viewModel)&&(this._updateValue(this.model),this.viewModel=this.model)}ngOnDestroy(){this.formDirective&&this.formDirective.removeControl(this)}get path(){return this._parent?wi(this.name,this._parent):[this.name]}get formDirective(){return this._parent?this._parent.formDirective:null}viewToModelUpdate(xe){this.viewModel=xe,this.update.emit(xe)}_setUpControl(){this._setUpdateStrategy(),this._isStandalone()?this._setUpStandalone():this.formDirective.addControl(this),this._registered=!0}_setUpdateStrategy(){this.options&&null!=this.options.updateOn&&(this.control._updateOn=this.options.updateOn)}_isStandalone(){return!this._parent||!(!this.options||!this.options.standalone)}_setUpStandalone(){br(this.control,this),this.control.updateValueAndValidity({emitEvent:!1})}_checkForErrors(){this._isStandalone()||this._checkParentType(),this._checkName()}_checkParentType(){}_checkName(){this.options&&this.options.name&&(this.name=this.options.name),this._isStandalone()}_updateValue(xe){Vi.then(()=>{this.control.setValue(xe,{emitViewToModelChange:!1})})}_updateDisabled(xe){const Ct=xe.isDisabled.currentValue,ur=""===Ct||Ct&&"false"!==Ct;Vi.then(()=>{ur&&!this.control.disabled?this.control.disable():!ur&&this.control.disabled&&this.control.enable()})}}return Te.\u0275fac=function(xe){return new(xe||Te)(r.Y36(Mr,9),r.Y36(ae,10),r.Y36(H,10),r.Y36(S,10))},Te.\u0275dir=r.lG2({type:Te,selectors:[["","ngModel","",3,"formControlName","",3,"formControl",""]],inputs:{name:"name",isDisabled:["disabled","isDisabled"],model:["ngModel","model"],options:["ngModelOptions","options"]},outputs:{update:"ngModelChange"},exportAs:["ngModel"],features:[r._Bn([on]),r.qOj,r.TTD]}),Te})(),co=(()=>{class Te{}return Te.\u0275fac=function(xe){return new(xe||Te)},Te.\u0275dir=r.lG2({type:Te,selectors:[["form",3,"ngNoForm","",3,"ngNativeValidate",""]],hostAttrs:["novalidate",""]}),Te})();const Es={provide:S,useExisting:(0,r.Gpc)(()=>Zs),multi:!0};let Zs=(()=>{class Te extends y{writeValue(xe){this.setProperty("value",null==xe?"":xe)}registerOnChange(xe){this.onChange=Ct=>{xe(""==Ct?null:parseFloat(Ct))}}}return Te.\u0275fac=function(){let Me;return function(Ct){return(Me||(Me=r.n5z(Te)))(Ct||Te)}}(),Te.\u0275dir=r.lG2({type:Te,selectors:[["input","type","number","formControlName",""],["input","type","number","formControl",""],["input","type","number","ngModel",""]],hostBindings:function(xe,Ct){1&xe&&r.NdJ("input",function(Qi){return Ct.onChange(Qi.target.value)})("blur",function(){return Ct.onTouched()})},features:[r._Bn([Es]),r.qOj]}),Te})();const ls={provide:S,useExisting:(0,r.Gpc)(()=>us),multi:!0};let ta=(()=>{class Te{}return Te.\u0275fac=function(xe){return new(xe||Te)},Te.\u0275mod=r.oAB({type:Te}),Te.\u0275inj=r.cJS({}),Te})(),Is=(()=>{class Te{constructor(){this._accessors=[]}add(xe,Ct){this._accessors.push([xe,Ct])}remove(xe){for(let Ct=this._accessors.length-1;Ct>=0;--Ct)if(this._accessors[Ct][1]===xe)return void this._accessors.splice(Ct,1)}select(xe){this._accessors.forEach(Ct=>{this._isSameGroup(Ct,xe)&&Ct[1]!==xe&&Ct[1].fireUncheck(xe.value)})}_isSameGroup(xe,Ct){return!!xe[0].control&&xe[0]._parent===Ct._control._parent&&xe[1].name===Ct.name}}return Te.\u0275fac=function(xe){return new(xe||Te)},Te.\u0275prov=(0,r.Yz7)({factory:function(){return new Te},token:Te,providedIn:ta}),Te})(),us=(()=>{class Te extends y{constructor(xe,Ct,ur,Qi){super(xe,Ct),this._registry=ur,this._injector=Qi,this.onChange=()=>{}}ngOnInit(){this._control=this._injector.get(Kr),this._checkName(),this._registry.add(this._control,this)}ngOnDestroy(){this._registry.remove(this)}writeValue(xe){this._state=xe===this.value,this.setProperty("checked",this._state)}registerOnChange(xe){this._fn=xe,this.onChange=()=>{xe(this.value),this._registry.select(this)}}fireUncheck(xe){this.writeValue(xe)}_checkName(){!this.name&&this.formControlName&&(this.name=this.formControlName)}}return Te.\u0275fac=function(xe){return new(xe||Te)(r.Y36(r.Qsj),r.Y36(r.SBq),r.Y36(Is),r.Y36(r.zs3))},Te.\u0275dir=r.lG2({type:Te,selectors:[["input","type","radio","formControlName",""],["input","type","radio","formControl",""],["input","type","radio","ngModel",""]],hostBindings:function(xe,Ct){1&xe&&r.NdJ("change",function(){return Ct.onChange()})("blur",function(){return Ct.onTouched()})},inputs:{name:"name",formControlName:"formControlName",value:"value"},features:[r._Bn([ls]),r.qOj]}),Te})();const ca=new r.OlP("NgModelWithFormControlWarning"),Il={provide:Mr,useExisting:(0,r.Gpc)(()=>fo)};let fo=(()=>{class Te extends Mr{constructor(xe,Ct){super(),this.validators=xe,this.asyncValidators=Ct,this.submitted=!1,this._onCollectionChange=()=>this._updateDomValue(),this.directives=[],this.form=null,this.ngSubmit=new r.vpe,this._setValidators(xe),this._setAsyncValidators(Ct)}ngOnChanges(xe){this._checkFormPresent(),xe.hasOwnProperty("form")&&(this._updateValidators(),this._updateDomValue(),this._updateRegistrations(),this._oldForm=this.form)}ngOnDestroy(){this.form&&(Jt(this.form,this),this.form._onCollectionChange===this._onCollectionChange&&this.form._registerOnCollectionChange(()=>{}))}get formDirective(){return this}get control(){return this.form}get path(){return[]}addControl(xe){const Ct=this.form.get(xe.path);return br(Ct,xe),Ct.updateValueAndValidity({emitEvent:!1}),this.directives.push(xe),Ct}getControl(xe){return this.form.get(xe.path)}removeControl(xe){Dr(xe.control||null,xe,!1),dr(this.directives,xe)}addFormGroup(xe){this._setUpFormContainer(xe)}removeFormGroup(xe){this._cleanUpFormContainer(xe)}getFormGroup(xe){return this.form.get(xe.path)}addFormArray(xe){this._setUpFormContainer(xe)}removeFormArray(xe){this._cleanUpFormContainer(xe)}getFormArray(xe){return this.form.get(xe.path)}updateModel(xe,Ct){this.form.get(xe.path).setValue(Ct)}onSubmit(xe){return this.submitted=!0,Er(this.form,this.directives),this.ngSubmit.emit(xe),!1}onReset(){this.resetForm()}resetForm(xe){this.form.reset(xe),this.submitted=!1}_updateDomValue(){this.directives.forEach(xe=>{const Ct=xe.control,ur=this.form.get(xe.path);Ct!==ur&&(Dr(Ct||null,xe),ur instanceof Bn&&(br(ur,xe),xe.control=ur))}),this.form._updateTreeValidity({emitEvent:!1})}_setUpFormContainer(xe){const Ct=this.form.get(xe.path);Yt(Ct,xe),Ct.updateValueAndValidity({emitEvent:!1})}_cleanUpFormContainer(xe){if(this.form){const Ct=this.form.get(xe.path);Ct&&function(Te,Me){return Jt(Te,Me)}(Ct,xe)&&Ct.updateValueAndValidity({emitEvent:!1})}}_updateRegistrations(){this.form._registerOnCollectionChange(this._onCollectionChange),this._oldForm&&this._oldForm._registerOnCollectionChange(()=>{})}_updateValidators(){gr(this.form,this),this._oldForm&&Jt(this._oldForm,this)}_checkFormPresent(){}}return Te.\u0275fac=function(xe){return new(xe||Te)(r.Y36(ae,10),r.Y36(H,10))},Te.\u0275dir=r.lG2({type:Te,selectors:[["","formGroup",""]],hostBindings:function(xe,Ct){1&xe&&r.NdJ("submit",function(Qi){return Ct.onSubmit(Qi)})("reset",function(){return Ct.onReset()})},inputs:{form:["formGroup","form"]},outputs:{ngSubmit:"ngSubmit"},exportAs:["ngForm"],features:[r._Bn([Il]),r.qOj,r.TTD]}),Te})();const Ya={provide:Mr,useExisting:(0,r.Gpc)(()=>Ao)};let Ao=(()=>{class Te extends $o{constructor(xe,Ct,ur){super(),this._parent=xe,this._setValidators(Ct),this._setAsyncValidators(ur)}_checkParentType(){Ra(this._parent)}}return Te.\u0275fac=function(xe){return new(xe||Te)(r.Y36(Mr,13),r.Y36(ae,10),r.Y36(H,10))},Te.\u0275dir=r.lG2({type:Te,selectors:[["","formGroupName",""]],inputs:{name:["formGroupName","name"]},features:[r._Bn([Ya]),r.qOj]}),Te})();const fs={provide:Mr,useExisting:(0,r.Gpc)(()=>Ca)};let Ca=(()=>{class Te extends Mr{constructor(xe,Ct,ur){super(),this._parent=xe,this._setValidators(Ct),this._setAsyncValidators(ur)}ngOnInit(){this._checkParentType(),this.formDirective.addFormArray(this)}ngOnDestroy(){this.formDirective&&this.formDirective.removeFormArray(this)}get control(){return this.formDirective.getFormArray(this)}get formDirective(){return this._parent?this._parent.formDirective:null}get path(){return wi(null==this.name?this.name:this.name.toString(),this._parent)}_checkParentType(){Ra(this._parent)}}return Te.\u0275fac=function(xe){return new(xe||Te)(r.Y36(Mr,13),r.Y36(ae,10),r.Y36(H,10))},Te.\u0275dir=r.lG2({type:Te,selectors:[["","formArrayName",""]],inputs:{name:["formArrayName","name"]},features:[r._Bn([fs]),r.qOj]}),Te})();function Ra(Te){return!(Te instanceof Ao||Te instanceof fo||Te instanceof Ca)}const pl={provide:Kr,useExisting:(0,r.Gpc)(()=>Ws)};let Ws=(()=>{class Te extends Kr{constructor(xe,Ct,ur,Qi,Go){super(),this._ngModelWarningConfig=Go,this._added=!1,this.update=new r.vpe,this._ngModelWarningSent=!1,this._parent=xe,this._setValidators(Ct),this._setAsyncValidators(ur),this.valueAccessor=Wr(0,Qi)}set isDisabled(xe){}ngOnChanges(xe){this._added||this._setUpControl(),mi(xe,this.viewModel)&&(this.viewModel=this.model,this.formDirective.updateModel(this,this.model))}ngOnDestroy(){this.formDirective&&this.formDirective.removeControl(this)}viewToModelUpdate(xe){this.viewModel=xe,this.update.emit(xe)}get path(){return wi(null==this.name?this.name:this.name.toString(),this._parent)}get formDirective(){return this._parent?this._parent.formDirective:null}_checkParentType(){}_setUpControl(){this._checkParentType(),this.control=this.formDirective.addControl(this),this.control.disabled&&this.valueAccessor.setDisabledState&&this.valueAccessor.setDisabledState(!0),this._added=!0}}return Te.\u0275fac=function(xe){return new(xe||Te)(r.Y36(Mr,13),r.Y36(ae,10),r.Y36(H,10),r.Y36(S,10),r.Y36(ca,8))},Te.\u0275dir=r.lG2({type:Te,selectors:[["","formControlName",""]],inputs:{isDisabled:["disabled","isDisabled"],name:["formControlName","name"],model:["ngModel","model"]},outputs:{update:"ngModelChange"},features:[r._Bn([pl]),r.qOj,r.TTD]}),Te._ngModelWarningSentOnce=!1,Te})();const Po={provide:S,useExisting:(0,r.Gpc)(()=>ps),multi:!0};function bo(Te,Me){return null==Te?`${Me}`:(Me&&"object"==typeof Me&&(Me="Object"),`${Te}: ${Me}`.slice(0,50))}let ps=(()=>{class Te extends y{constructor(){super(...arguments),this._optionMap=new Map,this._idCounter=0,this._compareWith=Object.is}set compareWith(xe){this._compareWith=xe}writeValue(xe){this.value=xe;const Ct=this._getOptionId(xe);null==Ct&&this.setProperty("selectedIndex",-1);const ur=bo(Ct,xe);this.setProperty("value",ur)}registerOnChange(xe){this.onChange=Ct=>{this.value=this._getOptionValue(Ct),xe(this.value)}}_registerOption(){return(this._idCounter++).toString()}_getOptionId(xe){for(const Ct of Array.from(this._optionMap.keys()))if(this._compareWith(this._optionMap.get(Ct),xe))return Ct;return null}_getOptionValue(xe){const Ct=function(Te){return Te.split(":")[0]}(xe);return this._optionMap.has(Ct)?this._optionMap.get(Ct):xe}}return Te.\u0275fac=function(){let Me;return function(Ct){return(Me||(Me=r.n5z(Te)))(Ct||Te)}}(),Te.\u0275dir=r.lG2({type:Te,selectors:[["select","formControlName","",3,"multiple",""],["select","formControl","",3,"multiple",""],["select","ngModel","",3,"multiple",""]],hostBindings:function(xe,Ct){1&xe&&r.NdJ("change",function(Qi){return Ct.onChange(Qi.target.value)})("blur",function(){return Ct.onTouched()})},inputs:{compareWith:"compareWith"},features:[r._Bn([Po]),r.qOj]}),Te})(),So=(()=>{class Te{constructor(xe,Ct,ur){this._element=xe,this._renderer=Ct,this._select=ur,this._select&&(this.id=this._select._registerOption())}set ngValue(xe){null!=this._select&&(this._select._optionMap.set(this.id,xe),this._setElementValue(bo(this.id,xe)),this._select.writeValue(this._select.value))}set value(xe){this._setElementValue(xe),this._select&&this._select.writeValue(this._select.value)}_setElementValue(xe){this._renderer.setProperty(this._element.nativeElement,"value",xe)}ngOnDestroy(){this._select&&(this._select._optionMap.delete(this.id),this._select.writeValue(this._select.value))}}return Te.\u0275fac=function(xe){return new(xe||Te)(r.Y36(r.SBq),r.Y36(r.Qsj),r.Y36(ps,9))},Te.\u0275dir=r.lG2({type:Te,selectors:[["option"]],inputs:{ngValue:"ngValue",value:"value"}}),Te})();const $r={provide:S,useExisting:(0,r.Gpc)(()=>ne),multi:!0};function to(Te,Me){return null==Te?`${Me}`:("string"==typeof Me&&(Me=`'${Me}'`),Me&&"object"==typeof Me&&(Me="Object"),`${Te}: ${Me}`.slice(0,50))}let ne=(()=>{class Te extends y{constructor(){super(...arguments),this._optionMap=new Map,this._idCounter=0,this._compareWith=Object.is}set compareWith(xe){this._compareWith=xe}writeValue(xe){let Ct;if(this.value=xe,Array.isArray(xe)){const ur=xe.map(Qi=>this._getOptionId(Qi));Ct=(Qi,Go)=>{Qi._setSelected(ur.indexOf(Go.toString())>-1)}}else Ct=(ur,Qi)=>{ur._setSelected(!1)};this._optionMap.forEach(Ct)}registerOnChange(xe){this.onChange=Ct=>{const ur=[];if(void 0!==Ct.selectedOptions){const Qi=Ct.selectedOptions;for(let Go=0;Go{class Te{constructor(xe,Ct,ur){this._element=xe,this._renderer=Ct,this._select=ur,this._select&&(this.id=this._select._registerOption(this))}set ngValue(xe){null!=this._select&&(this._value=xe,this._setElementValue(to(this.id,xe)),this._select.writeValue(this._select.value))}set value(xe){this._select?(this._value=xe,this._setElementValue(to(this.id,xe)),this._select.writeValue(this._select.value)):this._setElementValue(xe)}_setElementValue(xe){this._renderer.setProperty(this._element.nativeElement,"value",xe)}_setSelected(xe){this._renderer.setProperty(this._element.nativeElement,"selected",xe)}ngOnDestroy(){this._select&&(this._select._optionMap.delete(this.id),this._select.writeValue(this._select.value))}}return Te.\u0275fac=function(xe){return new(xe||Te)(r.Y36(r.SBq),r.Y36(r.Qsj),r.Y36(ne,9))},Te.\u0275dir=r.lG2({type:Te,selectors:[["option"]],inputs:{ngValue:"ngValue",value:"value"}}),Te})(),an=(()=>{class Te{constructor(){this._validator=Be}handleChanges(xe){if(this.inputName in xe){const Ct=this.normalizeInput(xe[this.inputName].currentValue);this._validator=this.createValidator(Ct),this._onChange&&this._onChange()}}validate(xe){return this._validator(xe)}registerOnValidatorChange(xe){this._onChange=xe}}return Te.\u0275fac=function(xe){return new(xe||Te)},Te.\u0275dir=r.lG2({type:Te}),Te})();const ti={provide:ae,useExisting:(0,r.Gpc)(()=>pi),multi:!0};let pi=(()=>{class Te extends an{constructor(){super(...arguments),this.inputName="max",this.normalizeInput=xe=>parseFloat(xe),this.createValidator=xe=>he(xe)}ngOnChanges(xe){this.handleChanges(xe)}}return Te.\u0275fac=function(){let Me;return function(Ct){return(Me||(Me=r.n5z(Te)))(Ct||Te)}}(),Te.\u0275dir=r.lG2({type:Te,selectors:[["input","type","number","max","","formControlName",""],["input","type","number","max","","formControl",""],["input","type","number","max","","ngModel",""]],hostVars:1,hostBindings:function(xe,Ct){if(2&xe){let ur;r.uIk("max",null!==(ur=Ct.max)&&void 0!==ur?ur:null)}},inputs:{max:"max"},features:[r._Bn([ti]),r.qOj,r.TTD]}),Te})();const xi={provide:ae,useExisting:(0,r.Gpc)(()=>ts),multi:!0};let ts=(()=>{class Te extends an{constructor(){super(...arguments),this.inputName="min",this.normalizeInput=xe=>parseFloat(xe),this.createValidator=xe=>ie(xe)}ngOnChanges(xe){this.handleChanges(xe)}}return Te.\u0275fac=function(){let Me;return function(Ct){return(Me||(Me=r.n5z(Te)))(Ct||Te)}}(),Te.\u0275dir=r.lG2({type:Te,selectors:[["input","type","number","min","","formControlName",""],["input","type","number","min","","formControl",""],["input","type","number","min","","ngModel",""]],hostVars:1,hostBindings:function(xe,Ct){if(2&xe){let ur;r.uIk("min",null!==(ur=Ct.min)&&void 0!==ur?ur:null)}},inputs:{min:"min"},features:[r._Bn([xi]),r.qOj,r.TTD]}),Te})();const wo={provide:ae,useExisting:(0,r.Gpc)(()=>Eo),multi:!0};let Eo=(()=>{class Te{constructor(){this._required=!1}get required(){return this._required}set required(xe){this._required=null!=xe&&!1!==xe&&"false"!=`${xe}`,this._onChange&&this._onChange()}validate(xe){return this.required?ge(xe):null}registerOnValidatorChange(xe){this._onChange=xe}}return Te.\u0275fac=function(xe){return new(xe||Te)},Te.\u0275dir=r.lG2({type:Te,selectors:[["","required","","formControlName","",3,"type","checkbox"],["","required","","formControl","",3,"type","checkbox"],["","required","","ngModel","",3,"type","checkbox"]],hostVars:1,hostBindings:function(xe,Ct){2&xe&&r.uIk("required",Ct.required?"":null)},inputs:{required:"required"},features:[r._Bn([wo])]}),Te})(),tl=(()=>{class Te{}return Te.\u0275fac=function(xe){return new(xe||Te)},Te.\u0275mod=r.oAB({type:Te}),Te.\u0275inj=r.cJS({imports:[[ta]]}),Te})(),Su=(()=>{class Te{}return Te.\u0275fac=function(xe){return new(xe||Te)},Te.\u0275mod=r.oAB({type:Te}),Te.\u0275inj=r.cJS({imports:[tl]}),Te})(),Zl=(()=>{class Te{static withConfig(xe){return{ngModule:Te,providers:[{provide:ca,useValue:xe.warnOnNgModelWithFormControl}]}}}return Te.\u0275fac=function(xe){return new(xe||Te)},Te.\u0275mod=r.oAB({type:Te}),Te.\u0275inj=r.cJS({imports:[tl]}),Te})(),Pt=(()=>{class Te{group(xe,Ct=null){const ur=this._reduceControls(xe);let ms,Qi=null,Go=null;return null!=Ct&&(function(Te){return void 0!==Te.asyncValidators||void 0!==Te.validators||void 0!==Te.updateOn}(Ct)?(Qi=null!=Ct.validators?Ct.validators:null,Go=null!=Ct.asyncValidators?Ct.asyncValidators:null,ms=null!=Ct.updateOn?Ct.updateOn:void 0):(Qi=null!=Ct.validator?Ct.validator:null,Go=null!=Ct.asyncValidator?Ct.asyncValidator:null)),new lr(ur,{asyncValidators:Go,updateOn:ms,validators:Qi})}control(xe,Ct,ur){return new Bn(xe,Ct,ur)}array(xe,Ct,ur){const Qi=xe.map(Go=>this._createControl(Go));return new vr(Qi,Ct,ur)}_reduceControls(xe){const Ct={};return Object.keys(xe).forEach(ur=>{Ct[ur]=this._createControl(xe[ur])}),Ct}_createControl(xe){return xe instanceof Bn||xe instanceof lr||xe instanceof vr?xe:Array.isArray(xe)?this.control(xe[0],xe.length>1?xe[1]:null,xe.length>2?xe[2]:null):this.control(xe)}}return Te.\u0275fac=function(xe){return new(xe||Te)},Te.\u0275prov=(0,r.Yz7)({factory:function(){return new Te},token:Te,providedIn:Zl}),Te})()},91211:(v,T,i)=>{"use strict";i.d(T,{b2:()=>Fn,H7:()=>Vn,HJ:()=>li,q6:()=>Wr,se:()=>di});var r=i(12057),u=i(74788);class p extends r.w_{constructor(){super(...arguments),this.supportsDOMEvents=!0}}class d extends p{static makeCurrent(){(0,r.HT)(new d)}onAndCancel(_t,mt,jt){return _t.addEventListener(mt,jt,!1),()=>{_t.removeEventListener(mt,jt,!1)}}dispatchEvent(_t,mt){_t.dispatchEvent(mt)}remove(_t){_t.parentNode&&_t.parentNode.removeChild(_t)}createElement(_t,mt){return(mt=mt||this.getDefaultDocument()).createElement(_t)}createHtmlDocument(){return document.implementation.createHTMLDocument("fakeTitle")}getDefaultDocument(){return document}isElementNode(_t){return _t.nodeType===Node.ELEMENT_NODE}isShadowRoot(_t){return _t instanceof DocumentFragment}getGlobalEventTarget(_t,mt){return"window"===mt?window:"document"===mt?_t:"body"===mt?_t.body:null}getBaseHref(_t){const mt=(e=e||document.querySelector("base"),e?e.getAttribute("href"):null);return null==mt?null:function(Rt){y=y||document.createElement("a"),y.setAttribute("href",Rt);const _t=y.pathname;return"/"===_t.charAt(0)?_t:`/${_t}`}(mt)}resetBaseElement(){e=null}getUserAgent(){return window.navigator.userAgent}getCookie(_t){return(0,r.Mx)(document.cookie,_t)}}let y,e=null;const A=new u.OlP("TRANSITION_ID"),L=[{provide:u.ip1,useFactory:function(Rt,_t,mt){return()=>{mt.get(u.CZH).donePromise.then(()=>{const jt=(0,r.q)(),on=_t.querySelectorAll(`style[ng-transition="${Rt}"]`);for(let si=0;si{const si=_t.findTestabilityInTree(jt,on);if(null==si)throw new Error("Could not find testability for element.");return si},u.dqk.getAllAngularTestabilities=()=>_t.getAllTestabilities(),u.dqk.getAllAngularRootElements=()=>_t.getAllRootElements(),u.dqk.frameworkStabilizers||(u.dqk.frameworkStabilizers=[]),u.dqk.frameworkStabilizers.push(jt=>{const on=u.dqk.getAllAngularTestabilities();let si=on.length,Vi=!1;const _o=function(co){Vi=Vi||co,si--,0==si&&jt(Vi)};on.forEach(function(co){co.whenStable(_o)})})}findTestabilityInTree(_t,mt,jt){if(null==mt)return null;const on=_t.getTestability(mt);return null!=on?on:jt?(0,r.q)().isShadowRoot(mt)?this.findTestabilityInTree(_t,mt.host,!0):this.findTestabilityInTree(_t,mt.parentElement,!0):null}}let J=(()=>{class Rt{build(){return new XMLHttpRequest}}return Rt.\u0275fac=function(mt){return new(mt||Rt)},Rt.\u0275prov=u.Yz7({token:Rt,factory:Rt.\u0275fac}),Rt})();const Be=new u.OlP("EventManagerPlugins");let Pe=(()=>{class Rt{constructor(mt,jt){this._zone=jt,this._eventNameToPlugin=new Map,mt.forEach(on=>on.manager=this),this._plugins=mt.slice().reverse()}addEventListener(mt,jt,on){return this._findPluginFor(jt).addEventListener(mt,jt,on)}addGlobalEventListener(mt,jt,on){return this._findPluginFor(jt).addGlobalEventListener(mt,jt,on)}getZone(){return this._zone}_findPluginFor(mt){const jt=this._eventNameToPlugin.get(mt);if(jt)return jt;const on=this._plugins;for(let si=0;si{class Rt{constructor(){this._stylesSet=new Set}addStyles(mt){const jt=new Set;mt.forEach(on=>{this._stylesSet.has(on)||(this._stylesSet.add(on),jt.add(on))}),this.onStylesAdded(jt)}onStylesAdded(mt){}getAllStyles(){return Array.from(this._stylesSet)}}return Rt.\u0275fac=function(mt){return new(mt||Rt)},Rt.\u0275prov=u.Yz7({token:Rt,factory:Rt.\u0275fac}),Rt})(),Vt=(()=>{class Rt extends He{constructor(mt){super(),this._doc=mt,this._hostNodes=new Map,this._hostNodes.set(mt.head,[])}_addStylesToHost(mt,jt,on){mt.forEach(si=>{const Vi=this._doc.createElement("style");Vi.textContent=si,on.push(jt.appendChild(Vi))})}addHost(mt){const jt=[];this._addStylesToHost(this._stylesSet,mt,jt),this._hostNodes.set(mt,jt)}removeHost(mt){const jt=this._hostNodes.get(mt);jt&&jt.forEach(it),this._hostNodes.delete(mt)}onStylesAdded(mt){this._hostNodes.forEach((jt,on)=>{this._addStylesToHost(mt,on,jt)})}ngOnDestroy(){this._hostNodes.forEach(mt=>mt.forEach(it))}}return Rt.\u0275fac=function(mt){return new(mt||Rt)(u.LFG(r.K0))},Rt.\u0275prov=u.Yz7({token:Rt,factory:Rt.\u0275fac}),Rt})();function it(Rt){(0,r.q)().remove(Rt)}const tn={svg:"http://www.w3.org/2000/svg",xhtml:"http://www.w3.org/1999/xhtml",xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/"},It=/%COMP%/g;function Xt(Rt,_t,mt){for(let jt=0;jt<_t.length;jt++){let on=_t[jt];Array.isArray(on)?Xt(Rt,on,mt):(on=on.replace(It,Rt),mt.push(on))}return mt}function Zn(Rt){return _t=>{if("__ngUnwrap__"===_t)return Rt;!1===Rt(_t)&&(_t.preventDefault(),_t.returnValue=!1)}}let di=(()=>{class Rt{constructor(mt,jt,on){this.eventManager=mt,this.sharedStylesHost=jt,this.appId=on,this.rendererByCompId=new Map,this.defaultRenderer=new Lr(mt)}createRenderer(mt,jt){if(!mt||!jt)return this.defaultRenderer;switch(jt.encapsulation){case u.ifc.Emulated:{let on=this.rendererByCompId.get(jt.id);return on||(on=new Nn(this.eventManager,this.sharedStylesHost,jt,this.appId),this.rendererByCompId.set(jt.id,on)),on.applyToHost(mt),on}case 1:case u.ifc.ShadowDom:return new $n(this.eventManager,this.sharedStylesHost,mt,jt);default:if(!this.rendererByCompId.has(jt.id)){const on=Xt(jt.id,jt.styles,[]);this.sharedStylesHost.addStyles(on),this.rendererByCompId.set(jt.id,this.defaultRenderer)}return this.defaultRenderer}}begin(){}end(){}}return Rt.\u0275fac=function(mt){return new(mt||Rt)(u.LFG(Pe),u.LFG(Vt),u.LFG(u.AFp))},Rt.\u0275prov=u.Yz7({token:Rt,factory:Rt.\u0275fac}),Rt})();class Lr{constructor(_t){this.eventManager=_t,this.data=Object.create(null)}destroy(){}createElement(_t,mt){return mt?document.createElementNS(tn[mt]||mt,_t):document.createElement(_t)}createComment(_t){return document.createComment(_t)}createText(_t){return document.createTextNode(_t)}appendChild(_t,mt){_t.appendChild(mt)}insertBefore(_t,mt,jt){_t&&_t.insertBefore(mt,jt)}removeChild(_t,mt){_t&&_t.removeChild(mt)}selectRootElement(_t,mt){let jt="string"==typeof _t?document.querySelector(_t):_t;if(!jt)throw new Error(`The selector "${_t}" did not match any elements`);return mt||(jt.textContent=""),jt}parentNode(_t){return _t.parentNode}nextSibling(_t){return _t.nextSibling}setAttribute(_t,mt,jt,on){if(on){mt=on+":"+mt;const si=tn[on];si?_t.setAttributeNS(si,mt,jt):_t.setAttribute(mt,jt)}else _t.setAttribute(mt,jt)}removeAttribute(_t,mt,jt){if(jt){const on=tn[jt];on?_t.removeAttributeNS(on,mt):_t.removeAttribute(`${jt}:${mt}`)}else _t.removeAttribute(mt)}addClass(_t,mt){_t.classList.add(mt)}removeClass(_t,mt){_t.classList.remove(mt)}setStyle(_t,mt,jt,on){on&(u.JOm.DashCase|u.JOm.Important)?_t.style.setProperty(mt,jt,on&u.JOm.Important?"important":""):_t.style[mt]=jt}removeStyle(_t,mt,jt){jt&u.JOm.DashCase?_t.style.removeProperty(mt):_t.style[mt]=""}setProperty(_t,mt,jt){_t[mt]=jt}setValue(_t,mt){_t.nodeValue=mt}listen(_t,mt,jt){return"string"==typeof _t?this.eventManager.addGlobalEventListener(_t,mt,Zn(jt)):this.eventManager.addEventListener(_t,mt,Zn(jt))}}class Nn extends Lr{constructor(_t,mt,jt,on){super(_t),this.component=jt;const si=Xt(on+"-"+jt.id,jt.styles,[]);mt.addStyles(si),this.contentAttr="_ngcontent-%COMP%".replace(It,on+"-"+jt.id),this.hostAttr="_nghost-%COMP%".replace(It,on+"-"+jt.id)}applyToHost(_t){super.setAttribute(_t,this.hostAttr,"")}createElement(_t,mt){const jt=super.createElement(_t,mt);return super.setAttribute(jt,this.contentAttr,""),jt}}class $n extends Lr{constructor(_t,mt,jt,on){super(_t),this.sharedStylesHost=mt,this.hostEl=jt,this.shadowRoot=jt.attachShadow({mode:"open"}),this.sharedStylesHost.addHost(this.shadowRoot);const si=Xt(on.id,on.styles,[]);for(let Vi=0;Vi{class Rt extends je{constructor(mt){super(mt)}supports(mt){return!0}addEventListener(mt,jt,on){return mt.addEventListener(jt,on,!1),()=>this.removeEventListener(mt,jt,on)}removeEventListener(mt,jt,on){return mt.removeEventListener(jt,on)}}return Rt.\u0275fac=function(mt){return new(mt||Rt)(u.LFG(r.K0))},Rt.\u0275prov=u.Yz7({token:Rt,factory:Rt.\u0275fac}),Rt})();const Fr=["alt","control","meta","shift"],Jr={"\b":"Backspace","\t":"Tab","\x7f":"Delete","\x1b":"Escape",Del:"Delete",Esc:"Escape",Left:"ArrowLeft",Right:"ArrowRight",Up:"ArrowUp",Down:"ArrowDown",Menu:"ContextMenu",Scroll:"ScrollLock",Win:"OS"},_i={A:"1",B:"2",C:"3",D:"4",E:"5",F:"6",G:"7",H:"8",I:"9",J:"*",K:"+",M:"-",N:".",O:"/","`":"0","\x90":"NumLock"},yn={alt:Rt=>Rt.altKey,control:Rt=>Rt.ctrlKey,meta:Rt=>Rt.metaKey,shift:Rt=>Rt.shiftKey};let gr=(()=>{class Rt extends je{constructor(mt){super(mt)}supports(mt){return null!=Rt.parseEventName(mt)}addEventListener(mt,jt,on){const si=Rt.parseEventName(jt),Vi=Rt.eventCallback(si.fullKey,on,this.manager.getZone());return this.manager.getZone().runOutsideAngular(()=>(0,r.q)().onAndCancel(mt,si.domEventName,Vi))}static parseEventName(mt){const jt=mt.toLowerCase().split("."),on=jt.shift();if(0===jt.length||"keydown"!==on&&"keyup"!==on)return null;const si=Rt._normalizeKey(jt.pop());let Vi="";if(Fr.forEach(co=>{const Es=jt.indexOf(co);Es>-1&&(jt.splice(Es,1),Vi+=co+".")}),Vi+=si,0!=jt.length||0===si.length)return null;const _o={};return _o.domEventName=on,_o.fullKey=Vi,_o}static getEventFullKey(mt){let jt="",on=function(Rt){let _t=Rt.key;if(null==_t){if(_t=Rt.keyIdentifier,null==_t)return"Unidentified";_t.startsWith("U+")&&(_t=String.fromCharCode(parseInt(_t.substring(2),16)),3===Rt.location&&_i.hasOwnProperty(_t)&&(_t=_i[_t]))}return Jr[_t]||_t}(mt);return on=on.toLowerCase()," "===on?on="space":"."===on&&(on="dot"),Fr.forEach(si=>{si!=on&&yn[si](mt)&&(jt+=si+".")}),jt+=on,jt}static eventCallback(mt,jt,on){return si=>{Rt.getEventFullKey(si)===mt&&on.runGuarded(()=>jt(si))}}static _normalizeKey(mt){switch(mt){case"esc":return"escape";default:return mt}}}return Rt.\u0275fac=function(mt){return new(mt||Rt)(u.LFG(r.K0))},Rt.\u0275prov=u.Yz7({token:Rt,factory:Rt.\u0275fac}),Rt})(),Vn=(()=>{class Rt{}return Rt.\u0275fac=function(mt){return new(mt||Rt)},Rt.\u0275prov=(0,u.Yz7)({factory:function(){return(0,u.LFG)(Dn)},token:Rt,providedIn:"root"}),Rt})(),Dn=(()=>{class Rt extends Vn{constructor(mt){super(),this._doc=mt}sanitize(mt,jt){if(null==jt)return null;switch(mt){case u.q3G.NONE:return jt;case u.q3G.HTML:return(0,u.qzn)(jt,"HTML")?(0,u.z3N)(jt):(0,u.EiD)(this._doc,String(jt)).toString();case u.q3G.STYLE:return(0,u.qzn)(jt,"Style")?(0,u.z3N)(jt):jt;case u.q3G.SCRIPT:if((0,u.qzn)(jt,"Script"))return(0,u.z3N)(jt);throw new Error("unsafe value used in a script context");case u.q3G.URL:return(0,u.yhl)(jt),(0,u.qzn)(jt,"URL")?(0,u.z3N)(jt):(0,u.mCW)(String(jt));case u.q3G.RESOURCE_URL:if((0,u.qzn)(jt,"ResourceURL"))return(0,u.z3N)(jt);throw new Error("unsafe value used in a resource URL context (see https://g.co/ng/security#xss)");default:throw new Error(`Unexpected SecurityContext ${mt} (see https://g.co/ng/security#xss)`)}}bypassSecurityTrustHtml(mt){return(0,u.JVY)(mt)}bypassSecurityTrustStyle(mt){return(0,u.L6k)(mt)}bypassSecurityTrustScript(mt){return(0,u.eBb)(mt)}bypassSecurityTrustUrl(mt){return(0,u.LAX)(mt)}bypassSecurityTrustResourceUrl(mt){return(0,u.pB0)(mt)}}return Rt.\u0275fac=function(mt){return new(mt||Rt)(u.LFG(r.K0))},Rt.\u0275prov=(0,u.Yz7)({factory:function(){return function(Rt){return new Dn(Rt.get(r.K0))}((0,u.LFG)(u.gxx))},token:Rt,providedIn:"root"}),Rt})();const Wr=(0,u.eFA)(u._c5,"browser",[{provide:u.Lbi,useValue:r.bD},{provide:u.g9A,useValue:function(){d.makeCurrent(),Z.init()},multi:!0},{provide:r.K0,useFactory:function(){return(0,u.RDi)(document),document},deps:[]}]),dr=[[],{provide:u.zSh,useValue:"root"},{provide:u.qLn,useFactory:function(){return new u.qLn},deps:[]},{provide:Be,useClass:Br,multi:!0,deps:[r.K0,u.R0b,u.Lbi]},{provide:Be,useClass:gr,multi:!0,deps:[r.K0]},[],{provide:di,useClass:di,deps:[Pe,Vt,u.AFp]},{provide:u.FYo,useExisting:di},{provide:He,useExisting:Vt},{provide:Vt,useClass:Vt,deps:[r.K0]},{provide:u.dDg,useClass:u.dDg,deps:[u.R0b]},{provide:Pe,useClass:Pe,deps:[Be,u.R0b]},{provide:r.JF,useClass:J,deps:[]},[]];let Fn=(()=>{class Rt{constructor(mt){if(mt)throw new Error("BrowserModule has already been loaded. If you need access to common directives such as NgIf and NgFor from a lazy loaded module, import CommonModule instead.")}static withServerTransition(mt){return{ngModule:Rt,providers:[{provide:u.AFp,useValue:mt.appId},{provide:A,useExisting:u.AFp},L]}}}return Rt.\u0275fac=function(mt){return new(mt||Rt)(u.LFG(Rt,12))},Rt.\u0275mod=u.oAB({type:Rt}),Rt.\u0275inj=u.cJS({providers:dr,imports:[r.ez,u.hGG]}),Rt})();const Gi="undefined"!=typeof window&&window||{};class os{constructor(_t,mt){this.msPerTick=_t,this.numTicks=mt}}class jo{constructor(_t){this.appRef=_t.injector.get(u.z2F)}timeChangeDetection(_t){const mt=_t&&_t.record,jt="Change Detection",on=null!=Gi.console.profile;mt&&on&&Gi.console.profile(jt);const si=To();let Vi=0;for(;Vi<5||To()-si<500;)this.appRef.tick(),Vi++;const _o=To();mt&&on&&Gi.console.profileEnd(jt);const co=(_o-si)/Vi;return Gi.console.log(`ran ${Vi} change detection cycles`),Gi.console.log(`${co.toFixed(2)} ms per check`),new os(co,Vi)}}function To(){return Gi.performance&&Gi.performance.now?Gi.performance.now():(new Date).getTime()}function li(Rt){return function(Rt,_t){"undefined"!=typeof COMPILED&&COMPILED||((u.dqk.ng=u.dqk.ng||{})[Rt]=_t)}("profiler",new jo(Rt)),Rt}},6283:(v,T,i)=>{"use strict";i.d(T,{gz:()=>tr,m2:()=>He,OD:()=>je,wm:()=>Tl,F0:()=>zr,rH:()=>Io,Od:()=>Cr,yS:()=>Fo,Bz:()=>Js,lC:()=>ao});var r=i(12057),u=i(74788),p=i(18891),d=i(94402),e=i(59193);function _(Ye){return new p.y(Ie=>{let Ce;try{Ce=Ye()}catch(Et){return void Ie.error(Et)}return(Ce?(0,d.D)(Ce):(0,e.c)()).subscribe(Ie)})}var y=i(25917),S=i(26215),A=i(9112),N=i(13410),L=i(58071),Z=i(52441),J=i(79765),K=i(88002),ee=i(43190),ue=i(15257),ae=i(39761),H=i(42145),se=i(45435),Ee=i(5304),ie=i(94612),he=i(12627),ge=i(28049),De=i(19773),ce=i(68307),lt=i(548),Ve=i(51307),ze=i(68939),Be=i(63282);class Pe{constructor(Ie,Ce){this.id=Ie,this.url=Ce}}class je extends Pe{constructor(Ie,Ce,ot="imperative",Et=null){super(Ie,Ce),this.navigationTrigger=ot,this.restoredState=Et}toString(){return`NavigationStart(id: ${this.id}, url: '${this.url}')`}}class He extends Pe{constructor(Ie,Ce,ot){super(Ie,Ce),this.urlAfterRedirects=ot}toString(){return`NavigationEnd(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}')`}}class Vt extends Pe{constructor(Ie,Ce,ot){super(Ie,Ce),this.reason=ot}toString(){return`NavigationCancel(id: ${this.id}, url: '${this.url}')`}}class it extends Pe{constructor(Ie,Ce,ot){super(Ie,Ce),this.error=ot}toString(){return`NavigationError(id: ${this.id}, url: '${this.url}', error: ${this.error})`}}class tn extends Pe{constructor(Ie,Ce,ot,Et){super(Ie,Ce),this.urlAfterRedirects=ot,this.state=Et}toString(){return`RoutesRecognized(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}}class It extends Pe{constructor(Ie,Ce,ot,Et){super(Ie,Ce),this.urlAfterRedirects=ot,this.state=Et}toString(){return`GuardsCheckStart(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}}class Zt extends Pe{constructor(Ie,Ce,ot,Et,qt){super(Ie,Ce),this.urlAfterRedirects=ot,this.state=Et,this.shouldActivate=qt}toString(){return`GuardsCheckEnd(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state}, shouldActivate: ${this.shouldActivate})`}}class Ut extends Pe{constructor(Ie,Ce,ot,Et){super(Ie,Ce),this.urlAfterRedirects=ot,this.state=Et}toString(){return`ResolveStart(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}}class Bt extends Pe{constructor(Ie,Ce,ot,Et){super(Ie,Ce),this.urlAfterRedirects=ot,this.state=Et}toString(){return`ResolveEnd(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}}class bt{constructor(Ie){this.route=Ie}toString(){return`RouteConfigLoadStart(path: ${this.route.path})`}}class Gt{constructor(Ie){this.route=Ie}toString(){return`RouteConfigLoadEnd(path: ${this.route.path})`}}class xt{constructor(Ie){this.snapshot=Ie}toString(){return`ChildActivationStart(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}}class Xt{constructor(Ie){this.snapshot=Ie}toString(){return`ChildActivationEnd(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}}class Zn{constructor(Ie){this.snapshot=Ie}toString(){return`ActivationStart(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}}class Ur{constructor(Ie){this.snapshot=Ie}toString(){return`ActivationEnd(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}}class di{constructor(Ie,Ce,ot){this.routerEvent=Ie,this.position=Ce,this.anchor=ot}toString(){return`Scroll(anchor: '${this.anchor}', position: '${this.position?`${this.position[0]}, ${this.position[1]}`:null}')`}}const Lr="primary";class Mr{constructor(Ie){this.params=Ie||{}}has(Ie){return Object.prototype.hasOwnProperty.call(this.params,Ie)}get(Ie){if(this.has(Ie)){const Ce=this.params[Ie];return Array.isArray(Ce)?Ce[0]:Ce}return null}getAll(Ie){if(this.has(Ie)){const Ce=this.params[Ie];return Array.isArray(Ce)?Ce:[Ce]}return[]}get keys(){return Object.keys(this.params)}}function Kr(Ye){return new Mr(Ye)}const ei="ngNavigationCancelingError";function Nn(Ye){const Ie=Error("NavigationCancelingError: "+Ye);return Ie[ei]=!0,Ie}function Br(Ye,Ie,Ce){const ot=Ce.path.split("/");if(ot.length>Ye.length||"full"===Ce.pathMatch&&(Ie.hasChildren()||ot.lengthot[qt]===Et)}return Ye===Ie}function Hi(Ye){return Array.prototype.concat.apply([],Ye)}function Zr(Ye){return Ye.length>0?Ye[Ye.length-1]:null}function Wt(Ye,Ie){for(const Ce in Ye)Ye.hasOwnProperty(Ce)&&Ie(Ye[Ce],Ce)}function zn(Ye){return(0,u.CqO)(Ye)?Ye:(0,u.QGY)(Ye)?(0,d.D)(Promise.resolve(Ye)):(0,y.of)(Ye)}const Fr={exact:function wi(Ye,Ie,Ce){if(!Dn(Ye.segments,Ie.segments)||!yn(Ye.segments,Ie.segments,Ce)||Ye.numberOfChildren!==Ie.numberOfChildren)return!1;for(const ot in Ie.children)if(!Ye.children[ot]||!wi(Ye.children[ot],Ie.children[ot],Ce))return!1;return!0},subset:Dr},Gn={exact:function(Ye,Ie){return fi(Ye,Ie)},subset:function(Ye,Ie){return Object.keys(Ie).length<=Object.keys(Ye).length&&Object.keys(Ie).every(Ce=>ki(Ye[Ce],Ie[Ce]))},ignored:()=>!0};function Jr(Ye,Ie,Ce){return Fr[Ce.paths](Ye.root,Ie.root,Ce.matrixParams)&&Gn[Ce.queryParams](Ye.queryParams,Ie.queryParams)&&!("exact"===Ce.fragment&&Ye.fragment!==Ie.fragment)}function Dr(Ye,Ie,Ce){return gn(Ye,Ie,Ie.segments,Ce)}function gn(Ye,Ie,Ce,ot){if(Ye.segments.length>Ce.length){const Et=Ye.segments.slice(0,Ce.length);return!(!Dn(Et,Ce)||Ie.hasChildren()||!yn(Et,Ce,ot))}if(Ye.segments.length===Ce.length){if(!Dn(Ye.segments,Ce)||!yn(Ye.segments,Ce,ot))return!1;for(const Et in Ie.children)if(!Ye.children[Et]||!Dr(Ye.children[Et],Ie.children[Et],ot))return!1;return!0}{const Et=Ce.slice(0,Ye.segments.length),qt=Ce.slice(Ye.segments.length);return!!(Dn(Ye.segments,Et)&&yn(Ye.segments,Et,ot)&&Ye.children[Lr])&&gn(Ye.children[Lr],Ie,qt,ot)}}function yn(Ye,Ie,Ce){return Ie.every((ot,Et)=>Gn[Ce](Ye[Et].parameters,ot.parameters))}class gr{constructor(Ie,Ce,ot){this.root=Ie,this.queryParams=Ce,this.fragment=ot}get queryParamMap(){return this._queryParamMap||(this._queryParamMap=Kr(this.queryParams)),this._queryParamMap}toString(){return Ge.serialize(this)}}class Jt{constructor(Ie,Ce){this.segments=Ie,this.children=Ce,this.parent=null,Wt(Ce,(ot,Et)=>ot.parent=this)}hasChildren(){return this.numberOfChildren>0}get numberOfChildren(){return Object.keys(this.children).length}toString(){return kr(this)}}class Vn{constructor(Ie,Ce){this.path=Ie,this.parameters=Ce}get parameterMap(){return this._parameterMap||(this._parameterMap=Kr(this.parameters)),this._parameterMap}toString(){return Wi(this)}}function Dn(Ye,Ie){return Ye.length===Ie.length&&Ye.every((Ce,ot)=>Ce.path===Ie[ot].path)}class Yt{}class _n{parse(Ie){const Ce=new li(Ie);return new gr(Ce.parseRootSegment(),Ce.parseQueryParams(),Ce.parseFragment())}serialize(Ie){var Ye;return`${`/${mi(Ie.root,!0)}`}${function(Ye){const Ie=Object.keys(Ye).map(Ce=>{const ot=Ye[Ce];return Array.isArray(ot)?ot.map(Et=>`${Er(Ce)}=${Er(Et)}`).join("&"):`${Er(Ce)}=${Er(ot)}`}).filter(Ce=>!!Ce);return Ie.length?`?${Ie.join("&")}`:""}(Ie.queryParams)}${"string"==typeof Ie.fragment?`#${Ye=Ie.fragment,encodeURI(Ye)}`:""}`}}const Ge=new _n;function kr(Ye){return Ye.segments.map(Ie=>Wi(Ie)).join("/")}function mi(Ye,Ie){if(!Ye.hasChildren())return kr(Ye);if(Ie){const Ce=Ye.children[Lr]?mi(Ye.children[Lr],!1):"",ot=[];return Wt(Ye.children,(Et,qt)=>{qt!==Lr&&ot.push(`${qt}:${mi(Et,!1)}`)}),ot.length>0?`${Ce}(${ot.join("//")})`:Ce}{const Ce=function(Ye,Ie){let Ce=[];return Wt(Ye.children,(ot,Et)=>{Et===Lr&&(Ce=Ce.concat(Ie(ot,Et)))}),Wt(Ye.children,(ot,Et)=>{Et!==Lr&&(Ce=Ce.concat(Ie(ot,Et)))}),Ce}(Ye,(ot,Et)=>Et===Lr?[mi(Ye.children[Lr],!1)]:[`${Et}:${mi(ot,!1)}`]);return 1===Object.keys(Ye.children).length&&null!=Ye.children[Lr]?`${kr(Ye)}/${Ce[0]}`:`${kr(Ye)}/(${Ce.join("//")})`}}function An(Ye){return encodeURIComponent(Ye).replace(/%40/g,"@").replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",")}function Er(Ye){return An(Ye).replace(/%3B/gi,";")}function dr(Ye){return An(Ye).replace(/\(/g,"%28").replace(/\)/g,"%29").replace(/%26/gi,"&")}function Fn(Ye){return decodeURIComponent(Ye)}function ar(Ye){return Fn(Ye.replace(/\+/g,"%20"))}function Wi(Ye){return`${dr(Ye.path)}${function(Ye){return Object.keys(Ye).map(Ie=>`;${dr(Ie)}=${dr(Ye[Ie])}`).join("")}(Ye.parameters)}`}const Co=/^[^\/()?;=#]+/;function Gi(Ye){const Ie=Ye.match(Co);return Ie?Ie[0]:""}const os=/^[^=?&#]+/,To=/^[^?&#]+/;class li{constructor(Ie){this.url=Ie,this.remaining=Ie}parseRootSegment(){return this.consumeOptional("/"),""===this.remaining||this.peekStartsWith("?")||this.peekStartsWith("#")?new Jt([],{}):new Jt([],this.parseChildren())}parseQueryParams(){const Ie={};if(this.consumeOptional("?"))do{this.parseQueryParam(Ie)}while(this.consumeOptional("&"));return Ie}parseFragment(){return this.consumeOptional("#")?decodeURIComponent(this.remaining):null}parseChildren(){if(""===this.remaining)return{};this.consumeOptional("/");const Ie=[];for(this.peekStartsWith("(")||Ie.push(this.parseSegment());this.peekStartsWith("/")&&!this.peekStartsWith("//")&&!this.peekStartsWith("/(");)this.capture("/"),Ie.push(this.parseSegment());let Ce={};this.peekStartsWith("/(")&&(this.capture("/"),Ce=this.parseParens(!0));let ot={};return this.peekStartsWith("(")&&(ot=this.parseParens(!1)),(Ie.length>0||Object.keys(Ce).length>0)&&(ot[Lr]=new Jt(Ie,Ce)),ot}parseSegment(){const Ie=Gi(this.remaining);if(""===Ie&&this.peekStartsWith(";"))throw new Error(`Empty path url segment cannot have parameters: '${this.remaining}'.`);return this.capture(Ie),new Vn(Fn(Ie),this.parseMatrixParams())}parseMatrixParams(){const Ie={};for(;this.consumeOptional(";");)this.parseParam(Ie);return Ie}parseParam(Ie){const Ce=Gi(this.remaining);if(!Ce)return;this.capture(Ce);let ot="";if(this.consumeOptional("=")){const Et=Gi(this.remaining);Et&&(ot=Et,this.capture(ot))}Ie[Fn(Ce)]=Fn(ot)}parseQueryParam(Ie){const Ce=function(Ye){const Ie=Ye.match(os);return Ie?Ie[0]:""}(this.remaining);if(!Ce)return;this.capture(Ce);let ot="";if(this.consumeOptional("=")){const Hn=function(Ye){const Ie=Ye.match(To);return Ie?Ie[0]:""}(this.remaining);Hn&&(ot=Hn,this.capture(ot))}const Et=ar(Ce),qt=ar(ot);if(Ie.hasOwnProperty(Et)){let Hn=Ie[Et];Array.isArray(Hn)||(Hn=[Hn],Ie[Et]=Hn),Hn.push(qt)}else Ie[Et]=qt}parseParens(Ie){const Ce={};for(this.capture("(");!this.consumeOptional(")")&&this.remaining.length>0;){const ot=Gi(this.remaining),Et=this.remaining[ot.length];if("/"!==Et&&")"!==Et&&";"!==Et)throw new Error(`Cannot parse url '${this.url}'`);let qt;ot.indexOf(":")>-1?(qt=ot.substr(0,ot.indexOf(":")),this.capture(qt),this.capture(":")):Ie&&(qt=Lr);const Hn=this.parseChildren();Ce[qt]=1===Object.keys(Hn).length?Hn[Lr]:new Jt([],Hn),this.consumeOptional("//")}return Ce}peekStartsWith(Ie){return this.remaining.startsWith(Ie)}consumeOptional(Ie){return!!this.peekStartsWith(Ie)&&(this.remaining=this.remaining.substring(Ie.length),!0)}capture(Ie){if(!this.consumeOptional(Ie))throw new Error(`Expected "${Ie}".`)}}class Bn{constructor(Ie){this._root=Ie}get root(){return this._root.value}parent(Ie){const Ce=this.pathFromRoot(Ie);return Ce.length>1?Ce[Ce.length-2]:null}children(Ie){const Ce=lr(Ie,this._root);return Ce?Ce.children.map(ot=>ot.value):[]}firstChild(Ie){const Ce=lr(Ie,this._root);return Ce&&Ce.children.length>0?Ce.children[0].value:null}siblings(Ie){const Ce=vr(Ie,this._root);return Ce.length<2?[]:Ce[Ce.length-2].children.map(Et=>Et.value).filter(Et=>Et!==Ie)}pathFromRoot(Ie){return vr(Ie,this._root).map(Ce=>Ce.value)}}function lr(Ye,Ie){if(Ye===Ie.value)return Ie;for(const Ce of Ie.children){const ot=lr(Ye,Ce);if(ot)return ot}return null}function vr(Ye,Ie){if(Ye===Ie.value)return[Ie];for(const Ce of Ie.children){const ot=vr(Ye,Ce);if(ot.length)return ot.unshift(Ie),ot}return[]}class er{constructor(Ie,Ce){this.value=Ie,this.children=Ce}toString(){return`TreeNode(${this.value})`}}function ri(Ye){const Ie={};return Ye&&Ye.children.forEach(Ce=>Ie[Ce.value.outlet]=Ce),Ie}class uo extends Bn{constructor(Ie,Ce){super(Ie),this.snapshot=Ce,jt(this,Ie)}toString(){return this.snapshot.toString()}}function Ci(Ye,Ie){const Ce=function(Ye,Ie){const Hn=new _t([],{},{},"",{},Lr,Ie,null,Ye.root,-1,{});return new mt("",new er(Hn,[]))}(Ye,Ie),ot=new S.X([new Vn("",{})]),Et=new S.X({}),qt=new S.X({}),Hn=new S.X({}),Xn=new S.X(""),Ei=new tr(ot,Et,Hn,Xn,qt,Lr,Ie,Ce.root);return Ei.snapshot=Ce.root,new uo(new er(Ei,[]),Ce)}class tr{constructor(Ie,Ce,ot,Et,qt,Hn,Xn,Ei){this.url=Ie,this.params=Ce,this.queryParams=ot,this.fragment=Et,this.data=qt,this.outlet=Hn,this.component=Xn,this._futureSnapshot=Ei}get routeConfig(){return this._futureSnapshot.routeConfig}get root(){return this._routerState.root}get parent(){return this._routerState.parent(this)}get firstChild(){return this._routerState.firstChild(this)}get children(){return this._routerState.children(this)}get pathFromRoot(){return this._routerState.pathFromRoot(this)}get paramMap(){return this._paramMap||(this._paramMap=this.params.pipe((0,K.U)(Ie=>Kr(Ie)))),this._paramMap}get queryParamMap(){return this._queryParamMap||(this._queryParamMap=this.queryParams.pipe((0,K.U)(Ie=>Kr(Ie)))),this._queryParamMap}toString(){return this.snapshot?this.snapshot.toString():`Future(${this._futureSnapshot})`}}function Ar(Ye,Ie="emptyOnly"){const Ce=Ye.pathFromRoot;let ot=0;if("always"!==Ie)for(ot=Ce.length-1;ot>=1;){const Et=Ce[ot],qt=Ce[ot-1];if(Et.routeConfig&&""===Et.routeConfig.path)ot--;else{if(qt.component)break;ot--}}return function(Ye){return Ye.reduce((Ie,Ce)=>({params:Object.assign(Object.assign({},Ie.params),Ce.params),data:Object.assign(Object.assign({},Ie.data),Ce.data),resolve:Object.assign(Object.assign({},Ie.resolve),Ce._resolvedData)}),{params:{},data:{},resolve:{}})}(Ce.slice(ot))}class _t{constructor(Ie,Ce,ot,Et,qt,Hn,Xn,Ei,Yo,$a,ns){this.url=Ie,this.params=Ce,this.queryParams=ot,this.fragment=Et,this.data=qt,this.outlet=Hn,this.component=Xn,this.routeConfig=Ei,this._urlSegment=Yo,this._lastPathIndex=$a,this._resolve=ns}get root(){return this._routerState.root}get parent(){return this._routerState.parent(this)}get firstChild(){return this._routerState.firstChild(this)}get children(){return this._routerState.children(this)}get pathFromRoot(){return this._routerState.pathFromRoot(this)}get paramMap(){return this._paramMap||(this._paramMap=Kr(this.params)),this._paramMap}get queryParamMap(){return this._queryParamMap||(this._queryParamMap=Kr(this.queryParams)),this._queryParamMap}toString(){return`Route(url:'${this.url.map(ot=>ot.toString()).join("/")}', path:'${this.routeConfig?this.routeConfig.path:""}')`}}class mt extends Bn{constructor(Ie,Ce){super(Ce),this.url=Ie,jt(this,Ce)}toString(){return on(this._root)}}function jt(Ye,Ie){Ie.value._routerState=Ye,Ie.children.forEach(Ce=>jt(Ye,Ce))}function on(Ye){const Ie=Ye.children.length>0?` { ${Ye.children.map(on).join(", ")} } `:"";return`${Ye.value}${Ie}`}function si(Ye){if(Ye.snapshot){const Ie=Ye.snapshot,Ce=Ye._futureSnapshot;Ye.snapshot=Ce,fi(Ie.queryParams,Ce.queryParams)||Ye.queryParams.next(Ce.queryParams),Ie.fragment!==Ce.fragment&&Ye.fragment.next(Ce.fragment),fi(Ie.params,Ce.params)||Ye.params.next(Ce.params),function(Ye,Ie){if(Ye.length!==Ie.length)return!1;for(let Ce=0;Cefi(Ce.parameters,Ie[ot].parameters))}(Ye.url,Ie.url)&&!(!Ye.parent!=!Ie.parent)&&(!Ye.parent||Vi(Ye.parent,Ie.parent))}function co(Ye,Ie,Ce){if(Ce&&Ye.shouldReuseRoute(Ie.value,Ce.value.snapshot)){const ot=Ce.value;ot._futureSnapshot=Ie.value;const Et=function(Ye,Ie,Ce){return Ie.children.map(ot=>{for(const Et of Ce.children)if(Ye.shouldReuseRoute(ot.value,Et.value.snapshot))return co(Ye,ot,Et);return co(Ye,ot)})}(Ye,Ie,Ce);return new er(ot,Et)}{if(Ye.shouldAttach(Ie.value)){const qt=Ye.retrieve(Ie.value);if(null!==qt){const Hn=qt.route;return Es(Ie,Hn),Hn}}const ot=function(Ye){return new tr(new S.X(Ye.url),new S.X(Ye.params),new S.X(Ye.queryParams),new S.X(Ye.fragment),new S.X(Ye.data),Ye.outlet,Ye.component,Ye)}(Ie.value),Et=Ie.children.map(qt=>co(Ye,qt));return new er(ot,Et)}}function Es(Ye,Ie){if(Ye.value.routeConfig!==Ie.value.routeConfig)throw new Error("Cannot reattach ActivatedRouteSnapshot created from a different route");if(Ye.children.length!==Ie.children.length)throw new Error("Cannot reattach ActivatedRouteSnapshot with a different number of children");Ie.value._futureSnapshot=Ye.value;for(let Ce=0;Ce{qt[Xn]=Array.isArray(Hn)?Hn.map(Ei=>`${Ei}`):`${Hn}`}),new gr(Ce.root===Ye?Ie:ya(Ce.root,Ye,Ie),qt,Et)}function ya(Ye,Ie,Ce){const ot={};return Wt(Ye.children,(Et,qt)=>{ot[qt]=Et===Ie?Ce:ya(Et,Ie,Ce)}),new Jt(Ye.segments,ot)}class el{constructor(Ie,Ce,ot){if(this.isAbsolute=Ie,this.numberOfDoubleDots=Ce,this.commands=ot,Ie&&ot.length>0&&ta(ot[0]))throw new Error("Root segment cannot have matrix parameters");const Et=ot.find(Is);if(Et&&Et!==Zr(ot))throw new Error("{outlets:{}} has to be the last command")}toRoot(){return this.isAbsolute&&1===this.commands.length&&"/"==this.commands[0]}}class $s{constructor(Ie,Ce,ot){this.segmentGroup=Ie,this.processChildren=Ce,this.index=ot}}function Ya(Ye,Ie,Ce){if(Ye||(Ye=new Jt([],{})),0===Ye.segments.length&&Ye.hasChildren())return Ao(Ye,Ie,Ce);const ot=function(Ye,Ie,Ce){let ot=0,Et=Ie;const qt={match:!1,pathIndex:0,commandIndex:0};for(;Et=Ce.length)return qt;const Hn=Ye.segments[Et],Xn=Ce[ot];if(Is(Xn))break;const Ei=`${Xn}`,Yo=ot0&&void 0===Ei)break;if(Ei&&Yo&&"object"==typeof Yo&&void 0===Yo.outlets){if(!Ws(Ei,Yo,Hn))return qt;ot+=2}else{if(!Ws(Ei,{},Hn))return qt;ot++}Et++}return{match:!0,pathIndex:Et,commandIndex:ot}}(Ye,Ie,Ce),Et=Ce.slice(ot.commandIndex);if(ot.match&&ot.pathIndex{"string"==typeof qt&&(qt=[qt]),null!==qt&&(Et[Hn]=Ya(Ye.children[Hn],Ie,qt))}),Wt(Ye.children,(qt,Hn)=>{void 0===ot[Hn]&&(Et[Hn]=qt)}),new Jt(Ye.segments,Et)}}function Ca(Ye,Ie,Ce){const ot=Ye.segments.slice(0,Ie);let Et=0;for(;Et{"string"==typeof Ce&&(Ce=[Ce]),null!==Ce&&(Ie[ot]=Ca(new Jt([],{}),0,Ce))}),Ie}function pl(Ye){const Ie={};return Wt(Ye,(Ce,ot)=>Ie[ot]=`${Ce}`),Ie}function Ws(Ye,Ie,Ce){return Ye==Ce.path&&fi(Ie,Ce.parameters)}class bo{constructor(Ie,Ce,ot,Et){this.routeReuseStrategy=Ie,this.futureState=Ce,this.currState=ot,this.forwardEvent=Et}activate(Ie){const Ce=this.futureState._root,ot=this.currState?this.currState._root:null;this.deactivateChildRoutes(Ce,ot,Ie),si(this.futureState.root),this.activateChildRoutes(Ce,ot,Ie)}deactivateChildRoutes(Ie,Ce,ot){const Et=ri(Ce);Ie.children.forEach(qt=>{const Hn=qt.value.outlet;this.deactivateRoutes(qt,Et[Hn],ot),delete Et[Hn]}),Wt(Et,(qt,Hn)=>{this.deactivateRouteAndItsChildren(qt,ot)})}deactivateRoutes(Ie,Ce,ot){const Et=Ie.value,qt=Ce?Ce.value:null;if(Et===qt)if(Et.component){const Hn=ot.getContext(Et.outlet);Hn&&this.deactivateChildRoutes(Ie,Ce,Hn.children)}else this.deactivateChildRoutes(Ie,Ce,ot);else qt&&this.deactivateRouteAndItsChildren(Ce,ot)}deactivateRouteAndItsChildren(Ie,Ce){this.routeReuseStrategy.shouldDetach(Ie.value.snapshot)?this.detachAndStoreRouteSubtree(Ie,Ce):this.deactivateRouteAndOutlet(Ie,Ce)}detachAndStoreRouteSubtree(Ie,Ce){const ot=Ce.getContext(Ie.value.outlet);if(ot&&ot.outlet){const Et=ot.outlet.detach(),qt=ot.children.onOutletDeactivated();this.routeReuseStrategy.store(Ie.value.snapshot,{componentRef:Et,route:Ie,contexts:qt})}}deactivateRouteAndOutlet(Ie,Ce){const ot=Ce.getContext(Ie.value.outlet),Et=ot&&Ie.value.component?ot.children:Ce,qt=ri(Ie);for(const Hn of Object.keys(qt))this.deactivateRouteAndItsChildren(qt[Hn],Et);ot&&ot.outlet&&(ot.outlet.deactivate(),ot.children.onOutletDeactivated(),ot.attachRef=null,ot.resolver=null,ot.route=null)}activateChildRoutes(Ie,Ce,ot){const Et=ri(Ce);Ie.children.forEach(qt=>{this.activateRoutes(qt,Et[qt.value.outlet],ot),this.forwardEvent(new Ur(qt.value.snapshot))}),Ie.children.length&&this.forwardEvent(new Xt(Ie.value.snapshot))}activateRoutes(Ie,Ce,ot){const Et=Ie.value,qt=Ce?Ce.value:null;if(si(Et),Et===qt)if(Et.component){const Hn=ot.getOrCreateContext(Et.outlet);this.activateChildRoutes(Ie,Ce,Hn.children)}else this.activateChildRoutes(Ie,Ce,ot);else if(Et.component){const Hn=ot.getOrCreateContext(Et.outlet);if(this.routeReuseStrategy.shouldAttach(Et.snapshot)){const Xn=this.routeReuseStrategy.retrieve(Et.snapshot);this.routeReuseStrategy.store(Et.snapshot,null),Hn.children.onOutletReAttached(Xn.contexts),Hn.attachRef=Xn.componentRef,Hn.route=Xn.route.value,Hn.outlet&&Hn.outlet.attach(Xn.componentRef,Xn.route.value),Ls(Xn.route)}else{const Xn=function(Ye){for(let Ie=Ye.parent;Ie;Ie=Ie.parent){const Ce=Ie.routeConfig;if(Ce&&Ce._loadedConfig)return Ce._loadedConfig;if(Ce&&Ce.component)return null}return null}(Et.snapshot),Ei=Xn?Xn.module.componentFactoryResolver:null;Hn.attachRef=null,Hn.route=Et,Hn.resolver=Ei,Hn.outlet&&Hn.outlet.activateWith(Et,Ei),this.activateChildRoutes(Ie,null,Hn.children)}}else this.activateChildRoutes(Ie,null,ot)}}function Ls(Ye){si(Ye.value),Ye.children.forEach(Ls)}class So{constructor(Ie,Ce){this.routes=Ie,this.module=Ce}}function $r(Ye){return"function"==typeof Ye}function tt(Ye){return Ye instanceof gr}const an=Symbol("INITIAL_VALUE");function ti(){return(0,ee.w)(Ye=>(0,A.aj)(Ye.map(Ie=>Ie.pipe((0,ue.q)(1),(0,ae.O)(an)))).pipe((0,H.R)((Ie,Ce)=>{let ot=!1;return Ce.reduce((Et,qt,Hn)=>Et!==an?Et:(qt===an&&(ot=!0),ot||!1!==qt&&Hn!==Ce.length-1&&!tt(qt)?Et:qt),Ie)},an),(0,se.h)(Ie=>Ie!==an),(0,K.U)(Ie=>tt(Ie)?Ie:!0===Ie),(0,ue.q)(1)))}let pi=(()=>{class Ye{}return Ye.\u0275fac=function(Ce){return new(Ce||Ye)},Ye.\u0275cmp=u.Xpm({type:Ye,selectors:[["ng-component"]],decls:1,vars:0,template:function(Ce,ot){1&Ce&&u._UZ(0,"router-outlet")},directives:function(){return[ao]},encapsulation:2}),Ye})();function xi(Ye,Ie=""){for(let Ce=0;CeEo(ot)===Ie);return Ce.push(...Ye.filter(ot=>Eo(ot)!==Ie)),Ce}const sl={matched:!1,consumedSegments:[],lastChild:0,parameters:{},positionalParamSegments:{}};function tc(Ye,Ie,Ce){var ot;if(""===Ie.path)return"full"===Ie.pathMatch&&(Ye.hasChildren()||Ce.length>0)?Object.assign({},sl):{matched:!0,consumedSegments:[],lastChild:0,parameters:{},positionalParamSegments:{}};const qt=(Ie.matcher||Br)(Ce,Ye,Ie);if(!qt)return Object.assign({},sl);const Hn={};Wt(qt.posParams,(Ei,Yo)=>{Hn[Yo]=Ei.path});const Xn=qt.consumed.length>0?Object.assign(Object.assign({},Hn),qt.consumed[qt.consumed.length-1].parameters):Hn;return{matched:!0,consumedSegments:qt.consumed,lastChild:qt.consumed.length,parameters:Xn,positionalParamSegments:null!==(ot=qt.posParams)&&void 0!==ot?ot:{}}}function Nu(Ye,Ie,Ce,ot,Et="corrected"){if(Ce.length>0&&function(Ye,Ie,Ce){return Ce.some(ot=>Yl(Ye,Ie,ot)&&Eo(ot)!==Lr)}(Ye,Ce,ot)){const Hn=new Jt(Ie,function(Ye,Ie,Ce,ot){const Et={};Et[Lr]=ot,ot._sourceSegment=Ye,ot._segmentIndexShift=Ie.length;for(const qt of Ce)if(""===qt.path&&Eo(qt)!==Lr){const Hn=new Jt([],{});Hn._sourceSegment=Ye,Hn._segmentIndexShift=Ie.length,Et[Eo(qt)]=Hn}return Et}(Ye,Ie,ot,new Jt(Ce,Ye.children)));return Hn._sourceSegment=Ye,Hn._segmentIndexShift=Ie.length,{segmentGroup:Hn,slicedSegments:[]}}if(0===Ce.length&&function(Ye,Ie,Ce){return Ce.some(ot=>Yl(Ye,Ie,ot))}(Ye,Ce,ot)){const Hn=new Jt(Ye.segments,function(Ye,Ie,Ce,ot,Et,qt){const Hn={};for(const Xn of ot)if(Yl(Ye,Ce,Xn)&&!Et[Eo(Xn)]){const Ei=new Jt([],{});Ei._sourceSegment=Ye,Ei._segmentIndexShift="legacy"===qt?Ye.segments.length:Ie.length,Hn[Eo(Xn)]=Ei}return Object.assign(Object.assign({},Et),Hn)}(Ye,Ie,Ce,ot,Ye.children,Et));return Hn._sourceSegment=Ye,Hn._segmentIndexShift=Ie.length,{segmentGroup:Hn,slicedSegments:Ce}}const qt=new Jt(Ye.segments,Ye.children);return qt._sourceSegment=Ye,qt._segmentIndexShift=Ie.length,{segmentGroup:qt,slicedSegments:Ce}}function Yl(Ye,Ie,Ce){return(!(Ye.hasChildren()||Ie.length>0)||"full"!==Ce.pathMatch)&&""===Ce.path}function Fs(Ye,Ie,Ce,ot){return!!(Eo(Ye)===ot||ot!==Lr&&Yl(Ie,Ce,Ye))&&("**"===Ye.path||tc(Ie,Ye,Ce).matched)}function dc(Ye,Ie,Ce){return 0===Ie.length&&!Ye.children[Ce]}class iu{constructor(Ie){this.segmentGroup=Ie||null}}class tl{constructor(Ie){this.urlTree=Ie}}function Su(Ye){return new p.y(Ie=>Ie.error(new iu(Ye)))}function Zl(Ye){return new p.y(Ie=>Ie.error(new tl(Ye)))}function rt(Ye){return new p.y(Ie=>Ie.error(new Error(`Only absolute redirects can have named outlets. redirectTo: '${Ye}'`)))}class Te{constructor(Ie,Ce,ot,Et,qt){this.configLoader=Ce,this.urlSerializer=ot,this.urlTree=Et,this.config=qt,this.allowRedirects=!0,this.ngModule=Ie.get(u.h0i)}apply(){const Ie=Nu(this.urlTree.root,[],[],this.config).segmentGroup,Ce=new Jt(Ie.segments,Ie.children);return this.expandSegmentGroup(this.ngModule,this.config,Ce,Lr).pipe((0,K.U)(qt=>this.createUrlTree(xe(qt),this.urlTree.queryParams,this.urlTree.fragment))).pipe((0,Ee.K)(qt=>{if(qt instanceof tl)return this.allowRedirects=!1,this.match(qt.urlTree);throw qt instanceof iu?this.noMatchError(qt):qt}))}match(Ie){return this.expandSegmentGroup(this.ngModule,this.config,Ie.root,Lr).pipe((0,K.U)(Et=>this.createUrlTree(xe(Et),Ie.queryParams,Ie.fragment))).pipe((0,Ee.K)(Et=>{throw Et instanceof iu?this.noMatchError(Et):Et}))}noMatchError(Ie){return new Error(`Cannot match any routes. URL Segment: '${Ie.segmentGroup}'`)}createUrlTree(Ie,Ce,ot){const Et=Ie.segments.length>0?new Jt([],{[Lr]:Ie}):Ie;return new gr(Et,Ce,ot)}expandSegmentGroup(Ie,Ce,ot,Et){return 0===ot.segments.length&&ot.hasChildren()?this.expandChildren(Ie,Ce,ot).pipe((0,K.U)(qt=>new Jt([],qt))):this.expandSegment(Ie,ot,Ce,ot.segments,Et,!0)}expandChildren(Ie,Ce,ot){const Et=[];for(const qt of Object.keys(ot.children))"primary"===qt?Et.unshift(qt):Et.push(qt);return(0,d.D)(Et).pipe((0,ie.b)(qt=>{const Hn=ot.children[qt],Xn=ba(Ce,qt);return this.expandSegmentGroup(Ie,Xn,Hn,qt).pipe((0,K.U)(Ei=>({segment:Ei,outlet:qt})))}),(0,H.R)((qt,Hn)=>(qt[Hn.outlet]=Hn.segment,qt),{}),(0,he.Z)())}expandSegment(Ie,Ce,ot,Et,qt,Hn){return(0,d.D)(ot).pipe((0,ie.b)(Xn=>this.expandSegmentAgainstRoute(Ie,Ce,ot,Xn,Et,qt,Hn).pipe((0,Ee.K)(Yo=>{if(Yo instanceof iu)return(0,y.of)(null);throw Yo}))),(0,ge.P)(Xn=>!!Xn),(0,Ee.K)((Xn,Ei)=>{if(Xn instanceof N.K||"EmptyError"===Xn.name){if(dc(Ce,Et,qt))return(0,y.of)(new Jt([],{}));throw new iu(Ce)}throw Xn}))}expandSegmentAgainstRoute(Ie,Ce,ot,Et,qt,Hn,Xn){return Fs(Et,Ce,qt,Hn)?void 0===Et.redirectTo?this.matchSegmentAgainstRoute(Ie,Ce,Et,qt,Hn):Xn&&this.allowRedirects?this.expandSegmentAgainstRouteUsingRedirect(Ie,Ce,ot,Et,qt,Hn):Su(Ce):Su(Ce)}expandSegmentAgainstRouteUsingRedirect(Ie,Ce,ot,Et,qt,Hn){return"**"===Et.path?this.expandWildCardWithParamsAgainstRouteUsingRedirect(Ie,ot,Et,Hn):this.expandRegularSegmentAgainstRouteUsingRedirect(Ie,Ce,ot,Et,qt,Hn)}expandWildCardWithParamsAgainstRouteUsingRedirect(Ie,Ce,ot,Et){const qt=this.applyRedirectCommands([],ot.redirectTo,{});return ot.redirectTo.startsWith("/")?Zl(qt):this.lineralizeSegments(ot,qt).pipe((0,De.zg)(Hn=>{const Xn=new Jt(Hn,{});return this.expandSegment(Ie,Xn,Ce,Hn,Et,!1)}))}expandRegularSegmentAgainstRouteUsingRedirect(Ie,Ce,ot,Et,qt,Hn){const{matched:Xn,consumedSegments:Ei,lastChild:Yo,positionalParamSegments:$a}=tc(Ce,Et,qt);if(!Xn)return Su(Ce);const ns=this.applyRedirectCommands(Ei,Et.redirectTo,$a);return Et.redirectTo.startsWith("/")?Zl(ns):this.lineralizeSegments(Et,ns).pipe((0,De.zg)(Oa=>this.expandSegment(Ie,Ce,ot,Oa.concat(qt.slice(Yo)),Hn,!1)))}matchSegmentAgainstRoute(Ie,Ce,ot,Et,qt){if("**"===ot.path)return ot.loadChildren?(ot._loadedConfig?(0,y.of)(ot._loadedConfig):this.configLoader.load(Ie.injector,ot)).pipe((0,K.U)(Oa=>(ot._loadedConfig=Oa,new Jt(Et,{})))):(0,y.of)(new Jt(Et,{}));const{matched:Hn,consumedSegments:Xn,lastChild:Ei}=tc(Ce,ot,Et);if(!Hn)return Su(Ce);const Yo=Et.slice(Ei);return this.getChildConfig(Ie,ot,Et).pipe((0,De.zg)(ns=>{const Oa=ns.module,Hs=ns.routes,{segmentGroup:fc,slicedSegments:ga}=Nu(Ce,Xn,Yo,Hs),Ol=new Jt(fc.segments,fc.children);if(0===ga.length&&Ol.hasChildren())return this.expandChildren(Oa,Hs,Ol).pipe((0,K.U)(ul=>new Jt(Xn,ul)));if(0===Hs.length&&0===ga.length)return(0,y.of)(new Jt(Xn,{}));const ll=Eo(ot)===qt;return this.expandSegment(Oa,Ol,Hs,ga,ll?Lr:qt,!0).pipe((0,K.U)(ja=>new Jt(Xn.concat(ja.segments),ja.children)))}))}getChildConfig(Ie,Ce,ot){return Ce.children?(0,y.of)(new So(Ce.children,Ie)):Ce.loadChildren?void 0!==Ce._loadedConfig?(0,y.of)(Ce._loadedConfig):this.runCanLoadGuards(Ie.injector,Ce,ot).pipe((0,De.zg)(Et=>{return Et?this.configLoader.load(Ie.injector,Ce).pipe((0,K.U)(qt=>(Ce._loadedConfig=qt,qt))):(Ye=Ce,new p.y(Ie=>Ie.error(Nn(`Cannot load children because the guard of the route "path: '${Ye.path}'" returned false`))));var Ye})):(0,y.of)(new So([],Ie))}runCanLoadGuards(Ie,Ce,ot){const Et=Ce.canLoad;if(!Et||0===Et.length)return(0,y.of)(!0);const qt=Et.map(Hn=>{const Xn=Ie.get(Hn);let Ei;if((Ye=Xn)&&$r(Ye.canLoad))Ei=Xn.canLoad(Ce,ot);else{if(!$r(Xn))throw new Error("Invalid CanLoad guard");Ei=Xn(Ce,ot)}var Ye;return zn(Ei)});return(0,y.of)(qt).pipe(ti(),(0,ce.b)(Hn=>{if(!tt(Hn))return;const Xn=Nn(`Redirecting to "${this.urlSerializer.serialize(Hn)}"`);throw Xn.url=Hn,Xn}),(0,K.U)(Hn=>!0===Hn))}lineralizeSegments(Ie,Ce){let ot=[],Et=Ce.root;for(;;){if(ot=ot.concat(Et.segments),0===Et.numberOfChildren)return(0,y.of)(ot);if(Et.numberOfChildren>1||!Et.children[Lr])return rt(Ie.redirectTo);Et=Et.children[Lr]}}applyRedirectCommands(Ie,Ce,ot){return this.applyRedirectCreatreUrlTree(Ce,this.urlSerializer.parse(Ce),Ie,ot)}applyRedirectCreatreUrlTree(Ie,Ce,ot,Et){const qt=this.createSegmentGroup(Ie,Ce.root,ot,Et);return new gr(qt,this.createQueryParams(Ce.queryParams,this.urlTree.queryParams),Ce.fragment)}createQueryParams(Ie,Ce){const ot={};return Wt(Ie,(Et,qt)=>{if("string"==typeof Et&&Et.startsWith(":")){const Xn=Et.substring(1);ot[qt]=Ce[Xn]}else ot[qt]=Et}),ot}createSegmentGroup(Ie,Ce,ot,Et){const qt=this.createSegments(Ie,Ce.segments,ot,Et);let Hn={};return Wt(Ce.children,(Xn,Ei)=>{Hn[Ei]=this.createSegmentGroup(Ie,Xn,ot,Et)}),new Jt(qt,Hn)}createSegments(Ie,Ce,ot,Et){return Ce.map(qt=>qt.path.startsWith(":")?this.findPosParam(Ie,qt,Et):this.findOrReturn(qt,ot))}findPosParam(Ie,Ce,ot){const Et=ot[Ce.path.substring(1)];if(!Et)throw new Error(`Cannot redirect to '${Ie}'. Cannot find '${Ce.path}'.`);return Et}findOrReturn(Ie,Ce){let ot=0;for(const Et of Ce){if(Et.path===Ie.path)return Ce.splice(ot),Et;ot++}return Ie}}function xe(Ye){const Ie={};for(const ot of Object.keys(Ye.children)){const qt=xe(Ye.children[ot]);(qt.segments.length>0||qt.hasChildren())&&(Ie[ot]=qt)}return function(Ye){if(1===Ye.numberOfChildren&&Ye.children[Lr]){const Ie=Ye.children[Lr];return new Jt(Ye.segments.concat(Ie.segments),Ie.children)}return Ye}(new Jt(Ye.segments,Ie))}class ur{constructor(Ie){this.path=Ie,this.route=this.path[this.path.length-1]}}class Qi{constructor(Ie,Ce){this.component=Ie,this.route=Ce}}function Go(Ye,Ie,Ce){const ot=Ye._root;return Ma(ot,Ie?Ie._root:null,Ce,[ot.value])}function hs(Ye,Ie,Ce){const ot=function(Ye){if(!Ye)return null;for(let Ie=Ye.parent;Ie;Ie=Ie.parent){const Ce=Ie.routeConfig;if(Ce&&Ce._loadedConfig)return Ce._loadedConfig}return null}(Ie);return(ot?ot.module.injector:Ce).get(Ye)}function Ma(Ye,Ie,Ce,ot,Et={canDeactivateChecks:[],canActivateChecks:[]}){const qt=ri(Ie);return Ye.children.forEach(Hn=>{(function(Ye,Ie,Ce,ot,Et={canDeactivateChecks:[],canActivateChecks:[]}){const qt=Ye.value,Hn=Ie?Ie.value:null,Xn=Ce?Ce.getContext(Ye.value.outlet):null;if(Hn&&qt.routeConfig===Hn.routeConfig){const Ei=function(Ye,Ie,Ce){if("function"==typeof Ce)return Ce(Ye,Ie);switch(Ce){case"pathParamsChange":return!Dn(Ye.url,Ie.url);case"pathParamsOrQueryParamsChange":return!Dn(Ye.url,Ie.url)||!fi(Ye.queryParams,Ie.queryParams);case"always":return!0;case"paramsOrQueryParamsChange":return!Vi(Ye,Ie)||!fi(Ye.queryParams,Ie.queryParams);case"paramsChange":default:return!Vi(Ye,Ie)}}(Hn,qt,qt.routeConfig.runGuardsAndResolvers);Ei?Et.canActivateChecks.push(new ur(ot)):(qt.data=Hn.data,qt._resolvedData=Hn._resolvedData),Ma(Ye,Ie,qt.component?Xn?Xn.children:null:Ce,ot,Et),Ei&&Xn&&Xn.outlet&&Xn.outlet.isActivated&&Et.canDeactivateChecks.push(new Qi(Xn.outlet.component,Hn))}else Hn&&Rl(Ie,Xn,Et),Et.canActivateChecks.push(new ur(ot)),Ma(Ye,null,qt.component?Xn?Xn.children:null:Ce,ot,Et)})(Hn,qt[Hn.value.outlet],Ce,ot.concat([Hn.value]),Et),delete qt[Hn.value.outlet]}),Wt(qt,(Hn,Xn)=>Rl(Hn,Ce.getContext(Xn),Et)),Et}function Rl(Ye,Ie,Ce){const ot=ri(Ye),Et=Ye.value;Wt(ot,(qt,Hn)=>{Rl(qt,Et.component?Ie?Ie.children.getContext(Hn):null:Ie,Ce)}),Ce.canDeactivateChecks.push(new Qi(Et.component&&Ie&&Ie.outlet&&Ie.outlet.isActivated?Ie.outlet.component:null,Et))}class gd{}function rc(Ye){return new p.y(Ie=>Ie.error(Ye))}class sa{constructor(Ie,Ce,ot,Et,qt,Hn){this.rootComponentType=Ie,this.config=Ce,this.urlTree=ot,this.url=Et,this.paramsInheritanceStrategy=qt,this.relativeLinkResolution=Hn}recognize(){const Ie=Nu(this.urlTree.root,[],[],this.config.filter(Hn=>void 0===Hn.redirectTo),this.relativeLinkResolution).segmentGroup,Ce=this.processSegmentGroup(this.config,Ie,Lr);if(null===Ce)return null;const ot=new _t([],Object.freeze({}),Object.freeze(Object.assign({},this.urlTree.queryParams)),this.urlTree.fragment,{},Lr,this.rootComponentType,null,this.urlTree.root,-1,{}),Et=new er(ot,Ce),qt=new mt(this.url,Et);return this.inheritParamsAndData(qt._root),qt}inheritParamsAndData(Ie){const Ce=Ie.value,ot=Ar(Ce,this.paramsInheritanceStrategy);Ce.params=Object.freeze(ot.params),Ce.data=Object.freeze(ot.data),Ie.children.forEach(Et=>this.inheritParamsAndData(Et))}processSegmentGroup(Ie,Ce,ot){return 0===Ce.segments.length&&Ce.hasChildren()?this.processChildren(Ie,Ce):this.processSegment(Ie,Ce,Ce.segments,ot)}processChildren(Ie,Ce){const ot=[];for(const qt of Object.keys(Ce.children)){const Hn=Ce.children[qt],Xn=ba(Ie,qt),Ei=this.processSegmentGroup(Xn,Hn,qt);if(null===Ei)return null;ot.push(...Ei)}const Et=yl(ot);return Et.sort((Ie,Ce)=>Ie.value.outlet===Lr?-1:Ce.value.outlet===Lr?1:Ie.value.outlet.localeCompare(Ce.value.outlet)),Et}processSegment(Ie,Ce,ot,Et){for(const qt of Ie){const Hn=this.processSegmentAgainstRoute(qt,Ce,ot,Et);if(null!==Hn)return Hn}return dc(Ce,ot,Et)?[]:null}processSegmentAgainstRoute(Ie,Ce,ot,Et){if(Ie.redirectTo||!Fs(Ie,Ce,ot,Et))return null;let qt,Hn=[],Xn=[];if("**"===Ie.path){const Hs=ot.length>0?Zr(ot).parameters:{};qt=new _t(ot,Hs,Object.freeze(Object.assign({},this.urlTree.queryParams)),this.urlTree.fragment,js(Ie),Eo(Ie),Ie.component,Ie,yu(Ce),lu(Ce)+ot.length,Hu(Ie))}else{const Hs=tc(Ce,Ie,ot);if(!Hs.matched)return null;Hn=Hs.consumedSegments,Xn=ot.slice(Hs.lastChild),qt=new _t(Hn,Hs.parameters,Object.freeze(Object.assign({},this.urlTree.queryParams)),this.urlTree.fragment,js(Ie),Eo(Ie),Ie.component,Ie,yu(Ce),lu(Ce)+Hn.length,Hu(Ie))}const Ei=(Ye=Ie).children?Ye.children:Ye.loadChildren?Ye._loadedConfig.routes:[],{segmentGroup:Yo,slicedSegments:$a}=Nu(Ce,Hn,Xn,Ei.filter(Hs=>void 0===Hs.redirectTo),this.relativeLinkResolution);var Ye;if(0===$a.length&&Yo.hasChildren()){const Hs=this.processChildren(Ei,Yo);return null===Hs?null:[new er(qt,Hs)]}if(0===Ei.length&&0===$a.length)return[new er(qt,[])];const ns=Eo(Ie)===Et,Oa=this.processSegment(Ei,Yo,$a,ns?Lr:Et);return null===Oa?null:[new er(qt,Oa)]}}function $u(Ye){const Ie=Ye.value.routeConfig;return Ie&&""===Ie.path&&void 0===Ie.redirectTo}function yl(Ye){const Ie=[],Ce=new Set;for(const ot of Ye){if(!$u(ot)){Ie.push(ot);continue}const Et=Ie.find(qt=>ot.value.routeConfig===qt.value.routeConfig);void 0!==Et?(Et.children.push(...ot.children),Ce.add(Et)):Ie.push(ot)}for(const ot of Ce){const Et=yl(ot.children);Ie.push(new er(ot.value,Et))}return Ie.filter(ot=>!Ce.has(ot))}function yu(Ye){let Ie=Ye;for(;Ie._sourceSegment;)Ie=Ie._sourceSegment;return Ie}function lu(Ye){let Ie=Ye,Ce=Ie._segmentIndexShift?Ie._segmentIndexShift:0;for(;Ie._sourceSegment;)Ie=Ie._sourceSegment,Ce+=Ie._segmentIndexShift?Ie._segmentIndexShift:0;return Ce-1}function js(Ye){return Ye.data||{}}function Hu(Ye){return Ye.resolve||{}}function pu(Ye){return(0,ee.w)(Ie=>{const Ce=Ye(Ie);return Ce?(0,d.D)(Ce).pipe((0,K.U)(()=>Ie)):(0,y.of)(Ie)})}class bl extends class{shouldDetach(Ie){return!1}store(Ie,Ce){}shouldAttach(Ie){return!1}retrieve(Ie){return null}shouldReuseRoute(Ie,Ce){return Ie.routeConfig===Ce.routeConfig}}{}const El=new u.OlP("ROUTES");class Ul{constructor(Ie,Ce,ot,Et){this.loader=Ie,this.compiler=Ce,this.onLoadStartListener=ot,this.onLoadEndListener=Et}load(Ie,Ce){if(Ce._loader$)return Ce._loader$;this.onLoadStartListener&&this.onLoadStartListener(Ce);const Et=this.loadModuleFactory(Ce.loadChildren).pipe((0,K.U)(qt=>{this.onLoadEndListener&&this.onLoadEndListener(Ce);const Hn=qt.create(Ie);return new So(Hi(Hn.injector.get(El,void 0,u.XFs.Self|u.XFs.Optional)).map(ko),Hn)}),(0,Ee.K)(qt=>{throw Ce._loader$=void 0,qt}));return Ce._loader$=new Z.c(Et,()=>new J.xQ).pipe((0,Ve.x)()),Ce._loader$}loadModuleFactory(Ie){return"string"==typeof Ie?(0,d.D)(this.loader.load(Ie)):zn(Ie()).pipe((0,De.zg)(Ce=>Ce instanceof u.YKP?(0,y.of)(Ce):(0,d.D)(this.compiler.compileModuleAsync(Ce))))}}class ks{constructor(){this.outlet=null,this.route=null,this.resolver=null,this.children=new V,this.attachRef=null}}class V{constructor(){this.contexts=new Map}onChildOutletCreated(Ie,Ce){const ot=this.getOrCreateContext(Ie);ot.outlet=Ce,this.contexts.set(Ie,ot)}onChildOutletDestroyed(Ie){const Ce=this.getContext(Ie);Ce&&(Ce.outlet=null,Ce.attachRef=null)}onOutletDeactivated(){const Ie=this.contexts;return this.contexts=new Map,Ie}onOutletReAttached(Ie){this.contexts=Ie}getOrCreateContext(Ie){let Ce=this.getContext(Ie);return Ce||(Ce=new ks,this.contexts.set(Ie,Ce)),Ce}getContext(Ie){return this.contexts.get(Ie)||null}}class st{shouldProcessUrl(Ie){return!0}extract(Ie){return Ie}merge(Ie,Ce){return Ie}}function vt(Ye){throw Ye}function ut(Ye,Ie,Ce){return Ie.parse("/")}function un(Ye,Ie){return(0,y.of)(null)}const mn={paths:"exact",fragment:"ignored",matrixParams:"ignored",queryParams:"exact"},Or={paths:"subset",fragment:"ignored",matrixParams:"ignored",queryParams:"subset"};let zr=(()=>{class Ye{constructor(Ce,ot,Et,qt,Hn,Xn,Ei,Yo){this.rootComponentType=Ce,this.urlSerializer=ot,this.rootContexts=Et,this.location=qt,this.config=Yo,this.lastSuccessfulNavigation=null,this.currentNavigation=null,this.disposed=!1,this.lastLocationChangeInfo=null,this.navigationId=0,this.currentPageId=0,this.isNgZoneEnabled=!1,this.events=new J.xQ,this.errorHandler=vt,this.malformedUriErrorHandler=ut,this.navigated=!1,this.lastSuccessfulId=-1,this.hooks={beforePreactivation:un,afterPreactivation:un},this.urlHandlingStrategy=new st,this.routeReuseStrategy=new bl,this.onSameUrlNavigation="ignore",this.paramsInheritanceStrategy="emptyOnly",this.urlUpdateStrategy="deferred",this.relativeLinkResolution="corrected",this.canceledNavigationResolution="replace",this.ngModule=Hn.get(u.h0i),this.console=Hn.get(u.c2e);const Oa=Hn.get(u.R0b);this.isNgZoneEnabled=Oa instanceof u.R0b&&u.R0b.isInAngularZone(),this.resetConfig(Yo),this.currentUrlTree=new gr(new Jt([],{}),{},null),this.rawUrlTree=this.currentUrlTree,this.browserUrlTree=this.currentUrlTree,this.configLoader=new Ul(Xn,Ei,Hs=>this.triggerEvent(new bt(Hs)),Hs=>this.triggerEvent(new Gt(Hs))),this.routerState=Ci(this.currentUrlTree,this.rootComponentType),this.transitions=new S.X({id:0,targetPageId:0,currentUrlTree:this.currentUrlTree,currentRawUrl:this.currentUrlTree,extractedUrl:this.urlHandlingStrategy.extract(this.currentUrlTree),urlAfterRedirects:this.urlHandlingStrategy.extract(this.currentUrlTree),rawUrl:this.currentUrlTree,extras:{},resolve:null,reject:null,promise:Promise.resolve(!0),source:"imperative",restoredState:null,currentSnapshot:this.routerState.snapshot,targetSnapshot:null,currentRouterState:this.routerState,targetRouterState:null,guards:{canActivateChecks:[],canDeactivateChecks:[]},guardsResult:null}),this.navigations=this.setupNavigations(this.transitions),this.processNavigations()}get browserPageId(){var Ce;return null===(Ce=this.location.getState())||void 0===Ce?void 0:Ce.\u0275routerPageId}setupNavigations(Ce){const ot=this.events;return Ce.pipe((0,se.h)(Et=>0!==Et.id),(0,K.U)(Et=>Object.assign(Object.assign({},Et),{extractedUrl:this.urlHandlingStrategy.extract(Et.rawUrl)})),(0,ee.w)(Et=>{let qt=!1,Hn=!1;return(0,y.of)(Et).pipe((0,ce.b)(Xn=>{this.currentNavigation={id:Xn.id,initialUrl:Xn.currentRawUrl,extractedUrl:Xn.extractedUrl,trigger:Xn.source,extras:Xn.extras,previousNavigation:this.lastSuccessfulNavigation?Object.assign(Object.assign({},this.lastSuccessfulNavigation),{previousNavigation:null}):null}}),(0,ee.w)(Xn=>{const Ei=this.browserUrlTree.toString(),Yo=!this.navigated||Xn.extractedUrl.toString()!==Ei||Ei!==this.currentUrlTree.toString();if(("reload"===this.onSameUrlNavigation||Yo)&&this.urlHandlingStrategy.shouldProcessUrl(Xn.rawUrl))return ai(Xn.source)&&(this.browserUrlTree=Xn.extractedUrl),(0,y.of)(Xn).pipe((0,ee.w)(ns=>{const Oa=this.transitions.getValue();return ot.next(new je(ns.id,this.serializeUrl(ns.extractedUrl),ns.source,ns.restoredState)),Oa!==this.transitions.getValue()?e.E:Promise.resolve(ns)}),function(Ye,Ie,Ce,ot){return(0,ee.w)(Et=>function(Ye,Ie,Ce,ot,Et){return new Te(Ye,Ie,Ce,ot,Et).apply()}(Ye,Ie,Ce,Et.extractedUrl,ot).pipe((0,K.U)(qt=>Object.assign(Object.assign({},Et),{urlAfterRedirects:qt}))))}(this.ngModule.injector,this.configLoader,this.urlSerializer,this.config),(0,ce.b)(ns=>{this.currentNavigation=Object.assign(Object.assign({},this.currentNavigation),{finalUrl:ns.urlAfterRedirects})}),function(Ye,Ie,Ce,ot,Et){return(0,De.zg)(qt=>function(Ye,Ie,Ce,ot,Et="emptyOnly",qt="legacy"){try{const Hn=new sa(Ye,Ie,Ce,ot,Et,qt).recognize();return null===Hn?rc(new gd):(0,y.of)(Hn)}catch(Hn){return rc(Hn)}}(Ye,Ie,qt.urlAfterRedirects,Ce(qt.urlAfterRedirects),ot,Et).pipe((0,K.U)(Hn=>Object.assign(Object.assign({},qt),{targetSnapshot:Hn}))))}(this.rootComponentType,this.config,ns=>this.serializeUrl(ns),this.paramsInheritanceStrategy,this.relativeLinkResolution),(0,ce.b)(ns=>{"eager"===this.urlUpdateStrategy&&(ns.extras.skipLocationChange||this.setBrowserUrl(ns.urlAfterRedirects,ns),this.browserUrlTree=ns.urlAfterRedirects);const Oa=new tn(ns.id,this.serializeUrl(ns.extractedUrl),this.serializeUrl(ns.urlAfterRedirects),ns.targetSnapshot);ot.next(Oa)}));if(Yo&&this.rawUrlTree&&this.urlHandlingStrategy.shouldProcessUrl(this.rawUrlTree)){const{id:Oa,extractedUrl:Hs,source:fc,restoredState:ga,extras:Ol}=Xn,ll=new je(Oa,this.serializeUrl(Hs),fc,ga);ot.next(ll);const Za=Ci(Hs,this.rootComponentType).snapshot;return(0,y.of)(Object.assign(Object.assign({},Xn),{targetSnapshot:Za,urlAfterRedirects:Hs,extras:Object.assign(Object.assign({},Ol),{skipLocationChange:!1,replaceUrl:!1})}))}return this.rawUrlTree=Xn.rawUrl,this.browserUrlTree=Xn.urlAfterRedirects,Xn.resolve(null),e.E}),pu(Xn=>{const{targetSnapshot:Ei,id:Yo,extractedUrl:$a,rawUrl:ns,extras:{skipLocationChange:Oa,replaceUrl:Hs}}=Xn;return this.hooks.beforePreactivation(Ei,{navigationId:Yo,appliedUrlTree:$a,rawUrlTree:ns,skipLocationChange:!!Oa,replaceUrl:!!Hs})}),(0,ce.b)(Xn=>{const Ei=new It(Xn.id,this.serializeUrl(Xn.extractedUrl),this.serializeUrl(Xn.urlAfterRedirects),Xn.targetSnapshot);this.triggerEvent(Ei)}),(0,K.U)(Xn=>Object.assign(Object.assign({},Xn),{guards:Go(Xn.targetSnapshot,Xn.currentSnapshot,this.rootContexts)})),function(Ye,Ie){return(0,De.zg)(Ce=>{const{targetSnapshot:ot,currentSnapshot:Et,guards:{canActivateChecks:qt,canDeactivateChecks:Hn}}=Ce;return 0===Hn.length&&0===qt.length?(0,y.of)(Object.assign(Object.assign({},Ce),{guardsResult:!0})):function(Ye,Ie,Ce,ot){return(0,d.D)(Ye).pipe((0,De.zg)(Et=>function(Ye,Ie,Ce,ot,Et){const qt=Ie&&Ie.routeConfig?Ie.routeConfig.canDeactivate:null;if(!qt||0===qt.length)return(0,y.of)(!0);const Hn=qt.map(Xn=>{const Ei=hs(Xn,Ie,Et);let Yo;if(function(Ye){return Ye&&$r(Ye.canDeactivate)}(Ei))Yo=zn(Ei.canDeactivate(Ye,Ie,Ce,ot));else{if(!$r(Ei))throw new Error("Invalid CanDeactivate guard");Yo=zn(Ei(Ye,Ie,Ce,ot))}return Yo.pipe((0,ge.P)())});return(0,y.of)(Hn).pipe(ti())}(Et.component,Et.route,Ce,Ie,ot)),(0,ge.P)(Et=>!0!==Et,!0))}(Hn,ot,Et,Ye).pipe((0,De.zg)(Xn=>Xn&&function(Ye){return"boolean"==typeof Ye}(Xn)?function(Ye,Ie,Ce,ot){return(0,d.D)(Ie).pipe((0,ie.b)(Et=>(0,L.z)(function(Ye,Ie){return null!==Ye&&Ie&&Ie(new xt(Ye)),(0,y.of)(!0)}(Et.route.parent,ot),function(Ye,Ie){return null!==Ye&&Ie&&Ie(new Zn(Ye)),(0,y.of)(!0)}(Et.route,ot),function(Ye,Ie,Ce){const ot=Ie[Ie.length-1],qt=Ie.slice(0,Ie.length-1).reverse().map(Hn=>function(Ye){const Ie=Ye.routeConfig?Ye.routeConfig.canActivateChild:null;return Ie&&0!==Ie.length?{node:Ye,guards:Ie}:null}(Hn)).filter(Hn=>null!==Hn).map(Hn=>_(()=>{const Xn=Hn.guards.map(Ei=>{const Yo=hs(Ei,Hn.node,Ce);let $a;if(function(Ye){return Ye&&$r(Ye.canActivateChild)}(Yo))$a=zn(Yo.canActivateChild(ot,Ye));else{if(!$r(Yo))throw new Error("Invalid CanActivateChild guard");$a=zn(Yo(ot,Ye))}return $a.pipe((0,ge.P)())});return(0,y.of)(Xn).pipe(ti())}));return(0,y.of)(qt).pipe(ti())}(Ye,Et.path,Ce),function(Ye,Ie,Ce){const ot=Ie.routeConfig?Ie.routeConfig.canActivate:null;if(!ot||0===ot.length)return(0,y.of)(!0);const Et=ot.map(qt=>_(()=>{const Hn=hs(qt,Ie,Ce);let Xn;if(function(Ye){return Ye&&$r(Ye.canActivate)}(Hn))Xn=zn(Hn.canActivate(Ie,Ye));else{if(!$r(Hn))throw new Error("Invalid CanActivate guard");Xn=zn(Hn(Ie,Ye))}return Xn.pipe((0,ge.P)())}));return(0,y.of)(Et).pipe(ti())}(Ye,Et.route,Ce))),(0,ge.P)(Et=>!0!==Et,!0))}(ot,qt,Ye,Ie):(0,y.of)(Xn)),(0,K.U)(Xn=>Object.assign(Object.assign({},Ce),{guardsResult:Xn})))})}(this.ngModule.injector,Xn=>this.triggerEvent(Xn)),(0,ce.b)(Xn=>{if(tt(Xn.guardsResult)){const Yo=Nn(`Redirecting to "${this.serializeUrl(Xn.guardsResult)}"`);throw Yo.url=Xn.guardsResult,Yo}const Ei=new Zt(Xn.id,this.serializeUrl(Xn.extractedUrl),this.serializeUrl(Xn.urlAfterRedirects),Xn.targetSnapshot,!!Xn.guardsResult);this.triggerEvent(Ei)}),(0,se.h)(Xn=>!!Xn.guardsResult||(this.restoreHistory(Xn),this.cancelNavigationTransition(Xn,""),!1)),pu(Xn=>{if(Xn.guards.canActivateChecks.length)return(0,y.of)(Xn).pipe((0,ce.b)(Ei=>{const Yo=new Ut(Ei.id,this.serializeUrl(Ei.extractedUrl),this.serializeUrl(Ei.urlAfterRedirects),Ei.targetSnapshot);this.triggerEvent(Yo)}),(0,ee.w)(Ei=>{let Yo=!1;return(0,y.of)(Ei).pipe(function(Ye,Ie){return(0,De.zg)(Ce=>{const{targetSnapshot:ot,guards:{canActivateChecks:Et}}=Ce;if(!Et.length)return(0,y.of)(Ce);let qt=0;return(0,d.D)(Et).pipe((0,ie.b)(Hn=>function(Ye,Ie,Ce,ot){return function(Ye,Ie,Ce,ot){const Et=Object.keys(Ye);if(0===Et.length)return(0,y.of)({});const qt={};return(0,d.D)(Et).pipe((0,De.zg)(Hn=>function(Ye,Ie,Ce,ot){const Et=hs(Ye,Ie,ot);return zn(Et.resolve?Et.resolve(Ie,Ce):Et(Ie,Ce))}(Ye[Hn],Ie,Ce,ot).pipe((0,ce.b)(Xn=>{qt[Hn]=Xn}))),(0,lt.h)(1),(0,De.zg)(()=>Object.keys(qt).length===Et.length?(0,y.of)(qt):e.E))}(Ye._resolve,Ye,Ie,ot).pipe((0,K.U)(qt=>(Ye._resolvedData=qt,Ye.data=Object.assign(Object.assign({},Ye.data),Ar(Ye,Ce).resolve),null)))}(Hn.route,ot,Ye,Ie)),(0,ce.b)(()=>qt++),(0,lt.h)(1),(0,De.zg)(Hn=>qt===Et.length?(0,y.of)(Ce):e.E))})}(this.paramsInheritanceStrategy,this.ngModule.injector),(0,ce.b)({next:()=>Yo=!0,complete:()=>{Yo||(this.restoreHistory(Ei),this.cancelNavigationTransition(Ei,"At least one route resolver didn't emit any value."))}}))}),(0,ce.b)(Ei=>{const Yo=new Bt(Ei.id,this.serializeUrl(Ei.extractedUrl),this.serializeUrl(Ei.urlAfterRedirects),Ei.targetSnapshot);this.triggerEvent(Yo)}))}),pu(Xn=>{const{targetSnapshot:Ei,id:Yo,extractedUrl:$a,rawUrl:ns,extras:{skipLocationChange:Oa,replaceUrl:Hs}}=Xn;return this.hooks.afterPreactivation(Ei,{navigationId:Yo,appliedUrlTree:$a,rawUrlTree:ns,skipLocationChange:!!Oa,replaceUrl:!!Hs})}),(0,K.U)(Xn=>{const Ei=function(Ye,Ie,Ce){const ot=co(Ye,Ie._root,Ce?Ce._root:void 0);return new uo(ot,Ie)}(this.routeReuseStrategy,Xn.targetSnapshot,Xn.currentRouterState);return Object.assign(Object.assign({},Xn),{targetRouterState:Ei})}),(0,ce.b)(Xn=>{this.currentUrlTree=Xn.urlAfterRedirects,this.rawUrlTree=this.urlHandlingStrategy.merge(Xn.urlAfterRedirects,Xn.rawUrl),this.routerState=Xn.targetRouterState,"deferred"===this.urlUpdateStrategy&&(Xn.extras.skipLocationChange||this.setBrowserUrl(this.rawUrlTree,Xn),this.browserUrlTree=Xn.urlAfterRedirects)}),((Ye,Ie,Ce)=>(0,K.U)(ot=>(new bo(Ie,ot.targetRouterState,ot.currentRouterState,Ce).activate(Ye),ot)))(this.rootContexts,this.routeReuseStrategy,Xn=>this.triggerEvent(Xn)),(0,ce.b)({next(){qt=!0},complete(){qt=!0}}),(0,ze.x)(()=>{var Xn;if(!qt&&!Hn){const Ei=`Navigation ID ${Et.id} is not equal to the current navigation id ${this.navigationId}`;"replace"===this.canceledNavigationResolution?(this.restoreHistory(Et),this.cancelNavigationTransition(Et,Ei)):this.cancelNavigationTransition(Et,Ei)}(null===(Xn=this.currentNavigation)||void 0===Xn?void 0:Xn.id)===Et.id&&(this.currentNavigation=null)}),(0,Ee.K)(Xn=>{if(Hn=!0,function(Ye){return Ye&&Ye[ei]}(Xn)){const Ei=tt(Xn.url);Ei||(this.navigated=!0,this.restoreHistory(Et,!0));const Yo=new Vt(Et.id,this.serializeUrl(Et.extractedUrl),Xn.message);ot.next(Yo),Ei?setTimeout(()=>{const $a=this.urlHandlingStrategy.merge(Xn.url,this.rawUrlTree),ns={skipLocationChange:Et.extras.skipLocationChange,replaceUrl:"eager"===this.urlUpdateStrategy||ai(Et.source)};this.scheduleNavigation($a,"imperative",null,ns,{resolve:Et.resolve,reject:Et.reject,promise:Et.promise})},0):Et.resolve(!1)}else{this.restoreHistory(Et,!0);const Ei=new it(Et.id,this.serializeUrl(Et.extractedUrl),Xn);ot.next(Ei);try{Et.resolve(this.errorHandler(Xn))}catch(Yo){Et.reject(Yo)}}return e.E}))}))}resetRootComponentType(Ce){this.rootComponentType=Ce,this.routerState.root.component=this.rootComponentType}getTransition(){const Ce=this.transitions.value;return Ce.urlAfterRedirects=this.browserUrlTree,Ce}setTransition(Ce){this.transitions.next(Object.assign(Object.assign({},this.getTransition()),Ce))}initialNavigation(){this.setUpLocationChangeListener(),0===this.navigationId&&this.navigateByUrl(this.location.path(!0),{replaceUrl:!0})}setUpLocationChangeListener(){this.locationSubscription||(this.locationSubscription=this.location.subscribe(Ce=>{const ot=this.extractLocationChangeInfoFromEvent(Ce);this.shouldScheduleNavigation(this.lastLocationChangeInfo,ot)&&setTimeout(()=>{const{source:Et,state:qt,urlTree:Hn}=ot,Xn={replaceUrl:!0};if(qt){const Ei=Object.assign({},qt);delete Ei.navigationId,delete Ei.\u0275routerPageId,0!==Object.keys(Ei).length&&(Xn.state=Ei)}this.scheduleNavigation(Hn,Et,qt,Xn)},0),this.lastLocationChangeInfo=ot}))}extractLocationChangeInfoFromEvent(Ce){var ot;return{source:"popstate"===Ce.type?"popstate":"hashchange",urlTree:this.parseUrl(Ce.url),state:(null===(ot=Ce.state)||void 0===ot?void 0:ot.navigationId)?Ce.state:null,transitionId:this.getTransition().id}}shouldScheduleNavigation(Ce,ot){if(!Ce)return!0;const Et=ot.urlTree.toString()===Ce.urlTree.toString();return ot.transitionId!==Ce.transitionId||!Et||!("hashchange"===ot.source&&"popstate"===Ce.source||"popstate"===ot.source&&"hashchange"===Ce.source)}get url(){return this.serializeUrl(this.currentUrlTree)}getCurrentNavigation(){return this.currentNavigation}triggerEvent(Ce){this.events.next(Ce)}resetConfig(Ce){xi(Ce),this.config=Ce.map(ko),this.navigated=!1,this.lastSuccessfulId=-1}ngOnDestroy(){this.dispose()}dispose(){this.transitions.complete(),this.locationSubscription&&(this.locationSubscription.unsubscribe(),this.locationSubscription=void 0),this.disposed=!0}createUrlTree(Ce,ot={}){const{relativeTo:Et,queryParams:qt,fragment:Hn,queryParamsHandling:Xn,preserveFragment:Ei}=ot,Yo=Et||this.routerState.root,$a=Ei?this.currentUrlTree.fragment:Hn;let ns=null;switch(Xn){case"merge":ns=Object.assign(Object.assign({},this.currentUrlTree.queryParams),qt);break;case"preserve":ns=this.currentUrlTree.queryParams;break;default:ns=qt||null}return null!==ns&&(ns=this.removeEmptyProps(ns)),function(Ye,Ie,Ce,ot,Et){if(0===Ce.length)return us(Ie.root,Ie.root,Ie,ot,Et);const qt=function(Ye){if("string"==typeof Ye[0]&&1===Ye.length&&"/"===Ye[0])return new el(!0,0,Ye);let Ie=0,Ce=!1;const ot=Ye.reduce((Et,qt,Hn)=>{if("object"==typeof qt&&null!=qt){if(qt.outlets){const Xn={};return Wt(qt.outlets,(Ei,Yo)=>{Xn[Yo]="string"==typeof Ei?Ei.split("/"):Ei}),[...Et,{outlets:Xn}]}if(qt.segmentPath)return[...Et,qt.segmentPath]}return"string"!=typeof qt?[...Et,qt]:0===Hn?(qt.split("/").forEach((Xn,Ei)=>{0==Ei&&"."===Xn||(0==Ei&&""===Xn?Ce=!0:".."===Xn?Ie++:""!=Xn&&Et.push(Xn))}),Et):[...Et,qt]},[]);return new el(Ce,Ie,ot)}(Ce);if(qt.toRoot())return us(Ie.root,new Jt([],{}),Ie,ot,Et);const Hn=function(Ye,Ie,Ce){if(Ye.isAbsolute)return new $s(Ie.root,!0,0);if(-1===Ce.snapshot._lastPathIndex){const qt=Ce.snapshot._urlSegment;return new $s(qt,qt===Ie.root,0)}const ot=ta(Ye.commands[0])?0:1;return function(Ye,Ie,Ce){let ot=Ye,Et=Ie,qt=Ce;for(;qt>Et;){if(qt-=Et,ot=ot.parent,!ot)throw new Error("Invalid number of '../'");Et=ot.segments.length}return new $s(ot,!1,Et-qt)}(Ce.snapshot._urlSegment,Ce.snapshot._lastPathIndex+ot,Ye.numberOfDoubleDots)}(qt,Ie,Ye),Xn=Hn.processChildren?Ao(Hn.segmentGroup,Hn.index,qt.commands):Ya(Hn.segmentGroup,Hn.index,qt.commands);return us(Hn.segmentGroup,Xn,Ie,ot,Et)}(Yo,this.currentUrlTree,Ce,ns,null!=$a?$a:null)}navigateByUrl(Ce,ot={skipLocationChange:!1}){const Et=tt(Ce)?Ce:this.parseUrl(Ce),qt=this.urlHandlingStrategy.merge(Et,this.rawUrlTree);return this.scheduleNavigation(qt,"imperative",null,ot)}navigate(Ce,ot={skipLocationChange:!1}){return function(Ye){for(let Ie=0;Ie{const qt=Ce[Et];return null!=qt&&(ot[Et]=qt),ot},{})}processNavigations(){this.navigations.subscribe(Ce=>{this.navigated=!0,this.lastSuccessfulId=Ce.id,this.currentPageId=Ce.targetPageId,this.events.next(new He(Ce.id,this.serializeUrl(Ce.extractedUrl),this.serializeUrl(this.currentUrlTree))),this.lastSuccessfulNavigation=this.currentNavigation,Ce.resolve(!0)},Ce=>{this.console.warn(`Unhandled Navigation Error: ${Ce}`)})}scheduleNavigation(Ce,ot,Et,qt,Hn){var Xn,Ei;if(this.disposed)return Promise.resolve(!1);const Yo=this.getTransition(),$a=ai(ot)&&Yo&&!ai(Yo.source),Hs=(this.lastSuccessfulId===Yo.id||this.currentNavigation?Yo.rawUrl:Yo.urlAfterRedirects).toString()===Ce.toString();if($a&&Hs)return Promise.resolve(!0);let fc,ga,Ol;Hn?(fc=Hn.resolve,ga=Hn.reject,Ol=Hn.promise):Ol=new Promise((ja,ul)=>{fc=ja,ga=ul});const ll=++this.navigationId;let Za;return"computed"===this.canceledNavigationResolution?(0===this.currentPageId&&(Et=this.location.getState()),Za=Et&&Et.\u0275routerPageId?Et.\u0275routerPageId:qt.replaceUrl||qt.skipLocationChange?null!==(Xn=this.browserPageId)&&void 0!==Xn?Xn:0:(null!==(Ei=this.browserPageId)&&void 0!==Ei?Ei:0)+1):Za=0,this.setTransition({id:ll,targetPageId:Za,source:ot,restoredState:Et,currentUrlTree:this.currentUrlTree,currentRawUrl:this.rawUrlTree,rawUrl:Ce,extras:qt,resolve:fc,reject:ga,promise:Ol,currentSnapshot:this.routerState.snapshot,currentRouterState:this.routerState}),Ol.catch(ja=>Promise.reject(ja))}setBrowserUrl(Ce,ot){const Et=this.urlSerializer.serialize(Ce),qt=Object.assign(Object.assign({},ot.extras.state),this.generateNgRouterState(ot.id,ot.targetPageId));this.location.isCurrentPathEqualTo(Et)||ot.extras.replaceUrl?this.location.replaceState(Et,"",qt):this.location.go(Et,"",qt)}restoreHistory(Ce,ot=!1){var Et,qt;if("computed"===this.canceledNavigationResolution){const Hn=this.currentPageId-Ce.targetPageId;"popstate"!==Ce.source&&"eager"!==this.urlUpdateStrategy&&this.currentUrlTree!==(null===(Et=this.currentNavigation)||void 0===Et?void 0:Et.finalUrl)||0===Hn?this.currentUrlTree===(null===(qt=this.currentNavigation)||void 0===qt?void 0:qt.finalUrl)&&0===Hn&&(this.resetState(Ce),this.browserUrlTree=Ce.currentUrlTree,this.resetUrlToCurrentUrlTree()):this.location.historyGo(Hn)}else"replace"===this.canceledNavigationResolution&&(ot&&this.resetState(Ce),this.resetUrlToCurrentUrlTree())}resetState(Ce){this.routerState=Ce.currentRouterState,this.currentUrlTree=Ce.currentUrlTree,this.rawUrlTree=this.urlHandlingStrategy.merge(this.currentUrlTree,Ce.rawUrl)}resetUrlToCurrentUrlTree(){this.location.replaceState(this.urlSerializer.serialize(this.rawUrlTree),"",this.generateNgRouterState(this.lastSuccessfulId,this.currentPageId))}cancelNavigationTransition(Ce,ot){const Et=new Vt(Ce.id,this.serializeUrl(Ce.extractedUrl),ot);this.triggerEvent(Et),Ce.resolve(!1)}generateNgRouterState(Ce,ot){return"computed"===this.canceledNavigationResolution?{navigationId:Ce,\u0275routerPageId:ot}:{navigationId:Ce}}}return Ye.\u0275fac=function(Ce){return new(Ce||Ye)(u.LFG(u.DyG),u.LFG(Yt),u.LFG(V),u.LFG(r.Ye),u.LFG(u.zs3),u.LFG(u.v3s),u.LFG(u.Sil),u.LFG(void 0))},Ye.\u0275prov=u.Yz7({token:Ye,factory:Ye.\u0275fac}),Ye})();function ai(Ye){return"imperative"!==Ye}let Io=(()=>{class Ye{constructor(Ce,ot,Et,qt,Hn){this.router=Ce,this.route=ot,this.commands=[],this.onChanges=new J.xQ,null==Et&&qt.setAttribute(Hn.nativeElement,"tabindex","0")}ngOnChanges(Ce){this.onChanges.next(this)}set routerLink(Ce){this.commands=null!=Ce?Array.isArray(Ce)?Ce:[Ce]:[]}onClick(){const Ce={skipLocationChange:In(this.skipLocationChange),replaceUrl:In(this.replaceUrl),state:this.state};return this.router.navigateByUrl(this.urlTree,Ce),!0}get urlTree(){return this.router.createUrlTree(this.commands,{relativeTo:void 0!==this.relativeTo?this.relativeTo:this.route,queryParams:this.queryParams,fragment:this.fragment,queryParamsHandling:this.queryParamsHandling,preserveFragment:In(this.preserveFragment)})}}return Ye.\u0275fac=function(Ce){return new(Ce||Ye)(u.Y36(zr),u.Y36(tr),u.$8M("tabindex"),u.Y36(u.Qsj),u.Y36(u.SBq))},Ye.\u0275dir=u.lG2({type:Ye,selectors:[["","routerLink","",5,"a",5,"area"]],hostBindings:function(Ce,ot){1&Ce&&u.NdJ("click",function(){return ot.onClick()})},inputs:{routerLink:"routerLink",queryParams:"queryParams",fragment:"fragment",queryParamsHandling:"queryParamsHandling",preserveFragment:"preserveFragment",skipLocationChange:"skipLocationChange",replaceUrl:"replaceUrl",state:"state",relativeTo:"relativeTo"},features:[u.TTD]}),Ye})(),Fo=(()=>{class Ye{constructor(Ce,ot,Et){this.router=Ce,this.route=ot,this.locationStrategy=Et,this.commands=[],this.onChanges=new J.xQ,this.subscription=Ce.events.subscribe(qt=>{qt instanceof He&&this.updateTargetUrlAndHref()})}set routerLink(Ce){this.commands=null!=Ce?Array.isArray(Ce)?Ce:[Ce]:[]}ngOnChanges(Ce){this.updateTargetUrlAndHref(),this.onChanges.next(this)}ngOnDestroy(){this.subscription.unsubscribe()}onClick(Ce,ot,Et,qt,Hn){if(0!==Ce||ot||Et||qt||Hn||"string"==typeof this.target&&"_self"!=this.target)return!0;const Xn={skipLocationChange:In(this.skipLocationChange),replaceUrl:In(this.replaceUrl),state:this.state};return this.router.navigateByUrl(this.urlTree,Xn),!1}updateTargetUrlAndHref(){this.href=this.locationStrategy.prepareExternalUrl(this.router.serializeUrl(this.urlTree))}get urlTree(){return this.router.createUrlTree(this.commands,{relativeTo:void 0!==this.relativeTo?this.relativeTo:this.route,queryParams:this.queryParams,fragment:this.fragment,queryParamsHandling:this.queryParamsHandling,preserveFragment:In(this.preserveFragment)})}}return Ye.\u0275fac=function(Ce){return new(Ce||Ye)(u.Y36(zr),u.Y36(tr),u.Y36(r.S$))},Ye.\u0275dir=u.lG2({type:Ye,selectors:[["a","routerLink",""],["area","routerLink",""]],hostVars:2,hostBindings:function(Ce,ot){1&Ce&&u.NdJ("click",function(qt){return ot.onClick(qt.button,qt.ctrlKey,qt.shiftKey,qt.altKey,qt.metaKey)}),2&Ce&&(u.Ikx("href",ot.href,u.LSH),u.uIk("target",ot.target))},inputs:{routerLink:"routerLink",target:"target",queryParams:"queryParams",fragment:"fragment",queryParamsHandling:"queryParamsHandling",preserveFragment:"preserveFragment",skipLocationChange:"skipLocationChange",replaceUrl:"replaceUrl",state:"state",relativeTo:"relativeTo"},features:[u.TTD]}),Ye})();function In(Ye){return""===Ye||!!Ye}let Cr=(()=>{class Ye{constructor(Ce,ot,Et,qt,Hn,Xn){this.router=Ce,this.element=ot,this.renderer=Et,this.cdr=qt,this.link=Hn,this.linkWithHref=Xn,this.classes=[],this.isActive=!1,this.routerLinkActiveOptions={exact:!1},this.routerEventsSubscription=Ce.events.subscribe(Ei=>{Ei instanceof He&&this.update()})}ngAfterContentInit(){(0,y.of)(this.links.changes,this.linksWithHrefs.changes,(0,y.of)(null)).pipe((0,Be.J)()).subscribe(Ce=>{this.update(),this.subscribeToEachLinkOnChanges()})}subscribeToEachLinkOnChanges(){var Ce;null===(Ce=this.linkInputChangesSubscription)||void 0===Ce||Ce.unsubscribe();const ot=[...this.links.toArray(),...this.linksWithHrefs.toArray(),this.link,this.linkWithHref].filter(Et=>!!Et).map(Et=>Et.onChanges);this.linkInputChangesSubscription=(0,d.D)(ot).pipe((0,Be.J)()).subscribe(Et=>{this.isActive!==this.isLinkActive(this.router)(Et)&&this.update()})}set routerLinkActive(Ce){const ot=Array.isArray(Ce)?Ce:Ce.split(" ");this.classes=ot.filter(Et=>!!Et)}ngOnChanges(Ce){this.update()}ngOnDestroy(){var Ce;this.routerEventsSubscription.unsubscribe(),null===(Ce=this.linkInputChangesSubscription)||void 0===Ce||Ce.unsubscribe()}update(){!this.links||!this.linksWithHrefs||!this.router.navigated||Promise.resolve().then(()=>{const Ce=this.hasActiveLinks();this.isActive!==Ce&&(this.isActive=Ce,this.cdr.markForCheck(),this.classes.forEach(ot=>{Ce?this.renderer.addClass(this.element.nativeElement,ot):this.renderer.removeClass(this.element.nativeElement,ot)}))})}isLinkActive(Ce){const ot=function(Ye){return!!Ye.paths}(this.routerLinkActiveOptions)?this.routerLinkActiveOptions:this.routerLinkActiveOptions.exact||!1;return Et=>Ce.isActive(Et.urlTree,ot)}hasActiveLinks(){const Ce=this.isLinkActive(this.router);return this.link&&Ce(this.link)||this.linkWithHref&&Ce(this.linkWithHref)||this.links.some(Ce)||this.linksWithHrefs.some(Ce)}}return Ye.\u0275fac=function(Ce){return new(Ce||Ye)(u.Y36(zr),u.Y36(u.SBq),u.Y36(u.Qsj),u.Y36(u.sBO),u.Y36(Io,8),u.Y36(Fo,8))},Ye.\u0275dir=u.lG2({type:Ye,selectors:[["","routerLinkActive",""]],contentQueries:function(Ce,ot,Et){if(1&Ce&&(u.Suo(Et,Io,5),u.Suo(Et,Fo,5)),2&Ce){let qt;u.iGM(qt=u.CRH())&&(ot.links=qt),u.iGM(qt=u.CRH())&&(ot.linksWithHrefs=qt)}},inputs:{routerLinkActiveOptions:"routerLinkActiveOptions",routerLinkActive:"routerLinkActive"},exportAs:["routerLinkActive"],features:[u.TTD]}),Ye})(),ao=(()=>{class Ye{constructor(Ce,ot,Et,qt,Hn){this.parentContexts=Ce,this.location=ot,this.resolver=Et,this.changeDetector=Hn,this.activated=null,this._activatedRoute=null,this.activateEvents=new u.vpe,this.deactivateEvents=new u.vpe,this.name=qt||Lr,Ce.onChildOutletCreated(this.name,this)}ngOnDestroy(){this.parentContexts.onChildOutletDestroyed(this.name)}ngOnInit(){if(!this.activated){const Ce=this.parentContexts.getContext(this.name);Ce&&Ce.route&&(Ce.attachRef?this.attach(Ce.attachRef,Ce.route):this.activateWith(Ce.route,Ce.resolver||null))}}get isActivated(){return!!this.activated}get component(){if(!this.activated)throw new Error("Outlet is not activated");return this.activated.instance}get activatedRoute(){if(!this.activated)throw new Error("Outlet is not activated");return this._activatedRoute}get activatedRouteData(){return this._activatedRoute?this._activatedRoute.snapshot.data:{}}detach(){if(!this.activated)throw new Error("Outlet is not activated");this.location.detach();const Ce=this.activated;return this.activated=null,this._activatedRoute=null,Ce}attach(Ce,ot){this.activated=Ce,this._activatedRoute=ot,this.location.insert(Ce.hostView)}deactivate(){if(this.activated){const Ce=this.component;this.activated.destroy(),this.activated=null,this._activatedRoute=null,this.deactivateEvents.emit(Ce)}}activateWith(Ce,ot){if(this.isActivated)throw new Error("Cannot activate an already activated outlet");this._activatedRoute=Ce;const Hn=(ot=ot||this.resolver).resolveComponentFactory(Ce._futureSnapshot.routeConfig.component),Xn=this.parentContexts.getOrCreateContext(this.name).children,Ei=new ys(Ce,Xn,this.location.injector);this.activated=this.location.createComponent(Hn,this.location.length,Ei),this.changeDetector.markForCheck(),this.activateEvents.emit(this.activated.instance)}}return Ye.\u0275fac=function(Ce){return new(Ce||Ye)(u.Y36(V),u.Y36(u.s_b),u.Y36(u._Vd),u.$8M("name"),u.Y36(u.sBO))},Ye.\u0275dir=u.lG2({type:Ye,selectors:[["router-outlet"]],outputs:{activateEvents:"activate",deactivateEvents:"deactivate"},exportAs:["outlet"]}),Ye})();class ys{constructor(Ie,Ce,ot){this.route=Ie,this.childContexts=Ce,this.parent=ot}get(Ie,Ce){return Ie===tr?this.route:Ie===V?this.childContexts:this.parent.get(Ie,Ce)}}class Na{}class Tl{preload(Ie,Ce){return Ce().pipe((0,Ee.K)(()=>(0,y.of)(null)))}}class Qs{preload(Ie,Ce){return(0,y.of)(null)}}let ed=(()=>{class Ye{constructor(Ce,ot,Et,qt,Hn){this.router=Ce,this.injector=qt,this.preloadingStrategy=Hn,this.loader=new Ul(ot,Et,Yo=>Ce.triggerEvent(new bt(Yo)),Yo=>Ce.triggerEvent(new Gt(Yo)))}setUpPreloading(){this.subscription=this.router.events.pipe((0,se.h)(Ce=>Ce instanceof He),(0,ie.b)(()=>this.preload())).subscribe(()=>{})}preload(){const Ce=this.injector.get(u.h0i);return this.processRoutes(Ce,this.router.config)}ngOnDestroy(){this.subscription&&this.subscription.unsubscribe()}processRoutes(Ce,ot){const Et=[];for(const qt of ot)if(qt.loadChildren&&!qt.canLoad&&qt._loadedConfig){const Hn=qt._loadedConfig;Et.push(this.processRoutes(Hn.module,Hn.routes))}else qt.loadChildren&&!qt.canLoad?Et.push(this.preloadConfig(Ce,qt)):qt.children&&Et.push(this.processRoutes(Ce,qt.children));return(0,d.D)(Et).pipe((0,Be.J)(),(0,K.U)(qt=>{}))}preloadConfig(Ce,ot){return this.preloadingStrategy.preload(ot,()=>(ot._loadedConfig?(0,y.of)(ot._loadedConfig):this.loader.load(Ce.injector,ot)).pipe((0,De.zg)(qt=>(ot._loadedConfig=qt,this.processRoutes(qt.module,qt.routes)))))}}return Ye.\u0275fac=function(Ce){return new(Ce||Ye)(u.LFG(zr),u.LFG(u.v3s),u.LFG(u.Sil),u.LFG(u.zs3),u.LFG(Na))},Ye.\u0275prov=u.Yz7({token:Ye,factory:Ye.\u0275fac}),Ye})(),$c=(()=>{class Ye{constructor(Ce,ot,Et={}){this.router=Ce,this.viewportScroller=ot,this.options=Et,this.lastId=0,this.lastSource="imperative",this.restoredId=0,this.store={},Et.scrollPositionRestoration=Et.scrollPositionRestoration||"disabled",Et.anchorScrolling=Et.anchorScrolling||"disabled"}init(){"disabled"!==this.options.scrollPositionRestoration&&this.viewportScroller.setHistoryScrollRestoration("manual"),this.routerEventsSubscription=this.createScrollEvents(),this.scrollEventsSubscription=this.consumeScrollEvents()}createScrollEvents(){return this.router.events.subscribe(Ce=>{Ce instanceof je?(this.store[this.lastId]=this.viewportScroller.getScrollPosition(),this.lastSource=Ce.navigationTrigger,this.restoredId=Ce.restoredState?Ce.restoredState.navigationId:0):Ce instanceof He&&(this.lastId=Ce.id,this.scheduleScrollEvent(Ce,this.router.parseUrl(Ce.urlAfterRedirects).fragment))})}consumeScrollEvents(){return this.router.events.subscribe(Ce=>{Ce instanceof di&&(Ce.position?"top"===this.options.scrollPositionRestoration?this.viewportScroller.scrollToPosition([0,0]):"enabled"===this.options.scrollPositionRestoration&&this.viewportScroller.scrollToPosition(Ce.position):Ce.anchor&&"enabled"===this.options.anchorScrolling?this.viewportScroller.scrollToAnchor(Ce.anchor):"disabled"!==this.options.scrollPositionRestoration&&this.viewportScroller.scrollToPosition([0,0]))})}scheduleScrollEvent(Ce,ot){this.router.triggerEvent(new di(Ce,"popstate"===this.lastSource?this.store[this.restoredId]:null,ot))}ngOnDestroy(){this.routerEventsSubscription&&this.routerEventsSubscription.unsubscribe(),this.scrollEventsSubscription&&this.scrollEventsSubscription.unsubscribe()}}return Ye.\u0275fac=function(Ce){return new(Ce||Ye)(u.LFG(zr),u.LFG(r.EM),u.LFG(void 0))},Ye.\u0275prov=u.Yz7({token:Ye,factory:Ye.\u0275fac}),Ye})();const $i=new u.OlP("ROUTER_CONFIGURATION"),xo=new u.OlP("ROUTER_FORROOT_GUARD"),hl=[r.Ye,{provide:Yt,useClass:_n},{provide:zr,useFactory:function(Ye,Ie,Ce,ot,Et,qt,Hn,Xn={},Ei,Yo){const $a=new zr(null,Ye,Ie,Ce,ot,Et,qt,Hi(Hn));return Ei&&($a.urlHandlingStrategy=Ei),Yo&&($a.routeReuseStrategy=Yo),function(Ye,Ie){Ye.errorHandler&&(Ie.errorHandler=Ye.errorHandler),Ye.malformedUriErrorHandler&&(Ie.malformedUriErrorHandler=Ye.malformedUriErrorHandler),Ye.onSameUrlNavigation&&(Ie.onSameUrlNavigation=Ye.onSameUrlNavigation),Ye.paramsInheritanceStrategy&&(Ie.paramsInheritanceStrategy=Ye.paramsInheritanceStrategy),Ye.relativeLinkResolution&&(Ie.relativeLinkResolution=Ye.relativeLinkResolution),Ye.urlUpdateStrategy&&(Ie.urlUpdateStrategy=Ye.urlUpdateStrategy)}(Xn,$a),Xn.enableTracing&&$a.events.subscribe(ns=>{var Oa,Hs;null===(Oa=console.group)||void 0===Oa||Oa.call(console,`Router Event: ${ns.constructor.name}`),console.log(ns.toString()),console.log(ns),null===(Hs=console.groupEnd)||void 0===Hs||Hs.call(console)}),$a},deps:[Yt,V,r.Ye,u.zs3,u.v3s,u.Sil,El,$i,[class{},new u.FiY],[class{},new u.FiY]]},V,{provide:tr,useFactory:function(Ye){return Ye.routerState.root},deps:[zr]},{provide:u.v3s,useClass:u.EAV},ed,Qs,Tl,{provide:$i,useValue:{enableTracing:!1}}];function Bl(){return new u.PXZ("Router",zr)}let Js=(()=>{class Ye{constructor(Ce,ot){}static forRoot(Ce,ot){return{ngModule:Ye,providers:[hl,td(Ce),{provide:xo,useFactory:Nl,deps:[[zr,new u.FiY,new u.tp0]]},{provide:$i,useValue:ot||{}},{provide:r.S$,useFactory:Mn,deps:[r.lw,[new u.tBr(r.mr),new u.FiY],$i]},{provide:$c,useFactory:md,deps:[zr,r.EM,$i]},{provide:Na,useExisting:ot&&ot.preloadingStrategy?ot.preloadingStrategy:Qs},{provide:u.PXZ,multi:!0,useFactory:Bl},[Zc,{provide:u.ip1,multi:!0,useFactory:ic,deps:[Zc]},{provide:al,useFactory:df,deps:[Zc]},{provide:u.tb,multi:!0,useExisting:al}]]}}static forChild(Ce){return{ngModule:Ye,providers:[td(Ce)]}}}return Ye.\u0275fac=function(Ce){return new(Ce||Ye)(u.LFG(xo,8),u.LFG(zr,8))},Ye.\u0275mod=u.oAB({type:Ye}),Ye.\u0275inj=u.cJS({}),Ye})();function md(Ye,Ie,Ce){return Ce.scrollOffset&&Ie.setOffset(Ce.scrollOffset),new $c(Ye,Ie,Ce)}function Mn(Ye,Ie,Ce={}){return Ce.useHash?new r.Do(Ye,Ie):new r.b0(Ye,Ie)}function Nl(Ye){return"guarded"}function td(Ye){return[{provide:u.deG,multi:!0,useValue:Ye},{provide:El,multi:!0,useValue:Ye}]}let Zc=(()=>{class Ye{constructor(Ce){this.injector=Ce,this.initNavigation=!1,this.destroyed=!1,this.resultOfPreactivationDone=new J.xQ}appInitializer(){return this.injector.get(r.V_,Promise.resolve(null)).then(()=>{if(this.destroyed)return Promise.resolve(!0);let ot=null;const Et=new Promise(Xn=>ot=Xn),qt=this.injector.get(zr),Hn=this.injector.get($i);return"disabled"===Hn.initialNavigation?(qt.setUpLocationChangeListener(),ot(!0)):"enabled"===Hn.initialNavigation||"enabledBlocking"===Hn.initialNavigation?(qt.hooks.afterPreactivation=()=>this.initNavigation?(0,y.of)(null):(this.initNavigation=!0,ot(!0),this.resultOfPreactivationDone),qt.initialNavigation()):ot(!0),Et})}bootstrapListener(Ce){const ot=this.injector.get($i),Et=this.injector.get(ed),qt=this.injector.get($c),Hn=this.injector.get(zr),Xn=this.injector.get(u.z2F);Ce===Xn.components[0]&&(("enabledNonBlocking"===ot.initialNavigation||void 0===ot.initialNavigation)&&Hn.initialNavigation(),Et.setUpPreloading(),qt.init(),Hn.resetRootComponentType(Xn.componentTypes[0]),this.resultOfPreactivationDone.next(null),this.resultOfPreactivationDone.complete())}ngOnDestroy(){this.destroyed=!0}}return Ye.\u0275fac=function(Ce){return new(Ce||Ye)(u.LFG(u.zs3))},Ye.\u0275prov=u.Yz7({token:Ye,factory:Ye.\u0275fac}),Ye})();function ic(Ye){return Ye.appInitializer.bind(Ye)}function df(Ye){return Ye.bootstrapListener.bind(Ye)}const al=new u.OlP("Router Initializer")},43155:(v,T)=>{"use strict";T.N=void 0;var r=/^([^\w]*)(javascript|data|vbscript)/im,u=/&#(\w+)(^\w|;)?/g,p=/[\u0000-\u001F\u007F-\u009F\u2000-\u200D\uFEFF]/gim,d=/^([^:]+):/gm,e=[".","/"];T.N=function(A){var N=function(A){return A.replace(u,function(N,L){return String.fromCharCode(L)})}(A||"").replace(p,"").trim();if(!N)return"about:blank";if(function(A){return e.indexOf(A[0])>-1}(N))return N;var L=N.match(d);return L&&r.test(L[0])?"about:blank":N}},19723:(v,T,i)=>{"use strict";i.d(T,{iM:()=>rp,qr:()=>Om,xc:()=>zg});var r=i(74788),u=i(12057),p=function(I,z){return(p=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(B,be){B.__proto__=be}||function(B,be){for(var at in be)be.hasOwnProperty(at)&&(B[at]=be[at])})(I,z)};function d(I,z){function B(){this.constructor=I}p(I,z),I.prototype=null===z?Object.create(z):(B.prototype=z.prototype,new B)}var e=function(){return(e=Object.assign||function(z){for(var B,be=1,at=arguments.length;be0)&&!(at=be.next()).done;)$t.push(at.value)}catch(fr){jn={error:fr}}finally{try{at&&!at.done&&(B=be.return)&&B.call(be)}finally{if(jn)throw jn.error}}return $t}function y(){for(var I=[],z=0;z2&&Jt("box");var B=Gn(z);return new Ci(I,Jr(B),B.name,!0,B.equals)},shallowBox:function(I,z){return arguments.length>2&&Jt("shallowBox"),gr.box(I,{name:z,deep:!1})},array:function(I,z){arguments.length>2&&Jt("array");var B=Gn(z);return new Bo(I,Jr(B),B.name)},shallowArray:function(I,z){return arguments.length>2&&Jt("shallowArray"),gr.array(I,{name:z,deep:!1})},map:function(I,z){arguments.length>2&&Jt("map");var B=Gn(z);return new El(I,Jr(B),B.name)},shallowMap:function(I,z){return arguments.length>2&&Jt("shallowMap"),gr.map(I,{name:z,deep:!1})},set:function(I,z){arguments.length>2&&Jt("set");var B=Gn(z);return new Ae(I,Jr(B),B.name)},object:function(I,z,B){"string"==typeof arguments[1]&&Jt("object");var be=Gn(B);return bc({},I,z,be)},shallowObject:function(I,z){return"string"==typeof arguments[1]&&Jt("shallowObject"),gr.object(I,{},{name:z,deep:!1})},ref:br,shallow:wi,deep:_i,struct:Dr},gr=function(I,z,B){if("string"==typeof arguments[1])return _i.apply(null,arguments);if(xe(I))return I;var be=he(I)?gr.object(I,z,B):Array.isArray(I)?gr.array(I,z):He(I)?gr.map(I,z):Vt(I)?gr.set(I,z):I;if(be!==I)return be;K(!1)};function Jt(I){K("Expected one or two arguments to observable."+I+". Did you accidentally try to use observable."+I+" as decorator?")}Object.keys(yn).forEach(function(I){return gr[I]=yn[I]});var Vn=Yr(!1,function(I,z,B,be,at){!function(I,z,B){var be=ut(I);B.name=be.name+"."+z,B.context=I,be.values[z]=new tr(B),Object.defineProperty(I,z,function(I){return zr[I]||(zr[I]={configurable:on.computedConfigurable,enumerable:!1,get:function(){return ai(this).read(this,I)},set:function(z){ai(this).write(this,I,z)}})}(z))}(I,z,e({get:B.get,set:B.set},at[0]||{}))}),mr=Vn({equals:Kr.structural}),Dn=function(z,B,be){if("string"==typeof B||null!==z&&"object"==typeof z&&1===arguments.length)return Vn.apply(null,arguments);var at="object"==typeof B?B:{};return at.get=z,at.set="function"==typeof B?B:at.set,at.name=at.name||z.name||"",new tr(at)};Dn.struct=mr;var Pr=(()=>{return(I=Pr||(Pr={}))[I.NOT_TRACKING=-1]="NOT_TRACKING",I[I.UP_TO_DATE=0]="UP_TO_DATE",I[I.POSSIBLY_STALE=1]="POSSIBLY_STALE",I[I.STALE=2]="STALE",Pr;var I})(),Yt=(()=>{return(I=Yt||(Yt={}))[I.NONE=0]="NONE",I[I.LOG=1]="LOG",I[I.BREAK=2]="BREAK",Yt;var I})(),_n=function(z){this.cause=z};function Ge(I){return I instanceof _n}function kr(I){switch(I.dependenciesState){case Pr.UP_TO_DATE:return!1;case Pr.NOT_TRACKING:case Pr.STALE:return!0;case Pr.POSSIBLY_STALE:for(var z=lo(),B=I.observing,be=B.length,at=0;at0;on.computationDepth>0&&z&&K(!1),!on.allowStateChanges&&(z||"strict"===on.enforceActions)&&K(!1)}function Wr(I,z,B){var be=Co(!0);os(I),I.newObserving=new Array(I.observing.length+100),I.unboundDepsCount=0,I.runId=++on.runId;var $t,at=on.trackingDerivation;if(on.trackingDerivation=I,!0===on.disableErrorBoundaries)$t=z.call(B);else try{$t=z.call(B)}catch(jn){$t=new _n(jn)}return on.trackingDerivation=at,function(I){for(var z=I.observing,B=I.observing=I.newObserving,be=Pr.UP_TO_DATE,at=0,$t=I.unboundDepsCount,jn=0;jn<$t;jn++)0===(fr=B[jn]).diffValue&&(fr.diffValue=1,at!==jn&&(B[at]=fr),at++),fr.dependenciesState>be&&(be=fr.dependenciesState);for(B.length=at,I.newObserving=null,$t=z.length;$t--;)0===(fr=z[$t]).diffValue&&ls(fr,I),fr.diffValue=0;for(;at--;){var fr;1===(fr=B[at]).diffValue&&(fr.diffValue=0,Zs(fr,I))}be!==Pr.UP_TO_DATE&&(I.dependenciesState=be,I.onBecomeStale())}(I),Gi(be),$t}function ar(I){var z=I.observing;I.observing=[];for(var B=z.length;B--;)ls(z[B],I);I.dependenciesState=Pr.NOT_TRACKING}function Wi(I){var z=lo(),B=I();return vo(z),B}function lo(){var I=on.trackingDerivation;return on.trackingDerivation=null,I}function vo(I){on.trackingDerivation=I}function Co(I){var z=on.allowStateReads;return on.allowStateReads=I,z}function Gi(I){on.allowStateReads=I}function os(I){if(I.dependenciesState!==Pr.UP_TO_DATE){I.dependenciesState=Pr.UP_TO_DATE;for(var z=I.observing,B=z.length;B--;)z[B].lowestObserverState=Pr.UP_TO_DATE}}var jo=0,To=1;function Mi(I,z){var B=function(){return li(I,z,this,arguments)};return B.isMobxAction=!0,B}function li(I,z,B,be){var at=function(I,z,B){var be=Ws()&&!!I,at=0;if(be){at=Date.now();var $t=B&&B.length||0,jn=new Array($t);if($t>0)for(var fr=0;fr<$t;fr++)jn[fr]=B[fr];bo({type:"action",name:I,object:z,arguments:jn})}var ui=lo();ta();var Ms={prevDerivation:ui,prevAllowStateChanges:er(!0),prevAllowStateReads:Co(!0),notifySpy:be,startTime:at,actionId:To++,parentActionId:jo};return jo=Ms.actionId,Ms}(I,B,be);try{return z.apply(B,be)}catch($t){throw at.error=$t,$t}finally{!function(I){jo!==I.actionId&&K("invalid action stack. did you forget to finish an action?"),jo=I.parentActionId,void 0!==I.error&&(on.suppressReactionErrors=!0),ri(I.prevAllowStateChanges),Gi(I.prevAllowStateReads),Is(),vo(I.prevDerivation),I.notifySpy&&ps({time:Date.now()-I.startTime}),on.suppressReactionErrors=!1}(at)}}function er(I){var z=on.allowStateChanges;return on.allowStateChanges=I,z}function ri(I){on.allowStateChanges=I}var Ci=function(I){function z(B,be,at,$t,jn){void 0===at&&(at="ObservableValue@"+J()),void 0===$t&&($t=!0),void 0===jn&&(jn=Kr.default);var fr=I.call(this,at)||this;return fr.enhancer=be,fr.name=at,fr.equals=jn,fr.hasUnreportedChange=!1,fr.value=be(B,void 0,at),$t&&Ws()&&Po({type:"create",name:fr.name,newValue:""+fr.value}),fr}return d(z,I),z.prototype.dehanceValue=function(B){return void 0!==this.dehancer?this.dehancer(B):B},z.prototype.set=function(B){var be=this.value;if((B=this.prepareNewValue(B))!==on.UNCHANGED){var at=Ws();at&&bo({type:"update",name:this.name,newValue:B,oldValue:be}),this.setNewValue(B),at&&ps()}},z.prototype.prepareNewValue=function(B){if(An(this),Li(this)){var be=Aa(this,{object:this,type:"update",newValue:B});if(!be)return on.UNCHANGED;B=be.newValue}return B=this.enhancer(B,this.value,this.name),this.equals(this.value,B)?on.UNCHANGED:B},z.prototype.setNewValue=function(B){var be=this.value;this.value=B,this.reportChanged(),Ss(this)&&yl(this,{type:"update",object:this,newValue:B,oldValue:be})},z.prototype.get=function(){return this.reportObserved(),this.dehanceValue(this.value)},z.prototype.intercept=function(B){return sa(this,B)},z.prototype.observe=function(B,be){return be&&B({object:this,type:"update",newValue:this.value,oldValue:void 0}),$u(this,B)},z.prototype.toJSON=function(){return this.get()},z.prototype.toString=function(){return this.name+"["+this.value+"]"},z.prototype.valueOf=function(){return It(this.get())},z}(xt);Ci.prototype[tn()]=Ci.prototype.valueOf,Be("ObservableValue",Ci);var tr=function(){function I(z){this.dependenciesState=Pr.NOT_TRACKING,this.observing=[],this.newObserving=null,this.isBeingObserved=!1,this.isPendingUnobservation=!1,this.observers=[],this.observersIndexes={},this.diffValue=0,this.runId=0,this.lastAccessedBy=0,this.lowestObserverState=Pr.UP_TO_DATE,this.unboundDepsCount=0,this.__mapid="#"+J(),this.value=new _n(null),this.isComputing=!1,this.isRunningSetter=!1,this.isTracing=Yt.NONE,this.derivation=z.get,this.name=z.name||"ComputedValue@"+J(),z.set&&(this.setter=Mi(this.name+"-setter",z.set)),this.equals=z.equals||(z.compareStructural||z.struct?Kr.structural:Kr.default),this.scope=z.context,this.requiresReaction=!!z.requiresReaction,this.keepAlive=!!z.keepAlive}return I.prototype.onBecomeStale=function(){!function(I){if(I.lowestObserverState===Pr.UP_TO_DATE){I.lowestObserverState=Pr.POSSIBLY_STALE;for(var z=I.observers,B=z.length;B--;){var be=z[B];be.dependenciesState===Pr.UP_TO_DATE&&(be.dependenciesState=Pr.POSSIBLY_STALE,be.isTracing!==Yt.NONE&&$s(be,I),be.onBecomeStale())}}}(this)},I.prototype.onBecomeUnobserved=function(){},I.prototype.onBecomeObserved=function(){},I.prototype.get=function(){this.isComputing&&K("Cycle detected in computation "+this.name+": "+this.derivation),0!==on.inBatch||0!==this.observers.length||this.keepAlive?(us(this),kr(this)&&this.trackAndCompute()&&function(I){if(I.lowestObserverState!==Pr.STALE){I.lowestObserverState=Pr.STALE;for(var z=I.observers,B=z.length;B--;){var be=z[B];be.dependenciesState===Pr.POSSIBLY_STALE?be.dependenciesState=Pr.STALE:be.dependenciesState===Pr.UP_TO_DATE&&(I.lowestObserverState=Pr.UP_TO_DATE)}}}(this)):kr(this)&&(this.warnAboutUntrackedRead(),ta(),this.value=this.computeValue(!1),Is());var z=this.value;if(Ge(z))throw z.cause;return z},I.prototype.peek=function(){var z=this.computeValue(!1);if(Ge(z))throw z.cause;return z},I.prototype.set=function(z){if(this.setter){ee(!this.isRunningSetter,"The setter of computed value '"+this.name+"' is trying to update itself. Did you intend to update an _observable_ value, instead of the computed property?"),this.isRunningSetter=!0;try{this.setter.call(this.scope,z)}finally{this.isRunningSetter=!1}}else ee(!1,!1)},I.prototype.trackAndCompute=function(){Ws()&&Po({object:this.scope,type:"compute",name:this.name});var z=this.value,B=this.dependenciesState===Pr.NOT_TRACKING,be=this.computeValue(!0),at=B||Ge(z)||Ge(be)||!this.equals(z,be);return at&&(this.value=be),at},I.prototype.computeValue=function(z){var B;if(this.isComputing=!0,on.computationDepth++,z)B=Wr(this,this.derivation,this.scope);else if(!0===on.disableErrorBoundaries)B=this.derivation.call(this.scope);else try{B=this.derivation.call(this.scope)}catch(be){B=new _n(be)}return on.computationDepth--,this.isComputing=!1,B},I.prototype.suspend=function(){this.keepAlive||(ar(this),this.value=void 0)},I.prototype.observe=function(z,B){var be=this,at=!0,$t=void 0;return ti(function(){var jn=be.get();if(!at||B){var fr=lo();z({type:"update",object:be,newValue:jn,oldValue:$t}),vo(fr)}at=!1,$t=jn})},I.prototype.warnAboutUntrackedRead=function(){},I.prototype.toJSON=function(){return this.get()},I.prototype.toString=function(){return this.name+"["+this.derivation.toString()+"]"},I.prototype.valueOf=function(){return It(this.get())},I}();tr.prototype[tn()]=tr.prototype.valueOf;var I,Ar=Be("ComputedValue",tr),_t=function(){this.version=5,this.UNCHANGED={},this.trackingDerivation=null,this.computationDepth=0,this.runId=0,this.mobxGuid=0,this.inBatch=0,this.pendingUnobservations=[],this.pendingReactions=[],this.isRunningReactions=!1,this.allowStateChanges=!0,this.allowStateReads=!0,this.enforceActions=!1,this.spyListeners=[],this.globalReactionErrorHandlers=[],this.computedRequiresReaction=!1,this.reactionRequiresObservable=!1,this.observableRequiresReaction=!1,this.computedConfigurable=!1,this.disableErrorBoundaries=!1,this.suppressReactionErrors=!1},mt=!0,on=((I=Z()).__mobxInstanceCount>0&&!I.__mobxGlobals&&(mt=!1),I.__mobxGlobals&&I.__mobxGlobals.version!==(new _t).version&&(mt=!1),mt?I.__mobxGlobals?(I.__mobxInstanceCount+=1,I.__mobxGlobals.UNCHANGED||(I.__mobxGlobals.UNCHANGED={}),I.__mobxGlobals):(I.__mobxInstanceCount=1,I.__mobxGlobals=new _t):(setTimeout(function(){K("There are multiple, different versions of MobX active. Make sure MobX is loaded only once or use `configure({ isolateGlobalState: true })`")},1),new _t));function Zs(I,z){var B=I.observers.length;B&&(I.observersIndexes[z.__mapid]=B),I.observers[B]=z,I.lowestObserverState>z.dependenciesState&&(I.lowestObserverState=z.dependenciesState)}function ls(I,z){if(1===I.observers.length)I.observers.length=0,La(I);else{var B=I.observers,be=I.observersIndexes,at=B.pop();if(at!==z){var $t=be[z.__mapid]||0;$t?be[at.__mapid]=$t:delete be[at.__mapid],B[$t]=at}delete be[z.__mapid]}}function La(I){!1===I.isPendingUnobservation&&(I.isPendingUnobservation=!0,on.pendingUnobservations.push(I))}function ta(){on.inBatch++}function Is(){if(0==--on.inBatch){fs();for(var I=on.pendingUnobservations,z=0;z0&&La(I),!1)}function $s(I,z){if(console.log("[mobx.trace] '"+I.name+"' is invalidated due to a change in: '"+z.name+"'"),I.isTracing===Yt.BREAK){var B=[];da(function(I,z){return qc(hr(I,void 0))}(I),B,1),new Function("debugger;\n/*\nTracing '"+I.name+"'\n\nYou are entering this break point because derivation '"+I.name+"' is being traced and '"+z.name+"' is now forcing it to update.\nJust follow the stacktrace you should now see in the devtools to see precisely what piece of your code is causing this update\nThe stackframe you are looking for is at least ~6-8 stack-frames up.\n\n"+(I instanceof tr?I.derivation.toString().replace(/[*]\//g,"/"):"")+"\n\nThe dependencies for this derivation are:\n\n"+B.join("\n")+"\n*/\n ")()}}function da(I,z,B){z.length>=1e3?z.push("(and many more)"):(z.push(""+new Array(B).join("\t")+I.name),I.dependencies&&I.dependencies.forEach(function(be){return da(be,z,B+1)}))}var Il=function(){function I(z,B,be,at){void 0===z&&(z="Reaction@"+J()),void 0===at&&(at=!1),this.name=z,this.onInvalidate=B,this.errorHandler=be,this.requiresObservable=at,this.observing=[],this.newObserving=[],this.dependenciesState=Pr.NOT_TRACKING,this.diffValue=0,this.runId=0,this.unboundDepsCount=0,this.__mapid="#"+J(),this.isDisposed=!1,this._isScheduled=!1,this._isTrackPending=!1,this._isRunning=!1,this.isTracing=Yt.NONE}return I.prototype.onBecomeStale=function(){this.schedule()},I.prototype.schedule=function(){this._isScheduled||(this._isScheduled=!0,on.pendingReactions.push(this),fs())},I.prototype.isScheduled=function(){return this._isScheduled},I.prototype.runReaction=function(){if(!this.isDisposed){if(ta(),this._isScheduled=!1,kr(this)){this._isTrackPending=!0;try{this.onInvalidate(),this._isTrackPending&&Ws()&&Po({name:this.name,type:"scheduled-reaction"})}catch(z){this.reportExceptionInDerivation(z)}}Is()}},I.prototype.track=function(z){ta();var be,B=Ws();B&&(be=Date.now(),bo({name:this.name,type:"reaction"})),this._isRunning=!0;var at=Wr(this,z,void 0);this._isRunning=!1,this._isTrackPending=!1,this.isDisposed&&ar(this),Ge(at)&&this.reportExceptionInDerivation(at.cause),B&&ps({time:Date.now()-be}),Is()},I.prototype.reportExceptionInDerivation=function(z){var B=this;if(this.errorHandler)this.errorHandler(z,this);else{if(on.disableErrorBoundaries)throw z;var be="[mobx] Encountered an uncaught exception that was thrown by a reaction or observer component, in: '"+this+"'";on.suppressReactionErrors?console.warn("[mobx] (error in reaction '"+this.name+"' suppressed, fix error of causing action below)"):console.error(be,z),Ws()&&Po({type:"error",name:this.name,message:be,error:""+z}),on.globalReactionErrorHandlers.forEach(function(at){return at(z,B)})}},I.prototype.dispose=function(){this.isDisposed||(this.isDisposed=!0,this._isRunning||(ta(),ar(this),Is()))},I.prototype.getDisposer=function(){var z=this.dispose.bind(this);return z.$mobx=this,z},I.prototype.toString=function(){return"Reaction["+this.name+"]"},I.prototype.trace=function(z){void 0===z&&(z=!1),function(){for(var I=[],z=0;z0||on.isRunningReactions||function(I){I()}(Ca)}function Ca(){on.isRunningReactions=!0;for(var I=on.pendingReactions,z=0;I.length>0;){100==++z&&(console.error("Reaction doesn't converge to a stable state after 100 iterations. Probably there is a cycle in the reactive function: "+I[0]),I.splice(0));for(var B=I.splice(0),be=0,at=B.length;be",z):2===arguments.length&&"function"==typeof B?Mi(z,B):1===arguments.length&&"string"==typeof z?to(z):!0!==at?to(B).apply(null,arguments):void(z[B]=Mi(z.name||B,be.value))};function an(I,z,B){ce(I,z,Mi(z,B.bind(I)))}function ti(I,z){void 0===z&&(z=N);var at,B=z&&z.name||I.name||"Autorun@"+J();if(z.scheduler||z.delay){var $t=xi(z),jn=!1;at=new Il(B,function(){jn||(jn=!0,$t(function(){jn=!1,at.isDisposed||at.track(fr)}))},z.onError,z.requiresObservable)}else at=new Il(B,function(){this.track(fr)},z.onError,z.requiresObservable);function fr(){I(at)}return at.schedule(),at.getDisposer()}ne.bound=function(I,z,B,be){return!0===be?(an(I,z,B.value),null):B?{configurable:!0,enumerable:!1,get:function(){return an(this,z,B.value||B.initializer.call(this)),this[z]},set:$r}:{enumerable:!1,configurable:!0,set:function(at){an(this,z,at)},get:function(){}}};var pi=function(I){return I()};function xi(I){return I.scheduler?I.scheduler:I.delay?function(z){return setTimeout(z,I.delay)}:pi}function ts(I,z,B){void 0===B&&(B=N),"boolean"==typeof B&&(B={fireImmediately:B});var Ro,be=B.name||"Reaction@"+J(),at=ne(be,B.onError?function(I,z){return function(){try{return z.apply(this,arguments)}catch(B){I.call(this,B)}}}(B.onError,z):z),$t=!B.scheduler&&!B.delay,jn=xi(B),fr=!0,ui=!1,Vo=B.compareStructural?Kr.structural:B.equals||Kr.default,Ms=new Il(be,function(){fr||$t?Dl():ui||(ui=!0,jn(Dl))},B.onError,B.requiresObservable);function Dl(){if(ui=!1,!Ms.isDisposed){var ql=!1;Ms.track(function(){var eu=I(Ms);ql=fr||!Vo(Ro,eu),Ro=eu}),fr&&B.fireImmediately&&at(Ro,Ms),!fr&&!0===ql&&at(Ro,Ms),fr&&(fr=!1)}}return Ms.schedule(),Ms.getDisposer()}function Eo(I,z,B){return ba("onBecomeUnobserved",I,z,B)}function ba(I,z,B,be){var at="function"==typeof be?hr(z,B):hr(z),$t="function"==typeof be?be:B,jn=at[I];return"function"!=typeof jn?K(!1):(at[I]=function(){jn.call(this),$t.call(this)},function(){at[I]=jn})}function bc(I,z,B,be){var $t=(be=Gn(be)).defaultDecorator||(!1===be.deep?br:_i);Br(I),ut(I,be.name,$t.enhancer),ta();try{for(var at in z){var jn=Object.getOwnPropertyDescriptor(z,at),ui=(B&&at in B?B[at]:jn.get?Vn:$t)(I,at,jn,!0);ui&&Object.defineProperty(I,at,ui)}}finally{Is()}return I}function qc(I){var z={name:I.name};return I.observing&&I.observing.length>0&&(z.dependencies=function(I){var z=[];return I.forEach(function(B){-1===z.indexOf(B)&&z.push(B)}),z}(I.observing).map(qc)),z}function Me(I,z){if(null==I)return!1;if(void 0!==z){if(Cr(I)){var B=I.$mobx;return B.values&&!!B.values[z]}return!1}return Cr(I)||!!I.$mobx||Xt(I)||Ra(I)||Ar(I)}function xe(I){return 1!==arguments.length&&K(!1),Me(I)}function Fc(I){switch(I.length){case 0:return on.trackingDerivation;case 1:return hr(I[0]);case 2:return hr(I[0],I[1])}}function Cu(I,z){void 0===z&&(z=void 0),ta();try{return I.apply(z)}finally{Is()}}function Li(I){return void 0!==I.interceptors&&I.interceptors.length>0}function sa(I,z){var B=I.interceptors||(I.interceptors=[]);return B.push(z),H(function(){var be=B.indexOf(z);-1!==be&&B.splice(be,1)})}function Aa(I,z){var B=lo();try{var be=I.interceptors;if(be)for(var at=0,$t=be.length;at<$t&&(ee(!(z=be[at](z))||z.type,"Intercept handlers should return nothing or a change object"),z);at++);return z}finally{vo(B)}}function Ss(I){return void 0!==I.changeListeners&&I.changeListeners.length>0}function $u(I,z){var B=I.changeListeners||(I.changeListeners=[]);return B.push(z),H(function(){var be=B.indexOf(z);-1!==be&&B.splice(be,1)})}function yl(I,z){var B=lo(),be=I.changeListeners;if(be){for(var at=0,$t=(be=be.slice()).length;at<$t;at++)be[at](z);vo(B)}}var yu=function(){var I=!1,z={};return Object.defineProperty(z,"0",{set:function(){I=!0}}),Object.create(z)[0]=1,!1===I}(),lu=0,js=function(){};(function(I,z){void 0!==Object.setPrototypeOf?Object.setPrototypeOf(I.prototype,z):void 0!==I.prototype.__proto__?I.prototype.__proto__=z:I.prototype=z})(js,Array.prototype),Object.isFrozen(Array)&&["constructor","push","shift","concat","pop","unshift","replace","find","findIndex","splice","reverse","sort"].forEach(function(I){Object.defineProperty(js.prototype,I,{configurable:!0,writable:!0,value:Array.prototype[I]})});var Uu=function(){function I(z,B,be,at){this.array=be,this.owned=at,this.values=[],this.lastKnownLength=0,this.atom=new xt(z||"ObservableArray@"+J()),this.enhancer=function($t,jn){return B($t,jn,z+"[..]")}}return I.prototype.dehanceValue=function(z){return void 0!==this.dehancer?this.dehancer(z):z},I.prototype.dehanceValues=function(z){return void 0!==this.dehancer&&z.length>0?z.map(this.dehancer):z},I.prototype.intercept=function(z){return sa(this,z)},I.prototype.observe=function(z,B){return void 0===B&&(B=!1),B&&z({object:this.array,type:"splice",index:0,added:this.values.slice(),addedCount:this.values.length,removed:[],removedCount:0}),$u(this,z)},I.prototype.getArrayLength=function(){return this.atom.reportObserved(),this.values.length},I.prototype.setArrayLength=function(z){if("number"!=typeof z||z<0)throw new Error("[mobx.array] Out of range: "+z);var B=this.values.length;if(z!==B)if(z>B){for(var be=new Array(z-B),at=0;at0&&z+B+1>lu&&pu(z+B+1)},I.prototype.spliceWithArray=function(z,B,be){var at=this;An(this.atom);var $t=this.values.length;if(void 0===z?z=0:z>$t?z=$t:z<0&&(z=Math.max(0,$t+z)),B=1===arguments.length?$t-z:null==B?0:Math.max(0,Math.min(B,$t-z)),void 0===be&&(be=A),Li(this)){var jn=Aa(this,{object:this.array,type:"splice",index:z,removedCount:B,added:be});if(!jn)return A;B=jn.removedCount,be=jn.added}var fr=(be=0===be.length?be:be.map(function(Ro){return at.enhancer(Ro,void 0)})).length-B;this.updateArrayLength($t,fr);var ui=this.spliceItemsIntoValues(z,B,be);return(0!==B||0!==be.length)&&this.notifyArraySplice(z,be,ui),this.dehanceValues(ui)},I.prototype.spliceItemsIntoValues=function(z,B,be){var at;if(be.length<1e4)return(at=this.values).splice.apply(at,y([z,B],be));var $t=this.values.slice(z,z+B);return this.values=this.values.slice(0,z).concat(be,this.values.slice(z+B)),$t},I.prototype.notifyArrayChildUpdate=function(z,B,be){var at=!this.owned&&Ws(),$t=Ss(this),jn=$t||at?{object:this.array,type:"update",index:z,newValue:B,oldValue:be}:null;at&&bo(e({},jn,{name:this.atom.name})),this.atom.reportChanged(),$t&&yl(this,jn),at&&ps()},I.prototype.notifyArraySplice=function(z,B,be){var at=!this.owned&&Ws(),$t=Ss(this),jn=$t||at?{object:this.array,type:"splice",index:z,removed:be,added:B,removedCount:be.length,addedCount:B.length}:null;at&&bo(e({},jn,{name:this.atom.name})),this.atom.reportChanged(),$t&&yl(this,jn),at&&ps()},I}(),Bo=function(I){function z(B,be,at,$t){void 0===at&&(at="ObservableArray@"+J()),void 0===$t&&($t=!1);var jn=I.call(this)||this,fr=new Uu(at,be,jn,$t);if(lt(jn,"$mobx",fr),B&&B.length){var ui=er(!0);jn.spliceWithArray(0,0,B),ri(ui)}return yu&&Object.defineProperty(fr.array,"0",uu),jn}return d(z,I),z.prototype.intercept=function(B){return this.$mobx.intercept(B)},z.prototype.observe=function(B,be){return void 0===be&&(be=!1),this.$mobx.observe(B,be)},z.prototype.clear=function(){return this.splice(0)},z.prototype.concat=function(){for(var B=[],be=0;be-1&&(this.splice(be,1),!0)},z.prototype.move=function(B,be){function at(fr){if(fr<0)throw new Error("[mobx.array] Index out of bounds: "+fr+" is negative");var ui=this.$mobx.values.length;if(fr>=ui)throw new Error("[mobx.array] Index out of bounds: "+fr+" is not smaller than "+ui)}if(at.call(this,B),at.call(this,be),B!==be){var jn,$t=this.$mobx.values;jn=B0){if(++z>=800)return arguments[0]}else z=0;return I.apply(void 0,arguments)}}(ss.Z?function(I,z){return(0,ss.Z)(I,"toString",{configurable:!0,enumerable:!1,value:zd(z),writable:!0})}:Js),ot=function(I,z){return Ie(Nl(I,z,Js),I+"")};var Et=i(7475),qt=i(2951),Hn=i(66224);const Ei=function(I,z,B){(void 0!==B&&!(0,Hn.Z)(I[z],B)||void 0===B&&!(z in I))&&(0,qt.Z)(I,z,B)},Oa=function(z,B,be){for(var at=-1,$t=Object(z),jn=be(z),fr=jn.length;fr--;){var ui=jn[++at];if(!1===B($t[ui],ui,$t))break}return z};var Hs=i(27672),fc=i(1044),ga=i(36889),Ol=i(22595),ll=i(2172),Za=i(34654),ja=i(18402),ul=i(6539);var Qd=i(12434),Sc=i(58209),Wu=i(4214),Cc=i(46382),Xd=i(11595),Sl=Function.prototype.toString,wl=Object.prototype.hasOwnProperty,kl=Sl.call(Object);const Ja=function(I){if(!(0,ul.Z)(I)||"[object Object]"!=(0,Cc.Z)(I))return!1;var z=(0,Xd.Z)(I);if(null===z)return!0;var B=wl.call(z,"constructor")&&z.constructor;return"function"==typeof B&&B instanceof B&&Sl.call(B)==kl};var Qu=i(99436);const Oc=function(I,z){if(("constructor"!==z||"function"!=typeof I[z])&&"__proto__"!=z)return I[z]};var Au=i(57640),Iu=i(76212);const vd=function(I,z,B,be,at,$t,jn){var fr=Oc(I,B),ui=Oc(z,B),Ro=jn.get(ui);if(Ro)Ei(I,B,Ro);else{var Vo=$t?$t(fr,ui,B+"",I,z,jn):void 0,Ms=void 0===Vo;if(Ms){var Dl=(0,Za.Z)(ui),ql=!Dl&&(0,Qd.Z)(ui),eu=!Dl&&!ql&&(0,Qu.Z)(ui);Vo=ui,Dl||ql||eu?(0,Za.Z)(fr)?Vo=fr:function(I){return(0,ul.Z)(I)&&(0,ja.Z)(I)}(fr)?Vo=(0,ga.Z)(fr):ql?(Ms=!1,Vo=(0,Hs.Z)(ui,!0)):eu?(Ms=!1,Vo=(0,fc.Z)(ui,!0)):Vo=[]:Ja(ui)||(0,ll.Z)(ui)?(Vo=fr,(0,ll.Z)(fr)?Vo=function(I){return(0,Au.Z)(I,(0,Iu.Z)(I))}(fr):(!(0,Wu.Z)(fr)||(0,Sc.Z)(fr))&&(Vo=(0,Ol.Z)(ui))):Ms=!1}Ms&&(jn.set(ui,Vo),at(Vo,ui,be,$t,jn),jn.delete(ui)),Ei(I,B,Vo)}},Gc=function wc(I,z,B,be,at){I!==z&&Oa(z,function($t,jn){if(at||(at=new Et.Z),(0,Wu.Z)($t))vd(I,z,jn,B,wc,be,at);else{var fr=be?be(Oc(I,jn),$t,jn+"",I,z,at):void 0;void 0===fr&&(fr=$t),Ei(I,jn,fr)}},Iu.Z)},xc=function pf(I,z,B,be,at,$t){return(0,Wu.Z)(I)&&(0,Wu.Z)(z)&&($t.set(z,I),Gc(I,z,void 0,pf,$t),$t.delete(z)),I};var hf=i(28078);const hu=function(I,z,B){if(!(0,Wu.Z)(B))return!1;var be=typeof z;return!!("number"==be?(0,ja.Z)(B)&&(0,hf.Z)(z,B.length):"string"==be&&z in B)&&(0,Hn.Z)(B[z],I)},_f=function(I){return ot(function(z,B){var be=-1,at=B.length,$t=at>1?B[at-1]:void 0,jn=at>2?B[2]:void 0;for($t=I.length>3&&"function"==typeof $t?(at--,$t):void 0,jn&&hu(B[0],B[1],jn)&&($t=at<3?void 0:$t,at=1),z=Object(z);++beat?0:at+z),(B=B>at?at:B)<0&&(B+=at),at=z>B?0:B-z>>>0,z>>>=0;for(var $t=Array(at);++be0&&B(fr)?z>1?Pa(fr,z-1,B,be,at):(0,Xs.Z)(at,fr):be||(at[at.length]=fr)}return at},wa=function(I){return null!=I&&I.length?il(I,1):[]},gu=function(I){return Ie(Nl(I,void 0,wa),I+"")};var Nc=i(23359);const ve=gu(function(I,z){var B={};if(null==I)return B;var be=!1;z=Mc(z,function($t){return $t=R($t,I),be||(be=$t.length>1),$t}),(0,Au.Z)(I,(0,Nc.Z)(I),B),be&&(B=(0,gt.Z)(B,7,Gs));for(var at=z.length;at--;)Zo(B,z[at]);return B}),bi=function(I,z){for(var B=-1,be=null==I?0:I.length;++Bfr))return!1;var Ro=$t.get(I),Vo=$t.get(z);if(Ro&&Vo)return Ro==z&&Vo==I;var Ms=-1,Dl=!0,ql=2&B?new qf:void 0;for($t.set(I,z),$t.set(z,I);++Ms-1?at[$t?z[jn]:jn]:void 0},Rf=function(I){return"string"==typeof I||!(0,Za.Z)(I)&&(0,ul.Z)(I)&&"[object String]"==(0,Cc.Z)(I)};var ph=i(40309);const Bh=function(){return ph.Z.Date.now()};var ym=Math.max,bm=Math.min;const gg=function(I,z,B){var be=!0,at=!0;if("function"!=typeof I)throw new TypeError("Expected a function");return(0,Wu.Z)(B)&&(be="leading"in B?!!B.leading:be,at="trailing"in B?!!B.trailing:at),function(I,z,B){var be,at,$t,jn,fr,ui,Ro=0,Vo=!1,Ms=!1,Dl=!0;if("function"!=typeof I)throw new TypeError("Expected a function");function ql(Qc){var wp=be,ju=at;return be=at=void 0,Ro=Qc,jn=I.apply(ju,wp)}function eu(Qc){return Ro=Qc,fr=setTimeout(Cd,z),Vo?ql(Qc):jn}function Zd(Qc){var wp=Qc-ui;return void 0===ui||wp>=z||wp<0||Ms&&Qc-Ro>=$t}function Cd(){var Qc=Bh();if(Zd(Qc))return Op(Qc);fr=setTimeout(Cd,function(Qc){var Ic=z-(Qc-ui);return Ms?bm(Ic,$t-(Qc-Ro)):Ic}(Qc))}function Op(Qc){return fr=void 0,Dl&&be?ql(Qc):(be=at=void 0,jn)}function tf(){var Qc=Bh(),wp=Zd(Qc);if(be=arguments,at=this,ui=Qc,wp){if(void 0===fr)return eu(ui);if(Ms)return clearTimeout(fr),fr=setTimeout(Cd,z),ql(ui)}return void 0===fr&&(fr=setTimeout(Cd,z)),jn}return z=bp(z)||0,(0,Wu.Z)(B)&&(Vo=!!B.leading,$t=(Ms="maxWait"in B)?ym(bp(B.maxWait)||0,z):$t,Dl="trailing"in B?!!B.trailing:Dl),tf.cancel=function(){void 0!==fr&&clearTimeout(fr),Ro=0,be=ui=at=fr=void 0},tf.flush=function(){return void 0===fr?jn:Op(Bh())},tf}(I,z,{leading:be,maxWait:z,trailing:at})},mg=function(I){return I!=I},Em=function(I){return null==I?[]:function(I,z){return Mc(z,function(B){return I[B]})}(I,(0,ma.Z)(I))};var Yd=Math.max;const Yg=function(I,z,B,be){I=(0,ja.Z)(I)?I:Em(I),B=B&&!be?od(B):0;var at=I.length;return B<0&&(B=Yd(at+B,0)),Rf(I)?B<=at&&I.indexOf(z,B)>-1:!!at&&function(I,z,B){return z==z?function(I,z,B){for(var be=B-1,at=I.length;++be-1};var Sp=i(15427);const Jc=function(I,z,B,be){if(!(0,Wu.Z)(I))return I;for(var at=-1,$t=(z=R(z,I)).length,jn=$t-1,fr=I;null!=fr&&++at<$t;){var ui=de(z[at]),Ro=B;if("__proto__"===ui||"constructor"===ui||"prototype"===ui)return I;if(at!=jn){var Vo=fr[ui];void 0===(Ro=be?be(Vo,ui,fr):void 0)&&(Ro=(0,Wu.Z)(Vo)?Vo:(0,hf.Z)(z[at+1])?[]:{})}(0,Sp.Z)(fr,ui,Ro),fr=fr[ui]}return I},bg=function(I,z){return function(I,z,B){for(var be=-1,at=z.length,$t={};++be{class I{constructor(B,be){this.templateRef=B,this.viewContainer=be,this.templateBindings={}}ngOnInit(){this.view=this.viewContainer.createEmbeddedView(this.templateRef),this.dispose&&this.dispose(),this.shouldDetach()&&this.view.detach(),this.autoDetect(this.view)}shouldDetach(){return this.treeMobxAutorun&&this.treeMobxAutorun.detach}autoDetect(B){this.dispose=ti(()=>B.detectChanges())}ngOnDestroy(){this.dispose&&this.dispose()}}return I.\u0275fac=function(B){return new(B||I)(r.Y36(r.Rgc),r.Y36(r.s_b))},I.\u0275dir=r.lG2({type:I,selectors:[["","treeMobxAutorun",""]],inputs:{treeMobxAutorun:"treeMobxAutorun"}}),I})();const rp={TOGGLE_ACTIVE:(I,z,B)=>z&&z.toggleActivated(),TOGGLE_ACTIVE_MULTI:(I,z,B)=>z&&z.toggleActivated(!0),TOGGLE_SELECTED:(I,z,B)=>z&&z.toggleSelected(),ACTIVATE:(I,z,B)=>z.setIsActive(!0),DEACTIVATE:(I,z,B)=>z.setIsActive(!1),SELECT:(I,z,B)=>z.setIsSelected(!0),DESELECT:(I,z,B)=>z.setIsSelected(!1),FOCUS:(I,z,B)=>z.focus(),TOGGLE_EXPANDED:(I,z,B)=>z.hasChildren&&z.toggleExpanded(),EXPAND:(I,z,B)=>z.expand(),COLLAPSE:(I,z,B)=>z.collapse(),DRILL_DOWN:(I,z,B)=>I.focusDrillDown(),DRILL_UP:(I,z,B)=>I.focusDrillUp(),NEXT_NODE:(I,z,B)=>I.focusNextNode(),PREVIOUS_NODE:(I,z,B)=>I.focusPreviousNode(),MOVE_NODE:(I,z,B,{from:be,to:at})=>{B.ctrlKey?I.copyNode(be,at):I.moveNode(be,at)}},sv={mouse:{click:rp.TOGGLE_ACTIVE,dblClick:null,contextMenu:null,expanderClick:rp.TOGGLE_EXPANDED,checkboxClick:rp.TOGGLE_SELECTED,drop:rp.MOVE_NODE},keys:{39:rp.DRILL_DOWN,37:rp.DRILL_UP,40:rp.NEXT_NODE,38:rp.PREVIOUS_NODE,32:rp.TOGGLE_ACTIVE,13:rp.TOGGLE_ACTIVE}};class Mm{constructor(z={}){this.options=z,this.actionMapping=Ql({},this.options.actionMapping,sv),z.rtl&&(this.actionMapping.keys[39]=Xe(z,["actionMapping","keys",39])||rp.DRILL_UP,this.actionMapping.keys[37]=Xe(z,["actionMapping","keys",37])||rp.DRILL_DOWN)}get hasChildrenField(){return this.options.hasChildrenField||"hasChildren"}get childrenField(){return this.options.childrenField||"children"}get displayField(){return this.options.displayField||"name"}get idField(){return this.options.idField||"id"}get isExpandedField(){return this.options.isExpandedField||"isExpanded"}get getChildren(){return this.options.getChildren}get levelPadding(){return this.options.levelPadding||0}get useVirtualScroll(){return this.options.useVirtualScroll}get animateExpand(){return this.options.animateExpand}get animateSpeed(){return this.options.animateSpeed||1}get animateAcceleration(){return this.options.animateAcceleration||1.2}get scrollOnActivate(){return void 0===this.options.scrollOnActivate||this.options.scrollOnActivate}get rtl(){return!!this.options.rtl}get rootId(){return this.options.rootId}get useCheckbox(){return this.options.useCheckbox}get useTriState(){return void 0===this.options.useTriState||this.options.useTriState}get scrollContainer(){return this.options.scrollContainer}get allowDragoverStyling(){return void 0===this.options.allowDragoverStyling||this.options.allowDragoverStyling}getNodeClone(z){return this.options.getNodeClone?this.options.getNodeClone(z):ve(Object.assign({},z.data),["id"])}allowDrop(z,B,be){return this.options.allowDrop instanceof Function?this.options.allowDrop(z,B,be):void 0===this.options.allowDrop||this.options.allowDrop}allowDrag(z){return this.options.allowDrag instanceof Function?this.options.allowDrag(z):this.options.allowDrag}nodeClass(z){return this.options.nodeClass?this.options.nodeClass(z):""}nodeHeight(z){if(z.data.virtual)return 0;let B=this.options.nodeHeight||22;return"function"==typeof B&&(B=B(z)),B+(0===z.index?2:1)*this.dropSlotHeight}get dropSlotHeight(){return function(I){return"number"==typeof I||(0,ul.Z)(I)&&"[object Number]"==(0,Cc.Z)(I)}(this.options.dropSlotHeight)?this.options.dropSlotHeight:2}}const mc={toggleExpanded:"toggleExpanded",activate:"activate",deactivate:"deactivate",nodeActivate:"nodeActivate",nodeDeactivate:"nodeDeactivate",select:"select",deselect:"deselect",focus:"focus",blur:"blur",initialized:"initialized",updateData:"updateData",moveNode:"moveNode",copyNode:"copyNode",event:"event",loadNodeChildren:"loadNodeChildren",changeFilter:"changeFilter",stateChange:"stateChange"};var ef=function(I,z,B,be){var jn,at=arguments.length,$t=at<3?z:null===be?be=Object.getOwnPropertyDescriptor(z,B):be;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)$t=Reflect.decorate(I,z,B,be);else for(var fr=I.length-1;fr>=0;fr--)(jn=I[fr])&&($t=(at<3?jn($t):at>3?jn(z,B,$t):jn(z,B))||$t);return at>3&&$t&&Object.defineProperty(z,B,$t),$t},Fu=function(I,z){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(I,z)};let s1=(()=>{class I{constructor(B,be,at,$t){this.data=B,this.parent=be,this.treeModel=at,this.position=0,this.allowDrop=(jn,fr)=>this.options.allowDrop(jn,{parent:this,index:0},fr),this.allowDragoverStyling=()=>this.options.allowDragoverStyling,null==this.id&&(this.id=Math.floor(1e13*Math.random())),this.index=$t,this.getField("children")&&this._initChildren(),this.autoLoadChildren()}get isHidden(){return this.treeModel.isHidden(this)}get isExpanded(){return this.treeModel.isExpanded(this)}get isActive(){return this.treeModel.isActive(this)}get isFocused(){return this.treeModel.isNodeFocused(this)}get isSelected(){return this.isSelectable()?this.treeModel.isSelected(this):function(I,z,B){var be=(0,Za.Z)(I)?bi:Xu;return B&&hu(I,z,B)&&(z=void 0),be(I,rd(z))}(this.children,B=>B.isSelected)}get isAllSelected(){return this.isSelectable()?this.treeModel.isSelected(this):function(I,z,B){var be=(0,Za.Z)(I)?Zu:Yp;return B&&hu(I,z,B)&&(z=void 0),be(I,rd(z))}(this.children,B=>B.isAllSelected)}get isPartiallySelected(){return this.isSelected&&!this.isAllSelected}get level(){return this.parent?this.parent.level+1:0}get path(){return this.parent?[...this.parent.path,this.id]:[]}get elementRef(){throw"Element Ref is no longer supported since introducing virtual scroll\n\n You may use a template to obtain a reference to the element"}get originalNode(){return this._originalNode}get hasChildren(){return!!(this.getField("hasChildren")||this.children&&this.children.length>0)}get isCollapsed(){return!this.isExpanded}get isLeaf(){return!this.hasChildren}get isRoot(){return this.parent.data.virtual}get realParent(){return this.isRoot?null:this.parent}get options(){return this.treeModel.options}fireEvent(B){this.treeModel.fireEvent(B)}get displayField(){return this.getField("display")}get id(){return this.getField("id")}set id(B){this.setField("id",B)}getField(B){return this.data[this.options[`${B}Field`]]}setField(B,be){this.data[this.options[`${B}Field`]]=be}_findAdjacentSibling(B,be=!1){const at=this._getParentsChildren(be),$t=at.indexOf(this);return at.length>$t+B?at[$t+B]:null}findNextSibling(B=!1){return this._findAdjacentSibling(1,B)}findPreviousSibling(B=!1){return this._findAdjacentSibling(-1,B)}getVisibleChildren(){return this.visibleChildren}get visibleChildren(){return(this.children||[]).filter(B=>!B.isHidden)}getFirstChild(B=!1){return Z_((B?this.visibleChildren:this.children)||[])}getLastChild(B=!1){return nn((B?this.visibleChildren:this.children)||[])}findNextNode(B=!0,be=!1){return B&&this.isExpanded&&this.getFirstChild(be)||this.findNextSibling(be)||this.parent&&this.parent.findNextNode(!1,be)}findPreviousNode(B=!1){let be=this.findPreviousSibling(B);return be?be._getLastOpenDescendant(B):this.realParent}_getLastOpenDescendant(B=!1){const be=this.getLastChild(B);return this.isCollapsed||!be?this:be._getLastOpenDescendant(B)}_getParentsChildren(B=!1){return this.parent&&(B?this.parent.getVisibleChildren():this.parent.children)||[]}getIndexInParent(B=!1){return this._getParentsChildren(B).indexOf(this)}isDescendantOf(B){return this===B||this.parent&&this.parent.isDescendantOf(B)}getNodePadding(){return this.options.levelPadding*(this.level-1)+"px"}getClass(){return[this.options.nodeClass(this),`tree-node-level-${this.level}`].join(" ")}onDrop(B){this.mouseAction("drop",B.event,{from:B.element,to:{parent:this,index:0,dropOnNode:!0}})}allowDrag(){return this.options.allowDrag(this)}loadNodeChildren(){return this.options.getChildren?Promise.resolve(this.options.getChildren(this)).then(B=>{B&&(this.setField("children",B),this._initChildren(),this.options.useTriState&&this.treeModel.isSelected(this)&&this.setIsSelected(!0),this.children.forEach(be=>{be.getField("isExpanded")&&be.hasChildren&&be.expand()}))}).then(()=>{this.fireEvent({eventName:mc.loadNodeChildren,node:this})}):Promise.resolve()}expand(){return this.isExpanded||this.toggleExpanded(),this}collapse(){return this.isExpanded&&this.toggleExpanded(),this}doForAll(B){Promise.resolve(B(this)).then(()=>{this.children&&this.children.forEach(be=>be.doForAll(B))})}expandAll(){this.doForAll(B=>B.expand())}collapseAll(){this.doForAll(B=>B.collapse())}ensureVisible(){return this.realParent&&(this.realParent.expand(),this.realParent.ensureVisible()),this}toggleExpanded(){return this.setIsExpanded(!this.isExpanded),this}setIsExpanded(B){return this.hasChildren&&this.treeModel.setExpandedNode(this,B),this}autoLoadChildren(){this.handler=ts(()=>this.isExpanded,B=>{!this.children&&this.hasChildren&&B&&this.loadNodeChildren()},{fireImmediately:!0})}dispose(){this.children&&this.children.forEach(B=>B.dispose()),this.handler&&this.handler(),this.parent=null,this.children=null}setIsActive(B,be=!1){return this.treeModel.setActiveNode(this,B,be),B&&this.focus(this.options.scrollOnActivate),this}isSelectable(){return this.isLeaf||!this.children||!this.options.useTriState}setIsSelected(B){return this.isSelectable()?this.treeModel.setSelectedNode(this,B):this.visibleChildren.forEach(be=>be.setIsSelected(B)),this}toggleSelected(){return this.setIsSelected(!this.isSelected),this}toggleActivated(B=!1){return this.setIsActive(!this.isActive,B),this}setActiveAndVisible(B=!1){return this.setIsActive(!0,B).ensureVisible(),setTimeout(this.scrollIntoView.bind(this)),this}scrollIntoView(B=!1){this.treeModel.virtualScroll.scrollIntoView(this,B)}focus(B=!0){let be=this.treeModel.getFocusedNode();return this.treeModel.setFocusedNode(this),B&&this.scrollIntoView(),be&&this.fireEvent({eventName:mc.blur,node:be}),this.fireEvent({eventName:mc.focus,node:this}),this}blur(){let B=this.treeModel.getFocusedNode();return this.treeModel.setFocusedNode(null),B&&this.fireEvent({eventName:mc.blur,node:this}),this}setIsHidden(B){this.treeModel.setIsHidden(this,B)}hide(){this.setIsHidden(!0)}show(){this.setIsHidden(!1)}mouseAction(B,be,at=null){this.treeModel.setFocus(!0);const jn=this.options.actionMapping.mouse[B];jn&&jn(this.treeModel,this,be,at)}getSelfHeight(){return this.options.nodeHeight(this)}_initChildren(){this.children=this.getField("children").map((B,be)=>new I(B,this,this.treeModel,be))}}return ef([Dn,Fu("design:type",Object),Fu("design:paramtypes",[])],I.prototype,"isHidden",null),ef([Dn,Fu("design:type",Object),Fu("design:paramtypes",[])],I.prototype,"isExpanded",null),ef([Dn,Fu("design:type",Object),Fu("design:paramtypes",[])],I.prototype,"isActive",null),ef([Dn,Fu("design:type",Object),Fu("design:paramtypes",[])],I.prototype,"isFocused",null),ef([Dn,Fu("design:type",Object),Fu("design:paramtypes",[])],I.prototype,"isSelected",null),ef([Dn,Fu("design:type",Object),Fu("design:paramtypes",[])],I.prototype,"isAllSelected",null),ef([Dn,Fu("design:type",Object),Fu("design:paramtypes",[])],I.prototype,"isPartiallySelected",null),ef([gr,Fu("design:type",Array)],I.prototype,"children",void 0),ef([gr,Fu("design:type",Number)],I.prototype,"index",void 0),ef([gr,Fu("design:type",Object)],I.prototype,"position",void 0),ef([gr,Fu("design:type",Number)],I.prototype,"height",void 0),ef([Dn,Fu("design:type",Number),Fu("design:paramtypes",[])],I.prototype,"level",null),ef([Dn,Fu("design:type",Array),Fu("design:paramtypes",[])],I.prototype,"path",null),ef([Dn,Fu("design:type",Object),Fu("design:paramtypes",[])],I.prototype,"visibleChildren",null),ef([ne,Fu("design:type",Function),Fu("design:paramtypes",[Object]),Fu("design:returntype",void 0)],I.prototype,"setIsSelected",null),ef([ne,Fu("design:type",Function),Fu("design:paramtypes",[]),Fu("design:returntype",void 0)],I.prototype,"_initChildren",null),I})();var mu=function(I,z,B,be){var jn,at=arguments.length,$t=at<3?z:null===be?be=Object.getOwnPropertyDescriptor(z,B):be;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)$t=Reflect.decorate(I,z,B,be);else for(var fr=I.length-1;fr>=0;fr--)(jn=I[fr])&&($t=(at<3?jn($t):at>3?jn(z,B,$t):jn(z,B))||$t);return at>3&&$t&&Object.defineProperty(z,B,$t),$t},Qo=function(I,z){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(I,z)};let Kl=(()=>{class I{constructor(){this.options=new Mm,this.eventNames=Object.keys(mc),this.expandedNodeIds={},this.selectedLeafNodeIds={},this.activeNodeIds={},this.hiddenNodeIds={},this.focusedNodeId=null,this.firstUpdate=!0,this.subscriptions=[]}fireEvent(B){B.treeModel=this,this.events[B.eventName].emit(B),this.events.event.emit(B)}subscribe(B,be){const at=this.events[B].subscribe(be);this.subscriptions.push(at)}getFocusedNode(){return this.focusedNode}getActiveNode(){return this.activeNodes[0]}getActiveNodes(){return this.activeNodes}getVisibleRoots(){return this.virtualRoot.visibleChildren}getFirstRoot(B=!1){return Z_(B?this.getVisibleRoots():this.roots)}getLastRoot(B=!1){return nn(B?this.getVisibleRoots():this.roots)}get isFocused(){return I.focusedTree===this}isNodeFocused(B){return this.focusedNode===B}isEmptyTree(){return this.roots&&0===this.roots.length}get focusedNode(){return this.focusedNodeId?this.getNodeById(this.focusedNodeId):null}get expandedNodes(){const B=Object.keys(this.expandedNodeIds).filter(be=>this.expandedNodeIds[be]).map(be=>this.getNodeById(be));return kh(B)}get activeNodes(){const B=Object.keys(this.activeNodeIds).filter(be=>this.activeNodeIds[be]).map(be=>this.getNodeById(be));return kh(B)}get hiddenNodes(){const B=Object.keys(this.hiddenNodeIds).filter(be=>this.hiddenNodeIds[be]).map(be=>this.getNodeById(be));return kh(B)}get selectedLeafNodes(){const B=Object.keys(this.selectedLeafNodeIds).filter(be=>this.selectedLeafNodeIds[be]).map(be=>this.getNodeById(be));return kh(B)}getNodeByPath(B,be=null){if(!B)return null;if(be=be||this.virtualRoot,0===B.length)return be;if(!be.children)return null;const at=B.shift(),$t=fh(be.children,{id:at});return $t?this.getNodeByPath(B,$t):null}getNodeById(B){const be=B.toString();return this.getNodeBy(at=>at.id.toString()===be)}getNodeBy(B,be=null){if(!(be=be||this.virtualRoot).children)return null;const at=fh(be.children,B);if(at)return at;for(let $t of be.children){const jn=this.getNodeBy(B,$t);if(jn)return jn}}isExpanded(B){return this.expandedNodeIds[B.id]}isHidden(B){return this.hiddenNodeIds[B.id]}isActive(B){return this.activeNodeIds[B.id]}isSelected(B){return this.selectedLeafNodeIds[B.id]}ngOnDestroy(){this.dispose(),this.unsubscribeAll()}dispose(){this.virtualRoot&&this.virtualRoot.dispose()}unsubscribeAll(){this.subscriptions.forEach(B=>B.unsubscribe()),this.subscriptions=[]}setData({nodes:B,options:be=null,events:at=null}){be&&(this.options=new Mm(be)),at&&(this.events=at),B&&(this.nodes=B),this.update()}update(){let B={id:this.options.rootId,virtual:!0,[this.options.childrenField]:this.nodes};this.dispose(),this.virtualRoot=new s1(B,null,this,0),this.roots=this.virtualRoot.children,this.firstUpdate?this.roots&&(this.firstUpdate=!1,this._calculateExpandedNodes()):this.fireEvent({eventName:mc.updateData})}setFocusedNode(B){this.focusedNodeId=B?B.id:null}setFocus(B){I.focusedTree=B?this:null}doForAll(B){this.roots.forEach(be=>be.doForAll(B))}focusNextNode(){let B=this.getFocusedNode(),be=B?B.findNextNode(!0,!0):this.getFirstRoot(!0);be&&be.focus()}focusPreviousNode(){let B=this.getFocusedNode(),be=B?B.findPreviousNode(!0):this.getLastRoot(!0);be&&be.focus()}focusDrillDown(){let B=this.getFocusedNode();if(B&&B.isCollapsed&&B.hasChildren)B.toggleExpanded();else{let be=B?B.getFirstChild(!0):this.getFirstRoot(!0);be&&be.focus()}}focusDrillUp(){let B=this.getFocusedNode();if(B)if(B.isExpanded)B.toggleExpanded();else{let be=B.realParent;be&&be.focus()}}setActiveNode(B,be,at=!1){at?this._setActiveNodeMulti(B,be):this._setActiveNodeSingle(B,be),be?(B.focus(this.options.scrollOnActivate),this.fireEvent({eventName:mc.activate,node:B}),this.fireEvent({eventName:mc.nodeActivate,node:B})):(this.fireEvent({eventName:mc.deactivate,node:B}),this.fireEvent({eventName:mc.nodeDeactivate,node:B}))}setSelectedNode(B,be){this.selectedLeafNodeIds=Object.assign({},this.selectedLeafNodeIds,{[B.id]:be}),be?(B.focus(),this.fireEvent({eventName:mc.select,node:B})):this.fireEvent({eventName:mc.deselect,node:B})}setExpandedNode(B,be){this.expandedNodeIds=Object.assign({},this.expandedNodeIds,{[B.id]:be}),this.fireEvent({eventName:mc.toggleExpanded,node:B,isExpanded:be})}expandAll(){this.roots.forEach(B=>B.expandAll())}collapseAll(){this.roots.forEach(B=>B.collapseAll())}setIsHidden(B,be){this.hiddenNodeIds=Object.assign({},this.hiddenNodeIds,{[B.id]:be})}setHiddenNodeIds(B){this.hiddenNodeIds=B.reduce((be,at)=>Object.assign(be,{[at]:!0}),{})}performKeyAction(B,be){const at=this.options.actionMapping.keys[be.keyCode];return!!at&&(be.preventDefault(),at(this,B,be),!0)}filterNodes(B,be=!0){let at;if(!B)return this.clearFilter();if(Rf(B))at=jn=>-1!==jn.displayField.toLowerCase().indexOf(B.toLowerCase());else{if(!(0,Sc.Z)(B))return console.error("Don't know what to do with filter",B),void console.error("Should be either a string or function");at=B}const $t={};this.roots.forEach(jn=>this._filterNode($t,jn,at,be)),this.hiddenNodeIds=$t,this.fireEvent({eventName:mc.changeFilter})}clearFilter(){this.hiddenNodeIds={},this.fireEvent({eventName:mc.changeFilter})}moveNode(B,be){const at=B.getIndexInParent(),$t=B.parent;if(!this.canMoveNode(B,be,at))return;const jn=$t.getField("children");be.parent.getField("children")||be.parent.setField("children",[]);const fr=be.parent.getField("children"),ui=jn.splice(at,1)[0];let Ro=$t===be.parent&&be.index>at?be.index-1:be.index;fr.splice(Ro,0,ui),$t.treeModel.update(),be.parent.treeModel!==$t.treeModel&&be.parent.treeModel.update(),this.fireEvent({eventName:mc.moveNode,node:ui,to:{parent:be.parent.data,index:Ro},from:{parent:$t.data,index:at}})}copyNode(B,be){const at=B.getIndexInParent();if(!this.canMoveNode(B,be,at))return;be.parent.getField("children")||be.parent.setField("children",[]);const $t=be.parent.getField("children"),jn=this.options.getNodeClone(B);$t.splice(be.index,0,jn),B.treeModel.update(),be.parent.treeModel!==B.treeModel&&be.parent.treeModel.update(),this.fireEvent({eventName:mc.copyNode,node:jn,to:{parent:be.parent.data,index:be.index}})}getState(){return{expandedNodeIds:this.expandedNodeIds,selectedLeafNodeIds:this.selectedLeafNodeIds,activeNodeIds:this.activeNodeIds,hiddenNodeIds:this.hiddenNodeIds,focusedNodeId:this.focusedNodeId}}setState(B){!B||Object.assign(this,{expandedNodeIds:B.expandedNodeIds||{},selectedLeafNodeIds:B.selectedLeafNodeIds||{},activeNodeIds:B.activeNodeIds||{},hiddenNodeIds:B.hiddenNodeIds||{},focusedNodeId:B.focusedNodeId})}subscribeToState(B){ti(()=>B(this.getState()))}canMoveNode(B,be,at){return at||B.getIndexInParent(),(B.parent!==be.parent||at!==be.index)&&!be.parent.isDescendantOf(B)}calculateExpandedNodes(){this._calculateExpandedNodes()}_filterNode(B,be,at,$t){let jn=at(be);return be.children&&be.children.forEach(fr=>{this._filterNode(B,fr,at,$t)&&(jn=!0)}),jn||(B[be.id]=!0),$t&&jn&&be.ensureVisible(),jn}_calculateExpandedNodes(B=null){(B=B||this.virtualRoot).data[this.options.isExpandedField]&&(this.expandedNodeIds=Object.assign({},this.expandedNodeIds,{[B.id]:!0})),B.children&&B.children.forEach(be=>this._calculateExpandedNodes(be))}_setActiveNodeSingle(B,be){this.activeNodes.filter(at=>at!==B).forEach(at=>{this.fireEvent({eventName:mc.deactivate,node:at}),this.fireEvent({eventName:mc.nodeDeactivate,node:at})}),this.activeNodeIds=be?{[B.id]:!0}:{}}_setActiveNodeMulti(B,be){this.activeNodeIds=Object.assign({},this.activeNodeIds,{[B.id]:be})}}return I.\u0275fac=function(B){return new(B||I)},I.\u0275prov=r.Yz7({token:I,factory:I.\u0275fac}),I.focusedTree=null,I})();mu([gr,Qo("design:type",Array)],Kl.prototype,"roots",void 0),mu([gr,Qo("design:type",Object)],Kl.prototype,"expandedNodeIds",void 0),mu([gr,Qo("design:type",Object)],Kl.prototype,"selectedLeafNodeIds",void 0),mu([gr,Qo("design:type",Object)],Kl.prototype,"activeNodeIds",void 0),mu([gr,Qo("design:type",Object)],Kl.prototype,"hiddenNodeIds",void 0),mu([gr,Qo("design:type",Object)],Kl.prototype,"focusedNodeId",void 0),mu([gr,Qo("design:type",s1)],Kl.prototype,"virtualRoot",void 0),mu([Dn,Qo("design:type",Object),Qo("design:paramtypes",[])],Kl.prototype,"focusedNode",null),mu([Dn,Qo("design:type",Object),Qo("design:paramtypes",[])],Kl.prototype,"expandedNodes",null),mu([Dn,Qo("design:type",Object),Qo("design:paramtypes",[])],Kl.prototype,"activeNodes",null),mu([Dn,Qo("design:type",Object),Qo("design:paramtypes",[])],Kl.prototype,"hiddenNodes",null),mu([Dn,Qo("design:type",Object),Qo("design:paramtypes",[])],Kl.prototype,"selectedLeafNodes",null),mu([ne,Qo("design:type",Function),Qo("design:paramtypes",[Object]),Qo("design:returntype",void 0)],Kl.prototype,"setData",null),mu([ne,Qo("design:type",Function),Qo("design:paramtypes",[]),Qo("design:returntype",void 0)],Kl.prototype,"update",null),mu([ne,Qo("design:type",Function),Qo("design:paramtypes",[Object]),Qo("design:returntype",void 0)],Kl.prototype,"setFocusedNode",null),mu([ne,Qo("design:type",Function),Qo("design:paramtypes",[Object]),Qo("design:returntype",void 0)],Kl.prototype,"setFocus",null),mu([ne,Qo("design:type",Function),Qo("design:paramtypes",[Object]),Qo("design:returntype",void 0)],Kl.prototype,"doForAll",null),mu([ne,Qo("design:type",Function),Qo("design:paramtypes",[]),Qo("design:returntype",void 0)],Kl.prototype,"focusNextNode",null),mu([ne,Qo("design:type",Function),Qo("design:paramtypes",[]),Qo("design:returntype",void 0)],Kl.prototype,"focusPreviousNode",null),mu([ne,Qo("design:type",Function),Qo("design:paramtypes",[]),Qo("design:returntype",void 0)],Kl.prototype,"focusDrillDown",null),mu([ne,Qo("design:type",Function),Qo("design:paramtypes",[]),Qo("design:returntype",void 0)],Kl.prototype,"focusDrillUp",null),mu([ne,Qo("design:type",Function),Qo("design:paramtypes",[Object,Object,Object]),Qo("design:returntype",void 0)],Kl.prototype,"setActiveNode",null),mu([ne,Qo("design:type",Function),Qo("design:paramtypes",[Object,Object]),Qo("design:returntype",void 0)],Kl.prototype,"setSelectedNode",null),mu([ne,Qo("design:type",Function),Qo("design:paramtypes",[Object,Object]),Qo("design:returntype",void 0)],Kl.prototype,"setExpandedNode",null),mu([ne,Qo("design:type",Function),Qo("design:paramtypes",[]),Qo("design:returntype",void 0)],Kl.prototype,"expandAll",null),mu([ne,Qo("design:type",Function),Qo("design:paramtypes",[]),Qo("design:returntype",void 0)],Kl.prototype,"collapseAll",null),mu([ne,Qo("design:type",Function),Qo("design:paramtypes",[Object,Object]),Qo("design:returntype",void 0)],Kl.prototype,"setIsHidden",null),mu([ne,Qo("design:type",Function),Qo("design:paramtypes",[Object]),Qo("design:returntype",void 0)],Kl.prototype,"setHiddenNodeIds",null),mu([ne,Qo("design:type",Function),Qo("design:paramtypes",[Object,Object]),Qo("design:returntype",void 0)],Kl.prototype,"filterNodes",null),mu([ne,Qo("design:type",Function),Qo("design:paramtypes",[]),Qo("design:returntype",void 0)],Kl.prototype,"clearFilter",null),mu([ne,Qo("design:type",Function),Qo("design:paramtypes",[Object,Object]),Qo("design:returntype",void 0)],Kl.prototype,"moveNode",null),mu([ne,Qo("design:type",Function),Qo("design:paramtypes",[Object,Object]),Qo("design:returntype",void 0)],Kl.prototype,"copyNode",null),mu([ne,Qo("design:type",Function),Qo("design:paramtypes",[Object]),Qo("design:returntype",void 0)],Kl.prototype,"setState",null);let lv=(()=>{class I{constructor(){this._draggedElement=null}set(B){this._draggedElement=B}get(){return this._draggedElement}isDragging(){return!!this.get()}}return I.\u0275fac=function(B){return new(B||I)},I.\u0275prov=(0,r.Yz7)({factory:function(){return new I},token:I,providedIn:"root"}),I})();var Wh=function(I,z,B,be){var jn,at=arguments.length,$t=at<3?z:null===be?be=Object.getOwnPropertyDescriptor(z,B):be;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)$t=Reflect.decorate(I,z,B,be);else for(var fr=I.length-1;fr>=0;fr--)(jn=I[fr])&&($t=(at<3?jn($t):at>3?jn(z,B,$t):jn(z,B))||$t);return at>3&&$t&&Object.defineProperty(z,B,$t),$t},Sd=function(I,z){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(I,z)};let Wf=(()=>{class I{constructor(B){this.treeModel=B,this.yBlocks=0,this.x=0,this.viewportHeight=null,this.viewport=null,B.virtualScroll=this,this._dispose=[ti(()=>this.fixScroll())]}get y(){return 150*this.yBlocks}get totalHeight(){return this.treeModel.virtualRoot?this.treeModel.virtualRoot.height:0}fireEvent(B){this.treeModel.fireEvent(B)}init(){const B=this.recalcPositions.bind(this);B(),this._dispose=[...this._dispose,ts(()=>this.treeModel.roots,B),ts(()=>this.treeModel.expandedNodeIds,B),ts(()=>this.treeModel.hiddenNodeIds,B)],this.treeModel.subscribe(mc.loadNodeChildren,B)}isEnabled(){return this.treeModel.options.useVirtualScroll}_setYBlocks(B){this.yBlocks=B}recalcPositions(){this.treeModel.virtualRoot.height=this._getPositionAfter(this.treeModel.getVisibleRoots(),0)}_getPositionAfter(B,be){let at=be;return B.forEach($t=>{$t.position=at,at=this._getPositionAfterNode($t,at)}),at}_getPositionAfterNode(B,be){let at=B.getSelfHeight()+be;return B.children&&B.isExpanded&&(at=this._getPositionAfter(B.visibleChildren,at)),B.height=at-be,at}clear(){this._dispose.forEach(B=>B())}setViewport(B){Object.assign(this,{viewport:B,x:B.scrollLeft,yBlocks:Math.round(B.scrollTop/150),viewportHeight:B.getBoundingClientRect?B.getBoundingClientRect().height:0})}scrollIntoView(B,be,at=!0){if(B.options.scrollContainer){const $t=B.options.scrollContainer,jn=$t.getBoundingClientRect().height,fr=$t.getBoundingClientRect().top,ui=this.viewport.getBoundingClientRect().top+B.position-fr;(be||ui<$t.scrollTop||ui+B.getSelfHeight()>$t.scrollTop+jn)&&($t.scrollTop=at?ui-jn/2:ui)}else(be||B.positionthis.y+this.viewportHeight)&&this.viewport&&(this.viewport.scrollTop=at?B.position-this.viewportHeight/2:B.position,this._setYBlocks(Math.floor(this.viewport.scrollTop/150)))}getViewportNodes(B){if(!B)return[];const be=B.filter(Ro=>!Ro.isHidden);if(!this.isEnabled())return be;if(!this.viewportHeight||!be.length)return[];const at=cv(be,Ro=>Ro.position+500>this.y||Ro.position+Ro.height>this.y),$t=cv(be,Ro=>Ro.position-500>this.y+this.viewportHeight,at),jn=[];if($t-at>(1e3+this.viewportHeight)/be[0].treeModel.options.options.nodeHeight)return[];for(let Ro=at;Ro<=$t;Ro++)jn.push(be[Ro]);return jn}fixScroll(){const B=Math.max(0,this.totalHeight-this.viewportHeight);this.y<0&&this._setYBlocks(0),this.y>B&&this._setYBlocks(B/150)}}return I.\u0275fac=function(B){return new(B||I)(r.LFG(Kl))},I.\u0275prov=r.Yz7({token:I,factory:I.\u0275fac}),I})();function cv(I,z,B=0){let be=B,at=I.length-1;for(;be!==at;){let $t=Math.floor((be+at)/2);z(I[$t])?at=$t:be=be===$t?at:$t}return be}Wh([gr,Sd("design:type",Object)],Wf.prototype,"yBlocks",void 0),Wh([gr,Sd("design:type",Object)],Wf.prototype,"x",void 0),Wh([gr,Sd("design:type",Object)],Wf.prototype,"viewportHeight",void 0),Wh([Dn,Sd("design:type",Object),Sd("design:paramtypes",[])],Wf.prototype,"y",null),Wh([Dn,Sd("design:type",Object),Sd("design:paramtypes",[])],Wf.prototype,"totalHeight",null),Wh([ne,Sd("design:type",Function),Sd("design:paramtypes",[Object]),Sd("design:returntype",void 0)],Wf.prototype,"_setYBlocks",null),Wh([ne,Sd("design:type",Function),Sd("design:paramtypes",[]),Sd("design:returntype",void 0)],Wf.prototype,"recalcPositions",null),Wh([ne,Sd("design:type",Function),Sd("design:paramtypes",[Object]),Sd("design:returntype",void 0)],Wf.prototype,"setViewport",null),Wh([ne,Sd("design:type",Function),Sd("design:paramtypes",[Object,Object,Object]),Sd("design:returntype",void 0)],Wf.prototype,"scrollIntoView",null);let dv=(()=>{class I{}return I.\u0275fac=function(B){return new(B||I)},I.\u0275cmp=r.Xpm({type:I,selectors:[["tree-loading-component"]],inputs:{template:"template",node:"node"},decls:2,vars:5,consts:[[4,"ngIf"],[3,"ngTemplateOutlet","ngTemplateOutletContext"]],template:function(B,be){1&B&&(r.YNc(0,b_,2,0,"span",0),r.GkF(1,1)),2&B&&(r.Q6J("ngIf",!be.template),r.xp6(1),r.Q6J("ngTemplateOutlet",be.template)("ngTemplateOutletContext",r.VKq(3,jh,be.node)))},directives:[u.O5,u.tP],encapsulation:2}),I})(),Q_=(()=>{class I{constructor(B,be,at){this.elementRef=B,this.ngZone=be,this.virtualScroll=at,this.setViewport=gg(()=>{this.virtualScroll.setViewport(this.elementRef.nativeElement)},17),this.scrollEventHandler=this.setViewport.bind(this)}ngOnInit(){this.virtualScroll.init()}ngAfterViewInit(){setTimeout(()=>{this.setViewport(),this.virtualScroll.fireEvent({eventName:mc.initialized})});let B=this.elementRef.nativeElement;this.ngZone.runOutsideAngular(()=>{B.addEventListener("scroll",this.scrollEventHandler)})}ngOnDestroy(){this.virtualScroll.clear(),this.elementRef.nativeElement.removeEventListener("scroll",this.scrollEventHandler)}getTotalHeight(){return this.virtualScroll.isEnabled()&&this.virtualScroll.totalHeight+"px"||"auto"}}return I.\u0275fac=function(B){return new(B||I)(r.Y36(r.SBq),r.Y36(r.R0b),r.Y36(Wf))},I.\u0275cmp=r.Xpm({type:I,selectors:[["tree-viewport"]],features:[r._Bn([Wf])],ngContentSelectors:Tg,decls:1,vars:2,consts:[[4,"treeMobxAutorun"]],template:function(B,be){1&B&&(r.F$t(),r.YNc(0,E_,3,2,"ng-container",0)),2&B&&r.Q6J("treeMobxAutorun",r.DdM(1,jp))},directives:[Qr],encapsulation:2}),I})(),Om=(()=>{class I{constructor(B,be){this.treeModel=B,this.treeDraggedElement=be,B.eventNames.forEach(at=>this[at]=new r.vpe),B.subscribeToState(at=>this.stateChange.emit(at))}set nodes(B){}set options(B){}set focused(B){this.treeModel.setFocus(B)}set state(B){this.treeModel.setState(B)}onKeydown(B){if(!this.treeModel.isFocused||Yg(["input","textarea"],document.activeElement.tagName.toLowerCase()))return;const be=this.treeModel.getFocusedNode();this.treeModel.performKeyAction(be,B)}onMousedown(B){(function be(at,$t){return!at||at.localName!==$t&&be(at.parentElement,$t)})(B.target,"tree-root")&&this.treeModel.setFocus(!1)}ngOnChanges(B){(B.options||B.nodes)&&this.treeModel.setData({options:B.options&&B.options.currentValue,nodes:B.nodes&&B.nodes.currentValue,events:y_(this,this.treeModel.eventNames)})}sizeChanged(){this.viewportComponent.setViewport()}}return I.\u0275fac=function(B){return new(B||I)(r.Y36(Kl),r.Y36(lv))},I.\u0275cmp=r.Xpm({type:I,selectors:[["Tree"],["tree-root"]],contentQueries:function(B,be,at){if(1&B&&(r.Suo(at,T_,5),r.Suo(at,Zg,5),r.Suo(at,Gh,5),r.Suo(at,Sg,5)),2&B){let $t;r.iGM($t=r.CRH())&&(be.loadingTemplate=$t.first),r.iGM($t=r.CRH())&&(be.treeNodeTemplate=$t.first),r.iGM($t=r.CRH())&&(be.treeNodeWrapperTemplate=$t.first),r.iGM($t=r.CRH())&&(be.treeNodeFullTemplate=$t.first)}},viewQuery:function(B,be){if(1&B&&r.Gf(rv,5),2&B){let at;r.iGM(at=r.CRH())&&(be.viewportComponent=at.first)}},hostBindings:function(B,be){1&B&&r.NdJ("keydown",function($t){return be.onKeydown($t)},!1,r.pYS)("mousedown",function($t){return be.onMousedown($t)},!1,r.pYS)},inputs:{nodes:"nodes",options:"options",focused:"focused",state:"state"},outputs:{toggleExpanded:"toggleExpanded",activate:"activate",deactivate:"deactivate",nodeActivate:"nodeActivate",nodeDeactivate:"nodeDeactivate",select:"select",deselect:"deselect",focus:"focus",blur:"blur",updateData:"updateData",initialized:"initialized",moveNode:"moveNode",copyNode:"copyNode",loadNodeChildren:"loadNodeChildren",changeFilter:"changeFilter",event:"event",stateChange:"stateChange"},features:[r._Bn([Kl]),r.TTD],decls:5,vars:6,consts:[["viewport",""],[1,"angular-tree-component"],[3,"nodes","treeModel","templates",4,"ngIf"],["class","empty-tree-drop-slot",3,"dropIndex","node",4,"ngIf"],[3,"nodes","treeModel","templates"],[1,"empty-tree-drop-slot",3,"dropIndex","node"]],template:function(B,be){1&B&&(r.TgZ(0,"tree-viewport",null,0),r.TgZ(2,"div",1),r.YNc(3,Tm,1,8,"tree-node-collection",2),r.YNc(4,S_,1,2,"tree-node-drop-slot",3),r.qZA(),r.qZA()),2&B&&(r.xp6(2),r.ekj("node-dragging",be.treeDraggedElement.isDragging())("angular-tree-component-rtl",be.treeModel.options.rtl),r.xp6(1),r.Q6J("ngIf",be.treeModel.roots),r.xp6(1),r.Q6J("ngIf",be.treeModel.isEmptyTree()))},directives:function(){return[Q_,u.O5,Jh,Mp]},encapsulation:2}),I})(),jg=(()=>{class I{}return I.\u0275fac=function(B){return new(B||I)},I.\u0275cmp=r.Xpm({type:I,selectors:[["TreeNode"],["tree-node"]],inputs:{node:"node",index:"index",templates:"templates"},decls:1,vars:2,consts:[[4,"treeMobxAutorun"],[3,"class","tree-node","tree-node-expanded","tree-node-collapsed","tree-node-leaf","tree-node-active","tree-node-focused",4,"ngIf"],[3,"ngTemplateOutlet","ngTemplateOutletContext"],[3,"dropIndex","node",4,"ngIf"],[3,"node","index","templates"],[3,"node","templates"],[3,"dropIndex","node"]],template:function(B,be){1&B&&r.YNc(0,Se,3,8,"ng-container",0),2&B&&r.Q6J("treeMobxAutorun",r.DdM(1,jp))},directives:function(){return[Qr,u.O5,u.tP,Vp,pv,Mp]},encapsulation:2}),I})(),fv=(()=>{class I{}return I.\u0275fac=function(B){return new(B||I)},I.\u0275cmp=r.Xpm({type:I,selectors:[["tree-node-content"]],inputs:{node:"node",index:"index",template:"template"},decls:2,vars:7,consts:[[4,"ngIf"],[3,"ngTemplateOutlet","ngTemplateOutletContext"]],template:function(B,be){1&B&&(r.YNc(0,We,2,1,"span",0),r.GkF(1,1)),2&B&&(r.Q6J("ngIf",!be.template),r.xp6(1),r.Q6J("ngTemplateOutlet",be.template)("ngTemplateOutletContext",r.kEZ(3,Nt,be.node,be.node,be.index)))},directives:[u.O5,u.tP],encapsulation:2}),I})(),Mp=(()=>{class I{onDrop(B){this.node.mouseAction("drop",B.event,{from:B.element,to:{parent:this.node,index:this.dropIndex}})}allowDrop(B,be){return this.node.options.allowDrop(B,{parent:this.node,index:this.dropIndex},be)}}return I.\u0275fac=function(B){return new(B||I)},I.\u0275cmp=r.Xpm({type:I,selectors:[["TreeNodeDropSlot"],["tree-node-drop-slot"]],inputs:{node:"node",dropIndex:"dropIndex"},decls:1,vars:2,consts:[[1,"node-drop-slot",3,"treeAllowDrop","allowDragoverStyling","treeDrop"]],template:function(B,be){1&B&&(r.TgZ(0,"div",0),r.NdJ("treeDrop",function($t){return be.onDrop($t)}),r.qZA()),2&B&&r.Q6J("treeAllowDrop",be.allowDrop.bind(be))("allowDragoverStyling",!0)},directives:function(){return[Dm]},encapsulation:2}),I})(),wm=(()=>{class I{}return I.\u0275fac=function(B){return new(B||I)},I.\u0275cmp=r.Xpm({type:I,selectors:[["tree-node-expander"]],inputs:{node:"node"},decls:1,vars:2,consts:[[4,"treeMobxAutorun"],["class","toggle-children-wrapper",3,"toggle-children-wrapper-expanded","toggle-children-wrapper-collapsed","click",4,"ngIf"],["class","toggle-children-placeholder",4,"ngIf"],[1,"toggle-children-wrapper",3,"click"],[1,"toggle-children"],[1,"toggle-children-placeholder"]],template:function(B,be){1&B&&r.YNc(0,yr,3,2,"ng-container",0),2&B&&r.Q6J("treeMobxAutorun",r.DdM(1,jp))},directives:[Qr,u.O5],encapsulation:2}),I})(),pv=(()=>{class I{}return I.\u0275fac=function(B){return new(B||I)},I.\u0275cmp=r.Xpm({type:I,selectors:[["tree-node-children"]],inputs:{node:"node",templates:"templates"},decls:1,vars:2,consts:[[4,"treeMobxAutorun"],[3,"tree-children","tree-children-no-padding",4,"treeAnimateOpen","treeAnimateOpenSpeed","treeAnimateOpenAcceleration","treeAnimateOpenEnabled"],[3,"nodes","templates","treeModel",4,"ngIf"],["class","tree-node-loading",3,"padding-left","template","node",4,"ngIf"],[3,"nodes","templates","treeModel"],[1,"tree-node-loading",3,"template","node"]],template:function(B,be){1&B&&r.YNc(0,go,2,4,"ng-container",0),2&B&&r.Q6J("treeMobxAutorun",r.DdM(1,jp))},directives:function(){return[Qr,_v,u.O5,Jh,dv]},encapsulation:2}),I})();const Gg=Object.assign(function(...I){return ne(...I)},ne),hv=Object.assign(function(...I){return Dn(...I)},Dn),Cg=Object.assign(function(...I){return gr(...I)},gr);var Ap=function(I,z,B,be){var jn,at=arguments.length,$t=at<3?z:null===be?be=Object.getOwnPropertyDescriptor(z,B):be;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)$t=Reflect.decorate(I,z,B,be);else for(var fr=I.length-1;fr>=0;fr--)(jn=I[fr])&&($t=(at<3?jn($t):at>3?jn(z,B,$t):jn(z,B))||$t);return at>3&&$t&&Object.defineProperty(z,B,$t),$t},ip=function(I,z){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(I,z)};let Jh=(()=>{class I{constructor(){this._dispose=[]}get nodes(){return this._nodes}set nodes(B){this.setNodes(B)}get marginTop(){const B=this.viewportNodes&&this.viewportNodes.length&&this.viewportNodes[0];return(B&&B.parent?B.position-B.parent.position-B.parent.getSelfHeight():0)+"px"}setNodes(B){this._nodes=B}ngOnInit(){this.virtualScroll=this.treeModel.virtualScroll,this._dispose=[ts(()=>this.virtualScroll.getViewportNodes(this.nodes).map(B=>B.index),B=>{this.viewportNodes=B.map(be=>this.nodes[be])},{compareStructural:!0,fireImmediately:!0}),ts(()=>this.nodes,B=>{this.viewportNodes=this.virtualScroll.getViewportNodes(B)})]}ngOnDestroy(){this._dispose.forEach(B=>B())}trackNode(B,be){return be.id}}return I.\u0275fac=function(B){return new(B||I)},I.\u0275cmp=r.Xpm({type:I,selectors:[["tree-node-collection"]],inputs:{nodes:"nodes",treeModel:"treeModel",templates:"templates"},decls:1,vars:2,consts:[[4,"treeMobxAutorun"],[3,"node","index","templates",4,"ngFor","ngForOf","ngForTrackBy"],[3,"node","index","templates"]],template:function(B,be){1&B&&r.YNc(0,Fa,3,4,"ng-container",0),2&B&&r.Q6J("treeMobxAutorun",r.DdM(1,jp))},directives:[Qr,u.sg,jg],encapsulation:2}),I})();Ap([Cg,ip("design:type",Object)],Jh.prototype,"_nodes",void 0),Ap([Cg,ip("design:type",Array)],Jh.prototype,"viewportNodes",void 0),Ap([hv,ip("design:type",String),ip("design:paramtypes",[])],Jh.prototype,"marginTop",null),Ap([Gg,ip("design:type",Function),ip("design:paramtypes",[Object]),ip("design:returntype",void 0)],Jh.prototype,"setNodes",null);let Vp=(()=>{class I{constructor(){}}return I.\u0275fac=function(B){return new(B||I)},I.\u0275cmp=r.Xpm({type:I,selectors:[["tree-node-wrapper"]],inputs:{node:"node",index:"index",templates:"templates"},decls:2,vars:8,consts:[["class","node-wrapper",3,"padding-left",4,"ngIf"],[3,"ngTemplateOutlet","ngTemplateOutletContext"],[1,"node-wrapper"],[3,"node",4,"ngIf"],[3,"node"],[1,"node-content-wrapper",3,"treeAllowDrop","allowDragoverStyling","treeDrag","treeDragEnabled","click","dblclick","mouseover","mouseout","contextmenu","treeDrop","treeDropDragOver","treeDropDragLeave","treeDropDragEnter"],[3,"node","index","template"]],template:function(B,be){1&B&&(r.YNc(0,ni,5,15,"div",0),r.GkF(1,1)),2&B&&(r.Q6J("ngIf",!be.templates.treeNodeWrapperTemplate),r.xp6(1),r.Q6J("ngTemplateOutlet",be.templates.treeNodeWrapperTemplate)("ngTemplateOutletContext",r.l5B(3,G,be.node,be.node,be.index,be.templates)))},directives:function(){return[u.O5,u.tP,wm,Rm,Dm,fv,X_]},encapsulation:2}),I})(),X_=(()=>{class I{}return I.\u0275fac=function(B){return new(B||I)},I.\u0275cmp=r.Xpm({type:I,selectors:[["tree-node-checkbox"]],inputs:{node:"node"},decls:1,vars:2,consts:[[4,"treeMobxAutorun"],["type","checkbox",1,"tree-node-checkbox",3,"checked","indeterminate","click"]],template:function(B,be){1&B&&r.YNc(0,Tr,2,2,"ng-container",0),2&B&&r.Q6J("treeMobxAutorun",r.DdM(1,jp))},directives:[Qr],encapsulation:2}),I})();const C_="is-dragging-over",xm="is-dragging-over-disabled";let Dm=(()=>{class I{constructor(B,be,at,$t){this.el=B,this.renderer=be,this.treeDraggedElement=at,this.ngZone=$t,this.allowDragoverStyling=!0,this.onDropCallback=new r.vpe,this.onDragOverCallback=new r.vpe,this.onDragLeaveCallback=new r.vpe,this.onDragEnterCallback=new r.vpe,this._allowDrop=(jn,fr)=>!0,this.dragOverEventHandler=this.onDragOver.bind(this),this.dragEnterEventHandler=this.onDragEnter.bind(this),this.dragLeaveEventHandler=this.onDragLeave.bind(this)}set treeAllowDrop(B){this._allowDrop=B instanceof Function?B:(be,at)=>B}allowDrop(B){return this._allowDrop(this.treeDraggedElement.get(),B)}ngAfterViewInit(){let B=this.el.nativeElement;this.ngZone.runOutsideAngular(()=>{B.addEventListener("dragover",this.dragOverEventHandler),B.addEventListener("dragenter",this.dragEnterEventHandler),B.addEventListener("dragleave",this.dragLeaveEventHandler)})}ngOnDestroy(){let B=this.el.nativeElement;B.removeEventListener("dragover",this.dragOverEventHandler),B.removeEventListener("dragenter",this.dragEnterEventHandler),B.removeEventListener("dragleave",this.dragLeaveEventHandler)}onDragOver(B){if(!this.allowDrop(B))return this.allowDragoverStyling?this.addDisabledClass():void 0;this.onDragOverCallback.emit({event:B,element:this.treeDraggedElement.get()}),B.preventDefault(),this.allowDragoverStyling&&this.addClass()}onDragEnter(B){!this.allowDrop(B)||(B.preventDefault(),this.onDragEnterCallback.emit({event:B,element:this.treeDraggedElement.get()}))}onDragLeave(B){if(!this.allowDrop(B))return this.allowDragoverStyling?this.removeDisabledClass():void 0;this.onDragLeaveCallback.emit({event:B,element:this.treeDraggedElement.get()}),this.allowDragoverStyling&&this.removeClass()}onDrop(B){!this.allowDrop(B)||(B.preventDefault(),this.onDropCallback.emit({event:B,element:this.treeDraggedElement.get()}),this.allowDragoverStyling&&this.removeClass(),this.treeDraggedElement.set(null))}addClass(){this.renderer.addClass(this.el.nativeElement,C_)}removeClass(){this.renderer.removeClass(this.el.nativeElement,C_)}addDisabledClass(){this.renderer.addClass(this.el.nativeElement,xm)}removeDisabledClass(){this.renderer.removeClass(this.el.nativeElement,xm)}}return I.\u0275fac=function(B){return new(B||I)(r.Y36(r.SBq),r.Y36(r.Qsj),r.Y36(lv),r.Y36(r.R0b))},I.\u0275dir=r.lG2({type:I,selectors:[["","treeDrop",""]],hostBindings:function(B,be){1&B&&r.NdJ("drop",function($t){return be.onDrop($t)})},inputs:{allowDragoverStyling:"allowDragoverStyling",treeAllowDrop:"treeAllowDrop"},outputs:{onDropCallback:"treeDrop",onDragOverCallback:"treeDropDragOver",onDragLeaveCallback:"treeDropDragLeave",onDragEnterCallback:"treeDropDragEnter"}}),I})(),Rm=(()=>{class I{constructor(B,be,at,$t){this.el=B,this.renderer=be,this.treeDraggedElement=at,this.ngZone=$t,this.dragEventHandler=this.onDrag.bind(this)}ngAfterViewInit(){let B=this.el.nativeElement;this.ngZone.runOutsideAngular(()=>{B.addEventListener("drag",this.dragEventHandler)})}ngDoCheck(){this.renderer.setAttribute(this.el.nativeElement,"draggable",this.treeDragEnabled?"true":"false")}ngOnDestroy(){this.el.nativeElement.removeEventListener("drag",this.dragEventHandler)}onDragStart(B){B.dataTransfer.setData("text",B.target.id),this.treeDraggedElement.set(this.draggedElement),this.draggedElement.mouseAction&&this.draggedElement.mouseAction("dragStart",B)}onDrag(B){this.draggedElement.mouseAction&&this.draggedElement.mouseAction("drag",B)}onDragEnd(){this.draggedElement.mouseAction&&this.draggedElement.mouseAction("dragEnd"),this.treeDraggedElement.set(null)}}return I.\u0275fac=function(B){return new(B||I)(r.Y36(r.SBq),r.Y36(r.Qsj),r.Y36(lv),r.Y36(r.R0b))},I.\u0275dir=r.lG2({type:I,selectors:[["","treeDrag",""]],hostBindings:function(B,be){1&B&&r.NdJ("dragstart",function($t){return be.onDragStart($t)})("dragend",function(){return be.onDragEnd()})},inputs:{draggedElement:["treeDrag","draggedElement"],treeDragEnabled:"treeDragEnabled"}}),I})(),_v=(()=>{class I{constructor(B,be,at){this.renderer=B,this.templateRef=be,this.viewContainerRef=at}set isOpen(B){B?(this._show(),this.isEnabled&&!1===this._isOpen&&this._animateOpen()):this.isEnabled?this._animateClose():this._hide(),this._isOpen=!!B}_show(){this.innerElement||(this.innerElement=this.viewContainerRef.createEmbeddedView(this.templateRef).rootNodes[0])}_hide(){this.viewContainerRef.clear(),this.innerElement=null}_animateOpen(){let B=this.animateSpeed,be=this.animateAcceleration,at=0;this.renderer.setStyle(this.innerElement,"max-height","0"),setTimeout(()=>{const $t=setInterval(()=>{if(!this._isOpen||!this.innerElement)return clearInterval($t);at+=B;const jn=Math.round(at);this.renderer.setStyle(this.innerElement,"max-height",`${jn}px`);const fr=this.innerElement.getBoundingClientRect?this.innerElement.getBoundingClientRect().height:0;B*=be,be*=1.005,fr{if(this._isOpen||!this.innerElement)return clearInterval($t);at-=B,this.renderer.setStyle(this.innerElement,"max-height",`${at}px`),B*=be,be*=1.005,at<=0&&(this.viewContainerRef.clear(),this.innerElement=null,clearInterval($t))},17)}}return I.\u0275fac=function(B){return new(B||I)(r.Y36(r.Qsj),r.Y36(r.Rgc),r.Y36(r.s_b))},I.\u0275dir=r.lG2({type:I,selectors:[["","treeAnimateOpen",""]],inputs:{isOpen:["treeAnimateOpen","isOpen"],animateSpeed:["treeAnimateOpenSpeed","animateSpeed"],animateAcceleration:["treeAnimateOpenAcceleration","animateAcceleration"],isEnabled:["treeAnimateOpenEnabled","isEnabled"]}}),I})(),zg=(()=>{class I{}return I.\u0275fac=function(B){return new(B||I)},I.\u0275mod=r.oAB({type:I}),I.\u0275inj=r.cJS({providers:[],imports:[[u.ez]]}),I})()},38549:(v,T,i)=>{"use strict";i.d(T,{Kz:()=>E,xm:()=>Rl,_A:()=>nc,vL:()=>Ul,_D:()=>fa,lQ:()=>pu,VL:()=>Gl,M:()=>Yu,jt:()=>hc,TH:()=>wf,Vi:()=>Vl,XC:()=>Mc,iD:()=>oc,J4:()=>qt,FF:()=>ye,Pz:()=>xn,uN:()=>nn,nv:()=>Pn,Vx:()=>ir,Oz:()=>Xs,tO:()=>Lo,M2:()=>Kd,o8:()=>na,AX:()=>bi,dT:()=>_l,Ly:()=>zc,ZQ:()=>qf,Pm:()=>kd,UL:()=>Yf,_L:()=>Ph,xI:()=>rh,HK:()=>Bp,dR:()=>ac,ZS:()=>oh});var r=i(74788),u=i(12057),p=i(59796),d=i(56693),e=i(55197),_=i(20509);function y(...Y){if(1===Y.length){if(!(0,p.k)(Y[0]))return Y[0];Y=Y[0]}return(0,d.n)(Y,void 0).lift(new S)}class S{call(fe,w){return w.subscribe(new A(fe))}}class A extends e.L{constructor(fe){super(fe),this.hasFirst=!1,this.observables=[],this.subscriptions=[]}_next(fe){this.observables.push(fe)}_complete(){const fe=this.observables,w=fe.length;if(0===w)this.destination.complete();else{for(let X=0;Xthis.index}hasCompleted(){return this.array.length===this.index}}class H extends Z.Ds{constructor(fe,w,X){super(fe),this.parent=w,this.observable=X,this.stillUnsubscribed=!0,this.buffer=[],this.isComplete=!1}[L.hZ](){return this}next(){const fe=this.buffer;return 0===fe.length&&this.isComplete?{value:null,done:!0}:{value:fe.shift(),done:!1}}hasValue(){return this.buffer.length>0}hasCompleted(){return 0===this.buffer.length&&this.isComplete}notifyComplete(){this.buffer.length>0?(this.isComplete=!0,this.parent.notifyInactive()):this.destination.complete()}notifyNext(fe){this.buffer.push(fe),this.parent.checkIterators()}subscribe(){return(0,Z.ft)(this.observable,new Z.IY(this))}}var se=i(18891),Ee=i(59193),ie=i(25917),he=i(79765),ge=i(22759),De=i(46797),ce=i(26215),ze=(i(9112),i(17757),i(66682)),Be=i(58071);function je(...Y){return fe=>{let w;return"function"==typeof Y[Y.length-1]&&(w=Y.pop()),fe.lift(new He(Y,w))}}class He{constructor(fe,w){this.observables=fe,this.project=w}call(fe,w){return w.subscribe(new Vt(fe,this.observables,this.project))}}class Vt extends e.L{constructor(fe,w,X){super(fe),this.observables=w,this.project=X,this.toRespond=[];const ke=w.length;this.values=new Array(ke);for(let ct=0;ct0){const ct=ke.indexOf(X);-1!==ct&&ke.splice(ct,1)}}notifyComplete(){}_next(fe){if(0===this.toRespond.length){const w=[fe,...this.values];this.project?this._tryProject(w):this.destination.next(w)}}_tryProject(fe){let w;try{w=this.project.apply(this,fe)}catch(X){return void this.destination.error(X)}this.destination.next(w)}}class tn{constructor(fe){this.total=fe}call(fe,w){return w.subscribe(new It(fe,this.total))}}class It extends N.L{constructor(fe,w){super(fe),this.total=w,this.count=0}_next(fe){++this.count>this.total&&this.destination.next(fe)}}var Zt=i(46782),Ut=i(45435),Bt=i(15257),bt=i(88002),Gt=i(39761),xt=i(87519),Xt=i(43190),Zn=i(68307),Ur=i(71289),di=i(19773),Lr=i(18819),Mr=i(24751);function ki(Y,fe){if(1&Y){const w=r.EpF();r.TgZ(0,"button",1),r.NdJ("click",function(){return r.CHM(w),r.oxw().close()}),r.TgZ(1,"span",2),r._uU(2,"\xd7"),r.qZA(),r.qZA()}}const Hi=["*"],Fr=["defaultDayTemplate"],Gn=["content"];function Jr(Y,fe){if(1&Y&&r._UZ(0,"div",7),2&Y){const X=fe.currentMonth,ke=fe.selected,ct=fe.disabled,Jn=fe.focused;r.Q6J("date",fe.date)("currentMonth",X)("selected",ke)("disabled",ct)("focused",Jn)}}function _i(Y,fe){if(1&Y&&(r.TgZ(0,"div",12),r._uU(1),r.qZA()),2&Y){const w=r.oxw().$implicit,X=r.oxw(2);r.xp6(1),r.hij(" ",X.i18n.getMonthLabel(w.firstDate)," ")}}function wi(Y,fe){if(1&Y&&(r.TgZ(0,"div",9),r.YNc(1,_i,2,1,"div",10),r._UZ(2,"ngb-datepicker-month",11),r.qZA()),2&Y){const w=fe.$implicit,X=r.oxw(2);r.xp6(1),r.Q6J("ngIf","none"===X.navigation||X.displayMonths>1&&"select"===X.navigation),r.xp6(1),r.Q6J("month",w.firstDate)}}function br(Y,fe){if(1&Y&&r.YNc(0,wi,3,2,"div",8),2&Y){const w=r.oxw();r.Q6J("ngForOf",w.model.months)}}function Dr(Y,fe){if(1&Y){const w=r.EpF();r.TgZ(0,"ngb-datepicker-navigation",13),r.NdJ("navigate",function(ke){return r.CHM(w),r.oxw().onNavigateEvent(ke)})("select",function(ke){return r.CHM(w),r.oxw().onNavigateDateSelect(ke)}),r.qZA()}if(2&Y){const w=r.oxw();r.Q6J("date",w.model.firstDate)("months",w.model.months)("disabled",w.model.disabled)("showSelect","select"===w.model.navigation)("prevDisabled",w.model.prevDisabled)("nextDisabled",w.model.nextDisabled)("selectBoxes",w.model.selectBoxes)}}function gn(Y,fe){}function yn(Y,fe){}function gr(Y,fe){if(1&Y&&(r.TgZ(0,"div",5),r._uU(1),r.qZA()),2&Y){const w=r.oxw(2);r.xp6(1),r.Oqu(w.i18n.getWeekLabel())}}function Jt(Y,fe){if(1&Y&&(r.TgZ(0,"div",6),r._uU(1),r.qZA()),2&Y){const w=fe.$implicit;r.xp6(1),r.Oqu(w)}}function Vn(Y,fe){if(1&Y&&(r.TgZ(0,"div",2),r.YNc(1,gr,2,1,"div",3),r.YNc(2,Jt,2,1,"div",4),r.qZA()),2&Y){const w=r.oxw();r.xp6(1),r.Q6J("ngIf",w.datepicker.showWeekNumbers),r.xp6(1),r.Q6J("ngForOf",w.viewModel.weekdays)}}function mr(Y,fe){if(1&Y&&(r.TgZ(0,"div",11),r._uU(1),r.qZA()),2&Y){const w=r.oxw(2).$implicit,X=r.oxw();r.xp6(1),r.Oqu(X.i18n.getWeekNumerals(w.number))}}function Dn(Y,fe){}function Pr(Y,fe){if(1&Y&&r.YNc(0,Dn,0,0,"ng-template",14),2&Y){const w=r.oxw().$implicit,X=r.oxw(3);r.Q6J("ngTemplateOutlet",X.datepicker.dayTemplate)("ngTemplateOutletContext",w.context)}}function Yt(Y,fe){if(1&Y){const w=r.EpF();r.TgZ(0,"div",12),r.NdJ("click",function(ke){const Jn=r.CHM(w).$implicit;return r.oxw(3).doSelect(Jn),ke.preventDefault()}),r.YNc(1,Pr,1,2,"ng-template",13),r.qZA()}if(2&Y){const w=fe.$implicit;r.ekj("disabled",w.context.disabled)("hidden",w.hidden)("ngb-dp-today",w.context.today),r.Q6J("tabindex",w.tabindex),r.uIk("aria-label",w.ariaLabel),r.xp6(1),r.Q6J("ngIf",!w.hidden)}}function _n(Y,fe){if(1&Y&&(r.TgZ(0,"div",8),r.YNc(1,mr,2,1,"div",9),r.YNc(2,Yt,2,9,"div",10),r.qZA()),2&Y){const w=r.oxw().$implicit,X=r.oxw();r.xp6(1),r.Q6J("ngIf",X.datepicker.showWeekNumbers),r.xp6(1),r.Q6J("ngForOf",w.days)}}function Ge(Y,fe){1&Y&&r.YNc(0,_n,3,2,"div",7),2&Y&&r.Q6J("ngIf",!fe.$implicit.collapsed)}function kr(Y,fe){if(1&Y){const w=r.EpF();r.TgZ(0,"ngb-datepicker-navigation-select",7),r.NdJ("select",function(ke){return r.CHM(w),r.oxw().select.emit(ke)}),r.qZA()}if(2&Y){const w=r.oxw();r.Q6J("date",w.date)("disabled",w.disabled)("months",w.selectBoxes.months)("years",w.selectBoxes.years)}}function mi(Y,fe){1&Y&&r._UZ(0,"div",0)}function An(Y,fe){1&Y&&r._UZ(0,"div",0)}function Er(Y,fe){if(1&Y&&(r.YNc(0,mi,1,0,"div",9),r.TgZ(1,"div",10),r._uU(2),r.qZA(),r.YNc(3,An,1,0,"div",9)),2&Y){const w=fe.$implicit,X=fe.index,ke=r.oxw(2);r.Q6J("ngIf",X>0),r.xp6(2),r.hij(" ",ke.i18n.getMonthLabel(w.firstDate)," "),r.xp6(1),r.Q6J("ngIf",X!==ke.months.length-1)}}function Wr(Y,fe){if(1&Y&&r.YNc(0,Er,4,3,"ng-template",8),2&Y){const w=r.oxw();r.Q6J("ngForOf",w.months)}}const dr=["ngbDatepickerDayView",""],Fn=["month"],ar=["year"];function Wi(Y,fe){if(1&Y&&(r.TgZ(0,"option",5),r._uU(1),r.qZA()),2&Y){const w=fe.$implicit,X=r.oxw();r.Q6J("value",w),r.uIk("aria-label",X.i18n.getMonthFullName(w,null==X.date?null:X.date.year)),r.xp6(1),r.Oqu(X.i18n.getMonthShortName(w,null==X.date?null:X.date.year))}}function lo(Y,fe){if(1&Y&&(r.TgZ(0,"option",5),r._uU(1),r.qZA()),2&Y){const w=fe.$implicit,X=r.oxw();r.Q6J("value",w),r.xp6(1),r.Oqu(X.i18n.getYearNumerals(w))}}const vo=["dialog"],Co=["ngbNavOutlet",""];function Gi(Y,fe){}const os=function(Y){return{$implicit:Y}};function jo(Y,fe){if(1&Y&&(r.TgZ(0,"div",2),r.YNc(1,Gi,0,0,"ng-template",3),r.qZA()),2&Y){const w=r.oxw().$implicit,X=r.oxw();r.Q6J("item",w)("nav",X.nav)("role",X.paneRole),r.xp6(1),r.Q6J("ngTemplateOutlet",(null==w.contentTpl?null:w.contentTpl.templateRef)||null)("ngTemplateOutletContext",r.VKq(5,os,w.active||X.isPanelTransitioning(w)))}}function To(Y,fe){if(1&Y&&r.YNc(0,jo,2,7,"div",1),2&Y){const w=fe.$implicit,X=r.oxw();r.Q6J("ngIf",w.isPanelInDom()||X.isPanelTransitioning(w))}}function us(Y,fe){if(1&Y&&r._uU(0),2&Y){const w=r.oxw(2);r.Oqu(w.title)}}function ya(Y,fe){}function el(Y,fe){if(1&Y&&(r.TgZ(0,"h3",3),r.YNc(1,us,1,1,"ng-template",null,4,r.W1O),r.YNc(3,ya,0,0,"ng-template",5),r.qZA()),2&Y){const w=r.MAs(2),X=r.oxw();r.xp6(3),r.Q6J("ngTemplateOutlet",X.isTitleTemplate()?X.title:w)("ngTemplateOutletContext",X.context)}}function ca(Y,fe){if(1&Y&&(r.TgZ(0,"span"),r.SDv(1,2),r.ALo(2,"percent"),r.qZA()),2&Y){const w=r.oxw();r.xp6(2),r.pQV(r.lcZ(2,1,w.getValue()/w.max)),r.QtT(1)}}function fo(Y,fe){if(1&Y){const w=r.EpF();r.TgZ(0,"button",11),r.NdJ("click",function(){r.CHM(w);const ke=r.oxw();return ke.changeHour(ke.hourStep)}),r._UZ(1,"span",12),r.TgZ(2,"span",13),r.SDv(3,14),r.qZA(),r.qZA()}if(2&Y){const w=r.oxw();r.ekj("btn-sm",w.isSmallSize)("btn-lg",w.isLargeSize)("disabled",w.disabled),r.Q6J("disabled",w.disabled)}}function Ya(Y,fe){if(1&Y){const w=r.EpF();r.TgZ(0,"button",11),r.NdJ("click",function(){r.CHM(w);const ke=r.oxw();return ke.changeHour(-ke.hourStep)}),r._UZ(1,"span",15),r.TgZ(2,"span",13),r.SDv(3,16),r.qZA(),r.qZA()}if(2&Y){const w=r.oxw();r.ekj("btn-sm",w.isSmallSize)("btn-lg",w.isLargeSize)("disabled",w.disabled),r.Q6J("disabled",w.disabled)}}function Ao(Y,fe){if(1&Y){const w=r.EpF();r.TgZ(0,"button",11),r.NdJ("click",function(){r.CHM(w);const ke=r.oxw();return ke.changeMinute(ke.minuteStep)}),r._UZ(1,"span",12),r.TgZ(2,"span",13),r.SDv(3,17),r.qZA(),r.qZA()}if(2&Y){const w=r.oxw();r.ekj("btn-sm",w.isSmallSize)("btn-lg",w.isLargeSize)("disabled",w.disabled),r.Q6J("disabled",w.disabled)}}function fs(Y,fe){if(1&Y){const w=r.EpF();r.TgZ(0,"button",11),r.NdJ("click",function(){r.CHM(w);const ke=r.oxw();return ke.changeMinute(-ke.minuteStep)}),r._UZ(1,"span",15),r.TgZ(2,"span",13),r.SDv(3,18),r.qZA(),r.qZA()}if(2&Y){const w=r.oxw();r.ekj("btn-sm",w.isSmallSize)("btn-lg",w.isLargeSize)("disabled",w.disabled),r.Q6J("disabled",w.disabled)}}function Ca(Y,fe){1&Y&&(r.TgZ(0,"div",5),r._uU(1,":"),r.qZA())}function Ra(Y,fe){if(1&Y){const w=r.EpF();r.TgZ(0,"button",11),r.NdJ("click",function(){r.CHM(w);const ke=r.oxw(2);return ke.changeSecond(ke.secondStep)}),r._UZ(1,"span",12),r.TgZ(2,"span",13),r.SDv(3,21),r.qZA(),r.qZA()}if(2&Y){const w=r.oxw(2);r.ekj("btn-sm",w.isSmallSize)("btn-lg",w.isLargeSize)("disabled",w.disabled),r.Q6J("disabled",w.disabled)}}function pl(Y,fe){if(1&Y){const w=r.EpF();r.TgZ(0,"button",11),r.NdJ("click",function(){r.CHM(w);const ke=r.oxw(2);return ke.changeSecond(-ke.secondStep)}),r._UZ(1,"span",15),r.TgZ(2,"span",13),r.SDv(3,22),r.qZA(),r.qZA()}if(2&Y){const w=r.oxw(2);r.ekj("btn-sm",w.isSmallSize)("btn-lg",w.isLargeSize)("disabled",w.disabled),r.Q6J("disabled",w.disabled)}}function Ws(Y,fe){if(1&Y){const w=r.EpF();r.TgZ(0,"div",19),r.YNc(1,Ra,4,7,"button",3),r.TgZ(2,"input",20),r.NdJ("change",function(ke){return r.CHM(w),r.oxw().updateSecond(ke.target.value)})("blur",function(){return r.CHM(w),r.oxw().handleBlur()})("input",function(ke){return r.CHM(w),r.oxw().formatInput(ke.target)})("keydown.ArrowUp",function(ke){r.CHM(w);const ct=r.oxw();return ct.changeSecond(ct.secondStep),ke.preventDefault()})("keydown.ArrowDown",function(ke){r.CHM(w);const ct=r.oxw();return ct.changeSecond(-ct.secondStep),ke.preventDefault()}),r.qZA(),r.YNc(3,pl,4,7,"button",3),r.qZA()}if(2&Y){const w=r.oxw();r.xp6(1),r.Q6J("ngIf",w.spinners),r.xp6(1),r.ekj("form-control-sm",w.isSmallSize)("form-control-lg",w.isLargeSize),r.Q6J("value",w.formatMinSec(null==w.model?null:w.model.second))("readOnly",w.readonlyInputs)("disabled",w.disabled),r.xp6(1),r.Q6J("ngIf",w.spinners)}}function Po(Y,fe){1&Y&&r._UZ(0,"div",5)}function bo(Y,fe){if(1&Y&&(r.ynx(0),r.SDv(1,27),r.BQk()),2&Y){const w=r.oxw(2);r.xp6(1),r.pQV(w.i18n.getAfternoonPeriod()),r.QtT(1)}}function Ls(Y,fe){if(1&Y&&r.SDv(0,28),2&Y){const w=r.oxw(2);r.pQV(w.i18n.getMorningPeriod()),r.QtT(0)}}function ps(Y,fe){if(1&Y){const w=r.EpF();r.TgZ(0,"div",23),r.TgZ(1,"button",24),r.NdJ("click",function(){return r.CHM(w),r.oxw().toggleMeridian()}),r.YNc(2,bo,2,1,"ng-container",25),r.YNc(3,Ls,1,1,"ng-template",null,26,r.W1O),r.qZA(),r.qZA()}if(2&Y){const w=r.MAs(4),X=r.oxw();r.xp6(1),r.ekj("btn-sm",X.isSmallSize)("btn-lg",X.isLargeSize)("disabled",X.disabled),r.Q6J("disabled",X.disabled),r.xp6(1),r.Q6J("ngIf",X.model&&X.model.hour>=12)("ngIfElse",w)}}function tt(Y,fe){if(1&Y&&(r.TgZ(0,"span"),r._uU(1),r.qZA()),2&Y){const w=r.oxw().$implicit,X=r.oxw();r.Tol(X.highlightClass),r.xp6(1),r.Oqu(w)}}function sn(Y,fe){if(1&Y&&r._uU(0),2&Y){const w=r.oxw().$implicit;r.Oqu(w)}}function ne(Y,fe){if(1&Y&&(r.YNc(0,tt,2,3,"span",1),r.YNc(1,sn,1,1,"ng-template",null,2,r.W1O)),2&Y){const w=fe.odd,X=r.MAs(2);r.Q6J("ngIf",w)("ngIfElse",X)}}function $e(Y,fe){if(1&Y&&r._UZ(0,"ngb-highlight",2),2&Y){const X=fe.term;r.Q6J("result",(0,fe.formatter)(fe.result))("term",X)}}function Lt(Y,fe){}const an=function(Y,fe,w){return{result:Y,term:fe,formatter:w}};function ti(Y,fe){if(1&Y){const w=r.EpF();r.TgZ(0,"button",3),r.NdJ("mouseenter",function(){const ct=r.CHM(w).index;return r.oxw().markActive(ct)})("click",function(){const ct=r.CHM(w).$implicit;return r.oxw().select(ct)}),r.YNc(1,Lt,0,0,"ng-template",4),r.qZA()}if(2&Y){const w=fe.$implicit,X=fe.index,ke=r.oxw(),ct=r.MAs(1);r.ekj("active",X===ke.activeIdx),r.Q6J("id",ke.id+"-"+X),r.xp6(1),r.Q6J("ngTemplateOutlet",ke.resultTemplate||ct)("ngTemplateOutletContext",r.kEZ(5,an,w,ke.term,ke.formatter))}}function pi(Y){return parseInt(`${Y}`,10)}function xi(Y){return null!=Y?`${Y}`:""}function wo(Y){return"string"==typeof Y}function ko(Y){return!isNaN(pi(Y))}function Eo(Y){return"number"==typeof Y&&isFinite(Y)&&Math.floor(Y)===Y}function ba(Y){return null!=Y}function sl(Y){return ko(Y)?`0${Y}`.slice(-2):""}function Nu(Y,fe){return Y&&Y.className&&Y.className.split&&Y.className.split(/\s+/).indexOf(fe)>=0}function Ec(Y){return(Y||document.body).getBoundingClientRect()}function Hl(Y){return Y.normalize("NFD").replace(/[\u0300-\u036f]/g,"")}"undefined"!=typeof Element&&!Element.prototype.closest&&(Element.prototype.matches||(Element.prototype.matches=Element.prototype.msMatchesSelector||Element.prototype.webkitMatchesSelector),Element.prototype.closest=function(Y){let fe=this;if(!document.documentElement.contains(fe))return null;do{if(fe.matches(Y))return fe;fe=fe.parentElement||fe.parentNode}while(null!==fe&&1===fe.nodeType);return null});const Yl={animation:!0,transitionTimerDelayMs:5};let Fs=(()=>{class Y{constructor(){this.animation=Yl.animation}}return Y.\u0275fac=function(w){return new(w||Y)},Y.\u0275prov=r.Yz7({factory:function(){return new Y},token:Y,providedIn:"root"}),Y})();const tl=()=>{},{transitionTimerDelayMs:Zl}=Yl,rt=new Map,Pt=(Y,fe,w,X)=>{let ke=X.context||{};const ct=rt.get(fe);if(ct)switch(X.runningTransition){case"continue":return Ee.E;case"stop":Y.run(()=>ct.transition$.complete()),ke=Object.assign(ct.context,ke),rt.delete(fe)}const Jn=w(fe,X.animation,ke)||tl;if(!X.animation||"none"===window.getComputedStyle(fe).transitionProperty)return Y.run(()=>Jn()),(0,ie.of)(void 0).pipe(function(Y){return fe=>new se.y(w=>fe.subscribe(Jn=>Y.run(()=>w.next(Jn)),Jn=>Y.run(()=>w.error(Jn)),()=>Y.run(()=>w.complete())))}(Y));const Ir=new he.xQ,vi=new he.xQ,zi=Ir.pipe(function(...Y){return fe=>(0,Be.z)(fe,(0,ie.of)(...Y))}(!0));rt.set(fe,{transition$:Ir,complete:()=>{vi.next(),vi.complete()},context:ke});const Do=function(Y){const{transitionDelay:fe,transitionDuration:w}=window.getComputedStyle(Y);return 1e3*(parseFloat(fe)+parseFloat(w))}(fe);return Y.runOutsideAngular(()=>{const xs=(0,ge.R)(fe,"transitionend").pipe((0,Zt.R)(zi),(0,Ut.h)(({target:Rs})=>Rs===fe));y((0,De.H)(Do+Zl).pipe((0,Zt.R)(zi)),xs,vi).pipe((0,Zt.R)(zi)).subscribe(()=>{rt.delete(fe),Y.run(()=>{Jn(),Ir.next(),Ir.complete()})})}),Ir.asObservable()},Me=(Y,fe,w)=>{let{direction:X,maxHeight:ke}=w;const{classList:ct}=Y;function Jn(){ct.add("collapse"),"show"===X?ct.add("show"):ct.remove("show")}if(fe)return ke||(ke=function(Y){if("undefined"==typeof navigator)return"0px";const{classList:fe}=Y,w=fe.contains("show");w||fe.add("show"),Y.style.height="";const X=Y.getBoundingClientRect().height+"px";return w||fe.remove("show"),X}(Y),w.maxHeight=ke,Y.style.height="show"!==X?ke:"0px",ct.remove("collapse"),ct.remove("collapsing"),ct.remove("show"),Ec(Y),ct.add("collapsing")),Y.style.height="show"===X?ke:"0px",()=>{Jn(),ct.remove("collapsing"),Y.style.height=""};Jn()};let au=(()=>{class Y{constructor(w){this._ngbConfig=w,this.dismissible=!0,this.type="warning"}get animation(){return void 0===this._animation?this._ngbConfig.animation:this._animation}set animation(w){this._animation=w}}return Y.\u0275fac=function(w){return new(w||Y)(r.LFG(Fs))},Y.\u0275prov=r.Yz7({factory:function(){return new Y(r.LFG(Fs))},token:Y,providedIn:"root"}),Y})();const Wa=({classList:Y})=>{Y.remove("show")};let Rl=(()=>{class Y{constructor(w,X,ke,ct){this._renderer=X,this._element=ke,this._zone=ct,this.closed=new r.vpe,this.dismissible=w.dismissible,this.type=w.type,this.animation=w.animation}close(){const w=Pt(this._zone,this._element.nativeElement,Wa,{animation:this.animation,runningTransition:"continue"});return w.subscribe(()=>this.closed.emit()),w}ngOnChanges(w){const X=w.type;X&&!X.firstChange&&(this._renderer.removeClass(this._element.nativeElement,`alert-${X.previousValue}`),this._renderer.addClass(this._element.nativeElement,`alert-${X.currentValue}`))}ngOnInit(){this._renderer.addClass(this._element.nativeElement,`alert-${this.type}`)}}return Y.\u0275fac=function(w){return new(w||Y)(r.Y36(au),r.Y36(r.Qsj),r.Y36(r.SBq),r.Y36(r.R0b))},Y.\u0275cmp=r.Xpm({type:Y,selectors:[["ngb-alert"]],hostAttrs:["role","alert",1,"alert","show"],hostVars:4,hostBindings:function(w,X){2&w&&r.ekj("fade",X.animation)("alert-dismissible",X.dismissible)},inputs:{dismissible:"dismissible",type:"type",animation:"animation"},outputs:{closed:"closed"},exportAs:["ngbAlert"],features:[r.TTD],ngContentSelectors:Hi,decls:2,vars:1,consts:function(){let fe;return fe="Close",[["type","button","class","close","aria-label",fe,3,"click",4,"ngIf"],["type","button","aria-label",fe,1,"close",3,"click"],["aria-hidden","true"]]},template:function(w,X){1&w&&(r.F$t(),r.Hsn(0),r.YNc(1,ki,3,0,"button",0)),2&w&&(r.xp6(1),r.Q6J("ngIf",X.dismissible))},directives:[u.O5],styles:["ngb-alert{display:block}"],encapsulation:2,changeDetection:0}),Y})(),nc=(()=>{class Y{}return Y.\u0275fac=function(w){return new(w||Y)},Y.\u0275mod=r.oAB({type:Y}),Y.\u0275inj=r.cJS({imports:[[u.ez]]}),Y})(),wr=(()=>{class Y{constructor(w){this._ngbConfig=w}get animation(){return void 0===this._animation?this._ngbConfig.animation:this._animation}set animation(w){this._animation=w}}return Y.\u0275fac=function(w){return new(w||Y)(r.LFG(Fs))},Y.\u0275prov=r.Yz7({factory:function(){return new Y(r.LFG(Fs))},token:Y,providedIn:"root"}),Y})(),fa=(()=>{class Y{constructor(w,X,ke){this._element=w,this._zone=ke,this.collapsed=!1,this.ngbCollapseChange=new r.vpe,this.shown=new r.vpe,this.hidden=new r.vpe,this.animation=X.animation}ngOnInit(){this._runTransition(this.collapsed,!1)}ngOnChanges({collapsed:w}){w.firstChange||this._runTransitionWithEvents(this.collapsed,this.animation)}toggle(w=this.collapsed){this.collapsed=!w,this.ngbCollapseChange.next(this.collapsed),this._runTransitionWithEvents(this.collapsed,this.animation)}_runTransition(w,X){return Pt(this._zone,this._element.nativeElement,Me,{animation:X,runningTransition:"stop",context:{direction:w?"hide":"show"}})}_runTransitionWithEvents(w,X){this._runTransition(w,X).subscribe(()=>{w?this.hidden.emit():this.shown.emit()})}}return Y.\u0275fac=function(w){return new(w||Y)(r.Y36(r.SBq),r.Y36(wr),r.Y36(r.R0b))},Y.\u0275dir=r.lG2({type:Y,selectors:[["","ngbCollapse",""]],inputs:{collapsed:["ngbCollapse","collapsed"],animation:"animation"},outputs:{ngbCollapseChange:"ngbCollapseChange",shown:"shown",hidden:"hidden"},exportAs:["ngbCollapse"],features:[r.TTD]}),Y})(),pu=(()=>{class Y{}return Y.\u0275fac=function(w){return new(w||Y)},Y.\u0275mod=r.oAB({type:Y}),Y.\u0275inj=r.cJS({}),Y})();class aa{constructor(fe,w,X){this.year=Eo(fe)?fe:null,this.month=Eo(w)?w:null,this.day=Eo(X)?X:null}static from(fe){return fe instanceof aa?fe:fe?new aa(fe.year,fe.month,fe.day):null}equals(fe){return null!=fe&&this.year===fe.year&&this.month===fe.month&&this.day===fe.day}before(fe){return!!fe&&(this.year===fe.year?this.month===fe.month?this.day!==fe.day&&this.dayfe.day:this.month>fe.month:this.year>fe.year)}}function jl(Y){return new aa(Y.getFullYear(),Y.getMonth()+1,Y.getDate())}function bl(Y){const fe=new Date(Y.year,Y.month-1,Y.day,12);return isNaN(fe.getTime())||fe.setFullYear(Y.year),fe}function El(){return new ks}let Ul=(()=>{class Y{}return Y.\u0275fac=function(w){return new(w||Y)},Y.\u0275prov=r.Yz7({factory:El,token:Y,providedIn:"root"}),Y})(),ks=(()=>{class Y extends Ul{getDaysPerWeek(){return 7}getMonths(){return[1,2,3,4,5,6,7,8,9,10,11,12]}getWeeksPerMonth(){return 6}getNext(w,X="d",ke=1){let ct=bl(w),Jn=!0,Ir=ct.getMonth();switch(X){case"y":ct.setFullYear(ct.getFullYear()+ke);break;case"m":Ir+=ke,ct.setMonth(Ir),Ir%=12,Ir<0&&(Ir+=12);break;case"d":ct.setDate(ct.getDate()+ke),Jn=!1;break;default:return w}return Jn&&ct.getMonth()!==Ir&&ct.setDate(0),jl(ct)}getPrev(w,X="d",ke=1){return this.getNext(w,X,-ke)}getWeekday(w){let ke=bl(w).getDay();return 0===ke?7:ke}getWeekNumber(w,X){7===X&&(X=0);const Jn=bl(w[(11-X)%7]);Jn.setDate(Jn.getDate()+4-(Jn.getDay()||7));const Ir=Jn.getTime();return Jn.setMonth(0),Jn.setDate(1),Math.floor(Math.round((Ir-Jn.getTime())/864e5)/7)+1}getToday(){return jl(new Date)}isValid(w){if(!(w&&Eo(w.year)&&Eo(w.month)&&Eo(w.day)&&0!==w.year))return!1;const X=bl(w);return!isNaN(X.getTime())&&X.getFullYear()===w.year&&X.getMonth()+1===w.month&&X.getDate()===w.day}}return Y.\u0275fac=function(){let fe;return function(X){return(fe||(fe=r.n5z(Y)))(X||Y)}}(),Y.\u0275prov=r.Yz7({token:Y,factory:Y.\u0275fac}),Y})();function V(Y,fe){return!function(Y,fe){return!Y&&!fe||!!Y&&!!fe&&Y.equals(fe)}(Y,fe)}function Ae(Y,fe){return!(!Y&&!fe||Y&&fe&&Y.year===fe.year&&Y.month===fe.month)}function ut(Y,fe,w){return Y&&fe&&Y.before(fe)?fe:Y&&w&&Y.after(w)?w:Y||null}function un(Y,fe){const{minDate:w,maxDate:X,disabled:ke,markDisabled:ct}=fe;return!(null==Y||ke||ct&&ct(Y,{year:Y.year,month:Y.month})||w&&Y.before(w)||X&&Y.after(X))}let Cr=(()=>{class Y{getMonthLabel(w){return`${this.getMonthFullName(w.month,w.year)} ${this.getYearNumerals(w.year)}`}getDayNumerals(w){return`${w.day}`}getWeekNumerals(w){return`${w}`}getYearNumerals(w){return`${w}`}getWeekLabel(){return""}}return Y.\u0275fac=function(w){return new(w||Y)},Y.\u0275prov=r.Yz7({factory:function(){return function(Y){return new hr(Y)}(r.LFG(r.soG))},token:Y,providedIn:"root"}),Y})(),hr=(()=>{class Y extends Cr{constructor(w){super(),this._locale=w,this._monthsShort=(0,u.UT)(w,u.x.Standalone,u.Tn.Abbreviated),this._monthsFull=(0,u.UT)(w,u.x.Standalone,u.Tn.Wide)}getWeekdayLabel(w,X){const ke=(0,u.Mn)(this._locale,u.x.Standalone,void 0===X?u.Tn.Short:X);return ke.map((Jn,Ir)=>ke[(Ir+1)%7])[w-1]||""}getMonthShortName(w){return this._monthsShort[w-1]||""}getMonthFullName(w){return this._monthsFull[w-1]||""}getDayAriaLabel(w){const X=new Date(w.year,w.month-1,w.day);return(0,u.p6)(X,"fullDate",this._locale)}}return Y.\u0275fac=function(w){return new(w||Y)(r.LFG(r.soG))},Y.\u0275prov=r.Yz7({token:Y,factory:Y.\u0275fac}),Y})(),ao=(()=>{class Y{constructor(w,X){this._calendar=w,this._i18n=X,this._VALIDATORS={dayTemplateData:ke=>{if(this._state.dayTemplateData!==ke)return{dayTemplateData:ke}},displayMonths:ke=>{if(Eo(ke=pi(ke))&&ke>0&&this._state.displayMonths!==ke)return{displayMonths:ke}},disabled:ke=>{if(this._state.disabled!==ke)return{disabled:ke}},firstDayOfWeek:ke=>{if(Eo(ke=pi(ke))&&ke>=0&&this._state.firstDayOfWeek!==ke)return{firstDayOfWeek:ke}},focusVisible:ke=>{if(this._state.focusVisible!==ke&&!this._state.disabled)return{focusVisible:ke}},markDisabled:ke=>{if(this._state.markDisabled!==ke)return{markDisabled:ke}},maxDate:ke=>{const ct=this.toValidDate(ke,null);if(V(this._state.maxDate,ct))return{maxDate:ct}},minDate:ke=>{const ct=this.toValidDate(ke,null);if(V(this._state.minDate,ct))return{minDate:ct}},navigation:ke=>{if(this._state.navigation!==ke)return{navigation:ke}},outsideDays:ke=>{if(this._state.outsideDays!==ke)return{outsideDays:ke}},weekdays:ke=>{const ct=!0===ke||!1===ke?u.Tn.Short:ke,Jn=!0!==ke&&!1!==ke||ke;if(this._state.weekdayWidth!==ct||this._state.weekdaysVisible!==Jn)return{weekdayWidth:ct,weekdaysVisible:Jn}}},this._model$=new he.xQ,this._dateSelect$=new he.xQ,this._state={dayTemplateData:null,markDisabled:null,maxDate:null,minDate:null,disabled:!1,displayMonths:1,firstDate:null,firstDayOfWeek:1,lastDate:null,focusDate:null,focusVisible:!1,months:[],navigation:"select",outsideDays:"visible",prevDisabled:!1,nextDisabled:!1,selectedDate:null,selectBoxes:{years:[],months:[]},weekdayWidth:u.Tn.Short,weekdaysVisible:!0}}get model$(){return this._model$.pipe((0,Ut.h)(w=>w.months.length>0))}get dateSelect$(){return this._dateSelect$.pipe((0,Ut.h)(w=>null!==w))}set(w){let X=Object.keys(w).map(ke=>this._VALIDATORS[ke](w[ke])).reduce((ke,ct)=>Object.assign(Object.assign({},ke),ct),{});Object.keys(X).length>0&&this._nextState(X)}focus(w){const X=this.toValidDate(w,null);null!=X&&!this._state.disabled&&V(this._state.focusDate,X)&&this._nextState({focusDate:w})}focusSelect(){un(this._state.focusDate,this._state)&&this.select(this._state.focusDate,{emitEvent:!0})}open(w){const X=this.toValidDate(w,this._calendar.getToday());null!=X&&!this._state.disabled&&(!this._state.firstDate||Ae(this._state.firstDate,X))&&this._nextState({firstDate:X})}select(w,X={}){const ke=this.toValidDate(w,null);null!=ke&&!this._state.disabled&&(V(this._state.selectedDate,ke)&&this._nextState({selectedDate:ke}),X.emitEvent&&un(ke,this._state)&&this._dateSelect$.next(ke))}toValidDate(w,X){const ke=aa.from(w);return void 0===X&&(X=this._calendar.getToday()),this._calendar.isValid(ke)?ke:X}getMonth(w){for(let X of this._state.months)if(w.month===X.number&&w.year===X.year)return X;throw new Error(`month ${w.month} of year ${w.year} not found`)}_nextState(w){const X=this._updateState(w);this._patchContexts(X),this._state=X,this._model$.next(this._state)}_patchContexts(w){const{months:X,displayMonths:ke,selectedDate:ct,focusDate:Jn,focusVisible:Ir,disabled:vi,outsideDays:zi}=w;w.months.forEach(Do=>{Do.weeks.forEach(xs=>{xs.days.forEach(Xo=>{Jn&&(Xo.context.focused=Jn.equals(Xo.date)&&Ir),Xo.tabindex=!vi&&Jn&&Xo.date.equals(Jn)&&Jn.month===Do.number?0:-1,!0===vi&&(Xo.context.disabled=!0),void 0!==ct&&(Xo.context.selected=null!==ct&&ct.equals(Xo.date)),Do.number!==Xo.date.month&&(Xo.hidden="hidden"===zi||"collapsed"===zi||ke>1&&Xo.date.after(X[0].firstDate)&&Xo.date.before(X[ke-1].lastDate))})})})}_updateState(w){const X=Object.assign({},this._state,w);let ke=X.firstDate;if(("minDate"in w||"maxDate"in w)&&(function(Y,fe){if(fe&&Y&&fe.before(Y))throw new Error(`'maxDate' ${fe} should be greater than 'minDate' ${Y}`)}(X.minDate,X.maxDate),X.focusDate=ut(X.focusDate,X.minDate,X.maxDate),X.firstDate=ut(X.firstDate,X.minDate,X.maxDate),ke=X.focusDate),"disabled"in w&&(X.focusVisible=!1),"selectedDate"in w&&0===this._state.months.length&&(ke=X.selectedDate),"focusVisible"in w||"focusDate"in w&&(X.focusDate=ut(X.focusDate,X.minDate,X.maxDate),ke=X.focusDate,0!==X.months.length&&X.focusDate&&!X.focusDate.before(X.firstDate)&&!X.focusDate.after(X.lastDate)))return X;if("firstDate"in w&&(X.firstDate=ut(X.firstDate,X.minDate,X.maxDate),ke=X.firstDate),ke){const Jn=function(Y,fe,w,X,ke){const{displayMonths:ct,months:Jn}=w,Ir=Jn.splice(0,Jn.length);return Array.from({length:ct},(zi,Do)=>{const xs=Object.assign(Y.getNext(fe,"m",Do),{day:1});if(Jn[Do]=null,!ke){const Xo=Ir.findIndex(Rs=>Rs.firstDate.equals(xs));-1!==Xo&&(Jn[Do]=Ir.splice(Xo,1)[0])}return xs}).forEach((zi,Do)=>{null===Jn[Do]&&(Jn[Do]=function(Y,fe,w,X,ke={}){const{dayTemplateData:ct,minDate:Jn,maxDate:Ir,firstDayOfWeek:vi,markDisabled:zi,outsideDays:Do,weekdayWidth:xs,weekdaysVisible:Xo}=w,Rs=Y.getToday();ke.firstDate=null,ke.lastDate=null,ke.number=fe.month,ke.year=fe.year,ke.weeks=ke.weeks||[],ke.weekdays=ke.weekdays||[],fe=function(Y,fe,w){const X=Y.getDaysPerWeek(),ke=new aa(fe.year,fe.month,1),ct=Y.getWeekday(ke)%X;return Y.getPrev(ke,"d",(X+ct-w)%X)}(Y,fe,vi),Xo||(ke.weekdays.length=0);for(let ma=0;mand.date),vi),Vs.collapsed="collapsed"===Do&&_c[0].date.month!==ke.number&&_c[_c.length-1].date.month!==ke.number}return ke}(Y,zi,w,X,Ir.shift()||{}))}),Jn}(this._calendar,ke,X,this._i18n,"dayTemplateData"in w||"firstDayOfWeek"in w||"markDisabled"in w||"minDate"in w||"maxDate"in w||"disabled"in w||"outsideDays"in w||"weekdaysVisible"in w);X.months=Jn,X.firstDate=Jn[0].firstDate,X.lastDate=Jn[Jn.length-1].lastDate,"selectedDate"in w&&!un(X.selectedDate,X)&&(X.selectedDate=null),"firstDate"in w&&(!X.focusDate||X.focusDate.before(X.firstDate)||X.focusDate.after(X.lastDate))&&(X.focusDate=ke);const Ir=!this._state.firstDate||this._state.firstDate.year!==X.firstDate.year,vi=!this._state.firstDate||this._state.firstDate.month!==X.firstDate.month;"select"===X.navigation?(("minDate"in w||"maxDate"in w||0===X.selectBoxes.years.length||Ir)&&(X.selectBoxes.years=function(Y,fe,w){if(!Y)return[];const X=fe?Math.max(fe.year,Y.year-500):Y.year-10,ct=(w?Math.min(w.year,Y.year+500):Y.year+10)-X+1,Jn=Array(ct);for(let Ir=0;IrJn===w.month);ke=ke.slice(ct)}if(X&&fe.year===X.year){const ct=ke.findIndex(Jn=>Jn===X.month);ke=ke.slice(0,ct+1)}return ke}(this._calendar,X.firstDate,X.minDate,X.maxDate))):X.selectBoxes={years:[],months:[]},("arrows"===X.navigation||"select"===X.navigation)&&(vi||Ir||"minDate"in w||"maxDate"in w||"disabled"in w)&&(X.prevDisabled=X.disabled||function(Y,fe,w){const X=Object.assign(Y.getPrev(fe,"m"),{day:1});return null!=w&&(X.year===w.year&&X.month{return(Y=ys||(ys={}))[Y.PREV=0]="PREV",Y[Y.NEXT=1]="NEXT",ys;var Y})();let Na=(()=>{class Y{constructor(){this.displayMonths=1,this.firstDayOfWeek=1,this.navigation="select",this.outsideDays="visible",this.showWeekNumbers=!1,this.weekdays=u.Tn.Short}}return Y.\u0275fac=function(w){return new(w||Y)},Y.\u0275prov=r.Yz7({factory:function(){return new Y},token:Y,providedIn:"root"}),Y})();function Tl(){return new ed}let Qs=(()=>{class Y{}return Y.\u0275fac=function(w){return new(w||Y)},Y.\u0275prov=r.Yz7({factory:Tl,token:Y,providedIn:"root"}),Y})(),ed=(()=>{class Y extends Qs{fromModel(w){return w&&Eo(w.year)&&Eo(w.month)&&Eo(w.day)?{year:w.year,month:w.month,day:w.day}:null}toModel(w){return w&&Eo(w.year)&&Eo(w.month)&&Eo(w.day)?{year:w.year,month:w.month,day:w.day}:null}}return Y.\u0275fac=function(){let fe;return function(X){return(fe||(fe=r.n5z(Y)))(X||Y)}}(),Y.\u0275prov=r.Yz7({token:Y,factory:Y.\u0275fac}),Y})(),$c=(()=>{class Y{constructor(w){this.templateRef=w}}return Y.\u0275fac=function(w){return new(w||Y)(r.Y36(r.Rgc))},Y.\u0275dir=r.lG2({type:Y,selectors:[["ng-template","ngbDatepickerContent",""]]}),Y})(),Gl=(()=>{class Y{constructor(w,X,ke,ct,Jn,Ir,vi,zi){this._service=w,this._calendar=X,this.i18n=ke,this._elementRef=Ir,this._ngbDateAdapter=vi,this._ngZone=zi,this._controlValue=null,this._destroyed$=new he.xQ,this._publicState={},this.navigate=new r.vpe,this.dateSelect=new r.vpe,this.onChange=Do=>{},this.onTouched=()=>{},["dayTemplate","dayTemplateData","displayMonths","firstDayOfWeek","footerTemplate","markDisabled","minDate","maxDate","navigation","outsideDays","showWeekNumbers","startDate","weekdays"].forEach(Do=>this[Do]=ct[Do]),w.dateSelect$.pipe((0,Zt.R)(this._destroyed$)).subscribe(Do=>{this.dateSelect.emit(Do)}),w.model$.pipe((0,Zt.R)(this._destroyed$)).subscribe(Do=>{const xs=Do.firstDate,Xo=this.model?this.model.firstDate:null;this._publicState={maxDate:Do.maxDate,minDate:Do.minDate,firstDate:Do.firstDate,lastDate:Do.lastDate,focusedDate:Do.focusDate,months:Do.months.map(nd=>nd.firstDate)};let Rs=!1;if(!xs.equals(Xo)&&(this.navigate.emit({current:Xo?{year:Xo.year,month:Xo.month}:null,next:{year:xs.year,month:xs.month},preventDefault:()=>Rs=!0}),Rs&&null!==Xo))return void this._service.open(Xo);const ma=Do.selectedDate,Vs=Do.focusDate,_c=this.model?this.model.focusDate:null;this.model=Do,V(ma,this._controlValue)&&(this._controlValue=ma,this.onTouched(),this.onChange(this._ngbDateAdapter.toModel(ma))),V(Vs,_c)&&_c&&Do.focusVisible&&this.focus(),Jn.markForCheck()})}get state(){return this._publicState}get calendar(){return this._calendar}focusDate(w){this._service.focus(aa.from(w))}focusSelect(){this._service.focusSelect()}focus(){this._ngZone.onStable.asObservable().pipe((0,Bt.q)(1)).subscribe(()=>{const w=this._elementRef.nativeElement.querySelector('div.ngb-dp-day[tabindex="0"]');w&&w.focus()})}navigateTo(w){this._service.open(aa.from(w?w.day?w:Object.assign(Object.assign({},w),{day:1}):null))}ngAfterViewInit(){this._ngZone.runOutsideAngular(()=>{const w=(0,ge.R)(this._contentEl.nativeElement,"focusin"),X=(0,ge.R)(this._contentEl.nativeElement,"focusout"),{nativeElement:ke}=this._elementRef;(0,ze.T)(w,X).pipe((0,Ut.h)(({target:ct,relatedTarget:Jn})=>!(Nu(ct,"ngb-dp-day")&&Nu(Jn,"ngb-dp-day")&&ke.contains(ct)&&ke.contains(Jn))),(0,Zt.R)(this._destroyed$)).subscribe(({type:ct})=>this._ngZone.run(()=>this._service.set({focusVisible:"focusin"===ct})))})}ngOnDestroy(){this._destroyed$.next()}ngOnInit(){if(void 0===this.model){const w={};["dayTemplateData","displayMonths","markDisabled","firstDayOfWeek","navigation","minDate","maxDate","outsideDays","weekdays"].forEach(X=>w[X]=this[X]),this._service.set(w),this.navigateTo(this.startDate)}this.dayTemplate||(this.dayTemplate=this._defaultDayTemplate)}ngOnChanges(w){const X={};if(["dayTemplateData","displayMonths","markDisabled","firstDayOfWeek","navigation","minDate","maxDate","outsideDays","weekdays"].filter(ke=>ke in w).forEach(ke=>X[ke]=this[ke]),this._service.set(X),"startDate"in w){const{currentValue:ke,previousValue:ct}=w.startDate;Ae(ct,ke)&&this.navigateTo(this.startDate)}}onDateSelect(w){this._service.focus(w),this._service.select(w,{emitEvent:!0})}onNavigateDateSelect(w){this._service.open(w)}onNavigateEvent(w){switch(w){case ys.PREV:this._service.open(this._calendar.getPrev(this.model.firstDate,"m",1));break;case ys.NEXT:this._service.open(this._calendar.getNext(this.model.firstDate,"m",1))}}registerOnChange(w){this.onChange=w}registerOnTouched(w){this.onTouched=w}setDisabledState(w){this._service.set({disabled:w})}writeValue(w){this._controlValue=aa.from(this._ngbDateAdapter.fromModel(w)),this._service.select(this._controlValue)}}return Y.\u0275fac=function(w){return new(w||Y)(r.Y36(ao),r.Y36(Ul),r.Y36(Cr),r.Y36(Na),r.Y36(r.sBO),r.Y36(r.SBq),r.Y36(Qs),r.Y36(r.R0b))},Y.\u0275cmp=r.Xpm({type:Y,selectors:[["ngb-datepicker"]],contentQueries:function(w,X,ke){if(1&w&&r.Suo(ke,$c,7),2&w){let ct;r.iGM(ct=r.CRH())&&(X.contentTemplate=ct.first)}},viewQuery:function(w,X){if(1&w&&(r.Gf(Fr,7),r.Gf(Gn,7)),2&w){let ke;r.iGM(ke=r.CRH())&&(X._defaultDayTemplate=ke.first),r.iGM(ke=r.CRH())&&(X._contentEl=ke.first)}},inputs:{dayTemplate:"dayTemplate",dayTemplateData:"dayTemplateData",displayMonths:"displayMonths",firstDayOfWeek:"firstDayOfWeek",footerTemplate:"footerTemplate",markDisabled:"markDisabled",maxDate:"maxDate",minDate:"minDate",navigation:"navigation",outsideDays:"outsideDays",showWeekNumbers:"showWeekNumbers",startDate:"startDate",weekdays:"weekdays"},outputs:{navigate:"navigate",dateSelect:"dateSelect"},exportAs:["ngbDatepicker"],features:[r._Bn([{provide:Mr.JU,useExisting:(0,r.Gpc)(()=>Y),multi:!0},ao]),r.TTD],decls:10,vars:5,consts:[["defaultDayTemplate",""],["defaultContentTemplate",""],[1,"ngb-dp-header"],[3,"date","months","disabled","showSelect","prevDisabled","nextDisabled","selectBoxes","navigate","select",4,"ngIf"],[1,"ngb-dp-content"],["content",""],[3,"ngTemplateOutlet"],["ngbDatepickerDayView","",3,"date","currentMonth","selected","disabled","focused"],["class","ngb-dp-month",4,"ngFor","ngForOf"],[1,"ngb-dp-month"],["class","ngb-dp-month-name",4,"ngIf"],[3,"month"],[1,"ngb-dp-month-name"],[3,"date","months","disabled","showSelect","prevDisabled","nextDisabled","selectBoxes","navigate","select"]],template:function(w,X){if(1&w&&(r.YNc(0,Jr,1,5,"ng-template",null,0,r.W1O),r.YNc(2,br,1,1,"ng-template",null,1,r.W1O),r.TgZ(4,"div",2),r.YNc(5,Dr,1,7,"ngb-datepicker-navigation",3),r.qZA(),r.TgZ(6,"div",4,5),r.YNc(8,gn,0,0,"ng-template",6),r.qZA(),r.YNc(9,yn,0,0,"ng-template",6)),2&w){const ke=r.MAs(3);r.xp6(5),r.Q6J("ngIf","none"!==X.navigation),r.xp6(1),r.ekj("ngb-dp-months",!X.contentTemplate),r.xp6(2),r.Q6J("ngTemplateOutlet",(null==X.contentTemplate?null:X.contentTemplate.templateRef)||ke),r.xp6(1),r.Q6J("ngTemplateOutlet",X.footerTemplate)}},directives:function(){return[u.O5,u.tP,Hn,u.sg,pa,hl]},styles:["ngb-datepicker{border:1px solid #dfdfdf;border-radius:.25rem;display:inline-block}ngb-datepicker-month{pointer-events:auto}ngb-datepicker.dropdown-menu{padding:0}.ngb-dp-body{z-index:1050}.ngb-dp-header{border-bottom:0;border-radius:.25rem .25rem 0 0;padding-top:.25rem;background-color:#f8f9fa;background-color:var(--light)}.ngb-dp-months{display:flex}.ngb-dp-month{pointer-events:none}.ngb-dp-month-name{font-size:larger;height:2rem;line-height:2rem;text-align:center;background-color:#f8f9fa;background-color:var(--light)}.ngb-dp-month+.ngb-dp-month .ngb-dp-month-name,.ngb-dp-month+.ngb-dp-month .ngb-dp-week{padding-left:1rem}.ngb-dp-month:last-child .ngb-dp-week{padding-right:.25rem}.ngb-dp-month:first-child .ngb-dp-week{padding-left:.25rem}.ngb-dp-month .ngb-dp-week:last-child{padding-bottom:.25rem}"],encapsulation:2,changeDetection:0}),Y})();var $i=(()=>{return(Y=$i||($i={}))[Y.Tab=9]="Tab",Y[Y.Enter=13]="Enter",Y[Y.Escape=27]="Escape",Y[Y.Space=32]="Space",Y[Y.PageUp=33]="PageUp",Y[Y.PageDown=34]="PageDown",Y[Y.End=35]="End",Y[Y.Home=36]="Home",Y[Y.ArrowLeft=37]="ArrowLeft",Y[Y.ArrowUp=38]="ArrowUp",Y[Y.ArrowRight=39]="ArrowRight",Y[Y.ArrowDown=40]="ArrowDown",$i;var Y})();let xo=(()=>{class Y{processKey(w,X){const{state:ke,calendar:ct}=X;switch(w.which){case $i.PageUp:X.focusDate(ct.getPrev(ke.focusedDate,w.shiftKey?"y":"m",1));break;case $i.PageDown:X.focusDate(ct.getNext(ke.focusedDate,w.shiftKey?"y":"m",1));break;case $i.End:X.focusDate(w.shiftKey?ke.maxDate:ke.lastDate);break;case $i.Home:X.focusDate(w.shiftKey?ke.minDate:ke.firstDate);break;case $i.ArrowLeft:X.focusDate(ct.getPrev(ke.focusedDate,"d",1));break;case $i.ArrowUp:X.focusDate(ct.getPrev(ke.focusedDate,"d",ct.getDaysPerWeek()));break;case $i.ArrowRight:X.focusDate(ct.getNext(ke.focusedDate,"d",1));break;case $i.ArrowDown:X.focusDate(ct.getNext(ke.focusedDate,"d",ct.getDaysPerWeek()));break;case $i.Enter:case $i.Space:X.focusSelect();break;default:return}w.preventDefault(),w.stopPropagation()}}return Y.\u0275fac=function(w){return new(w||Y)},Y.\u0275prov=r.Yz7({factory:function(){return new Y},token:Y,providedIn:"root"}),Y})(),pa=(()=>{class Y{constructor(w,X,ke,ct){this.i18n=w,this.datepicker=X,this._keyboardService=ke,this._service=ct}set month(w){this.viewModel=this._service.getMonth(w)}onKeyDown(w){this._keyboardService.processKey(w,this.datepicker)}doSelect(w){!w.context.disabled&&!w.hidden&&this.datepicker.onDateSelect(w.date)}}return Y.\u0275fac=function(w){return new(w||Y)(r.Y36(Cr),r.Y36(Gl),r.Y36(xo),r.Y36(ao))},Y.\u0275cmp=r.Xpm({type:Y,selectors:[["ngb-datepicker-month"]],hostAttrs:["role","grid"],hostBindings:function(w,X){1&w&&r.NdJ("keydown",function(ct){return X.onKeyDown(ct)})},inputs:{month:"month"},decls:2,vars:2,consts:[["class","ngb-dp-week ngb-dp-weekdays","role","row",4,"ngIf"],["ngFor","",3,"ngForOf"],["role","row",1,"ngb-dp-week","ngb-dp-weekdays"],["class","ngb-dp-weekday ngb-dp-showweek small",4,"ngIf"],["class","ngb-dp-weekday small","role","columnheader",4,"ngFor","ngForOf"],[1,"ngb-dp-weekday","ngb-dp-showweek","small"],["role","columnheader",1,"ngb-dp-weekday","small"],["class","ngb-dp-week","role","row",4,"ngIf"],["role","row",1,"ngb-dp-week"],["class","ngb-dp-week-number small text-muted",4,"ngIf"],["class","ngb-dp-day","role","gridcell",3,"disabled","tabindex","hidden","ngb-dp-today","click",4,"ngFor","ngForOf"],[1,"ngb-dp-week-number","small","text-muted"],["role","gridcell",1,"ngb-dp-day",3,"tabindex","click"],[3,"ngIf"],[3,"ngTemplateOutlet","ngTemplateOutletContext"]],template:function(w,X){1&w&&(r.YNc(0,Vn,3,2,"div",0),r.YNc(1,Ge,1,1,"ng-template",1)),2&w&&(r.Q6J("ngIf",X.viewModel.weekdays.length>0),r.xp6(1),r.Q6J("ngForOf",X.viewModel.weeks))},directives:[u.O5,u.sg,u.tP],styles:['ngb-datepicker-month{display:block}.ngb-dp-week-number,.ngb-dp-weekday{line-height:2rem;text-align:center;font-style:italic}.ngb-dp-weekday{color:#5bc0de;color:var(--info)}.ngb-dp-week{border-radius:.25rem;display:flex}.ngb-dp-weekdays{border-bottom:1px solid rgba(0,0,0,.125);border-radius:0;background-color:#f8f9fa;background-color:var(--light)}.ngb-dp-day,.ngb-dp-week-number,.ngb-dp-weekday{width:2rem;height:2rem}.ngb-dp-day{cursor:pointer}.ngb-dp-day.disabled,.ngb-dp-day.hidden{cursor:default;pointer-events:none}.ngb-dp-day[tabindex="0"]{z-index:1}'],encapsulation:2}),Y})(),hl=(()=>{class Y{constructor(w){this.i18n=w,this.navigation=ys,this.months=[],this.navigate=new r.vpe,this.select=new r.vpe}onClickPrev(w){w.currentTarget.focus(),this.navigate.emit(this.navigation.PREV)}onClickNext(w){w.currentTarget.focus(),this.navigate.emit(this.navigation.NEXT)}}return Y.\u0275fac=function(w){return new(w||Y)(r.Y36(Cr))},Y.\u0275cmp=r.Xpm({type:Y,selectors:[["ngb-datepicker-navigation"]],inputs:{months:"months",date:"date",disabled:"disabled",showSelect:"showSelect",prevDisabled:"prevDisabled",nextDisabled:"nextDisabled",selectBoxes:"selectBoxes"},outputs:{navigate:"navigate",select:"select"},decls:8,vars:4,consts:function(){let fe,w,X,ke;return fe="Previous month",w="Previous month",X="Next month",ke="Next month",[[1,"ngb-dp-arrow"],["type","button","aria-label",fe,"title",w,1,"btn","btn-link","ngb-dp-arrow-btn",3,"disabled","click"],[1,"ngb-dp-navigation-chevron"],["class","ngb-dp-navigation-select",3,"date","disabled","months","years","select",4,"ngIf"],[4,"ngIf"],[1,"ngb-dp-arrow","right"],["type","button","aria-label",X,"title",ke,1,"btn","btn-link","ngb-dp-arrow-btn",3,"disabled","click"],[1,"ngb-dp-navigation-select",3,"date","disabled","months","years","select"],["ngFor","",3,"ngForOf"],["class","ngb-dp-arrow",4,"ngIf"],[1,"ngb-dp-month-name"]]},template:function(w,X){1&w&&(r.TgZ(0,"div",0),r.TgZ(1,"button",1),r.NdJ("click",function(ct){return X.onClickPrev(ct)}),r._UZ(2,"span",2),r.qZA(),r.qZA(),r.YNc(3,kr,1,4,"ngb-datepicker-navigation-select",3),r.YNc(4,Wr,1,1,void 0,4),r.TgZ(5,"div",5),r.TgZ(6,"button",6),r.NdJ("click",function(ct){return X.onClickNext(ct)}),r._UZ(7,"span",2),r.qZA(),r.qZA()),2&w&&(r.xp6(1),r.Q6J("disabled",X.prevDisabled),r.xp6(2),r.Q6J("ngIf",X.showSelect),r.xp6(1),r.Q6J("ngIf",!X.showSelect),r.xp6(2),r.Q6J("disabled",X.nextDisabled))},directives:function(){return[u.O5,Xn,u.sg]},styles:["ngb-datepicker-navigation{display:flex;align-items:center}.ngb-dp-navigation-chevron{border-style:solid;border-width:.2em .2em 0 0;display:inline-block;width:.75em;height:.75em;margin-left:.25em;margin-right:.15em;transform:rotate(-135deg)}.ngb-dp-arrow{display:flex;flex:1 1 auto;padding-right:0;padding-left:0;margin:0;width:2rem;height:2rem}.ngb-dp-arrow.right{justify-content:flex-end}.ngb-dp-arrow.right .ngb-dp-navigation-chevron{transform:rotate(45deg);margin-left:.15em;margin-right:.25em}.ngb-dp-arrow-btn{padding:0 .25rem;margin:0 .5rem;border:none;background-color:transparent;z-index:1}.ngb-dp-arrow-btn:focus{outline-width:1px;outline-style:auto}@media (-ms-high-contrast:active),(-ms-high-contrast:none){.ngb-dp-arrow-btn:focus{outline-style:solid}}.ngb-dp-month-name{font-size:larger;height:2rem;line-height:2rem;text-align:center}.ngb-dp-navigation-select{display:flex;flex:1 1 9rem}"],encapsulation:2,changeDetection:0}),Y})();const Bl=(Y,fe)=>!!fe&&fe.some(w=>w.contains(Y)),md=(Y,fe)=>!fe||null!=function(Y,fe){return fe&&void 0!==Y.closest?Y.closest(fe):null}(Y,fe),td="undefined"!=typeof navigator&&!!navigator.userAgent&&(/iPad|iPhone|iPod/.test(navigator.userAgent)||/Macintosh/.test(navigator.userAgent)&&navigator.maxTouchPoints&&navigator.maxTouchPoints>2||/Android/.test(navigator.userAgent));function la(Y,fe,w,X,ke,ct,Jn,Ir){w&&Y.runOutsideAngular((Y=>td?()=>setTimeout(()=>Y(),100):Y)(()=>{const zi=(0,ge.R)(fe,"keydown").pipe((0,Zt.R)(ke),(0,Ut.h)(Xo=>Xo.which===$i.Escape),(0,Zn.b)(Xo=>Xo.preventDefault())),Do=(0,ge.R)(fe,"mousedown").pipe((0,bt.U)(Xo=>{const Rs=Xo.target;return 2!==Xo.button&&!Bl(Rs,Jn)&&("inside"===w?Bl(Rs,ct)&&md(Rs,Ir):"outside"===w?!Bl(Rs,ct):md(Rs,Ir)||!Bl(Rs,ct))}),(0,Zt.R)(ke)),xs=(0,ge.R)(fe,"mouseup").pipe(je(Do),(0,Ut.h)(([Xo,Rs])=>Rs),(0,Ur.g)(0),(0,Zt.R)(ke));y([zi.pipe((0,bt.U)(Xo=>0)),xs.pipe((0,bt.U)(Xo=>1))]).subscribe(Xo=>Y.run(()=>X(Xo)))}))}const Zc=["a[href]","button:not([disabled])",'input:not([disabled]):not([type="hidden"])',"select:not([disabled])","textarea:not([disabled])","[contenteditable]",'[tabindex]:not([tabindex="-1"])'].join(", ");function ic(Y){const fe=Array.from(Y.querySelectorAll(Zc)).filter(w=>-1!==w.tabIndex);return[fe[0],fe[fe.length-1]]}const df=(Y,fe,w,X=!1)=>{Y.runOutsideAngular(()=>{const ke=(0,ge.R)(fe,"focusin").pipe((0,Zt.R)(w),(0,bt.U)(ct=>ct.target));(0,ge.R)(fe,"keydown").pipe((0,Zt.R)(w),(0,Ut.h)(ct=>ct.which===$i.Tab),je(ke)).subscribe(([ct,Jn])=>{const[Ir,vi]=ic(fe);(Jn===Ir||Jn===fe)&&ct.shiftKey&&(vi.focus(),ct.preventDefault()),Jn===vi&&!ct.shiftKey&&(Ir.focus(),ct.preventDefault())}),X&&(0,ge.R)(fe,"click").pipe((0,Zt.R)(w),je(ke),(0,bt.U)(ct=>ct[1])).subscribe(ct=>ct.focus())})},Wd=/\s+/,Jd=new class{getAllStyles(fe){return window.getComputedStyle(fe)}getStyle(fe,w){return this.getAllStyles(fe)[w]}isStaticPositioned(fe){return"static"===(this.getStyle(fe,"position")||"static")}offsetParent(fe){let w=fe.offsetParent||document.documentElement;for(;w&&w!==document.documentElement&&this.isStaticPositioned(w);)w=w.offsetParent;return w||document.documentElement}position(fe,w=!0){let X,ke={width:0,height:0,top:0,bottom:0,left:0,right:0};if("fixed"===this.getStyle(fe,"position"))X=fe.getBoundingClientRect(),X={top:X.top,bottom:X.bottom,left:X.left,right:X.right,height:X.height,width:X.width};else{const ct=this.offsetParent(fe);X=this.offset(fe,!1),ct!==document.documentElement&&(ke=this.offset(ct,!1)),ke.top+=ct.clientTop,ke.left+=ct.clientLeft}return X.top-=ke.top,X.bottom-=ke.top,X.left-=ke.left,X.right-=ke.left,w&&(X.top=Math.round(X.top),X.bottom=Math.round(X.bottom),X.left=Math.round(X.left),X.right=Math.round(X.right)),X}offset(fe,w=!0){const X=fe.getBoundingClientRect(),ke_top=window.pageYOffset-document.documentElement.clientTop,ke_left=window.pageXOffset-document.documentElement.clientLeft;let ct={height:X.height||fe.offsetHeight,width:X.width||fe.offsetWidth,top:X.top+ke_top,bottom:X.bottom+ke_top,left:X.left+ke_left,right:X.right+ke_left};return w&&(ct.height=Math.round(ct.height),ct.width=Math.round(ct.width),ct.top=Math.round(ct.top),ct.bottom=Math.round(ct.bottom),ct.left=Math.round(ct.left),ct.right=Math.round(ct.right)),ct}positionElements(fe,w,X,ke){const[ct="top",Jn="center"]=X.split("-"),Ir=ke?this.offset(fe,!1):this.position(fe,!1),vi=this.getAllStyles(w),zi=parseFloat(vi.marginTop),Do=parseFloat(vi.marginBottom),xs=parseFloat(vi.marginLeft),Xo=parseFloat(vi.marginRight);let Rs=0,ma=0;switch(ct){case"top":Rs=Ir.top-(w.offsetHeight+zi+Do);break;case"bottom":Rs=Ir.top+Ir.height;break;case"left":ma=Ir.left-(w.offsetWidth+xs+Xo);break;case"right":ma=Ir.left+Ir.width}switch(Jn){case"top":Rs=Ir.top;break;case"bottom":Rs=Ir.top+Ir.height-w.offsetHeight;break;case"left":ma=Ir.left;break;case"right":ma=Ir.left+Ir.width-w.offsetWidth;break;case"center":"top"===ct||"bottom"===ct?ma=Ir.left+Ir.width/2-w.offsetWidth/2:Rs=Ir.top+Ir.height/2-w.offsetHeight/2}w.style.transform=`translate(${Math.round(ma)}px, ${Math.round(Rs)}px)`;const Vs=w.getBoundingClientRect(),_c=document.documentElement,nd=window.innerHeight||_c.clientHeight,wu=window.innerWidth||_c.clientWidth;return Vs.left>=0&&Vs.top>=0&&Vs.right<=wu&&Vs.bottom<=nd}};function Ye(Y,fe,w,X,ke){let ct=Array.isArray(w)?w:w.split(Wd);const Jn=["top","bottom","left","right","top-left","top-right","bottom-left","bottom-right","left-top","left-bottom","right-top","right-bottom"],Ir=fe.classList,vi=Rs=>{const[ma,Vs]=Rs.split("-"),_c=[];return ke&&(_c.push(`${ke}-${ma}`),Vs&&_c.push(`${ke}-${ma}-${Vs}`),_c.forEach(nd=>{Ir.add(nd)})),_c};ke&&Jn.forEach(Rs=>{Ir.remove(`${ke}-${Rs}`)});let zi=ct.findIndex(Rs=>"auto"===Rs);zi>=0&&Jn.forEach(function(Rs){null==ct.find(ma=>-1!==ma.search("^"+Rs))&&ct.splice(zi++,1,Rs)});const Do=fe.style;Do.position="absolute",Do.top="0",Do.left="0",Do["will-change"]="transform";let xs=null,Xo=!1;for(xs of ct){let Rs=vi(xs);if(Jd.positionElements(Y,fe,xs,X)){Xo=!0;break}ke&&Rs.forEach(ma=>{Ir.remove(ma)})}return Xo||(xs=ct[0],vi(xs),Jd.positionElements(Y,fe,xs,X)),xs}function Ie(){return new ot}let Ce=(()=>{class Y{}return Y.\u0275fac=function(w){return new(w||Y)},Y.\u0275prov=r.Yz7({factory:Ie,token:Y,providedIn:"root"}),Y})(),ot=(()=>{class Y extends Ce{parse(w){if(null!=w){const X=w.trim().split("-");if(1===X.length&&ko(X[0]))return{year:pi(X[0]),month:null,day:null};if(2===X.length&&ko(X[0])&&ko(X[1]))return{year:pi(X[0]),month:pi(X[1]),day:null};if(3===X.length&&ko(X[0])&&ko(X[1])&&ko(X[2]))return{year:pi(X[0]),month:pi(X[1]),day:pi(X[2])}}return null}format(w){return w?`${w.year}-${ko(w.month)?sl(w.month):""}-${ko(w.day)?sl(w.day):""}`:""}}return Y.\u0275fac=function(){let fe;return function(X){return(fe||(fe=r.n5z(Y)))(X||Y)}}(),Y.\u0275prov=r.Yz7({token:Y,factory:Y.\u0275fac}),Y})(),Et=(()=>{class Y extends Na{constructor(){super(...arguments),this.autoClose=!0,this.placement=["bottom-left","bottom-right","top-left","top-right"],this.restoreFocus=!0}}return Y.\u0275fac=function(){let fe;return function(X){return(fe||(fe=r.n5z(Y)))(X||Y)}}(),Y.\u0275prov=r.Yz7({factory:function(){return new Y},token:Y,providedIn:"root"}),Y})(),qt=(()=>{class Y{constructor(w,X,ke,ct,Jn,Ir,vi,zi,Do,xs,Xo){this._parserFormatter=w,this._elRef=X,this._vcRef=ke,this._renderer=ct,this._cfr=Jn,this._ngZone=Ir,this._calendar=vi,this._dateAdapter=zi,this._document=Do,this._changeDetector=xs,this._cRef=null,this._disabled=!1,this._elWithFocus=null,this._model=null,this.dateSelect=new r.vpe,this.navigate=new r.vpe,this.closed=new r.vpe,this._onChange=Rs=>{},this._onTouched=()=>{},this._validatorChange=()=>{},["autoClose","container","positionTarget","placement"].forEach(Rs=>this[Rs]=Xo[Rs]),this._zoneSubscription=Ir.onStable.subscribe(()=>this._updatePopupPosition())}get disabled(){return this._disabled}set disabled(w){this._disabled=""===w||w&&"false"!==w,this.isOpen()&&this._cRef.instance.setDisabledState(this._disabled)}registerOnChange(w){this._onChange=w}registerOnTouched(w){this._onTouched=w}registerOnValidatorChange(w){this._validatorChange=w}setDisabledState(w){this.disabled=w}validate(w){const{value:X}=w;if(null!=X){const ke=this._fromDateStruct(this._dateAdapter.fromModel(X));if(!ke)return{ngbDate:{invalid:X}};if(this.minDate&&ke.before(aa.from(this.minDate)))return{ngbDate:{minDate:{minDate:this.minDate,actual:X}}};if(this.maxDate&&ke.after(aa.from(this.maxDate)))return{ngbDate:{maxDate:{maxDate:this.maxDate,actual:X}}}}return null}writeValue(w){this._model=this._fromDateStruct(this._dateAdapter.fromModel(w)),this._writeModelValue(this._model)}manualDateChange(w,X=!1){const ke=w!==this._inputValue;ke&&(this._inputValue=w,this._model=this._fromDateStruct(this._parserFormatter.parse(w))),(ke||!X)&&this._onChange(this._model?this._dateAdapter.toModel(this._model):""===w?null:w),X&&this._model&&this._writeModelValue(this._model)}isOpen(){return!!this._cRef}open(){if(!this.isOpen()){const w=this._cfr.resolveComponentFactory(Gl);this._cRef=this._vcRef.createComponent(w),this._applyPopupStyling(this._cRef.location.nativeElement),this._applyDatepickerInputs(this._cRef.instance),this._subscribeForDatepickerOutputs(this._cRef.instance),this._cRef.instance.ngOnInit(),this._cRef.instance.writeValue(this._dateAdapter.toModel(this._model)),this._cRef.instance.registerOnChange(X=>{this.writeValue(X),this._onChange(X),this._onTouched()}),this._cRef.changeDetectorRef.detectChanges(),this._cRef.instance.setDisabledState(this.disabled),"body"===this.container&&this._document.querySelector(this.container).appendChild(this._cRef.location.nativeElement),this._elWithFocus=this._document.activeElement,df(this._ngZone,this._cRef.location.nativeElement,this.closed,!0),this._cRef.instance.focus(),la(this._ngZone,this._document,this.autoClose,()=>this.close(),this.closed,[],[this._elRef.nativeElement,this._cRef.location.nativeElement])}}close(){if(this.isOpen()){this._vcRef.remove(this._vcRef.indexOf(this._cRef.hostView)),this._cRef=null,this.closed.emit(),this._changeDetector.markForCheck();let w=this._elWithFocus;wo(this.restoreFocus)?w=this._document.querySelector(this.restoreFocus):void 0!==this.restoreFocus&&(w=this.restoreFocus),w&&w.focus?w.focus():this._document.body.focus()}}toggle(){this.isOpen()?this.close():this.open()}navigateTo(w){this.isOpen()&&this._cRef.instance.navigateTo(w)}onBlur(){this._onTouched()}onFocus(){this._elWithFocus=this._elRef.nativeElement}ngOnChanges(w){if((w.minDate||w.maxDate)&&(this._validatorChange(),this.isOpen()&&(w.minDate&&(this._cRef.instance.minDate=this.minDate),w.maxDate&&(this._cRef.instance.maxDate=this.maxDate),this._cRef.instance.ngOnChanges(w))),w.datepickerClass){const{currentValue:X,previousValue:ke}=w.datepickerClass;this._applyPopupClass(X,ke)}}ngOnDestroy(){this.close(),this._zoneSubscription.unsubscribe()}_applyDatepickerInputs(w){["dayTemplate","dayTemplateData","displayMonths","firstDayOfWeek","footerTemplate","markDisabled","minDate","maxDate","navigation","outsideDays","showNavigation","showWeekNumbers","weekdays"].forEach(X=>{void 0!==this[X]&&(w[X]=this[X])}),w.startDate=this.startDate||this._model}_applyPopupClass(w,X){var ke;const ct=null===(ke=this._cRef)||void 0===ke?void 0:ke.location.nativeElement;ct&&(w&&this._renderer.addClass(ct,w),X&&this._renderer.removeClass(ct,X))}_applyPopupStyling(w){this._renderer.addClass(w,"dropdown-menu"),this._renderer.addClass(w,"show"),"body"===this.container&&this._renderer.addClass(w,"ngb-dp-body"),this._applyPopupClass(this.datepickerClass)}_subscribeForDatepickerOutputs(w){w.navigate.subscribe(X=>this.navigate.emit(X)),w.dateSelect.subscribe(X=>{this.dateSelect.emit(X),(!0===this.autoClose||"inside"===this.autoClose)&&this.close()})}_writeModelValue(w){const X=this._parserFormatter.format(w);this._inputValue=X,this._renderer.setProperty(this._elRef.nativeElement,"value",X),this.isOpen()&&(this._cRef.instance.writeValue(this._dateAdapter.toModel(w)),this._onTouched())}_fromDateStruct(w){const X=w?new aa(w.year,w.month,w.day):null;return this._calendar.isValid(X)?X:null}_updatePopupPosition(){if(!this._cRef)return;let w;if(w=wo(this.positionTarget)?this._document.querySelector(this.positionTarget):this.positionTarget instanceof HTMLElement?this.positionTarget:this._elRef.nativeElement,this.positionTarget&&!w)throw new Error("ngbDatepicker could not find element declared in [positionTarget] to position against.");Ye(w,this._cRef.location.nativeElement,this.placement,"body"===this.container)}}return Y.\u0275fac=function(w){return new(w||Y)(r.Y36(Ce),r.Y36(r.SBq),r.Y36(r.s_b),r.Y36(r.Qsj),r.Y36(r._Vd),r.Y36(r.R0b),r.Y36(Ul),r.Y36(Qs),r.Y36(u.K0),r.Y36(r.sBO),r.Y36(Et))},Y.\u0275dir=r.lG2({type:Y,selectors:[["input","ngbDatepicker",""]],hostVars:1,hostBindings:function(w,X){1&w&&r.NdJ("input",function(ct){return X.manualDateChange(ct.target.value)})("change",function(ct){return X.manualDateChange(ct.target.value,!0)})("focus",function(){return X.onFocus()})("blur",function(){return X.onBlur()}),2&w&&r.Ikx("disabled",X.disabled)},inputs:{disabled:"disabled",autoClose:"autoClose",datepickerClass:"datepickerClass",dayTemplate:"dayTemplate",dayTemplateData:"dayTemplateData",displayMonths:"displayMonths",firstDayOfWeek:"firstDayOfWeek",footerTemplate:"footerTemplate",markDisabled:"markDisabled",minDate:"minDate",maxDate:"maxDate",navigation:"navigation",outsideDays:"outsideDays",placement:"placement",restoreFocus:"restoreFocus",showWeekNumbers:"showWeekNumbers",startDate:"startDate",container:"container",positionTarget:"positionTarget",weekdays:"weekdays"},outputs:{dateSelect:"dateSelect",navigate:"navigate",closed:"closed"},exportAs:["ngbDatepicker"],features:[r._Bn([{provide:Mr.JU,useExisting:(0,r.Gpc)(()=>Y),multi:!0},{provide:Mr.Cf,useExisting:(0,r.Gpc)(()=>Y),multi:!0},{provide:Na,useExisting:Et}]),r.TTD]}),Y})(),Hn=(()=>{class Y{constructor(w){this.i18n=w}isMuted(){return!this.selected&&(this.date.month!==this.currentMonth||this.disabled)}}return Y.\u0275fac=function(w){return new(w||Y)(r.Y36(Cr))},Y.\u0275cmp=r.Xpm({type:Y,selectors:[["","ngbDatepickerDayView",""]],hostAttrs:[1,"btn-light"],hostVars:10,hostBindings:function(w,X){2&w&&r.ekj("bg-primary",X.selected)("text-white",X.selected)("text-muted",X.isMuted())("outside",X.isMuted())("active",X.focused)},inputs:{currentMonth:"currentMonth",date:"date",disabled:"disabled",focused:"focused",selected:"selected"},attrs:dr,decls:1,vars:1,template:function(w,X){1&w&&r._uU(0),2&w&&r.Oqu(X.i18n.getDayNumerals(X.date))},styles:["[ngbDatepickerDayView]{text-align:center;width:2rem;height:2rem;line-height:2rem;border-radius:.25rem;background:transparent}[ngbDatepickerDayView].outside{opacity:.5}"],encapsulation:2,changeDetection:0}),Y})(),Xn=(()=>{class Y{constructor(w,X){this.i18n=w,this._renderer=X,this.select=new r.vpe,this._month=-1,this._year=-1}changeMonth(w){this.select.emit(new aa(this.date.year,pi(w),1))}changeYear(w){this.select.emit(new aa(pi(w),this.date.month,1))}ngAfterViewChecked(){this.date&&(this.date.month!==this._month&&(this._month=this.date.month,this._renderer.setProperty(this.monthSelect.nativeElement,"value",this._month)),this.date.year!==this._year&&(this._year=this.date.year,this._renderer.setProperty(this.yearSelect.nativeElement,"value",this._year)))}}return Y.\u0275fac=function(w){return new(w||Y)(r.Y36(Cr),r.Y36(r.Qsj))},Y.\u0275cmp=r.Xpm({type:Y,selectors:[["ngb-datepicker-navigation-select"]],viewQuery:function(w,X){if(1&w&&(r.Gf(Fn,7,r.SBq),r.Gf(ar,7,r.SBq)),2&w){let ke;r.iGM(ke=r.CRH())&&(X.monthSelect=ke.first),r.iGM(ke=r.CRH())&&(X.yearSelect=ke.first)}},inputs:{date:"date",disabled:"disabled",months:"months",years:"years"},outputs:{select:"select"},decls:6,vars:4,consts:function(){let fe,w,X,ke;return fe="Select month",w="Select month",X="Select year",ke="Select year",[["aria-label",fe,"title",w,1,"custom-select",3,"disabled","change"],["month",""],[3,"value",4,"ngFor","ngForOf"],["aria-label",X,"title",ke,1,"custom-select",3,"disabled","change"],["year",""],[3,"value"]]},template:function(w,X){1&w&&(r.TgZ(0,"select",0,1),r.NdJ("change",function(ct){return X.changeMonth(ct.target.value)}),r.YNc(2,Wi,2,3,"option",2),r.qZA(),r.TgZ(3,"select",3,4),r.NdJ("change",function(ct){return X.changeYear(ct.target.value)}),r.YNc(5,lo,2,2,"option",2),r.qZA()),2&w&&(r.Q6J("disabled",X.disabled),r.xp6(2),r.Q6J("ngForOf",X.months),r.xp6(1),r.Q6J("disabled",X.disabled),r.xp6(2),r.Q6J("ngForOf",X.years))},directives:[u.sg,Mr.YN,Mr.Kr],styles:["ngb-datepicker-navigation-select>.custom-select{flex:1 1 auto;padding:0 .5rem;font-size:.875rem;height:1.85rem}ngb-datepicker-navigation-select>.custom-select:focus{z-index:1}ngb-datepicker-navigation-select>.custom-select::-ms-value{background-color:transparent!important}"],encapsulation:2,changeDetection:0}),Y})();new Date(1882,10,12),new Date(2174,10,25);let Yu=(()=>{class Y{}return Y.\u0275fac=function(w){return new(w||Y)},Y.\u0275mod=r.oAB({type:Y}),Y.\u0275inj=r.cJS({imports:[[u.ez,Mr.u5]]}),Y})(),pc=(()=>{class Y{constructor(){this.autoClose=!0,this.placement=["bottom-left","bottom-right","top-left","top-right"]}}return Y.\u0275fac=function(w){return new(w||Y)},Y.\u0275prov=r.Yz7({factory:function(){return new Y},token:Y,providedIn:"root"}),Y})(),Kd=(()=>{class Y{}return Y.\u0275fac=function(w){return new(w||Y)},Y.\u0275dir=r.lG2({type:Y,selectors:[["",8,"navbar"]]}),Y})(),wf=(()=>{class Y{constructor(w){this.elementRef=w,this._disabled=!1}set disabled(w){this._disabled=""===w||!0===w}get disabled(){return this._disabled}}return Y.\u0275fac=function(w){return new(w||Y)(r.Y36(r.SBq))},Y.\u0275dir=r.lG2({type:Y,selectors:[["","ngbDropdownItem",""]],hostAttrs:[1,"dropdown-item"],hostVars:2,hostBindings:function(w,X){2&w&&r.ekj("disabled",X.disabled)},inputs:{disabled:"disabled"}}),Y})(),Vl=(()=>{class Y{constructor(w,X){this.dropdown=w,this.placement="bottom",this.isOpen=!1,this.nativeElement=X.nativeElement}}return Y.\u0275fac=function(w){return new(w||Y)(r.Y36((0,r.Gpc)(()=>hc)),r.Y36(r.SBq))},Y.\u0275dir=r.lG2({type:Y,selectors:[["","ngbDropdownMenu",""]],contentQueries:function(w,X,ke){if(1&w&&r.Suo(ke,wf,4),2&w){let ct;r.iGM(ct=r.CRH())&&(X.menuItems=ct)}},hostVars:5,hostBindings:function(w,X){1&w&&r.NdJ("keydown.ArrowUp",function(ct){return X.dropdown.onKeyDown(ct)})("keydown.ArrowDown",function(ct){return X.dropdown.onKeyDown(ct)})("keydown.Home",function(ct){return X.dropdown.onKeyDown(ct)})("keydown.End",function(ct){return X.dropdown.onKeyDown(ct)})("keydown.Enter",function(ct){return X.dropdown.onKeyDown(ct)})("keydown.Space",function(ct){return X.dropdown.onKeyDown(ct)})("keydown.Tab",function(ct){return X.dropdown.onKeyDown(ct)})("keydown.Shift.Tab",function(ct){return X.dropdown.onKeyDown(ct)}),2&w&&(r.uIk("x-placement",X.placement),r.ekj("dropdown-menu",!0)("show",X.dropdown.isOpen()))}}),Y})(),Id=(()=>{class Y{constructor(w,X){this.dropdown=w,this.nativeElement=X.nativeElement}}return Y.\u0275fac=function(w){return new(w||Y)(r.Y36((0,r.Gpc)(()=>hc)),r.Y36(r.SBq))},Y.\u0275dir=r.lG2({type:Y,selectors:[["","ngbDropdownAnchor",""]],hostAttrs:[1,"dropdown-toggle"],hostVars:1,hostBindings:function(w,X){2&w&&r.uIk("aria-expanded",X.dropdown.isOpen())}}),Y})(),oc=(()=>{class Y extends Id{constructor(w,X){super(w,X)}}return Y.\u0275fac=function(w){return new(w||Y)(r.Y36((0,r.Gpc)(()=>hc)),r.Y36(r.SBq))},Y.\u0275dir=r.lG2({type:Y,selectors:[["","ngbDropdownToggle",""]],hostAttrs:[1,"dropdown-toggle"],hostVars:1,hostBindings:function(w,X){1&w&&r.NdJ("click",function(){return X.dropdown.toggle()})("keydown.ArrowUp",function(ct){return X.dropdown.onKeyDown(ct)})("keydown.ArrowDown",function(ct){return X.dropdown.onKeyDown(ct)})("keydown.Home",function(ct){return X.dropdown.onKeyDown(ct)})("keydown.End",function(ct){return X.dropdown.onKeyDown(ct)})("keydown.Tab",function(ct){return X.dropdown.onKeyDown(ct)})("keydown.Shift.Tab",function(ct){return X.dropdown.onKeyDown(ct)}),2&w&&r.uIk("aria-expanded",X.dropdown.isOpen())},features:[r._Bn([{provide:Id,useExisting:(0,r.Gpc)(()=>Y)}]),r.qOj]}),Y})(),hc=(()=>{class Y{constructor(w,X,ke,ct,Jn,Ir,vi){this._changeDetector=w,this._document=ke,this._ngZone=ct,this._elementRef=Jn,this._renderer=Ir,this._closed$=new he.xQ,this._bodyContainer=null,this._open=!1,this.openChange=new r.vpe,this.placement=X.placement,this.container=X.container,this.autoClose=X.autoClose,this.display=vi?"static":"dynamic",this._zoneSubscription=ct.onStable.subscribe(()=>{this._positionMenu()})}ngAfterContentInit(){this._ngZone.onStable.pipe((0,Bt.q)(1)).subscribe(()=>{this._applyPlacementClasses(),this._open&&this._setCloseHandlers()})}ngOnChanges(w){if(w.container&&this._open&&this._applyContainer(this.container),w.placement&&!w.placement.isFirstChange&&this._applyPlacementClasses(),w.dropdownClass){const{currentValue:X,previousValue:ke}=w.dropdownClass;this._applyCustomDropdownClass(X,ke)}}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())}_setCloseHandlers(){la(this._ngZone,this._document,this.autoClose,w=>{this.close(),0===w&&this._anchor.nativeElement.focus()},this._closed$,this._menu?[this._menu.nativeElement]:[],this._anchor?[this._anchor.nativeElement]:[],".dropdown-item,.dropdown-divider")}close(){this._open&&(this._open=!1,this._resetContainer(),this._closed$.next(),this.openChange.emit(!1),this._changeDetector.markForCheck())}toggle(){this.isOpen()?this.close():this.open()}ngOnDestroy(){this._resetContainer(),this._closed$.next(),this._zoneSubscription.unsubscribe()}onKeyDown(w){const X=w.which,ke=this._getMenuElements();let ct=-1,Jn=null;const Ir=this._isEventFromToggle(w);if(!Ir&&ke.length&&ke.forEach((vi,zi)=>{vi.contains(w.target)&&(Jn=vi),vi===this._document.activeElement&&(ct=zi)}),X!==$i.Space&&X!==$i.Enter){if(X!==$i.Tab){if(Ir||Jn){if(this.open(),ke.length){switch(X){case $i.ArrowDown:ct=Math.min(ct+1,ke.length-1);break;case $i.ArrowUp:if(this._isDropup()&&-1===ct){ct=ke.length-1;break}ct=Math.max(ct-1,0);break;case $i.Home:ct=0;break;case $i.End:ct=ke.length-1}ke[ct].focus()}w.preventDefault()}}else if(w.target&&this.isOpen()&&this.autoClose){if(this._anchor.nativeElement===w.target)return void("body"!==this.container||w.shiftKey?w.shiftKey&&this.close():(this._renderer.setAttribute(this._menu.nativeElement,"tabindex","0"),this._menu.nativeElement.focus(),this._renderer.removeAttribute(this._menu.nativeElement,"tabindex")));if("body"===this.container){const vi=this._menu.nativeElement.querySelectorAll(Zc);w.shiftKey&&w.target===vi[0]?(this._anchor.nativeElement.focus(),w.preventDefault()):!w.shiftKey&&w.target===vi[vi.length-1]&&(this._anchor.nativeElement.focus(),this.close())}else(0,ge.R)(w.target,"focusout").pipe((0,Bt.q)(1)).subscribe(({relatedTarget:vi})=>{this._elementRef.nativeElement.contains(vi)||this.close()})}}else Jn&&(!0===this.autoClose||"inside"===this.autoClose)&&(0,ge.R)(Jn,"click").pipe((0,Bt.q)(1)).subscribe(()=>this.close())}_isDropup(){return this._elementRef.nativeElement.classList.contains("dropup")}_isEventFromToggle(w){return this._anchor.nativeElement.contains(w.target)}_getMenuElements(){const w=this._menu;return null==w?[]:w.menuItems.filter(X=>!X.disabled).map(X=>X.elementRef.nativeElement)}_positionMenu(){const w=this._menu;this.isOpen()&&w&&this._applyPlacementClasses("dynamic"===this.display?Ye(this._anchor.nativeElement,this._bodyContainer||this._menu.nativeElement,this.placement,"body"===this.container):this._getFirstPlacement(this.placement))}_getFirstPlacement(w){return Array.isArray(w)?w[0]:w.split(" ")[0]}_resetContainer(){const w=this._renderer;if(this._menu){const ke=this._menu.nativeElement;w.appendChild(this._elementRef.nativeElement,ke),w.removeStyle(ke,"position"),w.removeStyle(ke,"transform")}this._bodyContainer&&(w.removeChild(this._document.body,this._bodyContainer),this._bodyContainer=null)}_applyContainer(w=null){if(this._resetContainer(),"body"===w){const X=this._renderer,ke=this._menu.nativeElement,ct=this._bodyContainer=this._bodyContainer||X.createElement("div");X.setStyle(ct,"position","absolute"),X.setStyle(ke,"position","static"),X.setStyle(ct,"z-index","1050"),X.appendChild(ct,ke),X.appendChild(this._document.body,ct)}this._applyCustomDropdownClass(this.dropdownClass)}_applyCustomDropdownClass(w,X){const ke="body"===this.container?this._bodyContainer:this._elementRef.nativeElement;ke&&(X&&this._renderer.removeClass(ke,X),w&&this._renderer.addClass(ke,w))}_applyPlacementClasses(w){const X=this._menu;if(X){w||(w=this._getFirstPlacement(this.placement));const ke=this._renderer,ct=this._elementRef.nativeElement;ke.removeClass(ct,"dropup"),ke.removeClass(ct,"dropdown"),X.placement="static"===this.display?null:w;const Jn=-1!==w.search("^top")?"dropup":"dropdown";ke.addClass(ct,Jn);const Ir=this._bodyContainer;Ir&&(ke.removeClass(Ir,"dropup"),ke.removeClass(Ir,"dropdown"),ke.addClass(Ir,Jn))}}}return Y.\u0275fac=function(w){return new(w||Y)(r.Y36(r.sBO),r.Y36(pc),r.Y36(u.K0),r.Y36(r.R0b),r.Y36(r.SBq),r.Y36(r.Qsj),r.Y36(Kd,8))},Y.\u0275dir=r.lG2({type:Y,selectors:[["","ngbDropdown",""]],contentQueries:function(w,X,ke){if(1&w&&(r.Suo(ke,Vl,5),r.Suo(ke,Id,5)),2&w){let ct;r.iGM(ct=r.CRH())&&(X._menu=ct.first),r.iGM(ct=r.CRH())&&(X._anchor=ct.first)}},hostVars:2,hostBindings:function(w,X){2&w&&r.ekj("show",X.isOpen())},inputs:{_open:["open","_open"],placement:"placement",container:"container",autoClose:"autoClose",display:"display",dropdownClass:"dropdownClass"},outputs:{openChange:"openChange"},exportAs:["ngbDropdown"],features:[r.TTD]}),Y})(),Mc=(()=>{class Y{}return Y.\u0275fac=function(w){return new(w||Y)},Y.\u0275mod=r.oAB({type:Y}),Y.\u0275inj=r.cJS({}),Y})(),Hc=(()=>{class Y{constructor(w){this._ngbConfig=w,this.backdrop=!0,this.keyboard=!0}get animation(){return void 0===this._animation?this._ngbConfig.animation:this._animation}set animation(w){this._animation=w}}return Y.\u0275fac=function(w){return new(w||Y)(r.LFG(Fs))},Y.\u0275prov=r.Yz7({factory:function(){return new Y(r.LFG(Fs))},token:Y,providedIn:"root"}),Y})();class cu{constructor(fe,w,X){this.nodes=fe,this.viewRef=w,this.componentRef=X}}class Lu{constructor(fe,w,X,ke,ct,Jn,Ir){this._type=fe,this._injector=w,this._viewContainerRef=X,this._renderer=ke,this._ngZone=ct,this._componentFactoryResolver=Jn,this._applicationRef=Ir,this._windowRef=null,this._contentRef=null}open(fe,w,X=!1){this._windowRef||(this._contentRef=this._getContentRef(fe,w),this._windowRef=this._viewContainerRef.createComponent(this._componentFactoryResolver.resolveComponentFactory(this._type),this._viewContainerRef.length,this._injector,this._contentRef.nodes));const{nativeElement:ke}=this._windowRef.location,ct=this._ngZone.onStable.pipe((0,Bt.q)(1),(0,di.zg)(()=>Pt(this._ngZone,ke,({classList:Jn})=>Jn.add("show"),{animation:X,runningTransition:"continue"})));return{windowRef:this._windowRef,transition$:ct}}close(fe=!1){return this._windowRef?Pt(this._ngZone,this._windowRef.location.nativeElement,({classList:w})=>w.remove("show"),{animation:fe,runningTransition:"stop"}).pipe((0,Zn.b)(()=>{var w;this._windowRef&&(this._viewContainerRef.remove(this._viewContainerRef.indexOf(this._windowRef.hostView)),this._windowRef=null),(null===(w=this._contentRef)||void 0===w?void 0:w.viewRef)&&(this._applicationRef.detachView(this._contentRef.viewRef),this._contentRef.viewRef.destroy(),this._contentRef=null)})):(0,ie.of)(void 0)}_getContentRef(fe,w){if(fe){if(fe instanceof r.Rgc){const X=fe.createEmbeddedView(w);return this._applicationRef.attachView(X),new cu([X.rootNodes],X)}return new cu([[this._renderer.createText(`${fe}`)]])}return new cu([])}}const Ou=()=>{};let bu=(()=>{class Y{constructor(w){this._document=w}compensate(){const w=this._getWidth();return this._isPresent(w)?this._adjustBody(w):Ou}_adjustBody(w){const X=this._document.body,ke=X.style.paddingRight,ct=parseFloat(window.getComputedStyle(X)["padding-right"]);return X.style["padding-right"]=`${ct+w}px`,()=>X.style["padding-right"]=ke}_isPresent(w){const X=this._document.body.getBoundingClientRect();return window.innerWidth-(X.left+X.right)>=w-.1*w}_getWidth(){const w=this._document.createElement("div");w.className="modal-scrollbar-measure";const X=this._document.body;X.appendChild(w);const ke=w.getBoundingClientRect().width-w.clientWidth;return X.removeChild(w),ke}}return Y.\u0275fac=function(w){return new(w||Y)(r.LFG(u.K0))},Y.\u0275prov=r.Yz7({factory:function(){return new Y(r.LFG(u.K0))},token:Y,providedIn:"root"}),Y})(),h=(()=>{class Y{constructor(w,X){this._el=w,this._zone=X}ngOnInit(){this._zone.onStable.asObservable().pipe((0,Bt.q)(1)).subscribe(()=>{Pt(this._zone,this._el.nativeElement,(w,X)=>{X&&Ec(w),w.classList.add("show")},{animation:this.animation,runningTransition:"continue"})})}hide(){return Pt(this._zone,this._el.nativeElement,({classList:w})=>w.remove("show"),{animation:this.animation,runningTransition:"stop"})}}return Y.\u0275fac=function(w){return new(w||Y)(r.Y36(r.SBq),r.Y36(r.R0b))},Y.\u0275cmp=r.Xpm({type:Y,selectors:[["ngb-modal-backdrop"]],hostAttrs:[2,"z-index","1050"],hostVars:6,hostBindings:function(w,X){2&w&&(r.Tol("modal-backdrop"+(X.backdropClass?" "+X.backdropClass:"")),r.ekj("show",!X.animation)("fade",X.animation))},inputs:{animation:"animation",backdropClass:"backdropClass"},decls:0,vars:0,template:function(w,X){},encapsulation:2}),Y})();class E{close(fe){}dismiss(fe){}}class R{constructor(fe,w,X,ke){this._windowCmptRef=fe,this._contentRef=w,this._backdropCmptRef=X,this._beforeDismiss=ke,this._closed=new he.xQ,this._dismissed=new he.xQ,this._hidden=new he.xQ,fe.instance.dismissEvent.subscribe(ct=>{this.dismiss(ct)}),this.result=new Promise((ct,Jn)=>{this._resolve=ct,this._reject=Jn}),this.result.then(null,()=>{})}get componentInstance(){if(this._contentRef&&this._contentRef.componentRef)return this._contentRef.componentRef.instance}get closed(){return this._closed.asObservable().pipe((0,Zt.R)(this._hidden))}get dismissed(){return this._dismissed.asObservable().pipe((0,Zt.R)(this._hidden))}get hidden(){return this._hidden.asObservable()}get shown(){return this._windowCmptRef.instance.shown.asObservable()}close(fe){this._windowCmptRef&&(this._closed.next(fe),this._resolve(fe),this._removeModalElements())}_dismiss(fe){this._dismissed.next(fe),this._reject(fe),this._removeModalElements()}dismiss(fe){if(this._windowCmptRef)if(this._beforeDismiss){const w=this._beforeDismiss();w&&w.then?w.then(X=>{!1!==X&&this._dismiss(fe)},()=>{}):!1!==w&&this._dismiss(fe)}else this._dismiss(fe)}_removeModalElements(){const fe=this._windowCmptRef.instance.hide(),w=this._backdropCmptRef?this._backdropCmptRef.instance.hide():(0,ie.of)(void 0);fe.subscribe(()=>{const{nativeElement:X}=this._windowCmptRef.location;X.parentNode.removeChild(X),this._windowCmptRef.destroy(),this._contentRef&&this._contentRef.viewRef&&this._contentRef.viewRef.destroy(),this._windowCmptRef=null,this._contentRef=null}),w.subscribe(()=>{if(this._backdropCmptRef){const{nativeElement:X}=this._backdropCmptRef.location;X.parentNode.removeChild(X),this._backdropCmptRef.destroy(),this._backdropCmptRef=null}}),J(fe,w).subscribe(()=>{this._hidden.next(),this._hidden.complete()})}}var F=(()=>{return(Y=F||(F={}))[Y.BACKDROP_CLICK=0]="BACKDROP_CLICK",Y[Y.ESC=1]="ESC",F;var Y})();let q=(()=>{class Y{constructor(w,X,ke){this._document=w,this._elRef=X,this._zone=ke,this._closed$=new he.xQ,this._elWithFocus=null,this.backdrop=!0,this.keyboard=!0,this.dismissEvent=new r.vpe,this.shown=new he.xQ,this.hidden=new he.xQ}dismiss(w){this.dismissEvent.emit(w)}ngOnInit(){this._elWithFocus=this._document.activeElement,this._zone.onStable.asObservable().pipe((0,Bt.q)(1)).subscribe(()=>{this._show()})}ngOnDestroy(){this._disableEventHandling()}hide(){const{nativeElement:w}=this._elRef,X={animation:this.animation,runningTransition:"stop"},Jn=J(Pt(this._zone,w,()=>w.classList.remove("show"),X),Pt(this._zone,this._dialogEl.nativeElement,()=>{},X));return Jn.subscribe(()=>{this.hidden.next(),this.hidden.complete()}),this._disableEventHandling(),this._restoreFocus(),Jn}_show(){const w={animation:this.animation,runningTransition:"continue"};J(Pt(this._zone,this._elRef.nativeElement,(ct,Jn)=>{Jn&&Ec(ct),ct.classList.add("show")},w),Pt(this._zone,this._dialogEl.nativeElement,()=>{},w)).subscribe(()=>{this.shown.next(),this.shown.complete()}),this._enableEventHandling(),this._setFocus()}_enableEventHandling(){const{nativeElement:w}=this._elRef;this._zone.runOutsideAngular(()=>{(0,ge.R)(w,"keydown").pipe((0,Zt.R)(this._closed$),(0,Ut.h)(ke=>ke.which===$i.Escape)).subscribe(ke=>{this.keyboard?requestAnimationFrame(()=>{ke.defaultPrevented||this._zone.run(()=>this.dismiss(F.ESC))}):"static"===this.backdrop&&this._bumpBackdrop()});let X=!1;(0,ge.R)(this._dialogEl.nativeElement,"mousedown").pipe((0,Zt.R)(this._closed$),(0,Zn.b)(()=>X=!1),(0,Xt.w)(()=>(0,ge.R)(w,"mouseup").pipe((0,Zt.R)(this._closed$),(0,Bt.q)(1))),(0,Ut.h)(({target:ke})=>w===ke)).subscribe(()=>{X=!0}),(0,ge.R)(w,"click").pipe((0,Zt.R)(this._closed$)).subscribe(({target:ke})=>{w===ke&&("static"===this.backdrop?this._bumpBackdrop():!0===this.backdrop&&!X&&this._zone.run(()=>this.dismiss(F.BACKDROP_CLICK))),X=!1})})}_disableEventHandling(){this._closed$.next()}_setFocus(){const{nativeElement:w}=this._elRef;if(!w.contains(document.activeElement)){const X=w.querySelector("[ngbAutofocus]"),ke=ic(w)[0];(X||ke||w).focus()}}_restoreFocus(){const w=this._document.body,X=this._elWithFocus;let ke;ke=X&&X.focus&&w.contains(X)?X:w,this._zone.runOutsideAngular(()=>{setTimeout(()=>ke.focus()),this._elWithFocus=null})}_bumpBackdrop(){"static"===this.backdrop&&Pt(this._zone,this._elRef.nativeElement,({classList:w})=>(w.add("modal-static"),()=>w.remove("modal-static")),{animation:this.animation,runningTransition:"continue"})}}return Y.\u0275fac=function(w){return new(w||Y)(r.Y36(u.K0),r.Y36(r.SBq),r.Y36(r.R0b))},Y.\u0275cmp=r.Xpm({type:Y,selectors:[["ngb-modal-window"]],viewQuery:function(w,X){if(1&w&&r.Gf(vo,7),2&w){let ke;r.iGM(ke=r.CRH())&&(X._dialogEl=ke.first)}},hostAttrs:["role","dialog","tabindex","-1"],hostVars:7,hostBindings:function(w,X){2&w&&(r.uIk("aria-modal",!0)("aria-labelledby",X.ariaLabelledBy)("aria-describedby",X.ariaDescribedBy),r.Tol("modal d-block"+(X.windowClass?" "+X.windowClass:"")),r.ekj("fade",X.animation))},inputs:{backdrop:"backdrop",keyboard:"keyboard",animation:"animation",ariaLabelledBy:"ariaLabelledBy",ariaDescribedBy:"ariaDescribedBy",centered:"centered",scrollable:"scrollable",size:"size",windowClass:"windowClass",modalDialogClass:"modalDialogClass"},outputs:{dismissEvent:"dismiss"},ngContentSelectors:Hi,decls:4,vars:2,consts:[["role","document"],["dialog",""],[1,"modal-content"]],template:function(w,X){1&w&&(r.F$t(),r.TgZ(0,"div",0,1),r.TgZ(2,"div",2),r.Hsn(3),r.qZA(),r.qZA()),2&w&&r.Tol("modal-dialog"+(X.size?" modal-"+X.size:"")+(X.centered?" modal-dialog-centered":"")+(X.scrollable?" modal-dialog-scrollable":"")+(X.modalDialogClass?" "+X.modalDialogClass:""))},styles:["ngb-modal-window .component-host-scrollable{display:flex;flex-direction:column;overflow:hidden}"],encapsulation:2}),Y})(),de=(()=>{class Y{constructor(w,X,ke,ct,Jn,Ir){this._applicationRef=w,this._injector=X,this._document=ke,this._scrollBar=ct,this._rendererFactory=Jn,this._ngZone=Ir,this._activeWindowCmptHasChanged=new he.xQ,this._ariaHiddenValues=new Map,this._backdropAttributes=["animation","backdropClass"],this._modalRefs=[],this._windowAttributes=["animation","ariaLabelledBy","ariaDescribedBy","backdrop","centered","keyboard","scrollable","size","windowClass","modalDialogClass"],this._windowCmpts=[],this._activeInstances=new r.vpe,this._activeWindowCmptHasChanged.subscribe(()=>{if(this._windowCmpts.length){const vi=this._windowCmpts[this._windowCmpts.length-1];df(this._ngZone,vi.location.nativeElement,this._activeWindowCmptHasChanged),this._revertAriaHidden(),this._setAriaHidden(vi.location.nativeElement)}})}open(w,X,ke,ct){const Jn=ct.container instanceof HTMLElement?ct.container:ba(ct.container)?this._document.querySelector(ct.container):this._document.body,Ir=this._rendererFactory.createRenderer(null,null),vi=this._scrollBar.compensate(),zi=()=>{this._modalRefs.length||(Ir.removeClass(this._document.body,"modal-open"),this._revertAriaHidden())};if(!Jn)throw new Error(`The specified modal container "${ct.container||"body"}" was not found in the DOM.`);const Do=new E,xs=this._getContentRef(w,ct.injector||X,ke,Do,ct);let Xo=!1!==ct.backdrop?this._attachBackdrop(w,Jn):void 0,Rs=this._attachWindowComponent(w,Jn,xs),ma=new R(Rs,xs,Xo,ct.beforeDismiss);return this._registerModalRef(ma),this._registerWindowCmpt(Rs),ma.result.then(vi,vi),ma.result.then(zi,zi),Do.close=Vs=>{ma.close(Vs)},Do.dismiss=Vs=>{ma.dismiss(Vs)},this._applyWindowOptions(Rs.instance,ct),1===this._modalRefs.length&&Ir.addClass(this._document.body,"modal-open"),Xo&&Xo.instance&&(this._applyBackdropOptions(Xo.instance,ct),Xo.changeDetectorRef.detectChanges()),Rs.changeDetectorRef.detectChanges(),ma}get activeInstances(){return this._activeInstances}dismissAll(w){this._modalRefs.forEach(X=>X.dismiss(w))}hasOpenModals(){return this._modalRefs.length>0}_attachBackdrop(w,X){let ct=w.resolveComponentFactory(h).create(this._injector);return this._applicationRef.attachView(ct.hostView),X.appendChild(ct.location.nativeElement),ct}_attachWindowComponent(w,X,ke){let Jn=w.resolveComponentFactory(q).create(this._injector,ke.nodes);return this._applicationRef.attachView(Jn.hostView),X.appendChild(Jn.location.nativeElement),Jn}_applyWindowOptions(w,X){this._windowAttributes.forEach(ke=>{ba(X[ke])&&(w[ke]=X[ke])})}_applyBackdropOptions(w,X){this._backdropAttributes.forEach(ke=>{ba(X[ke])&&(w[ke]=X[ke])})}_getContentRef(w,X,ke,ct,Jn){return ke?ke instanceof r.Rgc?this._createFromTemplateRef(ke,ct):wo(ke)?this._createFromString(ke):this._createFromComponent(w,X,ke,ct,Jn):new cu([])}_createFromTemplateRef(w,X){const ct=w.createEmbeddedView({$implicit:X,close(Jn){X.close(Jn)},dismiss(Jn){X.dismiss(Jn)}});return this._applicationRef.attachView(ct),new cu([ct.rootNodes],ct)}_createFromString(w){const X=this._document.createTextNode(`${w}`);return new cu([[X]])}_createFromComponent(w,X,ke,ct,Jn){const Ir=w.resolveComponentFactory(ke),vi=r.zs3.create({providers:[{provide:E,useValue:ct}],parent:X}),zi=Ir.create(vi),Do=zi.location.nativeElement;return Jn.scrollable&&Do.classList.add("component-host-scrollable"),this._applicationRef.attachView(zi.hostView),new cu([[Do]],zi.hostView,zi)}_setAriaHidden(w){const X=w.parentElement;X&&w!==this._document.body&&(Array.from(X.children).forEach(ke=>{ke!==w&&"SCRIPT"!==ke.nodeName&&(this._ariaHiddenValues.set(ke,ke.getAttribute("aria-hidden")),ke.setAttribute("aria-hidden","true"))}),this._setAriaHidden(X))}_revertAriaHidden(){this._ariaHiddenValues.forEach((w,X)=>{w?X.setAttribute("aria-hidden",w):X.removeAttribute("aria-hidden")}),this._ariaHiddenValues.clear()}_registerModalRef(w){const X=()=>{const ke=this._modalRefs.indexOf(w);ke>-1&&(this._modalRefs.splice(ke,1),this._activeInstances.emit(this._modalRefs))};this._modalRefs.push(w),this._activeInstances.emit(this._modalRefs),w.result.then(X,X)}_registerWindowCmpt(w){this._windowCmpts.push(w),this._activeWindowCmptHasChanged.next(),w.onDestroy(()=>{const X=this._windowCmpts.indexOf(w);X>-1&&(this._windowCmpts.splice(X,1),this._activeWindowCmptHasChanged.next())})}}return Y.\u0275fac=function(w){return new(w||Y)(r.LFG(r.z2F),r.LFG(r.zs3),r.LFG(u.K0),r.LFG(bu),r.LFG(r.FYo),r.LFG(r.R0b))},Y.\u0275prov=r.Yz7({factory:function(){return new Y(r.LFG(r.z2F),r.LFG(r.gxx),r.LFG(u.K0),r.LFG(bu),r.LFG(r.FYo),r.LFG(r.R0b))},token:Y,providedIn:"root"}),Y})(),ye=(()=>{class Y{constructor(w,X,ke,ct){this._moduleCFR=w,this._injector=X,this._modalStack=ke,this._config=ct}open(w,X={}){const ke=Object.assign(Object.assign(Object.assign({},this._config),{animation:this._config.animation}),X);return this._modalStack.open(this._moduleCFR,this._injector,w,ke)}get activeInstances(){return this._modalStack.activeInstances}dismissAll(w){this._modalStack.dismissAll(w)}hasOpenModals(){return this._modalStack.hasOpenModals()}}return Y.\u0275fac=function(w){return new(w||Y)(r.LFG(r._Vd),r.LFG(r.zs3),r.LFG(de),r.LFG(Hc))},Y.\u0275prov=r.Yz7({factory:function(){return new Y(r.LFG(r._Vd),r.LFG(r.gxx),r.LFG(de),r.LFG(Hc))},token:Y,providedIn:"root"}),Y})(),Oe=(()=>{class Y{constructor(w){this._ngbConfig=w,this.destroyOnHide=!0,this.orientation="horizontal",this.roles="tablist",this.keyboard=!1}get animation(){return void 0===this._animation?this._ngbConfig.animation:this._animation}set animation(w){this._animation=w}}return Y.\u0275fac=function(w){return new(w||Y)(r.LFG(Fs))},Y.\u0275prov=r.Yz7({factory:function(){return new Y(r.LFG(Fs))},token:Y,providedIn:"root"}),Y})();const Xe=Y=>ba(Y)&&""!==Y;let yt=0,nn=(()=>{class Y{constructor(w){this.templateRef=w}}return Y.\u0275fac=function(w){return new(w||Y)(r.Y36(r.Rgc))},Y.\u0275dir=r.lG2({type:Y,selectors:[["ng-template","ngbNavContent",""]]}),Y})(),Pn=(()=>{class Y{constructor(w,X){this.elementRef=X,this.disabled=!1,this.shown=new r.vpe,this.hidden=new r.vpe,this._nav=w}ngAfterContentChecked(){this.contentTpl=this.contentTpls.first}ngOnInit(){ba(this.domId)||(this.domId="ngb-nav-"+yt++)}get active(){return this._nav.activeId===this.id}get id(){return Xe(this._id)?this._id:this.domId}get panelDomId(){return`${this.domId}-panel`}isPanelInDom(){return(ba(this.destroyOnHide)?!this.destroyOnHide:!this._nav.destroyOnHide)||this.active}}return Y.\u0275fac=function(w){return new(w||Y)(r.Y36((0,r.Gpc)(()=>xn)),r.Y36(r.SBq))},Y.\u0275dir=r.lG2({type:Y,selectors:[["","ngbNavItem",""]],contentQueries:function(w,X,ke){if(1&w&&r.Suo(ke,nn,4),2&w){let ct;r.iGM(ct=r.CRH())&&(X.contentTpls=ct)}},hostVars:2,hostBindings:function(w,X){2&w&&r.ekj("nav-item",!0)},inputs:{disabled:"disabled",domId:"domId",destroyOnHide:"destroyOnHide",_id:["ngbNavItem","_id"]},outputs:{shown:"shown",hidden:"hidden"},exportAs:["ngbNavItem"]}),Y})(),xn=(()=>{class Y{constructor(w,X,ke,ct){this.role=w,this._cd=ke,this._document=ct,this.activeIdChange=new r.vpe,this.shown=new r.vpe,this.hidden=new r.vpe,this.destroy$=new he.xQ,this.navItemChange$=new he.xQ,this.navChange=new r.vpe,this.animation=X.animation,this.destroyOnHide=X.destroyOnHide,this.orientation=X.orientation,this.roles=X.roles,this.keyboard=X.keyboard}click(w){w.disabled||this._updateActiveId(w.id)}onKeyDown(w){if("tablist"!==this.roles||!this.keyboard)return;const X=w.which,ke=this.links.filter(Ir=>!Ir.navItem.disabled),{length:ct}=ke;let Jn=-1;if(ke.forEach((Ir,vi)=>{Ir.elRef.nativeElement===this._document.activeElement&&(Jn=vi)}),ct){switch(X){case $i.ArrowLeft:if("vertical"===this.orientation)return;Jn=(Jn-1+ct)%ct;break;case $i.ArrowRight:if("vertical"===this.orientation)return;Jn=(Jn+1)%ct;break;case $i.ArrowDown:if("horizontal"===this.orientation)return;Jn=(Jn+1)%ct;break;case $i.ArrowUp:if("horizontal"===this.orientation)return;Jn=(Jn-1+ct)%ct;break;case $i.Home:Jn=0;break;case $i.End:Jn=ct-1}"changeWithArrows"===this.keyboard&&this.select(ke[Jn].navItem.id),ke[Jn].elRef.nativeElement.focus(),w.preventDefault()}}select(w){this._updateActiveId(w,!1)}ngAfterContentInit(){if(!ba(this.activeId)){const w=this.items.first?this.items.first.id:null;Xe(w)&&(this._updateActiveId(w,!1),this._cd.detectChanges())}this.items.changes.pipe((0,Zt.R)(this.destroy$)).subscribe(()=>this._notifyItemChanged(this.activeId))}ngOnChanges({activeId:w}){w&&!w.firstChange&&this._notifyItemChanged(w.currentValue)}ngOnDestroy(){this.destroy$.next()}_updateActiveId(w,X=!0){if(this.activeId!==w){let ke=!1;X&&this.navChange.emit({activeId:this.activeId,nextId:w,preventDefault:()=>{ke=!0}}),ke||(this.activeId=w,this.activeIdChange.emit(w),this._notifyItemChanged(w))}}_notifyItemChanged(w){this.navItemChange$.next(this._getItemById(w))}_getItemById(w){return this.items&&this.items.find(X=>X.id===w)||null}}return Y.\u0275fac=function(w){return new(w||Y)(r.$8M("role"),r.Y36(Oe),r.Y36(r.sBO),r.Y36(u.K0))},Y.\u0275dir=r.lG2({type:Y,selectors:[["","ngbNav",""]],contentQueries:function(w,X,ke){if(1&w&&(r.Suo(ke,Pn,4),r.Suo(ke,ir,5)),2&w){let ct;r.iGM(ct=r.CRH())&&(X.items=ct),r.iGM(ct=r.CRH())&&(X.links=ct)}},hostVars:6,hostBindings:function(w,X){1&w&&r.NdJ("keydown.arrowLeft",function(ct){return X.onKeyDown(ct)})("keydown.arrowRight",function(ct){return X.onKeyDown(ct)})("keydown.arrowDown",function(ct){return X.onKeyDown(ct)})("keydown.arrowUp",function(ct){return X.onKeyDown(ct)})("keydown.Home",function(ct){return X.onKeyDown(ct)})("keydown.End",function(ct){return X.onKeyDown(ct)}),2&w&&(r.uIk("aria-orientation","vertical"===X.orientation&&"tablist"===X.roles?"vertical":void 0)("role",X.role?X.role:X.roles?"tablist":void 0),r.ekj("nav",!0)("flex-column","vertical"===X.orientation))},inputs:{animation:"animation",destroyOnHide:"destroyOnHide",orientation:"orientation",roles:"roles",keyboard:"keyboard",activeId:"activeId"},outputs:{activeIdChange:"activeIdChange",shown:"shown",hidden:"hidden",navChange:"navChange"},exportAs:["ngbNav"],features:[r.TTD]}),Y})(),ir=(()=>{class Y{constructor(w,X,ke,ct){this.role=w,this.navItem=X,this.nav=ke,this.elRef=ct}hasNavItemClass(){return this.navItem.elementRef.nativeElement.nodeType===Node.COMMENT_NODE}}return Y.\u0275fac=function(w){return new(w||Y)(r.$8M("role"),r.Y36(Pn),r.Y36(xn),r.Y36(r.SBq))},Y.\u0275dir=r.lG2({type:Y,selectors:[["a","ngbNavLink",""]],hostAttrs:["href",""],hostVars:14,hostBindings:function(w,X){1&w&&r.NdJ("click",function(ct){return X.nav.click(X.navItem),ct.preventDefault()}),2&w&&(r.Ikx("id",X.navItem.domId),r.uIk("role",X.role?X.role:X.nav.roles?"tab":void 0)("tabindex",X.navItem.disabled?-1:void 0)("aria-controls",X.navItem.isPanelInDom()?X.navItem.panelDomId:null)("aria-selected",X.navItem.active)("aria-disabled",X.navItem.disabled),r.ekj("nav-link",!0)("nav-item",X.hasNavItemClass())("active",X.navItem.active)("disabled",X.navItem.disabled))}}),Y})();const Gr=({classList:Y})=>(Y.remove("show"),()=>Y.remove("active")),Pi=(Y,fe)=>{fe&&Ec(Y),Y.classList.add("show")};let Zo=(()=>{class Y{constructor(w){this.elRef=w}}return Y.\u0275fac=function(w){return new(w||Y)(r.Y36(r.SBq))},Y.\u0275dir=r.lG2({type:Y,selectors:[["","ngbNavPane",""]],hostAttrs:[1,"tab-pane"],hostVars:5,hostBindings:function(w,X){2&w&&(r.Ikx("id",X.item.panelDomId),r.uIk("role",X.role?X.role:X.nav.roles?"tabpanel":void 0)("aria-labelledby",X.item.domId),r.ekj("fade",X.nav.animation))},inputs:{item:"item",nav:"nav",role:"role"}}),Y})(),Lo=(()=>{class Y{constructor(w,X){this._cd=w,this._ngZone=X,this._activePane=null}isPanelTransitioning(w){var X;return(null===(X=this._activePane)||void 0===X?void 0:X.item)===w}ngAfterViewInit(){var w;this._updateActivePane(),this.nav.navItemChange$.pipe((0,Zt.R)(this.nav.destroy$),(0,Gt.O)((null===(w=this._activePane)||void 0===w?void 0:w.item)||null),(0,xt.x)(),fe=>fe.lift(new tn(1))).subscribe(X=>{const ke={animation:this.nav.animation,runningTransition:"stop"};this._cd.detectChanges(),this._activePane?Pt(this._ngZone,this._activePane.elRef.nativeElement,Gr,ke).subscribe(()=>{var ct;const Jn=null===(ct=this._activePane)||void 0===ct?void 0:ct.item;this._activePane=this._getPaneForItem(X),this._cd.markForCheck(),this._activePane&&(this._activePane.elRef.nativeElement.classList.add("active"),Pt(this._ngZone,this._activePane.elRef.nativeElement,Pi,ke).subscribe(()=>{X&&(X.shown.emit(),this.nav.shown.emit(X.id))})),Jn&&(Jn.hidden.emit(),this.nav.hidden.emit(Jn.id))}):this._updateActivePane()})}_updateActivePane(){var w,X;this._activePane=this._getActivePane(),null===(w=this._activePane)||void 0===w||w.elRef.nativeElement.classList.add("show"),null===(X=this._activePane)||void 0===X||X.elRef.nativeElement.classList.add("active")}_getPaneForItem(w){return this._panes&&this._panes.find(X=>X.item===w)||null}_getActivePane(){return this._panes&&this._panes.find(w=>w.item.active)||null}}return Y.\u0275fac=function(w){return new(w||Y)(r.Y36(r.sBO),r.Y36(r.R0b))},Y.\u0275cmp=r.Xpm({type:Y,selectors:[["","ngbNavOutlet",""]],viewQuery:function(w,X){if(1&w&&r.Gf(Zo,5),2&w){let ke;r.iGM(ke=r.CRH())&&(X._panes=ke)}},hostVars:2,hostBindings:function(w,X){2&w&&r.ekj("tab-content",!0)},inputs:{paneRole:"paneRole",nav:["ngbNavOutlet","nav"]},attrs:Co,decls:1,vars:1,consts:[["ngFor","",3,"ngForOf"],["ngbNavPane","",3,"item","nav","role",4,"ngIf"],["ngbNavPane","",3,"item","nav","role"],[3,"ngTemplateOutlet","ngTemplateOutletContext"]],template:function(w,X){1&w&&r.YNc(0,To,1,1,"ng-template",0),2&w&&r.Q6J("ngForOf",X.nav.items)},directives:[u.sg,u.O5,Zo,u.tP],encapsulation:2,changeDetection:0}),Y})(),Xs=(()=>{class Y{}return Y.\u0275fac=function(w){return new(w||Y)},Y.\u0275mod=r.oAB({type:Y}),Y.\u0275inj=r.cJS({imports:[[u.ez]]}),Y})();class gf{constructor(fe,w){this.open=fe,this.close=w,w||(this.close=fe)}isManual(){return"manual"===this.open||"manual"===this.close}}const Ga={hover:["mouseenter","mouseleave"],focus:["focusin","focusout"]},nt=Y=>Y>0?(0,Ur.g)(Y):fe=>fe;function cr(Y,fe,w,X,ke,ct,Jn=0,Ir=0){const vi=function(Y,fe=Ga){const w=(Y||"").trim();if(0===w.length)return[];const X=w.split(/\s+/).map(ct=>ct.split(":")).map(ct=>{let Jn=fe[ct[0]]||ct;return new gf(Jn[0],Jn[1])}),ke=X.filter(ct=>ct.isManual());if(ke.length>1)throw"Triggers parse error: only one manual trigger is allowed";if(1===ke.length&&X.length>1)throw"Triggers parse error: manual trigger can't be mixed with other triggers";return X}(w);if(1===vi.length&&vi[0].isManual())return()=>{};const zi=function(Y,fe,w,X){return new se.y(ke=>{const ct=[],Jn=()=>ke.next(!0),Ir=()=>ke.next(!1),vi=()=>ke.next(!X());return w.forEach(zi=>{zi.open===zi.close?ct.push(Y.listen(fe,zi.open,vi)):ct.push(Y.listen(fe,zi.open,Jn),Y.listen(fe,zi.close,Ir))}),()=>{ct.forEach(zi=>zi())}})}(Y,fe,vi,X).pipe(function(Y,fe,w){return X=>{let ke=null;const ct=X.pipe((0,bt.U)(vi=>({open:vi})),(0,Ut.h)(vi=>{const zi=w();return zi===vi.open||ke&&ke.open!==zi?(ke&&ke.open!==vi.open&&(ke=null),!1):(ke=vi,!0)}),(0,Lr.B)()),Jn=ct.pipe((0,Ut.h)(vi=>vi.open),nt(Y)),Ir=ct.pipe((0,Ut.h)(vi=>!vi.open),nt(fe));return(0,ze.T)(Jn,Ir).pipe((0,Ut.h)(vi=>vi===ke&&(ke=null,vi.open!==w())),(0,bt.U)(vi=>vi.open))}}(Jn,Ir,X)).subscribe(Do=>Do?ke():ct());return()=>zi.unsubscribe()}let bi=(()=>{class Y{constructor(w){this._ngbConfig=w,this.autoClose=!0,this.placement="auto",this.triggers="click",this.disablePopover=!1,this.openDelay=0,this.closeDelay=0}get animation(){return void 0===this._animation?this._ngbConfig.animation:this._animation}set animation(w){this._animation=w}}return Y.\u0275fac=function(w){return new(w||Y)(r.LFG(Fs))},Y.\u0275prov=r.Yz7({factory:function(){return new Y(r.LFG(Fs))},token:Y,providedIn:"root"}),Y})(),cs=0,xa=(()=>{class Y{isTitleTemplate(){return this.title instanceof r.Rgc}}return Y.\u0275fac=function(w){return new(w||Y)},Y.\u0275cmp=r.Xpm({type:Y,selectors:[["ngb-popover-window"]],hostAttrs:["role","tooltip"],hostVars:5,hostBindings:function(w,X){2&w&&(r.Ikx("id",X.id),r.Tol("popover"+(X.popoverClass?" "+X.popoverClass:"")),r.ekj("fade",X.animation))},inputs:{animation:"animation",title:"title",id:"id",popoverClass:"popoverClass",context:"context"},ngContentSelectors:Hi,decls:4,vars:1,consts:[[1,"arrow"],["class","popover-header",4,"ngIf"],[1,"popover-body"],[1,"popover-header"],["simpleTitle",""],[3,"ngTemplateOutlet","ngTemplateOutletContext"]],template:function(w,X){1&w&&(r.F$t(),r._UZ(0,"div",0),r.YNc(1,el,4,2,"h3",1),r.TgZ(2,"div",2),r.Hsn(3),r.qZA()),2&w&&(r.xp6(1),r.Q6J("ngIf",X.title))},directives:[u.O5,u.tP],styles:["ngb-popover-window.bs-popover-bottom>.arrow,ngb-popover-window.bs-popover-top>.arrow{left:50%;margin-left:-.5rem}ngb-popover-window.bs-popover-bottom-left>.arrow,ngb-popover-window.bs-popover-top-left>.arrow{left:2em}ngb-popover-window.bs-popover-bottom-right>.arrow,ngb-popover-window.bs-popover-top-right>.arrow{left:auto;right:2em}ngb-popover-window.bs-popover-left>.arrow,ngb-popover-window.bs-popover-right>.arrow{top:50%;margin-top:-.5rem}ngb-popover-window.bs-popover-left-top>.arrow,ngb-popover-window.bs-popover-right-top>.arrow{top:.7em}ngb-popover-window.bs-popover-left-bottom>.arrow,ngb-popover-window.bs-popover-right-bottom>.arrow{top:auto;bottom:.7em}"],encapsulation:2,changeDetection:0}),Y})(),na=(()=>{class Y{constructor(w,X,ke,ct,Jn,Ir,vi,zi,Do,xs){this._elementRef=w,this._renderer=X,this._ngZone=vi,this._document=zi,this._changeDetector=Do,this.shown=new r.vpe,this.hidden=new r.vpe,this._ngbPopoverWindowId="ngb-popover-"+cs++,this._windowRef=null,this.animation=Ir.animation,this.autoClose=Ir.autoClose,this.placement=Ir.placement,this.triggers=Ir.triggers,this.container=Ir.container,this.disablePopover=Ir.disablePopover,this.popoverClass=Ir.popoverClass,this.openDelay=Ir.openDelay,this.closeDelay=Ir.closeDelay,this._popupService=new Lu(xa,ke,Jn,X,this._ngZone,ct,xs),this._zoneSubscription=vi.onStable.subscribe(()=>{this._windowRef&&Ye(this._elementRef.nativeElement,this._windowRef.location.nativeElement,this.placement,"body"===this.container,"bs-popover")})}_isDisabled(){return!(!this.disablePopover&&(this.ngbPopover||this.popoverTitle))}open(w){if(!this._windowRef&&!this._isDisabled()){const{windowRef:X,transition$:ke}=this._popupService.open(this.ngbPopover,w,this.animation);this._windowRef=X,this._windowRef.instance.animation=this.animation,this._windowRef.instance.title=this.popoverTitle,this._windowRef.instance.context=w,this._windowRef.instance.popoverClass=this.popoverClass,this._windowRef.instance.id=this._ngbPopoverWindowId,this._renderer.setAttribute(this._elementRef.nativeElement,"aria-describedby",this._ngbPopoverWindowId),"body"===this.container&&this._document.querySelector(this.container).appendChild(this._windowRef.location.nativeElement),this._windowRef.changeDetectorRef.detectChanges(),this._windowRef.changeDetectorRef.markForCheck(),la(this._ngZone,this._document,this.autoClose,()=>this.close(),this.hidden,[this._windowRef.location.nativeElement]),ke.subscribe(()=>this.shown.emit())}}close(){this._windowRef&&(this._renderer.removeAttribute(this._elementRef.nativeElement,"aria-describedby"),this._popupService.close(this.animation).subscribe(()=>{this._windowRef=null,this.hidden.emit(),this._changeDetector.markForCheck()}))}toggle(){this._windowRef?this.close():this.open()}isOpen(){return null!=this._windowRef}ngOnInit(){this._unregisterListenersFn=cr(this._renderer,this._elementRef.nativeElement,this.triggers,this.isOpen.bind(this),this.open.bind(this),this.close.bind(this),+this.openDelay,+this.closeDelay)}ngOnChanges({ngbPopover:w,popoverTitle:X,disablePopover:ke,popoverClass:ct}){ct&&this.isOpen()&&(this._windowRef.instance.popoverClass=ct.currentValue),(w||X||ke)&&this._isDisabled()&&this.close()}ngOnDestroy(){this.close(),this._unregisterListenersFn&&this._unregisterListenersFn(),this._zoneSubscription.unsubscribe()}}return Y.\u0275fac=function(w){return new(w||Y)(r.Y36(r.SBq),r.Y36(r.Qsj),r.Y36(r.zs3),r.Y36(r._Vd),r.Y36(r.s_b),r.Y36(bi),r.Y36(r.R0b),r.Y36(u.K0),r.Y36(r.sBO),r.Y36(r.z2F))},Y.\u0275dir=r.lG2({type:Y,selectors:[["","ngbPopover",""]],inputs:{animation:"animation",autoClose:"autoClose",placement:"placement",triggers:"triggers",container:"container",disablePopover:"disablePopover",popoverClass:"popoverClass",openDelay:"openDelay",closeDelay:"closeDelay",ngbPopover:"ngbPopover",popoverTitle:"popoverTitle"},outputs:{shown:"shown",hidden:"hidden"},exportAs:["ngbPopover"],features:[r.TTD]}),Y})(),_l=(()=>{class Y{}return Y.\u0275fac=function(w){return new(w||Y)},Y.\u0275mod=r.oAB({type:Y}),Y.\u0275inj=r.cJS({imports:[[u.ez]]}),Y})(),zl=(()=>{class Y{constructor(){this.max=100,this.animated=!1,this.striped=!1,this.showValue=!1}}return Y.\u0275fac=function(w){return new(w||Y)},Y.\u0275prov=r.Yz7({factory:function(){return new Y},token:Y,providedIn:"root"}),Y})(),zc=(()=>{class Y{constructor(w){this.value=0,this.max=w.max,this.animated=w.animated,this.striped=w.striped,this.textType=w.textType,this.type=w.type,this.showValue=w.showValue,this.height=w.height}set max(w){this._max=!ko(w)||w<=0?100:w}get max(){return this._max}getValue(){return function(Y,fe,w=0){return Math.max(Math.min(Y,fe),w)}(this.value,this.max)}getPercentValue(){return 100*this.getValue()/this.max}}return Y.\u0275fac=function(w){return new(w||Y)(r.Y36(zl))},Y.\u0275cmp=r.Xpm({type:Y,selectors:[["ngb-progressbar"]],hostAttrs:[1,"progress"],hostVars:2,hostBindings:function(w,X){2&w&&r.Udp("height",X.height)},inputs:{value:"value",max:"max",animated:"animated",striped:"striped",textType:"textType",type:"type",showValue:"showValue",height:"height"},ngContentSelectors:Hi,decls:3,vars:11,consts:function(){let fe;return fe="" + "\ufffd0\ufffd" + "",[["role","progressbar","aria-valuemin","0"],[4,"ngIf"],fe]},template:function(w,X){1&w&&(r.F$t(),r.TgZ(0,"div",0),r.YNc(1,ca,3,3,"span",1),r.Hsn(2),r.qZA()),2&w&&(r.DjV("progress-bar",X.type?" bg-"+X.type:"","",X.textType?" text-"+X.textType:"","\n ",X.animated?" progress-bar-animated":"","",X.striped?" progress-bar-striped":"",""),r.Udp("width",X.getPercentValue(),"%"),r.uIk("aria-valuenow",X.getValue())("aria-valuemax",X.max),r.xp6(1),r.Q6J("ngIf",X.showValue))},directives:[u.O5],pipes:[u.Zx],encapsulation:2,changeDetection:0}),Y})(),qf=(()=>{class Y{}return Y.\u0275fac=function(w){return new(w||Y)},Y.\u0275mod=r.oAB({type:Y}),Y.\u0275inj=r.cJS({imports:[[u.ez]]}),Y})();class mf{constructor(fe,w,X){this.hour=pi(fe),this.minute=pi(w),this.second=pi(X)}changeHour(fe=1){this.updateHour((isNaN(this.hour)?0:this.hour)+fe)}updateHour(fe){this.hour=ko(fe)?(fe<0?24+fe:fe)%24:NaN}changeMinute(fe=1){this.updateMinute((isNaN(this.minute)?0:this.minute)+fe)}updateMinute(fe){ko(fe)?(this.minute=fe%60<0?60+fe%60:fe%60,this.changeHour(Math.floor(fe/60))):this.minute=NaN}changeSecond(fe=1){this.updateSecond((isNaN(this.second)?0:this.second)+fe)}updateSecond(fe){ko(fe)?(this.second=fe<0?60+fe%60:fe%60,this.changeMinute(Math.floor(fe/60))):this.second=NaN}isValid(fe=!0){return ko(this.hour)&&ko(this.minute)&&(!fe||ko(this.second))}toString(){return`${this.hour||0}:${this.minute||0}:${this.second||0}`}}let Uf=(()=>{class Y{constructor(){this.meridian=!1,this.spinners=!0,this.seconds=!1,this.hourStep=1,this.minuteStep=1,this.secondStep=1,this.disabled=!1,this.readonlyInputs=!1,this.size="medium"}}return Y.\u0275fac=function(w){return new(w||Y)},Y.\u0275prov=r.Yz7({factory:function(){return new Y},token:Y,providedIn:"root"}),Y})();function dd(){return new pp}let Fd=(()=>{class Y{}return Y.\u0275fac=function(w){return new(w||Y)},Y.\u0275prov=r.Yz7({factory:dd,token:Y,providedIn:"root"}),Y})(),pp=(()=>{class Y extends Fd{fromModel(w){return w&&Eo(w.hour)&&Eo(w.minute)?{hour:w.hour,minute:w.minute,second:Eo(w.second)?w.second:null}:null}toModel(w){return w&&Eo(w.hour)&&Eo(w.minute)?{hour:w.hour,minute:w.minute,second:Eo(w.second)?w.second:null}:null}}return Y.\u0275fac=function(){let fe;return function(X){return(fe||(fe=r.n5z(Y)))(X||Y)}}(),Y.\u0275prov=r.Yz7({token:Y,factory:Y.\u0275fac}),Y})(),i_=(()=>{class Y{}return Y.\u0275fac=function(w){return new(w||Y)},Y.\u0275prov=r.Yz7({factory:function(){return function(Y){return new F_(Y)}(r.LFG(r.soG))},token:Y,providedIn:"root"}),Y})(),F_=(()=>{class Y extends i_{constructor(w){super(),this._periods=(0,u.ol)(w,u.x.Standalone,u.Tn.Narrow)}getMorningPeriod(){return this._periods[0]}getAfternoonPeriod(){return this._periods[1]}}return Y.\u0275fac=function(w){return new(w||Y)(r.LFG(r.soG))},Y.\u0275prov=r.Yz7({token:Y,factory:Y.\u0275fac}),Y})();const Bf=/[^0-9]/g;let kd=(()=>{class Y{constructor(w,X,ke,ct){this._config=w,this._ngbTimeAdapter=X,this._cd=ke,this.i18n=ct,this.onChange=Jn=>{},this.onTouched=()=>{},this.meridian=w.meridian,this.spinners=w.spinners,this.seconds=w.seconds,this.hourStep=w.hourStep,this.minuteStep=w.minuteStep,this.secondStep=w.secondStep,this.disabled=w.disabled,this.readonlyInputs=w.readonlyInputs,this.size=w.size}set hourStep(w){this._hourStep=Eo(w)?w:this._config.hourStep}get hourStep(){return this._hourStep}set minuteStep(w){this._minuteStep=Eo(w)?w:this._config.minuteStep}get minuteStep(){return this._minuteStep}set secondStep(w){this._secondStep=Eo(w)?w:this._config.secondStep}get secondStep(){return this._secondStep}writeValue(w){const X=this._ngbTimeAdapter.fromModel(w);this.model=X?new mf(X.hour,X.minute,X.second):new mf,!this.seconds&&(!X||!ko(X.second))&&(this.model.second=0),this._cd.markForCheck()}registerOnChange(w){this.onChange=w}registerOnTouched(w){this.onTouched=w}setDisabledState(w){this.disabled=w}changeHour(w){this.model.changeHour(w),this.propagateModelChange()}changeMinute(w){this.model.changeMinute(w),this.propagateModelChange()}changeSecond(w){this.model.changeSecond(w),this.propagateModelChange()}updateHour(w){const X=this.model.hour>=12,ke=pi(w);this.model.updateHour(this.meridian&&(X&&ke<12||!X&&12===ke)?ke+12:ke),this.propagateModelChange()}updateMinute(w){this.model.updateMinute(pi(w)),this.propagateModelChange()}updateSecond(w){this.model.updateSecond(pi(w)),this.propagateModelChange()}toggleMeridian(){this.meridian&&this.changeHour(12)}formatInput(w){w.value=w.value.replace(Bf,"")}formatHour(w){return ko(w)?sl(this.meridian?w%12==0?12:w%12:w%24):sl(NaN)}formatMinSec(w){return sl(ko(w)?w:NaN)}handleBlur(){this.onTouched()}get isSmallSize(){return"small"===this.size}get isLargeSize(){return"large"===this.size}ngOnChanges(w){w.seconds&&!this.seconds&&this.model&&!ko(this.model.second)&&(this.model.second=0,this.propagateModelChange(!1))}propagateModelChange(w=!0){w&&this.onTouched(),this.model.isValid(this.seconds)?this.onChange(this._ngbTimeAdapter.toModel({hour:this.model.hour,minute:this.model.minute,second:this.model.second})):this.onChange(this._ngbTimeAdapter.toModel(null))}}return Y.\u0275fac=function(w){return new(w||Y)(r.Y36(Uf),r.Y36(Fd),r.Y36(r.sBO),r.Y36(i_))},Y.\u0275cmp=r.Xpm({type:Y,selectors:[["ngb-timepicker"]],inputs:{meridian:"meridian",spinners:"spinners",seconds:"seconds",hourStep:"hourStep",minuteStep:"minuteStep",secondStep:"secondStep",readonlyInputs:"readonlyInputs",size:"size"},features:[r._Bn([{provide:Mr.JU,useExisting:(0,r.Gpc)(()=>Y),multi:!0}]),r.TTD],decls:16,vars:25,consts:function(){let fe,w,X,ke,ct,Jn,Ir,vi,zi,Do,xs,Xo,Rs,ma;return fe="HH",w="Hours",X="MM",ke="Minutes",ct="Increment hours",Jn="Decrement hours",Ir="Increment minutes",vi="Decrement minutes",zi="SS",Do="Seconds",xs="Increment seconds",Xo="Decrement seconds",Rs="" + "\ufffd0\ufffd" + "",ma="" + "\ufffd0\ufffd" + "",[[3,"disabled"],[1,"ngb-tp"],[1,"ngb-tp-input-container","ngb-tp-hour"],["tabindex","-1","type","button","class","btn btn-link",3,"btn-sm","btn-lg","disabled","click",4,"ngIf"],["type","text","maxlength","2","inputmode","numeric","placeholder",fe,"aria-label",w,1,"ngb-tp-input","form-control",3,"value","readOnly","disabled","change","blur","input","keydown.ArrowUp","keydown.ArrowDown"],[1,"ngb-tp-spacer"],[1,"ngb-tp-input-container","ngb-tp-minute"],["type","text","maxlength","2","inputmode","numeric","placeholder",X,"aria-label",ke,1,"ngb-tp-input","form-control",3,"value","readOnly","disabled","change","blur","input","keydown.ArrowUp","keydown.ArrowDown"],["class","ngb-tp-spacer",4,"ngIf"],["class","ngb-tp-input-container ngb-tp-second",4,"ngIf"],["class","ngb-tp-meridian",4,"ngIf"],["tabindex","-1","type","button",1,"btn","btn-link",3,"disabled","click"],[1,"chevron","ngb-tp-chevron"],[1,"sr-only"],ct,[1,"chevron","ngb-tp-chevron","bottom"],Jn,Ir,vi,[1,"ngb-tp-input-container","ngb-tp-second"],["type","text","maxlength","2","inputmode","numeric","placeholder",zi,"aria-label",Do,1,"ngb-tp-input","form-control",3,"value","readOnly","disabled","change","blur","input","keydown.ArrowUp","keydown.ArrowDown"],xs,Xo,[1,"ngb-tp-meridian"],["type","button",1,"btn","btn-outline-primary",3,"disabled","click"],[4,"ngIf","ngIfElse"],["am",""],Rs,ma]},template:function(w,X){1&w&&(r.TgZ(0,"fieldset",0),r.TgZ(1,"div",1),r.TgZ(2,"div",2),r.YNc(3,fo,4,7,"button",3),r.TgZ(4,"input",4),r.NdJ("change",function(ct){return X.updateHour(ct.target.value)})("blur",function(){return X.handleBlur()})("input",function(ct){return X.formatInput(ct.target)})("keydown.ArrowUp",function(ct){return X.changeHour(X.hourStep),ct.preventDefault()})("keydown.ArrowDown",function(ct){return X.changeHour(-X.hourStep),ct.preventDefault()}),r.qZA(),r.YNc(5,Ya,4,7,"button",3),r.qZA(),r.TgZ(6,"div",5),r._uU(7,":"),r.qZA(),r.TgZ(8,"div",6),r.YNc(9,Ao,4,7,"button",3),r.TgZ(10,"input",7),r.NdJ("change",function(ct){return X.updateMinute(ct.target.value)})("blur",function(){return X.handleBlur()})("input",function(ct){return X.formatInput(ct.target)})("keydown.ArrowUp",function(ct){return X.changeMinute(X.minuteStep),ct.preventDefault()})("keydown.ArrowDown",function(ct){return X.changeMinute(-X.minuteStep),ct.preventDefault()}),r.qZA(),r.YNc(11,fs,4,7,"button",3),r.qZA(),r.YNc(12,Ca,2,0,"div",8),r.YNc(13,Ws,4,9,"div",9),r.YNc(14,Po,1,0,"div",8),r.YNc(15,ps,5,9,"div",10),r.qZA(),r.qZA()),2&w&&(r.ekj("disabled",X.disabled),r.Q6J("disabled",X.disabled),r.xp6(3),r.Q6J("ngIf",X.spinners),r.xp6(1),r.ekj("form-control-sm",X.isSmallSize)("form-control-lg",X.isLargeSize),r.Q6J("value",X.formatHour(null==X.model?null:X.model.hour))("readOnly",X.readonlyInputs)("disabled",X.disabled),r.xp6(1),r.Q6J("ngIf",X.spinners),r.xp6(4),r.Q6J("ngIf",X.spinners),r.xp6(1),r.ekj("form-control-sm",X.isSmallSize)("form-control-lg",X.isLargeSize),r.Q6J("value",X.formatMinSec(null==X.model?null:X.model.minute))("readOnly",X.readonlyInputs)("disabled",X.disabled),r.xp6(1),r.Q6J("ngIf",X.spinners),r.xp6(1),r.Q6J("ngIf",X.seconds),r.xp6(1),r.Q6J("ngIf",X.seconds),r.xp6(1),r.Q6J("ngIf",X.meridian),r.xp6(1),r.Q6J("ngIf",X.meridian))},directives:[u.O5],styles:['ngb-timepicker{font-size:1rem}.ngb-tp{display:flex;align-items:center}.ngb-tp-input-container{width:4em}.ngb-tp-chevron:before{border-style:solid;border-width:.29em .29em 0 0;content:"";display:inline-block;height:.69em;left:.05em;position:relative;top:.15em;transform:rotate(-45deg);vertical-align:middle;width:.69em}.ngb-tp-chevron.bottom:before{top:-.3em;transform:rotate(135deg)}.ngb-tp-input{text-align:center}.ngb-tp-hour,.ngb-tp-meridian,.ngb-tp-minute,.ngb-tp-second{display:flex;flex-direction:column;align-items:center;justify-content:space-around}.ngb-tp-spacer{width:1em;text-align:center}'],encapsulation:2}),Y})(),Yf=(()=>{class Y{}return Y.\u0275fac=function(w){return new(w||Y)},Y.\u0275mod=r.oAB({type:Y}),Y.\u0275inj=r.cJS({imports:[[u.ez]]}),Y})(),rh=(()=>{class Y{constructor(w){this._ngbConfig=w,this.autoClose=!0,this.placement="auto",this.triggers="hover focus",this.disableTooltip=!1,this.openDelay=0,this.closeDelay=0}get animation(){return void 0===this._animation?this._ngbConfig.animation:this._animation}set animation(w){this._animation=w}}return Y.\u0275fac=function(w){return new(w||Y)(r.LFG(Fs))},Y.\u0275prov=r.Yz7({factory:function(){return new Y(r.LFG(Fs))},token:Y,providedIn:"root"}),Y})(),Ed=0,xf=(()=>{class Y{}return Y.\u0275fac=function(w){return new(w||Y)},Y.\u0275cmp=r.Xpm({type:Y,selectors:[["ngb-tooltip-window"]],hostAttrs:["role","tooltip"],hostVars:5,hostBindings:function(w,X){2&w&&(r.Ikx("id",X.id),r.Tol("tooltip"+(X.tooltipClass?" "+X.tooltipClass:"")),r.ekj("fade",X.animation))},inputs:{animation:"animation",id:"id",tooltipClass:"tooltipClass"},ngContentSelectors:Hi,decls:3,vars:0,consts:[[1,"arrow"],[1,"tooltip-inner"]],template:function(w,X){1&w&&(r.F$t(),r._UZ(0,"div",0),r.TgZ(1,"div",1),r.Hsn(2),r.qZA())},styles:["ngb-tooltip-window{pointer-events:none}ngb-tooltip-window .tooltip-inner{pointer-events:auto}ngb-tooltip-window.bs-tooltip-bottom .arrow,ngb-tooltip-window.bs-tooltip-top .arrow{left:calc(50% - .4rem)}ngb-tooltip-window.bs-tooltip-bottom-left .arrow,ngb-tooltip-window.bs-tooltip-top-left .arrow{left:1em}ngb-tooltip-window.bs-tooltip-bottom-right .arrow,ngb-tooltip-window.bs-tooltip-top-right .arrow{left:auto;right:.8rem}ngb-tooltip-window.bs-tooltip-left .arrow,ngb-tooltip-window.bs-tooltip-right .arrow{top:calc(50% - .4rem)}ngb-tooltip-window.bs-tooltip-left-top .arrow,ngb-tooltip-window.bs-tooltip-right-top .arrow{top:.4rem}ngb-tooltip-window.bs-tooltip-left-bottom .arrow,ngb-tooltip-window.bs-tooltip-right-bottom .arrow{top:auto;bottom:.4rem}"],encapsulation:2,changeDetection:0}),Y})(),Ph=(()=>{class Y{constructor(w,X,ke,ct,Jn,Ir,vi,zi,Do,xs){this._elementRef=w,this._renderer=X,this._ngZone=vi,this._document=zi,this._changeDetector=Do,this.shown=new r.vpe,this.hidden=new r.vpe,this._ngbTooltipWindowId="ngb-tooltip-"+Ed++,this._windowRef=null,this.animation=Ir.animation,this.autoClose=Ir.autoClose,this.placement=Ir.placement,this.triggers=Ir.triggers,this.container=Ir.container,this.disableTooltip=Ir.disableTooltip,this.tooltipClass=Ir.tooltipClass,this.openDelay=Ir.openDelay,this.closeDelay=Ir.closeDelay,this._popupService=new Lu(xf,ke,Jn,X,this._ngZone,ct,xs),this._zoneSubscription=vi.onStable.subscribe(()=>{this._windowRef&&Ye(this._elementRef.nativeElement,this._windowRef.location.nativeElement,this.placement,"body"===this.container,"bs-tooltip")})}set ngbTooltip(w){this._ngbTooltip=w,!w&&this._windowRef&&this.close()}get ngbTooltip(){return this._ngbTooltip}open(w){if(!this._windowRef&&this._ngbTooltip&&!this.disableTooltip){const{windowRef:X,transition$:ke}=this._popupService.open(this._ngbTooltip,w,this.animation);this._windowRef=X,this._windowRef.instance.animation=this.animation,this._windowRef.instance.tooltipClass=this.tooltipClass,this._windowRef.instance.id=this._ngbTooltipWindowId,this._renderer.setAttribute(this._elementRef.nativeElement,"aria-describedby",this._ngbTooltipWindowId),"body"===this.container&&this._document.querySelector(this.container).appendChild(this._windowRef.location.nativeElement),this._windowRef.changeDetectorRef.detectChanges(),this._windowRef.changeDetectorRef.markForCheck(),la(this._ngZone,this._document,this.autoClose,()=>this.close(),this.hidden,[this._windowRef.location.nativeElement]),ke.subscribe(()=>this.shown.emit())}}close(){null!=this._windowRef&&(this._renderer.removeAttribute(this._elementRef.nativeElement,"aria-describedby"),this._popupService.close(this.animation).subscribe(()=>{this._windowRef=null,this.hidden.emit(),this._changeDetector.markForCheck()}))}toggle(){this._windowRef?this.close():this.open()}isOpen(){return null!=this._windowRef}ngOnInit(){this._unregisterListenersFn=cr(this._renderer,this._elementRef.nativeElement,this.triggers,this.isOpen.bind(this),this.open.bind(this),this.close.bind(this),+this.openDelay,+this.closeDelay)}ngOnChanges({tooltipClass:w}){w&&this.isOpen()&&(this._windowRef.instance.tooltipClass=w.currentValue)}ngOnDestroy(){this.close(),this._unregisterListenersFn&&this._unregisterListenersFn(),this._zoneSubscription.unsubscribe()}}return Y.\u0275fac=function(w){return new(w||Y)(r.Y36(r.SBq),r.Y36(r.Qsj),r.Y36(r.zs3),r.Y36(r._Vd),r.Y36(r.s_b),r.Y36(rh),r.Y36(r.R0b),r.Y36(u.K0),r.Y36(r.sBO),r.Y36(r.z2F))},Y.\u0275dir=r.lG2({type:Y,selectors:[["","ngbTooltip",""]],inputs:{animation:"animation",autoClose:"autoClose",placement:"placement",triggers:"triggers",container:"container",disableTooltip:"disableTooltip",tooltipClass:"tooltipClass",openDelay:"openDelay",closeDelay:"closeDelay",ngbTooltip:"ngbTooltip"},outputs:{shown:"shown",hidden:"hidden"},exportAs:["ngbTooltip"],features:[r.TTD]}),Y})(),Bp=(()=>{class Y{}return Y.\u0275fac=function(w){return new(w||Y)},Y.\u0275mod=r.oAB({type:Y}),Y.\u0275inj=r.cJS({}),Y})(),ih=(()=>{class Y{constructor(){this.highlightClass="ngb-highlight",this.accentSensitive=!0}ngOnChanges(w){!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);const X=xi(this.result),ke=Array.isArray(this.term)?this.term:[this.term],ct=zi=>this.accentSensitive?zi:Hl(zi),Jn=ke.map(zi=>function(Y){return Y.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&")}(ct(xi(zi)))).filter(zi=>zi),Ir=this.accentSensitive?X:Hl(X),vi=Jn.length?Ir.split(new RegExp(`(${Jn.join("|")})`,"gmi")):[X];if(this.accentSensitive)this.parts=vi;else{let zi=0;this.parts=vi.map(Do=>X.substring(zi,zi+=Do.length))}}}return Y.\u0275fac=function(w){return new(w||Y)},Y.\u0275cmp=r.Xpm({type:Y,selectors:[["ngb-highlight"]],inputs:{highlightClass:"highlightClass",accentSensitive:"accentSensitive",result:"result",term:"term"},features:[r.TTD],decls:1,vars:1,consts:[["ngFor","",3,"ngForOf"],[3,"class",4,"ngIf","ngIfElse"],["even",""]],template:function(w,X){1&w&&r.YNc(0,ne,3,2,"ng-template",0),2&w&&r.Q6J("ngForOf",X.parts)},directives:[u.sg,u.O5],styles:[".ngb-highlight{font-weight:700}"],encapsulation:2,changeDetection:0}),Y})(),Ih=(()=>{class Y{constructor(){this.activeIdx=0,this.focusFirst=!0,this.formatter=xi,this.selectEvent=new r.vpe,this.activeChangeEvent=new r.vpe}hasActive(){return this.activeIdx>-1&&this.activeIdx=0?this.id+"-"+this.activeIdx:void 0)}}return Y.\u0275fac=function(w){return new(w||Y)},Y.\u0275cmp=r.Xpm({type:Y,selectors:[["ngb-typeahead-window"]],hostAttrs:["role","listbox"],hostVars:3,hostBindings:function(w,X){1&w&&r.NdJ("mousedown",function(ct){return ct.preventDefault()}),2&w&&(r.Ikx("id",X.id),r.Tol("dropdown-menu show"+(X.popupClass?" "+X.popupClass:"")))},inputs:{focusFirst:"focusFirst",formatter:"formatter",id:"id",results:"results",term:"term",resultTemplate:"resultTemplate",popupClass:"popupClass"},outputs:{selectEvent:"select",activeChangeEvent:"activeChange"},exportAs:["ngbTypeaheadWindow"],decls:3,vars:1,consts:[["rt",""],["ngFor","",3,"ngForOf"],[3,"result","term"],["type","button","role","option",1,"dropdown-item",3,"id","mouseenter","click"],[3,"ngTemplateOutlet","ngTemplateOutletContext"]],template:function(w,X){1&w&&(r.YNc(0,$e,1,2,"ng-template",null,0,r.W1O),r.YNc(2,ti,2,9,"ng-template",1)),2&w&&(r.xp6(2),r.Q6J("ngForOf",X.results))},directives:[u.sg,ih,u.tP],encapsulation:2}),Y})();const vf=new r.OlP("live announcer delay",{providedIn:"root",factory:function(){return 100}});function $d(Y,fe=!1){let w=Y.body.querySelector("#ngb-live");return null==w&&fe&&(w=Y.createElement("div"),w.setAttribute("id","ngb-live"),w.setAttribute("aria-live","polite"),w.setAttribute("aria-atomic","true"),w.classList.add("sr-only"),Y.body.appendChild(w)),w}let hp=(()=>{class Y{constructor(w,X){this._document=w,this._delay=X}ngOnDestroy(){const w=$d(this._document);w&&w.parentElement.removeChild(w)}say(w){const X=$d(this._document,!0),ke=this._delay;if(null!=X){X.textContent="";const ct=()=>X.textContent=w;null===ke?ct():setTimeout(ct,ke)}}}return Y.\u0275fac=function(w){return new(w||Y)(r.LFG(u.K0),r.LFG(vf))},Y.\u0275prov=r.Yz7({factory:function(){return new Y(r.LFG(u.K0),r.LFG(vf))},token:Y,providedIn:"root"}),Y})(),Zf=(()=>{class Y{constructor(){this.editable=!0,this.focusFirst=!0,this.showHint=!1,this.placement=["bottom-left","bottom-right","top-left","top-right"]}}return Y.\u0275fac=function(w){return new(w||Y)},Y.\u0275prov=r.Yz7({factory:function(){return new Y},token:Y,providedIn:"root"}),Y})(),qd=0,ac=(()=>{class Y{constructor(w,X,ke,ct,Jn,Ir,vi,zi,Do,xs,Xo,Rs){this._elementRef=w,this._renderer=ke,this._live=zi,this._document=Do,this._ngZone=xs,this._changeDetector=Xo,this._subscription=null,this._closed$=new he.xQ,this._inputValueBackup=null,this._windowRef=null,this.autocomplete="off",this.placement="bottom-left",this.selectItem=new r.vpe,this.activeDescendant=null,this.popupId="ngb-typeahead-"+qd++,this._onTouched=()=>{},this._onChange=ma=>{},this.container=Ir.container,this.editable=Ir.editable,this.focusFirst=Ir.focusFirst,this.showHint=Ir.showHint,this.placement=Ir.placement,this._valueChanges=(0,ge.R)(w.nativeElement,"input").pipe((0,bt.U)(ma=>ma.target.value)),this._resubscribeTypeahead=new ce.X(null),this._popupService=new Lu(Ih,ct,X,ke,this._ngZone,Jn,Rs),this._zoneSubscription=vi.onStable.subscribe(()=>{this.isPopupOpen()&&Ye(this._elementRef.nativeElement,this._windowRef.location.nativeElement,this.placement,"body"===this.container)})}ngOnInit(){this._subscribeToUserInput()}ngOnChanges({ngbTypeahead:w}){w&&!w.firstChange&&(this._unsubscribeFromUserInput(),this._subscribeToUserInput())}ngOnDestroy(){this._closePopup(),this._unsubscribeFromUserInput(),this._zoneSubscription.unsubscribe()}registerOnChange(w){this._onChange=w}registerOnTouched(w){this._onTouched=w}writeValue(w){this._writeInputValue(this._formatItemForInput(w)),this.showHint&&(this._inputValueBackup=w)}setDisabledState(w){this._renderer.setProperty(this._elementRef.nativeElement,"disabled",w)}dismissPopup(){this.isPopupOpen()&&(this._resubscribeTypeahead.next(null),this._closePopup(),this.showHint&&null!==this._inputValueBackup&&this._writeInputValue(this._inputValueBackup),this._changeDetector.markForCheck())}isPopupOpen(){return null!=this._windowRef}handleBlur(){this._resubscribeTypeahead.next(null),this._onTouched()}handleKeyDown(w){if(this.isPopupOpen())switch(w.which){case $i.ArrowDown:w.preventDefault(),this._windowRef.instance.next(),this._showHint();break;case $i.ArrowUp:w.preventDefault(),this._windowRef.instance.prev(),this._showHint();break;case $i.Enter:case $i.Tab:const X=this._windowRef.instance.getActive();ba(X)&&(w.preventDefault(),w.stopPropagation(),this._selectResult(X)),this._closePopup()}}_openPopup(){if(!this.isPopupOpen()){this._inputValueBackup=this._elementRef.nativeElement.value;const{windowRef:w}=this._popupService.open();this._windowRef=w,this._windowRef.instance.id=this.popupId,this._windowRef.instance.selectEvent.subscribe(X=>this._selectResultClosePopup(X)),this._windowRef.instance.activeChangeEvent.subscribe(X=>this.activeDescendant=X),this._windowRef.instance.popupClass=this.popupClass,"body"===this.container&&this._document.querySelector(this.container).appendChild(this._windowRef.location.nativeElement),this._changeDetector.markForCheck(),la(this._ngZone,this._document,"outside",()=>this.dismissPopup(),this._closed$,[this._elementRef.nativeElement,this._windowRef.location.nativeElement])}}_closePopup(){this._popupService.close().subscribe(()=>{this._closed$.next(),this._windowRef=null,this.activeDescendant=null})}_selectResult(w){let X=!1;this.selectItem.emit({item:w,preventDefault:()=>{X=!0}}),this._resubscribeTypeahead.next(null),X||(this.writeValue(w),this._onChange(w))}_selectResultClosePopup(w){this._selectResult(w),this._closePopup()}_showHint(){var w;if(this.showHint&&(null===(w=this._windowRef)||void 0===w?void 0:w.instance.hasActive())&&null!=this._inputValueBackup){const X=this._inputValueBackup.toLowerCase(),ke=this._formatItemForInput(this._windowRef.instance.getActive());X===ke.substr(0,this._inputValueBackup.length).toLowerCase()?(this._writeInputValue(this._inputValueBackup+ke.substr(this._inputValueBackup.length)),this._elementRef.nativeElement.setSelectionRange.apply(this._elementRef.nativeElement,[this._inputValueBackup.length,ke.length])):this._writeInputValue(ke)}}_formatItemForInput(w){return null!=w&&this.inputFormatter?this.inputFormatter(w):xi(w)}_writeInputValue(w){this._renderer.setProperty(this._elementRef.nativeElement,"value",xi(w))}_subscribeToUserInput(){const w=this._valueChanges.pipe((0,Zn.b)(X=>{this._inputValueBackup=this.showHint?X:null,this._onChange(this.editable?X:void 0)}),this.ngbTypeahead?this.ngbTypeahead:()=>(0,ie.of)([]));this._subscription=this._resubscribeTypeahead.pipe((0,Xt.w)(()=>w)).subscribe(X=>{X&&0!==X.length?(this._openPopup(),this._windowRef.instance.focusFirst=this.focusFirst,this._windowRef.instance.results=X,this._windowRef.instance.term=this._elementRef.nativeElement.value,this.resultFormatter&&(this._windowRef.instance.formatter=this.resultFormatter),this.resultTemplate&&(this._windowRef.instance.resultTemplate=this.resultTemplate),this._windowRef.instance.resetActive(),this._windowRef.changeDetectorRef.detectChanges(),this._showHint()):this._closePopup();const ke=X?X.length:0;this._live.say(0===ke?"No results available":`${ke} result${1===ke?"":"s"} available`)})}_unsubscribeFromUserInput(){this._subscription&&this._subscription.unsubscribe(),this._subscription=null}}return Y.\u0275fac=function(w){return new(w||Y)(r.Y36(r.SBq),r.Y36(r.s_b),r.Y36(r.Qsj),r.Y36(r.zs3),r.Y36(r._Vd),r.Y36(Zf),r.Y36(r.R0b),r.Y36(hp),r.Y36(u.K0),r.Y36(r.R0b),r.Y36(r.sBO),r.Y36(r.z2F))},Y.\u0275dir=r.lG2({type:Y,selectors:[["input","ngbTypeahead",""]],hostAttrs:["autocapitalize","off","autocorrect","off","role","combobox","aria-multiline","false"],hostVars:7,hostBindings:function(w,X){1&w&&r.NdJ("blur",function(){return X.handleBlur()})("keydown",function(ct){return X.handleKeyDown(ct)}),2&w&&(r.Ikx("autocomplete",X.autocomplete),r.uIk("aria-autocomplete",X.showHint?"both":"list")("aria-activedescendant",X.activeDescendant)("aria-owns",X.isPopupOpen()?X.popupId:null)("aria-expanded",X.isPopupOpen()),r.ekj("open",X.isPopupOpen()))},inputs:{autocomplete:"autocomplete",placement:"placement",container:"container",editable:"editable",focusFirst:"focusFirst",showHint:"showHint",inputFormatter:"inputFormatter",ngbTypeahead:"ngbTypeahead",resultFormatter:"resultFormatter",resultTemplate:"resultTemplate",popupClass:"popupClass"},outputs:{selectItem:"selectItem"},exportAs:["ngbTypeahead"],features:[r._Bn([{provide:Mr.JU,useExisting:(0,r.Gpc)(()=>Y),multi:!0}]),r.TTD]}),Y})(),oh=(()=>{class Y{}return Y.\u0275fac=function(w){return new(w||Y)},Y.\u0275mod=r.oAB({type:Y}),Y.\u0275inj=r.cJS({imports:[[u.ez]]}),Y})()},84051:(v,T,i)=>{"use strict";i.d(T,{vq:()=>lo,ii:()=>rr,Ke:()=>fo,nE:()=>$s,dX:()=>jo,$7:()=>os,AR:()=>Gi,xD:()=>So,Sr:()=>us,Hg:()=>gr});var r=i(74788),u=i(12057),p=i(79765),d=i(22759),e=i(26215),_=i(46782),y=i(64762);const S=["*"];function A(tt,sn){1&tt&&r._UZ(0,"datatable-progress")}function N(tt,sn){if(1&tt&&r._UZ(0,"datatable-summary-row",9),2&tt){const ne=r.oxw(2);r.Q6J("rowHeight",ne.summaryHeight)("offsetX",ne.offsetX)("innerWidth",ne.innerWidth)("rows",ne.rows)("columns",ne.columns)}}function L(tt,sn){if(1&tt){const ne=r.EpF();r.TgZ(0,"datatable-body-row",13),r.NdJ("treeAction",function(){r.CHM(ne);const Lt=r.oxw().$implicit;return r.oxw(2).onTreeAction(Lt)})("activate",function(Lt){r.CHM(ne);const an=r.oxw().index,ti=r.oxw(2);return r.MAs(2).onActivate(Lt,ti.indexes.first+an)}),r.qZA()}if(2&tt){const ne=r.oxw().$implicit,$e=r.oxw(2),Lt=r.MAs(2);r.Q6J("isSelected",Lt.getRowSelected(ne))("innerWidth",$e.innerWidth)("offsetX",$e.offsetX)("columns",$e.columns)("rowHeight",$e.getRowHeight(ne))("row",ne)("rowIndex",$e.getRowIndex(ne))("expanded",$e.getRowExpanded(ne))("rowClass",$e.rowClass)("displayCheck",$e.displayCheck)("treeStatus",ne&&ne.treeStatus)}}function Z(tt,sn){if(1&tt){const ne=r.EpF();r.TgZ(0,"datatable-body-row",15),r.NdJ("activate",function(Lt){const ti=r.CHM(ne).index;return r.oxw(4),r.MAs(2).onActivate(Lt,ti)}),r.qZA()}if(2&tt){const ne=sn.$implicit,$e=r.oxw(2).$implicit,Lt=r.oxw(2),an=r.MAs(2);r.Q6J("isSelected",an.getRowSelected(ne))("innerWidth",Lt.innerWidth)("offsetX",Lt.offsetX)("columns",Lt.columns)("rowHeight",Lt.getRowHeight(ne))("row",ne)("group",$e.value)("rowIndex",Lt.getRowIndex(ne))("expanded",Lt.getRowExpanded(ne))("rowClass",Lt.rowClass)}}function J(tt,sn){if(1&tt&&r.YNc(0,Z,1,10,"datatable-body-row",14),2&tt){const ne=r.oxw().$implicit,$e=r.oxw(2);r.Q6J("ngForOf",ne.value)("ngForTrackBy",$e.rowTrackingFn)}}function K(tt,sn){if(1&tt){const ne=r.EpF();r.TgZ(0,"datatable-row-wrapper",10),r.NdJ("rowContextmenu",function(Lt){return r.CHM(ne),r.oxw(2).rowContextmenu.emit(Lt)}),r.YNc(1,L,1,11,"datatable-body-row",11),r.YNc(2,J,1,2,"ng-template",null,12,r.W1O),r.qZA()}if(2&tt){const ne=sn.$implicit,$e=sn.index,Lt=r.MAs(3),an=r.oxw(2);r.Q6J("groupedRows",an.groupedRows)("innerWidth",an.innerWidth)("ngStyle",an.getRowsStyles(ne))("rowDetail",an.rowDetail)("groupHeader",an.groupHeader)("offsetX",an.offsetX)("detailRowHeight",an.getDetailRowHeight(ne&&ne[$e],$e))("row",ne)("expanded",an.getRowExpanded(ne))("rowIndex",an.getRowIndex(ne&&ne[$e])),r.xp6(1),r.Q6J("ngIf",!an.groupedRows)("ngIfElse",Lt)}}function ee(tt,sn){if(1&tt&&r._UZ(0,"datatable-summary-row",16),2&tt){const ne=r.oxw(2);r.Q6J("ngStyle",ne.getBottomSummaryRowStyles())("rowHeight",ne.summaryHeight)("offsetX",ne.offsetX)("innerWidth",ne.innerWidth)("rows",ne.rows)("columns",ne.columns)}}function ue(tt,sn){if(1&tt){const ne=r.EpF();r.TgZ(0,"datatable-scroller",5),r.NdJ("scroll",function(Lt){return r.CHM(ne),r.oxw().onBodyScroll(Lt)}),r.YNc(1,N,1,5,"datatable-summary-row",6),r.YNc(2,K,4,12,"datatable-row-wrapper",7),r.YNc(3,ee,1,6,"datatable-summary-row",8),r.qZA()}if(2&tt){const ne=r.oxw();r.Q6J("scrollbarV",ne.scrollbarV)("scrollbarH",ne.scrollbarH)("scrollHeight",ne.scrollHeight)("scrollWidth",null==ne.columnGroupWidths?null:ne.columnGroupWidths.total),r.xp6(1),r.Q6J("ngIf",ne.summaryRow&&"top"===ne.summaryPosition),r.xp6(1),r.Q6J("ngForOf",ne.temp)("ngForTrackBy",ne.rowTrackingFn),r.xp6(1),r.Q6J("ngIf",ne.summaryRow&&"bottom"===ne.summaryPosition)}}function ae(tt,sn){if(1&tt&&r._UZ(0,"div",17),2&tt){const ne=r.oxw();r.Q6J("innerHTML",ne.emptyMessage,r.oJD)}}function H(tt,sn){if(1&tt){const ne=r.EpF();r.TgZ(0,"datatable-header-cell",4),r.NdJ("resize",function(Lt){const ti=r.CHM(ne).$implicit;return r.oxw(2).onColumnResized(Lt,ti)})("longPressStart",function(Lt){return r.CHM(ne),r.oxw(2).onLongPressStart(Lt)})("longPressEnd",function(Lt){return r.CHM(ne),r.oxw(2).onLongPressEnd(Lt)})("sort",function(Lt){return r.CHM(ne),r.oxw(2).onSort(Lt)})("select",function(Lt){return r.CHM(ne),r.oxw(2).select.emit(Lt)})("columnContextmenu",function(Lt){return r.CHM(ne),r.oxw(2).columnContextmenu.emit(Lt)}),r.qZA()}if(2&tt){const ne=sn.$implicit,$e=r.oxw(2);r.Q6J("resizeEnabled",ne.resizeable)("pressModel",ne)("pressEnabled",$e.reorderable&&ne.draggable)("dragX",$e.reorderable&&ne.draggable&&ne.dragging)("dragY",!1)("dragModel",ne)("dragEventTarget",$e.dragEventTarget)("headerHeight",$e.headerHeight)("isTarget",ne.isTarget)("targetMarkerTemplate",$e.targetMarkerTemplate)("targetMarkerContext",ne.targetMarkerContext)("column",ne)("sortType",$e.sortType)("sorts",$e.sorts)("selectionType",$e.selectionType)("sortAscendingIcon",$e.sortAscendingIcon)("sortDescendingIcon",$e.sortDescendingIcon)("sortUnsetIcon",$e.sortUnsetIcon)("allRowsSelected",$e.allRowsSelected)}}function se(tt,sn){if(1&tt&&(r.TgZ(0,"div",2),r.YNc(1,H,1,19,"datatable-header-cell",3),r.qZA()),2&tt){const ne=sn.$implicit,$e=r.oxw();r.Tol("datatable-row-"+ne.type),r.Q6J("ngStyle",$e._styleByGroup[ne.type]),r.xp6(1),r.Q6J("ngForOf",ne.columns)("ngForTrackBy",$e.columnTrackingFn)}}function Ee(tt,sn){if(1&tt){const ne=r.EpF();r.TgZ(0,"datatable-header",4),r.NdJ("sort",function(Lt){return r.CHM(ne),r.oxw().onColumnSort(Lt)})("resize",function(Lt){return r.CHM(ne),r.oxw().onColumnResize(Lt)})("reorder",function(Lt){return r.CHM(ne),r.oxw().onColumnReorder(Lt)})("select",function(Lt){return r.CHM(ne),r.oxw().onHeaderSelect(Lt)})("columnContextmenu",function(Lt){return r.CHM(ne),r.oxw().onColumnContextmenu(Lt)}),r.ALo(1,"async"),r.qZA()}if(2&tt){const ne=r.oxw();r.Q6J("sorts",ne.sorts)("sortType",ne.sortType)("scrollbarH",ne.scrollbarH)("innerWidth",ne._innerWidth)("offsetX",r.lcZ(1,15,ne._offsetX))("dealsWithGroup",void 0!==ne.groupedRows)("columns",ne._internalColumns)("headerHeight",ne.headerHeight)("reorderable",ne.reorderable)("targetMarkerTemplate",ne.targetMarkerTemplate)("sortAscendingIcon",ne.cssClasses.sortAscending)("sortDescendingIcon",ne.cssClasses.sortDescending)("sortUnsetIcon",ne.cssClasses.sortUnset)("allRowsSelected",ne.allRowsSelected)("selectionType",ne.selectionType)}}function ie(tt,sn){if(1&tt){const ne=r.EpF();r.TgZ(0,"datatable-footer",5),r.NdJ("page",function(Lt){return r.CHM(ne),r.oxw().onFooterPage(Lt)}),r.qZA()}if(2&tt){const ne=r.oxw();r.Q6J("rowCount",ne.rowCount)("pageSize",ne.pageSize)("offset",ne.offset)("footerHeight",ne.footerHeight)("footerTemplate",ne.footer)("totalMessage",ne.messages.totalMessage)("pagerLeftArrowIcon",ne.cssClasses.pagerLeftArrow)("pagerRightArrowIcon",ne.cssClasses.pagerRightArrow)("pagerPreviousIcon",ne.cssClasses.pagerPrevious)("selectedCount",ne.selected.length)("selectedMessage",!!ne.selectionType&&ne.messages.selectedMessage)("pagerNextIcon",ne.cssClasses.pagerNext)}}function he(tt,sn){}function ge(tt,sn){if(1&tt&&r.YNc(0,he,0,0,"ng-template",5),2&tt){const ne=r.oxw();r.Q6J("ngTemplateOutlet",ne.targetMarkerTemplate)("ngTemplateOutletContext",ne.targetMarkerContext)}}function De(tt,sn){if(1&tt){const ne=r.EpF();r.TgZ(0,"label",6),r.TgZ(1,"input",7),r.NdJ("change",function(){r.CHM(ne);const Lt=r.oxw();return Lt.select.emit(!Lt.allRowsSelected)}),r.qZA(),r.qZA()}if(2&tt){const ne=r.oxw();r.xp6(1),r.Q6J("checked",ne.allRowsSelected)}}function ce(tt,sn){if(1&tt){const ne=r.EpF();r.TgZ(0,"span",8),r.TgZ(1,"span",9),r.NdJ("click",function(){return r.CHM(ne),r.oxw().onSort()}),r.qZA(),r.qZA()}if(2&tt){const ne=r.oxw();r.xp6(1),r.Q6J("innerHTML",ne.name,r.oJD)}}function lt(tt,sn){}function Ve(tt,sn){if(1&tt&&r.YNc(0,lt,0,0,"ng-template",5),2&tt){const ne=r.oxw();r.Q6J("ngTemplateOutlet",ne.column.headerTemplate)("ngTemplateOutletContext",ne.cellContext)}}function ze(tt,sn){}const Be=function(tt,sn,ne,$e,Lt){return{rowCount:tt,pageSize:sn,selectedCount:ne,curPage:$e,offset:Lt}};function Pe(tt,sn){if(1&tt&&r.YNc(0,ze,0,0,"ng-template",4),2&tt){const ne=r.oxw();r.Q6J("ngTemplateOutlet",ne.footerTemplate.template)("ngTemplateOutletContext",r.qbA(2,Be,ne.rowCount,ne.pageSize,ne.selectedCount,ne.curPage,ne.offset))}}function je(tt,sn){if(1&tt&&(r.TgZ(0,"span"),r._uU(1),r.qZA()),2&tt){const ne=r.oxw(2);r.xp6(1),r.AsE(" ",null==ne.selectedCount?null:ne.selectedCount.toLocaleString()," ",ne.selectedMessage," / ")}}function He(tt,sn){if(1&tt&&(r.TgZ(0,"div",5),r.YNc(1,je,2,2,"span",1),r._uU(2),r.qZA()),2&tt){const ne=r.oxw();r.xp6(1),r.Q6J("ngIf",ne.selectedMessage),r.xp6(1),r.AsE(" ",null==ne.rowCount?null:ne.rowCount.toLocaleString()," ",ne.totalMessage," ")}}function Vt(tt,sn){if(1&tt){const ne=r.EpF();r.TgZ(0,"datatable-pager",6),r.NdJ("change",function(Lt){return r.CHM(ne),r.oxw().page.emit(Lt)}),r.qZA()}if(2&tt){const ne=r.oxw();r.Q6J("pagerLeftArrowIcon",ne.pagerLeftArrowIcon)("pagerRightArrowIcon",ne.pagerRightArrowIcon)("pagerPreviousIcon",ne.pagerPreviousIcon)("pagerNextIcon",ne.pagerNextIcon)("page",ne.curPage)("size",ne.pageSize)("count",ne.rowCount)("hidden",!ne.isVisible)}}const it=function(tt){return{"selected-count":tt}};function tn(tt,sn){if(1&tt){const ne=r.EpF();r.TgZ(0,"li",6),r.TgZ(1,"a",7),r.NdJ("click",function(){const an=r.CHM(ne).$implicit;return r.oxw().selectPage(an.number)}),r._uU(2),r.qZA(),r.qZA()}if(2&tt){const ne=sn.$implicit,$e=r.oxw();r.ekj("active",ne.number===$e.page),r.uIk("aria-label","page "+ne.number),r.xp6(2),r.hij(" ",ne.text," ")}}function It(tt,sn){if(1&tt){const ne=r.EpF();r.TgZ(0,"datatable-body-cell",3),r.NdJ("activate",function(Lt){const ti=r.CHM(ne).index;return r.oxw(2).onActivate(Lt,ti)})("treeAction",function(){return r.CHM(ne),r.oxw(2).onTreeAction()}),r.qZA()}if(2&tt){const ne=sn.$implicit,$e=r.oxw(2);r.Q6J("row",$e.row)("group",$e.group)("expanded",$e.expanded)("isSelected",$e.isSelected)("rowIndex",$e.rowIndex)("column",ne)("rowHeight",$e.rowHeight)("displayCheck",$e.displayCheck)("treeStatus",$e.treeStatus)}}function Zt(tt,sn){if(1&tt&&(r.TgZ(0,"div",1),r.YNc(1,It,1,9,"datatable-body-cell",2),r.qZA()),2&tt){const ne=sn.$implicit,$e=r.oxw();r.Gre("datatable-row-",ne.type," datatable-row-group"),r.Q6J("ngStyle",$e._groupStyles[ne.type]),r.xp6(1),r.Q6J("ngForOf",ne.columns)("ngForTrackBy",$e.columnTrackingFn)}}function Ut(tt,sn){}function Bt(tt,sn){if(1&tt&&r.YNc(0,Ut,0,0,"ng-template",4),2&tt){const ne=r.oxw(2);r.Q6J("ngTemplateOutlet",ne.groupHeader.template)("ngTemplateOutletContext",ne.groupContext)}}function bt(tt,sn){if(1&tt&&(r.TgZ(0,"div",3),r.YNc(1,Bt,1,2,void 0,1),r.qZA()),2&tt){const ne=r.oxw();r.Q6J("ngStyle",ne.getGroupHeaderStyle()),r.xp6(1),r.Q6J("ngIf",ne.groupHeader&&ne.groupHeader.template)}}function Gt(tt,sn){1&tt&&r.Hsn(0,0,["*ngIf","(groupHeader && groupHeader.template && expanded) || !groupHeader || !groupHeader.template"])}function xt(tt,sn){}function Xt(tt,sn){if(1&tt&&r.YNc(0,xt,0,0,"ng-template",4),2&tt){const ne=r.oxw(2);r.Q6J("ngTemplateOutlet",ne.rowDetail.template)("ngTemplateOutletContext",ne.rowContext)}}function Zn(tt,sn){if(1&tt&&(r.TgZ(0,"div",5),r.YNc(1,Xt,1,2,void 0,1),r.qZA()),2&tt){const ne=r.oxw();r.Udp("height",ne.detailRowHeight,"px"),r.xp6(1),r.Q6J("ngIf",ne.rowDetail&&ne.rowDetail.template)}}const Ur=["cellTemplate"];function di(tt,sn){if(1&tt){const ne=r.EpF();r.TgZ(0,"label",4),r.TgZ(1,"input",5),r.NdJ("click",function(Lt){return r.CHM(ne),r.oxw().onCheckboxChange(Lt)}),r.qZA(),r.qZA()}if(2&tt){const ne=r.oxw();r.xp6(1),r.Q6J("checked",ne.isSelected)}}function Lr(tt,sn){1&tt&&r._UZ(0,"i",11)}function Mr(tt,sn){1&tt&&r._UZ(0,"i",12)}function Kr(tt,sn){1&tt&&r._UZ(0,"i",13)}function ei(tt,sn){if(1&tt){const ne=r.EpF();r.TgZ(0,"button",7),r.NdJ("click",function(){return r.CHM(ne),r.oxw(2).onTreeAction()}),r.TgZ(1,"span"),r.YNc(2,Lr,1,0,"i",8),r.YNc(3,Mr,1,0,"i",9),r.YNc(4,Kr,1,0,"i",10),r.qZA(),r.qZA()}if(2&tt){const ne=r.oxw(2);r.Q6J("disabled","disabled"===ne.treeStatus),r.xp6(2),r.Q6J("ngIf","loading"===ne.treeStatus),r.xp6(1),r.Q6J("ngIf","collapsed"===ne.treeStatus),r.xp6(1),r.Q6J("ngIf","expanded"===ne.treeStatus||"disabled"===ne.treeStatus)}}function Nn(tt,sn){}const $n=function(tt){return{cellContext:tt}};function Br(tt,sn){if(1&tt&&r.YNc(0,Nn,0,0,"ng-template",14),2&tt){const ne=r.oxw(2);r.Q6J("ngTemplateOutlet",ne.column.treeToggleTemplate)("ngTemplateOutletContext",r.VKq(2,$n,ne.cellContext))}}function Yr(tt,sn){if(1&tt&&(r.ynx(0),r.YNc(1,ei,5,4,"button",6),r.YNc(2,Br,1,4,void 0,2),r.BQk()),2&tt){const ne=r.oxw();r.xp6(1),r.Q6J("ngIf",!ne.column.treeToggleTemplate),r.xp6(1),r.Q6J("ngIf",ne.column.treeToggleTemplate)}}function fi(tt,sn){if(1&tt&&r._UZ(0,"span",15),2&tt){const ne=r.oxw();r.Q6J("title",ne.sanitizedValue)("innerHTML",ne.value,r.oJD)}}function ki(tt,sn){}function Hi(tt,sn){if(1&tt&&r.YNc(0,ki,0,0,"ng-template",14,16,r.W1O),2&tt){const ne=r.oxw();r.Q6J("ngTemplateOutlet",ne.column.cellTemplate)("ngTemplateOutletContext",ne.cellContext)}}function Zr(tt,sn){if(1&tt&&r._UZ(0,"datatable-body-row",1),2&tt){const ne=r.oxw();r.Q6J("innerWidth",ne.innerWidth)("offsetX",ne.offsetX)("columns",ne._internalColumns)("rowHeight",ne.rowHeight)("row",ne.summaryRow)("rowIndex",-1)}}let Cn=(()=>{class tt{constructor(ne){this.document=ne,this.width=this.getWidth()}getWidth(){const ne=this.document.createElement("div");ne.style.visibility="hidden",ne.style.width="100px",ne.style.msOverflowStyle="scrollbar",this.document.body.appendChild(ne);const $e=ne.offsetWidth;ne.style.overflow="scroll";const Lt=this.document.createElement("div");Lt.style.width="100%",ne.appendChild(Lt);const an=Lt.offsetWidth;return ne.parentNode.removeChild(ne),$e-an}}return tt.\u0275fac=function(ne){return new(ne||tt)(r.LFG(u.K0))},tt.\u0275prov=r.Yz7({token:tt,factory:tt.\u0275fac}),tt})(),Wt=(()=>{class tt{getDimensions(ne){return ne.getBoundingClientRect()}}return tt.\u0275fac=function(ne){return new(ne||tt)},tt.\u0275prov=r.Yz7({token:tt,factory:tt.\u0275fac}),tt})(),zn=(()=>{class tt{constructor(){this.columnInputChanges=new p.xQ}get columnInputChanges$(){return this.columnInputChanges.asObservable()}onInputChange(){this.columnInputChanges.next()}}return tt.\u0275fac=function(ne){return new(ne||tt)},tt.\u0275prov=r.Yz7({token:tt,factory:tt.\u0275fac}),tt})(),rr=(()=>{class tt{constructor(ne){this.template=ne}}return tt.\u0275fac=function(ne){return new(ne||tt)(r.Y36(r.Rgc))},tt.\u0275dir=r.lG2({type:tt,selectors:[["","ngx-datatable-footer-template",""]]}),tt})(),Fr=(()=>{class tt{constructor(ne,$e){this.element=ne,this.zone=$e,this.isVisible=!1,this.visible=new r.vpe}ngOnInit(){this.runCheck()}ngOnDestroy(){clearTimeout(this.timeout)}onVisibilityChange(){this.zone.run(()=>{this.isVisible=!0,this.visible.emit(!0)})}runCheck(){const ne=()=>{const{offsetHeight:$e,offsetWidth:Lt}=this.element.nativeElement;$e&&Lt?(clearTimeout(this.timeout),this.onVisibilityChange()):(clearTimeout(this.timeout),this.zone.runOutsideAngular(()=>{this.timeout=setTimeout(()=>ne(),50)}))};this.timeout=setTimeout(()=>ne())}}return tt.\u0275fac=function(ne){return new(ne||tt)(r.Y36(r.SBq),r.Y36(r.R0b))},tt.\u0275dir=r.lG2({type:tt,selectors:[["","visibilityObserver",""]],hostVars:2,hostBindings:function(ne,$e){2&ne&&r.ekj("visible",$e.isVisible)},outputs:{visible:"visible"}}),tt})(),Gn=(()=>{class tt{constructor(ne){this.dragX=!0,this.dragY=!0,this.dragStart=new r.vpe,this.dragging=new r.vpe,this.dragEnd=new r.vpe,this.isDragging=!1,this.element=ne.nativeElement}ngOnChanges(ne){ne.dragEventTarget&&ne.dragEventTarget.currentValue&&this.dragModel.dragging&&this.onMousedown(ne.dragEventTarget.currentValue)}ngOnDestroy(){this._destroySubscription()}onMouseup(ne){!this.isDragging||(this.isDragging=!1,this.element.classList.remove("dragging"),this.subscription&&(this._destroySubscription(),this.dragEnd.emit({event:ne,element:this.element,model:this.dragModel})))}onMousedown(ne){if(ne.target.classList.contains("draggable")&&(this.dragX||this.dragY)){ne.preventDefault(),this.isDragging=!0;const Lt={x:ne.clientX,y:ne.clientY},an=(0,d.R)(document,"mouseup");this.subscription=an.subscribe(pi=>this.onMouseup(pi));const ti=(0,d.R)(document,"mousemove").pipe((0,_.R)(an)).subscribe(pi=>this.move(pi,Lt));this.subscription.add(ti),this.dragStart.emit({event:ne,element:this.element,model:this.dragModel})}}move(ne,$e){if(!this.isDragging)return;const an=ne.clientY-$e.y;this.dragX&&(this.element.style.left=ne.clientX-$e.x+"px"),this.dragY&&(this.element.style.top=`${an}px`),this.element.classList.add("dragging"),this.dragging.emit({event:ne,element:this.element,model:this.dragModel})}_destroySubscription(){this.subscription&&(this.subscription.unsubscribe(),this.subscription=void 0)}}return tt.\u0275fac=function(ne){return new(ne||tt)(r.Y36(r.SBq))},tt.\u0275dir=r.lG2({type:tt,selectors:[["","draggable",""]],inputs:{dragX:"dragX",dragY:"dragY",dragEventTarget:"dragEventTarget",dragModel:"dragModel"},outputs:{dragStart:"dragStart",dragging:"dragging",dragEnd:"dragEnd"},features:[r.TTD]}),tt})(),Jr=(()=>{class tt{constructor(ne,$e){this.renderer=$e,this.resizeEnabled=!0,this.resize=new r.vpe,this.resizing=!1,this.element=ne.nativeElement}ngAfterViewInit(){const ne=this.renderer;this.resizeHandle=ne.createElement("span"),ne.addClass(this.resizeHandle,this.resizeEnabled?"resize-handle":"resize-handle--not-resizable"),ne.appendChild(this.element,this.resizeHandle)}ngOnDestroy(){this._destroySubscription(),this.renderer.destroyNode?this.renderer.destroyNode(this.resizeHandle):this.resizeHandle&&this.renderer.removeChild(this.renderer.parentNode(this.resizeHandle),this.resizeHandle)}onMouseup(){this.resizing=!1,this.subscription&&!this.subscription.closed&&(this._destroySubscription(),this.resize.emit(this.element.clientWidth))}onMousedown(ne){const $e=ne.target.classList.contains("resize-handle"),Lt=this.element.clientWidth,an=ne.screenX;if($e){ne.stopPropagation(),this.resizing=!0;const ti=(0,d.R)(document,"mouseup");this.subscription=ti.subscribe(xi=>this.onMouseup());const pi=(0,d.R)(document,"mousemove").pipe((0,_.R)(ti)).subscribe(xi=>this.move(xi,Lt,an));this.subscription.add(pi)}}move(ne,$e,Lt){const ti=$e+(ne.screenX-Lt);(!this.minWidth||ti>=this.minWidth)&&(!this.maxWidth||ti<=this.maxWidth)&&(this.element.style.width=`${ti}px`)}_destroySubscription(){this.subscription&&(this.subscription.unsubscribe(),this.subscription=void 0)}}return tt.\u0275fac=function(ne){return new(ne||tt)(r.Y36(r.SBq),r.Y36(r.Qsj))},tt.\u0275dir=r.lG2({type:tt,selectors:[["","resizeable",""]],hostVars:2,hostBindings:function(ne,$e){1&ne&&r.NdJ("mousedown",function(an){return $e.onMousedown(an)}),2&ne&&r.ekj("resizeable",$e.resizeEnabled)},inputs:{resizeEnabled:"resizeEnabled",minWidth:"minWidth",maxWidth:"maxWidth"},outputs:{resize:"resize"}}),tt})(),_i=(()=>{class tt{constructor(ne,$e){this.document=$e,this.reorder=new r.vpe,this.targetChanged=new r.vpe,this.differ=ne.find({}).create()}ngAfterContentInit(){this.updateSubscriptions(),this.draggables.changes.subscribe(this.updateSubscriptions.bind(this))}ngOnDestroy(){this.draggables.forEach(ne=>{ne.dragStart.unsubscribe(),ne.dragging.unsubscribe(),ne.dragEnd.unsubscribe()})}updateSubscriptions(){const ne=this.differ.diff(this.createMapDiffs());if(ne){const $e=({currentValue:an,previousValue:ti})=>{Lt({previousValue:ti}),an&&(an.dragStart.subscribe(this.onDragStart.bind(this)),an.dragging.subscribe(this.onDragging.bind(this)),an.dragEnd.subscribe(this.onDragEnd.bind(this)))},Lt=({previousValue:an})=>{an&&(an.dragStart.unsubscribe(),an.dragging.unsubscribe(),an.dragEnd.unsubscribe())};ne.forEachAddedItem($e),ne.forEachRemovedItem(Lt)}}onDragStart(){this.positions={};let ne=0;for(const $e of this.draggables.toArray()){const Lt=$e.element,an=parseInt(Lt.offsetLeft.toString(),0);this.positions[$e.dragModel.prop]={left:an,right:an+parseInt(Lt.offsetWidth.toString(),0),index:ne++,element:Lt}}}onDragging({model:$e,event:Lt}){const an=this.positions[$e.prop],ti=this.isTarget($e,Lt);ti?this.lastDraggingIndex!==ti.i&&(this.targetChanged.emit({prevIndex:this.lastDraggingIndex,newIndex:ti.i,initialIndex:an.index}),this.lastDraggingIndex=ti.i):this.lastDraggingIndex!==an.index&&(this.targetChanged.emit({prevIndex:this.lastDraggingIndex,initialIndex:an.index}),this.lastDraggingIndex=an.index)}onDragEnd({element:ne,model:$e,event:Lt}){const an=this.positions[$e.prop],ti=this.isTarget($e,Lt);ti&&this.reorder.emit({prevIndex:an.index,newIndex:ti.i,model:$e}),this.lastDraggingIndex=void 0,ne.style.left="auto"}isTarget(ne,$e){let Lt=0;const pi=this.document.elementsFromPoint($e.x||$e.clientX,$e.y||$e.clientY);for(const xi in this.positions){const ts=this.positions[xi];if(ne.prop!==xi&&pi.find(wo=>wo===ts.element))return{pos:ts,i:Lt};Lt++}}createMapDiffs(){return this.draggables.toArray().reduce((ne,$e)=>(ne[$e.dragModel.$$id]=$e,ne),{})}}return tt.\u0275fac=function(ne){return new(ne||tt)(r.Y36(r.aQg),r.Y36(u.K0))},tt.\u0275dir=r.lG2({type:tt,selectors:[["","orderable",""]],contentQueries:function(ne,$e,Lt){if(1&ne&&r.Suo(Lt,Gn,5),2&ne){let an;r.iGM(an=r.CRH())&&($e.draggables=an)}},outputs:{reorder:"reorder",targetChanged:"targetChanged"}}),tt})(),wi=(()=>{class tt{constructor(){this.pressEnabled=!0,this.duration=500,this.longPressStart=new r.vpe,this.longPressing=new r.vpe,this.longPressEnd=new r.vpe,this.mouseX=0,this.mouseY=0}get press(){return this.pressing}get isLongPress(){return this.isLongPressing}onMouseDown(ne){if(1!==ne.which||!this.pressEnabled||ne.target.classList.contains("resize-handle"))return;this.mouseX=ne.clientX,this.mouseY=ne.clientY,this.pressing=!0,this.isLongPressing=!1;const Lt=(0,d.R)(document,"mouseup");this.subscription=Lt.subscribe(an=>this.onMouseup()),this.timeout=setTimeout(()=>{this.isLongPressing=!0,this.longPressStart.emit({event:ne,model:this.pressModel}),this.subscription.add((0,d.R)(document,"mousemove").pipe((0,_.R)(Lt)).subscribe(an=>this.onMouseMove(an))),this.loop(ne)},this.duration),this.loop(ne)}onMouseMove(ne){if(this.pressing&&!this.isLongPressing){const $e=Math.abs(ne.clientX-this.mouseX)>10,Lt=Math.abs(ne.clientY-this.mouseY)>10;($e||Lt)&&this.endPress()}}loop(ne){this.isLongPressing&&(this.timeout=setTimeout(()=>{this.longPressing.emit({event:ne,model:this.pressModel}),this.loop(ne)},50))}endPress(){clearTimeout(this.timeout),this.isLongPressing=!1,this.pressing=!1,this._destroySubscription(),this.longPressEnd.emit({model:this.pressModel})}onMouseup(){this.endPress()}ngOnDestroy(){this._destroySubscription()}_destroySubscription(){this.subscription&&(this.subscription.unsubscribe(),this.subscription=void 0)}}return tt.\u0275fac=function(ne){return new(ne||tt)},tt.\u0275dir=r.lG2({type:tt,selectors:[["","long-press",""]],hostVars:4,hostBindings:function(ne,$e){1&ne&&r.NdJ("mousedown",function(an){return $e.onMouseDown(an)}),2&ne&&r.ekj("press",$e.press)("longpress",$e.isLongPress)},inputs:{pressEnabled:"pressEnabled",duration:"duration",pressModel:"pressModel"},outputs:{longPressStart:"longPressStart",longPressing:"longPressing",longPressEnd:"longPressEnd"}}),tt})(),br=(()=>{class tt{constructor(ne,$e,Lt){this.ngZone=ne,this.renderer=Lt,this.scrollbarV=!1,this.scrollbarH=!1,this.scroll=new r.vpe,this.scrollYPos=0,this.scrollXPos=0,this.prevScrollYPos=0,this.prevScrollXPos=0,this._scrollEventListener=null,this.element=$e.nativeElement}ngOnInit(){if(this.scrollbarV||this.scrollbarH){const ne=this.renderer;this.parentElement=ne.parentNode(ne.parentNode(this.element)),this._scrollEventListener=this.onScrolled.bind(this),this.parentElement.addEventListener("scroll",this._scrollEventListener)}}ngOnDestroy(){this._scrollEventListener&&(this.parentElement.removeEventListener("scroll",this._scrollEventListener),this._scrollEventListener=null)}setOffset(ne){this.parentElement&&(this.parentElement.scrollTop=ne)}onScrolled(ne){const $e=ne.currentTarget;requestAnimationFrame(()=>{this.scrollYPos=$e.scrollTop,this.scrollXPos=$e.scrollLeft,this.updateOffset()})}updateOffset(){let ne;this.scrollYPosthis.prevScrollYPos&&(ne="up"),this.scroll.emit({direction:ne,scrollYPos:this.scrollYPos,scrollXPos:this.scrollXPos}),this.prevScrollYPos=this.scrollYPos,this.prevScrollXPos=this.scrollXPos}}return tt.\u0275fac=function(ne){return new(ne||tt)(r.Y36(r.R0b),r.Y36(r.SBq),r.Y36(r.Qsj))},tt.\u0275cmp=r.Xpm({type:tt,selectors:[["datatable-scroller"]],hostAttrs:[1,"datatable-scroll"],hostVars:4,hostBindings:function(ne,$e){2&ne&&r.Udp("height",$e.scrollHeight,"px")("width",$e.scrollWidth,"px")},inputs:{scrollbarV:"scrollbarV",scrollbarH:"scrollbarH",scrollHeight:"scrollHeight",scrollWidth:"scrollWidth"},outputs:{scroll:"scroll"},ngContentSelectors:S,decls:1,vars:0,template:function(ne,$e){1&ne&&(r.F$t(),r.Hsn(0))},encapsulation:2,changeDetection:0}),tt})(),Dr=(()=>{class tt{constructor(ne){this.template=ne}}return tt.\u0275fac=function(ne){return new(ne||tt)(r.Y36(r.Rgc))},tt.\u0275dir=r.lG2({type:tt,selectors:[["","ngx-datatable-group-header-template",""]]}),tt})(),gn=(()=>{class tt{constructor(){this.rowHeight=0,this.toggle=new r.vpe}get template(){return this._templateInput||this._templateQuery}toggleExpandGroup(ne){this.toggle.emit({type:"group",value:ne})}expandAllGroups(){this.toggle.emit({type:"all",value:!0})}collapseAllGroups(){this.toggle.emit({type:"all",value:!1})}}return tt.\u0275fac=function(ne){return new(ne||tt)},tt.\u0275dir=r.lG2({type:tt,selectors:[["ngx-datatable-group-header"]],contentQueries:function(ne,$e,Lt){if(1&ne&&r.Suo(Lt,Dr,7,r.Rgc),2&ne){let an;r.iGM(an=r.CRH())&&($e._templateQuery=an.first)}},inputs:{rowHeight:"rowHeight",_templateInput:["template","_templateInput"]},outputs:{toggle:"toggle"}}),tt})();function yn(){return""}function gr(tt){return null==tt?yn:"number"==typeof tt?Jt:-1!==tt.indexOf(".")?mr:Vn}function Jt(tt,sn){if(null==tt)return"";if(!tt||null==sn)return tt;const ne=tt[sn];return null==ne?"":ne}function Vn(tt,sn){if(null==tt)return"";if(!tt||!sn)return tt;const ne=tt[sn];return null==ne?"":ne}function mr(tt,sn){if(null==tt)return"";if(!tt||!sn)return tt;let ne=tt[sn];if(void 0!==ne)return ne;ne=tt;const $e=sn.split(".");if($e.length)for(let Lt=0;Lt<$e.length;Lt++)if(ne=ne[$e[Lt]],null==ne)return"";return ne}function Dn(tt){return tt&&(sn=>gr(tt)(sn,tt))}function Pr(tt,sn,ne){if(sn&&ne){const $e={},Lt=tt.length;let an=null;$e[0]=new Yt;const ti=tt.reduce((xi,ts)=>{const wo=ne(ts);return-1===xi.indexOf(wo)&&xi.push(wo),xi},[]);for(let xi=0;xi-1&&(ts=wo),an.parent=$e[ts],an.row.level=an.parent.row.level+1,an.parent.children.push(an)}let pi=[];return $e[0].flatten(function(){pi=[...pi,this.row]},!0),pi}return tt}class Yt{constructor(sn=null){sn||(sn={level:-1,treeStatus:"expanded"}),this.row=sn,this.parent=null,this.children=[]}flatten(sn,ne){if("expanded"===this.row.treeStatus)for(let $e=0,Lt=this.children.length;$e` ${sn}`).replace(/^./,sn=>sn.toUpperCase())}function mi(tt){if(!tt)return;let sn=!1;for(const ne of tt)ne.$$id||(ne.$$id=("0000"+(Math.random()*Math.pow(36,4)<<0).toString(36)).slice(-4)),An(ne.prop)&&ne.name&&(ne.prop=_n(ne.name)),ne.$$valueGetter||(ne.$$valueGetter=gr(ne.prop)),!An(ne.prop)&&An(ne.name)&&(ne.name=Ge(String(ne.prop))),An(ne.prop)&&An(ne.name)&&(ne.name=""),ne.hasOwnProperty("resizeable")||(ne.resizeable=!0),ne.hasOwnProperty("sortable")||(ne.sortable=!0),ne.hasOwnProperty("draggable")||(ne.draggable=!0),ne.hasOwnProperty("canAutoResize")||(ne.canAutoResize=!0),ne.hasOwnProperty("width")||(ne.width=150),ne.hasOwnProperty("isTreeColumn")&&ne.isTreeColumn&&!sn?sn=!0:ne.isTreeColumn=!1}function An(tt){return null==tt}var Wr=(()=>{return(tt=Wr||(Wr={})).standard="standard",tt.flex="flex",tt.force="force",Wr;var tt})(),dr=(()=>{return(tt=dr||(dr={})).single="single",tt.multi="multi",tt.multiClick="multiClick",tt.cell="cell",tt.checkbox="checkbox",dr;var tt})(),Fn=(()=>{return(tt=Fn||(Fn={})).single="single",tt.multi="multi",Fn;var tt})(),ar=(()=>{return(tt=ar||(ar={})).header="header",tt.body="body",ar;var tt})();let Wi=(()=>{class tt{constructor(ne){this.template=ne}}return tt.\u0275fac=function(ne){return new(ne||tt)(r.Y36(r.Rgc))},tt.\u0275dir=r.lG2({type:tt,selectors:[["","ngx-datatable-header-template",""]]}),tt})(),lo=(()=>{class tt{constructor(ne){this.template=ne}}return tt.\u0275fac=function(ne){return new(ne||tt)(r.Y36(r.Rgc))},tt.\u0275dir=r.lG2({type:tt,selectors:[["","ngx-datatable-cell-template",""]]}),tt})(),vo=(()=>{class tt{constructor(ne){this.template=ne}}return tt.\u0275fac=function(ne){return new(ne||tt)(r.Y36(r.Rgc))},tt.\u0275dir=r.lG2({type:tt,selectors:[["","ngx-datatable-tree-toggle",""]]}),tt})(),Co=(()=>{class tt{constructor(ne){this.columnChangesService=ne,this.isFirstChange=!0}get cellTemplate(){return this._cellTemplateInput||this._cellTemplateQuery}get headerTemplate(){return this._headerTemplateInput||this._headerTemplateQuery}get treeToggleTemplate(){return this._treeToggleTemplateInput||this._treeToggleTemplateQuery}ngOnChanges(){this.isFirstChange?this.isFirstChange=!1:this.columnChangesService.onInputChange()}}return tt.\u0275fac=function(ne){return new(ne||tt)(r.Y36(zn))},tt.\u0275dir=r.lG2({type:tt,selectors:[["ngx-datatable-column"]],contentQueries:function(ne,$e,Lt){if(1&ne&&(r.Suo(Lt,lo,7,r.Rgc),r.Suo(Lt,Wi,7,r.Rgc),r.Suo(Lt,vo,7,r.Rgc)),2&ne){let an;r.iGM(an=r.CRH())&&($e._cellTemplateQuery=an.first),r.iGM(an=r.CRH())&&($e._headerTemplateQuery=an.first),r.iGM(an=r.CRH())&&($e._treeToggleTemplateQuery=an.first)}},inputs:{name:"name",prop:"prop",frozenLeft:"frozenLeft",frozenRight:"frozenRight",flexGrow:"flexGrow",resizeable:"resizeable",comparator:"comparator",pipe:"pipe",sortable:"sortable",draggable:"draggable",canAutoResize:"canAutoResize",minWidth:"minWidth",width:"width",maxWidth:"maxWidth",checkboxable:"checkboxable",headerCheckboxable:"headerCheckboxable",headerClass:"headerClass",cellClass:"cellClass",isTreeColumn:"isTreeColumn",treeLevelIndent:"treeLevelIndent",summaryFunc:"summaryFunc",summaryTemplate:"summaryTemplate",_cellTemplateInput:["cellTemplate","_cellTemplateInput"],_headerTemplateInput:["headerTemplate","_headerTemplateInput"],_treeToggleTemplateInput:["treeToggleTemplate","_treeToggleTemplateInput"]},features:[r.TTD]}),tt})(),Gi=(()=>{class tt{constructor(ne){this.template=ne}}return tt.\u0275fac=function(ne){return new(ne||tt)(r.Y36(r.Rgc))},tt.\u0275dir=r.lG2({type:tt,selectors:[["","ngx-datatable-row-detail-template",""]]}),tt})(),os=(()=>{class tt{constructor(){this.rowHeight=0,this.toggle=new r.vpe}get template(){return this._templateInput||this._templateQuery}toggleExpandRow(ne){this.toggle.emit({type:"row",value:ne})}expandAllRows(){this.toggle.emit({type:"all",value:!0})}collapseAllRows(){this.toggle.emit({type:"all",value:!1})}}return tt.\u0275fac=function(ne){return new(ne||tt)},tt.\u0275dir=r.lG2({type:tt,selectors:[["ngx-datatable-row-detail"]],contentQueries:function(ne,$e,Lt){if(1&ne&&r.Suo(Lt,Gi,7,r.Rgc),2&ne){let an;r.iGM(an=r.CRH())&&($e._templateQuery=an.first)}},inputs:{rowHeight:"rowHeight",_templateInput:["template","_templateInput"]},outputs:{toggle:"toggle"}}),tt})(),jo=(()=>{class tt{get template(){return this._templateInput||this._templateQuery}}return tt.\u0275fac=function(ne){return new(ne||tt)},tt.\u0275dir=r.lG2({type:tt,selectors:[["ngx-datatable-footer"]],contentQueries:function(ne,$e,Lt){if(1&ne&&r.Suo(Lt,rr,5,r.Rgc),2&ne){let an;r.iGM(an=r.CRH())&&($e._templateQuery=an.first)}},inputs:{footerHeight:"footerHeight",totalMessage:"totalMessage",selectedMessage:"selectedMessage",pagerLeftArrowIcon:"pagerLeftArrowIcon",pagerRightArrowIcon:"pagerRightArrowIcon",pagerPreviousIcon:"pagerPreviousIcon",pagerNextIcon:"pagerNextIcon",_templateInput:["template","_templateInput"]}}),tt})();function To(tt){const sn={left:[],center:[],right:[]};if(tt)for(const ne of tt)ne.frozenLeft?sn.left.push(ne):ne.frozenRight?sn.right.push(ne):sn.center.push(ne);return sn}function Mi(tt,sn){return{left:li(tt.left),center:li(tt.center),right:li(tt.right),total:Math.floor(li(sn))}}function li(tt,sn){let ne=0;if(tt)for(const $e of tt)ne+=parseFloat(sn&&$e[sn]?$e[sn]:$e.width);return ne}function lr(tt){const sn=[],ne=To(tt);return sn.push({type:"left",columns:ne.left}),sn.push({type:"center",columns:ne.center}),sn.push({type:"right",columns:ne.right}),sn}class vr{constructor(){this.treeArray=[]}clearCache(){this.treeArray=[]}initCache(sn){const{rows:ne,rowHeight:$e,detailRowHeight:Lt,externalVirtual:an,rowCount:ti,rowIndexes:pi,rowExpansions:xi}=sn,ts="function"==typeof $e,wo="function"==typeof Lt;if(!ts&&isNaN($e))throw new Error(`Row Height cache initialization failed. Please ensure that 'rowHeight' is a\n valid number or function value: (${$e}) when 'scrollbarV' is enabled.`);if(!wo&&isNaN(Lt))throw new Error(`Row Height cache initialization failed. Please ensure that 'detailRowHeight' is a\n valid number or function value: (${Lt}) when 'scrollbarV' is enabled.`);const ko=an?ti:ne.length;this.treeArray=new Array(ko);for(let Eo=0;Eo=0;)ne+=this.treeArray[sn],sn=(sn&sn+1)-1;return ne}queryBetween(sn,ne){return this.query(ne)-this.query(sn-1)}calcRowIndex(sn){if(!this.treeArray.length)return 0;let ne=-1;const $e=this.treeArray.length;for(let an=Math.pow(2,$e.toString(2).length-1);0!==an;an>>=1){const ti=ne+an;ti<$e&&sn>=this.treeArray[ti]&&(sn-=this.treeArray[ti],ne=ti)}return ne+1}}const er={},ri="undefined"!=typeof document?document.createElement("div").style:void 0,Ci=function(){const tt="undefined"!=typeof window?window.getComputedStyle(document.documentElement,""):void 0,sn=void 0!==tt?Array.prototype.slice.call(tt).join("").match(/-(moz|webkit|ms)-/):null,ne=null!==sn?sn[1]:void 0,$e=void 0!==ne?"WebKit|Moz|MS|O".match(new RegExp("("+ne+")","i"))[1]:void 0;return $e?{dom:$e,lowercase:ne,css:`-${ne}-`,js:ne[0].toUpperCase()+ne.substr(1)}:void 0}();function $o(tt){const sn=_n(tt);return er[sn]||(void 0!==Ci&&void 0!==ri[Ci.css+tt]?er[sn]=Ci.css+tt:void 0!==ri[tt]&&(er[sn]=tt)),er[sn]}const tr="undefined"!=typeof window?$o("transform"):void 0,Ar="undefined"!=typeof window?$o("backfaceVisibility"):void 0,Rt="undefined"!=typeof window?!!$o("transform"):void 0,_t="undefined"!=typeof window?!!$o("perspective"):void 0,mt="undefined"!=typeof window?window.navigator.userAgent:"Chrome",jt=/Safari\//.test(mt)&&!/Chrome\//.test(mt);function on(tt,sn,ne){void 0!==tr&&Rt?!jt&&_t?(tt[tr]=`translate3d(${sn}px, ${ne}px, 0)`,tt[Ar]="hidden"):tt[_n(tr)]=`translate(${sn}px, ${ne}px)`:(tt.top=`${ne}px`,tt.left=`${sn}px`)}let si=(()=>{class tt{constructor(ne){this.cd=ne,this.selected=[],this.scroll=new r.vpe,this.page=new r.vpe,this.activate=new r.vpe,this.select=new r.vpe,this.detailToggle=new r.vpe,this.rowContextmenu=new r.vpe(!1),this.treeAction=new r.vpe,this.rowHeightsCache=new vr,this.temp=[],this.offsetY=0,this.indexes={},this.rowIndexes=new WeakMap,this.rowExpansions=[],this.getDetailRowHeight=($e,Lt)=>{if(!this.rowDetail)return 0;const an=this.rowDetail.rowHeight;return"function"==typeof an?an($e,Lt):an},this.rowTrackingFn=($e,Lt)=>{const an=this.getRowIndex(Lt);return this.trackByProp?Lt[this.trackByProp]:an}}set pageSize(ne){this._pageSize=ne,this.recalcLayout()}get pageSize(){return this._pageSize}set rows(ne){this._rows=ne,this.recalcLayout()}get rows(){return this._rows}set columns(ne){this._columns=ne;const $e=To(ne);this.columnGroupWidths=Mi($e,ne)}get columns(){return this._columns}set offset(ne){this._offset=ne,(!this.scrollbarV||this.scrollbarV&&!this.virtualization)&&this.recalcLayout()}get offset(){return this._offset}set rowCount(ne){this._rowCount=ne,this.recalcLayout()}get rowCount(){return this._rowCount}get bodyWidth(){return this.scrollbarH?this.innerWidth+"px":"100%"}set bodyHeight(ne){this._bodyHeight=this.scrollbarV?ne+"px":"auto",this.recalcLayout()}get bodyHeight(){return this._bodyHeight}get selectEnabled(){return!!this.selectionType}get scrollHeight(){if(this.scrollbarV&&this.virtualization&&this.rowCount)return this.rowHeightsCache.query(this.rowCount-1)}ngOnInit(){this.rowDetail&&(this.listener=this.rowDetail.toggle.subscribe(({type:ne,value:$e})=>{"row"===ne&&this.toggleRowExpansion($e),"all"===ne&&this.toggleAllRows($e),this.updateIndexes(),this.updateRows(),this.cd.markForCheck()})),this.groupHeader&&(this.listener=this.groupHeader.toggle.subscribe(({type:ne,value:$e})=>{"group"===ne&&this.toggleRowExpansion($e),"all"===ne&&this.toggleAllRows($e),this.updateIndexes(),this.updateRows(),this.cd.markForCheck()}))}ngOnDestroy(){(this.rowDetail||this.groupHeader)&&this.listener.unsubscribe()}updateOffsetY(ne){this.scroller&&(this.scrollbarV&&this.virtualization&&ne?ne=this.rowHeightsCache.query(this.pageSize*ne-1):this.scrollbarV&&!this.virtualization&&(ne=0),this.scroller.setOffset(ne||0))}onBodyScroll(ne){const $e=ne.scrollYPos,Lt=ne.scrollXPos;(this.offsetY!==$e||this.offsetX!==Lt)&&this.scroll.emit({offsetY:$e,offsetX:Lt}),this.offsetY=$e,this.offsetX=Lt,this.updateIndexes(),this.updatePage(ne.direction),this.updateRows()}updatePage(ne){let $e=this.indexes.first/this.pageSize;"up"===ne?$e=Math.ceil($e):"down"===ne&&($e=Math.floor($e)),void 0!==ne&&!isNaN($e)&&this.page.emit({offset:$e})}updateRows(){const{first:ne,last:$e}=this.indexes;let Lt=ne,an=0;const ti=[];if(this.groupedRows){let pi=3;for(1===this.groupedRows.length&&(pi=this.groupedRows[0].value.length);Lt<$e&&Lt{this.rowIndexes.set(ts,`${Lt}-${wo}`)}),ti[an]=xi,an++,Lt++}}else for(;Lt<$e&&Ltthis.loadingIndicator=!1,500)}updateIndexes(){let ne=0,$e=0;if(this.scrollbarV)if(this.virtualization){const Lt=parseInt(this.bodyHeight,0);ne=this.rowHeightsCache.getRowIndex(this.offsetY),$e=this.rowHeightsCache.getRowIndex(Lt+this.offsetY)+1}else ne=0,$e=this.rowCount;else this.externalPaging||(ne=Math.max(this.offset*this.pageSize,0)),$e=Math.min(ne+this.pageSize,this.rowCount);this.indexes={first:ne,last:$e}}refreshRowHeightCache(){if(this.scrollbarV&&(!this.scrollbarV||this.virtualization)&&(this.rowHeightsCache.clearCache(),this.rows&&this.rows.length)){const ne=new Set;for(const $e of this.rows)this.getRowExpanded($e)&&ne.add($e);this.rowHeightsCache.initCache({rows:this.rows,rowHeight:this.rowHeight,detailRowHeight:this.getDetailRowHeight,externalVirtual:this.scrollbarV&&this.externalPaging,rowCount:this.rowCount,rowIndexes:this.rowIndexes,rowExpansions:ne})}}getAdjustedViewPortIndex(){const ne=this.indexes.first;return this.scrollbarV&&this.virtualization&&this.rowHeightsCache.query(ne-1)<=this.offsetY?ne-1:ne}toggleRowExpansion(ne){const $e=this.getAdjustedViewPortIndex(),Lt=this.getRowExpandedIdx(ne,this.rowExpansions),an=Lt>-1;if(this.scrollbarV&&this.virtualization){const ti=this.getDetailRowHeight(ne)*(an?-1:1),pi=this.getRowIndex(ne);this.rowHeightsCache.update(pi,ti)}an?this.rowExpansions.splice(Lt,1):this.rowExpansions.push(ne),this.detailToggle.emit({rows:[ne],currentIndex:$e})}toggleAllRows(ne){this.rowExpansions=[];const $e=this.getAdjustedViewPortIndex();if(ne)for(const Lt of this.rows)this.rowExpansions.push(Lt);this.scrollbarV&&this.recalcLayout(),this.detailToggle.emit({rows:this.rows,currentIndex:$e})}recalcLayout(){this.refreshRowHeightCache(),this.updateIndexes(),this.updateRows()}columnTrackingFn(ne,$e){return $e.$$id}stylesByGroup(ne){const $e=this.columnGroupWidths,Lt=this.offsetX,an={width:`${$e[ne]}px`};if("left"===ne)on(an,Lt,0);else if("right"===ne){const ti=parseInt(this.innerWidth+"",0);on(an,-1*($e.total-ti-Lt),0)}return an}getRowExpanded(ne){if(0===this.rowExpansions.length&&this.groupExpansionDefault)for(const $e of this.groupedRows)this.rowExpansions.push($e);return this.getRowExpandedIdx(ne,this.rowExpansions)>-1}getRowExpandedIdx(ne,$e){if(!$e||!$e.length)return-1;const Lt=this.rowIdentity(ne);return $e.findIndex(an=>this.rowIdentity(an)===Lt)}getRowIndex(ne){return this.rowIndexes.get(ne)||0}onTreeAction(ne){this.treeAction.emit({row:ne})}}return tt.\u0275fac=function(ne){return new(ne||tt)(r.Y36(r.sBO))},tt.\u0275cmp=r.Xpm({type:tt,selectors:[["datatable-body"]],viewQuery:function(ne,$e){if(1&ne&&r.Gf(br,5),2&ne){let Lt;r.iGM(Lt=r.CRH())&&($e.scroller=Lt.first)}},hostAttrs:[1,"datatable-body"],hostVars:4,hostBindings:function(ne,$e){2&ne&&r.Udp("width",$e.bodyWidth)("height",$e.bodyHeight)},inputs:{selected:"selected",pageSize:"pageSize",rows:"rows",columns:"columns",offset:"offset",rowCount:"rowCount",bodyHeight:"bodyHeight",offsetX:"offsetX",loadingIndicator:"loadingIndicator",scrollbarV:"scrollbarV",scrollbarH:"scrollbarH",externalPaging:"externalPaging",rowHeight:"rowHeight",emptyMessage:"emptyMessage",selectionType:"selectionType",rowIdentity:"rowIdentity",rowDetail:"rowDetail",groupHeader:"groupHeader",selectCheck:"selectCheck",displayCheck:"displayCheck",trackByProp:"trackByProp",rowClass:"rowClass",groupedRows:"groupedRows",groupExpansionDefault:"groupExpansionDefault",innerWidth:"innerWidth",groupRowsBy:"groupRowsBy",virtualization:"virtualization",summaryRow:"summaryRow",summaryPosition:"summaryPosition",summaryHeight:"summaryHeight"},outputs:{scroll:"scroll",page:"page",activate:"activate",select:"select",detailToggle:"detailToggle",rowContextmenu:"rowContextmenu",treeAction:"treeAction"},decls:5,vars:9,consts:[[4,"ngIf"],[3,"selected","rows","selectCheck","selectEnabled","selectionType","rowIdentity","select","activate"],["selector",""],[3,"scrollbarV","scrollbarH","scrollHeight","scrollWidth","scroll",4,"ngIf"],["class","empty-row",3,"innerHTML",4,"ngIf"],[3,"scrollbarV","scrollbarH","scrollHeight","scrollWidth","scroll"],[3,"rowHeight","offsetX","innerWidth","rows","columns",4,"ngIf"],[3,"groupedRows","innerWidth","ngStyle","rowDetail","groupHeader","offsetX","detailRowHeight","row","expanded","rowIndex","rowContextmenu",4,"ngFor","ngForOf","ngForTrackBy"],[3,"ngStyle","rowHeight","offsetX","innerWidth","rows","columns",4,"ngIf"],[3,"rowHeight","offsetX","innerWidth","rows","columns"],[3,"groupedRows","innerWidth","ngStyle","rowDetail","groupHeader","offsetX","detailRowHeight","row","expanded","rowIndex","rowContextmenu"],["tabindex","-1",3,"isSelected","innerWidth","offsetX","columns","rowHeight","row","rowIndex","expanded","rowClass","displayCheck","treeStatus","treeAction","activate",4,"ngIf","ngIfElse"],["groupedRowsTemplate",""],["tabindex","-1",3,"isSelected","innerWidth","offsetX","columns","rowHeight","row","rowIndex","expanded","rowClass","displayCheck","treeStatus","treeAction","activate"],["tabindex","-1",3,"isSelected","innerWidth","offsetX","columns","rowHeight","row","group","rowIndex","expanded","rowClass","activate",4,"ngFor","ngForOf","ngForTrackBy"],["tabindex","-1",3,"isSelected","innerWidth","offsetX","columns","rowHeight","row","group","rowIndex","expanded","rowClass","activate"],[3,"ngStyle","rowHeight","offsetX","innerWidth","rows","columns"],[1,"empty-row",3,"innerHTML"]],template:function(ne,$e){1&ne&&(r.YNc(0,A,1,0,"datatable-progress",0),r.TgZ(1,"datatable-selection",1,2),r.NdJ("select",function(an){return $e.select.emit(an)})("activate",function(an){return $e.activate.emit(an)}),r.YNc(3,ue,4,8,"datatable-scroller",3),r.YNc(4,ae,1,1,"div",4),r.qZA()),2&ne&&(r.Q6J("ngIf",$e.loadingIndicator),r.xp6(1),r.Q6J("selected",$e.selected)("rows",$e.rows)("selectCheck",$e.selectCheck)("selectEnabled",$e.selectEnabled)("selectionType",$e.selectionType)("rowIdentity",$e.rowIdentity),r.xp6(2),r.Q6J("ngIf",null==$e.rows?null:$e.rows.length),r.xp6(1),r.Q6J("ngIf",!(null!=$e.rows&&$e.rows.length||$e.loadingIndicator)))},directives:function(){return[u.O5,Po,Ya,br,u.sg,ps,Ca,u.PC,fs]},encapsulation:2,changeDetection:0}),tt})(),Vi=(()=>{class tt{constructor(ne){this.cd=ne,this.sort=new r.vpe,this.reorder=new r.vpe,this.resize=new r.vpe,this.select=new r.vpe,this.columnContextmenu=new r.vpe(!1),this._columnGroupWidths={total:100},this._styleByGroup={left:{},center:{},right:{}},this.destroyed=!1}set innerWidth(ne){this._innerWidth=ne,setTimeout(()=>{if(this._columns){const $e=To(this._columns);this._columnGroupWidths=Mi($e,this._columns),this.setStylesByGroup()}})}get innerWidth(){return this._innerWidth}set headerHeight(ne){this._headerHeight="auto"!==ne?`${ne}px`:ne}get headerHeight(){return this._headerHeight}set columns(ne){this._columns=ne;const $e=To(ne);this._columnsByPin=lr(ne),setTimeout(()=>{this._columnGroupWidths=Mi($e,ne),this.setStylesByGroup()})}get columns(){return this._columns}set offsetX(ne){this._offsetX=ne,this.setStylesByGroup()}get offsetX(){return this._offsetX}ngOnDestroy(){this.destroyed=!0}onLongPressStart({event:ne,model:$e}){$e.dragging=!0,this.dragEventTarget=ne}onLongPressEnd({event:ne,model:$e}){this.dragEventTarget=ne,setTimeout(()=>{const Lt=this._columns.find(an=>an.$$id===$e.$$id);Lt&&(Lt.dragging=!1)},5)}get headerWidth(){return this.scrollbarH?this.innerWidth+"px":"100%"}trackByGroups(ne,$e){return $e.type}columnTrackingFn(ne,$e){return $e.$$id}onColumnResized(ne,$e){ne<=$e.minWidth?ne=$e.minWidth:ne>=$e.maxWidth&&(ne=$e.maxWidth),this.resize.emit({column:$e,prevValue:$e.width,newValue:ne})}onColumnReordered({prevIndex:ne,newIndex:$e,model:Lt}){const an=this.getColumn($e);an.isTarget=!1,an.targetMarkerContext=void 0,this.reorder.emit({column:Lt,prevValue:ne,newValue:$e})}onTargetChanged({prevIndex:ne,newIndex:$e,initialIndex:Lt}){if(ne||0===ne){const an=this.getColumn(ne);an.isTarget=!1,an.targetMarkerContext=void 0}if($e||0===$e){const an=this.getColumn($e);an.isTarget=!0,Lt!==$e&&(an.targetMarkerContext={class:"targetMarker ".concat(Lt>$e?"dragFromRight":"dragFromLeft")})}}getColumn(ne){const $e=this._columnsByPin[0].columns.length;if(ne<$e)return this._columnsByPin[0].columns[ne];const Lt=this._columnsByPin[1].columns.length;return ne<$e+Lt?this._columnsByPin[1].columns[ne-$e]:this._columnsByPin[2].columns[ne-$e-Lt]}onSort({column:ne,prevValue:$e,newValue:Lt}){if(ne.dragging)return;const an=this.calcNewSorts(ne,$e,Lt);this.sort.emit({sorts:an,column:ne,prevValue:$e,newValue:Lt})}calcNewSorts(ne,$e,Lt){let an=0;this.sorts||(this.sorts=[]);const ti=this.sorts.map((pi,xi)=>((pi=Object.assign({},pi)).prop===ne.prop&&(an=xi),pi));return void 0===Lt?ti.splice(an,1):$e?ti[an].dir=Lt:(this.sortType===Fn.single&&ti.splice(0,this.sorts.length),ti.push({dir:Lt,prop:ne.prop})),ti}setStylesByGroup(){this._styleByGroup.left=this.calcStylesByGroup("left"),this._styleByGroup.center=this.calcStylesByGroup("center"),this._styleByGroup.right=this.calcStylesByGroup("right"),this.destroyed||this.cd.detectChanges()}calcStylesByGroup(ne){const $e=this._columnGroupWidths,an={width:`${$e[ne]}px`};return"center"===ne?on(an,-1*this.offsetX,0):"right"===ne&&on(an,-1*($e.total-this.innerWidth),0),an}}return tt.\u0275fac=function(ne){return new(ne||tt)(r.Y36(r.sBO))},tt.\u0275cmp=r.Xpm({type:tt,selectors:[["datatable-header"]],hostAttrs:[1,"datatable-header"],hostVars:4,hostBindings:function(ne,$e){2&ne&&r.Udp("height",$e.headerHeight)("width",$e.headerWidth)},inputs:{innerWidth:"innerWidth",headerHeight:"headerHeight",columns:"columns",offsetX:"offsetX",sorts:"sorts",sortAscendingIcon:"sortAscendingIcon",sortDescendingIcon:"sortDescendingIcon",sortUnsetIcon:"sortUnsetIcon",scrollbarH:"scrollbarH",dealsWithGroup:"dealsWithGroup",targetMarkerTemplate:"targetMarkerTemplate",sortType:"sortType",allRowsSelected:"allRowsSelected",selectionType:"selectionType",reorderable:"reorderable"},outputs:{sort:"sort",reorder:"reorder",resize:"resize",select:"select",columnContextmenu:"columnContextmenu"},decls:2,vars:4,consts:[["orderable","",1,"datatable-header-inner",3,"reorder","targetChanged"],[3,"class","ngStyle",4,"ngFor","ngForOf","ngForTrackBy"],[3,"ngStyle"],["resizeable","","long-press","","draggable","",3,"resizeEnabled","pressModel","pressEnabled","dragX","dragY","dragModel","dragEventTarget","headerHeight","isTarget","targetMarkerTemplate","targetMarkerContext","column","sortType","sorts","selectionType","sortAscendingIcon","sortDescendingIcon","sortUnsetIcon","allRowsSelected","resize","longPressStart","longPressEnd","sort","select","columnContextmenu",4,"ngFor","ngForOf","ngForTrackBy"],["resizeable","","long-press","","draggable","",3,"resizeEnabled","pressModel","pressEnabled","dragX","dragY","dragModel","dragEventTarget","headerHeight","isTarget","targetMarkerTemplate","targetMarkerContext","column","sortType","sorts","selectionType","sortAscendingIcon","sortDescendingIcon","sortUnsetIcon","allRowsSelected","resize","longPressStart","longPressEnd","sort","select","columnContextmenu"]],template:function(ne,$e){1&ne&&(r.TgZ(0,"div",0),r.NdJ("reorder",function(an){return $e.onColumnReordered(an)})("targetChanged",function(an){return $e.onTargetChanged(an)}),r.YNc(1,se,2,5,"div",1),r.qZA()),2&ne&&(r.Udp("width",$e._columnGroupWidths.total,"px"),r.xp6(1),r.Q6J("ngForOf",$e._columnsByPin)("ngForTrackBy",$e.trackByGroups))},directives:function(){return[_i,u.sg,u.PC,da,Jr,wi,Gn]},encapsulation:2,changeDetection:0}),tt})();function _o(tt,sn,ne){ne=ne||{};let $e,Lt,an,ti=null,pi=0;function xi(){pi=!1===ne.leading?0:+new Date,ti=null,an=tt.apply($e,Lt)}return function(){const ts=+new Date;!pi&&!1===ne.leading&&(pi=ts);const wo=sn-(ts-pi);return $e=this,Lt=arguments,wo<=0?(clearTimeout(ti),ti=null,pi=ts,an=tt.apply($e,Lt)):!ti&&!1!==ne.trailing&&(ti=setTimeout(xi,wo)),an}}function co(tt,sn){return function($e,Lt,an){return{configurable:!0,enumerable:an.enumerable,get:function(){return Object.defineProperty(this,Lt,{configurable:!0,enumerable:an.enumerable,value:_o(an.value,tt,sn)}),this[Lt]}}}}function ta(tt,sn){for(const ne of sn){const $e=tt.indexOf(ne);tt.splice($e,1)}}function Is(tt,sn=300){let ne=0;for(const $e of tt)ne+=$e.width||sn;return ne}var us=(()=>{return(tt=us||(us={})).asc="asc",tt.desc="desc",us;var tt})();function el(tt,sn){if(null==tt&&(tt=0),null==sn&&(sn=0),tt instanceof Date&&sn instanceof Date){if(ttsn)return 1}else if(isNaN(parseFloat(tt))||!isFinite(tt)||isNaN(parseFloat(sn))||!isFinite(sn)){if(tt=String(tt),sn=String(sn),tt.toLowerCase()sn.toLowerCase())return 1}else{if(parseFloat(tt)parseFloat(sn))return 1}return 0}let $s=(()=>{class tt{constructor(ne,$e,Lt,an,ti,pi,xi){this.scrollbarHelper=ne,this.dimensionsHelper=$e,this.cd=Lt,this.columnChangesService=pi,this.configuration=xi,this.selected=[],this.scrollbarV=!1,this.scrollbarH=!1,this.rowHeight=30,this.columnMode=Wr.standard,this.headerHeight=30,this.footerHeight=0,this.externalPaging=!1,this.externalSorting=!1,this.loadingIndicator=!1,this.reorderable=!0,this.swapColumns=!0,this.sortType=Fn.single,this.sorts=[],this.cssClasses={sortAscending:"datatable-icon-up",sortDescending:"datatable-icon-down",sortUnset:"datatable-icon-sort-unset",pagerLeftArrow:"datatable-icon-left",pagerRightArrow:"datatable-icon-right",pagerPrevious:"datatable-icon-prev",pagerNext:"datatable-icon-skip"},this.messages={emptyMessage:"No data to display",totalMessage:"total",selectedMessage:"selected"},this.groupExpansionDefault=!1,this.selectAllRowsOnPage=!1,this.virtualization=!0,this.summaryRow=!1,this.summaryHeight=30,this.summaryPosition="top",this.scroll=new r.vpe,this.activate=new r.vpe,this.select=new r.vpe,this.sort=new r.vpe,this.page=new r.vpe,this.reorder=new r.vpe,this.resize=new r.vpe,this.tableContextmenu=new r.vpe(!1),this.treeAction=new r.vpe,this.rowCount=0,this._offsetX=new e.X(0),this._count=0,this._offset=0,this._subscriptions=[],this.rowIdentity=ts=>this._groupRowsBy?ts.key:ts,this.element=an.nativeElement,this.rowDiffer=ti.find({}).create(),this.configuration&&this.configuration.messages&&(this.messages=Object.assign({},this.configuration.messages))}set rows(ne){this._rows=ne,ne&&(this._internalRows=[...ne]),this.externalSorting||this.sortInternalRows(),this._internalRows=Pr(this._internalRows,Dn(this.treeFromRelation),Dn(this.treeToRelation)),this.recalculate(),this._rows&&this._groupRowsBy&&(this.groupedRows=this.groupArrayBy(this._rows,this._groupRowsBy)),this.cd.markForCheck()}get rows(){return this._rows}set groupRowsBy(ne){ne&&(this._groupRowsBy=ne,this._rows&&this._groupRowsBy&&(this.groupedRows=this.groupArrayBy(this._rows,this._groupRowsBy)))}get groupRowsBy(){return this._groupRowsBy}set columns(ne){ne&&(this._internalColumns=[...ne],mi(this._internalColumns),this.recalculateColumns()),this._columns=ne}get columns(){return this._columns}set limit(ne){this._limit=ne,this.recalculate()}get limit(){return this._limit}set count(ne){this._count=ne,this.recalculate()}get count(){return this._count}set offset(ne){this._offset=ne}get offset(){return Math.max(Math.min(this._offset,Math.ceil(this.rowCount/this.pageSize)-1),0)}get isFixedHeader(){const ne=this.headerHeight;return"string"!=typeof ne||"auto"!==ne}get isFixedRow(){return"auto"!==this.rowHeight}get isVertScroll(){return this.scrollbarV}get isVirtualized(){return this.virtualization}get isHorScroll(){return this.scrollbarH}get isSelectable(){return void 0!==this.selectionType}get isCheckboxSelection(){return this.selectionType===dr.checkbox}get isCellSelection(){return this.selectionType===dr.cell}get isSingleSelection(){return this.selectionType===dr.single}get isMultiSelection(){return this.selectionType===dr.multi}get isMultiClickSelection(){return this.selectionType===dr.multiClick}set columnTemplates(ne){this._columnTemplates=ne,this.translateColumns(ne)}get columnTemplates(){return this._columnTemplates}get allRowsSelected(){let ne=this.rows&&this.selected&&this.selected.length===this.rows.length;if(this.bodyComponent&&this.selectAllRowsOnPage){const $e=this.bodyComponent.indexes;ne=this.selected.length===$e.last-$e.first}return this.selected&&this.rows&&0!==this.rows.length&&ne}ngOnInit(){this.recalculate()}ngAfterViewInit(){this.externalSorting||this.sortInternalRows(),"undefined"!=typeof requestAnimationFrame&&requestAnimationFrame(()=>{this.recalculate(),this.externalPaging&&this.scrollbarV&&this.page.emit({count:this.count,pageSize:this.pageSize,limit:this.limit,offset:0})})}ngAfterContentInit(){this.columnTemplates.changes.subscribe(ne=>this.translateColumns(ne)),this.listenForColumnInputChanges()}translateColumns(ne){if(ne){const $e=ne.toArray();$e.length&&(this._internalColumns=function(tt){const sn=[];for(const ne of tt){const $e={},Lt=Object.getOwnPropertyNames(ne);for(const an of Lt)$e[an]=ne[an];ne.headerTemplate&&($e.headerTemplate=ne.headerTemplate),ne.cellTemplate&&($e.cellTemplate=ne.cellTemplate),ne.summaryFunc&&($e.summaryFunc=ne.summaryFunc),ne.summaryTemplate&&($e.summaryTemplate=ne.summaryTemplate),sn.push($e)}return sn}($e),mi(this._internalColumns),this.recalculateColumns(),this.sortInternalRows(),this.cd.markForCheck())}}groupArrayBy(ne,$e){const Lt=new Map;return ne.forEach(pi=>{const xi=pi[$e];Lt.has(xi)?Lt.get(xi).push(pi):Lt.set(xi,[pi])}),Array.from(Lt,pi=>((pi,xi)=>({key:pi,value:xi}))(pi[0],pi[1]))}ngDoCheck(){this.rowDiffer.diff(this.rows)&&(this.externalSorting?this._internalRows=[...this.rows]:this.sortInternalRows(),this._internalRows=Pr(this._internalRows,Dn(this.treeFromRelation),Dn(this.treeToRelation)),this.recalculatePages(),this.cd.markForCheck())}recalculate(){this.recalculateDims(),this.recalculateColumns(),this.cd.markForCheck()}onWindowResize(){this.recalculate()}recalculateColumns(ne=this._internalColumns,$e=-1,Lt=this.scrollbarH){if(!ne)return;let an=this._innerWidth;return this.scrollbarV&&(an-=this.scrollbarHelper.width),this.columnMode===Wr.force?function(tt,sn,ne,$e,Lt=300){const an=tt.slice(ne+1,tt.length).filter(Eo=>!1!==Eo.canAutoResize);for(const Eo of an)Eo.$$oldWidth||(Eo.$$oldWidth=Eo.width);let ti=0,pi=!1,xi=Is(tt,Lt),ts=sn-xi;const wo=[];do{ti=ts/an.length,pi=xi>=sn;for(const Eo of an){if(pi&&$e)Eo.width=Eo.$$oldWidth||Eo.width||Lt;else{const ba=(Eo.width||Lt)+ti;Eo.minWidth&&baEo.maxWidth?(Eo.width=Eo.maxWidth,wo.push(Eo)):Eo.width=ba}Eo.width=Math.max(0,Eo.width)}xi=Is(tt),ts=sn-xi,ta(an,wo)}while(ts>1&&0!==an.length)}(ne,an,$e,Lt):this.columnMode===Wr.flex&&function(tt,sn){const ne=function(tt,sn){let ne=0;for(const $e of tt)ne+=$e.width;return ne}(tt),$e=function(tt){let sn=0;for(const ne of tt)sn+=ne.flexGrow||0;return sn}(tt),Lt=To(tt);ne!==sn&&function(tt,sn,ne){for(const an in tt)for(const ti of tt[an])ti.canAutoResize?ti.width=0:(sn-=ti.width,ne-=ti.flexGrow?ti.flexGrow:0);const $e={};let Lt=sn;do{const an=Lt/ne;Lt=0;for(const ti in tt)for(const pi of tt[ti])if(pi.canAutoResize&&!$e[pi.prop]){const xi=pi.width+pi.flexGrow*an;void 0!==pi.minWidth&&xi((ti=Object.assign({},ti)).$$id===ne.$$id&&(Lt=pi,ti.width=$e,ti.$$oldWidth=$e),ti));this.recalculateColumns(an,Lt),this._internalColumns=an,this.resize.emit({column:ne,newValue:$e})}onColumnReorder({column:ne,newValue:$e,prevValue:Lt}){const an=this._internalColumns.map(ti=>Object.assign({},ti));if(this.swapColumns){const ti=an[$e];an[$e]=ne,an[Lt]=ti}else if($e>Lt){const ti=an[Lt];for(let pi=Lt;pi<$e;pi++)an[pi]=an[pi+1];an[$e]=ti}else{const ti=an[Lt];for(let pi=Lt;pi>$e;pi--)an[pi]=an[pi-1];an[$e]=ti}this._internalColumns=an,this.reorder.emit({column:ne,newValue:$e,prevValue:Lt})}onColumnSort(ne){this.selectAllRowsOnPage&&(this.selected=[],this.select.emit({selected:this.selected})),this.sorts=ne.sorts,!1===this.externalSorting&&this.sortInternalRows(),this._internalRows=Pr(this._internalRows,Dn(this.treeFromRelation),Dn(this.treeToRelation)),this.offset=0,this.bodyComponent.updateOffsetY(this.offset),this.sort.emit(ne)}onHeaderSelect(ne){if(this.bodyComponent&&this.selectAllRowsOnPage){const $e=this.bodyComponent.indexes.first,Lt=this.bodyComponent.indexes.last,an=this.selected.length===Lt-$e;this.selected=[],an||this.selected.push(...this._internalRows.slice($e,Lt))}else{const $e=this.selected.length===this.rows.length;this.selected=[],$e||this.selected.push(...this.rows)}this.select.emit({selected:this.selected})}onBodySelect(ne){this.select.emit(ne)}onTreeAction(ne){const $e=ne.row,Lt=this._rows.findIndex(an=>an[this.treeToRelation]===ne.row[this.treeToRelation]);this.treeAction.emit({row:$e,rowIndex:Lt})}ngOnDestroy(){this._subscriptions.forEach(ne=>ne.unsubscribe())}listenForColumnInputChanges(){this._subscriptions.push(this.columnChangesService.columnInputChanges$.subscribe(()=>{this.columnTemplates&&this.columnTemplates.notifyOnChanges()}))}sortInternalRows(){this._internalRows=function(tt,sn,ne){if(!tt)return[];if(!ne||!ne.length||!sn)return[...tt];const $e=new Map;tt.forEach((pi,xi)=>$e.set(pi,xi));const Lt=[...tt],an=sn.reduce((pi,xi)=>(xi.comparator&&"function"==typeof xi.comparator&&(pi[xi.prop]=xi.comparator),pi),{}),ti=ne.map(pi=>{const xi=pi.prop;return{prop:xi,dir:pi.dir,valueGetter:gr(xi),compareFn:an[xi]||el}});return Lt.sort(function(pi,xi){for(const ts of ti){const{prop:wo,valueGetter:ko}=ts,Eo=ko(pi,wo),ba=ko(xi,wo),sl=ts.dir!==us.desc?ts.compareFn(Eo,ba,pi,xi,ts.dir):-ts.compareFn(Eo,ba,pi,xi,ts.dir);if(0!==sl)return sl}return $e.has(pi)&&$e.has(xi)?$e.get(pi)<$e.get(xi)?-1:1:0})}(this._internalRows,this._internalColumns,this.sorts)}}return tt.\u0275fac=function(ne){return new(ne||tt)(r.Y36(Cn,4),r.Y36(Wt,4),r.Y36(r.sBO),r.Y36(r.SBq),r.Y36(r.aQg),r.Y36(zn),r.Y36("configuration",8))},tt.\u0275cmp=r.Xpm({type:tt,selectors:[["ngx-datatable"]],contentQueries:function(ne,$e,Lt){if(1&ne&&(r.Suo(Lt,os,5),r.Suo(Lt,gn,5),r.Suo(Lt,jo,5),r.Suo(Lt,Co,4)),2&ne){let an;r.iGM(an=r.CRH())&&($e.rowDetail=an.first),r.iGM(an=r.CRH())&&($e.groupHeader=an.first),r.iGM(an=r.CRH())&&($e.footer=an.first),r.iGM(an=r.CRH())&&($e.columnTemplates=an)}},viewQuery:function(ne,$e){if(1&ne&&(r.Gf(si,5),r.Gf(Vi,5)),2&ne){let Lt;r.iGM(Lt=r.CRH())&&($e.bodyComponent=Lt.first),r.iGM(Lt=r.CRH())&&($e.headerComponent=Lt.first)}},hostAttrs:[1,"ngx-datatable"],hostVars:22,hostBindings:function(ne,$e){1&ne&&r.NdJ("resize",function(){return $e.onWindowResize()},!1,r.Jf7),2&ne&&r.ekj("fixed-header",$e.isFixedHeader)("fixed-row",$e.isFixedRow)("scroll-vertical",$e.isVertScroll)("virtualized",$e.isVirtualized)("scroll-horz",$e.isHorScroll)("selectable",$e.isSelectable)("checkbox-selection",$e.isCheckboxSelection)("cell-selection",$e.isCellSelection)("single-selection",$e.isSingleSelection)("multi-selection",$e.isMultiSelection)("multi-click-selection",$e.isMultiClickSelection)},inputs:{selected:"selected",scrollbarV:"scrollbarV",scrollbarH:"scrollbarH",rowHeight:"rowHeight",columnMode:"columnMode",headerHeight:"headerHeight",footerHeight:"footerHeight",externalPaging:"externalPaging",externalSorting:"externalSorting",loadingIndicator:"loadingIndicator",reorderable:"reorderable",swapColumns:"swapColumns",sortType:"sortType",sorts:"sorts",cssClasses:"cssClasses",messages:"messages",groupExpansionDefault:"groupExpansionDefault",selectAllRowsOnPage:"selectAllRowsOnPage",virtualization:"virtualization",summaryRow:"summaryRow",summaryHeight:"summaryHeight",summaryPosition:"summaryPosition",rowIdentity:"rowIdentity",rows:"rows",groupedRows:"groupedRows",groupRowsBy:"groupRowsBy",columns:"columns",limit:"limit",count:"count",offset:"offset",targetMarkerTemplate:"targetMarkerTemplate",selectionType:"selectionType",rowClass:"rowClass",selectCheck:"selectCheck",displayCheck:"displayCheck",trackByProp:"trackByProp",treeFromRelation:"treeFromRelation",treeToRelation:"treeToRelation"},outputs:{scroll:"scroll",activate:"activate",select:"select",sort:"sort",page:"page",reorder:"reorder",resize:"resize",tableContextmenu:"tableContextmenu",treeAction:"treeAction"},decls:5,vars:34,consts:[["visibilityObserver","",3,"visible"],[3,"sorts","sortType","scrollbarH","innerWidth","offsetX","dealsWithGroup","columns","headerHeight","reorderable","targetMarkerTemplate","sortAscendingIcon","sortDescendingIcon","sortUnsetIcon","allRowsSelected","selectionType","sort","resize","reorder","select","columnContextmenu",4,"ngIf"],[3,"groupRowsBy","groupedRows","rows","groupExpansionDefault","scrollbarV","scrollbarH","virtualization","loadingIndicator","externalPaging","rowHeight","rowCount","offset","trackByProp","columns","pageSize","offsetX","rowDetail","groupHeader","selected","innerWidth","bodyHeight","selectionType","emptyMessage","rowIdentity","rowClass","selectCheck","displayCheck","summaryRow","summaryHeight","summaryPosition","page","activate","rowContextmenu","select","scroll","treeAction"],[3,"rowCount","pageSize","offset","footerHeight","footerTemplate","totalMessage","pagerLeftArrowIcon","pagerRightArrowIcon","pagerPreviousIcon","selectedCount","selectedMessage","pagerNextIcon","page",4,"ngIf"],[3,"sorts","sortType","scrollbarH","innerWidth","offsetX","dealsWithGroup","columns","headerHeight","reorderable","targetMarkerTemplate","sortAscendingIcon","sortDescendingIcon","sortUnsetIcon","allRowsSelected","selectionType","sort","resize","reorder","select","columnContextmenu"],[3,"rowCount","pageSize","offset","footerHeight","footerTemplate","totalMessage","pagerLeftArrowIcon","pagerRightArrowIcon","pagerPreviousIcon","selectedCount","selectedMessage","pagerNextIcon","page"]],template:function(ne,$e){1&ne&&(r.TgZ(0,"div",0),r.NdJ("visible",function(){return $e.recalculate()}),r.YNc(1,Ee,2,17,"datatable-header",1),r.TgZ(2,"datatable-body",2),r.NdJ("page",function(an){return $e.onBodyPage(an)})("activate",function(an){return $e.activate.emit(an)})("rowContextmenu",function(an){return $e.onRowContextmenu(an)})("select",function(an){return $e.onBodySelect(an)})("scroll",function(an){return $e.onBodyScroll(an)})("treeAction",function(an){return $e.onTreeAction(an)}),r.ALo(3,"async"),r.qZA(),r.YNc(4,ie,1,12,"datatable-footer",3),r.qZA()),2&ne&&(r.xp6(1),r.Q6J("ngIf",$e.headerHeight),r.xp6(1),r.Q6J("groupRowsBy",$e.groupRowsBy)("groupedRows",$e.groupedRows)("rows",$e._internalRows)("groupExpansionDefault",$e.groupExpansionDefault)("scrollbarV",$e.scrollbarV)("scrollbarH",$e.scrollbarH)("virtualization",$e.virtualization)("loadingIndicator",$e.loadingIndicator)("externalPaging",$e.externalPaging)("rowHeight",$e.rowHeight)("rowCount",$e.rowCount)("offset",$e.offset)("trackByProp",$e.trackByProp)("columns",$e._internalColumns)("pageSize",$e.pageSize)("offsetX",r.lcZ(3,32,$e._offsetX))("rowDetail",$e.rowDetail)("groupHeader",$e.groupHeader)("selected",$e.selected)("innerWidth",$e._innerWidth)("bodyHeight",$e.bodyHeight)("selectionType",$e.selectionType)("emptyMessage",$e.messages.emptyMessage)("rowIdentity",$e.rowIdentity)("rowClass",$e.rowClass)("selectCheck",$e.selectCheck)("displayCheck",$e.displayCheck)("summaryRow",$e.summaryRow)("summaryHeight",$e.summaryHeight)("summaryPosition",$e.summaryPosition),r.xp6(2),r.Q6J("ngIf",$e.footerHeight))},directives:function(){return[Fr,u.O5,si,Vi,Il]},pipes:function(){return[u.Ov]},styles:[".ngx-datatable{display:block;justify-content:center;overflow:hidden;position:relative;transform:translateZ(0)}.ngx-datatable [hidden]{display:none!important}.ngx-datatable *,.ngx-datatable :after,.ngx-datatable :before{box-sizing:border-box}.ngx-datatable.scroll-vertical .datatable-body{overflow-y:auto}.ngx-datatable.scroll-vertical.virtualized .datatable-body .datatable-row-wrapper{position:absolute}.ngx-datatable.scroll-horz .datatable-body{-webkit-overflow-scrolling:touch;overflow-x:auto}.ngx-datatable.fixed-header .datatable-header .datatable-header-inner{white-space:nowrap}.ngx-datatable.fixed-header .datatable-header .datatable-header-inner .datatable-header-cell{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ngx-datatable.fixed-row .datatable-scroll,.ngx-datatable.fixed-row .datatable-scroll .datatable-body-row{white-space:nowrap}.ngx-datatable.fixed-row .datatable-scroll .datatable-body-row .datatable-body-cell,.ngx-datatable.fixed-row .datatable-scroll .datatable-body-row .datatable-body-group-cell{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ngx-datatable .datatable-body-row,.ngx-datatable .datatable-header-inner,.ngx-datatable .datatable-row-center{-o-flex-flow:row;display:flex;flex-direction:row;flex-flow:row}.ngx-datatable .datatable-body-cell,.ngx-datatable .datatable-header-cell{display:inline-block;line-height:1.625;overflow-x:hidden;vertical-align:top}.ngx-datatable .datatable-body-cell:focus,.ngx-datatable .datatable-header-cell:focus{outline:none}.ngx-datatable .datatable-row-left,.ngx-datatable .datatable-row-right{z-index:9}.ngx-datatable .datatable-row-center,.ngx-datatable .datatable-row-group,.ngx-datatable .datatable-row-left,.ngx-datatable .datatable-row-right{position:relative}.ngx-datatable .datatable-header{display:block;overflow:hidden}.ngx-datatable .datatable-header .datatable-header-inner{-webkit-align-items:stretch;align-items:stretch}.ngx-datatable .datatable-header .datatable-header-cell{display:inline-block;position:relative}.ngx-datatable .datatable-header .datatable-header-cell.sortable .datatable-header-cell-wrapper{cursor:pointer}.ngx-datatable .datatable-header .datatable-header-cell.longpress .datatable-header-cell-wrapper{cursor:move}.ngx-datatable .datatable-header .datatable-header-cell .sort-btn{cursor:pointer;display:inline-block;line-height:100%;vertical-align:middle}.ngx-datatable .datatable-header .datatable-header-cell .resize-handle,.ngx-datatable .datatable-header .datatable-header-cell .resize-handle--not-resizable{bottom:0;display:inline-block;padding:0 4px;position:absolute;right:0;top:0;visibility:hidden;width:5px}.ngx-datatable .datatable-header .datatable-header-cell .resize-handle{cursor:ew-resize}.ngx-datatable .datatable-header .datatable-header-cell.resizeable:hover .resize-handle,.ngx-datatable .datatable-header .datatable-header-cell:hover .resize-handle--not-resizable{visibility:visible}.ngx-datatable .datatable-header .datatable-header-cell .targetMarker{bottom:0;position:absolute;top:0}.ngx-datatable .datatable-header .datatable-header-cell .targetMarker.dragFromLeft{right:0}.ngx-datatable .datatable-header .datatable-header-cell .targetMarker.dragFromRight{left:0}.ngx-datatable .datatable-header .datatable-header-cell .datatable-header-cell-template-wrap{height:inherit}.ngx-datatable .datatable-body{display:block;position:relative;z-index:10}.ngx-datatable .datatable-body .datatable-scroll{display:inline-block}.ngx-datatable .datatable-body .datatable-row-detail{overflow-y:hidden}.ngx-datatable .datatable-body .datatable-row-wrapper{display:flex;flex-direction:column}.ngx-datatable .datatable-body .datatable-body-row{outline:none}.ngx-datatable .datatable-body .datatable-body-row>div{display:flex}.ngx-datatable .datatable-footer{display:block;overflow:auto;width:100%}.ngx-datatable .datatable-footer .datatable-footer-inner{align-items:center;display:flex;width:100%}.ngx-datatable .datatable-footer .selected-count .page-count{flex:1 1 40%}.ngx-datatable .datatable-footer .selected-count .datatable-pager{flex:1 1 60%}.ngx-datatable .datatable-footer .page-count{flex:1 1 20%}.ngx-datatable .datatable-footer .datatable-pager{flex:1 1 80%;text-align:right}.ngx-datatable .datatable-footer .datatable-pager .pager,.ngx-datatable .datatable-footer .datatable-pager .pager li{display:inline-block;list-style:none;margin:0;padding:0}.ngx-datatable .datatable-footer .datatable-pager .pager li,.ngx-datatable .datatable-footer .datatable-pager .pager li a{outline:none}.ngx-datatable .datatable-footer .datatable-pager .pager li a{cursor:pointer;display:inline-block}.ngx-datatable .datatable-footer .datatable-pager .pager li.disabled a{cursor:not-allowed}"],encapsulation:2,changeDetection:0}),(0,y.gn)([co(5)],tt.prototype,"onWindowResize",null),tt})(),da=(()=>{class tt{constructor(ne){this.cd=ne,this.sort=new r.vpe,this.select=new r.vpe,this.columnContextmenu=new r.vpe(!1),this.sortFn=this.onSort.bind(this),this.selectFn=this.select.emit.bind(this.select),this.cellContext={column:this.column,sortDir:this.sortDir,sortFn:this.sortFn,allRowsSelected:this.allRowsSelected,selectFn:this.selectFn}}set allRowsSelected(ne){this._allRowsSelected=ne,this.cellContext.allRowsSelected=ne}get allRowsSelected(){return this._allRowsSelected}set column(ne){this._column=ne,this.cellContext.column=ne,this.cd.markForCheck()}get column(){return this._column}set sorts(ne){this._sorts=ne,this.sortDir=this.calcSortDir(ne),this.cellContext.sortDir=this.sortDir,this.sortClass=this.calcSortClass(this.sortDir),this.cd.markForCheck()}get sorts(){return this._sorts}get columnCssClasses(){let ne="datatable-header-cell";if(this.column.sortable&&(ne+=" sortable"),this.column.resizeable&&(ne+=" resizeable"),this.column.headerClass)if("string"==typeof this.column.headerClass)ne+=" "+this.column.headerClass;else if("function"==typeof this.column.headerClass){const Lt=this.column.headerClass({column:this.column});if("string"==typeof Lt)ne+=Lt;else if("object"==typeof Lt){const an=Object.keys(Lt);for(const ti of an)!0===Lt[ti]&&(ne+=` ${ti}`)}}const $e=this.sortDir;return $e&&(ne+=` sort-active sort-${$e}`),ne}get name(){return void 0===this.column.headerTemplate?this.column.name:void 0}get minWidth(){return this.column.minWidth}get maxWidth(){return this.column.maxWidth}get width(){return this.column.width}get isCheckboxable(){return this.column.checkboxable&&this.column.headerCheckboxable&&this.selectionType===dr.checkbox}onContextmenu(ne){this.columnContextmenu.emit({event:ne,column:this.column})}ngOnInit(){this.sortClass=this.calcSortClass(this.sortDir)}calcSortDir(ne){if(ne&&this.column){const $e=ne.find(Lt=>Lt.prop===this.column.prop);if($e)return $e.dir}}onSort(){if(!this.column.sortable)return;const ne=function(tt,sn){return tt===Fn.single?sn===us.asc?us.desc:us.asc:sn?sn===us.asc?us.desc:void 0:us.asc}(this.sortType,this.sortDir);this.sort.emit({column:this.column,prevValue:this.sortDir,newValue:ne})}calcSortClass(ne){if(this.cellContext.column.sortable)return ne===us.asc?`sort-btn sort-asc ${this.sortAscendingIcon}`:ne===us.desc?`sort-btn sort-desc ${this.sortDescendingIcon}`:`sort-btn ${this.sortUnsetIcon}`}}return tt.\u0275fac=function(ne){return new(ne||tt)(r.Y36(r.sBO))},tt.\u0275cmp=r.Xpm({type:tt,selectors:[["datatable-header-cell"]],hostAttrs:[1,"datatable-header-cell"],hostVars:11,hostBindings:function(ne,$e){1&ne&&r.NdJ("contextmenu",function(an){return $e.onContextmenu(an)}),2&ne&&(r.uIk("title",$e.name),r.Tol($e.columnCssClasses),r.Udp("min-width",$e.minWidth,"px")("max-width",$e.maxWidth,"px")("width",$e.width,"px")("height",$e.headerHeight,"px"))},inputs:{allRowsSelected:"allRowsSelected",column:"column",sorts:"sorts",sortType:"sortType",sortAscendingIcon:"sortAscendingIcon",sortDescendingIcon:"sortDescendingIcon",sortUnsetIcon:"sortUnsetIcon",isTarget:"isTarget",targetMarkerTemplate:"targetMarkerTemplate",targetMarkerContext:"targetMarkerContext",selectionType:"selectionType",headerHeight:"headerHeight"},outputs:{sort:"sort",select:"select",columnContextmenu:"columnContextmenu"},decls:6,vars:6,consts:[[1,"datatable-header-cell-template-wrap"],[4,"ngIf"],["class","datatable-checkbox",4,"ngIf"],["class","datatable-header-cell-wrapper",4,"ngIf"],[3,"click"],[3,"ngTemplateOutlet","ngTemplateOutletContext"],[1,"datatable-checkbox"],["type","checkbox",3,"checked","change"],[1,"datatable-header-cell-wrapper"],[1,"datatable-header-cell-label","draggable",3,"innerHTML","click"]],template:function(ne,$e){1&ne&&(r.TgZ(0,"div",0),r.YNc(1,ge,1,2,void 0,1),r.YNc(2,De,2,1,"label",2),r.YNc(3,ce,2,1,"span",3),r.YNc(4,Ve,1,2,void 0,1),r.TgZ(5,"span",4),r.NdJ("click",function(){return $e.onSort()}),r.qZA(),r.qZA()),2&ne&&(r.xp6(1),r.Q6J("ngIf",$e.isTarget),r.xp6(1),r.Q6J("ngIf",$e.isCheckboxable),r.xp6(1),r.Q6J("ngIf",!$e.column.headerTemplate),r.xp6(1),r.Q6J("ngIf",$e.column.headerTemplate),r.xp6(1),r.Tol($e.sortClass))},directives:[u.O5,u.tP],encapsulation:2,changeDetection:0}),tt})(),Il=(()=>{class tt{constructor(){this.selectedCount=0,this.page=new r.vpe}get isVisible(){return this.rowCount/this.pageSize>1}get curPage(){return this.offset+1}}return tt.\u0275fac=function(ne){return new(ne||tt)},tt.\u0275cmp=r.Xpm({type:tt,selectors:[["datatable-footer"]],hostAttrs:[1,"datatable-footer"],inputs:{selectedCount:"selectedCount",footerHeight:"footerHeight",rowCount:"rowCount",pageSize:"pageSize",offset:"offset",pagerLeftArrowIcon:"pagerLeftArrowIcon",pagerRightArrowIcon:"pagerRightArrowIcon",pagerPreviousIcon:"pagerPreviousIcon",pagerNextIcon:"pagerNextIcon",totalMessage:"totalMessage",footerTemplate:"footerTemplate",selectedMessage:"selectedMessage"},outputs:{page:"page"},decls:4,vars:8,consts:[[1,"datatable-footer-inner",3,"ngClass"],[4,"ngIf"],["class","page-count",4,"ngIf"],[3,"pagerLeftArrowIcon","pagerRightArrowIcon","pagerPreviousIcon","pagerNextIcon","page","size","count","hidden","change",4,"ngIf"],[3,"ngTemplateOutlet","ngTemplateOutletContext"],[1,"page-count"],[3,"pagerLeftArrowIcon","pagerRightArrowIcon","pagerPreviousIcon","pagerNextIcon","page","size","count","hidden","change"]],template:function(ne,$e){1&ne&&(r.TgZ(0,"div",0),r.YNc(1,Pe,1,8,void 0,1),r.YNc(2,He,3,3,"div",2),r.YNc(3,Vt,1,8,"datatable-pager",3),r.qZA()),2&ne&&(r.Udp("height",$e.footerHeight,"px"),r.Q6J("ngClass",r.VKq(6,it,$e.selectedMessage)),r.xp6(1),r.Q6J("ngIf",$e.footerTemplate),r.xp6(1),r.Q6J("ngIf",!$e.footerTemplate),r.xp6(1),r.Q6J("ngIf",!$e.footerTemplate))},directives:function(){return[u.mk,u.O5,u.tP,fo]},encapsulation:2,changeDetection:0}),tt})(),fo=(()=>{class tt{constructor(){this.change=new r.vpe,this._count=0,this._page=1,this._size=0}set size(ne){this._size=ne,this.pages=this.calcPages()}get size(){return this._size}set count(ne){this._count=ne,this.pages=this.calcPages()}get count(){return this._count}set page(ne){this._page=ne,this.pages=this.calcPages()}get page(){return this._page}get totalPages(){const ne=this.size<1?1:Math.ceil(this.count/this.size);return Math.max(ne||0,1)}canPrevious(){return this.page>1}canNext(){return this.page0&&ne<=this.totalPages&&ne!==this.page&&(this.page=ne,this.change.emit({page:ne}))}calcPages(ne){const $e=[];let Lt=1,an=this.totalPages;ne=ne||this.page,5this.totalPages&&(Lt=Math.max(this.totalPages-5+1,1),an=this.totalPages));for(let xi=Lt;xi<=an;xi++)$e.push({number:xi,text:xi});return $e}}return tt.\u0275fac=function(ne){return new(ne||tt)},tt.\u0275cmp=r.Xpm({type:tt,selectors:[["datatable-pager"]],hostAttrs:[1,"datatable-pager"],inputs:{size:"size",count:"count",page:"page",pagerLeftArrowIcon:"pagerLeftArrowIcon",pagerRightArrowIcon:"pagerRightArrowIcon",pagerPreviousIcon:"pagerPreviousIcon",pagerNextIcon:"pagerNextIcon"},outputs:{change:"change"},decls:14,vars:21,consts:[[1,"pager"],["role","button","aria-label","go to first page","href","javascript:void(0)",3,"click"],["role","button","aria-label","go to previous page","href","javascript:void(0)",3,"click"],["role","button","class","pages",3,"active",4,"ngFor","ngForOf"],["role","button","aria-label","go to next page","href","javascript:void(0)",3,"click"],["role","button","aria-label","go to last page","href","javascript:void(0)",3,"click"],["role","button",1,"pages"],["href","javascript:void(0)",3,"click"]],template:function(ne,$e){1&ne&&(r.TgZ(0,"ul",0),r.TgZ(1,"li"),r.TgZ(2,"a",1),r.NdJ("click",function(){return $e.selectPage(1)}),r._UZ(3,"i"),r.qZA(),r.qZA(),r.TgZ(4,"li"),r.TgZ(5,"a",2),r.NdJ("click",function(){return $e.prevPage()}),r._UZ(6,"i"),r.qZA(),r.qZA(),r.YNc(7,tn,3,4,"li",3),r.TgZ(8,"li"),r.TgZ(9,"a",4),r.NdJ("click",function(){return $e.nextPage()}),r._UZ(10,"i"),r.qZA(),r.qZA(),r.TgZ(11,"li"),r.TgZ(12,"a",5),r.NdJ("click",function(){return $e.selectPage($e.totalPages)}),r._UZ(13,"i"),r.qZA(),r.qZA(),r.qZA()),2&ne&&(r.xp6(1),r.ekj("disabled",!$e.canPrevious()),r.xp6(2),r.Tol($e.pagerPreviousIcon),r.xp6(1),r.ekj("disabled",!$e.canPrevious()),r.xp6(2),r.Tol($e.pagerLeftArrowIcon),r.xp6(1),r.Q6J("ngForOf",$e.pages),r.xp6(1),r.ekj("disabled",!$e.canNext()),r.xp6(2),r.Tol($e.pagerRightArrowIcon),r.xp6(1),r.ekj("disabled",!$e.canNext()),r.xp6(2),r.Tol($e.pagerNextIcon))},directives:[u.sg],encapsulation:2,changeDetection:0}),tt})(),Ya=(()=>{class tt{}return tt.\u0275fac=function(ne){return new(ne||tt)},tt.\u0275cmp=r.Xpm({type:tt,selectors:[["datatable-progress"]],decls:3,vars:0,consts:[["role","progressbar",1,"progress-linear"],[1,"container"],[1,"bar"]],template:function(ne,$e){1&ne&&(r.TgZ(0,"div",0),r.TgZ(1,"div",1),r._UZ(2,"div",2),r.qZA(),r.qZA())},encapsulation:2,changeDetection:0}),tt})();var Ao=(()=>{return(tt=Ao||(Ao={}))[tt.up=38]="up",tt[tt.down=40]="down",tt[tt.return=13]="return",tt[tt.escape=27]="escape",tt[tt.left=37]="left",tt[tt.right=39]="right",Ao;var tt})();let fs=(()=>{class tt{constructor(ne,$e,Lt,an){this.differs=ne,this.scrollbarHelper=$e,this.cd=Lt,this.treeStatus="collapsed",this.activate=new r.vpe,this.treeAction=new r.vpe,this._groupStyles={left:{},center:{},right:{}},this._element=an.nativeElement,this._rowDiffer=ne.find({}).create()}set columns(ne){this._columns=ne,this.recalculateColumns(ne),this.buildStylesByGroup()}get columns(){return this._columns}set innerWidth(ne){if(this._columns){const $e=To(this._columns);this._columnGroupWidths=Mi($e,this._columns)}this._innerWidth=ne,this.recalculateColumns(),this.buildStylesByGroup()}get innerWidth(){return this._innerWidth}set offsetX(ne){this._offsetX=ne,this.buildStylesByGroup()}get offsetX(){return this._offsetX}get cssClass(){let ne="datatable-body-row";if(this.isSelected&&(ne+=" active"),this.rowIndex%2!=0&&(ne+=" datatable-row-odd"),this.rowIndex%2==0&&(ne+=" datatable-row-even"),this.rowClass){const $e=this.rowClass(this.row);if("string"==typeof $e)ne+=` ${$e}`;else if("object"==typeof $e){const Lt=Object.keys($e);for(const an of Lt)!0===$e[an]&&(ne+=` ${an}`)}}return ne}get columnsTotalWidths(){return this._columnGroupWidths.total}ngDoCheck(){this._rowDiffer.diff(this.row)&&this.cd.markForCheck()}trackByGroups(ne,$e){return $e.type}columnTrackingFn(ne,$e){return $e.$$id}buildStylesByGroup(){this._groupStyles.left=this.calcStylesByGroup("left"),this._groupStyles.center=this.calcStylesByGroup("center"),this._groupStyles.right=this.calcStylesByGroup("right"),this.cd.markForCheck()}calcStylesByGroup(ne){const $e=this._columnGroupWidths,Lt=this.offsetX,an={width:`${$e[ne]}px`};if("left"===ne)on(an,Lt,0);else if("right"===ne){const ti=parseInt(this.innerWidth+"",0);on(an,-1*($e.total-ti-Lt+this.scrollbarHelper.width),0)}return an}onActivate(ne,$e){ne.cellIndex=$e,ne.rowElement=this._element,this.activate.emit(ne)}onKeyDown(ne){const $e=ne.keyCode;($e===Ao.return||$e===Ao.down||$e===Ao.up||$e===Ao.left||$e===Ao.right)&&ne.target===this._element&&(ne.preventDefault(),ne.stopPropagation(),this.activate.emit({type:"keydown",event:ne,row:this.row,rowElement:this._element}))}onMouseenter(ne){this.activate.emit({type:"mouseenter",event:ne,row:this.row,rowElement:this._element})}recalculateColumns(ne=this.columns){this._columns=ne;const $e=To(this._columns);this._columnsByPin=lr(this._columns),this._columnGroupWidths=Mi($e,this._columns)}onTreeAction(){this.treeAction.emit()}}return tt.\u0275fac=function(ne){return new(ne||tt)(r.Y36(r.aQg),r.Y36(Cn,4),r.Y36(r.sBO),r.Y36(r.SBq))},tt.\u0275cmp=r.Xpm({type:tt,selectors:[["datatable-body-row"]],hostVars:6,hostBindings:function(ne,$e){1&ne&&r.NdJ("keydown",function(an){return $e.onKeyDown(an)})("mouseenter",function(an){return $e.onMouseenter(an)}),2&ne&&(r.Tol($e.cssClass),r.Udp("width",$e.columnsTotalWidths,"px")("height",$e.rowHeight,"px"))},inputs:{treeStatus:"treeStatus",columns:"columns",innerWidth:"innerWidth",offsetX:"offsetX",expanded:"expanded",rowClass:"rowClass",row:"row",group:"group",isSelected:"isSelected",rowIndex:"rowIndex",displayCheck:"displayCheck",rowHeight:"rowHeight"},outputs:{activate:"activate",treeAction:"treeAction"},decls:1,vars:2,consts:[[3,"class","ngStyle",4,"ngFor","ngForOf","ngForTrackBy"],[3,"ngStyle"],["tabindex","-1",3,"row","group","expanded","isSelected","rowIndex","column","rowHeight","displayCheck","treeStatus","activate","treeAction",4,"ngFor","ngForOf","ngForTrackBy"],["tabindex","-1",3,"row","group","expanded","isSelected","rowIndex","column","rowHeight","displayCheck","treeStatus","activate","treeAction"]],template:function(ne,$e){1&ne&&r.YNc(0,Zt,2,6,"div",0),2&ne&&r.Q6J("ngForOf",$e._columnsByPin)("ngForTrackBy",$e.trackByGroups)},directives:function(){return[u.sg,u.PC,Ra]},encapsulation:2,changeDetection:0}),tt})(),Ca=(()=>{class tt{constructor(ne,$e){this.cd=ne,this.differs=$e,this.rowContextmenu=new r.vpe(!1),this.groupContext={group:this.row,expanded:this.expanded,rowIndex:this.rowIndex},this.rowContext={row:this.row,expanded:this.expanded,rowIndex:this.rowIndex},this._expanded=!1,this.rowDiffer=$e.find({}).create()}set rowIndex(ne){this._rowIndex=ne,this.rowContext.rowIndex=ne,this.groupContext.rowIndex=ne,this.cd.markForCheck()}get rowIndex(){return this._rowIndex}set expanded(ne){this._expanded=ne,this.groupContext.expanded=ne,this.rowContext.expanded=ne,this.cd.markForCheck()}get expanded(){return this._expanded}ngDoCheck(){this.rowDiffer.diff(this.row)&&(this.rowContext.row=this.row,this.groupContext.group=this.row,this.cd.markForCheck())}onContextmenu(ne){this.rowContextmenu.emit({event:ne,row:this.row})}getGroupHeaderStyle(){const ne={};return ne.transform="translate3d("+this.offsetX+"px, 0px, 0px)",ne["backface-visibility"]="hidden",ne.width=this.innerWidth,ne}}return tt.\u0275fac=function(ne){return new(ne||tt)(r.Y36(r.sBO),r.Y36(r.aQg))},tt.\u0275cmp=r.Xpm({type:tt,selectors:[["datatable-row-wrapper"]],hostAttrs:[1,"datatable-row-wrapper"],hostBindings:function(ne,$e){1&ne&&r.NdJ("contextmenu",function(an){return $e.onContextmenu(an)})},inputs:{rowIndex:"rowIndex",expanded:"expanded",innerWidth:"innerWidth",rowDetail:"rowDetail",groupHeader:"groupHeader",offsetX:"offsetX",detailRowHeight:"detailRowHeight",row:"row",groupedRows:"groupedRows"},outputs:{rowContextmenu:"rowContextmenu"},ngContentSelectors:S,decls:3,vars:3,consts:[["class","datatable-group-header",3,"ngStyle",4,"ngIf"],[4,"ngIf"],["class","datatable-row-detail",3,"height",4,"ngIf"],[1,"datatable-group-header",3,"ngStyle"],[3,"ngTemplateOutlet","ngTemplateOutletContext"],[1,"datatable-row-detail"]],template:function(ne,$e){1&ne&&(r.F$t(),r.YNc(0,bt,2,2,"div",0),r.YNc(1,Gt,1,0,"ng-content",1),r.YNc(2,Zn,2,3,"div",2)),2&ne&&(r.Q6J("ngIf",$e.groupHeader&&$e.groupHeader.template),r.xp6(1),r.Q6J("ngIf",$e.groupHeader&&$e.groupHeader.template&&$e.expanded||!$e.groupHeader||!$e.groupHeader.template),r.xp6(1),r.Q6J("ngIf",$e.rowDetail&&$e.rowDetail.template&&$e.expanded))},directives:[u.O5,u.PC,u.tP],encapsulation:2,changeDetection:0}),tt})(),Ra=(()=>{class tt{constructor(ne,$e){this.cd=$e,this.activate=new r.vpe,this.treeAction=new r.vpe,this.isFocused=!1,this.onCheckboxChangeFn=this.onCheckboxChange.bind(this),this.activateFn=this.activate.emit.bind(this.activate),this.cellContext={onCheckboxChangeFn:this.onCheckboxChangeFn,activateFn:this.activateFn,row:this.row,group:this.group,value:this.value,column:this.column,rowHeight:this.rowHeight,isSelected:this.isSelected,rowIndex:this.rowIndex,treeStatus:this.treeStatus,onTreeAction:this.onTreeAction.bind(this)},this._element=ne.nativeElement}set group(ne){this._group=ne,this.cellContext.group=ne,this.checkValueUpdates(),this.cd.markForCheck()}get group(){return this._group}set rowHeight(ne){this._rowHeight=ne,this.cellContext.rowHeight=ne,this.checkValueUpdates(),this.cd.markForCheck()}get rowHeight(){return this._rowHeight}set isSelected(ne){this._isSelected=ne,this.cellContext.isSelected=ne,this.cd.markForCheck()}get isSelected(){return this._isSelected}set expanded(ne){this._expanded=ne,this.cellContext.expanded=ne,this.cd.markForCheck()}get expanded(){return this._expanded}set rowIndex(ne){this._rowIndex=ne,this.cellContext.rowIndex=ne,this.checkValueUpdates(),this.cd.markForCheck()}get rowIndex(){return this._rowIndex}set column(ne){this._column=ne,this.cellContext.column=ne,this.checkValueUpdates(),this.cd.markForCheck()}get column(){return this._column}set row(ne){this._row=ne,this.cellContext.row=ne,this.checkValueUpdates(),this.cd.markForCheck()}get row(){return this._row}set sorts(ne){this._sorts=ne,this.calcSortDir=this.calcSortDir(ne)}get sorts(){return this._sorts}set treeStatus(ne){this._treeStatus="collapsed"!==ne&&"expanded"!==ne&&"loading"!==ne&&"disabled"!==ne?"collapsed":ne,this.cellContext.treeStatus=this._treeStatus,this.checkValueUpdates(),this.cd.markForCheck()}get treeStatus(){return this._treeStatus}get columnCssClasses(){let ne="datatable-body-cell";if(this.column.cellClass)if("string"==typeof this.column.cellClass)ne+=" "+this.column.cellClass;else if("function"==typeof this.column.cellClass){const $e=this.column.cellClass({row:this.row,group:this.group,column:this.column,value:this.value,rowHeight:this.rowHeight});if("string"==typeof $e)ne+=" "+$e;else if("object"==typeof $e){const Lt=Object.keys($e);for(const an of Lt)!0===$e[an]&&(ne+=` ${an}`)}}return this.sortDir||(ne+=" sort-active"),this.isFocused&&(ne+=" active"),this.sortDir===us.asc&&(ne+=" sort-asc"),this.sortDir===us.desc&&(ne+=" sort-desc"),ne}get width(){return this.column.width}get minWidth(){return this.column.minWidth}get maxWidth(){return this.column.maxWidth}get height(){const ne=this.rowHeight;return isNaN(ne)?ne:ne+"px"}ngDoCheck(){this.checkValueUpdates()}ngOnDestroy(){this.cellTemplate&&this.cellTemplate.clear()}checkValueUpdates(){let ne="";if(this.row&&this.column){const $e=this.column.$$valueGetter(this.row,this.column.prop),Lt=this.column.pipe;Lt?ne=Lt.transform($e):void 0!==ne&&(ne=$e)}else ne="";this.value!==ne&&(this.value=ne,this.cellContext.value=ne,this.sanitizedValue=null!=ne?this.stripHtml(ne):ne,this.cd.markForCheck())}onFocus(){this.isFocused=!0}onBlur(){this.isFocused=!1}onClick(ne){this.activate.emit({type:"click",event:ne,row:this.row,group:this.group,rowHeight:this.rowHeight,column:this.column,value:this.value,cellElement:this._element})}onDblClick(ne){this.activate.emit({type:"dblclick",event:ne,row:this.row,group:this.group,rowHeight:this.rowHeight,column:this.column,value:this.value,cellElement:this._element})}onKeyDown(ne){const $e=ne.keyCode;($e===Ao.return||$e===Ao.down||$e===Ao.up||$e===Ao.left||$e===Ao.right)&&ne.target===this._element&&(ne.preventDefault(),ne.stopPropagation(),this.activate.emit({type:"keydown",event:ne,row:this.row,group:this.group,rowHeight:this.rowHeight,column:this.column,value:this.value,cellElement:this._element}))}onCheckboxChange(ne){this.activate.emit({type:"checkbox",event:ne,row:this.row,group:this.group,rowHeight:this.rowHeight,column:this.column,value:this.value,cellElement:this._element,treeStatus:"collapsed"})}calcSortDir(ne){if(!ne)return;const $e=ne.find(Lt=>Lt.prop===this.column.prop);return $e?$e.dir:void 0}stripHtml(ne){return ne.replace?ne.replace(/<\/?[^>]+(>|$)/g,""):ne}onTreeAction(){this.treeAction.emit(this.row)}calcLeftMargin(ne,$e){return ne.isTreeColumn?$e.level*(null!=ne.treeLevelIndent?ne.treeLevelIndent:50):0}}return tt.\u0275fac=function(ne){return new(ne||tt)(r.Y36(r.SBq),r.Y36(r.sBO))},tt.\u0275cmp=r.Xpm({type:tt,selectors:[["datatable-body-cell"]],viewQuery:function(ne,$e){if(1&ne&&r.Gf(Ur,7,r.s_b),2&ne){let Lt;r.iGM(Lt=r.CRH())&&($e.cellTemplate=Lt.first)}},hostVars:10,hostBindings:function(ne,$e){1&ne&&r.NdJ("focus",function(){return $e.onFocus()})("blur",function(){return $e.onBlur()})("click",function(an){return $e.onClick(an)})("dblclick",function(an){return $e.onDblClick(an)})("keydown",function(an){return $e.onKeyDown(an)}),2&ne&&(r.Tol($e.columnCssClasses),r.Udp("width",$e.width,"px")("min-width",$e.minWidth,"px")("max-width",$e.maxWidth,"px")("height",$e.height))},inputs:{group:"group",rowHeight:"rowHeight",isSelected:"isSelected",expanded:"expanded",rowIndex:"rowIndex",column:"column",row:"row",sorts:"sorts",treeStatus:"treeStatus",displayCheck:"displayCheck"},outputs:{activate:"activate",treeAction:"treeAction"},decls:5,vars:6,consts:[[1,"datatable-body-cell-label"],["class","datatable-checkbox",4,"ngIf"],[4,"ngIf"],[3,"title","innerHTML",4,"ngIf"],[1,"datatable-checkbox"],["type","checkbox",3,"checked","click"],["class","datatable-tree-button",3,"disabled","click",4,"ngIf"],[1,"datatable-tree-button",3,"disabled","click"],["class","icon datatable-icon-collapse",4,"ngIf"],["class","icon datatable-icon-up",4,"ngIf"],["class","icon datatable-icon-down",4,"ngIf"],[1,"icon","datatable-icon-collapse"],[1,"icon","datatable-icon-up"],[1,"icon","datatable-icon-down"],[3,"ngTemplateOutlet","ngTemplateOutletContext"],[3,"title","innerHTML"],["cellTemplate",""]],template:function(ne,$e){1&ne&&(r.TgZ(0,"div",0),r.YNc(1,di,2,1,"label",1),r.YNc(2,Yr,3,2,"ng-container",2),r.YNc(3,fi,1,2,"span",3),r.YNc(4,Hi,2,2,void 0,2),r.qZA()),2&ne&&(r.Udp("margin-left",$e.calcLeftMargin($e.column,$e.row),"px"),r.xp6(1),r.Q6J("ngIf",$e.column.checkboxable&&(!$e.displayCheck||$e.displayCheck($e.row,$e.column,$e.value))),r.xp6(1),r.Q6J("ngIf",$e.column.isTreeColumn),r.xp6(1),r.Q6J("ngIf",!$e.column.cellTemplate),r.xp6(1),r.Q6J("ngIf",$e.column.cellTemplate))},directives:[u.O5,u.tP],encapsulation:2,changeDetection:0}),tt})();function pl(tt,sn,ne){const $e=ne(sn,tt);return $e>-1?tt.splice($e,1):tt.push(sn),tt}let Po=(()=>{class tt{constructor(){this.activate=new r.vpe,this.select=new r.vpe}selectRow(ne,$e,Lt){if(!this.selectEnabled)return;const an=this.selectionType===dr.checkbox,pi=this.selectionType===dr.multiClick;let xi=[];xi=this.selectionType===dr.multi||an||pi?ne.shiftKey?function(tt,sn,ne,$e,Lt){const an=ne<$e;for(let ti=0;ti=$e&&ti<=ne,ts=ti<=$e&&ti>=ne;let wo={start:0,end:0};wo=an?{start:ne,end:$e}:{start:$e,end:ne+1},(an&&ts||!an&&xi)&&ti>=wo.start&&ti<=wo.end&&tt.push(pi)}return tt}([],this.rows,$e,this.prevIndex,this.getRowSelectedIdx.bind(this)):pl(ne.ctrlKey||ne.metaKey||pi||an?[...this.selected]:[],Lt,this.getRowSelectedIdx.bind(this)):pl([],Lt,this.getRowSelectedIdx.bind(this)),"function"==typeof this.selectCheck&&(xi=xi.filter(this.selectCheck.bind(this))),this.selected.splice(0,this.selected.length),this.selected.push(...xi),this.prevIndex=$e,this.select.emit({selected:xi})}onActivate(ne,$e){const{type:Lt,event:an,row:ti}=ne,pi=this.selectionType===dr.checkbox;!pi&&("click"===Lt||"dblclick"===Lt)||pi&&"checkbox"===Lt?this.selectRow(an,$e,ti):"keydown"===Lt&&(an.keyCode===Ao.return?this.selectRow(an,$e,ti):this.onKeyboardFocus(ne)),this.activate.emit(ne)}onKeyboardFocus(ne){const{keyCode:$e}=ne.event;if($e===Ao.up||$e===Ao.down||$e===Ao.right||$e===Ao.left){const an=this.selectionType===dr.cell;ne.cellElement&&an?an&&this.focusCell(ne.cellElement,ne.rowElement,$e,ne.cellIndex):this.focusRow(ne.rowElement,$e)}}focusRow(ne,$e){const Lt=this.getPrevNextRow(ne,$e);Lt&&Lt.focus()}getPrevNextRow(ne,$e){const Lt=ne.parentElement;if(Lt){let an;if($e===Ao.up?an=Lt.previousElementSibling:$e===Ao.down&&(an=Lt.nextElementSibling),an&&an.children.length)return an.children[0]}}focusCell(ne,$e,Lt,an){let ti;if(Lt===Ao.left)ti=ne.previousElementSibling;else if(Lt===Ao.right)ti=ne.nextElementSibling;else if(Lt===Ao.up||Lt===Ao.down){const pi=this.getPrevNextRow($e,Lt);if(pi){const xi=pi.getElementsByClassName("datatable-body-cell");xi.length&&(ti=xi[an])}}ti&&ti.focus()}getRowSelected(ne){return this.getRowSelectedIdx(ne,this.selected)>-1}getRowSelectedIdx(ne,$e){if(!$e||!$e.length)return-1;const Lt=this.rowIdentity(ne);return $e.findIndex(an=>this.rowIdentity(an)===Lt)}}return tt.\u0275fac=function(ne){return new(ne||tt)},tt.\u0275cmp=r.Xpm({type:tt,selectors:[["datatable-selection"]],inputs:{rows:"rows",selected:"selected",selectEnabled:"selectEnabled",selectionType:"selectionType",rowIdentity:"rowIdentity",selectCheck:"selectCheck"},outputs:{activate:"activate",select:"select"},ngContentSelectors:S,decls:1,vars:0,template:function(ne,$e){1&ne&&(r.F$t(),r.Hsn(0))},encapsulation:2,changeDetection:0}),tt})();function bo(tt){const sn=tt.filter(ne=>!!ne);return!sn.length||sn.some(ne=>"number"!=typeof ne)?null:sn.reduce((ne,$e)=>ne+$e)}function Ls(tt){return null}let ps=(()=>{class tt{constructor(){this.summaryRow={}}ngOnChanges(){!this.columns||!this.rows||(this.updateInternalColumns(),this.updateValues())}updateInternalColumns(){this._internalColumns=this.columns.map(ne=>Object.assign(Object.assign({},ne),{cellTemplate:ne.summaryTemplate}))}updateValues(){this.summaryRow={},this.columns.filter(ne=>!ne.summaryTemplate).forEach(ne=>{const $e=this.rows.map(an=>an[ne.prop]),Lt=this.getSummaryFunction(ne);this.summaryRow[ne.prop]=ne.pipe?ne.pipe.transform(Lt($e)):Lt($e)})}getSummaryFunction(ne){return void 0===ne.summaryFunc?bo:null===ne.summaryFunc?Ls:ne.summaryFunc}}return tt.\u0275fac=function(ne){return new(ne||tt)},tt.\u0275cmp=r.Xpm({type:tt,selectors:[["datatable-summary-row"]],hostAttrs:[1,"datatable-summary-row"],inputs:{rows:"rows",columns:"columns",rowHeight:"rowHeight",offsetX:"offsetX",innerWidth:"innerWidth"},features:[r.TTD],decls:1,vars:1,consts:[["tabindex","-1",3,"innerWidth","offsetX","columns","rowHeight","row","rowIndex",4,"ngIf"],["tabindex","-1",3,"innerWidth","offsetX","columns","rowHeight","row","rowIndex"]],template:function(ne,$e){1&ne&&r.YNc(0,Zr,1,6,"datatable-body-row",0),2&ne&&r.Q6J("ngIf",$e.summaryRow&&$e._internalColumns)},directives:[u.O5,fs],encapsulation:2}),tt})(),So=(()=>{class tt{static forRoot(ne){return{ngModule:tt,providers:[{provide:"configuration",useValue:ne}]}}}return tt.\u0275fac=function(ne){return new(ne||tt)},tt.\u0275mod=r.oAB({type:tt}),tt.\u0275inj=r.cJS({providers:[Cn,Wt,zn],imports:[[u.ez]]}),tt})();"undefined"!=typeof document&&!document.elementsFromPoint&&(document.elementsFromPoint=function(tt,sn){const ne=[],$e=[];let Lt,an,ti;for(;(Lt=document.elementFromPoint(tt,sn))&&-1===ne.indexOf(Lt)&&null!=Lt;)ne.push(Lt),$e.push({value:Lt.style.getPropertyValue("pointer-events"),priority:Lt.style.getPropertyPriority("pointer-events")}),Lt.style.setProperty("pointer-events","none","important");for(an=$e.length;ti=$e[--an];)ne[an].style.setProperty("pointer-events",ti.value?ti.value:"",ti.priority);return ne})},67506:v=>{"use strict";function T(u,p,d){u instanceof RegExp&&(u=i(u,d)),p instanceof RegExp&&(p=i(p,d));var e=r(u,p,d);return e&&{start:e[0],end:e[1],pre:d.slice(0,e[0]),body:d.slice(e[0]+u.length,e[1]),post:d.slice(e[1]+p.length)}}function i(u,p){var d=p.match(u);return d?d[0]:null}function r(u,p,d){var e,_,y,S,A,N=d.indexOf(u),L=d.indexOf(p,N+1),Z=N;if(N>=0&&L>0){if(u===p)return[N,L];for(e=[],y=d.length;Z>=0&&!A;)Z==N?(e.push(Z),N=d.indexOf(u,Z+1)):1==e.length?A=[e.pop(),L]:((_=e.pop())=0?N:L;e.length&&(A=[y,S])}return A}v.exports=T,T.range=r},96434:(v,T)=>{"use strict";T.byteLength=function(J){var K=_(J),ue=K[1];return 3*(K[0]+ue)/4-ue},T.toByteArray=function(J){var K,ie,ee=_(J),ue=ee[0],ae=ee[1],H=new u(function(J,K,ee){return 3*(K+ee)/4-ee}(0,ue,ae)),se=0,Ee=ae>0?ue-4:ue;for(ie=0;ie>16&255,H[se++]=K>>8&255,H[se++]=255&K;return 2===ae&&(K=r[J.charCodeAt(ie)]<<2|r[J.charCodeAt(ie+1)]>>4,H[se++]=255&K),1===ae&&(K=r[J.charCodeAt(ie)]<<10|r[J.charCodeAt(ie+1)]<<4|r[J.charCodeAt(ie+2)]>>2,H[se++]=K>>8&255,H[se++]=255&K),H},T.fromByteArray=function(J){for(var K,ee=J.length,ue=ee%3,ae=[],H=16383,se=0,Ee=ee-ue;seEe?Ee:se+H));return 1===ue?ae.push(i[(K=J[ee-1])>>2]+i[K<<4&63]+"=="):2===ue&&ae.push(i[(K=(J[ee-2]<<8)+J[ee-1])>>10]+i[K>>4&63]+i[K<<2&63]+"="),ae.join("")};for(var i=[],r=[],u="undefined"!=typeof Uint8Array?Uint8Array:Array,p="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",d=0,e=p.length;d0)throw new Error("Invalid string. Length must be a multiple of 4");var ee=J.indexOf("=");return-1===ee&&(ee=K),[ee,ee===K?0:4-ee%4]}function N(J){return i[J>>18&63]+i[J>>12&63]+i[J>>6&63]+i[63&J]}function L(J,K,ee){for(var ae=[],H=K;H{var r=i(2665),u=i(67506);v.exports=function(se){return se?("{}"===se.substr(0,2)&&(se="\\{\\}"+se.substr(2)),H(function(se){return se.split("\\\\").join(p).split("\\{").join(d).split("\\}").join(e).split("\\,").join(_).split("\\.").join(y)}(se),!0).map(N)):[]};var p="\0SLASH"+Math.random()+"\0",d="\0OPEN"+Math.random()+"\0",e="\0CLOSE"+Math.random()+"\0",_="\0COMMA"+Math.random()+"\0",y="\0PERIOD"+Math.random()+"\0";function S(se){return parseInt(se,10)==se?parseInt(se,10):se.charCodeAt(0)}function N(se){return se.split(p).join("\\").split(d).join("{").split(e).join("}").split(_).join(",").split(y).join(".")}function L(se){if(!se)return[""];var Ee=[],ie=u("{","}",se);if(!ie)return se.split(",");var ge=ie.body,De=ie.post,ce=ie.pre.split(",");ce[ce.length-1]+="{"+ge+"}";var lt=L(De);return De.length&&(ce[ce.length-1]+=lt.shift(),ce.push.apply(ce,lt)),Ee.push.apply(Ee,ce),Ee}function K(se){return"{"+se+"}"}function ee(se){return/^-?0\d/.test(se)}function ue(se,Ee){return se<=Ee}function ae(se,Ee){return se>=Ee}function H(se,Ee){var ie=[],he=u("{","}",se);if(!he||/\$$/.test(he.pre))return[se];var Ve,ge=/^-?\d+\.\.-?\d+(?:\.\.-?\d+)?$/.test(he.body),De=/^[a-zA-Z]\.\.[a-zA-Z](?:\.\.-?\d+)?$/.test(he.body),ce=ge||De,lt=he.body.indexOf(",")>=0;if(!ce&&!lt)return he.post.match(/,.*\}/)?H(se=he.pre+"{"+he.body+e+he.post):[se];if(ce)Ve=he.body.split(/\.\./);else if(1===(Ve=L(he.body)).length&&1===(Ve=H(Ve[0],!1).map(K)).length)return(Be=he.post.length?H(he.post,!1):[""]).map(function(di){return he.pre+Ve[0]+di});var Pe,ze=he.pre,Be=he.post.length?H(he.post,!1):[""];if(ce){var je=S(Ve[0]),He=S(Ve[1]),Vt=Math.max(Ve[0].length,Ve[1].length),it=3==Ve.length?Math.abs(S(Ve[2])):1,tn=ue;He0){var Gt=new Array(bt+1).join("0");Bt=Ut<0?"-"+Gt+Bt.slice(1):Gt+Bt}}Pe.push(Bt)}}else Pe=r(Ve,function(Ur){return H(Ur,!1)});for(var xt=0;xt{"use strict";var r=i(18540),u=i(60044),p=u(r("String.prototype.indexOf"));v.exports=function(e,_){var y=r(e,!!_);return"function"==typeof y&&p(e,".prototype.")>-1?u(y):y}},60044:(v,T,i)=>{"use strict";var r=i(75396),u=i(18540),p=u("%Function.prototype.apply%"),d=u("%Function.prototype.call%"),e=u("%Reflect.apply%",!0)||r.call(d,p),_=u("%Object.getOwnPropertyDescriptor%",!0),y=u("%Object.defineProperty%",!0),S=u("%Math.max%");if(y)try{y({},"a",{value:1})}catch(N){y=null}v.exports=function(L){var Z=e(r,d,arguments);if(_&&y){var J=_(Z,"length");J.configurable&&y(Z,"length",{value:1+S(0,L.length-(arguments.length-1))})}return Z};var A=function(){return e(r,p,arguments)};y?y(v.exports,"apply",{value:A}):v.exports.apply=A},72318:v=>{var T=!("undefined"==typeof window||!window.document||!window.document.createElement);v.exports=T},6823:function(v,T,i){v.exports=function(r){"use strict";r=r&&r.hasOwnProperty("default")?r.default:r;var d={aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],rebeccapurple:[102,51,153],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]},e=function(h,E){return h(E={exports:{}},E.exports),E.exports}(function(h){var E={};for(var R in d)d.hasOwnProperty(R)&&(E[d[R]]=R);var F=h.exports={rgb:{channels:3,labels:"rgb"},hsl:{channels:3,labels:"hsl"},hsv:{channels:3,labels:"hsv"},hwb:{channels:3,labels:"hwb"},cmyk:{channels:4,labels:"cmyk"},xyz:{channels:3,labels:"xyz"},lab:{channels:3,labels:"lab"},lch:{channels:3,labels:"lch"},hex:{channels:1,labels:["hex"]},keyword:{channels:1,labels:["keyword"]},ansi16:{channels:1,labels:["ansi16"]},ansi256:{channels:1,labels:["ansi256"]},hcg:{channels:3,labels:["h","c","g"]},apple:{channels:3,labels:["r16","g16","b16"]},gray:{channels:1,labels:["gray"]}};for(var q in F)if(F.hasOwnProperty(q)){if(!("channels"in F[q]))throw new Error("missing channels property: "+q);if(!("labels"in F[q]))throw new Error("missing channel labels property: "+q);if(F[q].labels.length!==F[q].channels)throw new Error("channel and label counts mismatch: "+q);var de=F[q].channels,ye=F[q].labels;delete F[q].channels,delete F[q].labels,Object.defineProperty(F[q],"channels",{value:de}),Object.defineProperty(F[q],"labels",{value:ye})}function Ue(Oe,Xe){return Math.pow(Oe[0]-Xe[0],2)+Math.pow(Oe[1]-Xe[1],2)+Math.pow(Oe[2]-Xe[2],2)}F.rgb.hsl=function(Oe){var ir,Pi,Xe=Oe[0]/255,gt=Oe[1]/255,yt=Oe[2]/255,nn=Math.min(Xe,gt,yt),Pn=Math.max(Xe,gt,yt),xn=Pn-nn;return Pn===nn?ir=0:Xe===Pn?ir=(gt-yt)/xn:gt===Pn?ir=2+(yt-Xe)/xn:yt===Pn&&(ir=4+(Xe-gt)/xn),(ir=Math.min(60*ir,360))<0&&(ir+=360),Pi=(nn+Pn)/2,[ir,100*(Pn===nn?0:Pi<=.5?xn/(Pn+nn):xn/(2-Pn-nn)),100*Pi]},F.rgb.hsv=function(Oe){var Xe,gt,yt,nn,Pn,xn=Oe[0]/255,ir=Oe[1]/255,Gr=Oe[2]/255,Pi=Math.max(xn,ir,Gr),Zo=Pi-Math.min(xn,ir,Gr),Lo=function(Gs){return(Pi-Gs)/6/Zo+.5};return 0===Zo?nn=Pn=0:(Pn=Zo/Pi,Xe=Lo(xn),gt=Lo(ir),yt=Lo(Gr),xn===Pi?nn=yt-gt:ir===Pi?nn=1/3+Xe-yt:Gr===Pi&&(nn=2/3+gt-Xe),nn<0?nn+=1:nn>1&&(nn-=1)),[360*nn,100*Pn,100*Pi]},F.rgb.hwb=function(Oe){var Xe=Oe[0],gt=Oe[1],yt=Oe[2];return[F.rgb.hsl(Oe)[0],1/255*Math.min(Xe,Math.min(gt,yt))*100,100*(yt=1-1/255*Math.max(Xe,Math.max(gt,yt)))]},F.rgb.cmyk=function(Oe){var ir,Xe=Oe[0]/255,gt=Oe[1]/255,yt=Oe[2]/255;return[100*((1-Xe-(ir=Math.min(1-Xe,1-gt,1-yt)))/(1-ir)||0),100*((1-gt-ir)/(1-ir)||0),100*((1-yt-ir)/(1-ir)||0),100*ir]},F.rgb.keyword=function(Oe){var Xe=E[Oe];if(Xe)return Xe;var yt,gt=1/0;for(var nn in d)if(d.hasOwnProperty(nn)){var xn=Ue(Oe,d[nn]);xn.04045?Math.pow((Xe+.055)/1.055,2.4):Xe/12.92)+.3576*(gt=gt>.04045?Math.pow((gt+.055)/1.055,2.4):gt/12.92)+.1805*(yt=yt>.04045?Math.pow((yt+.055)/1.055,2.4):yt/12.92)),100*(.2126*Xe+.7152*gt+.0722*yt),100*(.0193*Xe+.1192*gt+.9505*yt)]},F.rgb.lab=function(Oe){var Xe=F.rgb.xyz(Oe),gt=Xe[0],yt=Xe[1],nn=Xe[2];return yt/=100,nn/=108.883,gt=(gt/=95.047)>.008856?Math.pow(gt,1/3):7.787*gt+16/116,[116*(yt=yt>.008856?Math.pow(yt,1/3):7.787*yt+16/116)-16,500*(gt-yt),200*(yt-(nn=nn>.008856?Math.pow(nn,1/3):7.787*nn+16/116))]},F.hsl.rgb=function(Oe){var nn,Pn,xn,ir,Gr,Xe=Oe[0]/360,gt=Oe[1]/100,yt=Oe[2]/100;if(0===gt)return[Gr=255*yt,Gr,Gr];nn=2*yt-(Pn=yt<.5?yt*(1+gt):yt+gt-yt*gt),ir=[0,0,0];for(var Pi=0;Pi<3;Pi++)(xn=Xe+1/3*-(Pi-1))<0&&xn++,xn>1&&xn--,ir[Pi]=255*(Gr=6*xn<1?nn+6*(Pn-nn)*xn:2*xn<1?Pn:3*xn<2?nn+(Pn-nn)*(2/3-xn)*6:nn);return ir},F.hsl.hsv=function(Oe){var Xe=Oe[0],gt=Oe[1]/100,yt=Oe[2]/100,nn=gt,Pn=Math.max(yt,.01);return gt*=(yt*=2)<=1?yt:2-yt,nn*=Pn<=1?Pn:2-Pn,[Xe,100*(0===yt?2*nn/(Pn+nn):2*gt/(yt+gt)),(yt+gt)/2*100]},F.hsv.rgb=function(Oe){var Xe=Oe[0]/60,gt=Oe[1]/100,yt=Oe[2]/100,nn=Math.floor(Xe)%6,Pn=Xe-Math.floor(Xe),xn=255*yt*(1-gt),ir=255*yt*(1-gt*Pn),Gr=255*yt*(1-gt*(1-Pn));switch(yt*=255,nn){case 0:return[yt,Gr,xn];case 1:return[ir,yt,xn];case 2:return[xn,yt,Gr];case 3:return[xn,ir,yt];case 4:return[Gr,xn,yt];case 5:return[yt,xn,ir]}},F.hsv.hsl=function(Oe){var Pn,xn,ir,Xe=Oe[0],gt=Oe[1]/100,yt=Oe[2]/100,nn=Math.max(yt,.01);return ir=(2-gt)*yt,xn=gt*nn,[Xe,100*(xn=(xn/=(Pn=(2-gt)*nn)<=1?Pn:2-Pn)||0),100*(ir/=2)]},F.hwb.rgb=function(Oe){var Pn,xn,ir,Gr,Pi,Zo,Lo,Xe=Oe[0]/360,gt=Oe[1]/100,yt=Oe[2]/100,nn=gt+yt;switch(nn>1&&(gt/=nn,yt/=nn),ir=6*Xe-(Pn=Math.floor(6*Xe)),0!=(1&Pn)&&(ir=1-ir),Gr=gt+ir*((xn=1-yt)-gt),Pn){default:case 6:case 0:Pi=xn,Zo=Gr,Lo=gt;break;case 1:Pi=Gr,Zo=xn,Lo=gt;break;case 2:Pi=gt,Zo=xn,Lo=Gr;break;case 3:Pi=gt,Zo=Gr,Lo=xn;break;case 4:Pi=Gr,Zo=gt,Lo=xn;break;case 5:Pi=xn,Zo=gt,Lo=Gr}return[255*Pi,255*Zo,255*Lo]},F.cmyk.rgb=function(Oe){var gt=Oe[1]/100,yt=Oe[2]/100,nn=Oe[3]/100;return[255*(1-Math.min(1,Oe[0]/100*(1-nn)+nn)),255*(1-Math.min(1,gt*(1-nn)+nn)),255*(1-Math.min(1,yt*(1-nn)+nn))]},F.xyz.rgb=function(Oe){var nn,Pn,xn,Xe=Oe[0]/100,gt=Oe[1]/100,yt=Oe[2]/100;return Pn=-.9689*Xe+1.8758*gt+.0415*yt,xn=.0557*Xe+-.204*gt+1.057*yt,nn=(nn=3.2406*Xe+-1.5372*gt+-.4986*yt)>.0031308?1.055*Math.pow(nn,1/2.4)-.055:12.92*nn,Pn=Pn>.0031308?1.055*Math.pow(Pn,1/2.4)-.055:12.92*Pn,xn=xn>.0031308?1.055*Math.pow(xn,1/2.4)-.055:12.92*xn,[255*(nn=Math.min(Math.max(0,nn),1)),255*(Pn=Math.min(Math.max(0,Pn),1)),255*(xn=Math.min(Math.max(0,xn),1))]},F.xyz.lab=function(Oe){var Xe=Oe[0],gt=Oe[1],yt=Oe[2];return gt/=100,yt/=108.883,Xe=(Xe/=95.047)>.008856?Math.pow(Xe,1/3):7.787*Xe+16/116,[116*(gt=gt>.008856?Math.pow(gt,1/3):7.787*gt+16/116)-16,500*(Xe-gt),200*(gt-(yt=yt>.008856?Math.pow(yt,1/3):7.787*yt+16/116))]},F.lab.xyz=function(Oe){var nn,Pn,xn;nn=Oe[1]/500+(Pn=(Oe[0]+16)/116),xn=Pn-Oe[2]/200;var ir=Math.pow(Pn,3),Gr=Math.pow(nn,3),Pi=Math.pow(xn,3);return Pn=ir>.008856?ir:(Pn-16/116)/7.787,nn=Gr>.008856?Gr:(nn-16/116)/7.787,xn=Pi>.008856?Pi:(xn-16/116)/7.787,[nn*=95.047,Pn*=100,xn*=108.883]},F.lab.lch=function(Oe){var Pn,Xe=Oe[0],gt=Oe[1],yt=Oe[2];return(Pn=360*Math.atan2(yt,gt)/2/Math.PI)<0&&(Pn+=360),[Xe,Math.sqrt(gt*gt+yt*yt),Pn]},F.lch.lab=function(Oe){var xn,gt=Oe[1];return xn=Oe[2]/360*2*Math.PI,[Oe[0],gt*Math.cos(xn),gt*Math.sin(xn)]},F.rgb.ansi16=function(Oe){var Xe=Oe[0],gt=Oe[1],yt=Oe[2],nn=1 in arguments?arguments[1]:F.rgb.hsv(Oe)[2];if(0===(nn=Math.round(nn/50)))return 30;var Pn=30+(Math.round(yt/255)<<2|Math.round(gt/255)<<1|Math.round(Xe/255));return 2===nn&&(Pn+=60),Pn},F.hsv.ansi16=function(Oe){return F.rgb.ansi16(F.hsv.rgb(Oe),Oe[2])},F.rgb.ansi256=function(Oe){var Xe=Oe[0],gt=Oe[1],yt=Oe[2];return Xe===gt&>===yt?Xe<8?16:Xe>248?231:Math.round((Xe-8)/247*24)+232:16+36*Math.round(Xe/255*5)+6*Math.round(gt/255*5)+Math.round(yt/255*5)},F.ansi16.rgb=function(Oe){var Xe=Oe%10;if(0===Xe||7===Xe)return Oe>50&&(Xe+=3.5),[Xe=Xe/10.5*255,Xe,Xe];var gt=.5*(1+~~(Oe>50));return[(1&Xe)*gt*255,(Xe>>1&1)*gt*255,(Xe>>2&1)*gt*255]},F.ansi256.rgb=function(Oe){if(Oe>=232){var Xe=10*(Oe-232)+8;return[Xe,Xe,Xe]}var gt;return Oe-=16,[Math.floor(Oe/36)/5*255,Math.floor((gt=Oe%36)/6)/5*255,gt%6/5*255]},F.rgb.hex=function(Oe){var gt=(((255&Math.round(Oe[0]))<<16)+((255&Math.round(Oe[1]))<<8)+(255&Math.round(Oe[2]))).toString(16).toUpperCase();return"000000".substring(gt.length)+gt},F.hex.rgb=function(Oe){var Xe=Oe.toString(16).match(/[a-f0-9]{6}|[a-f0-9]{3}/i);if(!Xe)return[0,0,0];var gt=Xe[0];3===Xe[0].length&&(gt=gt.split("").map(function(ir){return ir+ir}).join(""));var yt=parseInt(gt,16);return[yt>>16&255,yt>>8&255,255&yt]},F.rgb.hcg=function(Oe){var Gr,Xe=Oe[0]/255,gt=Oe[1]/255,yt=Oe[2]/255,nn=Math.max(Math.max(Xe,gt),yt),Pn=Math.min(Math.min(Xe,gt),yt),xn=nn-Pn;return Gr=xn<=0?0:nn===Xe?(gt-yt)/xn%6:nn===gt?2+(yt-Xe)/xn:4+(Xe-gt)/xn+4,Gr/=6,[360*(Gr%=1),100*xn,100*(xn<1?Pn/(1-xn):0)]},F.hsl.hcg=function(Oe){var yt,Xe=Oe[1]/100,gt=Oe[2]/100,nn=0;return(yt=gt<.5?2*Xe*gt:2*Xe*(1-gt))<1&&(nn=(gt-.5*yt)/(1-yt)),[Oe[0],100*yt,100*nn]},F.hsv.hcg=function(Oe){var gt=Oe[2]/100,yt=Oe[1]/100*gt,nn=0;return yt<1&&(nn=(gt-yt)/(1-yt)),[Oe[0],100*yt,100*nn]},F.hcg.rgb=function(Oe){var gt=Oe[1]/100,yt=Oe[2]/100;if(0===gt)return[255*yt,255*yt,255*yt];var Gr,nn=[0,0,0],Pn=Oe[0]/360%1*6,xn=Pn%1,ir=1-xn;switch(Math.floor(Pn)){case 0:nn[0]=1,nn[1]=xn,nn[2]=0;break;case 1:nn[0]=ir,nn[1]=1,nn[2]=0;break;case 2:nn[0]=0,nn[1]=1,nn[2]=xn;break;case 3:nn[0]=0,nn[1]=ir,nn[2]=1;break;case 4:nn[0]=xn,nn[1]=0,nn[2]=1;break;default:nn[0]=1,nn[1]=0,nn[2]=ir}return[255*(gt*nn[0]+(Gr=(1-gt)*yt)),255*(gt*nn[1]+Gr),255*(gt*nn[2]+Gr)]},F.hcg.hsv=function(Oe){var Xe=Oe[1]/100,yt=Xe+Oe[2]/100*(1-Xe),nn=0;return yt>0&&(nn=Xe/yt),[Oe[0],100*nn,100*yt]},F.hcg.hsl=function(Oe){var Xe=Oe[1]/100,yt=Oe[2]/100*(1-Xe)+.5*Xe,nn=0;return yt>0&&yt<.5?nn=Xe/(2*yt):yt>=.5&&yt<1&&(nn=Xe/(2*(1-yt))),[Oe[0],100*nn,100*yt]},F.hcg.hwb=function(Oe){var Xe=Oe[1]/100,yt=Xe+Oe[2]/100*(1-Xe);return[Oe[0],100*(yt-Xe),100*(1-yt)]},F.hwb.hcg=function(Oe){var yt=1-Oe[2]/100,nn=yt-Oe[1]/100,Pn=0;return nn<1&&(Pn=(yt-nn)/(1-nn)),[Oe[0],100*nn,100*Pn]},F.apple.rgb=function(Oe){return[Oe[0]/65535*255,Oe[1]/65535*255,Oe[2]/65535*255]},F.rgb.apple=function(Oe){return[Oe[0]/255*65535,Oe[1]/255*65535,Oe[2]/255*65535]},F.gray.rgb=function(Oe){return[Oe[0]/100*255,Oe[0]/100*255,Oe[0]/100*255]},F.gray.hsl=F.gray.hsv=function(Oe){return[0,0,Oe[0]]},F.gray.hwb=function(Oe){return[0,100,Oe[0]]},F.gray.cmyk=function(Oe){return[0,0,0,Oe[0]]},F.gray.lab=function(Oe){return[Oe[0],0,0]},F.gray.hex=function(Oe){var Xe=255&Math.round(Oe[0]/100*255),yt=((Xe<<16)+(Xe<<8)+Xe).toString(16).toUpperCase();return"000000".substring(yt.length)+yt},F.rgb.gray=function(Oe){return[(Oe[0]+Oe[1]+Oe[2])/3/255*100]}});function he(h){var E=function(){for(var h={},E=Object.keys(e),R=E.length,F=0;F1&&(R=Array.prototype.slice.call(arguments));var F=h(R);if("object"==typeof F)for(var q=F.length,de=0;de1&&(R=Array.prototype.slice.call(arguments)),h(R))};return"conversion"in h&&(E.conversion=h.conversion),E}(q)})});var Pe=lt,je={aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],rebeccapurple:[102,51,153],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]},He={getRgba:Vt,getHsla:it,getRgb:function(h){var E=Vt(h);return E&&E.slice(0,3)},getHsl:function(h){var E=it(h);return E&&E.slice(0,3)},getHwb:tn,getAlpha:function(h){var E=Vt(h);return E||(E=it(h))||(E=tn(h))?E[3]:void 0},hexString:function(h,E){return E=void 0!==E&&3===h.length?E:h[3],"#"+Kr(h[0])+Kr(h[1])+Kr(h[2])+(E>=0&&E<1?Kr(Math.round(255*E)):"")},rgbString:function(h,E){return E<1||h[3]&&h[3]<1?Gt(h,E):"rgb("+h[0]+", "+h[1]+", "+h[2]+")"},rgbaString:Gt,percentString:function(h,E){return E<1||h[3]&&h[3]<1?Xt(h,E):"rgb("+Math.round(h[0]/255*100)+"%, "+Math.round(h[1]/255*100)+"%, "+Math.round(h[2]/255*100)+"%)"},percentaString:Xt,hslString:function(h,E){return E<1||h[3]&&h[3]<1?Ur(h,E):"hsl("+h[0]+", "+h[1]+"%, "+h[2]+"%)"},hslaString:Ur,hwbString:function(h,E){return void 0===E&&(E=void 0!==h[3]?h[3]:1),"hwb("+h[0]+", "+h[1]+"%, "+h[2]+"%"+(void 0!==E&&1!==E?", "+E:"")+")"},keyword:function(h){return ei[h.slice(0,3)]}};function Vt(h){if(h){var ye=[0,0,0],Ue=1,Oe=h.match(/^#([a-fA-F0-9]{3,4})$/i),Xe="";if(Oe){Xe=(Oe=Oe[1])[3];for(var gt=0;gtR?(E+.05)/(R+.05):(R+.05)/(E+.05)},level:function(h){var E=this.contrast(h);return E>=7.1?"AAA":E>=4.5?"AA":""},dark:function(){var h=this.values.rgb;return(299*h[0]+587*h[1]+114*h[2])/1e3<128},light:function(){return!this.dark()},negate:function(){for(var h=[],E=0;E<3;E++)h[E]=255-this.values.rgb[E];return this.setValues("rgb",h),this},lighten:function(h){var E=this.values.hsl;return E[2]+=E[2]*h,this.setValues("hsl",E),this},darken:function(h){var E=this.values.hsl;return E[2]-=E[2]*h,this.setValues("hsl",E),this},saturate:function(h){var E=this.values.hsl;return E[1]+=E[1]*h,this.setValues("hsl",E),this},desaturate:function(h){var E=this.values.hsl;return E[1]-=E[1]*h,this.setValues("hsl",E),this},whiten:function(h){var E=this.values.hwb;return E[1]+=E[1]*h,this.setValues("hwb",E),this},blacken:function(h){var E=this.values.hwb;return E[2]+=E[2]*h,this.setValues("hwb",E),this},greyscale:function(){var h=this.values.rgb,E=.3*h[0]+.59*h[1]+.11*h[2];return this.setValues("rgb",[E,E,E]),this},clearer:function(h){var E=this.values.alpha;return this.setValues("alpha",E-E*h),this},opaquer:function(h){var E=this.values.alpha;return this.setValues("alpha",E+E*h),this},rotate:function(h){var E=this.values.hsl,R=(E[0]+h)%360;return E[0]=R<0?360+R:R,this.setValues("hsl",E),this},mix:function(h,E){var R=this,F=h,q=void 0===E?.5:E,de=2*q-1,ye=R.alpha()-F.alpha(),Ue=((de*ye==-1?de:(de+ye)/(1+de*ye))+1)/2,Oe=1-Ue;return this.rgb(Ue*R.red()+Oe*F.red(),Ue*R.green()+Oe*F.green(),Ue*R.blue()+Oe*F.blue()).alpha(R.alpha()*q+F.alpha()*(1-q))},toJSON:function(){return this.rgb()},clone:function(){var F,q,h=new $n,E=this.values,R=h.values;for(var de in E)E.hasOwnProperty(de)&&("[object Array]"===(q={}.toString.call(F=E[de]))?R[de]=F.slice(0):"[object Number]"===q?R[de]=F:console.error("unexpected color value:",F));return h}},$n.prototype.spaces={rgb:["red","green","blue"],hsl:["hue","saturation","lightness"],hsv:["hue","saturation","value"],hwb:["hue","whiteness","blackness"],cmyk:["cyan","magenta","yellow","black"]},$n.prototype.maxes={rgb:[255,255,255],hsl:[360,100,100],hsv:[360,100,100],hwb:[360,100,100],cmyk:[100,100,100,100]},$n.prototype.getValues=function(h){for(var E=this.values,R={},F=0;F=0;q--)E.call(R,h[q],q);else for(q=0;q=1?h:-(Math.sqrt(1-h*h)-1)},easeOutCirc:function(h){return Math.sqrt(1-(h-=1)*h)},easeInOutCirc:function(h){return(h/=.5)<1?-.5*(Math.sqrt(1-h*h)-1):.5*(Math.sqrt(1-(h-=2)*h)+1)},easeInElastic:function(h){var E=1.70158,R=0,F=1;return 0===h?0:1===h?1:(R||(R=.3),F<1?(F=1,E=R/4):E=R/(2*Math.PI)*Math.asin(1/F),-F*Math.pow(2,10*(h-=1))*Math.sin((h-E)*(2*Math.PI)/R))},easeOutElastic:function(h){var E=1.70158,R=0,F=1;return 0===h?0:1===h?1:(R||(R=.3),F<1?(F=1,E=R/4):E=R/(2*Math.PI)*Math.asin(1/F),F*Math.pow(2,-10*h)*Math.sin((h-E)*(2*Math.PI)/R)+1)},easeInOutElastic:function(h){var E=1.70158,R=0,F=1;return 0===h?0:2==(h/=.5)?1:(R||(R=.45),F<1?(F=1,E=R/4):E=R/(2*Math.PI)*Math.asin(1/F),h<1?F*Math.pow(2,10*(h-=1))*Math.sin((h-E)*(2*Math.PI)/R)*-.5:F*Math.pow(2,-10*(h-=1))*Math.sin((h-E)*(2*Math.PI)/R)*.5+1)},easeInBack:function(h){var E=1.70158;return h*h*((E+1)*h-E)},easeOutBack:function(h){var E=1.70158;return(h-=1)*h*((E+1)*h+E)+1},easeInOutBack:function(h){var E=1.70158;return(h/=.5)<1?h*h*((1+(E*=1.525))*h-E)*.5:.5*((h-=2)*h*((1+(E*=1.525))*h+E)+2)},easeInBounce:function(h){return 1-Hi.easeOutBounce(1-h)},easeOutBounce:function(h){return h<1/2.75?7.5625*h*h:h<2/2.75?7.5625*(h-=1.5/2.75)*h+.75:h<2.5/2.75?7.5625*(h-=2.25/2.75)*h+.9375:7.5625*(h-=2.625/2.75)*h+.984375},easeInOutBounce:function(h){return h<.5?.5*Hi.easeInBounce(2*h):.5*Hi.easeOutBounce(2*h-1)+.5}},Zr={effects:Hi};ki.easingEffects=Hi;var Cn=Math.PI,Wt=Cn/180,zn=2*Cn,rr=Cn/2,Fr=Cn/4,Gn=2*Cn/3,Jr={clear:function(h){h.ctx.clearRect(0,0,h.width,h.height)},roundedRect:function(h,E,R,F,q,de){if(de){var ye=Math.min(de,q/2,F/2),Ue=E+ye,Oe=R+ye,Xe=E+F-ye,gt=R+q-ye;h.moveTo(E,Oe),UeE.left-R&&h.xE.top-R&&h.y0&&h.requestAnimationFrame()},advance:function(){for(var E,R,F,q,h=this.animations,de=0;de=F?(Ge.callback(E.onAnimationComplete,[E],R),R.animating=!1,h.splice(de,1)):++de}},Co=Ge.options.resolve,Gi=["push","pop","shift","splice","unshift"];function jo(h,E){var R=h._chartjs;if(R){var F=R.listeners,q=F.indexOf(E);-1!==q&&F.splice(q,1),!(F.length>0)&&(Gi.forEach(function(de){delete h[de]}),delete h._chartjs)}}var To=function(h,E){this.initialize(h,E)};Ge.extend(To.prototype,{datasetElementType:null,dataElementType:null,_datasetElementOptions:["backgroundColor","borderCapStyle","borderColor","borderDash","borderDashOffset","borderJoinStyle","borderWidth"],_dataElementOptions:["backgroundColor","borderColor","borderWidth","pointStyle"],initialize:function(h,E){var R=this;R.chart=h,R.index=E,R.linkScales(),R.addElements(),R._type=R.getMeta().type},updateIndex:function(h){this.index=h},linkScales:function(){var h=this,E=h.getMeta(),R=h.chart,F=R.scales,q=h.getDataset(),de=R.options.scales;(null===E.xAxisID||!(E.xAxisID in F)||q.xAxisID)&&(E.xAxisID=q.xAxisID||de.xAxes[0].id),(null===E.yAxisID||!(E.yAxisID in F)||q.yAxisID)&&(E.yAxisID=q.yAxisID||de.yAxes[0].id)},getDataset:function(){return this.chart.data.datasets[this.index]},getMeta:function(){return this.chart.getDatasetMeta(this.index)},getScaleForId:function(h){return this.chart.scales[h]},_getValueScaleId:function(){return this.getMeta().yAxisID},_getIndexScaleId:function(){return this.getMeta().xAxisID},_getValueScale:function(){return this.getScaleForId(this._getValueScaleId())},_getIndexScale:function(){return this.getScaleForId(this._getIndexScaleId())},reset:function(){this._update(!0)},destroy:function(){this._data&&jo(this._data,this)},createMetaDataset:function(){var h=this,E=h.datasetElementType;return E&&new E({_chart:h.chart,_datasetIndex:h.index})},createMetaData:function(h){var E=this,R=E.dataElementType;return R&&new R({_chart:E.chart,_datasetIndex:E.index,_index:h})},addElements:function(){var q,de,h=this,E=h.getMeta(),R=h.getDataset().data||[],F=E.data;for(q=0,de=R.length;qF&&h.insertElements(F,q-F)},insertElements:function(h,E){for(var R=0;Rq?h.arc(ye,Ue,E.innerRadius-q,F+(de=q/E.innerRadius),R-de,!0):h.arc(ye,Ue,q,F+Math.PI/2,R-Math.PI/2),h.closePath(),h.clip()}function vr(h,E,R){var F="inner"===E.borderAlign;F?(h.lineWidth=2*E.borderWidth,h.lineJoin="round"):(h.lineWidth=E.borderWidth,h.lineJoin="bevel"),R.fullCircles&&function(h,E,R,F){var de,q=R.endAngle;for(F&&(R.endAngle=R.startAngle+li,Bn(h,R),R.endAngle=q,R.endAngle===R.startAngle&&R.fullCircles&&(R.endAngle+=li,R.fullCircles--)),h.beginPath(),h.arc(R.x,R.y,R.innerRadius,R.startAngle+li,R.startAngle,!0),de=0;deUe;)q-=li;for(;q=ye&&q<=Ue&&de>=R.innerRadius&&de<=R.outerRadius}return!1},getCenterPoint:function(){var h=this._view,E=(h.startAngle+h.endAngle)/2,R=(h.innerRadius+h.outerRadius)/2;return{x:h.x+Math.cos(E)*R,y:h.y+Math.sin(E)*R}},getArea:function(){var h=this._view;return Math.PI*((h.endAngle-h.startAngle)/(2*Math.PI))*(Math.pow(h.outerRadius,2)-Math.pow(h.innerRadius,2))},tooltipPosition:function(){var h=this._view,E=h.startAngle+(h.endAngle-h.startAngle)/2,R=(h.outerRadius-h.innerRadius)/2+h.innerRadius;return{x:h.x+Math.cos(E)*R,y:h.y+Math.sin(E)*R}},draw:function(){var q,h=this._chart.ctx,E=this._view,R="inner"===E.borderAlign?.33:0,F={x:E.x,y:E.y,innerRadius:E.innerRadius,outerRadius:Math.max(E.outerRadius-R,0),pixelMargin:R,startAngle:E.startAngle,endAngle:E.endAngle,fullCircles:Math.floor(E.circumference/li)};if(h.save(),h.fillStyle=E.backgroundColor,h.strokeStyle=E.borderColor,F.fullCircles){for(F.endAngle=F.startAngle+li,h.beginPath(),h.arc(F.x,F.y,F.outerRadius,F.startAngle,F.endAngle),h.arc(F.x,F.y,F.innerRadius,F.endAngle,F.startAngle,!0),h.closePath(),q=0;qh.x&&(E=si(E,"left","right")):h.baseR?R:de,r:q.right||ye<0?0:ye>E?E:ye,b:q.bottom||Ue<0?0:Ue>R?R:Ue,l:q.left||Oe<0?0:Oe>E?E:Oe}}function Es(h,E,R){var F=null===E,q=null===R,de=!(!h||F&&q)&&on(h);return de&&(F||E>=de.left&&E<=de.right)&&(q||R>=de.top&&R<=de.bottom)}br._set("global",{elements:{rectangle:{backgroundColor:mt,borderColor:mt,borderSkipped:"bottom",borderWidth:0}}});var Zs=ar.extend({_type:"rectangle",draw:function(){var h=this._chart.ctx,E=this._view,R=function(h){var E=on(h),R=E.right-E.left,F=E.bottom-E.top,q=_o(h,R/2,F/2);return{outer:{x:E.left,y:E.top,w:R,h:F},inner:{x:E.left+q.l,y:E.top+q.t,w:R-q.l-q.r,h:F-q.t-q.b}}}(E),F=R.outer,q=R.inner;h.fillStyle=E.backgroundColor,h.fillRect(F.x,F.y,F.w,F.h),(F.w!==q.w||F.h!==q.h)&&(h.save(),h.beginPath(),h.rect(F.x,F.y,F.w,F.h),h.clip(),h.fillStyle=E.borderColor,h.rect(q.x,q.y,q.w,q.h),h.fill("evenodd"),h.restore())},height:function(){var h=this._view;return h.base-h.y},inRange:function(h,E){return Es(this._view,h,E)},inLabelRange:function(h,E){var R=this._view;return jt(R)?Es(R,h,null):Es(R,null,E)},inXRange:function(h){return Es(this._view,h,null)},inYRange:function(h){return Es(this._view,null,h)},getCenterPoint:function(){var E,R,h=this._view;return jt(h)?(E=h.x,R=(h.y+h.base)/2):(E=(h.x+h.base)/2,R=h.y),{x:E,y:R}},getArea:function(){var h=this._view;return jt(h)?h.width*Math.abs(h.y-h.base):h.height*Math.abs(h.x-h.base)},tooltipPosition:function(){var h=this._view;return{x:h.x,y:h.y}}}),ls={},ta=Ci,Is=_t,us=Zs;ls.Arc=er,ls.Line=ta,ls.Point=Is,ls.Rectangle=us;var ya=Ge._deprecated,el=Ge.valueOrDefault;function $s(h,E,R){var Ue,Oe,F=R.barThickness,q=E.stackCount,de=E.pixels[h],ye=Ge.isNullOrUndef(F)?function(h,E){var F,q,de,ye,R=h._length;for(de=1,ye=E.length;de0?Math.min(R,Math.abs(q-F)):R,F=q;return R}(E.scale,E.pixels):-1;return Ge.isNullOrUndef(F)?(Ue=ye*R.categoryPercentage,Oe=R.barPercentage):(Ue=F*q,Oe=1),{chunk:Ue/q,ratio:Oe,start:de-Ue/2}}br._set("bar",{hover:{mode:"label"},scales:{xAxes:[{type:"category",offset:!0,gridLines:{offsetGridLines:!0}}],yAxes:[{type:"linear"}]}}),br._set("global",{datasets:{bar:{categoryPercentage:.8,barPercentage:.9}}});var Il=Mi.extend({dataElementType:ls.Rectangle,_dataElementOptions:["backgroundColor","borderColor","borderSkipped","borderWidth","barPercentage","barThickness","categoryPercentage","maxBarThickness","minBarLength"],initialize:function(){var E,R,h=this;Mi.prototype.initialize.apply(h,arguments),(E=h.getMeta()).stack=h.getDataset().stack,E.bar=!0,R=h._getIndexScale().options,ya("bar chart",R.barPercentage,"scales.[x/y]Axes.barPercentage","dataset.barPercentage"),ya("bar chart",R.barThickness,"scales.[x/y]Axes.barThickness","dataset.barThickness"),ya("bar chart",R.categoryPercentage,"scales.[x/y]Axes.categoryPercentage","dataset.categoryPercentage"),ya("bar chart",h._getValueScale().options.minBarLength,"scales.[x/y]Axes.minBarLength","dataset.minBarLength"),ya("bar chart",R.maxBarThickness,"scales.[x/y]Axes.maxBarThickness","dataset.maxBarThickness")},update:function(h){var F,q,E=this,R=E.getMeta().data;for(E._ruler=E.getRuler(),F=0,q=R.length;F=0&&Xe.min>=0?Xe.min:Xe.max,xn=void 0===Xe.start?Xe.end:Xe.max>=0&&Xe.min>=0?Xe.max-Xe.min:Xe.min-Xe.max,ir=Oe.length;if(yt||void 0===yt&&void 0!==nn)for(Gr=0;Gr=0&&dl.max>=0?dl.max:dl.min,(Xe.min<0&&Zo<0||Xe.max>=0&&Zo>0)&&(Pn+=Zo));return Lo=de.getPixelForValue(Pn),Xs=(Gs=de.getPixelForValue(Pn+xn))-Lo,void 0!==gt&&Math.abs(Xs)=0&&!ye||xn<0&&ye?Lo-gt:Lo+gt),{size:Xs,base:Lo,head:Gs,center:Gs+Xs/2}},calculateBarIndexPixels:function(h,E,R,F){var de="flex"===F.barThickness?function(h,E,R){var Oe,F=E.pixels,q=F[h],de=h>0?F[h-1]:null,ye=h=Ca?-Ra:Zo<-Ca?Ra:0)+nn,Gs=Math.cos(Zo),Xs=Math.sin(Zo),dl=Math.cos(Lo),ha=Math.sin(Lo),ia=Zo<=0&&Lo>=0||Lo>=Ra,Pa=Zo<=pl&&Lo>=pl||Lo>=Ra+pl,Eu=Zo<=-pl&&Lo>=-pl||Lo>=Ca+pl,wa=Zo===-Ca||Lo>=Ca?-1:Math.min(Gs,Gs*yt,dl,dl*yt),ou=Eu?-1:Math.min(Xs,Xs*yt,ha,ha*yt),gu=ia?1:Math.max(Gs,Gs*yt,dl,dl*yt),Nc=Pa?1:Math.max(Xs,Xs*yt,ha,ha*yt);de=(gu-wa)/2,ye=(Nc-ou)/2,Ue=-(gu+wa)/2,Oe=-(Nc+ou)/2}for(Gr=0,Pi=gt.length;Gr0&&!isNaN(h)?Ra*(Math.abs(h)/E):0},getMaxBorderWidth:function(h){var q,de,ye,Ue,Oe,Xe,gt,yt,R=0,F=this.chart;if(!h)for(q=0,de=F.data.datasets.length;q(R=(gt=Xe.borderWidth)>R?gt:R)?yt:R);return R},setHoverStyle:function(h){var E=h._model,R=h._options,F=Ge.getHoverColor;h.$previousStyle={backgroundColor:E.backgroundColor,borderColor:E.borderColor,borderWidth:E.borderWidth},E.backgroundColor=fs(R.hoverBackgroundColor,F(R.backgroundColor)),E.borderColor=fs(R.hoverBorderColor,F(R.borderColor)),E.borderWidth=fs(R.hoverBorderWidth,R.borderWidth)},_getRingWeightOffset:function(h){for(var E=0,R=0;R0&&ps(de[ye-1]._model,q)&&(Oe.controlPointPreviousX=gt(Oe.controlPointPreviousX,q.left,q.right),Oe.controlPointPreviousY=gt(Oe.controlPointPreviousY,q.top,q.bottom)),ye0&&(de=h.getDatasetMeta(de[0]._datasetIndex).data),de},"x-axis":function(h,E){return ba(h,E,{intersect:!1})},point:function(h,E){return wo(h,xi(E,h))},nearest:function(h,E,R){var F=xi(E,h);R.axis=R.axis||"xy";var q=Eo(R.axis);return ko(h,F,R.intersect,q)},x:function(h,E,R){var F=xi(E,h),q=[],de=!1;return ts(h,function(ye){ye.inXRange(F.x)&&q.push(ye),ye.inRange(F.x,F.y)&&(de=!0)}),R.intersect&&!de&&(q=[]),q},y:function(h,E,R){var F=xi(E,h),q=[],de=!1;return ts(h,function(ye){ye.inYRange(F.y)&&q.push(ye),ye.inRange(F.x,F.y)&&(de=!0)}),R.intersect&&!de&&(q=[]),q}}},tc=Ge.extend;function Nu(h,E){return Ge.where(h,function(R){return R.pos===E})}function bc(h,E){return h.sort(function(R,F){var q=E?F:R,de=E?R:F;return q.weight===de.weight?q.index-de.index:q.weight-de.weight})}function Yl(h,E,R,F){return Math.max(h[R],E[R])+Math.max(h[F],E[F])}function Fs(h,E,R){var de,ye,F=R.box,q=h.maxPadding;if(R.size&&(h[R.pos]-=R.size),R.size=R.horizontal?F.height:F.width,h[R.pos]+=R.size,F.getPadding){var Ue=F.getPadding();q.top=Math.max(q.top,Ue.top),q.left=Math.max(q.left,Ue.left),q.bottom=Math.max(q.bottom,Ue.bottom),q.right=Math.max(q.right,Ue.right)}if(de=E.outerWidth-Yl(q,h,"left","right"),ye=E.outerHeight-Yl(q,h,"top","bottom"),de!==h.w||ye!==h.h){h.w=de,h.h=ye;var Oe=R.horizontal?[de,h.w]:[ye,h.h];return!(Oe[0]===Oe[1]||isNaN(Oe[0])&&isNaN(Oe[1]))}}function iu(h,E){var de,R=E.maxPadding;return de={left:0,top:0,right:0,bottom:0},(h?["left","right"]:["top","bottom"]).forEach(function(ye){de[ye]=Math.max(E[ye],R[ye])}),de}function tl(h,E,R){var q,de,ye,Ue,Oe,Xe,F=[];for(q=0,de=h.length;q div {\r\n\tposition: absolute;\r\n\twidth: 1000000px;\r\n\theight: 1000000px;\r\n\tleft: 0;\r\n\ttop: 0;\r\n}\r\n\r\n.chartjs-size-monitor-shrink > div {\r\n\tposition: absolute;\r\n\twidth: 200%;\r\n\theight: 200%;\r\n\tleft: 0;\r\n\ttop: 0;\r\n}\r\n"})),Me="$chartjs",xe="chartjs-",Ct=xe+"size-monitor",ur=xe+"render-monitor",Go=["animationstart","webkitAnimationStart"],ms={touchstart:"mousedown",touchmove:"mousemove",touchend:"mouseup",pointerenter:"mouseenter",pointerdown:"mousedown",pointermove:"mousemove",pointerup:"mouseup",pointerleave:"mouseout",pointerout:"mouseout"};function hs(h,E){var R=Ge.getStyle(h,E),F=R&&R.match(/^(\d+)(\.\d+)?px$/);return F?Number(F[1]):void 0}var au=!!function(){var h=!1;try{var E=Object.defineProperty({},"passive",{get:function(){h=!0}});window.addEventListener("e",null,E)}catch(R){}return h}()&&{passive:!0};function Wa(h,E,R){h.addEventListener(E,R,au)}function Rl(h,E,R){h.removeEventListener(E,R,au)}function nc(h,E,R,F,q){return{type:h,chart:E,native:q||null,x:void 0!==R?R:null,y:void 0!==F?F:null}}function Lc(h){var E=document.createElement("div");return E.className=h||"",E}function kc(h,E,R){var F=h[Me]||(h[Me]={}),q=F.resizer=function(h){var E=1e6,R=Lc(Ct),F=Lc(Ct+"-expand"),q=Lc(Ct+"-shrink");F.appendChild(Lc()),q.appendChild(Lc()),R.appendChild(F),R.appendChild(q),R._reset=function(){F.scrollLeft=E,F.scrollTop=E,q.scrollLeft=E,q.scrollTop=E};var de=function(){R._reset(),h()};return Wa(F,"scroll",de.bind(F,"expand")),Wa(q,"scroll",de.bind(q,"shrink")),R}(function(h,E){var R=!1,F=[];return function(){F=Array.prototype.slice.call(arguments),E=E||this,R||(R=!0,Ge.requestAnimFrame.call(window,function(){R=!1,h.apply(E,F)}))}}(function(){if(F.resizer){var de=R.options.maintainAspectRatio&&h.parentNode,ye=de?de.clientWidth:0;E(nc("resize",R)),de&&de.clientWidth0){var de=h[0];de.label?R=de.label:de.xLabel?R=de.xLabel:q>0&&de.index-1?h.split("\n"):h}function Hu(h){var E=h._xScale,R=h._yScale||h._scale,F=h._index,q=h._datasetIndex,de=h._chart.getDatasetMeta(q).controller,ye=de._getIndexScale(),Ue=de._getValueScale();return{xLabel:E?E.getLabelForIndex(F,q):"",yLabel:R?R.getLabelForIndex(F,q):"",label:ye?""+ye.getLabelForIndex(F,q):"",value:Ue?""+Ue.getLabelForIndex(F,q):"",index:F,datasetIndex:q,x:h._model.x,y:h._model.y}}function Uu(h){var E=br.global;return{xPadding:h.xPadding,yPadding:h.yPadding,xAlign:h.xAlign,yAlign:h.yAlign,rtl:h.rtl,textDirection:h.textDirection,bodyFontColor:h.bodyFontColor,_bodyFontFamily:yl(h.bodyFontFamily,E.defaultFontFamily),_bodyFontStyle:yl(h.bodyFontStyle,E.defaultFontStyle),_bodyAlign:h.bodyAlign,bodyFontSize:yl(h.bodyFontSize,E.defaultFontSize),bodySpacing:h.bodySpacing,titleFontColor:h.titleFontColor,_titleFontFamily:yl(h.titleFontFamily,E.defaultFontFamily),_titleFontStyle:yl(h.titleFontStyle,E.defaultFontStyle),titleFontSize:yl(h.titleFontSize,E.defaultFontSize),_titleAlign:h.titleAlign,titleSpacing:h.titleSpacing,titleMarginBottom:h.titleMarginBottom,footerFontColor:h.footerFontColor,_footerFontFamily:yl(h.footerFontFamily,E.defaultFontFamily),_footerFontStyle:yl(h.footerFontStyle,E.defaultFontStyle),footerFontSize:yl(h.footerFontSize,E.defaultFontSize),_footerAlign:h.footerAlign,footerSpacing:h.footerSpacing,footerMarginTop:h.footerMarginTop,caretSize:h.caretSize,cornerRadius:h.cornerRadius,backgroundColor:h.backgroundColor,opacity:0,legendColorBackground:h.multiKeyBackground,displayColors:h.displayColors,borderColor:h.borderColor,borderWidth:h.borderWidth}}function fa(h,E){return"center"===E?h.x+h.width/2:"right"===E?h.x+h.width-h.xPadding:h.x+h.xPadding}function pu(h){return lu([],js(h))}var bl=ar.extend({initialize:function(){this._model=Uu(this._options),this._lastActive=[]},getTitle:function(){var h=this,R=h._options.callbacks,F=R.beforeTitle.apply(h,arguments),q=R.title.apply(h,arguments),de=R.afterTitle.apply(h,arguments),ye=[];return ye=lu(ye,js(F)),ye=lu(ye,js(q)),lu(ye,js(de))},getBeforeBody:function(){return pu(this._options.callbacks.beforeBody.apply(this,arguments))},getBody:function(h,E){var R=this,F=R._options.callbacks,q=[];return Ge.each(h,function(de){var ye={before:[],lines:[],after:[]};lu(ye.before,js(F.beforeLabel.call(R,de,E))),lu(ye.lines,F.label.call(R,de,E)),lu(ye.after,js(F.afterLabel.call(R,de,E))),q.push(ye)}),q},getAfterBody:function(){return pu(this._options.callbacks.afterBody.apply(this,arguments))},getFooter:function(){var h=this,E=h._options.callbacks,R=E.beforeFooter.apply(h,arguments),F=E.footer.apply(h,arguments),q=E.afterFooter.apply(h,arguments),de=[];return de=lu(de,js(R)),de=lu(de,js(F)),lu(de,js(q))},update:function(h){var yt,nn,E=this,R=E._options,F=E._model,q=E._model=Uu(R),de=E._active,ye=E._data,Ue={xAlign:F.xAlign,yAlign:F.yAlign},Oe={x:F.x,y:F.y},Xe={width:F.width,height:F.height},gt={x:F.caretX,y:F.caretY};if(de.length){q.opacity=1;var Pn=[],xn=[];gt=yu[R.position].call(E,de,E._eventPosition);var ir=[];for(yt=0,nn=de.length;ytF.width&&(q=F.width-E.width),q<0&&(q=0)),"top"===gt?de+=yt:de-="bottom"===gt?E.height+yt:E.height/2,"center"===gt?"left"===Xe?q+=yt:"right"===Xe&&(q-=yt):"left"===Xe?q-=nn:"right"===Xe&&(q+=nn),{x:q,y:de}}(q,Xe=function(h,E){var R=h._chart.ctx,F=2*E.yPadding,q=0,de=E.body,ye=de.reduce(function(xn,ir){return xn+ir.before.length+ir.lines.length+ir.after.length},0),Ue=E.title.length,Oe=E.footer.length,Xe=E.titleFontSize,gt=E.bodyFontSize,yt=E.footerFontSize;F+=Ue*Xe,F+=Ue?(Ue-1)*E.titleSpacing:0,F+=Ue?E.titleMarginBottom:0,F+=(ye+=E.beforeBody.length+E.afterBody.length)*gt,F+=ye?(ye-1)*E.bodySpacing:0,F+=Oe?E.footerMarginTop:0,F+=Oe*yt,F+=Oe?(Oe-1)*E.footerSpacing:0;var nn=0,Pn=function(xn){q=Math.max(q,R.measureText(xn).width+nn)};return R.font=Ge.fontString(Xe,E._titleFontStyle,E._titleFontFamily),Ge.each(E.title,Pn),R.font=Ge.fontString(gt,E._bodyFontStyle,E._bodyFontFamily),Ge.each(E.beforeBody.concat(E.afterBody),Pn),nn=E.displayColors?gt+2:0,Ge.each(de,function(xn){Ge.each(xn.before,Pn),Ge.each(xn.lines,Pn),Ge.each(xn.after,Pn)}),nn=0,R.font=Ge.fontString(yt,E._footerFontStyle,E._footerFontFamily),Ge.each(E.footer,Pn),{width:q+=2*E.xPadding,height:F}}(this,q),Ue=function(h,E){var R=h._model,F=h._chart,q=h._chart.chartArea,de="center",ye="center";R.yF.height-E.height&&(ye="bottom");var Ue,Oe,Xe,gt,yt,nn=(q.left+q.right)/2,Pn=(q.top+q.bottom)/2;"center"===ye?(Ue=function(ir){return ir<=nn},Oe=function(ir){return ir>nn}):(Ue=function(ir){return ir<=E.width/2},Oe=function(ir){return ir>=F.width-E.width/2}),Xe=function(ir){return ir+E.width+R.caretSize+R.caretPadding>F.width},gt=function(ir){return ir-E.width-R.caretSize-R.caretPadding<0},yt=function(ir){return ir<=Pn?"top":"bottom"},Ue(R.x)?(de="left",Xe(R.x)&&(de="center",ye=yt(R.y))):Oe(R.x)&&(de="right",gt(R.x)&&(de="center",ye=yt(R.y)));var xn=h._options;return{xAlign:xn.xAlign?xn.xAlign:de,yAlign:xn.yAlign?xn.yAlign:ye}}(this,Xe),E._chart)}else q.opacity=0;return q.xAlign=Ue.xAlign,q.yAlign=Ue.yAlign,q.x=Oe.x,q.y=Oe.y,q.width=Xe.width,q.height=Xe.height,q.caretX=gt.x,q.caretY=gt.y,E._model=q,h&&R.custom&&R.custom.call(E,q),E},drawCaret:function(h,E){var R=this._chart.ctx,q=this.getCaretPosition(h,E,this._view);R.lineTo(q.x1,q.y1),R.lineTo(q.x2,q.y2),R.lineTo(q.x3,q.y3)},getCaretPosition:function(h,E,R){var F,q,de,ye,Ue,Oe,Xe=R.caretSize,gt=R.cornerRadius,yt=R.xAlign,nn=R.yAlign,Pn=h.x,xn=h.y,ir=E.width,Gr=E.height;if("center"===nn)Ue=xn+Gr/2,"left"===yt?(q=(F=Pn)-Xe,de=F,ye=Ue+Xe,Oe=Ue-Xe):(q=(F=Pn+ir)+Xe,de=F,ye=Ue-Xe,Oe=Ue+Xe);else if("left"===yt?(F=(q=Pn+gt+Xe)-Xe,de=q+Xe):"right"===yt?(F=(q=Pn+ir-gt-Xe)-Xe,de=q+Xe):(F=(q=R.caretX)-Xe,de=q+Xe),"top"===nn)Ue=(ye=xn)-Xe,Oe=ye;else{Ue=(ye=xn+Gr)+Xe,Oe=ye;var Pi=de;de=F,F=Pi}return{x1:F,x2:q,x3:de,y1:ye,y2:Ue,y3:Oe}},drawTitle:function(h,E,R){var de,ye,Ue,F=E.title,q=F.length;if(q){var Oe=Mu(E.rtl,E.x,E.width);for(h.x=fa(E,E._titleAlign),R.textAlign=Oe.textAlign(E._titleAlign),R.textBaseline="middle",de=E.titleFontSize,ye=E.titleSpacing,R.fillStyle=E.titleFontColor,R.font=Ge.fontString(de,E._titleFontStyle,E._titleFontFamily),Ue=0;Ue0&&R.stroke()},draw:function(){var h=this._chart.ctx,E=this._view;if(0!==E.opacity){var R={width:E.width,height:E.height},F={x:E.x,y:E.y},q=Math.abs(E.opacity<.001)?0:E.opacity;this._options.enabled&&(E.title.length||E.beforeBody.length||E.body.length||E.afterBody.length||E.footer.length)&&(h.save(),h.globalAlpha=q,this.drawBackground(F,E,h,R),F.y+=E.yPadding,Ge.rtl.overrideTextDirection(h,E.textDirection),this.drawTitle(F,E,h),this.drawBody(F,E,h),this.drawFooter(F,E,h),Ge.rtl.restoreTextDirection(h,E.textDirection),h.restore())}},handleEvent:function(h){var F,E=this,R=E._options;return E._lastActive=E._lastActive||[],"mouseout"===h.type?E._active=[]:(E._active=E._chart.getElementsAtEventForMode(h,R.mode,R),R.reverse&&E._active.reverse()),(F=!Ge.arrayEquals(E._active,E._lastActive))&&(E._lastActive=E._active,(R.enabled||R.custom)&&(E._eventPosition={x:h.x,y:h.y},E.update(!0),E.pivot())),F}});bl.positioners=yu;var El=Ge.valueOrDefault;function Ul(){return Ge.merge(Object.create(null),[].slice.call(arguments),{merger:function(h,E,R,F){if("xAxes"===h||"yAxes"===h){var de,ye,Ue,q=R[h].length;for(E[h]||(E[h]=[]),de=0;de=E[h].length&&E[h].push({}),Ge.merge(E[h][de],!E[h][de].type||Ue.type&&Ue.type!==E[h][de].type?[$u.getScaleDefaults(ye),Ue]:Ue)}else Ge._merger(h,E,R,F)}})}function ks(){return Ge.merge(Object.create(null),[].slice.call(arguments),{merger:function(h,E,R,F){var q=E[h]||Object.create(null),de=R[h];"scales"===h?E[h]=Ul(q,de):"scale"===h?E[h]=Ge.merge(q,[$u.getScaleDefaults(de.type),de]):Ge._merger(h,E,R,F)}})}function Ae(h){var E=h.options;Ge.each(h.scales,function(R){Zl.removeBox(h,R)}),E=ks(br.global,br[h.config.type],E),h.options=h.config.options=E,h.ensureScalesHaveIDs(),h.buildOrUpdateScales(),h.tooltip._options=E.tooltips,h.tooltip.initialize()}function st(h,E,R){var F,q=function(de){return de.id===F};do{F=E+R++}while(Ge.findIndex(h,q)>=0);return F}function vt(h){return"top"===h||"bottom"===h}function ut(h,E){return function(R,F){return R[h]===F[h]?R[E]-F[E]:R[h]-F[h]}}br._set("global",{elements:{},events:["mousemove","mouseout","click","touchstart","touchmove"],hover:{onHover:null,mode:"nearest",intersect:!0,animationDuration:400},onClick:null,maintainAspectRatio:!0,responsive:!0,responsiveAnimationDuration:0});var un=function(h,E){return this.construct(h,E),this};Ge.extend(un.prototype,{construct:function(h,E){var R=this;E=function(h){var E=(h=h||Object.create(null)).data=h.data||{};return E.datasets=E.datasets||[],E.labels=E.labels||[],h.options=ks(br.global,br[h.type],h.options||{}),h}(E);var F=Aa.acquireContext(h,E),q=F&&F.canvas,de=q&&q.height,ye=q&&q.width;R.id=Ge.uid(),R.ctx=F,R.canvas=q,R.config=E,R.width=ye,R.height=de,R.aspectRatio=de?ye/de:null,R.options=E.options,R._bufferedRender=!1,R._layers=[],R.chart=R,R.controller=R,un.instances[R.id]=R,Object.defineProperty(R,"data",{get:function(){return R.config.data},set:function(Ue){R.config.data=Ue}}),F&&q?(R.initialize(),R.update()):console.error("Failed to create chart: can't acquire context from the given item")},initialize:function(){var h=this;return Ss.notify(h,"beforeInit"),Ge.retinaScale(h,h.options.devicePixelRatio),h.bindEvents(),h.options.responsive&&h.resize(!0),h.initToolTip(),Ss.notify(h,"afterInit"),h},clear:function(){return Ge.canvas.clear(this),this},stop:function(){return vo.cancelAnimation(this),this},resize:function(h){var E=this,R=E.options,F=E.canvas,q=R.maintainAspectRatio&&E.aspectRatio||null,de=Math.max(0,Math.floor(Ge.getMaximumWidth(F))),ye=Math.max(0,Math.floor(q?de/q:Ge.getMaximumHeight(F)));if((E.width!==de||E.height!==ye)&&(F.width=E.width=de,F.height=E.height=ye,F.style.width=de+"px",F.style.height=ye+"px",Ge.retinaScale(E,R.devicePixelRatio),!h)){var Ue={width:de,height:ye};Ss.notify(E,"resize",[Ue]),R.onResize&&R.onResize(E,Ue),E.stop(),E.update({duration:R.responsiveAnimationDuration})}},ensureScalesHaveIDs:function(){var h=this.options,E=h.scales||{},R=h.scale;Ge.each(E.xAxes,function(F,q){F.id||(F.id=st(E.xAxes,"x-axis-",q))}),Ge.each(E.yAxes,function(F,q){F.id||(F.id=st(E.yAxes,"y-axis-",q))}),R&&(R.id=R.id||"scale")},buildOrUpdateScales:function(){var h=this,E=h.options,R=h.scales||{},F=[],q=Object.keys(R).reduce(function(de,ye){return de[ye]=!1,de},{});E.scales&&(F=F.concat((E.scales.xAxes||[]).map(function(de){return{options:de,dtype:"category",dposition:"bottom"}}),(E.scales.yAxes||[]).map(function(de){return{options:de,dtype:"linear",dposition:"left"}}))),E.scale&&F.push({options:E.scale,dtype:"radialLinear",isDefault:!0,dposition:"chartArea"}),Ge.each(F,function(de){var ye=de.options,Ue=ye.id,Oe=El(ye.type,de.dtype);vt(ye.position)!==vt(de.dposition)&&(ye.position=de.dposition),q[Ue]=!0;var Xe=null;if(Ue in R&&R[Ue].type===Oe)(Xe=R[Ue]).options=ye,Xe.ctx=h.ctx,Xe.chart=h;else{var gt=$u.getScaleConstructor(Oe);if(!gt)return;Xe=new gt({id:Ue,type:Oe,options:ye,ctx:h.ctx,chart:h}),R[Xe.id]=Xe}Xe.mergeTicksOptions(),de.isDefault&&(h.scale=Xe)}),Ge.each(q,function(de,ye){de||delete R[ye]}),h.scales=R,$u.addScalesToLayout(this)},buildOrUpdateControllers:function(){var F,q,h=this,E=[],R=h.data.datasets;for(F=0,q=R.length;F=0;--F)E.drawDataset(R[F],h);Ss.notify(E,"afterDatasetsDraw",[h])}},drawDataset:function(h,E){var F={meta:h,index:h.index,easingValue:E};!1!==Ss.notify(this,"beforeDatasetDraw",[F])&&(h.controller.draw(E),Ss.notify(this,"afterDatasetDraw",[F]))},_drawTooltip:function(h){var E=this,R=E.tooltip,F={tooltip:R,easingValue:h};!1!==Ss.notify(E,"beforeTooltipDraw",[F])&&(R.draw(),Ss.notify(E,"afterTooltipDraw",[F]))},getElementAtEvent:function(h){return sl.modes.single(this,h)},getElementsAtEvent:function(h){return sl.modes.label(this,h,{intersect:!0})},getElementsAtXAxis:function(h){return sl.modes["x-axis"](this,h,{intersect:!0})},getElementsAtEventForMode:function(h,E,R){var F=sl.modes[E];return"function"==typeof F?F(this,h,R):[]},getDatasetAtEvent:function(h){return sl.modes.dataset(this,h,{intersect:!0})},getDatasetMeta:function(h){var E=this,R=E.data.datasets[h];R._meta||(R._meta={});var F=R._meta[E.id];return F||(F=R._meta[E.id]={type:null,data:[],dataset:null,controller:null,hidden:null,xAxisID:null,yAxisID:null,order:R.order||0,index:h}),F},getVisibleDatasetCount:function(){for(var h=0,E=0,R=this.data.datasets.length;E3?R[2]-R[1]:R[1]-R[0];Math.abs(F)>1&&h!==Math.floor(h)&&(F=h-Math.floor(h));var q=Ge.log10(Math.abs(F)),de="";if(0!==h)if(Math.max(Math.abs(R[0]),Math.abs(R[R.length-1]))<1e-4){var Ue=Ge.log10(Math.abs(h)),Oe=Math.floor(Ue)-Math.floor(q);Oe=Math.max(Math.min(Oe,20),0),de=h.toExponential(Oe)}else{var Xe=-1*Math.floor(q);Xe=Math.max(Math.min(Xe,20),0),de=h.toFixed(Xe)}else de="0";return de},logarithmic:function(h,E,R){var F=h/Math.pow(10,Math.floor(Ge.log10(h)));return 0===h?"0":1===F||2===F||5===F||0===E||E===R.length-1?h.toExponential():""}}},In=Ge.isArray,Cr=Ge.isNullOrUndef,hr=Ge.valueOrDefault,ao=Ge.valueAtIndexOrDefault;function Na(h,E,R){var Xe,F=h.getTicks().length,q=Math.min(E,F-1),de=h.getPixelForTick(q),ye=h._startPixel,Ue=h._endPixel;if(!(R&&(Xe=1===F?Math.max(de-ye,Ue-de):0===E?(h.getPixelForTick(1)-de)/2:(de-h.getPixelForTick(q-1))/2,de+=qUe+1e-6)))return de}function Qs(h,E,R,F){var gt,yt,nn,Pn,xn,ir,Gr,Pi,Zo,Lo,Gs,Xs,dl,q=R.length,de=[],ye=[],Ue=[],Oe=0,Xe=0;for(gt=0;gtE){for(de=0;de=de||F<=1||!h.isHorizontal()?h.labelRotation=q:(Oe=(Ue=h._getLabelSizes()).widest.width,Xe=Ue.highest.height-Ue.highest.offset,gt=Math.min(h.maxWidth,h.chart.width-Oe),Oe+6>(yt=E.offset?h.maxWidth/F:gt/(F-1))&&(yt=gt/(F-(E.offset?.5:1)),nn=h.maxHeight-ed(E.gridLines)-R.padding-$c(E.scaleLabel),Pn=Math.sqrt(Oe*Oe+Xe*Xe),ye=Ge.toDegrees(Math.min(Math.asin(Math.min((Ue.highest.height+6)/yt,1)),Math.asin(Math.min(nn/Pn,1))-Math.asin(Xe/Pn))),ye=Math.max(q,Math.min(de,ye))),h.labelRotation=ye)},afterCalculateTickRotation:function(){Ge.callback(this.options.afterCalculateTickRotation,[this])},beforeFit:function(){Ge.callback(this.options.beforeFit,[this])},fit:function(){var h=this,E=h.minSize={width:0,height:0},R=h.chart,F=h.options,q=F.ticks,de=F.scaleLabel,ye=F.gridLines,Ue=h._isVisible(),Oe="bottom"===F.position,Xe=h.isHorizontal();if(Xe?E.width=h.maxWidth:Ue&&(E.width=ed(ye)+$c(de)),Xe?Ue&&(E.height=ed(ye)+$c(de)):E.height=h.maxHeight,q.display&&Ue){var gt=$i(q),yt=h._getLabelSizes(),nn=yt.first,Pn=yt.last,xn=yt.widest,ir=yt.highest,Gr=.4*gt.minor.lineHeight,Pi=q.padding;if(Xe){var Zo=0!==h.labelRotation,Lo=Ge.toRadians(h.labelRotation),Gs=Math.cos(Lo),Xs=Math.sin(Lo);E.height=Math.min(h.maxHeight,E.height+(Xs*xn.width+Gs*(ir.height-(Zo?ir.offset:0))+(Zo?0:Gr))+Pi);var Pa,il,ha=h.getPixelForTick(0)-h.left,ia=h.right-h.getPixelForTick(h.getTicks().length-1);Zo?(Pa=Oe?Gs*nn.width+Xs*nn.offset:Xs*(nn.height-nn.offset),il=Oe?Xs*(Pn.height-Pn.offset):Gs*Pn.width+Xs*Pn.offset):(Pa=nn.width/2,il=Pn.width/2),h.paddingLeft=Math.max((Pa-ha)*h.width/(h.width-ha),0)+3,h.paddingRight=Math.max((il-ia)*h.width/(h.width-ia),0)+3}else E.width=Math.min(h.maxWidth,E.width+(q.mirror?0:xn.width+Pi+Gr)),h.paddingTop=nn.height/2,h.paddingBottom=Pn.height/2}h.handleMargins(),Xe?(h.width=h._length=R.width-h.margins.left-h.margins.right,h.height=E.height):(h.width=E.width,h.height=h._length=R.height-h.margins.top-h.margins.bottom)},handleMargins:function(){var h=this;h.margins&&(h.margins.left=Math.max(h.paddingLeft,h.margins.left),h.margins.top=Math.max(h.paddingTop,h.margins.top),h.margins.right=Math.max(h.paddingRight,h.margins.right),h.margins.bottom=Math.max(h.paddingBottom,h.margins.bottom))},afterFit:function(){Ge.callback(this.options.afterFit,[this])},isHorizontal:function(){var h=this.options.position;return"top"===h||"bottom"===h},isFullWidth:function(){return this.options.fullWidth},getRightValue:function(h){if(Cr(h))return NaN;if(("number"==typeof h||h instanceof Number)&&!isFinite(h))return NaN;if(h)if(this.isHorizontal()){if(void 0!==h.x)return this.getRightValue(h.x)}else if(void 0!==h.y)return this.getRightValue(h.y);return h},_convertTicksToLabels:function(h){var R,F,q,E=this;for(E.ticks=h.map(function(de){return de.value}),E.beforeTickToLabelConversion(),R=E.convertTicksToLabels(h)||E.ticks,E.afterTickToLabelConversion(),F=0,q=h.length;FF-1?null:E.getPixelForDecimal(h*q+(R?q/2:0))},getPixelForDecimal:function(h){var E=this;return E._reversePixels&&(h=1-h),E._startPixel+h*E._length},getDecimalForPixel:function(h){var E=(h-this._startPixel)/this._length;return this._reversePixels?1-E:E},getBasePixel:function(){return this.getPixelForValue(this.getBaseValue())},getBaseValue:function(){var h=this,E=h.min,R=h.max;return h.beginAtZero?0:E<0&&R<0?R:E>0&&R>0?E:0},_autoSkip:function(h){var Xe,gt,yt,nn,E=this,R=E.options.ticks,F=E._length,q=R.maxTicksLimit||F/E._tickSize()+1,de=R.major.enabled?function(h){var R,F,E=[];for(R=0,F=h.length;Rq)return function(h,E,R){var de,ye,F=0,q=E[0];for(R=Math.ceil(R),de=0;dede)return Ue;return Math.max(de,1)}(de,h,0,q),ye>0){for(Xe=0,gt=ye-1;Xe1?(Oe-Ue)/(ye-1):null)?0:Ue-nn,Ue),md(h,yt,Oe,Ge.isNullOrUndef(nn)?h.length:Oe+nn),xo(h)}return md(h,yt),xo(h)},_tickSize:function(){var h=this,E=h.options.ticks,R=Ge.toRadians(h.labelRotation),F=Math.abs(Math.cos(R)),q=Math.abs(Math.sin(R)),de=h._getLabelSizes(),ye=E.autoSkipPadding||0,Ue=de?de.widest.width+ye:0,Oe=de?de.highest.height+ye:0;return h.isHorizontal()?Oe*F>Ue*q?Ue/F:Oe/q:Oe*q=0&&(de=Ue),void 0!==q&&(Ue=E.indexOf(q))>=0&&(ye=Ue),h.minIndex=de,h.maxIndex=ye,h.min=E[de],h.max=E[ye]},buildTicks:function(){var h=this,E=h._getLabels(),R=h.minIndex,F=h.maxIndex;h.ticks=0===R&&F===E.length-1?E:E.slice(R,F+1)},getLabelForIndex:function(h,E){var R=this,F=R.chart;return F.getDatasetMeta(E).controller._getValueScaleId()===R.id?R.getRightValue(F.data.datasets[E].data[h]):R._getLabels()[h]},_configure:function(){var h=this,E=h.options.offset,R=h.ticks;Nl.prototype._configure.call(h),h.isHorizontal()||(h._reversePixels=!h._reversePixels),R&&(h._startValue=h.minIndex-(E?.5:0),h._valueRange=Math.max(R.length-(E?0:1),1))},getPixelForValue:function(h,E,R){var q,de,ye,F=this;return!td(E)&&!td(R)&&(h=F.chart.data.datasets[R].data[E]),td(h)||(q=F.isHorizontal()?h.x:h.y),(void 0!==q||void 0!==h&&isNaN(E))&&(de=F._getLabels(),h=Ge.valueOrDefault(q,h),E=-1!==(ye=de.indexOf(h))?ye:E,isNaN(E)&&(E=h)),F.getPixelForDecimal((E-F._startValue)/F._valueRange)},getPixelForTick:function(h){var E=this.ticks;return h<0||h>E.length-1?null:this.getPixelForValue(E[h],h+this.minIndex)},getValueForPixel:function(h){var E=this,R=Math.round(E._startValue+E.getDecimalForPixel(h)*E._valueRange);return Math.min(Math.max(R,0),E.ticks.length-1)},getBasePixel:function(){return this.bottom}});ss._defaults={position:"bottom"};var ic=Ge.isNullOrUndef;var al=Nl.extend({getRightValue:function(h){return"string"==typeof h?+h:Nl.prototype.getRightValue.call(this,h)},handleTickRangeOptions:function(){var h=this,R=h.options.ticks;if(R.beginAtZero){var F=Ge.sign(h.min),q=Ge.sign(h.max);F<0&&q<0?h.max=0:F>0&&q>0&&(h.min=0)}var de=void 0!==R.min||void 0!==R.suggestedMin,ye=void 0!==R.max||void 0!==R.suggestedMax;void 0!==R.min?h.min=R.min:void 0!==R.suggestedMin&&(h.min=null===h.min?R.suggestedMin:Math.min(h.min,R.suggestedMin)),void 0!==R.max?h.max=R.max:void 0!==R.suggestedMax&&(h.max=null===h.max?R.suggestedMax:Math.max(h.max,R.suggestedMax)),de!==ye&&h.min>=h.max&&(de?h.max=h.min+1:h.min=h.max-1),h.min===h.max&&(h.max++,R.beginAtZero||h.min--)},getTickLimit:function(){var q,h=this,E=h.options.ticks,R=E.stepSize,F=E.maxTicksLimit;return R?q=Math.ceil(h.max/R)-Math.floor(h.min/R)+1:(q=h._computeTickLimit(),F=F||11),F&&(q=Math.min(F,q)),q},_computeTickLimit:function(){return Number.POSITIVE_INFINITY},handleDirectionalChanges:Ge.noop,buildTicks:function(){var h=this,R=h.options.ticks,F=h.getTickLimit(),q={maxTicks:F=Math.max(2,F),min:R.min,max:R.max,precision:R.precision,stepSize:Ge.valueOrDefault(R.fixedStepSize,R.stepSize)},de=h.ticks=function(h,E){var Pn,xn,ir,Gr,R=[],q=h.stepSize,de=q||1,ye=h.maxTicks-1,Ue=h.min,Oe=h.max,Xe=h.precision,gt=E.min,yt=E.max,nn=Ge.niceNum((yt-gt)/ye/de)*de;if(nn<1e-14&&ic(Ue)&&ic(Oe))return[gt,yt];(Gr=Math.ceil(yt/nn)-Math.floor(gt/nn))>ye&&(nn=Ge.niceNum(Gr*nn/ye/de)*de),q||ic(Xe)?Pn=Math.pow(10,Ge._decimalPlaces(nn)):(Pn=Math.pow(10,Xe),nn=Math.ceil(nn*Pn)/Pn),xn=Math.floor(gt/nn)*nn,ir=Math.ceil(yt/nn)*nn,q&&(!ic(Ue)&&Ge.almostWhole(Ue/nn,nn/1e3)&&(xn=Ue),!ic(Oe)&&Ge.almostWhole(Oe/nn,nn/1e3)&&(ir=Oe)),Gr=Ge.almostEquals(Gr=(ir-xn)/nn,Math.round(Gr),nn/1e3)?Math.round(Gr):Math.ceil(Gr),xn=Math.round(xn*Pn)/Pn,ir=Math.round(ir*Pn)/Pn,R.push(ic(Ue)?xn:Ue);for(var Pi=1;PiE.length-1?null:this.getPixelForValue(E[h])}});Et._defaults=Wd;var Hn=Ge.valueOrDefault,Xn=Ge.math.log10;var Yo={position:"left",ticks:{callback:Fo.formatters.logarithmic}};function $a(h,E){return Ge.isFinite(h)&&h>=0?h:E}var ns=Nl.extend({determineDataLimits:function(){var ye,Ue,Oe,Xe,gt,yt,h=this,E=h.options,R=h.chart,F=R.data.datasets,q=h.isHorizontal();function de(Gr){return q?Gr.xAxisID===h.id:Gr.yAxisID===h.id}h.min=Number.POSITIVE_INFINITY,h.max=Number.NEGATIVE_INFINITY,h.minNotZero=Number.POSITIVE_INFINITY;var nn=E.stacked;if(void 0===nn)for(ye=0;ye0){var Pi=Ge.min(Gr),Zo=Ge.max(Gr);h.min=Math.min(h.min,Pi),h.max=Math.max(h.max,Zo)}})}else for(ye=0;ye0?h.min:h.max<1?Math.pow(10,Math.floor(Xn(h.max))):1)},buildTicks:function(){var h=this,E=h.options.ticks,R=!h.isHorizontal(),F={min:$a(E.min),max:$a(E.max)},q=h.ticks=function(h,E){var ye,Ue,R=[],F=Hn(h.min,Math.pow(10,Math.floor(Xn(E.min)))),q=Math.floor(Xn(E.max)),de=Math.ceil(E.max/Math.pow(10,q));0===F?(ye=Math.floor(Xn(E.minNotZero)),Ue=Math.floor(E.minNotZero/Math.pow(10,ye)),R.push(F),F=Ue*Math.pow(10,ye)):(ye=Math.floor(Xn(F)),Ue=Math.floor(F/Math.pow(10,ye)));var Oe=ye<0?Math.pow(10,Math.abs(ye)):1;do{R.push(F),10==++Ue&&(Ue=1,Oe=++ye>=0?1:Oe),F=Math.round(Ue*Math.pow(10,ye)*Oe)/Oe}while(yeE.length-1?null:this.getPixelForValue(E[h])},_getFirstTickValue:function(h){var E=Math.floor(Xn(h));return Math.floor(h/Math.pow(10,E))*Math.pow(10,E)},_configure:function(){var h=this,E=h.min,R=0;Nl.prototype._configure.call(h),0===E&&(E=h._getFirstTickValue(h.minNotZero),R=Hn(h.options.ticks.fontSize,br.global.defaultFontSize)/h._length),h._startValue=Xn(E),h._valueOffset=R,h._valueRange=(Xn(h.max)-Xn(E))/(1-R)},getPixelForValue:function(h){var E=this,R=0;return(h=+E.getRightValue(h))>E.min&&h>0&&(R=(Xn(h)-E._startValue)/E._valueRange+E._valueOffset),E.getPixelForDecimal(R)},getValueForPixel:function(h){var E=this,R=E.getDecimalForPixel(h);return 0===R&&0===E.min?0:Math.pow(10,E._startValue+(R-E._valueOffset)*E._valueRange)}});ns._defaults=Yo;var Hs=Ge.valueOrDefault,fc=Ge.valueAtIndexOrDefault,ga=Ge.options.resolve,Ol={display:!0,animate:!0,position:"chartArea",angleLines:{display:!0,color:"rgba(0,0,0,0.1)",lineWidth:1,borderDash:[],borderDashOffset:0},gridLines:{circular:!1},ticks:{showLabelBackdrop:!0,backdropColor:"rgba(255,255,255,0.75)",backdropPaddingY:2,backdropPaddingX:2,callback:Fo.formatters.linear},pointLabels:{display:!0,fontSize:10,callback:function(h){return h}}};function ll(h){var E=h.ticks;return E.display&&h.display?Hs(E.fontSize,br.global.defaultFontSize)+2*E.backdropPaddingY:0}function Za(h,E,R){return Ge.isArray(R)?{w:Ge.longestText(h,h.font,R),h:R.length*E}:{w:h.measureText(R).width,h:E}}function ja(h,E,R,F,q){return h===F||h===q?{start:E-R/2,end:E+R/2}:hq?{start:E-R,end:E}:{start:E,end:E+R}}function Of(h){return 0===h||180===h?"center":h<180?"left":"right"}function Rd(h,E,R,F){var de,ye,q=R.y+F/2;if(Ge.isArray(E))for(de=0,ye=E.length;de270||h<90)&&(R.y-=E.h)}function Cc(h){return Ge.isNumber(h)?h:0}var Xd=al.extend({setDimensions:function(){var h=this;h.width=h.maxWidth,h.height=h.maxHeight,h.paddingTop=ll(h.options)/2,h.xCenter=Math.floor(h.width/2),h.yCenter=Math.floor((h.height-h.paddingTop)/2),h.drawingArea=Math.min(h.height-h.paddingTop,h.width)/2},determineDataLimits:function(){var h=this,E=h.chart,R=Number.POSITIVE_INFINITY,F=Number.NEGATIVE_INFINITY;Ge.each(E.data.datasets,function(q,de){if(E.isDatasetVisible(de)){var ye=E.getDatasetMeta(de);Ge.each(q.data,function(Ue,Oe){var Xe=+h.getRightValue(Ue);isNaN(Xe)||ye.data[Oe].hidden||(R=Math.min(Xe,R),F=Math.max(Xe,F))})}}),h.min=R===Number.POSITIVE_INFINITY?0:R,h.max=F===Number.NEGATIVE_INFINITY?0:F,h.handleTickRangeOptions()},_computeTickLimit:function(){return Math.ceil(this.drawingArea/ll(this.options))},convertTicksToLabels:function(){var h=this;al.prototype.convertTicksToLabels.call(h),h.pointLabels=h.chart.data.labels.map(function(){var E=Ge.callback(h.options.pointLabels.callback,arguments,h);return E||0===E?E:""})},getLabelForIndex:function(h,E){return+this.getRightValue(this.chart.data.datasets[E].data[h])},fit:function(){var h=this,E=h.options;E.display&&E.pointLabels.display?function(h){var q,de,ye,E=Ge.options._parseFont(h.options.pointLabels),R={l:0,r:h.width,t:0,b:h.height-h.paddingTop},F={};h.ctx.font=E.string,h._pointLabelSizes=[];var Ue=h.chart.data.labels.length;for(q=0;qR.r&&(R.r=gt.end,F.r=Oe),yt.startR.b&&(R.b=yt.end,F.b=Oe)}h.setReductions(h.drawingArea,R,F)}(h):h.setCenterPoint(0,0,0,0)},setReductions:function(h,E,R){var F=this,q=E.l/Math.sin(R.l),de=Math.max(E.r-F.width,0)/Math.sin(R.r),ye=-E.t/Math.cos(R.t),Ue=-Math.max(E.b-(F.height-F.paddingTop),0)/Math.cos(R.b);q=Cc(q),de=Cc(de),ye=Cc(ye),Ue=Cc(Ue),F.drawingArea=Math.min(Math.floor(h-(q+de)/2),Math.floor(h-(ye+Ue)/2)),F.setCenterPoint(q,de,ye,Ue)},setCenterPoint:function(h,E,R,F){var q=this,Ue=R+q.drawingArea,Oe=q.height-q.paddingTop-F-q.drawingArea;q.xCenter=Math.floor((h+q.drawingArea+(q.width-E-q.drawingArea))/2+q.left),q.yCenter=Math.floor((Ue+Oe)/2+q.top+q.paddingTop)},getIndexAngle:function(h){var E=this.chart,de=(h*(360/E.data.labels.length)+((E.options||{}).startAngle||0))%360;return(de<0?de+360:de)*Math.PI*2/360},getDistanceFromCenterForValue:function(h){var E=this;if(Ge.isNullOrUndef(h))return NaN;var R=E.drawingArea/(E.max-E.min);return E.options.ticks.reverse?(E.max-h)*R:(h-E.min)*R},getPointPosition:function(h,E){var R=this,F=R.getIndexAngle(h)-Math.PI/2;return{x:Math.cos(F)*E+R.xCenter,y:Math.sin(F)*E+R.yCenter}},getPointPositionForValue:function(h,E){return this.getPointPosition(h,this.getDistanceFromCenterForValue(E))},getBasePosition:function(h){var E=this,R=E.min,F=E.max;return E.getPointPositionForValue(h||0,E.beginAtZero?0:R<0&&F<0?F:R>0&&F>0?R:0)},_drawGrid:function(){var Ue,Oe,Xe,h=this,E=h.ctx,R=h.options,F=R.gridLines,q=R.angleLines,de=Hs(q.lineWidth,F.lineWidth),ye=Hs(q.color,F.color);if(R.pointLabels.display&&function(h){var E=h.ctx,R=h.options,F=R.pointLabels,q=ll(R),de=h.getDistanceFromCenterForValue(R.ticks.reverse?h.min:h.max),ye=Ge.options._parseFont(F);E.save(),E.font=ye.string,E.textBaseline="middle";for(var Ue=h.chart.data.labels.length-1;Ue>=0;Ue--){var Xe=h.getPointPosition(Ue,de+(0===Ue?q/2:0)+5),gt=fc(F.fontColor,Ue,br.global.defaultFontColor);E.fillStyle=gt;var yt=h.getIndexAngle(Ue),nn=Ge.toDegrees(yt);E.textAlign=Of(nn),Qd(nn,h._pointLabelSizes[Ue],Xe),Rd(E,h.pointLabels[Ue],Xe,ye.lineHeight)}E.restore()}(h),F.display&&Ge.each(h.ticks,function(gt,yt){0!==yt&&(Oe=h.getDistanceFromCenterForValue(h.ticksAsNumbers[yt]),function(h,E,R,F){var Xe,q=h.ctx,de=E.circular,ye=h.chart.data.labels.length,Ue=fc(E.color,F-1),Oe=fc(E.lineWidth,F-1);if((de||ye)&&Ue&&Oe){if(q.save(),q.strokeStyle=Ue,q.lineWidth=Oe,q.setLineDash&&(q.setLineDash(E.borderDash||[]),q.lineDashOffset=E.borderDashOffset||0),q.beginPath(),de)q.arc(h.xCenter,h.yCenter,R,0,2*Math.PI);else{Xe=h.getPointPosition(0,R),q.moveTo(Xe.x,Xe.y);for(var gt=1;gt=0;Ue--)Oe=h.getDistanceFromCenterForValue(R.ticks.reverse?h.min:h.max),Xe=h.getPointPosition(Ue,Oe),E.beginPath(),E.moveTo(h.xCenter,h.yCenter),E.lineTo(Xe.x,Xe.y),E.stroke();E.restore()}},_drawLabels:function(){var h=this,E=h.ctx,F=h.options.ticks;if(F.display){var Ue,Oe,q=h.getIndexAngle(0),de=Ge.options._parseFont(F),ye=Hs(F.fontColor,br.global.defaultFontColor);E.save(),E.font=de.string,E.translate(h.xCenter,h.yCenter),E.rotate(q),E.textAlign="center",E.textBaseline="middle",Ge.each(h.ticks,function(Xe,gt){0===gt&&!F.reverse||(Ue=h.getDistanceFromCenterForValue(h.ticksAsNumbers[gt]),F.showLabelBackdrop&&(Oe=E.measureText(Xe).width,E.fillStyle=F.backdropColor,E.fillRect(-Oe/2-F.backdropPaddingX,-Ue-de.size/2-F.backdropPaddingY,Oe+2*F.backdropPaddingX,de.size+2*F.backdropPaddingY)),E.fillStyle=ye,E.fillText(Xe,0,-Ue))}),E.restore()}},_drawTitle:Ge.noop});Xd._defaults=Ol;var $f=Ge._deprecated,Ju=Ge.options.resolve,Sl=Ge.valueOrDefault,wl=Number.MIN_SAFE_INTEGER||-9007199254740991,kl=Number.MAX_SAFE_INTEGER||9007199254740991,Pu={millisecond:{common:!0,size:1,steps:1e3},second:{common:!0,size:1e3,steps:60},minute:{common:!0,size:6e4,steps:60},hour:{common:!0,size:36e5,steps:24},day:{common:!0,size:864e5,steps:30},week:{common:!1,size:6048e5,steps:4},month:{common:!0,size:2628e6,steps:12},quarter:{common:!1,size:7884e6,steps:4},year:{common:!0,size:3154e7}},Ja=Object.keys(Pu);function Qu(h,E){return h-E}function Oc(h){return Ge.valueOrDefault(h.time.min,h.ticks.min)}function Au(h){return Ge.valueOrDefault(h.time.max,h.ticks.max)}function ff(h,E,R,F){var q=function(h,E,R){for(var de,ye,Ue,F=0,q=h.length-1;F>=0&&F<=q;){if(Ue=h[de=F+q>>1],!(ye=h[de-1]||null))return{lo:null,hi:Ue};if(Ue[E]R))return{lo:ye,hi:Ue};q=de-1}}return{lo:Ue,hi:null}}(h,E,R),de=q.lo?q.hi?q.lo:h[h.length-2]:h[0],ye=q.lo?q.hi?q.hi:h[h.length-1]:h[1],Ue=ye[E]-de[E];return de[F]+(ye[F]-de[F])*(Ue?(R-de[E])/Ue:0)}function Jl(h,E){var R=h._adapter,F=h.options.time,q=F.parser,de=q||F.format,ye=E;return"function"==typeof q&&(ye=q(ye)),Ge.isFinite(ye)||(ye="string"==typeof de?R.parse(ye,de):R.parse(ye)),null!==ye?+ye:(!q&&"function"==typeof de&&(ye=de(E),Ge.isFinite(ye)||(ye=R.parse(ye))),ye)}function vd(h,E){if(Ge.isNullOrUndef(E))return null;var R=h.options.time,F=Jl(h,h.getRightValue(E));return null===F||R.round&&(F=+h._adapter.startOf(F,R.round)),F}function wc(h,E,R,F){var de,ye,q=Ja.length;for(de=Ja.indexOf(h);de=0&&(E[Oe].major=!0);return E}(h,F,q,R):F}var $p=Nl.extend({initialize:function(){this.mergeTicksOptions(),Nl.prototype.initialize.call(this)},update:function(){var h=this,E=h.options,R=E.time||(E.time={}),F=h._adapter=new Io._date(E.adapters.date);return $f("time scale",R.format,"time.format","time.parser"),$f("time scale",R.min,"time.min","ticks.min"),$f("time scale",R.max,"time.max","ticks.max"),Ge.mergeIf(R.displayFormats,F.formats()),Nl.prototype.update.apply(h,arguments)},getRightValue:function(h){return h&&void 0!==h.t&&(h=h.t),Nl.prototype.getRightValue.call(this,h)},determineDataLimits:function(){var gt,yt,nn,Pn,xn,ir,Gr,h=this,E=h.chart,R=h._adapter,F=h.options,q=F.time.unit||"day",de=kl,ye=wl,Ue=[],Oe=[],Xe=[],Pi=h._getLabels();for(gt=0,nn=Pi.length;gt1?function(h){var F,q,de,E={},R=[];for(F=0,q=h.length;F1e5*Oe)throw E+" and "+R+" are too far apart with stepSize of "+Oe+" "+Ue;for(nn=gt;nn=E&&Pn<=R&&Ue.push(Pn);return h.min=E,h.max=R,h._unit=de.unit||(q.autoSkip?wc(de.minUnit,h.min,h.max,Oe):function(h,E,R,F,q){var de,ye;for(de=Ja.length-1;de>=Ja.indexOf(R);de--)if(Pu[ye=Ja[de]].common&&h._adapter.diff(q,F,ye)>=E-1)return ye;return Ja[R?Ja.indexOf(R):0]}(h,Ue.length,de.minUnit,h.min,h.max)),h._majorUnit=q.major.enabled&&"year"!==h._unit?function(h){for(var E=Ja.indexOf(h)+1,R=Ja.length;EE&&Xe=0&&h0?Ue:1}});$p._defaults={position:"bottom",distribution:"linear",bounds:"data",adapters:{},time:{parser:!1,unit:!1,round:!1,displayFormat:!1,isoWeekday:!1,minUnit:"millisecond",displayFormats:{}},ticks:{autoSkip:!1,source:"auto",major:{enabled:!1}}};var _f={category:ss,linear:Et,logarithmic:ns,radialLinear:Xd,time:$p},Dh={datetime:"MMM D, YYYY, h:mm:ss a",millisecond:"h:mm:ss.SSS a",second:"h:mm:ss a",minute:"h:mm a",hour:"hA",day:"MMM D",week:"ll",month:"MMM YYYY",quarter:"[Q]Q - YYYY",year:"YYYY"};Io._date.override("function"==typeof r?{_id:"moment",formats:function(){return Dh},parse:function(h,E){return"string"==typeof h&&"string"==typeof E?h=r(h,E):h instanceof r||(h=r(h)),h.isValid()?h.valueOf():null},format:function(h,E){return r(h).format(E)},add:function(h,E,R){return r(h).add(E,R).valueOf()},diff:function(h,E,R){return r(h).diff(r(E),R)},startOf:function(h,E,R){return h=r(h),"isoWeek"===E?h.isoWeekday(R).valueOf():h.startOf(E).valueOf()},endOf:function(h,E){return r(h).endOf(E).valueOf()},_create:function(h){return r(h)}}:{}),br._set("global",{plugins:{filler:{propagate:!0}}});var Ql={dataset:function(h){var E=h.fill,R=h.chart,F=R.getDatasetMeta(E),de=F&&R.isDatasetVisible(E)&&F.dataset._children||[],ye=de.length||0;return ye?function(Ue,Oe){return Oe=R)&&de;switch(q){case"bottom":return"start";case"top":return"end";case"zero":return"origin";case"origin":case"start":case"end":return q;default:return!1}}function Nd(h){return(h.el._scale||{}).getPointPositionForValue?function(h){var ye,Ue,Oe,Xe,gt,E=h.el._scale,R=E.options,F=E.chart.data.labels.length,q=h.fill,de=[];if(!F)return null;for(Ue=R.ticks.reverse?E.min:E.max,Oe=E.getPointPositionForValue(0,ye=R.ticks.reverse?E.max:E.min),Xe=0;Xe0;--de)h.arc(ye,Ue,Oe,R[de].angle,R[de-1].angle,!0);return}for(h.lineTo(R[q-1].x,R[q-1].y),de=q-1;de>0;--de)Ge.canvas.lineTo(h,R[de],R[de-1],!0)}}function Ll(h,E,R,F,q,de){var nn,Pn,xn,ir,Gr,Pi,Zo,Lo,ye=E.length,Ue=F.spanGaps,Oe=[],Xe=[],gt=0,yt=0;for(h.beginPath(),nn=0,Pn=ye;nn=0;--q)(F=E[q].$filler)&&F.visible&&(Ue=(de=F.el)._children||[],Xe=(ye=de._view).backgroundColor||br.global.defaultColor,(Oe=F.mapper)&&Xe&&Ue.length&&(Ge.canvas.clipArea(R,h.chartArea),Ll(R,Ue,Oe,ye,Xe,de._loop),Ge.canvas.unclipArea(R)))}},rl=Ge.rtl.getRtlAdapter,Yu=Ge.noop,pc=Ge.valueOrDefault;function Kd(h,E){return h.usePointStyle&&h.boxWidth>E?E:h.boxWidth}br._set("global",{legend:{display:!0,position:"top",align:"center",fullWidth:!0,reverse:!1,weight:1e3,onClick:function(h,E){var R=E.datasetIndex,F=this.chart,q=F.getDatasetMeta(R);q.hidden=null===q.hidden?!F.data.datasets[R].hidden:null,F.update()},onHover:null,onLeave:null,labels:{boxWidth:40,padding:10,generateLabels:function(h){var E=h.data.datasets,R=h.options.legend||{},F=R.labels&&R.labels.usePointStyle;return h._getSortedDatasetMetas().map(function(q){var de=q.controller.getStyle(F?0:void 0);return{text:E[q.index].label,fillStyle:de.backgroundColor,hidden:!h.isDatasetVisible(q.index),lineCap:de.borderCapStyle,lineDash:de.borderDash,lineDashOffset:de.borderDashOffset,lineJoin:de.borderJoinStyle,lineWidth:de.borderWidth,strokeStyle:de.borderColor,pointStyle:de.pointStyle,rotation:de.rotation,datasetIndex:q.index}},this)}}},legendCallback:function(h){var F,q,de,E=document.createElement("ul"),R=h.data.datasets;for(E.setAttribute("class",h.id+"-legend"),F=0,q=R.length;FOe.width)&&(yt+=ye+R.padding,gt[gt.length-(Lo>0?0:1)]=0),Ue[Lo]={left:0,top:0,width:Xs,height:ye},gt[gt.length-1]+=Xs+R.padding}),Oe.height+=yt}else{var nn=R.padding,Pn=h.columnWidths=[],xn=h.columnHeights=[],ir=R.padding,Gr=0,Pi=0;Ge.each(h.legendItems,function(Zo,Lo){var Xs=Kd(R,ye)+ye/2+q.measureText(Zo.text).width;Lo>0&&Pi+ye+2*nn>Oe.height&&(ir+=Gr+R.padding,Pn.push(Gr),xn.push(Pi),Gr=0,Pi=0),Gr=Math.max(Gr,Xs),Pi+=ye+nn,Ue[Lo]={left:0,top:0,width:Xs,height:ye}}),ir+=Gr,Pn.push(Gr),xn.push(Pi),Oe.width+=ir}h.width=Oe.width,h.height=Oe.height}else h.width=Oe.width=h.height=Oe.height=0},afterFit:Yu,isHorizontal:function(){return"top"===this.options.position||"bottom"===this.options.position},draw:function(){var h=this,E=h.options,R=E.labels,F=br.global,q=F.defaultColor,de=F.elements.line,ye=h.height,Ue=h.columnHeights,Oe=h.width,Xe=h.lineWidths;if(E.display){var ir,gt=rl(E.rtl,h.left,h.minSize.width),yt=h.ctx,nn=pc(R.fontColor,F.defaultFontColor),Pn=Ge.options._parseFont(R),xn=Pn.size;yt.textAlign=gt.textAlign("left"),yt.textBaseline="middle",yt.lineWidth=.5,yt.strokeStyle=nn,yt.fillStyle=nn,yt.font=Pn.string;var Gr=Kd(R,xn),Pi=h.legendHitBoxes,Gs=function(ha,ia){switch(E.align){case"start":return R.padding;case"end":return ha-ia;default:return(ha-ia+R.padding)/2}},Xs=h.isHorizontal();ir=Xs?{x:h.left+Gs(Oe,Xe[0]),y:h.top+R.padding,line:0}:{x:h.left+R.padding,y:h.top+Gs(ye,Ue[0]),line:0},Ge.rtl.overrideTextDirection(h.ctx,E.textDirection);var dl=xn+R.padding;Ge.each(h.legendItems,function(ha,ia){var Pa=yt.measureText(ha.text).width,il=Gr+xn/2+Pa,Eu=ir.x,wa=ir.y;gt.setWidth(h.minSize.width),Xs?ia>0&&Eu+il+R.padding>h.left+h.minSize.width&&(wa=ir.y+=dl,ir.line++,Eu=ir.x=h.left+Gs(Oe,Xe[ir.line])):ia>0&&wa+dl>h.top+h.minSize.height&&(Eu=ir.x=Eu+h.columnWidths[ir.line]+R.padding,ir.line++,wa=ir.y=h.top+Gs(ye,Ue[ir.line]));var ou=gt.x(Eu);(function(ha,ia,Pa){if(!(isNaN(Gr)||Gr<=0)){yt.save();var il=pc(Pa.lineWidth,de.borderWidth);if(yt.fillStyle=pc(Pa.fillStyle,q),yt.lineCap=pc(Pa.lineCap,de.borderCapStyle),yt.lineDashOffset=pc(Pa.lineDashOffset,de.borderDashOffset),yt.lineJoin=pc(Pa.lineJoin,de.borderJoinStyle),yt.lineWidth=il,yt.strokeStyle=pc(Pa.strokeStyle,q),yt.setLineDash&&yt.setLineDash(pc(Pa.lineDash,de.borderDash)),R&&R.usePointStyle){var Eu=Gr*Math.SQRT2/2,wa=gt.xPlus(ha,Gr/2);Ge.canvas.drawPoint(yt,Pa.pointStyle,Eu,wa,ia+xn/2,Pa.rotation)}else yt.fillRect(gt.leftForLtr(ha,Gr),ia,Gr,xn),0!==il&&yt.strokeRect(gt.leftForLtr(ha,Gr),ia,Gr,xn);yt.restore()}})(ou,wa,ha),Pi[ia].left=gt.leftForLtr(ou,Pi[ia].width),Pi[ia].top=wa,function(ha,ia,Pa,il){var Eu=xn/2,wa=gt.xPlus(ha,Gr+Eu),ou=ia+Eu;yt.fillText(Pa.text,wa,ou),Pa.hidden&&(yt.beginPath(),yt.lineWidth=2,yt.moveTo(wa,ou),yt.lineTo(gt.xPlus(wa,il),ou),yt.stroke())}(ou,wa,ha,Pa),Xs?ir.x+=il+R.padding:ir.y+=dl}),Ge.rtl.restoreTextDirection(h.ctx,E.textDirection)}},_getLegendItemAt:function(h,E){var F,q,de,R=this;if(h>=R.left&&h<=R.right&&E>=R.top&&E<=R.bottom)for(de=R.legendHitBoxes,F=0;F=(q=de[F]).left&&h<=q.left+q.width&&E>=q.top&&E<=q.top+q.height)return R.legendItems[F];return null},handleEvent:function(h){var q,E=this,R=E.options,F="mouseup"===h.type?"click":h.type;if("mousemove"===F){if(!R.onHover&&!R.onLeave)return}else{if("click"!==F)return;if(!R.onClick)return}q=E._getLegendItemAt(h.x,h.y),"click"===F?q&&R.onClick&&R.onClick.call(E,h.native,q):(R.onLeave&&q!==E._hoveredItem&&(E._hoveredItem&&R.onLeave.call(E,h.native,E._hoveredItem),E._hoveredItem=q),R.onHover&&q&&R.onHover.call(E,h.native,q))}});function Vl(h,E){var R=new wf({ctx:h.ctx,options:E,chart:h});Zl.configure(h,R,E),Zl.addBox(h,R),h.legend=R}var Id={id:"legend",_element:wf,beforeInit:function(h){var E=h.options.legend;E&&Vl(h,E)},beforeUpdate:function(h){var E=h.options.legend,R=h.legend;E?(Ge.mergeIf(E,br.global.legend),R?(Zl.configure(h,R,E),R.options=E):Vl(h,E)):R&&(Zl.removeBox(h,R),delete h.legend)},afterEvent:function(h,E){var R=h.legend;R&&R.handleEvent(E)}},oc=Ge.noop;br._set("global",{title:{display:!1,fontStyle:"bold",fullWidth:!0,padding:10,position:"top",text:"",weight:2e3}});var hc=ar.extend({initialize:function(h){Ge.extend(this,h),this.legendHitBoxes=[]},beforeUpdate:oc,update:function(h,E,R){var F=this;return F.beforeUpdate(),F.maxWidth=h,F.maxHeight=E,F.margins=R,F.beforeSetDimensions(),F.setDimensions(),F.afterSetDimensions(),F.beforeBuildLabels(),F.buildLabels(),F.afterBuildLabels(),F.beforeFit(),F.fit(),F.afterFit(),F.afterUpdate(),F.minSize},afterUpdate:oc,beforeSetDimensions:oc,setDimensions:function(){var h=this;h.isHorizontal()?(h.width=h.maxWidth,h.left=0,h.right=h.width):(h.height=h.maxHeight,h.top=0,h.bottom=h.height),h.paddingLeft=0,h.paddingTop=0,h.paddingRight=0,h.paddingBottom=0,h.minSize={width:0,height:0}},afterSetDimensions:oc,beforeBuildLabels:oc,buildLabels:oc,afterBuildLabels:oc,beforeFit:oc,fit:function(){var de,h=this,E=h.options,R=h.minSize={},F=h.isHorizontal();E.display?(de=(Ge.isArray(E.text)?E.text.length:1)*Ge.options._parseFont(E).lineHeight+2*E.padding,h.width=R.width=F?h.maxWidth:de,h.height=R.height=F?de:h.maxHeight):h.width=R.width=h.height=R.height=0},afterFit:oc,isHorizontal:function(){var h=this.options.position;return"top"===h||"bottom"===h},draw:function(){var h=this,E=h.ctx,R=h.options;if(R.display){var yt,nn,Pn,F=Ge.options._parseFont(R),q=F.lineHeight,de=q/2+R.padding,ye=0,Ue=h.top,Oe=h.left,Xe=h.bottom,gt=h.right;E.fillStyle=Ge.valueOrDefault(R.fontColor,br.global.defaultFontColor),E.font=F.string,h.isHorizontal()?(nn=Oe+(gt-Oe)/2,Pn=Ue+de,yt=gt-Oe):(nn="left"===R.position?Oe+de:gt-de,Pn=Ue+(Xe-Ue)/2,yt=Xe-Ue,ye=Math.PI*("left"===R.position?-.5:.5)),E.save(),E.translate(nn,Pn),E.rotate(ye),E.textAlign="center",E.textBaseline="middle";var xn=R.text;if(Ge.isArray(xn))for(var ir=0,Gr=0;Gr=0;ye--){var Ue=F[ye];if(q(Ue))return Ue}},Ge.isNumber=function(F){return!isNaN(parseFloat(F))&&isFinite(F)},Ge.almostEquals=function(F,q,de){return Math.abs(F-q)=F},Ge.max=function(F){return F.reduce(function(q,de){return isNaN(de)?q:Math.max(q,de)},Number.NEGATIVE_INFINITY)},Ge.min=function(F){return F.reduce(function(q,de){return isNaN(de)?q:Math.min(q,de)},Number.POSITIVE_INFINITY)},Ge.sign=Math.sign?function(F){return Math.sign(F)}:function(F){return 0==(F=+F)||isNaN(F)?F:F>0?1:-1},Ge.toRadians=function(F){return F*(Math.PI/180)},Ge.toDegrees=function(F){return F*(180/Math.PI)},Ge._decimalPlaces=function(F){if(Ge.isFinite(F)){for(var q=1,de=0;Math.round(F*q)/q!==F;)q*=10,de++;return de}},Ge.getAngleFromPoint=function(F,q){var de=q.x-F.x,ye=q.y-F.y,Ue=Math.sqrt(de*de+ye*ye),Oe=Math.atan2(ye,de);return Oe<-.5*Math.PI&&(Oe+=2*Math.PI),{angle:Oe,distance:Ue}},Ge.distanceBetweenPoints=function(F,q){return Math.sqrt(Math.pow(q.x-F.x,2)+Math.pow(q.y-F.y,2))},Ge.aliasPixel=function(F){return F%2==0?0:.5},Ge._alignPixel=function(F,q,de){var ye=F.currentDevicePixelRatio,Ue=de/2;return Math.round((q-Ue)*ye)/ye+Ue},Ge.splineCurve=function(F,q,de,ye){var Ue=F.skip?q:F,Oe=q,Xe=de.skip?q:de,gt=Math.sqrt(Math.pow(Oe.x-Ue.x,2)+Math.pow(Oe.y-Ue.y,2)),yt=Math.sqrt(Math.pow(Xe.x-Oe.x,2)+Math.pow(Xe.y-Oe.y,2)),nn=gt/(gt+yt),Pn=yt/(gt+yt),xn=ye*(nn=isNaN(nn)?0:nn),ir=ye*(Pn=isNaN(Pn)?0:Pn);return{previous:{x:Oe.x-xn*(Xe.x-Ue.x),y:Oe.y-xn*(Xe.y-Ue.y)},next:{x:Oe.x+ir*(Xe.x-Ue.x),y:Oe.y+ir*(Xe.y-Ue.y)}}},Ge.EPSILON=Number.EPSILON||1e-14,Ge.splineCurveMonotone=function(F){var ye,Ue,Oe,Xe,yt,nn,Pn,xn,ir,q=(F||[]).map(function(Gr){return{model:Gr._model,deltaK:0,mK:0}}),de=q.length;for(ye=0;ye0?q[ye-1]:null,(Xe=ye0?q[ye-1]:null)&&!Ue.model.skip&&(Oe.model.controlPointPreviousX=Oe.model.x-(ir=(Oe.model.x-Ue.model.x)/3),Oe.model.controlPointPreviousY=Oe.model.y-ir*Oe.mK),Xe&&!Xe.model.skip&&(Oe.model.controlPointNextX=Oe.model.x+(ir=(Xe.model.x-Oe.model.x)/3),Oe.model.controlPointNextY=Oe.model.y+ir*Oe.mK))},Ge.nextItem=function(F,q,de){return de?q>=F.length-1?F[0]:F[q+1]:q>=F.length-1?F[F.length-1]:F[q+1]},Ge.previousItem=function(F,q,de){return de?q<=0?F[F.length-1]:F[q-1]:q<=0?F[0]:F[q-1]},Ge.niceNum=function(F,q){var de=Math.floor(Ge.log10(F)),ye=F/Math.pow(10,de);return(q?ye<1.5?1:ye<3?2:ye<7?5:10:ye<=1?1:ye<=2?2:ye<=5?5:10)*Math.pow(10,de)},Ge.requestAnimFrame="undefined"==typeof window?function(F){F()}:window.requestAnimationFrame||window.webkitRequestAnimationFrame||window.mozRequestAnimationFrame||window.oRequestAnimationFrame||window.msRequestAnimationFrame||function(F){return window.setTimeout(F,1e3/60)},Ge.getRelativePosition=function(F,q){var de,ye,Ue=F.originalEvent||F,Oe=F.target||F.srcElement,Xe=Oe.getBoundingClientRect(),gt=Ue.touches;gt&>.length>0?(de=gt[0].clientX,ye=gt[0].clientY):(de=Ue.clientX,ye=Ue.clientY);var yt=parseFloat(Ge.getStyle(Oe,"padding-left")),nn=parseFloat(Ge.getStyle(Oe,"padding-top")),Pn=parseFloat(Ge.getStyle(Oe,"padding-right")),xn=parseFloat(Ge.getStyle(Oe,"padding-bottom")),Gr=Xe.bottom-Xe.top-nn-xn;return{x:de=Math.round((de-Xe.left-yt)/(Xe.right-Xe.left-yt-Pn)*Oe.width/q.currentDevicePixelRatio),y:ye=Math.round((ye-Xe.top-nn)/Gr*Oe.height/q.currentDevicePixelRatio)}},Ge.getConstraintWidth=function(F){return R(F,"max-width","clientWidth")},Ge.getConstraintHeight=function(F){return R(F,"max-height","clientHeight")},Ge._calculatePadding=function(F,q,de){return(q=Ge.getStyle(F,q)).indexOf("%")>-1?de*parseInt(q,10)/100:parseInt(q,10)},Ge._getParentNode=function(F){var q=F.parentNode;return q&&"[object ShadowRoot]"===q.toString()&&(q=q.host),q},Ge.getMaximumWidth=function(F){var q=Ge._getParentNode(F);if(!q)return F.clientWidth;var de=q.clientWidth,Oe=de-Ge._calculatePadding(q,"padding-left",de)-Ge._calculatePadding(q,"padding-right",de),Xe=Ge.getConstraintWidth(F);return isNaN(Xe)?Oe:Math.min(Oe,Xe)},Ge.getMaximumHeight=function(F){var q=Ge._getParentNode(F);if(!q)return F.clientHeight;var de=q.clientHeight,Oe=de-Ge._calculatePadding(q,"padding-top",de)-Ge._calculatePadding(q,"padding-bottom",de),Xe=Ge.getConstraintHeight(F);return isNaN(Xe)?Oe:Math.min(Oe,Xe)},Ge.getStyle=function(F,q){return F.currentStyle?F.currentStyle[q]:document.defaultView.getComputedStyle(F,null).getPropertyValue(q)},Ge.retinaScale=function(F,q){var de=F.currentDevicePixelRatio=q||"undefined"!=typeof window&&window.devicePixelRatio||1;if(1!==de){var ye=F.canvas,Ue=F.height,Oe=F.width;ye.height=Ue*de,ye.width=Oe*de,F.ctx.scale(de,de),!ye.style.height&&!ye.style.width&&(ye.style.height=Ue+"px",ye.style.width=Oe+"px")}},Ge.fontString=function(F,q,de){return q+" "+F+"px "+de},Ge.longestText=function(F,q,de,ye){var Ue=(ye=ye||{}).data=ye.data||{},Oe=ye.garbageCollect=ye.garbageCollect||[];ye.font!==q&&(Ue=ye.data={},Oe=ye.garbageCollect=[],ye.font=q),F.font=q;var yt,nn,Pn,xn,ir,Xe=0,gt=de.length;for(yt=0;ytde.length){for(yt=0;ytye&&(ye=Oe),ye},Ge.numberOfLabelLines=function(F){var q=1;return Ge.each(F,function(de){Ge.isArray(de)&&de.length>q&&(q=de.length)}),q},Ge.color=Br?function(F){return F instanceof CanvasGradient&&(F=br.global.defaultColor),Br(F)}:function(F){return console.error("Color.js not found!"),F},Ge.getHoverColor=function(F){return F instanceof CanvasPattern||F instanceof CanvasGradient?F:Ge.color(F).saturate(.5).darken(.1).rgbString()}}(),mn._adapters=Io,mn.Animation=lo,mn.animationService=vo,mn.controllers=pi,mn.DatasetController=Mi,mn.defaults=br,mn.Element=ar,mn.elements=ls,mn.Interaction=sl,mn.layouts=Zl,mn.platform=Aa,mn.plugins=Ss,mn.Scale=Nl,mn.scaleService=$u,mn.Ticks=Fo,mn.Tooltip=bl,mn.helpers.each(_f,function(h,E){mn.scaleService.registerScaleType(E,h,h._defaults)}),Hc)Hc.hasOwnProperty(Rc)&&mn.plugins.register(Hc[Rc]);mn.platform.initialize();var bu=mn;return"undefined"!=typeof window&&(window.Chart=mn),mn.Chart=mn,mn.Legend=Hc.legend._element,mn.Title=Hc.title._element,mn.pluginService=mn.plugins,mn.PluginBase=mn.Element.extend({}),mn.canvasHelpers=mn.helpers.canvas,mn.layoutService=mn.layouts,mn.LinearScaleBase=al,mn.helpers.each(["Bar","Bubble","Doughnut","Line","PolarArea","Radar","Scatter"],function(h){mn[h]=function(E,R){return new mn(E,mn.helpers.merge(R||{},{type:h.charAt(0).toLowerCase()+h.slice(1)}))}}),bu}(function(){try{return i(16738)}catch(p){}}())},82885:(v,T)=>{var r;!function(){"use strict";var u={}.hasOwnProperty;function p(){for(var d=[],e=0;e{v.exports=function(i,r){for(var u=[],p=0;p{"use strict";T.parse=function(S,A){if("string"!=typeof S)throw new TypeError("argument str must be a string");for(var N={},Z=(A||{}).decode||d,J=0;J{"use strict";var r=i(35311),u={"text/plain":"Text","text/html":"Url",default:"Text"};v.exports=function(_,y){var S,A,N,L,Z,J,K=!1;y||(y={}),S=y.debug||!1;try{if(N=r(),L=document.createRange(),Z=document.getSelection(),(J=document.createElement("span")).textContent=_,J.ariaHidden="true",J.style.all="unset",J.style.position="fixed",J.style.top=0,J.style.clip="rect(0, 0, 0, 0)",J.style.whiteSpace="pre",J.style.webkitUserSelect="text",J.style.MozUserSelect="text",J.style.msUserSelect="text",J.style.userSelect="text",J.addEventListener("copy",function(ue){ue.stopPropagation(),y.format&&(ue.preventDefault(),void 0===ue.clipboardData?(S&&console.warn("unable to use e.clipboardData"),S&&console.warn("trying IE specific stuff"),window.clipboardData.clearData(),window.clipboardData.setData(u[y.format]||u.default,_)):(ue.clipboardData.clearData(),ue.clipboardData.setData(y.format,_))),y.onCopy&&(ue.preventDefault(),y.onCopy(ue.clipboardData))}),document.body.appendChild(J),L.selectNodeContents(J),Z.addRange(L),!document.execCommand("copy"))throw new Error("copy command was unsuccessful");K=!0}catch(ue){S&&console.error("unable to copy using execCommand: ",ue),S&&console.warn("trying IE specific stuff");try{window.clipboardData.setData(y.format||"text",_),y.onCopy&&y.onCopy(window.clipboardData),K=!0}catch(ae){S&&console.error("unable to copy using clipboardData: ",ae),S&&console.error("falling back to prompt"),A=function(_){var y=(/mac os x/i.test(navigator.userAgent)?"\u2318":"Ctrl")+"+C";return _.replace(/#{\s*key\s*}/g,y)}("message"in y?y.message:"Copy to clipboard: #{key}, Enter"),window.prompt(A,_)}}finally{Z&&("function"==typeof Z.removeRange?Z.removeRange(L):Z.removeAllRanges()),J&&document.body.removeChild(J),N()}return K}},43987:(v,T,i)=>{var r=i(75242);v.exports=r},99556:(v,T,i)=>{var r=i(10323);v.exports=r},39287:(v,T,i)=>{var r=i(8748);v.exports=r},52964:(v,T,i)=>{var r=i(47506);v.exports=r},25272:(v,T,i)=>{var r=i(71873);v.exports=r},54450:(v,T,i)=>{var r=i(19095);v.exports=r},39557:(v,T,i)=>{var r=i(52049);v.exports=r},61611:(v,T,i)=>{var r=i(87054);v.exports=r},22549:(v,T,i)=>{var r=i(45284);v.exports=r},47646:(v,T,i)=>{var r=i(70157);v.exports=r},78663:(v,T,i)=>{var r=i(640);v.exports=r},48498:(v,T,i)=>{var r=i(50320);v.exports=r},4922:(v,T,i)=>{var r=i(93006);v.exports=r},95190:(v,T,i)=>{var r=i(36226);v.exports=r},78525:(v,T,i)=>{var r=i(21968);v.exports=r},21064:(v,T,i)=>{var r=i(87259);v.exports=r},65641:(v,T,i)=>{var r=i(62021);v.exports=r},21693:(v,T,i)=>{var r=i(57682);v.exports=r},88907:(v,T,i)=>{var r=i(94222);v.exports=r},41432:(v,T,i)=>{var r=i(1162);v.exports=r},7398:(v,T,i)=>{var r=i(82805);v.exports=r},67221:(v,T,i)=>{var r=i(26498);v.exports=r},67447:(v,T,i)=>{var r=i(44850);v.exports=r},58811:(v,T,i)=>{var r=i(9634);v.exports=r},19573:(v,T,i)=>{var r=i(96551);v.exports=r},10226:(v,T,i)=>{var r=i(98908);v.exports=r},74771:(v,T,i)=>{i(3934),i(261);var r=i(13544);v.exports=r.Array.from},8412:(v,T,i)=>{i(2862);var r=i(13544);v.exports=r.Array.isArray},77377:(v,T,i)=>{i(1625);var r=i(97911);v.exports=r("Array").concat},399:(v,T,i)=>{i(1285),i(17221);var r=i(97911);v.exports=r("Array").entries},66933:(v,T,i)=>{i(70466);var r=i(97911);v.exports=r("Array").every},9504:(v,T,i)=>{i(24990);var r=i(97911);v.exports=r("Array").fill},82168:(v,T,i)=>{i(56534);var r=i(97911);v.exports=r("Array").filter},65618:(v,T,i)=>{i(12773);var r=i(97911);v.exports=r("Array").findIndex},9186:(v,T,i)=>{i(60326);var r=i(97911);v.exports=r("Array").find},98812:(v,T,i)=>{i(98792);var r=i(97911);v.exports=r("Array").forEach},58479:(v,T,i)=>{i(77059);var r=i(97911);v.exports=r("Array").includes},43207:(v,T,i)=>{i(2795);var r=i(97911);v.exports=r("Array").indexOf},33195:(v,T,i)=>{i(1285),i(17221);var r=i(97911);v.exports=r("Array").keys},63033:(v,T,i)=>{i(74926);var r=i(97911);v.exports=r("Array").lastIndexOf},5736:(v,T,i)=>{i(88119);var r=i(97911);v.exports=r("Array").map},7198:(v,T,i)=>{i(46250);var r=i(97911);v.exports=r("Array").reduce},84302:(v,T,i)=>{i(32836);var r=i(97911);v.exports=r("Array").reverse},86693:(v,T,i)=>{i(72999);var r=i(97911);v.exports=r("Array").slice},24273:(v,T,i)=>{i(50733);var r=i(97911);v.exports=r("Array").some},45974:(v,T,i)=>{i(93639);var r=i(97911);v.exports=r("Array").sort},68012:(v,T,i)=>{i(63117);var r=i(97911);v.exports=r("Array").splice},46332:(v,T,i)=>{i(1285),i(17221);var r=i(97911);v.exports=r("Array").values},42618:(v,T,i)=>{i(34699);var r=i(13544);v.exports=r.Date.now},97724:(v,T,i)=>{i(33379);var r=i(97911);v.exports=r("Function").bind},63791:(v,T,i)=>{i(1285),i(3934);var r=i(34014);v.exports=r},27959:(v,T,i)=>{i(87404),v.exports=i(70009)},69029:(v,T,i)=>{var r=i(23336),u=i(97724),p=Function.prototype;v.exports=function(d){var e=d.bind;return d===p||r(p,d)&&e===p.bind?u:e}},28924:(v,T,i)=>{var r=i(23336),u=i(77377),p=Array.prototype;v.exports=function(d){var e=d.concat;return d===p||r(p,d)&&e===p.concat?u:e}},98709:(v,T,i)=>{var r=i(23336),u=i(66933),p=Array.prototype;v.exports=function(d){var e=d.every;return d===p||r(p,d)&&e===p.every?u:e}},65991:(v,T,i)=>{var r=i(23336),u=i(9504),p=Array.prototype;v.exports=function(d){var e=d.fill;return d===p||r(p,d)&&e===p.fill?u:e}},64158:(v,T,i)=>{var r=i(23336),u=i(82168),p=Array.prototype;v.exports=function(d){var e=d.filter;return d===p||r(p,d)&&e===p.filter?u:e}},91799:(v,T,i)=>{var r=i(23336),u=i(65618),p=Array.prototype;v.exports=function(d){var e=d.findIndex;return d===p||r(p,d)&&e===p.findIndex?u:e}},26155:(v,T,i)=>{var r=i(23336),u=i(9186),p=Array.prototype;v.exports=function(d){var e=d.find;return d===p||r(p,d)&&e===p.find?u:e}},33758:(v,T,i)=>{var r=i(23336),u=i(58479),p=i(85136),d=Array.prototype,e=String.prototype;v.exports=function(_){var y=_.includes;return _===d||r(d,_)&&y===d.includes?u:"string"==typeof _||_===e||r(e,_)&&y===e.includes?p:y}},7592:(v,T,i)=>{var r=i(23336),u=i(43207),p=Array.prototype;v.exports=function(d){var e=d.indexOf;return d===p||r(p,d)&&e===p.indexOf?u:e}},17480:(v,T,i)=>{var r=i(23336),u=i(63033),p=Array.prototype;v.exports=function(d){var e=d.lastIndexOf;return d===p||r(p,d)&&e===p.lastIndexOf?u:e}},20681:(v,T,i)=>{var r=i(23336),u=i(5736),p=Array.prototype;v.exports=function(d){var e=d.map;return d===p||r(p,d)&&e===p.map?u:e}},90949:(v,T,i)=>{var r=i(23336),u=i(7198),p=Array.prototype;v.exports=function(d){var e=d.reduce;return d===p||r(p,d)&&e===p.reduce?u:e}},99316:(v,T,i)=>{var r=i(23336),u=i(96302),p=String.prototype;v.exports=function(d){var e=d.repeat;return"string"==typeof d||d===p||r(p,d)&&e===p.repeat?u:e}},62212:(v,T,i)=>{var r=i(23336),u=i(84302),p=Array.prototype;v.exports=function(d){var e=d.reverse;return d===p||r(p,d)&&e===p.reverse?u:e}},49073:(v,T,i)=>{var r=i(23336),u=i(86693),p=Array.prototype;v.exports=function(d){var e=d.slice;return d===p||r(p,d)&&e===p.slice?u:e}},24146:(v,T,i)=>{var r=i(23336),u=i(24273),p=Array.prototype;v.exports=function(d){var e=d.some;return d===p||r(p,d)&&e===p.some?u:e}},40104:(v,T,i)=>{var r=i(23336),u=i(45974),p=Array.prototype;v.exports=function(d){var e=d.sort;return d===p||r(p,d)&&e===p.sort?u:e}},3555:(v,T,i)=>{var r=i(23336),u=i(68012),p=Array.prototype;v.exports=function(d){var e=d.splice;return d===p||r(p,d)&&e===p.splice?u:e}},68333:(v,T,i)=>{var r=i(23336),u=i(98720),p=String.prototype;v.exports=function(d){var e=d.startsWith;return"string"==typeof d||d===p||r(p,d)&&e===p.startsWith?u:e}},65786:(v,T,i)=>{var r=i(23336),u=i(75998),p=String.prototype;v.exports=function(d){var e=d.trim;return"string"==typeof d||d===p||r(p,d)&&e===p.trim?u:e}},66306:(v,T,i)=>{i(75071);var r=i(13544),u=i(2543);r.JSON||(r.JSON={stringify:JSON.stringify}),v.exports=function(d,e,_){return u(r.JSON.stringify,null,arguments)}},31845:(v,T,i)=>{i(1285),i(85140),i(17221),i(3934);var r=i(13544);v.exports=r.Map},44168:(v,T,i)=>{i(67234);var r=i(13544);v.exports=r.Object.assign},25852:(v,T,i)=>{i(86516);var u=i(13544).Object;v.exports=function(d,e){return u.create(d,e)}},24457:(v,T,i)=>{i(36255);var u=i(13544).Object,p=v.exports=function(e,_){return u.defineProperties(e,_)};u.defineProperties.sham&&(p.sham=!0)},99671:(v,T,i)=>{i(84468);var u=i(13544).Object,p=v.exports=function(e,_,y){return u.defineProperty(e,_,y)};u.defineProperty.sham&&(p.sham=!0)},35161:(v,T,i)=>{i(54989);var r=i(13544);v.exports=r.Object.entries},38007:(v,T,i)=>{i(86627);var u=i(13544).Object,p=v.exports=function(e,_){return u.getOwnPropertyDescriptor(e,_)};u.getOwnPropertyDescriptor.sham&&(p.sham=!0)},57432:(v,T,i)=>{i(78275);var r=i(13544);v.exports=r.Object.getOwnPropertyDescriptors},36541:(v,T,i)=>{i(56728);var r=i(13544);v.exports=r.Object.getOwnPropertySymbols},17303:(v,T,i)=>{i(31193);var r=i(13544);v.exports=r.Object.getPrototypeOf},62149:(v,T,i)=>{i(56557);var r=i(13544);v.exports=r.Object.keys},86537:(v,T,i)=>{i(17971);var r=i(13544);v.exports=r.Object.setPrototypeOf},79553:(v,T,i)=>{i(88923);var r=i(13544);v.exports=r.Object.values},80092:(v,T,i)=>{i(10901),i(1285),i(17221),i(66793),i(84798),i(98857),i(30185),i(3934);var r=i(13544);v.exports=r.Promise},472:(v,T,i)=>{i(19539);var r=i(13544);v.exports=r.Reflect.construct},4678:(v,T,i)=>{i(60851);var r=i(13544);v.exports=r.Reflect.get},85136:(v,T,i)=>{i(97764);var r=i(97911);v.exports=r("String").includes},96302:(v,T,i)=>{i(3588);var r=i(97911);v.exports=r("String").repeat},98720:(v,T,i)=>{i(24655);var r=i(97911);v.exports=r("String").startsWith},75998:(v,T,i)=>{i(90451);var r=i(97911);v.exports=r("String").trim},61697:(v,T,i)=>{i(1625),i(17221),i(56728),i(16426),i(1172),i(99579),i(41258),i(2383),i(44339),i(64776),i(88215),i(65389),i(12733),i(97977),i(59792),i(60242),i(26291),i(32300),i(63603),i(44864);var r=i(13544);v.exports=r.Symbol},42497:(v,T,i)=>{i(1285),i(17221),i(3934),i(2383);var r=i(89734);v.exports=r.f("iterator")},58255:(v,T,i)=>{i(1285),i(17221),i(90770);var r=i(13544);v.exports=r.WeakMap},56286:(v,T,i)=>{v.exports=i(73875)},54153:(v,T,i)=>{v.exports=i(91700)},90755:(v,T,i)=>{v.exports=i(70589)},60833:(v,T,i)=>{v.exports=i(6324)},98235:(v,T,i)=>{v.exports=i(71432)},78096:(v,T,i)=>{v.exports=i(73712)},31236:(v,T,i)=>{v.exports=i(58044)},15819:(v,T,i)=>{v.exports=i(55451)},44948:(v,T,i)=>{v.exports=i(61483)},96471:(v,T,i)=>{v.exports=i(46815)},5228:(v,T,i)=>{v.exports=i(28296)},50182:(v,T,i)=>{v.exports=i(96973)},41171:(v,T,i)=>{v.exports=i(47194)},54585:(v,T,i)=>{v.exports=i(56805)},62005:(v,T,i)=>{v.exports=i(32944)},39964:(v,T,i)=>{v.exports=i(70729)},70326:(v,T,i)=>{v.exports=i(48299)},98162:(v,T,i)=>{v.exports=i(33969)},42346:(v,T,i)=>{v.exports=i(26421)},4204:(v,T,i)=>{v.exports=i(37785)},24329:(v,T,i)=>{v.exports=i(15123)},2793:(v,T,i)=>{v.exports=i(49745)},42700:(v,T,i)=>{v.exports=i(29044)},70269:(v,T,i)=>{v.exports=i(20611)},88819:(v,T,i)=>{v.exports=i(65861)},55912:(v,T,i)=>{v.exports=i(63816)},73875:(v,T,i)=>{var r=i(43987);v.exports=r},91700:(v,T,i)=>{var r=i(99556);v.exports=r},70589:(v,T,i)=>{var r=i(39287);v.exports=r},6324:(v,T,i)=>{i(65237);var r=i(52964);v.exports=r},71432:(v,T,i)=>{var r=i(25272);v.exports=r},73712:(v,T,i)=>{var r=i(54450);v.exports=r},58044:(v,T,i)=>{var r=i(39557);v.exports=r},55451:(v,T,i)=>{var r=i(61611);v.exports=r},61483:(v,T,i)=>{var r=i(22549);v.exports=r},46815:(v,T,i)=>{var r=i(47646);v.exports=r},28296:(v,T,i)=>{var r=i(78663);i(78271),i(60854),i(10509),i(30887),i(54547),i(68996),i(1530),i(60176),i(41554),i(41688),i(92847),i(17316),i(58786),i(35517),i(12783),i(69773),i(22337),i(40199),i(69046),i(84131),v.exports=r},96973:(v,T,i)=>{var r=i(48498);v.exports=r},47194:(v,T,i)=>{var r=i(4922);v.exports=r},56805:(v,T,i)=>{var r=i(95190);v.exports=r},32944:(v,T,i)=>{var r=i(78525);v.exports=r},70729:(v,T,i)=>{var r=i(21064);v.exports=r},48299:(v,T,i)=>{var r=i(65641);v.exports=r},33969:(v,T,i)=>{var r=i(21693);v.exports=r},26421:(v,T,i)=>{var r=i(88907);v.exports=r},37785:(v,T,i)=>{var r=i(41432);v.exports=r},15123:(v,T,i)=>{var r=i(7398);v.exports=r},49745:(v,T,i)=>{var r=i(67221);i(67670),i(61127),i(93114),i(45975),v.exports=r},29044:(v,T,i)=>{var r=i(67447);v.exports=r},20611:(v,T,i)=>{var r=i(58811);v.exports=r},65861:(v,T,i)=>{var r=i(19573);i(55461),i(5737),i(87097),i(29559),i(90212),i(71985),i(93770),i(47743),v.exports=r},63816:(v,T,i)=>{var r=i(10226);v.exports=r},61812:(v,T,i)=>{var r=i(52208),u=i(7378),p=TypeError;v.exports=function(d){if(r(d))return d;throw p(u(d)+" is not a function")}},54356:(v,T,i)=>{var r=i(81177),u=i(7378),p=TypeError;v.exports=function(d){if(r(d))return d;throw p(u(d)+" is not a constructor")}},93221:(v,T,i)=>{var r=i(52208),u=String,p=TypeError;v.exports=function(d){if("object"==typeof d||r(d))return d;throw p("Can't set "+u(d)+" as a prototype")}},82196:v=>{v.exports=function(){}},54849:(v,T,i)=>{var r=i(23336),u=TypeError;v.exports=function(p,d){if(r(d,p))return p;throw u("Incorrect invocation")}},64562:(v,T,i)=>{var r=i(77293),u=String,p=TypeError;v.exports=function(d){if(r(d))return d;throw p(u(d)+" is not an object")}},76318:(v,T,i)=>{var r=i(55756);v.exports=r(function(){if("function"==typeof ArrayBuffer){var u=new ArrayBuffer(8);Object.isExtensible(u)&&Object.defineProperty(u,"a",{value:8})}})},35277:(v,T,i)=>{"use strict";var r=i(70267),u=i(19401),p=i(6381);v.exports=function(e){for(var _=r(this),y=p(_),S=arguments.length,A=u(S>1?arguments[1]:void 0,y),N=S>2?arguments[2]:void 0,L=void 0===N?y:u(N,y);L>A;)_[A++]=e;return _}},8366:(v,T,i)=>{"use strict";var r=i(68607).forEach,p=i(33620)("forEach");v.exports=p?[].forEach:function(e){return r(this,e,arguments.length>1?arguments[1]:void 0)}},51923:(v,T,i)=>{"use strict";var r=i(76781),u=i(25401),p=i(70267),d=i(93463),e=i(39918),_=i(81177),y=i(6381),S=i(46751),A=i(88055),N=i(34014),L=Array;v.exports=function(J){var K=p(J),ee=_(this),ue=arguments.length,ae=ue>1?arguments[1]:void 0,H=void 0!==ae;H&&(ae=r(ae,ue>2?arguments[2]:void 0));var ie,he,ge,De,ce,lt,se=N(K),Ee=0;if(!se||this===L&&e(se))for(ie=y(K),he=ee?new this(ie):L(ie);ie>Ee;Ee++)lt=H?ae(K[Ee],Ee):K[Ee],S(he,Ee,lt);else for(ce=(De=A(K,se)).next,he=ee?new this:[];!(ge=u(ce,De)).done;Ee++)lt=H?d(De,ae,[ge.value,Ee],!0):ge.value,S(he,Ee,lt);return he.length=Ee,he}},95171:(v,T,i)=>{var r=i(81010),u=i(19401),p=i(6381),d=function(e){return function(_,y,S){var Z,A=r(_),N=p(A),L=u(S,N);if(e&&y!=y){for(;N>L;)if((Z=A[L++])!=Z)return!0}else for(;N>L;L++)if((e||L in A)&&A[L]===y)return e||L||0;return!e&&-1}};v.exports={includes:d(!0),indexOf:d(!1)}},68607:(v,T,i)=>{var r=i(76781),u=i(23634),p=i(20973),d=i(70267),e=i(6381),_=i(2103),y=u([].push),S=function(A){var N=1==A,L=2==A,Z=3==A,J=4==A,K=6==A,ee=7==A,ue=5==A||K;return function(ae,H,se,Ee){for(var ze,Be,ie=d(ae),he=p(ie),ge=r(H,se),De=e(he),ce=0,lt=Ee||_,Ve=N?lt(ae,De):L||ee?lt(ae,0):void 0;De>ce;ce++)if((ue||ce in he)&&(Be=ge(ze=he[ce],ce,ie),A))if(N)Ve[ce]=Be;else if(Be)switch(A){case 3:return!0;case 5:return ze;case 6:return ce;case 2:y(Ve,ze)}else switch(A){case 4:return!1;case 7:y(Ve,ze)}return K?-1:Z||J?J:Ve}};v.exports={forEach:S(0),map:S(1),filter:S(2),some:S(3),every:S(4),find:S(5),findIndex:S(6),filterReject:S(7)}},78375:(v,T,i)=>{"use strict";var r=i(2543),u=i(81010),p=i(33912),d=i(6381),e=i(33620),_=Math.min,y=[].lastIndexOf,S=!!y&&1/[1].lastIndexOf(1,-0)<0,A=e("lastIndexOf");v.exports=S||!A?function(Z){if(S)return r(y,this,arguments)||0;var J=u(this),K=d(J),ee=K-1;for(arguments.length>1&&(ee=_(ee,p(arguments[1]))),ee<0&&(ee=K+ee);ee>=0;ee--)if(ee in J&&J[ee]===Z)return ee||0;return-1}:y},95913:(v,T,i)=>{var r=i(55756),u=i(91840),p=i(63556),d=u("species");v.exports=function(e){return p>=51||!r(function(){var _=[];return(_.constructor={})[d]=function(){return{foo:1}},1!==_[e](Boolean).foo})}},33620:(v,T,i)=>{"use strict";var r=i(55756);v.exports=function(u,p){var d=[][u];return!!d&&r(function(){d.call(null,p||function(){return 1},1)})}},88908:(v,T,i)=>{var r=i(61812),u=i(70267),p=i(20973),d=i(6381),e=TypeError,_=function(y){return function(S,A,N,L){r(A);var Z=u(S),J=p(Z),K=d(Z),ee=y?K-1:0,ue=y?-1:1;if(N<2)for(;;){if(ee in J){L=J[ee],ee+=ue;break}if(ee+=ue,y?ee<0:K<=ee)throw e("Reduce of empty array with no initial value")}for(;y?ee>=0:K>ee;ee+=ue)ee in J&&(L=A(L,J[ee],ee,Z));return L}};v.exports={left:_(!1),right:_(!0)}},54716:(v,T,i)=>{"use strict";var r=i(49642),u=i(89735),p=TypeError,d=Object.getOwnPropertyDescriptor,e=r&&!function(){if(void 0!==this)return!0;try{Object.defineProperty([],"length",{writable:!1}).length=1}catch(_){return _ instanceof TypeError}}();v.exports=e?function(_,y){if(u(_)&&!d(_,"length").writable)throw p("Cannot set read only .length");return _.length=y}:function(_,y){return _.length=y}},8681:(v,T,i)=>{var r=i(19401),u=i(6381),p=i(46751),d=Array,e=Math.max;v.exports=function(_,y,S){for(var A=u(_),N=r(y,A),L=r(void 0===S?A:S,A),Z=d(e(L-N,0)),J=0;N{var r=i(23634);v.exports=r([].slice)},84865:(v,T,i)=>{var r=i(8681),u=Math.floor,p=function(_,y){var S=_.length,A=u(S/2);return S<8?d(_,y):e(_,p(r(_,0,A),y),p(r(_,A),y),y)},d=function(_,y){for(var N,L,S=_.length,A=1;A0;)_[L]=_[--L];L!==A++&&(_[L]=N)}return _},e=function(_,y,S,A){for(var N=y.length,L=S.length,Z=0,J=0;Z{var r=i(89735),u=i(81177),p=i(77293),e=i(91840)("species"),_=Array;v.exports=function(y){var S;return r(y)&&(u(S=y.constructor)&&(S===_||r(S.prototype))||p(S)&&null===(S=S[e]))&&(S=void 0),void 0===S?_:S}},2103:(v,T,i)=>{var r=i(48045);v.exports=function(u,p){return new(r(u))(0===p?0:p)}},93463:(v,T,i)=>{var r=i(64562),u=i(40798);v.exports=function(p,d,e,_){try{return _?d(r(e)[0],e[1]):d(e)}catch(y){u(p,"throw",y)}}},5253:(v,T,i)=>{var u=i(91840)("iterator"),p=!1;try{var d=0,e={next:function(){return{done:!!d++}},return:function(){p=!0}};e[u]=function(){return this},Array.from(e,function(){throw 2})}catch(_){}v.exports=function(_,y){if(!y&&!p)return!1;var S=!1;try{var A={};A[u]=function(){return{next:function(){return{done:S=!0}}}},_(A)}catch(N){}return S}},49806:(v,T,i)=>{var r=i(23634),u=r({}.toString),p=r("".slice);v.exports=function(d){return p(u(d),8,-1)}},35329:(v,T,i)=>{var r=i(25014),u=i(52208),p=i(49806),e=i(91840)("toStringTag"),_=Object,y="Arguments"==p(function(){return arguments}());v.exports=r?p:function(A){var N,L,Z;return void 0===A?"Undefined":null===A?"Null":"string"==typeof(L=function(A,N){try{return A[N]}catch(L){}}(N=_(A),e))?L:y?p(N):"Object"==(Z=p(N))&&u(N.callee)?"Arguments":Z}},37353:(v,T,i)=>{"use strict";var r=i(25401),u=i(61812),p=i(64562);v.exports=function(){for(var S,e=p(this),_=u(e.delete),y=!0,A=0,N=arguments.length;A{"use strict";var r=i(76781),u=i(25401),p=i(61812),d=i(54356),e=i(43550),_=i(41605),y=[].push;v.exports=function(A){var Z,J,K,ee,N=arguments.length,L=N>1?arguments[1]:void 0;return d(this),(Z=void 0!==L)&&p(L),e(A)?new this:(J=[],Z?(K=0,ee=r(L,N>2?arguments[2]:void 0),_(A,function(ue){u(y,J,ee(ue,K++))})):_(A,y,{that:J}),new this(J))}},13067:(v,T,i)=>{"use strict";var r=i(37591);v.exports=function(){return new this(r(arguments))}},26650:(v,T,i)=>{"use strict";var r=i(48011).f,u=i(83272),p=i(84604),d=i(76781),e=i(54849),_=i(43550),y=i(41605),S=i(79077),A=i(28738),N=i(58014),L=i(49642),Z=i(57867).fastKey,J=i(91093),K=J.set,ee=J.getterFor;v.exports={getConstructor:function(ue,ae,H,se){var Ee=ue(function(ce,lt){e(ce,ie),K(ce,{type:ae,index:u(null),first:void 0,last:void 0,size:0}),L||(ce.size=0),_(lt)||y(lt,ce[se],{that:ce,AS_ENTRIES:H})}),ie=Ee.prototype,he=ee(ae),ge=function(ce,lt,Ve){var Pe,je,ze=he(ce),Be=De(ce,lt);return Be?Be.value=Ve:(ze.last=Be={index:je=Z(lt,!0),key:lt,value:Ve,previous:Pe=ze.last,next:void 0,removed:!1},ze.first||(ze.first=Be),Pe&&(Pe.next=Be),L?ze.size++:ce.size++,"F"!==je&&(ze.index[je]=Be)),ce},De=function(ce,lt){var Be,Ve=he(ce),ze=Z(lt);if("F"!==ze)return Ve.index[ze];for(Be=Ve.first;Be;Be=Be.next)if(Be.key==lt)return Be};return p(ie,{clear:function(){for(var Ve=he(this),ze=Ve.index,Be=Ve.first;Be;)Be.removed=!0,Be.previous&&(Be.previous=Be.previous.next=void 0),delete ze[Be.index],Be=Be.next;Ve.first=Ve.last=void 0,L?Ve.size=0:this.size=0},delete:function(ce){var Ve=he(this),ze=De(this,ce);if(ze){var Be=ze.next,Pe=ze.previous;delete Ve.index[ze.index],ze.removed=!0,Pe&&(Pe.next=Be),Be&&(Be.previous=Pe),Ve.first==ze&&(Ve.first=Be),Ve.last==ze&&(Ve.last=Pe),L?Ve.size--:this.size--}return!!ze},forEach:function(lt){for(var Be,Ve=he(this),ze=d(lt,arguments.length>1?arguments[1]:void 0);Be=Be?Be.next:Ve.first;)for(ze(Be.value,Be.key,this);Be&&Be.removed;)Be=Be.previous},has:function(lt){return!!De(this,lt)}}),p(ie,H?{get:function(lt){var Ve=De(this,lt);return Ve&&Ve.value},set:function(lt,Ve){return ge(this,0===lt?0:lt,Ve)}}:{add:function(lt){return ge(this,lt=0===lt?0:lt,lt)}}),L&&r(ie,"size",{get:function(){return he(this).size}}),Ee},setStrong:function(ue,ae,H){var se=ae+" Iterator",Ee=ee(ae),ie=ee(se);S(ue,ae,function(he,ge){K(this,{type:se,target:he,state:Ee(he),kind:ge,last:void 0})},function(){for(var he=ie(this),ge=he.kind,De=he.last;De&&De.removed;)De=De.previous;return he.target&&(he.last=De=De?De.next:he.state.first)?A("keys"==ge?De.key:"values"==ge?De.value:[De.key,De.value],!1):(he.target=void 0,A(void 0,!0))},H?"entries":"values",!H,!0),N(ae)}}},84049:(v,T,i)=>{"use strict";var r=i(23634),u=i(84604),p=i(57867).getWeakData,d=i(54849),e=i(64562),_=i(43550),y=i(77293),S=i(41605),A=i(68607),N=i(80112),L=i(91093),Z=L.set,J=L.getterFor,K=A.find,ee=A.findIndex,ue=r([].splice),ae=0,H=function(ie){return ie.frozen||(ie.frozen=new se)},se=function(){this.entries=[]},Ee=function(ie,he){return K(ie.entries,function(ge){return ge[0]===he})};se.prototype={get:function(ie){var he=Ee(this,ie);if(he)return he[1]},has:function(ie){return!!Ee(this,ie)},set:function(ie,he){var ge=Ee(this,ie);ge?ge[1]=he:this.entries.push([ie,he])},delete:function(ie){var he=ee(this.entries,function(ge){return ge[0]===ie});return~he&&ue(this.entries,he,1),!!~he}},v.exports={getConstructor:function(ie,he,ge,De){var ce=ie(function(Be,Pe){d(Be,lt),Z(Be,{type:he,id:ae++,frozen:void 0}),_(Pe)||S(Pe,Be[De],{that:Be,AS_ENTRIES:ge})}),lt=ce.prototype,Ve=J(he),ze=function(Be,Pe,je){var He=Ve(Be),Vt=p(e(Pe),!0);return!0===Vt?H(He).set(Pe,je):Vt[He.id]=je,Be};return u(lt,{delete:function(Be){var Pe=Ve(this);if(!y(Be))return!1;var je=p(Be);return!0===je?H(Pe).delete(Be):je&&N(je,Pe.id)&&delete je[Pe.id]},has:function(Pe){var je=Ve(this);if(!y(Pe))return!1;var He=p(Pe);return!0===He?H(je).has(Pe):He&&N(He,je.id)}}),u(lt,ge?{get:function(Pe){var je=Ve(this);if(y(Pe)){var He=p(Pe);return!0===He?H(je).get(Pe):He?He[je.id]:void 0}},set:function(Pe,je){return ze(this,Pe,je)}}:{add:function(Pe){return ze(this,Pe,!0)}}),ce}}},85116:(v,T,i)=>{"use strict";var r=i(90513),u=i(70009),p=i(57867),d=i(55756),e=i(65162),_=i(41605),y=i(54849),S=i(52208),A=i(77293),N=i(85681),L=i(48011).f,Z=i(68607).forEach,J=i(49642),K=i(91093),ee=K.set,ue=K.getterFor;v.exports=function(ae,H,se){var lt,Ee=-1!==ae.indexOf("Map"),ie=-1!==ae.indexOf("Weak"),he=Ee?"set":"add",ge=u[ae],De=ge&&ge.prototype,ce={};if(J&&S(ge)&&(ie||De.forEach&&!d(function(){(new ge).entries().next()}))){var Ve=(lt=H(function(Be,Pe){ee(y(Be,Ve),{type:ae,collection:new ge}),null!=Pe&&_(Pe,Be[he],{that:Be,AS_ENTRIES:Ee})})).prototype,ze=ue(ae);Z(["add","clear","delete","forEach","get","has","set","keys","values","entries"],function(Be){var Pe="add"==Be||"set"==Be;Be in De&&(!ie||"clear"!=Be)&&e(Ve,Be,function(je,He){var Vt=ze(this).collection;if(!Pe&&ie&&!A(je))return"get"==Be&&void 0;var it=Vt[Be](0===je?0:je,He);return Pe?this:it})}),ie||L(Ve,"size",{configurable:!0,get:function(){return ze(this).collection.size}})}else lt=se.getConstructor(H,ae,Ee,he),p.enable();return N(lt,ae,!1,!0),ce[ae]=lt,r({global:!0,forced:!0},ce),ie||se.setStrong(lt,ae,Ee),lt}},65031:(v,T,i)=>{var r=i(80112),u=i(59823),p=i(25525),d=i(48011);v.exports=function(e,_,y){for(var S=u(_),A=d.f,N=p.f,L=0;L{var u=i(91840)("match");v.exports=function(p){var d=/./;try{"/./"[p](d)}catch(e){try{return d[u]=!1,"/./"[p](d)}catch(_){}}return!1}},37112:(v,T,i)=>{var r=i(55756);v.exports=!r(function(){function u(){}return u.prototype.constructor=null,Object.getPrototypeOf(new u)!==u.prototype})},28738:v=>{v.exports=function(T,i){return{value:T,done:i}}},65162:(v,T,i)=>{var r=i(49642),u=i(48011),p=i(51361);v.exports=r?function(d,e,_){return u.f(d,e,p(1,_))}:function(d,e,_){return d[e]=_,d}},51361:v=>{v.exports=function(T,i){return{enumerable:!(1&T),configurable:!(2&T),writable:!(4&T),value:i}}},46751:(v,T,i)=>{"use strict";var r=i(62939),u=i(48011),p=i(51361);v.exports=function(d,e,_){var y=r(e);y in d?u.f(d,y,p(0,_)):d[y]=_}},1707:(v,T,i)=>{var r=i(48011);v.exports=function(u,p,d){return r.f(u,p,d)}},42915:(v,T,i)=>{var r=i(65162);v.exports=function(u,p,d,e){return e&&e.enumerable?u[p]=d:r(u,p,d),u}},84604:(v,T,i)=>{var r=i(42915);v.exports=function(u,p,d){for(var e in p)d&&d.unsafe&&u[e]?u[e]=p[e]:r(u,e,p[e],d);return u}},34056:(v,T,i)=>{var r=i(70009),u=Object.defineProperty;v.exports=function(p,d){try{u(r,p,{value:d,configurable:!0,writable:!0})}catch(e){r[p]=d}return d}},67236:(v,T,i)=>{"use strict";var r=i(7378),u=TypeError;v.exports=function(p,d){if(!delete p[d])throw u("Cannot delete property "+r(d)+" of "+r(p))}},49642:(v,T,i)=>{var r=i(55756);v.exports=!r(function(){return 7!=Object.defineProperty({},1,{get:function(){return 7}})[1]})},96682:(v,T,i)=>{var r=i(70009),u=i(77293),p=r.document,d=u(p)&&u(p.createElement);v.exports=function(e){return d?p.createElement(e):{}}},11594:v=>{var T=TypeError;v.exports=function(r){if(r>9007199254740991)throw T("Maximum allowed index exceeded");return r}},44125:v=>{v.exports={CSSRuleList:0,CSSStyleDeclaration:0,CSSValueList:0,ClientRectList:0,DOMRectList:0,DOMStringList:0,DOMTokenList:1,DataTransferItemList:0,FileList:0,HTMLAllCollection:0,HTMLCollection:0,HTMLFormElement:0,HTMLSelectElement:0,MediaList:0,MimeTypeArray:0,NamedNodeMap:0,NodeList:1,PaintRequestList:0,Plugin:0,PluginArray:0,SVGLengthList:0,SVGNumberList:0,SVGPathSegList:0,SVGPointList:0,SVGStringList:0,SVGTransformList:0,SourceBufferList:0,StyleSheetList:0,TextTrackCueList:0,TextTrackList:0,TouchList:0}},36410:(v,T,i)=>{var u=i(86053).match(/firefox\/(\d+)/i);v.exports=!!u&&+u[1]},34008:(v,T,i)=>{var r=i(31813),u=i(3787);v.exports=!r&&!u&&"object"==typeof window&&"object"==typeof document},31813:v=>{v.exports="object"==typeof Deno&&Deno&&"object"==typeof Deno.version},5329:(v,T,i)=>{var r=i(86053);v.exports=/MSIE|Trident/.test(r)},16137:(v,T,i)=>{var r=i(86053),u=i(70009);v.exports=/ipad|iphone|ipod/i.test(r)&&void 0!==u.Pebble},3877:(v,T,i)=>{var r=i(86053);v.exports=/(?:ipad|iphone|ipod).*applewebkit/i.test(r)},3787:(v,T,i)=>{var r=i(49806),u=i(70009);v.exports="process"==r(u.process)},85308:(v,T,i)=>{var r=i(86053);v.exports=/web0s(?!.*chrome)/i.test(r)},86053:(v,T,i)=>{var r=i(7365);v.exports=r("navigator","userAgent")||""},63556:(v,T,i)=>{var y,S,r=i(70009),u=i(86053),p=r.process,d=r.Deno,e=p&&p.versions||d&&d.version,_=e&&e.v8;_&&(S=(y=_.split("."))[0]>0&&y[0]<4?1:+(y[0]+y[1])),!S&&u&&(!(y=u.match(/Edge\/(\d+)/))||y[1]>=74)&&(y=u.match(/Chrome\/(\d+)/))&&(S=+y[1]),v.exports=S},34545:(v,T,i)=>{var u=i(86053).match(/AppleWebKit\/(\d+)\./);v.exports=!!u&&+u[1]},97911:(v,T,i)=>{var r=i(13544);v.exports=function(u){return r[u+"Prototype"]}},44939:v=>{v.exports=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"]},40039:(v,T,i)=>{var r=i(23634),u=Error,p=r("".replace),d=String(u("zxcasd").stack),e=/\n\s*at [^:]*:[^\n]*/,_=e.test(d);v.exports=function(y,S){if(_&&"string"==typeof y&&!u.prepareStackTrace)for(;S--;)y=p(y,e,"");return y}},50499:(v,T,i)=>{var r=i(55756),u=i(51361);v.exports=!r(function(){var p=Error("a");return!("stack"in p)||(Object.defineProperty(p,"stack",u(1,7)),7!==p.stack)})},90513:(v,T,i)=>{"use strict";var r=i(70009),u=i(2543),p=i(23634),d=i(52208),e=i(25525).f,_=i(79482),y=i(13544),S=i(76781),A=i(65162),N=i(80112),L=function(Z){var J=function(K,ee,ue){if(this instanceof J){switch(arguments.length){case 0:return new Z;case 1:return new Z(K);case 2:return new Z(K,ee)}return new Z(K,ee,ue)}return u(Z,this,arguments)};return J.prototype=Z.prototype,J};v.exports=function(Z,J){var he,ge,De,ce,lt,Ve,ze,Be,K=Z.target,ee=Z.global,ue=Z.stat,ae=Z.proto,H=ee?r:ue?r[K]:(r[K]||{}).prototype,se=ee?y:y[K]||A(y,K,{})[K],Ee=se.prototype;for(De in J)he=!_(ee?De:K+(ue?".":"#")+De,Z.forced)&&H&&N(H,De),lt=se[De],he&&(Ve=Z.dontCallGetSet?(Be=e(H,De))&&Be.value:H[De]),ce=he&&Ve?Ve:J[De],(!he||typeof lt!=typeof ce)&&(ze=Z.bind&&he?S(ce,r):Z.wrap&&he?L(ce):ae&&d(ce)?p(ce):ce,(Z.sham||ce&&ce.sham||lt&<.sham)&&A(ze,"sham",!0),A(se,De,ze),ae&&(N(y,ge=K+"Prototype")||A(y,ge,{}),A(y[ge],De,ce),Z.real&&Ee&&!Ee[De]&&A(Ee,De,ce)))}},55756:v=>{v.exports=function(T){try{return!!T()}catch(i){return!0}}},3124:(v,T,i)=>{var r=i(55756);v.exports=!r(function(){return Object.isExtensible(Object.preventExtensions({}))})},2543:(v,T,i)=>{var r=i(29046),u=Function.prototype,p=u.apply,d=u.call;v.exports="object"==typeof Reflect&&Reflect.apply||(r?d.bind(p):function(){return d.apply(p,arguments)})},76781:(v,T,i)=>{var r=i(23634),u=i(61812),p=i(29046),d=r(r.bind);v.exports=function(e,_){return u(e),void 0===_?e:p?d(e,_):function(){return e.apply(_,arguments)}}},29046:(v,T,i)=>{var r=i(55756);v.exports=!r(function(){var u=function(){}.bind();return"function"!=typeof u||u.hasOwnProperty("prototype")})},44197:(v,T,i)=>{"use strict";var r=i(23634),u=i(61812),p=i(77293),d=i(80112),e=i(37591),_=i(29046),y=Function,S=r([].concat),A=r([].join),N={},L=function(Z,J,K){if(!d(N,J)){for(var ee=[],ue=0;ue{var r=i(29046),u=Function.prototype.call;v.exports=r?u.bind(u):function(){return u.apply(u,arguments)}},29862:(v,T,i)=>{var r=i(49642),u=i(80112),p=Function.prototype,d=r&&Object.getOwnPropertyDescriptor,e=u(p,"name"),_=e&&"something"===function(){}.name,y=e&&(!r||r&&d(p,"name").configurable);v.exports={EXISTS:e,PROPER:_,CONFIGURABLE:y}},23634:(v,T,i)=>{var r=i(29046),u=Function.prototype,d=u.call,e=r&&u.bind.bind(d,d);v.exports=r?function(_){return _&&e(_)}:function(_){return _&&function(){return d.apply(_,arguments)}}},7365:(v,T,i)=>{var r=i(13544),u=i(70009),p=i(52208),d=function(e){return p(e)?e:void 0};v.exports=function(e,_){return arguments.length<2?d(r[e])||d(u[e]):r[e]&&r[e][_]||u[e]&&u[e][_]}},34014:(v,T,i)=>{var r=i(35329),u=i(34778),p=i(43550),d=i(84394),_=i(91840)("iterator");v.exports=function(y){if(!p(y))return u(y,_)||u(y,"@@iterator")||d[r(y)]}},88055:(v,T,i)=>{var r=i(25401),u=i(61812),p=i(64562),d=i(7378),e=i(34014),_=TypeError;v.exports=function(y,S){var A=arguments.length<2?e(y):S;if(u(A))return p(r(A,y));throw _(d(y)+" is not iterable")}},37444:(v,T,i)=>{var r=i(88055);v.exports=r},34778:(v,T,i)=>{var r=i(61812),u=i(43550);v.exports=function(p,d){var e=p[d];return u(e)?void 0:r(e)}},70009:v=>{var T=function(i){return i&&i.Math==Math&&i};v.exports=T("object"==typeof globalThis&&globalThis)||T("object"==typeof window&&window)||T("object"==typeof self&&self)||T("object"==typeof global&&global)||function(){return this}()||Function("return this")()},80112:(v,T,i)=>{var r=i(23634),u=i(70267),p=r({}.hasOwnProperty);v.exports=Object.hasOwn||function(e,_){return p(u(e),_)}},45599:v=>{v.exports={}},52912:(v,T,i)=>{var r=i(70009);v.exports=function(u,p){var d=r.console;d&&d.error&&(1==arguments.length?d.error(u):d.error(u,p))}},55690:(v,T,i)=>{var r=i(7365);v.exports=r("document","documentElement")},50495:(v,T,i)=>{var r=i(49642),u=i(55756),p=i(96682);v.exports=!r&&!u(function(){return 7!=Object.defineProperty(p("div"),"a",{get:function(){return 7}}).a})},20973:(v,T,i)=>{var r=i(23634),u=i(55756),p=i(49806),d=Object,e=r("".split);v.exports=u(function(){return!d("z").propertyIsEnumerable(0)})?function(_){return"String"==p(_)?e(_,""):d(_)}:d},26699:(v,T,i)=>{var r=i(23634),u=i(52208),p=i(24766),d=r(Function.toString);u(p.inspectSource)||(p.inspectSource=function(e){return d(e)}),v.exports=p.inspectSource},33411:(v,T,i)=>{var r=i(77293),u=i(65162);v.exports=function(p,d){r(d)&&"cause"in d&&u(p,"cause",d.cause)}},57867:(v,T,i)=>{var r=i(90513),u=i(23634),p=i(45599),d=i(77293),e=i(80112),_=i(48011).f,y=i(51518),S=i(62469),A=i(46401),N=i(13708),L=i(3124),Z=!1,J=N("meta"),K=0,ee=function(ie){_(ie,J,{value:{objectID:"O"+K++,weakData:{}}})},Ee=v.exports={enable:function(){Ee.enable=function(){},Z=!0;var ie=y.f,he=u([].splice),ge={};ge[J]=1,ie(ge).length&&(y.f=function(De){for(var ce=ie(De),lt=0,Ve=ce.length;lt{var J,K,ee,r=i(81101),u=i(70009),p=i(23634),d=i(77293),e=i(65162),_=i(80112),y=i(24766),S=i(86066),A=i(45599),N="Object already initialized",L=u.TypeError;if(r||y.state){var H=y.state||(y.state=new(0,u.WeakMap)),se=p(H.get),Ee=p(H.has),ie=p(H.set);J=function(ge,De){if(Ee(H,ge))throw L(N);return De.facade=ge,ie(H,ge,De),De},K=function(ge){return se(H,ge)||{}},ee=function(ge){return Ee(H,ge)}}else{var he=S("state");A[he]=!0,J=function(ge,De){if(_(ge,he))throw L(N);return De.facade=ge,e(ge,he,De),De},K=function(ge){return _(ge,he)?ge[he]:{}},ee=function(ge){return _(ge,he)}}v.exports={set:J,get:K,has:ee,enforce:function(ge){return ee(ge)?K(ge):J(ge,{})},getterFor:function(ge){return function(De){var ce;if(!d(De)||(ce=K(De)).type!==ge)throw L("Incompatible receiver, "+ge+" required");return ce}}}},39918:(v,T,i)=>{var r=i(91840),u=i(84394),p=r("iterator"),d=Array.prototype;v.exports=function(e){return void 0!==e&&(u.Array===e||d[p]===e)}},89735:(v,T,i)=>{var r=i(49806);v.exports=Array.isArray||function(p){return"Array"==r(p)}},52208:v=>{v.exports=function(T){return"function"==typeof T}},81177:(v,T,i)=>{var r=i(23634),u=i(55756),p=i(52208),d=i(35329),e=i(7365),_=i(26699),y=function(){},S=[],A=e("Reflect","construct"),N=/^\s*(?:class|function)\b/,L=r(N.exec),Z=!N.exec(y),J=function(ue){if(!p(ue))return!1;try{return A(y,S,ue),!0}catch(ae){return!1}},K=function(ue){if(!p(ue))return!1;switch(d(ue)){case"AsyncFunction":case"GeneratorFunction":case"AsyncGeneratorFunction":return!1}try{return Z||!!L(N,_(ue))}catch(ae){return!0}};K.sham=!0,v.exports=!A||u(function(){var ee;return J(J.call)||!J(Object)||!J(function(){ee=!0})||ee})?K:J},27029:(v,T,i)=>{var r=i(80112);v.exports=function(u){return void 0!==u&&(r(u,"value")||r(u,"writable"))}},79482:(v,T,i)=>{var r=i(55756),u=i(52208),p=/#|\.prototype\./,d=function(A,N){var L=_[e(A)];return L==S||L!=y&&(u(N)?r(N):!!N)},e=d.normalize=function(A){return String(A).replace(p,".").toLowerCase()},_=d.data={},y=d.NATIVE="N",S=d.POLYFILL="P";v.exports=d},43550:v=>{v.exports=function(T){return null==T}},77293:(v,T,i)=>{var r=i(52208),u="object"==typeof document&&document.all;v.exports=void 0===u&&void 0!==u?function(d){return"object"==typeof d?null!==d:r(d)||d===u}:function(d){return"object"==typeof d?null!==d:r(d)}},81124:v=>{v.exports=!0},60373:(v,T,i)=>{var r=i(77293),u=i(49806),d=i(91840)("match");v.exports=function(e){var _;return r(e)&&(void 0!==(_=e[d])?!!_:"RegExp"==u(e))}},74717:(v,T,i)=>{var r=i(7365),u=i(52208),p=i(23336),d=i(99554),e=Object;v.exports=d?function(_){return"symbol"==typeof _}:function(_){var y=r("Symbol");return u(y)&&p(y.prototype,e(_))}},41605:(v,T,i)=>{var r=i(76781),u=i(25401),p=i(64562),d=i(7378),e=i(39918),_=i(6381),y=i(23336),S=i(88055),A=i(34014),N=i(40798),L=TypeError,Z=function(K,ee){this.stopped=K,this.result=ee},J=Z.prototype;v.exports=function(K,ee,ue){var ge,De,ce,lt,Ve,ze,Be,H=!(!ue||!ue.AS_ENTRIES),se=!(!ue||!ue.IS_RECORD),Ee=!(!ue||!ue.IS_ITERATOR),ie=!(!ue||!ue.INTERRUPTED),he=r(ee,ue&&ue.that),Pe=function(He){return ge&&N(ge,"normal",He),new Z(!0,He)},je=function(He){return H?(p(He),ie?he(He[0],He[1],Pe):he(He[0],He[1])):ie?he(He,Pe):he(He)};if(se)ge=K.iterator;else if(Ee)ge=K;else{if(!(De=A(K)))throw L(d(K)+" is not iterable");if(e(De)){for(ce=0,lt=_(K);lt>ce;ce++)if((Ve=je(K[ce]))&&y(J,Ve))return Ve;return new Z(!1)}ge=S(K,De)}for(ze=se?K.next:ge.next;!(Be=u(ze,ge)).done;){try{Ve=je(Be.value)}catch(He){N(ge,"throw",He)}if("object"==typeof Ve&&Ve&&y(J,Ve))return Ve}return new Z(!1)}},40798:(v,T,i)=>{var r=i(25401),u=i(64562),p=i(34778);v.exports=function(d,e,_){var y,S;u(d);try{if(!(y=p(d,"return"))){if("throw"===e)throw _;return _}y=r(y,d)}catch(A){S=!0,y=A}if("throw"===e)throw _;if(S)throw y;return u(y),_}},14554:(v,T,i)=>{"use strict";var r=i(38432).IteratorPrototype,u=i(83272),p=i(51361),d=i(85681),e=i(84394),_=function(){return this};v.exports=function(y,S,A,N){var L=S+" Iterator";return y.prototype=u(r,{next:p(+!N,A)}),d(y,L,!1,!0),e[L]=_,y}},79077:(v,T,i)=>{"use strict";var r=i(90513),u=i(25401),p=i(81124),d=i(29862),e=i(52208),_=i(14554),y=i(31426),S=i(54945),A=i(85681),N=i(65162),L=i(42915),Z=i(91840),J=i(84394),K=i(38432),ee=d.PROPER,ue=d.CONFIGURABLE,ae=K.IteratorPrototype,H=K.BUGGY_SAFARI_ITERATORS,se=Z("iterator"),ie="values",he="entries",ge=function(){return this};v.exports=function(De,ce,lt,Ve,ze,Be,Pe){_(lt,ce,Ve);var Ut,Bt,bt,je=function(Gt){if(Gt===ze&&It)return It;if(!H&&Gt in it)return it[Gt];switch(Gt){case"keys":case ie:case he:return function(){return new lt(this,Gt)}}return function(){return new lt(this)}},He=ce+" Iterator",Vt=!1,it=De.prototype,tn=it[se]||it["@@iterator"]||ze&&it[ze],It=!H&&tn||je(ze),Zt="Array"==ce&&it.entries||tn;if(Zt&&(Ut=y(Zt.call(new De)))!==Object.prototype&&Ut.next&&(!p&&y(Ut)!==ae&&(S?S(Ut,ae):e(Ut[se])||L(Ut,se,ge)),A(Ut,He,!0,!0),p&&(J[He]=ge)),ee&&ze==ie&&tn&&tn.name!==ie&&(!p&&ue?N(it,"name",ie):(Vt=!0,It=function(){return u(tn,this)})),ze)if(Bt={values:je(ie),keys:Be?It:je("keys"),entries:je(he)},Pe)for(bt in Bt)(H||Vt||!(bt in it))&&L(it,bt,Bt[bt]);else r({target:ce,proto:!0,forced:H||Vt},Bt);return(!p||Pe)&&it[se]!==It&&L(it,se,It,{name:ze}),J[ce]=It,Bt}},38432:(v,T,i)=>{"use strict";var L,Z,J,r=i(55756),u=i(52208),p=i(77293),d=i(83272),e=i(31426),_=i(42915),y=i(91840),S=i(81124),A=y("iterator"),N=!1;[].keys&&("next"in(J=[].keys())?(Z=e(e(J)))!==Object.prototype&&(L=Z):N=!0),!p(L)||r(function(){var ee={};return L[A].call(ee)!==ee})?L={}:S&&(L=d(L)),u(L[A])||_(L,A,function(){return this}),v.exports={IteratorPrototype:L,BUGGY_SAFARI_ITERATORS:N}},84394:v=>{v.exports={}},6381:(v,T,i)=>{var r=i(48869);v.exports=function(u){return r(u.length)}},12864:(v,T,i)=>{"use strict";var r=i(25401),u=i(61812),p=i(64562);v.exports=function(e,_){var L,Z,y=p(this),S=u(y.get),A=u(y.has),N=u(y.set);return r(A,y,e)?(L=r(S,y,e),"update"in _&&(L=_.update(L,e,y),r(N,y,e,L)),L):(Z=_.insert(e,y),r(N,y,e,Z),Z)}},57729:(v,T,i)=>{"use strict";var r=i(25401),u=i(61812),p=i(52208),d=i(64562),e=TypeError;v.exports=function(y,S){var K,A=d(this),N=u(A.get),L=u(A.has),Z=u(A.set),J=arguments.length>2?arguments[2]:void 0;if(!p(S)&&!p(J))throw e("At least one callback required");return r(L,A,y)?(K=r(N,A,y),p(S)&&(K=S(K),r(Z,A,y,K))):p(J)&&(K=J(),r(Z,A,y,K)),K}},8651:v=>{var T=Math.ceil,i=Math.floor;v.exports=Math.trunc||function(u){var p=+u;return(p>0?i:T)(p)}},58991:(v,T,i)=>{var ee,ue,ae,H,se,Ee,ie,he,r=i(70009),u=i(76781),p=i(25525).f,d=i(37352).set,e=i(3877),_=i(16137),y=i(85308),S=i(3787),A=r.MutationObserver||r.WebKitMutationObserver,N=r.document,L=r.process,Z=r.Promise,J=p(r,"queueMicrotask"),K=J&&J.value;K||(ee=function(){var ge,De;for(S&&(ge=L.domain)&&ge.exit();ue;){De=ue.fn,ue=ue.next;try{De()}catch(ce){throw ue?H():ae=void 0,ce}}ae=void 0,ge&&ge.enter()},e||S||y||!A||!N?!_&&Z&&Z.resolve?((ie=Z.resolve(void 0)).constructor=Z,he=u(ie.then,ie),H=function(){he(ee)}):S?H=function(){L.nextTick(ee)}:(d=u(d,r),H=function(){d(ee)}):(se=!0,Ee=N.createTextNode(""),new A(ee).observe(Ee,{characterData:!0}),H=function(){Ee.data=se=!se})),v.exports=K||function(ge){var De={fn:ge,next:void 0};ae&&(ae.next=De),ue||(ue=De,H()),ae=De}},54256:(v,T,i)=>{"use strict";var r=i(61812),u=TypeError,p=function(d){var e,_;this.promise=new d(function(y,S){if(void 0!==e||void 0!==_)throw u("Bad Promise constructor");e=y,_=S}),this.resolve=r(e),this.reject=r(_)};v.exports.f=function(d){return new p(d)}},63313:(v,T,i)=>{var r=i(41433);v.exports=function(u,p){return void 0===u?arguments.length<2?"":p:r(u)}},56421:(v,T,i)=>{var r=i(60373),u=TypeError;v.exports=function(p){if(r(p))throw u("The method doesn't accept regular expressions");return p}},75791:(v,T,i)=>{"use strict";var r=i(49642),u=i(23634),p=i(25401),d=i(55756),e=i(28474),_=i(47238),y=i(25558),S=i(70267),A=i(20973),N=Object.assign,L=Object.defineProperty,Z=u([].concat);v.exports=!N||d(function(){if(r&&1!==N({b:1},N(L({},"a",{enumerable:!0,get:function(){L(this,"b",{value:3,enumerable:!1})}}),{b:2})).b)return!0;var J={},K={},ee=Symbol(),ue="abcdefghijklmnopqrst";return J[ee]=7,ue.split("").forEach(function(ae){K[ae]=ae}),7!=N({},J)[ee]||e(N({},K)).join("")!=ue})?function(K,ee){for(var ue=S(K),ae=arguments.length,H=1,se=_.f,Ee=y.f;ae>H;)for(var ce,ie=A(arguments[H++]),he=se?Z(e(ie),se(ie)):e(ie),ge=he.length,De=0;ge>De;)ce=he[De++],(!r||p(Ee,ie,ce))&&(ue[ce]=ie[ce]);return ue}:N},83272:(v,T,i)=>{var ae,r=i(64562),u=i(25913),p=i(44939),d=i(45599),e=i(55690),_=i(96682),y=i(86066),N="prototype",L="script",Z=y("IE_PROTO"),J=function(){},K=function(se){return"<"+L+">"+se+""},ee=function(se){se.write(K("")),se.close();var Ee=se.parentWindow.Object;return se=null,Ee},H=function(){try{ae=new ActiveXObject("htmlfile")}catch(Ee){}H="undefined"!=typeof document?document.domain&&ae?ee(ae):function(){var ie,se=_("iframe");return se.style.display="none",e.appendChild(se),se.src=String("javascript:"),(ie=se.contentWindow.document).open(),ie.write(K("document.F=Object")),ie.close(),ie.F}():ee(ae);for(var se=p.length;se--;)delete H[N][p[se]];return H()};d[Z]=!0,v.exports=Object.create||function(Ee,ie){var he;return null!==Ee?(J[N]=r(Ee),he=new J,J[N]=null,he[Z]=Ee):he=H(),void 0===ie?he:u.f(he,ie)}},25913:(v,T,i)=>{var r=i(49642),u=i(47960),p=i(48011),d=i(64562),e=i(81010),_=i(28474);T.f=r&&!u?Object.defineProperties:function(S,A){d(S);for(var K,N=e(A),L=_(A),Z=L.length,J=0;Z>J;)p.f(S,K=L[J++],N[K]);return S}},48011:(v,T,i)=>{var r=i(49642),u=i(50495),p=i(47960),d=i(64562),e=i(62939),_=TypeError,y=Object.defineProperty,S=Object.getOwnPropertyDescriptor,A="enumerable",N="configurable",L="writable";T.f=r?p?function(J,K,ee){if(d(J),K=e(K),d(ee),"function"==typeof J&&"prototype"===K&&"value"in ee&&L in ee&&!ee[L]){var ue=S(J,K);ue&&ue[L]&&(J[K]=ee.value,ee={configurable:N in ee?ee[N]:ue[N],enumerable:A in ee?ee[A]:ue[A],writable:!1})}return y(J,K,ee)}:y:function(J,K,ee){if(d(J),K=e(K),d(ee),u)try{return y(J,K,ee)}catch(ue){}if("get"in ee||"set"in ee)throw _("Accessors not supported");return"value"in ee&&(J[K]=ee.value),J}},25525:(v,T,i)=>{var r=i(49642),u=i(25401),p=i(25558),d=i(51361),e=i(81010),_=i(62939),y=i(80112),S=i(50495),A=Object.getOwnPropertyDescriptor;T.f=r?A:function(L,Z){if(L=e(L),Z=_(Z),S)try{return A(L,Z)}catch(J){}if(y(L,Z))return d(!u(p.f,L,Z),L[Z])}},62469:(v,T,i)=>{var r=i(49806),u=i(81010),p=i(51518).f,d=i(8681),e="object"==typeof window&&window&&Object.getOwnPropertyNames?Object.getOwnPropertyNames(window):[];v.exports.f=function(S){return e&&"Window"==r(S)?function(y){try{return p(y)}catch(S){return d(e)}}(S):p(u(S))}},51518:(v,T,i)=>{var r=i(66250),p=i(44939).concat("length","prototype");T.f=Object.getOwnPropertyNames||function(e){return r(e,p)}},47238:(v,T)=>{T.f=Object.getOwnPropertySymbols},31426:(v,T,i)=>{var r=i(80112),u=i(52208),p=i(70267),d=i(86066),e=i(37112),_=d("IE_PROTO"),y=Object,S=y.prototype;v.exports=e?y.getPrototypeOf:function(A){var N=p(A);if(r(N,_))return N[_];var L=N.constructor;return u(L)&&N instanceof L?L.prototype:N instanceof y?S:null}},46401:(v,T,i)=>{var r=i(55756),u=i(77293),p=i(49806),d=i(76318),e=Object.isExtensible,_=r(function(){e(1)});v.exports=_||d?function(S){return!(!u(S)||d&&"ArrayBuffer"==p(S))&&(!e||e(S))}:e},23336:(v,T,i)=>{var r=i(23634);v.exports=r({}.isPrototypeOf)},66250:(v,T,i)=>{var r=i(23634),u=i(80112),p=i(81010),d=i(95171).indexOf,e=i(45599),_=r([].push);v.exports=function(y,S){var Z,A=p(y),N=0,L=[];for(Z in A)!u(e,Z)&&u(A,Z)&&_(L,Z);for(;S.length>N;)u(A,Z=S[N++])&&(~d(L,Z)||_(L,Z));return L}},28474:(v,T,i)=>{var r=i(66250),u=i(44939);v.exports=Object.keys||function(d){return r(d,u)}},25558:(v,T)=>{"use strict";var i={}.propertyIsEnumerable,r=Object.getOwnPropertyDescriptor,u=r&&!i.call({1:2},1);T.f=u?function(d){var e=r(this,d);return!!e&&e.enumerable}:i},54945:(v,T,i)=>{var r=i(23634),u=i(64562),p=i(93221);v.exports=Object.setPrototypeOf||("__proto__"in{}?function(){var _,d=!1,e={};try{(_=r(Object.getOwnPropertyDescriptor(Object.prototype,"__proto__").set))(e,[]),d=e instanceof Array}catch(y){}return function(S,A){return u(S),p(A),d?_(S,A):S.__proto__=A,S}}():void 0)},36805:(v,T,i)=>{var r=i(49642),u=i(23634),p=i(28474),d=i(81010),_=u(i(25558).f),y=u([].push),S=function(A){return function(N){for(var ue,L=d(N),Z=p(L),J=Z.length,K=0,ee=[];J>K;)ue=Z[K++],(!r||_(L,ue))&&y(ee,A?[ue,L[ue]]:L[ue]);return ee}};v.exports={entries:S(!0),values:S(!1)}},97686:(v,T,i)=>{"use strict";var r=i(25014),u=i(35329);v.exports=r?{}.toString:function(){return"[object "+u(this)+"]"}},71689:(v,T,i)=>{var r=i(25401),u=i(52208),p=i(77293),d=TypeError;v.exports=function(e,_){var y,S;if("string"===_&&u(y=e.toString)&&!p(S=r(y,e))||u(y=e.valueOf)&&!p(S=r(y,e))||"string"!==_&&u(y=e.toString)&&!p(S=r(y,e)))return S;throw d("Can't convert object to primitive value")}},59823:(v,T,i)=>{var r=i(7365),u=i(23634),p=i(51518),d=i(47238),e=i(64562),_=u([].concat);v.exports=r("Reflect","ownKeys")||function(S){var A=p.f(e(S)),N=d.f;return N?_(A,N(S)):A}},13544:v=>{v.exports={}},26975:v=>{v.exports=function(T){try{return{error:!1,value:T()}}catch(i){return{error:!0,value:i}}}},9936:(v,T,i)=>{var r=i(70009),u=i(46456),p=i(52208),d=i(79482),e=i(26699),_=i(91840),y=i(34008),S=i(31813),A=i(81124),N=i(63556),L=u&&u.prototype,Z=_("species"),J=!1,K=p(r.PromiseRejectionEvent),ee=d("Promise",function(){var ue=e(u),ae=ue!==String(u);if(!ae&&66===N||A&&(!L.catch||!L.finally))return!0;if(!N||N<51||!/native code/.test(ue)){var H=new u(function(ie){ie(1)}),se=function(ie){ie(function(){},function(){})};if((H.constructor={})[Z]=se,!(J=H.then(function(){})instanceof se))return!0}return!ae&&(y||S)&&!K});v.exports={CONSTRUCTOR:ee,REJECTION_EVENT:K,SUBCLASSING:J}},46456:(v,T,i)=>{var r=i(70009);v.exports=r.Promise},25524:(v,T,i)=>{var r=i(64562),u=i(77293),p=i(54256);v.exports=function(d,e){if(r(d),u(e)&&e.constructor===d)return e;var _=p.f(d);return(0,_.resolve)(e),_.promise}},95758:(v,T,i)=>{var r=i(46456),u=i(5253),p=i(9936).CONSTRUCTOR;v.exports=p||!u(function(d){r.all(d).then(void 0,function(){})})},70918:v=>{var T=function(){this.head=null,this.tail=null};T.prototype={add:function(i){var r={item:i,next:null};this.head?this.tail.next=r:this.head=r,this.tail=r},get:function(){var i=this.head;if(i)return this.head=i.next,this.tail===i&&(this.tail=null),i.item}},v.exports=T},67917:(v,T,i)=>{var r=i(43550),u=TypeError;v.exports=function(p){if(r(p))throw u("Can't call method on "+p);return p}},29627:v=>{v.exports=function(T,i){return T===i||T!=T&&i!=i}},53814:(v,T,i)=>{var r=i(70009),u=i(2543),p=i(52208),d=i(86053),e=i(37591),_=i(15086),y=/MSIE .\./.test(d),S=r.Function,A=function(N){return y?function(L,Z){var J=_(arguments.length,1)>2,K=p(L)?L:S(L),ee=J?e(arguments,2):void 0;return N(J?function(){u(K,this,ee)}:K,Z)}:N};v.exports={setTimeout:A(r.setTimeout),setInterval:A(r.setInterval)}},58014:(v,T,i)=>{"use strict";var r=i(7365),u=i(48011),p=i(91840),d=i(49642),e=p("species");v.exports=function(_){var y=r(_);d&&y&&!y[e]&&(0,u.f)(y,e,{configurable:!0,get:function(){return this}})}},85681:(v,T,i)=>{var r=i(25014),u=i(48011).f,p=i(65162),d=i(80112),e=i(97686),y=i(91840)("toStringTag");v.exports=function(S,A,N,L){if(S){var Z=N?S:S.prototype;d(Z,y)||u(Z,y,{configurable:!0,value:A}),L&&!r&&p(Z,"toString",e)}}},86066:(v,T,i)=>{var r=i(64579),u=i(13708),p=r("keys");v.exports=function(d){return p[d]||(p[d]=u(d))}},24766:(v,T,i)=>{var r=i(70009),u=i(34056),p="__core-js_shared__",d=r[p]||u(p,{});v.exports=d},64579:(v,T,i)=>{var r=i(81124),u=i(24766);(v.exports=function(p,d){return u[p]||(u[p]=void 0!==d?d:{})})("versions",[]).push({version:"3.25.1",mode:r?"pure":"global",copyright:"\xa9 2014-2022 Denis Pushkarev (zloirock.ru)",license:"https://github.com/zloirock/core-js/blob/v3.25.1/LICENSE",source:"https://github.com/zloirock/core-js"})},95869:(v,T,i)=>{var r=i(64562),u=i(54356),p=i(43550),e=i(91840)("species");v.exports=function(_,y){var A,S=r(_).constructor;return void 0===S||p(A=r(S)[e])?y:u(A)}},61557:(v,T,i)=>{var r=i(23634),u=i(33912),p=i(41433),d=i(67917),e=r("".charAt),_=r("".charCodeAt),y=r("".slice),S=function(A){return function(N,L){var ee,ue,Z=p(d(N)),J=u(L),K=Z.length;return J<0||J>=K?A?"":void 0:(ee=_(Z,J))<55296||ee>56319||J+1===K||(ue=_(Z,J+1))<56320||ue>57343?A?e(Z,J):ee:A?y(Z,J,J+2):ue-56320+(ee-55296<<10)+65536}};v.exports={codeAt:S(!1),charAt:S(!0)}},26662:(v,T,i)=>{"use strict";var r=i(23634),u=2147483647,L=/[^\0-\u007E]/,Z=/[.\u3002\uFF0E\uFF61]/g,J="Overflow: input needs wider integers to process",ee=RangeError,ue=r(Z.exec),ae=Math.floor,H=String.fromCharCode,se=r("".charCodeAt),Ee=r([].join),ie=r([].push),he=r("".replace),ge=r("".split),De=r("".toLowerCase),lt=function(Be){return Be+22+75*(Be<26)},Ve=function(Be,Pe,je){var He=0;for(Be=je?ae(Be/700):Be>>1,Be+=ae(Be/Pe);Be>455;)Be=ae(Be/35),He+=36;return ae(He+36*Be/(Be+38))},ze=function(Be){var tn,It,Pe=[],je=(Be=function(Be){for(var Pe=[],je=0,He=Be.length;je=55296&&Vt<=56319&&je=He&&Itae((u-Vt)/bt))throw ee(J);for(Vt+=(Bt-He)*bt,He=Bt,tn=0;tnu)throw ee(J);if(It==He){for(var Gt=Vt,xt=36;;){var Xt=xt<=it?1:xt>=it+26?26:xt-it;if(Gt{"use strict";var r=i(33912),u=i(41433),p=i(67917),d=RangeError;v.exports=function(_){var y=u(p(this)),S="",A=r(_);if(A<0||A==1/0)throw d("Wrong number of repetitions");for(;A>0;(A>>>=1)&&(y+=y))1&A&&(S+=y);return S}},85462:(v,T,i)=>{var r=i(29862).PROPER,u=i(55756),p=i(88185);v.exports=function(e){return u(function(){return!!p[e]()||"\u200b\x85\u180e"!=="\u200b\x85\u180e"[e]()||r&&p[e].name!==e})}},89858:(v,T,i)=>{var r=i(23634),u=i(67917),p=i(41433),d=i(88185),e=r("".replace),_="["+d+"]",y=RegExp("^"+_+_+"*"),S=RegExp(_+_+"*$"),A=function(N){return function(L){var Z=p(u(L));return 1&N&&(Z=e(Z,y,"")),2&N&&(Z=e(Z,S,"")),Z}};v.exports={start:A(1),end:A(2),trim:A(3)}},98535:(v,T,i)=>{var r=i(63556),u=i(55756);v.exports=!!Object.getOwnPropertySymbols&&!u(function(){var p=Symbol();return!String(p)||!(Object(p)instanceof Symbol)||!Symbol.sham&&r&&r<41})},56992:(v,T,i)=>{var r=i(25401),u=i(7365),p=i(91840),d=i(42915);v.exports=function(){var e=u("Symbol"),_=e&&e.prototype,y=_&&_.valueOf,S=p("toPrimitive");_&&!_[S]&&d(_,S,function(A){return r(y,this)},{arity:1})}},56709:(v,T,i)=>{var r=i(98535);v.exports=r&&!!Symbol.for&&!!Symbol.keyFor},37352:(v,T,i)=>{var ge,De,ce,lt,r=i(70009),u=i(2543),p=i(76781),d=i(52208),e=i(80112),_=i(55756),y=i(55690),S=i(37591),A=i(96682),N=i(15086),L=i(3877),Z=i(3787),J=r.setImmediate,K=r.clearImmediate,ee=r.process,ue=r.Dispatch,ae=r.Function,H=r.MessageChannel,se=r.String,Ee=0,ie={},he="onreadystatechange";try{ge=r.location}catch(je){}var Ve=function(je){if(e(ie,je)){var He=ie[je];delete ie[je],He()}},ze=function(je){return function(){Ve(je)}},Be=function(je){Ve(je.data)},Pe=function(je){r.postMessage(se(je),ge.protocol+"//"+ge.host)};(!J||!K)&&(J=function(He){N(arguments.length,1);var Vt=d(He)?He:ae(He),it=S(arguments,1);return ie[++Ee]=function(){u(Vt,void 0,it)},De(Ee),Ee},K=function(He){delete ie[He]},Z?De=function(je){ee.nextTick(ze(je))}:ue&&ue.now?De=function(je){ue.now(ze(je))}:H&&!L?(lt=(ce=new H).port2,ce.port1.onmessage=Be,De=p(lt.postMessage,lt)):r.addEventListener&&d(r.postMessage)&&!r.importScripts&&ge&&"file:"!==ge.protocol&&!_(Pe)?(De=Pe,r.addEventListener("message",Be,!1)):De=he in A("script")?function(je){y.appendChild(A("script"))[he]=function(){y.removeChild(this),Ve(je)}}:function(je){setTimeout(ze(je),0)}),v.exports={set:J,clear:K}},19401:(v,T,i)=>{var r=i(33912),u=Math.max,p=Math.min;v.exports=function(d,e){var _=r(d);return _<0?u(_+e,0):p(_,e)}},81010:(v,T,i)=>{var r=i(20973),u=i(67917);v.exports=function(p){return r(u(p))}},33912:(v,T,i)=>{var r=i(8651);v.exports=function(u){var p=+u;return p!=p||0===p?0:r(p)}},48869:(v,T,i)=>{var r=i(33912),u=Math.min;v.exports=function(p){return p>0?u(r(p),9007199254740991):0}},70267:(v,T,i)=>{var r=i(67917),u=Object;v.exports=function(p){return u(r(p))}},1645:(v,T,i)=>{var r=i(25401),u=i(77293),p=i(74717),d=i(34778),e=i(71689),_=i(91840),y=TypeError,S=_("toPrimitive");v.exports=function(A,N){if(!u(A)||p(A))return A;var Z,L=d(A,S);if(L){if(void 0===N&&(N="default"),Z=r(L,A,N),!u(Z)||p(Z))return Z;throw y("Can't convert object to primitive value")}return void 0===N&&(N="number"),e(A,N)}},62939:(v,T,i)=>{var r=i(1645),u=i(74717);v.exports=function(p){var d=r(p,"string");return u(d)?d:d+""}},25014:(v,T,i)=>{var p={};p[i(91840)("toStringTag")]="z",v.exports="[object z]"===String(p)},41433:(v,T,i)=>{var r=i(35329),u=String;v.exports=function(p){if("Symbol"===r(p))throw TypeError("Cannot convert a Symbol value to a string");return u(p)}},7378:v=>{var T=String;v.exports=function(i){try{return T(i)}catch(r){return"Object"}}},13708:(v,T,i)=>{var r=i(23634),u=0,p=Math.random(),d=r(1..toString);v.exports=function(e){return"Symbol("+(void 0===e?"":e)+")_"+d(++u+p,36)}},54933:(v,T,i)=>{var r=i(55756),u=i(91840),p=i(81124),d=u("iterator");v.exports=!r(function(){var e=new URL("b?a=1&b=2&c=3","http://a"),_=e.searchParams,y="";return e.pathname="c%20d",_.forEach(function(S,A){_.delete("b"),y+=A+S}),p&&!e.toJSON||!_.sort||"http://a/c%20d?a=1&c=3"!==e.href||"3"!==_.get("c")||"a=1"!==String(new URLSearchParams("?a=1"))||!_[d]||"a"!==new URL("https://a@b").username||"b"!==new URLSearchParams(new URLSearchParams("a=b")).get("a")||"xn--e1aybc"!==new URL("http://\u0442\u0435\u0441\u0442").host||"#%D0%B1"!==new URL("http://a#\u0431").hash||"a1c3"!==y||"x"!==new URL("http://x",void 0).host})},99554:(v,T,i)=>{var r=i(98535);v.exports=r&&!Symbol.sham&&"symbol"==typeof Symbol.iterator},47960:(v,T,i)=>{var r=i(49642),u=i(55756);v.exports=r&&u(function(){return 42!=Object.defineProperty(function(){},"prototype",{value:42,writable:!1}).prototype})},15086:v=>{var T=TypeError;v.exports=function(i,r){if(i{var r=i(70009),u=i(52208),p=r.WeakMap;v.exports=u(p)&&/native code/.test(String(p))},25374:(v,T,i)=>{var r=i(13544),u=i(80112),p=i(89734),d=i(48011).f;v.exports=function(e){var _=r.Symbol||(r.Symbol={});u(_,e)||d(_,e,{value:p.f(e)})}},89734:(v,T,i)=>{var r=i(91840);T.f=r},91840:(v,T,i)=>{var r=i(70009),u=i(64579),p=i(80112),d=i(13708),e=i(98535),_=i(99554),y=u("wks"),S=r.Symbol,A=S&&S.for,N=_?S:S&&S.withoutSetter||d;v.exports=function(L){if(!p(y,L)||!e&&"string"!=typeof y[L]){var Z="Symbol."+L;y[L]=e&&p(S,L)?S[L]:_&&A?A(Z):N(Z)}return y[L]}},88185:v=>{v.exports="\t\n\v\f\r \xa0\u1680\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029\ufeff"},70210:(v,T,i)=>{"use strict";var r=i(90513),u=i(23336),p=i(31426),d=i(54945),e=i(65031),_=i(83272),y=i(65162),S=i(51361),A=i(40039),N=i(33411),L=i(41605),Z=i(63313),J=i(91840),K=i(50499),ee=J("toStringTag"),ue=Error,ae=[].push,H=function(ie,he){var ce,ge=arguments.length>2?arguments[2]:void 0,De=u(se,this);d?ce=d(ue(),De?p(this):se):(ce=De?this:_(se),y(ce,ee,"Error")),void 0!==he&&y(ce,"message",Z(he)),K&&y(ce,"stack",A(ce.stack,1)),N(ce,ge);var lt=[];return L(ie,ae,{that:lt}),y(ce,"errors",lt),ce};d?d(H,ue):e(H,ue,{name:!0});var se=H.prototype=_(ue.prototype,{constructor:S(1,H),message:S(1,""),name:S(1,"AggregateError")});r({global:!0,constructor:!0,arity:2},{AggregateError:H})},10901:(v,T,i)=>{i(70210)},1625:(v,T,i)=>{"use strict";var r=i(90513),u=i(55756),p=i(89735),d=i(77293),e=i(70267),_=i(6381),y=i(11594),S=i(46751),A=i(2103),N=i(95913),L=i(91840),Z=i(63556),J=L("isConcatSpreadable"),K=Z>=51||!u(function(){var H=[];return H[J]=!1,H.concat()[0]!==H}),ee=N("concat"),ue=function(H){if(!d(H))return!1;var se=H[J];return void 0!==se?!!se:p(H)};r({target:"Array",proto:!0,arity:1,forced:!K||!ee},{concat:function(se){var ge,De,ce,lt,Ve,Ee=e(this),ie=A(Ee,0),he=0;for(ge=-1,ce=arguments.length;ge{"use strict";var r=i(90513),u=i(68607).every;r({target:"Array",proto:!0,forced:!i(33620)("every")},{every:function(_){return u(this,_,arguments.length>1?arguments[1]:void 0)}})},24990:(v,T,i)=>{var r=i(90513),u=i(35277),p=i(82196);r({target:"Array",proto:!0},{fill:u}),p("fill")},56534:(v,T,i)=>{"use strict";var r=i(90513),u=i(68607).filter;r({target:"Array",proto:!0,forced:!i(95913)("filter")},{filter:function(_){return u(this,_,arguments.length>1?arguments[1]:void 0)}})},12773:(v,T,i)=>{"use strict";var r=i(90513),u=i(68607).findIndex,p=i(82196),d="findIndex",e=!0;d in[]&&Array(1)[d](function(){e=!1}),r({target:"Array",proto:!0,forced:e},{findIndex:function(y){return u(this,y,arguments.length>1?arguments[1]:void 0)}}),p(d)},60326:(v,T,i)=>{"use strict";var r=i(90513),u=i(68607).find,p=i(82196),d="find",e=!0;d in[]&&Array(1)[d](function(){e=!1}),r({target:"Array",proto:!0,forced:e},{find:function(y){return u(this,y,arguments.length>1?arguments[1]:void 0)}}),p(d)},98792:(v,T,i)=>{"use strict";var r=i(90513),u=i(8366);r({target:"Array",proto:!0,forced:[].forEach!=u},{forEach:u})},261:(v,T,i)=>{var r=i(90513),u=i(51923);r({target:"Array",stat:!0,forced:!i(5253)(function(e){Array.from(e)})},{from:u})},77059:(v,T,i)=>{"use strict";var r=i(90513),u=i(95171).includes,p=i(55756),d=i(82196);r({target:"Array",proto:!0,forced:p(function(){return!Array(1).includes()})},{includes:function(y){return u(this,y,arguments.length>1?arguments[1]:void 0)}}),d("includes")},2795:(v,T,i)=>{"use strict";var r=i(90513),u=i(23634),p=i(95171).indexOf,d=i(33620),e=u([].indexOf),_=!!e&&1/e([1],1,-0)<0,y=d("indexOf");r({target:"Array",proto:!0,forced:_||!y},{indexOf:function(A){var N=arguments.length>1?arguments[1]:void 0;return _?e(this,A,N)||0:p(this,A,N)}})},2862:(v,T,i)=>{i(90513)({target:"Array",stat:!0},{isArray:i(89735)})},1285:(v,T,i)=>{"use strict";var r=i(81010),u=i(82196),p=i(84394),d=i(91093),e=i(48011).f,_=i(79077),y=i(28738),S=i(81124),A=i(49642),N="Array Iterator",L=d.set,Z=d.getterFor(N);v.exports=_(Array,"Array",function(K,ee){L(this,{type:N,target:r(K),index:0,kind:ee})},function(){var K=Z(this),ee=K.target,ue=K.kind,ae=K.index++;return!ee||ae>=ee.length?(K.target=void 0,y(void 0,!0)):y("keys"==ue?ae:"values"==ue?ee[ae]:[ae,ee[ae]],!1)},"values");var J=p.Arguments=p.Array;if(u("keys"),u("values"),u("entries"),!S&&A&&"values"!==J.name)try{e(J,"name",{value:"values"})}catch(K){}},74926:(v,T,i)=>{var r=i(90513),u=i(78375);r({target:"Array",proto:!0,forced:u!==[].lastIndexOf},{lastIndexOf:u})},88119:(v,T,i)=>{"use strict";var r=i(90513),u=i(68607).map;r({target:"Array",proto:!0,forced:!i(95913)("map")},{map:function(_){return u(this,_,arguments.length>1?arguments[1]:void 0)}})},46250:(v,T,i)=>{"use strict";var r=i(90513),u=i(88908).left,p=i(33620),d=i(63556),e=i(3787);r({target:"Array",proto:!0,forced:!p("reduce")||!e&&d>79&&d<83},{reduce:function(A){var N=arguments.length;return u(this,A,N,N>1?arguments[1]:void 0)}})},32836:(v,T,i)=>{"use strict";var r=i(90513),u=i(23634),p=i(89735),d=u([].reverse),e=[1,2];r({target:"Array",proto:!0,forced:String(e)===String(e.reverse())},{reverse:function(){return p(this)&&(this.length=this.length),d(this)}})},72999:(v,T,i)=>{"use strict";var r=i(90513),u=i(89735),p=i(81177),d=i(77293),e=i(19401),_=i(6381),y=i(81010),S=i(46751),A=i(91840),N=i(95913),L=i(37591),Z=N("slice"),J=A("species"),K=Array,ee=Math.max;r({target:"Array",proto:!0,forced:!Z},{slice:function(ae,H){var ge,De,ce,se=y(this),Ee=_(se),ie=e(ae,Ee),he=e(void 0===H?Ee:H,Ee);if(u(se)&&((p(ge=se.constructor)&&(ge===K||u(ge.prototype))||d(ge)&&null===(ge=ge[J]))&&(ge=void 0),ge===K||void 0===ge))return L(se,ie,he);for(De=new(void 0===ge?K:ge)(ee(he-ie,0)),ce=0;ie{"use strict";var r=i(90513),u=i(68607).some;r({target:"Array",proto:!0,forced:!i(33620)("some")},{some:function(_){return u(this,_,arguments.length>1?arguments[1]:void 0)}})},93639:(v,T,i)=>{"use strict";var r=i(90513),u=i(23634),p=i(61812),d=i(70267),e=i(6381),_=i(67236),y=i(41433),S=i(55756),A=i(84865),N=i(33620),L=i(36410),Z=i(5329),J=i(63556),K=i(34545),ee=[],ue=u(ee.sort),ae=u(ee.push),H=S(function(){ee.sort(void 0)}),se=S(function(){ee.sort(null)}),Ee=N("sort"),ie=!S(function(){if(J)return J<70;if(!(L&&L>3)){if(Z)return!0;if(K)return K<603;var ce,lt,Ve,ze,De="";for(ce=65;ce<76;ce++){switch(lt=String.fromCharCode(ce),ce){case 66:case 69:case 70:case 72:Ve=3;break;case 68:case 71:Ve=4;break;default:Ve=2}for(ze=0;ze<47;ze++)ee.push({k:lt+ze,v:Ve})}for(ee.sort(function(Be,Pe){return Pe.v-Be.v}),ze=0;zey(lt)?1:-1}}(ce)),Be=e(Ve),Pe=0;Pe{"use strict";var r=i(90513),u=i(70267),p=i(19401),d=i(33912),e=i(6381),_=i(54716),y=i(11594),S=i(2103),A=i(46751),N=i(67236),Z=i(95913)("splice"),J=Math.max,K=Math.min;r({target:"Array",proto:!0,forced:!Z},{splice:function(ue,ae){var he,ge,De,ce,lt,Ve,H=u(this),se=e(H),Ee=p(ue,se),ie=arguments.length;for(0===ie?he=ge=0:1===ie?(he=0,ge=se-Ee):(he=ie-2,ge=K(J(d(ae),0),se-Ee)),y(se+he-ge),De=S(H,ge),ce=0;cese-ge+he;ce--)N(H,ce-1)}else if(he>ge)for(ce=se-ge;ce>Ee;ce--)Ve=ce+he-1,(lt=ce+ge-1)in H?H[Ve]=H[lt]:N(H,Ve);for(ce=0;ce{var r=i(90513),u=i(23634),p=Date,d=u(p.prototype.getTime);r({target:"Date",stat:!0},{now:function(){return d(new p)}})},33379:(v,T,i)=>{var r=i(90513),u=i(44197);r({target:"Function",proto:!0,forced:Function.bind!==u},{bind:u})},87404:(v,T,i)=>{var r=i(90513),u=i(70009);r({global:!0,forced:u.globalThis!==u},{globalThis:u})},75071:(v,T,i)=>{var r=i(90513),u=i(7365),p=i(2543),d=i(25401),e=i(23634),_=i(55756),y=i(89735),S=i(52208),A=i(77293),N=i(74717),L=i(37591),Z=i(98535),J=u("JSON","stringify"),K=e(/./.exec),ee=e("".charAt),ue=e("".charCodeAt),ae=e("".replace),H=e(1..toString),se=/[\uD800-\uDFFF]/g,Ee=/^[\uD800-\uDBFF]$/,ie=/^[\uDC00-\uDFFF]$/,he=!Z||_(function(){var lt=u("Symbol")();return"[null]"!=J([lt])||"{}"!=J({a:lt})||"{}"!=J(Object(lt))}),ge=_(function(){return'"\\udf06\\ud834"'!==J("\udf06\ud834")||'"\\udead"'!==J("\udead")}),De=function(lt,Ve){var ze=L(arguments),Be=Ve;if((A(Ve)||void 0!==lt)&&!N(lt))return y(Ve)||(Ve=function(Pe,je){if(S(Be)&&(je=d(Be,this,Pe,je)),!N(je))return je}),ze[1]=Ve,p(J,null,ze)},ce=function(lt,Ve,ze){var Be=ee(ze,Ve-1),Pe=ee(ze,Ve+1);return K(Ee,lt)&&!K(ie,Pe)||K(ie,lt)&&!K(Ee,Be)?"\\u"+H(ue(lt,0),16):lt};J&&r({target:"JSON",stat:!0,arity:3,forced:he||ge},{stringify:function(Ve,ze,Be){var Pe=L(arguments),je=p(he?De:J,null,Pe);return ge&&"string"==typeof je?ae(je,se,ce):je}})},32300:(v,T,i)=>{var r=i(70009);i(85681)(r.JSON,"JSON",!0)},83616:(v,T,i)=>{"use strict";i(85116)("Map",function(p){return function(){return p(this,arguments.length?arguments[0]:void 0)}},i(26650))},85140:(v,T,i)=>{i(83616)},63603:()=>{},67234:(v,T,i)=>{var r=i(90513),u=i(75791);r({target:"Object",stat:!0,arity:2,forced:Object.assign!==u},{assign:u})},86516:(v,T,i)=>{i(90513)({target:"Object",stat:!0,sham:!i(49642)},{create:i(83272)})},36255:(v,T,i)=>{var r=i(90513),u=i(49642),p=i(25913).f;r({target:"Object",stat:!0,forced:Object.defineProperties!==p,sham:!u},{defineProperties:p})},84468:(v,T,i)=>{var r=i(90513),u=i(49642),p=i(48011).f;r({target:"Object",stat:!0,forced:Object.defineProperty!==p,sham:!u},{defineProperty:p})},54989:(v,T,i)=>{var r=i(90513),u=i(36805).entries;r({target:"Object",stat:!0},{entries:function(d){return u(d)}})},86627:(v,T,i)=>{var r=i(90513),u=i(55756),p=i(81010),d=i(25525).f,e=i(49642),_=u(function(){d(1)});r({target:"Object",stat:!0,forced:!e||_,sham:!e},{getOwnPropertyDescriptor:function(A,N){return d(p(A),N)}})},78275:(v,T,i)=>{var r=i(90513),u=i(49642),p=i(59823),d=i(81010),e=i(25525),_=i(46751);r({target:"Object",stat:!0,sham:!u},{getOwnPropertyDescriptors:function(S){for(var K,ee,A=d(S),N=e.f,L=p(A),Z={},J=0;L.length>J;)void 0!==(ee=N(A,K=L[J++]))&&_(Z,K,ee);return Z}})},37764:(v,T,i)=>{var r=i(90513),u=i(98535),p=i(55756),d=i(47238),e=i(70267);r({target:"Object",stat:!0,forced:!u||p(function(){d.f(1)})},{getOwnPropertySymbols:function(S){var A=d.f;return A?A(e(S)):[]}})},31193:(v,T,i)=>{var r=i(90513),u=i(55756),p=i(70267),d=i(31426),e=i(37112);r({target:"Object",stat:!0,forced:u(function(){d(1)}),sham:!e},{getPrototypeOf:function(S){return d(p(S))}})},56557:(v,T,i)=>{var r=i(90513),u=i(70267),p=i(28474);r({target:"Object",stat:!0,forced:i(55756)(function(){p(1)})},{keys:function(y){return p(u(y))}})},17971:(v,T,i)=>{i(90513)({target:"Object",stat:!0},{setPrototypeOf:i(54945)})},17221:()=>{},88923:(v,T,i)=>{var r=i(90513),u=i(36805).values;r({target:"Object",stat:!0},{values:function(d){return u(d)}})},84798:(v,T,i)=>{"use strict";var r=i(90513),u=i(25401),p=i(61812),d=i(54256),e=i(26975),_=i(41605);r({target:"Promise",stat:!0},{allSettled:function(S){var A=this,N=d.f(A),L=N.resolve,Z=N.reject,J=e(function(){var K=p(A.resolve),ee=[],ue=0,ae=1;_(S,function(H){var se=ue++,Ee=!1;ae++,u(K,A,H).then(function(ie){Ee||(Ee=!0,ee[se]={status:"fulfilled",value:ie},--ae||L(ee))},function(ie){Ee||(Ee=!0,ee[se]={status:"rejected",reason:ie},--ae||L(ee))})}),--ae||L(ee)});return J.error&&Z(J.value),N.promise}})},58085:(v,T,i)=>{"use strict";var r=i(90513),u=i(25401),p=i(61812),d=i(54256),e=i(26975),_=i(41605);r({target:"Promise",stat:!0,forced:i(95758)},{all:function(A){var N=this,L=d.f(N),Z=L.resolve,J=L.reject,K=e(function(){var ee=p(N.resolve),ue=[],ae=0,H=1;_(A,function(se){var Ee=ae++,ie=!1;H++,u(ee,N,se).then(function(he){ie||(ie=!0,ue[Ee]=he,--H||Z(ue))},J)}),--H||Z(ue)});return K.error&&J(K.value),L.promise}})},98857:(v,T,i)=>{"use strict";var r=i(90513),u=i(25401),p=i(61812),d=i(7365),e=i(54256),_=i(26975),y=i(41605),S="No one promise resolved";r({target:"Promise",stat:!0},{any:function(N){var L=this,Z=d("AggregateError"),J=e.f(L),K=J.resolve,ee=J.reject,ue=_(function(){var ae=p(L.resolve),H=[],se=0,Ee=1,ie=!1;y(N,function(he){var ge=se++,De=!1;Ee++,u(ae,L,he).then(function(ce){De||ie||(ie=!0,K(ce))},function(ce){De||ie||(De=!0,H[ge]=ce,--Ee||ee(new Z(H,S)))})}),--Ee||ee(new Z(H,S))});return ue.error&&ee(ue.value),J.promise}})},5846:(v,T,i)=>{"use strict";var r=i(90513),u=i(81124),p=i(9936).CONSTRUCTOR,d=i(46456),e=i(7365),_=i(52208),y=i(42915),S=d&&d.prototype;if(r({target:"Promise",proto:!0,forced:p,real:!0},{catch:function(N){return this.then(void 0,N)}}),!u&&_(d)){var A=e("Promise").prototype.catch;S.catch!==A&&y(S,"catch",A,{unsafe:!0})}},38206:(v,T,i)=>{"use strict";var di,Lr,Kr,r=i(90513),u=i(81124),p=i(3787),d=i(70009),e=i(25401),_=i(42915),y=i(54945),S=i(85681),A=i(58014),N=i(61812),L=i(52208),Z=i(77293),J=i(54849),K=i(95869),ee=i(37352).set,ue=i(58991),ae=i(52912),H=i(26975),se=i(70918),Ee=i(91093),ie=i(46456),he=i(9936),ge=i(54256),De="Promise",ce=he.CONSTRUCTOR,lt=he.REJECTION_EVENT,Ve=he.SUBCLASSING,ze=Ee.getterFor(De),Be=Ee.set,Pe=ie&&ie.prototype,je=ie,He=Pe,Vt=d.TypeError,it=d.document,tn=d.process,It=ge.f,Zt=It,Ut=!!(it&&it.createEvent&&d.dispatchEvent),Bt="unhandledrejection",ei=function(Wt){var zn;return!(!Z(Wt)||!L(zn=Wt.then))&&zn},Nn=function(Wt,zn){var br,Dr,gn,rr=zn.value,Fr=1==zn.state,Gn=Fr?Wt.ok:Wt.fail,Jr=Wt.resolve,_i=Wt.reject,wi=Wt.domain;try{Gn?(Fr||(2===zn.rejection&&ki(zn),zn.rejection=1),!0===Gn?br=rr:(wi&&wi.enter(),br=Gn(rr),wi&&(wi.exit(),gn=!0)),br===Wt.promise?_i(Vt("Promise-chain cycle")):(Dr=ei(br))?e(Dr,br,Jr,_i):Jr(br)):_i(rr)}catch(yn){wi&&!gn&&wi.exit(),_i(yn)}},$n=function(Wt,zn){Wt.notified||(Wt.notified=!0,ue(function(){for(var Fr,rr=Wt.reactions;Fr=rr.get();)Nn(Fr,Wt);Wt.notified=!1,zn&&!Wt.rejection&&Yr(Wt)}))},Br=function(Wt,zn,rr){var Fr,Gn;Ut?((Fr=it.createEvent("Event")).promise=zn,Fr.reason=rr,Fr.initEvent(Wt,!1,!0),d.dispatchEvent(Fr)):Fr={promise:zn,reason:rr},!lt&&(Gn=d["on"+Wt])?Gn(Fr):Wt===Bt&&ae("Unhandled promise rejection",rr)},Yr=function(Wt){e(ee,d,function(){var Gn,zn=Wt.facade,rr=Wt.value;if(fi(Wt)&&(Gn=H(function(){p?tn.emit("unhandledRejection",rr,zn):Br(Bt,zn,rr)}),Wt.rejection=p||fi(Wt)?2:1,Gn.error))throw Gn.value})},fi=function(Wt){return 1!==Wt.rejection&&!Wt.parent},ki=function(Wt){e(ee,d,function(){var zn=Wt.facade;p?tn.emit("rejectionHandled",zn):Br("rejectionhandled",zn,Wt.value)})},Hi=function(Wt,zn,rr){return function(Fr){Wt(zn,Fr,rr)}},Zr=function(Wt,zn,rr){Wt.done||(Wt.done=!0,rr&&(Wt=rr),Wt.value=zn,Wt.state=2,$n(Wt,!0))},Cn=function(Wt,zn,rr){if(!Wt.done){Wt.done=!0,rr&&(Wt=rr);try{if(Wt.facade===zn)throw Vt("Promise can't be resolved itself");var Fr=ei(zn);Fr?ue(function(){var Gn={done:!1};try{e(Fr,zn,Hi(Cn,Gn,Wt),Hi(Zr,Gn,Wt))}catch(Jr){Zr(Gn,Jr,Wt)}}):(Wt.value=zn,Wt.state=1,$n(Wt,!1))}catch(Gn){Zr({done:!1},Gn,Wt)}}};if(ce&&(je=function(zn){J(this,He),N(zn),e(di,this);var rr=ze(this);try{zn(Hi(Cn,rr),Hi(Zr,rr))}catch(Fr){Zr(rr,Fr)}},(di=function(zn){Be(this,{type:De,done:!1,notified:!1,parent:!1,reactions:new se,rejection:!1,state:0,value:void 0})}).prototype=_(He=je.prototype,"then",function(zn,rr){var Fr=ze(this),Gn=It(K(this,je));return Fr.parent=!0,Gn.ok=!L(zn)||zn,Gn.fail=L(rr)&&rr,Gn.domain=p?tn.domain:void 0,0==Fr.state?Fr.reactions.add(Gn):ue(function(){Nn(Gn,Fr)}),Gn.promise}),Lr=function(){var Wt=new di,zn=ze(Wt);this.promise=Wt,this.resolve=Hi(Cn,zn),this.reject=Hi(Zr,zn)},ge.f=It=function(Wt){return Wt===je||void 0===Wt?new Lr(Wt):Zt(Wt)},!u&&L(ie)&&Pe!==Object.prototype)){Kr=Pe.then,Ve||_(Pe,"then",function(zn,rr){var Fr=this;return new je(function(Gn,Jr){e(Kr,Fr,Gn,Jr)}).then(zn,rr)},{unsafe:!0});try{delete Pe.constructor}catch(Wt){}y&&y(Pe,He)}r({global:!0,constructor:!0,wrap:!0,forced:ce},{Promise:je}),S(je,De,!1,!0),A(De)},30185:(v,T,i)=>{"use strict";var r=i(90513),u=i(81124),p=i(46456),d=i(55756),e=i(7365),_=i(52208),y=i(95869),S=i(25524),A=i(42915),N=p&&p.prototype;if(r({target:"Promise",proto:!0,real:!0,forced:!!p&&d(function(){N.finally.call({then:function(){}},function(){})})},{finally:function(J){var K=y(this,e("Promise")),ee=_(J);return this.then(ee?function(ue){return S(K,J()).then(function(){return ue})}:J,ee?function(ue){return S(K,J()).then(function(){throw ue})}:J)}}),!u&&_(p)){var Z=e("Promise").prototype.finally;N.finally!==Z&&A(N,"finally",Z,{unsafe:!0})}},66793:(v,T,i)=>{i(38206),i(58085),i(5846),i(44738),i(74767),i(4991)},44738:(v,T,i)=>{"use strict";var r=i(90513),u=i(25401),p=i(61812),d=i(54256),e=i(26975),_=i(41605);r({target:"Promise",stat:!0,forced:i(95758)},{race:function(A){var N=this,L=d.f(N),Z=L.reject,J=e(function(){var K=p(N.resolve);_(A,function(ee){u(K,N,ee).then(L.resolve,Z)})});return J.error&&Z(J.value),L.promise}})},74767:(v,T,i)=>{"use strict";var r=i(90513),u=i(25401),p=i(54256);r({target:"Promise",stat:!0,forced:i(9936).CONSTRUCTOR},{reject:function(_){var y=p.f(this);return u(y.reject,void 0,_),y.promise}})},4991:(v,T,i)=>{"use strict";var r=i(90513),u=i(7365),p=i(81124),d=i(46456),e=i(9936).CONSTRUCTOR,_=i(25524),y=u("Promise"),S=p&&!e;r({target:"Promise",stat:!0,forced:p||e},{resolve:function(N){return _(S&&this===y?d:this,N)}})},19539:(v,T,i)=>{var r=i(90513),u=i(7365),p=i(2543),d=i(44197),e=i(54356),_=i(64562),y=i(77293),S=i(83272),A=i(55756),N=u("Reflect","construct"),L=Object.prototype,Z=[].push,J=A(function(){function ue(){}return!(N(function(){},[],ue)instanceof ue)}),K=!A(function(){N(function(){})}),ee=J||K;r({target:"Reflect",stat:!0,forced:ee,sham:ee},{construct:function(ae,H){e(ae),_(H);var se=arguments.length<3?ae:e(arguments[2]);if(K&&!J)return N(ae,H,se);if(ae==se){switch(H.length){case 0:return new ae;case 1:return new ae(H[0]);case 2:return new ae(H[0],H[1]);case 3:return new ae(H[0],H[1],H[2]);case 4:return new ae(H[0],H[1],H[2],H[3])}var Ee=[null];return p(Z,Ee,H),new(p(d,ae,Ee))}var ie=se.prototype,he=S(y(ie)?ie:L),ge=p(ae,he,H);return y(ge)?ge:he}})},60851:(v,T,i)=>{var r=i(90513),u=i(25401),p=i(77293),d=i(64562),e=i(27029),_=i(25525),y=i(31426);r({target:"Reflect",stat:!0},{get:function S(A,N){var Z,J,L=arguments.length<3?A:arguments[2];return d(A)===L?A[N]:(Z=_.f(A,N))?e(Z)?Z.value:void 0===Z.get?void 0:u(Z.get,L):p(J=y(A))?S(J,N,L):void 0}})},44864:()=>{},97764:(v,T,i)=>{"use strict";var r=i(90513),u=i(23634),p=i(56421),d=i(67917),e=i(41433),_=i(79668),y=u("".indexOf);r({target:"String",proto:!0,forced:!_("includes")},{includes:function(A){return!!~y(e(d(this)),e(p(A)),arguments.length>1?arguments[1]:void 0)}})},3934:(v,T,i)=>{"use strict";var r=i(61557).charAt,u=i(41433),p=i(91093),d=i(79077),e=i(28738),_="String Iterator",y=p.set,S=p.getterFor(_);d(String,"String",function(A){y(this,{type:_,string:u(A),index:0})},function(){var J,N=S(this),L=N.string,Z=N.index;return Z>=L.length?e(void 0,!0):(J=r(L,Z),N.index+=J.length,e(J,!1))})},3588:(v,T,i)=>{i(90513)({target:"String",proto:!0},{repeat:i(53411)})},24655:(v,T,i)=>{"use strict";var ee,r=i(90513),u=i(23634),p=i(25525).f,d=i(48869),e=i(41433),_=i(56421),y=i(67917),S=i(79668),A=i(81124),N=u("".startsWith),L=u("".slice),Z=Math.min,J=S("startsWith");r({target:"String",proto:!0,forced:!(!A&&!J&&(ee=p(String.prototype,"startsWith"),ee&&!ee.writable)||J)},{startsWith:function(ue){var ae=e(y(this));_(ue);var H=d(Z(arguments.length>1?arguments[1]:void 0,ae.length)),se=e(ue);return N?N(ae,se,H):L(ae,H,H+se.length)===se}})},90451:(v,T,i)=>{"use strict";var r=i(90513),u=i(89858).trim;r({target:"String",proto:!0,forced:i(85462)("trim")},{trim:function(){return u(this)}})},16426:(v,T,i)=>{i(25374)("asyncIterator")},17858:(v,T,i)=>{"use strict";var r=i(90513),u=i(70009),p=i(25401),d=i(23634),e=i(81124),_=i(49642),y=i(98535),S=i(55756),A=i(80112),N=i(23336),L=i(64562),Z=i(81010),J=i(62939),K=i(41433),ee=i(51361),ue=i(83272),ae=i(28474),H=i(51518),se=i(62469),Ee=i(47238),ie=i(25525),he=i(48011),ge=i(25913),De=i(25558),ce=i(42915),lt=i(64579),Ve=i(86066),ze=i(45599),Be=i(13708),Pe=i(91840),je=i(89734),He=i(25374),Vt=i(56992),it=i(85681),tn=i(91093),It=i(68607).forEach,Zt=Ve("hidden"),Ut="Symbol",Bt="prototype",bt=tn.set,Gt=tn.getterFor(Ut),xt=Object[Bt],Xt=u.Symbol,Zn=Xt&&Xt[Bt],Ur=u.TypeError,di=u.QObject,Lr=ie.f,Mr=he.f,Kr=se.f,ei=De.f,Nn=d([].push),$n=lt("symbols"),Br=lt("op-symbols"),Yr=lt("wks"),fi=!di||!di[Bt]||!di[Bt].findChild,ki=_&&S(function(){return 7!=ue(Mr({},"a",{get:function(){return Mr(this,"a",{value:7}).a}})).a})?function(Jr,_i,wi){var br=Lr(xt,_i);br&&delete xt[_i],Mr(Jr,_i,wi),br&&Jr!==xt&&Mr(xt,_i,br)}:Mr,Hi=function(Jr,_i){var wi=$n[Jr]=ue(Zn);return bt(wi,{type:Ut,tag:Jr,description:_i}),_||(wi.description=_i),wi},Zr=function(_i,wi,br){_i===xt&&Zr(Br,wi,br),L(_i);var Dr=J(wi);return L(br),A($n,Dr)?(br.enumerable?(A(_i,Zt)&&_i[Zt][Dr]&&(_i[Zt][Dr]=!1),br=ue(br,{enumerable:ee(0,!1)})):(A(_i,Zt)||Mr(_i,Zt,ee(1,{})),_i[Zt][Dr]=!0),ki(_i,Dr,br)):Mr(_i,Dr,br)},Cn=function(_i,wi){L(_i);var br=Z(wi),Dr=ae(br).concat(Gn(br));return It(Dr,function(gn){(!_||p(zn,br,gn))&&Zr(_i,gn,br[gn])}),_i},zn=function(_i){var wi=J(_i),br=p(ei,this,wi);return!(this===xt&&A($n,wi)&&!A(Br,wi))&&(!(br||!A(this,wi)||!A($n,wi)||A(this,Zt)&&this[Zt][wi])||br)},rr=function(_i,wi){var br=Z(_i),Dr=J(wi);if(br!==xt||!A($n,Dr)||A(Br,Dr)){var gn=Lr(br,Dr);return gn&&A($n,Dr)&&!(A(br,Zt)&&br[Zt][Dr])&&(gn.enumerable=!0),gn}},Fr=function(_i){var wi=Kr(Z(_i)),br=[];return It(wi,function(Dr){!A($n,Dr)&&!A(ze,Dr)&&Nn(br,Dr)}),br},Gn=function(Jr){var _i=Jr===xt,wi=Kr(_i?Br:Z(Jr)),br=[];return It(wi,function(Dr){A($n,Dr)&&(!_i||A(xt,Dr))&&Nn(br,$n[Dr])}),br};y||(ce(Zn=(Xt=function(){if(N(Zn,this))throw Ur("Symbol is not a constructor");var _i=arguments.length&&void 0!==arguments[0]?K(arguments[0]):void 0,wi=Be(_i),br=function(Dr){this===xt&&p(br,Br,Dr),A(this,Zt)&&A(this[Zt],wi)&&(this[Zt][wi]=!1),ki(this,wi,ee(1,Dr))};return _&&fi&&ki(xt,wi,{configurable:!0,set:br}),Hi(wi,_i)})[Bt],"toString",function(){return Gt(this).tag}),ce(Xt,"withoutSetter",function(Jr){return Hi(Be(Jr),Jr)}),De.f=zn,he.f=Zr,ge.f=Cn,ie.f=rr,H.f=se.f=Fr,Ee.f=Gn,je.f=function(Jr){return Hi(Pe(Jr),Jr)},_&&(Mr(Zn,"description",{configurable:!0,get:function(){return Gt(this).description}}),e||ce(xt,"propertyIsEnumerable",zn,{unsafe:!0}))),r({global:!0,constructor:!0,wrap:!0,forced:!y,sham:!y},{Symbol:Xt}),It(ae(Yr),function(Jr){He(Jr)}),r({target:Ut,stat:!0,forced:!y},{useSetter:function(){fi=!0},useSimple:function(){fi=!1}}),r({target:"Object",stat:!0,forced:!y,sham:!_},{create:function(_i,wi){return void 0===wi?ue(_i):Cn(ue(_i),wi)},defineProperty:Zr,defineProperties:Cn,getOwnPropertyDescriptor:rr}),r({target:"Object",stat:!0,forced:!y},{getOwnPropertyNames:Fr}),Vt(),it(Xt,Ut),ze[Zt]=!0},1172:()=>{},12353:(v,T,i)=>{var r=i(90513),u=i(7365),p=i(80112),d=i(41433),e=i(64579),_=i(56709),y=e("string-to-symbol-registry"),S=e("symbol-to-string-registry");r({target:"Symbol",stat:!0,forced:!_},{for:function(A){var N=d(A);if(p(y,N))return y[N];var L=u("Symbol")(N);return y[N]=L,S[L]=N,L}})},99579:(v,T,i)=>{i(25374)("hasInstance")},41258:(v,T,i)=>{i(25374)("isConcatSpreadable")},2383:(v,T,i)=>{i(25374)("iterator")},56728:(v,T,i)=>{i(17858),i(12353),i(27632),i(75071),i(37764)},27632:(v,T,i)=>{var r=i(90513),u=i(80112),p=i(74717),d=i(7378),e=i(64579),_=i(56709),y=e("symbol-to-string-registry");r({target:"Symbol",stat:!0,forced:!_},{keyFor:function(A){if(!p(A))throw TypeError(d(A)+" is not a symbol");if(u(y,A))return y[A]}})},64776:(v,T,i)=>{i(25374)("matchAll")},44339:(v,T,i)=>{i(25374)("match")},88215:(v,T,i)=>{i(25374)("replace")},65389:(v,T,i)=>{i(25374)("search")},12733:(v,T,i)=>{i(25374)("species")},97977:(v,T,i)=>{i(25374)("split")},59792:(v,T,i)=>{var r=i(25374),u=i(56992);r("toPrimitive"),u()},60242:(v,T,i)=>{var r=i(7365),u=i(25374),p=i(85681);u("toStringTag"),p(r("Symbol"),"Symbol")},26291:(v,T,i)=>{i(25374)("unscopables")},3119:(v,T,i)=>{"use strict";var Z,r=i(70009),u=i(23634),p=i(84604),d=i(57867),e=i(85116),_=i(84049),y=i(77293),S=i(46401),A=i(91093).enforce,N=i(81101),L=!r.ActiveXObject&&"ActiveXObject"in r,J=function(Ee){return function(){return Ee(this,arguments.length?arguments[0]:void 0)}},K=e("WeakMap",J,_);if(N&&L){Z=_.getConstructor(J,"WeakMap",!0),d.enable();var ee=K.prototype,ue=u(ee.delete),ae=u(ee.has),H=u(ee.get),se=u(ee.set);p(ee,{delete:function(Ee){if(y(Ee)&&!S(Ee)){var ie=A(this);return ie.frozen||(ie.frozen=new Z),ue(this,Ee)||ie.frozen.delete(Ee)}return ue(this,Ee)},has:function(ie){if(y(ie)&&!S(ie)){var he=A(this);return he.frozen||(he.frozen=new Z),ae(this,ie)||he.frozen.has(ie)}return ae(this,ie)},get:function(ie){if(y(ie)&&!S(ie)){var he=A(this);return he.frozen||(he.frozen=new Z),ae(this,ie)?H(this,ie):he.frozen.get(ie)}return H(this,ie)},set:function(ie,he){if(y(ie)&&!S(ie)){var ge=A(this);ge.frozen||(ge.frozen=new Z),ae(this,ie)?se(this,ie,he):ge.frozen.set(ie,he)}else se(this,ie,he);return this}})}},90770:(v,T,i)=>{i(3119)},67670:(v,T,i)=>{i(10901)},65237:(v,T,i)=>{i(87404)},10509:(v,T,i)=>{"use strict";i(90513)({target:"Map",proto:!0,real:!0,forced:!0},{deleteAll:i(37353)})},30887:(v,T,i)=>{"use strict";i(90513)({target:"Map",proto:!0,real:!0,forced:!0},{emplace:i(12864)})},54547:(v,T,i)=>{"use strict";var r=i(90513),u=i(64562),p=i(76781),d=i(37444),e=i(41605);r({target:"Map",proto:!0,real:!0,forced:!0},{every:function(y){var S=u(this),A=d(S),N=p(y,arguments.length>1?arguments[1]:void 0);return!e(A,function(L,Z,J){if(!N(Z,L,S))return J()},{AS_ENTRIES:!0,IS_ITERATOR:!0,INTERRUPTED:!0}).stopped}})},68996:(v,T,i)=>{"use strict";var r=i(90513),u=i(7365),p=i(76781),d=i(25401),e=i(61812),_=i(64562),y=i(95869),S=i(37444),A=i(41605);r({target:"Map",proto:!0,real:!0,forced:!0},{filter:function(L){var Z=_(this),J=S(Z),K=p(L,arguments.length>1?arguments[1]:void 0),ee=new(y(Z,u("Map"))),ue=e(ee.set);return A(J,function(ae,H){K(H,ae,Z)&&d(ue,ee,ae,H)},{AS_ENTRIES:!0,IS_ITERATOR:!0}),ee}})},60176:(v,T,i)=>{"use strict";var r=i(90513),u=i(64562),p=i(76781),d=i(37444),e=i(41605);r({target:"Map",proto:!0,real:!0,forced:!0},{findKey:function(y){var S=u(this),A=d(S),N=p(y,arguments.length>1?arguments[1]:void 0);return e(A,function(L,Z,J){if(N(Z,L,S))return J(L)},{AS_ENTRIES:!0,IS_ITERATOR:!0,INTERRUPTED:!0}).result}})},1530:(v,T,i)=>{"use strict";var r=i(90513),u=i(64562),p=i(76781),d=i(37444),e=i(41605);r({target:"Map",proto:!0,real:!0,forced:!0},{find:function(y){var S=u(this),A=d(S),N=p(y,arguments.length>1?arguments[1]:void 0);return e(A,function(L,Z,J){if(N(Z,L,S))return J(Z)},{AS_ENTRIES:!0,IS_ITERATOR:!0,INTERRUPTED:!0}).result}})},78271:(v,T,i)=>{i(90513)({target:"Map",stat:!0,forced:!0},{from:i(83483)})},41554:(v,T,i)=>{"use strict";var r=i(90513),u=i(25401),p=i(23634),d=i(61812),e=i(88055),_=i(41605),y=p([].push);r({target:"Map",stat:!0,forced:!0},{groupBy:function(A,N){d(N);var L=e(A),Z=new this,J=d(Z.has),K=d(Z.get),ee=d(Z.set);return _(L,function(ue){var ae=N(ue);u(J,Z,ae)?y(u(K,Z,ae),ue):u(ee,Z,ae,[ue])},{IS_ITERATOR:!0}),Z}})},41688:(v,T,i)=>{"use strict";var r=i(90513),u=i(64562),p=i(37444),d=i(29627),e=i(41605);r({target:"Map",proto:!0,real:!0,forced:!0},{includes:function(y){return e(p(u(this)),function(S,A,N){if(d(A,y))return N()},{AS_ENTRIES:!0,IS_ITERATOR:!0,INTERRUPTED:!0}).stopped}})},92847:(v,T,i)=>{"use strict";var r=i(90513),u=i(25401),p=i(41605),d=i(61812);r({target:"Map",stat:!0,forced:!0},{keyBy:function(_,y){var S=new this;d(y);var A=d(S.set);return p(_,function(N){u(A,S,y(N),N)}),S}})},17316:(v,T,i)=>{"use strict";var r=i(90513),u=i(64562),p=i(37444),d=i(41605);r({target:"Map",proto:!0,real:!0,forced:!0},{keyOf:function(_){return d(p(u(this)),function(y,S,A){if(S===_)return A(y)},{AS_ENTRIES:!0,IS_ITERATOR:!0,INTERRUPTED:!0}).result}})},58786:(v,T,i)=>{"use strict";var r=i(90513),u=i(7365),p=i(76781),d=i(25401),e=i(61812),_=i(64562),y=i(95869),S=i(37444),A=i(41605);r({target:"Map",proto:!0,real:!0,forced:!0},{mapKeys:function(L){var Z=_(this),J=S(Z),K=p(L,arguments.length>1?arguments[1]:void 0),ee=new(y(Z,u("Map"))),ue=e(ee.set);return A(J,function(ae,H){d(ue,ee,K(H,ae,Z),H)},{AS_ENTRIES:!0,IS_ITERATOR:!0}),ee}})},35517:(v,T,i)=>{"use strict";var r=i(90513),u=i(7365),p=i(76781),d=i(25401),e=i(61812),_=i(64562),y=i(95869),S=i(37444),A=i(41605);r({target:"Map",proto:!0,real:!0,forced:!0},{mapValues:function(L){var Z=_(this),J=S(Z),K=p(L,arguments.length>1?arguments[1]:void 0),ee=new(y(Z,u("Map"))),ue=e(ee.set);return A(J,function(ae,H){d(ue,ee,ae,K(H,ae,Z))},{AS_ENTRIES:!0,IS_ITERATOR:!0}),ee}})},12783:(v,T,i)=>{"use strict";var r=i(90513),u=i(61812),p=i(64562),d=i(41605);r({target:"Map",proto:!0,real:!0,arity:1,forced:!0},{merge:function(_){for(var y=p(this),S=u(y.set),A=arguments.length,N=0;N{i(90513)({target:"Map",stat:!0,forced:!0},{of:i(13067)})},69773:(v,T,i)=>{"use strict";var r=i(90513),u=i(64562),p=i(61812),d=i(37444),e=i(41605),_=TypeError;r({target:"Map",proto:!0,real:!0,forced:!0},{reduce:function(S){var A=u(this),N=d(A),L=arguments.length<2,Z=L?void 0:arguments[1];if(p(S),e(N,function(J,K){L?(L=!1,Z=K):Z=S(Z,K,J,A)},{AS_ENTRIES:!0,IS_ITERATOR:!0}),L)throw _("Reduce of empty map with no initial value");return Z}})},22337:(v,T,i)=>{"use strict";var r=i(90513),u=i(64562),p=i(76781),d=i(37444),e=i(41605);r({target:"Map",proto:!0,real:!0,forced:!0},{some:function(y){var S=u(this),A=d(S),N=p(y,arguments.length>1?arguments[1]:void 0);return e(A,function(L,Z,J){if(N(Z,L,S))return J()},{AS_ENTRIES:!0,IS_ITERATOR:!0,INTERRUPTED:!0}).stopped}})},84131:(v,T,i)=>{"use strict";i(90513)({target:"Map",proto:!0,real:!0,name:"upsert",forced:!0},{updateOrInsert:i(57729)})},40199:(v,T,i)=>{"use strict";var r=i(90513),u=i(25401),p=i(64562),d=i(61812),e=TypeError;r({target:"Map",proto:!0,real:!0,forced:!0},{update:function(y,S){var A=p(this),N=d(A.get),L=d(A.has),Z=d(A.set),J=arguments.length;d(S);var K=u(L,A,y);if(!K&&J<3)throw e("Updating absent value");var ee=K?u(N,A,y):d(J>2?arguments[2]:void 0)(y,A);return u(Z,A,y,S(ee,y,A)),A}})},69046:(v,T,i)=>{"use strict";i(90513)({target:"Map",proto:!0,real:!0,forced:!0},{upsert:i(57729)})},61127:(v,T,i)=>{i(84798)},45975:(v,T,i)=>{i(98857)},93114:(v,T,i)=>{"use strict";var r=i(90513),u=i(54256),p=i(26975);r({target:"Promise",stat:!0,forced:!0},{try:function(d){var e=u.f(this),_=p(d);return(_.error?e.reject:e.resolve)(_.value),e.promise}})},55461:(v,T,i)=>{i(25374)("asyncDispose")},5737:(v,T,i)=>{i(25374)("dispose")},87097:(v,T,i)=>{i(25374)("matcher")},29559:(v,T,i)=>{i(25374)("metadataKey")},71985:(v,T,i)=>{i(25374)("metadata")},90212:(v,T,i)=>{i(25374)("observable")},93770:(v,T,i)=>{i(25374)("patternMatch")},47743:(v,T,i)=>{i(25374)("replaceAll")},33089:(v,T,i)=>{i(1285);var r=i(44125),u=i(70009),p=i(35329),d=i(65162),e=i(84394),y=i(91840)("toStringTag");for(var S in r){var A=u[S],N=A&&A.prototype;N&&p(N)!==y&&d(N,y,S),e[S]=e.Array}},94784:(v,T,i)=>{var r=i(90513),u=i(70009),p=i(53814).setInterval;r({global:!0,bind:!0,forced:u.setInterval!==p},{setInterval:p})},36445:(v,T,i)=>{var r=i(90513),u=i(70009),p=i(53814).setTimeout;r({global:!0,bind:!0,forced:u.setTimeout!==p},{setTimeout:p})},69280:(v,T,i)=>{i(94784),i(36445)},73842:(v,T,i)=>{"use strict";i(1285);var r=i(90513),u=i(70009),p=i(25401),d=i(23634),e=i(49642),_=i(54933),y=i(42915),S=i(84604),A=i(85681),N=i(14554),L=i(91093),Z=i(54849),J=i(52208),K=i(80112),ee=i(76781),ue=i(35329),ae=i(64562),H=i(77293),se=i(41433),Ee=i(83272),ie=i(51361),he=i(88055),ge=i(34014),De=i(15086),ce=i(91840),lt=i(84865),Ve=ce("iterator"),ze="URLSearchParams",Be=ze+"Iterator",Pe=L.set,je=L.getterFor(ze),He=L.getterFor(Be),Vt=Object.getOwnPropertyDescriptor,it=function(Dr){if(!e)return u[Dr];var gn=Vt(u,Dr);return gn&&gn.value},tn=it("fetch"),It=it("Request"),Zt=it("Headers"),Ut=It&&It.prototype,Bt=Zt&&Zt.prototype,bt=u.RegExp,Gt=u.TypeError,xt=u.decodeURIComponent,Xt=u.encodeURIComponent,Zn=d("".charAt),Ur=d([].join),di=d([].push),Lr=d("".replace),Mr=d([].shift),Kr=d([].splice),ei=d("".split),Nn=d("".slice),$n=/\+/g,Br=Array(4),Yr=function(Dr){return Br[Dr-1]||(Br[Dr-1]=bt("((?:%[\\da-f]{2}){"+Dr+"})","gi"))},fi=function(Dr){try{return xt(Dr)}catch(gn){return Dr}},ki=function(Dr){var gn=Lr(Dr,$n," "),yn=4;try{return xt(gn)}catch(gr){for(;yn;)gn=Lr(gn,Yr(yn--),fi);return gn}},Hi=/[!'()~]|%20/g,Zr={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+"},Cn=function(Dr){return Zr[Dr]},Wt=function(Dr){return Lr(Xt(Dr),Hi,Cn)},zn=N(function(gn,yn){Pe(this,{type:Be,iterator:he(je(gn).entries),kind:yn})},"Iterator",function(){var gn=He(this),yn=gn.kind,gr=gn.iterator.next(),Jt=gr.value;return gr.done||(gr.value="keys"===yn?Jt.key:"values"===yn?Jt.value:[Jt.key,Jt.value]),gr},!0),rr=function(Dr){this.entries=[],this.url=null,void 0!==Dr&&(H(Dr)?this.parseObject(Dr):this.parseQuery("string"==typeof Dr?"?"===Zn(Dr,0)?Nn(Dr,1):Dr:se(Dr)))};rr.prototype={type:ze,bindURL:function(Dr){this.url=Dr,this.update()},parseObject:function(Dr){var yn,gr,Jt,Vn,mr,Dn,Pr,gn=ge(Dr);if(gn)for(gr=(yn=he(Dr,gn)).next;!(Jt=p(gr,yn)).done;){if(Vn=he(ae(Jt.value)),(Dn=p(mr=Vn.next,Vn)).done||(Pr=p(mr,Vn)).done||!p(mr,Vn).done)throw Gt("Expected sequence with length 2");di(this.entries,{key:se(Dn.value),value:se(Pr.value)})}else for(var Yt in Dr)K(Dr,Yt)&&di(this.entries,{key:Yt,value:se(Dr[Yt])})},parseQuery:function(Dr){if(Dr)for(var gr,Jt,gn=ei(Dr,"&"),yn=0;yn0?arguments[0]:void 0;Pe(this,new rr(gn))},Gn=Fr.prototype;if(S(Gn,{append:function(gn,yn){De(arguments.length,2);var gr=je(this);di(gr.entries,{key:se(gn),value:se(yn)}),gr.updateURL()},delete:function(Dr){De(arguments.length,1);for(var gn=je(this),yn=gn.entries,gr=se(Dr),Jt=0;Jtgr.key?1:-1}),gn.updateURL()},forEach:function(gn){for(var Vn,yn=je(this).entries,gr=ee(gn,arguments.length>1?arguments[1]:void 0),Jt=0;Jt1?wi(arguments[1]):{})}}),J(It)){var br=function(gn){return Z(this,Ut),new It(gn,arguments.length>1?wi(arguments[1]):{})};Ut.constructor=br,br.prototype=Ut,r({global:!0,constructor:!0,dontCallGetSet:!0,forced:!0},{Request:br})}}v.exports={URLSearchParams:Fr,getState:je}},26953:(v,T,i)=>{i(73842)},80504:(v,T,i)=>{"use strict";i(3934);var Hi,r=i(90513),u=i(49642),p=i(54933),d=i(70009),e=i(76781),_=i(23634),y=i(42915),S=i(1707),A=i(54849),N=i(80112),L=i(75791),Z=i(51923),J=i(8681),K=i(61557).codeAt,ee=i(26662),ue=i(41433),ae=i(85681),H=i(15086),se=i(73842),Ee=i(91093),ie=Ee.set,he=Ee.getterFor("URL"),ge=se.URLSearchParams,De=se.getState,ce=d.URL,lt=d.TypeError,Ve=d.parseInt,ze=Math.floor,Be=Math.pow,Pe=_("".charAt),je=_(/./.exec),He=_([].join),Vt=_(1..toString),it=_([].pop),tn=_([].push),It=_("".replace),Zt=_([].shift),Ut=_("".split),Bt=_("".slice),bt=_("".toLowerCase),Gt=_([].unshift),Xt="Invalid scheme",Zn="Invalid host",Ur="Invalid port",di=/[a-z]/i,Lr=/[\d+-.a-z]/i,Mr=/\d/,Kr=/^0x/i,ei=/^[0-7]+$/,Nn=/^\d+$/,$n=/^[\da-f]+$/i,Br=/[\0\t\n\r #%/:<>?@[\\\]^|]/,Yr=/[\0\t\n\r #/:<>?@[\\\]^|]/,fi=/^[\u0000-\u0020]+|[\u0000-\u0020]+$/g,ki=/[\t\n\r]/g,zn=function(Bn){var lr,vr,er,ri;if("number"==typeof Bn){for(lr=[],vr=0;vr<4;vr++)Gt(lr,Bn%256),Bn=ze(Bn/256);return He(lr,".")}if("object"==typeof Bn){for(lr="",er=function(Bn){for(var lr=null,vr=1,er=null,ri=0,uo=0;uo<8;uo++)0!==Bn[uo]?(ri>vr&&(lr=er,vr=ri),er=null,ri=0):(null===er&&(er=uo),++ri);return ri>vr&&(lr=er,vr=ri),lr}(Bn),vr=0;vr<8;vr++)ri&&0===Bn[vr]||(ri&&(ri=!1),er===vr?(lr+=vr?":":"::",ri=!0):(lr+=Vt(Bn[vr],16),vr<7&&(lr+=":")));return"["+lr+"]"}return Bn},rr={},Fr=L({},rr,{" ":1,'"':1,"<":1,">":1,"`":1}),Gn=L({},Fr,{"#":1,"?":1,"{":1,"}":1}),Jr=L({},Gn,{"/":1,":":1,";":1,"=":1,"@":1,"[":1,"\\":1,"]":1,"^":1,"|":1}),_i=function(Bn,lr){var vr=K(Bn,0);return vr>32&&vr<127&&!N(lr,Bn)?Bn:encodeURIComponent(Bn)},wi={ftp:21,file:null,http:80,https:443,ws:80,wss:443},br=function(Bn,lr){var vr;return 2==Bn.length&&je(di,Pe(Bn,0))&&(":"==(vr=Pe(Bn,1))||!lr&&"|"==vr)},Dr=function(Bn){var lr;return Bn.length>1&&br(Bt(Bn,0,2))&&(2==Bn.length||"/"===(lr=Pe(Bn,2))||"\\"===lr||"?"===lr||"#"===lr)},gn=function(Bn){return"."===Bn||"%2e"===bt(Bn)},yn=function(Bn){return".."===(Bn=bt(Bn))||"%2e."===Bn||".%2e"===Bn||"%2e%2e"===Bn},gr={},Jt={},Vn={},mr={},Dn={},Pr={},Yt={},_n={},Ge={},kr={},mi={},An={},Er={},Wr={},dr={},Fn={},ar={},Wi={},lo={},vo={},Co={},Gi=function(Bn,lr,vr){var ri,uo,Ci,er=ue(Bn);if(lr){if(uo=this.parse(er))throw lt(uo);this.searchParams=null}else{if(void 0!==vr&&(ri=new Gi(vr,!0)),uo=this.parse(er,null,ri))throw lt(uo);(Ci=De(new ge)).bindURL(this),this.searchParams=Ci}};Gi.prototype={type:"URL",parse:function(Bn,lr,vr){var Rt,_t,mt,jt,er=this,ri=lr||gr,uo=0,Ci="",$o=!1,tr=!1,Ar=!1;for(Bn=ue(Bn),lr||(er.scheme="",er.username="",er.password="",er.host=null,er.port=null,er.path=[],er.query=null,er.fragment=null,er.cannotBeABaseURL=!1,Bn=It(Bn,fi,"")),Bn=It(Bn,ki,""),Rt=Z(Bn);uo<=Rt.length;){switch(_t=Rt[uo],ri){case gr:if(!_t||!je(di,_t)){if(lr)return Xt;ri=Vn;continue}Ci+=bt(_t),ri=Jt;break;case Jt:if(_t&&(je(Lr,_t)||"+"==_t||"-"==_t||"."==_t))Ci+=bt(_t);else{if(":"!=_t){if(lr)return Xt;Ci="",ri=Vn,uo=0;continue}if(lr&&(er.isSpecial()!=N(wi,Ci)||"file"==Ci&&(er.includesCredentials()||null!==er.port)||"file"==er.scheme&&!er.host))return;if(er.scheme=Ci,lr)return void(er.isSpecial()&&wi[er.scheme]==er.port&&(er.port=null));Ci="","file"==er.scheme?ri=Wr:er.isSpecial()&&vr&&vr.scheme==er.scheme?ri=mr:er.isSpecial()?ri=_n:"/"==Rt[uo+1]?(ri=Dn,uo++):(er.cannotBeABaseURL=!0,tn(er.path,""),ri=lo)}break;case Vn:if(!vr||vr.cannotBeABaseURL&&"#"!=_t)return Xt;if(vr.cannotBeABaseURL&&"#"==_t){er.scheme=vr.scheme,er.path=J(vr.path),er.query=vr.query,er.fragment="",er.cannotBeABaseURL=!0,ri=Co;break}ri="file"==vr.scheme?Wr:Pr;continue;case mr:if("/"!=_t||"/"!=Rt[uo+1]){ri=Pr;continue}ri=Ge,uo++;break;case Dn:if("/"==_t){ri=kr;break}ri=Wi;continue;case Pr:if(er.scheme=vr.scheme,_t==Hi)er.username=vr.username,er.password=vr.password,er.host=vr.host,er.port=vr.port,er.path=J(vr.path),er.query=vr.query;else if("/"==_t||"\\"==_t&&er.isSpecial())ri=Yt;else if("?"==_t)er.username=vr.username,er.password=vr.password,er.host=vr.host,er.port=vr.port,er.path=J(vr.path),er.query="",ri=vo;else{if("#"!=_t){er.username=vr.username,er.password=vr.password,er.host=vr.host,er.port=vr.port,er.path=J(vr.path),er.path.length--,ri=Wi;continue}er.username=vr.username,er.password=vr.password,er.host=vr.host,er.port=vr.port,er.path=J(vr.path),er.query=vr.query,er.fragment="",ri=Co}break;case Yt:if(!er.isSpecial()||"/"!=_t&&"\\"!=_t){if("/"!=_t){er.username=vr.username,er.password=vr.password,er.host=vr.host,er.port=vr.port,ri=Wi;continue}ri=kr}else ri=Ge;break;case _n:if(ri=Ge,"/"!=_t||"/"!=Pe(Ci,uo+1))continue;uo++;break;case Ge:if("/"!=_t&&"\\"!=_t){ri=kr;continue}break;case kr:if("@"==_t){$o&&(Ci="%40"+Ci),$o=!0,mt=Z(Ci);for(var on=0;on65535)return Ur;er.port=er.isSpecial()&&_o===wi[er.scheme]?null:_o,Ci=""}if(lr)return;ri=ar;continue}return Ur}Ci+=_t;break;case Wr:if(er.scheme="file","/"==_t||"\\"==_t)ri=dr;else{if(!vr||"file"!=vr.scheme){ri=Wi;continue}if(_t==Hi)er.host=vr.host,er.path=J(vr.path),er.query=vr.query;else if("?"==_t)er.host=vr.host,er.path=J(vr.path),er.query="",ri=vo;else{if("#"!=_t){Dr(He(J(Rt,uo),""))||(er.host=vr.host,er.path=J(vr.path),er.shortenPath()),ri=Wi;continue}er.host=vr.host,er.path=J(vr.path),er.query=vr.query,er.fragment="",ri=Co}}break;case dr:if("/"==_t||"\\"==_t){ri=Fn;break}vr&&"file"==vr.scheme&&!Dr(He(J(Rt,uo),""))&&(br(vr.path[0],!0)?tn(er.path,vr.path[0]):er.host=vr.host),ri=Wi;continue;case Fn:if(_t==Hi||"/"==_t||"\\"==_t||"?"==_t||"#"==_t){if(!lr&&br(Ci))ri=Wi;else if(""==Ci){if(er.host="",lr)return;ri=ar}else{if(jt=er.parseHost(Ci))return jt;if("localhost"==er.host&&(er.host=""),lr)return;Ci="",ri=ar}continue}Ci+=_t;break;case ar:if(er.isSpecial()){if(ri=Wi,"/"!=_t&&"\\"!=_t)continue}else if(lr||"?"!=_t)if(lr||"#"!=_t){if(_t!=Hi&&(ri=Wi,"/"!=_t))continue}else er.fragment="",ri=Co;else er.query="",ri=vo;break;case Wi:if(_t==Hi||"/"==_t||"\\"==_t&&er.isSpecial()||!lr&&("?"==_t||"#"==_t)){if(yn(Ci)?(er.shortenPath(),"/"!=_t&&!("\\"==_t&&er.isSpecial())&&tn(er.path,"")):gn(Ci)?"/"!=_t&&!("\\"==_t&&er.isSpecial())&&tn(er.path,""):("file"==er.scheme&&!er.path.length&&br(Ci)&&(er.host&&(er.host=""),Ci=Pe(Ci,0)+":"),tn(er.path,Ci)),Ci="","file"==er.scheme&&(_t==Hi||"?"==_t||"#"==_t))for(;er.path.length>1&&""===er.path[0];)Zt(er.path);"?"==_t?(er.query="",ri=vo):"#"==_t&&(er.fragment="",ri=Co)}else Ci+=_i(_t,Gn);break;case lo:"?"==_t?(er.query="",ri=vo):"#"==_t?(er.fragment="",ri=Co):_t!=Hi&&(er.path[0]+=_i(_t,rr));break;case vo:lr||"#"!=_t?_t!=Hi&&("'"==_t&&er.isSpecial()?er.query+="%27":er.query+="#"==_t?"%23":_i(_t,rr)):(er.fragment="",ri=Co);break;case Co:_t!=Hi&&(er.fragment+=_i(_t,Fr))}uo++}},parseHost:function(Bn){var lr,vr,er;if("["==Pe(Bn,0)){if("]"!=Pe(Bn,Bn.length-1)||!(lr=function(Bn){var uo,Ci,$o,tr,Ar,Rt,_t,lr=[0,0,0,0,0,0,0,0],vr=0,er=null,ri=0,mt=function(){return Pe(Bn,ri)};if(":"==mt()){if(":"!=Pe(Bn,1))return;ri+=2,er=++vr}for(;mt();){if(8==vr)return;if(":"!=mt()){for(uo=Ci=0;Ci<4&&je($n,mt());)uo=16*uo+Ve(mt(),16),ri++,Ci++;if("."==mt()){if(0==Ci||(ri-=Ci,vr>6))return;for($o=0;mt();){if(tr=null,$o>0){if(!("."==mt()&&$o<4))return;ri++}if(!je(Mr,mt()))return;for(;je(Mr,mt());){if(Ar=Ve(mt(),10),null===tr)tr=Ar;else{if(0==tr)return;tr=10*tr+Ar}if(tr>255)return;ri++}lr[vr]=256*lr[vr]+tr,(2==++$o||4==$o)&&vr++}if(4!=$o)return;break}if(":"==mt()){if(ri++,!mt())return}else if(mt())return;lr[vr++]=uo}else{if(null!==er)return;ri++,er=++vr}}if(null!==er)for(Rt=vr-er,vr=7;0!=vr&&Rt>0;)_t=lr[vr],lr[vr--]=lr[er+Rt-1],lr[er+--Rt]=_t;else if(8!=vr)return;return lr}(Bt(Bn,1,-1))))return Zn;this.host=lr}else if(this.isSpecial()){if(Bn=ee(Bn),je(Br,Bn)||null===(lr=function(Bn){var vr,er,ri,uo,Ci,$o,tr,lr=Ut(Bn,".");if(lr.length&&""==lr[lr.length-1]&&lr.length--,(vr=lr.length)>4)return Bn;for(er=[],ri=0;ri1&&"0"==Pe(uo,0)&&(Ci=je(Kr,uo)?16:8,uo=Bt(uo,8==Ci?1:2)),""===uo)$o=0;else{if(!je(10==Ci?Nn:8==Ci?ei:$n,uo))return Bn;$o=Ve(uo,Ci)}tn(er,$o)}for(ri=0;ri=Be(256,5-vr))return null}else if($o>255)return null;for(tr=it(er),ri=0;ri1?arguments[1]:void 0,ri=ie(vr,new Gi(lr,!1,er));u||(vr.href=ri.serialize(),vr.origin=ri.getOrigin(),vr.protocol=ri.getProtocol(),vr.username=ri.getUsername(),vr.password=ri.getPassword(),vr.host=ri.getHost(),vr.hostname=ri.getHostname(),vr.port=ri.getPort(),vr.pathname=ri.getPathname(),vr.search=ri.getSearch(),vr.searchParams=ri.getSearchParams(),vr.hash=ri.getHash())},jo=os.prototype,To=function(Bn,lr){return{get:function(){return he(this)[Bn]()},set:lr&&function(vr){return he(this)[lr](vr)},configurable:!0,enumerable:!0}};if(u&&(S(jo,"href",To("serialize","setHref")),S(jo,"origin",To("getOrigin")),S(jo,"protocol",To("getProtocol","setProtocol")),S(jo,"username",To("getUsername","setUsername")),S(jo,"password",To("getPassword","setPassword")),S(jo,"host",To("getHost","setHost")),S(jo,"hostname",To("getHostname","setHostname")),S(jo,"port",To("getPort","setPort")),S(jo,"pathname",To("getPathname","setPathname")),S(jo,"search",To("getSearch","setSearch")),S(jo,"searchParams",To("getSearchParams")),S(jo,"hash",To("getHash","setHash"))),y(jo,"toJSON",function(){return he(this).serialize()},{enumerable:!0}),y(jo,"toString",function(){return he(this).serialize()},{enumerable:!0}),ce){var Mi=ce.createObjectURL,li=ce.revokeObjectURL;Mi&&y(os,"createObjectURL",e(Mi,ce)),li&&y(os,"revokeObjectURL",e(li,ce))}ae(os,"URL"),r({global:!0,constructor:!0,forced:!p,sham:!u},{URL:os})},95981:(v,T,i)=>{i(80504)},71324:()=>{},75242:(v,T,i)=>{var r=i(74771);v.exports=r},10323:(v,T,i)=>{var r=i(8412);v.exports=r},99940:(v,T,i)=>{var r=i(399);v.exports=r},89919:(v,T,i)=>{var r=i(98812);v.exports=r},14869:(v,T,i)=>{var r=i(33195);v.exports=r},4475:(v,T,i)=>{var r=i(46332);v.exports=r},38762:(v,T,i)=>{var r=i(42618);v.exports=r},8748:(v,T,i)=>{var r=i(63791);i(33089),v.exports=r},47506:(v,T,i)=>{var r=i(27959);v.exports=r},71873:(v,T,i)=>{var r=i(69029);v.exports=r},61599:(v,T,i)=>{var r=i(28924);v.exports=r},34097:(v,T,i)=>{i(33089);var r=i(35329),u=i(80112),p=i(23336),d=i(99940),e=Array.prototype,_={DOMTokenList:!0,NodeList:!0};v.exports=function(y){var S=y.entries;return y===e||p(e,y)&&S===e.entries||u(_,r(y))?d:S}},15149:(v,T,i)=>{var r=i(98709);v.exports=r},83361:(v,T,i)=>{var r=i(65991);v.exports=r},19095:(v,T,i)=>{var r=i(64158);v.exports=r},71420:(v,T,i)=>{var r=i(91799);v.exports=r},13178:(v,T,i)=>{var r=i(26155);v.exports=r},52049:(v,T,i)=>{i(33089);var r=i(35329),u=i(80112),p=i(23336),d=i(89919),e=Array.prototype,_={DOMTokenList:!0,NodeList:!0};v.exports=function(y){var S=y.forEach;return y===e||p(e,y)&&S===e.forEach||u(_,r(y))?d:S}},83655:(v,T,i)=>{var r=i(33758);v.exports=r},87054:(v,T,i)=>{var r=i(7592);v.exports=r},51946:(v,T,i)=>{i(33089);var r=i(35329),u=i(80112),p=i(23336),d=i(14869),e=Array.prototype,_={DOMTokenList:!0,NodeList:!0};v.exports=function(y){var S=y.keys;return y===e||p(e,y)&&S===e.keys||u(_,r(y))?d:S}},40764:(v,T,i)=>{var r=i(17480);v.exports=r},81214:(v,T,i)=>{var r=i(20681);v.exports=r},50881:(v,T,i)=>{var r=i(90949);v.exports=r},38813:(v,T,i)=>{var r=i(99316);v.exports=r},45284:(v,T,i)=>{var r=i(62212);v.exports=r},70157:(v,T,i)=>{var r=i(49073);v.exports=r},3502:(v,T,i)=>{var r=i(24146);v.exports=r},81610:(v,T,i)=>{var r=i(40104);v.exports=r},19543:(v,T,i)=>{var r=i(3555);v.exports=r},74046:(v,T,i)=>{var r=i(68333);v.exports=r},13731:(v,T,i)=>{var r=i(65786);v.exports=r},80129:(v,T,i)=>{i(33089);var r=i(35329),u=i(80112),p=i(23336),d=i(4475),e=Array.prototype,_={DOMTokenList:!0,NodeList:!0};v.exports=function(y){var S=y.values;return y===e||p(e,y)&&S===e.values||u(_,r(y))?d:S}},43720:(v,T,i)=>{var r=i(66306);v.exports=r},640:(v,T,i)=>{var r=i(31845);i(33089),v.exports=r},50320:(v,T,i)=>{var r=i(44168);v.exports=r},93006:(v,T,i)=>{var r=i(25852);v.exports=r},36226:(v,T,i)=>{var r=i(24457);v.exports=r},21968:(v,T,i)=>{var r=i(99671);v.exports=r},15554:(v,T,i)=>{var r=i(35161);v.exports=r},87259:(v,T,i)=>{var r=i(38007);v.exports=r},62021:(v,T,i)=>{var r=i(57432);v.exports=r},57682:(v,T,i)=>{var r=i(36541);v.exports=r},94222:(v,T,i)=>{var r=i(17303);v.exports=r},1162:(v,T,i)=>{var r=i(62149);v.exports=r},82805:(v,T,i)=>{var r=i(86537);v.exports=r},70809:(v,T,i)=>{var r=i(79553);v.exports=r},26498:(v,T,i)=>{var r=i(80092);i(33089),v.exports=r},44850:(v,T,i)=>{var r=i(472);v.exports=r},9634:(v,T,i)=>{var r=i(4678);v.exports=r},12118:(v,T,i)=>{i(69280);var r=i(13544);v.exports=r.setTimeout},96551:(v,T,i)=>{var r=i(61697);i(33089),v.exports=r},98908:(v,T,i)=>{var r=i(42497);i(33089),v.exports=r},44675:(v,T,i)=>{var r=i(41530);i(33089),v.exports=r},70906:(v,T,i)=>{var r=i(75081);v.exports=r},95050:(v,T,i)=>{var r=i(58255);i(33089),v.exports=r},41530:(v,T,i)=>{i(26953);var r=i(13544);v.exports=r.URLSearchParams},75081:(v,T,i)=>{i(95981),i(71324),i(26953);var r=i(13544);v.exports=r.URL},71577:function(){var v;v="undefined"!=typeof self?self:this,function(i){var r_searchParams="URLSearchParams"in v,r_iterable="Symbol"in v&&"iterator"in Symbol,r_blob="FileReader"in v&&"Blob"in v&&function(){try{return new Blob,!0}catch(De){return!1}}(),r_formData="FormData"in v,r_arrayBuffer="ArrayBuffer"in v;if(r_arrayBuffer)var p=["[object Int8Array]","[object Uint8Array]","[object Uint8ClampedArray]","[object Int16Array]","[object Uint16Array]","[object Int32Array]","[object Uint32Array]","[object Float32Array]","[object Float64Array]"],d=ArrayBuffer.isView||function(De){return De&&p.indexOf(Object.prototype.toString.call(De))>-1};function e(De){if("string"!=typeof De&&(De=String(De)),/[^a-z0-9\-#$%&'*+.^_`|~]/i.test(De))throw new TypeError("Invalid character in header field name");return De.toLowerCase()}function _(De){return"string"!=typeof De&&(De=String(De)),De}function y(De){var ce={next:function(){var lt=De.shift();return{done:void 0===lt,value:lt}}};return r_iterable&&(ce[Symbol.iterator]=function(){return ce}),ce}function S(De){this.map={},De instanceof S?De.forEach(function(ce,lt){this.append(lt,ce)},this):Array.isArray(De)?De.forEach(function(ce){this.append(ce[0],ce[1])},this):De&&Object.getOwnPropertyNames(De).forEach(function(ce){this.append(ce,De[ce])},this)}function A(De){if(De.bodyUsed)return Promise.reject(new TypeError("Already read"));De.bodyUsed=!0}function N(De){return new Promise(function(ce,lt){De.onload=function(){ce(De.result)},De.onerror=function(){lt(De.error)}})}function L(De){var ce=new FileReader,lt=N(ce);return ce.readAsArrayBuffer(De),lt}function K(De){if(De.slice)return De.slice(0);var ce=new Uint8Array(De.byteLength);return ce.set(new Uint8Array(De)),ce.buffer}function ee(){return this.bodyUsed=!1,this._initBody=function(De){this._bodyInit=De,De?"string"==typeof De?this._bodyText=De:r_blob&&Blob.prototype.isPrototypeOf(De)?this._bodyBlob=De:r_formData&&FormData.prototype.isPrototypeOf(De)?this._bodyFormData=De:r_searchParams&&URLSearchParams.prototype.isPrototypeOf(De)?this._bodyText=De.toString():r_arrayBuffer&&r_blob&&function(De){return De&&DataView.prototype.isPrototypeOf(De)}(De)?(this._bodyArrayBuffer=K(De.buffer),this._bodyInit=new Blob([this._bodyArrayBuffer])):r_arrayBuffer&&(ArrayBuffer.prototype.isPrototypeOf(De)||d(De))?this._bodyArrayBuffer=K(De):this._bodyText=De=Object.prototype.toString.call(De):this._bodyText="",this.headers.get("content-type")||("string"==typeof De?this.headers.set("content-type","text/plain;charset=UTF-8"):this._bodyBlob&&this._bodyBlob.type?this.headers.set("content-type",this._bodyBlob.type):r_searchParams&&URLSearchParams.prototype.isPrototypeOf(De)&&this.headers.set("content-type","application/x-www-form-urlencoded;charset=UTF-8"))},r_blob&&(this.blob=function(){var De=A(this);if(De)return De;if(this._bodyBlob)return Promise.resolve(this._bodyBlob);if(this._bodyArrayBuffer)return Promise.resolve(new Blob([this._bodyArrayBuffer]));if(this._bodyFormData)throw new Error("could not read FormData body as blob");return Promise.resolve(new Blob([this._bodyText]))},this.arrayBuffer=function(){return this._bodyArrayBuffer?A(this)||Promise.resolve(this._bodyArrayBuffer):this.blob().then(L)}),this.text=function(){var De=A(this);if(De)return De;if(this._bodyBlob)return function(De){var ce=new FileReader,lt=N(ce);return ce.readAsText(De),lt}(this._bodyBlob);if(this._bodyArrayBuffer)return Promise.resolve(function(De){for(var ce=new Uint8Array(De),lt=new Array(ce.length),Ve=0;Ve-1?ce:De}(ce.method||this.method||"GET"),this.mode=ce.mode||this.mode||null,this.signal=ce.signal||this.signal,this.referrer=null,("GET"===this.method||"HEAD"===this.method)&<)throw new TypeError("Body not allowed for GET or HEAD requests");this._initBody(lt)}function se(De){var ce=new FormData;return De.trim().split("&").forEach(function(lt){if(lt){var Ve=lt.split("="),ze=Ve.shift().replace(/\+/g," "),Be=Ve.join("=").replace(/\+/g," ");ce.append(decodeURIComponent(ze),decodeURIComponent(Be))}}),ce}function Ee(De){var ce=new S;return De.replace(/\r?\n[\t ]+/g," ").split(/\r?\n/).forEach(function(Ve){var ze=Ve.split(":"),Be=ze.shift().trim();if(Be){var Pe=ze.join(":").trim();ce.append(Be,Pe)}}),ce}function ie(De,ce){ce||(ce={}),this.type="default",this.status=void 0===ce.status?200:ce.status,this.ok=this.status>=200&&this.status<300,this.statusText="statusText"in ce?ce.statusText:"OK",this.headers=new S(ce.headers),this.url=ce.url||"",this._initBody(De)}H.prototype.clone=function(){return new H(this,{body:this._bodyInit})},ee.call(H.prototype),ee.call(ie.prototype),ie.prototype.clone=function(){return new ie(this._bodyInit,{status:this.status,statusText:this.statusText,headers:new S(this.headers),url:this.url})},ie.error=function(){var De=new ie(null,{status:0,statusText:""});return De.type="error",De};var he=[301,302,303,307,308];ie.redirect=function(De,ce){if(-1===he.indexOf(ce))throw new RangeError("Invalid status code");return new ie(null,{status:ce,headers:{location:De}})},i.DOMException=v.DOMException;try{new i.DOMException}catch(De){i.DOMException=function(ce,lt){this.message=ce,this.name=lt;var Ve=Error(ce);this.stack=Ve.stack},i.DOMException.prototype=Object.create(Error.prototype),i.DOMException.prototype.constructor=i.DOMException}function ge(De,ce){return new Promise(function(lt,Ve){var ze=new H(De,ce);if(ze.signal&&ze.signal.aborted)return Ve(new i.DOMException("Aborted","AbortError"));var Be=new XMLHttpRequest;function Pe(){Be.abort()}Be.onload=function(){var je={status:Be.status,statusText:Be.statusText,headers:Ee(Be.getAllResponseHeaders()||"")};je.url="responseURL"in Be?Be.responseURL:je.headers.get("X-Request-URL"),lt(new ie("response"in Be?Be.response:Be.responseText,je))},Be.onerror=function(){Ve(new TypeError("Network request failed"))},Be.ontimeout=function(){Ve(new TypeError("Network request failed"))},Be.onabort=function(){Ve(new i.DOMException("Aborted","AbortError"))},Be.open(ze.method,ze.url,!0),"include"===ze.credentials?Be.withCredentials=!0:"omit"===ze.credentials&&(Be.withCredentials=!1),"responseType"in Be&&r_blob&&(Be.responseType="blob"),ze.headers.forEach(function(je,He){Be.setRequestHeader(He,je)}),ze.signal&&(ze.signal.addEventListener("abort",Pe),Be.onreadystatechange=function(){4===Be.readyState&&ze.signal.removeEventListener("abort",Pe)}),Be.send(void 0===ze._bodyInit?null:ze._bodyInit)})}ge.polyfill=!0,v.fetch||(v.fetch=ge,v.Headers=S,v.Request=H,v.Response=ie),i.Headers=S,i.Request=H,i.Response=ie,i.fetch=ge,Object.defineProperty(i,"__esModule",{value:!0})}({})},52243:function(v){var T;T="undefined"!=typeof global?global:this,v.exports=function(T){if(T.CSS&&T.CSS.escape)return T.CSS.escape;var i=function(r){if(0==arguments.length)throw new TypeError("`CSS.escape` requires an argument.");for(var e,u=String(r),p=u.length,d=-1,_="",y=u.charCodeAt(0);++d=1&&e<=31||127==e||0==d&&e>=48&&e<=57||1==d&&e>=48&&e<=57&&45==y?"\\"+e.toString(16)+" ":0==d&&1==p&&45==e||!(e>=128||45==e||95==e||e>=48&&e<=57||e>=65&&e<=90||e>=97&&e<=122)?"\\"+u.charAt(d):u.charAt(d):_+="\ufffd";return _};return T.CSS||(T.CSS={}),T.CSS.escape=i,i}(T)},89225:v=>{"use strict";var T=function(ae){return!(!(ue=ae)||"object"!=typeof ue||function(ue){var ae=Object.prototype.toString.call(ue);return"[object RegExp]"===ae||"[object Date]"===ae||function(ue){return ue.$$typeof===p}(ue)}(ae));var ue},p="function"==typeof Symbol&&Symbol.for?Symbol.for("react.element"):60103;function _(ue,ae){return!1!==ae.clone&&ae.isMergeableObject(ue)?K(function(ue){return Array.isArray(ue)?[]:{}}(ue),ue,ae):ue}function y(ue,ae,H){return ue.concat(ae).map(function(se){return _(se,H)})}function N(ue){return Object.keys(ue).concat(function(ue){return Object.getOwnPropertySymbols?Object.getOwnPropertySymbols(ue).filter(function(ae){return ue.propertyIsEnumerable(ae)}):[]}(ue))}function L(ue,ae){try{return ae in ue}catch(H){return!1}}function K(ue,ae,H){(H=H||{}).arrayMerge=H.arrayMerge||y,H.isMergeableObject=H.isMergeableObject||T,H.cloneUnlessOtherwiseSpecified=_;var se=Array.isArray(ae);return se===Array.isArray(ue)?se?H.arrayMerge(ue,ae,H):function(ue,ae,H){var se={};return H.isMergeableObject(ue)&&N(ue).forEach(function(Ee){se[Ee]=_(ue[Ee],H)}),N(ae).forEach(function(Ee){(function(ue,ae){return L(ue,ae)&&!(Object.hasOwnProperty.call(ue,ae)&&Object.propertyIsEnumerable.call(ue,ae))})(ue,Ee)||(se[Ee]=L(ue,Ee)&&H.isMergeableObject(ae[Ee])?function(ue,ae){if(!ae.customMerge)return K;var H=ae.customMerge(ue);return"function"==typeof H?H:K}(Ee,H)(ue[Ee],ae[Ee],H):_(ae[Ee],H))}),se}(ue,ae,H):_(ae,H)}K.all=function(ae,H){if(!Array.isArray(ae))throw new Error("first argument should be an array");return ae.reduce(function(se,Ee){return K(se,Ee,H)},{})},v.exports=K},97057:(v,T,i)=>{"use strict";i.d(T,{qY:()=>Z});var u=function(Ee,ie,he){this.name=Ee,this.version=ie,this.os=he,this.type="browser"},p=function(Ee){this.version=Ee,this.type="node",this.name="node",this.os=process.platform},d=function(Ee,ie,he,ge){this.name=Ee,this.version=ie,this.os=he,this.bot=ge,this.type="bot-device"},e=function(){this.type="bot",this.bot=!0,this.name="bot",this.version=null,this.os=null},_=function(){this.type="react-native",this.name="react-native",this.version=null,this.os=null},S=/(nuhk|Googlebot|Yammybot|Openbot|Slurp|MSNBot|Ask\ Jeeves\/Teoma|ia_archiver)/,N=[["aol",/AOLShield\/([0-9\._]+)/],["edge",/Edge\/([0-9\._]+)/],["edge-ios",/EdgiOS\/([0-9\._]+)/],["yandexbrowser",/YaBrowser\/([0-9\._]+)/],["kakaotalk",/KAKAOTALK\s([0-9\.]+)/],["samsung",/SamsungBrowser\/([0-9\.]+)/],["silk",/\bSilk\/([0-9._-]+)\b/],["miui",/MiuiBrowser\/([0-9\.]+)$/],["beaker",/BeakerBrowser\/([0-9\.]+)/],["edge-chromium",/EdgA?\/([0-9\.]+)/],["chromium-webview",/(?!Chrom.*OPR)wv\).*Chrom(?:e|ium)\/([0-9\.]+)(:?\s|$)/],["chrome",/(?!Chrom.*OPR)Chrom(?:e|ium)\/([0-9\.]+)(:?\s|$)/],["phantomjs",/PhantomJS\/([0-9\.]+)(:?\s|$)/],["crios",/CriOS\/([0-9\.]+)(:?\s|$)/],["firefox",/Firefox\/([0-9\.]+)(?:\s|$)/],["fxios",/FxiOS\/([0-9\.]+)/],["opera-mini",/Opera Mini.*Version\/([0-9\.]+)/],["opera",/Opera\/([0-9\.]+)(?:\s|$)/],["opera",/OPR\/([0-9\.]+)(:?\s|$)/],["ie",/Trident\/7\.0.*rv\:([0-9\.]+).*\).*Gecko$/],["ie",/MSIE\s([0-9\.]+);.*Trident\/[4-7].0/],["ie",/MSIE\s(7\.0)/],["bb10",/BB10;\sTouch.*Version\/([0-9\.]+)/],["android",/Android\s([0-9\.]+)/],["ios",/Version\/([0-9\._]+).*Mobile.*Safari.*/],["safari",/Version\/([0-9\._]+).*Safari/],["facebook",/FBAV\/([0-9\.]+)/],["instagram",/Instagram\s([0-9\.]+)/],["ios-webview",/AppleWebKit\/([0-9\.]+).*Mobile/],["ios-webview",/AppleWebKit\/([0-9\.]+).*Gecko\)$/],["searchbot",/alexa|bot|crawl(er|ing)|facebookexternalhit|feedburner|google web preview|nagios|postrank|pingdom|slurp|spider|yahoo!|yandex/]],L=[["iOS",/iP(hone|od|ad)/],["Android OS",/Android/],["BlackBerry OS",/BlackBerry|BB10/],["Windows Mobile",/IEMobile/],["Amazon OS",/Kindle/],["Windows 3.11",/Win16/],["Windows 95",/(Windows 95)|(Win95)|(Windows_95)/],["Windows 98",/(Windows 98)|(Win98)/],["Windows 2000",/(Windows NT 5.0)|(Windows 2000)/],["Windows XP",/(Windows NT 5.1)|(Windows XP)/],["Windows Server 2003",/(Windows NT 5.2)/],["Windows Vista",/(Windows NT 6.0)/],["Windows 7",/(Windows NT 6.1)/],["Windows 8",/(Windows NT 6.2)/],["Windows 8.1",/(Windows NT 6.3)/],["Windows 10",/(Windows NT 10.0)/],["Windows ME",/Windows ME/],["Open BSD",/OpenBSD/],["Sun OS",/SunOS/],["Chrome OS",/CrOS/],["Linux",/(Linux)|(X11)/],["Mac OS",/(Mac_PowerPC)|(Macintosh)/],["QNX",/QNX/],["BeOS",/BeOS/],["OS/2",/OS\/2/]];function Z(se){return se?ee(se):"undefined"==typeof document&&"undefined"!=typeof navigator&&"ReactNative"===navigator.product?new _:"undefined"!=typeof navigator?ee(navigator.userAgent):"undefined"!=typeof process&&process.version?new p(process.version.slice(1)):null}function ee(se){var Ee=function(se){return""!==se&&N.reduce(function(Ee,ie){var he=ie[0];if(Ee)return Ee;var De=ie[1].exec(se);return!!De&&[he,De]},!1)}(se);if(!Ee)return null;var ie=Ee[0],he=Ee[1];if("searchbot"===ie)return new e;var ge=he[1]&&he[1].split(/[._]/).slice(0,3);ge?ge.length<3&&(ge=function(){for(var se=0,Ee=0,ie=arguments.length;Ee1?$n-1:0),Yr=1;Yr<$n;Yr++)Br[Yr-1]=arguments[Yr];return A(ei,Nn,Br)}}function ge(ei,Nn){r&&r(ei,null);for(var $n=Nn.length;$n--;){var Br=Nn[$n];if("string"==typeof Br){var Yr=K(Br);Yr!==Br&&(u(Nn)||(Nn[$n]=Yr),Br=Yr)}ei[Br]=!0}return ei}function De(ei){var Nn=y(null),$n=void 0;for($n in ei)A(i,ei,[$n])&&(Nn[$n]=ei[$n]);return Nn}function ce(ei,Nn){for(;null!==ei;){var $n=d(ei,Nn);if($n){if($n.get)return ie($n.get);if("function"==typeof $n.value)return ie($n.value)}ei=p(ei)}return function(Yr){return console.warn("fallback value for",Yr),null}}var lt=e(["a","abbr","acronym","address","area","article","aside","audio","b","bdi","bdo","big","blink","blockquote","body","br","button","canvas","caption","center","cite","code","col","colgroup","content","data","datalist","dd","decorator","del","details","dfn","dialog","dir","div","dl","dt","element","em","fieldset","figcaption","figure","font","footer","form","h1","h2","h3","h4","h5","h6","head","header","hgroup","hr","html","i","img","input","ins","kbd","label","legend","li","main","map","mark","marquee","menu","menuitem","meter","nav","nobr","ol","optgroup","option","output","p","picture","pre","progress","q","rp","rt","ruby","s","samp","section","select","shadow","small","source","spacer","span","strike","strong","style","sub","summary","sup","table","tbody","td","template","textarea","tfoot","th","thead","time","tr","track","tt","u","ul","var","video","wbr"]),Ve=e(["svg","a","altglyph","altglyphdef","altglyphitem","animatecolor","animatemotion","animatetransform","circle","clippath","defs","desc","ellipse","filter","font","g","glyph","glyphref","hkern","image","line","lineargradient","marker","mask","metadata","mpath","path","pattern","polygon","polyline","radialgradient","rect","stop","style","switch","symbol","text","textpath","title","tref","tspan","view","vkern"]),ze=e(["feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feDistantLight","feFlood","feFuncA","feFuncB","feFuncG","feFuncR","feGaussianBlur","feMerge","feMergeNode","feMorphology","feOffset","fePointLight","feSpecularLighting","feSpotLight","feTile","feTurbulence"]),Be=e(["animate","color-profile","cursor","discard","fedropshadow","feimage","font-face","font-face-format","font-face-name","font-face-src","font-face-uri","foreignobject","hatch","hatchpath","mesh","meshgradient","meshpatch","meshrow","missing-glyph","script","set","solidcolor","unknown","use"]),Pe=e(["math","menclose","merror","mfenced","mfrac","mglyph","mi","mlabeledtr","mmultiscripts","mn","mo","mover","mpadded","mphantom","mroot","mrow","ms","mspace","msqrt","mstyle","msub","msup","msubsup","mtable","mtd","mtext","mtr","munder","munderover"]),je=e(["maction","maligngroup","malignmark","mlongdiv","mscarries","mscarry","msgroup","mstack","msline","msrow","semantics","annotation","annotation-xml","mprescripts","none"]),He=e(["#text"]),Vt=e(["accept","action","align","alt","autocapitalize","autocomplete","autopictureinpicture","autoplay","background","bgcolor","border","capture","cellpadding","cellspacing","checked","cite","class","clear","color","cols","colspan","controls","controlslist","coords","crossorigin","datetime","decoding","default","dir","disabled","disablepictureinpicture","disableremoteplayback","download","draggable","enctype","enterkeyhint","face","for","headers","height","hidden","high","href","hreflang","id","inputmode","integrity","ismap","kind","label","lang","list","loading","loop","low","max","maxlength","media","method","min","minlength","multiple","muted","name","noshade","novalidate","nowrap","open","optimum","pattern","placeholder","playsinline","poster","preload","pubdate","radiogroup","readonly","rel","required","rev","reversed","role","rows","rowspan","spellcheck","scope","selected","shape","size","sizes","span","srclang","start","src","srcset","step","style","summary","tabindex","title","translate","type","usemap","valign","value","width","xmlns","slot"]),it=e(["accent-height","accumulate","additive","alignment-baseline","ascent","attributename","attributetype","azimuth","basefrequency","baseline-shift","begin","bias","by","class","clip","clippathunits","clip-path","clip-rule","color","color-interpolation","color-interpolation-filters","color-profile","color-rendering","cx","cy","d","dx","dy","diffuseconstant","direction","display","divisor","dur","edgemode","elevation","end","fill","fill-opacity","fill-rule","filter","filterunits","flood-color","flood-opacity","font-family","font-size","font-size-adjust","font-stretch","font-style","font-variant","font-weight","fx","fy","g1","g2","glyph-name","glyphref","gradientunits","gradienttransform","height","href","id","image-rendering","in","in2","k","k1","k2","k3","k4","kerning","keypoints","keysplines","keytimes","lang","lengthadjust","letter-spacing","kernelmatrix","kernelunitlength","lighting-color","local","marker-end","marker-mid","marker-start","markerheight","markerunits","markerwidth","maskcontentunits","maskunits","max","mask","media","method","mode","min","name","numoctaves","offset","operator","opacity","order","orient","orientation","origin","overflow","paint-order","path","pathlength","patterncontentunits","patterntransform","patternunits","points","preservealpha","preserveaspectratio","primitiveunits","r","rx","ry","radius","refx","refy","repeatcount","repeatdur","restart","result","rotate","scale","seed","shape-rendering","specularconstant","specularexponent","spreadmethod","startoffset","stddeviation","stitchtiles","stop-color","stop-opacity","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke","stroke-width","style","surfacescale","systemlanguage","tabindex","targetx","targety","transform","text-anchor","text-decoration","text-rendering","textlength","type","u1","u2","unicode","values","viewbox","visibility","version","vert-adv-y","vert-origin-x","vert-origin-y","width","word-spacing","wrap","writing-mode","xchannelselector","ychannelselector","x","x1","x2","xmlns","y","y1","y2","z","zoomandpan"]),tn=e(["accent","accentunder","align","bevelled","close","columnsalign","columnlines","columnspan","denomalign","depth","dir","display","displaystyle","encoding","fence","frame","height","href","id","largeop","length","linethickness","lspace","lquote","mathbackground","mathcolor","mathsize","mathvariant","maxsize","minsize","movablelimits","notation","numalign","open","rowalign","rowlines","rowspacing","rowspan","rspace","rquote","scriptlevel","scriptminsize","scriptsizemultiplier","selection","separator","separators","stretchy","subscriptshift","supscriptshift","symmetric","voffset","width","xmlns"]),It=e(["xlink:href","xml:id","xlink:title","xml:space","xmlns:xlink"]),Zt=_(/\{\{[\s\S]*|[\s\S]*\}\}/gm),Ut=_(/<%[\s\S]*|[\s\S]*%>/gm),Bt=_(/^data-[\-\w.\u00B7-\uFFFF]/),bt=_(/^aria-[\-\w]+$/),Gt=_(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|cid|xmpp):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),xt=_(/^(?:\w+script|data):/i),Xt=_(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),Zn="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(ei){return typeof ei}:function(ei){return ei&&"function"==typeof Symbol&&ei.constructor===Symbol&&ei!==Symbol.prototype?"symbol":typeof ei};function Ur(ei){if(Array.isArray(ei)){for(var Nn=0,$n=Array(ei.length);Nn0&&void 0!==arguments[0]?arguments[0]:di(),Nn=function($r){return Mr($r)};if(Nn.version="2.3.3",Nn.removed=[],!ei||!ei.document||9!==ei.document.nodeType)return Nn.isSupported=!1,Nn;var $n=ei.document,Br=ei.document,Yr=ei.DocumentFragment,fi=ei.HTMLTemplateElement,ki=ei.Node,Hi=ei.Element,Zr=ei.NodeFilter,Cn=ei.NamedNodeMap,Wt=void 0===Cn?ei.NamedNodeMap||ei.MozNamedAttrMap:Cn,zn=ei.Text,rr=ei.Comment,Fr=ei.DOMParser,Gn=ei.trustedTypes,Jr=Hi.prototype,_i=ce(Jr,"cloneNode"),wi=ce(Jr,"nextSibling"),br=ce(Jr,"childNodes"),Dr=ce(Jr,"parentNode");if("function"==typeof fi){var gn=Br.createElement("template");gn.content&&gn.content.ownerDocument&&(Br=gn.content.ownerDocument)}var yn=Lr(Gn,$n),gr=yn&&uo?yn.createHTML(""):"",Vn=Br.implementation,mr=Br.createNodeIterator,Dn=Br.createDocumentFragment,Pr=Br.getElementsByTagName,Yt=$n.importNode,_n={};try{_n=De(Br).documentMode?Br.documentMode:{}}catch(So){}var Ge={};Nn.isSupported="function"==typeof Dr&&Vn&&void 0!==Vn.createHTMLDocument&&9!==_n;var kr=Zt,mi=Ut,An=Bt,Er=bt,Wr=xt,dr=Xt,Fn=Gt,ar=null,Wi=ge({},[].concat(Ur(lt),Ur(Ve),Ur(ze),Ur(Pe),Ur(He))),lo=null,vo=ge({},[].concat(Ur(Vt),Ur(it),Ur(tn),Ur(It))),Co=null,Gi=null,os=!0,jo=!0,To=!1,Mi=!1,li=!1,Bn=!1,lr=!1,vr=!1,er=!1,ri=!0,uo=!1,Ci=!0,$o=!0,tr=!1,Ar={},Rt=null,_t=ge({},["annotation-xml","audio","colgroup","desc","foreignobject","head","iframe","math","mi","mn","mo","ms","mtext","noembed","noframes","noscript","plaintext","script","style","svg","template","thead","title","video","xmp"]),mt=null,jt=ge({},["audio","video","img","source","image","track"]),on=null,si=ge({},["alt","class","for","id","label","name","pattern","placeholder","role","summary","title","value","style","xmlns"]),Vi="http://www.w3.org/1998/Math/MathML",_o="http://www.w3.org/2000/svg",co="http://www.w3.org/1999/xhtml",Es=co,Zs=!1,ls=void 0,La=["application/xhtml+xml","text/html"],ta="text/html",Is=void 0,us=null,ya=Br.createElement("form"),el=function($r){us&&us===$r||((!$r||"object"!==(void 0===$r?"undefined":Zn($r)))&&($r={}),$r=De($r),ar="ALLOWED_TAGS"in $r?ge({},$r.ALLOWED_TAGS):Wi,lo="ALLOWED_ATTR"in $r?ge({},$r.ALLOWED_ATTR):vo,on="ADD_URI_SAFE_ATTR"in $r?ge(De(si),$r.ADD_URI_SAFE_ATTR):si,mt="ADD_DATA_URI_TAGS"in $r?ge(De(jt),$r.ADD_DATA_URI_TAGS):jt,Rt="FORBID_CONTENTS"in $r?ge({},$r.FORBID_CONTENTS):_t,Co="FORBID_TAGS"in $r?ge({},$r.FORBID_TAGS):{},Gi="FORBID_ATTR"in $r?ge({},$r.FORBID_ATTR):{},Ar="USE_PROFILES"in $r&&$r.USE_PROFILES,os=!1!==$r.ALLOW_ARIA_ATTR,jo=!1!==$r.ALLOW_DATA_ATTR,To=$r.ALLOW_UNKNOWN_PROTOCOLS||!1,Mi=$r.SAFE_FOR_TEMPLATES||!1,li=$r.WHOLE_DOCUMENT||!1,vr=$r.RETURN_DOM||!1,er=$r.RETURN_DOM_FRAGMENT||!1,ri=!1!==$r.RETURN_DOM_IMPORT,uo=$r.RETURN_TRUSTED_TYPE||!1,lr=$r.FORCE_BODY||!1,Ci=!1!==$r.SANITIZE_DOM,$o=!1!==$r.KEEP_CONTENT,tr=$r.IN_PLACE||!1,Fn=$r.ALLOWED_URI_REGEXP||Fn,Es=$r.NAMESPACE||co,ls=ls=-1===La.indexOf($r.PARSER_MEDIA_TYPE)?ta:$r.PARSER_MEDIA_TYPE,Is="application/xhtml+xml"===ls?function(to){return to}:K,Mi&&(jo=!1),er&&(vr=!0),Ar&&(ar=ge({},[].concat(Ur(He))),lo=[],!0===Ar.html&&(ge(ar,lt),ge(lo,Vt)),!0===Ar.svg&&(ge(ar,Ve),ge(lo,it),ge(lo,It)),!0===Ar.svgFilters&&(ge(ar,ze),ge(lo,it),ge(lo,It)),!0===Ar.mathMl&&(ge(ar,Pe),ge(lo,tn),ge(lo,It))),$r.ADD_TAGS&&(ar===Wi&&(ar=De(ar)),ge(ar,$r.ADD_TAGS)),$r.ADD_ATTR&&(lo===vo&&(lo=De(lo)),ge(lo,$r.ADD_ATTR)),$r.ADD_URI_SAFE_ATTR&&ge(on,$r.ADD_URI_SAFE_ATTR),$r.FORBID_CONTENTS&&(Rt===_t&&(Rt=De(Rt)),ge(Rt,$r.FORBID_CONTENTS)),$o&&(ar["#text"]=!0),li&&ge(ar,["html","head","body"]),ar.table&&(ge(ar,["tbody"]),delete Co.tbody),e&&e($r),us=$r)},ca=ge({},["mi","mo","mn","ms","mtext"]),$s=ge({},["foreignobject","desc","title","annotation-xml"]),da=ge({},Ve);ge(da,ze),ge(da,Be);var Il=ge({},Pe);ge(Il,je);var fo=function($r){var to=Dr($r);(!to||!to.tagName)&&(to={namespaceURI:co,tagName:"template"});var tt=K($r.tagName),sn=K(to.tagName);if($r.namespaceURI===_o)return to.namespaceURI===co?"svg"===tt:to.namespaceURI===Vi?"svg"===tt&&("annotation-xml"===sn||ca[sn]):Boolean(da[tt]);if($r.namespaceURI===Vi)return to.namespaceURI===co?"math"===tt:to.namespaceURI===_o?"math"===tt&&$s[sn]:Boolean(Il[tt]);if($r.namespaceURI===co){if(to.namespaceURI===_o&&!$s[sn]||to.namespaceURI===Vi&&!ca[sn])return!1;var ne=ge({},["title","style","font","a","script"]);return!Il[tt]&&(ne[tt]||!da[tt])}return!1},Ya=function($r){J(Nn.removed,{element:$r});try{$r.parentNode.removeChild($r)}catch(to){try{$r.outerHTML=gr}catch(tt){$r.remove()}}},Ao=function($r,to){try{J(Nn.removed,{attribute:to.getAttributeNode($r),from:to})}catch(tt){J(Nn.removed,{attribute:null,from:to})}if(to.removeAttribute($r),"is"===$r&&!lo[$r])if(vr||er)try{Ya(to)}catch(tt){}else try{to.setAttribute($r,"")}catch(tt){}},fs=function($r){var to=void 0,tt=void 0;if(lr)$r=""+$r;else{var sn=ee($r,/^[\r\n\t ]+/);tt=sn&&sn[0]}"application/xhtml+xml"===ls&&($r=''+$r+"");var ne=yn?yn.createHTML($r):$r;if(Es===co)try{to=(new Fr).parseFromString(ne,ls)}catch(Lt){}if(!to||!to.documentElement){to=Vn.createDocument(Es,"template",null);try{to.documentElement.innerHTML=Zs?"":ne}catch(Lt){}}var $e=to.body||to.documentElement;return $r&&tt&&$e.insertBefore(Br.createTextNode(tt),$e.childNodes[0]||null),Es===co?Pr.call(to,li?"html":"body")[0]:li?to.documentElement:$e},Ca=function($r){return mr.call($r.ownerDocument||$r,$r,Zr.SHOW_ELEMENT|Zr.SHOW_COMMENT|Zr.SHOW_TEXT,null,!1)},Ra=function($r){return!($r instanceof zn||$r instanceof rr||"string"==typeof $r.nodeName&&"string"==typeof $r.textContent&&"function"==typeof $r.removeChild&&$r.attributes instanceof Wt&&"function"==typeof $r.removeAttribute&&"function"==typeof $r.setAttribute&&"string"==typeof $r.namespaceURI&&"function"==typeof $r.insertBefore)},pl=function($r){return"object"===(void 0===ki?"undefined":Zn(ki))?$r instanceof ki:$r&&"object"===(void 0===$r?"undefined":Zn($r))&&"number"==typeof $r.nodeType&&"string"==typeof $r.nodeName},Ws=function($r,to,tt){!Ge[$r]||L(Ge[$r],function(sn){sn.call(Nn,to,tt,us)})},Po=function($r){var to=void 0;if(Ws("beforeSanitizeElements",$r,null),Ra($r)||ee($r.nodeName,/[\u0080-\uFFFF]/))return Ya($r),!0;var tt=Is($r.nodeName);if(Ws("uponSanitizeElement",$r,{tagName:tt,allowedTags:ar}),!pl($r.firstElementChild)&&(!pl($r.content)||!pl($r.content.firstElementChild))&&se(/<[/\w]/g,$r.innerHTML)&&se(/<[/\w]/g,$r.textContent)||"select"===tt&&se(/