import{$n as e,$t as t,At as n,B as r,Bn as i,Bt as a,C as o,Cn as s,Ct as c,D as l,Dn as u,Dt as d,E as f,En as p,Et as m,F as h,Fn as g,Ft as _,G as v,Gn as y,Gt as b,Hn as x,Ht as S,In as ee,It as te,Jt as C,K as w,Kn as ne,Kt as re,Ln as ie,Lt as ae,Mn as oe,Mt as se,Nn as ce,Nt as le,O as ue,On as de,Ot as fe,Pn as T,Pt as pe,Q as E,Qn as me,Qt as D,Rn as he,Rt as ge,S as _e,Sn as O,St as k,T as ve,Tn as ye,Tt as be,U as xe,Un as Se,Ut as Ce,Vn as we,Vt as Te,Wn as Ee,Wt as De,Xn as Oe,Xt as ke,Yt as Ae,Zn as je,Zt as A,_n as j,_t as Me,a as Ne,an as Pe,at as Fe,b as Ie,bn as Le,bt as Re,c as ze,cn as Be,ct as Ve,d as M,dn as He,dt as Ue,en as We,er as Ge,fn as Ke,ft as N,gn as qe,gt as P,h as Je,hn as F,ht as Ye,i as Xe,in as I,it as Ze,j as Qe,jt as $e,kn as et,kt as tt,ln as nt,lt as rt,m as it,mn as at,mt as ot,n as st,nn as ct,nt as L,o as lt,on as ut,ot as dt,pn as ft,pt as R,qn as z,qt as B,r as pt,rn as V,rt as mt,s as ht,sn as gt,st as _t,tn as vt,tr as yt,tt as bt,u as H,un as xt,vn as St,vt as Ct,w as wt,wn as Tt,wt as Et,x as Dt,xn as Ot,yn as kt,yt as At,z as jt,zn as Mt,zt as Nt}from"./vendor-ag-grid~index~XmMajorFactor~XmConsultCategoryFactor~xmInfo~ZxFwView~HtFeeMethodTypeL~h29xz5eu-CW8VCi7z.js";var Pt=class{constructor(){this.ieCompatibility=!1}init(){this.ieCompatibility=this.md5(`hello`)!=`5d41402abc4b2a76b9719d911017c592`}md5cycle(e,t){let n=e[0],r=e[1],i=e[2],a=e[3];n=this.ff(n,r,i,a,t[0],7,-680876936),a=this.ff(a,n,r,i,t[1],12,-389564586),i=this.ff(i,a,n,r,t[2],17,606105819),r=this.ff(r,i,a,n,t[3],22,-1044525330),n=this.ff(n,r,i,a,t[4],7,-176418897),a=this.ff(a,n,r,i,t[5],12,1200080426),i=this.ff(i,a,n,r,t[6],17,-1473231341),r=this.ff(r,i,a,n,t[7],22,-45705983),n=this.ff(n,r,i,a,t[8],7,1770035416),a=this.ff(a,n,r,i,t[9],12,-1958414417),i=this.ff(i,a,n,r,t[10],17,-42063),r=this.ff(r,i,a,n,t[11],22,-1990404162),n=this.ff(n,r,i,a,t[12],7,1804603682),a=this.ff(a,n,r,i,t[13],12,-40341101),i=this.ff(i,a,n,r,t[14],17,-1502002290),r=this.ff(r,i,a,n,t[15],22,1236535329),n=this.gg(n,r,i,a,t[1],5,-165796510),a=this.gg(a,n,r,i,t[6],9,-1069501632),i=this.gg(i,a,n,r,t[11],14,643717713),r=this.gg(r,i,a,n,t[0],20,-373897302),n=this.gg(n,r,i,a,t[5],5,-701558691),a=this.gg(a,n,r,i,t[10],9,38016083),i=this.gg(i,a,n,r,t[15],14,-660478335),r=this.gg(r,i,a,n,t[4],20,-405537848),n=this.gg(n,r,i,a,t[9],5,568446438),a=this.gg(a,n,r,i,t[14],9,-1019803690),i=this.gg(i,a,n,r,t[3],14,-187363961),r=this.gg(r,i,a,n,t[8],20,1163531501),n=this.gg(n,r,i,a,t[13],5,-1444681467),a=this.gg(a,n,r,i,t[2],9,-51403784),i=this.gg(i,a,n,r,t[7],14,1735328473),r=this.gg(r,i,a,n,t[12],20,-1926607734),n=this.hh(n,r,i,a,t[5],4,-378558),a=this.hh(a,n,r,i,t[8],11,-2022574463),i=this.hh(i,a,n,r,t[11],16,1839030562),r=this.hh(r,i,a,n,t[14],23,-35309556),n=this.hh(n,r,i,a,t[1],4,-1530992060),a=this.hh(a,n,r,i,t[4],11,1272893353),i=this.hh(i,a,n,r,t[7],16,-155497632),r=this.hh(r,i,a,n,t[10],23,-1094730640),n=this.hh(n,r,i,a,t[13],4,681279174),a=this.hh(a,n,r,i,t[0],11,-358537222),i=this.hh(i,a,n,r,t[3],16,-722521979),r=this.hh(r,i,a,n,t[6],23,76029189),n=this.hh(n,r,i,a,t[9],4,-640364487),a=this.hh(a,n,r,i,t[12],11,-421815835),i=this.hh(i,a,n,r,t[15],16,530742520),r=this.hh(r,i,a,n,t[2],23,-995338651),n=this.ii(n,r,i,a,t[0],6,-198630844),a=this.ii(a,n,r,i,t[7],10,1126891415),i=this.ii(i,a,n,r,t[14],15,-1416354905),r=this.ii(r,i,a,n,t[5],21,-57434055),n=this.ii(n,r,i,a,t[12],6,1700485571),a=this.ii(a,n,r,i,t[3],10,-1894986606),i=this.ii(i,a,n,r,t[10],15,-1051523),r=this.ii(r,i,a,n,t[1],21,-2054922799),n=this.ii(n,r,i,a,t[8],6,1873313359),a=this.ii(a,n,r,i,t[15],10,-30611744),i=this.ii(i,a,n,r,t[6],15,-1560198380),r=this.ii(r,i,a,n,t[13],21,1309151649),n=this.ii(n,r,i,a,t[4],6,-145523070),a=this.ii(a,n,r,i,t[11],10,-1120210379),i=this.ii(i,a,n,r,t[2],15,718787259),r=this.ii(r,i,a,n,t[9],21,-343485551),e[0]=this.add32(n,e[0]),e[1]=this.add32(r,e[1]),e[2]=this.add32(i,e[2]),e[3]=this.add32(a,e[3])}cmn(e,t,n,r,i,a){return t=this.add32(this.add32(t,e),this.add32(r,a)),this.add32(t<>>32-i,n)}ff(e,t,n,r,i,a,o){return this.cmn(t&n|~t&r,e,t,i,a,o)}gg(e,t,n,r,i,a,o){return this.cmn(t&r|n&~r,e,t,i,a,o)}hh(e,t,n,r,i,a,o){return this.cmn(t^n^r,e,t,i,a,o)}ii(e,t,n,r,i,a,o){return this.cmn(n^(t|~r),e,t,i,a,o)}md51(e){let t=e.length,n=[1732584193,-271733879,-1732584194,271733878],r;for(r=64;r<=e.length;r+=64)this.md5cycle(n,this.md5blk(e.substring(r-64,r)));e=e.substring(r-64);let i=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0];for(r=0;r>2]|=e.charCodeAt(r)<<(r%4<<3);if(i[r>>2]|=128<<(r%4<<3),r>55)for(this.md5cycle(n,i),r=0;r<16;r++)i[r]=0;return i[14]=t*8,this.md5cycle(n,i),n}md5blk(e){let t=[];for(let n=0;n<64;n+=4)t[n>>2]=e.charCodeAt(n)+(e.charCodeAt(n+1)<<8)+(e.charCodeAt(n+2)<<16)+(e.charCodeAt(n+3)<<24);return t}rhex(e){let t=`0123456789abcdef`.split(``),n=``,r=0;for(;r<4;r++)n+=t[e>>r*8+4&15]+t[e>>r*8&15];return n}hex(e){for(let t=0;t>16)+(t>>16)+(n>>16)<<16|n&65535}},Ft={"01":`GRID`,"02":`CHARTS`,"0102":`BOTH`},It=`https://www.ag-grid.com/licensing/`,Lt=class e{constructor(e){this.watermarkMessage=void 0,this.totalMessageLength=124,this.document=e,this.md5=new Pt,this.md5.init()}validateLicense(){let t=this.getLicenseDetails(e.licenseKey),n=`AG Grid ${t.currentLicenseType===`BOTH`?`and AG Charts `:``}Enterprise`,r=t.suppliedLicenseType===void 0?``:`AG ${t.suppliedLicenseType===`BOTH`?`Grid and AG Charts`:t.suppliedLicenseType===`GRID`?`Grid`:`Charts`} Enterprise`;if(t.missing)(!this.isWebsiteUrl()||this.isForceWatermark())&&this.outputMissingLicenseKey(n);else if(t.expired){let i=e.getGridReleaseDate(),a=e.formatDate(i);this.outputExpiredKey(t.expiry,a,n,r)}else t.valid?t.isTrial&&t.trialExpired&&this.outputExpiredTrialKey(t.expiry,n,r):this.outputInvalidLicenseKey(!!t.incorrectLicenseType,n,r)}static extractExpiry(t){let n=t.substring(t.lastIndexOf(`_`)+1,t.length);return new Date(parseInt(e.decode(n),10))}static extractLicenseComponents(t){let n=t.replace(/[\u200B-\u200D\uFEFF]/g,``);if(n=n.replace(/\r?\n|\r/g,``),t.length<=32)return{md5:null,license:t,version:null,isTrial:null};let r=n.length-32,i=n.substring(r),a=n.substring(0,r),[o,s,c]=e.extractBracketedInformation(n);return{md5:i,license:a,version:o,isTrial:s,type:c}}getLicenseDetails(t){let n=e.chartsLicenseManager?`BOTH`:`GRID`;if(!t?.length)return{licenseKey:t,valid:!1,missing:!0,currentLicenseType:n};let r=e.getGridReleaseDate(),{md5:i,license:a,version:o,isTrial:s,type:c}=e.extractLicenseComponents(t),l=i===this.md5.md5(a)&&!t.includes(`For_Trialing_ag-Grid_Only`),u,d,f=null,p=!1,m;function h(){u=ff,o){case`legacy`:case`2`:s&&h();break;case`3`:c?.length?(m=c,c!==Ft[`01`]&&c!==Ft[`0102`]||n===`BOTH`&&m!==`BOTH`?(l=!1,p=!0):s&&h()):l=!1}return l?{licenseKey:t,valid:l,expiry:e.formatDate(f),expired:d,version:o,isTrial:s,trialExpired:u,incorrectLicenseType:p,currentLicenseType:n,suppliedLicenseType:m}:{licenseKey:t,valid:l,incorrectLicenseType:p,currentLicenseType:n,suppliedLicenseType:m}}isDisplayWatermark(){return this.isForceWatermark()||!this.isLocalhost()&&!this.isWebsiteUrl()&&!!this.watermarkMessage?.length}getWatermarkMessage(){return this.watermarkMessage||``}getHostname(){let{hostname:e=``}=(this.document.defaultView||window).location;return e}isForceWatermark(){let{pathname:e}=(this.document.defaultView||window).location;return e?e.includes(`forceWatermark`):!1}isWebsiteUrl(){return this.getHostname().match(/^((?:[\w-]+\.)?ag-grid\.com)$/)!==null}isLocalhost(){return this.getHostname().match(/^(?:127\.0\.0\.1|localhost)$/)!==null}static formatDate(e){let t=[`January`,`February`,`March`,`April`,`May`,`June`,`July`,`August`,`September`,`October`,`November`,`December`],n=e.getDate(),r=e.getMonth(),i=e.getFullYear();return n+` `+t[r]+` `+i}static getGridReleaseDate(){return new Date(parseInt(e.decode(e.RELEASE_INFORMATION),10))}static decode(t){let n=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=`,r=``,i,a,o,s,c,l,u,d=0,f=t.replace(/[^A-Za-z0-9+/=]/g,``);for(;d>4,a=(c&15)<<4|l>>2,o=(l&3)<<6|u,r+=String.fromCharCode(i),l!=64&&(r+=String.fromCharCode(a)),u!=64&&(r+=String.fromCharCode(o));return r=e.utf8_decode(r),r}static utf8_decode(e){e=e.replace(/rn/g,`n`);let t=``;for(let n=0;n127&&r<2048?(t+=String.fromCharCode(r>>6|192),t+=String.fromCharCode(r&63|128)):(t+=String.fromCharCode(r>>12|224),t+=String.fromCharCode(r>>6&63|128),t+=String.fromCharCode(r&63|128))}return t}static setChartsLicenseManager(e){this.chartsLicenseManager=e,this.chartsLicenseManager?.setLicenseKey(this.licenseKey,!0)}static setLicenseKey(e){k(this.licenseKey)&&this.licenseKey!==e&&s(291,void 0,`AG Grid: License Key being set multiple times with different values. This can result in an incorrect license key being used.`),this.licenseKey=e,this.chartsLicenseManager?.setLicenseKey(e,!0)}static extractBracketedInformation(e){if(!e.includes(`[`))return[`legacy`,!1,void 0];let t=e.match(/\[(.*?)\]/g).map(e=>e.replace(`[`,``).replace(`]`,``));if(!t||t.length===0)return[`legacy`,!1,void 0];let n=t.filter(e=>e===`TRIAL`).length===1,r=t.filter(e=>e.indexOf(`v`)===0)[0];return[r?r.replace(`v`,``):`legacy`,n,Ft[t.filter(e=>Ft[e])[0]]]}centerPadAndOutput(e){let t=this.totalMessageLength-e.length;console.error(e.padStart(t/2+e.length,`*`).padEnd(this.totalMessageLength,`*`))}padAndOutput(e,t=`*`,n=``){console.error(e.padEnd(this.totalMessageLength-n.length,t)+n)}outputInvalidLicenseKey(e,t,n){e?(this.centerPadAndOutput(``),this.centerPadAndOutput(` ${t} License `),this.centerPadAndOutput(` Incompatible License Key `),this.padAndOutput(`* Your license key is for ${n} only and does not cover you for ${t}.`,` `,`*`),this.padAndOutput(`* To troubleshoot your license key visit ${It}.`,` `,`*`),this.centerPadAndOutput(``),this.centerPadAndOutput(``)):(this.centerPadAndOutput(``),this.centerPadAndOutput(` ${t} License `),this.centerPadAndOutput(` Invalid License Key `),this.padAndOutput(`* Your license key is not valid.`,` `,`*`),this.padAndOutput(`* To troubleshoot your license key visit ${It}.`,` `,`*`),this.centerPadAndOutput(``),this.centerPadAndOutput(``)),this.watermarkMessage=`Invalid License`}outputExpiredTrialKey(e,t,n){this.centerPadAndOutput(``),this.centerPadAndOutput(` ${t} License `),this.centerPadAndOutput(` Trial Period Expired. `),this.padAndOutput(`* Your trial only license for ${n} expired on ${e}.`,` `,`*`),this.padAndOutput(`* Please email info@ag-grid.com to purchase a license.`,` `,`*`),this.centerPadAndOutput(``),this.centerPadAndOutput(``),this.watermarkMessage=`Trial Period Expired`}outputMissingLicenseKey(e){this.centerPadAndOutput(``),this.centerPadAndOutput(` ${e} License `),this.centerPadAndOutput(` License Key Not Found `),this.padAndOutput(`* All ${e} features are unlocked for trial.`,` `,`*`),this.padAndOutput(`* If you want to hide the watermark please email info@ag-grid.com for a trial license key.`,` `,`*`),this.centerPadAndOutput(``),this.centerPadAndOutput(``),this.watermarkMessage=`For Trial Use Only`}outputExpiredKey(e,t,n,r){this.centerPadAndOutput(``),this.centerPadAndOutput(` ${n} License `),this.centerPadAndOutput(` Incompatible Software Version `),this.padAndOutput(`* Your license key works with versions${r==``?``:` of ${r}`} released before ${e}.`,` `,`*`),this.padAndOutput(`* The version you are trying to use was released on ${t}.`,` `,`*`),this.padAndOutput(`* Please contact info@ag-grid.com to renew your license key.`,` `,`*`),this.centerPadAndOutput(``),this.centerPadAndOutput(``),this.watermarkMessage=`License Expired`}};Lt.RELEASE_INFORMATION=`MTc3MDgwOTgzNDk5MQ==`;var Rt=Lt,zt=`.ag-watermark{bottom:20px;color:#9b9b9b;opacity:.7;position:absolute;transition:opacity 1s ease-out 3s}:where(.ag-ltr) .ag-watermark{right:25px}:where(.ag-rtl) .ag-watermark{left:25px}.ag-watermark:before{background-image:url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyMDkiIGhlaWdodD0iMzYiIGZpbGw9Im5vbmUiIHZpZXdCb3g9IjAgMCAyMDkgMzYiPjxwYXRoIGZpbGw9IiM5YjliOWIiIGQ9Ik0xOTIuOTkzIDIzLjY1OHYtNy45NDZoLTEzLjU0MWwtNy45NDcgNy45NDZ6TTIwOC4yNSAzLjk1aC0xNi45NzRsLTguMDEgNy45NDdoMjQuOTg0ek0xNjMuNjIyIDMxLjYwNWw0LjA2OS00LjA2OWgxMy43MzJ2Ny45NDdoLTE3LjgwMXoiLz48cGF0aCBmaWxsPSIjOWI5YjliIiBkPSJNMTY2LjYxIDE5Ljc4aDguNzczbDguMDEtNy45NDZIMTY2LjYxek0xNTcuMDExIDMxLjYwNWg2LjYxMWw3Ljg4My03Ljk0N2gtMTQuNDk0ek0xOTEuMjc2IDMuOTVsLTQuMDY4IDQuMDdIMTYxLjI3Vi4wNzJoMzAuMDA2ek0yMC44NCAzMC4yMDZIOC4zNzhsLTIuMTYyIDUuMzRILjc1TDEyLjI1NyA4LjU5Mmg0Ljc2OEwyOC41MyAzNS41NDZoLTUuNTN6bS0xLjcxNy00LjI2TDE0LjYwOSAxNC45NWwtNC41MTQgMTAuOTk4ek0xMDQuNDM3IDE4LjUwOWMxLjU4OS0yLjM1MiA1LjU5NC0yLjYwNyA3LjI0Ny0yLjYwN3Y0LjU3OGMtMi4wMzQgMC00LjA2OS4wNjMtNS4yNzcuOTUzLTEuMjA3Ljg5LTEuODQzIDIuMDk4LTEuODQzIDMuNTZ2MTAuNTUzaC00Ljk1OVYxNS45MDJoNC43Njh6TTExOS4zNzYgMTUuOTAyaC00Ljk1OHYxOS42NDRoNC45NTh6TTExOS4zNzYgNy4xM2gtNC45NTh2NS44NDhoNC45NTh6TTE0My45NzkgNy4xM3YyOC40MTZoLTQuNzY4bC0uMTI3LTIuOTg4YTguMyA4LjMgMCAwIDEtMi42NyAyLjQ4Yy0xLjA4MS41NzItMi40MTYuODktMy45NDIuODktMS4zMzUgMC0yLjYwNi0uMjU1LTMuNjg3LS43LTEuMTQ0LS41MDgtMi4xNjItMS4xNDQtMi45ODgtMi4wMzRhOS42IDkuNiAwIDAgMS0xLjk3MS0zLjE3OWMtLjUwOC0xLjIwNy0uNjk5LTIuNjA2LS42OTktNC4xMzJzLjI1NC0yLjkyNC42OTktNC4xOTZjLjUwOS0xLjI3MSAxLjE0NS0yLjM1MiAxLjk3MS0zLjI0MnMxLjg0NC0xLjU4OSAyLjk4OC0yLjA5OCAyLjM1Mi0uNzYzIDMuNjg3LS43NjNjMS41MjYgMCAyLjc5Ny4yNTUgMy44NzguODI3czEuOTcxIDEuMzM1IDIuNjcgMi40MTZWNy4xOTNoNC45NTl6bS0xMC40MjYgMjQuNTM4YzEuNjUzIDAgMi45MjQtLjU3MiAzLjk0MS0xLjY1M3MxLjUyNi0yLjU0MyAxLjUyNi00LjMyMy0uNTA5LTMuMTc4LTEuNTI2LTQuMzIyYy0xLjAxNy0xLjA4MS0yLjI4OC0xLjY1My0zLjk0MS0xLjY1My0xLjU5IDAtMi45MjUuNTcyLTMuODc4IDEuNjUzLTEuMDE3IDEuMDgtMS41MjYgMi41NDMtMS41MjYgNC4zMjIgMCAxLjc4LjUwOSAzLjE4IDEuNTI2IDQuMjYgMS4wMTcgMS4xNDQgMi4yODggMS43MTYgMy44NzggMS43MTZNNTcuMjAyIDIwLjM1M0g0NC45MzN2NC4yNTloNi45OTNjLS4xOSAyLjE2MS0xLjAxNyAzLjgxNC0yLjQxNiA1LjE1LTEuMzk4IDEuMjctMy4xNzggMS45MDYtNS40NjcgMS45MDYtMS4yNzEgMC0yLjQ4LS4yNTQtMy40OTYtLjY5OWE3IDcgMCAwIDEtMi43MzQtMS45N2MtLjc2My0uODI3LTEuMzM1LTEuODQ0LTEuNzgtMy4wNTJzLS42MzYtMi40OC0uNjM2LTMuOTQyLjE5LTIuNzMzLjYzNi0zLjk0MWMuMzgxLTEuMjA4IDEuMDE3LTIuMTYyIDEuNzgtMy4wNTIuNzYzLS44MjYgMS42NTMtMS40NjIgMi43MzMtMS45N2E5LjEgOS4xIDAgMCAxIDMuNTYtLjdxNC4wMDUgMCA2LjEwMyAxLjkwN2wzLjMwNi0zLjMwNWMtMi40OC0xLjkwNy01LjY1OC0yLjkyNS05LjQwOS0yLjkyNS0yLjA5NyAwLTQuMDA0LjMxOC01LjcyMSAxLjAxOC0xLjcxNi42OTktMy4xNzkgMS41ODktNC4zODYgMi43OTdBMTIuMSAxMi4xIDAgMCAwIDMxLjIgMTYuMjJjLS42MzUgMS43MTctLjk1MyAzLjYyNC0uOTUzIDUuNjU4cy4zMTggMy45NDIgMS4wMTcgNS42NThjLjcgMS43MTcgMS41OSAzLjE3OSAyLjc5NyA0LjM4N2ExMi4xIDEyLjEgMCAwIDAgNC4zODcgMi43OTdjMS43MTYuNyAzLjYyMyAxLjAxNyA1LjY1NyAxLjAxNyAyLjAzNSAwIDMuODc4LS4zMTggNS41MzEtMS4wMTcgMS42NTMtLjcgMy4wNTItMS41OSA0LjE5Ni0yLjc5N3ExLjcxNi0xLjgxMiAyLjY3LTQuMzg3Yy42MzYtMS43MTYuOTU0LTMuNjIzLjk1NC01LjY1OHYtLjgyNmMtLjE5MS0uMTI3LS4yNTUtLjQ0NS0uMjU1LS43TTk1Ljk4MiAyMC4zNTNoLTEyLjI3djQuMjU5aDYuOTkzYy0uMTkgMi4xNjEtMS4wMTcgMy44MTQtMi40MTYgNS4xNS0xLjM5OCAxLjI3LTMuMTc4IDEuOTA2LTUuNDY3IDEuOTA2LTEuMjcxIDAtMi40OC0uMjU0LTMuNDk2LS42OTlhNyA3IDAgMCAxLTIuNzM0LTEuOTdjLS43NjMtLjgyNy0xLjMzNS0xLjg0NC0xLjc4LTMuMDUycy0uNjM2LTIuNDgtLjYzNi0zLjk0Mi4xOS0yLjczMy42MzYtMy45NDFjLjM4MS0xLjIwOCAxLjAxNy0yLjE2MiAxLjc4LTMuMDUyLjc2My0uODI2IDEuNjUzLTEuNDYyIDIuNzM0LTEuOTdhOS4xIDkuMSAwIDAgMSAzLjU2LS43cTQuMDA1IDAgNi4xMDMgMS45MDdsMy4zMDUtMy4zMDVjLTIuNDc5LTEuOTA3LTUuNjU4LTIuOTI1LTkuNDA4LTIuOTI1LTIuMDk4IDAtNC4wMDUuMzE4LTUuNzIyIDEuMDE4LTEuNzE2LjY5OS0zLjE3OCAxLjU4OS00LjM4NiAyLjc5N2ExMi4xIDEyLjEgMCAwIDAtMi43OTcgNC4zODZjLS42MzYgMS43MTctLjk1NCAzLjYyNC0uOTU0IDUuNjU4cy4zMTggMy45NDIgMS4wMTcgNS42NThjLjcgMS43MTcgMS41OSAzLjE3OSAyLjc5NyA0LjM4N2ExMi4xIDEyLjEgMCAwIDAgNC4zODcgMi43OTdjMS43MTYuNyAzLjYyMyAxLjAxNyA1LjY1OCAxLjAxNyAyLjAzNCAwIDMuODc4LS4zMTggNS41My0xLjAxNyAxLjY1My0uNyAzLjA1Mi0xLjU5IDQuMTk2LTIuNzk3cTEuNzE4LTEuODEyIDIuNjctNC4zODdjLjYzNi0xLjcxNi45NTQtMy42MjMuOTU0LTUuNjU4di0uODI2Yy0uMTktLjEyNy0uMjU1LS40NDUtLjI1NS0uNyIvPjwvc3ZnPg==");background-repeat:no-repeat;background-size:170px 40px;content:"";display:block;height:40px;width:170px}.ag-watermark-text{font-family:Impact,sans-serif;font-size:19px;font-weight:700;opacity:.5}:where(.ag-ltr) .ag-watermark-text{padding-left:.7rem}:where(.ag-rtl) .ag-watermark-text{padding-right:.7rem}`,Bt={tag:`div`,cls:`ag-watermark`,children:[{tag:`div`,ref:`eLicenseTextRef`,cls:`ag-watermark-text`}]},Vt={selector:`AG-WATERMARK`,component:class extends Ie{constructor(){super(Bt),this.eLicenseTextRef=null,this.registerCSS(zt)}wireBeans(e){this.licenseManager=e.licenseManager}postConstruct(){let e=this.shouldDisplayWatermark();this.setDisplayed(e),e&&(this.eLicenseTextRef.textContent=this.licenseManager.getWatermarkMessage(),window.setTimeout(()=>this.addCss(`ag-opacity-zero`),0),window.setTimeout(()=>this.setDisplayed(!1),5e3))}shouldDisplayWatermark(){return this.licenseManager.isDisplayWatermark()}}},Ht=class extends H{constructor(){super(...arguments),this.beanName=`licenseManager`}postConstruct(){this.validateLicense()}validateLicense(){this.licenseManager=new Rt(_(this.beans)),this.licenseManager.validateLicense()}static getLicenseDetails(e){return new Rt(null).getLicenseDetails(e)}getWatermarkSelector(){return Vt}isDisplayWatermark(){return this.licenseManager.isDisplayWatermark()}getWatermarkMessage(){return this.licenseManager.getWatermarkMessage()}static setLicenseKey(e){Rt.setLicenseKey(e)}static setChartsLicenseManager(e){Rt.setChartsLicenseManager(e)}},Ut=class extends lt{constructor(e){super(),this.setTemplateFromElement(e.getGui(),void 0,void 0,!0)}postConstruct(){this.initialiseTabGuard({onTabKeyDown:e=>this.onTabKeyDown(e),handleKeyDown:e=>this.handleKeyDown(e)})}handleKeyDown(e){e.key===l.ESCAPE&&this.closePanel()}onTabKeyDown(e){e.defaultPrevented||(this.closePanel(),e.preventDefault())}closePanel(){let e=this.parentComponent;e.closeSubMenu(),setTimeout(()=>e.getGui().focus(),0)}},Wt=class extends st{constructor(e){super(),this.callbacks=e,this.ACTIVATION_DELAY=80,this.isActive=!1,this.subMenuIsOpen=!1,this.subMenuIsOpening=!1,this.suppressRootStyles=!0,this.suppressAria=!0,this.suppressFocus=!0}init(e){let{menuItemDef:t,isAnotherSubMenuOpen:n,level:r,childComponent:i,contextParams:a}=e;return this.params=e.menuItemDef,this.level=r,this.isAnotherSubMenuOpen=n,this.childComponent=i,this.contextParams=a,this.cssClassPrefix=this.params.menuItemParams?.cssClassPrefix??`ag-menu-option`,this.callbacks.getMenuItemComp(this.beans,this.params,{...t,level:r,isAnotherSubMenuOpen:n,openSubMenu:e=>this.openSubMenu(e),closeSubMenu:()=>this.closeSubMenu(),closeMenu:e=>this.closeMenu(e),updateTooltip:(e,t)=>this.refreshTooltip(e,t),onItemActivated:()=>this.onItemActivated()}).then(e=>{if(!e)return;this.menuItemComp=e;let t=e.configureDefaults?.();t&&this.configureDefaults(t===!0?void 0:t)})}addListeners(e,t){t?.suppressClick||this.addManagedElementListeners(e,{click:e=>this.onItemSelected(e)}),t?.suppressKeyboardSelect||this.addManagedElementListeners(e,{keydown:e=>{(e.key===l.ENTER||e.key===l.SPACE)&&(e.preventDefault(),this.onItemSelected(e))}}),t?.suppressMouseDown||this.addManagedElementListeners(e,{mousedown:e=>{e.stopPropagation(),e.preventDefault()}}),t?.suppressMouseOver||this.addManagedElementListeners(e,{mouseenter:()=>this.onMouseEnter(),mouseleave:()=>this.onMouseLeave()})}isDisabled(){return!!this.params.disabled}openSubMenu(e=!1,t){if(this.closeSubMenu(),!this.params.subMenu)return;this.subMenuIsOpening=!0;let n=ot({tag:`div`,cls:`ag-menu`,role:`presentation`});this.eSubMenuGui=n;let r,i=()=>{this.subMenuIsOpening=!1};if(this.childComponent){let e=this.createBean(new Ut(this.childComponent));e.setParentComponent(this);let t=e.getGui(),a=`mouseenter`,o=()=>this.cancelDeactivate();t.addEventListener(a,o),r=()=>{t.removeEventListener(a,o),this.destroyBean(e)},n.appendChild(t),this.childComponent.afterGuiAttached&&(i=()=>{this.childComponent.afterGuiAttached(),this.subMenuIsOpening=!1})}else if(this.params.subMenu){let t=this.createBean(new Gt(this.level+1,this.contextParams,this.callbacks));t.setParentComponent(this),t.addMenuItems(this.params.subMenu),n.appendChild(t.getGui()),this.addManagedListeners(t,{closeMenu:e=>this.dispatchLocalEvent(e)}),t.addGuiEventListener(`mouseenter`,()=>this.cancelDeactivate()),r=()=>this.destroyBean(t),e&&(i=()=>{t.activateFirstItem(),this.subMenuIsOpening=!1})}let a=this.beans.popupSvc,o=()=>{let e=this.eGui;a?.positionPopupForMenu({eventSource:e,ePopup:n,event:t instanceof MouseEvent?t:void 0,additionalParams:this.callbacks.getPostProcessPopupParams(this.contextParams)})},s=this.getLocaleTextFunc(),c=a?.addPopup({modal:!0,eChild:n,positionCallback:o,anchorToElement:this.eGui,ariaLabel:s(`ariaLabelSubMenu`,`SubMenu`),afterGuiAttached:i});this.subMenuIsOpen=!0,this.setAriaExpanded(!0),this.hideSubMenu=()=>{c&&c.hideFunc(),this.subMenuIsOpen=!1,this.setAriaExpanded(!1),r(),this.menuItemComp.setExpanded?.(!1),this.eSubMenuGui=void 0},this.menuItemComp.setExpanded?.(!0)}setAriaExpanded(e){this.suppressAria||he(this.eGui,e)}closeSubMenu(){this.hideSubMenu&&(this.hideSubMenu(),this.hideSubMenu=null,this.setAriaExpanded(!1))}isSubMenuOpen(){return this.subMenuIsOpen}isSubMenuOpening(){return this.subMenuIsOpening}activate(e,t){this.cancelActivate(),!(this.params.disabled&&!t)&&(this.isActive=!0,this.suppressRootStyles||this.eGui.classList.add(`${this.cssClassPrefix}-active`),this.menuItemComp.setActive?.(!0),this.suppressFocus||this.callbacks.preserveRangesWhile(this.beans,()=>this.eGui.focus({preventScroll:!t})),e&&this.params.subMenu&&window.setTimeout(()=>{this.isAlive()&&this.isActive&&this.openSubMenu()},300),this.onItemActivated())}deactivate(){this.cancelDeactivate(),this.suppressRootStyles||this.eGui.classList.remove(`${this.cssClassPrefix}-active`),this.menuItemComp.setActive?.(!1),this.isActive=!1,this.subMenuIsOpen&&this.closeSubMenu()}getGui(){return this.menuItemComp.getGui()}getParentComponent(){return this.parentComponent}setParentComponent(e){this.parentComponent=e}getSubMenuGui(){return this.eSubMenuGui}onItemSelected(e){this.menuItemComp.select?.(),this.params.action?this.beans.frameworkOverrides.wrapOutgoing(()=>this.params.action(this.gos.addCommon({...this.contextParams}))):this.openSubMenu(e&&e.type===`keydown`,e),!(this.params.subMenu&&!this.params.action||this.params.suppressCloseOnSelect)&&this.closeMenu(e)}closeMenu(e){let t={type:`closeMenu`};e&&(e instanceof MouseEvent?t.mouseEvent=e:t.keyboardEvent=e),this.dispatchLocalEvent(t)}onItemActivated(){let e={type:`menuItemActivated`,menuItem:this};this.dispatchLocalEvent(e)}cancelActivate(){this.activateTimeoutId&&=(window.clearTimeout(this.activateTimeoutId),0)}cancelDeactivate(){this.deactivateTimeoutId&&=(window.clearTimeout(this.deactivateTimeoutId),0)}onMouseEnter(){this.cancelDeactivate(),this.isAnotherSubMenuOpen()?this.activateTimeoutId=window.setTimeout(()=>this.activate(!0),this.ACTIVATION_DELAY):this.activate(!0)}onMouseLeave(){this.cancelActivate(),this.isSubMenuOpen()?this.deactivateTimeoutId=window.setTimeout(()=>this.deactivate(),this.ACTIVATION_DELAY):this.deactivate()}refreshRootElementGui(e){let t=this.menuItemComp.getGui(),{cssClassPrefix:n,params:{cssClasses:r,disabled:i}}=this,a=this.menuItemComp.getRootElement?.();if(a&&(e||t.classList.add(`ag-menu-option-custom`),t=a),this.suppressRootStyles=!!e,!this.suppressRootStyles){t.classList.add(n);for(let e of r??[])t.classList.add(e);i&&t.classList.add(`${n}-disabled`)}return t}applyAriaProperties(e){let{params:{checked:t,subMenu:n,subMenuRole:r,disabled:a}}=this;i(e,t==null?`menuitem`:`menuitemcheckbox`),n&&Mt(e,r??`menu`),a&&ie(e,!0)}configureDefaults(e){if(!this.menuItemComp){setTimeout(()=>this.configureDefaults(e));return}let{suppressRootStyles:t,suppressTooltip:n,suppressAria:r,suppressTabIndex:i,suppressFocus:a}=e||{},{params:{tooltip:o,disabled:s}}=this,c=this.eGui=this.refreshRootElementGui(!!t);this.suppressAria=!!r,r||this.applyAriaProperties(c),i||c.setAttribute(`tabindex`,`-1`),n||this.refreshTooltip(o),s||this.addListeners(c,e),this.suppressFocus=!!a}refreshTooltip(e,t){if(this.tooltip=e,this.tooltipFeature=this.destroyBean(this.tooltipFeature),!e||!this.menuItemComp)return;let n=this.beans.registry.createDynamicBean(`tooltipFeature`,!1,{getGui:()=>this.getGui(),getTooltipValue:()=>this.tooltip,getLocation:()=>`menu`,shouldDisplayTooltip:t});n&&(this.tooltipFeature=this.createBean(n))}destroy(){this.tooltipFeature=this.destroyBean(this.tooltipFeature),this.menuItemComp?.destroy?.(),super.destroy()}},Gt=class extends lt{constructor(e=0,t,n){super({tag:`div`,cls:`ag-menu-list`,role:`menu`}),this.level=e,this.menuActionParams=t,this.callbacks=n,this.menuItems=[]}postConstruct(){this.initialiseTabGuard({onTabKeyDown:e=>this.onTabKeyDown(e),handleKeyDown:e=>this.callbacks.preserveRangesWhile(this.beans,()=>this.handleKeyDown(e)),onFocusIn:e=>this.handleFocusIn(e),onFocusOut:e=>this.handleFocusOut(e)})}onTabKeyDown(e){this.getParentComponent()?.getGui()?.classList.contains(`ag-focus-managed`)||e.preventDefault(),e.shiftKey&&this.closeIfIsChild(e)}handleKeyDown(e){switch(e.key){case l.UP:case l.RIGHT:case l.DOWN:case l.LEFT:e.preventDefault(),this.handleNavKey(e.key);break;case l.ESCAPE:this.closeIfIsChild()&&this.callbacks.stopPropagationCallbacks.stopPropagation(e);break}}handleFocusIn(e){let t=e.relatedTarget;!this.tabGuardFeature.getTabGuardCtrl().isTabGuard(t)&&(this.getGui().contains(t)||this.activeMenuItem?.getSubMenuGui()?.contains(t))||(this.activeMenuItem?this.activeMenuItem.activate():this.activateFirstItem())}handleFocusOut(e){let t=e.relatedTarget;!this.activeMenuItem||this.getGui().contains(t)||this.activeMenuItem.getSubMenuGui()?.contains(t)||this.activeMenuItem.isSubMenuOpening()||this.activeMenuItem.deactivate()}clearActiveItem(){this.activeMenuItem&&=(this.activeMenuItem.deactivate(),null)}addMenuItems(e){e!=null&&Ne.all(e.map(e=>e===`separator`?Ne.resolve({eGui:this.createSeparator()}):typeof e==`string`?(this.callbacks.warnNoItem?.(e),Ne.resolve({eGui:null})):this.addItem(e))).then(e=>{for(let t of e??[])t?.eGui&&(this.appendChild(t.eGui),t.comp&&this.menuItems.push(t.comp))})}addItem(e){let t=this.createManagedBean(new Wt(this.callbacks));return t.init({menuItemDef:e,isAnotherSubMenuOpen:()=>this.menuItems.some(e=>e.isSubMenuOpen()),level:this.level,contextParams:this.menuActionParams}).then(()=>(t.setParentComponent(this),this.addManagedListeners(t,{closeMenu:e=>{this.dispatchLocalEvent(e)},menuItemActivated:e=>{this.activeMenuItem&&this.activeMenuItem!==e.menuItem&&this.activeMenuItem.deactivate(),this.activeMenuItem=e.menuItem}}),{comp:t,eGui:t.getGui()}))}activateFirstItem(){let e=this.menuItems.filter(e=>!e.isDisabled())[0];e&&e.activate()}createSeparator(){let e={tag:`div`,cls:`ag-menu-separator-part`};return N({tag:`div`,cls:`ag-menu-separator`,attrs:{"aria-hidden":`true`},children:[e,e,e,e]})}handleNavKey(e){switch(e){case l.UP:case l.DOWN:{let t=this.findNextItem(e===l.UP);t&&t!==this.activeMenuItem&&t.activate(!1,!0);return}}e===(this.gos.get(`enableRtl`)?l.RIGHT:l.LEFT)?this.closeIfIsChild():this.openChild()}closeIfIsChild(e){let t=this.getParentComponent();return t&&t instanceof Wt?(e&&e.preventDefault(),t.closeSubMenu(),t.getGui().focus(),!0):!1}openChild(){this.activeMenuItem&&this.activeMenuItem.openSubMenu(!0)}findNextItem(e){let t=[...this.menuItems];if(!t.length)return;if(!this.activeMenuItem)return e?O(t):t[0];e&&t.reverse();let n,r=!1;for(let e of t){if(!r){e===this.activeMenuItem&&(r=!0);continue}n=e;break}return r&&!n?t[0]:n||this.activeMenuItem}destroy(){this.clearActiveItem(),super.destroy()}},Kt=`ag-menu`,qt=`ag-context-menu-loading-icon`,Jt=class extends st{constructor(e){super(),this.params=e,this.destroyLoadingSpinner=null,this.lastPromise=0}hideActiveMenu(){this.destroyBean(this.activeMenu)}showMenu(e,t,n){let{getMenuItems:r,shouldBlockMenuOpen:i}=this.params,a=r(e,t);if(at(a)){let r=this.lastPromise+1;return this.lastPromise=r,this.destroyLoadingSpinner||this.createLoadingIcon(t),a.then(a=>{if(this.lastPromise!==r)return;let{target:o}=t,s=!o;a?.length&&(s||Ot(o))&&!i?.()&&this.createContextMenu({menuItems:a,menuActionParams:e,mouseEvent:t,anchorToElement:n}),this.destroyLoadingSpinner?.()}),!0}return a?.length?(this.createContextMenu({menuItems:a,menuActionParams:e,mouseEvent:t,anchorToElement:n}),!0):!1}createLoadingIcon(e){let{beans:t}=this,n=this.getLocaleTextFunc(),r=t.iconSvc.createIconNoSpan(`loadingMenuItems`),i=N({tag:`div`,cls:qt});i.appendChild(r);let a=re(t),o=b(t);if(!o)return;o.appendChild(i),t.ariaAnnounce?.announceValue(n(`ariaLabelLoadingContextMenu`,`Loading Context Menu`),`contextmenu`),t.environment.applyThemeClasses(i),mt(i,e,t);let s=e=>{mt(i,e,t)};a.addEventListener(`mousemove`,s),this.destroyLoadingSpinner=()=>{a.removeEventListener(`mousemove`,s),i.remove(),this.destroyLoadingSpinner=null}}createContextMenu(e){let{mapMenuItems:t,menuItemCallbacks:n,beforeMenuOpen:r,onMenuClose:i,afterMenuDestroyed:a,onVisibleChanged:o,onMenuOpen:s}=this.params,{menuItems:c,menuActionParams:l,mouseEvent:u,anchorToElement:d}=e,f=this.beans.popupSvc,p=new Yt(t?e=>t(c,l,e):()=>c,l,n);this.createBean(p);let m=p.getGui();r?.(l);let h={additionalParams:n.getPostProcessPopupParams(l),type:`contextMenu`,mouseEvent:u,ePopup:m,nudgeY:1},g=this.getLocaleTextFunc(),_=f?.addPopup({modal:!0,eChild:m,closeOnEsc:!0,closedCallback:e=>{n.preserveRangesWhile(this.beans,()=>{i?.(),this.destroyBean(p),a?.(),o?.(!1,e===void 0?`api`:`ui`)})},click:u,positionCallback:()=>{let e=this.gos.get(`enableRtl`);f?.positionPopupUnderMouseEvent({...h,nudgeX:e?(m.offsetWidth+1)*-1:1})},anchorToElement:d,ariaLabel:g(`ariaLabelContextMenu`,`Context Menu`)});_&&(s?.(),p.afterGuiAttached({container:`contextMenu`,hidePopup:_.hideFunc})),this.activeMenu&&this.hideActiveMenu(),this.activeMenu=p,p.addEventListener(`destroyed`,()=>{this.activeMenu===p&&(this.activeMenu=null)}),_&&p.addEventListener(`closeMenu`,e=>_.hideFunc({mouseEvent:e.mouseEvent??void 0,keyboardEvent:e.keyboardEvent??void 0,forceHide:!0}));let v=u&&u instanceof MouseEvent&&u.type===`mousedown`;o?.(!0,v?`api`:`ui`)}destroy(){this.destroyLoadingSpinner?.(),super.destroy()}},Yt=class extends Xe{constructor(e,t,n){super({tag:`div`,cls:Kt,role:`presentation`}),this.getMenuItems=e,this.menuActionParams=t,this.callbacks=n,this.menuList=null}postConstruct(){let e=this.createManagedBean(new Gt(0,this.menuActionParams,this.callbacks)),t=this.getMenuItems(()=>this.getGui());e.addMenuItems(t),this.appendChild(e),this.menuList=e,e.addEventListener(`closeMenu`,e=>this.dispatchLocalEvent(e))}afterGuiAttached({hidePopup:e}){e&&this.addDestroyFunc(e);let t=this.menuList;t&&this.callbacks.preserveRangesWhile(this.beans,()=>Et(t.getGui()))}},Xt=class extends Xe{constructor(e){super({tag:`div`}),this.callbacks=e}init(e){this.params=e,this.cssClassPrefix=this.params.cssClassPrefix??`ag-menu-option`,this.addAriaAttributes(),this.addIcon(),this.addName(),this.addShortcut(),this.addSubMenu()}configureDefaults(){return!0}addAriaAttributes(){let{checked:e,subMenu:t}=this.params,n=this.getGui();e&&ee(n,e),t&&he(n,!1)}addIcon(){if(this.params.isCompact)return;let e=N({tag:`span`,ref:`eIcon`,cls:`${this.getClassName(`part`)} ${this.getClassName(`icon`)}`,role:`presentation`}),{checked:t,icon:n}=this.params;t?e.appendChild(this.beans.iconSvc.createIconNoSpan(`check`)):n&&(Ke(n)?e.appendChild(n):typeof n==`string`?e.innerHTML=n:this.callbacks?.warnNoIcon?.()),this.getGui().appendChild(e)}addName(){let e=N({tag:`span`,ref:`eName`,cls:`${this.getClassName(`part`)} ${this.getClassName(`text`)}`,children:this.params.name||``});this.getGui().appendChild(e)}addShortcut(){if(this.params.isCompact)return;let e=N({tag:`span`,ref:`eShortcut`,cls:`${this.getClassName(`part`)} ${this.getClassName(`shortcut`)}`,children:this.params.shortcut||``});this.getGui().appendChild(e)}addSubMenu(){let e=N({tag:`span`,ref:`ePopupPointer`,cls:`${this.getClassName(`part`)} ${this.getClassName(`popup-pointer`)}`}),t=this.getGui();if(this.params.subMenu){let t=this.gos.get(`enableRtl`)?`subMenuOpenRtl`:`subMenuOpen`;e.appendChild(this.beans.iconSvc.createIconNoSpan(t))}t.appendChild(e)}getClassName(e){return`${this.cssClassPrefix}-${e}`}},U=`35.1.0`,W={moduleName:`EnterpriseCore`,version:U,beans:[Ht],icons:{accordionOpen:`tree-open`,accordionClosed:`tree-closed`,accordionIndeterminate:`tree-indeterminate`,close:`cross`,cancel:`cancel`,maximize:`maximize`,minimize:`minimize`,columnDrag:`grip`},dependsOn:[],setLicenseKey:Ht.setLicenseKey},Zt={moduleName:`MenuItem`,version:U,userComponents:{agMenuItem:class extends Xt{constructor(){super({warnNoIcon:()=>z(227)})}}},icons:{check:`tick`,subMenuOpen:`small-right`,subMenuOpenRtl:`small-left`},css:[`.ag-menu-list{cursor:default;display:table;padding:var(--ag-spacing) 0;width:100%}.ag-menu-option,.ag-menu-separator{display:table-row}.ag-menu-option-part,.ag-menu-separator-part{display:table-cell;vertical-align:middle}.ag-menu-option{cursor:pointer;font-weight:500}:where(.ag-ltr) :where(.ag-menu-option-popup-pointer) .ag-icon{text-align:right}:where(.ag-rtl) :where(.ag-menu-option-popup-pointer) .ag-icon{text-align:left}.ag-menu-option-text{white-space:nowrap}.ag-menu-option-custom{display:contents}.ag-compact-menu-option{display:flex;flex-wrap:nowrap;width:100%}.ag-compact-menu-option-text{flex:1 1 auto;white-space:nowrap}.ag-menu-separator{height:calc(var(--ag-spacing)*2 + 1px)}.ag-menu-separator-part:after{border-top:solid var(--ag-border-width) var(--ag-menu-separator-color);content:"";display:block}.ag-compact-menu-option-active,.ag-menu-option-active{background-color:var(--ag-row-hover-color)}.ag-compact-menu-option-part,.ag-menu-option-part{line-height:var(--ag-icon-size);padding:calc(var(--ag-spacing) + 2px) 0}.ag-compact-menu-option-disabled,.ag-menu-option-disabled{cursor:not-allowed;opacity:.5}.ag-compact-menu-option-icon,.ag-menu-option-icon{width:var(--ag-icon-size)}:where(.ag-ltr) .ag-compact-menu-option-icon,:where(.ag-ltr) .ag-menu-option-icon{padding-left:calc(var(--ag-spacing)*2)}:where(.ag-rtl) .ag-compact-menu-option-icon,:where(.ag-rtl) .ag-menu-option-icon{padding-right:calc(var(--ag-spacing)*2)}.ag-compact-menu-option-text,.ag-menu-option-text{padding-left:calc(var(--ag-spacing)*2);padding-right:calc(var(--ag-spacing)*2)}:where(.ag-ltr) .ag-compact-menu-option-shortcut,:where(.ag-ltr) .ag-menu-option-shortcut{padding-right:var(--ag-spacing)}:where(.ag-rtl) .ag-compact-menu-option-shortcut,:where(.ag-rtl) .ag-menu-option-shortcut{padding-left:var(--ag-spacing)}:where(.ag-ltr) .ag-compact-menu-option-popup-pointer,:where(.ag-ltr) .ag-menu-option-popup-pointer{padding-right:var(--ag-spacing)}:where(.ag-rtl) .ag-compact-menu-option-popup-pointer,:where(.ag-rtl) .ag-menu-option-popup-pointer{padding-left:var(--ag-spacing)}.ag-menu-column-select-wrapper{height:265px;overflow:auto;:where(.ag-column-select){height:100%}}.ag-menu:where(.ag-tabs){min-width:290px}.ag-context-menu-loading-icon{pointer-events:none;position:absolute}`]};function Qt(e,t,n){e.group!==n&&(e.group&&!n&&(e.expanded=!1),e.group=n,e.updateHasChildren(),t.selectionSvc?.updateRowSelectable(e),e.dispatchRowEvent(`groupChanged`))}function $t(e,t){let{gos:n,rowGroupColsSvc:r}=t;if(!r||!e)return!1;let i=n.get(`groupLockGroupColumns`);return!e.isRowGroupActive()||i===0?!1:i===-1?!0:i>r.columns.findIndex(t=>t.getColId()===e.getColId())}function en(e,t,n){let r=e(t,`${t===`groupBy`?`Group by`:`Un-Group by`} ${n}`,[n]);return r.indexOf(n)>=0?r:`${r} ${n}`}function tn(e){let t=re(e),n=`getSelection`in t?t.getSelection():null,r=[];for(let e=0;e<(n?.rangeCount??0);e++){let t=n?.getRangeAt(e);t&&r.push(t)}return{selection:n,ranges:r}}function nn(e,t){if(!e.gos.get(`enableCellTextSelection`)||!vt()&&!ct())return t();let{selection:n,ranges:r}=tn(e);t(),n?.removeAllRanges();for(let e of r)n?.addRange(e)}var rn={name:`menuItem`,optionalMethods:[`setActive`,`select`,`setExpanded`,`configureDefaults`]},an={getMenuItemComp:(e,t,n)=>e.userCompFactory.getCompDetails(t,rn,`agMenuItem`,L(e.gos,n),!0)?.newAgStackInstance()??Ne.resolve(),getPostProcessPopupParams:({column:e,node:t})=>({column:e,rowNode:t}),preserveRangesWhile:nn,stopPropagationCallbacks:xe,warnNoItem:e=>{z(228,{menuItemOrString:e})}},on=class extends H{constructor(){super(...arguments),this.beanName=`chartMenuItemMapper`}getChartItems(e){let t=this.beans,n=t.chartSvc,r=e===`pivotChart`;if(!n)return null;let i=this.getLocaleTextFunc.bind(this),a=r?new sn(t,n,i):new cn(t,n,i),o=n.isEnterprise(),s=a.getMenuItem();if(s?.subMenu&&!o){let e=t=>({...t,subMenu:t.subMenu?.filter(e=>!e._enterprise).map(t=>e(t))});s=e(s)}let c=this.gos.get(`chartToolPanelsDef`)?.settingsPanel?.chartGroupsDef;return c&&(s=this.filterAndOrderChartMenu(s,c,a.getConfigLookup())),this.cleanInternals(s)}cleanInternals(e){if(!e)return e;let t=e=>{delete e?._key,delete e?._enterprise;for(let n of e?.subMenu??[])t(n);return e};return t(e)}buildLookup(e){let t={},n=e=>{if(t[e._key]=e,e.subMenu)for(let t of e.subMenu)n(t)};return n(e),t}filterAndOrderChartMenu(e,t,n){let r=this.buildLookup(e),i={...e,subMenu:[]};for(let e of Object.keys(t)){let a=t[e],o=n[e];if(o===null)continue;if(o==null){z(173,{group:e});continue}let s=r[o._key];if(s)if(s.subMenu){let t=a.map(t=>{let n=o[t];if(n==null){z(174,{group:e,chartType:t});return}return r[n]}).filter(e=>e!==void 0);t.length>0&&(s.subMenu=t,i.subMenu?.push(s))}else i.subMenu?.push(s)}return i.subMenu?.length==0?null:i}},sn=class{constructor(e,t,n){this.beans=e,this.chartSvc=t,this.getLocaleTextFunc=n}getMenuItem(){let e=this.getLocaleTextFunc(),t=(t,n,r,i,a=!1)=>({name:e(t,n+`‎`),action:()=>this.chartSvc.createPivotChart({chartType:r}),_key:i,_enterprise:a});return{name:e(`pivotChart`,`Pivot Chart`),_key:`pivotChart`,subMenu:[{_key:`pivotColumnChart`,name:e(`columnChart`,`Column`),subMenu:[t(`groupedColumn`,`Grouped`,`groupedColumn`,`pivotGroupedColumn`),t(`stackedColumn`,`Stacked`,`stackedColumn`,`pivotStackedColumn`),t(`normalizedColumn`,`100% Stacked`,`normalizedColumn`,`pivotNormalizedColumn`)]},{_key:`pivotBarChart`,name:e(`barChart`,`Bar`),subMenu:[t(`groupedBar`,`Grouped`,`groupedBar`,`pivotGroupedBar`),t(`stackedBar`,`Stacked`,`stackedBar`,`pivotStackedBar`),t(`normalizedBar`,`100% Stacked`,`normalizedBar`,`pivotNormalizedBar`)]},{_key:`pivotPieChart`,name:e(`pieChart`,`Pie`),subMenu:[t(`pie`,`Pie`,`pie`,`pivotPie`),t(`donut`,`Donut`,`donut`,`pivotDonut`)]},{_key:`pivotLineChart`,name:e(`lineChart`,`Line`),subMenu:[t(`lineChart`,`Line`,`line`,`pivotLineChart`),t(`stackedLine`,`Stacked`,`stackedLine`,`pivotStackedLine`),t(`normalizedLine`,`100% Stacked`,`normalizedLine`,`pivotNormalizedLine`)]},{_key:`pivotAreaChart`,name:e(`areaChart`,`Area`),subMenu:[t(`areaChart`,`Area`,`area`,`pivotArea`),t(`stackedArea`,`Stacked`,`stackedArea`,`pivotStackedArea`),t(`normalizedArea`,`100% Stacked`,`normalizedArea`,`pivotNormalizedArea`)]},{_key:`pivotXYChart`,name:e(`xyChart`,`X Y (Scatter)`),subMenu:[t(`scatter`,`Scatter`,`scatter`,`pivotScatter`),t(`bubble`,`Bubble`,`bubble`,`pivotBubble`)]},{_key:`pivotStatisticalChart`,_enterprise:!1,name:e(`statisticalChart`,`Statistical`),subMenu:[t(`histogramChart`,`Histogram`,`histogram`,`pivotHistogram`,!1)]},{_key:`pivotHierarchicalChart`,_enterprise:!0,name:e(`hierarchicalChart`,`Hierarchical`),subMenu:[t(`treemapChart`,`Treemap`,`treemap`,`pivotTreemap`,!0),t(`sunburstChart`,`Sunburst`,`sunburst`,`pivotSunburst`,!0)]},{_key:`pivotFunnel`,name:e(`funnel`,`Funnel`),subMenu:[t(`funnel`,`Funnel`,`funnel`,`pivotFunnel`),t(`coneFunnel`,`Cone Funnel`,`coneFunnel`,`pivotConeFunnel`),t(`pyramid`,`Pyramid`,`pyramid`,`pivotPyramid`)]},{_key:`pivotCombinationChart`,name:e(`combinationChart`,`Combination`),subMenu:[t(`columnLineCombo`,`Column & Line`,`columnLineCombo`,`pivotColumnLineCombo`),t(`AreaColumnCombo`,`Area & Column`,`areaColumnCombo`,`pivotAreaColumnCombo`)]}],icon:P(`chart`,this.beans,void 0)}}getConfigLookup(){return{columnGroup:{_key:`pivotColumnChart`,column:`pivotGroupedColumn`,stackedColumn:`pivotStackedColumn`,normalizedColumn:`pivotNormalizedColumn`},barGroup:{_key:`pivotBarChart`,bar:`pivotGroupedBar`,stackedBar:`pivotStackedBar`,normalizedBar:`pivotNormalizedBar`},pieGroup:{_key:`pivotPieChart`,pie:`pivotPie`,donut:`pivotDonut`,doughnut:`pivotDonut`},lineGroup:{_key:`pivotLineChart`,line:`pivotLineChart`,stackedLine:`pivotStackedLine`,normalizedLine:`pivotNormalizedLine`},areaGroup:{_key:`pivotAreaChart`,area:`pivotArea`,stackedArea:`pivotStackedArea`,normalizedArea:`pivotNormalizedArea`},scatterGroup:{_key:`pivotXYChart`,bubble:`pivotBubble`,scatter:`pivotScatter`},combinationGroup:{_key:`pivotCombinationChart`,columnLineCombo:`pivotColumnLineCombo`,areaColumnCombo:`pivotAreaColumnCombo`,customCombo:null},hierarchicalGroup:{_key:`pivotHierarchicalChart`,treemap:`pivotTreemap`,sunburst:`pivotSunburst`},statisticalGroup:{_key:`pivotStatisticalChart`,histogram:`pivotHistogram`,rangeBar:null,rangeArea:null,boxPlot:null},funnelGroup:{_key:`pivotFunnel`,funnel:`pivotFunnel`,coneFunnel:`pivotConeFunnel`,pyramid:`pivotPyramid`},polarGroup:null,specializedGroup:null}}},cn=class{constructor(e,t,n){this.beans=e,this.chartSvc=t,this.getLocaleTextFunc=n}getMenuItem(){let e=this.getLocaleTextFunc(),t=(t,n,r,i,a=!1)=>({name:e(t,n),action:()=>this.chartSvc.createChartFromCurrentRange(r),_key:i,_enterprise:a});return{name:e(`chartRange`,`Chart Range`),_key:`chartRange`,subMenu:[{name:e(`columnChart`,`Column`),subMenu:[t(`groupedColumn`,`Grouped`,`groupedColumn`,`rangeGroupedColumn`),t(`stackedColumn`,`Stacked`,`stackedColumn`,`rangeStackedColumn`),t(`normalizedColumn`,`100% Stacked`,`normalizedColumn`,`rangeNormalizedColumn`)],_key:`rangeColumnChart`},{name:e(`barChart`,`Bar`),subMenu:[t(`groupedBar`,`Grouped`,`groupedBar`,`rangeGroupedBar`),t(`stackedBar`,`Stacked`,`stackedBar`,`rangeStackedBar`),t(`normalizedBar`,`100% Stacked`,`normalizedBar`,`rangeNormalizedBar`)],_key:`rangeBarChart`},{name:e(`pieChart`,`Pie`),subMenu:[t(`pie`,`Pie`,`pie`,`rangePie`),t(`donut`,`Donut`,`donut`,`rangeDonut`)],_key:`rangePieChart`},{name:e(`lineChart`,`Line`),subMenu:[t(`lineChart`,`Line`,`line`,`rangeLineChart`),t(`stackedLine`,`Stacked`,`stackedLine`,`rangeStackedLine`),t(`normalizedLine`,`100% Stacked`,`normalizedLine`,`rangeNormalizedLine`)],_key:`rangeLineChart`},{name:e(`areaChart`,`Area`),subMenu:[t(`areaChart`,`Area`,`area`,`rangeArea`),t(`stackedArea`,`Stacked`,`stackedArea`,`rangeStackedArea`),t(`normalizedArea`,`100% Stacked`,`normalizedArea`,`rangeNormalizedArea`)],_key:`rangeAreaChart`},{name:e(`xyChart`,`X Y (Scatter)`),subMenu:[t(`scatter`,`Scatter`,`scatter`,`rangeScatter`),t(`bubble`,`Bubble`,`bubble`,`rangeBubble`)],_key:`rangeXYChart`},{name:e(`polarChart`,`Polar`),subMenu:[t(`radarLine`,`Radar Line`,`radarLine`,`rangeRadarLine`),t(`radarArea`,`Radar Area`,`radarArea`,`rangeRadarArea`),t(`nightingale`,`Nightingale`,`nightingale`,`rangeNightingale`),t(`radialColumn`,`Radial Column`,`radialColumn`,`rangeRadialColumn`),t(`radialBar`,`Radial Bar`,`radialBar`,`rangeRadialBar`)],_key:`rangePolarChart`,_enterprise:!0},{name:e(`statisticalChart`,`Statistical`),subMenu:[t(`boxPlot`,`Box Plot`,`boxPlot`,`rangeBoxPlot`,!0),t(`histogramChart`,`Histogram`,`histogram`,`rangeHistogram`,!1),t(`rangeBar`,`Range Bar`,`rangeBar`,`rangeRangeBar`,!0),t(`rangeArea`,`Range Area`,`rangeArea`,`rangeRangeArea`,!0)],_key:`rangeStatisticalChart`,_enterprise:!1},{name:e(`hierarchicalChart`,`Hierarchical`),subMenu:[t(`treemap`,`Treemap`,`treemap`,`rangeTreemap`),t(`sunburst`,`Sunburst`,`sunburst`,`rangeSunburst`)],_key:`rangeHierarchicalChart`,_enterprise:!0},{name:e(`specializedChart`,`Specialized`),subMenu:[t(`heatmap`,`Heatmap`,`heatmap`,`rangeHeatmap`),t(`waterfall`,`Waterfall`,`waterfall`,`rangeWaterfall`)],_key:`rangeSpecializedChart`,_enterprise:!0},{name:e(`funnel`,`Funnel`),subMenu:[t(`funnel`,`Funnel`,`funnel`,`rangeFunnel`),t(`coneFunnel`,`Cone Funnel`,`coneFunnel`,`rangeConeFunnel`),t(`pyramid`,`Pyramid`,`pyramid`,`rangePyramid`)],_key:`rangeFunnel`,_enterprise:!0},{name:e(`combinationChart`,`Combination`),subMenu:[t(`columnLineCombo`,`Column & Line`,`columnLineCombo`,`rangeColumnLineCombo`),t(`AreaColumnCombo`,`Area & Column`,`areaColumnCombo`,`rangeAreaColumnCombo`)],_key:`rangeCombinationChart`}],icon:P(`chart`,this.beans,void 0)}}getConfigLookup(){return{columnGroup:{_key:`rangeColumnChart`,column:`rangeGroupedColumn`,stackedColumn:`rangeStackedColumn`,normalizedColumn:`rangeNormalizedColumn`},barGroup:{_key:`rangeBarChart`,bar:`rangeGroupedBar`,stackedBar:`rangeStackedBar`,normalizedBar:`rangeNormalizedBar`},pieGroup:{_key:`rangePieChart`,pie:`rangePie`,donut:`rangeDonut`,doughnut:`rangeDonut`},lineGroup:{_key:`rangeLineChart`,line:`rangeLineChart`,stackedLine:`rangeStackedLine`,normalizedLine:`rangeNormalizedLine`},areaGroup:{_key:`rangeAreaChart`,area:`rangeArea`,stackedArea:`rangeStackedArea`,normalizedArea:`rangeNormalizedArea`},scatterGroup:{_key:`rangeXYChart`,bubble:`rangeBubble`,scatter:`rangeScatter`},polarGroup:{_key:`rangePolarChart`,radarLine:`rangeRadarLine`,radarArea:`rangeRadarArea`,nightingale:`rangeNightingale`,radialColumn:`rangeRadialColumn`,radialBar:`rangeRadialBar`},statisticalGroup:{_key:`rangeStatisticalChart`,boxPlot:`rangeBoxPlot`,histogram:`rangeHistogram`,rangeBar:`rangeRangeBar`,rangeArea:`rangeRangeArea`},hierarchicalGroup:{_key:`rangeHierarchicalChart`,treemap:`rangeTreemap`,sunburst:`rangeSunburst`},specializedGroup:{_key:`rangeSpecializedChart`,heatmap:`rangeHeatmap`,waterfall:`rangeWaterfall`},funnelGroup:{_key:`rangeFunnel`,funnel:`rangeFunnel`,coneFunnel:`rangeConeFunnel`,pyramid:`rangePyramid`},combinationGroup:{_key:`rangeCombinationChart`,columnLineCombo:`rangeColumnLineCombo`,areaColumnCombo:`rangeAreaColumnCombo`,customCombo:null}}}},ln={pinSubMenu:`PinnedColumn`,pinLeft:`PinnedColumn`,pinRight:`PinnedColumn`,clearPinned:`PinnedColumn`,pinRowSubMenu:`PinnedRow`,pinBottom:`PinnedRow`,pinTop:`PinnedRow`,unpinRow:`PinnedRow`,valueAggSubMenu:`SharedAggregation`,autoSizeThis:`ColumnAutoSize`,autoSizeAll:`ColumnAutoSize`,rowGroup:`SharedRowGrouping`,rowUnGroup:`SharedRowGrouping`,resetColumns:`CommunityCore`,expandAll:[`ClientSideRowModelHierarchy`,`ServerSideRowModel`],contractAll:[`ClientSideRowModelHierarchy`,`ServerSideRowModel`],copy:`Clipboard`,copyWithHeaders:`Clipboard`,copyWithGroupHeaders:`Clipboard`,cut:`Clipboard`,paste:`Clipboard`,export:[`CsvExport`,`ExcelExport`],csvExport:`CsvExport`,excelExport:`ExcelExport`,separator:`CommunityCore`,pivotChart:`IntegratedCharts`,chartRange:`IntegratedCharts`,columnFilter:`ColumnFilter`,columnChooser:`ColumnMenu`,sortAscending:`Sort`,sortDescending:`Sort`,sortAbsoluteAscending:`Sort`,sortAbsoluteDescending:`Sort`,sortUnSort:`Sort`};function un(e,t){let n=ln[t];n&&e.assertModuleRegistered(n,`menu item '${t}'`)}var dn=`separator`;function fn(e,t){if(e)for(let n=e.length-2;n>=0;n--){let r=e[n]===t,i=e[n+1]===t;r&&i&&e.splice(n+1,1)}}var pn={sortAscending:{fallback:`Sort Ascending`,getSortDef:()=>({type:`default`,direction:`asc`})},sortDescending:{fallback:`Sort Descending`,getSortDef:()=>({type:`default`,direction:`desc`})},sortAbsoluteAscending:{fallback:`Sort Absolute Ascending`,getSortDef:()=>({type:`absolute`,direction:`asc`})},sortAbsoluteDescending:{fallback:`Sort Absolute Descending`,getSortDef:()=>({type:`absolute`,direction:`desc`})},sortUnSort:{fallback:`Clear Sort`,getSortDef:e=>({type:u(e.getSortDef()?.type),direction:null})}},mn=class extends H{constructor(){super(...arguments),this.beanName=`menuItemMapper`}mapWithStockItems(e,t,n,r,i){if(!e)return[];let a=[],o=this.getLocaleTextFunc(),{beans:s,gos:c}=this,{pinnedCols:l,colAutosize:u,aggFuncSvc:d,rowGroupColsSvc:f,colNames:p,colModel:m,clipboardSvc:h,expansionSvc:_,focusSvc:v,csvCreator:y,excelCreator:b,menuSvc:x,colChooserFactory:S,sortSvc:ee,chartMenuItemMapper:te,valueColsSvc:C,pinnedRowModel:w}=s,ne=(e,t,r,i)=>{switch(un(c,e),e){case`pinSubMenu`:return l&&t?{name:o(`pinColumn`,`Pin Column`),icon:P(`menuPin`,s,null),subMenu:[`clearPinned`,`pinLeft`,`pinRight`]}:null;case`pinLeft`:return l&&t?{name:o(`pinLeft`,`Pin Left`),action:()=>l.setColsPinned([t],`left`,i),checked:!!t&&t.isPinnedLeft()}:null;case`pinRight`:return l&&t?{name:o(`pinRight`,`Pin Right`),action:()=>l.setColsPinned([t],`right`,i),checked:!!t&&t.isPinnedRight()}:null;case`clearPinned`:return l&&t?{name:o(`noPin`,`No Pin`),action:()=>l.setColsPinned([t],null,i),checked:!!t&&!t.isPinned()}:null;case`pinRowSubMenu`:{let e=c.get(`enableRowPinning`),r=[],i=n?.rowPinned??n?.pinnedSibling?.rowPinned;return i&&r.push(`unpinRow`),e&&e!==`bottom`&&i!=`top`&&r.push(`pinTop`),e&&e!==`top`&&i!=`bottom`&&r.push(`pinBottom`),w?.isManual()?{name:o(`pinRow`,`Pin Row`),icon:P(`rowPin`,s,t),subMenu:r}:null}case`pinTop`:return w?.isManual()?{name:o(`pinTop`,`Pin to Top`),icon:P(`rowPinTop`,s,t),action:({node:e,column:t})=>e&&w.pinRow(e,`top`,t)}:null;case`pinBottom`:return w?.isManual()?{name:o(`pinBottom`,`Pin to Bottom`),icon:P(`rowPinBottom`,s,t),action:({node:e,column:t})=>e&&w.pinRow(e,`bottom`,t)}:null;case`unpinRow`:return w?.isManual()?{name:o(`unpinRow`,`Unpin Row`),icon:P(`rowUnpin`,s,t),action:({node:e,column:t})=>e&&w.pinRow(e,null,t)}:null;case`valueAggSubMenu`:return d&&C&&(t?.isPrimary()||t?.getColDef().pivotValueColumn)?{name:o(`valueAggregation`,`Value Aggregation`),icon:P(`menuValue`,s,null),subMenu:hn(t,d,C,o),disabled:c.get(`functionsReadOnly`)}:null;case`autoSizeThis`:return u?{name:o(`autosizeThisColumn`,`Autosize This Column`),action:()=>t&&u.autoSizeColumn(t,i,c.get(`skipHeaderOnAutoSize`))}:null;case`autoSizeAll`:return u?{name:o(`autosizeAllColumns`,`Autosize All Columns`),action:()=>u.autoSizeAllColumns({source:i,skipHeader:c.get(`skipHeaderOnAutoSize`)})}:null;case`rowGroup`:return f?{name:en(o,`groupBy`,p.getDisplayNameForColumn(t,`header`)),disabled:c.get(`functionsReadOnly`)||t?.isRowGroupActive()||!t?.getColDef().enableRowGroup,action:()=>f.addColumns([t],i),icon:P(`menuAddRowGroup`,s,null)}:null;case`rowUnGroup`:if(f&&c.isModuleRegistered(`SharedRowGrouping`)){let e=t?.getColDef().showRowGroup,n=c.get(`groupLockGroupColumns`),r,a,l;if(e===!0)r=o(`ungroupAll`,`Un-Group All`),a=c.get(`functionsReadOnly`)||n===-1||n>=(f.columns.length??0),l=()=>f.setColumns(f.columns.slice(0,n),i);else if(typeof e==`string`){let t=m.getColDefCol(e);r=en(o,`ungroupBy`,t==null?e:p.getDisplayNameForColumn(t,`header`)),a=c.get(`functionsReadOnly`)||$t(t,s),l=()=>{f.removeColumns([e],i)}}else r=en(o,`ungroupBy`,p.getDisplayNameForColumn(t,`header`)),a=c.get(`functionsReadOnly`)||!t?.isRowGroupActive()||!t?.getColDef().enableRowGroup||$t(t,s),l=()=>f.removeColumns([t],i);return{name:r,disabled:a,action:l,icon:P(`menuRemoveRowGroup`,s,null)}}else return null;case`resetColumns`:return{name:o(`resetColumns`,`Reset Columns`),action:()=>g(s,i)};case`expandAll`:return _?{name:o(`expandAll`,`Expand All Row Groups`),action:()=>_.expandAll(!0)}:null;case`contractAll`:return _?{name:o(`collapseAll`,`Collapse All Row Groups`),action:()=>_.expandAll(!1)}:null;case`copy`:return h?{name:o(`copy`,`Copy`),shortcut:o(`ctrlC`,`Ctrl+C`),icon:P(`clipboardCopy`,s,null),action:()=>h.copyToClipboard()}:null;case`copyWithHeaders`:return h?{name:o(`copyWithHeaders`,`Copy with Headers`),icon:P(`clipboardCopy`,s,null),action:()=>h.copyToClipboard({includeHeaders:!0})}:null;case`copyWithGroupHeaders`:return h?{name:o(`copyWithGroupHeaders`,`Copy with Group Headers`),icon:P(`clipboardCopy`,s,null),action:()=>h.copyToClipboard({includeHeaders:!0,includeGroupHeaders:!0})}:null;case`cut`:if(h){let e=v.getFocusedCell(),t=e?A(s,e):null,n=t?e?.column.isCellEditable(t):!1;return{name:o(`cut`,`Cut`),shortcut:o(`ctrlX`,`Ctrl+X`),icon:P(`clipboardCut`,s,null),disabled:!n||c.get(`suppressCutToClipboard`),action:()=>h.cutToClipboard(void 0,`contextMenu`)}}else return null;case`paste`:if(h){let e=c.get(`suppressClipboardApi`)||c.get(`suppressClipboardPaste`)||!t||!n||!t.isCellEditable(n)||t.isSuppressPaste(n);return{name:o(`paste`,`Paste`),shortcut:o(`ctrlV`,`Ctrl+V`),icon:P(`clipboardPaste`,s,null),disabled:e,action:()=>h.pasteFromClipboard()}}else return null;case`export`:{let e=[];return!c.get(`suppressCsvExport`)&&y&&e.push(`csvExport`),!c.get(`suppressExcelExport`)&&b&&e.push(`excelExport`),e.length?{name:o(`export`,`Export`),subMenu:e,icon:P(`save`,s,null)}:null}case`csvExport`:return y?{name:o(`csvExport`,`CSV Export`),icon:P(`csvExport`,s,null),action:()=>y.exportDataAsCsv()}:null;case`excelExport`:return b?{name:o(`excelExport`,`Excel Export`),icon:P(`excelExport`,s,null),action:()=>b.exportDataAsExcel()}:null;case`separator`:return e;case`pivotChart`:case`chartRange`:return te.getChartItems(e);case`columnFilter`:return x&&t?{name:o(`columnFilter`,`Column Filter`),icon:P(`filter`,s,null),action:()=>x.showFilterMenu({column:t,buttonElement:r(),containerType:`columnFilter`,positionBy:`button`})}:null;case`columnChooser`:{let e=v.focusedHeader;return S?{name:o(`columnChooser`,`Choose Columns`),icon:P(`columns`,s,null),action:()=>S.showColumnChooser({column:t,eventSource:r(),headerPosition:e})}:null}case`sortUnSort`:case`sortAscending`:case`sortDescending`:case`sortAbsoluteAscending`:case`sortAbsoluteDescending`:{if(!ee||!t)return null;let{fallback:n,getSortDef:r}=pn[e];return{name:o(e,n),icon:P(e,s,null),action:()=>ee.setSortForColumn(t,r(t),!1,i)}}default:return z(176,{key:e}),null}};for(let o of e){let e;if(e=typeof o==`string`?ne(o,t,r,i):{...o},!e)continue;let s=e,{subMenu:c}=s;c&&c instanceof Array&&(s.subMenu=this.mapWithStockItems(c,t,n,r,i)),e!=null&&a.push(e)}return fn(a,dn),a}};function hn(e,t,n,r){let i;if(e.isPrimary())i=e;else{let t=e.getColDef().pivotValueColumn;i=k(t)?t:void 0}let a=[];if(i){let e=i.isValueActive(),o=t.getFuncNames(i);a.push({name:r(`noAggregation`,`None`),action:()=>{n.removeColumns([i],`contextMenu`),n.setColumnAggFunc(i,void 0,`contextMenu`)},checked:!e});for(let s of o)a.push({name:r(s,t.getDefaultFuncLabel(s)),action:()=>{n.setColumnAggFunc(i,s,`contextMenu`),n.addColumns([i],`contextMenu`)},checked:e&&i.getAggFunc()===s})}return a}var gn=`ag-context-menu-open`,_n=class extends H{constructor(){super(...arguments),this.beanName=`contextMenuSvc`,this.focusedCell=null}postConstruct(){this.menu=this.createManagedBean(new Jt({menuItemCallbacks:an,getMenuItems:this.getMenuItems.bind(this),mapMenuItems:this.mapWithStockItems.bind(this),beforeMenuOpen:this.beforeMenuOpen.bind(this),onMenuOpen:this.onMenuOpen.bind(this),onMenuClose:this.onMenuClose.bind(this),afterMenuDestroyed:this.afterMenuDestroyed.bind(this),onVisibleChanged:this.dispatchVisibleChangedEvent.bind(this),shouldBlockMenuOpen:()=>!!this.beans.overlays?.exclusive}))}hideActiveMenu(){this.menu.hideActiveMenu()}getMenuItems(e,t){let{column:n,node:r,value:i}=e,a=[],{clipboardSvc:o,chartSvc:s,csvCreator:c,excelCreator:l,colModel:u,rangeSvc:d,gos:f}=this.beans;if(k(r)&&o&&n&&(f.get(`suppressCutToClipboard`)||a.push(`cut`),a.push(`copy`,`copyWithHeaders`,`copyWithGroupHeaders`,`paste`,`separator`)),f.get(`enableCharts`)&&s&&(u.isPivotMode()&&a.push(`pivotChart`),d&&!d.isEmpty()&&a.push(`chartRange`)),k(r)){let e=f.get(`enableRowPinning`),t=f.get(`isRowPinnable`);if(e){let e=r.level>-1&&r.footer,n=r.level===-1&&r.footer,i=Nt(f);(n&&!(i===`pinnedBottom`||i===`pinnedTop`)||!n&&!e)&&(t?.(r)??!0)&&a.push(`pinRowSubMenu`)}let n=f.get(`suppressExcelExport`)||!l,i=f.get(`suppressCsvExport`)||!c;!He()&&(!n||!i)&&a.push(`export`)}let p=a.length?a:void 0,m=n?.getColDef().contextMenuItems;return Array.isArray(m)?m:typeof m==`function`?m(L(f,{column:n,node:r,value:i,defaultItems:p,event:t})):f.getCallback(`getContextMenuItems`)?.({column:n,node:r,value:i,defaultItems:p,event:t})??a}getContextMenuPosition(e,t){let n=this.getRowCtrl(e),r=this.getCellGui(n,t);if(!r)return{x:0,y:n?.getRowYPosition()??0};let i=r.getBoundingClientRect();return{x:i.x+i.width/2,y:i.y+i.height/2}}showContextMenu(e){let t=e.rowNode??null,n=e.column??null,{anchorToElement:r,value:i,source:a}=e;t&&n&&i==null&&(i=this.beans.valueSvc.getValueForDisplay({column:n,node:t,from:`edit`}).value),r??=this.getContextMenuAnchorElement(t,n),this.beans.menuUtils.onContextMenu({mouseEvent:e.mouseEvent??null,touchEvent:e.touchEvent??null,showMenuCallback:e=>this.menu.showMenu({node:t,column:n,value:i},e,r),source:a})}handleContextMenuMouseEvent(e,t,n,r){let i=r?.rowNode??n?.rowNode??null,a=r?.column??n?.findFullWidthInfoForEvent(e||t)?.column??null,{valueSvc:o,ctrlsSvc:s}=this.beans,c=a?o.getValue(a,i,`edit`):null,l=s.getGridBodyCtrl(),u=r?r.eGui:l.eGridBody;this.showContextMenu({mouseEvent:e,touchEvent:t,rowNode:i,column:a,value:c,anchorToElement:u,source:`ui`})}beforeMenuOpen(e){e.column||this.beans.focusSvc.clearFocusedCell()}onMenuOpen(){let{ctrlsSvc:e,focusSvc:t}=this.beans;e.getGridBodyCtrl().eGridBody.classList.add(gn),this.focusedCell=t.getFocusedCell()}onMenuClose(){this.beans.ctrlsSvc.getGridBodyCtrl().eGridBody.classList.remove(gn)}afterMenuDestroyed(){let{beans:e,focusedCell:t}=this;Ve(e,t)}dispatchVisibleChangedEvent(e,t){this.eventSvc.dispatchEvent({type:`contextMenuVisibleChanged`,visible:e,source:t})}getRowCtrl(e){let{rowIndex:t,rowPinned:n}=e||{};if(t!=null)return this.beans.rowRenderer.getRowByPosition({rowIndex:t,rowPinned:n})||void 0}getCellGui(e,t){if(!(!e||!t))return e.getCellCtrl(t)?.eGui||void 0}getContextMenuAnchorElement(e,t){let n=this.beans.ctrlsSvc.getGridBodyCtrl().eGridBody,r=this.getRowCtrl(e);return r?this.getCellGui(r,t)||(r.isFullWidth()?r.getFullWidthElement():n):n}mapWithStockItems(e,t,n){let{column:r,node:i}=t;return this.beans.menuItemMapper.mapWithStockItems(e,r,i,n,`contextMenu`)}};function vn(e,t){let{contextMenuSvc:n}=e;if(!n)return;let{rowNode:r,column:i,value:a,x:o,y:s}=t||{},{x:c,y:l}=n.getContextMenuPosition(r,i);o!=null&&(c=o),s!=null&&(l=s),n.showContextMenu({mouseEvent:new MouseEvent(`mousedown`,{clientX:c,clientY:l}),rowNode:r,column:i,value:a,source:`api`})}var yn={moduleName:`ContextMenu`,version:U,beans:[_n],apiFunctions:{showContextMenu:vn},dependsOn:[{moduleName:`MenuCore`,version:U,beans:[mn,on,class extends H{constructor(){super(...arguments),this.beanName=`menuUtils`}restoreFocusOnClose(e,t,n,r){let{eventSource:i}=e,a=n instanceof KeyboardEvent;if(!r&&!a||!i)return;let o=m(this.beans);!t.contains(o)&&!ft(this.beans)||this.focusHeaderCell(e)}closePopupAndRestoreFocusOnSelect(e,t,n){let r;n?.keyboardEvent&&(r=n.keyboardEvent),e(r&&{keyboardEvent:r});let i=this.beans,a=i.focusSvc,o=a.getFocusedCell();if(ft(i))if(o){let{rowIndex:e,rowPinned:t,column:n}=o;a.setFocusedCell({rowIndex:e,column:n,rowPinned:t,forceBrowserFocus:!0,preventScrollOnBrowserFocus:!0})}else this.focusHeaderCell(t)}onContextMenu(e){let{mouseEvent:t,touchEvent:n,showMenuCallback:r,source:i}=e;if(!(!this.gos.get(`allowContextMenuWithControlKey`)&&t&&(t.ctrlKey||t.metaKey))&&(t&&this.blockMiddleClickScrollsIfNeeded(t),!(i===`ui`&&this.gos.get(`suppressContextMenu`))&&r(t??n.touches[0]))){let e=t??n;e?.cancelable&&e.preventDefault()}}async focusHeaderCell(e){let{column:t,columnIndex:n,headerPosition:r,eventSource:i}=e,{visibleCols:a,headerNavigation:o,focusSvc:s}=this.beans,l=await a.allCols.some(e=>e===t);if(this.isAlive()){if(t?.isAlive()&&l&&i&&Ot(i)){let e=c(i);e&&(o?.scrollToColumn(t),e.focus())}else if(r&&n!==-1){let e=a.allCols,t=e[n]||O(e);t&&s.focusHeaderPosition({headerPosition:{headerRowIndex:r.headerRowIndex,column:t}})}}}blockMiddleClickScrollsIfNeeded(e){this.gos.get(`suppressMiddleClickScrolls`)&&e.which===2&&e.preventDefault()}}],icons:{chart:`chart`,columns:`columns`,loadingMenuItems:`loading`,menuPin:`pin`,menuValue:`aggregation`,menuAddRowGroup:`group`,menuRemoveRowGroup:`group`,clipboardCopy:`copy`,clipboardCut:`cut`,clipboardPaste:`paste`,save:`save`,csvExport:`csv`,excelExport:`excel`,sortAscending:`asc`,sortDescending:`desc`,sortAbsoluteAscending:`aasc`,sortAbsoluteDescending:`adesc`,sortUnSort:`none`},dependsOn:[W,h,v,Zt]}]};BigInt(-(2**53-1)),BigInt(2**53-1);var bn=class extends H{constructor(){super(...arguments),this.beanName=`aggColNameSvc`}getHeaderName(e,t){if(this.gos.get(`suppressAggFuncInHeader`))return t;let{valueColsSvc:n,colModel:r,rowGroupColsSvc:i}=this.beans,a=e.getColDef().pivotValueColumn,o=k(a),s=null,c;if(o){let r=n?.columns??[],i=this.gos.get(`removePivotHeaderRowWhenSingleValueColumn`)&&r.length===1,o=e.getColDef().pivotTotalColumnIds!==void 0;if(i&&!o)return t;s=a?a.getAggFunc():null,c=!0}else{let t=e.isValueActive(),n=i?.columns.length!==0,a=r.isPivotMode()||n||this.gos.get(`treeData`);t&&a?(s=e.getAggFunc(),c=!0):c=!1}if(c){let e=typeof s==`string`?s:`func`;return`${this.getLocaleTextFunc()(e,e)}(${t})`}return t}},xn={sum:`Sum`,first:`First`,last:`Last`,min:`Min`,max:`Max`,count:`Count`,avg:`Average`},Sn=class extends H{constructor(){super(...arguments),this.beanName=`aggFuncSvc`,this.aggFuncsMap={},this.initialised=!1}postConstruct(){this.init()}init(){this.initialised||(this.initialiseWithDefaultAggregations(),this.addAggFuncs(this.gos.get(`aggFuncs`)))}initialiseWithDefaultAggregations(){let e=this.aggFuncsMap;e.sum=Cn,e.first=wn,e.last=Tn,e.min=En,e.max=Dn,e.count=kn,e.avg=jn,this.initialised=!0}isAggFuncPossible(e,t){let n=this.getFuncNames(e).includes(t),r=k(this.aggFuncsMap[t]);return n&&r}getDefaultFuncLabel(e){return xn[e]??e}getDefaultAggFunc(e){let t=e.getColDef().defaultAggFunc;if(k(t)&&this.isAggFuncPossible(e,t))return t;if(this.isAggFuncPossible(e,`sum`))return`sum`;let n=this.getFuncNames(e);return n?.length?n[0]:null}addAggFuncs(e){if(this.init(),e)for(let t of Object.keys(e))e[t]&&(this.aggFuncsMap[t]=e[t])}getAggFunc(e){return this.init(),this.aggFuncsMap[e]}getFuncNames(e){return e.getColDef().allowedAggFuncs??Object.keys(this.aggFuncsMap).sort()}clear(){this.aggFuncsMap={}}};function Cn(e){let{values:t}=e,n=null;for(let e=0;e0?e.values[0]:null}function Tn(e){return e.values.length>0?O(e.values):null}function En(e){let{values:t}=e,n=null;for(let e=0;er)&&(n=r)}return n}function Dn(e){let{values:t}=e,n=null;for(let e=0;e0&&(i=n/(typeof n==`number`?r:BigInt(r)));let a=e.rowNode?.aggData?.[e.column?.getColId()];if(a&&a.count===r&&a.value===i)return a;let o=Object.create(An);return o.count=r,o.value=i,o}function Mn(e,t){e.aggFuncSvc&&e.aggFuncSvc.addAggFuncs(t)}function Nn(e){e.aggFuncSvc&&e.aggFuncSvc.clear()}function Pn(e,t,n){e.valueColsSvc?.setColumnAggFunc?.(t,n,`api`)}function Fn({beans:e,values:t,aggFuncOrString:n,column:r,rowNode:i,pivotResultColumn:a,aggregatedChildren:o}){let s=typeof n==`string`?e.aggFuncSvc.getAggFunc(n):n;return typeof s==`function`?s(L(e.gos,{values:t,column:r,colDef:r.colDef,pivotResultColumn:a,rowNode:i,data:i?.data,aggregatedChildren:o})):(z(109,{inputValue:n.toString(),allSuggestions:e.aggFuncSvc.getFuncNames(r)}),null)}var In=class extends H{constructor(){super(...arguments),this.beanName=`aggStage`,this.step=`aggregate`,this.refreshProps=[`getGroupRowAgg`,`alwaysAggregateAtRootLevel`,`suppressAggFilteredOnly`,`grandTotalRow`],this.clientSide=!1}wireBeans(e){this.colModel=e.colModel,this.pivotColsSvc=e.pivotColsSvc,this.valueColsSvc=e.valueColsSvc,this.pivotResultCols=e.pivotResultCols,this.valueSvc=e.valueSvc,this.clientSide=I(e.gos)}execute(e){let t=!this.valueColsSvc?.columns?.length,n=!this.gos.getCallback(`getGroupRowAgg`);if(t&&n&&e?.active)return;let r=this.createAggDetails(e);this.recursivelyCreateAggData(r)}createAggDetails(e){let t=this.colModel.isPivotActive(),n=this.valueColsSvc?.columns,r=t&&this.pivotColsSvc?this.pivotColsSvc.columns:[];return{alwaysAggregateAtRootLevel:this.gos.get(`alwaysAggregateAtRootLevel`),groupIncludeTotalFooter:!!Nt(this.gos),changedPath:e,valueColumns:n??[],pivotColumns:r,filteredOnly:!this.isSuppressAggFilteredOnly(),userAggFunc:this.gos.getCallback(`getGroupRowAgg`)}}isSuppressAggFilteredOnly(){return a(this.gos)!==void 0||this.gos.get(`suppressAggFilteredOnly`)}recursivelyCreateAggData(e){e.changedPath.forEachChangedNodeDepthFirst(t=>{if(!t.hasChildren()){t.aggData&&this.setAggDataWithSiblings(t,null);return}if(t.level===-1&&!e.groupIncludeTotalFooter){let n=!this.colModel.isPivotMode();if(!e.alwaysAggregateAtRootLevel&&n){this.setAggData(t,null);return}}this.aggregateRowNode(t,e)},!0)}aggregateRowNode(e,t){let n=t.valueColumns.length===0,r=t.pivotColumns.length===0,i;i=t.userAggFunc?t.userAggFunc({nodes:e.childrenAfterFilter}):n?null:r?this.aggregateRowNodeUsingValuesOnly(e,t):this.aggregateRowNodeUsingValuesAndPivot(e),this.setAggDataWithSiblings(e,i)}aggregateRowNodeUsingValuesAndPivot(e){let t={},n=this.pivotResultCols?.getPivotResultCols()?.list??[],r=!0,i=this.beans,a=this.valueSvc;for(let o=0;ot[e]);t[o.colId]=Fn({beans:i,values:s,aggFuncOrString:o.pivotValueColumn.getAggFunc(),column:o.pivotValueColumn,rowNode:e,pivotResultColumn:a,aggregatedChildren:e.childrenAfterFilter??[]})}return t}aggregateRowNodeUsingValuesOnly(e,t){let n={},{changedPath:r,valueColumns:i,filteredOnly:a}=t,o=r.active?r.getValueColumnsForNode(e,i):i,s=r.active?r.getNotValueColumnsForNode(e,i):null,c=(a?e.childrenAfterFilter:e.childrenAfterGroup)??[],l=Rn(this.valueSvc,c,o),u=e.aggData,d=this.beans;if(o.forEach((t,r)=>{n[t.getId()]=Fn({beans:d,values:l[r],aggFuncOrString:t.getAggFunc(),column:t,rowNode:e,pivotResultColumn:void 0,aggregatedChildren:c})}),s&&u)for(let e of s)n[e.getId()]=u[e.getId()];return n}getAggregatedChildren(e,t){if(!e?.group||!this.clientSide)return[];if(e.rowPinned){let t=e.pinnedSibling;if(!t)return[];e=t}let n=t?.getColDef(),r=n?.pivotKeys;return r?e.leafGroup&&r.length&&!n.pivotTotalColumnIds?Bn(e.childrenMapped,r)??[]:e.childrenAfterFilter??e.childrenAfterGroup??[]:this.isSuppressAggFilteredOnly()?e.childrenAfterGroup??[]:e.childrenAfterFilter??e.childrenAfterGroup??[]}setAggDataWithSiblings(e,t){this.setAggData(e,t);let n=e.pinnedSibling;n&&this.setAggData(n,t);let r=e.sibling;if(r){this.setAggData(r,t);let e=r.pinnedSibling;e&&this.setAggData(e,t)}}setAggData(e,t){let n=e.aggData;if(e.aggData=t,e.__localEventService){let r=t=>{let r=e.aggData?e.aggData[t]:void 0,i=n?n[t]:void 0;if(r===i)return;let a=this.colModel.getColById(t);a&&e.dispatchCellChangedEvent(a,r,i)};if(n)for(let e of Object.keys(n))r(e);if(t)for(let e of Object.keys(t))(!n||!(e in n))&&r(e)}}},Ln=(e,t,n)=>{if(!t)return[];let r=t.length,i=Array(r);for(let a=0;a{let r=n.length,i=Array(r);for(let e=0;e{if(!e)return[];let n=e.length,r=Array(n);for(let i=0;i{if(!t)return;let n=e;for(let e=0;ee.node.leafGroup:e=>!e.node.group),i=(e,t=!1)=>{if(e.childrenAfterFilter){if(e.childrenAfterAggFilter=e.childrenAfterFilter,t)for(let n of e.childrenAfterAggFilter)i(n,t);this.setAllChildrenCount(e)}e.sibling&&(e.sibling.childrenAfterAggFilter=e.childrenAfterAggFilter)};e.forEachChangedNodeDepthFirst(n?e=>{e.childrenAfterAggFilter=e.childrenAfterFilter?.filter(e=>r({node:e})&&this.filterManager.doesRowPassAggregateFilters({rowNode:e})?(i(e,!0),!0):e.childrenAfterAggFilter?.length)||null,this.setAllChildrenCount(e),e.sibling&&(e.sibling.childrenAfterAggFilter=e.childrenAfterAggFilter)}:i,!0)}setAllChildrenCountTreeData(e){let t=e.childrenAfterAggFilter,n=0;if(t){let e=t.length;n=e;for(let r=0;r=0?null:n)}setAllChildrenCountGridGrouping(e){let t=0;e.childrenAfterAggFilter.forEach(e=>{e.group?t+=e.allChildrenCount:t++}),e.setAllChildrenCount(t)}setAllChildrenCount(e){if(!e.hasChildren()){e.setAllChildrenCount(null);return}this.gos.get(`treeData`)?this.setAllChildrenCountTreeData(e):this.setAllChildrenCountGridGrouping(e)}};function G(e,t){if(e.sibling)return;let n=Me(e,t);n.footer=!0,n.setRowTop(null),n.setRowIndex(null),n.oldRowTop=null,n.id=`rowGroupFooter_`+e.id,n.sibling=e,e.sibling=n}function Hn(e){let t=e.sibling;t&&(t._destroy(!1),e.sibling=void 0,t.sibling=void 0)}var Un=class extends H{constructor(){super(...arguments),this.beanName=`footerSvc`}addTotalRows(e,t,n,r,i,a){let o=e;if(i)return Wn(a,r&&Nt(this.gos))&&(G(t,this.beans),n(t.sibling,o++)),o;let s=Te(this.gos);return(r&&s({node:t}))===a&&(G(t,this.beans),n(t.sibling,o++)),o}getTopDisplayIndex(e,t,n,r){let i=t;if(e[0].footer){if(t===0)return 0;--i}let a=e[e.length-1],o=i>=n.length;return a.footer&&o?a.rowIndex:r(i)}doesCellShowTotalPrefix(e,t){return!e.footer||!t?.getColDef().showRowGroup?!1:this.gos.get(`treeData`)?!0:e.level===-1?this.beans.showRowGroupCols?.columns[0]===t:!!e.rowGroupColumn&&t?.isRowGroupDisplayed(e.rowGroupColumn.getId())}applyTotalPrefix(e,t,n,r){let i=r.getColDef().cellRendererParams?.totalValueGetter;if(i){let a=L(this.gos,{column:r,node:n,value:e,formattedValue:t});if(typeof i==`function`)return i(a);if(typeof i==`string`)return this.beans.expressionSvc?.evaluate(i,a);z(179)}return n.level===-1?this.getLocaleTextFunc()(`footerTotal`,`Total`)+` `:this.getTotalValue(t??e)??``}getTotalValue(e){return this.getLocaleTextFunc()(`footerTotal`,`Total`)+` `+(e??``)}};function Wn(e,t){switch(t){case`top`:case`pinnedTop`:return e===`top`;case`bottom`:case`pinnedBottom`:return e===`bottom`;default:return!1}}var Gn=class extends ze{constructor(){super(...arguments),this.beanName=`valueColsSvc`,this.eventName=`columnValueChanged`,this.columnProcessors={set:(e,t,n)=>this.setValueActive(t,e,n),add:(e,t,n)=>this.setValueActive(!0,e,n),remove:(e,t,n)=>this.setValueActive(!1,e,n)},this.columnExtractors={setFlagFunc:(e,t,n)=>this.setColValueActive(e,t,n),getIndexFunc:()=>void 0,getInitialIndexFunc:()=>void 0,getValueFunc:e=>{let t=e.aggFunc;if(t===null||t===``)return null;if(t!==void 0)return!!t},getInitialValueFunc:e=>e.initialAggFunc!=null&&e.initialAggFunc!=``},this.modifyColumnsNoEventsCallbacks={addCol:e=>this.columns.push(e),removeCol:e=>T(this.columns,e)}}extractCols(e,t){this.columns=super.extractCols(e,t);for(let e of this.columns){let t=e.getColDef();t.aggFunc!=null&&t.aggFunc!=``?this.setColAggFunc(e,t.aggFunc):e.getAggFunc()||this.setColAggFunc(e,t.initialAggFunc)}return this.columns}setColumnAggFunc(e,t,n){if(!e)return;let r=this.colModel.getColDefCol(e);r&&(this.setColAggFunc(r,t),this.dispatchColumnChangedEvent(this.eventSvc,this.eventName,[r],n))}syncColumnWithState(e,t,n){let r=n(`aggFunc`).value1;r!==void 0&&(typeof r==`string`?(this.setColAggFunc(e,r),e.isValueActive()||(this.setColValueActive(e,!0,t),this.modifyColumnsNoEventsCallbacks.addCol(e))):(k(r)&&z(33),e.isValueActive()&&(this.setColValueActive(e,!1,t),this.modifyColumnsNoEventsCallbacks.removeCol(e))))}setValueActive(e,t,n){if(e!==t.isValueActive()&&(this.setColValueActive(t,e,n),e&&!t.getAggFunc()&&this.aggFuncSvc)){let e=this.aggFuncSvc.getDefaultAggFunc(t);this.setColAggFunc(t,e)}}setColAggFunc(e,t){e.aggFunc=t,e.dispatchStateUpdatedEvent(`aggFunc`)}setColValueActive(e,t,n){e.aggregationActive!==t&&(e.aggregationActive=t,e.dispatchColEvent(`columnValueChanged`,n))}},Kn={moduleName:`SharedAggregation`,version:U,beans:[Sn,bn,Un,Gn],apiFunctions:{addAggFuncs:Mn,clearAggFuncs:Nn,setColumnAggFunc:Pn},dependsOn:[W]},qn={moduleName:`Aggregation`,version:U,beans:[In,Vn],rowModels:[`clientSide`],dependsOn:[Kn]},Jn=({valueSvc:e,dataTypeSvc:t},n,r)=>{let i=e.getValue(n,r,`data`),a=null;return i instanceof Date?a=i:typeof i==`string`&&(a=(t?.getDateParserFunction(n)??de)(i)??null),a},K=(e,t,n,r)=>i=>{let a=pe(Jn(e,t,i.node));return a?r?.(a[n])??a[n]:null},q=({colNames:e},t,n)=>r=>{let i=e.getDisplayNameForColumn(t,r.location);return i?`${i} (${n})`:``},Yn=Object.fromEntries(Qe.map(e=>[e,e.toLowerCase()])),Xn=e=>{let t=Qe[Number.parseInt(e,10)-1]??e;return{month:t,localeKey:Yn[t]??e}};function Zn(e){return e.groupHierarchy??e.rowGroupingHierarchy}var Qn=class extends H{constructor(){super(...arguments),this.beanName=`groupHierarchyColSvc`,this.columns=null,this.sourceColumnMap=new WeakMap,this.inverseColumnMap=new WeakMap}addColumns(e){let t=this.columns;t!=null&&(e.list=t.list.filter(t=>!e.list.some(e=>e.getColId()===t.getColId())).concat(e.list),e.tree=t.tree.filter(t=>!e.tree.some(e=>e.getId()===t.getId())).concat(e.tree),ne(e))}createColumns(e){let t=new WeakMap,n=new WeakMap,r=this.createGroupHierarchyColumns(e,t,n);if(dt(r,this.columns?.list??[]))return;Re(this.beans,this.columns?.tree),this.columns=null;let{colGroupSvc:i}=this.beans,a=i?.findDepth(e.tree)??0;this.columns={list:r,tree:i?.balanceTreeForAutoCols(r,a)??[],treeDepth:a,map:{}},this.sourceColumnMap=t,this.inverseColumnMap=n}updateColumns(e){}getColumn(e){return this.columns?.list.find(t=>rt(t,e))??null}getColumns(){return this.columns?.list??null}expandColumnInto(e,t){let n=this.getVirtualColumnsForColumn(t).concat(t);for(let t of n)e.some(e=>rt(e,t)||e.getColId()===t.getColId())||e.push(t)}compareVirtualColumns(e,t){let n=this.inverseColumnMap.get(e),r=this.inverseColumnMap.get(t);if(n&&n===r){let r=this.sourceColumnMap.get(n)??[];return r?.indexOf(e)-r?.indexOf(t)}return this.sourceColumnMap.get(e)?.includes(t)?1:this.sourceColumnMap.get(t)?.includes(e)?-1:null}insertVirtualColumnsForCol(e,t){let n=this.getVirtualColumnsForColumn(t);if(!n)return[];let r=e.indexOf(t);return r<0&&(r=e.length-1),oe(e,n),e.splice(r,0,...n),n}getVirtualColumnsForColumn(e){return this.isGroupHierarchyColsEnabledForCol(e)?this.sourceColumnMap.get(e)??[]:[]}isGroupHierarchyColsEnabled(e){return e.list.some(e=>this.isGroupHierarchyColsEnabledForCol(e))}isGroupHierarchyColsEnabledForCol(e){let t=e.getColDef();return!!(Zn(t)&&(t.rowGroup||t.enableRowGroup||t.rowGroupIndex!=null||t.pivot||t.enablePivot||t.pivotIndex!=null))}createGroupHierarchyColDefs(e){let t=[],n=e.getColDef(),r=Zn(n);if(!r||!this.isGroupHierarchyColsEnabledForCol(e))return t;for(let i of r){let r=null;r=typeof i==`string`?this.createColDefForPart(i,e,n):i,r&&t.push(r)}return t}createGroupHierarchyColumns(e,t,n){if(!this.isGroupHierarchyColsEnabled(e))return[];let r=[];for(let i of e.list)for(let e of this.createGroupHierarchyColDefs(i)){let a=e.colId;this.gos.validateColDef(e,a,!0);let o=new pt(e,null,a,!0);this.createBean(o),r.push(o),$n(t,i,o),n.set(o,i)}return r}createColDefForPart(e,t,n){let{beans:r,gos:i}=this,a=`${ve}-${t.getColId()}-${e}`,o={enableRowGroup:n.enableRowGroup,rowGroup:n.rowGroup,enablePivot:n.enablePivot,hide:!0,editable:!1},s=i.get(`groupHierarchyConfig`)??{};if(e in s){let t={...o,...s[e]};return t.colId??=a,bt(r,t,t.colId,!0)}let c=bt(r,{colId:a,...o},a,!0),l=this.getLocaleTextFunc(),u=(e,t)=>l?.(e,t)??t;switch(e){case`year`:return{...c,headerValueGetter:q(r,t,u(e,`Year`)),valueGetter:K(r,t,0)};case`quarter`:return{...c,headerValueGetter:q(r,t,u(e,`Quarter`)),valueGetter:K(r,t,1,e=>(Math.floor(Number(e)/4)+1).toString())};case`month`:return{...c,headerValueGetter:q(r,t,u(e,`Month`)),valueGetter:K(r,t,1)};case`formattedMonth`:return{...c,headerValueGetter:q(r,t,u(`month`,`Month`)),valueGetter:K(r,t,1,e=>{let t=Xn(e);return u(t.localeKey,t.month)})};case`day`:return{...c,headerValueGetter:q(r,t,u(e,`Day`)),valueGetter:K(r,t,2)};case`hour`:return{...c,headerValueGetter:q(r,t,u(e,`Hour`)),valueGetter:K(r,t,3)};case`minute`:return{...c,headerValueGetter:q(r,t,u(e,`Minute`)),valueGetter:K(r,t,4)};case`second`:return{...c,headerValueGetter:q(r,t,u(e,`Second`)),valueGetter:K(r,t,5)};default:return null}}};function $n(e,t,n){let r=e.get(t);e.set(t,(r??[]).concat(n))}var er={moduleName:`GroupHierarchy`,version:U,beans:[Qn]},tr=class extends ze{constructor(){super(...arguments),this.beanName=`pivotColsSvc`,this.eventName=`columnPivotChanged`,this.columnProcessors={set:(e,t,n)=>this.setColPivotActive(e,t,n),add:(e,t,n)=>this.setColPivotActive(e,!0,n),remove:(e,t,n)=>this.setColPivotActive(e,!1,n)},this.columnOrdering={enableProp:`pivot`,initialEnableProp:`initialPivot`,indexProp:`pivotIndex`,initialIndexProp:`initialPivotIndex`},this.columnExtractors={setFlagFunc:(e,t,n)=>this.setColPivotActive(e,t,n),getIndexFunc:e=>e.pivotIndex,getInitialIndexFunc:e=>e.initialPivotIndex,getValueFunc:e=>e.pivot,getInitialValueFunc:e=>e.initialPivot},this.modifyColumnsNoEventsCallbacks={addCol:e=>{this.columns.includes(e)||this.columns.push(e)},removeCol:e=>T(this.columns,e)}}syncColumnWithState(e,t,n,r){let{value1:i,value2:a}=n(`pivot`,`pivotIndex`);(i!==void 0||a!==void 0)&&(typeof a==`number`||i?(e.isPivotActive()||(this.setColPivotActive(e,!0,t),this.modifyColumnsNoEventsCallbacks.addCol(e)),r&&typeof a==`number`&&(r[e.getId()]=a)):e.isPivotActive()&&(this.setColPivotActive(e,!1,t),this.modifyColumnsNoEventsCallbacks.removeCol(e)))}setColPivotActive(e,t,n){e.pivotActive!==t&&(e.pivotActive=t,t&&(this.beans.groupHierarchyColSvc?.insertVirtualColumnsForCol(this.columns,e))?.forEach(e=>this.setColPivotActive(e,t,n)),e.dispatchColEvent(`columnPivotChanged`,n)),e.dispatchStateUpdatedEvent(`pivot`)}},nr=class extends ze{constructor(){super(...arguments),this.beanName=`rowGroupColsSvc`,this.eventName=`columnRowGroupChanged`,this.columnProcessors={set:(e,t,n)=>this.setActive(t,e,n),add:(e,t,n)=>this.setActive(!0,e,n),remove:(e,t,n)=>this.setActive(!1,e,n)},this.columnOrdering={enableProp:`rowGroup`,initialEnableProp:`initialRowGroup`,indexProp:`rowGroupIndex`,initialIndexProp:`initialRowGroupIndex`},this.columnExtractors={setFlagFunc:(e,t,n)=>this.setColRowGroupActive(e,t,n),getIndexFunc:e=>e.rowGroupIndex,getInitialIndexFunc:e=>e.initialRowGroupIndex,getValueFunc:e=>e.rowGroup,getInitialValueFunc:e=>e.initialRowGroup},this.modifyColumnsNoEventsCallbacks={addCol:e=>{this.columns.includes(e)||this.columns.push(e)},removeCol:e=>T(this.columns,e)}}moveColumn(e,t,n){if(this.columns.length===0)return;let r=this.columns[e],i=this.columns.slice(e,t);this.columns.splice(e,1),this.columns.splice(t,0,r),this.updateIndexMap(),this.eventSvc.dispatchEvent({type:this.eventName,columns:i,column:i.length===1?i[0]:null,source:n})}syncColumnWithState(e,t,n,r){let{value1:i,value2:a}=n(`rowGroup`,`rowGroupIndex`);(i!==void 0||a!==void 0)&&(typeof a==`number`||i?(e.isRowGroupActive()||(this.setColRowGroupActive(e,!0,t),this.modifyColumnsNoEventsCallbacks.addCol(e)),r&&typeof a==`number`&&(r[e.getId()]=a)):e.isRowGroupActive()&&(this.setColRowGroupActive(e,!1,t),this.modifyColumnsNoEventsCallbacks.removeCol(e)))}setActive(e,t,n){if(e===t.isRowGroupActive())return;this.setColRowGroupActive(t,e,n);let r=this.beans.groupHierarchyColSvc?.getColumn(t);Se(this.gos,e)&&!r&&this.colModel.setColsVisible([t],!e,n)}setColRowGroupActive(e,t,n){e.rowGroupActive!==t&&(e.rowGroupActive=t,t&&(this.beans.groupHierarchyColSvc?.insertVirtualColumnsForCol(this.columns,e))?.forEach(e=>this.setColRowGroupActive(e,t,n)),e.dispatchColEvent(`columnRowGroupChanged`,n)),e.dispatchStateUpdatedEvent(`rowGroup`)}},rr=class extends H{constructor(){super(...arguments),this.beanName=`autoColSvc`}postConstruct(){this.addManagedPropertyListener(`autoGroupColumnDef`,this.updateColumns.bind(this))}addColumns(e){this.columns!=null&&(e.list=this.columns.list.concat(e.list),e.tree=this.columns.tree.concat(e.tree),ne(e))}createColumns(e,t,n){let r=this.beans,{colModel:i,gos:a,rowGroupColsSvc:o,colGroupSvc:s}=r,c=i.isPivotMode(),l=xt(a,c),u=c?a.get(`pivotSuppressAutoColumn`):this.isSuppressAutoCol(),d=o?.columns,f=!(d&&d.length>0||a.get(`treeData`))||u||l,p=()=>{this.columns&&=(Re(r,this.columns.tree),null)};if(f){p();return}let m=this.generateAutoCols(d),h=dt(m,this.columns?.list||null),g=e.treeDepth,_=(this.columns?this.columns.treeDepth:-1)==g;if(h&&_){let e=new Map(m.map(e=>[e.getId(),e]));for(let t of this.columns?.list??[]){let r=e.get(t.getId());r&&t.setColDef(r.getColDef(),null,n)}return}p();let v=s?.findDepth(e.tree)??0;this.columns={list:m,tree:s?.balanceTreeForAutoCols(m,v)??[],treeDepth:v,map:{}},t(e=>{if(!e)return null;let t=e.filter(e=>!Oe(e));return[...m,...t]})}updateColumns(e){let t=Ue(e.source);this.columns?.list.forEach((e,n)=>this.updateOneAutoCol(e,n,t))}getColumn(e){return this.columns?.list.find(t=>rt(t,e))??null}getColumns(){return this.columns?.list??null}generateAutoCols(e=[]){let t=[],{gos:n}=this,r=n.get(`treeData`),i=Be(n);return r&&i&&(z(182),i=!1),i?e.forEach((e,n)=>{t.push(this.createOneAutoCol(e,n))}):t.push(this.createOneAutoCol()),t}isSuppressAutoCol(){let e=this.gos;return e.get(`groupDisplayType`)===`custom`?!0:e.get(`treeDataDisplayType`)===`custom`}createOneAutoCol(e,t){let n;n=e?`${wt}-${e.getId()}`:wt;let r=this.createAutoColDef(n,e,t);r.colId=n;let i=new pt(r,null,n,!0);return this.createBean(i),i}updateOneAutoCol(e,t,n){let r=e.getColDef(),i=typeof r.showRowGroup==`string`?r.showRowGroup:void 0,a=this.beans,o=i==null?void 0:a.colModel.getColDefCol(i),s=e.getId(),c=this.createAutoColDef(s,o??void 0,t);e.setColDef(c,null,n),Ze(a,{state:[le(c,s)]},n)}createAutoColDef(e,t,n){let r=this.createBaseColDef(t),i=this.gos.get(`autoGroupColumnDef`);ye(r,i),r=bt(this.beans,r,e,!0),this.gos.get(`treeData`)||p(r.field)&&p(r.valueGetter)&&p(r.filterValueGetter)&&r.filter!==`agGroupColumnFilter`&&(r.filter=!1),n&&n>0&&(r.headerCheckboxSelection=!1);let a=Pe(this.gos),o=r.valueGetter||r.field!=null;return a&&!o&&(r.sortIndex=void 0,r.initialSort=void 0),r}createBaseColDef(e){let t=this.gos.get(`autoGroupColumnDef`),n={headerName:this.getLocaleTextFunc()(`group`,`Group`),showRowGroup:e?.getColId()??!0};return t&&(t.cellRenderer||t.cellRendererSelector)||(n.cellRenderer=`agGroupCellRenderer`),e&&(n.headerName=this.beans.colNames.getDisplayNameForColumn(e,`header`)??void 0,n.headerValueGetter=e.colDef.headerValueGetter),n}destroy(){Re(this.beans,this.columns?.tree),super.destroy()}},ir=class extends H{addExpandedCss(e,t){t.isExpandable()&&(e.push(`ag-row-group`),e.push(t.expanded?`ag-row-group-expanded`:`ag-row-group-contracted`))}getRowExpandedListeners(e){let{rowNode:t}=e,n=this.updateExpandedCss.bind(this,e,t);return{expandedChanged:n,hasChildrenChanged:n}}setExpanded(e,t,n,r){if(e.expanded===t)return;e.expanded=t,e.dispatchRowEvent(`expandedChanged`);let i={...Ye(e,this.gos,`rowGroupOpened`),expanded:t,event:n||null};this.dispatchExpandedEvent(i,r)}isExpandable(e){return e.footer?!1:this.beans.colModel.isPivotMode()?e.hasChildren()&&!e.leafGroup:e.hasChildren()||e.master}updateExpandedCss(e,t){let n=t.isExpandable(),r=t.expanded==1;e.forEachGui(void 0,e=>{let t=e.rowComp;t.toggleCss(`ag-row-group`,n),t.toggleCss(`ag-row-group-expanded`,n&&r),t.toggleCss(`ag-row-group-contracted`,n&&!r),he(e.element,n&&r)})}dispatchStateUpdatedEvent(){this.eventSvc.dispatchEvent({type:`rowExpansionStateChanged`})}},ar=class extends ir{constructor(){super(...arguments),this.beanName=`expansionSvc`,this.events=null,this.dispatchExpandedDebounced=null}destroy(){super.destroy(),this.events=null,this.dispatchExpandedDebounced=null}setExpansionState(e){let t=new Set(e.expandedRowGroupIds);this.beans.rowModel.forEachNode(e=>{let n=e.id;n&&(e.expanded=t.has(n))}),this.onGroupExpandedOrCollapsed()}getInternalExpansionState(e=!1){let t=[],n=[];return this.beans.rowModel.forEachNode(r=>{let i=r.id;i&&(r.expanded?t.push(i):e&&r.isExpandable()&&n.push(i))}),{expandedRowGroupIds:t,collapsedRowGroupIds:n}}getExpansionState(){return this.getInternalExpansionState()}expandAll(e){let{gos:t,rowModel:n,colModel:r,eventSvc:i}=this.beans,a=t.get(`treeData`),o=r.isPivotActive(),s=t=>{if(t)for(let n of t){let t=()=>{n.expanded=e,s(n.childrenAfterGroup)};if(n.master){t();continue}if(a){k(n.childrenAfterGroup)&&t();continue}if(o){n.leafGroup||t();continue}n.group&&t()}},c=n.rootNode;c&&s(c.childrenAfterGroup),this.onGroupExpandedOrCollapsed(),i.dispatchEvent({type:`expandOrCollapseAll`,source:e?`expandAll`:`collapseAll`})}onGroupExpandedOrCollapsed(){this.dispatchStateUpdatedEvent(),this.beans.rowModel.reMapRows()}setDetailsExpansionState(e){let t=this.getInternalExpansionState(!0),n=t.collapsedRowGroupIds.length===0;if(t.expandedRowGroupIds.length===0!==n)return n?e.expandAll():e.collapseAll()}dispatchExpandedEvent(e,t){if((this.events??=[]).push(e),t){this.dispatchExpandedEvents();return}let n=this.dispatchExpandedDebounced;if(!n){if(!this.isAlive())return;n=this.debounce(()=>this.dispatchExpandedEvents()),this.dispatchExpandedDebounced=n}n()}dispatchExpandedEvents(){let{eventSvc:e,rowRenderer:t}=this.beans,n=this.events,r=n?.length;if(!r)return;this.events=null;let i=Array(r);for(let t=0;twindow.setTimeout(e,0);let n=!1;return()=>{if(!t.active){window.setTimeout(e,0);return}n||(n=!0,t.addDestroyTask(()=>{n=!1,e()}))}}};function or(e){let t=e.get(`groupHideParentOfSingleChild`);return t||(t=e.get(`groupRemoveSingleChildren`),!t&&e.get(`groupRemoveLowestSingleChildren`)&&(t=`leafGroupsOnly`)),{groupHideParentOfSingleChild:t,isGroupMultiAutoColumn:Be(e),hideOpenParents:e.get(`groupHideOpenParents`),grandTotalRow:Nt(e),groupTotalRow:Te(e)}}function sr(e,t,n){return e.groupHideParentOfSingleChild===!0&&n&&t.childrenAfterGroup.length===1}function cr(e,t,n){return e.groupHideParentOfSingleChild===`leafGroupsOnly`&&n&&t.leafGroup&&t.childrenAfterGroup.length===1}function lr(e,t,n,r,i,a){let o=r&&!n,s=r&&t.leafGroup,c=e.hideOpenParents&&t.expanded&&!t.master&&!s;return!o&&!c&&!i&&!a}var ur=class extends H{constructor(){super(...arguments),this.beanName=`flattenStage`,this.step=`map`,this.refreshProps=[`groupHideParentOfSingleChild`,`groupRemoveSingleChildren`,`groupRemoveLowestSingleChildren`,`groupTotalRow`,`masterDetail`]}execute(){let{beans:e,gos:t}=this,n=[],r=e.rowModel.rootNode;if(!r)return n;let i=e.colModel.isPivotMode(),a=i&&r.leafGroup&&r.aggData,o=a?[r]:r.childrenAfterSort,s=or(t);this.recursivelyAddToRowsToDisplay(s,o,n,i,0);let c=n.length>0,l=s.grandTotalRow;if(!a&&c&&l)if(G(r,e),l===`pinnedBottom`||l===`pinnedTop`)this.beans.pinnedRowModel?.setGrandTotalPinned(l===`pinnedBottom`?`bottom`:`top`);else{let e=l===`top`;this.addRowNodeToRowsToDisplay(s,r.sibling,n,0,e)}return n}recursivelyAddToRowsToDisplay(e,t,n,r,i){if(!t?.length)return;let a=this.beans.masterDetailSvc;for(let o=0;othis.onCsrmCellChange(e),batchEditingStopped:()=>this.flushGroupEdits()})}destroy(){this.stopDragging(!0),super.destroy()}isGroupingDrop(e){return!e.rowDragManaged||!e.sameGrid||!this.gos.get(`refreshAfterGroupEdit`)?!1:!!this.beans.rowGroupColsSvc?.columns?.length&&!this.beans.colModel.isPivotMode()}initDraggingGroups(e){let t=new Map,n=e=>{let r=e.childrenAfterGroup;if(r){if(t.has(e))return;let i=r.slice();t.set(e,i);for(let e of i)n(e)}};for(let t of e.rows)t.group&&n(t);this.draggingGroups=t}canSetParent(e){return e.sameGrid?this.beans.groupStage?.treeData?!0:e.rowDragManaged&&!this.gos.get(`refreshAfterGroupEdit`)?!1:!!this.beans.rowGroupColsSvc?.columns?.length:!1}canDropRow(e,t){if(this.beans.groupStage?.treeData)return!mr(e,t.newParent);let{position:n,target:r,newParent:i,rootNode:a}=t,o=e.parent;if(e.group&&(pr(e,r)||pr(e,i)))return!1;if(n===`inside`)return!0;if(i&&i!==o)return i!==a||o===a;let s=i??r?.parent??a;if(s!==o)return!1;let c=e.group?e.level:o.level??-1,l=-1;return r?l=r.group?r.level:r.parent?.level??-1:s&&(l=s.level),!(c>=0&&l>=0&&l!==c)}fixRowsDrop(e,t,n,r){let i=!!this.beans.groupStage?.treeData;if(e.treeData=i,!(this.beans.rowGroupColsSvc?.columns?.length||this.gos.get(`pivotMode`))&&!i)return;!this.draggingGroups&&this.isGroupingDrop(e)&&!e.suppressMoveWhenRowDragging&&this.initDraggingGroups(e);let a=e.target,o=null,s=!1,c=e.rootNode,l=this.beans.rowModel,u=this.canStartGroup(a,i);this.updateDropTarget(e,n,u);let d=this.beans.pageBounds?.getLastRow?.()??l.getRowCount()-1;if(t&&(!a||r>=.5&&a.rowIndex===d?o=c:e.moved&&a&&this.dropGroupThrottled&&this.shouldDropTargetBeParent(e)&&(o=a),o||=a?.parent??c),!n&&a&&u&&!(a.group&&a.expanded)&&this.startDropGroupDelay(a),o){if(a&&o===a&&o!==c){let e=o.expanded?et(l,1,a):null;e?.parent===o?(a=e,r=-.5):s=!0}if(a&&!s){let e=a;for(;e&&e!==c&&e!==o;)a=e,e=e.parent}}e.target=a,e.newParent=o,e.yDelta=r,e.inside=s}clearNewSameParent(e,t){let n=e.newParent;n&&(!t||hr(e.rows,n))&&(e.newParent=null)}updateDropTarget(e,t,n){let r=n?e.target:null;this.dropGroupTarget&&this.dropGroupTarget!==r&&this.resetDragGroup(),r?.childrenAfterSort?.length&&(t&&this.dropGroupThrottled&&!r.expanded&&r.isExpandable?.()&&r.setExpanded(!0,void 0,!0),this.canDropInTarget(r,e)&&(this.dropGroupThrottled=!0,this.dropGroupTarget=r))}canDropInTarget(e,t){if(e.expanded)return!0;if(!e.group)return!1;if(t.pointerPos===`inside`)return!0;if(t.treeData)return!1;let n=t.rows,r=e.level;for(let t=0,i=n.length;t{this.dropGroupTimer=null,this.dropGroupThrottled=!0,this.beans.dragAndDrop?.nudge()},t)}resetDragGroup(){this.dropGroupTimer!==null&&(window.clearTimeout(this.dropGroupTimer),this.dropGroupTimer=null),this.dropGroupTarget=null,this.dropGroupThrottled=!1}stopDragging(e){e&&(this.draggingGroups=null),this.resetDragGroup()}shouldDropTargetBeParent({target:e,rows:t,pointerPos:n,treeData:r}){if(!e||n===`none`)return!1;if(n===`inside`||!r&&e.group&&!e.expanded)return!0;if(n===`above`)return!1;let i=this.beans.rowModel,a=e.rowIndex+1,o;do o=i.getRow(a++);while(o?.footer);let s=this.draggingGroups?.get(e)??e.childrenAfterGroup;if(o&&o.parent===e&&s?.length){let e=new Set(t);for(let t=0,n=s.length;t{l.has(e)||(l.add(e),p??=this.newGroupValues(a),this.setRowGroup(e,p)&&f.add(e))},h=e=>{let t=this.draggingGroups?.get(e)??e.childrenAfterGroup,n=t?.length;if(n)for(let e=0;e=0?m(n):h(n)}};for(let t of e.rows)if(t.group)h(t);else{let e=t.sourceRowIndex>=0&&!t.destroyed?t:this.csrmFirstLeaf(t);e&&m(e)}let g=n===`inside`?`above`:n,_=n===`inside`?this.findFirstLeafForParent(a,l)??r:r,v=!1;if(l.size&&g!==`none`&&(v=At(i._leafs,l,_,g===`above`)),!f.size&&!v)return!1;u.reordered=v;for(let e of l)u.updates.add(e);return this.csrmRefresh(u),c?c.focusCell():o.clearFocusedCell(),!0}canStartGroup(e,t){return!e||e.level<0||e.footer||e.detail?!1:e.group?!0:t}flushGroupEdits(){let e=this.pendingEditRefresh;e&&(this.pendingEditRefresh=null,this.csrmRefresh(e))}csrmRefresh(e){let t=this.beans.rowModel,n=t.rootNode;n&&t.refreshModel({step:`group`,keepRenderedRows:!0,animate:!this.gos.get(`suppressAnimationFrame`),changedPath:new it(!1,n),changedRowNodes:e})}newGroupValues(e){let t=this.beans.rowGroupColsSvc?.columns??[],n=Array(t.length),r=-1,i=e;for(;i&&i.level>=0;){let e=t[i.level];if(e){let t=e.getColId(),a=i.level;n[a]=i.groupData?.[t]??i.key??void 0,a>r&&(r=a)}i=i.parent}return{values:n,columns:t,maxLevel:r}}setRowGroup(e,{values:t,columns:n,maxLevel:r}){if(r<0)return!1;let{valueSvc:i}=this.beans,a=!1;for(let o=0;or)continue;let c=t[o],l=i.getValue(s,e,`data`);if(l===c||l==null&&c==null)continue;let u=c,d=i.parseValue(s,e,c,l);d!==void 0&&(u=d),e.setDataValue(s,u,`rowDrag`)&&(a=!0)}return a}onCsrmCellChange(e){let{column:t,node:n,source:r}=e;if(this.gos.get(`refreshAfterGroupEdit`)&&r!==`rowDrag`&&t?.isRowGroupActive()&&!(n.group||!n.data))if(this.beans.editSvc?.isBatchEditing()){let e=this.pendingEditRefresh;e||(e=fr(),this.pendingEditRefresh=e),e.updates.add(n)}else{let e=fr();e.updates.add(n),this.csrmRefresh(e)}}csrmFirstLeaf(e){if(!e)return null;let t=this.draggingGroups,n=t?.get(e)??e.childrenAfterGroup;for(;n?.length;){let e=n[0];if(e.sourceRowIndex>=0)return e.destroyed?this.firstAliveChildLeaf(e):e;n=t?.get(e)??e.childrenAfterGroup}return Ct(e)}firstAliveChildLeaf(e){let t=this.draggingGroups?.get(e)??e.childrenAfterGroup;if(t){for(let e of t)if(e.sourceRowIndex>=0&&!e.destroyed)return e}return null}findFirstLeafForParent(e,t){if(!e)return null;let n=this.draggingGroups?.get(e)??e?.childrenAfterGroup;if(!n)return null;for(let e=0,r=n.length;e=0&&!t.has(r))return r;let i=this.findFirstLeafForParent(r,t);if(i!==null)return i}return null}},fr=()=>{let e=new Je;return e.reordered=!0,e},pr=(e,t)=>{if(!e||!t)return!1;let n=t;for(;n;){if(n===e)return!0;n=n.parent}return!1},mr=(e,t)=>{if(!t||e.parent===t)return!1;let n=t,r=e.id;for(;n;){if(n===e||r!=null&&n.id===r)return!0;n=n.parent}return!1},hr=(e,t)=>{for(let n=0,r=e.length;nthis.strategy?.onShowRowGroupColsSetChanged()})}invalidateGroupCols(){this.strategy?.invalidateGroupCols?.()}destroy(){this.strategy=this.destroyBean(this.strategy),super.destroy()}getNonLeaf(e){return this.strategy?.nonLeafsById?.get(e)}getNestedDataGetter(){return this.getStrategy()?.nestedDataGetter}onPropChange(e){let t=this.gos,n=this.strategy?.nestedDataGetter;if(e.has(`treeData`)){let e=t.get(`treeData`)&&this.hasTreeData;this.treeData!==e&&(this.beans.rowDragSvc?.cancelRowDrag(),this.treeData=e,this.needReset=!0,this.strategy=this.destroyBean(this.strategy))}return this.strategy?.onPropChange?.(e),this.getNestedDataGetter()!==n}extractData(){let e=this.beans.rowModel.rootNode,t=this.nested?e?.childrenAfterGroup:e?._leafs;if(!t)return this.gos.get(`rowData`)??[];let n=t.length,r=Array(n),i=0;for(let e=0;e{let t=e.sibling;if(!t)return null;let n=t._leafs;return n===void 0?vr(t):n},vr=e=>{let t=e.childrenAfterGroup,n=t?.length;if(e._leafs=null,!n)return null;let r,i=n===1?t[0]:null;if(i?.group&&i.sourceRowIndex<0)r=i._leafs,r===void 0&&(r=vr(i));else if(e.leafGroup)r=t;else{r=[];for(let e=0;e=0&&r.push(n),!n.group)continue;let i=n._leafs;if(i===void 0&&(i=vr(n)),i)for(let e=0,t=i.length;e{let n=e._leafs,r=e.sibling;e.treeNodeFlags=0,e.childrenAfterGroup=n,e.childrenMapped=null,e._groupData=void 0,r&&(r.childrenAfterGroup=e.childrenAfterGroup,r.childrenAfterAggFilter=e.childrenAfterAggFilter,r.childrenAfterFilter=e.childrenAfterFilter,r.childrenAfterSort=e.childrenAfterSort,r.childrenMapped=null,r._groupData=void 0);for(let r=0,i=n.length??0;r{e.key=null,e.treeNodeFlags=0,e.allChildrenCount=null,e.childrenAfterGroup=null,e.childrenAfterAggFilter=null,e.childrenAfterFilter=null,e.childrenAfterSort=null,e.childrenMapped=null,e.level=0,e._groupData=void 0};function xr(e,t,n){let r=e,i=r.level-t.level;if(i<=0||!n.get(`groupHideOpenParents`))return!1;for(let e=0;e{let i=e.gos,a=r&&i.get(`isGroupOpenByDefault`);if(!a){let e=i.get(`groupDefaultExpanded`);return e===-1||n{let{rowDragSvc:e}=this.beans;if(!this.params.rowDrag||!e)return;let t=e.createRowDragComp(()=>this.params.value,this.params.node);this.createManagedBean(t),this.eGui.insertAdjacentElement(`afterbegin`,t.getGui())})(),this.setupCheckbox(),this.addGroupValue(),this.setupIndent()}getCellAriaRole(){let e=this.params.colDef?.cellAriaRole,t=this.params.column?.getColDef().cellAriaRole;return e||t||`gridcell`}isEmbeddedRowMismatch(){if(!this.params.fullWidth||!this.gos.get(`embedFullWidthRows`))return!1;let{visibleCols:e}=this.beans,t=this.params.pinned===`left`,n=this.params.pinned===`right`,r=!t&&!n;return this.gos.get(`enableRtl`)?e.isPinningLeft()?!n:!r:e.isPinningLeft()?!t:!r}addGroupValue(){let{params:{value:e,valueFormatted:t}}=this,n=this.getInnerCompDetails();this.comp.setInnerRenderer(n,t??e??null)}setupExpand(){let{colModel:e}=this.beans,{eGridCell:t,column:n,suppressDoubleClickExpand:r}=this.params,i=(e,t)=>{let n=P(e,this.beans,null);n&&(t.appendChild(n),this.addDestroyFunc(()=>n.remove()))};i(`groupExpanded`,this.eExpanded),i(`groupContracted`,this.eContracted);let a=this.comp,o=()=>{if(!this.isExpandable())return;let e=this.displayedNode.expanded;a.setExpandedDisplayed(e),a.setContractedDisplayed(!e),he(t,!!this.displayedNode.expanded)},s=()=>{let n=this.isExpandable();a.toggleCss(`ag-cell-expandable`,n),a.toggleCss(`ag-row-group`,n);let r=!n&&e.isPivotMode();a.toggleCss(`ag-pivot-leaf-group`,r);let i=!e.isPivotMode()&&(!this.displayedNode.footer||this.displayedNode.level!==-1);a.toggleCss(`ag-row-group-leaf-indent`,!n&&i);let s=this.getChildCount(),c=s>0?`(${s})`:``;a.setChildCount(c),n?o():(a.setExpandedDisplayed(!1),a.setContractedDisplayed(!1),ce(t))};!(n?.isCellEditable(this.displayedNode)&&this.gos.get(`enableGroupEdit`))&&!r&&this.addManagedListeners(t,{dblclick:this.onCellDblClicked.bind(this)}),this.addManagedListeners(this.eExpanded,{click:this.onExpandClicked.bind(this)}),this.addManagedListeners(this.eContracted,{click:this.onExpandClicked.bind(this)}),this.addManagedListeners(t,{keydown:this.onKeyDown.bind(this)}),this.addManagedListeners(this.displayedNode,{allChildrenCountChanged:s,masterChanged:s,groupChanged:s,hasChildrenChanged:s,expandedChanged:o}),s()}getInnerCompDetails(){let{userCompFactory:e,findSvc:t}=this.beans,r=this.params;if(r.fullWidth){let n=this.gos.get(`groupRowRendererParams`);return S(e,n,r)||(t?.isMatch(r.node,null)?S(e,{...n,innerRenderer:`agFindCellRenderer`},r):void 0)}let i=e=>e&&e.componentClass==this.compClass,a=S(e,r,r);if(a&&!i(a))return a;let{displayedNode:{rowGroupColumn:o}}=this,s=o?.colDef,c=o&&r.column?.isRowGroupDisplayed(o.getId());if(s&&c){let t=n(e,s,r);if(t)if(i(t)){if(s?.cellRendererParams?.innerRenderer)return S(e,s.cellRendererParams,r)}else return t}if(t?.isMatch(r.node,r.column))return n(e,{...s??r.colDef,cellRenderer:`agFindCellRenderer`},r)}getChildCount(){let{column:e,suppressCount:t}=this.params;if(t)return 0;let{allChildrenCount:n,rowGroupColumn:r}=this.displayedNode;return!((n??0)>0&&(!r||!e||e?.isRowGroupDisplayed(r.getId())))||this.gos.get(`showOpenedGroup`)&&this.displayedNode!==this.node&&!xr(this.node,this.displayedNode,this.gos)?0:n??0}isExpandable(){let{node:e,column:t,colDef:n}=this.params;if(!this.displayedNode.isExpandable()||e.rowPinned)return!1;if(!t)return!0;if(e.hasChildren()&&n){let{showRowGroup:e}=n;if(!e)return!1;if(e===!0)return!0}return e===this.displayedNode?e.rowGroupColumn&&t?.isRowGroupDisplayed(e.rowGroupColumn.getId())?!0:e.master?n?.showRowGroup===!0||n?.showRowGroup==null:!1:xr(this.node,this.displayedNode,this.gos)}setupIndent(){let{suppressPadding:e,node:t,colDef:n}=this.params;if(e)return;let r=()=>{let e=t.uiLevel;n&&n.showRowGroup!==!0&&(e=0);let r=`ag-row-group-indent-`+e;r!==this.indentClass&&(this.indentClass&&this.comp.toggleCss(this.indentClass,!1),this.indentClass=r,this.comp.toggleCss(r,!0),this.eGui.style.setProperty(`--ag-indentation-level`,String(e)))};this.addManagedListeners(t,{uiLevelChanged:r.bind(this)}),r()}setupCheckbox(){let{node:e}=this.params;!e.footer&&!e.rowPinned&&!e.detail&&(this.addManagedPropertyListener(`rowSelection`,({currentValue:e,previousValue:t})=>{let n=typeof e==`object`?e:void 0,r=typeof t==`object`?t:void 0;n?.checkboxLocation!==r?.checkboxLocation&&(this.destroyCheckbox(),this.addCheckbox())}),this.addCheckbox())}addCheckbox(){let{selectionSvc:e}=this.beans;if(!e||!qe(this.gos))return;let{node:t,column:n}=this.params,r=this.gos.get(`rowSelection`),i=$e(r);if(i===`selectionColumn`)return;if(i===`autoGroupColumn`){let e=n?.getColDef().showRowGroup!=null,r=!n&&t.group;if(!(e||r))return}let a=typeof r==`object`?se(r):this.params.checkbox;if(!(typeof a==`function`||a===!0))return;if(typeof n?.getColDef().showRowGroup==`string`&&!this.isExpandable()){this.comp.setCheckboxSpacing(!0);return}let o=e.createCheckboxSelectionComponent();this.cbComp=o,this.createBean(o),o.init({rowNode:t,column:n,overrides:{isVisible:a,callbackParams:this.params,removeHidden:!0}}),this.eCheckbox.appendChild(o.getGui()),this.comp.setCheckboxVisible(!0)}destroyCheckbox(){this.comp.setCheckboxSpacing(!1),this.comp.setCheckboxVisible(!1),this.cbComp?.getGui().remove(),this.cbComp=this.destroyBean(this.cbComp)}onExpandClicked(e){kt(e)||(Ee(e),this.onExpandOrContract(e))}onKeyDown(e){e.key!==l.ENTER||this.params.suppressEnterExpand||this.params.column?.isCellEditable(this.params.node)||this.onExpandOrContract(e)}onCellDblClicked(e){kt(e)||gt(this.eExpanded,e)||gt(this.eContracted,e)||this.onExpandOrContract(e)}onExpandOrContract(e){if(!this.isExpandable())return;let t=this.displayedNode,n=!t.expanded;!n&&t.sticky&&this.beans.ctrlsSvc.getScrollFeature().setVerticalScrollPosition(t.rowTop-t.stickyRowTop),t.setExpanded(n,e)}destroy(){super.destroy(),this.destroyCheckbox()}},wr={tag:`span`,cls:`ag-cell-wrapper`,children:[{tag:`span`,ref:`eExpanded`,cls:`ag-group-expanded ag-hidden`},{tag:`span`,ref:`eContracted`,cls:`ag-group-contracted ag-hidden`},{tag:`span`,ref:`eCheckbox`,cls:`ag-group-checkbox ag-invisible`},{tag:`span`,ref:`eValue`,cls:`ag-group-value`},{tag:`span`,ref:`eChildCount`,cls:`ag-group-child-count`}]},Tr=class extends Ie{constructor(){super(wr),this.eExpanded=null,this.eContracted=null,this.eCheckbox=null,this.eValue=null,this.eChildCount=null}init(e){let t={setInnerRenderer:(e,t)=>this.setRenderDetails(e,t),setChildCount:e=>this.eChildCount.textContent=e,toggleCss:(e,t)=>this.toggleCss(e,t),setContractedDisplayed:e=>x(this.eContracted,e),setExpandedDisplayed:e=>x(this.eExpanded,e),setCheckboxVisible:e=>this.eCheckbox.classList.toggle(`ag-invisible`,!e),setCheckboxSpacing:e=>this.eCheckbox.classList.toggle(`ag-group-checkbox-spacing`,e)},n=this.createManagedBean(new Cr),r=!e.colDef,a=this.getGui();n.init(t,a,this.eCheckbox,this.eExpanded,this.eContracted,this.constructor,e),r&&i(a,n.getCellAriaRole())}setRenderDetails(e,t){e?e.newAgStackInstance().then(e=>{if(!e)return;let t=()=>this.destroyBean(e);this.isAlive()?(this.eValue.appendChild(e.getGui()),this.addDestroyFunc(t)):t()}):this.eValue.innerText=t}destroy(){this.destroyBean(this.innerCellRenderer),super.destroy()}refresh(){return!1}},Er=`.ag-group-checkbox-spacing{width:var(--ag-icon-size)}:where(.ag-ltr) .ag-group-checkbox-spacing{margin-right:var(--ag-cell-widget-spacing)}:where(.ag-rtl) .ag-group-checkbox-spacing{margin-left:var(--ag-cell-widget-spacing)}`,Dr=class extends H{constructor(){super(...arguments),this.beanName=`showRowGroupColValueSvc`}getGroupValue(e,t,n){if(!t)return e.group?{displayedNode:e,value:e.groupValue}:null;let r=this.beans.valueSvc,i=t.colDef.showRowGroup;if(!i)return null;if(e.level===-1&&e.footer)return{displayedNode:e,value:null};if(typeof i==`string`){if((this.beans.rowGroupColsSvc?.getColumnIndex(i)??-1)>e.level)return null;let a=this.getDisplayedNode(e,t,!0);if(a)return{displayedNode:a,value:r.getValue(t,a,`data`,n)}}let a=r.getValue(t,e,`data`,n);if(a==null){let i=this.getDisplayedNode(e,t);if(i)return{displayedNode:i,value:r.getValue(t,i,`data`,n)}}return{displayedNode:e,value:a}}formatAndPrefixGroupColValue(e,t,n=!1){let r=this.formatGroupColValue(e,t,n),{value:i,displayedNode:a}=e,o=this.beans.footerSvc;return o?.doesCellShowTotalPrefix(a,t)?o.applyTotalPrefix(i,r,a,t):a.footer&&a.level===-1?null:r}formatGroupColValue(e,t,n=!1){let r=this.beans.valueSvc,{displayedNode:i,value:a}=e,o=i.rowGroupColumn,s=i.group&&!t;if(o&&(s||t?.isRowGroupDisplayed(o.colId))){if(n&&o.colDef.useValueFormatterForExport===!1)return null;let e=r.formatValue(o,i,a);return e==null&&i.key===``?this.getLocaleTextFunc()(`blanks`,`(Blanks)`):e}return!t||i.group||n&&t.colDef.useValueFormatterForExport===!1?null:r.formatValue(t,i,a)}getDisplayedNode(e,t,n=!1){let r=this.gos,i=r.get(`groupHideOpenParents`),a=r.get(`showOpenedGroup`)&&!n;if(!i&&!a)return;let o=t.colDef.showRowGroup;if(o===!0)return e.group?void 0:e.parent??void 0;let s=e;for(;s&&s.rowGroupColumn?.getId()!=o;){let e=s===s.parent?.getFirstChild();if(!a&&!e)return;s=s.parent}if(s!==e)return s??void 0}},Or=class extends H{constructor(){super(...arguments),this.beanName=`showRowGroupCols`,this.columns=[],this.colsSet=new Set,this.colsMap=new Map}destroy(){super.destroy(),this.columns.length=0,this.colsSet.clear(),this.colsMap.clear()}refresh(){let{colModel:e,rowGroupColsSvc:t}=this.beans,n=this.columns,r=this.colsSet,i=this.colsMap;i.clear();let a=n.length,o=0,s=!1,c=e.getCols();for(let e=0,l=c.length;e=a||!r.has(l),n[o++]=l}if(s||=o!==a,s){n.length=o,r.clear();for(let e=0;e{this.gridBodyCtrl=e.gridBodyCtrl}),this.resetStickyContainers()}setOffsetTop(e){this.extraTopHeight!==e&&(this.extraTopHeight=e,this.eventSvc.dispatchEvent({type:`stickyTopOffsetChanged`,offset:e}))}setOffsetBottom(e){this.extraBottomHeight!==e&&(this.extraBottomHeight=e)}resetOffsets(){this.setOffsetBottom(0),this.setOffsetTop(0)}getLastPixelOfGroup(e){return this.isClientSide?jr(e):Ar(e)}getFirstPixelOfGroup(e){return e.footer?e.sibling.rowTop+e.sibling.rowHeight-1:e.hasChildren()?e.rowTop-1:0}updateStickyRows(e){let t=e===`top`,n=0;if(!this.canRowsBeSticky())return this.refreshNodesAndContainerHeight(e,new Set,n);let r=new Set,{rowModel:i,rowRenderer:a,pinnedRowModel:o,pageBounds:s,rowContainerHeight:c}=this.beans,{pageFirstPixel:l,pageLastPixel:u}=s.getCurrentPagePixelRange(),d=t?a.firstVisibleVPixel-this.extraTopHeight:a.lastVisibleVPixel-this.extraTopHeight,f=c.divStretchOffset??0,p=l+f,m=u+f,h=e=>{if(r.add(e),t){let t=this.getLastPixelOfGroup(e),r=d+n+e.rowHeight;tr?e.stickyRowTop=n-(t-r):e.stickyRowTop=n}n=0,r.forEach(e=>{let t=e.stickyRowTop+e.rowHeight;n{if(!t.displayed)return!1;if(t.footer){if(g===!0||g===`grand`&&t.level===-1||g===`group`&&t.level>-1)return!1;let n=t.sibling.rowIndex?t.sibling.rowIndex+1===t.rowIndex:!1;return e===`bottom`&&n||t.level===-1&&o?.getGrandTotalPinned()?!1:!r.has(t)}return t.isExpandable()?_===!0||e===`bottom`?!1:!r.has(t)&&t.expanded:!1};for(let e=0;e<100;e++){let e=d+n;t||(e=d-n),t&&em&&(e=m);let r=i.getRowIndexAtPixel(e),a=i.getRow(r);if(a==null)break;let o=this.getStickyAncestors(a).find(e=>(t?e.rowIndexr)&&v(e));if(o){h(o);continue}if((t?a.rowTope)&&v(a)){h(a);continue}break}return t||r.forEach(e=>{e.stickyRowTop=n-(e.stickyRowTop+e.rowHeight)}),this.refreshNodesAndContainerHeight(e,r,n)}areFooterRowsStickySuppressed(){let e=this.gos.get(`suppressStickyTotalRow`);if(e===!0)return!0;let t=e===`group`,n=e===`grand`;return t&&n?!0:n?`grand`:t?`group`:!1}canRowsBeSticky(){let e=nt(this.gos),t=this.areFooterRowsStickySuppressed(),n=this.gos.get(`suppressGroupRowsSticky`);return e&&(!t||!n)}getStickyAncestors(e){let t=[],n=e.footer?e.sibling:e.parent;for(;n;)n.sibling&&t.push(n.sibling),t.push(n),n=n.parent;return t.reverse()}checkStickyRows(){let e=this.updateStickyRows(`top`),t=this.updateStickyRows(`bottom`);return e||t}destroyStickyCtrls(){this.resetStickyContainers()}resetStickyContainers(){this.refreshNodesAndContainerHeight(`top`,new Set,0),this.refreshNodesAndContainerHeight(`bottom`,new Set,0)}refreshStickyNode(e){let t=new Set;if(this.stickyTopRowCtrls.some(t=>t.rowNode===e)){for(let n=0;n{s.has(e)||(e.sticky=!0,c.push(this.createRowCon(e,!1,!1)))});let l=!!c.length||o.length!==i.length;r?this.topContainerHeight!==n&&(this.topContainerHeight=n,this.gridBodyCtrl.setStickyTopHeight(n),l=!0):this.bottomContainerHeight!==n&&(this.bottomContainerHeight=n,this.gridBodyCtrl.setStickyBottomHeight(n),l=!0),this.destroyRowCtrls(a,!1);let u=[...o,...c];u.sort((e,t)=>t.rowNode.rowIndex-e.rowNode.rowIndex),r||u.reverse();for(let e of u)e.setRowTop(e.rowNode.stickyRowTop);let d=this.beans.pageBounds,f=0;if(r){for(let e of t)e.rowIndexthis.topContainerHeight&&(f=this.topContainerHeight),this.setOffsetTop(f)}else{for(let e of t)e.rowIndex>d.getLastRow()&&(f+=e.rowHeight);f>this.bottomContainerHeight&&(f=this.bottomContainerHeight),this.setOffsetBottom(f)}return l?(r?this.stickyTopRowCtrls=u:this.stickyBottomRowCtrls=u,!0):!1}ensureRowHeightsValid(){let e=!1,t=t=>{let n=t.rowNode;if(n.rowHeightEstimated){let t=ke(this.beans,n);n.setRowHeight(t.height),e=!0}};return this.stickyTopRowCtrls.forEach(t),this.stickyBottomRowCtrls.forEach(t),e}};function Ar(e){if(e.isExpandable()||e.footer){if(e.master&&e.detailNode)return e.detailNode.rowTop+e.detailNode.rowHeight;if(!e.sibling||Math.abs(e.sibling.rowIndex-e.rowIndex)===1){let t=e.childStore?.getStoreBounds();return e.footer&&(t=e.sibling.childStore?.getStoreBounds()),(t?.heightPx??0)+(t?.topPx??0)}return e.footer?e.rowTop+e.rowHeight:e.sibling.rowTop+e.sibling.rowHeight}return 2**53-1}function jr(e){if(e.isExpandable()||e.footer){if(e.footer&&e.rowIndex===0)return 2**53-1;if(!e.sibling||Math.abs(e.sibling.rowIndex-e.rowIndex)===1){let t=e.footer?e.sibling:e;for(;t.isExpandable()&&t.expanded;)if(t.master&&t.detailNode)t=t.detailNode;else if(t.childrenAfterSort){if(t.childrenAfterSort.length===0)break;t=O(t.childrenAfterSort)}return t.rowTop+t.rowHeight}return e.footer?e.rowTop+e.rowHeight:e.sibling.rowTop+e.sibling.rowHeight}return 2**53-1}var Mr=class extends H{constructor(){super(...arguments),this.beanName=`stickyRowSvc`}createStickyRowFeature(e,t,n){let r=this.gos;if(nt(r)&&I(r)||St(r))return e.createManagedBean(new kr(t,n))}},Nr={moduleName:`GroupColumn`,version:U,beans:[rr,Or,Dr,nr,tr,Gn],dependsOn:[W,{moduleName:`GroupCellRenderer`,version:U,userComponents:{agGroupRowRenderer:Tr,agGroupCellRenderer:Tr},dynamicBeans:{groupCellRendererCtrl:Cr},icons:{groupContracted:`tree-closed`,groupExpanded:`tree-open`},css:[Er],dependsOn:[W]}]},Pr={moduleName:`ClientSideRowModelHierarchy`,version:U,rowModels:[`clientSide`],beans:[gr,ur,ar],dependsOn:[W]},Fr={moduleName:`StickyRow`,version:U,beans:[Mr]},Ir={moduleName:`GroupEdit`,version:U,beans:[dr],dependsOn:[W,Pr]},Lr=(e,t)=>{if(!e){t.length=0;return}let n=e.length;t.length=n;for(let r=0;r{let n=e.length;if(n!==t?.length)return!0;for(let r=0;r0){n=!0;break}return n?(e.sort(Br),!0):!1}function Br(e,t){let n=e.sourceRowIndex,r=t.sourceRowIndex,i=n>=0,a=r>=0;return i&&a?n-r:!i&&!a?e.__objectId-t.__objectId:i?1:-1}var Vr=class extends H{constructor(){super(...arguments),this.groupCols=[],this.nonLeafsById=new Map,this.checkGroupCols=!0,this.pivotMode=!1,this.groupEmpty=!1}invalidateGroupCols(){this.checkGroupCols=!0}destroy(){super.destroy(),this.groupCols.length=0,this.nonLeafsById.clear()}clearNonLeafs(){let e=this.nonLeafsById;for(let t of e.values())t._destroy(!1);e.clear()}loadGroupData(e){if(!e.group)return e._groupData=null,null;let t=e.rowGroupColumn,{valueSvc:n,showRowGroupCols:r}=this.beans,i={};if(e._groupData=i,!t)return i;let a=Ct(e),o=t.getId();if(!r)return i;let s=r.columns;for(let e=0,r=s.length;e{let t=e.childrenAfterGroup,n=t?.length;if(!n)return;let r=Array(n),i=0,a=!1,o;for(let e=0;e1}}if(i.size)for(let t of i){this.insertOneNode(e,t);let n=t.parent;c?.addParentNode(n),a||=(n?.childrenAfterGroup?.length??0)>1}s.size&&(Hr(s),this.removeEmptyGroups(s,o)),a&&this.sortChildren(t)}sortChildren(e){e.forEachChangedNodeDepthFirst(t=>{zr(t.childrenAfterGroup)&&e.active&&e.addParentNode(t)},!1,!0)}orderGroups(e){let t=this.gos.getCallback(`initialGroupOrderComparator`);if(!t)return;let n=this.beans,r=n.gridApi,i=n.gridOptions.context,a=(e,n)=>t({api:r,context:i,nodeA:e,nodeB:n}),o=e=>{let t=e.childrenAfterGroup,n=t?.length;if(!(!n||e.leafGroup)){n>1&&t.sort(a);for(let e=0,r=n;e=0;--e){let{col:s}=o[e],c=n.getKeyForNode(s,t);if(c==null||c===``){if(!r)continue;c=``}if(!i?.parent||i.key!==c){a=!0;break}i=i.parent}return a||=!!i?.parent,a?(this.removeFromParent(t),this.insertOneNode(e,t),t.setData(t.data),!0):!1}groupShouldBeRemoved(e){let t=this.getChildrenMappedKey(e.key,e.rowGroupColumn),n=e.parent?.childrenMapped;return!n||!n[t]?!1:!!e.group&&(e.childrenAfterGroup?.length??0)===0}removeEmptyGroups(e,t){let n=this.beans.selectionSvc,r,i=Array.from(e),a=this.nonLeafsById;do{e.clear();for(let o=0;o!e.group),this.nonLeafsById.clear(),e.leafGroup=!this.groupCols?.length,e.childrenAfterGroup=[],e.childrenMapped={},e.updateHasChildren();let t=e.sibling;t&&(t.childrenAfterGroup=e.childrenAfterGroup,t.childrenMapped=e.childrenMapped);let n=e._leafs;for(let t=0,r=n.length;t=c-1,m=this.createGroup(n,r,u,f,p,t);this.addToParent(m,n),this.setExpandedInitialValue(i,m),n=m}n.group||z(184,{parentGroupData:n.data,childNodeData:t.data}),t.parent=n,t.level=n.level+1,n.childrenAfterGroup.push(t),n.updateHasChildren(),Ur(n)}createGroup(e,t,n,i,a,o){let s=t.col,c=(e.level>=0?e.id+`-`:`row-group-`)+(s.getColId()+`-`+n),l=this.nonLeafsById,u=l.get(c);return u===void 0?(u=new r(this.beans),u.group=!0,u.parent=e,u.field=t.field??null,u.rowGroupColumn=s,u.key=n,u.id=c,u.level=i,u.leafGroup=a,u.rowGroupIndex=i,u.childrenAfterGroup=[],u.childrenMapped={},l.set(c,u),u.groupValue=o&&this.beans.valueSvc.getValue(s,o,`data`),u.setAllChildrenCount(0),u.updateHasChildren(),u):u}getChildrenMappedKey(e,t){return t?t.getId()+`-`+e:e}setExpandedInitialValue(e,t){if(e&&t.leafGroup){t.expanded=!1;return}t.expanded=Sr(this.beans,t,t.level)}onShowRowGroupColsSetChanged(){let{rowModel:e,valueSvc:t}=this.beans;for(let e of this.nonLeafsById.values()){e._groupData=void 0;let n=e.rowGroupColumn,r=n&&Ct(e);e.groupValue=r&&t.getValue(n,r,`data`)}let n=e.rootNode?._leafs;if(n)for(let e=0,t=n.length;e{for(let t of e){let e=t?.childrenAfterGroup;if(!e)continue;let n=e.length,r=0;for(let i=0;i{for(;e._leafs!==void 0;){let t=e.parent;if(!t)break;e._leafs=void 0,e=t}};function Wr(e,t){e.rowGroupColsSvc?.setColumns(t,`api`)}function Gr(e,t){e.rowGroupColsSvc?.removeColumns(t,`api`)}function Kr(e,t){e.rowGroupColsSvc?.addColumns(t,`api`)}function qr(e,t,n){e.rowGroupColsSvc?.moveColumn?.(t,n,`api`)}function Jr(e){return e.rowGroupColsSvc?.columns??[]}var Yr={moduleName:`RowGrouping`,version:U,dynamicBeans:{groupStrategy:Vr},rowModels:[`clientSide`],dependsOn:[{moduleName:`SharedRowGrouping`,version:U,apiFunctions:{setRowGroupColumns:Wr,removeRowGroupColumns:Gr,addRowGroupColumns:Kr,getRowGroupColumns:Jr,moveRowGroupColumn:qr},dependsOn:[W,Kn,Nr,Fr,er]},qn,Pr,Ir]};function Xr(e,t){e.clipboardSvc?.copyToClipboard(t)}function Zr(e,t){e.clipboardSvc?.cutToClipboard(t)}function Qr(e,t){e.clipboardSvc?.copySelectedRowsToClipboard(t)}function $r(e,t){e.clipboardSvc?.copySelectedRangeToClipboard(t)}function ei(e){e.clipboardSvc?.copyRangeDown()}function ti(e){e.clipboardSvc?.pasteFromClipboard()}var ni=`paste`,ri=`dragCopy`,ii=`clipboard`;function ai(e,t=`,`){let n=[],r=e=>e===`\r`||e===` `,i=!1;if(e===``)return[[``]];for(let a=0,o=0,s=0;s{n[a]||(n[a]=[]),n[a][o]||(n[a][o]=``)};if(d(),l===`"`&&(i?u===`"`?(n[a][o]+=`"`,s++):i=!1:(c===void 0||c===t||r(c))&&(i=!0)),!i&&l!==`"`){if(l===t){o++,d();continue}else if(r(l)){o=0,a++,d(),l===`\r`&&u===` `&&s++;continue}}n[a][o]+=l}return n}var oi={moduleName:`Clipboard`,version:U,beans:[class extends H{constructor(){super(...arguments),this.beanName=`clipboardSvc`,this.clientSideRowModel=null,this.gridCtrl=null,this.lastPasteOperationTime=0,this.navigatorApiFailed=!1}postConstruct(){let{gos:e,rowModel:t,ctrlsSvc:n}=this.beans;I(e,t)&&(this.clientSideRowModel=t),n.whenReady(this,e=>{this.gridCtrl=e.gridCtrl})}destroy(){super.destroy(),this.clientSideRowModel=null,this.gridCtrl=null}pasteFromClipboard(){!this.gos.get(`suppressClipboardApi`)&&!this.navigatorApiFailed&&navigator.clipboard?.readText?navigator.clipboard.readText().then(this.processClipboardData.bind(this)).catch(e=>{z(40,{e,method:`readText`}),this.navigatorApiFailed=!0,this.pasteFromClipboardLegacy()}):this.pasteFromClipboardLegacy()}pasteFromClipboardLegacy(){let e=!1,t=t=>{let n=Date.now();n-this.lastPasteOperationTime<50&&(e=!0,t.preventDefault()),this.lastPasteOperationTime=n};this.executeOnTempElement(e=>{e.addEventListener(`paste`,t),e.focus({preventScroll:!0})},n=>{let r=n.value;e?this.refocusLastFocusedCell():this.processClipboardData(r),n.removeEventListener(`paste`,t)})}refocusLastFocusedCell(){let{focusSvc:e}=this.beans,t=e.getFocusedCell();t&&e.setFocusedCell({rowIndex:t.rowIndex,column:t.column,rowPinned:t.rowPinned,forceBrowserFocus:!0})}getClipboardDelimiter(){let e=this.gos.get(`clipboardDelimiter`);return k(e)?e:` `}processClipboardData(e){if(e==null)return;let t=ai(e,this.getClipboardDelimiter()),n=this.gos.getCallback(`processDataFromClipboard`);if(n&&(t=n({data:t})),t==null)return;this.gos.get(`suppressLastEmptyLineOnPaste`)&&this.removeLastLineIfBlank(t);let{rangeSvc:r,editSvc:i}=this.beans;this.doPasteOperation((e,n,a,o)=>{r?.isMoreThanOneCell()&&!this.hasOnlyOneValueToPaste(t)?this.pasteIntoActiveRange(t,e,n,o):this.pasteStartingFromFocusedCell(t,e,n,a,o),i?.stopEditing(void 0,{source:ni})})}doPasteOperation(e){let t=`clipboard`,{eventSvc:n,focusSvc:r,rowRenderer:i,gos:a}=this.beans;n.dispatchEvent({type:`pasteStart`,source:t});let{clientSideRowModel:o}=this,s=o?.rootNode,c=s&&new it(a.get(`aggregateOnlyChangedColumns`),s),l={},u=[];e(l,u,r.getFocusedCell(),c);let d=[...u];c&&(o.doAggregate(c),c.forEachChangedNodeDepthFirst(e=>{d.push(e)})),i.refreshCells({rowNodes:d}),this.dispatchFlashCells(l),this.fireRowChanged(u),this.refocusLastFocusedCell(),n.dispatchEvent({type:`pasteEnd`,source:t})}getPreProcessRangeCallback(e){return t=>{let{rangeSvc:n}=this.beans;if(!n)return;let{rowDiff:r,colDiff:i}=this.getAdjustedRangeDimensionForPaste(t,e);r!==0&&n.extendRangeRowCountBy(t,r),i!==0&&n.extendRangeColumnCountBy(t,i)}}getAdjustedRangeDimensionForPaste(e,t){let n=this.beans.rangeSvc,r=t.length,i=n.getRangeRowCount(e),a=i>=r&&i%r===0,o=t[0].length,s=e.columns.length,c=s>=o&&s%o===0;return{rowDiff:a?0:r-i,colDiff:c?0:o-s}}pasteIntoActiveRange(e,t,n,r){let i=0,a=0;this.iterateActiveRanges((o,s,c,l)=>{if(l-i>=e.length){if(l%e.length!==0)return;i+=a,a=0}let u=e[l-i];n.push(s);let d=this.gos.getCallback(`processCellFromClipboard`),f=c.columns,p=f.findIndex(je);p!==-1&&f.splice(p,1);for(let e=0;e=u.length&&(i=e%u.length);let a=this.processCell(s,n,u[i],ri,d,!0);s.setDataValue(n,a,ni),r?.addParentNode(s.parent,[n]);let{rowIndex:c,rowPinned:l}=o,p=R({rowIndex:c,column:n,rowPinned:l});t[p]=!0}a++},!1,this.getPreProcessRangeCallback(e))}getDisplayedColumnsStartingAt(t){let n=t,r=[],{visibleCols:i}=this.beans;for(;n&&e(n);)n=i.getColAfter(n);for(;n!=null;)r.push(n),n=i.getColAfter(n);return r}pasteStartingFromFocusedCell(e,t,n,r,i){if(!r)return;let a={rowIndex:r.rowIndex,rowPinned:r.rowPinned},o=this.getDisplayedColumnsStartingAt(r.column);this.isPasteSingleValueIntoRange(e)?this.pasteSingleValueIntoRange(e,n,t,i):this.pasteMultipleValues(e,a,n,o,t,ii,i)}isPasteSingleValueIntoRange(e){let t=this.beans.rangeSvc;return this.hasOnlyOneValueToPaste(e)&&!!t&&!t.isEmpty()}pasteSingleValueIntoRange(e,t,n,r){let i=e[0][0];this.iterateActiveRanges((e,a,o)=>{t.push(a),o.columns.forEach(e=>this.updateCellValue(a,e,i,n,ii,r))})}hasOnlyOneValueToPaste(e){return e.length===1&&e[0].length===1}copyRangeDown(){let{rangeSvc:e,gos:t,formula:n,valueSvc:r}=this.beans;if(!e||e.isEmpty())return;let i=[];this.doPasteOperation((e,a,o,s)=>{let c=t.getCallback(`processCellForClipboard`),l=t.getCallback(`processCellFromClipboard`);this.iterateActiveRanges((t,o,u)=>{let{columns:d}=u;i.length?(a.push(o),d.forEach((r,a)=>{if(!r.isCellEditable(o)||r.isSuppressPaste(o))return;r.isAllowFormula()&&n?.isFormula(i[a])&&(i[a]=n?.updateFormulaByOffset({value:i[a],rowDelta:1}));let c=this.processCell(o,r,i[a],ri,l,!0);o.setDataValue(r,c,ni),s&&s.addParentNode(o.parent,[r]);let{rowIndex:u,rowPinned:d}=t,f=R({rowIndex:u,column:r,rowPinned:d});e[f]=!0})):d.forEach(e=>{let t=this.processCell(o,e,r.getValue(e,o,`batch`),ri,c,!1,!0);i.push(t)})},!0)})}removeLastLineIfBlank(e){let t=O(e);if(t&&t.length===1&&t[0]===``){if(e.length===1)return;T(e,t)}}fireRowChanged(e){if(this.gos.get(`editType`)===`fullRow`)for(let t of e)this.eventSvc.dispatchEvent({type:`rowValueChanged`,node:t,data:t.data,rowIndex:t.rowIndex,rowPinned:t.rowPinned})}pasteMultipleValues(e,t,n,r,i,a,o){let s=t,c=this.beans,{gos:l}=c,u=this.clientSideRowModel!=null&&!l.get(`enableGroupEdit`)&&!l.get(`treeData`),d=()=>{for(;;){if(!s)return null;let e=A(c,s);if(s=C(c,{rowPinned:s.rowPinned,rowIndex:s.rowIndex}),e==null)return null;if(!(e.detail||e.footer||u&&e.group))return e}};for(let t of e){let e=d();e&&(t.forEach((t,n)=>this.updateCellValue(e,r[n],t,i,a,o)),n.push(e))}}updateCellValue(e,t,n,r,i,a){if(!e||!t?.isCellEditable(e)||t?.isSuppressPaste(e))return;let o=this.processCell(e,t,n,i,this.gos.getCallback(`processCellFromClipboard`),!0);e.setDataValue(t,o,ni);let{rowIndex:s,rowPinned:c}=e,l=R({rowIndex:s,column:t,rowPinned:c});r[l]=!0,a&&a.addParentNode(e.parent,[t])}copyToClipboard(e={}){this.copyOrCutToClipboard(e)}cutToClipboard(e={},t=`api`){this.gos.get(`suppressCutToClipboard`)||(this.eventSvc.dispatchEvent({type:`cutStart`,source:t}),this.copyOrCutToClipboard(e,!0),this.eventSvc.dispatchEvent({type:`cutEnd`,source:t}))}copyOrCutToClipboard(e,t){let{includeHeaders:n,includeGroupHeaders:r}=e,{gos:i,focusSvc:a}=this.beans;n??=i.get(`copyHeadersToClipboard`),r??=i.get(`copyGroupHeadersToClipboard`);let o={includeHeaders:n,includeGroupHeaders:r},s=i.get(`rowSelection`),c=i.get(`cellSelection`),l=null;this.shouldCopyCells(c,s)?(this.copySelectedRangeToClipboard(o),l=0):this.shouldCopyRows(s)?(this.copySelectedRowsToClipboard(o),l=1):a.isAnyCellFocused()&&(this.copyFocusedCellToClipboard(o),l=2),t&&l!==null&&this.clearCellsAfterCopy(l)}shouldCopyCells(e,t){let{rangeSvc:n,selectionSvc:r,gos:i}=this.beans;if(!n||n.isEmpty())return!1;if(e)return!(typeof t==`object`&&t.copySelectedRows&&!r?.isEmpty());{let e=i.get(`suppressCopySingleCellRanges`);return!(!n.isMoreThanOneCell()&&e)}}shouldCopyRows(e){let{selectionSvc:t,gos:n}=this.beans;return t?.isEmpty()??!0?!1:e&&typeof e!=`string`?e.copySelectedRows??!1:!n.get(`suppressCopyRowsToClipboard`)}clearCellsAfterCopy(e){let t=this.beans,{rangeSvc:n,focusSvc:r,eventSvc:i}=t;if(i.dispatchEvent({type:`keyShortcutChangedCellStart`}),e===0)n.clearCellRangeCellValues({cellEventSource:`clipboardSvc`});else if(e===1)this.clearSelectedRows();else{let e=r.getFocusedCell();if(e==null)return;let n=A(t,e);n&&this.clearCellValue(n,e.column)}i.dispatchEvent({type:`keyShortcutChangedCellEnd`})}clearSelectedRows(){let{selectionSvc:e,visibleCols:t}=this.beans,n=e?.getSelectedNodes()??[],r=t.allCols;for(let e of n)for(let t of r)this.clearCellValue(e,t)}clearCellValue(e,t){if(!t.isCellEditable(e))return;let n=this.beans.valueSvc.getDeleteValue(t,e);e.setDataValue(t,n,`clipboardSvc`)}iterateActiveRanges(e,t,n){let r=this.beans.rangeSvc;if(!r||r.isEmpty())return;let i=r.getCellRanges(),a=t?[i[0]]:i;for(let t of a)this.iterateActiveRange({cellRange:t,rowCallback:e,preProcessRange:n})}iterateActiveRange(e){let{cellRange:t,preProcessRange:n,rowCallback:r}=e,{beans:i}=this,{rangeSvc:a}=i;if(!a)return;n&&n(t);let o=a.getRangeStartRow(t),s=a.getRangeEndRow(t),c=0,l=!1;for(;!l&&o!=null;){let e=A(i,o);l=j(o,s),r(o,e,t,c++),o=C(i,o)}}copySelectedRangeToClipboard(e={}){let t=this.beans.rangeSvc;if(!t||t.isEmpty())return;let{data:n,cellsToFlash:r}=t.areAllRangesAbleToMerge()?this.buildDataFromMergedRanges(t,e):this.buildDataFromRanges(t,e);this.copyDataToClipboard(n),this.dispatchFlashCells(r)}buildDataFromMergedRanges(e,t){let n=new Set,r=e.getCellRanges(),i=new Map,a=[],o={},s=I(this.gos,this.beans.rowModel),c=new Set;s||this.beans.rowModel.forEachNode(e=>{c.add(e.rowIndex)});for(let t of r){t.columns.forEach(e=>n.add(e));let{rowPositions:r,cellsToFlash:l}=this.getRangeRowPositionsAndCellsToFlash(e,t);for(let e of r){let t=c.has(e.rowIndex);if(!s&&!t)continue;let n=`${e.rowIndex}-${e.rowPinned||`null`}`;i.get(n)||(i.set(n,!0),a.push(e))}Object.assign(o,l)}let l=this.beans.visibleCols.allCols,u=Array.from(n);return u.sort((e,t)=>l.indexOf(e)-l.indexOf(t)),{data:this.buildExportParams({columns:u,rowPositions:a,includeHeaders:t.includeHeaders,includeGroupHeaders:t.includeGroupHeaders}),cellsToFlash:o}}buildDataFromRanges(e,t){let n=e.getCellRanges(),r=[],i={};for(let a of n){let{rowPositions:n,cellsToFlash:o}=this.getRangeRowPositionsAndCellsToFlash(e,a);Object.assign(i,o),r.push(this.buildExportParams({columns:a.columns,rowPositions:n,includeHeaders:t.includeHeaders,includeGroupHeaders:t.includeGroupHeaders}))}return{data:r.join(` `),cellsToFlash:i}}getRangeRowPositionsAndCellsToFlash(e,t){let n=[],r={},i=e.getRangeStartRow(t),a=e.getRangeEndRow(t),o=i;for(;o;){n.push(o);for(let e of t.columns){let{rowIndex:t,rowPinned:n}=o,i=R({rowIndex:t,column:e,rowPinned:n});r[i]=!0}if(j(o,a))break;o=C(this.beans,o)}return{rowPositions:n,cellsToFlash:r}}getCellsToFlashFromRowNodes(e){let t=this.beans.visibleCols.allCols,n={};for(let r=0;r{let{value:n,valueFormatted:r}=this.beans.valueSvc.getValueForDisplay({column:t,node:e,includeValueFormatted:!0,from:`batch`}),i=r??n??``,o=a.getCallback(`processCellForClipboard`);return o?o({column:t,node:e,value:i,type:ii,formatValue:n=>this.beans.valueSvc.formatValue(t,e,n)??n,parseValue:r=>this.beans.valueSvc.parseValue(t,e,r,n)??r}):i},processHeaderCallback:a.getCallback(`processHeaderForClipboard`),processGroupHeaderCallback:a.getCallback(`processGroupHeaderForClipboard`)};return o.getDataAsCsv(s,!0)}dispatchFlashCells(e){window.setTimeout(()=>{this.eventSvc.dispatchEvent({type:`flashCells`,cells:e})},0)}processCell(e,t,n,r,i,a,o){let{valueSvc:s,formula:c}=this.beans;return i?i({column:t,node:e,value:n,type:r,formatValue:n=>s.formatValue(t,e??null,n)??n,parseValue:n=>s.parseValue(t,e??null,n,s.getValue(t,e,`edit`))}):a&&t.getColDef().useValueParserForImport!==!1?s.parseValue(t,e??null,n,s.getValue(t,e,`edit`)):o&&t.getColDef().useValueFormatterForExport!==!1?c?.isFormula(n)?n:s.formatValue(t,e??null,n)??n:n}copyDataToClipboard(e){let t=this.gos.getCallback(`sendToClipboard`);if(t){t({data:e});return}if(!this.gos.get(`suppressClipboardApi`)&&navigator.clipboard){navigator.clipboard.writeText(e).catch(t=>{z(40,{e:t,method:`writeText`}),this.copyDataToClipboardLegacy(e)});return}this.copyDataToClipboardLegacy(e)}copyDataToClipboardLegacy(e){this.executeOnTempElement(t=>{let n=_(this.beans),r=m(this.beans);t.value=e||` `,t.select(),t.focus({preventScroll:!0}),n.execCommand(`copy`)||z(41),r?.focus!=null&&r.focus({preventScroll:!0})})}executeOnTempElement(e,t){if(!this.gridCtrl)return;let n=_(this.beans),r=n.createElement(`textarea`),i=r.style;i.width=`1px`,i.height=`1px`;let a=n.documentElement;i.top=a.scrollTop+`px`,i.left=a.scrollLeft+`px`,i.position=`absolute`,i.opacity=`0`,this.gridCtrl.getGui().appendChild(r);try{e(r)}catch{z(42)}t?window.setTimeout(()=>{t(r),r.remove()},100):r.remove()}}],apiFunctions:{copyToClipboard:Xr,cutToClipboard:Zr,copySelectedRowsToClipboard:Qr,copySelectedRangeToClipboard:$r,copySelectedRangeDown:ei,pasteFromClipboard:ti},dependsOn:[W,_e,ue,f]},si=class extends Ie{constructor(){super(...arguments),this.changedCalculatedValues=!1,this.dragging=!1,this.shouldDestroyOnEndDragging=!1}postConstruct(){this.beans.dragSvc.addDragSource({dragStartPixels:0,eElement:this.getGui(),onDragging:e=>{let t=!1;if(this.dragging||(t=!0,this.dragging=!0,b(this.beans).classList?.add(this.getDraggingCssClass())),this.updateValuesOnMove(e),t){this.changedCalculatedValues=!1;return}this.beans.rangeSvc.autoScrollService.check(e),this.changedCalculatedValues&&=(this.onDrag(e),!1)},onDragStop:e=>{this.dragging=!1,this.onDragEnd(e),this.clearDragProperties()},onDragCancel:()=>{this.dragging=!1,this.onDragCancel(),this.clearDragProperties()}}),this.addManagedEventListeners({cellSelectionChanged:this.updateLocalRangeIfNeeded.bind(this)}),this.addManagedElementListeners(this.getGui(),{pointerdown:ci,mousedown:ci})}getLastCellHovered(){return this.lastCellHovered}getDraggingCssClass(){return`ag-dragging-${this.type===0?`fill`:`range`}-handle`}updateValuesOnMove(e){let t=tt(this.gos,e);!t||this.shouldSkipCell(t)||this.lastCellHovered&&Fe(t,this.lastCellHovered)||(this.lastCellHovered=t,this.changedCalculatedValues=!0)}clearDragProperties(){this.clearValues(),this.beans.rangeSvc.autoScrollService.ensureCleared(),b(this.beans).classList?.remove(this.getDraggingCssClass()),this.shouldDestroyOnEndDragging&&this.destroy()}getType(){return this.type}refresh(e,t){let n=this.cellCtrl,r=this.getGui(),i=t??O(this.beans.rangeSvc.getCellRanges()),a=i.startRow,o=i.endRow;if(a&&o&&(F(o,a)?(this.rangeStartRow=o,this.rangeEndRow=a):(this.rangeStartRow=a,this.rangeEndRow=o)),n!==e||!Ot(r)){this.cellCtrl=e;let t=e.comp.getParentOfValue();t&&t.appendChild(r)}this.cellRange=i}clearValues(){this.lastCellHovered=void 0}destroy(){if(!this.shouldDestroyOnEndDragging&&this.dragging){x(this.getGui(),!1),this.shouldDestroyOnEndDragging=!0;return}this.shouldDestroyOnEndDragging=!1,super.destroy(),this.getGui()?.remove()}updateLocalRangeIfNeeded(e){if(!this.cellRange)return;let{id:t,type:n}=this.cellRange;if(!t||t!==e.id)return;let r=this.beans.rangeSvc?.getCellRanges().find(e=>e.id===t&&e.type===n);r&&r!==this.cellRange&&(this.cellRange=r)}},ci=e=>{e.stopPropagation()};function li(e){let t=e.length,n=0;if(t<=1)return e;for(let t=0;t1){n=Math.max(n,parseInt(i[1],10));continue}Math.floor(r)!==r&&(n=Math.max(n,r.toString().split(`.`)[1].length))}let r=0,i=0,a=0,o=0,s=0;for(let n=0;no?`x`:`y`:s,c!==this.dragAxis&&(this.dragAxis=c,this.changedCalculatedValues=!0)}shouldSkipCell(e){return me(e.column)}onDrag(e){if(!this.initialPosition){let e=this.cellCtrl;if(!e)return;this.initialPosition=e.cellPosition}let t=this.getLastCellHovered();t&&this.markPathFrom(this.initialPosition,t)}onDragEnd(e){if(this.initialXY=null,!this.markedCells.length)return;let t=this.dragAxis===`x`,{cellRange:n,rangeStartRow:r,rangeEndRow:i,beans:{rangeSvc:a}}=this,o=n.columns.length,s;if(!this.isUp&&!this.isLeft)s=a.createCellRangeFromCellRangeParams({rowStartIndex:r.rowIndex,rowStartPinned:r.rowPinned,columnStart:n.columns[0],rowEndIndex:t?i.rowIndex:this.lastCellMarked.rowIndex,rowEndPinned:t?i.rowPinned:this.lastCellMarked.rowPinned,columnEnd:t?this.lastCellMarked.column:n.columns[o-1]});else{let e=t?r:this.lastCellMarked;s=a.createCellRangeFromCellRangeParams({rowStartIndex:e.rowIndex,rowStartPinned:e.rowPinned,columnStart:t?this.lastCellMarked.column:n.columns[0],rowEndIndex:i.rowIndex,rowEndPinned:i.rowPinned,columnEnd:n.columns[o-1]})}s&&this.performFill({event:e,initialRange:n,finalRange:s,shouldUpdateRange:!0})}onDragCancel(){this.initialXY=null,this.markedCells.length&&this.clearMarkedPath()}performFill({event:e,initialRange:t,finalRange:n,shouldUpdateRange:r}){let{eventSvc:i,rangeSvc:a}=this.beans;i.dispatchEvent({type:`fillStart`}),this.handleValueChanged(t,n,e),r&&a.setCellRanges([n]),i.dispatchEvent({type:`fillEnd`,initialRange:t,finalRange:n})}getFillHandleDirection(){let e=ae(this.gos)?.direction;return e?e!==`x`&&e!==`y`&&e!==`xy`?(z(177),`xy`):e:`xy`}handleValueChanged(e,t,n){let{beans:r}=this,{rangeSvc:i,gos:a,valueSvc:o}=r,s=i.getRangeEndRow(e),c=i.getRangeStartRow(e),l=i.getRangeEndRow(t),u=i.getRangeStartRow(t),d=this.dragAxis===`y`;if(this.isReduce&&!ae(a)?.suppressClearOnFillReduction){let n=d?e.columns:e.columns.filter(e=>t.columns.indexOf(e)<0),i=d?C(r,l):u;i&&this.clearCellsInRange(i,s,n);return}let f=[],p=[],m=[],h=[],g=!0,_=0,v=()=>{f.length=0,p.length=0,m.length=0,h.length=0,_=0},b=(t,n)=>{let i=this.isUp?s:c,a=!1;for(d&&(g=!0,v());!a&&i;){let o=A(r,i);if(!o)break;if(d&&t)x(f,t,o,()=>!j(i,this.isUp?c:s));else if(n){g=!0,v();for(let t of n)x(f,t,o,()=>t!==(this.isLeft?e.columns[0]:O(e.columns)))}a=j(i,this.isUp?u:l),i=this.isUp?B(this.beans,i):C(r,i)}},x=(e,t,r,i)=>{let a,s=!1;if(g)a=o.getValue(t,r,`edit`),p.push(a),m.push(o.getValue(t,r,`edit`,!0)),h.push(o.getValueForDisplay({column:t,node:r,from:`edit`}).valueFormatted),g=i();else{let{value:i,fromUserFunction:c,sourceCol:l,sourceRowNode:u}=this.processValues({event:n,values:e,initialValues:p,initialNonAggregatedValues:m,initialFormattedValues:h,col:t,rowNode:r,idx:_++});if(a=i,t.isCellEditable(r)){let e=o.getValue(t,r,`edit`);if(!c){if(l){let e=l.getColDef();if(e.useValueFormatterForExport!==!1&&e.valueFormatter){let e=o.getValueForDisplay({column:l,node:u,includeValueFormatted:!0,from:`edit`}).valueFormatted;e!=null&&(a=e)}}t.getColDef().useValueParserForImport!==!1&&(a=o.parseValue(t,r,l?a:y(a),e))}!c||e!==a?r.setDataValue(t,a,`rangeSvc`):s=!0}}s||e.push({value:a,column:t,rowNode:r})};d?e.columns.forEach(e=>{b(e)}):b(void 0,this.isLeft?[...t.columns].reverse():t.columns),this.beans.editSvc?.stopEditing(void 0,{source:`fillHandle`})}clearCellsInRange(e,t,n){let r={startRow:e,endRow:t,columns:n,startColumn:n[0]};this.beans.rangeSvc.clearCellRangeCellValues({cellRanges:[r],restoreSourceInBatch:!0})}processValues(e){let{formula:t,valueSvc:n}=this.beans,{event:r,values:i,initialValues:a,initialNonAggregatedValues:o,initialFormattedValues:s,col:c,rowNode:l,idx:u}=e,d=ae(this.gos)?.setFillValue,f=this.dragAxis===`y`,p;if(p=f?this.isUp?`up`:`down`:this.isLeft?`left`:`right`,d){let e=d(L(this.gos,{event:r,values:i.map(({value:e})=>e),initialValues:a,initialNonAggregatedValues:o,initialFormattedValues:s,currentIndex:u,currentCellValue:n.getValue(c,l,`edit`),direction:p,column:c,rowNode:l}));if(e!==!1)return{value:e,fromUserFunction:!0}}let m=e=>typeof e==`number`&&Number.isFinite(e)||typeof e==`string`&&/^[+-]?\d+(?:\.\d+)?$/.test(e.trim()),h=i.every(({value:e})=>m(e));if(r.altKey||!h){let e=String(O(i)?.value??``);if(h&&a.length===1){let t=this.isUp||this.isLeft?-1:1;return{value:parseFloat(e)+1*t,fromUserFunction:!1}}let{value:n,column:r,rowNode:o}=i[u%i.length],s,c=r.isAllowFormula()&&t?.isFormula(e);if(c){let n=p===`up`?-1:p===`down`?1:0,r=p===`left`?-1:p===`right`?1:0;s=t.updateFormulaByOffset({value:e,rowDelta:n,columnDelta:r})}else s=n;return{value:s,fromUserFunction:!1,sourceCol:c?void 0:r,sourceRowNode:o}}return{value:O(li(i.map(({value:e})=>Number(e)))),fromUserFunction:!1}}clearValues(){this.clearMarkedPath(),this.clearCellValues(),this.lastCellMarked=void 0,super.clearValues()}clearMarkedPath(){for(let e of this.markedCells){if(!e.isAlive())continue;let{comp:t}=e;t.toggleCss(`ag-selection-fill-top`,!1),t.toggleCss(`ag-selection-fill-right`,!1),t.toggleCss(`ag-selection-fill-bottom`,!1),t.toggleCss(`ag-selection-fill-left`,!1)}this.markedCells.length=0,this.isUp=!1,this.isLeft=!1,this.isReduce=!1}clearCellValues(){this.cellValues.length=0}markPathFrom(e,t){if(this.clearMarkedPath(),this.clearCellValues(),this.dragAxis===`y`){if(j(t,e))return;let n=F(t,e),{rangeStartRow:r,rangeEndRow:i}=this;n&&(t.rowPinned==r.rowPinned&&t.rowIndex>=r.rowIndex||r.rowPinned!=i.rowPinned&&t.rowPinned==i.rowPinned&&t.rowIndex<=i.rowIndex)?(this.reduceVertical(e,t),this.isReduce=!0):(this.extendVertical(e,t,n),this.isReduce=!1)}else{let n=e.column,r=t.column;if(n===r)return;let i=this.beans.visibleCols.allCols,a=i.indexOf(n),o=i.indexOf(r);o<=a&&o>=i.indexOf(this.cellRange.columns[0])?(this.reduceHorizontal(e,t),this.isReduce=!0):(this.extendHorizontal(e,t,o=4),e.toggleCss(_i,a),we(r,i>0?!0:void 0),e.toggleCss(vi,this.isSingleCell()),this.updateRangeBorders(),this.refreshRangeStyleAndHandle()}updateRangeBorders(){let e=this.getRangeBorders(),t=this.isSingleCell(),n=!t&&e.top,r=!t&&e.right,i=!t&&e.bottom,a=!t&&e.left,o=this.cellComp;o.toggleCss(xi,n),o.toggleCss(Si,r),o.toggleCss(Ci,i),o.toggleCss(wi,a)}isSingleCell(){let{rangeSvc:e}=this;return this.rangeCount===1&&!!e&&!e.isMoreThanOneCell()}getHasChartRange(){let{rangeSvc:e}=this;if(!this.rangeCount||!e)return!1;let t=e.getCellRanges();return t.length>0&&t.every(e=>[M.DIMENSION,M.VALUE].includes(e.type))}updateRangeBordersIfRangeCount(){this.rangeCount>0&&(this.updateRangeBorders(),this.refreshRangeStyleAndHandle())}getRangeBorders(){let e=this.beans.gos.get(`enableRtl`),t=!1,n=!1,r=!1,i=!1,{rangeSvc:a,beans:{visibleCols:o},cellCtrl:{cellPosition:s}}=this,c=s.column,l=a.getCellRanges().filter(e=>a.isCellInSpecificRange(s,e));if(!l.length)return{top:t,right:n,bottom:r,left:i};let u,d;e?(u=o.getColAfter(c),d=o.getColBefore(c)):(u=o.getColBefore(c),d=o.getColAfter(c)),u||(i=!0),d||(n=!0);for(let e=0;e=0;t--){let r=n[t],i=r.colorClass;if(i&&e.isCellInSpecificRange(this.cellCtrl.cellPosition,r))return i}return null}refreshHandleColor(e){let t=this.selectionHandle?.getGui?.(),n=e?.colorClass??null;if(!t){this.handleColorClass=null;return}this.handleColorClass&&this.handleColorClass!==n&&t.classList.remove(this.handleColorClass),n?t.classList.add(n):this.handleColorClass&&t.classList.remove(this.handleColorClass),this.handleColorClass=n??null}getRangeForHandle(){let{gos:e,editSvc:t}=this.beans,n=this.rangeSvc,r=n.getCellRanges(),i=r.length;if(this.rangeCount<1||i<1)return null;let a=t?.isRangeSelectionEnabledWhileEditing(),o=a?r:[O(r)];for(let r of o){let{cellPosition:o,column:s}=this.cellCtrl,c=Ei(e)&&!s.isSuppressFillHandle(),l=Ti(e),u=!t?.isEditing(this.cellCtrl,{withOpenEditor:!0})&&(a||i===1&&(c||l));if(this.hasChartRange&&(u=r.type===M.VALUE),u&&r.endRow!=null&&n.isContiguousRange(r)&&n.isBottomRightCell(r,o))return r}return null}addSelectionHandle(e){let{beans:t}=this,n=t.editSvc?.isRangeSelectionEnabledWhileEditing(),r=e.type,i=!n&&Ei(t.gos)&&p(r)?0:1;if(this.selectionHandle&&this.selectionHandle.getType()!==i&&(this.selectionHandle=t.context.destroyBean(this.selectionHandle)),!this.selectionHandle){let e=t.registry.createDynamicBean(i===0?`fillHandle`:`rangeHandle`,!1);e&&(this.selectionHandle=t.context.createBean(e))}this.selectionHandle?.refresh(this.cellCtrl,e)}destroy(){this.unsetComp()}},Oi=class extends H{constructor(e){super(),this.eContainer=e}postConstruct(){let{beans:e,gos:t,eContainer:n}=this,r=e.rangeSvc,i={eElement:n,onDragStart:r.onDragStart.bind(r),onDragStop:r.onDragStop.bind(r),onDragging:r.onDragging.bind(r)},a=e.dragSvc,o=a.addDragSource.bind(a,i),s=a.removeDragSource.bind(a,i);this.addManagedPropertyListeners([`enableRangeSelection`,`cellSelection`],()=>{V(t)?o():s()}),this.addDestroyFunc(s),V(t)&&o()}},ki=class extends H{constructor(e,t){super(),this.column=e,this.eGui=t}postConstruct(){this.addManagedElementListeners(this.eGui,{click:e=>e&&this.onClick(e)})}onClick(e){this.beans.rangeSvc?.handleColumnSelection(this.column,e)}},Ai=class extends H{constructor(e,t){super(),this.column=e,this.comp=t,this.columnMap=new Map,this.isActive=!1,this.resetColumnMap()}postConstruct(){this.addManagedPropertyListener(`cellSelection`,()=>{this.refreshActive()}),this.refreshActive(),this.setupRangeHeaderHighlight()}resetColumnMap(){this.columnMap.clear();let e;e=this.column.isColumn?[this.column]:this.column.getDisplayedLeafColumns();for(let t of e)this.columnMap.set(t,!1)}refreshActive(){let{gos:e,rangeSvc:t}=this.beans,n=e.get(`cellSelection`);this.isActive=!!(n&&t&&typeof n==`object`&&n.enableHeaderHighlight)}setupRangeHeaderHighlight(){let e=this.onRangeSelectionChanged.bind(this);this.addManagedEventListeners({rangeSelectionChanged:e,columnPinned:e,columnMoved:e,columnGroupOpened:e}),e()}onRangeSelectionChanged(){if(!this.isActive)return;this.resetColumnMap();let e=this.beans.rangeSvc.getCellRanges(),t=!1,n=!0;for(let n of e){if(t)break;for(let e of n.columns)this.columnMap.has(e)&&(this.columnMap.set(e,!0),t||=!0)}for(let e of Array.from(this.columnMap.values()))if(e===!1){n=!1;break}this.comp.toggleCss(`ag-header-range-highlight`,t&&n)}destroy(){super.destroy(),this.comp=null,this.column=null}},ji=class extends H{constructor(){super(...arguments),this.beanName=`rangeSvc`,this.rangeSelectionExtensions=[],this.cellRanges=[],this.bodyScrollListener=this.onBodyScroll.bind(this),this.dragging=!1,this.intersectionRange=!1,this.columnRangeSelectionCtx={}}wireBeans(e){this.rowModel=e.rowModel,this.dragSvc=e.dragSvc,this.colModel=e.colModel,this.visibleCols=e.visibleCols,this.cellNavigation=e.cellNavigation,this.ctrlsSvc=e.ctrlsSvc}postConstruct(){let e=this.onColumnsChanged.bind(this),t=()=>this.removeAllCellRanges(),n=this.refreshLastRangeStart.bind(this);this.addManagedEventListeners({newColumnsLoaded:e,columnVisible:e,columnValueChanged:e,columnPivotModeChanged:t,columnRowGroupChanged:t,columnPivotChanged:t,columnGroupOpened:n,columnMoved:n,columnPinned:n}),this.ctrlsSvc.whenReady(this,e=>{let t=e.gridBodyCtrl;this.autoScrollService=new ht({scrollContainer:t.eBodyViewport,scrollAxis:`xy`,getVerticalPosition:()=>t.scrollFeature.getVScrollPosition().top,setVerticalPosition:e=>t.scrollFeature.setVerticalScrollPosition(e),getHorizontalPosition:()=>t.scrollFeature.getHScrollPosition().left,setHorizontalPosition:e=>t.scrollFeature.setHorizontalScrollPosition(e),shouldSkipVerticalScroll:()=>!ut(this.gos,`normal`),shouldSkipHorizontalScroll:()=>!t.scrollFeature.isHorizontalScrollShowing()})})}registerRangeSelectionExtension(e){this.rangeSelectionExtensions.includes(e)||this.rangeSelectionExtensions.push(e)}unregisterRangeSelectionExtension(e){T(this.rangeSelectionExtensions,e)}shouldSuppressRangeSelection(e){return this.rangeSelectionExtensions.some(t=>t.shouldSuppressRangeSelection?.(e))}shouldSkipColumn(e){return this.rangeSelectionExtensions.some(t=>t.shouldSkipColumn?.(e))}isAllColumnsSelectionCell(e){return this.rangeSelectionExtensions.some(t=>t.isAllColumnsSelectionCell?.(e))}isAllColumnsRange(e,t){return this.rangeSelectionExtensions.some(n=>n.isAllColumnsRange?.(e,t))}updateSelectionModeForCell(e){this.setSelectionMode(this.isAllColumnsSelectionCell(e))}onDragStart(e){let t=this.gos,n=e.target;if(!V(t)||Ae(t,n)?.isSuppressMouseEvent(e)||this.shouldSuppressRangeSelection(n))return;let{shiftKey:r}=e,i=this.isMultiRange(e),a=r&&!!this.cellRanges?.length;!i&&(!a||k(O(this.cellRanges).type))&&this.removeAllCellRanges(!0);let o=this.dragSvc.startTarget;if(o&&this.updateValuesOnMove(o),this.lastCellHovered){if(this.dragging=!0,this.lastMouseEvent=e,this.intersectionRange=i&&this.getCellRangeCount(this.lastCellHovered)>1,a||this.setNewestRangeStartCell(this.lastCellHovered),this.cellRanges.length>0)this.draggingRange=O(this.cellRanges);else{let e={rowIndex:this.lastCellHovered.rowIndex,rowPinned:this.lastCellHovered.rowPinned},t=this.getColumnsFromModel([this.lastCellHovered.column]);if(!t?.length)return;this.draggingRange={startRow:e,endRow:e,columns:t,startColumn:this.newestRangeStartCell.column},this.cellRanges.push(this.draggingRange)}this.ctrlsSvc.getGridBodyCtrl().eBodyViewport.addEventListener(`scroll`,this.bodyScrollListener,{passive:!0}),this.dispatchChangedEvent(!0,!1,this.draggingRange.id)}}onDragging(e){let{dragging:t,lastCellHovered:n,newestRangeStartCell:r,autoScrollService:i,cellHasChanged:a}=this;if(!t||!e)return;this.updateValuesOnMove(e.target),this.lastMouseEvent=e;let o=e=>n&&n.rowPinned===e&&r.rowPinned===e,s=o(`top`)||o(`bottom`);if(i.check(e,s),!a||!n)return;let c=r?.column,l=n?.column,u=this.calculateColumnsBetween(c,l);if(!u)return;let{rowIndex:d,rowPinned:f}=n;this.draggingRange.endRow={rowIndex:d,rowPinned:f},this.draggingRange.columns=u,this.dispatchChangedEvent(!1,!1,this.draggingRange.id)}onDragStop(){if(!this.dragging)return;let{id:e}=this.draggingRange;this.autoScrollService.ensureCleared(),this.ctrlsSvc.getGridBodyCtrl().eBodyViewport.removeEventListener(`scroll`,this.bodyScrollListener),this.lastMouseEvent=null,this.dragging=!1,this.draggingRange=void 0,this.lastCellHovered=void 0,this.intersectionRange&&(this.intersectionRange=!1,this.intersectLastRange()),this.dispatchChangedEvent(!1,!0,e)}onColumnsChanged(){this.refreshLastRangeStart();let e=this.visibleCols.allCols;for(let t of this.cellRanges){let n=t.columns;t.columns=t.columns.filter(t=>t.isVisible()&&e.indexOf(t)!==-1),_t(n,t.columns)||this.dispatchChangedEvent(!1,!0,t.id)}let t=this.cellRanges.length;this.cellRanges=this.cellRanges.filter(e=>e.columns.length>0),t>this.cellRanges.length&&this.dispatchChangedEvent(!1,!0)}refreshLastRangeStart(){let e=O(this.cellRanges);e&&this.refreshRangeStart(e)}isContiguousRange(e){let t=e.columns;if(!t.length)return!1;let n=this.visibleCols.allCols,r=t.map(e=>n.indexOf(e)).sort((e,t)=>e-t);return O(r)-r[0]+1===t.length}getRangeStartRow(e){return e.startRow&&e.endRow?F(e.startRow,e.endRow)?e.startRow:e.endRow:{rowIndex:0,rowPinned:(this.beans.pinnedRowModel?.getPinnedTopRowCount()??0)>0?`top`:null}}getRangeEndRow(e){if(e.startRow&&e.endRow)return F(e.startRow,e.endRow)?e.endRow:e.startRow;let t=this.beans.pinnedRowModel?.getPinnedBottomRowCount()??0;return t>0?{rowIndex:t-1,rowPinned:`bottom`}:{rowIndex:this.rowModel.getRowCount()-1,rowPinned:null}}getRangeRowCount(e){let t=this.beans,n=this.getRangeStartRow(e),r=this.getRangeEndRow(e),i=be(t,n);return be(t,r)-i+1}handleCellMouseDown(e,t){let{beans:n}=this,r=e.target;if(this.shouldSuppressRangeSelection(r))return;let i=this.isAllColumnsSelectionCell(t);if(i&&e.preventDefault(),e.shiftKey)return this.extendLatestRangeToCell(t);if(i&&We(n,e))return;let a=this.isMultiRange(e);this.updateSelectionModeForCell(t);let o=this.calculateColumnsBetween(t.column,t.column);if(!o)return;let s=i?this.findContainingRange({columns:o,startRow:t,endRow:t}):void 0;i&&s&&a&&(e.ctrlKey||e.metaKey)&&s?this.removeRowFromAllColumnsRange(t,s):this.setRangeToCell(t,a)}isMultiRange(e){let{ctrlKey:t,metaKey:n}=e,{editingWithRanges:r,allowMulti:i}=this.getMultiRangeContext();return r||(i?t||n:!1)}getMultiRangeContext(){let{gos:e,editSvc:n}=this.beans,r=!!n?.isEditing()&&!!n?.isRangeSelectionEnabledWhileEditing(),i=t(e)&&!r;return{editingWithRanges:r,suppressMultiRanges:i,allowMulti:!i}}removeRowFromAllColumnsRange(e,t){let{beans:n,cellRanges:r}=this,i=ge(n),a=Ce(n),o=this.getRangeStartRow(t),s=this.getRangeEndRow(t);if(!o&&j(i,e))Ii(t,C(n,i),`top`);else if(!s&&j(a,e))Ii(t,B(n,a),`bottom`);else if(j(o,s))T(r,t);else if(j(o,e))Ii(t,C(n,e),`top`);else if(j(s,e))Ii(t,B(n,e),`bottom`);else{let i=B(n,e),a=C(n,e);t.startRow=o,t.endRow=i??void 0,r.push({...t,startRow:a??void 0,endRow:s})}this.dispatchChangedEvent(!0,!0)}setRangeToCell(e,t=!1){let{gos:n}=this;if(!V(n))return;this.updateSelectionModeForCell(e);let r=this.calculateColumnsBetween(e.column,e.column);if(!r)return;let{suppressMultiRanges:i}=this.getMultiRangeContext();(i||!t||p(this.cellRanges))&&this.removeAllCellRanges(!0);let a={rowIndex:e.rowIndex,rowPinned:e.rowPinned},o={startRow:a,endRow:a,columns:r,startColumn:e.column};this.cellRanges.push(o),this.setNewestRangeStartCell(e),this.onDragStop(),this.dispatchChangedEvent(!0,!0)}getRangeLastColumn(e){let t=e.columns[0],n=O(e.columns);return this.newestRangeStartCell?.column===t?n:t}extendRangeRowCountBy(e,t){let{beans:n}=this,{startRow:r,endRow:i}=e;if(!r||!i)return;let a=0,o,s=F(i,r);o=s?r:i;let c=t>0?C:B,l=Math.abs(t);for(;at.indexOf(e)).filter(e=>e>-1).sort((e,t)=>e-t);return{left:t[n[0]],right:t[O(n)]}}extendLatestRangeInDirection(e){if(this.isEmpty()||!this.newestRangeStartCell)return;let t=e.key,n=e.ctrlKey||e.metaKey,r=O(this.cellRanges),i=this.newestRangeStartCell,a=r.endRow.rowIndex,o=r.endRow.rowPinned,s={column:this.getRangeLastColumn(r),rowIndex:a,rowPinned:o},c=this.cellNavigation.getNextCellToFocus(t,s,n);if(c)return this.setCellRange({rowStartIndex:i.rowIndex,rowStartPinned:i.rowPinned,rowEndIndex:c.rowIndex,rowEndPinned:c.rowPinned,columnStart:i.column,columnEnd:c.column}),c}setCellRange(e){V(this.gos)&&(this.removeAllCellRanges(!0),this.addCellRange(e))}setCellRanges(e){if(_t(this.cellRanges,e)||!this.verifyCellRanges(this.gos))return;this.setSelectionMode(!1),this.removeAllCellRanges(!0);let t=this.getColumnsFromModel(this.visibleCols.allCols)??[],n=!1;for(let r of e){if(r.columns&&r.startRow){let e=this.getColumnsFromModel(r.columns);if(!e||e.length===0)continue;r.columns=e;let{startRow:t}=r;this.setNewestRangeStartCell({rowIndex:t.rowIndex,rowPinned:t.rowPinned,column:r.columns[0]})}!n&&t.length>0&&this.isAllColumnsRange(r,t)&&(n=!0),this.cellRanges.push(r)}this.setSelectionMode(n),this.dispatchChangedEvent(!1,!0)}clearCellRangeCellValues(e){let{beans:t,eventSvc:n}=this,{cellEventSource:r=`rangeSvc`,dispatchWrapperEvents:i,wrapperEventSource:a=`deleteKey`,restoreSourceInBatch:o}=e,{cellRanges:s}=e;i&&(n.dispatchEvent({type:`cellSelectionDeleteStart`,source:a}),n.dispatchEvent({type:`rangeDeleteStart`,source:a})),s||=this.cellRanges;let{valueSvc:c,editSvc:l}=t,u=!!l?.isBatchEditing();this.forEachEditableCellInRanges(s,(e,t)=>{if(o&&u){l?.batchResetToSourceValue({rowNode:e,column:t});return}let n=c.getDeleteValue(t,e);e.setDataValue(t,n,r)}),i&&(n.dispatchEvent({type:`cellSelectionDeleteEnd`,source:a}),n.dispatchEvent({type:`rangeDeleteEnd`,source:a}))}createCellRangeFromCellRangeParams(e){return this.createPartialCellRangeFromRangeParams(e,!1)}createPartialCellRangeFromRangeParams(e,t){let{columns:n,columnStart:r,columnEnd:i,rowStartIndex:a,rowStartPinned:o,rowEndIndex:s,rowEndPinned:c}=e,l=this.getColumnsFromParams(n,r,i);if(!l||!t&&l.columns.length===0)return;let{columns:u,startsOnTheRight:d}=l;return{startRow:Mi(a,o),endRow:Mi(s,c),columns:u,startColumn:this.getColumnFromModel(r)??(d?O(u):u[0])}}addCellRange(e){let t=this.gos;if(!V(t)||!this.verifyCellRanges(t))return;this.setSelectionMode(!1);let n=this.createCellRangeFromCellRangeParams(e);if(n)return n.startRow&&this.setNewestRangeStartCell({rowIndex:n.startRow.rowIndex,rowPinned:n.startRow.rowPinned,column:n.startColumn}),this.cellRanges.push(n),this.dispatchChangedEvent(!1,!0,n.id),n}getCellRanges(){return this.cellRanges}isEmpty(){return this.cellRanges.length===0}isMoreThanOneCell(){let e=this.cellRanges.length;if(e===0)return!1;if(e>1)return!0;let t=this.cellRanges[0],n=this.getRangeStartRow(t),r=this.getRangeEndRow(t);return n.rowPinned!==r.rowPinned||n.rowIndex!==r.rowIndex||t.columns.length!==1}areAllRangesAbleToMerge(){let e=new Map;if(this.cellRanges.length<=1)return!0;for(let t of this.cellRanges)this.forEachRowInRange(t,n=>{let r=`${n.rowPinned||`normal`}_${n.rowIndex}`,i=e.get(r),a=t.columns.map(e=>e.getId());if(i){let e=a.filter(e=>i.indexOf(e)===-1);i.push(...e)}else e.set(r,a)});let t;for(let n of e.values()){let e=n.sort().join();if(t===void 0){t=e;continue}if(t!==e)return!1}return!0}removeAllCellRanges(e){this.isEmpty()||(this.onDragStop(),this.cellRanges.length=0,e||this.dispatchChangedEvent(!1,!0))}isCellInAnyRange(e){return this.getCellRangeCount(e)>0}isCellInSpecificRange(e,t){let n=t.columns?.includes(e.column),r=this.isRowInRange(e,t);return n&&r}isColumnInAnyRange(e){let{beans:t}=this,n=ge(t),r=Ce(t);if(!n||!r)return!1;let i=e.isColumn?[e]:e.getDisplayedLeafColumns();return this.findContainingRange({columns:i,startRow:n,endRow:r},!0)!=null}findContainingRange({columns:e,startRow:t,endRow:n},r=!1){let i=this.cellRanges;for(let a=i.length-1;a>=0;a--){let o=i[a],s=e.every(e=>o.columns.includes(e)),c=!1;if(r)c=j(o.startRow,t)&&j(o.endRow,n);else{let e=t&&this.isRowInRange(t,o),r=n&&this.isRowInRange(n,o);c=!!e&&!!r}if(s&&c)return o}}isBottomRightCell(e,t){let n=this.visibleCols.allCols,r=e.columns.map(e=>n.indexOf(e)).sort((e,t)=>e-t),{startRow:i,endRow:a}=e,o=F(i,a)?a:i,s=n.indexOf(t.column)===O(r),c=t.rowIndex===o.rowIndex&&Tt(t.rowPinned)===Tt(o.rowPinned);return s&&c}getCellRangeCount(e){return this.cellRanges.filter(t=>this.isCellInSpecificRange(e,t)).length}isRowInRange(e,t){let n=this.getRangeStartRow(t),r=this.getRangeEndRow(t),i=j(e,n),a=j(e,r);if(i||a)return!0;let o=!F(e,n),s=F(e,r);return o&&s}intersectLastRange(e){let{editingWithRanges:t,suppressMultiRanges:n}=this.getMultiRangeContext();if(t||n||e&&this.dragging||this.isEmpty())return;let r=O(this.cellRanges),i=this.getRangeStartRow(r),a=this.getRangeEndRow(r),o=[];for(let e of this.cellRanges.slice(0,-1)){let t=this.getRangeStartRow(e),n=this.getRangeEndRow(e),s=e.columns,c=s.filter(e=>r.columns.indexOf(e)===-1);if(c.length===s.length){o.push(e);continue}if(F(a,t)||F(n,i)){o.push(e);continue}let l=o.length;if(F(t,i)){let e={columns:[...s],startColumn:r.startColumn,startRow:{...t},endRow:B(this.beans,i)};o.push(e)}if(c.length>0){let e={columns:c,startColumn:c.includes(r.startColumn)?r.startColumn:c[0],startRow:Ni([{...i},{...t}]),endRow:Pi([{...a},{...n}])};o.push(e)}F(a,n)&&o.push({columns:[...s],startColumn:r.startColumn,startRow:C(this.beans,a),endRow:{...n}}),o.length-l===1&&(o[o.length-1].id=e.id)}this.cellRanges=o,e&&this.dispatchChangedEvent(!1,!0)}createRangeHighlightFeature(e,t,n){e.createManagedBean(new Ai(t,n))}setSelectionMode(e){this.selectionMode=e?1:0}refreshRangeStart(e){let{startColumn:t,columns:n}=e,r=(t,n)=>{let r=e.columns.filter(e=>e!==t);t?(e.startColumn=t,e.columns=n?[t,...r]:[...r,t]):e.columns=r},{left:i,right:a}=this.getRangeEdgeColumns(e);if(t===n[0]&&t!==i){r(i,!0);return}t===O(n)&&t===a&&r(a,!1)}setNewestRangeStartCell(e){this.newestRangeStartCell=e}getColumnsFromParams(e,t,n){let r=!e&&!t&&!n,i,a=!1;return r||e?i=this.getColumnsFromModel(r?void 0:e):t&&n&&(i=this.calculateColumnsBetween(t,n),i?.length&&(a=i[0]!==this.getColumnFromModel(t))),i?{columns:i,startsOnTheRight:a}:void 0}verifyCellRanges(e){let{suppressMultiRanges:t}=this.getMultiRangeContext(),n=Le(e)&&t&&this.cellRanges.length>1;return n&&z(93),!n}forEachRowInRange(e,t){let n=this.getRangeStartRow(e),r=this.getRangeEndRow(e),i=n;for(;i&&(t(i),!j(i,r));)i=C(this.beans,i)}forEachEditableCellInRanges(e,t){let{beans:n}=this;for(let r of e)this.forEachRowInRange(r,e=>{let i=A(n,e);if(i)for(let e=0;e0,u=t.ctrlKey||t.metaKey,d=!s||u,f=ge(r),p=Ce(r);if(!f||!p)return;if(t.key===l.ENTER&&t.preventDefault(),t.shiftKey){let t=i.root;if(!t)return;let n=e.isColumn?e:O(e.getLeafColumns()),r=this.findContainingRange({columns:[t],startRow:f,endRow:p},!0);if(!r){T(a,i.lastCellRange),this.selectColumns(this.calculateColumnsBetween(t,n),f,p);return}this.updateRangeRowBoundary({cellRange:r,boundary:`end`,cellPosition:{column:n,...p}});return}c&&(o||!u&&!s)&&this.removeAllCellRanges(!0);let m=(e,t)=>{let n=this.findContainingRange({columns:e,startRow:f,endRow:p},!0);if(n&&d)this.deselectColumnsFromRange(n,e);else{let t=this.selectColumns(e,f,p);t&&(i.lastCellRange=t)}i.root=t};if(e.isColumn)m([e],e);else{let t=e.getDisplayedLeafColumns();m(t,t[0])}}deselectColumnsFromRange(e,t){oe(e.columns,t),t.includes(e.startColumn)&&(e.startColumn=e.columns[0]),e.columns.length===0&&T(this.cellRanges,e),this.dispatchChangedEvent(!0,!0)}selectColumns(e,t,n){return this.addCellRange({columns:e,columnStart:e[0],columnEnd:O(e),rowStartIndex:t.rowIndex,rowStartPinned:t.rowPinned,rowEndIndex:n.rowIndex,rowEndPinned:n.rowPinned})}};function Mi(e,t){return e==null?void 0:{rowIndex:e,rowPinned:t}}function Ni(e){let t;for(let n of e)(t===void 0||F(t,n))&&(t=n);return t}function Pi(e){let t;for(let n of e)(t===void 0||F(n,t))&&(t=n);return t}function Fi(e,t){let{startRow:n,endRow:r}=e,i=F(n,r)?r:n,a=t.rowIndex===i.rowIndex&&t.rowPinned===i.rowPinned,o=e.columns[0],s=O(e.columns),c=e.startColumn===o?s:o;return t.column===c&&a}function Ii(e,t,n){let r;r=n===`top`?!e.startRow||!e.endRow||F(e.startRow,e.endRow)?`startRow`:`endRow`:!e.startRow||!e.endRow||F(e.startRow,e.endRow)?`endRow`:`startRow`,e[r]=t??void 0}var Li={moduleName:`CellSelection`,version:U,beans:[ji],dynamicBeans:{fillHandle:di,rangeHandle:fi},apiFunctions:{getCellRanges:mi,addCellRange:hi,clearRangeSelection:gi,clearCellSelection:gi},dependsOn:[W,ue,o],css:[pi]},Ri=e=>{let t=e.split(`.`);if(t.includes(`__proto__`))return()=>{};let n=t.length;return n<2?t=>t?.[e]:e=>{let r=0;do if(e=e?.[t[r++]],r===n)return e;while(typeof e==`object`)}},Y=2147483648,X=1073741824,zi=536870912,Z=268435456,Q=268435455,Bi=String.fromCodePoint(31,41150,8291),Vi=3,Hi=class extends H{constructor(){super(...arguments),this.nestedDataGetter=null,this.parentIdGetter=null,this.nonLeafsById=null,this.nodesToUnselect=null,this.fullReload=!1}postConstruct(){this.onPropChange(null)}onPropChange(e){let t=this.gos;if(!e||e.has(`treeDataParentIdField`)){let e=t.get(`treeDataParentIdField`),n=e?Ri(e):null;this.fullReload||=this.parentIdGetter!==n,this.parentIdGetter=n,n&&(this.nestedDataGetter=null)}if(!e||e.has(`treeDataChildrenField`)){let e=this.parentIdGetter?``:t.get(`treeDataChildrenField`),n=e?Ri(e):null;this.fullReload||=this.nestedDataGetter!==n,this.nestedDataGetter=n}}destroy(){this.nodesToUnselect=null,this.reset(),super.destroy()}reset(){this.clearNonLeafs(),this.deselectHiddenNodes(!1),this.fullReload=!0}clearNonLeafs(){let e=this.nonLeafsById;if(e){for(let t of e.values())t._destroy(!1);e.clear(),this.nonLeafsById=null}}getNonLeaf(e){return this.nonLeafsById?.get(e)}loadGroupData(e){let t=e.key;if(t==null)return e._groupData=null,null;let n={};e._groupData=n;let r=this.beans.showRowGroupCols?.columns;if(r)for(let e=0,i=r.length;e0&&c!==u&&(this.handleCycles(e),this.traverseRoot(e,i)),e.treeNodeFlags=0,this.deselectHiddenNodes(s||a),l}flagUpdatedNodes(e){let{adds:t,updates:n,removals:r}=e,i=r.length>0;if(t.size>0){i=!0;for(let e of t)e.treeNodeFlags|=X}if(n.size>0){i=!0;for(let e of n)e.treeNodeFlags|=X}return i}initRowsParents(e){let t=e._leafs,n=t.length,r=!1;for(let e=0;e=0||r.treeNodeFlags&zi||r.treeParent===null){r.treeNodeFlags=i;break}r.treeNodeFlags=i|zi|e.treeNodeFlags&X,e=r}return t}destroyFillerRows(e){let t=this.nonLeafsById;if(t){for(let n of t.values())(n.treeParent===null||(n.treeNodeFlags&Q)===0)&&(t.delete(n.id),n._destroy(e),this.hideRow(n));t.size===0&&(this.nonLeafsById=null)}}initRowsChildrenSize(e){this.initRowChildrenSize(e);let t=e._leafs,n=t.length;for(let e=0;e=0){if(t!==E){e.childrenAfterGroup=E;let t=e.sibling;t&&(t.childrenAfterGroup=E)}}else if(i!==a||t===n)if(!t||t===E||t===n){e.childrenAfterGroup=t=Array(a);let n=e.sibling;n&&(n.childrenAfterGroup=t)}else t.length=a}preprocessRows(e){let t=e._leafs,n=t.length,r=0,i=!1;for(let e=0;e{if(t.has(e))return!1;t.add(e);for(let t of e.childrenAfterGroup)n(t);return!0};n(e);let r=e.childrenAfterGroup;r.length=0;let i=e._leafs;for(let t=0,a=i.length;t=0;--e){let n=t.get(s.slice(0,r[e]));if(n){u=n,l=e+1;break}}l0?t[i-1]+Vi:0,a=t[i];r+=`-`+i+`-`+e.slice(n,a),++i}return r+`-`+n+`-`}deselectHiddenNodes(e){let t=this.beans.selectionSvc,n=this.nodesToUnselect,r=`rowDataChanged`;if(n&&(this.nodesToUnselect=null,t?.setNodesSelected({newValue:!1,nodes:n,suppressFinishActions:!0,source:r})),(n||e)&&t?.updateGroupsFromChildrenSelections?.(r),n){let e=t?.getSelectedNodes()??null;this.eventSvc.dispatchEvent({type:`selectionChanged`,source:r,selectedNodes:e,serverSideState:null})}}hideRow(e){e.isSelected()&&(this.nodesToUnselect??=[]).push(e),e.parent=null,e.group=!1,e.treeParent=null,e.treeNodeFlags=0,e.childrenAfterGroup=E,e._leafs=void 0,e._groupData=null;let t=e.sibling;t&&(t.childrenAfterGroup=E),e.updateHasChildren(),e.rowIndex!==null&&e.clearRowTopAndRowIndex()}onShowRowGroupColsSetChanged(){let e=this.beans.rowModel.rootNode._leafs;if(!e)return;for(let t=0,n=e.length;te.sourceRowIndex-t.sourceRowIndex,Wi=(e,t)=>(t.treeNodeFlags&Z)!==0&&(e.treeNodeFlags&Z)===0&&e.treeParent!==null&&e.sourceRowIndex<0?(e.expanded=t.expanded,!0):!1,$=(e,t)=>{let n=e._groupData!==void 0;e.key=t,e.groupValue=t;let r=e.sibling;r&&(r.key=t),n&&(e._groupData=void 0,e.setData(e.data))},Gi={moduleName:`TreeData`,version:U,dynamicBeans:{treeGroupStrategy:Hi},rowModels:[`clientSide`],dependsOn:[{moduleName:`SharedTreeData`,version:U,dependsOn:[W,Kn,Nr,Fr]},qn,Pr,Ir]};function Ki(e){return e.selectionSvc?.getSelectionState()??null}function qi(e,t){e.selectionSvc?.setSelectionState(t,`api`)}function Ji(e,t){return e.ssrmTxnManager?.applyTransaction(t)}function Yi(e,t){let n=t.startRow??0,r=t.route??[];if(n<0){z(189,{startRow:n});return}D(e)?.applyRowData(t.successParams,n,r)}function Xi(e,t,n){return e.ssrmTxnManager?.applyTransactionAsync(t,n)}function Zi(e){D(e)?.retryLoads()}function Qi(e){return e.ssrmTxnManager?.flushAsyncTransactions()}function $i(e,t){D(e)?.refreshStore(t)}function ea(e){return D(e)?.getStoreState()??[]}var ta={moduleName:`ServerSideRowModelApi`,version:U,apiFunctions:{getServerSideSelectionState:Ki,setServerSideSelectionState:qi,applyServerSideTransaction:Ji,applyServerSideTransactionAsync:Xi,applyServerSideRowData:Yi,retryServerSideLoads:Zi,flushServerSideAsyncTransactions:Qi,refreshServerSide:$i,getServerSideGroupLevelState:ea,resetRowHeights:yt,onRowHeightChanged:Ge},dependsOn:[W,jt,Dt,w]},na=[{symbol:`%`,fixity:`postfix`,precedence:100},{symbol:`-`,fixity:`prefix`,precedence:90},{symbol:`+`,fixity:`prefix`,precedence:90},{symbol:`^`,fixity:`infix`,precedence:80,associativity:`right`},{symbol:`*`,fixity:`infix`,precedence:70,associativity:`left`,isAssociative:!0},{symbol:`/`,fixity:`infix`,precedence:70,associativity:`left`},{symbol:`+`,fixity:`infix`,precedence:60,associativity:`left`,isAssociative:!0},{symbol:`-`,fixity:`infix`,precedence:60,associativity:`left`},{symbol:`&`,fixity:`infix`,precedence:55,associativity:`left`,isAssociative:!0},{symbol:`=`,fixity:`infix`,precedence:50,associativity:`left`},{symbol:`<>`,fixity:`infix`,precedence:50,associativity:`left`},{symbol:`>=`,fixity:`infix`,precedence:50,associativity:`left`},{symbol:`<=`,fixity:`infix`,precedence:50,associativity:`left`},{symbol:`>`,fixity:`infix`,precedence:50,associativity:`left`},{symbol:`<`,fixity:`infix`,precedence:50,associativity:`left`}],ra=new Map;for(let e of na){let t=ra.get(e.symbol)??[];t.push(e),ra.set(e.symbol,t)}[...new Set(na.map(e=>e.symbol))].sort((e,t)=>t.length-e.length),[`number`,`category`,`grouped-category`,`log`,`time`].reduce((e,t)=>({...e,[t]:{title:{_enabledFromTheme:!0}}}),{});function ia(e){return e.map((e,t,n)=>e.map((e,r)=>n.slice(0,t+1).reduce((e,t)=>e+t[r],0)))}function aa(e){let t=e.map((t,n)=>e.reduce((e,t)=>Math.max(e,t[n]),0));return e.map(e=>e.map((e,n)=>e/t[n]*19))}var oa=[[1,3,5],[2,6,4],[5,3,1]];aa(ia(oa)),aa(ia(oa));var sa=[`number`,`category`,`time`,`grouped-category`],ca=[`angle-category`,`angle-number`,`radius-category`,`radius-number`];[...sa,...ca];export{Ht as a,Gi as c,yn as i,Li as n,Yr as o,oi as r,ta as s,qn as t};