From e6918187568dbd01842d8d1d2c808ce16a894239 Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Sun, 21 Apr 2024 13:54:28 +0200 Subject: Adding upstream version 18.2.2. Signed-off-by: Daniel Baumann --- .../frontend/dist/en-US/119.066087561586659c.js | 1 + .../frontend/dist/en-US/25.9d84971ea743706b.js | 1 + .../frontend/dist/en-US/3rdpartylicenses.txt | 3545 ++++++++++++++++++++ .../frontend/dist/en-US/803.08339784f3bb5d16.js | 1 + .../dist/en-US/Ceph_Logo.beb815b55d2e7363.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.3fbdf95cd52530d7.gif | Bin 0 -> 98115 bytes .../mgr/dashboard/frontend/dist/en-US/favicon.ico | Bin 0 -> 1150 bytes .../forkawesome-webfont.23671bdbd055fa7b.woff | Bin 0 -> 115148 bytes .../en-US/forkawesome-webfont.3217b1b06e001045.svg | 2849 ++++++++++++++++ .../en-US/forkawesome-webfont.3b3951dce6cf5d60.ttf | Bin 0 -> 188756 bytes .../en-US/forkawesome-webfont.c0fee260bb6fd5fd.eot | Bin 0 -> 188946 bytes .../forkawesome-webfont.d0a4ad9e6369d510.woff2 | Bin 0 -> 91624 bytes .../mgr/dashboard/frontend/dist/en-US/index.html | 23 + .../frontend/dist/en-US/main.a87f559bb03ca0fb.js | 3 + .../dist/en-US/polyfills.374f1f989f34e1be.js | 1 + .../en-US/prometheus_logo.8057911d27be9bb1.svg | 50 + .../dist/en-US/runtime.a53144ca583f6e2c.js | 1 + .../dist/en-US/scripts.177a7ad3f45b4499.js | 1 + .../dist/en-US/styles.5f6140b407c420b8.css | 17 + 26 files changed, 6823 insertions(+) create mode 100644 src/pybind/mgr/dashboard/frontend/dist/en-US/119.066087561586659c.js create mode 100644 src/pybind/mgr/dashboard/frontend/dist/en-US/25.9d84971ea743706b.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/803.08339784f3bb5d16.js create mode 100644 src/pybind/mgr/dashboard/frontend/dist/en-US/Ceph_Logo.beb815b55d2e7363.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.3fbdf95cd52530d7.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.23671bdbd055fa7b.woff create mode 100644 src/pybind/mgr/dashboard/frontend/dist/en-US/forkawesome-webfont.3217b1b06e001045.svg create mode 100644 src/pybind/mgr/dashboard/frontend/dist/en-US/forkawesome-webfont.3b3951dce6cf5d60.ttf create mode 100644 src/pybind/mgr/dashboard/frontend/dist/en-US/forkawesome-webfont.c0fee260bb6fd5fd.eot create mode 100644 src/pybind/mgr/dashboard/frontend/dist/en-US/forkawesome-webfont.d0a4ad9e6369d510.woff2 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.a87f559bb03ca0fb.js create mode 100644 src/pybind/mgr/dashboard/frontend/dist/en-US/polyfills.374f1f989f34e1be.js create mode 100644 src/pybind/mgr/dashboard/frontend/dist/en-US/prometheus_logo.8057911d27be9bb1.svg create mode 100644 src/pybind/mgr/dashboard/frontend/dist/en-US/runtime.a53144ca583f6e2c.js create mode 100644 src/pybind/mgr/dashboard/frontend/dist/en-US/scripts.177a7ad3f45b4499.js create mode 100644 src/pybind/mgr/dashboard/frontend/dist/en-US/styles.5f6140b407c420b8.css (limited to 'src/pybind/mgr/dashboard/frontend/dist/en-US') diff --git a/src/pybind/mgr/dashboard/frontend/dist/en-US/119.066087561586659c.js b/src/pybind/mgr/dashboard/frontend/dist/en-US/119.066087561586659c.js new file mode 100644 index 000000000..6ff8073c1 --- /dev/null +++ b/src/pybind/mgr/dashboard/frontend/dist/en-US/119.066087561586659c.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkceph_dashboard=self.webpackChunkceph_dashboard||[]).push([[119],{22119:(xn,Ae,r)=>{r.r(Ae),r.d(Ae,{PoolModule:()=>qe,RoutedPoolModule:()=>Dn});var C=r(88692),l=r(20092),Oe=r(54247),f=r(51389),M=r(79512),f_=r(44466),E_=r(39025),g_=r(370),p_=r(23815),g=r.n(p_),R_=r(7357),m_=r(26504),ue=r(80842);class T{constructor(){this.nodes=[],this.idTree={},this.allDevices=[],this.buckets=[],this.failureDomains={},this.failureDomainKeys=[],this.devices=[],this.deviceCount=0}static searchFailureDomains(n,_){return this.getFailureDomains(this.search(n,_))}static search(n,_){const[o,i]=_.split("~"),s=n.find(c=>["name","id","type"].some(d=>c[d]===o));return s?(n=this.getSubNodes(s,this.createIdTreeFromNodes(n)),i&&(n=this.filterNodesByDeviceType(n,i)),n):[]}static createIdTreeFromNodes(n){const _={};return n.forEach(o=>{_[o.id]=o}),_}static getSubNodes(n,_){let o=[n];return n.children&&n.children.forEach(i=>{o=o.concat(this.getSubNodes(_[i],_))}),o}static filterNodesByDeviceType(n,_){let i,o=n.filter(c=>c.device_class&&c.device_class!==_).map(c=>c.id),s=o;do{i=!1,n=n.filter(d=>!o.includes(d.id));const c=[];n.forEach(d=>{d.children&&d.children.every(P=>o.includes(P))&&(c.push(d.id),i=!0)}),i&&(o=c,s=s.concat(c))}while(i);return(n=g().cloneDeep(n)).map(c=>(c.children&&(c.children=c.children.filter(d=>!s.includes(d))),c))}static getFailureDomains(n){const _={};return n.forEach(o=>{const i=o.type;_[i]||(_[i]=[]),_[i].push(o)}),_}initCrushNodeSelection(n,_,o,i){this.nodes=n,this.idTree=T.createIdTreeFromNodes(n),n.forEach(s=>{this.idTree[s.id]=s}),this.buckets=g().sortBy(n.filter(s=>s.children),"name"),this.controls={root:_,failure:o,device:i},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 n=this.nodes.find(_=>"root"===_.type);this.silentSet(this.controls.root,n),this.onRootChange()}silentSet(n,_){n.setValue(_,{emitEvent:!1})}onRootChange(){const n=T.getSubNodes(this.controls.root.value,this.idTree),_=T.getFailureDomains(n);Object.keys(_).forEach(o=>{_[o].length<=1&&delete _[o]}),this.failureDomains=_,this.failureDomainKeys=Object.keys(_).sort(),this.updateFailureDomain()}updateFailureDomain(){let n=this.getIncludedCustomValue(this.controls.failure,Object.keys(this.failureDomains));""===n&&(n=this.setMostCommonDomain(this.controls.failure)),this.updateDevices(n)}getIncludedCustomValue(n,_){return n.dirty&&_.includes(n.value)?n.value:""}setMostCommonDomain(n){let _={n:0,type:""};return Object.keys(this.failureDomains).forEach(o=>{const i=this.failureDomains[o].length;_.nT.getSubNodes(i,this.idTree)));this.allDevices=_.filter(i=>i.device_class).map(i=>i.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(n=this.controls.device.value){this.deviceCount=""===n?this.allDevices.length:this.allDevices.filter(_=>_===n).length}}var Fe=r(30982),C_=r(14745),b=r(65862),M_=r(93614),Ne=r(95463),E=r(90070),h_=r(30633),v=r(76111),S_=r(47557),T_=r(28211),de=r(32337),e=r(64537),be=r(62862),ve=r(83608),Pe=r(18372),$e=r(60312),fe=r(30839),Ee=r(82945),ge=r(87925),pe=r(94276),Re=r(56310),me=r(41582),Ce=r(10545);function L_(t,n){1&t&&(e.TgZ(0,"span",30),e.SDv(1,31),e.qZA())}function A_(t,n){1&t&&(e.TgZ(0,"span",30),e.SDv(1,32),e.qZA())}function F_(t,n){1&t&&(e.TgZ(0,"span",30),e.SDv(1,33),e.qZA())}function N_(t,n){1&t&&(e.TgZ(0,"option",26),e.SDv(1,34),e.qZA())}function b_(t,n){if(1&t&&(e.TgZ(0,"option",35),e._uU(1),e.qZA()),2&t){const _=n.$implicit;e.Q6J("ngValue",_),e.xp6(1),e.hij(" ",_.name," ")}}function v_(t,n){1&t&&(e.TgZ(0,"span",30),e.SDv(1,36),e.qZA())}function $_(t,n){1&t&&(e.TgZ(0,"option",26),e.SDv(1,37),e.qZA())}function I_(t,n){if(1&t&&(e.TgZ(0,"option",35),e._uU(1),e.qZA()),2&t){const _=n.$implicit,o=e.oxw();e.Q6J("ngValue",_),e.xp6(1),e.AsE(" ",_," ( ",o.failureDomains[_].length," ) ")}}function D_(t,n){1&t&&(e.TgZ(0,"span",30),e.SDv(1,38),e.qZA())}function x_(t,n){if(1&t&&(e.TgZ(0,"option",35),e._uU(1),e.qZA()),2&t){const _=n.$implicit;e.Q6J("ngValue",_),e.xp6(1),e.hij(" ",_," ")}}let y_=(()=>{class t extends T{constructor(_,o,i,s,c){super(),this.formBuilder=_,this.activeModal=o,this.taskWrapper=i,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:["",[l.kI.required,l.kI.pattern("[A-Za-z0-9_-]+"),E.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 v.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(f.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 n,_,o,i,s,c,d,P,p,R,h,S,m;return n="" + "\ufffd0\ufffd" + " " + "\ufffd1\ufffd" + "",_="Name",o="Root",i="Failure domain type",s="Device class",c="Let Ceph decide",d="This field is required!",P="The name can only consist of alphanumeric characters, dashes and underscores.",p="The chosen erasure code profile name is already in use.",R="Loading...",h="This field is required!",S="Loading...",m="This field is required!",[[3,"modalRef"],[1,"modal-title"],n,[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-select"],["ngValue","",4,"ngIf"],[3,"ngValue",4,"ngFor","ngForOf"],["for","failure_domain",1,"cd-col-form-label"],i,["id","failure_domain","name","failure_domain","formControlName","failure_domain",1,"form-select"],["for","device_class",1,"cd-col-form-label"],s,["id","device_class","name","device_class","formControlName","device_class",1,"form-select"],["ngValue",""],c,[1,"modal-footer"],[3,"form","submitText","submitActionEvent"],[1,"invalid-feedback"],d,P,p,R,[3,"ngValue"],h,S,m]},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)(8,"div",6)(9,"div",7)(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,L_,2,0,"span",13),e.YNc(17,A_,2,0,"span",13),e.YNc(18,F_,2,0,"span",13),e.qZA()(),e.TgZ(19,"div",7)(20,"label",14),e.ynx(21),e.SDv(22,15),e.BQk(),e._UZ(23,"cd-helper",16)(24,"span",10),e.qZA(),e.TgZ(25,"div",11)(26,"select",17),e.YNc(27,N_,2,0,"option",18),e.YNc(28,b_,2,2,"option",19),e.qZA(),e.YNc(29,v_,2,0,"span",13),e.qZA()(),e.TgZ(30,"div",7)(31,"label",20),e.ynx(32),e.SDv(33,21),e.BQk(),e._UZ(34,"cd-helper",16)(35,"span",10),e.qZA(),e.TgZ(36,"div",11)(37,"select",22),e.YNc(38,$_,2,0,"option",18),e.YNc(39,I_,2,3,"option",19),e.qZA(),e.YNc(40,D_,2,0,"span",13),e.qZA()(),e.TgZ(41,"div",7)(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)(47,"select",25)(48,"option",26),e.SDv(49,27),e.qZA(),e.YNc(50,x_,2,2,"option",19),e.qZA()()()(),e.TgZ(51,"div",28)(52,"cd-form-button-panel",29),e.NdJ("submitActionEvent",function(){return o.onSubmit()}),e.ALo(53,"titlecase"),e.ALo(54,"upperFirst"),e.qZA()()(),e.BQk(),e.qZA()),2&_){const i=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",i,"required")),e.xp6(1),e.Q6J("ngIf",o.form.showError("name",i,"pattern")),e.xp6(1),e.Q6J("ngIf",o.form.showError("name",i,"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",i,"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",i,"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))}},dependencies:[C.sg,C.O5,Pe.S,$e.z,fe.p,Ee.U,ge.o,pe.b,Re.P,me.V,l._Y,l.YN,l.Kr,l.Fj,l.EJ,l.JJ,l.JL,l.sg,l.u,C.rS,Ce.m]}),t})();class Z_{}var U_=r(35732);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(U_.eN))},t.\u0275prov=e.Yz7({token:t,factory:t.\u0275fac,providedIn:"root"}),t})();function G_(t,n){1&t&&(e.TgZ(0,"span",46),e.SDv(1,47),e.qZA())}function H_(t,n){1&t&&(e.TgZ(0,"span",46),e.SDv(1,48),e.qZA())}function z_(t,n){1&t&&(e.TgZ(0,"span",46),e.SDv(1,49),e.qZA())}function q_(t,n){1&t&&(e.TgZ(0,"option",37),e.SDv(1,50),e.qZA())}function X_(t,n){if(1&t&&(e.TgZ(0,"option",51),e._uU(1),e.qZA()),2&t){const _=n.$implicit;e.Q6J("ngValue",_),e.xp6(1),e.hij(" ",_," ")}}function Q_(t,n){1&t&&(e.TgZ(0,"span",46),e.SDv(1,52),e.qZA())}function w_(t,n){1&t&&(e.TgZ(0,"span",46),e.SDv(1,53),e.qZA())}function J_(t,n){1&t&&(e.TgZ(0,"span",46),e.SDv(1,54),e.qZA())}function k_(t,n){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 V_(t,n){1&t&&(e.TgZ(0,"span",46),e.SDv(1,56),e.qZA())}function Y_(t,n){1&t&&(e.TgZ(0,"span",46),e.SDv(1,57),e.qZA())}function B_(t,n){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 j_(t,n){1&t&&(e.TgZ(0,"span",46),e.SDv(1,59),e.qZA())}function K_(t,n){1&t&&(e.TgZ(0,"span",46),e.SDv(1,60),e.qZA())}function W_(t,n){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 eo(t,n){1&t&&(e.TgZ(0,"span",46),e.SDv(1,65),e.qZA())}function _o(t,n){1&t&&(e.TgZ(0,"span",46),e.SDv(1,66),e.qZA())}function oo(t,n){if(1&t&&(e.TgZ(0,"div",7)(1,"label",62)(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,eo,2,0,"span",12),e.YNc(8,_o,2,0,"span",12),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 to(t,n){1&t&&(e.TgZ(0,"span",39),e.SDv(1,74),e.qZA())}function no(t,n){if(1&t&&(e.TgZ(0,"span",39),e.SDv(1,75),e.qZA()),2&t){const _=e.oxw(3);e.xp6(1),e.pQV(_.getDMin())(_.getDMax()),e.QtT(1)}}function io(t,n){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(_.getDMax()),e.QtT(1)}}function so(t,n){if(1&t&&(e.ynx(0),e.YNc(1,no,2,2,"span",23),e.YNc(2,io,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 ao(t,n){if(1&t&&(e.TgZ(0,"span",46),e.SDv(1,77),e.qZA()),2&t){const _=e.oxw(2);e.xp6(1),e.pQV(_.getDMin()),e.QtT(1)}}function lo(t,n){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(_.getDMax()),e.QtT(1)}}function ro(t,n){if(1&t){const _=e.EpF();e.TgZ(0,"div",7)(1,"label",67)(2,"span",14),e.SDv(3,68),e.qZA(),e._UZ(4,"cd-helper",16),e.qZA(),e.TgZ(5,"div",10)(6,"div",69),e._UZ(7,"input",70),e.TgZ(8,"button",71),e.NdJ("click",function(){e.CHM(_);const i=e.oxw();return e.KtG(i.toggleDCalc())}),e._UZ(9,"i",72),e.qZA()(),e.YNc(10,to,2,0,"span",23),e.YNc(11,so,3,2,"ng-container",73),e.YNc(12,ao,2,1,"span",12),e.YNc(13,lo,2,1,"span",12),e.qZA()()}if(2&t){const _=e.oxw(),o=e.MAs(7);e.xp6(4),e.Q6J("html",_.tooltips.plugins.clay.d),e.xp6(5),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 co(t,n){1&t&&(e.TgZ(0,"span",46),e.SDv(1,83),e.qZA())}function Oo(t,n){1&t&&(e.TgZ(0,"span",46),e.SDv(1,84),e.qZA())}function uo(t,n){1&t&&(e.TgZ(0,"span",46),e.SDv(1,85),e.qZA())}function Po(t,n){if(1&t&&(e.TgZ(0,"div",7)(1,"label",79)(2,"span",14),e.SDv(3,80),e.qZA(),e._UZ(4,"cd-helper",16),e.qZA(),e.TgZ(5,"div",10),e._UZ(6,"input",81),e.YNc(7,co,2,0,"span",12),e.YNc(8,Oo,2,0,"span",12),e.YNc(9,uo,2,0,"span",12),e.TgZ(10,"span",39),e.SDv(11,82),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 fo(t,n){1&t&&(e.TgZ(0,"option",37),e.SDv(1,86),e.qZA())}function Eo(t,n){if(1&t&&(e.TgZ(0,"option",51),e._uU(1),e.qZA()),2&t){const _=n.$implicit,o=e.oxw();e.Q6J("ngValue",_),e.xp6(1),e.AsE(" ",_," ( ",o.failureDomains[_].length," ) ")}}function go(t,n){1&t&&(e.TgZ(0,"option",37),e.SDv(1,90),e.qZA())}function po(t,n){1&t&&(e.TgZ(0,"option",37),e.SDv(1,91),e.qZA())}function Ro(t,n){if(1&t&&(e.TgZ(0,"option",51),e._uU(1),e.qZA()),2&t){const _=n.$implicit,o=e.oxw(2);e.Q6J("ngValue",_),e.xp6(1),e.AsE(" ",_," ( ",o.failureDomains[_].length," ) ")}}function mo(t,n){if(1&t&&(e.TgZ(0,"div",7)(1,"label",87),e.ynx(2),e.SDv(3,88),e.BQk(),e._UZ(4,"cd-helper",16),e.qZA(),e.TgZ(5,"div",10)(6,"select",89),e.YNc(7,go,2,0,"option",18),e.YNc(8,po,2,0,"option",18),e.YNc(9,Ro,2,3,"option",19),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 Co(t,n){if(1&t&&(e.TgZ(0,"option",51),e._uU(1),e.qZA()),2&t){const _=n.$implicit;e.Q6J("ngValue",_),e.xp6(1),e.hij(" ",_," ")}}const Ie=function(t,n,_){return[t,n,_]};function Mo(t,n){if(1&t&&(e.TgZ(0,"div",7)(1,"label",92),e.ynx(2),e.SDv(3,93),e.BQk(),e._UZ(4,"cd-helper",16),e.qZA(),e.TgZ(5,"div",10)(6,"select",94),e.YNc(7,Co,2,2,"option",19),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,Ie,_.PLUGIN.JERASURE,_.PLUGIN.ISA,_.PLUGIN.SHEC))}}function ho(t,n){if(1&t&&(e.TgZ(0,"option",51),e._uU(1),e.qZA()),2&t){const _=n.$implicit;e.Q6J("ngValue",_),e.xp6(1),e.hij(" ",_," ")}}function So(t,n){if(1&t&&(e.TgZ(0,"div",7)(1,"label",95),e.ynx(2),e.SDv(3,96),e.BQk(),e._UZ(4,"cd-helper",16),e.qZA(),e.TgZ(5,"div",10)(6,"select",97),e.YNc(7,ho,2,2,"option",19),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 To(t,n){1&t&&(e.TgZ(0,"span",46),e.SDv(1,101),e.qZA())}function Lo(t,n){if(1&t&&(e.TgZ(0,"div",7)(1,"label",98),e.ynx(2),e.SDv(3,99),e.BQk(),e._UZ(4,"cd-helper",16),e.qZA(),e.TgZ(5,"div",10),e._UZ(6,"input",100),e.YNc(7,To,2,0,"span",12),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 Ao(t,n){1&t&&(e.TgZ(0,"option",37),e.SDv(1,102),e.qZA())}function Fo(t,n){if(1&t&&(e.TgZ(0,"option",51),e._uU(1),e.qZA()),2&t){const _=n.$implicit;e.Q6J("ngValue",_),e.xp6(1),e.hij(" ",_.name," ")}}function No(t,n){if(1&t&&(e.TgZ(0,"option",51),e._uU(1),e.qZA()),2&t){const _=n.$implicit;e.Q6J("ngValue",_),e.xp6(1),e.hij(" ",_," ")}}let bo=(()=>{class t extends T{constructor(_,o,i,s,c){super(),this.formBuilder=_,this.activeModal=o,this.taskWrapper=i,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=b.P,this.action=this.actionLabels.CREATE,this.resource="EC Profile",this.createForm(),this.setJerasureDefaults()}createForm(){this.form=this.formBuilder.group({name:[null,[l.kI.required,l.kI.pattern("[A-Za-z0-9_-]+"),E.h.custom("uniqueName",_=>this.names&&-1!==this.names.indexOf(_))]],plugin:[this.PLUGIN.JERASURE,[l.kI.required]],k:[4,[l.kI.required,E.h.custom("max",()=>this.baseValueValidation(!0)),E.h.custom("unequal",_=>this.lrcDataValidation(_)),E.h.custom("kLowerM",_=>this.shecDataValidation(_))]],m:[2,[l.kI.required,E.h.custom("max",()=>this.baseValueValidation())]],crushFailureDomain:"",crushRoot:null,crushDeviceClass:"",directory:"",technique:"reed_sol_van",packetSize:[2048],l:[3,[l.kI.required,E.h.custom("unequal",_=>this.lrcLocalityValidation(_))]],crushLocality:"",c:[2,[l.kI.required,E.h.custom("cGreaterM",_=>this.shecDurabilityValidation(_))]],d:[5,[l.kI.required,E.h.custom("dMin",_=>this.dMinValidation(_)),E.h.custom("dMax",_=>this.dMaxValidation(_))]],scalar_mds:[this.PLUGIN.JERASURE,[l.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"),i=this.form.getValue("l"),s=_+o;return this.lrcMultiK=_/(s/i),_%(s/i)!=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 i=this.form.get(o),s=i.value;i.pristine||"technique"===o&&!this.techniques.includes(s)||"k"===o&&[4,7].includes(s)||"m"===o&&[2,3].includes(s)?i.setValue(_[o]):i.updateValueAndValidity()})}ngOnInit(){this.ecpService.getInfo().subscribe(({plugins:_,names:o,directory:i,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",i),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 v.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 Z_,i=this.form.getValue("plugin");return Object.keys(this.form.controls).filter(s=>{const c=_[s],d=this.form.getValue(s);return(c&&c.includes(i)||!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(f.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 n,_,o,i,s,c,d,P,p,R,h,S,m,u,A,$,I,D,x,y,Z,U,G,H,z,q,X,Q,w,J,k,V,Y,B,j,K,N,W,ee,_e,oe,te,ne,ie,se,ae,le,re,ce;return n="" + "\ufffd0\ufffd" + " " + "\ufffd1\ufffd" + "",_="Name",o="Plugin",i="Data chunks (k)",s="Coding chunks (m)",c="Crush failure domain",d="Crush root",P="Crush device class",p="Let Ceph decide",R="Available OSDs: " + "\ufffd0\ufffd" + "",h="Directory",S="This field is required!",m="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!",I="This field is required!",D="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.",Z="K has to be equal to or greater than m in order to recover data correctly through c.",U="Distribution factor: " + "\ufffd0\ufffd" + "",G="This field is required!",H="Must be equal to or greater than 1.",z="Chunks (k+m) have exceeded the available OSDs of " + "\ufffd0\ufffd" + ".",q="Durability estimator (c)",X="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.",w="Helper chunks (d)",J="Set d manually or use the plugin's default calculation that maximizes d.",k="D is automatically updated on k and m changes",V="D can be set from " + "\ufffd0\ufffd" + " to " + "\ufffd1\ufffd" + "",Y="D can only be set to " + "\ufffd0\ufffd" + "",B="D has to be greater than k (" + "\ufffd0\ufffd" + ").",j="D has to be lower than k + m (" + "\ufffd0\ufffd" + ").",K="Locality (l)",N="Locality groups: " + "\ufffd0\ufffd" + "",W="This field is required!",ee="Must be equal to or greater than 1.",_e="Can't split up chunks (k+m) correctly with the current locality.",oe="Loading...",te="Crush Locality",ne="Loading...",ie="None",se="Scalar mds",ae="Technique",le="Packetsize",re="Must be equal to or greater than 1.",ce="Loading...",[[3,"modalRef"],[1,"modal-title"],n,[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-select"],["ngValue","",4,"ngIf"],[3,"ngValue",4,"ngFor","ngForOf"],["for","k",1,"cd-col-form-label"],i,["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-select"],["for","crushRoot",1,"cd-col-form-label"],d,["id","crushRoot","name","crushRoot","formControlName","crushRoot",1,"form-select"],["for","crushDeviceClass",1,"cd-col-form-label"],P,["id","crushDeviceClass","name","crushDeviceClass","formControlName","crushDeviceClass",1,"form-select"],["ngValue",""],p,[1,"form-text","text-muted"],R,["for","directory",1,"cd-col-form-label"],h,["type","text","id","directory","name","directory","placeholder","Path...","formControlName","directory",1,"form-control"],[1,"modal-footer"],[3,"form","submitText","submitActionEvent"],[1,"invalid-feedback"],S,m,u,A,[3,"ngValue"],$,I,D,x,y,Z,U,G,H,z,["for","c",1,"cd-col-form-label"],q,["type","number","id","c","name","c","placeholder","Coding chunks...","formControlName","c","min","1",1,"form-control"],X,Q,["for","d",1,"cd-col-form-label"],w,[1,"input-group"],["type","number","id","d","name","d","placeholder","Helper chunks...","formControlName","d",1,"form-control"],["id","d-calc-btn","ngbTooltip",J,"type","button",1,"btn","btn-light",3,"click"],["aria-hidden","true",3,"ngClass"],[4,"ngIf"],k,V,Y,B,j,["for","l",1,"cd-col-form-label"],K,["type","number","id","l","name","l","placeholder","Coding chunks...","formControlName","l","min","1",1,"form-control"],N,W,ee,_e,oe,["for","crushLocality",1,"cd-col-form-label"],te,["id","crushLocality","name","crushLocality","formControlName","crushLocality",1,"form-select"],ne,ie,["for","scalar_mds",1,"cd-col-form-label"],se,["id","scalar_mds","name","scalar_mds","formControlName","scalar_mds",1,"form-select"],["for","technique",1,"cd-col-form-label"],ae,["id","technique","name","technique","formControlName","technique",1,"form-select"],["for","packetSize",1,"cd-col-form-label"],le,["type","number","id","packetSize","name","packetSize","placeholder","Packetsize...","formControlName","packetSize","min","1",1,"form-control"],re,ce]},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)(8,"div",6)(9,"div",7)(10,"label",8),e.SDv(11,9),e.qZA(),e.TgZ(12,"div",10),e._UZ(13,"input",11),e.YNc(14,G_,2,0,"span",12),e.YNc(15,H_,2,0,"span",12),e.YNc(16,z_,2,0,"span",12),e.qZA()(),e.TgZ(17,"div",7)(18,"label",13)(19,"span",14),e.SDv(20,15),e.qZA(),e._UZ(21,"cd-helper",16),e.qZA(),e.TgZ(22,"div",10)(23,"select",17),e.YNc(24,q_,2,0,"option",18),e.YNc(25,X_,2,2,"option",19),e.qZA(),e.YNc(26,Q_,2,0,"span",12),e.qZA()(),e.TgZ(27,"div",7)(28,"label",20)(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,w_,2,0,"span",12),e.YNc(35,J_,2,0,"span",12),e.YNc(36,k_,2,1,"span",12),e.YNc(37,V_,2,0,"span",12),e.YNc(38,Y_,2,0,"span",12),e.YNc(39,B_,2,1,"span",23),e.qZA()(),e.TgZ(40,"div",7)(41,"label",24)(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,j_,2,0,"span",12),e.YNc(48,K_,2,0,"span",12),e.YNc(49,W_,2,1,"span",12),e.qZA()(),e.YNc(50,oo,9,3,"div",27),e.YNc(51,ro,14,6,"div",27),e.YNc(52,Po,12,5,"div",27),e.TgZ(53,"div",7)(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)(59,"select",30),e.YNc(60,fo,2,0,"option",18),e.YNc(61,Eo,2,3,"option",19),e.qZA()()(),e.YNc(62,mo,10,4,"div",27),e.YNc(63,Mo,8,6,"div",27),e.YNc(64,So,8,2,"div",27),e.YNc(65,Lo,8,2,"div",27),e.TgZ(66,"div",7)(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)(72,"select",33),e.YNc(73,Ao,2,0,"option",18),e.YNc(74,Fo,2,2,"option",19),e.qZA()()(),e.TgZ(75,"div",7)(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)(81,"select",36)(82,"option",37),e.SDv(83,38),e.qZA(),e.YNc(84,No,2,2,"option",19),e.qZA(),e.TgZ(85,"span",39),e.SDv(86,40),e.qZA()()(),e.TgZ(87,"div",7)(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.TgZ(94,"div",44)(95,"cd-form-button-panel",45),e.NdJ("submitActionEvent",function(){return o.onSubmit()}),e.ALo(96,"titlecase"),e.ALo(97,"upperFirst"),e.qZA()()(),e.BQk(),e.qZA()),2&_){const i=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",i,"required")),e.xp6(1),e.Q6J("ngIf",o.form.showError("name",i,"pattern")),e.xp6(1),e.Q6J("ngIf",o.form.showError("name",i,"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",i,"required")),e.xp6(5),e.Q6J("html",o.tooltips.k),e.xp6(3),e.Q6J("ngIf",o.form.showError("k",i,"required")),e.xp6(1),e.Q6J("ngIf",o.form.showError("k",i,"min")),e.xp6(1),e.Q6J("ngIf",o.form.showError("k",i,"max")),e.xp6(1),e.Q6J("ngIf",o.form.showError("k",i,"unequal")),e.xp6(1),e.Q6J("ngIf",o.form.showError("k",i,"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",i,"required")),e.xp6(1),e.Q6J("ngIf",o.form.showError("m",i,"min")),e.xp6(1),e.Q6J("ngIf",o.form.showError("m",i,"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,Ie,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))}},dependencies:[C.mk,C.sg,C.O5,Pe.S,$e.z,fe.p,Ee.U,ge.o,pe.b,Re.P,me.V,l._Y,l.YN,l.Kr,l.Fj,l.wV,l.EJ,l.JJ,l.JL,l.qQ,l.sg,l.u,f._L,C.rS,Ce.m]}),t})();var vo=r(7022);class $o{constructor(){this.erasureInfo=!1,this.crushInfo=!1,this.pgs=1,this.poolTypes=["erasure","replicated"],this.applications={selected:[],default:["cephfs","rbd","rgw"],available:[],validators:[l.kI.pattern("[A-Za-z0-9_]+"),l.kI.maxLength(128)],messages:new vo.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),xe=r(47640),Io=r(60192),Do=r(30490),ye=r(61350),xo=r(17932),yo=r(63622),Zo=r(60950);const Uo=["crushInfoTabs"],Go=["crushDeletionBtn"],Ho=["ecpInfoTabs"],zo=["ecpDeletionBtn"];function qo(t,n){1&t&&(e.TgZ(0,"span",41),e.SDv(1,42),e.qZA())}function Xo(t,n){1&t&&(e.TgZ(0,"span",41),e.SDv(1,43),e.qZA())}function Qo(t,n){1&t&&(e.TgZ(0,"span",41),e.SDv(1,44),e.qZA())}function wo(t,n){1&t&&(e.TgZ(0,"span",41),e.SDv(1,45),e.qZA())}function Jo(t,n){if(1&t&&(e.TgZ(0,"option",46),e._uU(1),e.qZA()),2&t){const _=n.$implicit;e.Q6J("value",_),e.xp6(1),e.hij(" ",_," ")}}function ko(t,n){1&t&&(e.TgZ(0,"span",41),e.SDv(1,47),e.qZA())}function Vo(t,n){if(1&t&&(e.TgZ(0,"option",46),e._uU(1),e.qZA()),2&t){const _=n.$implicit;e.Q6J("value",_),e.xp6(1),e.hij(" ",_," ")}}function Yo(t,n){1&t&&(e.TgZ(0,"span",41),e.SDv(1,58),e.qZA())}function Bo(t,n){1&t&&(e.TgZ(0,"span",41),e.SDv(1,59),e.qZA())}function jo(t,n){1&t&&(e.TgZ(0,"span",41),e.SDv(1,60),e.qZA())}function Ko(t,n){1&t&&(e.TgZ(0,"span",55),e.SDv(1,61),e.qZA())}function Wo(t,n){if(1&t){const _=e.EpF();e.TgZ(0,"div",8)(1,"label",52),e.SDv(2,53),e.qZA(),e.TgZ(3,"div",11)(4,"input",54),e.NdJ("focus",function(){e.CHM(_);const i=e.oxw(3);return e.KtG(i.externalPgChange=!1)})("blur",function(){e.CHM(_);const i=e.oxw(3);return e.KtG(i.alignPgs())}),e.qZA(),e.YNc(5,Yo,2,0,"span",13),e.YNc(6,Bo,2,0,"span",13),e.YNc(7,jo,2,0,"span",13),e.TgZ(8,"span",55),e._UZ(9,"cd-doc",56),e.qZA(),e.YNc(10,Ko,2,0,"span",57),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 et(t,n){if(1&t&&(e.TgZ(0,"span",41)(1,"ul",66)(2,"li"),e.SDv(3,67),e.qZA(),e.TgZ(4,"li"),e.SDv(5,68),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 _t(t,n){if(1&t&&(e.TgZ(0,"span",41),e.SDv(1,69),e.qZA()),2&t){const _=e.oxw(4);e.xp6(1),e.pQV(_.getMinSize())(_.getMaxSize()),e.QtT(1)}}function ot(t,n){1&t&&(e.TgZ(0,"span",70),e.SDv(1,71),e.qZA())}function tt(t,n){if(1&t&&(e.TgZ(0,"div",8)(1,"label",62),e.SDv(2,63),e.qZA(),e.TgZ(3,"div",11),e._UZ(4,"input",64),e.YNc(5,et,6,2,"span",13),e.YNc(6,_t,2,2,"span",13),e.YNc(7,ot,2,0,"span",65),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 nt(t,n){1&t&&(e.TgZ(0,"div",8)(1,"label",72),e.SDv(2,73),e.qZA(),e.TgZ(3,"div",11)(4,"div",74),e._UZ(5,"input",75),e.TgZ(6,"label",76),e.SDv(7,77),e.qZA()()()())}function it(t,n){if(1&t&&(e.TgZ(0,"div")(1,"div",8)(2,"label",48),e.SDv(3,49),e.qZA(),e.TgZ(4,"div",11)(5,"select",50),e.YNc(6,Vo,2,2,"option",19),e.qZA()()(),e.YNc(7,Wo,11,4,"div",51),e.YNc(8,tt,8,5,"div",51),e.YNc(9,nt,8,0,"div",51),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 st(t,n){if(1&t&&e._UZ(0,"i",78),2&t){const _=e.oxw(2);e.Gre("",_.icons.warning," icon-warning-color")}}function at(t,n){1&t&&(e.TgZ(0,"option",17),e.SDv(1,92),e.qZA())}function lt(t,n){1&t&&(e.TgZ(0,"option",93),e.SDv(1,94),e.qZA()),2&t&&e.Q6J("ngValue",null)}function rt(t,n){1&t&&(e.TgZ(0,"option",93),e.SDv(1,95),e.qZA()),2&t&&e.Q6J("ngValue",null)}function ct(t,n){if(1&t&&(e.TgZ(0,"option",93),e._uU(1),e.qZA()),2&t){const _=n.$implicit;e.Q6J("ngValue",_),e.xp6(1),e.hij(" ",_.name," ")}}const F=function(t){return[t]};function Ot(t,n){if(1&t){const _=e.EpF();e.TgZ(0,"button",96),e.NdJ("click",function(){e.CHM(_);const i=e.oxw(4);return e.KtG(i.addErasureCodeProfile())}),e._UZ(1,"i",88),e.qZA()}if(2&t){const _=e.oxw(4);e.xp6(1),e.Q6J("ngClass",e.VKq(1,F,_.icons.add))}}function dt(t,n){if(1&t){const _=e.EpF();e.TgZ(0,"button",97,98),e.NdJ("click",function(){e.CHM(_);const i=e.oxw(4);return e.KtG(i.deleteErasureCodeProfile())}),e._UZ(2,"i",88),e.qZA()}if(2&t){const _=e.oxw(4);e.xp6(2),e.Q6J("ngClass",e.VKq(1,F,_.icons.trash))}}const ut=function(){return["name"]};function Pt(t,n){if(1&t&&e._UZ(0,"cd-table-key-value",109),2&t){const _=e.oxw(5);e.Q6J("renderObjects",!0)("hideKeys",e.DdM(4,ut))("data",_.form.getValue("erasureProfile"))("autoReload",!1)}}function ft(t,n){1&t&&(e.TgZ(0,"span"),e.SDv(1,112),e.qZA())}function Et(t,n){if(1&t&&(e.TgZ(0,"li"),e._uU(1),e.qZA()),2&t){const _=n.$implicit;e.xp6(1),e.hij(" ",_," ")}}function gt(t,n){if(1&t&&(e.TgZ(0,"ul"),e.YNc(1,Et,2,1,"li",113),e.qZA()),2&t){const _=e.oxw(6);e.xp6(1),e.Q6J("ngForOf",_.ecpUsage)}}function pt(t,n){if(1&t&&(e.YNc(0,ft,2,0,"ng-template",null,110,e.W1O),e.YNc(2,gt,2,1,"ul",111)),2&t){const _=e.MAs(1),o=e.oxw(5);e.xp6(2),e.Q6J("ngIf",o.ecpUsage)("ngIfElse",_)}}function Rt(t,n){if(1&t&&(e.TgZ(0,"span",99)(1,"nav",100,101),e.ynx(3,102),e.TgZ(4,"a",103),e.SDv(5,104),e.qZA(),e.YNc(6,Pt,1,5,"ng-template",105),e.BQk(),e.ynx(7,106),e.TgZ(8,"a",103),e.SDv(9,107),e.qZA(),e.YNc(10,pt,3,2,"ng-template",105),e.BQk(),e.qZA(),e._UZ(11,"div",108),e.qZA()),2&t){const _=e.MAs(2);e.xp6(11),e.Q6J("ngbNavOutlet",_)}}const Ze=function(t){return{active:t}};function mt(t,n){if(1&t){const _=e.EpF();e.TgZ(0,"div",8)(1,"label",80),e.SDv(2,81),e.qZA(),e.TgZ(3,"div",11)(4,"div",82)(5,"select",83),e.YNc(6,at,2,0,"option",84),e.YNc(7,lt,2,1,"option",85),e.YNc(8,rt,2,1,"option",85),e.YNc(9,ct,2,2,"option",86),e.qZA(),e.TgZ(10,"button",87),e.NdJ("click",function(){e.CHM(_);const i=e.oxw(3);return e.KtG(i.data.erasureInfo=!i.data.erasureInfo)}),e._UZ(11,"i",88),e.qZA(),e.YNc(12,Ot,2,3,"button",89),e.YNc(13,dt,3,3,"button",90),e.qZA(),e.YNc(14,Rt,12,1,"span",91),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(1),e.Q6J("ngClass",e.VKq(9,Ze,_.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 Ct(t,n){1&t&&(e.TgZ(0,"div",8)(1,"label",114),e.SDv(2,115),e.qZA(),e.TgZ(3,"div",11)(4,"span",55),e.SDv(5,116),e.qZA()()())}function Mt(t,n){1&t&&(e.TgZ(0,"span",55)(1,"span"),e.SDv(2,119),e.qZA(),e._uU(3,"\xa0 "),e.qZA())}function ht(t,n){if(1&t&&(e.TgZ(0,"option",93),e._uU(1),e.qZA()),2&t){const _=n.$implicit;e.Q6J("ngValue",_),e.xp6(1),e.hij(" ",_.rule_name," ")}}function St(t,n){if(1&t){const _=e.EpF();e.TgZ(0,"button",96),e.NdJ("click",function(){e.CHM(_);const i=e.oxw(5);return e.KtG(i.addCrushRule())}),e._UZ(1,"i",88),e.qZA()}if(2&t){const _=e.oxw(5);e.xp6(1),e.Q6J("ngClass",e.VKq(1,F,_.icons.add))}}function Tt(t,n){if(1&t){const _=e.EpF();e.TgZ(0,"button",126,127),e.NdJ("click",function(){e.CHM(_);const i=e.oxw(5);return e.KtG(i.deleteCrushRule())}),e._UZ(2,"i",88),e.qZA()}if(2&t){const _=e.oxw(5);e.xp6(2),e.Q6J("ngClass",e.VKq(1,F,_.icons.trash))}}const Lt=function(){return["steps","type","rule_name"]};function At(t,n){if(1&t&&e._UZ(0,"cd-table-key-value",109),2&t){const _=e.oxw(6);e.Q6J("renderObjects",!1)("hideKeys",e.DdM(4,Lt))("data",_.form.getValue("crushRule"))("autoReload",!1)}}function Ft(t,n){if(1&t&&(e.TgZ(0,"li"),e._uU(1),e.qZA()),2&t){const _=n.$implicit,o=e.oxw(7);e.xp6(1),e.hij(" ",o.describeCrushStep(_)," ")}}function Nt(t,n){if(1&t&&(e.TgZ(0,"ol"),e.YNc(1,Ft,2,1,"li",113),e.qZA()),2&t){const _=e.oxw(6);e.xp6(1),e.Q6J("ngForOf",_.form.get("crushRule").value.steps)}}function bt(t,n){1&t&&(e.TgZ(0,"span"),e.SDv(1,136),e.qZA())}function vt(t,n){if(1&t&&(e.TgZ(0,"li"),e._uU(1),e.qZA()),2&t){const _=n.$implicit;e.xp6(1),e.hij(" ",_," ")}}function $t(t,n){if(1&t&&(e.TgZ(0,"ul"),e.YNc(1,vt,2,1,"li",113),e.qZA()),2&t){const _=e.oxw(7);e.xp6(1),e.Q6J("ngForOf",_.crushUsage)}}function It(t,n){if(1&t&&(e.YNc(0,bt,2,0,"ng-template",null,135,e.W1O),e.YNc(2,$t,2,1,"ul",111)),2&t){const _=e.MAs(1),o=e.oxw(6);e.xp6(2),e.Q6J("ngIf",o.crushUsage)("ngIfElse",_)}}function Dt(t,n){if(1&t&&(e.TgZ(0,"div",128)(1,"nav",100,129),e.ynx(3,130),e.TgZ(4,"a",103),e.SDv(5,131),e.qZA(),e.YNc(6,At,1,5,"ng-template",105),e.BQk(),e.ynx(7,132),e.TgZ(8,"a",103),e.SDv(9,133),e.qZA(),e.YNc(10,Nt,2,1,"ng-template",105),e.BQk(),e.ynx(11,106),e.TgZ(12,"a",103),e.SDv(13,134),e.qZA(),e.YNc(14,It,3,2,"ng-template",105),e.BQk(),e.qZA(),e._UZ(15,"div",108),e.qZA()),2&t){const _=e.MAs(2);e.xp6(15),e.Q6J("ngbNavOutlet",_)}}function xt(t,n){1&t&&(e.TgZ(0,"span",41),e.SDv(1,137),e.qZA())}function yt(t,n){1&t&&(e.TgZ(0,"span",41),e.SDv(1,138),e.qZA())}function Zt(t,n){if(1&t){const _=e.EpF();e.TgZ(0,"div")(1,"div",120)(2,"select",121)(3,"option",93),e.SDv(4,122),e.qZA(),e.YNc(5,ht,2,2,"option",86),e.qZA(),e.TgZ(6,"button",123),e.NdJ("click",function(){e.CHM(_);const i=e.oxw(4);return e.KtG(i.data.crushInfo=!i.data.crushInfo)}),e._UZ(7,"i",88),e.qZA(),e.YNc(8,St,2,3,"button",89),e.YNc(9,Tt,3,3,"button",124),e.qZA(),e.YNc(10,Dt,16,1,"div",125),e.YNc(11,xt,2,0,"span",13),e.YNc(12,yt,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(1),e.Q6J("ngClass",e.VKq(9,Ze,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 Ut(t,n){if(1&t&&(e.TgZ(0,"div",8)(1,"label",114),e.SDv(2,117),e.qZA(),e.TgZ(3,"div",11),e.YNc(4,Mt,4,0,"ng-template",null,118,e.W1O),e.YNc(6,Zt,13,13,"div",111),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 Gt(t,n){if(1&t&&(e.TgZ(0,"div")(1,"legend"),e.SDv(2,79),e.qZA(),e.YNc(3,mt,15,13,"div",51),e.YNc(4,Ct,6,0,"div",51),e.YNc(5,Ut,7,2,"div",51),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 Ht(t,n){if(1&t&&(e.TgZ(0,"option",46),e._uU(1),e.qZA()),2&t){const _=n.$implicit;e.Q6J("value",_),e.xp6(1),e.hij(" ",_," ")}}function zt(t,n){1&t&&(e.TgZ(0,"option",17),e.SDv(1,156),e.qZA())}function qt(t,n){1&t&&(e.TgZ(0,"option",17),e.SDv(1,157),e.qZA())}function Xt(t,n){if(1&t&&(e.TgZ(0,"option",46),e._uU(1),e.qZA()),2&t){const _=n.$implicit;e.Q6J("value",_),e.xp6(1),e.hij(" ",_," ")}}function Qt(t,n){1&t&&(e.TgZ(0,"span",41),e.SDv(1,158),e.qZA())}function wt(t,n){1&t&&(e.TgZ(0,"span",41),e.SDv(1,159),e.qZA())}function Jt(t,n){1&t&&(e.TgZ(0,"span",41),e.SDv(1,160),e.qZA())}function kt(t,n){1&t&&(e.TgZ(0,"span",41),e.SDv(1,161),e.qZA())}function Vt(t,n){1&t&&(e.TgZ(0,"span",41),e.SDv(1,162),e.qZA())}function Yt(t,n){1&t&&(e.TgZ(0,"span",41),e.SDv(1,163),e.qZA())}function Bt(t,n){1&t&&(e.TgZ(0,"span",41),e.SDv(1,164),e.qZA())}function jt(t,n){if(1&t&&(e.TgZ(0,"div")(1,"div",8)(2,"label",144),e.SDv(3,145),e.qZA(),e.TgZ(4,"div",11)(5,"select",146),e.YNc(6,zt,2,0,"option",84),e.YNc(7,qt,2,0,"option",84),e.YNc(8,Xt,2,2,"option",19),e.qZA()()(),e.TgZ(9,"div",8)(10,"label",147),e.SDv(11,148),e.qZA(),e.TgZ(12,"div",11),e._UZ(13,"input",149),e.YNc(14,Qt,2,0,"span",13),e.YNc(15,wt,2,0,"span",13),e.YNc(16,Jt,2,0,"span",13),e.qZA()(),e.TgZ(17,"div",8)(18,"label",150),e.SDv(19,151),e.qZA(),e.TgZ(20,"div",11),e._UZ(21,"input",152),e.YNc(22,kt,2,0,"span",13),e.YNc(23,Vt,2,0,"span",13),e.YNc(24,Yt,2,0,"span",13),e.qZA()(),e.TgZ(25,"div",8)(26,"label",153),e.SDv(27,154),e.qZA(),e.TgZ(28,"div",11),e._UZ(29,"input",155),e.YNc(30,Bt,2,0,"span",13),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(1),e.Q6J("ngIf",o.form.showError("minBlobSize",_,"pattern")),e.xp6(6),e.Q6J("ngIf",o.form.showError("maxBlobSize",_,"min")),e.xp6(1),e.Q6J("ngIf",o.form.showError("maxBlobSize",_,"minimum")),e.xp6(1),e.Q6J("ngIf",o.form.showError("maxBlobSize",_,"pattern")),e.xp6(6),e.Q6J("ngIf",o.form.showError("ratio",_,"min")||o.form.showError("ratio",_,"max"))}}function Kt(t,n){if(1&t&&(e.TgZ(0,"div",139)(1,"legend"),e.SDv(2,140),e.qZA(),e.TgZ(3,"div",8)(4,"label",141),e.SDv(5,142),e.qZA(),e.TgZ(6,"div",11)(7,"select",143),e.YNc(8,Ht,2,2,"option",19),e.qZA()()(),e.YNc(9,jt,31,10,"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 Wt(t,n){1&t&&(e.TgZ(0,"span",41),e.SDv(1,165),e.qZA())}function en(t,n){1&t&&(e.TgZ(0,"span",41),e.SDv(1,166),e.qZA())}function _n(t,n){if(1&t){const _=e.EpF();e.TgZ(0,"div",1)(1,"form",2,3)(3,"div",4)(4,"div",5),e.SDv(5,6),e.ALo(6,"titlecase"),e.ALo(7,"upperFirst"),e.qZA(),e.TgZ(8,"div",7)(9,"div",8)(10,"label",9),e.SDv(11,10),e.qZA(),e.TgZ(12,"div",11),e._UZ(13,"input",12),e.YNc(14,qo,2,0,"span",13),e.YNc(15,Xo,2,0,"span",13),e.YNc(16,Qo,2,0,"span",13),e.YNc(17,wo,2,0,"span",13),e.qZA()(),e.TgZ(18,"div",8)(19,"label",14),e.SDv(20,15),e.qZA(),e.TgZ(21,"div",11)(22,"select",16)(23,"option",17),e.SDv(24,18),e.qZA(),e.YNc(25,Jo,2,2,"option",19),e.qZA(),e.YNc(26,ko,2,0,"span",13),e.qZA()(),e.YNc(27,it,10,4,"div",20),e.TgZ(28,"div",8)(29,"label",21),e.SDv(30,22),e.qZA(),e.TgZ(31,"div",11)(32,"cd-select-badges",23),e.NdJ("selection",function(){e.CHM(_);const i=e.oxw();return e.KtG(i.appSelection())}),e.qZA(),e.YNc(33,st,1,3,"i",24),e.qZA()(),e.YNc(34,Gt,6,3,"div",20),e.YNc(35,Kt,10,2,"div",25),e.TgZ(36,"div")(37,"legend"),e.SDv(38,26),e.qZA(),e.TgZ(39,"div",8)(40,"label",27),e.ynx(41),e.SDv(42,28),e.BQk(),e.TgZ(43,"cd-helper")(44,"span"),e.SDv(45,29),e.qZA(),e._UZ(46,"br"),e.TgZ(47,"span"),e.SDv(48,30),e.qZA()()(),e.TgZ(49,"div",11),e._UZ(50,"input",31),e.YNc(51,Wt,2,0,"span",13),e.qZA()(),e.TgZ(52,"div",8)(53,"label",32),e.ynx(54),e.SDv(55,33),e.BQk(),e.TgZ(56,"cd-helper")(57,"span"),e.SDv(58,34),e.qZA(),e._UZ(59,"br"),e.TgZ(60,"span"),e.SDv(61,35),e.qZA()()(),e.TgZ(62,"div",11),e._UZ(63,"input",36),e.YNc(64,en,2,0,"span",13),e.qZA()()(),e.TgZ(65,"div",37)(66,"cd-rbd-configuration-form",38),e.NdJ("changes",function(i){e.CHM(_);const s=e.oxw();return e.KtG(s.currentConfigurationValues=i())}),e.qZA()()(),e.TgZ(67,"div",39)(68,"cd-form-button-panel",40),e.NdJ("submitActionEvent",function(){e.CHM(_);const i=e.oxw();return e.KtG(i.submit())}),e.ALo(69,"titlecase"),e.ALo(70,"upperFirst"),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,26,o.action))(e.lcZ(7,28,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.data.applications.selected<=0),e.xp6(1),e.Q6J("ngIf",o.isErasure||o.isReplicated),e.xp6(1),e.Q6J("ngIf",o.info.is_all_bluestore),e.xp6(16),e.Q6J("ngIf",o.form.showError("max_bytes",_,"pattern")),e.xp6(13),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(69,30,o.action)+" "+e.lcZ(70,32,o.resource))}}let Ue=(()=>{class t extends M_.E{constructor(_,o,i,s,c,d,P,p,R,h,S){super(),this.dimlessBinaryPipe=_,this.route=o,this.router=i,this.modalService=s,this.poolService=c,this.authStorageService=d,this.formatter=P,this.taskWrapper=p,this.ecpService=R,this.crushRuleService=h,this.actionLabels=S,this.editing=!1,this.isReplicated=!1,this.isErasure=!1,this.data=new $o,this.externalPgChange=!1,this.current={rules:[]},this.initializeConfigData=new R_.t(1),this.currentConfigurationValues={},this.icons=b.P,this.crushUsage=void 0,this.ecpUsage=void 0,this.crushRuleMaxSize=10,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 m_._2}createForm(){const _=new Ne.d({mode:new l.p4("none"),algorithm:new l.p4(""),minBlobSize:new l.p4("",{updateOn:"blur"}),maxBlobSize:new l.p4("",{updateOn:"blur"}),ratio:new l.p4("",{updateOn:"blur"})});this.form=new Ne.d({name:new l.p4("",{validators:[l.kI.pattern(/^[.A-Za-z0-9_/-]+$/),l.kI.required,E.h.custom("rbdPool",()=>this.form&&this.form.getValue("name").includes("/")&&this.data&&-1!==this.data.applications.selected.indexOf("rbd"))]}),poolType:new l.p4("",{validators:[l.kI.required]}),crushRule:new l.p4(null,{validators:[E.h.custom("tooFewOsds",o=>this.info&&o&&this.info.osd_count<1),E.h.custom("required",o=>this.isReplicated&&this.info.crush_rules_replicated.length>0&&!o)]}),size:new l.p4("",{updateOn:"blur"}),erasureProfile:new l.p4(null),pgNum:new l.p4("",{validators:[l.kI.required]}),pgAutoscaleMode:new l.p4(null),ecOverwrites:new l.p4(!1),compression:_,max_bytes:new l.p4(""),max_objects:new l.p4(0)},[E.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 i=this.form.get(_),s=i.value;1!==o.length||s&&g().isEqual(s,o[0])?0===o.length&&s&&i.setValue(null):i.setValue(o[0]),o.length<=1?i.enabled&&i.disable():i.disabled&&i.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:h_.h.pool}),this.poolTypeChange(_.type);const o=this.info.crush_rules_replicated.concat(this.info.crush_rules_erasure),i={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(i).forEach(s=>{const c=i[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 C_.$(!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 i=this.getMinSize(),s=this.getMaxSize();os&&(o=s),o!==_.value&&this.form.silentSet("size",o)}getMinSize(){return!this.info||this.info.osd_count<1?0: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,i=this.isReplicated?this.replicatedPgCalc(o):this.erasurePgCalc(o);if(!i)return;const s=this.data.pgs;this.alignPgs(i),this.externalPgChange||(this.externalPgChange=s!==this.data.pgs)}setCorrectMaxSize(_=this.form.getValue("crushRule")){if(!_)return;const i=T.searchFailureDomains(this.info.nodes,_.steps[0].item_name)[_.steps[1].type];_.usable_size=Math.min(i?i.length:this.crushRuleMaxSize,this.crushRuleMaxSize)}replicatedPgCalc(_){const o=this.form.get("size"),i=o.value;return o.valid&&i>0?_/i:0}erasurePgCalc(_){const o=this.form.get("erasureProfile"),i=o.value;return(o.valid||o.disabled)&&i?_/(i.k+i.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,E.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))]):(E.h.validateIf(this.form.get("size"),()=>this.isReplicated,[E.h.custom("min",_=>this.form.getValue("size")&&_this.form.getValue("size")&&this.getMaxSize()<_)]),this.form.get("name").setValidators([this.form.get("name").validator,E.h.custom("uniqueName",_=>this.info&&-1!==this.info.pool_names.indexOf(_))])),this.setCompressionValidators()}setCompressionValidators(){E.h.validateIf(this.form.get("minBlobSize"),()=>this.hasCompressionEnabled(),[l.kI.min(0),E.h.custom("maximum",_=>this.oddBlobSize(_,this.form.getValue("maxBlobSize")))]),E.h.validateIf(this.form.get("maxBlobSize"),()=>this.hasCompressionEnabled(),[l.kI.min(0),E.h.custom("minimum",_=>this.oddBlobSize(this.form.getValue("minBlobSize"),_))]),E.h.validateIf(this.form.get("ratio"),()=>this.hasCompressionEnabled(),[l.kI.min(0),l.kI.max(1)])}oddBlobSize(_,o){const i=this.formatter.toBytes(_),s=this.formatter.toBytes(o);return Boolean(i&&s&&i>=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(bo,_=>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:i,findNewItem:s,controlName:c}){this.modalSubscription&&this.modalSubscription.unsubscribe(),o().subscribe(d=>{if(i(d),!_)return;const P=s();P&&this.form.get(c).setValue(P)})}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:i,dataName:s,getTabs:c,tabPosition:d,nameAttribute:P,itemDescription:p,reloadFn:R,deleteFn:h,taskName:S}){if(!_)return;if(o)return i.animation=!1,i.toggle(),this.data[s]=!0,void setTimeout(()=>{const u=c();u&&u.select(d)},50);const m=_[P];this.modalService.show(Fe.M,{itemDescription:p,itemNames:[m],submitActionObservable:()=>{const u=h(m);return u.subscribe(()=>R()),this.taskWrapper.wrapTaskAroundCall({task:new v.R(S,{name:m}),call:u})}})}addCrushRule(){this.addModal(y_,_=>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:i=>"on"===this.form.getValue("pgAutoscaleMode")?1:i,editable:!0},this.isReplicated?{externalFieldName:"size",formControlName:"size"}:{externalFieldName:"erasure_code_profile",formControlName:"erasureProfile",attr:"name"},{externalFieldName:"rule_name",formControlName:"crushRule",replaceFn:i=>this.isReplicated?i&&i.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:i=>this.hasCompressionEnabled()&&i},{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(i=>this.assignFormField(_,i))}assignFormField(_,{externalFieldName:o,formControlName:i,attr:s,replaceFn:c,editable:d,resetValue:P}){if(this.editing&&(!d||this.form.get(i).pristine))return;const p=this.form.getValue(i);let R=c?c(p):s?g().get(p,s):p;if(!p||!R){if(!d||g().isUndefined(P))return;R=P}_[o]=R}triggerApiTask(_){this.taskWrapper.wrapTaskAroundCall({task:new v.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(S_.$),e.Y36(Oe.gz),e.Y36(Oe.F0),e.Y36(De.Z),e.Y36(ue.q),e.Y36(xe.j),e.Y36(T_.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(Uo,5),e.Gf(Go,5),e.Gf(Ho,5),e.Gf(zo,5)),2&_){let i;e.iGM(i=e.CRH())&&(o.crushInfoTabs=i.first),e.iGM(i=e.CRH())&&(o.crushDeletionBtn=i.first),e.iGM(i=e.CRH())&&(o.ecpInfoTabs=i.first),e.iGM(i=e.CRH())&&(o.ecpDeletionBtn=i.first)}},features:[e.qOj],decls:1,vars:1,consts:function(){let n,_,o,i,s,c,d,P,p,R,h,S,m,u,A,$,I,D,x,y,Z,U,G,H,z,q,X,Q,w,J,k,V,Y,B,j,K,N,W,ee,_e,oe,te,ne,ie,se,ae,le,re,ce,O,Xe,Qe,we,Je,ke,Ve,Ye,Be,je,Ke,We,e_,__,o_,t_,n_,i_,s_,a_,l_,r_,c_,O_,d_,u_,P_;return n="" + "\ufffd0\ufffd" + " " + "\ufffd1\ufffd" + "",_="Name",o="Name...",i="Pool type",s="-- Select a pool type --",c="Applications",d="Pools should be associated with an application tag",P="Quotas",p="Max bytes",R="Leave it blank or specify 0 to disable this quota.",h="A valid quota should be greater than 0.",S="e.g., 10GiB",m="Max objects",u="Leave it blank or specify 0 to disable this quota.",A="A valid quota should be greater than 0.",$="This field is required!",I="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.",x="Pool name can only contain letters, numbers, '.', '-', '_' or '/'.",y="This field is required!",Z="PG Autoscale",U="Placement groups",G="Calculation help",H="This field is required!",z="At least one placement group is needed!",q="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.",Q="Replicated size",w="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",ne="Profile is not in use.",ie="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.",O="This rule can't be deleted as it is in use.",Xe="Crush rule",Qe="Crush steps",we="Used by pools",Je="Rule is not in use.",ke="This field is required!",Ve="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.",Ye="Compression",Be="Mode",je="Algorithm",Ke="Minimum blob size",We="e.g., 128KiB",e_="Maximum blob size",__="e.g., 512KiB",o_="Ratio",t_="Compression ratio",n_="Loading...",i_="-- No erasure compression algorithm available --",s_="Value should be greater than 0",a_="Value should be less than the maximum blob size",l_="Size must be a number or in a valid format. eg: 5 GiB",r_="Value should be greater than 0",c_="Value should be greater than the minimum blob size",O_="Size must be a number or in a valid format. eg: 5 GiB",d_="Value should be between 0.0 and 1.0",u_="Size must be a number or in a valid format. eg: 5 GiB",P_="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"],n,[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"],i,["id","poolType","formControlName","poolType","name","poolType",1,"form-select"],["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"],["title",d,3,"class",4,"ngIf"],["formGroupName","compression",4,"ngIf"],P,["for","max_bytes",1,"cd-col-form-label"],p,R,h,["id","max_bytes","name","max_bytes","type","text","formControlName","max_bytes","placeholder",S,"defaultUnit","GiB","cdDimlessBinary","",1,"form-control"],["for","max_objects",1,"cd-col-form-label"],m,u,A,["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"],$,I,D,x,[3,"value"],y,["for","pgAutoscaleMode",1,"cd-col-form-label"],Z,["id","pgAutoscaleMode","name","pgAutoscaleMode","formControlName","pgAutoscaleMode",1,"form-select"],["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",G],["class","form-text text-muted",4,"ngIf"],H,z,q,X,["for","size",1,"cd-col-form-label","required"],Q,["id","size","name","size","type","number","formControlName","size",1,"form-control",3,"max","min"],["class","text-warning-dark",4,"ngIf"],[1,"list-inline"],w,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,["title",d],j,["for","erasureProfile",1,"cd-col-form-label"],K,[1,"input-group","mb-1"],["id","erasureProfile","name","erasureProfile","formControlName","erasureProfile",1,"form-select"],["ngValue","",4,"ngIf"],[3,"ngValue",4,"ngIf"],[3,"ngValue",4,"ngFor","ngForOf"],["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"],ne,[4,"ngFor","ngForOf"],["for","crushRule",1,"cd-col-form-label"],ie,se,ae,["noRules",""],le,[1,"input-group"],["id","crushRule","formControlName","crushRule","name","crushSet",1,"form-select"],re,["id","crush-info-button","type","button","ngbTooltip",ce,1,"btn","btn-light",3,"ngClass","click"],["class","btn btn-light","type","button","ngbTooltip",O,"triggers","manual",3,"click",4,"ngIf"],["class","form-text text-muted","id","crush-info-block",4,"ngIf"],["type","button","ngbTooltip",O,"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"],Xe,["ngbNavItem","crush-rule-steps"],Qe,we,["ruleIsNotUsed",""],Je,ke,Ve,["formGroupName","compression"],Ye,["for","mode",1,"cd-col-form-label"],Be,["id","mode","name","mode","formControlName","mode",1,"form-select"],["for","algorithm",1,"cd-col-form-label"],je,["id","algorithm","name","algorithm","formControlName","algorithm",1,"form-select"],["for","minBlobSize",1,"cd-col-form-label"],Ke,["id","minBlobSize","name","minBlobSize","formControlName","minBlobSize","type","text","min","0","placeholder",We,"defaultUnit","KiB","cdDimlessBinary","",1,"form-control"],["for","maxBlobSize",1,"cd-col-form-label"],e_,["id","maxBlobSize","type","text","min","0","formControlName","maxBlobSize","placeholder",__,"defaultUnit","KiB","cdDimlessBinary","",1,"form-control"],["for","ratio",1,"cd-col-form-label"],o_,["id","ratio","name","ratio","formControlName","ratio","type","number","min","0","max","1","step","0.1","placeholder",t_,1,"form-control"],n_,i_,s_,a_,l_,r_,c_,O_,d_,u_,P_]},template:function(_,o){1&_&&e.YNc(0,_n,71,34,"div",0),2&_&&e.Q6J("cdFormLoading",o.loading)},dependencies:[C.mk,C.sg,C.O5,f.uN,f.Pz,f.nv,f.Vx,f.tO,f.Dy,Pe.S,Io.m,Do.K,fe.p,ye.b,Ee.U,xo.Q,yo.y,ge.o,pe.b,Re.P,me.V,l._Y,l.YN,l.Kr,l.Fj,l.wV,l.Wl,l.EJ,l.JJ,l.JL,l.Q7,l.qQ,l.Fd,l.sg,l.u,l.x0,f._L,Zo.d,C.rS,Ce.m],styles:[".icon-warning-color[_ngcontent-%COMP%]{margin-left:3px}"]}),t})();var on=r(19773),tn=r(20687),nn=r(68136),he=r(69158),Se=r(59019),L=r(99466),sn=r(91801),an=r(68774),ln=r(66369),Ge=r(38047),Te=r(51847);class rn{constructor(n){this.pool_name=n}}var cn=r(64724),On=r(60251),He=r(76317),dn=r(94928),un=r(23240),ze=r(51295),Pn=r(59376),fn=r(42176);function En(t,n){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 gn(t,n){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,""),e.Q6J("type","metrics")}}function pn(t,n){1&t&&(e.ynx(0,13),e.TgZ(1,"a",5),e.SDv(2,14),e.qZA(),e.YNc(3,gn,1,2,"ng-template",7),e.BQk())}function Rn(t,n){if(1&t&&e._UZ(0,"cd-rbd-configuration-table",18),2&t){const _=e.oxw(3);e.Q6J("data",_.selectedPoolConfiguration)}}function mn(t,n){1&t&&(e.ynx(0,16),e.TgZ(1,"a",5),e.SDv(2,17),e.qZA(),e.YNc(3,Rn,1,1,"ng-template",7),e.BQk())}function Cn(t,n){if(1&t&&e._UZ(0,"cd-table",21),2&t){const _=e.oxw(3);e.Q6J("data",_.cacheTiers)("columns",_.cacheTierColumns)("autoSave",!1)}}function Mn(t,n){1&t&&(e.ynx(0,19),e.TgZ(1,"a",5),e.SDv(2,20),e.qZA(),e.YNc(3,Cn,1,3,"ng-template",7),e.BQk())}function hn(t,n){if(1&t&&(e.ynx(0,1),e.TgZ(1,"nav",2,3),e.ynx(3,4),e.TgZ(4,"a",5),e.SDv(5,6),e.qZA(),e.YNc(6,En,1,3,"ng-template",7),e.BQk(),e.YNc(7,pn,4,0,"ng-container",8),e.YNc(8,mn,4,0,"ng-container",9),e.YNc(9,Mn,4,0,"ng-container",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 Sn=(()=>{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(_=>{ze.T.updateChanged(this,{selectedPoolConfiguration:_})}),ze.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 n,_,o,i,s;return n="Details",_="Performance Details",o="Pool details",i="Configuration",s="Cache Tiers Details",[["cdTableDetail","",4,"ngIf"],["cdTableDetail",""],["ngbNav","","cdStatefulTab","pool-details",1,"nav-tabs"],["nav","ngbNav"],["ngbNavItem","details"],["ngbNavLink",""],n,["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"],_,["title",o,"uid","-xyV8KCiz","grafanaStyle","three",3,"grafanaPath","type"],["ngbNavItem","configuration"],i,[3,"data"],["ngbNavItem","cache-tiers-details"],s,["columnMode","flex",3,"data","columns","autoSave"]]},template:function(_,o){1&_&&e.YNc(0,hn,11,4,"ng-container",0),2&_&&e.Q6J("ngIf",o.selection)},dependencies:[C.O5,f.uN,f.Pz,f.nv,f.Vx,f.tO,f.Dy,He.F,Se.a,ye.b,Pn.m,fn.P],changeDetection:0}),t})();const Tn=["poolUsageTpl"],Ln=["poolConfigurationSourceTpl"];function An(t,n){if(1&t){const _=e.EpF();e.TgZ(0,"cd-table",9,10),e.NdJ("fetchData",function(){e.CHM(_);const i=e.oxw();return e.KtG(i.taskListService.fetch())})("setExpandedRow",function(i){e.CHM(_);const s=e.oxw();return e.KtG(s.setExpandedRow(i))})("updateSelection",function(i){e.CHM(_);const s=e.oxw();return e.KtG(s.updateSelection(i))}),e._UZ(2,"cd-table-actions",11)(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 Fn(t,n){1&t&&e._UZ(0,"cd-grafana",14),2&t&&e.Q6J("grafanaPath","ceph-pools-overview?")("type","metrics")}function Nn(t,n){1&t&&(e.ynx(0,2),e.TgZ(1,"a",3),e.SDv(2,13),e.qZA(),e.YNc(3,Fn,1,2,"ng-template",5),e.BQk())}function bn(t,n){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)("title",_.pool_name)}}function vn(t,n){if(1&t&&e.YNc(0,bn,1,3,"cd-usage-bar",15),2&t){const _=n.row;e.Q6J("ngIf",null==_.stats||null==_.stats.avail_raw?null:_.stats.avail_raw.latest)}}const Le="pool";let $n=(()=>{class t extends nn.o{constructor(_,o,i,s,c,d,P,p,R,h,S){super(),this.poolService=_,this.taskWrapper=o,this.ecpService=i,this.authStorageService=s,this.taskListService=c,this.modalService=d,this.pgCategoryService=P,this.dimlessPipe=p,this.urlBuilder=R,this.configurationService=h,this.actionLabels=S,this.selection=new an.r,this.executingTasks=[],this.tableStatus=new he.E,this.cacheTiers=[],this.monAllowPoolDelete=!1,this.permissions=this.authStorageService.getPermissions(),this.tableActions=[{permission:"create",icon:b.P.add,routerLink:()=>this.urlBuilder.getCreate(),name:this.actionLabels.CREATE},{permission:"update",icon:b.P.edit,routerLink:()=>this.urlBuilder.getEdit(encodeURIComponent(this.selection.first().pool_name)),name:this.actionLabels.EDIT},{permission:"delete",icon:b.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(m=>{if(g().has(m,"value")){const u=g().find(m.value,A=>"mon"===A.section)||{value:!1};this.monAllowPoolDelete="true"===u.value}})}ngOnInit(){const _=(o,i,s)=>g().get(i,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:i,value:s})=>this.getPgStatusCellClass(o,i,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,i,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,i,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,on.zg)(o=>(this.ecProfileList=o,this.poolService.getList()))),void 0,o=>{this.pools=this.transformPoolsData(o),this.tableStatus=new he.E},()=>{this.table.reset(),this.tableStatus=new he.E(sn.T.ValueException)},o=>o.name.startsWith(`${Le}/`),(o,i)=>i.metadata.pool_name===o.pool_name,{default:o=>new rn(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 v.R(`${Le}/${M.MQ.DELETE}`,{pool_name:_}),call:this.poolService.delete(_)})})}getPgStatusCellClass(_,o,i){return{"text-right":!0,[`pg-${this.pgCategoryService.getTypeByStates(i)}`]:!0}}getErasureCodeProfile(_){let o="";return g().forEach(this.ecProfileList,i=>{i.name===_&&(o=`EC: ${i.k}+${i.m}`)}),o}transformPoolsData(_){const o=["bytes_used","max_avail","avail_raw","percent_used","rd_bytes","wr_bytes","rd","wr"],i={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]:i}),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(P=>P[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(_,(i,s)=>{o.push(`${i} ${s}`)}),o.join(", ")}getSelectionTiers(){if(typeof this.expandedRow<"u"){const _=this.expandedRow.tiers;this.cacheTiers=this.pools.filter(o=>_.includes(o.pool))}}getDisableDesc(){return!this.selection?.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(xe.j),e.Y36(Ge.j),e.Y36(De.Z),e.Y36(tn.j),e.Y36(ln.n),e.Y36(Te.F),e.Y36(cn.e),e.Y36(M.p4))},t.\u0275cmp=e.Xpm({type:t,selectors:[["cd-pool-list"]],viewQuery:function(_,o){if(1&_&&(e.Gf(Se.a,5),e.Gf(Tn,7),e.Gf(Ln,5)),2&_){let i;e.iGM(i=e.CRH())&&(o.table=i.first),e.iGM(i=e.CRH())&&(o.poolUsageTpl=i.first),e.iGM(i=e.CRH())&&(o.poolConfigurationSourceTpl=i.first)}},features:[e._Bn([Ge.j,{provide:Te.F,useValue:new Te.F(Le)}]),e.qOj],decls:10,vars:2,consts:function(){let n,_,o;return n="Pools List",_="Overall Performance",o="Ceph pools overview",[["ngbNav","",1,"nav-tabs"],["nav","ngbNav"],["ngbNavItem",""],["ngbNavLink",""],n,["ngbNavContent",""],["ngbNavItem","",4,"cdScope"],[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"],_,["title",o,"uid","z99hzWtmk","grafanaStyle","two",3,"grafanaPath","type"],["decimals","2",3,"total","used","title",4,"ngIf"],["decimals","2",3,"total","used","title"]]},template:function(_,o){if(1&_&&(e.TgZ(0,"nav",0,1),e.ynx(2,2),e.TgZ(3,"a",3),e.SDv(4,4),e.qZA(),e.YNc(5,An,4,11,"ng-template",5),e.BQk(),e.YNc(6,Nn,4,0,"ng-container",6),e.qZA(),e._UZ(7,"div",7),e.YNc(8,vn,1,1,"ng-template",null,8,e.W1O)),2&_){const i=e.MAs(1);e.xp6(6),e.Q6J("cdScope","grafana"),e.xp6(1),e.Q6J("ngbNavOutlet",i)}},dependencies:[C.O5,f.uN,f.Pz,f.nv,f.Vx,f.tO,f.Dy,On.O,He.F,Se.a,dn.K,un.w,Sn],styles:["cd-pool-list .pg-clean{color:#008a00} cd-pool-list .pg-working{color:#25828e} cd-pool-list .pg-warning{color:#d48200} cd-pool-list .pg-unknown{color:#dc3545}"]}),t})(),qe=(()=>{class t{}return t.\u0275fac=function(_){return new(_||t)},t.\u0275mod=e.oAB({type:t}),t.\u0275inj=e.cJS({imports:[g_.t,C.ez,f.Oz,f_.m,Oe.Bz,l.UX,f.HK,E_.BlockModule]}),t})();const In=[{path:"",component:$n},{path:M.MQ.CREATE,component:Ue,data:{breadcrumbs:M.Qn.CREATE}},{path:`${M.MQ.EDIT}/:name`,component:Ue,data:{breadcrumbs:M.Qn.EDIT}}];let Dn=(()=>{class t{}return t.\u0275fac=function(_){return new(_||t)},t.\u0275mod=e.oAB({type:t}),t.\u0275inj=e.cJS({imports:[qe,Oe.Bz.forChild(In)]}),t})()}}]); \ No newline at end of file diff --git a/src/pybind/mgr/dashboard/frontend/dist/en-US/25.9d84971ea743706b.js b/src/pybind/mgr/dashboard/frontend/dist/en-US/25.9d84971ea743706b.js new file mode 100644 index 000000000..a9bdf87f6 --- /dev/null +++ b/src/pybind/mgr/dashboard/frontend/dist/en-US/25.9d84971ea743706b.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkceph_dashboard=self.webpackChunkceph_dashboard||[]).push([[25],{39025:(mt,Ae,p)=>{p.r(Ae),p.d(Ae,{BlockModule:()=>yt,RoutedBlockModule:()=>Or});var c=p(88692),r=p(20092),m=p(54247),ne=p(62946),F=p(51389),Ne=p(37496),L=p(79512),j=p(4222),re=p(54462),Pe=p(44466),le=p(23815),C=p.n(le),ce=p(35758),D=p(64762),ie=p(35732),V=p(93523),e=p(64537);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 Fe=p(88002),De=p(76189),v=p(19358),be=p(34089);let H=class extends De.S{constructor(s,t){super(),this.http=s,this.rbdConfigurationService=t}isRBDPool(s){return-1!==C().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,Fe.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,o){const i={snapshot_name:t,mirrorImageSnapshot:o};return this.http.post(`api/block/image/${s.toStringEncoded()}/snap`,i,{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"})}};H.\u0275fac=function(s){return new(s||H)(e.LFG(ie.eN),e.LFG(be.n))},H.\u0275prov=e.Yz7({token:H,factory:H.\u0275fac,providedIn:"root"}),(0,D.gn)([(0,D.fM)(1,V.G),(0,D.w6)("design:type",Function),(0,D.w6)("design:paramtypes",[v.N,String,Boolean]),(0,D.w6)("design:returntype",void 0)],H.prototype,"createSnapshot",null),(0,D.gn)([(0,D.fM)(2,V.G),(0,D.w6)("design:type",Function),(0,D.w6)("design:paramtypes",[v.N,String,String]),(0,D.w6)("design:returntype",void 0)],H.prototype,"renameSnapshot",null),(0,D.gn)([(0,D.fM)(2,V.G),(0,D.w6)("design:type",Function),(0,D.w6)("design:paramtypes",[v.N,String,Boolean]),(0,D.w6)("design:returntype",void 0)],H.prototype,"protectSnapshot",null),(0,D.gn)([(0,D.fM)(1,V.G),(0,D.w6)("design:type",Function),(0,D.w6)("design:paramtypes",[v.N,String]),(0,D.w6)("design:returntype",void 0)],H.prototype,"restoreTrash",null),H=(0,D.gn)([V.o,(0,D.w6)("design:paramtypes",[ie.eN,be.n])],H);var N=p(7022),x=p(14745),T=p(65862),k=p(93614),Z=p(95463),z=p(90070),h=p(48168),E=p(76111),u=p(32337),f=p(60312),A=p(30839),M=p(87925),B=p(94276),K=p(56310),J=p(41582);function no(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 io(n,s){if(1&n&&(e.TgZ(0,"select",5),e._UZ(1,"option",6),e.YNc(2,no,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 so(n,s){if(1&n&&e._UZ(0,"input",10),2&n){const t=e.oxw(2);e.Q6J("formControlName",t.setting)}}function _o(n,s){if(1&n&&e._UZ(0,"input",11),2&n){const t=e.oxw(2);e.Q6J("formControlName",t.setting)}}function ao(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.TgZ(6,"div",12),e._UZ(7,"input",13),e.TgZ(8,"label",14),e._uU(9,"No"),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 ro(n,s){if(1&n&&(e.TgZ(0,"span"),e.YNc(1,so,1,1,"input",8),e.YNc(2,_o,1,1,"input",9),e.YNc(3,ao,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 lo(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 co(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 gt=(()=>{class n{ngOnInit(){const t=[];"min"in this.limits&&t.push(r.kI.min(Number(this.limits.min))),"max"in this.limits&&t.push(r.kI.max(Number(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)(1,"label",1),e._uU(2),e.qZA(),e.YNc(3,io,3,5,"select",2),e.YNc(4,ro,4,3,"span",3),e.YNc(5,lo,3,1,"span",4),e.YNc(6,co,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")))},dependencies:[c.sg,c.O5,r.YN,r.Kr,r.Fj,r.wV,r.EJ,r._,r.JJ,r.JL,r.sg,r.u,M.o,B.b,K.P,J.V]}),n})();var Je=p(88820);function po(n,s){1&n&&(e.TgZ(0,"span",29),e.SDv(1,30),e.qZA())}function uo(n,s){if(1&n&&(e.TgZ(0,"span")(1,"legend",10),e.SDv(2,21),e.qZA(),e.TgZ(3,"div",12)(4,"div",13)(5,"label",22),e.SDv(6,23),e.qZA(),e._UZ(7,"input",24),e.YNc(8,po,2,0,"span",25),e.qZA()(),e.TgZ(9,"div",12)(10,"div",13)(11,"label",26),e.SDv(12,27),e.qZA(),e._UZ(13,"input",28),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 mo(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)(1,"div",13),e._UZ(2,"cd-iscsi-setting",33),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 To(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 fo(n,s){if(1&n&&(e.ynx(0),e.YNc(1,To,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 Co=(()=>{class n{constructor(t,o,i){this.activeModal=t,this.iscsiService=o,this.actionLabels=i}ngOnInit(){const t={backstore:new r.p4(this.imagesSettings[this.image].backstore),lun:new r.p4(this.imagesSettings[this.image].lun),wwn:new r.p4(this.imagesSettings[this.image].wwn)};C().forEach(this.backstores,o=>{const i=this.imagesSettings[this.image][o]||{};C().forIn(this.disk_default_controls[o],(_,a)=>{t[a]=new r.p4(i[a])})}),this.settingsForm=new Z.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,_={};C().forIn(this.settingsForm.controls,(a,l)=>{""!==a.value&&null!==a.value&&l in this.disk_default_controls[this.settingsForm.value.backstore]&&(_[l]=a.value,C().forEach(this.backstores,d=>{d!==t&&l in(this.imagesSettings[this.image][d]||{})&&(this.imagesSettings[this.image][d][l]=a.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={...this.imagesSettings},this.control.updateValueAndValidity({emitEvent:!1}),this.activeModal.close()}}return n.\u0275fac=function(t){return new(t||n)(e.Y36(F.Kz),e.Y36(X),e.Y36(L.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,_,a,l,d;return s="Configure",t="Changing these parameters from their default values is usually not necessary.",o="Settings",i="Backstore",_="Identifier",a="lun",l="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-select"],[3,"value",4,"ngFor","ngForOf"],[4,"ngFor","ngForOf"],[1,"modal-footer"],[3,"form","submitText","submitActionEvent"],_,["for","lun",1,"col-form-label","required"],a,["type","number","id","lun","name","lun","formControlName","lun",1,"form-control"],["class","invalid-feedback",4,"ngIf"],["for","wwn",1,"col-form-label"],l,["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)(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)(10,"div",6)(11,"p",7),e.SDv(12,8),e.qZA(),e.YNc(13,uo,14,1,"span",9),e.TgZ(14,"legend",10),e.SDv(15,11),e.qZA(),e.TgZ(16,"div",12)(17,"div",13)(18,"label",14),e.SDv(19,15),e.qZA(),e.TgZ(20,"select",16),e.YNc(21,mo,3,4,"option",17),e.qZA()()(),e.YNc(22,fo,2,1,"ng-container",18),e.qZA(),e.TgZ(23,"div",19)(24,"cd-form-button-panel",20),e.NdJ("submitActionEvent",function(){return o.save()}),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))},dependencies:[c.sg,c.O5,r._Y,r.YN,r.Kr,r.Fj,r.wV,r.EJ,r.JJ,r.JL,r.sg,r.u,f.z,A.p,M.o,B.b,K.P,J.V,gt,c.Nd,Je.V]}),n})();function So(n,s){if(1&n&&(e.TgZ(0,"div",12)(1,"div",13),e._UZ(2,"cd-iscsi-setting",14),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 Ro=(()=>{class n{constructor(t,o,i){this.activeModal=t,this.iscsiService=o,this.actionLabels=i}ngOnInit(){const t={};C().forIn(this.target_default_controls,(o,i)=>{t[i]=new r.p4(this.target_controls.value[i])}),this.settingsForm=new Z.d(t)}save(){const t={};C().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(F.Kz),e.Y36(X),e.Y36(L.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)(6,"div",6)(7,"p",7),e.SDv(8,8),e.qZA(),e.YNc(9,So,3,4,"div",9),e.ALo(10,"keyvalue"),e.qZA(),e.TgZ(11,"div",10)(12,"cd-form-button-panel",11),e.NdJ("submitActionEvent",function(){return o.save()}),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))},dependencies:[c.sg,r._Y,r.JL,r.sg,f.z,A.p,K.P,J.V,gt,c.Nd]}),n})();var pe=p(63285),Eo=p(39092),Ye=p(58039),Tt=p(4416);let Mo=(()=>{class n{constructor(t){this.ngControl=t}onInput(t){this.setValue(t)}setValue(t){t=C().isString(t)?t.trim():t,this.ngControl.control.setValue(t)}}return n.\u0275fac=function(t){return new(t||n)(e.Y36(r.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 ft=p(63622),ot=p(10545);function Oo(n,s){1&n&&(e.TgZ(0,"span",40),e.SDv(1,41),e.qZA())}function ho(n,s){1&n&&(e.TgZ(0,"span",40),e.SDv(1,42),e.qZA())}function Ao(n,s){1&n&&(e.TgZ(0,"span",40),e.ynx(1),e.SDv(2,43),e.BQk(),e._UZ(3,"br"),e.ynx(4),e.SDv(5,44),e.BQk(),e._UZ(6,"br"),e.TgZ(7,"a",45),e.SDv(8,46),e.qZA()())}function Po(n,s){1&n&&(e.TgZ(0,"span",47),e.SDv(1,48),e.qZA())}const U=function(n){return[n]};function bo(n,s){if(1&n){const t=e.EpF();e.ynx(0),e.TgZ(1,"div",49),e._UZ(2,"input",50),e.TgZ(3,"button",51),e.NdJ("click",function(){const i=e.CHM(t),_=i.index,a=i.$implicit,l=e.oxw(2);return e.KtG(l.removePortal(_,a))}),e._UZ(4,"i",15),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("ngClass",e.VKq(2,U,o.icons.destroy))}}function Io(n,s){if(1&n&&(e.TgZ(0,"span",40),e.SDv(1,52),e.qZA()),2&n){const t=e.oxw(2);e.xp6(1),e.pQV(t.minimum_gateways),e.QtT(1)}}function No(n,s){if(1&n&&(e.TgZ(0,"div",55),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 Fo(n,s){if(1&n&&(e.ynx(0),e.SDv(1,56),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 Do(n,s){1&n&&(e.ynx(0),e.SDv(1,57),e.BQk())}function Lo(n,s){if(1&n){const t=e.EpF();e.ynx(0),e.TgZ(1,"div",49),e._UZ(2,"input",50),e.YNc(3,No,2,1,"div",53),e.TgZ(4,"button",51),e.NdJ("click",function(){const _=e.CHM(t).$implicit,a=e.oxw(2);return e.KtG(a.imageSettingsModal(_))}),e._UZ(5,"i",15),e.qZA(),e.TgZ(6,"button",51),e.NdJ("click",function(){const i=e.CHM(t),_=i.index,a=i.$implicit,l=e.oxw(2);return e.KtG(l.removeImage(_,a))}),e._UZ(7,"i",15),e.qZA()(),e.TgZ(8,"span",47),e.YNc(9,Fo,3,3,"ng-container",54),e.YNc(10,Do,2,0,"ng-container",54),e.qZA(),e.BQk()}if(2&n){const t=s.$implicit,o=e.oxw(2);e.xp6(2),e.Q6J("value",t),e.xp6(1),e.Q6J("ngIf",o.api_version>=1),e.xp6(2),e.Q6J("ngClass",e.VKq(6,U,o.icons.deepCheck)),e.xp6(2),e.Q6J("ngClass",e.VKq(8,U,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 vo(n,s){1&n&&(e.TgZ(0,"span",40),e.SDv(1,58),e.qZA())}function $o(n,s){1&n&&(e.TgZ(0,"span",40),e.SDv(1,59),e.qZA())}function Bo(n,s){1&n&&(e.TgZ(0,"span",40),e.SDv(1,77),e.qZA())}function Go(n,s){1&n&&(e.TgZ(0,"span",40),e.SDv(1,78),e.qZA())}function yo(n,s){1&n&&(e.TgZ(0,"span",40),e.SDv(1,79),e.qZA())}function xo(n,s){1&n&&(e.TgZ(0,"span",40),e.SDv(1,80),e.qZA())}function Zo(n,s){1&n&&(e.TgZ(0,"span",40),e.SDv(1,81),e.qZA())}function wo(n,s){1&n&&(e.TgZ(0,"span",40),e.SDv(1,82),e.qZA())}function Ho(n,s){1&n&&(e.TgZ(0,"span",40),e.SDv(1,83),e.qZA())}function ko(n,s){1&n&&(e.TgZ(0,"span",40),e.SDv(1,84),e.qZA())}function Ko(n,s){if(1&n&&(e.TgZ(0,"div",60)(1,"div",8)(2,"label",61),e.ynx(3),e.SDv(4,62),e.BQk(),e.qZA(),e.TgZ(5,"div",11),e._UZ(6,"input",63),e.YNc(7,Bo,2,0,"span",16),e.YNc(8,Go,2,0,"span",16),e.qZA()(),e.TgZ(9,"div",8)(10,"label",64),e.ynx(11),e.SDv(12,65),e.BQk(),e.qZA(),e.TgZ(13,"div",11)(14,"div",12),e._UZ(15,"input",66)(16,"button",67)(17,"cd-copy-2-clipboard-button",68),e.qZA(),e.YNc(18,yo,2,0,"span",16),e.YNc(19,xo,2,0,"span",16),e.qZA()(),e.TgZ(20,"div",8)(21,"label",69),e.ynx(22),e.SDv(23,70),e.BQk(),e.qZA(),e.TgZ(24,"div",11),e._UZ(25,"input",71),e.YNc(26,Zo,2,0,"span",16),e.YNc(27,wo,2,0,"span",16),e.qZA()(),e.TgZ(28,"div",8)(29,"label",72),e.ynx(30),e.SDv(31,73),e.BQk(),e.qZA(),e.TgZ(32,"div",11)(33,"div",12),e._UZ(34,"input",74)(35,"button",75)(36,"cd-copy-2-clipboard-button",76),e.qZA(),e.YNc(37,Ho,2,0,"span",16),e.YNc(38,ko,2,0,"span",16),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(10),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(10),e.Q6J("ngIf",o.targetForm.showError("mutual_password",t,"required")),e.xp6(1),e.Q6J("ngIf",o.targetForm.showError("mutual_password",t,"pattern"))}}function qo(n,s){1&n&&(e.TgZ(0,"span",40),e.SDv(1,114),e.qZA())}function Xo(n,s){1&n&&(e.TgZ(0,"span",40),e.SDv(1,115),e.qZA())}function Qo(n,s){1&n&&(e.TgZ(0,"span",40),e.SDv(1,116),e.qZA())}function zo(n,s){1&n&&(e.TgZ(0,"span",40),e.SDv(1,117),e.qZA())}function Jo(n,s){1&n&&(e.TgZ(0,"span",40),e.SDv(1,118),e.qZA())}function Yo(n,s){1&n&&(e.TgZ(0,"span",40),e.SDv(1,119),e.qZA())}function Vo(n,s){1&n&&(e.TgZ(0,"span",40),e.SDv(1,120),e.qZA())}function Uo(n,s){1&n&&(e.TgZ(0,"span",40),e.SDv(1,121),e.qZA())}function jo(n,s){1&n&&(e.TgZ(0,"span",40),e.SDv(1,122),e.qZA())}function Wo(n,s){1&n&&(e.TgZ(0,"span",40),e.SDv(1,123),e.qZA())}function en(n,s){1&n&&(e.TgZ(0,"span",40),e.SDv(1,124),e.qZA())}function tn(n,s){if(1&n){const t=e.EpF();e.ynx(0),e.TgZ(1,"div",49),e._UZ(2,"input",50),e.TgZ(3,"button",51),e.NdJ("click",function(){const i=e.CHM(t),_=i.index,a=i.$implicit,l=e.oxw(),d=l.$implicit,g=l.index,S=e.oxw(3);return e.KtG(S.removeInitiatorImage(d,_,g,a))}),e._UZ(4,"i",15),e.qZA()(),e.BQk()}if(2&n){const t=s.$implicit,o=e.oxw(4);e.xp6(2),e.Q6J("value",t),e.xp6(2),e.Q6J("ngClass",e.VKq(2,U,o.icons.destroy))}}function on(n,s){1&n&&(e.TgZ(0,"span"),e.SDv(1,125),e.qZA())}function nn(n,s){if(1&n&&(e.TgZ(0,"div",21)(1,"div",22)(2,"cd-select",126),e._UZ(3,"i",24),e.ynx(4),e.SDv(5,127),e.BQk(),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,U,_.icons.add))}}function sn(n,s){if(1&n){const t=e.EpF();e.TgZ(0,"div",91)(1,"div",5),e.ynx(2),e.SDv(3,92),e.BQk(),e._uU(4),e.TgZ(5,"button",93),e.NdJ("click",function(){const _=e.CHM(t).index,a=e.oxw(3);return e.KtG(a.removeInitiator(_))}),e.qZA()(),e.TgZ(6,"div",7)(7,"div",8)(8,"label",94),e.SDv(9,95),e.qZA(),e.TgZ(10,"div",11)(11,"input",96),e.NdJ("blur",function(){e.CHM(t);const i=e.oxw(3);return e.KtG(i.updatedInitiatorSelector())}),e.qZA(),e.YNc(12,qo,2,0,"span",16),e.YNc(13,Xo,2,0,"span",16),e.YNc(14,Qo,2,0,"span",16),e.qZA()(),e.ynx(15,60),e.TgZ(16,"div",8)(17,"label",97),e.SDv(18,98),e.qZA(),e.TgZ(19,"div",11),e._UZ(20,"input",99),e.YNc(21,zo,2,0,"span",16),e.YNc(22,Jo,2,0,"span",16),e.qZA()(),e.TgZ(23,"div",8)(24,"label",100),e.SDv(25,101),e.qZA(),e.TgZ(26,"div",11)(27,"div",12),e._UZ(28,"input",102)(29,"button",103)(30,"cd-copy-2-clipboard-button",104),e.qZA(),e.YNc(31,Yo,2,0,"span",16),e.YNc(32,Vo,2,0,"span",16),e.qZA()(),e.TgZ(33,"div",8)(34,"label",105),e.ynx(35),e.SDv(36,106),e.BQk(),e.qZA(),e.TgZ(37,"div",11),e._UZ(38,"input",107),e.YNc(39,Uo,2,0,"span",16),e.YNc(40,jo,2,0,"span",16),e.qZA()(),e.TgZ(41,"div",8)(42,"label",108),e.SDv(43,109),e.qZA(),e.TgZ(44,"div",11)(45,"div",12),e._UZ(46,"input",110)(47,"button",103)(48,"cd-copy-2-clipboard-button",104),e.qZA(),e.YNc(49,Wo,2,0,"span",16),e.YNc(50,en,2,0,"span",16),e.qZA()(),e.BQk(),e.TgZ(51,"div",8)(52,"label",111),e.SDv(53,112),e.qZA(),e.TgZ(54,"div",11),e.YNc(55,tn,5,4,"ng-container",20),e.YNc(56,on,2,0,"span",54),e.YNc(57,nn,6,6,"div",113),e.qZA()()()()}if(2&n){const t=s.$implicit,o=s.index;e.oxw(2);const i=e.MAs(2);e.Q6J("formGroup",t),e.xp6(4),e.hij(": ",t.getValue("client_iqn")," "),e.xp6(8),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(1),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(1),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 _n(n,s){1&n&&(e.TgZ(0,"span",47),e.SDv(1,128),e.qZA())}function an(n,s){if(1&n){const t=e.EpF();e.TgZ(0,"div",8)(1,"label",85),e.SDv(2,86),e.qZA(),e.TgZ(3,"div",87),e.YNc(4,sn,58,24,"div",88),e.TgZ(5,"div",21)(6,"div",22),e.YNc(7,_n,2,0,"span",17),e.TgZ(8,"button",89),e.NdJ("click",function(){return e.CHM(t),e.oxw(2).addInitiator(),e.KtG(!1)}),e._UZ(9,"i",24),e.ynx(10),e.SDv(11,90),e.BQk(),e.qZA()()(),e._UZ(12,"hr"),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,U,t.icons.add))}}function rn(n,s){if(1&n){const t=e.EpF();e.ynx(0),e.TgZ(1,"div",49),e._UZ(2,"input",50),e.TgZ(3,"button",51),e.NdJ("click",function(){const _=e.CHM(t).index,a=e.oxw(),l=a.$implicit,d=a.index,g=e.oxw(3);return e.KtG(g.removeGroupInitiator(l,_,d))}),e._UZ(4,"i",15),e.qZA()(),e.BQk()}if(2&n){const t=s.$implicit,o=e.oxw(4);e.xp6(2),e.Q6J("value",t),e.xp6(2),e.Q6J("ngClass",e.VKq(2,U,o.icons.destroy))}}function ln(n,s){if(1&n){const t=e.EpF();e.ynx(0),e.TgZ(1,"div",49),e._UZ(2,"input",50),e.TgZ(3,"button",51),e.NdJ("click",function(){const _=e.CHM(t).index,a=e.oxw(),l=a.$implicit,d=a.index,g=e.oxw(3);return e.KtG(g.removeGroupDisk(l,_,d))}),e._UZ(4,"i",15),e.qZA()(),e.BQk()}if(2&n){const t=s.$implicit,o=e.oxw(4);e.xp6(2),e.Q6J("value",t),e.xp6(2),e.Q6J("ngClass",e.VKq(2,U,o.icons.destroy))}}function cn(n,s){if(1&n){const t=e.EpF();e.TgZ(0,"div",91)(1,"div",5),e.ynx(2),e.SDv(3,132),e.BQk(),e._uU(4),e.TgZ(5,"button",93),e.NdJ("click",function(){const _=e.CHM(t).index,a=e.oxw(3);return e.KtG(a.removeGroup(_))}),e.qZA()(),e.TgZ(6,"div",7)(7,"div",8)(8,"label",133),e.SDv(9,134),e.qZA(),e.TgZ(10,"div",11),e._UZ(11,"input",135),e.qZA()(),e.TgZ(12,"div",8)(13,"label",136),e.ynx(14),e.SDv(15,137),e.BQk(),e.qZA(),e.TgZ(16,"div",11),e.YNc(17,rn,5,4,"ng-container",20),e.TgZ(18,"div",21)(19,"div",22)(20,"cd-select",23),e.NdJ("selection",function(i){const a=e.CHM(t).index,l=e.oxw(3);return e.KtG(l.onGroupMemberSelection(i,a))}),e._UZ(21,"i",24),e.ynx(22),e.SDv(23,138),e.BQk(),e.qZA()()(),e._UZ(24,"hr"),e.qZA()(),e.TgZ(25,"div",8)(26,"label",27),e.ynx(27),e.SDv(28,139),e.BQk(),e.qZA(),e.TgZ(29,"div",11),e.YNc(30,ln,5,4,"ng-container",20),e.TgZ(31,"div",21)(32,"div",22)(33,"cd-select",126),e._UZ(34,"i",24),e.ynx(35),e.SDv(36,140),e.BQk(),e.qZA()()(),e._UZ(37,"hr"),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(13),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(12,U,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(14,U,i.icons.add))}}function dn(n,s){1&n&&(e.TgZ(0,"span",47),e.SDv(1,141),e.qZA())}function pn(n,s){if(1&n){const t=e.EpF();e.TgZ(0,"div",8)(1,"label",85),e.SDv(2,129),e.qZA(),e.TgZ(3,"div",130),e.YNc(4,cn,38,16,"div",88),e.TgZ(5,"div",21)(6,"div",22),e.YNc(7,dn,2,0,"span",17),e.TgZ(8,"button",89),e.NdJ("click",function(){return e.CHM(t),e.oxw(2).addGroup(),e.KtG(!1)}),e._UZ(9,"i",24),e.ynx(10),e.SDv(11,131),e.BQk(),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,U,t.icons.add))}}function un(n,s){if(1&n){const t=e.EpF();e.TgZ(0,"div",1)(1,"form",2,3)(3,"div",4)(4,"div",5),e.SDv(5,6),e.ALo(6,"titlecase"),e.ALo(7,"upperFirst"),e.qZA(),e.TgZ(8,"div",7)(9,"div",8)(10,"label",9),e.SDv(11,10),e.qZA(),e.TgZ(12,"div",11)(13,"div",12),e._UZ(14,"input",13),e.TgZ(15,"button",14),e.NdJ("click",function(){e.CHM(t);const i=e.oxw();return e.KtG(i.targetSettingsModal())}),e._UZ(16,"i",15),e.qZA()(),e.YNc(17,Oo,2,0,"span",16),e.YNc(18,ho,2,0,"span",16),e.YNc(19,Ao,9,0,"span",16),e.YNc(20,Po,2,0,"span",17),e._UZ(21,"hr"),e.qZA()(),e.TgZ(22,"div",8)(23,"label",18),e.SDv(24,19),e.qZA(),e.TgZ(25,"div",11),e.YNc(26,bo,5,4,"ng-container",20),e.TgZ(27,"div",21)(28,"div",22)(29,"cd-select",23),e.NdJ("selection",function(i){e.CHM(t);const _=e.oxw();return e.KtG(_.onPortalSelection(i))}),e._UZ(30,"i",24),e.ynx(31),e.SDv(32,25),e.BQk(),e.qZA()()(),e._UZ(33,"input",26),e.YNc(34,Io,2,1,"span",16),e._UZ(35,"hr"),e.qZA()(),e.TgZ(36,"div",8)(37,"label",27),e.SDv(38,28),e.qZA(),e.TgZ(39,"div",11),e.YNc(40,Lo,11,10,"ng-container",20),e._UZ(41,"input",29),e.YNc(42,vo,2,0,"span",16),e.YNc(43,$o,2,0,"span",16),e.TgZ(44,"div",21)(45,"div",22)(46,"cd-select",23),e.NdJ("selection",function(i){e.CHM(t);const _=e.oxw();return e.KtG(_.onImageSelection(i))}),e._UZ(47,"i",24),e.ynx(48),e.SDv(49,30),e.BQk(),e.qZA()()(),e._UZ(50,"hr"),e.qZA()(),e.TgZ(51,"div",8)(52,"div",31)(53,"div",32),e._UZ(54,"input",33),e.TgZ(55,"label",34),e.SDv(56,35),e.qZA()(),e._UZ(57,"hr"),e.qZA()(),e.YNc(58,Ko,39,8,"div",36),e.YNc(59,an,13,5,"div",37),e.YNc(60,pn,12,5,"div",37),e.qZA(),e.TgZ(61,"div",38)(62,"cd-form-button-panel",39),e.NdJ("submitActionEvent",function(){e.CHM(t);const i=e.oxw();return e.KtG(i.submit())}),e.ALo(63,"titlecase"),e.ALo(64,"upperFirst"),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(9),e.Q6J("ngClass",e.VKq(34,U,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,U,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,U,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(63,30,o.action)+" "+e.lcZ(64,32,o.resource))}}let Ct=(()=>{class n extends k.E{constructor(t,o,i,_,a,l,d){super(),this.iscsiService=t,this.modalService=o,this.rbdService=i,this.router=_,this.route=a,this.taskWrapper=l,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 N.a({noOptions:"There are no portals available."}),images:new N.a({noOptions:"There are no images available."}),initiatorImage:new N.a({noOptions:"There are no images available. Please make sure you add an image to the target."}),groupInitiator:new N.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 h.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,ce.D)(o).subscribe(i=>{const _=C()(i[0]).filter(l=>l.target_iqn!==this.target_iqn).flatMap(l=>l.disks).map(l=>`${l.pool}/${l.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=C()(i[1]).flatMap(l=>l.value).filter(l=>!l.namespace&&!(-1!==_.indexOf(`${l.pool_name}/${l.name}`)||0===this.getValidBackstores(l).length)).value(),this.imagesSelections=this.imagesAll.map(l=>new x.$(!1,`${l.pool_name}/${l.name}`,""));const a=[];i[2].forEach(l=>{l.ip_addresses.forEach(d=>{a.push(new x.$(!1,l.name+":"+d,""))})}),this.portalsSelections=[...a],this.cephIscsiConfigVersion=i[4].ceph_iscsi_config_version,this.createForm(),i[5]&&this.resolveModel(i[5]),this.loadingReady()})}createForm(){if(this.targetForm=new Z.d({target_iqn:new r.p4("iqn.2001-07.com.ceph:"+Date.now(),{validators:[r.kI.required,r.kI.pattern(this.IQN_REGEX)]}),target_controls:new r.p4({}),portals:new r.p4([],{validators:[z.h.custom("minGateways",t=>C().uniq(t.map(i=>i.split(":")[0])).length{const o=this.getLunIds(t);return o.length!==C().uniq(o).length}),z.h.custom("dupWwn",t=>{const o=this.getWwns(t);return o.length!==C().uniq(o).length})]}),initiators:new r.vC([]),groups:new r.vC([]),acl_enabled:new r.p4(!1)}),this.cephIscsiConfigVersion>10){const t=new Z.d({user:new r.p4(""),password:new r.p4(""),mutual_user:new r.p4(""),mutual_password:new r.p4("")});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=[];C().forEach(t.portals,_=>{o.push(`${_.host}:${_.ip}`)}),this.targetForm.patchValue({portals:o});const i=[];C().forEach(t.disks,_=>{const a=`${_.pool}/${_.image}`;i.push(a),this.imagesSettings[a]={backstore:_.backstore},this.imagesSettings[a][_.backstore]=_.controls,"lun"in _&&(this.imagesSettings[a].lun=_.lun),"wwn"in _&&(this.imagesSettings[a].wwn=_.wwn),this.onImageSelection({option:{name:a,selected:!0}})}),this.targetForm.patchValue({disks:i}),C().forEach(t.clients,_=>{const a=this.addInitiator();_.luns=C().map(_.luns,l=>`${l.pool}/${l.image}`),a.patchValue(_)}),t.groups.forEach((_,a)=>{const l=this.addGroup();_.disks=C().map(_.disks,d=>`${d.pool}/${d.image}`),l.patchValue(_),C().forEach(_.members,d=>{this.onGroupMemberSelection({option:new x.$(!0,d,"")},a)})})}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)}),C().forEach(this.imagesInitiatorSelections,(o,i)=>{this.imagesInitiatorSelections[i]=o.filter(_=>_.name!==t)}),C().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 C().map(t,o=>this.imagesSettings[o].lun)}nextLunId(t){const o=this.disks.value.filter(a=>a!==t),i=this.getLunIds(o);let _=0;for(;i.includes(_);)_++;return _}getWwns(t){return C().map(t,i=>this.imagesSettings[i].wwn).filter(i=>C().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]={}}C().forEach(this.imagesInitiatorSelections,(i,_)=>{i.push(new x.$(!1,o.name,"")),this.imagesInitiatorSelections[_]=[...i]}),C().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 Z.d({client_iqn:new r.p4("",{validators:[r.kI.required,z.h.custom("notUnique",i=>{const _=this.initiators.controls.reduce(function(a,l){return a.concat(l.value.client_iqn)},[]);return _.indexOf(i)!==_.lastIndexOf(i)}),r.kI.pattern(this.IQN_REGEX)]}),auth:new Z.d({user:new r.p4(""),password:new r.p4(""),mutual_user:new r.p4(""),mutual_password:new r.p4("")}),luns:new r.p4([]),cdIsInGroup:new r.p4(!1)});this.setAuthValidator(t),this.initiators.push(t),C().forEach(this.groupMembersSelections,(i,_)=>{i.push(new x.$(!1,"","")),this.groupMembersSelections[_]=[...i]});const o=C().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"),[r.kI.required],[r.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"),[r.kI.required],[r.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"),[r.kI.required],[r.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"),[r.kI.required],[r.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),C().forEach(this.groupMembersSelections,(i,_)=>{i.splice(t,1),this.groupMembersSelections[_]=[...i]}),this.groups.controls.forEach(i=>{const _=i.value.members.filter(a=>a!==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})}),C().forEach(this.groupMembersSelections,(t,o)=>{C().forEach(t,(i,_)=>{const a=i.name;i.name=this.initiators.controls[_].value.client_iqn,this.groups.controls.forEach(l=>{const d=l.value.members,g=d.indexOf(a);-1!==g&&(d[g]=i.name),l.get("members").setValue(d)})}),this.groupMembersSelections[o]=[...this.groupMembersSelections[o]]})}removeInitiatorImage(t,o,i,_){const a=t.getValue("luns");return a.splice(o,1),t.patchValue({luns:a}),this.imagesInitiatorSelections[i].forEach(l=>{l.name===_&&(l.selected=!1)}),!1}get groups(){return this.targetForm.get("groups")}addGroup(){const t=new Z.d({group_id:new r.p4("",{validators:[r.kI.required]}),members:new r.p4([]),disks:new r.p4([])});this.groups.push(t);const o=C().map(this.targetForm.getValue("disks"),_=>new x.$(!1,_,""));this.groupDiskSelections.push(o);const i=C().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(l=>l.selected).map(l=>l.name)),this.initiators.controls.forEach((a,l)=>{a.value.client_iqn===i.name&&(a.patchValue({luns:_}),a.get("cdIsInGroup").setValue(i.selected),C().forEach(this.groupMembersSelections,d=>{d[l].enabled=!i.selected}),this.imagesInitiatorSelections[l].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(a=>{a.name===_&&(a.selected=!1)}),this.groupDiskSelections[i]=[...this.groupDiskSelections[i]]}submit(){const t=C().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 a=this.targetForm.getValue("acl_enabled");o.auth={user:a?"":_.getValue("user"),password:a?"":_.getValue("password"),mutual_user:a?"":_.getValue("mutual_user"),mutual_password:a?"":_.getValue("mutual_password")}}let i;t.disks.forEach(_=>{const a=_.split("/"),l=this.imagesSettings[_].backstore;o.disks.push({pool:a[0],image:a[1],backstore:l,controls:this.imagesSettings[_][l],lun:this.imagesSettings[_].lun,wwn:this.imagesSettings[_].wwn})}),t.portals.forEach(_=>{const a=_.indexOf(":");o.portals.push({host:_.substring(0,a),ip:_.substring(a+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 a=[];_.luns.forEach(l=>{const d=l.split("/");a.push({pool:d[0],image:d[1]})}),_.luns=a}),o.clients=t.initiators),o.acl_enabled&&(t.groups.forEach(_=>{const a=[];_.disks.forEach(l=>{const d=l.split("/");a.push({pool:d[0],image:d[1]})}),_.disks=a}),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 E.R("iscsi/target/edit",{target_iqn:o.target_iqn}),call:this.iscsiService.updateTarget(this.target_iqn,o)})):i=this.taskWrapper.wrapTaskAroundCall({task:new E.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(Ro,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(Co,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(pe.Z),e.Y36(H),e.Y36(m.F0),e.Y36(m.gz),e.Y36(u.P),e.Y36(L.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,_,a,l,d,g,S,I,P,$,y,Q,Y,ee,te,w,_e,ae,O,me,ge,Te,fe,Ce,Se,Re,G,Ge,ye,xe,Ze,we,He,ke,Ke,qe,Xe,Qe,ze,b,xt,Zt,wt,Ht,kt,Kt,qt,Xt,Qt,zt,Jt,Yt,Vt,Ut,jt,Wt,eo,to,oo;return s="" + "\ufffd0\ufffd" + " " + "\ufffd1\ufffd" + "",t="Target IQN",o="Portals",i="Add portal",_="Images",a="Add image",l="ACL authentication",d="This field is required.",g="IQN has wrong pattern.",S="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",$="This target has modified advanced settings.",y="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",O="Mutual Password",me="This field is required.",ge="User names must have a length of 8 to 64 characters and can contain alphanumeric characters, '.', '@', '-', '_' or ':'.",Te="This field is required.",fe="Passwords must have a length of 12 to 16 characters and can contain alphanumeric characters, '@', '-', '_' or '/'.",Ce="This field is required.",Se="User names must have a length of 8 to 64 characters and can contain alphanumeric characters, '.', '@', '-', '_' or ':'.",Re="This field is required.",G="Passwords must have a length of 12 to 16 characters and can contain alphanumeric characters, '@', '-', '_' or '/'.",Ge="Initiators",ye="Add initiator",xe="Initiator",Ze="Client IQN",we="User",He="Password",ke="Mutual User",Ke="Mutual Password",qe="Images",Xe="Initiator IQN needs to be unique.",Qe="This field is required.",ze="IQN has wrong pattern.",b="This field is required.",xt="User names must have a length of 8 to 64 characters and can contain alphanumeric characters, '.', '@', '-', '_' or ':'.",Zt="This field is required.",wt="Passwords must have a length of 12 to 16 characters and can contain alphanumeric characters, '@', '-', '_' or '/'.",Ht="This field is required.",kt="User names must have a length of 8 to 64 characters and can contain alphanumeric characters, '.', '@', '-', '_' or ':'.",Kt="This field is required.",qt="Passwords must have a length of 12 to 16 characters and can contain alphanumeric characters, '@', '-', '_' or '/'.",Xt="Initiator belongs to a group. Images will be configure in the group.",Qt="Add image",zt="No items added.",Jt="Groups",Yt="Add group",Vt="Group",Ut="Name",jt="Initiators",Wt="Add initiator",eo="Images",to="Add image",oo="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"],["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-end",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"],a,[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"],l,["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,S,I,["target","_blank","href","https://en.wikipedia.org/wiki/ISCSI#Addressing"],P,[1,"form-text","text-muted"],$,[1,"input-group","cd-mb"],["type","text","disabled","",1,"cd-form-control",3,"value"],["type","button",1,"btn","btn-light",3,"click"],y,["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"],O,["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"],me,ge,Te,fe,Ce,Se,Re,G,["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-end",3,"click"],ye,[1,"card","mb-2",3,"formGroup"],xe,["type","button",1,"btn-close","float-end",3,"click"],["for","client_iqn",1,"cd-col-form-label","required"],Ze,["type","text","formControlName","client_iqn","cdTrim","",1,"form-control",3,"blur"],["for","user",1,"cd-col-form-label"],we,["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"],qe,["class","row",4,"ngIf"],Xe,Qe,ze,b,xt,Zt,wt,Ht,kt,Kt,qt,Xt,["elemClass","btn btn-light float-end",3,"data","options","messages"],Qt,zt,Jt,["formArrayName","groups",1,"cd-col-form-input"],Yt,Vt,["for","group_id",1,"cd-col-form-label","required"],Ut,["type","text","formControlName","group_id",1,"form-control"],["for","members",1,"cd-col-form-label"],jt,Wt,eo,to,oo]},template:function(t,o){1&t&&e.YNc(0,un,65,40,"div",0),2&t&&e.Q6J("cdFormLoading",o.loading)},dependencies:[c.mk,c.sg,c.O5,r._Y,r.Fj,r.Wl,r.JJ,r.JL,r.sg,r.u,r.x0,r.CE,Eo.H,Ye.s,A.p,Tt.C,Mo,ft.y,M.o,B.b,K.P,J.V,c.rS,Je.V,ot.m],styles:[".cd-mb[_ngcontent-%COMP%]{margin-bottom:10px}"]}),n})();var St=p(68136),ue=p(30982),W=p(59019),Le=p(99466),Ee=p(68774),Rt=p(55657),de=p(38047),nt=p(18001),ve=p(97161),oe=p(47640);function mn(n,s){1&n&&(e.TgZ(0,"span",29),e.SDv(1,30),e.qZA())}function gn(n,s){1&n&&(e.TgZ(0,"span",29),e.SDv(1,31),e.qZA())}function Tn(n,s){1&n&&(e.TgZ(0,"span",29),e.SDv(1,32),e.qZA())}function fn(n,s){1&n&&(e.TgZ(0,"span",29),e.SDv(1,33),e.qZA())}function Cn(n,s){1&n&&(e.TgZ(0,"span",29),e.SDv(1,34),e.qZA())}function Sn(n,s){1&n&&(e.TgZ(0,"span",29),e.SDv(1,35),e.qZA())}function Rn(n,s){1&n&&(e.TgZ(0,"span",29),e.SDv(1,36),e.qZA())}function En(n,s){1&n&&(e.TgZ(0,"span",29),e.SDv(1,37),e.qZA())}let Mn=(()=>{class n{constructor(t,o,i,_,a){this.authStorageService=t,this.activeModal=o,this.actionLabels=i,this.iscsiService=_,this.notificationService=a,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 Z.d({user:new r.p4({value:"",disabled:!this.hasPermission}),password:new r.p4({value:"",disabled:!this.hasPermission}),mutual_user:new r.p4({value:"",disabled:!this.hasPermission}),mutual_password:new r.p4({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"),[r.kI.required],[r.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"),[r.kI.required],[r.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"),[r.kI.required],[r.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"),[r.kI.required],[r.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(nt.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(F.Kz),e.Y36(L.p4),e.Y36(X),e.Y36(ve.g))},n.\u0275cmp=e.Xpm({type:n,selectors:[["cd-iscsi-target-discovery-modal"]],decls:44,vars:13,consts:function(){let s,t,o,i,_,a,l,d,g,S,I,P,$;return s="Discovery Authentication",t="User",o="Password",i="Mutual User",_="Mutual Password",a="This field is required.",l="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 '/'.",S="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.",$="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"],["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"],a,l,d,g,S,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)(6,"div",6)(7,"div",7)(8,"label",8),e.SDv(9,9),e.qZA(),e.TgZ(10,"div",10),e._UZ(11,"input",11),e.YNc(12,mn,2,0,"span",12),e.YNc(13,gn,2,0,"span",12),e.qZA()(),e.TgZ(14,"div",7)(15,"label",13),e.SDv(16,14),e.qZA(),e.TgZ(17,"div",10)(18,"div",15),e._UZ(19,"input",16)(20,"button",17)(21,"cd-copy-2-clipboard-button",18),e.qZA(),e.YNc(22,Tn,2,0,"span",12),e.YNc(23,fn,2,0,"span",12),e.qZA()(),e.TgZ(24,"div",7)(25,"label",19),e.ynx(26),e.SDv(27,20),e.BQk(),e.qZA(),e.TgZ(28,"div",10),e._UZ(29,"input",21),e.YNc(30,Cn,2,0,"span",12),e.YNc(31,Sn,2,0,"span",12),e.qZA()(),e.TgZ(32,"div",7)(33,"label",22),e.SDv(34,23),e.qZA(),e.TgZ(35,"div",10)(36,"div",15),e._UZ(37,"input",24)(38,"button",25)(39,"cd-copy-2-clipboard-button",26),e.qZA(),e.YNc(40,Rn,2,0,"span",12),e.YNc(41,En,2,0,"span",12),e.qZA()()(),e.TgZ(42,"div",27)(43,"cd-form-button-panel",28),e.NdJ("submitActionEvent",function(){return o.submitAction()}),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(9),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(9),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)}},dependencies:[c.O5,r._Y,r.Fj,r.JJ,r.JL,r.sg,r.u,f.z,Ye.s,A.p,Tt.C,M.o,B.b,K.P,J.V]}),n})();var On=p(86969),it=p(34501),hn=p(30490),Me=p(94928);let Et=(()=>{class n{}return n.\u0275fac=function(t){return new(t||n)},n.\u0275cmp=e.Xpm({type:n,selectors:[["cd-iscsi-tabs"]],decls:7,vars:0,consts:function(){let s,t;return s="Overview",t="Targets",[[1,"nav","nav-tabs"],[1,"nav-item"],["routerLink","/block/iscsi/overview","routerLinkActive","active","ariaCurrentWhenActive","page",1,"nav-link"],s,["routerLink","/block/iscsi/targets","routerLinkActive","active","ariaCurrentWhenActive","page",1,"nav-link"],t]},template:function(t,o){1&t&&(e.TgZ(0,"ul",0)(1,"li",1)(2,"a",2),e.SDv(3,3),e.qZA()(),e.TgZ(4,"li",1)(5,"a",4),e.SDv(6,5),e.qZA()()())},dependencies:[m.rH,m.Od]}),n})();var An=p(68962);const Pn=["highlightTpl"],bn=["detailTable"],In=["tree"],Nn=function(){return["logged_in"]},Fn=function(){return["logged_out"]},Dn=function(n,s){return{"badge-success":n,"badge-danger":s}};function Ln(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,Dn,e.DdM(5,Nn).includes(t.data.status),e.DdM(6,Fn).includes(t.data.status))),e.xp6(1),e.hij(" ",t.data.status," ")}}function vn(n,s){if(1&n&&(e.TgZ(0,"div",9)(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 $n(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 Bn(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 Gn(n,s){if(1&n&&(e.YNc(0,$n,2,1,"span",12),e.YNc(1,Bn,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 yn=(()=>{class n{set content(t){this.detailTable=t,t&&t.updateColumns()}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)}}}}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=C().cloneDeep(this.selectedItem.target_controls);this.cephIscsiConfigVersion>10&&C().extend(t,C().cloneDeep(this.selectedItem.auth)),this.metadata={root:t};const o={target:{expanded:C().join(this.selectedItem.cdExecuting?[T.P.large,T.P.spinner,T.P.spin]:[T.P.large,T.P.bullseye]," ")},initiators:{expanded:C().join([T.P.large,T.P.user]," "),leaf:C().join([T.P.user]," ")},groups:{expanded:C().join([T.P.large,T.P.users]," "),leaf:C().join([T.P.users]," ")},disks:{expanded:C().join([T.P.large,T.P.disk]," "),leaf:C().join([T.P.disk]," ")},portals:{expanded:C().join([T.P.large,T.P.server]," "),leaf:C().join([T.P.server]," ")}},i=[];C().forEach(this.selectedItem.disks,d=>{const g="disk_"+d.pool+"_"+d.image;this.metadata[g]={controls:d.controls,backstore:d.backstore},["wwn","lun"].forEach(S=>{S in d&&(this.metadata[g][S]=d[S])}),i.push({name:`${d.pool}/${d.image}`,cdId:g,cdIcon:o.disks.leaf})});const _=[];C().forEach(this.selectedItem.portals,d=>{_.push({name:`${d.host}:${d.ip}`,cdIcon:o.portals.leaf})});const a=[];C().forEach(this.selectedItem.clients,d=>{const g=C().cloneDeep(d.auth);d.info&&(C().extend(g,d.info),delete g.state,C().forEach(Object.keys(d.info.state),P=>{g[P.toLowerCase()]=d.info.state[P]})),this.metadata["client_"+d.client_iqn]=g;const S=[];d.luns.forEach(P=>{S.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"),a.push({name:d.client_iqn,status:I,cdId:"client_"+d.client_iqn,children:S,cdIcon:o.initiators.leaf})});const l=[];C().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 S=[];d.members.forEach(I=>{S.push({name:I,cdId:"client_"+I})}),l.push({name:d.group_id,cdIcon:o.groups.leaf,children:[{name:"Disks",children:g,cdIcon:o.disks.expanded},{name:"Initiators",children:S,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:a,cdIcon:o.initiators.expanded},{name:"Groups",isExpanded:!0,children:l,cdIcon:o.groups.expanded}]}]}format(t){return"boolean"==typeof t?this.booleanTextPipe.transform(t):t}onNodeSelected(t,o){if(ne.iM.ACTIVATE(t,o,!0),o.data.cdId){this.title=o.data.name;const i=this.metadata[o.data.cdId]||{};"root"===o.data.cdId?(this.detailTable?.toggleColumn({prop:"default",isHidden:!0}),this.data=C().map(this.settings.target_default_controls,(_,a)=>({displayName:a,default:_=this.format(_),current:C().isUndefined(i[a])?_:this.format(i[a])})),this.cephIscsiConfigVersion>10&&["user","password","mutual_user","mutual_password"].forEach(_=>{this.data.push({displayName:_,default:null,current:i[_]})})):o.data.cdId.toString().startsWith("disk_")?(this.detailTable?.toggleColumn({prop:"default",isHidden:!0}),this.data=C().map(this.settings.disk_default_controls[i.backstore],(_,a)=>({displayName:a,default:_=this.format(_),current:C().isUndefined(i.controls[a])?_:this.format(i.controls[a])})),this.data.push({displayName:"backstore",default:this.iscsiBackstorePipe.transform(this.settings.default_backstore),current:this.iscsiBackstorePipe.transform(i.backstore)}),["wwn","lun"].forEach(_=>{_ in i&&this.data.push({displayName:_,default:void 0,current:i[_]})})):(this.detailTable?.toggleColumn({prop:"default",isHidden:!1}),this.data=C().map(i,(_,a)=>({displayName:a,default:void 0,current:this.format(_)})))}else this.data=void 0;this.detailTable?.updateColumns()}onUpdateData(){this.tree.treeModel.expandAll()}}return n.\u0275fac=function(t){return new(t||n)(e.Y36(Je.V),e.Y36(An.T))},n.\u0275cmp=e.Xpm({type:n,selectors:[["cd-iscsi-target-details"]],viewQuery:function(t,o){if(1&t&&(e.Gf(Pn,7),e.Gf(bn,5),e.Gf(In,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)(1,"div",1)(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,Ln,6,10,"ng-template",null,5,e.W1O),e.qZA()(),e.YNc(8,vn,5,4,"div",6),e.qZA(),e.YNc(9,Gn,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))},dependencies:[c.mk,c.O5,W.a,ne.qr]}),n})();function xn(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 Zn(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,xn,6,1,"ng-container",5),e.qZA()),2&n){const t=e.oxw();e.xp6(4),e.Q6J("ngIf",t.status)}}function wn(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 Hn=function(n){return[n]};function kn(n,s){if(1&n){const t=e.EpF();e.TgZ(0,"cd-table",7,8),e.NdJ("fetchData",function(){e.CHM(t);const i=e.oxw();return e.KtG(i.getTargets())})("setExpandedRow",function(i){e.CHM(t);const _=e.oxw();return e.KtG(_.setExpandedRow(i))})("updateSelection",function(i){e.CHM(t);const _=e.oxw();return e.KtG(_.updateSelection(i))}),e.TgZ(2,"div",9),e._UZ(3,"cd-table-actions",10),e.TgZ(4,"button",11),e.NdJ("click",function(){e.CHM(t);const i=e.oxw();return e.KtG(i.configureDiscoveryAuth())}),e._UZ(5,"i",12),e.ynx(6),e.SDv(7,13),e.BQk(),e.qZA()(),e.YNc(8,wn,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,Hn,t.icons.key)),e.xp6(3),e.Q6J("ngIf",t.expandedRow)}}let Kn=(()=>{class n extends St.o{constructor(t,o,i,_,a,l,d,g,S){super(S),this.authStorageService=t,this.iscsiService=o,this.joinPipe=i,this.taskListService=_,this.notAvailablePipe=a,this.modalService=l,this.taskWrapper=d,this.actionLabels=g,this.ngZone=S,this.available=void 0,this.selection=new Ee.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:Le.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&&t?.cdExecuting?t.cdExecuting:t&&C().isUndefined(t?.info)?"Unavailable gateway(s)":!t}getDeleteDisableDesc(){const t=this.selection.first();return t?.cdExecuting?t.cdExecuting:t&&C().isUndefined(t?.info)?"Unavailable gateway(s)":t&&t?.info?.num_sessions?"Target has active sessions":!t}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(ue.M,{itemDescription:"iSCSI target",itemNames:[t],submitActionObservable:()=>this.taskWrapper.wrapTaskAroundCall({task:new E.R("iscsi/target/delete",{target_iqn:t}),call:this.iscsiService.deleteTarget(t)})})}configureDiscoveryAuth(){this.modalService.show(Mn)}}return n.\u0275fac=function(t){return new(t||n)(e.Y36(oe.j),e.Y36(X),e.Y36(On.A),e.Y36(de.j),e.Y36(Rt.g),e.Y36(pe.Z),e.Y36(u.P),e.Y36(L.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([de.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,Zn,5,1,"cd-alert-panel",0),e.YNc(2,kn,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))},dependencies:[c.mk,c.O5,it.G,hn.K,W.a,Me.K,M.o,Et,yn]}),n})();var st=p(66369),qn=p(76446),Xn=p(90068);const Qn=["iscsiSparklineTpl"],zn=["iscsiPerSecondTpl"],Jn=["iscsiRelativeDateTpl"];function Yn(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 Vn(n,s){1&n&&(e.TgZ(0,"span",10),e._uU(1," n/a "),e.qZA())}function Un(n,s){if(1&n&&(e.YNc(0,Yn,2,2,"span",7),e.YNc(1,Vn,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 jn(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 Wn(n,s){1&n&&(e.TgZ(0,"span",10),e._uU(1," n/a "),e.qZA())}function ei(n,s){if(1&n&&(e.YNc(0,jn,2,1,"span",7),e.YNc(1,Wn,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 ti(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 oi(n,s){1&n&&(e.TgZ(0,"span",10),e._uU(1," n/a "),e.qZA())}function ni(n,s){if(1&n&&(e.YNc(0,ti,4,5,"span",7),e.YNc(1,oi,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 ii=(()=>{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:Le.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(st.n),e.Y36(Je.V))},n.\u0275cmp=e.Xpm({type:n,selectors:[["cd-iscsi"]],viewQuery:function(t,o){if(1&t&&(e.Gf(Qn,7),e.Gf(zn,7),e.Gf(Jn,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:15,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,"div")(4,"cd-table",1),e.NdJ("fetchData",function(){return o.refresh()}),e.qZA()(),e.TgZ(5,"legend"),e.SDv(6,2),e.qZA(),e.TgZ(7,"div"),e._UZ(8,"cd-table",3),e.qZA(),e.YNc(9,Un,2,2,"ng-template",null,4,e.W1O),e.YNc(11,ei,2,2,"ng-template",null,5,e.W1O),e.YNc(13,ni,2,2,"ng-template",null,6,e.W1O)),2&t&&(e.xp6(4),e.Q6J("data",o.gateways)("columns",o.gatewaysColumns),e.xp6(4),e.Q6J("data",o.images)("columns",o.imagesColumns))},dependencies:[c.O5,qn.l,W.a,Et,Xn.h,Rt.g]}),n})(),si=(()=>{class n{}return n.\u0275fac=function(t){return new(t||n)},n.\u0275mod=e.oAB({type:n}),n.\u0275inj=e.cJS({imports:[c.ez,Pe.m,F.Oz,m.Bz,r.u5,r.UX,F.ZQ,F.HK]}),n})();var _i=p(13464),ai=p(26215),ri=p(45435),Mt=p(36848);let q=class{constructor(s,t){this.http=s,this.timerService=t,this.REFRESH_INTERVAL=3e4,this.summaryDataSource=new ai.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,ri.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}`)}getPeerForPool(s){return this.http.get(`api/block/mirroring/pool/${s}/peer`)}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"})}};q.\u0275fac=function(s){return new(s||q)(e.LFG(ie.eN),e.LFG(Mt.f))},q.\u0275prov=e.Yz7({token:q,factory:q.\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)],q.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)],q.prototype,"importBootstrapToken",null),q=(0,D.gn)([V.o,(0,D.w6)("design:paramtypes",[ie.eN,Mt.f])],q);var _t=p(6481),li=p(68307),Ot=p(12627),ci=p(39749),di=p(13472),Oe=p(82945);function pi(n,s){1&n&&(e.TgZ(0,"span",25),e.SDv(1,26),e.qZA())}function ui(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()()),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 mi(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 Z.d({siteName:new r.p4("",{validators:[r.kI.required]}),pools:new r.nJ({},{validators:[this.validatePools()]}),token:new r.p4("",{})})}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((_,a)=>(_.push({name:a.name,mirror_mode:a.mirror_mode}),_),[]);const i=this.createBootstrapForm.get("pools");C().each(this.pools,_=>{const a=_.name,l="disabled"===_.mirror_mode,d=i.controls[a];d?l&&d.disabled?d.enable():!l&&d.enabled&&(d.disable(),d.setValue(!0)):i.addControl(a,new r.p4({value:!l,disabled:!l}))})})}ngOnDestroy(){this.subs&&this.subs.unsubscribe()}validatePools(){return t=>{let o=0;return C().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");C().each(i.controls,(g,S)=>{!0===g.value&&(t=S,g.disabled||o.push(S))});const _={mirror_mode:"image"},a=(0,_t.z)(this.rbdMirroringService.setSiteName(this.createBootstrapForm.getValue("siteName")),(0,ce.D)(o.map(g=>this.rbdMirroringService.updatePool(g,_))),this.rbdMirroringService.createBootstrapToken(t).pipe((0,li.b)(g=>this.createBootstrapForm.get("token").setValue(g.token)))).pipe((0,Ot.Z)()),l=()=>{this.rbdMirroringService.refresh(),this.createBootstrapForm.setErrors({cdSubmitButton:!0})};this.taskWrapper.wrapTaskAroundCall({task:new E.R("rbd/mirroring/bootstrap/create",{}),call:a}).subscribe({error:l,complete:l})}}return n.\u0275fac=function(t){return new(t||n)(e.Y36(F.Kz),e.Y36(q),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,_,a,l,d,g,S,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",a="Generate",l="Token",d="Generated token...",g="Close",S="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-end",3,"form","submitAction"],a,["for","token",1,"col-form-label"],l,["placeholder",d,"id","token","formControlName","token","readonly","",1,"form-control","resize-vertical"],["source","token",1,"float-end"],[1,"modal-footer"],["name",g,3,"backAction"],[1,"invalid-feedback"],S,[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)(6,"div",6)(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)(12,"label",9),e.SDv(13,10),e.qZA(),e._UZ(14,"input",11),e.YNc(15,pi,2,0,"span",12),e.qZA(),e.TgZ(16,"div",13)(17,"label",14),e.SDv(18,15),e.qZA(),e.YNc(19,ui,4,5,"div",16),e.YNc(20,mi,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)(24,"label",19)(25,"span"),e.SDv(26,20),e.qZA()(),e.TgZ(27,"textarea",21),e._uU(28," "),e.qZA()(),e._UZ(29,"cd-copy-2-clipboard-button",22),e.qZA(),e.TgZ(30,"div",23)(31,"cd-back-button",24),e.NdJ("backAction",function(){return o.activeModal.close()}),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)}},dependencies:[c.sg,c.O5,ci.w,di.W,f.z,Ye.s,Oe.U,M.o,B.b,K.P,J.V,r._Y,r.Fj,r.Wl,r.JJ,r.JL,r.sg,r.u,r.x0],styles:[".form-group.ng-invalid[_ngcontent-%COMP%] .invalid-feedback[_ngcontent-%COMP%]{display:block}"]}),n})();function Ti(n,s){1&n&&(e.TgZ(0,"span",26),e.SDv(1,27),e.qZA())}function fi(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 Ci(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()()),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 Si(n,s){1&n&&(e.TgZ(0,"span",26),e.SDv(1,32),e.qZA())}function Ri(n,s){1&n&&(e.TgZ(0,"span",26),e.SDv(1,33),e.qZA())}function Ei(n,s){1&n&&(e.TgZ(0,"span",26),e.SDv(1,34),e.qZA())}let Mi=(()=>{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 Z.d({siteName:new r.p4("",{validators:[r.kI.required]}),direction:new r.p4("rx-tx",{}),pools:new r.nJ({},{validators:[this.validatePools()]}),token:new r.p4("",{validators:[r.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((_,a)=>(_.push({name:a.name,mirror_mode:a.mirror_mode}),_),[]);const i=this.importBootstrapForm.get("pools");C().each(this.pools,_=>{const a=_.name,l="disabled"===_.mirror_mode,d=i.controls[a];d?l&&d.disabled?d.enable():!l&&d.enabled&&(d.disable(),d.setValue(!0)):i.addControl(a,new r.p4({value:!l,disabled:!l}))})})}ngOnDestroy(){this.subs&&this.subs.unsubscribe()}validatePools(){return t=>{let o=0;return C().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{}return{invalidToken:!0}}}import(){const t=[],o=[],i=this.importBootstrapForm.get("pools");C().each(i.controls,(g,S)=>{!0===g.value&&(t.push(S),g.disabled||o.push(S))});const _={mirror_mode:"image"};let a=(0,_t.z)(this.rbdMirroringService.setSiteName(this.importBootstrapForm.getValue("siteName")),(0,ce.D)(o.map(g=>this.rbdMirroringService.updatePool(g,_))));a=t.reduce((g,S)=>(0,_t.z)(g,this.rbdMirroringService.importBootstrapToken(S,this.importBootstrapForm.getValue("direction"),this.importBootstrapForm.getValue("token"))),a).pipe((0,Ot.Z)());const l=()=>{this.rbdMirroringService.refresh(),this.importBootstrapForm.setErrors({cdSubmitButton:!0})};this.taskWrapper.wrapTaskAroundCall({task:new E.R("rbd/mirroring/bootstrap/import",{}),call:a}).subscribe({error:l,complete:()=>{l(),this.activeModal.close()}})}}return n.\u0275fac=function(t){return new(t||n)(e.Y36(F.Kz),e.Y36(L.p4),e.Y36(q),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,_,a,l,d,g,S,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",a="Pools",l="Token",d="Generated token...",g="This field is required.",S="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"],a,["class","custom-control custom-checkbox",4,"ngFor","ngForOf"],["for","token",1,"col-form-label","required"],l,["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"],S,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)(6,"div",6)(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)(12,"label",9),e.SDv(13,10),e.qZA(),e._UZ(14,"input",11),e.YNc(15,Ti,2,0,"span",12),e.qZA(),e.TgZ(16,"div",8)(17,"label",13)(18,"span"),e.SDv(19,14),e.qZA()(),e.TgZ(20,"select",15),e.YNc(21,fi,2,2,"option",16),e.qZA()(),e.TgZ(22,"div",17)(23,"label",18),e.SDv(24,19),e.qZA(),e.YNc(25,Ci,4,5,"div",20),e.YNc(26,Si,2,0,"span",12),e.qZA(),e.TgZ(27,"div",8)(28,"label",21),e.SDv(29,22),e.qZA(),e.TgZ(30,"textarea",23),e._uU(31," "),e.qZA(),e.YNc(32,Ri,2,0,"span",12),e.YNc(33,Ei,2,0,"span",12),e.qZA()(),e.TgZ(34,"div",24)(35,"cd-form-button-panel",25),e.NdJ("submitActionEvent",function(){return o.import()}),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)}},dependencies:[c.sg,c.O5,f.z,A.p,Oe.U,M.o,B.b,K.P,J.V,r._Y,r.YN,r.Kr,r.Fj,r.Wl,r.EJ,r.JJ,r.JL,r.sg,r.u,r.x0]}),n})();var se=p(69158),Oi=p(58111);let at=(()=>{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 hi=["healthTmpl"];function Ai(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 Pi=(()=>{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(q),e.Y36(Oi.F))},n.\u0275cmp=e.Xpm({type:n,selectors:[["cd-mirroring-daemons"]],viewQuery:function(t,o){if(1&t&&e.Gf(hi,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,Ai,3,4,"ng-template",null,1,e.W1O)),2&t&&e.Q6J("data",o.data)("columns",o.columns)("autoReload",-1)("status",o.tableStatus)},dependencies:[c.mk,W.a,at]}),n})();var ht=p(59376);const bi=["stateTmpl"],Ii=["syncTmpl"],Ni=["progressTmpl"],Fi=["entriesBehindPrimaryTpl"];function Di(n,s){if(1&n){const t=e.EpF();e.TgZ(0,"cd-table",14),e.NdJ("fetchData",function(){e.CHM(t);const i=e.oxw();return e.KtG(i.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 Li(n,s){if(1&n){const t=e.EpF();e.TgZ(0,"cd-table",14),e.NdJ("fetchData",function(){e.CHM(t);const i=e.oxw();return e.KtG(i.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 vi(n,s){if(1&n){const t=e.EpF();e.TgZ(0,"cd-table",14),e.NdJ("fetchData",function(){e.CHM(t);const i=e.oxw();return e.KtG(i.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 $i(n,s){if(1&n&&(e.TgZ(0,"span",15),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 Bi(n,s){1&n&&e._UZ(0,"div")}function Gi(n,s){if(1&n&&e._UZ(0,"ngb-progressbar",19),2&n){const t=e.oxw().value;e.Q6J("value",t)("showValue",!0)}}function yi(n,s){if(1&n&&(e.YNc(0,Bi,1,0,"div",16),e.TgZ(1,"div",17),e.YNc(2,Gi,1,2,"ngb-progressbar",18),e.qZA()),2&n){const t=s.row;e.Q6J("ngIf","Replaying"===t.state),e.xp6(2),e.Q6J("ngIf","Replaying"===t.state)}}function xi(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," ")}}function Zi(n,s){1&n&&(e.TgZ(0,"span",21),e._uU(1,"-"),e.qZA())}function wi(n,s){if(1&n&&(e.YNc(0,xi,2,1,"span",16),e.YNc(1,Zi,2,0,"span",20)),2&n){const t=s.row;e.Q6J("ngIf","journal"===t.mirror_mode),e.xp6(1),e.Q6J("ngIf","snapshot"===t.mirror_mode)}}let Hi=(()=>{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:"syncing_percent",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",cellTemplate:this.entriesBehindPrimaryTpl,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(q))},n.\u0275cmp=e.Xpm({type:n,selectors:[["cd-mirroring-images"]],viewQuery:function(t,o){if(1&t&&(e.Gf(bi,7),e.Gf(Ii,7),e.Gf(Ni,7),e.Gf(Fi,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),e.iGM(i=e.CRH())&&(o.entriesBehindPrimaryTpl=i.first)}},decls:21,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",""],["entriesBehindPrimaryTpl",""],["columnMode","flex",3,"data","columns","autoReload","status","fetchData"],[3,"ngClass"],[4,"ngIf"],[1,"w-100","h-100","d-flex","justify-content-center","align-items-center"],["type","info","class","w-100",3,"value","showValue",4,"ngIf"],["type","info",1,"w-100",3,"value","showValue"],["ngbTooltip","Not available with mirroring snapshot mode",4,"ngIf"],["ngbTooltip","Not available with mirroring snapshot mode"]]},template:function(t,o){if(1&t&&(e.TgZ(0,"nav",0,1),e.ynx(2,2),e.TgZ(3,"a",3),e.SDv(4,4),e.qZA(),e.YNc(5,Di,1,4,"ng-template",5),e.BQk(),e.ynx(6,6),e.TgZ(7,"a",3),e.SDv(8,7),e.qZA(),e.YNc(9,Li,1,4,"ng-template",5),e.BQk(),e.ynx(10,8),e.TgZ(11,"a",3),e.SDv(12,9),e.qZA(),e.YNc(13,vi,1,4,"ng-template",5),e.BQk(),e.qZA(),e._UZ(14,"div",10),e.YNc(15,$i,3,4,"ng-template",null,11,e.W1O),e.YNc(17,yi,3,2,"ng-template",null,12,e.W1O),e.YNc(19,wi,2,2,"ng-template",null,13,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)}},dependencies:[c.mk,c.O5,W.a,ht.m,F.uN,F.Pz,F.nv,F.Vx,F.tO,F.Dy,F.Ly,F._L,at]}),n})();var At=p(70882);class ki{}function Ki(n,s){1&n&&(e.TgZ(0,"span",24),e.SDv(1,25),e.qZA())}function qi(n,s){1&n&&(e.TgZ(0,"span",24),e.SDv(1,26),e.qZA())}function Xi(n,s){1&n&&(e.TgZ(0,"span",24),e.SDv(1,27),e.qZA())}function Qi(n,s){1&n&&(e.TgZ(0,"span",24),e.SDv(1,28),e.qZA())}function zi(n,s){1&n&&(e.TgZ(0,"span",24),e.SDv(1,29),e.qZA())}function Ji(n,s){1&n&&(e.TgZ(0,"span",24),e.SDv(1,30),e.qZA())}let Yi=(()=>{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 Z.d({clusterName:new r.p4("",{validators:[r.kI.required,this.validateClusterName]}),clientID:new r.p4("",{validators:[r.kI.required,this.validateClientID]}),monAddr:new r.p4("",{validators:[this.validateMonAddr]}),key:new r.p4("",{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{}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 ki;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 E.R("rbd/mirroring/peer/edit",{pool_name:this.poolName}),call:this.rbdMirroringService.updatePeer(this.poolName,this.peerUUID,t)}:{task:new E.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(F.Kz),e.Y36(L.p4),e.Y36(q),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,_,a,l,d,g,S,I,P,$,y,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",a="Name...",l="CephX ID",d="CephX ID...",g="Monitor Addresses",S="Comma-delimited addresses...",I="CephX Key",P="Base64-encoded key...",$="This field is required.",y="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",a,"id","clusterName","name","clusterName","formControlName","clusterName","autofocus","",1,"form-control"],["class","invalid-feedback",4,"ngIf"],["for","clientID",1,"col-form-label","required"],l,["type","text","placeholder",d,"id","clientID","name","clientID","formControlName","clientID",1,"form-control"],["for","monAddr",1,"col-form-label"],g,["type","text","placeholder",S,"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"],$,y,Q,Y,ee,te]},template:function(t,o){if(1&t&&(e.TgZ(0,"cd-modal",0)(1,"span",1),e.SDv(2,2),e.qZA(),e.ynx(3,3),e.TgZ(4,"form",4,5)(6,"div",6)(7,"p")(8,"span"),e.tHW(9,7),e._UZ(10,"kbd")(11,"kbd"),e.N_p(),e.qZA()(),e.TgZ(12,"div",8)(13,"label",9),e.SDv(14,10),e.qZA(),e._UZ(15,"input",11),e.YNc(16,Ki,2,0,"span",12),e.YNc(17,qi,2,0,"span",12),e.qZA(),e.TgZ(18,"div",8)(19,"label",13),e.SDv(20,14),e.qZA(),e._UZ(21,"input",15),e.YNc(22,Xi,2,0,"span",12),e.YNc(23,Qi,2,0,"span",12),e.qZA(),e.TgZ(24,"div",8)(25,"label",16)(26,"span"),e.SDv(27,17),e.qZA()(),e._UZ(28,"input",18),e.YNc(29,zi,2,0,"span",12),e.qZA(),e.TgZ(30,"div",8)(31,"label",19)(32,"span"),e.SDv(33,20),e.qZA()(),e._UZ(34,"input",21),e.YNc(35,Ji,2,0,"span",12),e.qZA()(),e.TgZ(36,"div",22)(37,"cd-form-button-panel",23),e.NdJ("submitActionEvent",function(){return o.update()}),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)}},dependencies:[c.O5,f.z,A.p,Oe.U,M.o,B.b,K.P,J.V,r._Y,r.Fj,r.JJ,r.JL,r.sg,r.u]}),n})();const Vi=["healthTmpl"],Ui=["localTmpl"],ji=["remoteTmpl"];function Wi(n,s){if(1&n&&(e.TgZ(0,"span",6),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)}}function es(n,s){1&n&&(e.TgZ(0,"span",7),e.SDv(1,8),e.qZA())}function ts(n,s){1&n&&(e.TgZ(0,"span",9),e.SDv(1,10),e.qZA())}let ns=(()=>{class n{constructor(t,o,i,_,a){this.authStorageService=t,this.rbdMirroringService=o,this.modalService=i,this.taskWrapper=_,this.router=a,this.selection=new Ee.r,this.tableStatus=new se.E,this.data=[],this.permission=this.authStorageService.getPermissions().rbdMirroring;const l={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()},S={permission:"delete",icon:T.P.destroy,name:"Delete Peer",click:()=>this.deletePeersModal(),visible:()=>!!this.getPeerUUID()};this.tableActions=[l,d,g,S]}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",headerTemplate:this.localTmpl,flexGrow:2},{prop:"image_remote_count",name:"# Remote",headerTemplate:this.remoteTmpl,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:[L.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(Yi,o)}deletePeersModal(){const t=this.selection.first().name,o=this.getPeerUUID();this.modalRef=this.modalService.show(ue.M,{itemDescription:"mirror peer",itemNames:[`${t} (${o})`],submitActionObservable:()=>new At.y(i=>{this.taskWrapper.wrapTaskAroundCall({task:new E.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(q),e.Y36(pe.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(Vi,7),e.Gf(Ui,7),e.Gf(ji,7)),2&t){let i;e.iGM(i=e.CRH())&&(o.healthTmpl=i.first),e.iGM(i=e.CRH())&&(o.localTmpl=i.first),e.iGM(i=e.CRH())&&(o.remoteTmpl=i.first)}},decls:9,vars:7,consts:function(){let s,t,o,i;return s="Local image count",t="# Local",o="Remote image count",i="# Remote",[["columnMode","flex","identifier","name","forceIdentifier","true","selectionType","single",3,"data","columns","autoReload","status","fetchData","updateSelection"],[1,"table-actions",3,"permission","selection","tableActions"],["healthTmpl",""],["localTmpl",""],["remoteTmpl",""],["name","modal"],[3,"ngClass"],["ngbTooltip",s],t,["ngbTooltip",o],i]},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,Wi,3,4,"ng-template",null,2,e.W1O),e.YNc(4,es,2,0,"ng-template",null,3,e.W1O),e.YNc(6,ts,2,0,"ng-template",null,4,e.W1O),e._UZ(8,"router-outlet",5)),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))},dependencies:[c.mk,W.a,Me.K,m.lC,F._L,at]}),n})();function is(n,s){if(1&n&&e._UZ(0,"i",19),2&n){const t=e.oxw();e.Q6J("ngClass",t.icons.edit)}}function ss(n,s){if(1&n&&e._UZ(0,"i",19),2&n){const t=e.oxw();e.Q6J("ngClass",t.icons.check)}}let _s=(()=>{class n{constructor(t,o,i,_){this.authStorageService=t,this.rbdMirroringService=o,this.modalService=i,this.taskWrapper=_,this.selection=new Ee.r,this.peersExist=!0,this.subs=new _i.w,this.editing=!1,this.icons=T.P,this.permission=this.authStorageService.getPermissions().rbdMirroring;const a={permission:"update",icon:T.P.upload,click:()=>this.createBootstrapModal(),name:"Create Bootstrap Token",canBePrimary:()=>!0,disable:()=>!1},l={permission:"update",icon:T.P.download,click:()=>this.importBootstrapModal(),name:"Import Bootstrap Token",disable:()=>!1};this.tableActions=[a,l]}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 Z.d({siteName:new r.p4({value:"",disabled:!0})})}ngOnDestroy(){this.subs.unsubscribe()}updateSiteName(){this.editing&&this.taskWrapper.wrapTaskAroundCall({task:new E.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(Mi,{siteName:this.siteName})}}return n.\u0275fac=function(t){return new(t||n)(e.Y36(oe.j),e.Y36(q),e.Y36(pe.Z),e.Y36(u.P))},n.\u0275cmp=e.Xpm({type:n,selectors:[["cd-mirroring"]],decls:31,vars:10,consts:function(){let s,t,o,i;return s="Site Name",t="Daemons",o="Pools",i="Images",[["name","rbdmirroringForm","novalidate","",3,"formGroup"],["formDir","ngForm"],[1,"row","mb-3"],[1,"col-md-auto"],["for","siteName",1,"col-form-label"],s,[1,"col-sm-4","d-flex"],["type","text","id","siteName","name","siteName","formControlName","siteName",1,"form-control"],["id","editSiteName",1,"btn","btn-light",3,"click"],[3,"ngClass",4,"ngIf"],[3,"source","byId"],[1,"col"],[1,"table-actions","float-end",3,"permission","selection","tableActions"],[1,"row"],[1,"col-sm-6"],t,o,[1,"col-md-12"],i,[3,"ngClass"]]},template:function(t,o){1&t&&(e.TgZ(0,"form",0,1)(2,"div",2)(3,"div",3)(4,"label",4),e.SDv(5,5),e.qZA()(),e.TgZ(6,"div",6),e._UZ(7,"input",7),e.TgZ(8,"button",8),e.NdJ("click",function(){return o.updateSiteName()}),e.YNc(9,is,1,1,"i",9),e.YNc(10,ss,1,1,"i",9),e.qZA(),e._UZ(11,"cd-copy-2-clipboard-button",10),e.qZA(),e.TgZ(12,"div",11),e._UZ(13,"cd-table-actions",12),e.qZA()()(),e.TgZ(14,"div",13)(15,"div",14)(16,"legend"),e.SDv(17,15),e.qZA(),e.TgZ(18,"div"),e._UZ(19,"cd-mirroring-daemons"),e.qZA()(),e.TgZ(20,"div",14)(21,"legend"),e.SDv(22,16),e.qZA(),e.TgZ(23,"div"),e._UZ(24,"cd-mirroring-pools"),e.qZA()()(),e.TgZ(25,"div",13)(26,"div",17)(27,"legend"),e.SDv(28,18),e.qZA(),e.TgZ(29,"div"),e._UZ(30,"cd-mirroring-images"),e.qZA()()()),2&t&&(e.Q6J("formGroup",o.rbdmirroringForm),e.xp6(7),e.uIk("disabled",!o.editing||null),e.xp6(1),e.uIk("title",o.editing?"Save":"Edit"),e.xp6(1),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(2),e.Q6J("permission",o.permission)("selection",o.selection)("tableActions",o.tableActions))},dependencies:[c.mk,c.O5,Ye.s,Me.K,M.o,B.b,J.V,r._Y,r.Fj,r.JJ,r.JL,r.sg,r.u,Pi,Hi,ns]}),n})();class as{}function rs(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 ls(n,s){1&n&&(e.TgZ(0,"span",17),e.SDv(1,18),e.qZA())}let cs=(()=>{class n{constructor(t,o,i,_,a,l){this.activeModal=t,this.actionLabels=o,this.rbdMirroringService=i,this.taskWrapper=_,this.route=a,this.location=l,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 Z.d({mirrorMode:new r.p4("",{validators:[r.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 as;t.mirror_mode=this.editModeForm.getValue("mirrorMode"),this.taskWrapper.wrapTaskAroundCall({task:new E.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(F.Kz),e.Y36(L.p4),e.Y36(q),e.Y36(u.P),e.Y36(m.gz),e.Y36(c.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-select"],[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)(6,"div",6)(7,"p"),e.ynx(8),e.tHW(9,7),e._UZ(10,"kbd")(11,"kbd"),e.N_p(),e.BQk(),e.qZA(),e.TgZ(12,"div",8)(13,"label",9)(14,"span"),e.SDv(15,10),e.qZA()(),e.TgZ(16,"select",11),e.YNc(17,rs,2,2,"option",12),e.qZA(),e.YNc(18,ls,2,0,"span",13),e.qZA()(),e.TgZ(19,"div",14)(20,"cd-form-button-panel",15),e.NdJ("submitActionEvent",function(){return o.update()}),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)}},dependencies:[c.sg,c.O5,f.z,A.p,M.o,K.P,J.V,r._Y,r.YN,r.Kr,r.EJ,r.JJ,r.JL,r.sg,r.u]}),n})();var Pt=p(7357),ds=p(28049),ps=p(43190),Ve=p(80842),rt=p(30633),Ue=p(47557),us=p(28211);class ms{}var Ie=(()=>{return(n=Ie||(Ie={}))[n.V1=1]="V1",n[n.V2=2]="V2",Ie;var n})();class gs{constructor(){this.features=[]}}class Ts{constructor(){this.features=[]}}class fs{}class Cs extends fs{constructor(){super(...arguments),this.features=[]}}class lt{constructor(){this.features=[],this.remove_scheduling=!1}}var je=(()=>{return(n=je||(je={})).editing="editing",n.cloning="cloning",n.copying="copying",je;var n})(),bt=p(18372),Ss=p(17932),Rs=p(60950);function Es(n,s){if(1&n&&(e.TgZ(0,"div",9)(1,"label",58),e.SDv(2,59),e.ALo(3,"titlecase"),e.qZA(),e.TgZ(4,"div",12),e._UZ(5,"input",60)(6,"hr"),e.qZA()()),2&n){const t=e.oxw(2);e.xp6(3),e.pQV(e.lcZ(3,1,t.action)),e.QtT(2)}}function Ms(n,s){1&n&&(e.TgZ(0,"span",61),e.ynx(1),e.SDv(2,62),e.BQk(),e.qZA())}function Os(n,s){1&n&&(e.TgZ(0,"span",61),e.ynx(1),e.SDv(2,63),e.BQk(),e.qZA())}function hs(n,s){1&n&&e._UZ(0,"input",64)}function As(n,s){1&n&&(e.TgZ(0,"option",50),e.SDv(1,67),e.qZA()),2&n&&e.Q6J("ngValue",null)}function Ps(n,s){1&n&&(e.TgZ(0,"option",50),e.SDv(1,68),e.qZA()),2&n&&e.Q6J("ngValue",null)}function bs(n,s){1&n&&(e.TgZ(0,"option",50),e.SDv(1,69),e.qZA()),2&n&&e.Q6J("ngValue",null)}function Is(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 Ns(n,s){if(1&n){const t=e.EpF();e.TgZ(0,"select",65),e.NdJ("change",function(){e.CHM(t);const i=e.oxw(2);return e.KtG(i.setPoolMirrorMode())}),e.YNc(1,As,2,1,"option",66),e.YNc(2,Ps,2,1,"option",66),e.YNc(3,bs,2,1,"option",66),e.YNc(4,Is,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 Fs(n,s){1&n&&(e.TgZ(0,"span",61),e.SDv(1,71),e.qZA())}const Ds=function(n,s){return[n,s]};function Ls(n,s){if(1&n&&(e.TgZ(0,"div",9)(1,"div",20),e._UZ(2,"i",72),e.qZA()()),2&n){const t=e.oxw(2);e.xp6(2),e.Q6J("ngClass",e.WLB(1,Ds,t.icons.spinner,t.icons.spin))}}function vs(n,s){1&n&&e._UZ(0,"input",76)}function $s(n,s){1&n&&(e.TgZ(0,"option",50),e.SDv(1,78),e.qZA()),2&n&&e.Q6J("ngValue",null)}function Bs(n,s){1&n&&(e.TgZ(0,"option",50),e.SDv(1,79),e.qZA()),2&n&&e.Q6J("ngValue",null)}function Gs(n,s){1&n&&(e.TgZ(0,"option",50),e.SDv(1,80),e.qZA()),2&n&&e.Q6J("ngValue",null)}function ys(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 xs(n,s){if(1&n&&(e.TgZ(0,"select",77),e.YNc(1,$s,2,1,"option",66),e.YNc(2,Bs,2,1,"option",66),e.YNc(3,Gs,2,1,"option",66),e.YNc(4,ys,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 Zs(n,s){if(1&n&&(e.TgZ(0,"div",9)(1,"label",73),e._uU(2," Namespace "),e.qZA(),e.TgZ(3,"div",12),e.YNc(4,vs,1,0,"input",74),e.YNc(5,xs,5,4,"select",75),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 ws(n,s){1&n&&(e.TgZ(0,"cd-helper")(1,"span"),e.SDv(2,81),e.qZA()())}function Hs(n,s){1&n&&e._UZ(0,"input",87)}function ks(n,s){1&n&&(e.TgZ(0,"option",50),e.SDv(1,89),e.qZA()),2&n&&e.Q6J("ngValue",null)}function Ks(n,s){1&n&&(e.TgZ(0,"option",50),e.SDv(1,90),e.qZA()),2&n&&e.Q6J("ngValue",null)}function qs(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 Xs(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 Qs(n,s){if(1&n){const t=e.EpF();e.TgZ(0,"select",88),e.NdJ("change",function(i){e.CHM(t);const _=e.oxw(3);return e.KtG(_.onDataPoolChange(i.target.value))}),e.YNc(1,ks,2,1,"option",66),e.YNc(2,Ks,2,1,"option",66),e.YNc(3,qs,2,1,"option",66),e.YNc(4,Xs,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 zs(n,s){1&n&&(e.TgZ(0,"span",61),e.SDv(1,91),e.qZA())}const We=function(n){return{required:n}};function Js(n,s){if(1&n&&(e.TgZ(0,"div",9)(1,"label",82)(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,Hs,1,0,"input",85),e.YNc(7,Qs,5,4,"select",86),e.YNc(8,zs,2,0,"span",14),e.qZA()()),2&n){e.oxw();const t=e.MAs(2),o=e.oxw();e.xp6(2),e.Q6J("ngClass",e.VKq(4,We,"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 Ys(n,s){1&n&&(e.TgZ(0,"span",61),e.SDv(1,92),e.qZA())}function Vs(n,s){1&n&&(e.TgZ(0,"span",61),e.SDv(1,93),e.qZA())}function Us(n,s){1&n&&(e.TgZ(0,"span",61),e.SDv(1,94),e.qZA())}function js(n,s){if(1&n&&e._UZ(0,"cd-helper",98),2&n){const t=e.oxw().$implicit;e.s9C("html",t.helperHtml)}}function Ws(n,s){if(1&n&&(e.TgZ(0,"div",21),e._UZ(1,"input",95),e.TgZ(2,"label",96),e._uU(3),e.qZA(),e.YNc(4,js,1,1,"cd-helper",97),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 It=function(n){return["edit",n]},Nt=function(n){return{modal:n}},Ft=function(n){return{outlets:n}},Dt=function(n){return["/block/mirroring",n]};function e_(n,s){if(1&n&&(e.TgZ(0,"cd-helper")(1,"span"),e.tHW(2,99),e._UZ(3,"b")(4,"a",100),e.N_p(),e.qZA()()),2&n){const t=e.oxw(2);e.xp6(4),e.Q6J("routerLink",e.VKq(7,Dt,e.VKq(5,Ft,e.VKq(3,Nt,e.VKq(1,It,t.currentPoolName)))))}}function t_(n,s){if(1&n&&(e.TgZ(0,"cd-helper")(1,"span"),e.tHW(2,105),e._UZ(3,"b")(4,"a",100),e.N_p(),e.qZA()()),2&n){const t=e.oxw(4);e.xp6(4),e.Q6J("routerLink",e.VKq(7,Dt,e.VKq(5,Ft,e.VKq(3,Nt,e.VKq(1,It,t.currentPoolName)))))}}function o_(n,s){if(1&n){const t=e.EpF();e.TgZ(0,"div",102)(1,"input",103),e.NdJ("change",function(){e.CHM(t);const i=e.oxw(3);return e.KtG(i.setExclusiveLock())}),e.qZA(),e.TgZ(2,"label",104),e._uU(3),e.ALo(4,"titlecase"),e.qZA(),e.YNc(5,t_,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 n_(n,s){if(1&n&&(e.TgZ(0,"div"),e.YNc(1,o_,6,8,"div",101),e.qZA()),2&n){const t=e.oxw(2);e.xp6(1),e.Q6J("ngForOf",t.mirroringOptions)}}function i_(n,s){if(1&n&&(e.TgZ(0,"div",9)(1,"label",106),e.tHW(2,107),e._UZ(3,"cd-helper",108),e.N_p(),e.qZA(),e.TgZ(4,"div",12),e._UZ(5,"input",109),e.qZA()()),2&n){const t=e.oxw(2);e.xp6(5),e.uIk("disabled",!1===t.peerConfigured||null)}}function s_(n,s){if(1&n){const t=e.EpF();e.TgZ(0,"a",110),e.NdJ("click",function(){return e.CHM(t),e.oxw(2).advancedEnabled=!0,e.KtG(!1)}),e.SDv(1,111),e.qZA()}}function __(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 a_(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 r_(n,s){1&n&&(e.TgZ(0,"span",61),e.SDv(1,112),e.qZA())}function l_(n,s){1&n&&(e.TgZ(0,"span",61),e.SDv(1,113),e.qZA())}function c_(n,s){1&n&&(e.TgZ(0,"span",61),e.SDv(1,114),e.qZA())}function d_(n,s){1&n&&(e.TgZ(0,"span",61),e.SDv(1,115),e.qZA())}function p_(n,s){if(1&n){const t=e.EpF();e.TgZ(0,"div",1)(1,"form",2,3)(3,"div",4)(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,Es,7,3,"div",8),e.TgZ(10,"div",9)(11,"label",10),e.SDv(12,11),e.qZA(),e.TgZ(13,"div",12),e._UZ(14,"input",13),e.YNc(15,Ms,3,0,"span",14),e.YNc(16,Os,3,0,"span",14),e.qZA()(),e.TgZ(17,"div",15),e.NdJ("change",function(i){e.CHM(t);const _=e.oxw();return e.KtG(_.onPoolChange(i.target.value))}),e.TgZ(18,"label",16),e.SDv(19,17),e.qZA(),e.TgZ(20,"div",12),e.YNc(21,hs,1,0,"input",18),e.YNc(22,Ns,5,4,"select",19),e.YNc(23,Fs,2,0,"span",14),e.qZA()(),e.YNc(24,Ls,3,4,"div",8),e.YNc(25,Zs,6,2,"div",8),e.TgZ(26,"div",9)(27,"div",20)(28,"div",21)(29,"input",22),e.NdJ("change",function(){e.CHM(t);const i=e.oxw();return e.KtG(i.onUseDataPoolChange())}),e.qZA(),e.TgZ(30,"label",23),e.SDv(31,24),e.qZA(),e.YNc(32,ws,3,0,"cd-helper",25),e.qZA()()(),e.YNc(33,Js,9,6,"div",8),e.TgZ(34,"div",9)(35,"label",26),e.SDv(36,27),e.qZA(),e.TgZ(37,"div",12),e._UZ(38,"input",28),e.YNc(39,Ys,2,0,"span",14),e.YNc(40,Vs,2,0,"span",14),e.YNc(41,Us,2,0,"span",14),e.qZA()(),e.TgZ(42,"div",29)(43,"label",30),e.SDv(44,31),e.qZA(),e.TgZ(45,"div",12),e.YNc(46,Ws,5,6,"div",32),e.qZA()(),e.TgZ(47,"div",9)(48,"div",20)(49,"div",21)(50,"input",33),e.NdJ("change",function(){e.CHM(t);const i=e.oxw();return e.KtG(i.setMirrorMode())}),e.qZA(),e.TgZ(51,"label",34),e._uU(52,"Mirroring"),e.qZA(),e.YNc(53,e_,5,9,"cd-helper",25),e.qZA(),e.YNc(54,n_,2,1,"div",25),e.qZA()(),e.YNc(55,i_,6,1,"div",8),e.TgZ(56,"div",35)(57,"div",36),e.YNc(58,s_,2,0,"a",37),e.qZA()(),e.TgZ(59,"div",38)(60,"legend",39),e.SDv(61,40),e.qZA(),e.TgZ(62,"div",41)(63,"h4",39),e.SDv(64,42),e.qZA(),e.TgZ(65,"div",9)(66,"label",43),e.tHW(67,44),e._UZ(68,"cd-helper"),e.N_p(),e.qZA(),e.TgZ(69,"div",12)(70,"select",45),e.YNc(71,__,2,2,"option",46),e.qZA()()(),e.TgZ(72,"div",9)(73,"label",47),e.tHW(74,48),e._UZ(75,"cd-helper"),e.N_p(),e.qZA(),e.TgZ(76,"div",12)(77,"select",49)(78,"option",50),e.SDv(79,51),e.qZA(),e.YNc(80,a_,2,2,"option",46),e.qZA(),e.YNc(81,r_,2,0,"span",14),e.YNc(82,l_,2,0,"span",14),e.qZA()(),e.TgZ(83,"div",9)(84,"label",52),e.tHW(85,53),e._UZ(86,"cd-helper"),e.N_p(),e.qZA(),e.TgZ(87,"div",12),e._UZ(88,"input",54),e.YNc(89,c_,2,0,"span",14),e.YNc(90,d_,2,0,"span",14),e.qZA()()(),e.TgZ(91,"cd-rbd-configuration-form",55),e.NdJ("changes",function(i){e.CHM(t);const _=e.oxw();return e.KtG(_.getDirtyConfigurationValues=i)}),e.qZA()()(),e.TgZ(92,"div",56)(93,"cd-form-button-panel",57),e.NdJ("submitActionEvent",function(){e.CHM(t);const i=e.oxw();return e.KtG(i.submit())}),e.ALo(94,"titlecase"),e.ALo(95,"upperFirst"),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,36,o.action))(e.lcZ(7,38,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(44,We,"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(1),e.Q6J("ngIf",o.rbdForm.showError("size",t,"pattern")),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(46,We,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(48,We,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(94,40,o.action)+" "+e.lcZ(95,42,o.resource))}}let $e=(()=>{class n extends k.E{constructor(t,o,i,_,a,l,d,g,S,I){super(),this.authStorageService=t,this.route=o,this.poolService=i,this.rbdService=_,this.formatter=a,this.taskWrapper=l,this.dimlessBinaryPipe=d,this.actionLabels=g,this.router=S,this.rbdMirroringService=I,this.namespaces=[],this.namespacesByPoolCache={},this.pools=null,this.allPools=null,this.dataPools=null,this.allDataPools=[],this.featuresList=[],this.initializeConfigData=new Pt.t(1),this.peerConfigured=!1,this.advancedEnabled=!1,this.rbdFormMode=je,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 Pt.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,helperHtml:"Feature can be disabled but can't be re-enabled later"},layering:{desc:"Layering",requires:null,allowEnable:!1,allowDisable:!1,helperHtml:"Feature flag can't be manipulated after the image is created. Disabling this option will also disable the Protect and Clone actions on Snapshot"},"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 C().map(t,(o,i)=>Object.assign(o,{key:i}))}createForm(){this.rbdForm=new Z.d({parent:new r.p4(""),name:new r.p4("",{validators:[r.kI.required,r.kI.pattern(/^[^@/]+?$/)]}),pool:new r.p4(null,{validators:[r.kI.required]}),namespace:new r.p4(null),useDataPool:new r.p4(!1),dataPool:new r.p4(null),size:new r.p4(null,{updateOn:"blur"}),obj_size:new r.p4(this.defaultObjectSize),features:new Z.d(this.featuresList.reduce((t,o)=>(t[o.key]=new r.p4({value:!1,disabled:!!o.initDisabled}),t),{})),mirroring:new r.p4(""),schedule:new r.p4("",{validators:[r.kI.pattern(/^([0-9]+)d|([0-9]+)h|([0-9]+)m$/)]}),mirroringMode:new r.p4(""),stripingUnit:new r.p4(this.defaultStripingUnit),stripingCount:new r.p4(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===Ie.V1?(this.rbdForm.get("deep-flatten").disable(),this.rbdForm.get("layering").disable(),this.rbdForm.get("exclusive-lock").disable()):(this.rbdForm.get("deep-flatten").value||this.rbdForm.get("deep-flatten").disable(),this.rbdForm.get("layering").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(),this.checkPeersConfigured()}checkPeersConfigured(t){var o=t||this.rbdForm.get("pool").value;this.rbdMirroringService.getPeerForPool(o).subscribe(i=>{i.length>0&&(this.peerConfigured=!0)})}setPoolMirrorMode(){this.currentPoolName=this.mode===this.rbdFormMode.editing?this.response?.pool_name:this.rbdForm.getValue("pool"),this.currentPoolName&&(this.rbdMirroringService.refresh(),this.rbdMirroringService.subscribeSummary(t=>{const o=t.content_data.pools.find(i=>i.name===this.currentPoolName);this.poolMirrorMode=o.mirror_mode,"disabled"===o.mirror_mode&&(this.mirroring=!1,this.rbdForm.get("mirroring").setValue(this.mirroring),this.rbdForm.get("mirroring").disable())})),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,C().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=v.N.fromString(decodeURIComponent(o.image_spec));o.snap&&(this.snapName=decodeURIComponent(o.snap)),t.rbd=this.rbdService.get(i),this.checkPeersConfigured(i.poolName)}):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,ce.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 a=null;i.value&&null==_.value&&(a={required:!0}),_.setErrors(a);const l=o.get("size"),d=o.get("obj_size"),g=t.toBytes(null!=d.value?d.value:this.defaultObjectSize),S=o.get("stripingCount"),I=null!=S.value?S.value:this.defaultStripingCount;let P=null;null===l.value?P={required:!0}:I*g>t.toBytes(l.value)&&(P={invalidSizeObject:!0}),l.setErrors(P);const $=o.get("stripingUnit");let y=null;null===$.value&&null!==S.value?y={required:!0}:null!==$.value&&t.toBytes($.value)>g&&(y={invalidStripingUnit:!0}),$.setErrors(y);let Q=null;return null===S.value&&null!==$.value?Q={required:!0}:I<1&&(Q={min:!0}),S.setErrors(Q),null}}deepBoxCheck(t,o){this.getDependentChildFeatures(t).forEach(_=>{const a=this.rbdForm.get(_.key);o?a.enable({emitEvent:!1}):(a.disable({emitEvent:!1}),a.setValue(!1,{emitEvent:!1}),this.deepBoxCheck(_.key,o));const l=this.rbdForm.get("features");this.mode===this.rbdFormMode.editing&&l.get(_.key).enabled&&(-1!==this.response.features_name.indexOf(_.key)&&!_.allowDisable||-1===this.response.features_name.indexOf(_.key)&&!_.allowEnable)&&l.get(_.key).disable()})}getDependentChildFeatures(t){return C().filter(this.features,o=>o.requires===t)||[]}interlockCheck(t,o){const i=this.featuresList.find(_=>_.key===t);if(this.response){const _=null!=i.interlockedWith,a=this.featuresList.find(d=>d.interlockedWith===i.key),l=!!this.response.features_name.find(d=>d===i.key);if(_){if(l!==!!this.response.features_name.find(g=>g===i.interlockedWith))return}else if(a&&!!this.response.features_name.find(g=>g===a.key)!==l)return}o?C().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");C().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 v.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"===t?.mirror_mode||t.features_name.includes("journaling")?(this.mirroring=!0,this.rbdForm.get("mirroring").setValue(this.mirroring),this.rbdForm.get("mirroringMode").setValue(t?.mirror_mode),this.rbdForm.get("schedule").setValue(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:rt.h.image})}createRequest(){const t=new Cs;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")),C().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 E.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 lt;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")),C().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 gs;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,rt.h.image),t}editAction(){const t=new v.N(this.response.pool_name,this.response.namespace,this.response.name);return this.taskWrapper.wrapTaskAroundCall({task:new E.R("rbd/edit",{image_spec:t.toString()}),call:this.rbdService.update(t,this.editRequest())})}cloneAction(){const t=this.cloneRequest(),o=new v.N(this.response.pool_name,this.response.namespace,this.response.name);return this.taskWrapper.wrapTaskAroundCall({task:new E.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 Ts;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,rt.h.image),t}copyAction(){const t=this.copyRequest(),o=new v.N(this.response.pool_name,this.response.namespace,this.response.name);return this.taskWrapper.wrapTaskAroundCall({task:new E.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,ds.P)(),(0,ps.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(H),e.Y36(us.H),e.Y36(u.P),e.Y36(Ue.$),e.Y36(L.p4),e.Y36(m.F0),e.Y36(q))},n.\u0275cmp=e.Xpm({type:n,selectors:[["cd-rbd-form"]],features:[e.qOj],decls:1,vars:1,consts:function(){let s,t,o,i,_,a,l,d,g,S,I,P,$,y,Q,Y,ee,te,w,_e,ae,O,me,ge,Te,fe,Ce,Se,Re,G,Ge,ye,xe,Ze,we,He,ke,Ke,qe,Xe,Qe,ze;return s="" + "\ufffd0\ufffd" + " " + "\ufffd1\ufffd" + "",t="Name",o="Pool",i="Use a dedicated data pool",_="Size",a="e.g., 10GiB",l="Features",d="Advanced",g="Striping",S="Object size" + "\ufffd#68\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/#68\ufffd" + "",I="Stripe unit" + "\ufffd#75\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/#75\ufffd" + "",P="-- Select stripe unit --",$="Stripe count" + "\ufffd#86\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/#86\ufffd" + "",y="" + "\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...",O="-- No namespaces available --",me="-- Select a namespace --",ge="You need more than one pool with the rbd application label use to use a dedicated data pool.",Te="Data pool",fe="Dedicated pool that stores the object-data of the RBD.",Ce="Loading...",Se="-- No data pools available --",Re="This field is required.",G="This field is required.",Ge="You have to increase the size.",ye="Size must be a number or in a valid format. eg: 5 GiB",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" + "",Ze="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. To create mirror snapshots, you must import or create and have available peers to mirror",He="Schedule Interval " + "\ufffd#3\ufffd" + "" + "\ufffd/#3\ufffd" + "",ke="e.g., 12h or 1d or 10m",Ke="Advanced...",qe="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-select","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",a,"defaultUnit","GiB","cdDimlessBinary","",1,"form-control"],["formGroupName","features",1,"form-group","row"],["for","features",1,"cd-col-form-label"],l,["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-end 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"],S,["id","obj_size","name","obj_size","formControlName","obj_size",1,"form-select"],[3,"value",4,"ngFor","ngForOf"],["for","stripingUnit",1,"cd-col-form-label",3,"ngClass"],I,["id","stripingUnit","name","stripingUnit","formControlName","stripingUnit",1,"form-select"],[3,"ngValue"],P,["for","stripingCount",1,"cd-col-form-label",3,"ngClass"],$,["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"],y,["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-select",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-select","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-select"],ae,O,me,ge,["for","dataPool",1,"cd-col-form-label"],Te,["html",fe],["class","form-control","type","text","placeholder","Data pool name...","id","dataPool","name","dataPool","formControlName","dataPool",4,"ngIf"],["id","dataPool","name","dataPool","class","form-select","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-select",3,"change"],Ce,Se,Re,G,Ge,ye,["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 ms-2",4,"ngFor","ngForOf"],[1,"custom-control","custom-radio","ms-2"],["type","radio","name","mirroringMode","formControlName","mirroringMode",1,"form-check-input",3,"id","value","change"],[1,"form-check-label",3,"for"],Ze,[1,"cd-col-form-label"],He,["html",we],["id","schedule","name","schedule","type","text","formControlName","schedule","placeholder",ke,1,"form-control"],["href","",1,"float-end","margin-right-md",3,"click"],Ke,qe,Xe,Qe,ze]},template:function(t,o){1&t&&e.YNc(0,p_,96,50,"div",0),2&t&&e.Q6J("cdFormLoading",o.loading)},dependencies:[c.mk,c.sg,c.O5,r._Y,r.YN,r.Kr,r.Fj,r.wV,r.Wl,r.EJ,r._,r.JJ,r.JL,r.sg,r.u,r.x0,bt.S,A.p,Oe.U,Ss.Q,ft.y,M.o,B.b,K.P,J.V,m.rH,Rs.d,c.rS,ot.m]}),n})();var Lt=p(71225),ct=p(36169),u_=p(72427),dt=p(51847),m_=p(16738),he=p.n(m_),pt=p(62862),g_=p(52266);function T_(n,s){1&n&&(e.TgZ(0,"div",18)(1,"span"),e.SDv(2,19),e.qZA()())}function f_(n,s){1&n&&(e.TgZ(0,"span",20),e.SDv(1,21),e.qZA())}function C_(n,s){1&n&&(e.TgZ(0,"span",20),e.SDv(1,22),e.qZA())}function S_(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 R_=(()=>{class n{constructor(t,o,i,_,a){this.rbdService=t,this.activeModal=o,this.actionLabels=i,this.fb=_,this.taskWrapper=a,this.createForm()}createForm(){this.moveForm=this.fb.group({expiresAt:["",[z.h.custom("format",t=>!(""===t||he()(t,"YYYY-MM-DD HH:mm:ss").isValid())),z.h.custom("expired",t=>he()().isAfter(t))]]})}ngOnInit(){this.imageSpec=new v.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=he()(o,"YYYY-MM-DD HH:mm:ss").diff(he()(),"seconds",!0)),t<0&&(t=0),this.taskWrapper.wrapTaskAroundCall({task:new E.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(H),e.Y36(F.Kz),e.Y36(L.p4),e.Y36(pt.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,_,a,l;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.",a="Wrong date format. Please use \"YYYY-MM-DD HH:mm:ss\".",l="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"],a,l,[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)(6,"div",6),e.YNc(7,T_,3,0,"div",7),e.TgZ(8,"p"),e.tHW(9,8),e._UZ(10,"kbd")(11,"kbd"),e.N_p(),e.qZA(),e.TgZ(12,"div",9)(13,"label",10),e.SDv(14,11),e.qZA(),e.TgZ(15,"input",12,13),e.NdJ("click",function(){e.CHM(i);const a=e.MAs(16);return e.KtG(a.open())})("keypress",function(){e.CHM(i);const a=e.MAs(16);return e.KtG(a.close())}),e.qZA(),e.YNc(17,f_,2,0,"span",14),e.YNc(18,C_,2,0,"span",14),e.qZA()(),e.TgZ(19,"div",15)(20,"cd-form-button-panel",16),e.NdJ("submitActionEvent",function(){return o.moveImage()}),e.qZA()()(),e.BQk(),e.qZA(),e.YNc(21,S_,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)}},dependencies:[c.O5,r._Y,r.Fj,r.JJ,r.JL,r.sg,r.u,F.o8,f.z,g_.J,A.p,M.o,B.b,K.P,J.V]}),n})();var E_=p(60251),vt=p(76317),M_=p(25917),$t=p(51295),ut=p(60737),O_=p(74255),Bt=p(71099),Gt=p(79765);function h_(n,s){1&n&&(e.TgZ(0,"span",16),e.SDv(1,17),e.qZA())}function A_(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)}}function P_(n,s){1&n&&(e.TgZ(0,"cd-helper"),e.SDv(1,25),e.qZA())}function b_(n,s){if(1&n){const t=e.EpF();e.TgZ(0,"div",7)(1,"div",20)(2,"div",21)(3,"input",22),e.NdJ("change",function(){e.CHM(t);const i=e.oxw(2);return e.KtG(i.onMirrorCheckBoxChange())}),e.qZA(),e.TgZ(4,"label",23),e.SDv(5,24),e.qZA(),e.YNc(6,P_,2,0,"cd-helper",13),e.qZA()()()}if(2&n){const t=s.ngIf;e.xp6(3),e.uIk("disabled",!(t.length>0)||null),e.xp6(3),e.Q6J("ngIf",!t.length>0)}}function I_(n,s){if(1&n&&(e.ynx(0),e.YNc(1,b_,7,2,"div",19),e.ALo(2,"async"),e.BQk()),2&n){const t=e.oxw();e.xp6(1),e.Q6J("ngIf",e.lcZ(2,1,t.peerConfigured$))}}let N_=(()=>{class n{constructor(t,o,i,_,a,l){this.activeModal=t,this.rbdService=o,this.taskManagerService=i,this.notificationService=_,this.actionLabels=a,this.rbdMirrorService=l,this.editing=!1,this.onSubmit=new Gt.xQ,this.action=this.actionLabels.CREATE,this.resource="RBD Snapshot",this.createForm()}createForm(){this.snapshotForm=new Z.d({snapshotName:new r.p4("",{validators:[r.kI.required]}),mirrorImageSnapshot:new r.p4(!1,{})})}ngOnInit(){this.peerConfigured$=this.rbdMirrorService.getPeerForPool(this.poolName)}setSnapName(t){this.snapName=t,this.snapshotForm.get("snapshotName").setValue(t)}onMirrorCheckBoxChange(){!0===this.snapshotForm.getValue("mirrorImageSnapshot")?(this.snapshotForm.get("snapshotName").setValue(""),this.snapshotForm.get("snapshotName").clearValidators()):(this.snapshotForm.get("snapshotName").setValue(this.snapName),this.snapshotForm.get("snapshotName").setValidators([r.kI.required]),this.snapshotForm.get("snapshotName").updateValueAndValidity())}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 v.N(this.poolName,this.namespace,this.imageName),i=new E.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=this.snapshotForm.getValue("mirrorImageSnapshot"),i=new v.N(this.poolName,this.namespace,this.imageName),_=new E.R;_.name="rbd/snap/create",_.metadata={image_spec:i.toString(),snapshot_name:t},this.rbdService.createSnapshot(i,t,o).toPromise().then(()=>{this.taskManagerService.subscribe(_.name,_.metadata,a=>{this.notificationService.notifyTask(a)}),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(F.Kz),e.Y36(H),e.Y36(Bt.k),e.Y36(ve.g),e.Y36(L.p4),e.Y36(q))},n.\u0275cmp=e.Xpm({type:n,selectors:[["cd-rbd-snapshot-form-modal"]],decls:21,vars:18,consts:function(){let s,t,o,i,_,a;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",_="Mirror Image Snapshot",a="The peer must be registered to do this action.",[[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,["class","form-group row",4,"ngIf"],[1,"cd-col-form-offset"],[1,"custom-control","custom-checkbox"],["type","checkbox","formControlName","mirrorImageSnapshot","name","mirrorImageSnapshot","id","mirrorImageSnapshot",1,"custom-control-input",3,"change"],["for","mirrorImageSnapshot",1,"custom-control-label"],_,a]},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)(8,"div",6)(9,"div",7)(10,"label",8),e.SDv(11,9),e.qZA(),e.TgZ(12,"div",10),e._UZ(13,"input",11),e.YNc(14,h_,2,0,"span",12),e.YNc(15,A_,3,1,"span",13),e.qZA()(),e.YNc(16,I_,3,3,"ng-container",13),e.qZA(),e.TgZ(17,"div",14)(18,"cd-form-button-panel",15),e.NdJ("submitActionEvent",function(){return o.submit()}),e.ALo(19,"titlecase"),e.ALo(20,"upperFirst"),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,10,o.action))(e.lcZ(4,12,o.resource)),e.QtT(2),e.xp6(2),e.Q6J("formGroup",o.snapshotForm),e.xp6(7),e.uIk("disabled","snapshot"===o.mirroring&&!0===o.snapshotForm.getValue("mirrorImageSnapshot")||null),e.xp6(1),e.Q6J("ngIf",o.snapshotForm.showError("snapshotName",i,"required")),e.xp6(1),e.Q6J("ngIf","snapshot"===o.mirroring&&!0===o.snapshotForm.getValue("mirrorImageSnapshot")||null),e.xp6(1),e.Q6J("ngIf","snapshot"===o.mirroring||null),e.xp6(2),e.Q6J("form",o.snapshotForm)("submitText",e.lcZ(19,14,o.action)+" "+e.lcZ(20,16,o.resource))}},dependencies:[c.O5,r._Y,r.Fj,r.Wl,r.JJ,r.JL,r.sg,r.u,bt.S,f.z,A.p,Oe.U,M.o,B.b,K.P,J.V,c.Ov,c.rS,ot.m]}),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)||!i.hasSingleSelection},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.getProtectDisableDesc(i,this.featuresName)},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.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)||!i.hasSingleSelection},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]}getProtectDisableDesc(s,t){return!(s.hasSingleSelection&&!s.first().cdExecuting)||!t?.includes("layering")&&"The layering feature needs to be enabled on parent image"}getCloneDisableDesc(s){return!(s.hasSingleSelection&&!s.first().cdExecuting)||1===this.cloneFormatVersion&&!s.first().is_protected&&"Snapshot must be protected in order to clone."}disableForMirrorSnapshot(s){return s.hasSingleSelection&&"snapshot"===s.first().mirror_mode&&s.first().name.includes(".mirror.")}}class D_{}var Be=p(96102);const L_=["nameTpl"],v_=["rollbackTpl"];function $_(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 B_=(()=>{class n{constructor(t,o,i,_,a,l,d,g,S,I,P){this.authStorageService=t,this.modalService=o,this.dimlessBinaryPipe=i,this.cdDatePipe=_,this.rbdService=a,this.taskManagerService=l,this.notificationService=d,this.summaryService=g,this.taskListService=S,this.actionLabels=I,this.cdr=P,this.snapshots=[],this.selection=new Ee.r,this.builders={"rbd/snap/create":$=>{const y=new D_;return y.name=$.snapshot_name,y}},this.permission=this.authStorageService.getPermissions().rbdImage}ngOnInit(){this.columns=[{name:"Name",prop:"name",cellTransformation:Le.e.executing,flexGrow:2},{name:"Size",prop:"size",flexGrow:1,cellClass:"text-right",pipe:this.dimlessBinaryPipe},{name:"Used",prop:"disk_usage",flexGrow:1,cellClass:"text-right",pipe:this.dimlessBinaryPipe},{name:"State",prop:"is_protected",flexGrow:1,cellTransformation:Le.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 v.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,M_.of)(this.snapshots),null,_=>{$t.T.updateChanged(this,{data:_})&&(this.cdr.detectChanges(),this.data=[...this.data])},()=>{$t.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,(_,a)=>_.name===a.metadata.snapshot_name,this.builders)}ngOnChanges(){this.columns&&(this.imageSpec=new v.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(N_,{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}_${he()().toISOString(!0)}`,this.modalRef.componentInstance.setSnapName(o),this.modalRef.componentInstance.onSubmit.subscribe(_=>{const a=new ut.o;a.name=t,a.metadata={image_spec:this.imageSpec.toString(),snapshot_name:_},this.summaryService.addRunningTask(a)})}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 E.R;i.name="rbd/snap/edit";const _=new v.N(this.poolName,this.namespace,this.rbdName);i.metadata={image_spec:_.toString(),snapshot_name:t},this.rbdService.protectSnapshot(_,t,!o).toPromise().then(()=>{const a=new ut.o;a.name=i.name,a.metadata=i.metadata,this.summaryService.addRunningTask(a),this.taskManagerService.subscribe(i.name,i.metadata,l=>{this.notificationService.notifyTask(l)})})}_asyncTask(t,o,i){const _=new E.R;_.name=o,_.metadata={image_spec:new v.N(this.poolName,this.namespace,this.rbdName).toString(),snapshot_name:i};const a=new v.N(this.poolName,this.namespace,this.rbdName);this.rbdService[t](a,i).toPromise().then(()=>{const l=new ut.o;l.name=_.name,l.metadata=_.metadata,this.summaryService.addRunningTask(l),this.modalRef.close(),this.taskManagerService.subscribe(l.name,l.metadata,d=>{this.notificationService.notifyTask(d)})}).catch(()=>{this.modalRef.componentInstance.stopLoadingSpinner()})}rollbackModal(){const t=this.selection.selected[0].name,o=new v.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(ct.Y,i)}deleteSnapshotModal(){const t=this.selection.selected[0].name;this.modalRef=this.modalService.show(ue.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(pe.Z),e.Y36(Ue.$),e.Y36(Be.N),e.Y36(H),e.Y36(Bt.k),e.Y36(ve.g),e.Y36(O_.J),e.Y36(de.j),e.Y36(L.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(L_,5),e.Gf(v_,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",primary:"primary",rbdName:"rbdName"},features:[e._Bn([de.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,$_,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))},dependencies:[W.a,Me.K],changeDetection:0}),n})();var G_=p(42176),y_=p(41039);const x_=["poolConfigurationSourceTpl"];function Z_(n,s){1&n&&(e.ynx(0),e.tHW(1,3),e._UZ(2,"strong"),e.N_p(),e.BQk())}function w_(n,s){if(1&n&&(e.TgZ(0,"span")(1,"span",38),e._uU(2),e.qZA()()),2&n){const t=s.$implicit;e.xp6(2),e.Oqu(t)}}function H_(n,s){if(1&n&&(e.TgZ(0,"span")(1,"span",39),e.SDv(2,40),e.qZA()()),2&n){e.oxw(3);const t=e.MAs(1);e.xp6(1),e.Q6J("ngbTooltip",t)}}function k_(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 K_(n,s){if(1&n&&(e.TgZ(0,"span")(1,"span",39),e.SDv(2,41),e.qZA()()),2&n){e.oxw(3);const t=e.MAs(1);e.xp6(1),e.Q6J("ngbTooltip",t)}}function q_(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 X_(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 Q_(n,s){if(1&n&&(e.TgZ(0,"span"),e._uU(1),e.YNc(2,X_,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 z_(n,s){1&n&&(e.TgZ(0,"span"),e._uU(1,"-"),e.qZA())}function J_(n,s){if(1&n&&(e.TgZ(0,"table",17)(1,"tbody")(2,"tr")(3,"td",18),e.SDv(4,19),e.qZA(),e.TgZ(5,"td",20),e._uU(6),e.qZA()(),e.TgZ(7,"tr")(8,"td",21),e.SDv(9,22),e.qZA(),e.TgZ(10,"td"),e._uU(11),e.qZA()(),e.TgZ(12,"tr")(13,"td",21),e.SDv(14,23),e.qZA(),e.TgZ(15,"td"),e._uU(16),e.ALo(17,"empty"),e.qZA()(),e.TgZ(18,"tr")(19,"td",21),e.SDv(20,24),e.qZA(),e.TgZ(21,"td"),e._uU(22),e.ALo(23,"cdDate"),e.qZA()(),e.TgZ(24,"tr")(25,"td",21),e.SDv(26,25),e.qZA(),e.TgZ(27,"td"),e._uU(28),e.ALo(29,"dimlessBinary"),e.qZA()(),e.TgZ(30,"tr")(31,"td",21),e.SDv(32,26),e.qZA(),e.TgZ(33,"td"),e._uU(34),e.ALo(35,"dimless"),e.qZA()(),e.TgZ(36,"tr")(37,"td",21),e.SDv(38,27),e.qZA(),e.TgZ(39,"td"),e._uU(40),e.ALo(41,"dimlessBinary"),e.qZA()(),e.TgZ(42,"tr")(43,"td",21),e.SDv(44,28),e.qZA(),e.TgZ(45,"td"),e.YNc(46,w_,3,1,"span",29),e.qZA()(),e.TgZ(47,"tr")(48,"td",21),e.SDv(49,30),e.qZA(),e.TgZ(50,"td"),e.YNc(51,H_,3,1,"span",1),e.YNc(52,k_,3,3,"span",1),e.qZA()(),e.TgZ(53,"tr")(54,"td",21),e.SDv(55,31),e.qZA(),e.TgZ(56,"td"),e.YNc(57,K_,3,1,"span",1),e.YNc(58,q_,3,3,"span",1),e.qZA()(),e.TgZ(59,"tr")(60,"td",21),e.SDv(61,32),e.qZA(),e.TgZ(62,"td"),e._uU(63),e.ALo(64,"dimlessBinary"),e.qZA()(),e.TgZ(65,"tr")(66,"td",21),e.SDv(67,33),e.qZA(),e.TgZ(68,"td"),e._uU(69),e.qZA()(),e.TgZ(70,"tr")(71,"td",21),e.SDv(72,34),e.qZA(),e.TgZ(73,"td"),e.YNc(74,Q_,4,4,"span",1),e.YNc(75,z_,2,0,"span",1),e.qZA()(),e.TgZ(76,"tr")(77,"td",21),e.SDv(78,35),e.qZA(),e.TgZ(79,"td"),e._uU(80),e.qZA()(),e.TgZ(81,"tr")(82,"td",21),e.SDv(83,36),e.qZA(),e.TgZ(84,"td"),e._uU(85),e.qZA()(),e.TgZ(86,"tr")(87,"td",21),e.SDv(88,37),e.qZA(),e.TgZ(89,"td"),e._uU(90),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 Y_(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)("primary",t.selection.primary)("namespace",t.selection.namespace)("mirroring",t.selection.mirror_mode)("rbdName",t.selection.name)}}function V_(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 U_(n,s){if(1&n&&e._UZ(0,"cd-grafana",44),2&n){const t=e.oxw(2);e.Q6J("grafanaPath",t.rbdDashboardUrl)("type","metrics")}}function j_(n,s){if(1&n&&(e.ynx(0),e.TgZ(1,"nav",4,5),e.ynx(3,6),e.TgZ(4,"a",7),e.SDv(5,8),e.qZA(),e.YNc(6,J_,91,31,"ng-template",9),e.BQk(),e.ynx(7,10),e.TgZ(8,"a",7),e.SDv(9,11),e.qZA(),e.YNc(10,Y_,1,7,"ng-template",9),e.BQk(),e.ynx(11,12),e.TgZ(12,"a",7),e.SDv(13,13),e.qZA(),e.YNc(14,V_,1,1,"ng-template",9),e.BQk(),e.ynx(15,14),e.TgZ(16,"a",7),e.SDv(17,15),e.qZA(),e.YNc(18,U_,1,2,"ng-template",9),e.BQk(),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 ea(n,s){1&n&&(e.ynx(0),e.TgZ(1,"strong",49),e.SDv(2,50),e.qZA(),e.BQk())}function ta(n,s){1&n&&(e.TgZ(0,"span",51),e.SDv(1,52),e.qZA())}function oa(n,s){if(1&n&&(e.YNc(0,ea,3,0,"ng-container",47),e.YNc(1,ta,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 na=(()=>{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(x_,7),e.Gf(F.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,_,a,l,d,g,S,I,P,$,y,Q,Y,ee,te,w,_e,ae,O,me,ge,Te,fe,Ce,Se,Re;return s="Only available for RBD images with " + "\ufffd#2\ufffd" + "fast-diff" + "\ufffd/#2\ufffd" + " enabled",t="Details",o="Snapshots",i="Configuration",_="Performance",a="Name",l="Pool",d="Data Pool",g="Created",S="Size",I="Objects",P="Object size",$="Features",y="Provisioned",Q="Total provisioned",Y="Striping unit",ee="Striping count",te="Parent",w="Block name prefix",_e="Order",ae="Format Version",O="N/A",me="N/A",ge="RBD details",Te="Information can not be displayed for RBD in status 'Removing'.",fe="This setting overrides the global value",Ce="Image",Se="This is the global value. No value for this option has been set for this image.",Re="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"],a,[1,"w-75"],[1,"bold"],l,d,g,S,I,P,$,[4,"ngFor","ngForOf"],y,Q,Y,ee,te,w,_e,ae,[1,"badge","badge-dark","me-2"],["placement","top",1,"form-text","text-muted",3,"ngbTooltip"],O,me,[3,"snapshots","featuresName","poolName","primary","namespace","mirroring","rbdName"],[3,"data"],["title",ge,"uid","YhCYGcuZz","grafanaStyle","one",3,"grafanaPath","type"],["type","warning"],Te,[4,"ngIf","ngIfElse"],["global",""],["ngbTooltip",fe],Ce,["ngbTooltip",Se],Re]},template:function(t,o){1&t&&(e.YNc(0,Z_,3,0,"ng-template",null,0,e.W1O),e.YNc(2,j_,20,1,"ng-container",1),e.YNc(3,W_,3,0,"ng-container",1),e.YNc(4,oa,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))},dependencies:[c.sg,c.O5,F.uN,F.Pz,F.nv,F.Vx,F.tO,F.Dy,F._L,vt.F,it.G,ht.m,B_,G_.P,Ue.$,st.n,Be.N,y_.W]}),n})();const et=function(){return{exact:!0}};function ia(n,s){1&n&&(e.TgZ(0,"li",1)(1,"a",9),e.SDv(2,10),e.qZA()()),2&n&&(e.xp6(1),e.Q6J("routerLinkActiveOptions",e.DdM(1,et)))}let tt=(()=>{class n{constructor(t){this.authStorageService=t,this.grafanaPermission=this.authStorageService.getPermissions().grafana}}return n.\u0275fac=function(t){return new(t||n)(e.Y36(oe.j))},n.\u0275cmp=e.Xpm({type:n,selectors:[["cd-rbd-tabs"]],decls:11,vars:7,consts:function(){let s,t,o,i;return s="Images",t="Namespaces",o="Trash",i="Overall Performance",[[1,"nav","nav-tabs"],[1,"nav-item"],["routerLink","/block/rbd","routerLinkActive","active","ariaCurrentWhenActive","page",1,"nav-link",3,"routerLinkActiveOptions"],s,["routerLink","/block/rbd/namespaces","routerLinkActive","active","ariaCurrentWhenActive","page",1,"nav-link",3,"routerLinkActiveOptions"],t,["routerLink","/block/rbd/trash","routerLinkActive","active","ariaCurrentWhenActive","page",1,"nav-link",3,"routerLinkActiveOptions"],o,["class","nav-item",4,"ngIf"],["routerLink","/block/rbd/performance","routerLinkActive","active","ariaCurrentWhenActive","page",1,"nav-link",3,"routerLinkActiveOptions"],i]},template:function(t,o){1&t&&(e.TgZ(0,"ul",0)(1,"li",1)(2,"a",2),e.SDv(3,3),e.qZA()(),e.TgZ(4,"li",1)(5,"a",4),e.SDv(6,5),e.qZA()(),e.TgZ(7,"li",1)(8,"a",6),e.SDv(9,7),e.qZA()(),e.YNc(10,ia,3,2,"li",8),e.qZA()),2&t&&(e.xp6(2),e.Q6J("routerLinkActiveOptions",e.DdM(4,et)),e.xp6(3),e.Q6J("routerLinkActiveOptions",e.DdM(5,et)),e.xp6(3),e.Q6J("routerLinkActiveOptions",e.DdM(6,et)),e.xp6(2),e.Q6J("ngIf",o.grafanaPermission.read))},dependencies:[c.O5,m.rH,m.Od]}),n})();const sa=["usageTpl"],_a=["parentTpl"],aa=["nameTpl"],ra=["ScheduleTpl"],la=["mirroringTpl"],ca=["flattenTpl"],da=["deleteTpl"],pa=["removingStatTpl"],ua=["forcePromoteConfirmation"],ma=["usedTmpl"],ga=["totalUsedTmpl"],Ta=["imageUsageTpl"];function fa(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 Ca(n,s){if(1&n&&(e.TgZ(0,"span"),e._uU(1),e.YNc(2,fa,2,1,"span",13),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 Sa(n,s){1&n&&(e.TgZ(0,"span"),e._uU(1,"-"),e.qZA())}function Ra(n,s){if(1&n&&(e.YNc(0,Ca,4,4,"span",13),e.YNc(1,Sa,2,0,"span",13)),2&n){const t=s.value;e.Q6J("ngIf",t),e.xp6(1),e.Q6J("ngIf",!t)}}function Ea(n,s){if(1&n&&(e.TgZ(0,"span",17),e._uU(1),e.qZA()),2&n){const t=e.oxw().value;e.xp6(1),e.Oqu(t[0])}}function Ma(n,s){if(1&n&&(e.TgZ(0,"span",17),e._uU(1),e.qZA()),2&n){const t=e.oxw().value;e.xp6(1),e.Oqu(t[1])}}function Oa(n,s){1&n&&(e.TgZ(0,"span",17),e.SDv(1,18),e.qZA())}function ha(n,s){1&n&&(e.TgZ(0,"span",17),e.SDv(1,19),e.qZA())}function Aa(n,s){if(1&n&&(e.TgZ(0,"span",17),e._uU(1),e.qZA()),2&n){const t=e.oxw().value;e.xp6(1),e.Oqu(t)}}function Pa(n,s){if(1&n&&(e.YNc(0,Ea,2,1,"span",14),e._uU(1,"\xa0 "),e.YNc(2,Ma,2,1,"span",15),e._uU(3,"\xa0 "),e.YNc(4,Oa,2,0,"span",15),e.YNc(5,ha,2,0,"span",15),e.YNc(6,Aa,2,1,"ng-template",null,16,e.W1O)),2&n){const t=s.value,o=s.row,i=e.MAs(7);e.Q6J("ngIf",3===t.length)("ngIfElse",i),e.xp6(2),e.Q6J("ngIf",3===t.length),e.xp6(2),e.Q6J("ngIf",!0===o.primary),e.xp6(1),e.Q6J("ngIf",!1===o.primary)}}function ba(n,s){if(1&n&&(e.TgZ(0,"span",17),e._uU(1),e.ALo(2,"cdDate"),e.qZA()),2&n){const t=e.oxw().value;e.xp6(1),e.Oqu(e.lcZ(2,1,t[2]))}}function Ia(n,s){1&n&&e.YNc(0,ba,3,3,"span",15),2&n&&e.Q6J("ngIf",3===s.value.length)}function Na(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")(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 Fa(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 Da(n,s){if(1&n&&(e.ynx(0),e.TgZ(1,"span"),e.SDv(2,23),e.qZA(),e.TgZ(3,"ul"),e.YNc(4,Fa,2,1,"li",24),e.qZA(),e.BQk()),2&n){const t=e.oxw(2).snapshots;e.xp6(4),e.Q6J("ngForOf",t)}}function La(n,s){if(1&n&&(e.TgZ(0,"div",21)(1,"span"),e.SDv(2,22),e.qZA(),e._UZ(3,"br"),e.YNc(4,Da,5,1,"ng-container",13),e.qZA()),2&n){const t=e.oxw().snapshots;e.xp6(4),e.Q6J("ngIf",t.length>0)}}function va(n,s){1&n&&e.YNc(0,La,5,1,"div",20),2&n&&e.Q6J("ngIf",s.hasSnapshots)}const $a=function(n,s){return[n,s]};function Ba(n,s){if(1&n&&e._UZ(0,"i",26),2&n){const t=e.oxw(2);e.Q6J("ngClass",e.WLB(1,$a,t.icons.spinner,t.icons.spin))}}function Ga(n,s){if(1&n&&(e.TgZ(0,"span",26),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 ya(n,s){if(1&n&&e._UZ(0,"i",28),2&n){const t=e.oxw(2);e.Gre("",t.icons.warning," warn")}}function xa(n,s){if(1&n&&(e.YNc(0,Ba,1,4,"i",25),e.TgZ(1,"span",26),e._uU(2),e.qZA(),e.YNc(3,Ga,2,2,"span",25),e.YNc(4,ya,1,3,"i",27)),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)}}function Za(n,s){if(1&n&&(e.TgZ(0,"cd-alert-panel",29),e._uU(1),e.qZA(),e.TgZ(2,"div",30),e.tHW(3,31),e._UZ(4,"strong"),e.N_p(),e.qZA()),2&n){const t=e.oxw();e.xp6(1),e.Oqu(t.errorMessage)}}function wa(n,s){if(1&n&&(e.TgZ(0,"span",34)(1,"span"),e._uU(2,"-"),e.qZA()()),2&n){e.oxw(2);const t=e.MAs(22);e.Q6J("ngbTooltip",t)}}function Ha(n,s){if(1&n&&e._UZ(0,"cd-usage-bar",36),2&n){const t=e.oxw(2).row;e.Q6J("total",t.size)("used",t.disk_usage)("title",t.name)}}function ka(n,s){if(1&n&&e.YNc(0,Ha,1,3,"cd-usage-bar",35),2&n){const t=e.oxw().row;e.Q6J("ngIf",t)}}function Ka(n,s){if(1&n&&(e.YNc(0,wa,3,1,"span",32),e.YNc(1,ka,1,1,"ng-template",null,33,e.W1O)),2&n){const t=s.row,o=e.MAs(2);e.Q6J("ngIf",t.features_name&&(!t.features_name.includes("fast-diff")||"snapshot"===t.mirror_mode))("ngIfElse",o)}}function qa(n,s){1&n&&e._UZ(0,"div",37),2&n&&e.Q6J("innerHtml","Only available for RBD images with fast-diff enabled and without snapshot mirroring",e.oJD)}let Qa=(()=>{class n extends St.o{createRbdFromTaskImageSpec(t){const o=v.N.fromString(t);return this.createRbdFromTask(o.poolName,o.namespace,o.imageName)}createRbdFromTask(t,o,i){const _=new ms;return _.id="-1",_.unique_id="-1",_.name=i,_.namespace=o,_.pool_name=t,_.image_format=Ie.V2,_}constructor(t,o,i,_,a,l,d,g,S){super(),this.authStorageService=t,this.rbdService=o,this.dimlessBinaryPipe=i,this.dimlessPipe=_,this.modalService=a,this.taskWrapper=l,this.taskListService=d,this.urlBuilder=g,this.actionLabels=S,this.tableStatus=new Lt.c("light"),this.selection=new Ee.r,this.icons=T.P,this.count=0,this.tableContext=null,this.builders={"rbd/create":O=>this.createRbdFromTask(O.pool_name,O.namespace,O.image_name),"rbd/delete":O=>this.createRbdFromTaskImageSpec(O.image_spec),"rbd/clone":O=>this.createRbdFromTask(O.child_pool_name,O.child_namespace,O.child_image_name),"rbd/copy":O=>this.createRbdFromTask(O.dest_pool_name,O.dest_namespace,O.dest_image_name)},this.permission=this.authStorageService.getPermissions().rbdImage;const I=()=>this.selection.first()&&new v.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:O=>!O.hasSingleSelection,name:this.actionLabels.CREATE},{permission:"update",icon:T.P.edit,routerLink:()=>this.urlBuilder.getEdit(I()),name:this.actionLabels.EDIT,disable:O=>this.getRemovingStatusDesc(O)||this.getInvalidNameDisable(O)},{permission:"create",canBePrimary:O=>O.hasSingleSelection,disable:O=>this.getRemovingStatusDesc(O)||this.getInvalidNameDisable(O)||!!O.first().cdExecuting,icon:T.P.copy,routerLink:()=>`/block/rbd/copy/${I()}`,name:this.actionLabels.COPY},{permission:"update",disable:O=>this.getRemovingStatusDesc(O)||this.getInvalidNameDisable(O)||O.first().cdExecuting||!O.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:O=>this.getResyncDisableDesc(O)},{permission:"delete",icon:T.P.destroy,click:()=>this.deleteRbdModal(),name:this.actionLabels.DELETE,disable:O=>this.getDeleteDisableDesc(O)},{permission:"delete",icon:T.P.trash,click:()=>this.trashRbdModal(),name:this.actionLabels.TRASH,disable:O=>this.getRemovingStatusDesc(O)||this.getInvalidNameDisable(O)||O.first().image_format===Ie.V1},{permission:"update",icon:T.P.edit,click:()=>this.removeSchedulingModal(),name:this.actionLabels.REMOVE_SCHEDULING,disable:O=>this.getRemovingStatusDesc(O)||this.getInvalidNameDisable(O)||void 0===O.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,disable:()=>"Disabled"===this.selection.first().mirror_mode?"Mirroring needs to be enabled on the image to perform this action":""},{permission:"update",icon:T.P.edit,click:()=>this.actionPrimary(!1),name:this.actionLabels.DEMOTE,visible:()=>null!=this.selection.first()&&this.selection.first().primary,disable:()=>"Disabled"===this.selection.first().mirror_mode?"Mirroring needs to be enabled on the image to perform this action":""}]}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:"Usage",prop:"usage",cellTemplate:this.imageUsageTpl,flexGrow:1.5},{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:"Parent",prop:"parent",flexGrow:2,sortable:!1,cellTemplate:this.parentTpl},{name:"Mirroring",prop:"mirror_mode",flexGrow:3,sortable:!1,cellTemplate:this.mirroringTpl},{name:"Next Scheduled Snapshot",prop:"mirror_mode",flexGrow:3,sortable:!1,cellTemplate:this.ScheduleTpl}],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 a;switch(_.name){case"rbd/copy":a=new v.N(_.metadata.dest_pool_name,_.metadata.dest_namespace,_.metadata.dest_image_name).toString();break;case"rbd/clone":a=new v.N(_.metadata.child_pool_name,_.metadata.child_namespace,_.metadata.child_image_name).toString();break;case"rbd/create":a=new v.N(_.metadata.pool_name,_.metadata.namespace,_.metadata.image_name).toString();break;default:a=_.metadata.image_spec}return a===new v.N(i.pool_name,i.namespace,i.name).toString()},this.builders)}onFetchError(){this.table.reset(),this.tableStatus=new Lt.c("danger")}getRbdImages(t){return null!==t&&(this.tableContext=t),null==this.tableContext&&(this.tableContext=new h.E(()=>{})),this.rbdService.list(this.tableContext?.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 a="scheduled";let l=+new Date(i.schedule_info.schedule_time);const d=(new Date).getTimezoneOffset();l+=6e4*Math.abs(d),_.push(i.mirror_mode,a,l),i.mirror_mode=_,_=[]}}),this.count=o.length>0?u_.v.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 v.N(t,o,i);this.modalRef=this.modalService.show(ue.M,{itemDescription:"RBD",itemNames:[_],bodyTemplate:this.deleteTpl,bodyContext:{hasSnapshots:this.hasSnapshots(),snapshots:this.listProtectedSnapshots()},submitActionObservable:()=>this.taskWrapper.wrapTaskAroundCall({task:new E.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 v.N(t,o,i);this.modalRef=this.modalService.show(ue.M,{itemDescription:"RBD",itemNames:[_],actionDescription:"resync",submitActionObservable:()=>this.taskWrapper.wrapTaskAroundCall({task:new E.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(R_,t)}flattenRbd(t){this.taskWrapper.wrapTaskAroundCall({task:new E.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,a=new v.N(_.pool_name,_.pool_namespace,_.image_name),l=new v.N(t,o,i),d={titleText:"RBD flatten",buttonText:"Flatten",bodyTpl:this.flattenTpl,bodyData:{parent:`${a}@${_.snap_name}`,child:l.toString()},onSubmit:()=>{this.flattenRbd(l)}};this.modalRef=this.modalService.show(ct.Y,d)}editRequest(){const t=new lt;return t.remove_scheduling=!t.remove_scheduling,t}removeSchedulingModal(){const t=this.selection.first().name,o=new v.N(this.selection.first().pool_name,this.selection.first().namespace,this.selection.first().name);this.modalRef=this.modalService.show(ue.M,{actionDescription:"remove scheduling on",itemDescription:"image",itemNames:[`${t}`],submitActionObservable:()=>new At.y(i=>{this.taskWrapper.wrapTaskAroundCall({task:new E.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 lt;o.primary=t,o.features=null;const i=new v.N(this.selection.first().pool_name,this.selection.first().namespace,this.selection.first().name);this.taskWrapper.wrapTaskAroundCall({task:new E.R("rbd/edit",{image_spec:i.toString()}),call:this.rbdService.update(i,o)}).subscribe(()=>{},_=>{_.preventDefault(),t&&(this.errorMessage=_.error.detail.replace(/\[.*?\]\s*/,""),o.force=!0,this.modalRef=this.modalService.show(ct.Y,{titleText:"Warning",buttonText:"Enforce",warning:!0,bodyTpl:this.forcePromoteConfirmation,onSubmit:()=>{this.rbdService.update(i,o).subscribe(()=>{this.modalRef.close()},()=>{this.modalRef.close()})}}))})}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){return t.first()?.name?.match(/[@/]/)?"This RBD image has an invalid name and can't be managed by ceph.":!t.first()||!t.hasSingleSelection}getRemovingStatusDesc(t){return"REMOVING"===t.first()?.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(H),e.Y36(Ue.$),e.Y36(st.n),e.Y36(pe.Z),e.Y36(u.P),e.Y36(de.j),e.Y36(dt.F),e.Y36(L.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(sa,5),e.Gf(_a,7),e.Gf(aa,5),e.Gf(ra,7),e.Gf(la,7),e.Gf(ca,7),e.Gf(da,7),e.Gf(pa,7),e.Gf(ua,7),e.Gf(ma,7),e.Gf(ga,7),e.Gf(Ta,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.ScheduleTpl=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.forcePromoteConfirmation=i.first),e.iGM(i=e.CRH())&&(o.usedTmpl=i.first),e.iGM(i=e.CRH())&&(o.totalUsedTmpl=i.first),e.iGM(i=e.CRH())&&(o.imageUsageTpl=i.first)}},features:[e._Bn([de.j,{provide:dt.F,useValue:new dt.F("block/rbd")}]),e.qOj],decls:23,vars:13,consts:function(){let s,t,o,i,_,a;return s="primary",t="secondary",o="Deleting this image will also delete all its snapshots.",i="The following snapshots are currently protected and will be removed:",_="RBD in status 'Removing'",a="" + "\ufffd#4\ufffd" + " Do you want to force the operation? " + "\ufffd/#4\ufffd" + "",[["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"],["parentTpl",""],["mirroringTpl",""],["ScheduleTpl",""],["flattenTpl",""],["deleteTpl",""],["removingStatTpl",""],["forcePromoteConfirmation",""],["imageUsageTpl",""],["usageTooltip",""],[4,"ngIf"],["class","badge badge-info",4,"ngIf","ngIfElse"],["class","badge badge-info",4,"ngIf"],["probb",""],[1,"badge","badge-info"],s,t,["class","alert alert-warning","role","alert",4,"ngIf"],["role","alert",1,"alert","alert-warning"],o,i,[4,"ngFor","ngForOf"],[3,"ngClass",4,"ngIf"],[3,"ngClass"],["title",_,3,"class",4,"ngIf"],["title",_],["type","warning"],[1,"m-4"],a,[3,"ngbTooltip",4,"ngIf","ngIfElse"],["usageBar",""],[3,"ngbTooltip"],["decimals","2",3,"total","used","title",4,"ngIf"],["decimals","2",3,"total","used","title"],[3,"innerHtml"]]},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)(4,"cd-rbd-details",3),e.qZA(),e.YNc(5,Ra,2,2,"ng-template",null,4,e.W1O),e.YNc(7,Pa,8,5,"ng-template",null,5,e.W1O),e.YNc(9,Ia,1,1,"ng-template",null,6,e.W1O),e.YNc(11,Na,13,3,"ng-template",null,7,e.W1O),e.YNc(13,va,1,1,"ng-template",null,8,e.W1O),e.YNc(15,xa,5,5,"ng-template",null,9,e.W1O),e.YNc(17,Za,5,1,"ng-template",null,10,e.W1O),e.YNc(19,Ka,3,2,"ng-template",null,11,e.W1O),e.YNc(21,qa,1,1,"ng-template",null,12,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))},dependencies:[c.mk,c.sg,c.O5,F._L,E_.O,it.G,W.a,Me.K,na,tt,Be.N],styles:[".warn[_ngcontent-%COMP%]{color:#d48200}"]}),n})();function za(n,s){1&n&&e._UZ(0,"input",19)}function Ja(n,s){1&n&&(e.TgZ(0,"option",23),e.SDv(1,24),e.qZA()),2&n&&e.Q6J("ngValue",null)}function Ya(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 Ua(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 ja(n,s){if(1&n&&(e.TgZ(0,"select",20),e.YNc(1,Ja,2,1,"option",21),e.YNc(2,Ya,2,1,"option",21),e.YNc(3,Va,2,1,"option",21),e.YNc(4,Ua,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 Wa(n,s){1&n&&(e.TgZ(0,"span",28),e.SDv(1,29),e.qZA())}function er(n,s){1&n&&(e.TgZ(0,"span",28),e.SDv(1,30),e.qZA())}function tr(n,s){1&n&&(e.TgZ(0,"span",28),e.SDv(1,31),e.qZA())}let or=(()=>{class n{constructor(t,o,i,_,a,l){this.activeModal=t,this.actionLabels=o,this.authStorageService=i,this.notificationService=_,this.poolService=a,this.rbdService=l,this.pools=null,this.editing=!1,this.poolPermission=this.authStorageService.getPermissions().pool,this.createForm()}createForm(){this.namespaceForm=new Z.d({pool:new r.p4(""),namespace:new r.p4("")},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 a=null;return i.value||(a={required:!0}),i.setErrors(a),null}}asyncValidator(){return t=>new Promise(o=>{const i=t.get("pool"),_=t.get("namespace");this.rbdService.listNamespaces(i.value).subscribe(a=>{if(a.some(l=>l.namespace===_.value)){const l={namespaceExists:!0};_.setErrors(l),o(l)}else o(null)})})}ngOnInit(){this.onSubmit=new Gt.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 E.R;i.name="rbd/namespace/create",i.metadata={pool:t,namespace:o},this.rbdService.createNamespace(t,o).toPromise().then(()=>{this.notificationService.show(nt.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(F.Kz),e.Y36(L.p4),e.Y36(oe.j),e.Y36(ve.g),e.Y36(Ve.q),e.Y36(H))},n.\u0275cmp=e.Xpm({type:n,selectors:[["cd-rbd-namespace-form-modal"]],decls:23,vars:9,consts:function(){let s,t,o,i,_,a,l,d,g;return s="Create Namespace",t="Pool",o="Name",i="Loading...",_="-- No rbd pools available --",a="-- Select a pool --",l="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-select","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-select"],[3,"ngValue",4,"ngIf"],[3,"value",4,"ngFor","ngForOf"],[3,"ngValue"],i,_,a,[3,"value"],[1,"invalid-feedback"],l,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)(6,"div",6)(7,"div",7)(8,"label",8),e.SDv(9,9),e.qZA(),e.TgZ(10,"div",10),e.YNc(11,za,1,0,"input",11),e.YNc(12,ja,5,4,"select",12),e.YNc(13,Wa,2,0,"span",13),e.qZA()(),e.TgZ(14,"div",7)(15,"label",14),e.SDv(16,15),e.qZA(),e.TgZ(17,"div",10),e._UZ(18,"input",16),e.YNc(19,er,2,0,"span",13),e.YNc(20,tr,2,0,"span",13),e.qZA()()(),e.TgZ(21,"div",17)(22,"cd-form-button-panel",18),e.NdJ("submitActionEvent",function(){return o.submit()}),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)}},dependencies:[c.sg,c.O5,r._Y,r.YN,r.Kr,r.Fj,r.EJ,r.JJ,r.JL,r.sg,r.u,f.z,A.p,Oe.U,M.o,B.b,K.P,J.V]}),n})(),nr=(()=>{class n{constructor(t,o,i,_,a,l){this.authStorageService=t,this.rbdService=o,this.poolService=i,this.modalService=_,this.notificationService=a,this.actionLabels=l,this.selection=new Ee.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,ce.D)(o).subscribe(i=>{const _=[];for(let a=0;a{_.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(or),this.modalRef.componentInstance.onSubmit.subscribe(()=>{this.refresh()})}deleteModal(){const t=this.selection.first().pool,o=this.selection.first().namespace;this.modalRef=this.modalService.show(ue.M,{itemDescription:"Namespace",itemNames:[`${t}/${o}`],submitAction:()=>this.rbdService.deleteNamespace(t,o).subscribe(()=>{this.notificationService.show(nt.k.success,"Deleted namespace '" + t + "/" + o + "'"),this.modalRef.close(),this.refresh()},()=>{this.modalRef.componentInstance.stopLoadingSpinner()})})}getDeleteDisableDesc(){return this.selection.first()?.num_images>0?"Namespace contains images":!this.selection?.first()}}return n.\u0275fac=function(t){return new(t||n)(e.Y36(oe.j),e.Y36(H),e.Y36(Ve.q),e.Y36(pe.Z),e.Y36(ve.g),e.Y36(L.p4))},n.\u0275cmp=e.Xpm({type:n,selectors:[["cd-rbd-namespace-list"]],features:[e._Bn([de.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()()),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))},dependencies:[W.a,Me.K,tt]}),n})(),ir=(()=>{class n{}return n.\u0275fac=function(t){return new(t||n)},n.\u0275cmp=e.Xpm({type:n,selectors:[["cd-rbd-performance"]],decls:2,vars:2,consts:function(){let s;return s="RBD overview",[["title",s,"uid","41FrpeUiz","grafanaStyle","two",3,"grafanaPath","type"]]},template:function(t,o){1&t&&e._UZ(0,"cd-rbd-tabs")(1,"cd-grafana",0),2&t&&(e.xp6(1),e.Q6J("grafanaPath","rbd-overview?")("type","metrics"))},dependencies:[vt.F,tt]}),n})();var sr=p(91801);function _r(n,s){1&n&&e._UZ(0,"input",15)}function ar(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 rr(n,s){if(1&n&&(e.TgZ(0,"select",16)(1,"option",17),e.SDv(2,18),e.qZA(),e.YNc(3,ar,2,2,"option",19),e.qZA()),2&n){const t=e.oxw();e.xp6(3),e.Q6J("ngForOf",t.pools)}}let lr=(()=>{class n{constructor(t,o,i,_,a,l,d){this.authStorageService=t,this.rbdService=o,this.activeModal=i,this.actionLabels=_,this.fb=a,this.poolService=l,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 E.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(H),e.Y36(F.Kz),e.Y36(L.p4),e.Y36(pt.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)(6,"div",6)(7,"p"),e.tHW(8,7),e._UZ(9,"kbd")(10,"kbd"),e.N_p(),e.qZA(),e.TgZ(11,"div",8)(12,"label",9),e.SDv(13,10),e.qZA(),e.YNc(14,_r,1,0,"input",11),e.YNc(15,rr,4,1,"select",12),e.qZA()(),e.TgZ(16,"div",13)(17,"cd-form-button-panel",14),e.NdJ("submitActionEvent",function(){return o.purge()}),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))},dependencies:[c.sg,c.O5,r._Y,r.YN,r.Kr,r.Fj,r.EJ,r.JJ,r.JL,r.sg,r.u,f.z,A.p,M.o,B.b,K.P,J.V]}),n})();function cr(n,s){1&n&&(e.TgZ(0,"span",15),e.SDv(1,16),e.qZA())}let dr=(()=>{class n{constructor(t,o,i,_,a){this.rbdService=t,this.activeModal=o,this.actionLabels=i,this.fb=_,this.taskWrapper=a}ngOnInit(){this.imageSpec=new v.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 v.N(this.poolName,this.namespace,this.imageId);this.taskWrapper.wrapTaskAroundCall({task:new E.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(H),e.Y36(F.Kz),e.Y36(L.p4),e.Y36(pt.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)(6,"div",6)(7,"p"),e.tHW(8,7),e._UZ(9,"kbd")(10,"kbd"),e.N_p(),e.qZA(),e.TgZ(11,"div",8)(12,"label",9),e.SDv(13,10),e.qZA(),e._UZ(14,"input",11),e.YNc(15,cr,2,0,"span",12),e.qZA()(),e.TgZ(16,"div",13)(17,"cd-form-button-panel",14),e.NdJ("submitActionEvent",function(){return o.restore()}),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)}},dependencies:[c.O5,r._Y,r.Fj,r.JJ,r.JL,r.sg,r.u,f.z,A.p,Oe.U,M.o,B.b,K.P,J.V]}),n})();const pr=["expiresTpl"],ur=["deleteTpl"],mr=function(n){return[n]};function gr(n,s){if(1&n){const t=e.EpF();e.TgZ(0,"button",6),e.NdJ("click",function(){e.CHM(t);const i=e.oxw();return e.KtG(i.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,mr,t.icons.destroy))}}function Tr(n,s){1&n&&(e.ynx(0),e.SDv(1,10),e.BQk())}function fr(n,s){1&n&&(e.ynx(0),e.SDv(1,11),e.BQk())}function Cr(n,s){if(1&n&&(e.YNc(0,Tr,2,0,"ng-container",9),e.YNc(1,fr,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 Sr(n,s){if(1&n&&(e.TgZ(0,"p",13)(1,"strong"),e.ynx(2),e.SDv(3,14),e.ALo(4,"cdDate"),e.BQk(),e.qZA()()),2&n){const t=e.oxw().expiresAt;e.xp6(4),e.pQV(e.lcZ(4,1,t)),e.QtT(3)}}function Rr(n,s){1&n&&e.YNc(0,Sr,5,3,"p",12),2&n&&e.Q6J("ngIf",!s.isExpired)}let Er=(()=>{class n{constructor(t,o,i,_,a,l,d){this.authStorageService=t,this.rbdService=o,this.modalService=i,this.cdDatePipe=_,this.taskListService=a,this.taskWrapper=l,this.actionLabels=d,this.icons=T.P,this.executingTasks=[],this.selection=new Ee.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:Le.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 v.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(a=>{C().isUndefined(i[a.status])&&(i[a.status]=[]),i[a.status].push(a.pool_name),o=o.concat(a.value),this.disablePurgeBtn=!o.length}),i[3]?_=3:i[1]?_=1:i[2]&&(_=2),_){const a=(i[_].length>1?"pools ":"pool ")+i[_].join();this.tableStatus=new se.E(_,a)}else this.tableStatus=new se.E;return o.forEach(a=>{a.cdIsExpired=he()().isAfter(a.deferment_end_time)}),o}onFetchError(){this.table.reset(),this.tableStatus=new se.E(sr.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(dr,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,a=he()().isAfter(_),l=new v.N(t,o,i);this.modalRef=this.modalService.show(ue.M,{itemDescription:"RBD",itemNames:[l],bodyTemplate:this.deleteTpl,bodyContext:{expiresAt:_,isExpired:a},submitActionObservable:()=>this.taskWrapper.wrapTaskAroundCall({task:new E.R("rbd/trash/remove",{image_id_spec:l.toString()}),call:this.rbdService.removeTrash(l,!0)})})}purgeModal(){this.modalService.show(lr)}}return n.\u0275fac=function(t){return new(t||n)(e.Y36(oe.j),e.Y36(H),e.Y36(pe.Z),e.Y36(Be.N),e.Y36(de.j),e.Y36(u.P),e.Y36(L.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(pr,7),e.Gf(ur,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([de.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,gr,4,4,"button",3),e.qZA()(),e.YNc(5,Cr,4,5,"ng-template",null,4,e.W1O),e.YNc(7,Rr,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))},dependencies:[c.mk,c.O5,W.a,Me.K,M.o,tt,Be.N]}),n})(),yt=(()=>{class n{}return n.\u0275fac=function(t){return new(t||n)},n.\u0275mod=e.oAB({type:n}),n.\u0275inj=e.cJS({imports:[c.ez,si,r.u5,r.UX,F.Oz,F.dT,F.HK,Ne.b,Pe.m,m.Bz,ne.xc]}),n})();const Mr=[{path:"",redirectTo:"rbd",pathMatch:"full"},{path:"rbd",canActivate:[j.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:Qa},{path:"namespaces",component:nr,data:{breadcrumbs:"Namespaces"}},{path:"trash",component:Er,data:{breadcrumbs:"Trash"}},{path:"performance",component:ir,data:{breadcrumbs:"Overall Performance"}},{path:L.MQ.CREATE,component:$e,data:{breadcrumbs:L.Qn.CREATE}},{path:`${L.MQ.EDIT}/:image_spec`,component:$e,data:{breadcrumbs:L.Qn.EDIT}},{path:`${L.MQ.CLONE}/:image_spec/:snap`,component:$e,data:{breadcrumbs:L.Qn.CLONE}},{path:`${L.MQ.COPY}/:image_spec`,component:$e,data:{breadcrumbs:L.Qn.COPY}},{path:`${L.MQ.COPY}/:image_spec/:snap`,component:$e,data:{breadcrumbs:L.Qn.COPY}}]},{path:"mirroring",component:_s,canActivate:[j.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:`${L.MQ.EDIT}/:pool_name`,component:cs,outlet:"modal"}]},{path:"iscsi",canActivate:[j.T],data:{breadcrumbs:"iSCSI"},children:[{path:"",redirectTo:"overview",pathMatch:"full"},{path:"overview",component:ii,data:{breadcrumbs:"Overview"}},{path:"targets",data:{breadcrumbs:"Targets"},children:[{path:"",component:Kn},{path:L.MQ.CREATE,component:Ct,data:{breadcrumbs:L.Qn.CREATE}},{path:`${L.MQ.EDIT}/:target_iqn`,component:Ct,data:{breadcrumbs:L.Qn.EDIT}}]}]}];let Or=(()=>{class n{}return n.\u0275fac=function(t){return new(t||n)},n.\u0275mod=e.oAB({type:n}),n.\u0275inj=e.cJS({imports:[yt,m.Bz.forChild(Mr)]}),n})()},60950:(mt,Ae,p)=>{p.d(Ae,{d:()=>z});var c=p(64537),r=p(20092),m=p(23815),ne=p.n(m),F=p(7357),Ne=p(65862),L=p(95463),j=p(30633),re=p(28211),Pe=p(34089),le=p(88692),C=p(18372),ce=p(20044);let D=(()=>{class h{constructor(u,f,A,M){this.elementRef=u,this.control=f,this.dimlessBinaryPerSecondPipe=A,this.formatter=M,this.ngModelChange=new c.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 f=this.formatter.toBytes(u,0),A=this.round(f);this.el.value=this.dimlessBinaryPerSecondPipe.transform(A),null!==f?(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 f=Math.round(Math.log(u)/Math.log(this.roundPower));return Math.pow(this.roundPower,f)}}return u}onBlur(u){this.setValue(u)}}return h.\u0275fac=function(u){return new(u||h)(c.Y36(c.SBq),c.Y36(r.a5),c.Y36(ce.O),c.Y36(re.H))},h.\u0275dir=c.lG2({type:h,selectors:[["","cdDimlessBinaryPerSecond",""]],hostBindings:function(u,f){1&u&&c.NdJ("blur",function(M){return f.onBlur(M.target.value)})},inputs:{ngDataReady:"ngDataReady",minBytes:"minBytes",maxBytes:"maxBytes",roundPower:"roundPower",defaultUnit:"defaultUnit"},outputs:{ngModelChange:"ngModelChange"}}),h})(),ie=(()=>{class h{constructor(u,f){this.control=u,this.formatter=f}setValue(u){const f=this.formatter.toMilliseconds(u);this.control.control.setValue(`${f} ms`)}ngOnInit(){this.setValue(this.control.value),this.ngDataReady&&this.ngDataReady.subscribe(()=>this.setValue(this.control.value))}onUpdate(u){this.setValue(u)}}return h.\u0275fac=function(u){return new(u||h)(c.Y36(r.a5),c.Y36(re.H))},h.\u0275dir=c.lG2({type:h,selectors:[["","cdMilliseconds",""]],hostBindings:function(u,f){1&u&&c.NdJ("blur",function(M){return f.onUpdate(M.target.value)})},inputs:{ngDataReady:"ngDataReady"}}),h})(),V=(()=>{class h{constructor(u,f){this.formatter=u,this.ngControl=f}setValue(u){const f=this.formatter.toIops(u);this.ngControl.control.setValue(`${f} IOPS`)}ngOnInit(){this.setValue(this.ngControl.value),this.ngDataReady&&this.ngDataReady.subscribe(()=>this.setValue(this.ngControl.value))}onUpdate(u){this.setValue(u)}}return h.\u0275fac=function(u){return new(u||h)(c.Y36(re.H),c.Y36(r.a5))},h.\u0275dir=c.lG2({type:h,selectors:[["","cdIops",""]],hostBindings:function(u,f){1&u&&c.NdJ("blur",function(M){return f.onUpdate(M.target.value)})},inputs:{ngDataReady:"ngDataReady"}}),h})();var e=p(87925),X=p(94276),Fe=p(56310),De=p(41582);function v(h,E){if(1&h&&(c.ynx(0),c._UZ(1,"input",17),c.BQk()),2&h){const u=c.oxw().$implicit,f=c.oxw(2);c.xp6(1),c.Q6J("id",u.name)("name",u.name)("formControlName",u.name)("ngDataReady",f.ngDataReady)}}function be(h,E){if(1&h&&(c.ynx(0),c._UZ(1,"input",18),c.BQk()),2&h){const u=c.oxw().$implicit,f=c.oxw(2);c.xp6(1),c.Q6J("id",u.name)("name",u.name)("formControlName",u.name)("ngDataReady",f.ngDataReady)}}function H(h,E){if(1&h&&(c.ynx(0),c._UZ(1,"input",19),c.BQk()),2&h){const u=c.oxw().$implicit,f=c.oxw(2);c.xp6(1),c.Q6J("id",u.name)("name",u.name)("formControlName",u.name)("ngDataReady",f.ngDataReady)}}function N(h,E){1&h&&(c.TgZ(0,"span",20),c.SDv(1,21),c.qZA())}const x=function(h){return{active:h}},T=function(h){return[h]};function k(h,E){if(1&h){const u=c.EpF();c.TgZ(0,"div",10)(1,"label",11),c._uU(2),c.TgZ(3,"cd-helper"),c._uU(4),c.qZA()(),c.TgZ(5,"div")(6,"div",12),c.ynx(7,13),c.YNc(8,v,2,4,"ng-container",14),c.YNc(9,be,2,4,"ng-container",14),c.YNc(10,H,2,4,"ng-container",14),c.BQk(),c.TgZ(11,"button",15),c.NdJ("click",function(){const M=c.CHM(u).$implicit,B=c.oxw(2);return c.KtG(B.reset(M.name))}),c._UZ(12,"i",7),c.qZA()(),c.YNc(13,N,2,0,"span",16),c.qZA()()}if(2&h){const u=E.$implicit,f=c.oxw().$implicit,A=c.oxw(),M=c.MAs(1);c.xp6(1),c.Q6J("for",u.name),c.xp6(1),c.Oqu(u.displayName),c.xp6(2),c.Oqu(u.description),c.xp6(1),c.Gre("cd-col-form-input ",f.heading,""),c.xp6(2),c.Q6J("ngSwitch",u.type),c.xp6(1),c.Q6J("ngSwitchCase",A.configurationType.milliseconds),c.xp6(1),c.Q6J("ngSwitchCase",A.configurationType.bps),c.xp6(1),c.Q6J("ngSwitchCase",A.configurationType.iops),c.xp6(1),c.Q6J("ngClass",c.VKq(13,x,A.isDisabled(u.name))),c.xp6(1),c.Q6J("ngClass",c.VKq(15,T,A.icons.erase)),c.xp6(1),c.Q6J("ngIf",A.form.showError("configuration."+u.name,M,"min"))}}function Z(h,E){if(1&h){const u=c.EpF();c.TgZ(0,"div",4)(1,"h4",5)(2,"span",6),c.NdJ("click",function(){const M=c.CHM(u).$implicit,B=c.oxw();return c.KtG(B.toggleSectionVisibility(M.class))}),c._uU(3),c._UZ(4,"i",7),c.qZA()(),c.TgZ(5,"div",8),c.YNc(6,k,14,17,"div",9),c.qZA()()}if(2&h){const u=E.$implicit,f=c.oxw();c.xp6(3),c.hij(" ",u.heading," "),c.xp6(1),c.Q6J("ngClass",f.sectionVisibility[u.class]?f.icons.minusCircle:f.icons.addCircle),c.xp6(1),c.Tol(u.class),c.Q6J("hidden",!f.sectionVisibility[u.class]),c.xp6(1),c.Q6J("ngForOf",u.options)}}let z=(()=>{class h{constructor(u,f){this.formatterService=u,this.rbdConfigurationService=f,this.initializeData=new F.t(1),this.changes=new c.vpe,this.icons=Ne.P,this.ngDataReady=new c.vpe,this.configurationType=j.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(f=>{this.initialData=f.initialData;const A=f.sourceType;this.rbdConfigurationService.getWritableOptionFields().forEach(M=>{const B=f.initialData.filter(K=>K.name===M.name).pop();B&&B.source===A&&this.form.get(`configuration.${M.name}`).setValue(B.value)}),this.ngDataReady.emit()}),this.rbdConfigurationService.getWritableSections().forEach(f=>this.sectionVisibility[f.class]=!1)}getDirtyValues(u=!1,f){if(u&&!f)throw new Error("ProgrammingError: If local values shall be included, a proper localFieldType argument has to be provided, too");const A={};return this.rbdConfigurationService.getWritableOptionFields().forEach(M=>{const B=this.form.get("configuration").get(M.name);this.initialData&&this.initialData[M.name]===B.value||(B.dirty||u&&B.source===f)&&(A[M.name]=null===B.value?B.value:M.type===j.r.bps?this.formatterService.toBytes(B.value):M.type===j.r.milliseconds?this.formatterService.toMilliseconds(B.value):M.type===j.r.iops?this.formatterService.toIops(B.value):B.value)}),A}createConfigurationFormGroup(){const u=new L.d({});return this.rbdConfigurationService.getWritableOptionFields().forEach(f=>{let A;if(f.type!==j.r.milliseconds&&f.type!==j.r.iops&&f.type!==j.r.bps)throw new Error(`Type ${f.type} is unknown, you may need to add it to RbdConfiguration class`);{let M=0;ne().forEach(this.initialData,B=>{B.name===f.name&&(M=B.value)}),A=new r.p4(M,r.kI.min(0))}u.addControl(f.name,A)}),u}reset(u){const f=this.form.get("configuration").get(u);f.disabled?(f.setValue(f.previousValue||0),f.enable(),f.previousValue||f.markAsPristine()):(f.previousValue=f.value,f.setValue(null),f.markAsDirty(),f.disable())}isDisabled(u){return this.form.get("configuration").get(u).disabled}toggleSectionVisibility(u){this.sectionVisibility[u]=!this.sectionVisibility[u]}}return h.\u0275fac=function(u){return new(u||h)(c.Y36(re.H),c.Y36(Pe.n))},h.\u0275cmp=c.Xpm({type:h,selectors:[["cd-rbd-configuration-form"]],inputs:{form:"form",initializeData:"initializeData"},outputs:{changes:"changes"},decls:5,vars:2,consts:function(){let E,u,f;return E="RBD Configuration",u="Remove the local configuration value. The parent configuration value will be inherited and used instead.",f="The minimum value is 0",[[3,"formGroup"],["cfgFormGroup",""],E,["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"],["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"],f]},template:function(u,f){1&u&&(c.TgZ(0,"fieldset",0,1)(2,"legend"),c.SDv(3,2),c.qZA(),c.YNc(4,Z,7,7,"div",3),c.qZA()),2&u&&(c.Q6J("formGroup",f.form.get("configuration")),c.xp6(4),c.Q6J("ngForOf",f.rbdConfigurationService.sections))},dependencies:[le.mk,le.sg,le.O5,le.RF,le.n9,r.Fj,r.JJ,r.JL,r.sg,r.u,C.S,D,ie,V,e.o,X.b,Fe.P,De.V],styles:[".collapsible[_ngcontent-%COMP%]{cursor:pointer;user-select:none}"]}),h})()},42176:(mt,Ae,p)=>{p.d(Ae,{P:()=>H});var c=p(59019),r=p(30633),m=p(64537);let ne=(()=>{class N{transform(T){return{0:"global",1:"pool",2:"image"}[T]}}return N.\u0275fac=function(T){return new(T||N)},N.\u0275pipe=m.Yjl({name:"rbdConfigurationSource",type:N,pure:!0}),N})();var F=p(28211),Ne=p(34089),L=p(88692),j=p(20044),re=p(48537),Pe=p(21766);const le=["configurationSourceTpl"],C=["configurationValueTpl"],ce=["poolConfTable"];function D(N,x){1&N&&(m.TgZ(0,"span"),m.SDv(1,6),m.qZA())}function ie(N,x){1&N&&(m.TgZ(0,"strong"),m.SDv(1,7),m.qZA())}function V(N,x){1&N&&(m.TgZ(0,"strong"),m.SDv(1,8),m.qZA())}function e(N,x){1&N&&(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&N&&(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(N,x){if(1&N&&(m.TgZ(0,"span"),m._uU(1),m.ALo(2,"dimlessBinaryPerSecond"),m.qZA()),2&N){const T=m.oxw().value;m.xp6(1),m.Oqu(m.lcZ(2,1,T))}}function Fe(N,x){if(1&N&&(m.TgZ(0,"span"),m._uU(1),m.ALo(2,"milliseconds"),m.qZA()),2&N){const T=m.oxw().value;m.xp6(1),m.Oqu(m.lcZ(2,1,T))}}function De(N,x){if(1&N&&(m.TgZ(0,"span"),m._uU(1),m.ALo(2,"iops"),m.qZA()),2&N){const T=m.oxw().value;m.xp6(1),m.Oqu(m.lcZ(2,1,T))}}function v(N,x){if(1&N&&(m.TgZ(0,"span"),m._uU(1),m.qZA()),2&N){const T=m.oxw().value;m.xp6(1),m.Oqu(T)}}function be(N,x){if(1&N&&(m.TgZ(0,"div",4),m.YNc(1,X,3,3,"span",5),m.YNc(2,Fe,3,3,"span",5),m.YNc(3,De,3,3,"span",5),m.YNc(4,v,2,1,"span",9),m.qZA()),2&N){const T=x.row,k=m.oxw();m.Q6J("ngSwitch",T.type),m.xp6(1),m.Q6J("ngSwitchCase",k.typeField.bps),m.xp6(1),m.Q6J("ngSwitchCase",k.typeField.milliseconds),m.xp6(1),m.Q6J("ngSwitchCase",k.typeField.iops)}}let H=(()=>{class N{constructor(T,k){this.formatterService=T,this.rbdConfigurationService=k,this.sourceField=r.h,this.typeField=r.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(k=>k.name).includes(T.name)))}}return N.\u0275fac=function(T){return new(T||N)(m.Y36(F.H),m.Y36(Ne.n))},N.\u0275cmp=m.Xpm({type:N,selectors:[["cd-rbd-configuration-table"]],viewQuery:function(T,k){if(1&T&&(m.Gf(le,7),m.Gf(C,7),m.Gf(ce,7)),2&T){let Z;m.iGM(Z=m.CRH())&&(k.configurationSourceTpl=Z.first),m.iGM(Z=m.CRH())&&(k.configurationValueTpl=Z.first),m.iGM(Z=m.CRH())&&(k.poolConfTable=Z.first)}},inputs:{data:"data"},features:[m.TTD],decls:6,vars:2,consts:function(){let x,T,k;return x="Global",T="Image",k="Pool",[["identifier","name",3,"data","columns"],["poolConfTable",""],["configurationSourceTpl",""],["configurationValueTpl",""],[3,"ngSwitch"],[4,"ngSwitchCase"],x,T,k,[4,"ngSwitchDefault"]]},template:function(T,k){1&T&&(m._UZ(0,"cd-table",0,1),m.YNc(2,e,4,4,"ng-template",null,2,m.W1O),m.YNc(4,be,5,4,"ng-template",null,3,m.W1O)),2&T&&m.Q6J("data",k.data)("columns",k.poolConfigurationColumns)},dependencies:[L.RF,L.n9,L.ED,c.a,j.O,re.J,Pe.A]}),N})()}}]); \ 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..0815759ea --- /dev/null +++ b/src/pybind/mgr/dashboard/frontend/dist/en-US/3rdpartylicenses.txt @@ -0,0 +1,3545 @@ +@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. + + +@ngx-formly/bootstrap +MIT + +@ngx-formly/core +MIT + +@popperjs/core +MIT +The MIT License (MIT) + +Copyright (c) 2019 Federico Zivolo + +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-api/apidom-reference +Apache-2.0 + +@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-2023 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-2023 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. + + +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 + +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-proto +MIT +MIT License + +Copyright (c) 2022 Inspect JS + +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, Lee Byron 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. + + +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. + + +process +MIT +(The MIT License) + +Copyright (c) 2013 Roman Shtylman + +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. + + +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. + + +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. + + + +ramda +MIT +The MIT License (MIT) + +Copyright (c) 2013-2023 Scott Sauyet and Michael Hurley + +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. + + +ramda-adjunct +BSD-3-Clause +BSD 3-Clause License + +Copyright 2017-2019 Vladimír Gorej and the Ramda Adjunct contributors + +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. + + +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 +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. + +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-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-2022 Google LLC. https://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/803.08339784f3bb5d16.js b/src/pybind/mgr/dashboard/frontend/dist/en-US/803.08339784f3bb5d16.js new file mode 100644 index 000000000..067c61f3e --- /dev/null +++ b/src/pybind/mgr/dashboard/frontend/dist/en-US/803.08339784f3bb5d16.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkceph_dashboard=self.webpackChunkceph_dashboard||[]).push([[803],{77803:(Dr,t_,c)=>{c.r(t_),c.d(t_,{RgwModule:()=>L_,RoutedRgwModule:()=>Zr});var T=c(88692),a=c(20092),J=c(54247),G=c(51389),o_=c(37496),I=c(79512),j_=c(4268),et=c(44466),_t=c(66265),tt=c(23815),E=c.n(tt),ne=c(35758),Ee=c(95152),n_=c(33394),xe=c(64762),i_=c(35732),ke=c(25917),s_=c(19773),ot=c(96736),a_=c(5304),oe=c(20523),nt=c(93523),e=c(64537);let Q=class{constructor(n,_){this.http=n,this.rgwDaemonService=_,this.url="api/rgw/user"}list(){return this.enumerate().pipe((0,s_.zg)(n=>n.length>0?(0,ne.D)(n.map(_=>this.get(_))):(0,ke.of)([])))}enumerate(){return this.rgwDaemonService.request(n=>this.http.get(this.url,{params:n}))}enumerateEmail(){return this.rgwDaemonService.request(n=>this.http.get(`${this.url}/get_emails`,{params:n}))}get(n){return this.rgwDaemonService.request(_=>this.http.get(`${this.url}/${n}`,{params:_}))}getQuota(n){return this.rgwDaemonService.request(_=>this.http.get(`${this.url}/${n}/quota`,{params:_}))}create(n){return this.rgwDaemonService.request(_=>(E().keys(n).forEach(o=>{_=_.append(o,n[o])}),this.http.post(this.url,null,{params:_})))}update(n,_){return this.rgwDaemonService.request(o=>(E().keys(_).forEach(i=>{o=o.append(i,_[i])}),this.http.put(`${this.url}/${n}`,null,{params:o})))}updateQuota(n,_){return this.rgwDaemonService.request(o=>(E().keys(_).forEach(i=>{o=o.append(i,_[i])}),this.http.put(`${this.url}/${n}/quota`,null,{params:o})))}delete(n){return this.rgwDaemonService.request(_=>this.http.delete(`${this.url}/${n}`,{params:_}))}createSubuser(n,_){return this.rgwDaemonService.request(o=>(E().keys(_).forEach(i=>{o=o.append(i,_[i])}),this.http.post(`${this.url}/${n}/subuser`,null,{params:o})))}deleteSubuser(n,_){return this.rgwDaemonService.request(o=>this.http.delete(`${this.url}/${n}/subuser/${_}`,{params:o}))}addCapability(n,_,o){return this.rgwDaemonService.request(i=>(i=(i=i.append("type",_)).append("perm",o),this.http.post(`${this.url}/${n}/capability`,null,{params:i})))}deleteCapability(n,_,o){return this.rgwDaemonService.request(i=>(i=(i=i.append("type",_)).append("perm",o),this.http.delete(`${this.url}/${n}/capability`,{params:i})))}addS3Key(n,_){return this.rgwDaemonService.request(o=>(o=o.append("key_type","s3"),E().keys(_).forEach(i=>{o=o.append(i,_[i])}),this.http.post(`${this.url}/${n}/key`,null,{params:o})))}deleteS3Key(n,_){return this.rgwDaemonService.request(o=>(o=(o=o.append("key_type","s3")).append("access_key",_),this.http.delete(`${this.url}/${n}/key`,{params:o})))}exists(n){return this.get(n).pipe((0,ot.h)(!0),(0,a_.K)(_=>(E().isFunction(_.preventDefault)&&_.preventDefault(),(0,ke.of)(!1))))}emailExists(n){return n=decodeURIComponent(n),this.enumerateEmail().pipe((0,s_.zg)(_=>{const o=E().indexOf(_,n);return(0,ke.of)(-1!==o)}))}};Q.\u0275fac=function(n){return new(n||Q)(e.LFG(i_.eN),e.LFG(oe.b))},Q.\u0275prov=e.Yz7({token:Q,factory:Q.\u0275fac,providedIn:"root"}),Q=(0,xe.gn)([nt.o,(0,xe.w6)("design:paramtypes",[i_.eN,oe.b])],Q);var $=c(65862),w=c(18001),l_=c(93614),m=c(90070),Y=c(97161);class ze{constructor(){this.kmsProviders=["vault"],this.authMethods=["token","agent"],this.secretEngines=["kv","transit"],this.sse_s3="AES256",this.sse_kms="aws:kms"}}var ie=(()=>{return(t=ie||(ie={})).ENABLED="Enabled",t.DISABLED="Disabled",ie;var t})(),se=(()=>{return(t=se||(se={})).ENABLED="Enabled",t.SUSPENDED="Suspended",se;var t})(),ae=c(62862),j=c(18372),X=c(60312),B=c(30839),k=c(87925),q=c(94276),z=c(56310),H=c(41582);function it(t,n){1&t&&(e.TgZ(0,"option",29),e.SDv(1,30),e.qZA()),2&t&&e.Q6J("ngValue",null)}function st(t,n){if(1&t&&(e.TgZ(0,"option",31),e._uU(1),e.qZA()),2&t){const _=n.$implicit;e.Q6J("value",_),e.xp6(1),e.Oqu(_)}}function at(t,n){1&t&&(e.TgZ(0,"span",32),e.SDv(1,33),e.qZA())}function lt(t,n){if(1&t&&(e.TgZ(0,"div")(1,"div",7)(2,"label",22),e.SDv(3,23),e.qZA(),e.TgZ(4,"div",24)(5,"select",25),e.YNc(6,it,2,1,"option",26),e.YNc(7,st,2,2,"option",27),e.qZA(),e.YNc(8,at,2,0,"span",28),e.qZA()()()),2&t){const _=e.oxw(),o=e.MAs(5);e.xp6(6),e.Q6J("ngIf",null!==_.kmsProviders),e.xp6(1),e.Q6J("ngForOf",_.kmsProviders),e.xp6(1),e.Q6J("ngIf",_.configForm.showError("kms_provider",o,"required"))}}function rt(t,n){if(1&t&&(e.TgZ(0,"option",31),e._uU(1),e.qZA()),2&t){const _=n.$implicit;e.Q6J("value",_),e.xp6(1),e.Oqu(_)}}function ct(t,n){1&t&&(e.TgZ(0,"span",32),e.SDv(1,37),e.qZA())}function dt(t,n){if(1&t&&(e.TgZ(0,"div")(1,"div",7)(2,"label",34),e.SDv(3,35),e.qZA(),e.TgZ(4,"div",24)(5,"select",36),e.YNc(6,rt,2,2,"option",27),e.qZA(),e.YNc(7,ct,2,0,"span",28),e.qZA()()()),2&t){const _=e.oxw(),o=e.MAs(5);e.xp6(6),e.Q6J("ngForOf",_.authMethods),e.xp6(1),e.Q6J("ngIf",_.configForm.showError("auth_method",o,"required"))}}function ut(t,n){if(1&t&&(e.TgZ(0,"option",31),e._uU(1),e.qZA()),2&t){const _=n.$implicit;e.Q6J("value",_),e.xp6(1),e.Oqu(_)}}function gt(t,n){1&t&&(e.TgZ(0,"span",32),e.SDv(1,41),e.qZA())}function Rt(t,n){if(1&t&&(e.TgZ(0,"div")(1,"div",7)(2,"label",38),e.SDv(3,39),e.qZA(),e.TgZ(4,"div",24)(5,"select",40),e.YNc(6,ut,2,2,"option",27),e.qZA(),e.YNc(7,gt,2,0,"span",28),e.qZA()()()),2&t){const _=e.oxw(),o=e.MAs(5);e.xp6(6),e.Q6J("ngForOf",_.secretEngines),e.xp6(1),e.Q6J("ngIf",_.configForm.showError("secret_engine",o,"required"))}}function Tt(t,n){1&t&&(e.TgZ(0,"span",32),e.SDv(1,45),e.qZA())}function Et(t,n){if(1&t&&(e.TgZ(0,"div")(1,"div",7)(2,"label",42),e.SDv(3,43),e.qZA(),e.TgZ(4,"div",24),e._UZ(5,"input",44),e.YNc(6,Tt,2,0,"span",28),e.qZA()()()),2&t){const _=e.oxw(),o=e.MAs(5);e.xp6(6),e.Q6J("ngIf",_.configForm.showError("secret_path",o,"required"))}}function ft(t,n){1&t&&(e.TgZ(0,"div")(1,"div",7)(2,"label",46),e.SDv(3,47),e.qZA(),e.TgZ(4,"div",24),e._UZ(5,"input",48),e.qZA()()())}function pt(t,n){1&t&&(e.TgZ(0,"span",32),e.SDv(1,52),e.qZA())}function mt(t,n){if(1&t&&(e.TgZ(0,"div")(1,"div",7)(2,"label",49),e.SDv(3,50),e.qZA(),e.TgZ(4,"div",24),e._UZ(5,"input",51),e.YNc(6,pt,2,0,"span",28),e.qZA()()()),2&t){const _=e.oxw(),o=e.MAs(5);e.xp6(6),e.Q6J("ngIf",_.configForm.showError("address",o,"required"))}}function Mt(t,n){1&t&&(e.TgZ(0,"span",32),e.SDv(1,57),e.qZA())}function St(t,n){if(1&t){const _=e.EpF();e.TgZ(0,"div",7)(1,"label",53)(2,"span"),e.SDv(3,54),e.qZA(),e.TgZ(4,"cd-helper"),e.SDv(5,55),e.qZA()(),e.TgZ(6,"div",24)(7,"input",56),e.NdJ("change",function(i){e.CHM(_);const s=e.oxw();return e.KtG(s.fileUpload(i.target.files,"token"))}),e.qZA(),e.YNc(8,Mt,2,0,"span",28),e.qZA()()}if(2&t){const _=e.oxw(),o=e.MAs(5);e.xp6(8),e.Q6J("ngIf",_.configForm.showError("token",o,"required"))}}function Ct(t,n){1&t&&(e.TgZ(0,"span",32),e.SDv(1,62),e.qZA())}function Ot(t,n){if(1&t){const _=e.EpF();e.TgZ(0,"div")(1,"div",7)(2,"label",58)(3,"span"),e.SDv(4,59),e.qZA(),e.TgZ(5,"cd-helper"),e.SDv(6,60),e.qZA()(),e.TgZ(7,"div",24)(8,"input",61),e.NdJ("change",function(i){e.CHM(_);const s=e.oxw();return e.KtG(s.fileUpload(i.target.files,"ssl_cert"))}),e.qZA(),e.YNc(9,Ct,2,0,"span",28),e.qZA()()()}if(2&t){const _=e.oxw(),o=e.MAs(5);e.xp6(9),e.Q6J("ngIf",_.configForm.showError("ssl_cert",o,"required"))}}function Ft(t,n){1&t&&(e.TgZ(0,"span",32),e.SDv(1,67),e.qZA())}function Pt(t,n){if(1&t){const _=e.EpF();e.TgZ(0,"div")(1,"div",7)(2,"label",63)(3,"span"),e.SDv(4,64),e.qZA(),e.TgZ(5,"cd-helper"),e.SDv(6,65),e.qZA()(),e.TgZ(7,"div",24)(8,"input",66),e.NdJ("change",function(i){e.CHM(_);const s=e.oxw();return e.KtG(s.fileUpload(i.target.files,"client_cert"))}),e.qZA(),e.YNc(9,Ft,2,0,"span",28),e.qZA()()()}if(2&t){const _=e.oxw(),o=e.MAs(5);e.xp6(9),e.Q6J("ngIf",_.configForm.showError("client_cert",o,"required"))}}function Nt(t,n){1&t&&(e.TgZ(0,"span",32),e.SDv(1,72),e.qZA())}function Gt(t,n){if(1&t){const _=e.EpF();e.TgZ(0,"div")(1,"div",7)(2,"label",68)(3,"span"),e.SDv(4,69),e.qZA(),e.TgZ(5,"cd-helper"),e.SDv(6,70),e.qZA()(),e.TgZ(7,"div",24)(8,"input",71),e.NdJ("change",function(i){e.CHM(_);const s=e.oxw();return e.KtG(s.fileUpload(i.target.files,"client_key"))}),e.qZA(),e.YNc(9,Nt,2,0,"span",28),e.qZA()()()}if(2&t){const _=e.oxw(),o=e.MAs(5);e.xp6(9),e.Q6J("ngIf",_.configForm.showError("client_key",o,"required"))}}let At=(()=>{class t{constructor(_,o,i,s,l,r,d){this.formBuilder=_,this.activeModal=o,this.router=i,this.actionLabels=s,this.rgwBucketService=l,this.rgwEncryptionModal=r,this.notificationService=d,this.vaultAddress=/^((https?:\/\/)|(www.))(?:([a-zA-Z]+)|(\d+\.\d+.\d+.\d+)):\d{4}$/,this.submitAction=new e.vpe,this.createForm()}ngOnInit(){this.kmsProviders=this.rgwEncryptionModal.kmsProviders,this.authMethods=this.rgwEncryptionModal.authMethods,this.secretEngines=this.rgwEncryptionModal.secretEngines}createForm(){this.configForm=this.formBuilder.group({address:[null,[a.kI.required,m.h.custom("vaultPattern",_=>!E().isEmpty(_)&&!this.vaultAddress.test(_))]],kms_provider:["vault",a.kI.required],encryptionType:["aws:kms",a.kI.required],auth_method:["token",a.kI.required],secret_engine:["kv",a.kI.required],secret_path:["/"],namespace:[null],token:[null,[m.h.requiredIf({auth_method:"token"})]],ssl_cert:[null,m.h.sslCert()],client_cert:[null,m.h.pemCert()],client_key:[null,m.h.sslPrivKey()],kmsEnabled:[{value:!1}],s3Enabled:[{value:!1}]})}fileUpload(_,o){const i=_[0];(new FileReader).addEventListener("load",()=>{const l=this.configForm.get(o);l.setValue(i),l.markAsDirty(),l.markAsTouched(),l.updateValueAndValidity()})}onSubmit(){const _=this.configForm.value;this.rgwBucketService.setEncryptionConfig(_.encryptionType,_.kms_provider,_.auth_method,_.secret_engine,_.secret_path,_.namespace,_.address,_.token,_.owner,_.ssl_cert,_.client_cert,_.client_key).subscribe({next:()=>{this.notificationService.show(w.k.success,"Updated RGW Encryption Configuration values")},error:o=>{this.notificationService.show(w.k.error,o),this.configForm.setErrors({cdSubmitButton:!0})},complete:()=>{this.activeModal.close(),this.router.routeReuseStrategy.shouldReuseRoute=()=>!1,this.router.onSameUrlNavigation="reload",this.router.navigate([this.router.url])}})}}return t.\u0275fac=function(_){return new(_||t)(e.Y36(ae.O),e.Y36(G.Kz),e.Y36(J.F0),e.Y36(I.p4),e.Y36(Ee.o),e.Y36(ze),e.Y36(Y.g))},t.\u0275cmp=e.Xpm({type:t,selectors:[["cd-rgw-config-modal"]],outputs:{submitAction:"submitAction"},features:[e._Bn([ze])],decls:30,vars:14,consts:function(){let n,_,o,i,s,l,r,d,u,R,O,F,b,h,M,L,S,W,C,Z,D,U,v,y,f,P,N,te;return n="Update RGW Encryption Configurations",_="Encryption Type",o="SSE-S3 Encryption",i="SSE-KMS Encryption",s="Key management service provider",l="-- Select a provider --",r="This field is required.",d="Authentication Method",u="This field is required.",R="Secret Engine",O="This field is required.",F="Secret Path ",b="This field is required.",h="Namespace ",M="Vault Address ",L="This field is required.",S="Token",W=" The token authentication method expects a Vault token to be present in a plaintext file. ",C="This field is required.",Z="CA Certificate",D="The SSL certificate in PEM format.",U="This field is required.",v="Client Certificate",y="The Client certificate in PEM format.",f="This field is required.",P="Client Private Key",N="The Client Private Key in PEM format.",te="This field is required.",[[3,"modalRef"],[1,"modal-title"],n,[1,"modal-content"],["name","configForm",3,"formGroup"],["frm","ngForm"],[1,"modal-body"],[1,"form-group","row"],["for","encryptionType",1,"cd-col-form-label","required"],_,[1,"col-md-auto","custom-checkbox","form-check-inline","ms-3"],["formControlName","encryptionType","id","s3Enabled","type","radio","name","encryptionType","value","AES256",1,"form-check-input"],["for","s3Enabled",1,"custom-check-label"],o,[1,"col-md-auto","custom-checkbox","form-check-inline"],["formControlName","encryptionType","id","kmsEnabled","name","encryptionType","value","aws:kms","type","radio",1,"form-check-input"],["for","kmsEnabled",1,"custom-check-label"],i,[4,"ngIf"],["class","form-group row",4,"ngIf"],[1,"modal-footer"],[3,"submitText","form","submitActionEvent"],["for","kms_provider",1,"cd-col-form-label","required"],s,[1,"cd-col-form-input"],["id","kms_provider","name","kms_provider","formControlName","kms_provider",1,"form-select"],[3,"ngValue",4,"ngIf"],[3,"value",4,"ngFor","ngForOf"],["class","invalid-feedback",4,"ngIf"],[3,"ngValue"],l,[3,"value"],[1,"invalid-feedback"],r,["for","auth_method",1,"cd-col-form-label","required"],d,["id","auth_method","name","auth_method","formControlName","auth_method",1,"form-select"],u,["for","secret_engine",1,"cd-col-form-label","required"],R,["id","secret_engine","name","secret_engine","formControlName","secret_engine",1,"form-select"],O,["for","secret_path",1,"cd-col-form-label"],F,["id","secret_path","name","secret_path","type","text","formControlName","secret_path",1,"form-control"],b,["for","namespace",1,"cd-col-form-label"],h,["id","namespace","name","namespace","type","text","formControlName","namespace",1,"form-control"],["for","address",1,"cd-col-form-label","required"],M,["id","address","name","address","formControlName","address","placeholder","http://127.0.0.1:8000",1,"form-control"],L,["for","token",1,"cd-col-form-label","required"],S,W,["type","file","formControlName","token",3,"change"],C,["for","ssl_cert",1,"cd-col-form-label"],Z,D,["type","file","formControlName","ssl_cert",3,"change"],U,["for","client_cert",1,"cd-col-form-label"],v,y,["type","file","formControlName","client_cert",3,"change"],f,["for","client_key",1,"cd-col-form-label"],P,N,["type","file",3,"change"],te]},template:function(_,o){1&_&&(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)(6,"div",6)(7,"div",7)(8,"label",8),e.SDv(9,9),e.qZA(),e.TgZ(10,"div",10),e._UZ(11,"input",11),e.TgZ(12,"label",12),e.SDv(13,13),e.qZA()(),e.TgZ(14,"div",14),e._UZ(15,"input",15),e.TgZ(16,"label",16),e.SDv(17,17),e.qZA()()(),e.YNc(18,lt,9,3,"div",18),e.YNc(19,dt,8,2,"div",18),e.YNc(20,Rt,8,2,"div",18),e.YNc(21,Et,7,1,"div",18),e.YNc(22,ft,6,0,"div",18),e.YNc(23,mt,7,1,"div",18),e.YNc(24,St,9,1,"div",19),e.YNc(25,Ot,10,1,"div",18),e.YNc(26,Pt,10,1,"div",18),e.YNc(27,Gt,10,1,"div",18),e.qZA(),e.TgZ(28,"div",20)(29,"cd-form-button-panel",21),e.NdJ("submitActionEvent",function(){return o.onSubmit()}),e.qZA()()(),e.BQk(),e.qZA()),2&_&&(e.Q6J("modalRef",o.activeModal),e.xp6(4),e.Q6J("formGroup",o.configForm),e.xp6(14),e.Q6J("ngIf","aws:kms"===o.configForm.getValue("encryptionType")||"AES256"===o.configForm.getValue("encryptionType")),e.xp6(1),e.Q6J("ngIf","aws:kms"===o.configForm.getValue("encryptionType")||"AES256"===o.configForm.getValue("encryptionType")),e.xp6(1),e.Q6J("ngIf","aws:kms"===o.configForm.getValue("encryptionType")||"AES256"===o.configForm.getValue("encryptionType")),e.xp6(1),e.Q6J("ngIf","aws:kms"===o.configForm.getValue("encryptionType")||"AES256"===o.configForm.getValue("encryptionType")),e.xp6(1),e.Q6J("ngIf","aws:kms"===o.configForm.getValue("encryptionType")||"AES256"===o.configForm.getValue("encryptionType")),e.xp6(1),e.Q6J("ngIf","aws:kms"===o.configForm.getValue("encryptionType")||"AES256"===o.configForm.getValue("encryptionType")),e.xp6(1),e.Q6J("ngIf","token"===o.configForm.getValue("auth_method")),e.xp6(1),e.Q6J("ngIf","aws:kms"===o.configForm.getValue("encryptionType")||"AES256"===o.configForm.getValue("encryptionType")),e.xp6(1),e.Q6J("ngIf","aws:kms"===o.configForm.getValue("encryptionType")||"AES256"===o.configForm.getValue("encryptionType")),e.xp6(1),e.Q6J("ngIf","aws:kms"===o.configForm.getValue("encryptionType")||"AES256"===o.configForm.getValue("encryptionType")),e.xp6(2),e.Q6J("submitText",o.actionLabels.SUBMIT)("form",o.configForm))},dependencies:[T.sg,T.O5,j.S,X.z,B.p,k.o,q.b,z.P,H.V,a._Y,a.YN,a.Kr,a.Fj,a.EJ,a._,a.JJ,a.JL,a.sg,a.u]}),t})();var ee=c(63285),fe=c(82945),r_=c(63622),_e=c(10545);function It(t,n){1&t&&(e.TgZ(0,"div",9)(1,"label",42),e.SDv(2,43),e.qZA(),e.TgZ(3,"div",12),e._UZ(4,"input",44),e.qZA()())}function bt(t,n){1&t&&(e.TgZ(0,"span",45),e.SDv(1,46),e.qZA())}function ht(t,n){1&t&&(e.TgZ(0,"span",45),e.SDv(1,47),e.qZA())}function Lt(t,n){1&t&&(e.TgZ(0,"span",45),e.SDv(1,48),e.qZA())}function Wt(t,n){1&t&&(e.TgZ(0,"span",45),e.SDv(1,49),e.qZA())}function $t(t,n){1&t&&(e.TgZ(0,"span",45),e.SDv(1,50),e.qZA())}function Zt(t,n){1&t&&(e.TgZ(0,"span",45),e.SDv(1,51),e.qZA())}function Dt(t,n){1&t&&(e.TgZ(0,"span",45),e.SDv(1,52),e.qZA())}function Ut(t,n){1&t&&(e.TgZ(0,"span",45),e.SDv(1,53),e.qZA())}function vt(t,n){1&t&&(e.TgZ(0,"option",54),e.SDv(1,55),e.qZA()),2&t&&e.Q6J("ngValue",null)}function yt(t,n){1&t&&(e.TgZ(0,"option",54),e.SDv(1,56),e.qZA()),2&t&&e.Q6J("ngValue",null)}function wt(t,n){if(1&t&&(e.TgZ(0,"option",57),e._uU(1),e.qZA()),2&t){const _=n.$implicit;e.Q6J("value",_),e.xp6(1),e.Oqu(_)}}function xt(t,n){1&t&&(e.TgZ(0,"span",45),e.SDv(1,58),e.qZA())}function kt(t,n){1&t&&(e.TgZ(0,"option",54),e.SDv(1,60),e.qZA()),2&t&&e.Q6J("ngValue",null)}function zt(t,n){1&t&&(e.TgZ(0,"option",54),e.SDv(1,61),e.qZA()),2&t&&e.Q6J("ngValue",null)}function qt(t,n){if(1&t&&(e.TgZ(0,"option",57),e._uU(1),e.qZA()),2&t){const _=n.$implicit;e.Q6J("value",_.name),e.xp6(1),e.Oqu(_.description)}}function Ht(t,n){1&t&&(e.TgZ(0,"span",45),e.SDv(1,62),e.qZA())}function Xt(t,n){if(1&t&&(e.TgZ(0,"select",59),e.YNc(1,kt,2,1,"option",18),e.YNc(2,zt,2,1,"option",18),e.YNc(3,qt,2,2,"option",19),e.qZA(),e.YNc(4,Ht,2,0,"span",14)),2&t){e.oxw();const _=e.MAs(2),o=e.oxw();e.xp6(1),e.Q6J("ngIf",null===o.placementTargets),e.xp6(1),e.Q6J("ngIf",null!==o.placementTargets),e.xp6(1),e.Q6J("ngForOf",o.placementTargets),e.xp6(1),e.Q6J("ngIf",o.bucketForm.showError("placement-target",_,"required"))}}function Bt(t,n){1&t&&(e.ynx(0),e._UZ(1,"input",63),e.BQk())}function Qt(t,n){if(1&t){const _=e.EpF();e.TgZ(0,"fieldset")(1,"legend",25),e.SDv(2,64),e.qZA(),e.TgZ(3,"div",9)(4,"div",27)(5,"div",28)(6,"input",65),e.NdJ("change",function(){e.CHM(_);const i=e.oxw(2);return e.KtG(i.setMfaDeleteValidators())}),e.qZA(),e.TgZ(7,"label",66),e.SDv(8,67),e.qZA(),e.TgZ(9,"cd-helper")(10,"span"),e.SDv(11,68),e.qZA()()()()()()}}function Yt(t,n){1&t&&(e.TgZ(0,"span",45),e.SDv(1,77),e.qZA())}function Jt(t,n){if(1&t&&(e.TgZ(0,"div",9)(1,"label",74),e.SDv(2,75),e.qZA(),e.TgZ(3,"div",12),e._UZ(4,"input",76),e.YNc(5,Yt,2,0,"span",14),e.qZA()()),2&t){e.oxw(2);const _=e.MAs(2),o=e.oxw();e.xp6(5),e.Q6J("ngIf",o.bucketForm.showError("mfa-token-serial",_,"required"))}}function Kt(t,n){1&t&&(e.TgZ(0,"span",45),e.SDv(1,81),e.qZA())}function Vt(t,n){if(1&t&&(e.TgZ(0,"div",9)(1,"label",78),e.SDv(2,79),e.qZA(),e.TgZ(3,"div",12),e._UZ(4,"input",80),e.YNc(5,Kt,2,0,"span",14),e.qZA()()),2&t){e.oxw(2);const _=e.MAs(2),o=e.oxw();e.xp6(5),e.Q6J("ngIf",o.bucketForm.showError("mfa-token-pin",_,"required"))}}function jt(t,n){if(1&t){const _=e.EpF();e.TgZ(0,"fieldset")(1,"legend",25),e.SDv(2,69),e.qZA(),e.TgZ(3,"div",9)(4,"div",27)(5,"div",28)(6,"input",70),e.NdJ("change",function(){e.CHM(_);const i=e.oxw(2);return e.KtG(i.setMfaDeleteValidators())}),e.qZA(),e.TgZ(7,"label",71),e.SDv(8,72),e.qZA(),e.TgZ(9,"cd-helper")(10,"span"),e.SDv(11,73),e.qZA()()()()(),e.YNc(12,Jt,6,1,"div",8),e.YNc(13,Vt,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 eo(t,n){1&t&&(e.TgZ(0,"div",9)(1,"label",82),e.SDv(2,83),e.qZA(),e.TgZ(3,"div",12)(4,"select",84)(5,"option",85),e.SDv(6,86),e.qZA(),e.TgZ(7,"option",87),e.SDv(8,88),e.qZA()()()())}function _o(t,n){1&t&&(e.TgZ(0,"span",45),e.SDv(1,93),e.qZA())}function to(t,n){1&t&&(e.TgZ(0,"span",45),e.SDv(1,94),e.qZA())}function oo(t,n){if(1&t&&(e.TgZ(0,"div",9)(1,"label",89),e.ynx(2),e.SDv(3,90),e.BQk(),e.TgZ(4,"cd-helper"),e.SDv(5,91),e.qZA()(),e.TgZ(6,"div",12),e._UZ(7,"input",92),e.YNc(8,_o,2,0,"span",14),e.YNc(9,to,2,0,"span",14),e.qZA()()),2&t){e.oxw();const _=e.MAs(2),o=e.oxw();e.xp6(8),e.Q6J("ngIf",o.bucketForm.showError("lock_retention_period_days",_,"pattern")),e.xp6(1),e.Q6J("ngIf",o.bucketForm.showError("lock_retention_period_days",_,"lockDays"))}}function no(t,n){1&t&&(e.TgZ(0,"option",54),e.SDv(1,105),e.qZA()),2&t&&e.Q6J("ngValue",null)}function io(t,n){if(1&t&&(e.TgZ(0,"option",57),e._uU(1),e.qZA()),2&t){const _=n.$implicit;e.Q6J("value",_),e.xp6(1),e.Oqu(_)}}function so(t,n){1&t&&(e.TgZ(0,"span",45),e.SDv(1,106),e.qZA())}function ao(t,n){if(1&t&&(e.TgZ(0,"div")(1,"div",9)(2,"label",102),e.SDv(3,103),e.qZA(),e.TgZ(4,"div",12)(5,"select",104),e.YNc(6,no,2,1,"option",18),e.YNc(7,io,2,2,"option",19),e.qZA(),e.YNc(8,so,2,0,"span",14),e.qZA()()()),2&t){e.oxw(2);const _=e.MAs(2),o=e.oxw();e.xp6(5),e.Q6J("autofocus",o.editing),e.xp6(1),e.Q6J("ngIf",null!==o.kmsProviders),e.xp6(1),e.Q6J("ngForOf",o.kmsProviders),e.xp6(1),e.Q6J("ngIf",o.bucketForm.showError("kms_provider",_,"required"))}}function lo(t,n){1&t&&(e.TgZ(0,"span",45),e.SDv(1,110),e.qZA())}function ro(t,n){if(1&t&&(e.TgZ(0,"div")(1,"div",9)(2,"label",107),e.SDv(3,108),e.qZA(),e.TgZ(4,"div",12),e._UZ(5,"input",109),e.YNc(6,lo,2,0,"span",14),e.qZA()()()),2&t){e.oxw(2);const _=e.MAs(2),o=e.oxw();e.xp6(6),e.Q6J("ngIf",o.bucketForm.showError("keyId",_,"required"))}}function co(t,n){if(1&t&&(e.TgZ(0,"div")(1,"div",9)(2,"div",27)(3,"div",95),e._UZ(4,"input",96),e.TgZ(5,"label",97),e.SDv(6,98),e.qZA()()()(),e.TgZ(7,"div",9)(8,"div",27)(9,"div",95),e._UZ(10,"input",99),e.TgZ(11,"label",100),e.SDv(12,101),e.qZA()()()(),e.YNc(13,ao,9,4,"div",24),e.YNc(14,ro,7,1,"div",24),e.qZA()),2&t){const _=e.oxw(2);e.xp6(4),e.uIk("disabled",!_.s3VaultConfig||null),e.xp6(6),e.uIk("disabled",!_.kmsVaultConfig||null),e.xp6(3),e.Q6J("ngIf","aws:kms"===_.bucketForm.getValue("encryption_type")),e.xp6(1),e.Q6J("ngIf","aws:kms"===_.bucketForm.getValue("encryption_type"))}}const c_=function(t){return{required:t}};function uo(t,n){if(1&t){const _=e.EpF();e.TgZ(0,"div",1)(1,"form",2,3)(3,"div",4)(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,It,5,0,"div",8),e.TgZ(10,"div",9)(11,"label",10),e.SDv(12,11),e.qZA(),e.TgZ(13,"div",12),e._UZ(14,"input",13),e.YNc(15,bt,2,0,"span",14),e.YNc(16,ht,2,0,"span",14),e.YNc(17,Lt,2,0,"span",14),e.YNc(18,Wt,2,0,"span",14),e.YNc(19,$t,2,0,"span",14),e.YNc(20,Zt,2,0,"span",14),e.YNc(21,Dt,2,0,"span",14),e.YNc(22,Ut,2,0,"span",14),e.qZA()(),e.TgZ(23,"div",9)(24,"label",15),e.SDv(25,16),e.qZA(),e.TgZ(26,"div",12)(27,"select",17),e.YNc(28,vt,2,1,"option",18),e.YNc(29,yt,2,1,"option",18),e.YNc(30,wt,2,2,"option",19),e.qZA(),e.YNc(31,xt,2,0,"span",14),e.qZA()(),e.TgZ(32,"div",9)(33,"label",20),e.SDv(34,21),e.qZA(),e.TgZ(35,"div",12),e.YNc(36,Xt,5,4,"ng-template",null,22,e.W1O),e.YNc(38,Bt,2,0,"ng-container",23),e.qZA()(),e.YNc(39,Qt,12,0,"fieldset",24),e.YNc(40,jt,14,2,"fieldset",24),e.TgZ(41,"fieldset")(42,"legend",25),e.SDv(43,26),e.qZA(),e.TgZ(44,"div",9)(45,"div",27)(46,"div",28),e._UZ(47,"input",29),e.TgZ(48,"label",30),e.SDv(49,31),e.qZA(),e.TgZ(50,"cd-helper")(51,"span"),e.SDv(52,32),e.qZA()()()()(),e.YNc(53,eo,9,0,"div",8),e.YNc(54,oo,10,2,"div",8),e.qZA(),e.TgZ(55,"fieldset")(56,"legend",25),e.SDv(57,33),e.qZA(),e.TgZ(58,"div",9)(59,"div",27)(60,"div",28),e._UZ(61,"input",34),e.TgZ(62,"label",35),e.SDv(63,36),e.qZA(),e.TgZ(64,"cd-helper",37)(65,"span"),e.tHW(66,38),e.TgZ(67,"a",39),e.NdJ("click",function(){e.CHM(_);const i=e.oxw();return e.KtG(i.openConfigModal())}),e.qZA(),e.N_p(),e.qZA()()()()(),e.YNc(68,co,15,4,"div",24),e.qZA()(),e.TgZ(69,"div",40)(70,"cd-form-button-panel",41),e.NdJ("submitActionEvent",function(){e.CHM(_);const i=e.oxw();return e.KtG(i.submit())}),e.ALo(71,"titlecase"),e.ALo(72,"upperFirst"),e.qZA()()()()()}if(2&t){const _=e.MAs(2),o=e.MAs(37),i=e.oxw();e.xp6(1),e.Q6J("formGroup",i.bucketForm),e.xp6(6),e.pQV(e.lcZ(6,31,i.action))(e.lcZ(7,33,i.resource)),e.QtT(5),e.xp6(2),e.Q6J("ngIf",i.editing),e.xp6(2),e.Q6J("ngClass",e.VKq(39,c_,!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(41,c_,!i.editing)),e.xp6(5),e.Q6J("ngIf",i.editing)("ngIfElse",o),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(7),e.uIk("disabled",!i.kmsVaultConfig&&!i.s3VaultConfig||null),e.xp6(7),e.Q6J("ngIf",i.bucketForm.getValue("encryption_enabled")),e.xp6(2),e.Q6J("form",i.bucketForm)("submitText",e.lcZ(71,35,i.action)+" "+e.lcZ(72,37,i.resource))}}let d_=(()=>{class t extends l_.E{get isVersioningEnabled(){return this.bucketForm.getValue("versioning")}get isMfaDeleteEnabled(){return this.bucketForm.getValue("mfa-delete")}constructor(_,o,i,s,l,r,d,u,R,O,F){super(),this.route=_,this.router=o,this.formBuilder=i,this.rgwBucketService=s,this.rgwSiteService=l,this.modalService=r,this.rgwUserService=d,this.notificationService=u,this.rgwEncryptionModal=R,this.actionLabels=O,this.changeDetectorRef=F,this.editing=!1,this.owners=null,this.kmsProviders=null,this.placementTargets=[],this.isVersioningAlreadyEnabled=!1,this.isMfaDeleteAlreadyEnabled=!1,this.icons=$.P,this.kmsVaultConfig=!1,this.s3VaultConfig=!1,this.editing=this.router.url.startsWith(`/rgw/bucket/${I.MQ.EDIT}`),this.action=this.editing?this.actionLabels.EDIT:this.actionLabels.CREATE,this.resource="bucket",this.createForm()}ngAfterViewChecked(){this.changeDetectorRef.detectChanges()}createForm(){const _=this,o=m.h.custom("lockDays",()=>{if(!_.bucketForm||!E().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]],kms_provider:["vault"],"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}],encryption_enabled:[null],encryption_type:[null,[m.h.requiredIf({encryption_enabled:!0})]],keyId:[null,[m.h.requiredIf({encryption_type:"aws:kms",encryption_enabled:!0})]],lock_mode:["COMPLIANCE"],lock_retention_period_days:[0,[m.h.number(!1),o]]})}ngOnInit(){const _={owners:this.rgwUserService.enumerate()};this.kmsProviders=this.rgwEncryptionModal.kmsProviders,this.rgwBucketService.getEncryptionConfig().subscribe(o=>{this.kmsVaultConfig=o[0],this.s3VaultConfig=o[1],this.kmsVaultConfig&&this.s3VaultConfig?this.bucketForm.get("encryption_type").setValue(""):this.kmsVaultConfig?this.bucketForm.get("encryption_type").setValue("aws:kms"):this.s3VaultConfig?this.bucketForm.get("encryption_type").setValue("AES256"):this.bucketForm.get("encryption_type").setValue("")}),this.editing||(_.getPlacementTargets=this.rgwSiteService.get("placement-targets")),this.route.params.subscribe(o=>{if(o.hasOwnProperty("bid")){const i=decodeURIComponent(o.bid);_.getBid=this.rgwBucketService.get(i)}(0,ne.D)(_).subscribe(i=>{if(this.owners=i.owners.sort(),i.getPlacementTargets){const s=i.getPlacementTargets;this.zonegroup=s.zonegroup,E().forEach(s.placement_targets,l=>{l.description=`${l.name} (${"pool"}: ${l.data_pool})`,this.placementTargets.push(l)}),1===this.placementTargets.length&&this.bucketForm.get("placement-target").setValue(this.placementTargets[0].name)}if(i.getBid){const s=i.getBid,l=E().clone(this.bucketForm.getRawValue());let r=E().pick(s,E().keys(l));r.lock_retention_period_days=this.rgwBucketService.getLockDays(s),r["placement-target"]=s.placement_rule,r.versioning=s.versioning===se.ENABLED,r["mfa-delete"]=s.mfa_delete===ie.ENABLED,r.encryption_enabled="Enabled"===s.encryption,r=E().merge(l,r),this.bucketForm.setValue(r),this.editing&&(this.isVersioningAlreadyEnabled=this.isVersioningEnabled,this.isMfaDeleteAlreadyEnabled=this.isMfaDeleteEnabled,this.setMfaDeleteValidators(),r.lock_enabled&&this.bucketForm.controls.versioning.disable())}this.loadingReady()})})}goToListView(){this.router.navigate(["/rgw/bucket"])}submit(){if(null==this.bucketForm.getValue("encryption_enabled")&&(this.bucketForm.get("encryption_enabled").setValue(!1),this.bucketForm.get("encryption_type").setValue(null)),this.bucketForm.pristine)return void this.goToListView();const _=this.bucketForm.value;if(this.editing){const o=this.getVersioningStatus(),i=this.getMfaDeleteStatus();this.rgwBucketService.update(_.bid,_.id,_.owner,o,_.encryption_enabled,_.encryption_type,_.keyId,i,_["mfa-token-serial"],_["mfa-token-pin"],_.lock_mode,_.lock_retention_period_days).subscribe(()=>{this.notificationService.show(w.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,_.encryption_enabled,_.encryption_type,_.keyId).subscribe(()=>{this.notificationService.show(w.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"),o=this.bucketForm.get("mfa-token-pin");this.areMfaCredentialsRequired()?(_.setValidators(a.kI.required),o.setValidators(a.kI.required)):(_.setValidators(null),o.setValidators(null)),_.updateValueAndValidity(),o.updateValueAndValidity()}getVersioningStatus(){return this.isVersioningEnabled?se.ENABLED:se.SUSPENDED}getMfaDeleteStatus(){return this.isMfaDeleteEnabled?ie.ENABLED:ie.DISABLED}fileUpload(_,o){const i=_[0];(new FileReader).addEventListener("load",()=>{const l=this.bucketForm.get(o);l.setValue(i),l.markAsDirty(),l.markAsTouched(),l.updateValueAndValidity()})}openConfigModal(){this.modalService.show(At,null,{size:"lg"}).componentInstance.configForm.get("encryptionType").setValue(this.bucketForm.getValue("encryption_type")||"AES256")}}return t.\u0275fac=function(_){return new(_||t)(e.Y36(J.gz),e.Y36(J.F0),e.Y36(ae.O),e.Y36(Ee.o),e.Y36(n_.I),e.Y36(ee.Z),e.Y36(Q),e.Y36(Y.g),e.Y36(ze),e.Y36(I.p4),e.Y36(e.sBO))},t.\u0275cmp=e.Xpm({type:t,selectors:[["cd-rgw-bucket-form"]],features:[e._Bn([ze]),e.qOj],decls:1,vars:1,consts:function(){let n,_,o,i,s,l,r,d,u,R,O,F,b,h,M,L,S,W,C,Z,D,U,v,y,f,P,N,te,A,Me,Se,Ce,Oe,Fe,Pe,Ne,Ge,Ae,Ie,be,he,Le,We,$e,Ze,De,Ue,ve,ye,we;return n="" + "\ufffd0\ufffd" + " " + "\ufffd1\ufffd" + "",_="Name",o="Name...",i="Owner",s="Placement target",l="Locking",r="Enabled",d="Enables locking for the objects in the bucket. Locking can only be enabled while creating a bucket.",u="Security",R="Encryption",O="Enables encryption for the objects in the bucket. To enable encryption on a bucket you need to set the configuration values for SSE-S3 or SSE-KMS. To set the configuration values " + "\ufffd#67\ufffd" + "Click here" + "\ufffd/#67\ufffd" + "",F="Id",b="This field is required.",h="Bucket names can only contain lowercase letters, numbers, periods and hyphens.",M="The chosen name is already in use.",L="Bucket names must not contain uppercase characters or underscores.",S="Each label must start and end with a lowercase letter or a number.",W="Bucket names cannot be formatted as IP address.",C="Bucket labels cannot be empty and can only contain lowercase letters, numbers and hyphens.",Z="Bucket names must be 3 to 63 characters long.",D="Loading...",U="-- Select a user --",v="This field is required.",y="Loading...",f="-- Select a placement target --",P="This field is required.",N="Versioning",te="Enabled",A="Enables versioning for the objects in the bucket.",Me="Multi-Factor Authentication",Se="Delete enabled",Ce="Enables MFA (multi-factor authentication) Delete, which requires additional authentication for changing the bucket versioning state.",Oe="Token Serial Number",Fe="This field is required.",Pe="Token PIN",Ne="This field is required.",Ge="Mode",Ae="Compliance",Ie="Governance",be="Days",he="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.",Le="The entered value must be a positive integer.",We="Retention Days must be a positive integer.",$e="SSE-S3 Encryption",Ze="Connect to an external key management service",De="KMS Provider",Ue="-- Select a provider --",ve="This field is required.",ye="Key Id ",we="This field is required.",[["class","cd-col-form",4,"cdFormLoading"],[1,"cd-col-form"],["name","bucketForm","novalidate","",3,"formGroup"],["frm","ngForm"],[1,"card"],[1,"card-header"],n,[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",o,"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-select",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"],l,[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"],r,d,u,["id","encryption_enabled","name","encryption_enabled","formControlName","encryption_enabled","type","checkbox",1,"form-check-input"],["for","encryption_enabled",1,"form-check-label"],R,["aria-label","toggle encryption helper"],O,["href","#/rgw/bucket/create","aria-label","click here",3,"click"],[1,"card-footer"],["wrappingClass","text-right",3,"form","submitText","submitActionEvent"],["for","id",1,"cd-col-form-label"],F,["id","id","name","id","type","text","formControlName","id","readonly","",1,"form-control"],[1,"invalid-feedback"],b,h,M,L,S,W,C,Z,[3,"ngValue"],D,U,[3,"value"],v,["id","placement-target","name","placement-target","formControlName","placement-target",1,"form-select"],y,f,P,["id","placement-target","name","placement-target","formControlName","placement-target","type","text","readonly","",1,"form-control"],N,["type","checkbox","id","versioning","name","versioning","formControlName","versioning",1,"custom-control-input",3,"change"],["for","versioning",1,"custom-control-label"],te,A,Me,["type","checkbox","id","mfa-delete","name","mfa-delete","formControlName","mfa-delete",1,"custom-control-input",3,"change"],["for","mfa-delete",1,"custom-control-label"],Se,Ce,["for","mfa-token-serial",1,"cd-col-form-label"],Oe,["type","text","id","mfa-token-serial","name","mfa-token-serial","formControlName","mfa-token-serial",1,"form-control"],Fe,["for","mfa-token-pin",1,"cd-col-form-label"],Pe,["type","text","id","mfa-token-pin","name","mfa-token-pin","formControlName","mfa-token-pin",1,"form-control"],Ne,["for","lock_mode",1,"cd-col-form-label"],Ge,["formControlName","lock_mode","name","lock_mode","id","lock_mode",1,"form-select"],["value","COMPLIANCE"],Ae,["value","GOVERNANCE"],Ie,["for","lock_retention_period_days",1,"cd-col-form-label"],be,he,["type","number","id","lock_retention_period_days","formControlName","lock_retention_period_days","min","0",1,"form-control"],Le,We,[1,"custom-control","custom-radio","custom-control-inline","ps-5"],["formControlName","encryption_type","id","sse_S3_enabled","type","radio","name","encryption_type","value","AES256",1,"form-check-input"],["for","sse_S3_enabled",1,"form-control-label"],$e,["formControlName","encryption_type","id","kms_enabled","name","encryption_type","value","aws:kms","type","radio",1,"form-check-input"],["for","kms_enabled",1,"form-control-label"],Ze,["for","kms_provider",1,"cd-col-form-label","required"],De,["id","kms_provider","name","kms_provider","formControlName","kms_provider",1,"form-select",3,"autofocus"],Ue,ve,["for","keyId",1,"cd-col-form-label","required"],ye,["id","keyId","name","keyId","type","text","formControlName","keyId",1,"form-control"],we]},template:function(_,o){1&_&&e.YNc(0,uo,73,43,"div",0),2&_&&e.Q6J("cdFormLoading",o.loading)},dependencies:[T.mk,T.sg,T.O5,j.S,B.p,fe.U,r_.y,k.o,q.b,z.P,H.V,a._Y,a.YN,a.Kr,a.Fj,a.wV,a.Wl,a.EJ,a._,a.JJ,a.JL,a.qQ,a.sg,a.u,T.rS,_e.m]}),t})();var u_=c(70882),Be=c(68136),Qe=c(30982),le=c(59019),qe=c(68774),Ye=c(47557),g_=c(66369),re=c(51847),ce=c(47640),R_=c(60251),Je=c(94928),T_=c(68962),go=c(96102);function Ro(t,n){1&t&&(e.TgZ(0,"td"),e.SDv(1,17),e.qZA())}function To(t,n){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 Eo(t,n){1&t&&(e.TgZ(0,"td"),e.SDv(1,18),e.qZA())}function fo(t,n){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 po(t,n){if(1&t&&(e.ynx(0),e.TgZ(1,"tr")(2,"td",5),e.SDv(3,15),e.qZA(),e.YNc(4,Ro,2,0,"td",0),e.YNc(5,To,3,3,"td",0),e.qZA(),e.TgZ(6,"tr")(7,"td",5),e.SDv(8,16),e.qZA(),e.YNc(9,Eo,2,0,"td",0),e.YNc(10,fo,2,1,"td",0),e.qZA(),e.BQk()),2&t){const _=e.oxw(2);e.xp6(4),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 mo(t,n){if(1&t&&(e.ynx(0),e.TgZ(1,"tr")(2,"td",5),e.SDv(3,19),e.qZA(),e.TgZ(4,"td"),e._uU(5),e.qZA()(),e.TgZ(6,"tr")(7,"td",5),e.SDv(8,20),e.qZA(),e.TgZ(9,"td"),e._uU(10),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 Mo(t,n){if(1&t&&(e.ynx(0),e.TgZ(1,"table",1)(2,"tbody")(3,"tr")(4,"td",2),e.SDv(5,3),e.qZA(),e.TgZ(6,"td",4),e._uU(7),e.qZA()(),e.TgZ(8,"tr")(9,"td",5),e.SDv(10,6),e.qZA(),e.TgZ(11,"td"),e._uU(12),e.qZA()(),e.TgZ(13,"tr")(14,"td",5),e.SDv(15,7),e.qZA(),e.TgZ(16,"td"),e._uU(17),e.qZA()(),e.TgZ(18,"tr")(19,"td",5),e.SDv(20,8),e.qZA(),e.TgZ(21,"td"),e._uU(22),e.qZA()(),e.TgZ(23,"tr")(24,"td",5),e.SDv(25,9),e.qZA(),e.TgZ(26,"td"),e._uU(27),e.qZA()(),e.TgZ(28,"tr")(29,"td",5),e.SDv(30,10),e.qZA(),e.TgZ(31,"td"),e._uU(32),e.ALo(33,"cdDate"),e.qZA()()()(),e.TgZ(34,"div")(35,"legend"),e.SDv(36,11),e.qZA(),e.TgZ(37,"table",1)(38,"tbody")(39,"tr")(40,"td",2),e.SDv(41,12),e.qZA(),e.TgZ(42,"td",4),e._uU(43),e.ALo(44,"booleanText"),e.qZA()(),e.YNc(45,po,11,4,"ng-container",0),e.qZA()()(),e.TgZ(46,"legend"),e.SDv(47,13),e.qZA(),e.TgZ(48,"table",1)(49,"tbody")(50,"tr")(51,"td",2),e.SDv(52,14),e.qZA(),e.TgZ(53,"td",4),e._uU(54),e.ALo(55,"booleanText"),e.qZA()(),e.YNc(56,mo,11,2,"ng-container",0),e.qZA()(),e.BQk()),2&t){const _=e.oxw();e.xp6(7),e.Oqu(_.selection.versioning),e.xp6(5),e.Oqu(_.selection.encryption),e.xp6(5),e.Oqu(_.selection.mfa_delete),e.xp6(5),e.Oqu(_.selection.index_type),e.xp6(5),e.Oqu(_.selection.placement_rule),e.xp6(5),e.Oqu(e.lcZ(33,10,_.selection.mtime)),e.xp6(11),e.Oqu(e.lcZ(44,12,_.selection.bucket_quota.enabled)),e.xp6(2),e.Q6J("ngIf",_.selection.bucket_quota.enabled),e.xp6(9),e.Oqu(e.lcZ(55,14,_.selection.lock_enabled)),e.xp6(2),e.Q6J("ngIf",_.selection.lock_enabled)}}let So=(()=>{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(Ee.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 n,_,o,i,s,l,r,d,u,R,O,F,b,h,M,L;return n="Versioning",_="Encryption",o="MFA Delete",i="Index type",s="Placement rule",l="Last modification time",r="Bucket quota",d="Enabled",u="Locking",R="Enabled",O="Maximum size",F="Maximum objects",b="Unlimited",h="Unlimited",M="Mode",L="Days",[[4,"ngIf"],[1,"table","table-striped","table-bordered"],[1,"bold","w-25"],n,[1,"w-75"],[1,"bold"],_,o,i,s,l,r,d,u,R,O,F,b,h,M,L]},template:function(_,o){1&_&&e.YNc(0,Mo,57,16,"ng-container",0),2&_&&e.Q6J("ngIf",o.selection)},dependencies:[T.O5,T_.T,g_.n,go.N],styles:["table[_ngcontent-%COMP%]{table-layout:fixed}table[_ngcontent-%COMP%] td[_ngcontent-%COMP%]{word-wrap:break-word}"]}),t})();const Co=["bucketSizeTpl"],Oo=["bucketObjectTpl"];function Fo(t,n){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 Po(t,n){1&t&&e.SDv(0,9)}function No(t,n){if(1&t&&(e.YNc(0,Fo,1,2,"cd-usage-bar",6),e.YNc(1,Po,1,0,"ng-template",null,7,e.W1O)),2&t){const _=n.row,o=e.MAs(2);e.Q6J("ngIf",_.bucket_quota.max_size>0&&_.bucket_quota.enabled)("ngIfElse",o)}}function Go(t,n){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 Ao(t,n){1&t&&e.SDv(0,13)}function Io(t,n){if(1&t&&(e.YNc(0,Go,1,3,"cd-usage-bar",10),e.YNc(1,Ao,1,0,"ng-template",null,11,e.W1O)),2&t){const _=n.row,o=e.MAs(2);e.Q6J("ngIf",_.bucket_quota.max_objects>0&&_.bucket_quota.enabled)("ngIfElse",o)}}let ho=(()=>{class t extends Be.o{constructor(_,o,i,s,l,r,d,u){super(u),this.authStorageService=_,this.dimlessBinaryPipe=o,this.dimlessPipe=i,this.rgwBucketService=s,this.modalService=l,this.urlBuilder=r,this.actionLabels=d,this.ngZone=u,this.columns=[],this.buckets=[],this.selection=new qe.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:$.P.add,routerLink:()=>this.urlBuilder.getCreate(),name:this.actionLabels.CREATE,canBePrimary:l=>!l.hasSelection},{permission:"update",icon:$.P.edit,routerLink:()=>this.urlBuilder.getEdit(_()),name:this.actionLabels.EDIT},{permission:"delete",icon:$.P.destroy,click:()=>this.deleteAction(),disable:()=>!this.selection.hasSelection,name:this.actionLabels.DELETE,canBePrimary:l=>l.hasMultiSelection}],this.setTableRefreshTimeout()}transformBucketData(){E().forEach(this.buckets,_=>{const o=_.bucket_quota.max_size,i=_.bucket_quota.max_objects;_.bucket_size=0,_.num_objects=0,E().isEmpty(_.usage)||(_.bucket_size=_.usage["rgw.main"].size_actual,_.num_objects=_.usage["rgw.main"].num_objects),_.size_usage=o>0?_.bucket_size/o:void 0,_.object_usage=i>0?_.num_objects/i:void 0})}getBucketList(_){this.setTableRefreshTimeout(),this.rgwBucketService.list(!0).subscribe(o=>{this.buckets=o,this.transformBucketData()},()=>{_.error()})}updateSelection(_){this.selection=_}deleteAction(){this.modalService.show(Qe.M,{itemDescription:this.selection.hasSingleSelection?"bucket":"buckets",itemNames:this.selection.selected.map(_=>_.bid),submitActionObservable:()=>new u_.y(_=>{(0,ne.D)(this.selection.selected.map(o=>this.rgwBucketService.delete(o.bid))).subscribe({error:o=>{_.error(o),this.table.refreshBtn()},complete:()=>{_.complete(),this.table.refreshBtn()}})})})}}return t.\u0275fac=function(_){return new(_||t)(e.Y36(ce.j),e.Y36(Ye.$),e.Y36(g_.n),e.Y36(Ee.o),e.Y36(ee.Z),e.Y36(re.F),e.Y36(I.p4),e.Y36(e.R0b))},t.\u0275cmp=e.Xpm({type:t,selectors:[["cd-rgw-bucket-list"]],viewQuery:function(_,o){if(1&_&&(e.Gf(le.a,7),e.Gf(Co,7),e.Gf(Oo,7)),2&_){let i;e.iGM(i=e.CRH())&&(o.table=i.first),e.iGM(i=e.CRH())&&(o.bucketSizeTpl=i.first),e.iGM(i=e.CRH())&&(o.bucketObjectTpl=i.first)}},features:[e._Bn([{provide:re.F,useValue:new re.F("rgw/bucket")}]),e.qOj],decls:8,vars:9,consts:function(){let n,_;return n="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"],n,[3,"total","used","isBinary",4,"ngIf","ngIfElse"],["noObjectQuota",""],[3,"total","used","isBinary"],_]},template:function(_,o){1&_&&(e.TgZ(0,"cd-table",0,1),e.NdJ("setExpandedRow",function(s){return o.setExpandedRow(s)})("updateSelection",function(s){return o.updateSelection(s)})("fetchData",function(s){return o.getBucketList(s)}),e._UZ(2,"cd-table-actions",2)(3,"cd-rgw-bucket-details",3),e.qZA(),e.YNc(4,No,3,2,"ng-template",null,4,e.W1O),e.YNc(6,Io,3,2,"ng-template",null,5,e.W1O)),2&_&&(e.Q6J("autoReload",!1)("data",o.buckets)("columns",o.columns)("hasDetails",!0)("status",o.tableStatus),e.xp6(2),e.Q6J("permission",o.permission)("selection",o.selection)("tableActions",o.tableActions),e.xp6(1),e.Q6J("selection",o.expandedRow))},dependencies:[T.O5,R_.O,le.a,Je.K,So]}),t})();var Lo=c(58111),E_=c(76317),f_=c(61350),Wo=c(59376),$o=c(60351);function Zo(t,n){if(1&t){const _=e.EpF();e.TgZ(0,"cd-table-key-value",11),e.NdJ("fetchData",function(){e.CHM(_);const i=e.oxw(2);return e.KtG(i.getMetaData())}),e.qZA()}if(2&t){const _=e.oxw(2);e.Q6J("data",_.metadata)}}function Do(t,n){if(1&t&&e._UZ(0,"cd-table-performance-counter",12),2&t){const _=e.oxw(2);e.Q6J("serviceId",_.serviceMapId)}}function Uo(t,n){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)("type","metrics")}}function vo(t,n){1&t&&(e.ynx(0,13),e.TgZ(1,"a",4),e.SDv(2,14),e.qZA(),e.YNc(3,Uo,1,2,"ng-template",6),e.BQk())}function yo(t,n){if(1&t&&(e.ynx(0),e.TgZ(1,"nav",1,2),e.ynx(3,3),e.TgZ(4,"a",4),e.SDv(5,5),e.qZA(),e.YNc(6,Zo,1,1,"ng-template",6),e.BQk(),e.ynx(7,7),e.TgZ(8,"a",4),e.SDv(9,8),e.qZA(),e.YNc(10,Do,1,1,"ng-template",6),e.BQk(),e.YNc(11,vo,4,0,"ng-container",9),e.qZA(),e._UZ(12,"div",10),e.BQk()),2&t){const _=e.MAs(2),o=e.oxw();e.xp6(11),e.Q6J("ngIf",o.grafanaPermission.read),e.xp6(1),e.Q6J("ngbNavOutlet",_)}}let wo=(()=>{class t{constructor(_,o){this.rgwDaemonService=_,this.authStorageService=o,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(){E().isEmpty(this.serviceId)||this.rgwDaemonService.get(this.serviceId).subscribe(_=>{this.metadata=_.rgw_metadata})}}return t.\u0275fac=function(_){return new(_||t)(e.Y36(oe.b),e.Y36(ce.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 n,_,o,i;return n="Details",_="Performance Counters",o="Performance Details",i="RGW instance details",[[4,"ngIf"],["ngbNav","","cdStatefulTab","rgw-daemon-details",1,"nav-tabs"],["nav","ngbNav"],["ngbNavItem","details"],["ngbNavLink",""],n,["ngbNavContent",""],["ngbNavItem","performance-counters"],_,["ngbNavItem","performance-details",4,"ngIf"],[3,"ngbNavOutlet"],[3,"data","fetchData"],["serviceType","rgw",3,"serviceId"],["ngbNavItem","performance-details"],o,["title",i,"uid","x5ARzZtmk","grafanaStyle","one",3,"grafanaPath","type"]]},template:function(_,o){1&_&&e.YNc(0,yo,13,2,"ng-container",0),2&_&&e.Q6J("ngIf",o.selection)},dependencies:[T.O5,E_.F,f_.b,Wo.m,$o.p,G.uN,G.Pz,G.nv,G.Vx,G.tO,G.Dy]}),t})();function xo(t,n){if(1&t){const _=e.EpF();e.TgZ(0,"cd-table",8),e.NdJ("setExpandedRow",function(i){e.CHM(_);const s=e.oxw();return e.KtG(s.setExpandedRow(i))})("fetchData",function(i){e.CHM(_);const s=e.oxw();return e.KtG(s.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 ko(t,n){1&t&&e._UZ(0,"cd-grafana",11),2&t&&e.Q6J("grafanaPath","rgw-overview?")("type","metrics")}function zo(t,n){1&t&&(e.ynx(0,2),e.TgZ(1,"a",3),e.SDv(2,10),e.qZA(),e.YNc(3,ko,1,2,"ng-template",5),e.BQk())}function qo(t,n){1&t&&e._UZ(0,"cd-grafana",13),2&t&&e.Q6J("grafanaPath","radosgw-sync-overview?")("type","metrics")}function Ho(t,n){1&t&&(e.ynx(0,2),e.TgZ(1,"a",3),e.SDv(2,12),e.qZA(),e.YNc(3,qo,1,2,"ng-template",5),e.BQk())}let Xo=(()=>{class t extends Be.o{constructor(_,o,i,s){super(),this.rgwDaemonService=_,this.authStorageService=o,this.cephShortVersionPipe=i,this.rgwSiteService=s,this.columns=[],this.daemons=[],this.updateDaemons=l=>{this.daemons=l}}ngOnInit(){this.grafanaPermission=this.authStorageService.getPermissions().grafana,this.columns=[{name:"ID",prop:"id",flexGrow:2},{name:"Hostname",prop:"server_hostname",flexGrow:2},{name:"Port",prop:"port",flexGrow:1},{name:"Realm",prop:"realm_name",flexGrow:2},{name:"Zone Group",prop:"zonegroup_name",flexGrow:2},{name:"Zone",prop:"zone_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(oe.b),e.Y36(ce.j),e.Y36(Lo.F),e.Y36(n_.I))},t.\u0275cmp=e.Xpm({type:t,selectors:[["cd-rgw-daemon-list"]],features:[e.qOj],decls:9,vars:3,consts:function(){let n,_,o,i,s;return n="Gateways List",_="Overall Performance",o="RGW overview",i="Sync Performance",s="Radosgw sync overview",[["ngbNav","",1,"nav-tabs"],["nav","ngbNav"],["ngbNavItem",""],["ngbNavLink",""],n,["ngbNavContent",""],["ngbNavItem","",4,"ngIf"],[3,"ngbNavOutlet"],["columnMode","flex",3,"data","columns","hasDetails","setExpandedRow","fetchData"],["cdTableDetail","",3,"selection"],_,["title",o,"uid","WAkugZpiz","grafanaStyle","two",3,"grafanaPath","type"],i,["title",s,"uid","rgw-sync-overview","grafanaStyle","two",3,"grafanaPath","type"]]},template:function(_,o){if(1&_&&(e.TgZ(0,"nav",0,1),e.ynx(2,2),e.TgZ(3,"a",3),e.SDv(4,4),e.qZA(),e.YNc(5,xo,2,4,"ng-template",5),e.BQk(),e.YNc(6,zo,4,0,"ng-container",6),e.YNc(7,Ho,4,0,"ng-container",6),e.qZA(),e._UZ(8,"div",7)),2&_){const i=e.MAs(1);e.xp6(6),e.Q6J("ngIf",o.grafanaPermission.read),e.xp6(1),e.Q6J("ngIf",o.grafanaPermission.read&&o.isMultiSite),e.xp6(1),e.Q6J("ngbNavOutlet",i)}},dependencies:[T.O5,E_.F,le.a,G.uN,G.Pz,G.nv,G.Vx,G.tO,G.Dy,wo]}),t})();var Bo=c(6481),Ke=c(28211),He=(()=>{return(t=He||(He={})).USERS="users",t.BUCKETS="buckets",t.METADATA="metadata",t.USAGE="usage",t.ZONE="zone",He;var t})();let p_=(()=>{class t{static getAll(){return Object.values(t.capabilities)}}return t.capabilities=He,t})();function Qo(t,n){1&t&&e._UZ(0,"input",22),2&t&&e.Q6J("readonly",!0)}function Yo(t,n){1&t&&(e.TgZ(0,"option",17),e.SDv(1,25),e.qZA()),2&t&&e.Q6J("ngValue",null)}function Jo(t,n){if(1&t&&(e.TgZ(0,"option",26),e._uU(1),e.qZA()),2&t){const _=n.$implicit;e.Q6J("value",_),e.xp6(1),e.Oqu(_)}}function Ko(t,n){if(1&t&&(e.TgZ(0,"select",23),e.YNc(1,Yo,2,1,"option",24),e.YNc(2,Jo,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 Vo(t,n){1&t&&(e.TgZ(0,"span",27),e.SDv(1,28),e.qZA())}function jo(t,n){if(1&t&&(e.TgZ(0,"option",26),e._uU(1),e.qZA()),2&t){const _=n.$implicit;e.Q6J("value",_),e.xp6(1),e.hij(" ",_," ")}}function en(t,n){1&t&&(e.TgZ(0,"span",27),e.SDv(1,29),e.qZA())}const _n=function(t){return{required:t}},tn=function(){return["read","write","*"]};let on=(()=>{class t{constructor(_,o,i){this.formBuilder=_,this.activeModal=o,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(_,o){this.formGroup.setValue({type:_,perm:o})}setCapabilities(_){const o=[];_.forEach(i=>{o.push(i.type)}),this.types=[],p_.getAll().forEach(i=>{-1===E().indexOf(o,i)&&this.types.push(i)})}onSubmit(){this.submitAction.emit(this.formGroup.value),this.activeModal.close()}}return t.\u0275fac=function(_){return new(_||t)(e.Y36(ae.O),e.Y36(G.Kz),e.Y36(I.p4))},t.\u0275cmp=e.Xpm({type:t,selectors:[["cd-rgw-user-capability-modal"]],outputs:{submitAction:"submitAction"},decls:29,vars:24,consts:function(){let n,_,o,i,s,l,r;return n="" + "\ufffd0\ufffd" + " " + "\ufffd1\ufffd" + "",_="Type",o="Permission",i="-- Select a permission --",s="-- Select a type --",l="This field is required.",r="This field is required.",[[3,"modalRef"],[1,"modal-title"],n,[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-select","formControlName","type","autofocus","",4,"ngIf"],["class","invalid-feedback",4,"ngIf"],["for","perm",1,"cd-col-form-label","required"],o,["id","perm","formControlName","perm",1,"form-select"],[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-select"],[3,"ngValue",4,"ngIf"],s,[3,"value"],[1,"invalid-feedback"],l,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)(8,"div",6)(9,"div",7)(10,"label",8),e.SDv(11,9),e.qZA(),e.TgZ(12,"div",10),e.YNc(13,Qo,1,1,"input",11),e.YNc(14,Ko,3,2,"select",12),e.YNc(15,Vo,2,0,"span",13),e.qZA()(),e.TgZ(16,"div",7)(17,"label",14),e.SDv(18,15),e.qZA(),e.TgZ(19,"div",10)(20,"select",16)(21,"option",17),e.SDv(22,18),e.qZA(),e.YNc(23,jo,2,2,"option",19),e.qZA(),e.YNc(24,en,2,0,"span",13),e.qZA()()(),e.TgZ(25,"div",20)(26,"cd-form-button-panel",21),e.NdJ("submitActionEvent",function(){return o.onSubmit()}),e.ALo(27,"titlecase"),e.ALo(28,"upperFirst"),e.qZA()()(),e.BQk(),e.qZA()),2&_){const i=e.MAs(7);e.Q6J("modalRef",o.activeModal),e.xp6(4),e.pQV(e.lcZ(3,13,o.action))(e.lcZ(4,15,o.resource)),e.QtT(2),e.xp6(2),e.Q6J("formGroup",o.formGroup),e.xp6(4),e.Q6J("ngClass",e.VKq(21,_n,!o.editing)),e.xp6(3),e.Q6J("ngIf",o.editing),e.xp6(1),e.Q6J("ngIf",!o.editing),e.xp6(1),e.Q6J("ngIf",o.formGroup.showError("type",i,"required")),e.xp6(6),e.Q6J("ngValue",null),e.xp6(2),e.Q6J("ngForOf",e.DdM(23,tn)),e.xp6(1),e.Q6J("ngIf",o.formGroup.showError("perm",i,"required")),e.xp6(2),e.Q6J("form",o.formGroup)("submitText",e.lcZ(27,17,o.action)+" "+e.lcZ(28,19,o.resource))}},dependencies:[T.mk,T.sg,T.O5,X.z,B.p,fe.U,k.o,q.b,z.P,H.V,a._Y,a.YN,a.Kr,a.Fj,a.EJ,a.JJ,a.JL,a.sg,a.u,T.rS,_e.m]}),t})();var pe=c(58039),Xe=c(4416);function nn(t,n){1&t&&e._UZ(0,"input",17),2&t&&e.Q6J("readonly",!0)}function sn(t,n){1&t&&(e.TgZ(0,"option",21),e.SDv(1,22),e.qZA()),2&t&&e.Q6J("ngValue",null)}function an(t,n){if(1&t&&(e.TgZ(0,"option",23),e._uU(1),e.qZA()),2&t){const _=n.$implicit;e.Q6J("value",_),e.xp6(1),e.Oqu(_)}}function ln(t,n){if(1&t&&(e.TgZ(0,"select",18),e.YNc(1,sn,2,1,"option",19),e.YNc(2,an,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 rn(t,n){1&t&&(e.TgZ(0,"span",24),e.SDv(1,25),e.qZA())}function cn(t,n){1&t&&(e.TgZ(0,"div",7)(1,"div",26)(2,"div",27),e._UZ(3,"input",28),e.TgZ(4,"label",29),e.SDv(5,30),e.qZA()()()())}function dn(t,n){1&t&&(e.TgZ(0,"span",24),e.SDv(1,37),e.qZA())}const Ve=function(t){return{required:t}};function un(t,n){if(1&t&&(e.TgZ(0,"div",7)(1,"label",31),e.SDv(2,32),e.qZA(),e.TgZ(3,"div",10)(4,"div",33),e._UZ(5,"input",34)(6,"button",35)(7,"cd-copy-2-clipboard-button",36),e.qZA(),e.YNc(8,dn,2,0,"span",13),e.qZA()()),2&t){const _=e.oxw(),o=e.MAs(7);e.xp6(1),e.Q6J("ngClass",e.VKq(3,Ve,!_.viewing)),e.xp6(4),e.Q6J("readonly",_.viewing),e.xp6(3),e.Q6J("ngIf",_.formGroup.showError("access_key",o,"required"))}}function gn(t,n){1&t&&(e.TgZ(0,"span",24),e.SDv(1,43),e.qZA())}function Rn(t,n){if(1&t&&(e.TgZ(0,"div",7)(1,"label",38),e.SDv(2,39),e.qZA(),e.TgZ(3,"div",10)(4,"div",33),e._UZ(5,"input",40)(6,"button",41)(7,"cd-copy-2-clipboard-button",42),e.qZA(),e.YNc(8,gn,2,0,"span",13),e.qZA()()),2&t){const _=e.oxw(),o=e.MAs(7);e.xp6(1),e.Q6J("ngClass",e.VKq(3,Ve,!_.viewing)),e.xp6(4),e.Q6J("readonly",_.viewing),e.xp6(3),e.Q6J("ngIf",_.formGroup.showError("secret_key",o,"required"))}}let m_=(()=>{class t{constructor(_,o,i){this.formBuilder=_,this.activeModal=o,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(_,o,i){this.formGroup.setValue({user:_,generate_key:E().isEmpty(o),access_key:o,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(ae.O),e.Y36(G.Kz),e.Y36(I.p4))},t.\u0275cmp=e.Xpm({type:t,selectors:[["cd-rgw-user-s3-key-modal"]],outputs:{submitAction:"submitAction"},decls:23,vars:24,consts:function(){let n,_,o,i,s,l,r,d,u;return n="" + "\ufffd0\ufffd" + " " + "\ufffd1\ufffd" + "",_="Username",o="-- Select a username --",i="This field is required.",s="Auto-generate key",l="Access key",r="This field is required.",d="Secret key",u="This field is required.",[[3,"modalRef"],[1,"modal-title"],n,[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"],o,[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"],l,[1,"input-group"],["id","access_key","type","password","formControlName","access_key",1,"form-control",3,"readonly"],["type","button","cdPasswordButton","access_key",1,"btn","btn-light"],["source","access_key"],r,["for","secret_key",1,"cd-col-form-label",3,"ngClass"],d,["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"],u]},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)(8,"div",6)(9,"div",7)(10,"label",8),e.SDv(11,9),e.qZA(),e.TgZ(12,"div",10),e.YNc(13,nn,1,1,"input",11),e.YNc(14,ln,3,2,"select",12),e.YNc(15,rn,2,0,"span",13),e.qZA()(),e.YNc(16,cn,6,0,"div",14),e.YNc(17,un,9,5,"div",14),e.YNc(18,Rn,9,5,"div",14),e.qZA(),e.TgZ(19,"div",15)(20,"cd-form-button-panel",16),e.NdJ("submitActionEvent",function(){return o.onSubmit()}),e.ALo(21,"titlecase"),e.ALo(22,"upperFirst"),e.qZA()()(),e.BQk(),e.qZA()),2&_){const i=e.MAs(7);e.Q6J("modalRef",o.activeModal),e.xp6(4),e.pQV(e.lcZ(3,14,o.action))(e.lcZ(4,16,o.resource)),e.QtT(2),e.xp6(2),e.Q6J("formGroup",o.formGroup),e.xp6(4),e.Q6J("ngClass",e.VKq(22,Ve,!o.viewing)),e.xp6(3),e.Q6J("ngIf",o.viewing),e.xp6(1),e.Q6J("ngIf",!o.viewing),e.xp6(1),e.Q6J("ngIf",o.formGroup.showError("user",i,"required")),e.xp6(1),e.Q6J("ngIf",!o.viewing),e.xp6(1),e.Q6J("ngIf",!o.formGroup.getValue("generate_key")),e.xp6(1),e.Q6J("ngIf",!o.formGroup.getValue("generate_key")),e.xp6(2),e.Q6J("form",o.formGroup)("submitText",e.lcZ(21,18,o.action)+" "+e.lcZ(22,20,o.resource))("showSubmit",!o.viewing)}},dependencies:[T.mk,T.sg,T.O5,X.z,pe.s,B.p,fe.U,Xe.C,k.o,q.b,z.P,H.V,a._Y,a.YN,a.Kr,a.Fj,a.Wl,a.EJ,a.JJ,a.JL,a.sg,a.u,T.rS,_e.m]}),t})();class Tn{}function En(t,n){1&t&&(e.TgZ(0,"span",29),e.SDv(1,30),e.qZA())}function fn(t,n){1&t&&(e.TgZ(0,"span",29),e.SDv(1,31),e.qZA())}function pn(t,n){if(1&t&&(e.TgZ(0,"option",32),e._uU(1),e.qZA()),2&t){const _=n.$implicit;e.Q6J("value",_),e.xp6(1),e.hij(" ",_," ")}}function mn(t,n){1&t&&(e.TgZ(0,"span",29),e.SDv(1,33),e.qZA())}function Mn(t,n){1&t&&(e.TgZ(0,"span",29),e.SDv(1,47),e.qZA())}function Sn(t,n){if(1&t&&(e.TgZ(0,"div",7)(1,"label",41),e.SDv(2,42),e.qZA(),e.TgZ(3,"div",10)(4,"div",43),e._UZ(5,"input",44)(6,"button",45)(7,"cd-copy-2-clipboard-button",46),e.qZA(),e.YNc(8,Mn,2,0,"span",15),e.qZA()()),2&t){const _=e.oxw(2),o=e.MAs(7);e.xp6(8),e.Q6J("ngIf",_.formGroup.showError("secret_key",o,"required"))}}function Cn(t,n){if(1&t&&(e.TgZ(0,"fieldset")(1,"legend"),e.SDv(2,34),e.qZA(),e.TgZ(3,"div",7)(4,"div",35)(5,"div",36),e._UZ(6,"input",37),e.TgZ(7,"label",38),e.SDv(8,39),e.qZA()()()(),e.YNc(9,Sn,9,1,"div",40),e.qZA()),2&t){const _=e.oxw();e.xp6(9),e.Q6J("ngIf",!_.editing&&!_.formGroup.getValue("generate_secret"))}}const On=function(t){return{required:t}},Fn=function(){return["read","write"]};let Pn=(()=>{class t{constructor(_,o,i){this.formBuilder=_,this.bsModalRef=o,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 o=>_.editing||(0,m.P)(o.value)?null:_.subusers.some(s=>E().isEqual(_.getSubuserName(s.id),o.value))?{subuserIdExists:!0}:null}getSubuserName(_){if(E().isEmpty(_))return _;const o=_.match(/([^:]+)(:(.+))?/);return E().isUndefined(o[3])?o[1]:o[3]}setEditing(_=!0){this.editing=_,this.action=this.editing?this.actionLabels.EDIT:this.actionLabels.CREATE}setValues(_,o="",i=""){this.formGroup.setValue({uid:_,subuid:this.getSubuserName(o),perm:i,generate_secret:!0,secret_key:null})}setSubusers(_){this.subusers=_}onSubmit(){const _=this.formGroup.value,o=new Tn;o.id=`${_.uid}:${_.subuid}`,o.permissions=_.perm,o.generate_secret=_.generate_secret,o.secret_key=_.secret_key,this.submitAction.emit(o),this.bsModalRef.close()}}return t.\u0275fac=function(_){return new(_||t)(e.Y36(ae.O),e.Y36(G.Kz),e.Y36(I.p4))},t.\u0275cmp=e.Xpm({type:t,selectors:[["cd-rgw-user-subuser-modal"]],outputs:{submitAction:"submitAction"},decls:39,vars:26,consts:function(){let n,_,o,i,s,l,r,d,u,R,O,F,b,h;return n="" + "\ufffd0\ufffd" + " " + "\ufffd1\ufffd" + "",_="Username",o="Subuser",i="Permission",s="-- Select a permission --",l="read, write",r="full",d="This field is required.",u="The chosen subuser ID is already in use.",R="This field is required.",O="Swift key",F="Auto-generate secret",b="Secret key",h="This field is required.",[[3,"modalRef"],[1,"modal-title"],n,[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"],o,["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-select"],[3,"ngValue"],s,[3,"value",4,"ngFor","ngForOf"],["value","read-write"],l,["value","full-control"],r,[4,"ngIf"],[1,"modal-footer"],[3,"form","submitText","submitActionEvent"],[1,"invalid-feedback"],d,u,[3,"value"],R,O,[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"],F,["class","form-group row",4,"ngIf"],["for","secret_key",1,"cd-col-form-label","required"],b,[1,"input-group"],["id","secret_key","type","password","formControlName","secret_key",1,"form-control"],["type","button","cdPasswordButton","secret_key",1,"btn","btn-light"],["source","secret_key"],h]},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)(8,"div",6)(9,"div",7)(10,"label",8),e.SDv(11,9),e.qZA(),e.TgZ(12,"div",10),e._UZ(13,"input",11),e.qZA()(),e.TgZ(14,"div",7)(15,"label",12),e.SDv(16,13),e.qZA(),e.TgZ(17,"div",10),e._UZ(18,"input",14),e.YNc(19,En,2,0,"span",15),e.YNc(20,fn,2,0,"span",15),e.qZA()(),e.TgZ(21,"div",7)(22,"label",16),e.SDv(23,17),e.qZA(),e.TgZ(24,"div",10)(25,"select",18)(26,"option",19),e.SDv(27,20),e.qZA(),e.YNc(28,pn,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.YNc(33,mn,2,0,"span",15),e.qZA()(),e.YNc(34,Cn,10,1,"fieldset",26),e.qZA(),e.TgZ(35,"div",27)(36,"cd-form-button-panel",28),e.NdJ("submitActionEvent",function(){return o.onSubmit()}),e.ALo(37,"titlecase"),e.ALo(38,"upperFirst"),e.qZA()()(),e.BQk(),e.qZA()),2&_){const i=e.MAs(7);e.Q6J("modalRef",o.bsModalRef),e.xp6(4),e.pQV(e.lcZ(3,15,o.action))(e.lcZ(4,17,o.resource)),e.QtT(2),e.xp6(2),e.Q6J("formGroup",o.formGroup),e.xp6(7),e.Q6J("readonly",!0),e.xp6(2),e.Q6J("ngClass",e.VKq(23,On,!o.editing)),e.xp6(3),e.Q6J("readonly",o.editing),e.xp6(1),e.Q6J("ngIf",o.formGroup.showError("subuid",i,"required")),e.xp6(1),e.Q6J("ngIf",o.formGroup.showError("subuid",i,"subuserIdExists")),e.xp6(6),e.Q6J("ngValue",null),e.xp6(2),e.Q6J("ngForOf",e.DdM(25,Fn)),e.xp6(5),e.Q6J("ngIf",o.formGroup.showError("perm",i,"required")),e.xp6(1),e.Q6J("ngIf",!o.editing),e.xp6(2),e.Q6J("form",o.formGroup)("submitText",e.lcZ(37,19,o.action)+" "+e.lcZ(38,21,o.resource))}},dependencies:[T.mk,T.sg,T.O5,X.z,pe.s,B.p,fe.U,Xe.C,k.o,q.b,z.P,H.V,a._Y,a.YN,a.Kr,a.Fj,a.Wl,a.EJ,a.JJ,a.JL,a.sg,a.u,T.rS,_e.m]}),t})();var M_=c(13472);let S_=(()=>{class t{constructor(_,o){this.activeModal=_,this.actionLabels=o,this.resource="Swift Key",this.action=this.actionLabels.SHOW}setValues(_,o){this.user=_,this.secret_key=o}}return t.\u0275fac=function(_){return new(_||t)(e.Y36(G.Kz),e.Y36(I.p4))},t.\u0275cmp=e.Xpm({type:t,selectors:[["cd-rgw-user-swift-key-modal"]],decls:23,vars:11,consts:function(){let n,_,o;return n="" + "\ufffd0\ufffd" + " " + "\ufffd1\ufffd" + "",_="Username",o="Secret key",[[3,"modalRef"],[1,"modal-title"],n,[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"],o,[1,"input-group"],["id","secret_key","name","secret_key","type","password",1,"form-control",3,"ngModel","readonly","ngModelChange"],["type","button","cdPasswordButton","secret_key",1,"btn","btn-light"],["source","secret_key"],[1,"modal-footer"],[3,"backAction"]]},template:function(_,o){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)(7,"form",5)(8,"div",6)(9,"label",7),e.SDv(10,8),e.qZA(),e.TgZ(11,"div",9)(12,"input",10),e.NdJ("ngModelChange",function(s){return o.user=s}),e.qZA()()(),e.TgZ(13,"div",6)(14,"label",11),e.SDv(15,12),e.qZA(),e.TgZ(16,"div",9)(17,"div",13)(18,"input",14),e.NdJ("ngModelChange",function(s){return o.secret_key=s}),e.qZA(),e._UZ(19,"button",15)(20,"cd-copy-2-clipboard-button",16),e.qZA()()()()(),e.TgZ(21,"div",17)(22,"cd-back-button",18),e.NdJ("backAction",function(){return o.activeModal.close()}),e.qZA()(),e.BQk(),e.qZA()),2&_&&(e.Q6J("modalRef",o.activeModal),e.xp6(4),e.pQV(e.lcZ(3,7,o.action))(e.lcZ(4,9,o.resource)),e.QtT(2),e.xp6(8),e.Q6J("readonly",!0)("ngModel",o.user),e.xp6(6),e.Q6J("ngModel",o.secret_key)("readonly",!0))},dependencies:[M_.W,X.z,pe.s,Xe.C,k.o,q.b,z.P,a._Y,a.Fj,a.JJ,a.JL,a.On,a.F,T.rS,_e.m]}),t})();var Nn=c(17932);function Gn(t,n){1&t&&(e.TgZ(0,"span",50),e.SDv(1,51),e.qZA())}function An(t,n){1&t&&(e.TgZ(0,"span",50),e.SDv(1,52),e.qZA())}function In(t,n){1&t&&(e.TgZ(0,"span",50),e.SDv(1,53),e.qZA())}function bn(t,n){1&t&&(e.TgZ(0,"span",50),e.SDv(1,57),e.qZA())}function hn(t,n){1&t&&(e.TgZ(0,"span",50),e.SDv(1,58),e.qZA())}function Ln(t,n){if(1&t&&(e.TgZ(0,"div",8)(1,"label",54),e.SDv(2,55),e.qZA(),e.TgZ(3,"div",11),e._UZ(4,"input",56),e.YNc(5,bn,2,0,"span",13),e.YNc(6,hn,2,0,"span",13),e.qZA()()),2&t){e.oxw();const _=e.MAs(2),o=e.oxw();e.xp6(4),e.Q6J("readonly",o.editing),e.xp6(1),e.Q6J("ngIf",o.userForm.showError("tenant",_,"pattern")),e.xp6(1),e.Q6J("ngIf",o.userForm.showError("tenant",_,"notUnique"))}}function Wn(t,n){1&t&&(e.TgZ(0,"span",50),e.SDv(1,59),e.qZA())}function $n(t,n){1&t&&(e.TgZ(0,"span",50),e.SDv(1,60),e.qZA())}function Zn(t,n){1&t&&(e.TgZ(0,"span",50),e.SDv(1,61),e.qZA())}function Dn(t,n){1&t&&(e.TgZ(0,"span",50),e.SDv(1,62),e.qZA())}function Un(t,n){1&t&&(e.TgZ(0,"span",50),e.SDv(1,65),e.qZA())}function vn(t,n){1&t&&(e.TgZ(0,"span",50),e.SDv(1,66),e.qZA())}function yn(t,n){if(1&t&&(e.TgZ(0,"div",8),e._UZ(1,"label",63),e.TgZ(2,"div",11),e._UZ(3,"input",64),e.YNc(4,Un,2,0,"span",13),e.YNc(5,vn,2,0,"span",13),e.qZA()()),2&t){e.oxw();const _=e.MAs(2),o=e.oxw();e.xp6(4),e.Q6J("ngIf",o.userForm.showError("max_buckets",_,"required")),e.xp6(1),e.Q6J("ngIf",o.userForm.showError("max_buckets",_,"min"))}}function wn(t,n){1&t&&(e.TgZ(0,"span",50),e.SDv(1,77),e.qZA())}function xn(t,n){if(1&t&&(e.TgZ(0,"div",8)(1,"label",71),e.SDv(2,72),e.qZA(),e.TgZ(3,"div",11)(4,"div",73),e._UZ(5,"input",74)(6,"button",75)(7,"cd-copy-2-clipboard-button",76),e.qZA(),e.YNc(8,wn,2,0,"span",13),e.qZA()()),2&t){e.oxw(2);const _=e.MAs(2),o=e.oxw();e.xp6(8),e.Q6J("ngIf",o.userForm.showError("access_key",_,"required"))}}function kn(t,n){1&t&&(e.TgZ(0,"span",50),e.SDv(1,83),e.qZA())}function zn(t,n){if(1&t&&(e.TgZ(0,"div",8)(1,"label",78),e.SDv(2,79),e.qZA(),e.TgZ(3,"div",11)(4,"div",73),e._UZ(5,"input",80)(6,"button",81)(7,"cd-copy-2-clipboard-button",82),e.qZA(),e.YNc(8,kn,2,0,"span",13),e.qZA()()),2&t){e.oxw(2);const _=e.MAs(2),o=e.oxw();e.xp6(8),e.Q6J("ngIf",o.userForm.showError("secret_key",_,"required"))}}function qn(t,n){if(1&t&&(e.TgZ(0,"fieldset")(1,"legend"),e.SDv(2,67),e.qZA(),e.TgZ(3,"div",8)(4,"div",14)(5,"div",15),e._UZ(6,"input",68),e.TgZ(7,"label",69),e.SDv(8,70),e.qZA()()()(),e.YNc(9,xn,9,1,"div",19),e.YNc(10,zn,9,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 Hn(t,n){1&t&&(e.TgZ(0,"span",94)(1,"span",95),e.SDv(2,96),e.qZA()())}const K=function(t){return[t]};function Xn(t,n){if(1&t){const _=e.EpF();e.TgZ(0,"span")(1,"div",73)(2,"span",97),e._UZ(3,"i"),e.qZA(),e._UZ(4,"input",98),e.TgZ(5,"span",97),e._UZ(6,"i"),e.qZA(),e._UZ(7,"input",98),e.TgZ(8,"button",99),e.NdJ("click",function(){const s=e.CHM(_).index,l=e.oxw(3);return e.KtG(l.showSubuserModal(s))}),e._UZ(9,"i",91),e.qZA(),e.TgZ(10,"button",100),e.NdJ("click",function(){const s=e.CHM(_).index,l=e.oxw(3);return e.KtG(l.deleteSubuser(s))}),e._UZ(11,"i",91),e.qZA()(),e._UZ(12,"span",95),e.qZA()}if(2&t){const _=n.$implicit,o=e.oxw(3);e.xp6(3),e.Tol(o.icons.user),e.xp6(1),e.s9C("value",_.id),e.xp6(2),e.Tol(o.icons.share),e.xp6(1),e.s9C("value","full-control"===_.permissions?"full":_.permissions),e.xp6(2),e.Q6J("ngClass",e.VKq(10,K,o.icons.edit)),e.xp6(2),e.Q6J("ngClass",e.VKq(12,K,o.icons.destroy))}}function Bn(t,n){if(1&t){const _=e.EpF();e.TgZ(0,"fieldset")(1,"legend"),e.SDv(2,84),e.qZA(),e.TgZ(3,"div",85)(4,"div",14),e.YNc(5,Hn,3,0,"span",86),e.YNc(6,Xn,13,14,"span",87),e.TgZ(7,"div",88)(8,"div",89)(9,"button",90),e.NdJ("click",function(){e.CHM(_);const i=e.oxw(2);return e.KtG(i.showSubuserModal())}),e._UZ(10,"i",91),e.ynx(11),e.SDv(12,92),e.ALo(13,"titlecase"),e.ALo(14,"upperFirst"),e.BQk(),e.qZA()()(),e._UZ(15,"span",93),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,K,_.icons.add)),e.xp6(4),e.pQV(e.lcZ(13,5,_.actionLabels.CREATE))(e.lcZ(14,7,_.subuserLabel)),e.QtT(12)}}function Qn(t,n){1&t&&(e.TgZ(0,"span",94)(1,"span",95),e.SDv(2,106),e.qZA()())}function Yn(t,n){if(1&t){const _=e.EpF();e.TgZ(0,"span")(1,"div",73)(2,"div",97),e._UZ(3,"i"),e.qZA(),e._UZ(4,"input",98),e.TgZ(5,"button",107),e.NdJ("click",function(){const s=e.CHM(_).index,l=e.oxw(3);return e.KtG(l.showS3KeyModal(s))}),e._UZ(6,"i",91),e.qZA(),e.TgZ(7,"button",108),e.NdJ("click",function(){const s=e.CHM(_).index,l=e.oxw(3);return e.KtG(l.deleteS3Key(s))}),e._UZ(8,"i",91),e.qZA()(),e._UZ(9,"span",95),e.qZA()}if(2&t){const _=n.$implicit,o=e.oxw(3);e.xp6(3),e.Tol(o.icons.key),e.xp6(1),e.s9C("value",_.user),e.xp6(2),e.Q6J("ngClass",e.VKq(6,K,o.icons.show)),e.xp6(2),e.Q6J("ngClass",e.VKq(8,K,o.icons.destroy))}}function Jn(t,n){1&t&&(e.TgZ(0,"span",94)(1,"span",95),e.SDv(2,109),e.qZA()())}function Kn(t,n){if(1&t){const _=e.EpF();e.TgZ(0,"span")(1,"div",73)(2,"span",97),e._UZ(3,"i"),e.qZA(),e._UZ(4,"input",98),e.TgZ(5,"button",110),e.NdJ("click",function(){const s=e.CHM(_).index,l=e.oxw(3);return e.KtG(l.showSwiftKeyModal(s))}),e._UZ(6,"i",91),e.qZA()(),e._UZ(7,"span",95),e.qZA()}if(2&t){const _=n.$implicit,o=e.oxw(3);e.xp6(3),e.Tol(o.icons.key),e.xp6(1),e.s9C("value",_.user),e.xp6(2),e.Q6J("ngClass",e.VKq(5,K,o.icons.show))}}function Vn(t,n){if(1&t){const _=e.EpF();e.TgZ(0,"fieldset")(1,"legend"),e.SDv(2,101),e.qZA(),e.TgZ(3,"div",8)(4,"label",63),e.SDv(5,102),e.qZA(),e.TgZ(6,"div",11),e.YNc(7,Qn,3,0,"span",86),e.YNc(8,Yn,10,10,"span",87),e.TgZ(9,"div",88)(10,"div",89)(11,"button",103),e.NdJ("click",function(){e.CHM(_);const i=e.oxw(2);return e.KtG(i.showS3KeyModal())}),e._UZ(12,"i",91),e.ynx(13),e.SDv(14,104),e.ALo(15,"titlecase"),e.ALo(16,"upperFirst"),e.BQk(),e.qZA()()(),e._UZ(17,"span",93),e.qZA(),e._UZ(18,"hr"),e.qZA(),e.TgZ(19,"div",8)(20,"label",63),e.SDv(21,105),e.qZA(),e.TgZ(22,"div",11),e.YNc(23,Jn,3,0,"span",86),e.YNc(24,Kn,8,7,"span",87),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,K,_.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 jn(t,n){1&t&&(e.TgZ(0,"span",94)(1,"span",95),e.SDv(2,114),e.qZA()())}function ei(t,n){if(1&t){const _=e.EpF();e.TgZ(0,"span")(1,"div",73)(2,"div",97),e._UZ(3,"i"),e.qZA(),e._UZ(4,"input",98),e.TgZ(5,"button",115),e.NdJ("click",function(){const s=e.CHM(_).index,l=e.oxw(3);return e.KtG(l.showCapabilityModal(s))}),e._UZ(6,"i",91),e.qZA(),e.TgZ(7,"button",116),e.NdJ("click",function(){const s=e.CHM(_).index,l=e.oxw(3);return e.KtG(l.deleteCapability(s))}),e._UZ(8,"i",91),e.qZA()(),e._UZ(9,"span",95),e.qZA()}if(2&t){const _=n.$implicit,o=e.oxw(3);e.xp6(3),e.Tol(o.icons.share),e.xp6(1),e.hYB("value","",_.type,":",_.perm,""),e.xp6(2),e.Q6J("ngClass",e.VKq(7,K,o.icons.edit)),e.xp6(2),e.Q6J("ngClass",e.VKq(9,K,o.icons.destroy))}}function _i(t,n){if(1&t){const _=e.EpF();e.TgZ(0,"fieldset")(1,"legend"),e.SDv(2,111),e.qZA(),e.TgZ(3,"div",8)(4,"div",14),e.YNc(5,jn,3,0,"span",86),e.YNc(6,ei,10,11,"span",87),e.TgZ(7,"div",88)(8,"div",89)(9,"button",112),e.NdJ("click",function(){e.CHM(_);const i=e.oxw(2);return e.KtG(i.showCapabilityModal())}),e.ALo(10,"pipeFunction"),e.ALo(11,"pipeFunction"),e._UZ(12,"i",91),e.ynx(13),e.SDv(14,113),e.ALo(15,"titlecase"),e.ALo(16,"upperFirst"),e.BQk(),e.qZA()()(),e._UZ(17,"span",93),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,K,_.icons.add)),e.xp6(4),e.pQV(e.lcZ(15,13,_.actionLabels.ADD))(e.lcZ(16,15,_.capabilityLabel)),e.QtT(14)}}function ti(t,n){1&t&&(e.TgZ(0,"div",8)(1,"div",14)(2,"div",15),e._UZ(3,"input",117),e.TgZ(4,"label",118),e.SDv(5,119),e.qZA()()()())}function oi(t,n){1&t&&(e.TgZ(0,"span",50),e.SDv(1,123),e.qZA())}function ni(t,n){1&t&&(e.TgZ(0,"span",50),e.SDv(1,124),e.qZA())}function ii(t,n){1&t&&(e.TgZ(0,"span",50),e.SDv(1,125),e.qZA())}function si(t,n){if(1&t&&(e.TgZ(0,"div",8)(1,"label",120),e.SDv(2,121),e.qZA(),e.TgZ(3,"div",11),e._UZ(4,"input",122),e.YNc(5,oi,2,0,"span",13),e.YNc(6,ni,2,0,"span",13),e.YNc(7,ii,2,0,"span",13),e.qZA()()),2&t){e.oxw();const _=e.MAs(2),o=e.oxw();e.xp6(5),e.Q6J("ngIf",o.userForm.showError("user_quota_max_size",_,"required")),e.xp6(1),e.Q6J("ngIf",o.userForm.showError("user_quota_max_size",_,"quotaMaxSize")),e.xp6(1),e.Q6J("ngIf",o.userForm.showError("user_quota_max_size",o.formDir,"pattern"))}}function ai(t,n){1&t&&(e.TgZ(0,"div",8)(1,"div",14)(2,"div",15),e._UZ(3,"input",126),e.TgZ(4,"label",127),e.SDv(5,128),e.qZA()()()())}function li(t,n){1&t&&(e.TgZ(0,"span",50),e.SDv(1,132),e.qZA())}function ri(t,n){1&t&&(e.TgZ(0,"span",50),e.SDv(1,133),e.qZA())}function ci(t,n){if(1&t&&(e.TgZ(0,"div",8)(1,"label",129),e.SDv(2,130),e.qZA(),e.TgZ(3,"div",11),e._UZ(4,"input",131),e.YNc(5,li,2,0,"span",13),e.YNc(6,ri,2,0,"span",13),e.qZA()()),2&t){e.oxw();const _=e.MAs(2),o=e.oxw();e.xp6(5),e.Q6J("ngIf",o.userForm.showError("user_quota_max_objects",_,"required")),e.xp6(1),e.Q6J("ngIf",o.userForm.showError("user_quota_max_objects",_,"min"))}}function di(t,n){1&t&&(e.TgZ(0,"div",8)(1,"div",14)(2,"div",15),e._UZ(3,"input",134),e.TgZ(4,"label",135),e.SDv(5,136),e.qZA()()()())}function ui(t,n){1&t&&(e.TgZ(0,"span",50),e.SDv(1,140),e.qZA())}function gi(t,n){1&t&&(e.TgZ(0,"span",50),e.SDv(1,141),e.qZA())}function Ri(t,n){1&t&&(e.TgZ(0,"span",50),e.SDv(1,142),e.qZA())}function Ti(t,n){if(1&t&&(e.TgZ(0,"div",8)(1,"label",137),e.SDv(2,138),e.qZA(),e.TgZ(3,"div",11),e._UZ(4,"input",139),e.YNc(5,ui,2,0,"span",13),e.YNc(6,gi,2,0,"span",13),e.YNc(7,Ri,2,0,"span",13),e.qZA()()),2&t){e.oxw();const _=e.MAs(2),o=e.oxw();e.xp6(5),e.Q6J("ngIf",o.userForm.showError("bucket_quota_max_size",_,"required")),e.xp6(1),e.Q6J("ngIf",o.userForm.showError("bucket_quota_max_size",_,"quotaMaxSize")),e.xp6(1),e.Q6J("ngIf",o.userForm.showError("bucket_quota_max_size",o.formDir,"pattern"))}}function Ei(t,n){1&t&&(e.TgZ(0,"div",8)(1,"div",14)(2,"div",15),e._UZ(3,"input",143),e.TgZ(4,"label",144),e.SDv(5,145),e.qZA()()()())}function fi(t,n){1&t&&(e.TgZ(0,"span",50),e.SDv(1,149),e.qZA())}function pi(t,n){1&t&&(e.TgZ(0,"span",50),e.SDv(1,150),e.qZA())}function mi(t,n){if(1&t&&(e.TgZ(0,"div",8)(1,"label",146),e.SDv(2,147),e.qZA(),e.TgZ(3,"div",11),e._UZ(4,"input",148),e.YNc(5,fi,2,0,"span",13),e.YNc(6,pi,2,0,"span",13),e.qZA()()),2&t){e.oxw();const _=e.MAs(2),o=e.oxw();e.xp6(5),e.Q6J("ngIf",o.userForm.showError("bucket_quota_max_objects",_,"required")),e.xp6(1),e.Q6J("ngIf",o.userForm.showError("bucket_quota_max_objects",_,"min"))}}const C_=function(t){return{required:t}};function Mi(t,n){if(1&t){const _=e.EpF();e.TgZ(0,"div",1)(1,"form",2,3)(3,"div",4)(4,"div",5),e.SDv(5,6),e.ALo(6,"titlecase"),e.ALo(7,"upperFirst"),e.qZA(),e.TgZ(8,"div",7)(9,"div",8)(10,"label",9),e.SDv(11,10),e.qZA(),e.TgZ(12,"div",11),e._UZ(13,"input",12),e.YNc(14,Gn,2,0,"span",13),e.YNc(15,An,2,0,"span",13),e.YNc(16,In,2,0,"span",13),e.qZA()(),e.TgZ(17,"div",8)(18,"div",14)(19,"div",15)(20,"input",16),e.NdJ("click",function(){e.CHM(_);const i=e.oxw();return e.KtG(i.updateFieldsWhenTenanted())}),e.qZA(),e.TgZ(21,"label",17),e.SDv(22,18),e.qZA()()()(),e.YNc(23,Ln,7,3,"div",19),e.TgZ(24,"div",8)(25,"label",20),e.SDv(26,21),e.qZA(),e.TgZ(27,"div",11),e._UZ(28,"input",22),e.YNc(29,Wn,2,0,"span",13),e.YNc(30,$n,2,0,"span",13),e.qZA()(),e.TgZ(31,"div",8)(32,"label",23),e.SDv(33,24),e.qZA(),e.TgZ(34,"div",11),e._UZ(35,"input",25),e.YNc(36,Zn,2,0,"span",13),e.YNc(37,Dn,2,0,"span",13),e.qZA()(),e.TgZ(38,"div",8)(39,"label",26),e.SDv(40,27),e.qZA(),e.TgZ(41,"div",11)(42,"select",28),e.NdJ("change",function(i){e.CHM(_);const s=e.oxw();return e.KtG(s.onMaxBucketsModeChange(i.target.value))}),e.TgZ(43,"option",29),e.SDv(44,30),e.qZA(),e.TgZ(45,"option",31),e.SDv(46,32),e.qZA(),e.TgZ(47,"option",33),e.SDv(48,34),e.qZA()()()(),e.YNc(49,yn,6,2,"div",19),e.TgZ(50,"div",8)(51,"div",14)(52,"div",15),e._UZ(53,"input",35),e.TgZ(54,"label",36),e.SDv(55,37),e.qZA(),e.TgZ(56,"cd-helper"),e.SDv(57,38),e.qZA()()()(),e.YNc(58,qn,11,2,"fieldset",39),e.YNc(59,Bn,16,11,"fieldset",39),e.YNc(60,Vn,25,13,"fieldset",39),e.YNc(61,_i,18,19,"fieldset",39),e.TgZ(62,"fieldset")(63,"legend"),e.SDv(64,40),e.qZA(),e.TgZ(65,"div",8)(66,"div",14)(67,"div",15),e._UZ(68,"input",41),e.TgZ(69,"label",42),e.SDv(70,43),e.qZA()()()(),e.YNc(71,ti,6,0,"div",19),e.YNc(72,si,8,3,"div",19),e.YNc(73,ai,6,0,"div",19),e.YNc(74,ci,7,2,"div",19),e.qZA(),e.TgZ(75,"fieldset")(76,"legend"),e.SDv(77,44),e.qZA(),e.TgZ(78,"div",8)(79,"div",14)(80,"div",15),e._UZ(81,"input",45),e.TgZ(82,"label",46),e.SDv(83,47),e.qZA()()()(),e.YNc(84,di,6,0,"div",19),e.YNc(85,Ti,8,3,"div",19),e.YNc(86,Ei,6,0,"div",19),e.YNc(87,mi,7,2,"div",19),e.qZA()(),e.TgZ(88,"div",48)(89,"cd-form-button-panel",49),e.NdJ("submitActionEvent",function(){e.CHM(_);const i=e.oxw();return e.KtG(i.onSubmit())}),e.ALo(90,"titlecase"),e.ALo(91,"upperFirst"),e.qZA()()()()()}if(2&t){const _=e.MAs(2),o=e.oxw();e.xp6(1),e.Q6J("formGroup",o.userForm),e.xp6(6),e.pQV(e.lcZ(6,30,o.action))(e.lcZ(7,32,o.resource)),e.QtT(5),e.xp6(3),e.Q6J("ngClass",e.VKq(38,C_,!o.editing)),e.xp6(3),e.Q6J("readonly",o.editing),e.xp6(1),e.Q6J("ngIf",o.userForm.showError("user_id",_,"required")),e.xp6(1),e.Q6J("ngIf",o.userForm.showError("user_id",_,"pattern")),e.xp6(1),e.Q6J("ngIf",!o.userForm.getValue("show_tenant")&&o.userForm.showError("user_id",_,"notUnique")),e.xp6(4),e.Q6J("readonly",!0),e.xp6(3),e.Q6J("ngIf",o.userForm.getValue("show_tenant")),e.xp6(2),e.Q6J("ngClass",e.VKq(40,C_,!o.editing)),e.xp6(4),e.Q6J("ngIf",o.userForm.showError("display_name",_,"pattern")),e.xp6(1),e.Q6J("ngIf",o.userForm.showError("display_name",_,"required")),e.xp6(6),e.Q6J("ngIf",o.userForm.showError("email",_,"email")),e.xp6(1),e.Q6J("ngIf",o.userForm.showError("email",_,"notUnique")),e.xp6(12),e.Q6J("ngIf",1==o.userForm.get("max_buckets_mode").value),e.xp6(9),e.Q6J("ngIf",!o.editing),e.xp6(1),e.Q6J("ngIf",o.editing),e.xp6(1),e.Q6J("ngIf",o.editing),e.xp6(1),e.Q6J("ngIf",o.editing),e.xp6(10),e.Q6J("ngIf",o.userForm.controls.user_quota_enabled.value),e.xp6(1),e.Q6J("ngIf",o.userForm.controls.user_quota_enabled.value&&!o.userForm.getValue("user_quota_max_size_unlimited")),e.xp6(1),e.Q6J("ngIf",o.userForm.controls.user_quota_enabled.value),e.xp6(1),e.Q6J("ngIf",o.userForm.controls.user_quota_enabled.value&&!o.userForm.getValue("user_quota_max_objects_unlimited")),e.xp6(10),e.Q6J("ngIf",o.userForm.controls.bucket_quota_enabled.value),e.xp6(1),e.Q6J("ngIf",o.userForm.controls.bucket_quota_enabled.value&&!o.userForm.getValue("bucket_quota_max_size_unlimited")),e.xp6(1),e.Q6J("ngIf",o.userForm.controls.bucket_quota_enabled.value),e.xp6(1),e.Q6J("ngIf",o.userForm.controls.bucket_quota_enabled.value&&!o.userForm.getValue("bucket_quota_max_objects_unlimited")),e.xp6(2),e.Q6J("form",o.userForm)("submitText",e.lcZ(90,34,o.action)+" "+e.lcZ(91,36,o.resource))}}let O_=(()=>{class t extends l_.E{constructor(_,o,i,s,l,r,d){super(),this.formBuilder=_,this.route=o,this.router=i,this.rgwUserService=s,this.modalService=l,this.notificationService=r,this.actionLabels=d,this.editing=!1,this.submitObservables=[],this.icons=$.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/${I.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,a.kI.pattern(/^[a-zA-Z0-9!@#%^&*()_ -]+$/)]],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 o=decodeURIComponent(_.uid),i=[];i.push(this.rgwUserService.get(o)),i.push(this.rgwUserService.getQuota(o)),(0,ne.D)(i).subscribe(s=>{const l=E().clone(this.userForm.value);let r=E().pick(s[0],E().keys(this.userForm.value));switch(r.max_buckets){case-1:r.max_buckets_mode=-1,r.max_buckets="";break;case 0:r.max_buckets_mode=0,r.max_buckets="";break;default:r.max_buckets_mode=1}["user","bucket"].forEach(u=>{const R=s[1][u+"_quota"];r[u+"_quota_enabled"]=R.enabled,R.max_size<0?(r[u+"_quota_max_size_unlimited"]=!0,r[u+"_quota_max_size"]=null):(r[u+"_quota_max_size_unlimited"]=!1,r[u+"_quota_max_size"]=`${R.max_size} B`),R.max_objects<0?(r[u+"_quota_max_objects_unlimited"]=!0,r[u+"_quota_max_objects"]=null):(r[u+"_quota_max_objects_unlimited"]=!1,r[u+"_quota_max_objects"]=R.max_objects)}),r=E().merge(l,r),this.userForm.setValue(r),this.subusers=s[0].subusers,this.s3Keys=s[0].keys,this.swiftKeys=s[0].swift_keys;const d={"read, write":"*"};s[0].caps.forEach(u=>{u.perm in d&&(u.perm=d[u.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 o=this.getUID();if(this.editing){if(this._isGeneralDirty()){const i=this._getUpdateArgs();this.submitObservables.push(this.rgwUserService.update(o,i))}_="Updated Object Gateway user '" + o + "'"}else{const i=this._getCreateArgs();this.submitObservables.push(this.rgwUserService.create(i)),_="Created Object Gateway user '" + o + "'"}if(this._isUserQuotaDirty()){const i=this._getUserQuotaArgs();this.submitObservables.push(this.rgwUserService.updateQuota(o,i))}if(this._isBucketQuotaDirty()){const i=this._getBucketQuotaArgs();this.submitObservables.push(this.rgwUserService.updateQuota(o,i))}(0,Bo.z)(...this.submitObservables).subscribe({error:()=>{this.userForm.setErrors({cdSubmitButton:!0})},complete:()=>{this.notificationService.show(w.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(){let _=this.userForm.getValue("user_id");const o=this.userForm?.getValue("tenant");return o&&o.length>0&&(_=`${this.userForm.getValue("tenant")}$${_}`),_}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 Ke.H).toBytes(_.value)<1024?{quotaMaxSize:!0}:null}setSubuser(_,o){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"})),E().isNumber(o)?this.subusers[o]=_:(this.subusers.push(_),this.swiftKeys.push({user:_.id,secret_key:_.generate_secret?"Apply your changes first...":_.secret_key})),this.userForm.markAsDirty()}deleteSubuser(_){const o=this.subusers[_];this.submitObservables.push(this.rgwUserService.deleteSubuser(this.getUID(),o.id)),this.s3Keys=this.s3Keys.filter(i=>i.user!==o.id),this.swiftKeys=this.swiftKeys.filter(i=>i.user!==o.id),this.subusers.splice(_,1),this.userForm.markAsDirty()}setCapability(_,o){const i=this.getUID();if(E().isNumber(o)){const s=this.capabilities[o];this.submitObservables.push(this.rgwUserService.deleteCapability(i,s.type,s.perm)),this.submitObservables.push(this.rgwUserService.addCapability(i,_.type,_.perm)),this.capabilities[o]=_}else this.submitObservables.push(this.rgwUserService.addCapability(i,_.type,_.perm)),this.capabilities=[...this.capabilities,_];this.userForm.markAsDirty()}deleteCapability(_){const o=this.capabilities[_];this.submitObservables.push(this.rgwUserService.deleteCapability(this.getUID(),o.type,o.perm)),this.capabilities.splice(_,1),this.capabilities=[...this.capabilities],this.userForm.markAsDirty()}hasAllCapabilities(_){return!E().difference(p_.getAll(),E().map(_,"type")).length}setS3Key(_,o){if(!E().isNumber(o)){const i=_.user.match(/([^:]+)(:(.+))?/),s=i[1],l={subuser:i[2]?i[3]:"",generate_key:_.generate_key?"true":"false"};"false"===l.generate_key&&(E().isNil(_.access_key)||(l.access_key=_.access_key),E().isNil(_.secret_key)||(l.secret_key=_.secret_key)),this.submitObservables.push(this.rgwUserService.addS3Key(s,l)),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 o=this.s3Keys[_];this.submitObservables.push(this.rgwUserService.deleteS3Key(this.getUID(),o.access_key)),this.s3Keys.splice(_,1),this.userForm.markAsDirty()}showSubuserModal(_){const o=this.getUID(),i=this.modalService.show(Pn);if(E().isNumber(_)){const s=this.subusers[_];i.componentInstance.setEditing(),i.componentInstance.setValues(o,s.id,s.permissions)}else i.componentInstance.setEditing(!1),i.componentInstance.setValues(o),i.componentInstance.setSubusers(this.subusers);i.componentInstance.submitAction.subscribe(s=>{this.setSubuser(s,_)})}showS3KeyModal(_){const o=this.modalService.show(m_);if(E().isNumber(_)){const i=this.s3Keys[_];o.componentInstance.setViewing(),o.componentInstance.setValues(i.user,i.access_key,i.secret_key)}else{const i=this._getS3KeyUserCandidates();o.componentInstance.setViewing(!1),o.componentInstance.setUserCandidates(i),o.componentInstance.submitAction.subscribe(s=>{this.setS3Key(s)})}}showSwiftKeyModal(_){const o=this.modalService.show(S_),i=this.swiftKeys[_];o.componentInstance.setValues(i.user,i.secret_key)}showCapabilityModal(_){const o=this.modalService.show(on);if(E().isNumber(_)){const i=this.capabilities[_];o.componentInstance.setEditing(),o.componentInstance.setValues(i.type,i.perm)}else o.componentInstance.setEditing(!1),o.componentInstance.setCapabilities(this.capabilities);o.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:""},o=this.userForm.getValue("email");E().isString(o)&&o.length>0&&E().merge(_,{email:o}),this.userForm.getValue("generate_key")||E().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 E().includes([-1,0],s)&&E().merge(_,{max_buckets:s}),_}_getUpdateArgs(){const _={},o=["display_name","email","max_buckets","suspended"];for(const s of o)_[s]=this.userForm.getValue(s);const i=parseInt(this.userForm.getValue("max_buckets_mode"),10);return E().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 o=(new Ke.H).toBytes(this.userForm.getValue("user_quota_max_size"));_.max_size_kb=(o/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 o=(new Ke.H).toBytes(this.userForm.getValue("bucket_quota_max_size"));_.max_size_kb=(o/1024).toFixed(0)}return this.userForm.getValue("bucket_quota_max_objects_unlimited")||(_.max_objects=this.userForm.getValue("bucket_quota_max_objects")),_}_getS3KeyUserCandidates(){let _=[];const o=this.getUID();return E().isString(o)&&!E().isEmpty(o)&&_.push(o),this.subusers.forEach(i=>{_.push(i.id)}),this.s3Keys.forEach(i=>{_.push(i.user)}),_=E().uniq(_),_}onMaxBucketsModeChange(_){"1"===_&&(this.userForm.get("max_buckets").valid||this.userForm.patchValue({max_buckets:1e3}))}}return t.\u0275fac=function(_){return new(_||t)(e.Y36(ae.O),e.Y36(J.gz),e.Y36(J.F0),e.Y36(Q),e.Y36(ee.Z),e.Y36(Y.g),e.Y36(I.p4))},t.\u0275cmp=e.Xpm({type:t,selectors:[["cd-rgw-user-form"]],features:[e.qOj],decls:1,vars:1,consts:function(){let n,_,o,i,s,l,r,d,u,R,O,F,b,h,M,L,S,W,C,Z,D,U,v,y,f,P,N,te,A,Me,Se,Ce,Oe,Fe,Pe,Ne,Ge,Ae,Ie,be,he,Le,We,$e,Ze,De,Ue,ve,ye,we,p,W_,$_,Z_,D_,U_,v_,y_,w_,x_,k_,z_,q_,H_,X_,B_,Q_,Y_,J_,K_,V_;return n="" + "\ufffd0\ufffd" + " " + "\ufffd1\ufffd" + "",_="User ID",o="Show Tenant",i="Full name",s="Email address",l="Max. buckets",r="Disabled",d="Unlimited",u="Custom",R="Suspended",O="Suspending the user disables the user and subuser.",F="User quota",b="Enabled",h="Bucket quota",M="Enabled",L="This field is required.",S="The value is not valid.",W="The chosen user ID is already in use.",C="Tenant",Z="The value is not valid.",D="The chosen user ID exists in this tenant.",U="The value is not valid.",v="This field is required.",y="This is not a valid email address.",f="The chosen email address is already in use.",P="This field is required.",N="The entered value must be >= 1.",te="S3 key",A="Auto-generate key",Me="Access key",Se="This field is required.",Ce="Secret key",Oe="This field is required.",Fe="Subusers",Pe="" + "\ufffd0\ufffd" + " " + "\ufffd1\ufffd" + "",Ne="There are no subusers.",Ge="Edit",Ae="Delete",Ie="Keys",be="S3",he="" + "\ufffd0\ufffd" + " " + "\ufffd1\ufffd" + "",Le="Swift",We="There are no keys.",$e="Show",Ze="Delete",De="There are no keys.",Ue="Show",ve="Capabilities",ye="All capabilities are already added.",we="" + "\ufffd0\ufffd" + " " + "\ufffd1\ufffd" + "",p="There are no capabilities.",W_="Edit",$_="Delete",Z_="Unlimited size",D_="Max. size",U_="This field is required.",v_="The value is not valid.",y_="Size must be a number or in a valid format. eg: 5 GiB",w_="Unlimited objects",x_="Max. objects",k_="This field is required.",z_="The entered value must be >= 0.",q_="Unlimited size",H_="Max. size",X_="This field is required.",B_="The value is not valid.",Q_="Size must be a number or in a valid format. eg: 5 GiB",Y_="Unlimited objects",J_="Max. objects",K_="This field is required.",V_="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"],n,[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"],o,["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"],l,["formControlName","max_buckets_mode","name","max_buckets_mode","id","max_buckets_mode",1,"form-select",3,"change"],["value","-1"],r,["value","0"],d,["value","1"],u,["id","suspended","type","checkbox","formControlName","suspended",1,"custom-control-input"],["for","suspended",1,"custom-control-label"],R,O,[4,"ngIf"],F,["id","user_quota_enabled","type","checkbox","formControlName","user_quota_enabled",1,"custom-control-input"],["for","user_quota_enabled",1,"custom-control-label"],b,h,["id","bucket_quota_enabled","type","checkbox","formControlName","bucket_quota_enabled",1,"custom-control-input"],["for","bucket_quota_enabled",1,"custom-control-label"],M,[1,"card-footer"],["wrappingClass","text-right",3,"form","submitText","submitActionEvent"],[1,"invalid-feedback"],L,S,W,["for","tenant",1,"cd-col-form-label"],C,["id","tenant","type","text","formControlName","tenant","autofocus","",1,"form-control",3,"readonly"],Z,D,U,v,y,f,[1,"cd-col-form-label"],["id","max_buckets","type","number","formControlName","max_buckets","min","1",1,"form-control"],P,N,te,["id","generate_key","type","checkbox","formControlName","generate_key",1,"custom-control-input"],["for","generate_key",1,"custom-control-label"],A,["for","access_key",1,"cd-col-form-label","required"],Me,[1,"input-group"],["id","access_key","type","password","formControlName","access_key",1,"form-control"],["type","button","cdPasswordButton","access_key",1,"btn","btn-light"],["source","access_key"],Se,["for","secret_key",1,"cd-col-form-label","required"],Ce,["id","secret_key","type","password","formControlName","secret_key",1,"form-control"],["type","button","cdPasswordButton","secret_key",1,"btn","btn-light"],["source","secret_key"],Oe,Fe,[1,"row"],["class","no-border",4,"ngIf"],[4,"ngFor","ngForOf"],[1,"row","my-2"],[1,"col-12"],["type","button",1,"btn","btn-light","float-end","tc_addSubuserButton",3,"click"],[3,"ngClass"],Pe,[1,"help-block"],[1,"no-border"],[1,"form-text","text-muted"],Ne,[1,"input-group-text"],["type","text","readonly","",1,"cd-form-control",3,"value"],["type","button","ngbTooltip",Ge,1,"btn","btn-light","tc_showSubuserButton",3,"click"],["type","button","ngbTooltip",Ae,1,"btn","btn-light","tc_deleteSubuserButton",3,"click"],Ie,be,["type","button",1,"btn","btn-light","float-end","tc_addS3KeyButton",3,"click"],he,Le,We,["type","button","ngbTooltip",$e,1,"btn","btn-light","tc_showS3KeyButton",3,"click"],["type","button","ngbTooltip",Ze,1,"btn","btn-light","tc_deleteS3KeyButton",3,"click"],De,["type","button","ngbTooltip",Ue,1,"btn","btn-light","tc_showSwiftKeyButton",3,"click"],ve,["type","button","ngbTooltip",ye,"triggers","pointerenter:pointerleave",1,"btn","btn-light","float-end","tc_addCapButton",3,"disabled","disableTooltip","click"],we,p,["type","button","ngbTooltip",W_,1,"btn","btn-light","tc_editCapButton",3,"click"],["type","button","ngbTooltip",$_,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"],Z_,["for","user_quota_max_size",1,"cd-col-form-label","required"],D_,["id","user_quota_max_size","type","text","formControlName","user_quota_max_size","cdDimlessBinary","",1,"form-control"],U_,v_,y_,["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"],w_,["for","user_quota_max_objects",1,"cd-col-form-label","required"],x_,["id","user_quota_max_objects","type","number","formControlName","user_quota_max_objects","min","0",1,"form-control"],k_,z_,["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"],q_,["for","bucket_quota_max_size",1,"cd-col-form-label","required"],H_,["id","bucket_quota_max_size","type","text","formControlName","bucket_quota_max_size","cdDimlessBinary","",1,"form-control"],X_,B_,Q_,["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"],Y_,["for","bucket_quota_max_objects",1,"cd-col-form-label","required"],J_,["id","bucket_quota_max_objects","type","number","formControlName","bucket_quota_max_objects","min","0",1,"form-control"],K_,V_]},template:function(_,o){1&_&&e.YNc(0,Mi,92,42,"div",0),2&_&&e.Q6J("cdFormLoading",o.loading)},dependencies:[T.mk,T.sg,T.O5,j.S,pe.s,B.p,fe.U,Nn.Q,Xe.C,r_.y,k.o,q.b,z.P,H.V,a._Y,a.YN,a.Kr,a.Fj,a.wV,a.Wl,a.EJ,a.JJ,a.JL,a.qQ,a.sg,a.u,G._L,T.rS,_e.m,o_.i]}),t})();var F_=c(99466),Si=c(86969),Ci=c(78877);const Oi=["accessKeyTpl"],Fi=["secretKeyTpl"],Pi=function(t){return[t]};function Ni(t,n){if(1&t){const _=e.EpF();e.TgZ(0,"div")(1,"legend"),e.SDv(2,13),e.qZA(),e.TgZ(3,"div")(4,"cd-table",14),e.NdJ("updateSelection",function(i){e.CHM(_);const s=e.oxw(3);return e.KtG(s.updateKeysSelection(i))}),e.TgZ(5,"div",15)(6,"div",16)(7,"button",17),e.NdJ("click",function(){e.CHM(_);const i=e.oxw(3);return e.KtG(i.showKeyModal())}),e._UZ(8,"i",18),e.ynx(9),e.SDv(10,19),e.BQk(),e.qZA()()()()()()}if(2&t){const _=e.oxw(3);e.xp6(4),e.Q6J("data",_.keys)("columns",_.keysColumns),e.xp6(3),e.Q6J("disabled",!_.keysSelection.hasSingleSelection),e.xp6(1),e.Q6J("ngClass",e.VKq(4,Pi,_.icons.show))}}function Gi(t,n){if(1&t&&(e.TgZ(0,"tr")(1,"td",8),e.SDv(2,20),e.qZA(),e.TgZ(3,"td"),e._uU(4),e.qZA()()),2&t){const _=e.oxw(3);e.xp6(4),e.Oqu(_.user.email)}}function Ai(t,n){if(1&t&&(e.TgZ(0,"div"),e._uU(1),e.qZA()),2&t){const _=n.$implicit;e.xp6(1),e.AsE(" ",_.id," (",_.permissions,") ")}}function Ii(t,n){if(1&t&&(e.TgZ(0,"tr")(1,"td",8),e.SDv(2,21),e.qZA(),e.TgZ(3,"td"),e.YNc(4,Ai,2,2,"div",22),e.qZA()()),2&t){const _=e.oxw(3);e.xp6(4),e.Q6J("ngForOf",_.user.subusers)}}function bi(t,n){if(1&t&&(e.TgZ(0,"div"),e._uU(1),e.qZA()),2&t){const _=n.$implicit;e.xp6(1),e.AsE(" ",_.type," (",_.perm,") ")}}function hi(t,n){if(1&t&&(e.TgZ(0,"tr")(1,"td",8),e.SDv(2,23),e.qZA(),e.TgZ(3,"td"),e.YNc(4,bi,2,2,"div",22),e.qZA()()),2&t){const _=e.oxw(3);e.xp6(4),e.Q6J("ngForOf",_.user.caps)}}function Li(t,n){if(1&t&&(e.TgZ(0,"tr")(1,"td",8),e.SDv(2,24),e.qZA(),e.TgZ(3,"td"),e._uU(4),e.ALo(5,"join"),e.qZA()()),2&t){const _=e.oxw(3);e.xp6(4),e.Oqu(e.lcZ(5,1,_.user.mfa_ids))}}function Wi(t,n){1&t&&(e.TgZ(0,"td"),e._uU(1,"-"),e.qZA())}function $i(t,n){1&t&&(e.TgZ(0,"td"),e.SDv(1,29),e.qZA())}function Zi(t,n){if(1&t&&(e.TgZ(0,"td"),e._uU(1),e.ALo(2,"dimlessBinary"),e.qZA()),2&t){const _=e.oxw(4);e.xp6(1),e.hij(" ",e.lcZ(2,1,_.user.user_quota.max_size)," ")}}function Di(t,n){1&t&&(e.TgZ(0,"td"),e._uU(1,"-"),e.qZA())}function Ui(t,n){1&t&&(e.TgZ(0,"td"),e.SDv(1,30),e.qZA())}function vi(t,n){if(1&t&&(e.TgZ(0,"td"),e._uU(1),e.qZA()),2&t){const _=e.oxw(4);e.xp6(1),e.hij(" ",_.user.user_quota.max_objects," ")}}function yi(t,n){if(1&t&&(e.TgZ(0,"div")(1,"legend"),e.SDv(2,25),e.qZA(),e.TgZ(3,"table",2)(4,"tbody")(5,"tr")(6,"td",3),e.SDv(7,26),e.qZA(),e.TgZ(8,"td",5),e._uU(9),e.ALo(10,"booleanText"),e.qZA()(),e.TgZ(11,"tr")(12,"td",8),e.SDv(13,27),e.qZA(),e.YNc(14,Wi,2,0,"td",0),e.YNc(15,$i,2,0,"td",0),e.YNc(16,Zi,3,3,"td",0),e.qZA(),e.TgZ(17,"tr")(18,"td",8),e.SDv(19,28),e.qZA(),e.YNc(20,Di,2,0,"td",0),e.YNc(21,Ui,2,0,"td",0),e.YNc(22,vi,2,1,"td",0),e.qZA()()()()),2&t){const _=e.oxw(3);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 wi(t,n){1&t&&(e.TgZ(0,"td"),e._uU(1,"-"),e.qZA())}function xi(t,n){1&t&&(e.TgZ(0,"td"),e.SDv(1,35),e.qZA())}function ki(t,n){if(1&t&&(e.TgZ(0,"td"),e._uU(1),e.ALo(2,"dimlessBinary"),e.qZA()),2&t){const _=e.oxw(4);e.xp6(1),e.hij(" ",e.lcZ(2,1,_.user.bucket_quota.max_size)," ")}}function zi(t,n){1&t&&(e.TgZ(0,"td"),e._uU(1,"-"),e.qZA())}function qi(t,n){1&t&&(e.TgZ(0,"td"),e.SDv(1,36),e.qZA())}function Hi(t,n){if(1&t&&(e.TgZ(0,"td"),e._uU(1),e.qZA()),2&t){const _=e.oxw(4);e.xp6(1),e.hij(" ",_.user.bucket_quota.max_objects," ")}}function Xi(t,n){if(1&t&&(e.TgZ(0,"div")(1,"legend"),e.SDv(2,31),e.qZA(),e.TgZ(3,"table",2)(4,"tbody")(5,"tr")(6,"td",3),e.SDv(7,32),e.qZA(),e.TgZ(8,"td",5),e._uU(9),e.ALo(10,"booleanText"),e.qZA()(),e.TgZ(11,"tr")(12,"td",8),e.SDv(13,33),e.qZA(),e.YNc(14,wi,2,0,"td",0),e.YNc(15,xi,2,0,"td",0),e.YNc(16,ki,3,3,"td",0),e.qZA(),e.TgZ(17,"tr")(18,"td",8),e.SDv(19,34),e.qZA(),e.YNc(20,zi,2,0,"td",0),e.YNc(21,qi,2,0,"td",0),e.YNc(22,Hi,2,1,"td",0),e.qZA()()()()),2&t){const _=e.oxw(3);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 Bi(t,n){if(1&t&&(e.TgZ(0,"div"),e.YNc(1,Ni,11,6,"div",0),e.TgZ(2,"legend"),e.SDv(3,1),e.qZA(),e.TgZ(4,"table",2)(5,"tbody")(6,"tr")(7,"td",3),e.SDv(8,4),e.qZA(),e.TgZ(9,"td",5),e._uU(10),e.qZA()(),e.TgZ(11,"tr")(12,"td",3),e.SDv(13,6),e.qZA(),e.TgZ(14,"td",5),e._uU(15),e.qZA()(),e.TgZ(16,"tr")(17,"td",3),e.SDv(18,7),e.qZA(),e.TgZ(19,"td",5),e._uU(20),e.qZA()(),e.TgZ(21,"tr")(22,"td",8),e.SDv(23,9),e.qZA(),e.TgZ(24,"td"),e._uU(25),e.qZA()(),e.YNc(26,Gi,5,1,"tr",0),e.TgZ(27,"tr")(28,"td",8),e.SDv(29,10),e.qZA(),e.TgZ(30,"td"),e._uU(31),e.ALo(32,"booleanText"),e.qZA()(),e.TgZ(33,"tr")(34,"td",8),e.SDv(35,11),e.qZA(),e.TgZ(36,"td"),e._uU(37),e.ALo(38,"booleanText"),e.qZA()(),e.TgZ(39,"tr")(40,"td",8),e.SDv(41,12),e.qZA(),e.TgZ(42,"td"),e._uU(43),e.ALo(44,"map"),e.qZA()(),e.YNc(45,Ii,5,1,"tr",0),e.YNc(46,hi,5,1,"tr",0),e.YNc(47,Li,6,3,"tr",0),e.qZA()(),e.YNc(48,yi,23,9,"div",0),e.YNc(49,Xi,23,9,"div",0),e.qZA()),2&t){const _=e.oxw(2);e.xp6(1),e.Q6J("ngIf",_.keys.length),e.xp6(9),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(32,14,_.user.suspended)),e.xp6(6),e.Oqu(e.lcZ(38,16,"true"===_.user.system)),e.xp6(6),e.Oqu(e.xi3(44,18,_.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 Qi(t,n){if(1&t&&(e.ynx(0),e.YNc(1,Bi,50,21,"div",0),e.BQk()),2&t){const _=e.oxw();e.xp6(1),e.Q6J("ngIf",_.user)}}let Yi=(()=>{class t{constructor(_,o){this.rgwUserService=_,this.modalService=o,this.keys=[],this.keysColumns=[],this.keysSelection=new qe.r,this.icons=$.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=E().sortBy(this.user.subusers,"id"),this.user.caps=E().sortBy(this.user.caps,"type"),this.rgwUserService.getQuota(this.user.uid).subscribe(_=>{E().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=E().sortBy(this.keys,"user"))}updateKeysSelection(_){this.keysSelection=_}showKeyModal(){const _=this.keysSelection.first(),o=this.modalService.show("S3"===_.type?m_:S_);switch(_.type){case"S3":o.componentInstance.setViewing(),o.componentInstance.setValues(_.ref.user,_.ref.access_key,_.ref.secret_key);break;case"Swift":o.componentInstance.setValues(_.ref.user,_.ref.secret_key)}}}return t.\u0275fac=function(_){return new(_||t)(e.Y36(Q),e.Y36(ee.Z))},t.\u0275cmp=e.Xpm({type:t,selectors:[["cd-rgw-user-details"]],viewQuery:function(_,o){if(1&_&&(e.Gf(Oi,5),e.Gf(Fi,5)),2&_){let i;e.iGM(i=e.CRH())&&(o.accessKeyTpl=i.first),e.iGM(i=e.CRH())&&(o.secretKeyTpl=i.first)}},inputs:{selection:"selection"},features:[e.TTD],decls:1,vars:1,consts:function(){let n,_,o,i,s,l,r,d,u,R,O,F,b,h,M,L,S,W,C,Z,D,U,v,y,f,P;return n="Details",_="Tenant",o="User ID",i="Username",s="Full name",l="Suspended",r="System",d="Maximum buckets",u="Keys",R="Show",O="Email address",F="Subusers",b="Capabilities",h="MFAs(Id)",M="User quota",L="Enabled",S="Maximum size",W="Maximum objects",C="Unlimited",Z="Unlimited",D="Bucket quota",U="Enabled",v="Maximum size",y="Maximum objects",f="Unlimited",P="Unlimited",[[4,"ngIf"],n,[1,"table","table-striped","table-bordered"],[1,"bold","w-25"],_,[1,"w-75"],o,i,[1,"bold"],s,l,r,d,u,["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"],R,O,F,[4,"ngFor","ngForOf"],b,h,M,L,S,W,C,Z,D,U,v,y,f,P]},template:function(_,o){1&_&&e.YNc(0,Qi,2,1,"ng-container",0),2&_&&e.Q6J("ngIf",o.selection)},dependencies:[T.mk,T.sg,T.O5,le.a,k.o,T_.T,Ye.$,Si.A,Ci.b]}),t})();const P_=function(){return{exact:!0}};let Ji=(()=>{class t{}return t.\u0275fac=function(_){return new(_||t)},t.\u0275cmp=e.Xpm({type:t,selectors:[["cd-rgw-user-tabs"]],decls:7,vars:4,consts:function(){let n,_;return n="Users",_="Roles",[[1,"nav","nav-tabs"],[1,"nav-item"],["routerLink","/rgw/user","routerLinkActive","active","ariaCurrentWhenActive","page",1,"nav-link",3,"routerLinkActiveOptions"],n,["routerLink","/rgw/roles","routerLinkActive","active","ariaCurrentWhenActive","page",1,"nav-link",3,"routerLinkActiveOptions"],_]},template:function(_,o){1&_&&(e.TgZ(0,"ul",0)(1,"li",1)(2,"a",2),e.SDv(3,3),e.qZA()(),e.TgZ(4,"li",1)(5,"a",4),e.SDv(6,5),e.qZA()()()),2&_&&(e.xp6(2),e.Q6J("routerLinkActiveOptions",e.DdM(2,P_)),e.xp6(3),e.Q6J("routerLinkActiveOptions",e.DdM(3,P_)))},dependencies:[J.rH,J.Od]}),t})();const Ki=["userSizeTpl"],Vi=["userObjectTpl"];function ji(t,n){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 es(t,n){1&t&&e.SDv(0,9)}function _s(t,n){if(1&t&&(e.YNc(0,ji,1,2,"cd-usage-bar",6),e.YNc(1,es,1,0,"ng-template",null,7,e.W1O)),2&t){const _=n.row,o=e.MAs(2);e.Q6J("ngIf",_.user_quota.max_size>0&&_.user_quota.enabled)("ngIfElse",o)}}function ts(t,n){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 os(t,n){1&t&&e.SDv(0,13)}function ns(t,n){if(1&t&&(e.YNc(0,ts,1,3,"cd-usage-bar",10),e.YNc(1,os,1,0,"ng-template",null,11,e.W1O)),2&t){const _=n.row,o=e.MAs(2);e.Q6J("ngIf",_.user_quota.max_objects>0&&_.user_quota.enabled)("ngIfElse",o)}}let ss=(()=>{class t extends Be.o{constructor(_,o,i,s,l,r){super(r),this.authStorageService=_,this.rgwUserService=o,this.modalService=i,this.urlBuilder=s,this.actionLabels=l,this.ngZone=r,this.columns=[],this.users=[],this.selection=new qe.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:F_.e.checkIcon},{name:"Max. buckets",prop:"max_buckets",flexGrow:1,cellTransformation:F_.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:$.P.add,routerLink:()=>this.urlBuilder.getCreate(),name:this.actionLabels.CREATE,canBePrimary:l=>!l.hasSelection},{permission:"update",icon:$.P.edit,routerLink:()=>this.urlBuilder.getEdit(_()),name:this.actionLabels.EDIT},{permission:"delete",icon:$.P.destroy,click:()=>this.deleteAction(),disable:()=>!this.selection.hasSelection,name:this.actionLabels.DELETE,canBePrimary:l=>l.hasMultiSelection}],this.setTableRefreshTimeout()}getUserList(_){this.setTableRefreshTimeout(),this.rgwUserService.list().subscribe(o=>{this.users=o},()=>{_.error()})}updateSelection(_){this.selection=_}deleteAction(){this.modalService.show(Qe.M,{itemDescription:this.selection.hasSingleSelection?"user":"users",itemNames:this.selection.selected.map(_=>_.uid),submitActionObservable:()=>new u_.y(_=>{(0,ne.D)(this.selection.selected.map(o=>this.rgwUserService.delete(o.uid))).subscribe({error:o=>{_.error(o),this.table.refreshBtn()},complete:()=>{_.complete(),this.table.refreshBtn()}})})})}}return t.\u0275fac=function(_){return new(_||t)(e.Y36(ce.j),e.Y36(Q),e.Y36(ee.Z),e.Y36(re.F),e.Y36(I.p4),e.Y36(e.R0b))},t.\u0275cmp=e.Xpm({type:t,selectors:[["cd-rgw-user-list"]],viewQuery:function(_,o){if(1&_&&(e.Gf(le.a,7),e.Gf(Ki,7),e.Gf(Vi,7)),2&_){let i;e.iGM(i=e.CRH())&&(o.table=i.first),e.iGM(i=e.CRH())&&(o.userSizeTpl=i.first),e.iGM(i=e.CRH())&&(o.userObjectTpl=i.first)}},features:[e._Bn([{provide:re.F,useValue:new re.F("rgw/user")}]),e.qOj],decls:9,vars:9,consts:function(){let n,_;return n="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"],n,[3,"total","used","isBinary",4,"ngIf","ngIfElse"],["noObjectQuota",""],[3,"total","used","isBinary"],_]},template:function(_,o){1&_&&(e._UZ(0,"cd-rgw-user-tabs"),e.TgZ(1,"cd-table",0,1),e.NdJ("setExpandedRow",function(s){return o.setExpandedRow(s)})("updateSelection",function(s){return o.updateSelection(s)})("fetchData",function(s){return o.getUserList(s)}),e._UZ(3,"cd-table-actions",2)(4,"cd-rgw-user-details",3),e.qZA(),e.YNc(5,_s,3,2,"ng-template",null,4,e.W1O),e.YNc(7,ns,3,2,"ng-template",null,5,e.W1O)),2&_&&(e.xp6(1),e.Q6J("autoReload",!1)("data",o.users)("columns",o.columns)("hasDetails",!0)("status",o.tableStatus),e.xp6(2),e.Q6J("permission",o.permission)("selection",o.selection)("tableActions",o.tableActions),e.xp6(1),e.Q6J("selection",o.expandedRow))},dependencies:[T.O5,R_.O,le.a,Je.K,Yi,Ji]}),t})();var as=c(83357),je=c(62946),N_=c(13464),ls=c(46797),de=c(95596),e_=c(80381),V=c(95463),x=c(43186),ue=c(97937),ge=c(98961);function rs(t,n){1&t&&(e.TgZ(0,"span",32),e.SDv(1,33),e.qZA())}function cs(t,n){1&t&&(e.TgZ(0,"span",32),e.SDv(1,34),e.qZA())}function ds(t,n){1&t&&(e.TgZ(0,"span",32),e.SDv(1,35),e.qZA())}function us(t,n){1&t&&(e.TgZ(0,"span",32),e.SDv(1,36),e.qZA())}function gs(t,n){1&t&&(e.TgZ(0,"span",32),e.SDv(1,37),e.qZA())}function Rs(t,n){1&t&&(e.TgZ(0,"span",32),e.SDv(1,38),e.qZA())}function Ts(t,n){1&t&&(e.TgZ(0,"span",32),e.SDv(1,39),e.qZA())}function Es(t,n){1&t&&(e.TgZ(0,"span",32),e.SDv(1,40),e.qZA())}function fs(t,n){1&t&&(e.TgZ(0,"span",32),e.SDv(1,41),e.qZA())}function ps(t,n){1&t&&(e.TgZ(0,"span",32),e.SDv(1,42),e.qZA())}let ms=(()=>{class t{constructor(_,o,i,s,l,r,d,u,R){this.activeModal=_,this.actionLabels=o,this.rgwMultisiteService=i,this.rgwZoneService=s,this.notificationService=l,this.rgwZonegroupService=r,this.rgwRealmService=d,this.rgwDaemonService=u,this.modalService=R,this.endpoints=/^((https?:\/\/)|(www.))(?:([a-zA-Z]+)|(\d+\.\d+.\d+.\d+)):\d{2,4}$/,this.ipv4Rgx=/^((25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$/i,this.ipv6Rgx=/^(?:[a-f0-9]{1,4}:){7}[a-f0-9]{1,4}$/i,this.submitAction=new e.vpe,this.multisiteInfo=[],this.createForm()}createForm(){this.multisiteMigrateForm=new V.d({realmName:new a.p4(null,{validators:[a.kI.required,m.h.custom("uniqueName",_=>this.realmNames&&-1!==this.zoneNames.indexOf(_))]}),zonegroupName:new a.p4(null,{validators:[a.kI.required,m.h.custom("uniqueName",_=>this.zonegroupNames&&-1!==this.zoneNames.indexOf(_))]}),zoneName:new a.p4(null,{validators:[a.kI.required,m.h.custom("uniqueName",_=>this.zoneNames&&-1!==this.zoneNames.indexOf(_))]}),zone_endpoints:new a.p4([],{validators:[m.h.custom("endpoint",_=>!(E().isEmpty(_)||(_.includes(",")?(_.split(",").forEach(o=>!this.endpoints.test(o)&&!this.ipv4Rgx.test(o)&&!this.ipv6Rgx.test(o)),1):this.endpoints.test(_)||this.ipv4Rgx.test(_)||this.ipv6Rgx.test(_)))),a.kI.required]}),zonegroup_endpoints:new a.p4([],[m.h.custom("endpoint",_=>!(E().isEmpty(_)||(_.includes(",")?(_.split(",").forEach(o=>!this.endpoints.test(o)&&!this.ipv4Rgx.test(o)&&!this.ipv6Rgx.test(o)),1):this.endpoints.test(_)||this.ipv4Rgx.test(_)||this.ipv6Rgx.test(_)))),a.kI.required]),access_key:new a.p4(null),secret_key:new a.p4(null)})}ngOnInit(){this.realmList=void 0!==this.multisiteInfo[0]&&this.multisiteInfo[0].hasOwnProperty("realms")?this.multisiteInfo[0].realms:[],this.realmNames=this.realmList.map(_=>_.name),this.zonegroupList=void 0!==this.multisiteInfo[1]&&this.multisiteInfo[1].hasOwnProperty("zonegroups")?this.multisiteInfo[1].zonegroups:[],this.zonegroupNames=this.zonegroupList.map(_=>_.name),this.zoneList=void 0!==this.multisiteInfo[2]&&this.multisiteInfo[2].hasOwnProperty("zones")?this.multisiteInfo[2].zones:[],this.zoneNames=this.zoneList.map(_=>_.name)}submit(){const _=this.multisiteMigrateForm.value;this.realm=new x.L6,this.realm.name=_.realmName,this.zonegroup=new x.iG,this.zonegroup.name=_.zonegroupName,this.zonegroup.endpoints=_.zonegroup_endpoints,this.zone=new x.jb,this.zone.name=_.zoneName,this.zone.endpoints=_.zone_endpoints,this.zone.system_key=new x.VY,this.zone.system_key.access_key=_.access_key,this.zone.system_key.secret_key=_.secret_key,this.rgwMultisiteService.migrate(this.realm,this.zonegroup,this.zone).subscribe(()=>{this.notificationService.show(w.k.success,"" + this.actionLabels.MIGRATE + " done successfully"),this.submitAction.emit(),this.activeModal.close()},()=>{this.notificationService.show(w.k.error,"Migration failed")})}}return t.\u0275fac=function(_){return new(_||t)(e.Y36(G.Kz),e.Y36(I.p4),e.Y36(e_.o),e.Y36(ue.g),e.Y36(Y.g),e.Y36(ge.K),e.Y36(de.y),e.Y36(oe.b),e.Y36(ee.Z))},t.\u0275cmp=e.Xpm({type:t,selectors:[["cd-rgw-multisite-migrate"]],outputs:{submitAction:"submitAction"},decls:68,vars:14,consts:function(){let n,_,o,i,s,l,r,d,u,R,O,F,b,h,M,L,S,W;return n="Migrate Single Site to Multi-Site " + "\ufffd#3\ufffd" + "" + "\ufffd#4\ufffd" + "Migrate from a single-site deployment with a default zone group and zone to a multi-site system" + "\ufffd/#4\ufffd" + "" + "\ufffd/#3\ufffd" + "",_="Realm Name",o="Rename default zone group",i="Zone group Endpoints ",s="Rename default zone",l="Zone Endpoints ",r="S3 access key " + "\ufffd#47\ufffd" + "" + "\ufffd#48\ufffd" + "To see or copy your S3 access key, go to " + "[\ufffd#49\ufffd|\ufffd#50\ufffd|\ufffd#51\ufffd|\ufffd#52\ufffd]" + "Object Gateway > Users" + "[\ufffd/#49\ufffd|\ufffd/#50\ufffd|\ufffd/#51\ufffd|\ufffd/#52\ufffd]" + " and click on your user name. In " + "[\ufffd#49\ufffd|\ufffd#50\ufffd|\ufffd#51\ufffd|\ufffd#52\ufffd]" + "Keys" + "[\ufffd/#49\ufffd|\ufffd/#50\ufffd|\ufffd/#51\ufffd|\ufffd/#52\ufffd]" + ", click " + "[\ufffd#49\ufffd|\ufffd#50\ufffd|\ufffd#51\ufffd|\ufffd#52\ufffd]" + "Show" + "[\ufffd/#49\ufffd|\ufffd/#50\ufffd|\ufffd/#51\ufffd|\ufffd/#52\ufffd]" + ". View the access key by clicking Show and copy the key by clicking " + "[\ufffd#49\ufffd|\ufffd#50\ufffd|\ufffd#51\ufffd|\ufffd#52\ufffd]" + "Copy to Clipboard" + "[\ufffd/#49\ufffd|\ufffd/#50\ufffd|\ufffd/#51\ufffd|\ufffd/#52\ufffd]" + "." + "\ufffd/#48\ufffd" + "" + "\ufffd/#47\ufffd" + "",r=e.Zx4(r),d="S3 secret key " + "\ufffd#58\ufffd" + "" + "\ufffd#59\ufffd" + "To see or copy your S3 access key, go to " + "[\ufffd#60\ufffd|\ufffd#61\ufffd|\ufffd#62\ufffd|\ufffd#63\ufffd]" + "Object Gateway > Users" + "[\ufffd/#60\ufffd|\ufffd/#61\ufffd|\ufffd/#62\ufffd|\ufffd/#63\ufffd]" + " and click on your user name. In " + "[\ufffd#60\ufffd|\ufffd#61\ufffd|\ufffd#62\ufffd|\ufffd#63\ufffd]" + "Keys" + "[\ufffd/#60\ufffd|\ufffd/#61\ufffd|\ufffd/#62\ufffd|\ufffd/#63\ufffd]" + ", click " + "[\ufffd#60\ufffd|\ufffd#61\ufffd|\ufffd#62\ufffd|\ufffd#63\ufffd]" + "Show" + "[\ufffd/#60\ufffd|\ufffd/#61\ufffd|\ufffd/#62\ufffd|\ufffd/#63\ufffd]" + ". View the secret key by clicking Show and copy the key by clicking " + "[\ufffd#60\ufffd|\ufffd#61\ufffd|\ufffd#62\ufffd|\ufffd#63\ufffd]" + "Copy to Clipboard" + "[\ufffd/#60\ufffd|\ufffd/#61\ufffd|\ufffd/#62\ufffd|\ufffd/#63\ufffd]" + "." + "\ufffd/#59\ufffd" + "" + "\ufffd/#58\ufffd" + "",d=e.Zx4(d),u="This field is required.",R="The chosen realm name is already in use.",O="This field is required.",F="The chosen zone group name is already in use.",b="This field is required.",h="Please enter a valid IP address.",M="This field is required.",L="The chosen zone name is already in use.",S="This field is required.",W="Please enter a valid IP address.",[[3,"modalRef"],[1,"modal-title"],n,[1,"modal-content"],["name","multisiteMigrateForm","novalidate","",3,"formGroup"],["formDir","ngForm"],[1,"modal-body"],[1,"form-group","row"],["for","realmName",1,"cd-col-form-label","required"],_,[1,"cd-col-form-input"],["type","text","placeholder","Realm name...","id","realmName","name","realmName","formControlName","realmName",1,"form-control"],["class","invalid-feedback",4,"ngIf"],["for","zonegroupName",1,"cd-col-form-label","required"],o,["type","text","placeholder","Zone group name...","id","zonegroupName","name","zonegroupName","formControlName","zonegroupName",1,"form-control"],["for","zonegroup_endpoints",1,"cd-col-form-label","required"],i,["type","text","placeholder","e.g, http://ceph-node-00.com:80","id","zonegroup_endpoints","name","zonegroup_endpoints","formControlName","zonegroup_endpoints",1,"form-control"],["for","zoneName",1,"cd-col-form-label","required"],s,["type","text","placeholder","Zone name...","id","zoneName","name","zoneName","formControlName","zoneName",1,"form-control"],["for","zone_endpoints",1,"cd-col-form-label","required"],l,["type","text","placeholder","e.g, http://ceph-node-00.com:80","id","zone_endpoints","name","zone_endpoints","formControlName","zone_endpoints",1,"form-control"],["for","access_key",1,"cd-col-form-label","required"],r,["type","text","placeholder","e.g.","id","access_key","name","access_key","formControlName","access_key",1,"form-control"],d,["type","text","placeholder","e.g.","id","secret_key","name","secret_key","formControlName","secret_key",1,"form-control"],[1,"modal-footer"],[3,"submitText","form","submitActionEvent"],[1,"invalid-feedback"],u,R,O,F,b,h,M,L,S,W]},template:function(_,o){if(1&_&&(e.TgZ(0,"cd-modal",0),e.ynx(1,1),e.tHW(2,2),e.TgZ(3,"cd-helper"),e._UZ(4,"span"),e.qZA(),e.N_p(),e.BQk(),e.ynx(5,3),e.TgZ(6,"form",4,5)(8,"div",6)(9,"div",7)(10,"label",8),e.SDv(11,9),e.qZA(),e.TgZ(12,"div",10),e._UZ(13,"input",11),e.YNc(14,rs,2,0,"span",12),e.YNc(15,cs,2,0,"span",12),e.qZA()(),e.TgZ(16,"div",7)(17,"label",13),e.SDv(18,14),e.qZA(),e.TgZ(19,"div",10),e._UZ(20,"input",15),e.YNc(21,ds,2,0,"span",12),e.YNc(22,us,2,0,"span",12),e.qZA()(),e.TgZ(23,"div",7)(24,"label",16),e.SDv(25,17),e.qZA(),e.TgZ(26,"div",10),e._UZ(27,"input",18),e.YNc(28,gs,2,0,"span",12),e.YNc(29,Rs,2,0,"span",12),e.qZA()(),e.TgZ(30,"div",7)(31,"label",19),e.SDv(32,20),e.qZA(),e.TgZ(33,"div",10),e._UZ(34,"input",21),e.YNc(35,Ts,2,0,"span",12),e.YNc(36,Es,2,0,"span",12),e.qZA()(),e.TgZ(37,"div",7)(38,"label",22),e.SDv(39,23),e.qZA(),e.TgZ(40,"div",10),e._UZ(41,"input",24),e.YNc(42,fs,2,0,"span",12),e.YNc(43,ps,2,0,"span",12),e.qZA()(),e.TgZ(44,"div",7)(45,"label",25),e.tHW(46,26),e.TgZ(47,"cd-helper")(48,"span"),e._UZ(49,"b")(50,"b")(51,"b")(52,"b"),e.qZA()(),e.N_p(),e.qZA(),e.TgZ(53,"div",10),e._UZ(54,"input",27),e.qZA()(),e.TgZ(55,"div",7)(56,"label",25),e.tHW(57,28),e.TgZ(58,"cd-helper")(59,"span"),e._UZ(60,"b")(61,"b")(62,"b")(63,"b"),e.qZA()(),e.N_p(),e.qZA(),e.TgZ(64,"div",10),e._UZ(65,"input",29),e.qZA()()(),e.TgZ(66,"div",30)(67,"cd-form-button-panel",31),e.NdJ("submitActionEvent",function(){return o.submit()}),e.qZA()()(),e.BQk(),e.qZA()),2&_){const i=e.MAs(7);e.Q6J("modalRef",o.activeModal),e.xp6(6),e.Q6J("formGroup",o.multisiteMigrateForm),e.xp6(8),e.Q6J("ngIf",o.multisiteMigrateForm.showError("realmName",i,"required")),e.xp6(1),e.Q6J("ngIf",o.multisiteMigrateForm.showError("realmName",i,"uniqueName")),e.xp6(6),e.Q6J("ngIf",o.multisiteMigrateForm.showError("zonegroupName",i,"required")),e.xp6(1),e.Q6J("ngIf",o.multisiteMigrateForm.showError("zonegroupName",i,"uniqueName")),e.xp6(6),e.Q6J("ngIf",o.multisiteMigrateForm.showError("zonegroup_endpoints",i,"required")),e.xp6(1),e.Q6J("ngIf",o.multisiteMigrateForm.showError("zonegroup_endpoints",i,"endpoint")),e.xp6(6),e.Q6J("ngIf",o.multisiteMigrateForm.showError("zoneName",i,"required")),e.xp6(1),e.Q6J("ngIf",o.multisiteMigrateForm.showError("zoneName",i,"uniqueName")),e.xp6(6),e.Q6J("ngIf",o.multisiteMigrateForm.showError("zone_endpoints",i,"required")),e.xp6(1),e.Q6J("ngIf",o.multisiteMigrateForm.showError("zone_endpoints",i,"endpoint")),e.xp6(24),e.Q6J("submitText",o.actionLabels.MIGRATE)("form",o.multisiteMigrateForm)}},dependencies:[T.O5,j.S,X.z,B.p,k.o,q.b,z.P,H.V,a._Y,a.Fj,a.JJ,a.JL,a.sg,a.u]}),t})();var G_=c(80842),Re=c(34501);function Ms(t,n){if(1&t&&(e.TgZ(0,"strong",21),e._uU(1),e.qZA()),2&t){const _=n.$implicit;e.xp6(1),e.Oqu(_)}}function Ss(t,n){1&t&&(e.TgZ(0,"div",22)(1,"cd-alert-panel",23),e.SDv(2,24),e.qZA()())}function Cs(t,n){if(1&t){const _=e.EpF();e.ynx(0),e.TgZ(1,"label",10),e.tHW(2,11),e._UZ(3,"strong"),e.N_p(),e.qZA(),e.TgZ(4,"label",12),e.SDv(5,13),e.qZA(),e.YNc(6,Ms,2,1,"strong",14),e.TgZ(7,"div",15)(8,"div",16)(9,"input",17),e.NdJ("change",function(){e.CHM(_);const i=e.oxw();return e.KtG(i.showDangerText())}),e.qZA(),e.TgZ(10,"label",18),e.SDv(11,19),e.qZA()(),e.YNc(12,Ss,3,0,"div",20),e.qZA(),e.BQk()}if(2&t){const _=e.oxw();e.xp6(3),e.pQV(null==_.zone?null:_.zone.name),e.QtT(2),e.xp6(3),e.Q6J("ngForOf",_.includedPools),e.xp6(6),e.Q6J("ngIf",_.displayText)}}let Os=(()=>{class t{constructor(_,o,i,s,l){this.activeModal=_,this.actionLabels=o,this.notificationService=i,this.rgwZoneService=s,this.poolService=l,this.displayText=!1,this.includedPools=new Set,this.createForm()}ngOnInit(){this.zoneData$=this.rgwZoneService.get(this.zone),this.poolList$=this.poolService.getList()}ngAfterViewInit(){this.updateIncludedPools()}createForm(){this.zoneForm=new V.d({deletePools:new a.p4(!1)})}submit(){this.rgwZoneService.delete(this.zone.name,this.zoneForm.value.deletePools,this.includedPools,this.zone.parent).subscribe(()=>{this.notificationService.show(w.k.success,"Zone: '" + this.zone.name + "' deleted successfully"),this.activeModal.close()},()=>{this.zoneForm.setErrors({cdSubmitButton:!0})})}showDangerText(){this.displayText=!this.displayText}updateIncludedPools(){!this.zoneData$||!this.poolList$||this.zoneData$.subscribe(_=>{this.poolList$.subscribe(o=>{for(const i of o)for(const s of Object.values(_))if("string"==typeof s&&s.includes(i.pool_name))this.includedPools.add(i.pool_name);else if(Array.isArray(s)&&s[0].val)for(const l of s){const r=l.val;r.storage_classes.STANDARD.data_pool===i.pool_name&&this.includedPools.add(r.storage_classes.STANDARD.data_pool),r.data_extra_pool===i.pool_name&&this.includedPools.add(r.data_extra_pool),r.index_pool===i.pool_name&&this.includedPools.add(r.index_pool)}})})}}return t.\u0275fac=function(_){return new(_||t)(e.Y36(G.Kz),e.Y36(I.p4),e.Y36(Y.g),e.Y36(ue.g),e.Y36(G_.q))},t.\u0275cmp=e.Xpm({type:t,selectors:[["cd-rgw-multisite-zone-deletion-form"]],decls:12,vars:6,consts:function(){let n,_,o,i,s,l;return n="Delete Zone",_=" This will delete your " + "\ufffd#8\ufffd" + "" + "\ufffd0\ufffd" + "" + "\ufffd/#8\ufffd" + " Zone. ",o=" Do you want to delete the associated pools with the " + "\ufffd#3\ufffd" + "" + "\ufffd0\ufffd" + "" + "\ufffd/#3\ufffd" + " Zone?",i=" This will delete the following pools and any data stored in these pools:",s="Yes, I want to delete the pools.",l=" This will delete all the data in the pools! ",[[3,"modalRef"],[1,"modal-title"],n,[1,"modal-content"],["name","zoneForm","novalidate","",3,"formGroup"],[1,"modal-body","ms-4"],_,[4,"ngIf"],[1,"modal-footer"],[3,"form","submitText","submitActionEvent"],[1,"mt-3"],o,[1,"mb-4"],i,["class","block",4,"ngFor","ngForOf"],[1,"form-group"],[1,"custom-control","custom-checkbox","mt-2"],["type","checkbox","name","deletePools","id","deletePools","formControlName","deletePools",1,"custom-control-input",3,"change"],["for","deletePools",1,"custom-control-label"],s,["class","me-4",4,"ngIf"],[1,"block"],[1,"me-4"],["type","danger"],l]},template:function(_,o){1&_&&(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,"div",5)(6,"label"),e.tHW(7,6),e._UZ(8,"strong"),e.N_p(),e.qZA(),e.YNc(9,Cs,13,3,"ng-container",7),e.qZA(),e.TgZ(10,"div",8)(11,"cd-form-button-panel",9),e.NdJ("submitActionEvent",function(){return o.submit()}),e.qZA()()(),e.BQk(),e.qZA()),2&_&&(e.Q6J("modalRef",o.activeModal),e.xp6(4),e.Q6J("formGroup",o.zoneForm),e.xp6(4),e.pQV(null==o.zone?null:o.zone.name),e.QtT(7),e.xp6(1),e.Q6J("ngIf",o.includedPools.size),e.xp6(2),e.Q6J("form",o.zoneForm)("submitText",o.actionLabels.DELETE))},dependencies:[T.sg,T.O5,X.z,Re.G,B.p,k.o,q.b,z.P,H.V,a._Y,a.Wl,a.JJ,a.JL,a.sg,a.u],styles:[".block[_ngcontent-%COMP%]{display:block}#scroll[_ngcontent-%COMP%]{height:100%;max-height:10rem;overflow:auto}"]}),t})();function Fs(t,n){1&t&&(e.ynx(0),e.TgZ(1,"label"),e.SDv(2,21),e.qZA(),e.BQk())}function Ps(t,n){if(1&t&&(e.TgZ(0,"strong",22),e._uU(1),e.qZA()),2&t){const _=n.$implicit;e.xp6(1),e.Oqu(_)}}function Ns(t,n){if(1&t&&(e.TgZ(0,"strong",22),e._uU(1),e.qZA()),2&t){const _=n.$implicit;e.xp6(1),e.Oqu(_)}}function Gs(t,n){if(1&t&&(e.ynx(0),e.TgZ(1,"strong",13),e._uU(2,"Pools:"),e.qZA(),e.TgZ(3,"div",23),e.YNc(4,Ns,2,1,"strong",15),e.qZA(),e.BQk()),2&t){const _=e.oxw(2);e.xp6(4),e.Q6J("ngForOf",_.includedPools)}}function As(t,n){1&t&&(e.ynx(0),e.TgZ(1,"label",24),e.SDv(2,25),e.qZA(),e.BQk())}function Is(t,n){1&t&&(e.TgZ(0,"div",26)(1,"cd-alert-panel",27),e.SDv(2,28),e.qZA()())}function bs(t,n){if(1&t){const _=e.EpF();e.ynx(0),e.TgZ(1,"label",11),e.tHW(2,12),e._UZ(3,"strong"),e.N_p(),e.qZA(),e.YNc(4,Fs,3,0,"ng-container",7),e.TgZ(5,"strong",13),e._uU(6,"Zones:"),e.qZA(),e.TgZ(7,"div",14),e.YNc(8,Ps,2,1,"strong",15),e.qZA(),e.YNc(9,Gs,5,1,"ng-container",7),e.TgZ(10,"div",16)(11,"div",17)(12,"input",18),e.NdJ("change",function(){e.CHM(_);const i=e.oxw();return e.KtG(i.showDangerText())}),e.qZA(),e.YNc(13,As,3,0,"ng-container",19),e.qZA(),e.YNc(14,Is,3,0,"div",20),e.qZA(),e.BQk()}if(2&t){const _=e.oxw(),o=e.MAs(13);e.xp6(3),e.pQV(null==_.zonegroup?null:_.zonegroup.name),e.QtT(2),e.xp6(1),e.Q6J("ngIf",_.includedPools.size>0),e.xp6(4),e.Q6J("ngForOf",_.zonesList),e.xp6(1),e.Q6J("ngIf",_.includedPools.size>0),e.xp6(4),e.Q6J("ngIf",_.includedPools.size>0)("ngIfElse",o),e.xp6(1),e.Q6J("ngIf",_.displayText)}}function hs(t,n){1&t&&(e.TgZ(0,"label",24),e.SDv(1,29),e.qZA())}let Ls=(()=>{class t{constructor(_,o,i,s,l,r){this.activeModal=_,this.actionLabels=o,this.notificationService=i,this.rgwZonegroupService=s,this.poolService=l,this.rgwZoneService=r,this.zonesPools=[],this.zonesList=[],this.displayText=!1,this.includedPools=new Set,this.createForm()}ngOnInit(){this.zonegroupData$=this.rgwZonegroupService.get(this.zonegroup),this.poolList$=this.poolService.getList()}ngAfterViewInit(){this.updateIncludedPools()}createForm(){this.zonegroupForm=new V.d({deletePools:new a.p4(!1)})}submit(){this.rgwZonegroupService.delete(this.zonegroup.name,this.zonegroupForm.value.deletePools,this.includedPools).subscribe(()=>{this.notificationService.show(w.k.success,"Zone: '" + this.zonegroup.name + "' deleted successfully"),this.activeModal.close()})}showDangerText(){this.includedPools.size>0&&(this.displayText=!this.displayText)}updateIncludedPools(){!this.zonegroupData$||!this.poolList$||this.zonegroupData$.subscribe(_=>{for(const o of _.zones)this.zonesList.push(o.name),this.rgwZoneService.get(o).subscribe(i=>{this.poolList$.subscribe(s=>{for(const l of Object.values(i))for(const r of s)if("string"==typeof l&&l.includes(r.pool_name))this.includedPools.add(r.pool_name);else if(Array.isArray(l)&&l[0].val)for(const d of l){const u=d.val;u.storage_classes.STANDARD.data_pool===r.pool_name&&this.includedPools.add(u.storage_classes.STANDARD.data_pool),u.data_extra_pool===r.pool_name&&this.includedPools.add(u.data_extra_pool),u.index_pool===r.pool_name&&this.includedPools.add(u.index_pool)}})})})}}return t.\u0275fac=function(_){return new(_||t)(e.Y36(G.Kz),e.Y36(I.p4),e.Y36(Y.g),e.Y36(ge.K),e.Y36(G_.q),e.Y36(ue.g))},t.\u0275cmp=e.Xpm({type:t,selectors:[["cd-rgw-multisite-zonegroup-deletion-form"]],decls:14,vars:6,consts:function(){let n,_,o,i,s,l,r;return n="Delete Zone Group",_=" This will delete your " + "\ufffd#8\ufffd" + "" + "\ufffd0\ufffd" + "" + "\ufffd/#8\ufffd" + " Zone Group. ",o=" Do you want to delete the associated zones and pools with the " + "\ufffd#3\ufffd" + "" + "\ufffd0\ufffd" + "" + "\ufffd/#3\ufffd" + " Zone Group?",i=" This will delete the following:",s="Yes, I want to delete the zones and their pools.",l=" This will delete all the data in the pools! ",r="Yes, I want to delete the zones.",[[3,"modalRef"],[1,"modal-title"],n,[1,"modal-content"],["name","zonegroupForm","novalidate","",3,"formGroup"],[1,"modal-body","ms-4"],_,[4,"ngIf"],[1,"modal-footer"],[3,"form","submitText","submitActionEvent"],["noPoolsConfirmation",""],[1,"mt-3"],o,[1,"mt-3","mb-2","h5","block"],["id","scroll"],["class","block",4,"ngFor","ngForOf"],[1,"form-group"],[1,"custom-control","custom-checkbox","mt-2"],["type","checkbox","name","deletePools","id","deletePools","formControlName","deletePools",1,"custom-control-input",3,"change"],[4,"ngIf","ngIfElse"],["class","me-4",4,"ngIf"],i,[1,"block"],["id","scroll",1,"mb-2"],["for","deletePools",1,"custom-control-label"],s,[1,"me-4"],["type","danger"],l,r]},template:function(_,o){1&_&&(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,"div",5)(6,"label"),e.tHW(7,6),e._UZ(8,"strong"),e.N_p(),e.qZA(),e.YNc(9,bs,15,7,"ng-container",7),e.qZA(),e.TgZ(10,"div",8)(11,"cd-form-button-panel",9),e.NdJ("submitActionEvent",function(){return o.submit()}),e.qZA()()(),e.BQk(),e.qZA(),e.YNc(12,hs,2,0,"ng-template",null,10,e.W1O)),2&_&&(e.Q6J("modalRef",o.activeModal),e.xp6(4),e.Q6J("formGroup",o.zonegroupForm),e.xp6(4),e.pQV(null==o.zonegroup?null:o.zonegroup.name),e.QtT(7),e.xp6(1),e.Q6J("ngIf",o.zonesList.length>0),e.xp6(2),e.Q6J("form",o.zonegroupForm)("submitText",o.actionLabels.DELETE))},dependencies:[T.sg,T.O5,X.z,Re.G,B.p,k.o,q.b,z.P,H.V,a._Y,a.Wl,a.JJ,a.JL,a.sg,a.u],styles:[".block[_ngcontent-%COMP%]{display:block}#scroll[_ngcontent-%COMP%]{height:100%;max-height:10rem;overflow:auto}"]}),t})();const Ws=function(t,n,_){return[t,n,_]};function $s(t,n){if(1&t&&(e.TgZ(0,"span",10),e._UZ(1,"i",11),e.qZA()),2&t){const _=e.oxw();e.xp6(1),e.Q6J("ngClass",e.kEZ(1,Ws,_.icons.large3x,_.icons.spinner,_.icons.spin))}}function Zs(t,n){if(1&t&&(e.tHW(0,16,1),e.TgZ(1,"div"),e._UZ(2,"b"),e.qZA(),e.N_p()),2&t){const _=n.$implicit;e.xp6(2),e.pQV(_.realm)(_.token),e.QtT(0)}}function Ds(t,n){if(1&t&&(e.TgZ(0,"cd-alert-panel",15),e.tHW(1,16),e.YNc(2,Zs,3,2,"div",14),e.N_p(),e.qZA()),2&t){const _=e.oxw(2);e.xp6(2),e.Q6J("ngForOf",_.realms)}}function Us(t,n){1&t&&e._UZ(0,"hr")}function vs(t,n){if(1&t&&(e.TgZ(0,"div")(1,"div",17)(2,"label",18),e.SDv(3,19),e.qZA(),e.TgZ(4,"div",20),e._UZ(5,"input",21),e.qZA()(),e.TgZ(6,"div",17)(7,"label",22),e.SDv(8,23),e.qZA(),e.TgZ(9,"div",20),e._UZ(10,"input",24)(11,"cd-copy-2-clipboard-button",25),e.qZA(),e.YNc(12,Us,1,0,"hr",26),e.qZA()()),2&t){const _=n.$implicit,o=e.oxw(2);e.xp6(5),e.s9C("value",_.realm),e.xp6(5),e.s9C("value",_.token),e.xp6(1),e.s9C("source",_.token),e.Q6J("byId",!1),e.xp6(1),e.Q6J("ngIf",o.realms.length>1)}}function ys(t,n){if(1&t&&(e.TgZ(0,"div",12),e.YNc(1,Ds,3,1,"cd-alert-panel",13),e.YNc(2,vs,13,5,"div",14),e.qZA()),2&t){const _=e.oxw();e.xp6(1),e.Q6J("ngIf",!_.tokenValid),e.xp6(1),e.Q6J("ngForOf",_.realms)}}let ws=(()=>{class t{constructor(_,o,i,s,l){this.activeModal=_,this.rgwRealmService=o,this.actionLabels=i,this.notificationService=s,this.changeDetectorRef=l,this.tokenValid=!1,this.loading=!0,this.icons=$.P,this.createForm()}createForm(){this.exportTokenForm=new V.d({})}onSubmit(){this.activeModal.close()}ngOnInit(){this.rgwRealmService.getRealmTokens().subscribe(_=>{this.loading=!1,this.realms=_;var o=new RegExp("^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=|[A-Za-z0-9+/]{4})$");this.realms.forEach(i=>{this.tokenValid=!!o.test(i.token)})})}ngAfterViewChecked(){this.changeDetectorRef.detectChanges()}}return t.\u0275fac=function(_){return new(_||t)(e.Y36(G.Kz),e.Y36(de.y),e.Y36(I.p4),e.Y36(Y.g),e.Y36(e.sBO))},t.\u0275cmp=e.Xpm({type:t,selectors:[["cd-rgw-multisite-export"]],decls:10,vars:4,consts:function(){let n,_,o,i;return n="Export Multi-Site Realm Token",_="" + "\ufffd*2:1\ufffd\ufffd#1:1\ufffd" + "" + "\ufffd#2:1\ufffd" + "" + "\ufffd0:1\ufffd" + "" + "\ufffd/#2:1\ufffd" + " - " + "\ufffd1:1\ufffd" + " " + "\ufffd/#1:1\ufffd\ufffd/*2:1\ufffd" + "",o="Realm Name ",i="Token ",[[3,"modalRef"],[1,"modal-title"],n,[1,"modal-content"],["name","exportTokenForm",3,"formGroup"],["frm","ngForm"],["class","d-flex justify-content-center",4,"ngIf"],["class","modal-body",4,"ngIf"],[1,"modal-footer"],["aria-label","Close",1,"m-2","float-end",3,"backAction"],[1,"d-flex","justify-content-center"],[3,"ngClass"],[1,"modal-body"],["type","warning","class","mx-3",4,"ngIf"],[4,"ngFor","ngForOf"],["type","warning",1,"mx-3"],_,[1,"form-group","row"],["for","realmName",1,"cd-col-form-label"],o,[1,"cd-col-form-input"],["id","realmName","name","realmName","type","text","readonly","",3,"value"],["for","token",1,"cd-col-form-label"],i,["id","realmToken","name","realmToken","type","text","readonly","",1,"me-2","mb-4",3,"value"],[3,"source","byId"],[4,"ngIf"]]},template:function(_,o){1&_&&(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.YNc(6,$s,2,5,"span",6),e.YNc(7,ys,3,2,"div",7),e.TgZ(8,"div",8)(9,"cd-back-button",9),e.NdJ("backAction",function(){return o.activeModal.close()}),e.qZA()()(),e.BQk(),e.qZA()),2&_&&(e.Q6J("modalRef",o.activeModal),e.xp6(4),e.Q6J("formGroup",o.exportTokenForm),e.xp6(2),e.Q6J("ngIf",o.loading),e.xp6(1),e.Q6J("ngIf",!o.loading))},dependencies:[T.mk,T.sg,T.O5,M_.W,X.z,Re.G,pe.s,k.o,z.P,H.V,a._Y,a.JL,a.sg]}),t})();var xs=c(7022),ks=c(22120),zs=c(48168),qs=c(14745),A_=c(79765),Hs=c(66682),Xs=c(54395),Bs=c(87519),Qs=c(45435),Ys=c(88002),I_=c(60192);function Js(t,n){1&t&&(e.TgZ(0,"span",29),e.SDv(1,30),e.qZA())}function Ks(t,n){1&t&&(e.TgZ(0,"span",29),e.SDv(1,31),e.qZA())}function Vs(t,n){1&t&&(e.TgZ(0,"span",29),e.SDv(1,32),e.qZA())}function js(t,n){1&t&&(e.TgZ(0,"div",9)(1,"label",33),e.SDv(2,34),e.qZA(),e.TgZ(3,"div",12)(4,"select",35)(5,"option",36),e.SDv(6,37),e.qZA(),e.TgZ(7,"option",38),e.SDv(8,39),e.qZA()()()())}function ea(t,n){1&t&&(e.TgZ(0,"span",29),e.SDv(1,43),e.qZA())}function _a(t,n){if(1&t){const _=e.EpF();e.TgZ(0,"div",9)(1,"label",40),e.SDv(2,41),e.qZA(),e.TgZ(3,"div",12)(4,"input",42),e.NdJ("focus",function(i){e.CHM(_);const s=e.oxw();return e.KtG(s.labelFocus.next(i.target.value))})("click",function(i){e.CHM(_);const s=e.oxw();return e.KtG(s.labelClick.next(i.target.value))}),e.qZA(),e.YNc(5,ea,2,0,"span",14),e.qZA()()}if(2&t){const _=e.oxw(),o=e.MAs(5);e.xp6(4),e.Q6J("ngbTypeahead",_.searchLabels),e.xp6(1),e.Q6J("ngIf",_.importTokenForm.showError("label",o,"required"))}}function ta(t,n){if(1&t&&(e.TgZ(0,"div",9)(1,"label",44),e.SDv(2,45),e.qZA(),e.TgZ(3,"div",12),e._UZ(4,"cd-select-badges",46),e.qZA()()),2&t){const _=e.oxw();e.xp6(4),e.Q6J("data",_.importTokenForm.controls.hosts.value)("options",_.hosts.options)("messages",_.hosts.messages)}}function oa(t,n){1&t&&(e.TgZ(0,"span",29),e.SDv(1,51),e.qZA())}function na(t,n){1&t&&(e.TgZ(0,"span",29),e.SDv(1,52),e.qZA())}function ia(t,n){if(1&t&&(e.TgZ(0,"div",9)(1,"label",47)(2,"span"),e.SDv(3,48),e.qZA(),e.TgZ(4,"cd-helper"),e.SDv(5,49),e.qZA()(),e.TgZ(6,"div",12),e._UZ(7,"input",50),e.YNc(8,oa,2,0,"span",14),e.YNc(9,na,2,0,"span",14),e.qZA()()),2&t){const _=e.oxw(),o=e.MAs(5);e.xp6(8),e.Q6J("ngIf",_.importTokenForm.showError("count",o,"min")),e.xp6(1),e.Q6J("ngIf",_.importTokenForm.showError("count",o,"pattern"))}}function sa(t,n){1&t&&(e.TgZ(0,"span",29),e.SDv(1,56),e.qZA())}function aa(t,n){1&t&&(e.TgZ(0,"span",29),e.SDv(1,57),e.qZA())}function la(t,n){1&t&&(e.TgZ(0,"span",29),e.SDv(1,58),e.qZA())}function ra(t,n){if(1&t&&(e.ynx(0),e.TgZ(1,"div",9)(2,"label",53),e.SDv(3,54),e.qZA(),e.TgZ(4,"div",12),e._UZ(5,"input",55),e.YNc(6,sa,2,0,"span",14),e.YNc(7,aa,2,0,"span",14),e.YNc(8,la,2,0,"span",14),e.qZA()(),e.BQk()),2&t){const _=e.oxw(),o=e.MAs(5);e.xp6(6),e.Q6J("ngIf",_.importTokenForm.showError("rgw_frontend_port",o,"pattern")),e.xp6(1),e.Q6J("ngIf",_.importTokenForm.showError("rgw_frontend_port",o,"min")),e.xp6(1),e.Q6J("ngIf",_.importTokenForm.showError("rgw_frontend_port",o,"max"))}}let ca=(()=>{class t{constructor(_,o,i,s,l){this.activeModal=_,this.hostService=o,this.rgwRealmService=i,this.actionLabels=s,this.notificationService=l,this.endpoints=/^((https?:\/\/)|(www.))(?:([a-zA-Z]+)|(\d+\.\d+.\d+.\d+)):\d{2,4}$/,this.ipv4Rgx=/^((25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$/i,this.ipv6Rgx=/^(?:[a-f0-9]{1,4}:){7}[a-f0-9]{1,4}$/i,this.multisiteInfo=[],this.zoneList=[],this.labelClick=new A_.xQ,this.labelFocus=new A_.xQ,this.searchLabels=r=>(0,Hs.T)(r.pipe((0,Xs.b)(200),(0,Bs.x)()),this.labelFocus,this.labelClick.pipe((0,Qs.h)(()=>!this.typeahead.isPopupOpen()))).pipe((0,Ys.U)(d=>this.labels.filter(u=>u.toLowerCase().indexOf(d.toLowerCase())>-1).slice(0,10))),this.hosts={options:[],messages:new xs.a({empty:"There are no hosts.",filter:"Filter hosts"})},this.createForm()}ngOnInit(){this.zoneList=void 0!==this.multisiteInfo[2]&&this.multisiteInfo[2].hasOwnProperty("zones")?this.multisiteInfo[2].zones:[],this.zoneNames=this.zoneList.map(o=>o.name);const _=new zs.E(()=>{});this.hostService.list(_.toParams(),"false").subscribe(o=>{const i=[];E().forEach(o,s=>{if(E().get(s,"sources.orchestrator",!1)){const l=new qs.$(!1,E().get(s,"hostname"),"");i.push(l)}}),this.hosts.options=[...i]}),this.hostService.getLabels().subscribe(o=>{this.labels=o})}createForm(){this.importTokenForm=new V.d({realmToken:new a.NI("",{validators:[a.kI.required]}),zoneName:new a.NI(null,{validators:[a.kI.required,m.h.custom("uniqueName",_=>this.zoneNames&&-1!==this.zoneNames.indexOf(_))]}),rgw_frontend_port:new a.NI(null,{validators:[a.kI.required,a.kI.pattern("^[0-9]*$")]}),placement:new a.NI("hosts"),label:new a.NI(null,[m.h.requiredIf({placement:"label",unmanaged:!1})]),hosts:new a.NI([]),count:new a.NI(null,[m.h.number(!1)]),unmanaged:new a.NI(!1)})}onSubmit(){const _=this.importTokenForm.value,o={placement:{}};if(!_.unmanaged){switch(_.placement){case"hosts":_.hosts.length>0&&(o.placement.hosts=_.hosts);break;case"label":o.placement.label=_.label}E().isNumber(_.count)&&_.count>0&&(o.placement.count=_.count)}this.rgwRealmService.importRealmToken(_.realmToken,_.zoneName,_.rgw_frontend_port,o).subscribe(()=>{this.notificationService.show(w.k.success,"Realm token import successfull"),this.activeModal.close()},()=>{this.importTokenForm.setErrors({cdSubmitButton:!0})})}}return t.\u0275fac=function(_){return new(_||t)(e.Y36(G.Kz),e.Y36(ks.x),e.Y36(de.y),e.Y36(I.p4),e.Y36(Y.g))},t.\u0275cmp=e.Xpm({type:t,selectors:[["cd-rgw-multisite-import"]],viewQuery:function(_,o){if(1&_&&e.Gf(G.dR,5),2&_){let i;e.iGM(i=e.CRH())&&(o.typeahead=i.first)}},decls:47,vars:12,consts:function(){let n,_,o,i,s,l,r,d,u,R,O,F,b,h,M,L,S,W,C,Z,D,U,v,y;return n="Import Multi-Site Token",_="Zone Details",o="Token ",i="Secondary Zone Name",s="Service Details",l="Unmanaged",r="If set to true, the orchestrator will not start nor stop any daemon associated with this service. Placement and all other properties will be ignored.",d="This field is required.",u="This field is required.",R="The chosen zone name is already in use.",O="Placement",F="Hosts",b="Label",h="Label",M="This field is required.",L="Hosts",S="Count",W="Only that number of daemons will be created.",C="The value must be at least 1.",Z="The entered value needs to be a number.",D="Port",U="The entered value needs to be a number.",v="The value must be at least 1.",y="The value cannot exceed 65535.",[[3,"modalRef"],[1,"modal-title"],n,[1,"modal-content"],["name","importTokenForm",3,"formGroup"],["frm","ngForm"],[1,"modal-body"],["type","info","spacingClass","mb-3"],_,[1,"form-group","row"],["for","realmToken",1,"cd-col-form-label","required"],o,[1,"cd-col-form-input"],["id","realmToken","name","realmToken","type","text","formControlName","realmToken",1,"form-control"],["class","invalid-feedback",4,"ngIf"],["for","zoneName",1,"cd-col-form-label","required"],i,["type","text","placeholder","Zone name...","id","zoneName","name","zoneName","formControlName","zoneName",1,"form-control"],s,[1,"cd-col-form-offset"],[1,"custom-control","custom-checkbox"],["id","unmanaged","type","checkbox","formControlName","unmanaged",1,"custom-control-input"],["for","unmanaged",1,"custom-control-label"],l,r,["class","form-group row",4,"ngIf"],[4,"ngIf"],[1,"modal-footer"],[3,"submitText","form","submitActionEvent"],[1,"invalid-feedback"],d,u,R,["for","placement",1,"cd-col-form-label"],O,["id","placement","formControlName","placement",1,"form-select"],["value","hosts"],F,["value","label"],b,["for","label",1,"cd-col-form-label"],h,["id","label","type","text","formControlName","label",1,"form-control",3,"ngbTypeahead","focus","click"],M,["for","hosts",1,"cd-col-form-label"],L,["id","hosts",3,"data","options","messages"],["for","count",1,"cd-col-form-label"],S,W,["id","count","type","number","formControlName","count","min","1",1,"form-control"],C,Z,["for","rgw_frontend_port",1,"cd-col-form-label"],D,["id","rgw_frontend_port","type","number","formControlName","rgw_frontend_port","min","1","max","65535",1,"form-control"],U,v,y]},template:function(_,o){if(1&_&&(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)(6,"div",6)(7,"cd-alert-panel",7)(8,"ul")(9,"li"),e._uU(10,"This feature allows you to configure a connection between your primary and secondary Ceph clusters for data replication. By importing a token, you establish a link between the clusters, enabling data synchronization."),e.qZA(),e.TgZ(11,"li"),e._uU(12,"To obtain the token, generate it from your primary Ceph cluster. This token includes encoded information about the primary cluster's endpoint, access key, and secret key."),e.qZA(),e.TgZ(13,"li"),e._uU(14,"The secondary zone represents the destination cluster where your data will be replicated."),e.qZA()()(),e.TgZ(15,"legend"),e.SDv(16,8),e.qZA(),e.TgZ(17,"div",9)(18,"label",10),e.SDv(19,11),e.qZA(),e.TgZ(20,"div",12),e._UZ(21,"input",13),e.YNc(22,Js,2,0,"span",14),e.qZA()(),e.TgZ(23,"div",9)(24,"label",15),e.SDv(25,16),e.qZA(),e.TgZ(26,"div",12),e._UZ(27,"input",17),e.YNc(28,Ks,2,0,"span",14),e.YNc(29,Vs,2,0,"span",14),e.qZA()(),e.TgZ(30,"legend"),e.SDv(31,18),e.qZA(),e.TgZ(32,"div",9)(33,"div",19)(34,"div",20),e._UZ(35,"input",21),e.TgZ(36,"label",22),e.SDv(37,23),e.qZA(),e.TgZ(38,"cd-helper"),e.SDv(39,24),e.qZA()()()(),e.YNc(40,js,9,0,"div",25),e.YNc(41,_a,6,2,"div",25),e.YNc(42,ta,5,3,"div",25),e.YNc(43,ia,10,2,"div",25),e.YNc(44,ra,9,3,"ng-container",26),e.qZA(),e.TgZ(45,"div",27)(46,"cd-form-button-panel",28),e.NdJ("submitActionEvent",function(){return o.onSubmit()}),e.qZA()()(),e.BQk(),e.qZA()),2&_){const i=e.MAs(5);e.Q6J("modalRef",o.activeModal),e.xp6(4),e.Q6J("formGroup",o.importTokenForm),e.xp6(18),e.Q6J("ngIf",o.importTokenForm.showError("realmToken",i,"required")),e.xp6(6),e.Q6J("ngIf",o.importTokenForm.showError("zoneName",i,"required")),e.xp6(1),e.Q6J("ngIf",o.importTokenForm.showError("zoneName",i,"uniqueName")),e.xp6(11),e.Q6J("ngIf",!o.importTokenForm.controls.unmanaged.value),e.xp6(1),e.Q6J("ngIf",!o.importTokenForm.controls.unmanaged.value&&"label"===o.importTokenForm.controls.placement.value),e.xp6(1),e.Q6J("ngIf",!o.importTokenForm.controls.unmanaged.value&&"hosts"===o.importTokenForm.controls.placement.value),e.xp6(1),e.Q6J("ngIf",!o.importTokenForm.controls.unmanaged.value),e.xp6(1),e.Q6J("ngIf",!o.importTokenForm.controls.unmanaged.value),e.xp6(2),e.Q6J("submitText",o.actionLabels.IMPORT)("form",o.importTokenForm)}},dependencies:[T.O5,j.S,I_.m,X.z,Re.G,B.p,k.o,q.b,z.P,H.V,a._Y,a.YN,a.Kr,a.Fj,a.wV,a.Wl,a.EJ,a.JJ,a.JL,a.qQ,a.Fd,a.sg,a.u]}),t})();var da=c(72625);function ua(t,n){1&t&&(e.TgZ(0,"span",20),e.SDv(1,21),e.qZA())}function ga(t,n){1&t&&(e.TgZ(0,"span",20),e.SDv(1,22),e.qZA())}function Ra(t,n){1&t&&(e.TgZ(0,"cd-helper")(1,"span"),e.SDv(2,23),e.qZA()())}function Ta(t,n){if(1&t&&(e.TgZ(0,"cd-helper")(1,"span"),e.tHW(2,24),e._UZ(3,"a",25),e.N_p(),e.qZA()()),2&t){const _=e.oxw();e.xp6(3),e.s9C("href",_.docUrl,e.LSH)}}function Ea(t,n){1&t&&(e.TgZ(0,"cd-helper")(1,"span"),e.SDv(2,26),e.qZA()())}let fa=(()=>{class t{constructor(_,o,i,s,l){this.activeModal=_,this.actionLabels=o,this.rgwRealmService=i,this.notificationService=s,this.docService=l,this.editing=!1,this.multisiteInfo=[],this.realmList=[],this.zonegroupList=[],this.defaultRealmDisabled=!1,this.action=this.editing?this.actionLabels.EDIT+this.resource:this.actionLabels.CREATE+this.resource,this.createForm()}createForm(){this.multisiteRealmForm=new V.d({realmName:new a.p4(null,{validators:[a.kI.required,m.h.custom("uniqueName",_=>"create"===this.action&&this.realmNames&&-1!==this.realmNames.indexOf(_))]}),default_realm:new a.p4(!1)})}ngOnInit(){this.realmList=void 0!==this.multisiteInfo[0]&&this.multisiteInfo[0].hasOwnProperty("realms")?this.multisiteInfo[0].realms:[],this.realmNames=this.realmList.map(_=>_.name),"edit"===this.action&&(this.zonegroupList=void 0!==this.multisiteInfo[1]&&this.multisiteInfo[1].hasOwnProperty("zonegroups")?this.multisiteInfo[1].zonegroups:[],this.multisiteRealmForm.get("realmName").setValue(this.info.data.name),this.multisiteRealmForm.get("default_realm").setValue(this.info.data.is_default),this.info.data.is_default&&this.multisiteRealmForm.get("default_realm").disable()),this.zonegroupList.forEach(_=>{!0===_.is_master&&_.realm_id===this.info.data.id&&(this.isMaster=!0)}),this.defaultsInfo&&null!==this.defaultsInfo.defaultRealmName&&(this.multisiteRealmForm.get("default_realm").disable(),this.defaultRealmDisabled=!0),this.docUrl=this.docService.urlGenerator("rgw-multisite")}submit(){const _=this.multisiteRealmForm.getRawValue();this.realm=new x.L6,"create"===this.action?(this.realm.name=_.realmName,this.rgwRealmService.create(this.realm,_.default_realm).subscribe(()=>{this.notificationService.show(w.k.success,"Realm: '" + _.realmName + "' created successfully"),this.activeModal.close()},()=>{this.multisiteRealmForm.setErrors({cdSubmitButton:!0})})):"edit"===this.action&&(this.realm.name=this.info.data.name,this.newRealmName=_.realmName,this.rgwRealmService.update(this.realm,_.default_realm,this.newRealmName).subscribe(()=>{this.notificationService.show(w.k.success,"Realm: '" + _.realmName + "' updated successfully"),this.activeModal.close()},()=>{this.multisiteRealmForm.setErrors({cdSubmitButton:!0})}))}}return t.\u0275fac=function(_){return new(_||t)(e.Y36(G.Kz),e.Y36(I.p4),e.Y36(de.y),e.Y36(Y.g),e.Y36(da.R))},t.\u0275cmp=e.Xpm({type:t,selectors:[["cd-rgw-multisite-realm-form"]],decls:27,vars:20,consts:function(){let n,_,o,i,s,l,r,d;return n="" + "\ufffd0\ufffd" + " " + "\ufffd1\ufffd" + "",_="Realm Name",o="Default",i="This field is required.",s="The chosen realm name is already in use.",l="You cannot unset the default flag.",r="Please consult the " + "\ufffd#3\ufffd" + "documentation" + "\ufffd/#3\ufffd" + " to follow the failover mechanism",d="Default realm already exists.",[[3,"modalRef"],[1,"modal-title"],n,[1,"modal-content"],["name","multisiteRealmForm","novalidate","",3,"formGroup"],["formDir","ngForm"],[1,"modal-body"],[1,"form-group","row"],["for","realmName",1,"cd-col-form-label","required"],_,[1,"cd-col-form-input"],["type","text","placeholder","Realm name...","id","realmName","name","realmName","formControlName","realmName",1,"form-control"],["class","invalid-feedback",4,"ngIf"],[1,"custom-control","custom-checkbox"],["id","default_realm","name","default_realm","formControlName","default_realm","type","checkbox",1,"form-check-input"],["for","default_realm",1,"form-check-label"],o,[4,"ngIf"],[1,"modal-footer"],[3,"form","submitText","submitActionEvent"],[1,"invalid-feedback"],i,s,l,r,[3,"href"],d]},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)(8,"div",6)(9,"div",7)(10,"label",8),e.SDv(11,9),e.qZA(),e.TgZ(12,"div",10),e._UZ(13,"input",11),e.YNc(14,ua,2,0,"span",12),e.YNc(15,ga,2,0,"span",12),e.TgZ(16,"div",13),e._UZ(17,"input",14),e.TgZ(18,"label",15),e.SDv(19,16),e.qZA(),e.YNc(20,Ra,3,0,"cd-helper",17),e.YNc(21,Ta,4,1,"cd-helper",17),e.YNc(22,Ea,3,0,"cd-helper",17),e.qZA()()()(),e.TgZ(23,"div",18)(24,"cd-form-button-panel",19),e.NdJ("submitActionEvent",function(){return o.submit()}),e.ALo(25,"titlecase"),e.ALo(26,"upperFirst"),e.qZA()()(),e.BQk(),e.qZA()),2&_){const i=e.MAs(7);e.Q6J("modalRef",o.activeModal),e.xp6(4),e.pQV(e.lcZ(3,12,o.action))(e.lcZ(4,14,o.resource)),e.QtT(2),e.xp6(2),e.Q6J("formGroup",o.multisiteRealmForm),e.xp6(8),e.Q6J("ngIf",o.multisiteRealmForm.showError("realmName",i,"required")),e.xp6(1),e.Q6J("ngIf",o.multisiteRealmForm.showError("realmName",i,"uniqueName")),e.xp6(2),e.uIk("disabled","edit"===o.action||null),e.xp6(3),e.Q6J("ngIf","edit"===o.action&&o.info.data.is_default),e.xp6(1),e.Q6J("ngIf","edit"===o.action&&!o.info.data.is_default),e.xp6(1),e.Q6J("ngIf",o.defaultRealmDisabled&&"create"===o.action),e.xp6(2),e.Q6J("form",o.multisiteRealmForm)("submitText",e.lcZ(25,16,o.action)+" "+e.lcZ(26,18,o.resource))}},dependencies:[T.O5,j.S,X.z,B.p,k.o,q.b,z.P,H.V,a._Y,a.Fj,a.Wl,a.JJ,a.JL,a.sg,a.u,T.rS,_e.m]}),t})();function pa(t,n){if(1&t&&(e.TgZ(0,"option",36),e._uU(1),e.qZA()),2&t){const _=n.$implicit,o=e.oxw();e.Q6J("value",_.name)("selected",_.name===o.multisiteZoneForm.getValue("selectedZonegroup")),e.xp6(1),e.hij(" ",_.name," ")}}function ma(t,n){1&t&&(e.TgZ(0,"span",37),e.SDv(1,38),e.qZA())}function Ma(t,n){1&t&&(e.TgZ(0,"span",37),e.SDv(1,39),e.qZA())}function Sa(t,n){1&t&&(e.TgZ(0,"span")(1,"cd-helper"),e.SDv(2,40),e.qZA()())}function Ca(t,n){1&t&&(e.TgZ(0,"span")(1,"cd-helper"),e.SDv(2,41),e.qZA()())}function Oa(t,n){if(1&t&&(e.TgZ(0,"cd-helper")(1,"span"),e.tHW(2,42),e._UZ(3,"a",43),e.N_p(),e.qZA()()),2&t){const _=e.oxw();e.xp6(3),e.s9C("href",_.docUrl,e.LSH)}}function Fa(t,n){1&t&&(e.TgZ(0,"span")(1,"cd-helper"),e.SDv(2,44),e.qZA()())}function Pa(t,n){1&t&&(e.TgZ(0,"span")(1,"cd-helper"),e.SDv(2,45),e.qZA()())}function Na(t,n){if(1&t&&(e.TgZ(0,"cd-helper")(1,"span"),e.tHW(2,46),e._UZ(3,"a",43),e.N_p(),e.qZA()()),2&t){const _=e.oxw();e.xp6(3),e.s9C("href",_.docUrl,e.LSH)}}function Ga(t,n){1&t&&(e.TgZ(0,"span",37),e.SDv(1,47),e.qZA())}function Aa(t,n){1&t&&(e.TgZ(0,"span",37),e.SDv(1,48),e.qZA())}function Ia(t,n){if(1&t&&(e.TgZ(0,"option",36),e._uU(1),e.qZA()),2&t){const _=n.$implicit,o=e.oxw(3);e.Q6J("value",_.name)("selected",_.name===o.multisiteZoneForm.getValue("placementTarget")),e.xp6(1),e.hij(" ",_.name," ")}}function ba(t,n){if(1&t&&(e.TgZ(0,"option",36),e._uU(1),e.qZA()),2&t){const _=n.$implicit,o=e.oxw(3);e.Q6J("value",_.poolname)("selected",_.poolname===o.multisiteZoneForm.getValue("placementDataPool")),e.xp6(1),e.hij(" ",_.poolname," ")}}function ha(t,n){if(1&t&&(e.TgZ(0,"option",36),e._uU(1),e.qZA()),2&t){const _=n.$implicit,o=e.oxw(3);e.Q6J("value",_.poolname)("selected",_.poolname===o.multisiteZoneForm.getValue("placementIndexPool")),e.xp6(1),e.hij(" ",_.poolname," ")}}function La(t,n){if(1&t&&(e.TgZ(0,"option",36),e._uU(1),e.qZA()),2&t){const _=n.$implicit,o=e.oxw(3);e.Q6J("value",_.poolname)("selected",_.poolname===o.multisiteZoneForm.getValue("placementDataExtraPool")),e.xp6(1),e.hij(" ",_.poolname," ")}}function Wa(t,n){if(1&t&&(e.TgZ(0,"option",71),e._uU(1),e.qZA()),2&t){const _=n.$implicit;e.Q6J("value",_.value),e.xp6(1),e.hij(" ",_.value," ")}}function $a(t,n){if(1&t&&(e.TgZ(0,"option",36),e._uU(1),e.qZA()),2&t){const _=n.$implicit,o=e.oxw(3);e.Q6J("value",_.poolname)("selected",_.poolname===o.multisiteZoneForm.getValue("storageDataPool")),e.xp6(1),e.hij(" ",_.poolname," ")}}function Za(t,n){if(1&t&&(e.TgZ(0,"option",71),e._uU(1),e.qZA()),2&t){const _=n.$implicit;e.Q6J("value",_),e.xp6(1),e.hij(" ",_," ")}}function Da(t,n){if(1&t){const _=e.EpF();e.TgZ(0,"div")(1,"legend"),e._uU(2,"Placement Targets"),e.qZA(),e.TgZ(3,"div",7)(4,"label",49),e.SDv(5,50),e.qZA(),e.TgZ(6,"div",10)(7,"select",51),e.NdJ("change",function(i){e.CHM(_);const s=e.oxw(2);return e.KtG(s.getZonePlacementData(i.target.value))}),e.YNc(8,Ia,2,3,"option",12),e.qZA()()(),e.TgZ(9,"div",7)(10,"label",52),e.SDv(11,53),e.qZA(),e.TgZ(12,"div",10)(13,"select",54),e.YNc(14,ba,2,3,"option",12),e.qZA()()(),e.TgZ(15,"div",7)(16,"label",55),e.SDv(17,56),e.qZA(),e.TgZ(18,"div",10)(19,"select",57),e.YNc(20,ha,2,3,"option",12),e.qZA()()(),e.TgZ(21,"div",7)(22,"label",58),e.SDv(23,59),e.qZA(),e.TgZ(24,"div",10)(25,"select",60),e.YNc(26,La,2,3,"option",12),e.qZA()()(),e.TgZ(27,"div")(28,"legend"),e._uU(29,"Storage Classes"),e.qZA(),e.TgZ(30,"div",7)(31,"label",61),e.SDv(32,62),e.qZA(),e.TgZ(33,"div",10)(34,"select",63),e.NdJ("change",function(i){e.CHM(_);const s=e.oxw(2);return e.KtG(s.getStorageClassData(i.target.value))}),e.YNc(35,Wa,2,2,"option",64),e.qZA()()(),e.TgZ(36,"div",7)(37,"label",65),e.SDv(38,66),e.qZA(),e.TgZ(39,"div",10)(40,"select",67),e.YNc(41,$a,2,3,"option",12),e.qZA()()(),e.TgZ(42,"div",7)(43,"label",68),e.SDv(44,69),e.qZA(),e.TgZ(45,"div",10)(46,"select",70),e.YNc(47,Za,2,2,"option",64),e.qZA()()()()()}if(2&t){const _=e.oxw(2);e.xp6(8),e.Q6J("ngForOf",_.placementTargets),e.xp6(5),e.Q6J("value",_.placementDataPool),e.xp6(1),e.Q6J("ngForOf",_.poolList),e.xp6(6),e.Q6J("ngForOf",_.poolList),e.xp6(6),e.Q6J("ngForOf",_.poolList),e.xp6(9),e.Q6J("ngForOf",_.storageClassList),e.xp6(6),e.Q6J("ngForOf",_.poolList),e.xp6(6),e.Q6J("ngForOf",_.compressionTypes)}}function Ua(t,n){if(1&t&&(e.TgZ(0,"div",7),e.YNc(1,Da,48,8,"div",21),e.qZA()),2&t){const _=e.oxw();e.xp6(1),e.Q6J("ngIf","edit"===_.action)}}let va=(()=>{class t{constructor(_,o,i,s,l,r,d,u){this.activeModal=_,this.actionLabels=o,this.rgwMultisiteService=i,this.rgwZoneService=s,this.rgwZoneGroupService=l,this.notificationService=r,this.rgwUserService=d,this.modalService=u,this.endpoints=/^((https?:\/\/)|(www.))(?:([a-zA-Z]+)|(\d+\.\d+.\d+.\d+)):\d{2,4}$/,this.ipv4Rgx=/^((25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$/i,this.ipv6Rgx=/^(?:[a-f0-9]{1,4}:){7}[a-f0-9]{1,4}$/i,this.editing=!1,this.defaultsInfo=[],this.multisiteInfo=[],this.zonegroupList=[],this.zoneList=[],this.poolList=[],this.storageClassList=[],this.disableDefault=!1,this.disableMaster=!1,this.isMetadataSync=!1,this.syncStatusTimedOut=!1,this.createSystemUser=!1,this.compressionTypes=["lz4","zlib","snappy"],this.userListReady=!1,this.action=this.editing?this.actionLabels.EDIT+this.resource:this.actionLabels.CREATE+this.resource,this.createForm()}createForm(){this.multisiteZoneForm=new V.d({zoneName:new a.p4(null,{validators:[a.kI.required,m.h.custom("uniqueName",_=>"create"===this.action&&this.zoneNames&&-1!==this.zoneNames.indexOf(_))]}),default_zone:new a.p4(!1),master_zone:new a.p4(!1),selectedZonegroup:new a.p4(null),zone_endpoints:new a.p4(null,{validators:[m.h.custom("endpoint",_=>!(E().isEmpty(_)||(_.includes(",")?(_.split(",").forEach(o=>!this.endpoints.test(o)&&!this.ipv4Rgx.test(o)&&!this.ipv6Rgx.test(o)),1):this.endpoints.test(_)||this.ipv4Rgx.test(_)||this.ipv6Rgx.test(_)))),a.kI.required]}),access_key:new a.p4(null,a.kI.required),secret_key:new a.p4(null,a.kI.required),placementTarget:new a.p4(null),placementDataPool:new a.p4(""),placementIndexPool:new a.p4(null),placementDataExtraPool:new a.p4(null),storageClass:new a.p4(null),storageDataPool:new a.p4(null),storageCompression:new a.p4(null)})}onZoneGroupChange(_){let o=new x.iG;o.name=_,this.rgwZoneGroupService.get(o).subscribe(i=>{E().isEmpty(i.master_zone)?(this.multisiteZoneForm.get("master_zone").setValue(!0),this.multisiteZoneForm.get("master_zone").disable(),this.disableMaster=!1):!E().isEmpty(i.master_zone)&&"create"===this.action&&(this.multisiteZoneForm.get("master_zone").setValue(!1),this.multisiteZoneForm.get("master_zone").disable(),this.disableMaster=!0)}),this.multisiteZoneForm.getValue("selectedZonegroup")!==this.defaultsInfo.defaultZonegroupName&&(this.disableDefault=!0,this.multisiteZoneForm.get("default_zone").disable())}ngOnInit(){this.zonegroupList=void 0!==this.multisiteInfo[1]&&this.multisiteInfo[1].hasOwnProperty("zonegroups")?this.multisiteInfo[1].zonegroups:[],this.zoneList=void 0!==this.multisiteInfo[2]&&this.multisiteInfo[2].hasOwnProperty("zones")?this.multisiteInfo[2].zones:[],this.zoneNames=this.zoneList.map(_=>_.name),"create"===this.action&&void 0!==this.defaultsInfo.defaultZonegroupName&&(this.multisiteZoneForm.get("selectedZonegroup").setValue(this.defaultsInfo.defaultZonegroupName),this.onZoneGroupChange(this.defaultsInfo.defaultZonegroupName)),"edit"===this.action&&(this.placementTargets=this.info.parent?this.info.parent.data.placement_targets:[],this.rgwZoneService.getPoolNames().subscribe(o=>{this.poolList=o}),this.multisiteZoneForm.get("zoneName").setValue(this.info.data.name),this.multisiteZoneForm.get("selectedZonegroup").setValue(this.info.data.parent),this.multisiteZoneForm.get("default_zone").setValue(this.info.data.is_default),this.multisiteZoneForm.get("master_zone").setValue(this.info.data.is_master),this.multisiteZoneForm.get("zone_endpoints").setValue(this.info.data.endpoints.toString()),this.multisiteZoneForm.get("access_key").setValue(this.info.data.access_key),this.multisiteZoneForm.get("secret_key").setValue(this.info.data.secret_key),this.multisiteZoneForm.get("placementTarget").setValue(this.info.parent.data.default_placement),this.getZonePlacementData(this.multisiteZoneForm.getValue("placementTarget")),this.info.data.is_default&&(this.isDefaultZone=!0,this.multisiteZoneForm.get("default_zone").disable()),this.info.data.is_master&&(this.isMasterZone=!0,this.multisiteZoneForm.get("master_zone").disable()),(new x.jb).name=this.info.data.name,this.onZoneGroupChange(this.info.data.parent)),this.multisiteZoneForm.getValue("selectedZonegroup")!==this.defaultsInfo.defaultZonegroupName&&(this.disableDefault=!0,this.multisiteZoneForm.get("default_zone").disable())}getZonePlacementData(_){this.zone=new x.jb,this.zone.name=this.info.data.name,this.placementTargets&&this.placementTargets.forEach(o=>{o.name===_&&(this.storageClassList=Object.entries(o.storage_classes).map(([s,l])=>({key:s,value:l})))}),this.rgwZoneService.get(this.zone).subscribe(o=>{this.zoneInfo=o,this.zoneInfo&&this.zoneInfo.placement_pools&&this.zoneInfo.placement_pools.forEach(i=>{if(i.key===_){let s=i.val.storage_classes,l=s.STANDARD?s.STANDARD.data_pool:"",r=i.val.index_pool,d=i.val.data_extra_pool;this.poolList.push({poolname:l}),this.poolList.push({poolname:r}),this.poolList.push({poolname:d}),this.multisiteZoneForm.get("storageClass").setValue(this.storageClassList[0].value),this.multisiteZoneForm.get("storageDataPool").setValue(l),this.multisiteZoneForm.get("storageCompression").setValue(this.compressionTypes[0]),this.multisiteZoneForm.get("placementDataPool").setValue(l),this.multisiteZoneForm.get("placementIndexPool").setValue(r),this.multisiteZoneForm.get("placementDataExtraPool").setValue(d)}})})}getStorageClassData(_){let o=this.storageClassList.find(i=>i.value==_).value;this.poolList.push({poolname:o.data_pool}),this.multisiteZoneForm.get("storageDataPool").setValue(o.data_pool),this.multisiteZoneForm.get("storageCompression").setValue(o.compression_type)}submit(){const _=this.multisiteZoneForm.getRawValue();"create"===this.action?(this.zonegroup=new x.iG,this.zonegroup.name=_.selectedZonegroup,this.zone=new x.jb,this.zone.name=_.zoneName,this.zone.endpoints=_.zone_endpoints,this.zone.system_key=new x.VY,this.zone.system_key.access_key=_.access_key,this.zone.system_key.secret_key=_.secret_key,this.rgwZoneService.create(this.zone,this.zonegroup,_.default_zone,_.master_zone,this.zone.endpoints).subscribe(()=>{this.notificationService.show(w.k.success,"Zone: '" + _.zoneName + "' created successfully"),this.activeModal.close()},()=>{this.multisiteZoneForm.setErrors({cdSubmitButton:!0})})):"edit"===this.action&&(this.zonegroup=new x.iG,this.zonegroup.name=_.selectedZonegroup,this.zone=new x.jb,this.zone.name=this.info.data.name,this.zone.endpoints=_.zone_endpoints,this.zone.system_key=new x.VY,this.zone.system_key.access_key=_.access_key,this.zone.system_key.secret_key=_.secret_key,this.rgwZoneService.update(this.zone,this.zonegroup,_.zoneName,_.default_zone,_.master_zone,this.zone.endpoints,_.placementTarget,_.placementDataPool,_.placementIndexPool,_.placementDataExtraPool,_.storageClass,_.storageDataPool,_.storageCompression).subscribe(()=>{this.notificationService.show(w.k.success,"Zone: '" + _.zoneName + "' updated successfully"),this.activeModal.close()},()=>{this.multisiteZoneForm.setErrors({cdSubmitButton:!0})}))}}return t.\u0275fac=function(_){return new(_||t)(e.Y36(G.Kz),e.Y36(I.p4),e.Y36(e_.o),e.Y36(ue.g),e.Y36(ge.K),e.Y36(Y.g),e.Y36(Q),e.Y36(ee.Z))},t.\u0275cmp=e.Xpm({type:t,selectors:[["cd-rgw-multisite-zone-form"]],decls:71,vars:29,consts:function(){let n,_,o,i,s,l,r,d,u,R,O,F,b,h,M,L,S,W,C,Z,D,U,v,y,f;return n="" + "\ufffd0\ufffd" + " " + "\ufffd1\ufffd" + "",_="Select Zone Group",o="Zone Name",i="Default",s="Master",l="Endpoints",r="S3 access key " + "\ufffd#47\ufffd" + "" + "\ufffd#48\ufffd" + "To see or copy your S3 access key, go to " + "[\ufffd#49\ufffd|\ufffd#50\ufffd|\ufffd#51\ufffd|\ufffd#52\ufffd]" + "Object Gateway > Users" + "[\ufffd/#49\ufffd|\ufffd/#50\ufffd|\ufffd/#51\ufffd|\ufffd/#52\ufffd]" + " and click on your user name. In " + "[\ufffd#49\ufffd|\ufffd#50\ufffd|\ufffd#51\ufffd|\ufffd#52\ufffd]" + "Keys" + "[\ufffd/#49\ufffd|\ufffd/#50\ufffd|\ufffd/#51\ufffd|\ufffd/#52\ufffd]" + ", click " + "[\ufffd#49\ufffd|\ufffd#50\ufffd|\ufffd#51\ufffd|\ufffd#52\ufffd]" + "Show" + "[\ufffd/#49\ufffd|\ufffd/#50\ufffd|\ufffd/#51\ufffd|\ufffd/#52\ufffd]" + ". View the access key by clicking Show and copy the key by clicking " + "[\ufffd#49\ufffd|\ufffd#50\ufffd|\ufffd#51\ufffd|\ufffd#52\ufffd]" + "Copy to Clipboard" + "[\ufffd/#49\ufffd|\ufffd/#50\ufffd|\ufffd/#51\ufffd|\ufffd/#52\ufffd]" + "." + "\ufffd/#48\ufffd" + "" + "\ufffd/#47\ufffd" + "",r=e.Zx4(r),d="S3 secret key " + "\ufffd#58\ufffd" + "" + "\ufffd#59\ufffd" + "To see or copy your S3 access key, go to " + "[\ufffd#60\ufffd|\ufffd#61\ufffd|\ufffd#62\ufffd|\ufffd#63\ufffd]" + "Object Gateway > Users" + "[\ufffd/#60\ufffd|\ufffd/#61\ufffd|\ufffd/#62\ufffd|\ufffd/#63\ufffd]" + " and click on your user name. In " + "[\ufffd#60\ufffd|\ufffd#61\ufffd|\ufffd#62\ufffd|\ufffd#63\ufffd]" + "Keys" + "[\ufffd/#60\ufffd|\ufffd/#61\ufffd|\ufffd/#62\ufffd|\ufffd/#63\ufffd]" + ", click " + "[\ufffd#60\ufffd|\ufffd#61\ufffd|\ufffd#62\ufffd|\ufffd#63\ufffd]" + "Show" + "[\ufffd/#60\ufffd|\ufffd/#61\ufffd|\ufffd/#62\ufffd|\ufffd/#63\ufffd]" + ". View the secret key by clicking Show and copy the key by clicking " + "[\ufffd#60\ufffd|\ufffd#61\ufffd|\ufffd#62\ufffd|\ufffd#63\ufffd]" + "Copy to Clipboard" + "[\ufffd/#60\ufffd|\ufffd/#61\ufffd|\ufffd/#62\ufffd|\ufffd/#63\ufffd]" + "." + "\ufffd/#59\ufffd" + "" + "\ufffd/#58\ufffd" + "",d=e.Zx4(d),u="This field is required.",R="The chosen zone name is already in use.",O="Default zone can only exist in a default zone group. ",F="You cannot unset the default flag. ",b="Please consult the " + "\ufffd#3\ufffd" + "documentation" + "\ufffd/#3\ufffd" + " to follow the failover mechanism",h="Master zone already exists for the selected zone group. ",M="You cannot unset the master flag. ",L="Please consult the " + "\ufffd#3\ufffd" + "documentation" + "\ufffd/#3\ufffd" + " to follow the failover mechanism",S="This field is required.",W="Please enter a valid IP address.",C="Placement target",Z="Data pool",D="Index pool",U="Data extra pool",v="Storage Class",y="Data pool",f="Compression",[[3,"modalRef"],[1,"modal-title"],n,[1,"modal-content"],["name","multisiteZoneForm","novalidate","",3,"formGroup"],["formDir","ngForm"],[1,"modal-body"],[1,"form-group","row"],["for","selectedZonegroup",1,"cd-col-form-label"],_,[1,"cd-col-form-input"],["id","selectedZonegroup","formControlName","selectedZonegroup","name","selectedZonegroup",1,"form-select",3,"change"],[3,"value","selected",4,"ngFor","ngForOf"],["for","zonegroupName",1,"cd-col-form-label","required"],o,["type","text","placeholder","Zone name...","id","zoneName","name","zoneName","formControlName","zoneName",1,"form-control"],["class","invalid-feedback",4,"ngIf"],[1,"custom-control","custom-checkbox"],["id","default_zone","name","default_zone","formControlName","default_zone","type","checkbox",1,"form-check-input"],["for","default_zone",1,"form-check-label"],i,[4,"ngIf"],["id","master_zone","name","master_zone","formControlName","master_zone","type","checkbox",1,"form-check-input"],["for","master_zone",1,"form-check-label"],s,["for","zone_endpoints",1,"cd-col-form-label","required"],l,["type","text","placeholder","e.g, http://ceph-node-00.com:80","id","zone_endpoints","name","zone_endpoints","formControlName","zone_endpoints",1,"form-control"],["for","access_key",1,"cd-col-form-label","required"],r,["type","text","placeholder","DiPt4V7WWvy2njL1z6aC","id","access_key","name","access_key","formControlName","access_key",1,"form-control"],d,["type","text","placeholder","xSZUdYky0bTctAdCEEW8ikhfBVKsBV5LFYL82vvh","id","secret_key","name","secret_key","formControlName","secret_key",1,"form-control"],["class","form-group row",4,"ngIf"],[1,"modal-footer"],[3,"form","submitText","submitActionEvent"],[3,"value","selected"],[1,"invalid-feedback"],u,R,O,F,b,[3,"href"],h,M,L,S,W,["for","placementTarget",1,"cd-col-form-label"],C,["id","placementTarget","formControlName","placementTarget","name","placementTarget",1,"form-select",3,"change"],["for","placementDataPool",1,"cd-col-form-label"],Z,["id","placementDataPool","formControlName","placementDataPool","name","placementDataPool",1,"form-select",3,"value"],["for","placementIndexPool",1,"cd-col-form-label"],D,["id","placementIndexPool","formControlName","placementIndexPool","name","placementIndexPool",1,"form-select"],["for","placementDataExtraPool",1,"cd-col-form-label"],U,["id","placementDataExtraPool","formControlName","placementDataExtraPool","name","placementDataExtraPool",1,"form-select"],["for","storageClass",1,"cd-col-form-label"],v,["id","storageClass","formControlName","storageClass","name","storageClass",1,"form-select",3,"change"],[3,"value",4,"ngFor","ngForOf"],["for","storageDataPool",1,"cd-col-form-label"],y,["id","storageDataPool","formControlName","storageDataPool","name","storageDataPool",1,"form-select"],["for","storageCompression",1,"cd-col-form-label"],f,["id","storageCompression","formControlName","storageCompression","name","storageCompression",1,"form-select"],[3,"value"]]},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)(8,"div",6)(9,"div",7)(10,"label",8),e.SDv(11,9),e.qZA(),e.TgZ(12,"div",10)(13,"select",11),e.NdJ("change",function(s){return o.onZoneGroupChange(s.target.value)}),e.YNc(14,pa,2,3,"option",12),e.qZA()()(),e.TgZ(15,"div",7)(16,"label",13),e.SDv(17,14),e.qZA(),e.TgZ(18,"div",10),e._UZ(19,"input",15),e.YNc(20,ma,2,0,"span",16),e.YNc(21,Ma,2,0,"span",16),e.TgZ(22,"div",17),e._UZ(23,"input",18),e.TgZ(24,"label",19),e.SDv(25,20),e.qZA(),e.YNc(26,Sa,3,0,"span",21),e.YNc(27,Ca,3,0,"span",21),e.YNc(28,Oa,4,1,"cd-helper",21),e._UZ(29,"br"),e.qZA(),e.TgZ(30,"div",17),e._UZ(31,"input",22),e.TgZ(32,"label",23),e.SDv(33,24),e.qZA(),e.YNc(34,Fa,3,0,"span",21),e.YNc(35,Pa,3,0,"span",21),e.YNc(36,Na,4,1,"cd-helper",21),e.qZA()()(),e.TgZ(37,"div",7)(38,"label",25),e.SDv(39,26),e.qZA(),e.TgZ(40,"div",10),e._UZ(41,"input",27),e.YNc(42,Ga,2,0,"span",16),e.YNc(43,Aa,2,0,"span",16),e.qZA()(),e.TgZ(44,"div",7)(45,"label",28),e.tHW(46,29),e.TgZ(47,"cd-helper")(48,"span"),e._UZ(49,"b")(50,"b")(51,"b")(52,"b"),e.qZA()(),e.N_p(),e.qZA(),e.TgZ(53,"div",10),e._UZ(54,"input",30),e.qZA()(),e.TgZ(55,"div",7)(56,"label",28),e.tHW(57,31),e.TgZ(58,"cd-helper")(59,"span"),e._UZ(60,"b")(61,"b")(62,"b")(63,"b"),e.qZA()(),e.N_p(),e.qZA(),e.TgZ(64,"div",10),e._UZ(65,"input",32),e.qZA()(),e.YNc(66,Ua,2,1,"div",33),e.qZA(),e.TgZ(67,"div",34)(68,"cd-form-button-panel",35),e.NdJ("submitActionEvent",function(){return o.submit()}),e.ALo(69,"titlecase"),e.ALo(70,"upperFirst"),e.qZA()()(),e.BQk(),e.qZA()),2&_){const i=e.MAs(7);e.Q6J("modalRef",o.activeModal),e.xp6(4),e.pQV(e.lcZ(3,21,o.action))(e.lcZ(4,23,o.resource)),e.QtT(2),e.xp6(2),e.Q6J("formGroup",o.multisiteZoneForm),e.xp6(7),e.uIk("disabled","edit"===o.action||null),e.xp6(1),e.Q6J("ngForOf",o.zonegroupList),e.xp6(6),e.Q6J("ngIf",o.multisiteZoneForm.showError("zoneName",i,"required")),e.xp6(1),e.Q6J("ngIf",o.multisiteZoneForm.showError("zoneName",i,"uniqueName")),e.xp6(2),e.uIk("disabled","edit"===o.action||null),e.xp6(3),e.Q6J("ngIf",o.disableDefault&&"create"===o.action),e.xp6(1),e.Q6J("ngIf",o.isDefaultZone),e.xp6(1),e.Q6J("ngIf","edit"===o.action&&!o.isDefaultZone),e.xp6(3),e.uIk("disabled","edit"===o.action||null),e.xp6(3),e.Q6J("ngIf",o.disableMaster),e.xp6(1),e.Q6J("ngIf",o.isMasterZone),e.xp6(1),e.Q6J("ngIf","edit"===o.action&&!o.isMasterZone),e.xp6(6),e.Q6J("ngIf",o.multisiteZoneForm.showError("zone_endpoints",i,"required")),e.xp6(1),e.Q6J("ngIf",o.multisiteZoneForm.showError("zone_endpoints",i,"endpoint")),e.xp6(23),e.Q6J("ngIf","edit"===o.action),e.xp6(2),e.Q6J("form",o.multisiteZoneForm)("submitText",e.lcZ(69,25,o.action)+" "+e.lcZ(70,27,o.resource))}},dependencies:[T.sg,T.O5,j.S,X.z,B.p,k.o,q.b,z.P,H.V,a._Y,a.YN,a.Kr,a.Fj,a.Wl,a.EJ,a.JJ,a.JL,a.sg,a.u,T.rS,_e.m]}),t})();var ya=c(36569);function wa(t,n){if(1&t&&(e.TgZ(0,"option",33),e._uU(1),e.qZA()),2&t){const _=n.$implicit,o=e.oxw();e.Q6J("value",_.name)("selected",_.name===o.multisiteZonegroupForm.getValue("selectedRealm")),e.xp6(1),e.hij(" ",_.name," ")}}function xa(t,n){1&t&&(e.TgZ(0,"span",34),e.SDv(1,35),e.qZA())}function ka(t,n){1&t&&(e.TgZ(0,"span",34),e.SDv(1,36),e.qZA())}function za(t,n){1&t&&(e.TgZ(0,"span")(1,"cd-helper"),e.SDv(2,37),e.qZA()())}function qa(t,n){if(1&t&&(e.TgZ(0,"cd-helper")(1,"span"),e.tHW(2,38),e._UZ(3,"a",39),e.N_p(),e.qZA()()),2&t){const _=e.oxw();e.xp6(3),e.s9C("href",_.docUrl,e.LSH)}}function Ha(t,n){1&t&&(e.TgZ(0,"cd-helper")(1,"span"),e.SDv(2,40),e.qZA()())}function Xa(t,n){1&t&&(e.TgZ(0,"span")(1,"cd-helper"),e.SDv(2,41),e.qZA()())}function Ba(t,n){if(1&t&&(e.TgZ(0,"cd-helper")(1,"span"),e.tHW(2,42),e._UZ(3,"a",39),e.N_p(),e.qZA()()),2&t){const _=e.oxw();e.xp6(3),e.s9C("href",_.docUrl,e.LSH)}}function Qa(t,n){1&t&&(e.TgZ(0,"cd-helper")(1,"span"),e.SDv(2,43),e.qZA()())}function Ya(t,n){1&t&&(e.TgZ(0,"span",34),e.SDv(1,44),e.qZA())}function Ja(t,n){1&t&&(e.TgZ(0,"span",34),e.SDv(1,45),e.qZA())}function Ka(t,n){1&t&&(e.TgZ(0,"span",34),e.SDv(1,49),e.qZA())}function Va(t,n){if(1&t&&(e.TgZ(0,"div",7)(1,"label",46),e.SDv(2,47),e.qZA(),e.TgZ(3,"div",10),e._UZ(4,"cd-select-badges",48)(5,"br"),e.YNc(6,Ka,2,0,"span",18),e.qZA()()),2&t){const _=e.oxw();e.xp6(4),e.Q6J("data",_.zonegroupZoneNames)("options",_.labelsOption)("customBadges",!0),e.xp6(2),e.Q6J("ngIf",_.isRemoveMasterZone)}}function ja(t,n){1&t&&(e.TgZ(0,"span"),e.SDv(1,68),e.qZA())}function el(t,n){if(1&t){const _=e.EpF();e.TgZ(0,"div")(1,"div",55)(2,"div",56),e._uU(3),e.ALo(4,"ordinal"),e.TgZ(5,"span",57),e.NdJ("click",function(){const s=e.CHM(_).index,l=e.oxw(2);return e.KtG(l.removePlacementTarget(s))}),e._uU(6,"\xd7"),e.qZA()(),e.TgZ(7,"div",58)(8,"div",7)(9,"label",59),e.SDv(10,60),e.qZA(),e.TgZ(11,"div",10),e._UZ(12,"input",61),e.TgZ(13,"span",34),e.YNc(14,ja,2,0,"span",23),e.qZA()()(),e.TgZ(15,"div",7)(16,"label",62),e.SDv(17,63),e.qZA(),e.TgZ(18,"div",10),e._UZ(19,"input",64),e.qZA()(),e.TgZ(20,"div",7)(21,"label",65),e.SDv(22,66),e.qZA(),e.TgZ(23,"div",10),e._UZ(24,"input",67),e.qZA()()()()()}if(2&t){const _=n.$implicit,o=n.index,i=e.oxw(2),s=e.MAs(6);e.xp6(1),e.Q6J("formGroup",_),e.xp6(2),e.hij(" ",e.lcZ(4,3,o+1)," "),e.xp6(11),e.Q6J("ngIf",i.showError(o,"placement_id",s,"required"))}}const _l=function(t){return[t]};function tl(t,n){if(1&t){const _=e.EpF();e.TgZ(0,"div")(1,"legend"),e._uU(2,"Placement targets"),e.qZA(),e.ynx(3,50),e.YNc(4,el,25,5,"div",51),e.BQk(),e.TgZ(5,"button",52),e.NdJ("click",function(){e.CHM(_);const i=e.oxw();return e.KtG(i.addPlacementTarget())}),e._UZ(6,"i",53),e.ynx(7),e.SDv(8,54),e.BQk(),e.qZA()()}if(2&t){const _=e.oxw();e.xp6(4),e.Q6J("ngForOf",_.placementTargets.controls)("ngForTrackBy",_.trackByFn),e.xp6(2),e.Q6J("ngClass",e.VKq(3,_l,_.icons.add))}}let ol=(()=>{class t{constructor(_,o,i,s,l){this.activeModal=_,this.actionLabels=o,this.rgwZonegroupService=i,this.notificationService=s,this.formBuilder=l,this.endpoints=/^((https?:\/\/)|(www.))(?:([a-zA-Z]+)|(\d+\.\d+.\d+.\d+)):\d{2,4}$/,this.ipv4Rgx=/^((25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$/i,this.ipv6Rgx=/^(?:[a-f0-9]{1,4}:){7}[a-f0-9]{1,4}$/i,this.icons=$.P,this.editing=!1,this.defaultsInfo=[],this.multisiteInfo=[],this.realmList=[],this.zonegroupList=[],this.isMaster=!1,this.labelsOption=[],this.zoneList=[],this.isRemoveMasterZone=!1,this.disableDefault=!1,this.disableMaster=!1,this.action=this.editing?this.actionLabels.EDIT+this.resource:this.actionLabels.CREATE+this.resource,this.createForm()}createForm(){this.multisiteZonegroupForm=new V.d({default_zonegroup:new a.p4(!1),zonegroupName:new a.p4(null,{validators:[a.kI.required,m.h.custom("uniqueName",_=>"create"===this.action&&this.zonegroupNames&&-1!==this.zonegroupNames.indexOf(_))]}),master_zonegroup:new a.p4(!1),selectedRealm:new a.p4(null),zonegroup_endpoints:new a.p4(null,[m.h.custom("endpoint",_=>!(E().isEmpty(_)||(_.includes(",")?(_.split(",").forEach(o=>!this.endpoints.test(o)&&!this.ipv4Rgx.test(o)&&!this.ipv6Rgx.test(o)),1):this.endpoints.test(_)||this.ipv4Rgx.test(_)||this.ipv6Rgx.test(_)))),a.kI.required]),placementTargets:this.formBuilder.array([])})}ngOnInit(){E().forEach(this.multisiteZonegroupForm.get("placementTargets"),s=>{this.addPlacementTarget().patchValue(s)}),this.placementTargets=this.multisiteZonegroupForm.get("placementTargets"),this.realmList=void 0!==this.multisiteInfo[0]&&this.multisiteInfo[0].hasOwnProperty("realms")?this.multisiteInfo[0].realms:[],this.zonegroupList=void 0!==this.multisiteInfo[1]&&this.multisiteInfo[1].hasOwnProperty("zonegroups")?this.multisiteInfo[1].zonegroups:[],this.zonegroupList.forEach(s=>{!0===s.is_master&&!E().isEmpty(s.realm_id)&&(this.isMaster=!0,this.disableMaster=!0)}),this.isMaster||(this.multisiteZonegroupForm.get("master_zonegroup").setValue(!0),this.multisiteZonegroupForm.get("master_zonegroup").disable()),this.zoneList=void 0!==this.multisiteInfo[2]&&this.multisiteInfo[2].hasOwnProperty("zones")?this.multisiteInfo[2].zones:[],this.zonegroupNames=this.zonegroupList.map(s=>s.name);const i=this.zonegroupList.map(s=>s.zones).reduce((s,l)=>s.concat(l),[]).map(s=>s.name);if(this.allZoneNames=this.zoneList.map(s=>s.name),this.allZoneNames=E().difference(this.allZoneNames,i),"create"===this.action&&null!==this.defaultsInfo.defaultRealmName&&(this.multisiteZonegroupForm.get("selectedRealm").setValue(this.defaultsInfo.defaultRealmName),this.disableMaster&&this.multisiteZonegroupForm.get("master_zonegroup").disable()),"edit"===this.action){this.multisiteZonegroupForm.get("zonegroupName").setValue(this.info.data.name),this.multisiteZonegroupForm.get("selectedRealm").setValue(this.info.data.parent),this.multisiteZonegroupForm.get("default_zonegroup").setValue(this.info.data.is_default),this.multisiteZonegroupForm.get("master_zonegroup").setValue(this.info.data.is_master),this.multisiteZonegroupForm.get("zonegroup_endpoints").setValue(this.info.data.endpoints),this.info.data.is_default&&this.multisiteZonegroupForm.get("default_zonegroup").disable(),!this.info.data.is_default&&this.multisiteZonegroupForm.getValue("selectedRealm")!==this.defaultsInfo.defaultRealmName&&(this.multisiteZonegroupForm.get("default_zonegroup").disable(),this.disableDefault=!0),(this.info.data.is_master||this.disableMaster)&&this.multisiteZonegroupForm.get("master_zonegroup").disable(),this.zonegroupZoneNames=this.info.data.zones.map(l=>l.name),this.zgZoneNames=this.info.data.zones.map(l=>l.name),this.zgZoneIds=this.info.data.zones.map(l=>l.id);const s=new Set(this.allZoneNames);this.labelsOption=Array.from(s).map(l=>({enabled:!0,name:l,selected:!1,description:null})),this.info.data.placement_targets.forEach(l=>{const r=this.addPlacementTarget();let d={placement_id:l.name,tags:l.tags.join(","),storage_class:"string"==typeof l.storage_classes?l.storage_classes:l.storage_classes.join(",")};r.patchValue(d)})}}submit(){const _=this.multisiteZonegroupForm.getRawValue();if("create"===this.action)this.realm=new x.L6,this.realm.name=_.selectedRealm,this.zonegroup=new x.iG,this.zonegroup.name=_.zonegroupName,this.zonegroup.endpoints=_.zonegroup_endpoints,this.rgwZonegroupService.create(this.realm,this.zonegroup,_.default_zonegroup,_.master_zonegroup).subscribe(()=>{this.notificationService.show(w.k.success,"Zonegroup: '" + _.zonegroupName + "' created successfully"),this.activeModal.close()},()=>{this.multisiteZonegroupForm.setErrors({cdSubmitButton:!0})});else if("edit"===this.action){this.removedZones=E().difference(this.zgZoneNames,this.zonegroupZoneNames);const o=this.info.data.zones.filter(i=>i.id===this.info.data.master_zone);if(this.isRemoveMasterZone=this.removedZones.includes(o[0].name),this.isRemoveMasterZone)return void this.multisiteZonegroupForm.setErrors({cdSubmitButton:!0});this.addedZones=E().difference(this.zonegroupZoneNames,this.zgZoneNames),this.realm=new x.L6,this.realm.name=_.selectedRealm,this.zonegroup=new x.iG,this.zonegroup.name=this.info.data.name,this.newZonegroupName=_.zonegroupName,this.zonegroup.endpoints=_.zonegroup_endpoints.toString(),this.zonegroup.placement_targets=_.placementTargets,this.rgwZonegroupService.update(this.realm,this.zonegroup,this.newZonegroupName,_.default_zonegroup,_.master_zonegroup,this.removedZones,this.addedZones).subscribe(()=>{this.notificationService.show(w.k.success,"Zonegroup: '" + _.zonegroupName + "' updated successfully"),this.activeModal.close()},()=>{this.multisiteZonegroupForm.setErrors({cdSubmitButton:!0})})}}addPlacementTarget(){this.placementTargets=this.multisiteZonegroupForm.get("placementTargets");const _=new V.d({placement_id:new a.p4("",{validators:[a.kI.required]}),tags:new a.p4(""),storage_class:new a.p4([])});return this.placementTargets.push(_),_}trackByFn(_){return _}removePlacementTarget(_){this.placementTargets=this.multisiteZonegroupForm.get("placementTargets"),this.placementTargets.removeAt(_)}showError(_,o,i,s){return this.multisiteZonegroupForm.controls.placementTargets.controls[_].showError(o,i,s)}}return t.\u0275fac=function(_){return new(_||t)(e.Y36(G.Kz),e.Y36(I.p4),e.Y36(ge.K),e.Y36(Y.g),e.Y36(a.QS))},t.\u0275cmp=e.Xpm({type:t,selectors:[["cd-rgw-multisite-zonegroup-form"]],decls:49,vars:24,consts:function(){let n,_,o,i,s,l,r,d,u,R,O,F,b,h,M,L,S,W,C,Z,D,U,v,y;return n="" + "\ufffd0\ufffd" + " Zone Group",_="Select Realm",o="-- Select a realm --",i="Zone Group Name",s="Default",l="Master",r="Endpoints",d="This field is required.",u="The chosen zone group name is already in use.",R="Zone group doesn't belong to the default realm.",O="Please consult the " + "\ufffd#3\ufffd" + "documentation" + "\ufffd/#3\ufffd" + " to follow the failover mechanism",F="You cannot unset the default flag.",b="Multiple master zone groups can't be configured. If you want to create a new zone group and make it the master zone group, you must delete the default zone group.",h="Please consult the " + "\ufffd#3\ufffd" + "documentation" + "\ufffd/#3\ufffd" + " to follow the failover mechanism",M="You cannot unset the master flag.",L="This field is required.",S="Please enter a valid IP address.",W="Zones",C="Cannot remove master zone.",Z="Add placement target",D="Placement Id",U="Tags",v="Storage Class",y="This field is required.",[[3,"modalRef"],[1,"modal-title"],n,[1,"modal-content"],["name","multisiteZonegroupForm","novalidate","",3,"formGroup"],["formDir","ngForm"],[1,"modal-body"],[1,"form-group","row"],["for","selectedRealm",1,"cd-col-form-label"],_,[1,"cd-col-form-input"],["id","selectedRealm","formControlName","selectedRealm","name","selectedRealm",1,"form-select"],["ngValue",""],o,[3,"value","selected",4,"ngFor","ngForOf"],["for","zonegroupName",1,"cd-col-form-label","required"],i,["type","text","placeholder","Zone group name...","id","zonegroupName","name","zonegroupName","formControlName","zonegroupName",1,"form-control"],["class","invalid-feedback",4,"ngIf"],[1,"custom-control","custom-checkbox"],["id","default_zonegroup","name","default_zonegroup","formControlName","default_zonegroup","type","checkbox",1,"form-check-input"],["for","default_zonegroup",1,"form-check-label"],s,[4,"ngIf"],["id","master_zonegroup","name","master_zonegroup","formControlName","master_zonegroup","type","checkbox",1,"form-check-input"],["for","master_zonegroup",1,"form-check-label"],l,["for","zonegroup_endpoints",1,"cd-col-form-label","required"],r,["type","text","placeholder","e.g, http://ceph-node-00.com:80","id","zonegroup_endpoints","name","zonegroup_endpoints","formControlName","zonegroup_endpoints",1,"form-control"],["class","form-group row",4,"ngIf"],[1,"modal-footer"],[3,"form","submitText","submitActionEvent"],[3,"value","selected"],[1,"invalid-feedback"],d,u,R,O,[3,"href"],F,b,h,M,L,S,["for","zones",1,"cd-col-form-label"],W,["id","zones",3,"data","options","customBadges"],C,["formArrayName","placementTargets"],[4,"ngFor","ngForOf","ngForTrackBy"],["type","button","id","add-plc",1,"btn","btn-light","float-end","my-3",3,"click"],[3,"ngClass"],Z,[1,"card",3,"formGroup"],[1,"card-header"],["name","remove_placement_target","ngbTooltip","Remove",1,"float-end","clickable",3,"click"],[1,"card-body"],["for","placement_id",1,"cd-col-form-label","required"],D,["type","text","name","placement_id","id","placement_id","formControlName","placement_id","placeholder","eg. default-placement",1,"form-control"],["for","tags",1,"cd-col-form-label"],U,["type","text","name","tags","id","tags","formControlName","tags","placeholder","comma separated tags, eg. default-placement, ssd",1,"form-control"],["for","storage_class",1,"cd-col-form-label"],v,["type","text","name","storage_class","id","storage_class","formControlName","storage_class","placeholder","eg. Standard-tier",1,"form-control"],y]},template:function(_,o){if(1&_&&(e.TgZ(0,"cd-modal",0),e.ynx(1,1),e.SDv(2,2),e.ALo(3,"titlecase"),e.BQk(),e.ynx(4,3),e.TgZ(5,"form",4,5)(7,"div",6)(8,"div",7)(9,"label",8),e.SDv(10,9),e.qZA(),e.TgZ(11,"div",10)(12,"select",11)(13,"option",12),e.SDv(14,13),e.qZA(),e.YNc(15,wa,2,3,"option",14),e.qZA()()(),e.TgZ(16,"div",7)(17,"label",15),e.SDv(18,16),e.qZA(),e.TgZ(19,"div",10),e._UZ(20,"input",17),e.YNc(21,xa,2,0,"span",18),e.YNc(22,ka,2,0,"span",18),e.TgZ(23,"div",19),e._UZ(24,"input",20),e.TgZ(25,"label",21),e.SDv(26,22),e.qZA(),e.YNc(27,za,3,0,"span",23),e.YNc(28,qa,4,1,"cd-helper",23),e.YNc(29,Ha,3,0,"cd-helper",23),e._UZ(30,"br")(31,"input",24),e.TgZ(32,"label",25),e.SDv(33,26),e.qZA(),e.YNc(34,Xa,3,0,"span",23),e.YNc(35,Ba,4,1,"cd-helper",23),e.YNc(36,Qa,3,0,"cd-helper",23),e.qZA()()(),e.TgZ(37,"div",7)(38,"label",27),e.SDv(39,28),e.qZA(),e.TgZ(40,"div",10),e._UZ(41,"input",29),e.YNc(42,Ya,2,0,"span",18),e.YNc(43,Ja,2,0,"span",18),e.qZA()(),e.YNc(44,Va,7,4,"div",30),e.YNc(45,tl,9,5,"div",23),e.qZA(),e.TgZ(46,"div",31)(47,"cd-form-button-panel",32),e.NdJ("submitActionEvent",function(){return o.submit()}),e.ALo(48,"titlecase"),e.qZA()()(),e.BQk(),e.qZA()),2&_){const i=e.MAs(6);e.Q6J("modalRef",o.activeModal),e.xp6(3),e.pQV(e.lcZ(3,20,o.action)),e.QtT(2),e.xp6(2),e.Q6J("formGroup",o.multisiteZonegroupForm),e.xp6(10),e.Q6J("ngForOf",o.realmList),e.xp6(6),e.Q6J("ngIf",o.multisiteZonegroupForm.showError("zonegroupName",i,"required")),e.xp6(1),e.Q6J("ngIf",o.multisiteZonegroupForm.showError("zonegroupName",i,"uniqueName")),e.xp6(2),e.uIk("disabled","edit"===o.action||null),e.xp6(3),e.Q6J("ngIf",o.disableDefault&&"create"===o.action),e.xp6(1),e.Q6J("ngIf","edit"===o.action&&!o.info.data.is_default),e.xp6(1),e.Q6J("ngIf","edit"===o.action&&o.info.data.is_default),e.xp6(2),e.uIk("disabled","edit"===o.action||null),e.xp6(3),e.Q6J("ngIf",o.disableMaster&&"create"===o.action),e.xp6(1),e.Q6J("ngIf","edit"===o.action&&!o.info.data.is_master),e.xp6(1),e.Q6J("ngIf","edit"===o.action&&o.info.data.is_master),e.xp6(6),e.Q6J("ngIf",o.multisiteZonegroupForm.showError("zonegroup_endpoints",i,"required")),e.xp6(1),e.Q6J("ngIf",o.multisiteZonegroupForm.showError("zonegroup_endpoints",i,"endpoint")),e.xp6(1),e.Q6J("ngIf","edit"===o.action),e.xp6(1),e.Q6J("ngIf","edit"===o.action),e.xp6(2),e.Q6J("form",o.multisiteZonegroupForm)("submitText",e.lcZ(48,22,o.action)+" Zone Group")}},dependencies:[T.mk,T.sg,T.O5,j.S,I_.m,X.z,B.p,k.o,q.b,z.P,H.V,a._Y,a.YN,a.Kr,a.Fj,a.Wl,a.EJ,a.JJ,a.JL,a.sg,a.u,a.CE,G._L,T.rS,ya.f]}),t})();var nl=c(61717),il=c(36848),sl=c(7273);const al=["tree"];function ll(t,n){if(1&t){const _=e.EpF();e.TgZ(0,"cd-alert-panel",17),e.tHW(1,18),e.TgZ(2,"a",19),e.NdJ("click",function(){e.CHM(_);const i=e.oxw();return e.KtG(i.enableRgwModule())}),e.qZA(),e.N_p(),e.qZA()}}function rl(t,n){1&t&&(e.TgZ(0,"cd-alert-panel",20),e.tHW(1,21),e._UZ(2,"a",22),e.N_p(),e.qZA())}function cl(t,n){if(1&t&&(e.TgZ(0,"span"),e._UZ(1,"cd-table-actions",23),e.qZA()),2&t){const _=e.oxw();e.xp6(1),e.Q6J("permission",_.permission)("btnColor","light")("selection",_.selection)("tableActions",_.migrateTableAction)}}const dl=function(t,n,_){return[t,n,_]};function ul(t,n){if(1&t&&e._UZ(0,"i",24),2&t){const _=e.oxw();e.Q6J("ngClass",e.kEZ(1,dl,_.icons.large,_.icons.spinner,_.icons.spin))}}function gl(t,n){if(1&t&&(e.TgZ(0,"span"),e._UZ(1,"i",30),e.qZA()),2&t){const _=e.oxw(2).$implicit,o=e.oxw();e.xp6(1),e.Q6J("title",_.data.warning_message)("ngClass",o.icons.danger)}}function Rl(t,n){if(1&t&&(e.TgZ(0,"span",29),e.YNc(1,gl,2,2,"span",5),e._UZ(2,"i",24),e._uU(3),e.qZA()),2&t){const _=e.oxw().$implicit;e.xp6(1),e.Q6J("ngIf",_.data.show_warning),e.xp6(1),e.Q6J("ngClass",_.data.icon),e.xp6(1),e.hij(" ",_.data.name," ")}}function Tl(t,n){1&t&&(e.TgZ(0,"span",31),e._uU(1," default "),e.qZA())}function El(t,n){1&t&&(e.TgZ(0,"span",32),e._uU(1," master "),e.qZA())}function fl(t,n){1&t&&(e.TgZ(0,"span",32),e._uU(1," secondary-zone "),e.qZA())}const b_=function(t){return[t]};function pl(t,n){if(1&t){const _=e.EpF();e.TgZ(0,"div",33)(1,"div",34)(2,"button",35),e.NdJ("click",function(){e.CHM(_);const i=e.oxw().$implicit,s=e.oxw();return e.KtG(s.openModal(i,!0))}),e._UZ(3,"i",24),e.qZA()(),e.TgZ(4,"div",34)(5,"button",36),e.NdJ("click",function(){e.CHM(_);const i=e.oxw().$implicit,s=e.oxw();return e.KtG(s.delete(i))}),e._UZ(6,"i",24),e.qZA()()()}if(2&t){const _=e.oxw().$implicit,o=e.oxw();e.xp6(1),e.Q6J("title",o.editTitle),e.xp6(1),e.Q6J("disabled",o.getDisable()||_.data.secondary_zone),e.xp6(1),e.Q6J("ngClass",e.VKq(6,b_,o.icons.edit)),e.xp6(1),e.Q6J("title",o.deleteTitle),e.xp6(1),e.Q6J("disabled",o.isDeleteDisabled(_)||_.data.secondary_zone),e.xp6(1),e.Q6J("ngClass",e.VKq(8,b_,o.icons.destroy))}}function ml(t,n){if(1&t&&(e.YNc(0,Rl,4,3,"span",25),e.YNc(1,Tl,2,0,"span",26),e.YNc(2,El,2,0,"span",27),e.YNc(3,fl,2,0,"span",27),e.YNc(4,pl,7,10,"div",28)),2&t){const _=n.$implicit;e.Q6J("ngIf",_.data.name),e.xp6(1),e.Q6J("ngIf",_.data.is_default),e.xp6(1),e.Q6J("ngIf",_.data.is_master),e.xp6(1),e.Q6J("ngIf",_.data.secondary_zone),e.xp6(1),e.Q6J("ngIf",_.isFocused)}}function Ml(t,n){if(1&t&&(e.TgZ(0,"div",37)(1,"legend"),e._uU(2),e.qZA(),e.TgZ(3,"div"),e._UZ(4,"cd-table-key-value",38),e.qZA()()),2&t){const _=e.oxw();e.xp6(2),e.Oqu(_.metadataTitle),e.xp6(2),e.Q6J("data",_.metadata)}}class Te{constructor(n,_,o,i,s,l,r,d,u,R,O,F){this.modalService=n,this.timerService=_,this.authStorageService=o,this.actionLabels=i,this.timerServiceVariable=s,this.router=l,this.rgwRealmService=r,this.rgwZonegroupService=d,this.rgwZoneService=u,this.rgwDaemonService=R,this.mgrModuleService=O,this.notificationService=F,this.sub=new N_.w,this.messages={noDefaultRealm:"Please create a default realm first to enable this feature",noMasterZone:"Please create a master zone for each zone group to enable this feature",noRealmExists:"No realm exists",disableExport:"Please create master zone group and master zone for each of the realms"},this.icons=$.P,this.selection=new qe.r,this.loadingIndicator=!0,this.nodes=[],this.treeOptions={useVirtualScroll:!0,nodeHeight:22,levelPadding:20,actionMapping:{mouse:{click:this.onNodeSelected.bind(this)}}},this.realms=[],this.zonegroups=[],this.zones=[],this.realmIds=[],this.zoneIds=[],this.defaultRealmId="",this.defaultZonegroupId="",this.defaultZoneId="",this.multisiteInfo=[],this.defaultsInfo=[],this.showMigrateAction=!1,this.editTitle="Edit",this.deleteTitle="Delete",this.disableExport=!0,this.restartGatewayMessage=!1,this.rgwModuleData=[],this.permission=this.authStorageService.getPermissions().rgw}openModal(n,_=!1){const o=_?n.data.type:n;this.bsModalRef=this.modalService.show("realm"===o?fa:"zonegroup"===o?ol:va,{resource:o,action:_?"edit":"create",info:n,defaultsInfo:this.defaultsInfo,multisiteInfo:this.multisiteInfo},{size:"lg"})}openMigrateModal(){this.bsModalRef=this.modalService.show(ms,{multisiteInfo:this.multisiteInfo},{size:"lg"})}openImportModal(){this.bsModalRef=this.modalService.show(ca,{multisiteInfo:this.multisiteInfo},{size:"lg"})}openExportModal(){this.bsModalRef=this.modalService.show(ws,{defaultsInfo:this.defaultsInfo,multisiteInfo:this.multisiteInfo},{size:"lg"})}getDisableExport(){return this.realms.forEach(n=>{this.zonegroups.forEach(_=>{n.id===_.realm_id&&_.is_master&&""!==_.master_zone&&(this.disableExport=!1)})}),!this.rgwModuleStatus||(this.realms.length<1?this.messages.noRealmExists:!!this.disableExport&&this.messages.disableExport)}getDisableImport(){return!this.rgwModuleStatus}ngOnInit(){const i={permission:"read",icon:$.P.exchange,name:this.actionLabels.MIGRATE,click:()=>this.openMigrateModal()},s={permission:"read",icon:$.P.download,name:this.actionLabels.IMPORT,click:()=>this.openImportModal(),disable:()=>this.getDisableImport()},l={permission:"read",icon:$.P.upload,name:this.actionLabels.EXPORT,click:()=>this.openExportModal(),disable:()=>this.getDisableExport()};this.createTableActions=[{permission:"create",icon:$.P.add,name:this.actionLabels.CREATE+" Realm",click:()=>this.openModal("realm")},{permission:"create",icon:$.P.add,name:this.actionLabels.CREATE+" Zone Group",click:()=>this.openModal("zonegroup"),disable:()=>this.getDisable()},{permission:"create",icon:$.P.add,name:this.actionLabels.CREATE+" Zone",click:()=>this.openModal("zone")}],this.migrateTableAction=[i],this.importAction=[s],this.exportAction=[l];const r=[this.rgwRealmService.getAllRealmsInfo(),this.rgwZonegroupService.getAllZonegroupsInfo(),this.rgwZoneService.getAllZonesInfo()];this.sub=this.timerService.get(()=>(0,ne.D)(r),2*this.timerServiceVariable.TIMER_SERVICE_PERIOD).subscribe(d=>{this.multisiteInfo=d,this.loadingIndicator=!1,this.nodes=this.abstractTreeData(d)},d=>{}),this.mgrModuleService.list().subscribe(d=>{this.rgwModuleData=d.filter(u=>"rgw"===u.name),this.rgwModuleData.length>0&&(this.rgwModuleStatus=this.rgwModuleData[0].enabled)})}ngOnDestroy(){this.sub.unsubscribe()}abstractTreeData(n){let _=[],o={},i={},s=[],l={},r=[];if(this.realms=n[0].realms,this.zonegroups=n[1].zonegroups,this.zones=n[2].zones,this.defaultRealmId=n[0].default_realm,this.defaultZonegroupId=n[1].default_zonegroup,this.defaultZoneId=n[2].default_zone,this.defaultsInfo=this.getDefaultsEntities(this.defaultRealmId,this.defaultZonegroupId,this.defaultZoneId),this.realms.length>0)for(const d of this.realms){const u=this.rgwRealmService.getRealmTree(d,this.defaultRealmId);o=u.nodes,this.realmIds=this.realmIds.concat(u.realmIds);for(const R of this.zonegroups)if(R.realm_id===d.id){i=this.rgwZonegroupService.getZonegroupTree(R,this.defaultZonegroupId,d);for(const O of R.zones){const F=this.rgwZoneService.getZoneTree(O,this.defaultZoneId,this.zones,R,d);l=F.nodes,this.zoneIds=this.zoneIds.concat(F.zoneIds),r.push(l),l={}}i.children=r,r=[],s.push(i),i={}}o.children=s,_.push(o),i={},l={},o={},s=[],r=[]}if(this.zonegroups.length>0)for(const d of this.zonegroups)if(!this.realmIds.includes(d.realm_id)){o=this.rgwZonegroupService.getZonegroupTree(d,this.defaultZonegroupId);for(const u of d.zones){const R=this.rgwZoneService.getZoneTree(u,this.defaultZoneId,this.zones,d);i=R.nodes,this.zoneIds=this.zoneIds.concat(R.zoneIds),s.push(i),i={}}o.children=s,_.push(o),i={},o={},s=[]}if(this.zones.length>0)for(const d of this.zones)this.zoneIds.length>0&&!this.zoneIds.includes(d.id)&&(o=this.rgwZoneService.getZoneTree(d,this.defaultZoneId,this.zones).nodes,_.push(o),o={});return this.realms.length<1&&this.zonegroups.length<1&&this.zones.length<1?[{name:"No nodes!"}]:(this.realmIds=[],this.zoneIds=[],this.getDisableMigrate(),this.rgwDaemonService.list().subscribe(d=>{const u=d.map(R=>R.realm_name);""!=this.defaultRealmId&&""!=this.defaultZonegroupId&&""!=this.defaultZoneId&&u.includes("")&&(this.restartGatewayMessage=!0)}),_)}getDefaultsEntities(n,_,o){const i=this.realms.find(R=>R.id===n),s=this.zonegroups.find(R=>R.id===_),l=this.zones.find(R=>R.id===o);return{defaultRealmName:void 0!==i?i.name:null,defaultZonegroupName:void 0!==s?s.name:null,defaultZoneName:void 0!==l?l.name:null}}onNodeSelected(n,_){je.iM.ACTIVATE(n,_,!0),this.metadataTitle=_.data.name,this.metadata=_.data.info,_.data.show=!0}onUpdateData(){this.tree.treeModel.expandAll()}getDisable(){let n=!0;return""===this.defaultRealmId?this.messages.noDefaultRealm:(this.zonegroups.forEach(_=>{E().isEmpty(_.master_zone)&&(n=!1)}),n?(this.editTitle="Edit",!1):(this.editTitle="Please create a master zone for each existing zonegroup to enable this feature",this.messages.noMasterZone))}getDisableMigrate(){return this.showMigrateAction=0===this.realms.length&&1===this.zonegroups.length&&"default"===this.zonegroups[0].name&&1===this.zones.length&&"default"===this.zones[0].name,this.showMigrateAction}isDeleteDisabled(n){let _=!1,o=0;if("realm"===n.data.type&&n.data.is_default&&this.realms.length<2&&(_=!0),"zonegroup"===n.data.type)if(this.zonegroups.length<2)this.deleteTitle="You can not delete the only zonegroup available",_=!0;else if(n.data.is_default)this.deleteTitle="You can not delete the default zonegroup",_=!0;else if(n.data.is_master){for(let i of this.zonegroups)if(!0===i.is_master&&(o++,o>1))break;o<2&&(this.deleteTitle="You can not delete the only master zonegroup available",_=!0)}return"zone"===n.data.type&&(this.zones.length<2?(this.deleteTitle="You can not delete the only zone available",_=!0):n.data.is_default?(this.deleteTitle="You can not delete the default zone",_=!0):n.data.is_master&&n.data.zone_zonegroup.zones.length<2&&(this.deleteTitle="You can not delete the master zone as there are no more zones in this zonegroup",_=!0)),_||(this.deleteTitle="Delete"),_}delete(n){"realm"===n.data.type?this.modalRef=this.modalService.show(Qe.M,{itemDescription:"" + n.data.type + " " + n.data.name + "",itemNames:[`${n.data.name}`],submitAction:()=>{this.rgwRealmService.delete(n.data.name).subscribe(()=>{this.modalRef.close(),this.notificationService.show(w.k.success,"Realm: '" + n.data.name + "' deleted successfully")},()=>{this.modalRef.componentInstance.stopLoadingSpinner()})}}):"zonegroup"===n.data.type?this.modalRef=this.modalService.show(Ls,{zonegroup:n.data}):"zone"===n.data.type&&(this.modalRef=this.modalService.show(Os,{zone:n.data}))}enableRgwModule(){let n;const _=()=>{(0,ls.H)(2e3).subscribe(()=>{this.mgrModuleService.list().subscribe(()=>{this.notificationService.suspendToasties(!1),this.blockUI.stop(),this.notificationService.show(w.k.success,"Enabled RGW Module"),this.router.navigateByUrl("/",{skipLocationChange:!0}).then(()=>{this.router.navigate(["/rgw/multisite"])})},()=>{_()})})};this.rgwModuleStatus||(n=this.mgrModuleService.enable("rgw")),n.subscribe(()=>{},()=>{this.notificationService.suspendToasties(!0),this.blockUI.start("Reconnecting, please wait ..."),_()})}}Te.\u0275fac=function(n){return new(n||Te)(e.Y36(ee.Z),e.Y36(il.f),e.Y36(ce.j),e.Y36(I.p4),e.Y36(I.eu),e.Y36(J.F0),e.Y36(de.y),e.Y36(ge.K),e.Y36(ue.g),e.Y36(oe.b),e.Y36(sl.N),e.Y36(Y.g))},Te.\u0275cmp=e.Xpm({type:Te,selectors:[["cd-rgw-multisite-details"]],viewQuery:function(n,_){if(1&n&&e.Gf(al,5),2&n){let o;e.iGM(o=e.CRH())&&(_.tree=o.first)}},decls:21,vars:18,consts:function(){let t,n,_;return t="Topology Viewer",n="In order to access the import/export feature, the rgw module must be enabled " + "\ufffd#2\ufffd" + " Enable the Object Gateway Module" + "\ufffd/#2\ufffd" + "",_="Please restart all Ceph Object Gateway instances in all zones to ensure consistent multisite configuration updates. " + "\ufffd#2\ufffd" + " Cluster->Services" + "\ufffd/#2\ufffd" + "",[[1,"row"],[1,"col-sm-12","col-lg-12"],["type","info","spacingClass","mb-3",4,"ngIf"],["type","warning","spacingClass","mb-3",4,"ngIf"],[1,"btn-group","mb-4","me-2",3,"permission","selection","tableActions"],[4,"ngIf"],[1,"btn-group","mb-4","me-2",3,"permission","btnColor","selection","tableActions"],[1,"card"],[1,"card-header"],t,[1,"card-body"],[1,"col-sm-6","col-lg-6","tree-container"],[3,"ngClass",4,"ngIf"],[3,"nodes","options","updateData"],["tree",""],["treeNodeTemplate",""],["class","col-sm-6 col-lg-6 metadata",4,"ngIf"],["type","info","spacingClass","mb-3"],n,[1,"text-decoration-underline",3,"click"],["type","warning","spacingClass","mb-3"],_,["routerLink","/services",1,"text-decoration-underline"],[1,"btn-group","mb-4","me-2","secondary",3,"permission","btnColor","selection","tableActions"],[3,"ngClass"],["class","me-3",4,"ngIf"],["class","badge badge-success me-2",4,"ngIf"],["class","badge badge-warning me-2",4,"ngIf"],["class","btn-group align-inline-btns","role","group",4,"ngIf"],[1,"me-3"],[1,"text-danger",3,"title","ngClass"],[1,"badge","badge-success","me-2"],[1,"badge","badge-warning","me-2"],["role","group",1,"btn-group","align-inline-btns"],[3,"title"],["type","button",1,"btn","btn-light","dropdown-toggle-split","ms-1",3,"disabled","click"],["type","button",1,"btn","btn-light","ms-1",3,"disabled","click"],[1,"col-sm-6","col-lg-6","metadata"],["cdTableDetail","",3,"data"]]},template:function(n,_){1&n&&(e.TgZ(0,"div",0)(1,"div",1)(2,"div"),e.YNc(3,ll,3,0,"cd-alert-panel",2),e.YNc(4,rl,3,0,"cd-alert-panel",3),e._UZ(5,"cd-table-actions",4),e.YNc(6,cl,2,4,"span",5),e._UZ(7,"cd-table-actions",6)(8,"cd-table-actions",6),e.qZA(),e.TgZ(9,"div",7)(10,"div",8),e.SDv(11,9),e.qZA(),e.TgZ(12,"div",10)(13,"div",0)(14,"div",11),e.YNc(15,ul,1,5,"i",12),e.TgZ(16,"tree-root",13,14),e.NdJ("updateData",function(){return _.onUpdateData()}),e.YNc(18,ml,5,5,"ng-template",null,15,e.W1O),e.qZA()(),e.YNc(20,Ml,5,2,"div",16),e.qZA()()()()()),2&n&&(e.xp6(3),e.Q6J("ngIf",!_.rgwModuleStatus),e.xp6(1),e.Q6J("ngIf",_.restartGatewayMessage),e.xp6(1),e.Q6J("permission",_.permission)("selection",_.selection)("tableActions",_.createTableActions),e.xp6(1),e.Q6J("ngIf",_.showMigrateAction),e.xp6(1),e.Q6J("permission",_.permission)("btnColor","light")("selection",_.selection)("tableActions",_.importAction),e.xp6(1),e.Q6J("permission",_.permission)("btnColor","light")("selection",_.selection)("tableActions",_.exportAction),e.xp6(7),e.Q6J("ngIf",_.loadingIndicator),e.xp6(1),e.Q6J("nodes",_.nodes)("options",_.treeOptions),e.xp6(4),e.Q6J("ngIf",_.metadata))},dependencies:[T.mk,T.O5,Re.G,f_.b,Je.K,k.o,J.rH,je.qr],styles:[".tree-container[_ngcontent-%COMP%]{height:calc(100vh - 200px)}.align-inline-btns[_ngcontent-%COMP%]{margin-left:5em}.btn[_ngcontent-%COMP%]:disabled{pointer-events:none}"]}),(0,xe.gn)([(0,nl.bH)(),(0,xe.w6)("design:type",Object)],Te.prototype,"blockUI",void 0);var Sl=c(40267),Cl=c(7357),Ol=c(11656),Fl=c(4167),Pl=c(43190),Nl=c(68307),Gl=c(47349),Al=c(79241),Il=c(98677),bl=c(30490),hl=c(9219),Ll=c(17401),Wl=c(9024),$l=c(54740);const me=function(t,n){return[t,n]};let Zl=(()=>{class t{constructor(){this.icons=$.P}}return t.\u0275fac=function(_){return new(_||t)},t.\u0275cmp=e.Xpm({type:t,selectors:[["cd-rgw-sync-primary-zone"]],inputs:{realm:"realm",zonegroup:"zonegroup",zone:"zone"},decls:17,vars:23,consts:[[1,"pb-5"],[1,"pt-2",3,"ngClass"],[1,"badge","badge-info","mt-2"],[1,"mt-2",3,"ngClass"]],template:function(_,o){1&_&&(e.TgZ(0,"ul",0)(1,"li"),e._UZ(2,"i",1),e.qZA(),e.TgZ(3,"li",2),e._uU(4),e.qZA(),e.TgZ(5,"li"),e._UZ(6,"i",3),e.qZA(),e.TgZ(7,"li"),e._UZ(8,"i",3),e.qZA(),e.TgZ(9,"p",2),e._uU(10),e.qZA(),e.TgZ(11,"li"),e._UZ(12,"i",3),e.qZA(),e.TgZ(13,"li"),e._UZ(14,"i",3),e.qZA(),e.TgZ(15,"li",2),e._uU(16),e.qZA()()),2&_&&(e.xp6(2),e.Q6J("ngClass",e.WLB(8,me,o.icons.large2x,o.icons.reweight)),e.xp6(2),e.Oqu(o.realm),e.xp6(2),e.Q6J("ngClass",e.WLB(11,me,o.icons.large2x,o.icons.down)),e.xp6(2),e.Q6J("ngClass",e.WLB(14,me,o.icons.large2x,o.icons.cubes)),e.xp6(2),e.Oqu(o.zonegroup),e.xp6(2),e.Q6J("ngClass",e.WLB(17,me,o.icons.large2x,o.icons.down)),e.xp6(2),e.Q6J("ngClass",e.WLB(20,me,o.icons.large2x,o.icons.deploy)),e.xp6(2),e.Oqu(o.zone))},dependencies:[T.mk],styles:["ul[_ngcontent-%COMP%]{align-items:center;display:flex;flex-direction:column;list-style-type:none}.align-primary-zone[_ngcontent-%COMP%]{padding-left:4em}"]}),t})();var h_=c(90068);function Dl(t,n){1&t&&(e.TgZ(0,"span")(1,"ul",1)(2,"li")(3,"b"),e._uU(4,"Status:"),e.qZA()(),e.TgZ(5,"li"),e._uU(6,"No Sync"),e.qZA()()())}function Ul(t,n){if(1&t&&(e.TgZ(0,"span")(1,"b"),e._uU(2),e.ALo(3,"titlecase"),e.qZA(),e._uU(4),e.ALo(5,"titlecase"),e.qZA()),2&t){const _=e.oxw(2).$implicit;e.xp6(2),e.Oqu(e.lcZ(3,2,_.split(":")[0])),e.xp6(2),e.hij(":",e.lcZ(5,4,_.split(":")[1])," ")}}function vl(t,n){if(1&t&&(e.TgZ(0,"span")(1,"b"),e._uU(2),e.ALo(3,"titlecase"),e.qZA()()),2&t){const _=e.oxw(2).$implicit;e.xp6(2),e.Oqu(e.lcZ(3,1,_))}}function yl(t,n){if(1&t&&(e.TgZ(0,"span"),e.YNc(1,Ul,6,6,"span",0),e.YNc(2,vl,4,3,"span",0),e.qZA()),2&t){const _=e.oxw().$implicit;e.xp6(1),e.Q6J("ngIf",null==_?null:_.includes(":")),e.xp6(1),e.Q6J("ngIf",!(null!=_&&_.includes(":")))}}function wl(t,n){if(1&t&&(e.TgZ(0,"span"),e._uU(1),e.ALo(2,"titlecase"),e.qZA()),2&t){const _=e.oxw().$implicit;e.xp6(1),e.hij(" ",e.lcZ(2,1,_)," ")}}function xl(t,n){if(1&t&&(e.TgZ(0,"li"),e.YNc(1,yl,3,2,"span",0),e.YNc(2,wl,3,3,"span",0),e.qZA()),2&t){const _=n.$implicit,o=e.oxw(3);e.xp6(1),e.Q6J("ngIf",!(null!=_&&_.includes(o.metadataSyncInfo.syncstatus)||null!=_&&_.includes("failed")||null!=_&&_.includes("error"))),e.xp6(1),e.Q6J("ngIf",(null==_?null:_.includes("failed"))||(null==_?null:_.includes("error")))}}function kl(t,n){if(1&t&&(e.TgZ(0,"ul",8)(1,"li")(2,"h5")(3,"b"),e._uU(4,"Metadata Sync Status:"),e.qZA()()(),e.YNc(5,xl,3,2,"li",9),e.qZA()),2&t){const _=e.oxw(2);e.xp6(5),e.Q6J("ngForOf",_.metadataSyncInfo.fullSyncStatus)}}function zl(t,n){1&t&&(e.TgZ(0,"li",10),e._uU(1,"Up to Date"),e.qZA())}function ql(t,n){if(1&t&&(e.TgZ(0,"a",12),e.SDv(1,13),e.ALo(2,"titlecase"),e.qZA()),2&t){e.oxw(2);const _=e.MAs(2),o=e.oxw();e.Q6J("ngbPopover",_),e.xp6(2),e.pQV(e.lcZ(2,2,o.metadataSyncInfo.syncstatus)),e.QtT(1)}}function Hl(t,n){if(1&t&&(e.TgZ(0,"a",12),e.SDv(1,14),e.qZA()),2&t){e.oxw(2);const _=e.MAs(2);e.Q6J("ngbPopover",_)}}function Xl(t,n){if(1&t&&(e.YNc(0,ql,3,4,"a",11),e.YNc(1,Hl,2,1,"a",11)),2&t){const _=e.oxw(2);e.Q6J("ngIf","Not Syncing From Zone"!==_.metadataSyncInfo.syncstatus),e.xp6(1),e.Q6J("ngIf","Not Syncing From Zone"===_.metadataSyncInfo.syncstatus)}}const Bl=function(t){return[t]};function Ql(t,n){if(1&t&&(e.TgZ(0,"li"),e._UZ(1,"i",15),e.TgZ(2,"a",16),e.SDv(3,17),e.qZA()()),2&t){e.oxw();const _=e.MAs(2),o=e.oxw();e.xp6(1),e.Q6J("ngClass",e.VKq(2,Bl,o.icons.danger)),e.xp6(1),e.Q6J("ngbPopover",_)}}function Yl(t,n){if(1&t&&(e.TgZ(0,"li",18),e._uU(1),e.ALo(2,"relativeDate"),e.qZA()),2&t){const _=e.oxw(2);e.xp6(1),e.Oqu(e.lcZ(2,1,_.metadataSyncInfo.timestamp))}}function Jl(t,n){if(1&t&&(e.TgZ(0,"span"),e.YNc(1,kl,6,1,"ng-template",null,2,e.W1O),e.TgZ(3,"ul",1),e.YNc(4,zl,2,0,"ng-template",null,3,e.W1O),e.YNc(6,Xl,2,2,"ng-template",null,4,e.W1O),e.TgZ(8,"li")(9,"b"),e._uU(10,"Status:"),e.qZA()(),e.YNc(11,Ql,4,4,"li",5),e.TgZ(12,"li",6),e._uU(13," Last Synced: "),e.qZA(),e.YNc(14,Yl,3,3,"li",7),e.qZA()()),2&t){const _=e.MAs(5),o=e.MAs(7),i=e.oxw();e.xp6(11),e.Q6J("ngIf",(null==i.metadataSyncInfo.syncstatus?null:i.metadataSyncInfo.syncstatus.includes("failed"))||(null==i.metadataSyncInfo.syncstatus?null:i.metadataSyncInfo.syncstatus.includes("error")))("ngIfElse",o),e.xp6(3),e.Q6J("ngIf",i.metadataSyncInfo.timestamp)("ngIfElse",_)}}let Kl=(()=>{class t{constructor(){this.icons=$.P,this.metadataSyncInfo={}}}return t.\u0275fac=function(_){return new(_||t)},t.\u0275cmp=e.Xpm({type:t,selectors:[["cd-rgw-sync-metadata-info"]],inputs:{metadataSyncInfo:"metadataSyncInfo"},decls:2,vars:2,consts:function(){let n,_,o;return n="" + "\ufffd0\ufffd" + "",_="Not Syncing",o="Error",[[4,"ngIf"],[1,"me-2"],["metadataSyncPopover",""],["upToDateTpl",""],["showMetadataStatus",""],[4,"ngIf","ngIfElse"],[1,"mt-4","fw-bold"],["class","badge badge-info",4,"ngIf","ngIfElse"],[1,"text-center"],[4,"ngFor","ngForOf"],[1,"badge","badge-success"],["class","lead text-primary","placement","top","popoverClass","rgw-overview-card-popover",3,"ngbPopover",4,"ngIf"],["placement","top","popoverClass","rgw-overview-card-popover",1,"lead","text-primary",3,"ngbPopover"],n,_,[1,"text-danger",3,"ngClass"],["placement","top","popoverClass","rgw-overview-card-popover",1,"lead","text-danger",3,"ngbPopover"],o,[1,"badge","badge-info"]]},template:function(_,o){1&_&&(e.YNc(0,Dl,7,0,"span",0),e.YNc(1,Jl,15,4,"span",0)),2&_&&(e.Q6J("ngIf","no sync (zone is master)"===o.metadataSyncInfo),e.xp6(1),e.Q6J("ngIf","no sync (zone is master)"!==o.metadataSyncInfo))},dependencies:[T.mk,T.sg,T.O5,G.o8,T.rS,h_.h],styles:["ul[_ngcontent-%COMP%]{align-items:center;display:flex;flex-direction:column;list-style-type:none}"]}),t})();function Vl(t,n){if(1&t&&(e.TgZ(0,"span")(1,"b"),e._uU(2),e.ALo(3,"titlecase"),e.qZA(),e._uU(4),e.ALo(5,"titlecase"),e.qZA()),2&t){const _=e.oxw(2).$implicit;e.xp6(2),e.Oqu(e.lcZ(3,2,_.split(": ")[0])),e.xp6(2),e.hij(":",e.lcZ(5,4,_.split(": ")[1])," ")}}function jl(t,n){if(1&t&&(e.TgZ(0,"span")(1,"b"),e._uU(2),e.ALo(3,"titlecase"),e.qZA()()),2&t){const _=e.oxw(2).$implicit;e.xp6(2),e.Oqu(e.lcZ(3,1,_))}}function er(t,n){if(1&t&&(e.TgZ(0,"span"),e.YNc(1,Vl,6,6,"span",9),e.YNc(2,jl,4,3,"span",9),e.qZA()),2&t){const _=e.oxw().$implicit;e.xp6(1),e.Q6J("ngIf",null==_?null:_.includes(":")),e.xp6(1),e.Q6J("ngIf",!(null!=_&&_.includes(":")))}}function _r(t,n){if(1&t&&(e.TgZ(0,"span"),e._uU(1),e.ALo(2,"titlecase"),e.qZA()),2&t){const _=e.oxw().$implicit;e.xp6(1),e.hij(" ",e.lcZ(2,1,_)," ")}}function tr(t,n){if(1&t&&(e.TgZ(0,"li"),e.YNc(1,er,3,2,"span",9),e.YNc(2,_r,3,3,"span",9),e.qZA()),2&t){const _=n.$implicit,o=e.oxw(2);e.xp6(1),e.Q6J("ngIf",!(null!=_&&_.includes(o.zone.name)||null!=_&&_.includes(o.zone.syncstatus)||null!=_&&_.includes("failed")||null!=_&&_.includes("error"))),e.xp6(1),e.Q6J("ngIf",(null==_?null:_.includes("failed"))||(null==_?null:_.includes("error")))}}function or(t,n){if(1&t&&(e.TgZ(0,"ul",7)(1,"li")(2,"h5")(3,"b"),e._uU(4,"Sync Status:"),e.qZA()()(),e.YNc(5,tr,3,2,"li",8),e.qZA()),2&t){const _=e.oxw();e.xp6(5),e.Q6J("ngForOf",_.zone.fullSyncStatus)}}function nr(t,n){1&t&&(e.TgZ(0,"li",10),e._uU(1,"Up to Date"),e.qZA())}function ir(t,n){if(1&t&&(e.TgZ(0,"a",12),e.SDv(1,13),e.ALo(2,"titlecase"),e.qZA()),2&t){const _=e.oxw(2),o=e.MAs(1);e.Q6J("ngbPopover",o),e.xp6(2),e.pQV(e.lcZ(2,2,_.zone.syncstatus)),e.QtT(1)}}function sr(t,n){if(1&t&&(e.TgZ(0,"a",12),e.SDv(1,14),e.qZA()),2&t){e.oxw(2);const _=e.MAs(1);e.Q6J("ngbPopover",_)}}function ar(t,n){if(1&t&&(e.YNc(0,ir,3,4,"a",11),e.YNc(1,sr,2,1,"a",11)),2&t){const _=e.oxw();e.Q6J("ngIf","Not Syncing From Zone"!==_.zone.syncstatus),e.xp6(1),e.Q6J("ngIf","Not Syncing From Zone"===_.zone.syncstatus)}}const lr=function(t){return[t]};function rr(t,n){if(1&t&&(e.TgZ(0,"li"),e._UZ(1,"i",15),e.TgZ(2,"a",16),e.SDv(3,17),e.qZA()()),2&t){const _=e.oxw(),o=e.MAs(1);e.xp6(1),e.Q6J("ngClass",e.VKq(2,lr,_.icons.danger)),e.xp6(1),e.Q6J("ngbPopover",o)}}function cr(t,n){if(1&t&&(e.TgZ(0,"li",18),e._uU(1),e.ALo(2,"relativeDate"),e.qZA()),2&t){const _=e.oxw();e.xp6(1),e.Oqu(e.lcZ(2,1,_.zone.timestamp))}}let dr=(()=>{class t{constructor(){this.icons=$.P,this.zone={}}}return t.\u0275fac=function(_){return new(_||t)},t.\u0275cmp=e.Xpm({type:t,selectors:[["cd-rgw-sync-data-info"]],inputs:{zone:"zone"},decls:14,vars:4,consts:function(){let n,_,o;return n="" + "\ufffd0\ufffd" + "",_="Not Syncing",o="Error",[["syncPopover",""],[1,"me-2"],["upToDateTpl",""],["showStatus",""],[4,"ngIf","ngIfElse"],[1,"mt-4","fw-bold"],["class","badge badge-info",4,"ngIf","ngIfElse"],[1,"text-center"],[4,"ngFor","ngForOf"],[4,"ngIf"],[1,"badge","badge-success"],["class","lead text-primary","placement","top","popoverClass","rgw-overview-card-popover",3,"ngbPopover",4,"ngIf"],["placement","top","popoverClass","rgw-overview-card-popover",1,"lead","text-primary",3,"ngbPopover"],n,_,[1,"text-danger",3,"ngClass"],["placement","top","popoverClass","rgw-overview-card-popover",1,"lead","text-danger",3,"ngbPopover"],o,[1,"badge","badge-info"]]},template:function(_,o){if(1&_&&(e.YNc(0,or,6,1,"ng-template",null,0,e.W1O),e.TgZ(2,"ul",1),e.YNc(3,nr,2,0,"ng-template",null,2,e.W1O),e.YNc(5,ar,2,2,"ng-template",null,3,e.W1O),e.TgZ(7,"li")(8,"b"),e._uU(9,"Status:"),e.qZA()(),e.YNc(10,rr,4,4,"li",4),e.TgZ(11,"li",5),e._uU(12," Last Synced: "),e.qZA(),e.YNc(13,cr,3,3,"li",6),e.qZA()),2&_){const i=e.MAs(4),s=e.MAs(6);e.xp6(10),e.Q6J("ngIf",(null==o.zone.syncstatus?null:o.zone.syncstatus.includes("failed"))||(null==o.zone.syncstatus?null:o.zone.syncstatus.includes("error")))("ngIfElse",s),e.xp6(3),e.Q6J("ngIf",o.zone.timestamp)("ngIfElse",i)}},dependencies:[T.mk,T.sg,T.O5,G.o8,T.rS,h_.h],styles:["ul[_ngcontent-%COMP%]{align-items:center;display:flex;flex-direction:column;list-style-type:none}"]}),t})();function ur(t,n){if(1&t&&e._UZ(0,"cd-card-row",25),2&t){const _=e.oxw();e.Q6J("data",_.rgwDaemonCount)}}function gr(t,n){if(1&t&&e._UZ(0,"cd-card-row",26),2&t){const _=e.oxw();e.Q6J("data",_.rgwRealmCount)}}function Rr(t,n){if(1&t&&e._UZ(0,"cd-card-row",27),2&t){const _=e.oxw();e.Q6J("data",_.rgwZonegroupCount)}}function Tr(t,n){if(1&t&&e._UZ(0,"cd-card-row",28),2&t){const _=e.oxw();e.Q6J("data",_.rgwZoneCount)}}function Er(t,n){if(1&t&&e._UZ(0,"cd-card-row",29),2&t){const _=e.oxw();e.Q6J("data",_.rgwBucketCount)}}function fr(t,n){if(1&t&&e._UZ(0,"cd-card-row",30),2&t){const _=e.oxw();e.Q6J("data",_.UserCount)}}function pr(t,n){if(1&t&&e._UZ(0,"cd-card-row",31),2&t){const _=e.oxw();e.Q6J("data",_.objectCount)}}function mr(t,n){1&t&&(e.TgZ(0,"span",32)(1,"cd-alert-panel",33),e.tHW(2,34),e._UZ(3,"cd-doc",35),e.N_p(),e.qZA()())}const __=function(t,n,_){return[t,n,_]};function Mr(t,n){if(1&t&&(e.TgZ(0,"span",36),e._UZ(1,"i",37),e.qZA()),2&t){const _=e.oxw();e.xp6(1),e.Q6J("ngClass",e.kEZ(1,__,_.icons.large3x,_.icons.spinner,_.icons.spin))}}function Sr(t,n){if(1&t&&(e.TgZ(0,"span",36),e._UZ(1,"i",37),e.qZA()),2&t){const _=e.oxw(3);e.xp6(1),e.Q6J("ngClass",e.kEZ(1,__,_.icons.large3x,_.icons.spinner,_.icons.spin))}}function Cr(t,n){if(1&t&&(e.TgZ(0,"span",36),e._UZ(1,"cd-rgw-sync-primary-zone",43),e.qZA()),2&t){const _=e.oxw(3);e.xp6(1),e.Q6J("realm",_.realm)("zonegroup",_.zonegroup)("zone",_.zone)}}function Or(t,n){if(1&t&&(e.TgZ(0,"span",36),e._UZ(1,"i",37),e.qZA()),2&t){const _=e.oxw(3);e.xp6(1),e.Q6J("ngClass",e.kEZ(1,__,_.icons.large3x,_.icons.spinner,_.icons.spin))}}function Fr(t,n){if(1&t&&(e.TgZ(0,"span",51),e._UZ(1,"cd-rgw-sync-metadata-info",52),e.qZA()),2&t){const _=e.oxw(6);e.xp6(1),e.Q6J("metadataSyncInfo",_.metadataSyncInfo)}}function Pr(t,n){if(1&t&&(e.TgZ(0,"span",53),e._UZ(1,"cd-rgw-sync-data-info",54),e.qZA()),2&t){const _=e.oxw(2).$implicit;e.xp6(1),e.Q6J("zone",_)}}const Nr=function(t){return{"border-left":t}};function Gr(t,n){if(1&t&&(e.TgZ(0,"cd-card",48),e.YNc(1,Fr,2,1,"span",49),e.YNc(2,Pr,2,1,"span",50),e.qZA()),2&t){const _=n.$implicit;e.Q6J("cardTitle",_)("ngClass",e.VKq(6,Nr,"Data Sync"===_))("alignItemsCenter",!0)("justifyContentCenter",!0),e.xp6(1),e.Q6J("ngIf","Metadata Sync"===_),e.xp6(1),e.Q6J("ngIf","Data Sync"===_)}}function Ar(t,n){if(1&t&&(e.TgZ(0,"cd-card",45)(1,"div",46),e.YNc(2,Gr,3,8,"cd-card",47),e.qZA()()),2&t){const _=n.$implicit,o=e.oxw(4);e.s9C("cardTitle",_.name),e.xp6(2),e.Q6J("ngForOf",o.chartTitles)}}function Ir(t,n){if(1&t&&(e.TgZ(0,"div",1),e.YNc(1,Ar,3,2,"cd-card",44),e.qZA()),2&t){const _=e.oxw(3);e.xp6(1),e.Q6J("ngForOf",_.replicaZonesInfo)("ngForTrackBy",_.trackByFn)}}function br(t,n){if(1&t&&(e.TgZ(0,"div",39)(1,"cd-card",40),e.YNc(2,Sr,2,5,"span",23),e.YNc(3,Cr,2,3,"span",23),e.qZA(),e.TgZ(4,"div",41)(5,"cd-card",42),e.YNc(6,Or,2,5,"span",23),e.YNc(7,Ir,2,2,"div",24),e.qZA()()()),2&t){const _=e.oxw(2);e.xp6(1),e.Q6J("alignItemsCenter",!0)("justifyContentCenter",!0),e.xp6(1),e.Q6J("ngIf",_.loading),e.xp6(1),e.Q6J("ngIf",!_.loading),e.xp6(3),e.Q6J("ngIf",_.loading),e.xp6(1),e.Q6J("ngIf",!_.loading)}}function hr(t,n){if(1&t&&(e.TgZ(0,"div",1),e.YNc(1,br,8,6,"div",38),e.qZA()),2&t){const _=e.oxw(),o=e.MAs(30);e.xp6(1),e.Q6J("ngIf",_.showMultisiteCard)("ngIfElse",o)}}let Lr=(()=>{class t{constructor(_,o,i,s,l,r,d,u,R,O){this.authStorageService=_,this.healthService=o,this.refreshIntervalService=i,this.rgwDaemonService=s,this.rgwRealmService=l,this.rgwZonegroupService=r,this.rgwZoneService=d,this.rgwBucketService=u,this.prometheusService=R,this.rgwMultisiteService=O,this.icons=$.P,this.interval=new N_.w,this.rgwDaemonCount=0,this.rgwRealmCount=0,this.rgwZonegroupCount=0,this.rgwZoneCount=0,this.rgwBucketCount=0,this.objectCount=0,this.UserCount=0,this.totalPoolUsedBytes=0,this.averageObjectSize=0,this.multisiteInfo=[],this.queriesResults={RGW_REQUEST_PER_SECOND:"",BANDWIDTH:"",AVG_GET_LATENCY:"",AVG_PUT_LATENCY:""},this.chartTitles=["Metadata Sync","Data Sync"],this.replicaZonesInfo=[],this.showMultisiteCard=!0,this.loading=!0,this.subject=new Cl.t,this.syncCardLoading=!0,this.permissions=this.authStorageService.getPermissions()}ngOnInit(){this.interval=this.refreshIntervalService.intervalData$.subscribe(()=>{this.daemonSub=this.rgwDaemonService.list().subscribe(_=>{this.rgwDaemonCount=_.length}),this.HealthSub=this.healthService.getClusterCapacity().subscribe(_=>{this.objectCount=_.total_objects,this.totalPoolUsedBytes=_.total_pool_bytes_used,this.averageObjectSize=_.average_object_size}),this.getSyncStatus()}),this.BucketSub=this.rgwBucketService.getTotalBucketsAndUsersLength().subscribe(_=>{this.rgwBucketCount=_.buckets_count,this.UserCount=_.users_count}),this.realmSub=this.rgwRealmService.list().subscribe(_=>{this.rgwRealmCount=_.realms.length}),this.ZonegroupSub=this.rgwZonegroupService.list().subscribe(_=>{this.rgwZonegroupCount=_.zonegroups.length}),this.ZoneSUb=this.rgwZoneService.list().subscribe(_=>{this.rgwZoneCount=_.zones.length}),this.getPrometheusData(this.prometheusService.lastHourDateObject),this.multisiteSyncStatus$=this.subject.pipe((0,Pl.w)(()=>this.rgwMultisiteService.getSyncStatus().pipe((0,Nl.b)(_=>{this.loading=!1,this.replicaZonesInfo=_.dataSyncInfo,this.metadataSyncInfo=_.metadataSyncInfo,0===this.replicaZonesInfo.length&&(this.showMultisiteCard=!1,this.syncCardLoading=!1,this.loading=!1),[this.realm,this.zonegroup,this.zone]=_.primaryZoneData}),(0,a_.K)(_=>(this.showMultisiteCard=!1,this.syncCardLoading=!1,this.loading=!1,_.preventDefault(),(0,ke.of)(!0))))),(0,Gl.d)(1))}ngOnDestroy(){this.interval.unsubscribe(),this.daemonSub.unsubscribe(),this.realmSub.unsubscribe(),this.ZonegroupSub.unsubscribe(),this.ZoneSUb.unsubscribe(),this.BucketSub.unsubscribe(),this.HealthSub.unsubscribe(),this.prometheusService.unsubscribe()}getPrometheusData(_){this.queriesResults=this.prometheusService.getPrometheusQueriesData(_,Fl.p,this.queriesResults,!0)}getSyncStatus(){this.subject.next()}trackByFn(_){return _}}return t.\u0275fac=function(_){return new(_||t)(e.Y36(ce.j),e.Y36(Al.z),e.Y36(Il.s),e.Y36(oe.b),e.Y36(de.y),e.Y36(ge.K),e.Y36(ue.g),e.Y36(Ee.o),e.Y36(Ol.Q),e.Y36(e_.o))},t.\u0275cmp=e.Xpm({type:t,selectors:[["cd-rgw-overview-dashboard"]],decls:34,vars:26,consts:function(){let n;return n=" Multi-site needs to be configured in order to see the multi-site sync status. Please consult the " + "\ufffd#3\ufffd" + "" + "\ufffd/#3\ufffd" + " on how to configure and enable the multi-site functionality. ",[[1,"container-fluid"],[1,"row"],["cardTitle","Inventory","aria-label","Inventory card",1,"col-sm-3","px-3","d-flex"],["link","/rgw/daemon","title","Gateway","summaryType","simplified",3,"data",4,"ngIf"],["link","/rgw/multisite","title","Realm","summaryType","simplified",3,"data",4,"ngIf"],["link","/rgw/multisite","title","Zone Group","summaryType","simplified",3,"data",4,"ngIf"],["link","/rgw/multisite","title","Zone","summaryType","simplified",3,"data",4,"ngIf"],["link","/rgw/bucket","title","Bucket","summaryType","simplified",3,"data",4,"ngIf"],["link","/rgw/user","title","User","summaryType","simplified",3,"data",4,"ngIf"],["title","Object","summaryType","simplified",3,"data",4,"ngIf"],["cardTitle","Performance Statistics","ria-label","Performance Statistics card",1,"col-sm-6","d-flex"],[1,"ms-4","me-4","mt-0"],[3,"selectedTime"],["chartTitle","Requests/sec","dataUnits","","label","Requests/sec",3,"data"],["chartTitle","Latency","dataUnits","ms","label","GET","label2","PUT",3,"data","data2"],["chartTitle","Bandwidth","dataUnits","B","label","GET","label2","PUT",3,"data","data2"],[1,"col-lg-3"],["cardTitle","Used Capacity","aria-label","Used Capacity",1,"col-sm-2","d-flex","w-100","h-50","pb-3",3,"alignItemsCenter","justifyContentCenter"],[1,"ms-4","me-4","text-center"],["cardTitle","Average Object Size","aria-label","Avg Object Size",1,"col-sm-2","d-flex","w-100","h-50","pt-3",3,"alignItemsCenter","justifyContentCenter"],[1,"row","pt-4","pb-4"],["cardTitle","Multi-Site Sync Status"],["notConfigured",""],["class","d-flex justify-content-center",4,"ngIf"],["class","row",4,"ngIf"],["link","/rgw/daemon","title","Gateway","summaryType","simplified",3,"data"],["link","/rgw/multisite","title","Realm","summaryType","simplified",3,"data"],["link","/rgw/multisite","title","Zone Group","summaryType","simplified",3,"data"],["link","/rgw/multisite","title","Zone","summaryType","simplified",3,"data"],["link","/rgw/bucket","title","Bucket","summaryType","simplified",3,"data"],["link","/rgw/user","title","User","summaryType","simplified",3,"data"],["title","Object","summaryType","simplified",3,"data"],[1,"pe-5","ps-5"],["type","info"],n,["section","multisite"],[1,"d-flex","justify-content-center"],[3,"ngClass"],["class","row pt-2",4,"ngIf","ngIfElse"],[1,"row","pt-2"],["cardTitle","Primary Source Zone",1,"col-lg-3","d-flex","justify-content-center","align-primary-zone",3,"alignItemsCenter","justifyContentCenter"],[1,"col-lg-9"],["cardTitle","Source Zones",1,"d-flex","h-100"],[3,"realm","zonegroup","zone"],["cardType","zone","shadowClass","true","class","col-sm-9 col-lg-6 align-replica-zones d-flex pt-4","aria-label","Source Zones Card",3,"cardTitle",4,"ngFor","ngForOf","ngForTrackBy"],["cardType","zone","shadowClass","true","aria-label","Source Zones Card",1,"col-sm-9","col-lg-6","align-replica-zones","d-flex","pt-4",3,"cardTitle"],[1,"row","pb-4","ps-3","pe-3"],["cardType","syncCards","removeBorder","true","class","col-sm-9 col-lg-6","aria-label","Charts Card",3,"cardTitle","ngClass","alignItemsCenter","justifyContentCenter",4,"ngFor","ngForOf"],["cardType","syncCards","removeBorder","true","aria-label","Charts Card",1,"col-sm-9","col-lg-6",3,"cardTitle","ngClass","alignItemsCenter","justifyContentCenter"],["class","me-2 text-center",4,"ngIf"],["class","me-2",4,"ngIf"],[1,"me-2","text-center"],[3,"metadataSyncInfo"],[1,"me-2"],[3,"zone"]]},template:function(_,o){1&_&&(e.TgZ(0,"div",0)(1,"div",1)(2,"cd-card",2),e.YNc(3,ur,1,1,"cd-card-row",3),e.YNc(4,gr,1,1,"cd-card-row",4),e.YNc(5,Rr,1,1,"cd-card-row",5),e.YNc(6,Tr,1,1,"cd-card-row",6),e.YNc(7,Er,1,1,"cd-card-row",7),e.YNc(8,fr,1,1,"cd-card-row",8),e.YNc(9,pr,1,1,"cd-card-row",9),e.qZA(),e.TgZ(10,"cd-card",10)(11,"div",11)(12,"cd-dashboard-time-selector",12),e.NdJ("selectedTime",function(s){return o.getPrometheusData(s)}),e.qZA(),e._UZ(13,"cd-dashboard-area-chart",13)(14,"cd-dashboard-area-chart",14)(15,"cd-dashboard-area-chart",15),e.qZA()(),e.TgZ(16,"div",16)(17,"cd-card",17)(18,"span",18)(19,"h1"),e._uU(20),e.ALo(21,"dimlessBinary"),e.qZA()()(),e.TgZ(22,"cd-card",19)(23,"span",18)(24,"h1"),e._uU(25),e.ALo(26,"dimlessBinary"),e.qZA()()()()(),e.TgZ(27,"div",20)(28,"cd-card",21),e.YNc(29,mr,4,0,"ng-template",null,22,e.W1O),e.YNc(31,Mr,2,5,"span",23),e.YNc(32,hr,2,2,"div",24),e.ALo(33,"async"),e.qZA()()()),2&_&&(e.xp6(3),e.Q6J("ngIf",null!=o.rgwDaemonCount),e.xp6(1),e.Q6J("ngIf",null!=o.rgwRealmCount),e.xp6(1),e.Q6J("ngIf",null!=o.rgwZonegroupCount),e.xp6(1),e.Q6J("ngIf",null!=o.rgwZoneCount),e.xp6(1),e.Q6J("ngIf",null!=o.rgwBucketCount),e.xp6(1),e.Q6J("ngIf",null!=o.UserCount),e.xp6(1),e.Q6J("ngIf",null!=o.objectCount),e.xp6(4),e.Q6J("data",o.queriesResults.RGW_REQUEST_PER_SECOND),e.xp6(1),e.Q6J("data",o.queriesResults.AVG_GET_LATENCY)("data2",o.queriesResults.AVG_PUT_LATENCY),e.xp6(1),e.Q6J("data",o.queriesResults.GET_BANDWIDTH)("data2",o.queriesResults.PUT_BANDWIDTH),e.xp6(2),e.Q6J("alignItemsCenter",!0)("justifyContentCenter",!0),e.xp6(3),e.Oqu(e.lcZ(21,20,o.totalPoolUsedBytes)),e.xp6(2),e.Q6J("alignItemsCenter",!0)("justifyContentCenter",!0),e.xp6(3),e.Oqu(e.lcZ(26,22,o.averageObjectSize)),e.xp6(6),e.Q6J("ngIf",o.loading),e.xp6(1),e.Q6J("ngIf",e.lcZ(33,24,o.multisiteSyncStatus$)))},dependencies:[T.mk,T.sg,T.O5,Re.G,bl.K,hl.A,Ll.e,Wl.S,$l.M,Zl,Kl,dr,T.Ov,Ye.$],styles:["hr[_ngcontent-%COMP%]{margin-bottom:2px;margin-top:2px}.list-group-item[_ngcontent-%COMP%]{border:0}.align-replica-zones[_ngcontent-%COMP%]{margin-left:auto;margin-right:auto;padding-left:2em;padding-right:2em}ul[_ngcontent-%COMP%]{align-items:center;display:flex;flex-direction:column;list-style-type:none}.align-primary-zone[_ngcontent-%COMP%]{padding-left:4em}.border-left[_ngcontent-%COMP%]{border-left:1px solid rgba(0,0,0,.1254901961)}"]}),t})();var Wr=c(46767);let L_=(()=>{class t{}return t.\u0275fac=function(_){return new(_||t)},t.\u0275mod=e.oAB({type:t}),t.\u0275inj=e.cJS({imports:[T.ez,et.m,a.u5,a.UX,_t.B,G.Oz,J.Bz,G.HK,G.dT,o_.b,je.xc,Sl.t,Wr.d]}),t})();const $r=[{path:"",redirectTo:"rbd",pathMatch:"full"},{path:"daemon",component:Xo,data:{breadcrumbs:"Gateways"}},{path:"user",data:{breadcrumbs:"Users"},children:[{path:"",component:ss},{path:I.MQ.CREATE,component:O_,data:{breadcrumbs:I.Qn.CREATE}},{path:`${I.MQ.EDIT}/:uid`,component:O_,data:{breadcrumbs:I.Qn.EDIT}}]},{path:"roles",data:{breadcrumbs:"Roles",resource:"api.rgw.roles@1.0",tabs:[{name:"Users",url:"/rgw/user"},{name:"Roles",url:"/rgw/roles"}]},children:[{path:"",component:j_.c},{path:I.MQ.CREATE,component:as.U,data:{breadcrumbs:I.Qn.CREATE}}]},{path:"bucket",data:{breadcrumbs:"Buckets"},children:[{path:"",component:ho},{path:I.MQ.CREATE,component:d_,data:{breadcrumbs:I.Qn.CREATE}},{path:`${I.MQ.EDIT}/:bid`,component:d_,data:{breadcrumbs:I.Qn.EDIT}}]},{path:"overview",data:{breadcrumbs:"Overview"},children:[{path:"",component:Lr}]},{path:"multisite",children:[{path:"",component:Te}]}];let Zr=(()=>{class t{}return t.\u0275fac=function(_){return new(_||t)},t.\u0275mod=e.oAB({type:t}),t.\u0275inj=e.cJS({imports:[L_,J.Bz.forChild($r)]}),t})()}}]); \ No newline at end of file diff --git a/src/pybind/mgr/dashboard/frontend/dist/en-US/Ceph_Logo.beb815b55d2e7363.svg b/src/pybind/mgr/dashboard/frontend/dist/en-US/Ceph_Logo.beb815b55d2e7363.svg new file mode 100644 index 000000000..9426c300d --- /dev/null +++ b/src/pybind/mgr/dashboard/frontend/dist/en-US/Ceph_Logo.beb815b55d2e7363.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.3fbdf95cd52530d7.gif b/src/pybind/mgr/dashboard/frontend/dist/en-US/ceph_background.3fbdf95cd52530d7.gif new file mode 100644 index 000000000..0f7426ee0 Binary files /dev/null and b/src/pybind/mgr/dashboard/frontend/dist/en-US/ceph_background.3fbdf95cd52530d7.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.23671bdbd055fa7b.woff b/src/pybind/mgr/dashboard/frontend/dist/en-US/forkawesome-webfont.23671bdbd055fa7b.woff new file mode 100644 index 000000000..477da445a Binary files /dev/null and b/src/pybind/mgr/dashboard/frontend/dist/en-US/forkawesome-webfont.23671bdbd055fa7b.woff differ diff --git a/src/pybind/mgr/dashboard/frontend/dist/en-US/forkawesome-webfont.3217b1b06e001045.svg b/src/pybind/mgr/dashboard/frontend/dist/en-US/forkawesome-webfont.3217b1b06e001045.svg new file mode 100644 index 000000000..e99720454 --- /dev/null +++ b/src/pybind/mgr/dashboard/frontend/dist/en-US/forkawesome-webfont.3217b1b06e001045.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.3b3951dce6cf5d60.ttf b/src/pybind/mgr/dashboard/frontend/dist/en-US/forkawesome-webfont.3b3951dce6cf5d60.ttf new file mode 100644 index 000000000..6cf62efb8 Binary files /dev/null and b/src/pybind/mgr/dashboard/frontend/dist/en-US/forkawesome-webfont.3b3951dce6cf5d60.ttf differ diff --git a/src/pybind/mgr/dashboard/frontend/dist/en-US/forkawesome-webfont.c0fee260bb6fd5fd.eot b/src/pybind/mgr/dashboard/frontend/dist/en-US/forkawesome-webfont.c0fee260bb6fd5fd.eot new file mode 100644 index 000000000..b96d208fa Binary files /dev/null and b/src/pybind/mgr/dashboard/frontend/dist/en-US/forkawesome-webfont.c0fee260bb6fd5fd.eot differ diff --git a/src/pybind/mgr/dashboard/frontend/dist/en-US/forkawesome-webfont.d0a4ad9e6369d510.woff2 b/src/pybind/mgr/dashboard/frontend/dist/en-US/forkawesome-webfont.d0a4ad9e6369d510.woff2 new file mode 100644 index 000000000..f3520b533 Binary files /dev/null and b/src/pybind/mgr/dashboard/frontend/dist/en-US/forkawesome-webfont.d0a4ad9e6369d510.woff2 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..f4801f5c6 --- /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.a87f559bb03ca0fb.js b/src/pybind/mgr/dashboard/frontend/dist/en-US/main.a87f559bb03ca0fb.js new file mode 100644 index 000000000..feac3d82e --- /dev/null +++ b/src/pybind/mgr/dashboard/frontend/dist/en-US/main.a87f559bb03ca0fb.js @@ -0,0 +1,3 @@ +globalThis.$localize=Object.assign(globalThis.$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(val){const n=val,i=Math.floor(Math.abs(val)),v=val.toString().replace(/^[^.]*\.?/,"").length;if(i===1&&v===0)return 1;return 5}global.ng.common.locales["en"]=["en",[["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","\u2030","\u221E","NaN",":"],["#,##0.###","#,##0%","\xA4#,##0.00","#E0"],"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);; +(self.webpackChunkceph_dashboard=self.webpackChunkceph_dashboard||[]).push([[179],{43155:(E,C)=>{"use strict";C.N=void 0;var r=/^([^\w]*)(javascript|data|vbscript)/im,a=/&#(\w+)(^\w|;)?/g,c=/[\u0000-\u001F\u007F-\u009F\u2000-\u200D\uFEFF]/gim,u=/^([^:]+):/gm,e=[".","/"];C.N=function T(M){var w=function m(M){return M.replace(a,function(w,D){return String.fromCharCode(D)})}(M||"").replace(c,"").trim();if(!w)return"about:blank";if(function f(M){return e.indexOf(M[0])>-1}(w))return w;var D=w.match(u);return D&&r.test(D[0])?"about:blank":w}},62946:(E,C,s)=>{"use strict";s.d(C,{iM:()=>Tf,qr:()=>b1,xc:()=>Av});var r=s(64537),a=s(88692),c=function(L,q){return(c=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(j,Ae){j.__proto__=Ae}||function(j,Ae){for(var St in Ae)Ae.hasOwnProperty(St)&&(j[St]=Ae[St])})(L,q)};function u(L,q){function j(){this.constructor=L}c(L,q),L.prototype=null===q?Object.create(q):(j.prototype=q.prototype,new j)}var e=function(){return e=Object.assign||function(q){for(var j,Ae=1,St=arguments.length;Ae0)&&!(St=Ae.next()).done;)Kt.push(St.value)}catch(Br){ur={error:Br}}finally{try{St&&!St.done&&(j=Ae.return)&&j.call(Ae)}finally{if(ur)throw ur.error}}return Kt}function m(){for(var L=[],q=0;q2&&Fe("box");var j=pr(q);return new ji(L,Eo(j),j.name,!0,j.equals)},shallowBox:function(L,q){return arguments.length>2&&Fe("shallowBox"),jt.box(L,{name:q,deep:!1})},array:function(L,q){arguments.length>2&&Fe("array");var j=pr(q);return new sc(L,Eo(j),j.name)},shallowArray:function(L,q){return arguments.length>2&&Fe("shallowArray"),jt.array(L,{name:q,deep:!1})},map:function(L,q){arguments.length>2&&Fe("map");var j=pr(q);return new kl(L,Eo(j),j.name)},shallowMap:function(L,q){return arguments.length>2&&Fe("shallowMap"),jt.map(L,{name:q,deep:!1})},set:function(L,q){arguments.length>2&&Fe("set");var j=pr(q);return new Ee(L,Eo(j),j.name)},object:function(L,q,j){return"string"==typeof arguments[1]&&Fe("object"),function qu(L,q,j,Ae){var Kt=(Ae=pr(Ae)).defaultDecorator||(!1===Ae.deep?qr:po);Tt(L),Gt(L,Ae.name,Kt.enhancer),Is();try{for(var St in q){var ur=Object.getOwnPropertyDescriptor(q,St),Ii=(j&&St in j?j[St]:ur.get?Ie:Kt)(L,St,ur,!0);Ii&&Object.defineProperty(L,St,Ii)}}finally{la()}return L}({},L,q,pr(j))},shallowObject:function(L,q){return"string"==typeof arguments[1]&&Fe("shallowObject"),jt.object(L,{},{name:q,deep:!1})},ref:qr,shallow:$i,deep:po,struct:Hi},jt=function Dn(L,q,j){if("string"==typeof arguments[1])return po.apply(null,arguments);if(El(L))return L;var Ae=fe(L)?jt.object(L,q,j):Array.isArray(L)?jt.array(L,q):Le(L)?jt.map(L,q):Pt(L)?jt.set(L,q):L;if(Ae!==L)return Ae;$(!1)};function Fe(L){$("Expected one or two arguments to observable."+L+". Did you accidentally try to use observable."+L+" as decorator?")}Object.keys(Hn).forEach(function(L){return jt[L]=Hn[L]});var Ie=wn(!1,function(L,q,j,Ae,St){!function kn(L,q,j){var Ae=Gt(L);j.name=Ae.name+"."+q,j.context=L,Ae.values[q]=new Po(j),Object.defineProperty(L,q,function Go(L){return Xr[L]||(Xr[L]={configurable:Bn.computedConfigurable,enumerable:!1,get:function(){return Rr(this).read(this,L)},set:function(q){Rr(this).write(this,L,q)}})}(q))}(L,q,e({get:j.get,set:j.set},St[0]||{}))}),et=Ie({equals:jr.structural}),ze=function(q,j,Ae){if("string"==typeof j||null!==q&&"object"==typeof q&&1===arguments.length)return Ie.apply(null,arguments);var St="object"==typeof j?j:{};return St.get=q,St.set="function"==typeof j?j:St.set,St.name=St.name||q.name||"",new Po(St)};ze.struct=et;var an=(()=>{return(L=an||(an={}))[L.NOT_TRACKING=-1]="NOT_TRACKING",L[L.UP_TO_DATE=0]="UP_TO_DATE",L[L.POSSIBLY_STALE=1]="POSSIBLY_STALE",L[L.STALE=2]="STALE",an;var L})(),lt=(()=>{return(L=lt||(lt={}))[L.NONE=0]="NONE",L[L.LOG=1]="LOG",L[L.BREAK=2]="BREAK",lt;var L})(),Rt=function L(q){this.cause=q};function Pe(L){return L instanceof Rt}function qn(L){switch(L.dependenciesState){case an.UP_TO_DATE:return!1;case an.NOT_TRACKING:case an.STALE:return!0;case an.POSSIBLY_STALE:for(var q=dn(),j=L.observing,Ae=j.length,St=0;St0;Bn.computationDepth>0&&q&&$(!1),!Bn.allowStateChanges&&(q||"strict"===Bn.enforceActions)&&$(!1)}function Pr(L,q,j){var Ae=Ot(!0);wr(L),L.newObserving=new Array(L.observing.length+100),L.unboundDepsCount=0,L.runId=++Bn.runId;var Kt,St=Bn.trackingDerivation;if(Bn.trackingDerivation=L,!0===Bn.disableErrorBoundaries)Kt=q.call(j);else try{Kt=q.call(j)}catch(ur){Kt=new Rt(ur)}return Bn.trackingDerivation=St,function Zn(L){for(var q=L.observing,j=L.observing=L.newObserving,Ae=an.UP_TO_DATE,St=0,Kt=L.unboundDepsCount,ur=0;urAe&&(Ae=Br.dependenciesState);for(j.length=St,L.newObserving=null,Kt=q.length;Kt--;)0===(Br=q[Kt]).diffValue&&ss(Br,L),Br.diffValue=0;for(;St--;){var Br;1===(Br=j[St]).diffValue&&(Br.diffValue=0,jo(Br,L))}Ae!==an.UP_TO_DATE&&(L.dependenciesState=Ae,L.onBecomeStale())}(L),mn(Ae),Kt}function nr(L){var q=L.observing;L.observing=[];for(var j=q.length;j--;)ss(q[j],L);L.dependenciesState=an.NOT_TRACKING}function Zt(L){var q=dn(),j=L();return Ge(q),j}function dn(){var L=Bn.trackingDerivation;return Bn.trackingDerivation=null,L}function Ge(L){Bn.trackingDerivation=L}function Ot(L){var q=Bn.allowStateReads;return Bn.allowStateReads=L,q}function mn(L){Bn.allowStateReads=L}function wr(L){if(L.dependenciesState!==an.UP_TO_DATE){L.dependenciesState=an.UP_TO_DATE;for(var q=L.observing,j=q.length;j--;)q[j].lowestObserverState=an.UP_TO_DATE}}var Ti=0,Ci=1;function Ai(L,q){var j=function(){return function Ko(L,q,j,Ae){var St=function _s(L,q,j){var Ae=fa()&&!!L,St=0;if(Ae){St=Date.now();var Kt=j&&j.length||0,ur=new Array(Kt);if(Kt>0)for(var Br=0;Br0&&!L.__mobxGlobals&&(Vt=!1),L.__mobxGlobals&&L.__mobxGlobals.version!==(new ro).version&&(Vt=!1),Vt?L.__mobxGlobals?(L.__mobxInstanceCount+=1,L.__mobxGlobals.UNCHANGED||(L.__mobxGlobals.UNCHANGED={}),L.__mobxGlobals):(L.__mobxInstanceCount=1,L.__mobxGlobals=new ro):(setTimeout(function(){$("There are multiple, different versions of MobX active. Make sure MobX is loaded only once or use `configure({ isolateGlobalState: true })`")},1),new ro));function jo(L,q){var j=L.observers.length;j&&(L.observersIndexes[q.__mapid]=j),L.observers[j]=q,L.lowestObserverState>q.dependenciesState&&(L.lowestObserverState=q.dependenciesState)}function ss(L,q){if(1===L.observers.length)L.observers.length=0,gs(L);else{var j=L.observers,Ae=L.observersIndexes,St=j.pop();if(St!==q){var Kt=Ae[q.__mapid]||0;Kt?Ae[St.__mapid]=Kt:delete Ae[St.__mapid],j[Kt]=St}delete Ae[q.__mapid]}}function gs(L){!1===L.isPendingUnobservation&&(L.isPendingUnobservation=!0,Bn.pendingUnobservations.push(L))}function Is(){Bn.inBatch++}function la(){if(0==--Bn.inBatch){hs();for(var L=Bn.pendingUnobservations,q=0;q0&&gs(L),!1)}function da(L,q){if(console.log("[mobx.trace] '"+L.name+"' is invalidated due to a change in: '"+q.name+"'"),L.isTracing===lt.BREAK){var j=[];$a(function Ol(L,q){return Kc(Fr(L,q))}(L),j,1),new Function("debugger;\n/*\nTracing '"+L.name+"'\n\nYou are entering this break point because derivation '"+L.name+"' is being traced and '"+q.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"+(L instanceof Po?L.derivation.toString().replace(/[*]\//g,"/"):"")+"\n\nThe dependencies for this derivation are:\n\n"+j.join("\n")+"\n*/\n ")()}}function $a(L,q,j){q.length>=1e3?q.push("(and many more)"):(q.push(""+new Array(j).join("\t")+L.name),L.dependencies&&L.dependencies.forEach(function(Ae){return $a(Ae,q,j+1)}))}var Rl=function(){function L(q,j,Ae,St){void 0===q&&(q="Reaction@"+W()),void 0===St&&(St=!1),this.name=q,this.onInvalidate=j,this.errorHandler=Ae,this.requiresObservable=St,this.observing=[],this.newObserving=[],this.dependenciesState=an.NOT_TRACKING,this.diffValue=0,this.runId=0,this.unboundDepsCount=0,this.__mapid="#"+W(),this.isDisposed=!1,this._isScheduled=!1,this._isTrackPending=!1,this._isRunning=!1,this.isTracing=lt.NONE}return L.prototype.onBecomeStale=function(){this.schedule()},L.prototype.schedule=function(){this._isScheduled||(this._isScheduled=!0,Bn.pendingReactions.push(this),hs())},L.prototype.isScheduled=function(){return this._isScheduled},L.prototype.runReaction=function(){if(!this.isDisposed){if(Is(),this._isScheduled=!1,qn(this)){this._isTrackPending=!0;try{this.onInvalidate(),this._isTrackPending&&fa()&&Xo({name:this.name,type:"scheduled-reaction"})}catch(q){this.reportExceptionInDerivation(q)}}la()}},L.prototype.track=function(q){Is();var Ae,j=fa();j&&(Ae=Date.now(),No({name:this.name,type:"reaction"})),this._isRunning=!0;var St=Pr(this,q,void 0);this._isRunning=!1,this._isTrackPending=!1,this.isDisposed&&nr(this),Pe(St)&&this.reportExceptionInDerivation(St.cause),j&&ns({time:Date.now()-Ae}),la()},L.prototype.reportExceptionInDerivation=function(q){var j=this;if(this.errorHandler)this.errorHandler(q,this);else{if(Bn.disableErrorBoundaries)throw q;var Ae="[mobx] Encountered an uncaught exception that was thrown by a reaction or observer component, in: '"+this+"'";Bn.suppressReactionErrors?console.warn("[mobx] (error in reaction '"+this.name+"' suppressed, fix error of causing action below)"):console.error(Ae,q),fa()&&Xo({type:"error",name:this.name,message:Ae,error:""+q}),Bn.globalReactionErrorHandlers.forEach(function(St){return St(q,j)})}},L.prototype.dispose=function(){this.isDisposed||(this.isDisposed=!0,this._isRunning||(Is(),nr(this),la()))},L.prototype.getDisposer=function(){var q=this.dispose.bind(this);return q.$mobx=this,q},L.prototype.toString=function(){return"Reaction["+this.name+"]"},L.prototype.trace=function(q){void 0===q&&(q=!1),function gc(){for(var L=[],q=0;q0||Bn.isRunningReactions||Ts($s)}function $s(){Bn.isRunningReactions=!0;for(var L=Bn.pendingReactions,q=0;L.length>0;){++q===Ha&&(console.error("Reaction doesn't converge to a stable state after "+Ha+" iterations. Probably there is a cycle in the reactive function: "+L[0]),L.splice(0));for(var j=L.splice(0),Ae=0,St=j.length;Ae",q):2===arguments.length&&"function"==typeof j?Ai(q,j):1===arguments.length&&"string"==typeof q?io(q):!0!==St?io(j).apply(null,arguments):void(q[j]=Ai(q.name||j,Ae.value))};function gn(L,q,j){ge(L,q,Ai(q,j.bind(L)))}function vi(L,q){void 0===q&&(q=w);var St,j=q&&q.name||L.name||"Autorun@"+W();if(q.scheduler||q.delay){var Kt=Xi(q),ur=!1;St=new Rl(j,function(){ur||(ur=!0,Kt(function(){ur=!1,St.isDisposed||St.track(Br)}))},q.onError,q.requiresObservable)}else St=new Rl(j,function(){this.track(Br)},q.onError,q.requiresObservable);function Br(){L(St)}return St.schedule(),St.getDisposer()}ie.bound=function Tn(L,q,j,Ae){return!0===Ae?(gn(L,q,j.value),null):j?{configurable:!0,enumerable:!1,get:function(){return gn(this,q,j.value||j.initializer.call(this)),this[q]},set:zr}:{enumerable:!1,configurable:!0,set:function(St){gn(this,q,St)},get:function(){}}};var Bi=function(L){return L()};function Xi(L){return L.scheduler?L.scheduler:L.delay?function(q){return setTimeout(q,L.delay)}:Bi}function ws(L,q,j){void 0===j&&(j=w),"boolean"==typeof j&&(j={fireImmediately:j});var ms,Ae=j.name||"Reaction@"+W(),St=ie(Ae,j.onError?function ds(L,q){return function(){try{return q.apply(this,arguments)}catch(j){L.call(this,j)}}}(j.onError,q):q),Kt=!j.scheduler&&!j.delay,ur=Xi(j),Br=!0,Ii=!1,vs=j.compareStructural?jr.structural:j.equals||jr.default,Ks=new Rl(Ae,function(){Br||Kt?Vl():Ii||(Ii=!0,ur(Vl))},j.onError,j.requiresObservable);function Vl(){if(Ii=!1,!Ks.isDisposed){var Xu=!1;Ks.track(function(){var Fu=L(Ks);Xu=Br||!vs(ms,Fu),ms=Fu}),Br&&j.fireImmediately&&St(ms,Ks),!Br&&!0===Xu&&St(ms,Ks),Br&&(Br=!1)}}return Ks.schedule(),Ks.getDisposer()}function Js(L,q,j){return Ll("onBecomeUnobserved",L,q,j)}function Ll(L,q,j,Ae){var St="function"==typeof Ae?Fr(q,j):Fr(q),Kt="function"==typeof Ae?Ae:j,ur=St[L];return"function"!=typeof ur?$(!1):(St[L]=function(){ur.call(this),Kt.call(this)},function(){St[L]=ur})}function Kc(L){var q={name:L.name};return L.observing&&L.observing.length>0&&(q.dependencies=function ce(L){var q=[];return L.forEach(function(j){-1===q.indexOf(j)&&q.push(j)}),q}(L.observing).map(Kc)),q}function El(L){return 1!==arguments.length&&$(!1),function ua(L,q){if(null==L)return!1;if(void 0!==q){if(Gr(L)){var j=L.$mobx;return j.values&&!!j.values[q]}return!1}return Gr(L)||!!L.$mobx||xn(L)||Aa(L)||ko(L)}(L)}function Al(L,q){void 0===q&&(q=void 0),Is();try{return L.apply(q)}finally{la()}}function bt(L){return void 0!==L.interceptors&&L.interceptors.length>0}function pt(L,q){var j=L.interceptors||(L.interceptors=[]);return j.push(q),de(function(){var Ae=j.indexOf(q);-1!==Ae&&j.splice(Ae,1)})}function Je(L,q){var j=dn();try{var Ae=L.interceptors;if(Ae)for(var St=0,Kt=Ae.length;St0}function fi(L,q){var j=L.changeListeners||(L.changeListeners=[]);return j.push(q),de(function(){var Ae=j.indexOf(q);-1!==Ae&&j.splice(Ae,1)})}function To(L,q){var j=dn(),Ae=L.changeListeners;if(Ae){for(var St=0,Kt=(Ae=Ae.slice()).length;St0?q.map(this.dehancer):q},L.prototype.intercept=function(q){return pt(this,q)},L.prototype.observe=function(q,j){return void 0===j&&(j=!1),j&&q({object:this.array,type:"splice",index:0,added:this.values.slice(),addedCount:this.values.length,removed:[],removedCount:0}),fi(this,q)},L.prototype.getArrayLength=function(){return this.atom.reportObserved(),this.values.length},L.prototype.setArrayLength=function(q){if("number"!=typeof q||q<0)throw new Error("[mobx.array] Out of range: "+q);var j=this.values.length;if(q!==j)if(q>j){for(var Ae=new Array(q-j),St=0;St0&&q+j+1>Hs&&ec(q+j+1)},L.prototype.spliceWithArray=function(q,j,Ae){var St=this;Pn(this.atom);var Kt=this.values.length;if(void 0===q?q=0:q>Kt?q=Kt:q<0&&(q=Math.max(0,Kt+q)),j=1===arguments.length?Kt-q:null==j?0:Math.max(0,Math.min(j,Kt-q)),void 0===Ae&&(Ae=M),bt(this)){var ur=Je(this,{object:this.array,type:"splice",index:q,removedCount:j,added:Ae});if(!ur)return M;j=ur.removedCount,Ae=ur.added}Ae=0===Ae.length?Ae:Ae.map(function(ms){return St.enhancer(ms,void 0)}),this.updateArrayLength(Kt,Ae.length-j);var Ii=this.spliceItemsIntoValues(q,j,Ae);return(0!==j||0!==Ae.length)&&this.notifyArraySplice(q,Ae,Ii),this.dehanceValues(Ii)},L.prototype.spliceItemsIntoValues=function(q,j,Ae){var St;if(Ae.length<1e4)return(St=this.values).splice.apply(St,m([q,j],Ae));var Kt=this.values.slice(q,q+j);return this.values=this.values.slice(0,q).concat(Ae,this.values.slice(q+j)),Kt},L.prototype.notifyArrayChildUpdate=function(q,j,Ae){var St=!this.owned&&fa(),Kt=en(this),ur=Kt||St?{object:this.array,type:"update",index:q,newValue:j,oldValue:Ae}:null;St&&No(e({},ur,{name:this.atom.name})),this.atom.reportChanged(),Kt&&To(this,ur),St&&ns()},L.prototype.notifyArraySplice=function(q,j,Ae){var St=!this.owned&&fa(),Kt=en(this),ur=Kt||St?{object:this.array,type:"splice",index:q,removed:Ae,added:j,removedCount:Ae.length,addedCount:j.length}:null;St&&No(e({},ur,{name:this.atom.name})),this.atom.reportChanged(),Kt&&To(this,ur),St&&ns()},L}(),sc=function(L){function q(j,Ae,St,Kt){void 0===St&&(St="ObservableArray@"+W()),void 0===Kt&&(Kt=!1);var ur=L.call(this)||this,Br=new zl(St,Ae,ur,Kt);if(Et(ur,"$mobx",Br),j&&j.length){var Ii=ti(!0);ur.spliceWithArray(0,0,j),Vr(Ii)}return mi&&Object.defineProperty(Br.array,"0",hu),ur}return u(q,L),q.prototype.intercept=function(j){return this.$mobx.intercept(j)},q.prototype.observe=function(j,Ae){return void 0===Ae&&(Ae=!1),this.$mobx.observe(j,Ae)},q.prototype.clear=function(){return this.splice(0)},q.prototype.concat=function(){for(var j=[],Ae=0;Ae-1&&(this.splice(Ae,1),!0)},q.prototype.move=function(j,Ae){function St(Br){if(Br<0)throw new Error("[mobx.array] Index out of bounds: "+Br+" is negative");var Ii=this.$mobx.values.length;if(Br>=Ii)throw new Error("[mobx.array] Index out of bounds: "+Br+" is not smaller than "+Ii)}if(St.call(this,j),St.call(this,Ae),j!==Ae){var ur,Kt=this.$mobx.values;ur=j0){if(++q>=Ri)return arguments[0]}else q=0;return L.apply(void 0,arguments)}}(Xn);const wl=Ms,Qa=function Ho(L,q){return wl(je(L,q,Pa),L+"")};var rn=s(15131),Jl=s(2951),le=s(66224);const De=function ae(L,q,j){(void 0!==j&&!(0,le.Z)(L[q],j)||void 0===j&&!(q in L))&&(0,Jl.Z)(L,q,j)};var zt=function Ve(L){return function(q,j,Ae){for(var St=-1,Kt=Object(q),ur=Ae(q),Br=ur.length;Br--;){var Ii=ur[L?Br:++St];if(!1===j(Kt[Ii],Ii,Kt))break}return q}}();const Qt=zt;var Gn=s(27672),Er=s(1044),Nr=s(36889),Mi=s(42542),ao=s(40591),Jo=s(34654),rs=s(18402),ys=s(6539);var eu=s(25014),mu=s(58209),wu=s(4214),Rc=s(98286),fu=s(11595),vc=Function.prototype.toString,La=Object.prototype.hasOwnProperty,al=vc.call(Object);const xa=function rl(L){if(!(0,ys.Z)(L)||"[object Object]"!=(0,Rc.Z)(L))return!1;var q=(0,fu.Z)(L);if(null===q)return!0;var j=La.call(q,"constructor")&&q.constructor;return"function"==typeof j&&j instanceof j&&vc.call(j)==al};var Tu=s(14803);const Pu=function En(L,q){if(("constructor"!==q||"function"!=typeof L[q])&&"__proto__"!=q)return L[q]};var za=s(57640),Va=s(34673);const Hc=function ld(L,q,j,Ae,St,Kt,ur){var Br=Pu(L,j),Ii=Pu(q,j),ms=ur.get(Ii);if(ms)De(L,j,ms);else{var vs=Kt?Kt(Br,Ii,j+"",L,q,ur):void 0,Ks=void 0===vs;if(Ks){var Vl=(0,Jo.Z)(Ii),Xu=!Vl&&(0,eu.Z)(Ii),Fu=!Vl&&!Xu&&(0,Tu.Z)(Ii);vs=Ii,Vl||Xu||Fu?(0,Jo.Z)(Br)?vs=Br:function Ps(L){return(0,ys.Z)(L)&&(0,rs.Z)(L)}(Br)?vs=(0,Nr.Z)(Br):Xu?(Ks=!1,vs=(0,Gn.Z)(Ii,!0)):Fu?(Ks=!1,vs=(0,Er.Z)(Ii,!0)):vs=[]:xa(Ii)||(0,ao.Z)(Ii)?(vs=Br,(0,ao.Z)(Br)?vs=function Os(L){return(0,za.Z)(L,(0,Va.Z)(L))}(Br):(!(0,wu.Z)(Br)||(0,mu.Z)(Br))&&(vs=(0,Mi.Z)(Ii))):Ks=!1}Ks&&(ur.set(Ii,vs),St(vs,Ii,Ae,Kt,ur),ur.delete(Ii)),De(L,j,vs)}},ud=function Vu(L,q,j,Ae,St){L!==q&&Qt(q,function(Kt,ur){if(St||(St=new rn.Z),(0,wu.Z)(Kt))Hc(L,q,ur,j,Vu,Ae,St);else{var Br=Ae?Ae(Pu(L,ur),Kt,ur+"",L,q,St):void 0;void 0===Br&&(Br=Kt),De(L,ur,Br)}},Va.Z)},tf=function md(L,q,j,Ae,St,Kt){return(0,wu.Z)(L)&&(0,wu.Z)(q)&&(Kt.set(q,L),ud(L,q,void 0,md,Kt),Kt.delete(q)),L};var Uf=s(28078);const Uc=function Mu(L,q,j){if(!(0,wu.Z)(j))return!1;var Ae=typeof q;return!!("number"==Ae?(0,rs.Z)(j)&&(0,Uf.Z)(q,j.length):"string"==Ae&&q in j)&&(0,le.Z)(j[q],L)};var ip=function Zu(L){return Qa(function(q,j){var Ae=-1,St=j.length,Kt=St>1?j[St-1]:void 0,ur=St>2?j[2]:void 0;for(Kt=L.length>3&&"function"==typeof Kt?(St--,Kt):void 0,ur&&Uc(j[0],j[1],ur)&&(Kt=St<3?void 0:Kt,St=1),q=Object(q);++AeSt?0:St+q),(j=j>St?St:j)<0&&(j+=St),St=q>j?0:j-q>>>0,q>>>=0;for(var Kt=Array(St);++Ae0&&j(Br)?q>1?Nl(Br,q-1,j,Ae,St):(0,Na.Z)(St,Br):Ae||(St[St.length]=Br)}return St},wa=function ac(L){return null!=L&&L.length?Qu(L,1):[]},yc=function nc(L){return wl(je(L,void 0,wa),L+"")};var Gc=s(23359),ee=yc(function(L,q){var j={};if(null==L)return j;var Ae=!1;q=Wu(q,function(Kt){return Kt=N(Kt,L),Ae||(Ae=Kt.length>1),Kt}),(0,za.Z)(L,(0,Gc.Z)(L),j),Ae&&(j=(0,wt.Z)(j,7,ma));for(var St=q.length;St--;)As(j,q[St]);return j});const Ce=ee;const Gi=function Ur(L,q){for(var j=-1,Ae=null==L?0:L.length;++jBr))return!1;var ms=Kt.get(L),vs=Kt.get(q);if(ms&&vs)return ms==q&&vs==L;var Ks=-1,Vl=!0,Xu=2&j?new T_:void 0;for(Kt.set(L,q),Kt.set(q,L);++Ks-1?St[Kt?q[ur]:ur]:void 0}}(function wp(L,q,j){var Ae=null==L?0:L.length;if(!Ae)return-1;var St=null==j?0:wd(j);return St<0&&(St=w_(Ae+St,0)),ih(L,up(q),St)});const pp=sh;const Sf=function Ef(L){return"string"==typeof L||!(0,Jo.Z)(L)&&(0,ys.Z)(L)&&"[object String]"==(0,Rc.Z)(L)};var Vp=s(40309);const ah=function(){return Vp.Z.Date.now()};var qh=Math.max,N_=Math.min;const em=function Qc(L,q,j){var Ae=!0,St=!0;if("function"!=typeof L)throw new TypeError("Expected a function");return(0,wu.Z)(j)&&(Ae="leading"in j?!!j.leading:Ae,St="trailing"in j?!!j.trailing:St),function wh(L,q,j){var Ae,St,Kt,ur,Br,Ii,ms=0,vs=!1,Ks=!1,Vl=!0;if("function"!=typeof L)throw new TypeError("Expected a function");function Xu(Nd){var mp=Ae,wc=St;return Ae=St=void 0,ms=Nd,ur=L.apply(wc,mp)}function af(Nd){var mp=Nd-Ii;return void 0===Ii||mp>=q||mp<0||Ks&&Nd-ms>=Kt}function lf(){var Nd=ah();if(af(Nd))return m_(Nd);Br=setTimeout(lf,function Oc(Nd){var pd=q-(Nd-Ii);return Ks?N_(pd,Kt-(Nd-ms)):pd}(Nd))}function m_(Nd){return Br=void 0,Vl&&Ae?Xu(Nd):(Ae=St=void 0,ur)}function Wd(){var Nd=ah(),mp=af(Nd);if(Ae=arguments,St=this,Ii=Nd,mp){if(void 0===Br)return function Fu(Nd){return ms=Nd,Br=setTimeout(lf,q),vs?Xu(Nd):ur}(Ii);if(Ks)return clearTimeout(Br),Br=setTimeout(lf,q),Xu(Ii)}return void 0===Br&&(Br=setTimeout(lf,q)),ur}return q=Rp(q)||0,(0,wu.Z)(j)&&(vs=!!j.leading,Kt=(Ks="maxWait"in j)?qh(Rp(j.maxWait)||0,q):Kt,Vl="trailing"in j?!!j.trailing:Vl),Wd.cancel=function Hh(){void 0!==Br&&clearTimeout(Br),ms=0,Ae=Ii=St=Br=void 0},Wd.flush=function Uh(){return void 0===Br?ur:m_(ah())},Wd}(L,q,{leading:Ae,maxWait:q,trailing:St})},lh=function _p(L){return L!=L},Im=function im(L){return null==L?[]:function nm(L,q){return Wu(q,function(j){return L[j]})}(L,(0,hf.Z)(L))};var vd=Math.max;const ym=function uh(L,q,j,Ae){L=(0,rs.Z)(L)?L:Im(L),j=j&&!Ae?wd(j):0;var St=L.length;return j<0&&(j=vd(St+j,0)),Sf(L)?j<=St&&L.indexOf(q,j)>-1:!!St&&function Ph(L,q,j){return q==q?function F_(L,q,j){for(var Ae=j-1,St=L.length;++Ae-1};var Np=s(15427);const Cd=function ch(L,q,j,Ae){if(!(0,wu.Z)(L))return L;for(var St=-1,Kt=(q=N(q,L)).length,ur=Kt-1,Br=L;null!=Br&&++St{class L{constructor(j,Ae){this.templateRef=j,this.viewContainer=Ae,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(j){this.dispose=vi(()=>j.detectChanges())}ngOnDestroy(){this.dispose&&this.dispose()}}return L.\u0275fac=function(j){return new(j||L)(r.Y36(r.Rgc),r.Y36(r.s_b))},L.\u0275dir=r.lG2({type:L,selectors:[["","treeMobxAutorun",""]],inputs:{treeMobxAutorun:"treeMobxAutorun"}}),L})();const Tf={TOGGLE_ACTIVE:(L,q,j)=>q&&q.toggleActivated(),TOGGLE_ACTIVE_MULTI:(L,q,j)=>q&&q.toggleActivated(!0),TOGGLE_SELECTED:(L,q,j)=>q&&q.toggleSelected(),ACTIVATE:(L,q,j)=>q.setIsActive(!0),DEACTIVATE:(L,q,j)=>q.setIsActive(!1),SELECT:(L,q,j)=>q.setIsSelected(!0),DESELECT:(L,q,j)=>q.setIsSelected(!1),FOCUS:(L,q,j)=>q.focus(),TOGGLE_EXPANDED:(L,q,j)=>q.hasChildren&&q.toggleExpanded(),EXPAND:(L,q,j)=>q.expand(),COLLAPSE:(L,q,j)=>q.collapse(),DRILL_DOWN:(L,q,j)=>L.focusDrillDown(),DRILL_UP:(L,q,j)=>L.focusDrillUp(),NEXT_NODE:(L,q,j)=>L.focusNextNode(),PREVIOUS_NODE:(L,q,j)=>L.focusPreviousNode(),MOVE_NODE:(L,q,j,{from:Ae,to:St})=>{j.ctrlKey?L.copyNode(Ae,St):L.moveNode(Ae,St)}},fh={mouse:{click:Tf.TOGGLE_ACTIVE,dblClick:null,contextMenu:null,expanderClick:Tf.TOGGLE_EXPANDED,checkboxClick:Tf.TOGGLE_SELECTED,drop:Tf.MOVE_NODE},keys:{39:Tf.DRILL_DOWN,37:Tf.DRILL_UP,40:Tf.NEXT_NODE,38:Tf.PREVIOUS_NODE,32:Tf.TOGGLE_ACTIVE,13:Tf.TOGGLE_ACTIVE}};class sm{constructor(q={}){this.options=q,this.actionMapping=gd({},this.options.actionMapping,fh),q.rtl&&(this.actionMapping.keys[39]=ft(q,["actionMapping","keys",39])||Tf.DRILL_UP,this.actionMapping.keys[37]=ft(q,["actionMapping","keys",37])||Tf.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(q){return this.options.getNodeClone?this.options.getNodeClone(q):Ce(Object.assign({},q.data),["id"])}allowDrop(q,j,Ae){return this.options.allowDrop instanceof Function?this.options.allowDrop(q,j,Ae):void 0===this.options.allowDrop||this.options.allowDrop}allowDrag(q){return this.options.allowDrag instanceof Function?this.options.allowDrag(q):this.options.allowDrag}nodeClass(q){return this.options.nodeClass?this.options.nodeClass(q):""}nodeHeight(q){if(q.data.virtual)return 0;let j=this.options.nodeHeight||22;return"function"==typeof j&&(j=j(q)),j+(0===q.index?2:1)*this.dropSlotHeight}get dropSlotHeight(){return function $t(L){return"number"==typeof L||(0,ys.Z)(L)&&"[object Number]"==(0,Rc.Z)(L)}(this.options.dropSlotHeight)?this.options.dropSlotHeight:2}}const nd={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 Zd=function(L,q,j,Ae){var ur,St=arguments.length,Kt=St<3?q:null===Ae?Ae=Object.getOwnPropertyDescriptor(q,j):Ae;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)Kt=Reflect.decorate(L,q,j,Ae);else for(var Br=L.length-1;Br>=0;Br--)(ur=L[Br])&&(Kt=(St<3?ur(Kt):St>3?ur(q,j,Kt):ur(q,j))||Kt);return St>3&&Kt&&Object.defineProperty(q,j,Kt),Kt},hc=function(L,q){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(L,q)};let _g=(()=>{class L{constructor(j,Ae,St,Kt){this.data=j,this.parent=Ae,this.treeModel=St,this.position=0,this.allowDrop=(ur,Br)=>this.options.allowDrop(ur,{parent:this,index:0},Br),this.allowDragoverStyling=()=>this.options.allowDragoverStyling,null==this.id&&(this.id=function hg(){return Math.floor(1e13*Math.random())}()),this.index=Kt,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 Zs(L,q,j){var Ae=(0,Jo.Z)(L)?Gi:Tc;return j&&Uc(L,q,j)&&(q=void 0),Ae(L,up(q))}(this.children,j=>j.isSelected)}get isAllSelected(){return this.isSelectable()?this.treeModel.isSelected(this):function cp(L,q,j){var Ae=(0,Jo.Z)(L)?Cc:yf;return j&&Uc(L,q,j)&&(q=void 0),Ae(L,up(q))}(this.children,j=>j.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(j){this.treeModel.fireEvent(j)}get displayField(){return this.getField("display")}get id(){return this.getField("id")}set id(j){this.setField("id",j)}getField(j){return this.data[this.options[`${j}Field`]]}setField(j,Ae){this.data[this.options[`${j}Field`]]=Ae}_findAdjacentSibling(j,Ae=!1){const St=this._getParentsChildren(Ae),Kt=St.indexOf(this);return St.length>Kt+j?St[Kt+j]:null}findNextSibling(j=!1){return this._findAdjacentSibling(1,j)}findPreviousSibling(j=!1){return this._findAdjacentSibling(-1,j)}getVisibleChildren(){return this.visibleChildren}get visibleChildren(){return(this.children||[]).filter(j=>!j.isHidden)}getFirstChild(j=!1){return __((j?this.visibleChildren:this.children)||[])}getLastChild(j=!1){return Cn((j?this.visibleChildren:this.children)||[])}findNextNode(j=!0,Ae=!1){return j&&this.isExpanded&&this.getFirstChild(Ae)||this.findNextSibling(Ae)||this.parent&&this.parent.findNextNode(!1,Ae)}findPreviousNode(j=!1){let Ae=this.findPreviousSibling(j);return Ae?Ae._getLastOpenDescendant(j):this.realParent}_getLastOpenDescendant(j=!1){const Ae=this.getLastChild(j);return this.isCollapsed||!Ae?this:Ae._getLastOpenDescendant(j)}_getParentsChildren(j=!1){return this.parent&&(j?this.parent.getVisibleChildren():this.parent.children)||[]}getIndexInParent(j=!1){return this._getParentsChildren(j).indexOf(this)}isDescendantOf(j){return this===j||this.parent&&this.parent.isDescendantOf(j)}getNodePadding(){return this.options.levelPadding*(this.level-1)+"px"}getClass(){return[this.options.nodeClass(this),`tree-node-level-${this.level}`].join(" ")}onDrop(j){this.mouseAction("drop",j.event,{from:j.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(j=>{j&&(this.setField("children",j),this._initChildren(),this.options.useTriState&&this.treeModel.isSelected(this)&&this.setIsSelected(!0),this.children.forEach(Ae=>{Ae.getField("isExpanded")&&Ae.hasChildren&&Ae.expand()}))}).then(()=>{this.fireEvent({eventName:nd.loadNodeChildren,node:this})}):Promise.resolve()}expand(){return this.isExpanded||this.toggleExpanded(),this}collapse(){return this.isExpanded&&this.toggleExpanded(),this}doForAll(j){Promise.resolve(j(this)).then(()=>{this.children&&this.children.forEach(Ae=>Ae.doForAll(j))})}expandAll(){this.doForAll(j=>j.expand())}collapseAll(){this.doForAll(j=>j.collapse())}ensureVisible(){return this.realParent&&(this.realParent.expand(),this.realParent.ensureVisible()),this}toggleExpanded(){return this.setIsExpanded(!this.isExpanded),this}setIsExpanded(j){return this.hasChildren&&this.treeModel.setExpandedNode(this,j),this}autoLoadChildren(){this.handler=ws(()=>this.isExpanded,j=>{!this.children&&this.hasChildren&&j&&this.loadNodeChildren()},{fireImmediately:!0})}dispose(){this.children&&this.children.forEach(j=>j.dispose()),this.handler&&this.handler(),this.parent=null,this.children=null}setIsActive(j,Ae=!1){return this.treeModel.setActiveNode(this,j,Ae),j&&this.focus(this.options.scrollOnActivate),this}isSelectable(){return this.isLeaf||!this.children||!this.options.useTriState}setIsSelected(j){return this.isSelectable()?this.treeModel.setSelectedNode(this,j):this.visibleChildren.forEach(Ae=>Ae.setIsSelected(j)),this}toggleSelected(){return this.setIsSelected(!this.isSelected),this}toggleActivated(j=!1){return this.setIsActive(!this.isActive,j),this}setActiveAndVisible(j=!1){return this.setIsActive(!0,j).ensureVisible(),setTimeout(this.scrollIntoView.bind(this)),this}scrollIntoView(j=!1){this.treeModel.virtualScroll.scrollIntoView(this,j)}focus(j=!0){let Ae=this.treeModel.getFocusedNode();return this.treeModel.setFocusedNode(this),j&&this.scrollIntoView(),Ae&&this.fireEvent({eventName:nd.blur,node:Ae}),this.fireEvent({eventName:nd.focus,node:this}),this}blur(){let j=this.treeModel.getFocusedNode();return this.treeModel.setFocusedNode(null),j&&this.fireEvent({eventName:nd.blur,node:this}),this}setIsHidden(j){this.treeModel.setIsHidden(this,j)}hide(){this.setIsHidden(!0)}show(){this.setIsHidden(!1)}mouseAction(j,Ae,St=null){this.treeModel.setFocus(!0);const ur=this.options.actionMapping.mouse[j];ur&&ur(this.treeModel,this,Ae,St)}getSelfHeight(){return this.options.nodeHeight(this)}_initChildren(){this.children=this.getField("children").map((j,Ae)=>new L(j,this,this.treeModel,Ae))}}return Zd([ze,hc("design:type",Object),hc("design:paramtypes",[])],L.prototype,"isHidden",null),Zd([ze,hc("design:type",Object),hc("design:paramtypes",[])],L.prototype,"isExpanded",null),Zd([ze,hc("design:type",Object),hc("design:paramtypes",[])],L.prototype,"isActive",null),Zd([ze,hc("design:type",Object),hc("design:paramtypes",[])],L.prototype,"isFocused",null),Zd([ze,hc("design:type",Object),hc("design:paramtypes",[])],L.prototype,"isSelected",null),Zd([ze,hc("design:type",Object),hc("design:paramtypes",[])],L.prototype,"isAllSelected",null),Zd([ze,hc("design:type",Object),hc("design:paramtypes",[])],L.prototype,"isPartiallySelected",null),Zd([jt,hc("design:type",Array)],L.prototype,"children",void 0),Zd([jt,hc("design:type",Number)],L.prototype,"index",void 0),Zd([jt,hc("design:type",Object)],L.prototype,"position",void 0),Zd([jt,hc("design:type",Number)],L.prototype,"height",void 0),Zd([ze,hc("design:type",Number),hc("design:paramtypes",[])],L.prototype,"level",null),Zd([ze,hc("design:type",Array),hc("design:paramtypes",[])],L.prototype,"path",null),Zd([ze,hc("design:type",Object),hc("design:paramtypes",[])],L.prototype,"visibleChildren",null),Zd([ie,hc("design:type",Function),hc("design:paramtypes",[Object]),hc("design:returntype",void 0)],L.prototype,"setIsSelected",null),Zd([ie,hc("design:type",Function),hc("design:paramtypes",[]),hc("design:returntype",void 0)],L.prototype,"_initChildren",null),L})();var Iu=function(L,q,j,Ae){var ur,St=arguments.length,Kt=St<3?q:null===Ae?Ae=Object.getOwnPropertyDescriptor(q,j):Ae;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)Kt=Reflect.decorate(L,q,j,Ae);else for(var Br=L.length-1;Br>=0;Br--)(ur=L[Br])&&(Kt=(St<3?ur(Kt):St>3?ur(q,j,Kt):ur(q,j))||Kt);return St>3&&Kt&&Object.defineProperty(q,j,Kt),Kt},Es=function(L,q){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(L,q)};let gu=(()=>{class L{constructor(){this.options=new sm,this.eventNames=Object.keys(nd),this.expandedNodeIds={},this.selectedLeafNodeIds={},this.activeNodeIds={},this.hiddenNodeIds={},this.focusedNodeId=null,this.firstUpdate=!0,this.subscriptions=[]}fireEvent(j){j.treeModel=this,this.events[j.eventName].emit(j),this.events.event.emit(j)}subscribe(j,Ae){const St=this.events[j].subscribe(Ae);this.subscriptions.push(St)}getFocusedNode(){return this.focusedNode}getActiveNode(){return this.activeNodes[0]}getActiveNodes(){return this.activeNodes}getVisibleRoots(){return this.virtualRoot.visibleChildren}getFirstRoot(j=!1){return __(j?this.getVisibleRoots():this.roots)}getLastRoot(j=!1){return Cn(j?this.getVisibleRoots():this.roots)}get isFocused(){return L.focusedTree===this}isNodeFocused(j){return this.focusedNode===j}isEmptyTree(){return this.roots&&0===this.roots.length}get focusedNode(){return this.focusedNodeId?this.getNodeById(this.focusedNodeId):null}get expandedNodes(){const j=Object.keys(this.expandedNodeIds).filter(Ae=>this.expandedNodeIds[Ae]).map(Ae=>this.getNodeById(Ae));return zf(j)}get activeNodes(){const j=Object.keys(this.activeNodeIds).filter(Ae=>this.activeNodeIds[Ae]).map(Ae=>this.getNodeById(Ae));return zf(j)}get hiddenNodes(){const j=Object.keys(this.hiddenNodeIds).filter(Ae=>this.hiddenNodeIds[Ae]).map(Ae=>this.getNodeById(Ae));return zf(j)}get selectedLeafNodes(){const j=Object.keys(this.selectedLeafNodeIds).filter(Ae=>this.selectedLeafNodeIds[Ae]).map(Ae=>this.getNodeById(Ae));return zf(j)}getNodeByPath(j,Ae=null){if(!j)return null;if(Ae=Ae||this.virtualRoot,0===j.length)return Ae;if(!Ae.children)return null;const St=j.shift(),Kt=pp(Ae.children,{id:St});return Kt?this.getNodeByPath(j,Kt):null}getNodeById(j){const Ae=j.toString();return this.getNodeBy(St=>St.id.toString()===Ae)}getNodeBy(j,Ae=null){if(!(Ae=Ae||this.virtualRoot).children)return null;const St=pp(Ae.children,j);if(St)return St;for(let Kt of Ae.children){const ur=this.getNodeBy(j,Kt);if(ur)return ur}}isExpanded(j){return this.expandedNodeIds[j.id]}isHidden(j){return this.hiddenNodeIds[j.id]}isActive(j){return this.activeNodeIds[j.id]}isSelected(j){return this.selectedLeafNodeIds[j.id]}ngOnDestroy(){this.dispose(),this.unsubscribeAll()}dispose(){this.virtualRoot&&this.virtualRoot.dispose()}unsubscribeAll(){this.subscriptions.forEach(j=>j.unsubscribe()),this.subscriptions=[]}setData({nodes:j,options:Ae=null,events:St=null}){Ae&&(this.options=new sm(Ae)),St&&(this.events=St),j&&(this.nodes=j),this.update()}update(){let j={id:this.options.rootId,virtual:!0,[this.options.childrenField]:this.nodes};this.dispose(),this.virtualRoot=new _g(j,null,this,0),this.roots=this.virtualRoot.children,this.firstUpdate?this.roots&&(this.firstUpdate=!1,this._calculateExpandedNodes()):this.fireEvent({eventName:nd.updateData})}setFocusedNode(j){this.focusedNodeId=j?j.id:null}setFocus(j){L.focusedTree=j?this:null}doForAll(j){this.roots.forEach(Ae=>Ae.doForAll(j))}focusNextNode(){let j=this.getFocusedNode(),Ae=j?j.findNextNode(!0,!0):this.getFirstRoot(!0);Ae&&Ae.focus()}focusPreviousNode(){let j=this.getFocusedNode(),Ae=j?j.findPreviousNode(!0):this.getLastRoot(!0);Ae&&Ae.focus()}focusDrillDown(){let j=this.getFocusedNode();if(j&&j.isCollapsed&&j.hasChildren)j.toggleExpanded();else{let Ae=j?j.getFirstChild(!0):this.getFirstRoot(!0);Ae&&Ae.focus()}}focusDrillUp(){let j=this.getFocusedNode();if(j)if(j.isExpanded)j.toggleExpanded();else{let Ae=j.realParent;Ae&&Ae.focus()}}setActiveNode(j,Ae,St=!1){St?this._setActiveNodeMulti(j,Ae):this._setActiveNodeSingle(j,Ae),Ae?(j.focus(this.options.scrollOnActivate),this.fireEvent({eventName:nd.activate,node:j}),this.fireEvent({eventName:nd.nodeActivate,node:j})):(this.fireEvent({eventName:nd.deactivate,node:j}),this.fireEvent({eventName:nd.nodeDeactivate,node:j}))}setSelectedNode(j,Ae){this.selectedLeafNodeIds=Object.assign({},this.selectedLeafNodeIds,{[j.id]:Ae}),Ae?(j.focus(),this.fireEvent({eventName:nd.select,node:j})):this.fireEvent({eventName:nd.deselect,node:j})}setExpandedNode(j,Ae){this.expandedNodeIds=Object.assign({},this.expandedNodeIds,{[j.id]:Ae}),this.fireEvent({eventName:nd.toggleExpanded,node:j,isExpanded:Ae})}expandAll(){this.roots.forEach(j=>j.expandAll())}collapseAll(){this.roots.forEach(j=>j.collapseAll())}setIsHidden(j,Ae){this.hiddenNodeIds=Object.assign({},this.hiddenNodeIds,{[j.id]:Ae})}setHiddenNodeIds(j){this.hiddenNodeIds=j.reduce((Ae,St)=>Object.assign(Ae,{[St]:!0}),{})}performKeyAction(j,Ae){const St=this.options.actionMapping.keys[Ae.keyCode];return!!St&&(Ae.preventDefault(),St(this,j,Ae),!0)}filterNodes(j,Ae=!0){let St;if(!j)return this.clearFilter();if(Sf(j))St=ur=>-1!==ur.displayField.toLowerCase().indexOf(j.toLowerCase());else{if(!(0,mu.Z)(j))return console.error("Don't know what to do with filter",j),void console.error("Should be either a string or function");St=j}const Kt={};this.roots.forEach(ur=>this._filterNode(Kt,ur,St,Ae)),this.hiddenNodeIds=Kt,this.fireEvent({eventName:nd.changeFilter})}clearFilter(){this.hiddenNodeIds={},this.fireEvent({eventName:nd.changeFilter})}moveNode(j,Ae){const St=j.getIndexInParent(),Kt=j.parent;if(!this.canMoveNode(j,Ae,St))return;const ur=Kt.getField("children");Ae.parent.getField("children")||Ae.parent.setField("children",[]);const Br=Ae.parent.getField("children"),Ii=ur.splice(St,1)[0];let ms=Kt===Ae.parent&&Ae.index>St?Ae.index-1:Ae.index;Br.splice(ms,0,Ii),Kt.treeModel.update(),Ae.parent.treeModel!==Kt.treeModel&&Ae.parent.treeModel.update(),this.fireEvent({eventName:nd.moveNode,node:Ii,to:{parent:Ae.parent.data,index:ms},from:{parent:Kt.data,index:St}})}copyNode(j,Ae){const St=j.getIndexInParent();if(!this.canMoveNode(j,Ae,St))return;Ae.parent.getField("children")||Ae.parent.setField("children",[]);const Kt=Ae.parent.getField("children"),ur=this.options.getNodeClone(j);Kt.splice(Ae.index,0,ur),j.treeModel.update(),Ae.parent.treeModel!==j.treeModel&&Ae.parent.treeModel.update(),this.fireEvent({eventName:nd.copyNode,node:ur,to:{parent:Ae.parent.data,index:Ae.index}})}getState(){return{expandedNodeIds:this.expandedNodeIds,selectedLeafNodeIds:this.selectedLeafNodeIds,activeNodeIds:this.activeNodeIds,hiddenNodeIds:this.hiddenNodeIds,focusedNodeId:this.focusedNodeId}}setState(j){j&&Object.assign(this,{expandedNodeIds:j.expandedNodeIds||{},selectedLeafNodeIds:j.selectedLeafNodeIds||{},activeNodeIds:j.activeNodeIds||{},hiddenNodeIds:j.hiddenNodeIds||{},focusedNodeId:j.focusedNodeId})}subscribeToState(j){vi(()=>j(this.getState()))}canMoveNode(j,Ae,St){return St||j.getIndexInParent(),(j.parent!==Ae.parent||St!==Ae.index)&&!Ae.parent.isDescendantOf(j)}calculateExpandedNodes(){this._calculateExpandedNodes()}_filterNode(j,Ae,St,Kt){let ur=St(Ae);return Ae.children&&Ae.children.forEach(Br=>{this._filterNode(j,Br,St,Kt)&&(ur=!0)}),ur||(j[Ae.id]=!0),Kt&&ur&&Ae.ensureVisible(),ur}_calculateExpandedNodes(j=null){(j=j||this.virtualRoot).data[this.options.isExpandedField]&&(this.expandedNodeIds=Object.assign({},this.expandedNodeIds,{[j.id]:!0})),j.children&&j.children.forEach(Ae=>this._calculateExpandedNodes(Ae))}_setActiveNodeSingle(j,Ae){this.activeNodes.filter(St=>St!==j).forEach(St=>{this.fireEvent({eventName:nd.deactivate,node:St}),this.fireEvent({eventName:nd.nodeDeactivate,node:St})}),this.activeNodeIds=Ae?{[j.id]:!0}:{}}_setActiveNodeMulti(j,Ae){this.activeNodeIds=Object.assign({},this.activeNodeIds,{[j.id]:Ae})}}return L.\u0275fac=function(j){return new(j||L)},L.\u0275prov=r.Yz7({token:L,factory:L.\u0275fac}),L.focusedTree=null,L})();Iu([jt,Es("design:type",Array)],gu.prototype,"roots",void 0),Iu([jt,Es("design:type",Object)],gu.prototype,"expandedNodeIds",void 0),Iu([jt,Es("design:type",Object)],gu.prototype,"selectedLeafNodeIds",void 0),Iu([jt,Es("design:type",Object)],gu.prototype,"activeNodeIds",void 0),Iu([jt,Es("design:type",Object)],gu.prototype,"hiddenNodeIds",void 0),Iu([jt,Es("design:type",Object)],gu.prototype,"focusedNodeId",void 0),Iu([jt,Es("design:type",_g)],gu.prototype,"virtualRoot",void 0),Iu([ze,Es("design:type",Object),Es("design:paramtypes",[])],gu.prototype,"focusedNode",null),Iu([ze,Es("design:type",Object),Es("design:paramtypes",[])],gu.prototype,"expandedNodes",null),Iu([ze,Es("design:type",Object),Es("design:paramtypes",[])],gu.prototype,"activeNodes",null),Iu([ze,Es("design:type",Object),Es("design:paramtypes",[])],gu.prototype,"hiddenNodes",null),Iu([ze,Es("design:type",Object),Es("design:paramtypes",[])],gu.prototype,"selectedLeafNodes",null),Iu([ie,Es("design:type",Function),Es("design:paramtypes",[Object]),Es("design:returntype",void 0)],gu.prototype,"setData",null),Iu([ie,Es("design:type",Function),Es("design:paramtypes",[]),Es("design:returntype",void 0)],gu.prototype,"update",null),Iu([ie,Es("design:type",Function),Es("design:paramtypes",[Object]),Es("design:returntype",void 0)],gu.prototype,"setFocusedNode",null),Iu([ie,Es("design:type",Function),Es("design:paramtypes",[Object]),Es("design:returntype",void 0)],gu.prototype,"setFocus",null),Iu([ie,Es("design:type",Function),Es("design:paramtypes",[Object]),Es("design:returntype",void 0)],gu.prototype,"doForAll",null),Iu([ie,Es("design:type",Function),Es("design:paramtypes",[]),Es("design:returntype",void 0)],gu.prototype,"focusNextNode",null),Iu([ie,Es("design:type",Function),Es("design:paramtypes",[]),Es("design:returntype",void 0)],gu.prototype,"focusPreviousNode",null),Iu([ie,Es("design:type",Function),Es("design:paramtypes",[]),Es("design:returntype",void 0)],gu.prototype,"focusDrillDown",null),Iu([ie,Es("design:type",Function),Es("design:paramtypes",[]),Es("design:returntype",void 0)],gu.prototype,"focusDrillUp",null),Iu([ie,Es("design:type",Function),Es("design:paramtypes",[Object,Object,Object]),Es("design:returntype",void 0)],gu.prototype,"setActiveNode",null),Iu([ie,Es("design:type",Function),Es("design:paramtypes",[Object,Object]),Es("design:returntype",void 0)],gu.prototype,"setSelectedNode",null),Iu([ie,Es("design:type",Function),Es("design:paramtypes",[Object,Object]),Es("design:returntype",void 0)],gu.prototype,"setExpandedNode",null),Iu([ie,Es("design:type",Function),Es("design:paramtypes",[]),Es("design:returntype",void 0)],gu.prototype,"expandAll",null),Iu([ie,Es("design:type",Function),Es("design:paramtypes",[]),Es("design:returntype",void 0)],gu.prototype,"collapseAll",null),Iu([ie,Es("design:type",Function),Es("design:paramtypes",[Object,Object]),Es("design:returntype",void 0)],gu.prototype,"setIsHidden",null),Iu([ie,Es("design:type",Function),Es("design:paramtypes",[Object]),Es("design:returntype",void 0)],gu.prototype,"setHiddenNodeIds",null),Iu([ie,Es("design:type",Function),Es("design:paramtypes",[Object,Object]),Es("design:returntype",void 0)],gu.prototype,"filterNodes",null),Iu([ie,Es("design:type",Function),Es("design:paramtypes",[]),Es("design:returntype",void 0)],gu.prototype,"clearFilter",null),Iu([ie,Es("design:type",Function),Es("design:paramtypes",[Object,Object]),Es("design:returntype",void 0)],gu.prototype,"moveNode",null),Iu([ie,Es("design:type",Function),Es("design:paramtypes",[Object,Object]),Es("design:returntype",void 0)],gu.prototype,"copyNode",null),Iu([ie,Es("design:type",Function),Es("design:paramtypes",[Object]),Es("design:returntype",void 0)],gu.prototype,"setState",null);let km=(()=>{class L{constructor(){this._draggedElement=null}set(j){this._draggedElement=j}get(){return this._draggedElement}isDragging(){return!!this.get()}}return L.\u0275fac=function(j){return new(j||L)},L.\u0275prov=(0,r.Yz7)({factory:function(){return new L},token:L,providedIn:"root"}),L})();var k_=function(L,q,j,Ae){var ur,St=arguments.length,Kt=St<3?q:null===Ae?Ae=Object.getOwnPropertyDescriptor(q,j):Ae;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)Kt=Reflect.decorate(L,q,j,Ae);else for(var Br=L.length-1;Br>=0;Br--)(ur=L[Br])&&(Kt=(St<3?ur(Kt):St>3?ur(q,j,Kt):ur(q,j))||Kt);return St>3&&Kt&&Object.defineProperty(q,j,Kt),Kt},Pd=function(L,q){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(L,q)};let Fp=(()=>{class L{constructor(j){this.treeModel=j,this.yBlocks=0,this.x=0,this.viewportHeight=null,this.viewport=null,j.virtualScroll=this,this._dispose=[vi(()=>this.fixScroll())]}get y(){return 150*this.yBlocks}get totalHeight(){return this.treeModel.virtualRoot?this.treeModel.virtualRoot.height:0}fireEvent(j){this.treeModel.fireEvent(j)}init(){const j=this.recalcPositions.bind(this);j(),this._dispose=[...this._dispose,ws(()=>this.treeModel.roots,j),ws(()=>this.treeModel.expandedNodeIds,j),ws(()=>this.treeModel.hiddenNodeIds,j)],this.treeModel.subscribe(nd.loadNodeChildren,j)}isEnabled(){return this.treeModel.options.useVirtualScroll}_setYBlocks(j){this.yBlocks=j}recalcPositions(){this.treeModel.virtualRoot.height=this._getPositionAfter(this.treeModel.getVisibleRoots(),0)}_getPositionAfter(j,Ae){let St=Ae;return j.forEach(Kt=>{Kt.position=St,St=this._getPositionAfterNode(Kt,St)}),St}_getPositionAfterNode(j,Ae){let St=j.getSelfHeight()+Ae;return j.children&&j.isExpanded&&(St=this._getPositionAfter(j.visibleChildren,St)),j.height=St-Ae,St}clear(){this._dispose.forEach(j=>j())}setViewport(j){Object.assign(this,{viewport:j,x:j.scrollLeft,yBlocks:Math.round(j.scrollTop/150),viewportHeight:j.getBoundingClientRect?j.getBoundingClientRect().height:0})}scrollIntoView(j,Ae,St=!0){if(j.options.scrollContainer){const Kt=j.options.scrollContainer,ur=Kt.getBoundingClientRect().height,Br=Kt.getBoundingClientRect().top,Ii=this.viewport.getBoundingClientRect().top+j.position-Br;(Ae||IiKt.scrollTop+ur)&&(Kt.scrollTop=St?Ii-ur/2:Ii)}else(Ae||j.positionthis.y+this.viewportHeight)&&this.viewport&&(this.viewport.scrollTop=St?j.position-this.viewportHeight/2:j.position,this._setYBlocks(Math.floor(this.viewport.scrollTop/150)))}getViewportNodes(j){if(!j)return[];const Ae=j.filter(ms=>!ms.isHidden);if(!this.isEnabled())return Ae;if(!this.viewportHeight||!Ae.length)return[];const St=Lg(Ae,ms=>ms.position+500>this.y||ms.position+ms.height>this.y),Kt=Lg(Ae,ms=>ms.position-500>this.y+this.viewportHeight,St),ur=[];if(Kt-St>(1e3+this.viewportHeight)/Ae[0].treeModel.options.options.nodeHeight)return[];for(let ms=St;ms<=Kt;ms++)ur.push(Ae[ms]);return ur}fixScroll(){const j=Math.max(0,this.totalHeight-this.viewportHeight);this.y<0&&this._setYBlocks(0),this.y>j&&this._setYBlocks(j/150)}}return L.\u0275fac=function(j){return new(j||L)(r.LFG(gu))},L.\u0275prov=r.Yz7({token:L,factory:L.\u0275fac}),L})();function Lg(L,q,j=0){let Ae=j,St=L.length-1;for(;Ae!==St;){let Kt=Math.floor((Ae+St)/2);q(L[Kt])?St=Kt:Ae=Ae===Kt?St:Kt}return Ae}k_([jt,Pd("design:type",Object)],Fp.prototype,"yBlocks",void 0),k_([jt,Pd("design:type",Object)],Fp.prototype,"x",void 0),k_([jt,Pd("design:type",Object)],Fp.prototype,"viewportHeight",void 0),k_([ze,Pd("design:type",Object),Pd("design:paramtypes",[])],Fp.prototype,"y",null),k_([ze,Pd("design:type",Object),Pd("design:paramtypes",[])],Fp.prototype,"totalHeight",null),k_([ie,Pd("design:type",Function),Pd("design:paramtypes",[Object]),Pd("design:returntype",void 0)],Fp.prototype,"_setYBlocks",null),k_([ie,Pd("design:type",Function),Pd("design:paramtypes",[]),Pd("design:returntype",void 0)],Fp.prototype,"recalcPositions",null),k_([ie,Pd("design:type",Function),Pd("design:paramtypes",[Object]),Pd("design:returntype",void 0)],Fp.prototype,"setViewport",null),k_([ie,Pd("design:type",Function),Pd("design:paramtypes",[Object,Object,Object]),Pd("design:returntype",void 0)],Fp.prototype,"scrollIntoView",null);let S1=(()=>{class L{}return L.\u0275fac=function(j){return new(j||L)},L.\u0275cmp=r.Xpm({type:L,selectors:[["tree-loading-component"]],inputs:{template:"template",node:"node"},decls:2,vars:5,consts:[[4,"ngIf"],[3,"ngTemplateOutlet","ngTemplateOutletContext"]],template:function(j,Ae){1&j&&(r.YNc(0,I,2,0,"span",0),r.GkF(1,1)),2&j&&(r.Q6J("ngIf",!Ae.template),r.xp6(1),r.Q6J("ngTemplateOutlet",Ae.template)("ngTemplateOutletContext",r.VKq(3,re,Ae.node)))},dependencies:[a.O5,a.tP],encapsulation:2}),L})(),Hm=(()=>{class L{constructor(j,Ae,St){this.elementRef=j,this.ngZone=Ae,this.virtualScroll=St,this.setViewport=em(()=>{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:nd.initialized})});let j=this.elementRef.nativeElement;this.ngZone.runOutsideAngular(()=>{j.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 L.\u0275fac=function(j){return new(j||L)(r.Y36(r.SBq),r.Y36(r.R0b),r.Y36(Fp))},L.\u0275cmp=r.Xpm({type:L,selectors:[["tree-viewport"]],features:[r._Bn([Fp])],ngContentSelectors:Oe,decls:1,vars:2,consts:[[4,"treeMobxAutorun"]],template:function(j,Ae){1&j&&(r.F$t(),r.YNc(0,S,3,2,"ng-container",0)),2&j&&r.Q6J("treeMobxAutorun",r.DdM(1,z))},dependencies:[si],encapsulation:2}),L})(),b1=(()=>{class L{constructor(j,Ae){this.treeModel=j,this.treeDraggedElement=Ae,j.eventNames.forEach(St=>this[St]=new r.vpe),j.subscribeToState(St=>this.stateChange.emit(St))}set nodes(j){}set options(j){}set focused(j){this.treeModel.setFocus(j)}set state(j){this.treeModel.setState(j)}onKeydown(j){if(!this.treeModel.isFocused||ym(["input","textarea"],document.activeElement.tagName.toLowerCase()))return;const Ae=this.treeModel.getFocusedNode();this.treeModel.performKeyAction(Ae,j)}onMousedown(j){(function Ae(St,Kt){return!St||St.localName!==Kt&&Ae(St.parentElement,Kt)})(j.target,"tree-root")&&this.treeModel.setFocus(!1)}ngOnChanges(j){(j.options||j.nodes)&&this.treeModel.setData({options:j.options&&j.options.currentValue,nodes:j.nodes&&j.nodes.currentValue,events:L_(this,this.treeModel.eventNames)})}sizeChanged(){this.viewportComponent.setViewport()}}return L.\u0275fac=function(j){return new(j||L)(r.Y36(gu),r.Y36(km))},L.\u0275cmp=r.Xpm({type:L,selectors:[["Tree"],["tree-root"]],contentQueries:function(j,Ae,St){if(1&j&&(r.Suo(St,ut,5),r.Suo(St,On,5),r.Suo(St,Ar,5),r.Suo(St,ri,5)),2&j){let Kt;r.iGM(Kt=r.CRH())&&(Ae.loadingTemplate=Kt.first),r.iGM(Kt=r.CRH())&&(Ae.treeNodeTemplate=Kt.first),r.iGM(Kt=r.CRH())&&(Ae.treeNodeWrapperTemplate=Kt.first),r.iGM(Kt=r.CRH())&&(Ae.treeNodeFullTemplate=Kt.first)}},viewQuery:function(j,Ae){if(1&j&&r.Gf(Di,5),2&j){let St;r.iGM(St=r.CRH())&&(Ae.viewportComponent=St.first)}},hostBindings:function(j,Ae){1&j&&r.NdJ("keydown",function(Kt){return Ae.onKeydown(Kt)},!1,r.pYS)("mousedown",function(Kt){return Ae.onMousedown(Kt)},!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([gu]),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(j,Ae){1&j&&(r.TgZ(0,"tree-viewport",null,0)(2,"div",1),r.YNc(3,cs,1,8,"tree-node-collection",2),r.YNc(4,Yo,1,2,"tree-node-drop-slot",3),r.qZA()()),2&j&&(r.xp6(2),r.ekj("node-dragging",Ae.treeDraggedElement.isDragging())("angular-tree-component-rtl",Ae.treeModel.options.rtl),r.xp6(1),r.Q6J("ngIf",Ae.treeModel.roots),r.xp6(1),r.Q6J("ngIf",Ae.treeModel.isEmptyTree()))},dependencies:function(){return[a.O5,Em,lm,Hm]},encapsulation:2}),L})(),mg=(()=>{class L{}return L.\u0275fac=function(j){return new(j||L)},L.\u0275cmp=r.Xpm({type:L,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(j,Ae){1&j&&r.YNc(0,be,3,8,"ng-container",0),2&j&&r.Q6J("treeMobxAutorun",r.DdM(1,z))},dependencies:function(){return[a.O5,a.tP,Il,Em,yg,si]},encapsulation:2}),L})(),kg=(()=>{class L{}return L.\u0275fac=function(j){return new(j||L)},L.\u0275cmp=r.Xpm({type:L,selectors:[["tree-node-content"]],inputs:{node:"node",index:"index",template:"template"},decls:2,vars:7,consts:[[4,"ngIf"],[3,"ngTemplateOutlet","ngTemplateOutletContext"]],template:function(j,Ae){1&j&&(r.YNc(0,Ke,2,1,"span",0),r.GkF(1,1)),2&j&&(r.Q6J("ngIf",!Ae.template),r.xp6(1),r.Q6J("ngTemplateOutlet",Ae.template)("ngTemplateOutletContext",r.kEZ(3,xt,Ae.node,Ae.node,Ae.index)))},dependencies:[a.O5,a.tP],encapsulation:2}),L})(),Em=(()=>{class L{onDrop(j){this.node.mouseAction("drop",j.event,{from:j.element,to:{parent:this.node,index:this.dropIndex}})}allowDrop(j,Ae){return this.node.options.allowDrop(j,{parent:this.node,index:this.dropIndex},Ae)}}return L.\u0275fac=function(j){return new(j||L)},L.\u0275cmp=r.Xpm({type:L,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(j,Ae){1&j&&(r.TgZ(0,"div",0),r.NdJ("treeDrop",function(Kt){return Ae.onDrop(Kt)}),r.qZA()),2&j&&r.Q6J("treeAllowDrop",Ae.allowDrop.bind(Ae))("allowDragoverStyling",!0)},dependencies:function(){return[_h]},encapsulation:2}),L})(),$g=(()=>{class L{}return L.\u0275fac=function(j){return new(j||L)},L.\u0275cmp=r.Xpm({type:L,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(j,Ae){1&j&&r.YNc(0,vr,3,2,"ng-container",0),2&j&&r.Q6J("treeMobxAutorun",r.DdM(1,z))},dependencies:[a.O5,si],encapsulation:2}),L})(),Il=(()=>{class L{}return L.\u0275fac=function(j){return new(j||L)},L.\u0275cmp=r.Xpm({type:L,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(j,Ae){1&j&&r.YNc(0,Qi,2,4,"ng-container",0),2&j&&r.Q6J("treeMobxAutorun",r.DdM(1,z))},dependencies:function(){return[a.O5,S1,lm,O1,si]},encapsulation:2}),L})();const vg=Object.assign(function gg(...L){return ie(...L)},ie),T1=Object.assign(function Hg(...L){return ze(...L)},ze),am=Object.assign(function C1(...L){return jt(...L)},jt);var $h=function(L,q,j,Ae){var ur,St=arguments.length,Kt=St<3?q:null===Ae?Ae=Object.getOwnPropertyDescriptor(q,j):Ae;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)Kt=Reflect.decorate(L,q,j,Ae);else for(var Br=L.length-1;Br>=0;Br--)(ur=L[Br])&&(Kt=(St<3?ur(Kt):St>3?ur(q,j,Kt):ur(q,j))||Kt);return St>3&&Kt&&Object.defineProperty(q,j,Kt),Kt},ph=function(L,q){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(L,q)};let lm=(()=>{class L{constructor(){this._dispose=[]}get nodes(){return this._nodes}set nodes(j){this.setNodes(j)}get marginTop(){const j=this.viewportNodes&&this.viewportNodes.length&&this.viewportNodes[0];return(j&&j.parent?j.position-j.parent.position-j.parent.getSelfHeight():0)+"px"}setNodes(j){this._nodes=j}ngOnInit(){this.virtualScroll=this.treeModel.virtualScroll,this._dispose=[ws(()=>this.virtualScroll.getViewportNodes(this.nodes).map(j=>j.index),j=>{this.viewportNodes=j.map(Ae=>this.nodes[Ae])},{compareStructural:!0,fireImmediately:!0}),ws(()=>this.nodes,j=>{this.viewportNodes=this.virtualScroll.getViewportNodes(j)})]}ngOnDestroy(){this._dispose.forEach(j=>j())}trackNode(j,Ae){return Ae.id}}return L.\u0275fac=function(j){return new(j||L)},L.\u0275cmp=r.Xpm({type:L,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(j,Ae){1&j&&r.YNc(0,ia,3,4,"ng-container",0),2&j&&r.Q6J("treeMobxAutorun",r.DdM(1,z))},dependencies:[a.sg,mg,si],encapsulation:2}),L})();$h([am,ph("design:type",Object)],lm.prototype,"_nodes",void 0),$h([am,ph("design:type",Array)],lm.prototype,"viewportNodes",void 0),$h([T1,ph("design:type",String),ph("design:paramtypes",[])],lm.prototype,"marginTop",null),$h([vg,ph("design:type",Function),ph("design:paramtypes",[Object]),ph("design:returntype",void 0)],lm.prototype,"setNodes",null);let yg=(()=>{class L{constructor(){}}return L.\u0275fac=function(j){return new(j||L)},L.\u0275cmp=r.Xpm({type:L,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(j,Ae){1&j&&(r.YNc(0,di,5,15,"div",0),r.GkF(1,1)),2&j&&(r.Q6J("ngIf",!Ae.templates.treeNodeWrapperTemplate),r.xp6(1),r.Q6J("ngTemplateOutlet",Ae.templates.treeNodeWrapperTemplate)("ngTemplateOutletContext",r.l5B(3,Y,Ae.node,Ae.node,Ae.index,Ae.templates)))},dependencies:function(){return[a.O5,a.tP,kg,_h,bg,$g,M1]},encapsulation:2}),L})(),M1=(()=>{class L{}return L.\u0275fac=function(j){return new(j||L)},L.\u0275cmp=r.Xpm({type:L,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(j,Ae){1&j&&r.YNc(0,Wr,2,2,"ng-container",0),2&j&&r.Q6J("treeMobxAutorun",r.DdM(1,z))},dependencies:[si],encapsulation:2}),L})();const Eg="is-dragging-over",Sg="is-dragging-over-disabled";let _h=(()=>{class L{constructor(j,Ae,St,Kt){this.el=j,this.renderer=Ae,this.treeDraggedElement=St,this.ngZone=Kt,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=(ur,Br)=>!0,this.dragOverEventHandler=this.onDragOver.bind(this),this.dragEnterEventHandler=this.onDragEnter.bind(this),this.dragLeaveEventHandler=this.onDragLeave.bind(this)}set treeAllowDrop(j){this._allowDrop=j instanceof Function?j:(Ae,St)=>j}allowDrop(j){return this._allowDrop(this.treeDraggedElement.get(),j)}ngAfterViewInit(){let j=this.el.nativeElement;this.ngZone.runOutsideAngular(()=>{j.addEventListener("dragover",this.dragOverEventHandler),j.addEventListener("dragenter",this.dragEnterEventHandler),j.addEventListener("dragleave",this.dragLeaveEventHandler)})}ngOnDestroy(){let j=this.el.nativeElement;j.removeEventListener("dragover",this.dragOverEventHandler),j.removeEventListener("dragenter",this.dragEnterEventHandler),j.removeEventListener("dragleave",this.dragLeaveEventHandler)}onDragOver(j){if(!this.allowDrop(j))return this.allowDragoverStyling?this.addDisabledClass():void 0;this.onDragOverCallback.emit({event:j,element:this.treeDraggedElement.get()}),j.preventDefault(),this.allowDragoverStyling&&this.addClass()}onDragEnter(j){this.allowDrop(j)&&(j.preventDefault(),this.onDragEnterCallback.emit({event:j,element:this.treeDraggedElement.get()}))}onDragLeave(j){if(!this.allowDrop(j))return this.allowDragoverStyling?this.removeDisabledClass():void 0;this.onDragLeaveCallback.emit({event:j,element:this.treeDraggedElement.get()}),this.allowDragoverStyling&&this.removeClass()}onDrop(j){this.allowDrop(j)&&(j.preventDefault(),this.onDropCallback.emit({event:j,element:this.treeDraggedElement.get()}),this.allowDragoverStyling&&this.removeClass(),this.treeDraggedElement.set(null))}addClass(){this.renderer.addClass(this.el.nativeElement,Eg)}removeClass(){this.renderer.removeClass(this.el.nativeElement,Eg)}addDisabledClass(){this.renderer.addClass(this.el.nativeElement,Sg)}removeDisabledClass(){this.renderer.removeClass(this.el.nativeElement,Sg)}}return L.\u0275fac=function(j){return new(j||L)(r.Y36(r.SBq),r.Y36(r.Qsj),r.Y36(km),r.Y36(r.R0b))},L.\u0275dir=r.lG2({type:L,selectors:[["","treeDrop",""]],hostBindings:function(j,Ae){1&j&&r.NdJ("drop",function(Kt){return Ae.onDrop(Kt)})},inputs:{allowDragoverStyling:"allowDragoverStyling",treeAllowDrop:"treeAllowDrop"},outputs:{onDropCallback:"treeDrop",onDragOverCallback:"treeDropDragOver",onDragLeaveCallback:"treeDropDragLeave",onDragEnterCallback:"treeDropDragEnter"}}),L})(),bg=(()=>{class L{constructor(j,Ae,St,Kt){this.el=j,this.renderer=Ae,this.treeDraggedElement=St,this.ngZone=Kt,this.dragEventHandler=this.onDrag.bind(this)}ngAfterViewInit(){let j=this.el.nativeElement;this.ngZone.runOutsideAngular(()=>{j.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(j){j.dataTransfer.setData("text",j.target.id),this.treeDraggedElement.set(this.draggedElement),this.draggedElement.mouseAction&&this.draggedElement.mouseAction("dragStart",j)}onDrag(j){this.draggedElement.mouseAction&&this.draggedElement.mouseAction("drag",j)}onDragEnd(){this.draggedElement.mouseAction&&this.draggedElement.mouseAction("dragEnd"),this.treeDraggedElement.set(null)}}return L.\u0275fac=function(j){return new(j||L)(r.Y36(r.SBq),r.Y36(r.Qsj),r.Y36(km),r.Y36(r.R0b))},L.\u0275dir=r.lG2({type:L,selectors:[["","treeDrag",""]],hostBindings:function(j,Ae){1&j&&r.NdJ("dragstart",function(Kt){return Ae.onDragStart(Kt)})("dragend",function(){return Ae.onDragEnd()})},inputs:{draggedElement:["treeDrag","draggedElement"],treeDragEnabled:"treeDragEnabled"}}),L})(),O1=(()=>{class L{constructor(j,Ae,St){this.renderer=j,this.templateRef=Ae,this.viewContainerRef=St}set isOpen(j){j?(this._show(),this.isEnabled&&!1===this._isOpen&&this._animateOpen()):this.isEnabled?this._animateClose():this._hide(),this._isOpen=!!j}_show(){this.innerElement||(this.innerElement=this.viewContainerRef.createEmbeddedView(this.templateRef).rootNodes[0])}_hide(){this.viewContainerRef.clear(),this.innerElement=null}_animateOpen(){let j=this.animateSpeed,Ae=this.animateAcceleration,St=0;this.renderer.setStyle(this.innerElement,"max-height","0"),setTimeout(()=>{const Kt=setInterval(()=>{if(!this._isOpen||!this.innerElement)return clearInterval(Kt);St+=j;const ur=Math.round(St);this.renderer.setStyle(this.innerElement,"max-height",`${ur}px`);const Br=this.innerElement.getBoundingClientRect?this.innerElement.getBoundingClientRect().height:0;j*=Ae,Ae*=1.005,Br{if(this._isOpen||!this.innerElement)return clearInterval(Kt);St-=j,this.renderer.setStyle(this.innerElement,"max-height",`${St}px`),j*=Ae,Ae*=1.005,St<=0&&(this.viewContainerRef.clear(),this.innerElement=null,clearInterval(Kt))},17)}}return L.\u0275fac=function(j){return new(j||L)(r.Y36(r.Qsj),r.Y36(r.Rgc),r.Y36(r.s_b))},L.\u0275dir=r.lG2({type:L,selectors:[["","treeAnimateOpen",""]],inputs:{isOpen:["treeAnimateOpen","isOpen"],animateSpeed:["treeAnimateOpenSpeed","animateSpeed"],animateAcceleration:["treeAnimateOpenAcceleration","animateAcceleration"],isEnabled:["treeAnimateOpenEnabled","isEnabled"]}}),L})(),Av=(()=>{class L{}return L.\u0275fac=function(j){return new(j||L)},L.\u0275mod=r.oAB({type:L}),L.\u0275inj=r.cJS({imports:[a.ez]}),L})()},84051:(E,C,s)=>{"use strict";s.d(C,{$7:()=>wr,AR:()=>mn,Hg:()=>jt,Sr:()=>Ro,dX:()=>Ti,ii:()=>ii,nE:()=>da,vq:()=>dn,xD:()=>Fo});var r=s(64537),a=s(88692),c=s(79765),u=s(22759),e=s(26215),f=s(46782),m=s(64762);const T=["*"];function M(gt,Tn){1>&&r._UZ(0,"datatable-progress")}function w(gt,Tn){if(1>&&r._UZ(0,"datatable-summary-row",9),2>){const ie=r.oxw(2);r.Q6J("rowHeight",ie.summaryHeight)("offsetX",ie.offsetX)("innerWidth",ie.innerWidth)("rows",ie.rows)("columns",ie.columns)}}function D(gt,Tn){if(1>){const ie=r.EpF();r.TgZ(0,"datatable-body-row",13),r.NdJ("treeAction",function(){r.CHM(ie);const Jt=r.oxw().$implicit,gn=r.oxw(2);return r.KtG(gn.onTreeAction(Jt))})("activate",function(Jt){r.CHM(ie);const gn=r.oxw().index,vi=r.oxw(2),Bi=r.MAs(2);return r.KtG(Bi.onActivate(Jt,vi.indexes.first+gn))}),r.qZA()}if(2>){const ie=r.oxw().$implicit,Ze=r.oxw(2),Jt=r.MAs(2);r.Q6J("isSelected",Jt.getRowSelected(ie))("innerWidth",Ze.innerWidth)("offsetX",Ze.offsetX)("columns",Ze.columns)("rowHeight",Ze.getRowHeight(ie))("row",ie)("rowIndex",Ze.getRowIndex(ie))("expanded",Ze.getRowExpanded(ie))("rowClass",Ze.rowClass)("displayCheck",Ze.displayCheck)("treeStatus",ie&&ie.treeStatus)}}function U(gt,Tn){if(1>){const ie=r.EpF();r.TgZ(0,"datatable-body-row",15),r.NdJ("activate",function(Jt){const vi=r.CHM(ie).index;r.oxw(4);const Bi=r.MAs(2);return r.KtG(Bi.onActivate(Jt,vi))}),r.qZA()}if(2>){const ie=Tn.$implicit,Ze=r.oxw(2).$implicit,Jt=r.oxw(2),gn=r.MAs(2);r.Q6J("isSelected",gn.getRowSelected(ie))("innerWidth",Jt.innerWidth)("offsetX",Jt.offsetX)("columns",Jt.columns)("rowHeight",Jt.getRowHeight(ie))("row",ie)("group",Ze.value)("rowIndex",Jt.getRowIndex(ie))("expanded",Jt.getRowExpanded(ie))("rowClass",Jt.rowClass)}}function W(gt,Tn){if(1>&&r.YNc(0,U,1,10,"datatable-body-row",14),2>){const ie=r.oxw().$implicit,Ze=r.oxw(2);r.Q6J("ngForOf",ie.value)("ngForTrackBy",Ze.rowTrackingFn)}}function $(gt,Tn){if(1>){const ie=r.EpF();r.TgZ(0,"datatable-row-wrapper",10),r.NdJ("rowContextmenu",function(Jt){r.CHM(ie);const gn=r.oxw(2);return r.KtG(gn.rowContextmenu.emit(Jt))}),r.YNc(1,D,1,11,"datatable-body-row",11),r.YNc(2,W,1,2,"ng-template",null,12,r.W1O),r.qZA()}if(2>){const ie=Tn.$implicit,Ze=Tn.index,Jt=r.MAs(3),gn=r.oxw(2);r.Q6J("groupedRows",gn.groupedRows)("innerWidth",gn.innerWidth)("ngStyle",gn.getRowsStyles(ie))("rowDetail",gn.rowDetail)("groupHeader",gn.groupHeader)("offsetX",gn.offsetX)("detailRowHeight",gn.getDetailRowHeight(ie&&ie[Ze],Ze))("row",ie)("expanded",gn.getRowExpanded(ie))("rowIndex",gn.getRowIndex(ie&&ie[Ze])),r.xp6(1),r.Q6J("ngIf",!gn.groupedRows)("ngIfElse",Jt)}}function J(gt,Tn){if(1>&&r._UZ(0,"datatable-summary-row",16),2>){const ie=r.oxw(2);r.Q6J("ngStyle",ie.getBottomSummaryRowStyles())("rowHeight",ie.summaryHeight)("offsetX",ie.offsetX)("innerWidth",ie.innerWidth)("rows",ie.rows)("columns",ie.columns)}}function F(gt,Tn){if(1>){const ie=r.EpF();r.TgZ(0,"datatable-scroller",5),r.NdJ("scroll",function(Jt){r.CHM(ie);const gn=r.oxw();return r.KtG(gn.onBodyScroll(Jt))}),r.YNc(1,w,1,5,"datatable-summary-row",6),r.YNc(2,$,4,12,"datatable-row-wrapper",7),r.YNc(3,J,1,6,"datatable-summary-row",8),r.qZA()}if(2>){const ie=r.oxw();r.Q6J("scrollbarV",ie.scrollbarV)("scrollbarH",ie.scrollbarH)("scrollHeight",ie.scrollHeight)("scrollWidth",null==ie.columnGroupWidths?null:ie.columnGroupWidths.total),r.xp6(1),r.Q6J("ngIf",ie.summaryRow&&"top"===ie.summaryPosition),r.xp6(1),r.Q6J("ngForOf",ie.temp)("ngForTrackBy",ie.rowTrackingFn),r.xp6(1),r.Q6J("ngIf",ie.summaryRow&&"bottom"===ie.summaryPosition)}}function X(gt,Tn){if(1>&&r._UZ(0,"div",17),2>){const ie=r.oxw();r.Q6J("innerHTML",ie.emptyMessage,r.oJD)}}function de(gt,Tn){if(1>){const ie=r.EpF();r.TgZ(0,"datatable-header-cell",4),r.NdJ("resize",function(Jt){const vi=r.CHM(ie).$implicit,Bi=r.oxw(2);return r.KtG(Bi.onColumnResized(Jt,vi))})("longPressStart",function(Jt){r.CHM(ie);const gn=r.oxw(2);return r.KtG(gn.onLongPressStart(Jt))})("longPressEnd",function(Jt){r.CHM(ie);const gn=r.oxw(2);return r.KtG(gn.onLongPressEnd(Jt))})("sort",function(Jt){r.CHM(ie);const gn=r.oxw(2);return r.KtG(gn.onSort(Jt))})("select",function(Jt){r.CHM(ie);const gn=r.oxw(2);return r.KtG(gn.select.emit(Jt))})("columnContextmenu",function(Jt){r.CHM(ie);const gn=r.oxw(2);return r.KtG(gn.columnContextmenu.emit(Jt))}),r.qZA()}if(2>){const ie=Tn.$implicit,Ze=r.oxw(2);r.Q6J("resizeEnabled",ie.resizeable)("pressModel",ie)("pressEnabled",Ze.reorderable&&ie.draggable)("dragX",Ze.reorderable&&ie.draggable&&ie.dragging)("dragY",!1)("dragModel",ie)("dragEventTarget",Ze.dragEventTarget)("headerHeight",Ze.headerHeight)("isTarget",ie.isTarget)("targetMarkerTemplate",Ze.targetMarkerTemplate)("targetMarkerContext",ie.targetMarkerContext)("column",ie)("sortType",Ze.sortType)("sorts",Ze.sorts)("selectionType",Ze.selectionType)("sortAscendingIcon",Ze.sortAscendingIcon)("sortDescendingIcon",Ze.sortDescendingIcon)("sortUnsetIcon",Ze.sortUnsetIcon)("allRowsSelected",Ze.allRowsSelected)}}function V(gt,Tn){if(1>&&(r.TgZ(0,"div",2),r.YNc(1,de,1,19,"datatable-header-cell",3),r.qZA()),2>){const ie=Tn.$implicit,Ze=r.oxw();r.Tol("datatable-row-"+ie.type),r.Q6J("ngStyle",Ze._styleByGroup[ie.type]),r.xp6(1),r.Q6J("ngForOf",ie.columns)("ngForTrackBy",Ze.columnTrackingFn)}}function ce(gt,Tn){if(1>){const ie=r.EpF();r.TgZ(0,"datatable-header",4),r.NdJ("sort",function(Jt){r.CHM(ie);const gn=r.oxw();return r.KtG(gn.onColumnSort(Jt))})("resize",function(Jt){r.CHM(ie);const gn=r.oxw();return r.KtG(gn.onColumnResize(Jt))})("reorder",function(Jt){r.CHM(ie);const gn=r.oxw();return r.KtG(gn.onColumnReorder(Jt))})("select",function(Jt){r.CHM(ie);const gn=r.oxw();return r.KtG(gn.onHeaderSelect(Jt))})("columnContextmenu",function(Jt){r.CHM(ie);const gn=r.oxw();return r.KtG(gn.onColumnContextmenu(Jt))}),r.ALo(1,"async"),r.qZA()}if(2>){const ie=r.oxw();r.Q6J("sorts",ie.sorts)("sortType",ie.sortType)("scrollbarH",ie.scrollbarH)("innerWidth",ie._innerWidth)("offsetX",r.lcZ(1,15,ie._offsetX))("dealsWithGroup",void 0!==ie.groupedRows)("columns",ie._internalColumns)("headerHeight",ie.headerHeight)("reorderable",ie.reorderable)("targetMarkerTemplate",ie.targetMarkerTemplate)("sortAscendingIcon",ie.cssClasses.sortAscending)("sortDescendingIcon",ie.cssClasses.sortDescending)("sortUnsetIcon",ie.cssClasses.sortUnset)("allRowsSelected",ie.allRowsSelected)("selectionType",ie.selectionType)}}function se(gt,Tn){if(1>){const ie=r.EpF();r.TgZ(0,"datatable-footer",5),r.NdJ("page",function(Jt){r.CHM(ie);const gn=r.oxw();return r.KtG(gn.onFooterPage(Jt))}),r.qZA()}if(2>){const ie=r.oxw();r.Q6J("rowCount",ie.rowCount)("pageSize",ie.pageSize)("offset",ie.offset)("footerHeight",ie.footerHeight)("footerTemplate",ie.footer)("totalMessage",ie.messages.totalMessage)("pagerLeftArrowIcon",ie.cssClasses.pagerLeftArrow)("pagerRightArrowIcon",ie.cssClasses.pagerRightArrow)("pagerPreviousIcon",ie.cssClasses.pagerPrevious)("selectedCount",ie.selected.length)("selectedMessage",!!ie.selectionType&&ie.messages.selectedMessage)("pagerNextIcon",ie.cssClasses.pagerNext)}}function fe(gt,Tn){}function Te(gt,Tn){if(1>&&r.YNc(0,fe,0,0,"ng-template",5),2>){const ie=r.oxw();r.Q6J("ngTemplateOutlet",ie.targetMarkerTemplate)("ngTemplateOutletContext",ie.targetMarkerContext)}}function $e(gt,Tn){if(1>){const ie=r.EpF();r.TgZ(0,"label",6)(1,"input",7),r.NdJ("change",function(){r.CHM(ie);const Jt=r.oxw();return r.KtG(Jt.select.emit(!Jt.allRowsSelected))}),r.qZA()()}if(2>){const ie=r.oxw();r.xp6(1),r.Q6J("checked",ie.allRowsSelected)}}function ge(gt,Tn){if(1>){const ie=r.EpF();r.TgZ(0,"span",8)(1,"span",9),r.NdJ("click",function(){r.CHM(ie);const Jt=r.oxw();return r.KtG(Jt.onSort())}),r.qZA()()}if(2>){const ie=r.oxw();r.xp6(1),r.Q6J("innerHTML",ie.name,r.oJD)}}function Et(gt,Tn){}function ot(gt,Tn){if(1>&&r.YNc(0,Et,0,0,"ng-template",5),2>){const ie=r.oxw();r.Q6J("ngTemplateOutlet",ie.column.headerTemplate)("ngTemplateOutletContext",ie.cellContext)}}function ct(gt,Tn){}const qe=function(gt,Tn,ie,Ze,Jt){return{rowCount:gt,pageSize:Tn,selectedCount:ie,curPage:Ze,offset:Jt}};function He(gt,Tn){if(1>&&r.YNc(0,ct,0,0,"ng-template",4),2>){const ie=r.oxw();r.Q6J("ngTemplateOutlet",ie.footerTemplate.template)("ngTemplateOutletContext",r.qbA(2,qe,ie.rowCount,ie.pageSize,ie.selectedCount,ie.curPage,ie.offset))}}function We(gt,Tn){if(1>&&(r.TgZ(0,"span"),r._uU(1),r.qZA()),2>){const ie=r.oxw(2);r.xp6(1),r.AsE(" ",null==ie.selectedCount?null:ie.selectedCount.toLocaleString()," ",ie.selectedMessage," / ")}}function Le(gt,Tn){if(1>&&(r.TgZ(0,"div",5),r.YNc(1,We,2,2,"span",1),r._uU(2),r.qZA()),2>){const ie=r.oxw();r.xp6(1),r.Q6J("ngIf",ie.selectedMessage),r.xp6(1),r.AsE(" ",null==ie.rowCount?null:ie.rowCount.toLocaleString()," ",ie.totalMessage," ")}}function Pt(gt,Tn){if(1>){const ie=r.EpF();r.TgZ(0,"datatable-pager",6),r.NdJ("change",function(Jt){r.CHM(ie);const gn=r.oxw();return r.KtG(gn.page.emit(Jt))}),r.qZA()}if(2>){const ie=r.oxw();r.Q6J("pagerLeftArrowIcon",ie.pagerLeftArrowIcon)("pagerRightArrowIcon",ie.pagerRightArrowIcon)("pagerPreviousIcon",ie.pagerPreviousIcon)("pagerNextIcon",ie.pagerNextIcon)("page",ie.curPage)("size",ie.pageSize)("count",ie.rowCount)("hidden",!ie.isVisible)}}const it=function(gt){return{"selected-count":gt}};function Xt(gt,Tn){if(1>){const ie=r.EpF();r.TgZ(0,"li",6)(1,"a",7),r.NdJ("click",function(){const gn=r.CHM(ie).$implicit,vi=r.oxw();return r.KtG(vi.selectPage(gn.number))}),r._uU(2),r.qZA()()}if(2>){const ie=Tn.$implicit,Ze=r.oxw();r.ekj("active",ie.number===Ze.page),r.uIk("aria-label","page "+ie.number),r.xp6(2),r.hij(" ",ie.text," ")}}function cn(gt,Tn){if(1>){const ie=r.EpF();r.TgZ(0,"datatable-body-cell",3),r.NdJ("activate",function(Jt){const vi=r.CHM(ie).index,Bi=r.oxw(2);return r.KtG(Bi.onActivate(Jt,vi))})("treeAction",function(){r.CHM(ie);const Jt=r.oxw(2);return r.KtG(Jt.onTreeAction())}),r.qZA()}if(2>){const ie=Tn.$implicit,Ze=r.oxw(2);r.Q6J("row",Ze.row)("group",Ze.group)("expanded",Ze.expanded)("isSelected",Ze.isSelected)("rowIndex",Ze.rowIndex)("column",ie)("rowHeight",Ze.rowHeight)("displayCheck",Ze.displayCheck)("treeStatus",Ze.treeStatus)}}function pn(gt,Tn){if(1>&&(r.TgZ(0,"div",1),r.YNc(1,cn,1,9,"datatable-body-cell",2),r.qZA()),2>){const ie=Tn.$implicit,Ze=r.oxw();r.Gre("datatable-row-",ie.type," datatable-row-group"),r.Q6J("ngStyle",Ze._groupStyles[ie.type]),r.xp6(1),r.Q6J("ngForOf",ie.columns)("ngForTrackBy",Ze.columnTrackingFn)}}function Rn(gt,Tn){}function At(gt,Tn){if(1>&&r.YNc(0,Rn,0,0,"ng-template",4),2>){const ie=r.oxw(2);r.Q6J("ngTemplateOutlet",ie.groupHeader.template)("ngTemplateOutletContext",ie.groupContext)}}function qt(gt,Tn){if(1>&&(r.TgZ(0,"div",3),r.YNc(1,At,1,2,null,1),r.qZA()),2>){const ie=r.oxw();r.Q6J("ngStyle",ie.getGroupHeaderStyle()),r.xp6(1),r.Q6J("ngIf",ie.groupHeader&&ie.groupHeader.template)}}function sn(gt,Tn){1>&&r.Hsn(0,0,["*ngIf","(groupHeader && groupHeader.template && expanded) || !groupHeader || !groupHeader.template"])}function fn(gt,Tn){}function xn(gt,Tn){if(1>&&r.YNc(0,fn,0,0,"ng-template",4),2>){const ie=r.oxw(2);r.Q6J("ngTemplateOutlet",ie.rowDetail.template)("ngTemplateOutletContext",ie.rowContext)}}function Kr(gt,Tn){if(1>&&(r.TgZ(0,"div",5),r.YNc(1,xn,1,2,null,1),r.qZA()),2>){const ie=r.oxw();r.Udp("height",ie.detailRowHeight,"px"),r.xp6(1),r.Q6J("ngIf",ie.rowDetail&&ie.rowDetail.template)}}const Or=["cellTemplate"];function Lr(gt,Tn){if(1>){const ie=r.EpF();r.TgZ(0,"label",4)(1,"input",5),r.NdJ("click",function(Jt){r.CHM(ie);const gn=r.oxw();return r.KtG(gn.onCheckboxChange(Jt))}),r.qZA()()}if(2>){const ie=r.oxw();r.xp6(1),r.Q6J("checked",ie.isSelected)}}function ir(gt,Tn){1>&&r._UZ(0,"i",11)}function Qr(gt,Tn){1>&&r._UZ(0,"i",12)}function jr(gt,Tn){1>&&r._UZ(0,"i",13)}function br(gt,Tn){if(1>){const ie=r.EpF();r.TgZ(0,"button",7),r.NdJ("click",function(){r.CHM(ie);const Jt=r.oxw(2);return r.KtG(Jt.onTreeAction())}),r.TgZ(1,"span"),r.YNc(2,ir,1,0,"i",8),r.YNc(3,Qr,1,0,"i",9),r.YNc(4,jr,1,0,"i",10),r.qZA()()}if(2>){const ie=r.oxw(2);r.Q6J("disabled","disabled"===ie.treeStatus),r.xp6(2),r.Q6J("ngIf","loading"===ie.treeStatus),r.xp6(1),r.Q6J("ngIf","collapsed"===ie.treeStatus),r.xp6(1),r.Q6J("ngIf","expanded"===ie.treeStatus||"disabled"===ie.treeStatus)}}function ht(gt,Tn){}const Wt=function(gt){return{cellContext:gt}};function Tt(gt,Tn){if(1>&&r.YNc(0,ht,0,0,"ng-template",14),2>){const ie=r.oxw(2);r.Q6J("ngTemplateOutlet",ie.column.treeToggleTemplate)("ngTemplateOutletContext",r.VKq(2,Wt,ie.cellContext))}}function wn(gt,Tn){if(1>&&(r.ynx(0),r.YNc(1,br,5,4,"button",6),r.YNc(2,Tt,1,4,null,2),r.BQk()),2>){const ie=r.oxw();r.xp6(1),r.Q6J("ngIf",!ie.column.treeToggleTemplate),r.xp6(1),r.Q6J("ngIf",ie.column.treeToggleTemplate)}}function jn(gt,Tn){if(1>&&r._UZ(0,"span",15),2>){const ie=r.oxw();r.Q6J("title",ie.sanitizedValue)("innerHTML",ie.value,r.oJD)}}function hr(gt,Tn){}function Oi(gt,Tn){if(1>&&r.YNc(0,hr,0,0,"ng-template",14,16,r.W1O),2>){const ie=r.oxw();r.Q6J("ngTemplateOutlet",ie.column.cellTemplate)("ngTemplateOutletContext",ie.cellContext)}}function Wi(gt,Tn){if(1>&&r._UZ(0,"datatable-body-row",1),2>){const ie=r.oxw();r.Q6J("innerWidth",ie.innerWidth)("offsetX",ie.offsetX)("columns",ie._internalColumns)("rowHeight",ie.rowHeight)("row",ie.summaryRow)("rowIndex",-1)}}let so=(()=>{class gt{constructor(ie){this.document=ie,this.width=this.getWidth()}getWidth(){const ie=this.document.createElement("div");ie.style.visibility="hidden",ie.style.width="100px",ie.style.msOverflowStyle="scrollbar",this.document.body.appendChild(ie);const Ze=ie.offsetWidth;ie.style.overflow="scroll";const Jt=this.document.createElement("div");Jt.style.width="100%",ie.appendChild(Jt);const gn=Jt.offsetWidth;return ie.parentNode.removeChild(ie),Ze-gn}}return gt.\u0275fac=function(ie){return new(ie||gt)(r.LFG(a.K0))},gt.\u0275prov=r.Yz7({token:gt,factory:gt.\u0275fac}),gt})(),kr=(()=>{class gt{getDimensions(ie){return ie.getBoundingClientRect()}}return gt.\u0275fac=function(ie){return new(ie||gt)},gt.\u0275prov=r.Yz7({token:gt,factory:gt.\u0275fac}),gt})(),Ei=(()=>{class gt{constructor(){this.columnInputChanges=new c.xQ}get columnInputChanges$(){return this.columnInputChanges.asObservable()}onInputChange(){this.columnInputChanges.next()}}return gt.\u0275fac=function(ie){return new(ie||gt)},gt.\u0275prov=r.Yz7({token:gt,factory:gt.\u0275fac}),gt})(),ii=(()=>{class gt{constructor(ie){this.template=ie}}return gt.\u0275fac=function(ie){return new(ie||gt)(r.Y36(r.Rgc))},gt.\u0275dir=r.lG2({type:gt,selectors:[["","ngx-datatable-footer-template",""]]}),gt})(),mr=(()=>{class gt{constructor(ie,Ze){this.element=ie,this.zone=Ze,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 ie=()=>{const{offsetHeight:Ze,offsetWidth:Jt}=this.element.nativeElement;Ze&&Jt?(clearTimeout(this.timeout),this.onVisibilityChange()):(clearTimeout(this.timeout),this.zone.runOutsideAngular(()=>{this.timeout=setTimeout(()=>ie(),50)}))};this.timeout=setTimeout(()=>ie())}}return gt.\u0275fac=function(ie){return new(ie||gt)(r.Y36(r.SBq),r.Y36(r.R0b))},gt.\u0275dir=r.lG2({type:gt,selectors:[["","visibilityObserver",""]],hostVars:2,hostBindings:function(ie,Ze){2&ie&&r.ekj("visible",Ze.isVisible)},outputs:{visible:"visible"}}),gt})(),pr=(()=>{class gt{constructor(ie){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=ie.nativeElement}ngOnChanges(ie){ie.dragEventTarget&&ie.dragEventTarget.currentValue&&this.dragModel.dragging&&this.onMousedown(ie.dragEventTarget.currentValue)}ngOnDestroy(){this._destroySubscription()}onMouseup(ie){this.isDragging&&(this.isDragging=!1,this.element.classList.remove("dragging"),this.subscription&&(this._destroySubscription(),this.dragEnd.emit({event:ie,element:this.element,model:this.dragModel})))}onMousedown(ie){if(ie.target.classList.contains("draggable")&&(this.dragX||this.dragY)){ie.preventDefault(),this.isDragging=!0;const Jt={x:ie.clientX,y:ie.clientY},gn=(0,u.R)(document,"mouseup");this.subscription=gn.subscribe(Bi=>this.onMouseup(Bi));const vi=(0,u.R)(document,"mousemove").pipe((0,f.R)(gn)).subscribe(Bi=>this.move(Bi,Jt));this.subscription.add(vi),this.dragStart.emit({event:ie,element:this.element,model:this.dragModel})}}move(ie,Ze){if(!this.isDragging)return;const gn=ie.clientY-Ze.y;this.dragX&&(this.element.style.left=ie.clientX-Ze.x+"px"),this.dragY&&(this.element.style.top=`${gn}px`),this.element.classList.add("dragging"),this.dragging.emit({event:ie,element:this.element,model:this.dragModel})}_destroySubscription(){this.subscription&&(this.subscription.unsubscribe(),this.subscription=void 0)}}return gt.\u0275fac=function(ie){return new(ie||gt)(r.Y36(r.SBq))},gt.\u0275dir=r.lG2({type:gt,selectors:[["","draggable",""]],inputs:{dragX:"dragX",dragY:"dragY",dragEventTarget:"dragEventTarget",dragModel:"dragModel"},outputs:{dragStart:"dragStart",dragging:"dragging",dragEnd:"dragEnd"},features:[r.TTD]}),gt})(),Eo=(()=>{class gt{constructor(ie,Ze){this.renderer=Ze,this.resizeEnabled=!0,this.resize=new r.vpe,this.resizing=!1,this.element=ie.nativeElement}ngAfterViewInit(){const ie=this.renderer;this.resizeHandle=ie.createElement("span"),ie.addClass(this.resizeHandle,this.resizeEnabled?"resize-handle":"resize-handle--not-resizable"),ie.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(ie){const Ze=ie.target.classList.contains("resize-handle"),Jt=this.element.clientWidth,gn=ie.screenX;if(Ze){ie.stopPropagation(),this.resizing=!0;const vi=(0,u.R)(document,"mouseup");this.subscription=vi.subscribe(Xi=>this.onMouseup());const Bi=(0,u.R)(document,"mousemove").pipe((0,f.R)(vi)).subscribe(Xi=>this.move(Xi,Jt,gn));this.subscription.add(Bi)}}move(ie,Ze,Jt){const vi=Ze+(ie.screenX-Jt);(!this.minWidth||vi>=this.minWidth)&&(!this.maxWidth||vi<=this.maxWidth)&&(this.element.style.width=`${vi}px`)}_destroySubscription(){this.subscription&&(this.subscription.unsubscribe(),this.subscription=void 0)}}return gt.\u0275fac=function(ie){return new(ie||gt)(r.Y36(r.SBq),r.Y36(r.Qsj))},gt.\u0275dir=r.lG2({type:gt,selectors:[["","resizeable",""]],hostVars:2,hostBindings:function(ie,Ze){1&ie&&r.NdJ("mousedown",function(gn){return Ze.onMousedown(gn)}),2&ie&&r.ekj("resizeable",Ze.resizeEnabled)},inputs:{resizeEnabled:"resizeEnabled",minWidth:"minWidth",maxWidth:"maxWidth"},outputs:{resize:"resize"}}),gt})(),po=(()=>{class gt{constructor(ie,Ze){this.document=Ze,this.reorder=new r.vpe,this.targetChanged=new r.vpe,this.differ=ie.find({}).create()}ngAfterContentInit(){this.updateSubscriptions(),this.draggables.changes.subscribe(this.updateSubscriptions.bind(this))}ngOnDestroy(){this.draggables.forEach(ie=>{ie.dragStart.unsubscribe(),ie.dragging.unsubscribe(),ie.dragEnd.unsubscribe()})}updateSubscriptions(){const ie=this.differ.diff(this.createMapDiffs());if(ie){const Ze=({currentValue:gn,previousValue:vi})=>{Jt({previousValue:vi}),gn&&(gn.dragStart.subscribe(this.onDragStart.bind(this)),gn.dragging.subscribe(this.onDragging.bind(this)),gn.dragEnd.subscribe(this.onDragEnd.bind(this)))},Jt=({previousValue:gn})=>{gn&&(gn.dragStart.unsubscribe(),gn.dragging.unsubscribe(),gn.dragEnd.unsubscribe())};ie.forEachAddedItem(Ze),ie.forEachRemovedItem(Jt)}}onDragStart(){this.positions={};let ie=0;for(const Ze of this.draggables.toArray()){const Jt=Ze.element,gn=parseInt(Jt.offsetLeft.toString(),0);this.positions[Ze.dragModel.prop]={left:gn,right:gn+parseInt(Jt.offsetWidth.toString(),0),index:ie++,element:Jt}}}onDragging({model:Ze,event:Jt}){const gn=this.positions[Ze.prop],vi=this.isTarget(Ze,Jt);vi?this.lastDraggingIndex!==vi.i&&(this.targetChanged.emit({prevIndex:this.lastDraggingIndex,newIndex:vi.i,initialIndex:gn.index}),this.lastDraggingIndex=vi.i):this.lastDraggingIndex!==gn.index&&(this.targetChanged.emit({prevIndex:this.lastDraggingIndex,initialIndex:gn.index}),this.lastDraggingIndex=gn.index)}onDragEnd({element:ie,model:Ze,event:Jt}){const gn=this.positions[Ze.prop],vi=this.isTarget(Ze,Jt);vi&&this.reorder.emit({prevIndex:gn.index,newIndex:vi.i,model:Ze}),this.lastDraggingIndex=void 0,ie.style.left="auto"}isTarget(ie,Ze){let Jt=0;const Bi=this.document.elementsFromPoint(Ze.x||Ze.clientX,Ze.y||Ze.clientY);for(const Xi in this.positions){const ws=this.positions[Xi];if(ie.prop!==Xi&&Bi.find(ds=>ds===ws.element))return{pos:ws,i:Jt};Jt++}}createMapDiffs(){return this.draggables.toArray().reduce((ie,Ze)=>(ie[Ze.dragModel.$$id]=Ze,ie),{})}}return gt.\u0275fac=function(ie){return new(ie||gt)(r.Y36(r.aQg),r.Y36(a.K0))},gt.\u0275dir=r.lG2({type:gt,selectors:[["","orderable",""]],contentQueries:function(ie,Ze,Jt){if(1&ie&&r.Suo(Jt,pr,5),2&ie){let gn;r.iGM(gn=r.CRH())&&(Ze.draggables=gn)}},outputs:{reorder:"reorder",targetChanged:"targetChanged"}}),gt})(),$i=(()=>{class gt{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(ie){if(1!==ie.which||!this.pressEnabled||ie.target.classList.contains("resize-handle"))return;this.mouseX=ie.clientX,this.mouseY=ie.clientY,this.pressing=!0,this.isLongPressing=!1;const Jt=(0,u.R)(document,"mouseup");this.subscription=Jt.subscribe(gn=>this.onMouseup()),this.timeout=setTimeout(()=>{this.isLongPressing=!0,this.longPressStart.emit({event:ie,model:this.pressModel}),this.subscription.add((0,u.R)(document,"mousemove").pipe((0,f.R)(Jt)).subscribe(gn=>this.onMouseMove(gn))),this.loop(ie)},this.duration),this.loop(ie)}onMouseMove(ie){if(this.pressing&&!this.isLongPressing){const Ze=Math.abs(ie.clientX-this.mouseX)>10,Jt=Math.abs(ie.clientY-this.mouseY)>10;(Ze||Jt)&&this.endPress()}}loop(ie){this.isLongPressing&&(this.timeout=setTimeout(()=>{this.longPressing.emit({event:ie,model:this.pressModel}),this.loop(ie)},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 gt.\u0275fac=function(ie){return new(ie||gt)},gt.\u0275dir=r.lG2({type:gt,selectors:[["","long-press",""]],hostVars:4,hostBindings:function(ie,Ze){1&ie&&r.NdJ("mousedown",function(gn){return Ze.onMouseDown(gn)}),2&ie&&r.ekj("press",Ze.press)("longpress",Ze.isLongPress)},inputs:{pressEnabled:"pressEnabled",duration:"duration",pressModel:"pressModel"},outputs:{longPressStart:"longPressStart",longPressing:"longPressing",longPressEnd:"longPressEnd"}}),gt})(),qr=(()=>{class gt{constructor(ie,Ze,Jt){this.ngZone=ie,this.renderer=Jt,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=Ze.nativeElement}ngOnInit(){if(this.scrollbarV||this.scrollbarH){const ie=this.renderer;this.parentElement=ie.parentNode(ie.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(ie){this.parentElement&&(this.parentElement.scrollTop=ie)}onScrolled(ie){const Ze=ie.currentTarget;requestAnimationFrame(()=>{this.scrollYPos=Ze.scrollTop,this.scrollXPos=Ze.scrollLeft,this.updateOffset()})}updateOffset(){let ie;this.scrollYPosthis.prevScrollYPos&&(ie="up"),this.scroll.emit({direction:ie,scrollYPos:this.scrollYPos,scrollXPos:this.scrollXPos}),this.prevScrollYPos=this.scrollYPos,this.prevScrollXPos=this.scrollXPos}}return gt.\u0275fac=function(ie){return new(ie||gt)(r.Y36(r.R0b),r.Y36(r.SBq),r.Y36(r.Qsj))},gt.\u0275cmp=r.Xpm({type:gt,selectors:[["datatable-scroller"]],hostAttrs:[1,"datatable-scroll"],hostVars:4,hostBindings:function(ie,Ze){2&ie&&r.Udp("height",Ze.scrollHeight,"px")("width",Ze.scrollWidth,"px")},inputs:{scrollbarV:"scrollbarV",scrollbarH:"scrollbarH",scrollHeight:"scrollHeight",scrollWidth:"scrollWidth"},outputs:{scroll:"scroll"},ngContentSelectors:T,decls:1,vars:0,template:function(ie,Ze){1&ie&&(r.F$t(),r.Hsn(0))},encapsulation:2,changeDetection:0}),gt})(),Hi=(()=>{class gt{constructor(ie){this.template=ie}}return gt.\u0275fac=function(ie){return new(ie||gt)(r.Y36(r.Rgc))},gt.\u0275dir=r.lG2({type:gt,selectors:[["","ngx-datatable-group-header-template",""]]}),gt})(),Dn=(()=>{class gt{constructor(){this.rowHeight=0,this.toggle=new r.vpe}get template(){return this._templateInput||this._templateQuery}toggleExpandGroup(ie){this.toggle.emit({type:"group",value:ie})}expandAllGroups(){this.toggle.emit({type:"all",value:!0})}collapseAllGroups(){this.toggle.emit({type:"all",value:!1})}}return gt.\u0275fac=function(ie){return new(ie||gt)},gt.\u0275dir=r.lG2({type:gt,selectors:[["ngx-datatable-group-header"]],contentQueries:function(ie,Ze,Jt){if(1&ie&&r.Suo(Jt,Hi,7,r.Rgc),2&ie){let gn;r.iGM(gn=r.CRH())&&(Ze._templateQuery=gn.first)}},inputs:{rowHeight:"rowHeight",_templateInput:["template","_templateInput"]},outputs:{toggle:"toggle"}}),gt})();function Hn(){return""}function jt(gt){return null==gt?Hn:"number"==typeof gt?Fe:-1!==gt.indexOf(".")?et:Ie}function Fe(gt,Tn){return null==gt?"":gt&&null!=Tn?gt[Tn]??"":gt}function Ie(gt,Tn){return null==gt?"":gt&&Tn?gt[Tn]??"":gt}function et(gt,Tn){if(null==gt)return"";if(!gt||!Tn)return gt;let ie=gt[Tn];if(void 0!==ie)return ie;ie=gt;const Ze=Tn.split(".");if(Ze.length)for(let Jt=0;Jtjt(gt)(Tn,gt))}function an(gt,Tn,ie){if(Tn&&ie){const Ze={},Jt=gt.length;let gn=null;Ze[0]=new lt;const vi=gt.reduce((Xi,ws)=>{const ds=ie(ws);return-1===Xi.indexOf(ds)&&Xi.push(ds),Xi},[]);for(let Xi=0;Xi-1&&(ws=ds),gn.parent=Ze[ws],gn.row.level=gn.parent.row.level+1,gn.parent.children.push(gn)}let Bi=[];return Ze[0].flatten(function(){Bi=[...Bi,this.row]},!0),Bi}return gt}class lt{constructor(Tn=null){Tn||(Tn={level:-1,treeStatus:"expanded"}),this.row=Tn,this.parent=null,this.children=[]}flatten(Tn,ie){if("expanded"===this.row.treeStatus)for(let Ze=0,Jt=this.children.length;Ze` ${Tn}`).replace(/^./,Tn=>Tn.toUpperCase())}function gr(gt){if(!gt)return;let Tn=!1;for(const ie of gt)ie.$$id||(ie.$$id=("0000"+(Math.random()*Math.pow(36,4)<<0).toString(36)).slice(-4)),Pn(ie.prop)&&ie.name&&(ie.prop=Rt(ie.name)),ie.$$valueGetter||(ie.$$valueGetter=jt(ie.prop)),!Pn(ie.prop)&&Pn(ie.name)&&(ie.name=Pe(String(ie.prop))),Pn(ie.prop)&&Pn(ie.name)&&(ie.name=""),ie.hasOwnProperty("resizeable")||(ie.resizeable=!0),ie.hasOwnProperty("sortable")||(ie.sortable=!0),ie.hasOwnProperty("draggable")||(ie.draggable=!0),ie.hasOwnProperty("canAutoResize")||(ie.canAutoResize=!0),ie.hasOwnProperty("width")||(ie.width=150),ie.hasOwnProperty("isTreeColumn")&&ie.isTreeColumn&&!Tn?Tn=!0:ie.isTreeColumn=!1}function Pn(gt){return null==gt}var Pr=(()=>{return(gt=Pr||(Pr={})).standard="standard",gt.flex="flex",gt.force="force",Pr;var gt})(),tr=(()=>{return(gt=tr||(tr={})).single="single",gt.multi="multi",gt.multiClick="multiClick",gt.cell="cell",gt.checkbox="checkbox",tr;var gt})(),Zn=(()=>{return(gt=Zn||(Zn={})).single="single",gt.multi="multi",Zn;var gt})(),nr=(()=>{return(gt=nr||(nr={})).header="header",gt.body="body",nr;var gt})();let Zt=(()=>{class gt{constructor(ie){this.template=ie}}return gt.\u0275fac=function(ie){return new(ie||gt)(r.Y36(r.Rgc))},gt.\u0275dir=r.lG2({type:gt,selectors:[["","ngx-datatable-header-template",""]]}),gt})(),dn=(()=>{class gt{constructor(ie){this.template=ie}}return gt.\u0275fac=function(ie){return new(ie||gt)(r.Y36(r.Rgc))},gt.\u0275dir=r.lG2({type:gt,selectors:[["","ngx-datatable-cell-template",""]]}),gt})(),Ge=(()=>{class gt{constructor(ie){this.template=ie}}return gt.\u0275fac=function(ie){return new(ie||gt)(r.Y36(r.Rgc))},gt.\u0275dir=r.lG2({type:gt,selectors:[["","ngx-datatable-tree-toggle",""]]}),gt})(),Ot=(()=>{class gt{constructor(ie){this.columnChangesService=ie,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 gt.\u0275fac=function(ie){return new(ie||gt)(r.Y36(Ei))},gt.\u0275dir=r.lG2({type:gt,selectors:[["ngx-datatable-column"]],contentQueries:function(ie,Ze,Jt){if(1&ie&&(r.Suo(Jt,dn,7,r.Rgc),r.Suo(Jt,Zt,7,r.Rgc),r.Suo(Jt,Ge,7,r.Rgc)),2&ie){let gn;r.iGM(gn=r.CRH())&&(Ze._cellTemplateQuery=gn.first),r.iGM(gn=r.CRH())&&(Ze._headerTemplateQuery=gn.first),r.iGM(gn=r.CRH())&&(Ze._treeToggleTemplateQuery=gn.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]}),gt})(),mn=(()=>{class gt{constructor(ie){this.template=ie}}return gt.\u0275fac=function(ie){return new(ie||gt)(r.Y36(r.Rgc))},gt.\u0275dir=r.lG2({type:gt,selectors:[["","ngx-datatable-row-detail-template",""]]}),gt})(),wr=(()=>{class gt{constructor(){this.rowHeight=0,this.toggle=new r.vpe}get template(){return this._templateInput||this._templateQuery}toggleExpandRow(ie){this.toggle.emit({type:"row",value:ie})}expandAllRows(){this.toggle.emit({type:"all",value:!0})}collapseAllRows(){this.toggle.emit({type:"all",value:!1})}}return gt.\u0275fac=function(ie){return new(ie||gt)},gt.\u0275dir=r.lG2({type:gt,selectors:[["ngx-datatable-row-detail"]],contentQueries:function(ie,Ze,Jt){if(1&ie&&r.Suo(Jt,mn,7,r.Rgc),2&ie){let gn;r.iGM(gn=r.CRH())&&(Ze._templateQuery=gn.first)}},inputs:{rowHeight:"rowHeight",_templateInput:["template","_templateInput"]},outputs:{toggle:"toggle"}}),gt})(),Ti=(()=>{class gt{get template(){return this._templateInput||this._templateQuery}}return gt.\u0275fac=function(ie){return new(ie||gt)},gt.\u0275dir=r.lG2({type:gt,selectors:[["ngx-datatable-footer"]],contentQueries:function(ie,Ze,Jt){if(1&ie&&r.Suo(Jt,ii,5,r.Rgc),2&ie){let gn;r.iGM(gn=r.CRH())&&(Ze._templateQuery=gn.first)}},inputs:{footerHeight:"footerHeight",totalMessage:"totalMessage",selectedMessage:"selectedMessage",pagerLeftArrowIcon:"pagerLeftArrowIcon",pagerRightArrowIcon:"pagerRightArrowIcon",pagerPreviousIcon:"pagerPreviousIcon",pagerNextIcon:"pagerNextIcon",_templateInput:["template","_templateInput"]}}),gt})();function Ci(gt){const Tn={left:[],center:[],right:[]};if(gt)for(const ie of gt)ie.frozenLeft?Tn.left.push(ie):ie.frozenRight?Tn.right.push(ie):Tn.center.push(ie);return Tn}function Ai(gt,Tn){return{left:Ko(gt.left),center:Ko(gt.center),right:Ko(gt.right),total:Math.floor(Ko(Tn))}}function Ko(gt,Tn){let ie=0;if(gt)for(const Ze of gt)ie+=parseFloat(Tn&&Ze[Tn]?Ze[Tn]:Ze.width);return ie}function dr(gt){const Tn=[],ie=Ci(gt);return Tn.push({type:"left",columns:ie.left}),Tn.push({type:"center",columns:ie.center}),Tn.push({type:"right",columns:ie.right}),Tn}class Ni{constructor(){this.treeArray=[]}clearCache(){this.treeArray=[]}initCache(Tn){const{rows:ie,rowHeight:Ze,detailRowHeight:Jt,externalVirtual:gn,rowCount:vi,rowIndexes:Bi,rowExpansions:Xi}=Tn,ws="function"==typeof Ze,ds="function"==typeof Jt;if(!ws&&isNaN(Ze))throw new Error(`Row Height cache initialization failed. Please ensure that 'rowHeight' is a\n valid number or function value: (${Ze}) when 'scrollbarV' is enabled.`);if(!ds&&isNaN(Jt))throw new Error(`Row Height cache initialization failed. Please ensure that 'detailRowHeight' is a\n valid number or function value: (${Jt}) when 'scrollbarV' is enabled.`);const qs=gn?vi:ie.length;this.treeArray=new Array(qs);for(let Js=0;Js=0;)ie+=this.treeArray[Tn],Tn=(Tn&Tn+1)-1;return ie}queryBetween(Tn,ie){return this.query(ie)-this.query(Tn-1)}calcRowIndex(Tn){if(!this.treeArray.length)return 0;let ie=-1;const Ze=this.treeArray.length;for(let gn=Math.pow(2,Ze.toString(2).length-1);0!==gn;gn>>=1){const vi=ie+gn;vi=this.treeArray[vi]&&(Tn-=this.treeArray[vi],ie=vi)}return ie+1}}const ti={},Vr=typeof document<"u"?document.createElement("div").style:void 0,ji=function(){const gt=typeof window<"u"?window.getComputedStyle(document.documentElement,""):void 0,Tn=typeof gt<"u"?Array.prototype.slice.call(gt).join("").match(/-(moz|webkit|ms)-/):null,ie=null!==Tn?Tn[1]:void 0,Ze=typeof ie<"u"?"WebKit|Moz|MS|O".match(new RegExp("("+ie+")","i"))[1]:void 0;return Ze?{dom:Ze,lowercase:ie,css:`-${ie}-`,js:ie[0].toUpperCase()+ie.substr(1)}:void 0}();function Vi(gt){const Tn=Rt(gt);return ti[Tn]||(void 0!==ji&&void 0!==Vr[ji.css+gt]?ti[Tn]=ji.css+gt:void 0!==Vr[gt]&&(ti[Tn]=gt)),ti[Tn]}const Po=typeof window<"u"?Vi("transform"):void 0,ko=typeof window<"u"?Vi("backfaceVisibility"):void 0,Ir=typeof window<"u"?!!Vi("transform"):void 0,ro=typeof window<"u"?!!Vi("perspective"):void 0,Vt=typeof window<"u"?window.navigator.userAgent:"Chrome",bn=/Safari\//.test(Vt)&&!/Chrome\//.test(Vt);function Bn(gt,Tn,ie){typeof Po<"u"&&Ir?!bn&&ro?(gt[Po]=`translate3d(${Tn}px, ${ie}px, 0)`,gt[ko]="hidden"):gt[Rt(Po)]=`translate(${Tn}px, ${ie}px)`:(gt.top=`${ie}px`,gt.left=`${Tn}px`)}let ci=(()=>{class gt{constructor(ie){this.cd=ie,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 Ni,this.temp=[],this.offsetY=0,this.indexes={},this.rowIndexes=new WeakMap,this.rowExpansions=[],this.getDetailRowHeight=(Ze,Jt)=>{if(!this.rowDetail)return 0;const gn=this.rowDetail.rowHeight;return"function"==typeof gn?gn(Ze,Jt):gn},this.rowTrackingFn=(Ze,Jt)=>{const gn=this.getRowIndex(Jt);return this.trackByProp?Jt[this.trackByProp]:gn}}set pageSize(ie){this._pageSize=ie,this.recalcLayout()}get pageSize(){return this._pageSize}set rows(ie){this._rows=ie,this.recalcLayout()}get rows(){return this._rows}set columns(ie){this._columns=ie;const Ze=Ci(ie);this.columnGroupWidths=Ai(Ze,ie)}get columns(){return this._columns}set offset(ie){this._offset=ie,(!this.scrollbarV||this.scrollbarV&&!this.virtualization)&&this.recalcLayout()}get offset(){return this._offset}set rowCount(ie){this._rowCount=ie,this.recalcLayout()}get rowCount(){return this._rowCount}get bodyWidth(){return this.scrollbarH?this.innerWidth+"px":"100%"}set bodyHeight(ie){this._bodyHeight=this.scrollbarV?ie+"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:ie,value:Ze})=>{"row"===ie&&this.toggleRowExpansion(Ze),"all"===ie&&this.toggleAllRows(Ze),this.updateIndexes(),this.updateRows(),this.cd.markForCheck()})),this.groupHeader&&(this.listener=this.groupHeader.toggle.subscribe(({type:ie,value:Ze})=>{"group"===ie&&this.toggleRowExpansion(Ze),"all"===ie&&this.toggleAllRows(Ze),this.updateIndexes(),this.updateRows(),this.cd.markForCheck()}))}ngOnDestroy(){(this.rowDetail||this.groupHeader)&&this.listener.unsubscribe()}updateOffsetY(ie){this.scroller&&(this.scrollbarV&&this.virtualization&&ie?ie=this.rowHeightsCache.query(this.pageSize*ie-1):this.scrollbarV&&!this.virtualization&&(ie=0),this.scroller.setOffset(ie||0))}onBodyScroll(ie){const Ze=ie.scrollYPos,Jt=ie.scrollXPos;(this.offsetY!==Ze||this.offsetX!==Jt)&&this.scroll.emit({offsetY:Ze,offsetX:Jt}),this.offsetY=Ze,this.offsetX=Jt,this.updateIndexes(),this.updatePage(ie.direction),this.updateRows()}updatePage(ie){let Ze=this.indexes.first/this.pageSize;"up"===ie?Ze=Math.ceil(Ze):"down"===ie&&(Ze=Math.floor(Ze)),void 0!==ie&&!isNaN(Ze)&&this.page.emit({offset:Ze})}updateRows(){const{first:ie,last:Ze}=this.indexes;let Jt=ie,gn=0;const vi=[];if(this.groupedRows){let Bi=3;for(1===this.groupedRows.length&&(Bi=this.groupedRows[0].value.length);Jt{this.rowIndexes.set(ws,`${Jt}-${ds}`)}),vi[gn]=Xi,gn++,Jt++}}else for(;Jtthis.loadingIndicator=!1,500)}updateIndexes(){let ie=0,Ze=0;if(this.scrollbarV)if(this.virtualization){const Jt=parseInt(this.bodyHeight,0);ie=this.rowHeightsCache.getRowIndex(this.offsetY),Ze=this.rowHeightsCache.getRowIndex(Jt+this.offsetY)+1}else ie=0,Ze=this.rowCount;else this.externalPaging||(ie=Math.max(this.offset*this.pageSize,0)),Ze=Math.min(ie+this.pageSize,this.rowCount);this.indexes={first:ie,last:Ze}}refreshRowHeightCache(){if(this.scrollbarV&&(!this.scrollbarV||this.virtualization)&&(this.rowHeightsCache.clearCache(),this.rows&&this.rows.length)){const ie=new Set;for(const Ze of this.rows)this.getRowExpanded(Ze)&&ie.add(Ze);this.rowHeightsCache.initCache({rows:this.rows,rowHeight:this.rowHeight,detailRowHeight:this.getDetailRowHeight,externalVirtual:this.scrollbarV&&this.externalPaging,rowCount:this.rowCount,rowIndexes:this.rowIndexes,rowExpansions:ie})}}getAdjustedViewPortIndex(){const ie=this.indexes.first;return this.scrollbarV&&this.virtualization&&this.rowHeightsCache.query(ie-1)<=this.offsetY?ie-1:ie}toggleRowExpansion(ie){const Ze=this.getAdjustedViewPortIndex(),Jt=this.getRowExpandedIdx(ie,this.rowExpansions),gn=Jt>-1;if(this.scrollbarV&&this.virtualization){const vi=this.getDetailRowHeight(ie)*(gn?-1:1),Bi=this.getRowIndex(ie);this.rowHeightsCache.update(Bi,vi)}gn?this.rowExpansions.splice(Jt,1):this.rowExpansions.push(ie),this.detailToggle.emit({rows:[ie],currentIndex:Ze})}toggleAllRows(ie){this.rowExpansions=[];const Ze=this.getAdjustedViewPortIndex();if(ie)for(const Jt of this.rows)this.rowExpansions.push(Jt);this.scrollbarV&&this.recalcLayout(),this.detailToggle.emit({rows:this.rows,currentIndex:Ze})}recalcLayout(){this.refreshRowHeightCache(),this.updateIndexes(),this.updateRows()}columnTrackingFn(ie,Ze){return Ze.$$id}stylesByGroup(ie){const Ze=this.columnGroupWidths,Jt=this.offsetX,gn={width:`${Ze[ie]}px`};if("left"===ie)Bn(gn,Jt,0);else if("right"===ie){const vi=parseInt(this.innerWidth+"",0);Bn(gn,-1*(Ze.total-vi-Jt),0)}return gn}getRowExpanded(ie){if(0===this.rowExpansions.length&&this.groupExpansionDefault)for(const Ze of this.groupedRows)this.rowExpansions.push(Ze);return this.getRowExpandedIdx(ie,this.rowExpansions)>-1}getRowExpandedIdx(ie,Ze){if(!Ze||!Ze.length)return-1;const Jt=this.rowIdentity(ie);return Ze.findIndex(gn=>this.rowIdentity(gn)===Jt)}getRowIndex(ie){return this.rowIndexes.get(ie)||0}onTreeAction(ie){this.treeAction.emit({row:ie})}}return gt.\u0275fac=function(ie){return new(ie||gt)(r.Y36(r.sBO))},gt.\u0275cmp=r.Xpm({type:gt,selectors:[["datatable-body"]],viewQuery:function(ie,Ze){if(1&ie&&r.Gf(qr,5),2&ie){let Jt;r.iGM(Jt=r.CRH())&&(Ze.scroller=Jt.first)}},hostAttrs:[1,"datatable-body"],hostVars:4,hostBindings:function(ie,Ze){2&ie&&r.Udp("width",Ze.bodyWidth)("height",Ze.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(ie,Ze){1&ie&&(r.YNc(0,M,1,0,"datatable-progress",0),r.TgZ(1,"datatable-selection",1,2),r.NdJ("select",function(gn){return Ze.select.emit(gn)})("activate",function(gn){return Ze.activate.emit(gn)}),r.YNc(3,F,4,8,"datatable-scroller",3),r.YNc(4,X,1,1,"div",4),r.qZA()),2&ie&&(r.Q6J("ngIf",Ze.loadingIndicator),r.xp6(1),r.Q6J("selected",Ze.selected)("rows",Ze.rows)("selectCheck",Ze.selectCheck)("selectEnabled",Ze.selectEnabled)("selectionType",Ze.selectionType)("rowIdentity",Ze.rowIdentity),r.xp6(2),r.Q6J("ngIf",null==Ze.rows?null:Ze.rows.length),r.xp6(1),r.Q6J("ngIf",!(null!=Ze.rows&&Ze.rows.length||Ze.loadingIndicator)))},dependencies:function(){return[a.sg,a.O5,a.PC,qr,Ha,hs,$s,Xo,ns]},encapsulation:2,changeDetection:0}),gt})(),_o=(()=>{class gt{constructor(ie){this.cd=ie,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(ie){this._innerWidth=ie,setTimeout(()=>{if(this._columns){const Ze=Ci(this._columns);this._columnGroupWidths=Ai(Ze,this._columns),this.setStylesByGroup()}})}get innerWidth(){return this._innerWidth}set headerHeight(ie){this._headerHeight="auto"!==ie?`${ie}px`:ie}get headerHeight(){return this._headerHeight}set columns(ie){this._columns=ie;const Ze=Ci(ie);this._columnsByPin=dr(ie),setTimeout(()=>{this._columnGroupWidths=Ai(Ze,ie),this.setStylesByGroup()})}get columns(){return this._columns}set offsetX(ie){this._offsetX=ie,this.setStylesByGroup()}get offsetX(){return this._offsetX}ngOnDestroy(){this.destroyed=!0}onLongPressStart({event:ie,model:Ze}){Ze.dragging=!0,this.dragEventTarget=ie}onLongPressEnd({event:ie,model:Ze}){this.dragEventTarget=ie,setTimeout(()=>{const Jt=this._columns.find(gn=>gn.$$id===Ze.$$id);Jt&&(Jt.dragging=!1)},5)}get headerWidth(){return this.scrollbarH?this.innerWidth+"px":"100%"}trackByGroups(ie,Ze){return Ze.type}columnTrackingFn(ie,Ze){return Ze.$$id}onColumnResized(ie,Ze){ie<=Ze.minWidth?ie=Ze.minWidth:ie>=Ze.maxWidth&&(ie=Ze.maxWidth),this.resize.emit({column:Ze,prevValue:Ze.width,newValue:ie})}onColumnReordered({prevIndex:ie,newIndex:Ze,model:Jt}){const gn=this.getColumn(Ze);gn.isTarget=!1,gn.targetMarkerContext=void 0,this.reorder.emit({column:Jt,prevValue:ie,newValue:Ze})}onTargetChanged({prevIndex:ie,newIndex:Ze,initialIndex:Jt}){if(ie||0===ie){const gn=this.getColumn(ie);gn.isTarget=!1,gn.targetMarkerContext=void 0}if(Ze||0===Ze){const gn=this.getColumn(Ze);gn.isTarget=!0,Jt!==Ze&&(gn.targetMarkerContext={class:"targetMarker ".concat(Jt>Ze?"dragFromRight":"dragFromLeft")})}}getColumn(ie){const Ze=this._columnsByPin[0].columns.length;if(ie((Bi=Object.assign({},Bi)).prop===ie.prop&&(gn=Xi),Bi));return void 0===Jt?vi.splice(gn,1):Ze?vi[gn].dir=Jt:(this.sortType===Zn.single&&vi.splice(0,this.sorts.length),vi.push({dir:Jt,prop:ie.prop})),vi}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(ie){const Ze=this._columnGroupWidths,gn={width:`${Ze[ie]}px`};return"center"===ie?Bn(gn,-1*this.offsetX,0):"right"===ie&&Bn(gn,-1*(Ze.total-this.innerWidth),0),gn}}return gt.\u0275fac=function(ie){return new(ie||gt)(r.Y36(r.sBO))},gt.\u0275cmp=r.Xpm({type:gt,selectors:[["datatable-header"]],hostAttrs:[1,"datatable-header"],hostVars:4,hostBindings:function(ie,Ze){2&ie&&r.Udp("height",Ze.headerHeight)("width",Ze.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(ie,Ze){1&ie&&(r.TgZ(0,"div",0),r.NdJ("reorder",function(gn){return Ze.onColumnReordered(gn)})("targetChanged",function(gn){return Ze.onTargetChanged(gn)}),r.YNc(1,V,2,5,"div",1),r.qZA()),2&ie&&(r.Udp("width",Ze._columnGroupWidths.total,"px"),r.xp6(1),r.Q6J("ngForOf",Ze._columnsByPin)("ngForTrackBy",Ze.trackByGroups))},dependencies:function(){return[a.sg,a.PC,pr,Eo,po,$i,$a]},encapsulation:2,changeDetection:0}),gt})();function go(gt,Tn,ie){ie=ie||{};let Ze,Jt,gn,vi=null,Bi=0;function Xi(){Bi=!1===ie.leading?0:+new Date,vi=null,gn=gt.apply(Ze,Jt)}return function(){const ws=+new Date;!Bi&&!1===ie.leading&&(Bi=ws);const ds=Tn-(ws-Bi);return Ze=this,Jt=arguments,ds<=0?(clearTimeout(vi),vi=null,Bi=ws,gn=gt.apply(Ze,Jt)):!vi&&!1!==ie.trailing&&(vi=setTimeout(Xi,ds)),gn}}function es(gt,Tn){return function(Ze,Jt,gn){return{configurable:!0,enumerable:gn.enumerable,get:function(){return Object.defineProperty(this,Jt,{configurable:!0,enumerable:gn.enumerable,value:go(gn.value,gt,Tn)}),this[Jt]}}}}function Is(gt,Tn){for(const ie of Tn){const Ze=gt.indexOf(ie);gt.splice(Ze,1)}}function la(gt,Tn=300){let ie=0;for(const Ze of gt)ie+=Ze.width||Tn;return ie}var Ro=(()=>{return(gt=Ro||(Ro={})).asc="asc",gt.desc="desc",Ro;var gt})();function gl(gt,Tn){if((null===gt||typeof gt>"u")&&(gt=0),(null===Tn||typeof Tn>"u")&&(Tn=0),gt instanceof Date&&Tn instanceof Date){if(gtTn)return 1}else if(isNaN(parseFloat(gt))||!isFinite(gt)||isNaN(parseFloat(Tn))||!isFinite(Tn)){if(gt=String(gt),Tn=String(Tn),gt.toLowerCase()Tn.toLowerCase())return 1}else{if(parseFloat(gt)parseFloat(Tn))return 1}return 0}let da=(()=>{class gt{constructor(ie,Ze,Jt,gn,vi,Bi,Xi){this.scrollbarHelper=ie,this.dimensionsHelper=Ze,this.cd=Jt,this.columnChangesService=Bi,this.configuration=Xi,this.selected=[],this.scrollbarV=!1,this.scrollbarH=!1,this.rowHeight=30,this.columnMode=Pr.standard,this.headerHeight=30,this.footerHeight=0,this.externalPaging=!1,this.externalSorting=!1,this.loadingIndicator=!1,this.reorderable=!0,this.swapColumns=!0,this.sortType=Zn.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=ws=>this._groupRowsBy?ws.key:ws,this.element=gn.nativeElement,this.rowDiffer=vi.find({}).create(),this.configuration&&this.configuration.messages&&(this.messages=Object.assign({},this.configuration.messages))}set rows(ie){this._rows=ie,ie&&(this._internalRows=[...ie]),this.externalSorting||this.sortInternalRows(),this._internalRows=an(this._internalRows,ze(this.treeFromRelation),ze(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(ie){ie&&(this._groupRowsBy=ie,this._rows&&this._groupRowsBy&&(this.groupedRows=this.groupArrayBy(this._rows,this._groupRowsBy)))}get groupRowsBy(){return this._groupRowsBy}set columns(ie){ie&&(this._internalColumns=[...ie],gr(this._internalColumns),this.recalculateColumns()),this._columns=ie}get columns(){return this._columns}set limit(ie){this._limit=ie,this.recalculate()}get limit(){return this._limit}set count(ie){this._count=ie,this.recalculate()}get count(){return this._count}set offset(ie){this._offset=ie}get offset(){return Math.max(Math.min(this._offset,Math.ceil(this.rowCount/this.pageSize)-1),0)}get isFixedHeader(){const ie=this.headerHeight;return"string"!=typeof ie||"auto"!==ie}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===tr.checkbox}get isCellSelection(){return this.selectionType===tr.cell}get isSingleSelection(){return this.selectionType===tr.single}get isMultiSelection(){return this.selectionType===tr.multi}get isMultiClickSelection(){return this.selectionType===tr.multiClick}set columnTemplates(ie){this._columnTemplates=ie,this.translateColumns(ie)}get columnTemplates(){return this._columnTemplates}get allRowsSelected(){let ie=this.rows&&this.selected&&this.selected.length===this.rows.length;if(this.bodyComponent&&this.selectAllRowsOnPage){const Ze=this.bodyComponent.indexes;ie=this.selected.length===Ze.last-Ze.first}return this.selected&&this.rows&&0!==this.rows.length&&ie}ngOnInit(){this.recalculate()}ngAfterViewInit(){this.externalSorting||this.sortInternalRows(),!(typeof requestAnimationFrame>"u")&&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(ie=>this.translateColumns(ie)),this.listenForColumnInputChanges()}translateColumns(ie){if(ie){const Ze=ie.toArray();Ze.length&&(this._internalColumns=function _r(gt){const Tn=[];for(const ie of gt){const Ze={},Jt=Object.getOwnPropertyNames(ie);for(const gn of Jt)Ze[gn]=ie[gn];ie.headerTemplate&&(Ze.headerTemplate=ie.headerTemplate),ie.cellTemplate&&(Ze.cellTemplate=ie.cellTemplate),ie.summaryFunc&&(Ze.summaryFunc=ie.summaryFunc),ie.summaryTemplate&&(Ze.summaryTemplate=ie.summaryTemplate),Tn.push(Ze)}return Tn}(Ze),gr(this._internalColumns),this.recalculateColumns(),this.sortInternalRows(),this.cd.markForCheck())}}groupArrayBy(ie,Ze){const Jt=new Map;return ie.forEach(Bi=>{const Xi=Bi[Ze];Jt.has(Xi)?Jt.get(Xi).push(Bi):Jt.set(Xi,[Bi])}),Array.from(Jt,Bi=>((Bi,Xi)=>({key:Bi,value:Xi}))(Bi[0],Bi[1]))}ngDoCheck(){this.rowDiffer.diff(this.rows)&&(this.externalSorting?this._internalRows=[...this.rows]:this.sortInternalRows(),this._internalRows=an(this._internalRows,ze(this.treeFromRelation),ze(this.treeToRelation)),this.recalculatePages(),this.cd.markForCheck())}recalculate(){this.recalculateDims(),this.recalculateColumns(),this.cd.markForCheck()}onWindowResize(){this.recalculate()}recalculateColumns(ie=this._internalColumns,Ze=-1,Jt=this.scrollbarH){if(!ie)return;let gn=this._innerWidth;return this.scrollbarV&&(gn-=this.scrollbarHelper.width),this.columnMode===Pr.force?function gs(gt,Tn,ie,Ze,Jt=300){const gn=gt.slice(ie+1,gt.length).filter(Js=>!1!==Js.canAutoResize);for(const Js of gn)Js.$$oldWidth||(Js.$$oldWidth=Js.width);let vi=0,Bi=!1,Xi=la(gt,Jt),ws=Tn-Xi;const ds=[];do{vi=ws/gn.length,Bi=Xi>=Tn;for(const Js of gn){if(Bi&&Ze)Js.width=Js.$$oldWidth||Js.width||Jt;else{const Ll=(Js.width||Jt)+vi;Js.minWidth&&LlJs.maxWidth?(Js.width=Js.maxWidth,ds.push(Js)):Js.width=Ll}Js.width=Math.max(0,Js.width)}Xi=la(gt),ws=Tn-Xi,Is(gn,ds)}while(ws>1&&0!==gn.length)}(ie,gn,Ze,Jt):this.columnMode===Pr.flex&&function jo(gt,Tn){const ie=function _s(gt,Tn){let ie=0;for(const Ze of gt)ie+=Tn&&Ze[Tn]?Ze[Tn]:Ze.width;return ie}(gt),Ze=function ts(gt){let Tn=0;for(const ie of gt)Tn+=ie.flexGrow||0;return Tn}(gt),Jt=Ci(gt);ie!==Tn&&function ss(gt,Tn,ie){for(const gn in gt)for(const vi of gt[gn])vi.canAutoResize?vi.width=0:(Tn-=vi.width,ie-=vi.flexGrow?vi.flexGrow:0);const Ze={};let Jt=Tn;do{const gn=Jt/ie;Jt=0;for(const vi in gt)for(const Bi of gt[vi])if(Bi.canAutoResize&&!Ze[Bi.prop]){const Xi=Bi.width+Bi.flexGrow*gn;void 0!==Bi.minWidth&&Xi((vi=Object.assign({},vi)).$$id===ie.$$id&&(Jt=Bi,vi.width=Ze,vi.$$oldWidth=Ze),vi));this.recalculateColumns(gn,Jt),this._internalColumns=gn,this.resize.emit({column:ie,newValue:Ze})}onColumnReorder({column:ie,newValue:Ze,prevValue:Jt}){const gn=this._internalColumns.map(vi=>Object.assign({},vi));if(this.swapColumns){const vi=gn[Ze];gn[Ze]=ie,gn[Jt]=vi}else if(Ze>Jt){const vi=gn[Jt];for(let Bi=Jt;BiZe;Bi--)gn[Bi]=gn[Bi-1];gn[Ze]=vi}this._internalColumns=gn,this.reorder.emit({column:ie,newValue:Ze,prevValue:Jt})}onColumnSort(ie){this.selectAllRowsOnPage&&(this.selected=[],this.select.emit({selected:this.selected})),this.sorts=ie.sorts,!1===this.externalSorting&&this.sortInternalRows(),this._internalRows=an(this._internalRows,ze(this.treeFromRelation),ze(this.treeToRelation)),this.offset=0,this.bodyComponent.updateOffsetY(this.offset),this.sort.emit(ie)}onHeaderSelect(ie){if(this.bodyComponent&&this.selectAllRowsOnPage){const Ze=this.bodyComponent.indexes.first,Jt=this.bodyComponent.indexes.last,gn=this.selected.length===Jt-Ze;this.selected=[],gn||this.selected.push(...this._internalRows.slice(Ze,Jt))}else{const Ze=this.selected.length===this.rows.length;this.selected=[],Ze||this.selected.push(...this.rows)}this.select.emit({selected:this.selected})}onBodySelect(ie){this.select.emit(ie)}onTreeAction(ie){const Ze=ie.row,Jt=this._rows.findIndex(gn=>gn[this.treeToRelation]===ie.row[this.treeToRelation]);this.treeAction.emit({row:Ze,rowIndex:Jt})}ngOnDestroy(){this._subscriptions.forEach(ie=>ie.unsubscribe())}listenForColumnInputChanges(){this._subscriptions.push(this.columnChangesService.columnInputChanges$.subscribe(()=>{this.columnTemplates&&this.columnTemplates.notifyOnChanges()}))}sortInternalRows(){this._internalRows=function qa(gt,Tn,ie){if(!gt)return[];if(!ie||!ie.length||!Tn)return[...gt];const Ze=new Map;gt.forEach((Bi,Xi)=>Ze.set(Bi,Xi));const Jt=[...gt],gn=Tn.reduce((Bi,Xi)=>(Xi.comparator&&"function"==typeof Xi.comparator&&(Bi[Xi.prop]=Xi.comparator),Bi),{}),vi=ie.map(Bi=>{const Xi=Bi.prop;return{prop:Xi,dir:Bi.dir,valueGetter:jt(Xi),compareFn:gn[Xi]||gl}});return Jt.sort(function(Bi,Xi){for(const ws of vi){const{prop:ds,valueGetter:qs}=ws,Js=qs(Bi,ds),Ll=qs(Xi,ds),vl=ws.dir!==Ro.desc?ws.compareFn(Js,Ll,Bi,Xi,ws.dir):-ws.compareFn(Js,Ll,Bi,Xi,ws.dir);if(0!==vl)return vl}return Ze.has(Bi)&&Ze.has(Xi)?Ze.get(Bi)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,m.gn)([es(5)],gt.prototype,"onWindowResize",null),gt})(),$a=(()=>{class gt{constructor(ie){this.cd=ie,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(ie){this._allRowsSelected=ie,this.cellContext.allRowsSelected=ie}get allRowsSelected(){return this._allRowsSelected}set column(ie){this._column=ie,this.cellContext.column=ie,this.cd.markForCheck()}get column(){return this._column}set sorts(ie){this._sorts=ie,this.sortDir=this.calcSortDir(ie),this.cellContext.sortDir=this.sortDir,this.sortClass=this.calcSortClass(this.sortDir),this.cd.markForCheck()}get sorts(){return this._sorts}get columnCssClasses(){let ie="datatable-header-cell";if(this.column.sortable&&(ie+=" sortable"),this.column.resizeable&&(ie+=" resizeable"),this.column.headerClass)if("string"==typeof this.column.headerClass)ie+=" "+this.column.headerClass;else if("function"==typeof this.column.headerClass){const Jt=this.column.headerClass({column:this.column});if("string"==typeof Jt)ie+=Jt;else if("object"==typeof Jt){const gn=Object.keys(Jt);for(const vi of gn)!0===Jt[vi]&&(ie+=` ${vi}`)}}const Ze=this.sortDir;return Ze&&(ie+=` sort-active sort-${Ze}`),ie}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===tr.checkbox}onContextmenu(ie){this.columnContextmenu.emit({event:ie,column:this.column})}ngOnInit(){this.sortClass=this.calcSortClass(this.sortDir)}calcSortDir(ie){if(ie&&this.column){const Ze=ie.find(Jt=>Jt.prop===this.column.prop);if(Ze)return Ze.dir}}onSort(){if(!this.column.sortable)return;const ie=function jl(gt,Tn){return gt===Zn.single?Tn===Ro.asc?Ro.desc:Ro.asc:Tn?Tn===Ro.asc?Ro.desc:void 0:Ro.asc}(this.sortType,this.sortDir);this.sort.emit({column:this.column,prevValue:this.sortDir,newValue:ie})}calcSortClass(ie){if(this.cellContext.column.sortable)return ie===Ro.asc?`sort-btn sort-asc ${this.sortAscendingIcon}`:ie===Ro.desc?`sort-btn sort-desc ${this.sortDescendingIcon}`:`sort-btn ${this.sortUnsetIcon}`}}return gt.\u0275fac=function(ie){return new(ie||gt)(r.Y36(r.sBO))},gt.\u0275cmp=r.Xpm({type:gt,selectors:[["datatable-header-cell"]],hostAttrs:[1,"datatable-header-cell"],hostVars:11,hostBindings:function(ie,Ze){1&ie&&r.NdJ("contextmenu",function(gn){return Ze.onContextmenu(gn)}),2&ie&&(r.uIk("title",Ze.name),r.Tol(Ze.columnCssClasses),r.Udp("min-width",Ze.minWidth,"px")("max-width",Ze.maxWidth,"px")("width",Ze.width,"px")("height",Ze.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(ie,Ze){1&ie&&(r.TgZ(0,"div",0),r.YNc(1,Te,1,2,null,1),r.YNc(2,$e,2,1,"label",2),r.YNc(3,ge,2,1,"span",3),r.YNc(4,ot,1,2,null,1),r.TgZ(5,"span",4),r.NdJ("click",function(){return Ze.onSort()}),r.qZA()()),2&ie&&(r.xp6(1),r.Q6J("ngIf",Ze.isTarget),r.xp6(1),r.Q6J("ngIf",Ze.isCheckboxable),r.xp6(1),r.Q6J("ngIf",!Ze.column.headerTemplate),r.xp6(1),r.Q6J("ngIf",Ze.column.headerTemplate),r.xp6(1),r.Tol(Ze.sortClass))},dependencies:[a.O5,a.tP],encapsulation:2,changeDetection:0}),gt})(),Rl=(()=>{class gt{constructor(){this.selectedCount=0,this.page=new r.vpe}get isVisible(){return this.rowCount/this.pageSize>1}get curPage(){return this.offset+1}}return gt.\u0275fac=function(ie){return new(ie||gt)},gt.\u0275cmp=r.Xpm({type:gt,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(ie,Ze){1&ie&&(r.TgZ(0,"div",0),r.YNc(1,He,1,8,null,1),r.YNc(2,Le,3,3,"div",2),r.YNc(3,Pt,1,8,"datatable-pager",3),r.qZA()),2&ie&&(r.Udp("height",Ze.footerHeight,"px"),r.Q6J("ngClass",r.VKq(6,it,Ze.selectedMessage)),r.xp6(1),r.Q6J("ngIf",Ze.footerTemplate),r.xp6(1),r.Q6J("ngIf",!Ze.footerTemplate),r.xp6(1),r.Q6J("ngIf",!Ze.footerTemplate))},dependencies:function(){return[a.mk,a.O5,a.tP,Ji]},encapsulation:2,changeDetection:0}),gt})(),Ji=(()=>{class gt{constructor(){this.change=new r.vpe,this._count=0,this._page=1,this._size=0}set size(ie){this._size=ie,this.pages=this.calcPages()}get size(){return this._size}set count(ie){this._count=ie,this.pages=this.calcPages()}get count(){return this._count}set page(ie){this._page=ie,this.pages=this.calcPages()}get page(){return this._page}get totalPages(){const ie=this.size<1?1:Math.ceil(this.count/this.size);return Math.max(ie||0,1)}canPrevious(){return this.page>1}canNext(){return this.page0&&ie<=this.totalPages&&ie!==this.page&&(this.page=ie,this.change.emit({page:ie}))}calcPages(ie){const Ze=[];let Jt=1,gn=this.totalPages;ie=ie||this.page,5this.totalPages&&(Jt=Math.max(this.totalPages-5+1,1),gn=this.totalPages));for(let Xi=Jt;Xi<=gn;Xi++)Ze.push({number:Xi,text:Xi});return Ze}}return gt.\u0275fac=function(ie){return new(ie||gt)},gt.\u0275cmp=r.Xpm({type:gt,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(ie,Ze){1&ie&&(r.TgZ(0,"ul",0)(1,"li")(2,"a",1),r.NdJ("click",function(){return Ze.selectPage(1)}),r._UZ(3,"i"),r.qZA()(),r.TgZ(4,"li")(5,"a",2),r.NdJ("click",function(){return Ze.prevPage()}),r._UZ(6,"i"),r.qZA()(),r.YNc(7,Xt,3,4,"li",3),r.TgZ(8,"li")(9,"a",4),r.NdJ("click",function(){return Ze.nextPage()}),r._UZ(10,"i"),r.qZA()(),r.TgZ(11,"li")(12,"a",5),r.NdJ("click",function(){return Ze.selectPage(Ze.totalPages)}),r._UZ(13,"i"),r.qZA()()()),2&ie&&(r.xp6(1),r.ekj("disabled",!Ze.canPrevious()),r.xp6(2),r.Tol(Ze.pagerPreviousIcon),r.xp6(1),r.ekj("disabled",!Ze.canPrevious()),r.xp6(2),r.Tol(Ze.pagerLeftArrowIcon),r.xp6(1),r.Q6J("ngForOf",Ze.pages),r.xp6(1),r.ekj("disabled",!Ze.canNext()),r.xp6(2),r.Tol(Ze.pagerRightArrowIcon),r.xp6(1),r.ekj("disabled",!Ze.canNext()),r.xp6(2),r.Tol(Ze.pagerNextIcon))},dependencies:[a.sg],encapsulation:2,changeDetection:0}),gt})(),Ha=(()=>{class gt{}return gt.\u0275fac=function(ie){return new(ie||gt)},gt.\u0275cmp=r.Xpm({type:gt,selectors:[["datatable-progress"]],decls:3,vars:0,consts:[["role","progressbar",1,"progress-linear"],[1,"container"],[1,"bar"]],template:function(ie,Ze){1&ie&&(r.TgZ(0,"div",0)(1,"div",1),r._UZ(2,"div",2),r.qZA()())},encapsulation:2,changeDetection:0}),gt})();var Ts=(()=>{return(gt=Ts||(Ts={}))[gt.up=38]="up",gt[gt.down=40]="down",gt[gt.return=13]="return",gt[gt.escape=27]="escape",gt[gt.left=37]="left",gt[gt.right=39]="right",Ts;var gt})();let hs=(()=>{class gt{constructor(ie,Ze,Jt,gn){this.differs=ie,this.scrollbarHelper=Ze,this.cd=Jt,this.treeStatus="collapsed",this.activate=new r.vpe,this.treeAction=new r.vpe,this._groupStyles={left:{},center:{},right:{}},this._element=gn.nativeElement,this._rowDiffer=ie.find({}).create()}set columns(ie){this._columns=ie,this.recalculateColumns(ie),this.buildStylesByGroup()}get columns(){return this._columns}set innerWidth(ie){if(this._columns){const Ze=Ci(this._columns);this._columnGroupWidths=Ai(Ze,this._columns)}this._innerWidth=ie,this.recalculateColumns(),this.buildStylesByGroup()}get innerWidth(){return this._innerWidth}set offsetX(ie){this._offsetX=ie,this.buildStylesByGroup()}get offsetX(){return this._offsetX}get cssClass(){let ie="datatable-body-row";if(this.isSelected&&(ie+=" active"),this.rowIndex%2!=0&&(ie+=" datatable-row-odd"),this.rowIndex%2==0&&(ie+=" datatable-row-even"),this.rowClass){const Ze=this.rowClass(this.row);if("string"==typeof Ze)ie+=` ${Ze}`;else if("object"==typeof Ze){const Jt=Object.keys(Ze);for(const gn of Jt)!0===Ze[gn]&&(ie+=` ${gn}`)}}return ie}get columnsTotalWidths(){return this._columnGroupWidths.total}ngDoCheck(){this._rowDiffer.diff(this.row)&&this.cd.markForCheck()}trackByGroups(ie,Ze){return Ze.type}columnTrackingFn(ie,Ze){return Ze.$$id}buildStylesByGroup(){this._groupStyles.left=this.calcStylesByGroup("left"),this._groupStyles.center=this.calcStylesByGroup("center"),this._groupStyles.right=this.calcStylesByGroup("right"),this.cd.markForCheck()}calcStylesByGroup(ie){const Ze=this._columnGroupWidths,Jt=this.offsetX,gn={width:`${Ze[ie]}px`};if("left"===ie)Bn(gn,Jt,0);else if("right"===ie){const vi=parseInt(this.innerWidth+"",0);Bn(gn,-1*(Ze.total-vi-Jt+this.scrollbarHelper.width),0)}return gn}onActivate(ie,Ze){ie.cellIndex=Ze,ie.rowElement=this._element,this.activate.emit(ie)}onKeyDown(ie){const Ze=ie.keyCode;(Ze===Ts.return||Ze===Ts.down||Ze===Ts.up||Ze===Ts.left||Ze===Ts.right)&&ie.target===this._element&&(ie.preventDefault(),ie.stopPropagation(),this.activate.emit({type:"keydown",event:ie,row:this.row,rowElement:this._element}))}onMouseenter(ie){this.activate.emit({type:"mouseenter",event:ie,row:this.row,rowElement:this._element})}recalculateColumns(ie=this.columns){this._columns=ie;const Ze=Ci(this._columns);this._columnsByPin=dr(this._columns),this._columnGroupWidths=Ai(Ze,this._columns)}onTreeAction(){this.treeAction.emit()}}return gt.\u0275fac=function(ie){return new(ie||gt)(r.Y36(r.aQg),r.Y36(so,4),r.Y36(r.sBO),r.Y36(r.SBq))},gt.\u0275cmp=r.Xpm({type:gt,selectors:[["datatable-body-row"]],hostVars:6,hostBindings:function(ie,Ze){1&ie&&r.NdJ("keydown",function(gn){return Ze.onKeyDown(gn)})("mouseenter",function(gn){return Ze.onMouseenter(gn)}),2&ie&&(r.Tol(Ze.cssClass),r.Udp("width",Ze.columnsTotalWidths,"px")("height",Ze.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(ie,Ze){1&ie&&r.YNc(0,pn,2,6,"div",0),2&ie&&r.Q6J("ngForOf",Ze._columnsByPin)("ngForTrackBy",Ze.trackByGroups)},dependencies:function(){return[a.sg,a.PC,Aa]},encapsulation:2,changeDetection:0}),gt})(),$s=(()=>{class gt{constructor(ie,Ze){this.cd=ie,this.differs=Ze,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=Ze.find({}).create()}set rowIndex(ie){this._rowIndex=ie,this.rowContext.rowIndex=ie,this.groupContext.rowIndex=ie,this.cd.markForCheck()}get rowIndex(){return this._rowIndex}set expanded(ie){this._expanded=ie,this.groupContext.expanded=ie,this.rowContext.expanded=ie,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(ie){this.rowContextmenu.emit({event:ie,row:this.row})}getGroupHeaderStyle(){const ie={};return ie.transform="translate3d("+this.offsetX+"px, 0px, 0px)",ie["backface-visibility"]="hidden",ie.width=this.innerWidth,ie}}return gt.\u0275fac=function(ie){return new(ie||gt)(r.Y36(r.sBO),r.Y36(r.aQg))},gt.\u0275cmp=r.Xpm({type:gt,selectors:[["datatable-row-wrapper"]],hostAttrs:[1,"datatable-row-wrapper"],hostBindings:function(ie,Ze){1&ie&&r.NdJ("contextmenu",function(gn){return Ze.onContextmenu(gn)})},inputs:{rowIndex:"rowIndex",expanded:"expanded",innerWidth:"innerWidth",rowDetail:"rowDetail",groupHeader:"groupHeader",offsetX:"offsetX",detailRowHeight:"detailRowHeight",row:"row",groupedRows:"groupedRows"},outputs:{rowContextmenu:"rowContextmenu"},ngContentSelectors:T,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(ie,Ze){1&ie&&(r.F$t(),r.YNc(0,qt,2,2,"div",0),r.YNc(1,sn,1,0,"ng-content",1),r.YNc(2,Kr,2,3,"div",2)),2&ie&&(r.Q6J("ngIf",Ze.groupHeader&&Ze.groupHeader.template),r.xp6(1),r.Q6J("ngIf",Ze.groupHeader&&Ze.groupHeader.template&&Ze.expanded||!Ze.groupHeader||!Ze.groupHeader.template),r.xp6(1),r.Q6J("ngIf",Ze.rowDetail&&Ze.rowDetail.template&&Ze.expanded))},dependencies:[a.O5,a.tP,a.PC],encapsulation:2,changeDetection:0}),gt})(),Aa=(()=>{class gt{constructor(ie,Ze){this.cd=Ze,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=ie.nativeElement}set group(ie){this._group=ie,this.cellContext.group=ie,this.checkValueUpdates(),this.cd.markForCheck()}get group(){return this._group}set rowHeight(ie){this._rowHeight=ie,this.cellContext.rowHeight=ie,this.checkValueUpdates(),this.cd.markForCheck()}get rowHeight(){return this._rowHeight}set isSelected(ie){this._isSelected=ie,this.cellContext.isSelected=ie,this.cd.markForCheck()}get isSelected(){return this._isSelected}set expanded(ie){this._expanded=ie,this.cellContext.expanded=ie,this.cd.markForCheck()}get expanded(){return this._expanded}set rowIndex(ie){this._rowIndex=ie,this.cellContext.rowIndex=ie,this.checkValueUpdates(),this.cd.markForCheck()}get rowIndex(){return this._rowIndex}set column(ie){this._column=ie,this.cellContext.column=ie,this.checkValueUpdates(),this.cd.markForCheck()}get column(){return this._column}set row(ie){this._row=ie,this.cellContext.row=ie,this.checkValueUpdates(),this.cd.markForCheck()}get row(){return this._row}set sorts(ie){this._sorts=ie,this.calcSortDir=this.calcSortDir(ie)}get sorts(){return this._sorts}set treeStatus(ie){this._treeStatus="collapsed"!==ie&&"expanded"!==ie&&"loading"!==ie&&"disabled"!==ie?"collapsed":ie,this.cellContext.treeStatus=this._treeStatus,this.checkValueUpdates(),this.cd.markForCheck()}get treeStatus(){return this._treeStatus}get columnCssClasses(){let ie="datatable-body-cell";if(this.column.cellClass)if("string"==typeof this.column.cellClass)ie+=" "+this.column.cellClass;else if("function"==typeof this.column.cellClass){const Ze=this.column.cellClass({row:this.row,group:this.group,column:this.column,value:this.value,rowHeight:this.rowHeight});if("string"==typeof Ze)ie+=" "+Ze;else if("object"==typeof Ze){const Jt=Object.keys(Ze);for(const gn of Jt)!0===Ze[gn]&&(ie+=` ${gn}`)}}return this.sortDir||(ie+=" sort-active"),this.isFocused&&(ie+=" active"),this.sortDir===Ro.asc&&(ie+=" sort-asc"),this.sortDir===Ro.desc&&(ie+=" sort-desc"),ie}get width(){return this.column.width}get minWidth(){return this.column.minWidth}get maxWidth(){return this.column.maxWidth}get height(){const ie=this.rowHeight;return isNaN(ie)?ie:ie+"px"}ngDoCheck(){this.checkValueUpdates()}ngOnDestroy(){this.cellTemplate&&this.cellTemplate.clear()}checkValueUpdates(){let ie="";if(this.row&&this.column){const Ze=this.column.$$valueGetter(this.row,this.column.prop),Jt=this.column.pipe;Jt?ie=Jt.transform(Ze):void 0!==ie&&(ie=Ze)}else ie="";this.value!==ie&&(this.value=ie,this.cellContext.value=ie,this.sanitizedValue=null!=ie?this.stripHtml(ie):ie,this.cd.markForCheck())}onFocus(){this.isFocused=!0}onBlur(){this.isFocused=!1}onClick(ie){this.activate.emit({type:"click",event:ie,row:this.row,group:this.group,rowHeight:this.rowHeight,column:this.column,value:this.value,cellElement:this._element})}onDblClick(ie){this.activate.emit({type:"dblclick",event:ie,row:this.row,group:this.group,rowHeight:this.rowHeight,column:this.column,value:this.value,cellElement:this._element})}onKeyDown(ie){const Ze=ie.keyCode;(Ze===Ts.return||Ze===Ts.down||Ze===Ts.up||Ze===Ts.left||Ze===Ts.right)&&ie.target===this._element&&(ie.preventDefault(),ie.stopPropagation(),this.activate.emit({type:"keydown",event:ie,row:this.row,group:this.group,rowHeight:this.rowHeight,column:this.column,value:this.value,cellElement:this._element}))}onCheckboxChange(ie){this.activate.emit({type:"checkbox",event:ie,row:this.row,group:this.group,rowHeight:this.rowHeight,column:this.column,value:this.value,cellElement:this._element,treeStatus:"collapsed"})}calcSortDir(ie){if(!ie)return;const Ze=ie.find(Jt=>Jt.prop===this.column.prop);return Ze?Ze.dir:void 0}stripHtml(ie){return ie.replace?ie.replace(/<\/?[^>]+(>|$)/g,""):ie}onTreeAction(){this.treeAction.emit(this.row)}calcLeftMargin(ie,Ze){return ie.isTreeColumn?Ze.level*(null!=ie.treeLevelIndent?ie.treeLevelIndent:50):0}}return gt.\u0275fac=function(ie){return new(ie||gt)(r.Y36(r.SBq),r.Y36(r.sBO))},gt.\u0275cmp=r.Xpm({type:gt,selectors:[["datatable-body-cell"]],viewQuery:function(ie,Ze){if(1&ie&&r.Gf(Or,7,r.s_b),2&ie){let Jt;r.iGM(Jt=r.CRH())&&(Ze.cellTemplate=Jt.first)}},hostVars:10,hostBindings:function(ie,Ze){1&ie&&r.NdJ("focus",function(){return Ze.onFocus()})("blur",function(){return Ze.onBlur()})("click",function(gn){return Ze.onClick(gn)})("dblclick",function(gn){return Ze.onDblClick(gn)})("keydown",function(gn){return Ze.onKeyDown(gn)}),2&ie&&(r.Tol(Ze.columnCssClasses),r.Udp("width",Ze.width,"px")("min-width",Ze.minWidth,"px")("max-width",Ze.maxWidth,"px")("height",Ze.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(ie,Ze){1&ie&&(r.TgZ(0,"div",0),r.YNc(1,Lr,2,1,"label",1),r.YNc(2,wn,3,2,"ng-container",2),r.YNc(3,jn,1,2,"span",3),r.YNc(4,Oi,2,2,null,2),r.qZA()),2&ie&&(r.Udp("margin-left",Ze.calcLeftMargin(Ze.column,Ze.row),"px"),r.xp6(1),r.Q6J("ngIf",Ze.column.checkboxable&&(!Ze.displayCheck||Ze.displayCheck(Ze.row,Ze.column,Ze.value))),r.xp6(1),r.Q6J("ngIf",Ze.column.isTreeColumn),r.xp6(1),r.Q6J("ngIf",!Ze.column.cellTemplate),r.xp6(1),r.Q6J("ngIf",Ze.column.cellTemplate))},dependencies:[a.O5,a.tP],encapsulation:2,changeDetection:0}),gt})();function Ja(gt,Tn,ie){const Ze=ie(Tn,gt);return Ze>-1?gt.splice(Ze,1):gt.push(Tn),gt}let Xo=(()=>{class gt{constructor(){this.activate=new r.vpe,this.select=new r.vpe}selectRow(ie,Ze,Jt){if(!this.selectEnabled)return;const gn=this.selectionType===tr.checkbox,Bi=this.selectionType===tr.multiClick;let Xi=[];Xi=this.selectionType===tr.multi||gn||Bi?ie.shiftKey?function fa(gt,Tn,ie,Ze,Jt){const gn=ie=ie||!gn&&vi>=Ze&&vi<=ie)&&vi>=ds.start&&vi<=ds.end&>.push(Tn[vi])}return gt}([],this.rows,Ze,this.prevIndex,this.getRowSelectedIdx.bind(this)):Ja(ie.ctrlKey||ie.metaKey||Bi||gn?[...this.selected]:[],Jt,this.getRowSelectedIdx.bind(this)):Ja([],Jt,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=Ze,this.select.emit({selected:Xi})}onActivate(ie,Ze){const{type:Jt,event:gn,row:vi}=ie,Bi=this.selectionType===tr.checkbox;!Bi&&("click"===Jt||"dblclick"===Jt)||Bi&&"checkbox"===Jt?this.selectRow(gn,Ze,vi):"keydown"===Jt&&(gn.keyCode===Ts.return?this.selectRow(gn,Ze,vi):this.onKeyboardFocus(ie)),this.activate.emit(ie)}onKeyboardFocus(ie){const{keyCode:Ze}=ie.event;if(Ze===Ts.up||Ze===Ts.down||Ze===Ts.right||Ze===Ts.left){const gn=this.selectionType===tr.cell;ie.cellElement&&gn?gn&&this.focusCell(ie.cellElement,ie.rowElement,Ze,ie.cellIndex):this.focusRow(ie.rowElement,Ze)}}focusRow(ie,Ze){const Jt=this.getPrevNextRow(ie,Ze);Jt&&Jt.focus()}getPrevNextRow(ie,Ze){const Jt=ie.parentElement;if(Jt){let gn;if(Ze===Ts.up?gn=Jt.previousElementSibling:Ze===Ts.down&&(gn=Jt.nextElementSibling),gn&&gn.children.length)return gn.children[0]}}focusCell(ie,Ze,Jt,gn){let vi;if(Jt===Ts.left)vi=ie.previousElementSibling;else if(Jt===Ts.right)vi=ie.nextElementSibling;else if(Jt===Ts.up||Jt===Ts.down){const Bi=this.getPrevNextRow(Ze,Jt);if(Bi){const Xi=Bi.getElementsByClassName("datatable-body-cell");Xi.length&&(vi=Xi[gn])}}vi&&vi.focus()}getRowSelected(ie){return this.getRowSelectedIdx(ie,this.selected)>-1}getRowSelectedIdx(ie,Ze){if(!Ze||!Ze.length)return-1;const Jt=this.rowIdentity(ie);return Ze.findIndex(gn=>this.rowIdentity(gn)===Jt)}}return gt.\u0275fac=function(ie){return new(ie||gt)},gt.\u0275cmp=r.Xpm({type:gt,selectors:[["datatable-selection"]],inputs:{rows:"rows",selected:"selected",selectEnabled:"selectEnabled",selectionType:"selectionType",rowIdentity:"rowIdentity",selectCheck:"selectCheck"},outputs:{activate:"activate",select:"select"},ngContentSelectors:T,decls:1,vars:0,template:function(ie,Ze){1&ie&&(r.F$t(),r.Hsn(0))},encapsulation:2,changeDetection:0}),gt})();function No(gt){const Tn=gt.filter(ie=>!!ie);return!Tn.length||Tn.some(ie=>"number"!=typeof ie)?null:Tn.reduce((ie,Ze)=>ie+Ze)}function Cs(gt){return null}let ns=(()=>{class gt{constructor(){this.summaryRow={}}ngOnChanges(){!this.columns||!this.rows||(this.updateInternalColumns(),this.updateValues())}updateInternalColumns(){this._internalColumns=this.columns.map(ie=>Object.assign(Object.assign({},ie),{cellTemplate:ie.summaryTemplate}))}updateValues(){this.summaryRow={},this.columns.filter(ie=>!ie.summaryTemplate).forEach(ie=>{const Ze=this.rows.map(gn=>gn[ie.prop]),Jt=this.getSummaryFunction(ie);this.summaryRow[ie.prop]=ie.pipe?ie.pipe.transform(Jt(Ze)):Jt(Ze)})}getSummaryFunction(ie){return void 0===ie.summaryFunc?No:null===ie.summaryFunc?Cs:ie.summaryFunc}}return gt.\u0275fac=function(ie){return new(ie||gt)},gt.\u0275cmp=r.Xpm({type:gt,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(ie,Ze){1&ie&&r.YNc(0,Wi,1,6,"datatable-body-row",0),2&ie&&r.Q6J("ngIf",Ze.summaryRow&&Ze._internalColumns)},dependencies:[a.O5,hs],encapsulation:2}),gt})(),Fo=(()=>{class gt{static forRoot(ie){return{ngModule:gt,providers:[{provide:"configuration",useValue:ie}]}}}return gt.\u0275fac=function(ie){return new(ie||gt)},gt.\u0275mod=r.oAB({type:gt}),gt.\u0275inj=r.cJS({providers:[so,kr,Ei],imports:[a.ez]}),gt})();typeof document<"u"&&!document.elementsFromPoint&&(document.elementsFromPoint=function io(gt,Tn){const ie=[],Ze=[];let Jt,gn,vi;for(;(Jt=document.elementFromPoint(gt,Tn))&&-1===ie.indexOf(Jt)&&null!=Jt;)ie.push(Jt),Ze.push({value:Jt.style.getPropertyValue("pointer-events"),priority:Jt.style.getPropertyPriority("pointer-events")}),Jt.style.setProperty("pointer-events","none","important");for(gn=Ze.length;vi=Ze[--gn];)ie[gn].style.setProperty("pointer-events",vi.value?vi.value:"",vi.priority);return ie})},67506:E=>{"use strict";function C(a,c,u){a instanceof RegExp&&(a=s(a,u)),c instanceof RegExp&&(c=s(c,u));var e=r(a,c,u);return e&&{start:e[0],end:e[1],pre:u.slice(0,e[0]),body:u.slice(e[0]+a.length,e[1]),post:u.slice(e[1]+c.length)}}function s(a,c){var u=c.match(a);return u?u[0]:null}function r(a,c,u){var e,f,m,T,M,w=u.indexOf(a),D=u.indexOf(c,w+1),U=w;if(w>=0&&D>0){if(a===c)return[w,D];for(e=[],m=u.length;U>=0&&!M;)U==w?(e.push(U),w=u.indexOf(a,U+1)):1==e.length?M=[e.pop(),D]:((f=e.pop())=0?w:D;e.length&&(M=[m,T])}return M}E.exports=C,C.range=r},96434:(E,C)=>{"use strict";C.byteLength=function m(W){var $=f(W),F=$[1];return 3*($[0]+F)/4-F},C.toByteArray=function M(W){var $,se,J=f(W),F=J[0],X=J[1],de=new a(function T(W,$,J){return 3*($+J)/4-J}(0,F,X)),V=0,ce=X>0?F-4:F;for(se=0;se>16&255,de[V++]=$>>8&255,de[V++]=255&$;return 2===X&&($=r[W.charCodeAt(se)]<<2|r[W.charCodeAt(se+1)]>>4,de[V++]=255&$),1===X&&($=r[W.charCodeAt(se)]<<10|r[W.charCodeAt(se+1)]<<4|r[W.charCodeAt(se+2)]>>2,de[V++]=$>>8&255,de[V++]=255&$),de},C.fromByteArray=function U(W){for(var $,J=W.length,F=J%3,X=[],V=0,ce=J-F;Vce?ce:V+16383));return 1===F?X.push(s[($=W[J-1])>>2]+s[$<<4&63]+"=="):2===F&&X.push(s[($=(W[J-2]<<8)+W[J-1])>>10]+s[$>>4&63]+s[$<<2&63]+"="),X.join("")};for(var s=[],r=[],a=typeof Uint8Array<"u"?Uint8Array:Array,c="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",u=0,e=c.length;u0)throw new Error("Invalid string. Length must be a multiple of 4");var J=W.indexOf("=");return-1===J&&(J=$),[J,J===$?0:4-J%4]}function w(W){return s[W>>18&63]+s[W>>12&63]+s[W>>6&63]+s[63&W]}function D(W,$,J){for(var X=[],de=$;de{var r=s(2665),a=s(67506);E.exports=function U(V){return V?("{}"===V.substr(0,2)&&(V="\\{\\}"+V.substr(2)),de(function M(V){return V.split("\\\\").join(c).split("\\{").join(u).split("\\}").join(e).split("\\,").join(f).split("\\.").join(m)}(V),!0).map(w)):[]};var c="\0SLASH"+Math.random()+"\0",u="\0OPEN"+Math.random()+"\0",e="\0CLOSE"+Math.random()+"\0",f="\0COMMA"+Math.random()+"\0",m="\0PERIOD"+Math.random()+"\0";function T(V){return parseInt(V,10)==V?parseInt(V,10):V.charCodeAt(0)}function w(V){return V.split(c).join("\\").split(u).join("{").split(e).join("}").split(f).join(",").split(m).join(".")}function D(V){if(!V)return[""];var ce=[],se=a("{","}",V);if(!se)return V.split(",");var Te=se.body,$e=se.post,ge=se.pre.split(",");ge[ge.length-1]+="{"+Te+"}";var Et=D($e);return $e.length&&(ge[ge.length-1]+=Et.shift(),ge.push.apply(ge,Et)),ce.push.apply(ce,ge),ce}function $(V){return"{"+V+"}"}function J(V){return/^-?0\d/.test(V)}function F(V,ce){return V<=ce}function X(V,ce){return V>=ce}function de(V,ce){var se=[],fe=a("{","}",V);if(!fe||/\$$/.test(fe.pre))return[V];var ot,Te=/^-?\d+\.\.-?\d+(?:\.\.-?\d+)?$/.test(fe.body),$e=/^[a-zA-Z]\.\.[a-zA-Z](?:\.\.-?\d+)?$/.test(fe.body),ge=Te||$e,Et=fe.body.indexOf(",")>=0;if(!ge&&!Et)return fe.post.match(/,.*\}/)?de(V=fe.pre+"{"+fe.body+e+fe.post):[V];if(ge)ot=fe.body.split(/\.\./);else if(1===(ot=D(fe.body)).length&&1===(ot=de(ot[0],!1).map($)).length)return(qe=fe.post.length?de(fe.post,!1):[""]).map(function(Lr){return fe.pre+ot[0]+Lr});var He,ct=fe.pre,qe=fe.post.length?de(fe.post,!1):[""];if(ge){var We=T(ot[0]),Le=T(ot[1]),Pt=Math.max(ot[0].length,ot[1].length),it=3==ot.length?Math.abs(T(ot[2])):1,Xt=F;Le0){var sn=new Array(qt+1).join("0");At=Rn<0?"-"+sn+At.slice(1):sn+At}}He.push(At)}}else He=r(ot,function(Or){return de(Or,!1)});for(var fn=0;fn{"use strict";var r=s(18540),a=s(60044),c=a(r("String.prototype.indexOf"));E.exports=function(e,f){var m=r(e,!!f);return"function"==typeof m&&c(e,".prototype.")>-1?a(m):m}},60044:(E,C,s)=>{"use strict";var r=s(75396),a=s(18540),c=a("%Function.prototype.apply%"),u=a("%Function.prototype.call%"),e=a("%Reflect.apply%",!0)||r.call(u,c),f=a("%Object.getOwnPropertyDescriptor%",!0),m=a("%Object.defineProperty%",!0),T=a("%Math.max%");if(m)try{m({},"a",{value:1})}catch{m=null}E.exports=function(D){var U=e(r,u,arguments);return f&&m&&f(U,"length").configurable&&m(U,"length",{value:1+T(0,D.length-(arguments.length-1))}),U};var M=function(){return e(r,c,arguments)};m?m(E.exports,"apply",{value:M}):E.exports.apply=M},72318:E=>{var C=!!(typeof window<"u"&&window.document&&window.document.createElement);E.exports=C},6823:function(E,C,s){E.exports=function(r){"use strict";r=r&&r.hasOwnProperty("default")?r.default:r;var u={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 a(h,b){return h(b={exports:{}},b.exports),b.exports}(function(h){var b={};for(var N in u)u.hasOwnProperty(N)&&(b[u[N]]=N);var k=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 ne in k)if(k.hasOwnProperty(ne)){if(!("channels"in k[ne]))throw new Error("missing channels property: "+ne);if(!("labels"in k[ne]))throw new Error("missing channel labels property: "+ne);if(k[ne].labels.length!==k[ne].channels)throw new Error("channel and label counts mismatch: "+ne);var he=k[ne].channels,Me=k[ne].labels;delete k[ne].channels,delete k[ne].labels,Object.defineProperty(k[ne],"channels",{value:he}),Object.defineProperty(k[ne],"labels",{value:Me})}function Qe(Re,ft){return Math.pow(Re[0]-ft[0],2)+Math.pow(Re[1]-ft[1],2)+Math.pow(Re[2]-ft[2],2)}k.rgb.hsl=function(Re){var Dr,uo,ft=Re[0]/255,wt=Re[1]/255,It=Re[2]/255,Cn=Math.min(ft,wt,It),er=Math.max(ft,wt,It),sr=er-Cn;return er===Cn?Dr=0:ft===er?Dr=(wt-It)/sr:wt===er?Dr=2+(It-ft)/sr:It===er&&(Dr=4+(ft-wt)/sr),(Dr=Math.min(60*Dr,360))<0&&(Dr+=360),uo=(Cn+er)/2,[Dr,100*(er===Cn?0:uo<=.5?sr/(er+Cn):sr/(2-er-Cn)),100*uo]},k.rgb.hsv=function(Re){var ft,wt,It,Cn,er,sr=Re[0]/255,Dr=Re[1]/255,oi=Re[2]/255,uo=Math.max(sr,Dr,oi),As=uo-Math.min(sr,Dr,oi),as=function(ma){return(uo-ma)/6/As+.5};return 0===As?Cn=er=0:(er=As/uo,ft=as(sr),wt=as(Dr),It=as(oi),sr===uo?Cn=It-wt:Dr===uo?Cn=1/3+ft-It:oi===uo&&(Cn=2/3+wt-ft),Cn<0?Cn+=1:Cn>1&&(Cn-=1)),[360*Cn,100*er,100*uo]},k.rgb.hwb=function(Re){var ft=Re[0],wt=Re[1],It=Re[2];return[k.rgb.hsl(Re)[0],1/255*Math.min(ft,Math.min(wt,It))*100,100*(It=1-1/255*Math.max(ft,Math.max(wt,It)))]},k.rgb.cmyk=function(Re){var Dr,ft=Re[0]/255,wt=Re[1]/255,It=Re[2]/255;return[100*((1-ft-(Dr=Math.min(1-ft,1-wt,1-It)))/(1-Dr)||0),100*((1-wt-Dr)/(1-Dr)||0),100*((1-It-Dr)/(1-Dr)||0),100*Dr]},k.rgb.keyword=function(Re){var ft=b[Re];if(ft)return ft;var It,wt=1/0;for(var Cn in u)if(u.hasOwnProperty(Cn)){var sr=Qe(Re,u[Cn]);sr.04045?Math.pow((ft+.055)/1.055,2.4):ft/12.92)+.3576*(wt=wt>.04045?Math.pow((wt+.055)/1.055,2.4):wt/12.92)+.1805*(It=It>.04045?Math.pow((It+.055)/1.055,2.4):It/12.92)),100*(.2126*ft+.7152*wt+.0722*It),100*(.0193*ft+.1192*wt+.9505*It)]},k.rgb.lab=function(Re){var ft=k.rgb.xyz(Re),wt=ft[0],It=ft[1],Cn=ft[2];return It/=100,Cn/=108.883,wt=(wt/=95.047)>.008856?Math.pow(wt,1/3):7.787*wt+16/116,[116*(It=It>.008856?Math.pow(It,1/3):7.787*It+16/116)-16,500*(wt-It),200*(It-(Cn=Cn>.008856?Math.pow(Cn,1/3):7.787*Cn+16/116))]},k.hsl.rgb=function(Re){var Cn,er,sr,Dr,oi,ft=Re[0]/360,wt=Re[1]/100,It=Re[2]/100;if(0===wt)return[oi=255*It,oi,oi];Cn=2*It-(er=It<.5?It*(1+wt):It+wt-It*wt),Dr=[0,0,0];for(var uo=0;uo<3;uo++)(sr=ft+1/3*-(uo-1))<0&&sr++,sr>1&&sr--,Dr[uo]=255*(oi=6*sr<1?Cn+6*(er-Cn)*sr:2*sr<1?er:3*sr<2?Cn+(er-Cn)*(2/3-sr)*6:Cn);return Dr},k.hsl.hsv=function(Re){var ft=Re[0],wt=Re[1]/100,It=Re[2]/100,Cn=wt,er=Math.max(It,.01);return wt*=(It*=2)<=1?It:2-It,Cn*=er<=1?er:2-er,[ft,100*(0===It?2*Cn/(er+Cn):2*wt/(It+wt)),(It+wt)/2*100]},k.hsv.rgb=function(Re){var ft=Re[0]/60,wt=Re[1]/100,It=Re[2]/100,Cn=Math.floor(ft)%6,er=ft-Math.floor(ft),sr=255*It*(1-wt),Dr=255*It*(1-wt*er),oi=255*It*(1-wt*(1-er));switch(It*=255,Cn){case 0:return[It,oi,sr];case 1:return[Dr,It,sr];case 2:return[sr,It,oi];case 3:return[sr,Dr,It];case 4:return[oi,sr,It];case 5:return[It,sr,Dr]}},k.hsv.hsl=function(Re){var er,sr,Dr,ft=Re[0],wt=Re[1]/100,It=Re[2]/100,Cn=Math.max(It,.01);return Dr=(2-wt)*It,sr=wt*Cn,[ft,100*(sr=(sr/=(er=(2-wt)*Cn)<=1?er:2-er)||0),100*(Dr/=2)]},k.hwb.rgb=function(Re){var er,sr,Dr,oi,uo,As,as,ft=Re[0]/360,wt=Re[1]/100,It=Re[2]/100,Cn=wt+It;switch(Cn>1&&(wt/=Cn,It/=Cn),Dr=6*ft-(er=Math.floor(6*ft)),1&er&&(Dr=1-Dr),oi=wt+Dr*((sr=1-It)-wt),er){default:case 6:case 0:uo=sr,As=oi,as=wt;break;case 1:uo=oi,As=sr,as=wt;break;case 2:uo=wt,As=sr,as=oi;break;case 3:uo=wt,As=oi,as=sr;break;case 4:uo=oi,As=wt,as=sr;break;case 5:uo=sr,As=wt,as=oi}return[255*uo,255*As,255*as]},k.cmyk.rgb=function(Re){var wt=Re[1]/100,It=Re[2]/100,Cn=Re[3]/100;return[255*(1-Math.min(1,Re[0]/100*(1-Cn)+Cn)),255*(1-Math.min(1,wt*(1-Cn)+Cn)),255*(1-Math.min(1,It*(1-Cn)+Cn))]},k.xyz.rgb=function(Re){var Cn,er,sr,ft=Re[0]/100,wt=Re[1]/100,It=Re[2]/100;return er=-.9689*ft+1.8758*wt+.0415*It,sr=.0557*ft+-.204*wt+1.057*It,Cn=(Cn=3.2406*ft+-1.5372*wt+-.4986*It)>.0031308?1.055*Math.pow(Cn,1/2.4)-.055:12.92*Cn,er=er>.0031308?1.055*Math.pow(er,1/2.4)-.055:12.92*er,sr=sr>.0031308?1.055*Math.pow(sr,1/2.4)-.055:12.92*sr,[255*(Cn=Math.min(Math.max(0,Cn),1)),255*(er=Math.min(Math.max(0,er),1)),255*(sr=Math.min(Math.max(0,sr),1))]},k.xyz.lab=function(Re){var ft=Re[0],wt=Re[1],It=Re[2];return wt/=100,It/=108.883,ft=(ft/=95.047)>.008856?Math.pow(ft,1/3):7.787*ft+16/116,[116*(wt=wt>.008856?Math.pow(wt,1/3):7.787*wt+16/116)-16,500*(ft-wt),200*(wt-(It=It>.008856?Math.pow(It,1/3):7.787*It+16/116))]},k.lab.xyz=function(Re){var Cn,er,sr;Cn=Re[1]/500+(er=(Re[0]+16)/116),sr=er-Re[2]/200;var Dr=Math.pow(er,3),oi=Math.pow(Cn,3),uo=Math.pow(sr,3);return er=Dr>.008856?Dr:(er-16/116)/7.787,Cn=oi>.008856?oi:(Cn-16/116)/7.787,sr=uo>.008856?uo:(sr-16/116)/7.787,[Cn*=95.047,er*=100,sr*=108.883]},k.lab.lch=function(Re){var er,ft=Re[0],wt=Re[1],It=Re[2];return(er=360*Math.atan2(It,wt)/2/Math.PI)<0&&(er+=360),[ft,Math.sqrt(wt*wt+It*It),er]},k.lch.lab=function(Re){var sr,wt=Re[1];return sr=Re[2]/360*2*Math.PI,[Re[0],wt*Math.cos(sr),wt*Math.sin(sr)]},k.rgb.ansi16=function(Re){var ft=Re[0],wt=Re[1],It=Re[2],Cn=1 in arguments?arguments[1]:k.rgb.hsv(Re)[2];if(0===(Cn=Math.round(Cn/50)))return 30;var er=30+(Math.round(It/255)<<2|Math.round(wt/255)<<1|Math.round(ft/255));return 2===Cn&&(er+=60),er},k.hsv.ansi16=function(Re){return k.rgb.ansi16(k.hsv.rgb(Re),Re[2])},k.rgb.ansi256=function(Re){var ft=Re[0],wt=Re[1],It=Re[2];return ft===wt&&wt===It?ft<8?16:ft>248?231:Math.round((ft-8)/247*24)+232:16+36*Math.round(ft/255*5)+6*Math.round(wt/255*5)+Math.round(It/255*5)},k.ansi16.rgb=function(Re){var ft=Re%10;if(0===ft||7===ft)return Re>50&&(ft+=3.5),[ft=ft/10.5*255,ft,ft];var wt=.5*(1+~~(Re>50));return[(1&ft)*wt*255,(ft>>1&1)*wt*255,(ft>>2&1)*wt*255]},k.ansi256.rgb=function(Re){if(Re>=232){var ft=10*(Re-232)+8;return[ft,ft,ft]}var wt;return Re-=16,[Math.floor(Re/36)/5*255,Math.floor((wt=Re%36)/6)/5*255,wt%6/5*255]},k.rgb.hex=function(Re){var wt=(((255&Math.round(Re[0]))<<16)+((255&Math.round(Re[1]))<<8)+(255&Math.round(Re[2]))).toString(16).toUpperCase();return"000000".substring(wt.length)+wt},k.hex.rgb=function(Re){var ft=Re.toString(16).match(/[a-f0-9]{6}|[a-f0-9]{3}/i);if(!ft)return[0,0,0];var wt=ft[0];3===ft[0].length&&(wt=wt.split("").map(function(Dr){return Dr+Dr}).join(""));var It=parseInt(wt,16);return[It>>16&255,It>>8&255,255&It]},k.rgb.hcg=function(Re){var oi,ft=Re[0]/255,wt=Re[1]/255,It=Re[2]/255,Cn=Math.max(Math.max(ft,wt),It),er=Math.min(Math.min(ft,wt),It),sr=Cn-er;return oi=sr<=0?0:Cn===ft?(wt-It)/sr%6:Cn===wt?2+(It-ft)/sr:4+(ft-wt)/sr+4,oi/=6,[360*(oi%=1),100*sr,100*(sr<1?er/(1-sr):0)]},k.hsl.hcg=function(Re){var It,ft=Re[1]/100,wt=Re[2]/100,Cn=0;return(It=wt<.5?2*ft*wt:2*ft*(1-wt))<1&&(Cn=(wt-.5*It)/(1-It)),[Re[0],100*It,100*Cn]},k.hsv.hcg=function(Re){var wt=Re[2]/100,It=Re[1]/100*wt,Cn=0;return It<1&&(Cn=(wt-It)/(1-It)),[Re[0],100*It,100*Cn]},k.hcg.rgb=function(Re){var wt=Re[1]/100,It=Re[2]/100;if(0===wt)return[255*It,255*It,255*It];var oi,Cn=[0,0,0],er=Re[0]/360%1*6,sr=er%1,Dr=1-sr;switch(Math.floor(er)){case 0:Cn[0]=1,Cn[1]=sr,Cn[2]=0;break;case 1:Cn[0]=Dr,Cn[1]=1,Cn[2]=0;break;case 2:Cn[0]=0,Cn[1]=1,Cn[2]=sr;break;case 3:Cn[0]=0,Cn[1]=Dr,Cn[2]=1;break;case 4:Cn[0]=sr,Cn[1]=0,Cn[2]=1;break;default:Cn[0]=1,Cn[1]=0,Cn[2]=Dr}return[255*(wt*Cn[0]+(oi=(1-wt)*It)),255*(wt*Cn[1]+oi),255*(wt*Cn[2]+oi)]},k.hcg.hsv=function(Re){var ft=Re[1]/100,It=ft+Re[2]/100*(1-ft),Cn=0;return It>0&&(Cn=ft/It),[Re[0],100*Cn,100*It]},k.hcg.hsl=function(Re){var ft=Re[1]/100,It=Re[2]/100*(1-ft)+.5*ft,Cn=0;return It>0&&It<.5?Cn=ft/(2*It):It>=.5&&It<1&&(Cn=ft/(2*(1-It))),[Re[0],100*Cn,100*It]},k.hcg.hwb=function(Re){var ft=Re[1]/100,It=ft+Re[2]/100*(1-ft);return[Re[0],100*(It-ft),100*(1-It)]},k.hwb.hcg=function(Re){var It=1-Re[2]/100,Cn=It-Re[1]/100,er=0;return Cn<1&&(er=(It-Cn)/(1-Cn)),[Re[0],100*Cn,100*er]},k.apple.rgb=function(Re){return[Re[0]/65535*255,Re[1]/65535*255,Re[2]/65535*255]},k.rgb.apple=function(Re){return[Re[0]/255*65535,Re[1]/255*65535,Re[2]/255*65535]},k.gray.rgb=function(Re){return[Re[0]/100*255,Re[0]/100*255,Re[0]/100*255]},k.gray.hsl=k.gray.hsv=function(Re){return[0,0,Re[0]]},k.gray.hwb=function(Re){return[0,100,Re[0]]},k.gray.cmyk=function(Re){return[0,0,0,Re[0]]},k.gray.lab=function(Re){return[Re[0],0,0]},k.gray.hex=function(Re){var ft=255&Math.round(Re[0]/100*255),It=((ft<<16)+(ft<<8)+ft).toString(16).toUpperCase();return"000000".substring(It.length)+It},k.rgb.gray=function(Re){return[(Re[0]+Re[1]+Re[2])/3/255*100]}});function fe(h){var b=function se(){for(var h={},b=Object.keys(e),N=b.length,k=0;k1&&(N=Array.prototype.slice.call(arguments));var k=h(N);if("object"==typeof k)for(var ne=k.length,he=0;he1&&(N=Array.prototype.slice.call(arguments)),h(N))};return"conversion"in h&&(b.conversion=h.conversion),b}(ne)})});var He=Et,We={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]},Le={getRgba:Pt,getHsla:it,getRgb:function cn(h){var b=Pt(h);return b&&b.slice(0,3)},getHsl:function pn(h){var b=it(h);return b&&b.slice(0,3)},getHwb:Xt,getAlpha:function Rn(h){var b=Pt(h);return b||(b=it(h))||(b=Xt(h))?b[3]:void 0},hexString:function At(h,N){return N=void 0!==N&&3===h.length?N:h[3],"#"+jr(h[0])+jr(h[1])+jr(h[2])+(N>=0&&N<1?jr(Math.round(255*N)):"")},rgbString:function qt(h,b){return b<1||h[3]&&h[3]<1?sn(h,b):"rgb("+h[0]+", "+h[1]+", "+h[2]+")"},rgbaString:sn,percentString:function fn(h,b){return b<1||h[3]&&h[3]<1?xn(h,b):"rgb("+Math.round(h[0]/255*100)+"%, "+Math.round(h[1]/255*100)+"%, "+Math.round(h[2]/255*100)+"%)"},percentaString:xn,hslString:function Kr(h,b){return b<1||h[3]&&h[3]<1?Or(h,b):"hsl("+h[0]+", "+h[1]+"%, "+h[2]+"%)"},hslaString:Or,hwbString:function Lr(h,b){return void 0===b&&(b=void 0!==h[3]?h[3]:1),"hwb("+h[0]+", "+h[1]+"%, "+h[2]+"%"+(void 0!==b&&1!==b?", "+b:"")+")"},keyword:function ir(h){return br[h.slice(0,3)]}};function Pt(h){if(h){var Me=[0,0,0],Qe=1,Re=h.match(/^#([a-fA-F0-9]{3,4})$/i),ft="";if(Re){ft=(Re=Re[1])[3];for(var wt=0;wtN?(b+.05)/(N+.05):(N+.05)/(b+.05)},level:function(h){var b=this.contrast(h);return b>=7.1?"AAA":b>=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=[],b=0;b<3;b++)h[b]=255-this.values.rgb[b];return this.setValues("rgb",h),this},lighten:function(h){var b=this.values.hsl;return b[2]+=b[2]*h,this.setValues("hsl",b),this},darken:function(h){var b=this.values.hsl;return b[2]-=b[2]*h,this.setValues("hsl",b),this},saturate:function(h){var b=this.values.hsl;return b[1]+=b[1]*h,this.setValues("hsl",b),this},desaturate:function(h){var b=this.values.hsl;return b[1]-=b[1]*h,this.setValues("hsl",b),this},whiten:function(h){var b=this.values.hwb;return b[1]+=b[1]*h,this.setValues("hwb",b),this},blacken:function(h){var b=this.values.hwb;return b[2]+=b[2]*h,this.setValues("hwb",b),this},greyscale:function(){var h=this.values.rgb,b=.3*h[0]+.59*h[1]+.11*h[2];return this.setValues("rgb",[b,b,b]),this},clearer:function(h){var b=this.values.alpha;return this.setValues("alpha",b-b*h),this},opaquer:function(h){var b=this.values.alpha;return this.setValues("alpha",b+b*h),this},rotate:function(h){var b=this.values.hsl,N=(b[0]+h)%360;return b[0]=N<0?360+N:N,this.setValues("hsl",b),this},mix:function(h,b){var N=this,k=h,ne=void 0===b?.5:b,he=2*ne-1,Me=N.alpha()-k.alpha(),Qe=((he*Me==-1?he:(he+Me)/(1+he*Me))+1)/2,Re=1-Qe;return this.rgb(Qe*N.red()+Re*k.red(),Qe*N.green()+Re*k.green(),Qe*N.blue()+Re*k.blue()).alpha(N.alpha()*ne+k.alpha()*(1-ne))},toJSON:function(){return this.rgb()},clone:function(){var k,ne,h=new Wt,b=this.values,N=h.values;for(var he in b)b.hasOwnProperty(he)&&("[object Array]"===(ne={}.toString.call(k=b[he]))?N[he]=k.slice(0):"[object Number]"===ne?N[he]=k:console.error("unexpected color value:",k));return h}},Wt.prototype.spaces={rgb:["red","green","blue"],hsl:["hue","saturation","lightness"],hsv:["hue","saturation","value"],hwb:["hue","whiteness","blackness"],cmyk:["cyan","magenta","yellow","black"]},Wt.prototype.maxes={rgb:[255,255,255],hsl:[360,100,100],hsv:[360,100,100],hwb:[360,100,100],cmyk:[100,100,100,100]},Wt.prototype.getValues=function(h){for(var b=this.values,N={},k=0;k"u"},isArray:function(h){if(Array.isArray&&Array.isArray(h))return!0;var b=Object.prototype.toString.call(h);return"[object"===b.substr(0,7)&&"Array]"===b.substr(-6)},isObject:function(h){return null!==h&&"[object Object]"===Object.prototype.toString.call(h)},isFinite:function(h){return("number"==typeof h||h instanceof Number)&&isFinite(h)},valueOrDefault:function(h,b){return typeof h>"u"?b:h},valueAtIndexOrDefault:function(h,b,N){return jn.valueOrDefault(jn.isArray(h)?h[b]:h,N)},callback:function(h,b,N){if(h&&"function"==typeof h.call)return h.apply(N,b)},each:function(h,b,N,k){var ne,he,Me;if(jn.isArray(h))if(he=h.length,k)for(ne=he-1;ne>=0;ne--)b.call(N,h[ne],ne);else for(ne=0;ne=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 b=1.70158,N=0,k=1;return 0===h?0:1===h?1:(N||(N=.3),k<1?(k=1,b=N/4):b=N/(2*Math.PI)*Math.asin(1/k),-k*Math.pow(2,10*(h-=1))*Math.sin((h-b)*(2*Math.PI)/N))},easeOutElastic:function(h){var b=1.70158,N=0,k=1;return 0===h?0:1===h?1:(N||(N=.3),k<1?(k=1,b=N/4):b=N/(2*Math.PI)*Math.asin(1/k),k*Math.pow(2,-10*h)*Math.sin((h-b)*(2*Math.PI)/N)+1)},easeInOutElastic:function(h){var b=1.70158,N=0,k=1;return 0===h?0:2==(h/=.5)?1:(N||(N=.45),k<1?(k=1,b=N/4):b=N/(2*Math.PI)*Math.asin(1/k),h<1?k*Math.pow(2,10*(h-=1))*Math.sin((h-b)*(2*Math.PI)/N)*-.5:k*Math.pow(2,-10*(h-=1))*Math.sin((h-b)*(2*Math.PI)/N)*.5+1)},easeInBack:function(h){var b=1.70158;return h*h*((b+1)*h-b)},easeOutBack:function(h){var b=1.70158;return(h-=1)*h*((b+1)*h+b)+1},easeInOutBack:function(h){var b=1.70158;return(h/=.5)<1?h*h*((1+(b*=1.525))*h-b)*.5:.5*((h-=2)*h*((1+(b*=1.525))*h+b)+2)},easeInBounce:function(h){return 1-Oi.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*Oi.easeInBounce(2*h):.5*Oi.easeOutBounce(2*h-1)+.5}},Wi={effects:Oi};hr.easingEffects=Oi;var so=Math.PI,kr=so/180,Ei=2*so,ii=so/2,mr=so/4,pr=2*so/3,Eo={clear:function(h){h.ctx.clearRect(0,0,h.width,h.height)},roundedRect:function(h,b,N,k,ne,he){if(he){var Me=Math.min(he,ne/2,k/2),Qe=b+Me,Re=N+Me,ft=b+k-Me,wt=N+ne-Me;h.moveTo(b,Re),Qeb.left-N&&h.xb.top-N&&h.y0&&h.requestAnimationFrame()},advance:function(){for(var b,N,k,ne,h=this.animations,he=0;he=k?(Pe.callback(b.onAnimationComplete,[b],N),N.animating=!1,h.splice(he,1)):++he}},Ot=Pe.options.resolve,mn=["push","pop","shift","splice","unshift"];function Ti(h,b){var N=h._chartjs;if(N){var k=N.listeners,ne=k.indexOf(b);-1!==ne&&k.splice(ne,1),!(k.length>0)&&(mn.forEach(function(he){delete h[he]}),delete h._chartjs)}}var Ci=function(h,b){this.initialize(h,b)};Pe.extend(Ci.prototype,{datasetElementType:null,dataElementType:null,_datasetElementOptions:["backgroundColor","borderCapStyle","borderColor","borderDash","borderDashOffset","borderJoinStyle","borderWidth"],_dataElementOptions:["backgroundColor","borderColor","borderWidth","pointStyle"],initialize:function(h,b){var N=this;N.chart=h,N.index=b,N.linkScales(),N.addElements(),N._type=N.getMeta().type},updateIndex:function(h){this.index=h},linkScales:function(){var h=this,b=h.getMeta(),N=h.chart,k=N.scales,ne=h.getDataset(),he=N.options.scales;(null===b.xAxisID||!(b.xAxisID in k)||ne.xAxisID)&&(b.xAxisID=ne.xAxisID||he.xAxes[0].id),(null===b.yAxisID||!(b.yAxisID in k)||ne.yAxisID)&&(b.yAxisID=ne.yAxisID||he.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&&Ti(this._data,this)},createMetaDataset:function(){var h=this,b=h.datasetElementType;return b&&new b({_chart:h.chart,_datasetIndex:h.index})},createMetaData:function(h){var b=this,N=b.dataElementType;return N&&new N({_chart:b.chart,_datasetIndex:b.index,_index:h})},addElements:function(){var ne,he,h=this,b=h.getMeta(),N=h.getDataset().data||[],k=b.data;for(ne=0,he=N.length;nek&&h.insertElements(k,ne-k)},insertElements:function(h,b){for(var N=0;Nne?h.arc(Me,Qe,b.innerRadius-ne,k+(he=ne/b.innerRadius),N-he,!0):h.arc(Me,Qe,ne,k+Math.PI/2,N-Math.PI/2),h.closePath(),h.clip()}function Ni(h,b,N){var k="inner"===b.borderAlign;k?(h.lineWidth=2*b.borderWidth,h.lineJoin="round"):(h.lineWidth=b.borderWidth,h.lineJoin="bevel"),N.fullCircles&&function dr(h,b,N,k){var he,ne=N.endAngle;for(k&&(N.endAngle=N.startAngle+Ko,_s(h,N),N.endAngle=ne,N.endAngle===N.startAngle&&N.fullCircles&&(N.endAngle+=Ko,N.fullCircles--)),h.beginPath(),h.arc(N.x,N.y,N.innerRadius,N.startAngle+Ko,N.startAngle,!0),he=0;heQe;)ne-=Ko;for(;ne=Me&&ne<=Qe&&he>=N.innerRadius&&he<=N.outerRadius}return!1},getCenterPoint:function(){var h=this._view,b=(h.startAngle+h.endAngle)/2,N=(h.innerRadius+h.outerRadius)/2;return{x:h.x+Math.cos(b)*N,y:h.y+Math.sin(b)*N}},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,b=h.startAngle+(h.endAngle-h.startAngle)/2,N=(h.outerRadius-h.innerRadius)/2+h.innerRadius;return{x:h.x+Math.cos(b)*N,y:h.y+Math.sin(b)*N}},draw:function(){var ne,h=this._chart.ctx,b=this._view,N="inner"===b.borderAlign?.33:0,k={x:b.x,y:b.y,innerRadius:b.innerRadius,outerRadius:Math.max(b.outerRadius-N,0),pixelMargin:N,startAngle:b.startAngle,endAngle:b.endAngle,fullCircles:Math.floor(b.circumference/Ko)};if(h.save(),h.fillStyle=b.backgroundColor,h.strokeStyle=b.borderColor,k.fullCircles){for(k.endAngle=k.startAngle+Ko,h.beginPath(),h.arc(k.x,k.y,k.outerRadius,k.startAngle,k.endAngle),h.arc(k.x,k.y,k.innerRadius,k.endAngle,k.startAngle,!0),h.closePath(),ne=0;neh.x&&(b=ci(b,"left","right")):h.baseN?N:he,r:ne.right||Me<0?0:Me>b?b:Me,b:ne.bottom||Qe<0?0:Qe>N?N:Qe,l:ne.left||Re<0?0:Re>b?b:Re}}function ts(h,b,N){var k=null===b,ne=null===N,he=!(!h||k&&ne)&&Bn(h);return he&&(k||b>=he.left&&b<=he.right)&&(ne||N>=he.top&&N<=he.bottom)}qr._set("global",{elements:{rectangle:{backgroundColor:Vt,borderColor:Vt,borderSkipped:"bottom",borderWidth:0}}});var jo=nr.extend({_type:"rectangle",draw:function(){var h=this._chart.ctx,b=this._view,N=function es(h){var b=Bn(h),N=b.right-b.left,k=b.bottom-b.top,ne=go(h,N/2,k/2);return{outer:{x:b.left,y:b.top,w:N,h:k},inner:{x:b.left+ne.l,y:b.top+ne.t,w:N-ne.l-ne.r,h:k-ne.t-ne.b}}}(b),k=N.outer,ne=N.inner;h.fillStyle=b.backgroundColor,h.fillRect(k.x,k.y,k.w,k.h),(k.w!==ne.w||k.h!==ne.h)&&(h.save(),h.beginPath(),h.rect(k.x,k.y,k.w,k.h),h.clip(),h.fillStyle=b.borderColor,h.rect(ne.x,ne.y,ne.w,ne.h),h.fill("evenodd"),h.restore())},height:function(){var h=this._view;return h.base-h.y},inRange:function(h,b){return ts(this._view,h,b)},inLabelRange:function(h,b){var N=this._view;return bn(N)?ts(N,h,null):ts(N,null,b)},inXRange:function(h){return ts(this._view,h,null)},inYRange:function(h){return ts(this._view,null,h)},getCenterPoint:function(){var b,N,h=this._view;return bn(h)?(b=h.x,N=(h.y+h.base)/2):(b=(h.x+h.base)/2,N=h.y),{x:b,y:N}},getArea:function(){var h=this._view;return bn(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}}}),ss={},Is=ji,la=ro,Ro=jo;ss.Arc=ti,ss.Line=Is,ss.Point=la,ss.Rectangle=Ro;var jl=Pe._deprecated,gl=Pe.valueOrDefault;function da(h,b,N){var Qe,Re,k=N.barThickness,ne=b.stackCount,he=b.pixels[h],Me=Pe.isNullOrUndef(k)?function qa(h,b){var k,ne,he,Me,N=h._length;for(he=1,Me=b.length;he0?Math.min(N,Math.abs(ne-k)):N,k=ne;return N}(b.scale,b.pixels):-1;return Pe.isNullOrUndef(k)?(Qe=Me*N.categoryPercentage,Re=N.barPercentage):(Qe=k*ne,Re=1),{chunk:Qe/ne,ratio:Re,start:he-Qe/2}}qr._set("bar",{hover:{mode:"label"},scales:{xAxes:[{type:"category",offset:!0,gridLines:{offsetGridLines:!0}}],yAxes:[{type:"linear"}]}}),qr._set("global",{datasets:{bar:{categoryPercentage:.8,barPercentage:.9}}});var Rl=Ai.extend({dataElementType:ss.Rectangle,_dataElementOptions:["backgroundColor","borderColor","borderSkipped","borderWidth","barPercentage","barThickness","categoryPercentage","maxBarThickness","minBarLength"],initialize:function(){var b,N,h=this;Ai.prototype.initialize.apply(h,arguments),(b=h.getMeta()).stack=h.getDataset().stack,b.bar=!0,N=h._getIndexScale().options,jl("bar chart",N.barPercentage,"scales.[x/y]Axes.barPercentage","dataset.barPercentage"),jl("bar chart",N.barThickness,"scales.[x/y]Axes.barThickness","dataset.barThickness"),jl("bar chart",N.categoryPercentage,"scales.[x/y]Axes.categoryPercentage","dataset.categoryPercentage"),jl("bar chart",h._getValueScale().options.minBarLength,"scales.[x/y]Axes.minBarLength","dataset.minBarLength"),jl("bar chart",N.maxBarThickness,"scales.[x/y]Axes.maxBarThickness","dataset.maxBarThickness")},update:function(h){var k,ne,b=this,N=b.getMeta().data;for(b._ruler=b.getRuler(),k=0,ne=N.length;k=0&&ft.min>=0?ft.min:ft.max,sr=void 0===ft.start?ft.end:ft.max>=0&&ft.min>=0?ft.max-ft.min:ft.min-ft.max,Dr=Re.length;if(It||void 0===It&&void 0!==Cn)for(oi=0;oi=0&&Pl.max>=0?Pl.max:Pl.min,(ft.min<0&&As<0||ft.max>=0&&As>0)&&(er+=As));return as=he.getPixelForValue(er),Na=(ma=he.getPixelForValue(er+sr))-as,void 0!==wt&&Math.abs(Na)=0&&!Me||sr<0&&Me?as-wt:as+wt),{size:Na,base:as,head:ma,center:ma+Na/2}},calculateBarIndexPixels:function(h,b,N,k){var he="flex"===k.barThickness?function $a(h,b,N){var Re,k=b.pixels,ne=k[h],he=h>0?k[h-1]:null,Me=h=$s?-Aa:As<-$s?Aa:0)+Cn,ma=Math.cos(As),Na=Math.sin(As),Pl=Math.cos(as),il=Math.sin(as),dl=As<=0&&as>=0||as>=Aa,Nl=As<=Ja&&as>=Ja||as>=Aa+Ja,ac=As<=-Ja&&as>=-Ja||as>=$s+Ja,wa=As===-$s||as>=$s?-1:Math.min(ma,ma*It,Pl,Pl*It),nc=ac?-1:Math.min(Na,Na*It,il,il*It),yc=dl?1:Math.max(ma,ma*It,Pl,Pl*It),Gc=Nl?1:Math.max(Na,Na*It,il,il*It);he=(yc-wa)/2,Me=(Gc-nc)/2,Qe=-(yc+wa)/2,Re=-(Gc+nc)/2}for(oi=0,uo=wt.length;oi0&&!isNaN(h)?Aa*(Math.abs(h)/b):0},getMaxBorderWidth:function(h){var ne,he,Me,Qe,Re,ft,wt,It,N=0,k=this.chart;if(!h)for(ne=0,he=k.data.datasets.length;ne(N=(wt=ft.borderWidth)>N?wt:N)?It:N);return N},setHoverStyle:function(h){var b=h._model,N=h._options,k=Pe.getHoverColor;h.$previousStyle={backgroundColor:b.backgroundColor,borderColor:b.borderColor,borderWidth:b.borderWidth},b.backgroundColor=hs(N.hoverBackgroundColor,k(N.backgroundColor)),b.borderColor=hs(N.hoverBorderColor,k(N.borderColor)),b.borderWidth=hs(N.hoverBorderWidth,N.borderWidth)},_getRingWeightOffset:function(h){for(var b=0,N=0;N0&&ns(he[Me-1]._model,ne)&&(Re.controlPointPreviousX=wt(Re.controlPointPreviousX,ne.left,ne.right),Re.controlPointPreviousY=wt(Re.controlPointPreviousY,ne.top,ne.bottom)),Me0&&(he=h.getDatasetMeta(he[0]._datasetIndex).data),he},"x-axis":function(h,b){return Ll(h,b,{intersect:!1})},point:function(h,b){return ds(h,Xi(b,h))},nearest:function(h,b,N){var k=Xi(b,h);N.axis=N.axis||"xy";var ne=Js(N.axis);return qs(h,k,N.intersect,ne)},x:function(h,b,N){var k=Xi(b,h),ne=[],he=!1;return ws(h,function(Me){Me.inXRange(k.x)&&ne.push(Me),Me.inRange(k.x,k.y)&&(he=!0)}),N.intersect&&!he&&(ne=[]),ne},y:function(h,b,N){var k=Xi(b,h),ne=[],he=!1;return ws(h,function(Me){Me.inYRange(k.y)&&ne.push(Me),Me.inRange(k.x,k.y)&&(he=!0)}),N.intersect&&!he&&(ne=[]),ne}}},Yu=Pe.extend;function Nc(h,b){return Pe.where(h,function(N){return N.pos===b})}function qu(h,b){return h.sort(function(N,k){var ne=b?k:N,he=b?N:k;return ne.weight===he.weight?ne.index-he.index:ne.weight-he.weight})}function au(h,b,N,k){return Math.max(h[N],b[N])+Math.max(h[k],b[k])}function Da(h,b,N){var he,Me,k=N.box,ne=h.maxPadding;if(N.size&&(h[N.pos]-=N.size),N.size=N.horizontal?k.height:k.width,h[N.pos]+=N.size,k.getPadding){var Qe=k.getPadding();ne.top=Math.max(ne.top,Qe.top),ne.left=Math.max(ne.left,Qe.left),ne.bottom=Math.max(ne.bottom,Qe.bottom),ne.right=Math.max(ne.right,Qe.right)}if(he=b.outerWidth-au(ne,h,"left","right"),Me=b.outerHeight-au(ne,h,"top","bottom"),he!==h.w||Me!==h.h){h.w=he,h.h=Me;var Re=N.horizontal?[he,h.w]:[Me,h.h];return!(Re[0]===Re[1]||isNaN(Re[0])&&isNaN(Re[1]))}}function ju(h,b){var N=b.maxPadding;return function k(ne){var he={left:0,top:0,right:0,bottom:0};return ne.forEach(function(Me){he[Me]=Math.max(b[Me],N[Me])}),he}(h?["left","right"]:["top","bottom"])}function el(h,b,N){var ne,he,Me,Qe,Re,ft,k=[];for(ne=0,he=h.length;ne 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"})),ua="$chartjs",El="chartjs-",uu=El+"size-monitor",Eu=El+"render-monitor",$u=El+"render-animation",Ba=["animationstart","webkitAnimationStart"],Tl={touchstart:"mousedown",touchmove:"mousemove",touchend:"mouseup",pointerenter:"mouseenter",pointerdown:"mousedown",pointermove:"mousemove",pointerup:"mouseup",pointerleave:"mouseout",pointerout:"mouseout"};function tl(h,b){var N=Pe.getStyle(h,b),k=N&&N.match(/^(\d+)(\.\d+)?px$/);return k?Number(k[1]):void 0}var cu=!!function(){var h=!1;try{var b=Object.defineProperty({},"passive",{get:function(){h=!0}});window.addEventListener("e",null,b)}catch{}return h}()&&{passive:!0};function Sa(h,b,N){h.addEventListener(b,N,cu)}function Ru(h,b,N){h.removeEventListener(b,N,cu)}function xu(h,b,N,k,ne){return{type:h,chart:b,native:ne||null,x:void 0!==N?N:null,y:void 0!==k?k:null}}function Su(h){var b=document.createElement("div");return b.className=h||"",b}function Dc(h,b,N){var k=h[ua]||(h[ua]={}),ne=k.resizer=function gc(h){var b=1e6,N=Su(uu),k=Su(uu+"-expand"),ne=Su(uu+"-shrink");k.appendChild(Su()),ne.appendChild(Su()),N.appendChild(k),N.appendChild(ne),N._reset=function(){k.scrollLeft=b,k.scrollTop=b,ne.scrollLeft=b,ne.scrollTop=b};var he=function(){N._reset(),h()};return Sa(k,"scroll",he.bind(k,"expand")),Sa(ne,"scroll",he.bind(ne,"shrink")),N}(function nl(h,b){var N=!1,k=[];return function(){k=Array.prototype.slice.call(arguments),b=b||this,N||(N=!0,Pe.requestAnimFrame.call(window,function(){N=!1,h.apply(b,k)}))}}(function(){if(k.resizer){var he=N.options.maintainAspectRatio&&h.parentNode,Me=he?he.clientWidth:0;b(xu("resize",N)),he&&he.clientWidth0){var he=h[0];he.label?N=he.label:he.xLabel?N=he.xLabel:ne>0&&he.index-1?h.split("\n"):h}function Hu(h){var b=h._xScale,N=h._yScale||h._scale,k=h._index,ne=h._datasetIndex,he=h._chart.getDatasetMeta(ne).controller,Me=he._getIndexScale(),Qe=he._getValueScale();return{xLabel:b?b.getLabelForIndex(k,ne):"",yLabel:N?N.getLabelForIndex(k,ne):"",label:Me?""+Me.getLabelForIndex(k,ne):"",value:Qe?""+Qe.getLabelForIndex(k,ne):"",index:k,datasetIndex:ne,x:h._model.x,y:h._model.y}}function zl(h){var b=qr.global;return{xPadding:h.xPadding,yPadding:h.yPadding,xAlign:h.xAlign,yAlign:h.yAlign,rtl:h.rtl,textDirection:h.textDirection,bodyFontColor:h.bodyFontColor,_bodyFontFamily:To(h.bodyFontFamily,b.defaultFontFamily),_bodyFontStyle:To(h.bodyFontStyle,b.defaultFontStyle),_bodyAlign:h.bodyAlign,bodyFontSize:To(h.bodyFontSize,b.defaultFontSize),bodySpacing:h.bodySpacing,titleFontColor:h.titleFontColor,_titleFontFamily:To(h.titleFontFamily,b.defaultFontFamily),_titleFontStyle:To(h.titleFontStyle,b.defaultFontStyle),titleFontSize:To(h.titleFontSize,b.defaultFontSize),_titleAlign:h.titleAlign,titleSpacing:h.titleSpacing,titleMarginBottom:h.titleMarginBottom,footerFontColor:h.footerFontColor,_footerFontFamily:To(h.footerFontFamily,b.defaultFontFamily),_footerFontStyle:To(h.footerFontStyle,b.defaultFontStyle),footerFontSize:To(h.footerFontSize,b.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 id(h,b){return"center"===b?h.x+h.width/2:"right"===b?h.x+h.width-h.xPadding:h.x+h.xPadding}function ec(h){return Hs([],Qs(h))}var Fc=nr.extend({initialize:function(){this._model=zl(this._options),this._lastActive=[]},getTitle:function(){var h=this,N=h._options.callbacks,k=N.beforeTitle.apply(h,arguments),ne=N.title.apply(h,arguments),he=N.afterTitle.apply(h,arguments),Me=[];return Me=Hs(Me,Qs(k)),Me=Hs(Me,Qs(ne)),Hs(Me,Qs(he))},getBeforeBody:function(){return ec(this._options.callbacks.beforeBody.apply(this,arguments))},getBody:function(h,b){var N=this,k=N._options.callbacks,ne=[];return Pe.each(h,function(he){var Me={before:[],lines:[],after:[]};Hs(Me.before,Qs(k.beforeLabel.call(N,he,b))),Hs(Me.lines,k.label.call(N,he,b)),Hs(Me.after,Qs(k.afterLabel.call(N,he,b))),ne.push(Me)}),ne},getAfterBody:function(){return ec(this._options.callbacks.afterBody.apply(this,arguments))},getFooter:function(){var h=this,b=h._options.callbacks,N=b.beforeFooter.apply(h,arguments),k=b.footer.apply(h,arguments),ne=b.afterFooter.apply(h,arguments),he=[];return he=Hs(he,Qs(N)),he=Hs(he,Qs(k)),Hs(he,Qs(ne))},update:function(h){var It,Cn,b=this,N=b._options,k=b._model,ne=b._model=zl(N),he=b._active,Me=b._data,Qe={xAlign:k.xAlign,yAlign:k.yAlign},Re={x:k.x,y:k.y},ft={width:k.width,height:k.height},wt={x:k.caretX,y:k.caretY};if(he.length){ne.opacity=1;var er=[],sr=[];wt=mi[N.position].call(b,he,b._eventPosition);var Dr=[];for(It=0,Cn=he.length;Itk.width&&(ne=k.width-b.width),ne<0&&(ne=0)),"top"===wt?he+=It:he-="bottom"===wt?b.height+It:b.height/2,"center"===wt?"left"===ft?ne+=It:"right"===ft&&(ne-=It):"left"===ft?ne-=Cn:"right"===ft&&(ne+=Cn),{x:ne,y:he}}(ne,ft=function sc(h,b){var N=h._chart.ctx,k=2*b.yPadding,ne=0,he=b.body,Me=he.reduce(function(sr,Dr){return sr+Dr.before.length+Dr.lines.length+Dr.after.length},0),Qe=b.title.length,Re=b.footer.length,ft=b.titleFontSize,wt=b.bodyFontSize,It=b.footerFontSize;k+=Qe*ft,k+=Qe?(Qe-1)*b.titleSpacing:0,k+=Qe?b.titleMarginBottom:0,k+=(Me+=b.beforeBody.length+b.afterBody.length)*wt,k+=Me?(Me-1)*b.bodySpacing:0,k+=Re?b.footerMarginTop:0,k+=Re*It,k+=Re?(Re-1)*b.footerSpacing:0;var Cn=0,er=function(sr){ne=Math.max(ne,N.measureText(sr).width+Cn)};return N.font=Pe.fontString(ft,b._titleFontStyle,b._titleFontFamily),Pe.each(b.title,er),N.font=Pe.fontString(wt,b._bodyFontStyle,b._bodyFontFamily),Pe.each(b.beforeBody.concat(b.afterBody),er),Cn=b.displayColors?wt+2:0,Pe.each(he,function(sr){Pe.each(sr.before,er),Pe.each(sr.lines,er),Pe.each(sr.after,er)}),Cn=0,N.font=Pe.fontString(It,b._footerFontStyle,b._footerFontFamily),Pe.each(b.footer,er),{width:ne+=2*b.xPadding,height:k}}(this,ne),Qe=function hu(h,b){var N=h._model,k=h._chart,ne=h._chart.chartArea,he="center",Me="center";N.yk.height-b.height&&(Me="bottom");var Qe,Re,ft,wt,It,Cn=(ne.left+ne.right)/2,er=(ne.top+ne.bottom)/2;"center"===Me?(Qe=function(Dr){return Dr<=Cn},Re=function(Dr){return Dr>Cn}):(Qe=function(Dr){return Dr<=b.width/2},Re=function(Dr){return Dr>=k.width-b.width/2}),ft=function(Dr){return Dr+b.width+N.caretSize+N.caretPadding>k.width},wt=function(Dr){return Dr-b.width-N.caretSize-N.caretPadding<0},It=function(Dr){return Dr<=er?"top":"bottom"},Qe(N.x)?(he="left",ft(N.x)&&(he="center",Me=It(N.y))):Re(N.x)&&(he="right",wt(N.x)&&(he="center",Me=It(N.y)));var sr=h._options;return{xAlign:sr.xAlign?sr.xAlign:he,yAlign:sr.yAlign?sr.yAlign:Me}}(this,ft),b._chart)}else ne.opacity=0;return ne.xAlign=Qe.xAlign,ne.yAlign=Qe.yAlign,ne.x=Re.x,ne.y=Re.y,ne.width=ft.width,ne.height=ft.height,ne.caretX=wt.x,ne.caretY=wt.y,b._model=ne,h&&N.custom&&N.custom.call(b,ne),b},drawCaret:function(h,b){var N=this._chart.ctx,ne=this.getCaretPosition(h,b,this._view);N.lineTo(ne.x1,ne.y1),N.lineTo(ne.x2,ne.y2),N.lineTo(ne.x3,ne.y3)},getCaretPosition:function(h,b,N){var k,ne,he,Me,Qe,Re,ft=N.caretSize,wt=N.cornerRadius,It=N.xAlign,Cn=N.yAlign,er=h.x,sr=h.y,Dr=b.width,oi=b.height;if("center"===Cn)Qe=sr+oi/2,"left"===It?(ne=(k=er)-ft,he=k,Me=Qe+ft,Re=Qe-ft):(ne=(k=er+Dr)+ft,he=k,Me=Qe-ft,Re=Qe+ft);else if("left"===It?(k=(ne=er+wt+ft)-ft,he=ne+ft):"right"===It?(k=(ne=er+Dr-wt-ft)-ft,he=ne+ft):(k=(ne=N.caretX)-ft,he=ne+ft),"top"===Cn)Qe=(Me=sr)-ft,Re=Me;else{Qe=(Me=sr+oi)+ft,Re=Me;var uo=he;he=k,k=uo}return{x1:k,x2:ne,x3:he,y1:Me,y2:Qe,y3:Re}},drawTitle:function(h,b,N){var he,Me,Qe,k=b.title,ne=k.length;if(ne){var Re=Ya(b.rtl,b.x,b.width);for(h.x=id(b,b._titleAlign),N.textAlign=Re.textAlign(b._titleAlign),N.textBaseline="middle",he=b.titleFontSize,Me=b.titleSpacing,N.fillStyle=b.titleFontColor,N.font=Pe.fontString(he,b._titleFontStyle,b._titleFontFamily),Qe=0;Qe0&&N.stroke()},draw:function(){var h=this._chart.ctx,b=this._view;if(0!==b.opacity){var N={width:b.width,height:b.height},k={x:b.x,y:b.y},ne=Math.abs(b.opacity<.001)?0:b.opacity;this._options.enabled&&(b.title.length||b.beforeBody.length||b.body.length||b.afterBody.length||b.footer.length)&&(h.save(),h.globalAlpha=ne,this.drawBackground(k,b,h,N),k.y+=b.yPadding,Pe.rtl.overrideTextDirection(h,b.textDirection),this.drawTitle(k,b,h),this.drawBody(k,b,h),this.drawFooter(k,b,h),Pe.rtl.restoreTextDirection(h,b.textDirection),h.restore())}},handleEvent:function(h){var k,b=this,N=b._options;return b._lastActive=b._lastActive||[],"mouseout"===h.type?b._active=[]:(b._active=b._chart.getElementsAtEventForMode(h,N.mode,N),N.reverse&&b._active.reverse()),(k=!Pe.arrayEquals(b._active,b._lastActive))&&(b._lastActive=b._active,(N.enabled||N.custom)&&(b._eventPosition={x:h.x,y:h.y},b.update(!0),b.pivot())),k}}),Lc=Fc;Lc.positioners=mi;var kl=Pe.valueOrDefault;function sl(){return Pe.merge(Object.create(null),[].slice.call(arguments),{merger:function(h,b,N,k){if("xAxes"===h||"yAxes"===h){var he,Me,Qe,ne=N[h].length;for(b[h]||(b[h]=[]),he=0;he=b[h].length&&b[h].push({}),Pe.merge(b[h][he],!b[h][he].type||Qe.type&&Qe.type!==b[h][he].type?[fi.getScaleDefaults(Me),Qe]:Qe)}else Pe._merger(h,b,N,k)}})}function ja(){return Pe.merge(Object.create(null),[].slice.call(arguments),{merger:function(h,b,N,k){var ne=b[h]||Object.create(null),he=N[h];"scales"===h?b[h]=sl(ne,he):"scale"===h?b[h]=Pe.merge(ne,[fi.getScaleDefaults(he.type),he]):Pe._merger(h,b,N,k)}})}function yt(h,b,N){var k,ne=function(he){return he.id===k};do{k=b+N++}while(Pe.findIndex(h,ne)>=0);return k}function Xe(h){return"top"===h||"bottom"===h}function Gt(h,b){return function(N,k){return N[h]===k[h]?N[b]-k[b]:N[h]-k[h]}}qr._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 An=function(h,b){return this.construct(h,b),this};Pe.extend(An.prototype,{construct:function(h,b){var N=this;b=function Q(h){var b=(h=h||Object.create(null)).data=h.data||{};return b.datasets=b.datasets||[],b.labels=b.labels||[],h.options=ja(qr.global,qr[h.type],h.options||{}),h}(b);var k=Je.acquireContext(h,b),ne=k&&k.canvas,he=ne&&ne.height,Me=ne&&ne.width;N.id=Pe.uid(),N.ctx=k,N.canvas=ne,N.config=b,N.width=Me,N.height=he,N.aspectRatio=he?Me/he:null,N.options=b.options,N._bufferedRender=!1,N._layers=[],N.chart=N,N.controller=N,An.instances[N.id]=N,Object.defineProperty(N,"data",{get:function(){return N.config.data},set:function(Qe){N.config.data=Qe}}),k&&ne?(N.initialize(),N.update()):console.error("Failed to create chart: can't acquire context from the given item")},initialize:function(){var h=this;return en.notify(h,"beforeInit"),Pe.retinaScale(h,h.options.devicePixelRatio),h.bindEvents(),h.options.responsive&&h.resize(!0),h.initToolTip(),en.notify(h,"afterInit"),h},clear:function(){return Pe.canvas.clear(this),this},stop:function(){return Ge.cancelAnimation(this),this},resize:function(h){var b=this,N=b.options,k=b.canvas,ne=N.maintainAspectRatio&&b.aspectRatio||null,he=Math.max(0,Math.floor(Pe.getMaximumWidth(k))),Me=Math.max(0,Math.floor(ne?he/ne:Pe.getMaximumHeight(k)));if((b.width!==he||b.height!==Me)&&(k.width=b.width=he,k.height=b.height=Me,k.style.width=he+"px",k.style.height=Me+"px",Pe.retinaScale(b,N.devicePixelRatio),!h)){var Qe={width:he,height:Me};en.notify(b,"resize",[Qe]),N.onResize&&N.onResize(b,Qe),b.stop(),b.update({duration:N.responsiveAnimationDuration})}},ensureScalesHaveIDs:function(){var h=this.options,b=h.scales||{},N=h.scale;Pe.each(b.xAxes,function(k,ne){k.id||(k.id=yt(b.xAxes,"x-axis-",ne))}),Pe.each(b.yAxes,function(k,ne){k.id||(k.id=yt(b.yAxes,"y-axis-",ne))}),N&&(N.id=N.id||"scale")},buildOrUpdateScales:function(){var h=this,b=h.options,N=h.scales||{},k=[],ne=Object.keys(N).reduce(function(he,Me){return he[Me]=!1,he},{});b.scales&&(k=k.concat((b.scales.xAxes||[]).map(function(he){return{options:he,dtype:"category",dposition:"bottom"}}),(b.scales.yAxes||[]).map(function(he){return{options:he,dtype:"linear",dposition:"left"}}))),b.scale&&k.push({options:b.scale,dtype:"radialLinear",isDefault:!0,dposition:"chartArea"}),Pe.each(k,function(he){var Me=he.options,Qe=Me.id,Re=kl(Me.type,he.dtype);Xe(Me.position)!==Xe(he.dposition)&&(Me.position=he.dposition),ne[Qe]=!0;var ft=null;if(Qe in N&&N[Qe].type===Re)(ft=N[Qe]).options=Me,ft.ctx=h.ctx,ft.chart=h;else{var wt=fi.getScaleConstructor(Re);if(!wt)return;ft=new wt({id:Qe,type:Re,options:Me,ctx:h.ctx,chart:h}),N[ft.id]=ft}ft.mergeTicksOptions(),he.isDefault&&(h.scale=ft)}),Pe.each(ne,function(he,Me){he||delete N[Me]}),h.scales=N,fi.addScalesToLayout(this)},buildOrUpdateControllers:function(){var k,ne,h=this,b=[],N=h.data.datasets;for(k=0,ne=N.length;k=0;--k)b.drawDataset(N[k],h);en.notify(b,"afterDatasetsDraw",[h])}},drawDataset:function(h,b){var k={meta:h,index:h.index,easingValue:b};!1!==en.notify(this,"beforeDatasetDraw",[k])&&(h.controller.draw(b),en.notify(this,"afterDatasetDraw",[k]))},_drawTooltip:function(h){var b=this,N=b.tooltip,k={tooltip:N,easingValue:h};!1!==en.notify(b,"beforeTooltipDraw",[k])&&(N.draw(),en.notify(b,"afterTooltipDraw",[k]))},getElementAtEvent:function(h){return vl.modes.single(this,h)},getElementsAtEvent:function(h){return vl.modes.label(this,h,{intersect:!0})},getElementsAtXAxis:function(h){return vl.modes["x-axis"](this,h,{intersect:!0})},getElementsAtEventForMode:function(h,b,N){var k=vl.modes[b];return"function"==typeof k?k(this,h,N):[]},getDatasetAtEvent:function(h){return vl.modes.dataset(this,h,{intersect:!0})},getDatasetMeta:function(h){var b=this,N=b.data.datasets[h];N._meta||(N._meta={});var k=N._meta[b.id];return k||(k=N._meta[b.id]={type:null,data:[],dataset:null,controller:null,hidden:null,xAxisID:null,yAxisID:null,order:N.order||0,index:h}),k},getVisibleDatasetCount:function(){for(var h=0,b=0,N=this.data.datasets.length;b3?N[2]-N[1]:N[1]-N[0];Math.abs(k)>1&&h!==Math.floor(h)&&(k=h-Math.floor(h));var ne=Pe.log10(Math.abs(k)),he="";if(0!==h)if(Math.max(Math.abs(N[0]),Math.abs(N[N.length-1]))<1e-4){var Qe=Pe.log10(Math.abs(h)),Re=Math.floor(Qe)-Math.floor(ne);Re=Math.max(Math.min(Re,20),0),he=h.toExponential(Re)}else{var ft=-1*Math.floor(ne);ft=Math.max(Math.min(ft,20),0),he=h.toFixed(ft)}else he="0";return he},logarithmic:function(h,b,N){var k=h/Math.pow(10,Math.floor(Pe.log10(h)));return 0===h?"0":1===k||2===k||5===k||0===b||b===N.length-1?h.toExponential():""}}},Qn=Pe.isArray,Gr=Pe.isNullOrUndef,Fr=Pe.valueOrDefault,Ui=Pe.valueAtIndexOrDefault;function Fa(h,b,N){var ft,k=h.getTicks().length,ne=Math.min(b,k-1),he=h.getPixelForTick(ne),Me=h._startPixel,Qe=h._endPixel;if(!(N&&(ft=1===k?Math.max(he-Me,Qe-he):0===b?(h.getPixelForTick(1)-he)/2:(he-h.getPixelForTick(ne-1))/2,he+=neQe+1e-6)))return he}function zo(h,b,N,k){var wt,It,Cn,er,sr,Dr,oi,uo,As,as,ma,Na,Pl,ne=N.length,he=[],Me=[],Qe=[],Re=0,ft=0;for(wt=0;wtb){for(he=0;he=he||k<=1||!h.isHorizontal()?h.labelRotation=ne:(Re=(Qe=h._getLabelSizes()).widest.width,ft=Qe.highest.height-Qe.highest.offset,wt=Math.min(h.maxWidth,h.chart.width-Re),Re+6>(It=b.offset?h.maxWidth/k:wt/(k-1))&&(It=wt/(k-(b.offset?.5:1)),Cn=h.maxHeight-$l(b.gridLines)-N.padding-xl(b.scaleLabel),er=Math.sqrt(Re*Re+ft*ft),Me=Pe.toDegrees(Math.min(Math.asin(Math.min((Qe.highest.height+6)/It,1)),Math.asin(Math.min(Cn/er,1))-Math.asin(ft/er))),Me=Math.max(ne,Math.min(he,Me))),h.labelRotation=Me)},afterCalculateTickRotation:function(){Pe.callback(this.options.afterCalculateTickRotation,[this])},beforeFit:function(){Pe.callback(this.options.beforeFit,[this])},fit:function(){var h=this,b=h.minSize={width:0,height:0},N=h.chart,k=h.options,ne=k.ticks,he=k.scaleLabel,Me=k.gridLines,Qe=h._isVisible(),Re="bottom"===k.position,ft=h.isHorizontal();if(ft?b.width=h.maxWidth:Qe&&(b.width=$l(Me)+xl(he)),ft?Qe&&(b.height=$l(Me)+xl(he)):b.height=h.maxHeight,ne.display&&Qe){var wt=Xc(ne),It=h._getLabelSizes(),Cn=It.first,er=It.last,sr=It.widest,Dr=It.highest,oi=.4*wt.minor.lineHeight,uo=ne.padding;if(ft){var As=0!==h.labelRotation,as=Pe.toRadians(h.labelRotation),ma=Math.cos(as),Na=Math.sin(as);b.height=Math.min(h.maxHeight,b.height+(Na*sr.width+ma*(Dr.height-(As?Dr.offset:0))+(As?0:oi))+uo);var Nl,Qu,il=h.getPixelForTick(0)-h.left,dl=h.right-h.getPixelForTick(h.getTicks().length-1);As?(Nl=Re?ma*Cn.width+Na*Cn.offset:Na*(Cn.height-Cn.offset),Qu=Re?Na*(er.height-er.offset):ma*er.width+Na*er.offset):(Nl=Cn.width/2,Qu=er.width/2),h.paddingLeft=Math.max((Nl-il)*h.width/(h.width-il),0)+3,h.paddingRight=Math.max((Qu-dl)*h.width/(h.width-dl),0)+3}else b.width=Math.min(h.maxWidth,b.width+(ne.mirror?0:sr.width+uo+oi)),h.paddingTop=Cn.height/2,h.paddingBottom=er.height/2}h.handleMargins(),ft?(h.width=h._length=N.width-h.margins.left-h.margins.right,h.height=b.height):(h.width=b.width,h.height=h._length=N.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(){Pe.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(Gr(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 N,k,ne,b=this;for(b.ticks=h.map(function(he){return he.value}),b.beforeTickToLabelConversion(),N=b.convertTicksToLabels(h)||b.ticks,b.afterTickToLabelConversion(),k=0,ne=h.length;kk-1?null:b.getPixelForDecimal(h*ne+(N?ne/2:0))},getPixelForDecimal:function(h){var b=this;return b._reversePixels&&(h=1-h),b._startPixel+h*b._length},getDecimalForPixel:function(h){var b=(h-this._startPixel)/this._length;return this._reversePixels?1-b:b},getBasePixel:function(){return this.getPixelForValue(this.getBaseValue())},getBaseValue:function(){var h=this,b=h.min,N=h.max;return h.beginAtZero?0:b<0&&N<0?N:b>0&&N>0?b:0},_autoSkip:function(h){var ft,wt,It,Cn,b=this,N=b.options.ticks,k=b._length,ne=N.maxTicksLimit||k/b._tickSize()+1,he=N.major.enabled?function Wl(h){var N,k,b=[];for(N=0,k=h.length;Nne)return function Pa(h,b,N){var he,Me,k=0,ne=b[0];for(N=Math.ceil(N),he=0;hehe)return Qe;return Math.max(he,1)}(he,h,0,ne),Me>0){for(ft=0,wt=Me-1;ft1?(Re-Qe)/(Me-1):null)?0:Qe-Cn,Qe),fc(h,It,Re,Pe.isNullOrUndef(Cn)?h.length:Re+Cn),ad(h)}return fc(h,It),ad(h)},_tickSize:function(){var h=this,b=h.options.ticks,N=Pe.toRadians(h.labelRotation),k=Math.abs(Math.cos(N)),ne=Math.abs(Math.sin(N)),he=h._getLabelSizes(),Me=b.autoSkipPadding||0,Qe=he?he.widest.width+Me:0,Re=he?he.highest.height+Me:0;return h.isHorizontal()?Re*k>Qe*ne?Qe/k:Re/ne:Re*ne=0&&(he=Qe),void 0!==ne&&(Qe=b.indexOf(ne))>=0&&(Me=Qe),h.minIndex=he,h.maxIndex=Me,h.min=b[he],h.max=b[Me]},buildTicks:function(){var h=this,b=h._getLabels(),N=h.minIndex,k=h.maxIndex;h.ticks=0===N&&k===b.length-1?b:b.slice(N,k+1)},getLabelForIndex:function(h,b){var N=this,k=N.chart;return k.getDatasetMeta(b).controller._getValueScaleId()===N.id?N.getRightValue(k.data.datasets[b].data[h]):N._getLabels()[h]},_configure:function(){var h=this,b=h.options.offset,N=h.ticks;je.prototype._configure.call(h),h.isHorizontal()||(h._reversePixels=!h._reversePixels),N&&(h._startValue=h.minIndex-(b?.5:0),h._valueRange=Math.max(N.length-(b?0:1),1))},getPixelForValue:function(h,b,N){var ne,he,Me,k=this;return!Nt(b)&&!Nt(N)&&(h=k.chart.data.datasets[N].data[b]),Nt(h)||(ne=k.isHorizontal()?h.x:h.y),(void 0!==ne||void 0!==h&&isNaN(b))&&(he=k._getLabels(),h=Pe.valueOrDefault(ne,h),b=-1!==(Me=he.indexOf(h))?Me:b,isNaN(b)&&(b=h)),k.getPixelForDecimal((b-k._startValue)/k._valueRange)},getPixelForTick:function(h){var b=this.ticks;return h<0||h>b.length-1?null:this.getPixelForValue(b[h],h+this.minIndex)},getValueForPixel:function(h){var b=this,N=Math.round(b._startValue+b.getDecimalForPixel(h)*b._valueRange);return Math.min(Math.max(N,0),b.ticks.length-1)},getBasePixel:function(){return this.bottom}});tn._defaults={position:"bottom"};var Ri=Pe.isNullOrUndef;var Fs=je.extend({getRightValue:function(h){return"string"==typeof h?+h:je.prototype.getRightValue.call(this,h)},handleTickRangeOptions:function(){var h=this,N=h.options.ticks;if(N.beginAtZero){var k=Pe.sign(h.min),ne=Pe.sign(h.max);k<0&&ne<0?h.max=0:k>0&&ne>0&&(h.min=0)}var he=void 0!==N.min||void 0!==N.suggestedMin,Me=void 0!==N.max||void 0!==N.suggestedMax;void 0!==N.min?h.min=N.min:void 0!==N.suggestedMin&&(h.min=null===h.min?N.suggestedMin:Math.min(h.min,N.suggestedMin)),void 0!==N.max?h.max=N.max:void 0!==N.suggestedMax&&(h.max=null===h.max?N.suggestedMax:Math.max(h.max,N.suggestedMax)),he!==Me&&h.min>=h.max&&(he?h.max=h.min+1:h.min=h.max-1),h.min===h.max&&(h.max++,N.beginAtZero||h.min--)},getTickLimit:function(){var ne,h=this,b=h.options.ticks,N=b.stepSize,k=b.maxTicksLimit;return N?ne=Math.ceil(h.max/N)-Math.floor(h.min/N)+1:(ne=h._computeTickLimit(),k=k||11),k&&(ne=Math.min(k,ne)),ne},_computeTickLimit:function(){return Number.POSITIVE_INFINITY},handleDirectionalChanges:Pe.noop,buildTicks:function(){var h=this,N=h.options.ticks,k=h.getTickLimit(),ne={maxTicks:k=Math.max(2,k),min:N.min,max:N.max,precision:N.precision,stepSize:Pe.valueOrDefault(N.fixedStepSize,N.stepSize)},he=h.ticks=function fs(h,b){var er,sr,Dr,oi,N=[],ne=h.stepSize,he=ne||1,Me=h.maxTicks-1,Qe=h.min,Re=h.max,ft=h.precision,wt=b.min,It=b.max,Cn=Pe.niceNum((It-wt)/Me/he)*he;if(Cn<1e-14&&Ri(Qe)&&Ri(Re))return[wt,It];(oi=Math.ceil(It/Cn)-Math.floor(wt/Cn))>Me&&(Cn=Pe.niceNum(oi*Cn/Me/he)*he),ne||Ri(ft)?er=Math.pow(10,Pe._decimalPlaces(Cn)):(er=Math.pow(10,ft),Cn=Math.ceil(Cn*er)/er),sr=Math.floor(wt/Cn)*Cn,Dr=Math.ceil(It/Cn)*Cn,ne&&(!Ri(Qe)&&Pe.almostWhole(Qe/Cn,Cn/1e3)&&(sr=Qe),!Ri(Re)&&Pe.almostWhole(Re/Cn,Cn/1e3)&&(Dr=Re)),oi=Pe.almostEquals(oi=(Dr-sr)/Cn,Math.round(oi),Cn/1e3)?Math.round(oi):Math.ceil(oi),sr=Math.round(sr*er)/er,Dr=Math.round(Dr*er)/er,N.push(Ri(Qe)?sr:Qe);for(var uo=1;uob.length-1?null:this.getPixelForValue(b[h])}});rn._defaults=Ra;var le=Pe.valueOrDefault,ae=Pe.math.log10;var Ve={position:"left",ticks:{callback:Io.formatters.logarithmic}};function st(h,b){return Pe.isFinite(h)&&h>=0?h:b}var zt=je.extend({determineDataLimits:function(){var Me,Qe,Re,ft,wt,It,h=this,b=h.options,N=h.chart,k=N.data.datasets,ne=h.isHorizontal();function he(oi){return ne?oi.xAxisID===h.id:oi.yAxisID===h.id}h.min=Number.POSITIVE_INFINITY,h.max=Number.NEGATIVE_INFINITY,h.minNotZero=Number.POSITIVE_INFINITY;var Cn=b.stacked;if(void 0===Cn)for(Me=0;Me0){var uo=Pe.min(oi),As=Pe.max(oi);h.min=Math.min(h.min,uo),h.max=Math.max(h.max,As)}})}else for(Me=0;Me0?h.min:h.max<1?Math.pow(10,Math.floor(ae(h.max))):1)},buildTicks:function(){var h=this,b=h.options.ticks,N=!h.isHorizontal(),k={min:st(b.min),max:st(b.max)},ne=h.ticks=function De(h,b){var Me,Qe,N=[],k=le(h.min,Math.pow(10,Math.floor(ae(b.min)))),ne=Math.floor(ae(b.max)),he=Math.ceil(b.max/Math.pow(10,ne));0===k?(Me=Math.floor(ae(b.minNotZero)),Qe=Math.floor(b.minNotZero/Math.pow(10,Me)),N.push(k),k=Qe*Math.pow(10,Me)):(Me=Math.floor(ae(k)),Qe=Math.floor(k/Math.pow(10,Me)));var Re=Me<0?Math.pow(10,Math.abs(Me)):1;do{N.push(k),10==++Qe&&(Qe=1,Re=++Me>=0?1:Re),k=Math.round(Qe*Math.pow(10,Me)*Re)/Re}while(Meb.length-1?null:this.getPixelForValue(b[h])},_getFirstTickValue:function(h){var b=Math.floor(ae(h));return Math.floor(h/Math.pow(10,b))*Math.pow(10,b)},_configure:function(){var h=this,b=h.min,N=0;je.prototype._configure.call(h),0===b&&(b=h._getFirstTickValue(h.minNotZero),N=le(h.options.ticks.fontSize,qr.global.defaultFontSize)/h._length),h._startValue=ae(b),h._valueOffset=N,h._valueRange=(ae(h.max)-ae(b))/(1-N)},getPixelForValue:function(h){var b=this,N=0;return(h=+b.getRightValue(h))>b.min&&h>0&&(N=(ae(h)-b._startValue)/b._valueRange+b._valueOffset),b.getPixelForDecimal(N)},getValueForPixel:function(h){var b=this,N=b.getDecimalForPixel(h);return 0===N&&0===b.min?0:Math.pow(10,b._startValue+(N-b._valueOffset)*b._valueRange)}});zt._defaults=Ve;var Gn=Pe.valueOrDefault,Er=Pe.valueAtIndexOrDefault,Nr=Pe.options.resolve,Mi={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:Io.formatters.linear},pointLabels:{display:!0,fontSize:10,callback:function(h){return h}}};function ao(h){var b=h.ticks;return b.display&&h.display?Gn(b.fontSize,qr.global.defaultFontSize)+2*b.backdropPaddingY:0}function Jo(h,b,N){return Pe.isArray(N)?{w:Pe.longestText(h,h.font,N),h:N.length*b}:{w:h.measureText(N).width,h:b}}function rs(h,b,N,k,ne){return h===k||h===ne?{start:b-N/2,end:b+N/2}:hne?{start:b-N,end:b}:{start:b,end:b+N}}function Ps(h){return 0===h||180===h?"center":h<180?"left":"right"}function Ul(h,b,N,k){var he,Me,ne=N.y+k/2;if(Pe.isArray(b))for(he=0,Me=b.length;he270||h<90)&&(N.y-=b.h)}function Rc(h){return Pe.isNumber(h)?h:0}var fu=Fs.extend({setDimensions:function(){var h=this;h.width=h.maxWidth,h.height=h.maxHeight,h.paddingTop=ao(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,b=h.chart,N=Number.POSITIVE_INFINITY,k=Number.NEGATIVE_INFINITY;Pe.each(b.data.datasets,function(ne,he){if(b.isDatasetVisible(he)){var Me=b.getDatasetMeta(he);Pe.each(ne.data,function(Qe,Re){var ft=+h.getRightValue(Qe);isNaN(ft)||Me.data[Re].hidden||(N=Math.min(ft,N),k=Math.max(ft,k))})}}),h.min=N===Number.POSITIVE_INFINITY?0:N,h.max=k===Number.NEGATIVE_INFINITY?0:k,h.handleTickRangeOptions()},_computeTickLimit:function(){return Math.ceil(this.drawingArea/ao(this.options))},convertTicksToLabels:function(){var h=this;Fs.prototype.convertTicksToLabels.call(h),h.pointLabels=h.chart.data.labels.map(function(){var b=Pe.callback(h.options.pointLabels.callback,arguments,h);return b||0===b?b:""})},getLabelForIndex:function(h,b){return+this.getRightValue(this.chart.data.datasets[b].data[h])},fit:function(){var h=this,b=h.options;b.display&&b.pointLabels.display?function ys(h){var ne,he,Me,b=Pe.options._parseFont(h.options.pointLabels),N={l:0,r:h.width,t:0,b:h.height-h.paddingTop},k={};h.ctx.font=b.string,h._pointLabelSizes=[];var Qe=h.chart.data.labels.length;for(ne=0;neN.r&&(N.r=wt.end,k.r=Re),It.startN.b&&(N.b=It.end,k.b=Re)}h.setReductions(h.drawingArea,N,k)}(h):h.setCenterPoint(0,0,0,0)},setReductions:function(h,b,N){var k=this,ne=b.l/Math.sin(N.l),he=Math.max(b.r-k.width,0)/Math.sin(N.r),Me=-b.t/Math.cos(N.t),Qe=-Math.max(b.b-(k.height-k.paddingTop),0)/Math.cos(N.b);ne=Rc(ne),he=Rc(he),Me=Rc(Me),Qe=Rc(Qe),k.drawingArea=Math.min(Math.floor(h-(ne+he)/2),Math.floor(h-(Me+Qe)/2)),k.setCenterPoint(ne,he,Me,Qe)},setCenterPoint:function(h,b,N,k){var ne=this,Qe=N+ne.drawingArea,Re=ne.height-ne.paddingTop-k-ne.drawingArea;ne.xCenter=Math.floor((h+ne.drawingArea+(ne.width-b-ne.drawingArea))/2+ne.left),ne.yCenter=Math.floor((Qe+Re)/2+ne.top+ne.paddingTop)},getIndexAngle:function(h){var b=this.chart,he=(h*(360/b.data.labels.length)+((b.options||{}).startAngle||0))%360;return(he<0?he+360:he)*Math.PI*2/360},getDistanceFromCenterForValue:function(h){var b=this;if(Pe.isNullOrUndef(h))return NaN;var N=b.drawingArea/(b.max-b.min);return b.options.ticks.reverse?(b.max-h)*N:(h-b.min)*N},getPointPosition:function(h,b){var N=this,k=N.getIndexAngle(h)-Math.PI/2;return{x:Math.cos(k)*b+N.xCenter,y:Math.sin(k)*b+N.yCenter}},getPointPositionForValue:function(h,b){return this.getPointPosition(h,this.getDistanceFromCenterForValue(b))},getBasePosition:function(h){var b=this,N=b.min,k=b.max;return b.getPointPositionForValue(h||0,b.beginAtZero?0:N<0&&k<0?k:N>0&&k>0?N:0)},_drawGrid:function(){var Qe,Re,ft,h=this,b=h.ctx,N=h.options,k=N.gridLines,ne=N.angleLines,he=Gn(ne.lineWidth,k.lineWidth),Me=Gn(ne.color,k.color);if(N.pointLabels.display&&function mu(h){var b=h.ctx,N=h.options,k=N.pointLabels,ne=ao(N),he=h.getDistanceFromCenterForValue(N.ticks.reverse?h.min:h.max),Me=Pe.options._parseFont(k);b.save(),b.font=Me.string,b.textBaseline="middle";for(var Qe=h.chart.data.labels.length-1;Qe>=0;Qe--){var ft=h.getPointPosition(Qe,he+(0===Qe?ne/2:0)+5),wt=Er(k.fontColor,Qe,qr.global.defaultFontColor);b.fillStyle=wt;var It=h.getIndexAngle(Qe),Cn=Pe.toDegrees(It);b.textAlign=Ps(Cn),eu(Cn,h._pointLabelSizes[Qe],ft),Ul(b,h.pointLabels[Qe],ft,Me.lineHeight)}b.restore()}(h),k.display&&Pe.each(h.ticks,function(wt,It){0!==It&&(Re=h.getDistanceFromCenterForValue(h.ticksAsNumbers[It]),function wu(h,b,N,k){var ft,ne=h.ctx,he=b.circular,Me=h.chart.data.labels.length,Qe=Er(b.color,k-1),Re=Er(b.lineWidth,k-1);if((he||Me)&&Qe&&Re){if(ne.save(),ne.strokeStyle=Qe,ne.lineWidth=Re,ne.setLineDash&&(ne.setLineDash(b.borderDash||[]),ne.lineDashOffset=b.borderDashOffset||0),ne.beginPath(),he)ne.arc(h.xCenter,h.yCenter,N,0,2*Math.PI);else{ft=h.getPointPosition(0,N),ne.moveTo(ft.x,ft.y);for(var wt=1;wt=0;Qe--)Re=h.getDistanceFromCenterForValue(N.ticks.reverse?h.min:h.max),ft=h.getPointPosition(Qe,Re),b.beginPath(),b.moveTo(h.xCenter,h.yCenter),b.lineTo(ft.x,ft.y),b.stroke();b.restore()}},_drawLabels:function(){var h=this,b=h.ctx,k=h.options.ticks;if(k.display){var Qe,Re,ne=h.getIndexAngle(0),he=Pe.options._parseFont(k),Me=Gn(k.fontColor,qr.global.defaultFontColor);b.save(),b.font=he.string,b.translate(h.xCenter,h.yCenter),b.rotate(ne),b.textAlign="center",b.textBaseline="middle",Pe.each(h.ticks,function(ft,wt){0===wt&&!k.reverse||(Qe=h.getDistanceFromCenterForValue(h.ticksAsNumbers[wt]),k.showLabelBackdrop&&(Re=b.measureText(ft).width,b.fillStyle=k.backdropColor,b.fillRect(-Re/2-k.backdropPaddingX,-Qe-he.size/2-k.backdropPaddingY,Re+2*k.backdropPaddingX,he.size+2*k.backdropPaddingY)),b.fillStyle=Me,b.fillText(ft,0,-Qe))}),b.restore()}},_drawTitle:Pe.noop});fu._defaults=Mi;var $c=Pe._deprecated,pu=Pe.options.resolve,vc=Pe.valueOrDefault,La=Number.MIN_SAFE_INTEGER||-9007199254740991,al=Number.MAX_SAFE_INTEGER||9007199254740991,rl={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}},xa=Object.keys(rl);function Tu(h,b){return h-b}function Pu(h){return Pe.valueOrDefault(h.time.min,h.ticks.min)}function za(h){return Pe.valueOrDefault(h.time.max,h.ticks.max)}function Cu(h,b,N,k){var ne=function Os(h,b,N){for(var he,Me,Qe,k=0,ne=h.length-1;k>=0&&k<=ne;){if(Qe=h[he=k+ne>>1],!(Me=h[he-1]||null))return{lo:null,hi:Qe};if(Qe[b]N))return{lo:Me,hi:Qe};ne=he-1}}return{lo:Qe,hi:null}}(h,b,N),he=ne.lo?ne.hi?ne.lo:h[h.length-2]:h[0],Me=ne.lo?ne.hi?ne.hi:h[h.length-1]:h[1],Qe=Me[b]-he[b];return he[k]+(Me[k]-he[k])*(Qe?(N-he[b])/Qe:0)}function ld(h,b){var N=h._adapter,k=h.options.time,ne=k.parser,he=ne||k.format,Me=b;return"function"==typeof ne&&(Me=ne(Me)),Pe.isFinite(Me)||(Me="string"==typeof he?N.parse(Me,he):N.parse(Me)),null!==Me?+Me:(!ne&&"function"==typeof he&&(Me=he(b),Pe.isFinite(Me)||(Me=N.parse(Me))),Me)}function Hc(h,b){if(Pe.isNullOrUndef(b))return null;var N=h.options.time,k=ld(h,h.getRightValue(b));return null===k||N.round&&(k=+h._adapter.startOf(k,N.round)),k}function Vu(h,b,N,k){var he,Me,ne=xa.length;for(he=xa.indexOf(h);he=0&&(b[Re].major=!0);return b}(h,k,ne,N):k}var Tp=je.extend({initialize:function(){this.mergeTicksOptions(),je.prototype.initialize.call(this)},update:function(){var h=this,b=h.options,N=b.time||(b.time={}),k=h._adapter=new Go._date(b.adapters.date);return $c("time scale",N.format,"time.format","time.parser"),$c("time scale",N.min,"time.min","ticks.min"),$c("time scale",N.max,"time.max","ticks.max"),Pe.mergeIf(N.displayFormats,k.formats()),je.prototype.update.apply(h,arguments)},getRightValue:function(h){return h&&void 0!==h.t&&(h=h.t),je.prototype.getRightValue.call(this,h)},determineDataLimits:function(){var wt,It,Cn,er,sr,Dr,oi,h=this,b=h.chart,N=h._adapter,k=h.options,ne=k.time.unit||"day",he=al,Me=La,Qe=[],Re=[],ft=[],uo=h._getLabels();for(wt=0,Cn=uo.length;wt1?function En(h){var k,ne,he,b={},N=[];for(k=0,ne=h.length;k1e5*Re)throw b+" and "+N+" are too far apart with stepSize of "+Re+" "+Qe;for(Cn=wt;Cn=b&&er<=N&&Qe.push(er);return h.min=b,h.max=N,h._unit=he.unit||(ne.autoSkip?Vu(he.minUnit,h.min,h.max,Re):function ud(h,b,N,k,ne){var he,Me;for(he=xa.length-1;he>=xa.indexOf(N);he--)if(rl[Me=xa[he]].common&&h._adapter.diff(ne,k,Me)>=b-1)return Me;return xa[N?xa.indexOf(N):0]}(h,Qe.length,he.minUnit,h.min,h.max)),h._majorUnit=ne.major.enabled&&"year"!==h._unit?function md(h){for(var b=xa.indexOf(h)+1,N=xa.length;bb&&ft=0&&h0?Qe:1}});Tp._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 Hd={category:tn,linear:rn,logarithmic:zt,radialLinear:fu,time:Tp},Bf={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"};Go._date.override("function"==typeof r?{_id:"moment",formats:function(){return Bf},parse:function(h,b){return"string"==typeof h&&"string"==typeof b?h=r(h,b):h instanceof r||(h=r(h)),h.isValid()?h.valueOf():null},format:function(h,b){return r(h).format(b)},add:function(h,b,N){return r(h).add(b,N).valueOf()},diff:function(h,b,N){return r(h).diff(r(b),N)},startOf:function(h,b,N){return h=r(h),"isoWeek"===b?h.isoWeekday(N).valueOf():h.startOf(b).valueOf()},endOf:function(h,b){return r(h).endOf(b).valueOf()},_create:function(h){return r(h)}}:{}),qr._set("global",{plugins:{filler:{propagate:!0}}});var gd={dataset:function(h){var b=h.fill,N=h.chart,k=N.getDatasetMeta(b),he=k&&N.isDatasetVisible(b)&&k.dataset._children||[],Me=he.length||0;return Me?function(Qe,Re){return Re=N)&&he;switch(ne){case"bottom":return"start";case"top":return"end";case"zero":return"origin";case"origin":case"start":case"end":return ne;default:return!1}}function _u(h){return(h.el._scale||{}).getPointPositionForValue?function xf(h){var Me,Qe,Re,ft,wt,b=h.el._scale,N=b.options,k=b.chart.data.labels.length,ne=h.fill,he=[];if(!k)return null;for(Qe=N.ticks.reverse?b.min:b.max,Re=b.getPointPositionForValue(0,Me=N.ticks.reverse?b.max:b.min),ft=0;ft0;--he)h.arc(Me,Qe,Re,N[he].angle,N[he-1].angle,!0);return}for(h.lineTo(N[ne-1].x,N[ne-1].y),he=ne-1;he>0;--he)Pe.canvas.lineTo(h,N[he],N[he-1],!0)}}function Ne(h,b,N,k,ne,he){var Cn,er,sr,Dr,oi,uo,As,as,Me=b.length,Qe=k.spanGaps,Re=[],ft=[],wt=0,It=0;for(h.beginPath(),Cn=0,er=Me;Cn=0;--ne)(k=b[ne].$filler)&&k.visible&&(Qe=(he=k.el)._children||[],ft=(Me=he._view).backgroundColor||qr.global.defaultColor,(Re=k.mapper)&&ft&&Qe.length&&(Pe.canvas.clipArea(N,h.chartArea),Ne(N,Qe,Re,Me,ft,he._loop),Pe.canvas.unclipArea(N)))}},Ye=Pe.rtl.getRtlAdapter,Mt=Pe.noop,un=Pe.valueOrDefault;function Mn(h,b){return h.usePointStyle&&h.boxWidth>b?b:h.boxWidth}qr._set("global",{legend:{display:!0,position:"top",align:"center",fullWidth:!0,reverse:!1,weight:1e3,onClick:function(h,b){var N=b.datasetIndex,k=this.chart,ne=k.getDatasetMeta(N);ne.hidden=null===ne.hidden?!k.data.datasets[N].hidden:null,k.update()},onHover:null,onLeave:null,labels:{boxWidth:40,padding:10,generateLabels:function(h){var b=h.data.datasets,N=h.options.legend||{},k=N.labels&&N.labels.usePointStyle;return h._getSortedDatasetMetas().map(function(ne){var he=ne.controller.getStyle(k?0:void 0);return{text:b[ne.index].label,fillStyle:he.backgroundColor,hidden:!h.isDatasetVisible(ne.index),lineCap:he.borderCapStyle,lineDash:he.borderDash,lineDashOffset:he.borderDashOffset,lineJoin:he.borderJoinStyle,lineWidth:he.borderWidth,strokeStyle:he.borderColor,pointStyle:he.pointStyle,rotation:he.rotation,datasetIndex:ne.index}},this)}}},legendCallback:function(h){var k,ne,he,b=document.createElement("ul"),N=h.data.datasets;for(b.setAttribute("class",h.id+"-legend"),k=0,ne=N.length;kRe.width)&&(It+=Me+N.padding,wt[wt.length-(as>0?0:1)]=0),Qe[as]={left:0,top:0,width:Na,height:Me},wt[wt.length-1]+=Na+N.padding}),Re.height+=It}else{var Cn=N.padding,er=h.columnWidths=[],sr=h.columnHeights=[],Dr=N.padding,oi=0,uo=0;Pe.each(h.legendItems,function(As,as){var Na=Mn(N,Me)+Me/2+ne.measureText(As.text).width;as>0&&uo+Me+2*Cn>Re.height&&(Dr+=oi+N.padding,er.push(oi),sr.push(uo),oi=0,uo=0),oi=Math.max(oi,Na),uo+=Me+Cn,Qe[as]={left:0,top:0,width:Na,height:Me}}),Dr+=oi,er.push(oi),sr.push(uo),Re.width+=Dr}h.width=Re.width,h.height=Re.height}else h.width=Re.width=h.height=Re.height=0},afterFit:Mt,isHorizontal:function(){return"top"===this.options.position||"bottom"===this.options.position},draw:function(){var h=this,b=h.options,N=b.labels,k=qr.global,ne=k.defaultColor,he=k.elements.line,Me=h.height,Qe=h.columnHeights,Re=h.width,ft=h.lineWidths;if(b.display){var Dr,wt=Ye(b.rtl,h.left,h.minSize.width),It=h.ctx,Cn=un(N.fontColor,k.defaultFontColor),er=Pe.options._parseFont(N),sr=er.size;It.textAlign=wt.textAlign("left"),It.textBaseline="middle",It.lineWidth=.5,It.strokeStyle=Cn,It.fillStyle=Cn,It.font=er.string;var oi=Mn(N,sr),uo=h.legendHitBoxes,ma=function(il,dl){switch(b.align){case"start":return N.padding;case"end":return il-dl;default:return(il-dl+N.padding)/2}},Na=h.isHorizontal();Dr=Na?{x:h.left+ma(Re,ft[0]),y:h.top+N.padding,line:0}:{x:h.left+N.padding,y:h.top+ma(Me,Qe[0]),line:0},Pe.rtl.overrideTextDirection(h.ctx,b.textDirection);var Pl=sr+N.padding;Pe.each(h.legendItems,function(il,dl){var Nl=It.measureText(il.text).width,Qu=oi+sr/2+Nl,ac=Dr.x,wa=Dr.y;wt.setWidth(h.minSize.width),Na?dl>0&&ac+Qu+N.padding>h.left+h.minSize.width&&(wa=Dr.y+=Pl,Dr.line++,ac=Dr.x=h.left+ma(Re,ft[Dr.line])):dl>0&&wa+Pl>h.top+h.minSize.height&&(ac=Dr.x=ac+h.columnWidths[Dr.line]+N.padding,Dr.line++,wa=Dr.y=h.top+ma(Me,Qe[Dr.line]));var nc=wt.x(ac);(function(il,dl,Nl){if(!(isNaN(oi)||oi<=0)){It.save();var Qu=un(Nl.lineWidth,he.borderWidth);if(It.fillStyle=un(Nl.fillStyle,ne),It.lineCap=un(Nl.lineCap,he.borderCapStyle),It.lineDashOffset=un(Nl.lineDashOffset,he.borderDashOffset),It.lineJoin=un(Nl.lineJoin,he.borderJoinStyle),It.lineWidth=Qu,It.strokeStyle=un(Nl.strokeStyle,ne),It.setLineDash&&It.setLineDash(un(Nl.lineDash,he.borderDash)),N&&N.usePointStyle){var ac=oi*Math.SQRT2/2,wa=wt.xPlus(il,oi/2);Pe.canvas.drawPoint(It,Nl.pointStyle,ac,wa,dl+sr/2,Nl.rotation)}else It.fillRect(wt.leftForLtr(il,oi),dl,oi,sr),0!==Qu&&It.strokeRect(wt.leftForLtr(il,oi),dl,oi,sr);It.restore()}})(nc,wa,il),uo[dl].left=wt.leftForLtr(nc,uo[dl].width),uo[dl].top=wa,function(il,dl,Nl,Qu){var ac=sr/2,wa=wt.xPlus(il,oi+ac),nc=dl+ac;It.fillText(Nl.text,wa,nc),Nl.hidden&&(It.beginPath(),It.lineWidth=2,It.moveTo(wa,nc),It.lineTo(wt.xPlus(wa,Qu),nc),It.stroke())}(nc,wa,il,Nl),Na?Dr.x+=Qu+N.padding:Dr.y+=Pl}),Pe.rtl.restoreTextDirection(h.ctx,b.textDirection)}},_getLegendItemAt:function(h,b){var k,ne,he,N=this;if(h>=N.left&&h<=N.right&&b>=N.top&&b<=N.bottom)for(he=N.legendHitBoxes,k=0;k=(ne=he[k]).left&&h<=ne.left+ne.width&&b>=ne.top&&b<=ne.top+ne.height)return N.legendItems[k];return null},handleEvent:function(h){var ne,b=this,N=b.options,k="mouseup"===h.type?"click":h.type;if("mousemove"===k){if(!N.onHover&&!N.onLeave)return}else{if("click"!==k)return;if(!N.onClick)return}ne=b._getLegendItemAt(h.x,h.y),"click"===k?ne&&N.onClick&&N.onClick.call(b,h.native,ne):(N.onLeave&&ne!==b._hoveredItem&&(b._hoveredItem&&N.onLeave.call(b,h.native,b._hoveredItem),b._hoveredItem=ne),N.onHover&&ne&&N.onHover.call(b,h.native,ne))}});function zi(h,b){var N=new ni({ctx:h.ctx,options:b,chart:h});Xl.configure(h,N,b),Xl.addBox(h,N),h.legend=N}var Wo={id:"legend",_element:ni,beforeInit:function(h){var b=h.options.legend;b&&zi(h,b)},beforeUpdate:function(h){var b=h.options.legend,N=h.legend;b?(Pe.mergeIf(b,qr.global.legend),N?(Xl.configure(h,N,b),N.options=b):zi(h,b)):N&&(Xl.removeBox(h,N),delete h.legend)},afterEvent:function(h,b){var N=h.legend;N&&N.handleEvent(b)}},Qo=Pe.noop;qr._set("global",{title:{display:!1,fontStyle:"bold",fullWidth:!0,padding:10,position:"top",text:"",weight:2e3}});var ya=nr.extend({initialize:function(h){Pe.extend(this,h),this.legendHitBoxes=[]},beforeUpdate:Qo,update:function(h,b,N){var k=this;return k.beforeUpdate(),k.maxWidth=h,k.maxHeight=b,k.margins=N,k.beforeSetDimensions(),k.setDimensions(),k.afterSetDimensions(),k.beforeBuildLabels(),k.buildLabels(),k.afterBuildLabels(),k.beforeFit(),k.fit(),k.afterFit(),k.afterUpdate(),k.minSize},afterUpdate:Qo,beforeSetDimensions:Qo,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:Qo,beforeBuildLabels:Qo,buildLabels:Qo,afterBuildLabels:Qo,beforeFit:Qo,fit:function(){var he,h=this,b=h.options,N=h.minSize={},k=h.isHorizontal();b.display?(he=(Pe.isArray(b.text)?b.text.length:1)*Pe.options._parseFont(b).lineHeight+2*b.padding,h.width=N.width=k?h.maxWidth:he,h.height=N.height=k?he:h.maxHeight):h.width=N.width=h.height=N.height=0},afterFit:Qo,isHorizontal:function(){var h=this.options.position;return"top"===h||"bottom"===h},draw:function(){var h=this,b=h.ctx,N=h.options;if(N.display){var It,Cn,er,k=Pe.options._parseFont(N),ne=k.lineHeight,he=ne/2+N.padding,Me=0,Qe=h.top,Re=h.left,ft=h.bottom,wt=h.right;b.fillStyle=Pe.valueOrDefault(N.fontColor,qr.global.defaultFontColor),b.font=k.string,h.isHorizontal()?(Cn=Re+(wt-Re)/2,er=Qe+he,It=wt-Re):(Cn="left"===N.position?Re+he:wt-he,er=Qe+(ft-Qe)/2,It=ft-Qe,Me=Math.PI*("left"===N.position?-.5:.5)),b.save(),b.translate(Cn,er),b.rotate(Me),b.textAlign="center",b.textBaseline="middle";var sr=N.text;if(Pe.isArray(sr))for(var Dr=0,oi=0;oi=0;Me--){var Qe=k[Me];if(ne(Qe))return Qe}},Pe.isNumber=function(k){return!isNaN(parseFloat(k))&&isFinite(k)},Pe.almostEquals=function(k,ne,he){return Math.abs(k-ne)=k},Pe.max=function(k){return k.reduce(function(ne,he){return isNaN(he)?ne:Math.max(ne,he)},Number.NEGATIVE_INFINITY)},Pe.min=function(k){return k.reduce(function(ne,he){return isNaN(he)?ne:Math.min(ne,he)},Number.POSITIVE_INFINITY)},Pe.sign=Math.sign?function(k){return Math.sign(k)}:function(k){return 0==(k=+k)||isNaN(k)?k:k>0?1:-1},Pe.toRadians=function(k){return k*(Math.PI/180)},Pe.toDegrees=function(k){return k*(180/Math.PI)},Pe._decimalPlaces=function(k){if(Pe.isFinite(k)){for(var ne=1,he=0;Math.round(k*ne)/ne!==k;)ne*=10,he++;return he}},Pe.getAngleFromPoint=function(k,ne){var he=ne.x-k.x,Me=ne.y-k.y,Qe=Math.sqrt(he*he+Me*Me),Re=Math.atan2(Me,he);return Re<-.5*Math.PI&&(Re+=2*Math.PI),{angle:Re,distance:Qe}},Pe.distanceBetweenPoints=function(k,ne){return Math.sqrt(Math.pow(ne.x-k.x,2)+Math.pow(ne.y-k.y,2))},Pe.aliasPixel=function(k){return k%2==0?0:.5},Pe._alignPixel=function(k,ne,he){var Me=k.currentDevicePixelRatio,Qe=he/2;return Math.round((ne-Qe)*Me)/Me+Qe},Pe.splineCurve=function(k,ne,he,Me){var Qe=k.skip?ne:k,Re=ne,ft=he.skip?ne:he,wt=Math.sqrt(Math.pow(Re.x-Qe.x,2)+Math.pow(Re.y-Qe.y,2)),It=Math.sqrt(Math.pow(ft.x-Re.x,2)+Math.pow(ft.y-Re.y,2)),Cn=wt/(wt+It),er=It/(wt+It),sr=Me*(Cn=isNaN(Cn)?0:Cn),Dr=Me*(er=isNaN(er)?0:er);return{previous:{x:Re.x-sr*(ft.x-Qe.x),y:Re.y-sr*(ft.y-Qe.y)},next:{x:Re.x+Dr*(ft.x-Qe.x),y:Re.y+Dr*(ft.y-Qe.y)}}},Pe.EPSILON=Number.EPSILON||1e-14,Pe.splineCurveMonotone=function(k){var Me,Qe,Re,ft,It,Cn,er,sr,Dr,ne=(k||[]).map(function(oi){return{model:oi._model,deltaK:0,mK:0}}),he=ne.length;for(Me=0;Me0?ne[Me-1]:null,(ft=Me0?ne[Me-1]:null)&&!Qe.model.skip&&(Re.model.controlPointPreviousX=Re.model.x-(Dr=(Re.model.x-Qe.model.x)/3),Re.model.controlPointPreviousY=Re.model.y-Dr*Re.mK),ft&&!ft.model.skip&&(Re.model.controlPointNextX=Re.model.x+(Dr=(ft.model.x-Re.model.x)/3),Re.model.controlPointNextY=Re.model.y+Dr*Re.mK))},Pe.nextItem=function(k,ne,he){return he?ne>=k.length-1?k[0]:k[ne+1]:ne>=k.length-1?k[k.length-1]:k[ne+1]},Pe.previousItem=function(k,ne,he){return he?ne<=0?k[k.length-1]:k[ne-1]:ne<=0?k[0]:k[ne-1]},Pe.niceNum=function(k,ne){var he=Math.floor(Pe.log10(k)),Me=k/Math.pow(10,he);return(ne?Me<1.5?1:Me<3?2:Me<7?5:10:Me<=1?1:Me<=2?2:Me<=5?5:10)*Math.pow(10,he)},Pe.requestAnimFrame=typeof window>"u"?function(k){k()}:window.requestAnimationFrame||window.webkitRequestAnimationFrame||window.mozRequestAnimationFrame||window.oRequestAnimationFrame||window.msRequestAnimationFrame||function(k){return window.setTimeout(k,1e3/60)},Pe.getRelativePosition=function(k,ne){var he,Me,Qe=k.originalEvent||k,Re=k.target||k.srcElement,ft=Re.getBoundingClientRect(),wt=Qe.touches;wt&&wt.length>0?(he=wt[0].clientX,Me=wt[0].clientY):(he=Qe.clientX,Me=Qe.clientY);var It=parseFloat(Pe.getStyle(Re,"padding-left")),Cn=parseFloat(Pe.getStyle(Re,"padding-top")),er=parseFloat(Pe.getStyle(Re,"padding-right")),sr=parseFloat(Pe.getStyle(Re,"padding-bottom")),oi=ft.bottom-ft.top-Cn-sr;return{x:he=Math.round((he-ft.left-It)/(ft.right-ft.left-It-er)*Re.width/ne.currentDevicePixelRatio),y:Me=Math.round((Me-ft.top-Cn)/oi*Re.height/ne.currentDevicePixelRatio)}},Pe.getConstraintWidth=function(k){return N(k,"max-width","clientWidth")},Pe.getConstraintHeight=function(k){return N(k,"max-height","clientHeight")},Pe._calculatePadding=function(k,ne,he){return(ne=Pe.getStyle(k,ne)).indexOf("%")>-1?he*parseInt(ne,10)/100:parseInt(ne,10)},Pe._getParentNode=function(k){var ne=k.parentNode;return ne&&"[object ShadowRoot]"===ne.toString()&&(ne=ne.host),ne},Pe.getMaximumWidth=function(k){var ne=Pe._getParentNode(k);if(!ne)return k.clientWidth;var he=ne.clientWidth,Re=he-Pe._calculatePadding(ne,"padding-left",he)-Pe._calculatePadding(ne,"padding-right",he),ft=Pe.getConstraintWidth(k);return isNaN(ft)?Re:Math.min(Re,ft)},Pe.getMaximumHeight=function(k){var ne=Pe._getParentNode(k);if(!ne)return k.clientHeight;var he=ne.clientHeight,Re=he-Pe._calculatePadding(ne,"padding-top",he)-Pe._calculatePadding(ne,"padding-bottom",he),ft=Pe.getConstraintHeight(k);return isNaN(ft)?Re:Math.min(Re,ft)},Pe.getStyle=function(k,ne){return k.currentStyle?k.currentStyle[ne]:document.defaultView.getComputedStyle(k,null).getPropertyValue(ne)},Pe.retinaScale=function(k,ne){var he=k.currentDevicePixelRatio=ne||typeof window<"u"&&window.devicePixelRatio||1;if(1!==he){var Me=k.canvas,Qe=k.height,Re=k.width;Me.height=Qe*he,Me.width=Re*he,k.ctx.scale(he,he),!Me.style.height&&!Me.style.width&&(Me.style.height=Qe+"px",Me.style.width=Re+"px")}},Pe.fontString=function(k,ne,he){return ne+" "+k+"px "+he},Pe.longestText=function(k,ne,he,Me){var Qe=(Me=Me||{}).data=Me.data||{},Re=Me.garbageCollect=Me.garbageCollect||[];Me.font!==ne&&(Qe=Me.data={},Re=Me.garbageCollect=[],Me.font=ne),k.font=ne;var It,Cn,er,sr,Dr,ft=0,wt=he.length;for(It=0;Ithe.length){for(It=0;ItMe&&(Me=Re),Me},Pe.numberOfLabelLines=function(k){var ne=1;return Pe.each(k,function(he){Pe.isArray(he)&&he.length>ne&&(ne=he.length)}),ne},Pe.color=Tt?function(k){return k instanceof CanvasGradient&&(k=qr.global.defaultColor),Tt(k)}:function(k){return console.error("Color.js not found!"),k},Pe.getHoverColor=function(k){return k instanceof CanvasPattern||k instanceof CanvasGradient?k:Pe.color(k).saturate(.5).darken(.1).rgbString()}}(),kn._adapters=Go,kn.Animation=dn,kn.animationService=Ge,kn.controllers=Bi,kn.DatasetController=Ai,kn.defaults=qr,kn.Element=nr,kn.elements=ss,kn.Interaction=vl,kn.layouts=Xl,kn.platform=Je,kn.plugins=en,kn.Scale=je,kn.scaleService=fi,kn.Ticks=Io,kn.Tooltip=Lc,kn.helpers.each(Hd,function(h,b){kn.scaleService.registerScaleType(b,h,h._defaults)}),pc)pc.hasOwnProperty(od)&&kn.plugins.register(pc[od]);kn.platform.initialize();var Ed=kn;return typeof window<"u"&&(window.Chart=kn),kn.Chart=kn,kn.Legend=pc.legend._element,kn.Title=pc.title._element,kn.pluginService=kn.plugins,kn.PluginBase=kn.Element.extend({}),kn.canvasHelpers=kn.helpers.canvas,kn.layoutService=kn.layouts,kn.LinearScaleBase=Fs,kn.helpers.each(["Bar","Bubble","Doughnut","Line","PolarArea","Radar","Scatter"],function(h){kn[h]=function(b,N){return new kn(b,kn.helpers.merge(N||{},{type:h.charAt(0).toLowerCase()+h.slice(1)}))}}),Ed}(function(){try{return s(16738)}catch{}}())},82885:(E,C)=>{var r;!function(){"use strict";var a={}.hasOwnProperty;function u(){for(var e=[],f=0;f{E.exports=function(s,r){for(var a=[],c=0;c{"use strict";var r=s(35311),a={"text/plain":"Text","text/html":"Url",default:"Text"};E.exports=function e(f,m){var T,M,w,D,U,W,$=!1;m||(m={}),T=m.debug||!1;try{if(w=r(),D=document.createRange(),U=document.getSelection(),(W=document.createElement("span")).textContent=f,W.ariaHidden="true",W.style.all="unset",W.style.position="fixed",W.style.top=0,W.style.clip="rect(0, 0, 0, 0)",W.style.whiteSpace="pre",W.style.webkitUserSelect="text",W.style.MozUserSelect="text",W.style.msUserSelect="text",W.style.userSelect="text",W.addEventListener("copy",function(F){F.stopPropagation(),m.format&&(F.preventDefault(),typeof F.clipboardData>"u"?(T&&console.warn("unable to use e.clipboardData"),T&&console.warn("trying IE specific stuff"),window.clipboardData.clearData(),window.clipboardData.setData(a[m.format]||a.default,f)):(F.clipboardData.clearData(),F.clipboardData.setData(m.format,f))),m.onCopy&&(F.preventDefault(),m.onCopy(F.clipboardData))}),document.body.appendChild(W),D.selectNodeContents(W),U.addRange(D),!document.execCommand("copy"))throw new Error("copy command was unsuccessful");$=!0}catch(F){T&&console.error("unable to copy using execCommand: ",F),T&&console.warn("trying IE specific stuff");try{window.clipboardData.setData(m.format||"text",f),m.onCopy&&m.onCopy(window.clipboardData),$=!0}catch(X){T&&console.error("unable to copy using clipboardData: ",X),T&&console.error("falling back to prompt"),M=function u(f){var m=(/mac os x/i.test(navigator.userAgent)?"\u2318":"Ctrl")+"+C";return f.replace(/#{\s*key\s*}/g,m)}("message"in m?m.message:"Copy to clipboard: #{key}, Enter"),window.prompt(M,f)}}finally{U&&("function"==typeof U.removeRange?U.removeRange(D):U.removeAllRanges()),W&&document.body.removeChild(W),w()}return $}},43987:(E,C,s)=>{"use strict";var r=s(75242);E.exports=r},99556:(E,C,s)=>{"use strict";var r=s(10323);E.exports=r},39287:(E,C,s)=>{"use strict";var r=s(8748);E.exports=r},25272:(E,C,s)=>{"use strict";var r=s(71873);E.exports=r},54450:(E,C,s)=>{"use strict";var r=s(19095);E.exports=r},39557:(E,C,s)=>{"use strict";var r=s(52049);E.exports=r},61611:(E,C,s)=>{"use strict";var r=s(87054);E.exports=r},4412:(E,C,s)=>{"use strict";var r=s(30252);E.exports=r},22549:(E,C,s)=>{"use strict";var r=s(45284);E.exports=r},47646:(E,C,s)=>{"use strict";var r=s(70157);E.exports=r},78663:(E,C,s)=>{"use strict";var r=s(640);s(41554),E.exports=r},48498:(E,C,s)=>{"use strict";var r=s(50320);E.exports=r},4922:(E,C,s)=>{"use strict";var r=s(93006);E.exports=r},95190:(E,C,s)=>{"use strict";var r=s(36226);E.exports=r},78525:(E,C,s)=>{"use strict";var r=s(21968);E.exports=r},21064:(E,C,s)=>{"use strict";var r=s(87259);E.exports=r},65641:(E,C,s)=>{"use strict";var r=s(62021);E.exports=r},21693:(E,C,s)=>{"use strict";var r=s(57682);E.exports=r},88907:(E,C,s)=>{"use strict";var r=s(94222);E.exports=r},41432:(E,C,s)=>{"use strict";var r=s(1162);E.exports=r},7398:(E,C,s)=>{"use strict";var r=s(82805);E.exports=r},67221:(E,C,s)=>{"use strict";var r=s(26498);s(68333),E.exports=r},67447:(E,C,s)=>{"use strict";var r=s(44850);E.exports=r},58811:(E,C,s)=>{"use strict";var r=s(9634);E.exports=r},19573:(E,C,s)=>{"use strict";var r=s(96551);s(43548),s(55461),s(5737),s(71985),E.exports=r},10226:(E,C,s)=>{"use strict";var r=s(98908);E.exports=r},56378:(E,C,s)=>{"use strict";var r=s(55434);E.exports=r},74771:(E,C,s)=>{"use strict";s(3934),s(261);var r=s(13544);E.exports=r.Array.from},8412:(E,C,s)=>{"use strict";s(2862);var r=s(13544);E.exports=r.Array.isArray},77377:(E,C,s)=>{"use strict";s(1625);var r=s(97911);E.exports=r("Array").concat},399:(E,C,s)=>{"use strict";s(1285),s(17221);var r=s(97911);E.exports=r("Array").entries},66933:(E,C,s)=>{"use strict";s(70466);var r=s(97911);E.exports=r("Array").every},9504:(E,C,s)=>{"use strict";s(24990);var r=s(97911);E.exports=r("Array").fill},82168:(E,C,s)=>{"use strict";s(56534);var r=s(97911);E.exports=r("Array").filter},65618:(E,C,s)=>{"use strict";s(12773);var r=s(97911);E.exports=r("Array").findIndex},9186:(E,C,s)=>{"use strict";s(60326);var r=s(97911);E.exports=r("Array").find},98812:(E,C,s)=>{"use strict";s(98792);var r=s(97911);E.exports=r("Array").forEach},58479:(E,C,s)=>{"use strict";s(77059);var r=s(97911);E.exports=r("Array").includes},43207:(E,C,s)=>{"use strict";s(2795);var r=s(97911);E.exports=r("Array").indexOf},33195:(E,C,s)=>{"use strict";s(1285),s(17221);var r=s(97911);E.exports=r("Array").keys},63033:(E,C,s)=>{"use strict";s(74926);var r=s(97911);E.exports=r("Array").lastIndexOf},5736:(E,C,s)=>{"use strict";s(88119);var r=s(97911);E.exports=r("Array").map},7909:(E,C,s)=>{"use strict";s(93870);var r=s(97911);E.exports=r("Array").push},7198:(E,C,s)=>{"use strict";s(46250);var r=s(97911);E.exports=r("Array").reduce},84302:(E,C,s)=>{"use strict";s(32836);var r=s(97911);E.exports=r("Array").reverse},86693:(E,C,s)=>{"use strict";s(72999);var r=s(97911);E.exports=r("Array").slice},24273:(E,C,s)=>{"use strict";s(50733);var r=s(97911);E.exports=r("Array").some},45974:(E,C,s)=>{"use strict";s(93639);var r=s(97911);E.exports=r("Array").sort},68012:(E,C,s)=>{"use strict";s(63117);var r=s(97911);E.exports=r("Array").splice},46332:(E,C,s)=>{"use strict";s(1285),s(17221);var r=s(97911);E.exports=r("Array").values},42618:(E,C,s)=>{"use strict";s(34699);var r=s(13544);E.exports=r.Date.now},97724:(E,C,s)=>{"use strict";s(33379);var r=s(97911);E.exports=r("Function").bind},63791:(E,C,s)=>{"use strict";s(1285),s(3934);var r=s(34014);E.exports=r},69029:(E,C,s)=>{"use strict";var r=s(23336),a=s(97724),c=Function.prototype;E.exports=function(u){var e=u.bind;return u===c||r(c,u)&&e===c.bind?a:e}},28924:(E,C,s)=>{"use strict";var r=s(23336),a=s(77377),c=Array.prototype;E.exports=function(u){var e=u.concat;return u===c||r(c,u)&&e===c.concat?a:e}},98709:(E,C,s)=>{"use strict";var r=s(23336),a=s(66933),c=Array.prototype;E.exports=function(u){var e=u.every;return u===c||r(c,u)&&e===c.every?a:e}},65991:(E,C,s)=>{"use strict";var r=s(23336),a=s(9504),c=Array.prototype;E.exports=function(u){var e=u.fill;return u===c||r(c,u)&&e===c.fill?a:e}},64158:(E,C,s)=>{"use strict";var r=s(23336),a=s(82168),c=Array.prototype;E.exports=function(u){var e=u.filter;return u===c||r(c,u)&&e===c.filter?a:e}},91799:(E,C,s)=>{"use strict";var r=s(23336),a=s(65618),c=Array.prototype;E.exports=function(u){var e=u.findIndex;return u===c||r(c,u)&&e===c.findIndex?a:e}},26155:(E,C,s)=>{"use strict";var r=s(23336),a=s(9186),c=Array.prototype;E.exports=function(u){var e=u.find;return u===c||r(c,u)&&e===c.find?a:e}},33758:(E,C,s)=>{"use strict";var r=s(23336),a=s(58479),c=s(85136),u=Array.prototype,e=String.prototype;E.exports=function(f){var m=f.includes;return f===u||r(u,f)&&m===u.includes?a:"string"==typeof f||f===e||r(e,f)&&m===e.includes?c:m}},7592:(E,C,s)=>{"use strict";var r=s(23336),a=s(43207),c=Array.prototype;E.exports=function(u){var e=u.indexOf;return u===c||r(c,u)&&e===c.indexOf?a:e}},17480:(E,C,s)=>{"use strict";var r=s(23336),a=s(63033),c=Array.prototype;E.exports=function(u){var e=u.lastIndexOf;return u===c||r(c,u)&&e===c.lastIndexOf?a:e}},20681:(E,C,s)=>{"use strict";var r=s(23336),a=s(5736),c=Array.prototype;E.exports=function(u){var e=u.map;return u===c||r(c,u)&&e===c.map?a:e}},801:(E,C,s)=>{"use strict";var r=s(23336),a=s(7909),c=Array.prototype;E.exports=function(u){var e=u.push;return u===c||r(c,u)&&e===c.push?a:e}},90949:(E,C,s)=>{"use strict";var r=s(23336),a=s(7198),c=Array.prototype;E.exports=function(u){var e=u.reduce;return u===c||r(c,u)&&e===c.reduce?a:e}},99316:(E,C,s)=>{"use strict";var r=s(23336),a=s(96302),c=String.prototype;E.exports=function(u){var e=u.repeat;return"string"==typeof u||u===c||r(c,u)&&e===c.repeat?a:e}},62212:(E,C,s)=>{"use strict";var r=s(23336),a=s(84302),c=Array.prototype;E.exports=function(u){var e=u.reverse;return u===c||r(c,u)&&e===c.reverse?a:e}},49073:(E,C,s)=>{"use strict";var r=s(23336),a=s(86693),c=Array.prototype;E.exports=function(u){var e=u.slice;return u===c||r(c,u)&&e===c.slice?a:e}},24146:(E,C,s)=>{"use strict";var r=s(23336),a=s(24273),c=Array.prototype;E.exports=function(u){var e=u.some;return u===c||r(c,u)&&e===c.some?a:e}},40104:(E,C,s)=>{"use strict";var r=s(23336),a=s(45974),c=Array.prototype;E.exports=function(u){var e=u.sort;return u===c||r(c,u)&&e===c.sort?a:e}},3555:(E,C,s)=>{"use strict";var r=s(23336),a=s(68012),c=Array.prototype;E.exports=function(u){var e=u.splice;return u===c||r(c,u)&&e===c.splice?a:e}},42475:(E,C,s)=>{"use strict";var r=s(23336),a=s(98720),c=String.prototype;E.exports=function(u){var e=u.startsWith;return"string"==typeof u||u===c||r(c,u)&&e===c.startsWith?a:e}},65786:(E,C,s)=>{"use strict";var r=s(23336),a=s(75998),c=String.prototype;E.exports=function(u){var e=u.trim;return"string"==typeof u||u===c||r(c,u)&&e===c.trim?a:e}},66306:(E,C,s)=>{"use strict";s(75071);var r=s(13544),a=s(2543);r.JSON||(r.JSON={stringify:JSON.stringify}),E.exports=function(u,e,f){return a(r.JSON.stringify,null,arguments)}},31845:(E,C,s)=>{"use strict";s(1285),s(85140),s(17221),s(3934);var r=s(13544);E.exports=r.Map},44168:(E,C,s)=>{"use strict";s(67234);var r=s(13544);E.exports=r.Object.assign},25852:(E,C,s)=>{"use strict";s(86516);var a=s(13544).Object;E.exports=function(u,e){return a.create(u,e)}},24457:(E,C,s)=>{"use strict";s(36255);var a=s(13544).Object,c=E.exports=function(e,f){return a.defineProperties(e,f)};a.defineProperties.sham&&(c.sham=!0)},99671:(E,C,s)=>{"use strict";s(84468);var a=s(13544).Object,c=E.exports=function(e,f,m){return a.defineProperty(e,f,m)};a.defineProperty.sham&&(c.sham=!0)},38007:(E,C,s)=>{"use strict";s(86627);var a=s(13544).Object,c=E.exports=function(e,f){return a.getOwnPropertyDescriptor(e,f)};a.getOwnPropertyDescriptor.sham&&(c.sham=!0)},57432:(E,C,s)=>{"use strict";s(78275);var r=s(13544);E.exports=r.Object.getOwnPropertyDescriptors},36541:(E,C,s)=>{"use strict";s(56728);var r=s(13544);E.exports=r.Object.getOwnPropertySymbols},17303:(E,C,s)=>{"use strict";s(31193);var r=s(13544);E.exports=r.Object.getPrototypeOf},62149:(E,C,s)=>{"use strict";s(56557);var r=s(13544);E.exports=r.Object.keys},86537:(E,C,s)=>{"use strict";s(17971);var r=s(13544);E.exports=r.Object.setPrototypeOf},79553:(E,C,s)=>{"use strict";s(88923);var r=s(13544);E.exports=r.Object.values},80092:(E,C,s)=>{"use strict";s(10901),s(1285),s(17221),s(66793),s(84798),s(98857),s(30185),s(3934);var r=s(13544);E.exports=r.Promise},472:(E,C,s)=>{"use strict";s(19539);var r=s(13544);E.exports=r.Reflect.construct},4678:(E,C,s)=>{"use strict";s(60851);var r=s(13544);E.exports=r.Reflect.get},85136:(E,C,s)=>{"use strict";s(97764);var r=s(97911);E.exports=r("String").includes},96302:(E,C,s)=>{"use strict";s(3588);var r=s(97911);E.exports=r("String").repeat},98720:(E,C,s)=>{"use strict";s(24655);var r=s(97911);E.exports=r("String").startsWith},75998:(E,C,s)=>{"use strict";s(90451);var r=s(97911);E.exports=r("String").trim},61697:(E,C,s)=>{"use strict";s(1625),s(17221),s(56728),s(16426),s(1172),s(99579),s(41258),s(2383),s(44339),s(64776),s(88215),s(65389),s(12733),s(97977),s(59792),s(60242),s(26291),s(32300),s(63603),s(44864);var r=s(13544);E.exports=r.Symbol},42497:(E,C,s)=>{"use strict";s(1285),s(17221),s(3934),s(2383);var r=s(89734);E.exports=r.f("iterator")},50681:(E,C,s)=>{"use strict";s(68154),s(59792);var r=s(89734);E.exports=r.f("toPrimitive")},31236:(E,C,s)=>{"use strict";E.exports=s(58044)},63811:(E,C,s)=>{"use strict";E.exports=s(99692)},44948:(E,C,s)=>{"use strict";E.exports=s(61483)},96471:(E,C,s)=>{"use strict";E.exports=s(46815)},41171:(E,C,s)=>{"use strict";E.exports=s(47194)},62005:(E,C,s)=>{"use strict";E.exports=s(32944)},42346:(E,C,s)=>{"use strict";E.exports=s(26421)},24329:(E,C,s)=>{"use strict";E.exports=s(15123)},2793:(E,C,s)=>{"use strict";E.exports=s(49745)},88819:(E,C,s)=>{"use strict";E.exports=s(65861)},55912:(E,C,s)=>{"use strict";E.exports=s(63816)},73875:(E,C,s)=>{"use strict";var r=s(43987);E.exports=r},91700:(E,C,s)=>{"use strict";var r=s(99556);E.exports=r},70589:(E,C,s)=>{"use strict";var r=s(39287);E.exports=r},71432:(E,C,s)=>{"use strict";var r=s(25272);E.exports=r},73712:(E,C,s)=>{"use strict";var r=s(54450);E.exports=r},58044:(E,C,s)=>{"use strict";var r=s(39557);E.exports=r},55451:(E,C,s)=>{"use strict";var r=s(61611);E.exports=r},99692:(E,C,s)=>{"use strict";var r=s(4412);E.exports=r},61483:(E,C,s)=>{"use strict";var r=s(22549);E.exports=r},46815:(E,C,s)=>{"use strict";var r=s(47646);E.exports=r},28296:(E,C,s)=>{"use strict";var r=s(78663);s(78271),s(60854),s(10509),s(30887),s(54547),s(68996),s(1530),s(60176),s(41688),s(92847),s(17316),s(58786),s(51943),s(12783),s(69773),s(22337),s(40199),s(69046),s(84131),E.exports=r},96973:(E,C,s)=>{"use strict";var r=s(48498);E.exports=r},47194:(E,C,s)=>{"use strict";var r=s(4922);E.exports=r},56805:(E,C,s)=>{"use strict";var r=s(95190);E.exports=r},32944:(E,C,s)=>{"use strict";var r=s(78525);E.exports=r},70729:(E,C,s)=>{"use strict";var r=s(21064);E.exports=r},48299:(E,C,s)=>{"use strict";var r=s(65641);E.exports=r},33969:(E,C,s)=>{"use strict";var r=s(21693);E.exports=r},26421:(E,C,s)=>{"use strict";var r=s(88907);E.exports=r},37785:(E,C,s)=>{"use strict";var r=s(41432);E.exports=r},15123:(E,C,s)=>{"use strict";var r=s(7398);E.exports=r},49745:(E,C,s)=>{"use strict";var r=s(67221);s(67670),s(61127),s(93114),s(45975),E.exports=r},29044:(E,C,s)=>{"use strict";var r=s(67447);E.exports=r},20611:(E,C,s)=>{"use strict";var r=s(58811);E.exports=r},65861:(E,C,s)=>{"use strict";var r=s(19573);s(70337),s(44388),s(87097),s(90212),s(61652),s(90791),s(29559),s(93770),s(47743),E.exports=r},63816:(E,C,s)=>{"use strict";var r=s(10226);E.exports=r},72378:(E,C,s)=>{"use strict";var r=s(56378);E.exports=r},61812:(E,C,s)=>{"use strict";var r=s(52208),a=s(7378),c=TypeError;E.exports=function(u){if(r(u))return u;throw c(a(u)+" is not a function")}},54356:(E,C,s)=>{"use strict";var r=s(81177),a=s(7378),c=TypeError;E.exports=function(u){if(r(u))return u;throw c(a(u)+" is not a constructor")}},64902:(E,C,s)=>{"use strict";var r=s(7378);E.exports=function(a){if("object"==typeof a&&"size"in a&&"has"in a&&"get"in a&&"set"in a&&"delete"in a&&"entries"in a)return a;throw TypeError(r(a)+" is not a map")}},93221:(E,C,s)=>{"use strict";var r=s(52208),a=String,c=TypeError;E.exports=function(u){if("object"==typeof u||r(u))return u;throw c("Can't set "+a(u)+" as a prototype")}},82196:E=>{"use strict";E.exports=function(){}},54849:(E,C,s)=>{"use strict";var r=s(23336),a=TypeError;E.exports=function(c,u){if(r(u,c))return c;throw a("Incorrect invocation")}},64562:(E,C,s)=>{"use strict";var r=s(77293),a=String,c=TypeError;E.exports=function(u){if(r(u))return u;throw c(a(u)+" is not an object")}},76318:(E,C,s)=>{"use strict";var r=s(55756);E.exports=r(function(){if("function"==typeof ArrayBuffer){var a=new ArrayBuffer(8);Object.isExtensible(a)&&Object.defineProperty(a,"a",{value:8})}})},35277:(E,C,s)=>{"use strict";var r=s(70267),a=s(19401),c=s(6381);E.exports=function(e){for(var f=r(this),m=c(f),T=arguments.length,M=a(T>1?arguments[1]:void 0,m),w=T>2?arguments[2]:void 0,D=void 0===w?m:a(w,m);D>M;)f[M++]=e;return f}},8366:(E,C,s)=>{"use strict";var r=s(68607).forEach,c=s(33620)("forEach");E.exports=c?[].forEach:function(e){return r(this,e,arguments.length>1?arguments[1]:void 0)}},51923:(E,C,s)=>{"use strict";var r=s(76781),a=s(25401),c=s(70267),u=s(93463),e=s(39918),f=s(81177),m=s(6381),T=s(46751),M=s(88055),w=s(34014),D=Array;E.exports=function(W){var $=c(W),J=f(this),F=arguments.length,X=F>1?arguments[1]:void 0,de=void 0!==X;de&&(X=r(X,F>2?arguments[2]:void 0));var se,fe,Te,$e,ge,Et,V=w($),ce=0;if(!V||this===D&&e(V))for(se=m($),fe=J?new this(se):D(se);se>ce;ce++)Et=de?X($[ce],ce):$[ce],T(fe,ce,Et);else for(ge=($e=M($,V)).next,fe=J?new this:[];!(Te=a(ge,$e)).done;ce++)Et=de?u($e,X,[Te.value,ce],!0):Te.value,T(fe,ce,Et);return fe.length=ce,fe}},95171:(E,C,s)=>{"use strict";var r=s(81010),a=s(19401),c=s(6381),u=function(e){return function(f,m,T){var U,M=r(f),w=c(M),D=a(T,w);if(e&&m!=m){for(;w>D;)if((U=M[D++])!=U)return!0}else for(;w>D;D++)if((e||D in M)&&M[D]===m)return e||D||0;return!e&&-1}};E.exports={includes:u(!0),indexOf:u(!1)}},68607:(E,C,s)=>{"use strict";var r=s(76781),a=s(23634),c=s(20973),u=s(70267),e=s(6381),f=s(2103),m=a([].push),T=function(M){var w=1===M,D=2===M,U=3===M,W=4===M,$=6===M,J=7===M,F=5===M||$;return function(X,de,V,ce){for(var ct,qe,se=u(X),fe=c(se),Te=r(de,V),$e=e(fe),ge=0,Et=ce||f,ot=w?Et(X,$e):D||J?Et(X,0):void 0;$e>ge;ge++)if((F||ge in fe)&&(qe=Te(ct=fe[ge],ge,se),M))if(w)ot[ge]=qe;else if(qe)switch(M){case 3:return!0;case 5:return ct;case 6:return ge;case 2:m(ot,ct)}else switch(M){case 4:return!1;case 7:m(ot,ct)}return $?-1:U||W?W:ot}};E.exports={forEach:T(0),map:T(1),filter:T(2),some:T(3),every:T(4),find:T(5),findIndex:T(6),filterReject:T(7)}},78375:(E,C,s)=>{"use strict";var r=s(2543),a=s(81010),c=s(33912),u=s(6381),e=s(33620),f=Math.min,m=[].lastIndexOf,T=!!m&&1/[1].lastIndexOf(1,-0)<0,M=e("lastIndexOf");E.exports=T||!M?function(U){if(T)return r(m,this,arguments)||0;var W=a(this),$=u(W),J=$-1;for(arguments.length>1&&(J=f(J,c(arguments[1]))),J<0&&(J=$+J);J>=0;J--)if(J in W&&W[J]===U)return J||0;return-1}:m},95913:(E,C,s)=>{"use strict";var r=s(55756),a=s(91840),c=s(63556),u=a("species");E.exports=function(e){return c>=51||!r(function(){var f=[];return(f.constructor={})[u]=function(){return{foo:1}},1!==f[e](Boolean).foo})}},33620:(E,C,s)=>{"use strict";var r=s(55756);E.exports=function(a,c){var u=[][a];return!!u&&r(function(){u.call(null,c||function(){return 1},1)})}},88908:(E,C,s)=>{"use strict";var r=s(61812),a=s(70267),c=s(20973),u=s(6381),e=TypeError,f=function(m){return function(T,M,w,D){r(M);var U=a(T),W=c(U),$=u(U),J=m?$-1:0,F=m?-1:1;if(w<2)for(;;){if(J in W){D=W[J],J+=F;break}if(J+=F,m?J<0:$<=J)throw e("Reduce of empty array with no initial value")}for(;m?J>=0:$>J;J+=F)J in W&&(D=M(D,W[J],J,U));return D}};E.exports={left:f(!1),right:f(!0)}},54716:(E,C,s)=>{"use strict";var r=s(49642),a=s(89735),c=TypeError,u=Object.getOwnPropertyDescriptor,e=r&&!function(){if(void 0!==this)return!0;try{Object.defineProperty([],"length",{writable:!1}).length=1}catch(f){return f instanceof TypeError}}();E.exports=e?function(f,m){if(a(f)&&!u(f,"length").writable)throw c("Cannot set read only .length");return f.length=m}:function(f,m){return f.length=m}},8681:(E,C,s)=>{"use strict";var r=s(19401),a=s(6381),c=s(46751),u=Array,e=Math.max;E.exports=function(f,m,T){for(var M=a(f),w=r(m,M),D=r(void 0===T?M:T,M),U=u(e(D-w,0)),W=0;w{"use strict";var r=s(23634);E.exports=r([].slice)},84865:(E,C,s)=>{"use strict";var r=s(8681),a=Math.floor,c=function(f,m){var T=f.length,M=a(T/2);return T<8?u(f,m):e(f,c(r(f,0,M),m),c(r(f,M),m),m)},u=function(f,m){for(var w,D,T=f.length,M=1;M0;)f[D]=f[--D];D!==M++&&(f[D]=w)}return f},e=function(f,m,T,M){for(var w=m.length,D=T.length,U=0,W=0;U{"use strict";var r=s(89735),a=s(81177),c=s(77293),e=s(91840)("species"),f=Array;E.exports=function(m){var T;return r(m)&&(a(T=m.constructor)&&(T===f||r(T.prototype))||c(T)&&null===(T=T[e]))&&(T=void 0),void 0===T?f:T}},2103:(E,C,s)=>{"use strict";var r=s(48045);E.exports=function(a,c){return new(r(a))(0===c?0:c)}},93463:(E,C,s)=>{"use strict";var r=s(64562),a=s(40798);E.exports=function(c,u,e,f){try{return f?u(r(e)[0],e[1]):u(e)}catch(m){a(c,"throw",m)}}},49458:E=>{"use strict";E.exports=function(C,s){return 1===s?function(r,a){return r[C](a)}:function(r,a,c){return r[C](a,c)}}},5253:(E,C,s)=>{"use strict";var a=s(91840)("iterator"),c=!1;try{var u=0,e={next:function(){return{done:!!u++}},return:function(){c=!0}};e[a]=function(){return this},Array.from(e,function(){throw 2})}catch{}E.exports=function(f,m){try{if(!m&&!c)return!1}catch{return!1}var T=!1;try{var M={};M[a]=function(){return{next:function(){return{done:T=!0}}}},f(M)}catch{}return T}},49806:(E,C,s)=>{"use strict";var r=s(23634),a=r({}.toString),c=r("".slice);E.exports=function(u){return c(a(u),8,-1)}},35329:(E,C,s)=>{"use strict";var r=s(5552),a=s(52208),c=s(49806),e=s(91840)("toStringTag"),f=Object,m="Arguments"===c(function(){return arguments}());E.exports=r?c:function(M){var w,D,U;return void 0===M?"Undefined":null===M?"Null":"string"==typeof(D=function(M,w){try{return M[w]}catch{}}(w=f(M),e))?D:m?c(w):"Object"===(U=c(w))&&a(w.callee)?"Arguments":U}},83483:(E,C,s)=>{"use strict";var r=s(76781),a=s(25401),c=s(61812),u=s(54356),e=s(43550),f=s(41605),m=[].push;E.exports=function(M){var U,W,$,J,w=arguments.length,D=w>1?arguments[1]:void 0;return u(this),(U=void 0!==D)&&c(D),e(M)?new this:(W=[],U?($=0,J=r(D,w>2?arguments[2]:void 0),f(M,function(F){a(m,W,J(F,$++))})):f(M,m,{that:W}),new this(W))}},13067:(E,C,s)=>{"use strict";var r=s(37591);E.exports=function(){return new this(r(arguments))}},26650:(E,C,s)=>{"use strict";var r=s(83272),a=s(1707),c=s(84604),u=s(76781),e=s(54849),f=s(43550),m=s(41605),T=s(79077),M=s(28738),w=s(58014),D=s(49642),U=s(57867).fastKey,W=s(91093),$=W.set,J=W.getterFor;E.exports={getConstructor:function(F,X,de,V){var ce=F(function(ge,Et){e(ge,se),$(ge,{type:X,index:r(null),first:void 0,last:void 0,size:0}),D||(ge.size=0),f(Et)||m(Et,ge[V],{that:ge,AS_ENTRIES:de})}),se=ce.prototype,fe=J(X),Te=function(ge,Et,ot){var He,We,ct=fe(ge),qe=$e(ge,Et);return qe?qe.value=ot:(ct.last=qe={index:We=U(Et,!0),key:Et,value:ot,previous:He=ct.last,next:void 0,removed:!1},ct.first||(ct.first=qe),He&&(He.next=qe),D?ct.size++:ge.size++,"F"!==We&&(ct.index[We]=qe)),ge},$e=function(ge,Et){var qe,ot=fe(ge),ct=U(Et);if("F"!==ct)return ot.index[ct];for(qe=ot.first;qe;qe=qe.next)if(qe.key===Et)return qe};return c(se,{clear:function(){for(var ot=fe(this),ct=ot.index,qe=ot.first;qe;)qe.removed=!0,qe.previous&&(qe.previous=qe.previous.next=void 0),delete ct[qe.index],qe=qe.next;ot.first=ot.last=void 0,D?ot.size=0:this.size=0},delete:function(ge){var ot=fe(this),ct=$e(this,ge);if(ct){var qe=ct.next,He=ct.previous;delete ot.index[ct.index],ct.removed=!0,He&&(He.next=qe),qe&&(qe.previous=He),ot.first===ct&&(ot.first=qe),ot.last===ct&&(ot.last=He),D?ot.size--:this.size--}return!!ct},forEach:function(Et){for(var qe,ot=fe(this),ct=u(Et,arguments.length>1?arguments[1]:void 0);qe=qe?qe.next:ot.first;)for(ct(qe.value,qe.key,this);qe&&qe.removed;)qe=qe.previous},has:function(Et){return!!$e(this,Et)}}),c(se,de?{get:function(Et){var ot=$e(this,Et);return ot&&ot.value},set:function(Et,ot){return Te(this,0===Et?0:Et,ot)}}:{add:function(Et){return Te(this,Et=0===Et?0:Et,Et)}}),D&&a(se,"size",{configurable:!0,get:function(){return fe(this).size}}),ce},setStrong:function(F,X,de){var V=X+" Iterator",ce=J(X),se=J(V);T(F,X,function(fe,Te){$(this,{type:V,target:fe,state:ce(fe),kind:Te,last:void 0})},function(){for(var fe=se(this),Te=fe.kind,$e=fe.last;$e&&$e.removed;)$e=$e.previous;return fe.target&&(fe.last=$e=$e?$e.next:fe.state.first)?M("keys"===Te?$e.key:"values"===Te?$e.value:[$e.key,$e.value],!1):(fe.target=void 0,M(void 0,!0))},de?"entries":"values",!de,!0),w(X)}}},85116:(E,C,s)=>{"use strict";var r=s(90513),a=s(70009),c=s(57867),u=s(55756),e=s(65162),f=s(41605),m=s(54849),T=s(52208),M=s(77293),w=s(43550),D=s(85681),U=s(48011).f,W=s(68607).forEach,$=s(49642),J=s(91093),F=J.set,X=J.getterFor;E.exports=function(de,V,ce){var ot,se=-1!==de.indexOf("Map"),fe=-1!==de.indexOf("Weak"),Te=se?"set":"add",$e=a[de],ge=$e&&$e.prototype,Et={};if($&&T($e)&&(fe||ge.forEach&&!u(function(){(new $e).entries().next()}))){var ct=(ot=V(function(He,We){F(m(He,ct),{type:de,collection:new $e}),w(We)||f(We,He[Te],{that:He,AS_ENTRIES:se})})).prototype,qe=X(de);W(["add","clear","delete","forEach","get","has","set","keys","values","entries"],function(He){var We="add"===He||"set"===He;He in ge&&(!fe||"clear"!==He)&&e(ct,He,function(Le,Pt){var it=qe(this).collection;if(!We&&fe&&!M(Le))return"get"===He&&void 0;var Xt=it[He](0===Le?0:Le,Pt);return We?this:Xt})}),fe||U(ct,"size",{configurable:!0,get:function(){return qe(this).collection.size}})}else ot=ce.getConstructor(V,de,se,Te),c.enable();return D(ot,de,!1,!0),Et[de]=ot,r({global:!0,forced:!0},Et),fe||ce.setStrong(ot,de,se),ot}},65031:(E,C,s)=>{"use strict";var r=s(80112),a=s(59823),c=s(25525),u=s(48011);E.exports=function(e,f,m){for(var T=a(f),M=u.f,w=c.f,D=0;D{"use strict";var a=s(91840)("match");E.exports=function(c){var u=/./;try{"/./"[c](u)}catch{try{return u[a]=!1,"/./"[c](u)}catch{}}return!1}},37112:(E,C,s)=>{"use strict";var r=s(55756);E.exports=!r(function(){function a(){}return a.prototype.constructor=null,Object.getPrototypeOf(new a)!==a.prototype})},28738:E=>{"use strict";E.exports=function(C,s){return{value:C,done:s}}},65162:(E,C,s)=>{"use strict";var r=s(49642),a=s(48011),c=s(51361);E.exports=r?function(u,e,f){return a.f(u,e,c(1,f))}:function(u,e,f){return u[e]=f,u}},51361:E=>{"use strict";E.exports=function(C,s){return{enumerable:!(1&C),configurable:!(2&C),writable:!(4&C),value:s}}},46751:(E,C,s)=>{"use strict";var r=s(62939),a=s(48011),c=s(51361);E.exports=function(u,e,f){var m=r(e);m in u?a.f(u,m,c(0,f)):u[m]=f}},1707:(E,C,s)=>{"use strict";var r=s(48011);E.exports=function(a,c,u){return r.f(a,c,u)}},42915:(E,C,s)=>{"use strict";var r=s(65162);E.exports=function(a,c,u,e){return e&&e.enumerable?a[c]=u:r(a,c,u),a}},84604:(E,C,s)=>{"use strict";var r=s(42915);E.exports=function(a,c,u){for(var e in c)u&&u.unsafe&&a[e]?a[e]=c[e]:r(a,e,c[e],u);return a}},34056:(E,C,s)=>{"use strict";var r=s(70009),a=Object.defineProperty;E.exports=function(c,u){try{a(r,c,{value:u,configurable:!0,writable:!0})}catch{r[c]=u}return u}},67236:(E,C,s)=>{"use strict";var r=s(7378),a=TypeError;E.exports=function(c,u){if(!delete c[u])throw a("Cannot delete property "+r(u)+" of "+r(c))}},49642:(E,C,s)=>{"use strict";var r=s(55756);E.exports=!r(function(){return 7!==Object.defineProperty({},1,{get:function(){return 7}})[1]})},59478:E=>{"use strict";var C="object"==typeof document&&document.all;E.exports={all:C,IS_HTMLDDA:typeof C>"u"&&void 0!==C}},96682:(E,C,s)=>{"use strict";var r=s(70009),a=s(77293),c=r.document,u=a(c)&&a(c.createElement);E.exports=function(e){return u?c.createElement(e):{}}},11594:E=>{"use strict";var C=TypeError;E.exports=function(r){if(r>9007199254740991)throw C("Maximum allowed index exceeded");return r}},44125:E=>{"use strict";E.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:(E,C,s)=>{"use strict";var a=s(86053).match(/firefox\/(\d+)/i);E.exports=!!a&&+a[1]},34008:(E,C,s)=>{"use strict";var r=s(31813),a=s(3787);E.exports=!r&&!a&&"object"==typeof window&&"object"==typeof document},70902:E=>{"use strict";E.exports="function"==typeof Bun&&Bun&&"string"==typeof Bun.version},31813:E=>{"use strict";E.exports="object"==typeof Deno&&Deno&&"object"==typeof Deno.version},5329:(E,C,s)=>{"use strict";var r=s(86053);E.exports=/MSIE|Trident/.test(r)},16137:(E,C,s)=>{"use strict";var r=s(86053);E.exports=/ipad|iphone|ipod/i.test(r)&&typeof Pebble<"u"},3877:(E,C,s)=>{"use strict";var r=s(86053);E.exports=/(?:ipad|iphone|ipod).*applewebkit/i.test(r)},3787:(E,C,s)=>{"use strict";var r=s(70009),a=s(49806);E.exports="process"===a(r.process)},85308:(E,C,s)=>{"use strict";var r=s(86053);E.exports=/web0s(?!.*chrome)/i.test(r)},86053:E=>{"use strict";E.exports=typeof navigator<"u"&&String(navigator.userAgent)||""},63556:(E,C,s)=>{"use strict";var m,T,r=s(70009),a=s(86053),c=r.process,u=r.Deno,e=c&&c.versions||u&&u.version,f=e&&e.v8;f&&(T=(m=f.split("."))[0]>0&&m[0]<4?1:+(m[0]+m[1])),!T&&a&&(!(m=a.match(/Edge\/(\d+)/))||m[1]>=74)&&(m=a.match(/Chrome\/(\d+)/))&&(T=+m[1]),E.exports=T},34545:(E,C,s)=>{"use strict";var a=s(86053).match(/AppleWebKit\/(\d+)\./);E.exports=!!a&&+a[1]},97911:(E,C,s)=>{"use strict";var r=s(13544);E.exports=function(a){return r[a+"Prototype"]}},44939:E=>{"use strict";E.exports=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"]},40039:(E,C,s)=>{"use strict";var r=s(23634),a=Error,c=r("".replace),u=String(a("zxcasd").stack),e=/\n\s*at [^:]*:[^\n]*/,f=e.test(u);E.exports=function(m,T){if(f&&"string"==typeof m&&!a.prepareStackTrace)for(;T--;)m=c(m,e,"");return m}},77732:(E,C,s)=>{"use strict";var r=s(65162),a=s(40039),c=s(50499),u=Error.captureStackTrace;E.exports=function(e,f,m,T){c&&(u?u(e,f):r(e,"stack",a(m,T)))}},50499:(E,C,s)=>{"use strict";var r=s(55756),a=s(51361);E.exports=!r(function(){var c=Error("a");return!("stack"in c)||(Object.defineProperty(c,"stack",a(1,7)),7!==c.stack)})},90513:(E,C,s)=>{"use strict";var r=s(70009),a=s(2543),c=s(64350),u=s(52208),e=s(25525).f,f=s(79482),m=s(13544),T=s(76781),M=s(65162),w=s(80112),D=function(U){var W=function($,J,F){if(this instanceof W){switch(arguments.length){case 0:return new U;case 1:return new U($);case 2:return new U($,J)}return new U($,J,F)}return a(U,this,arguments)};return W.prototype=U.prototype,W};E.exports=function(U,W){var se,fe,Te,$e,ge,Et,ot,ct,qe,$=U.target,J=U.global,F=U.stat,X=U.proto,de=J?r:F?r[$]:(r[$]||{}).prototype,V=J?m:m[$]||M(m,$,{})[$],ce=V.prototype;for($e in W)fe=!(se=f(J?$e:$+(F?".":"#")+$e,U.forced))&&de&&w(de,$e),Et=V[$e],fe&&(ot=U.dontCallGetSet?(qe=e(de,$e))&&qe.value:de[$e]),ge=fe&&ot?ot:W[$e],(!fe||typeof Et!=typeof ge)&&(ct=U.bind&&fe?T(ge,r):U.wrap&&fe?D(ge):X&&u(ge)?c(ge):ge,(U.sham||ge&&ge.sham||Et&&Et.sham)&&M(ct,"sham",!0),M(V,$e,ct),X&&(w(m,Te=$+"Prototype")||M(m,Te,{}),M(m[Te],$e,ge),U.real&&ce&&(se||!ce[$e])&&M(ce,$e,ge)))}},55756:E=>{"use strict";E.exports=function(C){try{return!!C()}catch{return!0}}},3124:(E,C,s)=>{"use strict";var r=s(55756);E.exports=!r(function(){return Object.isExtensible(Object.preventExtensions({}))})},2543:(E,C,s)=>{"use strict";var r=s(29046),a=Function.prototype,c=a.apply,u=a.call;E.exports="object"==typeof Reflect&&Reflect.apply||(r?u.bind(c):function(){return u.apply(c,arguments)})},76781:(E,C,s)=>{"use strict";var r=s(64350),a=s(61812),c=s(29046),u=r(r.bind);E.exports=function(e,f){return a(e),void 0===f?e:c?u(e,f):function(){return e.apply(f,arguments)}}},29046:(E,C,s)=>{"use strict";var r=s(55756);E.exports=!r(function(){var a=function(){}.bind();return"function"!=typeof a||a.hasOwnProperty("prototype")})},44197:(E,C,s)=>{"use strict";var r=s(23634),a=s(61812),c=s(77293),u=s(80112),e=s(37591),f=s(29046),m=Function,T=r([].concat),M=r([].join),w={},D=function(U,W,$){if(!u(w,W)){for(var J=[],F=0;F{"use strict";var r=s(29046),a=Function.prototype.call;E.exports=r?a.bind(a):function(){return a.apply(a,arguments)}},29862:(E,C,s)=>{"use strict";var r=s(49642),a=s(80112),c=Function.prototype,u=r&&Object.getOwnPropertyDescriptor,e=a(c,"name"),f=e&&"something"===function(){}.name,m=e&&(!r||r&&u(c,"name").configurable);E.exports={EXISTS:e,PROPER:f,CONFIGURABLE:m}},13325:(E,C,s)=>{"use strict";var r=s(23634),a=s(61812);E.exports=function(c,u,e){try{return r(a(Object.getOwnPropertyDescriptor(c,u)[e]))}catch{}}},64350:(E,C,s)=>{"use strict";var r=s(49806),a=s(23634);E.exports=function(c){if("Function"===r(c))return a(c)}},23634:(E,C,s)=>{"use strict";var r=s(29046),a=Function.prototype,c=a.call,u=r&&a.bind.bind(c,c);E.exports=r?u:function(e){return function(){return c.apply(e,arguments)}}},7365:(E,C,s)=>{"use strict";var r=s(13544),a=s(70009),c=s(52208),u=function(e){return c(e)?e:void 0};E.exports=function(e,f){return arguments.length<2?u(r[e])||u(a[e]):r[e]&&r[e][f]||a[e]&&a[e][f]}},34014:(E,C,s)=>{"use strict";var r=s(35329),a=s(34778),c=s(43550),u=s(84394),f=s(91840)("iterator");E.exports=function(m){if(!c(m))return a(m,f)||a(m,"@@iterator")||u[r(m)]}},88055:(E,C,s)=>{"use strict";var r=s(25401),a=s(61812),c=s(64562),u=s(7378),e=s(34014),f=TypeError;E.exports=function(m,T){var M=arguments.length<2?e(m):T;if(a(M))return c(r(M,m));throw f(u(m)+" is not iterable")}},32092:(E,C,s)=>{"use strict";var r=s(23634),a=s(89735),c=s(52208),u=s(49806),e=s(41433),f=r([].push);E.exports=function(m){if(c(m))return m;if(a(m)){for(var T=m.length,M=[],w=0;w{"use strict";var r=s(61812),a=s(43550);E.exports=function(c,u){var e=c[u];return a(e)?void 0:r(e)}},70009:function(E){"use strict";var C=function(s){return s&&s.Math===Math&&s};E.exports=C("object"==typeof globalThis&&globalThis)||C("object"==typeof window&&window)||C("object"==typeof self&&self)||C("object"==typeof global&&global)||function(){return this}()||this||Function("return this")()},80112:(E,C,s)=>{"use strict";var r=s(23634),a=s(70267),c=r({}.hasOwnProperty);E.exports=Object.hasOwn||function(e,f){return c(a(e),f)}},45599:E=>{"use strict";E.exports={}},52912:E=>{"use strict";E.exports=function(C,s){try{1===arguments.length?console.error(C):console.error(C,s)}catch{}}},55690:(E,C,s)=>{"use strict";var r=s(7365);E.exports=r("document","documentElement")},50495:(E,C,s)=>{"use strict";var r=s(49642),a=s(55756),c=s(96682);E.exports=!r&&!a(function(){return 7!==Object.defineProperty(c("div"),"a",{get:function(){return 7}}).a})},20973:(E,C,s)=>{"use strict";var r=s(23634),a=s(55756),c=s(49806),u=Object,e=r("".split);E.exports=a(function(){return!u("z").propertyIsEnumerable(0)})?function(f){return"String"===c(f)?e(f,""):u(f)}:u},26699:(E,C,s)=>{"use strict";var r=s(23634),a=s(52208),c=s(24766),u=r(Function.toString);a(c.inspectSource)||(c.inspectSource=function(e){return u(e)}),E.exports=c.inspectSource},33411:(E,C,s)=>{"use strict";var r=s(77293),a=s(65162);E.exports=function(c,u){r(u)&&"cause"in u&&a(c,"cause",u.cause)}},57867:(E,C,s)=>{"use strict";var r=s(90513),a=s(23634),c=s(45599),u=s(77293),e=s(80112),f=s(48011).f,m=s(51518),T=s(62469),M=s(46401),w=s(13708),D=s(3124),U=!1,W=w("meta"),$=0,J=function(se){f(se,W,{value:{objectID:"O"+$++,weakData:{}}})},ce=E.exports={enable:function(){ce.enable=function(){},U=!0;var se=m.f,fe=a([].splice),Te={};Te[W]=1,se(Te).length&&(m.f=function($e){for(var ge=se($e),Et=0,ot=ge.length;Et{"use strict";var U,W,$,r=s(81101),a=s(70009),c=s(77293),u=s(65162),e=s(80112),f=s(24766),m=s(86066),T=s(45599),M="Object already initialized",w=a.TypeError;if(r||f.state){var X=f.state||(f.state=new(0,a.WeakMap));X.get=X.get,X.has=X.has,X.set=X.set,U=function(V,ce){if(X.has(V))throw w(M);return ce.facade=V,X.set(V,ce),ce},W=function(V){return X.get(V)||{}},$=function(V){return X.has(V)}}else{var de=m("state");T[de]=!0,U=function(V,ce){if(e(V,de))throw w(M);return ce.facade=V,u(V,de,ce),ce},W=function(V){return e(V,de)?V[de]:{}},$=function(V){return e(V,de)}}E.exports={set:U,get:W,has:$,enforce:function(V){return $(V)?W(V):U(V,{})},getterFor:function(V){return function(ce){var se;if(!c(ce)||(se=W(ce)).type!==V)throw w("Incompatible receiver, "+V+" required");return se}}}},39918:(E,C,s)=>{"use strict";var r=s(91840),a=s(84394),c=r("iterator"),u=Array.prototype;E.exports=function(e){return void 0!==e&&(a.Array===e||u[c]===e)}},89735:(E,C,s)=>{"use strict";var r=s(49806);E.exports=Array.isArray||function(c){return"Array"===r(c)}},52208:(E,C,s)=>{"use strict";var r=s(59478),a=r.all;E.exports=r.IS_HTMLDDA?function(c){return"function"==typeof c||c===a}:function(c){return"function"==typeof c}},81177:(E,C,s)=>{"use strict";var r=s(23634),a=s(55756),c=s(52208),u=s(35329),e=s(7365),f=s(26699),m=function(){},T=[],M=e("Reflect","construct"),w=/^\s*(?:class|function)\b/,D=r(w.exec),U=!w.exec(m),W=function(F){if(!c(F))return!1;try{return M(m,T,F),!0}catch{return!1}},$=function(F){if(!c(F))return!1;switch(u(F)){case"AsyncFunction":case"GeneratorFunction":case"AsyncGeneratorFunction":return!1}try{return U||!!D(w,f(F))}catch{return!0}};$.sham=!0,E.exports=!M||a(function(){var J;return W(W.call)||!W(Object)||!W(function(){J=!0})||J})?$:W},27029:(E,C,s)=>{"use strict";var r=s(80112);E.exports=function(a){return void 0!==a&&(r(a,"value")||r(a,"writable"))}},79482:(E,C,s)=>{"use strict";var r=s(55756),a=s(52208),c=/#|\.prototype\./,u=function(M,w){var D=f[e(M)];return D===T||D!==m&&(a(w)?r(w):!!w)},e=u.normalize=function(M){return String(M).replace(c,".").toLowerCase()},f=u.data={},m=u.NATIVE="N",T=u.POLYFILL="P";E.exports=u},43550:E=>{"use strict";E.exports=function(C){return null==C}},77293:(E,C,s)=>{"use strict";var r=s(52208),a=s(59478),c=a.all;E.exports=a.IS_HTMLDDA?function(u){return"object"==typeof u?null!==u:r(u)||u===c}:function(u){return"object"==typeof u?null!==u:r(u)}},81124:E=>{"use strict";E.exports=!0},60373:(E,C,s)=>{"use strict";var r=s(77293),a=s(49806),u=s(91840)("match");E.exports=function(e){var f;return r(e)&&(void 0!==(f=e[u])?!!f:"RegExp"===a(e))}},74717:(E,C,s)=>{"use strict";var r=s(7365),a=s(52208),c=s(23336),u=s(99554),e=Object;E.exports=u?function(f){return"symbol"==typeof f}:function(f){var m=r("Symbol");return a(m)&&c(m.prototype,e(f))}},87463:(E,C,s)=>{"use strict";var r=s(25401);E.exports=function(a,c,u){for(var m,T,e=u?a:a.iterator,f=a.next;!(m=r(f,e)).done;)if(void 0!==(T=c(m.value)))return T}},41605:(E,C,s)=>{"use strict";var r=s(76781),a=s(25401),c=s(64562),u=s(7378),e=s(39918),f=s(6381),m=s(23336),T=s(88055),M=s(34014),w=s(40798),D=TypeError,U=function($,J){this.stopped=$,this.result=J},W=U.prototype;E.exports=function($,J,F){var Te,$e,ge,Et,ot,ct,qe,de=!(!F||!F.AS_ENTRIES),V=!(!F||!F.IS_RECORD),ce=!(!F||!F.IS_ITERATOR),se=!(!F||!F.INTERRUPTED),fe=r(J,F&&F.that),He=function(Le){return Te&&w(Te,"normal",Le),new U(!0,Le)},We=function(Le){return de?(c(Le),se?fe(Le[0],Le[1],He):fe(Le[0],Le[1])):se?fe(Le,He):fe(Le)};if(V)Te=$.iterator;else if(ce)Te=$;else{if(!($e=M($)))throw D(u($)+" is not iterable");if(e($e)){for(ge=0,Et=f($);Et>ge;ge++)if((ot=We($[ge]))&&m(W,ot))return ot;return new U(!1)}Te=T($,$e)}for(ct=V?$.next:Te.next;!(qe=a(ct,Te)).done;){try{ot=We(qe.value)}catch(Le){w(Te,"throw",Le)}if("object"==typeof ot&&ot&&m(W,ot))return ot}return new U(!1)}},40798:(E,C,s)=>{"use strict";var r=s(25401),a=s(64562),c=s(34778);E.exports=function(u,e,f){var m,T;a(u);try{if(!(m=c(u,"return"))){if("throw"===e)throw f;return f}m=r(m,u)}catch(M){T=!0,m=M}if("throw"===e)throw f;if(T)throw m;return a(m),f}},14554:(E,C,s)=>{"use strict";var r=s(38432).IteratorPrototype,a=s(83272),c=s(51361),u=s(85681),e=s(84394),f=function(){return this};E.exports=function(m,T,M,w){var D=T+" Iterator";return m.prototype=a(r,{next:c(+!w,M)}),u(m,D,!1,!0),e[D]=f,m}},79077:(E,C,s)=>{"use strict";var r=s(90513),a=s(25401),c=s(81124),u=s(29862),e=s(52208),f=s(14554),m=s(31426),T=s(54945),M=s(85681),w=s(65162),D=s(42915),U=s(91840),W=s(84394),$=s(38432),J=u.PROPER,F=u.CONFIGURABLE,X=$.IteratorPrototype,de=$.BUGGY_SAFARI_ITERATORS,V=U("iterator"),se="values",fe="entries",Te=function(){return this};E.exports=function($e,ge,Et,ot,ct,qe,He){f(Et,ge,ot);var Rn,At,qt,We=function(sn){if(sn===ct&&cn)return cn;if(!de&&sn&&sn in it)return it[sn];switch(sn){case"keys":case se:case fe:return function(){return new Et(this,sn)}}return function(){return new Et(this)}},Le=ge+" Iterator",Pt=!1,it=$e.prototype,Xt=it[V]||it["@@iterator"]||ct&&it[ct],cn=!de&&Xt||We(ct),pn="Array"===ge&&it.entries||Xt;if(pn&&(Rn=m(pn.call(new $e)))!==Object.prototype&&Rn.next&&(!c&&m(Rn)!==X&&(T?T(Rn,X):e(Rn[V])||D(Rn,V,Te)),M(Rn,Le,!0,!0),c&&(W[Le]=Te)),J&&ct===se&&Xt&&Xt.name!==se&&(!c&&F?w(it,"name",se):(Pt=!0,cn=function(){return a(Xt,this)})),ct)if(At={values:We(se),keys:qe?cn:We("keys"),entries:We(fe)},He)for(qt in At)(de||Pt||!(qt in it))&&D(it,qt,At[qt]);else r({target:ge,proto:!0,forced:de||Pt},At);return(!c||He)&&it[V]!==cn&&D(it,V,cn,{name:ct}),W[ge]=cn,At}},38432:(E,C,s)=>{"use strict";var D,U,W,r=s(55756),a=s(52208),c=s(77293),u=s(83272),e=s(31426),f=s(42915),m=s(91840),T=s(81124),M=m("iterator"),w=!1;[].keys&&("next"in(W=[].keys())?(U=e(e(W)))!==Object.prototype&&(D=U):w=!0),!c(D)||r(function(){var J={};return D[M].call(J)!==J})?D={}:T&&(D=u(D)),a(D[M])||f(D,M,function(){return this}),E.exports={IteratorPrototype:D,BUGGY_SAFARI_ITERATORS:w}},84394:E=>{"use strict";E.exports={}},6381:(E,C,s)=>{"use strict";var r=s(48869);E.exports=function(a){return r(a.length)}},60077:(E,C,s)=>{"use strict";var r=s(7365),a=s(49458),c=r("Map");E.exports={Map:c,set:a("set",2),get:a("get",1),has:a("has",1),remove:a("delete",1),proto:c.prototype}},21515:(E,C,s)=>{"use strict";var r=s(87463);E.exports=function(a,c,u){return u?r(a.entries(),function(e){return c(e[1],e[0])},!0):a.forEach(c)}},57729:(E,C,s)=>{"use strict";var r=s(25401),a=s(61812),c=s(52208),u=s(64562),e=TypeError;E.exports=function(m,T){var $,M=u(this),w=a(M.get),D=a(M.has),U=a(M.set),W=arguments.length>2?arguments[2]:void 0;if(!c(T)&&!c(W))throw e("At least one callback required");return r(D,M,m)?($=r(w,M,m),c(T)&&($=T($),r(U,M,m,$))):c(W)&&($=W(),r(U,M,m,$)),$}},8651:E=>{"use strict";var C=Math.ceil,s=Math.floor;E.exports=Math.trunc||function(a){var c=+a;return(c>0?s:C)(c)}},53460:(E,C,s)=>{"use strict";var F,X,de,V,ce,r=s(70009),a=s(76781),c=s(25525).f,u=s(37352).set,e=s(70918),f=s(3877),m=s(16137),T=s(85308),M=s(3787),w=r.MutationObserver||r.WebKitMutationObserver,D=r.document,U=r.process,W=r.Promise,$=c(r,"queueMicrotask"),J=$&&$.value;if(!J){var se=new e,fe=function(){var Te,$e;for(M&&(Te=U.domain)&&Te.exit();$e=se.get();)try{$e()}catch(ge){throw se.head&&F(),ge}Te&&Te.enter()};f||M||T||!w||!D?!m&&W&&W.resolve?((V=W.resolve(void 0)).constructor=W,ce=a(V.then,V),F=function(){ce(fe)}):M?F=function(){U.nextTick(fe)}:(u=a(u,r),F=function(){u(fe)}):(X=!0,de=D.createTextNode(""),new w(fe).observe(de,{characterData:!0}),F=function(){de.data=X=!X}),J=function(Te){se.head||F(),se.add(Te)}}E.exports=J},54256:(E,C,s)=>{"use strict";var r=s(61812),a=TypeError,c=function(u){var e,f;this.promise=new u(function(m,T){if(void 0!==e||void 0!==f)throw a("Bad Promise constructor");e=m,f=T}),this.resolve=r(e),this.reject=r(f)};E.exports.f=function(u){return new c(u)}},63313:(E,C,s)=>{"use strict";var r=s(41433);E.exports=function(a,c){return void 0===a?arguments.length<2?"":c:r(a)}},56421:(E,C,s)=>{"use strict";var r=s(60373),a=TypeError;E.exports=function(c){if(r(c))throw a("The method doesn't accept regular expressions");return c}},75791:(E,C,s)=>{"use strict";var r=s(49642),a=s(23634),c=s(25401),u=s(55756),e=s(28474),f=s(47238),m=s(25558),T=s(70267),M=s(20973),w=Object.assign,D=Object.defineProperty,U=a([].concat);E.exports=!w||u(function(){if(r&&1!==w({b:1},w(D({},"a",{enumerable:!0,get:function(){D(this,"b",{value:3,enumerable:!1})}}),{b:2})).b)return!0;var W={},$={},J=Symbol("assign detection"),F="abcdefghijklmnopqrst";return W[J]=7,F.split("").forEach(function(X){$[X]=X}),7!==w({},W)[J]||e(w({},$)).join("")!==F})?function($,J){for(var F=T($),X=arguments.length,de=1,V=f.f,ce=m.f;X>de;)for(var ge,se=M(arguments[de++]),fe=V?U(e(se),V(se)):e(se),Te=fe.length,$e=0;Te>$e;)ge=fe[$e++],(!r||c(ce,se,ge))&&(F[ge]=se[ge]);return F}:w},83272:(E,C,s)=>{"use strict";var X,r=s(64562),a=s(25913),c=s(44939),u=s(45599),e=s(55690),f=s(96682),m=s(86066),w="prototype",D="script",U=m("IE_PROTO"),W=function(){},$=function(V){return"<"+D+">"+V+""},J=function(V){V.write($("")),V.close();var ce=V.parentWindow.Object;return V=null,ce},de=function(){try{X=new ActiveXObject("htmlfile")}catch{}de=typeof document<"u"?document.domain&&X?J(X):function(){var se,V=f("iframe"),ce="java"+D+":";return V.style.display="none",e.appendChild(V),V.src=String(ce),(se=V.contentWindow.document).open(),se.write($("document.F=Object")),se.close(),se.F}():J(X);for(var V=c.length;V--;)delete de[w][c[V]];return de()};u[U]=!0,E.exports=Object.create||function(ce,se){var fe;return null!==ce?(W[w]=r(ce),fe=new W,W[w]=null,fe[U]=ce):fe=de(),void 0===se?fe:a.f(fe,se)}},25913:(E,C,s)=>{"use strict";var r=s(49642),a=s(47960),c=s(48011),u=s(64562),e=s(81010),f=s(28474);C.f=r&&!a?Object.defineProperties:function(T,M){u(T);for(var $,w=e(M),D=f(M),U=D.length,W=0;U>W;)c.f(T,$=D[W++],w[$]);return T}},48011:(E,C,s)=>{"use strict";var r=s(49642),a=s(50495),c=s(47960),u=s(64562),e=s(62939),f=TypeError,m=Object.defineProperty,T=Object.getOwnPropertyDescriptor,M="enumerable",w="configurable",D="writable";C.f=r?c?function(W,$,J){if(u(W),$=e($),u(J),"function"==typeof W&&"prototype"===$&&"value"in J&&D in J&&!J[D]){var F=T(W,$);F&&F[D]&&(W[$]=J.value,J={configurable:w in J?J[w]:F[w],enumerable:M in J?J[M]:F[M],writable:!1})}return m(W,$,J)}:m:function(W,$,J){if(u(W),$=e($),u(J),a)try{return m(W,$,J)}catch{}if("get"in J||"set"in J)throw f("Accessors not supported");return"value"in J&&(W[$]=J.value),W}},25525:(E,C,s)=>{"use strict";var r=s(49642),a=s(25401),c=s(25558),u=s(51361),e=s(81010),f=s(62939),m=s(80112),T=s(50495),M=Object.getOwnPropertyDescriptor;C.f=r?M:function(D,U){if(D=e(D),U=f(U),T)try{return M(D,U)}catch{}if(m(D,U))return u(!a(c.f,D,U),D[U])}},62469:(E,C,s)=>{"use strict";var r=s(49806),a=s(81010),c=s(51518).f,u=s(8681),e="object"==typeof window&&window&&Object.getOwnPropertyNames?Object.getOwnPropertyNames(window):[];E.exports.f=function(T){return e&&"Window"===r(T)?function(m){try{return c(m)}catch{return u(e)}}(T):c(a(T))}},51518:(E,C,s)=>{"use strict";var r=s(66250),c=s(44939).concat("length","prototype");C.f=Object.getOwnPropertyNames||function(e){return r(e,c)}},47238:(E,C)=>{"use strict";C.f=Object.getOwnPropertySymbols},31426:(E,C,s)=>{"use strict";var r=s(80112),a=s(52208),c=s(70267),u=s(86066),e=s(37112),f=u("IE_PROTO"),m=Object,T=m.prototype;E.exports=e?m.getPrototypeOf:function(M){var w=c(M);if(r(w,f))return w[f];var D=w.constructor;return a(D)&&w instanceof D?D.prototype:w instanceof m?T:null}},46401:(E,C,s)=>{"use strict";var r=s(55756),a=s(77293),c=s(49806),u=s(76318),e=Object.isExtensible,f=r(function(){e(1)});E.exports=f||u?function(T){return!(!a(T)||u&&"ArrayBuffer"===c(T))&&(!e||e(T))}:e},23336:(E,C,s)=>{"use strict";var r=s(23634);E.exports=r({}.isPrototypeOf)},66250:(E,C,s)=>{"use strict";var r=s(23634),a=s(80112),c=s(81010),u=s(95171).indexOf,e=s(45599),f=r([].push);E.exports=function(m,T){var U,M=c(m),w=0,D=[];for(U in M)!a(e,U)&&a(M,U)&&f(D,U);for(;T.length>w;)a(M,U=T[w++])&&(~u(D,U)||f(D,U));return D}},28474:(E,C,s)=>{"use strict";var r=s(66250),a=s(44939);E.exports=Object.keys||function(u){return r(u,a)}},25558:(E,C)=>{"use strict";var s={}.propertyIsEnumerable,r=Object.getOwnPropertyDescriptor,a=r&&!s.call({1:2},1);C.f=a?function(u){var e=r(this,u);return!!e&&e.enumerable}:s},54945:(E,C,s)=>{"use strict";var r=s(13325),a=s(64562),c=s(93221);E.exports=Object.setPrototypeOf||("__proto__"in{}?function(){var f,u=!1,e={};try{(f=r(Object.prototype,"__proto__","set"))(e,[]),u=e instanceof Array}catch{}return function(T,M){return a(T),c(M),u?f(T,M):T.__proto__=M,T}}():void 0)},36805:(E,C,s)=>{"use strict";var r=s(49642),a=s(55756),c=s(23634),u=s(31426),e=s(28474),f=s(81010),T=c(s(25558).f),M=c([].push),w=r&&a(function(){var U=Object.create(null);return U[2]=2,!T(U,2)}),D=function(U){return function(W){for(var ce,$=f(W),J=e($),F=w&&null===u($),X=J.length,de=0,V=[];X>de;)ce=J[de++],(!r||(F?ce in $:T($,ce)))&&M(V,U?[ce,$[ce]]:$[ce]);return V}};E.exports={entries:D(!0),values:D(!1)}},97686:(E,C,s)=>{"use strict";var r=s(5552),a=s(35329);E.exports=r?{}.toString:function(){return"[object "+a(this)+"]"}},71689:(E,C,s)=>{"use strict";var r=s(25401),a=s(52208),c=s(77293),u=TypeError;E.exports=function(e,f){var m,T;if("string"===f&&a(m=e.toString)&&!c(T=r(m,e))||a(m=e.valueOf)&&!c(T=r(m,e))||"string"!==f&&a(m=e.toString)&&!c(T=r(m,e)))return T;throw u("Can't convert object to primitive value")}},59823:(E,C,s)=>{"use strict";var r=s(7365),a=s(23634),c=s(51518),u=s(47238),e=s(64562),f=a([].concat);E.exports=r("Reflect","ownKeys")||function(T){var M=c.f(e(T)),w=u.f;return w?f(M,w(T)):M}},13544:E=>{"use strict";E.exports={}},26975:E=>{"use strict";E.exports=function(C){try{return{error:!1,value:C()}}catch(s){return{error:!0,value:s}}}},9936:(E,C,s)=>{"use strict";var r=s(70009),a=s(46456),c=s(52208),u=s(79482),e=s(26699),f=s(91840),m=s(34008),T=s(31813),M=s(81124),w=s(63556),D=a&&a.prototype,U=f("species"),W=!1,$=c(r.PromiseRejectionEvent),J=u("Promise",function(){var F=e(a),X=F!==String(a);if(!X&&66===w||M&&(!D.catch||!D.finally))return!0;if(!w||w<51||!/native code/.test(F)){var de=new a(function(se){se(1)}),V=function(se){se(function(){},function(){})};if((de.constructor={})[U]=V,!(W=de.then(function(){})instanceof V))return!0}return!X&&(m||T)&&!$});E.exports={CONSTRUCTOR:J,REJECTION_EVENT:$,SUBCLASSING:W}},46456:(E,C,s)=>{"use strict";var r=s(70009);E.exports=r.Promise},25524:(E,C,s)=>{"use strict";var r=s(64562),a=s(77293),c=s(54256);E.exports=function(u,e){if(r(u),a(e)&&e.constructor===u)return e;var f=c.f(u);return(0,f.resolve)(e),f.promise}},95758:(E,C,s)=>{"use strict";var r=s(46456),a=s(5253),c=s(9936).CONSTRUCTOR;E.exports=c||!a(function(u){r.all(u).then(void 0,function(){})})},70918:E=>{"use strict";var C=function(){this.head=null,this.tail=null};C.prototype={add:function(s){var r={item:s,next:null},a=this.tail;a?a.next=r:this.head=r,this.tail=r},get:function(){var s=this.head;if(s)return null===(this.head=s.next)&&(this.tail=null),s.item}},E.exports=C},67917:(E,C,s)=>{"use strict";var r=s(43550),a=TypeError;E.exports=function(c){if(r(c))throw a("Can't call method on "+c);return c}},29627:E=>{"use strict";E.exports=function(C,s){return C===s||C!=C&&s!=s}},53814:(E,C,s)=>{"use strict";var w,r=s(70009),a=s(2543),c=s(52208),u=s(70902),e=s(86053),f=s(37591),m=s(15086),T=r.Function,M=/MSIE .\./.test(e)||u&&((w=r.Bun.version.split(".")).length<3||"0"===w[0]&&(w[1]<3||"3"===w[1]&&"0"===w[2]));E.exports=function(w,D){var U=D?2:1;return M?function(W,$){var J=m(arguments.length,1)>U,F=c(W)?W:T(W),X=J?f(arguments,U):[],de=J?function(){a(F,this,X)}:F;return D?w(de,$):w(de)}:w}},58014:(E,C,s)=>{"use strict";var r=s(7365),a=s(1707),c=s(91840),u=s(49642),e=c("species");E.exports=function(f){var m=r(f);u&&m&&!m[e]&&a(m,e,{configurable:!0,get:function(){return this}})}},85681:(E,C,s)=>{"use strict";var r=s(5552),a=s(48011).f,c=s(65162),u=s(80112),e=s(97686),m=s(91840)("toStringTag");E.exports=function(T,M,w,D){if(T){var U=w?T:T.prototype;u(U,m)||a(U,m,{configurable:!0,value:M}),D&&!r&&c(U,"toString",e)}}},86066:(E,C,s)=>{"use strict";var r=s(64579),a=s(13708),c=r("keys");E.exports=function(u){return c[u]||(c[u]=a(u))}},24766:(E,C,s)=>{"use strict";var r=s(70009),a=s(34056),c="__core-js_shared__",u=r[c]||a(c,{});E.exports=u},64579:(E,C,s)=>{"use strict";var r=s(81124),a=s(24766);(E.exports=function(c,u){return a[c]||(a[c]=void 0!==u?u:{})})("versions",[]).push({version:"3.32.2",mode:r?"pure":"global",copyright:"\xa9 2014-2023 Denis Pushkarev (zloirock.ru)",license:"https://github.com/zloirock/core-js/blob/v3.32.2/LICENSE",source:"https://github.com/zloirock/core-js"})},95869:(E,C,s)=>{"use strict";var r=s(64562),a=s(54356),c=s(43550),e=s(91840)("species");E.exports=function(f,m){var M,T=r(f).constructor;return void 0===T||c(M=r(T)[e])?m:a(M)}},61557:(E,C,s)=>{"use strict";var r=s(23634),a=s(33912),c=s(41433),u=s(67917),e=r("".charAt),f=r("".charCodeAt),m=r("".slice),T=function(M){return function(w,D){var J,F,U=c(u(w)),W=a(D),$=U.length;return W<0||W>=$?M?"":void 0:(J=f(U,W))<55296||J>56319||W+1===$||(F=f(U,W+1))<56320||F>57343?M?e(U,W):J:M?m(U,W,W+2):F-56320+(J-55296<<10)+65536}};E.exports={codeAt:T(!1),charAt:T(!0)}},26662:(E,C,s)=>{"use strict";var r=s(23634),a=2147483647,D=/[^\0-\u007E]/,U=/[.\u3002\uFF0E\uFF61]/g,W="Overflow: input needs wider integers to process",J=RangeError,F=r(U.exec),X=Math.floor,de=String.fromCharCode,V=r("".charCodeAt),ce=r([].join),se=r([].push),fe=r("".replace),Te=r("".split),$e=r("".toLowerCase),Et=function(qe){return qe+22+75*(qe<26)},ot=function(qe,He,We){var Le=0;for(qe=We?X(qe/700):qe>>1,qe+=X(qe/He);qe>455;)qe=X(qe/35),Le+=36;return X(Le+36*qe/(qe+38))},ct=function(qe){var He=[];qe=function(qe){for(var He=[],We=0,Le=qe.length;We=55296&&Pt<=56319&&We=Le&&cnX((a-Pt)/qt))throw J(W);for(Pt+=(At-Le)*qt,Le=At,Xt=0;Xta)throw J(W);if(cn===Le){for(var sn=Pt,fn=36;;){var xn=fn<=it?1:fn>=it+26?26:fn-it;if(sn{"use strict";var r=s(33912),a=s(41433),c=s(67917),u=RangeError;E.exports=function(f){var m=a(c(this)),T="",M=r(f);if(M<0||M===1/0)throw u("Wrong number of repetitions");for(;M>0;(M>>>=1)&&(m+=m))1&M&&(T+=m);return T}},85462:(E,C,s)=>{"use strict";var r=s(29862).PROPER,a=s(55756),c=s(88185);E.exports=function(e){return a(function(){return!!c[e]()||"\u200b\x85\u180e"!=="\u200b\x85\u180e"[e]()||r&&c[e].name!==e})}},89858:(E,C,s)=>{"use strict";var r=s(23634),a=s(67917),c=s(41433),u=s(88185),e=r("".replace),f=RegExp("^["+u+"]+"),m=RegExp("(^|[^"+u+"])["+u+"]+$"),T=function(M){return function(w){var D=c(a(w));return 1&M&&(D=e(D,f,"")),2&M&&(D=e(D,m,"$1")),D}};E.exports={start:T(1),end:T(2),trim:T(3)}},98535:(E,C,s)=>{"use strict";var r=s(63556),a=s(55756),u=s(70009).String;E.exports=!!Object.getOwnPropertySymbols&&!a(function(){var e=Symbol("symbol detection");return!u(e)||!(Object(e)instanceof Symbol)||!Symbol.sham&&r&&r<41})},56992:(E,C,s)=>{"use strict";var r=s(25401),a=s(7365),c=s(91840),u=s(42915);E.exports=function(){var e=a("Symbol"),f=e&&e.prototype,m=f&&f.valueOf,T=c("toPrimitive");f&&!f[T]&&u(f,T,function(M){return r(m,this)},{arity:1})}},86475:(E,C,s)=>{"use strict";var r=s(7365),a=s(23634),c=r("Symbol"),u=c.keyFor,e=a(c.prototype.valueOf);E.exports=c.isRegisteredSymbol||function(m){try{return void 0!==u(e(m))}catch{return!1}}},74110:(E,C,s)=>{"use strict";for(var r=s(64579),a=s(7365),c=s(23634),u=s(74717),e=s(91840),f=a("Symbol"),m=f.isWellKnownSymbol,T=a("Object","getOwnPropertyNames"),M=c(f.prototype.valueOf),w=r("wks"),D=0,U=T(f),W=U.length;D{"use strict";var r=s(98535);E.exports=r&&!!Symbol.for&&!!Symbol.keyFor},37352:(E,C,s)=>{"use strict";var Te,$e,ge,Et,r=s(70009),a=s(2543),c=s(76781),u=s(52208),e=s(80112),f=s(55756),m=s(55690),T=s(37591),M=s(96682),w=s(15086),D=s(3877),U=s(3787),W=r.setImmediate,$=r.clearImmediate,J=r.process,F=r.Dispatch,X=r.Function,de=r.MessageChannel,V=r.String,ce=0,se={},fe="onreadystatechange";f(function(){Te=r.location});var ot=function(We){if(e(se,We)){var Le=se[We];delete se[We],Le()}},ct=function(We){return function(){ot(We)}},qe=function(We){ot(We.data)},He=function(We){r.postMessage(V(We),Te.protocol+"//"+Te.host)};(!W||!$)&&(W=function(Le){w(arguments.length,1);var Pt=u(Le)?Le:X(Le),it=T(arguments,1);return se[++ce]=function(){a(Pt,void 0,it)},$e(ce),ce},$=function(Le){delete se[Le]},U?$e=function(We){J.nextTick(ct(We))}:F&&F.now?$e=function(We){F.now(ct(We))}:de&&!D?(Et=(ge=new de).port2,ge.port1.onmessage=qe,$e=c(Et.postMessage,Et)):r.addEventListener&&u(r.postMessage)&&!r.importScripts&&Te&&"file:"!==Te.protocol&&!f(He)?($e=He,r.addEventListener("message",qe,!1)):$e=fe in M("script")?function(We){m.appendChild(M("script"))[fe]=function(){m.removeChild(this),ot(We)}}:function(We){setTimeout(ct(We),0)}),E.exports={set:W,clear:$}},19401:(E,C,s)=>{"use strict";var r=s(33912),a=Math.max,c=Math.min;E.exports=function(u,e){var f=r(u);return f<0?a(f+e,0):c(f,e)}},81010:(E,C,s)=>{"use strict";var r=s(20973),a=s(67917);E.exports=function(c){return r(a(c))}},33912:(E,C,s)=>{"use strict";var r=s(8651);E.exports=function(a){var c=+a;return c!=c||0===c?0:r(c)}},48869:(E,C,s)=>{"use strict";var r=s(33912),a=Math.min;E.exports=function(c){return c>0?a(r(c),9007199254740991):0}},70267:(E,C,s)=>{"use strict";var r=s(67917),a=Object;E.exports=function(c){return a(r(c))}},1645:(E,C,s)=>{"use strict";var r=s(25401),a=s(77293),c=s(74717),u=s(34778),e=s(71689),f=s(91840),m=TypeError,T=f("toPrimitive");E.exports=function(M,w){if(!a(M)||c(M))return M;var U,D=u(M,T);if(D){if(void 0===w&&(w="default"),U=r(D,M,w),!a(U)||c(U))return U;throw m("Can't convert object to primitive value")}return void 0===w&&(w="number"),e(M,w)}},62939:(E,C,s)=>{"use strict";var r=s(1645),a=s(74717);E.exports=function(c){var u=r(c,"string");return a(u)?u:u+""}},5552:(E,C,s)=>{"use strict";var c={};c[s(91840)("toStringTag")]="z",E.exports="[object z]"===String(c)},41433:(E,C,s)=>{"use strict";var r=s(35329),a=String;E.exports=function(c){if("Symbol"===r(c))throw TypeError("Cannot convert a Symbol value to a string");return a(c)}},7378:E=>{"use strict";var C=String;E.exports=function(s){try{return C(s)}catch{return"Object"}}},13708:(E,C,s)=>{"use strict";var r=s(23634),a=0,c=Math.random(),u=r(1..toString);E.exports=function(e){return"Symbol("+(void 0===e?"":e)+")_"+u(++a+c,36)}},54933:(E,C,s)=>{"use strict";var r=s(55756),a=s(91840),c=s(49642),u=s(81124),e=a("iterator");E.exports=!r(function(){var f=new URL("b?a=1&b=2&c=3","http://a"),m=f.searchParams,T=new URLSearchParams("a=1&a=2&b=3"),M="";return f.pathname="c%20d",m.forEach(function(w,D){m.delete("b"),M+=D+w}),T.delete("a",2),T.delete("b",void 0),u&&(!f.toJSON||!T.has("a",1)||T.has("a",2)||!T.has("a",void 0)||T.has("b"))||!m.size&&(u||!c)||!m.sort||"http://a/c%20d?a=1&c=3"!==f.href||"3"!==m.get("c")||"a=1"!==String(new URLSearchParams("?a=1"))||!m[e]||"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"!==M||"x"!==new URL("http://x",void 0).host})},99554:(E,C,s)=>{"use strict";var r=s(98535);E.exports=r&&!Symbol.sham&&"symbol"==typeof Symbol.iterator},47960:(E,C,s)=>{"use strict";var r=s(49642),a=s(55756);E.exports=r&&a(function(){return 42!==Object.defineProperty(function(){},"prototype",{value:42,writable:!1}).prototype})},15086:E=>{"use strict";var C=TypeError;E.exports=function(s,r){if(s{"use strict";var r=s(70009),a=s(52208),c=r.WeakMap;E.exports=a(c)&&/native code/.test(String(c))},25374:(E,C,s)=>{"use strict";var r=s(13544),a=s(80112),c=s(89734),u=s(48011).f;E.exports=function(e){var f=r.Symbol||(r.Symbol={});a(f,e)||u(f,e,{value:c.f(e)})}},89734:(E,C,s)=>{"use strict";var r=s(91840);C.f=r},91840:(E,C,s)=>{"use strict";var r=s(70009),a=s(64579),c=s(80112),u=s(13708),e=s(98535),f=s(99554),m=r.Symbol,T=a("wks"),M=f?m.for||m:m&&m.withoutSetter||u;E.exports=function(w){return c(T,w)||(T[w]=e&&c(m,w)?m[w]:M("Symbol."+w)),T[w]}},88185:E=>{"use strict";E.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:(E,C,s)=>{"use strict";var r=s(90513),a=s(23336),c=s(31426),u=s(54945),e=s(65031),f=s(83272),m=s(65162),T=s(51361),M=s(33411),w=s(77732),D=s(41605),U=s(63313),$=s(91840)("toStringTag"),J=Error,F=[].push,X=function(ce,se){var Te,fe=a(de,this);u?Te=u(J(),fe?c(this):de):(Te=fe?this:f(de),m(Te,$,"Error")),void 0!==se&&m(Te,"message",U(se)),w(Te,X,Te.stack,1),arguments.length>2&&M(Te,arguments[2]);var $e=[];return D(ce,F,{that:$e}),m(Te,"errors",$e),Te};u?u(X,J):e(X,J,{name:!0});var de=X.prototype=f(J.prototype,{constructor:T(1,X),message:T(1,""),name:T(1,"AggregateError")});r({global:!0,constructor:!0,arity:2},{AggregateError:X})},10901:(E,C,s)=>{"use strict";s(70210)},1625:(E,C,s)=>{"use strict";var r=s(90513),a=s(55756),c=s(89735),u=s(77293),e=s(70267),f=s(6381),m=s(11594),T=s(46751),M=s(2103),w=s(95913),D=s(91840),U=s(63556),W=D("isConcatSpreadable"),$=U>=51||!a(function(){var X=[];return X[W]=!1,X.concat()[0]!==X}),J=function(X){if(!u(X))return!1;var de=X[W];return void 0!==de?!!de:c(X)};r({target:"Array",proto:!0,arity:1,forced:!$||!w("concat")},{concat:function(de){var fe,Te,$e,ge,Et,V=e(this),ce=M(V,0),se=0;for(fe=-1,$e=arguments.length;fe<$e;fe++)if(J(Et=-1===fe?V:arguments[fe]))for(ge=f(Et),m(se+ge),Te=0;Te{"use strict";var r=s(90513),a=s(68607).every;r({target:"Array",proto:!0,forced:!s(33620)("every")},{every:function(f){return a(this,f,arguments.length>1?arguments[1]:void 0)}})},24990:(E,C,s)=>{"use strict";var r=s(90513),a=s(35277),c=s(82196);r({target:"Array",proto:!0},{fill:a}),c("fill")},56534:(E,C,s)=>{"use strict";var r=s(90513),a=s(68607).filter;r({target:"Array",proto:!0,forced:!s(95913)("filter")},{filter:function(f){return a(this,f,arguments.length>1?arguments[1]:void 0)}})},12773:(E,C,s)=>{"use strict";var r=s(90513),a=s(68607).findIndex,c=s(82196),u="findIndex",e=!0;u in[]&&Array(1)[u](function(){e=!1}),r({target:"Array",proto:!0,forced:e},{findIndex:function(m){return a(this,m,arguments.length>1?arguments[1]:void 0)}}),c(u)},60326:(E,C,s)=>{"use strict";var r=s(90513),a=s(68607).find,c=s(82196),u="find",e=!0;u in[]&&Array(1)[u](function(){e=!1}),r({target:"Array",proto:!0,forced:e},{find:function(m){return a(this,m,arguments.length>1?arguments[1]:void 0)}}),c(u)},98792:(E,C,s)=>{"use strict";var r=s(90513),a=s(8366);r({target:"Array",proto:!0,forced:[].forEach!==a},{forEach:a})},261:(E,C,s)=>{"use strict";var r=s(90513),a=s(51923);r({target:"Array",stat:!0,forced:!s(5253)(function(e){Array.from(e)})},{from:a})},77059:(E,C,s)=>{"use strict";var r=s(90513),a=s(95171).includes,c=s(55756),u=s(82196);r({target:"Array",proto:!0,forced:c(function(){return!Array(1).includes()})},{includes:function(m){return a(this,m,arguments.length>1?arguments[1]:void 0)}}),u("includes")},2795:(E,C,s)=>{"use strict";var r=s(90513),a=s(64350),c=s(95171).indexOf,u=s(33620),e=a([].indexOf),f=!!e&&1/e([1],1,-0)<0;r({target:"Array",proto:!0,forced:f||!u("indexOf")},{indexOf:function(M){var w=arguments.length>1?arguments[1]:void 0;return f?e(this,M,w)||0:c(this,M,w)}})},2862:(E,C,s)=>{"use strict";s(90513)({target:"Array",stat:!0},{isArray:s(89735)})},1285:(E,C,s)=>{"use strict";var r=s(81010),a=s(82196),c=s(84394),u=s(91093),e=s(48011).f,f=s(79077),m=s(28738),T=s(81124),M=s(49642),w="Array Iterator",D=u.set,U=u.getterFor(w);E.exports=f(Array,"Array",function($,J){D(this,{type:w,target:r($),index:0,kind:J})},function(){var $=U(this),J=$.target,F=$.kind,X=$.index++;if(!J||X>=J.length)return $.target=void 0,m(void 0,!0);switch(F){case"keys":return m(X,!1);case"values":return m(J[X],!1)}return m([X,J[X]],!1)},"values");var W=c.Arguments=c.Array;if(a("keys"),a("values"),a("entries"),!T&&M&&"values"!==W.name)try{e(W,"name",{value:"values"})}catch{}},74926:(E,C,s)=>{"use strict";var r=s(90513),a=s(78375);r({target:"Array",proto:!0,forced:a!==[].lastIndexOf},{lastIndexOf:a})},88119:(E,C,s)=>{"use strict";var r=s(90513),a=s(68607).map;r({target:"Array",proto:!0,forced:!s(95913)("map")},{map:function(f){return a(this,f,arguments.length>1?arguments[1]:void 0)}})},93870:(E,C,s)=>{"use strict";var r=s(90513),a=s(70267),c=s(6381),u=s(54716),e=s(11594);r({target:"Array",proto:!0,arity:1,forced:s(55756)(function(){return 4294967297!==[].push.call({length:4294967296},1)})||!function(){try{Object.defineProperty([],"length",{writable:!1}).push()}catch(w){return w instanceof TypeError}}()},{push:function(D){var U=a(this),W=c(U),$=arguments.length;e(W+$);for(var J=0;J<$;J++)U[W]=arguments[J],W++;return u(U,W),W}})},46250:(E,C,s)=>{"use strict";var r=s(90513),a=s(88908).left,c=s(33620),u=s(63556);r({target:"Array",proto:!0,forced:!s(3787)&&u>79&&u<83||!c("reduce")},{reduce:function(M){var w=arguments.length;return a(this,M,w,w>1?arguments[1]:void 0)}})},32836:(E,C,s)=>{"use strict";var r=s(90513),a=s(23634),c=s(89735),u=a([].reverse),e=[1,2];r({target:"Array",proto:!0,forced:String(e)===String(e.reverse())},{reverse:function(){return c(this)&&(this.length=this.length),u(this)}})},72999:(E,C,s)=>{"use strict";var r=s(90513),a=s(89735),c=s(81177),u=s(77293),e=s(19401),f=s(6381),m=s(81010),T=s(46751),M=s(91840),w=s(95913),D=s(37591),U=w("slice"),W=M("species"),$=Array,J=Math.max;r({target:"Array",proto:!0,forced:!U},{slice:function(X,de){var Te,$e,ge,V=m(this),ce=f(V),se=e(X,ce),fe=e(void 0===de?ce:de,ce);if(a(V)&&((c(Te=V.constructor)&&(Te===$||a(Te.prototype))||u(Te)&&null===(Te=Te[W]))&&(Te=void 0),Te===$||void 0===Te))return D(V,se,fe);for($e=new(void 0===Te?$:Te)(J(fe-se,0)),ge=0;se{"use strict";var r=s(90513),a=s(68607).some;r({target:"Array",proto:!0,forced:!s(33620)("some")},{some:function(f){return a(this,f,arguments.length>1?arguments[1]:void 0)}})},93639:(E,C,s)=>{"use strict";var r=s(90513),a=s(23634),c=s(61812),u=s(70267),e=s(6381),f=s(67236),m=s(41433),T=s(55756),M=s(84865),w=s(33620),D=s(36410),U=s(5329),W=s(63556),$=s(34545),J=[],F=a(J.sort),X=a(J.push),de=T(function(){J.sort(void 0)}),V=T(function(){J.sort(null)}),ce=w("sort"),se=!T(function(){if(W)return W<70;if(!(D&&D>3)){if(U)return!0;if($)return $<603;var ge,Et,ot,ct,$e="";for(ge=65;ge<76;ge++){switch(Et=String.fromCharCode(ge),ge){case 66:case 69:case 70:case 72:ot=3;break;case 68:case 71:ot=4;break;default:ot=2}for(ct=0;ct<47;ct++)J.push({k:Et+ct,v:ot})}for(J.sort(function(qe,He){return He.v-qe.v}),ct=0;ctm(Et)?1:-1}}(ge)),qe=e(ot),He=0;He{"use strict";var r=s(90513),a=s(70267),c=s(19401),u=s(33912),e=s(6381),f=s(54716),m=s(11594),T=s(2103),M=s(46751),w=s(67236),U=s(95913)("splice"),W=Math.max,$=Math.min;r({target:"Array",proto:!0,forced:!U},{splice:function(F,X){var fe,Te,$e,ge,Et,ot,de=a(this),V=e(de),ce=c(F,V),se=arguments.length;for(0===se?fe=Te=0:1===se?(fe=0,Te=V-ce):(fe=se-2,Te=$(W(u(X),0),V-ce)),m(V+fe-Te),$e=T(de,Te),ge=0;geV-Te+fe;ge--)w(de,ge-1)}else if(fe>Te)for(ge=V-Te;ge>ce;ge--)ot=ge+fe-1,(Et=ge+Te-1)in de?de[ot]=de[Et]:w(de,ot);for(ge=0;ge{"use strict";var r=s(90513),a=s(23634),c=Date,u=a(c.prototype.getTime);r({target:"Date",stat:!0},{now:function(){return u(new c)}})},68154:()=>{},33379:(E,C,s)=>{"use strict";var r=s(90513),a=s(44197);r({target:"Function",proto:!0,forced:Function.bind!==a},{bind:a})},75071:(E,C,s)=>{"use strict";var r=s(90513),a=s(7365),c=s(2543),u=s(25401),e=s(23634),f=s(55756),m=s(52208),T=s(74717),M=s(37591),w=s(32092),D=s(98535),U=String,W=a("JSON","stringify"),$=e(/./.exec),J=e("".charAt),F=e("".charCodeAt),X=e("".replace),de=e(1..toString),V=/[\uD800-\uDFFF]/g,ce=/^[\uD800-\uDBFF]$/,se=/^[\uDC00-\uDFFF]$/,fe=!D||f(function(){var Et=a("Symbol")("stringify detection");return"[null]"!==W([Et])||"{}"!==W({a:Et})||"{}"!==W(Object(Et))}),Te=f(function(){return'"\\udf06\\ud834"'!==W("\udf06\ud834")||'"\\udead"'!==W("\udead")}),$e=function(Et,ot){var ct=M(arguments),qe=w(ot);if(m(qe)||void 0!==Et&&!T(Et))return ct[1]=function(He,We){if(m(qe)&&(We=u(qe,this,U(He),We)),!T(We))return We},c(W,null,ct)},ge=function(Et,ot,ct){var qe=J(ct,ot-1),He=J(ct,ot+1);return $(ce,Et)&&!$(se,He)||$(se,Et)&&!$(ce,qe)?"\\u"+de(F(Et,0),16):Et};W&&r({target:"JSON",stat:!0,arity:3,forced:fe||Te},{stringify:function(ot,ct,qe){var He=M(arguments),We=c(fe?$e:W,null,He);return Te&&"string"==typeof We?X(We,V,ge):We}})},32300:(E,C,s)=>{"use strict";var r=s(70009);s(85681)(r.JSON,"JSON",!0)},83616:(E,C,s)=>{"use strict";s(85116)("Map",function(c){return function(){return c(this,arguments.length?arguments[0]:void 0)}},s(26650))},85140:(E,C,s)=>{"use strict";s(83616)},63603:()=>{},67234:(E,C,s)=>{"use strict";var r=s(90513),a=s(75791);r({target:"Object",stat:!0,arity:2,forced:Object.assign!==a},{assign:a})},86516:(E,C,s)=>{"use strict";s(90513)({target:"Object",stat:!0,sham:!s(49642)},{create:s(83272)})},36255:(E,C,s)=>{"use strict";var r=s(90513),a=s(49642),c=s(25913).f;r({target:"Object",stat:!0,forced:Object.defineProperties!==c,sham:!a},{defineProperties:c})},84468:(E,C,s)=>{"use strict";var r=s(90513),a=s(49642),c=s(48011).f;r({target:"Object",stat:!0,forced:Object.defineProperty!==c,sham:!a},{defineProperty:c})},86627:(E,C,s)=>{"use strict";var r=s(90513),a=s(55756),c=s(81010),u=s(25525).f,e=s(49642);r({target:"Object",stat:!0,forced:!e||a(function(){u(1)}),sham:!e},{getOwnPropertyDescriptor:function(T,M){return u(c(T),M)}})},78275:(E,C,s)=>{"use strict";var r=s(90513),a=s(49642),c=s(59823),u=s(81010),e=s(25525),f=s(46751);r({target:"Object",stat:!0,sham:!a},{getOwnPropertyDescriptors:function(T){for(var $,J,M=u(T),w=e.f,D=c(M),U={},W=0;D.length>W;)void 0!==(J=w(M,$=D[W++]))&&f(U,$,J);return U}})},37764:(E,C,s)=>{"use strict";var r=s(90513),a=s(98535),c=s(55756),u=s(47238),e=s(70267);r({target:"Object",stat:!0,forced:!a||c(function(){u.f(1)})},{getOwnPropertySymbols:function(T){var M=u.f;return M?M(e(T)):[]}})},31193:(E,C,s)=>{"use strict";var r=s(90513),a=s(55756),c=s(70267),u=s(31426),e=s(37112);r({target:"Object",stat:!0,forced:a(function(){u(1)}),sham:!e},{getPrototypeOf:function(T){return u(c(T))}})},56557:(E,C,s)=>{"use strict";var r=s(90513),a=s(70267),c=s(28474);r({target:"Object",stat:!0,forced:s(55756)(function(){c(1)})},{keys:function(m){return c(a(m))}})},17971:(E,C,s)=>{"use strict";s(90513)({target:"Object",stat:!0},{setPrototypeOf:s(54945)})},17221:()=>{},88923:(E,C,s)=>{"use strict";var r=s(90513),a=s(36805).values;r({target:"Object",stat:!0},{values:function(u){return a(u)}})},84798:(E,C,s)=>{"use strict";var r=s(90513),a=s(25401),c=s(61812),u=s(54256),e=s(26975),f=s(41605);r({target:"Promise",stat:!0,forced:s(95758)},{allSettled:function(M){var w=this,D=u.f(w),U=D.resolve,W=D.reject,$=e(function(){var J=c(w.resolve),F=[],X=0,de=1;f(M,function(V){var ce=X++,se=!1;de++,a(J,w,V).then(function(fe){se||(se=!0,F[ce]={status:"fulfilled",value:fe},--de||U(F))},function(fe){se||(se=!0,F[ce]={status:"rejected",reason:fe},--de||U(F))})}),--de||U(F)});return $.error&&W($.value),D.promise}})},58085:(E,C,s)=>{"use strict";var r=s(90513),a=s(25401),c=s(61812),u=s(54256),e=s(26975),f=s(41605);r({target:"Promise",stat:!0,forced:s(95758)},{all:function(M){var w=this,D=u.f(w),U=D.resolve,W=D.reject,$=e(function(){var J=c(w.resolve),F=[],X=0,de=1;f(M,function(V){var ce=X++,se=!1;de++,a(J,w,V).then(function(fe){se||(se=!0,F[ce]=fe,--de||U(F))},W)}),--de||U(F)});return $.error&&W($.value),D.promise}})},98857:(E,C,s)=>{"use strict";var r=s(90513),a=s(25401),c=s(61812),u=s(7365),e=s(54256),f=s(26975),m=s(41605),T=s(95758),M="No one promise resolved";r({target:"Promise",stat:!0,forced:T},{any:function(D){var U=this,W=u("AggregateError"),$=e.f(U),J=$.resolve,F=$.reject,X=f(function(){var de=c(U.resolve),V=[],ce=0,se=1,fe=!1;m(D,function(Te){var $e=ce++,ge=!1;se++,a(de,U,Te).then(function(Et){ge||fe||(fe=!0,J(Et))},function(Et){ge||fe||(ge=!0,V[$e]=Et,--se||F(new W(V,M)))})}),--se||F(new W(V,M))});return X.error&&F(X.value),$.promise}})},5846:(E,C,s)=>{"use strict";var r=s(90513),a=s(81124),c=s(9936).CONSTRUCTOR,u=s(46456),e=s(7365),f=s(52208),m=s(42915),T=u&&u.prototype;if(r({target:"Promise",proto:!0,forced:c,real:!0},{catch:function(w){return this.then(void 0,w)}}),!a&&f(u)){var M=e("Promise").prototype.catch;T.catch!==M&&m(T,"catch",M,{unsafe:!0})}},38206:(E,C,s)=>{"use strict";var Lr,ir,jr,r=s(90513),a=s(81124),c=s(3787),u=s(70009),e=s(25401),f=s(42915),m=s(54945),T=s(85681),M=s(58014),w=s(61812),D=s(52208),U=s(77293),W=s(54849),$=s(95869),J=s(37352).set,F=s(53460),X=s(52912),de=s(26975),V=s(70918),ce=s(91093),se=s(46456),fe=s(9936),Te=s(54256),$e="Promise",ge=fe.CONSTRUCTOR,Et=fe.REJECTION_EVENT,ot=fe.SUBCLASSING,ct=ce.getterFor($e),qe=ce.set,He=se&&se.prototype,We=se,Le=He,Pt=u.TypeError,it=u.document,Xt=u.process,cn=Te.f,pn=cn,Rn=!!(it&&it.createEvent&&u.dispatchEvent),At="unhandledrejection",br=function(kr){var Ei;return!(!U(kr)||!D(Ei=kr.then))&&Ei},ht=function(kr,Ei){var qr,Hi,Dn,ii=Ei.value,mr=1===Ei.state,pr=mr?kr.ok:kr.fail,Eo=kr.resolve,po=kr.reject,$i=kr.domain;try{pr?(mr||(2===Ei.rejection&&hr(Ei),Ei.rejection=1),!0===pr?qr=ii:($i&&$i.enter(),qr=pr(ii),$i&&($i.exit(),Dn=!0)),qr===kr.promise?po(Pt("Promise-chain cycle")):(Hi=br(qr))?e(Hi,qr,Eo,po):Eo(qr)):po(ii)}catch(Hn){$i&&!Dn&&$i.exit(),po(Hn)}},Wt=function(kr,Ei){kr.notified||(kr.notified=!0,F(function(){for(var mr,ii=kr.reactions;mr=ii.get();)ht(mr,kr);kr.notified=!1,Ei&&!kr.rejection&&wn(kr)}))},Tt=function(kr,Ei,ii){var mr,pr;Rn?((mr=it.createEvent("Event")).promise=Ei,mr.reason=ii,mr.initEvent(kr,!1,!0),u.dispatchEvent(mr)):mr={promise:Ei,reason:ii},!Et&&(pr=u["on"+kr])?pr(mr):kr===At&&X("Unhandled promise rejection",ii)},wn=function(kr){e(J,u,function(){var pr,Ei=kr.facade,ii=kr.value;if(jn(kr)&&(pr=de(function(){c?Xt.emit("unhandledRejection",ii,Ei):Tt(At,Ei,ii)}),kr.rejection=c||jn(kr)?2:1,pr.error))throw pr.value})},jn=function(kr){return 1!==kr.rejection&&!kr.parent},hr=function(kr){e(J,u,function(){var Ei=kr.facade;c?Xt.emit("rejectionHandled",Ei):Tt("rejectionhandled",Ei,kr.value)})},Oi=function(kr,Ei,ii){return function(mr){kr(Ei,mr,ii)}},Wi=function(kr,Ei,ii){kr.done||(kr.done=!0,ii&&(kr=ii),kr.value=Ei,kr.state=2,Wt(kr,!0))},so=function(kr,Ei,ii){if(!kr.done){kr.done=!0,ii&&(kr=ii);try{if(kr.facade===Ei)throw Pt("Promise can't be resolved itself");var mr=br(Ei);mr?F(function(){var pr={done:!1};try{e(mr,Ei,Oi(so,pr,kr),Oi(Wi,pr,kr))}catch(Eo){Wi(pr,Eo,kr)}}):(kr.value=Ei,kr.state=1,Wt(kr,!1))}catch(pr){Wi({done:!1},pr,kr)}}};if(ge&&(We=function(Ei){W(this,Le),w(Ei),e(Lr,this);var ii=ct(this);try{Ei(Oi(so,ii),Oi(Wi,ii))}catch(mr){Wi(ii,mr)}},(Lr=function(Ei){qe(this,{type:$e,done:!1,notified:!1,parent:!1,reactions:new V,rejection:!1,state:0,value:void 0})}).prototype=f(Le=We.prototype,"then",function(Ei,ii){var mr=ct(this),pr=cn($(this,We));return mr.parent=!0,pr.ok=!D(Ei)||Ei,pr.fail=D(ii)&&ii,pr.domain=c?Xt.domain:void 0,0===mr.state?mr.reactions.add(pr):F(function(){ht(pr,mr)}),pr.promise}),ir=function(){var kr=new Lr,Ei=ct(kr);this.promise=kr,this.resolve=Oi(so,Ei),this.reject=Oi(Wi,Ei)},Te.f=cn=function(kr){return kr===We||void 0===kr?new ir(kr):pn(kr)},!a&&D(se)&&He!==Object.prototype)){jr=He.then,ot||f(He,"then",function(Ei,ii){var mr=this;return new We(function(pr,Eo){e(jr,mr,pr,Eo)}).then(Ei,ii)},{unsafe:!0});try{delete He.constructor}catch{}m&&m(He,Le)}r({global:!0,constructor:!0,wrap:!0,forced:ge},{Promise:We}),T(We,$e,!1,!0),M($e)},30185:(E,C,s)=>{"use strict";var r=s(90513),a=s(81124),c=s(46456),u=s(55756),e=s(7365),f=s(52208),m=s(95869),T=s(25524),M=s(42915),w=c&&c.prototype;if(r({target:"Promise",proto:!0,real:!0,forced:!!c&&u(function(){w.finally.call({then:function(){}},function(){})})},{finally:function(W){var $=m(this,e("Promise")),J=f(W);return this.then(J?function(F){return T($,W()).then(function(){return F})}:W,J?function(F){return T($,W()).then(function(){throw F})}:W)}}),!a&&f(c)){var U=e("Promise").prototype.finally;w.finally!==U&&M(w,"finally",U,{unsafe:!0})}},66793:(E,C,s)=>{"use strict";s(38206),s(58085),s(5846),s(44738),s(74767),s(4991)},44738:(E,C,s)=>{"use strict";var r=s(90513),a=s(25401),c=s(61812),u=s(54256),e=s(26975),f=s(41605);r({target:"Promise",stat:!0,forced:s(95758)},{race:function(M){var w=this,D=u.f(w),U=D.reject,W=e(function(){var $=c(w.resolve);f(M,function(J){a($,w,J).then(D.resolve,U)})});return W.error&&U(W.value),D.promise}})},74767:(E,C,s)=>{"use strict";var r=s(90513),a=s(25401),c=s(54256);r({target:"Promise",stat:!0,forced:s(9936).CONSTRUCTOR},{reject:function(f){var m=c.f(this);return a(m.reject,void 0,f),m.promise}})},4991:(E,C,s)=>{"use strict";var r=s(90513),a=s(7365),c=s(81124),u=s(46456),e=s(9936).CONSTRUCTOR,f=s(25524),m=a("Promise"),T=c&&!e;r({target:"Promise",stat:!0,forced:c||e},{resolve:function(w){return f(T&&this===m?u:this,w)}})},19539:(E,C,s)=>{"use strict";var r=s(90513),a=s(7365),c=s(2543),u=s(44197),e=s(54356),f=s(64562),m=s(77293),T=s(83272),M=s(55756),w=a("Reflect","construct"),D=Object.prototype,U=[].push,W=M(function(){function F(){}return!(w(function(){},[],F)instanceof F)}),$=!M(function(){w(function(){})}),J=W||$;r({target:"Reflect",stat:!0,forced:J,sham:J},{construct:function(X,de){e(X),f(de);var V=arguments.length<3?X:e(arguments[2]);if($&&!W)return w(X,de,V);if(X===V){switch(de.length){case 0:return new X;case 1:return new X(de[0]);case 2:return new X(de[0],de[1]);case 3:return new X(de[0],de[1],de[2]);case 4:return new X(de[0],de[1],de[2],de[3])}var ce=[null];return c(U,ce,de),new(c(u,X,ce))}var se=V.prototype,fe=T(m(se)?se:D),Te=c(X,fe,de);return m(Te)?Te:fe}})},60851:(E,C,s)=>{"use strict";var r=s(90513),a=s(25401),c=s(77293),u=s(64562),e=s(27029),f=s(25525),m=s(31426);r({target:"Reflect",stat:!0},{get:function T(M,w){var U,W,D=arguments.length<3?M:arguments[2];return u(M)===D?M[w]:(U=f.f(M,w))?e(U)?U.value:void 0===U.get?void 0:a(U.get,D):c(W=m(M))?T(W,w,D):void 0}})},44864:()=>{},97764:(E,C,s)=>{"use strict";var r=s(90513),a=s(23634),c=s(56421),u=s(67917),e=s(41433),f=s(79668),m=a("".indexOf);r({target:"String",proto:!0,forced:!f("includes")},{includes:function(M){return!!~m(e(u(this)),e(c(M)),arguments.length>1?arguments[1]:void 0)}})},3934:(E,C,s)=>{"use strict";var r=s(61557).charAt,a=s(41433),c=s(91093),u=s(79077),e=s(28738),f="String Iterator",m=c.set,T=c.getterFor(f);u(String,"String",function(M){m(this,{type:f,string:a(M),index:0})},function(){var W,w=T(this),D=w.string,U=w.index;return U>=D.length?e(void 0,!0):(W=r(D,U),w.index+=W.length,e(W,!1))})},3588:(E,C,s)=>{"use strict";s(90513)({target:"String",proto:!0},{repeat:s(53411)})},24655:(E,C,s)=>{"use strict";var J,r=s(90513),a=s(64350),c=s(25525).f,u=s(48869),e=s(41433),f=s(56421),m=s(67917),T=s(79668),M=s(81124),w=a("".startsWith),D=a("".slice),U=Math.min,W=T("startsWith");r({target:"String",proto:!0,forced:!(!M&&!W&&(J=c(String.prototype,"startsWith"),J&&!J.writable)||W)},{startsWith:function(F){var X=e(m(this));f(F);var de=u(U(arguments.length>1?arguments[1]:void 0,X.length)),V=e(F);return w?w(X,V,de):D(X,de,de+V.length)===V}})},90451:(E,C,s)=>{"use strict";var r=s(90513),a=s(89858).trim;r({target:"String",proto:!0,forced:s(85462)("trim")},{trim:function(){return a(this)}})},16426:(E,C,s)=>{"use strict";s(25374)("asyncIterator")},17858:(E,C,s)=>{"use strict";var r=s(90513),a=s(70009),c=s(25401),u=s(23634),e=s(81124),f=s(49642),m=s(98535),T=s(55756),M=s(80112),w=s(23336),D=s(64562),U=s(81010),W=s(62939),$=s(41433),J=s(51361),F=s(83272),X=s(28474),de=s(51518),V=s(62469),ce=s(47238),se=s(25525),fe=s(48011),Te=s(25913),$e=s(25558),ge=s(42915),Et=s(1707),ot=s(64579),ct=s(86066),qe=s(45599),He=s(13708),We=s(91840),Le=s(89734),Pt=s(25374),it=s(56992),Xt=s(85681),cn=s(91093),pn=s(68607).forEach,Rn=ct("hidden"),At="Symbol",qt="prototype",sn=cn.set,fn=cn.getterFor(At),xn=Object[qt],Kr=a.Symbol,Or=Kr&&Kr[qt],Lr=a.TypeError,ir=a.QObject,Qr=se.f,jr=fe.f,br=V.f,ht=$e.f,Wt=u([].push),Tt=ot("symbols"),wn=ot("op-symbols"),jn=ot("wks"),hr=!ir||!ir[qt]||!ir[qt].findChild,Oi=f&&T(function(){return 7!==F(jr({},"a",{get:function(){return jr(this,"a",{value:7}).a}})).a})?function(po,$i,qr){var Hi=Qr(xn,$i);Hi&&delete xn[$i],jr(po,$i,qr),Hi&&po!==xn&&jr(xn,$i,Hi)}:jr,Wi=function(po,$i){var qr=Tt[po]=F(Or);return sn(qr,{type:At,tag:po,description:$i}),f||(qr.description=$i),qr},so=function($i,qr,Hi){$i===xn&&so(wn,qr,Hi),D($i);var Dn=W(qr);return D(Hi),M(Tt,Dn)?(Hi.enumerable?(M($i,Rn)&&$i[Rn][Dn]&&($i[Rn][Dn]=!1),Hi=F(Hi,{enumerable:J(0,!1)})):(M($i,Rn)||jr($i,Rn,J(1,{})),$i[Rn][Dn]=!0),Oi($i,Dn,Hi)):jr($i,Dn,Hi)},kr=function($i,qr){D($i);var Hi=U(qr),Dn=X(Hi).concat(Eo(Hi));return pn(Dn,function(Hn){(!f||c(ii,Hi,Hn))&&so($i,Hn,Hi[Hn])}),$i},ii=function($i){var qr=W($i),Hi=c(ht,this,qr);return!(this===xn&&M(Tt,qr)&&!M(wn,qr))&&(!(Hi||!M(this,qr)||!M(Tt,qr)||M(this,Rn)&&this[Rn][qr])||Hi)},mr=function($i,qr){var Hi=U($i),Dn=W(qr);if(Hi!==xn||!M(Tt,Dn)||M(wn,Dn)){var Hn=Qr(Hi,Dn);return Hn&&M(Tt,Dn)&&!(M(Hi,Rn)&&Hi[Rn][Dn])&&(Hn.enumerable=!0),Hn}},pr=function($i){var qr=br(U($i)),Hi=[];return pn(qr,function(Dn){!M(Tt,Dn)&&!M(qe,Dn)&&Wt(Hi,Dn)}),Hi},Eo=function(po){var $i=po===xn,qr=br($i?wn:U(po)),Hi=[];return pn(qr,function(Dn){M(Tt,Dn)&&(!$i||M(xn,Dn))&&Wt(Hi,Tt[Dn])}),Hi};m||(ge(Or=(Kr=function(){if(w(Or,this))throw Lr("Symbol is not a constructor");var $i=arguments.length&&void 0!==arguments[0]?$(arguments[0]):void 0,qr=He($i),Hi=function(Dn){this===xn&&c(Hi,wn,Dn),M(this,Rn)&&M(this[Rn],qr)&&(this[Rn][qr]=!1),Oi(this,qr,J(1,Dn))};return f&&hr&&Oi(xn,qr,{configurable:!0,set:Hi}),Wi(qr,$i)})[qt],"toString",function(){return fn(this).tag}),ge(Kr,"withoutSetter",function(po){return Wi(He(po),po)}),$e.f=ii,fe.f=so,Te.f=kr,se.f=mr,de.f=V.f=pr,ce.f=Eo,Le.f=function(po){return Wi(We(po),po)},f&&(Et(Or,"description",{configurable:!0,get:function(){return fn(this).description}}),e||ge(xn,"propertyIsEnumerable",ii,{unsafe:!0}))),r({global:!0,constructor:!0,wrap:!0,forced:!m,sham:!m},{Symbol:Kr}),pn(X(jn),function(po){Pt(po)}),r({target:At,stat:!0,forced:!m},{useSetter:function(){hr=!0},useSimple:function(){hr=!1}}),r({target:"Object",stat:!0,forced:!m,sham:!f},{create:function($i,qr){return void 0===qr?F($i):kr(F($i),qr)},defineProperty:so,defineProperties:kr,getOwnPropertyDescriptor:mr}),r({target:"Object",stat:!0,forced:!m},{getOwnPropertyNames:pr}),it(),Xt(Kr,At),qe[Rn]=!0},1172:()=>{},12353:(E,C,s)=>{"use strict";var r=s(90513),a=s(7365),c=s(80112),u=s(41433),e=s(64579),f=s(56709),m=e("string-to-symbol-registry"),T=e("symbol-to-string-registry");r({target:"Symbol",stat:!0,forced:!f},{for:function(M){var w=u(M);if(c(m,w))return m[w];var D=a("Symbol")(w);return m[w]=D,T[D]=w,D}})},99579:(E,C,s)=>{"use strict";s(25374)("hasInstance")},41258:(E,C,s)=>{"use strict";s(25374)("isConcatSpreadable")},2383:(E,C,s)=>{"use strict";s(25374)("iterator")},56728:(E,C,s)=>{"use strict";s(17858),s(12353),s(27632),s(75071),s(37764)},27632:(E,C,s)=>{"use strict";var r=s(90513),a=s(80112),c=s(74717),u=s(7378),e=s(64579),f=s(56709),m=e("symbol-to-string-registry");r({target:"Symbol",stat:!0,forced:!f},{keyFor:function(M){if(!c(M))throw TypeError(u(M)+" is not a symbol");if(a(m,M))return m[M]}})},64776:(E,C,s)=>{"use strict";s(25374)("matchAll")},44339:(E,C,s)=>{"use strict";s(25374)("match")},88215:(E,C,s)=>{"use strict";s(25374)("replace")},65389:(E,C,s)=>{"use strict";s(25374)("search")},12733:(E,C,s)=>{"use strict";s(25374)("species")},97977:(E,C,s)=>{"use strict";s(25374)("split")},59792:(E,C,s)=>{"use strict";var r=s(25374),a=s(56992);r("toPrimitive"),a()},60242:(E,C,s)=>{"use strict";var r=s(7365),a=s(25374),c=s(85681);a("toStringTag"),c(r("Symbol"),"Symbol")},26291:(E,C,s)=>{"use strict";s(25374)("unscopables")},67670:(E,C,s)=>{"use strict";s(10901)},43548:(E,C,s)=>{"use strict";var r=s(91840),a=s(48011).f,c=r("metadata"),u=Function.prototype;void 0===u[c]&&a(u,c,{value:null})},10509:(E,C,s)=>{"use strict";var r=s(90513),a=s(64902),c=s(60077).remove;r({target:"Map",proto:!0,real:!0,forced:!0},{deleteAll:function(){for(var m,e=a(this),f=!0,T=0,M=arguments.length;T{"use strict";var r=s(90513),a=s(64902),c=s(60077),u=c.get,e=c.has,f=c.set;r({target:"Map",proto:!0,real:!0,forced:!0},{emplace:function(T,M){var D,U,w=a(this);return e(w,T)?(D=u(w,T),"update"in M&&(D=M.update(D,T,w),f(w,T,D)),D):(U=M.insert(T,w),f(w,T,U),U)}})},54547:(E,C,s)=>{"use strict";var r=s(90513),a=s(76781),c=s(64902),u=s(21515);r({target:"Map",proto:!0,real:!0,forced:!0},{every:function(f){var m=c(this),T=a(f,arguments.length>1?arguments[1]:void 0);return!1!==u(m,function(M,w){if(!T(M,w,m))return!1},!0)}})},68996:(E,C,s)=>{"use strict";var r=s(90513),a=s(76781),c=s(64902),u=s(60077),e=s(21515),f=u.Map,m=u.set;r({target:"Map",proto:!0,real:!0,forced:!0},{filter:function(M){var w=c(this),D=a(M,arguments.length>1?arguments[1]:void 0),U=new f;return e(w,function(W,$){D(W,$,w)&&m(U,$,W)}),U}})},60176:(E,C,s)=>{"use strict";var r=s(90513),a=s(76781),c=s(64902),u=s(21515);r({target:"Map",proto:!0,real:!0,forced:!0},{findKey:function(f){var m=c(this),T=a(f,arguments.length>1?arguments[1]:void 0),M=u(m,function(w,D){if(T(w,D,m))return{key:D}},!0);return M&&M.key}})},1530:(E,C,s)=>{"use strict";var r=s(90513),a=s(76781),c=s(64902),u=s(21515);r({target:"Map",proto:!0,real:!0,forced:!0},{find:function(f){var m=c(this),T=a(f,arguments.length>1?arguments[1]:void 0),M=u(m,function(w,D){if(T(w,D,m))return{value:w}},!0);return M&&M.value}})},78271:(E,C,s)=>{"use strict";s(90513)({target:"Map",stat:!0,forced:!0},{from:s(83483)})},41554:(E,C,s)=>{"use strict";var r=s(90513),a=s(23634),c=s(61812),u=s(67917),e=s(41605),f=s(60077),m=s(81124),T=f.Map,M=f.has,w=f.get,D=f.set,U=a([].push);r({target:"Map",stat:!0,forced:m},{groupBy:function($,J){u($),c(J);var F=new T,X=0;return e($,function(de){var V=J(de,X++);M(F,V)?U(w(F,V),de):D(F,V,[de])}),F}})},41688:(E,C,s)=>{"use strict";var r=s(90513),a=s(29627),c=s(64902),u=s(21515);r({target:"Map",proto:!0,real:!0,forced:!0},{includes:function(f){return!0===u(c(this),function(m){if(a(m,f))return!0},!0)}})},92847:(E,C,s)=>{"use strict";var r=s(90513),a=s(25401),c=s(41605),u=s(52208),e=s(61812),f=s(60077).Map;r({target:"Map",stat:!0,forced:!0},{keyBy:function(T,M){var D=new(u(this)?this:f);e(M);var U=e(D.set);return c(T,function(W){a(U,D,M(W),W)}),D}})},17316:(E,C,s)=>{"use strict";var r=s(90513),a=s(64902),c=s(21515);r({target:"Map",proto:!0,real:!0,forced:!0},{keyOf:function(e){var f=c(a(this),function(m,T){if(m===e)return{key:T}},!0);return f&&f.key}})},58786:(E,C,s)=>{"use strict";var r=s(90513),a=s(76781),c=s(64902),u=s(60077),e=s(21515),f=u.Map,m=u.set;r({target:"Map",proto:!0,real:!0,forced:!0},{mapKeys:function(M){var w=c(this),D=a(M,arguments.length>1?arguments[1]:void 0),U=new f;return e(w,function(W,$){m(U,D(W,$,w),W)}),U}})},51943:(E,C,s)=>{"use strict";var r=s(90513),a=s(76781),c=s(64902),u=s(60077),e=s(21515),f=u.Map,m=u.set;r({target:"Map",proto:!0,real:!0,forced:!0},{mapValues:function(M){var w=c(this),D=a(M,arguments.length>1?arguments[1]:void 0),U=new f;return e(w,function(W,$){m(U,$,D(W,$,w))}),U}})},12783:(E,C,s)=>{"use strict";var r=s(90513),a=s(64902),c=s(41605),u=s(60077).set;r({target:"Map",proto:!0,real:!0,arity:1,forced:!0},{merge:function(f){for(var m=a(this),T=arguments.length,M=0;M{"use strict";s(90513)({target:"Map",stat:!0,forced:!0},{of:s(13067)})},69773:(E,C,s)=>{"use strict";var r=s(90513),a=s(61812),c=s(64902),u=s(21515),e=TypeError;r({target:"Map",proto:!0,real:!0,forced:!0},{reduce:function(m){var T=c(this),M=arguments.length<2,w=M?void 0:arguments[1];if(a(m),u(T,function(D,U){M?(M=!1,w=D):w=m(w,D,U,T)}),M)throw e("Reduce of empty map with no initial value");return w}})},22337:(E,C,s)=>{"use strict";var r=s(90513),a=s(76781),c=s(64902),u=s(21515);r({target:"Map",proto:!0,real:!0,forced:!0},{some:function(f){var m=c(this),T=a(f,arguments.length>1?arguments[1]:void 0);return!0===u(m,function(M,w){if(T(M,w,m))return!0},!0)}})},84131:(E,C,s)=>{"use strict";s(90513)({target:"Map",proto:!0,real:!0,name:"upsert",forced:!0},{updateOrInsert:s(57729)})},40199:(E,C,s)=>{"use strict";var r=s(90513),a=s(61812),c=s(64902),u=s(60077),e=TypeError,f=u.get,m=u.has,T=u.set;r({target:"Map",proto:!0,real:!0,forced:!0},{update:function(w,D){var U=c(this),W=arguments.length;a(D);var $=m(U,w);if(!$&&W<3)throw e("Updating absent value");var J=$?f(U,w):a(W>2?arguments[2]:void 0)(w,U);return T(U,w,D(J,w,U)),U}})},69046:(E,C,s)=>{"use strict";s(90513)({target:"Map",proto:!0,real:!0,forced:!0},{upsert:s(57729)})},61127:(E,C,s)=>{"use strict";s(84798)},45975:(E,C,s)=>{"use strict";s(98857)},93114:(E,C,s)=>{"use strict";var r=s(90513),a=s(54256),c=s(26975);r({target:"Promise",stat:!0,forced:!0},{try:function(u){var e=a.f(this),f=c(u);return(f.error?e.reject:e.resolve)(f.value),e.promise}})},68333:(E,C,s)=>{"use strict";var r=s(90513),a=s(54256);r({target:"Promise",stat:!0},{withResolvers:function(){var u=a.f(this);return{promise:u.promise,resolve:u.resolve,reject:u.reject}}})},55461:(E,C,s)=>{"use strict";s(25374)("asyncDispose")},5737:(E,C,s)=>{"use strict";s(25374)("dispose")},70337:(E,C,s)=>{"use strict";s(90513)({target:"Symbol",stat:!0},{isRegisteredSymbol:s(86475)})},61652:(E,C,s)=>{"use strict";s(90513)({target:"Symbol",stat:!0,name:"isRegisteredSymbol"},{isRegistered:s(86475)})},44388:(E,C,s)=>{"use strict";s(90513)({target:"Symbol",stat:!0,forced:!0},{isWellKnownSymbol:s(74110)})},90791:(E,C,s)=>{"use strict";s(90513)({target:"Symbol",stat:!0,name:"isWellKnownSymbol",forced:!0},{isWellKnown:s(74110)})},87097:(E,C,s)=>{"use strict";s(25374)("matcher")},29559:(E,C,s)=>{"use strict";s(25374)("metadataKey")},71985:(E,C,s)=>{"use strict";s(25374)("metadata")},90212:(E,C,s)=>{"use strict";s(25374)("observable")},93770:(E,C,s)=>{"use strict";s(25374)("patternMatch")},47743:(E,C,s)=>{"use strict";s(25374)("replaceAll")},33089:(E,C,s)=>{"use strict";s(1285);var r=s(44125),a=s(70009),c=s(35329),u=s(65162),e=s(84394),m=s(91840)("toStringTag");for(var T in r){var M=a[T],w=M&&M.prototype;w&&c(w)!==m&&u(w,m,T),e[T]=e.Array}},94784:(E,C,s)=>{"use strict";var r=s(90513),a=s(70009),u=s(53814)(a.setInterval,!0);r({global:!0,bind:!0,forced:a.setInterval!==u},{setInterval:u})},36445:(E,C,s)=>{"use strict";var r=s(90513),a=s(70009),u=s(53814)(a.setTimeout,!0);r({global:!0,bind:!0,forced:a.setTimeout!==u},{setTimeout:u})},69280:(E,C,s)=>{"use strict";s(94784),s(36445)},73842:(E,C,s)=>{"use strict";s(1285);var r=s(90513),a=s(70009),c=s(25401),u=s(23634),e=s(49642),f=s(54933),m=s(42915),T=s(1707),M=s(84604),w=s(85681),D=s(14554),U=s(91093),W=s(54849),$=s(52208),J=s(80112),F=s(76781),X=s(35329),de=s(64562),V=s(77293),ce=s(41433),se=s(83272),fe=s(51361),Te=s(88055),$e=s(34014),ge=s(15086),Et=s(91840),ot=s(84865),ct=Et("iterator"),qe="URLSearchParams",He=qe+"Iterator",We=U.set,Le=U.getterFor(qe),Pt=U.getterFor(He),it=Object.getOwnPropertyDescriptor,Xt=function(Dn){if(!e)return a[Dn];var Hn=it(a,Dn);return Hn&&Hn.value},cn=Xt("fetch"),pn=Xt("Request"),Rn=Xt("Headers"),At=pn&&pn.prototype,qt=Rn&&Rn.prototype,sn=a.RegExp,fn=a.TypeError,xn=a.decodeURIComponent,Kr=a.encodeURIComponent,Or=u("".charAt),Lr=u([].join),ir=u([].push),Qr=u("".replace),jr=u([].shift),br=u([].splice),ht=u("".split),Wt=u("".slice),Tt=/\+/g,wn=Array(4),jn=function(Dn){return wn[Dn-1]||(wn[Dn-1]=sn("((?:%[\\da-f]{2}){"+Dn+"})","gi"))},hr=function(Dn){try{return xn(Dn)}catch{return Dn}},Oi=function(Dn){var Hn=Qr(Dn,Tt," "),jt=4;try{return xn(Hn)}catch{for(;jt;)Hn=Qr(Hn,jn(jt--),hr);return Hn}},Wi=/[!'()~]|%20/g,so={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+"},kr=function(Dn){return so[Dn]},Ei=function(Dn){return Qr(Kr(Dn),Wi,kr)},ii=D(function(Hn,jt){We(this,{type:He,iterator:Te(Le(Hn).entries),kind:jt})},"Iterator",function(){var Hn=Pt(this),jt=Hn.kind,Fe=Hn.iterator.next(),Ie=Fe.value;return Fe.done||(Fe.value="keys"===jt?Ie.key:"values"===jt?Ie.value:[Ie.key,Ie.value]),Fe},!0),mr=function(Dn){this.entries=[],this.url=null,void 0!==Dn&&(V(Dn)?this.parseObject(Dn):this.parseQuery("string"==typeof Dn?"?"===Or(Dn,0)?Wt(Dn,1):Dn:ce(Dn)))};mr.prototype={type:qe,bindURL:function(Dn){this.url=Dn,this.update()},parseObject:function(Dn){var jt,Fe,Ie,et,ze,an,lt,Hn=$e(Dn);if(Hn)for(Fe=(jt=Te(Dn,Hn)).next;!(Ie=c(Fe,jt)).done;){if(et=Te(de(Ie.value)),(an=c(ze=et.next,et)).done||(lt=c(ze,et)).done||!c(ze,et).done)throw fn("Expected sequence with length 2");ir(this.entries,{key:ce(an.value),value:ce(lt.value)})}else for(var Rt in Dn)J(Dn,Rt)&&ir(this.entries,{key:Rt,value:ce(Dn[Rt])})},parseQuery:function(Dn){if(Dn)for(var Fe,Ie,Hn=ht(Dn,"&"),jt=0;jt0?arguments[0]:void 0));e||(this.size=jt.entries.length)},Eo=pr.prototype;if(M(Eo,{append:function(Hn,jt){var Fe=Le(this);ge(arguments.length,2),ir(Fe.entries,{key:ce(Hn),value:ce(jt)}),e||this.length++,Fe.updateURL()},delete:function(Dn){for(var Hn=Le(this),jt=ge(arguments.length,1),Fe=Hn.entries,Ie=ce(Dn),et=jt<2?void 0:arguments[1],ze=void 0===et?et:ce(et),an=0;anFe.key?1:-1}),Hn.updateURL()},forEach:function(Hn){for(var et,jt=Le(this).entries,Fe=F(Hn,arguments.length>1?arguments[1]:void 0),Ie=0;Ie1?qr(arguments[1]):{})}}),$(pn)){var Hi=function(Hn){return W(this,At),new pn(Hn,arguments.length>1?qr(arguments[1]):{})};At.constructor=Hi,Hi.prototype=At,r({global:!0,constructor:!0,dontCallGetSet:!0,forced:!0},{Request:Hi})}}E.exports={URLSearchParams:pr,getState:Le}},56247:()=>{},82842:()=>{},26953:(E,C,s)=>{"use strict";s(73842)},86023:()=>{},37256:(E,C,s)=>{"use strict";var r=s(90513),a=s(7365),c=s(55756),u=s(15086),e=s(41433),f=s(54933),m=a("URL");r({target:"URL",stat:!0,forced:!(f&&c(function(){m.canParse()}))},{canParse:function(w){var D=u(arguments.length,1),U=e(w),W=D<2||void 0===arguments[1]?void 0:e(arguments[1]);try{return!!new m(U,W)}catch{return!1}}})},80504:(E,C,s)=>{"use strict";s(3934);var Wi,r=s(90513),a=s(49642),c=s(54933),u=s(70009),e=s(76781),f=s(23634),m=s(42915),T=s(1707),M=s(54849),w=s(80112),D=s(75791),U=s(51923),W=s(8681),$=s(61557).codeAt,J=s(26662),F=s(41433),X=s(85681),de=s(15086),V=s(73842),ce=s(91093),se=ce.set,fe=ce.getterFor("URL"),Te=V.URLSearchParams,$e=V.getState,ge=u.URL,Et=u.TypeError,ot=u.parseInt,ct=Math.floor,qe=Math.pow,He=f("".charAt),We=f(/./.exec),Le=f([].join),Pt=f(1..toString),it=f([].pop),Xt=f([].push),cn=f("".replace),pn=f([].shift),Rn=f("".split),At=f("".slice),qt=f("".toLowerCase),sn=f([].unshift),xn="Invalid scheme",Kr="Invalid host",Or="Invalid port",Lr=/[a-z]/i,ir=/[\d+-.a-z]/i,Qr=/\d/,jr=/^0x/i,br=/^[0-7]+$/,ht=/^\d+$/,Wt=/^[\da-f]+$/i,Tt=/[\0\t\n\r #%/:<>?@[\\\]^|]/,wn=/[\0\t\n\r #/:<>?@[\\\]^|]/,jn=/^[\u0000-\u0020]+/,hr=/(^|[^\u0000-\u0020])[\u0000-\u0020]+$/,Oi=/[\t\n\r]/g,ii=function(dr){var Ni,ti,Vr,wi;if("number"==typeof dr){for(Ni=[],ti=0;ti<4;ti++)sn(Ni,dr%256),dr=ct(dr/256);return Le(Ni,".")}if("object"==typeof dr){for(Ni="",Vr=function(dr){for(var Ni=null,ti=1,Vr=null,wi=0,ji=0;ji<8;ji++)0!==dr[ji]?(wi>ti&&(Ni=Vr,ti=wi),Vr=null,wi=0):(null===Vr&&(Vr=ji),++wi);return wi>ti&&(Ni=Vr,ti=wi),Ni}(dr),ti=0;ti<8;ti++)wi&&0===dr[ti]||(wi&&(wi=!1),Vr===ti?(Ni+=ti?":":"::",wi=!0):(Ni+=Pt(dr[ti],16),ti<7&&(Ni+=":")));return"["+Ni+"]"}return dr},mr={},pr=D({},mr,{" ":1,'"':1,"<":1,">":1,"`":1}),Eo=D({},pr,{"#":1,"?":1,"{":1,"}":1}),po=D({},Eo,{"/":1,":":1,";":1,"=":1,"@":1,"[":1,"\\":1,"]":1,"^":1,"|":1}),$i=function(dr,Ni){var ti=$(dr,0);return ti>32&&ti<127&&!w(Ni,dr)?dr:encodeURIComponent(dr)},qr={ftp:21,file:null,http:80,https:443,ws:80,wss:443},Hi=function(dr,Ni){var ti;return 2===dr.length&&We(Lr,He(dr,0))&&(":"===(ti=He(dr,1))||!Ni&&"|"===ti)},Dn=function(dr){var Ni;return dr.length>1&&Hi(At(dr,0,2))&&(2===dr.length||"/"===(Ni=He(dr,2))||"\\"===Ni||"?"===Ni||"#"===Ni)},Hn=function(dr){return"."===dr||"%2e"===qt(dr)},jt=function(dr){return".."===(dr=qt(dr))||"%2e."===dr||".%2e"===dr||"%2e%2e"===dr},Fe={},Ie={},et={},ze={},an={},lt={},Rt={},Pe={},qn={},gr={},Pn={},_r={},Pr={},tr={},Zn={},nr={},Zt={},dn={},Ge={},Ot={},mn={},wr=function(dr,Ni,ti){var wi,ji,Vi,Vr=F(dr);if(Ni){if(ji=this.parse(Vr))throw Et(ji);this.searchParams=null}else{if(void 0!==ti&&(wi=new wr(ti,!0)),ji=this.parse(Vr,null,wi))throw Et(ji);(Vi=$e(new Te)).bindURL(this),this.searchParams=Vi}};wr.prototype={type:"URL",parse:function(dr,Ni,ti){var ro,Vt,bn,Bn,Vr=this,wi=Ni||Fe,ji=0,Vi="",Po=!1,ko=!1,Ir=!1;for(dr=F(dr),Ni||(Vr.scheme="",Vr.username="",Vr.password="",Vr.host=null,Vr.port=null,Vr.path=[],Vr.query=null,Vr.fragment=null,Vr.cannotBeABaseURL=!1,dr=cn(dr,jn,""),dr=cn(dr,hr,"$1")),dr=cn(dr,Oi,""),ro=U(dr);ji<=ro.length;){switch(Vt=ro[ji],wi){case Fe:if(!Vt||!We(Lr,Vt)){if(Ni)return xn;wi=et;continue}Vi+=qt(Vt),wi=Ie;break;case Ie:if(Vt&&(We(ir,Vt)||"+"===Vt||"-"===Vt||"."===Vt))Vi+=qt(Vt);else{if(":"!==Vt){if(Ni)return xn;Vi="",wi=et,ji=0;continue}if(Ni&&(Vr.isSpecial()!==w(qr,Vi)||"file"===Vi&&(Vr.includesCredentials()||null!==Vr.port)||"file"===Vr.scheme&&!Vr.host))return;if(Vr.scheme=Vi,Ni)return void(Vr.isSpecial()&&qr[Vr.scheme]===Vr.port&&(Vr.port=null));Vi="","file"===Vr.scheme?wi=tr:Vr.isSpecial()&&ti&&ti.scheme===Vr.scheme?wi=ze:Vr.isSpecial()?wi=Pe:"/"===ro[ji+1]?(wi=an,ji++):(Vr.cannotBeABaseURL=!0,Xt(Vr.path,""),wi=Ge)}break;case et:if(!ti||ti.cannotBeABaseURL&&"#"!==Vt)return xn;if(ti.cannotBeABaseURL&&"#"===Vt){Vr.scheme=ti.scheme,Vr.path=W(ti.path),Vr.query=ti.query,Vr.fragment="",Vr.cannotBeABaseURL=!0,wi=mn;break}wi="file"===ti.scheme?tr:lt;continue;case ze:if("/"!==Vt||"/"!==ro[ji+1]){wi=lt;continue}wi=qn,ji++;break;case an:if("/"===Vt){wi=gr;break}wi=dn;continue;case lt:if(Vr.scheme=ti.scheme,Vt===Wi)Vr.username=ti.username,Vr.password=ti.password,Vr.host=ti.host,Vr.port=ti.port,Vr.path=W(ti.path),Vr.query=ti.query;else if("/"===Vt||"\\"===Vt&&Vr.isSpecial())wi=Rt;else if("?"===Vt)Vr.username=ti.username,Vr.password=ti.password,Vr.host=ti.host,Vr.port=ti.port,Vr.path=W(ti.path),Vr.query="",wi=Ot;else{if("#"!==Vt){Vr.username=ti.username,Vr.password=ti.password,Vr.host=ti.host,Vr.port=ti.port,Vr.path=W(ti.path),Vr.path.length--,wi=dn;continue}Vr.username=ti.username,Vr.password=ti.password,Vr.host=ti.host,Vr.port=ti.port,Vr.path=W(ti.path),Vr.query=ti.query,Vr.fragment="",wi=mn}break;case Rt:if(!Vr.isSpecial()||"/"!==Vt&&"\\"!==Vt){if("/"!==Vt){Vr.username=ti.username,Vr.password=ti.password,Vr.host=ti.host,Vr.port=ti.port,wi=dn;continue}wi=gr}else wi=qn;break;case Pe:if(wi=qn,"/"!==Vt||"/"!==He(Vi,ji+1))continue;ji++;break;case qn:if("/"!==Vt&&"\\"!==Vt){wi=gr;continue}break;case gr:if("@"===Vt){Po&&(Vi="%40"+Vi),Po=!0,bn=U(Vi);for(var ci=0;ci65535)return Or;Vr.port=Vr.isSpecial()&&es===qr[Vr.scheme]?null:es,Vi=""}if(Ni)return;wi=Zt;continue}return Or}Vi+=Vt;break;case tr:if(Vr.scheme="file","/"===Vt||"\\"===Vt)wi=Zn;else{if(!ti||"file"!==ti.scheme){wi=dn;continue}switch(Vt){case Wi:Vr.host=ti.host,Vr.path=W(ti.path),Vr.query=ti.query;break;case"?":Vr.host=ti.host,Vr.path=W(ti.path),Vr.query="",wi=Ot;break;case"#":Vr.host=ti.host,Vr.path=W(ti.path),Vr.query=ti.query,Vr.fragment="",wi=mn;break;default:Dn(Le(W(ro,ji),""))||(Vr.host=ti.host,Vr.path=W(ti.path),Vr.shortenPath()),wi=dn;continue}}break;case Zn:if("/"===Vt||"\\"===Vt){wi=nr;break}ti&&"file"===ti.scheme&&!Dn(Le(W(ro,ji),""))&&(Hi(ti.path[0],!0)?Xt(Vr.path,ti.path[0]):Vr.host=ti.host),wi=dn;continue;case nr:if(Vt===Wi||"/"===Vt||"\\"===Vt||"?"===Vt||"#"===Vt){if(!Ni&&Hi(Vi))wi=dn;else if(""===Vi){if(Vr.host="",Ni)return;wi=Zt}else{if(Bn=Vr.parseHost(Vi))return Bn;if("localhost"===Vr.host&&(Vr.host=""),Ni)return;Vi="",wi=Zt}continue}Vi+=Vt;break;case Zt:if(Vr.isSpecial()){if(wi=dn,"/"!==Vt&&"\\"!==Vt)continue}else if(Ni||"?"!==Vt)if(Ni||"#"!==Vt){if(Vt!==Wi&&(wi=dn,"/"!==Vt))continue}else Vr.fragment="",wi=mn;else Vr.query="",wi=Ot;break;case dn:if(Vt===Wi||"/"===Vt||"\\"===Vt&&Vr.isSpecial()||!Ni&&("?"===Vt||"#"===Vt)){if(jt(Vi)?(Vr.shortenPath(),"/"!==Vt&&!("\\"===Vt&&Vr.isSpecial())&&Xt(Vr.path,"")):Hn(Vi)?"/"!==Vt&&!("\\"===Vt&&Vr.isSpecial())&&Xt(Vr.path,""):("file"===Vr.scheme&&!Vr.path.length&&Hi(Vi)&&(Vr.host&&(Vr.host=""),Vi=He(Vi,0)+":"),Xt(Vr.path,Vi)),Vi="","file"===Vr.scheme&&(Vt===Wi||"?"===Vt||"#"===Vt))for(;Vr.path.length>1&&""===Vr.path[0];)pn(Vr.path);"?"===Vt?(Vr.query="",wi=Ot):"#"===Vt&&(Vr.fragment="",wi=mn)}else Vi+=$i(Vt,Eo);break;case Ge:"?"===Vt?(Vr.query="",wi=Ot):"#"===Vt?(Vr.fragment="",wi=mn):Vt!==Wi&&(Vr.path[0]+=$i(Vt,mr));break;case Ot:Ni||"#"!==Vt?Vt!==Wi&&("'"===Vt&&Vr.isSpecial()?Vr.query+="%27":Vr.query+="#"===Vt?"%23":$i(Vt,mr)):(Vr.fragment="",wi=mn);break;case mn:Vt!==Wi&&(Vr.fragment+=$i(Vt,pr))}ji++}},parseHost:function(dr){var Ni,ti,Vr;if("["===He(dr,0)){if("]"!==He(dr,dr.length-1)||(Ni=function(dr){var ji,Vi,Po,ko,Ir,ro,Vt,Ni=[0,0,0,0,0,0,0,0],ti=0,Vr=null,wi=0,bn=function(){return He(dr,wi)};if(":"===bn()){if(":"!==He(dr,1))return;wi+=2,Vr=++ti}for(;bn();){if(8===ti)return;if(":"!==bn()){for(ji=Vi=0;Vi<4&&We(Wt,bn());)ji=16*ji+ot(bn(),16),wi++,Vi++;if("."===bn()){if(0===Vi||(wi-=Vi,ti>6))return;for(Po=0;bn();){if(ko=null,Po>0){if(!("."===bn()&&Po<4))return;wi++}if(!We(Qr,bn()))return;for(;We(Qr,bn());){if(Ir=ot(bn(),10),null===ko)ko=Ir;else{if(0===ko)return;ko=10*ko+Ir}if(ko>255)return;wi++}Ni[ti]=256*Ni[ti]+ko,(2==++Po||4===Po)&&ti++}if(4!==Po)return;break}if(":"===bn()){if(wi++,!bn())return}else if(bn())return;Ni[ti++]=ji}else{if(null!==Vr)return;wi++,Vr=++ti}}if(null!==Vr)for(ro=ti-Vr,ti=7;0!==ti&&ro>0;)Vt=Ni[ti],Ni[ti--]=Ni[Vr+ro-1],Ni[Vr+--ro]=Vt;else if(8!==ti)return;return Ni}(At(dr,1,-1)),!Ni))return Kr;this.host=Ni}else if(this.isSpecial()){if(dr=J(dr),We(Tt,dr)||(Ni=function(dr){var ti,Vr,wi,ji,Vi,Po,ko,Ni=Rn(dr,".");if(Ni.length&&""===Ni[Ni.length-1]&&Ni.length--,(ti=Ni.length)>4)return dr;for(Vr=[],wi=0;wi1&&"0"===He(ji,0)&&(Vi=We(jr,ji)?16:8,ji=At(ji,8===Vi?1:2)),""===ji)Po=0;else{if(!We(10===Vi?ht:8===Vi?br:Wt,ji))return dr;Po=ot(ji,Vi)}Xt(Vr,Po)}for(wi=0;wi=qe(256,5-ti))return null}else if(Po>255)return null;for(ko=it(Vr),wi=0;wi1?arguments[1]:void 0,wi=se(ti,new wr(Ni,!1,Vr));a||(ti.href=wi.serialize(),ti.origin=wi.getOrigin(),ti.protocol=wi.getProtocol(),ti.username=wi.getUsername(),ti.password=wi.getPassword(),ti.host=wi.getHost(),ti.hostname=wi.getHostname(),ti.port=wi.getPort(),ti.pathname=wi.getPathname(),ti.search=wi.getSearch(),ti.searchParams=wi.getSearchParams(),ti.hash=wi.getHash())},Ci=Ti.prototype,Ai=function(dr,Ni){return{get:function(){return fe(this)[dr]()},set:Ni&&function(ti){return fe(this)[Ni](ti)},configurable:!0,enumerable:!0}};if(a&&(T(Ci,"href",Ai("serialize","setHref")),T(Ci,"origin",Ai("getOrigin")),T(Ci,"protocol",Ai("getProtocol","setProtocol")),T(Ci,"username",Ai("getUsername","setUsername")),T(Ci,"password",Ai("getPassword","setPassword")),T(Ci,"host",Ai("getHost","setHost")),T(Ci,"hostname",Ai("getHostname","setHostname")),T(Ci,"port",Ai("getPort","setPort")),T(Ci,"pathname",Ai("getPathname","setPathname")),T(Ci,"search",Ai("getSearch","setSearch")),T(Ci,"searchParams",Ai("getSearchParams")),T(Ci,"hash",Ai("getHash","setHash"))),m(Ci,"toJSON",function(){return fe(this).serialize()},{enumerable:!0}),m(Ci,"toString",function(){return fe(this).serialize()},{enumerable:!0}),ge){var Ko=ge.createObjectURL,_s=ge.revokeObjectURL;Ko&&m(Ti,"createObjectURL",e(Ko,ge)),_s&&m(Ti,"revokeObjectURL",e(_s,ge))}X(Ti,"URL"),r({global:!0,constructor:!0,forced:!c,sham:!a},{URL:Ti})},95981:(E,C,s)=>{"use strict";s(80504)},71324:()=>{},75242:(E,C,s)=>{"use strict";var r=s(74771);E.exports=r},10323:(E,C,s)=>{"use strict";var r=s(8412);E.exports=r},99940:(E,C,s)=>{"use strict";var r=s(399);E.exports=r},89919:(E,C,s)=>{"use strict";var r=s(98812);E.exports=r},14869:(E,C,s)=>{"use strict";var r=s(33195);E.exports=r},4475:(E,C,s)=>{"use strict";var r=s(46332);E.exports=r},38762:(E,C,s)=>{"use strict";var r=s(42618);E.exports=r},8748:(E,C,s)=>{"use strict";var r=s(63791);s(33089),E.exports=r},71873:(E,C,s)=>{"use strict";var r=s(69029);E.exports=r},61599:(E,C,s)=>{"use strict";var r=s(28924);E.exports=r},34097:(E,C,s)=>{"use strict";s(33089);var r=s(35329),a=s(80112),c=s(23336),u=s(99940),e=Array.prototype,f={DOMTokenList:!0,NodeList:!0};E.exports=function(m){var T=m.entries;return m===e||c(e,m)&&T===e.entries||a(f,r(m))?u:T}},15149:(E,C,s)=>{"use strict";var r=s(98709);E.exports=r},83361:(E,C,s)=>{"use strict";var r=s(65991);E.exports=r},19095:(E,C,s)=>{"use strict";var r=s(64158);E.exports=r},71420:(E,C,s)=>{"use strict";var r=s(91799);E.exports=r},13178:(E,C,s)=>{"use strict";var r=s(26155);E.exports=r},52049:(E,C,s)=>{"use strict";s(33089);var r=s(35329),a=s(80112),c=s(23336),u=s(89919),e=Array.prototype,f={DOMTokenList:!0,NodeList:!0};E.exports=function(m){var T=m.forEach;return m===e||c(e,m)&&T===e.forEach||a(f,r(m))?u:T}},83655:(E,C,s)=>{"use strict";var r=s(33758);E.exports=r},87054:(E,C,s)=>{"use strict";var r=s(7592);E.exports=r},51946:(E,C,s)=>{"use strict";s(33089);var r=s(35329),a=s(80112),c=s(23336),u=s(14869),e=Array.prototype,f={DOMTokenList:!0,NodeList:!0};E.exports=function(m){var T=m.keys;return m===e||c(e,m)&&T===e.keys||a(f,r(m))?u:T}},40764:(E,C,s)=>{"use strict";var r=s(17480);E.exports=r},81214:(E,C,s)=>{"use strict";var r=s(20681);E.exports=r},30252:(E,C,s)=>{"use strict";var r=s(801);E.exports=r},50881:(E,C,s)=>{"use strict";var r=s(90949);E.exports=r},38813:(E,C,s)=>{"use strict";var r=s(99316);E.exports=r},45284:(E,C,s)=>{"use strict";var r=s(62212);E.exports=r},70157:(E,C,s)=>{"use strict";var r=s(49073);E.exports=r},3502:(E,C,s)=>{"use strict";var r=s(24146);E.exports=r},81610:(E,C,s)=>{"use strict";var r=s(40104);E.exports=r},19543:(E,C,s)=>{"use strict";var r=s(3555);E.exports=r},74046:(E,C,s)=>{"use strict";var r=s(42475);E.exports=r},13731:(E,C,s)=>{"use strict";var r=s(65786);E.exports=r},80129:(E,C,s)=>{"use strict";s(33089);var r=s(35329),a=s(80112),c=s(23336),u=s(4475),e=Array.prototype,f={DOMTokenList:!0,NodeList:!0};E.exports=function(m){var T=m.values;return m===e||c(e,m)&&T===e.values||a(f,r(m))?u:T}},43720:(E,C,s)=>{"use strict";var r=s(66306);E.exports=r},640:(E,C,s)=>{"use strict";var r=s(31845);s(33089),E.exports=r},50320:(E,C,s)=>{"use strict";var r=s(44168);E.exports=r},93006:(E,C,s)=>{"use strict";var r=s(25852);E.exports=r},36226:(E,C,s)=>{"use strict";var r=s(24457);E.exports=r},21968:(E,C,s)=>{"use strict";var r=s(99671);E.exports=r},87259:(E,C,s)=>{"use strict";var r=s(38007);E.exports=r},62021:(E,C,s)=>{"use strict";var r=s(57432);E.exports=r},57682:(E,C,s)=>{"use strict";var r=s(36541);E.exports=r},94222:(E,C,s)=>{"use strict";var r=s(17303);E.exports=r},1162:(E,C,s)=>{"use strict";var r=s(62149);E.exports=r},82805:(E,C,s)=>{"use strict";var r=s(86537);E.exports=r},70809:(E,C,s)=>{"use strict";var r=s(79553);E.exports=r},26498:(E,C,s)=>{"use strict";var r=s(80092);s(33089),E.exports=r},44850:(E,C,s)=>{"use strict";var r=s(472);E.exports=r},9634:(E,C,s)=>{"use strict";var r=s(4678);E.exports=r},12118:(E,C,s)=>{"use strict";s(69280);var r=s(13544);E.exports=r.setTimeout},96551:(E,C,s)=>{"use strict";var r=s(61697);s(33089),E.exports=r},98908:(E,C,s)=>{"use strict";var r=s(42497);s(33089),E.exports=r},55434:(E,C,s)=>{"use strict";var r=s(50681);E.exports=r},70906:(E,C,s)=>{"use strict";var r=s(75081);E.exports=r},41530:(E,C,s)=>{"use strict";s(26953),s(56247),s(82842),s(86023);var r=s(13544);E.exports=r.URLSearchParams},75081:(E,C,s)=>{"use strict";s(41530),s(95981),s(37256),s(71324);var r=s(13544);E.exports=r.URL},52243:function(E){var C;C=typeof global<"u"?global:this,E.exports=function(C){if(C.CSS&&C.CSS.escape)return C.CSS.escape;var s=function(r){if(0==arguments.length)throw new TypeError("`CSS.escape` requires an argument.");for(var e,a=String(r),c=a.length,u=-1,f="",m=a.charCodeAt(0);++u=1&&e<=31||127==e||0==u&&e>=48&&e<=57||1==u&&e>=48&&e<=57&&45==m?"\\"+e.toString(16)+" ":0==u&&1==c&&45==e||!(e>=128||45==e||95==e||e>=48&&e<=57||e>=65&&e<=90||e>=97&&e<=122)?"\\"+a.charAt(u):a.charAt(u):f+="\ufffd";return f};return C.CSS||(C.CSS={}),C.CSS.escape=s,s}(C)},97057:(E,C,s)=>{"use strict";s.d(C,{qY:()=>U});var r=function(){for(var V=0,ce=0,se=arguments.length;ce"u"&&typeof navigator<"u"&&"ReactNative"===navigator.product?new f:typeof navigator<"u"?J(navigator.userAgent):function X(){return typeof process<"u"&&process.version?new c(process.version.slice(1)):null}()}function J(V){var ce=function W(V){return""!==V&&w.reduce(function(ce,se){var fe=se[0];if(ce)return ce;var $e=se[1].exec(V);return!!$e&&[fe,$e]},!1)}(V);if(!ce)return null;var se=ce[0],fe=ce[1];if("searchbot"===se)return new e;var Te=fe[1]&&fe[1].split(/[._]/).slice(0,3);Te?Te.length1?Wt-1:0),wn=1;wn/gm),At=f(/^data-[\-\w.\u00B7-\uFFFF]/),qt=f(/^aria-[\-\w]+$/),sn=f(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|cid|xmpp):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),fn=f(/^(?:\w+script|data):/i),xn=f(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),Kr="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(br){return typeof br}:function(br){return br&&"function"==typeof Symbol&&br.constructor===Symbol&&br!==Symbol.prototype?"symbol":typeof br};function Or(br){if(Array.isArray(br)){for(var ht=0,Wt=Array(br.length);ht"u"?null:window},ir=function(ht,Wt){if("object"!==(typeof ht>"u"?"undefined":Kr(ht))||"function"!=typeof ht.createPolicy)return null;var Tt=null,wn="data-tt-policy-suffix";Wt.currentScript&&Wt.currentScript.hasAttribute(wn)&&(Tt=Wt.currentScript.getAttribute(wn));var jn="dompurify"+(Tt?"#"+Tt:"");try{return ht.createPolicy(jn,{createHTML:function(Oi){return Oi}})}catch{return console.warn("TrustedTypes policy "+jn+" could not be created."),null}};return function Qr(){var br=arguments.length>0&&void 0!==arguments[0]?arguments[0]:Lr(),ht=function(zr){return Qr(zr)};if(ht.version="2.3.3",ht.removed=[],!br||!br.document||9!==br.document.nodeType)return ht.isSupported=!1,ht;var Wt=br.document,Tt=br.document,wn=br.DocumentFragment,jn=br.HTMLTemplateElement,hr=br.Node,Oi=br.Element,Wi=br.NodeFilter,so=br.NamedNodeMap,kr=void 0===so?br.NamedNodeMap||br.MozNamedAttrMap:so,Ei=br.Text,ii=br.Comment,mr=br.DOMParser,pr=br.trustedTypes,Eo=Oi.prototype,po=ge(Eo,"cloneNode"),$i=ge(Eo,"nextSibling"),qr=ge(Eo,"childNodes"),Hi=ge(Eo,"parentNode");if("function"==typeof jn){var Dn=Tt.createElement("template");Dn.content&&Dn.content.ownerDocument&&(Tt=Dn.content.ownerDocument)}var Hn=ir(pr,Wt),jt=Hn&&wi?Hn.createHTML(""):"",Ie=Tt.implementation,et=Tt.createNodeIterator,ze=Tt.createDocumentFragment,an=Tt.getElementsByTagName,lt=Wt.importNode,Rt={};try{Rt=$e(Tt).documentMode?Tt.documentMode:{}}catch{}var Pe={};ht.isSupported="function"==typeof Hi&&Ie&&typeof Ie.createHTMLDocument<"u"&&9!==Rt;var qn=pn,gr=Rn,Pn=At,_r=qt,Pr=fn,tr=xn,Zn=sn,nr=null,Zt=Te({},[].concat(Or(Et),Or(ot),Or(ct),Or(He),Or(Le))),dn=null,Ge=Te({},[].concat(Or(Pt),Or(it),Or(Xt),Or(cn))),Ot=null,mn=null,wr=!0,Ti=!0,Ci=!1,Ai=!1,Ko=!1,_s=!1,dr=!1,Ni=!1,ti=!1,Vr=!0,wi=!1,ji=!0,Vi=!0,Po=!1,ko={},Ir=null,ro=Te({},["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"]),Vt=null,bn=Te({},["audio","video","img","source","image","track"]),Bn=null,ci=Te({},["alt","class","for","id","label","name","pattern","placeholder","role","summary","title","value","style","xmlns"]),_o="http://www.w3.org/1998/Math/MathML",go="http://www.w3.org/2000/svg",es="http://www.w3.org/1999/xhtml",ts=es,jo=!1,ss=void 0,gs=["application/xhtml+xml","text/html"],la=void 0,Ro=null,jl=Tt.createElement("form"),gl=function(zr){Ro&&Ro===zr||((!zr||"object"!==(typeof zr>"u"?"undefined":Kr(zr)))&&(zr={}),zr=$e(zr),nr="ALLOWED_TAGS"in zr?Te({},zr.ALLOWED_TAGS):Zt,dn="ALLOWED_ATTR"in zr?Te({},zr.ALLOWED_ATTR):Ge,Bn="ADD_URI_SAFE_ATTR"in zr?Te($e(ci),zr.ADD_URI_SAFE_ATTR):ci,Vt="ADD_DATA_URI_TAGS"in zr?Te($e(bn),zr.ADD_DATA_URI_TAGS):bn,Ir="FORBID_CONTENTS"in zr?Te({},zr.FORBID_CONTENTS):ro,Ot="FORBID_TAGS"in zr?Te({},zr.FORBID_TAGS):{},mn="FORBID_ATTR"in zr?Te({},zr.FORBID_ATTR):{},ko="USE_PROFILES"in zr&&zr.USE_PROFILES,wr=!1!==zr.ALLOW_ARIA_ATTR,Ti=!1!==zr.ALLOW_DATA_ATTR,Ci=zr.ALLOW_UNKNOWN_PROTOCOLS||!1,Ai=zr.SAFE_FOR_TEMPLATES||!1,Ko=zr.WHOLE_DOCUMENT||!1,Ni=zr.RETURN_DOM||!1,ti=zr.RETURN_DOM_FRAGMENT||!1,Vr=!1!==zr.RETURN_DOM_IMPORT,wi=zr.RETURN_TRUSTED_TYPE||!1,dr=zr.FORCE_BODY||!1,ji=!1!==zr.SANITIZE_DOM,Vi=!1!==zr.KEEP_CONTENT,Po=zr.IN_PLACE||!1,Zn=zr.ALLOWED_URI_REGEXP||Zn,ts=zr.NAMESPACE||es,ss=ss=-1===gs.indexOf(zr.PARSER_MEDIA_TYPE)?"text/html":zr.PARSER_MEDIA_TYPE,la="application/xhtml+xml"===ss?function(io){return io}:$,Ai&&(Ti=!1),ti&&(Ni=!0),ko&&(nr=Te({},[].concat(Or(Le))),dn=[],!0===ko.html&&(Te(nr,Et),Te(dn,Pt)),!0===ko.svg&&(Te(nr,ot),Te(dn,it),Te(dn,cn)),!0===ko.svgFilters&&(Te(nr,ct),Te(dn,it),Te(dn,cn)),!0===ko.mathMl&&(Te(nr,He),Te(dn,Xt),Te(dn,cn))),zr.ADD_TAGS&&(nr===Zt&&(nr=$e(nr)),Te(nr,zr.ADD_TAGS)),zr.ADD_ATTR&&(dn===Ge&&(dn=$e(dn)),Te(dn,zr.ADD_ATTR)),zr.ADD_URI_SAFE_ATTR&&Te(Bn,zr.ADD_URI_SAFE_ATTR),zr.FORBID_CONTENTS&&(Ir===ro&&(Ir=$e(Ir)),Te(Ir,zr.FORBID_CONTENTS)),Vi&&(nr["#text"]=!0),Ko&&Te(nr,["html","head","body"]),nr.table&&(Te(nr,["tbody"]),delete Ot.tbody),e&&e(zr),Ro=zr)},qa=Te({},["mi","mo","mn","ms","mtext"]),da=Te({},["foreignobject","desc","title","annotation-xml"]),$a=Te({},ot);Te($a,ct),Te($a,qe);var Rl=Te({},He);Te(Rl,We);var Ha=function(zr){W(ht.removed,{element:zr});try{zr.parentNode.removeChild(zr)}catch{try{zr.outerHTML=jt}catch{zr.remove()}}},Ts=function(zr,io){try{W(ht.removed,{attribute:io.getAttributeNode(zr),from:io})}catch{W(ht.removed,{attribute:null,from:io})}if(io.removeAttribute(zr),"is"===zr&&!dn[zr])if(Ni||ti)try{Ha(io)}catch{}else try{io.setAttribute(zr,"")}catch{}},hs=function(zr){var io=void 0,gt=void 0;if(dr)zr=""+zr;else{var Tn=J(zr,/^[\r\n\t ]+/);gt=Tn&&Tn[0]}"application/xhtml+xml"===ss&&(zr=''+zr+"");var ie=Hn?Hn.createHTML(zr):zr;if(ts===es)try{io=(new mr).parseFromString(ie,ss)}catch{}if(!io||!io.documentElement){io=Ie.createDocument(ts,"template",null);try{io.documentElement.innerHTML=jo?"":ie}catch{}}var Ze=io.body||io.documentElement;return zr&>&&Ze.insertBefore(Tt.createTextNode(gt),Ze.childNodes[0]||null),ts===es?an.call(io,Ko?"html":"body")[0]:Ko?io.documentElement:Ze},$s=function(zr){return et.call(zr.ownerDocument||zr,zr,Wi.SHOW_ELEMENT|Wi.SHOW_COMMENT|Wi.SHOW_TEXT,null,!1)},Ja=function(zr){return"object"===(typeof hr>"u"?"undefined":Kr(hr))?zr instanceof hr:zr&&"object"===(typeof zr>"u"?"undefined":Kr(zr))&&"number"==typeof zr.nodeType&&"string"==typeof zr.nodeName},fa=function(zr,io,gt){Pe[zr]&&D(Pe[zr],function(Tn){Tn.call(ht,io,gt,Ro)})},Xo=function(zr){var io=void 0;if(fa("beforeSanitizeElements",zr,null),function(zr){return!(zr instanceof Ei||zr instanceof ii||"string"==typeof zr.nodeName&&"string"==typeof zr.textContent&&"function"==typeof zr.removeChild&&zr.attributes instanceof kr&&"function"==typeof zr.removeAttribute&&"function"==typeof zr.setAttribute&&"string"==typeof zr.namespaceURI&&"function"==typeof zr.insertBefore)}(zr)||J(zr.nodeName,/[\u0080-\uFFFF]/))return Ha(zr),!0;var gt=la(zr.nodeName);if(fa("uponSanitizeElement",zr,{tagName:gt,allowedTags:nr}),!Ja(zr.firstElementChild)&&(!Ja(zr.content)||!Ja(zr.content.firstElementChild))&&V(/<[/\w]/g,zr.innerHTML)&&V(/<[/\w]/g,zr.textContent)||"select"===gt&&V(/