ag-grid-enterprise 33.2.2 → 33.2.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/ag-grid-enterprise.js +6 -45
- package/dist/ag-grid-enterprise.min.js +1 -1
- package/dist/ag-grid-enterprise.min.noStyle.js +1 -1
- package/dist/ag-grid-enterprise.noStyle.js +6 -45
- package/dist/package/main.cjs.js +2 -2
- package/dist/package/main.cjs.min.js +2 -2
- package/dist/package/main.esm.min.mjs +2 -2
- package/dist/package/main.esm.mjs +2 -2
- package/dist/package/package.json +6 -6
- package/dist/types/package.json +6 -6
- package/dist/types/src/version.d.ts +1 -1
- package/package.json +6 -6
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import{BeanStub as Oh,_getDocument as Nh}from"ag-grid-community";var Bh=class{constructor(){this.ieCompatibility=!1}init(){this.ieCompatibility=this.md5("hello")!="5d41402abc4b2a76b9719d911017c592"}md5cycle(e,t){let s=e[0],i=e[1],r=e[2],a=e[3];s=this.ff(s,i,r,a,t[0],7,-680876936),a=this.ff(a,s,i,r,t[1],12,-389564586),r=this.ff(r,a,s,i,t[2],17,606105819),i=this.ff(i,r,a,s,t[3],22,-1044525330),s=this.ff(s,i,r,a,t[4],7,-176418897),a=this.ff(a,s,i,r,t[5],12,1200080426),r=this.ff(r,a,s,i,t[6],17,-1473231341),i=this.ff(i,r,a,s,t[7],22,-45705983),s=this.ff(s,i,r,a,t[8],7,1770035416),a=this.ff(a,s,i,r,t[9],12,-1958414417),r=this.ff(r,a,s,i,t[10],17,-42063),i=this.ff(i,r,a,s,t[11],22,-1990404162),s=this.ff(s,i,r,a,t[12],7,1804603682),a=this.ff(a,s,i,r,t[13],12,-40341101),r=this.ff(r,a,s,i,t[14],17,-1502002290),i=this.ff(i,r,a,s,t[15],22,1236535329),s=this.gg(s,i,r,a,t[1],5,-165796510),a=this.gg(a,s,i,r,t[6],9,-1069501632),r=this.gg(r,a,s,i,t[11],14,643717713),i=this.gg(i,r,a,s,t[0],20,-373897302),s=this.gg(s,i,r,a,t[5],5,-701558691),a=this.gg(a,s,i,r,t[10],9,38016083),r=this.gg(r,a,s,i,t[15],14,-660478335),i=this.gg(i,r,a,s,t[4],20,-405537848),s=this.gg(s,i,r,a,t[9],5,568446438),a=this.gg(a,s,i,r,t[14],9,-1019803690),r=this.gg(r,a,s,i,t[3],14,-187363961),i=this.gg(i,r,a,s,t[8],20,1163531501),s=this.gg(s,i,r,a,t[13],5,-1444681467),a=this.gg(a,s,i,r,t[2],9,-51403784),r=this.gg(r,a,s,i,t[7],14,1735328473),i=this.gg(i,r,a,s,t[12],20,-1926607734),s=this.hh(s,i,r,a,t[5],4,-378558),a=this.hh(a,s,i,r,t[8],11,-2022574463),r=this.hh(r,a,s,i,t[11],16,1839030562),i=this.hh(i,r,a,s,t[14],23,-35309556),s=this.hh(s,i,r,a,t[1],4,-1530992060),a=this.hh(a,s,i,r,t[4],11,1272893353),r=this.hh(r,a,s,i,t[7],16,-155497632),i=this.hh(i,r,a,s,t[10],23,-1094730640),s=this.hh(s,i,r,a,t[13],4,681279174),a=this.hh(a,s,i,r,t[0],11,-358537222),r=this.hh(r,a,s,i,t[3],16,-722521979),i=this.hh(i,r,a,s,t[6],23,76029189),s=this.hh(s,i,r,a,t[9],4,-640364487),a=this.hh(a,s,i,r,t[12],11,-421815835),r=this.hh(r,a,s,i,t[15],16,530742520),i=this.hh(i,r,a,s,t[2],23,-995338651),s=this.ii(s,i,r,a,t[0],6,-198630844),a=this.ii(a,s,i,r,t[7],10,1126891415),r=this.ii(r,a,s,i,t[14],15,-1416354905),i=this.ii(i,r,a,s,t[5],21,-57434055),s=this.ii(s,i,r,a,t[12],6,1700485571),a=this.ii(a,s,i,r,t[3],10,-1894986606),r=this.ii(r,a,s,i,t[10],15,-1051523),i=this.ii(i,r,a,s,t[1],21,-2054922799),s=this.ii(s,i,r,a,t[8],6,1873313359),a=this.ii(a,s,i,r,t[15],10,-30611744),r=this.ii(r,a,s,i,t[6],15,-1560198380),i=this.ii(i,r,a,s,t[13],21,1309151649),s=this.ii(s,i,r,a,t[4],6,-145523070),a=this.ii(a,s,i,r,t[11],10,-1120210379),r=this.ii(r,a,s,i,t[2],15,718787259),i=this.ii(i,r,a,s,t[9],21,-343485551),e[0]=this.add32(s,e[0]),e[1]=this.add32(i,e[1]),e[2]=this.add32(r,e[2]),e[3]=this.add32(a,e[3])}cmn(e,t,s,i,r,a){return t=this.add32(this.add32(t,e),this.add32(i,a)),this.add32(t<<r|t>>>32-r,s)}ff(e,t,s,i,r,a,n){return this.cmn(t&s|~t&i,e,t,r,a,n)}gg(e,t,s,i,r,a,n){return this.cmn(t&i|s&~i,e,t,r,a,n)}hh(e,t,s,i,r,a,n){return this.cmn(t^s^i,e,t,r,a,n)}ii(e,t,s,i,r,a,n){return this.cmn(s^(t|~i),e,t,r,a,n)}md51(e){const t=e.length,s=[1732584193,-271733879,-1732584194,271733878];let i;for(i=64;i<=e.length;i+=64)this.md5cycle(s,this.md5blk(e.substring(i-64,i)));e=e.substring(i-64);const r=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0];for(i=0;i<e.length;i++)r[i>>2]|=e.charCodeAt(i)<<(i%4<<3);if(r[i>>2]|=128<<(i%4<<3),i>55)for(this.md5cycle(s,r),i=0;i<16;i++)r[i]=0;return r[14]=t*8,this.md5cycle(s,r),s}md5blk(e){const t=[];for(let s=0;s<64;s+=4)t[s>>2]=e.charCodeAt(s)+(e.charCodeAt(s+1)<<8)+(e.charCodeAt(s+2)<<16)+(e.charCodeAt(s+3)<<24);return t}rhex(e){const t="0123456789abcdef".split("");let s="",i=0;for(;i<4;i++)s+=t[e>>i*8+4&15]+t[e>>i*8&15];return s}hex(e){for(let t=0;t<e.length;t++)e[t]=this.rhex(e[t]);return e.join("")}md5(e){return this.hex(this.md51(e))}add32(e,t){return this.ieCompatibility?this.add32Compat(e,t):this.add32Std(e,t)}add32Std(e,t){return e+t&4294967295}add32Compat(e,t){const s=(e&65535)+(t&65535);return(e>>16)+(t>>16)+(s>>16)<<16|s&65535}},ys={"01":"GRID","02":"CHARTS","0102":"BOTH"},Ga="https://www.ag-grid.com/licensing/",Oa=class ne{constructor(t){this.watermarkMessage=void 0,this.totalMessageLength=124,this.document=t,this.md5=new Bh,this.md5.init()}validateLicense(){const t=this.getLicenseDetails(ne.licenseKey),s=`AG Grid ${t.currentLicenseType==="BOTH"?"and AG Charts ":""}Enterprise`,i=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(s);else if(t.expired){const r=ne.getGridReleaseDate(),a=ne.formatDate(r);this.outputExpiredKey(t.expiry,a,s,i)}else t.valid?t.isTrial&&t.trialExpired&&this.outputExpiredTrialKey(t.expiry,s,i):this.outputInvalidLicenseKey(!!t.incorrectLicenseType,s,i)}static extractExpiry(t){const s=t.substring(t.lastIndexOf("_")+1,t.length);return new Date(parseInt(ne.decode(s),10))}static extractLicenseComponents(t){let s=t.replace(/[\u200B-\u200D\uFEFF]/g,"");if(s=s.replace(/\r?\n|\r/g,""),t.length<=32)return{md5:null,license:t,version:null,isTrial:null};const i=s.length-32,r=s.substring(i),a=s.substring(0,i),[n,o,l]=ne.extractBracketedInformation(s);return{md5:r,license:a,version:n,isTrial:o,type:l}}getLicenseDetails(t){const s=ne.chartsLicenseManager?"BOTH":"GRID";if(!t?.length)return{licenseKey:t,valid:!1,missing:!0,currentLicenseType:s};const i=ne.getGridReleaseDate(),{md5:r,license:a,version:n,isTrial:o,type:l}=ne.extractLicenseComponents(t);let c=r===this.md5.md5(a)&&t.indexOf("For_Trialing_ag-Grid_Only")===-1,d,h,u=null,p=!1,g;function m(){d=u<new Date,h=void 0}if(c&&(u=ne.extractExpiry(a),c=!isNaN(u.getTime()),c))switch(h=i>u,n){case"legacy":case"2":{o&&m();break}case"3":l?.length?(g=l,l!==ys["01"]&&l!==ys["0102"]||s==="BOTH"&&g!=="BOTH"?(c=!1,p=!0):o&&m()):c=!1}return c?{licenseKey:t,valid:c,expiry:ne.formatDate(u),expired:h,version:n,isTrial:o,trialExpired:d,incorrectLicenseType:p,currentLicenseType:s,suppliedLicenseType:g}:{licenseKey:t,valid:c,incorrectLicenseType:p,currentLicenseType:s,suppliedLicenseType:g}}isDisplayWatermark(){return this.isForceWatermark()||!this.isLocalhost()&&!this.isWebsiteUrl()&&!!this.watermarkMessage?.length}getWatermarkMessage(){return this.watermarkMessage||""}getHostname(){const s=(this.document.defaultView||window).location,{hostname:i=""}=s;return i}isForceWatermark(){const s=(this.document.defaultView||window).location,{pathname:i}=s;return i?i.indexOf("forceWatermark")!==-1:!1}isWebsiteUrl(){return this.getHostname().match(/^((?:[\w-]+\.)?ag-grid\.com)$/)!==null}isLocalhost(){return this.getHostname().match(/^(?:127\.0\.0\.1|localhost)$/)!==null}static formatDate(t){const s=["January","February","March","April","May","June","July","August","September","October","November","December"],i=t.getDate(),r=t.getMonth(),a=t.getFullYear();return i+" "+s[r]+" "+a}static getGridReleaseDate(){return new Date(parseInt(ne.decode(ne.RELEASE_INFORMATION),10))}static decode(t){const s="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";let i="",r,a,n,o,l,c,d,h=0;const u=t.replace(/[^A-Za-z0-9+/=]/g,"");for(;h<u.length;)o=s.indexOf(u.charAt(h++)),l=s.indexOf(u.charAt(h++)),c=s.indexOf(u.charAt(h++)),d=s.indexOf(u.charAt(h++)),r=o<<2|l>>4,a=(l&15)<<4|c>>2,n=(c&3)<<6|d,i=i+String.fromCharCode(r),c!=64&&(i=i+String.fromCharCode(a)),d!=64&&(i=i+String.fromCharCode(n));return i=ne.utf8_decode(i),i}static utf8_decode(t){t=t.replace(/rn/g,"n");let s="";for(let i=0;i<t.length;i++){const r=t.charCodeAt(i);r<128?s+=String.fromCharCode(r):r>127&&r<2048?(s+=String.fromCharCode(r>>6|192),s+=String.fromCharCode(r&63|128)):(s+=String.fromCharCode(r>>12|224),s+=String.fromCharCode(r>>6&63|128),s+=String.fromCharCode(r&63|128))}return s}static setChartsLicenseManager(t){this.chartsLicenseManager=t}static setLicenseKey(t){this.licenseKey=t,this.chartsLicenseManager?.setLicenseKey(t,!0)}static extractBracketedInformation(t){if(!t.includes("["))return["legacy",!1,void 0];const s=t.match(/\[(.*?)\]/g).map(o=>o.replace("[","").replace("]",""));if(!s||s.length===0)return["legacy",!1,void 0];const i=s.filter(o=>o==="TRIAL").length===1,r=s.filter(o=>o.indexOf("v")===0)[0],a=r?r.replace("v",""):"legacy",n=ys[s.filter(o=>ys[o])[0]];return[a,i,n]}centerPadAndOutput(t){const s=this.totalMessageLength-t.length;console.error(t.padStart(s/2+t.length,"*").padEnd(this.totalMessageLength,"*"))}padAndOutput(t,s="*",i=""){console.error(t.padEnd(this.totalMessageLength-i.length,s)+i)}outputInvalidLicenseKey(t,s,i){t?(this.centerPadAndOutput(""),this.centerPadAndOutput(` ${s} License `),this.centerPadAndOutput(" Incompatible License Key "),this.padAndOutput(`* Your license key is for ${i} only and does not cover you for ${s}.`," ","*"),this.padAndOutput(`* To troubleshoot your license key visit ${Ga}.`," ","*"),this.centerPadAndOutput(""),this.centerPadAndOutput("")):(this.centerPadAndOutput(""),this.centerPadAndOutput(` ${s} License `),this.centerPadAndOutput(" Invalid License Key "),this.padAndOutput("* Your license key is not valid."," ","*"),this.padAndOutput(`* To troubleshoot your license key visit ${Ga}.`," ","*"),this.centerPadAndOutput(""),this.centerPadAndOutput("")),this.watermarkMessage="Invalid License"}outputExpiredTrialKey(t,s,i){this.centerPadAndOutput(""),this.centerPadAndOutput(` ${s} License `),this.centerPadAndOutput(" Trial Period Expired. "),this.padAndOutput(`* Your trial only license for ${i} expired on ${t}.`," ","*"),this.padAndOutput("* Please email info@ag-grid.com to purchase a license."," ","*"),this.centerPadAndOutput(""),this.centerPadAndOutput(""),this.watermarkMessage="Trial Period Expired"}outputMissingLicenseKey(t){this.centerPadAndOutput(""),this.centerPadAndOutput(` ${t} License `),this.centerPadAndOutput(" License Key Not Found "),this.padAndOutput(`* All ${t} 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(t,s,i,r){this.centerPadAndOutput(""),this.centerPadAndOutput(` ${i} License `),this.centerPadAndOutput(" Incompatible Software Version "),this.padAndOutput(`* Your license key works with versions of ${r} released before ${t}.`," ","*"),this.padAndOutput(`* The version you are trying to use was released on ${s}.`," ","*"),this.padAndOutput("* Please contact info@ag-grid.com to renew your license key."," ","*"),this.centerPadAndOutput(""),this.centerPadAndOutput(""),this.watermarkMessage="License Expired"}};Oa.RELEASE_INFORMATION="MTc0NDEwNDI3Nzc5Nw==";var Pt=Oa;import{Component as _h,RefPlaceholder as Vh}from"ag-grid-community";var Hh='.ag-watermark{bottom:20px;color:#9b9b9b;opacity:.7;position:absolute;transition:opacity 1s ease-out 3s;&:before{background-image:url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyMDkiIGhlaWdodD0iMzYiIGZpbGw9Im5vbmUiIHZpZXdCb3g9IjAgMCAyMDkgMzYiPjxwYXRoIGZpbGw9IiM5QjlCOUIiIGQ9Ik0xOTIuOTkzIDIzLjY1OHYtNy45NDZoLTEzLjU0MWwtNy45NDcgNy45NDZ6TTIwOC4yNSAzLjk1aC0xNi45NzRsLTguMDEgNy45NDdoMjQuOTg0ek0xNjMuNjIyIDMxLjYwNWw0LjA2OS00LjA2OWgxMy43MzJ2Ny45NDdoLTE3LjgwMXoiLz48cGF0aCBmaWxsPSIjOUI5QjlCIiBkPSJNMTY2LjYxIDE5Ljc4aDguNzczbDguMDEtNy45NDZIMTY2LjYxek0xNTcuMDExIDMxLjYwNWg2LjYxMWw3Ljg4My03Ljk0N2gtMTQuNDk0ek0xOTEuMjc2IDMuOTVsLTQuMDY4IDQuMDdIMTYxLjI3Vi4wNzJoMzAuMDA2ek0yMC44NCAzMC4yMDZIOC4zNzhsLTIuMTYyIDUuMzRILjc1TDEyLjI1NyA4LjU5Mmg0Ljc2OEwyOC41MyAzNS41NDZoLTUuNTN6bS0xLjcxNy00LjI2TDE0LjYwOSAxNC45NWwtNC41MTQgMTAuOTk4ek0xMDQuNDM3IDE4LjUwOWMxLjU4OS0yLjM1MiA1LjU5NC0yLjYwNyA3LjI0Ny0yLjYwN3Y0LjU3OGMtMi4wMzQgMC00LjA2OS4wNjMtNS4yNzcuOTUzLTEuMjA3Ljg5LTEuODQzIDIuMDk4LTEuODQzIDMuNTZ2MTAuNTUzaC00Ljk1OVYxNS45MDJoNC43Njh6TTExOS4zNzYgMTUuOTAyaC00Ljk1OHYxOS42NDRoNC45NTh6TTExOS4zNzYgNy4xM2gtNC45NTh2NS44NDhoNC45NTh6TTE0My45NzkgNy4xM3YyOC40MTZoLTQuNzY4bC0uMTI3LTIuOTg4YTguMyA4LjMgMCAwIDEtMi42NyAyLjQ4Yy0xLjA4MS41NzItMi40MTYuODktMy45NDIuODktMS4zMzUgMC0yLjYwNi0uMjU1LTMuNjg3LS43LTEuMTQ0LS41MDgtMi4xNjItMS4xNDQtMi45ODgtMi4wMzRhOS42IDkuNiAwIDAgMS0xLjk3MS0zLjE3OWMtLjUwOC0xLjIwNy0uNjk5LTIuNjA2LS42OTktNC4xMzJzLjI1NC0yLjkyNC42OTktNC4xOTZjLjUwOS0xLjI3MSAxLjE0NS0yLjM1MiAxLjk3MS0zLjI0MnMxLjg0NC0xLjU4OSAyLjk4OC0yLjA5OCAyLjM1Mi0uNzYzIDMuNjg3LS43NjNjMS41MjYgMCAyLjc5Ny4yNTUgMy44NzguODI3czEuOTcxIDEuMzM1IDIuNjcgMi40MTZWNy4xOTNoNC45NTl6bS0xMC40MjYgMjQuNTM4YzEuNjUzIDAgMi45MjQtLjU3MiAzLjk0MS0xLjY1M3MxLjUyNi0yLjU0MyAxLjUyNi00LjMyMy0uNTA5LTMuMTc4LTEuNTI2LTQuMzIyYy0xLjAxNy0xLjA4MS0yLjI4OC0xLjY1My0zLjk0MS0xLjY1My0xLjU5IDAtMi45MjUuNTcyLTMuODc4IDEuNjUzLTEuMDE3IDEuMDgtMS41MjYgMi41NDMtMS41MjYgNC4zMjIgMCAxLjc4LjUwOSAzLjE4IDEuNTI2IDQuMjYgMS4wMTcgMS4xNDQgMi4yODggMS43MTYgMy44NzggMS43MTZNNTcuMjAyIDIwLjM1M0g0NC45MzN2NC4yNTloNi45OTNjLS4xOSAyLjE2MS0xLjAxNyAzLjgxNC0yLjQxNiA1LjE1LTEuMzk4IDEuMjctMy4xNzggMS45MDYtNS40NjcgMS45MDYtMS4yNzEgMC0yLjQ4LS4yNTQtMy40OTYtLjY5OWE3IDcgMCAwIDEtMi43MzQtMS45N2MtLjc2My0uODI3LTEuMzM1LTEuODQ0LTEuNzgtMy4wNTJzLS42MzYtMi40OC0uNjM2LTMuOTQyLjE5LTIuNzMzLjYzNi0zLjk0MWMuMzgxLTEuMjA4IDEuMDE3LTIuMTYyIDEuNzgtMy4wNTIuNzYzLS44MjYgMS42NTMtMS40NjIgMi43MzMtMS45N2E5LjEgOS4xIDAgMCAxIDMuNTYtLjdxNC4wMDUgMCA2LjEwMyAxLjkwN2wzLjMwNi0zLjMwNWMtMi40OC0xLjkwNy01LjY1OC0yLjkyNS05LjQwOS0yLjkyNS0yLjA5NyAwLTQuMDA0LjMxOC01LjcyMSAxLjAxOC0xLjcxNi42OTktMy4xNzkgMS41ODktNC4zODYgMi43OTdBMTIuMSAxMi4xIDAgMCAwIDMxLjIgMTYuMjJjLS42MzUgMS43MTctLjk1MyAzLjYyNC0uOTUzIDUuNjU4cy4zMTggMy45NDIgMS4wMTcgNS42NThjLjcgMS43MTcgMS41OSAzLjE3OSAyLjc5NyA0LjM4N2ExMi4xIDEyLjEgMCAwIDAgNC4zODcgMi43OTdjMS43MTYuNyAzLjYyMyAxLjAxNyA1LjY1NyAxLjAxNyAyLjAzNSAwIDMuODc4LS4zMTggNS41MzEtMS4wMTcgMS42NTMtLjcgMy4wNTItMS41OSA0LjE5Ni0yLjc5N3ExLjcxNi0xLjgxMiAyLjY3LTQuMzg3Yy42MzYtMS43MTYuOTU0LTMuNjIzLjk1NC01LjY1OHYtLjgyNmMtLjE5MS0uMTI3LS4yNTUtLjQ0NS0uMjU1LS43TTk1Ljk4MiAyMC4zNTNoLTEyLjI3djQuMjU5aDYuOTkzYy0uMTkgMi4xNjEtMS4wMTcgMy44MTQtMi40MTYgNS4xNS0xLjM5OCAxLjI3LTMuMTc4IDEuOTA2LTUuNDY3IDEuOTA2LTEuMjcxIDAtMi40OC0uMjU0LTMuNDk2LS42OTlhNyA3IDAgMCAxLTIuNzM0LTEuOTdjLS43NjMtLjgyNy0xLjMzNS0xLjg0NC0xLjc4LTMuMDUycy0uNjM2LTIuNDgtLjYzNi0zLjk0Mi4xOS0yLjczMy42MzYtMy45NDFjLjM4MS0xLjIwOCAxLjAxNy0yLjE2MiAxLjc4LTMuMDUyLjc2My0uODI2IDEuNjUzLTEuNDYyIDIuNzM0LTEuOTdhOS4xIDkuMSAwIDAgMSAzLjU2LS43cTQuMDA1IDAgNi4xMDMgMS45MDdsMy4zMDUtMy4zMDVjLTIuNDc5LTEuOTA3LTUuNjU4LTIuOTI1LTkuNDA4LTIuOTI1LTIuMDk4IDAtNC4wMDUuMzE4LTUuNzIyIDEuMDE4LTEuNzE2LjY5OS0zLjE3OCAxLjU4OS00LjM4NiAyLjc5N2ExMi4xIDEyLjEgMCAwIDAtMi43OTcgNC4zODZjLS42MzYgMS43MTctLjk1NCAzLjYyNC0uOTU0IDUuNjU4cy4zMTggMy45NDIgMS4wMTcgNS42NThjLjcgMS43MTcgMS41OSAzLjE3OSAyLjc5NyA0LjM4N2ExMi4xIDEyLjEgMCAwIDAgNC4zODcgMi43OTdjMS43MTYuNyAzLjYyMyAxLjAxNyA1LjY1OCAxLjAxNyAyLjAzNCAwIDMuODc4LS4zMTggNS41My0xLjAxNyAxLjY1My0uNyAzLjA1Mi0xLjU5IDQuMTk2LTIuNzk3cTEuNzE4LTEuODEyIDIuNjctNC4zODdjLjYzNi0xLjcxNi45NTQtMy42MjMuOTU0LTUuNjU4di0uODI2Yy0uMTktLjEyNy0uMjU1LS40NDUtLjI1NS0uNyIvPjwvc3ZnPg==");background-repeat:no-repeat;background-size:170px 40px;content:"";display:block;height:40px;width:170px}}:where(.ag-ltr) .ag-watermark{right:25px}:where(.ag-rtl) .ag-watermark{left:25px}.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}',zh={tag:"div",cls:"ag-watermark",children:[{tag:"div",ref:"eLicenseTextRef",cls:"ag-watermark-text"}]},Uh=class extends _h{constructor(){super(zh),this.eLicenseTextRef=Vh,this.registerCSS(Hh)}wireBeans(e){this.licenseManager=e.licenseManager}postConstruct(){const e=this.shouldDisplayWatermark();this.setDisplayed(e),e&&(this.eLicenseTextRef.textContent=this.licenseManager.getWatermarkMessage(),window.setTimeout(()=>this.addCssClass("ag-opacity-zero"),0),window.setTimeout(()=>this.setDisplayed(!1),5e3))}shouldDisplayWatermark(){return this.licenseManager.isDisplayWatermark()}},Kh={selector:"AG-WATERMARK",component:Uh},Na=class extends Oh{constructor(){super(...arguments),this.beanName="licenseManager"}postConstruct(){this.validateLicense()}validateLicense(){this.licenseManager=new Pt(Nh(this.beans)),this.licenseManager.validateLicense()}static getLicenseDetails(e){return new Pt(null).getLicenseDetails(e)}getWatermarkSelector(){return Kh}isDisplayWatermark(){return this.licenseManager.isDisplayWatermark()}getWatermarkMessage(){return this.licenseManager.getWatermarkMessage()}static setLicenseKey(e){Pt.setLicenseKey(e)}static setChartsLicenseManager(e){Pt.setChartsLicenseManager(e)}};import{BaseCreator as Wh,_addGridCommonParams as Ba,_downloadFile as _a,_getHeaderClassesFromColDef as jh,_warn as Va}from"ag-grid-community";import{BaseGridSerializingSession as $h,_addGridCommonParams as Ri,_last as Yh,_mergeDeep as Xh,_warn as qh}from"ag-grid-community";import{_escapeString as Zh}from"ag-grid-community";var Jh=9525,Ha={0:1,"0.00":2,"#,##0":3,"#,##0.00":4,"0%":9,"0.00%":10,"0.00E+00":11,"# ?/?":12,"# ??/??":13,"mm-dd-yy":14,"d-mmm-yy":15,"d-mmm":16,"mmm-yy":17,"h:mm AM/PM":18,"h:mm:ss AM/PM":19,"h:mm":20,"h:mm:ss":21,"m/d/yy h:mm":22,"#,##0 ;(#,##0)":37,"#,##0 ;[Red](#,##0)":38,"#,##0.00;(#,##0.00)":39,"#,##0.00;[Red](#,##0.00)":40,"mm:ss":45,"[h]:mm:ss":46,"mmss.0":47,"##0.0E+0":48,"@":49},Ss=`\r
|
|
1
|
+
import{BeanStub as Oh,_getDocument as Nh}from"ag-grid-community";var Bh=class{constructor(){this.ieCompatibility=!1}init(){this.ieCompatibility=this.md5("hello")!="5d41402abc4b2a76b9719d911017c592"}md5cycle(e,t){let s=e[0],i=e[1],r=e[2],a=e[3];s=this.ff(s,i,r,a,t[0],7,-680876936),a=this.ff(a,s,i,r,t[1],12,-389564586),r=this.ff(r,a,s,i,t[2],17,606105819),i=this.ff(i,r,a,s,t[3],22,-1044525330),s=this.ff(s,i,r,a,t[4],7,-176418897),a=this.ff(a,s,i,r,t[5],12,1200080426),r=this.ff(r,a,s,i,t[6],17,-1473231341),i=this.ff(i,r,a,s,t[7],22,-45705983),s=this.ff(s,i,r,a,t[8],7,1770035416),a=this.ff(a,s,i,r,t[9],12,-1958414417),r=this.ff(r,a,s,i,t[10],17,-42063),i=this.ff(i,r,a,s,t[11],22,-1990404162),s=this.ff(s,i,r,a,t[12],7,1804603682),a=this.ff(a,s,i,r,t[13],12,-40341101),r=this.ff(r,a,s,i,t[14],17,-1502002290),i=this.ff(i,r,a,s,t[15],22,1236535329),s=this.gg(s,i,r,a,t[1],5,-165796510),a=this.gg(a,s,i,r,t[6],9,-1069501632),r=this.gg(r,a,s,i,t[11],14,643717713),i=this.gg(i,r,a,s,t[0],20,-373897302),s=this.gg(s,i,r,a,t[5],5,-701558691),a=this.gg(a,s,i,r,t[10],9,38016083),r=this.gg(r,a,s,i,t[15],14,-660478335),i=this.gg(i,r,a,s,t[4],20,-405537848),s=this.gg(s,i,r,a,t[9],5,568446438),a=this.gg(a,s,i,r,t[14],9,-1019803690),r=this.gg(r,a,s,i,t[3],14,-187363961),i=this.gg(i,r,a,s,t[8],20,1163531501),s=this.gg(s,i,r,a,t[13],5,-1444681467),a=this.gg(a,s,i,r,t[2],9,-51403784),r=this.gg(r,a,s,i,t[7],14,1735328473),i=this.gg(i,r,a,s,t[12],20,-1926607734),s=this.hh(s,i,r,a,t[5],4,-378558),a=this.hh(a,s,i,r,t[8],11,-2022574463),r=this.hh(r,a,s,i,t[11],16,1839030562),i=this.hh(i,r,a,s,t[14],23,-35309556),s=this.hh(s,i,r,a,t[1],4,-1530992060),a=this.hh(a,s,i,r,t[4],11,1272893353),r=this.hh(r,a,s,i,t[7],16,-155497632),i=this.hh(i,r,a,s,t[10],23,-1094730640),s=this.hh(s,i,r,a,t[13],4,681279174),a=this.hh(a,s,i,r,t[0],11,-358537222),r=this.hh(r,a,s,i,t[3],16,-722521979),i=this.hh(i,r,a,s,t[6],23,76029189),s=this.hh(s,i,r,a,t[9],4,-640364487),a=this.hh(a,s,i,r,t[12],11,-421815835),r=this.hh(r,a,s,i,t[15],16,530742520),i=this.hh(i,r,a,s,t[2],23,-995338651),s=this.ii(s,i,r,a,t[0],6,-198630844),a=this.ii(a,s,i,r,t[7],10,1126891415),r=this.ii(r,a,s,i,t[14],15,-1416354905),i=this.ii(i,r,a,s,t[5],21,-57434055),s=this.ii(s,i,r,a,t[12],6,1700485571),a=this.ii(a,s,i,r,t[3],10,-1894986606),r=this.ii(r,a,s,i,t[10],15,-1051523),i=this.ii(i,r,a,s,t[1],21,-2054922799),s=this.ii(s,i,r,a,t[8],6,1873313359),a=this.ii(a,s,i,r,t[15],10,-30611744),r=this.ii(r,a,s,i,t[6],15,-1560198380),i=this.ii(i,r,a,s,t[13],21,1309151649),s=this.ii(s,i,r,a,t[4],6,-145523070),a=this.ii(a,s,i,r,t[11],10,-1120210379),r=this.ii(r,a,s,i,t[2],15,718787259),i=this.ii(i,r,a,s,t[9],21,-343485551),e[0]=this.add32(s,e[0]),e[1]=this.add32(i,e[1]),e[2]=this.add32(r,e[2]),e[3]=this.add32(a,e[3])}cmn(e,t,s,i,r,a){return t=this.add32(this.add32(t,e),this.add32(i,a)),this.add32(t<<r|t>>>32-r,s)}ff(e,t,s,i,r,a,n){return this.cmn(t&s|~t&i,e,t,r,a,n)}gg(e,t,s,i,r,a,n){return this.cmn(t&i|s&~i,e,t,r,a,n)}hh(e,t,s,i,r,a,n){return this.cmn(t^s^i,e,t,r,a,n)}ii(e,t,s,i,r,a,n){return this.cmn(s^(t|~i),e,t,r,a,n)}md51(e){const t=e.length,s=[1732584193,-271733879,-1732584194,271733878];let i;for(i=64;i<=e.length;i+=64)this.md5cycle(s,this.md5blk(e.substring(i-64,i)));e=e.substring(i-64);const r=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0];for(i=0;i<e.length;i++)r[i>>2]|=e.charCodeAt(i)<<(i%4<<3);if(r[i>>2]|=128<<(i%4<<3),i>55)for(this.md5cycle(s,r),i=0;i<16;i++)r[i]=0;return r[14]=t*8,this.md5cycle(s,r),s}md5blk(e){const t=[];for(let s=0;s<64;s+=4)t[s>>2]=e.charCodeAt(s)+(e.charCodeAt(s+1)<<8)+(e.charCodeAt(s+2)<<16)+(e.charCodeAt(s+3)<<24);return t}rhex(e){const t="0123456789abcdef".split("");let s="",i=0;for(;i<4;i++)s+=t[e>>i*8+4&15]+t[e>>i*8&15];return s}hex(e){for(let t=0;t<e.length;t++)e[t]=this.rhex(e[t]);return e.join("")}md5(e){return this.hex(this.md51(e))}add32(e,t){return this.ieCompatibility?this.add32Compat(e,t):this.add32Std(e,t)}add32Std(e,t){return e+t&4294967295}add32Compat(e,t){const s=(e&65535)+(t&65535);return(e>>16)+(t>>16)+(s>>16)<<16|s&65535}},ys={"01":"GRID","02":"CHARTS","0102":"BOTH"},Ga="https://www.ag-grid.com/licensing/",Oa=class ne{constructor(t){this.watermarkMessage=void 0,this.totalMessageLength=124,this.document=t,this.md5=new Bh,this.md5.init()}validateLicense(){const t=this.getLicenseDetails(ne.licenseKey),s=`AG Grid ${t.currentLicenseType==="BOTH"?"and AG Charts ":""}Enterprise`,i=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(s);else if(t.expired){const r=ne.getGridReleaseDate(),a=ne.formatDate(r);this.outputExpiredKey(t.expiry,a,s,i)}else t.valid?t.isTrial&&t.trialExpired&&this.outputExpiredTrialKey(t.expiry,s,i):this.outputInvalidLicenseKey(!!t.incorrectLicenseType,s,i)}static extractExpiry(t){const s=t.substring(t.lastIndexOf("_")+1,t.length);return new Date(parseInt(ne.decode(s),10))}static extractLicenseComponents(t){let s=t.replace(/[\u200B-\u200D\uFEFF]/g,"");if(s=s.replace(/\r?\n|\r/g,""),t.length<=32)return{md5:null,license:t,version:null,isTrial:null};const i=s.length-32,r=s.substring(i),a=s.substring(0,i),[n,o,l]=ne.extractBracketedInformation(s);return{md5:r,license:a,version:n,isTrial:o,type:l}}getLicenseDetails(t){const s=ne.chartsLicenseManager?"BOTH":"GRID";if(!t?.length)return{licenseKey:t,valid:!1,missing:!0,currentLicenseType:s};const i=ne.getGridReleaseDate(),{md5:r,license:a,version:n,isTrial:o,type:l}=ne.extractLicenseComponents(t);let c=r===this.md5.md5(a)&&t.indexOf("For_Trialing_ag-Grid_Only")===-1,d,h,u=null,p=!1,g;function m(){d=u<new Date,h=void 0}if(c&&(u=ne.extractExpiry(a),c=!isNaN(u.getTime()),c))switch(h=i>u,n){case"legacy":case"2":{o&&m();break}case"3":l?.length?(g=l,l!==ys["01"]&&l!==ys["0102"]||s==="BOTH"&&g!=="BOTH"?(c=!1,p=!0):o&&m()):c=!1}return c?{licenseKey:t,valid:c,expiry:ne.formatDate(u),expired:h,version:n,isTrial:o,trialExpired:d,incorrectLicenseType:p,currentLicenseType:s,suppliedLicenseType:g}:{licenseKey:t,valid:c,incorrectLicenseType:p,currentLicenseType:s,suppliedLicenseType:g}}isDisplayWatermark(){return this.isForceWatermark()||!this.isLocalhost()&&!this.isWebsiteUrl()&&!!this.watermarkMessage?.length}getWatermarkMessage(){return this.watermarkMessage||""}getHostname(){const s=(this.document.defaultView||window).location,{hostname:i=""}=s;return i}isForceWatermark(){const s=(this.document.defaultView||window).location,{pathname:i}=s;return i?i.indexOf("forceWatermark")!==-1:!1}isWebsiteUrl(){return this.getHostname().match(/^((?:[\w-]+\.)?ag-grid\.com)$/)!==null}isLocalhost(){return this.getHostname().match(/^(?:127\.0\.0\.1|localhost)$/)!==null}static formatDate(t){const s=["January","February","March","April","May","June","July","August","September","October","November","December"],i=t.getDate(),r=t.getMonth(),a=t.getFullYear();return i+" "+s[r]+" "+a}static getGridReleaseDate(){return new Date(parseInt(ne.decode(ne.RELEASE_INFORMATION),10))}static decode(t){const s="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";let i="",r,a,n,o,l,c,d,h=0;const u=t.replace(/[^A-Za-z0-9+/=]/g,"");for(;h<u.length;)o=s.indexOf(u.charAt(h++)),l=s.indexOf(u.charAt(h++)),c=s.indexOf(u.charAt(h++)),d=s.indexOf(u.charAt(h++)),r=o<<2|l>>4,a=(l&15)<<4|c>>2,n=(c&3)<<6|d,i=i+String.fromCharCode(r),c!=64&&(i=i+String.fromCharCode(a)),d!=64&&(i=i+String.fromCharCode(n));return i=ne.utf8_decode(i),i}static utf8_decode(t){t=t.replace(/rn/g,"n");let s="";for(let i=0;i<t.length;i++){const r=t.charCodeAt(i);r<128?s+=String.fromCharCode(r):r>127&&r<2048?(s+=String.fromCharCode(r>>6|192),s+=String.fromCharCode(r&63|128)):(s+=String.fromCharCode(r>>12|224),s+=String.fromCharCode(r>>6&63|128),s+=String.fromCharCode(r&63|128))}return s}static setChartsLicenseManager(t){this.chartsLicenseManager=t}static setLicenseKey(t){this.licenseKey=t,this.chartsLicenseManager?.setLicenseKey(t,!0)}static extractBracketedInformation(t){if(!t.includes("["))return["legacy",!1,void 0];const s=t.match(/\[(.*?)\]/g).map(o=>o.replace("[","").replace("]",""));if(!s||s.length===0)return["legacy",!1,void 0];const i=s.filter(o=>o==="TRIAL").length===1,r=s.filter(o=>o.indexOf("v")===0)[0],a=r?r.replace("v",""):"legacy",n=ys[s.filter(o=>ys[o])[0]];return[a,i,n]}centerPadAndOutput(t){const s=this.totalMessageLength-t.length;console.error(t.padStart(s/2+t.length,"*").padEnd(this.totalMessageLength,"*"))}padAndOutput(t,s="*",i=""){console.error(t.padEnd(this.totalMessageLength-i.length,s)+i)}outputInvalidLicenseKey(t,s,i){t?(this.centerPadAndOutput(""),this.centerPadAndOutput(` ${s} License `),this.centerPadAndOutput(" Incompatible License Key "),this.padAndOutput(`* Your license key is for ${i} only and does not cover you for ${s}.`," ","*"),this.padAndOutput(`* To troubleshoot your license key visit ${Ga}.`," ","*"),this.centerPadAndOutput(""),this.centerPadAndOutput("")):(this.centerPadAndOutput(""),this.centerPadAndOutput(` ${s} License `),this.centerPadAndOutput(" Invalid License Key "),this.padAndOutput("* Your license key is not valid."," ","*"),this.padAndOutput(`* To troubleshoot your license key visit ${Ga}.`," ","*"),this.centerPadAndOutput(""),this.centerPadAndOutput("")),this.watermarkMessage="Invalid License"}outputExpiredTrialKey(t,s,i){this.centerPadAndOutput(""),this.centerPadAndOutput(` ${s} License `),this.centerPadAndOutput(" Trial Period Expired. "),this.padAndOutput(`* Your trial only license for ${i} expired on ${t}.`," ","*"),this.padAndOutput("* Please email info@ag-grid.com to purchase a license."," ","*"),this.centerPadAndOutput(""),this.centerPadAndOutput(""),this.watermarkMessage="Trial Period Expired"}outputMissingLicenseKey(t){this.centerPadAndOutput(""),this.centerPadAndOutput(` ${t} License `),this.centerPadAndOutput(" License Key Not Found "),this.padAndOutput(`* All ${t} 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(t,s,i,r){this.centerPadAndOutput(""),this.centerPadAndOutput(` ${i} License `),this.centerPadAndOutput(" Incompatible Software Version "),this.padAndOutput(`* Your license key works with versions of ${r} released before ${t}.`," ","*"),this.padAndOutput(`* The version you are trying to use was released on ${s}.`," ","*"),this.padAndOutput("* Please contact info@ag-grid.com to renew your license key."," ","*"),this.centerPadAndOutput(""),this.centerPadAndOutput(""),this.watermarkMessage="License Expired"}};Oa.RELEASE_INFORMATION="MTc0NDI4NzE1OTY5NQ==";var Pt=Oa;import{Component as _h,RefPlaceholder as Vh}from"ag-grid-community";var Hh='.ag-watermark{bottom:20px;color:#9b9b9b;opacity:.7;position:absolute;transition:opacity 1s ease-out 3s;&:before{background-image:url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyMDkiIGhlaWdodD0iMzYiIGZpbGw9Im5vbmUiIHZpZXdCb3g9IjAgMCAyMDkgMzYiPjxwYXRoIGZpbGw9IiM5QjlCOUIiIGQ9Ik0xOTIuOTkzIDIzLjY1OHYtNy45NDZoLTEzLjU0MWwtNy45NDcgNy45NDZ6TTIwOC4yNSAzLjk1aC0xNi45NzRsLTguMDEgNy45NDdoMjQuOTg0ek0xNjMuNjIyIDMxLjYwNWw0LjA2OS00LjA2OWgxMy43MzJ2Ny45NDdoLTE3LjgwMXoiLz48cGF0aCBmaWxsPSIjOUI5QjlCIiBkPSJNMTY2LjYxIDE5Ljc4aDguNzczbDguMDEtNy45NDZIMTY2LjYxek0xNTcuMDExIDMxLjYwNWg2LjYxMWw3Ljg4My03Ljk0N2gtMTQuNDk0ek0xOTEuMjc2IDMuOTVsLTQuMDY4IDQuMDdIMTYxLjI3Vi4wNzJoMzAuMDA2ek0yMC44NCAzMC4yMDZIOC4zNzhsLTIuMTYyIDUuMzRILjc1TDEyLjI1NyA4LjU5Mmg0Ljc2OEwyOC41MyAzNS41NDZoLTUuNTN6bS0xLjcxNy00LjI2TDE0LjYwOSAxNC45NWwtNC41MTQgMTAuOTk4ek0xMDQuNDM3IDE4LjUwOWMxLjU4OS0yLjM1MiA1LjU5NC0yLjYwNyA3LjI0Ny0yLjYwN3Y0LjU3OGMtMi4wMzQgMC00LjA2OS4wNjMtNS4yNzcuOTUzLTEuMjA3Ljg5LTEuODQzIDIuMDk4LTEuODQzIDMuNTZ2MTAuNTUzaC00Ljk1OVYxNS45MDJoNC43Njh6TTExOS4zNzYgMTUuOTAyaC00Ljk1OHYxOS42NDRoNC45NTh6TTExOS4zNzYgNy4xM2gtNC45NTh2NS44NDhoNC45NTh6TTE0My45NzkgNy4xM3YyOC40MTZoLTQuNzY4bC0uMTI3LTIuOTg4YTguMyA4LjMgMCAwIDEtMi42NyAyLjQ4Yy0xLjA4MS41NzItMi40MTYuODktMy45NDIuODktMS4zMzUgMC0yLjYwNi0uMjU1LTMuNjg3LS43LTEuMTQ0LS41MDgtMi4xNjItMS4xNDQtMi45ODgtMi4wMzRhOS42IDkuNiAwIDAgMS0xLjk3MS0zLjE3OWMtLjUwOC0xLjIwNy0uNjk5LTIuNjA2LS42OTktNC4xMzJzLjI1NC0yLjkyNC42OTktNC4xOTZjLjUwOS0xLjI3MSAxLjE0NS0yLjM1MiAxLjk3MS0zLjI0MnMxLjg0NC0xLjU4OSAyLjk4OC0yLjA5OCAyLjM1Mi0uNzYzIDMuNjg3LS43NjNjMS41MjYgMCAyLjc5Ny4yNTUgMy44NzguODI3czEuOTcxIDEuMzM1IDIuNjcgMi40MTZWNy4xOTNoNC45NTl6bS0xMC40MjYgMjQuNTM4YzEuNjUzIDAgMi45MjQtLjU3MiAzLjk0MS0xLjY1M3MxLjUyNi0yLjU0MyAxLjUyNi00LjMyMy0uNTA5LTMuMTc4LTEuNTI2LTQuMzIyYy0xLjAxNy0xLjA4MS0yLjI4OC0xLjY1My0zLjk0MS0xLjY1My0xLjU5IDAtMi45MjUuNTcyLTMuODc4IDEuNjUzLTEuMDE3IDEuMDgtMS41MjYgMi41NDMtMS41MjYgNC4zMjIgMCAxLjc4LjUwOSAzLjE4IDEuNTI2IDQuMjYgMS4wMTcgMS4xNDQgMi4yODggMS43MTYgMy44NzggMS43MTZNNTcuMjAyIDIwLjM1M0g0NC45MzN2NC4yNTloNi45OTNjLS4xOSAyLjE2MS0xLjAxNyAzLjgxNC0yLjQxNiA1LjE1LTEuMzk4IDEuMjctMy4xNzggMS45MDYtNS40NjcgMS45MDYtMS4yNzEgMC0yLjQ4LS4yNTQtMy40OTYtLjY5OWE3IDcgMCAwIDEtMi43MzQtMS45N2MtLjc2My0uODI3LTEuMzM1LTEuODQ0LTEuNzgtMy4wNTJzLS42MzYtMi40OC0uNjM2LTMuOTQyLjE5LTIuNzMzLjYzNi0zLjk0MWMuMzgxLTEuMjA4IDEuMDE3LTIuMTYyIDEuNzgtMy4wNTIuNzYzLS44MjYgMS42NTMtMS40NjIgMi43MzMtMS45N2E5LjEgOS4xIDAgMCAxIDMuNTYtLjdxNC4wMDUgMCA2LjEwMyAxLjkwN2wzLjMwNi0zLjMwNWMtMi40OC0xLjkwNy01LjY1OC0yLjkyNS05LjQwOS0yLjkyNS0yLjA5NyAwLTQuMDA0LjMxOC01LjcyMSAxLjAxOC0xLjcxNi42OTktMy4xNzkgMS41ODktNC4zODYgMi43OTdBMTIuMSAxMi4xIDAgMCAwIDMxLjIgMTYuMjJjLS42MzUgMS43MTctLjk1MyAzLjYyNC0uOTUzIDUuNjU4cy4zMTggMy45NDIgMS4wMTcgNS42NThjLjcgMS43MTcgMS41OSAzLjE3OSAyLjc5NyA0LjM4N2ExMi4xIDEyLjEgMCAwIDAgNC4zODcgMi43OTdjMS43MTYuNyAzLjYyMyAxLjAxNyA1LjY1NyAxLjAxNyAyLjAzNSAwIDMuODc4LS4zMTggNS41MzEtMS4wMTcgMS42NTMtLjcgMy4wNTItMS41OSA0LjE5Ni0yLjc5N3ExLjcxNi0xLjgxMiAyLjY3LTQuMzg3Yy42MzYtMS43MTYuOTU0LTMuNjIzLjk1NC01LjY1OHYtLjgyNmMtLjE5MS0uMTI3LS4yNTUtLjQ0NS0uMjU1LS43TTk1Ljk4MiAyMC4zNTNoLTEyLjI3djQuMjU5aDYuOTkzYy0uMTkgMi4xNjEtMS4wMTcgMy44MTQtMi40MTYgNS4xNS0xLjM5OCAxLjI3LTMuMTc4IDEuOTA2LTUuNDY3IDEuOTA2LTEuMjcxIDAtMi40OC0uMjU0LTMuNDk2LS42OTlhNyA3IDAgMCAxLTIuNzM0LTEuOTdjLS43NjMtLjgyNy0xLjMzNS0xLjg0NC0xLjc4LTMuMDUycy0uNjM2LTIuNDgtLjYzNi0zLjk0Mi4xOS0yLjczMy42MzYtMy45NDFjLjM4MS0xLjIwOCAxLjAxNy0yLjE2MiAxLjc4LTMuMDUyLjc2My0uODI2IDEuNjUzLTEuNDYyIDIuNzM0LTEuOTdhOS4xIDkuMSAwIDAgMSAzLjU2LS43cTQuMDA1IDAgNi4xMDMgMS45MDdsMy4zMDUtMy4zMDVjLTIuNDc5LTEuOTA3LTUuNjU4LTIuOTI1LTkuNDA4LTIuOTI1LTIuMDk4IDAtNC4wMDUuMzE4LTUuNzIyIDEuMDE4LTEuNzE2LjY5OS0zLjE3OCAxLjU4OS00LjM4NiAyLjc5N2ExMi4xIDEyLjEgMCAwIDAtMi43OTcgNC4zODZjLS42MzYgMS43MTctLjk1NCAzLjYyNC0uOTU0IDUuNjU4cy4zMTggMy45NDIgMS4wMTcgNS42NThjLjcgMS43MTcgMS41OSAzLjE3OSAyLjc5NyA0LjM4N2ExMi4xIDEyLjEgMCAwIDAgNC4zODcgMi43OTdjMS43MTYuNyAzLjYyMyAxLjAxNyA1LjY1OCAxLjAxNyAyLjAzNCAwIDMuODc4LS4zMTggNS41My0xLjAxNyAxLjY1My0uNyAzLjA1Mi0xLjU5IDQuMTk2LTIuNzk3cTEuNzE4LTEuODEyIDIuNjctNC4zODdjLjYzNi0xLjcxNi45NTQtMy42MjMuOTU0LTUuNjU4di0uODI2Yy0uMTktLjEyNy0uMjU1LS40NDUtLjI1NS0uNyIvPjwvc3ZnPg==");background-repeat:no-repeat;background-size:170px 40px;content:"";display:block;height:40px;width:170px}}:where(.ag-ltr) .ag-watermark{right:25px}:where(.ag-rtl) .ag-watermark{left:25px}.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}',zh={tag:"div",cls:"ag-watermark",children:[{tag:"div",ref:"eLicenseTextRef",cls:"ag-watermark-text"}]},Uh=class extends _h{constructor(){super(zh),this.eLicenseTextRef=Vh,this.registerCSS(Hh)}wireBeans(e){this.licenseManager=e.licenseManager}postConstruct(){const e=this.shouldDisplayWatermark();this.setDisplayed(e),e&&(this.eLicenseTextRef.textContent=this.licenseManager.getWatermarkMessage(),window.setTimeout(()=>this.addCssClass("ag-opacity-zero"),0),window.setTimeout(()=>this.setDisplayed(!1),5e3))}shouldDisplayWatermark(){return this.licenseManager.isDisplayWatermark()}},Kh={selector:"AG-WATERMARK",component:Uh},Na=class extends Oh{constructor(){super(...arguments),this.beanName="licenseManager"}postConstruct(){this.validateLicense()}validateLicense(){this.licenseManager=new Pt(Nh(this.beans)),this.licenseManager.validateLicense()}static getLicenseDetails(e){return new Pt(null).getLicenseDetails(e)}getWatermarkSelector(){return Kh}isDisplayWatermark(){return this.licenseManager.isDisplayWatermark()}getWatermarkMessage(){return this.licenseManager.getWatermarkMessage()}static setLicenseKey(e){Pt.setLicenseKey(e)}static setChartsLicenseManager(e){Pt.setChartsLicenseManager(e)}};import{BaseCreator as Wh,_addGridCommonParams as Ba,_downloadFile as _a,_getHeaderClassesFromColDef as jh,_warn as Va}from"ag-grid-community";import{BaseGridSerializingSession as $h,_addGridCommonParams as Ri,_last as Yh,_mergeDeep as Xh,_warn as qh}from"ag-grid-community";import{_escapeString as Zh}from"ag-grid-community";var Jh=9525,Ha={0:1,"0.00":2,"#,##0":3,"#,##0.00":4,"0%":9,"0.00%":10,"0.00E+00":11,"# ?/?":12,"# ??/??":13,"mm-dd-yy":14,"d-mmm-yy":15,"d-mmm":16,"mmm-yy":17,"h:mm AM/PM":18,"h:mm:ss AM/PM":19,"h:mm":20,"h:mm:ss":21,"m/d/yy h:mm":22,"#,##0 ;(#,##0)":37,"#,##0 ;[Red](#,##0)":38,"#,##0.00;(#,##0.00)":39,"#,##0.00;[Red](#,##0.00)":40,"mm:ss":45,"[h]:mm:ss":46,"mmss.0":47,"##0.0E+0":48,"@":49},Ss=`\r
|
|
2
2
|
`;function za(e,t,s){if(!t&&t!==""&&t!==0)return"";let i=t;return typeof t=="boolean"&&s&&(i=s(t)),` ${e}="${i}"`}function Qh(e={}){const t="<?",s="?>",i=["version"];e.version||(e.version="1.0"),e.encoding&&i.push("encoding"),e.standalone&&i.push("standalone");const r=i.map(a=>`${a}="${e[a]}"`).join(" ");return`${t}xml ${r} ${s}`}function Ua(e,t){let s="";e.properties&&(e.properties.prefixedAttributes&&e.properties.prefixedAttributes.forEach(r=>{Object.keys(r.map).forEach(a=>{s+=za(r.prefix+a,r.map[a],t)})}),e.properties.rawMap&&Object.keys(e.properties.rawMap).forEach(r=>{s+=za(r,e.properties.rawMap[r],t)}));let i="<"+e.name+s;return!e.children&&e.textNode==null?i+"/>"+Ss:e.textNode!=null?i+">"+e.textNode+"</"+e.name+">"+Ss:(i+=">"+Ss,e.children&&e.children.forEach(r=>{i+=Ua(r,t)}),i+"</"+e.name+">"+Ss)}var eu=e=>Math.round(e*96/72),lt=e=>Math.ceil(e*Jh),tu=e=>{if(e===void 0)return;const s=["Automatic","Roman","Swiss","Modern","Script","Decorative"].indexOf(e||"Automatic");return Math.max(s,0)},bs=(e,t)=>{if(!t)return;let s;return typeof t=="number"?s=t:s=t({rowIndex:e}),s},su=(e,t)=>{const{colSpan:s,column:i}=e.position;if(e.width)if(s){const r=t.slice(i-1,i+s-1);let a=0;for(let n=0;n<r.length;n++){const o=r[n].getActualWidth();if(e.width<a+o){e.position.colSpan=n+1,e.totalWidth=e.width,e.width=e.totalWidth-a;break}a+=o}}else e.totalWidth=e.width},iu=(e,t)=>{const{rowSpan:s,row:i}=e.position;if(e.height)if(s){let r=0,a=0;for(let n=i;n<i+s;n++){const o=eu(bs(n,t)||20);if(e.height<r+o){e.position.rowSpan=a+1,e.totalHeight=e.height,e.height=e.totalHeight-r;break}r+=o,a++}}else e.totalHeight=e.height},ie=(e,t)=>{const s=Qh({encoding:"UTF-8",standalone:"yes"}),i=Ua(e);return t?i:`${s}${i}`},$e=e=>{const i=String.fromCharCode,r=Math.floor(e/26),a=e%26;return!r||e===26?i(65+e-1):a?r<26?i(65+r-1)+i(65+a-1):$e(r)+i(65+a-1):$e(r-1)+"Z"},ru=e=>e.replaceAll(`
|
|
3
|
-
`,"_x000a_"),Ei=e=>{if(e==null)return null;let t="";for(let s=0;s<e.length;s++){const i=e.charCodeAt(s);if(i>=0&&i<=31&&i!==10){const n=`_x${i.toString(16).toUpperCase().padStart(4,"0")}_`;t+=n}else t+=e[s]}return t},au=e=>{const t=[];for(const s of e.keys()){const i=s.toString(),r={name:"t",textNode:Zh(Ei(i),!1)};i.trim().length!==i.length&&(r.properties={rawMap:{"xml:space":"preserve"}}),t.push({name:"si",children:[r]})}return t};import{_escapeString as nu,_getHeaderRowCount as ou,_warn as Ii}from"ag-grid-community";var lu={getTemplate(e){const{name:t,ContentType:s,Extension:i,PartName:r}=e;return{name:t,properties:{rawMap:{Extension:i,PartName:r,ContentType:s}}}}},cu=lu,ws=e=>e==="jpg"?"jpeg":e,du={getTemplate(e){const t=new Array(e).fill(void 0).map((c,d)=>({name:"Override",ContentType:"application/vnd.openxmlformats-officedocument.spreadsheetml.worksheet+xml",PartName:`/xl/worksheets/sheet${d+1}.xml`})),s=qe.size,i=ke.size,r={};dt.forEach(c=>{r[ws(c.type)]=!0});const a=new Array(s).fill(void 0).map((c,d)=>({name:"Override",ContentType:"application/vnd.openxmlformats-officedocument.drawing+xml",PartName:`/xl/drawings/drawing${d+1}.xml`})),n=[];we.forEach(({name:c})=>{n.push({name:"Override",ContentType:"application/vnd.openxmlformats-officedocument.spreadsheetml.table+xml",PartName:`/xl/tables/${c}.xml`})});const o=Object.keys(r).map(c=>({name:"Default",ContentType:`image/${c}`,Extension:c}));i&&o.push({name:"Default",Extension:"vml",ContentType:"application/vnd.openxmlformats-officedocument.vmlDrawing"});const l=[...o,{name:"Default",Extension:"rels",ContentType:"application/vnd.openxmlformats-package.relationships+xml"},{name:"Default",ContentType:"application/xml",Extension:"xml"},{name:"Override",ContentType:"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet.main+xml",PartName:"/xl/workbook.xml"},...t,{name:"Override",ContentType:"application/vnd.openxmlformats-officedocument.theme+xml",PartName:"/xl/theme/theme1.xml"},{name:"Override",ContentType:"application/vnd.openxmlformats-officedocument.spreadsheetml.styles+xml",PartName:"/xl/styles.xml"},{name:"Override",ContentType:"application/vnd.openxmlformats-officedocument.spreadsheetml.sharedStrings+xml",PartName:"/xl/sharedStrings.xml"},...a,...n,{name:"Override",ContentType:"application/vnd.openxmlformats-package.core-properties+xml",PartName:"/docProps/core.xml"}].map(c=>cu.getTemplate(c));return{name:"Types",properties:{rawMap:{xmlns:"http://schemas.openxmlformats.org/package/2006/content-types"}},children:l}}},hu=du,uu={getTemplate(e){const s=new Date().toJSON();return{name:"cp:coreProperties",properties:{prefixedAttributes:[{prefix:"xmlns:",map:{cp:"http://schemas.openxmlformats.org/package/2006/metadata/core-properties",dc:"http://purl.org/dc/elements/1.1/",dcterms:"http://purl.org/dc/terms/",dcmitype:"http://purl.org/dc/dcmitype/",xsi:"http://www.w3.org/2001/XMLSchema-instance"}}]},children:[{name:"dc:creator",textNode:e},{name:"dc:title",textNode:"Workbook"},{name:"dcterms:created",properties:{rawMap:{"xsi:type":"dcterms:W3CDTF"}},textNode:s},{name:"dcterms:modified",properties:{rawMap:{"xsi:type":"dcterms:W3CDTF"}},textNode:s}]}}},pu=uu,Ka=(e,t)=>({name:`xdr:${e}`,children:[{name:"xdr:col",textNode:t.col.toString()},{name:"xdr:colOff",textNode:t.offsetX.toString()},{name:"xdr:row",textNode:t.row.toString()},{name:"xdr:rowOff",textNode:t.offsetY.toString()}]}),gu=e=>{const t=[{name:"a:ext",properties:{rawMap:{uri:"{FF2B5EF4-FFF2-40B4-BE49-F238E27FC236}"}},children:[{name:"a16:creationId",properties:{rawMap:{id:"{822E6D20-D7BC-2841-A643-D49A6EF008A2}","xmlns:a16":"http://schemas.microsoft.com/office/drawing/2014/main"}}}]}];switch(e.recolor&&e.recolor.toLowerCase()){case"grayscale":case"sepia":case"washout":t.push({name:"a:ext",properties:{rawMap:{uri:"{C183D7F6-B498-43B3-948B-1728B52AA6E4}"}},children:[{name:"adec:decorative",properties:{rawMap:{val:"0","xmlns:adec":"http://schemas.microsoft.com/office/drawing/2017/decorative"}}}]})}return{name:"a:extLst",children:t}},mu=(e,t)=>({name:"xdr:nvPicPr",children:[{name:"xdr:cNvPr",properties:{rawMap:{id:t,name:e.id,descr:e.altText!=null?e.altText:void 0}},children:[gu(e)]},{name:"xdr:cNvPicPr",properties:{rawMap:{preferRelativeResize:"0"}},children:[{name:"a:picLocks"}]}]}),Wa=e=>{if(!e.saturation&&!e.tint)return;const t=[];return e.saturation&&t.push({name:"a:satMod",properties:{rawMap:{val:e.saturation*1e3}}}),e.tint&&t.push({name:"a:tint",properties:{rawMap:{val:e.tint*1e3}}}),t},fu=(e,t)=>({name:"a:duotone",children:[{name:"a:prstClr",properties:{rawMap:{val:e.color}},children:Wa(e)},{name:"a:srgbClr",properties:{rawMap:{val:t.color}},children:Wa(t)}]}),Cu=(e,t)=>{let s;if(e.transparency){const i=Math.min(Math.max(e.transparency,0),100);s=[{name:"a:alphaModFix",properties:{rawMap:{amt:1e5-Math.round(i*1e3)}}}]}if(e.recolor)switch(s||(s=[]),e.recolor.toLocaleLowerCase()){case"grayscale":s.push({name:"a:grayscl"});break;case"sepia":s.push(fu({color:"black"},{color:"D9C3A5",tint:50,saturation:180}));break;case"washout":s.push({name:"a:lum",properties:{rawMap:{bright:"70000",contrast:"-70000"}}});break;default:}return{name:"xdr:blipFill",children:[{name:"a:blip",properties:{rawMap:{cstate:"print","r:embed":`rId${t}`,"xmlns:r":"http://schemas.openxmlformats.org/officeDocument/2006/relationships"}},children:s},{name:"a:stretch",children:[{name:"a:fillRect"}]}]}},vu=(e,t)=>{const s={name:"a:xfrm",children:[{name:"a:off",properties:{rawMap:{x:0,y:0}}},{name:"a:ext",properties:{rawMap:{cx:t.width,cy:t.height}}}]};if(e.rotation){const a=e.rotation;s.properties={rawMap:{rot:Math.min(Math.max(a,0),360)*6e4}}}return{name:"xdr:spPr",children:[s,{name:"a:prstGeom",properties:{rawMap:{prst:"rect"}},children:[{name:"a:avLst"}]}]}},yu=e=>{e.fitCell=!!e.fitCell||!e.width||!e.height;const{position:t={},fitCell:s,width:i=0,height:r=0,totalHeight:a,totalWidth:n}=e,{offsetX:o=0,offsetY:l=0,row:c=1,rowSpan:d=1,column:h=1,colSpan:u=1}=t;return{from:{row:c-1,col:h-1,offsetX:lt(o),offsetY:lt(l)},to:{row:c-1+(s?1:d-1),col:h-1+(s?1:u-1),offsetX:lt(i+o),offsetY:lt(r+l)},height:lt(a||r),width:lt(n||i)}},Su=(e,t,s,i)=>({name:"xdr:pic",children:[mu(e,t+1),Cu(e,s+1),vu(e,i)]}),bu={getTemplate(e){const{sheetIndex:t}=e,s=qe.get(t),i=Lt.get(t),r=s.map((a,n)=>{const o=yu(a);return{name:"xdr:twoCellAnchor",properties:{rawMap:{editAs:"absolute"}},children:[Ka("from",o.from),Ka("to",o.to),Su(a,n,i.get(a.id).index,o),{name:"xdr:clientData"}]}});return{name:"xdr:wsDr",properties:{rawMap:{"xmlns:a":"http://schemas.openxmlformats.org/drawingml/2006/main","xmlns:xdr":"http://schemas.openxmlformats.org/drawingml/2006/spreadsheetDrawing"}},children:r}}},wu=bu,xu={getTemplate(e){const{Id:t,Type:s,Target:i}=e;return{name:"Relationship",properties:{rawMap:{Id:t,Type:s,Target:i}}}}},Mu=xu,Tu={getTemplate(e){const t=e.map(s=>Mu.getTemplate(s));return{name:"Relationships",properties:{rawMap:{xmlns:"http://schemas.openxmlformats.org/package/2006/relationships"}},children:t}}},At=Tu,Fu={getTemplate(e){return{name:"sst",properties:{rawMap:{xmlns:"http://schemas.openxmlformats.org/spreadsheetml/2006/main",count:e.size,uniqueCount:e.size}},children:au(e)}}},Pu=Fu,Au=e=>{switch(e){case 1:return"thin";case 2:return"medium";case 3:return"thick";default:return"hair"}},Ru={None:"None",Dot:"Dotted",Dash:"Dashed",Double:"Double",DashDot:"DashDot",DashDotDot:"DashDotDot",SlantDashDot:"SlantDashDot",Continuous:"Continuous"},Eu=["Dashed","DashDot","DashDotDot"],Iu={None:"none",Solid:"solid",Gray50:"mediumGray",Gray75:"darkGray",Gray25:"lightGray",HorzStripe:"darkHorizontal",VertStripe:"darkVertical",ReverseDiagStripe:"darkDown",DiagStripe:"darkUp",DiagCross:"darkGrid",ThickDiagCross:"darkTrellis",ThinHorzStripe:"lightHorizontal",ThinVertStripe:"lightVertical",ThinReverseDiagStripe:"lightDown",ThinDiagStripe:"lightUp",ThinHorzCross:"lightGrid",ThinDiagCross:"lightTrellis",Gray125:"gray125",Gray0625:"gray0625"},Du={Automatic:"general",Left:"left",Center:"center",Right:"right",Fill:"fill",Justify:"justify",CenterAcrossSelection:"centerContinuous",Distributed:"distributed",JustifyDistributed:"justify"},Lu={Automatic:void 0,Top:"top",Bottom:"bottom",Center:"center",Justify:"justify",Distributed:"distributed",JustifyDistributed:"justify"},ku=e=>e?Iu[e]||e:"none",Le=e=>e==null?e:(e.charAt(0)==="#"&&(e=e.substring(1)),e.length===6?"FF"+e:e),xs=(e,t)=>{if(!e)return"thin";const s=Au(t);if(e==="Continuous")return s;const i=Ru[e];return s==="medium"&&Eu.some(r=>r===i)?`medium${i}`:`${i.charAt(0).toLowerCase()}${i.substring(1)}`},Gu=e=>Du[e]||"general",Ou=e=>Lu[e]||void 0,Rt=e=>({name:"color",properties:{rawMap:{rgb:Le(e||"#000000")}}}),Nu={getTemplate(e){const{left:t,right:s,top:i,bottom:r,diagonal:a}=e,n=t?[Rt(t.color)]:void 0,o=s?[Rt(s.color)]:void 0,l=i?[Rt(i.color)]:void 0,c=r?[Rt(r.color)]:void 0,d=a?[Rt(a.color)]:void 0;return{name:"border",children:[{name:"left",properties:{rawMap:{style:t&&t.style}},children:n},{name:"right",properties:{rawMap:{style:s&&s.style}},children:o},{name:"top",properties:{rawMap:{style:i&&i.style}},children:l},{name:"bottom",properties:{rawMap:{style:r&&r.style}},children:c},{name:"diagonal",properties:{rawMap:{style:a&&a.style}},children:d}]}}},Bu=Nu,_u={getTemplate(e){return{name:"borders",properties:{rawMap:{count:e.length}},children:e.map(t=>Bu.getTemplate(t))}}},Vu=_u,Hu=e=>{const s=["Context","LeftToRight","RightToLeft"].indexOf(e);return Math.max(s,0)},zu={getTemplate(e){const{horizontal:t,indent:s,readingOrder:i,rotate:r,shrinkToFit:a,vertical:n,wrapText:o}=e;return{name:"alignment",properties:{rawMap:{horizontal:t&&Gu(t),indent:s,readingOrder:i&&Hu(i),textRotation:r,shrinkToFit:a,vertical:n&&Ou(n),wrapText:o}}}}},Uu=zu,Ku={getTemplate(e){const t=e.protected===!1?0:1;return{name:"protection",properties:{rawMap:{hidden:e.hideFormula===!0?1:0,locked:t}}}}},Wu=Ku,ju={getTemplate(e){const{alignment:t,borderId:s,fillId:i,fontId:r,numFmtId:a,protection:n,quotePrefix:o,xfId:l}=e,c=[];return t&&c.push(Uu.getTemplate(t)),n&&c.push(Wu.getTemplate(n)),{name:"xf",properties:{rawMap:{applyAlignment:t?1:void 0,applyProtection:n?1:void 0,applyBorder:s?1:void 0,applyFill:i?1:void 0,borderId:s,fillId:i,applyFont:r?1:void 0,fontId:r,applyNumberFormat:a?1:void 0,numFmtId:a,quotePrefix:o?1:void 0,xfId:l}},children:c.length?c:void 0}}},ja=ju,$u={getTemplate(e){return{name:"cellStyleXfs",properties:{rawMap:{count:e.length}},children:e.map(t=>ja.getTemplate(t))}}},Yu=$u,Xu={getTemplate(e){const{builtinId:t,name:s,xfId:i}=e;return{name:"cellStyle",properties:{rawMap:{builtinId:t,name:s,xfId:i}}}}},qu=Xu,Zu={getTemplate(e){return{name:"cellStyles",properties:{rawMap:{count:e.length}},children:e.map(t=>qu.getTemplate(t))}}},Ju=Zu,Qu={getTemplate(e){return{name:"cellXfs",properties:{rawMap:{count:e.length}},children:e.map(t=>ja.getTemplate(t))}}},ep=Qu,tp={getTemplate(e){const{patternType:t,fgTheme:s,fgTint:i,fgRgb:r,bgRgb:a,bgIndexed:n}=e,o={name:"patternFill",properties:{rawMap:{patternType:t}}};return(s||i||r)&&(o.children=[{name:"fgColor",properties:{rawMap:{theme:s,tint:i,rgb:r}}}]),(n||a)&&(o.children||(o.children=[]),o.children.push({name:"bgColor",properties:{rawMap:{indexed:n,rgb:a}}})),{name:"fill",children:[o]}}},sp=tp,ip={getTemplate(e){return{name:"fills",properties:{rawMap:{count:e.length}},children:e.map(t=>sp.getTemplate(t))}}},rp=ip,ap={getTemplate(e){const{size:t,colorTheme:s,color:i="FF000000",fontName:r="Calibri",family:a,scheme:n,italic:o,bold:l,strikeThrough:c,outline:d,shadow:h,underline:u,verticalAlign:p}=e,g=[{name:"sz",properties:{rawMap:{val:t}}},{name:"color",properties:{rawMap:{theme:s,rgb:i}}},{name:"name",properties:{rawMap:{val:r}}}];return a&&g.push({name:"family",properties:{rawMap:{val:a}}}),n&&g.push({name:"scheme",properties:{rawMap:{val:n}}}),o&&g.push({name:"i"}),l&&g.push({name:"b"}),c&&g.push({name:"strike"}),d&&g.push({name:"outline"}),h&&g.push({name:"shadow"}),u&&g.push({name:"u",properties:{rawMap:{val:u}}}),p&&g.push({name:"vertAlign",properties:{rawMap:{val:p}}}),{name:"font",children:g}}},np=ap,op={getTemplate(e){return{name:"fonts",properties:{rawMap:{count:e.length}},children:e.map(t=>np.getTemplate(t))}}},lp=op;import{_escapeString as cp}from"ag-grid-community";function dp(e){const t=e.split(/(\[[^\]]*\])/);for(let s=0;s<t.length;s++){let i=t[s];i.length&&(i.startsWith("[")||(i=i.replace(/\$/g,'"$"')),t[s]=cp(i))}return t.join("")}var hp={getTemplate(e){let{formatCode:t,numFmtId:s}=e;return t.length&&(t=dp(t)),{name:"numFmt",properties:{rawMap:{formatCode:t,numFmtId:s}}}}},up=hp,pp={getTemplate(e){return{name:"numFmts",properties:{rawMap:{count:e.length}},children:e.map(t=>up.getTemplate(t))}}},gp=pp,Ms,ct,Et,It,Dt,$a,Ts,Ya,Di,Xa=(e,t)=>(e.indexOf("mixedStyle")!==-1&&t>1&&(e+=`_${t}`),e),qa=()=>{Ms={base:0},ct=[],Et=[{fontName:"Calibri",colorTheme:"1",family:"2",scheme:"minor"}],It=[{patternType:"none"},{patternType:"gray125"}],Dt=[{left:void 0,right:void 0,top:void 0,bottom:void 0,diagonal:void 0}],$a=[{borderId:0,fillId:0,fontId:0,numFmtId:0}],Ts=[{borderId:0,fillId:0,fontId:0,numFmtId:0,xfId:0}],Ya=[{builtinId:0,name:"Normal",xfId:0}]},mp=e=>{const t=ku(e.pattern),s=Le(e.color),i=Le(e.patternColor);let r=It.findIndex(a=>{const{patternType:n,fgRgb:o,bgRgb:l}=a;return!(n!=t||o!=s||l!=i)});return r===-1&&(r=It.length,It.push({patternType:t,fgRgb:s,bgRgb:i})),r},fp=e=>{if(Ha[e])return Ha[e];let t=ct.findIndex(s=>s.formatCode===e);return t===-1?(t=ct.length+164,ct.push({formatCode:e,numFmtId:t})):t=ct[t].numFmtId,t},Cp=e=>{const{borderBottom:t,borderTop:s,borderLeft:i,borderRight:r}=e;let a,n,o,l,c,d,h,u;i&&(o=xs(i.lineStyle,i.weight),h=Le(i.color)),r&&(l=xs(r.lineStyle,r.weight),u=Le(r.color)),t&&(a=xs(t.lineStyle,t.weight),c=Le(t.color)),s&&(n=xs(s.lineStyle,s.weight),d=Le(s.color));let p=Dt.findIndex(g=>{const{left:m,right:f,top:C,bottom:v}=g;if(!m&&(o||h)||!f&&(l||u)||!C&&(n||d)||!v&&(a||c))return!1;const{style:y,color:S}=m||{},{style:b,color:w}=f||{},{style:F,color:T}=C||{},{style:P,color:A}=v||{};return!(y!=o||S!=h||b!=l||w!=u||F!=n||T!=d||P!=a||A!=c)});return p===-1&&(p=Dt.length,Dt.push({left:{style:o,color:h},right:{style:l,color:u},top:{style:n,color:d},bottom:{style:a,color:c},diagonal:{style:void 0,color:void 0}})),p},vp=e=>{const{fontName:t="Calibri",color:s,size:i,bold:r,italic:a,outline:n,shadow:o,strikeThrough:l,underline:c,family:d,verticalAlign:h}=e,u=Le(s),p=tu(d),g=c?c.toLocaleLowerCase():void 0,m=h?h.toLocaleLowerCase():void 0;let f=Et.findIndex(C=>!(C.fontName!=t||C.color!=u||C.size!=i||C.bold!=r||C.italic!=a||C.outline!=n||C.shadow!=o||C.strikeThrough!=l||C.underline!=g||C.verticalAlign!=m||C.family!=p));return f===-1&&(f=Et.length,Et.push({fontName:t,color:u,size:i,bold:r,italic:a,outline:n,shadow:o,strikeThrough:l,underline:g,verticalAlign:m,family:p?.toString()})),f},yp=e=>{const{alignment:t,borders:s,font:i,interior:r,numberFormat:a,protection:n,quotePrefix:o}=e;let{id:l}=e,c=0,d=0,h=0,u=0;l&&(l=Xa(l,Di),Ms[l]==null&&(r&&(c=mp(r)),s&&(d=Cp(s)),i&&(h=vp(i)),a&&(u=fp(a.format)),Ms[l]=Ts.length,Ts.push({alignment:t,borderId:d||0,fillId:c||0,fontId:h||0,numFmtId:u||0,protection:n,quotePrefix:o,xfId:0})))},Sp={getTemplate(e){const t=gp.getTemplate(ct),s=lp.getTemplate(Et.map(l=>({...l,size:l.size!=null?l.size:e}))),i=rp.getTemplate(It),r=Vu.getTemplate(Dt),a=Yu.getTemplate($a),n=ep.getTemplate(Ts),o=Ju.getTemplate(Ya);return qa(),{name:"styleSheet",properties:{rawMap:{"mc:Ignorable":"x14ac x16r2 xr",xmlns:"http://schemas.openxmlformats.org/spreadsheetml/2006/main","xmlns:mc":"http://schemas.openxmlformats.org/markup-compatibility/2006","xmlns:x14ac":"http://schemas.microsoft.com/office/spreadsheetml/2009/9/ac","xmlns:x16r2":"http://schemas.microsoft.com/office/spreadsheetml/2015/02/main","xmlns:xr":"http://schemas.microsoft.com/office/spreadsheetml/2014/revision"}},children:[t,s,i,r,a,n,o,{name:"tableStyles",properties:{rawMap:{count:0,defaultPivotStyle:"PivotStyleLight16",defaultTableStyle:"TableStyleMedium2"}}}]}}},bp=(e,t)=>Ms[Xa(e,t)]||0,wp=(e,t)=>{Di=t,Di===1&&qa(),e.forEach(yp)},xp=Sp,Mp={getTemplate(e,t){const{name:s,columns:i,rowRange:r,displayName:a,showRowStripes:n,showColumnStripes:o,showFilterButtons:l,highlightFirstColumn:c,highlightLastColumn:d}=e||{},h=!r||r[0]-r[1]===0;if(!e||!s||!Array.isArray(i)||!i.length||h)return{name:"table"};const u=i.map((v,y)=>({name:"filterColumn",properties:{rawMap:{colId:y.toString(),hiddenButton:l[y]?0:1}}})),p=`A${r[0]}`,g=`${$e(i.length)}${r[1]}`,m=`${p}:${g}`,f=`${t+1}`,C=t?`${a}_${f}`:a;return{name:"table",properties:{rawMap:{xmlns:"http://schemas.openxmlformats.org/spreadsheetml/2006/main","xmlns:mc":"http://schemas.openxmlformats.org/markup-compatibility/2006","mc:Ignorable":"xr xr3","xmlns:xr":"http://schemas.microsoft.com/office/spreadsheetml/2014/revision","xmlns:xr3":"http://schemas.microsoft.com/office/spreadsheetml/2016/revision3",name:s,displayName:C,ref:m,totalsRowShown:0,id:f}},children:[{name:"autoFilter",properties:{rawMap:{ref:m}},children:u},{name:"tableColumns",properties:{rawMap:{count:i.length}},children:i.map((v,y)=>({name:"tableColumn",properties:{rawMap:{id:(y+1).toString(),name:ru(v),dataCellStyle:"Normal"}}}))},{name:"tableStyleInfo",properties:{rawMap:{name:"TableStyleLight1",showFirstColumn:c?1:0,showLastColumn:d?1:0,showRowStripes:n?1:0,showColumnStripes:o?1:0}}}]}}},Tp=Mp,de=e=>{const[t,s,i,r]=e;return{name:`a:${t}`,children:[{name:`a:${s}`,properties:{rawMap:{val:i,lastClr:r}}}]}},Fp={getTemplate(){return{name:"a:clrScheme",properties:{rawMap:{name:"Office"}},children:[de(["dk1","sysClr","windowText","000000"]),de(["lt1","sysClr","window","FFFFFF"]),de(["dk2","srgbClr","44546A"]),de(["lt2","srgbClr","E7E6E6"]),de(["accent1","srgbClr","4472C4"]),de(["accent2","srgbClr","ED7D31"]),de(["accent3","srgbClr","A5A5A5"]),de(["accent4","srgbClr","FFC000"]),de(["accent5","srgbClr","5B9BD5"]),de(["accent6","srgbClr","70AD47"]),de(["hlink","srgbClr","0563C1"]),de(["folHlink","srgbClr","954F72"])]}}},Pp=Fp,x=e=>{const[t,s,i,r]=e;return{name:`a:${t}`,properties:{rawMap:{script:i,typeface:s,panose:r}}}},Ap={getTemplate(){return{name:"a:fontScheme",properties:{rawMap:{name:"Office"}},children:[{name:"a:majorFont",children:[x(["latin","Calibri Light",void 0,"020F0302020204030204"]),x(["ea",""]),x(["cs",""]),x(["font","\u6E38\u30B4\u30B7\u30C3\u30AF Light","Jpan"]),x(["font","\uB9D1\uC740 \uACE0\uB515","Hang"]),x(["font","\u7B49\u7EBF Light","Hans"]),x(["font","\u65B0\u7D30\u660E\u9AD4","Hant"]),x(["font","Times New Roman","Arab"]),x(["font","Times New Roman","Hebr"]),x(["font","Tahoma","Thai"]),x(["font","Nyala","Ethi"]),x(["font","Vrinda","Beng"]),x(["font","Shruti","Gujr"]),x(["font","MoolBoran","Khmr"]),x(["font","Tunga","Knda"]),x(["font","Raavi","Guru"]),x(["font","Euphemia","Cans"]),x(["font","Plantagenet Cherokee","Cher"]),x(["font","Microsoft Yi Baiti","Yiii"]),x(["font","Microsoft Himalaya","Tibt"]),x(["font","MV Boli","Thaa"]),x(["font","Mangal","Deva"]),x(["font","Gautami","Telu"]),x(["font","Latha","Taml"]),x(["font","Estrangelo Edessa","Syrc"]),x(["font","Kalinga","Orya"]),x(["font","Kartika","Mlym"]),x(["font","DokChampa","Laoo"]),x(["font","Iskoola Pota","Sinh"]),x(["font","Mongolian Baiti","Mong"]),x(["font","Times New Roman","Viet"]),x(["font","Microsoft Uighur","Uigh"]),x(["font","Sylfaen","Geor"]),x(["font","Arial","Armn"]),x(["font","Leelawadee UI","Bugi"]),x(["font","Microsoft JhengHei","Bopo"]),x(["font","Javanese Text","Java"]),x(["font","Segoe UI","Lisu"]),x(["font","Myanmar Text","Mymr"]),x(["font","Ebrima","Nkoo"]),x(["font","Nirmala UI","Olck"]),x(["font","Ebrima","Osma"]),x(["font","Phagspa","Phag"]),x(["font","Estrangelo Edessa","Syrn"]),x(["font","Estrangelo Edessa","Syrj"]),x(["font","Estrangelo Edessa","Syre"]),x(["font","Nirmala UI","Sora"]),x(["font","Microsoft Tai Le","Tale"]),x(["font","Microsoft New Tai Lue","Talu"]),x(["font","Ebrima","Tfng"])]},{name:"a:minorFont",children:[x(["latin","Calibri",void 0,"020F0502020204030204"]),x(["ea",""]),x(["cs",""]),x(["font","\u6E38\u30B4\u30B7\u30C3\u30AF","Jpan"]),x(["font","\uB9D1\uC740 \uACE0\uB515","Hang"]),x(["font","\u7B49\u7EBF","Hans"]),x(["font","\u65B0\u7D30\u660E\u9AD4","Hant"]),x(["font","Arial","Arab"]),x(["font","Arial","Hebr"]),x(["font","Tahoma","Thai"]),x(["font","Nyala","Ethi"]),x(["font","Vrinda","Beng"]),x(["font","Shruti","Gujr"]),x(["font","DaunPenh","Khmr"]),x(["font","Tunga","Knda"]),x(["font","Raavi","Guru"]),x(["font","Euphemia","Cans"]),x(["font","Plantagenet Cherokee","Cher"]),x(["font","Microsoft Yi Baiti","Yiii"]),x(["font","Microsoft Himalaya","Tibt"]),x(["font","MV Boli","Thaa"]),x(["font","Mangal","Deva"]),x(["font","Gautami","Telu"]),x(["font","Latha","Taml"]),x(["font","Estrangelo Edessa","Syrc"]),x(["font","Kalinga","Orya"]),x(["font","Kartika","Mlym"]),x(["font","DokChampa","Laoo"]),x(["font","Iskoola Pota","Sinh"]),x(["font","Mongolian Baiti","Mong"]),x(["font","Arial","Viet"]),x(["font","Microsoft Uighur","Uigh"]),x(["font","Sylfaen","Geor"]),x(["font","Arial","Armn"]),x(["font","Leelawadee UI","Bugi"]),x(["font","Microsoft JhengHei","Bopo"]),x(["font","Javanese Text","Java"]),x(["font","Segoe UI","Lisu"]),x(["font","Myanmar Text","Mymr"]),x(["font","Ebrima","Nkoo"]),x(["font","Nirmala UI","Olck"]),x(["font","Ebrima","Osma"]),x(["font","Phagspa","Phag"]),x(["font","Estrangelo Edessa","Syrn"]),x(["font","Estrangelo Edessa","Syrj"]),x(["font","Estrangelo Edessa","Syre"]),x(["font","Nirmala UI","Sora"]),x(["font","Microsoft Tai Le","Tale"]),x(["font","Microsoft New Tai Lue","Talu"]),x(["font","Ebrima","Tfng"])]}]}}},Rp=Ap,fe=(e,t,s)=>({name:`a:${e}`,properties:{rawMap:{val:t}},children:s}),Li=e=>{const[t,s,i,r,a,n]=e,o=[];return o.push(fe("satMod",i)),r&&o.push(fe("lumMod",r)),a&&o.push(fe("tint",a)),n&&o.push(fe("shade",n)),{name:"a:gs",properties:{rawMap:{pos:t}},children:[{name:"a:schemeClr",properties:{rawMap:{val:s}},children:o}]}},Fs=(e,t)=>({name:"a:solidFill",children:[fe("schemeClr",e,t)]}),ki=e=>{const[t,s,i,r,a]=e,[n,o]=a;return{name:"a:gradFill",properties:{rawMap:{rotWithShape:t}},children:[{name:"a:gsLst",children:[Li(s),Li(i),Li(r)]},{name:"a:lin",properties:{rawMap:{ang:n,scaled:o}}}]}},Gi=e=>{const[t,s,i,r]=e;return{name:"a:ln",properties:{rawMap:{w:t,cap:s,cmpd:i,algn:r}},children:[Fs("phClr"),fe("prstDash","solid"),{name:"a:miter",properties:{rawMap:{lim:"800000"}}}]}},Oi=e=>{const t=[];if(e){const[s,i,r,a,n]=e;t.push({name:"a:outerShdw",properties:{rawMap:{blurRad:s,dist:i,dir:r,algn:a,rotWithShape:n}},children:[fe("srgbClr","000000",[fe("alpha","63000")])]})}return{name:"a:effectStyle",children:[Object.assign({},{name:"a:effectLst"},t.length?{children:t}:{})]}},Ep=()=>({name:"a:fillStyleLst",children:[Fs("phClr"),ki(["1",["0","phClr","105000","110000","67000"],["50000","phClr","103000","105000","73000"],["100000","phClr","109000","105000","81000"],["5400000","0"]]),ki(["1",["0","phClr","103000","102000","94000"],["50000","phClr","110000","100000",void 0,"100000"],["100000","phClr","120000","99000",void 0,"78000"],["5400000","0"]])]}),Ip=()=>({name:"a:lnStyleLst",children:[Gi(["6350","flat","sng","ctr"]),Gi(["12700","flat","sng","ctr"]),Gi(["19050","flat","sng","ctr"])]}),Dp=()=>({name:"a:effectStyleLst",children:[Oi(),Oi(),Oi(["57150","19050","5400000","ctr","0"])]}),Lp=()=>({name:"a:bgFillStyleLst",children:[Fs("phClr"),Fs("phClr",[fe("tint","95000"),fe("satMod","170000")]),ki(["1",["0","phClr","150000","102000","93000","98000"],["50000","phClr","130000","103000","98000","90000"],["100000","phClr","120000",void 0,void 0,"63000"],["5400000","0"]])]}),kp={getTemplate(){return{name:"a:fmtScheme",properties:{rawMap:{name:"Office"}},children:[Ep(),Ip(),Dp(),Lp()]}}},Gp=kp,Op={getTemplate(){return{name:"a:themeElements",children:[Pp.getTemplate(),Rp.getTemplate(),Gp.getTemplate()]}}},Np=Op,Bp={getTemplate(){return{name:"a:theme",properties:{prefixedAttributes:[{prefix:"xmlns:",map:{a:"http://schemas.openxmlformats.org/drawingml/2006/main"}}],rawMap:{name:"Office Theme"}},children:[Np.getTemplate(),{name:"a:objectDefaults"},{name:"a:extraClrSchemeLst"}]}}},_p=Bp,Vp=()=>({name:"o:shapelayout",properties:{prefixedAttributes:[{prefix:"v:",map:{ext:"edit"}}]},children:[{name:"o:idmap",properties:{prefixedAttributes:[{prefix:"v:",map:{ext:"edit"}}],rawMap:{data:"1"}}}]}),Hp=()=>({name:"v:stroke",properties:{rawMap:{joinstyle:"miter"}}}),zp=e=>({name:"v:formulas",children:e.map(t=>({name:"v:f",properties:{rawMap:{eqn:t}}}))}),Up=()=>({name:"v:path",properties:{prefixedAttributes:[{prefix:"o:",map:{connecttype:"rect",extrusionok:"f"}}],rawMap:{gradientshapeok:"t"}}}),Za=e=>{const{aspectratio:t,rotation:s}=e||{},i={};return t&&(i.aspectratio="t"),s&&(i.rotation="t"),{name:"o:lock",properties:{prefixedAttributes:[{prefix:"v:",map:{ext:"edit"}}],rawMap:i}}};function Kp(e,t,s,i,r){return(e-t)/(s-t)*(r-i)+i}var Wp=(e,t)=>{let s;const{recolor:i,brightness:r,contrast:a,id:n}=e;if(i&&(s={},(i==="Washout"||i==="Grayscale")&&(s.gain="19661f",s.blacklevel="22938f"),(i==="Black & White"||i==="Grayscale")&&(s.grayscale="t",i==="Black & White"&&(s.bilevel="t"))),!i||i==="Grayscale"){if(s||(s={}),a!=null&&a!==50){let o="1";a>=0&&(a<50?o=String(a/50):a<100?o=String(50/(100-a)):a===100&&(o="2147483647f")),s.gain=o}r!=null&&r!==50&&(s.blacklevel=Kp(r,0,100,-.5,.5).toString())}return{name:"v:imagedata",properties:{prefixedAttributes:[{prefix:"o:",map:{relid:`rId${t}`,title:n}}],rawMap:s}}},jp=()=>{const e=["if lineDrawn pixelLineWidth 0","sum @0 1 0","sum 0 0 @1","prod @2 1 2","prod @3 21600 pixelWidth","prod @3 21600 pixelHeight","sum @0 0 1","prod @6 1 2","prod @7 21600 pixelWidth","sum @8 21600 0","prod @7 21600 pixelHeight","sum @10 21600 0"];return{name:"v:shapetype",properties:{prefixedAttributes:[{prefix:"o:",map:{spt:"75",preferrelative:"t"}}],rawMap:{coordsize:"21600,21600",filled:"f",id:"_x0000_t75",path:"m@4@5l@4@11@9@11@9@5xe",stroked:"f"}},children:[Hp(),zp(e),Up(),Za({aspectratio:!0})]}},Ja=e=>Math.floor((e??0)*.74999943307122),$p=(e,t)=>{const{width:s=0,height:i=0,altText:r}=e,a=Ja(s),n=Ja(i);return{name:"v:shape",properties:{rawMap:{id:e.headerFooterPosition,"o:spid":"_x0000_s1025",style:`position: absolute; margin-left: 0; margin-top: 10in; margin-bottom: 0; margin-right: 0; width: ${a}pt; height: ${n}pt; z-index: ${t+1}`,type:"#_x0000_t75",alt:r}},children:[Wp(e,t+1),Za({rotation:!0})]}},Yp={getTemplate(e){const t=ke.get(e.sheetIndex)||[],s=[Vp(),jp(),...t.map((i,r)=>$p(i,r))];return{name:"xml",properties:{prefixedAttributes:[{prefix:"xmlns:",map:{v:"urn:schemas-microsoft-com:vml",o:"urn:schemas-microsoft-com:office:office",x:"urn:schemas-microsoft-com:office:excel"}}]},children:s}}},Xp=Yp,qp={getTemplate(e,t){const s=(t+1).toString();return{name:"sheet",properties:{rawMap:{name:e,sheetId:s,"r:id":`rId${s}`}}}}},Zp=qp,Jp={getTemplate(e){return{name:"sheets",children:e.map((t,s)=>Zp.getTemplate(t,s))}}},Qp=Jp,eg={getTemplate(e,t){return{name:"workbook",properties:{prefixedAttributes:[{prefix:"xmlns:",map:{r:"http://schemas.openxmlformats.org/officeDocument/2006/relationships"}}],rawMap:{xmlns:"http://schemas.openxmlformats.org/spreadsheetml/2006/main"}},children:[{name:"bookViews",children:[{name:"workbookView",properties:{rawMap:{activeTab:t}}}]},Qp.getTemplate(e)]}}},tg=eg;import{_escapeString as sg}from"ag-grid-community";var ig=e=>Math.ceil((e-12)/7+1),rg={getTemplate(e){const{min:t,max:s,outlineLevel:i,s:r,width:a,hidden:n,bestFit:o}=e;let l=1,c="0";return a>1&&(l=ig(a),c="1"),{name:"col",properties:{rawMap:{min:t,max:s,outlineLevel:i??void 0,width:l,style:r,hidden:n?"1":"0",bestFit:o?"1":"0",customWidth:c}}}}},ag=rg,ng={getTemplate(e){return{name:"mergeCell",properties:{rawMap:{ref:e}}}}},og=ng;import{_escapeString as Qa}from"ag-grid-community";var lg=e=>{const t=e.charAt(0).toLowerCase();return t==="s"?"inlineStr":t},cg={getTemplate(e,t,s){const{ref:i,data:r,styleId:a}=e,{type:n,value:o}=r||{type:"empty",value:null};let l=n;n==="f"?l="str":n.charAt(0)===n.charAt(0).toUpperCase()&&(l=lg(n));const c={name:"c",properties:{rawMap:{r:i,t:l==="empty"?void 0:l,s:a?bp(a,s):void 0}}};if(l==="empty")return c;let d;return l==="str"&&n==="f"?d=[{name:"f",textNode:Qa(Ei(o),!1)}]:l==="inlineStr"?d=[{name:"is",children:[{name:"t",textNode:Qa(Ei(o),!1)}]}]:d=[{name:"v",textNode:o}],Object.assign({},c,{children:d})}},dg=cg,hg=(e,t)=>{const s=[];let i=0;for(let r=0;r<e.length;r++){const a=e[r];a.mergeAcross&&(s.push({pos:r,excelPos:i}),i+=a.mergeAcross),i++}if(s.length)for(let r=s.length-1;r>=0;r--){const a=[],n=e[s[r].pos];for(let o=1;o<=n.mergeAcross;o++)a.push({ref:`${$e(s[r].excelPos+1+o)}${t+1}`,styleId:n.styleId,data:{type:"empty",value:null}});a.length&&e.splice(s[r].pos+1,0,...a)}},ug=e=>e.data?.value!==""||e.styleId!==void 0,pg={getTemplate(e,t,s){const{collapsed:i,hidden:r,height:a,outlineLevel:n,cells:o=[]}=e;hg(o,t);const l=o.filter(ug).map((c,d)=>dg.getTemplate(c,d,s));return{name:"row",properties:{rawMap:{r:t+1,collapsed:i?"1":"0",hidden:r?"1":"0",ht:a,customHeight:a!=null?"1":"0",spans:"1:1",outlineLevel:n||void 0}},children:l}}},gg=pg,mg=(e,t,s)=>{const i=[],r=[];e.forEach((o,l)=>{const c=o.cells;let d=0,h;c.forEach((u,p)=>{const g=p+d+1,m=$e(g),f=l+1;if(u.mergeAcross){d+=u.mergeAcross;const v=$e(p+d+1);i.push(`${m}${f}:${v}${f}`)}t[g-1]||(t[g-1]={});const{collapsibleRanges:C}=u;C&&C.forEach(v=>{r.push([g+v[0],g+v[1]])}),h=t[g-1],h.min=g,h.max=g,u.ref=`${m}${f}`})}),r.sort((o,l)=>o[0]!==l[0]?o[0]-l[0]:l[1]-o[1]);const a=new Map,n=new Map;return r.filter(o=>{const l=o.toString();return a.get(l)?!1:(a.set(l,!0),!0)}).forEach(o=>{const l=t.find(d=>d.min==o[0]&&d.max==o[1]),c=n.get(o[0]);t.push({min:o[0],max:o[1],outlineLevel:s?void 0:c||1,width:(l||{width:100}).width}),n.set(o[0],(c||0)+1)}),i},fg=e=>!e||e!=="Portrait"&&e!=="Landscape"?"portrait":e.toLocaleLowerCase(),Cg=e=>{if(e==null)return 1;const s=["Letter","Letter Small","Tabloid","Ledger","Legal","Statement","Executive","A3","A4","A4 Small","A5","A6","B4","B5","Folio","Envelope","Envelope DL","Envelope C5","Envelope B5","Envelope C3","Envelope C4","Envelope C6","Envelope Monarch","Japanese Postcard","Japanese Double Postcard"].indexOf(e);return s===-1?1:s+1},vg=e=>{const t={"&[Page]":"&P","&[Pages]":"&N","&[Date]":"&D","&[Time]":"&T","&[Tab]":"&A","&[Path]":"&Z","&[File]":"&F","&[Picture]":"&G"};for(const s of Object.keys(t))e=e.replace(s,t[s]);return e},yg=e=>e==="Center"?"C":e==="Right"?"R":"L",Sg=(e,t)=>(t&&(e+="&"",e+=t.fontName||"Calibri",t.bold!==t.italic?e+=t.bold?",Bold":",Italic":t.bold?e+=",Bold Italic":e+=",Regular",e+=""",t.size&&(e+=`&${t.size}`),t.strikeThrough&&(e+="&S"),t.underline&&(e+=`&${t.underline==="Double"?"E":"U"}`),t.color&&(e+=`&K${t.color.replace("#","").toUpperCase()}`)),e),bg=(e,t,s)=>e.reduce((i,r,a)=>{const n=yg(r.position),o=Sg(`${i}&${n}`,r.font),l=["Left","Center","Right"];r.position||(r.position=l[a]);const{image:c}=r;if(r.value==="&[Picture]"&&c){const d=`${n}${t}${s}`;Wg(c,d)}return`${o}${sg(vg(r.value))}`},""),wg=e=>{const t=["all","first","even"],s=[];return t.forEach(i=>{const r=e[i],a=i==="all"?"odd":i;if(r)for(const n of Object.keys(r)){const o=r[n],l=`${n.charAt(0).toUpperCase()}${n.slice(1)}`,c=n[0].toUpperCase();if(o){const d=i==="all"?"":i.toUpperCase();s.push({name:`${a}${l}`,properties:{rawMap:{"xml:space":"preserve"}},textNode:bg(o,c,d)})}}}),s},xg=e=>t=>(e.length&&t.children.push({name:"cols",children:e.map(s=>ag.getTemplate(s))}),t),Mg=(e,t)=>s=>(e.length&&s.children.push({name:"sheetData",children:e.map((i,r)=>gg.getTemplate(i,r,t))}),s),Tg=e=>t=>(e.length&&t.children.push({name:"mergeCells",properties:{rawMap:{count:e.length}},children:e.map(s=>og.getTemplate(s))}),t),Fg=e=>t=>{const{top:s=.75,right:i=.7,bottom:r=.75,left:a=.7,header:n=.3,footer:o=.3}=e;return t.children.push({name:"pageMargins",properties:{rawMap:{bottom:r,footer:o,header:n,left:a,right:i,top:s}}}),t},Pg=e=>t=>(e&&t.children.push({name:"pageSetup",properties:{rawMap:{horizontalDpi:0,verticalDpi:0,orientation:fg(e.orientation),paperSize:Cg(e.pageSize)}}}),t),Ag=e=>t=>{if(!e)return t;const s=e.first!=null?1:0,i=e.even!=null?1:0;return t.children.push({name:"headerFooter",properties:{rawMap:{differentFirst:s,differentOddEven:i}},children:wg(e)}),t},Rg=e=>t=>(e&&t.children.push({name:"tableParts",properties:{rawMap:{count:"1"}},children:[{name:"tablePart",properties:{rawMap:{"r:id":`rId${++t.rIdCounter}`}}}]}),t),Eg=e=>t=>(qe.get(e)?.length&&t.children.push({name:"drawing",properties:{rawMap:{"r:id":`rId${++t.rIdCounter}`}}}),t),Ig=e=>t=>(ke.get(e)&&t.children.push({name:"legacyDrawingHF",properties:{rawMap:{"r:id":`rId${++t.rIdCounter}`}}}),t),Dg=(e=0,t=0)=>{const s=e>0||t>0;return s?[{name:"pane",properties:{rawMap:{state:s?"frozen":void 0,topLeftCell:s?`${$e(e+1)}${t+1}`:void 0,xSplit:e===0?void 0:e,ySplit:t===0?void 0:t}}}]:void 0},Lg=(e=!1,t,s)=>i=>(i.children.push({name:"sheetViews",children:[{name:"sheetView",properties:{rawMap:{rightToLeft:e===!0?"1":"0",workbookViewId:"0"}},children:Dg(t,s)}]}),i),kg=()=>e=>(e.children.push({name:"sheetPr",children:[{name:"outlinePr",properties:{rawMap:{summaryBelow:0}}}]}),e),Gg=e=>t=>{const s=e.reduce((i,r)=>r.outlineLevel&&r.outlineLevel>i?r.outlineLevel:i,0);return t.children.push({name:"sheetFormatPr",properties:{rawMap:{baseColWidth:10,defaultRowHeight:16,outlineLevelRow:s||void 0}}}),t},Og={getTemplate(e){const{worksheet:t,currentSheet:s,config:i}=e,{margins:r={},pageSetup:a,headerFooterConfig:n,suppressColumnOutline:o,rightToLeft:l,frozenRowCount:c,frozenColumnCount:d}=i,{table:h}=t,{rows:u,columns:p}=h,g=p&&p.length?mg(u,p,!!o):[],m=we.get(s),{children:f}=[kg(),Lg(l,d,c),Gg(u),xg(p),Mg(u,s+1),Tg(g),Fg(r),Pg(a),Ag(n),Eg(s),Ig(s),Rg(m)].reduce((C,v)=>v(C),{children:[],rIdCounter:0});return{name:"worksheet",properties:{prefixedAttributes:[{prefix:"xmlns:",map:{r:"http://schemas.openxmlformats.org/officeDocument/2006/relationships"}}],rawMap:{xmlns:"http://schemas.openxmlformats.org/spreadsheetml/2006/main"}},children:f}}},Ng=Og,Ye=new Map,be=[],Xe=new Map,qe=new Map,ke=new Map,dt=new Map,Lt=new Map,we=new Map,Bg="AG-GRID-TABLE",Ni="SINGLE_SHEET";function _g(){return Ni}function Vg(e){Ni=e}function Hg(e,t,s){$g(t),wp(e,be.length);const i=Object.assign({},s);return s.exportAsExcelTable&&(s.colModel.isPivotActive()&&(en("pivot mode"),i.exportAsExcelTable=!1),s.gos.get("masterDetail")&&(en("master/detail"),i.exportAsExcelTable=!1)),Kg(t,i),lm(t,i)}function en(e){Ii(163,{featureName:e})}function zg(e){return e.replace(/^[^a-zA-Z_]+/,"_").replace(/\s/g,"_").replace(/[^a-zA-Z0-9_]/g,"_")}function Ug(e,t){if(we.has(e)){Ii(164);return}we.set(e,t)}function Kg(e,t){const{exportAsExcelTable:s,prependContent:i,appendContent:r,colModel:a}=t;if(!s)return;const n=typeof s=="boolean"?{}:s,{name:o,showColumnStripes:l,showRowStripes:c,showFilterButton:d,highlightFirstColumn:h,highlightLastColumn:u}=n,p=zg(o||Bg),g=be.length-1,{table:m}=e,{rows:f,columns:C}=m,v=ou(a),y=i?i.length:0,S=r?r.length:0,b=f.length,w=C.length,F=[],T=[];for(let P=0;P<w;P++){const A=C[P];F.push(A.displayName||""),T.push(d==="match"||d===void 0?A.filterAllowed??!1:d)}if(!F||!F.length||!b||!p){Ii(165);return}Ug(g,{name:`table${we.size+1}`,displayName:p,columns:F,showFilterButtons:T,rowRange:[v+y,v+(b-v)-S],showRowStripes:c??!0,showColumnStripes:l??!1,highlightFirstColumn:h??!1,highlightLastColumn:u??!1})}function Wg(e,t){const s=be.length-1,i=e;i.headerFooterPosition=t,tn({imageToAdd:i,idx:s});let r=ke.get(s);r||(r=[],ke.set(s,r)),r.find(a=>a.id===e.id)||r.push(e)}function jg(e,t,s,i,r){const a=be.length,{row:n,column:o}=e.position||{},l=e;i&&(t!=null&&s!=null&&(!n||!o)&&(e.position||(e.position={}),e.position=Object.assign({},e.position,{row:t,column:i.indexOf(s)+1})),su(l,i),iu(l,r)),tn({imageToAdd:l,idx:a});let c=Lt.get(a);c||(c=new Map,Lt.set(a,c));const d=qe.get(a);d?d.push(l):qe.set(a,[l]),c.get(e.id)||c.set(e.id,{index:c.size,type:e.imageType})}function tn(e){const{imageToAdd:t,idx:s}=e,i=Xe.get(t.id);if(i){const r=i.find(a=>a.sheetId===s);r?r.image.push(t):i.push({sheetId:s,image:[t]})}else Xe.set(t.id,[{sheetId:s,image:[t]}]),dt.set(t.id,{type:t.imageType,index:dt.size})}function $g(e){const t=nu(e.name)||"";let s="";for(;be.indexOf(`${t}${s}`)!==-1;)s===""?s="_1":s=`_${parseInt(s.slice(1),10)+1}`;e.name=`${t}${s}`,be.push(e.name)}function sn(e){return Ye.has(e)?Ye.get(e):(Ye.set(e,Ye.size),Ye.size-1)}function rn(){Ye.clear(),Xe.clear(),qe.clear(),ke.clear(),dt.clear(),Lt.clear(),we.clear(),be=[],Ni="SINGLE_SHEET"}function Yg(e){return ie(tg.getTemplate(be,e))}function Xg(e){return ie(xp.getTemplate(e))}function qg(){return ie(Pu.getTemplate(Ye))}function Zg(e){return ie(pu.getTemplate(e))}function Jg(e){return ie(hu.getTemplate(e))}function Qg(){const e=At.getTemplate([{Id:"rId1",Type:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/officeDocument",Target:"xl/workbook.xml"},{Id:"rId2",Type:"http://schemas.openxmlformats.org/package/2006/relationships/metadata/core-properties",Target:"docProps/core.xml"}]);return ie(e)}function em(){return ie(_p.getTemplate())}function tm(e,t){return ie(Tp.getTemplate(e,t))}function sm(e){const t=new Array(e).fill(void 0).map((i,r)=>({Id:`rId${r+1}`,Type:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/worksheet",Target:`worksheets/sheet${r+1}.xml`})),s=At.getTemplate([...t,{Id:`rId${e+1}`,Type:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/theme",Target:"theme/theme1.xml"},{Id:`rId${e+2}`,Type:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/styles",Target:"styles.xml"},{Id:`rId${e+3}`,Type:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/sharedStrings",Target:"sharedStrings.xml"}]);return ie(s)}function im(e){return ie(wu.getTemplate({sheetIndex:e}))}function rm(e){const t=Lt.get(e)||[],s=[];for(const[i,r]of t){const{index:a,type:n}=r;s.push({Id:`rId${a+1}`,Type:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/image",Target:`../media/image${dt.get(i).index+1}.${ws(n)}`})}return ie(At.getTemplate(s))}function am(e){return ie(Xp.getTemplate({sheetIndex:e}),!0)}function nm(e){const t=ke.get(e)||[],s=[];for(let i=0;i<t.length;i++){const r=t[i],a=dt.get(r.id);if(!a)continue;const{index:n,type:o}=a;s.push({Id:`rId${i+1}`,Type:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/image",Target:`../media/image${n+1}.${ws(o)}`})}return ie(At.getTemplate(s))}function om({drawingIndex:e,vmlDrawingIndex:t,tableName:s}={}){if(e===void 0&&t===void 0&&s===void 0)return"";const i=[];e!=null&&i.push({Id:`rId${i.length+1}`,Type:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/drawing",Target:`../drawings/drawing${e+1}.xml`}),t!=null&&i.push({Id:`rId${i.length+1}`,Type:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/vmlDrawing",Target:`../drawings/vmlDrawing${t+1}.vml`}),s!=null&&i.push({Id:`rId${i.length+1}`,Type:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/table",Target:`../tables/${s}.xml`});const r=At.getTemplate(i);return ie(r)}function lm(e,t){return ie(Ng.getTemplate({worksheet:e,currentSheet:be.length-1,config:t}))}var cm=class extends $h{constructor(e){super(e),this.mixedStyles={},this.mixedStyleCounter=0,this.rows=[],this.frozenRowCount=0,this.skipFrozenRows=!1,this.frozenColumnCount=0,this.skipFrozenColumns=!1,this.config=Object.assign({},e),this.stylesByIds={},this.config.baseExcelStyles.forEach(t=>{this.stylesByIds[t.id]=t}),this.excelStyles=[...this.config.baseExcelStyles,{id:"_quotePrefix",quotePrefix:1}]}addCustomContent(e){e.forEach(t=>{const s=this.rows.length+1;let i;!this.config.suppressRowOutline&&t.outlineLevel!=null&&(i=t.outlineLevel);const r={height:bs(s,t.height||this.config.rowHeight),cells:(t.cells||[]).map((a,n)=>{const o=this.addImage(s,this.columnsToExport[n],a.data?.value);let l=null;a.styleId&&(l=typeof a.styleId=="string"?[a.styleId]:a.styleId);const c=this.getStyleId(l);if(o)return this.createCell(c,this.getDataTypeForValue(o.value),o.value==null?"":o.value);const d=a.data?.value??"",h=this.getDataTypeForValue(d);return a.mergeAcross?this.createMergedCell(c,h,d,a.mergeAcross):this.createCell(c,h,d)}),outlineLevel:i};t.collapsed!=null&&(r.collapsed=t.collapsed),t.hidden!=null&&(r.hidden=t.hidden),this.rows.push(r)})}onNewHeaderGroupingRow(){const e=[],{freezeRows:t,headerRowHeight:s}=this.config;return this.rows.push({cells:e,height:bs(this.rows.length+1,s)}),t&&this.frozenRowCount++,{onColumn:(i,r,a,n,o)=>{const l=this.config.styleLinker({rowType:"HEADER_GROUPING",rowIndex:1,value:`grouping-${r}`,columnGroup:i});e.push({...this.createMergedCell(this.getStyleId(l),this.getDataTypeForValue("string"),r,n),collapsibleRanges:o})}}}onNewHeaderRow(){const{freezeRows:e,headerRowHeight:t}=this.config;return e&&this.frozenRowCount++,this.onNewRow(this.onNewHeaderColumn,t)}onNewBodyRow(e){const{freezeRows:t,rowHeight:s}=this.config;this.skipFrozenRows||(t==="headersAndPinnedRows"&&e?.rowPinned==="top"?this.frozenRowCount++:typeof t=="function"?t(Ri(this.gos,{node:e}))?this.frozenRowCount++:this.skipFrozenRows=!0:this.skipFrozenRows=!0);const i=this.onNewRow(this.onNewBodyColumn,s);return e&&this.addRowOutlineIfNecessary(e),i}prepare(e){super.prepare(e),this.columnsToExport=[...e],this.cols=e.map((t,s)=>this.convertColumnToExcel(t,s))}parse(){const e=this.rows.reduce((r,a)=>Math.max(r,a.cells.length),0);for(;this.cols.length<e;)this.cols.push(this.convertColumnToExcel(null,this.cols.length+1));const{config:t}=this;let s;if(t.sheetName!=null){const{sheetName:r}=t,a=typeof r=="function"?r(Ri(this.gos,{})):r;s=String(a).substring(0,31)}else s="ag-grid";const i={name:s,table:{columns:this.cols,rows:this.rows}};return this.createExcel(i)}addRowOutlineIfNecessary(e){const{gos:t,suppressRowOutline:s,rowGroupExpandState:i="expanded"}=this.config;if(t.get("groupHideOpenParents")||s||e.level==null)return;const a=e.footer?1:0,n=Yh(this.rows),o=Math.min(e.level+a,7);if(n.outlineLevel=o,i==="expanded")return;const l=i==="collapsed";if(e.isExpandable()){const c=!l&&e.expanded;n.collapsed=!c}n.hidden=!!e.parent&&e.parent.level!==-1&&(l||this.isAnyParentCollapsed(e.parent))}isAnyParentCollapsed(e){for(;e&&e.level!==-1;){if(!e.expanded)return!0;e=e.parent}return!1}convertColumnToExcel(e,t){const s=this.config.columnWidth,r=(e?this.extractHeaderValue(e):void 0)??"",a=e?e.isFilterAllowed():!1;return s?typeof s=="number"?{width:s,displayName:r,filterAllowed:a}:{width:s({column:e,index:t}),displayName:r,filterAllowed:a}:e?{width:Math.max(e.getActualWidth(),75),displayName:r,filterAllowed:a}:{displayName:r,filterAllowed:a}}onNewHeaderColumn(e,t){return s=>{const i=this.extractHeaderValue(s),r=this.config.styleLinker({rowType:"HEADER",rowIndex:e,value:i,column:s});t.push(this.createCell(this.getStyleId(r),this.getDataTypeForValue("string"),i))}}onNewBodyColumn(e,t){let s=0;const{freezeColumns:i,rightToLeft:r}=this.config;return(a,n,o)=>{if(s>0){s-=1;return}if(!this.skipFrozenColumns){const g=a.getPinned();i==="pinned"&&g&&(g===!0||g==="left")!==r?this.frozenColumnCount++:typeof i=="function"&&i(Ri(this.gos,{column:a}))?this.frozenColumnCount++:this.skipFrozenColumns=!0}const{value:l,valueFormatted:c}=this.extractRowCellValue(a,n,e,"excel",o),d=this.config.styleLinker({rowType:"BODY",rowIndex:e,value:l,column:a,node:o}),h=this.getStyleId(d),u=a.getColSpan(o),p=this.addImage(e,a,l);p?t.push(this.createCell(h,this.getDataTypeForValue(p.value),p.value==null?"":p.value)):u>1?(s=u-1,t.push(this.createMergedCell(h,this.getDataTypeForValue(l),l,u-1))):t.push(this.createCell(h,this.getDataTypeForValue(l),l,c))}}onNewRow(e,t){const s=[];return this.rows.push({cells:s,height:bs(this.rows.length+1,t)}),{onColumn:e.bind(this,this.rows.length,s)()}}createExcel(e){const{excelStyles:t,config:s}=this;return this.frozenColumnCount&&(s.frozenColumnCount=this.frozenColumnCount),this.frozenRowCount&&(s.frozenRowCount=this.frozenRowCount),Hg(t,e,s)}getDataTypeForValue(e){return e===void 0?"empty":this.isNumerical(e)?"n":"s"}getTypeFromStyle(e,t){if(this.isFormula(t))return"f";if(e&&e.dataType)switch(e.dataType.toLocaleLowerCase()){case"formula":return"f";case"string":return"s";case"number":return"n";case"datetime":return"d";case"error":return"e";case"boolean":return"b";default:qh(162,{id:e.id,dataType:e.dataType})}return null}addImage(e,t,s){if(!this.config.addImageToCell)return;const i=this.config.addImageToCell(e,t,s);if(i)return jg(i.image,e,t,this.columnsToExport,this.config.rowHeight),i}createCell(e,t,s,i){const r=this.getStyleById(e);!r?.dataType&&t==="s"&&i!=null&&(s=i);const a=this.getTypeFromStyle(r,s)||t,{value:n,escaped:o}=this.getCellValue(a,s),l=[];return r&&l.push(e),o&&l.push("_quotePrefix"),e=this.getStyleId(l)||void 0,{styleId:e,data:{type:a,value:n}}}createMergedCell(e,t,s,i){const r=s??"";return{styleId:this.getStyleById(e)?e:void 0,data:{type:t,value:t==="s"?sn(r).toString():s},mergeAcross:i}}getCellValue(e,t){let s=!1;if(t==null||e==="s"&&t==="")return{value:"",escaped:!1};if(e==="s")t&&t[0]==="'"&&(s=!0,t=t.slice(1)),t=sn(t).toString();else if(e==="f")t=t.slice(1);else if(e==="n"){const i=Number(t);isNaN(i)?t="":t!==""&&(t=i.toString())}return{value:t,escaped:s}}getStyleId(e){if(!e||!e.length)return null;if(e.length===1)return e[0];const t=e.join("-");return this.mixedStyles[t]||this.addNewMixedStyle(e),this.mixedStyles[t].excelID}deepCloneObject(e){return JSON.parse(JSON.stringify(e))}addNewMixedStyle(e){this.mixedStyleCounter+=1;const t=`mixedStyle${this.mixedStyleCounter}`,s={};for(const r of e)for(const a of this.excelStyles)a.id===r&&Xh(s,this.deepCloneObject(a));s.id=t;const i=e.join("-");this.mixedStyles[i]={excelID:t,key:i,result:s},this.excelStyles.push(s),this.stylesByIds[t]=s}isFormula(e){return e==null?!1:this.config.autoConvertFormulas&&e.toString().startsWith("=")}isNumerical(e){return typeof e=="bigint"?!0:isFinite(e)&&e!==""&&!isNaN(parseFloat(e))}getStyleById(e){return e==null?null:this.stylesByIds[e]||null}};import{_errMsg as dm}from"ag-grid-community";var hm=async e=>{let t=0;const s=[],i=new WritableStream({write:n=>{s.push(n),t+=n.length}}),r=new ReadableStream({start:n=>{const o=new FileReader;o.onload=l=>{l.target?.result&&n.enqueue(l.target.result),n.close()},o.readAsArrayBuffer(e)}}),a=new window.CompressionStream("deflate-raw");return await r.pipeThrough(a).pipeTo(i),{size:t,content:new Blob(s)}},um=async e=>{const t=new Blob([e]),{size:s,content:i}=await hm(t),r=new Uint8Array(await i.arrayBuffer());return{size:s,content:r}},pm=e=>{let t=e.getHours();return t<<=6,t=t|e.getMinutes(),t<<=5,t=t|e.getSeconds()/2,t},gm=e=>{let t=e.getFullYear()-1980;return t<<=4,t=t|e.getMonth()+1,t<<=5,t=t|e.getDate(),t};function q(e,t){let s="";for(let i=0;i<t;i++)s+=String.fromCharCode(e&255),e>>>=8;return s}var an=e=>{if(!e.length)return 0;let t=-1,s=0,i=0,r=0;for(let a=0;a<e.length;a++)s=e[a],i=(t^s)&255,r=mm[i],t=t>>>8^r;return t^-1},nn=e=>e.length?an(typeof e=="string"?new TextEncoder().encode(e):e):0,mm=new Uint32Array([0,1996959894,3993919788,2567524794,124634137,1886057615,3915621685,2657392035,249268274,2044508324,3772115230,2547177864,162941995,2125561021,3887607047,2428444049,498536548,1789927666,4089016648,2227061214,450548861,1843258603,4107580753,2211677639,325883990,1684777152,4251122042,2321926636,335633487,1661365465,4195302755,2366115317,997073096,1281953886,3579855332,2724688242,1006888145,1258607687,3524101629,2768942443,901097722,1119000684,3686517206,2898065728,853044451,1172266101,3705015759,2882616665,651767980,1373503546,3369554304,3218104598,565507253,1454621731,3485111705,3099436303,671266974,1594198024,3322730930,2970347812,795835527,1483230225,3244367275,3060149565,1994146192,31158534,2563907772,4023717930,1907459465,112637215,2680153253,3904427059,2013776290,251722036,2517215374,3775830040,2137656763,141376813,2439277719,3865271297,1802195444,476864866,2238001368,4066508878,1812370925,453092731,2181625025,4111451223,1706088902,314042704,2344532202,4240017532,1658658271,366619977,2362670323,4224994405,1303535960,984961486,2747007092,3569037538,1256170817,1037604311,2765210733,3554079995,1131014506,879679996,2909243462,3663771856,1141124467,855842277,2852801631,3708648649,1342533948,654459306,3188396048,3373015174,1466479909,544179635,3110523913,3462522015,1591671054,702138776,2966460450,3352799412,1504918807,783551873,3082640443,3233442989,3988292384,2596254646,62317068,1957810842,3939845945,2647816111,81470997,1943803523,3814918930,2489596804,225274430,2053790376,3826175755,2466906013,167816743,2097651377,4027552580,2265490386,503444072,1762050814,4150417245,2154129355,426522225,1852507879,4275313526,2312317920,282753626,1742555852,4189708143,2394877945,397917763,1622183637,3604390888,2714866558,953729732,1340076626,3518719985,2797360999,1068828381,1219638859,3624741850,2936675148,906185462,1090812512,3747672003,2825379669,829329135,1181335161,3412177804,3160834842,628085408,1382605366,3423369109,3138078467,570562233,1426400815,3317316542,2998733608,733239954,1555261956,3268935591,3050360625,752459403,1541320221,2607071920,3965973030,1969922972,40735498,2617837225,3943577151,1913087877,83908371,2512341634,3803740692,2075208622,213261112,2463272603,3855990285,2094854071,198958881,2262029012,4057260610,1759359992,534414190,2176718541,4139329115,1873836001,414664567,2282248934,4279200368,1711684554,285281116,2405801727,4167216745,1634467795,376229701,2685067896,3608007406,1308918612,956543938,2808555105,3495958263,1231636301,1047427035,2932959818,3654703836,1088359270,936918e3,2847714899,3736837829,1202900863,817233897,3183342108,3401237130,1404277552,615818150,3134207493,3453421203,1423857449,601450431,3009837614,3294710456,1567103746,711928724,3020668471,3272380065,1510334235,755167117]);function fm(e){const t=String.fromCharCode;function s(h){const u=[];if(!h)return[];const p=h.length;let g=0,m,f;for(;g<p;)m=h.charCodeAt(g++),m>=55296&&m<=56319&&g<p?(f=h.charCodeAt(g++),(f&64512)==56320?u.push(((m&1023)<<10)+(f&1023)+65536):(u.push(m),g--)):u.push(m);return u}function i(h){if(h>=55296&&h<=57343)throw Error(dm(255,{point:h}))}function r(h,u){return t(h>>u&63|128)}function a(h){if(!(h&4294967168))return t(h);let u="";return h&4294965248?h&4294901760?h&4292870144||(u=t(h>>18&7|240),u+=r(h,12),u+=r(h,6)):(i(h),u=t(h>>12&15|224),u+=r(h,6)):u=t(h>>6&31|192),u+=t(h&63|128),u}const n=s(e),o=n.length;let l=-1,c,d="";for(;++l<o;)c=n[l],d+=a(c);return d}var on=(e,t,s,i,r,a)=>{const{content:n,path:o,created:l}=e,c=pm(l),d=gm(l),h=nn(r),u=a!==void 0?a:i,p=fm(o),g=p!==o;let m="";if(g){const y=q(1,1)+q(nn(p),4)+p;m="up"+q(y.length,2)+y}const f="\0"+(g?"\0\b":"\0\0")+q(t?8:0,2)+q(c,2)+q(d,2)+q(u?h:0,4)+q(a??i,4)+q(i,4)+q(p.length,2)+q(m.length,2),C="PK"+f+p+m,v="PK\0"+f+"\0\0\0\0\0\0"+(n?"\0\0\0\0":"\0\0\0")+q(s,4)+p+m;return{localFileHeader:Uint8Array.from(C,y=>y.charCodeAt(0)),centralDirectoryHeader:Uint8Array.from(v,y=>y.charCodeAt(0))}},ln=e=>{let t;if(typeof e=="string"){const s=atob(e.split(";base64,")[1]);t=Uint8Array.from(s,i=>i.charCodeAt(0))}else t=e;return{size:t.length,content:t}},Cm=async(e,t)=>{const{content:s}=e,{size:i,content:r}=s?ln(s):{size:0,content:Uint8Array.from([])};let a,n,o=!1;if(e.type==="file"&&r&&i>0){const d=await um(r);a=d.content,n=d.size,o=!0}return{...on(e,o,t,i,r,n),content:a||r,isCompressed:o}},vm=(e,t)=>{const{content:s}=e,{content:i}=s?ln(s):{content:Uint8Array.from([])};return{...on(e,!1,t,i.length,i,void 0),content:i,isCompressed:!1}},ym=(e,t,s)=>{const i="PK\0\0\0\0"+q(e,2)+q(e,2)+q(t,4)+q(s,4)+"\0\0";return Uint8Array.from(i,r=>r.charCodeAt(0))},cn=class{constructor(){this.folders=[],this.files=[]}addFolders(e){e.forEach(this.addFolder.bind(this))}addFolder(e){this.folders.push({path:e,created:new Date,isBase64:!1,type:"folder"})}addFile(e,t,s=!1){this.files.push({path:e,created:new Date,content:s?t:new TextEncoder().encode(t),isBase64:s,type:"file"})}async getZipFile(e="application/zip"){const t=await this.buildCompressedFileStream();return this.clearStream(),new Blob([t],{type:e})}getUncompressedZipFile(e="application/zip"){const t=this.buildFileStream();return this.clearStream(),new Blob([t],{type:e})}clearStream(){this.folders=[],this.files=[]}packageFiles(e){let t=0,s=0;for(const c of e){const{localFileHeader:d,centralDirectoryHeader:h,content:u}=c;t+=d.length+u.length,s+=h.length}const i=new Uint8Array(t),r=new Uint8Array(s);let a=0,n=0;for(const c of e){const{localFileHeader:d,centralDirectoryHeader:h,content:u}=c;i.set(d,a),a+=d.length,i.set(u,a),a+=u.length,r.set(h,n),n+=h.length}const o=ym(e.length,s,t),l=new Uint8Array(i.length+r.length+o.length);return l.set(i),l.set(r,i.length),l.set(o,i.length+r.length),l}async buildCompressedFileStream(){const e=[...this.folders,...this.files],t=[];let s=0;for(const i of e){const r=await Cm(i,s),{localFileHeader:a,content:n}=r;t.push(r),s+=a.length+n.length}return this.packageFiles(t)}buildFileStream(){const e=[...this.folders,...this.files],t=[];let s=0;for(const i of e){const r=vm(i,s),{localFileHeader:a,content:n}=r;t.push(r),s+=a.length+n.length}return this.packageFiles(t)}},Sm=e=>{if(e.addFolders(["_rels/","docProps/","xl/","xl/theme/","xl/_rels/","xl/worksheets/"]),!Xe.size)return;e.addFolders(["xl/worksheets/_rels","xl/drawings/","xl/drawings/_rels","xl/media/"]);let t=0;Xe.forEach(s=>{const i=s[0].image[0],{base64:r,imageType:a}=i;e.addFile(`xl/media/image${++t}.${ws(a)}`,r,!0)})},bm=(e,t)=>{let s=0,i=0;for(let r=0;r<t.length;r++){const a=t[r];e.addFile(`xl/worksheets/sheet${r+1}.xml`,a,!1);const n=Xe.size>0&&qe.has(r),o=we.size>0&&we.get(r),l=Xe.size&&ke.has(r);if(!n&&!o&&!l)continue;let c,d,h;n&&(wm(e,r,s),d=s,s++),l&&(xm(e,r,i),h=i,i++),o&&(c=o.name);const u=`xl/worksheets/_rels/sheet${r+1}.xml.rels`;e.addFile(u,om({tableName:c,drawingIndex:d,vmlDrawingIndex:h}))}},wm=(e,t,s)=>{const i="xl/drawings",r=`${i}/drawing${s+1}.xml`,a=`${i}/_rels/drawing${s+1}.xml.rels`;e.addFile(a,rm(t)),e.addFile(r,im(t))},xm=(e,t,s)=>{const i="xl/drawings",r=`${i}/vmlDrawing${s+1}.vml`,a=`${i}/_rels/vmlDrawing${s+1}.vml.rels`;e.addFile(r,am(t)),e.addFile(a,nm(t))},Mm=e=>{const t=we,s=Array.from(t.keys());for(let i=0;i<s.length;i++){const r=s[i],a=t.get(r);a&&e.addFile(`xl/tables/${a.name}.xml`,tm(a,i))}},Tm=(e,t,s,i,r)=>{e.addFile("xl/workbook.xml",Yg(r)),e.addFile("xl/styles.xml",Xg(t)),e.addFile("xl/sharedStrings.xml",qg()),e.addFile("xl/theme/theme1.xml",em()),e.addFile("xl/_rels/workbook.xml.rels",sm(i)),e.addFile("docProps/core.xml",Zg(s)),e.addFile("[Content_Types].xml",Jg(i)),e.addFile("_rels/.rels",Qg())},dn=(e,t,s={})=>{if(!t||t.length===0)return Va(159),rn(),!1;const{fontSize:i=11,author:r="AG Grid",activeTab:a=0}=s,n=t.length,o=Math.max(Math.min(a,n-1),0);return Sm(e),Mm(e),bm(e,t),Tm(e,i,r,n,o),rn(),!0},hn=e=>{const{data:t,fontSize:s,author:i,activeSheetIndex:r}=e,a=e.mimeType||"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",n=new cn;return dn(n,t,{author:i,fontSize:s,activeTab:r})?n.getZipFile(a):Promise.resolve(void 0)},Bi=e=>{const{data:t,fontSize:s,author:i,activeSheetIndex:r}=e,a=e.mimeType||"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",n=new cn;if(dn(n,t,{author:i,fontSize:s,activeTab:r}))return n.getUncompressedZipFile(a)},un=e=>{const{fileName:t="export.xlsx"}=e;hn(e).then(s=>{if(s){const i=typeof t=="function"?t():t;_a(i,s)}})},Fm=class extends Wh{constructor(){super(...arguments),this.beanName="excelCreator"}getMergedParams(e){const t=this.gos.get("defaultExcelExportParams");return Object.assign({},t,e)}export(e){if(this.isExportSuppressed()){Va(160);return}const t=this.getMergedParams(e),i={data:[this.getData(t)],fontSize:t.fontSize,author:t.author,mimeType:t.mimeType};this.packageCompressedFile(i).then(r=>{if(r){const{fileName:a}=t,n=typeof a=="function"?a(Ba(this.gos,{})):a;_a(this.getFileName(n),r)}})}exportDataAsExcel(e){this.export(e)}getDataAsExcel(e){const t=this.getMergedParams(e),i={data:[this.getData(t)],fontSize:t.fontSize,author:t.author,mimeType:t.mimeType};return this.packageFile(i)}setFactoryMode(e){Vg(e)}getFactoryMode(){return _g()}getSheetDataForExcel(e){const t=this.getMergedParams(e);return this.getData(t)}getMultipleSheetsAsExcel(e){return Bi(e)}exportMultipleSheetsAsExcel(e){un(e)}getDefaultFileExtension(){return"xlsx"}createSerializingSession(e){const{colModel:t,colNames:s,rowGroupColsSvc:i,valueSvc:r,gos:a}=this.beans,n={...e,colModel:t,colNames:s,rowGroupColsSvc:i,valueSvc:r,gos:a,suppressRowOutline:e.suppressRowOutline||e.skipRowGroups,headerRowHeight:e.headerRowHeight||e.rowHeight,baseExcelStyles:a.get("excelStyles")||[],rightToLeft:e.rightToLeft??a.get("enableRtl"),styleLinker:this.styleLinker.bind(this)};return new cm(n)}styleLinker(e){const{rowType:t,rowIndex:s,value:i,column:r,columnGroup:a,node:n}=e,o=t==="HEADER",l=t==="HEADER_GROUPING",c=o?r:a;let d=[];const{gos:h,cellStyles:u}=this.beans;if(o||l)return d.push("header"),l&&d.push("headerGroup"),c&&(d=d.concat(jh(c.getDefinition(),h,r||null,a||null))),d;const p=h.get("excelStyles"),g=["cell"];if(!p||!p.length)return g;const m=p.map(C=>C.id),f=r.getDefinition();return u?.processAllCellClasses(f,Ba(h,{value:i,data:n.data,node:n,colDef:f,column:r,rowIndex:s}),C=>{m.indexOf(C)>-1&&g.push(C)}),g.sort((C,v)=>m.indexOf(C)<m.indexOf(v)?-1:1)}isExportSuppressed(){return this.gos.get("suppressExcelExport")}packageCompressedFile(e){return hn(e)}packageFile(e){return Bi(e)}};import{_FilterCoreModule as Pm,_FilterValueModule as Am,_PopupModule as Rm,_SharedDragAndDropModule as Em}from"ag-grid-community";var E="33.2.2",O={moduleName:"EnterpriseCore",version:E,beans:[Na],icons:{accordionOpen:"tree-open",accordionClosed:"tree-closed",accordionIndeterminate:"tree-indeterminate",close:"cross",cancel:"cancel",maximize:"maximize",minimize:"minimize",columnDrag:"grip"},dependsOn:[]},Im='.ag-advanced-filter-header{align-items:center;background-color:var(--ag-header-background-color);border-bottom:var(--ag-header-row-border);display:flex;padding-left:var(--ag-cell-horizontal-padding);padding-right:var(--ag-cell-horizontal-padding);position:relative}.ag-advanced-filter{align-items:center;display:flex;width:100%}.ag-advanced-filter-apply-button,.ag-advanced-filter-builder-button{line-height:normal;white-space:nowrap}:where(.ag-ltr) .ag-advanced-filter-apply-button,:where(.ag-ltr) .ag-advanced-filter-builder-button{margin-left:calc(var(--ag-spacing)*2)}:where(.ag-rtl) .ag-advanced-filter-apply-button,:where(.ag-rtl) .ag-advanced-filter-builder-button{margin-right:calc(var(--ag-spacing)*2)}.ag-advanced-filter-builder-button{align-items:center;background-color:unset;border:0;display:flex;font-size:var(--ag-font-size);font-weight:600;padding:var(--ag-spacing);&:where(:not(:disabled)){cursor:pointer;&:hover{background-color:var(--ag-row-hover-color)}}}:where(.ag-ltr) .ag-advanced-filter-builder-button-label{margin-left:var(--ag-spacing)}:where(.ag-rtl) .ag-advanced-filter-builder-button-label{margin-right:var(--ag-spacing)}.ag-advanced-filter-builder{display:flex;flex-direction:column;-webkit-user-select:none;-moz-user-select:none;user-select:none;width:100%}.ag-advanced-filter-builder-list{flex:1;overflow:auto}.ag-advanced-filter-builder-button-panel{border-top:var(--ag-advanced-filter-builder-button-bar-border);display:flex;justify-content:flex-end;padding:var(--ag-widget-container-vertical-padding) var(--ag-widget-container-horizontal-padding)}:where(.ag-ltr) .ag-advanced-filter-builder-apply-button,:where(.ag-ltr) .ag-advanced-filter-builder-cancel-button{margin-left:calc(var(--ag-spacing)*2)}:where(.ag-rtl) .ag-advanced-filter-builder-apply-button,:where(.ag-rtl) .ag-advanced-filter-builder-cancel-button{margin-right:calc(var(--ag-spacing)*2)}.ag-advanced-filter-builder-item-wrapper{align-items:center;display:flex;flex:1 1 auto;justify-content:space-between;overflow:hidden}:where(.ag-ltr) .ag-advanced-filter-builder-item-wrapper{padding-left:calc(var(--ag-icon-size)/2);padding-right:var(--ag-icon-size)}:where(.ag-rtl) .ag-advanced-filter-builder-item-wrapper{padding-left:var(--ag-icon-size);padding-right:calc(var(--ag-icon-size)/2)}:where(.ag-virtual-list-viewport .ag-advanced-filter-builder-item-wrapper) .ag-tab-guard{position:absolute}.ag-advanced-filter-builder-item-tree-lines>*{width:var(--ag-advanced-filter-builder-indent-size)}.ag-advanced-filter-builder-item-tree-line-root{width:var(--ag-icon-size);&:before{height:50%;top:50%}}.ag-advanced-filter-builder-item-tree-line-horizontal,.ag-advanced-filter-builder-item-tree-line-vertical,.ag-advanced-filter-builder-item-tree-line-vertical-bottom,.ag-advanced-filter-builder-item-tree-line-vertical-top{align-items:center;display:flex;height:100%;position:relative;&:after,&:before{content:"";height:100%;position:absolute}}.ag-advanced-filter-builder-item-tree-line-horizontal:after{border-bottom:1px solid var(--ag-border-color);height:50%;top:0;width:calc(var(--ag-advanced-filter-builder-indent-size) - var(--ag-icon-size))}:where(.ag-ltr) .ag-advanced-filter-builder-item-tree-line-horizontal:after{left:calc(var(--ag-icon-size)/2)}:where(.ag-rtl) .ag-advanced-filter-builder-item-tree-line-horizontal:after{right:calc(var(--ag-icon-size)/2)}.ag-advanced-filter-builder-item-tree-line-vertical:before{top:0;width:calc(var(--ag-advanced-filter-builder-indent-size) - var(--ag-icon-size)/2)}:where(.ag-ltr) .ag-advanced-filter-builder-item-tree-line-vertical:before{border-left:1px solid var(--ag-border-color);left:calc(var(--ag-icon-size)/2)}:where(.ag-rtl) .ag-advanced-filter-builder-item-tree-line-vertical:before{border-right:1px solid var(--ag-border-color);right:calc(var(--ag-icon-size)/2)}.ag-advanced-filter-builder-item-tree-line-vertical-top:before{height:50%;top:0;width:calc(var(--ag-advanced-filter-builder-indent-size) - var(--ag-icon-size)/2)}:where(.ag-ltr) .ag-advanced-filter-builder-item-tree-line-vertical-top:before{border-left:1px solid var(--ag-border-color);left:calc(var(--ag-icon-size)/2)}:where(.ag-rtl) .ag-advanced-filter-builder-item-tree-line-vertical-top:before{border-right:1px solid var(--ag-border-color);right:calc(var(--ag-icon-size)/2)}.ag-advanced-filter-builder-item-tree-line-vertical-bottom:before{height:calc(50% - var(--ag-icon-size)*1.5/2);top:calc(50% + var(--ag-icon-size)*1.5/2);width:calc(var(--ag-icon-size)/2)}:where(.ag-ltr) .ag-advanced-filter-builder-item-tree-line-vertical-bottom:before{border-left:1px solid var(--ag-border-color);left:calc(var(--ag-icon-size)/2)}:where(.ag-rtl) .ag-advanced-filter-builder-item-tree-line-vertical-bottom:before{border-right:1px solid var(--ag-border-color);right:calc(var(--ag-icon-size)/2)}.ag-advanced-filter-builder-item-condition{padding-bottom:var(--ag-spacing);padding-top:var(--ag-spacing)}.ag-advanced-filter-builder-item,.ag-advanced-filter-builder-item-buttons,.ag-advanced-filter-builder-item-condition,.ag-advanced-filter-builder-item-tree-lines,.ag-advanced-filter-builder-pill,.ag-advanced-filter-builder-pill-wrapper{align-items:center;display:flex;height:100%}.ag-advanced-filter-builder-pill-wrapper{margin:0 var(--ag-spacing)}.ag-advanced-filter-builder-pill{border-radius:var(--ag-border-radius);min-height:calc(100% - var(--ag-spacing)*3);min-width:calc(var(--ag-spacing)*2);padding:var(--ag-spacing) calc(var(--ag-spacing)*2);position:relative}:where(.ag-advanced-filter-builder-pill){.ag-advanced-filter-builder-value-number{font-family:monospace;font-weight:700}.ag-advanced-filter-builder-value-empty{color:var(--ag-subtle-text-color)}}:where(.ag-ltr) :where(.ag-advanced-filter-builder-pill){.ag-picker-field-display{margin-right:var(--ag-spacing)}}:where(.ag-rtl) :where(.ag-advanced-filter-builder-pill){.ag-picker-field-display{margin-left:var(--ag-spacing)}}.ag-advanced-filter-builder-pill-display{font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ag-advanced-filter-builder-join-pill{background-color:var(--ag-advanced-filter-builder-join-pill-color);cursor:pointer}.ag-advanced-filter-builder-column-pill{background-color:var(--ag-advanced-filter-builder-column-pill-color);cursor:pointer}.ag-advanced-filter-builder-option-pill{background-color:var(--ag-advanced-filter-builder-option-pill-color);cursor:pointer}.ag-advanced-filter-builder-value-pill{background-color:var(--ag-advanced-filter-builder-value-pill-color);cursor:text;max-width:140px;:where(.ag-advanced-filter-builder-pill-display){display:block}}.ag-advanced-filter-builder-item-buttons>*{margin:0 calc(var(--ag-spacing)*.5)}.ag-advanced-filter-builder-item-button{color:var(--ag-subtle-text-color);cursor:pointer;position:relative}.ag-advanced-filter-builder-item-button,.ag-advanced-filter-builder-pill{&:focus-visible{box-shadow:var(--ag-focus-shadow)}}.ag-advanced-filter-builder-item-button-disabled{cursor:default;opacity:.5}.ag-advanced-filter-builder-virtual-list-container{top:var(--ag-spacing)}.ag-advanced-filter-builder-virtual-list-item{cursor:default;display:flex;height:var(--ag-list-item-height);&:hover{background-color:var(--ag-row-hover-color);:where(.ag-advanced-filter-builder-item-button){opacity:1}}}.ag-advanced-filter-builder-invalid{color:var(--ag-invalid-color);cursor:default;margin:0 var(--ag-spacing)}:where(.ag-advanced-filter-builder-validation) .ag-advanced-filter-builder-invalid,:where(.ag-advanced-filter-builder-virtual-list-item-highlight) .ag-advanced-filter-builder-item-button:focus-visible{opacity:1}';function Dm(e){return e.filterManager?.getAdvFilterModel()??null}function Lm(e,t){e.filterManager?.setAdvFilterModel(t)}function km(e){e.filterManager?.toggleAdvFilterBuilder(!0,"api")}function Gm(e){e.filterManager?.toggleAdvFilterBuilder(!1,"api")}import{BeanStub as Om,_exists as Nm,_parseDateTimeFromString as pn,_serialiseDate as gn,_toStringOrNull as _i}from"ag-grid-community";var Bm={ariaAdvancedFilterBuilderItem:e=>`${e[0]}. Level ${e[1]}. Press ENTER to edit`,ariaAdvancedFilterBuilderItemValidation:e=>`${e[0]}. Level ${e[1]}. ${e[2]} Press ENTER to edit`,ariaAdvancedFilterBuilderList:"Advanced Filter Builder List",ariaAdvancedFilterBuilderFilterItem:"Filter Condition",ariaAdvancedFilterBuilderGroupItem:"Filter Group",ariaAdvancedFilterBuilderColumn:"Column",ariaAdvancedFilterBuilderOption:"Option",ariaAdvancedFilterBuilderValue:"Value",ariaAdvancedFilterBuilderJoinOperator:"Join Operator",ariaAdvancedFilterInput:"Advanced Filter Input",ariaLabelAdvancedFilterAutocomplete:"Advanced Filter Autocomplete",advancedFilterContains:"contains",advancedFilterNotContains:"does not contain",advancedFilterTextEquals:"equals",advancedFilterTextNotEqual:"does not equal",advancedFilterStartsWith:"begins with",advancedFilterEndsWith:"ends with",advancedFilterBlank:"is blank",advancedFilterNotBlank:"is not blank",advancedFilterEquals:"=",advancedFilterNotEqual:"!=",advancedFilterGreaterThan:">",advancedFilterGreaterThanOrEqual:">=",advancedFilterLessThan:"<",advancedFilterLessThanOrEqual:"<=",advancedFilterTrue:"is true",advancedFilterFalse:"is false",advancedFilterAnd:"AND",advancedFilterOr:"OR",advancedFilterApply:"Apply",advancedFilterBuilder:"Builder",advancedFilterValidationMissingColumn:"Column is missing",advancedFilterValidationMissingOption:"Option is missing",advancedFilterValidationMissingValue:"Value is missing",advancedFilterValidationInvalidColumn:"Column not found",advancedFilterValidationInvalidOption:"Option not found",advancedFilterValidationMissingQuote:"Value is missing an end quote",advancedFilterValidationNotANumber:"Value is not a number",advancedFilterValidationInvalidDate:"Value is not a valid date",advancedFilterValidationMissingCondition:"Condition is missing",advancedFilterValidationJoinOperatorMismatch:"Join operators within a condition must be the same",advancedFilterValidationInvalidJoinOperator:"Join operator not found",advancedFilterValidationMissingEndBracket:"Missing end bracket",advancedFilterValidationExtraEndBracket:"Too many end brackets",advancedFilterValidationMessage:e=>`Expression has an error. ${e[0]} - ${e[1]}.`,advancedFilterValidationMessageAtEnd:e=>`Expression has an error. ${e[0]} at end of expression.`,advancedFilterBuilderTitle:"Advanced Filter",advancedFilterBuilderApply:"Apply",advancedFilterBuilderCancel:"Cancel",advancedFilterBuilderAddButtonTooltip:"Add Filter or Group",advancedFilterBuilderRemoveButtonTooltip:"Remove",advancedFilterBuilderMoveUpButtonTooltip:"Move Up",advancedFilterBuilderMoveDownButtonTooltip:"Move Down",advancedFilterBuilderAddJoin:"Add Group",advancedFilterBuilderAddCondition:"Add Filter",advancedFilterBuilderSelectColumn:"Select a column",advancedFilterBuilderSelectOption:"Select an option",advancedFilterBuilderEnterValue:"Enter a value...",advancedFilterBuilderValidationAlreadyApplied:"Current filter already applied.",advancedFilterBuilderValidationIncomplete:"Not all conditions are complete.",advancedFilterBuilderValidationSelectColumn:"Must select a column.",advancedFilterBuilderValidationSelectOption:"Must select an option.",advancedFilterBuilderValidationEnterValue:"Must enter a value."};function Vi(e,t,s){if(!e)return"";const i=s-t;return i?e.slice(0,e.length-i):e}function Ge(e,t,s,i,r,a,n){const o=s+(!e.length||n?0:1);let l=0;return r&&(e[o]===" "?l=1:(i+=" ",a&&(i+='"'))),{updatedValue:e.slice(0,t)+i+e.slice(o),updatedPosition:t+i.length+l}}function _m(e,t,s){let i=t;for(;i<s&&e[i]===" ";)i++;return i}function Hi(e,t,s,i){let r=t,a=!1;for(;r<e.length;){const n=e[r];if(n==="("){i&&e[r-1]===" "?a=!0:r=r-1;break}else if(n===" "||s&&n===")"){r=r-1;break}r++}return{endPosition:r,isEmpty:a}}function zi(e,t,s,i){s!==t&&(e.expression=Ge(e.expression,i-t.length+1,i,s).updatedValue)}function Vm(e){return e.replace(/(['"])/,"\\$1")}var Hm=class{constructor(e,t){this.params=e,this.startPosition=t,this.type="column",this.valid=!0,this.hasStartChar=!1,this.hasEndChar=!1,this.colName=""}parse(e,t){if(e===Ui&&!this.colName)this.hasStartChar=!0;else if(e===Ki&&this.hasStartChar){if(this.parseColumn(!1,t))return this.hasEndChar=!0,!1;this.colName+=e}else this.colName+=e}getDisplayValue(){return(this.hasStartChar?Ui:"")+this.colName+(this.hasEndChar?Ki:"")}getColId(){return this.colId}complete(e){this.parseColumn(!0,e)}getValidationError(){return this.valid?null:{message:this.params.advFilterExpSvc.translate("advancedFilterValidationInvalidColumn"),startPosition:this.startPosition,endPosition:this.endPosition??this.params.expression.length-1}}parseColumn(e,t){this.endPosition=t;const s=this.params.advFilterExpSvc.getColId(this.colName);return s&&this.hasStartChar&&(this.colId=s.colId,zi(this.params,this.colName,s.columnName,t-1),this.colName=s.columnName,this.column=this.params.colModel.getColDefCol(this.colId),this.column)?(this.baseCellDataType=this.params.dataTypeSvc?.getBaseDataType(this.column)??"text",!0):(e&&(this.valid=!1),this.baseCellDataType="text",!1)}},zm=class{constructor(e,t,s){this.params=e,this.startPosition=t,this.baseCellDataType=s,this.type="operator",this.valid=!0,this.expectedNumOperands=0,this.operator=""}parse(e,t){if(e===" "||e===")"){if(this.parseOperator(!1,t-1))return!0;this.operator+=e}else this.operator+=e}complete(e){this.parseOperator(!0,e)}getValidationError(){return this.valid?null:{message:this.params.advFilterExpSvc.translate("advancedFilterValidationInvalidOption"),startPosition:this.startPosition,endPosition:this.endPosition??this.params.expression.length-1}}getDisplayValue(){return this.operator}getOperatorKey(){return this.parsedOperator}parseOperator(e,t){const s=this.params.advFilterExpSvc.getDataTypeExpressionOperator(this.baseCellDataType),i=s.findOperator(this.operator);if(this.endPosition=t,i){this.parsedOperator=i;const a=s.operators[i];this.expectedNumOperands=a.numOperands;const n=a.displayValue;return zi(this.params,this.operator,n,t),this.operator=n,!0}return(e||!(i===null))&&(this.valid=!1),!1}},Um=class{constructor(e,t,s,i){this.params=e,this.startPosition=t,this.baseCellDataType=s,this.column=i,this.type="operand",this.valid=!0,this.operand="",this.validationMessage=null}parse(e,t){if(e===" ")if(this.quotes)this.operand+=e;else return this.parseOperand(!1,t),!0;else if(e===")"){if(this.baseCellDataType==="number"||!this.quotes)return this.parseOperand(!1,t-1),!0;this.operand+=e}else if(!this.operand&&!this.quotes&&(e==="'"||e==='"'))this.quotes=e;else{if(this.quotes&&e===this.quotes)return this.parseOperand(!1,t),!1;this.operand+=e}}complete(e){this.parseOperand(!0,e)}getValidationError(){return this.validationMessage?{message:this.validationMessage,startPosition:this.startPosition,endPosition:this.endPosition??this.params.expression.length-1}:null}getRawValue(){return this.operand}getModelValue(){return this.modelValue}parseOperand(e,t){const{advFilterExpSvc:s}=this.params;if(this.endPosition=t,this.modelValue=this.operand,e&&this.quotes)this.valid=!1,this.validationMessage=s.translate("advancedFilterValidationMissingQuote");else if(this.modelValue==="")this.valid=!1,this.validationMessage=s.translate("advancedFilterValidationMissingValue");else{const i=s.getOperandModelValue(this.operand,this.baseCellDataType,this.column);switch(i!=null&&(this.modelValue=i),this.baseCellDataType){case"number":(this.quotes||isNaN(this.modelValue))&&(this.valid=!1,this.validationMessage=s.translate("advancedFilterValidationNotANumber"));break;case"date":case"dateString":i==null&&(this.valid=!1,this.validationMessage=s.translate("advancedFilterValidationInvalidDate"));break}}}},Ui="[",Ki="]",Km=class{constructor(e,t){this.params=e,this.startPosition=t,this.isAwaiting=!0}parseExpression(){let e=this.startPosition;const{expression:t}=this.params;for(;e<t.length;){const s=t[e];if(!(s===" "&&this.isAwaiting)){if(this.isAwaiting=!1,!this.parser){let r;this.columnParser?this.operatorParser?(this.operandParser=new Um(this.params,e,this.columnParser.baseCellDataType,this.columnParser.column),r=this.operandParser):(this.operatorParser=new zm(this.params,e,this.columnParser.baseCellDataType),r=this.operatorParser):(this.columnParser=new Hm(this.params,e),r=this.columnParser),this.parser=r}const i=this.parser.parse(s,e);if(i!=null){if(this.isComplete())return this.returnEndPosition(i?e-1:e,!0);this.parser=void 0,this.isAwaiting=!0}}e++}return this.parser?.complete?.(e-1),this.returnEndPosition(e)}isValid(){return this.isComplete()&&this.columnParser.valid&&this.operatorParser.valid&&(!this.operandParser||this.operandParser.valid)}getValidationError(){const e=this.columnParser?.getValidationError()??this.operatorParser?.getValidationError()??this.operandParser?.getValidationError();if(e)return e;const t=this.params.expression.length;let s;return this.columnParser?this.operatorParser?this.operatorParser.expectedNumOperands&&!this.operandParser&&(s="advancedFilterValidationMissingValue"):s="advancedFilterValidationMissingOption":s="advancedFilterValidationMissingColumn",s?{message:this.params.advFilterExpSvc.translate(s),startPosition:t,endPosition:t}:null}getFunctionString(e){return this.getFunctionCommon(e,(t,s,i,r)=>{const a=Vm(i),n=t==null?"":`, params.operands[${t}]`;return`params.operators[${s}].evaluator(expressionProxy.getValue('${a}', node), node, params.evaluatorParams[${r}]${n})`})}getFunctionParsed(e){return this.getFunctionCommon(e,(t,s,i,r)=>(a,n,o)=>o.operators[s].evaluator(a.getValue(i,n),n,o.evaluatorParams[r],t==null?void 0:o.operands[t]))}getAutocompleteListParams(e){if(this.isColumnPosition(e))return this.getColumnAutocompleteListParams(e);if(this.isOperatorPosition(e))return this.getOperatorAutocompleteListParams(e);if(!this.isBeyondEndPosition(e))return{enabled:!1}}updateExpression(e,t,s){const{expression:i}=this.params;if(this.isColumnPosition(e))return Ge(this.params.expression,this.startPosition,this.columnParser?.getColId()?this.columnParser.endPosition:Hi(i,e).endPosition,this.params.advFilterExpSvc.getColumnValue(t),!0);if(this.isOperatorPosition(e)){const r=this.getBaseCellDataTypeFromOperatorAutocompleteType(s),a=this.hasOperand(r,t.key),n=a&&this.doesOperandNeedQuotes(r);let o;if(this.operatorParser?.startPosition!=null&&e<this.operatorParser.startPosition)o=Ge(i,e,e,t.displayValue??t.key,a,n);else{let l,c=!1;if(this.operatorParser?.getOperatorKey())l=this.operatorParser.endPosition;else{const{endPosition:d,isEmpty:h}=Hi(i,e,!0,!0);l=d,c=h}o=Ge(i,_m(i,this.columnParser.endPosition+1,l),l,t.displayValue??t.key,a,n,c)}return{...o,hideAutocomplete:!a}}return null}getModel(){const e=this.columnParser.getColId(),t={filterType:this.columnParser.baseCellDataType,colId:e,type:this.operatorParser.getOperatorKey()};return this.operatorParser.expectedNumOperands&&(t.filter=this.operandParser.getModelValue()),t}getFunctionCommon(e,t){const s=this.columnParser.getColId(),i=this.operatorParser?.getOperatorKey(),{operators:r,evaluatorParams:a,operands:n}=e,o=this.params.advFilterExpSvc.getExpressionOperator(this.columnParser.baseCellDataType,i),l=this.addToListAndGetIndex(r,o),c=this.params.advFilterExpSvc.getExpressionEvaluatorParams(s),d=this.addToListAndGetIndex(a,c),h=this.operatorParser?.expectedNumOperands===0?void 0:this.addToListAndGetIndex(n,this.getOperandValue());return t(h,l,s,d)}getOperandValue(){let e=this.operandParser.getRawValue();const{baseCellDataType:t,column:s}=this.columnParser;switch(t){case"number":e=Number(e);break;case"date":case"dateString":e=this.params.valueSvc.parseValue(s,null,e,void 0);break}if(t==="dateString"){const{dataTypeSvc:i}=this.params;return i?i.getDateParserFunction(s)(e):e}return e}isComplete(){return!!(this.operatorParser&&(!this.operatorParser.expectedNumOperands||this.operatorParser.expectedNumOperands&&this.operandParser))}isColumnPosition(e){return!this.columnParser||this.columnParser.endPosition==null||e<=this.columnParser.endPosition+1}isOperatorPosition(e){return!this.operatorParser||this.operatorParser.endPosition==null||e<=this.operatorParser.endPosition+1}isBeyondEndPosition(e){return this.isComplete()&&this.endPosition!=null&&e>this.endPosition+1&&this.endPosition+1<this.params.expression.length}returnEndPosition(e,t){return this.endPosition=t?e:e-1,e}getColumnAutocompleteListParams(e){return this.params.advFilterExpSvc.generateAutocompleteListParams(this.params.advFilterExpSvc.getColumnAutocompleteEntries(),"column",this.getColumnSearchString(e))}getColumnSearchString(e){const t=this.columnParser?.getDisplayValue()??"",s=Vi(t,e,this.columnParser?.endPosition==null?this.params.expression.length:this.columnParser.endPosition+1),i=this.columnParser?.hasStartChar&&s.length>0,r=this.columnParser?.hasEndChar&&s.length===t.length+2;return i?s.slice(1,r?-1:void 0):s}getOperatorAutocompleteListParams(e){const t=this.columnParser?.column;if(!t)return{enabled:!1};const s=this.columnParser.baseCellDataType,i=this.operatorParser?.startPosition!=null&&e<this.operatorParser.startPosition?"":Vi(this.operatorParser?.getDisplayValue()??"",e,this.operatorParser?.endPosition==null?this.params.expression.length:this.operatorParser.endPosition+1);return this.params.advFilterExpSvc.generateAutocompleteListParams(this.params.advFilterExpSvc.getOperatorAutocompleteEntries(t,s),`operator-${s}`,i)}getBaseCellDataTypeFromOperatorAutocompleteType(e){return e?.replace("operator-","")}hasOperand(e,t){return!e||!t||(this.params.advFilterExpSvc.getExpressionOperator(e,t)?.numOperands??0)>0}doesOperandNeedQuotes(e){return e!=="number"}addToListAndGetIndex(e,t){const s=e.length;return e.push(t),s}};function Ps(e,t,s){let i=!1;const r=e.toLocaleLowerCase(),a=r+" ",n=Object.keys(t).find(o=>{const l=t[o],c=s(l).toLocaleLowerCase();return c.startsWith(a)&&(i=!0),c===r});return n||(i?null:void 0)}function Wi(e,t){return(t??Object.keys(e)).map(i=>({key:i,displayValue:e[i].displayValue}))}var mn=class{constructor(e){this.params=e,this.initOperators()}getEntries(e){return Wi(this.operators,e)}findOperator(e){return Ps(e,this.operators,({displayValue:t})=>t)}initOperators(){const{translate:e}=this.params;this.operators={contains:{displayValue:e("advancedFilterContains"),evaluator:(t,s,i,r)=>this.evaluateExpression(t,s,i,r,!1,(a,n)=>a.includes(n)),numOperands:1},notContains:{displayValue:e("advancedFilterNotContains"),evaluator:(t,s,i,r)=>this.evaluateExpression(t,s,i,r,!0,(a,n)=>!a.includes(n)),numOperands:1},equals:{displayValue:e("advancedFilterTextEquals"),evaluator:(t,s,i,r)=>this.evaluateExpression(t,s,i,r,!1,(a,n)=>a===n),numOperands:1},notEqual:{displayValue:e("advancedFilterTextNotEqual"),evaluator:(t,s,i,r)=>this.evaluateExpression(t,s,i,r,!0,(a,n)=>a!=n),numOperands:1},startsWith:{displayValue:e("advancedFilterStartsWith"),evaluator:(t,s,i,r)=>this.evaluateExpression(t,s,i,r,!1,(a,n)=>a.startsWith(n)),numOperands:1},endsWith:{displayValue:e("advancedFilterEndsWith"),evaluator:(t,s,i,r)=>this.evaluateExpression(t,s,i,r,!1,(a,n)=>a.endsWith(n)),numOperands:1},blank:{displayValue:e("advancedFilterBlank"),evaluator:t=>t==null||typeof t=="string"&&t.trim().length===0,numOperands:0},notBlank:{displayValue:e("advancedFilterNotBlank"),evaluator:t=>t!=null&&(typeof t!="string"||t.trim().length>0),numOperands:0}}}evaluateExpression(e,t,s,i,r,a){return e==null?r:s.caseSensitive?a(s.valueConverter(e,t),i):a(s.valueConverter(e,t).toLocaleLowerCase(),i.toLocaleLowerCase())}},ji=class{constructor(e){this.params=e,this.initOperators()}getEntries(e){return Wi(this.operators,e)}findOperator(e){return Ps(e,this.operators,({displayValue:t})=>t)}initOperators(){const{translate:e,equals:t}=this.params;this.operators={equals:{displayValue:e("advancedFilterEquals"),evaluator:(s,i,r,a)=>this.evaluateSingleOperandExpression(s,i,r,a,!!r.includeBlanksInEquals,t),numOperands:1},notEqual:{displayValue:e("advancedFilterNotEqual"),evaluator:(s,i,r,a)=>this.evaluateSingleOperandExpression(s,i,r,a,!!r.includeBlanksInEquals,(n,o)=>!t(n,o)),numOperands:1},greaterThan:{displayValue:e("advancedFilterGreaterThan"),evaluator:(s,i,r,a)=>this.evaluateSingleOperandExpression(s,i,r,a,!!r.includeBlanksInGreaterThan,(n,o)=>n>o),numOperands:1},greaterThanOrEqual:{displayValue:e("advancedFilterGreaterThanOrEqual"),evaluator:(s,i,r,a)=>this.evaluateSingleOperandExpression(s,i,r,a,!!r.includeBlanksInGreaterThan,(n,o)=>n>=o),numOperands:1},lessThan:{displayValue:e("advancedFilterLessThan"),evaluator:(s,i,r,a)=>this.evaluateSingleOperandExpression(s,i,r,a,!!r.includeBlanksInLessThan,(n,o)=>n<o),numOperands:1},lessThanOrEqual:{displayValue:e("advancedFilterLessThanOrEqual"),evaluator:(s,i,r,a)=>this.evaluateSingleOperandExpression(s,i,r,a,!!r.includeBlanksInLessThan,(n,o)=>n<=o),numOperands:1},blank:{displayValue:e("advancedFilterBlank"),evaluator:s=>s==null,numOperands:0},notBlank:{displayValue:e("advancedFilterNotBlank"),evaluator:s=>s!=null,numOperands:0}}}evaluateSingleOperandExpression(e,t,s,i,r,a){return e==null?r:a(s.valueConverter(e,t),i)}},Wm=class{constructor(e){this.params=e,this.initOperators()}getEntries(e){return Wi(this.operators,e)}findOperator(e){return Ps(e,this.operators,({displayValue:t})=>t)}initOperators(){const{translate:e}=this.params;this.operators={true:{displayValue:e("advancedFilterTrue"),evaluator:t=>!!t,numOperands:0},false:{displayValue:e("advancedFilterFalse"),evaluator:t=>t===!1,numOperands:0},blank:{displayValue:e("advancedFilterBlank"),evaluator:t=>t==null,numOperands:0},notBlank:{displayValue:e("advancedFilterNotBlank"),evaluator:t=>t!=null,numOperands:0}}}},jm=class extends Om{constructor(){super(...arguments),this.beanName="advFilterExpSvc",this.columnNameToIdMap={},this.columnAutocompleteEntries=null,this.expressionEvaluatorParams={}}wireBeans(e){this.valueSvc=e.valueSvc,this.colModel=e.colModel,this.colNames=e.colNames,this.dataTypeSvc=e.dataTypeSvc}postConstruct(){this.expressionJoinOperators=this.generateExpressionJoinOperators(),this.expressionOperators=this.generateExpressionOperators()}parseJoinOperator(e){const{type:t}=e;return this.expressionJoinOperators[t]??t}getColumnDisplayValue(e){const{colId:t}=e,i=this.getColumnAutocompleteEntries().find(({key:a})=>a===t);let r;return i?(r=i.displayValue,this.columnNameToIdMap[r.toLocaleUpperCase()]={colId:t,columnName:r}):r=t,r}getOperatorDisplayValue(e){return this.getExpressionOperator(e.filterType,e.type)?.displayValue??e.type}getOperandModelValue(e,t,s){switch(t){case"number":return Nm(e)?Number(e):null;case"date":return gn(this.valueSvc.parseValue(s,null,e,void 0),!1);case"dateString":{const i=this.valueSvc.parseValue(s,null,e,void 0);return this.dataTypeSvc?gn(this.dataTypeSvc.getDateParserFunction(s)(i)??null,!1):i}}return e}getOperandDisplayValue(e,t){const{colId:s,filter:i}=e,r=this.colModel.getColDefCol(s);let a="";if(i!=null){let n;switch(e.filterType){case"number":n=_i(i)??"";break;case"date":{const o=pn(i);n=r?this.valueSvc.formatValue(r,null,o):null;break}case"dateString":{let o;if(this.dataTypeSvc){const l=pn(i);o=r?this.dataTypeSvc?.getDateFormatterFunction(r)(l??void 0):null}else o=i;n=r?this.valueSvc.formatValue(r,null,o):null;break}}e.filterType!=="number"&&(n=n??_i(i)??"",t||(n=`"${n}"`)),a=t?n:` ${n}`}return a}parseColumnFilterModel(e){const t=this.getColumnDisplayValue(e)??"",s=this.getOperatorDisplayValue(e)??"",i=this.getOperandDisplayValue(e);return`[${t}] ${s}${i}`}updateAutocompleteCache(e,t){if(t==="column"){const{key:s,displayValue:i}=e;this.columnNameToIdMap[e.displayValue.toLocaleUpperCase()]={colId:s,columnName:i}}}translate(e,t){let s=Bm[e];return typeof s=="function"&&(s=s(t)),this.getLocaleTextFunc()(e,s,t)}generateAutocompleteListParams(e,t,s){return{enabled:!0,type:t,searchString:s,entries:e}}getColumnAutocompleteEntries(){if(this.columnAutocompleteEntries)return this.columnAutocompleteEntries;const e=this.colModel.getColDefCols()??[],t=[],s=this.gos.get("includeHiddenColumnsInAdvancedFilter");return e.forEach(i=>{i.getColDef().filter&&(s||i.isVisible()||i.isRowGroupActive())&&t.push({key:i.getColId(),displayValue:this.colNames.getDisplayNameForColumn(i,"advancedFilter")})}),t.sort((i,r)=>{const a=i.displayValue??"",n=r.displayValue??"";return a<n?-1:n>a?1:0}),t}getOperatorAutocompleteEntries(e,t){const s=this.getActiveOperators(e);return this.getDataTypeExpressionOperator(t).getEntries(s)}getJoinOperatorAutocompleteEntries(){return Object.entries(this.expressionJoinOperators).map(([e,t])=>({key:e,displayValue:t}))}getDefaultAutocompleteListParams(e){return this.generateAutocompleteListParams(this.getColumnAutocompleteEntries(),"column",e)}getDataTypeExpressionOperator(e){return this.expressionOperators[e]}getExpressionOperator(e,t){return this.getDataTypeExpressionOperator(e)?.operators?.[t]}getExpressionJoinOperators(){return this.expressionJoinOperators}getColId(e){const t=e.toLocaleUpperCase(),s=this.columnNameToIdMap[t];if(s)return s;const r=this.getColumnAutocompleteEntries().find(({displayValue:a})=>a.toLocaleUpperCase()===t);if(r){const{key:a,displayValue:n}=r,o={colId:a,columnName:n};return this.columnNameToIdMap[t]=o,o}return null}getExpressionEvaluatorParams(e){let t=this.expressionEvaluatorParams[e];if(t)return t;const s=this.colModel.getColDefCol(e);if(!s)return{valueConverter:a=>a};switch(this.dataTypeSvc?.getBaseDataType(s)){case"dateString":t={valueConverter:this.dataTypeSvc?.getDateParserFunction(s)??(a=>a)};break;case"object":s.getColDef().filterValueGetter?t={valueConverter:a=>a}:t={valueConverter:(a,n)=>this.valueSvc.formatValue(s,n,a)??(typeof a.toString=="function"?a.toString():"")};break;case"text":case void 0:t={valueConverter:a=>_i(a)};break;default:t={valueConverter:a=>a};break}const{filterParams:r}=s.getColDef();return r&&["caseSensitive","includeBlanksInEquals","includeBlanksInLessThan","includeBlanksInGreaterThan"].forEach(a=>{const n=r[a];n&&(t[a]=n)}),this.expressionEvaluatorParams[e]=t,t}getColumnDetails(e){const t=this.colModel.getColDefCol(e)??void 0,s=(t?this.dataTypeSvc?.getBaseDataType(t):void 0)??"text";return{column:t,baseCellDataType:s}}generateExpressionOperators(){const e=(t,s)=>this.translate(t,s);return{text:new mn({translate:e}),boolean:new Wm({translate:e}),object:new mn({translate:e}),number:new ji({translate:e,equals:(t,s)=>t===s}),date:new ji({translate:e,equals:(t,s)=>t.getTime()===s.getTime()}),dateString:new ji({translate:e,equals:(t,s)=>t.getTime()===s.getTime()})}}getColumnValue({displayValue:e}){return`${Ui}${e}${Ki}`}generateExpressionJoinOperators(){return{AND:this.translate("advancedFilterAnd"),OR:this.translate("advancedFilterOr")}}getActiveOperators(e){const t=e.getColDef().filterParams?.filterOptions;return t&&t.every(i=>typeof i=="string")?t:void 0}resetColumnCaches(){this.columnAutocompleteEntries=null,this.columnNameToIdMap={},this.expressionEvaluatorParams={}}};import{BeanStub as $m,_exists as Ym,_isClientSideRowModel as Xm,_isServerSideRowModel as qm,_warn as Zm}from"ag-grid-community";import{BeanStub as Jm,_getAbsoluteHeight as Qm,_getAbsoluteWidth as ef,_removeFromParent as tf}from"ag-grid-community";import{Component as sf,TabGuardFeature as rf,_createIconNoSpan as fn,_findNextFocusableElement as af,_focusNextGridCoreContainer as nf,_setDisplayed as Cn}from"ag-grid-community";import{Component as vn,PositionableFeature as of,RefPlaceholder as As,_createIconNoSpan as lf,_getActiveDomElement as cf,_getInnerHeight as df,_getInnerWidth as hf,_isVisible as uf,_setDisplayed as pf}from"ag-grid-community";var gf=".ag-panel{background-color:var(--ag-panel-background-color);display:flex;flex-direction:column;overflow:hidden;position:relative}.ag-dialog{border:var(--ag-dialog-border);border-radius:var(--ag-border-radius);box-shadow:var(--ag-dialog-shadow);position:absolute}.ag-panel-title-bar{align-items:center;background-color:var(--ag-panel-title-bar-background-color);border-bottom:var(--ag-panel-title-bar-border);color:var(--ag-panel-title-bar-text-color);cursor:default;display:flex;flex:none;font-weight:var(--ag-panel-title-bar-font-weight);height:var(--ag-header-height);padding:var(--ag-spacing) var(--ag-cell-horizontal-padding)}.ag-panel-title-bar-button{color:var(--ag-panel-title-bar-icon-color);cursor:pointer}:where(.ag-ltr) .ag-panel-title-bar-button{margin-left:calc(var(--ag-spacing)*2);margin-right:var(--ag-spacing)}:where(.ag-rtl) .ag-panel-title-bar-button{margin-left:var(--ag-spacing);margin-right:calc(var(--ag-spacing)*2)}.ag-panel-title-bar-title{flex:1 1 auto}.ag-panel-title-bar-buttons{display:flex}.ag-panel-content-wrapper{display:flex;flex:1 1 auto;overflow:hidden;position:relative}:where(.ag-dragging-fill-handle) .ag-dialog,:where(.ag-dragging-range-handle) .ag-dialog{opacity:.7;pointer-events:none}";function mf(e){const t=e.cssIdentifier||"default";return{tag:"div",cls:`ag-panel ag-${t}-panel`,attrs:{tabindex:"-1"},children:[{tag:"div",ref:"eTitleBar",cls:`ag-panel-title-bar ag-${t}-panel-title-bar ag-unselectable`,children:[{tag:"span",ref:"eTitle",cls:`ag-panel-title-bar-title ag-${t}-panel-title-bar-title`},{tag:"div",ref:"eTitleBarButtons",cls:`ag-panel-title-bar-buttons ag-${t}-panel-title-bar-buttons`}]},{tag:"div",ref:"eContentWrapper",cls:`ag-panel-content-wrapper ag-${t}-panel-content-wrapper`}]}}var yn=class extends vn{constructor(e){super(mf(e)),this.config=e,this.closable=!0,this.eContentWrapper=As,this.eTitleBar=As,this.eTitleBarButtons=As,this.eTitle=As,this.registerCSS(gf)}postConstruct(){const{component:e,closable:t,hideTitleBar:s,title:i,minWidth:r=250,width:a,minHeight:n=250,height:o,centered:l,popup:c,x:d,y:h}=this.config;this.positionableFeature=new of(this.getGui(),{minWidth:r,width:a,minHeight:n,height:o,centered:l,x:d,y:h,popup:c,calculateTopBuffer:()=>this.positionableFeature.getHeight()-this.getBodyHeight()}),this.createManagedBean(this.positionableFeature);const u=this.getGui();e&&this.setBodyComponent(e),s?pf(this.eTitleBar,!1):(i&&this.setTitle(i),this.setClosable(t??this.closable)),this.addManagedElementListeners(this.eTitleBar,{mousedown:p=>{if(u.contains(p.relatedTarget)||u.contains(cf(this.beans))||this.eTitleBarButtons.contains(p.target)){p.preventDefault();return}const g=this.eContentWrapper.querySelector("button, [href], input, select, textarea, [tabindex]");g&&g.focus()}}),!(c&&this.positionableFeature.isPositioned())&&(this.renderComponent&&this.renderComponent(),this.positionableFeature.initialisePosition(),this.eContentWrapper.style.height="0")}renderComponent(){const e=this.getGui();e.focus(),this.close=()=>{e.parentElement.removeChild(e),this.destroy()}}getHeight(){return this.positionableFeature.getHeight()}setHeight(e){this.positionableFeature.setHeight(e)}getWidth(){return this.positionableFeature.getWidth()}setWidth(e){this.positionableFeature.setWidth(e)}setClosable(e){if(e!==this.closable&&(this.closable=e),e){const t=this.closeButtonComp=new vn({tag:"div",cls:"ag-button"});this.createBean(t);const s=t.getGui(),i=lf("close",this.beans);i.classList.add("ag-panel-title-bar-button-icon"),s.appendChild(i),this.addTitleBarButton(t),t.addManagedElementListeners(s,{click:this.onBtClose.bind(this)})}else if(this.closeButtonComp){const t=this.closeButtonComp.getGui();t.parentElement.removeChild(t),this.closeButtonComp=this.destroyBean(this.closeButtonComp)}}setBodyComponent(e){e.setParentComponent(this),this.eContentWrapper.appendChild(e.getGui())}addTitleBarButton(e,t){const s=this.eTitleBarButtons,i=s.children,r=i.length;t==null&&(t=r),t=Math.max(0,Math.min(t,r)),e.addCssClass("ag-panel-title-bar-button");const a=e.getGui();t===0?s.insertAdjacentElement("afterbegin",a):t===r?s.insertAdjacentElement("beforeend",a):i[t-1].insertAdjacentElement("afterend",a),e.setParentComponent(this)}getBodyHeight(){return df(this.eContentWrapper)}getBodyWidth(){return hf(this.eContentWrapper)}setTitle(e){this.eTitle.innerText=e}onBtClose(){this.close()}destroy(){this.closeButtonComp&&(this.closeButtonComp=this.destroyBean(this.closeButtonComp));const e=this.getGui();e&&uf(e)&&this.close(),super.destroy()}},kt=class extends yn{constructor(e){super({...e,popup:!0}),this.isMaximizable=!1,this.isMaximized=!1,this.maximizeListeners=[],this.resizeListenerDestroy=null,this.lastPosition={x:0,y:0,width:0,height:0}}wireBeans(e){this.popupSvc=e.popupSvc}postConstruct(){const e=this.getGui(),{movable:t,resizable:s,maximizable:i,modal:r,postProcessPopupParams:a}=this.config;if(this.addCssClass("ag-dialog"),super.postConstruct(),a){const{type:n,eventSource:o,column:l,mouseEvent:c,rowNode:d}=a;this.popupSvc?.callPostProcessPopup(n,e,o,c,l,d)}if(this.tabGuardFeature=this.createManagedBean(new rf(this)),this.tabGuardFeature.initialiseTabGuard({isFocusableContainer:!0,onFocusIn:()=>{this.popupSvc?.bringPopupToFront(e)},onTabKeyDown:n=>{if(r)return;const o=n.shiftKey,l=af(this.beans,e,!1,o);(!l||this.tabGuardFeature.getTabGuardCtrl().isTabGuard(l))&&nf(this.beans,o)&&n.preventDefault()}}),t&&this.setMovable(t),i&&this.setMaximizable(i),s&&this.setResizable(s),!this.config.modal){const n=this.beans.ctrlsSvc.get("gridCtrl");n.addFocusableContainer(this),this.addDestroyFunc(()=>n.removeFocusableContainer(this))}}setAllowFocus(e){this.tabGuardFeature.getTabGuardCtrl().setAllowFocus(e)}renderComponent(){const e=this.getGui(),{alwaysOnTop:t,modal:s,title:i,afterGuiAttached:r}=this.config,a=this.getLocaleTextFunc(),n=this.popupSvc?.addPopup({modal:s,eChild:e,closeOnEsc:!0,closedCallback:this.onClosed.bind(this),alwaysOnTop:t,ariaLabel:i||a("ariaLabelDialog","Dialog"),afterGuiAttached:r});n&&(this.close=n.hideFunc)}onClosed(e){this.destroy(),this.config.closedCallback?.(e)}toggleMaximize(){const e=this.positionableFeature.getPosition();if(this.isMaximized){const{x:t,y:s,width:i,height:r}=this.lastPosition;this.setWidth(i),this.setHeight(r),this.positionableFeature.offsetElement(t,s)}else this.lastPosition.width=this.getWidth(),this.lastPosition.height=this.getHeight(),this.lastPosition.x=e.x,this.lastPosition.y=e.y,this.positionableFeature.offsetElement(0,0),this.setHeight("100%"),this.setWidth("100%");this.isMaximized=!this.isMaximized,this.refreshMaximizeIcon()}refreshMaximizeIcon(){Cn(this.maximizeIcon,!this.isMaximized),Cn(this.minimizeIcon,this.isMaximized)}clearMaximizebleListeners(){this.maximizeListeners.length&&(this.maximizeListeners.forEach(e=>e()),this.maximizeListeners.length=0),this.resizeListenerDestroy&&(this.resizeListenerDestroy(),this.resizeListenerDestroy=null)}destroy(){this.maximizeButtonComp=this.destroyBean(this.maximizeButtonComp),this.clearMaximizebleListeners(),super.destroy()}setResizable(e){this.positionableFeature.setResizable(e)}setMovable(e){this.positionableFeature.setMovable(e,this.eTitleBar)}setMaximizable(e){if(!e){this.clearMaximizebleListeners(),this.maximizeButtonComp&&(this.destroyBean(this.maximizeButtonComp),this.maximizeButtonComp=this.maximizeIcon=this.minimizeIcon=void 0);return}const t=this.eTitleBar;if(!t||e===this.isMaximizable)return;const s=this.buildMaximizeAndMinimizeElements();this.refreshMaximizeIcon(),s.addManagedElementListeners(s.getGui(),{click:this.toggleMaximize.bind(this)}),this.addTitleBarButton(s,0),this.maximizeListeners.push(...this.addManagedElementListeners(t,{dblclick:this.toggleMaximize.bind(this)})),[this.resizeListenerDestroy]=this.addManagedListeners(this.positionableFeature,{resize:()=>{this.isMaximized=!1,this.refreshMaximizeIcon()}})}buildMaximizeAndMinimizeElements(){const e=this.maximizeButtonComp=this.createBean(new sf({tag:"div",cls:"ag-dialog-button"})),t=e.getGui();return this.maximizeIcon=fn("maximize",this.beans),t.appendChild(this.maximizeIcon),this.maximizeIcon.classList.add("ag-panel-title-bar-button-icon"),this.minimizeIcon=fn("minimize",this.beans),t.appendChild(this.minimizeIcon),this.minimizeIcon.classList.add("ag-panel-title-bar-button-icon"),e}};import{Component as ff,RefPlaceholder as Gt,_createIconNoSpan as Cf,_makeNull as vf,_setDisabled as ht}from"ag-grid-community";import{AgInputTextFieldSelector as yf,Component as Sf,KeyCode as Ce,RefPlaceholder as bf,_isNothingFocused as wf,_makeNull as Sn}from"ag-grid-community";var xf=".ag-autocomplete{align-items:center;display:flex;width:100%;>*{flex:1 1 auto}}.ag-autocomplete-list-popup{background-color:var(--ag-background-color);border-radius:var(--ag-border-radius);box-shadow:var(--ag-dropdown-shadow);padding:0;position:absolute;-webkit-user-select:none;-moz-user-select:none;user-select:none}.ag-autocomplete-list{height:calc(var(--ag-row-height)*6.5);min-width:200px;position:relative;width:100%}.ag-autocomplete-virtual-list-item{cursor:default;display:flex;height:var(--ag-list-item-height);&:focus-visible:after{content:none}&:hover{background-color:var(--ag-row-hover-color)}}.ag-autocomplete-row{align-items:center;display:flex;flex:1 1 auto;overflow:hidden}.ag-autocomplete-row-label{margin:0 var(--ag-widget-container-horizontal-padding);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ag-autocomplete-row-selected{background-color:var(--ag-selected-row-background-color)}";import{KeyCode as Mf,PopupComponent as Tf,RefPlaceholder as Ff,_exists as Pf,_fuzzySuggestions as Af}from"ag-grid-community";import{KeyCode as pe,RefPlaceholder as Rf,TabGuardComp as Ef,_createElement as If,_getAriaPosInSet as Df,_observeResize as Lf,_requestAnimationFrame as bn,_setAriaLabel as kf,_setAriaPosInSet as Gf,_setAriaRole as Of,_setAriaSetSize as Nf,_stopPropagationForAgGrid as Bf,_waitUntil as _f,_warn as Vf}from"ag-grid-community";function Hf(e){return{tag:"div",cls:`ag-virtual-list-viewport ag-${e}-virtual-list-viewport`,role:"presentation",children:[{tag:"div",ref:"eContainer",cls:`ag-virtual-list-container ag-${e}-virtual-list-container`}]}}var ut=class extends Ef{constructor(e){super(Hf(e?.cssIdentifier||"default")),this.renderedRows=new Map,this.rowHeight=20,this.pageSize=-1,this.isScrolling=!1,this.isHeightFromTheme=!0,this.eContainer=Rf,this.awaitStableCallbacks=[];const{cssIdentifier:t="default",ariaRole:s="listbox",listName:i,moveItemCallback:r}=e||{};this.cssIdentifier=t,this.ariaRole=s,this.listName=i,this.moveItemCallback=r}wireBeans(e){this.environment=e.environment}postConstruct(){this.addScrollListener(),this.rowHeight=this.getItemHeight(),this.addResizeObserver(),this.initialiseTabGuard({onFocusIn:e=>this.onFocusIn(e),onFocusOut:e=>this.onFocusOut(e),focusInnerElement:e=>this.focusInnerElement(e),onTabKeyDown:e=>this.onTabKeyDown(e),handleKeyDown:e=>this.handleKeyDown(e)}),this.refreshAriaProperties(),this.addManagedEventListeners({gridStylesChanged:this.onGridStylesChanged.bind(this)})}onGridStylesChanged(e){e.listItemHeightChanged&&(this.rowHeight=this.getItemHeight(),this.refresh())}refreshAriaProperties(){const t=this.getLocaleTextFunc()("ariaDefaultListName",this.listName||"List"),s=this.eContainer;Of(s,this.model?.getRowCount()>0?this.ariaRole:"presentation"),kf(s,t)}addResizeObserver(){const e=()=>bn(this.beans,()=>this.drawVirtualRows()),t=Lf(this.beans,this.getGui(),e);this.addDestroyFunc(t)}focusInnerElement(e){return this.focusRow(e?this.model.getRowCount()-1:0),!0}onFocusIn(e){const t=e.target;t.classList.contains("ag-virtual-list-item")&&(this.lastFocusedRowIndex=Df(t)-1)}onFocusOut(e){this.getFocusableElement().contains(e.relatedTarget)||(this.lastFocusedRowIndex=null)}handleKeyDown(e){const{key:t,shiftKey:s}=e;switch(t){case pe.UP:case pe.DOWN:{const i=t===pe.UP;e.preventDefault(),s?this.moveItem(i):this.navigate(i)}break;case pe.PAGE_HOME:case pe.PAGE_END:case pe.PAGE_UP:case pe.PAGE_DOWN:this.navigateToPage(t)!==null&&e.preventDefault();break}}onTabKeyDown(e){Bf(e),this.forceFocusOutOfContainer(e.shiftKey)}getNextRow(e){if(this.lastFocusedRowIndex==null)return;const t=this.lastFocusedRowIndex+(e?-1:1);if(!(t<0||t>=this.model.getRowCount()))return t}moveItem(e){if(!this.moveItemCallback)return;const t=this.getComponentAt(this.lastFocusedRowIndex);t&&this.moveItemCallback(t,e)}navigate(e){const t=this.getNextRow(e);t!==void 0&&this.focusRow(t)}navigateToPage(e,t="focused"){let s=!1;t==="focused"&&(t=this.getLastFocusedRow(),s=!0);const i=this.model.getRowCount()-1;let r=-1;return e===pe.PAGE_HOME?r=0:e===pe.PAGE_END?r=i:e===pe.PAGE_DOWN?r=Math.min(t+this.pageSize,i):e===pe.PAGE_UP&&(r=Math.max(t-this.pageSize,0)),r===-1?null:(s?this.focusRow(r):this.ensureIndexVisible(r),r)}getLastFocusedRow(){return this.lastFocusedRowIndex}focusRow(e){this.isScrolling||(this.isScrolling=!0,this.ensureIndexVisible(e),bn(this.beans,()=>{if(this.isScrolling=!1,!this.isAlive())return;const t=this.renderedRows.get(e);t&&t.eDiv.focus()}))}getComponentAt(e){const t=this.renderedRows.get(e);return t&&t.rowComponent}forEachRenderedRow(e){this.renderedRows.forEach((t,s)=>e(t.rowComponent,s))}getItemHeight(){return this.isHeightFromTheme?this.environment.getDefaultListItemHeight():this.rowHeight}ensureIndexVisible(e,t=!0){const s=this.model.getRowCount();if(typeof e!="number"||e<0||e>=s)return Vf(229,{index:e}),!1;const i=e*this.rowHeight,r=i+this.rowHeight,a=this.getGui(),n=a.scrollTop,o=a.offsetHeight,l=n+o,c=t?0:this.rowHeight,d=n>i+c,h=l<r-c;if(d)return a.scrollTop=i,!0;if(h){const u=r-o;return a.scrollTop=u,!0}return!1}setComponentCreator(e){this.componentCreator=e}setComponentUpdater(e){this.componentUpdater=e}getRowHeight(){return this.rowHeight}getScrollTop(){return this.getGui().scrollTop}setRowHeight(e){this.isHeightFromTheme=!1,this.rowHeight=e,this.refresh()}refresh(e){if(this.model==null||!this.isAlive())return;const t=this.model.getRowCount();this.eContainer.style.height=`${t*this.rowHeight}px`,this.refreshAriaProperties(),this.awaitStable(()=>{this.isAlive()&&(this.canSoftRefresh(e)?this.drawVirtualRows(!0):(this.clearVirtualRows(),this.drawVirtualRows()))})}awaitStable(e){if(this.awaitStableCallbacks.push(e),this.awaitStableCallbacks.length>1)return;const t=this.model.getRowCount();_f(()=>this.eContainer.clientHeight>=t*this.rowHeight,()=>{if(!this.isAlive())return;const s=this.awaitStableCallbacks;this.awaitStableCallbacks=[],s.forEach(i=>i())})}canSoftRefresh(e){return!!(e&&this.renderedRows.size&&typeof this.model.areRowsEqual=="function"&&this.componentUpdater)}clearVirtualRows(){this.renderedRows.forEach((e,t)=>this.removeRow(t))}drawVirtualRows(e){if(!this.isAlive()||!this.model)return;const t=this.getGui(),s=t.scrollTop,i=s+t.offsetHeight;if(s===i)this.clearVirtualRows();else{const r=Math.floor(s/this.rowHeight),a=Math.floor(i/this.rowHeight);this.pageSize=Math.floor((i-s)/this.rowHeight),this.ensureRowsRendered(r,a,e)}}ensureRowsRendered(e,t,s){this.renderedRows.forEach((i,r)=>{(r<e||r>t)&&r!==this.lastFocusedRowIndex&&this.removeRow(r)}),s&&this.refreshRows();for(let i=e;i<=t;i++)this.renderedRows.has(i)||i<this.model.getRowCount()&&this.insertRow(i)}insertRow(e){const t=this.model.getRow(e),s=this.ariaRole==="tree"?"treeitem":"option",i=If({tag:"div",cls:`ag-virtual-list-item ag-${this.cssIdentifier}-virtual-list-item`,role:s,attrs:{tabindex:"-1"}});Nf(i,this.model.getRowCount()),Gf(i,e+1),i.style.height=`${this.rowHeight}px`,i.style.top=`${this.rowHeight*e}px`;const r=this.componentCreator(t,i);r.addGuiEventListener("focusin",()=>this.lastFocusedRowIndex=e),i.appendChild(r.getGui()),this.renderedRows.has(e-1)?this.renderedRows.get(e-1).eDiv.insertAdjacentElement("afterend",i):this.renderedRows.has(e+1)?this.renderedRows.get(e+1).eDiv.insertAdjacentElement("beforebegin",i):this.eContainer.appendChild(i),this.renderedRows.set(e,{rowComponent:r,eDiv:i,value:t})}removeRow(e){const t=this.renderedRows.get(e);this.eContainer.removeChild(t.eDiv),this.destroyBean(t.rowComponent),this.renderedRows.delete(e)}refreshRows(){const e=this.model.getRowCount();this.renderedRows.forEach((t,s)=>{if(s>=e)this.removeRow(s);else{const i=this.model.getRow(s);this.model.areRowsEqual?.(t.value,i)?this.componentUpdater(i,t.rowComponent):this.removeRow(s)}})}addScrollListener(){this.addGuiEventListener("scroll",()=>this.drawVirtualRows(),{passive:!0})}setModel(e){this.model=e}getAriaElement(){return this.eContainer}destroy(){this.isAlive()&&(this.clearVirtualRows(),this.awaitStableCallbacks.length=0,super.destroy())}};import{Component as zf,_escapeString as Rs,_exists as Uf}from"ag-grid-community";var Kf={tag:"div",cls:"ag-autocomplete-row",role:"presentation",children:[{tag:"div",cls:"ag-autocomplete-row-label"}]},Wf=class extends zf{constructor(){super(Kf),this.hasHighlighting=!1}setState(e,t){this.value=e,this.render(),this.updateSelected(t)}updateSelected(e){this.addOrRemoveCssClass("ag-autocomplete-row-selected",e)}setSearchString(e){let t=!1;if(Uf(e)){const s=this.value?.toLocaleLowerCase().indexOf(e.toLocaleLowerCase());if(s>=0){t=!0,this.hasHighlighting=!0;const i=s+e.length,r=Rs(this.value.slice(0,s)),a=Rs(this.value.slice(s,i)),n=Rs(this.value.slice(i));this.getGui().lastElementChild.innerHTML=`${r}<b>${a}</b>${n}`}}!t&&this.hasHighlighting&&(this.hasHighlighting=!1,this.render())}render(){this.getGui().lastElementChild.innerHTML=Rs(this.value)??" "}},jf={tag:"div",cls:"ag-autocomplete-list-popup",children:[{tag:"div",ref:"eList",cls:"ag-autocomplete-list"}]},$f=class extends Tf{constructor(e){super(jf),this.params=e,this.eList=Ff,this.searchString=""}postConstruct(){this.autocompleteEntries=this.params.autocompleteEntries,this.virtualList=this.createManagedBean(new ut({cssIdentifier:"autocomplete"})),this.virtualList.setComponentCreator(this.createRowComponent.bind(this)),this.eList.appendChild(this.virtualList.getGui()),this.virtualList.setModel({getRowCount:()=>this.autocompleteEntries.length,getRow:t=>this.autocompleteEntries[t]});const e=this.virtualList.getGui();this.addManagedListeners(e,{click:()=>this.params.onConfirmed(),mousemove:this.onMouseMove.bind(this),mousedown:t=>t.preventDefault()}),this.setSelectedValue(0)}onNavigationKeyDown(e,t){e.preventDefault();const s=this.autocompleteEntries.indexOf(this.selectedValue),i=t===Mf.UP?s-1:s+1;this.checkSetSelectedValue(i)}setSearch(e){this.searchString=e,Pf(e)?this.runSearch():(this.autocompleteEntries=this.params.autocompleteEntries,this.virtualList.refresh(),this.checkSetSelectedValue(0)),this.updateSearchInList()}runContainsSearch(e,t){let s,i=!1;const r=e.toLocaleLowerCase(),a=t.filter(n=>{const l=n.toLocaleLowerCase().indexOf(r),c=l===0,d=l>=0;return d&&(!s||!i&&c||i===c&&n.length<s.length)&&(s=n,i=c),d});return!s&&a.length&&(s=a[0]),{topMatch:s,allMatches:a}}runSearch(){const{autocompleteEntries:e,useFuzzySearch:t,forceLastSelection:s}=this.params,i=e.map(l=>l.displayValue??l.key);let r,a;if(t)r=Af({inputValue:this.searchString,allSuggestions:i,hideIrrelevant:!0}).values,a=r.length?r[0]:void 0;else{const l=this.runContainsSearch(this.searchString,i);r=l.allMatches,a=l.topMatch}let n=e.filter(({key:l,displayValue:c})=>r.includes(c??l));if(!n.length&&this.selectedValue&&s?.(this.selectedValue,this.searchString)&&(n=[this.selectedValue]),this.autocompleteEntries=n,this.virtualList.refresh(),!a)return;const o=r.indexOf(a);this.checkSetSelectedValue(o)}updateSearchInList(){this.virtualList.forEachRenderedRow(e=>e.setSearchString(this.searchString))}checkSetSelectedValue(e){e>=0&&e<this.autocompleteEntries.length&&this.setSelectedValue(e)}setSelectedValue(e){const t=this.autocompleteEntries[e];this.selectedValue!==t&&(this.selectedValue=t,this.virtualList.ensureIndexVisible(e),this.virtualList.forEachRenderedRow((s,i)=>{s.updateSelected(e===i)}))}createRowComponent(e){const t=new Wf;return this.createBean(t),t.setState(e.displayValue??e.key,e===this.selectedValue),t}onMouseMove(e){const t=this.virtualList,s=t.getGui().getBoundingClientRect(),i=t.getScrollTop(),r=e.clientY-s.top+i,a=Math.floor(r/t.getRowHeight());this.checkSetSelectedValue(a)}afterGuiAttached(){this.virtualList.refresh()}getSelectedValue(){return this.autocompleteEntries.length?this.selectedValue??null:null}},Yf={tag:"div",cls:"ag-autocomplete",role:"presentation",children:[{tag:"ag-input-text-field",ref:"eAutocompleteInput"}]},Xf=class extends Sf{constructor(){super(Yf,[yf]),this.eAutocompleteInput=bf,this.isListOpen=!1,this.lastPosition=0,this.valid=!0,this.registerCSS(xf)}wireBeans(e){this.popupSvc=e.popupSvc}postConstruct(){this.eAutocompleteInput.onValueChange(e=>this.onValueChanged(e)),this.eAutocompleteInput.getInputElement().setAttribute("autocomplete","off"),this.addGuiEventListener("keydown",this.onKeyDown.bind(this)),this.addGuiEventListener("click",this.updatePositionAndList.bind(this)),this.addDestroyFunc(()=>{this.destroyBean(this.autocompleteList)}),this.addGuiEventListener("focusout",()=>this.onFocusOut())}onValueChanged(e){const t=Sn(e);this.updateValue(t),this.updateAutocompleteList(t)}updateValue(e){this.updateLastPosition(),this.dispatchLocalEvent({type:"eventValueChanged",value:e}),this.validate(e)}updateAutocompleteList(e){const t=this.listGenerator?.(e,this.lastPosition)??{enabled:!1};(!t.type||t.type!==this.autocompleteListParams?.type)&&this.isListOpen&&this.closeList();const s=this.isListOpen;if(this.autocompleteListParams=t,t?.enabled){s||this.openList();const{searchString:i}=t;this.autocompleteList.setSearch(i??"")}else s&&this.closeList()}onKeyDown(e){const t=e.key;switch(this.updateLastPosition(),t){case Ce.ENTER:this.onEnterKeyDown(e);break;case Ce.TAB:this.onTabKeyDown(e);break;case Ce.DOWN:case Ce.UP:this.onUpDownKeyDown(e,t);break;case Ce.LEFT:case Ce.RIGHT:case Ce.PAGE_HOME:case Ce.PAGE_END:setTimeout(()=>{this.updatePositionAndList()});break;case Ce.ESCAPE:this.onEscapeKeyDown(e);break;case Ce.SPACE:e.ctrlKey&&!this.isListOpen&&(e.preventDefault(),this.forceOpenList());break}}confirmSelection(){const e=this.autocompleteList?.getSelectedValue();e&&(this.closeList(),this.dispatchLocalEvent({type:"eventOptionSelected",value:this.getValue(),position:this.lastPosition,updateEntry:e,autocompleteType:this.autocompleteListParams.type}))}onTabKeyDown(e){this.isListOpen&&(e.preventDefault(),e.stopPropagation(),this.confirmSelection())}onEnterKeyDown(e){e.preventDefault(),this.isListOpen?this.confirmSelection():this.onCompleted()}onUpDownKeyDown(e,t){e.preventDefault(),this.isListOpen?this.autocompleteList?.onNavigationKeyDown(e,t):this.forceOpenList()}onEscapeKeyDown(e){this.isListOpen&&(e.preventDefault(),e.stopPropagation(),this.closeList(),this.setCaret(this.lastPosition,!0))}onFocusOut(){this.isListOpen&&this.closeList()}updatePositionAndList(){this.updateLastPosition(),this.updateAutocompleteList(this.eAutocompleteInput.getValue()??null)}setCaret(e,t){t&&wf(this.beans)&&this.eAutocompleteInput.getFocusableElement().focus();const s=this.eAutocompleteInput.getInputElement();s.setSelectionRange(e,e),e===s.value.length&&(s.scrollLeft=s.scrollWidth)}forceOpenList(){this.onValueChanged(this.eAutocompleteInput.getValue())}updateLastPosition(){this.lastPosition=this.eAutocompleteInput.getInputElement().selectionStart??0}validate(e){if(!this.validator)return;const t=this.validationMessage=this.validator(e);this.eAutocompleteInput.getInputElement().setCustomValidity(t??""),this.valid=!t,this.dispatchLocalEvent({type:"eventValidChanged",isValid:this.valid,validationMessage:t})}openList(){this.isListOpen=!0,this.autocompleteList=this.createBean(new $f({autocompleteEntries:this.autocompleteListParams.entries,onConfirmed:()=>this.confirmSelection(),forceLastSelection:this.forceLastSelection}));const e=this.autocompleteList.getGui(),t={ePopup:e,type:"autocomplete",eventSource:this.getGui(),position:"under",alignSide:this.gos.get("enableRtl")?"right":"left",keepWithinBounds:!0},s=this.popupSvc.addPopup({eChild:e,anchorToElement:this.getGui(),positionCallback:()=>this.popupSvc.positionPopupByComponent(t),ariaLabel:this.listAriaLabel});this.hidePopup=s.hideFunc,this.autocompleteList.afterGuiAttached()}closeList(){this.isListOpen=!1,this.hidePopup(),this.destroyBean(this.autocompleteList),this.autocompleteList=null}onCompleted(){this.isListOpen&&this.closeList(),this.dispatchLocalEvent({type:"eventValueConfirmed",value:this.getValue(),isValid:this.isValid()})}getValue(){return Sn(this.eAutocompleteInput.getValue())}setInputPlaceholder(e){return this.eAutocompleteInput.setInputPlaceholder(e),this}setInputAriaLabel(e){return this.eAutocompleteInput.setInputAriaLabel(e),this}setListAriaLabel(e){return this.listAriaLabel=e,this}setListGenerator(e){return this.listGenerator=e,this}setValidator(e){return this.validator=e,this}isValid(){return this.valid}setValue(e){const{value:t,position:s,silent:i,updateListOnlyIfOpen:r,restoreFocus:a}=e;this.eAutocompleteInput.setValue(t,!0),this.setCaret(s??this.lastPosition,a),i||this.updateValue(t),(!r||this.isListOpen)&&this.updateAutocompleteList(t)}setForceLastSelection(e){return this.forceLastSelection=e,this}setInputDisabled(e){return this.eAutocompleteInput.setDisabled(e),this}},qf={selector:"AG-AUTOCOMPLETE",component:Xf},Zf={tag:"div",cls:"ag-advanced-filter",role:"presentation",attrs:{tabindex:"-1"},children:[{tag:"ag-autocomplete",ref:"eAutocomplete"},{tag:"button",ref:"eApplyFilterButton",cls:"ag-button ag-standard-button ag-advanced-filter-apply-button"},{tag:"button",ref:"eBuilderFilterButton",cls:"ag-button ag-advanced-filter-builder-button",children:[{tag:"span",ref:"eBuilderFilterButtonIcon",attrs:{"aria-hidden":"true"}},{tag:"span",ref:"eBuilderFilterButtonLabel",cls:"ag-advanced-filter-builder-button-label"}]}]},wn=class extends ff{constructor(){super(Zf,[qf]),this.eAutocomplete=Gt,this.eApplyFilterButton=Gt,this.eBuilderFilterButton=Gt,this.eBuilderFilterButtonIcon=Gt,this.eBuilderFilterButtonLabel=Gt,this.expressionParser=null,this.isApplyDisabled=!0,this.builderOpen=!1}wireBeans(e){this.advFilterExpSvc=e.advFilterExpSvc,this.advancedFilter=e.advancedFilter,this.filterManager=e.filterManager,this.registry=e.registry}postConstruct(){this.tooltipFeature=this.createOptionalManagedBean(this.registry.createDynamicBean("tooltipFeature",!1,{getGui:()=>this.getGui(),getTooltipShowDelayOverride:()=>1e3,getLocation:()=>"advancedFilter"})),this.eAutocomplete.setListGenerator((e,t)=>this.generateAutocompleteListParams(t)).setValidator(()=>this.validateValue()).setForceLastSelection((e,t)=>this.forceLastSelection(e,t)).setInputAriaLabel(this.advFilterExpSvc.translate("ariaAdvancedFilterInput")).setListAriaLabel(this.advFilterExpSvc.translate("ariaLabelAdvancedFilterAutocomplete")),this.refresh(),this.addManagedListeners(this.eAutocomplete,{eventValueChanged:({value:e})=>this.onValueChanged(e),eventValueConfirmed:({isValid:e})=>this.onValueConfirmed(e),eventOptionSelected:({position:e,updateEntry:t,autocompleteType:s})=>this.onOptionSelected(e,t,s),eventValidChanged:({isValid:e,validationMessage:t})=>this.onValidChanged(e,t)}),this.setupApplyButton(),this.setupBuilderButton()}refresh(){const e=this.advancedFilter.getExpressionDisplayValue();this.eAutocomplete.setValue({value:e??"",position:e?.length,updateListOnlyIfOpen:!0})}setInputDisabled(e){this.eAutocomplete.setInputDisabled(e),ht(this.eApplyFilterButton,e||this.isApplyDisabled)}setupApplyButton(){this.eApplyFilterButton.innerText=this.advFilterExpSvc.translate("advancedFilterApply"),this.activateTabIndex([this.eApplyFilterButton]),this.addManagedElementListeners(this.eApplyFilterButton,{click:()=>this.onValueConfirmed(this.eAutocomplete.isValid())}),ht(this.eApplyFilterButton,this.isApplyDisabled)}setupBuilderButton(){this.eBuilderFilterButtonIcon.appendChild(Cf("advancedFilterBuilder",this.beans)),this.eBuilderFilterButtonLabel.innerText=this.advFilterExpSvc.translate("advancedFilterBuilder"),this.activateTabIndex([this.eBuilderFilterButton]),this.addManagedElementListeners(this.eBuilderFilterButton,{click:()=>this.openBuilder()}),this.addManagedListeners(this.advancedFilter.getCtrl(),{advancedFilterBuilderClosed:()=>this.closeBuilder()})}onValueChanged(e){e=vf(e),this.advancedFilter.setExpressionDisplayValue(e),this.expressionParser=this.advancedFilter.createExpressionParser(e);const t=this.expressionParser?.parseExpression();t&&t!==e&&this.eAutocomplete.setValue({value:t,silent:!0,restoreFocus:!0})}onValueConfirmed(e){!e||this.isApplyDisabled||(ht(this.eApplyFilterButton,!0),this.advancedFilter.applyExpression(),this.filterManager?.onFilterChanged({source:"advancedFilter"}))}onOptionSelected(e,t,s){const{updatedValue:i,updatedPosition:r,hideAutocomplete:a}=this.updateExpression(e,t,s);this.eAutocomplete.setValue({value:i,position:r,updateListOnlyIfOpen:a,restoreFocus:!0})}validateValue(){return this.expressionParser?.isValid()?null:this.expressionParser?.getValidationMessage()??null}onValidChanged(e,t){this.isApplyDisabled=!e||this.advancedFilter.isCurrentExpressionApplied(),ht(this.eApplyFilterButton,this.isApplyDisabled),this.tooltipFeature?.setTooltipAndRefresh(t)}generateAutocompleteListParams(e){return this.expressionParser?this.expressionParser.getAutocompleteListParams(e):this.advFilterExpSvc.getDefaultAutocompleteListParams("")}updateExpression(e,t,s){return this.advFilterExpSvc.updateAutocompleteCache(t,s),this.expressionParser?.updateExpression(e,t,s)??this.advancedFilter.getDefaultExpression(t)}forceLastSelection({key:e,displayValue:t},s){return!!s.toLocaleLowerCase().match(`^${(t??e).toLocaleLowerCase()}\\s*$`)}openBuilder(){this.builderOpen||(this.builderOpen=!0,ht(this.eBuilderFilterButton,!0),this.advancedFilter.getCtrl().toggleFilterBuilder({source:"ui",eventSource:this.eBuilderFilterButton}))}closeBuilder(){this.builderOpen&&(this.builderOpen=!1,ht(this.eBuilderFilterButton,!1),this.eBuilderFilterButton.focus())}};import{Component as Jf,KeyCode as Ot,_clearElement as Qf,_findNextFocusableElement as eC,_focusInto as tC,_getActiveDomElement as sC,_getFloatingFiltersHeight as iC,_setAriaColIndex as rC,_setAriaColSpan as aC,_setAriaRole as nC,_setAriaRowIndex as oC,_setDisplayed as lC}from"ag-grid-community";var cC={tag:"div",cls:"ag-advanced-filter-header",role:"row"},dC=class extends Jf{constructor(e){super(cC),this.enabled=e}wireBeans(e){this.colModel=e.colModel,this.focusSvc=e.focusSvc,this.ctrlsSvc=e.ctrlsSvc}postConstruct(){this.setupAdvancedFilter(this.enabled),this.addDestroyFunc(()=>this.destroyBean(this.eAdvancedFilter));const e=()=>{this.enabled&&this.setEnabledHeight()};this.addManagedEventListeners({gridColumnsChanged:()=>this.onGridColumnsChanged(),columnHeaderHeightChanged:e,gridStylesChanged:e}),this.addManagedPropertyListener("headerHeight",e),this.addManagedPropertyListener("floatingFiltersHeight",e),this.addGuiEventListener("keydown",t=>this.onKeyDown(t)),this.addGuiEventListener("focusout",t=>{this.getFocusableElement().contains(t.relatedTarget)||this.focusSvc.clearAdvancedFilterColumn()})}getFocusableElement(){return this.eAdvancedFilter?.getGui()??this.getGui()}setEnabled(e){e!==this.enabled&&this.setupAdvancedFilter(e)}refresh(){this.eAdvancedFilter?.refresh()}getHeight(){return this.height}setInputDisabled(e){this.eAdvancedFilter?.setInputDisabled(e)}setupAdvancedFilter(e){const t=this.getGui();if(e){this.eAdvancedFilter=this.createBean(new wn);const s=this.eAdvancedFilter.getGui();this.eAdvancedFilter.addCssClass("ag-advanced-filter-header-cell"),this.setEnabledHeight(),this.setAriaRowIndex(),nC(s,"gridcell"),rC(s,1),this.setAriaColumnCount(s),t.appendChild(s)}else Qf(t),this.destroyBean(this.eAdvancedFilter),this.height=0;lC(t,e),this.enabled=e}setEnabledHeight(){const e=this.getGui();this.height=iC(this.beans);const t=`${this.height}px`;e.style.height=t,e.style.minHeight=t}setAriaColumnCount(e){aC(e,this.colModel.getCols().length)}setAriaRowIndex(){oC(this.getGui(),this.ctrlsSvc.getHeaderRowContainerCtrl()?.getRowCount()??0)}onGridColumnsChanged(){this.eAdvancedFilter&&(this.setAriaColumnCount(this.eAdvancedFilter.getGui()),this.setAriaRowIndex())}onKeyDown(e){switch(e.key){case Ot.ENTER:{this.hasFocus()&&tC(this.getFocusableElement())&&e.preventDefault();break}case Ot.ESCAPE:this.hasFocus()||this.getFocusableElement().focus();break;case Ot.UP:this.navigateUpDown(!0,e);break;case Ot.DOWN:this.navigateUpDown(!1,e);break;case Ot.TAB:if(this.hasFocus())this.navigateLeftRight(e);else{const t=eC(this.beans,this.getFocusableElement(),null,e.shiftKey);t?(e.preventDefault(),t.focus()):this.navigateLeftRight(e)}break}}navigateUpDown(e,t){this.hasFocus()&&this.focusSvc.focusNextFromAdvancedFilter(e)&&t.preventDefault()}navigateLeftRight(e){(e.shiftKey?this.focusSvc.focusLastHeader():this.focusSvc.focusNextFromAdvancedFilter(!1,!0))&&e.preventDefault()}hasFocus(){return sC(this.beans)===this.getFocusableElement()}};import{Component as hC,RefPlaceholder as $i,_exists as uC,_setDisabled as pC}from"ag-grid-community";import{BeanStub as gC,DragSourceType as mC}from"ag-grid-community";import{AutoScrollService as fC,BeanStub as CC,_radioCssClass as xn}from"ag-grid-community";var Yi="ag-list-item-hovered",Mn=class extends CC{constructor(e,t,s){super(),this.comp=e,this.virtualList=t,this.params=s,this.currentDragValue=null,this.lastHoveredListItem=null}wireBeans(e){this.dragAndDrop=e.dragAndDrop}postConstruct(){this.addManagedListeners(this.params.eventSource,{[this.params.listItemDragStartEvent]:this.listItemDragStart.bind(this),[this.params.listItemDragEndEvent]:this.listItemDragEnd.bind(this)}),this.createDropTarget(),this.createAutoScrollService()}listItemDragStart(e){this.currentDragValue=this.params.getCurrentDragValue(e),this.moveBlocked=this.params.isMoveBlocked(this.currentDragValue)}listItemDragEnd(){window.setTimeout(()=>{this.currentDragValue=null,this.moveBlocked=!1},10)}createDropTarget(){const e={isInterestedIn:t=>t===this.params.dragSourceType,getIconName:()=>this.moveBlocked?"pinned":"move",getContainer:()=>this.comp.getGui(),onDragging:t=>this.onDragging(t),onDragStop:()=>this.onDragStop(),onDragLeave:()=>this.onDragLeave(),onDragCancel:()=>this.onDragCancel()};this.dragAndDrop?.addDropTarget(e)}createAutoScrollService(){const e=this.virtualList.getGui();this.autoScrollService=new fC({scrollContainer:e,scrollAxis:"y",getVerticalPosition:()=>e.scrollTop,setVerticalPosition:t=>e.scrollTop=t})}onDragging(e){if(!this.currentDragValue||this.moveBlocked)return;const t=this.getListDragItem(e),s=this.virtualList.getComponentAt(t.rowIndex);if(!s)return;const i=s.getGui().parentElement;this.lastHoveredListItem&&this.lastHoveredListItem.rowIndex===t.rowIndex&&this.lastHoveredListItem.position===t.position||(this.autoScrollService.check(e.event),this.clearHoveredItems(),this.lastHoveredListItem=t,xn(i,Yi),xn(i,`ag-item-highlight-${t.position}`))}getListDragItem(e){const t=this.virtualList.getGui(),s=parseFloat(window.getComputedStyle(t).paddingTop),i=this.virtualList.getRowHeight(),r=this.virtualList.getScrollTop(),a=Math.max(0,(e.y-s+r)/i),n=this.params.getNumRows(this.comp)-1,o=Math.min(n,a)|0;return{rowIndex:o,position:Math.round(a)>a||a>n?"bottom":"top",component:this.virtualList.getComponentAt(o)}}onDragStop(){this.moveBlocked||(this.params.moveItem(this.currentDragValue,this.lastHoveredListItem),this.clearDragProperties())}onDragCancel(){this.clearDragProperties()}onDragLeave(){this.clearDragProperties()}clearDragProperties(){this.clearHoveredItems(),this.autoScrollService.ensureCleared()}clearHoveredItems(){this.virtualList.getGui().querySelectorAll(`.${Yi}`).forEach(t=>{[Yi,"ag-item-highlight-top","ag-item-highlight-bottom"].forEach(s=>{t.classList.remove(s)})}),this.lastHoveredListItem=null}},vC=class extends gC{constructor(e,t){super(),this.comp=e,this.virtualList=t}postConstruct(){this.createManagedBean(new Mn(this.comp,this.virtualList,{dragSourceType:mC.AdvancedFilterBuilder,listItemDragStartEvent:"advancedFilterBuilderDragStarted",listItemDragEndEvent:"advancedFilterBuilderDragEnded",eventSource:this,getCurrentDragValue:e=>this.getCurrentDragValue(e),isMoveBlocked:()=>!1,getNumRows:e=>e.getNumItems(),moveItem:(e,t)=>this.moveItem(e,t)}))}getCurrentDragValue(e){return e.item}moveItem(e,t){this.comp.moveItem(e,t)}};import{Component as yC,RefPlaceholder as SC,_setAriaLabel as bC,_setAriaLevel as wC}from"ag-grid-community";import{AgInputTextFieldSelector as xC,_setAriaLabel as MC,_setAriaLabelledBy as TC,_setDisplayed as FC,_stopPropagationForAgGrid as PC}from"ag-grid-community";import{AgInputTextFieldSelector as AC,AgPickerField as RC,KeyCode as Z,RefPlaceholder as Tn,_addGridCommonParams as EC,_clearElement as Xi,_createIconNoSpan as IC,_debounce as DC,_escapeString as LC,_exists as Fn,_fuzzySuggestions as kC,_getActiveDomElement as GC,_getEditorRendererDetails as OC,_isEventFromPrintableCharacter as NC,_isVisible as BC,_setAriaActiveDescendant as _C,_shouldDisplayTooltip as VC,_stopPropagationForAgGrid as HC}from"ag-grid-community";import{Component as zC,KeyCode as pt,_clearElement as UC,_findFocusableElements as KC,_findNextFocusableElement as WC,_getActiveDomElement as Pn,_getDocument as jC,_setAriaPosInSet as $C,_setAriaRole as YC,_setAriaSetSize as XC}from"ag-grid-community";import{RefPlaceholder as An}from"ag-grid-community";import{Component as qC}from"ag-grid-community";var ZC={tag:"div",cls:"ag-pill",role:"option",children:[{tag:"span",ref:"eText",cls:"ag-pill-text"},{tag:"span",ref:"eButton",cls:"ag-button ag-pill-button",role:"presentation"}]},JC=class extends qC{constructor(e){super(ZC),this.config=e,this.eText=An,this.eButton=An}postConstruct(){const{config:e,eButton:t}=this,{onKeyDown:s,onButtonClick:i}=e;this.getGui().setAttribute("tabindex",String(this.gos.get("tabIndex"))),this.addGuiEventListener("focus",()=>{this.eButton.focus()}),s&&this.addGuiEventListener("keydown",s),i&&this.addManagedElementListeners(t,{click:i})}toggleCloseButtonClass(e,t){this.eButton.classList.toggle(e,t)}setText(e){this.eText.textContent=e}getText(){return this.eText.textContent}},QC={tag:"div",cls:"ag-pill-container"},ev=class extends zC{constructor(){super(QC),this.pills=[]}init(e){this.params=e,this.refresh()}refresh(){this.clearPills();const{params:e,onPillKeyDown:t}=this;let s=e.getValue();if(!Array.isArray(s)){if(s==null)return;s=[s]}const i=e.valueFormatter??(a=>String(a)),r=s.length;YC(this.getGui(),r===0?"presentation":"listbox");for(let a=0;a<r;a++){const n=s[a],o=this.createBean(new JC({onButtonClick:()=>this.onPillButtonClick(o),onKeyDown:t.bind(this)})),l=o.getGui();$C(l,a+1),XC(l,r),e.onPillMouseDown&&o.addGuiEventListener("mousedown",e.onPillMouseDown),e.announceItemFocus&&o.addGuiEventListener("focus",e.announceItemFocus),o.setText(i(n)??""),o.toggleCloseButtonClass("ag-icon-cancel",!0),this.appendChild(l),this.pills.push(o)}}onNavigationKeyDown(e){const{key:t}=e;if(!this.pills.length||t!==pt.LEFT&&t!==pt.RIGHT)return;e.preventDefault();const{params:s,beans:i}=this,r=Pn(i),a=this.getGui();if(a.contains(r)){const n=WC(i,a,!1,t===pt.LEFT);n?n.focus():s.eWrapper&&s.eWrapper.focus()}else{const n=KC(a);n.length>0&&n[t===pt.RIGHT?0:n.length-1].focus()}}clearPills(){const e=this.getGui();e.contains(Pn(this.beans))&&this.params.eWrapper&&this.params.eWrapper.focus(),UC(e),this.destroyBeans(this.pills),this.pills=[]}onPillButtonClick(e){this.deletePill(e)}onPillKeyDown(e){const t=e.key;if(t!==pt.DELETE&&t!==pt.BACKSPACE)return;e.preventDefault();const s=jC(this.beans),i=this.pills.findIndex(a=>a.getGui().contains(s.activeElement));if(i===-1)return;const r=this.pills[i];r&&this.deletePill(r,i)}deletePill(e,t){const s=e.getText(),i=(this.params.getValue()||[]).filter(r=>r!==s);if(this.params.setValue(i),!i.length&&this.params.eWrapper)this.params.eWrapper.focus();else if(t!=null){const r=this.pills[Math.min(t,this.pills.length-1)];r&&r.getFocusableElement().focus()}}destroy(){this.clearPills(),super.destroy()}},tv=".ag-rich-select{cursor:default;height:100%}.ag-rich-select-value{align-items:center;background-color:var(--ag-picker-button-background-color);display:flex;height:100%;padding:var(--ag-spacing);:where(.ag-picker-field-display){overflow:hidden;text-overflow:ellipsis;&:where(.ag-display-as-placeholder){opacity:.5}}}.ag-rich-select-list{background-color:var(--ag-picker-list-background-color);border:var(--ag-picker-list-border);border-radius:var(--ag-input-border-radius);box-shadow:var(--ag-dropdown-shadow);height:auto;position:relative;width:100%;:where(.ag-loading-text){padding:var(--ag-widget-container-vertical-padding) var(--ag-widget-container-horizontal-padding)}}.ag-rich-select-row{align-items:center;display:flex;flex:1 1 auto;height:100%;overflow:hidden;padding:0 var(--ag-spacing);white-space:nowrap}.ag-rich-select-row-selected{background-color:var(--ag-selected-row-background-color)}.ag-rich-select-row-highlighted,.ag-rich-select-row:hover{background-image:linear-gradient(var(--ag-row-hover-color),var(--ag-row-hover-color))}.ag-rich-select-row-text-highlight{font-weight:700}.ag-rich-select-field-input{flex:1 1 auto;:where(.ag-input-field-input){border:none!important;box-shadow:none!important;padding:0!important;text-overflow:ellipsis;&::-moz-placeholder{opacity:.8}&::placeholder{opacity:.8}}}:where(.ag-ltr) .ag-rich-select-field-input{left:var(--ag-spacing)}:where(.ag-rtl) .ag-rich-select-field-input{right:var(--ag-spacing)}:where(.ag-popup-editor) .ag-rich-select-value{height:var(--ag-row-height);min-width:200px}.ag-rich-select-virtual-list-item{cursor:default;height:var(--ag-list-item-height)}.ag-pill-container{display:flex;flex-wrap:nowrap;gap:.25rem}.ag-pill{align-items:center;background:var(--ag-select-cell-background-color);border:var(--ag-select-cell-border);border-radius:var(--ag-border-radius);display:flex;padding:0 .25rem;white-space:nowrap}.ag-pill-button{border:none;padding:0;&:hover{color:var(--ag-accent-color);cursor:pointer}}:where(.ag-ltr) .ag-pill-button{margin-left:var(--ag-spacing)}:where(.ag-rtl) .ag-pill-button{margin-right:var(--ag-spacing)}";import{KeyCode as sv,_getDocument as iv,_requestAnimationFrame as Rn,_setAriaActiveDescendant as rv,_setAriaControls as av,_setAriaLabel as nv}from"ag-grid-community";import{Component as ov,_addGridCommonParams as lv,_escapeString as Es,_exists as Nt,_getDocument as cv,_getEditorRendererDetails as dv,_setAriaSelected as hv,_shouldDisplayTooltip as uv}from"ag-grid-community";var pv={tag:"div",cls:"ag-rich-select-row",role:"presentation"},gv=class extends ov{constructor(e){super(pv),this.params=e}wireBeans(e){this.userCompFactory=e.userCompFactory,this.registry=e.registry}postConstruct(){this.tooltipFeature=this.createOptionalManagedBean(this.registry.createDynamicBean("tooltipFeature",!1,{getGui:()=>this.getGui(),shouldDisplayTooltip:()=>this.shouldDisplayTooltip?.()??!0}))}setState(e){const{params:t}=this,s=t.valueFormatter?.(e)??"";this.populateWithRenderer(e,s)||this.populateWithoutRenderer(e,s),this.value=e}highlightString(e){const{parsedValue:t}=this;if(this.params.cellRenderer||!Nt(t))return;let s=Nt(e);if(s){const i=t?.toLocaleLowerCase().indexOf(e.toLocaleLowerCase());if(i>=0){const r=i+e.length,a=Es(t.slice(0,i),!0),n=Es(t.slice(i,r),!0),o=Es(t.slice(r));this.renderValueWithoutRenderer(`${a}<span class="ag-rich-select-row-text-highlight">${n}</span>${o}`)}else s=!1}s||this.renderValueWithoutRenderer(t)}updateSelected(e){const t=this.getGui();hv(t.parentElement,e),this.addOrRemoveCssClass("ag-rich-select-row-selected",e)}getValue(){return this.value}toggleHighlighted(e){this.addOrRemoveCssClass("ag-rich-select-row-highlighted",e)}populateWithoutRenderer(e,t){const s=cv(this.beans),i=this.getGui(),r=s.createElement("span");r.style.overflow="hidden",r.style.textOverflow="ellipsis";const a=Es(Nt(t)?t:e,!0);this.parsedValue=Nt(a)?a:null,i.appendChild(r),this.renderValueWithoutRenderer(a),this.shouldDisplayTooltip=uv(()=>r),this.tooltipFeature?.setTooltipAndRefresh(this.parsedValue)}renderValueWithoutRenderer(e){const t=this.getGui().querySelector("span");t&&(t.innerHTML=Nt(e)?e:" ")}populateWithRenderer(e,t){let s,i;if(this.params.cellRenderer){const r=this.getParentComponent()?.getParentComponent();i=dv(this.userCompFactory,this.params,lv(this.gos,{value:e,valueFormatted:t,getValue:()=>r?.getValue(),setValue:a=>{r?.setValue(a,!0)},setTooltip:(a,n)=>{this.gos.assertModuleRegistered("Tooltip",3),this.shouldDisplayTooltip=n,this.tooltipFeature?.setTooltipAndRefresh(a)}}))}return i&&(s=i.newAgStackInstance()),s&&Dn(s,this.getGui()),s?(s.then(r=>{this.addDestroyFunc(()=>{this.destroyBean(r)})}),!0):!1}},En="ag-rich-select-list",In="ag-rich-select-row",mv=class extends ut{constructor(e,t,s){super({cssIdentifier:"rich-select"}),this.params=e,this.richSelectWrapper=t,this.getSearchString=s,this.lastRowHovered=-1,this.selectedItems=new Set,this.params=e,this.setComponentCreator(this.createRowComponent.bind(this)),this.setComponentUpdater(()=>{})}postConstruct(){super.postConstruct(),this.createLoadingElement();const{cellRowHeight:e,pickerAriaLabelKey:t,pickerAriaLabelValue:s}=this.params;e&&this.setRowHeight(e);const i=this.getGui(),r=this.getAriaElement();this.addManagedListeners(i,{mousemove:this.onMouseMove.bind(this),mouseout:this.onMouseOut.bind(this),mousedown:this.onMouseDown.bind(this),click:this.onClick.bind(this)}),i.classList.add(En);const a=`${En}-${this.getCompId()}`;r.setAttribute("id",a);const o=this.getLocaleTextFunc()(t,s);nv(r,o),av(this.richSelectWrapper,r)}navigateToPage(e){const t=super.navigateToPage(e,this.lastRowHovered);return t!=null&&Rn(this.beans,()=>{if(!this.isAlive())return null;this.highlightIndex(t)}),t}drawVirtualRows(e){super.drawVirtualRows(e),this.refreshSelectedItems()}highlightFilterMatch(e){this.forEachRenderedRow(t=>{t.highlightString(e)})}onNavigationKeyDown(e,t){Rn(this.beans,()=>{if(!this.currentList||!this.isAlive())return;const s=this.currentList.length,i=this.lastRowHovered,r=e===sv.DOWN?1:-1,a=Math.min(Math.max(i===-1?0:i+r,0),s-1);this.highlightIndex(a),t()})}selectValue(e){if(!this.currentList)return this.eLoading&&this.appendChild(this.eLoading),!1;if(this.eLoading?.offsetParent&&this.eLoading.parentElement?.removeChild(this.eLoading),e==null)return!1;const t=this.getIndicesForValues(e),s=t.length>0;return s&&(this.refresh(),this.ensureIndexVisible(t[0]),this.refresh(!0)),this.selectListItems(Array.isArray(e)?e:[e]),s}selectListItems(e,t=!1){t||this.selectedItems.clear();for(let s=0;s<e.length;s++){const i=e[s];this.findItemInSelected(i)===void 0&&this.selectedItems.add(i)}this.refreshSelectedItems()}getCurrentList(){return this.currentList}setCurrentList(e){this.currentList=e,this.setModel({getRowCount:()=>e.length,getRow:t=>e[t],areRowsEqual:(t,s)=>t===s})}getSelectedItems(){return this.selectedItems}getLastItemHovered(){return this.currentList[this.lastRowHovered]}highlightIndex(e,t){this.currentList&&(e<0||e>=this.currentList.length?this.lastRowHovered=-1:(this.lastRowHovered=e,this.ensureIndexVisible(e,!t)&&!t&&this.refresh(!0)),this.forEachRenderedRow((s,i)=>{const r=e===i;if(s.toggleHighlighted(r),r){const a=`${In}-${s.getCompId()}`;rv(this.richSelectWrapper,a),this.richSelectWrapper.setAttribute("data-active-option",a)}}))}getIndicesForValues(e){const{currentList:t}=this;if(!t||t.length===0||e==null)return[];if(Array.isArray(e)||(e=[e]),e.length===0)return[];const{valueFormatter:s}=this.params,i=[],r=typeof e[0]=="object",a=t.map(s);for(const n of e){let o=-1;r?o=a.indexOf(s(n)):o=t.indexOf(n),o>=0&&i.push(o)}return i}toggleListItemSelection(e){const t=this.findItemInSelected(e);t!==void 0?this.selectedItems.delete(t):this.selectedItems.add(e),this.refreshSelectedItems(),this.dispatchValueSelected()}refreshSelectedItems(){this.forEachRenderedRow(e=>{const t=this.findItemInSelected(e.getValue())!==void 0;e.updateSelected(t)})}findItemInSelected(e){if(typeof e=="object"){const t=this.params.valueFormatter,s=t(e);for(const i of this.selectedItems)if(t(i)===s)return i}else return this.selectedItems.has(e)?e:void 0}createLoadingElement(){const e=iv(this.beans),t=this.getLocaleTextFunc(),s=e.createElement("div");s.classList.add("ag-loading-text"),s.innerText=t("loadingOoo","Loading..."),this.eLoading=s}createRowComponent(e,t){const s=new gv(this.params);t.setAttribute("id",`${In}-${s.getCompId()}`),s.setParentComponent(this),this.createBean(s),s.setState(e);const{highlightMatch:i,searchType:r="fuzzy"}=this.params;return i&&r!=="fuzzy"&&s.highlightString(this.getSearchString()),s}getRowForMouseEvent(e){const s=this.getGui().getBoundingClientRect(),i=this.getScrollTop(),r=e.clientY-s.top+i;return Math.min(Math.floor(r/this.getRowHeight()),this.model.getRowCount()-1)}onMouseMove(e){const t=this.getRowForMouseEvent(e);t!==-1&&t!=this.lastRowHovered&&(this.lastRowHovered=t,this.highlightIndex(t,!0))}onMouseDown(e){e.preventDefault()}onMouseOut(e){this.getGui().contains(e.relatedTarget)||this.highlightIndex(-1)}onClick(e){const{multiSelect:t}=this.params;if(!this.currentList)return;const s=this.getRowForMouseEvent(e),i=this.currentList[s];t?this.toggleListItemSelection(i):(this.selectListItems([i]),this.dispatchValueSelected())}dispatchValueSelected(){this.dispatchLocalEvent({type:"richSelectListRowSelected",fromEnterKey:!1,value:this.selectedItems})}destroy(){super.destroy(),this.eLoading=void 0}},fv={tag:"div",cls:"ag-picker-field",role:"presentation",children:[{tag:"div",ref:"eLabel"},{tag:"div",ref:"eWrapper",cls:"ag-wrapper ag-picker-field-wrapper ag-rich-select-value ag-picker-collapsed",children:[{tag:"span",ref:"eDisplayField",cls:"ag-picker-field-display"},{tag:"ag-input-text-field",ref:"eInput",cls:"ag-rich-select-field-input"},{tag:"span",ref:"eDeselect",cls:"ag-rich-select-deselect-button ag-picker-field-icon",role:"presentation"},{tag:"span",ref:"eIcon",cls:"ag-picker-field-icon",attrs:{"aria-hidden":"true"}}]}]},qi=class extends RC{constructor(e){super({pickerAriaLabelKey:"ariaLabelRichSelectField",pickerAriaLabelValue:"Rich Select Field",pickerType:"ag-list",className:"ag-rich-select",pickerIcon:"richSelectOpen",ariaRole:"combobox",template:e?.template??fv,agComponents:[AC],modalPicker:!1,...e,maxPickerHeight:e?.maxPickerHeight??"calc(var(--ag-row-height) * 6.5)"}),this.searchString="",this.searchStringCreator=null,this.eInput=Tn,this.eDeselect=Tn,this.skipWrapperAnnouncement=!1;const{value:t,valueList:s,searchStringCreator:i}=e||{};t!==void 0&&(this.value=t),i&&(this.searchStringCreator=i),s!=null&&this.setValues(s),this.registerCSS(tv)}wireBeans(e){this.userCompFactory=e.userCompFactory,this.ariaAnnounce=e.ariaAnnounce,this.registry=e.registry}postConstruct(){this.tooltipFeature=this.createOptionalManagedBean(this.registry.createDynamicBean("tooltipFeature",!1,{getGui:()=>this.getGui(),shouldDisplayTooltip:()=>this.shouldDisplayTooltip?.()??!0})),super.postConstruct(),this.createListComponent(),this.eDeselect.appendChild(IC("richSelectRemove",this.beans));const{allowTyping:e,placeholder:t,suppressDeselectAll:s}=this.config;this.eDeselect.classList.add("ag-hidden"),e?(this.eInput.setAutoComplete(!1).setInputPlaceholder(t),this.eDisplayField.classList.add("ag-hidden")):this.eInput.setDisplayed(!1),this.setupAriaProperties();const{searchDebounceDelay:i=300}=this.config;this.clearSearchString=DC(this,this.clearSearchString.bind(this),i),this.renderSelectedValue(),e&&this.eInput.onValueChange(r=>this.searchTextFromString(r)),this.addManagedElementListeners(this.eWrapper,{focus:this.onWrapperFocus.bind(this)}),this.addManagedElementListeners(this.eWrapper,{focusout:this.onWrapperFocusOut.bind(this)}),s||this.addManagedElementListeners(this.eDeselect,{mousedown:this.onDeselectAllMouseDown.bind(this),click:this.onDeselectAllClick.bind(this)})}setupAriaProperties(){const{eWrapper:e,gos:t}=this;e.tabIndex=t.get("tabIndex");const s=this.getLocaleTextFunc();this.ariaDeleteSelection=s("ariaLabelRichSelectDeleteSelection","Press DELETE to deselect item"),this.ariaDeselectAllItems=s("ariaLabelRichSelectDeselectAllItems","Press DELETE to deselect all items"),this.ariaToggleSelection=s("ariaLabelRichSelectToggleSelection","Press SPACE to toggle selection")}createListComponent(){this.listComponent=this.createBean(new mv(this.config,this.eWrapper,()=>this.searchString)),this.listComponent.setParentComponent(this),this.addManagedListeners(this.listComponent,{richSelectListRowSelected:e=>{this.onListValueSelected(e.value,e.fromEnterKey)}})}renderSelectedValue(){const{value:e,eDisplayField:t,config:s,gos:i}=this,{allowTyping:r,cellRenderer:a,initialInputValue:n,multiSelect:o,suppressDeselectAll:l,suppressMultiSelectPillRenderer:c}=s,d=s.valueFormatter?.(e)??String(e);if(r){this.eInput.setValue(n??d);return}if(o&&!l){const p=e==null||Array.isArray(e)&&e.length===0;this.eDeselect.classList.toggle("ag-hidden",p)}let h;if(o&&!c){this.createOrUpdatePillContainer(t);return}a&&(h=OC(this.userCompFactory,s,EC(this.gos,{value:e,valueFormatted:d,getValue:()=>this.getValue(),setValue:p=>{this.setValue(p,!0)},setTooltip:(p,g)=>{i.assertModuleRegistered("Tooltip",3),this.shouldDisplayTooltip=g,this.tooltipFeature?.setTooltipAndRefresh(p)}})));let u;if(h&&(u=h.newAgStackInstance()),u)Xi(t),Dn(u,t),u.then(p=>{this.addDestroyFunc(()=>this.destroyBean(p))});else{if(Fn(this.value))t.innerText=d,t.classList.remove("ag-display-as-placeholder");else{const{placeholder:p}=s;Fn(p)?(t.innerHTML=`${LC(p)}`,t.classList.add("ag-display-as-placeholder")):Xi(t)}this.shouldDisplayTooltip=VC(()=>this.eDisplayField),this.tooltipFeature?.setTooltipAndRefresh(d??null)}}createPickerComponent(){const{values:e}=this;return e&&this.setValueList({valueList:e}),this.listComponent}setSearchStringCreator(e){this.searchStringCreator=e}setValueList(e){const{valueList:t,refresh:s}=e;!this.listComponent||this.listComponent.getCurrentList()===t||(this.listComponent.setCurrentList(t),s&&(this.values?this.listComponent.refresh(!0):(this.setValues(t),this.isPickerDisplayed&&(this.listComponent.selectValue(this.value)||this.listComponent.refresh())),this.alignPickerToComponent()))}setValues(e){this.values=e,this.searchStrings=this.getSearchStringsFromValues(e)}showPicker(){super.showPicker();const{listComponent:e,value:t}=this;if(!e)return;let s=null;e.selectValue(this.value),this.value!=null&&(s=e.getIndicesForValues(Array.isArray(t)?t:[t])[0]),s!=null?e.highlightIndex(s):e.refresh(),this.displayOrHidePicker()}beforeHidePicker(){super.beforeHidePicker()}createOrUpdatePillContainer(e){if(!this.pillContainer){const t=this.pillContainer=this.createBean(new ev);this.addDestroyFunc(()=>{this.destroyBean(this.pillContainer),this.pillContainer=null}),Xi(e),e.appendChild(t.getGui());const{config:s,eWrapper:i,ariaDeleteSelection:r}=this,{valueFormatter:a}=s;t.init({eWrapper:i,valueFormatter:a,onPillMouseDown:n=>{n.stopImmediatePropagation()},announceItemFocus:()=>{this.announceAriaValue(r)},getValue:()=>this.getValue(),setValue:n=>this.setValue(n,!0)})}this.doWhileBlockingAnnouncement(()=>this.pillContainer?.refresh())}doWhileBlockingAnnouncement(e){this.skipWrapperAnnouncement=!0,e(),this.skipWrapperAnnouncement=!1}onWrapperFocus(){const{eInput:e,config:t}=this,{allowTyping:s,multiSelect:i,suppressDeselectAll:r}=t;if(s){const a=e.getFocusableElement();a.focus(),a.select()}else i&&!r&&!this.skipWrapperAnnouncement&&this.announceAriaValue(this.ariaDeselectAllItems)}onWrapperFocusOut(e){this.eWrapper.contains(e.relatedTarget)||this.hidePicker()}onDeselectAllMouseDown(e){e.stopImmediatePropagation()}onDeselectAllClick(){this.setValue([],!0)}buildSearchStringFromKeyboardEvent(e){let{key:t}=e;if(t===Z.BACKSPACE)this.searchString=this.searchString.slice(0,-1),t="";else if(!NC(e))return;e.preventDefault(),this.searchTextFromCharacter(t)}searchTextFromCharacter(e){this.searchString+=e,this.runSearch(),this.clearSearchString()}searchTextFromString(e){e==null&&(e=""),this.searchString=e,this.runSearch()}getSearchStringsFromValues(e){const{config:t}=this,{valueFormatter:s=i=>String(i)}=t;return typeof e[0]=="object"&&this.searchStringCreator?this.searchStringCreator(e):e.map(i=>s(i))}filterListModel(e){const{filterList:t}=this.config;t&&this.setValueList({valueList:e,refresh:!0})}runSearch(){if(!this.listComponent)return;const{values:e}=this,t=this.searchStrings;if(!t){this.listComponent.highlightIndex(-1);return}const{suggestions:s,filteredValues:i}=this.getSuggestionsAndFilteredValues(this.searchString,t),{filterList:r,highlightMatch:a,searchType:n="fuzzy"}=this.config,o=!!(r&&this.searchString!=="");this.filterListModel(o?i:e),this.highlightEmptyValue()||this.highlightListValue(s,i,o),a&&n!=="fuzzy"&&this.listComponent?.highlightFilterMatch(this.searchString),this.displayOrHidePicker()}highlightEmptyValue(){if(this.searchString===""){const e=this.searchStrings?.indexOf("");if(e!==void 0&&e!==-1)return this.listComponent?.highlightIndex(e),!0}return!1}highlightListValue(e,t,s){if(e.length){const i=s?0:this.searchStrings?.indexOf(e[0]);i!==void 0&&this.listComponent?.highlightIndex(i)}else if(this.listComponent?.highlightIndex(-1),!s||t.length)this.listComponent?.ensureIndexVisible(0);else if(s){this.getAriaElement().removeAttribute("data-active-option");const i=this.listComponent?.getAriaElement();i&&_C(i,null)}}getSuggestionsAndFilteredValues(e,t){let s=[];const i=[];if(!e.length)return{suggestions:s,filteredValues:i};const{searchType:r="fuzzy",filterList:a}=this.config;if(r==="fuzzy"){const n=kC({inputValue:e,allSuggestions:t,hideIrrelevant:!0});s=n.values;const o=n.indices;if(a&&o.length)for(let l=0;l<o.length;l++)i.push(this.values[o[l]])}else s=t.filter((n,o)=>{const l=n.toLocaleLowerCase(),c=this.searchString.toLocaleLowerCase(),d=r==="match"?l.startsWith(c):l.indexOf(c)!==-1;return a&&d&&i.push(this.values[o]),d});return{suggestions:s,filteredValues:i}}displayOrHidePicker(){if(!this.listComponent)return;const e=this.listComponent.getGui(),t=this.listComponent.getCurrentList(),s=t?t.length===0:!1;e.classList.toggle("ag-hidden",s)}clearSearchString(){this.searchString=""}setValue(e,t,s,i){if(this.value===e)return this;const r=Array.isArray(e);if(e!=null){if(!r){const a=this.listComponent?.getCurrentList();if((a?a.indexOf(e):-1)===-1)return this}s||this.listComponent?.selectValue(e)}return super.setValue(e,t),i||this.renderSelectedValue(),this}onNavigationKeyDown(e,t,s){e.preventDefault();const i=t===Z.DOWN;if(!this.isPickerDisplayed&&i){this.showPicker();return}this.listComponent?.onNavigationKeyDown(t,s)}onEnterKeyDown(e){if(this.isPickerDisplayed&&(e.preventDefault(),this.listComponent?.getCurrentList())){const t=this.listComponent.getLastItemHovered();this.config.multiSelect||t==null?this.dispatchPickerEventAndHidePicker(this.value,!0):this.onListValueSelected(new Set([t]),!0)}}onDeleteKeyDown(e){const{eWrapper:t,beans:s}=this;GC(s)===t&&(e.preventDefault(),this.setValue([],!0))}onTabKeyDown(){const{config:e,isPickerDisplayed:t,listComponent:s}=this,{multiSelect:i}=e;if(!(!t||!s)){if(i){const r=this.getValueFromSet(s.getSelectedItems());r&&this.setValue(r,!1,!0,!0)}else{const r=s.getLastItemHovered();r&&this.setValue(r,!1,!0)}this.hidePicker()}}getValueFromSet(e){const{multiSelect:t}=this.config;let s=null;for(const i of e){if(e.size===1&&!t){s=i;break}s||(s=[]),s.push(i)}return Array.isArray(s)&&s.sort(),s}onListValueSelected(e,t){const s=this.getValueFromSet(e);this.setValue(s,!1,!0),this.config.multiSelect||this.dispatchPickerEventAndHidePicker(s,t)}dispatchPickerEventAndHidePicker(e,t){const s={type:"fieldPickerValueSelected",fromEnterKey:t,value:e};this.dispatchLocalEvent(s),this.hidePicker()}getFocusableElement(){const{allowTyping:e}=this.config;return e?this.eInput.getFocusableElement():super.getFocusableElement()}onKeyDown(e){const{key:t}=e,{isPickerDisplayed:s,config:i,listComponent:r,pickerComponent:a}=this,{allowTyping:n,multiSelect:o,suppressDeselectAll:l}=i;switch(t){case Z.LEFT:case Z.RIGHT:(!n||this.pillContainer)&&(e.preventDefault(),this.pillContainer&&(this.listComponent?.highlightIndex(-1),this.pillContainer.onNavigationKeyDown(e)));break;case Z.PAGE_HOME:case Z.PAGE_END:if(n){e.preventDefault();const c=this.eInput.getInputElement(),d=t===Z.PAGE_HOME?0:c.value.length;c.setSelectionRange(d,d);break}case Z.PAGE_UP:case Z.PAGE_DOWN:e.preventDefault(),a&&r?.navigateToPage(t);break;case Z.DOWN:case Z.UP:this.onNavigationKeyDown(e,t,()=>{o&&(this.doWhileBlockingAnnouncement(()=>this.eWrapper.focus()),this.announceAriaValue(this.ariaToggleSelection))});break;case Z.ESCAPE:s&&(BC(this.listComponent.getGui())&&(e.preventDefault(),HC(e)),this.hidePicker());break;case Z.ENTER:this.onEnterKeyDown(e);break;case Z.SPACE:if(s&&o&&r){e.preventDefault();const c=r.getLastItemHovered();c&&r.toggleListItemSelection(c)}break;case Z.TAB:this.onTabKeyDown();break;case Z.DELETE:o&&!l&&this.onDeleteKeyDown(e);break;default:n||this.buildSearchStringFromKeyboardEvent(e)}}announceAriaValue(e){this.ariaAnnounce?.announceValue(e,"richSelect")}destroy(){this.listComponent&&(this.listComponent=this.destroyBean(this.listComponent)),this.searchStrings=void 0,super.destroy()}};function Dn(e,t){e.then(s=>{const i=s.getGui();i!=null&&(typeof i=="object"?t.appendChild(i):t.innerHTML=i)})}var Cv={tag:"div",cls:"ag-picker-field",role:"presentation",children:[{tag:"div",ref:"eLabel"},{tag:"div",ref:"eWrapper",cls:"ag-wrapper ag-picker-collapsed",children:[{tag:"div",ref:"eDisplayField",cls:"ag-picker-field-display"},{tag:"ag-input-text-field",ref:"eInput",cls:"ag-rich-select-field-input"},{tag:"span",ref:"eDeselect",cls:"ag-rich-select-deselect-button ag-picker-field-icon",role:"presentation"},{tag:"div",ref:"eIcon",cls:"ag-picker-field-icon",attrs:{"aria-hidden":"true"}}]}]},Ln=class extends qi{constructor(e){super({...e,template:Cv,agComponents:[xC]}),this.params=e}showPicker(){setTimeout(()=>super.showPicker())}hidePicker(){setTimeout(()=>super.hidePicker())}postConstruct(){super.postConstruct();const{wrapperClassName:e,ariaLabel:t}=this.params;FC(this.eDisplayField,!1),e&&this.eWrapper.classList.add(e),TC(this.eWrapper,""),MC(this.eWrapper,t)}onEnterKeyDown(e){PC(e),this.isPickerDisplayed?super.onEnterKeyDown(e):(e.preventDefault(),this.showPicker())}};import{BeanStub as vv,KeyCode as Bt,_getActiveDomElement as kn,_isStopPropagationForAgGrid as Gn,_stopPropagationForAgGrid as Is}from"ag-grid-community";var On=class extends vv{constructor(e,t,s){super(),this.eGui=e,this.focusWrapper=t,this.eFocusableComp=s}postConstruct(){this.addManagedElementListeners(this.eGui,{keydown:t=>{switch(t.key){case Bt.TAB:t.defaultPrevented||Is(t);break;case Bt.UP:case Bt.DOWN:Is(t);break;case Bt.ESCAPE:if(Gn(t))return;this.eGui.contains(kn(this.beans))&&(t.preventDefault(),Is(t),this.focusWrapper.focus());break}}});const e="ag-advanced-filter-builder-virtual-list-item-highlight";this.addManagedListeners(this.focusWrapper,{keydown:t=>{switch(t.key){case Bt.ENTER:if(Gn(t))return;kn(this.beans)===this.focusWrapper&&(t.preventDefault(),Is(t),this.eFocusableComp.getFocusableElement().focus());break}},focusin:()=>{this.focusWrapper.classList.add(e)},focusout:t=>{this.focusWrapper.contains(t.relatedTarget)||this.focusWrapper.classList.remove(e)}})}};function Nn(e,t){return{pickerAriaLabelKey:"ariaLabelAdvancedFilterBuilderAddField",pickerAriaLabelValue:"Advanced Filter Builder Add Field",pickerType:"ag-list",valueList:[{key:"condition",displayValue:e("advancedFilterBuilderAddCondition")},{key:"join",displayValue:e("advancedFilterBuilderAddJoin")}],valueFormatter:s=>s==null?"":s.displayValue??s.key,pickerIcon:"advancedFilterBuilderAdd",maxPickerWidth:`${t??120}px`,wrapperClassName:"ag-advanced-filter-builder-item-button",ariaLabel:e("advancedFilterBuilderAddButtonTooltip")}}var yv={tag:"div",cls:"ag-advanced-filter-builder-item-wrapper",role:"presentation",children:[{tag:"div",ref:"eItem",cls:"ag-advanced-filter-builder-item",role:"presentation",children:[{tag:"div",cls:"ag-advanced-filter-builder-item-tree-lines",attrs:{"aria-hidden":"true"},children:[{tag:"div",cls:"ag-advanced-filter-builder-item-tree-line-vertical-top ag-advanced-filter-builder-item-tree-line-horizontal"}]}]}]},Sv=class extends yC{constructor(e,t){super(yv),this.item=e,this.focusWrapper=t,this.eItem=SC}wireBeans(e){this.advFilterExpSvc=e.advFilterExpSvc,this.registry=e.registry}postConstruct(){wC(this.focusWrapper,2);const e=Nn(s=>this.advFilterExpSvc.translate(s),this.gos.get("advancedFilterBuilderParams")?.addSelectWidth),t=this.createManagedBean(new Ln(e));this.addManagedListeners(t,{fieldPickerValueSelected:({value:s})=>{this.dispatchLocalEvent({type:"advancedFilterBuilderAdded",item:this.item,isJoin:s.key==="join"})}}),this.eItem.appendChild(t.getGui()),this.createOptionalManagedBean(this.registry.createDynamicBean("tooltipFeature",!1,{getGui:()=>t.getGui(),getLocation:()=>"advancedFilter",getTooltipValue:()=>this.advFilterExpSvc.translate("advancedFilterBuilderAddButtonTooltip")})),this.createManagedBean(new On(this.getGui(),this.focusWrapper,t)),bC(this.focusWrapper,this.advFilterExpSvc.translate("ariaAdvancedFilterBuilderItem",[this.advFilterExpSvc.translate("advancedFilterBuilderAddButtonTooltip"),`${this.item.level+1}`]))}afterAdd(){}};import{DragSourceType as bv,KeyCode as Zi,RefPlaceholder as Oe,TabGuardComp as wv,_createElement as Bn,_createIconNoSpan as _t,_removeAriaExpanded as xv,_setAriaDisabled as _n,_setAriaExpanded as Vn,_setAriaLabel as Ds,_setAriaLevel as Mv,_setDisplayed as Ls,_setVisible as Tv,_stopPropagationForAgGrid as Ji}from"ag-grid-community";import{Component as Fv,_exists as Vt,_removeFromParent as Pv,_toStringOrNull as Av}from"ag-grid-community";var Rv=class extends Fv{constructor(){super({tag:"div",cls:"ag-advanced-filter-builder-item-condition",role:"presentation"}),this.validationMessage=null}wireBeans(e){this.advFilterExpSvc=e.advFilterExpSvc}init(e){const{item:t,createPill:s}=e;this.item=t,this.createPill=s,this.filterModel=t.filterModel,this.setupColumnCondition(this.filterModel),this.validate(),this.addDestroyFunc(()=>this.destroyBeans([this.eColumnPill,this.eOperatorPill,this.eOperandPill]))}getDragName(){return this.filterModel.colId?this.advFilterExpSvc.parseColumnFilterModel(this.filterModel):this.getDefaultColumnDisplayValue()}getAriaLabel(){return`${this.advFilterExpSvc.translate("ariaAdvancedFilterBuilderFilterItem")} ${this.getDragName()}`}getValidationMessage(){return this.validationMessage}getFocusableElement(){return this.eColumnPill.getFocusableElement()}setupColumnCondition(e){const t=this.advFilterExpSvc.getColumnDetails(e.colId);this.baseCellDataType=t.baseCellDataType,this.column=t.column,this.numOperands=this.getNumOperands(this.getOperatorKey()),this.eColumnPill=this.createPill({key:this.getColumnKey(),displayValue:this.getColumnDisplayValue()??this.getDefaultColumnDisplayValue(),cssClass:"ag-advanced-filter-builder-column-pill",isSelect:!0,getEditorParams:()=>({values:this.advFilterExpSvc.getColumnAutocompleteEntries()}),update:s=>this.setColumnKey(s),pickerAriaLabelKey:"ariaLabelAdvancedFilterBuilderColumnSelectField",pickerAriaLabelValue:"Advanced Filter Builder Column Select Field",ariaLabel:this.advFilterExpSvc.translate("ariaAdvancedFilterBuilderColumn")}),this.getGui().appendChild(this.eColumnPill.getGui()),Vt(this.getColumnKey())&&(this.createOperatorPill(),this.hasOperand()&&this.createOperandPill())}createOperatorPill(){this.eOperatorPill=this.createPill({key:this.getOperatorKey(),displayValue:this.getOperatorDisplayValue()??this.getDefaultOptionSelectValue(),cssClass:"ag-advanced-filter-builder-option-pill",isSelect:!0,getEditorParams:()=>({values:this.getOperatorAutocompleteEntries()}),update:e=>this.setOperatorKey(e),pickerAriaLabelKey:"ariaLabelAdvancedFilterBuilderOptionSelectField",pickerAriaLabelValue:"Advanced Filter Builder Option Select Field",ariaLabel:this.advFilterExpSvc.translate("ariaAdvancedFilterBuilderOption")}),this.eColumnPill.getGui().insertAdjacentElement("afterend",this.eOperatorPill.getGui())}createOperandPill(){const{filter:e}=this.filterModel,t=(typeof e=="number"?Av(e):e)??"";this.eOperandPill=this.createPill({key:t,valueFormatter:s=>this.advFilterExpSvc.getOperandDisplayValue({...this.filterModel,filter:s},!0),baseCellDataType:this.baseCellDataType,cssClass:"ag-advanced-filter-builder-value-pill",isSelect:!1,update:s=>this.setOperand(s),ariaLabel:this.advFilterExpSvc.translate("ariaAdvancedFilterBuilderValue")}),this.getGui().appendChild(this.eOperandPill.getGui())}getColumnKey(){return this.filterModel.colId}getColumnDisplayValue(){return this.advFilterExpSvc.getColumnDisplayValue(this.filterModel)}getOperatorKey(){return this.filterModel.type}getOperatorDisplayValue(){return this.advFilterExpSvc.getOperatorDisplayValue(this.filterModel)}getOperandDisplayValue(){return this.advFilterExpSvc.getOperandDisplayValue(this.filterModel,!0)}hasOperand(){return this.numOperands>0}getOperatorAutocompleteEntries(){return this.column?this.advFilterExpSvc.getOperatorAutocompleteEntries(this.column,this.baseCellDataType):[]}setColumnKey(e){this.eOperatorPill||this.createOperatorPill();const t=this.advFilterExpSvc.getColumnDetails(e);this.column=t.column;const s=t.baseCellDataType;this.baseCellDataType!==s&&(this.baseCellDataType=s,this.setOperatorKey(void 0),this.eOperatorPill&&(Pv(this.eOperatorPill.getGui()),this.destroyBean(this.eOperatorPill),this.createOperatorPill()),this.validate()),this.filterModel.colId=e,this.filterModel.filterType=this.baseCellDataType}setOperatorKey(e){const t=this.getNumOperands(e);t!==this.numOperands&&(this.numOperands=t,t===0?this.destroyOperandPill():(this.createOperandPill(),this.baseCellDataType!=="number"&&this.setOperand(""))),this.filterModel.type=e,this.validate()}setOperand(e){let t=e;this.baseCellDataType==="number"&&(t=Vt(e)?Number(e):""),this.filterModel.filter=t,this.validate()}getNumOperands(e){return this.advFilterExpSvc.getExpressionOperator(this.baseCellDataType,e)?.numOperands??0}destroyOperandPill(){delete this.filterModel.filter,this.getGui().removeChild(this.eOperandPill.getGui()),this.destroyBean(this.eOperandPill),this.eOperandPill=void 0}validate(){let e=null;Vt(this.getColumnKey())?Vt(this.getOperatorKey())?this.numOperands>0&&!Vt(this.getOperandDisplayValue())&&(e=this.advFilterExpSvc.translate("advancedFilterBuilderValidationEnterValue")):e=this.advFilterExpSvc.translate("advancedFilterBuilderValidationSelectOption"):e=this.advFilterExpSvc.translate("advancedFilterBuilderValidationSelectColumn"),this.item.valid=!e,e!==this.validationMessage&&(this.validationMessage=e,this.dispatchLocalEvent({type:"advancedFilterBuilderValidChanged"}))}getDefaultColumnDisplayValue(){return this.advFilterExpSvc.translate("advancedFilterBuilderSelectColumn")}getDefaultOptionSelectValue(){return this.advFilterExpSvc.translate("advancedFilterBuilderSelectOption")}};import{AgInputDateField as Ev,AgInputNumberField as Iv,AgInputTextField as Dv,Component as Lv,KeyCode as Qi,RefPlaceholder as Hn,_exists as kv,_setAriaDescribedBy as Gv,_setAriaLabel as Ov,_setDisplayed as zn,_stopPropagationForAgGrid as er}from"ag-grid-community";var Nv={tag:"div",cls:"ag-advanced-filter-builder-pill-wrapper",role:"presentation",children:[{tag:"div",ref:"ePill",cls:"ag-advanced-filter-builder-pill",role:"button",children:[{tag:"span",ref:"eLabel",cls:"ag-advanced-filter-builder-pill-display"}]}]},Bv=class extends Lv{constructor(e){super(Nv),this.params=e,this.ePill=Hn,this.eLabel=Hn;const{value:t,valueFormatter:s}=e;this.value=t,this.displayValue=s(t)}wireBeans(e){this.advFilterExpSvc=e.advFilterExpSvc}postConstruct(){const{cssClass:e,ariaLabel:t}=this.params;this.ePill.classList.add(e),this.activateTabIndex([this.ePill]),this.eLabel.id=`${this.getCompId()}`,Gv(this.ePill,this.eLabel.id),Ov(this.ePill,t),this.renderValue(),this.addManagedListeners(this.ePill,{click:s=>{s.preventDefault(),this.showEditor()},keydown:s=>{switch(s.key){case Qi.ENTER:s.preventDefault(),er(s),this.showEditor();break}}}),this.addDestroyFunc(()=>this.destroyBean(this.eEditor))}getFocusableElement(){return this.ePill}showEditor(){if(this.eEditor)return;zn(this.ePill,!1),this.eEditor=this.createEditorComp(this.params.type),this.eEditor.setValue(this.value);const e=this.eEditor.getGui();this.eEditor.addManagedElementListeners(e,{keydown:t=>{switch(t.key){case Qi.ENTER:t.preventDefault(),er(t),this.updateValue(!0);break;case Qi.ESCAPE:t.preventDefault(),er(t),this.hideEditor(!0);break}},focusout:()=>this.updateValue(!1)}),this.getGui().appendChild(e),this.eEditor.getFocusableElement().focus()}createEditorComp(e){let t;switch(e){case"text":t=new Dv;break;case"number":t=new Iv;break;case"date":t=new Ev;break}return this.createBean(t)}hideEditor(e){const{eEditor:t}=this;t&&(this.eEditor=void 0,this.getGui().removeChild(t.getGui()),this.destroyBean(t),zn(this.ePill,!0),e&&this.ePill.focus())}renderValue(){let e;const{displayValue:t,eLabel:s}=this,{classList:i}=s;i.remove("ag-advanced-filter-builder-value-empty","ag-advanced-filter-builder-value-number","ag-advanced-filter-builder-value-text"),kv(t)?this.params.type==="number"?(e=t,i.add("ag-advanced-filter-builder-value-number")):(e=`"${t}"`,i.add("ag-advanced-filter-builder-value-text")):(e=this.advFilterExpSvc.translate("advancedFilterBuilderEnterValue"),i.add("ag-advanced-filter-builder-value-empty")),s.innerText=e}updateValue(e){if(!this.eEditor)return;const t=this.eEditor.getValue()??"";this.dispatchLocalEvent({type:"fieldValueChanged",value:t}),this.value=t,this.displayValue=this.params.valueFormatter(t),this.renderValue(),this.hideEditor(e)}};import{Component as _v}from"ag-grid-community";var Vv=class extends _v{wireBeans(e){this.advFilterExpSvc=e.advFilterExpSvc}constructor(){super({tag:"div",cls:"ag-advanced-filter-builder-item-condition",role:"presentation"})}init(e){const{item:t,createPill:s}=e,i=t.filterModel;this.filterModel=i,this.ePill=s({key:i.type,displayValue:this.advFilterExpSvc.parseJoinOperator(i),cssClass:"ag-advanced-filter-builder-join-pill",isSelect:!0,getEditorParams:()=>({values:this.advFilterExpSvc.getJoinOperatorAutocompleteEntries()}),update:r=>i.type=r,pickerAriaLabelKey:"ariaLabelAdvancedFilterBuilderJoinSelectField",pickerAriaLabelValue:"Advanced Filter Builder Join Operator Select Field",ariaLabel:this.advFilterExpSvc.translate("ariaAdvancedFilterBuilderJoinOperator")}),this.getGui().appendChild(this.ePill.getGui()),this.addDestroyFunc(()=>this.destroyBean(this.ePill))}getDragName(){return this.advFilterExpSvc.parseJoinOperator(this.filterModel)}getAriaLabel(){return`${this.advFilterExpSvc.translate("ariaAdvancedFilterBuilderGroupItem")} ${this.getDragName()}`}getValidationMessage(){return null}getFocusableElement(){return this.ePill.getFocusableElement()}};import{AgInputTextFieldSelector as Hv,_setAriaLabel as zv,_setAriaLabelledBy as Uv,_stopPropagationForAgGrid as Kv}from"ag-grid-community";var Wv={tag:"div",cls:"ag-picker-field ag-advanced-filter-builder-pill-wrapper",role:"presentation",children:[{tag:"div",ref:"eLabel"},{tag:"div",ref:"eWrapper",cls:"ag-wrapper ag-advanced-filter-builder-pill ag-picker-collapsed",children:[{tag:"div",ref:"eDisplayField",cls:"ag-picker-field-display ag-advanced-filter-builder-pill-display"},{tag:"ag-input-text-field",ref:"eInput",cls:"ag-rich-select-field-input"},{tag:"span",ref:"eDeselect",cls:"ag-rich-select-deselect-button ag-picker-field-icon",role:"presentation"},{tag:"div",ref:"eIcon",cls:"ag-picker-field-icon",attrs:{"aria-hidden":"true"}}]}]},jv=class extends qi{constructor(e){super({...e,template:Wv,agComponents:[Hv]}),this.params=e}getFocusableElement(){return this.eWrapper}showPicker(){setTimeout(()=>super.showPicker())}hidePicker(){setTimeout(()=>super.hidePicker())}postConstruct(){super.postConstruct();const{wrapperClassName:e,ariaLabel:t}=this.params;this.eWrapper.classList.add(e),Uv(this.eWrapper,""),zv(this.eWrapper,t)}createPickerComponent(){if(!this.values){const{values:e}=this.params.getEditorParams();this.values=e;const t=this.value.key,s=e.find(i=>i.key===t)??{key:t,displayValue:this.value.displayValue};this.value=s}return super.createPickerComponent()}onEnterKeyDown(e){Kv(e),this.isPickerDisplayed?super.onEnterKeyDown(e):(e.preventDefault(),this.showPicker())}},$v={tag:"div",cls:"ag-advanced-filter-builder-item-wrapper",role:"presentation",children:[{tag:"div",cls:"ag-advanced-filter-builder-item",role:"presentation",children:[{tag:"div",ref:"eTreeLines",cls:"ag-advanced-filter-builder-item-tree-lines",attrs:{"aria-hidden":"true"}},{tag:"span",ref:"eDragHandle",cls:"ag-drag-handle",attrs:{"aria-hidden":"true"}},{tag:"span",ref:"eValidation",cls:"ag-advanced-filter-builder-item-button ag-advanced-filter-builder-invalid",attrs:{"aria-hidden":"true"}}]},{tag:"div",ref:"eButtons",cls:"ag-advanced-filter-builder-item-buttons",children:[{tag:"span",ref:"eMoveUpButton",cls:"ag-advanced-filter-builder-item-button",role:"button"},{tag:"span",ref:"eMoveDownButton",cls:"ag-advanced-filter-builder-item-button",role:"button"},{tag:"div",ref:"eAddButton",role:"presentation"},{tag:"span",ref:"eRemoveButton",cls:"ag-advanced-filter-builder-item-button",role:"button"}]}]},tr=class extends wv{constructor(e,t,s){super($v),this.item=e,this.dragFeature=t,this.focusWrapper=s,this.eTreeLines=Oe,this.eDragHandle=Oe,this.eButtons=Oe,this.eValidation=Oe,this.eMoveUpButton=Oe,this.eMoveDownButton=Oe,this.eAddButton=Oe,this.eRemoveButton=Oe,this.moveUpDisabled=!1,this.moveDownDisabled=!1}wireBeans(e){this.dragAndDrop=e.dragAndDrop,this.advFilterExpSvc=e.advFilterExpSvc,this.registry=e.registry}postConstruct(){const{filterModel:e,level:t,showMove:s}=this.item,i=e.filterType==="join";if(this.ePillWrapper=this.createManagedBean(i?new Vv:new Rv),this.ePillWrapper.init({item:this.item,createPill:r=>this.createPill(r)}),this.eDragHandle.insertAdjacentElement("afterend",this.ePillWrapper.getGui()),t===0){const r=Bn({tag:"div",cls:"ag-advanced-filter-builder-item-tree-line-vertical-bottom ag-advanced-filter-builder-item-tree-line-root"});this.eTreeLines.appendChild(r),Ls(this.eDragHandle,!1),Ls(this.eButtons,!1),Vn(this.focusWrapper,!0)}else this.setupTreeLines(t),this.eDragHandle.appendChild(_t("advancedFilterBuilderDrag",this.beans)),this.setupValidation(),this.setupMoveButtons(s),this.setupAddButton(),this.setupRemoveButton(),this.setupDragging(),this.updateAriaExpanded();Mv(this.focusWrapper,t+1),this.initialiseTabGuard({}),this.createManagedBean(new On(this.getGui(),this.focusWrapper,this.ePillWrapper)),this.updateAriaLabel(),this.addManagedListeners(this.ePillWrapper,{advancedFilterBuilderValueChanged:()=>this.dispatchLocalEvent({type:"advancedFilterBuilderValueChanged"}),advancedFilterBuilderValidChanged:()=>this.updateValidity()})}setState(e){const{level:t}=this.item;if(t===0)return;const{showMove:s}=this.item,{disableMoveUp:i,disableMoveDown:r,treeLines:a,showStartTreeLine:n}=e;this.updateTreeLines(a,n),this.updateAriaExpanded(),s&&(this.moveUpDisabled=!!i,this.moveDownDisabled=!!r,this.eMoveUpButton.classList.toggle("ag-advanced-filter-builder-item-button-disabled",i),this.eMoveDownButton.classList.toggle("ag-advanced-filter-builder-item-button-disabled",r),_n(this.eMoveUpButton,!!i),_n(this.eMoveDownButton,!!r),this.moveUpTooltipFeature?.refreshTooltip(),this.moveDownTooltipFeature?.refreshTooltip())}focusMoveButton(e){(e?this.eMoveUpButton:this.eMoveDownButton).focus()}afterAdd(){this.ePillWrapper.getFocusableElement().focus()}setupTreeLines(e){for(let t=0;t<e;t++)this.eTreeLines.appendChild(Bn({tag:"div"}))}updateTreeLines(e,t){const s=e.length-1,{children:i}=this.eTreeLines;for(let a=0;a<s;a++){const n=i.item(a);n&&n.classList.toggle("ag-advanced-filter-builder-item-tree-line-vertical",!e[a])}const r=i.item(s);if(r){r.classList.add("ag-advanced-filter-builder-item-tree-line-horizontal");const a=e[s];r.classList.toggle("ag-advanced-filter-builder-item-tree-line-vertical-top",a),r.classList.toggle("ag-advanced-filter-builder-item-tree-line-vertical",!a)}this.eDragHandle.classList.toggle("ag-advanced-filter-builder-item-tree-line-vertical-bottom",t)}setupValidation(){this.eValidation.appendChild(_t("advancedFilterBuilderInvalid",this.beans)),this.validationTooltipFeature=this.createOptionalManagedBean(this.registry.createDynamicBean("tooltipFeature",!1,{getGui:()=>this.eValidation,getLocation:()=>"advancedFilter",getTooltipValue:()=>this.ePillWrapper.getValidationMessage(),getTooltipShowDelayOverride:()=>1e3})),this.updateValidity()}setupAddButton(){const e=Nn(s=>this.advFilterExpSvc.translate(s),this.gos.get("advancedFilterBuilderParams")?.addSelectWidth),t=this.createManagedBean(new Ln(e));this.addManagedListeners(t,{fieldPickerValueSelected:({value:s})=>this.dispatchLocalEvent({type:"advancedFilterBuilderAdded",item:this.item,isJoin:s.key==="join"})}),this.eAddButton.appendChild(t.getGui()),this.createOptionalManagedBean(this.registry.createDynamicBean("tooltipFeature",!1,{getGui:()=>this.eAddButton,getLocation:()=>"advancedFilter",getTooltipValue:()=>this.advFilterExpSvc.translate("advancedFilterBuilderAddButtonTooltip")}))}setupRemoveButton(){this.eRemoveButton.appendChild(_t("advancedFilterBuilderRemove",this.beans)),this.addManagedListeners(this.eRemoveButton,{click:()=>this.removeItem(),keydown:e=>{switch(e.key){case Zi.ENTER:e.preventDefault(),Ji(e),this.removeItem();break}}}),this.createOptionalManagedBean(this.registry.createDynamicBean("tooltipFeature",!1,{getGui:()=>this.eRemoveButton,getLocation:()=>"advancedFilter",getTooltipValue:()=>this.advFilterExpSvc.translate("advancedFilterBuilderRemoveButtonTooltip")})),Ds(this.eRemoveButton,this.advFilterExpSvc.translate("advancedFilterBuilderRemoveButtonTooltip")),this.activateTabIndex([this.eRemoveButton])}setupMoveButtons(e){e?(this.eMoveUpButton.appendChild(_t("advancedFilterBuilderMoveUp",this.beans)),this.addManagedListeners(this.eMoveUpButton,{click:()=>this.moveItem(!0),keydown:t=>{switch(t.key){case Zi.ENTER:t.preventDefault(),Ji(t),this.moveItem(!0);break}}}),this.moveUpTooltipFeature=this.createOptionalManagedBean(this.registry.createDynamicBean("tooltipFeature",!1,{getGui:()=>this.eMoveUpButton,getLocation:()=>"advancedFilter",getTooltipValue:()=>this.moveUpDisabled?null:this.advFilterExpSvc.translate("advancedFilterBuilderMoveUpButtonTooltip")})),Ds(this.eMoveUpButton,this.advFilterExpSvc.translate("advancedFilterBuilderMoveUpButtonTooltip")),this.eMoveDownButton.appendChild(_t("advancedFilterBuilderMoveDown",this.beans)),this.addManagedListeners(this.eMoveDownButton,{click:()=>this.moveItem(!1),keydown:t=>{switch(t.key){case Zi.ENTER:t.preventDefault(),Ji(t),this.moveItem(!1);break}}}),this.moveDownTooltipFeature=this.createOptionalManagedBean(this.registry.createDynamicBean("tooltipFeature",!1,{getGui:()=>this.eMoveDownButton,getLocation:()=>"advancedFilter",getTooltipValue:()=>this.moveDownDisabled?null:this.advFilterExpSvc.translate("advancedFilterBuilderMoveDownButtonTooltip")})),Ds(this.eMoveDownButton,this.advFilterExpSvc.translate("advancedFilterBuilderMoveDownButtonTooltip")),this.activateTabIndex([this.eMoveUpButton,this.eMoveDownButton])):(Ls(this.eMoveUpButton,!1),Ls(this.eMoveDownButton,!1))}updateValidity(){Tv(this.eValidation,!this.item.valid),this.validationTooltipFeature?.refreshTooltip(),this.updateAriaLabel()}createPill(e){const{key:t,cssClass:s,update:i,ariaLabel:r}=e,a=n=>{n!=null&&(i(n),this.dispatchLocalEvent({type:"advancedFilterBuilderValueChanged"}))};if(e.isSelect){const{getEditorParams:n,pickerAriaLabelKey:o,pickerAriaLabelValue:l,displayValue:c}=e,d=this.gos.get("advancedFilterBuilderParams"),h=`${d?.pillSelectMinWidth??140}px`,u=`${d?.pillSelectMaxWidth??200}px`,p=this.createBean(new jv({pickerAriaLabelKey:o,pickerAriaLabelValue:l,pickerType:"ag-list",value:{key:t,displayValue:c},valueFormatter:g=>g==null?"":g.displayValue??g.key,variableWidth:!0,minPickerWidth:h,maxPickerWidth:u,getEditorParams:n,wrapperClassName:s,ariaLabel:r,pickerIcon:"advancedFilterBuilderSelectOpen"}));return this.addManagedListeners(p,{fieldPickerValueSelected:({value:g})=>a(g?.key)}),p}else{const{baseCellDataType:n,valueFormatter:o}=e,l=this.createBean(new Bv({value:t,valueFormatter:o,cssClass:s,type:this.getInputType(n),ariaLabel:r}));return this.addManagedListeners(l,{fieldValueChanged:({value:c})=>a(c)}),l}}getInputType(e){switch(e){case"text":case"object":case"boolean":return"text";case"number":return"number";case"date":case"dateString":return"date"}}setupDragging(){const e={type:bv.AdvancedFilterBuilder,eElement:this.eDragHandle,dragItemName:()=>this.ePillWrapper.getDragName(),getDefaultIconName:()=>"notAllowed",getDragItem:()=>({}),onDragStarted:()=>this.dragFeature.dispatchLocalEvent({type:"advancedFilterBuilderDragStarted",item:this.item}),onDragStopped:()=>this.dragFeature.dispatchLocalEvent({type:"advancedFilterBuilderDragEnded"})};this.dragAndDrop.addDragSource(e,!0),this.addDestroyFunc(()=>this.dragAndDrop.removeDragSource(e))}updateAriaLabel(){const e=this.ePillWrapper.getAriaLabel(),t=`${this.item.level+1}`,s=this.ePillWrapper.getValidationMessage();let i;s?i=this.advFilterExpSvc.translate("ariaAdvancedFilterBuilderItemValidation",[e,t,s]):i=this.advFilterExpSvc.translate("ariaAdvancedFilterBuilderItem",[e,t]),Ds(this.focusWrapper,i)}updateAriaExpanded(){xv(this.focusWrapper);const{filterModel:e}=this.item;e?.filterType==="join"&&e.conditions.length&&Vn(this.focusWrapper,!0)}removeItem(){this.dispatchLocalEvent({type:"advancedFilterBuilderRemoved",item:this.item})}moveItem(e){this.dispatchLocalEvent({type:"advancedFilterBuilderMoved",item:this.item,backwards:e})}},Yv={tag:"div",cls:"ag-advanced-filter-builder",role:"presentation",attrs:{tabindex:"-1"},children:[{tag:"div",ref:"eList",cls:"ag-advanced-filter-builder-list",role:"presentation"},{tag:"div",cls:"ag-advanced-filter-builder-button-panel",role:"presentation",children:[{tag:"button",ref:"eApplyFilterButton",cls:"ag-button ag-standard-button ag-advanced-filter-builder-apply-button"},{tag:"button",ref:"eCancelFilterButton",cls:"ag-button ag-standard-button ag-advanced-filter-builder-cancel-button"}]}]},Xv=class extends hC{constructor(){super(Yv),this.eList=$i,this.eApplyFilterButton=$i,this.eCancelFilterButton=$i,this.validationMessage=null}wireBeans(e){this.filterManager=e.filterManager,this.advancedFilter=e.advancedFilter,this.advFilterExpSvc=e.advFilterExpSvc,this.registry=e.registry}postConstruct(){const{showMoveButtons:e}=this.gos.get("advancedFilterBuilderParams")??{};this.showMove=!!e,this.addManagedPropertyListener("advancedFilterBuilderParams",({currentValue:t})=>{this.showMove=!!t?.showMoveButtons,this.refreshList(!1)}),this.filterModel=this.setupFilterModel(),this.setupVirtualList(),this.dragFeature=this.createManagedBean(new vC(this,this.virtualList)),this.setupButtons()}refresh(){const e=this.virtualList;let t=e.getLastFocusedRow();this.setupFilterModel(),this.validateItems(),this.refreshList(!1),t!=null&&(e.getComponentAt(t)||(t=0),e.focusRow(t))}getNumItems(){return this.items.length}moveItem(e,t){!t||!e||this.moveItemToIndex(e,t.rowIndex,t.position)}afterGuiAttached(){this.virtualList.awaitStable(()=>this.virtualList.focusRow(0))}setupVirtualList(){const e=this.virtualList=this.createManagedBean(new ut({cssIdentifier:"advanced-filter-builder",ariaRole:"tree",listName:this.advFilterExpSvc.translate("ariaAdvancedFilterBuilderList"),moveItemCallback:this.virtualListMoveItemCallback.bind(this)}));e.setComponentCreator(this.createItemComponent.bind(this)),e.setComponentUpdater(this.updateItemComponent.bind(this)),e.setRowHeight(40),this.eList.appendChild(e.getGui()),e.setModel({getRowCount:()=>this.items?.length||0,getRow:t=>this.items[t],areRowsEqual:(t,s)=>t===s}),this.buildList(),e.refresh()}setupButtons(){this.eApplyFilterButton.innerText=this.advFilterExpSvc.translate("advancedFilterBuilderApply"),this.activateTabIndex([this.eApplyFilterButton]),this.addManagedElementListeners(this.eApplyFilterButton,{click:()=>{this.advancedFilter.setModel(this.filterModel),this.filterManager?.onFilterChanged({source:"advancedFilter"}),this.close()}}),this.validationTooltipFeature=this.createOptionalManagedBean(this.registry.createDynamicBean("tooltipFeature",!1,{getGui:()=>this.eApplyFilterButton,getLocation:()=>"advancedFilter",getTooltipValue:()=>this.validationMessage,getTooltipShowDelayOverride:()=>1e3})),this.validate();const e=t=>this.addOrRemoveCssClass("ag-advanced-filter-builder-validation",t);this.addManagedListeners(this.eApplyFilterButton,{mouseenter:()=>e(!0),mouseleave:()=>e(!1)}),this.eCancelFilterButton.innerText=this.advFilterExpSvc.translate("advancedFilterBuilderCancel"),this.activateTabIndex([this.eCancelFilterButton]),this.addManagedElementListeners(this.eCancelFilterButton,{click:()=>this.close()})}removeItemFromParent(e){const t=e.parent.conditions.indexOf(e.filterModel);return e.parent.conditions.splice(t,1),t}moveItemToIndex(e,t,s){const i=this.items[t],r=i.filterModel?.filterType==="join"&&s==="bottom",a=r?i.filterModel:i.parent;if(!a||this.isChildOrSelf(a,e.filterModel)||i===e)return;this.removeItemFromParent(e);let n;r?n=0:(n=a.conditions.indexOf(i.filterModel),n===-1?n=a.conditions.length:s==="bottom"&&(n+=1)),a.conditions.splice(n,0,e.filterModel),this.refreshList(!1)}isChildOrSelf(e,t){return e===t||t.filterType==="join"&&t.conditions.some(s=>this.isChildOrSelf(e,s))}setupFilterModel(){const e=this.formatFilterModel(this.advancedFilter.getModel());return this.stringifiedModel=JSON.stringify(e),e}formatFilterModel(e){return e=e??{filterType:"join",type:"AND",conditions:[]},e.filterType!=="join"&&(e={filterType:"join",type:"AND",conditions:[e]}),e}buildList(){const e=(t,s,i,r)=>{s.push({filterModel:t,level:i,parent:r,valid:!0,showMove:this.showMove}),t.filterType==="join"&&(t.conditions.forEach(a=>e(a,s,i+1,t)),i===0&&s.push({filterModel:null,level:i+1,parent:t,valid:!0}))};this.items=[],e(this.filterModel,this.items,0)}refreshList(e){if(!e){const t=[];this.items.forEach(s=>{s.valid||t.push(s.filterModel)}),this.buildList(),t.length&&this.items.forEach(s=>{s.filterModel&&t.includes(s.filterModel)&&(s.valid=!1)})}this.virtualList.refresh(e),this.validate()}updateItemComponent(e,t){const s=this.items.indexOf(e),i=(o,l)=>{const d=this.items.find(h=>h.filterModel===o)?.parent;if(d){const{conditions:h}=d;i(d,l),l.push(h[h.length-1]===o)}},r=[],{filterModel:a}=e;a&&(i(a,r),r[0]=!1);const n=a?.filterType==="join"&&!!a.conditions.length;t.setState({disableMoveUp:s===1,disableMoveDown:!this.canMoveDown(e,s),treeLines:r,showStartTreeLine:n})}createItemComponent(e,t){const s=this.createBean(e.filterModel?new tr(e,this.dragFeature,t):new Sv(e,t));return s.addManagedListeners(s,{advancedFilterBuilderRemoved:({item:i})=>this.removeItem(i),advancedFilterBuilderValueChanged:()=>this.validate(),advancedFilterBuilderAdded:({item:i,isJoin:r})=>this.addItem(i,r),advancedFilterBuilderMoved:({item:i,backwards:r})=>this.moveItemUpDown(i,r)}),s instanceof tr&&this.updateItemComponent(e,s),s}addItem(e,t){const{parent:s,level:i,filterModel:r}=e,a=r?.filterType==="join",n=t?{filterType:"join",type:"AND",conditions:[]}:{},o=a?r:s;let l=a?0:o.conditions.indexOf(r);l>=0?(a||(l+=1),o.conditions.splice(l,0,n)):o.conditions.push(n);let c=this.items.indexOf(e);const d=c>=0;if(d){e.filterModel&&c++;const h=[{filterModel:n,level:a?i+1:i,parent:o,valid:t,showMove:this.showMove}];this.items.splice(c,0,...h)}this.refreshList(d),d&&this.virtualList.getComponentAt(c)?.afterAdd()}removeItem(e){const t=e.parent,{filterModel:s}=e,i=t.conditions.indexOf(s);t.conditions.splice(i,1);const r=e.filterModel?.filterType==="join",a=this.items.indexOf(e),n=!r&&a>=0;n&&this.items.splice(a,1),this.refreshList(n),a>=0&&this.virtualList.focusRow(a)}moveItemUpDown(e,t,s){const i=this.items.indexOf(e),r=t?i-1:i+1;if(r===0||!t&&!this.canMoveDown(e,i))return;const a=this.items[r],n=this.removeItemFromParent(e),{level:o,filterModel:l,parent:c}=e,{level:d,filterModel:h,parent:u}=a;if(t)if(d===o&&h.filterType==="join")h.conditions.push(l);else if(d<=o){const m=u.conditions.indexOf(h);u.conditions.splice(m,0,l)}else c.conditions[n-1].conditions.push(l);else if(d===o)if(h.filterType==="join")h.conditions.splice(0,0,l);else{const m=u.conditions.indexOf(h);u.conditions.splice(m+1,0,l)}else if(n<c.conditions.length)c.conditions.splice(n+1,0,l);else{const m=this.items.find(C=>C.filterModel===c),f=m.parent.conditions.indexOf(m.filterModel)+1;m.parent.conditions.splice(f,0,l)}this.refreshList(!1);const p=this.items.findIndex(({filterModel:m})=>m===l);if(p<0)return;const g=this.virtualList.getComponentAt(p);g instanceof tr&&(s||g.focusMoveButton(t))}virtualListMoveItemCallback(e,t){const s=e.item,i=this.items.indexOf(s);i<=0||i===this.items.length-1||t&&i===1||!t&&!this.canMoveDown(s,i)||(this.moveItemUpDown(s,t,!0),this.virtualList.focusRow(i+(t?-1:1)))}canMoveDown(e,t){return!(e.level===1&&t===this.items.length-2||e.level===1&&e.parent.conditions[e.parent.conditions.length-1]===e.filterModel)}close(){this.advancedFilter.getCtrl().toggleFilterBuilder({source:"ui"})}validate(){let e=!this.items.every(({valid:t})=>t);e?this.validationMessage=this.advFilterExpSvc.translate("advancedFilterBuilderValidationIncomplete"):(e=JSON.stringify(this.filterModel)===this.stringifiedModel,e?this.validationMessage=this.advFilterExpSvc.translate("advancedFilterBuilderValidationAlreadyApplied"):this.validationMessage=null),pC(this.eApplyFilterButton,e),this.validationTooltipFeature?.refreshTooltip()}validateItems(){const e=s=>{s.type=void 0},t=s=>{delete s.filter};this.items.forEach(s=>{if(!s.valid||!s.filterModel||s.filterModel.filterType==="join")return;const{filterModel:i}=s,{colId:r}=i,a=this.advFilterExpSvc.getColumnAutocompleteEntries().find(({key:c})=>c===r),n=this.advFilterExpSvc.getColumnDetails(i.colId);if(!a||!n.column){s.valid=!1,i.colId=void 0,e(i),t(i);return}const l=this.advFilterExpSvc.getDataTypeExpressionOperator(n.baseCellDataType).operators[i.type];if(!l){s.valid=!1,e(i),t(i);return}if(l.numOperands>0&&!uC(i.filter)){s.valid=!1;return}})}},qv=class extends Jm{constructor(e){super(),this.enabled=e}wireBeans(e){this.ctrlsSvc=e.ctrlsSvc,this.popupSvc=e.popupSvc,this.advFilterExpSvc=e.advFilterExpSvc,this.environment=e.environment}postConstruct(){this.hasAdvancedFilterParent=!!this.gos.get("advancedFilterParent"),this.ctrlsSvc.whenReady(this,()=>this.setAdvancedFilterComp()),this.addManagedEventListeners({advancedFilterEnabledChanged:({enabled:e})=>this.onEnabledChanged(e)}),this.addManagedPropertyListener("advancedFilterParent",()=>this.updateComps()),this.addDestroyFunc(()=>{this.destroyAdvancedFilterComp(),this.destroyBean(this.eBuilderComp),this.eBuilderDialog&&this.eBuilderDialog.isAlive()&&this.destroyBean(this.eBuilderDialog)})}setupHeaderComp(e){this.eHeaderComp&&(this.eHeaderComp?.getGui().remove(),this.destroyBean(this.eHeaderComp)),this.eHeaderComp=this.createManagedBean(new dC(this.enabled&&!this.hasAdvancedFilterParent)),e.insertAdjacentElement("beforebegin",this.eHeaderComp.getGui())}focusHeaderComp(){return this.eHeaderComp?(this.eHeaderComp.getFocusableElement().focus(),!0):!1}refreshComp(){this.eFilterComp?.refresh(),this.eHeaderComp?.refresh()}refreshBuilderComp(){this.eBuilderComp?.refresh()}getHeaderHeight(){return this.eHeaderComp?.getHeight()??0}setInputDisabled(e){this.eFilterComp?.setInputDisabled(e),this.eHeaderComp?.setInputDisabled(e)}toggleFilterBuilder(e){const{source:t,force:s,eventSource:i}=e;if(s&&this.eBuilderDialog||s===!1&&!this.eBuilderDialog)return;if(this.eBuilderDialog){this.builderDestroySource=t,this.destroyBean(this.eBuilderDialog);return}this.setInputDisabled(!0);const{width:r,height:a,minWidth:n}=this.getBuilderDialogSize();this.eBuilderComp=this.createBean(new Xv),this.eBuilderDialog=this.createBean(new kt({title:this.advFilterExpSvc.translate("advancedFilterBuilderTitle"),component:this.eBuilderComp,width:r,height:a,resizable:!0,movable:!0,maximizable:!0,centered:!0,closable:!0,minWidth:n,afterGuiAttached:()=>this.eBuilderComp?.afterGuiAttached(),postProcessPopupParams:{type:"advancedFilterBuilder",eventSource:i}})),this.dispatchFilterBuilderVisibleChangedEvent(t,!0),this.eBuilderDialog.addEventListener("destroyed",()=>{this.destroyBean(this.eBuilderComp),this.eBuilderComp=void 0,this.eBuilderDialog=void 0,this.setInputDisabled(!1),this.dispatchLocalEvent({type:"advancedFilterBuilderClosed"}),this.dispatchFilterBuilderVisibleChangedEvent(this.builderDestroySource??"ui",!1),this.builderDestroySource=void 0})}dispatchFilterBuilderVisibleChangedEvent(e,t){this.eventSvc.dispatchEvent({type:"advancedFilterBuilderVisibleChanged",source:e,visible:t})}getBuilderDialogSize(){const e=this.gos.get("advancedFilterBuilderParams")?.minWidth??500,t=this.popupSvc.getPopupParent(),s=Math.round(ef(t))-2,i=Math.round(Qm(t)*.75)-2,r=Math.min(Math.max(600,e),s),a=Math.min(600,i);return{width:r,height:a,minWidth:e}}onEnabledChanged(e){this.enabled=e,this.updateComps()}updateComps(){this.setAdvancedFilterComp(),this.setHeaderCompEnabled(),this.eventSvc.dispatchEvent({type:"headerHeightChanged"})}setAdvancedFilterComp(){if(this.destroyAdvancedFilterComp(),!this.enabled)return;const e=this.gos.get("advancedFilterParent");if(this.hasAdvancedFilterParent=!!e,e){const t=this.createBean(new wn),s=t.getGui();this.environment.applyThemeClasses(s),s.classList.add(this.gos.get("enableRtl")?"ag-rtl":"ag-ltr"),e.appendChild(s),this.eFilterComp=t}}setHeaderCompEnabled(){this.eHeaderComp?.setEnabled(this.enabled&&!this.hasAdvancedFilterParent)}destroyAdvancedFilterComp(){this.eFilterComp&&(tf(this.eFilterComp.getGui()),this.destroyBean(this.eFilterComp))}},Zv=class{constructor(e){this.params=e,this.operators=[],this.operatorStartPositions=[],this.operatorEndPositions=[],this.activeOperator=0,this.validationError=null}parseExpression(e){this.operators.push(""),this.operatorStartPositions.push(e),this.operatorEndPositions.push(void 0);const{expression:t}=this.params;for(;e<t.length;){const s=t[e];if(s===" "){if(this.parseOperator(e-1))return this.activeOperator++,e-1;this.operators[this.activeOperator]+=s}else this.operators[this.activeOperator]+=s;e++}return this.parseOperator(e-1),e}isValid(){return!this.validationError&&(!this.operators.length||!!this.parsedOperator)}getValidationError(){return this.validationError}getFunction(){return this.parsedOperator==="OR"?"||":"&&"}getModel(){return this.parsedOperator==="OR"?"OR":"AND"}getAutocompleteListParams(e,t){let s;if(t==null)s="";else{const r=this.operators[t],a=this.operatorEndPositions[t];s=Vi(r,e,a==null?this.params.expression.length:a+1)}let i=this.params.advFilterExpSvc.getJoinOperatorAutocompleteEntries();return(t||t==null&&this.activeOperator)&&(i=i.filter(({key:r})=>r===this.parsedOperator)),this.params.advFilterExpSvc.generateAutocompleteListParams(i,"join",s)}updateExpression(e,t,s){let{expression:i}=this.params;const r=t.displayValue??t.key;if(s===0)for(let o=this.operatorEndPositions.length-1;o>0;o--){const l=this.operatorEndPositions[o];l!=null&&(i=Ge(i,this.operatorStartPositions[o],l,r).updatedValue)}const a=this.operatorStartPositions.length>s?this.operatorStartPositions[s]:e,n=(this.operatorEndPositions.length>s?this.operatorEndPositions[s]:void 0)??Hi(i,e,!0).endPosition;return Ge(i,a,n,r,!0)}getNumOperators(){return this.operators.length}getLastOperatorEndPosition(){return this.operatorEndPositions[this.operatorEndPositions.length-1]}parseOperator(e){const t=this.operators.length>this.activeOperator?this.operators[this.activeOperator]:"",s=this.params.advFilterExpSvc.getExpressionJoinOperators(),i=Ps(t,s,r=>r);if(i){this.operatorEndPositions[this.activeOperator]=e;const r=s[i];if(this.activeOperator){if(i!==this.parsedOperator)return this.validationError||(this.validationError={message:this.params.advFilterExpSvc.translate("advancedFilterValidationJoinOperatorMismatch"),startPosition:e-t.length+1,endPosition:e}),!1}else this.parsedOperator=i;return t!==r&&(zi(this.params,t,r,e),this.operators[this.activeOperator]=r),!0}else return i===null?!1:(this.validationError||(this.validationError={message:this.params.advFilterExpSvc.translate("advancedFilterValidationInvalidJoinOperator"),startPosition:e-t.length+1,endPosition:e}),!0)}},Jv=class Lh{constructor(t,s){this.params=t,this.startPosition=s,this.expectingExpression=!0,this.expectingOperator=!1,this.expressionParsers=[],this.operatorParser=new Zv(this.params),this.missingEndBracket=!1,this.extraEndBracket=!1}parseExpression(){let t=this.startPosition;const{expression:s}=this.params;for(;t<s.length;){const i=s[t];if(i==="("&&!this.expectingOperator){const r=new Lh(this.params,t+1);t=r.parseExpression(),this.expressionParsers.push(r),this.expectingExpression=!1,this.expectingOperator=!0}else{if(i===")")return this.endPosition=t-1,this.startPosition===0&&(this.extraEndBracket=!0),t;if(i!==" ")if(this.expectingExpression){const r=new Km(this.params,t);t=r.parseExpression(),this.expressionParsers.push(r),this.expectingExpression=!1,this.expectingOperator=!0}else this.expectingOperator&&(t=this.operatorParser.parseExpression(t),this.expectingOperator=!1,this.expectingExpression=!0)}t++}return this.startPosition>0&&(this.missingEndBracket=!0),t}isValid(){return!this.missingEndBracket&&!this.extraEndBracket&&this.expressionParsers.length===this.operatorParser.getNumOperators()+1&&this.operatorParser.isValid()&&this.expressionParsers.every(t=>t.isValid())}getValidationError(){const t=this.operatorParser.getValidationError();for(let i=0;i<this.expressionParsers.length;i++){const r=this.expressionParsers[i].getValidationError();if(r)return t&&t.startPosition<r.startPosition?t:r}if(t)return t;if(this.extraEndBracket)return{message:this.params.advFilterExpSvc.translate("advancedFilterValidationExtraEndBracket"),startPosition:this.endPosition+1,endPosition:this.endPosition+1};let s;return this.expressionParsers.length===this.operatorParser.getNumOperators()?s="advancedFilterValidationMissingCondition":this.missingEndBracket&&(s="advancedFilterValidationMissingEndBracket"),s?{message:this.params.advFilterExpSvc.translate(s),startPosition:this.params.expression.length,endPosition:this.params.expression.length}:null}getFunctionString(t){const s=this.expressionParsers.length>1,i=this.expressionParsers.map(r=>r.getFunctionString(t)).join(` ${this.operatorParser.getFunction()} `);return s?`(${i})`:i}getFunctionParsed(t){const s=this.operatorParser.getFunction(),i=this.expressionParsers.map(a=>a.getFunctionParsed(t)),r=s==="&&"?"every":"some";return(a,n,o)=>i[r](l=>l(a,n,o))}getAutocompleteListParams(t){if(this.endPosition!=null&&t>this.endPosition+1)return;if(!this.expressionParsers.length)return this.getColumnAutocompleteListParams();const s=this.getExpressionParserIndex(t);if(s==null)return this.params.expression[t]==="("?{enabled:!1}:this.getColumnAutocompleteListParams();const r=this.expressionParsers[s].getAutocompleteListParams(t);if(!r){if(s<this.expressionParsers.length-1)return this.operatorParser.getAutocompleteListParams(t,s);if(this.expressionParsers.length===this.operatorParser.getNumOperators()){const a=this.operatorParser.getLastOperatorEndPosition();return a==null||t<=a+1?this.operatorParser.getAutocompleteListParams(t,this.operatorParser.getNumOperators()-1):this.getColumnAutocompleteListParams()}return this.params.expression[t-1]===")"?{enabled:!1}:this.operatorParser.getAutocompleteListParams(t)}return r}updateExpression(t,s,i){const r=this.params.expression,a=this.getExpressionParserIndex(t);if(a==null){const l=i==="column"?this.params.advFilterExpSvc.getColumnValue(s):s.displayValue??s.key;return Ge(r,this.startPosition,this.startPosition,l,!0)}const o=this.expressionParsers[a].updateExpression(t,s,i);return o??(i==="column"?Ge(r,t,r.length-1,this.params.advFilterExpSvc.getColumnValue(s),!0):this.endPosition!=null&&t>this.endPosition+1?null:this.operatorParser.updateExpression(t,s,a))}getModel(){return this.expressionParsers.length>1?{filterType:"join",type:this.operatorParser.getModel(),conditions:this.expressionParsers.map(t=>t.getModel())}:this.expressionParsers[0].getModel()}getColumnAutocompleteListParams(){return this.params.advFilterExpSvc.generateAutocompleteListParams(this.params.advFilterExpSvc.getColumnAutocompleteEntries(),"column","")}getExpressionParserIndex(t){let s;for(let i=0;i<this.expressionParsers.length&&!(this.expressionParsers[i].startPosition>t);i++)s=i;return s}},Qv=class{constructor(e){this.params=e,this.valid=!1}parseExpression(){this.joinExpressionParser=new Jv(this.params,0);const e=this.joinExpressionParser.parseExpression();return this.valid=e>=this.params.expression.length-1&&this.joinExpressionParser.isValid(),this.params.expression}isValid(){return this.valid}getValidationMessage(){const e=this.joinExpressionParser.getValidationError();if(!e)return null;const{message:t,startPosition:s,endPosition:i}=e;return s<this.params.expression.length?this.params.advFilterExpSvc.translate("advancedFilterValidationMessage",[t,this.params.expression.slice(s,i+1).trim()]):this.params.advFilterExpSvc.translate("advancedFilterValidationMessageAtEnd",[t])}getFunctionString(){const e=this.createFunctionParams();return{functionString:`return ${this.joinExpressionParser.getFunctionString(e)};`,params:e}}getFunctionParsed(){const e=this.createFunctionParams();return{expressionFunction:this.joinExpressionParser.getFunctionParsed(e),params:e}}getAutocompleteListParams(e){return this.joinExpressionParser.getAutocompleteListParams(e)??{enabled:!1}}updateExpression(e,t,s){return this.joinExpressionParser.updateExpression(e,t,s)}getModel(){return this.isValid()?this.joinExpressionParser.getModel():null}createFunctionParams(){return{operands:[],operators:[],evaluatorParams:[]}}},ey=class extends $m{constructor(){super(...arguments),this.beanName="advancedFilter",this.appliedExpression=null,this.expression=null,this.isValid=!0}wireBeans(e){this.valueSvc=e.valueSvc,this.colModel=e.colModel,this.dataTypeSvc=e.dataTypeSvc,this.advFilterExpSvc=e.advFilterExpSvc,this.filterValueSvc=e.filterValueSvc}postConstruct(){this.setEnabled(this.gos.get("enableAdvancedFilter"),!0),this.ctrl=this.createManagedBean(new qv(this.enabled)),this.expressionProxy={getValue:(e,t)=>{const s=this.colModel.getColDefCol(e);return s?this.filterValueSvc.getValue(s,t):void 0}},this.addManagedPropertyListener("enableAdvancedFilter",e=>this.setEnabled(!!e.currentValue)),this.addManagedEventListeners({newColumnsLoaded:e=>this.onNewColumnsLoaded(e)}),this.addManagedPropertyListener("includeHiddenColumnsInAdvancedFilter",()=>this.updateValidity())}isEnabled(){return this.enabled}isFilterPresent(){return!!this.expressionFunction}doesFilterPass(e){return this.expressionFunction(this.expressionProxy,e,this.expressionParams)}getModel(){const e=this.createExpressionParser(this.appliedExpression);return e?.parseExpression(),e?.getModel()??null}setModel(e){const t=(i,r)=>{if(i.filterType==="join"){const a=this.advFilterExpSvc.parseJoinOperator(i),n=i.conditions.map(o=>t(o)).filter(o=>Ym(o)).join(` ${a} `);return r||i.conditions.length<=1?n:`(${n})`}else return this.advFilterExpSvc.parseColumnFilterModel(i)},s=e?t(e,!0):null;this.setExpressionDisplayValue(s),this.applyExpression(),this.ctrl.refreshComp(),this.ctrl.refreshBuilderComp()}getExpressionDisplayValue(){return this.expression}setExpressionDisplayValue(e){this.expression=e}isCurrentExpressionApplied(){return this.appliedExpression===this.expression}createExpressionParser(e){return e?new Qv({expression:e,colModel:this.colModel,dataTypeSvc:this.dataTypeSvc,valueSvc:this.valueSvc,advFilterExpSvc:this.advFilterExpSvc}):null}getDefaultExpression(e){const t=this.advFilterExpSvc.getColumnValue(e)+" ";return{updatedValue:t,updatedPosition:t.length}}isHeaderActive(){return!this.gos.get("advancedFilterParent")}getCtrl(){return this.ctrl}setEnabled(e,t){const s=this.enabled,i=Xm(this.gos)||qm(this.gos);e&&!i&&Zm(123),this.enabled=e&&i,!t&&this.enabled!==s&&this.eventSvc.dispatchEvent({type:"advancedFilterEnabledChanged",enabled:this.enabled})}applyExpression(){const e=this.createExpressionParser(this.expression);e?.parseExpression(),this.applyExpressionFromParser(e)}applyExpressionFromParser(e){if(this.isValid=!e||e.isValid(),!e||!this.isValid){this.expressionFunction=null,this.expressionParams=null,this.appliedExpression=null;return}const{expressionFunction:t,params:s}=this.getFunction(e);this.expressionFunction=t,this.expressionParams=s,this.appliedExpression=this.expression}getFunction(e){if(this.gos.get("suppressAdvancedFilterEval"))return e.getFunctionParsed();{const{functionString:t,params:s}=e.getFunctionString();return{expressionFunction:new Function("expressionProxy","node","params",t),params:s}}}updateValidity(){this.advFilterExpSvc.resetColumnCaches();const e=this.createExpressionParser(this.expression);e?.parseExpression();const s=(!e||e.isValid())!==this.isValid;return this.applyExpressionFromParser(e),this.ctrl.refreshComp(),this.ctrl.refreshBuilderComp(),s}onNewColumnsLoaded(e){if(e.source!=="gridInitializing"||!this.dataTypeSvc?.isPendingInference)return;this.ctrl.setInputDisabled(!0);const[t]=this.addManagedEventListeners({dataTypesInferred:()=>{t?.(),this.ctrl.setInputDisabled(!1)}})}},Un={moduleName:"AdvancedFilter",version:E,beans:[ey,jm],icons:{advancedFilterBuilder:"group",advancedFilterBuilderDrag:"grip",advancedFilterBuilderInvalid:"not-allowed",advancedFilterBuilderMoveUp:"up",advancedFilterBuilderMoveDown:"down",advancedFilterBuilderAdd:"plus",advancedFilterBuilderRemove:"minus",advancedFilterBuilderSelectOpen:"small-down",richSelectRemove:"cancel"},apiFunctions:{getAdvancedFilterModel:Dm,setAdvancedFilterModel:Lm,showAdvancedFilterBuilder:km,hideAdvancedFilterBuilder:Gm},dependsOn:[O,Pm,Em,Rm,Am],css:[Im]};import{_ColumnMoveModule as ty,_PopupModule as sy,_SharedDragAndDropModule as iy}from"ag-grid-community";import{_HorizontalResizeModule as ry}from"ag-grid-community";import{_unwrapUserComp as ay}from"ag-grid-community";function ny(e){return e.sideBar?.comp.isDisplayed()??!1}function oy(e,t){e.sideBar?.comp.setDisplayed(t)}function ly(e,t){e.sideBar?.comp.setSideBarPosition(t)}function cy(e,t){e.sideBar?.comp.openToolPanel(t,"api")}function dy(e){e.sideBar?.comp.close("api")}function hy(e){return e.sideBar?.comp.openedItem()??null}function uy(e){e.sideBar?.comp.refresh()}function py(e){return e.sideBar?.comp.isToolPanelShowing()??!1}function gy(e,t){const s=e.sideBar?.comp.getToolPanelInstance(t);return ay(s)}function my(e){return e.sideBar?.comp.getDef()}import{BeanStub as fy}from"ag-grid-community";import{Component as Cy,KeyCode as ks,ManagedFocusFeature as vy,RefPlaceholder as yy,_addFocusableContainerListener as Sy,_addGridCommonParams as Kn,_findNextFocusableElement as by,_focusInto as wy,_focusNextGridCoreContainer as Wn,_getActiveDomElement as jn,_removeFromParent as $n,_setAriaControls as xy,_warn as sr}from"ag-grid-community";import{TabGuardClassNames as My,_FOCUS_MANAGED_CLASS as Ty,_findFocusableElements as Fy}from"ag-grid-community";function ir(e,t){if(!t)return null;const s=Fy(e),i=s.indexOf(t);if(i===-1)return null;let r=-1;for(let a=i-1;a>=0;a--)if(s[a].classList.contains(My.TAB_GUARD_TOP)){r=a;break}return r<=0?null:s[r-1]}function Yn(e,t){if(!t)return!1;const s=e.querySelectorAll(`.${Ty}`);if(!s.length)return!1;for(let i=0;i<s.length;i++)if(s[i].contains(t))return!0;return!1}var Py='.ag-tool-panel-wrapper{display:flex;overflow:hidden auto;-webkit-user-select:none;-moz-user-select:none;user-select:none;width:var(--ag-side-bar-panel-width)}.ag-select-agg-func-item{align-items:center;display:flex;flex:1 1 auto;flex-flow:row nowrap;height:100%;overflow:hidden;position:relative;text-overflow:ellipsis;white-space:nowrap;>*{flex:none}}.ag-tool-panel-horizontal-resize{cursor:ew-resize;height:100%;position:absolute;top:0;width:5px;z-index:1}.ag-side-bar{background-color:var(--ag-side-bar-background-color);display:flex;flex-direction:row-reverse;position:relative}:where(.ag-ltr) :where(.ag-side-bar-left) .ag-tool-panel-horizontal-resize{right:-3px}:where(.ag-rtl) :where(.ag-side-bar-left) .ag-tool-panel-horizontal-resize{left:-3px}:where(.ag-ltr) :where(.ag-side-bar-right) .ag-tool-panel-horizontal-resize{left:-3px}:where(.ag-rtl) :where(.ag-side-bar-right) .ag-tool-panel-horizontal-resize{right:-3px}.ag-side-bar-left{flex-direction:row;order:-1}.ag-side-buttons{background-color:var(--ag-side-button-bar-background-color);padding-top:var(--ag-side-button-bar-top-padding);position:relative}.ag-side-button{background-color:var(--ag-side-button-background-color);border-bottom:var(--ag-side-button-border);border-top:var(--ag-side-button-border);color:var(--ag-side-button-text-color);margin-top:-1px;position:relative;&:before{background-color:transparent;bottom:0;content:"";display:block;position:absolute;top:0;transition:background-color var(--ag-side-button-selected-underline-transition-duration);width:var(--ag-side-button-selected-underline-width)}&:hover{background-color:var(--ag-side-button-hover-background-color);color:var(--ag-side-button-hover-text-color)}&.ag-selected{background-color:var(--ag-side-button-selected-background-color);border-bottom:var(--ag-side-button-selected-border);border-top:var(--ag-side-button-selected-border);color:var(--ag-side-button-selected-text-color);&:before{background-color:var(--ag-side-button-selected-underline-color)}}}:where(.ag-ltr) .ag-side-button{&:before{left:0}}:where(.ag-rtl) .ag-side-button{&:before{right:0}}.ag-side-button-button{align-items:center;display:flex;flex-direction:column;gap:var(--ag-spacing);position:relative;white-space:nowrap;width:100%;&:focus{box-shadow:none}}:where(.ag-ltr) .ag-side-button-button{padding:var(--ag-side-button-vertical-padding) var(--ag-side-button-right-padding) var(--ag-side-button-vertical-padding) var(--ag-side-button-left-padding)}:where(.ag-rtl) .ag-side-button-button{padding:var(--ag-side-button-vertical-padding) var(--ag-side-button-left-padding) var(--ag-side-button-vertical-padding) var(--ag-side-button-right-padding)}.ag-side-button-button:focus-visible{box-shadow:inset var(--ag-focus-shadow)}.ag-side-button-label{writing-mode:vertical-lr}@media (resolution <= 1.5x){.ag-side-button-label{font-family:"Segoe UI",var(--ag-font-family)}:where(.ag-ltr) .ag-side-button-label{transform:rotate(.05deg)}:where(.ag-rtl) .ag-side-button-label{transform:rotate(-.05deg)}}:where(.ag-ltr) .ag-side-bar-left,:where(.ag-rtl) .ag-side-bar-right{border-right:var(--ag-side-panel-border);:where(.ag-tool-panel-wrapper){border-left:var(--ag-side-panel-border)}}:where(.ag-ltr) .ag-side-bar-right,:where(.ag-rtl) .ag-side-bar-left{border-left:var(--ag-side-panel-border);:where(.ag-tool-panel-wrapper){border-right:var(--ag-side-panel-border)}}';import{Component as Ay,KeyCode as Ry,_clearElement as Ey,_focusNextGridCoreContainer as Iy,_stopPropagationForAgGrid as Dy}from"ag-grid-community";import{Component as Ly,RefPlaceholder as rr,_createIconNoSpan as ky,_setAriaExpanded as Gy}from"ag-grid-community";var Oy={tag:"div",cls:"ag-side-button",role:"presentation",children:[{tag:"button",ref:"eToggleButton",cls:"ag-button ag-side-button-button",role:"tab",attrs:{type:"button",tabindex:"-1","aria-expanded":"false"},children:[{tag:"div",ref:"eIconWrapper",cls:"ag-side-button-icon-wrapper",attrs:{"aria-hidden":"true"}},{tag:"span",ref:"eLabel",cls:"ag-side-button-label"}]}]},Ny=class extends Ly{constructor(e){super(),this.toolPanelDef=e,this.eToggleButton=rr,this.eIconWrapper=rr,this.eLabel=rr}getToolPanelId(){return this.toolPanelDef.id}postConstruct(){this.setTemplate(Oy,[]),this.setLabel(),this.setIcon(),this.addManagedElementListeners(this.eToggleButton,{click:this.onButtonPressed.bind(this)}),this.eToggleButton.setAttribute("id",`ag-${this.getCompId()}-button`)}setLabel(){const e=this.getLocaleTextFunc(),t=this.toolPanelDef,s=e(t.labelKey,t.labelDefault);this.eLabel.innerText=s}setIcon(){this.eIconWrapper.insertAdjacentElement("afterbegin",ky(this.toolPanelDef.iconKey,this.beans))}onButtonPressed(){this.dispatchLocalEvent({type:"toggleButtonClicked"})}setSelected(e){this.addOrRemoveCssClass("ag-selected",e),Gy(this.eToggleButton,e)}},By={tag:"div",cls:"ag-side-buttons",role:"tablist"},_y=class extends Ay{constructor(){super(By),this.buttonComps=[]}postConstruct(){this.addManagedElementListeners(this.getFocusableElement(),{keydown:this.handleKeyDown.bind(this)})}handleKeyDown(e){if(!(e.key!==Ry.TAB||!e.shiftKey)){if(Iy(this.beans,!0)){e.preventDefault();return}Dy(e)}}setActiveButton(e){this.buttonComps.forEach(t=>{t.setSelected(e===t.getToolPanelId())})}addButtonComp(e){const t=this.createBean(new Ny(e));return this.buttonComps.push(t),this.appendChild(t),t.addEventListener("toggleButtonClicked",()=>{this.dispatchLocalEvent({type:"sideBarButtonClicked",toolPanelId:e.id})}),t}clearButtons(){this.buttonComps=this.destroyBeans(this.buttonComps),Ey(this.getGui()),super.destroy()}destroy(){this.clearButtons(),super.destroy()}},Vy={selector:"AG-SIDE-BAR-BUTTONS",component:_y};import{_warn as Xn}from"ag-grid-community";var qn={id:"columns",labelDefault:"Columns",labelKey:"columns",iconKey:"columnsToolPanel",toolPanel:"agColumnsToolPanel"},Zn={id:"filters",labelDefault:"Filters",labelKey:"filters",iconKey:"filtersToolPanel",toolPanel:"agFiltersToolPanel"},Gs={columns:qn,filters:Zn};function ar(e){if(!e)return;if(e===!0)return{toolPanels:[qn,Zn],defaultToolPanel:"columns"};if(typeof e=="string")return ar([e]);if(Array.isArray(e)){const s=[];return e.forEach(i=>{const r=Gs[i];if(!r){Xn(215,{key:i,defaultByKey:Gs});return}s.push(r)}),s.length===0?void 0:{toolPanels:s,defaultToolPanel:s[0].id}}return{toolPanels:Hy(e.toolPanels),defaultToolPanel:e.defaultToolPanel,hiddenByDefault:e.hiddenByDefault,position:e.position}}function Hy(e){const t=[];return e&&e.forEach(s=>{let i=null;if(typeof s=="string"){const r=Gs[s];if(!r){Xn(215,{key:s,defaultByKey:Gs});return}i=r}else i=s;t.push(i)}),t}import{Component as zy}from"ag-grid-community";import{Component as Uy}from"ag-grid-community";var Ky=class extends Uy{constructor(){super({tag:"div",cls:"ag-tool-panel-horizontal-resize"}),this.minWidth=100,this.maxWidth=null}postConstruct(){const e=this.beans.horizontalResizeSvc.addResizeBar({eResizeBar:this.getGui(),dragStartPixels:1,onResizeStart:this.onResizeStart.bind(this),onResizing:this.onResizing.bind(this),onResizeEnd:this.onResizeEnd.bind(this)});this.addDestroyFunc(e),this.inverted=this.gos.get("enableRtl")}dispatchResizeEvent(e,t,s){this.eventSvc.dispatchEvent({type:"toolPanelSizeChanged",width:s,started:e,ended:t})}onResizeStart(){this.startingWidth=this.elementToResize.offsetWidth,this.dispatchResizeEvent(!0,!1,this.startingWidth)}onResizeEnd(e){return this.onResizing(e,!0)}onResizing(e,t=!1){const s=this.inverted?-1:1;let i=Math.max(this.minWidth,Math.floor(this.startingWidth-e*s));this.maxWidth!=null&&(i=Math.min(this.maxWidth,i)),this.elementToResize.style.width=`${i}px`,this.dispatchResizeEvent(!1,t,i)}};function Wy(e,t,s){return e.getCompDetails(t,jy,void 0,s,!0)}var jy={name:"toolPanel",optionalMethods:["refresh","getState"]},$y={tag:"div",cls:"ag-tool-panel-wrapper",role:"tabpanel"},Yy=class extends zy{constructor(){super($y)}postConstruct(){const e=this.getGui(),t=this.resizeBar=this.createManagedBean(new Ky);e.setAttribute("id",`ag-${this.getCompId()}`),t.elementToResize=e,this.appendChild(t)}getToolPanelId(){return this.toolPanelId}setToolPanelDef(e,t){const{id:s,minWidth:i,maxWidth:r,width:a}=e;this.toolPanelId=s,this.width=a;const n=Wy(this.beans.userCompFactory,e,t);if(n==null)return!1;const o=n.newAgStackInstance();this.params=n.params,o.then(this.setToolPanelComponent.bind(this));const l=this.resizeBar;return i!=null&&(l.minWidth=i),r!=null&&(l.maxWidth=r),!0}setToolPanelComponent(e){this.toolPanelCompInstance=e,this.appendChild(e.getGui()),this.addDestroyFunc(()=>{this.destroyBean(e)});const t=this.width;t&&(this.getGui().style.width=`${t}px`)}getToolPanelInstance(){return this.toolPanelCompInstance}setResizerSizerSide(e){const t=this.gos.get("enableRtl"),s=e==="left",i=t?s:!s;this.resizeBar.inverted=i}refresh(){this.toolPanelCompInstance?.refresh(this.params)}},Xy={tag:"div",cls:"ag-side-bar ag-unselectable",children:[{tag:"ag-side-bar-buttons",ref:"sideBarButtons"}]},qy=class extends Cy{constructor(){super(Xy,[Vy]),this.sideBarButtons=yy,this.toolPanelWrappers=[],this.registerCSS(Py)}postConstruct(){this.sideBarButtons.addEventListener("sideBarButtonClicked",this.onToolPanelButtonClicked.bind(this));const{beans:e,gos:t}=this,{sideBar:s}=t.get("initialState")??{};this.setSideBarDef({sideBarDef:ar(t.get("sideBar")),sideBarState:s}),this.addManagedPropertyListener("sideBar",this.onSideBarUpdated.bind(this)),e.sideBar.comp=this;const i=this.getFocusableElement();this.createManagedBean(new vy(i,{onTabKeyDown:this.onTabKeyDown.bind(this),handleKeyDown:this.handleKeyDown.bind(this)})),Sy(e,this,i)}onTabKeyDown(e){if(e.defaultPrevented)return;const{beans:t,sideBarButtons:s}=this,i=this.getGui(),r=s.getGui(),a=jn(t),n=i.querySelector(".ag-tool-panel-wrapper:not(.ag-hidden)"),o=e.target,l=e.shiftKey;if(!n)return Wn(t,l)?(e.preventDefault(),!0):Wn(t,l,!0);if(r.contains(a)){wy(n,l)&&e.preventDefault();return}if(!l)return;let c=null;n.contains(a)?c=by(t,n,void 0,!0):Yn(n,o)&&l&&(c=ir(n,o)),c||(c=r.querySelector(".ag-selected button")),c&&c!==e.target&&(e.preventDefault(),c.focus())}handleKeyDown(e){const t=jn(this.beans),s=this.sideBarButtons;if(!s.getGui().contains(t))return;const i=s.getGui(),r=Array.prototype.slice.call(i.querySelectorAll(".ag-side-button")),a=r.findIndex(l=>l.contains(t));let n=null;switch(e.key){case ks.LEFT:case ks.UP:n=Math.max(0,a-1);break;case ks.RIGHT:case ks.DOWN:n=Math.min(a+1,r.length-1);break}if(n===null)return;const o=r[n].querySelector("button");o&&(o.focus(),e.preventDefault())}onToolPanelButtonClicked(e){const t=e.toolPanelId;this.openedItem()===t?this.openToolPanel(void 0,"sideBarButtonClicked"):this.openToolPanel(t,"sideBarButtonClicked")}clearDownUi(){this.sideBarButtons.clearButtons(),this.destroyToolPanelWrappers()}setSideBarDef({sideBarDef:e,sideBarState:t,existingToolPanelWrappers:s}){if(this.setDisplayed(!1),this.sideBar=e,e&&e.toolPanels){const i=e.toolPanels;if(this.createToolPanelsAndSideButtons(i,t,s),!this.toolPanelWrappers.length)return;const r=t?t.visible:!e.hiddenByDefault;if(this.setDisplayed(r),this.setSideBarPosition(t?t.position:e.position),r)if(t){const{openToolPanel:a}=t;a&&this.openToolPanel(a,"sideBarInitializing")}else this.openToolPanel(e.defaultToolPanel,"sideBarInitializing")}}getDef(){return this.sideBar}setSideBarPosition(e){e||(e="right"),this.position=e;const t=e==="left",s=t?"right":"left";return this.addOrRemoveCssClass("ag-side-bar-left",t),this.addOrRemoveCssClass("ag-side-bar-right",!t),this.toolPanelWrappers.forEach(i=>{i.setResizerSizerSide(s)}),this.dispatchSideBarUpdated(),this}setDisplayed(e,t){super.setDisplayed(e,t),this.dispatchSideBarUpdated()}getState(){const e={};return this.toolPanelWrappers.forEach(t=>{e[t.getToolPanelId()]=t.getToolPanelInstance()?.getState?.()}),{visible:this.isDisplayed(),position:this.position,openToolPanel:this.openedItem(),toolPanels:e}}createToolPanelsAndSideButtons(e,t,s){for(const i of e)this.createToolPanelAndSideButton(i,t?.toolPanels?.[i.id],s?.[i.id])}validateDef(e){return e.id==null?(sr(212),!1):e.toolPanel==="agFiltersToolPanel"&&this.beans.filterManager?.isAdvFilterEnabled()?(sr(213),!1):!0}createToolPanelAndSideButton(e,t,s){if(!this.validateDef(e))return;let i;if(s)i=s;else if(i=this.createBean(new Yy),!i.setToolPanelDef(e,Kn(this.gos,{initialState:t,onStateUpdated:()=>this.dispatchSideBarUpdated()})))return;i.setDisplayed(!1);const r=i.getGui();this.appendChild(r),this.toolPanelWrappers.push(i);const a=this.sideBarButtons.addButtonComp(e);xy(a.eToggleButton,r)}refresh(){this.toolPanelWrappers.forEach(e=>e.refresh())}openToolPanel(e,t="api"){const s=this.openedItem();if(s===e)return;this.toolPanelWrappers.forEach(a=>{const n=e===a.getToolPanelId();a.setDisplayed(n)});const i=this.openedItem();s!==i&&(this.sideBarButtons.setActiveButton(e),this.raiseToolPanelVisibleEvent(e,s??void 0,t))}getToolPanelInstance(e){const t=this.toolPanelWrappers.filter(s=>s.getToolPanelId()===e)[0];if(!t){sr(214,{key:e});return}return t.getToolPanelInstance()}raiseToolPanelVisibleEvent(e,t,s){const i=!!e&&!!t,r=this.eventSvc;t&&r.dispatchEvent({type:"toolPanelVisibleChanged",source:s,key:t,visible:!1,switchingToolPanel:i}),e&&r.dispatchEvent({type:"toolPanelVisibleChanged",source:s,key:e,visible:!0,switchingToolPanel:i})}close(e="api"){this.openToolPanel(void 0,e)}isToolPanelShowing(){return!!this.openedItem()}openedItem(){let e=null;return this.toolPanelWrappers.forEach(t=>{t.isDisplayed()&&(e=t.getToolPanelId())}),e}onSideBarUpdated(){const e=ar(this.gos.get("sideBar")),t={};e&&this.sideBar&&e.toolPanels?.forEach(s=>{const{id:i}=s;if(!i)return;const r=this.sideBar.toolPanels?.find(l=>l.id===i);if(!r||s.toolPanel!==r.toolPanel)return;const a=this.toolPanelWrappers.find(l=>l.getToolPanelId()===i);if(!a)return;const n=Kn(this.gos,{...s.toolPanelParams??{},onStateUpdated:()=>this.dispatchSideBarUpdated()});a.getToolPanelInstance()?.refresh(n)===!0&&(this.toolPanelWrappers=this.toolPanelWrappers.filter(l=>l!==a),$n(a.getGui()),t[i]=a)}),this.clearDownUi(),this.setSideBarDef({sideBarDef:e,existingToolPanelWrappers:t})}dispatchSideBarUpdated(){this.eventSvc.dispatchEvent({type:"sideBarUpdated"})}destroyToolPanelWrappers(){this.toolPanelWrappers.forEach(e=>{$n(e.getGui()),this.destroyBean(e)}),this.toolPanelWrappers.length=0}destroy(){this.destroyToolPanelWrappers(),super.destroy()}},Zy={selector:"AG-SIDE-BAR",component:qy},Jy=class extends fy{constructor(){super(...arguments),this.beanName="sideBar"}getSelector(){return Zy}},Os={moduleName:"SideBar",version:E,beans:[Jy],apiFunctions:{isSideBarVisible:ny,setSideBarVisible:oy,setSideBarPosition:ly,openToolPanel:cy,closeToolPanel:dy,getOpenedToolPanel:hy,refreshToolPanel:uy,isToolPanelShowing:py,getToolPanelInstance:gy,getSideBar:my},dependsOn:[O,ry]};import{Component as Qy,_createElement as Ns,_createIconNoSpan as Jn,_isNodeOrElement as eS,_setAriaChecked as tS,_setAriaExpanded as sS,_warn as iS}from"ag-grid-community";var rS={tag:"div"},Qn=class extends Qy{constructor(){super(rS)}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(){const{checked:e,subMenu:t}=this.params,s=this.getGui();e&&tS(s,e),t&&sS(s,!1)}addIcon(){if(this.params.isCompact)return;const e=Ns({tag:"span",ref:"eIcon",cls:`${this.getClassName("part")} ${this.getClassName("icon")}`,role:"presentation"}),{checked:t,icon:s}=this.params;t?e.appendChild(Jn("check",this.beans)):s&&(eS(s)?e.appendChild(s):typeof s=="string"?e.innerHTML=s:iS(227)),this.getGui().appendChild(e)}addName(){const e=Ns({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;const e=Ns({tag:"span",ref:"eShortcut",cls:`${this.getClassName("part")} ${this.getClassName("shortcut")}`,children:this.params.shortcut||""});this.getGui().appendChild(e)}addSubMenu(){const e=Ns({tag:"span",ref:"ePopupPointer",cls:`${this.getClassName("part")} ${this.getClassName("popup-pointer")}`}),t=this.getGui();if(this.params.subMenu){const s=this.gos.get("enableRtl")?"subMenuOpenRtl":"subMenuOpen";e.appendChild(Jn(s,this.beans))}t.appendChild(e)}getClassName(e){return`${this.cssClassPrefix}-${e}`}},aS='.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:1px solid 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}',Bs={moduleName:"MenuItem",version:E,userComponents:{agMenuItem:Qn},icons:{check:"tick",subMenuOpen:"small-right",subMenuOpenRtl:"small-left"},css:[aS]};import{Component as nS,_addGridCommonParams as oS,_clearElement as lS,_last as cS}from"ag-grid-community";import{Component as dS,PositionableFeature as hS,RefPlaceholder as eo}from"ag-grid-community";var uS=".ag-column-select{display:flex;flex:3 1 0px;flex-direction:column;overflow:hidden;position:relative}.ag-column-select-header{align-items:center;display:flex;flex:none;gap:var(--ag-widget-horizontal-spacing);height:var(--ag-header-height);padding-left:var(--ag-widget-container-horizontal-padding);padding-right:var(--ag-widget-container-horizontal-padding);position:relative}.ag-column-select-column,.ag-column-select-column-group{align-items:center;display:flex;gap:var(--ag-widget-horizontal-spacing);height:100%;position:relative;&:where(:not(:last-child)){margin-bottom:var(--ag-widget-vertical-spacing)}}:where(.ag-ltr) .ag-column-select-column,:where(.ag-ltr) .ag-column-select-column-group{padding-left:calc(var(--ag-indentation-level)*var(--ag-column-select-indent-size))}:where(.ag-rtl) .ag-column-select-column,:where(.ag-rtl) .ag-column-select-column-group{padding-right:calc(var(--ag-indentation-level)*var(--ag-column-select-indent-size))}.ag-column-select-header-icon{border-radius:var(--ag-border-radius);cursor:pointer;height:var(--ag-icon-size);position:relative;width:var(--ag-icon-size);&:focus-visible{box-shadow:var(--ag-focus-shadow)}}.ag-column-select-header-filter-wrapper{flex:1 1 auto}.ag-column-select-header-filter{width:100%}.ag-column-select-list{flex:1 1 0px;overflow:hidden}:where(.ag-ltr) .ag-column-select-add-group-indent{margin-left:calc(var(--ag-icon-size) + var(--ag-spacing)*1.5)}:where(.ag-rtl) .ag-column-select-add-group-indent{margin-right:calc(var(--ag-icon-size) + var(--ag-spacing)*1.5)}.ag-column-select-column-group-readonly,.ag-column-select-column-readonly{opacity:.5;pointer-events:none}.ag-column-select-virtual-list-viewport{padding:calc(var(--ag-widget-container-vertical-padding)*.5) 0}.ag-column-select-virtual-list-item{padding:0 var(--ag-widget-container-horizontal-padding)}.ag-column-select-column-label{flex:1 1 auto;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ag-column-select-checkbox{display:flex}";import{AgCheckboxSelector as pS,AgInputTextFieldSelector as gS,Component as mS,KeyCode as fS,RefPlaceholder as nr,_createIconNoSpan as or,_debounce as CS,_setDisplayed as gt}from"ag-grid-community";var vS=300,yS={tag:"div",cls:"ag-column-select-header",role:"presentation",children:[{tag:"div",ref:"eExpand",cls:"ag-column-select-header-icon"},{tag:"ag-checkbox",ref:"eSelect",cls:"ag-column-select-header-checkbox"},{tag:"ag-input-text-field",ref:"eFilterTextField",cls:"ag-column-select-header-filter-wrapper"}]},SS=class extends mS{constructor(){super(yS,[pS,gS]),this.eExpand=nr,this.eSelect=nr,this.eFilterTextField=nr}postConstruct(){this.createExpandIcons(),this.addManagedListeners(this.eExpand,{click:this.onExpandClicked.bind(this),keydown:t=>{t.key===fS.SPACE&&(t.preventDefault(),this.onExpandClicked())}}),this.addManagedElementListeners(this.eSelect.getInputElement(),{click:this.onSelectClicked.bind(this)}),this.addManagedPropertyListener("functionsReadOnly",()=>this.onFunctionsReadOnlyPropChanged()),this.eFilterTextField.setAutoComplete(!1).onValueChange(()=>this.onFilterTextChanged()),this.addManagedEventListeners({newColumnsLoaded:this.showOrHideOptions.bind(this)});const e=this.getLocaleTextFunc();this.eSelect.setInputAriaLabel(e("ariaColumnSelectAll","Toggle All Columns Visibility")),this.eFilterTextField.setInputAriaLabel(e("ariaFilterColumnsInput","Filter Columns Input")),this.activateTabIndex([this.eExpand])}onFunctionsReadOnlyPropChanged(){const e=this.gos.get("functionsReadOnly");this.eSelect.setReadOnly(e),this.eSelect.addOrRemoveCssClass("ag-column-select-column-readonly",e)}init(e){this.params=e;const t=this.gos.get("functionsReadOnly");this.eSelect.setReadOnly(t),this.eSelect.addOrRemoveCssClass("ag-column-select-column-readonly",t),this.beans.colModel.ready&&this.showOrHideOptions()}createExpandIcons(){const e=this.beans;this.eExpand.appendChild(this.eExpandChecked=or("columnSelectOpen",e)),this.eExpand.appendChild(this.eExpandUnchecked=or("columnSelectClosed",e)),this.eExpand.appendChild(this.eExpandIndeterminate=or("columnSelectIndeterminate",e)),this.setExpandState(0)}showOrHideOptions(){const e=this.params,t=!e.suppressColumnFilter,s=!e.suppressColumnSelectAll,i=!e.suppressColumnExpandAll,r=!!this.beans.colModel.colDefCols?.treeDepth,a=this.getLocaleTextFunc();this.eFilterTextField.setInputPlaceholder(a("searchOoo","Search...")),gt(this.eFilterTextField.getGui(),t),gt(this.eSelect.getGui(),s),gt(this.eExpand,i&&r)}onFilterTextChanged(){this.onFilterTextChangedDebounced||(this.onFilterTextChangedDebounced=CS(this,()=>{const e=this.eFilterTextField.getValue();this.dispatchLocalEvent({type:"filterChanged",filterText:e})},vS)),this.onFilterTextChangedDebounced()}onSelectClicked(){this.dispatchLocalEvent({type:this.selectState?"unselectAll":"selectAll"})}onExpandClicked(){this.dispatchLocalEvent({type:this.expandState===0?"collapseAll":"expandAll"})}setExpandState(e){this.expandState=e,gt(this.eExpandChecked,e===0),gt(this.eExpandUnchecked,e===1),gt(this.eExpandIndeterminate,e===2)}setSelectionState(e){this.selectState=e,this.eSelect.setValue(this.selectState)}},bS={selector:"AG-PRIMARY-COLS-HEADER",component:SS};import{Component as wS,_exists as to,_setAriaLabel as xS,_setAriaLevel as MS,_warn as TS,isProvidedColumnGroup as FS}from"ag-grid-community";import{DragSourceType as PS}from"ag-grid-community";import{AgProvidedColumnGroup as AS,_warn as RS,isProvidedColumnGroup as ES}from"ag-grid-community";import{_last as IS}from"ag-grid-community";function mt(e){return!!e&&typeof e.children<"u"}function Ne(e){return mt(e)?e.groupId:e.colId}function so(e,t,s){const i=(n,o)=>{const c=n.children.map(Ne).includes(Ne(o)),d=IS(n.children),h=d&&Ne(d)!==Ne(o);return c&&h};if(!mt(e))return!0;const r=e,a=s;if(i(r,a)||r.groupId===t&&!r.children.map(Ne).includes(Ne(a)))return r.children.push(a),!0;for(let n=r.children.length-1;n>=0&&!so(r.children[n],t,s);n--);return!1}function DS(e){const t=(r,a)=>mt(r)&&mt(a)&&Ne(r)===Ne(a),s=(r,a)=>{if(!mt(a))return r;const n=r,o=a;return o.children&&o.groupId&&so(n,o.groupId,o.children[0])||o.children.forEach(l=>s(n,l)),n},i=[];for(let r=1;r<=e.length;r++){const a=e[r-1],n=e[r];t(a,n)?e[r]=s(a,n):i.push(a)}return i}function io(e,t){const s=[],i=(a,n)=>{if(mt(a)){const o=a,l=typeof o.groupId<"u"?o.groupId:o.headerName,c=new AS(o,l,!1,n),d=[];return o.children.forEach(h=>{const u=i(h,n+1);u&&d.push(u)}),c.setChildren(d),c}else{const o=a,l=o.colId?o.colId:o.field,c=e.getColDefCol(l);return c||s.push(o),c}},r=[];return t.forEach(a=>{const n=i(a,0);n&&r.push(n)}),s.length>0&&RS(217,{invalidColIds:s}),r}function ro(e,t){const s=LS(e),i=DS(s);t(i)}function LS(e){const t=(r,a)=>{let n;if(ES(r))if(r.isPadding())n=a;else{const l=Object.assign({},r.getColGroupDef());l.groupId=r.getGroupId(),l.children=[a],n=l}else{const l=Object.assign({},r.getColDef());l.colId=r.getColId(),n=l}const o=r.getOriginalParent();return o?t(o,n):n};return e.getCols().filter(r=>{const a=r.getColDef();return r.isPrimary()&&!a.showRowGroup}).map(r=>t(r,r.getColDef()))}import{LocalEventService as kS}from"ag-grid-community";var ao=class{constructor(e,t,s,i=!1,r){this.displayName=e,this.depth=s,this.group=i,this.localEventService=new kS,i?(this.columnGroup=t,this._expanded=r,this.children=[]):this.column=t}get expanded(){return!!this._expanded}set expanded(e){e!==this._expanded&&(this._expanded=e,this.localEventService.dispatchEvent({type:"expandedChanged"}))}addEventListener(e,t){this.localEventService.addEventListener(e,t)}removeEventListener(e,t){this.localEventService.removeEventListener(e,t)}};import{isProvidedColumnGroup as GS}from"ag-grid-community";import{AgCheckboxSelector as OS,Component as NS,DragSourceType as BS,KeyCode as lr,RefPlaceholder as Ht,TouchListener as _S,_createIcon as no,_createIconNoSpan as VS,_getShouldDisplayTooltip as HS,_getToolPanelClassesFromColDef as zS,_setAriaDescribedBy as US,_setAriaExpanded as KS,_setAriaLabel as WS,_setDisplayed as cr}from"ag-grid-community";import{_applyColumnState as dr}from"ag-grid-community";function oo(e,t,s,i){const r=jS(t);lo(e,r,s,i)}function lo(e,t,s,i){e.colModel.isPivotMode()?YS(e,t,s,i):$S(e,t,s,i)}function jS(e){const t=[],s=i=>{i.forEach(r=>{r.passesFilter&&(r.group?s(r.children):t.push(r.column))})};return s(e),t}function $S(e,t,s,i){const r=[];t.forEach(a=>{a.getColDef().lockVisible||a.isVisible()!=s&&r.push({colId:a.getId(),hide:!s})}),r.length>0&&dr(e,{state:r},i),e.selectionColSvc?.refreshVisibility(i)}function YS(e,t,s,i){XS(e,t,s,i)}function XS(e,t,s,i){const r=[],o=s?l=>{if(!l.isAnyFunctionActive())if(l.isAllowValue()){const c=typeof l.getAggFunc()=="string"?l.getAggFunc():e.aggFuncSvc?.getDefaultAggFunc(l);r.push({colId:l.getId(),aggFunc:c})}else l.isAllowRowGroup()?r.push({colId:l.getId(),rowGroup:!0}):l.isAllowPivot()&&r.push({colId:l.getId(),pivot:!0})}:l=>{(l.isPivotActive()||l.isRowGroupActive()||l.isValueActive())&&r.push({colId:l.getId(),pivot:!1,rowGroup:!1,aggFunc:null})};t.forEach(o),r.length>0&&dr(e,{state:r},i)}function co(e,t){const{columns:s,visibleState:i,pivotState:r,eventType:a}=t,n=s.map(o=>{const l=o.getColId();if(e.colModel.isPivotMode()){const c=r?.[l];return{colId:l,pivot:c?.pivot,rowGroup:c?.rowGroup,aggFunc:c?.aggFunc}}else return{colId:l,hide:!i?.[l]}});dr(e,{state:n},a)}function ho(e){return{pivot:e.isPivotActive(),rowGroup:e.isRowGroupActive(),aggFunc:e.isValueActive()?e.getAggFunc():void 0}}import{Component as qS,_createIconNoSpan as uo,_focusInto as ZS,isColumn as JS,isProvidedColumnGroup as QS}from"ag-grid-community";function po(e,t,s,i){const r=t.getCol(s);e.groupData||(e.groupData={});const a=r.getColId(),n=e.groupData[a];n!==i&&(e.groupData[a]=i,e.dispatchCellChangedEvent(r,i,n))}function hr(e,t,s){e.group!==s&&(e.group&&!s&&(e.expanded=!1),e.group=s,e.updateHasChildren(),t.selectionSvc?.updateRowSelectable(e),e.dispatchRowEvent("groupChanged"))}function zt(e,t){const{gos:s,rowGroupColsSvc:i}=t;if(!i||!e)return!1;const r=s.get("groupLockGroupColumns");if(!e.isRowGroupActive()||r===0)return!1;if(r===-1)return!0;const a=i.columns.findIndex(n=>n.getColId()===e.getColId());return r>a}import{AgPromise as ur,KeyCode as ve,TabGuardComp as eb,_createElement as tb,_last as sb,_preserveRangesWhile as ib,_stopPropagationForAgGrid as rb,_warn as ab}from"ag-grid-community";import{AgPromise as nb,BeanStub as ob,KeyCode as go,_addGridCommonParams as mo,_createElement as lb,_preserveRangesWhile as cb,_setAriaDisabled as db,_setAriaExpanded as hb,_setAriaHasPopup as ub,_setAriaRole as pb}from"ag-grid-community";import{KeyCode as gb,TabGuardComp as mb}from"ag-grid-community";var fb=class extends mb{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===gb.ESCAPE&&this.closePanel()}onTabKeyDown(e){e.defaultPrevented||(this.closePanel(),e.preventDefault())}closePanel(){const e=this.parentComponent;e.closeSubMenu(),setTimeout(()=>e.getGui().focus(),0)}};function Cb(e,t,s){return e.getCompDetails(t,vb,"agMenuItem",s,!0)}var vb={name:"menuItem",optionalMethods:["setActive","select","setExpanded","configureDefaults"]},yb={tag:"div",cls:"ag-menu",role:"presentation"},pr=class extends ob{constructor(){super(...arguments),this.ACTIVATION_DELAY=80,this.isActive=!1,this.subMenuIsOpen=!1,this.subMenuIsOpening=!1,this.suppressRootStyles=!0,this.suppressAria=!0,this.suppressFocus=!0}wireBeans(e){this.popupSvc=e.popupSvc,this.userCompFactory=e.userCompFactory,this.registry=e.registry}init(e){const{menuItemDef:t,isAnotherSubMenuOpen:s,level:i,childComponent:r,contextParams:a}=e;return this.params=e.menuItemDef,this.level=i,this.isAnotherSubMenuOpen=s,this.childComponent=r,this.contextParams=a,this.cssClassPrefix=this.params.menuItemParams?.cssClassPrefix??"ag-menu-option",Cb(this.userCompFactory,this.params,mo(this.gos,{...t,level:i,isAnotherSubMenuOpen:s,openSubMenu:o=>this.openSubMenu(o),closeSubMenu:()=>this.closeSubMenu(),closeMenu:o=>this.closeMenu(o),updateTooltip:(o,l)=>this.refreshTooltip(o,l),onItemActivated:()=>this.onItemActivated()}))?.newAgStackInstance().then(o=>{this.menuItemComp=o;const l=o.configureDefaults?.();l&&this.configureDefaults(l===!0?void 0:l)})??nb.resolve()}addListeners(e,t){t?.suppressClick||this.addManagedElementListeners(e,{click:s=>this.onItemSelected(s)}),t?.suppressKeyboardSelect||this.addManagedElementListeners(e,{keydown:s=>{(s.key===go.ENTER||s.key===go.SPACE)&&(s.preventDefault(),this.onItemSelected(s))}}),t?.suppressMouseDown||this.addManagedElementListeners(e,{mousedown:s=>{s.stopPropagation(),s.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;const s=lb(yb);this.eSubMenuGui=s;let i,r=()=>{this.subMenuIsOpening=!1};if(this.childComponent){const c=this.createBean(new fb(this.childComponent));c.setParentComponent(this);const d=c.getGui(),h="mouseenter",u=()=>this.cancelDeactivate();d.addEventListener(h,u),i=()=>{d.removeEventListener(h,u),this.destroyBean(c)},s.appendChild(d),this.childComponent.afterGuiAttached&&(r=()=>{this.childComponent.afterGuiAttached(),this.subMenuIsOpening=!1})}else if(this.params.subMenu){const c=this.createBean(new Ut(this.level+1,this.contextParams));c.setParentComponent(this),c.addMenuItems(this.params.subMenu),s.appendChild(c.getGui()),this.addManagedListeners(c,{closeMenu:d=>this.dispatchLocalEvent(d)}),c.addGuiEventListener("mouseenter",()=>this.cancelDeactivate()),i=()=>this.destroyBean(c),e&&(r=()=>{c.activateFirstItem(),this.subMenuIsOpening=!1})}const{popupSvc:a}=this,n=()=>{const c=this.eGui,{column:d,node:h}=this.contextParams;a?.positionPopupForMenu({eventSource:c,ePopup:s,event:t instanceof MouseEvent?t:void 0,column:d,node:h})},o=this.getLocaleTextFunc(),l=a?.addPopup({modal:!0,eChild:s,positionCallback:n,anchorToElement:this.eGui,ariaLabel:o("ariaLabelSubMenu","SubMenu"),afterGuiAttached:r});this.subMenuIsOpen=!0,this.setAriaExpanded(!0),this.hideSubMenu=()=>{l&&l.hideFunc(),this.subMenuIsOpen=!1,this.setAriaExpanded(!1),i(),this.menuItemComp.setExpanded?.(!1),this.eSubMenuGui=void 0},this.menuItemComp.setExpanded?.(!0)}setAriaExpanded(e){this.suppressAria||hb(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||cb(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(mo(this.gos,{...this.contextParams}))):this.openSubMenu(e&&e.type==="keydown",e),!(this.params.subMenu&&!this.params.action||this.params.suppressCloseOnSelect)&&this.closeMenu(e)}closeMenu(e){const t={type:"closeMenu"};e&&(e instanceof MouseEvent?t.mouseEvent=e:t.keyboardEvent=e),this.dispatchLocalEvent(t)}onItemActivated(){const e={type:"menuItemActivated",menuItem:this};this.dispatchLocalEvent(e)}cancelActivate(){this.activateTimeoutId&&(window.clearTimeout(this.activateTimeoutId),this.activateTimeoutId=0)}cancelDeactivate(){this.deactivateTimeoutId&&(window.clearTimeout(this.deactivateTimeoutId),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()}configureDefaults(e){if(!this.menuItemComp){setTimeout(()=>this.configureDefaults(e));return}let t=this.menuItemComp.getGui();const{suppressRootStyles:s,suppressTooltip:i,suppressAria:r,suppressTabIndex:a,suppressFocus:n}=e||{},o=this.menuItemComp.getRootElement?.();o&&(s||t.classList.add("ag-menu-option-custom"),t=o),this.eGui=t,this.suppressRootStyles=!!s,this.suppressRootStyles||(t.classList.add(this.cssClassPrefix),this.params.cssClasses?.forEach(l=>t.classList.add(l)),this.params.disabled&&t.classList.add(`${this.cssClassPrefix}-disabled`)),i||this.refreshTooltip(this.params.tooltip),this.suppressAria=!!r,this.suppressAria||(pb(t,"menuitem"),this.params.subMenu&&ub(t,this.params.subMenuRole??"menu"),this.params.disabled&&db(t,!0)),a||t.setAttribute("tabindex","-1"),this.params.disabled||this.addListeners(t,e),this.suppressFocus=!!n}refreshTooltip(e,t){if(this.tooltip=e,this.tooltipFeature=this.destroyBean(this.tooltipFeature),!e||!this.menuItemComp)return;const s=this.registry.createDynamicBean("tooltipFeature",!1,{getGui:()=>this.getGui(),getTooltipValue:()=>this.tooltip,getLocation:()=>"menu",shouldDisplayTooltip:t});s&&(this.tooltipFeature=this.createBean(s))}destroy(){this.tooltipFeature=this.destroyBean(this.tooltipFeature),this.menuItemComp?.destroy?.(),super.destroy()}},Ut=class extends eb{constructor(e=0,t){super({tag:"div",cls:"ag-menu-list",role:"menu"}),this.level=e,this.menuItems=[],this.params=t??{column:null,node:null,value:null}}postConstruct(){this.initialiseTabGuard({onTabKeyDown:e=>this.onTabKeyDown(e),handleKeyDown:e=>ib(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 ve.UP:case ve.RIGHT:case ve.DOWN:case ve.LEFT:e.preventDefault(),this.handleNavKey(e.key);break;case ve.ESCAPE:this.closeIfIsChild()&&rb(e);break}}handleFocusIn(e){const 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){const 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(),this.activeMenuItem=null)}addMenuItems(e){e!=null&&ur.all(e.map(t=>t==="separator"?ur.resolve({eGui:this.createSeparator()}):typeof t=="string"?(ab(228,{menuItemOrString:t}),ur.resolve({eGui:null})):this.addItem(t))).then(t=>{(t??[]).forEach(s=>{s?.eGui&&(this.appendChild(s.eGui),s.comp&&this.menuItems.push(s.comp))})})}addItem(e){const t=this.createManagedBean(new pr);return t.init({menuItemDef:e,isAnotherSubMenuOpen:()=>this.menuItems.some(s=>s.isSubMenuOpen()),level:this.level,contextParams:this.params}).then(()=>(t.setParentComponent(this),this.addManagedListeners(t,{closeMenu:s=>{this.dispatchLocalEvent(s)},menuItemActivated:s=>{this.activeMenuItem&&this.activeMenuItem!==s.menuItem&&this.activeMenuItem.deactivate(),this.activeMenuItem=s.menuItem}}),{comp:t,eGui:t.getGui()}))}activateFirstItem(){const e=this.menuItems.filter(t=>!t.isDisabled())[0];e&&e.activate()}createSeparator(){const e={tag:"div",cls:"ag-menu-separator-part"};return tb({tag:"div",cls:"ag-menu-separator",attrs:{"aria-hidden":"true"},children:[e,e,e,e]})}handleNavKey(e){switch(e){case ve.UP:case ve.DOWN:{const s=this.findNextItem(e===ve.UP);s&&s!==this.activeMenuItem&&s.activate(!1,!0);return}}const t=this.gos.get("enableRtl")?ve.RIGHT:ve.LEFT;e===t?this.closeIfIsChild():this.openChild()}closeIfIsChild(e){const t=this.getParentComponent();return t&&t instanceof pr?(e&&e.preventDefault(),t.closeSubMenu(),t.getGui().focus(),!0):!1}openChild(){this.activeMenuItem&&this.activeMenuItem.openSubMenu(!0)}findNextItem(e){const t=[...this.menuItems];if(!t.length)return;if(!this.activeMenuItem)return e?sb(t):t[0];e&&t.reverse();let s,i=!1;for(const r of t){if(!i){r===this.activeMenuItem&&(i=!0);continue}s=r;break}return i&&!s?t[0]:s||this.activeMenuItem}destroy(){this.clearActiveItem(),super.destroy()}},fo=class extends qS{constructor(e,t,s){super({tag:"div",cls:"ag-menu"}),this.column=e,this.mouseEvent=t,this.parentEl=s,this.displayName=null}postConstruct(){const{column:e,beans:{colNames:t}}=this;this.initializeProperties(e);let s;if(JS(e)?s=t.getDisplayNameForColumn(e,"columnToolPanel"):s=t.getDisplayNameForProvidedColumnGroup(null,e,"columnToolPanel"),this.displayName=s,this.buildMenuItemMap(),this.isActive()){this.mouseEvent.preventDefault();const i=this.getMappedMenuItems();if(i.length===0)return;this.displayContextMenu(i)}}initializeProperties(e){let t;QS(e)?t=e.getLeafColumns():t=[e],this.columns=t,this.allowGrouping=t.some(s=>s.isPrimary()&&s.isAllowRowGroup()),this.allowValues=t.some(s=>s.isPrimary()&&s.isAllowValue()),this.allowPivoting=this.beans.colModel.isPivotMode()&&t.some(s=>s.isPrimary()&&s.isAllowPivot())}buildMenuItemMap(){const e=this.getLocaleTextFunc(),{beans:t,displayName:s}=this,{rowGroupColsSvc:i,valueColsSvc:r,pivotColsSvc:a,colModel:n}=t,o=new Map;this.menuItemMap=o,o.set("rowGroup",{allowedFunction:l=>l.isPrimary()&&l.isAllowRowGroup()&&!zt(l,t),activeFunction:l=>l.isRowGroupActive(),activateLabel:()=>`${e("groupBy","Group by")} ${s}`,deactivateLabel:()=>`${e("ungroupBy","Un-Group by")} ${s}`,activateFunction:()=>i?.setColumns(this.addColumnsToList(i.columns),"toolPanelUi"),deActivateFunction:()=>i?.setColumns(this.removeColumnsFromList(i.columns),"toolPanelUi"),addIcon:"menuAddRowGroup",removeIcon:"menuRemoveRowGroup"}),o.set("value",{allowedFunction:l=>l.isPrimary()&&l.isAllowValue(),activeFunction:l=>l.isValueActive(),activateLabel:()=>e("addToValues",`Add ${s} to values`,[s]),deactivateLabel:()=>e("removeFromValues",`Remove ${s} from values`,[s]),activateFunction:()=>r?.setColumns(this.addColumnsToList(r.columns),"toolPanelUi"),deActivateFunction:()=>r?.setColumns(this.removeColumnsFromList(r.columns),"toolPanelUi"),addIcon:"valuePanel",removeIcon:"valuePanel"}),o.set("pivot",{allowedFunction:l=>n.isPivotMode()&&l.isPrimary()&&l.isAllowPivot(),activeFunction:l=>l.isPivotActive(),activateLabel:()=>e("addToLabels",`Add ${s} to labels`,[s]),deactivateLabel:()=>e("removeFromLabels",`Remove ${s} from labels`,[s]),activateFunction:()=>a?.setColumns(this.addColumnsToList(a.columns),"toolPanelUi"),deActivateFunction:()=>a?.setColumns(this.removeColumnsFromList(a.columns),"toolPanelUi"),addIcon:"pivotPanel",removeIcon:"pivotPanel"})}addColumnsToList(e){return[...e].concat(this.columns.filter(t=>e.indexOf(t)===-1))}removeColumnsFromList(e){return e.filter(t=>this.columns.indexOf(t)===-1)}displayContextMenu(e){const t=this.getGui(),s=this.createBean(new Ut),i=this.getLocaleTextFunc();let r=()=>{};t.appendChild(s.getGui()),s.addMenuItems(e),s.addManagedListeners(s,{closeMenu:()=>{this.parentEl.focus(),r()}});const a=this.beans.popupSvc,n=a.addPopup({modal:!0,eChild:t,closeOnEsc:!0,afterGuiAttached:()=>ZS(s.getGui()),ariaLabel:i("ariaLabelContextMenu","Context Menu"),closedCallback:o=>{o instanceof KeyboardEvent&&this.parentEl.focus(),this.destroyBean(s)}});n&&(r=n.hideFunc),a.positionPopupUnderMouseEvent({type:"columnContextMenu",mouseEvent:this.mouseEvent,ePopup:t})}isActive(){return this.allowGrouping||this.allowValues||this.allowPivoting}getMappedMenuItems(){const e=[],{menuItemMap:t,columns:s,displayName:i,beans:r}=this;for(const a of t.values()){const n=s.some(l=>a.allowedFunction(l)&&!a.activeFunction(l)),o=s.some(l=>a.allowedFunction(l)&&a.activeFunction(l));n&&e.push({name:a.activateLabel(i),icon:uo(a.addIcon,r,null),action:()=>a.activateFunction()}),o&&e.push({name:a.deactivateLabel(i),icon:uo(a.removeIcon,r,null),action:()=>a.deActivateFunction()})}return e}},Sb={tag:"div",cls:"ag-column-select-column-group",children:[{tag:"span",ref:"eColumnGroupIcons",cls:"ag-column-group-icons",children:[{tag:"span",ref:"eGroupClosedIcon",cls:"ag-column-group-closed-icon"},{tag:"span",ref:"eGroupOpenedIcon",cls:"ag-column-group-opened-icon"}]},{tag:"ag-checkbox",ref:"cbSelect",cls:"ag-column-select-checkbox"},{tag:"span",ref:"eLabel",cls:"ag-column-select-column-label"}]},Co=class extends NS{constructor(e,t,s,i){super(),this.modelItem=e,this.allowDragging=t,this.eventType=s,this.focusWrapper=i,this.cbSelect=Ht,this.eLabel=Ht,this.eGroupOpenedIcon=Ht,this.eGroupClosedIcon=Ht,this.eColumnGroupIcons=Ht,this.processingColumnStateChange=!1;const{columnGroup:r,depth:a,displayName:n}=e;this.columnGroup=r,this.columnDepth=a,this.displayName=n}postConstruct(){this.setTemplate(Sb,[OS]);const{beans:e,cbSelect:t,eLabel:s,displayName:i,columnDepth:r,modelItem:a,focusWrapper:n,columnGroup:o}=this,{registry:l,gos:c}=e,d=VS("columnDrag",e);this.eDragHandle=d,d.classList.add("ag-drag-handle","ag-column-select-column-group-drag-handle");const h=t.getGui(),u=t.getInputElement();h.insertAdjacentElement("afterend",d),u.setAttribute("tabindex","-1"),s.innerHTML=i??"",this.setupExpandContract(),this.addCssClass("ag-column-select-indent-"+r),this.getGui().style.setProperty("--ag-indentation-level",String(r)),this.tooltipFeature=this.createOptionalManagedBean(l.createDynamicBean("tooltipFeature",!1,{getGui:()=>this.getGui(),getLocation:()=>"columnToolPanelColumnGroup",shouldDisplayTooltip:HS(c,()=>s)})),this.addManagedEventListeners({columnPivotModeChanged:this.onColumnStateChanged.bind(this)}),this.addManagedElementListeners(s,{click:this.onLabelClicked.bind(this)}),this.addManagedListeners(t,{fieldValueChanged:this.onCheckboxChanged.bind(this)}),this.addManagedListeners(a,{expandedChanged:this.onExpandChanged.bind(this)}),this.addManagedListeners(n,{keydown:this.handleKeyDown.bind(this),contextmenu:this.onContextMenu.bind(this)}),this.setOpenClosedIcons(),this.setupDragging(),this.onColumnStateChanged(),this.addVisibilityListenersToAllChildren(),this.refreshAriaExpanded(),this.refreshAriaLabel(),this.setupTooltip(),zS(o.getColGroupDef(),c,null,o).forEach(g=>this.addOrRemoveCssClass(g,!0))}getColumns(){return this.columnGroup.getLeafColumns()}setupTooltip(){const e=this.columnGroup.getColGroupDef();if(!e)return;const t=()=>this.tooltipFeature?.setTooltipAndRefresh(e.headerTooltip);t(),this.addManagedEventListeners({newColumnsLoaded:t})}handleKeyDown(e){switch(e.key){case lr.LEFT:e.preventDefault(),this.modelItem.expanded=!1;break;case lr.RIGHT:e.preventDefault(),this.modelItem.expanded=!0;break;case lr.SPACE:e.preventDefault(),this.isSelectable()&&this.onSelectAllChanged(!this.isSelected());break}}onContextMenu(e){const{columnGroup:t,gos:s}=this;if(s.get("functionsReadOnly"))return;const i=this.createBean(new fo(t,e,this.focusWrapper));this.addDestroyFunc(()=>{i.isAlive()&&this.destroyBean(i)})}addVisibilityListenersToAllChildren(){const e=this.onColumnStateChanged.bind(this);this.columnGroup.getLeafColumns().forEach(t=>{this.addManagedListeners(t,{visibleChanged:e,columnValueChanged:e,columnPivotChanged:e,columnRowGroupChanged:e})})}setupDragging(){if(!this.allowDragging){cr(this.eDragHandle,!1);return}const e=this.beans,{gos:t,eventSvc:s,dragAndDrop:i}=e;let r=!t.get("suppressDragLeaveHidesColumns");const a={type:BS.ToolPanel,eElement:this.eDragHandle,dragItemName:this.displayName,getDefaultIconName:()=>r?"hide":"notAllowed",getDragItem:()=>this.createDragItem(),onDragStarted:()=>{r=!t.get("suppressDragLeaveHidesColumns"),s.dispatchEvent({type:"columnPanelItemDragStart",column:this.columnGroup})},onDragStopped:()=>{s.dispatchEvent({type:"columnPanelItemDragEnd"})},onGridEnter:n=>{r&&co(e,{columns:this.columnGroup.getLeafColumns(),visibleState:n?.visibleState,pivotState:n?.pivotState,eventType:this.eventType})},onGridExit:()=>{r&&this.onChangeCommon(!1)}};i.addDragSource(a,!0),this.addDestroyFunc(()=>i.removeDragSource(a))}createDragItem(){const e=this.columnGroup.getLeafColumns(),t={},s={};return e.forEach(i=>{const r=i.getId();t[r]=i.isVisible(),s[r]=ho(i)}),{columns:e,visibleState:t,pivotState:s}}setupExpandContract(){const{beans:e,eGroupClosedIcon:t,eGroupOpenedIcon:s,eColumnGroupIcons:i}=this;t.appendChild(no("columnSelectClosed",e,null)),s.appendChild(no("columnSelectOpen",e,null));const r=this.onExpandOrContractClicked.bind(this);this.addManagedElementListeners(t,{click:r}),this.addManagedElementListeners(s,{click:r});const a=new _S(i,!0);this.addManagedListeners(a,{tap:r}),this.addDestroyFunc(a.destroy.bind(a))}onLabelClicked(){const e=!this.cbSelect.getValue();this.onChangeCommon(e)}onCheckboxChanged(e){this.onChangeCommon(e.selected)}getVisibleLeafColumns(){const e=[],t=s=>{s.forEach(i=>{i.passesFilter&&(i.group?t(i.children):e.push(i.column))})};return t(this.modelItem.children),e}onChangeCommon(e){this.refreshAriaLabel(),!this.processingColumnStateChange&&oo(this.beans,this.modelItem.children,e,this.eventType)}refreshAriaLabel(){const{cbSelect:e,focusWrapper:t,displayName:s}=this,i=this.getLocaleTextFunc(),r=i("ariaColumnGroup","Column Group"),a=e.getValue(),n=a===void 0?i("ariaIndeterminate","indeterminate"):a?i("ariaVisible","visible"):i("ariaHidden","hidden"),o=i("ariaToggleVisibility","Press SPACE to toggle visibility");WS(t,`${s} ${r}`),e.setInputAriaLabel(`${o} (${n})`),US(t,e.getInputElement().id)}onColumnStateChanged(){const e=this.workOutSelectedValue(),t=this.workOutReadOnlyValue();this.processingColumnStateChange=!0;const s=this.cbSelect;s.setValue(e),s.setReadOnly(t),this.addOrRemoveCssClass("ag-column-select-column-group-readonly",t),this.processingColumnStateChange=!1}workOutSelectedValue(){const e=this.beans.colModel.isPivotMode(),t=this.getVisibleLeafColumns();let s=0,i=0;if(t.forEach(r=>{!e&&r.getColDef().lockVisible||(this.isColumnChecked(r,e)?s++:i++)}),!(s>0&&i>0))return s>0}workOutReadOnlyValue(){const e=this.beans.colModel.isPivotMode();let t=0;return this.columnGroup.getLeafColumns().forEach(s=>{e?s.isAnyFunctionAllowed()&&t++:s.getColDef().lockVisible||t++}),t===0}isColumnChecked(e,t){if(t){const s=e.isPivotActive(),i=e.isRowGroupActive(),r=e.isValueActive();return s||i||r}return e.isVisible()}onExpandOrContractClicked(){const e=this.modelItem,t=e.expanded;e.expanded=!t}onExpandChanged(){this.setOpenClosedIcons(),this.refreshAriaExpanded()}setOpenClosedIcons(){const e=this.modelItem.expanded;cr(this.eGroupClosedIcon,!e),cr(this.eGroupOpenedIcon,e)}refreshAriaExpanded(){KS(this.focusWrapper,this.modelItem.expanded)}getDisplayName(){return this.displayName}onSelectAllChanged(e){const t=this.cbSelect,s=t.getValue();!t.isReadOnly()&&(e&&!s||!e&&s)&&t.toggle()}isSelected(){return this.cbSelect.getValue()}isSelectable(){return!this.cbSelect.isReadOnly()}setSelected(e){this.cbSelect.setValue(e,!0)}},gr=e=>GS(e)?e.getLeafColumns():e?[e]:[],bb=(e,t,s,i)=>{if(!s||!t)return null;const r=e.colModel.getCols(),a=r.indexOf(s),n=i?a:a+1,o=wb(r,t,n);return n-o},wb=(e,t,s)=>{if(!t)return 0;const i=t[0],r=t.length;return e.indexOf(i)<s?r:0},vo=(e,t,s)=>e.get("suppressMovableColumns")||t.colModel.isPivotMode()?!0:!!s.find(({colDef:a})=>!!a.suppressMovable||!!a.lockPosition),yo=(e,t,s)=>{if(!s)return;const{component:i}=s;let r=null,a=s.position==="top";if(i instanceof Co?(r=i.getColumns()[0],a=!0):i&&(r=i.column),!r)return;const n=bb(e,t,r,a);n!=null&&e.colMoves?.moveColumns(t,n,"toolPanelUi")},xb=e=>e.column;import{AgCheckboxSelector as Mb,Component as Tb,DragSourceType as Fb,KeyCode as Pb,RefPlaceholder as So,_createIconNoSpan as Ab,_escapeString as Rb,_getShouldDisplayTooltip as Eb,_getToolPanelClassesFromColDef as Ib,_setAriaDescribedBy as Db,_setAriaLabel as Lb,_setDisplayed as kb,_warn as Gb}from"ag-grid-community";var Ob={tag:"div",cls:"ag-column-select-column",children:[{tag:"ag-checkbox",ref:"cbSelect",cls:"ag-column-select-checkbox"},{tag:"span",ref:"eLabel",cls:"ag-column-select-column-label"}]},Nb=class extends Tb{constructor(e,t,s,i){super(),this.modelItem=e,this.allowDragging=t,this.groupsExist=s,this.focusWrapper=i,this.eLabel=So,this.cbSelect=So,this.processingColumnStateChange=!1;const{column:r,depth:a,displayName:n}=e;this.column=r,this.columnDepth=a,this.displayName=n}postConstruct(){this.setTemplate(Ob,[Mb]);const{beans:e,cbSelect:t,displayName:s,eLabel:i,columnDepth:r,groupsExist:a,column:n,gos:o,focusWrapper:l}=this,c=Ab("columnDrag",e);this.eDragHandle=c,c.classList.add("ag-drag-handle","ag-column-select-column-drag-handle");const d=t.getGui(),h=t.getInputElement();d.insertAdjacentElement("afterend",c),h.setAttribute("tabindex","-1");const u=Rb(s);i.innerHTML=u,a&&this.addCssClass("ag-column-select-add-group-indent"),this.addCssClass(`ag-column-select-indent-${r}`),this.getGui().style.setProperty("--ag-indentation-level",String(r)),this.tooltipFeature=this.createOptionalManagedBean(e.registry.createDynamicBean("tooltipFeature",!1,{getGui:()=>this.getGui(),getLocation:()=>"columnToolPanelColumn",getColDef:()=>n.getColDef(),shouldDisplayTooltip:Eb(o,()=>i)})),this.setupDragging();const p=this.onColumnStateChanged.bind(this);this.addManagedEventListeners({columnPivotModeChanged:p}),this.addManagedListeners(n,{columnValueChanged:p,columnPivotChanged:p,columnRowGroupChanged:p,visibleChanged:p}),this.addManagedListeners(l,{keydown:this.handleKeyDown.bind(this),contextmenu:this.onContextMenu.bind(this)}),this.addManagedPropertyListener("functionsReadOnly",this.onColumnStateChanged.bind(this)),this.addManagedListeners(t,{fieldValueChanged:this.onCheckboxChanged.bind(this)}),this.addManagedElementListeners(i,{click:this.onLabelClicked.bind(this)}),this.onColumnStateChanged(),this.refreshAriaLabel(),this.setupTooltip(),Ib(n.getColDef(),o,n,null).forEach(m=>this.addOrRemoveCssClass(m,!0))}getColumn(){return this.column}setupTooltip(){const e=()=>this.tooltipFeature?.setTooltipAndRefresh(this.column.getColDef().headerTooltip);e(),this.addManagedEventListeners({newColumnsLoaded:e})}onContextMenu(e){const{column:t,gos:s}=this;if(s.get("functionsReadOnly"))return;const i=this.createBean(new fo(t,e,this.focusWrapper));this.addDestroyFunc(()=>{i.isAlive()&&this.destroyBean(i)})}handleKeyDown(e){e.key===Pb.SPACE&&(e.preventDefault(),this.isSelectable()&&this.onSelectAllChanged(!this.isSelected()))}onLabelClicked(){if(this.gos.get("functionsReadOnly"))return;const e=!this.cbSelect.getValue();this.onChangeCommon(e)}onCheckboxChanged(e){this.onChangeCommon(e.selected)}onChangeCommon(e){this.cbSelect.isReadOnly()||(this.refreshAriaLabel(),!this.processingColumnStateChange&&lo(this.beans,[this.column],e,"toolPanelUi"))}refreshAriaLabel(){const{cbSelect:e,focusWrapper:t,displayName:s}=this,i=this.getLocaleTextFunc(),r=i("ariaColumn","Column"),a=e.getValue()?i("ariaVisible","visible"):i("ariaHidden","hidden"),n=i("ariaToggleVisibility","Press SPACE to toggle visibility");Lb(t,`${s} ${r}`),this.cbSelect.setInputAriaLabel(`${n} (${a})`),Db(t,e.getInputElement().id)}setupDragging(){const e=this.eDragHandle;if(!this.allowDragging){kb(e,!1);return}const t=this.beans,{gos:s,eventSvc:i,dragAndDrop:r}=t;let a=!s.get("suppressDragLeaveHidesColumns");const n={type:Fb.ToolPanel,eElement:e,dragItemName:this.displayName,getDefaultIconName:()=>a?"hide":"notAllowed",getDragItem:()=>this.createDragItem(),onDragStarted:()=>{a=!s.get("suppressDragLeaveHidesColumns"),i.dispatchEvent({type:"columnPanelItemDragStart",column:this.column})},onDragStopped:()=>{i.dispatchEvent({type:"columnPanelItemDragEnd"})},onGridEnter:o=>{a&&co(t,{columns:[this.column],visibleState:o?.visibleState,pivotState:o?.pivotState,eventType:"toolPanelUi"})},onGridExit:()=>{a&&this.onChangeCommon(!1)}};r.addDragSource(n,!0),this.addDestroyFunc(()=>r.removeDragSource(n))}createDragItem(){const e=this.column.getColId(),t={[e]:this.column.isVisible()},s={[e]:ho(this.column)};return{columns:[this.column],visibleState:t,pivotState:s}}onColumnStateChanged(){this.processingColumnStateChange=!0;const e=this.beans.colModel.isPivotMode();if(e){const i=this.column.isAnyFunctionActive();this.cbSelect.setValue(i)}else this.cbSelect.setValue(this.column.isVisible());let t=!0,s=!0;if(e){const i=this.gos.get("functionsReadOnly"),r=!this.column.isAnyFunctionAllowed();t=!i&&!r,s=t}else{const{enableRowGroup:i,enableValue:r,lockPosition:a,suppressMovable:n,lockVisible:o}=this.column.getColDef(),l=!!i||!!r,c=!!a||!!n;t=!o,s=l||!c}this.cbSelect.setReadOnly(!t),this.eDragHandle.classList.toggle("ag-column-select-column-readonly",!s),this.addOrRemoveCssClass("ag-column-select-column-readonly",!s&&!t),this.cbSelect.setPassive(!1),this.processingColumnStateChange=!1}getDisplayName(){return this.displayName}onSelectAllChanged(e){const t=this.cbSelect;e!==t.getValue()&&(t.isReadOnly()||t.toggle())}isSelected(){return this.cbSelect.getValue()}isSelectable(){return!this.cbSelect.isReadOnly()}isExpandable(){return!1}setExpanded(e){Gb(158)}},Bb=class{constructor(e){this.items=e}getRowCount(){return this.items.length}getRow(e){return this.items[e]}},_b="ag-column-select-list",Vb=class extends wS{constructor(){super({tag:"div",cls:_b,role:"presentation"}),this.destroyColumnItemFuncs=[],this.hasLoadedInitialState=!1,this.isInitialState=!1,this.skipRefocus=!1}wireBeans(e){this.colModel=e.colModel}destroy(){this.destroyColumnTree(),super.destroy()}destroyColumnTree(){this.allColsTree=[],this.destroyColumnItemFuncs.forEach(e=>e()),this.destroyColumnItemFuncs=[]}init(e,t,s){this.params=e;const{suppressSyncLayoutWithGrid:i,contractColumnSelection:r,suppressColumnMove:a}=e;this.allowDragging=t,this.eventType=s,i||this.addManagedEventListeners({columnMoved:this.onColumnsChanged.bind(this)}),this.addManagedEventListeners({newColumnsLoaded:this.onColumnsChanged.bind(this)});const n=this.fireSelectionChangedEvent.bind(this);this.addManagedEventListeners({columnPivotChanged:n,columnPivotModeChanged:n,columnRowGroupChanged:n,columnValueChanged:n,columnVisible:n,newColumnsLoaded:n}),this.expandGroupsByDefault=!r;const o=a||i,l=this.createManagedBean(new ut({cssIdentifier:"column-select",ariaRole:"tree",moveItemCallback:(c,d)=>{o||this.moveItems(c,d)}}));this.virtualList=l,this.appendChild(l.getGui()),l.setComponentCreator((c,d)=>(MS(d,c.depth+1),this.createComponentFromItem(c,d))),this.colModel.ready&&this.onColumnsChanged(),!o&&this.createItemDragFeature()}createItemDragFeature(){const{gos:e,beans:t,eventSvc:s,virtualList:i}=this;this.createManagedBean(new Mn(this,i,{dragSourceType:PS.ToolPanel,listItemDragStartEvent:"columnPanelItemDragStart",listItemDragEndEvent:"columnPanelItemDragEnd",eventSource:s,getCurrentDragValue:r=>xb(r),isMoveBlocked:r=>vo(e,t,gr(r)),getNumRows:r=>r.getDisplayedColsList().length,moveItem:(r,a)=>yo(t,gr(r),a)}))}moveItems(e,t){const{gos:s,beans:i}=this,{modelItem:r}=e,{group:a,columnGroup:n,column:o,expanded:l}=r,c=gr(a?n:o);if(vo(s,i,c))return;const d=this.displayedColsList.indexOf(r),h=t?-1:1;let u=0;if(t){const g=e.columnDepth>0&&o.getParent()?.getChildren();g&&g.length&&o===g[0]&&(u=-1)}else a&&(u=l?r.children.length:0);const p=Math.min(Math.max(d+u+h,0),this.displayedColsList.length-1);this.skipRefocus=!0,yo(i,c,{rowIndex:p,position:t?"top":"bottom",component:this.virtualList.getComponentAt(p)}),this.focusRowIfAlive(p-u).then(()=>{this.skipRefocus=!1})}createComponentFromItem(e,t){const s=this.allowDragging;if(e.group){const r=new Co(e,s,this.eventType,t);return this.createBean(r),r}const i=new Nb(e,s,this.groupsExist,t);return this.createBean(i),i}onColumnsChanged(){const e=this.params;this.hasLoadedInitialState||(this.hasLoadedInitialState=!0,this.isInitialState=!!e.initialState);const t=this.getExpandedStates(),s=this.colModel.isPivotMode();!e.suppressSyncLayoutWithGrid&&!s?this.buildTreeFromWhatGridIsDisplaying():this.buildTreeFromProvidedColumnDefs(),this.setExpandedStates(t),this.markFilteredColumns(),this.flattenAndFilterModel(),this.isInitialState=!1}getDisplayedColsList(){return this.displayedColsList}getExpandedStates(){const e={};if(this.isInitialState){const{expandedGroupIds:t}=this.params.initialState;return t.forEach(s=>{e[s]=!0}),e}return this.allColsTree?(this.forEachItem(t=>{if(!t.group)return;const s=t.columnGroup;s&&(e[s.getId()]=t.expanded)}),e):{}}setExpandedStates(e){if(!this.allColsTree)return;const{isInitialState:t}=this;this.forEachItem(s=>{if(!s.group)return;const i=s.columnGroup;if(i){const r=e[i.getId()];(r!=null||t)&&(s.expanded=!!r)}})}buildTreeFromWhatGridIsDisplaying(){ro(this.colModel,this.setColumnLayout.bind(this))}setColumnLayout(e){const t=io(this.colModel,e);this.buildListModel(t),this.groupsExist=e.some(s=>s&&typeof s.children<"u"),this.markFilteredColumns(),this.flattenAndFilterModel()}buildTreeFromProvidedColumnDefs(){const e=this.colModel;this.buildListModel(e.getColDefColTree()),this.groupsExist=!!e.colDefCols?.treeDepth}buildListModel(e){const t=this.onColumnExpanded.bind(this),s=o=>{o.addEventListener("expandedChanged",t);const l=o.removeEventListener.bind(o,"expandedChanged",t);this.destroyColumnItemFuncs.push(l)},i=this.beans.colNames,r=(o,l,c)=>{o.forEach(d=>{FS(d)?a(d,l,c):n(d,l,c)})},a=(o,l,c)=>{const d=o.getColGroupDef();if(d&&d.suppressColumnsToolPanel)return;if(o.isPadding()){r(o.getChildren(),l,c);return}const u=i.getDisplayNameForProvidedColumnGroup(null,o,"columnToolPanel"),p=new ao(u,o,l,!0,this.expandGroupsByDefault);c.push(p),s(p),r(o.getChildren(),l+1,p.children)},n=(o,l,c)=>{if(o.getColDef()&&o.getColDef().suppressColumnsToolPanel)return;const h=i.getDisplayNameForColumn(o,"columnToolPanel");c.push(new ao(h,o,l))};this.destroyColumnTree(),r(e,0,this.allColsTree)}onColumnExpanded(){this.flattenAndFilterModel()}flattenAndFilterModel(){this.displayedColsList=[];const e=i=>{i.passesFilter&&(this.displayedColsList.push(i),i.group&&i.expanded&&i.children.forEach(e))},t=this.virtualList;this.allColsTree.forEach(e),t.setModel(new Bb(this.displayedColsList));let s=null;this.skipRefocus||(s=t.getLastFocusedRow()),t.refresh(),s!=null&&this.focusRowIfAlive(s),this.notifyListeners(),this.refreshAriaLabel()}refreshAriaLabel(){const e=this.getLocaleTextFunc(),t=e("ariaColumnPanelList","Column List"),s=e("columns","Columns"),i=this.displayedColsList.length;xS(this.virtualList.getAriaElement(),`${t} ${i} ${s}`)}focusRowIfAlive(e){return e===-1?Promise.resolve():new Promise(t=>{window.setTimeout(()=>{this.isAlive()&&this.virtualList.focusRow(e),t()},0)})}forEachItem(e){const t=i=>{i.forEach(r=>{e(r),r.group&&t(r.children)})},s=this.allColsTree;s&&t(s)}doSetExpandedAll(e){this.forEachItem(t=>{t.group&&(t.expanded=e)})}setGroupsExpanded(e,t){if(!t){this.doSetExpandedAll(e);return}const s=[];this.forEachItem(r=>{if(!r.group)return;const a=r.columnGroup.getId();t.indexOf(a)>=0&&(r.expanded=e,s.push(a))});const i=t.filter(r=>!s.includes(r));i.length>0&&TS(157,{unrecognisedGroupIds:i})}getExpandState(){let e=0,t=0;return this.forEachItem(s=>{s.group&&(s.expanded?e++:t++)}),e>0&&t>0?2:t>0?1:0}doSetSelectedAll(e){oo(this.beans,this.allColsTree,e,this.eventType)}getSelectionState(){let e=0,t=0;const s=this.colModel.isPivotMode();if(this.forEachItem(i=>{if(i.group||!i.passesFilter)return;const r=i.column,a=r.getColDef();let n;if(s){if(!r.isAllowPivot()&&!r.isAllowRowGroup()&&!r.isAllowValue())return;n=r.isValueActive()||r.isPivotActive()||r.isRowGroupActive()}else{if(a.lockVisible)return;n=r.isVisible()}n?e++:t++}),!(e>0&&t>0))return!(e===0||t>0)}setFilterText(e){this.filterText=to(e)?e.toLowerCase():null,this.markFilteredColumns(),this.flattenAndFilterModel()}markFilteredColumns(){const e=s=>{if(!to(this.filterText))return!0;const i=s.displayName;return i==null||i.toLowerCase().indexOf(this.filterText)!==-1},t=(s,i)=>{let r=!1;if(s.group){const n=e(s);s.children.forEach(o=>{const l=t(o,n||i);l&&(r=l)})}const a=i||r?!0:e(s);return s.passesFilter=a,a};this.allColsTree.forEach(s=>t(s,!1))}notifyListeners(){this.fireGroupExpandedEvent(),this.fireSelectionChangedEvent()}fireGroupExpandedEvent(){const e=this.getExpandState();this.dispatchLocalEvent({type:"groupExpanded",state:e})}fireSelectionChangedEvent(){if(!this.allColsTree)return;const e=this.getSelectionState();this.dispatchLocalEvent({type:"selectionChanged",state:e})}getExpandedGroups(){const e=[];return this.allColsTree&&this.forEachItem(t=>{t.group&&t.expanded&&e.push(t.columnGroup.getId())}),e}},Hb={selector:"AG-PRIMARY-COLS-LIST",component:Vb},zb={tag:"div",cls:"ag-column-select",children:[{tag:"ag-primary-cols-header",ref:"primaryColsHeaderPanel"},{tag:"ag-primary-cols-list",ref:"primaryColsListPanel"}]},bo=class extends dS{constructor(){super(zb,[bS,Hb]),this.primaryColsHeaderPanel=eo,this.primaryColsListPanel=eo,this.registerCSS(uS)}init(e,t,s){const{primaryColsHeaderPanel:i,primaryColsListPanel:r}=this;i.init(t);const a=t.suppressColumnFilter,n=t.suppressColumnSelectAll;t.suppressColumnExpandAll&&a&&n&&i.setDisplayed(!1),this.addManagedListeners(r,{groupExpanded:l=>{i.setExpandState(l.state),t.onStateUpdated()},selectionChanged:l=>i.setSelectionState(l.state)}),r.init(t,e,s),this.addManagedListeners(i,{expandAll:r.doSetExpandedAll.bind(r,!0),collapseAll:r.doSetExpandedAll.bind(r,!1),selectAll:r.doSetSelectedAll.bind(r,!0),unselectAll:r.doSetSelectedAll.bind(r,!1),filterChanged:l=>r.setFilterText(l.filterText)}),this.positionableFeature=this.createManagedBean(new hS(this.getGui(),{minHeight:100}))}toggleResizable(e){this.positionableFeature.setResizable(e?{bottom:!0}:!1)}expandGroups(e){this.primaryColsListPanel.setGroupsExpanded(!0,e)}collapseGroups(e){this.primaryColsListPanel.setGroupsExpanded(!1,e)}setColumnLayout(e){this.primaryColsListPanel.setColumnLayout(e)}syncLayoutWithGrid(){this.primaryColsListPanel.onColumnsChanged()}getExpandedGroups(){return this.primaryColsListPanel.getExpandedGroups()}},Ub=".ag-column-panel{display:flex;flex:1 1 auto;flex-direction:column;overflow:hidden}.ag-pivot-mode-panel{display:flex;height:var(--ag-header-height)}.ag-pivot-mode-select{align-items:center;display:flex}:where(.ag-ltr) .ag-pivot-mode-select{margin-left:var(--ag-widget-container-horizontal-padding)}:where(.ag-rtl) .ag-pivot-mode-select{margin-right:var(--ag-widget-container-horizontal-padding)}.ag-column-panel-column-select{border-bottom:var(--ag-tool-panel-separator-border)}.ag-column-panel-column-select:where(:nth-child(n+2 of :not(.ag-hidden))){border-top:var(--ag-tool-panel-separator-border)}:where(.ag-column-panel) .ag-column-drop-vertical{flex:1 1 0px;min-height:50px;&:where(:not(.ag-last-column-drop)){border-bottom:var(--ag-tool-panel-separator-border)}}",Kb=class extends nS{constructor(){super({tag:"div",cls:"ag-column-panel"}),this.initialised=!1,this.childDestroyFuncs=[],this.registerCSS(Ub)}wireBeans(e){this.colToolPanelFactory=e.colToolPanelFactory}setVisible(e){super.setDisplayed(e),e&&!this.initialised&&this.init(this.params)}init(e){const s={...oS(this.gos,{suppressColumnMove:!1,suppressColumnSelectAll:!1,suppressColumnFilter:!1,suppressColumnExpandAll:!1,contractColumnSelection:!1,suppressPivotMode:!1,suppressRowGroups:!1,suppressValues:!1,suppressPivots:!1,suppressSyncLayoutWithGrid:!1}),...e};this.params=s;const{childDestroyFuncs:i,colToolPanelFactory:r,gos:a}=this,n=a.isModuleRegistered("SharedPivot"),o=n||a.isModuleRegistered("SharedRowGrouping");!s.suppressPivotMode&&r&&n&&(this.pivotModePanel=r.createPivotModePanel(this,i));const l=this.createBean(new bo);if(this.primaryColsPanel=l,i.push(()=>this.destroyBean(this.primaryColsPanel)),l.init(!0,s,"toolPanelUi"),l.addCssClass("ag-column-panel-column-select"),this.appendChild(l),r){!s.suppressRowGroups&&o&&(this.rowGroupDropZonePanel=r.createRowGroupPanel(this,i)),!s.suppressValues&&o&&(this.valuesDropZonePanel=r.createValuesPanel(this,i)),!s.suppressPivots&&n&&(this.pivotDropZonePanel=r.createPivotPanel(this,i)),this.setLastVisible();const[c]=this.addManagedEventListeners({columnPivotModeChanged:()=>{this.resetChildrenHeight(),this.setLastVisible()}});i.push(()=>c())}this.initialised=!0}setPivotModeSectionVisible(e){const t=this.colToolPanelFactory;t&&(this.pivotModePanel=t.setPanelVisible(this.pivotModePanel,e,t.createPivotModePanel.bind(t,this,this.childDestroyFuncs,!0)),this.setLastVisible())}setRowGroupsSectionVisible(e){const t=this.colToolPanelFactory;t&&(this.rowGroupDropZonePanel=t.setPanelVisible(this.rowGroupDropZonePanel,e,t.createRowGroupPanel.bind(t,this,this.childDestroyFuncs)),this.setLastVisible())}setValuesSectionVisible(e){const t=this.colToolPanelFactory;t&&(this.valuesDropZonePanel=t.setPanelVisible(this.valuesDropZonePanel,e,t.createValuesPanel.bind(t,this,this.childDestroyFuncs)),this.setLastVisible())}setPivotSectionVisible(e){const t=this.colToolPanelFactory;t&&(this.pivotDropZonePanel=t.setPanelVisible(this.pivotDropZonePanel,e,t.createPivotPanel.bind(t,this,this.childDestroyFuncs)),this.pivotDropZonePanel?.setDisplayed(e),this.setLastVisible())}setResizers(){[this.primaryColsPanel,this.rowGroupDropZonePanel,this.valuesDropZonePanel,this.pivotDropZonePanel].forEach(e=>{if(!e)return;const t=e.getGui();e.toggleResizable(!t.classList.contains("ag-last-column-drop")&&!t.classList.contains("ag-hidden"))})}setLastVisible(){const e=this.getGui();Array.prototype.slice.call(e.querySelectorAll(".ag-column-drop")).forEach(r=>r.classList.remove("ag-last-column-drop"));const s=e.querySelectorAll(".ag-column-drop:not(.ag-hidden)"),i=cS(s);i&&i.classList.add("ag-last-column-drop"),this.setResizers()}resetChildrenHeight(){const t=this.getGui().children;for(let s=0;s<t.length;s++){const{style:i}=t[s];i.removeProperty("height"),i.removeProperty("flex")}}expandColumnGroups(e){this.primaryColsPanel.expandGroups(e)}collapseColumnGroups(e){this.primaryColsPanel.collapseGroups(e)}setColumnLayout(e){this.primaryColsPanel.setColumnLayout(e)}syncLayoutWithGrid(){this.primaryColsPanel.syncLayoutWithGrid()}destroyChildren(){const e=this.childDestroyFuncs;e.forEach(t=>t()),e.length=0,lS(this.getGui())}refresh(e){return this.destroyChildren(),this.init(e),!0}getState(){return{expandedGroupIds:this.primaryColsPanel.getExpandedGroups()}}destroy(){this.destroyChildren(),super.destroy()}};import{BeanStub as Wb}from"ag-grid-community";import{_createIconNoSpan as jb}from"ag-grid-community";import{DragSourceType as wo,_shouldUpdateColVisibilityAfterGroup as $b}from"ag-grid-community";import{Component as Yb,KeyCode as ft,ManagedFocusFeature as Xb,PositionableFeature as qb,_areEqual as Zb,_clearElement as xo,_createElement as _s,_createIconNoSpan as Jb,_findFocusableElements as Qb,_findNextFocusableElement as mr,_getActiveDomElement as Mo,_isKeyboardMode as ew,_last as tw,_setAriaHidden as sw,_setAriaLabel as iw,_setAriaPosInSet as rw,_setAriaRole as aw,_setAriaSetSize as nw}from"ag-grid-community";var ow=".ag-column-drop{align-items:center;display:inline-flex;overflow:auto;position:relative;width:100%}.ag-column-drop-list{align-items:center;display:flex}.ag-column-drop-cell{align-items:center;background-color:var(--ag-column-drop-cell-background-color);border:var(--ag-column-drop-cell-border);border-radius:500px;color:var(--ag-column-drop-cell-text-color);display:flex;padding:calc(var(--ag-spacing)*.25);position:relative;&:focus-visible{box-shadow:var(--ag-focus-shadow)}:where(.ag-drag-handle){color:var(--ag-column-drop-cell-drag-handle-color)}}:where(.ag-ltr) .ag-column-drop-cell{padding-left:calc(var(--ag-spacing)*.75)}:where(.ag-rtl) .ag-column-drop-cell{padding-right:calc(var(--ag-spacing)*.75)}.ag-column-drop-cell-text{flex:1 1 auto;margin:0 var(--ag-spacing);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ag-column-drop-vertical{align-items:stretch;display:flex;flex-direction:column;min-height:75px;overflow:hidden}.ag-column-drop-vertical-title-bar{align-items:center;display:flex;flex:none;padding:var(--ag-widget-container-vertical-padding) calc(var(--ag-spacing)*2) 0}.ag-column-drop-vertical-list{align-items:stretch;flex-direction:column;flex-grow:1;overflow-x:auto;padding-bottom:var(--ag-spacing);padding-left:var(--ag-spacing);padding-right:var(--ag-spacing);position:relative;>*{flex:none}}:where(.ag-column-drop-empty) .ag-column-drop-vertical-list{overflow:hidden}.ag-column-drop-cell-button{cursor:pointer;min-width:0;opacity:.75;&:hover{opacity:1}}.ag-column-drop-wrapper{display:flex}.ag-column-drop-horizontal-half-width{width:50%!important}.ag-column-drop-cell-ghost{opacity:.5}.ag-column-drop-horizontal{background-color:var(--ag-header-background-color);border-bottom:var(--ag-header-row-border);gap:var(--ag-cell-widget-spacing);height:var(--ag-header-height);overflow:hidden;white-space:nowrap}:where(.ag-ltr) .ag-column-drop-horizontal{padding-left:var(--ag-cell-horizontal-padding)}:where(.ag-rtl) .ag-column-drop-horizontal{padding-right:var(--ag-cell-horizontal-padding)}.ag-column-drop-horizontal-list{gap:var(--ag-cell-widget-spacing)}.ag-column-drop-vertical-cell{margin-top:var(--ag-spacing)}:where(.ag-ltr) .ag-column-drop-vertical-icon{margin-right:var(--ag-widget-horizontal-spacing)}:where(.ag-rtl) .ag-column-drop-vertical-icon{margin-left:var(--ag-widget-horizontal-spacing)}.ag-select-agg-func-popup{background:var(--ag-background-color);border:1px solid var(--ag-border-color);border-radius:var(--ag-border-radius);box-shadow:var(--ag-dropdown-shadow);height:calc(var(--ag-spacing)*5*3.5);padding:0;position:absolute}.ag-select-agg-func-virtual-list-item{cursor:default;&:hover{background-color:var(--ag-selected-row-background-color)}}:where(.ag-ltr) .ag-select-agg-func-virtual-list-item{padding-left:calc(var(--ag-spacing)*2)}:where(.ag-rtl) .ag-select-agg-func-virtual-list-item{padding-right:calc(var(--ag-spacing)*2)}:where(.ag-ltr) .ag-column-drop-horizontal-half-width:where(:not(:last-child)){border-right:1px solid var(--ag-border-color)}:where(.ag-rtl) .ag-column-drop-horizontal-half-width:where(:not(:last-child)){border-left:1px solid var(--ag-border-color)}";function To(e,t,s){e==null||t==null||e.splice(s,0,...t)}var lw={tag:"div",cls:"ag-unselectable",role:"presentation"},Fo=class extends Yb{constructor(e){super(lw),this.horizontal=e,this.state="notDragging",this.guiDestroyFunctions=[],this.childPillComponents=[],this.resizeEnabled=!1,this.addElementClasses(this.getGui()),this.ePillDropList=_s({tag:"div"}),this.addElementClasses(this.ePillDropList,"list"),this.registerCSS(ow)}toggleResizable(e){this.positionableFeature.setResizable(e?{bottom:!0}:!1),this.resizeEnabled=e}isSourceEventFromTarget(e){const{dropZoneTarget:t,dragSource:s}=e;return t.contains(s.eElement)}destroy(){this.destroyGui(),super.destroy()}destroyGui(){this.guiDestroyFunctions.forEach(e=>e()),this.guiDestroyFunctions.length=0,this.childPillComponents.length=0,xo(this.getGui()),xo(this.ePillDropList)}init(e){this.params=e??{},this.createManagedBean(new Xb(this.getFocusableElement(),{onTabKeyDown:this.onTabKeyDown.bind(this),handleKeyDown:this.onKeyDown.bind(this)})),this.setupDropTarget(),this.positionableFeature=new qb(this.getGui()),this.createManagedBean(this.positionableFeature),this.refreshGui(),iw(this.ePillDropList,this.getAriaLabel())}onTabKeyDown(e){const t=Qb(this.getFocusableElement(),null,!0),s=t.length;if(s===0)return;const{shiftKey:i}=e,r=Mo(this.beans),a=r===t[0],n=r===tw(t);s===1||a&&i||n&&!i||t[i?0:s-1].focus()}onKeyDown(e){const{key:t}=e,s=!this.horizontal;let i=t===ft.DOWN,r=t===ft.UP;if(!s){const a=this.gos.get("enableRtl");i=!a&&t===ft.RIGHT||a&&t===ft.LEFT,r=!a&&t===ft.LEFT||a&&t===ft.RIGHT}if(!(!i&&!r))if(e.preventDefault(),e.shiftKey)this.moveFocusedItem(r);else{const a=mr(this.beans,this.getFocusableElement(),!1,r);a&&a.focus()}}moveFocusedItem(e){const t=this.getFocusedItem();if(t===-1)return;const s=e?-1:1;if(!this.normalizeAndUpdateInsertIndex(t,t+s))return;const r=this.childPillComponents[t];if(!r.isMovable())return;const a=r.getItem();this.focusItemAtIndex(this.insertIndex),this.rearrangeItems([a],!0)}addElementClasses(e,t){t=t?`-${t}`:"";const s=this.horizontal?"horizontal":"vertical";e.classList.add(`ag-column-drop${t}`,`ag-column-drop-${s}${t}`)}setupDropTarget(){this.dropTarget={getContainer:this.getGui.bind(this),getIconName:this.getIconName.bind(this),onDragging:this.onDragging.bind(this),onDragEnter:this.onDragEnter.bind(this),onDragLeave:this.onDragLeave.bind(this),onDragStop:this.onDragStop.bind(this),onDragCancel:this.onDragCancel.bind(this),isInterestedIn:this.isInterestedIn.bind(this)},this.beans.dragAndDrop?.addDropTarget(this.dropTarget)}minimumAllowedNewInsertIndex(){return 0}checkInsertIndex(e){const t=this.getNewInsertIndex(e);return t<0?!1:this.normalizeAndUpdateInsertIndex(this.insertIndex,t)}normalizeAndUpdateInsertIndex(e,t){const s=this.minimumAllowedNewInsertIndex(),i=Math.max(s,t),r=i!==e;return r&&(this.insertIndex=i),r}getNewInsertIndex(e){const t=e.event,s=this.horizontal?t.clientX:t.clientY,i=this.childPillComponents.map(a=>a.getGui().getBoundingClientRect()),r=i.findIndex(a=>this.horizontal?a.right>s&&a.left<s:a.top<s&&a.bottom>s);if(r===-1){const a=this.gos.get("enableRtl");return i.every(l=>s>(this.horizontal?l.right:l.bottom))?a&&this.horizontal?0:this.childPillComponents.length:i.every(l=>s<(this.horizontal?l.left:l.top))?a&&this.horizontal?this.childPillComponents.length:0:this.insertIndex}return this.insertIndex<=r?r+1:r}checkDragStartedBySelf(e){this.state==="notDragging"&&(this.state="rearrangeItems",this.potentialDndItems=this.getItems(e.dragSource.getDragItem()),this.refreshGui(),this.checkInsertIndex(e),this.refreshGui())}onDragging(e){this.checkDragStartedBySelf(e),this.checkInsertIndex(e)&&this.refreshGui()}handleDragEnterEnd(e){}onDragEnter(e){const t=this.getItems(e.dragSource.getDragItem());this.state="newItemsIn";const s=t.filter(r=>this.isItemDroppable(r,e)),i=s.every(r=>this.childPillComponents.map(a=>a.getItem()).indexOf(r)!==-1);if(s.length!==0){if(this.potentialDndItems=s,i){this.state="notDragging";return}this.handleDragEnterEnd(e),this.checkInsertIndex(e),this.refreshGui()}}isPotentialDndItems(){return!!this.potentialDndItems?.length}handleDragLeaveEnd(e){}onDragLeave(e){if(this.state==="rearrangeItems"){const t=this.getItems(e.dragSource.getDragItem());this.removeItems(t)}this.isPotentialDndItems()&&(this.handleDragLeaveEnd(e),this.potentialDndItems=[],this.refreshGui()),this.state="notDragging"}onDragCancel(e){this.isPotentialDndItems()&&(this.state==="newItemsIn"&&this.handleDragLeaveEnd(e),this.potentialDndItems=[],this.refreshGui()),this.state="notDragging"}onDragStop(){this.isPotentialDndItems()&&(this.state==="newItemsIn"?this.addItems(this.potentialDndItems):this.rearrangeItems(this.potentialDndItems),this.potentialDndItems=[],this.refreshGui()),this.state="notDragging"}removeItems(e){const t=this.getExistingItems().filter(s=>!e.includes(s));this.updateItems(t)}addItems(e){if(!e)return;const t=this.getExistingItems().slice(),s=e.filter(i=>t.indexOf(i)<0);To(t,s,this.insertIndex),this.updateItems(t)}addItem(e){this.insertIndex=this.getExistingItems().length,this.addItems([e]),this.refreshGui()}rearrangeItems(e,t){let s;return t?s=this.getExistingItems().filter(i=>e.indexOf(i)===-1):s=this.getNonGhostItems().slice(),To(s,e,this.insertIndex),Zb(s,this.getExistingItems())?!1:(this.updateItems(s),!0)}refreshGui(){let e=0;this.horizontal||(e=this.ePillDropList.scrollTop);const t=this.resizeEnabled,s=this.getFocusedItem(),{eGridDiv:i}=this.beans,r=ew();let a=null;r&&(a=mr(this.beans,i)??mr(this.beans,i,!1,!0)),this.toggleResizable(!1),this.destroyGui(),this.addIconAndTitleToGui(),this.addEmptyMessageToGui(),this.addItemsToGui(),e!==0&&(this.ePillDropList.scrollTop=e),t&&this.toggleResizable(t),r&&this.restoreFocus(s,a)}getFocusedItem(){const e=this.getGui(),t=Mo(this.beans);return e.contains(t)?Array.from(e.querySelectorAll(".ag-column-drop-cell")).indexOf(t):-1}focusItemAtIndex(e){const t=this.getGui(),i=Array.from(t.querySelectorAll(".ag-column-drop-cell"))[e];i&&i.focus({preventScroll:!0})}restoreFocus(e,t){const s=this.getGui(),i=Array.from(s.querySelectorAll(".ag-column-drop-cell"));if(e===-1)return;i.length===0&&t.focus();const r=Math.min(i.length-1,e),a=i[r];a&&a.focus()}focusList(e){const t=e?this.childPillComponents.length-1:0;this.restoreFocus(t,this.getFocusableElement())}getNonGhostItems(){const e=this.getExistingItems();return this.isPotentialDndItems()?e.filter(t=>!this.potentialDndItems.includes(t)):e}addItemsToGui(){const t=this.getNonGhostItems().map(s=>this.createItemComponent(s,!1));if(this.isPotentialDndItems()){const s=this.potentialDndItems.map(i=>this.createItemComponent(i,!0));this.insertIndex>=t.length?t.push(...s):t.splice(this.insertIndex,0,...s)}this.appendChild(this.ePillDropList),t.forEach((s,i)=>{i>0&&this.addArrow(this.ePillDropList),this.ePillDropList.appendChild(s.getGui())}),this.addAriaLabelsToComponents()}addAriaLabelsToComponents(){const{childPillComponents:e,ePillDropList:t}=this,s=e.length;aw(t,s===0?"presentation":"listbox");for(let i=0;i<s;i++){const a=e[i].getGui();rw(a,i+1),nw(a,s)}}createItemComponent(e,t){const s=this.createPillComponent(e,this.dropTarget,t,this.horizontal);return s.addEventListener("columnRemove",this.removeItems.bind(this,[e])),this.createBean(s),this.guiDestroyFunctions.push(()=>this.destroyBean(s)),t||this.childPillComponents.push(s),s}addIconAndTitleToGui(){const{title:e,icon:t}=this.params;if(!e||!t)return;const s=_s({tag:"div"});if(sw(s,!0),this.addElementClasses(s,"title-bar"),this.addElementClasses(t,"icon"),this.addOrRemoveCssClass("ag-column-drop-empty",this.isExistingItemsEmpty()),s.appendChild(t),!this.horizontal){const i=_s({tag:"span"});this.addElementClasses(i,"title"),i.textContent=e,s.appendChild(i)}this.appendChild(s)}isExistingItemsEmpty(){return this.getExistingItems().length===0}addEmptyMessageToGui(){const{emptyMessage:e}=this.params;if(!e||!this.isExistingItemsEmpty()||this.isPotentialDndItems())return;const t=_s({tag:"span"});t.textContent=e,this.addElementClasses(t,"empty-message"),this.ePillDropList.appendChild(t)}addArrow(e){if(this.horizontal){const t=this.gos.get("enableRtl"),s=Jb(t?"panelDelimiterRtl":"panelDelimiter",this.beans);this.addElementClasses(s,"cell-separator"),e.appendChild(s)}}};import{Component as cw,DragSourceType as dw,KeyCode as Vs,RefPlaceholder as hw,_createElement as uw}from"ag-grid-community";import{Component as pw,KeyCode as gw,RefPlaceholder as fr,TouchListener as mw,_createIconNoSpan as Po,_escapeString as fw,_setAriaLabel as Cw,_setDisplayed as vw}from"ag-grid-community";var yw={tag:"span",role:"option",children:[{tag:"span",ref:"eDragHandle",cls:"ag-drag-handle ag-column-drop-cell-drag-handle",role:"presentation"},{tag:"span",ref:"eText",cls:"ag-column-drop-cell-text",attrs:{"aria-hidden":"true"}},{tag:"span",ref:"eButton",cls:"ag-column-drop-cell-button",role:"presentation"}]},Ao=class extends pw{constructor(e,t,s,i,r){super(),this.dragSourceDropTarget=e,this.ghost=t,this.horizontal=s,this.template=i,this.agComponents=r,this.eText=fr,this.eDragHandle=fr,this.eButton=fr}postConstruct(){this.setTemplate(this.template??yw,this.agComponents);const e=this.getGui(),{beans:t,eDragHandle:s,eText:i,eButton:r}=this;this.addElementClasses(e),this.addElementClasses(s,"drag-handle"),this.addElementClasses(i,"text"),this.addElementClasses(r,"button"),s.appendChild(Po("columnDrag",t)),r.appendChild(Po("cancel",t)),this.tooltipFeature=this.createOptionalManagedBean(t.registry.createDynamicBean("tooltipFeature",!1,{getGui:()=>this.getGui()})),this.setupComponents(),!this.ghost&&this.isDraggable()&&this.addDragSource(),this.setupAria(),this.setupTooltip(),this.activateTabIndex(),this.refreshDraggable()}isDraggable(){return!0}refreshDraggable(){this.eDragHandle.classList.toggle("ag-column-select-column-readonly",!this.isDraggable())}setupAria(){const e=this.getLocaleTextFunc(),t=[this.getAriaDisplayName()];this.addAdditionalAriaInstructions(t,e),Cw(this.getGui(),t.join(". "))}addAdditionalAriaInstructions(e,t){if(this.isRemovable()){const s=t("ariaDropZoneColumnComponentDescription","Press DELETE to remove");e.push(s)}}setupTooltip(){const e=()=>this.tooltipFeature?.setTooltipAndRefresh(this.getTooltip());e(),this.addManagedEventListeners({newColumnsLoaded:e})}getDragSourceId(){}getDefaultIconName(){return"notAllowed"}addDragSource(){const{beans:{dragAndDrop:e},eDragHandle:t}=this,s=this.createGetDragItem(),i=this.getDefaultIconName(),r={type:this.getDragSourceType(),sourceId:this.getDragSourceId(),eElement:t,getDefaultIconName:()=>i,getDragItem:s,dragItemName:this.getDisplayName()};e?.addDragSource(r,!0),this.addDestroyFunc(()=>e?.removeDragSource(r))}setupComponents(){this.setTextValue(),this.setupRemove(),this.ghost&&this.addCssClass("ag-column-drop-cell-ghost")}isRemovable(){return!0}refreshRemove(){vw(this.eButton,this.isRemovable())}setupRemove(){this.refreshRemove();const e={type:"columnRemove"};this.addGuiEventListener("keydown",s=>this.onKeyDown(s)),this.addManagedElementListeners(this.eButton,{click:s=>{this.dispatchLocalEvent(e),s.stopPropagation()}});const t=new mw(this.eButton);this.addManagedListeners(t,{tap:()=>this.dispatchLocalEvent(e)}),this.addDestroyFunc(t.destroy.bind(t))}onKeyDown(e){e.key===gw.DELETE&&this.isRemovable()&&(e.preventDefault(),this.dispatchLocalEvent({type:"columnRemove"}))}getDisplayValue(){return this.getDisplayName()}setTextValue(){const e=this.getDisplayValue(),t=fw(e);this.eText.innerHTML=t}addElementClasses(e,t){t=t?`-${t}`:"";const s=this.horizontal?"horizontal":"vertical";e.classList.add(`ag-column-drop-cell${t}`,`ag-column-drop-${s}-cell${t}`)}destroy(){super.destroy(),this.dragSourceDropTarget=null}},Sw=class extends Ao{constructor(e,t,s,i,r){super(t,s,r),this.column=e,this.dropZonePurpose=i,this.eSortIndicator=hw,this.popupShowing=!1}postConstruct(){const{sortSvc:e,colNames:t}=this.beans;this.template={tag:"span",role:"option",children:[{tag:"span",ref:"eDragHandle",cls:"ag-drag-handle ag-column-drop-cell-drag-handle",role:"presentation"},{tag:"span",ref:"eText",cls:"ag-column-drop-cell-text",attrs:{"aria-hidden":"true"}},e?{tag:"ag-sort-indicator",ref:"eSortIndicator"}:void 0,{tag:"span",ref:"eButton",cls:"ag-column-drop-cell-button",role:"presentation"}]},e&&(this.agComponents=[e.getSortIndicatorSelector()]),this.displayName=t.getDisplayNameForColumn(this.column,"columnDrop"),super.postConstruct(),e&&(this.setupSort(),this.addManagedEventListeners({sortChanged:()=>{this.setupAria()}})),this.isGroupingZone()&&this.addManagedPropertyListener("groupLockGroupColumns",()=>{this.refreshRemove(),this.refreshDraggable(),this.setupAria()})}getItem(){return this.column}getDisplayName(){return this.displayName}getTooltip(){return this.column.getColDef().headerTooltip}addAdditionalAriaInstructions(e,t){const s=this.gos.get("rowGroupPanelSuppressSort"),i=this.gos.get("functionsReadOnly");if(this.isAggregationZone()&&!i){const r=t("ariaDropZoneColumnValueItemDescription","Press ENTER to change the aggregation type");e.push(r)}if(this.isGroupingZone()&&this.column.isSortable()&&!s){const r=t("ariaDropZoneColumnGroupItemDescription","Press ENTER to sort");e.push(r)}super.addAdditionalAriaInstructions(e,t)}isMovable(){return this.isDraggable()}isDraggable(){return this.isReadOnly()}isRemovable(){return this.isReadOnly()}isReadOnly(){return!this.isGroupingAndLocked()&&!this.gos.get("functionsReadOnly")}getAriaDisplayName(){const e=this.getLocaleTextFunc(),{name:t,aggFuncName:s}=this.getColumnAndAggFuncName(),i=e("ariaDropZoneColumnComponentAggFuncSeparator"," of "),r={asc:e("ariaDropZoneColumnComponentSortAscending","ascending"),desc:e("ariaDropZoneColumnComponentSortDescending","descending")},a=this.column.getSort(),n=this.gos.get("rowGroupPanelSuppressSort");return[s&&`${s}${i}`,t,this.isGroupingZone()&&!n&&a&&`, ${r[a]}`].filter(o=>!!o).join("")}getColumnAndAggFuncName(){const e=this.displayName;let t="";if(this.isAggregationZone()){const s=this.column.getAggFunc(),i=typeof s=="string"?s:"agg";t=this.getLocaleTextFunc()(i,i)}return{name:e,aggFuncName:t}}setupSort(){if(!(!this.column.isSortable()||!this.isGroupingZone())&&!this.gos.get("rowGroupPanelSuppressSort")){this.eSortIndicator.setupSort(this.column,!0);const e=t=>{t.preventDefault(),this.beans.sortSvc.progressSortFromEvent(this.column,t)};this.addGuiEventListener("click",e),this.addGuiEventListener("keydown",t=>{t.key===Vs.ENTER&&this.isGroupingZone()&&e(t)})}}getDefaultIconName(){return"hide"}createGetDragItem(){const{column:e}=this;return()=>{const t={};return t[e.getId()]=e.isVisible(),{columns:[e],visibleState:t}}}setupComponents(){super.setupComponents(),this.isAggregationZone()&&!this.gos.get("functionsReadOnly")&&this.addGuiEventListener("click",this.onShowAggFuncSelection.bind(this))}onKeyDown(e){super.onKeyDown(e),e.key===Vs.ENTER&&this.isAggregationZone()&&!this.gos.get("functionsReadOnly")&&(e.preventDefault(),this.onShowAggFuncSelection())}getDisplayValue(){const{name:e,aggFuncName:t}=this.getColumnAndAggFuncName();return this.isAggregationZone()?`${t}(${e})`:e}onShowAggFuncSelection(){if(this.popupShowing)return;this.popupShowing=!0;const{aggFuncSvc:e,popupSvc:t}=this.beans,s=new ut({cssIdentifier:"select-agg-func"}),i=e.getFuncNames(this.column),r=this.getGui(),a=s.getGui();s.setModel({getRow:function(u){return i[u]},getRowCount:function(){return i.length}}),this.createBean(s);const n=uw({tag:"div",cls:"ag-select-agg-func-popup"});n.style.top="0px",n.style.left="0px",n.appendChild(a),n.style.width=`${r.clientWidth}px`;const[o]=this.addManagedElementListeners(n,{focusout:u=>{!n.contains(u.relatedTarget)&&d&&d.hideFunc()}}),l=u=>{this.destroyBean(s),this.popupShowing=!1,u?.key==="Escape"&&r.focus(),o&&o()},c=this.getLocaleTextFunc(),d=t.addPopup({modal:!0,eChild:n,closeOnEsc:!0,closedCallback:l,ariaLabel:c("ariaLabelAggregationFunction","Aggregation Function")});d&&s.setComponentCreator(this.createAggSelect.bind(this,d.hideFunc)),s.addGuiEventListener("keydown",u=>{if(u.key===Vs.ENTER||u.key===Vs.SPACE){const p=s.getLastFocusedRow();if(p==null)return;const g=s.getComponentAt(p);g&&g.selectItem()}}),t.positionPopupByComponent({type:"aggFuncSelect",eventSource:r,ePopup:n,keepWithinBounds:!0,column:this.column,position:"under"}),s.refresh();let h=i.findIndex(u=>u===this.column.getAggFunc());h===-1&&(h=0),s.focusRow(h)}createAggSelect(e,t){const s=()=>{e(),this.getGui().focus(),this.beans.valueColsSvc?.setColumnAggFunc?.(this.column,t,"toolPanelDragAndDrop")},i=this.getLocaleTextFunc(),r=t.toString(),a=i(r,r);return new bw(s,a)}isGroupingAndLocked(){return this.isGroupingZone()&&zt(this.column,this.beans)}isAggregationZone(){return this.dropZonePurpose==="aggregation"}isGroupingZone(){return this.dropZonePurpose==="rowGroup"}getDragSourceType(){return dw.ToolPanel}destroy(){super.destroy(),this.column=null}},bw=class extends cw{constructor(e,t){super({tag:"div",cls:"ag-select-agg-func-item"}),this.selectItem=e,this.getGui().innerText=t,this.addGuiEventListener("click",this.selectItem)}},Cr=class extends Fo{constructor(e,t){super(e),this.dropZonePurpose=t,this.addElementClasses(this.getGui(),this.dropZonePurpose.toLowerCase())}init(e){super.init(e),this.addManagedEventListeners({newColumnsLoaded:this.refreshGui.bind(this)}),this.addManagedPropertyListeners(["functionsReadOnly","rowGroupPanelSuppressSort","groupLockGroupColumns"],this.refreshGui.bind(this))}getItems(e){return e.columns??[]}isInterestedIn(e){return e===wo.HeaderCell||e===wo.ToolPanel}minimumAllowedNewInsertIndex(){const{gos:e,rowGroupColsSvc:t}=this.beans,s=e.get("groupLockGroupColumns"),i=t?.columns.length??0;return s===-1?i:Math.min(s,i)}showOrHideColumnOnExit(e){return this.isRowGroupPanel()&&$b(this.gos,!0)&&!e.fromNudge}handleDragEnterEnd(e){if(this.showOrHideColumnOnExit(e)){const i=e.dragSource.getDragItem().columns;this.setColumnsVisible(i,!1,"uiColumnDragged")}}handleDragLeaveEnd(e){if(this.showOrHideColumnOnExit(e)){const s=e.dragSource.getDragItem();this.setColumnsVisible(s.columns,!0,"uiColumnDragged")}}setColumnsVisible(e,t,s){if(e){const i=e.filter(r=>!r.getColDef().lockVisible);this.beans.colModel.setColsVisible(i,t,s)}}isRowGroupPanel(){return this.dropZonePurpose==="rowGroup"}createPillComponent(e,t,s,i){return new Sw(e,t,s,this.dropZonePurpose,i)}},Ro=class extends Cr{constructor(e){super(e,"pivot")}postConstruct(){const e=this.getLocaleTextFunc(),t=e("pivotColumnsEmptyMessage","Drag here to set column labels"),s=e("pivots","Column Labels");super.init({icon:jb("pivotPanel",this.beans,null),emptyMessage:t,title:s}),this.addManagedEventListeners({newColumnsLoaded:this.refresh.bind(this),columnPivotChanged:this.refresh.bind(this),columnPivotModeChanged:this.checkVisibility.bind(this)}),this.refresh()}getAriaLabel(){return this.getLocaleTextFunc()("ariaPivotDropZonePanelLabel","Column Labels")}refresh(){this.checkVisibility(),this.refreshGui()}checkVisibility(){const e=this.beans.colModel,t=e.isPivotMode();if(this.horizontal)switch(this.gos.get("pivotPanelShow")){case"always":this.setDisplayed(t);break;case"onlyWhenPivoting":{const s=e.isPivotActive();this.setDisplayed(t&&s);break}default:this.setDisplayed(!1);break}else this.setDisplayed(t)}isItemDroppable(e,t){return this.gos.get("functionsReadOnly")||!e.isPrimary()?!1:e.isAllowPivot()&&(!e.isPivotActive()||this.isSourceEventFromTarget(t))}updateItems(e){this.beans.pivotColsSvc?.setColumns(e,"toolPanelUi")}getIconName(){return this.isPotentialDndItems()?"pivot":"notAllowed"}getExistingItems(){return this.beans.pivotColsSvc?.columns??[]}};import{_createIconNoSpan as ww}from"ag-grid-community";var Eo=class extends Cr{constructor(e){super(e,"rowGroup")}postConstruct(){const e=this.getLocaleTextFunc(),t=e("rowGroupColumnsEmptyMessage","Drag here to set row groups"),s=e("groups","Row Groups");super.init({icon:ww("rowGroupPanel",this.beans,null),emptyMessage:t,title:s}),this.addManagedEventListeners({columnRowGroupChanged:this.refreshGui.bind(this)})}getAriaLabel(){return this.getLocaleTextFunc()("ariaRowGroupDropZonePanelLabel","Row Groups")}isItemDroppable(e,t){return this.gos.get("functionsReadOnly")||!e.isPrimary()||e.colDef.showRowGroup?!1:e.isAllowRowGroup()&&(!e.isRowGroupActive()||this.isSourceEventFromTarget(t))}updateItems(e){this.beans.rowGroupColsSvc?.setColumns(e,"toolPanelUi")}getIconName(){return this.isPotentialDndItems()?"group":"notAllowed"}getExistingItems(){return this.beans.rowGroupColsSvc?.columns??[]}};import{_createIconNoSpan as xw}from"ag-grid-community";var Mw=class extends Cr{constructor(e){super(e,"aggregation")}postConstruct(){const e=this.getLocaleTextFunc(),t=e("valueColumnsEmptyMessage","Drag here to aggregate"),s=e("values","Values");super.init({icon:xw("valuePanel",this.beans,null),emptyMessage:t,title:s}),this.addManagedEventListeners({columnValueChanged:this.refreshGui.bind(this)})}getAriaLabel(){return this.getLocaleTextFunc()("ariaValuesDropZonePanelLabel","Values")}getIconName(){return this.isPotentialDndItems()?"aggregate":"notAllowed"}isItemDroppable(e,t){return this.gos.get("functionsReadOnly")||!e.isPrimary()?!1:e.isAllowValue()&&(!e.isValueActive()||this.isSourceEventFromTarget(t))}updateItems(e){this.beans.valueColsSvc?.setColumns(e,"toolPanelUi")}getExistingItems(){return this.beans.valueColsSvc?.columns??[]}};import{AgToggleButtonSelector as Tw,Component as Fw,RefPlaceholder as Pw}from"ag-grid-community";var Aw={tag:"div",cls:"ag-pivot-mode-panel",children:[{tag:"ag-toggle-button",ref:"cbPivotMode",cls:"ag-pivot-mode-select"}]},Rw=class extends Fw{constructor(){super(...arguments),this.cbPivotMode=Pw}postConstruct(){this.setTemplate(Aw,[Tw]);const e=this.cbPivotMode,{colModel:t,ctrlsSvc:s,gos:i}=this.beans;e.setValue(t.isPivotMode());const r=this.getLocaleTextFunc();e.setLabel(r("pivotMode","Pivot Mode"));const a=()=>{const o=!!e.getValue();o!==t.isPivotMode()&&(i.updateGridOptions({options:{pivotMode:o},source:"toolPanelUi"}),s.getHeaderRowContainerCtrls().forEach(l=>l.refresh()))},n=()=>{const o=t.isPivotMode();e.setValue(o)};this.addManagedListeners(e,{fieldValueChanged:a}),this.addManagedEventListeners({newColumnsLoaded:n,columnPivotModeChanged:n})}},Ew=class extends Wb{constructor(){super(...arguments),this.beanName="colToolPanelFactory"}setPanelVisible(e,t,s){return e?e.setDisplayed(t):t&&(e=s()),e}createRowGroupPanel(e,t){return this.createPanel(e,t,new Eo(!1))}createValuesPanel(e,t){return this.createPanel(e,t,new Mw(!1))}createPivotPanel(e,t){return this.createPanel(e,t,new Ro(!1))}createPivotModePanel(e,t,s){return this.createPanel(e,t,new Rw,s)}createPanel(e,t,s,i){return s=e.createBean(s),t.push(()=>e.destroyBean(s)),i?e.prependChild(s):e.appendChild(s),s}},Io={moduleName:"ColumnsToolPanel",version:E,beans:[Ew],userComponents:{agColumnsToolPanel:Kb},icons:{columnsToolPanel:"columns",menuAddRowGroup:"group",menuRemoveRowGroup:"group",pivotPanel:"pivot",rowGroupPanel:"group",valuePanel:"aggregation",columnSelectClosed:"tree-closed",columnSelectOpen:"tree-open",columnSelectIndeterminate:"tree-indeterminate"},dependsOn:[O,Os,ty,iy,sy,Bs]};import{_ColumnMoveModule as Iw,_PopupModule as Dw,_SharedDragAndDropModule as Lw,_SharedMenuModule as kw}from"ag-grid-community";import{BeanStub as Gw,_createIconNoSpan as Do,_warn as Lo}from"ag-grid-community";var Ow=class extends Gw{constructor(){super(...arguments),this.beanName="chartMenuItemMapper"}getChartItems(e){const t=this.beans,s=t.chartSvc,i=e==="pivotChart";if(!s)return null;const r=this.getLocaleTextFunc.bind(this),a=i?new Nw(t,s,r):new Bw(t,s,r),n=s.isEnterprise();let o=a.getMenuItem();if(o&&o.subMenu&&!n){const c=d=>({...d,subMenu:d.subMenu?.filter(h=>!h._enterprise).map(h=>c(h))});o=c(o)}const l=this.gos.get("chartToolPanelsDef")?.settingsPanel?.chartGroupsDef;return l&&(o=this.filterAndOrderChartMenu(o,l,a.getConfigLookup())),this.cleanInternals(o)}cleanInternals(e){if(!e)return e;const t=s=>(delete s?._key,delete s?._enterprise,s?.subMenu?.forEach(i=>t(i)),s);return t(e)}buildLookup(e){const t={},s=i=>{t[i._key]=i,i.subMenu&&i.subMenu.forEach(r=>s(r))};return s(e),t}filterAndOrderChartMenu(e,t,s){const i=this.buildLookup(e),r={...e,subMenu:[]};for(const a of Object.keys(t)){const n=t[a],o=s[a];if(o===null)continue;if(o==null){Lo(173,{group:a});continue}const l=i[o._key];if(l)if(l.subMenu){const c=n.map(d=>{const h=o[d];if(h==null){Lo(174,{group:a,chartType:d});return}return i[h]}).filter(d=>d!==void 0);c.length>0&&(l.subMenu=c,r.subMenu?.push(l))}else r.subMenu?.push(l)}return r.subMenu?.length==0?null:r}},Nw=class{constructor(e,t,s){this.beans=e,this.chartSvc=t,this.getLocaleTextFunc=s}getMenuItem(){const e=this.getLocaleTextFunc(),t=(s,i,r,a,n=!1)=>({name:e(s,i+"\u200E"),action:()=>this.chartSvc.createPivotChart({chartType:r}),_key:a,_enterprise:n});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:Do("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}}},Bw=class{constructor(e,t,s){this.beans=e,this.chartSvc=t,this.getLocaleTextFunc=s}getMenuItem(){const e=this.getLocaleTextFunc(),t=(s,i,r,a,n=!1)=>({name:e(s,i),action:()=>this.chartSvc.createChartFromCurrentRange(r),_key:a,_enterprise:n});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:Do("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}}}};import{BeanStub as _w,_addGridCommonParams as Vw,_findNextFocusableElement as Hw}from"ag-grid-community";var zw=class extends _w{constructor(){super(...arguments),this.beanName="colChooserFactory"}createColumnSelectPanel(e,t,s,i){const r=e.createManagedBean(new bo),a=i??t?.getColDef().columnChooserParams??{},{contractColumnSelection:n,suppressColumnExpandAll:o,suppressColumnFilter:l,suppressColumnSelectAll:c,suppressSyncLayoutWithGrid:d,columnLayout:h}=a;return r.init(!!s,Vw(this.gos,{suppressColumnMove:!1,suppressValues:!1,suppressPivots:!1,suppressRowGroups:!1,suppressPivotMode:!1,contractColumnSelection:!!n,suppressColumnExpandAll:!!o,suppressColumnFilter:!!l,suppressColumnSelectAll:!!c,suppressSyncLayoutWithGrid:!!h||!!d,onStateUpdated:()=>{}}),"columnMenu"),h&&r.setColumnLayout(h),r}showColumnChooser({column:e,chooserParams:t,eventSource:s,headerPosition:i}){this.hideActiveColumnChooser();const r=this.createColumnSelectPanel(this,e,!0,t),a=this.getLocaleTextFunc(),n=this.beans,{visibleCols:o,focusSvc:l,menuUtils:c}=n,d=o.allCols.indexOf(e),h=e?l.focusedHeader??i??null:null;this.activeColumnChooserDialog=this.createBean(new kt({title:a("chooseColumns","Choose Columns"),component:r,width:300,height:300,resizable:!0,movable:!0,centered:!0,closable:!0,afterGuiAttached:()=>{Hw(n,r.getGui())?.focus({preventScroll:!0}),this.dispatchVisibleChangedEvent(!0,e)},closedCallback:u=>{const p=this.activeColumnChooser.getGui();this.destroyBean(this.activeColumnChooser),this.activeColumnChooser=void 0,this.activeColumnChooserDialog=void 0,this.dispatchVisibleChangedEvent(!1,e),e&&c.restoreFocusOnClose({column:e,headerPosition:h,columnIndex:d,eventSource:s},p,u,!0)},postProcessPopupParams:{type:"columnChooser",column:e,eventSource:s}})),this.activeColumnChooser=r}hideActiveColumnChooser(){this.destroyBean(this.activeColumnChooserDialog)}dispatchVisibleChangedEvent(e,t){this.eventSvc.dispatchEvent({type:"columnMenuVisibleChanged",visible:e,switchingTab:!1,key:"columnChooser",column:t??null})}};import{BeanStub as Uw,_addGridCommonParams as Kw,_isClientSideRowModel as Ww,_isLegacyMenuEnabled as jw}from"ag-grid-community";import{BeanStub as $w,_createIconNoSpan as j,_escapeString as vr,_exists as Yw,_getRowNode as Xw,_resetColumnState as qw,_warn as Zw}from"ag-grid-community";var Ze="separator";function ko(e,t){if(e)for(let s=e.length-2;s>=0;s--){const i=e[s]===t,r=e[s+1]===t;i&&r&&e.splice(s+1,1)}}var Jw=class extends $w{constructor(){super(...arguments),this.beanName="menuItemMapper"}mapWithStockItems(e,t,s,i){if(!e)return[];const r=[],a=this.getLocaleTextFunc(),{beans:n,gos:o}=this,{validation:l,pinnedCols:c,colAutosize:d,aggFuncSvc:h,rowGroupColsSvc:u,colNames:p,colModel:g,clipboardSvc:m,expansionSvc:f,focusSvc:C,csvCreator:v,excelCreator:y,menuSvc:S,colChooserFactory:b,sortSvc:w,chartMenuItemMapper:F,valueColsSvc:T}=n,P=(A,M,k,L)=>{switch(l?.validateMenuItem(A),A){case"pinSubMenu":return c&&M?{name:a("pinColumn","Pin Column"),icon:j("menuPin",n,null),subMenu:["clearPinned","pinLeft","pinRight"]}:null;case"pinLeft":return c&&M?{name:a("pinLeft","Pin Left"),action:()=>c.setColsPinned([M],"left",L),checked:!!M&&M.isPinnedLeft()}:null;case"pinRight":return c&&M?{name:a("pinRight","Pin Right"),action:()=>c.setColsPinned([M],"right",L),checked:!!M&&M.isPinnedRight()}:null;case"clearPinned":return c&&M?{name:a("noPin","No Pin"),action:()=>c.setColsPinned([M],null,L),checked:!!M&&!M.isPinned()}:null;case"valueAggSubMenu":return h&&T&&(M?.isPrimary()||M?.getColDef().pivotValueColumn)?{name:a("valueAggregation","Value Aggregation"),icon:j("menuValue",n,null),subMenu:Qw(M,h,T,a),disabled:o.get("functionsReadOnly")}:null;case"autoSizeThis":return d?{name:a("autosizeThisColumn","Autosize This Column"),action:()=>d.autoSizeColumn(M,L,o.get("skipHeaderOnAutoSize"))}:null;case"autoSizeAll":return d?{name:a("autosizeAllColumns","Autosize All Columns"),action:()=>d.autoSizeAllColumns(L,o.get("skipHeaderOnAutoSize"))}:null;case"rowGroup":return u?{name:a("groupBy","Group by")+" "+vr(p.getDisplayNameForColumn(M,"header")),disabled:o.get("functionsReadOnly")||M?.isRowGroupActive()||!M?.getColDef().enableRowGroup,action:()=>u.addColumns([M],L),icon:j("menuAddRowGroup",n,null)}:null;case"rowUnGroup":if(u&&o.isModuleRegistered("SharedRowGrouping")){const D=M?.getColDef().showRowGroup,R=o.get("groupLockGroupColumns");let G,K,te;if(D===!0)G=a("ungroupAll","Un-Group All"),K=o.get("functionsReadOnly")||R===-1||R>=(u.columns.length??0),te=()=>u.setColumns(u.columns.slice(0,R),L);else if(typeof D=="string"){const X=g.getColDefCol(D),se=X!=null?vr(p.getDisplayNameForColumn(X,"header")):D;G=a("ungroupBy","Un-Group by")+" "+se,K=o.get("functionsReadOnly")||zt(X,n),te=()=>{u.removeColumns([D],L)}}else G=a("ungroupBy","Un-Group by")+" "+vr(p.getDisplayNameForColumn(M,"header")),K=o.get("functionsReadOnly")||!M?.isRowGroupActive()||!M?.getColDef().enableRowGroup||zt(M,n),te=()=>u.removeColumns([M],L);return{name:G,disabled:K,action:te,icon:j("menuRemoveRowGroup",n,null)}}else return null;case"resetColumns":return{name:a("resetColumns","Reset Columns"),action:()=>qw(n,L)};case"expandAll":return f?{name:a("expandAll","Expand All Row Groups"),action:()=>f.expandAll(!0)}:null;case"contractAll":return f?{name:a("collapseAll","Collapse All Row Groups"),action:()=>f.expandAll(!1)}:null;case"copy":return m?{name:a("copy","Copy"),shortcut:a("ctrlC","Ctrl+C"),icon:j("clipboardCopy",n,null),action:()=>m.copyToClipboard()}:null;case"copyWithHeaders":return m?{name:a("copyWithHeaders","Copy with Headers"),icon:j("clipboardCopy",n,null),action:()=>m.copyToClipboard({includeHeaders:!0})}:null;case"copyWithGroupHeaders":return m?{name:a("copyWithGroupHeaders","Copy with Group Headers"),icon:j("clipboardCopy",n,null),action:()=>m.copyToClipboard({includeHeaders:!0,includeGroupHeaders:!0})}:null;case"cut":if(m){const D=C.getFocusedCell(),R=D?Xw(n,D):null,G=R?D?.column.isCellEditable(R):!1;return{name:a("cut","Cut"),shortcut:a("ctrlX","Ctrl+X"),icon:j("clipboardCut",n,null),disabled:!G||o.get("suppressCutToClipboard"),action:()=>m.cutToClipboard(void 0,"contextMenu")}}else return null;case"paste":return m?{name:a("paste","Paste"),shortcut:a("ctrlV","Ctrl+V"),disabled:!0,icon:j("clipboardPaste",n,null),action:()=>m.pasteFromClipboard()}:null;case"export":{const D=[];return!o.get("suppressCsvExport")&&v&&D.push("csvExport"),!o.get("suppressExcelExport")&&y&&D.push("excelExport"),D.length?{name:a("export","Export"),subMenu:D,icon:j("save",n,null)}:null}case"csvExport":return v?{name:a("csvExport","CSV Export"),icon:j("csvExport",n,null),action:()=>v.exportDataAsCsv()}:null;case"excelExport":return y?{name:a("excelExport","Excel Export"),icon:j("excelExport",n,null),action:()=>y.exportDataAsExcel()}:null;case"separator":return"separator";case"pivotChart":case"chartRange":return F.getChartItems(A);case"columnFilter":return S&&M?{name:a("columnFilter","Column Filter"),icon:j("filter",n,null),action:()=>S.showFilterMenu({column:M,buttonElement:k(),containerType:"columnFilter",positionBy:"button"})}:null;case"columnChooser":{const D=C.focusedHeader;return b?{name:a("columnChooser","Choose Columns"),icon:j("columns",n,null),action:()=>b.showColumnChooser({column:M,eventSource:k(),headerPosition:D})}:null}case"sortAscending":return w?{name:a("sortAscending","Sort Ascending"),icon:j("sortAscending",n,null),action:()=>w.setSortForColumn(M,"asc",!1,L)}:null;case"sortDescending":return w?{name:a("sortDescending","Sort Descending"),icon:j("sortDescending",n,null),action:()=>w.setSortForColumn(M,"desc",!1,L)}:null;case"sortUnSort":return w?{name:a("sortUnSort","Clear Sort"),icon:j("sortUnSort",n,null),action:()=>w.setSortForColumn(M,null,!1,L)}:null;default:return Zw(176,{key:A}),null}};return e.forEach(A=>{let M;if(typeof A=="string"?M=P(A,t,s,i):M={...A},!M)return;const k=M,{subMenu:L}=k;L&&L instanceof Array&&(k.subMenu=this.mapWithStockItems(L,t,s,i)),M!=null&&r.push(M)}),ko(r,Ze),r}};function Qw(e,t,s,i){let r;if(e.isPrimary())r=e;else{const n=e.getColDef().pivotValueColumn;r=Yw(n)?n:void 0}const a=[];if(r){const n=r.isValueActive(),o=t.getFuncNames(r);a.push({name:i("noAggregation","None"),action:()=>{s.removeColumns([r],"contextMenu"),s.setColumnAggFunc(r,void 0,"contextMenu")},checked:!n}),o.forEach(l=>{a.push({name:i(l,t.getDefaultFuncLabel(l)),action:()=>{s.setColumnAggFunc(r,l,"contextMenu"),s.addColumns([r],"contextMenu")},checked:n&&r.getAggFunc()===l})})}return a}var ex=class extends Uw{constructor(){super(...arguments),this.beanName="colMenuFactory"}createMenu(e,t,s,i){const r=e.createManagedBean(new Ut(0,{column:s??null,node:null,value:null})),a=this.beans.menuItemMapper.mapWithStockItems(t,s??null,i,"columnMenu");return r.addMenuItems(a),r}getMenuItems(e=null,t=null){const s=this.getDefaultMenuOptions(e);let i;const r=(e?.getColDef()??t?.getColGroupDef())?.mainMenuItems;if(Array.isArray(r))i=r;else if(typeof r=="function")i=r(Kw(this.gos,{column:e,columnGroup:t,defaultItems:s}));else{const a=this.gos.getCallback("getMainMenuItems");a?i=a({column:e,columnGroup:t,defaultItems:s}):i=s}return ko(i,Ze),i}getDefaultMenuOptions(e){const t=[],{beans:s,gos:i}=this,{colChooserFactory:r,rowGroupColsSvc:a,colModel:n,expansionSvc:o,sortSvc:l,menuSvc:c,pinnedCols:d,aggFuncSvc:h,colAutosize:u}=s,p=jw(i),g=()=>{!p&&r&&t.push("columnChooser"),t.push("resetColumns")};if(!e)return g(),t;const{colDef:m}=e,f=d&&!m.lockPinned,C=a?.columns.length??0,v=C>0,y=e.isPrimary(),S=h&&y&&v&&e.isAllowValue()||!y;if(l&&!p&&e.isSortable()){const b=e.getSort();b!=="asc"&&t.push("sortAscending"),b!=="desc"&&t.push("sortDescending"),b&&t.push("sortUnSort"),t.push(Ze)}if(c?.isFilterMenuItemEnabled(e)&&(t.push("columnFilter"),t.push(Ze)),f&&t.push("pinSubMenu"),S&&t.push("valueAggSubMenu"),(f||S)&&t.push(Ze),u&&(t.push("autoSizeThis"),t.push("autoSizeAll"),t.push(Ze)),a&&i.isModuleRegistered("SharedRowGrouping")){const b=t.length;m.showRowGroup?t.push("rowUnGroup"):e.isAllowRowGroup()&&y&&(e.isRowGroupActive()?zt(e,s)||t.push("rowUnGroup"):t.push("rowGroup")),t.length>b&&t.push(Ze)}return g(),o&&Ww(i)&&(i.get("treeData")||C>(n.isPivotMode()?1:0))&&(t.push("expandAll"),t.push("contractAll")),t}};import{BeanStub as tx,Component as sx,_addGridCommonParams as ix,_anchorElementToMouseMoveEvent as Go,_areCellsEqual as rx,_createElement as ax,_createIconNoSpan as nx,_exists as Oo,_focusInto as ox,_getPageBody as lx,_getRootNode as cx,_isIOSUserAgent as dx,_isKeyboardMode as hx,_isNothingFocused as ux,_isPromise as px,_isVisible as gx,_preserveRangesWhile as No,_warn as mx}from"ag-grid-community";var fx="ag-menu",Bo="ag-context-menu-open",Cx="ag-context-menu-loading-icon",vx=class extends tx{constructor(){super(...arguments),this.beanName="contextMenuSvc",this.destroyLoadingSpinner=null,this.lastPromise=0}hideActiveMenu(){this.destroyBean(this.activeMenu)}getMenuItems(e,t,s,i){const r=[],{clipboardSvc:a,chartSvc:n,csvCreator:o,excelCreator:l,colModel:c,rangeSvc:d,gos:h}=this.beans;if(Oo(e)&&a&&t&&(h.get("suppressCutToClipboard")||r.push("cut"),r.push("copy","copyWithHeaders","copyWithGroupHeaders","paste","separator")),h.get("enableCharts")&&n&&(c.isPivotMode()&&r.push("pivotChart"),d&&!d.isEmpty()&&r.push("chartRange")),Oo(e)){const m=h.get("suppressExcelExport")||!l,f=h.get("suppressCsvExport")||!o;!dx()&&(!m||!f)&&r.push("export")}const u=r.length?r:void 0,p=t?.getColDef().contextMenuItems;return Array.isArray(p)?p:typeof p=="function"?p(ix(h,{column:t,node:e,value:s,defaultItems:u,event:i})):h.getCallback("getContextMenuItems")?.({column:t,node:e,value:s,defaultItems:u,event:i})??r}getContextMenuPosition(e,t){const s=this.getRowCtrl(e),i=this.getCellGui(s,t);if(!i)return{x:0,y:s?.getRowYPosition()??0};const r=i.getBoundingClientRect();return{x:r.x+r.width/2,y:r.y+r.height/2}}showContextMenu(e){const t=e.rowNode??null,s=e.column??null;let{anchorToElement:i,value:r,source:a}=e;t&&s&&r==null&&(r=this.beans.valueSvc.getValueForDisplay(s,t)),i==null&&(i=this.getContextMenuAnchorElement(t,s)),this.beans.menuUtils.onContextMenu({mouseEvent:e.mouseEvent??null,touchEvent:e.touchEvent??null,showMenuCallback:n=>this.showMenu(t,s,r,n,i),source:a})}handleContextMenuMouseEvent(e,t,s,i){const r=i?.rowNode??s?.rowNode??null,a=i?.column??s?.findFullWidthInfoForEvent(e||t)?.column??null,{valueSvc:n,ctrlsSvc:o}=this.beans,l=a?n.getValue(a,r):null,c=o.getGridBodyCtrl(),d=i?i.eGui:c.eGridBody;this.showContextMenu({mouseEvent:e,touchEvent:t,rowNode:r,column:a,value:l,anchorToElement:d,source:"ui"})}showMenu(e,t,s,i,r){const a=this.getMenuItems(e,t,s,i);if(px(a)){const n=this.lastPromise+1;return this.lastPromise=n,this.destroyLoadingSpinner||this.createLoadingIcon(i),a.then(o=>{if(this.lastPromise!==n)return;const{target:l}=i,c=!l;o&&o.length&&(c||gx(l))&&!this.beans.overlays?.isExclusive()&&this.createContextMenu({menuItems:o,node:e,column:t,value:s,mouseEvent:i,anchorToElement:r}),this.destroyLoadingSpinner?.()}),!0}return a===void 0||!a?.length?!1:(this.createContextMenu({menuItems:a,node:e,column:t,value:s,mouseEvent:i,anchorToElement:r}),!0)}createLoadingIcon(e){const{beans:t}=this,s=this.getLocaleTextFunc(),i=nx("loadingMenuItems",t),r=ax({tag:"div",cls:Cx});r.appendChild(i);const a=cx(t),n=lx(t);if(!n){mx(54);return}n.appendChild(r),t.ariaAnnounce?.announceValue(s("ariaLabelLoadingContextMenu","Loading Context Menu"),"contextmenu"),t.environment.applyThemeClasses(r),Go(r,e,t);const o=l=>{Go(r,l,t)};a.addEventListener("mousemove",o),this.destroyLoadingSpinner=()=>{a.removeEventListener("mousemove",o),n.removeChild(r),this.destroyLoadingSpinner=null}}createContextMenu(e){const{menuItems:t,node:s,column:i,value:r,mouseEvent:a,anchorToElement:n}=e,{ctrlsSvc:o,focusSvc:l,popupSvc:c}=this.beans,d=o.getGridBodyCtrl().eGridBody,h=new yx(t,i,s,r);this.createBean(h);const u=h.getGui();i||l.clearFocusedCell();const p={column:i,rowNode:s,type:"contextMenu",mouseEvent:a,ePopup:u,nudgeY:1},g=this.getLocaleTextFunc(),m=c?.addPopup({modal:!0,eChild:u,closeOnEsc:!0,closedCallback:C=>{No(this.beans,()=>{d.classList.remove(Bo),this.destroyBean(h),this.dispatchVisibleChangedEvent(!1,C===void 0?"api":"ui")})},click:a,positionCallback:()=>{const C=this.gos.get("enableRtl");c?.positionPopupUnderMouseEvent({...p,nudgeX:C?(u.offsetWidth+1)*-1:1})},anchorToElement:n,ariaLabel:g("ariaLabelContextMenu","Context Menu")});m&&(d.classList.add(Bo),h.afterGuiAttached({container:"contextMenu",hidePopup:m.hideFunc})),this.activeMenu&&this.hideActiveMenu(),this.activeMenu=h,h.addEventListener("destroyed",()=>{this.activeMenu===h&&(this.activeMenu=null)}),m&&h.addEventListener("closeMenu",C=>m.hideFunc({mouseEvent:C.mouseEvent??void 0,keyboardEvent:C.keyboardEvent??void 0,forceHide:!0}));const f=a&&a instanceof MouseEvent&&a.type==="mousedown";this.dispatchVisibleChangedEvent(!0,f?"api":"ui")}dispatchVisibleChangedEvent(e,t="ui"){this.eventSvc.dispatchEvent({type:"contextMenuVisibleChanged",visible:e,source:t})}getRowCtrl(e){const{rowIndex:t,rowPinned:s}=e||{};if(t!=null)return this.beans.rowRenderer.getRowByPosition({rowIndex:t,rowPinned:s})||void 0}getCellGui(e,t){return!e||!t?void 0:e.getCellCtrl(t)?.eGui||void 0}getContextMenuAnchorElement(e,t){const s=this.beans.ctrlsSvc.getGridBodyCtrl().eGridBody,i=this.getRowCtrl(e);if(!i)return s;const r=this.getCellGui(i,t);return r||(i.isFullWidth()?i.getFullWidthElement():s)}destroy(){this.destroyLoadingSpinner?.(),super.destroy()}},yx=class extends sx{constructor(e,t,s,i){super({tag:"div",cls:fx,role:"presentation"}),this.menuItems=e,this.column=t,this.node=s,this.value=i,this.menuList=null,this.focusedCell=null}postConstruct(){const e=this.createManagedBean(new Ut(0,{column:this.column,node:this.node,value:this.value})),t=this.beans.menuItemMapper.mapWithStockItems(this.menuItems,null,()=>this.getGui(),"contextMenu");e.addMenuItems(t),this.appendChild(e),this.menuList=e,e.addEventListener("closeMenu",s=>this.dispatchLocalEvent(s))}afterGuiAttached({hidePopup:e}){e&&this.addDestroyFunc(e),this.focusedCell=this.beans.focusSvc.getFocusedCell();const t=this.menuList;t&&No(this.beans,()=>ox(t.getGui()))}restoreFocusedCell(){const{beans:e,focusedCell:t}=this,s=e.focusSvc,i=s.getFocusedCell();if(i&&t&&rx(i,t)){const{rowIndex:r,rowPinned:a,column:n}=t;ux(e)&&s.setFocusedCell({rowIndex:r,column:n,rowPinned:a,forceBrowserFocus:!0,preventScrollOnBrowserFocus:!hx()})}}destroy(){super.destroy(),this.restoreFocusedCell()}};import{AgPromise as yr,BeanStub as _o,Component as Sx,FilterWrapperComp as bx,RefPlaceholder as wx,_createElement as xx,_createIconNoSpan as Sr,_error as Mx,_focusInto as Tx,_isColumnMenuAnchoringEnabled as Fx,_isLegacyMenuEnabled as Hs,_setColMenuVisible as Vo,_warn as Px,isColumn as Ax}from"ag-grid-community";import{KeyCode as Kt,RefPlaceholder as Ho,TabGuardComp as Rx,_clearElement as Ex,_createElement as Ix,_createIconNoSpan as Dx,_findNextFocusableElement as Lx,_focusInto as zo,_getActiveDomElement as Uo,_getDocument as br,_isKeyboardMode as kx,_setAriaLabel as Ko,_setAriaRole as wr}from"ag-grid-community";function Gx(e){return{tag:"div",cls:`ag-tabs ${e}`,children:[{tag:"div",ref:"eHeader"},{tag:"div",ref:"eBody",role:"presentation",cls:`ag-tabs-body ${e?`${e}-body`:""}`}]}}var Wo=class extends Rx{constructor(e){super(Gx(e.cssClass)),this.eHeader=Ho,this.eBody=Ho,this.items=[],this.tabbedItemScrollMap=new Map,this.params=e}postConstruct(){this.setupHeader(),this.params.items&&this.params.items.forEach(e=>this.addItem(e)),this.initialiseTabGuard({onTabKeyDown:this.onTabKeyDown.bind(this),handleKeyDown:this.handleKeyDown.bind(this),focusInnerElement:this.focusInnerElement.bind(this),focusTrapActive:!0}),this.addDestroyFunc(()=>this.activeItem?.tabbedItem?.afterDetachedCallback?.())}setupHeader(){const{enableCloseButton:e,cssClass:t}=this.params,s=(i,r)=>{i.classList.add(`ag-tabs-${r}`),t&&i.classList.add(`${t}-${r}`)};e?(this.setupCloseButton(s),this.eTabHeader=br(this.beans).createElement("div"),s(this.eHeader,"header-wrapper"),wr(this.eHeader,"presentation"),this.eHeader.appendChild(this.eTabHeader)):this.eTabHeader=this.eHeader,wr(this.eTabHeader,"tablist"),s(this.eTabHeader,"header")}setupCloseButton(e){const t=br(this.beans),s=t.createElement("button");e(s,"close-button");const i=Dx("close",this.beans);Ko(s,this.params.closeButtonAriaLabel),s.appendChild(i),this.addManagedElementListeners(s,{click:()=>this.params.onCloseClicked?.()});const r=t.createElement("div");e(r,"close-button-wrapper"),wr(r,"presentation"),r.appendChild(s),this.eHeader.appendChild(r),this.eCloseButton=s}handleKeyDown(e){switch(e.key){case Kt.RIGHT:case Kt.LEFT:{if(!this.eTabHeader.contains(Uo(this.beans)))return;const t=e.key===Kt.RIGHT,s=this.gos.get("enableRtl"),i=this.items.indexOf(this.activeItem),r=t!==s?Math.min(i+1,this.items.length-1):Math.max(i-1,0);if(i===r)return;e.preventDefault();const a=this.items[r];this.showItemWrapper(a),a.eHeaderButton.focus();break}case Kt.UP:case Kt.DOWN:e.stopPropagation();break}}onTabKeyDown(e){if(e.defaultPrevented)return;const{beans:t,eHeader:s,eBody:i,activeItem:r,params:a}=this,{suppressTrapFocus:n,enableCloseButton:o}=a,l=Uo(t),c=e.target,d=e.shiftKey;if(s.contains(l)){e.preventDefault(),o&&d&&!this.eCloseButton?.contains(l)?this.eCloseButton?.focus():n&&d?ir(br(t).body,c)?.focus():this.focusBody(e.shiftKey);return}let h=null;if(Yn(i,c)&&(d&&(h=ir(i,c)),!h&&!n&&(h=r.eHeaderButton)),!h&&i.contains(l)&&(h=Lx(t,i,!1,d),!h)){n&&!d?this.forceFocusOutOfContainer(d):o&&!d?(e.preventDefault(),this.eCloseButton?.focus()):(e.preventDefault(),this.focusHeader());return}h&&(e.preventDefault(),h.focus())}focusInnerElement(e){return e?this.focusBody(!0):(this.focusHeader(),!0)}focusHeader(e){this.activeItem.eHeaderButton.focus({preventScroll:e})}focusBody(e){return zo(this.eBody,e)}setAfterAttachedParams(e){this.afterAttachedParams=e}showFirstItem(){this.items.length>0&&this.showItemWrapper(this.items[0])}addItem(e){const t=Ix({tag:"span",cls:"ag-tab",role:"tab",attrs:{tabindex:"-1"}});t.appendChild(e.title),this.eTabHeader.appendChild(t),Ko(t,e.titleLabel);const s={tabbedItem:e,eHeaderButton:t};this.items.push(s),t.addEventListener("click",this.showItemWrapper.bind(this,s))}showItem(e){const t=this.items.find(s=>s.tabbedItem===e);t&&this.showItemWrapper(t)}showItemWrapper(e){const{tabbedItem:t,eHeaderButton:s}=e;if(this.params.onItemClicked?.({item:t}),this.activeItem===e){this.params.onActiveItemClicked?.();return}this.lastScrollListener&&(this.lastScrollListener=this.lastScrollListener()),Ex(this.eBody),t.bodyPromise.then(i=>{this.eBody.appendChild(i);const r=!kx();if(this.params.suppressFocusBodyOnOpen||zo(this.eBody,!1,r),t.afterAttachedCallback&&t.afterAttachedCallback(this.afterAttachedParams),this.params.keepScrollPosition){const a=t.getScrollableContainer&&t.getScrollableContainer()||i;[this.lastScrollListener]=this.addManagedElementListeners(a,{scroll:()=>{this.tabbedItemScrollMap.set(t.name,a.scrollTop)}});const n=this.tabbedItemScrollMap.get(t.name);n!==void 0&&setTimeout(()=>{a.scrollTop=n},0)}}),this.activeItem&&(this.activeItem.eHeaderButton.classList.remove("ag-tab-selected"),this.activeItem.tabbedItem.afterDetachedCallback?.()),s.classList.add("ag-tab-selected"),this.activeItem=e}},Be="filterMenuTab",_e="generalMenuTab",Je="columnsMenuTab",zs=[_e,Be,Je],Ox=class extends _o{constructor(){super(...arguments),this.beanName="enterpriseMenuFactory"}hideActiveMenu(){this.destroyBean(this.activeMenu)}showMenuAfterMouseEvent(e,t,s,i,r){const{column:a,columnGroup:n}=this.splitColumnOrGroup(e),o=r?"filterMenuTab":void 0;this.showMenu(a,n,l=>{const c=l.getGui();this.beans.popupSvc.positionPopupUnderMouseEvent({type:s,column:a,mouseEvent:t,ePopup:c}),o&&l.showTab?.(o),this.dispatchVisibleChangedEvent(!0,!1,a,n,o)},s,o,void 0,t.target,i)}splitColumnOrGroup(e){const t=e&&Ax(e);return{column:t?e:void 0,columnGroup:t?void 0:e}}showMenuAfterButtonClick(e,t,s,i,r){let a=-1,n="left";this.gos.get("enableRtl")&&(a=1,n="right");const o=r?"filterMenuTab":void 0,l=o?[o]:void 0,c=Hs(this.gos),d=(c?9:4)*a,h=c?-23:4,{column:u,columnGroup:p}=this.splitColumnOrGroup(e);this.showMenu(u,p,g=>{const m=g.getGui();this.beans.popupSvc.positionPopupByComponent({type:s,column:u,eventSource:t,ePopup:m,alignSide:n,nudgeX:d,nudgeY:h,position:"under",keepWithinBounds:!0}),o&&g.showTab?.(o),this.dispatchVisibleChangedEvent(!0,!1,u,p,o)},s,o,l,t,i)}showMenu(e,t,s,i,r,a,n,o){const l=this.getMenuParams(e,t,a,n);if(!l)return;const{menu:c,eMenuGui:d,anchorToElement:h,restoreFocusParams:u}=l,p=[],{menuUtils:g,popupSvc:m}=this.beans;p.push(C=>{const v=c.getGui();this.destroyBean(c),e&&(Vo(e,!1,"contextMenu"),g.restoreFocusOnClose(u,v,C)),o?.()});const f=this.getLocaleTextFunc();if(m.addPopup({modal:!0,eChild:d,closeOnEsc:!0,closedCallback:C=>{p.forEach(v=>v(C)),this.dispatchVisibleChangedEvent(!1,!1,e,t,r)},afterGuiAttached:C=>c.afterGuiAttached(Object.assign({},{container:i},C)),positionCallback:r?()=>s(c):void 0,ariaLabel:f("ariaLabelColumnMenu","Column Menu")}),r||(c.showTabBasedOnPreviousSelection?.(),s(c)),Fx(this.gos)){const C=m.setPopupPositionRelatedToElement(d,h);C&&e&&this.addStopAnchoring(C,e,p)}c.addEventListener("tabSelected",C=>{this.dispatchVisibleChangedEvent(!1,!0,e),this.lastSelectedTab=C.key,this.dispatchVisibleChangedEvent(!0,!0,e)}),e&&Vo(e,!0,"contextMenu"),this.activeMenu=c,c.addEventListener("destroyed",()=>{this.activeMenu===c&&(this.activeMenu=null)})}addStopAnchoring(e,t,s){e.then(i=>{t.__addEventListener("leftChanged",i),t.__addEventListener("visibleChanged",i),s.push(()=>{t.__removeEventListener("leftChanged",i),t.__removeEventListener("visibleChanged",i)})})}getMenuParams(e,t,s,i){const{focusSvc:r,visibleCols:a,ctrlsSvc:n}=this.beans,o={column:e,headerPosition:r.focusedHeader,columnIndex:a.allCols.indexOf(e),eventSource:i},l=this.createMenu(e,t,o,s,i);return l?{menu:l,eMenuGui:l.getGui(),anchorToElement:i||n.getGridBodyCtrl().eGridBody,restoreFocusParams:o}:void 0}createMenu(e,t,s,i,r){if(Hs(this.gos))return this.createBean(new Nx(e,s,this.lastSelectedTab,i,r));{const a=this.beans.colMenuFactory.getMenuItems(e,t);return a.length?this.createBean(new Bx(a,e,s,r)):void 0}}dispatchVisibleChangedEvent(e,t,s,i,r){this.eventSvc.dispatchEvent({type:"columnMenuVisibleChanged",visible:e,switchingTab:t,key:this.lastSelectedTab??r??(Hs(this.gos)?_e:"columnMenu"),column:s??null,columnGroup:i??null})}isMenuEnabled(e){if(!Hs(this.gos))return!0;const t=!this.beans.filterManager?.isFilterAllowed(e),s=e.getColDef().menuTabs??zs;return(t&&s.includes(Be)?s.length-1:s.length)>0}showMenuAfterContextMenuEvent(e,t,s){this.beans.menuUtils.onContextMenu({mouseEvent:t,touchEvent:s,source:"ui",showMenuCallback:i=>(this.showMenuAfterMouseEvent(e,i,"columnMenu"),!0)})}},Nx=class extends _o{constructor(e,t,s,i,r){super(),this.column=e,this.restoreFocusParams=t,this.initialSelection=s,this.restrictTo=i,this.sourceElement=r,this.tabFactories={},this.includeChecks={};const{tabFactories:a,includeChecks:n}=this;a[_e]=this.createMainPanel.bind(this),a[Be]=this.createFilterPanel.bind(this),a[Je]=this.createColumnsPanel.bind(this),n[_e]=()=>!0,n[Be]=()=>e?!!this.beans.filterManager?.isFilterAllowed(e):!1,n[Je]=()=>!0}postConstruct(){const e=this.getTabsToCreate().map(s=>this.createTab(s)),t=new Wo({items:e,cssClass:"ag-menu",onActiveItemClicked:this.onHidePopup.bind(this),onItemClicked:this.onTabItemClicked.bind(this)});this.tabbedLayout=this.createBean(t),this.mainMenuList?.setParentComponent(t),this.addDestroyFunc(()=>this.destroyBean(t))}getTabsToCreate(){return this.restrictTo?this.restrictTo:(this.column?.getColDef().menuTabs??zs).filter(e=>this.isValidMenuTabItem(e)&&this.isNotSuppressed(e))}isValidMenuTabItem(e){let t=!0,s=zs;return this.restrictTo!=null&&(t=this.restrictTo.indexOf(e)>-1,s=this.restrictTo),t=t&&zs.indexOf(e)>-1,t||Px(175,{menuTabName:e,itemsToConsider:s}),t}isNotSuppressed(e){return this.includeChecks[e]()}createTab(e){return this.tabFactories[e]()}showTabBasedOnPreviousSelection(){this.showTab(this.initialSelection)}showTab(e){const{tabItemColumns:t,tabbedLayout:s,tabItemFilter:i,tabItemGeneral:r}=this;t&&e===Je?s.showItem(t):i&&e===Be?s.showItem(i):r&&e===_e?s.showItem(r):s.showFirstItem()}onTabItemClicked(e){let t=null;switch(e.item){case this.tabItemColumns:t=Je;break;case this.tabItemFilter:t=Be;break;case this.tabItemGeneral:t=_e;break}t&&this.activateTab(t)}activateTab(e){const t={type:"tabSelected",key:e};this.dispatchLocalEvent(t)}createMainPanel(){const{beans:e,column:t}=this,s=e.colMenuFactory,i=s.createMenu(this,s.getMenuItems(t),this.column,()=>this.sourceElement??this.getGui());this.mainMenuList=i,i.addEventListener("closeMenu",this.onHidePopup.bind(this));const r={title:Sr("legacyMenu",e,t),titleLabel:_e.replace("MenuTab",""),bodyPromise:yr.resolve(i.getGui()),name:_e};return this.tabItemGeneral=r,r}onHidePopup(e){this.beans.menuUtils.closePopupAndRestoreFocusOnSelect(this.hidePopupFunc,this.restoreFocusParams,e)}createFilterPanel(){const e=this.column?this.createBean(new bx(this.column,"COLUMN_MENU")):null;this.filterComp=e,e?.hasFilter()||Mx(119);const t=i=>e?.afterGuiAttached(i),s=()=>e?.afterGuiDetached();return this.tabItemFilter={title:Sr("filterTab",this.beans,this.column),titleLabel:Be.replace("MenuTab",""),bodyPromise:yr.resolve(e?.getGui()),afterAttachedCallback:t,afterDetachedCallback:s,name:Be},this.tabItemFilter}createColumnsPanel(){const e=xx({tag:"div",cls:"ag-menu-column-select-wrapper"}),{beans:t,column:s}=this,r=t.colChooserFactory.createColumnSelectPanel(this,s).getGui();r.classList.add("ag-menu-column-select"),e.appendChild(r);const a={title:Sr("columns",t,s),titleLabel:Je.replace("MenuTab",""),bodyPromise:yr.resolve(e),name:Je};return this.tabItemColumns=a,a}afterGuiAttached(e){const{container:t,hidePopup:s}=e;this.tabbedLayout.setAfterAttachedParams({container:t,hidePopup:s}),s&&(this.hidePopupFunc=s,this.addDestroyFunc(s))}getGui(){return this.tabbedLayout.getGui()}destroy(){super.destroy(),this.destroyBean(this.filterComp)}},Bx=class extends Sx{constructor(e,t,s,i){super({tag:"div",ref:"eColumnMenu",cls:"ag-menu ag-column-menu",role:"presentation"}),this.menuItems=e,this.column=t,this.restoreFocusParams=s,this.sourceElement=i,this.eColumnMenu=wx}postConstruct(){const e=this.beans.colMenuFactory.createMenu(this,this.menuItems,this.column,()=>this.sourceElement??this.getGui());this.mainMenuList=e,e.addEventListener("closeMenu",this.onHidePopup.bind(this)),this.eColumnMenu.appendChild(e.getGui())}onHidePopup(e){this.beans.menuUtils.closePopupAndRestoreFocusOnSelect(this.hidePopupFunc,this.restoreFocusParams,e)}afterGuiAttached({hidePopup:e}){e&&(this.hidePopupFunc=e,this.addDestroyFunc(e)),Tx(this.mainMenuList.getGui())}};function _x(e,t){const{contextMenuSvc:s}=e;if(!s)return;const{rowNode:i,column:r,value:a,x:n,y:o}=t||{};let{x:l,y:c}=s.getContextMenuPosition(i,r);n!=null&&(l=n),o!=null&&(c=o),s.showContextMenu({mouseEvent:new MouseEvent("mousedown",{clientX:l,clientY:c}),rowNode:i,column:r,value:a,source:"api"})}function Vx(e,t){e.colChooserFactory?.showColumnChooser({chooserParams:t})}function Hx(e){e.colChooserFactory?.hideActiveColumnChooser()}import{BeanStub as zx,_findTabbableParent as Ux,_getActiveDomElement as Kx,_isNothingFocused as jo,_isVisible as Wx,_last as jx}from"ag-grid-community";var $x=class extends zx{constructor(){super(...arguments),this.beanName="menuUtils"}restoreFocusOnClose(e,t,s,i){const{eventSource:r}=e,a=s instanceof KeyboardEvent;if(!i&&!a||!r)return;const n=Kx(this.beans);!t.contains(n)&&!jo(this.beans)||this.focusHeaderCell(e)}closePopupAndRestoreFocusOnSelect(e,t,s){let i;s&&s.keyboardEvent&&(i=s.keyboardEvent),e(i&&{keyboardEvent:i});const r=this.beans,a=r.focusSvc,n=a.getFocusedCell();if(jo(r))if(n){const{rowIndex:o,rowPinned:l,column:c}=n;a.setFocusedCell({rowIndex:o,column:c,rowPinned:l,forceBrowserFocus:!0,preventScrollOnBrowserFocus:!0})}else this.focusHeaderCell(t)}onContextMenu(e){const{mouseEvent:t,touchEvent:s,showMenuCallback:i,source:r}=e;if(!this.gos.get("allowContextMenuWithControlKey")&&t&&(t.ctrlKey||t.metaKey)||(t&&this.blockMiddleClickScrollsIfNeeded(t),r==="ui"&&this.gos.get("suppressContextMenu")))return;const a=t??s.touches[0];if(i(a)){const n=t??s;n&&n.cancelable&&n.preventDefault()}}async focusHeaderCell(e){const{column:t,columnIndex:s,headerPosition:i,eventSource:r}=e,{visibleCols:a,headerNavigation:n,focusSvc:o}=this.beans,l=await a.allCols.some(c=>c===t);if(this.isAlive()){if(t?.isAlive()&&l&&r&&Wx(r)){const c=Ux(r);c&&(n?.scrollToColumn(t),c.focus())}else if(i&&s!==-1){const c=a.allCols,d=c[s]||jx(c);d&&o.focusHeaderPosition({headerPosition:{headerRowIndex:i.headerRowIndex,column:d}})}}}blockMiddleClickScrollsIfNeeded(e){this.gos.get("suppressMiddleClickScrolls")&&e.which===2&&e.preventDefault()}},$o={moduleName:"MenuCore",version:E,beans:[Jw,Ow,$x],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",sortUnSort:"none"},dependsOn:[O,Dw,kw,Bs]},xr={moduleName:"ColumnMenu",version:E,beans:[Ox,ex,zw],icons:{legacyMenu:"menu",filterTab:"filter",columnSelectClosed:"tree-closed",columnSelectOpen:"tree-open",columnSelectIndeterminate:"tree-indeterminate"},apiFunctions:{showColumnChooser:Vx,hideColumnChooser:Hx},dependsOn:[$o,Lw,Iw]},Mr={moduleName:"ContextMenu",version:E,beans:[vx],apiFunctions:{showContextMenu:_x},dependsOn:[$o]},Yx={moduleName:"Menu",version:E,dependsOn:[xr,Mr]};import{_EditCoreModule as Xx}from"ag-grid-community";import{PopupComponent as qx,_addGridCommonParams as Zx,_missing as Jx,_warn as Tr}from"ag-grid-community";var Yo=class extends qx{constructor(){super({tag:"div",cls:"ag-cell-edit-wrapper"}),this.isAsync=!1}init(e){this.params=e;const{cellStartedEdit:t,values:s,eventKey:i}=e;Jx(s)&&Tr(180);const{params:r,valuesPromise:a}=this.buildRichSelectParams(),n=this.createManagedBean(new qi(r));this.richSelect=n,n.addCssClass("ag-cell-editor"),this.appendChild(n),a&&(this.isAsync=!0,a.then(o=>{n.setValueList({valueList:o,refresh:!0});const l=this.getSearchStringCallback(o);l&&n.setSearchStringCreator(l),this.processEventKey(i)})),this.addManagedListeners(n,{fieldPickerValueSelected:this.onEditorPickerValueSelected.bind(this)}),this.focusAfterAttached=t}onEditorPickerValueSelected(e){setTimeout(()=>this.params.stopEditing(!e.fromEnterKey))}buildRichSelectParams(){const e=this.params,{cellRenderer:t,cellHeight:s,value:i,values:r,formatValue:a,searchDebounceDelay:n,valueListGap:o,valueListMaxHeight:l,valueListMaxWidth:c,allowTyping:d,filterList:h,searchType:u,highlightMatch:p,valuePlaceholder:g,eventKey:m,multiSelect:f,suppressDeselectAll:C,suppressMultiSelectPillRenderer:v}=e,y={value:i,cellRenderer:t,cellRowHeight:s,searchDebounceDelay:n,valueFormatter:a,pickerAriaLabelKey:"ariaLabelRichSelectField",pickerAriaLabelValue:"Rich Select Field",pickerType:"virtual-list",pickerGap:o,allowTyping:d,filterList:h,searchType:u,highlightMatch:p,maxPickerHeight:l,maxPickerWidth:c,placeholder:g,initialInputValue:m?.length===1?m:void 0,multiSelect:f,suppressDeselectAll:C,suppressMultiSelectPillRenderer:v};let S,b;return typeof r=="function"?S=r(e):S=r??[],Array.isArray(S)?(y.valueList=S,y.searchStringCreator=this.getSearchStringCallback(S)):b=S,f&&d&&(e.allowTyping=y.allowTyping=!1,Tr(181)),{params:y,valuesPromise:b}}getSearchStringCallback(e){if(typeof e[0]!="object")return;const t=this.params,{colDef:s,formatValue:i}=t;if(s.cellEditorParams?.formatValue)return a=>a.map(i);const{keyCreator:r}=s;if(r){Tr(266);const{column:a,node:n,data:o}=t;return l=>l.map(c=>{const d=Zx(this.gos,{value:c,colDef:s,column:a,node:n,data:o});return r(d)})}return a=>a.map(i)}afterGuiAttached(){const{focusAfterAttached:e,params:t}=this;setTimeout(()=>{if(!this.isAlive())return;const s=this.richSelect,{allowTyping:i,eventKey:r}=t;if(e){const a=s.getFocusableElement();a.focus(),i&&(!r||r.length!==1)&&a.select()}s.showPicker(),this.isAsync||this.processEventKey(r)})}processEventKey(e){e&&e?.length===1&&this.richSelect.searchTextFromString(e)}focusIn(){this.richSelect.getFocusableElement().focus()}getValue(){const{params:e}=this,t=this.richSelect.getValue();return e.parseValue?.(t)??t}isPopup(){return!1}},Xo={moduleName:"RichSelect",version:E,beans:[],userComponents:{agRichSelect:Yo,agRichSelectCellEditor:Yo},icons:{richSelectOpen:"small-down",richSelectRemove:"cancel"},dependsOn:[O,Xx]};import{_ColumnFilterModule as Qx}from"ag-grid-community";import{AgInputTextFieldSelector as eM,AgPromise as tM,GROUP_AUTO_COLUMN_ID as sM,KeyCode as Wt,ProvidedFilter as iM,RefPlaceholder as jt,_areEqual as rM,_createIconNoSpan as aM,_debounce as nM,_error as qo,_getActiveDomElement as oM,_last as lM,_makeNull as Zo,_setDisplayed as Fr,_toStringOrNull as Pr,_warn as cM}from"ag-grid-community";var Qe="__AG_SELECT_ALL__",et="__AG_ADD_SELECTION_TO_FILTER__",dM={loadingOoo:"Loading...",blanks:"(Blanks)",searchOoo:"Search...",selectAll:"(Select All)",selectAllSearchResults:"(Select All Search Results)",addCurrentSelectionToFilter:"Add current selection to filter",noMatches:"No matches."};import{AgCheckboxSelector as hM,Component as uM,RefPlaceholder as Us,_addGridCommonParams as pM,_createIcon as Ar,_getCellRendererDetails as Jo,_getShouldDisplayTooltip as gM,_isShowTooltipWhenTruncated as mM,_setAriaChecked as fM,_setAriaDescribedBy as CM,_setAriaExpanded as vM,_setAriaLabel as yM,_setAriaLabelledBy as SM,_setAriaLevel as bM,_setDisplayed as Rr,_toStringOrNull as Qo,_warn as wM}from"ag-grid-community";var xM={tag:"div",cls:"ag-set-filter-item",attrs:{"aria-hidden":"true"},children:[{tag:"span",cls:"ag-set-filter-group-icons",children:[{tag:"span",ref:"eGroupClosedIcon",cls:"ag-set-filter-group-closed-icon"},{tag:"span",ref:"eGroupOpenedIcon",cls:"ag-set-filter-group-opened-icon"},{tag:"span",ref:"eGroupIndeterminateIcon",cls:"ag-set-filter-group-indeterminate-icon"}]},{tag:"ag-checkbox",ref:"eCheckbox",cls:"ag-set-filter-item-checkbox"}]},MM={tag:"div",cls:"ag-set-filter-item",children:[{tag:"ag-checkbox",ref:"eCheckbox",cls:"ag-set-filter-item-checkbox"}]},TM=class extends uM{constructor(e){super(e.isGroup?xM:MM,[hM]),this.eCheckbox=Us,this.eGroupOpenedIcon=Us,this.eGroupClosedIcon=Us,this.eGroupIndeterminateIcon=Us,this.formattedValue=null,this.focusWrapper=e.focusWrapper,this.value=e.value,this.params=e.params,this.translate=e.translate,this.valueFormatter=e.valueFormatter,this.item=e.item,this.isSelected=e.isSelected,this.isTree=e.isTree,this.depth=e.depth??0,this.isGroup=e.isGroup,this.groupsExist=e.groupsExist,this.isExpanded=e.isExpanded,this.hasIndeterminateExpandState=e.hasIndeterminateExpandState}postConstruct(){this.tooltipFeature=this.createOptionalManagedBean(this.beans.registry.createDynamicBean("tooltipFeature",!1,{getGui:()=>this.getGui(),getColDef:()=>this.params.colDef,getColumn:()=>this.params.column,getLocation:()=>"setFilterValue",shouldDisplayTooltip:()=>this.shouldDisplayTooltip?.()??!0,getValueFormatted:()=>this.formattedValue,getAdditionalParams:()=>this.isTree?{level:this.depth}:{}})),this.addDestroyFunc(()=>this.destroyCellRendererComponent?.()),this.render(),this.eCheckbox.setLabelEllipsis(!0).setValue(this.isSelected,!0).setDisabled(!!this.params.readOnly).getInputElement().setAttribute("tabindex","-1"),this.refreshVariableAriaLabels(),this.isTree&&(this.depth>0&&(this.addCssClass("ag-set-filter-indent-"+this.depth),this.getGui().style.setProperty("--ag-indentation-level",String(this.depth))),this.isGroup?this.setupExpansion():this.groupsExist&&this.addCssClass("ag-set-filter-add-group-indent"),bM(this.getAriaElement(),this.depth+1)),this.refreshAriaChecked(),!this.params.readOnly&&this.eCheckbox.onValueChange(e=>this.onCheckboxChanged(!!e))}getFocusableElement(){return this.focusWrapper}setupExpansion(){const{eGroupClosedIcon:e,eGroupOpenedIcon:t,eGroupIndeterminateIcon:s,hasIndeterminateExpandState:i,beans:r}=this;e.appendChild(Ar("setFilterGroupClosed",r,null)),t.appendChild(Ar("setFilterGroupOpen",r,null));const a=this.onExpandOrContractClicked.bind(this);this.addManagedElementListeners(e,{click:a}),this.addManagedElementListeners(t,{click:a}),i&&(s.appendChild(Ar("setFilterGroupIndeterminate",r,null)),this.addManagedElementListeners(s,{click:a})),this.setExpandedIcons(),this.refreshAriaExpanded()}onExpandOrContractClicked(){this.setExpanded(!this.isExpanded)}setExpanded(e,t){if(this.isGroup&&e!==this.isExpanded){this.isExpanded=e;const s={type:"expandedChanged",isExpanded:!!e,item:this.item};t||this.dispatchLocalEvent(s),this.setExpandedIcons(),this.refreshAriaExpanded()}}setExpandedIcons(){const{isExpanded:e,hasIndeterminateExpandState:t,eGroupClosedIcon:s,eGroupOpenedIcon:i,eGroupIndeterminateIcon:r}=this;Rr(s,t?e===!1:!e),Rr(i,e===!0),t&&Rr(r,e===void 0)}onCheckboxChanged(e){this.isSelected=e;const t={type:"selectionChanged",isSelected:e,item:this.item};this.dispatchLocalEvent(t),this.refreshVariableAriaLabels(),this.refreshAriaChecked()}toggleSelected(){this.params.readOnly||this.setSelected(!this.isSelected)}setSelected(e,t){this.isSelected=e,this.eCheckbox.setValue(e,t),this.refreshAriaChecked()}refreshVariableAriaLabels(){if(!this.isTree)return;const e=this.getLocaleTextFunc(),t=this.eCheckbox.getValue(),s=t===void 0?e("ariaIndeterminate","indeterminate"):t?e("ariaVisible","visible"):e("ariaHidden","hidden"),i=e("ariaToggleVisibility","Press SPACE to toggle visibility");SM(this.eCheckbox.getInputElement(),void 0),this.eCheckbox.setInputAriaLabel(`${i} (${s})`)}setupFixedAriaLabels(e){if(!this.isTree)return;const s=this.getLocaleTextFunc()("ariaFilterValue","Filter Value"),i=this.getAriaElement();yM(i,`${e} ${s}`),CM(i,this.eCheckbox.getInputElement().id)}refreshAriaChecked(){const e=this.getAriaElement();fM(e,this.eCheckbox.getValue())}refreshAriaExpanded(){vM(this.getAriaElement(),!!this.isExpanded)}refresh(e,t,s){this.item=e,t!==this.isSelected&&this.setSelected(t,!0),this.setExpanded(s,!0);const{cellRendererComponent:i,cellRendererParams:r,beans:a,params:n}=this;if(this.valueFunction){const o=this.valueFunction();this.setTooltipAndCellRendererParams(o,o),i||this.renderCellWithoutCellRenderer()}if(i){const o=Jo(a.userCompFactory,n,r);if(!i.refresh?.(o?.params??r)){const c=i;this.renderCell(),this.destroyBean(c)}}}render(){const{params:{column:e}}=this;let{value:t}=this,s=null;typeof t=="function"?(this.valueFunction=t,s=this.valueFunction(),t=s):this.isTree?s=Qo(t):s=this.getFormattedValue(e,t),this.formattedValue=s,this.setTooltipAndCellRendererParams(t,s),this.renderCell()}setTooltipAndCellRendererParams(e,t){const s=this.gos;if(this.params.showTooltips&&(!mM(s)||!this.params.cellRenderer)){const i=t??Qo(e);this.shouldDisplayTooltip=gM(s,()=>this.eCheckbox.getGui().querySelector(".ag-label")),this.tooltipFeature?.setTooltipAndRefresh(i)}this.cellRendererParams=pM(s,{value:e,valueFormatted:t,colDef:this.params.colDef,column:this.params.column,setTooltip:(i,r)=>{s.assertModuleRegistered("Tooltip",3),this.shouldDisplayTooltip=r,this.tooltipFeature?.setTooltipAndRefresh(i)}})}getFormattedValue(e,t){return this.beans.valueSvc.formatValue(e,null,t,this.valueFormatter,!1)}renderCell(){const t=Jo(this.beans.userCompFactory,this.params,this.cellRendererParams)?.newAgStackInstance();if(t==null){this.renderCellWithoutCellRenderer();return}t.then(s=>{s&&(this.cellRendererComponent=s,this.eCheckbox.setLabel(s.getGui()),this.destroyCellRendererComponent=()=>this.destroyBean(s))})}renderCellWithoutCellRenderer(){const{valueFormatted:e,value:t}=this.cellRendererParams;let s=e??t??this.translate("blanks");typeof s!="string"&&(wM(208),s=""),this.eCheckbox.setLabel(s),this.setupFixedAriaLabels(s)}getComponentHolder(){return this.params.column.getColDef()}},el=class{getModelAsString(e,t){const{values:s}=e||t.getModel()||{},i=t.getValueModel();if(s==null||i==null)return"";const r=s.filter(o=>i.isKeyAvailable(o)),a=r.length,n=r.slice(0,10).map(o=>t.getFormattedValue(o));return`(${a}) ${n.join(",")}${a>10?",...":""}`}};import{_last as FM,_makeNull as PM,_toStringOrNull as AM}from"ag-grid-community";function Er(e,t,s){let i=e;return i?(i=i.map(r=>AM(PM(r))),!t&&s&&i.some(r=>r==null)?FM(i)==null?null:i.filter(r=>r!=null):i):null}import{AgPromise as Ct,LocalEventService as RM,_addGridCommonParams as EM,_defaultComparator as Ir,_error as IM,_exists as DM,_isClientSideRowModel as LM,_makeNull as Dr,_warn as tl}from"ag-grid-community";import{AgPromise as kM,_makeNull as GM}from"ag-grid-community";var OM=class{constructor(e,t,s,i,r,a,n,o,l,c){this.rowModel=e,this.filterParams=t,this.createKey=s,this.caseFormat=i,this.valueSvc=r,this.treeDataOrGrouping=a,this.treeData=n,this.groupAllowUnbalanced=o,this.addManagedEventListeners=l,this.rowGroupColsSvc=c}extractUniqueValuesAsync(e,t){return new kM(s=>{if(this.rowModel.isRowDataLoaded())s(this.extractUniqueValues(e,t));else{const[i]=this.addManagedEventListeners({rowCountReady:()=>{i?.(),s(this.extractUniqueValues(e,t))}})}})}extractUniqueValues(e,t){const s=new Map,i=this.extractExistingFormattedKeys(t),r=new Set,a=this.treeData,n=this.rowGroupColsSvc?.columns,o=(l,c)=>{const d=this.caseFormat(l);if(!r.has(d)){r.add(d);let h=l,u=GM(c);const p=i?.get(d);p!=null&&(h=p,u=t.get(p)),s.set(h,u)}};return this.rowModel.forEachLeafNode(l=>{if(!l.data||!e(l))return;if(this.treeDataOrGrouping){this.addValueForTreeDataOrGrouping(l,a,n,o);return}const c=this.getValue(l);c!=null&&Array.isArray(c)?(c.forEach(d=>{o(this.createKey(d,l),d)}),c.length===0&&o(null,null)):o(this.createKey(c,l),c)}),s}addValueForTreeDataOrGrouping(e,t,s=[],i){let r;if(t){if(e.childrenAfterGroup?.length)return;r=e.getRoute()??[e.key??e.id]}else r=s.map(n=>this.valueSvc.getKeyForNode(n,e)),r.push(this.getValue(e));const a=Er(r,t,this.groupAllowUnbalanced);i(this.createKey(a),a)}getValue(e){return this.filterParams.getValue(e)}extractExistingFormattedKeys(e){if(!e)return null;const t=new Map;return e.forEach((s,i)=>{t.set(this.caseFormat(i),i)}),t}},NM=class{constructor({caseFormat:e}){this.filteringKeys=null,this.filteringKeysCaseFormatted=null,this.hasNoAppliedFilteringKeys=!1,this.caseFormat=e}allFilteringKeys(){return this.filteringKeys}allFilteringKeysCaseFormatted(){return this.filteringKeysCaseFormatted}setFilteringKeys(e){this.filteringKeys=new Set(e),this.hasNoAppliedFilteringKeys=!this.filteringKeys||this.filteringKeys.size===0,this.filteringKeysCaseFormatted=new Set,this.filteringKeys.forEach(t=>this.filteringKeysCaseFormatted.add(this.caseFormat(t)))}addFilteringKey(e){this.filteringKeys==null&&(this.filteringKeys=new Set,this.filteringKeysCaseFormatted=new Set),this.filteringKeys.add(e),this.filteringKeysCaseFormatted.add(this.caseFormat(e)),this.hasNoAppliedFilteringKeys&&(this.hasNoAppliedFilteringKeys=!1)}hasCaseFormattedFilteringKey(e){return this.filteringKeysCaseFormatted.has(this.caseFormat(e))}hasFilteringKey(e){return this.filteringKeys.has(e)}reset(){this.filteringKeys=null,this.filteringKeysCaseFormatted=null,this.hasNoAppliedFilteringKeys=!1}},BM=class{constructor(e,t,s,i){this.valueSvc=e,this.valueFormatter=t,this.formatter=s,this.column=i,this.displayedKeys=[]}updateDisplayedValuesToAllAvailable(e,t,s){this.displayedKeys=Array.from(s)}updateDisplayedValuesToMatchMiniFilter(e,t,s,i,r){this.displayedKeys=[];for(const a of s)if(a==null)r&&this.displayedKeys.push(a);else{const n=e(a),o=this.valueSvc.formatValue(this.column,null,n,this.valueFormatter,!1),l=this.formatter(o);i(l)&&this.displayedKeys.push(a)}}getDisplayedValueCount(){return this.displayedKeys.length}getDisplayedItem(e){return this.displayedKeys[e]}getSelectAllItem(){return Qe}getAddSelectionToFilterItem(){return et}getDisplayedKeys(){return this.displayedKeys}forEachDisplayedKey(e){this.displayedKeys.forEach(e)}someDisplayedKey(e){return this.displayedKeys.some(e)}hasGroups(){return!1}refresh(){}};import{_missing as _M,_warn as VM}from"ag-grid-community";var HM=e=>_M(e)?null:!(e instanceof Date)||isNaN(e.getTime())?["NaN"]:[String(e.getFullYear()),String(e.getMonth()+1),String(e.getDate())],sl=class{constructor(e,t,s,i){this.formatter=e,this.treeListPathGetter=t,this.treeListFormatter=s,this.treeDataOrGrouping=i,this.allDisplayedItemsTree=[],this.activeDisplayedItemsFlat=[],this.selectAllItem={depth:0,filterPasses:!0,available:!0,treeKey:Qe,children:this.allDisplayedItemsTree,expanded:!0,key:Qe,parentTreeKeys:[]},this.addSelectionToFilterItem={depth:0,filterPasses:!0,available:!0,treeKey:et,expanded:!0,key:et,parentTreeKeys:[]}}updateOnParamsChange(e){this.treeListFormatter=e}updateDisplayedValuesToAllAvailable(e,t,s,i){i==="reload"?this.generateItemTree(e,t,s):i==="otherFilter"?(this.updateAvailable(s),this.updateExpandAll()):i==="miniFilter"&&(this.resetFilter(),this.updateExpandAll()),this.flattenItems()}updateDisplayedValuesToMatchMiniFilter(e,t,s,i,r,a){a==="reload"?this.generateItemTree(e,t,s):a==="otherFilter"&&this.updateAvailable(s),this.updateFilter(i,r),this.updateExpandAll(),this.flattenItems()}generateItemTree(e,t,s){this.allDisplayedItemsTree=[],this.groupsExist=!1;const i=this.getTreeListPathGetter(e,s);for(const r of t){const a=e(r),n=i(a)??[null];n.length>1&&(this.groupsExist=!0);const o=s.has(r);let l=this.allDisplayedItemsTree,c,d=[];n.forEach((h,u)=>{l||(l=[],c.children=l),c=l.find(p=>p.treeKey?.toUpperCase()===h?.toUpperCase()),c||(c={treeKey:h,depth:u,filterPasses:!0,expanded:!1,available:o,parentTreeKeys:d},u===n.length-1&&(c.key=r),l.push(c)),l=c.children,d=[...d,h]})}this.updateAvailable(s),this.selectAllItem.children=this.allDisplayedItemsTree,this.selectAllItem.expanded=!1}getTreeListPathGetter(e,t){if(this.treeListPathGetter)return this.treeListPathGetter;if(this.treeDataOrGrouping)return i=>i;let s=!1;for(const i of t){const r=e(i);if(r instanceof Date){s=!0;break}else if(r!=null)break}return s?HM:(VM(211),i=>[String(i)])}flattenItems(){this.activeDisplayedItemsFlat=[];const e=t=>{t.forEach(s=>{!s.filterPasses||!s.available||(this.activeDisplayedItemsFlat.push(s),s.children&&s.expanded&&e(s.children))})};e(this.allDisplayedItemsTree)}resetFilter(){const e=t=>{t.children&&t.children.forEach(s=>{e(s)}),t.filterPasses=!0};this.allDisplayedItemsTree.forEach(t=>e(t))}updateFilter(e,t){const s=i=>i.available?i.treeKey==null?t:e(this.formatter(this.treeListFormatter?this.treeListFormatter(i.treeKey,i.depth,i.parentTreeKeys):i.treeKey)):!1;this.allDisplayedItemsTree.forEach(i=>this.recursiveItemCheck(i,!1,s,"filterPasses"))}getDisplayedValueCount(){return this.activeDisplayedItemsFlat.length}getDisplayedItem(e){return this.activeDisplayedItemsFlat[e]}getSelectAllItem(){return this.selectAllItem}getAddSelectionToFilterItem(){return this.addSelectionToFilterItem}getDisplayedKeys(){const e=[];return this.forEachDisplayedKey(t=>e.push(t)),e}forEachDisplayedKey(e){const t=(s,i)=>{s.children?(!s.expanded||!i)&&s.children.forEach(r=>{r.filterPasses&&t(r,!1)}):e(s.key)};this.activeDisplayedItemsFlat.forEach(s=>t(s,!0))}someDisplayedKey(e){const t=(s,i)=>{if(s.children){if(!s.expanded||!i)return s.children.some(r=>r.filterPasses?t(r,!1):!1)}else return e(s.key);return!1};return this.activeDisplayedItemsFlat.some(s=>t(s,!0))}hasGroups(){return this.groupsExist}refresh(){this.updateExpandAll(),this.flattenItems()}updateExpandAll(){const e=(s,i,r)=>{for(const a of s){if(!a.filterPasses||!a.available||!a.children)continue;if(i=i||!!a.expanded,r=r||!a.expanded,i&&r)return;const n=e(a.children,i,r);if(n===void 0)return;n?i=!0:r=!0}return i&&r?void 0:i},t=this.getSelectAllItem();t.expanded=e(t.children,!1,!1)}recursiveItemCheck(e,t,s,i){let r=!1;e.children&&e.children.forEach(n=>{const o=this.recursiveItemCheck(n,t||s(e),s,i);r=r||o});const a=t||r||s(e);return e[i]=a,a}updateAvailable(e){const t=s=>e.has(s.key);this.allDisplayedItemsTree.forEach(s=>this.recursiveItemCheck(s,!1,t,"available"))}},zM=class{constructor(e){this.localEventService=new RM,this.miniFilterText=null,this.addCurrentSelectionToFilter=!1,this.providedValues=null,this.allValues=new Map,this.availableKeys=new Set,this.selectedKeys=new Set,this.initialised=!1;const{usingComplexObjects:t,rowGroupColsSvc:s,valueSvc:i,treeDataTreeList:r,groupingTreeList:a,filterParams:n,gos:o,valueFormatter:l,addManagedEventListeners:c}=e,{column:d,colDef:h,textFormatter:u,doesRowPassOtherFilter:p,suppressSorting:g,comparator:m,rowModel:f,values:C,caseSensitive:v,treeList:y,treeListPathGetter:S,treeListFormatter:b}=n;this.filterParams=n,this.gos=o,this.setIsLoading=e.setIsLoading,this.translate=e.translate,this.caseFormat=e.caseFormat,this.createKey=e.createKey,this.usingComplexObjects=!!e.usingComplexObjects,this.formatter=u??(P=>P??null),this.doesRowPassOtherFilters=p,this.suppressSorting=g||!1,this.filteringKeys=new NM({caseFormat:this.caseFormat});const w=m??h.comparator,F=!!r||!!a;this.compareByValue=!!(t&&w||F||y&&!S),F&&!w?this.entryComparator=this.createTreeDataOrGroupingComparator():y&&!S&&!w?this.entryComparator=([P,A],[M,k])=>Ir(A,k):this.entryComparator=([P,A],[M,k])=>w(A,k),this.keyComparator=w??Ir,this.caseSensitive=!!v;const T=o.get("groupAllowUnbalanced");LM(o,f)&&(this.clientSideValuesExtractor=new OM(f,this.filterParams,this.createKey,this.caseFormat,i,F,!!r,T,c,s)),C==null?this.valuesType=2:(this.valuesType=Array.isArray(C)?0:1,this.providedValues=C),this.displayValueModel=y?new sl(this.formatter,S,b,r||a):new BM(i,l,this.formatter,d),this.updateAllValues().then(P=>this.resetSelectionState(P||[]))}addEventListener(e,t,s){this.localEventService.addEventListener(e,t,s)}removeEventListener(e,t,s){this.localEventService.removeEventListener(e,t,s)}updateOnParamsChange(e){return new Ct(t=>{const{values:s,textFormatter:i,suppressSorting:r,treeListFormatter:a}=e,n=this.providedValues,o=this.suppressSorting;if(this.filterParams=e,this.formatter=i??(l=>l??null),this.suppressSorting=r||!1,this.providedValues=s??null,this.displayValueModel instanceof sl&&this.displayValueModel.updateOnParamsChange(a),this.providedValues!==n||this.suppressSorting!==o){!s||s.length===0?(this.valuesType=2,this.providedValues=null):this.valuesType=Array.isArray(s)?0:1;const l=this.getModel();this.updateAllValues().then(()=>{this.setModel(l).then(()=>t())})}else t()})}refreshValues(){return new Ct(e=>{this.allValuesPromise.then(()=>{const t=this.getModel();this.updateAllValues(),this.setModel(t).then(()=>e())})})}overrideValues(e){return new Ct(t=>{this.allValuesPromise.then(()=>{this.valuesType=0,this.providedValues=e,this.refreshValues().then(()=>t())})})}refreshAfterAnyFilterChanged(){return this.showAvailableOnly()?this.allValuesPromise.then(e=>(this.updateAvailableKeys(e??[],"otherFilter"),!0)):Ct.resolve(!1)}isInitialised(){return this.initialised}updateAllValues(){return this.allValuesPromise=new Ct(e=>{switch(this.valuesType){case 2:this.getValuesFromRowsAsync(!1).then(t=>e(this.processAllValues(t)));break;case 0:{e(this.processAllValues(this.uniqueValues(this.validateProvidedValues(this.providedValues))));break}case 1:{this.setIsLoading(!0);const t=this.providedValues,{column:s,colDef:i}=this.filterParams,r=EM(this.gos,{success:a=>{this.setIsLoading(!1),e(this.processAllValues(this.uniqueValues(this.validateProvidedValues(a))))},colDef:i,column:s});window.setTimeout(()=>t(r),0);break}}}),this.allValuesPromise.then(e=>this.updateAvailableKeys(e||[],"reload")).then(()=>this.initialised=!0),this.allValuesPromise}processAllValues(e){const t=this.sortKeys(e);return this.allValues=e??new Map,t}validateProvidedValues(e){if(this.usingComplexObjects&&e?.length){const t=e[0];t&&typeof t!="object"&&typeof t!="function"&&(this.createKey(t)==null?tl(209):tl(210))}return e}setValuesType(e){this.valuesType=e}getValuesType(){return this.valuesType}isKeyAvailable(e){return this.availableKeys.has(e)}showAvailableOnly(){return this.valuesType===2}updateAvailableKeys(e,t){const s=this.showAvailableOnly()?this.sortKeys(this.getValuesFromRows(!0)):e;this.availableKeys=new Set(s),this.localEventService.dispatchEvent({type:"availableValuesChanged"}),this.updateDisplayedValues(t,e)}sortKeys(e){const t=e??new Map;if(this.suppressSorting)return Array.from(t.keys());let s;return this.compareByValue?s=Array.from(t.entries()).sort(this.entryComparator).map(([i])=>i):s=Array.from(t.keys()).sort(this.keyComparator),this.filterParams.excelMode&&t.has(null)&&(s=s.filter(i=>i!=null),s.push(null)),s}getParamsForValuesFromRows(e=!1){if(!this.clientSideValuesExtractor)return IM(113),null;const t=i=>!e||this.doesRowPassOtherFilters(i),s=e&&!this.caseSensitive?this.allValues:void 0;return{predicate:t,existingValues:s}}getValuesFromRows(e=!1){const t=this.getParamsForValuesFromRows(e);return t?this.clientSideValuesExtractor.extractUniqueValues(t.predicate,t.existingValues):null}getValuesFromRowsAsync(e=!1){const t=this.getParamsForValuesFromRows(e);return t?this.clientSideValuesExtractor.extractUniqueValuesAsync(t.predicate,t.existingValues):Ct.resolve(null)}setMiniFilter(e){return e=Dr(e),this.miniFilterText===e?!1:(e===null&&this.setAddCurrentSelectionToFilter(!1),this.miniFilterText=e,this.updateDisplayedValues("miniFilter"),!0)}getMiniFilter(){return this.miniFilterText}updateDisplayedValues(e,t){if(e==="expansion"){this.displayValueModel.refresh();return}if(this.miniFilterText==null){this.displayValueModel.updateDisplayedValuesToAllAvailable(a=>this.getValue(a),t,this.availableKeys,e);return}const s=this.caseFormat(this.formatter(this.miniFilterText)||""),i=a=>a!=null&&this.caseFormat(a).indexOf(s)>=0,r=!!this.filterParams.excelMode&&i(this.translate("blanks"));this.displayValueModel.updateDisplayedValuesToMatchMiniFilter(a=>this.getValue(a),t,this.availableKeys,i,r,e)}getDisplayedValueCount(){return this.displayValueModel.getDisplayedValueCount()}getDisplayedItem(e){return this.displayValueModel.getDisplayedItem(e)}getSelectAllItem(){return this.displayValueModel.getSelectAllItem()}getAddSelectionToFilterItem(){return this.displayValueModel.getAddSelectionToFilterItem()}hasSelections(){return this.filterParams.defaultToNothingSelected?this.selectedKeys.size>0:this.allValues.size!==this.selectedKeys.size}getKeys(){return Array.from(this.allValues.keys())}getValues(){return Array.from(this.allValues.values())}getValue(e){return this.allValues.get(e)}setAddCurrentSelectionToFilter(e){this.addCurrentSelectionToFilter=e}isInWindowsExcelMode(){return this.filterParams.excelMode==="windows"}isAddCurrentSelectionToFilterChecked(){return this.isInWindowsExcelMode()&&this.addCurrentSelectionToFilter}showAddCurrentSelectionToFilter(){return this.isInWindowsExcelMode()&&DM(this.miniFilterText)&&this.miniFilterText.length>0}selectAllMatchingMiniFilter(e=!1){this.miniFilterText==null?this.selectedKeys=new Set(this.allValues.keys()):(e&&this.selectedKeys.clear(),this.displayValueModel.forEachDisplayedKey(t=>this.selectedKeys.add(t)))}deselectAllMatchingMiniFilter(){this.miniFilterText==null?this.selectedKeys.clear():this.displayValueModel.forEachDisplayedKey(e=>this.selectedKeys.delete(e))}selectKey(e){this.selectedKeys.add(e)}deselectKey(e){this.filterParams.excelMode&&this.isEverythingVisibleSelected()&&this.resetSelectionState(this.displayValueModel.getDisplayedKeys()),this.selectedKeys.delete(e)}isKeySelected(e){return this.selectedKeys.has(e)}isEverythingVisibleSelected(){return!this.displayValueModel.someDisplayedKey(e=>!this.isKeySelected(e))}isNothingVisibleSelected(){return!this.displayValueModel.someDisplayedKey(e=>this.isKeySelected(e))}getModel(){if(!this.hasSelections())return null;const e=this.isAddCurrentSelectionToFilterChecked()?this.filteringKeys.allFilteringKeys():null;if(e&&e.size>0){if(this.selectedKeys){const t=new Set([...Array.from(e),...Array.from(this.selectedKeys).filter(s=>!e.has(s))]);return Array.from(t)}return Array.from(e)}return Array.from(this.selectedKeys)}setModel(e){return this.allValuesPromise.then(t=>{if(e==null)this.resetSelectionState(t??[]);else{this.selectedKeys.clear();const s=new Map;this.allValues.forEach((i,r)=>{s.set(this.caseFormat(r),r)}),e.forEach(i=>{const r=this.caseFormat(Dr(i)),a=s.get(r);a!==void 0&&this.selectKey(a)})}})}uniqueValues(e){const t=new Map,s=new Set;return(e??[]).forEach(i=>{const r=Dr(i),a=this.createKey(r),n=this.caseFormat(a);s.has(n)||(s.add(n),t.set(a,r))}),t}resetSelectionState(e){this.filterParams.defaultToNothingSelected?this.selectedKeys.clear():this.selectedKeys=new Set(e)}hasGroups(){return this.displayValueModel.hasGroups()}createTreeDataOrGroupingComparator(){return([e,t],[s,i])=>{if(t==null)return i==null?0:-1;if(i==null)return 1;for(let r=0;r<t.length;r++){if(r>=i.length)return 1;const a=Ir(t[r],i[r]);if(a!==0)return a}return 0}}setAppliedModelKeys(e){this.filteringKeys.setFilteringKeys(e)}addToAppliedModelKeys(e){this.filteringKeys.addFilteringKey(e)}getAppliedModelKeys(){return this.filteringKeys.allFilteringKeys()}getCaseFormattedAppliedModelKeys(){return this.filteringKeys.allFilteringKeysCaseFormatted()}hasAppliedModelKey(e){return this.filteringKeys.hasCaseFormattedFilteringKey(e)}hasAnyAppliedModelKey(){return!this.filteringKeys.hasNoAppliedFilteringKeys}},il=class extends iM{constructor(){super("setFilter"),this.filterType="set",this.eMiniFilter=jt,this.eFilterLoading=jt,this.eFilterLoadingIcon=jt,this.eSetFilterList=jt,this.eFilterNoMatches=jt,this.caseSensitive=!1,this.treeDataTreeList=!1,this.groupingTreeList=!1,this.hardRefreshVirtualList=!1,this.noValueFormatterSupplied=!1,this.filterModelFormatter=new el,this.updateSetFilterOnParamsChange=e=>{this.setFilterParams=e,this.caseSensitive=!!e.caseSensitive;const t=e.keyCreator??e.colDef.keyCreator;this.setValueFormatter(e.valueFormatter,t,!!e.treeList,!!e.colDef.refData);const s=e.column.getId().startsWith(sM);this.treeDataTreeList=this.gos.get("treeData")&&!!e.treeList&&s,this.groupingTreeList=!!this.rowGroupColsSvc?.columns.length&&!!e.treeList&&s,this.createKey=this.generateCreateKey(t,this.treeDataTreeList||this.groupingTreeList)}}wireBeans(e){this.rowGroupColsSvc=e.rowGroupColsSvc,this.valueSvc=e.valueSvc,this.dataTypeSvc=e.dataTypeSvc}postConstruct(){super.postConstruct()}updateUiVisibility(){}createBodyTemplate(){return{tag:"div",cls:"ag-set-filter",children:[{tag:"div",ref:"eFilterLoading",cls:"ag-filter-loading ag-loading ag-hidden",children:[{tag:"span",ref:"eFilterLoadingIcon",cls:"ag-loading-icon"},{tag:"span",cls:"ag-loading-text",children:this.translateForSetFilter("loadingOoo")}]},{tag:"ag-input-text-field",ref:"eMiniFilter",cls:"ag-mini-filter"},{tag:"div",ref:"eFilterNoMatches",cls:"ag-filter-no-matches ag-hidden",children:this.translateForSetFilter("noMatches")},{tag:"div",ref:"eSetFilterList",cls:"ag-set-filter-list",role:"presentation"}]}}getAgComponents(){return[eM]}handleKeyDown(e){if(super.handleKeyDown(e),!e.defaultPrevented)switch(e.key){case Wt.SPACE:this.handleKeySpace(e);break;case Wt.ENTER:this.handleKeyEnter(e);break;case Wt.LEFT:this.handleKeyLeft(e);break;case Wt.RIGHT:this.handleKeyRight(e);break}}handleKeySpace(e){this.getComponentForKeyEvent(e)?.toggleSelected()}handleKeyEnter(e){const{excelMode:t,readOnly:s}=this.setFilterParams;!t||s||(e.preventDefault(),this.onBtApply(!1,!1,e),this.setFilterParams.excelMode==="mac"&&this.eMiniFilter.getInputElement().select())}handleKeyLeft(e){this.getComponentForKeyEvent(e)?.setExpanded(!1)}handleKeyRight(e){this.getComponentForKeyEvent(e)?.setExpanded(!0)}getComponentForKeyEvent(e){if(!this.eSetFilterList.contains(oM(this.beans)))return;const t=this.virtualList.getLastFocusedRow();if(t==null)return;const s=this.virtualList.getComponentAt(t);if(s==null)return;e.preventDefault();const{readOnly:i}=this.setFilterParams;if(!i)return s}getCssIdentifier(){return"set-filter"}setModel(e){return e==null&&this.valueModel.getModel()==null?(this.setMiniFilter(null),tM.resolve()):super.setModel(e)}refresh(e){if(this.applyExcelModeOptions(e),!super.refresh(e))return!1;const t=this.setFilterParams;return["treeList","treeListPathGetter","caseSensitive","comparator","excelMode"].some(i=>e[i]!==t?.[i])||this.haveColDefParamsChanged(e)?!1:(super.updateParams(e),this.updateSetFilterOnParamsChange(e),this.updateMiniFilter(),e.suppressSelectAll!==t?.suppressSelectAll&&this.createVirtualListModel(e),this.valueModel.updateOnParamsChange(e).then(()=>{this.isAlive()&&this.refreshFilterValues()}),!0)}haveColDefParamsChanged(e){const{colDef:t,keyCreator:s}=e,{colDef:i,keyCreator:r}=this.setFilterParams,a=s??t.keyCreator,n=r??i?.keyCreator,o=t.filterValueGetter!==i?.filterValueGetter,l=a!==n,c=!!this.dataTypeSvc&&!!a&&this.dataTypeSvc.getFormatValue(t.cellDataType)===a&&t.valueFormatter!==i?.valueFormatter;return o||l||c}setModelAndRefresh(e){return this.valueModel.setModel(e).then(()=>{this.isAlive()&&this.checkAndRefreshVirtualList()})}resetUiToDefaults(){return this.setMiniFilter(null),this.setModelAndRefresh(null)}setModelIntoUi(e){this.setMiniFilter(null);const t=e==null?null:e.values;return this.setModelAndRefresh(t)}getModelFromUi(){const e=this.valueModel.getModel();return e?{values:e,filterType:this.filterType}:null}getValueModel(){return this.valueModel}areModelsEqual(e,t){return e==null&&t==null?!0:e!=null&&t!=null&&rM(e.values,t.values)}setParams(e){this.applyExcelModeOptions(e),super.setParams(e),this.updateSetFilterOnParamsChange(e);const t=e.keyCreator??e.colDef.keyCreator;this.valueModel=new zM({filterParams:e,setIsLoading:s=>this.setIsLoading(s),translate:s=>this.translateForSetFilter(s),caseFormat:s=>this.caseFormat(s),createKey:this.createKey,valueFormatter:this.valueFormatter,usingComplexObjects:!!t,gos:this.gos,rowGroupColsSvc:this.rowGroupColsSvc,valueSvc:this.valueSvc,treeDataTreeList:this.treeDataTreeList,groupingTreeList:this.groupingTreeList,addManagedEventListeners:s=>this.addManagedEventListeners(s)}),this.initialiseFilterBodyUi(),this.addEventListenersForDataChanges()}onAddCurrentSelectionToFilterChange(e){this.valueModel.setAddCurrentSelectionToFilter(e)}setValueFormatter(e,t,s,i){let r=e;if(!r){if(t&&!s){qo(249);return}this.noValueFormatterSupplied=!0,i||(r=a=>Pr(a.value))}this.valueFormatter=r}generateCreateKey(e,t){return t&&!e?(qo(250),()=>null):e?(s,i=null)=>{const r=this.getKeyCreatorParams(s,i);return Zo(e(r))}:s=>Zo(Pr(s))}getFormattedValue(e){let t=this.valueModel.getValue(e);this.noValueFormatterSupplied&&(this.treeDataTreeList||this.groupingTreeList)&&Array.isArray(t)&&(t=lM(t));const s=this.valueSvc.formatValue(this.setFilterParams.column,null,t,this.valueFormatter,!1);return s??Pr(t)??this.translateForSetFilter("blanks")}applyExcelModeOptions(e){e.excelMode==="windows"?(e.buttons||(e.buttons=["apply","cancel"]),e.closeOnApply==null&&(e.closeOnApply=!0)):e.excelMode==="mac"&&(e.buttons||(e.buttons=["reset"]),e.applyMiniFilterWhileTyping==null&&(e.applyMiniFilterWhileTyping=!0),e.debounceMs==null&&(e.debounceMs=500)),e.excelMode&&e.defaultToNothingSelected&&(e.defaultToNothingSelected=!1,cM(207))}addEventListenersForDataChanges(){if(!this.isValuesTakenFromGrid())return;this.addManagedPropertyListeners(["groupAllowUnbalanced"],()=>{this.syncAfterDataChange()});const e=nM(this,this.syncAfterDataChange.bind(this),0);this.addManagedEventListeners({cellValueChanged:t=>{t.column===this.setFilterParams.column&&e()}})}syncAfterDataChange(){const e=!this.applyActive||this.areModelsEqual(this.getModel(),this.getModelFromUi());return this.valueModel.refreshValues().then(()=>{this.isAlive()&&(this.checkAndRefreshVirtualList(),e&&this.onBtApply(!1,!0))})}setIsLoading(e){Fr(this.eFilterLoading,e),e||(this.hardRefreshVirtualList=!0)}initialiseFilterBodyUi(){this.initVirtualList(),this.initMiniFilter(),this.initLoading()}initLoading(){const e=aM("setFilterLoading",this.beans,this.setFilterParams.column);e&&this.eFilterLoadingIcon.appendChild(e)}initVirtualList(){const t=this.getLocaleTextFunc()("ariaFilterList","Filter List"),s=!!this.setFilterParams.treeList,i=this.virtualList=this.createBean(new ut({cssIdentifier:"filter",ariaRole:s?"tree":"listbox",listName:t})),r=this.eSetFilterList;s&&r.classList.add("ag-set-filter-tree-list"),r&&r.appendChild(i.getGui());const{cellHeight:a}=this.setFilterParams;a!=null&&i.setRowHeight(a);const n=(l,c)=>this.createSetListItem(l,s,c);i.setComponentCreator(n);const o=(l,c)=>this.updateSetListItem(l,c);i.setComponentUpdater(o),this.createVirtualListModel(this.setFilterParams)}createVirtualListModel(e){let t;e.suppressSelectAll?t=new UM(this.valueModel):t=new KM(this.valueModel,()=>this.isSelectAllSelected()),e.treeList&&(t=new WM(t)),this.virtualList.setModel(t)}getSelectAllLabel(){const e=this.valueModel.getMiniFilter()==null||!this.setFilterParams.excelMode?"selectAll":"selectAllSearchResults";return this.translateForSetFilter(e)}getAddSelectionToFilterLabel(){return this.translateForSetFilter("addCurrentSelectionToFilter")}createSetListItem(e,t,s){const i=this.valueModel.hasGroups(),{isSelected:r,isExpanded:a}=this.isSelectedExpanded(e),{value:n,depth:o,isGroup:l,hasIndeterminateExpandState:c,selectedListener:d,expandedListener:h}=this.newSetListItemAttributes(e),u={focusWrapper:s,value:n,params:this.setFilterParams,translate:g=>this.translateForSetFilter(g),valueFormatter:this.valueFormatter,item:e,isSelected:r,isTree:t,depth:o,groupsExist:i,isGroup:l,isExpanded:a,hasIndeterminateExpandState:c},p=this.createBean(new TM(u));return p.addEventListener("selectionChanged",d),h&&p.addEventListener("expandedChanged",h),p}newSetTreeItemAttributes(e){const t=this.valueModel.hasGroups();return e.key===Qe?{value:()=>this.getSelectAllLabel(),isGroup:t,depth:e.depth,hasIndeterminateExpandState:!0,selectedListener:s=>this.onSelectAll(s.isSelected),expandedListener:s=>this.onExpandAll(s.item,s.isExpanded)}:e.key===et?{value:()=>this.getAddSelectionToFilterLabel(),depth:e.depth,isGroup:!1,hasIndeterminateExpandState:!1,selectedListener:s=>{this.onAddCurrentSelectionToFilterChange(s.isSelected)}}:e.children?{value:this.setFilterParams.treeListFormatter?.(e.treeKey,e.depth,e.parentTreeKeys)??e.treeKey,depth:e.depth,isGroup:!0,selectedListener:s=>this.onGroupItemSelected(s.item,s.isSelected),expandedListener:s=>this.onExpandedChanged(s.item,s.isExpanded)}:{value:this.setFilterParams.treeListFormatter?.(e.treeKey,e.depth,e.parentTreeKeys)??e.treeKey,depth:e.depth,selectedListener:s=>this.onItemSelected(s.item.key,s.isSelected)}}newSetListItemAttributes(e){return this.isSetFilterModelTreeItem(e)?this.newSetTreeItemAttributes(e):e===Qe?{value:()=>this.getSelectAllLabel(),selectedListener:t=>this.onSelectAll(t.isSelected)}:e===et?{value:()=>this.getAddSelectionToFilterLabel(),selectedListener:t=>{this.onAddCurrentSelectionToFilterChange(t.isSelected)}}:{value:this.valueModel.getValue(e),selectedListener:t=>this.onItemSelected(t.item,t.isSelected)}}updateSetListItem(e,t){const{isSelected:s,isExpanded:i}=this.isSelectedExpanded(e);t.refresh(e,s,i)}isSelectedExpanded(e){let t,s;return this.isSetFilterModelTreeItem(e)?(s=e.expanded,e.key===Qe?t=this.isSelectAllSelected():e.key===et?t=this.valueModel.isAddCurrentSelectionToFilterChecked():e.children?t=this.areAllChildrenSelected(e):t=this.valueModel.isKeySelected(e.key)):e===Qe?t=this.isSelectAllSelected():e===et?t=this.valueModel.isAddCurrentSelectionToFilterChecked():t=this.valueModel.isKeySelected(e),{isSelected:t,isExpanded:s}}isSetFilterModelTreeItem(e){return e?.treeKey!==void 0}initMiniFilter(){const{eMiniFilter:e}=this,t=this.getLocaleTextFunc();e.setDisplayed(!this.setFilterParams.suppressMiniFilter),e.setValue(this.valueModel.getMiniFilter()),e.onValueChange(()=>this.onMiniFilterInput()),e.setInputAriaLabel(t("ariaSearchFilterValues","Search filter values")),this.addManagedElementListeners(e.getInputElement(),{keydown:s=>this.onMiniFilterKeyDown(s)})}updateMiniFilter(){const{eMiniFilter:e}=this;e.isDisplayed()!==!this.setFilterParams.suppressMiniFilter&&e.setDisplayed(!this.setFilterParams.suppressMiniFilter);const t=this.valueModel.getMiniFilter();e.getValue()!==t&&e.setValue(t)}afterGuiAttached(e){super.afterGuiAttached(e),this.resetExpansion(),this.refreshVirtualList();const{eMiniFilter:t}=this;t.setInputPlaceholder(this.translateForSetFilter("searchOoo")),(!e||!e.suppressFocus)&&(t.isDisplayed()?t.getFocusableElement().focus():this.virtualList.awaitStable(()=>this.virtualList.focusRow(0)))}afterGuiDetached(){super.afterGuiDetached(),this.setFilterParams.excelMode&&this.resetMiniFilter();const e=this.getModel();(this.setFilterParams.excelMode||!this.areModelsEqual(e,this.getModelFromUi()))&&(this.resetUiToActiveModel(e),this.showOrHideResults())}applyModel(e="api"){this.setFilterParams.excelMode&&e!=="rowDataUpdated"&&this.valueModel.isEverythingVisibleSelected()&&this.valueModel.selectAllMatchingMiniFilter();const t=this.valueModel.showAddCurrentSelectionToFilter()&&this.valueModel.isAddCurrentSelectionToFilterChecked();if(t&&!this.getModel())return!1;const s=super.applyModel(e),i=this.getModel();return i?(t||this.valueModel.setAppliedModelKeys(new Set),i.values.forEach(r=>{this.valueModel.addToAppliedModelKeys(r)})):t||this.valueModel.setAppliedModelKeys(null),s}isModelValid(e){return this.setFilterParams.excelMode?e==null||e.values.length>0:!0}doesFilterPass(e){if(!this.valueModel.getCaseFormattedAppliedModelKeys())return!0;if(!this.valueModel.hasAnyAppliedModelKey())return!1;const{node:t}=e;if(this.treeDataTreeList)return this.doesFilterPassForTreeData(t);if(this.groupingTreeList)return this.doesFilterPassForGrouping(t);const s=this.getValueFromNode(t);return s!=null&&Array.isArray(s)?s.length===0?this.valueModel.hasAppliedModelKey(null):s.some(i=>this.isInAppliedModel(this.createKey(i,t))):this.isInAppliedModel(this.createKey(s,t))}doesFilterPassForTreeData(e){return e.childrenAfterGroup?.length?!1:this.isInAppliedModel(this.createKey(Er(e.getRoute()??[e.key??e.id],!0,this.gos.get("groupAllowUnbalanced"))))}doesFilterPassForGrouping(e){const t=(this.rowGroupColsSvc?.columns??[]).map(s=>this.valueSvc.getKeyForNode(s,e));return t.push(this.getValueFromNode(e)),this.isInAppliedModel(this.createKey(Er(t,!1,this.gos.get("groupAllowUnbalanced"))))}isInAppliedModel(e){return this.valueModel.hasAppliedModelKey(e)}getValueFromNode(e){return this.setFilterParams.getValue(e)}getKeyCreatorParams(e,t=null){const{colDef:s,column:i,api:r,context:a}=this.setFilterParams;return{value:e,colDef:s,column:i,node:t,data:t?.data,api:r,context:a}}onNewRowsLoaded(){this.isValuesTakenFromGrid()&&this.syncAfterDataChange()}isValuesTakenFromGrid(){return this.valueModel.getValuesType()===2}setFilterValues(e){this.valueModel.overrideValues(e).then(()=>{this.isAlive()&&(this.checkAndRefreshVirtualList(),this.onUiChanged())})}resetFilterValues(){this.valueModel.setValuesType(2),this.syncAfterDataChange()}refreshFilterValues(){this.valueModel.isInitialised()&&this.valueModel.refreshValues().then(()=>{this.isAlive()&&(this.hardRefreshVirtualList=!0,this.checkAndRefreshVirtualList(),this.onUiChanged())})}onAnyFilterChanged(){setTimeout(()=>{this.isAlive()&&this.valueModel.refreshAfterAnyFilterChanged().then(e=>{e&&this.isAlive()&&(this.checkAndRefreshVirtualList(),this.showOrHideResults())})},0)}onMiniFilterInput(){if(!this.valueModel.setMiniFilter(this.eMiniFilter.getValue()))return;const{applyMiniFilterWhileTyping:e,readOnly:t}=this.setFilterParams;!t&&e?this.filterOnAllVisibleValues(!1):this.updateUiAfterMiniFilterChange()}updateUiAfterMiniFilterChange(){const{excelMode:e,readOnly:t}=this.setFilterParams;e==null||t?this.checkAndRefreshVirtualList():this.valueModel.getMiniFilter()==null?this.resetUiToActiveModel(this.getModel()):(this.valueModel.selectAllMatchingMiniFilter(!0),this.checkAndRefreshVirtualList(),this.onUiChanged()),this.showOrHideResults()}showOrHideResults(){const e=this.valueModel.getMiniFilter()!=null&&this.valueModel.getDisplayedValueCount()<1;Fr(this.eFilterNoMatches,e),Fr(this.eSetFilterList,!e)}resetMiniFilter(){this.eMiniFilter.setValue(null,!0),this.valueModel.setMiniFilter(null)}resetUiToActiveModel(e,t){this.setModelAndRefresh(e==null?null:e.values).then(()=>{this.isAlive()&&(this.onUiChanged(!1,"prevent"),t?.())})}handleCancelEnd(e){this.setMiniFilter(null),super.handleCancelEnd(e)}onMiniFilterKeyDown(e){const{excelMode:t,readOnly:s}=this.setFilterParams;e.key===Wt.ENTER&&!t&&!s&&this.filterOnAllVisibleValues()}filterOnAllVisibleValues(e=!0){this.valueModel.selectAllMatchingMiniFilter(!0),this.checkAndRefreshVirtualList(),this.onUiChanged(!1,e?"immediately":"debounce"),this.showOrHideResults()}focusRowIfAlive(e){return e==null?Promise.resolve():new Promise(t=>{window.setTimeout(()=>{this.isAlive()&&this.virtualList.focusRow(e),t()},0)})}onSelectAll(e){e?this.valueModel.selectAllMatchingMiniFilter():this.valueModel.deselectAllMatchingMiniFilter(),this.refreshAfterSelection()}onGroupItemSelected(e,t){const s=i=>{i.filterPasses&&(i.children?i.children.forEach(r=>s(r)):this.selectItem(i.key,t))};s(e),this.refreshAfterSelection()}onItemSelected(e,t){this.selectItem(e,t),this.refreshAfterSelection()}selectItem(e,t){t?this.valueModel.selectKey(e):this.valueModel.deselectKey(e)}onExpandAll(e,t){const s=i=>{i.filterPasses&&i.available&&i.children&&(i.children.forEach(r=>s(r)),i.expanded=t)};s(e),this.refreshAfterExpansion()}onExpandedChanged(e,t){e.expanded=t,this.refreshAfterExpansion()}refreshAfterExpansion(){const e=this.virtualList.getLastFocusedRow();this.valueModel.updateDisplayedValues("expansion"),this.checkAndRefreshVirtualList(),this.focusRowIfAlive(e)}refreshAfterSelection(){const e=this.virtualList.getLastFocusedRow();this.checkAndRefreshVirtualList(),this.onUiChanged(),this.focusRowIfAlive(e)}setMiniFilter(e){this.eMiniFilter.setValue(e),this.onMiniFilterInput()}getMiniFilter(){return this.valueModel.getMiniFilter()}checkAndRefreshVirtualList(){this.virtualList.refresh(!this.hardRefreshVirtualList),this.hardRefreshVirtualList&&(this.hardRefreshVirtualList=!1)}getFilterKeys(){return this.valueModel.getKeys()}getFilterValues(){return this.valueModel.getValues()}getValues(){return this.getFilterKeys()}refreshVirtualList(){this.setFilterParams.refreshValuesOnOpen?this.refreshFilterValues():this.checkAndRefreshVirtualList()}translateForSetFilter(e){return this.getLocaleTextFunc()(e,dM[e])}isSelectAllSelected(){if(this.setFilterParams.defaultToNothingSelected){if(this.valueModel.hasSelections()&&this.valueModel.isEverythingVisibleSelected())return!0;if(this.valueModel.isNothingVisibleSelected())return!1}else{if(this.valueModel.hasSelections()&&this.valueModel.isNothingVisibleSelected())return!1;if(this.valueModel.isEverythingVisibleSelected())return!0}}areAllChildrenSelected(e){const t=s=>{if(s.children){let i=!1,r=!1;return s.children.some(n=>{if(!n.filterPasses||!n.available)return!1;const o=t(n);return o===void 0?!0:(o?i=!0:r=!0,i&&r)})?void 0:i}else return this.valueModel.isKeySelected(s.key)};return this.setFilterParams.defaultToNothingSelected?this.valueModel.hasSelections()&&t(e):t(e)}destroy(){this.virtualList=this.destroyBean(this.virtualList),super.destroy()}caseFormat(e){return e==null||typeof e!="string"||this.caseSensitive?e:e.toUpperCase()}resetExpansion(){if(!this.setFilterParams.treeList)return;const e=this.valueModel.getSelectAllItem();if(this.isSetFilterModelTreeItem(e)){const t=s=>{s.children&&(s.children.forEach(i=>t(i)),s.expanded=!1)};t(e),this.valueModel.updateDisplayedValues("expansion")}}getModelAsString(e){return this.filterModelFormatter.getModelAsString(e,this)}getPositionableElement(){return this.eSetFilterList}},UM=class{constructor(e){this.model=e}getRowCount(){return this.model.getDisplayedValueCount()}getRow(e){return this.model.getDisplayedItem(e)}areRowsEqual(e,t){return e===t}},KM=class{constructor(e,t){this.model=e,this.isSelectAllSelected=t}getRowCount(){const t=this.model.showAddCurrentSelectionToFilter()?2:1;return this.model.getDisplayedValueCount()+t}getRow(e){if(e===0)return this.model.getSelectAllItem();const t=this.model.showAddCurrentSelectionToFilter(),s=t?2:1;return e===1&&t?this.model.getAddSelectionToFilterItem():this.model.getDisplayedItem(e-s)}areRowsEqual(e,t){return e===t}},WM=class{constructor(e){this.model=e}getRowCount(){return this.model.getRowCount()}getRow(e){return this.model.getRow(e)}areRowsEqual(e,t){return e==null&&t==null?!0:e!=null&&t!=null&&e.treeKey===t.treeKey&&e.depth===t.depth}};import{AgInputTextFieldSelector as jM,Component as $M,RefPlaceholder as YM,_error as XM}from"ag-grid-community";var qM={tag:"div",cls:"ag-floating-filter-input ag-set-floating-filter-input",role:"presentation",children:[{tag:"ag-input-text-field",ref:"eFloatingFilterText"}]},ZM=class extends $M{constructor(){super(qM,[jM]),this.eFloatingFilterText=YM,this.availableValuesListenerAdded=!1,this.filterModelFormatter=new el}wireBeans(e){this.colNames=e.colNames}init(e){this.params=e,this.eFloatingFilterText.setDisabled(!0).addGuiEventListener("click",()=>this.params.showParentFilter()),this.setParams(e)}setParams(e){const t=this.colNames.getDisplayNameForColumn(e.column,"header",!0),s=this.getLocaleTextFunc();this.eFloatingFilterText.setInputAriaLabel(`${t} ${s("ariaFilterInput","Filter Input")}`)}refresh(e){this.params=e,this.setParams(e)}onParentModelChanged(e){this.updateFloatingFilterText(e)}parentSetFilterInstance(e){this.params.parentFilterInstance(t=>{if(!(t instanceof il)){XM(248);return}e(t)})}addAvailableValuesListener(){this.parentSetFilterInstance(e=>{const t=e.getValueModel();t&&this.addManagedListeners(t,{availableValuesChanged:()=>this.updateFloatingFilterText()})}),this.availableValuesListenerAdded=!0}updateFloatingFilterText(e){this.availableValuesListenerAdded||this.addAvailableValuesListener(),this.parentSetFilterInstance(t=>{this.eFloatingFilterText.setValue(this.filterModelFormatter.getModelAsString(e,t))})}},rl={moduleName:"SetFilter",version:E,userComponents:{agSetColumnFilter:il,agSetColumnFloatingFilter:ZM},icons:{setFilterGroupClosed:"tree-closed",setFilterGroupOpen:"tree-open",setFilterGroupIndeterminate:"tree-indeterminate",setFilterLoading:"loading"},dependsOn:[O,Qx]};import{_KeyboardNavigationModule as JM}from"ag-grid-community";import{AgPromise as Ks,Component as QM,RefPlaceholder as Lr,_addGridCommonParams as al,_removeFromParent as eT}from"ag-grid-community";var tT=".ag-status-bar{border-top:var(--ag-footer-row-border);display:flex;justify-content:space-between;line-height:1.5;overflow:hidden;padding-left:calc(var(--ag-spacing)*4);padding-right:calc(var(--ag-spacing)*4)}.ag-status-panel,:where(.ag-status-panel.ag-status-panel-aggregations .ag-status-name-value){display:inline-flex}.ag-status-name-value{color:var(--ag-status-bar-label-color);font-weight:var(--ag-status-bar-label-font-weight);margin-left:var(--ag-spacing);margin-right:var(--ag-spacing);padding-bottom:var(--ag-widget-container-vertical-padding);padding-top:var(--ag-widget-container-vertical-padding);white-space:nowrap}.ag-status-name-value-value{color:var(--ag-status-bar-value-color);font-weight:var(--ag-status-bar-value-font-weight)}.ag-status-bar-left{display:inline-flex}.ag-status-bar-center{display:inline-flex;text-align:center}.ag-status-bar-right{display:inline-flex}";function sT(e,t,s){return e.getCompDetails(t,iT,void 0,s,!0)}var iT={name:"statusPanel",optionalMethods:["refresh"]},rT={tag:"div",cls:"ag-status-bar",children:[{tag:"div",ref:"eStatusBarLeft",cls:"ag-status-bar-left",role:"status"},{tag:"div",ref:"eStatusBarCenter",cls:"ag-status-bar-center",role:"status"},{tag:"div",ref:"eStatusBarRight",cls:"ag-status-bar-right",role:"status"}]},aT=class extends QM{constructor(){super(rT),this.updateQueued=!1,this.panelsPromise=Ks.resolve(),this.eStatusBarLeft=Lr,this.eStatusBarCenter=Lr,this.eStatusBarRight=Lr,this.compDestroyFunctions={},this.registerCSS(tT)}wireBeans(e){this.userCompFactory=e.userCompFactory,this.statusBarSvc=e.statusBarSvc}postConstruct(){this.processStatusPanels(new Map),this.addManagedPropertyListeners(["statusBar"],this.handleStatusBarChanged.bind(this))}processStatusPanels(e){const t=this.gos.get("statusBar")?.statusPanels;if(t){const s=t.filter(a=>a.align==="left"),i=t.filter(a=>a.align==="center"),r=t.filter(a=>!a.align||a.align==="right");this.panelsPromise=Ks.all([this.createAndRenderComponents(s,this.eStatusBarLeft,e),this.createAndRenderComponents(i,this.eStatusBarCenter,e),this.createAndRenderComponents(r,this.eStatusBarRight,e)])}else this.setDisplayed(!1)}handleStatusBarChanged(){this.updateQueued||(this.updateQueued=!0,this.panelsPromise.then(()=>{this.updateStatusBar(),this.updateQueued=!1}))}updateStatusBar(){const e=this.gos.get("statusBar")?.statusPanels,t=Array.isArray(e)&&e.length>0;this.setDisplayed(t);const s=new Map;t&&e.forEach(i=>{const r=i.key??i.statusPanel,a=this.statusBarSvc.getStatusPanel(r);if(a?.refresh){const n=al(this.gos,{...i.statusPanelParams??{},key:r});a.refresh(n)&&(s.set(r,a),delete this.compDestroyFunctions[r],eT(a.getGui()))}}),this.resetStatusBar(),t&&this.processStatusPanels(s)}resetStatusBar(){this.eStatusBarLeft.innerHTML="",this.eStatusBarCenter.innerHTML="",this.eStatusBarRight.innerHTML="",this.destroyComponents(),this.statusBarSvc.unregisterAllComponents()}destroy(){this.destroyComponents(),super.destroy()}destroyComponents(){Object.values(this.compDestroyFunctions).forEach(e=>e()),this.compDestroyFunctions={}}createAndRenderComponents(e,t,s){const i=[];return e.forEach(r=>{const a=r.key||r.statusPanel,n=s.get(a);let o;if(n)o=Ks.resolve(n);else{const l=sT(this.userCompFactory,r,al(this.gos,{key:a}));if(l==null)return;o=l.newAgStackInstance()}i.push({key:a,promise:o})}),Ks.all(i.map(r=>r.promise)).then(()=>{i.forEach(r=>{r.promise.then(a=>{const n=()=>{this.destroyBean(a)};this.isAlive()?(this.statusBarSvc.registerStatusPanel(r.key,a),t.appendChild(a.getGui()),this.compDestroyFunctions[r.key]=n):n()})})})}},nT={selector:"AG-STATUS-BAR",component:aT};import{Component as oT,RefPlaceholder as $t,_createCellId as lT,_exists as cT,_formatNumberCommas as dT,_getRowBelow as hT,_getRowNode as uT,_isClientSideRowModel as pT,_isRowBefore as gT,_isServerSideRowModel as mT,_missing as kr,_warn as fT}from"ag-grid-community";import{Component as CT,RefPlaceholder as nl,_addGridCommonParams as vT}from"ag-grid-community";var Yt=class extends CT{constructor(){super(`<div class="ag-status-name-value">
|
|
3
|
+
`,"_x000a_"),Ei=e=>{if(e==null)return null;let t="";for(let s=0;s<e.length;s++){const i=e.charCodeAt(s);if(i>=0&&i<=31&&i!==10){const n=`_x${i.toString(16).toUpperCase().padStart(4,"0")}_`;t+=n}else t+=e[s]}return t},au=e=>{const t=[];for(const s of e.keys()){const i=s.toString(),r={name:"t",textNode:Zh(Ei(i),!1)};i.trim().length!==i.length&&(r.properties={rawMap:{"xml:space":"preserve"}}),t.push({name:"si",children:[r]})}return t};import{_escapeString as nu,_getHeaderRowCount as ou,_warn as Ii}from"ag-grid-community";var lu={getTemplate(e){const{name:t,ContentType:s,Extension:i,PartName:r}=e;return{name:t,properties:{rawMap:{Extension:i,PartName:r,ContentType:s}}}}},cu=lu,ws=e=>e==="jpg"?"jpeg":e,du={getTemplate(e){const t=new Array(e).fill(void 0).map((c,d)=>({name:"Override",ContentType:"application/vnd.openxmlformats-officedocument.spreadsheetml.worksheet+xml",PartName:`/xl/worksheets/sheet${d+1}.xml`})),s=qe.size,i=ke.size,r={};dt.forEach(c=>{r[ws(c.type)]=!0});const a=new Array(s).fill(void 0).map((c,d)=>({name:"Override",ContentType:"application/vnd.openxmlformats-officedocument.drawing+xml",PartName:`/xl/drawings/drawing${d+1}.xml`})),n=[];we.forEach(({name:c})=>{n.push({name:"Override",ContentType:"application/vnd.openxmlformats-officedocument.spreadsheetml.table+xml",PartName:`/xl/tables/${c}.xml`})});const o=Object.keys(r).map(c=>({name:"Default",ContentType:`image/${c}`,Extension:c}));i&&o.push({name:"Default",Extension:"vml",ContentType:"application/vnd.openxmlformats-officedocument.vmlDrawing"});const l=[...o,{name:"Default",Extension:"rels",ContentType:"application/vnd.openxmlformats-package.relationships+xml"},{name:"Default",ContentType:"application/xml",Extension:"xml"},{name:"Override",ContentType:"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet.main+xml",PartName:"/xl/workbook.xml"},...t,{name:"Override",ContentType:"application/vnd.openxmlformats-officedocument.theme+xml",PartName:"/xl/theme/theme1.xml"},{name:"Override",ContentType:"application/vnd.openxmlformats-officedocument.spreadsheetml.styles+xml",PartName:"/xl/styles.xml"},{name:"Override",ContentType:"application/vnd.openxmlformats-officedocument.spreadsheetml.sharedStrings+xml",PartName:"/xl/sharedStrings.xml"},...a,...n,{name:"Override",ContentType:"application/vnd.openxmlformats-package.core-properties+xml",PartName:"/docProps/core.xml"}].map(c=>cu.getTemplate(c));return{name:"Types",properties:{rawMap:{xmlns:"http://schemas.openxmlformats.org/package/2006/content-types"}},children:l}}},hu=du,uu={getTemplate(e){const s=new Date().toJSON();return{name:"cp:coreProperties",properties:{prefixedAttributes:[{prefix:"xmlns:",map:{cp:"http://schemas.openxmlformats.org/package/2006/metadata/core-properties",dc:"http://purl.org/dc/elements/1.1/",dcterms:"http://purl.org/dc/terms/",dcmitype:"http://purl.org/dc/dcmitype/",xsi:"http://www.w3.org/2001/XMLSchema-instance"}}]},children:[{name:"dc:creator",textNode:e},{name:"dc:title",textNode:"Workbook"},{name:"dcterms:created",properties:{rawMap:{"xsi:type":"dcterms:W3CDTF"}},textNode:s},{name:"dcterms:modified",properties:{rawMap:{"xsi:type":"dcterms:W3CDTF"}},textNode:s}]}}},pu=uu,Ka=(e,t)=>({name:`xdr:${e}`,children:[{name:"xdr:col",textNode:t.col.toString()},{name:"xdr:colOff",textNode:t.offsetX.toString()},{name:"xdr:row",textNode:t.row.toString()},{name:"xdr:rowOff",textNode:t.offsetY.toString()}]}),gu=e=>{const t=[{name:"a:ext",properties:{rawMap:{uri:"{FF2B5EF4-FFF2-40B4-BE49-F238E27FC236}"}},children:[{name:"a16:creationId",properties:{rawMap:{id:"{822E6D20-D7BC-2841-A643-D49A6EF008A2}","xmlns:a16":"http://schemas.microsoft.com/office/drawing/2014/main"}}}]}];switch(e.recolor&&e.recolor.toLowerCase()){case"grayscale":case"sepia":case"washout":t.push({name:"a:ext",properties:{rawMap:{uri:"{C183D7F6-B498-43B3-948B-1728B52AA6E4}"}},children:[{name:"adec:decorative",properties:{rawMap:{val:"0","xmlns:adec":"http://schemas.microsoft.com/office/drawing/2017/decorative"}}}]})}return{name:"a:extLst",children:t}},mu=(e,t)=>({name:"xdr:nvPicPr",children:[{name:"xdr:cNvPr",properties:{rawMap:{id:t,name:e.id,descr:e.altText!=null?e.altText:void 0}},children:[gu(e)]},{name:"xdr:cNvPicPr",properties:{rawMap:{preferRelativeResize:"0"}},children:[{name:"a:picLocks"}]}]}),Wa=e=>{if(!e.saturation&&!e.tint)return;const t=[];return e.saturation&&t.push({name:"a:satMod",properties:{rawMap:{val:e.saturation*1e3}}}),e.tint&&t.push({name:"a:tint",properties:{rawMap:{val:e.tint*1e3}}}),t},fu=(e,t)=>({name:"a:duotone",children:[{name:"a:prstClr",properties:{rawMap:{val:e.color}},children:Wa(e)},{name:"a:srgbClr",properties:{rawMap:{val:t.color}},children:Wa(t)}]}),Cu=(e,t)=>{let s;if(e.transparency){const i=Math.min(Math.max(e.transparency,0),100);s=[{name:"a:alphaModFix",properties:{rawMap:{amt:1e5-Math.round(i*1e3)}}}]}if(e.recolor)switch(s||(s=[]),e.recolor.toLocaleLowerCase()){case"grayscale":s.push({name:"a:grayscl"});break;case"sepia":s.push(fu({color:"black"},{color:"D9C3A5",tint:50,saturation:180}));break;case"washout":s.push({name:"a:lum",properties:{rawMap:{bright:"70000",contrast:"-70000"}}});break;default:}return{name:"xdr:blipFill",children:[{name:"a:blip",properties:{rawMap:{cstate:"print","r:embed":`rId${t}`,"xmlns:r":"http://schemas.openxmlformats.org/officeDocument/2006/relationships"}},children:s},{name:"a:stretch",children:[{name:"a:fillRect"}]}]}},vu=(e,t)=>{const s={name:"a:xfrm",children:[{name:"a:off",properties:{rawMap:{x:0,y:0}}},{name:"a:ext",properties:{rawMap:{cx:t.width,cy:t.height}}}]};if(e.rotation){const a=e.rotation;s.properties={rawMap:{rot:Math.min(Math.max(a,0),360)*6e4}}}return{name:"xdr:spPr",children:[s,{name:"a:prstGeom",properties:{rawMap:{prst:"rect"}},children:[{name:"a:avLst"}]}]}},yu=e=>{e.fitCell=!!e.fitCell||!e.width||!e.height;const{position:t={},fitCell:s,width:i=0,height:r=0,totalHeight:a,totalWidth:n}=e,{offsetX:o=0,offsetY:l=0,row:c=1,rowSpan:d=1,column:h=1,colSpan:u=1}=t;return{from:{row:c-1,col:h-1,offsetX:lt(o),offsetY:lt(l)},to:{row:c-1+(s?1:d-1),col:h-1+(s?1:u-1),offsetX:lt(i+o),offsetY:lt(r+l)},height:lt(a||r),width:lt(n||i)}},Su=(e,t,s,i)=>({name:"xdr:pic",children:[mu(e,t+1),Cu(e,s+1),vu(e,i)]}),bu={getTemplate(e){const{sheetIndex:t}=e,s=qe.get(t),i=Lt.get(t),r=s.map((a,n)=>{const o=yu(a);return{name:"xdr:twoCellAnchor",properties:{rawMap:{editAs:"absolute"}},children:[Ka("from",o.from),Ka("to",o.to),Su(a,n,i.get(a.id).index,o),{name:"xdr:clientData"}]}});return{name:"xdr:wsDr",properties:{rawMap:{"xmlns:a":"http://schemas.openxmlformats.org/drawingml/2006/main","xmlns:xdr":"http://schemas.openxmlformats.org/drawingml/2006/spreadsheetDrawing"}},children:r}}},wu=bu,xu={getTemplate(e){const{Id:t,Type:s,Target:i}=e;return{name:"Relationship",properties:{rawMap:{Id:t,Type:s,Target:i}}}}},Mu=xu,Tu={getTemplate(e){const t=e.map(s=>Mu.getTemplate(s));return{name:"Relationships",properties:{rawMap:{xmlns:"http://schemas.openxmlformats.org/package/2006/relationships"}},children:t}}},At=Tu,Fu={getTemplate(e){return{name:"sst",properties:{rawMap:{xmlns:"http://schemas.openxmlformats.org/spreadsheetml/2006/main",count:e.size,uniqueCount:e.size}},children:au(e)}}},Pu=Fu,Au=e=>{switch(e){case 1:return"thin";case 2:return"medium";case 3:return"thick";default:return"hair"}},Ru={None:"None",Dot:"Dotted",Dash:"Dashed",Double:"Double",DashDot:"DashDot",DashDotDot:"DashDotDot",SlantDashDot:"SlantDashDot",Continuous:"Continuous"},Eu=["Dashed","DashDot","DashDotDot"],Iu={None:"none",Solid:"solid",Gray50:"mediumGray",Gray75:"darkGray",Gray25:"lightGray",HorzStripe:"darkHorizontal",VertStripe:"darkVertical",ReverseDiagStripe:"darkDown",DiagStripe:"darkUp",DiagCross:"darkGrid",ThickDiagCross:"darkTrellis",ThinHorzStripe:"lightHorizontal",ThinVertStripe:"lightVertical",ThinReverseDiagStripe:"lightDown",ThinDiagStripe:"lightUp",ThinHorzCross:"lightGrid",ThinDiagCross:"lightTrellis",Gray125:"gray125",Gray0625:"gray0625"},Du={Automatic:"general",Left:"left",Center:"center",Right:"right",Fill:"fill",Justify:"justify",CenterAcrossSelection:"centerContinuous",Distributed:"distributed",JustifyDistributed:"justify"},Lu={Automatic:void 0,Top:"top",Bottom:"bottom",Center:"center",Justify:"justify",Distributed:"distributed",JustifyDistributed:"justify"},ku=e=>e?Iu[e]||e:"none",Le=e=>e==null?e:(e.charAt(0)==="#"&&(e=e.substring(1)),e.length===6?"FF"+e:e),xs=(e,t)=>{if(!e)return"thin";const s=Au(t);if(e==="Continuous")return s;const i=Ru[e];return s==="medium"&&Eu.some(r=>r===i)?`medium${i}`:`${i.charAt(0).toLowerCase()}${i.substring(1)}`},Gu=e=>Du[e]||"general",Ou=e=>Lu[e]||void 0,Rt=e=>({name:"color",properties:{rawMap:{rgb:Le(e||"#000000")}}}),Nu={getTemplate(e){const{left:t,right:s,top:i,bottom:r,diagonal:a}=e,n=t?[Rt(t.color)]:void 0,o=s?[Rt(s.color)]:void 0,l=i?[Rt(i.color)]:void 0,c=r?[Rt(r.color)]:void 0,d=a?[Rt(a.color)]:void 0;return{name:"border",children:[{name:"left",properties:{rawMap:{style:t&&t.style}},children:n},{name:"right",properties:{rawMap:{style:s&&s.style}},children:o},{name:"top",properties:{rawMap:{style:i&&i.style}},children:l},{name:"bottom",properties:{rawMap:{style:r&&r.style}},children:c},{name:"diagonal",properties:{rawMap:{style:a&&a.style}},children:d}]}}},Bu=Nu,_u={getTemplate(e){return{name:"borders",properties:{rawMap:{count:e.length}},children:e.map(t=>Bu.getTemplate(t))}}},Vu=_u,Hu=e=>{const s=["Context","LeftToRight","RightToLeft"].indexOf(e);return Math.max(s,0)},zu={getTemplate(e){const{horizontal:t,indent:s,readingOrder:i,rotate:r,shrinkToFit:a,vertical:n,wrapText:o}=e;return{name:"alignment",properties:{rawMap:{horizontal:t&&Gu(t),indent:s,readingOrder:i&&Hu(i),textRotation:r,shrinkToFit:a,vertical:n&&Ou(n),wrapText:o}}}}},Uu=zu,Ku={getTemplate(e){const t=e.protected===!1?0:1;return{name:"protection",properties:{rawMap:{hidden:e.hideFormula===!0?1:0,locked:t}}}}},Wu=Ku,ju={getTemplate(e){const{alignment:t,borderId:s,fillId:i,fontId:r,numFmtId:a,protection:n,quotePrefix:o,xfId:l}=e,c=[];return t&&c.push(Uu.getTemplate(t)),n&&c.push(Wu.getTemplate(n)),{name:"xf",properties:{rawMap:{applyAlignment:t?1:void 0,applyProtection:n?1:void 0,applyBorder:s?1:void 0,applyFill:i?1:void 0,borderId:s,fillId:i,applyFont:r?1:void 0,fontId:r,applyNumberFormat:a?1:void 0,numFmtId:a,quotePrefix:o?1:void 0,xfId:l}},children:c.length?c:void 0}}},ja=ju,$u={getTemplate(e){return{name:"cellStyleXfs",properties:{rawMap:{count:e.length}},children:e.map(t=>ja.getTemplate(t))}}},Yu=$u,Xu={getTemplate(e){const{builtinId:t,name:s,xfId:i}=e;return{name:"cellStyle",properties:{rawMap:{builtinId:t,name:s,xfId:i}}}}},qu=Xu,Zu={getTemplate(e){return{name:"cellStyles",properties:{rawMap:{count:e.length}},children:e.map(t=>qu.getTemplate(t))}}},Ju=Zu,Qu={getTemplate(e){return{name:"cellXfs",properties:{rawMap:{count:e.length}},children:e.map(t=>ja.getTemplate(t))}}},ep=Qu,tp={getTemplate(e){const{patternType:t,fgTheme:s,fgTint:i,fgRgb:r,bgRgb:a,bgIndexed:n}=e,o={name:"patternFill",properties:{rawMap:{patternType:t}}};return(s||i||r)&&(o.children=[{name:"fgColor",properties:{rawMap:{theme:s,tint:i,rgb:r}}}]),(n||a)&&(o.children||(o.children=[]),o.children.push({name:"bgColor",properties:{rawMap:{indexed:n,rgb:a}}})),{name:"fill",children:[o]}}},sp=tp,ip={getTemplate(e){return{name:"fills",properties:{rawMap:{count:e.length}},children:e.map(t=>sp.getTemplate(t))}}},rp=ip,ap={getTemplate(e){const{size:t,colorTheme:s,color:i="FF000000",fontName:r="Calibri",family:a,scheme:n,italic:o,bold:l,strikeThrough:c,outline:d,shadow:h,underline:u,verticalAlign:p}=e,g=[{name:"sz",properties:{rawMap:{val:t}}},{name:"color",properties:{rawMap:{theme:s,rgb:i}}},{name:"name",properties:{rawMap:{val:r}}}];return a&&g.push({name:"family",properties:{rawMap:{val:a}}}),n&&g.push({name:"scheme",properties:{rawMap:{val:n}}}),o&&g.push({name:"i"}),l&&g.push({name:"b"}),c&&g.push({name:"strike"}),d&&g.push({name:"outline"}),h&&g.push({name:"shadow"}),u&&g.push({name:"u",properties:{rawMap:{val:u}}}),p&&g.push({name:"vertAlign",properties:{rawMap:{val:p}}}),{name:"font",children:g}}},np=ap,op={getTemplate(e){return{name:"fonts",properties:{rawMap:{count:e.length}},children:e.map(t=>np.getTemplate(t))}}},lp=op;import{_escapeString as cp}from"ag-grid-community";function dp(e){const t=e.split(/(\[[^\]]*\])/);for(let s=0;s<t.length;s++){let i=t[s];i.length&&(i.startsWith("[")||(i=i.replace(/\$/g,'"$"')),t[s]=cp(i))}return t.join("")}var hp={getTemplate(e){let{formatCode:t,numFmtId:s}=e;return t.length&&(t=dp(t)),{name:"numFmt",properties:{rawMap:{formatCode:t,numFmtId:s}}}}},up=hp,pp={getTemplate(e){return{name:"numFmts",properties:{rawMap:{count:e.length}},children:e.map(t=>up.getTemplate(t))}}},gp=pp,Ms,ct,Et,It,Dt,$a,Ts,Ya,Di,Xa=(e,t)=>(e.indexOf("mixedStyle")!==-1&&t>1&&(e+=`_${t}`),e),qa=()=>{Ms={base:0},ct=[],Et=[{fontName:"Calibri",colorTheme:"1",family:"2",scheme:"minor"}],It=[{patternType:"none"},{patternType:"gray125"}],Dt=[{left:void 0,right:void 0,top:void 0,bottom:void 0,diagonal:void 0}],$a=[{borderId:0,fillId:0,fontId:0,numFmtId:0}],Ts=[{borderId:0,fillId:0,fontId:0,numFmtId:0,xfId:0}],Ya=[{builtinId:0,name:"Normal",xfId:0}]},mp=e=>{const t=ku(e.pattern),s=Le(e.color),i=Le(e.patternColor);let r=It.findIndex(a=>{const{patternType:n,fgRgb:o,bgRgb:l}=a;return!(n!=t||o!=s||l!=i)});return r===-1&&(r=It.length,It.push({patternType:t,fgRgb:s,bgRgb:i})),r},fp=e=>{if(Ha[e])return Ha[e];let t=ct.findIndex(s=>s.formatCode===e);return t===-1?(t=ct.length+164,ct.push({formatCode:e,numFmtId:t})):t=ct[t].numFmtId,t},Cp=e=>{const{borderBottom:t,borderTop:s,borderLeft:i,borderRight:r}=e;let a,n,o,l,c,d,h,u;i&&(o=xs(i.lineStyle,i.weight),h=Le(i.color)),r&&(l=xs(r.lineStyle,r.weight),u=Le(r.color)),t&&(a=xs(t.lineStyle,t.weight),c=Le(t.color)),s&&(n=xs(s.lineStyle,s.weight),d=Le(s.color));let p=Dt.findIndex(g=>{const{left:m,right:f,top:C,bottom:v}=g;if(!m&&(o||h)||!f&&(l||u)||!C&&(n||d)||!v&&(a||c))return!1;const{style:y,color:S}=m||{},{style:b,color:w}=f||{},{style:F,color:T}=C||{},{style:P,color:A}=v||{};return!(y!=o||S!=h||b!=l||w!=u||F!=n||T!=d||P!=a||A!=c)});return p===-1&&(p=Dt.length,Dt.push({left:{style:o,color:h},right:{style:l,color:u},top:{style:n,color:d},bottom:{style:a,color:c},diagonal:{style:void 0,color:void 0}})),p},vp=e=>{const{fontName:t="Calibri",color:s,size:i,bold:r,italic:a,outline:n,shadow:o,strikeThrough:l,underline:c,family:d,verticalAlign:h}=e,u=Le(s),p=tu(d),g=c?c.toLocaleLowerCase():void 0,m=h?h.toLocaleLowerCase():void 0;let f=Et.findIndex(C=>!(C.fontName!=t||C.color!=u||C.size!=i||C.bold!=r||C.italic!=a||C.outline!=n||C.shadow!=o||C.strikeThrough!=l||C.underline!=g||C.verticalAlign!=m||C.family!=p));return f===-1&&(f=Et.length,Et.push({fontName:t,color:u,size:i,bold:r,italic:a,outline:n,shadow:o,strikeThrough:l,underline:g,verticalAlign:m,family:p?.toString()})),f},yp=e=>{const{alignment:t,borders:s,font:i,interior:r,numberFormat:a,protection:n,quotePrefix:o}=e;let{id:l}=e,c=0,d=0,h=0,u=0;l&&(l=Xa(l,Di),Ms[l]==null&&(r&&(c=mp(r)),s&&(d=Cp(s)),i&&(h=vp(i)),a&&(u=fp(a.format)),Ms[l]=Ts.length,Ts.push({alignment:t,borderId:d||0,fillId:c||0,fontId:h||0,numFmtId:u||0,protection:n,quotePrefix:o,xfId:0})))},Sp={getTemplate(e){const t=gp.getTemplate(ct),s=lp.getTemplate(Et.map(l=>({...l,size:l.size!=null?l.size:e}))),i=rp.getTemplate(It),r=Vu.getTemplate(Dt),a=Yu.getTemplate($a),n=ep.getTemplate(Ts),o=Ju.getTemplate(Ya);return qa(),{name:"styleSheet",properties:{rawMap:{"mc:Ignorable":"x14ac x16r2 xr",xmlns:"http://schemas.openxmlformats.org/spreadsheetml/2006/main","xmlns:mc":"http://schemas.openxmlformats.org/markup-compatibility/2006","xmlns:x14ac":"http://schemas.microsoft.com/office/spreadsheetml/2009/9/ac","xmlns:x16r2":"http://schemas.microsoft.com/office/spreadsheetml/2015/02/main","xmlns:xr":"http://schemas.microsoft.com/office/spreadsheetml/2014/revision"}},children:[t,s,i,r,a,n,o,{name:"tableStyles",properties:{rawMap:{count:0,defaultPivotStyle:"PivotStyleLight16",defaultTableStyle:"TableStyleMedium2"}}}]}}},bp=(e,t)=>Ms[Xa(e,t)]||0,wp=(e,t)=>{Di=t,Di===1&&qa(),e.forEach(yp)},xp=Sp,Mp={getTemplate(e,t){const{name:s,columns:i,rowRange:r,displayName:a,showRowStripes:n,showColumnStripes:o,showFilterButtons:l,highlightFirstColumn:c,highlightLastColumn:d}=e||{},h=!r||r[0]-r[1]===0;if(!e||!s||!Array.isArray(i)||!i.length||h)return{name:"table"};const u=i.map((v,y)=>({name:"filterColumn",properties:{rawMap:{colId:y.toString(),hiddenButton:l[y]?0:1}}})),p=`A${r[0]}`,g=`${$e(i.length)}${r[1]}`,m=`${p}:${g}`,f=`${t+1}`,C=t?`${a}_${f}`:a;return{name:"table",properties:{rawMap:{xmlns:"http://schemas.openxmlformats.org/spreadsheetml/2006/main","xmlns:mc":"http://schemas.openxmlformats.org/markup-compatibility/2006","mc:Ignorable":"xr xr3","xmlns:xr":"http://schemas.microsoft.com/office/spreadsheetml/2014/revision","xmlns:xr3":"http://schemas.microsoft.com/office/spreadsheetml/2016/revision3",name:s,displayName:C,ref:m,totalsRowShown:0,id:f}},children:[{name:"autoFilter",properties:{rawMap:{ref:m}},children:u},{name:"tableColumns",properties:{rawMap:{count:i.length}},children:i.map((v,y)=>({name:"tableColumn",properties:{rawMap:{id:(y+1).toString(),name:ru(v),dataCellStyle:"Normal"}}}))},{name:"tableStyleInfo",properties:{rawMap:{name:"TableStyleLight1",showFirstColumn:c?1:0,showLastColumn:d?1:0,showRowStripes:n?1:0,showColumnStripes:o?1:0}}}]}}},Tp=Mp,de=e=>{const[t,s,i,r]=e;return{name:`a:${t}`,children:[{name:`a:${s}`,properties:{rawMap:{val:i,lastClr:r}}}]}},Fp={getTemplate(){return{name:"a:clrScheme",properties:{rawMap:{name:"Office"}},children:[de(["dk1","sysClr","windowText","000000"]),de(["lt1","sysClr","window","FFFFFF"]),de(["dk2","srgbClr","44546A"]),de(["lt2","srgbClr","E7E6E6"]),de(["accent1","srgbClr","4472C4"]),de(["accent2","srgbClr","ED7D31"]),de(["accent3","srgbClr","A5A5A5"]),de(["accent4","srgbClr","FFC000"]),de(["accent5","srgbClr","5B9BD5"]),de(["accent6","srgbClr","70AD47"]),de(["hlink","srgbClr","0563C1"]),de(["folHlink","srgbClr","954F72"])]}}},Pp=Fp,x=e=>{const[t,s,i,r]=e;return{name:`a:${t}`,properties:{rawMap:{script:i,typeface:s,panose:r}}}},Ap={getTemplate(){return{name:"a:fontScheme",properties:{rawMap:{name:"Office"}},children:[{name:"a:majorFont",children:[x(["latin","Calibri Light",void 0,"020F0302020204030204"]),x(["ea",""]),x(["cs",""]),x(["font","\u6E38\u30B4\u30B7\u30C3\u30AF Light","Jpan"]),x(["font","\uB9D1\uC740 \uACE0\uB515","Hang"]),x(["font","\u7B49\u7EBF Light","Hans"]),x(["font","\u65B0\u7D30\u660E\u9AD4","Hant"]),x(["font","Times New Roman","Arab"]),x(["font","Times New Roman","Hebr"]),x(["font","Tahoma","Thai"]),x(["font","Nyala","Ethi"]),x(["font","Vrinda","Beng"]),x(["font","Shruti","Gujr"]),x(["font","MoolBoran","Khmr"]),x(["font","Tunga","Knda"]),x(["font","Raavi","Guru"]),x(["font","Euphemia","Cans"]),x(["font","Plantagenet Cherokee","Cher"]),x(["font","Microsoft Yi Baiti","Yiii"]),x(["font","Microsoft Himalaya","Tibt"]),x(["font","MV Boli","Thaa"]),x(["font","Mangal","Deva"]),x(["font","Gautami","Telu"]),x(["font","Latha","Taml"]),x(["font","Estrangelo Edessa","Syrc"]),x(["font","Kalinga","Orya"]),x(["font","Kartika","Mlym"]),x(["font","DokChampa","Laoo"]),x(["font","Iskoola Pota","Sinh"]),x(["font","Mongolian Baiti","Mong"]),x(["font","Times New Roman","Viet"]),x(["font","Microsoft Uighur","Uigh"]),x(["font","Sylfaen","Geor"]),x(["font","Arial","Armn"]),x(["font","Leelawadee UI","Bugi"]),x(["font","Microsoft JhengHei","Bopo"]),x(["font","Javanese Text","Java"]),x(["font","Segoe UI","Lisu"]),x(["font","Myanmar Text","Mymr"]),x(["font","Ebrima","Nkoo"]),x(["font","Nirmala UI","Olck"]),x(["font","Ebrima","Osma"]),x(["font","Phagspa","Phag"]),x(["font","Estrangelo Edessa","Syrn"]),x(["font","Estrangelo Edessa","Syrj"]),x(["font","Estrangelo Edessa","Syre"]),x(["font","Nirmala UI","Sora"]),x(["font","Microsoft Tai Le","Tale"]),x(["font","Microsoft New Tai Lue","Talu"]),x(["font","Ebrima","Tfng"])]},{name:"a:minorFont",children:[x(["latin","Calibri",void 0,"020F0502020204030204"]),x(["ea",""]),x(["cs",""]),x(["font","\u6E38\u30B4\u30B7\u30C3\u30AF","Jpan"]),x(["font","\uB9D1\uC740 \uACE0\uB515","Hang"]),x(["font","\u7B49\u7EBF","Hans"]),x(["font","\u65B0\u7D30\u660E\u9AD4","Hant"]),x(["font","Arial","Arab"]),x(["font","Arial","Hebr"]),x(["font","Tahoma","Thai"]),x(["font","Nyala","Ethi"]),x(["font","Vrinda","Beng"]),x(["font","Shruti","Gujr"]),x(["font","DaunPenh","Khmr"]),x(["font","Tunga","Knda"]),x(["font","Raavi","Guru"]),x(["font","Euphemia","Cans"]),x(["font","Plantagenet Cherokee","Cher"]),x(["font","Microsoft Yi Baiti","Yiii"]),x(["font","Microsoft Himalaya","Tibt"]),x(["font","MV Boli","Thaa"]),x(["font","Mangal","Deva"]),x(["font","Gautami","Telu"]),x(["font","Latha","Taml"]),x(["font","Estrangelo Edessa","Syrc"]),x(["font","Kalinga","Orya"]),x(["font","Kartika","Mlym"]),x(["font","DokChampa","Laoo"]),x(["font","Iskoola Pota","Sinh"]),x(["font","Mongolian Baiti","Mong"]),x(["font","Arial","Viet"]),x(["font","Microsoft Uighur","Uigh"]),x(["font","Sylfaen","Geor"]),x(["font","Arial","Armn"]),x(["font","Leelawadee UI","Bugi"]),x(["font","Microsoft JhengHei","Bopo"]),x(["font","Javanese Text","Java"]),x(["font","Segoe UI","Lisu"]),x(["font","Myanmar Text","Mymr"]),x(["font","Ebrima","Nkoo"]),x(["font","Nirmala UI","Olck"]),x(["font","Ebrima","Osma"]),x(["font","Phagspa","Phag"]),x(["font","Estrangelo Edessa","Syrn"]),x(["font","Estrangelo Edessa","Syrj"]),x(["font","Estrangelo Edessa","Syre"]),x(["font","Nirmala UI","Sora"]),x(["font","Microsoft Tai Le","Tale"]),x(["font","Microsoft New Tai Lue","Talu"]),x(["font","Ebrima","Tfng"])]}]}}},Rp=Ap,fe=(e,t,s)=>({name:`a:${e}`,properties:{rawMap:{val:t}},children:s}),Li=e=>{const[t,s,i,r,a,n]=e,o=[];return o.push(fe("satMod",i)),r&&o.push(fe("lumMod",r)),a&&o.push(fe("tint",a)),n&&o.push(fe("shade",n)),{name:"a:gs",properties:{rawMap:{pos:t}},children:[{name:"a:schemeClr",properties:{rawMap:{val:s}},children:o}]}},Fs=(e,t)=>({name:"a:solidFill",children:[fe("schemeClr",e,t)]}),ki=e=>{const[t,s,i,r,a]=e,[n,o]=a;return{name:"a:gradFill",properties:{rawMap:{rotWithShape:t}},children:[{name:"a:gsLst",children:[Li(s),Li(i),Li(r)]},{name:"a:lin",properties:{rawMap:{ang:n,scaled:o}}}]}},Gi=e=>{const[t,s,i,r]=e;return{name:"a:ln",properties:{rawMap:{w:t,cap:s,cmpd:i,algn:r}},children:[Fs("phClr"),fe("prstDash","solid"),{name:"a:miter",properties:{rawMap:{lim:"800000"}}}]}},Oi=e=>{const t=[];if(e){const[s,i,r,a,n]=e;t.push({name:"a:outerShdw",properties:{rawMap:{blurRad:s,dist:i,dir:r,algn:a,rotWithShape:n}},children:[fe("srgbClr","000000",[fe("alpha","63000")])]})}return{name:"a:effectStyle",children:[Object.assign({},{name:"a:effectLst"},t.length?{children:t}:{})]}},Ep=()=>({name:"a:fillStyleLst",children:[Fs("phClr"),ki(["1",["0","phClr","105000","110000","67000"],["50000","phClr","103000","105000","73000"],["100000","phClr","109000","105000","81000"],["5400000","0"]]),ki(["1",["0","phClr","103000","102000","94000"],["50000","phClr","110000","100000",void 0,"100000"],["100000","phClr","120000","99000",void 0,"78000"],["5400000","0"]])]}),Ip=()=>({name:"a:lnStyleLst",children:[Gi(["6350","flat","sng","ctr"]),Gi(["12700","flat","sng","ctr"]),Gi(["19050","flat","sng","ctr"])]}),Dp=()=>({name:"a:effectStyleLst",children:[Oi(),Oi(),Oi(["57150","19050","5400000","ctr","0"])]}),Lp=()=>({name:"a:bgFillStyleLst",children:[Fs("phClr"),Fs("phClr",[fe("tint","95000"),fe("satMod","170000")]),ki(["1",["0","phClr","150000","102000","93000","98000"],["50000","phClr","130000","103000","98000","90000"],["100000","phClr","120000",void 0,void 0,"63000"],["5400000","0"]])]}),kp={getTemplate(){return{name:"a:fmtScheme",properties:{rawMap:{name:"Office"}},children:[Ep(),Ip(),Dp(),Lp()]}}},Gp=kp,Op={getTemplate(){return{name:"a:themeElements",children:[Pp.getTemplate(),Rp.getTemplate(),Gp.getTemplate()]}}},Np=Op,Bp={getTemplate(){return{name:"a:theme",properties:{prefixedAttributes:[{prefix:"xmlns:",map:{a:"http://schemas.openxmlformats.org/drawingml/2006/main"}}],rawMap:{name:"Office Theme"}},children:[Np.getTemplate(),{name:"a:objectDefaults"},{name:"a:extraClrSchemeLst"}]}}},_p=Bp,Vp=()=>({name:"o:shapelayout",properties:{prefixedAttributes:[{prefix:"v:",map:{ext:"edit"}}]},children:[{name:"o:idmap",properties:{prefixedAttributes:[{prefix:"v:",map:{ext:"edit"}}],rawMap:{data:"1"}}}]}),Hp=()=>({name:"v:stroke",properties:{rawMap:{joinstyle:"miter"}}}),zp=e=>({name:"v:formulas",children:e.map(t=>({name:"v:f",properties:{rawMap:{eqn:t}}}))}),Up=()=>({name:"v:path",properties:{prefixedAttributes:[{prefix:"o:",map:{connecttype:"rect",extrusionok:"f"}}],rawMap:{gradientshapeok:"t"}}}),Za=e=>{const{aspectratio:t,rotation:s}=e||{},i={};return t&&(i.aspectratio="t"),s&&(i.rotation="t"),{name:"o:lock",properties:{prefixedAttributes:[{prefix:"v:",map:{ext:"edit"}}],rawMap:i}}};function Kp(e,t,s,i,r){return(e-t)/(s-t)*(r-i)+i}var Wp=(e,t)=>{let s;const{recolor:i,brightness:r,contrast:a,id:n}=e;if(i&&(s={},(i==="Washout"||i==="Grayscale")&&(s.gain="19661f",s.blacklevel="22938f"),(i==="Black & White"||i==="Grayscale")&&(s.grayscale="t",i==="Black & White"&&(s.bilevel="t"))),!i||i==="Grayscale"){if(s||(s={}),a!=null&&a!==50){let o="1";a>=0&&(a<50?o=String(a/50):a<100?o=String(50/(100-a)):a===100&&(o="2147483647f")),s.gain=o}r!=null&&r!==50&&(s.blacklevel=Kp(r,0,100,-.5,.5).toString())}return{name:"v:imagedata",properties:{prefixedAttributes:[{prefix:"o:",map:{relid:`rId${t}`,title:n}}],rawMap:s}}},jp=()=>{const e=["if lineDrawn pixelLineWidth 0","sum @0 1 0","sum 0 0 @1","prod @2 1 2","prod @3 21600 pixelWidth","prod @3 21600 pixelHeight","sum @0 0 1","prod @6 1 2","prod @7 21600 pixelWidth","sum @8 21600 0","prod @7 21600 pixelHeight","sum @10 21600 0"];return{name:"v:shapetype",properties:{prefixedAttributes:[{prefix:"o:",map:{spt:"75",preferrelative:"t"}}],rawMap:{coordsize:"21600,21600",filled:"f",id:"_x0000_t75",path:"m@4@5l@4@11@9@11@9@5xe",stroked:"f"}},children:[Hp(),zp(e),Up(),Za({aspectratio:!0})]}},Ja=e=>Math.floor((e??0)*.74999943307122),$p=(e,t)=>{const{width:s=0,height:i=0,altText:r}=e,a=Ja(s),n=Ja(i);return{name:"v:shape",properties:{rawMap:{id:e.headerFooterPosition,"o:spid":"_x0000_s1025",style:`position: absolute; margin-left: 0; margin-top: 10in; margin-bottom: 0; margin-right: 0; width: ${a}pt; height: ${n}pt; z-index: ${t+1}`,type:"#_x0000_t75",alt:r}},children:[Wp(e,t+1),Za({rotation:!0})]}},Yp={getTemplate(e){const t=ke.get(e.sheetIndex)||[],s=[Vp(),jp(),...t.map((i,r)=>$p(i,r))];return{name:"xml",properties:{prefixedAttributes:[{prefix:"xmlns:",map:{v:"urn:schemas-microsoft-com:vml",o:"urn:schemas-microsoft-com:office:office",x:"urn:schemas-microsoft-com:office:excel"}}]},children:s}}},Xp=Yp,qp={getTemplate(e,t){const s=(t+1).toString();return{name:"sheet",properties:{rawMap:{name:e,sheetId:s,"r:id":`rId${s}`}}}}},Zp=qp,Jp={getTemplate(e){return{name:"sheets",children:e.map((t,s)=>Zp.getTemplate(t,s))}}},Qp=Jp,eg={getTemplate(e,t){return{name:"workbook",properties:{prefixedAttributes:[{prefix:"xmlns:",map:{r:"http://schemas.openxmlformats.org/officeDocument/2006/relationships"}}],rawMap:{xmlns:"http://schemas.openxmlformats.org/spreadsheetml/2006/main"}},children:[{name:"bookViews",children:[{name:"workbookView",properties:{rawMap:{activeTab:t}}}]},Qp.getTemplate(e)]}}},tg=eg;import{_escapeString as sg}from"ag-grid-community";var ig=e=>Math.ceil((e-12)/7+1),rg={getTemplate(e){const{min:t,max:s,outlineLevel:i,s:r,width:a,hidden:n,bestFit:o}=e;let l=1,c="0";return a>1&&(l=ig(a),c="1"),{name:"col",properties:{rawMap:{min:t,max:s,outlineLevel:i??void 0,width:l,style:r,hidden:n?"1":"0",bestFit:o?"1":"0",customWidth:c}}}}},ag=rg,ng={getTemplate(e){return{name:"mergeCell",properties:{rawMap:{ref:e}}}}},og=ng;import{_escapeString as Qa}from"ag-grid-community";var lg=e=>{const t=e.charAt(0).toLowerCase();return t==="s"?"inlineStr":t},cg={getTemplate(e,t,s){const{ref:i,data:r,styleId:a}=e,{type:n,value:o}=r||{type:"empty",value:null};let l=n;n==="f"?l="str":n.charAt(0)===n.charAt(0).toUpperCase()&&(l=lg(n));const c={name:"c",properties:{rawMap:{r:i,t:l==="empty"?void 0:l,s:a?bp(a,s):void 0}}};if(l==="empty")return c;let d;return l==="str"&&n==="f"?d=[{name:"f",textNode:Qa(Ei(o),!1)}]:l==="inlineStr"?d=[{name:"is",children:[{name:"t",textNode:Qa(Ei(o),!1)}]}]:d=[{name:"v",textNode:o}],Object.assign({},c,{children:d})}},dg=cg,hg=(e,t)=>{const s=[];let i=0;for(let r=0;r<e.length;r++){const a=e[r];a.mergeAcross&&(s.push({pos:r,excelPos:i}),i+=a.mergeAcross),i++}if(s.length)for(let r=s.length-1;r>=0;r--){const a=[],n=e[s[r].pos];for(let o=1;o<=n.mergeAcross;o++)a.push({ref:`${$e(s[r].excelPos+1+o)}${t+1}`,styleId:n.styleId,data:{type:"empty",value:null}});a.length&&e.splice(s[r].pos+1,0,...a)}},ug=e=>e.data?.value!==""||e.styleId!==void 0,pg={getTemplate(e,t,s){const{collapsed:i,hidden:r,height:a,outlineLevel:n,cells:o=[]}=e;hg(o,t);const l=o.filter(ug).map((c,d)=>dg.getTemplate(c,d,s));return{name:"row",properties:{rawMap:{r:t+1,collapsed:i?"1":"0",hidden:r?"1":"0",ht:a,customHeight:a!=null?"1":"0",spans:"1:1",outlineLevel:n||void 0}},children:l}}},gg=pg,mg=(e,t,s)=>{const i=[],r=[];e.forEach((o,l)=>{const c=o.cells;let d=0,h;c.forEach((u,p)=>{const g=p+d+1,m=$e(g),f=l+1;if(u.mergeAcross){d+=u.mergeAcross;const v=$e(p+d+1);i.push(`${m}${f}:${v}${f}`)}t[g-1]||(t[g-1]={});const{collapsibleRanges:C}=u;C&&C.forEach(v=>{r.push([g+v[0],g+v[1]])}),h=t[g-1],h.min=g,h.max=g,u.ref=`${m}${f}`})}),r.sort((o,l)=>o[0]!==l[0]?o[0]-l[0]:l[1]-o[1]);const a=new Map,n=new Map;return r.filter(o=>{const l=o.toString();return a.get(l)?!1:(a.set(l,!0),!0)}).forEach(o=>{const l=t.find(d=>d.min==o[0]&&d.max==o[1]),c=n.get(o[0]);t.push({min:o[0],max:o[1],outlineLevel:s?void 0:c||1,width:(l||{width:100}).width}),n.set(o[0],(c||0)+1)}),i},fg=e=>!e||e!=="Portrait"&&e!=="Landscape"?"portrait":e.toLocaleLowerCase(),Cg=e=>{if(e==null)return 1;const s=["Letter","Letter Small","Tabloid","Ledger","Legal","Statement","Executive","A3","A4","A4 Small","A5","A6","B4","B5","Folio","Envelope","Envelope DL","Envelope C5","Envelope B5","Envelope C3","Envelope C4","Envelope C6","Envelope Monarch","Japanese Postcard","Japanese Double Postcard"].indexOf(e);return s===-1?1:s+1},vg=e=>{const t={"&[Page]":"&P","&[Pages]":"&N","&[Date]":"&D","&[Time]":"&T","&[Tab]":"&A","&[Path]":"&Z","&[File]":"&F","&[Picture]":"&G"};for(const s of Object.keys(t))e=e.replace(s,t[s]);return e},yg=e=>e==="Center"?"C":e==="Right"?"R":"L",Sg=(e,t)=>(t&&(e+="&"",e+=t.fontName||"Calibri",t.bold!==t.italic?e+=t.bold?",Bold":",Italic":t.bold?e+=",Bold Italic":e+=",Regular",e+=""",t.size&&(e+=`&${t.size}`),t.strikeThrough&&(e+="&S"),t.underline&&(e+=`&${t.underline==="Double"?"E":"U"}`),t.color&&(e+=`&K${t.color.replace("#","").toUpperCase()}`)),e),bg=(e,t,s)=>e.reduce((i,r,a)=>{const n=yg(r.position),o=Sg(`${i}&${n}`,r.font),l=["Left","Center","Right"];r.position||(r.position=l[a]);const{image:c}=r;if(r.value==="&[Picture]"&&c){const d=`${n}${t}${s}`;Wg(c,d)}return`${o}${sg(vg(r.value))}`},""),wg=e=>{const t=["all","first","even"],s=[];return t.forEach(i=>{const r=e[i],a=i==="all"?"odd":i;if(r)for(const n of Object.keys(r)){const o=r[n],l=`${n.charAt(0).toUpperCase()}${n.slice(1)}`,c=n[0].toUpperCase();if(o){const d=i==="all"?"":i.toUpperCase();s.push({name:`${a}${l}`,properties:{rawMap:{"xml:space":"preserve"}},textNode:bg(o,c,d)})}}}),s},xg=e=>t=>(e.length&&t.children.push({name:"cols",children:e.map(s=>ag.getTemplate(s))}),t),Mg=(e,t)=>s=>(e.length&&s.children.push({name:"sheetData",children:e.map((i,r)=>gg.getTemplate(i,r,t))}),s),Tg=e=>t=>(e.length&&t.children.push({name:"mergeCells",properties:{rawMap:{count:e.length}},children:e.map(s=>og.getTemplate(s))}),t),Fg=e=>t=>{const{top:s=.75,right:i=.7,bottom:r=.75,left:a=.7,header:n=.3,footer:o=.3}=e;return t.children.push({name:"pageMargins",properties:{rawMap:{bottom:r,footer:o,header:n,left:a,right:i,top:s}}}),t},Pg=e=>t=>(e&&t.children.push({name:"pageSetup",properties:{rawMap:{horizontalDpi:0,verticalDpi:0,orientation:fg(e.orientation),paperSize:Cg(e.pageSize)}}}),t),Ag=e=>t=>{if(!e)return t;const s=e.first!=null?1:0,i=e.even!=null?1:0;return t.children.push({name:"headerFooter",properties:{rawMap:{differentFirst:s,differentOddEven:i}},children:wg(e)}),t},Rg=e=>t=>(e&&t.children.push({name:"tableParts",properties:{rawMap:{count:"1"}},children:[{name:"tablePart",properties:{rawMap:{"r:id":`rId${++t.rIdCounter}`}}}]}),t),Eg=e=>t=>(qe.get(e)?.length&&t.children.push({name:"drawing",properties:{rawMap:{"r:id":`rId${++t.rIdCounter}`}}}),t),Ig=e=>t=>(ke.get(e)&&t.children.push({name:"legacyDrawingHF",properties:{rawMap:{"r:id":`rId${++t.rIdCounter}`}}}),t),Dg=(e=0,t=0)=>{const s=e>0||t>0;return s?[{name:"pane",properties:{rawMap:{state:s?"frozen":void 0,topLeftCell:s?`${$e(e+1)}${t+1}`:void 0,xSplit:e===0?void 0:e,ySplit:t===0?void 0:t}}}]:void 0},Lg=(e=!1,t,s)=>i=>(i.children.push({name:"sheetViews",children:[{name:"sheetView",properties:{rawMap:{rightToLeft:e===!0?"1":"0",workbookViewId:"0"}},children:Dg(t,s)}]}),i),kg=()=>e=>(e.children.push({name:"sheetPr",children:[{name:"outlinePr",properties:{rawMap:{summaryBelow:0}}}]}),e),Gg=e=>t=>{const s=e.reduce((i,r)=>r.outlineLevel&&r.outlineLevel>i?r.outlineLevel:i,0);return t.children.push({name:"sheetFormatPr",properties:{rawMap:{baseColWidth:10,defaultRowHeight:16,outlineLevelRow:s||void 0}}}),t},Og={getTemplate(e){const{worksheet:t,currentSheet:s,config:i}=e,{margins:r={},pageSetup:a,headerFooterConfig:n,suppressColumnOutline:o,rightToLeft:l,frozenRowCount:c,frozenColumnCount:d}=i,{table:h}=t,{rows:u,columns:p}=h,g=p&&p.length?mg(u,p,!!o):[],m=we.get(s),{children:f}=[kg(),Lg(l,d,c),Gg(u),xg(p),Mg(u,s+1),Tg(g),Fg(r),Pg(a),Ag(n),Eg(s),Ig(s),Rg(m)].reduce((C,v)=>v(C),{children:[],rIdCounter:0});return{name:"worksheet",properties:{prefixedAttributes:[{prefix:"xmlns:",map:{r:"http://schemas.openxmlformats.org/officeDocument/2006/relationships"}}],rawMap:{xmlns:"http://schemas.openxmlformats.org/spreadsheetml/2006/main"}},children:f}}},Ng=Og,Ye=new Map,be=[],Xe=new Map,qe=new Map,ke=new Map,dt=new Map,Lt=new Map,we=new Map,Bg="AG-GRID-TABLE",Ni="SINGLE_SHEET";function _g(){return Ni}function Vg(e){Ni=e}function Hg(e,t,s){$g(t),wp(e,be.length);const i=Object.assign({},s);return s.exportAsExcelTable&&(s.colModel.isPivotActive()&&(en("pivot mode"),i.exportAsExcelTable=!1),s.gos.get("masterDetail")&&(en("master/detail"),i.exportAsExcelTable=!1)),Kg(t,i),lm(t,i)}function en(e){Ii(163,{featureName:e})}function zg(e){return e.replace(/^[^a-zA-Z_]+/,"_").replace(/\s/g,"_").replace(/[^a-zA-Z0-9_]/g,"_")}function Ug(e,t){if(we.has(e)){Ii(164);return}we.set(e,t)}function Kg(e,t){const{exportAsExcelTable:s,prependContent:i,appendContent:r,colModel:a}=t;if(!s)return;const n=typeof s=="boolean"?{}:s,{name:o,showColumnStripes:l,showRowStripes:c,showFilterButton:d,highlightFirstColumn:h,highlightLastColumn:u}=n,p=zg(o||Bg),g=be.length-1,{table:m}=e,{rows:f,columns:C}=m,v=ou(a),y=i?i.length:0,S=r?r.length:0,b=f.length,w=C.length,F=[],T=[];for(let P=0;P<w;P++){const A=C[P];F.push(A.displayName||""),T.push(d==="match"||d===void 0?A.filterAllowed??!1:d)}if(!F||!F.length||!b||!p){Ii(165);return}Ug(g,{name:`table${we.size+1}`,displayName:p,columns:F,showFilterButtons:T,rowRange:[v+y,v+(b-v)-S],showRowStripes:c??!0,showColumnStripes:l??!1,highlightFirstColumn:h??!1,highlightLastColumn:u??!1})}function Wg(e,t){const s=be.length-1,i=e;i.headerFooterPosition=t,tn({imageToAdd:i,idx:s});let r=ke.get(s);r||(r=[],ke.set(s,r)),r.find(a=>a.id===e.id)||r.push(e)}function jg(e,t,s,i,r){const a=be.length,{row:n,column:o}=e.position||{},l=e;i&&(t!=null&&s!=null&&(!n||!o)&&(e.position||(e.position={}),e.position=Object.assign({},e.position,{row:t,column:i.indexOf(s)+1})),su(l,i),iu(l,r)),tn({imageToAdd:l,idx:a});let c=Lt.get(a);c||(c=new Map,Lt.set(a,c));const d=qe.get(a);d?d.push(l):qe.set(a,[l]),c.get(e.id)||c.set(e.id,{index:c.size,type:e.imageType})}function tn(e){const{imageToAdd:t,idx:s}=e,i=Xe.get(t.id);if(i){const r=i.find(a=>a.sheetId===s);r?r.image.push(t):i.push({sheetId:s,image:[t]})}else Xe.set(t.id,[{sheetId:s,image:[t]}]),dt.set(t.id,{type:t.imageType,index:dt.size})}function $g(e){const t=nu(e.name)||"";let s="";for(;be.indexOf(`${t}${s}`)!==-1;)s===""?s="_1":s=`_${parseInt(s.slice(1),10)+1}`;e.name=`${t}${s}`,be.push(e.name)}function sn(e){return Ye.has(e)?Ye.get(e):(Ye.set(e,Ye.size),Ye.size-1)}function rn(){Ye.clear(),Xe.clear(),qe.clear(),ke.clear(),dt.clear(),Lt.clear(),we.clear(),be=[],Ni="SINGLE_SHEET"}function Yg(e){return ie(tg.getTemplate(be,e))}function Xg(e){return ie(xp.getTemplate(e))}function qg(){return ie(Pu.getTemplate(Ye))}function Zg(e){return ie(pu.getTemplate(e))}function Jg(e){return ie(hu.getTemplate(e))}function Qg(){const e=At.getTemplate([{Id:"rId1",Type:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/officeDocument",Target:"xl/workbook.xml"},{Id:"rId2",Type:"http://schemas.openxmlformats.org/package/2006/relationships/metadata/core-properties",Target:"docProps/core.xml"}]);return ie(e)}function em(){return ie(_p.getTemplate())}function tm(e,t){return ie(Tp.getTemplate(e,t))}function sm(e){const t=new Array(e).fill(void 0).map((i,r)=>({Id:`rId${r+1}`,Type:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/worksheet",Target:`worksheets/sheet${r+1}.xml`})),s=At.getTemplate([...t,{Id:`rId${e+1}`,Type:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/theme",Target:"theme/theme1.xml"},{Id:`rId${e+2}`,Type:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/styles",Target:"styles.xml"},{Id:`rId${e+3}`,Type:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/sharedStrings",Target:"sharedStrings.xml"}]);return ie(s)}function im(e){return ie(wu.getTemplate({sheetIndex:e}))}function rm(e){const t=Lt.get(e)||[],s=[];for(const[i,r]of t){const{index:a,type:n}=r;s.push({Id:`rId${a+1}`,Type:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/image",Target:`../media/image${dt.get(i).index+1}.${ws(n)}`})}return ie(At.getTemplate(s))}function am(e){return ie(Xp.getTemplate({sheetIndex:e}),!0)}function nm(e){const t=ke.get(e)||[],s=[];for(let i=0;i<t.length;i++){const r=t[i],a=dt.get(r.id);if(!a)continue;const{index:n,type:o}=a;s.push({Id:`rId${i+1}`,Type:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/image",Target:`../media/image${n+1}.${ws(o)}`})}return ie(At.getTemplate(s))}function om({drawingIndex:e,vmlDrawingIndex:t,tableName:s}={}){if(e===void 0&&t===void 0&&s===void 0)return"";const i=[];e!=null&&i.push({Id:`rId${i.length+1}`,Type:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/drawing",Target:`../drawings/drawing${e+1}.xml`}),t!=null&&i.push({Id:`rId${i.length+1}`,Type:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/vmlDrawing",Target:`../drawings/vmlDrawing${t+1}.vml`}),s!=null&&i.push({Id:`rId${i.length+1}`,Type:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/table",Target:`../tables/${s}.xml`});const r=At.getTemplate(i);return ie(r)}function lm(e,t){return ie(Ng.getTemplate({worksheet:e,currentSheet:be.length-1,config:t}))}var cm=class extends $h{constructor(e){super(e),this.mixedStyles={},this.mixedStyleCounter=0,this.rows=[],this.frozenRowCount=0,this.skipFrozenRows=!1,this.frozenColumnCount=0,this.skipFrozenColumns=!1,this.config=Object.assign({},e),this.stylesByIds={},this.config.baseExcelStyles.forEach(t=>{this.stylesByIds[t.id]=t}),this.excelStyles=[...this.config.baseExcelStyles,{id:"_quotePrefix",quotePrefix:1}]}addCustomContent(e){e.forEach(t=>{const s=this.rows.length+1;let i;!this.config.suppressRowOutline&&t.outlineLevel!=null&&(i=t.outlineLevel);const r={height:bs(s,t.height||this.config.rowHeight),cells:(t.cells||[]).map((a,n)=>{const o=this.addImage(s,this.columnsToExport[n],a.data?.value);let l=null;a.styleId&&(l=typeof a.styleId=="string"?[a.styleId]:a.styleId);const c=this.getStyleId(l);if(o)return this.createCell(c,this.getDataTypeForValue(o.value),o.value==null?"":o.value);const d=a.data?.value??"",h=this.getDataTypeForValue(d);return a.mergeAcross?this.createMergedCell(c,h,d,a.mergeAcross):this.createCell(c,h,d)}),outlineLevel:i};t.collapsed!=null&&(r.collapsed=t.collapsed),t.hidden!=null&&(r.hidden=t.hidden),this.rows.push(r)})}onNewHeaderGroupingRow(){const e=[],{freezeRows:t,headerRowHeight:s}=this.config;return this.rows.push({cells:e,height:bs(this.rows.length+1,s)}),t&&this.frozenRowCount++,{onColumn:(i,r,a,n,o)=>{const l=this.config.styleLinker({rowType:"HEADER_GROUPING",rowIndex:1,value:`grouping-${r}`,columnGroup:i});e.push({...this.createMergedCell(this.getStyleId(l),this.getDataTypeForValue("string"),r,n),collapsibleRanges:o})}}}onNewHeaderRow(){const{freezeRows:e,headerRowHeight:t}=this.config;return e&&this.frozenRowCount++,this.onNewRow(this.onNewHeaderColumn,t)}onNewBodyRow(e){const{freezeRows:t,rowHeight:s}=this.config;this.skipFrozenRows||(t==="headersAndPinnedRows"&&e?.rowPinned==="top"?this.frozenRowCount++:typeof t=="function"?t(Ri(this.gos,{node:e}))?this.frozenRowCount++:this.skipFrozenRows=!0:this.skipFrozenRows=!0);const i=this.onNewRow(this.onNewBodyColumn,s);return e&&this.addRowOutlineIfNecessary(e),i}prepare(e){super.prepare(e),this.columnsToExport=[...e],this.cols=e.map((t,s)=>this.convertColumnToExcel(t,s))}parse(){const e=this.rows.reduce((r,a)=>Math.max(r,a.cells.length),0);for(;this.cols.length<e;)this.cols.push(this.convertColumnToExcel(null,this.cols.length+1));const{config:t}=this;let s;if(t.sheetName!=null){const{sheetName:r}=t,a=typeof r=="function"?r(Ri(this.gos,{})):r;s=String(a).substring(0,31)}else s="ag-grid";const i={name:s,table:{columns:this.cols,rows:this.rows}};return this.createExcel(i)}addRowOutlineIfNecessary(e){const{gos:t,suppressRowOutline:s,rowGroupExpandState:i="expanded"}=this.config;if(t.get("groupHideOpenParents")||s||e.level==null)return;const a=e.footer?1:0,n=Yh(this.rows),o=Math.min(e.level+a,7);if(n.outlineLevel=o,i==="expanded")return;const l=i==="collapsed";if(e.isExpandable()){const c=!l&&e.expanded;n.collapsed=!c}n.hidden=!!e.parent&&e.parent.level!==-1&&(l||this.isAnyParentCollapsed(e.parent))}isAnyParentCollapsed(e){for(;e&&e.level!==-1;){if(!e.expanded)return!0;e=e.parent}return!1}convertColumnToExcel(e,t){const s=this.config.columnWidth,r=(e?this.extractHeaderValue(e):void 0)??"",a=e?e.isFilterAllowed():!1;return s?typeof s=="number"?{width:s,displayName:r,filterAllowed:a}:{width:s({column:e,index:t}),displayName:r,filterAllowed:a}:e?{width:Math.max(e.getActualWidth(),75),displayName:r,filterAllowed:a}:{displayName:r,filterAllowed:a}}onNewHeaderColumn(e,t){return s=>{const i=this.extractHeaderValue(s),r=this.config.styleLinker({rowType:"HEADER",rowIndex:e,value:i,column:s});t.push(this.createCell(this.getStyleId(r),this.getDataTypeForValue("string"),i))}}onNewBodyColumn(e,t){let s=0;const{freezeColumns:i,rightToLeft:r}=this.config;return(a,n,o)=>{if(s>0){s-=1;return}if(!this.skipFrozenColumns){const g=a.getPinned();i==="pinned"&&g&&(g===!0||g==="left")!==r?this.frozenColumnCount++:typeof i=="function"&&i(Ri(this.gos,{column:a}))?this.frozenColumnCount++:this.skipFrozenColumns=!0}const{value:l,valueFormatted:c}=this.extractRowCellValue(a,n,e,"excel",o),d=this.config.styleLinker({rowType:"BODY",rowIndex:e,value:l,column:a,node:o}),h=this.getStyleId(d),u=a.getColSpan(o),p=this.addImage(e,a,l);p?t.push(this.createCell(h,this.getDataTypeForValue(p.value),p.value==null?"":p.value)):u>1?(s=u-1,t.push(this.createMergedCell(h,this.getDataTypeForValue(l),l,u-1))):t.push(this.createCell(h,this.getDataTypeForValue(l),l,c))}}onNewRow(e,t){const s=[];return this.rows.push({cells:s,height:bs(this.rows.length+1,t)}),{onColumn:e.bind(this,this.rows.length,s)()}}createExcel(e){const{excelStyles:t,config:s}=this;return this.frozenColumnCount&&(s.frozenColumnCount=this.frozenColumnCount),this.frozenRowCount&&(s.frozenRowCount=this.frozenRowCount),Hg(t,e,s)}getDataTypeForValue(e){return e===void 0?"empty":this.isNumerical(e)?"n":"s"}getTypeFromStyle(e,t){if(this.isFormula(t))return"f";if(e&&e.dataType)switch(e.dataType.toLocaleLowerCase()){case"formula":return"f";case"string":return"s";case"number":return"n";case"datetime":return"d";case"error":return"e";case"boolean":return"b";default:qh(162,{id:e.id,dataType:e.dataType})}return null}addImage(e,t,s){if(!this.config.addImageToCell)return;const i=this.config.addImageToCell(e,t,s);if(i)return jg(i.image,e,t,this.columnsToExport,this.config.rowHeight),i}createCell(e,t,s,i){const r=this.getStyleById(e);!r?.dataType&&t==="s"&&i!=null&&(s=i);const a=this.getTypeFromStyle(r,s)||t,{value:n,escaped:o}=this.getCellValue(a,s),l=[];return r&&l.push(e),o&&l.push("_quotePrefix"),e=this.getStyleId(l)||void 0,{styleId:e,data:{type:a,value:n}}}createMergedCell(e,t,s,i){const r=s??"";return{styleId:this.getStyleById(e)?e:void 0,data:{type:t,value:t==="s"?sn(r).toString():s},mergeAcross:i}}getCellValue(e,t){let s=!1;if(t==null||e==="s"&&t==="")return{value:"",escaped:!1};if(e==="s")t&&t[0]==="'"&&(s=!0,t=t.slice(1)),t=sn(t).toString();else if(e==="f")t=t.slice(1);else if(e==="n"){const i=Number(t);isNaN(i)?t="":t!==""&&(t=i.toString())}return{value:t,escaped:s}}getStyleId(e){if(!e||!e.length)return null;if(e.length===1)return e[0];const t=e.join("-");return this.mixedStyles[t]||this.addNewMixedStyle(e),this.mixedStyles[t].excelID}deepCloneObject(e){return JSON.parse(JSON.stringify(e))}addNewMixedStyle(e){this.mixedStyleCounter+=1;const t=`mixedStyle${this.mixedStyleCounter}`,s={};for(const r of e)for(const a of this.excelStyles)a.id===r&&Xh(s,this.deepCloneObject(a));s.id=t;const i=e.join("-");this.mixedStyles[i]={excelID:t,key:i,result:s},this.excelStyles.push(s),this.stylesByIds[t]=s}isFormula(e){return e==null?!1:this.config.autoConvertFormulas&&e.toString().startsWith("=")}isNumerical(e){return typeof e=="bigint"?!0:isFinite(e)&&e!==""&&!isNaN(parseFloat(e))}getStyleById(e){return e==null?null:this.stylesByIds[e]||null}};import{_errMsg as dm}from"ag-grid-community";var hm=async e=>{let t=0;const s=[],i=new WritableStream({write:n=>{s.push(n),t+=n.length}}),r=new ReadableStream({start:n=>{const o=new FileReader;o.onload=l=>{l.target?.result&&n.enqueue(l.target.result),n.close()},o.readAsArrayBuffer(e)}}),a=new window.CompressionStream("deflate-raw");return await r.pipeThrough(a).pipeTo(i),{size:t,content:new Blob(s)}},um=async e=>{const t=new Blob([e]),{size:s,content:i}=await hm(t),r=new Uint8Array(await i.arrayBuffer());return{size:s,content:r}},pm=e=>{let t=e.getHours();return t<<=6,t=t|e.getMinutes(),t<<=5,t=t|e.getSeconds()/2,t},gm=e=>{let t=e.getFullYear()-1980;return t<<=4,t=t|e.getMonth()+1,t<<=5,t=t|e.getDate(),t};function q(e,t){let s="";for(let i=0;i<t;i++)s+=String.fromCharCode(e&255),e>>>=8;return s}var an=e=>{if(!e.length)return 0;let t=-1,s=0,i=0,r=0;for(let a=0;a<e.length;a++)s=e[a],i=(t^s)&255,r=mm[i],t=t>>>8^r;return t^-1},nn=e=>e.length?an(typeof e=="string"?new TextEncoder().encode(e):e):0,mm=new Uint32Array([0,1996959894,3993919788,2567524794,124634137,1886057615,3915621685,2657392035,249268274,2044508324,3772115230,2547177864,162941995,2125561021,3887607047,2428444049,498536548,1789927666,4089016648,2227061214,450548861,1843258603,4107580753,2211677639,325883990,1684777152,4251122042,2321926636,335633487,1661365465,4195302755,2366115317,997073096,1281953886,3579855332,2724688242,1006888145,1258607687,3524101629,2768942443,901097722,1119000684,3686517206,2898065728,853044451,1172266101,3705015759,2882616665,651767980,1373503546,3369554304,3218104598,565507253,1454621731,3485111705,3099436303,671266974,1594198024,3322730930,2970347812,795835527,1483230225,3244367275,3060149565,1994146192,31158534,2563907772,4023717930,1907459465,112637215,2680153253,3904427059,2013776290,251722036,2517215374,3775830040,2137656763,141376813,2439277719,3865271297,1802195444,476864866,2238001368,4066508878,1812370925,453092731,2181625025,4111451223,1706088902,314042704,2344532202,4240017532,1658658271,366619977,2362670323,4224994405,1303535960,984961486,2747007092,3569037538,1256170817,1037604311,2765210733,3554079995,1131014506,879679996,2909243462,3663771856,1141124467,855842277,2852801631,3708648649,1342533948,654459306,3188396048,3373015174,1466479909,544179635,3110523913,3462522015,1591671054,702138776,2966460450,3352799412,1504918807,783551873,3082640443,3233442989,3988292384,2596254646,62317068,1957810842,3939845945,2647816111,81470997,1943803523,3814918930,2489596804,225274430,2053790376,3826175755,2466906013,167816743,2097651377,4027552580,2265490386,503444072,1762050814,4150417245,2154129355,426522225,1852507879,4275313526,2312317920,282753626,1742555852,4189708143,2394877945,397917763,1622183637,3604390888,2714866558,953729732,1340076626,3518719985,2797360999,1068828381,1219638859,3624741850,2936675148,906185462,1090812512,3747672003,2825379669,829329135,1181335161,3412177804,3160834842,628085408,1382605366,3423369109,3138078467,570562233,1426400815,3317316542,2998733608,733239954,1555261956,3268935591,3050360625,752459403,1541320221,2607071920,3965973030,1969922972,40735498,2617837225,3943577151,1913087877,83908371,2512341634,3803740692,2075208622,213261112,2463272603,3855990285,2094854071,198958881,2262029012,4057260610,1759359992,534414190,2176718541,4139329115,1873836001,414664567,2282248934,4279200368,1711684554,285281116,2405801727,4167216745,1634467795,376229701,2685067896,3608007406,1308918612,956543938,2808555105,3495958263,1231636301,1047427035,2932959818,3654703836,1088359270,936918e3,2847714899,3736837829,1202900863,817233897,3183342108,3401237130,1404277552,615818150,3134207493,3453421203,1423857449,601450431,3009837614,3294710456,1567103746,711928724,3020668471,3272380065,1510334235,755167117]);function fm(e){const t=String.fromCharCode;function s(h){const u=[];if(!h)return[];const p=h.length;let g=0,m,f;for(;g<p;)m=h.charCodeAt(g++),m>=55296&&m<=56319&&g<p?(f=h.charCodeAt(g++),(f&64512)==56320?u.push(((m&1023)<<10)+(f&1023)+65536):(u.push(m),g--)):u.push(m);return u}function i(h){if(h>=55296&&h<=57343)throw Error(dm(255,{point:h}))}function r(h,u){return t(h>>u&63|128)}function a(h){if(!(h&4294967168))return t(h);let u="";return h&4294965248?h&4294901760?h&4292870144||(u=t(h>>18&7|240),u+=r(h,12),u+=r(h,6)):(i(h),u=t(h>>12&15|224),u+=r(h,6)):u=t(h>>6&31|192),u+=t(h&63|128),u}const n=s(e),o=n.length;let l=-1,c,d="";for(;++l<o;)c=n[l],d+=a(c);return d}var on=(e,t,s,i,r,a)=>{const{content:n,path:o,created:l}=e,c=pm(l),d=gm(l),h=nn(r),u=a!==void 0?a:i,p=fm(o),g=p!==o;let m="";if(g){const y=q(1,1)+q(nn(p),4)+p;m="up"+q(y.length,2)+y}const f="\0"+(g?"\0\b":"\0\0")+q(t?8:0,2)+q(c,2)+q(d,2)+q(u?h:0,4)+q(a??i,4)+q(i,4)+q(p.length,2)+q(m.length,2),C="PK"+f+p+m,v="PK\0"+f+"\0\0\0\0\0\0"+(n?"\0\0\0\0":"\0\0\0")+q(s,4)+p+m;return{localFileHeader:Uint8Array.from(C,y=>y.charCodeAt(0)),centralDirectoryHeader:Uint8Array.from(v,y=>y.charCodeAt(0))}},ln=e=>{let t;if(typeof e=="string"){const s=atob(e.split(";base64,")[1]);t=Uint8Array.from(s,i=>i.charCodeAt(0))}else t=e;return{size:t.length,content:t}},Cm=async(e,t)=>{const{content:s}=e,{size:i,content:r}=s?ln(s):{size:0,content:Uint8Array.from([])};let a,n,o=!1;if(e.type==="file"&&r&&i>0){const d=await um(r);a=d.content,n=d.size,o=!0}return{...on(e,o,t,i,r,n),content:a||r,isCompressed:o}},vm=(e,t)=>{const{content:s}=e,{content:i}=s?ln(s):{content:Uint8Array.from([])};return{...on(e,!1,t,i.length,i,void 0),content:i,isCompressed:!1}},ym=(e,t,s)=>{const i="PK\0\0\0\0"+q(e,2)+q(e,2)+q(t,4)+q(s,4)+"\0\0";return Uint8Array.from(i,r=>r.charCodeAt(0))},cn=class{constructor(){this.folders=[],this.files=[]}addFolders(e){e.forEach(this.addFolder.bind(this))}addFolder(e){this.folders.push({path:e,created:new Date,isBase64:!1,type:"folder"})}addFile(e,t,s=!1){this.files.push({path:e,created:new Date,content:s?t:new TextEncoder().encode(t),isBase64:s,type:"file"})}async getZipFile(e="application/zip"){const t=await this.buildCompressedFileStream();return this.clearStream(),new Blob([t],{type:e})}getUncompressedZipFile(e="application/zip"){const t=this.buildFileStream();return this.clearStream(),new Blob([t],{type:e})}clearStream(){this.folders=[],this.files=[]}packageFiles(e){let t=0,s=0;for(const c of e){const{localFileHeader:d,centralDirectoryHeader:h,content:u}=c;t+=d.length+u.length,s+=h.length}const i=new Uint8Array(t),r=new Uint8Array(s);let a=0,n=0;for(const c of e){const{localFileHeader:d,centralDirectoryHeader:h,content:u}=c;i.set(d,a),a+=d.length,i.set(u,a),a+=u.length,r.set(h,n),n+=h.length}const o=ym(e.length,s,t),l=new Uint8Array(i.length+r.length+o.length);return l.set(i),l.set(r,i.length),l.set(o,i.length+r.length),l}async buildCompressedFileStream(){const e=[...this.folders,...this.files],t=[];let s=0;for(const i of e){const r=await Cm(i,s),{localFileHeader:a,content:n}=r;t.push(r),s+=a.length+n.length}return this.packageFiles(t)}buildFileStream(){const e=[...this.folders,...this.files],t=[];let s=0;for(const i of e){const r=vm(i,s),{localFileHeader:a,content:n}=r;t.push(r),s+=a.length+n.length}return this.packageFiles(t)}},Sm=e=>{if(e.addFolders(["_rels/","docProps/","xl/","xl/theme/","xl/_rels/","xl/worksheets/"]),!Xe.size)return;e.addFolders(["xl/worksheets/_rels","xl/drawings/","xl/drawings/_rels","xl/media/"]);let t=0;Xe.forEach(s=>{const i=s[0].image[0],{base64:r,imageType:a}=i;e.addFile(`xl/media/image${++t}.${ws(a)}`,r,!0)})},bm=(e,t)=>{let s=0,i=0;for(let r=0;r<t.length;r++){const a=t[r];e.addFile(`xl/worksheets/sheet${r+1}.xml`,a,!1);const n=Xe.size>0&&qe.has(r),o=we.size>0&&we.get(r),l=Xe.size&&ke.has(r);if(!n&&!o&&!l)continue;let c,d,h;n&&(wm(e,r,s),d=s,s++),l&&(xm(e,r,i),h=i,i++),o&&(c=o.name);const u=`xl/worksheets/_rels/sheet${r+1}.xml.rels`;e.addFile(u,om({tableName:c,drawingIndex:d,vmlDrawingIndex:h}))}},wm=(e,t,s)=>{const i="xl/drawings",r=`${i}/drawing${s+1}.xml`,a=`${i}/_rels/drawing${s+1}.xml.rels`;e.addFile(a,rm(t)),e.addFile(r,im(t))},xm=(e,t,s)=>{const i="xl/drawings",r=`${i}/vmlDrawing${s+1}.vml`,a=`${i}/_rels/vmlDrawing${s+1}.vml.rels`;e.addFile(r,am(t)),e.addFile(a,nm(t))},Mm=e=>{const t=we,s=Array.from(t.keys());for(let i=0;i<s.length;i++){const r=s[i],a=t.get(r);a&&e.addFile(`xl/tables/${a.name}.xml`,tm(a,i))}},Tm=(e,t,s,i,r)=>{e.addFile("xl/workbook.xml",Yg(r)),e.addFile("xl/styles.xml",Xg(t)),e.addFile("xl/sharedStrings.xml",qg()),e.addFile("xl/theme/theme1.xml",em()),e.addFile("xl/_rels/workbook.xml.rels",sm(i)),e.addFile("docProps/core.xml",Zg(s)),e.addFile("[Content_Types].xml",Jg(i)),e.addFile("_rels/.rels",Qg())},dn=(e,t,s={})=>{if(!t||t.length===0)return Va(159),rn(),!1;const{fontSize:i=11,author:r="AG Grid",activeTab:a=0}=s,n=t.length,o=Math.max(Math.min(a,n-1),0);return Sm(e),Mm(e),bm(e,t),Tm(e,i,r,n,o),rn(),!0},hn=e=>{const{data:t,fontSize:s,author:i,activeSheetIndex:r}=e,a=e.mimeType||"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",n=new cn;return dn(n,t,{author:i,fontSize:s,activeTab:r})?n.getZipFile(a):Promise.resolve(void 0)},Bi=e=>{const{data:t,fontSize:s,author:i,activeSheetIndex:r}=e,a=e.mimeType||"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",n=new cn;if(dn(n,t,{author:i,fontSize:s,activeTab:r}))return n.getUncompressedZipFile(a)},un=e=>{const{fileName:t="export.xlsx"}=e;hn(e).then(s=>{if(s){const i=typeof t=="function"?t():t;_a(i,s)}})},Fm=class extends Wh{constructor(){super(...arguments),this.beanName="excelCreator"}getMergedParams(e){const t=this.gos.get("defaultExcelExportParams");return Object.assign({},t,e)}export(e){if(this.isExportSuppressed()){Va(160);return}const t=this.getMergedParams(e),i={data:[this.getData(t)],fontSize:t.fontSize,author:t.author,mimeType:t.mimeType};this.packageCompressedFile(i).then(r=>{if(r){const{fileName:a}=t,n=typeof a=="function"?a(Ba(this.gos,{})):a;_a(this.getFileName(n),r)}})}exportDataAsExcel(e){this.export(e)}getDataAsExcel(e){const t=this.getMergedParams(e),i={data:[this.getData(t)],fontSize:t.fontSize,author:t.author,mimeType:t.mimeType};return this.packageFile(i)}setFactoryMode(e){Vg(e)}getFactoryMode(){return _g()}getSheetDataForExcel(e){const t=this.getMergedParams(e);return this.getData(t)}getMultipleSheetsAsExcel(e){return Bi(e)}exportMultipleSheetsAsExcel(e){un(e)}getDefaultFileExtension(){return"xlsx"}createSerializingSession(e){const{colModel:t,colNames:s,rowGroupColsSvc:i,valueSvc:r,gos:a}=this.beans,n={...e,colModel:t,colNames:s,rowGroupColsSvc:i,valueSvc:r,gos:a,suppressRowOutline:e.suppressRowOutline||e.skipRowGroups,headerRowHeight:e.headerRowHeight||e.rowHeight,baseExcelStyles:a.get("excelStyles")||[],rightToLeft:e.rightToLeft??a.get("enableRtl"),styleLinker:this.styleLinker.bind(this)};return new cm(n)}styleLinker(e){const{rowType:t,rowIndex:s,value:i,column:r,columnGroup:a,node:n}=e,o=t==="HEADER",l=t==="HEADER_GROUPING",c=o?r:a;let d=[];const{gos:h,cellStyles:u}=this.beans;if(o||l)return d.push("header"),l&&d.push("headerGroup"),c&&(d=d.concat(jh(c.getDefinition(),h,r||null,a||null))),d;const p=h.get("excelStyles"),g=["cell"];if(!p||!p.length)return g;const m=p.map(C=>C.id),f=r.getDefinition();return u?.processAllCellClasses(f,Ba(h,{value:i,data:n.data,node:n,colDef:f,column:r,rowIndex:s}),C=>{m.indexOf(C)>-1&&g.push(C)}),g.sort((C,v)=>m.indexOf(C)<m.indexOf(v)?-1:1)}isExportSuppressed(){return this.gos.get("suppressExcelExport")}packageCompressedFile(e){return hn(e)}packageFile(e){return Bi(e)}};import{_FilterCoreModule as Pm,_FilterValueModule as Am,_PopupModule as Rm,_SharedDragAndDropModule as Em}from"ag-grid-community";var E="33.2.3",O={moduleName:"EnterpriseCore",version:E,beans:[Na],icons:{accordionOpen:"tree-open",accordionClosed:"tree-closed",accordionIndeterminate:"tree-indeterminate",close:"cross",cancel:"cancel",maximize:"maximize",minimize:"minimize",columnDrag:"grip"},dependsOn:[]},Im='.ag-advanced-filter-header{align-items:center;background-color:var(--ag-header-background-color);border-bottom:var(--ag-header-row-border);display:flex;padding-left:var(--ag-cell-horizontal-padding);padding-right:var(--ag-cell-horizontal-padding);position:relative}.ag-advanced-filter{align-items:center;display:flex;width:100%}.ag-advanced-filter-apply-button,.ag-advanced-filter-builder-button{line-height:normal;white-space:nowrap}:where(.ag-ltr) .ag-advanced-filter-apply-button,:where(.ag-ltr) .ag-advanced-filter-builder-button{margin-left:calc(var(--ag-spacing)*2)}:where(.ag-rtl) .ag-advanced-filter-apply-button,:where(.ag-rtl) .ag-advanced-filter-builder-button{margin-right:calc(var(--ag-spacing)*2)}.ag-advanced-filter-builder-button{align-items:center;background-color:unset;border:0;display:flex;font-size:var(--ag-font-size);font-weight:600;padding:var(--ag-spacing);&:where(:not(:disabled)){cursor:pointer;&:hover{background-color:var(--ag-row-hover-color)}}}:where(.ag-ltr) .ag-advanced-filter-builder-button-label{margin-left:var(--ag-spacing)}:where(.ag-rtl) .ag-advanced-filter-builder-button-label{margin-right:var(--ag-spacing)}.ag-advanced-filter-builder{display:flex;flex-direction:column;-webkit-user-select:none;-moz-user-select:none;user-select:none;width:100%}.ag-advanced-filter-builder-list{flex:1;overflow:auto}.ag-advanced-filter-builder-button-panel{border-top:var(--ag-advanced-filter-builder-button-bar-border);display:flex;justify-content:flex-end;padding:var(--ag-widget-container-vertical-padding) var(--ag-widget-container-horizontal-padding)}:where(.ag-ltr) .ag-advanced-filter-builder-apply-button,:where(.ag-ltr) .ag-advanced-filter-builder-cancel-button{margin-left:calc(var(--ag-spacing)*2)}:where(.ag-rtl) .ag-advanced-filter-builder-apply-button,:where(.ag-rtl) .ag-advanced-filter-builder-cancel-button{margin-right:calc(var(--ag-spacing)*2)}.ag-advanced-filter-builder-item-wrapper{align-items:center;display:flex;flex:1 1 auto;justify-content:space-between;overflow:hidden}:where(.ag-ltr) .ag-advanced-filter-builder-item-wrapper{padding-left:calc(var(--ag-icon-size)/2);padding-right:var(--ag-icon-size)}:where(.ag-rtl) .ag-advanced-filter-builder-item-wrapper{padding-left:var(--ag-icon-size);padding-right:calc(var(--ag-icon-size)/2)}:where(.ag-virtual-list-viewport .ag-advanced-filter-builder-item-wrapper) .ag-tab-guard{position:absolute}.ag-advanced-filter-builder-item-tree-lines>*{width:var(--ag-advanced-filter-builder-indent-size)}.ag-advanced-filter-builder-item-tree-line-root{width:var(--ag-icon-size);&:before{height:50%;top:50%}}.ag-advanced-filter-builder-item-tree-line-horizontal,.ag-advanced-filter-builder-item-tree-line-vertical,.ag-advanced-filter-builder-item-tree-line-vertical-bottom,.ag-advanced-filter-builder-item-tree-line-vertical-top{align-items:center;display:flex;height:100%;position:relative;&:after,&:before{content:"";height:100%;position:absolute}}.ag-advanced-filter-builder-item-tree-line-horizontal:after{border-bottom:1px solid var(--ag-border-color);height:50%;top:0;width:calc(var(--ag-advanced-filter-builder-indent-size) - var(--ag-icon-size))}:where(.ag-ltr) .ag-advanced-filter-builder-item-tree-line-horizontal:after{left:calc(var(--ag-icon-size)/2)}:where(.ag-rtl) .ag-advanced-filter-builder-item-tree-line-horizontal:after{right:calc(var(--ag-icon-size)/2)}.ag-advanced-filter-builder-item-tree-line-vertical:before{top:0;width:calc(var(--ag-advanced-filter-builder-indent-size) - var(--ag-icon-size)/2)}:where(.ag-ltr) .ag-advanced-filter-builder-item-tree-line-vertical:before{border-left:1px solid var(--ag-border-color);left:calc(var(--ag-icon-size)/2)}:where(.ag-rtl) .ag-advanced-filter-builder-item-tree-line-vertical:before{border-right:1px solid var(--ag-border-color);right:calc(var(--ag-icon-size)/2)}.ag-advanced-filter-builder-item-tree-line-vertical-top:before{height:50%;top:0;width:calc(var(--ag-advanced-filter-builder-indent-size) - var(--ag-icon-size)/2)}:where(.ag-ltr) .ag-advanced-filter-builder-item-tree-line-vertical-top:before{border-left:1px solid var(--ag-border-color);left:calc(var(--ag-icon-size)/2)}:where(.ag-rtl) .ag-advanced-filter-builder-item-tree-line-vertical-top:before{border-right:1px solid var(--ag-border-color);right:calc(var(--ag-icon-size)/2)}.ag-advanced-filter-builder-item-tree-line-vertical-bottom:before{height:calc(50% - var(--ag-icon-size)*1.5/2);top:calc(50% + var(--ag-icon-size)*1.5/2);width:calc(var(--ag-icon-size)/2)}:where(.ag-ltr) .ag-advanced-filter-builder-item-tree-line-vertical-bottom:before{border-left:1px solid var(--ag-border-color);left:calc(var(--ag-icon-size)/2)}:where(.ag-rtl) .ag-advanced-filter-builder-item-tree-line-vertical-bottom:before{border-right:1px solid var(--ag-border-color);right:calc(var(--ag-icon-size)/2)}.ag-advanced-filter-builder-item-condition{padding-bottom:var(--ag-spacing);padding-top:var(--ag-spacing)}.ag-advanced-filter-builder-item,.ag-advanced-filter-builder-item-buttons,.ag-advanced-filter-builder-item-condition,.ag-advanced-filter-builder-item-tree-lines,.ag-advanced-filter-builder-pill,.ag-advanced-filter-builder-pill-wrapper{align-items:center;display:flex;height:100%}.ag-advanced-filter-builder-pill-wrapper{margin:0 var(--ag-spacing)}.ag-advanced-filter-builder-pill{border-radius:var(--ag-border-radius);min-height:calc(100% - var(--ag-spacing)*3);min-width:calc(var(--ag-spacing)*2);padding:var(--ag-spacing) calc(var(--ag-spacing)*2);position:relative}:where(.ag-advanced-filter-builder-pill){.ag-advanced-filter-builder-value-number{font-family:monospace;font-weight:700}.ag-advanced-filter-builder-value-empty{color:var(--ag-subtle-text-color)}}:where(.ag-ltr) :where(.ag-advanced-filter-builder-pill){.ag-picker-field-display{margin-right:var(--ag-spacing)}}:where(.ag-rtl) :where(.ag-advanced-filter-builder-pill){.ag-picker-field-display{margin-left:var(--ag-spacing)}}.ag-advanced-filter-builder-pill-display{font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ag-advanced-filter-builder-join-pill{background-color:var(--ag-advanced-filter-builder-join-pill-color);cursor:pointer}.ag-advanced-filter-builder-column-pill{background-color:var(--ag-advanced-filter-builder-column-pill-color);cursor:pointer}.ag-advanced-filter-builder-option-pill{background-color:var(--ag-advanced-filter-builder-option-pill-color);cursor:pointer}.ag-advanced-filter-builder-value-pill{background-color:var(--ag-advanced-filter-builder-value-pill-color);cursor:text;max-width:140px;:where(.ag-advanced-filter-builder-pill-display){display:block}}.ag-advanced-filter-builder-item-buttons>*{margin:0 calc(var(--ag-spacing)*.5)}.ag-advanced-filter-builder-item-button{color:var(--ag-subtle-text-color);cursor:pointer;position:relative}.ag-advanced-filter-builder-item-button,.ag-advanced-filter-builder-pill{&:focus-visible{box-shadow:var(--ag-focus-shadow)}}.ag-advanced-filter-builder-item-button-disabled{cursor:default;opacity:.5}.ag-advanced-filter-builder-virtual-list-container{top:var(--ag-spacing)}.ag-advanced-filter-builder-virtual-list-item{cursor:default;display:flex;height:var(--ag-list-item-height);&:hover{background-color:var(--ag-row-hover-color);:where(.ag-advanced-filter-builder-item-button){opacity:1}}}.ag-advanced-filter-builder-invalid{color:var(--ag-invalid-color);cursor:default;margin:0 var(--ag-spacing)}:where(.ag-advanced-filter-builder-validation) .ag-advanced-filter-builder-invalid,:where(.ag-advanced-filter-builder-virtual-list-item-highlight) .ag-advanced-filter-builder-item-button:focus-visible{opacity:1}';function Dm(e){return e.filterManager?.getAdvFilterModel()??null}function Lm(e,t){e.filterManager?.setAdvFilterModel(t)}function km(e){e.filterManager?.toggleAdvFilterBuilder(!0,"api")}function Gm(e){e.filterManager?.toggleAdvFilterBuilder(!1,"api")}import{BeanStub as Om,_exists as Nm,_parseDateTimeFromString as pn,_serialiseDate as gn,_toStringOrNull as _i}from"ag-grid-community";var Bm={ariaAdvancedFilterBuilderItem:e=>`${e[0]}. Level ${e[1]}. Press ENTER to edit`,ariaAdvancedFilterBuilderItemValidation:e=>`${e[0]}. Level ${e[1]}. ${e[2]} Press ENTER to edit`,ariaAdvancedFilterBuilderList:"Advanced Filter Builder List",ariaAdvancedFilterBuilderFilterItem:"Filter Condition",ariaAdvancedFilterBuilderGroupItem:"Filter Group",ariaAdvancedFilterBuilderColumn:"Column",ariaAdvancedFilterBuilderOption:"Option",ariaAdvancedFilterBuilderValue:"Value",ariaAdvancedFilterBuilderJoinOperator:"Join Operator",ariaAdvancedFilterInput:"Advanced Filter Input",ariaLabelAdvancedFilterAutocomplete:"Advanced Filter Autocomplete",advancedFilterContains:"contains",advancedFilterNotContains:"does not contain",advancedFilterTextEquals:"equals",advancedFilterTextNotEqual:"does not equal",advancedFilterStartsWith:"begins with",advancedFilterEndsWith:"ends with",advancedFilterBlank:"is blank",advancedFilterNotBlank:"is not blank",advancedFilterEquals:"=",advancedFilterNotEqual:"!=",advancedFilterGreaterThan:">",advancedFilterGreaterThanOrEqual:">=",advancedFilterLessThan:"<",advancedFilterLessThanOrEqual:"<=",advancedFilterTrue:"is true",advancedFilterFalse:"is false",advancedFilterAnd:"AND",advancedFilterOr:"OR",advancedFilterApply:"Apply",advancedFilterBuilder:"Builder",advancedFilterValidationMissingColumn:"Column is missing",advancedFilterValidationMissingOption:"Option is missing",advancedFilterValidationMissingValue:"Value is missing",advancedFilterValidationInvalidColumn:"Column not found",advancedFilterValidationInvalidOption:"Option not found",advancedFilterValidationMissingQuote:"Value is missing an end quote",advancedFilterValidationNotANumber:"Value is not a number",advancedFilterValidationInvalidDate:"Value is not a valid date",advancedFilterValidationMissingCondition:"Condition is missing",advancedFilterValidationJoinOperatorMismatch:"Join operators within a condition must be the same",advancedFilterValidationInvalidJoinOperator:"Join operator not found",advancedFilterValidationMissingEndBracket:"Missing end bracket",advancedFilterValidationExtraEndBracket:"Too many end brackets",advancedFilterValidationMessage:e=>`Expression has an error. ${e[0]} - ${e[1]}.`,advancedFilterValidationMessageAtEnd:e=>`Expression has an error. ${e[0]} at end of expression.`,advancedFilterBuilderTitle:"Advanced Filter",advancedFilterBuilderApply:"Apply",advancedFilterBuilderCancel:"Cancel",advancedFilterBuilderAddButtonTooltip:"Add Filter or Group",advancedFilterBuilderRemoveButtonTooltip:"Remove",advancedFilterBuilderMoveUpButtonTooltip:"Move Up",advancedFilterBuilderMoveDownButtonTooltip:"Move Down",advancedFilterBuilderAddJoin:"Add Group",advancedFilterBuilderAddCondition:"Add Filter",advancedFilterBuilderSelectColumn:"Select a column",advancedFilterBuilderSelectOption:"Select an option",advancedFilterBuilderEnterValue:"Enter a value...",advancedFilterBuilderValidationAlreadyApplied:"Current filter already applied.",advancedFilterBuilderValidationIncomplete:"Not all conditions are complete.",advancedFilterBuilderValidationSelectColumn:"Must select a column.",advancedFilterBuilderValidationSelectOption:"Must select an option.",advancedFilterBuilderValidationEnterValue:"Must enter a value."};function Vi(e,t,s){if(!e)return"";const i=s-t;return i?e.slice(0,e.length-i):e}function Ge(e,t,s,i,r,a,n){const o=s+(!e.length||n?0:1);let l=0;return r&&(e[o]===" "?l=1:(i+=" ",a&&(i+='"'))),{updatedValue:e.slice(0,t)+i+e.slice(o),updatedPosition:t+i.length+l}}function _m(e,t,s){let i=t;for(;i<s&&e[i]===" ";)i++;return i}function Hi(e,t,s,i){let r=t,a=!1;for(;r<e.length;){const n=e[r];if(n==="("){i&&e[r-1]===" "?a=!0:r=r-1;break}else if(n===" "||s&&n===")"){r=r-1;break}r++}return{endPosition:r,isEmpty:a}}function zi(e,t,s,i){s!==t&&(e.expression=Ge(e.expression,i-t.length+1,i,s).updatedValue)}function Vm(e){return e.replace(/(['"])/,"\\$1")}var Hm=class{constructor(e,t){this.params=e,this.startPosition=t,this.type="column",this.valid=!0,this.hasStartChar=!1,this.hasEndChar=!1,this.colName=""}parse(e,t){if(e===Ui&&!this.colName)this.hasStartChar=!0;else if(e===Ki&&this.hasStartChar){if(this.parseColumn(!1,t))return this.hasEndChar=!0,!1;this.colName+=e}else this.colName+=e}getDisplayValue(){return(this.hasStartChar?Ui:"")+this.colName+(this.hasEndChar?Ki:"")}getColId(){return this.colId}complete(e){this.parseColumn(!0,e)}getValidationError(){return this.valid?null:{message:this.params.advFilterExpSvc.translate("advancedFilterValidationInvalidColumn"),startPosition:this.startPosition,endPosition:this.endPosition??this.params.expression.length-1}}parseColumn(e,t){this.endPosition=t;const s=this.params.advFilterExpSvc.getColId(this.colName);return s&&this.hasStartChar&&(this.colId=s.colId,zi(this.params,this.colName,s.columnName,t-1),this.colName=s.columnName,this.column=this.params.colModel.getColDefCol(this.colId),this.column)?(this.baseCellDataType=this.params.dataTypeSvc?.getBaseDataType(this.column)??"text",!0):(e&&(this.valid=!1),this.baseCellDataType="text",!1)}},zm=class{constructor(e,t,s){this.params=e,this.startPosition=t,this.baseCellDataType=s,this.type="operator",this.valid=!0,this.expectedNumOperands=0,this.operator=""}parse(e,t){if(e===" "||e===")"){if(this.parseOperator(!1,t-1))return!0;this.operator+=e}else this.operator+=e}complete(e){this.parseOperator(!0,e)}getValidationError(){return this.valid?null:{message:this.params.advFilterExpSvc.translate("advancedFilterValidationInvalidOption"),startPosition:this.startPosition,endPosition:this.endPosition??this.params.expression.length-1}}getDisplayValue(){return this.operator}getOperatorKey(){return this.parsedOperator}parseOperator(e,t){const s=this.params.advFilterExpSvc.getDataTypeExpressionOperator(this.baseCellDataType),i=s.findOperator(this.operator);if(this.endPosition=t,i){this.parsedOperator=i;const a=s.operators[i];this.expectedNumOperands=a.numOperands;const n=a.displayValue;return zi(this.params,this.operator,n,t),this.operator=n,!0}return(e||!(i===null))&&(this.valid=!1),!1}},Um=class{constructor(e,t,s,i){this.params=e,this.startPosition=t,this.baseCellDataType=s,this.column=i,this.type="operand",this.valid=!0,this.operand="",this.validationMessage=null}parse(e,t){if(e===" ")if(this.quotes)this.operand+=e;else return this.parseOperand(!1,t),!0;else if(e===")"){if(this.baseCellDataType==="number"||!this.quotes)return this.parseOperand(!1,t-1),!0;this.operand+=e}else if(!this.operand&&!this.quotes&&(e==="'"||e==='"'))this.quotes=e;else{if(this.quotes&&e===this.quotes)return this.parseOperand(!1,t),!1;this.operand+=e}}complete(e){this.parseOperand(!0,e)}getValidationError(){return this.validationMessage?{message:this.validationMessage,startPosition:this.startPosition,endPosition:this.endPosition??this.params.expression.length-1}:null}getRawValue(){return this.operand}getModelValue(){return this.modelValue}parseOperand(e,t){const{advFilterExpSvc:s}=this.params;if(this.endPosition=t,this.modelValue=this.operand,e&&this.quotes)this.valid=!1,this.validationMessage=s.translate("advancedFilterValidationMissingQuote");else if(this.modelValue==="")this.valid=!1,this.validationMessage=s.translate("advancedFilterValidationMissingValue");else{const i=s.getOperandModelValue(this.operand,this.baseCellDataType,this.column);switch(i!=null&&(this.modelValue=i),this.baseCellDataType){case"number":(this.quotes||isNaN(this.modelValue))&&(this.valid=!1,this.validationMessage=s.translate("advancedFilterValidationNotANumber"));break;case"date":case"dateString":i==null&&(this.valid=!1,this.validationMessage=s.translate("advancedFilterValidationInvalidDate"));break}}}},Ui="[",Ki="]",Km=class{constructor(e,t){this.params=e,this.startPosition=t,this.isAwaiting=!0}parseExpression(){let e=this.startPosition;const{expression:t}=this.params;for(;e<t.length;){const s=t[e];if(!(s===" "&&this.isAwaiting)){if(this.isAwaiting=!1,!this.parser){let r;this.columnParser?this.operatorParser?(this.operandParser=new Um(this.params,e,this.columnParser.baseCellDataType,this.columnParser.column),r=this.operandParser):(this.operatorParser=new zm(this.params,e,this.columnParser.baseCellDataType),r=this.operatorParser):(this.columnParser=new Hm(this.params,e),r=this.columnParser),this.parser=r}const i=this.parser.parse(s,e);if(i!=null){if(this.isComplete())return this.returnEndPosition(i?e-1:e,!0);this.parser=void 0,this.isAwaiting=!0}}e++}return this.parser?.complete?.(e-1),this.returnEndPosition(e)}isValid(){return this.isComplete()&&this.columnParser.valid&&this.operatorParser.valid&&(!this.operandParser||this.operandParser.valid)}getValidationError(){const e=this.columnParser?.getValidationError()??this.operatorParser?.getValidationError()??this.operandParser?.getValidationError();if(e)return e;const t=this.params.expression.length;let s;return this.columnParser?this.operatorParser?this.operatorParser.expectedNumOperands&&!this.operandParser&&(s="advancedFilterValidationMissingValue"):s="advancedFilterValidationMissingOption":s="advancedFilterValidationMissingColumn",s?{message:this.params.advFilterExpSvc.translate(s),startPosition:t,endPosition:t}:null}getFunctionString(e){return this.getFunctionCommon(e,(t,s,i,r)=>{const a=Vm(i),n=t==null?"":`, params.operands[${t}]`;return`params.operators[${s}].evaluator(expressionProxy.getValue('${a}', node), node, params.evaluatorParams[${r}]${n})`})}getFunctionParsed(e){return this.getFunctionCommon(e,(t,s,i,r)=>(a,n,o)=>o.operators[s].evaluator(a.getValue(i,n),n,o.evaluatorParams[r],t==null?void 0:o.operands[t]))}getAutocompleteListParams(e){if(this.isColumnPosition(e))return this.getColumnAutocompleteListParams(e);if(this.isOperatorPosition(e))return this.getOperatorAutocompleteListParams(e);if(!this.isBeyondEndPosition(e))return{enabled:!1}}updateExpression(e,t,s){const{expression:i}=this.params;if(this.isColumnPosition(e))return Ge(this.params.expression,this.startPosition,this.columnParser?.getColId()?this.columnParser.endPosition:Hi(i,e).endPosition,this.params.advFilterExpSvc.getColumnValue(t),!0);if(this.isOperatorPosition(e)){const r=this.getBaseCellDataTypeFromOperatorAutocompleteType(s),a=this.hasOperand(r,t.key),n=a&&this.doesOperandNeedQuotes(r);let o;if(this.operatorParser?.startPosition!=null&&e<this.operatorParser.startPosition)o=Ge(i,e,e,t.displayValue??t.key,a,n);else{let l,c=!1;if(this.operatorParser?.getOperatorKey())l=this.operatorParser.endPosition;else{const{endPosition:d,isEmpty:h}=Hi(i,e,!0,!0);l=d,c=h}o=Ge(i,_m(i,this.columnParser.endPosition+1,l),l,t.displayValue??t.key,a,n,c)}return{...o,hideAutocomplete:!a}}return null}getModel(){const e=this.columnParser.getColId(),t={filterType:this.columnParser.baseCellDataType,colId:e,type:this.operatorParser.getOperatorKey()};return this.operatorParser.expectedNumOperands&&(t.filter=this.operandParser.getModelValue()),t}getFunctionCommon(e,t){const s=this.columnParser.getColId(),i=this.operatorParser?.getOperatorKey(),{operators:r,evaluatorParams:a,operands:n}=e,o=this.params.advFilterExpSvc.getExpressionOperator(this.columnParser.baseCellDataType,i),l=this.addToListAndGetIndex(r,o),c=this.params.advFilterExpSvc.getExpressionEvaluatorParams(s),d=this.addToListAndGetIndex(a,c),h=this.operatorParser?.expectedNumOperands===0?void 0:this.addToListAndGetIndex(n,this.getOperandValue());return t(h,l,s,d)}getOperandValue(){let e=this.operandParser.getRawValue();const{baseCellDataType:t,column:s}=this.columnParser;switch(t){case"number":e=Number(e);break;case"date":case"dateString":e=this.params.valueSvc.parseValue(s,null,e,void 0);break}if(t==="dateString"){const{dataTypeSvc:i}=this.params;return i?i.getDateParserFunction(s)(e):e}return e}isComplete(){return!!(this.operatorParser&&(!this.operatorParser.expectedNumOperands||this.operatorParser.expectedNumOperands&&this.operandParser))}isColumnPosition(e){return!this.columnParser||this.columnParser.endPosition==null||e<=this.columnParser.endPosition+1}isOperatorPosition(e){return!this.operatorParser||this.operatorParser.endPosition==null||e<=this.operatorParser.endPosition+1}isBeyondEndPosition(e){return this.isComplete()&&this.endPosition!=null&&e>this.endPosition+1&&this.endPosition+1<this.params.expression.length}returnEndPosition(e,t){return this.endPosition=t?e:e-1,e}getColumnAutocompleteListParams(e){return this.params.advFilterExpSvc.generateAutocompleteListParams(this.params.advFilterExpSvc.getColumnAutocompleteEntries(),"column",this.getColumnSearchString(e))}getColumnSearchString(e){const t=this.columnParser?.getDisplayValue()??"",s=Vi(t,e,this.columnParser?.endPosition==null?this.params.expression.length:this.columnParser.endPosition+1),i=this.columnParser?.hasStartChar&&s.length>0,r=this.columnParser?.hasEndChar&&s.length===t.length+2;return i?s.slice(1,r?-1:void 0):s}getOperatorAutocompleteListParams(e){const t=this.columnParser?.column;if(!t)return{enabled:!1};const s=this.columnParser.baseCellDataType,i=this.operatorParser?.startPosition!=null&&e<this.operatorParser.startPosition?"":Vi(this.operatorParser?.getDisplayValue()??"",e,this.operatorParser?.endPosition==null?this.params.expression.length:this.operatorParser.endPosition+1);return this.params.advFilterExpSvc.generateAutocompleteListParams(this.params.advFilterExpSvc.getOperatorAutocompleteEntries(t,s),`operator-${s}`,i)}getBaseCellDataTypeFromOperatorAutocompleteType(e){return e?.replace("operator-","")}hasOperand(e,t){return!e||!t||(this.params.advFilterExpSvc.getExpressionOperator(e,t)?.numOperands??0)>0}doesOperandNeedQuotes(e){return e!=="number"}addToListAndGetIndex(e,t){const s=e.length;return e.push(t),s}};function Ps(e,t,s){let i=!1;const r=e.toLocaleLowerCase(),a=r+" ",n=Object.keys(t).find(o=>{const l=t[o],c=s(l).toLocaleLowerCase();return c.startsWith(a)&&(i=!0),c===r});return n||(i?null:void 0)}function Wi(e,t){return(t??Object.keys(e)).map(i=>({key:i,displayValue:e[i].displayValue}))}var mn=class{constructor(e){this.params=e,this.initOperators()}getEntries(e){return Wi(this.operators,e)}findOperator(e){return Ps(e,this.operators,({displayValue:t})=>t)}initOperators(){const{translate:e}=this.params;this.operators={contains:{displayValue:e("advancedFilterContains"),evaluator:(t,s,i,r)=>this.evaluateExpression(t,s,i,r,!1,(a,n)=>a.includes(n)),numOperands:1},notContains:{displayValue:e("advancedFilterNotContains"),evaluator:(t,s,i,r)=>this.evaluateExpression(t,s,i,r,!0,(a,n)=>!a.includes(n)),numOperands:1},equals:{displayValue:e("advancedFilterTextEquals"),evaluator:(t,s,i,r)=>this.evaluateExpression(t,s,i,r,!1,(a,n)=>a===n),numOperands:1},notEqual:{displayValue:e("advancedFilterTextNotEqual"),evaluator:(t,s,i,r)=>this.evaluateExpression(t,s,i,r,!0,(a,n)=>a!=n),numOperands:1},startsWith:{displayValue:e("advancedFilterStartsWith"),evaluator:(t,s,i,r)=>this.evaluateExpression(t,s,i,r,!1,(a,n)=>a.startsWith(n)),numOperands:1},endsWith:{displayValue:e("advancedFilterEndsWith"),evaluator:(t,s,i,r)=>this.evaluateExpression(t,s,i,r,!1,(a,n)=>a.endsWith(n)),numOperands:1},blank:{displayValue:e("advancedFilterBlank"),evaluator:t=>t==null||typeof t=="string"&&t.trim().length===0,numOperands:0},notBlank:{displayValue:e("advancedFilterNotBlank"),evaluator:t=>t!=null&&(typeof t!="string"||t.trim().length>0),numOperands:0}}}evaluateExpression(e,t,s,i,r,a){return e==null?r:s.caseSensitive?a(s.valueConverter(e,t),i):a(s.valueConverter(e,t).toLocaleLowerCase(),i.toLocaleLowerCase())}},ji=class{constructor(e){this.params=e,this.initOperators()}getEntries(e){return Wi(this.operators,e)}findOperator(e){return Ps(e,this.operators,({displayValue:t})=>t)}initOperators(){const{translate:e,equals:t}=this.params;this.operators={equals:{displayValue:e("advancedFilterEquals"),evaluator:(s,i,r,a)=>this.evaluateSingleOperandExpression(s,i,r,a,!!r.includeBlanksInEquals,t),numOperands:1},notEqual:{displayValue:e("advancedFilterNotEqual"),evaluator:(s,i,r,a)=>this.evaluateSingleOperandExpression(s,i,r,a,!!r.includeBlanksInEquals,(n,o)=>!t(n,o)),numOperands:1},greaterThan:{displayValue:e("advancedFilterGreaterThan"),evaluator:(s,i,r,a)=>this.evaluateSingleOperandExpression(s,i,r,a,!!r.includeBlanksInGreaterThan,(n,o)=>n>o),numOperands:1},greaterThanOrEqual:{displayValue:e("advancedFilterGreaterThanOrEqual"),evaluator:(s,i,r,a)=>this.evaluateSingleOperandExpression(s,i,r,a,!!r.includeBlanksInGreaterThan,(n,o)=>n>=o),numOperands:1},lessThan:{displayValue:e("advancedFilterLessThan"),evaluator:(s,i,r,a)=>this.evaluateSingleOperandExpression(s,i,r,a,!!r.includeBlanksInLessThan,(n,o)=>n<o),numOperands:1},lessThanOrEqual:{displayValue:e("advancedFilterLessThanOrEqual"),evaluator:(s,i,r,a)=>this.evaluateSingleOperandExpression(s,i,r,a,!!r.includeBlanksInLessThan,(n,o)=>n<=o),numOperands:1},blank:{displayValue:e("advancedFilterBlank"),evaluator:s=>s==null,numOperands:0},notBlank:{displayValue:e("advancedFilterNotBlank"),evaluator:s=>s!=null,numOperands:0}}}evaluateSingleOperandExpression(e,t,s,i,r,a){return e==null?r:a(s.valueConverter(e,t),i)}},Wm=class{constructor(e){this.params=e,this.initOperators()}getEntries(e){return Wi(this.operators,e)}findOperator(e){return Ps(e,this.operators,({displayValue:t})=>t)}initOperators(){const{translate:e}=this.params;this.operators={true:{displayValue:e("advancedFilterTrue"),evaluator:t=>!!t,numOperands:0},false:{displayValue:e("advancedFilterFalse"),evaluator:t=>t===!1,numOperands:0},blank:{displayValue:e("advancedFilterBlank"),evaluator:t=>t==null,numOperands:0},notBlank:{displayValue:e("advancedFilterNotBlank"),evaluator:t=>t!=null,numOperands:0}}}},jm=class extends Om{constructor(){super(...arguments),this.beanName="advFilterExpSvc",this.columnNameToIdMap={},this.columnAutocompleteEntries=null,this.expressionEvaluatorParams={}}wireBeans(e){this.valueSvc=e.valueSvc,this.colModel=e.colModel,this.colNames=e.colNames,this.dataTypeSvc=e.dataTypeSvc}postConstruct(){this.expressionJoinOperators=this.generateExpressionJoinOperators(),this.expressionOperators=this.generateExpressionOperators()}parseJoinOperator(e){const{type:t}=e;return this.expressionJoinOperators[t]??t}getColumnDisplayValue(e){const{colId:t}=e,i=this.getColumnAutocompleteEntries().find(({key:a})=>a===t);let r;return i?(r=i.displayValue,this.columnNameToIdMap[r.toLocaleUpperCase()]={colId:t,columnName:r}):r=t,r}getOperatorDisplayValue(e){return this.getExpressionOperator(e.filterType,e.type)?.displayValue??e.type}getOperandModelValue(e,t,s){switch(t){case"number":return Nm(e)?Number(e):null;case"date":return gn(this.valueSvc.parseValue(s,null,e,void 0),!1);case"dateString":{const i=this.valueSvc.parseValue(s,null,e,void 0);return this.dataTypeSvc?gn(this.dataTypeSvc.getDateParserFunction(s)(i)??null,!1):i}}return e}getOperandDisplayValue(e,t){const{colId:s,filter:i}=e,r=this.colModel.getColDefCol(s);let a="";if(i!=null){let n;switch(e.filterType){case"number":n=_i(i)??"";break;case"date":{const o=pn(i);n=r?this.valueSvc.formatValue(r,null,o):null;break}case"dateString":{let o;if(this.dataTypeSvc){const l=pn(i);o=r?this.dataTypeSvc?.getDateFormatterFunction(r)(l??void 0):null}else o=i;n=r?this.valueSvc.formatValue(r,null,o):null;break}}e.filterType!=="number"&&(n=n??_i(i)??"",t||(n=`"${n}"`)),a=t?n:` ${n}`}return a}parseColumnFilterModel(e){const t=this.getColumnDisplayValue(e)??"",s=this.getOperatorDisplayValue(e)??"",i=this.getOperandDisplayValue(e);return`[${t}] ${s}${i}`}updateAutocompleteCache(e,t){if(t==="column"){const{key:s,displayValue:i}=e;this.columnNameToIdMap[e.displayValue.toLocaleUpperCase()]={colId:s,columnName:i}}}translate(e,t){let s=Bm[e];return typeof s=="function"&&(s=s(t)),this.getLocaleTextFunc()(e,s,t)}generateAutocompleteListParams(e,t,s){return{enabled:!0,type:t,searchString:s,entries:e}}getColumnAutocompleteEntries(){if(this.columnAutocompleteEntries)return this.columnAutocompleteEntries;const e=this.colModel.getColDefCols()??[],t=[],s=this.gos.get("includeHiddenColumnsInAdvancedFilter");return e.forEach(i=>{i.getColDef().filter&&(s||i.isVisible()||i.isRowGroupActive())&&t.push({key:i.getColId(),displayValue:this.colNames.getDisplayNameForColumn(i,"advancedFilter")})}),t.sort((i,r)=>{const a=i.displayValue??"",n=r.displayValue??"";return a<n?-1:n>a?1:0}),t}getOperatorAutocompleteEntries(e,t){const s=this.getActiveOperators(e);return this.getDataTypeExpressionOperator(t).getEntries(s)}getJoinOperatorAutocompleteEntries(){return Object.entries(this.expressionJoinOperators).map(([e,t])=>({key:e,displayValue:t}))}getDefaultAutocompleteListParams(e){return this.generateAutocompleteListParams(this.getColumnAutocompleteEntries(),"column",e)}getDataTypeExpressionOperator(e){return this.expressionOperators[e]}getExpressionOperator(e,t){return this.getDataTypeExpressionOperator(e)?.operators?.[t]}getExpressionJoinOperators(){return this.expressionJoinOperators}getColId(e){const t=e.toLocaleUpperCase(),s=this.columnNameToIdMap[t];if(s)return s;const r=this.getColumnAutocompleteEntries().find(({displayValue:a})=>a.toLocaleUpperCase()===t);if(r){const{key:a,displayValue:n}=r,o={colId:a,columnName:n};return this.columnNameToIdMap[t]=o,o}return null}getExpressionEvaluatorParams(e){let t=this.expressionEvaluatorParams[e];if(t)return t;const s=this.colModel.getColDefCol(e);if(!s)return{valueConverter:a=>a};switch(this.dataTypeSvc?.getBaseDataType(s)){case"dateString":t={valueConverter:this.dataTypeSvc?.getDateParserFunction(s)??(a=>a)};break;case"object":s.getColDef().filterValueGetter?t={valueConverter:a=>a}:t={valueConverter:(a,n)=>this.valueSvc.formatValue(s,n,a)??(typeof a.toString=="function"?a.toString():"")};break;case"text":case void 0:t={valueConverter:a=>_i(a)};break;default:t={valueConverter:a=>a};break}const{filterParams:r}=s.getColDef();return r&&["caseSensitive","includeBlanksInEquals","includeBlanksInLessThan","includeBlanksInGreaterThan"].forEach(a=>{const n=r[a];n&&(t[a]=n)}),this.expressionEvaluatorParams[e]=t,t}getColumnDetails(e){const t=this.colModel.getColDefCol(e)??void 0,s=(t?this.dataTypeSvc?.getBaseDataType(t):void 0)??"text";return{column:t,baseCellDataType:s}}generateExpressionOperators(){const e=(t,s)=>this.translate(t,s);return{text:new mn({translate:e}),boolean:new Wm({translate:e}),object:new mn({translate:e}),number:new ji({translate:e,equals:(t,s)=>t===s}),date:new ji({translate:e,equals:(t,s)=>t.getTime()===s.getTime()}),dateString:new ji({translate:e,equals:(t,s)=>t.getTime()===s.getTime()})}}getColumnValue({displayValue:e}){return`${Ui}${e}${Ki}`}generateExpressionJoinOperators(){return{AND:this.translate("advancedFilterAnd"),OR:this.translate("advancedFilterOr")}}getActiveOperators(e){const t=e.getColDef().filterParams?.filterOptions;return t&&t.every(i=>typeof i=="string")?t:void 0}resetColumnCaches(){this.columnAutocompleteEntries=null,this.columnNameToIdMap={},this.expressionEvaluatorParams={}}};import{BeanStub as $m,_exists as Ym,_isClientSideRowModel as Xm,_isServerSideRowModel as qm,_warn as Zm}from"ag-grid-community";import{BeanStub as Jm,_getAbsoluteHeight as Qm,_getAbsoluteWidth as ef,_removeFromParent as tf}from"ag-grid-community";import{Component as sf,TabGuardFeature as rf,_createIconNoSpan as fn,_findNextFocusableElement as af,_focusNextGridCoreContainer as nf,_setDisplayed as Cn}from"ag-grid-community";import{Component as vn,PositionableFeature as of,RefPlaceholder as As,_createIconNoSpan as lf,_getActiveDomElement as cf,_getInnerHeight as df,_getInnerWidth as hf,_isVisible as uf,_setDisplayed as pf}from"ag-grid-community";var gf=".ag-panel{background-color:var(--ag-panel-background-color);display:flex;flex-direction:column;overflow:hidden;position:relative}.ag-dialog{border:var(--ag-dialog-border);border-radius:var(--ag-border-radius);box-shadow:var(--ag-dialog-shadow);position:absolute}.ag-panel-title-bar{align-items:center;background-color:var(--ag-panel-title-bar-background-color);border-bottom:var(--ag-panel-title-bar-border);color:var(--ag-panel-title-bar-text-color);cursor:default;display:flex;flex:none;font-weight:var(--ag-panel-title-bar-font-weight);height:var(--ag-header-height);padding:var(--ag-spacing) var(--ag-cell-horizontal-padding)}.ag-panel-title-bar-button{color:var(--ag-panel-title-bar-icon-color);cursor:pointer}:where(.ag-ltr) .ag-panel-title-bar-button{margin-left:calc(var(--ag-spacing)*2);margin-right:var(--ag-spacing)}:where(.ag-rtl) .ag-panel-title-bar-button{margin-left:var(--ag-spacing);margin-right:calc(var(--ag-spacing)*2)}.ag-panel-title-bar-title{flex:1 1 auto}.ag-panel-title-bar-buttons{display:flex}.ag-panel-content-wrapper{display:flex;flex:1 1 auto;overflow:hidden;position:relative}:where(.ag-dragging-fill-handle) .ag-dialog,:where(.ag-dragging-range-handle) .ag-dialog{opacity:.7;pointer-events:none}";function mf(e){const t=e.cssIdentifier||"default";return{tag:"div",cls:`ag-panel ag-${t}-panel`,attrs:{tabindex:"-1"},children:[{tag:"div",ref:"eTitleBar",cls:`ag-panel-title-bar ag-${t}-panel-title-bar ag-unselectable`,children:[{tag:"span",ref:"eTitle",cls:`ag-panel-title-bar-title ag-${t}-panel-title-bar-title`},{tag:"div",ref:"eTitleBarButtons",cls:`ag-panel-title-bar-buttons ag-${t}-panel-title-bar-buttons`}]},{tag:"div",ref:"eContentWrapper",cls:`ag-panel-content-wrapper ag-${t}-panel-content-wrapper`}]}}var yn=class extends vn{constructor(e){super(mf(e)),this.config=e,this.closable=!0,this.eContentWrapper=As,this.eTitleBar=As,this.eTitleBarButtons=As,this.eTitle=As,this.registerCSS(gf)}postConstruct(){const{component:e,closable:t,hideTitleBar:s,title:i,minWidth:r=250,width:a,minHeight:n=250,height:o,centered:l,popup:c,x:d,y:h}=this.config;this.positionableFeature=new of(this.getGui(),{minWidth:r,width:a,minHeight:n,height:o,centered:l,x:d,y:h,popup:c,calculateTopBuffer:()=>this.positionableFeature.getHeight()-this.getBodyHeight()}),this.createManagedBean(this.positionableFeature);const u=this.getGui();e&&this.setBodyComponent(e),s?pf(this.eTitleBar,!1):(i&&this.setTitle(i),this.setClosable(t??this.closable)),this.addManagedElementListeners(this.eTitleBar,{mousedown:p=>{if(u.contains(p.relatedTarget)||u.contains(cf(this.beans))||this.eTitleBarButtons.contains(p.target)){p.preventDefault();return}const g=this.eContentWrapper.querySelector("button, [href], input, select, textarea, [tabindex]");g&&g.focus()}}),!(c&&this.positionableFeature.isPositioned())&&(this.renderComponent&&this.renderComponent(),this.positionableFeature.initialisePosition(),this.eContentWrapper.style.height="0")}renderComponent(){const e=this.getGui();e.focus(),this.close=()=>{e.parentElement.removeChild(e),this.destroy()}}getHeight(){return this.positionableFeature.getHeight()}setHeight(e){this.positionableFeature.setHeight(e)}getWidth(){return this.positionableFeature.getWidth()}setWidth(e){this.positionableFeature.setWidth(e)}setClosable(e){if(e!==this.closable&&(this.closable=e),e){const t=this.closeButtonComp=new vn({tag:"div",cls:"ag-button"});this.createBean(t);const s=t.getGui(),i=lf("close",this.beans);i.classList.add("ag-panel-title-bar-button-icon"),s.appendChild(i),this.addTitleBarButton(t),t.addManagedElementListeners(s,{click:this.onBtClose.bind(this)})}else if(this.closeButtonComp){const t=this.closeButtonComp.getGui();t.parentElement.removeChild(t),this.closeButtonComp=this.destroyBean(this.closeButtonComp)}}setBodyComponent(e){e.setParentComponent(this),this.eContentWrapper.appendChild(e.getGui())}addTitleBarButton(e,t){const s=this.eTitleBarButtons,i=s.children,r=i.length;t==null&&(t=r),t=Math.max(0,Math.min(t,r)),e.addCssClass("ag-panel-title-bar-button");const a=e.getGui();t===0?s.insertAdjacentElement("afterbegin",a):t===r?s.insertAdjacentElement("beforeend",a):i[t-1].insertAdjacentElement("afterend",a),e.setParentComponent(this)}getBodyHeight(){return df(this.eContentWrapper)}getBodyWidth(){return hf(this.eContentWrapper)}setTitle(e){this.eTitle.innerText=e}onBtClose(){this.close()}destroy(){this.closeButtonComp&&(this.closeButtonComp=this.destroyBean(this.closeButtonComp));const e=this.getGui();e&&uf(e)&&this.close(),super.destroy()}},kt=class extends yn{constructor(e){super({...e,popup:!0}),this.isMaximizable=!1,this.isMaximized=!1,this.maximizeListeners=[],this.resizeListenerDestroy=null,this.lastPosition={x:0,y:0,width:0,height:0}}wireBeans(e){this.popupSvc=e.popupSvc}postConstruct(){const e=this.getGui(),{movable:t,resizable:s,maximizable:i,modal:r,postProcessPopupParams:a}=this.config;if(this.addCssClass("ag-dialog"),super.postConstruct(),a){const{type:n,eventSource:o,column:l,mouseEvent:c,rowNode:d}=a;this.popupSvc?.callPostProcessPopup(n,e,o,c,l,d)}if(this.tabGuardFeature=this.createManagedBean(new rf(this)),this.tabGuardFeature.initialiseTabGuard({isFocusableContainer:!0,onFocusIn:()=>{this.popupSvc?.bringPopupToFront(e)},onTabKeyDown:n=>{if(r)return;const o=n.shiftKey,l=af(this.beans,e,!1,o);(!l||this.tabGuardFeature.getTabGuardCtrl().isTabGuard(l))&&nf(this.beans,o)&&n.preventDefault()}}),t&&this.setMovable(t),i&&this.setMaximizable(i),s&&this.setResizable(s),!this.config.modal){const n=this.beans.ctrlsSvc.get("gridCtrl");n.addFocusableContainer(this),this.addDestroyFunc(()=>n.removeFocusableContainer(this))}}setAllowFocus(e){this.tabGuardFeature.getTabGuardCtrl().setAllowFocus(e)}renderComponent(){const e=this.getGui(),{alwaysOnTop:t,modal:s,title:i,afterGuiAttached:r}=this.config,a=this.getLocaleTextFunc(),n=this.popupSvc?.addPopup({modal:s,eChild:e,closeOnEsc:!0,closedCallback:this.onClosed.bind(this),alwaysOnTop:t,ariaLabel:i||a("ariaLabelDialog","Dialog"),afterGuiAttached:r});n&&(this.close=n.hideFunc)}onClosed(e){this.destroy(),this.config.closedCallback?.(e)}toggleMaximize(){const e=this.positionableFeature.getPosition();if(this.isMaximized){const{x:t,y:s,width:i,height:r}=this.lastPosition;this.setWidth(i),this.setHeight(r),this.positionableFeature.offsetElement(t,s)}else this.lastPosition.width=this.getWidth(),this.lastPosition.height=this.getHeight(),this.lastPosition.x=e.x,this.lastPosition.y=e.y,this.positionableFeature.offsetElement(0,0),this.setHeight("100%"),this.setWidth("100%");this.isMaximized=!this.isMaximized,this.refreshMaximizeIcon()}refreshMaximizeIcon(){Cn(this.maximizeIcon,!this.isMaximized),Cn(this.minimizeIcon,this.isMaximized)}clearMaximizebleListeners(){this.maximizeListeners.length&&(this.maximizeListeners.forEach(e=>e()),this.maximizeListeners.length=0),this.resizeListenerDestroy&&(this.resizeListenerDestroy(),this.resizeListenerDestroy=null)}destroy(){this.maximizeButtonComp=this.destroyBean(this.maximizeButtonComp),this.clearMaximizebleListeners(),super.destroy()}setResizable(e){this.positionableFeature.setResizable(e)}setMovable(e){this.positionableFeature.setMovable(e,this.eTitleBar)}setMaximizable(e){if(!e){this.clearMaximizebleListeners(),this.maximizeButtonComp&&(this.destroyBean(this.maximizeButtonComp),this.maximizeButtonComp=this.maximizeIcon=this.minimizeIcon=void 0);return}const t=this.eTitleBar;if(!t||e===this.isMaximizable)return;const s=this.buildMaximizeAndMinimizeElements();this.refreshMaximizeIcon(),s.addManagedElementListeners(s.getGui(),{click:this.toggleMaximize.bind(this)}),this.addTitleBarButton(s,0),this.maximizeListeners.push(...this.addManagedElementListeners(t,{dblclick:this.toggleMaximize.bind(this)})),[this.resizeListenerDestroy]=this.addManagedListeners(this.positionableFeature,{resize:()=>{this.isMaximized=!1,this.refreshMaximizeIcon()}})}buildMaximizeAndMinimizeElements(){const e=this.maximizeButtonComp=this.createBean(new sf({tag:"div",cls:"ag-dialog-button"})),t=e.getGui();return this.maximizeIcon=fn("maximize",this.beans),t.appendChild(this.maximizeIcon),this.maximizeIcon.classList.add("ag-panel-title-bar-button-icon"),this.minimizeIcon=fn("minimize",this.beans),t.appendChild(this.minimizeIcon),this.minimizeIcon.classList.add("ag-panel-title-bar-button-icon"),e}};import{Component as ff,RefPlaceholder as Gt,_createIconNoSpan as Cf,_makeNull as vf,_setDisabled as ht}from"ag-grid-community";import{AgInputTextFieldSelector as yf,Component as Sf,KeyCode as Ce,RefPlaceholder as bf,_isNothingFocused as wf,_makeNull as Sn}from"ag-grid-community";var xf=".ag-autocomplete{align-items:center;display:flex;width:100%;>*{flex:1 1 auto}}.ag-autocomplete-list-popup{background-color:var(--ag-background-color);border-radius:var(--ag-border-radius);box-shadow:var(--ag-dropdown-shadow);padding:0;position:absolute;-webkit-user-select:none;-moz-user-select:none;user-select:none}.ag-autocomplete-list{height:calc(var(--ag-row-height)*6.5);min-width:200px;position:relative;width:100%}.ag-autocomplete-virtual-list-item{cursor:default;display:flex;height:var(--ag-list-item-height);&:focus-visible:after{content:none}&:hover{background-color:var(--ag-row-hover-color)}}.ag-autocomplete-row{align-items:center;display:flex;flex:1 1 auto;overflow:hidden}.ag-autocomplete-row-label{margin:0 var(--ag-widget-container-horizontal-padding);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ag-autocomplete-row-selected{background-color:var(--ag-selected-row-background-color)}";import{KeyCode as Mf,PopupComponent as Tf,RefPlaceholder as Ff,_exists as Pf,_fuzzySuggestions as Af}from"ag-grid-community";import{KeyCode as pe,RefPlaceholder as Rf,TabGuardComp as Ef,_createElement as If,_getAriaPosInSet as Df,_observeResize as Lf,_requestAnimationFrame as bn,_setAriaLabel as kf,_setAriaPosInSet as Gf,_setAriaRole as Of,_setAriaSetSize as Nf,_stopPropagationForAgGrid as Bf,_waitUntil as _f,_warn as Vf}from"ag-grid-community";function Hf(e){return{tag:"div",cls:`ag-virtual-list-viewport ag-${e}-virtual-list-viewport`,role:"presentation",children:[{tag:"div",ref:"eContainer",cls:`ag-virtual-list-container ag-${e}-virtual-list-container`}]}}var ut=class extends Ef{constructor(e){super(Hf(e?.cssIdentifier||"default")),this.renderedRows=new Map,this.rowHeight=20,this.pageSize=-1,this.isScrolling=!1,this.isHeightFromTheme=!0,this.eContainer=Rf,this.awaitStableCallbacks=[];const{cssIdentifier:t="default",ariaRole:s="listbox",listName:i,moveItemCallback:r}=e||{};this.cssIdentifier=t,this.ariaRole=s,this.listName=i,this.moveItemCallback=r}wireBeans(e){this.environment=e.environment}postConstruct(){this.addScrollListener(),this.rowHeight=this.getItemHeight(),this.addResizeObserver(),this.initialiseTabGuard({onFocusIn:e=>this.onFocusIn(e),onFocusOut:e=>this.onFocusOut(e),focusInnerElement:e=>this.focusInnerElement(e),onTabKeyDown:e=>this.onTabKeyDown(e),handleKeyDown:e=>this.handleKeyDown(e)}),this.refreshAriaProperties(),this.addManagedEventListeners({gridStylesChanged:this.onGridStylesChanged.bind(this)})}onGridStylesChanged(e){e.listItemHeightChanged&&(this.rowHeight=this.getItemHeight(),this.refresh())}refreshAriaProperties(){const t=this.getLocaleTextFunc()("ariaDefaultListName",this.listName||"List"),s=this.eContainer;Of(s,this.model?.getRowCount()>0?this.ariaRole:"presentation"),kf(s,t)}addResizeObserver(){const e=()=>bn(this.beans,()=>this.drawVirtualRows()),t=Lf(this.beans,this.getGui(),e);this.addDestroyFunc(t)}focusInnerElement(e){return this.focusRow(e?this.model.getRowCount()-1:0),!0}onFocusIn(e){const t=e.target;t.classList.contains("ag-virtual-list-item")&&(this.lastFocusedRowIndex=Df(t)-1)}onFocusOut(e){this.getFocusableElement().contains(e.relatedTarget)||(this.lastFocusedRowIndex=null)}handleKeyDown(e){const{key:t,shiftKey:s}=e;switch(t){case pe.UP:case pe.DOWN:{const i=t===pe.UP;e.preventDefault(),s?this.moveItem(i):this.navigate(i)}break;case pe.PAGE_HOME:case pe.PAGE_END:case pe.PAGE_UP:case pe.PAGE_DOWN:this.navigateToPage(t)!==null&&e.preventDefault();break}}onTabKeyDown(e){Bf(e),this.forceFocusOutOfContainer(e.shiftKey)}getNextRow(e){if(this.lastFocusedRowIndex==null)return;const t=this.lastFocusedRowIndex+(e?-1:1);if(!(t<0||t>=this.model.getRowCount()))return t}moveItem(e){if(!this.moveItemCallback)return;const t=this.getComponentAt(this.lastFocusedRowIndex);t&&this.moveItemCallback(t,e)}navigate(e){const t=this.getNextRow(e);t!==void 0&&this.focusRow(t)}navigateToPage(e,t="focused"){let s=!1;t==="focused"&&(t=this.getLastFocusedRow(),s=!0);const i=this.model.getRowCount()-1;let r=-1;return e===pe.PAGE_HOME?r=0:e===pe.PAGE_END?r=i:e===pe.PAGE_DOWN?r=Math.min(t+this.pageSize,i):e===pe.PAGE_UP&&(r=Math.max(t-this.pageSize,0)),r===-1?null:(s?this.focusRow(r):this.ensureIndexVisible(r),r)}getLastFocusedRow(){return this.lastFocusedRowIndex}focusRow(e){this.isScrolling||(this.isScrolling=!0,this.ensureIndexVisible(e),bn(this.beans,()=>{if(this.isScrolling=!1,!this.isAlive())return;const t=this.renderedRows.get(e);t&&t.eDiv.focus()}))}getComponentAt(e){const t=this.renderedRows.get(e);return t&&t.rowComponent}forEachRenderedRow(e){this.renderedRows.forEach((t,s)=>e(t.rowComponent,s))}getItemHeight(){return this.isHeightFromTheme?this.environment.getDefaultListItemHeight():this.rowHeight}ensureIndexVisible(e,t=!0){const s=this.model.getRowCount();if(typeof e!="number"||e<0||e>=s)return Vf(229,{index:e}),!1;const i=e*this.rowHeight,r=i+this.rowHeight,a=this.getGui(),n=a.scrollTop,o=a.offsetHeight,l=n+o,c=t?0:this.rowHeight,d=n>i+c,h=l<r-c;if(d)return a.scrollTop=i,!0;if(h){const u=r-o;return a.scrollTop=u,!0}return!1}setComponentCreator(e){this.componentCreator=e}setComponentUpdater(e){this.componentUpdater=e}getRowHeight(){return this.rowHeight}getScrollTop(){return this.getGui().scrollTop}setRowHeight(e){this.isHeightFromTheme=!1,this.rowHeight=e,this.refresh()}refresh(e){if(this.model==null||!this.isAlive())return;const t=this.model.getRowCount();this.eContainer.style.height=`${t*this.rowHeight}px`,this.refreshAriaProperties(),this.awaitStable(()=>{this.isAlive()&&(this.canSoftRefresh(e)?this.drawVirtualRows(!0):(this.clearVirtualRows(),this.drawVirtualRows()))})}awaitStable(e){if(this.awaitStableCallbacks.push(e),this.awaitStableCallbacks.length>1)return;const t=this.model.getRowCount();_f(()=>this.eContainer.clientHeight>=t*this.rowHeight,()=>{if(!this.isAlive())return;const s=this.awaitStableCallbacks;this.awaitStableCallbacks=[],s.forEach(i=>i())})}canSoftRefresh(e){return!!(e&&this.renderedRows.size&&typeof this.model.areRowsEqual=="function"&&this.componentUpdater)}clearVirtualRows(){this.renderedRows.forEach((e,t)=>this.removeRow(t))}drawVirtualRows(e){if(!this.isAlive()||!this.model)return;const t=this.getGui(),s=t.scrollTop,i=s+t.offsetHeight;if(s===i)this.clearVirtualRows();else{const r=Math.floor(s/this.rowHeight),a=Math.floor(i/this.rowHeight);this.pageSize=Math.floor((i-s)/this.rowHeight),this.ensureRowsRendered(r,a,e)}}ensureRowsRendered(e,t,s){this.renderedRows.forEach((i,r)=>{(r<e||r>t)&&r!==this.lastFocusedRowIndex&&this.removeRow(r)}),s&&this.refreshRows();for(let i=e;i<=t;i++)this.renderedRows.has(i)||i<this.model.getRowCount()&&this.insertRow(i)}insertRow(e){const t=this.model.getRow(e),s=this.ariaRole==="tree"?"treeitem":"option",i=If({tag:"div",cls:`ag-virtual-list-item ag-${this.cssIdentifier}-virtual-list-item`,role:s,attrs:{tabindex:"-1"}});Nf(i,this.model.getRowCount()),Gf(i,e+1),i.style.height=`${this.rowHeight}px`,i.style.top=`${this.rowHeight*e}px`;const r=this.componentCreator(t,i);r.addGuiEventListener("focusin",()=>this.lastFocusedRowIndex=e),i.appendChild(r.getGui()),this.renderedRows.has(e-1)?this.renderedRows.get(e-1).eDiv.insertAdjacentElement("afterend",i):this.renderedRows.has(e+1)?this.renderedRows.get(e+1).eDiv.insertAdjacentElement("beforebegin",i):this.eContainer.appendChild(i),this.renderedRows.set(e,{rowComponent:r,eDiv:i,value:t})}removeRow(e){const t=this.renderedRows.get(e);this.eContainer.removeChild(t.eDiv),this.destroyBean(t.rowComponent),this.renderedRows.delete(e)}refreshRows(){const e=this.model.getRowCount();this.renderedRows.forEach((t,s)=>{if(s>=e)this.removeRow(s);else{const i=this.model.getRow(s);this.model.areRowsEqual?.(t.value,i)?this.componentUpdater(i,t.rowComponent):this.removeRow(s)}})}addScrollListener(){this.addGuiEventListener("scroll",()=>this.drawVirtualRows(),{passive:!0})}setModel(e){this.model=e}getAriaElement(){return this.eContainer}destroy(){this.isAlive()&&(this.clearVirtualRows(),this.awaitStableCallbacks.length=0,super.destroy())}};import{Component as zf,_escapeString as Rs,_exists as Uf}from"ag-grid-community";var Kf={tag:"div",cls:"ag-autocomplete-row",role:"presentation",children:[{tag:"div",cls:"ag-autocomplete-row-label"}]},Wf=class extends zf{constructor(){super(Kf),this.hasHighlighting=!1}setState(e,t){this.value=e,this.render(),this.updateSelected(t)}updateSelected(e){this.addOrRemoveCssClass("ag-autocomplete-row-selected",e)}setSearchString(e){let t=!1;if(Uf(e)){const s=this.value?.toLocaleLowerCase().indexOf(e.toLocaleLowerCase());if(s>=0){t=!0,this.hasHighlighting=!0;const i=s+e.length,r=Rs(this.value.slice(0,s)),a=Rs(this.value.slice(s,i)),n=Rs(this.value.slice(i));this.getGui().lastElementChild.innerHTML=`${r}<b>${a}</b>${n}`}}!t&&this.hasHighlighting&&(this.hasHighlighting=!1,this.render())}render(){this.getGui().lastElementChild.innerHTML=Rs(this.value)??" "}},jf={tag:"div",cls:"ag-autocomplete-list-popup",children:[{tag:"div",ref:"eList",cls:"ag-autocomplete-list"}]},$f=class extends Tf{constructor(e){super(jf),this.params=e,this.eList=Ff,this.searchString=""}postConstruct(){this.autocompleteEntries=this.params.autocompleteEntries,this.virtualList=this.createManagedBean(new ut({cssIdentifier:"autocomplete"})),this.virtualList.setComponentCreator(this.createRowComponent.bind(this)),this.eList.appendChild(this.virtualList.getGui()),this.virtualList.setModel({getRowCount:()=>this.autocompleteEntries.length,getRow:t=>this.autocompleteEntries[t]});const e=this.virtualList.getGui();this.addManagedListeners(e,{click:()=>this.params.onConfirmed(),mousemove:this.onMouseMove.bind(this),mousedown:t=>t.preventDefault()}),this.setSelectedValue(0)}onNavigationKeyDown(e,t){e.preventDefault();const s=this.autocompleteEntries.indexOf(this.selectedValue),i=t===Mf.UP?s-1:s+1;this.checkSetSelectedValue(i)}setSearch(e){this.searchString=e,Pf(e)?this.runSearch():(this.autocompleteEntries=this.params.autocompleteEntries,this.virtualList.refresh(),this.checkSetSelectedValue(0)),this.updateSearchInList()}runContainsSearch(e,t){let s,i=!1;const r=e.toLocaleLowerCase(),a=t.filter(n=>{const l=n.toLocaleLowerCase().indexOf(r),c=l===0,d=l>=0;return d&&(!s||!i&&c||i===c&&n.length<s.length)&&(s=n,i=c),d});return!s&&a.length&&(s=a[0]),{topMatch:s,allMatches:a}}runSearch(){const{autocompleteEntries:e,useFuzzySearch:t,forceLastSelection:s}=this.params,i=e.map(l=>l.displayValue??l.key);let r,a;if(t)r=Af({inputValue:this.searchString,allSuggestions:i,hideIrrelevant:!0}).values,a=r.length?r[0]:void 0;else{const l=this.runContainsSearch(this.searchString,i);r=l.allMatches,a=l.topMatch}let n=e.filter(({key:l,displayValue:c})=>r.includes(c??l));if(!n.length&&this.selectedValue&&s?.(this.selectedValue,this.searchString)&&(n=[this.selectedValue]),this.autocompleteEntries=n,this.virtualList.refresh(),!a)return;const o=r.indexOf(a);this.checkSetSelectedValue(o)}updateSearchInList(){this.virtualList.forEachRenderedRow(e=>e.setSearchString(this.searchString))}checkSetSelectedValue(e){e>=0&&e<this.autocompleteEntries.length&&this.setSelectedValue(e)}setSelectedValue(e){const t=this.autocompleteEntries[e];this.selectedValue!==t&&(this.selectedValue=t,this.virtualList.ensureIndexVisible(e),this.virtualList.forEachRenderedRow((s,i)=>{s.updateSelected(e===i)}))}createRowComponent(e){const t=new Wf;return this.createBean(t),t.setState(e.displayValue??e.key,e===this.selectedValue),t}onMouseMove(e){const t=this.virtualList,s=t.getGui().getBoundingClientRect(),i=t.getScrollTop(),r=e.clientY-s.top+i,a=Math.floor(r/t.getRowHeight());this.checkSetSelectedValue(a)}afterGuiAttached(){this.virtualList.refresh()}getSelectedValue(){return this.autocompleteEntries.length?this.selectedValue??null:null}},Yf={tag:"div",cls:"ag-autocomplete",role:"presentation",children:[{tag:"ag-input-text-field",ref:"eAutocompleteInput"}]},Xf=class extends Sf{constructor(){super(Yf,[yf]),this.eAutocompleteInput=bf,this.isListOpen=!1,this.lastPosition=0,this.valid=!0,this.registerCSS(xf)}wireBeans(e){this.popupSvc=e.popupSvc}postConstruct(){this.eAutocompleteInput.onValueChange(e=>this.onValueChanged(e)),this.eAutocompleteInput.getInputElement().setAttribute("autocomplete","off"),this.addGuiEventListener("keydown",this.onKeyDown.bind(this)),this.addGuiEventListener("click",this.updatePositionAndList.bind(this)),this.addDestroyFunc(()=>{this.destroyBean(this.autocompleteList)}),this.addGuiEventListener("focusout",()=>this.onFocusOut())}onValueChanged(e){const t=Sn(e);this.updateValue(t),this.updateAutocompleteList(t)}updateValue(e){this.updateLastPosition(),this.dispatchLocalEvent({type:"eventValueChanged",value:e}),this.validate(e)}updateAutocompleteList(e){const t=this.listGenerator?.(e,this.lastPosition)??{enabled:!1};(!t.type||t.type!==this.autocompleteListParams?.type)&&this.isListOpen&&this.closeList();const s=this.isListOpen;if(this.autocompleteListParams=t,t?.enabled){s||this.openList();const{searchString:i}=t;this.autocompleteList.setSearch(i??"")}else s&&this.closeList()}onKeyDown(e){const t=e.key;switch(this.updateLastPosition(),t){case Ce.ENTER:this.onEnterKeyDown(e);break;case Ce.TAB:this.onTabKeyDown(e);break;case Ce.DOWN:case Ce.UP:this.onUpDownKeyDown(e,t);break;case Ce.LEFT:case Ce.RIGHT:case Ce.PAGE_HOME:case Ce.PAGE_END:setTimeout(()=>{this.updatePositionAndList()});break;case Ce.ESCAPE:this.onEscapeKeyDown(e);break;case Ce.SPACE:e.ctrlKey&&!this.isListOpen&&(e.preventDefault(),this.forceOpenList());break}}confirmSelection(){const e=this.autocompleteList?.getSelectedValue();e&&(this.closeList(),this.dispatchLocalEvent({type:"eventOptionSelected",value:this.getValue(),position:this.lastPosition,updateEntry:e,autocompleteType:this.autocompleteListParams.type}))}onTabKeyDown(e){this.isListOpen&&(e.preventDefault(),e.stopPropagation(),this.confirmSelection())}onEnterKeyDown(e){e.preventDefault(),this.isListOpen?this.confirmSelection():this.onCompleted()}onUpDownKeyDown(e,t){e.preventDefault(),this.isListOpen?this.autocompleteList?.onNavigationKeyDown(e,t):this.forceOpenList()}onEscapeKeyDown(e){this.isListOpen&&(e.preventDefault(),e.stopPropagation(),this.closeList(),this.setCaret(this.lastPosition,!0))}onFocusOut(){this.isListOpen&&this.closeList()}updatePositionAndList(){this.updateLastPosition(),this.updateAutocompleteList(this.eAutocompleteInput.getValue()??null)}setCaret(e,t){t&&wf(this.beans)&&this.eAutocompleteInput.getFocusableElement().focus();const s=this.eAutocompleteInput.getInputElement();s.setSelectionRange(e,e),e===s.value.length&&(s.scrollLeft=s.scrollWidth)}forceOpenList(){this.onValueChanged(this.eAutocompleteInput.getValue())}updateLastPosition(){this.lastPosition=this.eAutocompleteInput.getInputElement().selectionStart??0}validate(e){if(!this.validator)return;const t=this.validationMessage=this.validator(e);this.eAutocompleteInput.getInputElement().setCustomValidity(t??""),this.valid=!t,this.dispatchLocalEvent({type:"eventValidChanged",isValid:this.valid,validationMessage:t})}openList(){this.isListOpen=!0,this.autocompleteList=this.createBean(new $f({autocompleteEntries:this.autocompleteListParams.entries,onConfirmed:()=>this.confirmSelection(),forceLastSelection:this.forceLastSelection}));const e=this.autocompleteList.getGui(),t={ePopup:e,type:"autocomplete",eventSource:this.getGui(),position:"under",alignSide:this.gos.get("enableRtl")?"right":"left",keepWithinBounds:!0},s=this.popupSvc.addPopup({eChild:e,anchorToElement:this.getGui(),positionCallback:()=>this.popupSvc.positionPopupByComponent(t),ariaLabel:this.listAriaLabel});this.hidePopup=s.hideFunc,this.autocompleteList.afterGuiAttached()}closeList(){this.isListOpen=!1,this.hidePopup(),this.destroyBean(this.autocompleteList),this.autocompleteList=null}onCompleted(){this.isListOpen&&this.closeList(),this.dispatchLocalEvent({type:"eventValueConfirmed",value:this.getValue(),isValid:this.isValid()})}getValue(){return Sn(this.eAutocompleteInput.getValue())}setInputPlaceholder(e){return this.eAutocompleteInput.setInputPlaceholder(e),this}setInputAriaLabel(e){return this.eAutocompleteInput.setInputAriaLabel(e),this}setListAriaLabel(e){return this.listAriaLabel=e,this}setListGenerator(e){return this.listGenerator=e,this}setValidator(e){return this.validator=e,this}isValid(){return this.valid}setValue(e){const{value:t,position:s,silent:i,updateListOnlyIfOpen:r,restoreFocus:a}=e;this.eAutocompleteInput.setValue(t,!0),this.setCaret(s??this.lastPosition,a),i||this.updateValue(t),(!r||this.isListOpen)&&this.updateAutocompleteList(t)}setForceLastSelection(e){return this.forceLastSelection=e,this}setInputDisabled(e){return this.eAutocompleteInput.setDisabled(e),this}},qf={selector:"AG-AUTOCOMPLETE",component:Xf},Zf={tag:"div",cls:"ag-advanced-filter",role:"presentation",attrs:{tabindex:"-1"},children:[{tag:"ag-autocomplete",ref:"eAutocomplete"},{tag:"button",ref:"eApplyFilterButton",cls:"ag-button ag-standard-button ag-advanced-filter-apply-button"},{tag:"button",ref:"eBuilderFilterButton",cls:"ag-button ag-advanced-filter-builder-button",children:[{tag:"span",ref:"eBuilderFilterButtonIcon",attrs:{"aria-hidden":"true"}},{tag:"span",ref:"eBuilderFilterButtonLabel",cls:"ag-advanced-filter-builder-button-label"}]}]},wn=class extends ff{constructor(){super(Zf,[qf]),this.eAutocomplete=Gt,this.eApplyFilterButton=Gt,this.eBuilderFilterButton=Gt,this.eBuilderFilterButtonIcon=Gt,this.eBuilderFilterButtonLabel=Gt,this.expressionParser=null,this.isApplyDisabled=!0,this.builderOpen=!1}wireBeans(e){this.advFilterExpSvc=e.advFilterExpSvc,this.advancedFilter=e.advancedFilter,this.filterManager=e.filterManager,this.registry=e.registry}postConstruct(){this.tooltipFeature=this.createOptionalManagedBean(this.registry.createDynamicBean("tooltipFeature",!1,{getGui:()=>this.getGui(),getTooltipShowDelayOverride:()=>1e3,getLocation:()=>"advancedFilter"})),this.eAutocomplete.setListGenerator((e,t)=>this.generateAutocompleteListParams(t)).setValidator(()=>this.validateValue()).setForceLastSelection((e,t)=>this.forceLastSelection(e,t)).setInputAriaLabel(this.advFilterExpSvc.translate("ariaAdvancedFilterInput")).setListAriaLabel(this.advFilterExpSvc.translate("ariaLabelAdvancedFilterAutocomplete")),this.refresh(),this.addManagedListeners(this.eAutocomplete,{eventValueChanged:({value:e})=>this.onValueChanged(e),eventValueConfirmed:({isValid:e})=>this.onValueConfirmed(e),eventOptionSelected:({position:e,updateEntry:t,autocompleteType:s})=>this.onOptionSelected(e,t,s),eventValidChanged:({isValid:e,validationMessage:t})=>this.onValidChanged(e,t)}),this.setupApplyButton(),this.setupBuilderButton()}refresh(){const e=this.advancedFilter.getExpressionDisplayValue();this.eAutocomplete.setValue({value:e??"",position:e?.length,updateListOnlyIfOpen:!0})}setInputDisabled(e){this.eAutocomplete.setInputDisabled(e),ht(this.eApplyFilterButton,e||this.isApplyDisabled)}setupApplyButton(){this.eApplyFilterButton.innerText=this.advFilterExpSvc.translate("advancedFilterApply"),this.activateTabIndex([this.eApplyFilterButton]),this.addManagedElementListeners(this.eApplyFilterButton,{click:()=>this.onValueConfirmed(this.eAutocomplete.isValid())}),ht(this.eApplyFilterButton,this.isApplyDisabled)}setupBuilderButton(){this.eBuilderFilterButtonIcon.appendChild(Cf("advancedFilterBuilder",this.beans)),this.eBuilderFilterButtonLabel.innerText=this.advFilterExpSvc.translate("advancedFilterBuilder"),this.activateTabIndex([this.eBuilderFilterButton]),this.addManagedElementListeners(this.eBuilderFilterButton,{click:()=>this.openBuilder()}),this.addManagedListeners(this.advancedFilter.getCtrl(),{advancedFilterBuilderClosed:()=>this.closeBuilder()})}onValueChanged(e){e=vf(e),this.advancedFilter.setExpressionDisplayValue(e),this.expressionParser=this.advancedFilter.createExpressionParser(e);const t=this.expressionParser?.parseExpression();t&&t!==e&&this.eAutocomplete.setValue({value:t,silent:!0,restoreFocus:!0})}onValueConfirmed(e){!e||this.isApplyDisabled||(ht(this.eApplyFilterButton,!0),this.advancedFilter.applyExpression(),this.filterManager?.onFilterChanged({source:"advancedFilter"}))}onOptionSelected(e,t,s){const{updatedValue:i,updatedPosition:r,hideAutocomplete:a}=this.updateExpression(e,t,s);this.eAutocomplete.setValue({value:i,position:r,updateListOnlyIfOpen:a,restoreFocus:!0})}validateValue(){return this.expressionParser?.isValid()?null:this.expressionParser?.getValidationMessage()??null}onValidChanged(e,t){this.isApplyDisabled=!e||this.advancedFilter.isCurrentExpressionApplied(),ht(this.eApplyFilterButton,this.isApplyDisabled),this.tooltipFeature?.setTooltipAndRefresh(t)}generateAutocompleteListParams(e){return this.expressionParser?this.expressionParser.getAutocompleteListParams(e):this.advFilterExpSvc.getDefaultAutocompleteListParams("")}updateExpression(e,t,s){return this.advFilterExpSvc.updateAutocompleteCache(t,s),this.expressionParser?.updateExpression(e,t,s)??this.advancedFilter.getDefaultExpression(t)}forceLastSelection({key:e,displayValue:t},s){return!!s.toLocaleLowerCase().match(`^${(t??e).toLocaleLowerCase()}\\s*$`)}openBuilder(){this.builderOpen||(this.builderOpen=!0,ht(this.eBuilderFilterButton,!0),this.advancedFilter.getCtrl().toggleFilterBuilder({source:"ui",eventSource:this.eBuilderFilterButton}))}closeBuilder(){this.builderOpen&&(this.builderOpen=!1,ht(this.eBuilderFilterButton,!1),this.eBuilderFilterButton.focus())}};import{Component as Jf,KeyCode as Ot,_clearElement as Qf,_findNextFocusableElement as eC,_focusInto as tC,_getActiveDomElement as sC,_getFloatingFiltersHeight as iC,_setAriaColIndex as rC,_setAriaColSpan as aC,_setAriaRole as nC,_setAriaRowIndex as oC,_setDisplayed as lC}from"ag-grid-community";var cC={tag:"div",cls:"ag-advanced-filter-header",role:"row"},dC=class extends Jf{constructor(e){super(cC),this.enabled=e}wireBeans(e){this.colModel=e.colModel,this.focusSvc=e.focusSvc,this.ctrlsSvc=e.ctrlsSvc}postConstruct(){this.setupAdvancedFilter(this.enabled),this.addDestroyFunc(()=>this.destroyBean(this.eAdvancedFilter));const e=()=>{this.enabled&&this.setEnabledHeight()};this.addManagedEventListeners({gridColumnsChanged:()=>this.onGridColumnsChanged(),columnHeaderHeightChanged:e,gridStylesChanged:e}),this.addManagedPropertyListener("headerHeight",e),this.addManagedPropertyListener("floatingFiltersHeight",e),this.addGuiEventListener("keydown",t=>this.onKeyDown(t)),this.addGuiEventListener("focusout",t=>{this.getFocusableElement().contains(t.relatedTarget)||this.focusSvc.clearAdvancedFilterColumn()})}getFocusableElement(){return this.eAdvancedFilter?.getGui()??this.getGui()}setEnabled(e){e!==this.enabled&&this.setupAdvancedFilter(e)}refresh(){this.eAdvancedFilter?.refresh()}getHeight(){return this.height}setInputDisabled(e){this.eAdvancedFilter?.setInputDisabled(e)}setupAdvancedFilter(e){const t=this.getGui();if(e){this.eAdvancedFilter=this.createBean(new wn);const s=this.eAdvancedFilter.getGui();this.eAdvancedFilter.addCssClass("ag-advanced-filter-header-cell"),this.setEnabledHeight(),this.setAriaRowIndex(),nC(s,"gridcell"),rC(s,1),this.setAriaColumnCount(s),t.appendChild(s)}else Qf(t),this.destroyBean(this.eAdvancedFilter),this.height=0;lC(t,e),this.enabled=e}setEnabledHeight(){const e=this.getGui();this.height=iC(this.beans);const t=`${this.height}px`;e.style.height=t,e.style.minHeight=t}setAriaColumnCount(e){aC(e,this.colModel.getCols().length)}setAriaRowIndex(){oC(this.getGui(),this.ctrlsSvc.getHeaderRowContainerCtrl()?.getRowCount()??0)}onGridColumnsChanged(){this.eAdvancedFilter&&(this.setAriaColumnCount(this.eAdvancedFilter.getGui()),this.setAriaRowIndex())}onKeyDown(e){switch(e.key){case Ot.ENTER:{this.hasFocus()&&tC(this.getFocusableElement())&&e.preventDefault();break}case Ot.ESCAPE:this.hasFocus()||this.getFocusableElement().focus();break;case Ot.UP:this.navigateUpDown(!0,e);break;case Ot.DOWN:this.navigateUpDown(!1,e);break;case Ot.TAB:if(this.hasFocus())this.navigateLeftRight(e);else{const t=eC(this.beans,this.getFocusableElement(),null,e.shiftKey);t?(e.preventDefault(),t.focus()):this.navigateLeftRight(e)}break}}navigateUpDown(e,t){this.hasFocus()&&this.focusSvc.focusNextFromAdvancedFilter(e)&&t.preventDefault()}navigateLeftRight(e){(e.shiftKey?this.focusSvc.focusLastHeader():this.focusSvc.focusNextFromAdvancedFilter(!1,!0))&&e.preventDefault()}hasFocus(){return sC(this.beans)===this.getFocusableElement()}};import{Component as hC,RefPlaceholder as $i,_exists as uC,_setDisabled as pC}from"ag-grid-community";import{BeanStub as gC,DragSourceType as mC}from"ag-grid-community";import{AutoScrollService as fC,BeanStub as CC,_radioCssClass as xn}from"ag-grid-community";var Yi="ag-list-item-hovered",Mn=class extends CC{constructor(e,t,s){super(),this.comp=e,this.virtualList=t,this.params=s,this.currentDragValue=null,this.lastHoveredListItem=null}wireBeans(e){this.dragAndDrop=e.dragAndDrop}postConstruct(){this.addManagedListeners(this.params.eventSource,{[this.params.listItemDragStartEvent]:this.listItemDragStart.bind(this),[this.params.listItemDragEndEvent]:this.listItemDragEnd.bind(this)}),this.createDropTarget(),this.createAutoScrollService()}listItemDragStart(e){this.currentDragValue=this.params.getCurrentDragValue(e),this.moveBlocked=this.params.isMoveBlocked(this.currentDragValue)}listItemDragEnd(){window.setTimeout(()=>{this.currentDragValue=null,this.moveBlocked=!1},10)}createDropTarget(){const e={isInterestedIn:t=>t===this.params.dragSourceType,getIconName:()=>this.moveBlocked?"pinned":"move",getContainer:()=>this.comp.getGui(),onDragging:t=>this.onDragging(t),onDragStop:()=>this.onDragStop(),onDragLeave:()=>this.onDragLeave(),onDragCancel:()=>this.onDragCancel()};this.dragAndDrop?.addDropTarget(e)}createAutoScrollService(){const e=this.virtualList.getGui();this.autoScrollService=new fC({scrollContainer:e,scrollAxis:"y",getVerticalPosition:()=>e.scrollTop,setVerticalPosition:t=>e.scrollTop=t})}onDragging(e){if(!this.currentDragValue||this.moveBlocked)return;const t=this.getListDragItem(e),s=this.virtualList.getComponentAt(t.rowIndex);if(!s)return;const i=s.getGui().parentElement;this.lastHoveredListItem&&this.lastHoveredListItem.rowIndex===t.rowIndex&&this.lastHoveredListItem.position===t.position||(this.autoScrollService.check(e.event),this.clearHoveredItems(),this.lastHoveredListItem=t,xn(i,Yi),xn(i,`ag-item-highlight-${t.position}`))}getListDragItem(e){const t=this.virtualList.getGui(),s=parseFloat(window.getComputedStyle(t).paddingTop),i=this.virtualList.getRowHeight(),r=this.virtualList.getScrollTop(),a=Math.max(0,(e.y-s+r)/i),n=this.params.getNumRows(this.comp)-1,o=Math.min(n,a)|0;return{rowIndex:o,position:Math.round(a)>a||a>n?"bottom":"top",component:this.virtualList.getComponentAt(o)}}onDragStop(){this.moveBlocked||(this.params.moveItem(this.currentDragValue,this.lastHoveredListItem),this.clearDragProperties())}onDragCancel(){this.clearDragProperties()}onDragLeave(){this.clearDragProperties()}clearDragProperties(){this.clearHoveredItems(),this.autoScrollService.ensureCleared()}clearHoveredItems(){this.virtualList.getGui().querySelectorAll(`.${Yi}`).forEach(t=>{[Yi,"ag-item-highlight-top","ag-item-highlight-bottom"].forEach(s=>{t.classList.remove(s)})}),this.lastHoveredListItem=null}},vC=class extends gC{constructor(e,t){super(),this.comp=e,this.virtualList=t}postConstruct(){this.createManagedBean(new Mn(this.comp,this.virtualList,{dragSourceType:mC.AdvancedFilterBuilder,listItemDragStartEvent:"advancedFilterBuilderDragStarted",listItemDragEndEvent:"advancedFilterBuilderDragEnded",eventSource:this,getCurrentDragValue:e=>this.getCurrentDragValue(e),isMoveBlocked:()=>!1,getNumRows:e=>e.getNumItems(),moveItem:(e,t)=>this.moveItem(e,t)}))}getCurrentDragValue(e){return e.item}moveItem(e,t){this.comp.moveItem(e,t)}};import{Component as yC,RefPlaceholder as SC,_setAriaLabel as bC,_setAriaLevel as wC}from"ag-grid-community";import{AgInputTextFieldSelector as xC,_setAriaLabel as MC,_setAriaLabelledBy as TC,_setDisplayed as FC,_stopPropagationForAgGrid as PC}from"ag-grid-community";import{AgInputTextFieldSelector as AC,AgPickerField as RC,KeyCode as Z,RefPlaceholder as Tn,_addGridCommonParams as EC,_clearElement as Xi,_createIconNoSpan as IC,_debounce as DC,_escapeString as LC,_exists as Fn,_fuzzySuggestions as kC,_getActiveDomElement as GC,_getEditorRendererDetails as OC,_isEventFromPrintableCharacter as NC,_isVisible as BC,_setAriaActiveDescendant as _C,_shouldDisplayTooltip as VC,_stopPropagationForAgGrid as HC}from"ag-grid-community";import{Component as zC,KeyCode as pt,_clearElement as UC,_findFocusableElements as KC,_findNextFocusableElement as WC,_getActiveDomElement as Pn,_getDocument as jC,_setAriaPosInSet as $C,_setAriaRole as YC,_setAriaSetSize as XC}from"ag-grid-community";import{RefPlaceholder as An}from"ag-grid-community";import{Component as qC}from"ag-grid-community";var ZC={tag:"div",cls:"ag-pill",role:"option",children:[{tag:"span",ref:"eText",cls:"ag-pill-text"},{tag:"span",ref:"eButton",cls:"ag-button ag-pill-button",role:"presentation"}]},JC=class extends qC{constructor(e){super(ZC),this.config=e,this.eText=An,this.eButton=An}postConstruct(){const{config:e,eButton:t}=this,{onKeyDown:s,onButtonClick:i}=e;this.getGui().setAttribute("tabindex",String(this.gos.get("tabIndex"))),this.addGuiEventListener("focus",()=>{this.eButton.focus()}),s&&this.addGuiEventListener("keydown",s),i&&this.addManagedElementListeners(t,{click:i})}toggleCloseButtonClass(e,t){this.eButton.classList.toggle(e,t)}setText(e){this.eText.textContent=e}getText(){return this.eText.textContent}},QC={tag:"div",cls:"ag-pill-container"},ev=class extends zC{constructor(){super(QC),this.pills=[]}init(e){this.params=e,this.refresh()}refresh(){this.clearPills();const{params:e,onPillKeyDown:t}=this;let s=e.getValue();if(!Array.isArray(s)){if(s==null)return;s=[s]}const i=e.valueFormatter??(a=>String(a)),r=s.length;YC(this.getGui(),r===0?"presentation":"listbox");for(let a=0;a<r;a++){const n=s[a],o=this.createBean(new JC({onButtonClick:()=>this.onPillButtonClick(o),onKeyDown:t.bind(this)})),l=o.getGui();$C(l,a+1),XC(l,r),e.onPillMouseDown&&o.addGuiEventListener("mousedown",e.onPillMouseDown),e.announceItemFocus&&o.addGuiEventListener("focus",e.announceItemFocus),o.setText(i(n)??""),o.toggleCloseButtonClass("ag-icon-cancel",!0),this.appendChild(l),this.pills.push(o)}}onNavigationKeyDown(e){const{key:t}=e;if(!this.pills.length||t!==pt.LEFT&&t!==pt.RIGHT)return;e.preventDefault();const{params:s,beans:i}=this,r=Pn(i),a=this.getGui();if(a.contains(r)){const n=WC(i,a,!1,t===pt.LEFT);n?n.focus():s.eWrapper&&s.eWrapper.focus()}else{const n=KC(a);n.length>0&&n[t===pt.RIGHT?0:n.length-1].focus()}}clearPills(){const e=this.getGui();e.contains(Pn(this.beans))&&this.params.eWrapper&&this.params.eWrapper.focus(),UC(e),this.destroyBeans(this.pills),this.pills=[]}onPillButtonClick(e){this.deletePill(e)}onPillKeyDown(e){const t=e.key;if(t!==pt.DELETE&&t!==pt.BACKSPACE)return;e.preventDefault();const s=jC(this.beans),i=this.pills.findIndex(a=>a.getGui().contains(s.activeElement));if(i===-1)return;const r=this.pills[i];r&&this.deletePill(r,i)}deletePill(e,t){const s=e.getText(),i=(this.params.getValue()||[]).filter(r=>r!==s);if(this.params.setValue(i),!i.length&&this.params.eWrapper)this.params.eWrapper.focus();else if(t!=null){const r=this.pills[Math.min(t,this.pills.length-1)];r&&r.getFocusableElement().focus()}}destroy(){this.clearPills(),super.destroy()}},tv=".ag-rich-select{cursor:default;height:100%}.ag-rich-select-value{align-items:center;background-color:var(--ag-picker-button-background-color);display:flex;height:100%;padding:var(--ag-spacing);:where(.ag-picker-field-display){overflow:hidden;text-overflow:ellipsis;&:where(.ag-display-as-placeholder){opacity:.5}}}.ag-rich-select-list{background-color:var(--ag-picker-list-background-color);border:var(--ag-picker-list-border);border-radius:var(--ag-input-border-radius);box-shadow:var(--ag-dropdown-shadow);height:auto;position:relative;width:100%;:where(.ag-loading-text){padding:var(--ag-widget-container-vertical-padding) var(--ag-widget-container-horizontal-padding)}}.ag-rich-select-row{align-items:center;display:flex;flex:1 1 auto;height:100%;overflow:hidden;padding:0 var(--ag-spacing);white-space:nowrap}.ag-rich-select-row-selected{background-color:var(--ag-selected-row-background-color)}.ag-rich-select-row-highlighted,.ag-rich-select-row:hover{background-image:linear-gradient(var(--ag-row-hover-color),var(--ag-row-hover-color))}.ag-rich-select-row-text-highlight{font-weight:700}.ag-rich-select-field-input{flex:1 1 auto;:where(.ag-input-field-input){border:none!important;box-shadow:none!important;padding:0!important;text-overflow:ellipsis;&::-moz-placeholder{opacity:.8}&::placeholder{opacity:.8}}}:where(.ag-ltr) .ag-rich-select-field-input{left:var(--ag-spacing)}:where(.ag-rtl) .ag-rich-select-field-input{right:var(--ag-spacing)}:where(.ag-popup-editor) .ag-rich-select-value{height:var(--ag-row-height);min-width:200px}.ag-rich-select-virtual-list-item{cursor:default;height:var(--ag-list-item-height)}.ag-pill-container{display:flex;flex-wrap:nowrap;gap:.25rem}.ag-pill{align-items:center;background:var(--ag-select-cell-background-color);border:var(--ag-select-cell-border);border-radius:var(--ag-border-radius);display:flex;padding:0 .25rem;white-space:nowrap}.ag-pill-button{border:none;padding:0;&:hover{color:var(--ag-accent-color);cursor:pointer}}:where(.ag-ltr) .ag-pill-button{margin-left:var(--ag-spacing)}:where(.ag-rtl) .ag-pill-button{margin-right:var(--ag-spacing)}";import{KeyCode as sv,_getDocument as iv,_requestAnimationFrame as Rn,_setAriaActiveDescendant as rv,_setAriaControls as av,_setAriaLabel as nv}from"ag-grid-community";import{Component as ov,_addGridCommonParams as lv,_escapeString as Es,_exists as Nt,_getDocument as cv,_getEditorRendererDetails as dv,_setAriaSelected as hv,_shouldDisplayTooltip as uv}from"ag-grid-community";var pv={tag:"div",cls:"ag-rich-select-row",role:"presentation"},gv=class extends ov{constructor(e){super(pv),this.params=e}wireBeans(e){this.userCompFactory=e.userCompFactory,this.registry=e.registry}postConstruct(){this.tooltipFeature=this.createOptionalManagedBean(this.registry.createDynamicBean("tooltipFeature",!1,{getGui:()=>this.getGui(),shouldDisplayTooltip:()=>this.shouldDisplayTooltip?.()??!0}))}setState(e){const{params:t}=this,s=t.valueFormatter?.(e)??"";this.populateWithRenderer(e,s)||this.populateWithoutRenderer(e,s),this.value=e}highlightString(e){const{parsedValue:t}=this;if(this.params.cellRenderer||!Nt(t))return;let s=Nt(e);if(s){const i=t?.toLocaleLowerCase().indexOf(e.toLocaleLowerCase());if(i>=0){const r=i+e.length,a=Es(t.slice(0,i),!0),n=Es(t.slice(i,r),!0),o=Es(t.slice(r));this.renderValueWithoutRenderer(`${a}<span class="ag-rich-select-row-text-highlight">${n}</span>${o}`)}else s=!1}s||this.renderValueWithoutRenderer(t)}updateSelected(e){const t=this.getGui();hv(t.parentElement,e),this.addOrRemoveCssClass("ag-rich-select-row-selected",e)}getValue(){return this.value}toggleHighlighted(e){this.addOrRemoveCssClass("ag-rich-select-row-highlighted",e)}populateWithoutRenderer(e,t){const s=cv(this.beans),i=this.getGui(),r=s.createElement("span");r.style.overflow="hidden",r.style.textOverflow="ellipsis";const a=Es(Nt(t)?t:e,!0);this.parsedValue=Nt(a)?a:null,i.appendChild(r),this.renderValueWithoutRenderer(a),this.shouldDisplayTooltip=uv(()=>r),this.tooltipFeature?.setTooltipAndRefresh(this.parsedValue)}renderValueWithoutRenderer(e){const t=this.getGui().querySelector("span");t&&(t.innerHTML=Nt(e)?e:" ")}populateWithRenderer(e,t){let s,i;if(this.params.cellRenderer){const r=this.getParentComponent()?.getParentComponent();i=dv(this.userCompFactory,this.params,lv(this.gos,{value:e,valueFormatted:t,getValue:()=>r?.getValue(),setValue:a=>{r?.setValue(a,!0)},setTooltip:(a,n)=>{this.gos.assertModuleRegistered("Tooltip",3),this.shouldDisplayTooltip=n,this.tooltipFeature?.setTooltipAndRefresh(a)}}))}return i&&(s=i.newAgStackInstance()),s&&Dn(s,this.getGui()),s?(s.then(r=>{this.addDestroyFunc(()=>{this.destroyBean(r)})}),!0):!1}},En="ag-rich-select-list",In="ag-rich-select-row",mv=class extends ut{constructor(e,t,s){super({cssIdentifier:"rich-select"}),this.params=e,this.richSelectWrapper=t,this.getSearchString=s,this.lastRowHovered=-1,this.selectedItems=new Set,this.params=e,this.setComponentCreator(this.createRowComponent.bind(this)),this.setComponentUpdater(()=>{})}postConstruct(){super.postConstruct(),this.createLoadingElement();const{cellRowHeight:e,pickerAriaLabelKey:t,pickerAriaLabelValue:s}=this.params;e&&this.setRowHeight(e);const i=this.getGui(),r=this.getAriaElement();this.addManagedListeners(i,{mousemove:this.onMouseMove.bind(this),mouseout:this.onMouseOut.bind(this),mousedown:this.onMouseDown.bind(this),click:this.onClick.bind(this)}),i.classList.add(En);const a=`${En}-${this.getCompId()}`;r.setAttribute("id",a);const o=this.getLocaleTextFunc()(t,s);nv(r,o),av(this.richSelectWrapper,r)}navigateToPage(e){const t=super.navigateToPage(e,this.lastRowHovered);return t!=null&&Rn(this.beans,()=>{if(!this.isAlive())return null;this.highlightIndex(t)}),t}drawVirtualRows(e){super.drawVirtualRows(e),this.refreshSelectedItems()}highlightFilterMatch(e){this.forEachRenderedRow(t=>{t.highlightString(e)})}onNavigationKeyDown(e,t){Rn(this.beans,()=>{if(!this.currentList||!this.isAlive())return;const s=this.currentList.length,i=this.lastRowHovered,r=e===sv.DOWN?1:-1,a=Math.min(Math.max(i===-1?0:i+r,0),s-1);this.highlightIndex(a),t()})}selectValue(e){if(!this.currentList)return this.eLoading&&this.appendChild(this.eLoading),!1;if(this.eLoading?.offsetParent&&this.eLoading.parentElement?.removeChild(this.eLoading),e==null)return!1;const t=this.getIndicesForValues(e),s=t.length>0;return s&&(this.refresh(),this.ensureIndexVisible(t[0]),this.refresh(!0)),this.selectListItems(Array.isArray(e)?e:[e]),s}selectListItems(e,t=!1){t||this.selectedItems.clear();for(let s=0;s<e.length;s++){const i=e[s];this.findItemInSelected(i)===void 0&&this.selectedItems.add(i)}this.refreshSelectedItems()}getCurrentList(){return this.currentList}setCurrentList(e){this.currentList=e,this.setModel({getRowCount:()=>e.length,getRow:t=>e[t],areRowsEqual:(t,s)=>t===s})}getSelectedItems(){return this.selectedItems}getLastItemHovered(){return this.currentList[this.lastRowHovered]}highlightIndex(e,t){this.currentList&&(e<0||e>=this.currentList.length?this.lastRowHovered=-1:(this.lastRowHovered=e,this.ensureIndexVisible(e,!t)&&!t&&this.refresh(!0)),this.forEachRenderedRow((s,i)=>{const r=e===i;if(s.toggleHighlighted(r),r){const a=`${In}-${s.getCompId()}`;rv(this.richSelectWrapper,a),this.richSelectWrapper.setAttribute("data-active-option",a)}}))}getIndicesForValues(e){const{currentList:t}=this;if(!t||t.length===0||e==null)return[];if(Array.isArray(e)||(e=[e]),e.length===0)return[];const{valueFormatter:s}=this.params,i=[],r=typeof e[0]=="object",a=t.map(s);for(const n of e){let o=-1;r?o=a.indexOf(s(n)):o=t.indexOf(n),o>=0&&i.push(o)}return i}toggleListItemSelection(e){const t=this.findItemInSelected(e);t!==void 0?this.selectedItems.delete(t):this.selectedItems.add(e),this.refreshSelectedItems(),this.dispatchValueSelected()}refreshSelectedItems(){this.forEachRenderedRow(e=>{const t=this.findItemInSelected(e.getValue())!==void 0;e.updateSelected(t)})}findItemInSelected(e){if(typeof e=="object"){const t=this.params.valueFormatter,s=t(e);for(const i of this.selectedItems)if(t(i)===s)return i}else return this.selectedItems.has(e)?e:void 0}createLoadingElement(){const e=iv(this.beans),t=this.getLocaleTextFunc(),s=e.createElement("div");s.classList.add("ag-loading-text"),s.innerText=t("loadingOoo","Loading..."),this.eLoading=s}createRowComponent(e,t){const s=new gv(this.params);t.setAttribute("id",`${In}-${s.getCompId()}`),s.setParentComponent(this),this.createBean(s),s.setState(e);const{highlightMatch:i,searchType:r="fuzzy"}=this.params;return i&&r!=="fuzzy"&&s.highlightString(this.getSearchString()),s}getRowForMouseEvent(e){const s=this.getGui().getBoundingClientRect(),i=this.getScrollTop(),r=e.clientY-s.top+i;return Math.min(Math.floor(r/this.getRowHeight()),this.model.getRowCount()-1)}onMouseMove(e){const t=this.getRowForMouseEvent(e);t!==-1&&t!=this.lastRowHovered&&(this.lastRowHovered=t,this.highlightIndex(t,!0))}onMouseDown(e){e.preventDefault()}onMouseOut(e){this.getGui().contains(e.relatedTarget)||this.highlightIndex(-1)}onClick(e){const{multiSelect:t}=this.params;if(!this.currentList)return;const s=this.getRowForMouseEvent(e),i=this.currentList[s];t?this.toggleListItemSelection(i):(this.selectListItems([i]),this.dispatchValueSelected())}dispatchValueSelected(){this.dispatchLocalEvent({type:"richSelectListRowSelected",fromEnterKey:!1,value:this.selectedItems})}destroy(){super.destroy(),this.eLoading=void 0}},fv={tag:"div",cls:"ag-picker-field",role:"presentation",children:[{tag:"div",ref:"eLabel"},{tag:"div",ref:"eWrapper",cls:"ag-wrapper ag-picker-field-wrapper ag-rich-select-value ag-picker-collapsed",children:[{tag:"span",ref:"eDisplayField",cls:"ag-picker-field-display"},{tag:"ag-input-text-field",ref:"eInput",cls:"ag-rich-select-field-input"},{tag:"span",ref:"eDeselect",cls:"ag-rich-select-deselect-button ag-picker-field-icon",role:"presentation"},{tag:"span",ref:"eIcon",cls:"ag-picker-field-icon",attrs:{"aria-hidden":"true"}}]}]},qi=class extends RC{constructor(e){super({pickerAriaLabelKey:"ariaLabelRichSelectField",pickerAriaLabelValue:"Rich Select Field",pickerType:"ag-list",className:"ag-rich-select",pickerIcon:"richSelectOpen",ariaRole:"combobox",template:e?.template??fv,agComponents:[AC],modalPicker:!1,...e,maxPickerHeight:e?.maxPickerHeight??"calc(var(--ag-row-height) * 6.5)"}),this.searchString="",this.searchStringCreator=null,this.eInput=Tn,this.eDeselect=Tn,this.skipWrapperAnnouncement=!1;const{value:t,valueList:s,searchStringCreator:i}=e||{};t!==void 0&&(this.value=t),i&&(this.searchStringCreator=i),s!=null&&this.setValues(s),this.registerCSS(tv)}wireBeans(e){this.userCompFactory=e.userCompFactory,this.ariaAnnounce=e.ariaAnnounce,this.registry=e.registry}postConstruct(){this.tooltipFeature=this.createOptionalManagedBean(this.registry.createDynamicBean("tooltipFeature",!1,{getGui:()=>this.getGui(),shouldDisplayTooltip:()=>this.shouldDisplayTooltip?.()??!0})),super.postConstruct(),this.createListComponent(),this.eDeselect.appendChild(IC("richSelectRemove",this.beans));const{allowTyping:e,placeholder:t,suppressDeselectAll:s}=this.config;this.eDeselect.classList.add("ag-hidden"),e?(this.eInput.setAutoComplete(!1).setInputPlaceholder(t),this.eDisplayField.classList.add("ag-hidden")):this.eInput.setDisplayed(!1),this.setupAriaProperties();const{searchDebounceDelay:i=300}=this.config;this.clearSearchString=DC(this,this.clearSearchString.bind(this),i),this.renderSelectedValue(),e&&this.eInput.onValueChange(r=>this.searchTextFromString(r)),this.addManagedElementListeners(this.eWrapper,{focus:this.onWrapperFocus.bind(this)}),this.addManagedElementListeners(this.eWrapper,{focusout:this.onWrapperFocusOut.bind(this)}),s||this.addManagedElementListeners(this.eDeselect,{mousedown:this.onDeselectAllMouseDown.bind(this),click:this.onDeselectAllClick.bind(this)})}setupAriaProperties(){const{eWrapper:e,gos:t}=this;e.tabIndex=t.get("tabIndex");const s=this.getLocaleTextFunc();this.ariaDeleteSelection=s("ariaLabelRichSelectDeleteSelection","Press DELETE to deselect item"),this.ariaDeselectAllItems=s("ariaLabelRichSelectDeselectAllItems","Press DELETE to deselect all items"),this.ariaToggleSelection=s("ariaLabelRichSelectToggleSelection","Press SPACE to toggle selection")}createListComponent(){this.listComponent=this.createBean(new mv(this.config,this.eWrapper,()=>this.searchString)),this.listComponent.setParentComponent(this),this.addManagedListeners(this.listComponent,{richSelectListRowSelected:e=>{this.onListValueSelected(e.value,e.fromEnterKey)}})}renderSelectedValue(){const{value:e,eDisplayField:t,config:s,gos:i}=this,{allowTyping:r,cellRenderer:a,initialInputValue:n,multiSelect:o,suppressDeselectAll:l,suppressMultiSelectPillRenderer:c}=s,d=s.valueFormatter?.(e)??String(e);if(r){this.eInput.setValue(n??d);return}if(o&&!l){const p=e==null||Array.isArray(e)&&e.length===0;this.eDeselect.classList.toggle("ag-hidden",p)}let h;if(o&&!c){this.createOrUpdatePillContainer(t);return}a&&(h=OC(this.userCompFactory,s,EC(this.gos,{value:e,valueFormatted:d,getValue:()=>this.getValue(),setValue:p=>{this.setValue(p,!0)},setTooltip:(p,g)=>{i.assertModuleRegistered("Tooltip",3),this.shouldDisplayTooltip=g,this.tooltipFeature?.setTooltipAndRefresh(p)}})));let u;if(h&&(u=h.newAgStackInstance()),u)Xi(t),Dn(u,t),u.then(p=>{this.addDestroyFunc(()=>this.destroyBean(p))});else{if(Fn(this.value))t.innerText=d,t.classList.remove("ag-display-as-placeholder");else{const{placeholder:p}=s;Fn(p)?(t.innerHTML=`${LC(p)}`,t.classList.add("ag-display-as-placeholder")):Xi(t)}this.shouldDisplayTooltip=VC(()=>this.eDisplayField),this.tooltipFeature?.setTooltipAndRefresh(d??null)}}createPickerComponent(){const{values:e}=this;return e&&this.setValueList({valueList:e}),this.listComponent}setSearchStringCreator(e){this.searchStringCreator=e}setValueList(e){const{valueList:t,refresh:s}=e;!this.listComponent||this.listComponent.getCurrentList()===t||(this.listComponent.setCurrentList(t),s&&(this.values?this.listComponent.refresh(!0):(this.setValues(t),this.isPickerDisplayed&&(this.listComponent.selectValue(this.value)||this.listComponent.refresh())),this.alignPickerToComponent()))}setValues(e){this.values=e,this.searchStrings=this.getSearchStringsFromValues(e)}showPicker(){super.showPicker();const{listComponent:e,value:t}=this;if(!e)return;let s=null;e.selectValue(this.value),this.value!=null&&(s=e.getIndicesForValues(Array.isArray(t)?t:[t])[0]),s!=null?e.highlightIndex(s):e.refresh(),this.displayOrHidePicker()}beforeHidePicker(){super.beforeHidePicker()}createOrUpdatePillContainer(e){if(!this.pillContainer){const t=this.pillContainer=this.createBean(new ev);this.addDestroyFunc(()=>{this.destroyBean(this.pillContainer),this.pillContainer=null}),Xi(e),e.appendChild(t.getGui());const{config:s,eWrapper:i,ariaDeleteSelection:r}=this,{valueFormatter:a}=s;t.init({eWrapper:i,valueFormatter:a,onPillMouseDown:n=>{n.stopImmediatePropagation()},announceItemFocus:()=>{this.announceAriaValue(r)},getValue:()=>this.getValue(),setValue:n=>this.setValue(n,!0)})}this.doWhileBlockingAnnouncement(()=>this.pillContainer?.refresh())}doWhileBlockingAnnouncement(e){this.skipWrapperAnnouncement=!0,e(),this.skipWrapperAnnouncement=!1}onWrapperFocus(){const{eInput:e,config:t}=this,{allowTyping:s,multiSelect:i,suppressDeselectAll:r}=t;if(s){const a=e.getFocusableElement();a.focus(),a.select()}else i&&!r&&!this.skipWrapperAnnouncement&&this.announceAriaValue(this.ariaDeselectAllItems)}onWrapperFocusOut(e){this.eWrapper.contains(e.relatedTarget)||this.hidePicker()}onDeselectAllMouseDown(e){e.stopImmediatePropagation()}onDeselectAllClick(){this.setValue([],!0)}buildSearchStringFromKeyboardEvent(e){let{key:t}=e;if(t===Z.BACKSPACE)this.searchString=this.searchString.slice(0,-1),t="";else if(!NC(e))return;e.preventDefault(),this.searchTextFromCharacter(t)}searchTextFromCharacter(e){this.searchString+=e,this.runSearch(),this.clearSearchString()}searchTextFromString(e){e==null&&(e=""),this.searchString=e,this.runSearch()}getSearchStringsFromValues(e){const{config:t}=this,{valueFormatter:s=i=>String(i)}=t;return typeof e[0]=="object"&&this.searchStringCreator?this.searchStringCreator(e):e.map(i=>s(i))}filterListModel(e){const{filterList:t}=this.config;t&&this.setValueList({valueList:e,refresh:!0})}runSearch(){if(!this.listComponent)return;const{values:e}=this,t=this.searchStrings;if(!t){this.listComponent.highlightIndex(-1);return}const{suggestions:s,filteredValues:i}=this.getSuggestionsAndFilteredValues(this.searchString,t),{filterList:r,highlightMatch:a,searchType:n="fuzzy"}=this.config,o=!!(r&&this.searchString!=="");this.filterListModel(o?i:e),this.highlightEmptyValue()||this.highlightListValue(s,i,o),a&&n!=="fuzzy"&&this.listComponent?.highlightFilterMatch(this.searchString),this.displayOrHidePicker()}highlightEmptyValue(){if(this.searchString===""){const e=this.searchStrings?.indexOf("");if(e!==void 0&&e!==-1)return this.listComponent?.highlightIndex(e),!0}return!1}highlightListValue(e,t,s){if(e.length){const i=s?0:this.searchStrings?.indexOf(e[0]);i!==void 0&&this.listComponent?.highlightIndex(i)}else if(this.listComponent?.highlightIndex(-1),!s||t.length)this.listComponent?.ensureIndexVisible(0);else if(s){this.getAriaElement().removeAttribute("data-active-option");const i=this.listComponent?.getAriaElement();i&&_C(i,null)}}getSuggestionsAndFilteredValues(e,t){let s=[];const i=[];if(!e.length)return{suggestions:s,filteredValues:i};const{searchType:r="fuzzy",filterList:a}=this.config;if(r==="fuzzy"){const n=kC({inputValue:e,allSuggestions:t,hideIrrelevant:!0});s=n.values;const o=n.indices;if(a&&o.length)for(let l=0;l<o.length;l++)i.push(this.values[o[l]])}else s=t.filter((n,o)=>{const l=n.toLocaleLowerCase(),c=this.searchString.toLocaleLowerCase(),d=r==="match"?l.startsWith(c):l.indexOf(c)!==-1;return a&&d&&i.push(this.values[o]),d});return{suggestions:s,filteredValues:i}}displayOrHidePicker(){if(!this.listComponent)return;const e=this.listComponent.getGui(),t=this.listComponent.getCurrentList(),s=t?t.length===0:!1;e.classList.toggle("ag-hidden",s)}clearSearchString(){this.searchString=""}setValue(e,t,s,i){if(this.value===e)return this;const r=Array.isArray(e);if(e!=null){if(!r){const a=this.listComponent?.getCurrentList();if((a?a.indexOf(e):-1)===-1)return this}s||this.listComponent?.selectValue(e)}return super.setValue(e,t),i||this.renderSelectedValue(),this}onNavigationKeyDown(e,t,s){e.preventDefault();const i=t===Z.DOWN;if(!this.isPickerDisplayed&&i){this.showPicker();return}this.listComponent?.onNavigationKeyDown(t,s)}onEnterKeyDown(e){if(this.isPickerDisplayed&&(e.preventDefault(),this.listComponent?.getCurrentList())){const t=this.listComponent.getLastItemHovered();this.config.multiSelect||t==null?this.dispatchPickerEventAndHidePicker(this.value,!0):this.onListValueSelected(new Set([t]),!0)}}onDeleteKeyDown(e){const{eWrapper:t,beans:s}=this;GC(s)===t&&(e.preventDefault(),this.setValue([],!0))}onTabKeyDown(){const{config:e,isPickerDisplayed:t,listComponent:s}=this,{multiSelect:i}=e;if(!(!t||!s)){if(i){const r=this.getValueFromSet(s.getSelectedItems());r&&this.setValue(r,!1,!0,!0)}else{const r=s.getLastItemHovered();r&&this.setValue(r,!1,!0)}this.hidePicker()}}getValueFromSet(e){const{multiSelect:t}=this.config;let s=null;for(const i of e){if(e.size===1&&!t){s=i;break}s||(s=[]),s.push(i)}return Array.isArray(s)&&s.sort(),s}onListValueSelected(e,t){const s=this.getValueFromSet(e);this.setValue(s,!1,!0),this.config.multiSelect||this.dispatchPickerEventAndHidePicker(s,t)}dispatchPickerEventAndHidePicker(e,t){const s={type:"fieldPickerValueSelected",fromEnterKey:t,value:e};this.dispatchLocalEvent(s),this.hidePicker()}getFocusableElement(){const{allowTyping:e}=this.config;return e?this.eInput.getFocusableElement():super.getFocusableElement()}onKeyDown(e){const{key:t}=e,{isPickerDisplayed:s,config:i,listComponent:r,pickerComponent:a}=this,{allowTyping:n,multiSelect:o,suppressDeselectAll:l}=i;switch(t){case Z.LEFT:case Z.RIGHT:(!n||this.pillContainer)&&(e.preventDefault(),this.pillContainer&&(this.listComponent?.highlightIndex(-1),this.pillContainer.onNavigationKeyDown(e)));break;case Z.PAGE_HOME:case Z.PAGE_END:if(n){e.preventDefault();const c=this.eInput.getInputElement(),d=t===Z.PAGE_HOME?0:c.value.length;c.setSelectionRange(d,d);break}case Z.PAGE_UP:case Z.PAGE_DOWN:e.preventDefault(),a&&r?.navigateToPage(t);break;case Z.DOWN:case Z.UP:this.onNavigationKeyDown(e,t,()=>{o&&(this.doWhileBlockingAnnouncement(()=>this.eWrapper.focus()),this.announceAriaValue(this.ariaToggleSelection))});break;case Z.ESCAPE:s&&(BC(this.listComponent.getGui())&&(e.preventDefault(),HC(e)),this.hidePicker());break;case Z.ENTER:this.onEnterKeyDown(e);break;case Z.SPACE:if(s&&o&&r){e.preventDefault();const c=r.getLastItemHovered();c&&r.toggleListItemSelection(c)}break;case Z.TAB:this.onTabKeyDown();break;case Z.DELETE:o&&!l&&this.onDeleteKeyDown(e);break;default:n||this.buildSearchStringFromKeyboardEvent(e)}}announceAriaValue(e){this.ariaAnnounce?.announceValue(e,"richSelect")}destroy(){this.listComponent&&(this.listComponent=this.destroyBean(this.listComponent)),this.searchStrings=void 0,super.destroy()}};function Dn(e,t){e.then(s=>{const i=s.getGui();i!=null&&(typeof i=="object"?t.appendChild(i):t.innerHTML=i)})}var Cv={tag:"div",cls:"ag-picker-field",role:"presentation",children:[{tag:"div",ref:"eLabel"},{tag:"div",ref:"eWrapper",cls:"ag-wrapper ag-picker-collapsed",children:[{tag:"div",ref:"eDisplayField",cls:"ag-picker-field-display"},{tag:"ag-input-text-field",ref:"eInput",cls:"ag-rich-select-field-input"},{tag:"span",ref:"eDeselect",cls:"ag-rich-select-deselect-button ag-picker-field-icon",role:"presentation"},{tag:"div",ref:"eIcon",cls:"ag-picker-field-icon",attrs:{"aria-hidden":"true"}}]}]},Ln=class extends qi{constructor(e){super({...e,template:Cv,agComponents:[xC]}),this.params=e}showPicker(){setTimeout(()=>super.showPicker())}hidePicker(){setTimeout(()=>super.hidePicker())}postConstruct(){super.postConstruct();const{wrapperClassName:e,ariaLabel:t}=this.params;FC(this.eDisplayField,!1),e&&this.eWrapper.classList.add(e),TC(this.eWrapper,""),MC(this.eWrapper,t)}onEnterKeyDown(e){PC(e),this.isPickerDisplayed?super.onEnterKeyDown(e):(e.preventDefault(),this.showPicker())}};import{BeanStub as vv,KeyCode as Bt,_getActiveDomElement as kn,_isStopPropagationForAgGrid as Gn,_stopPropagationForAgGrid as Is}from"ag-grid-community";var On=class extends vv{constructor(e,t,s){super(),this.eGui=e,this.focusWrapper=t,this.eFocusableComp=s}postConstruct(){this.addManagedElementListeners(this.eGui,{keydown:t=>{switch(t.key){case Bt.TAB:t.defaultPrevented||Is(t);break;case Bt.UP:case Bt.DOWN:Is(t);break;case Bt.ESCAPE:if(Gn(t))return;this.eGui.contains(kn(this.beans))&&(t.preventDefault(),Is(t),this.focusWrapper.focus());break}}});const e="ag-advanced-filter-builder-virtual-list-item-highlight";this.addManagedListeners(this.focusWrapper,{keydown:t=>{switch(t.key){case Bt.ENTER:if(Gn(t))return;kn(this.beans)===this.focusWrapper&&(t.preventDefault(),Is(t),this.eFocusableComp.getFocusableElement().focus());break}},focusin:()=>{this.focusWrapper.classList.add(e)},focusout:t=>{this.focusWrapper.contains(t.relatedTarget)||this.focusWrapper.classList.remove(e)}})}};function Nn(e,t){return{pickerAriaLabelKey:"ariaLabelAdvancedFilterBuilderAddField",pickerAriaLabelValue:"Advanced Filter Builder Add Field",pickerType:"ag-list",valueList:[{key:"condition",displayValue:e("advancedFilterBuilderAddCondition")},{key:"join",displayValue:e("advancedFilterBuilderAddJoin")}],valueFormatter:s=>s==null?"":s.displayValue??s.key,pickerIcon:"advancedFilterBuilderAdd",maxPickerWidth:`${t??120}px`,wrapperClassName:"ag-advanced-filter-builder-item-button",ariaLabel:e("advancedFilterBuilderAddButtonTooltip")}}var yv={tag:"div",cls:"ag-advanced-filter-builder-item-wrapper",role:"presentation",children:[{tag:"div",ref:"eItem",cls:"ag-advanced-filter-builder-item",role:"presentation",children:[{tag:"div",cls:"ag-advanced-filter-builder-item-tree-lines",attrs:{"aria-hidden":"true"},children:[{tag:"div",cls:"ag-advanced-filter-builder-item-tree-line-vertical-top ag-advanced-filter-builder-item-tree-line-horizontal"}]}]}]},Sv=class extends yC{constructor(e,t){super(yv),this.item=e,this.focusWrapper=t,this.eItem=SC}wireBeans(e){this.advFilterExpSvc=e.advFilterExpSvc,this.registry=e.registry}postConstruct(){wC(this.focusWrapper,2);const e=Nn(s=>this.advFilterExpSvc.translate(s),this.gos.get("advancedFilterBuilderParams")?.addSelectWidth),t=this.createManagedBean(new Ln(e));this.addManagedListeners(t,{fieldPickerValueSelected:({value:s})=>{this.dispatchLocalEvent({type:"advancedFilterBuilderAdded",item:this.item,isJoin:s.key==="join"})}}),this.eItem.appendChild(t.getGui()),this.createOptionalManagedBean(this.registry.createDynamicBean("tooltipFeature",!1,{getGui:()=>t.getGui(),getLocation:()=>"advancedFilter",getTooltipValue:()=>this.advFilterExpSvc.translate("advancedFilterBuilderAddButtonTooltip")})),this.createManagedBean(new On(this.getGui(),this.focusWrapper,t)),bC(this.focusWrapper,this.advFilterExpSvc.translate("ariaAdvancedFilterBuilderItem",[this.advFilterExpSvc.translate("advancedFilterBuilderAddButtonTooltip"),`${this.item.level+1}`]))}afterAdd(){}};import{DragSourceType as bv,KeyCode as Zi,RefPlaceholder as Oe,TabGuardComp as wv,_createElement as Bn,_createIconNoSpan as _t,_removeAriaExpanded as xv,_setAriaDisabled as _n,_setAriaExpanded as Vn,_setAriaLabel as Ds,_setAriaLevel as Mv,_setDisplayed as Ls,_setVisible as Tv,_stopPropagationForAgGrid as Ji}from"ag-grid-community";import{Component as Fv,_exists as Vt,_removeFromParent as Pv,_toStringOrNull as Av}from"ag-grid-community";var Rv=class extends Fv{constructor(){super({tag:"div",cls:"ag-advanced-filter-builder-item-condition",role:"presentation"}),this.validationMessage=null}wireBeans(e){this.advFilterExpSvc=e.advFilterExpSvc}init(e){const{item:t,createPill:s}=e;this.item=t,this.createPill=s,this.filterModel=t.filterModel,this.setupColumnCondition(this.filterModel),this.validate(),this.addDestroyFunc(()=>this.destroyBeans([this.eColumnPill,this.eOperatorPill,this.eOperandPill]))}getDragName(){return this.filterModel.colId?this.advFilterExpSvc.parseColumnFilterModel(this.filterModel):this.getDefaultColumnDisplayValue()}getAriaLabel(){return`${this.advFilterExpSvc.translate("ariaAdvancedFilterBuilderFilterItem")} ${this.getDragName()}`}getValidationMessage(){return this.validationMessage}getFocusableElement(){return this.eColumnPill.getFocusableElement()}setupColumnCondition(e){const t=this.advFilterExpSvc.getColumnDetails(e.colId);this.baseCellDataType=t.baseCellDataType,this.column=t.column,this.numOperands=this.getNumOperands(this.getOperatorKey()),this.eColumnPill=this.createPill({key:this.getColumnKey(),displayValue:this.getColumnDisplayValue()??this.getDefaultColumnDisplayValue(),cssClass:"ag-advanced-filter-builder-column-pill",isSelect:!0,getEditorParams:()=>({values:this.advFilterExpSvc.getColumnAutocompleteEntries()}),update:s=>this.setColumnKey(s),pickerAriaLabelKey:"ariaLabelAdvancedFilterBuilderColumnSelectField",pickerAriaLabelValue:"Advanced Filter Builder Column Select Field",ariaLabel:this.advFilterExpSvc.translate("ariaAdvancedFilterBuilderColumn")}),this.getGui().appendChild(this.eColumnPill.getGui()),Vt(this.getColumnKey())&&(this.createOperatorPill(),this.hasOperand()&&this.createOperandPill())}createOperatorPill(){this.eOperatorPill=this.createPill({key:this.getOperatorKey(),displayValue:this.getOperatorDisplayValue()??this.getDefaultOptionSelectValue(),cssClass:"ag-advanced-filter-builder-option-pill",isSelect:!0,getEditorParams:()=>({values:this.getOperatorAutocompleteEntries()}),update:e=>this.setOperatorKey(e),pickerAriaLabelKey:"ariaLabelAdvancedFilterBuilderOptionSelectField",pickerAriaLabelValue:"Advanced Filter Builder Option Select Field",ariaLabel:this.advFilterExpSvc.translate("ariaAdvancedFilterBuilderOption")}),this.eColumnPill.getGui().insertAdjacentElement("afterend",this.eOperatorPill.getGui())}createOperandPill(){const{filter:e}=this.filterModel,t=(typeof e=="number"?Av(e):e)??"";this.eOperandPill=this.createPill({key:t,valueFormatter:s=>this.advFilterExpSvc.getOperandDisplayValue({...this.filterModel,filter:s},!0),baseCellDataType:this.baseCellDataType,cssClass:"ag-advanced-filter-builder-value-pill",isSelect:!1,update:s=>this.setOperand(s),ariaLabel:this.advFilterExpSvc.translate("ariaAdvancedFilterBuilderValue")}),this.getGui().appendChild(this.eOperandPill.getGui())}getColumnKey(){return this.filterModel.colId}getColumnDisplayValue(){return this.advFilterExpSvc.getColumnDisplayValue(this.filterModel)}getOperatorKey(){return this.filterModel.type}getOperatorDisplayValue(){return this.advFilterExpSvc.getOperatorDisplayValue(this.filterModel)}getOperandDisplayValue(){return this.advFilterExpSvc.getOperandDisplayValue(this.filterModel,!0)}hasOperand(){return this.numOperands>0}getOperatorAutocompleteEntries(){return this.column?this.advFilterExpSvc.getOperatorAutocompleteEntries(this.column,this.baseCellDataType):[]}setColumnKey(e){this.eOperatorPill||this.createOperatorPill();const t=this.advFilterExpSvc.getColumnDetails(e);this.column=t.column;const s=t.baseCellDataType;this.baseCellDataType!==s&&(this.baseCellDataType=s,this.setOperatorKey(void 0),this.eOperatorPill&&(Pv(this.eOperatorPill.getGui()),this.destroyBean(this.eOperatorPill),this.createOperatorPill()),this.validate()),this.filterModel.colId=e,this.filterModel.filterType=this.baseCellDataType}setOperatorKey(e){const t=this.getNumOperands(e);t!==this.numOperands&&(this.numOperands=t,t===0?this.destroyOperandPill():(this.createOperandPill(),this.baseCellDataType!=="number"&&this.setOperand(""))),this.filterModel.type=e,this.validate()}setOperand(e){let t=e;this.baseCellDataType==="number"&&(t=Vt(e)?Number(e):""),this.filterModel.filter=t,this.validate()}getNumOperands(e){return this.advFilterExpSvc.getExpressionOperator(this.baseCellDataType,e)?.numOperands??0}destroyOperandPill(){delete this.filterModel.filter,this.getGui().removeChild(this.eOperandPill.getGui()),this.destroyBean(this.eOperandPill),this.eOperandPill=void 0}validate(){let e=null;Vt(this.getColumnKey())?Vt(this.getOperatorKey())?this.numOperands>0&&!Vt(this.getOperandDisplayValue())&&(e=this.advFilterExpSvc.translate("advancedFilterBuilderValidationEnterValue")):e=this.advFilterExpSvc.translate("advancedFilterBuilderValidationSelectOption"):e=this.advFilterExpSvc.translate("advancedFilterBuilderValidationSelectColumn"),this.item.valid=!e,e!==this.validationMessage&&(this.validationMessage=e,this.dispatchLocalEvent({type:"advancedFilterBuilderValidChanged"}))}getDefaultColumnDisplayValue(){return this.advFilterExpSvc.translate("advancedFilterBuilderSelectColumn")}getDefaultOptionSelectValue(){return this.advFilterExpSvc.translate("advancedFilterBuilderSelectOption")}};import{AgInputDateField as Ev,AgInputNumberField as Iv,AgInputTextField as Dv,Component as Lv,KeyCode as Qi,RefPlaceholder as Hn,_exists as kv,_setAriaDescribedBy as Gv,_setAriaLabel as Ov,_setDisplayed as zn,_stopPropagationForAgGrid as er}from"ag-grid-community";var Nv={tag:"div",cls:"ag-advanced-filter-builder-pill-wrapper",role:"presentation",children:[{tag:"div",ref:"ePill",cls:"ag-advanced-filter-builder-pill",role:"button",children:[{tag:"span",ref:"eLabel",cls:"ag-advanced-filter-builder-pill-display"}]}]},Bv=class extends Lv{constructor(e){super(Nv),this.params=e,this.ePill=Hn,this.eLabel=Hn;const{value:t,valueFormatter:s}=e;this.value=t,this.displayValue=s(t)}wireBeans(e){this.advFilterExpSvc=e.advFilterExpSvc}postConstruct(){const{cssClass:e,ariaLabel:t}=this.params;this.ePill.classList.add(e),this.activateTabIndex([this.ePill]),this.eLabel.id=`${this.getCompId()}`,Gv(this.ePill,this.eLabel.id),Ov(this.ePill,t),this.renderValue(),this.addManagedListeners(this.ePill,{click:s=>{s.preventDefault(),this.showEditor()},keydown:s=>{switch(s.key){case Qi.ENTER:s.preventDefault(),er(s),this.showEditor();break}}}),this.addDestroyFunc(()=>this.destroyBean(this.eEditor))}getFocusableElement(){return this.ePill}showEditor(){if(this.eEditor)return;zn(this.ePill,!1),this.eEditor=this.createEditorComp(this.params.type),this.eEditor.setValue(this.value);const e=this.eEditor.getGui();this.eEditor.addManagedElementListeners(e,{keydown:t=>{switch(t.key){case Qi.ENTER:t.preventDefault(),er(t),this.updateValue(!0);break;case Qi.ESCAPE:t.preventDefault(),er(t),this.hideEditor(!0);break}},focusout:()=>this.updateValue(!1)}),this.getGui().appendChild(e),this.eEditor.getFocusableElement().focus()}createEditorComp(e){let t;switch(e){case"text":t=new Dv;break;case"number":t=new Iv;break;case"date":t=new Ev;break}return this.createBean(t)}hideEditor(e){const{eEditor:t}=this;t&&(this.eEditor=void 0,this.getGui().removeChild(t.getGui()),this.destroyBean(t),zn(this.ePill,!0),e&&this.ePill.focus())}renderValue(){let e;const{displayValue:t,eLabel:s}=this,{classList:i}=s;i.remove("ag-advanced-filter-builder-value-empty","ag-advanced-filter-builder-value-number","ag-advanced-filter-builder-value-text"),kv(t)?this.params.type==="number"?(e=t,i.add("ag-advanced-filter-builder-value-number")):(e=`"${t}"`,i.add("ag-advanced-filter-builder-value-text")):(e=this.advFilterExpSvc.translate("advancedFilterBuilderEnterValue"),i.add("ag-advanced-filter-builder-value-empty")),s.innerText=e}updateValue(e){if(!this.eEditor)return;const t=this.eEditor.getValue()??"";this.dispatchLocalEvent({type:"fieldValueChanged",value:t}),this.value=t,this.displayValue=this.params.valueFormatter(t),this.renderValue(),this.hideEditor(e)}};import{Component as _v}from"ag-grid-community";var Vv=class extends _v{wireBeans(e){this.advFilterExpSvc=e.advFilterExpSvc}constructor(){super({tag:"div",cls:"ag-advanced-filter-builder-item-condition",role:"presentation"})}init(e){const{item:t,createPill:s}=e,i=t.filterModel;this.filterModel=i,this.ePill=s({key:i.type,displayValue:this.advFilterExpSvc.parseJoinOperator(i),cssClass:"ag-advanced-filter-builder-join-pill",isSelect:!0,getEditorParams:()=>({values:this.advFilterExpSvc.getJoinOperatorAutocompleteEntries()}),update:r=>i.type=r,pickerAriaLabelKey:"ariaLabelAdvancedFilterBuilderJoinSelectField",pickerAriaLabelValue:"Advanced Filter Builder Join Operator Select Field",ariaLabel:this.advFilterExpSvc.translate("ariaAdvancedFilterBuilderJoinOperator")}),this.getGui().appendChild(this.ePill.getGui()),this.addDestroyFunc(()=>this.destroyBean(this.ePill))}getDragName(){return this.advFilterExpSvc.parseJoinOperator(this.filterModel)}getAriaLabel(){return`${this.advFilterExpSvc.translate("ariaAdvancedFilterBuilderGroupItem")} ${this.getDragName()}`}getValidationMessage(){return null}getFocusableElement(){return this.ePill.getFocusableElement()}};import{AgInputTextFieldSelector as Hv,_setAriaLabel as zv,_setAriaLabelledBy as Uv,_stopPropagationForAgGrid as Kv}from"ag-grid-community";var Wv={tag:"div",cls:"ag-picker-field ag-advanced-filter-builder-pill-wrapper",role:"presentation",children:[{tag:"div",ref:"eLabel"},{tag:"div",ref:"eWrapper",cls:"ag-wrapper ag-advanced-filter-builder-pill ag-picker-collapsed",children:[{tag:"div",ref:"eDisplayField",cls:"ag-picker-field-display ag-advanced-filter-builder-pill-display"},{tag:"ag-input-text-field",ref:"eInput",cls:"ag-rich-select-field-input"},{tag:"span",ref:"eDeselect",cls:"ag-rich-select-deselect-button ag-picker-field-icon",role:"presentation"},{tag:"div",ref:"eIcon",cls:"ag-picker-field-icon",attrs:{"aria-hidden":"true"}}]}]},jv=class extends qi{constructor(e){super({...e,template:Wv,agComponents:[Hv]}),this.params=e}getFocusableElement(){return this.eWrapper}showPicker(){setTimeout(()=>super.showPicker())}hidePicker(){setTimeout(()=>super.hidePicker())}postConstruct(){super.postConstruct();const{wrapperClassName:e,ariaLabel:t}=this.params;this.eWrapper.classList.add(e),Uv(this.eWrapper,""),zv(this.eWrapper,t)}createPickerComponent(){if(!this.values){const{values:e}=this.params.getEditorParams();this.values=e;const t=this.value.key,s=e.find(i=>i.key===t)??{key:t,displayValue:this.value.displayValue};this.value=s}return super.createPickerComponent()}onEnterKeyDown(e){Kv(e),this.isPickerDisplayed?super.onEnterKeyDown(e):(e.preventDefault(),this.showPicker())}},$v={tag:"div",cls:"ag-advanced-filter-builder-item-wrapper",role:"presentation",children:[{tag:"div",cls:"ag-advanced-filter-builder-item",role:"presentation",children:[{tag:"div",ref:"eTreeLines",cls:"ag-advanced-filter-builder-item-tree-lines",attrs:{"aria-hidden":"true"}},{tag:"span",ref:"eDragHandle",cls:"ag-drag-handle",attrs:{"aria-hidden":"true"}},{tag:"span",ref:"eValidation",cls:"ag-advanced-filter-builder-item-button ag-advanced-filter-builder-invalid",attrs:{"aria-hidden":"true"}}]},{tag:"div",ref:"eButtons",cls:"ag-advanced-filter-builder-item-buttons",children:[{tag:"span",ref:"eMoveUpButton",cls:"ag-advanced-filter-builder-item-button",role:"button"},{tag:"span",ref:"eMoveDownButton",cls:"ag-advanced-filter-builder-item-button",role:"button"},{tag:"div",ref:"eAddButton",role:"presentation"},{tag:"span",ref:"eRemoveButton",cls:"ag-advanced-filter-builder-item-button",role:"button"}]}]},tr=class extends wv{constructor(e,t,s){super($v),this.item=e,this.dragFeature=t,this.focusWrapper=s,this.eTreeLines=Oe,this.eDragHandle=Oe,this.eButtons=Oe,this.eValidation=Oe,this.eMoveUpButton=Oe,this.eMoveDownButton=Oe,this.eAddButton=Oe,this.eRemoveButton=Oe,this.moveUpDisabled=!1,this.moveDownDisabled=!1}wireBeans(e){this.dragAndDrop=e.dragAndDrop,this.advFilterExpSvc=e.advFilterExpSvc,this.registry=e.registry}postConstruct(){const{filterModel:e,level:t,showMove:s}=this.item,i=e.filterType==="join";if(this.ePillWrapper=this.createManagedBean(i?new Vv:new Rv),this.ePillWrapper.init({item:this.item,createPill:r=>this.createPill(r)}),this.eDragHandle.insertAdjacentElement("afterend",this.ePillWrapper.getGui()),t===0){const r=Bn({tag:"div",cls:"ag-advanced-filter-builder-item-tree-line-vertical-bottom ag-advanced-filter-builder-item-tree-line-root"});this.eTreeLines.appendChild(r),Ls(this.eDragHandle,!1),Ls(this.eButtons,!1),Vn(this.focusWrapper,!0)}else this.setupTreeLines(t),this.eDragHandle.appendChild(_t("advancedFilterBuilderDrag",this.beans)),this.setupValidation(),this.setupMoveButtons(s),this.setupAddButton(),this.setupRemoveButton(),this.setupDragging(),this.updateAriaExpanded();Mv(this.focusWrapper,t+1),this.initialiseTabGuard({}),this.createManagedBean(new On(this.getGui(),this.focusWrapper,this.ePillWrapper)),this.updateAriaLabel(),this.addManagedListeners(this.ePillWrapper,{advancedFilterBuilderValueChanged:()=>this.dispatchLocalEvent({type:"advancedFilterBuilderValueChanged"}),advancedFilterBuilderValidChanged:()=>this.updateValidity()})}setState(e){const{level:t}=this.item;if(t===0)return;const{showMove:s}=this.item,{disableMoveUp:i,disableMoveDown:r,treeLines:a,showStartTreeLine:n}=e;this.updateTreeLines(a,n),this.updateAriaExpanded(),s&&(this.moveUpDisabled=!!i,this.moveDownDisabled=!!r,this.eMoveUpButton.classList.toggle("ag-advanced-filter-builder-item-button-disabled",i),this.eMoveDownButton.classList.toggle("ag-advanced-filter-builder-item-button-disabled",r),_n(this.eMoveUpButton,!!i),_n(this.eMoveDownButton,!!r),this.moveUpTooltipFeature?.refreshTooltip(),this.moveDownTooltipFeature?.refreshTooltip())}focusMoveButton(e){(e?this.eMoveUpButton:this.eMoveDownButton).focus()}afterAdd(){this.ePillWrapper.getFocusableElement().focus()}setupTreeLines(e){for(let t=0;t<e;t++)this.eTreeLines.appendChild(Bn({tag:"div"}))}updateTreeLines(e,t){const s=e.length-1,{children:i}=this.eTreeLines;for(let a=0;a<s;a++){const n=i.item(a);n&&n.classList.toggle("ag-advanced-filter-builder-item-tree-line-vertical",!e[a])}const r=i.item(s);if(r){r.classList.add("ag-advanced-filter-builder-item-tree-line-horizontal");const a=e[s];r.classList.toggle("ag-advanced-filter-builder-item-tree-line-vertical-top",a),r.classList.toggle("ag-advanced-filter-builder-item-tree-line-vertical",!a)}this.eDragHandle.classList.toggle("ag-advanced-filter-builder-item-tree-line-vertical-bottom",t)}setupValidation(){this.eValidation.appendChild(_t("advancedFilterBuilderInvalid",this.beans)),this.validationTooltipFeature=this.createOptionalManagedBean(this.registry.createDynamicBean("tooltipFeature",!1,{getGui:()=>this.eValidation,getLocation:()=>"advancedFilter",getTooltipValue:()=>this.ePillWrapper.getValidationMessage(),getTooltipShowDelayOverride:()=>1e3})),this.updateValidity()}setupAddButton(){const e=Nn(s=>this.advFilterExpSvc.translate(s),this.gos.get("advancedFilterBuilderParams")?.addSelectWidth),t=this.createManagedBean(new Ln(e));this.addManagedListeners(t,{fieldPickerValueSelected:({value:s})=>this.dispatchLocalEvent({type:"advancedFilterBuilderAdded",item:this.item,isJoin:s.key==="join"})}),this.eAddButton.appendChild(t.getGui()),this.createOptionalManagedBean(this.registry.createDynamicBean("tooltipFeature",!1,{getGui:()=>this.eAddButton,getLocation:()=>"advancedFilter",getTooltipValue:()=>this.advFilterExpSvc.translate("advancedFilterBuilderAddButtonTooltip")}))}setupRemoveButton(){this.eRemoveButton.appendChild(_t("advancedFilterBuilderRemove",this.beans)),this.addManagedListeners(this.eRemoveButton,{click:()=>this.removeItem(),keydown:e=>{switch(e.key){case Zi.ENTER:e.preventDefault(),Ji(e),this.removeItem();break}}}),this.createOptionalManagedBean(this.registry.createDynamicBean("tooltipFeature",!1,{getGui:()=>this.eRemoveButton,getLocation:()=>"advancedFilter",getTooltipValue:()=>this.advFilterExpSvc.translate("advancedFilterBuilderRemoveButtonTooltip")})),Ds(this.eRemoveButton,this.advFilterExpSvc.translate("advancedFilterBuilderRemoveButtonTooltip")),this.activateTabIndex([this.eRemoveButton])}setupMoveButtons(e){e?(this.eMoveUpButton.appendChild(_t("advancedFilterBuilderMoveUp",this.beans)),this.addManagedListeners(this.eMoveUpButton,{click:()=>this.moveItem(!0),keydown:t=>{switch(t.key){case Zi.ENTER:t.preventDefault(),Ji(t),this.moveItem(!0);break}}}),this.moveUpTooltipFeature=this.createOptionalManagedBean(this.registry.createDynamicBean("tooltipFeature",!1,{getGui:()=>this.eMoveUpButton,getLocation:()=>"advancedFilter",getTooltipValue:()=>this.moveUpDisabled?null:this.advFilterExpSvc.translate("advancedFilterBuilderMoveUpButtonTooltip")})),Ds(this.eMoveUpButton,this.advFilterExpSvc.translate("advancedFilterBuilderMoveUpButtonTooltip")),this.eMoveDownButton.appendChild(_t("advancedFilterBuilderMoveDown",this.beans)),this.addManagedListeners(this.eMoveDownButton,{click:()=>this.moveItem(!1),keydown:t=>{switch(t.key){case Zi.ENTER:t.preventDefault(),Ji(t),this.moveItem(!1);break}}}),this.moveDownTooltipFeature=this.createOptionalManagedBean(this.registry.createDynamicBean("tooltipFeature",!1,{getGui:()=>this.eMoveDownButton,getLocation:()=>"advancedFilter",getTooltipValue:()=>this.moveDownDisabled?null:this.advFilterExpSvc.translate("advancedFilterBuilderMoveDownButtonTooltip")})),Ds(this.eMoveDownButton,this.advFilterExpSvc.translate("advancedFilterBuilderMoveDownButtonTooltip")),this.activateTabIndex([this.eMoveUpButton,this.eMoveDownButton])):(Ls(this.eMoveUpButton,!1),Ls(this.eMoveDownButton,!1))}updateValidity(){Tv(this.eValidation,!this.item.valid),this.validationTooltipFeature?.refreshTooltip(),this.updateAriaLabel()}createPill(e){const{key:t,cssClass:s,update:i,ariaLabel:r}=e,a=n=>{n!=null&&(i(n),this.dispatchLocalEvent({type:"advancedFilterBuilderValueChanged"}))};if(e.isSelect){const{getEditorParams:n,pickerAriaLabelKey:o,pickerAriaLabelValue:l,displayValue:c}=e,d=this.gos.get("advancedFilterBuilderParams"),h=`${d?.pillSelectMinWidth??140}px`,u=`${d?.pillSelectMaxWidth??200}px`,p=this.createBean(new jv({pickerAriaLabelKey:o,pickerAriaLabelValue:l,pickerType:"ag-list",value:{key:t,displayValue:c},valueFormatter:g=>g==null?"":g.displayValue??g.key,variableWidth:!0,minPickerWidth:h,maxPickerWidth:u,getEditorParams:n,wrapperClassName:s,ariaLabel:r,pickerIcon:"advancedFilterBuilderSelectOpen"}));return this.addManagedListeners(p,{fieldPickerValueSelected:({value:g})=>a(g?.key)}),p}else{const{baseCellDataType:n,valueFormatter:o}=e,l=this.createBean(new Bv({value:t,valueFormatter:o,cssClass:s,type:this.getInputType(n),ariaLabel:r}));return this.addManagedListeners(l,{fieldValueChanged:({value:c})=>a(c)}),l}}getInputType(e){switch(e){case"text":case"object":case"boolean":return"text";case"number":return"number";case"date":case"dateString":return"date"}}setupDragging(){const e={type:bv.AdvancedFilterBuilder,eElement:this.eDragHandle,dragItemName:()=>this.ePillWrapper.getDragName(),getDefaultIconName:()=>"notAllowed",getDragItem:()=>({}),onDragStarted:()=>this.dragFeature.dispatchLocalEvent({type:"advancedFilterBuilderDragStarted",item:this.item}),onDragStopped:()=>this.dragFeature.dispatchLocalEvent({type:"advancedFilterBuilderDragEnded"})};this.dragAndDrop.addDragSource(e,!0),this.addDestroyFunc(()=>this.dragAndDrop.removeDragSource(e))}updateAriaLabel(){const e=this.ePillWrapper.getAriaLabel(),t=`${this.item.level+1}`,s=this.ePillWrapper.getValidationMessage();let i;s?i=this.advFilterExpSvc.translate("ariaAdvancedFilterBuilderItemValidation",[e,t,s]):i=this.advFilterExpSvc.translate("ariaAdvancedFilterBuilderItem",[e,t]),Ds(this.focusWrapper,i)}updateAriaExpanded(){xv(this.focusWrapper);const{filterModel:e}=this.item;e?.filterType==="join"&&e.conditions.length&&Vn(this.focusWrapper,!0)}removeItem(){this.dispatchLocalEvent({type:"advancedFilterBuilderRemoved",item:this.item})}moveItem(e){this.dispatchLocalEvent({type:"advancedFilterBuilderMoved",item:this.item,backwards:e})}},Yv={tag:"div",cls:"ag-advanced-filter-builder",role:"presentation",attrs:{tabindex:"-1"},children:[{tag:"div",ref:"eList",cls:"ag-advanced-filter-builder-list",role:"presentation"},{tag:"div",cls:"ag-advanced-filter-builder-button-panel",role:"presentation",children:[{tag:"button",ref:"eApplyFilterButton",cls:"ag-button ag-standard-button ag-advanced-filter-builder-apply-button"},{tag:"button",ref:"eCancelFilterButton",cls:"ag-button ag-standard-button ag-advanced-filter-builder-cancel-button"}]}]},Xv=class extends hC{constructor(){super(Yv),this.eList=$i,this.eApplyFilterButton=$i,this.eCancelFilterButton=$i,this.validationMessage=null}wireBeans(e){this.filterManager=e.filterManager,this.advancedFilter=e.advancedFilter,this.advFilterExpSvc=e.advFilterExpSvc,this.registry=e.registry}postConstruct(){const{showMoveButtons:e}=this.gos.get("advancedFilterBuilderParams")??{};this.showMove=!!e,this.addManagedPropertyListener("advancedFilterBuilderParams",({currentValue:t})=>{this.showMove=!!t?.showMoveButtons,this.refreshList(!1)}),this.filterModel=this.setupFilterModel(),this.setupVirtualList(),this.dragFeature=this.createManagedBean(new vC(this,this.virtualList)),this.setupButtons()}refresh(){const e=this.virtualList;let t=e.getLastFocusedRow();this.setupFilterModel(),this.validateItems(),this.refreshList(!1),t!=null&&(e.getComponentAt(t)||(t=0),e.focusRow(t))}getNumItems(){return this.items.length}moveItem(e,t){!t||!e||this.moveItemToIndex(e,t.rowIndex,t.position)}afterGuiAttached(){this.virtualList.awaitStable(()=>this.virtualList.focusRow(0))}setupVirtualList(){const e=this.virtualList=this.createManagedBean(new ut({cssIdentifier:"advanced-filter-builder",ariaRole:"tree",listName:this.advFilterExpSvc.translate("ariaAdvancedFilterBuilderList"),moveItemCallback:this.virtualListMoveItemCallback.bind(this)}));e.setComponentCreator(this.createItemComponent.bind(this)),e.setComponentUpdater(this.updateItemComponent.bind(this)),e.setRowHeight(40),this.eList.appendChild(e.getGui()),e.setModel({getRowCount:()=>this.items?.length||0,getRow:t=>this.items[t],areRowsEqual:(t,s)=>t===s}),this.buildList(),e.refresh()}setupButtons(){this.eApplyFilterButton.innerText=this.advFilterExpSvc.translate("advancedFilterBuilderApply"),this.activateTabIndex([this.eApplyFilterButton]),this.addManagedElementListeners(this.eApplyFilterButton,{click:()=>{this.advancedFilter.setModel(this.filterModel),this.filterManager?.onFilterChanged({source:"advancedFilter"}),this.close()}}),this.validationTooltipFeature=this.createOptionalManagedBean(this.registry.createDynamicBean("tooltipFeature",!1,{getGui:()=>this.eApplyFilterButton,getLocation:()=>"advancedFilter",getTooltipValue:()=>this.validationMessage,getTooltipShowDelayOverride:()=>1e3})),this.validate();const e=t=>this.addOrRemoveCssClass("ag-advanced-filter-builder-validation",t);this.addManagedListeners(this.eApplyFilterButton,{mouseenter:()=>e(!0),mouseleave:()=>e(!1)}),this.eCancelFilterButton.innerText=this.advFilterExpSvc.translate("advancedFilterBuilderCancel"),this.activateTabIndex([this.eCancelFilterButton]),this.addManagedElementListeners(this.eCancelFilterButton,{click:()=>this.close()})}removeItemFromParent(e){const t=e.parent.conditions.indexOf(e.filterModel);return e.parent.conditions.splice(t,1),t}moveItemToIndex(e,t,s){const i=this.items[t],r=i.filterModel?.filterType==="join"&&s==="bottom",a=r?i.filterModel:i.parent;if(!a||this.isChildOrSelf(a,e.filterModel)||i===e)return;this.removeItemFromParent(e);let n;r?n=0:(n=a.conditions.indexOf(i.filterModel),n===-1?n=a.conditions.length:s==="bottom"&&(n+=1)),a.conditions.splice(n,0,e.filterModel),this.refreshList(!1)}isChildOrSelf(e,t){return e===t||t.filterType==="join"&&t.conditions.some(s=>this.isChildOrSelf(e,s))}setupFilterModel(){const e=this.formatFilterModel(this.advancedFilter.getModel());return this.stringifiedModel=JSON.stringify(e),e}formatFilterModel(e){return e=e??{filterType:"join",type:"AND",conditions:[]},e.filterType!=="join"&&(e={filterType:"join",type:"AND",conditions:[e]}),e}buildList(){const e=(t,s,i,r)=>{s.push({filterModel:t,level:i,parent:r,valid:!0,showMove:this.showMove}),t.filterType==="join"&&(t.conditions.forEach(a=>e(a,s,i+1,t)),i===0&&s.push({filterModel:null,level:i+1,parent:t,valid:!0}))};this.items=[],e(this.filterModel,this.items,0)}refreshList(e){if(!e){const t=[];this.items.forEach(s=>{s.valid||t.push(s.filterModel)}),this.buildList(),t.length&&this.items.forEach(s=>{s.filterModel&&t.includes(s.filterModel)&&(s.valid=!1)})}this.virtualList.refresh(e),this.validate()}updateItemComponent(e,t){const s=this.items.indexOf(e),i=(o,l)=>{const d=this.items.find(h=>h.filterModel===o)?.parent;if(d){const{conditions:h}=d;i(d,l),l.push(h[h.length-1]===o)}},r=[],{filterModel:a}=e;a&&(i(a,r),r[0]=!1);const n=a?.filterType==="join"&&!!a.conditions.length;t.setState({disableMoveUp:s===1,disableMoveDown:!this.canMoveDown(e,s),treeLines:r,showStartTreeLine:n})}createItemComponent(e,t){const s=this.createBean(e.filterModel?new tr(e,this.dragFeature,t):new Sv(e,t));return s.addManagedListeners(s,{advancedFilterBuilderRemoved:({item:i})=>this.removeItem(i),advancedFilterBuilderValueChanged:()=>this.validate(),advancedFilterBuilderAdded:({item:i,isJoin:r})=>this.addItem(i,r),advancedFilterBuilderMoved:({item:i,backwards:r})=>this.moveItemUpDown(i,r)}),s instanceof tr&&this.updateItemComponent(e,s),s}addItem(e,t){const{parent:s,level:i,filterModel:r}=e,a=r?.filterType==="join",n=t?{filterType:"join",type:"AND",conditions:[]}:{},o=a?r:s;let l=a?0:o.conditions.indexOf(r);l>=0?(a||(l+=1),o.conditions.splice(l,0,n)):o.conditions.push(n);let c=this.items.indexOf(e);const d=c>=0;if(d){e.filterModel&&c++;const h=[{filterModel:n,level:a?i+1:i,parent:o,valid:t,showMove:this.showMove}];this.items.splice(c,0,...h)}this.refreshList(d),d&&this.virtualList.getComponentAt(c)?.afterAdd()}removeItem(e){const t=e.parent,{filterModel:s}=e,i=t.conditions.indexOf(s);t.conditions.splice(i,1);const r=e.filterModel?.filterType==="join",a=this.items.indexOf(e),n=!r&&a>=0;n&&this.items.splice(a,1),this.refreshList(n),a>=0&&this.virtualList.focusRow(a)}moveItemUpDown(e,t,s){const i=this.items.indexOf(e),r=t?i-1:i+1;if(r===0||!t&&!this.canMoveDown(e,i))return;const a=this.items[r],n=this.removeItemFromParent(e),{level:o,filterModel:l,parent:c}=e,{level:d,filterModel:h,parent:u}=a;if(t)if(d===o&&h.filterType==="join")h.conditions.push(l);else if(d<=o){const m=u.conditions.indexOf(h);u.conditions.splice(m,0,l)}else c.conditions[n-1].conditions.push(l);else if(d===o)if(h.filterType==="join")h.conditions.splice(0,0,l);else{const m=u.conditions.indexOf(h);u.conditions.splice(m+1,0,l)}else if(n<c.conditions.length)c.conditions.splice(n+1,0,l);else{const m=this.items.find(C=>C.filterModel===c),f=m.parent.conditions.indexOf(m.filterModel)+1;m.parent.conditions.splice(f,0,l)}this.refreshList(!1);const p=this.items.findIndex(({filterModel:m})=>m===l);if(p<0)return;const g=this.virtualList.getComponentAt(p);g instanceof tr&&(s||g.focusMoveButton(t))}virtualListMoveItemCallback(e,t){const s=e.item,i=this.items.indexOf(s);i<=0||i===this.items.length-1||t&&i===1||!t&&!this.canMoveDown(s,i)||(this.moveItemUpDown(s,t,!0),this.virtualList.focusRow(i+(t?-1:1)))}canMoveDown(e,t){return!(e.level===1&&t===this.items.length-2||e.level===1&&e.parent.conditions[e.parent.conditions.length-1]===e.filterModel)}close(){this.advancedFilter.getCtrl().toggleFilterBuilder({source:"ui"})}validate(){let e=!this.items.every(({valid:t})=>t);e?this.validationMessage=this.advFilterExpSvc.translate("advancedFilterBuilderValidationIncomplete"):(e=JSON.stringify(this.filterModel)===this.stringifiedModel,e?this.validationMessage=this.advFilterExpSvc.translate("advancedFilterBuilderValidationAlreadyApplied"):this.validationMessage=null),pC(this.eApplyFilterButton,e),this.validationTooltipFeature?.refreshTooltip()}validateItems(){const e=s=>{s.type=void 0},t=s=>{delete s.filter};this.items.forEach(s=>{if(!s.valid||!s.filterModel||s.filterModel.filterType==="join")return;const{filterModel:i}=s,{colId:r}=i,a=this.advFilterExpSvc.getColumnAutocompleteEntries().find(({key:c})=>c===r),n=this.advFilterExpSvc.getColumnDetails(i.colId);if(!a||!n.column){s.valid=!1,i.colId=void 0,e(i),t(i);return}const l=this.advFilterExpSvc.getDataTypeExpressionOperator(n.baseCellDataType).operators[i.type];if(!l){s.valid=!1,e(i),t(i);return}if(l.numOperands>0&&!uC(i.filter)){s.valid=!1;return}})}},qv=class extends Jm{constructor(e){super(),this.enabled=e}wireBeans(e){this.ctrlsSvc=e.ctrlsSvc,this.popupSvc=e.popupSvc,this.advFilterExpSvc=e.advFilterExpSvc,this.environment=e.environment}postConstruct(){this.hasAdvancedFilterParent=!!this.gos.get("advancedFilterParent"),this.ctrlsSvc.whenReady(this,()=>this.setAdvancedFilterComp()),this.addManagedEventListeners({advancedFilterEnabledChanged:({enabled:e})=>this.onEnabledChanged(e)}),this.addManagedPropertyListener("advancedFilterParent",()=>this.updateComps()),this.addDestroyFunc(()=>{this.destroyAdvancedFilterComp(),this.destroyBean(this.eBuilderComp),this.eBuilderDialog&&this.eBuilderDialog.isAlive()&&this.destroyBean(this.eBuilderDialog)})}setupHeaderComp(e){this.eHeaderComp&&(this.eHeaderComp?.getGui().remove(),this.destroyBean(this.eHeaderComp)),this.eHeaderComp=this.createManagedBean(new dC(this.enabled&&!this.hasAdvancedFilterParent)),e.insertAdjacentElement("beforebegin",this.eHeaderComp.getGui())}focusHeaderComp(){return this.eHeaderComp?(this.eHeaderComp.getFocusableElement().focus(),!0):!1}refreshComp(){this.eFilterComp?.refresh(),this.eHeaderComp?.refresh()}refreshBuilderComp(){this.eBuilderComp?.refresh()}getHeaderHeight(){return this.eHeaderComp?.getHeight()??0}setInputDisabled(e){this.eFilterComp?.setInputDisabled(e),this.eHeaderComp?.setInputDisabled(e)}toggleFilterBuilder(e){const{source:t,force:s,eventSource:i}=e;if(s&&this.eBuilderDialog||s===!1&&!this.eBuilderDialog)return;if(this.eBuilderDialog){this.builderDestroySource=t,this.destroyBean(this.eBuilderDialog);return}this.setInputDisabled(!0);const{width:r,height:a,minWidth:n}=this.getBuilderDialogSize();this.eBuilderComp=this.createBean(new Xv),this.eBuilderDialog=this.createBean(new kt({title:this.advFilterExpSvc.translate("advancedFilterBuilderTitle"),component:this.eBuilderComp,width:r,height:a,resizable:!0,movable:!0,maximizable:!0,centered:!0,closable:!0,minWidth:n,afterGuiAttached:()=>this.eBuilderComp?.afterGuiAttached(),postProcessPopupParams:{type:"advancedFilterBuilder",eventSource:i}})),this.dispatchFilterBuilderVisibleChangedEvent(t,!0),this.eBuilderDialog.addEventListener("destroyed",()=>{this.destroyBean(this.eBuilderComp),this.eBuilderComp=void 0,this.eBuilderDialog=void 0,this.setInputDisabled(!1),this.dispatchLocalEvent({type:"advancedFilterBuilderClosed"}),this.dispatchFilterBuilderVisibleChangedEvent(this.builderDestroySource??"ui",!1),this.builderDestroySource=void 0})}dispatchFilterBuilderVisibleChangedEvent(e,t){this.eventSvc.dispatchEvent({type:"advancedFilterBuilderVisibleChanged",source:e,visible:t})}getBuilderDialogSize(){const e=this.gos.get("advancedFilterBuilderParams")?.minWidth??500,t=this.popupSvc.getPopupParent(),s=Math.round(ef(t))-2,i=Math.round(Qm(t)*.75)-2,r=Math.min(Math.max(600,e),s),a=Math.min(600,i);return{width:r,height:a,minWidth:e}}onEnabledChanged(e){this.enabled=e,this.updateComps()}updateComps(){this.setAdvancedFilterComp(),this.setHeaderCompEnabled(),this.eventSvc.dispatchEvent({type:"headerHeightChanged"})}setAdvancedFilterComp(){if(this.destroyAdvancedFilterComp(),!this.enabled)return;const e=this.gos.get("advancedFilterParent");if(this.hasAdvancedFilterParent=!!e,e){const t=this.createBean(new wn),s=t.getGui();this.environment.applyThemeClasses(s),s.classList.add(this.gos.get("enableRtl")?"ag-rtl":"ag-ltr"),e.appendChild(s),this.eFilterComp=t}}setHeaderCompEnabled(){this.eHeaderComp?.setEnabled(this.enabled&&!this.hasAdvancedFilterParent)}destroyAdvancedFilterComp(){this.eFilterComp&&(tf(this.eFilterComp.getGui()),this.destroyBean(this.eFilterComp))}},Zv=class{constructor(e){this.params=e,this.operators=[],this.operatorStartPositions=[],this.operatorEndPositions=[],this.activeOperator=0,this.validationError=null}parseExpression(e){this.operators.push(""),this.operatorStartPositions.push(e),this.operatorEndPositions.push(void 0);const{expression:t}=this.params;for(;e<t.length;){const s=t[e];if(s===" "){if(this.parseOperator(e-1))return this.activeOperator++,e-1;this.operators[this.activeOperator]+=s}else this.operators[this.activeOperator]+=s;e++}return this.parseOperator(e-1),e}isValid(){return!this.validationError&&(!this.operators.length||!!this.parsedOperator)}getValidationError(){return this.validationError}getFunction(){return this.parsedOperator==="OR"?"||":"&&"}getModel(){return this.parsedOperator==="OR"?"OR":"AND"}getAutocompleteListParams(e,t){let s;if(t==null)s="";else{const r=this.operators[t],a=this.operatorEndPositions[t];s=Vi(r,e,a==null?this.params.expression.length:a+1)}let i=this.params.advFilterExpSvc.getJoinOperatorAutocompleteEntries();return(t||t==null&&this.activeOperator)&&(i=i.filter(({key:r})=>r===this.parsedOperator)),this.params.advFilterExpSvc.generateAutocompleteListParams(i,"join",s)}updateExpression(e,t,s){let{expression:i}=this.params;const r=t.displayValue??t.key;if(s===0)for(let o=this.operatorEndPositions.length-1;o>0;o--){const l=this.operatorEndPositions[o];l!=null&&(i=Ge(i,this.operatorStartPositions[o],l,r).updatedValue)}const a=this.operatorStartPositions.length>s?this.operatorStartPositions[s]:e,n=(this.operatorEndPositions.length>s?this.operatorEndPositions[s]:void 0)??Hi(i,e,!0).endPosition;return Ge(i,a,n,r,!0)}getNumOperators(){return this.operators.length}getLastOperatorEndPosition(){return this.operatorEndPositions[this.operatorEndPositions.length-1]}parseOperator(e){const t=this.operators.length>this.activeOperator?this.operators[this.activeOperator]:"",s=this.params.advFilterExpSvc.getExpressionJoinOperators(),i=Ps(t,s,r=>r);if(i){this.operatorEndPositions[this.activeOperator]=e;const r=s[i];if(this.activeOperator){if(i!==this.parsedOperator)return this.validationError||(this.validationError={message:this.params.advFilterExpSvc.translate("advancedFilterValidationJoinOperatorMismatch"),startPosition:e-t.length+1,endPosition:e}),!1}else this.parsedOperator=i;return t!==r&&(zi(this.params,t,r,e),this.operators[this.activeOperator]=r),!0}else return i===null?!1:(this.validationError||(this.validationError={message:this.params.advFilterExpSvc.translate("advancedFilterValidationInvalidJoinOperator"),startPosition:e-t.length+1,endPosition:e}),!0)}},Jv=class Lh{constructor(t,s){this.params=t,this.startPosition=s,this.expectingExpression=!0,this.expectingOperator=!1,this.expressionParsers=[],this.operatorParser=new Zv(this.params),this.missingEndBracket=!1,this.extraEndBracket=!1}parseExpression(){let t=this.startPosition;const{expression:s}=this.params;for(;t<s.length;){const i=s[t];if(i==="("&&!this.expectingOperator){const r=new Lh(this.params,t+1);t=r.parseExpression(),this.expressionParsers.push(r),this.expectingExpression=!1,this.expectingOperator=!0}else{if(i===")")return this.endPosition=t-1,this.startPosition===0&&(this.extraEndBracket=!0),t;if(i!==" ")if(this.expectingExpression){const r=new Km(this.params,t);t=r.parseExpression(),this.expressionParsers.push(r),this.expectingExpression=!1,this.expectingOperator=!0}else this.expectingOperator&&(t=this.operatorParser.parseExpression(t),this.expectingOperator=!1,this.expectingExpression=!0)}t++}return this.startPosition>0&&(this.missingEndBracket=!0),t}isValid(){return!this.missingEndBracket&&!this.extraEndBracket&&this.expressionParsers.length===this.operatorParser.getNumOperators()+1&&this.operatorParser.isValid()&&this.expressionParsers.every(t=>t.isValid())}getValidationError(){const t=this.operatorParser.getValidationError();for(let i=0;i<this.expressionParsers.length;i++){const r=this.expressionParsers[i].getValidationError();if(r)return t&&t.startPosition<r.startPosition?t:r}if(t)return t;if(this.extraEndBracket)return{message:this.params.advFilterExpSvc.translate("advancedFilterValidationExtraEndBracket"),startPosition:this.endPosition+1,endPosition:this.endPosition+1};let s;return this.expressionParsers.length===this.operatorParser.getNumOperators()?s="advancedFilterValidationMissingCondition":this.missingEndBracket&&(s="advancedFilterValidationMissingEndBracket"),s?{message:this.params.advFilterExpSvc.translate(s),startPosition:this.params.expression.length,endPosition:this.params.expression.length}:null}getFunctionString(t){const s=this.expressionParsers.length>1,i=this.expressionParsers.map(r=>r.getFunctionString(t)).join(` ${this.operatorParser.getFunction()} `);return s?`(${i})`:i}getFunctionParsed(t){const s=this.operatorParser.getFunction(),i=this.expressionParsers.map(a=>a.getFunctionParsed(t)),r=s==="&&"?"every":"some";return(a,n,o)=>i[r](l=>l(a,n,o))}getAutocompleteListParams(t){if(this.endPosition!=null&&t>this.endPosition+1)return;if(!this.expressionParsers.length)return this.getColumnAutocompleteListParams();const s=this.getExpressionParserIndex(t);if(s==null)return this.params.expression[t]==="("?{enabled:!1}:this.getColumnAutocompleteListParams();const r=this.expressionParsers[s].getAutocompleteListParams(t);if(!r){if(s<this.expressionParsers.length-1)return this.operatorParser.getAutocompleteListParams(t,s);if(this.expressionParsers.length===this.operatorParser.getNumOperators()){const a=this.operatorParser.getLastOperatorEndPosition();return a==null||t<=a+1?this.operatorParser.getAutocompleteListParams(t,this.operatorParser.getNumOperators()-1):this.getColumnAutocompleteListParams()}return this.params.expression[t-1]===")"?{enabled:!1}:this.operatorParser.getAutocompleteListParams(t)}return r}updateExpression(t,s,i){const r=this.params.expression,a=this.getExpressionParserIndex(t);if(a==null){const l=i==="column"?this.params.advFilterExpSvc.getColumnValue(s):s.displayValue??s.key;return Ge(r,this.startPosition,this.startPosition,l,!0)}const o=this.expressionParsers[a].updateExpression(t,s,i);return o??(i==="column"?Ge(r,t,r.length-1,this.params.advFilterExpSvc.getColumnValue(s),!0):this.endPosition!=null&&t>this.endPosition+1?null:this.operatorParser.updateExpression(t,s,a))}getModel(){return this.expressionParsers.length>1?{filterType:"join",type:this.operatorParser.getModel(),conditions:this.expressionParsers.map(t=>t.getModel())}:this.expressionParsers[0].getModel()}getColumnAutocompleteListParams(){return this.params.advFilterExpSvc.generateAutocompleteListParams(this.params.advFilterExpSvc.getColumnAutocompleteEntries(),"column","")}getExpressionParserIndex(t){let s;for(let i=0;i<this.expressionParsers.length&&!(this.expressionParsers[i].startPosition>t);i++)s=i;return s}},Qv=class{constructor(e){this.params=e,this.valid=!1}parseExpression(){this.joinExpressionParser=new Jv(this.params,0);const e=this.joinExpressionParser.parseExpression();return this.valid=e>=this.params.expression.length-1&&this.joinExpressionParser.isValid(),this.params.expression}isValid(){return this.valid}getValidationMessage(){const e=this.joinExpressionParser.getValidationError();if(!e)return null;const{message:t,startPosition:s,endPosition:i}=e;return s<this.params.expression.length?this.params.advFilterExpSvc.translate("advancedFilterValidationMessage",[t,this.params.expression.slice(s,i+1).trim()]):this.params.advFilterExpSvc.translate("advancedFilterValidationMessageAtEnd",[t])}getFunctionString(){const e=this.createFunctionParams();return{functionString:`return ${this.joinExpressionParser.getFunctionString(e)};`,params:e}}getFunctionParsed(){const e=this.createFunctionParams();return{expressionFunction:this.joinExpressionParser.getFunctionParsed(e),params:e}}getAutocompleteListParams(e){return this.joinExpressionParser.getAutocompleteListParams(e)??{enabled:!1}}updateExpression(e,t,s){return this.joinExpressionParser.updateExpression(e,t,s)}getModel(){return this.isValid()?this.joinExpressionParser.getModel():null}createFunctionParams(){return{operands:[],operators:[],evaluatorParams:[]}}},ey=class extends $m{constructor(){super(...arguments),this.beanName="advancedFilter",this.appliedExpression=null,this.expression=null,this.isValid=!0}wireBeans(e){this.valueSvc=e.valueSvc,this.colModel=e.colModel,this.dataTypeSvc=e.dataTypeSvc,this.advFilterExpSvc=e.advFilterExpSvc,this.filterValueSvc=e.filterValueSvc}postConstruct(){this.setEnabled(this.gos.get("enableAdvancedFilter"),!0),this.ctrl=this.createManagedBean(new qv(this.enabled)),this.expressionProxy={getValue:(e,t)=>{const s=this.colModel.getColDefCol(e);return s?this.filterValueSvc.getValue(s,t):void 0}},this.addManagedPropertyListener("enableAdvancedFilter",e=>this.setEnabled(!!e.currentValue)),this.addManagedEventListeners({newColumnsLoaded:e=>this.onNewColumnsLoaded(e)}),this.addManagedPropertyListener("includeHiddenColumnsInAdvancedFilter",()=>this.updateValidity())}isEnabled(){return this.enabled}isFilterPresent(){return!!this.expressionFunction}doesFilterPass(e){return this.expressionFunction(this.expressionProxy,e,this.expressionParams)}getModel(){const e=this.createExpressionParser(this.appliedExpression);return e?.parseExpression(),e?.getModel()??null}setModel(e){const t=(i,r)=>{if(i.filterType==="join"){const a=this.advFilterExpSvc.parseJoinOperator(i),n=i.conditions.map(o=>t(o)).filter(o=>Ym(o)).join(` ${a} `);return r||i.conditions.length<=1?n:`(${n})`}else return this.advFilterExpSvc.parseColumnFilterModel(i)},s=e?t(e,!0):null;this.setExpressionDisplayValue(s),this.applyExpression(),this.ctrl.refreshComp(),this.ctrl.refreshBuilderComp()}getExpressionDisplayValue(){return this.expression}setExpressionDisplayValue(e){this.expression=e}isCurrentExpressionApplied(){return this.appliedExpression===this.expression}createExpressionParser(e){return e?new Qv({expression:e,colModel:this.colModel,dataTypeSvc:this.dataTypeSvc,valueSvc:this.valueSvc,advFilterExpSvc:this.advFilterExpSvc}):null}getDefaultExpression(e){const t=this.advFilterExpSvc.getColumnValue(e)+" ";return{updatedValue:t,updatedPosition:t.length}}isHeaderActive(){return!this.gos.get("advancedFilterParent")}getCtrl(){return this.ctrl}setEnabled(e,t){const s=this.enabled,i=Xm(this.gos)||qm(this.gos);e&&!i&&Zm(123),this.enabled=e&&i,!t&&this.enabled!==s&&this.eventSvc.dispatchEvent({type:"advancedFilterEnabledChanged",enabled:this.enabled})}applyExpression(){const e=this.createExpressionParser(this.expression);e?.parseExpression(),this.applyExpressionFromParser(e)}applyExpressionFromParser(e){if(this.isValid=!e||e.isValid(),!e||!this.isValid){this.expressionFunction=null,this.expressionParams=null,this.appliedExpression=null;return}const{expressionFunction:t,params:s}=this.getFunction(e);this.expressionFunction=t,this.expressionParams=s,this.appliedExpression=this.expression}getFunction(e){if(this.gos.get("suppressAdvancedFilterEval"))return e.getFunctionParsed();{const{functionString:t,params:s}=e.getFunctionString();return{expressionFunction:new Function("expressionProxy","node","params",t),params:s}}}updateValidity(){this.advFilterExpSvc.resetColumnCaches();const e=this.createExpressionParser(this.expression);e?.parseExpression();const s=(!e||e.isValid())!==this.isValid;return this.applyExpressionFromParser(e),this.ctrl.refreshComp(),this.ctrl.refreshBuilderComp(),s}onNewColumnsLoaded(e){if(e.source!=="gridInitializing"||!this.dataTypeSvc?.isPendingInference)return;this.ctrl.setInputDisabled(!0);const[t]=this.addManagedEventListeners({dataTypesInferred:()=>{t?.(),this.ctrl.setInputDisabled(!1)}})}},Un={moduleName:"AdvancedFilter",version:E,beans:[ey,jm],icons:{advancedFilterBuilder:"group",advancedFilterBuilderDrag:"grip",advancedFilterBuilderInvalid:"not-allowed",advancedFilterBuilderMoveUp:"up",advancedFilterBuilderMoveDown:"down",advancedFilterBuilderAdd:"plus",advancedFilterBuilderRemove:"minus",advancedFilterBuilderSelectOpen:"small-down",richSelectRemove:"cancel"},apiFunctions:{getAdvancedFilterModel:Dm,setAdvancedFilterModel:Lm,showAdvancedFilterBuilder:km,hideAdvancedFilterBuilder:Gm},dependsOn:[O,Pm,Em,Rm,Am],css:[Im]};import{_ColumnMoveModule as ty,_PopupModule as sy,_SharedDragAndDropModule as iy}from"ag-grid-community";import{_HorizontalResizeModule as ry}from"ag-grid-community";import{_unwrapUserComp as ay}from"ag-grid-community";function ny(e){return e.sideBar?.comp.isDisplayed()??!1}function oy(e,t){e.sideBar?.comp.setDisplayed(t)}function ly(e,t){e.sideBar?.comp.setSideBarPosition(t)}function cy(e,t){e.sideBar?.comp.openToolPanel(t,"api")}function dy(e){e.sideBar?.comp.close("api")}function hy(e){return e.sideBar?.comp.openedItem()??null}function uy(e){e.sideBar?.comp.refresh()}function py(e){return e.sideBar?.comp.isToolPanelShowing()??!1}function gy(e,t){const s=e.sideBar?.comp.getToolPanelInstance(t);return ay(s)}function my(e){return e.sideBar?.comp.getDef()}import{BeanStub as fy}from"ag-grid-community";import{Component as Cy,KeyCode as ks,ManagedFocusFeature as vy,RefPlaceholder as yy,_addFocusableContainerListener as Sy,_addGridCommonParams as Kn,_findNextFocusableElement as by,_focusInto as wy,_focusNextGridCoreContainer as Wn,_getActiveDomElement as jn,_removeFromParent as $n,_setAriaControls as xy,_warn as sr}from"ag-grid-community";import{TabGuardClassNames as My,_FOCUS_MANAGED_CLASS as Ty,_findFocusableElements as Fy}from"ag-grid-community";function ir(e,t){if(!t)return null;const s=Fy(e),i=s.indexOf(t);if(i===-1)return null;let r=-1;for(let a=i-1;a>=0;a--)if(s[a].classList.contains(My.TAB_GUARD_TOP)){r=a;break}return r<=0?null:s[r-1]}function Yn(e,t){if(!t)return!1;const s=e.querySelectorAll(`.${Ty}`);if(!s.length)return!1;for(let i=0;i<s.length;i++)if(s[i].contains(t))return!0;return!1}var Py='.ag-tool-panel-wrapper{display:flex;overflow:hidden auto;-webkit-user-select:none;-moz-user-select:none;user-select:none;width:var(--ag-side-bar-panel-width)}.ag-select-agg-func-item{align-items:center;display:flex;flex:1 1 auto;flex-flow:row nowrap;height:100%;overflow:hidden;position:relative;text-overflow:ellipsis;white-space:nowrap;>*{flex:none}}.ag-tool-panel-horizontal-resize{cursor:ew-resize;height:100%;position:absolute;top:0;width:5px;z-index:1}.ag-side-bar{background-color:var(--ag-side-bar-background-color);display:flex;flex-direction:row-reverse;position:relative}:where(.ag-ltr) :where(.ag-side-bar-left) .ag-tool-panel-horizontal-resize{right:-3px}:where(.ag-rtl) :where(.ag-side-bar-left) .ag-tool-panel-horizontal-resize{left:-3px}:where(.ag-ltr) :where(.ag-side-bar-right) .ag-tool-panel-horizontal-resize{left:-3px}:where(.ag-rtl) :where(.ag-side-bar-right) .ag-tool-panel-horizontal-resize{right:-3px}.ag-side-bar-left{flex-direction:row;order:-1}.ag-side-buttons{background-color:var(--ag-side-button-bar-background-color);padding-top:var(--ag-side-button-bar-top-padding);position:relative}.ag-side-button{background-color:var(--ag-side-button-background-color);border-bottom:var(--ag-side-button-border);border-top:var(--ag-side-button-border);color:var(--ag-side-button-text-color);margin-top:-1px;position:relative;&:before{background-color:transparent;bottom:0;content:"";display:block;position:absolute;top:0;transition:background-color var(--ag-side-button-selected-underline-transition-duration);width:var(--ag-side-button-selected-underline-width)}&:hover{background-color:var(--ag-side-button-hover-background-color);color:var(--ag-side-button-hover-text-color)}&.ag-selected{background-color:var(--ag-side-button-selected-background-color);border-bottom:var(--ag-side-button-selected-border);border-top:var(--ag-side-button-selected-border);color:var(--ag-side-button-selected-text-color);&:before{background-color:var(--ag-side-button-selected-underline-color)}}}:where(.ag-ltr) .ag-side-button{&:before{left:0}}:where(.ag-rtl) .ag-side-button{&:before{right:0}}.ag-side-button-button{align-items:center;display:flex;flex-direction:column;gap:var(--ag-spacing);position:relative;white-space:nowrap;width:100%;&:focus{box-shadow:none}}:where(.ag-ltr) .ag-side-button-button{padding:var(--ag-side-button-vertical-padding) var(--ag-side-button-right-padding) var(--ag-side-button-vertical-padding) var(--ag-side-button-left-padding)}:where(.ag-rtl) .ag-side-button-button{padding:var(--ag-side-button-vertical-padding) var(--ag-side-button-left-padding) var(--ag-side-button-vertical-padding) var(--ag-side-button-right-padding)}.ag-side-button-button:focus-visible{box-shadow:inset var(--ag-focus-shadow)}.ag-side-button-label{writing-mode:vertical-lr}@media (resolution <= 1.5x){.ag-side-button-label{font-family:"Segoe UI",var(--ag-font-family)}:where(.ag-ltr) .ag-side-button-label{transform:rotate(.05deg)}:where(.ag-rtl) .ag-side-button-label{transform:rotate(-.05deg)}}:where(.ag-ltr) .ag-side-bar-left,:where(.ag-rtl) .ag-side-bar-right{border-right:var(--ag-side-panel-border);:where(.ag-tool-panel-wrapper){border-left:var(--ag-side-panel-border)}}:where(.ag-ltr) .ag-side-bar-right,:where(.ag-rtl) .ag-side-bar-left{border-left:var(--ag-side-panel-border);:where(.ag-tool-panel-wrapper){border-right:var(--ag-side-panel-border)}}';import{Component as Ay,KeyCode as Ry,_clearElement as Ey,_focusNextGridCoreContainer as Iy,_stopPropagationForAgGrid as Dy}from"ag-grid-community";import{Component as Ly,RefPlaceholder as rr,_createIconNoSpan as ky,_setAriaExpanded as Gy}from"ag-grid-community";var Oy={tag:"div",cls:"ag-side-button",role:"presentation",children:[{tag:"button",ref:"eToggleButton",cls:"ag-button ag-side-button-button",role:"tab",attrs:{type:"button",tabindex:"-1","aria-expanded":"false"},children:[{tag:"div",ref:"eIconWrapper",cls:"ag-side-button-icon-wrapper",attrs:{"aria-hidden":"true"}},{tag:"span",ref:"eLabel",cls:"ag-side-button-label"}]}]},Ny=class extends Ly{constructor(e){super(),this.toolPanelDef=e,this.eToggleButton=rr,this.eIconWrapper=rr,this.eLabel=rr}getToolPanelId(){return this.toolPanelDef.id}postConstruct(){this.setTemplate(Oy,[]),this.setLabel(),this.setIcon(),this.addManagedElementListeners(this.eToggleButton,{click:this.onButtonPressed.bind(this)}),this.eToggleButton.setAttribute("id",`ag-${this.getCompId()}-button`)}setLabel(){const e=this.getLocaleTextFunc(),t=this.toolPanelDef,s=e(t.labelKey,t.labelDefault);this.eLabel.innerText=s}setIcon(){this.eIconWrapper.insertAdjacentElement("afterbegin",ky(this.toolPanelDef.iconKey,this.beans))}onButtonPressed(){this.dispatchLocalEvent({type:"toggleButtonClicked"})}setSelected(e){this.addOrRemoveCssClass("ag-selected",e),Gy(this.eToggleButton,e)}},By={tag:"div",cls:"ag-side-buttons",role:"tablist"},_y=class extends Ay{constructor(){super(By),this.buttonComps=[]}postConstruct(){this.addManagedElementListeners(this.getFocusableElement(),{keydown:this.handleKeyDown.bind(this)})}handleKeyDown(e){if(!(e.key!==Ry.TAB||!e.shiftKey)){if(Iy(this.beans,!0)){e.preventDefault();return}Dy(e)}}setActiveButton(e){this.buttonComps.forEach(t=>{t.setSelected(e===t.getToolPanelId())})}addButtonComp(e){const t=this.createBean(new Ny(e));return this.buttonComps.push(t),this.appendChild(t),t.addEventListener("toggleButtonClicked",()=>{this.dispatchLocalEvent({type:"sideBarButtonClicked",toolPanelId:e.id})}),t}clearButtons(){this.buttonComps=this.destroyBeans(this.buttonComps),Ey(this.getGui()),super.destroy()}destroy(){this.clearButtons(),super.destroy()}},Vy={selector:"AG-SIDE-BAR-BUTTONS",component:_y};import{_warn as Xn}from"ag-grid-community";var qn={id:"columns",labelDefault:"Columns",labelKey:"columns",iconKey:"columnsToolPanel",toolPanel:"agColumnsToolPanel"},Zn={id:"filters",labelDefault:"Filters",labelKey:"filters",iconKey:"filtersToolPanel",toolPanel:"agFiltersToolPanel"},Gs={columns:qn,filters:Zn};function ar(e){if(!e)return;if(e===!0)return{toolPanels:[qn,Zn],defaultToolPanel:"columns"};if(typeof e=="string")return ar([e]);if(Array.isArray(e)){const s=[];return e.forEach(i=>{const r=Gs[i];if(!r){Xn(215,{key:i,defaultByKey:Gs});return}s.push(r)}),s.length===0?void 0:{toolPanels:s,defaultToolPanel:s[0].id}}return{toolPanels:Hy(e.toolPanels),defaultToolPanel:e.defaultToolPanel,hiddenByDefault:e.hiddenByDefault,position:e.position}}function Hy(e){const t=[];return e&&e.forEach(s=>{let i=null;if(typeof s=="string"){const r=Gs[s];if(!r){Xn(215,{key:s,defaultByKey:Gs});return}i=r}else i=s;t.push(i)}),t}import{Component as zy}from"ag-grid-community";import{Component as Uy}from"ag-grid-community";var Ky=class extends Uy{constructor(){super({tag:"div",cls:"ag-tool-panel-horizontal-resize"}),this.minWidth=100,this.maxWidth=null}postConstruct(){const e=this.beans.horizontalResizeSvc.addResizeBar({eResizeBar:this.getGui(),dragStartPixels:1,onResizeStart:this.onResizeStart.bind(this),onResizing:this.onResizing.bind(this),onResizeEnd:this.onResizeEnd.bind(this)});this.addDestroyFunc(e),this.inverted=this.gos.get("enableRtl")}dispatchResizeEvent(e,t,s){this.eventSvc.dispatchEvent({type:"toolPanelSizeChanged",width:s,started:e,ended:t})}onResizeStart(){this.startingWidth=this.elementToResize.offsetWidth,this.dispatchResizeEvent(!0,!1,this.startingWidth)}onResizeEnd(e){return this.onResizing(e,!0)}onResizing(e,t=!1){const s=this.inverted?-1:1;let i=Math.max(this.minWidth,Math.floor(this.startingWidth-e*s));this.maxWidth!=null&&(i=Math.min(this.maxWidth,i)),this.elementToResize.style.width=`${i}px`,this.dispatchResizeEvent(!1,t,i)}};function Wy(e,t,s){return e.getCompDetails(t,jy,void 0,s,!0)}var jy={name:"toolPanel",optionalMethods:["refresh","getState"]},$y={tag:"div",cls:"ag-tool-panel-wrapper",role:"tabpanel"},Yy=class extends zy{constructor(){super($y)}postConstruct(){const e=this.getGui(),t=this.resizeBar=this.createManagedBean(new Ky);e.setAttribute("id",`ag-${this.getCompId()}`),t.elementToResize=e,this.appendChild(t)}getToolPanelId(){return this.toolPanelId}setToolPanelDef(e,t){const{id:s,minWidth:i,maxWidth:r,width:a}=e;this.toolPanelId=s,this.width=a;const n=Wy(this.beans.userCompFactory,e,t);if(n==null)return!1;const o=n.newAgStackInstance();this.params=n.params,o.then(this.setToolPanelComponent.bind(this));const l=this.resizeBar;return i!=null&&(l.minWidth=i),r!=null&&(l.maxWidth=r),!0}setToolPanelComponent(e){this.toolPanelCompInstance=e,this.appendChild(e.getGui()),this.addDestroyFunc(()=>{this.destroyBean(e)});const t=this.width;t&&(this.getGui().style.width=`${t}px`)}getToolPanelInstance(){return this.toolPanelCompInstance}setResizerSizerSide(e){const t=this.gos.get("enableRtl"),s=e==="left",i=t?s:!s;this.resizeBar.inverted=i}refresh(){this.toolPanelCompInstance?.refresh(this.params)}},Xy={tag:"div",cls:"ag-side-bar ag-unselectable",children:[{tag:"ag-side-bar-buttons",ref:"sideBarButtons"}]},qy=class extends Cy{constructor(){super(Xy,[Vy]),this.sideBarButtons=yy,this.toolPanelWrappers=[],this.registerCSS(Py)}postConstruct(){this.sideBarButtons.addEventListener("sideBarButtonClicked",this.onToolPanelButtonClicked.bind(this));const{beans:e,gos:t}=this,{sideBar:s}=t.get("initialState")??{};this.setSideBarDef({sideBarDef:ar(t.get("sideBar")),sideBarState:s}),this.addManagedPropertyListener("sideBar",this.onSideBarUpdated.bind(this)),e.sideBar.comp=this;const i=this.getFocusableElement();this.createManagedBean(new vy(i,{onTabKeyDown:this.onTabKeyDown.bind(this),handleKeyDown:this.handleKeyDown.bind(this)})),Sy(e,this,i)}onTabKeyDown(e){if(e.defaultPrevented)return;const{beans:t,sideBarButtons:s}=this,i=this.getGui(),r=s.getGui(),a=jn(t),n=i.querySelector(".ag-tool-panel-wrapper:not(.ag-hidden)"),o=e.target,l=e.shiftKey;if(!n)return Wn(t,l)?(e.preventDefault(),!0):Wn(t,l,!0);if(r.contains(a)){wy(n,l)&&e.preventDefault();return}if(!l)return;let c=null;n.contains(a)?c=by(t,n,void 0,!0):Yn(n,o)&&l&&(c=ir(n,o)),c||(c=r.querySelector(".ag-selected button")),c&&c!==e.target&&(e.preventDefault(),c.focus())}handleKeyDown(e){const t=jn(this.beans),s=this.sideBarButtons;if(!s.getGui().contains(t))return;const i=s.getGui(),r=Array.prototype.slice.call(i.querySelectorAll(".ag-side-button")),a=r.findIndex(l=>l.contains(t));let n=null;switch(e.key){case ks.LEFT:case ks.UP:n=Math.max(0,a-1);break;case ks.RIGHT:case ks.DOWN:n=Math.min(a+1,r.length-1);break}if(n===null)return;const o=r[n].querySelector("button");o&&(o.focus(),e.preventDefault())}onToolPanelButtonClicked(e){const t=e.toolPanelId;this.openedItem()===t?this.openToolPanel(void 0,"sideBarButtonClicked"):this.openToolPanel(t,"sideBarButtonClicked")}clearDownUi(){this.sideBarButtons.clearButtons(),this.destroyToolPanelWrappers()}setSideBarDef({sideBarDef:e,sideBarState:t,existingToolPanelWrappers:s}){if(this.setDisplayed(!1),this.sideBar=e,e&&e.toolPanels){const i=e.toolPanels;if(this.createToolPanelsAndSideButtons(i,t,s),!this.toolPanelWrappers.length)return;const r=t?t.visible:!e.hiddenByDefault;if(this.setDisplayed(r),this.setSideBarPosition(t?t.position:e.position),r)if(t){const{openToolPanel:a}=t;a&&this.openToolPanel(a,"sideBarInitializing")}else this.openToolPanel(e.defaultToolPanel,"sideBarInitializing")}}getDef(){return this.sideBar}setSideBarPosition(e){e||(e="right"),this.position=e;const t=e==="left",s=t?"right":"left";return this.addOrRemoveCssClass("ag-side-bar-left",t),this.addOrRemoveCssClass("ag-side-bar-right",!t),this.toolPanelWrappers.forEach(i=>{i.setResizerSizerSide(s)}),this.dispatchSideBarUpdated(),this}setDisplayed(e,t){super.setDisplayed(e,t),this.dispatchSideBarUpdated()}getState(){const e={};return this.toolPanelWrappers.forEach(t=>{e[t.getToolPanelId()]=t.getToolPanelInstance()?.getState?.()}),{visible:this.isDisplayed(),position:this.position,openToolPanel:this.openedItem(),toolPanels:e}}createToolPanelsAndSideButtons(e,t,s){for(const i of e)this.createToolPanelAndSideButton(i,t?.toolPanels?.[i.id],s?.[i.id])}validateDef(e){return e.id==null?(sr(212),!1):e.toolPanel==="agFiltersToolPanel"&&this.beans.filterManager?.isAdvFilterEnabled()?(sr(213),!1):!0}createToolPanelAndSideButton(e,t,s){if(!this.validateDef(e))return;let i;if(s)i=s;else if(i=this.createBean(new Yy),!i.setToolPanelDef(e,Kn(this.gos,{initialState:t,onStateUpdated:()=>this.dispatchSideBarUpdated()})))return;i.setDisplayed(!1);const r=i.getGui();this.appendChild(r),this.toolPanelWrappers.push(i);const a=this.sideBarButtons.addButtonComp(e);xy(a.eToggleButton,r)}refresh(){this.toolPanelWrappers.forEach(e=>e.refresh())}openToolPanel(e,t="api"){const s=this.openedItem();if(s===e)return;this.toolPanelWrappers.forEach(a=>{const n=e===a.getToolPanelId();a.setDisplayed(n)});const i=this.openedItem();s!==i&&(this.sideBarButtons.setActiveButton(e),this.raiseToolPanelVisibleEvent(e,s??void 0,t))}getToolPanelInstance(e){const t=this.toolPanelWrappers.filter(s=>s.getToolPanelId()===e)[0];if(!t){sr(214,{key:e});return}return t.getToolPanelInstance()}raiseToolPanelVisibleEvent(e,t,s){const i=!!e&&!!t,r=this.eventSvc;t&&r.dispatchEvent({type:"toolPanelVisibleChanged",source:s,key:t,visible:!1,switchingToolPanel:i}),e&&r.dispatchEvent({type:"toolPanelVisibleChanged",source:s,key:e,visible:!0,switchingToolPanel:i})}close(e="api"){this.openToolPanel(void 0,e)}isToolPanelShowing(){return!!this.openedItem()}openedItem(){let e=null;return this.toolPanelWrappers.forEach(t=>{t.isDisplayed()&&(e=t.getToolPanelId())}),e}onSideBarUpdated(){const e=ar(this.gos.get("sideBar")),t={};e&&this.sideBar&&e.toolPanels?.forEach(s=>{const{id:i}=s;if(!i)return;const r=this.sideBar.toolPanels?.find(l=>l.id===i);if(!r||s.toolPanel!==r.toolPanel)return;const a=this.toolPanelWrappers.find(l=>l.getToolPanelId()===i);if(!a)return;const n=Kn(this.gos,{...s.toolPanelParams??{},onStateUpdated:()=>this.dispatchSideBarUpdated()});a.getToolPanelInstance()?.refresh(n)===!0&&(this.toolPanelWrappers=this.toolPanelWrappers.filter(l=>l!==a),$n(a.getGui()),t[i]=a)}),this.clearDownUi(),this.setSideBarDef({sideBarDef:e,existingToolPanelWrappers:t})}dispatchSideBarUpdated(){this.eventSvc.dispatchEvent({type:"sideBarUpdated"})}destroyToolPanelWrappers(){this.toolPanelWrappers.forEach(e=>{$n(e.getGui()),this.destroyBean(e)}),this.toolPanelWrappers.length=0}destroy(){this.destroyToolPanelWrappers(),super.destroy()}},Zy={selector:"AG-SIDE-BAR",component:qy},Jy=class extends fy{constructor(){super(...arguments),this.beanName="sideBar"}getSelector(){return Zy}},Os={moduleName:"SideBar",version:E,beans:[Jy],apiFunctions:{isSideBarVisible:ny,setSideBarVisible:oy,setSideBarPosition:ly,openToolPanel:cy,closeToolPanel:dy,getOpenedToolPanel:hy,refreshToolPanel:uy,isToolPanelShowing:py,getToolPanelInstance:gy,getSideBar:my},dependsOn:[O,ry]};import{Component as Qy,_createElement as Ns,_createIconNoSpan as Jn,_isNodeOrElement as eS,_setAriaChecked as tS,_setAriaExpanded as sS,_warn as iS}from"ag-grid-community";var rS={tag:"div"},Qn=class extends Qy{constructor(){super(rS)}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(){const{checked:e,subMenu:t}=this.params,s=this.getGui();e&&tS(s,e),t&&sS(s,!1)}addIcon(){if(this.params.isCompact)return;const e=Ns({tag:"span",ref:"eIcon",cls:`${this.getClassName("part")} ${this.getClassName("icon")}`,role:"presentation"}),{checked:t,icon:s}=this.params;t?e.appendChild(Jn("check",this.beans)):s&&(eS(s)?e.appendChild(s):typeof s=="string"?e.innerHTML=s:iS(227)),this.getGui().appendChild(e)}addName(){const e=Ns({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;const e=Ns({tag:"span",ref:"eShortcut",cls:`${this.getClassName("part")} ${this.getClassName("shortcut")}`,children:this.params.shortcut||""});this.getGui().appendChild(e)}addSubMenu(){const e=Ns({tag:"span",ref:"ePopupPointer",cls:`${this.getClassName("part")} ${this.getClassName("popup-pointer")}`}),t=this.getGui();if(this.params.subMenu){const s=this.gos.get("enableRtl")?"subMenuOpenRtl":"subMenuOpen";e.appendChild(Jn(s,this.beans))}t.appendChild(e)}getClassName(e){return`${this.cssClassPrefix}-${e}`}},aS='.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:1px solid 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}',Bs={moduleName:"MenuItem",version:E,userComponents:{agMenuItem:Qn},icons:{check:"tick",subMenuOpen:"small-right",subMenuOpenRtl:"small-left"},css:[aS]};import{Component as nS,_addGridCommonParams as oS,_clearElement as lS,_last as cS}from"ag-grid-community";import{Component as dS,PositionableFeature as hS,RefPlaceholder as eo}from"ag-grid-community";var uS=".ag-column-select{display:flex;flex:3 1 0px;flex-direction:column;overflow:hidden;position:relative}.ag-column-select-header{align-items:center;display:flex;flex:none;gap:var(--ag-widget-horizontal-spacing);height:var(--ag-header-height);padding-left:var(--ag-widget-container-horizontal-padding);padding-right:var(--ag-widget-container-horizontal-padding);position:relative}.ag-column-select-column,.ag-column-select-column-group{align-items:center;display:flex;gap:var(--ag-widget-horizontal-spacing);height:100%;position:relative;&:where(:not(:last-child)){margin-bottom:var(--ag-widget-vertical-spacing)}}:where(.ag-ltr) .ag-column-select-column,:where(.ag-ltr) .ag-column-select-column-group{padding-left:calc(var(--ag-indentation-level)*var(--ag-column-select-indent-size))}:where(.ag-rtl) .ag-column-select-column,:where(.ag-rtl) .ag-column-select-column-group{padding-right:calc(var(--ag-indentation-level)*var(--ag-column-select-indent-size))}.ag-column-select-header-icon{border-radius:var(--ag-border-radius);cursor:pointer;height:var(--ag-icon-size);position:relative;width:var(--ag-icon-size);&:focus-visible{box-shadow:var(--ag-focus-shadow)}}.ag-column-select-header-filter-wrapper{flex:1 1 auto}.ag-column-select-header-filter{width:100%}.ag-column-select-list{flex:1 1 0px;overflow:hidden}:where(.ag-ltr) .ag-column-select-add-group-indent{margin-left:calc(var(--ag-icon-size) + var(--ag-spacing)*1.5)}:where(.ag-rtl) .ag-column-select-add-group-indent{margin-right:calc(var(--ag-icon-size) + var(--ag-spacing)*1.5)}.ag-column-select-column-group-readonly,.ag-column-select-column-readonly{opacity:.5;pointer-events:none}.ag-column-select-virtual-list-viewport{padding:calc(var(--ag-widget-container-vertical-padding)*.5) 0}.ag-column-select-virtual-list-item{padding:0 var(--ag-widget-container-horizontal-padding)}.ag-column-select-column-label{flex:1 1 auto;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ag-column-select-checkbox{display:flex}";import{AgCheckboxSelector as pS,AgInputTextFieldSelector as gS,Component as mS,KeyCode as fS,RefPlaceholder as nr,_createIconNoSpan as or,_debounce as CS,_setDisplayed as gt}from"ag-grid-community";var vS=300,yS={tag:"div",cls:"ag-column-select-header",role:"presentation",children:[{tag:"div",ref:"eExpand",cls:"ag-column-select-header-icon"},{tag:"ag-checkbox",ref:"eSelect",cls:"ag-column-select-header-checkbox"},{tag:"ag-input-text-field",ref:"eFilterTextField",cls:"ag-column-select-header-filter-wrapper"}]},SS=class extends mS{constructor(){super(yS,[pS,gS]),this.eExpand=nr,this.eSelect=nr,this.eFilterTextField=nr}postConstruct(){this.createExpandIcons(),this.addManagedListeners(this.eExpand,{click:this.onExpandClicked.bind(this),keydown:t=>{t.key===fS.SPACE&&(t.preventDefault(),this.onExpandClicked())}}),this.addManagedElementListeners(this.eSelect.getInputElement(),{click:this.onSelectClicked.bind(this)}),this.addManagedPropertyListener("functionsReadOnly",()=>this.onFunctionsReadOnlyPropChanged()),this.eFilterTextField.setAutoComplete(!1).onValueChange(()=>this.onFilterTextChanged()),this.addManagedEventListeners({newColumnsLoaded:this.showOrHideOptions.bind(this)});const e=this.getLocaleTextFunc();this.eSelect.setInputAriaLabel(e("ariaColumnSelectAll","Toggle All Columns Visibility")),this.eFilterTextField.setInputAriaLabel(e("ariaFilterColumnsInput","Filter Columns Input")),this.activateTabIndex([this.eExpand])}onFunctionsReadOnlyPropChanged(){const e=this.gos.get("functionsReadOnly");this.eSelect.setReadOnly(e),this.eSelect.addOrRemoveCssClass("ag-column-select-column-readonly",e)}init(e){this.params=e;const t=this.gos.get("functionsReadOnly");this.eSelect.setReadOnly(t),this.eSelect.addOrRemoveCssClass("ag-column-select-column-readonly",t),this.beans.colModel.ready&&this.showOrHideOptions()}createExpandIcons(){const e=this.beans;this.eExpand.appendChild(this.eExpandChecked=or("columnSelectOpen",e)),this.eExpand.appendChild(this.eExpandUnchecked=or("columnSelectClosed",e)),this.eExpand.appendChild(this.eExpandIndeterminate=or("columnSelectIndeterminate",e)),this.setExpandState(0)}showOrHideOptions(){const e=this.params,t=!e.suppressColumnFilter,s=!e.suppressColumnSelectAll,i=!e.suppressColumnExpandAll,r=!!this.beans.colModel.colDefCols?.treeDepth,a=this.getLocaleTextFunc();this.eFilterTextField.setInputPlaceholder(a("searchOoo","Search...")),gt(this.eFilterTextField.getGui(),t),gt(this.eSelect.getGui(),s),gt(this.eExpand,i&&r)}onFilterTextChanged(){this.onFilterTextChangedDebounced||(this.onFilterTextChangedDebounced=CS(this,()=>{const e=this.eFilterTextField.getValue();this.dispatchLocalEvent({type:"filterChanged",filterText:e})},vS)),this.onFilterTextChangedDebounced()}onSelectClicked(){this.dispatchLocalEvent({type:this.selectState?"unselectAll":"selectAll"})}onExpandClicked(){this.dispatchLocalEvent({type:this.expandState===0?"collapseAll":"expandAll"})}setExpandState(e){this.expandState=e,gt(this.eExpandChecked,e===0),gt(this.eExpandUnchecked,e===1),gt(this.eExpandIndeterminate,e===2)}setSelectionState(e){this.selectState=e,this.eSelect.setValue(this.selectState)}},bS={selector:"AG-PRIMARY-COLS-HEADER",component:SS};import{Component as wS,_exists as to,_setAriaLabel as xS,_setAriaLevel as MS,_warn as TS,isProvidedColumnGroup as FS}from"ag-grid-community";import{DragSourceType as PS}from"ag-grid-community";import{AgProvidedColumnGroup as AS,_warn as RS,isProvidedColumnGroup as ES}from"ag-grid-community";import{_last as IS}from"ag-grid-community";function mt(e){return!!e&&typeof e.children<"u"}function Ne(e){return mt(e)?e.groupId:e.colId}function so(e,t,s){const i=(n,o)=>{const c=n.children.map(Ne).includes(Ne(o)),d=IS(n.children),h=d&&Ne(d)!==Ne(o);return c&&h};if(!mt(e))return!0;const r=e,a=s;if(i(r,a)||r.groupId===t&&!r.children.map(Ne).includes(Ne(a)))return r.children.push(a),!0;for(let n=r.children.length-1;n>=0&&!so(r.children[n],t,s);n--);return!1}function DS(e){const t=(r,a)=>mt(r)&&mt(a)&&Ne(r)===Ne(a),s=(r,a)=>{if(!mt(a))return r;const n=r,o=a;return o.children&&o.groupId&&so(n,o.groupId,o.children[0])||o.children.forEach(l=>s(n,l)),n},i=[];for(let r=1;r<=e.length;r++){const a=e[r-1],n=e[r];t(a,n)?e[r]=s(a,n):i.push(a)}return i}function io(e,t){const s=[],i=(a,n)=>{if(mt(a)){const o=a,l=typeof o.groupId<"u"?o.groupId:o.headerName,c=new AS(o,l,!1,n),d=[];return o.children.forEach(h=>{const u=i(h,n+1);u&&d.push(u)}),c.setChildren(d),c}else{const o=a,l=o.colId?o.colId:o.field,c=e.getColDefCol(l);return c||s.push(o),c}},r=[];return t.forEach(a=>{const n=i(a,0);n&&r.push(n)}),s.length>0&&RS(217,{invalidColIds:s}),r}function ro(e,t){const s=LS(e),i=DS(s);t(i)}function LS(e){const t=(r,a)=>{let n;if(ES(r))if(r.isPadding())n=a;else{const l=Object.assign({},r.getColGroupDef());l.groupId=r.getGroupId(),l.children=[a],n=l}else{const l=Object.assign({},r.getColDef());l.colId=r.getColId(),n=l}const o=r.getOriginalParent();return o?t(o,n):n};return e.getCols().filter(r=>{const a=r.getColDef();return r.isPrimary()&&!a.showRowGroup}).map(r=>t(r,r.getColDef()))}import{LocalEventService as kS}from"ag-grid-community";var ao=class{constructor(e,t,s,i=!1,r){this.displayName=e,this.depth=s,this.group=i,this.localEventService=new kS,i?(this.columnGroup=t,this._expanded=r,this.children=[]):this.column=t}get expanded(){return!!this._expanded}set expanded(e){e!==this._expanded&&(this._expanded=e,this.localEventService.dispatchEvent({type:"expandedChanged"}))}addEventListener(e,t){this.localEventService.addEventListener(e,t)}removeEventListener(e,t){this.localEventService.removeEventListener(e,t)}};import{isProvidedColumnGroup as GS}from"ag-grid-community";import{AgCheckboxSelector as OS,Component as NS,DragSourceType as BS,KeyCode as lr,RefPlaceholder as Ht,TouchListener as _S,_createIcon as no,_createIconNoSpan as VS,_getShouldDisplayTooltip as HS,_getToolPanelClassesFromColDef as zS,_setAriaDescribedBy as US,_setAriaExpanded as KS,_setAriaLabel as WS,_setDisplayed as cr}from"ag-grid-community";import{_applyColumnState as dr}from"ag-grid-community";function oo(e,t,s,i){const r=jS(t);lo(e,r,s,i)}function lo(e,t,s,i){e.colModel.isPivotMode()?YS(e,t,s,i):$S(e,t,s,i)}function jS(e){const t=[],s=i=>{i.forEach(r=>{r.passesFilter&&(r.group?s(r.children):t.push(r.column))})};return s(e),t}function $S(e,t,s,i){const r=[];t.forEach(a=>{a.getColDef().lockVisible||a.isVisible()!=s&&r.push({colId:a.getId(),hide:!s})}),r.length>0&&dr(e,{state:r},i),e.selectionColSvc?.refreshVisibility(i)}function YS(e,t,s,i){XS(e,t,s,i)}function XS(e,t,s,i){const r=[],o=s?l=>{if(!l.isAnyFunctionActive())if(l.isAllowValue()){const c=typeof l.getAggFunc()=="string"?l.getAggFunc():e.aggFuncSvc?.getDefaultAggFunc(l);r.push({colId:l.getId(),aggFunc:c})}else l.isAllowRowGroup()?r.push({colId:l.getId(),rowGroup:!0}):l.isAllowPivot()&&r.push({colId:l.getId(),pivot:!0})}:l=>{(l.isPivotActive()||l.isRowGroupActive()||l.isValueActive())&&r.push({colId:l.getId(),pivot:!1,rowGroup:!1,aggFunc:null})};t.forEach(o),r.length>0&&dr(e,{state:r},i)}function co(e,t){const{columns:s,visibleState:i,pivotState:r,eventType:a}=t,n=s.map(o=>{const l=o.getColId();if(e.colModel.isPivotMode()){const c=r?.[l];return{colId:l,pivot:c?.pivot,rowGroup:c?.rowGroup,aggFunc:c?.aggFunc}}else return{colId:l,hide:!i?.[l]}});dr(e,{state:n},a)}function ho(e){return{pivot:e.isPivotActive(),rowGroup:e.isRowGroupActive(),aggFunc:e.isValueActive()?e.getAggFunc():void 0}}import{Component as qS,_createIconNoSpan as uo,_focusInto as ZS,isColumn as JS,isProvidedColumnGroup as QS}from"ag-grid-community";function po(e,t,s,i){const r=t.getCol(s);e.groupData||(e.groupData={});const a=r.getColId(),n=e.groupData[a];n!==i&&(e.groupData[a]=i,e.dispatchCellChangedEvent(r,i,n))}function hr(e,t,s){e.group!==s&&(e.group&&!s&&(e.expanded=!1),e.group=s,e.updateHasChildren(),t.selectionSvc?.updateRowSelectable(e),e.dispatchRowEvent("groupChanged"))}function zt(e,t){const{gos:s,rowGroupColsSvc:i}=t;if(!i||!e)return!1;const r=s.get("groupLockGroupColumns");if(!e.isRowGroupActive()||r===0)return!1;if(r===-1)return!0;const a=i.columns.findIndex(n=>n.getColId()===e.getColId());return r>a}import{AgPromise as ur,KeyCode as ve,TabGuardComp as eb,_createElement as tb,_last as sb,_preserveRangesWhile as ib,_stopPropagationForAgGrid as rb,_warn as ab}from"ag-grid-community";import{AgPromise as nb,BeanStub as ob,KeyCode as go,_addGridCommonParams as mo,_createElement as lb,_preserveRangesWhile as cb,_setAriaDisabled as db,_setAriaExpanded as hb,_setAriaHasPopup as ub,_setAriaRole as pb}from"ag-grid-community";import{KeyCode as gb,TabGuardComp as mb}from"ag-grid-community";var fb=class extends mb{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===gb.ESCAPE&&this.closePanel()}onTabKeyDown(e){e.defaultPrevented||(this.closePanel(),e.preventDefault())}closePanel(){const e=this.parentComponent;e.closeSubMenu(),setTimeout(()=>e.getGui().focus(),0)}};function Cb(e,t,s){return e.getCompDetails(t,vb,"agMenuItem",s,!0)}var vb={name:"menuItem",optionalMethods:["setActive","select","setExpanded","configureDefaults"]},yb={tag:"div",cls:"ag-menu",role:"presentation"},pr=class extends ob{constructor(){super(...arguments),this.ACTIVATION_DELAY=80,this.isActive=!1,this.subMenuIsOpen=!1,this.subMenuIsOpening=!1,this.suppressRootStyles=!0,this.suppressAria=!0,this.suppressFocus=!0}wireBeans(e){this.popupSvc=e.popupSvc,this.userCompFactory=e.userCompFactory,this.registry=e.registry}init(e){const{menuItemDef:t,isAnotherSubMenuOpen:s,level:i,childComponent:r,contextParams:a}=e;return this.params=e.menuItemDef,this.level=i,this.isAnotherSubMenuOpen=s,this.childComponent=r,this.contextParams=a,this.cssClassPrefix=this.params.menuItemParams?.cssClassPrefix??"ag-menu-option",Cb(this.userCompFactory,this.params,mo(this.gos,{...t,level:i,isAnotherSubMenuOpen:s,openSubMenu:o=>this.openSubMenu(o),closeSubMenu:()=>this.closeSubMenu(),closeMenu:o=>this.closeMenu(o),updateTooltip:(o,l)=>this.refreshTooltip(o,l),onItemActivated:()=>this.onItemActivated()}))?.newAgStackInstance().then(o=>{this.menuItemComp=o;const l=o.configureDefaults?.();l&&this.configureDefaults(l===!0?void 0:l)})??nb.resolve()}addListeners(e,t){t?.suppressClick||this.addManagedElementListeners(e,{click:s=>this.onItemSelected(s)}),t?.suppressKeyboardSelect||this.addManagedElementListeners(e,{keydown:s=>{(s.key===go.ENTER||s.key===go.SPACE)&&(s.preventDefault(),this.onItemSelected(s))}}),t?.suppressMouseDown||this.addManagedElementListeners(e,{mousedown:s=>{s.stopPropagation(),s.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;const s=lb(yb);this.eSubMenuGui=s;let i,r=()=>{this.subMenuIsOpening=!1};if(this.childComponent){const c=this.createBean(new fb(this.childComponent));c.setParentComponent(this);const d=c.getGui(),h="mouseenter",u=()=>this.cancelDeactivate();d.addEventListener(h,u),i=()=>{d.removeEventListener(h,u),this.destroyBean(c)},s.appendChild(d),this.childComponent.afterGuiAttached&&(r=()=>{this.childComponent.afterGuiAttached(),this.subMenuIsOpening=!1})}else if(this.params.subMenu){const c=this.createBean(new Ut(this.level+1,this.contextParams));c.setParentComponent(this),c.addMenuItems(this.params.subMenu),s.appendChild(c.getGui()),this.addManagedListeners(c,{closeMenu:d=>this.dispatchLocalEvent(d)}),c.addGuiEventListener("mouseenter",()=>this.cancelDeactivate()),i=()=>this.destroyBean(c),e&&(r=()=>{c.activateFirstItem(),this.subMenuIsOpening=!1})}const{popupSvc:a}=this,n=()=>{const c=this.eGui,{column:d,node:h}=this.contextParams;a?.positionPopupForMenu({eventSource:c,ePopup:s,event:t instanceof MouseEvent?t:void 0,column:d,node:h})},o=this.getLocaleTextFunc(),l=a?.addPopup({modal:!0,eChild:s,positionCallback:n,anchorToElement:this.eGui,ariaLabel:o("ariaLabelSubMenu","SubMenu"),afterGuiAttached:r});this.subMenuIsOpen=!0,this.setAriaExpanded(!0),this.hideSubMenu=()=>{l&&l.hideFunc(),this.subMenuIsOpen=!1,this.setAriaExpanded(!1),i(),this.menuItemComp.setExpanded?.(!1),this.eSubMenuGui=void 0},this.menuItemComp.setExpanded?.(!0)}setAriaExpanded(e){this.suppressAria||hb(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||cb(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(mo(this.gos,{...this.contextParams}))):this.openSubMenu(e&&e.type==="keydown",e),!(this.params.subMenu&&!this.params.action||this.params.suppressCloseOnSelect)&&this.closeMenu(e)}closeMenu(e){const t={type:"closeMenu"};e&&(e instanceof MouseEvent?t.mouseEvent=e:t.keyboardEvent=e),this.dispatchLocalEvent(t)}onItemActivated(){const e={type:"menuItemActivated",menuItem:this};this.dispatchLocalEvent(e)}cancelActivate(){this.activateTimeoutId&&(window.clearTimeout(this.activateTimeoutId),this.activateTimeoutId=0)}cancelDeactivate(){this.deactivateTimeoutId&&(window.clearTimeout(this.deactivateTimeoutId),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()}configureDefaults(e){if(!this.menuItemComp){setTimeout(()=>this.configureDefaults(e));return}let t=this.menuItemComp.getGui();const{suppressRootStyles:s,suppressTooltip:i,suppressAria:r,suppressTabIndex:a,suppressFocus:n}=e||{},o=this.menuItemComp.getRootElement?.();o&&(s||t.classList.add("ag-menu-option-custom"),t=o),this.eGui=t,this.suppressRootStyles=!!s,this.suppressRootStyles||(t.classList.add(this.cssClassPrefix),this.params.cssClasses?.forEach(l=>t.classList.add(l)),this.params.disabled&&t.classList.add(`${this.cssClassPrefix}-disabled`)),i||this.refreshTooltip(this.params.tooltip),this.suppressAria=!!r,this.suppressAria||(pb(t,"menuitem"),this.params.subMenu&&ub(t,this.params.subMenuRole??"menu"),this.params.disabled&&db(t,!0)),a||t.setAttribute("tabindex","-1"),this.params.disabled||this.addListeners(t,e),this.suppressFocus=!!n}refreshTooltip(e,t){if(this.tooltip=e,this.tooltipFeature=this.destroyBean(this.tooltipFeature),!e||!this.menuItemComp)return;const s=this.registry.createDynamicBean("tooltipFeature",!1,{getGui:()=>this.getGui(),getTooltipValue:()=>this.tooltip,getLocation:()=>"menu",shouldDisplayTooltip:t});s&&(this.tooltipFeature=this.createBean(s))}destroy(){this.tooltipFeature=this.destroyBean(this.tooltipFeature),this.menuItemComp?.destroy?.(),super.destroy()}},Ut=class extends eb{constructor(e=0,t){super({tag:"div",cls:"ag-menu-list",role:"menu"}),this.level=e,this.menuItems=[],this.params=t??{column:null,node:null,value:null}}postConstruct(){this.initialiseTabGuard({onTabKeyDown:e=>this.onTabKeyDown(e),handleKeyDown:e=>ib(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 ve.UP:case ve.RIGHT:case ve.DOWN:case ve.LEFT:e.preventDefault(),this.handleNavKey(e.key);break;case ve.ESCAPE:this.closeIfIsChild()&&rb(e);break}}handleFocusIn(e){const 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){const 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(),this.activeMenuItem=null)}addMenuItems(e){e!=null&&ur.all(e.map(t=>t==="separator"?ur.resolve({eGui:this.createSeparator()}):typeof t=="string"?(ab(228,{menuItemOrString:t}),ur.resolve({eGui:null})):this.addItem(t))).then(t=>{(t??[]).forEach(s=>{s?.eGui&&(this.appendChild(s.eGui),s.comp&&this.menuItems.push(s.comp))})})}addItem(e){const t=this.createManagedBean(new pr);return t.init({menuItemDef:e,isAnotherSubMenuOpen:()=>this.menuItems.some(s=>s.isSubMenuOpen()),level:this.level,contextParams:this.params}).then(()=>(t.setParentComponent(this),this.addManagedListeners(t,{closeMenu:s=>{this.dispatchLocalEvent(s)},menuItemActivated:s=>{this.activeMenuItem&&this.activeMenuItem!==s.menuItem&&this.activeMenuItem.deactivate(),this.activeMenuItem=s.menuItem}}),{comp:t,eGui:t.getGui()}))}activateFirstItem(){const e=this.menuItems.filter(t=>!t.isDisabled())[0];e&&e.activate()}createSeparator(){const e={tag:"div",cls:"ag-menu-separator-part"};return tb({tag:"div",cls:"ag-menu-separator",attrs:{"aria-hidden":"true"},children:[e,e,e,e]})}handleNavKey(e){switch(e){case ve.UP:case ve.DOWN:{const s=this.findNextItem(e===ve.UP);s&&s!==this.activeMenuItem&&s.activate(!1,!0);return}}const t=this.gos.get("enableRtl")?ve.RIGHT:ve.LEFT;e===t?this.closeIfIsChild():this.openChild()}closeIfIsChild(e){const t=this.getParentComponent();return t&&t instanceof pr?(e&&e.preventDefault(),t.closeSubMenu(),t.getGui().focus(),!0):!1}openChild(){this.activeMenuItem&&this.activeMenuItem.openSubMenu(!0)}findNextItem(e){const t=[...this.menuItems];if(!t.length)return;if(!this.activeMenuItem)return e?sb(t):t[0];e&&t.reverse();let s,i=!1;for(const r of t){if(!i){r===this.activeMenuItem&&(i=!0);continue}s=r;break}return i&&!s?t[0]:s||this.activeMenuItem}destroy(){this.clearActiveItem(),super.destroy()}},fo=class extends qS{constructor(e,t,s){super({tag:"div",cls:"ag-menu"}),this.column=e,this.mouseEvent=t,this.parentEl=s,this.displayName=null}postConstruct(){const{column:e,beans:{colNames:t}}=this;this.initializeProperties(e);let s;if(JS(e)?s=t.getDisplayNameForColumn(e,"columnToolPanel"):s=t.getDisplayNameForProvidedColumnGroup(null,e,"columnToolPanel"),this.displayName=s,this.buildMenuItemMap(),this.isActive()){this.mouseEvent.preventDefault();const i=this.getMappedMenuItems();if(i.length===0)return;this.displayContextMenu(i)}}initializeProperties(e){let t;QS(e)?t=e.getLeafColumns():t=[e],this.columns=t,this.allowGrouping=t.some(s=>s.isPrimary()&&s.isAllowRowGroup()),this.allowValues=t.some(s=>s.isPrimary()&&s.isAllowValue()),this.allowPivoting=this.beans.colModel.isPivotMode()&&t.some(s=>s.isPrimary()&&s.isAllowPivot())}buildMenuItemMap(){const e=this.getLocaleTextFunc(),{beans:t,displayName:s}=this,{rowGroupColsSvc:i,valueColsSvc:r,pivotColsSvc:a,colModel:n}=t,o=new Map;this.menuItemMap=o,o.set("rowGroup",{allowedFunction:l=>l.isPrimary()&&l.isAllowRowGroup()&&!zt(l,t),activeFunction:l=>l.isRowGroupActive(),activateLabel:()=>`${e("groupBy","Group by")} ${s}`,deactivateLabel:()=>`${e("ungroupBy","Un-Group by")} ${s}`,activateFunction:()=>i?.setColumns(this.addColumnsToList(i.columns),"toolPanelUi"),deActivateFunction:()=>i?.setColumns(this.removeColumnsFromList(i.columns),"toolPanelUi"),addIcon:"menuAddRowGroup",removeIcon:"menuRemoveRowGroup"}),o.set("value",{allowedFunction:l=>l.isPrimary()&&l.isAllowValue(),activeFunction:l=>l.isValueActive(),activateLabel:()=>e("addToValues",`Add ${s} to values`,[s]),deactivateLabel:()=>e("removeFromValues",`Remove ${s} from values`,[s]),activateFunction:()=>r?.setColumns(this.addColumnsToList(r.columns),"toolPanelUi"),deActivateFunction:()=>r?.setColumns(this.removeColumnsFromList(r.columns),"toolPanelUi"),addIcon:"valuePanel",removeIcon:"valuePanel"}),o.set("pivot",{allowedFunction:l=>n.isPivotMode()&&l.isPrimary()&&l.isAllowPivot(),activeFunction:l=>l.isPivotActive(),activateLabel:()=>e("addToLabels",`Add ${s} to labels`,[s]),deactivateLabel:()=>e("removeFromLabels",`Remove ${s} from labels`,[s]),activateFunction:()=>a?.setColumns(this.addColumnsToList(a.columns),"toolPanelUi"),deActivateFunction:()=>a?.setColumns(this.removeColumnsFromList(a.columns),"toolPanelUi"),addIcon:"pivotPanel",removeIcon:"pivotPanel"})}addColumnsToList(e){return[...e].concat(this.columns.filter(t=>e.indexOf(t)===-1))}removeColumnsFromList(e){return e.filter(t=>this.columns.indexOf(t)===-1)}displayContextMenu(e){const t=this.getGui(),s=this.createBean(new Ut),i=this.getLocaleTextFunc();let r=()=>{};t.appendChild(s.getGui()),s.addMenuItems(e),s.addManagedListeners(s,{closeMenu:()=>{this.parentEl.focus(),r()}});const a=this.beans.popupSvc,n=a.addPopup({modal:!0,eChild:t,closeOnEsc:!0,afterGuiAttached:()=>ZS(s.getGui()),ariaLabel:i("ariaLabelContextMenu","Context Menu"),closedCallback:o=>{o instanceof KeyboardEvent&&this.parentEl.focus(),this.destroyBean(s)}});n&&(r=n.hideFunc),a.positionPopupUnderMouseEvent({type:"columnContextMenu",mouseEvent:this.mouseEvent,ePopup:t})}isActive(){return this.allowGrouping||this.allowValues||this.allowPivoting}getMappedMenuItems(){const e=[],{menuItemMap:t,columns:s,displayName:i,beans:r}=this;for(const a of t.values()){const n=s.some(l=>a.allowedFunction(l)&&!a.activeFunction(l)),o=s.some(l=>a.allowedFunction(l)&&a.activeFunction(l));n&&e.push({name:a.activateLabel(i),icon:uo(a.addIcon,r,null),action:()=>a.activateFunction()}),o&&e.push({name:a.deactivateLabel(i),icon:uo(a.removeIcon,r,null),action:()=>a.deActivateFunction()})}return e}},Sb={tag:"div",cls:"ag-column-select-column-group",children:[{tag:"span",ref:"eColumnGroupIcons",cls:"ag-column-group-icons",children:[{tag:"span",ref:"eGroupClosedIcon",cls:"ag-column-group-closed-icon"},{tag:"span",ref:"eGroupOpenedIcon",cls:"ag-column-group-opened-icon"}]},{tag:"ag-checkbox",ref:"cbSelect",cls:"ag-column-select-checkbox"},{tag:"span",ref:"eLabel",cls:"ag-column-select-column-label"}]},Co=class extends NS{constructor(e,t,s,i){super(),this.modelItem=e,this.allowDragging=t,this.eventType=s,this.focusWrapper=i,this.cbSelect=Ht,this.eLabel=Ht,this.eGroupOpenedIcon=Ht,this.eGroupClosedIcon=Ht,this.eColumnGroupIcons=Ht,this.processingColumnStateChange=!1;const{columnGroup:r,depth:a,displayName:n}=e;this.columnGroup=r,this.columnDepth=a,this.displayName=n}postConstruct(){this.setTemplate(Sb,[OS]);const{beans:e,cbSelect:t,eLabel:s,displayName:i,columnDepth:r,modelItem:a,focusWrapper:n,columnGroup:o}=this,{registry:l,gos:c}=e,d=VS("columnDrag",e);this.eDragHandle=d,d.classList.add("ag-drag-handle","ag-column-select-column-group-drag-handle");const h=t.getGui(),u=t.getInputElement();h.insertAdjacentElement("afterend",d),u.setAttribute("tabindex","-1"),s.innerHTML=i??"",this.setupExpandContract(),this.addCssClass("ag-column-select-indent-"+r),this.getGui().style.setProperty("--ag-indentation-level",String(r)),this.tooltipFeature=this.createOptionalManagedBean(l.createDynamicBean("tooltipFeature",!1,{getGui:()=>this.getGui(),getLocation:()=>"columnToolPanelColumnGroup",shouldDisplayTooltip:HS(c,()=>s)})),this.addManagedEventListeners({columnPivotModeChanged:this.onColumnStateChanged.bind(this)}),this.addManagedElementListeners(s,{click:this.onLabelClicked.bind(this)}),this.addManagedListeners(t,{fieldValueChanged:this.onCheckboxChanged.bind(this)}),this.addManagedListeners(a,{expandedChanged:this.onExpandChanged.bind(this)}),this.addManagedListeners(n,{keydown:this.handleKeyDown.bind(this),contextmenu:this.onContextMenu.bind(this)}),this.setOpenClosedIcons(),this.setupDragging(),this.onColumnStateChanged(),this.addVisibilityListenersToAllChildren(),this.refreshAriaExpanded(),this.refreshAriaLabel(),this.setupTooltip(),zS(o.getColGroupDef(),c,null,o).forEach(g=>this.addOrRemoveCssClass(g,!0))}getColumns(){return this.columnGroup.getLeafColumns()}setupTooltip(){const e=this.columnGroup.getColGroupDef();if(!e)return;const t=()=>this.tooltipFeature?.setTooltipAndRefresh(e.headerTooltip);t(),this.addManagedEventListeners({newColumnsLoaded:t})}handleKeyDown(e){switch(e.key){case lr.LEFT:e.preventDefault(),this.modelItem.expanded=!1;break;case lr.RIGHT:e.preventDefault(),this.modelItem.expanded=!0;break;case lr.SPACE:e.preventDefault(),this.isSelectable()&&this.onSelectAllChanged(!this.isSelected());break}}onContextMenu(e){const{columnGroup:t,gos:s}=this;if(s.get("functionsReadOnly"))return;const i=this.createBean(new fo(t,e,this.focusWrapper));this.addDestroyFunc(()=>{i.isAlive()&&this.destroyBean(i)})}addVisibilityListenersToAllChildren(){const e=this.onColumnStateChanged.bind(this);this.columnGroup.getLeafColumns().forEach(t=>{this.addManagedListeners(t,{visibleChanged:e,columnValueChanged:e,columnPivotChanged:e,columnRowGroupChanged:e})})}setupDragging(){if(!this.allowDragging){cr(this.eDragHandle,!1);return}const e=this.beans,{gos:t,eventSvc:s,dragAndDrop:i}=e;let r=!t.get("suppressDragLeaveHidesColumns");const a={type:BS.ToolPanel,eElement:this.eDragHandle,dragItemName:this.displayName,getDefaultIconName:()=>r?"hide":"notAllowed",getDragItem:()=>this.createDragItem(),onDragStarted:()=>{r=!t.get("suppressDragLeaveHidesColumns"),s.dispatchEvent({type:"columnPanelItemDragStart",column:this.columnGroup})},onDragStopped:()=>{s.dispatchEvent({type:"columnPanelItemDragEnd"})},onGridEnter:n=>{r&&co(e,{columns:this.columnGroup.getLeafColumns(),visibleState:n?.visibleState,pivotState:n?.pivotState,eventType:this.eventType})},onGridExit:()=>{r&&this.onChangeCommon(!1)}};i.addDragSource(a,!0),this.addDestroyFunc(()=>i.removeDragSource(a))}createDragItem(){const e=this.columnGroup.getLeafColumns(),t={},s={};return e.forEach(i=>{const r=i.getId();t[r]=i.isVisible(),s[r]=ho(i)}),{columns:e,visibleState:t,pivotState:s}}setupExpandContract(){const{beans:e,eGroupClosedIcon:t,eGroupOpenedIcon:s,eColumnGroupIcons:i}=this;t.appendChild(no("columnSelectClosed",e,null)),s.appendChild(no("columnSelectOpen",e,null));const r=this.onExpandOrContractClicked.bind(this);this.addManagedElementListeners(t,{click:r}),this.addManagedElementListeners(s,{click:r});const a=new _S(i,!0);this.addManagedListeners(a,{tap:r}),this.addDestroyFunc(a.destroy.bind(a))}onLabelClicked(){const e=!this.cbSelect.getValue();this.onChangeCommon(e)}onCheckboxChanged(e){this.onChangeCommon(e.selected)}getVisibleLeafColumns(){const e=[],t=s=>{s.forEach(i=>{i.passesFilter&&(i.group?t(i.children):e.push(i.column))})};return t(this.modelItem.children),e}onChangeCommon(e){this.refreshAriaLabel(),!this.processingColumnStateChange&&oo(this.beans,this.modelItem.children,e,this.eventType)}refreshAriaLabel(){const{cbSelect:e,focusWrapper:t,displayName:s}=this,i=this.getLocaleTextFunc(),r=i("ariaColumnGroup","Column Group"),a=e.getValue(),n=a===void 0?i("ariaIndeterminate","indeterminate"):a?i("ariaVisible","visible"):i("ariaHidden","hidden"),o=i("ariaToggleVisibility","Press SPACE to toggle visibility");WS(t,`${s} ${r}`),e.setInputAriaLabel(`${o} (${n})`),US(t,e.getInputElement().id)}onColumnStateChanged(){const e=this.workOutSelectedValue(),t=this.workOutReadOnlyValue();this.processingColumnStateChange=!0;const s=this.cbSelect;s.setValue(e),s.setReadOnly(t),this.addOrRemoveCssClass("ag-column-select-column-group-readonly",t),this.processingColumnStateChange=!1}workOutSelectedValue(){const e=this.beans.colModel.isPivotMode(),t=this.getVisibleLeafColumns();let s=0,i=0;if(t.forEach(r=>{!e&&r.getColDef().lockVisible||(this.isColumnChecked(r,e)?s++:i++)}),!(s>0&&i>0))return s>0}workOutReadOnlyValue(){const e=this.beans.colModel.isPivotMode();let t=0;return this.columnGroup.getLeafColumns().forEach(s=>{e?s.isAnyFunctionAllowed()&&t++:s.getColDef().lockVisible||t++}),t===0}isColumnChecked(e,t){if(t){const s=e.isPivotActive(),i=e.isRowGroupActive(),r=e.isValueActive();return s||i||r}return e.isVisible()}onExpandOrContractClicked(){const e=this.modelItem,t=e.expanded;e.expanded=!t}onExpandChanged(){this.setOpenClosedIcons(),this.refreshAriaExpanded()}setOpenClosedIcons(){const e=this.modelItem.expanded;cr(this.eGroupClosedIcon,!e),cr(this.eGroupOpenedIcon,e)}refreshAriaExpanded(){KS(this.focusWrapper,this.modelItem.expanded)}getDisplayName(){return this.displayName}onSelectAllChanged(e){const t=this.cbSelect,s=t.getValue();!t.isReadOnly()&&(e&&!s||!e&&s)&&t.toggle()}isSelected(){return this.cbSelect.getValue()}isSelectable(){return!this.cbSelect.isReadOnly()}setSelected(e){this.cbSelect.setValue(e,!0)}},gr=e=>GS(e)?e.getLeafColumns():e?[e]:[],bb=(e,t,s,i)=>{if(!s||!t)return null;const r=e.colModel.getCols(),a=r.indexOf(s),n=i?a:a+1,o=wb(r,t,n);return n-o},wb=(e,t,s)=>{if(!t)return 0;const i=t[0],r=t.length;return e.indexOf(i)<s?r:0},vo=(e,t,s)=>e.get("suppressMovableColumns")||t.colModel.isPivotMode()?!0:!!s.find(({colDef:a})=>!!a.suppressMovable||!!a.lockPosition),yo=(e,t,s)=>{if(!s)return;const{component:i}=s;let r=null,a=s.position==="top";if(i instanceof Co?(r=i.getColumns()[0],a=!0):i&&(r=i.column),!r)return;const n=bb(e,t,r,a);n!=null&&e.colMoves?.moveColumns(t,n,"toolPanelUi")},xb=e=>e.column;import{AgCheckboxSelector as Mb,Component as Tb,DragSourceType as Fb,KeyCode as Pb,RefPlaceholder as So,_createIconNoSpan as Ab,_escapeString as Rb,_getShouldDisplayTooltip as Eb,_getToolPanelClassesFromColDef as Ib,_setAriaDescribedBy as Db,_setAriaLabel as Lb,_setDisplayed as kb,_warn as Gb}from"ag-grid-community";var Ob={tag:"div",cls:"ag-column-select-column",children:[{tag:"ag-checkbox",ref:"cbSelect",cls:"ag-column-select-checkbox"},{tag:"span",ref:"eLabel",cls:"ag-column-select-column-label"}]},Nb=class extends Tb{constructor(e,t,s,i){super(),this.modelItem=e,this.allowDragging=t,this.groupsExist=s,this.focusWrapper=i,this.eLabel=So,this.cbSelect=So,this.processingColumnStateChange=!1;const{column:r,depth:a,displayName:n}=e;this.column=r,this.columnDepth=a,this.displayName=n}postConstruct(){this.setTemplate(Ob,[Mb]);const{beans:e,cbSelect:t,displayName:s,eLabel:i,columnDepth:r,groupsExist:a,column:n,gos:o,focusWrapper:l}=this,c=Ab("columnDrag",e);this.eDragHandle=c,c.classList.add("ag-drag-handle","ag-column-select-column-drag-handle");const d=t.getGui(),h=t.getInputElement();d.insertAdjacentElement("afterend",c),h.setAttribute("tabindex","-1");const u=Rb(s);i.innerHTML=u,a&&this.addCssClass("ag-column-select-add-group-indent"),this.addCssClass(`ag-column-select-indent-${r}`),this.getGui().style.setProperty("--ag-indentation-level",String(r)),this.tooltipFeature=this.createOptionalManagedBean(e.registry.createDynamicBean("tooltipFeature",!1,{getGui:()=>this.getGui(),getLocation:()=>"columnToolPanelColumn",getColDef:()=>n.getColDef(),shouldDisplayTooltip:Eb(o,()=>i)})),this.setupDragging();const p=this.onColumnStateChanged.bind(this);this.addManagedEventListeners({columnPivotModeChanged:p}),this.addManagedListeners(n,{columnValueChanged:p,columnPivotChanged:p,columnRowGroupChanged:p,visibleChanged:p}),this.addManagedListeners(l,{keydown:this.handleKeyDown.bind(this),contextmenu:this.onContextMenu.bind(this)}),this.addManagedPropertyListener("functionsReadOnly",this.onColumnStateChanged.bind(this)),this.addManagedListeners(t,{fieldValueChanged:this.onCheckboxChanged.bind(this)}),this.addManagedElementListeners(i,{click:this.onLabelClicked.bind(this)}),this.onColumnStateChanged(),this.refreshAriaLabel(),this.setupTooltip(),Ib(n.getColDef(),o,n,null).forEach(m=>this.addOrRemoveCssClass(m,!0))}getColumn(){return this.column}setupTooltip(){const e=()=>this.tooltipFeature?.setTooltipAndRefresh(this.column.getColDef().headerTooltip);e(),this.addManagedEventListeners({newColumnsLoaded:e})}onContextMenu(e){const{column:t,gos:s}=this;if(s.get("functionsReadOnly"))return;const i=this.createBean(new fo(t,e,this.focusWrapper));this.addDestroyFunc(()=>{i.isAlive()&&this.destroyBean(i)})}handleKeyDown(e){e.key===Pb.SPACE&&(e.preventDefault(),this.isSelectable()&&this.onSelectAllChanged(!this.isSelected()))}onLabelClicked(){if(this.gos.get("functionsReadOnly"))return;const e=!this.cbSelect.getValue();this.onChangeCommon(e)}onCheckboxChanged(e){this.onChangeCommon(e.selected)}onChangeCommon(e){this.cbSelect.isReadOnly()||(this.refreshAriaLabel(),!this.processingColumnStateChange&&lo(this.beans,[this.column],e,"toolPanelUi"))}refreshAriaLabel(){const{cbSelect:e,focusWrapper:t,displayName:s}=this,i=this.getLocaleTextFunc(),r=i("ariaColumn","Column"),a=e.getValue()?i("ariaVisible","visible"):i("ariaHidden","hidden"),n=i("ariaToggleVisibility","Press SPACE to toggle visibility");Lb(t,`${s} ${r}`),this.cbSelect.setInputAriaLabel(`${n} (${a})`),Db(t,e.getInputElement().id)}setupDragging(){const e=this.eDragHandle;if(!this.allowDragging){kb(e,!1);return}const t=this.beans,{gos:s,eventSvc:i,dragAndDrop:r}=t;let a=!s.get("suppressDragLeaveHidesColumns");const n={type:Fb.ToolPanel,eElement:e,dragItemName:this.displayName,getDefaultIconName:()=>a?"hide":"notAllowed",getDragItem:()=>this.createDragItem(),onDragStarted:()=>{a=!s.get("suppressDragLeaveHidesColumns"),i.dispatchEvent({type:"columnPanelItemDragStart",column:this.column})},onDragStopped:()=>{i.dispatchEvent({type:"columnPanelItemDragEnd"})},onGridEnter:o=>{a&&co(t,{columns:[this.column],visibleState:o?.visibleState,pivotState:o?.pivotState,eventType:"toolPanelUi"})},onGridExit:()=>{a&&this.onChangeCommon(!1)}};r.addDragSource(n,!0),this.addDestroyFunc(()=>r.removeDragSource(n))}createDragItem(){const e=this.column.getColId(),t={[e]:this.column.isVisible()},s={[e]:ho(this.column)};return{columns:[this.column],visibleState:t,pivotState:s}}onColumnStateChanged(){this.processingColumnStateChange=!0;const e=this.beans.colModel.isPivotMode();if(e){const i=this.column.isAnyFunctionActive();this.cbSelect.setValue(i)}else this.cbSelect.setValue(this.column.isVisible());let t=!0,s=!0;if(e){const i=this.gos.get("functionsReadOnly"),r=!this.column.isAnyFunctionAllowed();t=!i&&!r,s=t}else{const{enableRowGroup:i,enableValue:r,lockPosition:a,suppressMovable:n,lockVisible:o}=this.column.getColDef(),l=!!i||!!r,c=!!a||!!n;t=!o,s=l||!c}this.cbSelect.setReadOnly(!t),this.eDragHandle.classList.toggle("ag-column-select-column-readonly",!s),this.addOrRemoveCssClass("ag-column-select-column-readonly",!s&&!t),this.cbSelect.setPassive(!1),this.processingColumnStateChange=!1}getDisplayName(){return this.displayName}onSelectAllChanged(e){const t=this.cbSelect;e!==t.getValue()&&(t.isReadOnly()||t.toggle())}isSelected(){return this.cbSelect.getValue()}isSelectable(){return!this.cbSelect.isReadOnly()}isExpandable(){return!1}setExpanded(e){Gb(158)}},Bb=class{constructor(e){this.items=e}getRowCount(){return this.items.length}getRow(e){return this.items[e]}},_b="ag-column-select-list",Vb=class extends wS{constructor(){super({tag:"div",cls:_b,role:"presentation"}),this.destroyColumnItemFuncs=[],this.hasLoadedInitialState=!1,this.isInitialState=!1,this.skipRefocus=!1}wireBeans(e){this.colModel=e.colModel}destroy(){this.destroyColumnTree(),super.destroy()}destroyColumnTree(){this.allColsTree=[],this.destroyColumnItemFuncs.forEach(e=>e()),this.destroyColumnItemFuncs=[]}init(e,t,s){this.params=e;const{suppressSyncLayoutWithGrid:i,contractColumnSelection:r,suppressColumnMove:a}=e;this.allowDragging=t,this.eventType=s,i||this.addManagedEventListeners({columnMoved:this.onColumnsChanged.bind(this)}),this.addManagedEventListeners({newColumnsLoaded:this.onColumnsChanged.bind(this)});const n=this.fireSelectionChangedEvent.bind(this);this.addManagedEventListeners({columnPivotChanged:n,columnPivotModeChanged:n,columnRowGroupChanged:n,columnValueChanged:n,columnVisible:n,newColumnsLoaded:n}),this.expandGroupsByDefault=!r;const o=a||i,l=this.createManagedBean(new ut({cssIdentifier:"column-select",ariaRole:"tree",moveItemCallback:(c,d)=>{o||this.moveItems(c,d)}}));this.virtualList=l,this.appendChild(l.getGui()),l.setComponentCreator((c,d)=>(MS(d,c.depth+1),this.createComponentFromItem(c,d))),this.colModel.ready&&this.onColumnsChanged(),!o&&this.createItemDragFeature()}createItemDragFeature(){const{gos:e,beans:t,eventSvc:s,virtualList:i}=this;this.createManagedBean(new Mn(this,i,{dragSourceType:PS.ToolPanel,listItemDragStartEvent:"columnPanelItemDragStart",listItemDragEndEvent:"columnPanelItemDragEnd",eventSource:s,getCurrentDragValue:r=>xb(r),isMoveBlocked:r=>vo(e,t,gr(r)),getNumRows:r=>r.getDisplayedColsList().length,moveItem:(r,a)=>yo(t,gr(r),a)}))}moveItems(e,t){const{gos:s,beans:i}=this,{modelItem:r}=e,{group:a,columnGroup:n,column:o,expanded:l}=r,c=gr(a?n:o);if(vo(s,i,c))return;const d=this.displayedColsList.indexOf(r),h=t?-1:1;let u=0;if(t){const g=e.columnDepth>0&&o.getParent()?.getChildren();g&&g.length&&o===g[0]&&(u=-1)}else a&&(u=l?r.children.length:0);const p=Math.min(Math.max(d+u+h,0),this.displayedColsList.length-1);this.skipRefocus=!0,yo(i,c,{rowIndex:p,position:t?"top":"bottom",component:this.virtualList.getComponentAt(p)}),this.focusRowIfAlive(p-u).then(()=>{this.skipRefocus=!1})}createComponentFromItem(e,t){const s=this.allowDragging;if(e.group){const r=new Co(e,s,this.eventType,t);return this.createBean(r),r}const i=new Nb(e,s,this.groupsExist,t);return this.createBean(i),i}onColumnsChanged(){const e=this.params;this.hasLoadedInitialState||(this.hasLoadedInitialState=!0,this.isInitialState=!!e.initialState);const t=this.getExpandedStates(),s=this.colModel.isPivotMode();!e.suppressSyncLayoutWithGrid&&!s?this.buildTreeFromWhatGridIsDisplaying():this.buildTreeFromProvidedColumnDefs(),this.setExpandedStates(t),this.markFilteredColumns(),this.flattenAndFilterModel(),this.isInitialState=!1}getDisplayedColsList(){return this.displayedColsList}getExpandedStates(){const e={};if(this.isInitialState){const{expandedGroupIds:t}=this.params.initialState;return t.forEach(s=>{e[s]=!0}),e}return this.allColsTree?(this.forEachItem(t=>{if(!t.group)return;const s=t.columnGroup;s&&(e[s.getId()]=t.expanded)}),e):{}}setExpandedStates(e){if(!this.allColsTree)return;const{isInitialState:t}=this;this.forEachItem(s=>{if(!s.group)return;const i=s.columnGroup;if(i){const r=e[i.getId()];(r!=null||t)&&(s.expanded=!!r)}})}buildTreeFromWhatGridIsDisplaying(){ro(this.colModel,this.setColumnLayout.bind(this))}setColumnLayout(e){const t=io(this.colModel,e);this.buildListModel(t),this.groupsExist=e.some(s=>s&&typeof s.children<"u"),this.markFilteredColumns(),this.flattenAndFilterModel()}buildTreeFromProvidedColumnDefs(){const e=this.colModel;this.buildListModel(e.getColDefColTree()),this.groupsExist=!!e.colDefCols?.treeDepth}buildListModel(e){const t=this.onColumnExpanded.bind(this),s=o=>{o.addEventListener("expandedChanged",t);const l=o.removeEventListener.bind(o,"expandedChanged",t);this.destroyColumnItemFuncs.push(l)},i=this.beans.colNames,r=(o,l,c)=>{o.forEach(d=>{FS(d)?a(d,l,c):n(d,l,c)})},a=(o,l,c)=>{const d=o.getColGroupDef();if(d&&d.suppressColumnsToolPanel)return;if(o.isPadding()){r(o.getChildren(),l,c);return}const u=i.getDisplayNameForProvidedColumnGroup(null,o,"columnToolPanel"),p=new ao(u,o,l,!0,this.expandGroupsByDefault);c.push(p),s(p),r(o.getChildren(),l+1,p.children)},n=(o,l,c)=>{if(o.getColDef()&&o.getColDef().suppressColumnsToolPanel)return;const h=i.getDisplayNameForColumn(o,"columnToolPanel");c.push(new ao(h,o,l))};this.destroyColumnTree(),r(e,0,this.allColsTree)}onColumnExpanded(){this.flattenAndFilterModel()}flattenAndFilterModel(){this.displayedColsList=[];const e=i=>{i.passesFilter&&(this.displayedColsList.push(i),i.group&&i.expanded&&i.children.forEach(e))},t=this.virtualList;this.allColsTree.forEach(e),t.setModel(new Bb(this.displayedColsList));let s=null;this.skipRefocus||(s=t.getLastFocusedRow()),t.refresh(),s!=null&&this.focusRowIfAlive(s),this.notifyListeners(),this.refreshAriaLabel()}refreshAriaLabel(){const e=this.getLocaleTextFunc(),t=e("ariaColumnPanelList","Column List"),s=e("columns","Columns"),i=this.displayedColsList.length;xS(this.virtualList.getAriaElement(),`${t} ${i} ${s}`)}focusRowIfAlive(e){return e===-1?Promise.resolve():new Promise(t=>{window.setTimeout(()=>{this.isAlive()&&this.virtualList.focusRow(e),t()},0)})}forEachItem(e){const t=i=>{i.forEach(r=>{e(r),r.group&&t(r.children)})},s=this.allColsTree;s&&t(s)}doSetExpandedAll(e){this.forEachItem(t=>{t.group&&(t.expanded=e)})}setGroupsExpanded(e,t){if(!t){this.doSetExpandedAll(e);return}const s=[];this.forEachItem(r=>{if(!r.group)return;const a=r.columnGroup.getId();t.indexOf(a)>=0&&(r.expanded=e,s.push(a))});const i=t.filter(r=>!s.includes(r));i.length>0&&TS(157,{unrecognisedGroupIds:i})}getExpandState(){let e=0,t=0;return this.forEachItem(s=>{s.group&&(s.expanded?e++:t++)}),e>0&&t>0?2:t>0?1:0}doSetSelectedAll(e){oo(this.beans,this.allColsTree,e,this.eventType)}getSelectionState(){let e=0,t=0;const s=this.colModel.isPivotMode();if(this.forEachItem(i=>{if(i.group||!i.passesFilter)return;const r=i.column,a=r.getColDef();let n;if(s){if(!r.isAllowPivot()&&!r.isAllowRowGroup()&&!r.isAllowValue())return;n=r.isValueActive()||r.isPivotActive()||r.isRowGroupActive()}else{if(a.lockVisible)return;n=r.isVisible()}n?e++:t++}),!(e>0&&t>0))return!(e===0||t>0)}setFilterText(e){this.filterText=to(e)?e.toLowerCase():null,this.markFilteredColumns(),this.flattenAndFilterModel()}markFilteredColumns(){const e=s=>{if(!to(this.filterText))return!0;const i=s.displayName;return i==null||i.toLowerCase().indexOf(this.filterText)!==-1},t=(s,i)=>{let r=!1;if(s.group){const n=e(s);s.children.forEach(o=>{const l=t(o,n||i);l&&(r=l)})}const a=i||r?!0:e(s);return s.passesFilter=a,a};this.allColsTree.forEach(s=>t(s,!1))}notifyListeners(){this.fireGroupExpandedEvent(),this.fireSelectionChangedEvent()}fireGroupExpandedEvent(){const e=this.getExpandState();this.dispatchLocalEvent({type:"groupExpanded",state:e})}fireSelectionChangedEvent(){if(!this.allColsTree)return;const e=this.getSelectionState();this.dispatchLocalEvent({type:"selectionChanged",state:e})}getExpandedGroups(){const e=[];return this.allColsTree&&this.forEachItem(t=>{t.group&&t.expanded&&e.push(t.columnGroup.getId())}),e}},Hb={selector:"AG-PRIMARY-COLS-LIST",component:Vb},zb={tag:"div",cls:"ag-column-select",children:[{tag:"ag-primary-cols-header",ref:"primaryColsHeaderPanel"},{tag:"ag-primary-cols-list",ref:"primaryColsListPanel"}]},bo=class extends dS{constructor(){super(zb,[bS,Hb]),this.primaryColsHeaderPanel=eo,this.primaryColsListPanel=eo,this.registerCSS(uS)}init(e,t,s){const{primaryColsHeaderPanel:i,primaryColsListPanel:r}=this;i.init(t);const a=t.suppressColumnFilter,n=t.suppressColumnSelectAll;t.suppressColumnExpandAll&&a&&n&&i.setDisplayed(!1),this.addManagedListeners(r,{groupExpanded:l=>{i.setExpandState(l.state),t.onStateUpdated()},selectionChanged:l=>i.setSelectionState(l.state)}),r.init(t,e,s),this.addManagedListeners(i,{expandAll:r.doSetExpandedAll.bind(r,!0),collapseAll:r.doSetExpandedAll.bind(r,!1),selectAll:r.doSetSelectedAll.bind(r,!0),unselectAll:r.doSetSelectedAll.bind(r,!1),filterChanged:l=>r.setFilterText(l.filterText)}),this.positionableFeature=this.createManagedBean(new hS(this.getGui(),{minHeight:100}))}toggleResizable(e){this.positionableFeature.setResizable(e?{bottom:!0}:!1)}expandGroups(e){this.primaryColsListPanel.setGroupsExpanded(!0,e)}collapseGroups(e){this.primaryColsListPanel.setGroupsExpanded(!1,e)}setColumnLayout(e){this.primaryColsListPanel.setColumnLayout(e)}syncLayoutWithGrid(){this.primaryColsListPanel.onColumnsChanged()}getExpandedGroups(){return this.primaryColsListPanel.getExpandedGroups()}},Ub=".ag-column-panel{display:flex;flex:1 1 auto;flex-direction:column;overflow:hidden}.ag-pivot-mode-panel{display:flex;height:var(--ag-header-height)}.ag-pivot-mode-select{align-items:center;display:flex}:where(.ag-ltr) .ag-pivot-mode-select{margin-left:var(--ag-widget-container-horizontal-padding)}:where(.ag-rtl) .ag-pivot-mode-select{margin-right:var(--ag-widget-container-horizontal-padding)}.ag-column-panel-column-select{border-bottom:var(--ag-tool-panel-separator-border)}.ag-column-panel-column-select:where(:nth-child(n+2 of :not(.ag-hidden))){border-top:var(--ag-tool-panel-separator-border)}:where(.ag-column-panel) .ag-column-drop-vertical{flex:1 1 0px;min-height:50px;&:where(:not(.ag-last-column-drop)){border-bottom:var(--ag-tool-panel-separator-border)}}",Kb=class extends nS{constructor(){super({tag:"div",cls:"ag-column-panel"}),this.initialised=!1,this.childDestroyFuncs=[],this.registerCSS(Ub)}wireBeans(e){this.colToolPanelFactory=e.colToolPanelFactory}setVisible(e){super.setDisplayed(e),e&&!this.initialised&&this.init(this.params)}init(e){const s={...oS(this.gos,{suppressColumnMove:!1,suppressColumnSelectAll:!1,suppressColumnFilter:!1,suppressColumnExpandAll:!1,contractColumnSelection:!1,suppressPivotMode:!1,suppressRowGroups:!1,suppressValues:!1,suppressPivots:!1,suppressSyncLayoutWithGrid:!1}),...e};this.params=s;const{childDestroyFuncs:i,colToolPanelFactory:r,gos:a}=this,n=a.isModuleRegistered("SharedPivot"),o=n||a.isModuleRegistered("SharedRowGrouping");!s.suppressPivotMode&&r&&n&&(this.pivotModePanel=r.createPivotModePanel(this,i));const l=this.createBean(new bo);if(this.primaryColsPanel=l,i.push(()=>this.destroyBean(this.primaryColsPanel)),l.init(!0,s,"toolPanelUi"),l.addCssClass("ag-column-panel-column-select"),this.appendChild(l),r){!s.suppressRowGroups&&o&&(this.rowGroupDropZonePanel=r.createRowGroupPanel(this,i)),!s.suppressValues&&o&&(this.valuesDropZonePanel=r.createValuesPanel(this,i)),!s.suppressPivots&&n&&(this.pivotDropZonePanel=r.createPivotPanel(this,i)),this.setLastVisible();const[c]=this.addManagedEventListeners({columnPivotModeChanged:()=>{this.resetChildrenHeight(),this.setLastVisible()}});i.push(()=>c())}this.initialised=!0}setPivotModeSectionVisible(e){const t=this.colToolPanelFactory;t&&(this.pivotModePanel=t.setPanelVisible(this.pivotModePanel,e,t.createPivotModePanel.bind(t,this,this.childDestroyFuncs,!0)),this.setLastVisible())}setRowGroupsSectionVisible(e){const t=this.colToolPanelFactory;t&&(this.rowGroupDropZonePanel=t.setPanelVisible(this.rowGroupDropZonePanel,e,t.createRowGroupPanel.bind(t,this,this.childDestroyFuncs)),this.setLastVisible())}setValuesSectionVisible(e){const t=this.colToolPanelFactory;t&&(this.valuesDropZonePanel=t.setPanelVisible(this.valuesDropZonePanel,e,t.createValuesPanel.bind(t,this,this.childDestroyFuncs)),this.setLastVisible())}setPivotSectionVisible(e){const t=this.colToolPanelFactory;t&&(this.pivotDropZonePanel=t.setPanelVisible(this.pivotDropZonePanel,e,t.createPivotPanel.bind(t,this,this.childDestroyFuncs)),this.pivotDropZonePanel?.setDisplayed(e),this.setLastVisible())}setResizers(){[this.primaryColsPanel,this.rowGroupDropZonePanel,this.valuesDropZonePanel,this.pivotDropZonePanel].forEach(e=>{if(!e)return;const t=e.getGui();e.toggleResizable(!t.classList.contains("ag-last-column-drop")&&!t.classList.contains("ag-hidden"))})}setLastVisible(){const e=this.getGui();Array.prototype.slice.call(e.querySelectorAll(".ag-column-drop")).forEach(r=>r.classList.remove("ag-last-column-drop"));const s=e.querySelectorAll(".ag-column-drop:not(.ag-hidden)"),i=cS(s);i&&i.classList.add("ag-last-column-drop"),this.setResizers()}resetChildrenHeight(){const t=this.getGui().children;for(let s=0;s<t.length;s++){const{style:i}=t[s];i.removeProperty("height"),i.removeProperty("flex")}}expandColumnGroups(e){this.primaryColsPanel.expandGroups(e)}collapseColumnGroups(e){this.primaryColsPanel.collapseGroups(e)}setColumnLayout(e){this.primaryColsPanel.setColumnLayout(e)}syncLayoutWithGrid(){this.primaryColsPanel.syncLayoutWithGrid()}destroyChildren(){const e=this.childDestroyFuncs;e.forEach(t=>t()),e.length=0,lS(this.getGui())}refresh(e){return this.destroyChildren(),this.init(e),!0}getState(){return{expandedGroupIds:this.primaryColsPanel.getExpandedGroups()}}destroy(){this.destroyChildren(),super.destroy()}};import{BeanStub as Wb}from"ag-grid-community";import{_createIconNoSpan as jb}from"ag-grid-community";import{DragSourceType as wo,_shouldUpdateColVisibilityAfterGroup as $b}from"ag-grid-community";import{Component as Yb,KeyCode as ft,ManagedFocusFeature as Xb,PositionableFeature as qb,_areEqual as Zb,_clearElement as xo,_createElement as _s,_createIconNoSpan as Jb,_findFocusableElements as Qb,_findNextFocusableElement as mr,_getActiveDomElement as Mo,_isKeyboardMode as ew,_last as tw,_setAriaHidden as sw,_setAriaLabel as iw,_setAriaPosInSet as rw,_setAriaRole as aw,_setAriaSetSize as nw}from"ag-grid-community";var ow=".ag-column-drop{align-items:center;display:inline-flex;overflow:auto;position:relative;width:100%}.ag-column-drop-list{align-items:center;display:flex}.ag-column-drop-cell{align-items:center;background-color:var(--ag-column-drop-cell-background-color);border:var(--ag-column-drop-cell-border);border-radius:500px;color:var(--ag-column-drop-cell-text-color);display:flex;padding:calc(var(--ag-spacing)*.25);position:relative;&:focus-visible{box-shadow:var(--ag-focus-shadow)}:where(.ag-drag-handle){color:var(--ag-column-drop-cell-drag-handle-color)}}:where(.ag-ltr) .ag-column-drop-cell{padding-left:calc(var(--ag-spacing)*.75)}:where(.ag-rtl) .ag-column-drop-cell{padding-right:calc(var(--ag-spacing)*.75)}.ag-column-drop-cell-text{flex:1 1 auto;margin:0 var(--ag-spacing);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ag-column-drop-vertical{align-items:stretch;display:flex;flex-direction:column;min-height:75px;overflow:hidden}.ag-column-drop-vertical-title-bar{align-items:center;display:flex;flex:none;padding:var(--ag-widget-container-vertical-padding) calc(var(--ag-spacing)*2) 0}.ag-column-drop-vertical-list{align-items:stretch;flex-direction:column;flex-grow:1;overflow-x:auto;padding-bottom:var(--ag-spacing);padding-left:var(--ag-spacing);padding-right:var(--ag-spacing);position:relative;>*{flex:none}}:where(.ag-column-drop-empty) .ag-column-drop-vertical-list{overflow:hidden}.ag-column-drop-cell-button{cursor:pointer;min-width:0;opacity:.75;&:hover{opacity:1}}.ag-column-drop-wrapper{display:flex}.ag-column-drop-horizontal-half-width{width:50%!important}.ag-column-drop-cell-ghost{opacity:.5}.ag-column-drop-horizontal{background-color:var(--ag-header-background-color);border-bottom:var(--ag-header-row-border);gap:var(--ag-cell-widget-spacing);height:var(--ag-header-height);overflow:hidden;white-space:nowrap}:where(.ag-ltr) .ag-column-drop-horizontal{padding-left:var(--ag-cell-horizontal-padding)}:where(.ag-rtl) .ag-column-drop-horizontal{padding-right:var(--ag-cell-horizontal-padding)}.ag-column-drop-horizontal-list{gap:var(--ag-cell-widget-spacing)}.ag-column-drop-vertical-cell{margin-top:var(--ag-spacing)}:where(.ag-ltr) .ag-column-drop-vertical-icon{margin-right:var(--ag-widget-horizontal-spacing)}:where(.ag-rtl) .ag-column-drop-vertical-icon{margin-left:var(--ag-widget-horizontal-spacing)}.ag-select-agg-func-popup{background:var(--ag-background-color);border:1px solid var(--ag-border-color);border-radius:var(--ag-border-radius);box-shadow:var(--ag-dropdown-shadow);height:calc(var(--ag-spacing)*5*3.5);padding:0;position:absolute}.ag-select-agg-func-virtual-list-item{cursor:default;&:hover{background-color:var(--ag-selected-row-background-color)}}:where(.ag-ltr) .ag-select-agg-func-virtual-list-item{padding-left:calc(var(--ag-spacing)*2)}:where(.ag-rtl) .ag-select-agg-func-virtual-list-item{padding-right:calc(var(--ag-spacing)*2)}:where(.ag-ltr) .ag-column-drop-horizontal-half-width:where(:not(:last-child)){border-right:1px solid var(--ag-border-color)}:where(.ag-rtl) .ag-column-drop-horizontal-half-width:where(:not(:last-child)){border-left:1px solid var(--ag-border-color)}";function To(e,t,s){e==null||t==null||e.splice(s,0,...t)}var lw={tag:"div",cls:"ag-unselectable",role:"presentation"},Fo=class extends Yb{constructor(e){super(lw),this.horizontal=e,this.state="notDragging",this.guiDestroyFunctions=[],this.childPillComponents=[],this.resizeEnabled=!1,this.addElementClasses(this.getGui()),this.ePillDropList=_s({tag:"div"}),this.addElementClasses(this.ePillDropList,"list"),this.registerCSS(ow)}toggleResizable(e){this.positionableFeature.setResizable(e?{bottom:!0}:!1),this.resizeEnabled=e}isSourceEventFromTarget(e){const{dropZoneTarget:t,dragSource:s}=e;return t.contains(s.eElement)}destroy(){this.destroyGui(),super.destroy()}destroyGui(){this.guiDestroyFunctions.forEach(e=>e()),this.guiDestroyFunctions.length=0,this.childPillComponents.length=0,xo(this.getGui()),xo(this.ePillDropList)}init(e){this.params=e??{},this.createManagedBean(new Xb(this.getFocusableElement(),{onTabKeyDown:this.onTabKeyDown.bind(this),handleKeyDown:this.onKeyDown.bind(this)})),this.setupDropTarget(),this.positionableFeature=new qb(this.getGui()),this.createManagedBean(this.positionableFeature),this.refreshGui(),iw(this.ePillDropList,this.getAriaLabel())}onTabKeyDown(e){const t=Qb(this.getFocusableElement(),null,!0),s=t.length;if(s===0)return;const{shiftKey:i}=e,r=Mo(this.beans),a=r===t[0],n=r===tw(t);s===1||a&&i||n&&!i||t[i?0:s-1].focus()}onKeyDown(e){const{key:t}=e,s=!this.horizontal;let i=t===ft.DOWN,r=t===ft.UP;if(!s){const a=this.gos.get("enableRtl");i=!a&&t===ft.RIGHT||a&&t===ft.LEFT,r=!a&&t===ft.LEFT||a&&t===ft.RIGHT}if(!(!i&&!r))if(e.preventDefault(),e.shiftKey)this.moveFocusedItem(r);else{const a=mr(this.beans,this.getFocusableElement(),!1,r);a&&a.focus()}}moveFocusedItem(e){const t=this.getFocusedItem();if(t===-1)return;const s=e?-1:1;if(!this.normalizeAndUpdateInsertIndex(t,t+s))return;const r=this.childPillComponents[t];if(!r.isMovable())return;const a=r.getItem();this.focusItemAtIndex(this.insertIndex),this.rearrangeItems([a],!0)}addElementClasses(e,t){t=t?`-${t}`:"";const s=this.horizontal?"horizontal":"vertical";e.classList.add(`ag-column-drop${t}`,`ag-column-drop-${s}${t}`)}setupDropTarget(){this.dropTarget={getContainer:this.getGui.bind(this),getIconName:this.getIconName.bind(this),onDragging:this.onDragging.bind(this),onDragEnter:this.onDragEnter.bind(this),onDragLeave:this.onDragLeave.bind(this),onDragStop:this.onDragStop.bind(this),onDragCancel:this.onDragCancel.bind(this),isInterestedIn:this.isInterestedIn.bind(this)},this.beans.dragAndDrop?.addDropTarget(this.dropTarget)}minimumAllowedNewInsertIndex(){return 0}checkInsertIndex(e){const t=this.getNewInsertIndex(e);return t<0?!1:this.normalizeAndUpdateInsertIndex(this.insertIndex,t)}normalizeAndUpdateInsertIndex(e,t){const s=this.minimumAllowedNewInsertIndex(),i=Math.max(s,t),r=i!==e;return r&&(this.insertIndex=i),r}getNewInsertIndex(e){const t=e.event,s=this.horizontal?t.clientX:t.clientY,i=this.childPillComponents.map(a=>a.getGui().getBoundingClientRect()),r=i.findIndex(a=>this.horizontal?a.right>s&&a.left<s:a.top<s&&a.bottom>s);if(r===-1){const a=this.gos.get("enableRtl");return i.every(l=>s>(this.horizontal?l.right:l.bottom))?a&&this.horizontal?0:this.childPillComponents.length:i.every(l=>s<(this.horizontal?l.left:l.top))?a&&this.horizontal?this.childPillComponents.length:0:this.insertIndex}return this.insertIndex<=r?r+1:r}checkDragStartedBySelf(e){this.state==="notDragging"&&(this.state="rearrangeItems",this.potentialDndItems=this.getItems(e.dragSource.getDragItem()),this.refreshGui(),this.checkInsertIndex(e),this.refreshGui())}onDragging(e){this.checkDragStartedBySelf(e),this.checkInsertIndex(e)&&this.refreshGui()}handleDragEnterEnd(e){}onDragEnter(e){const t=this.getItems(e.dragSource.getDragItem());this.state="newItemsIn";const s=t.filter(r=>this.isItemDroppable(r,e)),i=s.every(r=>this.childPillComponents.map(a=>a.getItem()).indexOf(r)!==-1);if(s.length!==0){if(this.potentialDndItems=s,i){this.state="notDragging";return}this.handleDragEnterEnd(e),this.checkInsertIndex(e),this.refreshGui()}}isPotentialDndItems(){return!!this.potentialDndItems?.length}handleDragLeaveEnd(e){}onDragLeave(e){if(this.state==="rearrangeItems"){const t=this.getItems(e.dragSource.getDragItem());this.removeItems(t)}this.isPotentialDndItems()&&(this.handleDragLeaveEnd(e),this.potentialDndItems=[],this.refreshGui()),this.state="notDragging"}onDragCancel(e){this.isPotentialDndItems()&&(this.state==="newItemsIn"&&this.handleDragLeaveEnd(e),this.potentialDndItems=[],this.refreshGui()),this.state="notDragging"}onDragStop(){this.isPotentialDndItems()&&(this.state==="newItemsIn"?this.addItems(this.potentialDndItems):this.rearrangeItems(this.potentialDndItems),this.potentialDndItems=[],this.refreshGui()),this.state="notDragging"}removeItems(e){const t=this.getExistingItems().filter(s=>!e.includes(s));this.updateItems(t)}addItems(e){if(!e)return;const t=this.getExistingItems().slice(),s=e.filter(i=>t.indexOf(i)<0);To(t,s,this.insertIndex),this.updateItems(t)}addItem(e){this.insertIndex=this.getExistingItems().length,this.addItems([e]),this.refreshGui()}rearrangeItems(e,t){let s;return t?s=this.getExistingItems().filter(i=>e.indexOf(i)===-1):s=this.getNonGhostItems().slice(),To(s,e,this.insertIndex),Zb(s,this.getExistingItems())?!1:(this.updateItems(s),!0)}refreshGui(){let e=0;this.horizontal||(e=this.ePillDropList.scrollTop);const t=this.resizeEnabled,s=this.getFocusedItem(),{eGridDiv:i}=this.beans,r=ew();let a=null;r&&(a=mr(this.beans,i)??mr(this.beans,i,!1,!0)),this.toggleResizable(!1),this.destroyGui(),this.addIconAndTitleToGui(),this.addEmptyMessageToGui(),this.addItemsToGui(),e!==0&&(this.ePillDropList.scrollTop=e),t&&this.toggleResizable(t),r&&this.restoreFocus(s,a)}getFocusedItem(){const e=this.getGui(),t=Mo(this.beans);return e.contains(t)?Array.from(e.querySelectorAll(".ag-column-drop-cell")).indexOf(t):-1}focusItemAtIndex(e){const t=this.getGui(),i=Array.from(t.querySelectorAll(".ag-column-drop-cell"))[e];i&&i.focus({preventScroll:!0})}restoreFocus(e,t){const s=this.getGui(),i=Array.from(s.querySelectorAll(".ag-column-drop-cell"));if(e===-1)return;i.length===0&&t.focus();const r=Math.min(i.length-1,e),a=i[r];a&&a.focus()}focusList(e){const t=e?this.childPillComponents.length-1:0;this.restoreFocus(t,this.getFocusableElement())}getNonGhostItems(){const e=this.getExistingItems();return this.isPotentialDndItems()?e.filter(t=>!this.potentialDndItems.includes(t)):e}addItemsToGui(){const t=this.getNonGhostItems().map(s=>this.createItemComponent(s,!1));if(this.isPotentialDndItems()){const s=this.potentialDndItems.map(i=>this.createItemComponent(i,!0));this.insertIndex>=t.length?t.push(...s):t.splice(this.insertIndex,0,...s)}this.appendChild(this.ePillDropList),t.forEach((s,i)=>{i>0&&this.addArrow(this.ePillDropList),this.ePillDropList.appendChild(s.getGui())}),this.addAriaLabelsToComponents()}addAriaLabelsToComponents(){const{childPillComponents:e,ePillDropList:t}=this,s=e.length;aw(t,s===0?"presentation":"listbox");for(let i=0;i<s;i++){const a=e[i].getGui();rw(a,i+1),nw(a,s)}}createItemComponent(e,t){const s=this.createPillComponent(e,this.dropTarget,t,this.horizontal);return s.addEventListener("columnRemove",this.removeItems.bind(this,[e])),this.createBean(s),this.guiDestroyFunctions.push(()=>this.destroyBean(s)),t||this.childPillComponents.push(s),s}addIconAndTitleToGui(){const{title:e,icon:t}=this.params;if(!e||!t)return;const s=_s({tag:"div"});if(sw(s,!0),this.addElementClasses(s,"title-bar"),this.addElementClasses(t,"icon"),this.addOrRemoveCssClass("ag-column-drop-empty",this.isExistingItemsEmpty()),s.appendChild(t),!this.horizontal){const i=_s({tag:"span"});this.addElementClasses(i,"title"),i.textContent=e,s.appendChild(i)}this.appendChild(s)}isExistingItemsEmpty(){return this.getExistingItems().length===0}addEmptyMessageToGui(){const{emptyMessage:e}=this.params;if(!e||!this.isExistingItemsEmpty()||this.isPotentialDndItems())return;const t=_s({tag:"span"});t.textContent=e,this.addElementClasses(t,"empty-message"),this.ePillDropList.appendChild(t)}addArrow(e){if(this.horizontal){const t=this.gos.get("enableRtl"),s=Jb(t?"panelDelimiterRtl":"panelDelimiter",this.beans);this.addElementClasses(s,"cell-separator"),e.appendChild(s)}}};import{Component as cw,DragSourceType as dw,KeyCode as Vs,RefPlaceholder as hw,_createElement as uw}from"ag-grid-community";import{Component as pw,KeyCode as gw,RefPlaceholder as fr,TouchListener as mw,_createIconNoSpan as Po,_escapeString as fw,_setAriaLabel as Cw,_setDisplayed as vw}from"ag-grid-community";var yw={tag:"span",role:"option",children:[{tag:"span",ref:"eDragHandle",cls:"ag-drag-handle ag-column-drop-cell-drag-handle",role:"presentation"},{tag:"span",ref:"eText",cls:"ag-column-drop-cell-text",attrs:{"aria-hidden":"true"}},{tag:"span",ref:"eButton",cls:"ag-column-drop-cell-button",role:"presentation"}]},Ao=class extends pw{constructor(e,t,s,i,r){super(),this.dragSourceDropTarget=e,this.ghost=t,this.horizontal=s,this.template=i,this.agComponents=r,this.eText=fr,this.eDragHandle=fr,this.eButton=fr}postConstruct(){this.setTemplate(this.template??yw,this.agComponents);const e=this.getGui(),{beans:t,eDragHandle:s,eText:i,eButton:r}=this;this.addElementClasses(e),this.addElementClasses(s,"drag-handle"),this.addElementClasses(i,"text"),this.addElementClasses(r,"button"),s.appendChild(Po("columnDrag",t)),r.appendChild(Po("cancel",t)),this.tooltipFeature=this.createOptionalManagedBean(t.registry.createDynamicBean("tooltipFeature",!1,{getGui:()=>this.getGui()})),this.setupComponents(),!this.ghost&&this.isDraggable()&&this.addDragSource(),this.setupAria(),this.setupTooltip(),this.activateTabIndex(),this.refreshDraggable()}isDraggable(){return!0}refreshDraggable(){this.eDragHandle.classList.toggle("ag-column-select-column-readonly",!this.isDraggable())}setupAria(){const e=this.getLocaleTextFunc(),t=[this.getAriaDisplayName()];this.addAdditionalAriaInstructions(t,e),Cw(this.getGui(),t.join(". "))}addAdditionalAriaInstructions(e,t){if(this.isRemovable()){const s=t("ariaDropZoneColumnComponentDescription","Press DELETE to remove");e.push(s)}}setupTooltip(){const e=()=>this.tooltipFeature?.setTooltipAndRefresh(this.getTooltip());e(),this.addManagedEventListeners({newColumnsLoaded:e})}getDragSourceId(){}getDefaultIconName(){return"notAllowed"}addDragSource(){const{beans:{dragAndDrop:e},eDragHandle:t}=this,s=this.createGetDragItem(),i=this.getDefaultIconName(),r={type:this.getDragSourceType(),sourceId:this.getDragSourceId(),eElement:t,getDefaultIconName:()=>i,getDragItem:s,dragItemName:this.getDisplayName()};e?.addDragSource(r,!0),this.addDestroyFunc(()=>e?.removeDragSource(r))}setupComponents(){this.setTextValue(),this.setupRemove(),this.ghost&&this.addCssClass("ag-column-drop-cell-ghost")}isRemovable(){return!0}refreshRemove(){vw(this.eButton,this.isRemovable())}setupRemove(){this.refreshRemove();const e={type:"columnRemove"};this.addGuiEventListener("keydown",s=>this.onKeyDown(s)),this.addManagedElementListeners(this.eButton,{click:s=>{this.dispatchLocalEvent(e),s.stopPropagation()}});const t=new mw(this.eButton);this.addManagedListeners(t,{tap:()=>this.dispatchLocalEvent(e)}),this.addDestroyFunc(t.destroy.bind(t))}onKeyDown(e){e.key===gw.DELETE&&this.isRemovable()&&(e.preventDefault(),this.dispatchLocalEvent({type:"columnRemove"}))}getDisplayValue(){return this.getDisplayName()}setTextValue(){const e=this.getDisplayValue(),t=fw(e);this.eText.innerHTML=t}addElementClasses(e,t){t=t?`-${t}`:"";const s=this.horizontal?"horizontal":"vertical";e.classList.add(`ag-column-drop-cell${t}`,`ag-column-drop-${s}-cell${t}`)}destroy(){super.destroy(),this.dragSourceDropTarget=null}},Sw=class extends Ao{constructor(e,t,s,i,r){super(t,s,r),this.column=e,this.dropZonePurpose=i,this.eSortIndicator=hw,this.popupShowing=!1}postConstruct(){const{sortSvc:e,colNames:t}=this.beans;this.template={tag:"span",role:"option",children:[{tag:"span",ref:"eDragHandle",cls:"ag-drag-handle ag-column-drop-cell-drag-handle",role:"presentation"},{tag:"span",ref:"eText",cls:"ag-column-drop-cell-text",attrs:{"aria-hidden":"true"}},e?{tag:"ag-sort-indicator",ref:"eSortIndicator"}:void 0,{tag:"span",ref:"eButton",cls:"ag-column-drop-cell-button",role:"presentation"}]},e&&(this.agComponents=[e.getSortIndicatorSelector()]),this.displayName=t.getDisplayNameForColumn(this.column,"columnDrop"),super.postConstruct(),e&&(this.setupSort(),this.addManagedEventListeners({sortChanged:()=>{this.setupAria()}})),this.isGroupingZone()&&this.addManagedPropertyListener("groupLockGroupColumns",()=>{this.refreshRemove(),this.refreshDraggable(),this.setupAria()})}getItem(){return this.column}getDisplayName(){return this.displayName}getTooltip(){return this.column.getColDef().headerTooltip}addAdditionalAriaInstructions(e,t){const s=this.gos.get("rowGroupPanelSuppressSort"),i=this.gos.get("functionsReadOnly");if(this.isAggregationZone()&&!i){const r=t("ariaDropZoneColumnValueItemDescription","Press ENTER to change the aggregation type");e.push(r)}if(this.isGroupingZone()&&this.column.isSortable()&&!s){const r=t("ariaDropZoneColumnGroupItemDescription","Press ENTER to sort");e.push(r)}super.addAdditionalAriaInstructions(e,t)}isMovable(){return this.isDraggable()}isDraggable(){return this.isReadOnly()}isRemovable(){return this.isReadOnly()}isReadOnly(){return!this.isGroupingAndLocked()&&!this.gos.get("functionsReadOnly")}getAriaDisplayName(){const e=this.getLocaleTextFunc(),{name:t,aggFuncName:s}=this.getColumnAndAggFuncName(),i=e("ariaDropZoneColumnComponentAggFuncSeparator"," of "),r={asc:e("ariaDropZoneColumnComponentSortAscending","ascending"),desc:e("ariaDropZoneColumnComponentSortDescending","descending")},a=this.column.getSort(),n=this.gos.get("rowGroupPanelSuppressSort");return[s&&`${s}${i}`,t,this.isGroupingZone()&&!n&&a&&`, ${r[a]}`].filter(o=>!!o).join("")}getColumnAndAggFuncName(){const e=this.displayName;let t="";if(this.isAggregationZone()){const s=this.column.getAggFunc(),i=typeof s=="string"?s:"agg";t=this.getLocaleTextFunc()(i,i)}return{name:e,aggFuncName:t}}setupSort(){if(!(!this.column.isSortable()||!this.isGroupingZone())&&!this.gos.get("rowGroupPanelSuppressSort")){this.eSortIndicator.setupSort(this.column,!0);const e=t=>{t.preventDefault(),this.beans.sortSvc.progressSortFromEvent(this.column,t)};this.addGuiEventListener("click",e),this.addGuiEventListener("keydown",t=>{t.key===Vs.ENTER&&this.isGroupingZone()&&e(t)})}}getDefaultIconName(){return"hide"}createGetDragItem(){const{column:e}=this;return()=>{const t={};return t[e.getId()]=e.isVisible(),{columns:[e],visibleState:t}}}setupComponents(){super.setupComponents(),this.isAggregationZone()&&!this.gos.get("functionsReadOnly")&&this.addGuiEventListener("click",this.onShowAggFuncSelection.bind(this))}onKeyDown(e){super.onKeyDown(e),e.key===Vs.ENTER&&this.isAggregationZone()&&!this.gos.get("functionsReadOnly")&&(e.preventDefault(),this.onShowAggFuncSelection())}getDisplayValue(){const{name:e,aggFuncName:t}=this.getColumnAndAggFuncName();return this.isAggregationZone()?`${t}(${e})`:e}onShowAggFuncSelection(){if(this.popupShowing)return;this.popupShowing=!0;const{aggFuncSvc:e,popupSvc:t}=this.beans,s=new ut({cssIdentifier:"select-agg-func"}),i=e.getFuncNames(this.column),r=this.getGui(),a=s.getGui();s.setModel({getRow:function(u){return i[u]},getRowCount:function(){return i.length}}),this.createBean(s);const n=uw({tag:"div",cls:"ag-select-agg-func-popup"});n.style.top="0px",n.style.left="0px",n.appendChild(a),n.style.width=`${r.clientWidth}px`;const[o]=this.addManagedElementListeners(n,{focusout:u=>{!n.contains(u.relatedTarget)&&d&&d.hideFunc()}}),l=u=>{this.destroyBean(s),this.popupShowing=!1,u?.key==="Escape"&&r.focus(),o&&o()},c=this.getLocaleTextFunc(),d=t.addPopup({modal:!0,eChild:n,closeOnEsc:!0,closedCallback:l,ariaLabel:c("ariaLabelAggregationFunction","Aggregation Function")});d&&s.setComponentCreator(this.createAggSelect.bind(this,d.hideFunc)),s.addGuiEventListener("keydown",u=>{if(u.key===Vs.ENTER||u.key===Vs.SPACE){const p=s.getLastFocusedRow();if(p==null)return;const g=s.getComponentAt(p);g&&g.selectItem()}}),t.positionPopupByComponent({type:"aggFuncSelect",eventSource:r,ePopup:n,keepWithinBounds:!0,column:this.column,position:"under"}),s.refresh();let h=i.findIndex(u=>u===this.column.getAggFunc());h===-1&&(h=0),s.focusRow(h)}createAggSelect(e,t){const s=()=>{e(),this.getGui().focus(),this.beans.valueColsSvc?.setColumnAggFunc?.(this.column,t,"toolPanelDragAndDrop")},i=this.getLocaleTextFunc(),r=t.toString(),a=i(r,r);return new bw(s,a)}isGroupingAndLocked(){return this.isGroupingZone()&&zt(this.column,this.beans)}isAggregationZone(){return this.dropZonePurpose==="aggregation"}isGroupingZone(){return this.dropZonePurpose==="rowGroup"}getDragSourceType(){return dw.ToolPanel}destroy(){super.destroy(),this.column=null}},bw=class extends cw{constructor(e,t){super({tag:"div",cls:"ag-select-agg-func-item"}),this.selectItem=e,this.getGui().innerText=t,this.addGuiEventListener("click",this.selectItem)}},Cr=class extends Fo{constructor(e,t){super(e),this.dropZonePurpose=t,this.addElementClasses(this.getGui(),this.dropZonePurpose.toLowerCase())}init(e){super.init(e),this.addManagedEventListeners({newColumnsLoaded:this.refreshGui.bind(this)}),this.addManagedPropertyListeners(["functionsReadOnly","rowGroupPanelSuppressSort","groupLockGroupColumns"],this.refreshGui.bind(this))}getItems(e){return e.columns??[]}isInterestedIn(e){return e===wo.HeaderCell||e===wo.ToolPanel}minimumAllowedNewInsertIndex(){const{gos:e,rowGroupColsSvc:t}=this.beans,s=e.get("groupLockGroupColumns"),i=t?.columns.length??0;return s===-1?i:Math.min(s,i)}showOrHideColumnOnExit(e){return this.isRowGroupPanel()&&$b(this.gos,!0)&&!e.fromNudge}handleDragEnterEnd(e){if(this.showOrHideColumnOnExit(e)){const i=e.dragSource.getDragItem().columns;this.setColumnsVisible(i,!1,"uiColumnDragged")}}handleDragLeaveEnd(e){if(this.showOrHideColumnOnExit(e)){const s=e.dragSource.getDragItem();this.setColumnsVisible(s.columns,!0,"uiColumnDragged")}}setColumnsVisible(e,t,s){if(e){const i=e.filter(r=>!r.getColDef().lockVisible);this.beans.colModel.setColsVisible(i,t,s)}}isRowGroupPanel(){return this.dropZonePurpose==="rowGroup"}createPillComponent(e,t,s,i){return new Sw(e,t,s,this.dropZonePurpose,i)}},Ro=class extends Cr{constructor(e){super(e,"pivot")}postConstruct(){const e=this.getLocaleTextFunc(),t=e("pivotColumnsEmptyMessage","Drag here to set column labels"),s=e("pivots","Column Labels");super.init({icon:jb("pivotPanel",this.beans,null),emptyMessage:t,title:s}),this.addManagedEventListeners({newColumnsLoaded:this.refresh.bind(this),columnPivotChanged:this.refresh.bind(this),columnPivotModeChanged:this.checkVisibility.bind(this)}),this.refresh()}getAriaLabel(){return this.getLocaleTextFunc()("ariaPivotDropZonePanelLabel","Column Labels")}refresh(){this.checkVisibility(),this.refreshGui()}checkVisibility(){const e=this.beans.colModel,t=e.isPivotMode();if(this.horizontal)switch(this.gos.get("pivotPanelShow")){case"always":this.setDisplayed(t);break;case"onlyWhenPivoting":{const s=e.isPivotActive();this.setDisplayed(t&&s);break}default:this.setDisplayed(!1);break}else this.setDisplayed(t)}isItemDroppable(e,t){return this.gos.get("functionsReadOnly")||!e.isPrimary()?!1:e.isAllowPivot()&&(!e.isPivotActive()||this.isSourceEventFromTarget(t))}updateItems(e){this.beans.pivotColsSvc?.setColumns(e,"toolPanelUi")}getIconName(){return this.isPotentialDndItems()?"pivot":"notAllowed"}getExistingItems(){return this.beans.pivotColsSvc?.columns??[]}};import{_createIconNoSpan as ww}from"ag-grid-community";var Eo=class extends Cr{constructor(e){super(e,"rowGroup")}postConstruct(){const e=this.getLocaleTextFunc(),t=e("rowGroupColumnsEmptyMessage","Drag here to set row groups"),s=e("groups","Row Groups");super.init({icon:ww("rowGroupPanel",this.beans,null),emptyMessage:t,title:s}),this.addManagedEventListeners({columnRowGroupChanged:this.refreshGui.bind(this)})}getAriaLabel(){return this.getLocaleTextFunc()("ariaRowGroupDropZonePanelLabel","Row Groups")}isItemDroppable(e,t){return this.gos.get("functionsReadOnly")||!e.isPrimary()||e.colDef.showRowGroup?!1:e.isAllowRowGroup()&&(!e.isRowGroupActive()||this.isSourceEventFromTarget(t))}updateItems(e){this.beans.rowGroupColsSvc?.setColumns(e,"toolPanelUi")}getIconName(){return this.isPotentialDndItems()?"group":"notAllowed"}getExistingItems(){return this.beans.rowGroupColsSvc?.columns??[]}};import{_createIconNoSpan as xw}from"ag-grid-community";var Mw=class extends Cr{constructor(e){super(e,"aggregation")}postConstruct(){const e=this.getLocaleTextFunc(),t=e("valueColumnsEmptyMessage","Drag here to aggregate"),s=e("values","Values");super.init({icon:xw("valuePanel",this.beans,null),emptyMessage:t,title:s}),this.addManagedEventListeners({columnValueChanged:this.refreshGui.bind(this)})}getAriaLabel(){return this.getLocaleTextFunc()("ariaValuesDropZonePanelLabel","Values")}getIconName(){return this.isPotentialDndItems()?"aggregate":"notAllowed"}isItemDroppable(e,t){return this.gos.get("functionsReadOnly")||!e.isPrimary()?!1:e.isAllowValue()&&(!e.isValueActive()||this.isSourceEventFromTarget(t))}updateItems(e){this.beans.valueColsSvc?.setColumns(e,"toolPanelUi")}getExistingItems(){return this.beans.valueColsSvc?.columns??[]}};import{AgToggleButtonSelector as Tw,Component as Fw,RefPlaceholder as Pw}from"ag-grid-community";var Aw={tag:"div",cls:"ag-pivot-mode-panel",children:[{tag:"ag-toggle-button",ref:"cbPivotMode",cls:"ag-pivot-mode-select"}]},Rw=class extends Fw{constructor(){super(...arguments),this.cbPivotMode=Pw}postConstruct(){this.setTemplate(Aw,[Tw]);const e=this.cbPivotMode,{colModel:t,ctrlsSvc:s,gos:i}=this.beans;e.setValue(t.isPivotMode());const r=this.getLocaleTextFunc();e.setLabel(r("pivotMode","Pivot Mode"));const a=()=>{const o=!!e.getValue();o!==t.isPivotMode()&&(i.updateGridOptions({options:{pivotMode:o},source:"toolPanelUi"}),s.getHeaderRowContainerCtrls().forEach(l=>l.refresh()))},n=()=>{const o=t.isPivotMode();e.setValue(o)};this.addManagedListeners(e,{fieldValueChanged:a}),this.addManagedEventListeners({newColumnsLoaded:n,columnPivotModeChanged:n})}},Ew=class extends Wb{constructor(){super(...arguments),this.beanName="colToolPanelFactory"}setPanelVisible(e,t,s){return e?e.setDisplayed(t):t&&(e=s()),e}createRowGroupPanel(e,t){return this.createPanel(e,t,new Eo(!1))}createValuesPanel(e,t){return this.createPanel(e,t,new Mw(!1))}createPivotPanel(e,t){return this.createPanel(e,t,new Ro(!1))}createPivotModePanel(e,t,s){return this.createPanel(e,t,new Rw,s)}createPanel(e,t,s,i){return s=e.createBean(s),t.push(()=>e.destroyBean(s)),i?e.prependChild(s):e.appendChild(s),s}},Io={moduleName:"ColumnsToolPanel",version:E,beans:[Ew],userComponents:{agColumnsToolPanel:Kb},icons:{columnsToolPanel:"columns",menuAddRowGroup:"group",menuRemoveRowGroup:"group",pivotPanel:"pivot",rowGroupPanel:"group",valuePanel:"aggregation",columnSelectClosed:"tree-closed",columnSelectOpen:"tree-open",columnSelectIndeterminate:"tree-indeterminate"},dependsOn:[O,Os,ty,iy,sy,Bs]};import{_ColumnMoveModule as Iw,_PopupModule as Dw,_SharedDragAndDropModule as Lw,_SharedMenuModule as kw}from"ag-grid-community";import{BeanStub as Gw,_createIconNoSpan as Do,_warn as Lo}from"ag-grid-community";var Ow=class extends Gw{constructor(){super(...arguments),this.beanName="chartMenuItemMapper"}getChartItems(e){const t=this.beans,s=t.chartSvc,i=e==="pivotChart";if(!s)return null;const r=this.getLocaleTextFunc.bind(this),a=i?new Nw(t,s,r):new Bw(t,s,r),n=s.isEnterprise();let o=a.getMenuItem();if(o&&o.subMenu&&!n){const c=d=>({...d,subMenu:d.subMenu?.filter(h=>!h._enterprise).map(h=>c(h))});o=c(o)}const l=this.gos.get("chartToolPanelsDef")?.settingsPanel?.chartGroupsDef;return l&&(o=this.filterAndOrderChartMenu(o,l,a.getConfigLookup())),this.cleanInternals(o)}cleanInternals(e){if(!e)return e;const t=s=>(delete s?._key,delete s?._enterprise,s?.subMenu?.forEach(i=>t(i)),s);return t(e)}buildLookup(e){const t={},s=i=>{t[i._key]=i,i.subMenu&&i.subMenu.forEach(r=>s(r))};return s(e),t}filterAndOrderChartMenu(e,t,s){const i=this.buildLookup(e),r={...e,subMenu:[]};for(const a of Object.keys(t)){const n=t[a],o=s[a];if(o===null)continue;if(o==null){Lo(173,{group:a});continue}const l=i[o._key];if(l)if(l.subMenu){const c=n.map(d=>{const h=o[d];if(h==null){Lo(174,{group:a,chartType:d});return}return i[h]}).filter(d=>d!==void 0);c.length>0&&(l.subMenu=c,r.subMenu?.push(l))}else r.subMenu?.push(l)}return r.subMenu?.length==0?null:r}},Nw=class{constructor(e,t,s){this.beans=e,this.chartSvc=t,this.getLocaleTextFunc=s}getMenuItem(){const e=this.getLocaleTextFunc(),t=(s,i,r,a,n=!1)=>({name:e(s,i+"\u200E"),action:()=>this.chartSvc.createPivotChart({chartType:r}),_key:a,_enterprise:n});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:Do("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}}},Bw=class{constructor(e,t,s){this.beans=e,this.chartSvc=t,this.getLocaleTextFunc=s}getMenuItem(){const e=this.getLocaleTextFunc(),t=(s,i,r,a,n=!1)=>({name:e(s,i),action:()=>this.chartSvc.createChartFromCurrentRange(r),_key:a,_enterprise:n});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:Do("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}}}};import{BeanStub as _w,_addGridCommonParams as Vw,_findNextFocusableElement as Hw}from"ag-grid-community";var zw=class extends _w{constructor(){super(...arguments),this.beanName="colChooserFactory"}createColumnSelectPanel(e,t,s,i){const r=e.createManagedBean(new bo),a=i??t?.getColDef().columnChooserParams??{},{contractColumnSelection:n,suppressColumnExpandAll:o,suppressColumnFilter:l,suppressColumnSelectAll:c,suppressSyncLayoutWithGrid:d,columnLayout:h}=a;return r.init(!!s,Vw(this.gos,{suppressColumnMove:!1,suppressValues:!1,suppressPivots:!1,suppressRowGroups:!1,suppressPivotMode:!1,contractColumnSelection:!!n,suppressColumnExpandAll:!!o,suppressColumnFilter:!!l,suppressColumnSelectAll:!!c,suppressSyncLayoutWithGrid:!!h||!!d,onStateUpdated:()=>{}}),"columnMenu"),h&&r.setColumnLayout(h),r}showColumnChooser({column:e,chooserParams:t,eventSource:s,headerPosition:i}){this.hideActiveColumnChooser();const r=this.createColumnSelectPanel(this,e,!0,t),a=this.getLocaleTextFunc(),n=this.beans,{visibleCols:o,focusSvc:l,menuUtils:c}=n,d=o.allCols.indexOf(e),h=e?l.focusedHeader??i??null:null;this.activeColumnChooserDialog=this.createBean(new kt({title:a("chooseColumns","Choose Columns"),component:r,width:300,height:300,resizable:!0,movable:!0,centered:!0,closable:!0,afterGuiAttached:()=>{Hw(n,r.getGui())?.focus({preventScroll:!0}),this.dispatchVisibleChangedEvent(!0,e)},closedCallback:u=>{const p=this.activeColumnChooser.getGui();this.destroyBean(this.activeColumnChooser),this.activeColumnChooser=void 0,this.activeColumnChooserDialog=void 0,this.dispatchVisibleChangedEvent(!1,e),e&&c.restoreFocusOnClose({column:e,headerPosition:h,columnIndex:d,eventSource:s},p,u,!0)},postProcessPopupParams:{type:"columnChooser",column:e,eventSource:s}})),this.activeColumnChooser=r}hideActiveColumnChooser(){this.destroyBean(this.activeColumnChooserDialog)}dispatchVisibleChangedEvent(e,t){this.eventSvc.dispatchEvent({type:"columnMenuVisibleChanged",visible:e,switchingTab:!1,key:"columnChooser",column:t??null})}};import{BeanStub as Uw,_addGridCommonParams as Kw,_isClientSideRowModel as Ww,_isLegacyMenuEnabled as jw}from"ag-grid-community";import{BeanStub as $w,_createIconNoSpan as j,_escapeString as vr,_exists as Yw,_getRowNode as Xw,_resetColumnState as qw,_warn as Zw}from"ag-grid-community";var Ze="separator";function ko(e,t){if(e)for(let s=e.length-2;s>=0;s--){const i=e[s]===t,r=e[s+1]===t;i&&r&&e.splice(s+1,1)}}var Jw=class extends $w{constructor(){super(...arguments),this.beanName="menuItemMapper"}mapWithStockItems(e,t,s,i){if(!e)return[];const r=[],a=this.getLocaleTextFunc(),{beans:n,gos:o}=this,{validation:l,pinnedCols:c,colAutosize:d,aggFuncSvc:h,rowGroupColsSvc:u,colNames:p,colModel:g,clipboardSvc:m,expansionSvc:f,focusSvc:C,csvCreator:v,excelCreator:y,menuSvc:S,colChooserFactory:b,sortSvc:w,chartMenuItemMapper:F,valueColsSvc:T}=n,P=(A,M,k,L)=>{switch(l?.validateMenuItem(A),A){case"pinSubMenu":return c&&M?{name:a("pinColumn","Pin Column"),icon:j("menuPin",n,null),subMenu:["clearPinned","pinLeft","pinRight"]}:null;case"pinLeft":return c&&M?{name:a("pinLeft","Pin Left"),action:()=>c.setColsPinned([M],"left",L),checked:!!M&&M.isPinnedLeft()}:null;case"pinRight":return c&&M?{name:a("pinRight","Pin Right"),action:()=>c.setColsPinned([M],"right",L),checked:!!M&&M.isPinnedRight()}:null;case"clearPinned":return c&&M?{name:a("noPin","No Pin"),action:()=>c.setColsPinned([M],null,L),checked:!!M&&!M.isPinned()}:null;case"valueAggSubMenu":return h&&T&&(M?.isPrimary()||M?.getColDef().pivotValueColumn)?{name:a("valueAggregation","Value Aggregation"),icon:j("menuValue",n,null),subMenu:Qw(M,h,T,a),disabled:o.get("functionsReadOnly")}:null;case"autoSizeThis":return d?{name:a("autosizeThisColumn","Autosize This Column"),action:()=>d.autoSizeColumn(M,L,o.get("skipHeaderOnAutoSize"))}:null;case"autoSizeAll":return d?{name:a("autosizeAllColumns","Autosize All Columns"),action:()=>d.autoSizeAllColumns(L,o.get("skipHeaderOnAutoSize"))}:null;case"rowGroup":return u?{name:a("groupBy","Group by")+" "+vr(p.getDisplayNameForColumn(M,"header")),disabled:o.get("functionsReadOnly")||M?.isRowGroupActive()||!M?.getColDef().enableRowGroup,action:()=>u.addColumns([M],L),icon:j("menuAddRowGroup",n,null)}:null;case"rowUnGroup":if(u&&o.isModuleRegistered("SharedRowGrouping")){const D=M?.getColDef().showRowGroup,R=o.get("groupLockGroupColumns");let G,K,te;if(D===!0)G=a("ungroupAll","Un-Group All"),K=o.get("functionsReadOnly")||R===-1||R>=(u.columns.length??0),te=()=>u.setColumns(u.columns.slice(0,R),L);else if(typeof D=="string"){const X=g.getColDefCol(D),se=X!=null?vr(p.getDisplayNameForColumn(X,"header")):D;G=a("ungroupBy","Un-Group by")+" "+se,K=o.get("functionsReadOnly")||zt(X,n),te=()=>{u.removeColumns([D],L)}}else G=a("ungroupBy","Un-Group by")+" "+vr(p.getDisplayNameForColumn(M,"header")),K=o.get("functionsReadOnly")||!M?.isRowGroupActive()||!M?.getColDef().enableRowGroup||zt(M,n),te=()=>u.removeColumns([M],L);return{name:G,disabled:K,action:te,icon:j("menuRemoveRowGroup",n,null)}}else return null;case"resetColumns":return{name:a("resetColumns","Reset Columns"),action:()=>qw(n,L)};case"expandAll":return f?{name:a("expandAll","Expand All Row Groups"),action:()=>f.expandAll(!0)}:null;case"contractAll":return f?{name:a("collapseAll","Collapse All Row Groups"),action:()=>f.expandAll(!1)}:null;case"copy":return m?{name:a("copy","Copy"),shortcut:a("ctrlC","Ctrl+C"),icon:j("clipboardCopy",n,null),action:()=>m.copyToClipboard()}:null;case"copyWithHeaders":return m?{name:a("copyWithHeaders","Copy with Headers"),icon:j("clipboardCopy",n,null),action:()=>m.copyToClipboard({includeHeaders:!0})}:null;case"copyWithGroupHeaders":return m?{name:a("copyWithGroupHeaders","Copy with Group Headers"),icon:j("clipboardCopy",n,null),action:()=>m.copyToClipboard({includeHeaders:!0,includeGroupHeaders:!0})}:null;case"cut":if(m){const D=C.getFocusedCell(),R=D?Xw(n,D):null,G=R?D?.column.isCellEditable(R):!1;return{name:a("cut","Cut"),shortcut:a("ctrlX","Ctrl+X"),icon:j("clipboardCut",n,null),disabled:!G||o.get("suppressCutToClipboard"),action:()=>m.cutToClipboard(void 0,"contextMenu")}}else return null;case"paste":return m?{name:a("paste","Paste"),shortcut:a("ctrlV","Ctrl+V"),disabled:!0,icon:j("clipboardPaste",n,null),action:()=>m.pasteFromClipboard()}:null;case"export":{const D=[];return!o.get("suppressCsvExport")&&v&&D.push("csvExport"),!o.get("suppressExcelExport")&&y&&D.push("excelExport"),D.length?{name:a("export","Export"),subMenu:D,icon:j("save",n,null)}:null}case"csvExport":return v?{name:a("csvExport","CSV Export"),icon:j("csvExport",n,null),action:()=>v.exportDataAsCsv()}:null;case"excelExport":return y?{name:a("excelExport","Excel Export"),icon:j("excelExport",n,null),action:()=>y.exportDataAsExcel()}:null;case"separator":return"separator";case"pivotChart":case"chartRange":return F.getChartItems(A);case"columnFilter":return S&&M?{name:a("columnFilter","Column Filter"),icon:j("filter",n,null),action:()=>S.showFilterMenu({column:M,buttonElement:k(),containerType:"columnFilter",positionBy:"button"})}:null;case"columnChooser":{const D=C.focusedHeader;return b?{name:a("columnChooser","Choose Columns"),icon:j("columns",n,null),action:()=>b.showColumnChooser({column:M,eventSource:k(),headerPosition:D})}:null}case"sortAscending":return w?{name:a("sortAscending","Sort Ascending"),icon:j("sortAscending",n,null),action:()=>w.setSortForColumn(M,"asc",!1,L)}:null;case"sortDescending":return w?{name:a("sortDescending","Sort Descending"),icon:j("sortDescending",n,null),action:()=>w.setSortForColumn(M,"desc",!1,L)}:null;case"sortUnSort":return w?{name:a("sortUnSort","Clear Sort"),icon:j("sortUnSort",n,null),action:()=>w.setSortForColumn(M,null,!1,L)}:null;default:return Zw(176,{key:A}),null}};return e.forEach(A=>{let M;if(typeof A=="string"?M=P(A,t,s,i):M={...A},!M)return;const k=M,{subMenu:L}=k;L&&L instanceof Array&&(k.subMenu=this.mapWithStockItems(L,t,s,i)),M!=null&&r.push(M)}),ko(r,Ze),r}};function Qw(e,t,s,i){let r;if(e.isPrimary())r=e;else{const n=e.getColDef().pivotValueColumn;r=Yw(n)?n:void 0}const a=[];if(r){const n=r.isValueActive(),o=t.getFuncNames(r);a.push({name:i("noAggregation","None"),action:()=>{s.removeColumns([r],"contextMenu"),s.setColumnAggFunc(r,void 0,"contextMenu")},checked:!n}),o.forEach(l=>{a.push({name:i(l,t.getDefaultFuncLabel(l)),action:()=>{s.setColumnAggFunc(r,l,"contextMenu"),s.addColumns([r],"contextMenu")},checked:n&&r.getAggFunc()===l})})}return a}var ex=class extends Uw{constructor(){super(...arguments),this.beanName="colMenuFactory"}createMenu(e,t,s,i){const r=e.createManagedBean(new Ut(0,{column:s??null,node:null,value:null})),a=this.beans.menuItemMapper.mapWithStockItems(t,s??null,i,"columnMenu");return r.addMenuItems(a),r}getMenuItems(e=null,t=null){const s=this.getDefaultMenuOptions(e);let i;const r=(e?.getColDef()??t?.getColGroupDef())?.mainMenuItems;if(Array.isArray(r))i=r;else if(typeof r=="function")i=r(Kw(this.gos,{column:e,columnGroup:t,defaultItems:s}));else{const a=this.gos.getCallback("getMainMenuItems");a?i=a({column:e,columnGroup:t,defaultItems:s}):i=s}return ko(i,Ze),i}getDefaultMenuOptions(e){const t=[],{beans:s,gos:i}=this,{colChooserFactory:r,rowGroupColsSvc:a,colModel:n,expansionSvc:o,sortSvc:l,menuSvc:c,pinnedCols:d,aggFuncSvc:h,colAutosize:u}=s,p=jw(i),g=()=>{!p&&r&&t.push("columnChooser"),t.push("resetColumns")};if(!e)return g(),t;const{colDef:m}=e,f=d&&!m.lockPinned,C=a?.columns.length??0,v=C>0,y=e.isPrimary(),S=h&&y&&v&&e.isAllowValue()||!y;if(l&&!p&&e.isSortable()){const b=e.getSort();b!=="asc"&&t.push("sortAscending"),b!=="desc"&&t.push("sortDescending"),b&&t.push("sortUnSort"),t.push(Ze)}if(c?.isFilterMenuItemEnabled(e)&&(t.push("columnFilter"),t.push(Ze)),f&&t.push("pinSubMenu"),S&&t.push("valueAggSubMenu"),(f||S)&&t.push(Ze),u&&(t.push("autoSizeThis"),t.push("autoSizeAll"),t.push(Ze)),a&&i.isModuleRegistered("SharedRowGrouping")){const b=t.length;m.showRowGroup?t.push("rowUnGroup"):e.isAllowRowGroup()&&y&&(e.isRowGroupActive()?zt(e,s)||t.push("rowUnGroup"):t.push("rowGroup")),t.length>b&&t.push(Ze)}return g(),o&&Ww(i)&&(i.get("treeData")||C>(n.isPivotMode()?1:0))&&(t.push("expandAll"),t.push("contractAll")),t}};import{BeanStub as tx,Component as sx,_addGridCommonParams as ix,_anchorElementToMouseMoveEvent as Go,_areCellsEqual as rx,_createElement as ax,_createIconNoSpan as nx,_exists as Oo,_focusInto as ox,_getPageBody as lx,_getRootNode as cx,_isIOSUserAgent as dx,_isKeyboardMode as hx,_isNothingFocused as ux,_isPromise as px,_isVisible as gx,_preserveRangesWhile as No,_warn as mx}from"ag-grid-community";var fx="ag-menu",Bo="ag-context-menu-open",Cx="ag-context-menu-loading-icon",vx=class extends tx{constructor(){super(...arguments),this.beanName="contextMenuSvc",this.destroyLoadingSpinner=null,this.lastPromise=0}hideActiveMenu(){this.destroyBean(this.activeMenu)}getMenuItems(e,t,s,i){const r=[],{clipboardSvc:a,chartSvc:n,csvCreator:o,excelCreator:l,colModel:c,rangeSvc:d,gos:h}=this.beans;if(Oo(e)&&a&&t&&(h.get("suppressCutToClipboard")||r.push("cut"),r.push("copy","copyWithHeaders","copyWithGroupHeaders","paste","separator")),h.get("enableCharts")&&n&&(c.isPivotMode()&&r.push("pivotChart"),d&&!d.isEmpty()&&r.push("chartRange")),Oo(e)){const m=h.get("suppressExcelExport")||!l,f=h.get("suppressCsvExport")||!o;!dx()&&(!m||!f)&&r.push("export")}const u=r.length?r:void 0,p=t?.getColDef().contextMenuItems;return Array.isArray(p)?p:typeof p=="function"?p(ix(h,{column:t,node:e,value:s,defaultItems:u,event:i})):h.getCallback("getContextMenuItems")?.({column:t,node:e,value:s,defaultItems:u,event:i})??r}getContextMenuPosition(e,t){const s=this.getRowCtrl(e),i=this.getCellGui(s,t);if(!i)return{x:0,y:s?.getRowYPosition()??0};const r=i.getBoundingClientRect();return{x:r.x+r.width/2,y:r.y+r.height/2}}showContextMenu(e){const t=e.rowNode??null,s=e.column??null;let{anchorToElement:i,value:r,source:a}=e;t&&s&&r==null&&(r=this.beans.valueSvc.getValueForDisplay(s,t)),i==null&&(i=this.getContextMenuAnchorElement(t,s)),this.beans.menuUtils.onContextMenu({mouseEvent:e.mouseEvent??null,touchEvent:e.touchEvent??null,showMenuCallback:n=>this.showMenu(t,s,r,n,i),source:a})}handleContextMenuMouseEvent(e,t,s,i){const r=i?.rowNode??s?.rowNode??null,a=i?.column??s?.findFullWidthInfoForEvent(e||t)?.column??null,{valueSvc:n,ctrlsSvc:o}=this.beans,l=a?n.getValue(a,r):null,c=o.getGridBodyCtrl(),d=i?i.eGui:c.eGridBody;this.showContextMenu({mouseEvent:e,touchEvent:t,rowNode:r,column:a,value:l,anchorToElement:d,source:"ui"})}showMenu(e,t,s,i,r){const a=this.getMenuItems(e,t,s,i);if(px(a)){const n=this.lastPromise+1;return this.lastPromise=n,this.destroyLoadingSpinner||this.createLoadingIcon(i),a.then(o=>{if(this.lastPromise!==n)return;const{target:l}=i,c=!l;o&&o.length&&(c||gx(l))&&!this.beans.overlays?.isExclusive()&&this.createContextMenu({menuItems:o,node:e,column:t,value:s,mouseEvent:i,anchorToElement:r}),this.destroyLoadingSpinner?.()}),!0}return a===void 0||!a?.length?!1:(this.createContextMenu({menuItems:a,node:e,column:t,value:s,mouseEvent:i,anchorToElement:r}),!0)}createLoadingIcon(e){const{beans:t}=this,s=this.getLocaleTextFunc(),i=nx("loadingMenuItems",t),r=ax({tag:"div",cls:Cx});r.appendChild(i);const a=cx(t),n=lx(t);if(!n){mx(54);return}n.appendChild(r),t.ariaAnnounce?.announceValue(s("ariaLabelLoadingContextMenu","Loading Context Menu"),"contextmenu"),t.environment.applyThemeClasses(r),Go(r,e,t);const o=l=>{Go(r,l,t)};a.addEventListener("mousemove",o),this.destroyLoadingSpinner=()=>{a.removeEventListener("mousemove",o),n.removeChild(r),this.destroyLoadingSpinner=null}}createContextMenu(e){const{menuItems:t,node:s,column:i,value:r,mouseEvent:a,anchorToElement:n}=e,{ctrlsSvc:o,focusSvc:l,popupSvc:c}=this.beans,d=o.getGridBodyCtrl().eGridBody,h=new yx(t,i,s,r);this.createBean(h);const u=h.getGui();i||l.clearFocusedCell();const p={column:i,rowNode:s,type:"contextMenu",mouseEvent:a,ePopup:u,nudgeY:1},g=this.getLocaleTextFunc(),m=c?.addPopup({modal:!0,eChild:u,closeOnEsc:!0,closedCallback:C=>{No(this.beans,()=>{d.classList.remove(Bo),this.destroyBean(h),this.dispatchVisibleChangedEvent(!1,C===void 0?"api":"ui")})},click:a,positionCallback:()=>{const C=this.gos.get("enableRtl");c?.positionPopupUnderMouseEvent({...p,nudgeX:C?(u.offsetWidth+1)*-1:1})},anchorToElement:n,ariaLabel:g("ariaLabelContextMenu","Context Menu")});m&&(d.classList.add(Bo),h.afterGuiAttached({container:"contextMenu",hidePopup:m.hideFunc})),this.activeMenu&&this.hideActiveMenu(),this.activeMenu=h,h.addEventListener("destroyed",()=>{this.activeMenu===h&&(this.activeMenu=null)}),m&&h.addEventListener("closeMenu",C=>m.hideFunc({mouseEvent:C.mouseEvent??void 0,keyboardEvent:C.keyboardEvent??void 0,forceHide:!0}));const f=a&&a instanceof MouseEvent&&a.type==="mousedown";this.dispatchVisibleChangedEvent(!0,f?"api":"ui")}dispatchVisibleChangedEvent(e,t="ui"){this.eventSvc.dispatchEvent({type:"contextMenuVisibleChanged",visible:e,source:t})}getRowCtrl(e){const{rowIndex:t,rowPinned:s}=e||{};if(t!=null)return this.beans.rowRenderer.getRowByPosition({rowIndex:t,rowPinned:s})||void 0}getCellGui(e,t){return!e||!t?void 0:e.getCellCtrl(t)?.eGui||void 0}getContextMenuAnchorElement(e,t){const s=this.beans.ctrlsSvc.getGridBodyCtrl().eGridBody,i=this.getRowCtrl(e);if(!i)return s;const r=this.getCellGui(i,t);return r||(i.isFullWidth()?i.getFullWidthElement():s)}destroy(){this.destroyLoadingSpinner?.(),super.destroy()}},yx=class extends sx{constructor(e,t,s,i){super({tag:"div",cls:fx,role:"presentation"}),this.menuItems=e,this.column=t,this.node=s,this.value=i,this.menuList=null,this.focusedCell=null}postConstruct(){const e=this.createManagedBean(new Ut(0,{column:this.column,node:this.node,value:this.value})),t=this.beans.menuItemMapper.mapWithStockItems(this.menuItems,null,()=>this.getGui(),"contextMenu");e.addMenuItems(t),this.appendChild(e),this.menuList=e,e.addEventListener("closeMenu",s=>this.dispatchLocalEvent(s))}afterGuiAttached({hidePopup:e}){e&&this.addDestroyFunc(e),this.focusedCell=this.beans.focusSvc.getFocusedCell();const t=this.menuList;t&&No(this.beans,()=>ox(t.getGui()))}restoreFocusedCell(){const{beans:e,focusedCell:t}=this,s=e.focusSvc,i=s.getFocusedCell();if(i&&t&&rx(i,t)){const{rowIndex:r,rowPinned:a,column:n}=t;ux(e)&&s.setFocusedCell({rowIndex:r,column:n,rowPinned:a,forceBrowserFocus:!0,preventScrollOnBrowserFocus:!hx()})}}destroy(){super.destroy(),this.restoreFocusedCell()}};import{AgPromise as yr,BeanStub as _o,Component as Sx,FilterWrapperComp as bx,RefPlaceholder as wx,_createElement as xx,_createIconNoSpan as Sr,_error as Mx,_focusInto as Tx,_isColumnMenuAnchoringEnabled as Fx,_isLegacyMenuEnabled as Hs,_setColMenuVisible as Vo,_warn as Px,isColumn as Ax}from"ag-grid-community";import{KeyCode as Kt,RefPlaceholder as Ho,TabGuardComp as Rx,_clearElement as Ex,_createElement as Ix,_createIconNoSpan as Dx,_findNextFocusableElement as Lx,_focusInto as zo,_getActiveDomElement as Uo,_getDocument as br,_isKeyboardMode as kx,_setAriaLabel as Ko,_setAriaRole as wr}from"ag-grid-community";function Gx(e){return{tag:"div",cls:`ag-tabs ${e}`,children:[{tag:"div",ref:"eHeader"},{tag:"div",ref:"eBody",role:"presentation",cls:`ag-tabs-body ${e?`${e}-body`:""}`}]}}var Wo=class extends Rx{constructor(e){super(Gx(e.cssClass)),this.eHeader=Ho,this.eBody=Ho,this.items=[],this.tabbedItemScrollMap=new Map,this.params=e}postConstruct(){this.setupHeader(),this.params.items&&this.params.items.forEach(e=>this.addItem(e)),this.initialiseTabGuard({onTabKeyDown:this.onTabKeyDown.bind(this),handleKeyDown:this.handleKeyDown.bind(this),focusInnerElement:this.focusInnerElement.bind(this),focusTrapActive:!0}),this.addDestroyFunc(()=>this.activeItem?.tabbedItem?.afterDetachedCallback?.())}setupHeader(){const{enableCloseButton:e,cssClass:t}=this.params,s=(i,r)=>{i.classList.add(`ag-tabs-${r}`),t&&i.classList.add(`${t}-${r}`)};e?(this.setupCloseButton(s),this.eTabHeader=br(this.beans).createElement("div"),s(this.eHeader,"header-wrapper"),wr(this.eHeader,"presentation"),this.eHeader.appendChild(this.eTabHeader)):this.eTabHeader=this.eHeader,wr(this.eTabHeader,"tablist"),s(this.eTabHeader,"header")}setupCloseButton(e){const t=br(this.beans),s=t.createElement("button");e(s,"close-button");const i=Dx("close",this.beans);Ko(s,this.params.closeButtonAriaLabel),s.appendChild(i),this.addManagedElementListeners(s,{click:()=>this.params.onCloseClicked?.()});const r=t.createElement("div");e(r,"close-button-wrapper"),wr(r,"presentation"),r.appendChild(s),this.eHeader.appendChild(r),this.eCloseButton=s}handleKeyDown(e){switch(e.key){case Kt.RIGHT:case Kt.LEFT:{if(!this.eTabHeader.contains(Uo(this.beans)))return;const t=e.key===Kt.RIGHT,s=this.gos.get("enableRtl"),i=this.items.indexOf(this.activeItem),r=t!==s?Math.min(i+1,this.items.length-1):Math.max(i-1,0);if(i===r)return;e.preventDefault();const a=this.items[r];this.showItemWrapper(a),a.eHeaderButton.focus();break}case Kt.UP:case Kt.DOWN:e.stopPropagation();break}}onTabKeyDown(e){if(e.defaultPrevented)return;const{beans:t,eHeader:s,eBody:i,activeItem:r,params:a}=this,{suppressTrapFocus:n,enableCloseButton:o}=a,l=Uo(t),c=e.target,d=e.shiftKey;if(s.contains(l)){e.preventDefault(),o&&d&&!this.eCloseButton?.contains(l)?this.eCloseButton?.focus():n&&d?ir(br(t).body,c)?.focus():this.focusBody(e.shiftKey);return}let h=null;if(Yn(i,c)&&(d&&(h=ir(i,c)),!h&&!n&&(h=r.eHeaderButton)),!h&&i.contains(l)&&(h=Lx(t,i,!1,d),!h)){n&&!d?this.forceFocusOutOfContainer(d):o&&!d?(e.preventDefault(),this.eCloseButton?.focus()):(e.preventDefault(),this.focusHeader());return}h&&(e.preventDefault(),h.focus())}focusInnerElement(e){return e?this.focusBody(!0):(this.focusHeader(),!0)}focusHeader(e){this.activeItem.eHeaderButton.focus({preventScroll:e})}focusBody(e){return zo(this.eBody,e)}setAfterAttachedParams(e){this.afterAttachedParams=e}showFirstItem(){this.items.length>0&&this.showItemWrapper(this.items[0])}addItem(e){const t=Ix({tag:"span",cls:"ag-tab",role:"tab",attrs:{tabindex:"-1"}});t.appendChild(e.title),this.eTabHeader.appendChild(t),Ko(t,e.titleLabel);const s={tabbedItem:e,eHeaderButton:t};this.items.push(s),t.addEventListener("click",this.showItemWrapper.bind(this,s))}showItem(e){const t=this.items.find(s=>s.tabbedItem===e);t&&this.showItemWrapper(t)}showItemWrapper(e){const{tabbedItem:t,eHeaderButton:s}=e;if(this.params.onItemClicked?.({item:t}),this.activeItem===e){this.params.onActiveItemClicked?.();return}this.lastScrollListener&&(this.lastScrollListener=this.lastScrollListener()),Ex(this.eBody),t.bodyPromise.then(i=>{this.eBody.appendChild(i);const r=!kx();if(this.params.suppressFocusBodyOnOpen||zo(this.eBody,!1,r),t.afterAttachedCallback&&t.afterAttachedCallback(this.afterAttachedParams),this.params.keepScrollPosition){const a=t.getScrollableContainer&&t.getScrollableContainer()||i;[this.lastScrollListener]=this.addManagedElementListeners(a,{scroll:()=>{this.tabbedItemScrollMap.set(t.name,a.scrollTop)}});const n=this.tabbedItemScrollMap.get(t.name);n!==void 0&&setTimeout(()=>{a.scrollTop=n},0)}}),this.activeItem&&(this.activeItem.eHeaderButton.classList.remove("ag-tab-selected"),this.activeItem.tabbedItem.afterDetachedCallback?.()),s.classList.add("ag-tab-selected"),this.activeItem=e}},Be="filterMenuTab",_e="generalMenuTab",Je="columnsMenuTab",zs=[_e,Be,Je],Ox=class extends _o{constructor(){super(...arguments),this.beanName="enterpriseMenuFactory"}hideActiveMenu(){this.destroyBean(this.activeMenu)}showMenuAfterMouseEvent(e,t,s,i,r){const{column:a,columnGroup:n}=this.splitColumnOrGroup(e),o=r?"filterMenuTab":void 0;this.showMenu(a,n,l=>{const c=l.getGui();this.beans.popupSvc.positionPopupUnderMouseEvent({type:s,column:a,mouseEvent:t,ePopup:c}),o&&l.showTab?.(o),this.dispatchVisibleChangedEvent(!0,!1,a,n,o)},s,o,void 0,t.target,i)}splitColumnOrGroup(e){const t=e&&Ax(e);return{column:t?e:void 0,columnGroup:t?void 0:e}}showMenuAfterButtonClick(e,t,s,i,r){let a=-1,n="left";this.gos.get("enableRtl")&&(a=1,n="right");const o=r?"filterMenuTab":void 0,l=o?[o]:void 0,c=Hs(this.gos),d=(c?9:4)*a,h=c?-23:4,{column:u,columnGroup:p}=this.splitColumnOrGroup(e);this.showMenu(u,p,g=>{const m=g.getGui();this.beans.popupSvc.positionPopupByComponent({type:s,column:u,eventSource:t,ePopup:m,alignSide:n,nudgeX:d,nudgeY:h,position:"under",keepWithinBounds:!0}),o&&g.showTab?.(o),this.dispatchVisibleChangedEvent(!0,!1,u,p,o)},s,o,l,t,i)}showMenu(e,t,s,i,r,a,n,o){const l=this.getMenuParams(e,t,a,n);if(!l)return;const{menu:c,eMenuGui:d,anchorToElement:h,restoreFocusParams:u}=l,p=[],{menuUtils:g,popupSvc:m}=this.beans;p.push(C=>{const v=c.getGui();this.destroyBean(c),e&&(Vo(e,!1,"contextMenu"),g.restoreFocusOnClose(u,v,C)),o?.()});const f=this.getLocaleTextFunc();if(m.addPopup({modal:!0,eChild:d,closeOnEsc:!0,closedCallback:C=>{p.forEach(v=>v(C)),this.dispatchVisibleChangedEvent(!1,!1,e,t,r)},afterGuiAttached:C=>c.afterGuiAttached(Object.assign({},{container:i},C)),positionCallback:r?()=>s(c):void 0,ariaLabel:f("ariaLabelColumnMenu","Column Menu")}),r||(c.showTabBasedOnPreviousSelection?.(),s(c)),Fx(this.gos)){const C=m.setPopupPositionRelatedToElement(d,h);C&&e&&this.addStopAnchoring(C,e,p)}c.addEventListener("tabSelected",C=>{this.dispatchVisibleChangedEvent(!1,!0,e),this.lastSelectedTab=C.key,this.dispatchVisibleChangedEvent(!0,!0,e)}),e&&Vo(e,!0,"contextMenu"),this.activeMenu=c,c.addEventListener("destroyed",()=>{this.activeMenu===c&&(this.activeMenu=null)})}addStopAnchoring(e,t,s){e.then(i=>{t.__addEventListener("leftChanged",i),t.__addEventListener("visibleChanged",i),s.push(()=>{t.__removeEventListener("leftChanged",i),t.__removeEventListener("visibleChanged",i)})})}getMenuParams(e,t,s,i){const{focusSvc:r,visibleCols:a,ctrlsSvc:n}=this.beans,o={column:e,headerPosition:r.focusedHeader,columnIndex:a.allCols.indexOf(e),eventSource:i},l=this.createMenu(e,t,o,s,i);return l?{menu:l,eMenuGui:l.getGui(),anchorToElement:i||n.getGridBodyCtrl().eGridBody,restoreFocusParams:o}:void 0}createMenu(e,t,s,i,r){if(Hs(this.gos))return this.createBean(new Nx(e,s,this.lastSelectedTab,i,r));{const a=this.beans.colMenuFactory.getMenuItems(e,t);return a.length?this.createBean(new Bx(a,e,s,r)):void 0}}dispatchVisibleChangedEvent(e,t,s,i,r){this.eventSvc.dispatchEvent({type:"columnMenuVisibleChanged",visible:e,switchingTab:t,key:this.lastSelectedTab??r??(Hs(this.gos)?_e:"columnMenu"),column:s??null,columnGroup:i??null})}isMenuEnabled(e){if(!Hs(this.gos))return!0;const t=!this.beans.filterManager?.isFilterAllowed(e),s=e.getColDef().menuTabs??zs;return(t&&s.includes(Be)?s.length-1:s.length)>0}showMenuAfterContextMenuEvent(e,t,s){this.beans.menuUtils.onContextMenu({mouseEvent:t,touchEvent:s,source:"ui",showMenuCallback:i=>(this.showMenuAfterMouseEvent(e,i,"columnMenu"),!0)})}},Nx=class extends _o{constructor(e,t,s,i,r){super(),this.column=e,this.restoreFocusParams=t,this.initialSelection=s,this.restrictTo=i,this.sourceElement=r,this.tabFactories={},this.includeChecks={};const{tabFactories:a,includeChecks:n}=this;a[_e]=this.createMainPanel.bind(this),a[Be]=this.createFilterPanel.bind(this),a[Je]=this.createColumnsPanel.bind(this),n[_e]=()=>!0,n[Be]=()=>e?!!this.beans.filterManager?.isFilterAllowed(e):!1,n[Je]=()=>!0}postConstruct(){const e=this.getTabsToCreate().map(s=>this.createTab(s)),t=new Wo({items:e,cssClass:"ag-menu",onActiveItemClicked:this.onHidePopup.bind(this),onItemClicked:this.onTabItemClicked.bind(this)});this.tabbedLayout=this.createBean(t),this.mainMenuList?.setParentComponent(t),this.addDestroyFunc(()=>this.destroyBean(t))}getTabsToCreate(){return this.restrictTo?this.restrictTo:(this.column?.getColDef().menuTabs??zs).filter(e=>this.isValidMenuTabItem(e)&&this.isNotSuppressed(e))}isValidMenuTabItem(e){let t=!0,s=zs;return this.restrictTo!=null&&(t=this.restrictTo.indexOf(e)>-1,s=this.restrictTo),t=t&&zs.indexOf(e)>-1,t||Px(175,{menuTabName:e,itemsToConsider:s}),t}isNotSuppressed(e){return this.includeChecks[e]()}createTab(e){return this.tabFactories[e]()}showTabBasedOnPreviousSelection(){this.showTab(this.initialSelection)}showTab(e){const{tabItemColumns:t,tabbedLayout:s,tabItemFilter:i,tabItemGeneral:r}=this;t&&e===Je?s.showItem(t):i&&e===Be?s.showItem(i):r&&e===_e?s.showItem(r):s.showFirstItem()}onTabItemClicked(e){let t=null;switch(e.item){case this.tabItemColumns:t=Je;break;case this.tabItemFilter:t=Be;break;case this.tabItemGeneral:t=_e;break}t&&this.activateTab(t)}activateTab(e){const t={type:"tabSelected",key:e};this.dispatchLocalEvent(t)}createMainPanel(){const{beans:e,column:t}=this,s=e.colMenuFactory,i=s.createMenu(this,s.getMenuItems(t),this.column,()=>this.sourceElement??this.getGui());this.mainMenuList=i,i.addEventListener("closeMenu",this.onHidePopup.bind(this));const r={title:Sr("legacyMenu",e,t),titleLabel:_e.replace("MenuTab",""),bodyPromise:yr.resolve(i.getGui()),name:_e};return this.tabItemGeneral=r,r}onHidePopup(e){this.beans.menuUtils.closePopupAndRestoreFocusOnSelect(this.hidePopupFunc,this.restoreFocusParams,e)}createFilterPanel(){const e=this.column?this.createBean(new bx(this.column,"COLUMN_MENU")):null;this.filterComp=e,e?.hasFilter()||Mx(119);const t=i=>e?.afterGuiAttached(i),s=()=>e?.afterGuiDetached();return this.tabItemFilter={title:Sr("filterTab",this.beans,this.column),titleLabel:Be.replace("MenuTab",""),bodyPromise:yr.resolve(e?.getGui()),afterAttachedCallback:t,afterDetachedCallback:s,name:Be},this.tabItemFilter}createColumnsPanel(){const e=xx({tag:"div",cls:"ag-menu-column-select-wrapper"}),{beans:t,column:s}=this,r=t.colChooserFactory.createColumnSelectPanel(this,s).getGui();r.classList.add("ag-menu-column-select"),e.appendChild(r);const a={title:Sr("columns",t,s),titleLabel:Je.replace("MenuTab",""),bodyPromise:yr.resolve(e),name:Je};return this.tabItemColumns=a,a}afterGuiAttached(e){const{container:t,hidePopup:s}=e;this.tabbedLayout.setAfterAttachedParams({container:t,hidePopup:s}),s&&(this.hidePopupFunc=s,this.addDestroyFunc(s))}getGui(){return this.tabbedLayout.getGui()}destroy(){super.destroy(),this.destroyBean(this.filterComp)}},Bx=class extends Sx{constructor(e,t,s,i){super({tag:"div",ref:"eColumnMenu",cls:"ag-menu ag-column-menu",role:"presentation"}),this.menuItems=e,this.column=t,this.restoreFocusParams=s,this.sourceElement=i,this.eColumnMenu=wx}postConstruct(){const e=this.beans.colMenuFactory.createMenu(this,this.menuItems,this.column,()=>this.sourceElement??this.getGui());this.mainMenuList=e,e.addEventListener("closeMenu",this.onHidePopup.bind(this)),this.eColumnMenu.appendChild(e.getGui())}onHidePopup(e){this.beans.menuUtils.closePopupAndRestoreFocusOnSelect(this.hidePopupFunc,this.restoreFocusParams,e)}afterGuiAttached({hidePopup:e}){e&&(this.hidePopupFunc=e,this.addDestroyFunc(e)),Tx(this.mainMenuList.getGui())}};function _x(e,t){const{contextMenuSvc:s}=e;if(!s)return;const{rowNode:i,column:r,value:a,x:n,y:o}=t||{};let{x:l,y:c}=s.getContextMenuPosition(i,r);n!=null&&(l=n),o!=null&&(c=o),s.showContextMenu({mouseEvent:new MouseEvent("mousedown",{clientX:l,clientY:c}),rowNode:i,column:r,value:a,source:"api"})}function Vx(e,t){e.colChooserFactory?.showColumnChooser({chooserParams:t})}function Hx(e){e.colChooserFactory?.hideActiveColumnChooser()}import{BeanStub as zx,_findTabbableParent as Ux,_getActiveDomElement as Kx,_isNothingFocused as jo,_isVisible as Wx,_last as jx}from"ag-grid-community";var $x=class extends zx{constructor(){super(...arguments),this.beanName="menuUtils"}restoreFocusOnClose(e,t,s,i){const{eventSource:r}=e,a=s instanceof KeyboardEvent;if(!i&&!a||!r)return;const n=Kx(this.beans);!t.contains(n)&&!jo(this.beans)||this.focusHeaderCell(e)}closePopupAndRestoreFocusOnSelect(e,t,s){let i;s&&s.keyboardEvent&&(i=s.keyboardEvent),e(i&&{keyboardEvent:i});const r=this.beans,a=r.focusSvc,n=a.getFocusedCell();if(jo(r))if(n){const{rowIndex:o,rowPinned:l,column:c}=n;a.setFocusedCell({rowIndex:o,column:c,rowPinned:l,forceBrowserFocus:!0,preventScrollOnBrowserFocus:!0})}else this.focusHeaderCell(t)}onContextMenu(e){const{mouseEvent:t,touchEvent:s,showMenuCallback:i,source:r}=e;if(!this.gos.get("allowContextMenuWithControlKey")&&t&&(t.ctrlKey||t.metaKey)||(t&&this.blockMiddleClickScrollsIfNeeded(t),r==="ui"&&this.gos.get("suppressContextMenu")))return;const a=t??s.touches[0];if(i(a)){const n=t??s;n&&n.cancelable&&n.preventDefault()}}async focusHeaderCell(e){const{column:t,columnIndex:s,headerPosition:i,eventSource:r}=e,{visibleCols:a,headerNavigation:n,focusSvc:o}=this.beans,l=await a.allCols.some(c=>c===t);if(this.isAlive()){if(t?.isAlive()&&l&&r&&Wx(r)){const c=Ux(r);c&&(n?.scrollToColumn(t),c.focus())}else if(i&&s!==-1){const c=a.allCols,d=c[s]||jx(c);d&&o.focusHeaderPosition({headerPosition:{headerRowIndex:i.headerRowIndex,column:d}})}}}blockMiddleClickScrollsIfNeeded(e){this.gos.get("suppressMiddleClickScrolls")&&e.which===2&&e.preventDefault()}},$o={moduleName:"MenuCore",version:E,beans:[Jw,Ow,$x],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",sortUnSort:"none"},dependsOn:[O,Dw,kw,Bs]},xr={moduleName:"ColumnMenu",version:E,beans:[Ox,ex,zw],icons:{legacyMenu:"menu",filterTab:"filter",columnSelectClosed:"tree-closed",columnSelectOpen:"tree-open",columnSelectIndeterminate:"tree-indeterminate"},apiFunctions:{showColumnChooser:Vx,hideColumnChooser:Hx},dependsOn:[$o,Lw,Iw]},Mr={moduleName:"ContextMenu",version:E,beans:[vx],apiFunctions:{showContextMenu:_x},dependsOn:[$o]},Yx={moduleName:"Menu",version:E,dependsOn:[xr,Mr]};import{_EditCoreModule as Xx}from"ag-grid-community";import{PopupComponent as qx,_addGridCommonParams as Zx,_missing as Jx,_warn as Tr}from"ag-grid-community";var Yo=class extends qx{constructor(){super({tag:"div",cls:"ag-cell-edit-wrapper"}),this.isAsync=!1}init(e){this.params=e;const{cellStartedEdit:t,values:s,eventKey:i}=e;Jx(s)&&Tr(180);const{params:r,valuesPromise:a}=this.buildRichSelectParams(),n=this.createManagedBean(new qi(r));this.richSelect=n,n.addCssClass("ag-cell-editor"),this.appendChild(n),a&&(this.isAsync=!0,a.then(o=>{n.setValueList({valueList:o,refresh:!0});const l=this.getSearchStringCallback(o);l&&n.setSearchStringCreator(l),this.processEventKey(i)})),this.addManagedListeners(n,{fieldPickerValueSelected:this.onEditorPickerValueSelected.bind(this)}),this.focusAfterAttached=t}onEditorPickerValueSelected(e){setTimeout(()=>this.params.stopEditing(!e.fromEnterKey))}buildRichSelectParams(){const e=this.params,{cellRenderer:t,cellHeight:s,value:i,values:r,formatValue:a,searchDebounceDelay:n,valueListGap:o,valueListMaxHeight:l,valueListMaxWidth:c,allowTyping:d,filterList:h,searchType:u,highlightMatch:p,valuePlaceholder:g,eventKey:m,multiSelect:f,suppressDeselectAll:C,suppressMultiSelectPillRenderer:v}=e,y={value:i,cellRenderer:t,cellRowHeight:s,searchDebounceDelay:n,valueFormatter:a,pickerAriaLabelKey:"ariaLabelRichSelectField",pickerAriaLabelValue:"Rich Select Field",pickerType:"virtual-list",pickerGap:o,allowTyping:d,filterList:h,searchType:u,highlightMatch:p,maxPickerHeight:l,maxPickerWidth:c,placeholder:g,initialInputValue:m?.length===1?m:void 0,multiSelect:f,suppressDeselectAll:C,suppressMultiSelectPillRenderer:v};let S,b;return typeof r=="function"?S=r(e):S=r??[],Array.isArray(S)?(y.valueList=S,y.searchStringCreator=this.getSearchStringCallback(S)):b=S,f&&d&&(e.allowTyping=y.allowTyping=!1,Tr(181)),{params:y,valuesPromise:b}}getSearchStringCallback(e){if(typeof e[0]!="object")return;const t=this.params,{colDef:s,formatValue:i}=t;if(s.cellEditorParams?.formatValue)return a=>a.map(i);const{keyCreator:r}=s;if(r){Tr(266);const{column:a,node:n,data:o}=t;return l=>l.map(c=>{const d=Zx(this.gos,{value:c,colDef:s,column:a,node:n,data:o});return r(d)})}return a=>a.map(i)}afterGuiAttached(){const{focusAfterAttached:e,params:t}=this;setTimeout(()=>{if(!this.isAlive())return;const s=this.richSelect,{allowTyping:i,eventKey:r}=t;if(e){const a=s.getFocusableElement();a.focus(),i&&(!r||r.length!==1)&&a.select()}s.showPicker(),this.isAsync||this.processEventKey(r)})}processEventKey(e){e&&e?.length===1&&this.richSelect.searchTextFromString(e)}focusIn(){this.richSelect.getFocusableElement().focus()}getValue(){const{params:e}=this,t=this.richSelect.getValue();return e.parseValue?.(t)??t}isPopup(){return!1}},Xo={moduleName:"RichSelect",version:E,beans:[],userComponents:{agRichSelect:Yo,agRichSelectCellEditor:Yo},icons:{richSelectOpen:"small-down",richSelectRemove:"cancel"},dependsOn:[O,Xx]};import{_ColumnFilterModule as Qx}from"ag-grid-community";import{AgInputTextFieldSelector as eM,AgPromise as tM,GROUP_AUTO_COLUMN_ID as sM,KeyCode as Wt,ProvidedFilter as iM,RefPlaceholder as jt,_areEqual as rM,_createIconNoSpan as aM,_debounce as nM,_error as qo,_getActiveDomElement as oM,_last as lM,_makeNull as Zo,_setDisplayed as Fr,_toStringOrNull as Pr,_warn as cM}from"ag-grid-community";var Qe="__AG_SELECT_ALL__",et="__AG_ADD_SELECTION_TO_FILTER__",dM={loadingOoo:"Loading...",blanks:"(Blanks)",searchOoo:"Search...",selectAll:"(Select All)",selectAllSearchResults:"(Select All Search Results)",addCurrentSelectionToFilter:"Add current selection to filter",noMatches:"No matches."};import{AgCheckboxSelector as hM,Component as uM,RefPlaceholder as Us,_addGridCommonParams as pM,_createIcon as Ar,_getCellRendererDetails as Jo,_getShouldDisplayTooltip as gM,_isShowTooltipWhenTruncated as mM,_setAriaChecked as fM,_setAriaDescribedBy as CM,_setAriaExpanded as vM,_setAriaLabel as yM,_setAriaLabelledBy as SM,_setAriaLevel as bM,_setDisplayed as Rr,_toStringOrNull as Qo,_warn as wM}from"ag-grid-community";var xM={tag:"div",cls:"ag-set-filter-item",attrs:{"aria-hidden":"true"},children:[{tag:"span",cls:"ag-set-filter-group-icons",children:[{tag:"span",ref:"eGroupClosedIcon",cls:"ag-set-filter-group-closed-icon"},{tag:"span",ref:"eGroupOpenedIcon",cls:"ag-set-filter-group-opened-icon"},{tag:"span",ref:"eGroupIndeterminateIcon",cls:"ag-set-filter-group-indeterminate-icon"}]},{tag:"ag-checkbox",ref:"eCheckbox",cls:"ag-set-filter-item-checkbox"}]},MM={tag:"div",cls:"ag-set-filter-item",children:[{tag:"ag-checkbox",ref:"eCheckbox",cls:"ag-set-filter-item-checkbox"}]},TM=class extends uM{constructor(e){super(e.isGroup?xM:MM,[hM]),this.eCheckbox=Us,this.eGroupOpenedIcon=Us,this.eGroupClosedIcon=Us,this.eGroupIndeterminateIcon=Us,this.formattedValue=null,this.focusWrapper=e.focusWrapper,this.value=e.value,this.params=e.params,this.translate=e.translate,this.valueFormatter=e.valueFormatter,this.item=e.item,this.isSelected=e.isSelected,this.isTree=e.isTree,this.depth=e.depth??0,this.isGroup=e.isGroup,this.groupsExist=e.groupsExist,this.isExpanded=e.isExpanded,this.hasIndeterminateExpandState=e.hasIndeterminateExpandState}postConstruct(){this.tooltipFeature=this.createOptionalManagedBean(this.beans.registry.createDynamicBean("tooltipFeature",!1,{getGui:()=>this.getGui(),getColDef:()=>this.params.colDef,getColumn:()=>this.params.column,getLocation:()=>"setFilterValue",shouldDisplayTooltip:()=>this.shouldDisplayTooltip?.()??!0,getValueFormatted:()=>this.formattedValue,getAdditionalParams:()=>this.isTree?{level:this.depth}:{}})),this.addDestroyFunc(()=>this.destroyCellRendererComponent?.()),this.render(),this.eCheckbox.setLabelEllipsis(!0).setValue(this.isSelected,!0).setDisabled(!!this.params.readOnly).getInputElement().setAttribute("tabindex","-1"),this.refreshVariableAriaLabels(),this.isTree&&(this.depth>0&&(this.addCssClass("ag-set-filter-indent-"+this.depth),this.getGui().style.setProperty("--ag-indentation-level",String(this.depth))),this.isGroup?this.setupExpansion():this.groupsExist&&this.addCssClass("ag-set-filter-add-group-indent"),bM(this.getAriaElement(),this.depth+1)),this.refreshAriaChecked(),!this.params.readOnly&&this.eCheckbox.onValueChange(e=>this.onCheckboxChanged(!!e))}getFocusableElement(){return this.focusWrapper}setupExpansion(){const{eGroupClosedIcon:e,eGroupOpenedIcon:t,eGroupIndeterminateIcon:s,hasIndeterminateExpandState:i,beans:r}=this;e.appendChild(Ar("setFilterGroupClosed",r,null)),t.appendChild(Ar("setFilterGroupOpen",r,null));const a=this.onExpandOrContractClicked.bind(this);this.addManagedElementListeners(e,{click:a}),this.addManagedElementListeners(t,{click:a}),i&&(s.appendChild(Ar("setFilterGroupIndeterminate",r,null)),this.addManagedElementListeners(s,{click:a})),this.setExpandedIcons(),this.refreshAriaExpanded()}onExpandOrContractClicked(){this.setExpanded(!this.isExpanded)}setExpanded(e,t){if(this.isGroup&&e!==this.isExpanded){this.isExpanded=e;const s={type:"expandedChanged",isExpanded:!!e,item:this.item};t||this.dispatchLocalEvent(s),this.setExpandedIcons(),this.refreshAriaExpanded()}}setExpandedIcons(){const{isExpanded:e,hasIndeterminateExpandState:t,eGroupClosedIcon:s,eGroupOpenedIcon:i,eGroupIndeterminateIcon:r}=this;Rr(s,t?e===!1:!e),Rr(i,e===!0),t&&Rr(r,e===void 0)}onCheckboxChanged(e){this.isSelected=e;const t={type:"selectionChanged",isSelected:e,item:this.item};this.dispatchLocalEvent(t),this.refreshVariableAriaLabels(),this.refreshAriaChecked()}toggleSelected(){this.params.readOnly||this.setSelected(!this.isSelected)}setSelected(e,t){this.isSelected=e,this.eCheckbox.setValue(e,t),this.refreshAriaChecked()}refreshVariableAriaLabels(){if(!this.isTree)return;const e=this.getLocaleTextFunc(),t=this.eCheckbox.getValue(),s=t===void 0?e("ariaIndeterminate","indeterminate"):t?e("ariaVisible","visible"):e("ariaHidden","hidden"),i=e("ariaToggleVisibility","Press SPACE to toggle visibility");SM(this.eCheckbox.getInputElement(),void 0),this.eCheckbox.setInputAriaLabel(`${i} (${s})`)}setupFixedAriaLabels(e){if(!this.isTree)return;const s=this.getLocaleTextFunc()("ariaFilterValue","Filter Value"),i=this.getAriaElement();yM(i,`${e} ${s}`),CM(i,this.eCheckbox.getInputElement().id)}refreshAriaChecked(){const e=this.getAriaElement();fM(e,this.eCheckbox.getValue())}refreshAriaExpanded(){vM(this.getAriaElement(),!!this.isExpanded)}refresh(e,t,s){this.item=e,t!==this.isSelected&&this.setSelected(t,!0),this.setExpanded(s,!0);const{cellRendererComponent:i,cellRendererParams:r,beans:a,params:n}=this;if(this.valueFunction){const o=this.valueFunction();this.setTooltipAndCellRendererParams(o,o),i||this.renderCellWithoutCellRenderer()}if(i){const o=Jo(a.userCompFactory,n,r);if(!i.refresh?.(o?.params??r)){const c=i;this.renderCell(),this.destroyBean(c)}}}render(){const{params:{column:e}}=this;let{value:t}=this,s=null;typeof t=="function"?(this.valueFunction=t,s=this.valueFunction(),t=s):this.isTree?s=Qo(t):s=this.getFormattedValue(e,t),this.formattedValue=s,this.setTooltipAndCellRendererParams(t,s),this.renderCell()}setTooltipAndCellRendererParams(e,t){const s=this.gos;if(this.params.showTooltips&&(!mM(s)||!this.params.cellRenderer)){const i=t??Qo(e);this.shouldDisplayTooltip=gM(s,()=>this.eCheckbox.getGui().querySelector(".ag-label")),this.tooltipFeature?.setTooltipAndRefresh(i)}this.cellRendererParams=pM(s,{value:e,valueFormatted:t,colDef:this.params.colDef,column:this.params.column,setTooltip:(i,r)=>{s.assertModuleRegistered("Tooltip",3),this.shouldDisplayTooltip=r,this.tooltipFeature?.setTooltipAndRefresh(i)}})}getFormattedValue(e,t){return this.beans.valueSvc.formatValue(e,null,t,this.valueFormatter,!1)}renderCell(){const t=Jo(this.beans.userCompFactory,this.params,this.cellRendererParams)?.newAgStackInstance();if(t==null){this.renderCellWithoutCellRenderer();return}t.then(s=>{s&&(this.cellRendererComponent=s,this.eCheckbox.setLabel(s.getGui()),this.destroyCellRendererComponent=()=>this.destroyBean(s))})}renderCellWithoutCellRenderer(){const{valueFormatted:e,value:t}=this.cellRendererParams;let s=e??t??this.translate("blanks");typeof s!="string"&&(wM(208),s=""),this.eCheckbox.setLabel(s),this.setupFixedAriaLabels(s)}getComponentHolder(){return this.params.column.getColDef()}},el=class{getModelAsString(e,t){const{values:s}=e||t.getModel()||{},i=t.getValueModel();if(s==null||i==null)return"";const r=s.filter(o=>i.isKeyAvailable(o)),a=r.length,n=r.slice(0,10).map(o=>t.getFormattedValue(o));return`(${a}) ${n.join(",")}${a>10?",...":""}`}};import{_last as FM,_makeNull as PM,_toStringOrNull as AM}from"ag-grid-community";function Er(e,t,s){let i=e;return i?(i=i.map(r=>AM(PM(r))),!t&&s&&i.some(r=>r==null)?FM(i)==null?null:i.filter(r=>r!=null):i):null}import{AgPromise as Ct,LocalEventService as RM,_addGridCommonParams as EM,_defaultComparator as Ir,_error as IM,_exists as DM,_isClientSideRowModel as LM,_makeNull as Dr,_warn as tl}from"ag-grid-community";import{AgPromise as kM,_makeNull as GM}from"ag-grid-community";var OM=class{constructor(e,t,s,i,r,a,n,o,l,c){this.rowModel=e,this.filterParams=t,this.createKey=s,this.caseFormat=i,this.valueSvc=r,this.treeDataOrGrouping=a,this.treeData=n,this.groupAllowUnbalanced=o,this.addManagedEventListeners=l,this.rowGroupColsSvc=c}extractUniqueValuesAsync(e,t){return new kM(s=>{if(this.rowModel.isRowDataLoaded())s(this.extractUniqueValues(e,t));else{const[i]=this.addManagedEventListeners({rowCountReady:()=>{i?.(),s(this.extractUniqueValues(e,t))}})}})}extractUniqueValues(e,t){const s=new Map,i=this.extractExistingFormattedKeys(t),r=new Set,a=this.treeData,n=this.rowGroupColsSvc?.columns,o=(l,c)=>{const d=this.caseFormat(l);if(!r.has(d)){r.add(d);let h=l,u=GM(c);const p=i?.get(d);p!=null&&(h=p,u=t.get(p)),s.set(h,u)}};return this.rowModel.forEachLeafNode(l=>{if(!l.data||!e(l))return;if(this.treeDataOrGrouping){this.addValueForTreeDataOrGrouping(l,a,n,o);return}const c=this.getValue(l);c!=null&&Array.isArray(c)?(c.forEach(d=>{o(this.createKey(d,l),d)}),c.length===0&&o(null,null)):o(this.createKey(c,l),c)}),s}addValueForTreeDataOrGrouping(e,t,s=[],i){let r;if(t){if(e.childrenAfterGroup?.length)return;r=e.getRoute()??[e.key??e.id]}else r=s.map(n=>this.valueSvc.getKeyForNode(n,e)),r.push(this.getValue(e));const a=Er(r,t,this.groupAllowUnbalanced);i(this.createKey(a),a)}getValue(e){return this.filterParams.getValue(e)}extractExistingFormattedKeys(e){if(!e)return null;const t=new Map;return e.forEach((s,i)=>{t.set(this.caseFormat(i),i)}),t}},NM=class{constructor({caseFormat:e}){this.filteringKeys=null,this.filteringKeysCaseFormatted=null,this.hasNoAppliedFilteringKeys=!1,this.caseFormat=e}allFilteringKeys(){return this.filteringKeys}allFilteringKeysCaseFormatted(){return this.filteringKeysCaseFormatted}setFilteringKeys(e){this.filteringKeys=new Set(e),this.hasNoAppliedFilteringKeys=!this.filteringKeys||this.filteringKeys.size===0,this.filteringKeysCaseFormatted=new Set,this.filteringKeys.forEach(t=>this.filteringKeysCaseFormatted.add(this.caseFormat(t)))}addFilteringKey(e){this.filteringKeys==null&&(this.filteringKeys=new Set,this.filteringKeysCaseFormatted=new Set),this.filteringKeys.add(e),this.filteringKeysCaseFormatted.add(this.caseFormat(e)),this.hasNoAppliedFilteringKeys&&(this.hasNoAppliedFilteringKeys=!1)}hasCaseFormattedFilteringKey(e){return this.filteringKeysCaseFormatted.has(this.caseFormat(e))}hasFilteringKey(e){return this.filteringKeys.has(e)}reset(){this.filteringKeys=null,this.filteringKeysCaseFormatted=null,this.hasNoAppliedFilteringKeys=!1}},BM=class{constructor(e,t,s,i){this.valueSvc=e,this.valueFormatter=t,this.formatter=s,this.column=i,this.displayedKeys=[]}updateDisplayedValuesToAllAvailable(e,t,s){this.displayedKeys=Array.from(s)}updateDisplayedValuesToMatchMiniFilter(e,t,s,i,r){this.displayedKeys=[];for(const a of s)if(a==null)r&&this.displayedKeys.push(a);else{const n=e(a),o=this.valueSvc.formatValue(this.column,null,n,this.valueFormatter,!1),l=this.formatter(o);i(l)&&this.displayedKeys.push(a)}}getDisplayedValueCount(){return this.displayedKeys.length}getDisplayedItem(e){return this.displayedKeys[e]}getSelectAllItem(){return Qe}getAddSelectionToFilterItem(){return et}getDisplayedKeys(){return this.displayedKeys}forEachDisplayedKey(e){this.displayedKeys.forEach(e)}someDisplayedKey(e){return this.displayedKeys.some(e)}hasGroups(){return!1}refresh(){}};import{_missing as _M,_warn as VM}from"ag-grid-community";var HM=e=>_M(e)?null:!(e instanceof Date)||isNaN(e.getTime())?["NaN"]:[String(e.getFullYear()),String(e.getMonth()+1),String(e.getDate())],sl=class{constructor(e,t,s,i){this.formatter=e,this.treeListPathGetter=t,this.treeListFormatter=s,this.treeDataOrGrouping=i,this.allDisplayedItemsTree=[],this.activeDisplayedItemsFlat=[],this.selectAllItem={depth:0,filterPasses:!0,available:!0,treeKey:Qe,children:this.allDisplayedItemsTree,expanded:!0,key:Qe,parentTreeKeys:[]},this.addSelectionToFilterItem={depth:0,filterPasses:!0,available:!0,treeKey:et,expanded:!0,key:et,parentTreeKeys:[]}}updateOnParamsChange(e){this.treeListFormatter=e}updateDisplayedValuesToAllAvailable(e,t,s,i){i==="reload"?this.generateItemTree(e,t,s):i==="otherFilter"?(this.updateAvailable(s),this.updateExpandAll()):i==="miniFilter"&&(this.resetFilter(),this.updateExpandAll()),this.flattenItems()}updateDisplayedValuesToMatchMiniFilter(e,t,s,i,r,a){a==="reload"?this.generateItemTree(e,t,s):a==="otherFilter"&&this.updateAvailable(s),this.updateFilter(i,r),this.updateExpandAll(),this.flattenItems()}generateItemTree(e,t,s){this.allDisplayedItemsTree=[],this.groupsExist=!1;const i=this.getTreeListPathGetter(e,s);for(const r of t){const a=e(r),n=i(a)??[null];n.length>1&&(this.groupsExist=!0);const o=s.has(r);let l=this.allDisplayedItemsTree,c,d=[];n.forEach((h,u)=>{l||(l=[],c.children=l),c=l.find(p=>p.treeKey?.toUpperCase()===h?.toUpperCase()),c||(c={treeKey:h,depth:u,filterPasses:!0,expanded:!1,available:o,parentTreeKeys:d},u===n.length-1&&(c.key=r),l.push(c)),l=c.children,d=[...d,h]})}this.updateAvailable(s),this.selectAllItem.children=this.allDisplayedItemsTree,this.selectAllItem.expanded=!1}getTreeListPathGetter(e,t){if(this.treeListPathGetter)return this.treeListPathGetter;if(this.treeDataOrGrouping)return i=>i;let s=!1;for(const i of t){const r=e(i);if(r instanceof Date){s=!0;break}else if(r!=null)break}return s?HM:(VM(211),i=>[String(i)])}flattenItems(){this.activeDisplayedItemsFlat=[];const e=t=>{t.forEach(s=>{!s.filterPasses||!s.available||(this.activeDisplayedItemsFlat.push(s),s.children&&s.expanded&&e(s.children))})};e(this.allDisplayedItemsTree)}resetFilter(){const e=t=>{t.children&&t.children.forEach(s=>{e(s)}),t.filterPasses=!0};this.allDisplayedItemsTree.forEach(t=>e(t))}updateFilter(e,t){const s=i=>i.available?i.treeKey==null?t:e(this.formatter(this.treeListFormatter?this.treeListFormatter(i.treeKey,i.depth,i.parentTreeKeys):i.treeKey)):!1;this.allDisplayedItemsTree.forEach(i=>this.recursiveItemCheck(i,!1,s,"filterPasses"))}getDisplayedValueCount(){return this.activeDisplayedItemsFlat.length}getDisplayedItem(e){return this.activeDisplayedItemsFlat[e]}getSelectAllItem(){return this.selectAllItem}getAddSelectionToFilterItem(){return this.addSelectionToFilterItem}getDisplayedKeys(){const e=[];return this.forEachDisplayedKey(t=>e.push(t)),e}forEachDisplayedKey(e){const t=(s,i)=>{s.children?(!s.expanded||!i)&&s.children.forEach(r=>{r.filterPasses&&t(r,!1)}):e(s.key)};this.activeDisplayedItemsFlat.forEach(s=>t(s,!0))}someDisplayedKey(e){const t=(s,i)=>{if(s.children){if(!s.expanded||!i)return s.children.some(r=>r.filterPasses?t(r,!1):!1)}else return e(s.key);return!1};return this.activeDisplayedItemsFlat.some(s=>t(s,!0))}hasGroups(){return this.groupsExist}refresh(){this.updateExpandAll(),this.flattenItems()}updateExpandAll(){const e=(s,i,r)=>{for(const a of s){if(!a.filterPasses||!a.available||!a.children)continue;if(i=i||!!a.expanded,r=r||!a.expanded,i&&r)return;const n=e(a.children,i,r);if(n===void 0)return;n?i=!0:r=!0}return i&&r?void 0:i},t=this.getSelectAllItem();t.expanded=e(t.children,!1,!1)}recursiveItemCheck(e,t,s,i){let r=!1;e.children&&e.children.forEach(n=>{const o=this.recursiveItemCheck(n,t||s(e),s,i);r=r||o});const a=t||r||s(e);return e[i]=a,a}updateAvailable(e){const t=s=>e.has(s.key);this.allDisplayedItemsTree.forEach(s=>this.recursiveItemCheck(s,!1,t,"available"))}},zM=class{constructor(e){this.localEventService=new RM,this.miniFilterText=null,this.addCurrentSelectionToFilter=!1,this.providedValues=null,this.allValues=new Map,this.availableKeys=new Set,this.selectedKeys=new Set,this.initialised=!1;const{usingComplexObjects:t,rowGroupColsSvc:s,valueSvc:i,treeDataTreeList:r,groupingTreeList:a,filterParams:n,gos:o,valueFormatter:l,addManagedEventListeners:c}=e,{column:d,colDef:h,textFormatter:u,doesRowPassOtherFilter:p,suppressSorting:g,comparator:m,rowModel:f,values:C,caseSensitive:v,treeList:y,treeListPathGetter:S,treeListFormatter:b}=n;this.filterParams=n,this.gos=o,this.setIsLoading=e.setIsLoading,this.translate=e.translate,this.caseFormat=e.caseFormat,this.createKey=e.createKey,this.usingComplexObjects=!!e.usingComplexObjects,this.formatter=u??(P=>P??null),this.doesRowPassOtherFilters=p,this.suppressSorting=g||!1,this.filteringKeys=new NM({caseFormat:this.caseFormat});const w=m??h.comparator,F=!!r||!!a;this.compareByValue=!!(t&&w||F||y&&!S),F&&!w?this.entryComparator=this.createTreeDataOrGroupingComparator():y&&!S&&!w?this.entryComparator=([P,A],[M,k])=>Ir(A,k):this.entryComparator=([P,A],[M,k])=>w(A,k),this.keyComparator=w??Ir,this.caseSensitive=!!v;const T=o.get("groupAllowUnbalanced");LM(o,f)&&(this.clientSideValuesExtractor=new OM(f,this.filterParams,this.createKey,this.caseFormat,i,F,!!r,T,c,s)),C==null?this.valuesType=2:(this.valuesType=Array.isArray(C)?0:1,this.providedValues=C),this.displayValueModel=y?new sl(this.formatter,S,b,r||a):new BM(i,l,this.formatter,d),this.updateAllValues().then(P=>this.resetSelectionState(P||[]))}addEventListener(e,t,s){this.localEventService.addEventListener(e,t,s)}removeEventListener(e,t,s){this.localEventService.removeEventListener(e,t,s)}updateOnParamsChange(e){return new Ct(t=>{const{values:s,textFormatter:i,suppressSorting:r,treeListFormatter:a}=e,n=this.providedValues,o=this.suppressSorting;if(this.filterParams=e,this.formatter=i??(l=>l??null),this.suppressSorting=r||!1,this.providedValues=s??null,this.displayValueModel instanceof sl&&this.displayValueModel.updateOnParamsChange(a),this.providedValues!==n||this.suppressSorting!==o){!s||s.length===0?(this.valuesType=2,this.providedValues=null):this.valuesType=Array.isArray(s)?0:1;const l=this.getModel();this.updateAllValues().then(()=>{this.setModel(l).then(()=>t())})}else t()})}refreshValues(){return new Ct(e=>{this.allValuesPromise.then(()=>{const t=this.getModel();this.updateAllValues(),this.setModel(t).then(()=>e())})})}overrideValues(e){return new Ct(t=>{this.allValuesPromise.then(()=>{this.valuesType=0,this.providedValues=e,this.refreshValues().then(()=>t())})})}refreshAfterAnyFilterChanged(){return this.showAvailableOnly()?this.allValuesPromise.then(e=>(this.updateAvailableKeys(e??[],"otherFilter"),!0)):Ct.resolve(!1)}isInitialised(){return this.initialised}updateAllValues(){return this.allValuesPromise=new Ct(e=>{switch(this.valuesType){case 2:this.getValuesFromRowsAsync(!1).then(t=>e(this.processAllValues(t)));break;case 0:{e(this.processAllValues(this.uniqueValues(this.validateProvidedValues(this.providedValues))));break}case 1:{this.setIsLoading(!0);const t=this.providedValues,{column:s,colDef:i}=this.filterParams,r=EM(this.gos,{success:a=>{this.setIsLoading(!1),e(this.processAllValues(this.uniqueValues(this.validateProvidedValues(a))))},colDef:i,column:s});window.setTimeout(()=>t(r),0);break}}}),this.allValuesPromise.then(e=>this.updateAvailableKeys(e||[],"reload")).then(()=>this.initialised=!0),this.allValuesPromise}processAllValues(e){const t=this.sortKeys(e);return this.allValues=e??new Map,t}validateProvidedValues(e){if(this.usingComplexObjects&&e?.length){const t=e[0];t&&typeof t!="object"&&typeof t!="function"&&(this.createKey(t)==null?tl(209):tl(210))}return e}setValuesType(e){this.valuesType=e}getValuesType(){return this.valuesType}isKeyAvailable(e){return this.availableKeys.has(e)}showAvailableOnly(){return this.valuesType===2}updateAvailableKeys(e,t){const s=this.showAvailableOnly()?this.sortKeys(this.getValuesFromRows(!0)):e;this.availableKeys=new Set(s),this.localEventService.dispatchEvent({type:"availableValuesChanged"}),this.updateDisplayedValues(t,e)}sortKeys(e){const t=e??new Map;if(this.suppressSorting)return Array.from(t.keys());let s;return this.compareByValue?s=Array.from(t.entries()).sort(this.entryComparator).map(([i])=>i):s=Array.from(t.keys()).sort(this.keyComparator),this.filterParams.excelMode&&t.has(null)&&(s=s.filter(i=>i!=null),s.push(null)),s}getParamsForValuesFromRows(e=!1){if(!this.clientSideValuesExtractor)return IM(113),null;const t=i=>!e||this.doesRowPassOtherFilters(i),s=e&&!this.caseSensitive?this.allValues:void 0;return{predicate:t,existingValues:s}}getValuesFromRows(e=!1){const t=this.getParamsForValuesFromRows(e);return t?this.clientSideValuesExtractor.extractUniqueValues(t.predicate,t.existingValues):null}getValuesFromRowsAsync(e=!1){const t=this.getParamsForValuesFromRows(e);return t?this.clientSideValuesExtractor.extractUniqueValuesAsync(t.predicate,t.existingValues):Ct.resolve(null)}setMiniFilter(e){return e=Dr(e),this.miniFilterText===e?!1:(e===null&&this.setAddCurrentSelectionToFilter(!1),this.miniFilterText=e,this.updateDisplayedValues("miniFilter"),!0)}getMiniFilter(){return this.miniFilterText}updateDisplayedValues(e,t){if(e==="expansion"){this.displayValueModel.refresh();return}if(this.miniFilterText==null){this.displayValueModel.updateDisplayedValuesToAllAvailable(a=>this.getValue(a),t,this.availableKeys,e);return}const s=this.caseFormat(this.formatter(this.miniFilterText)||""),i=a=>a!=null&&this.caseFormat(a).indexOf(s)>=0,r=!!this.filterParams.excelMode&&i(this.translate("blanks"));this.displayValueModel.updateDisplayedValuesToMatchMiniFilter(a=>this.getValue(a),t,this.availableKeys,i,r,e)}getDisplayedValueCount(){return this.displayValueModel.getDisplayedValueCount()}getDisplayedItem(e){return this.displayValueModel.getDisplayedItem(e)}getSelectAllItem(){return this.displayValueModel.getSelectAllItem()}getAddSelectionToFilterItem(){return this.displayValueModel.getAddSelectionToFilterItem()}hasSelections(){return this.filterParams.defaultToNothingSelected?this.selectedKeys.size>0:this.allValues.size!==this.selectedKeys.size}getKeys(){return Array.from(this.allValues.keys())}getValues(){return Array.from(this.allValues.values())}getValue(e){return this.allValues.get(e)}setAddCurrentSelectionToFilter(e){this.addCurrentSelectionToFilter=e}isInWindowsExcelMode(){return this.filterParams.excelMode==="windows"}isAddCurrentSelectionToFilterChecked(){return this.isInWindowsExcelMode()&&this.addCurrentSelectionToFilter}showAddCurrentSelectionToFilter(){return this.isInWindowsExcelMode()&&DM(this.miniFilterText)&&this.miniFilterText.length>0}selectAllMatchingMiniFilter(e=!1){this.miniFilterText==null?this.selectedKeys=new Set(this.allValues.keys()):(e&&this.selectedKeys.clear(),this.displayValueModel.forEachDisplayedKey(t=>this.selectedKeys.add(t)))}deselectAllMatchingMiniFilter(){this.miniFilterText==null?this.selectedKeys.clear():this.displayValueModel.forEachDisplayedKey(e=>this.selectedKeys.delete(e))}selectKey(e){this.selectedKeys.add(e)}deselectKey(e){this.filterParams.excelMode&&this.isEverythingVisibleSelected()&&this.resetSelectionState(this.displayValueModel.getDisplayedKeys()),this.selectedKeys.delete(e)}isKeySelected(e){return this.selectedKeys.has(e)}isEverythingVisibleSelected(){return!this.displayValueModel.someDisplayedKey(e=>!this.isKeySelected(e))}isNothingVisibleSelected(){return!this.displayValueModel.someDisplayedKey(e=>this.isKeySelected(e))}getModel(){if(!this.hasSelections())return null;const e=this.isAddCurrentSelectionToFilterChecked()?this.filteringKeys.allFilteringKeys():null;if(e&&e.size>0){if(this.selectedKeys){const t=new Set([...Array.from(e),...Array.from(this.selectedKeys).filter(s=>!e.has(s))]);return Array.from(t)}return Array.from(e)}return Array.from(this.selectedKeys)}setModel(e){return this.allValuesPromise.then(t=>{if(e==null)this.resetSelectionState(t??[]);else{this.selectedKeys.clear();const s=new Map;this.allValues.forEach((i,r)=>{s.set(this.caseFormat(r),r)}),e.forEach(i=>{const r=this.caseFormat(Dr(i)),a=s.get(r);a!==void 0&&this.selectKey(a)})}})}uniqueValues(e){const t=new Map,s=new Set;return(e??[]).forEach(i=>{const r=Dr(i),a=this.createKey(r),n=this.caseFormat(a);s.has(n)||(s.add(n),t.set(a,r))}),t}resetSelectionState(e){this.filterParams.defaultToNothingSelected?this.selectedKeys.clear():this.selectedKeys=new Set(e)}hasGroups(){return this.displayValueModel.hasGroups()}createTreeDataOrGroupingComparator(){return([e,t],[s,i])=>{if(t==null)return i==null?0:-1;if(i==null)return 1;for(let r=0;r<t.length;r++){if(r>=i.length)return 1;const a=Ir(t[r],i[r]);if(a!==0)return a}return 0}}setAppliedModelKeys(e){this.filteringKeys.setFilteringKeys(e)}addToAppliedModelKeys(e){this.filteringKeys.addFilteringKey(e)}getAppliedModelKeys(){return this.filteringKeys.allFilteringKeys()}getCaseFormattedAppliedModelKeys(){return this.filteringKeys.allFilteringKeysCaseFormatted()}hasAppliedModelKey(e){return this.filteringKeys.hasCaseFormattedFilteringKey(e)}hasAnyAppliedModelKey(){return!this.filteringKeys.hasNoAppliedFilteringKeys}},il=class extends iM{constructor(){super("setFilter"),this.filterType="set",this.eMiniFilter=jt,this.eFilterLoading=jt,this.eFilterLoadingIcon=jt,this.eSetFilterList=jt,this.eFilterNoMatches=jt,this.caseSensitive=!1,this.treeDataTreeList=!1,this.groupingTreeList=!1,this.hardRefreshVirtualList=!1,this.noValueFormatterSupplied=!1,this.filterModelFormatter=new el,this.updateSetFilterOnParamsChange=e=>{this.setFilterParams=e,this.caseSensitive=!!e.caseSensitive;const t=e.keyCreator??e.colDef.keyCreator;this.setValueFormatter(e.valueFormatter,t,!!e.treeList,!!e.colDef.refData);const s=e.column.getId().startsWith(sM);this.treeDataTreeList=this.gos.get("treeData")&&!!e.treeList&&s,this.groupingTreeList=!!this.rowGroupColsSvc?.columns.length&&!!e.treeList&&s,this.createKey=this.generateCreateKey(t,this.treeDataTreeList||this.groupingTreeList)}}wireBeans(e){this.rowGroupColsSvc=e.rowGroupColsSvc,this.valueSvc=e.valueSvc,this.dataTypeSvc=e.dataTypeSvc}postConstruct(){super.postConstruct()}updateUiVisibility(){}createBodyTemplate(){return{tag:"div",cls:"ag-set-filter",children:[{tag:"div",ref:"eFilterLoading",cls:"ag-filter-loading ag-loading ag-hidden",children:[{tag:"span",ref:"eFilterLoadingIcon",cls:"ag-loading-icon"},{tag:"span",cls:"ag-loading-text",children:this.translateForSetFilter("loadingOoo")}]},{tag:"ag-input-text-field",ref:"eMiniFilter",cls:"ag-mini-filter"},{tag:"div",ref:"eFilterNoMatches",cls:"ag-filter-no-matches ag-hidden",children:this.translateForSetFilter("noMatches")},{tag:"div",ref:"eSetFilterList",cls:"ag-set-filter-list",role:"presentation"}]}}getAgComponents(){return[eM]}handleKeyDown(e){if(super.handleKeyDown(e),!e.defaultPrevented)switch(e.key){case Wt.SPACE:this.handleKeySpace(e);break;case Wt.ENTER:this.handleKeyEnter(e);break;case Wt.LEFT:this.handleKeyLeft(e);break;case Wt.RIGHT:this.handleKeyRight(e);break}}handleKeySpace(e){this.getComponentForKeyEvent(e)?.toggleSelected()}handleKeyEnter(e){const{excelMode:t,readOnly:s}=this.setFilterParams;!t||s||(e.preventDefault(),this.onBtApply(!1,!1,e),this.setFilterParams.excelMode==="mac"&&this.eMiniFilter.getInputElement().select())}handleKeyLeft(e){this.getComponentForKeyEvent(e)?.setExpanded(!1)}handleKeyRight(e){this.getComponentForKeyEvent(e)?.setExpanded(!0)}getComponentForKeyEvent(e){if(!this.eSetFilterList.contains(oM(this.beans)))return;const t=this.virtualList.getLastFocusedRow();if(t==null)return;const s=this.virtualList.getComponentAt(t);if(s==null)return;e.preventDefault();const{readOnly:i}=this.setFilterParams;if(!i)return s}getCssIdentifier(){return"set-filter"}setModel(e){return e==null&&this.valueModel.getModel()==null?(this.setMiniFilter(null),tM.resolve()):super.setModel(e)}refresh(e){if(this.applyExcelModeOptions(e),!super.refresh(e))return!1;const t=this.setFilterParams;return["treeList","treeListPathGetter","caseSensitive","comparator","excelMode"].some(i=>e[i]!==t?.[i])||this.haveColDefParamsChanged(e)?!1:(super.updateParams(e),this.updateSetFilterOnParamsChange(e),this.updateMiniFilter(),e.suppressSelectAll!==t?.suppressSelectAll&&this.createVirtualListModel(e),this.valueModel.updateOnParamsChange(e).then(()=>{this.isAlive()&&this.refreshFilterValues()}),!0)}haveColDefParamsChanged(e){const{colDef:t,keyCreator:s}=e,{colDef:i,keyCreator:r}=this.setFilterParams,a=s??t.keyCreator,n=r??i?.keyCreator,o=t.filterValueGetter!==i?.filterValueGetter,l=a!==n,c=!!this.dataTypeSvc&&!!a&&this.dataTypeSvc.getFormatValue(t.cellDataType)===a&&t.valueFormatter!==i?.valueFormatter;return o||l||c}setModelAndRefresh(e){return this.valueModel.setModel(e).then(()=>{this.isAlive()&&this.checkAndRefreshVirtualList()})}resetUiToDefaults(){return this.setMiniFilter(null),this.setModelAndRefresh(null)}setModelIntoUi(e){this.setMiniFilter(null);const t=e==null?null:e.values;return this.setModelAndRefresh(t)}getModelFromUi(){const e=this.valueModel.getModel();return e?{values:e,filterType:this.filterType}:null}getValueModel(){return this.valueModel}areModelsEqual(e,t){return e==null&&t==null?!0:e!=null&&t!=null&&rM(e.values,t.values)}setParams(e){this.applyExcelModeOptions(e),super.setParams(e),this.updateSetFilterOnParamsChange(e);const t=e.keyCreator??e.colDef.keyCreator;this.valueModel=new zM({filterParams:e,setIsLoading:s=>this.setIsLoading(s),translate:s=>this.translateForSetFilter(s),caseFormat:s=>this.caseFormat(s),createKey:this.createKey,valueFormatter:this.valueFormatter,usingComplexObjects:!!t,gos:this.gos,rowGroupColsSvc:this.rowGroupColsSvc,valueSvc:this.valueSvc,treeDataTreeList:this.treeDataTreeList,groupingTreeList:this.groupingTreeList,addManagedEventListeners:s=>this.addManagedEventListeners(s)}),this.initialiseFilterBodyUi(),this.addEventListenersForDataChanges()}onAddCurrentSelectionToFilterChange(e){this.valueModel.setAddCurrentSelectionToFilter(e)}setValueFormatter(e,t,s,i){let r=e;if(!r){if(t&&!s){qo(249);return}this.noValueFormatterSupplied=!0,i||(r=a=>Pr(a.value))}this.valueFormatter=r}generateCreateKey(e,t){return t&&!e?(qo(250),()=>null):e?(s,i=null)=>{const r=this.getKeyCreatorParams(s,i);return Zo(e(r))}:s=>Zo(Pr(s))}getFormattedValue(e){let t=this.valueModel.getValue(e);this.noValueFormatterSupplied&&(this.treeDataTreeList||this.groupingTreeList)&&Array.isArray(t)&&(t=lM(t));const s=this.valueSvc.formatValue(this.setFilterParams.column,null,t,this.valueFormatter,!1);return s??Pr(t)??this.translateForSetFilter("blanks")}applyExcelModeOptions(e){e.excelMode==="windows"?(e.buttons||(e.buttons=["apply","cancel"]),e.closeOnApply==null&&(e.closeOnApply=!0)):e.excelMode==="mac"&&(e.buttons||(e.buttons=["reset"]),e.applyMiniFilterWhileTyping==null&&(e.applyMiniFilterWhileTyping=!0),e.debounceMs==null&&(e.debounceMs=500)),e.excelMode&&e.defaultToNothingSelected&&(e.defaultToNothingSelected=!1,cM(207))}addEventListenersForDataChanges(){if(!this.isValuesTakenFromGrid())return;this.addManagedPropertyListeners(["groupAllowUnbalanced"],()=>{this.syncAfterDataChange()});const e=nM(this,this.syncAfterDataChange.bind(this),0);this.addManagedEventListeners({cellValueChanged:t=>{t.column===this.setFilterParams.column&&e()}})}syncAfterDataChange(){const e=!this.applyActive||this.areModelsEqual(this.getModel(),this.getModelFromUi());return this.valueModel.refreshValues().then(()=>{this.isAlive()&&(this.checkAndRefreshVirtualList(),e&&this.onBtApply(!1,!0))})}setIsLoading(e){Fr(this.eFilterLoading,e),e||(this.hardRefreshVirtualList=!0)}initialiseFilterBodyUi(){this.initVirtualList(),this.initMiniFilter(),this.initLoading()}initLoading(){const e=aM("setFilterLoading",this.beans,this.setFilterParams.column);e&&this.eFilterLoadingIcon.appendChild(e)}initVirtualList(){const t=this.getLocaleTextFunc()("ariaFilterList","Filter List"),s=!!this.setFilterParams.treeList,i=this.virtualList=this.createBean(new ut({cssIdentifier:"filter",ariaRole:s?"tree":"listbox",listName:t})),r=this.eSetFilterList;s&&r.classList.add("ag-set-filter-tree-list"),r&&r.appendChild(i.getGui());const{cellHeight:a}=this.setFilterParams;a!=null&&i.setRowHeight(a);const n=(l,c)=>this.createSetListItem(l,s,c);i.setComponentCreator(n);const o=(l,c)=>this.updateSetListItem(l,c);i.setComponentUpdater(o),this.createVirtualListModel(this.setFilterParams)}createVirtualListModel(e){let t;e.suppressSelectAll?t=new UM(this.valueModel):t=new KM(this.valueModel,()=>this.isSelectAllSelected()),e.treeList&&(t=new WM(t)),this.virtualList.setModel(t)}getSelectAllLabel(){const e=this.valueModel.getMiniFilter()==null||!this.setFilterParams.excelMode?"selectAll":"selectAllSearchResults";return this.translateForSetFilter(e)}getAddSelectionToFilterLabel(){return this.translateForSetFilter("addCurrentSelectionToFilter")}createSetListItem(e,t,s){const i=this.valueModel.hasGroups(),{isSelected:r,isExpanded:a}=this.isSelectedExpanded(e),{value:n,depth:o,isGroup:l,hasIndeterminateExpandState:c,selectedListener:d,expandedListener:h}=this.newSetListItemAttributes(e),u={focusWrapper:s,value:n,params:this.setFilterParams,translate:g=>this.translateForSetFilter(g),valueFormatter:this.valueFormatter,item:e,isSelected:r,isTree:t,depth:o,groupsExist:i,isGroup:l,isExpanded:a,hasIndeterminateExpandState:c},p=this.createBean(new TM(u));return p.addEventListener("selectionChanged",d),h&&p.addEventListener("expandedChanged",h),p}newSetTreeItemAttributes(e){const t=this.valueModel.hasGroups();return e.key===Qe?{value:()=>this.getSelectAllLabel(),isGroup:t,depth:e.depth,hasIndeterminateExpandState:!0,selectedListener:s=>this.onSelectAll(s.isSelected),expandedListener:s=>this.onExpandAll(s.item,s.isExpanded)}:e.key===et?{value:()=>this.getAddSelectionToFilterLabel(),depth:e.depth,isGroup:!1,hasIndeterminateExpandState:!1,selectedListener:s=>{this.onAddCurrentSelectionToFilterChange(s.isSelected)}}:e.children?{value:this.setFilterParams.treeListFormatter?.(e.treeKey,e.depth,e.parentTreeKeys)??e.treeKey,depth:e.depth,isGroup:!0,selectedListener:s=>this.onGroupItemSelected(s.item,s.isSelected),expandedListener:s=>this.onExpandedChanged(s.item,s.isExpanded)}:{value:this.setFilterParams.treeListFormatter?.(e.treeKey,e.depth,e.parentTreeKeys)??e.treeKey,depth:e.depth,selectedListener:s=>this.onItemSelected(s.item.key,s.isSelected)}}newSetListItemAttributes(e){return this.isSetFilterModelTreeItem(e)?this.newSetTreeItemAttributes(e):e===Qe?{value:()=>this.getSelectAllLabel(),selectedListener:t=>this.onSelectAll(t.isSelected)}:e===et?{value:()=>this.getAddSelectionToFilterLabel(),selectedListener:t=>{this.onAddCurrentSelectionToFilterChange(t.isSelected)}}:{value:this.valueModel.getValue(e),selectedListener:t=>this.onItemSelected(t.item,t.isSelected)}}updateSetListItem(e,t){const{isSelected:s,isExpanded:i}=this.isSelectedExpanded(e);t.refresh(e,s,i)}isSelectedExpanded(e){let t,s;return this.isSetFilterModelTreeItem(e)?(s=e.expanded,e.key===Qe?t=this.isSelectAllSelected():e.key===et?t=this.valueModel.isAddCurrentSelectionToFilterChecked():e.children?t=this.areAllChildrenSelected(e):t=this.valueModel.isKeySelected(e.key)):e===Qe?t=this.isSelectAllSelected():e===et?t=this.valueModel.isAddCurrentSelectionToFilterChecked():t=this.valueModel.isKeySelected(e),{isSelected:t,isExpanded:s}}isSetFilterModelTreeItem(e){return e?.treeKey!==void 0}initMiniFilter(){const{eMiniFilter:e}=this,t=this.getLocaleTextFunc();e.setDisplayed(!this.setFilterParams.suppressMiniFilter),e.setValue(this.valueModel.getMiniFilter()),e.onValueChange(()=>this.onMiniFilterInput()),e.setInputAriaLabel(t("ariaSearchFilterValues","Search filter values")),this.addManagedElementListeners(e.getInputElement(),{keydown:s=>this.onMiniFilterKeyDown(s)})}updateMiniFilter(){const{eMiniFilter:e}=this;e.isDisplayed()!==!this.setFilterParams.suppressMiniFilter&&e.setDisplayed(!this.setFilterParams.suppressMiniFilter);const t=this.valueModel.getMiniFilter();e.getValue()!==t&&e.setValue(t)}afterGuiAttached(e){super.afterGuiAttached(e),this.resetExpansion(),this.refreshVirtualList();const{eMiniFilter:t}=this;t.setInputPlaceholder(this.translateForSetFilter("searchOoo")),(!e||!e.suppressFocus)&&(t.isDisplayed()?t.getFocusableElement().focus():this.virtualList.awaitStable(()=>this.virtualList.focusRow(0)))}afterGuiDetached(){super.afterGuiDetached(),this.setFilterParams.excelMode&&this.resetMiniFilter();const e=this.getModel();(this.setFilterParams.excelMode||!this.areModelsEqual(e,this.getModelFromUi()))&&(this.resetUiToActiveModel(e),this.showOrHideResults())}applyModel(e="api"){this.setFilterParams.excelMode&&e!=="rowDataUpdated"&&this.valueModel.isEverythingVisibleSelected()&&this.valueModel.selectAllMatchingMiniFilter();const t=this.valueModel.showAddCurrentSelectionToFilter()&&this.valueModel.isAddCurrentSelectionToFilterChecked();if(t&&!this.getModel())return!1;const s=super.applyModel(e),i=this.getModel();return i?(t||this.valueModel.setAppliedModelKeys(new Set),i.values.forEach(r=>{this.valueModel.addToAppliedModelKeys(r)})):t||this.valueModel.setAppliedModelKeys(null),s}isModelValid(e){return this.setFilterParams.excelMode?e==null||e.values.length>0:!0}doesFilterPass(e){if(!this.valueModel.getCaseFormattedAppliedModelKeys())return!0;if(!this.valueModel.hasAnyAppliedModelKey())return!1;const{node:t}=e;if(this.treeDataTreeList)return this.doesFilterPassForTreeData(t);if(this.groupingTreeList)return this.doesFilterPassForGrouping(t);const s=this.getValueFromNode(t);return s!=null&&Array.isArray(s)?s.length===0?this.valueModel.hasAppliedModelKey(null):s.some(i=>this.isInAppliedModel(this.createKey(i,t))):this.isInAppliedModel(this.createKey(s,t))}doesFilterPassForTreeData(e){return e.childrenAfterGroup?.length?!1:this.isInAppliedModel(this.createKey(Er(e.getRoute()??[e.key??e.id],!0,this.gos.get("groupAllowUnbalanced"))))}doesFilterPassForGrouping(e){const t=(this.rowGroupColsSvc?.columns??[]).map(s=>this.valueSvc.getKeyForNode(s,e));return t.push(this.getValueFromNode(e)),this.isInAppliedModel(this.createKey(Er(t,!1,this.gos.get("groupAllowUnbalanced"))))}isInAppliedModel(e){return this.valueModel.hasAppliedModelKey(e)}getValueFromNode(e){return this.setFilterParams.getValue(e)}getKeyCreatorParams(e,t=null){const{colDef:s,column:i,api:r,context:a}=this.setFilterParams;return{value:e,colDef:s,column:i,node:t,data:t?.data,api:r,context:a}}onNewRowsLoaded(){this.isValuesTakenFromGrid()&&this.syncAfterDataChange()}isValuesTakenFromGrid(){return this.valueModel.getValuesType()===2}setFilterValues(e){this.valueModel.overrideValues(e).then(()=>{this.isAlive()&&(this.checkAndRefreshVirtualList(),this.onUiChanged())})}resetFilterValues(){this.valueModel.setValuesType(2),this.syncAfterDataChange()}refreshFilterValues(){this.valueModel.isInitialised()&&this.valueModel.refreshValues().then(()=>{this.isAlive()&&(this.hardRefreshVirtualList=!0,this.checkAndRefreshVirtualList(),this.onUiChanged())})}onAnyFilterChanged(){setTimeout(()=>{this.isAlive()&&this.valueModel.refreshAfterAnyFilterChanged().then(e=>{e&&this.isAlive()&&(this.checkAndRefreshVirtualList(),this.showOrHideResults())})},0)}onMiniFilterInput(){if(!this.valueModel.setMiniFilter(this.eMiniFilter.getValue()))return;const{applyMiniFilterWhileTyping:e,readOnly:t}=this.setFilterParams;!t&&e?this.filterOnAllVisibleValues(!1):this.updateUiAfterMiniFilterChange()}updateUiAfterMiniFilterChange(){const{excelMode:e,readOnly:t}=this.setFilterParams;e==null||t?this.checkAndRefreshVirtualList():this.valueModel.getMiniFilter()==null?this.resetUiToActiveModel(this.getModel()):(this.valueModel.selectAllMatchingMiniFilter(!0),this.checkAndRefreshVirtualList(),this.onUiChanged()),this.showOrHideResults()}showOrHideResults(){const e=this.valueModel.getMiniFilter()!=null&&this.valueModel.getDisplayedValueCount()<1;Fr(this.eFilterNoMatches,e),Fr(this.eSetFilterList,!e)}resetMiniFilter(){this.eMiniFilter.setValue(null,!0),this.valueModel.setMiniFilter(null)}resetUiToActiveModel(e,t){this.setModelAndRefresh(e==null?null:e.values).then(()=>{this.isAlive()&&(this.onUiChanged(!1,"prevent"),t?.())})}handleCancelEnd(e){this.setMiniFilter(null),super.handleCancelEnd(e)}onMiniFilterKeyDown(e){const{excelMode:t,readOnly:s}=this.setFilterParams;e.key===Wt.ENTER&&!t&&!s&&this.filterOnAllVisibleValues()}filterOnAllVisibleValues(e=!0){this.valueModel.selectAllMatchingMiniFilter(!0),this.checkAndRefreshVirtualList(),this.onUiChanged(!1,e?"immediately":"debounce"),this.showOrHideResults()}focusRowIfAlive(e){return e==null?Promise.resolve():new Promise(t=>{window.setTimeout(()=>{this.isAlive()&&this.virtualList.focusRow(e),t()},0)})}onSelectAll(e){e?this.valueModel.selectAllMatchingMiniFilter():this.valueModel.deselectAllMatchingMiniFilter(),this.refreshAfterSelection()}onGroupItemSelected(e,t){const s=i=>{i.filterPasses&&(i.children?i.children.forEach(r=>s(r)):this.selectItem(i.key,t))};s(e),this.refreshAfterSelection()}onItemSelected(e,t){this.selectItem(e,t),this.refreshAfterSelection()}selectItem(e,t){t?this.valueModel.selectKey(e):this.valueModel.deselectKey(e)}onExpandAll(e,t){const s=i=>{i.filterPasses&&i.available&&i.children&&(i.children.forEach(r=>s(r)),i.expanded=t)};s(e),this.refreshAfterExpansion()}onExpandedChanged(e,t){e.expanded=t,this.refreshAfterExpansion()}refreshAfterExpansion(){const e=this.virtualList.getLastFocusedRow();this.valueModel.updateDisplayedValues("expansion"),this.checkAndRefreshVirtualList(),this.focusRowIfAlive(e)}refreshAfterSelection(){const e=this.virtualList.getLastFocusedRow();this.checkAndRefreshVirtualList(),this.onUiChanged(),this.focusRowIfAlive(e)}setMiniFilter(e){this.eMiniFilter.setValue(e),this.onMiniFilterInput()}getMiniFilter(){return this.valueModel.getMiniFilter()}checkAndRefreshVirtualList(){this.virtualList.refresh(!this.hardRefreshVirtualList),this.hardRefreshVirtualList&&(this.hardRefreshVirtualList=!1)}getFilterKeys(){return this.valueModel.getKeys()}getFilterValues(){return this.valueModel.getValues()}getValues(){return this.getFilterKeys()}refreshVirtualList(){this.setFilterParams.refreshValuesOnOpen?this.refreshFilterValues():this.checkAndRefreshVirtualList()}translateForSetFilter(e){return this.getLocaleTextFunc()(e,dM[e])}isSelectAllSelected(){if(this.setFilterParams.defaultToNothingSelected){if(this.valueModel.hasSelections()&&this.valueModel.isEverythingVisibleSelected())return!0;if(this.valueModel.isNothingVisibleSelected())return!1}else{if(this.valueModel.hasSelections()&&this.valueModel.isNothingVisibleSelected())return!1;if(this.valueModel.isEverythingVisibleSelected())return!0}}areAllChildrenSelected(e){const t=s=>{if(s.children){let i=!1,r=!1;return s.children.some(n=>{if(!n.filterPasses||!n.available)return!1;const o=t(n);return o===void 0?!0:(o?i=!0:r=!0,i&&r)})?void 0:i}else return this.valueModel.isKeySelected(s.key)};return this.setFilterParams.defaultToNothingSelected?this.valueModel.hasSelections()&&t(e):t(e)}destroy(){this.virtualList=this.destroyBean(this.virtualList),super.destroy()}caseFormat(e){return e==null||typeof e!="string"||this.caseSensitive?e:e.toUpperCase()}resetExpansion(){if(!this.setFilterParams.treeList)return;const e=this.valueModel.getSelectAllItem();if(this.isSetFilterModelTreeItem(e)){const t=s=>{s.children&&(s.children.forEach(i=>t(i)),s.expanded=!1)};t(e),this.valueModel.updateDisplayedValues("expansion")}}getModelAsString(e){return this.filterModelFormatter.getModelAsString(e,this)}getPositionableElement(){return this.eSetFilterList}},UM=class{constructor(e){this.model=e}getRowCount(){return this.model.getDisplayedValueCount()}getRow(e){return this.model.getDisplayedItem(e)}areRowsEqual(e,t){return e===t}},KM=class{constructor(e,t){this.model=e,this.isSelectAllSelected=t}getRowCount(){const t=this.model.showAddCurrentSelectionToFilter()?2:1;return this.model.getDisplayedValueCount()+t}getRow(e){if(e===0)return this.model.getSelectAllItem();const t=this.model.showAddCurrentSelectionToFilter(),s=t?2:1;return e===1&&t?this.model.getAddSelectionToFilterItem():this.model.getDisplayedItem(e-s)}areRowsEqual(e,t){return e===t}},WM=class{constructor(e){this.model=e}getRowCount(){return this.model.getRowCount()}getRow(e){return this.model.getRow(e)}areRowsEqual(e,t){return e==null&&t==null?!0:e!=null&&t!=null&&e.treeKey===t.treeKey&&e.depth===t.depth}};import{AgInputTextFieldSelector as jM,Component as $M,RefPlaceholder as YM,_error as XM}from"ag-grid-community";var qM={tag:"div",cls:"ag-floating-filter-input ag-set-floating-filter-input",role:"presentation",children:[{tag:"ag-input-text-field",ref:"eFloatingFilterText"}]},ZM=class extends $M{constructor(){super(qM,[jM]),this.eFloatingFilterText=YM,this.availableValuesListenerAdded=!1,this.filterModelFormatter=new el}wireBeans(e){this.colNames=e.colNames}init(e){this.params=e,this.eFloatingFilterText.setDisabled(!0).addGuiEventListener("click",()=>this.params.showParentFilter()),this.setParams(e)}setParams(e){const t=this.colNames.getDisplayNameForColumn(e.column,"header",!0),s=this.getLocaleTextFunc();this.eFloatingFilterText.setInputAriaLabel(`${t} ${s("ariaFilterInput","Filter Input")}`)}refresh(e){this.params=e,this.setParams(e)}onParentModelChanged(e){this.updateFloatingFilterText(e)}parentSetFilterInstance(e){this.params.parentFilterInstance(t=>{if(!(t instanceof il)){XM(248);return}e(t)})}addAvailableValuesListener(){this.parentSetFilterInstance(e=>{const t=e.getValueModel();t&&this.addManagedListeners(t,{availableValuesChanged:()=>this.updateFloatingFilterText()})}),this.availableValuesListenerAdded=!0}updateFloatingFilterText(e){this.availableValuesListenerAdded||this.addAvailableValuesListener(),this.parentSetFilterInstance(t=>{this.eFloatingFilterText.setValue(this.filterModelFormatter.getModelAsString(e,t))})}},rl={moduleName:"SetFilter",version:E,userComponents:{agSetColumnFilter:il,agSetColumnFloatingFilter:ZM},icons:{setFilterGroupClosed:"tree-closed",setFilterGroupOpen:"tree-open",setFilterGroupIndeterminate:"tree-indeterminate",setFilterLoading:"loading"},dependsOn:[O,Qx]};import{_KeyboardNavigationModule as JM}from"ag-grid-community";import{AgPromise as Ks,Component as QM,RefPlaceholder as Lr,_addGridCommonParams as al,_removeFromParent as eT}from"ag-grid-community";var tT=".ag-status-bar{border-top:var(--ag-footer-row-border);display:flex;justify-content:space-between;line-height:1.5;overflow:hidden;padding-left:calc(var(--ag-spacing)*4);padding-right:calc(var(--ag-spacing)*4)}.ag-status-panel,:where(.ag-status-panel.ag-status-panel-aggregations .ag-status-name-value){display:inline-flex}.ag-status-name-value{color:var(--ag-status-bar-label-color);font-weight:var(--ag-status-bar-label-font-weight);margin-left:var(--ag-spacing);margin-right:var(--ag-spacing);padding-bottom:var(--ag-widget-container-vertical-padding);padding-top:var(--ag-widget-container-vertical-padding);white-space:nowrap}.ag-status-name-value-value{color:var(--ag-status-bar-value-color);font-weight:var(--ag-status-bar-value-font-weight)}.ag-status-bar-left{display:inline-flex}.ag-status-bar-center{display:inline-flex;text-align:center}.ag-status-bar-right{display:inline-flex}";function sT(e,t,s){return e.getCompDetails(t,iT,void 0,s,!0)}var iT={name:"statusPanel",optionalMethods:["refresh"]},rT={tag:"div",cls:"ag-status-bar",children:[{tag:"div",ref:"eStatusBarLeft",cls:"ag-status-bar-left",role:"status"},{tag:"div",ref:"eStatusBarCenter",cls:"ag-status-bar-center",role:"status"},{tag:"div",ref:"eStatusBarRight",cls:"ag-status-bar-right",role:"status"}]},aT=class extends QM{constructor(){super(rT),this.updateQueued=!1,this.panelsPromise=Ks.resolve(),this.eStatusBarLeft=Lr,this.eStatusBarCenter=Lr,this.eStatusBarRight=Lr,this.compDestroyFunctions={},this.registerCSS(tT)}wireBeans(e){this.userCompFactory=e.userCompFactory,this.statusBarSvc=e.statusBarSvc}postConstruct(){this.processStatusPanels(new Map),this.addManagedPropertyListeners(["statusBar"],this.handleStatusBarChanged.bind(this))}processStatusPanels(e){const t=this.gos.get("statusBar")?.statusPanels;if(t){const s=t.filter(a=>a.align==="left"),i=t.filter(a=>a.align==="center"),r=t.filter(a=>!a.align||a.align==="right");this.panelsPromise=Ks.all([this.createAndRenderComponents(s,this.eStatusBarLeft,e),this.createAndRenderComponents(i,this.eStatusBarCenter,e),this.createAndRenderComponents(r,this.eStatusBarRight,e)])}else this.setDisplayed(!1)}handleStatusBarChanged(){this.updateQueued||(this.updateQueued=!0,this.panelsPromise.then(()=>{this.updateStatusBar(),this.updateQueued=!1}))}updateStatusBar(){const e=this.gos.get("statusBar")?.statusPanels,t=Array.isArray(e)&&e.length>0;this.setDisplayed(t);const s=new Map;t&&e.forEach(i=>{const r=i.key??i.statusPanel,a=this.statusBarSvc.getStatusPanel(r);if(a?.refresh){const n=al(this.gos,{...i.statusPanelParams??{},key:r});a.refresh(n)&&(s.set(r,a),delete this.compDestroyFunctions[r],eT(a.getGui()))}}),this.resetStatusBar(),t&&this.processStatusPanels(s)}resetStatusBar(){this.eStatusBarLeft.innerHTML="",this.eStatusBarCenter.innerHTML="",this.eStatusBarRight.innerHTML="",this.destroyComponents(),this.statusBarSvc.unregisterAllComponents()}destroy(){this.destroyComponents(),super.destroy()}destroyComponents(){Object.values(this.compDestroyFunctions).forEach(e=>e()),this.compDestroyFunctions={}}createAndRenderComponents(e,t,s){const i=[];return e.forEach(r=>{const a=r.key||r.statusPanel,n=s.get(a);let o;if(n)o=Ks.resolve(n);else{const l=sT(this.userCompFactory,r,al(this.gos,{key:a}));if(l==null)return;o=l.newAgStackInstance()}i.push({key:a,promise:o})}),Ks.all(i.map(r=>r.promise)).then(()=>{i.forEach(r=>{r.promise.then(a=>{const n=()=>{this.destroyBean(a)};this.isAlive()?(this.statusBarSvc.registerStatusPanel(r.key,a),t.appendChild(a.getGui()),this.compDestroyFunctions[r.key]=n):n()})})})}},nT={selector:"AG-STATUS-BAR",component:aT};import{Component as oT,RefPlaceholder as $t,_createCellId as lT,_exists as cT,_formatNumberCommas as dT,_getRowBelow as hT,_getRowNode as uT,_isClientSideRowModel as pT,_isRowBefore as gT,_isServerSideRowModel as mT,_missing as kr,_warn as fT}from"ag-grid-community";import{Component as CT,RefPlaceholder as nl,_addGridCommonParams as vT}from"ag-grid-community";var Yt=class extends CT{constructor(){super(`<div class="ag-status-name-value">
|
|
4
4
|
<span data-ref="eLabel"></span>:
|
|
5
5
|
<span data-ref="eValue" class="ag-status-name-value-value"></span>
|
|
6
6
|
</div>`),this.eLabel=nl,this.eValue=nl}setLabel(e,t){this.setDisplayed(!1);const s=this.getLocaleTextFunc();this.eLabel.innerHTML=s(e,t)}setValue(e,t){this.eValue.textContent=this.valueFormatter(vT(this.gos,{value:e,totalRows:t,key:this.key}))}},yT={selector:"AG-NAME-VALUE",component:Yt},ol=e=>{let t=0;return e.forEachNodeAfterFilter(s=>{s.data&&t++}),t},Xt=e=>{let t=0;return e.forEachNode(s=>{s.data&&t++}),t};function ST(e,t){return typeof e!="number"?"":dT(Math.round(e*100)/100,t)}var bT={tag:"div",cls:"ag-status-panel ag-status-panel-aggregations",children:[{tag:"ag-name-value",ref:"avgAggregationComp"},{tag:"ag-name-value",ref:"countAggregationComp"},{tag:"ag-name-value",ref:"minAggregationComp"},{tag:"ag-name-value",ref:"maxAggregationComp"},{tag:"ag-name-value",ref:"sumAggregationComp"}]},wT=class extends oT{constructor(){super(bT,[yT]),this.sumAggregationComp=$t,this.countAggregationComp=$t,this.minAggregationComp=$t,this.maxAggregationComp=$t,this.avgAggregationComp=$t}postConstruct(){if(!pT(this.gos)&&!mT(this.gos)){fT(221);return}this.avgAggregationComp.setLabel("avg","Average"),this.countAggregationComp.setLabel("count","Count"),this.minAggregationComp.setLabel("min","Min"),this.maxAggregationComp.setLabel("max","Max"),this.sumAggregationComp.setLabel("sum","Sum"),this.addManagedEventListeners({cellSelectionChanged:this.onCellSelectionChanged.bind(this),modelUpdated:this.onCellSelectionChanged.bind(this)})}init(e){this.refresh(e)}refresh(e){this.params=e;const t=e.valueFormatter??(({value:i})=>ST(i,this.getLocaleTextFunc.bind(this))),s=["avg","count","min","max","sum"];for(const i of s){const r=this.getAllowedAggregationValueComponent(i);r&&(r.key=i,r.valueFormatter=t.bind(this))}return this.onCellSelectionChanged(),!0}setAggregationComponentValue(e,t,s){const i=this.getAllowedAggregationValueComponent(e),r=Xt(this.beans.rowModel);cT(i)&&i?(i.setValue(t,r),i.setDisplayed(s)):this.getAggregationValueComponent(e)?.setDisplayed(!1)}getAllowedAggregationValueComponent(e){const{aggFuncs:t}=this.params;return!t||t.includes(e)?this.getAggregationValueComponent(e):null}getAggregationValueComponent(e){const t=`${e}AggregationComp`;return this[t]}onCellSelectionChanged(){const e=this.beans,{rangeSvc:t,valueSvc:s}=e,i=t?.getCellRanges();let r=0,a=0,n=0,o=null,l=null;const c={};if(i?.length&&t)for(let u=0;u<i.length;u++){const p=i[u];let g=t.getRangeStartRow(p);const m=t.getRangeEndRow(p);for(;!(kr(g)||!g||gT(m,g)||!g||!p.columns);)p.columns.forEach(C=>{if(g===null)return;const v=lT({rowPinned:g.rowPinned,column:C,rowIndex:g.rowIndex});if(c[v])return;c[v]=!0;const y=uT(e,g);if(kr(y))return;let S=s.getValue(C,y);kr(S)||S===""||(a++,!(typeof S=="object"&&"value"in S&&(S=S.value,S===""))&&(typeof S=="string"&&(S=Number(S)),typeof S=="number"&&!isNaN(S)&&(r+=S,(l===null||S>l)&&(l=S),(o===null||S<o)&&(o=S),n++)))}),g=hT(e,g)}const d=a>1,h=n>1;this.setAggregationComponentValue("count",a,d),this.setAggregationComponentValue("sum",r,h),this.setAggregationComponentValue("min",o,h),this.setAggregationComponentValue("max",l,h),this.setAggregationComponentValue("avg",r/n,h)}};import{_formatNumberCommas as xT,_isClientSideRowModel as MT,_warn as TT}from"ag-grid-community";var FT=class extends Yt{postConstruct(){if(this.setLabel("filteredRows","Filtered"),!MT(this.gos)){TT(222);return}this.addCssClass("ag-status-panel"),this.addCssClass("ag-status-panel-filtered-row-count"),this.setDisplayed(!0);const e=this.onDataChanged.bind(this);this.addManagedEventListeners({modelUpdated:e})}onDataChanged(){const{rowModel:e}=this.beans,t=Xt(e),s=ol(e);this.setValue(s,t),this.setDisplayed(t!==s)}init(e){this.refresh(e),this.onDataChanged()}updateValueFormatter(e){this.valueFormatter=e??(({value:t})=>xT(t,this.getLocaleTextFunc.bind(this)))}refresh(e){const{key:t,valueFormatter:s}=e;return this.key=t,this.updateValueFormatter(s),!0}};import{_formatNumberCommas as PT,_isClientSideRowModel as AT,_isServerSideRowModel as RT,_warn as ET}from"ag-grid-community";var IT=class extends Yt{postConstruct(){const e=this.gos;if(!AT(e)&&!RT(e)){ET(223);return}this.setLabel("selectedRows","Selected"),this.addCssClass("ag-status-panel"),this.addCssClass("ag-status-panel-selected-row-count");const t=this.onRowSelectionChanged.bind(this);this.addManagedEventListeners({modelUpdated:t,selectionChanged:t})}onRowSelectionChanged(){const{selectionSvc:e,rowModel:t}=this.beans,s=e?.getSelectionCount()??0,i=Xt(t);if(this.setValue(s,i),s<0){this.setDisplayed(!0);return}this.setDisplayed(s>0)}init(e){this.refresh(e),this.onRowSelectionChanged()}updateValueFormatter(e){this.valueFormatter=e??(({value:t})=>t==null||t>=0?PT(t,this.getLocaleTextFunc.bind(this)):this.getLocaleTextFunc()("statusBarLastRowUnknown","?"))}refresh(e){const{key:t,valueFormatter:s}=e;return this.key=t,this.updateValueFormatter(s),!0}};import{_formatNumberCommas as ll,_isClientSideRowModel as DT,_warn as LT}from"ag-grid-community";var kT=class extends Yt{postConstruct(){if(!DT(this.gos)){LT(224);return}this.setLabel("totalAndFilteredRows","Rows"),this.addCssClass("ag-status-panel"),this.addCssClass("ag-status-panel-total-and-filtered-row-count"),this.setDisplayed(!0),this.addManagedEventListeners({modelUpdated:this.onDataChanged.bind(this)})}onDataChanged(){const{rowModel:e}=this.beans,t=ol(e),s=Xt(e);this.setValue(t,s)}init(e){this.refresh(e),this.onDataChanged()}updateValueFormatter(e){this.valueFormatter=e??(({value:t,totalRows:s})=>{const i=this.getLocaleTextFunc.bind(this),r=ll(t,i),a=ll(s??t,i);if(t===s)return r;const n=i();return`${r} ${n("of","of")} ${a}`})}refresh(e){const{key:t,valueFormatter:s}=e;return this.key=t,this.updateValueFormatter(s),!0}};import{_formatNumberCommas as GT,_isClientSideRowModel as OT,_warn as NT}from"ag-grid-community";var BT=class extends Yt{postConstruct(){if(this.setLabel("totalRows","Total Rows"),!OT(this.gos)){NT(225);return}this.addCssClass("ag-status-panel"),this.addCssClass("ag-status-panel-total-row-count"),this.setDisplayed(!0),this.addManagedEventListeners({modelUpdated:this.onDataChanged.bind(this)})}onDataChanged(){const e=Xt(this.beans.rowModel);this.setValue(e,e)}init(e){this.refresh(e),this.onDataChanged()}updateValueFormatter(e){this.valueFormatter=e??(({value:t})=>GT(t,this.getLocaleTextFunc.bind(this)))}refresh(e){const{key:t,valueFormatter:s}=e;return this.key=t,this.updateValueFormatter(s),!0}};import{_unwrapUserComp as _T}from"ag-grid-community";function VT(e,t){const s=e.statusBarSvc?.getStatusPanel(t);return _T(s)}import{BeanStub as HT}from"ag-grid-community";var zT=class extends HT{constructor(){super(),this.beanName="statusBarSvc",this.comps=new Map}registerStatusPanel(e,t){this.comps.set(e,t)}unregisterStatusPanel(e){this.comps.delete(e)}unregisterAllComponents(){this.comps.clear()}getStatusPanel(e){return this.comps.get(e)}destroy(){this.unregisterAllComponents(),super.destroy()}},cl={moduleName:"StatusBar",version:E,beans:[zT],userComponents:{agAggregationComponent:wT,agTotalRowCountComponent:BT,agFilteredRowCountComponent:FT,agTotalAndFilteredRowCountComponent:kT,agSelectedRowCountComponent:IT},selectors:[nT],apiFunctions:{getStatusPanel:VT},dependsOn:[O,JM]};import{_SharedExportModule as UT}from"ag-grid-community";import{_warn as KT}from"ag-grid-community";function dl(e){return e.excelCreator?.getFactoryMode()==="MULTI_SHEET"?(KT(161),!1):!0}function WT(e,t){if(dl(e))return e.excelCreator?.getDataAsExcel(t)}function jT(e,t){dl(e)&&e.excelCreator?.exportDataAsExcel(t)}function $T(e,t){return e.excelCreator?.setFactoryMode("MULTI_SHEET"),e.excelCreator?.getSheetDataForExcel(t)}function YT(e,t){return e.excelCreator?.getMultipleSheetsAsExcel(t)}function XT(e,t){e.excelCreator?.exportMultipleSheetsAsExcel(t)}var hl={moduleName:"ExcelExport",version:E,beans:[Fm],apiFunctions:{getDataAsExcel:WT,exportDataAsExcel:jT,getSheetDataForExcel:$T,getMultipleSheetsAsExcel:YT,exportMultipleSheetsAsExcel:XT},dependsOn:[UT,O]};import{_ColumnFilterModule as qT}from"ag-grid-community";import{AgPromise as xe,KeyCode as qt,ProvidedFilter as ul,TabGuardComp as ZT,_createElement as JT,_focusInto as QT,_getActiveDomElement as eF,_getFilterDetails as tF,_isNothingFocused as sF,_removeFromArray as iF,_setAriaRole as rF}from"ag-grid-community";import{AgCheckboxSelector as aF,AgToggleButton as nF,Component as Ws,KeyCode as Zt,RefPlaceholder as vt,_createIcon as pl,_setAriaExpanded as oF,_setDisplayed as tt}from"ag-grid-community";function lF(e){const t=e.cssIdentifier||"default",s=e.direction||"vertical";return{tag:"div",cls:`ag-group ag-${t}-group`,role:"presentation",children:[{tag:"div",ref:"eToolbar",cls:`ag-group-toolbar ag-${t}-group-toolbar`,children:[{tag:"ag-checkbox",ref:"cbGroupEnabled"}]},{tag:"div",ref:"eContainer",cls:`ag-group-container ag-group-container-${s} ag-${t}-group-container`}]}}var Me=class extends Ws{constructor(e={}){super(lF(e),[aF]),this.params=e,this.suppressEnabledCheckbox=!0,this.suppressToggleExpandOnEnableChange=!1,this.eToolbar=vt,this.cbGroupEnabled=vt,this.eContainer=vt;const{enabled:t,items:s,suppressEnabledCheckbox:i,expanded:r,suppressToggleExpandOnEnableChange:a,useToggle:n}=e;this.cssIdentifier=e.cssIdentifier||"default",this.enabled=t??!0,this.items=s||[],this.useToggle=n??!1,this.alignItems=e.alignItems||"center",this.expanded=r??!0,i!=null&&(this.suppressEnabledCheckbox=i),a!=null&&(this.suppressToggleExpandOnEnableChange=a)}postConstruct(){if(this.setupTitleBar(),this.items.length){const r=this.items;this.items=[],this.addItems(r)}const e=this.getLocaleTextFunc();this.cbGroupEnabled.setLabel(e("enabled","Enabled")),this.enabled&&this.setEnabled(this.enabled,void 0,!0),this.setAlignItems(this.alignItems);const{onEnableChange:t,onExpandedChange:s,suppressOpenCloseIcons:i}=this.params;this.hideEnabledCheckbox(this.suppressEnabledCheckbox),this.hideOpenCloseIcons(i??!1),this.refreshChildDisplay(),tt(this.eContainer,this.expanded),this.cbGroupEnabled.onValueChange(r=>{this.setEnabled(r,!0,this.suppressToggleExpandOnEnableChange),this.dispatchEnableChangeEvent(r)}),t!=null&&this.onEnableChange(t),s!=null&&this.onExpandedChange(s)}refreshChildDisplay(){tt(this.eToolbar,this.expanded&&!this.suppressEnabledCheckbox),this.eTitleBar?.refreshOnExpand(this.expanded)}isExpanded(){return this.expanded}setAlignItems(e){this.alignItems!==e&&this.removeCssClass(`ag-group-item-alignment-${this.alignItems}`),this.alignItems=e;const t=`ag-group-item-alignment-${this.alignItems}`;return this.addCssClass(t),this}toggleGroupExpand(e,t){if(this.eTitleBar?.isSuppressCollapse()&&!this.useToggle)e=!0,t=!0;else if(e=e??!this.expanded,this.expanded===e)return this;return this.expanded=e,this.refreshChildDisplay(),tt(this.eContainer,e),t||this.dispatchLocalEvent({type:e?"expanded":"collapsed"}),this}addItems(e){e.forEach(t=>this.addItem(t))}prependItem(e){this.insertItem(e,!0)}addItem(e){this.insertItem(e,!1)}insertItem(e,t){const s=this.eContainer,i=e instanceof Ws?e.getGui():e;i.classList.add("ag-group-item",`ag-${this.cssIdentifier}-group-item`),t?(s.insertAdjacentElement("afterbegin",i),this.items.unshift(i)):(s.appendChild(i),this.items.push(i))}hideItem(e,t){const s=this.items[t];tt(s,!e)}getItemIndex(e){const t=e instanceof Ws?e.getGui():e;return this.items.indexOf(t)}setTitle(e){return this.eTitleBar?.setTitle(e),this}addTitleBarWidget(e){return this.eTitleBar?.addWidget(e),this}addCssClassToTitleBar(e){this.eTitleBar?.addCssClass(e)}dispatchEnableChangeEvent(e){const t={type:"enableChange",enabled:e};this.dispatchLocalEvent(t)}setEnabled(e,t,s){return this.enabled=e,this.refreshDisabledStyles(),s||this.toggleGroupExpand(e),t||(this.cbGroupEnabled.setValue(e),this.eToggle?.setValue(e)),this}isEnabled(){return this.enabled}onEnableChange(e){return this.addManagedListeners(this,{enableChange:t=>e(t.enabled)}),this}onExpandedChange(e){return this.addManagedListeners(this,{expanded:()=>e(!0),collapsed:()=>e(!1)}),this}hideEnabledCheckbox(e){return this.suppressEnabledCheckbox=e,this.refreshChildDisplay(),this.refreshDisabledStyles(),this}hideOpenCloseIcons(e){return this.eTitleBar?.hideOpenCloseIcons(e),this}refreshDisabledStyles(){const e=!this.enabled;this.eContainer.classList.toggle("ag-disabled",e),this.eTitleBar?.refreshDisabledStyles(this.suppressEnabledCheckbox&&e),this.eContainer.classList.toggle("ag-disabled-group-container",e)}setupTitleBar(){const e=this.useToggle?this.createToggleTitleBar():this.createDefaultTitleBar();this.eToolbar.insertAdjacentElement("beforebegin",e.getGui())}createDefaultTitleBar(){const e=this.createManagedBean(new dF(this.params));return this.eTitleBar=e,e.refreshOnExpand(this.expanded),this.addManagedListeners(e,{expandedChanged:t=>this.toggleGroupExpand(t.expanded)}),e}createToggleTitleBar(){const e=this.createManagedBean(new nF({value:this.enabled,label:this.params.title,labelAlignment:"left",labelWidth:"flex",onValueChange:t=>{this.setEnabled(t,!0),this.dispatchEnableChangeEvent(t)}}));return e.addCssClass("ag-group-title-bar"),e.addCssClass(`ag-${this.params.cssIdentifier??"default"}-group-title-bar ag-unselectable`),this.eToggle=e,this.toggleGroupExpand(this.enabled),e}},Gr="ag-disabled-group-title-bar";function cF(e){const t=e.cssIdentifier??"default";return{tag:"div",cls:`ag-group-title-bar ag-${t}-group-title-bar ag-unselectable`,role:e.suppressKeyboardNavigation?"presentation":"role",children:[{tag:"span",ref:"eGroupOpenedIcon",cls:`ag-group-title-bar-icon ag-${t}-group-title-bar-icon`,role:"presentation"},{tag:"span",ref:"eGroupClosedIcon",cls:`ag-group-title-bar-icon ag-${t}-group-title-bar-icon`,role:"presentation"},{tag:"span",ref:"eTitle",cls:`ag-group-title ag-${t}-group-title`}]}}var dF=class extends Ws{constructor(e={}){super(cF(e)),this.suppressOpenCloseIcons=!1,this.suppressKeyboardNavigation=!1,this.eGroupOpenedIcon=vt,this.eGroupClosedIcon=vt,this.eTitle=vt;const{title:t,suppressOpenCloseIcons:s,suppressKeyboardNavigation:i}=e;t&&t.length>0&&(this.title=t),s!=null&&(this.suppressOpenCloseIcons=s),this.suppressKeyboardNavigation=i??!1}postConstruct(){this.setTitle(this.title),this.hideOpenCloseIcons(this.suppressOpenCloseIcons),this.setupExpandContract()}setupExpandContract(){this.eGroupClosedIcon.appendChild(pl("accordionClosed",this.beans,null)),this.eGroupOpenedIcon.appendChild(pl("accordionOpen",this.beans,null)),this.addManagedElementListeners(this.getGui(),{click:()=>this.dispatchExpandChanged(),keydown:e=>{switch(e.key){case Zt.ENTER:case Zt.SPACE:e.preventDefault(),this.dispatchExpandChanged();break;case Zt.RIGHT:case Zt.LEFT:e.preventDefault(),this.dispatchExpandChanged(e.key===Zt.RIGHT);break}}})}refreshOnExpand(e){this.refreshAriaStatus(e),this.refreshOpenCloseIcons(e)}refreshAriaStatus(e){this.suppressOpenCloseIcons||oF(this.getGui(),e)}refreshOpenCloseIcons(e){const t=!this.suppressOpenCloseIcons;tt(this.eGroupOpenedIcon,t&&e),tt(this.eGroupClosedIcon,t&&!e)}isSuppressCollapse(){return this.suppressOpenCloseIcons}dispatchExpandChanged(e){const t={type:"expandedChanged",expanded:e};this.dispatchLocalEvent(t)}setTitle(e){const t=this.getGui(),s=!!e&&e.length>0;e=s?e:void 0,this.eTitle.textContent=e??"",tt(t,s),e!==this.title&&(this.title=e);const i=t.classList.contains(Gr);return this.refreshDisabledStyles(i),this}addWidget(e){return this.getGui().appendChild(e),this}hideOpenCloseIcons(e){return this.suppressOpenCloseIcons=e,e&&this.dispatchExpandChanged(!0),this}refreshDisabledStyles(e){const t=this.getGui();e?(t.classList.add(Gr),t.removeAttribute("tabindex")):(t.classList.remove(Gr),typeof this.title=="string"&&!this.suppressKeyboardNavigation?t.setAttribute("tabindex","0"):t.removeAttribute("tabindex"))}},_={selector:"AG-GROUP-COMPONENT",component:Me};function gl(e){const{filters:t}=e;return t&&t.length>0?t:[{filter:"agTextColumnFilter"},{filter:"agSetColumnFilter"}]}function ml(e,t){if(e!=null)for(let s=e.length-1;s>=0;s--)t(e[s],s)}function hF(e,t){return t.title!=null?t.title:e instanceof ul?e.getFilterTitle():"Filter"}var fl=class extends ZT{constructor(){super({tag:"div",cls:"ag-multi-filter ag-menu-list-compact"}),this.filterType="multi",this.filterDefs=[],this.filters=[],this.guiDestroyFuncs=[],this.filterGuis=[],this.activeFilterIndices=[],this.lastActivatedMenuItem=null,this.afterFiltersReadyFuncs=[]}postConstruct(){this.initialiseTabGuard({onFocusIn:e=>this.onFocusIn(e)})}init(e){this.params=e,this.filterDefs=gl(e);const{column:t,filterChangedCallback:s}=e;this.column=t,this.filterChangedCallback=s;const i=[];return this.filterDefs.forEach((r,a)=>{const n=this.createFilter(r,a);n!=null&&i.push(n)}),new xe(r=>{xe.all(i).then(a=>{this.filters=a,this.refreshGui("columnMenu").then(()=>{r()})})}).then(()=>{this.afterFiltersReadyFuncs.forEach(r=>r()),this.afterFiltersReadyFuncs.length=0})}refreshGui(e){return e===this.lastOpenedInContainer?xe.resolve():(this.tabGuardFeature.removeAllChildrenExceptTabGuards(),this.destroyChildren(),xe.all(this.filters.map((t,s)=>{const i=this.filterDefs[s],r=hF(t,i);let a;if(i.display==="subMenu"&&e!=="toolPanel")a=this.insertFilterMenu(t,r).then(n=>n.getGui());else if(i.display==="subMenu"||i.display==="accordion"){const n=this.insertFilterGroup(t,r);a=xe.resolve(n.getGui())}else a=xe.resolve(t.getGui());return a})).then(t=>{t.forEach((s,i)=>{i>0&&this.appendChild(JT({tag:"div",cls:"ag-filter-separator"})),this.appendChild(s)}),this.filterGuis=t,this.lastOpenedInContainer=e}))}destroyChildren(){this.guiDestroyFuncs.forEach(e=>e()),this.guiDestroyFuncs.length=0,this.filterGuis.length=0}insertFilterMenu(e,t){const s=this.createBean(new pr);return s.init({menuItemDef:{name:t,subMenu:[],subMenuRole:"dialog",cssClasses:["ag-multi-filter-menu-item"],menuItem:Qn,menuItemParams:{cssClassPrefix:"ag-compact-menu-option",isCompact:!0}},level:0,isAnotherSubMenuOpen:()=>!1,childComponent:e,contextParams:{column:null,node:null,value:null}}).then(()=>{s.setParentComponent(this),this.guiDestroyFuncs.push(()=>this.destroyBean(s)),this.addManagedListeners(s,{menuItemActivated:r=>{this.lastActivatedMenuItem&&this.lastActivatedMenuItem!==r.menuItem&&this.lastActivatedMenuItem.deactivate(),this.lastActivatedMenuItem=r.menuItem}});const i=s.getGui();return s.addManagedElementListeners(i,{keydown:r=>{const{key:a}=r;switch(a){case qt.UP:case qt.RIGHT:case qt.DOWN:case qt.LEFT:r.preventDefault(),a===qt.RIGHT&&s.openSubMenu(!0);break}},focusin:()=>s.activate(),focusout:()=>{!s.isSubMenuOpen()&&!s.isSubMenuOpening()&&s.deactivate()}}),s})}insertFilterGroup(e,t){const s=this.createBean(new Me({title:t,cssIdentifier:"multi-filter"}));return this.guiDestroyFuncs.push(()=>this.destroyBean(s)),s.addItem(e.getGui()),s.toggleGroupExpand(!1),e.afterGuiAttached&&s.addManagedListeners(s,{expanded:()=>e.afterGuiAttached({container:this.lastOpenedInContainer,suppressFocus:!0,hidePopup:this.hidePopup})}),s}isFilterActive(){return this.filters.some(e=>e.isFilterActive())}getLastActiveFilterIndex(){const e=this.activeFilterIndices;return e.length>0?e[e.length-1]:null}doesFilterPass(e,t){let s=!0;return this.filters.forEach(i=>{!s||i===t||!i.isFilterActive()||(s=i.doesFilterPass(e))}),s}getModelFromUi(){return{filterType:this.filterType,filterModels:this.filters.map(t=>{const s=t;return typeof s.getModelFromUi=="function"?s.getModelFromUi():null})}}getModel(){return this.isFilterActive()?{filterType:this.filterType,filterModels:this.filters.map(t=>t.isFilterActive()?t.getModel():null)}:null}setModel(e){const t=(i,r)=>new xe(a=>{const n=i.setModel(r);n?n.then(()=>a()):a()});let s=[];return e==null?s=this.filters.map((i,r)=>t(i,null).then(()=>{this.updateActiveList(r)})):this.filters.forEach((i,r)=>{const a=e.filterModels.length>r?e.filterModels[r]:null,n=t(i,a).then(()=>{this.updateActiveList(r)});s.push(n)}),xe.all(s).then(()=>{})}applyModel(e="api"){let t=!1;return this.filters.forEach(s=>{s instanceof ul&&(t=s.applyModel(e)||t)}),t}getChildFilterInstance(e){return this.filters[e]}afterGuiAttached(e){let t;e?(this.hidePopup=e.hidePopup,t=this.refreshGui(e.container)):(this.hidePopup=void 0,t=xe.resolve());const s=e?.suppressFocus;t.then(()=>{const{filterDefs:i,filters:r,filterGuis:a,beans:n}=this;let o=!!s;i&&ml(i,(c,d)=>{const h=d===0,u=c.display&&c.display!=="inline",p=s||!h||u,g={...e??{},suppressFocus:p},m=r?.[d];if(m&&(this.executeFunctionIfExistsOnFilter(m,"afterGuiAttached",g),h&&!p&&(o=!0)),!s&&h&&u){const f=a[d];f&&(QT(f)||f.focus({preventScroll:!0}),o=!0)}});const l=eF(n);!o&&(sF(n)||this.getGui().contains(l))&&this.forceFocusOutOfContainer(!0)})}afterGuiDetached(){this.executeFunctionIfExists("afterGuiDetached")}onAnyFilterChanged(){this.executeFunctionIfExists("onAnyFilterChanged")}onNewRowsLoaded(){this.executeFunctionIfExists("onNewRowsLoaded")}destroy(){this.filters.forEach(e=>this.destroyBean(e)),this.filters.length=0,this.destroyChildren(),this.hidePopup=void 0,super.destroy()}executeFunctionIfExists(e,...t){ml(this.filters,s=>{this.executeFunctionIfExistsOnFilter(s,e,t)})}executeFunctionIfExistsOnFilter(e,t,...s){const i=e[t];typeof i=="function"&&i.apply(e,s)}createFilter(e,t){const{filterModifiedCallback:s,doesRowPassOtherFilter:i}=this.params,{filterManager:r,userCompFactory:a}=this.beans;let n;const o={...r.createFilterParams(this.column,this.column.getColDef()),filterModifiedCallback:s,filterChangedCallback:d=>{this.executeWhenAllFiltersReady(()=>this.filterChanged(t,d))},doesRowPassOtherFilter:d=>i(d)&&this.doesFilterPass({node:d,data:d.data},n)},l=tF(a,e,o,"agTextColumnFilter");if(!l)return null;const c=l.newAgStackInstance();return c.then(d=>{if(d&&(n=d,e.display==="subMenu")){const h=d.getGui();rF(h,"dialog")}}),c}executeWhenAllFiltersReady(e){(this.filters?.length??0)>0?e():this.afterFiltersReadyFuncs.push(e)}updateActiveList(e){const{filters:t,activeFilterIndices:s}=this,i=t[e];iF(s,e),i.isFilterActive()&&s.push(e)}filterChanged(e,t){this.updateActiveList(e),this.filterChangedCallback(t);const s=this.filters[e];this.filters.forEach(i=>{i!==s&&typeof i.onAnyFilterChanged=="function"&&i.onAnyFilterChanged()})}onFocusIn(e){const t=this.lastActivatedMenuItem;t!=null&&!t.getGui().contains(e.target)&&(t.deactivate(),this.lastActivatedMenuItem=null)}getModelAsString(e){if(!this.filters||!e?.filterModels?.length)return"";const t=this.getLastActiveFilterIndex()??0;return this.filters[t].getModelAsString?.(e.filterModels[t])??""}};import{AgPromise as uF,Component as pF,_clearElement as gF,_error as mF,_getDefaultFloatingFilterType as fF,_getFloatingFilterCompDetails as CF,_mergeDeep as vF,_setDisplayed as Or}from"ag-grid-community";var yF={tag:"div",cls:"ag-multi-floating-filter ag-floating-filter-input"},SF=class extends pF{constructor(){super(yF),this.floatingFilters=[],this.compDetailsList=[]}init(e){this.params=e;const{compDetailsList:t}=this.getCompDetailsList(e);return this.setParams(t)}setParams(e){const t=[];return e.forEach(s=>{const i=s?.newAgStackInstance();i!=null&&(this.compDetailsList.push(s),t.push(i))}),uF.all(t).then(s=>{s.forEach((i,r)=>{this.floatingFilters.push(i);const a=i.getGui();this.appendChild(a),r>0&&Or(a,!1)})})}refresh(e){this.params=e;const{compDetailsList:t,floatingFilterParamsList:s}=this.getCompDetailsList(e);t.length===this.compDetailsList.length&&t.every((r,a)=>!this.beans.filterManager?.areFilterCompsDifferent(this.compDetailsList[a],r))?s.forEach((r,a)=>{this.floatingFilters[a].refresh?.(r)}):(gF(this.getGui()),this.destroyBeans(this.floatingFilters),this.floatingFilters=[],this.compDetailsList=[],this.setParams(t))}getCompDetailsList(e){const t=[],s=[],i=e.filterParams,r=e.currentParentModel;return gl(i).forEach((a,n)=>{const o={...e,parentFilterInstance:c=>{this.parentMultiFilterInstance(d=>{const h=d.getChildFilterInstance(n);h!=null&&c(h)})},currentParentModel:()=>r()?.filterModels?.[n]??null};vF(o.filterParams,a.filterParams);const l=this.getCompDetails(a,o);l&&(t.push(l),s.push(o))}),{compDetailsList:t,floatingFilterParamsList:s}}onParentModelChanged(e,t){t&&t.afterFloatingFilter||this.parentMultiFilterInstance(s=>{if(e==null)this.floatingFilters.forEach((i,r)=>{i.onParentModelChanged(null,t),Or(i.getGui(),r===0)});else{const i=s.getLastActiveFilterIndex();this.floatingFilters.forEach((r,a)=>{const n=e.filterModels.length>a?e.filterModels[a]:null;r.onParentModelChanged(n,t);const o=i==null?a===0:a===i;Or(r.getGui(),o)})}})}destroy(){this.destroyBeans(this.floatingFilters),this.floatingFilters.length=0,super.destroy()}getCompDetails(e,t){const{filterManager:s,frameworkOverrides:i,userCompFactory:r}=this.beans,a=fF(i,e,()=>s.getDefaultFloatingFilter(this.params.column))??"agReadOnlyFloatingFilter";return CF(r,e,t,a)}parentMultiFilterInstance(e){this.params.parentFilterInstance(t=>{t instanceof fl||mF(120),e(t)})}},Cl={moduleName:"MultiFilter",version:E,userComponents:{agMultiColumnFilter:fl,agMultiColumnFloatingFilter:SF},dependsOn:[O,qT,Bs]};import{_ColumnFilterModule as bF,_PopupModule as wF}from"ag-grid-community";import{BeanStub as xF,_exists as MF}from"ag-grid-community";var TF=class extends xF{constructor(){super(...arguments),this.beanName="aggColNameSvc"}getHeaderName(e,t){if(this.gos.get("suppressAggFuncInHeader"))return t;const{valueColsSvc:s,colModel:i,rowGroupColsSvc:r}=this.beans,a=e.getColDef().pivotValueColumn,n=MF(a);let o=null,l;if(n){const c=s?.columns??[],d=this.gos.get("removePivotHeaderRowWhenSingleValueColumn")&&c.length===1,h=e.getColDef().pivotTotalColumnIds!==void 0;if(d&&!h)return t;o=a?a.getAggFunc():null,l=!0}else{const c=e.isValueActive(),d=i.isPivotMode()||r?.columns.length!==0;c&&d?(o=e.getAggFunc(),l=!0):l=!1}if(l){const c=typeof o=="string"?o:"func";return`${this.getLocaleTextFunc()(c,c)}(${t})`}return t}};import{BeanStub as FF,_exists as vl,_last as PF}from"ag-grid-community";var AF={sum:"Sum",first:"First",last:"Last",min:"Min",max:"Max",count:"Count",avg:"Average"},RF=class extends FF{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(){const e=this.aggFuncsMap;e.sum=EF,e.first=IF,e.last=DF,e.min=LF,e.max=kF,e.count=GF,e.avg=OF,this.initialised=!0}isAggFuncPossible(e,t){const i=this.getFuncNames(e).includes(t),r=vl(this.aggFuncsMap[t]);return i&&r}getDefaultFuncLabel(e){return AF[e]??e}getDefaultAggFunc(e){const t=e.getColDef().defaultAggFunc;if(vl(t)&&this.isAggFuncPossible(e,t))return t;if(this.isAggFuncPossible(e,"sum"))return"sum";const s=this.getFuncNames(e);return s?.length?s[0]:null}addAggFuncs(e){if(this.init(),!!e)for(const t of Object.keys(e))this.aggFuncsMap[t]=e[t]}getAggFunc(e){return this.init(),this.aggFuncsMap[e]}getFuncNames(e){const t=e.getColDef().allowedAggFuncs;return t??Object.keys(this.aggFuncsMap).sort()}clear(){this.aggFuncsMap={}}};function EF(e){const{values:t}=e;let s=null;for(let i=0;i<t.length;i++){const r=t[i];typeof r=="number"?s===null?s=r:s+=typeof s=="number"?r:BigInt(r):typeof r=="bigint"&&(s===null?s=r:s=(typeof s=="bigint"?s:BigInt(s))+r)}return s}function IF(e){return e.values.length>0?e.values[0]:null}function DF(e){return e.values.length>0?PF(e.values):null}function LF(e){const{values:t}=e;let s=null;for(let i=0;i<t.length;i++){const r=t[i];(typeof r=="number"||typeof r=="bigint")&&(s===null||s>r)&&(s=r)}return s}function kF(e){const{values:t}=e;let s=null;for(let i=0;i<t.length;i++){const r=t[i];(typeof r=="number"||typeof r=="bigint")&&(s===null||s<r)&&(s=r)}return s}function GF(e){const{values:t}=e;let s=0;for(let r=0;r<t.length;r++){const a=t[r];s+=a!=null&&typeof a.value=="number"?a.value:1}const i=e.rowNode?.aggData?.[e.column.getColId()];return i&&i.value===s?i:{value:s,toString:function(){return this.value.toString()},toNumber:function(){return this.value}}}function OF(e){const{values:t}=e;let s=0,i=0;for(let n=0;n<t.length;n++){const o=t[n];let l=null;typeof o=="number"||typeof o=="bigint"?(l=o,i++):o!=null&&(typeof o.value=="number"||typeof o.value=="bigint")&&typeof o.count=="number"&&(l=o.value*(typeof o.value=="number"?o.count:BigInt(o.count)),i+=o.count),typeof l=="number"?s+=typeof s=="number"?l:BigInt(l):typeof l=="bigint"&&(s=(typeof s=="bigint"?s:BigInt(s))+l)}let r=null;i>0&&(r=s/(typeof s=="number"?i:BigInt(i)));const a=e.rowNode?.aggData?.[e.column?.getColId()];return a&&a.count===i&&a.value===r?a:{count:i,value:r,toString:function(){return typeof this.value=="number"||typeof this.value=="bigint"?this.value.toString():""},toNumber:function(){return this.value}}}function NF(e,t){e.aggFuncSvc&&e.aggFuncSvc.addAggFuncs(t)}function BF(e){e.aggFuncSvc&&e.aggFuncSvc.clear()}function _F(e,t,s){e.valueColsSvc?.setColumnAggFunc?.(t,s,"api")}import{BeanStub as VF,_getGrandTotalRow as HF,_getGroupAggFiltering as zF}from"ag-grid-community";import{_addGridCommonParams as UF,_error as KF}from"ag-grid-community";function yt(e,t,s,i,r,a){const n=typeof s=="string"?e.aggFuncSvc.getAggFunc(s):s;if(typeof n!="function")return KF(109,{aggFuncOrString:s}),null;const o=UF(e.gos,{values:t,column:i,colDef:i.colDef,pivotResultColumn:a,rowNode:r,data:r?.data});return n(o)}var WF=class extends VF{constructor(){super(...arguments),this.beanName="aggStage",this.refreshProps=new Set(["getGroupRowAgg","alwaysAggregateAtRootLevel","suppressAggFilteredOnly","grandTotalRow"]),this.step="aggregate"}wireBeans(e){this.colModel=e.colModel,this.pivotColsSvc=e.pivotColsSvc,this.valueColsSvc=e.valueColsSvc,this.pivotResultCols=e.pivotResultCols,this.valueSvc=e.valueSvc}execute(e){const t=!this.valueColsSvc?.columns?.length,s=!this.gos.getCallback("getGroupRowAgg");if(t&&s&&e.changedPath?.active)return;const i=this.createAggDetails(e);this.recursivelyCreateAggData(i)}createAggDetails(e){const t=this.colModel.isPivotActive(),s=this.valueColsSvc?.columns,i=t&&this.pivotColsSvc?this.pivotColsSvc.columns:[];return{alwaysAggregateAtRootLevel:this.gos.get("alwaysAggregateAtRootLevel"),groupIncludeTotalFooter:!!HF(this.gos),changedPath:e.changedPath,valueColumns:s??[],pivotColumns:i,filteredOnly:!this.isSuppressAggFilteredOnly(),userAggFunc:this.gos.getCallback("getGroupRowAgg")}}isSuppressAggFilteredOnly(){return zF(this.gos)!==void 0||this.gos.get("suppressAggFilteredOnly")}recursivelyCreateAggData(e){const t=s=>{if(!s.hasChildren()){s.aggData&&this.setAggData(s,null);return}if(s.level===-1&&!e.groupIncludeTotalFooter){const a=!this.colModel.isPivotMode();if(!e.alwaysAggregateAtRootLevel&&a){this.setAggData(s,null);return}}this.aggregateRowNode(s,e)};e.changedPath.forEachChangedNodeDepthFirst(t,!0)}aggregateRowNode(e,t){const s=t.valueColumns.length===0,i=t.pivotColumns.length===0;let r;t.userAggFunc?r=t.userAggFunc({nodes:e.childrenAfterFilter}):s?r=null:i?r=this.aggregateRowNodeUsingValuesOnly(e,t):r=this.aggregateRowNodeUsingValuesAndPivot(e),this.setAggData(e,r),e.sibling&&this.setAggData(e.sibling,r)}aggregateRowNodeUsingValuesAndPivot(e){const t={},s=this.pivotResultCols?.getPivotResultCols()?.list??[];let i=!0;const r=this.beans;for(let a=0;a<s.length;a++){const n=s[a],o=n.getColDef();if(o.pivotTotalColumnIds!=null){i=!1;continue}const l=o.pivotKeys??[];let c;e.leafGroup?c=this.getValuesFromMappedSet(e.childrenMapped,l,o.pivotValueColumn):c=this.getValuesPivotNonLeaf(e,o.colId),t[o.colId]=yt(r,c,o.pivotValueColumn.getAggFunc(),o.pivotValueColumn,e,n)}if(!i)for(let a=0;a<s.length;a++){const n=s[a],o=n.getColDef();if(o.pivotTotalColumnIds==null||!o.pivotTotalColumnIds.length)continue;const l=o.pivotTotalColumnIds.map(c=>t[c]);t[o.colId]=yt(r,l,o.pivotValueColumn.getAggFunc(),o.pivotValueColumn,e,n)}return t}aggregateRowNodeUsingValuesOnly(e,t){const s={},{changedPath:i,valueColumns:r,filteredOnly:a}=t,n=i.active?i.getValueColumnsForNode(e,r):r,o=i.active?i.getNotValueColumnsForNode(e,r):null,l=this.getValuesNormal(e,n,a),c=e.aggData,d=this.beans;return n.forEach((h,u)=>{s[h.getId()]=yt(d,l[u],h.getAggFunc(),h,e)}),o&&c&&o.forEach(h=>{s[h.getId()]=c[h.getId()]}),s}getValuesPivotNonLeaf(e,t){return e.childrenAfterFilter.map(s=>s.aggData[t])}getValuesFromMappedSet(e,t,s){let i=e;for(let r=0;r<t.length;r++){const a=t[r];i=i?i[a]:null}return i?i.map(r=>this.valueSvc.getValue(s,r)):[]}getValuesNormal(e,t,s){const i=[];t.forEach(()=>i.push([]));const r=t.length,a=s?e.childrenAfterFilter:e.childrenAfterGroup,n=a.length;for(let o=0;o<n;o++){const l=a[o];for(let c=0;c<r;c++){const d=t[c],h=this.valueSvc.getValue(d,l);i[c].push(h)}}return i}setAggData(e,t){const s=e.aggData;if(e.aggData=t,e.__localEventService){const i=r=>{const a=e.aggData?e.aggData[r]:void 0,n=s?s[r]:void 0;if(a===n)return;const o=this.colModel.getCol(r);o&&e.dispatchCellChangedEvent(o,a,n)};if(s)for(const r of Object.keys(s))i(r);if(t)for(const r of Object.keys(t))(!s||!(r in s))&&i(r)}}};import{BeanStub as jF,_getGroupAggFiltering as $F}from"ag-grid-community";var YF=class extends jF{constructor(){super(...arguments),this.beanName="filterAggStage",this.refreshProps=new Set([]),this.step="filter_aggregates"}wireBeans(e){this.filterManager=e.filterManager}execute(e){const t=this.beans.colModel.isPivotMode(),s=this.filterManager?.isAggregateFilterPresent()||this.filterManager?.isAggregateQuickFilterPresent(),i=c=>!c.node.group,r=c=>c.node.leafGroup,a=$F(this.gos)||(t?r:i),{changedPath:n}=e,o=(c,d=!1)=>{c.childrenAfterFilter&&(c.childrenAfterAggFilter=c.childrenAfterFilter,d&&c.childrenAfterAggFilter.forEach(h=>o(h,d)),this.setAllChildrenCount(c)),c.sibling&&(c.sibling.childrenAfterAggFilter=c.childrenAfterAggFilter)},l=c=>{c.childrenAfterAggFilter=c.childrenAfterFilter?.filter(d=>a({node:d})&&this.filterManager.doesRowPassAggregateFilters({rowNode:d})?(o(d,!0),!0):d.childrenAfterAggFilter?.length)||null,this.setAllChildrenCount(c),c.sibling&&(c.sibling.childrenAfterAggFilter=c.childrenAfterAggFilter)};n.forEachChangedNodeDepthFirst(s?l:o,!0)}setAllChildrenCountTreeData(e){const t=e.childrenAfterAggFilter;let s=0;if(t){const i=t.length;s=i;for(let r=0;r<i;++r)s+=t[r].allChildrenCount??0}e.setAllChildrenCount(s===0&&e.level>=0?null:s)}setAllChildrenCountGridGrouping(e){let t=0;e.childrenAfterAggFilter.forEach(s=>{s.group?t+=s.allChildrenCount:t++}),e.setAllChildrenCount(t)}setAllChildrenCount(e){if(!e.hasChildren()){e.setAllChildrenCount(null);return}this.gos.get("treeData")?this.setAllChildrenCountTreeData(e):this.setAllChildrenCountGridGrouping(e)}};import{BeanStub as XF,_getGrandTotalRow as qF,_getGroupTotalRowCallback as ZF}from"ag-grid-community";import{RowNode as JF}from"ag-grid-community";var QF=new Set(["__localEventService","__objectId","sticky","__autoHeights","__checkAutoHeightsDebounced"]);function Te(e,t){if(e.sibling)return;const s=new JF(t);Object.keys(e).forEach(i=>{QF.has(i)||(s[i]=e[i])}),s.footer=!0,s.setRowTop(null),s.setRowIndex(null),s.oldRowTop=null,s.id="rowGroupFooter_"+e.id,s.sibling=e,e.sibling=s}function Nr(e){e.sibling&&(e.sibling.setRowTop(null),e.sibling.setRowIndex(null),e.sibling=void 0)}var eP=class extends XF{constructor(){super(...arguments),this.beanName="footerSvc"}addTotalRows(e,t,s,i,r,a){let n=e;if(r)return(i&&qF(this.gos))===a&&(Te(t,this.beans),s(t.sibling,n++)),n;const o=ZF(this.gos);return(i&&o({node:t}))===a&&(Te(t,this.beans),s(t.sibling,n++)),n}getTopDisplayIndex(e,t,s,i){let r=t;if(e[0].footer){if(t===0)return 0;r-=1}const a=e[e.length-1],n=r>=s.length;return a.footer&&n?a.rowIndex:i(r)}getTotalValue(e){return this.getLocaleTextFunc()("footerTotal","Total")+" "+(e??"")}};import{BaseColsService as tP,_exists as sP,_removeFromArray as iP,_warn as rP}from"ag-grid-community";var yl=class extends tP{constructor(){super(...arguments),this.beanName="valueColsSvc",this.eventName="columnValueChanged",this.columnProcessors={set:(e,t,s)=>this.setValueActive(t,e,s),add:(e,t,s)=>this.setValueActive(!0,e,s),remove:(e,t,s)=>this.setValueActive(!1,e,s)},this.columnExtractors={setFlagFunc:(e,t,s)=>this.setColValueActive(e,t,s),getIndexFunc:()=>{},getInitialIndexFunc:()=>{},getValueFunc:e=>{const 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=>iP(this.columns,e)}}extractCols(e,t){return this.columns=super.extractCols(e,t),this.columns.forEach(s=>{const i=s.getColDef();i.aggFunc!=null&&i.aggFunc!=""?this.setColAggFunc(s,i.aggFunc):s.getAggFunc()||this.setColAggFunc(s,i.initialAggFunc)}),this.columns}setColumnAggFunc(e,t,s){if(!e)return;const i=this.colModel.getColDefCol(e);i&&(this.setColAggFunc(i,t),this.dispatchColumnChangedEvent(this.eventSvc,this.eventName,[i],s))}syncColumnWithState(e,t,s){const i=s("aggFunc").value1;i!==void 0&&(typeof i=="string"?(this.setColAggFunc(e,i),e.isValueActive()||(this.setColValueActive(e,!0,t),this.modifyColumnsNoEventsCallbacks.addCol(e))):(sP(i)&&rP(33),e.isValueActive()&&(this.setColValueActive(e,!1,t),this.modifyColumnsNoEventsCallbacks.removeCol(e))))}setValueActive(e,t,s){if(e!==t.isValueActive()&&(this.setColValueActive(t,e,s),e&&!t.getAggFunc()&&this.aggFuncSvc)){const i=this.aggFuncSvc.getDefaultAggFunc(t);this.setColAggFunc(t,i)}}setColAggFunc(e,t){e.aggFunc=t,e.dispatchStateUpdatedEvent("aggFunc")}setColValueActive(e,t,s){e.aggregationActive!==t&&(e.aggregationActive=t,e.dispatchColEvent("columnValueChanged",s))}},Br={moduleName:"SharedAggregation",version:E,beans:[RF,TF,eP,yl],apiFunctions:{addAggFuncs:NF,clearAggFuncs:BF,setColumnAggFunc:_F},dependsOn:[O]},_r={moduleName:"Aggregation",version:E,beans:[WF,YF],rowModels:["clientSide"],dependsOn:[Br]};import{BaseColsService as aP,_removeFromArray as nP}from"ag-grid-community";var Sl=class extends aP{constructor(){super(...arguments),this.beanName="pivotColsSvc",this.eventName="columnPivotChanged",this.columnProcessors={set:(e,t,s)=>this.setColPivotActive(e,t,s),add:(e,t,s)=>this.setColPivotActive(e,!0,s),remove:(e,t,s)=>this.setColPivotActive(e,!1,s)},this.columnOrdering={enableProp:"pivot",initialEnableProp:"initialPivot",indexProp:"pivotIndex",initialIndexProp:"initialPivotIndex"},this.columnExtractors={setFlagFunc:(e,t,s)=>this.setColPivotActive(e,t,s),getIndexFunc:e=>e.pivotIndex,getInitialIndexFunc:e=>e.initialPivotIndex,getValueFunc:e=>e.pivot,getInitialValueFunc:e=>e.initialPivot},this.modifyColumnsNoEventsCallbacks={addCol:e=>this.columns.push(e),removeCol:e=>nP(this.columns,e)}}syncColumnWithState(e,t,s,i){const{value1:r,value2:a}=s("pivot","pivotIndex");(r!==void 0||a!==void 0)&&(typeof a=="number"||r?(e.isPivotActive()||(this.setColPivotActive(e,!0,t),this.modifyColumnsNoEventsCallbacks.addCol(e)),i&&typeof a=="number"&&(i[e.getId()]=a)):e.isPivotActive()&&(this.setColPivotActive(e,!1,t),this.modifyColumnsNoEventsCallbacks.removeCol(e)))}setColPivotActive(e,t,s){e.pivotActive!==t&&(e.pivotActive=t,e.dispatchColEvent("columnPivotChanged",s)),e.dispatchStateUpdatedEvent("pivot")}};import{BaseColsService as oP,_removeFromArray as lP,_shouldUpdateColVisibilityAfterGroup as cP}from"ag-grid-community";var dP=class extends oP{constructor(){super(...arguments),this.beanName="rowGroupColsSvc",this.eventName="columnRowGroupChanged",this.columnProcessors={set:(e,t,s)=>this.setActive(t,e,s),add:(e,t,s)=>this.setActive(!0,e,s),remove:(e,t,s)=>this.setActive(!1,e,s)},this.columnOrdering={enableProp:"rowGroup",initialEnableProp:"initialRowGroup",indexProp:"rowGroupIndex",initialIndexProp:"initialRowGroupIndex"},this.columnExtractors={setFlagFunc:(e,t,s)=>this.setColRowGroupActive(e,t,s),getIndexFunc:e=>e.rowGroupIndex,getInitialIndexFunc:e=>e.initialRowGroupIndex,getValueFunc:e=>e.rowGroup,getInitialValueFunc:e=>e.initialRowGroup},this.modifyColumnsNoEventsCallbacks={addCol:e=>this.columns.push(e),removeCol:e=>lP(this.columns,e)}}moveColumn(e,t,s){if(this.columns.length===0)return;const i=this.columns[e],r=this.columns.slice(e,t);this.columns.splice(e,1),this.columns.splice(t,0,i),this.updateIndexMap(),this.eventSvc.dispatchEvent({type:this.eventName,columns:r,column:r.length===1?r[0]:null,source:s})}syncColumnWithState(e,t,s,i){const{value1:r,value2:a}=s("rowGroup","rowGroupIndex");(r!==void 0||a!==void 0)&&(typeof a=="number"||r?(e.isRowGroupActive()||(this.setColRowGroupActive(e,!0,t),this.modifyColumnsNoEventsCallbacks.addCol(e)),i&&typeof a=="number"&&(i[e.getId()]=a)):e.isRowGroupActive()&&(this.setColRowGroupActive(e,!1,t),this.modifyColumnsNoEventsCallbacks.removeCol(e)))}setActive(e,t,s){e!==t.isRowGroupActive()&&(this.setColRowGroupActive(t,e,s),cP(this.gos,e)&&this.colModel.setColsVisible([t],!e,s))}setColRowGroupActive(e,t,s){e.rowGroupActive!==t&&(e.rowGroupActive=t,e.dispatchColEvent("columnRowGroupChanged",s)),e.dispatchStateUpdatedEvent("rowGroup")}};import{AgColumn as hP,BeanStub as uP,GROUP_AUTO_COLUMN_ID as bl,_addColumnDefaultAndTypes as pP,_applyColumnState as gP,_areColIdsEqual as mP,_columnsMatch as fP,_convertColumnEventSourceType as CP,_destroyColumnTree as wl,_isColumnsSortingCoupledToGroup as vP,_isGroupMultiAutoColumn as yP,_isGroupUseEntireRow as SP,_mergeDeep as bP,_missing as Vr,_updateColsMap as wP,_warn as xP,isColumnGroupAutoCol as MP}from"ag-grid-community";var TP=class extends uP{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),wP(e))}createColumns(e,t){const s=this.beans,{colModel:i,gos:r,rowGroupColsSvc:a,colGroupSvc:n}=s,o=i.isPivotMode(),l=SP(r,o),c=o?r.get("pivotSuppressAutoColumn"):this.isSuppressAutoCol(),d=a?.columns,u=!(d&&d.length>0||r.get("treeData"))||c||l,p=()=>{this.columns&&(wl(s,this.columns.tree),this.columns=null)};if(u){p();return}const g=this.generateAutoCols(d),m=mP(g,this.columns?.list||null),f=e.treeDepth,v=(this.columns?this.columns.treeDepth:-1)==f;if(m&&v)return;p();const y=n?.findDepth(e.tree)??0,S=n?.balanceTreeForAutoCols(g,y)??[];this.columns={list:g,tree:S,treeDepth:y,map:{}},t(w=>{if(!w)return null;const F=w.filter(T=>!MP(T));return[...g,...F]})}updateColumns(e){const t=CP(e.source);this.columns?.list.forEach((s,i)=>this.updateOneAutoCol(s,i,t))}getColumn(e){return this.columns?.list.find(t=>fP(t,e))??null}getColumns(){return this.columns?.list??null}generateAutoCols(e=[]){const t=[],s=this.gos.get("treeData");let i=yP(this.gos);return s&&i&&(xP(182),i=!1),i?e.forEach((r,a)=>{t.push(this.createOneAutoCol(r,a))}):t.push(this.createOneAutoCol()),t}isSuppressAutoCol(){const e=this.gos;return e.get("groupDisplayType")==="custom"?!0:e.get("treeDataDisplayType")==="custom"}createOneAutoCol(e,t){let s;e?s=`${bl}-${e.getId()}`:s=bl;const i=this.createAutoColDef(s,e,t);i.colId=s;const r=new hP(i,null,s,!0);return this.createBean(r),r}updateOneAutoCol(e,t,s){const i=e.getColDef(),r=typeof i.showRowGroup=="string"?i.showRowGroup:void 0,a=this.beans,n=r!=null?a.colModel.getColDefCol(r):void 0,o=e.getId(),l=this.createAutoColDef(o,n??void 0,t);e.setColDef(l,null,s),gP(a,{state:[{colId:o,...l}]},s)}createAutoColDef(e,t,s){let i=this.createBaseColDef(t);const r=this.gos.get("autoGroupColumnDef");bP(i,r),i=pP(this.beans,i,e,!0),this.gos.get("treeData")||Vr(i.field)&&Vr(i.valueGetter)&&Vr(i.filterValueGetter)&&i.filter!=="agGroupColumnFilter"&&(i.filter=!1),s&&s>0&&(i.headerCheckboxSelection=!1);const a=vP(this.gos),n=i.valueGetter||i.field!=null;return a&&!n&&(i.sortIndex=void 0,i.initialSort=void 0),i}createBaseColDef(e){const t=this.gos.get("autoGroupColumnDef"),i={headerName:this.getLocaleTextFunc()("group","Group"),showRowGroup:e?.getColId()??!0};return t&&(t.cellRenderer||t.cellRendererSelector)||(i.cellRenderer="agGroupCellRenderer",this.beans.findSvc?.setupGroupCol(i)),e&&(i.headerName=this.beans.colNames.getDisplayNameForColumn(e,"header")??void 0,i.headerValueGetter=e.colDef.headerValueGetter),i}destroy(){wl(this.beans,this.columns?.tree),super.destroy()}};import{_exists as FP}from"ag-grid-community";import{BeanStub as PP,_createGlobalRowEvent as AP,_setAriaExpanded as RP}from"ag-grid-community";var xl=class extends PP{addExpandedCss(e,t){t.isExpandable()&&(e.push("ag-row-group"),e.push(t.expanded?"ag-row-group-expanded":"ag-row-group-contracted"))}getRowExpandedListeners(e){const{rowNode:t}=e,s=this.updateExpandedCss.bind(this,e,t);return{expandedChanged:s,hasChildrenChanged:s}}setExpanded(e,t,s,i){if(e.expanded===t)return;e.expanded=t,e.dispatchRowEvent("expandedChanged");const r={...AP(e,this.gos,"rowGroupOpened"),expanded:t,event:s||null};this.dispatchExpandedEvent(r,i),this.beans.rowRenderer.refreshCells({rowNodes:[e]})}isExpandable(e){return e.footer?!1:this.beans.colModel.isPivotMode()?e.hasChildren()&&!e.leafGroup:e.hasChildren()||e.master}updateExpandedCss(e,t){const s=t.isExpandable(),i=t.expanded==!0;e.forEachGui(void 0,r=>{const a=r.rowComp;a.addOrRemoveCssClass("ag-row-group",s),a.addOrRemoveCssClass("ag-row-group-expanded",s&&i),a.addOrRemoveCssClass("ag-row-group-contracted",s&&!i),RP(r.element,s&&i)})}},EP=class extends xl{constructor(){super(...arguments),this.beanName="expansionSvc",this.events=[]}wireBeans(e){this.rowModel=e.rowModel}expandRows(e){const t=new Set(e);this.rowModel.forEachNode(s=>{s.id&&t.has(s.id)&&(s.expanded=!0)}),this.onGroupExpandedOrCollapsed()}expandAll(e){const{gos:t,colModel:s,eventSvc:i}=this.beans,r=this.rowModel,a=t.get("treeData"),n=s.isPivotActive(),o=c=>{c&&c.forEach(d=>{const h=()=>{d.expanded=e,o(d.childrenAfterGroup)};if(a){FP(d.childrenAfterGroup)&&h();return}if(n){!d.leafGroup&&h();return}d.group&&h()})},l=r.rootNode;l&&o(l.childrenAfterGroup),r.refreshModel({step:"map"}),i.dispatchEvent({type:"expandOrCollapseAll",source:e?"expandAll":"collapseAll"})}onGroupExpandedOrCollapsed(){this.rowModel.refreshModel({step:"map"})}dispatchExpandedEvent(e,t){this.events.push(e);const s=()=>{this.rowModel.onRowGroupOpened(),this.events.forEach(i=>this.eventSvc.dispatchEvent(i)),this.events=[]};t?s():(this.dispatchExpandedDebounced==null&&(this.dispatchExpandedDebounced=this.debounce(s)),this.dispatchExpandedDebounced())}debounce(e){const t=this.beans.animationFrameSvc;if(!t)return()=>window.setTimeout(e,0);let s=!1;return()=>{if(!t.active){window.setTimeout(e,0);return}s||(s=!0,t.addDestroyTask(()=>{s=!1,e()}))}}};import{BeanStub as IP}from"ag-grid-community";import{_getGrandTotalRow as DP,_getGroupTotalRowCallback as LP,_isGroupMultiAutoColumn as kP}from"ag-grid-community";function Ml(e){let t=e.get("groupHideParentOfSingleChild");return t||(t=e.get("groupRemoveSingleChildren"),!t&&e.get("groupRemoveLowestSingleChildren")&&(t="leafGroupsOnly")),{groupHideParentOfSingleChild:t,isGroupMultiAutoColumn:kP(e),hideOpenParents:e.get("groupHideOpenParents"),grandTotalRow:DP(e),groupTotalRow:LP(e)}}function Tl(e,t,s){return e.groupHideParentOfSingleChild===!0&&s&&t.childrenAfterGroup.length===1}function Fl(e,t,s){return e.groupHideParentOfSingleChild==="leafGroupsOnly"&&s&&t.leafGroup&&t.childrenAfterGroup.length===1}function Pl(e,t,s,i,r,a){const n=i&&!s,o=i&&t.leafGroup,l=e.hideOpenParents&&t.expanded&&!t.master&&!o;return!n&&!l&&!r&&!a}var GP=class extends IP{constructor(){super(...arguments),this.beanName="flattenStage",this.refreshProps=new Set(["groupHideParentOfSingleChild","groupRemoveSingleChildren","groupRemoveLowestSingleChildren","groupTotalRow","masterDetail"]),this.step="map"}execute(e){const t=e.rowNode,s=[],i=this.beans.colModel.isPivotMode(),r=i&&t.leafGroup&&t.aggData,a=r?[t]:t.childrenAfterSort,n=Ml(this.gos);this.recursivelyAddToRowsToDisplay(n,a,s,i,0);const o=s.length>0;if(!r&&o&&n.grandTotalRow){Te(t,this.beans);const c=n.grandTotalRow==="top";this.addRowNodeToRowsToDisplay(n,t.sibling,s,0,c)}return s}recursivelyAddToRowsToDisplay(e,t,s,i,r){if(t?.length)for(let a=0;a<t.length;a++){const n=t[a],o=n.hasChildren(),l=Tl(e,n,o),c=Fl(e,n,o);if(Pl(e,n,o,i,l,c)&&this.addRowNodeToRowsToDisplay(e,n,s,r),!(i&&n.leafGroup))if(o){const h=l||c;if(n.expanded||h){const u=e.groupTotalRow({node:n});u||Nr(n);const p=h?r:r+1;u==="top"&&(Te(n,this.beans),this.addRowNodeToRowsToDisplay(e,n.sibling,s,p)),this.recursivelyAddToRowsToDisplay(e,n.childrenAfterSort,s,i,p),u==="bottom"&&(Te(n,this.beans),this.addRowNodeToRowsToDisplay(e,n.sibling,s,p))}}else{const h=this.beans.masterDetailSvc?.getDetail(n);h&&this.addRowNodeToRowsToDisplay(e,h,s,r)}}}addRowNodeToRowsToDisplay(e,t,s,i,r){r?s.unshift(t):s.push(t),t.setUiLevel(e.isGroupMultiAutoColumn?0:i)}};import{BeanStub as OP,_getGroupingApproach as NP}from"ag-grid-community";var BP=class extends OP{constructor(){super(...arguments),this.beanName="groupStage",this.refreshProps=new Set(["groupDefaultExpanded","groupAllowUnbalanced","initialGroupOrderComparator","groupHideOpenParents","groupDisplayType","treeData","treeDataChildrenField","treeDataParentIdField"]),this.step="group",this.approach=null,this.strategy=void 0}destroy(){super.destroy(),this.strategy=void 0,this.approach=null}createStrategy(){const{beans:e,approach:t}=this;let s;switch(t){case"treeSelfRef":s="treeParentIdStrategy";break;case"group":s="groupStrategy";break}if(s){const i=e.registry.createDynamicBean(s,!1);return this.createOptionalManagedBean(i),i}}execute(e){let t=this.strategy;const s=NP(this.gos);return this.approach!==s&&(this.approach=s,this.destroyBean(t),t&&this.approach!=="treeNested"&&this.approach!=="treePath"&&_P(e.rowNode),t=this.createStrategy(),this.strategy=t),t?.execute(e),!!t}},_P=e=>{const t=e.allLeafChildren,s=e.sibling;e.treeNodeFlags=0,e.childrenAfterGroup=t,e.childrenMapped=null,e.groupData=null,s&&(s.childrenAfterGroup=e.childrenAfterGroup,s.childrenAfterAggFilter=e.childrenAfterAggFilter,s.childrenAfterFilter=e.childrenAfterFilter,s.childrenAfterSort=e.childrenAfterSort,s.childrenMapped=null,s.groupData=null);for(const i of t){const r=i.sibling;Al(i),r&&Al(r),i.parent=e,i.level=0,i.key=null,i.treeNodeFlags=0,(i.group||i.hasChildren())&&(i.group=!1,i.updateHasChildren())}e.updateHasChildren()},Al=e=>{e.allLeafChildren=null,e.childrenAfterGroup=null,e.childrenAfterAggFilter=null,e.childrenAfterFilter=null,e.childrenAfterSort=null,e.childrenMapped=null,e.groupData&&(e.groupData=null)};import{Component as VP,RefPlaceholder as Jt,_setAriaRole as HP,_setDisplayed as Rl}from"ag-grid-community";import{BeanStub as zP,KeyCode as UP,_createIconNoSpan as KP,_getCellRendererDetails as El,_getCheckboxLocation as WP,_getCheckboxes as jP,_getInnerCellRendererDetails as js,_isElementInEventPath as Il,_isRowSelection as $P,_isStopPropagationForAgGrid as Dl,_removeAriaExpanded as YP,_setAriaExpanded as XP,_stopPropagationForAgGrid as qP,_warn as ZP}from"ag-grid-community";import{_getLocaleTextFunc as JP}from"ag-grid-community";function Hr(e,t,s){let i=e;const r=i.level-t.level;if(r<=0||!s.get("groupHideOpenParents"))return!1;for(let n=0;n<r;n++){if(!(i.parent?.childrenAfterSort?.[0]===i))return!1;i=i.parent}return i===t}function $s(e,t,s,i){const r=s.key==="",a=!!s.rowGroupColumn&&(!e||e?.isRowGroupDisplayed(s.rowGroupColumn.getId()));if(r&&a){const n=Hr(t,s,i.gos);if(s===t||n)return JP(i.localeSvc)("blanks","(Blanks)")}return null}var Ll=class extends zP{constructor(){super(...arguments),this.indentClass=null}init(e,t,s,i,r,a,n){this.params=n,this.eGui=t,this.eCheckbox=s,this.eExpanded=i,this.eContracted=r,this.comp=e,this.compClass=a;const{node:o,column:l}=n;if(this.node=o,this.displayedNode=o,!this.isEmbeddedRowMismatch()){if(o.footer){this.initFooterCell();return}if(!l){this.initFullWidthCell();return}this.displayedNode=this.beans.valueSvc.getDisplayedNode(o,l)??this.node,this.setupExpand(),this.setupCheckbox(),this.addGroupValue(),this.setupIndent()}}initFooterCell(){const{node:e,column:t}=this.params,s=e.level===-1;!(e.rowGroupColumn&&t&&t.isRowGroupDisplayed(e.rowGroupColumn.getId()))&&!s||(this.addFooterValue(),this.setupIndent(),s||this.comp.addOrRemoveCssClass("ag-row-group-leaf-indent",!0))}initFullWidthCell(){const e=()=>{const{rowDragSvc:t}=this.beans;if(!this.params.rowDrag||!t)return;const s=t.createRowDragComp(()=>this.params.value,this.params.node);this.createManagedBean(s),this.eGui.insertAdjacentElement("afterbegin",s.getGui())};this.setupExpand(),e(),this.setupCheckbox(),this.addGroupValue(),this.setupIndent()}getCellAriaRole(){const 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;const{visibleCols:e}=this.beans,t=this.params.pinned==="left",s=this.params.pinned==="right",i=!t&&!s;return this.gos.get("enableRtl")?e.isPinningLeft()?!s:!i:e.isPinningLeft()?!t:!i}addGroupValue(){const{params:{column:e,value:t},node:s,displayedNode:i,beans:r}=this,a=this.getFormattedValue()??$s(e,s,i,r),n=this.getInnerCompDetails(a);this.comp.setInnerRenderer(n,a??t??null)}getFormattedValue(){const{valueSvc:e}=this.beans,{value:t,valueFormatted:s,column:i}=this.params,{rowGroupColumn:r}=this.displayedNode;return!r||!i?s:i?.isRowGroupDisplayed(r.getId())?e.formatValue(r,this.node,t):null}addFooterValue(){const{expressionSvc:e,footerSvc:t}=this.beans,{totalValueGetter:s,column:i,node:r,value:a}=this.params,n=this.getFormattedValue()??$s(i,r,r,this.beans);let o="";s?typeof s=="function"?o=s({...this.params,valueFormatted:n}):typeof s=="string"?o=e?.evaluate(s,{...this.params,valueFormatted:n}):ZP(179):o=t?.getTotalValue(n??a);const l=this.getInnerCompDetails(n);this.comp.setInnerRenderer(l,o??"")}setupExpand(){const{colModel:e}=this.beans,{eGridCell:t,column:s,suppressDoubleClickExpand:i}=this.params,r=(c,d)=>{const h=KP(c,this.beans,null);h&&(d.appendChild(h),this.addDestroyFunc(()=>d.removeChild(h)))};r("groupExpanded",this.eExpanded),r("groupContracted",this.eContracted);const a=this.comp,n=()=>{if(!this.isExpandable())return;const d=this.displayedNode.expanded;a.setExpandedDisplayed(d),a.setContractedDisplayed(!d),XP(t,!!this.displayedNode.expanded)},o=()=>{const c=this.isExpandable();a.addOrRemoveCssClass("ag-cell-expandable",c),a.addOrRemoveCssClass("ag-row-group",c);const d=!c&&e.isPivotMode();a.addOrRemoveCssClass("ag-pivot-leaf-group",d);const h=!e.isPivotMode()&&(!this.displayedNode.footer||this.displayedNode.level!==-1);a.addOrRemoveCssClass("ag-row-group-leaf-indent",!c&&h);const u=this.getChildCount(),p=u>0?`(${u})`:"";a.setChildCount(p),c?n():(a.setExpandedDisplayed(!1),a.setContractedDisplayed(!1),YP(t))};(()=>{!(s?.isCellEditable(this.displayedNode)&&this.gos.get("enableGroupEdit"))&&!i&&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:o,masterChanged:o,groupChanged:o,hasChildrenChanged:o,expandedChanged:n})})(),o()}getInnerCompDetails(e){const{userCompFactory:t,findSvc:s}=this.beans,i={...this.params,valueFormatted:e};if(i.fullWidth){const c=this.gos.get("groupRowRendererParams"),d=js(t,c,i);return d||(s?.isMatch(i.node,null)?js(t,{...c,innerRenderer:"agFindCellRenderer"},i):void 0)}const r=c=>c&&c.componentClass==this.compClass,a=js(t,i,i);if(a&&!r(a))return a;const{displayedNode:{rowGroupColumn:n}}=this,o=n?.colDef,l=n&&i.column?.isRowGroupDisplayed(n.getId());if(o&&l){const c=El(t,o,i);if(c)if(r(c)){if(o?.cellRendererParams?.innerRenderer)return js(t,o.cellRendererParams,i)}else return c}if(s?.isMatch(i.node,i.column))return El(t,{...o??i.colDef,cellRenderer:"agFindCellRenderer"},i)}getChildCount(){const{column:e,suppressCount:t}=this.params;if(t)return 0;const{allChildrenCount:s,rowGroupColumn:i}=this.displayedNode;return!((s??0)>0&&(!i||!e||e?.isRowGroupDisplayed(i.getId())))||this.gos.get("showOpenedGroup")&&this.displayedNode!==this.node&&!Hr(this.node,this.displayedNode,this.gos)?0:s??0}isExpandable(){const{node:e,column:t,colDef:s}=this.params;if(!this.displayedNode.isExpandable())return!1;if(!t)return!0;if(e.hasChildren()&&s){const{showRowGroup:a}=s;if(!a)return!1;if(a===!0)return!0}return e===this.displayedNode?e.rowGroupColumn&&t?.isRowGroupDisplayed(e.rowGroupColumn.getId())?!0:e.master?s?.showRowGroup===!0||s?.showRowGroup==null:!1:Hr(this.node,this.displayedNode,this.gos)}setupIndent(){const{suppressPadding:e,node:t,colDef:s}=this.params;if(e)return;const i=()=>{let r=0;s&&s.showRowGroup!==!0?r=0:r=t.uiLevel;const a="ag-row-group-indent-"+r;a!==this.indentClass&&(this.indentClass&&this.comp.addOrRemoveCssClass(this.indentClass,!1),this.indentClass=a,this.comp.addOrRemoveCssClass(a,!0),this.eGui.style.setProperty("--ag-indentation-level",String(r)))};this.addManagedListeners(t,{uiLevelChanged:i.bind(this)}),i()}setupCheckbox(){const{node:e}=this.params;!e.footer&&!e.rowPinned&&!e.detail&&(this.addManagedPropertyListener("rowSelection",({currentValue:s,previousValue:i})=>{const r=typeof s=="object"?s:void 0,a=typeof i=="object"?i:void 0;r?.checkboxLocation!==a?.checkboxLocation&&(this.destroyCheckbox(),this.addCheckbox())}),this.addCheckbox())}addCheckbox(){const{selectionSvc:e}=this.beans;if(!e||!$P(this.gos))return;const{node:t,column:s}=this.params,i=this.gos.get("rowSelection"),r=WP(i);if(r==="selectionColumn")return;if(r==="autoGroupColumn"){const c=s?.getColDef().showRowGroup!=null,d=!s&&t.group;if(!(c||d))return}const a=typeof i=="object"?jP(i):this.params.checkbox;if(!(typeof a=="function"||a===!0))return;if(typeof s?.getColDef().showRowGroup=="string"&&!this.isExpandable()){this.comp.setCheckboxSpacing(!0);return}const l=e.createCheckboxSelectionComponent();this.cbComp=l,this.createBean(l),l.init({rowNode:t,column:s,overrides:{isVisible:a,callbackParams:this.params,removeHidden:!0}}),this.eCheckbox.appendChild(l.getGui()),this.comp.setCheckboxVisible(!0)}destroyCheckbox(){this.comp.setCheckboxSpacing(!1),this.comp.setCheckboxVisible(!1),this.cbComp&&this.eCheckbox.removeChild(this.cbComp.getGui()),this.cbComp=this.destroyBean(this.cbComp)}onExpandClicked(e){Dl(e)||(qP(e),this.onExpandOrContract(e))}onKeyDown(e){!(e.key===UP.ENTER)||this.params.suppressEnterExpand||this.params.column&&this.params.column.isCellEditable(this.params.node)||this.onExpandOrContract(e)}onCellDblClicked(e){if(Dl(e))return;Il(this.eExpanded,e)||Il(this.eContracted,e)||this.onExpandOrContract(e)}onExpandOrContract(e){if(!this.isExpandable())return;const t=this.displayedNode,s=!t.expanded;!s&&t.sticky&&this.beans.ctrlsSvc.getScrollFeature().setVerticalScrollPosition(t.rowTop-t.stickyRowTop),t.setExpanded(s,e)}destroy(){super.destroy(),this.destroyCheckbox()}},QP={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"}]},kl=class extends VP{constructor(){super(QP),this.eExpanded=Jt,this.eContracted=Jt,this.eCheckbox=Jt,this.eValue=Jt,this.eChildCount=Jt}init(e){const t={setInnerRenderer:(a,n)=>this.setRenderDetails(a,n),setChildCount:a=>this.eChildCount.textContent=a,addOrRemoveCssClass:(a,n)=>this.addOrRemoveCssClass(a,n),setContractedDisplayed:a=>Rl(this.eContracted,a),setExpandedDisplayed:a=>Rl(this.eExpanded,a),setCheckboxVisible:a=>this.eCheckbox.classList.toggle("ag-invisible",!a),setCheckboxSpacing:a=>this.eCheckbox.classList.toggle("ag-group-checkbox-spacing",a)},s=this.createManagedBean(new Ll),i=!e.colDef,r=this.getGui();s.init(t,r,this.eCheckbox,this.eExpanded,this.eContracted,this.constructor,e),i&&HP(r,s.getCellAriaRole())}setRenderDetails(e,t){e?e.newAgStackInstance().then(s=>{if(!s)return;const i=()=>this.destroyBean(s);this.isAlive()?(this.eValue.appendChild(s.getGui()),this.addDestroyFunc(i)):i()}):this.eValue.innerText=t}destroy(){this.destroyBean(this.innerCellRenderer),super.destroy()}refresh(){return!1}},eA=".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)}";import{BeanStub as tA}from"ag-grid-community";var sA=class extends tA{constructor(){super(...arguments),this.beanName="showRowGroupCols"}refresh(){this.showRowGroupCols=[],this.showRowGroupColsMap={};const{colModel:e,rowGroupColsSvc:t}=this.beans;e.getCols().forEach(s=>{const r=s.getColDef().showRowGroup,a=typeof r=="string";!a&&!(r===!0)||(this.showRowGroupCols.push(s),a?this.showRowGroupColsMap[r]=s:t&&t.columns.forEach(o=>{this.showRowGroupColsMap[o.getId()]=s}))})}getShowRowGroupCols(){return this.showRowGroupCols}getShowRowGroupCol(e){return this.showRowGroupColsMap[e]}getSourceColumnsForGroupColumn(e){const t=e.getColDef().showRowGroup;if(!t)return null;const{rowGroupColsSvc:s,colModel:i}=this.beans;if(t===!0&&s)return s.columns.slice(0);const r=i.getColDefCol(t);return r?[r]:null}isRowGroupDisplayed(e,t){const{colDef:s}=e;if(s?.showRowGroup==null)return!1;const i=s.showRowGroup===!0,r=s.showRowGroup===t;return i||r}};import{BeanStub as iA,_isClientSideRowModel as rA,_isGroupRowsSticky as aA,_isServerSideRowModel as nA}from"ag-grid-community";import{BeanStub as oA,_getRowHeightForNode as lA,_isClientSideRowModel as cA,_isGroupRowsSticky as dA,_last as hA}from"ag-grid-community";var uA=class extends oA{constructor(e,t){super(),this.createRowCon=e,this.destroyRowCtrls=t,this.stickyTopRowCtrls=[],this.stickyBottomRowCtrls=[],this.extraTopHeight=0,this.extraBottomHeight=0}postConstruct(){this.isClientSide=cA(this.gos),this.beans.ctrlsSvc.whenReady(this,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?gA(e):pA(e)}getFirstPixelOfGroup(e){return e.footer?e.sibling.rowTop+e.sibling.rowHeight-1:e.hasChildren()?e.rowTop-1:0}updateStickyRows(e){const t=e==="top";let s=0;if(!this.canRowsBeSticky())return this.refreshNodesAndContainerHeight(e,new Set,s);const{rowModel:i,rowRenderer:r}=this.beans,a=t?r.firstVisibleVPixel-this.extraTopHeight:r.lastVisibleVPixel-this.extraTopHeight,n=new Set,o=h=>{if(n.add(h),t){const u=this.getLastPixelOfGroup(h),p=a+s+h.rowHeight;u<p?h.stickyRowTop=s+(u-p):h.stickyRowTop=s}else{const u=this.getFirstPixelOfGroup(h),p=a-(s+h.rowHeight);u>p?h.stickyRowTop=s-(u-p):h.stickyRowTop=s}s=0,n.forEach(u=>{const p=u.stickyRowTop+u.rowHeight;s<p&&(s=p)})},l=this.areFooterRowsStickySuppressed(),c=this.gos.get("suppressGroupRowsSticky"),d=h=>{if(!h.displayed)return!1;if(h.footer){if(l===!0||l==="grand"&&h.level===-1||l==="group"&&h.level>-1)return!1;const u=h.sibling.rowIndex?h.sibling.rowIndex+1===h.rowIndex:!1;return e==="bottom"&&u?!1:!n.has(h)}return h.isExpandable()?c===!0||e==="bottom"?!1:!n.has(h)&&h.expanded:!1};for(let h=0;h<100;h++){let u=a+s;t||(u=a-s);const p=i.getRowIndexAtPixel(u),g=i.getRow(p);if(g==null)break;const f=this.getStickyAncestors(g).find(v=>(t?v.rowIndex<p:v.rowIndex>p)&&d(v));if(f){o(f);continue}if((t?g.rowTop<u:g.rowTop+g.rowHeight>u)&&d(g)){o(g);continue}break}return t||n.forEach(h=>{h.stickyRowTop=s-(h.stickyRowTop+h.rowHeight)}),this.refreshNodesAndContainerHeight(e,n,s)}areFooterRowsStickySuppressed(){const e=this.gos.get("suppressStickyTotalRow");if(e===!0)return!0;const t=e==="group",s=e==="grand";return t&&s?!0:s?"grand":t?"group":!1}canRowsBeSticky(){const e=dA(this.gos),t=this.areFooterRowsStickySuppressed(),s=this.gos.get("suppressGroupRowsSticky");return e&&(!t||!s)}getStickyAncestors(e){const t=[];let s=e.footer?e.sibling:e.parent;for(;s;)s.sibling&&t.push(s.sibling),t.push(s),s=s.parent;return t.reverse()}checkStickyRows(){const 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){const t=new Set;if(this.stickyTopRowCtrls.some(s=>s.rowNode===e)){for(let s=0;s<this.stickyTopRowCtrls.length;s++){const i=this.stickyTopRowCtrls[s].rowNode;i!==e&&t.add(i)}this.refreshNodesAndContainerHeight("top",t,this.topContainerHeight)&&this.checkStickyRows();return}for(let s=0;s<this.stickyBottomRowCtrls.length;s++){const i=this.stickyBottomRowCtrls[s].rowNode;i!==e&&t.add(i)}this.refreshNodesAndContainerHeight("bottom",t,this.bottomContainerHeight)&&this.checkStickyRows()}refreshNodesAndContainerHeight(e,t,s){const i=e==="top",r=i?this.stickyTopRowCtrls:this.stickyBottomRowCtrls,a={},n=[];for(let p=0;p<r.length;p++){const g=r[p].rowNode;if(!t.has(g)){a[g.id]=r[p],g.sticky=!1;continue}n.push(r[p])}const o=new Set;for(let p=0;p<n.length;p++)o.add(n[p].rowNode);const l=[];t.forEach(p=>{o.has(p)||(p.sticky=!0,l.push(this.createRowCon(p,!1,!1)))});let c=!!l.length||n.length!==r.length;i?this.topContainerHeight!==s&&(this.topContainerHeight=s,this.gridBodyCtrl.setStickyTopHeight(s),c=!0):this.bottomContainerHeight!==s&&(this.bottomContainerHeight=s,this.gridBodyCtrl.setStickyBottomHeight(s),c=!0),this.destroyRowCtrls(a,!1);const d=[...n,...l];d.sort((p,g)=>g.rowNode.rowIndex-p.rowNode.rowIndex),i||d.reverse(),d.forEach(p=>p.setRowTop(p.rowNode.stickyRowTop));const h=this.beans.pageBounds;let u=0;return i?(t.forEach(p=>{p.rowIndex<h.getFirstRow()&&(u+=p.rowHeight)}),u>this.topContainerHeight&&(u=this.topContainerHeight),this.setOffsetTop(u)):(t.forEach(p=>{p.rowIndex>h.getLastRow()&&(u+=p.rowHeight)}),u>this.bottomContainerHeight&&(u=this.bottomContainerHeight),this.setOffsetBottom(u)),c?(i?this.stickyTopRowCtrls=d:this.stickyBottomRowCtrls=d,!0):!1}ensureRowHeightsValid(){let e=!1;const t=s=>{const i=s.rowNode;if(i.rowHeightEstimated){const r=lA(this.beans,i);i.setRowHeight(r.height),e=!0}};return this.stickyTopRowCtrls.forEach(t),this.stickyBottomRowCtrls.forEach(t),e}};function pA(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 s=e.childStore?.getStoreBounds();return e.footer&&(s=e.sibling.childStore?.getStoreBounds()),(s?.heightPx??0)+(s?.topPx??0)}return e.footer?e.rowTop+e.rowHeight:e.sibling.rowTop+e.sibling.rowHeight}return Number.MAX_SAFE_INTEGER}function gA(e){if(e.isExpandable()||e.footer){if(e.footer&&e.rowIndex===0)return Number.MAX_SAFE_INTEGER;if(!e.sibling||Math.abs(e.sibling.rowIndex-e.rowIndex)===1){let i=e.footer?e.sibling:e;for(;i.isExpandable()&&i.expanded;)if(i.master&&i.detailNode)i=i.detailNode;else if(i.childrenAfterSort){if(i.childrenAfterSort.length===0)break;i=hA(i.childrenAfterSort)}return i.rowTop+i.rowHeight}return e.footer?e.rowTop+e.rowHeight:e.sibling.rowTop+e.sibling.rowHeight}return Number.MAX_SAFE_INTEGER}var mA=class extends iA{constructor(){super(...arguments),this.beanName="stickyRowSvc"}createStickyRowFeature(e,t,s){const i=this.gos;if(aA(i)&&rA(i)||nA(i))return e.createManagedBean(new uA(t,s))}},Gl={moduleName:"GroupCellRenderer",version:E,userComponents:{agGroupRowRenderer:kl,agGroupCellRenderer:kl},dynamicBeans:{groupCellRendererCtrl:Ll},icons:{groupContracted:"tree-closed",groupExpanded:"tree-open"},css:[eA],dependsOn:[O]},Ol={moduleName:"GroupColumn",version:E,beans:[TP,sA,dP,Sl,yl],dependsOn:[O,Gl]},Ys={moduleName:"ClientSideRowModelHierarchy",version:E,rowModels:["clientSide"],beans:[BP,GP,EP],dependsOn:[O]},zr={moduleName:"StickyRow",version:E,beans:[mA]};import{Component as fA,_createElement as CA}from"ag-grid-community";var vA=class extends fA{constructor(){super()}postConstruct(){this.setGui(this.createNorthPanel());const e=this.onRowGroupChanged.bind(this);this.addManagedEventListeners({columnRowGroupChanged:e,newColumnsLoaded:e}),this.addManagedPropertyListener("rowGroupPanelShow",e),this.addManagedPropertyListener("pivotPanelShow",()=>this.onPivotPanelShow()),this.onRowGroupChanged()}createNorthPanel(){const e=CA({tag:"div",cls:"ag-column-drop-wrapper",role:"presentation"}),t=new Eo(!0);this.rowGroupComp=this.createManagedBean(t);const s=new Ro(!0);this.pivotComp=this.createManagedBean(s),e.appendChild(t.getGui()),e.appendChild(s.getGui());const i=this.onDropPanelVisible.bind(this);return this.addManagedListeners(t,{displayChanged:i}),this.addManagedListeners(s,{displayChanged:i}),this.onDropPanelVisible(),e}onDropPanelVisible(){const{rowGroupComp:e,pivotComp:t}=this,s=e.isDisplayed()&&t.isDisplayed(),i="ag-column-drop-horizontal-half-width";e.addOrRemoveCssClass(i,s),t.addOrRemoveCssClass(i,s)}onRowGroupChanged(){const e=this.rowGroupComp;if(!e)return;const t=this.gos.get("rowGroupPanelShow");if(t==="always")e.setDisplayed(!0);else if(t==="onlyWhenGrouping"){const s=this.beans.rowGroupColsSvc?.columns?.length!==0;e.setDisplayed(s)}else e.setDisplayed(!1)}onPivotPanelShow(){const e=this.pivotComp;if(!e)return;const t=this.gos.get("pivotPanelShow");if(t==="always")e.setDisplayed(!0);else if(t==="onlyWhenPivoting"){const s=this.beans.colModel.isPivotActive();e.setDisplayed(s)}else e.setDisplayed(!1)}},yA={selector:"AG-GRID-HEADER-DROP-ZONES",component:vA};import{AgPromise as St,AgSelect as SA,FilterWrapperComp as bA,RefPlaceholder as Nl,TabGuardComp as wA,_clearElement as Ur,_createElement as xA,_setDisplayed as Kr,_warn as Qt}from"ag-grid-community";var MA={tag:"div",cls:"ag-group-filter",children:[{tag:"div",ref:"eGroupField"},{tag:"div",ref:"eUnderlyingFilter"}]},TA=class extends wA{constructor(){super(MA),this.filterType="group",this.eGroupField=Nl,this.eUnderlyingFilter=Nl}wireBeans(e){this.filterManager=e.filterManager,this.showRowGroupCols=e.showRowGroupCols}postConstruct(){this.initialiseTabGuard({})}init(e){return this.updateParams(e).then(()=>{this.addManagedEventListeners({columnRowGroupChanged:()=>this.onColumnRowGroupChanged(),filterDestroyed:t=>this.onFilterDestroyed(t)})})}refresh(e){return this.updateParams(e),!0}updateParams(e){return this.params=e,this.validateParams(),this.updateGroups()}validateParams(){const{colDef:e}=this.params;e.field&&Qt(234),e.filterValueGetter&&Qt(235),e.filterParams&&Qt(236)}updateGroups(){const e=this.updateGroupField();return this.getUnderlyingFilters(e)}getSourceColumns(){if(this.groupColumn=this.params.column,this.gos.get("treeData"))return Qt(237),[];const e=this.showRowGroupCols?.getSourceColumnsForGroupColumn(this.groupColumn);return e||(Qt(183),[])}updateGroupField(){const e=this.eGroupField;Ur(e),this.eGroupFieldSelect&&this.destroyBean(this.eGroupFieldSelect);const t=this.getSourceColumns(),s=t.filter(i=>i.isFilterAllowed());return s.length?(t.length===1?(this.selectedColumn=s[0],Kr(e,!1)):((!this.selectedColumn||!s.some(i=>i.getId()===this.selectedColumn.getId()))&&(this.selectedColumn=s[0]),this.createGroupFieldSelectElement(s),e.appendChild(this.eGroupFieldSelect.getGui()),e.appendChild(xA({tag:"div",cls:"ag-filter-separator"})),Kr(e,!0)),s):(this.selectedColumn=void 0,Kr(e,!1),null)}createGroupFieldSelectElement(e){const t=this.createManagedBean(new SA);this.eGroupFieldSelect=t;const s=this.getLocaleTextFunc();t.setLabel(s("groupFilterSelect","Select field:")),t.setLabelAlignment("top"),t.addOptions(e.map(i=>({value:i.getId(),text:this.beans.colNames.getDisplayNameForColumn(i,"groupFilter",!1)??void 0}))),t.setValue(this.selectedColumn.getId()),t.onValueChange(i=>this.updateSelectedColumn(i)),t.addCssClass("ag-group-filter-field-select-wrapper"),e.length===1&&t.setDisabled(!0)}getUnderlyingFilters(e){if(!e)return this.filterColumnPairs=void 0,this.selectedFilter=void 0,this.beans.colFilter?.setColFilterActive(this.groupColumn,!1,"columnRowGroupChanged"),St.resolve();const t=[],s=[];return e.forEach(i=>{const r=this.filterManager.getOrCreateFilterWrapper(i);r?.filterPromise&&t.push(r.filterPromise.then(a=>(a&&s.push({filter:a,column:i}),i.getId()===this.selectedColumn.getId()&&(this.selectedFilter=a??void 0),a)))}),St.all(t).then(()=>{this.filterColumnPairs=s,this.beans.colFilter?.setColFilterActive(this.groupColumn,this.isFilterActive(),"columnRowGroupChanged")})}addUnderlyingFilterElement(){if(Ur(this.eUnderlyingFilter),!this.selectedColumn)return St.resolve();const e=this.createManagedBean(new bA(this.selectedColumn,"COLUMN_MENU"));return this.filterWrapperComp=e,e.hasFilter()?(this.eUnderlyingFilter.appendChild(e.getGui()),e.getFilter()?.then(()=>{e.afterGuiAttached?.(this.afterGuiAttachedParams),!this.afterGuiAttachedParams?.suppressFocus&&this.eGroupFieldSelect&&!this.eGroupFieldSelect.isDisabled()&&this.eGroupFieldSelect.getFocusableElement().focus()})??St.resolve()):St.resolve()}updateSelectedColumn(e){if(!e)return;this.filterWrapperComp?.afterGuiDetached(),this.destroyBean(this.filterWrapperComp);const t=this.getFilterColumnPair(e);this.selectedColumn=t?.column,this.selectedFilter=t?.filter,this.dispatchLocalEvent({type:"selectedColumnChanged"}),this.addUnderlyingFilterElement()}isFilterActive(){return!!this.filterColumnPairs?.some(({filter:e})=>e.isFilterActive())}doesFilterPass(){return!0}getModel(){return null}setModel(){return St.resolve()}afterGuiAttached(e){this.afterGuiAttachedParams=e,this.addUnderlyingFilterElement()}afterGuiDetached(){Ur(this.eUnderlyingFilter),this.selectedFilter?.afterGuiDetached?.()}onColumnRowGroupChanged(){this.updateGroups().then(()=>{this.dispatchLocalEvent({type:"columnRowGroupChanged"})})}onFilterDestroyed({column:e,source:t}){if(t==="gridDestroyed")return;const s=e.getColId();this.filterColumnPairs?.some(({column:i})=>i.getColId()===s)&&setTimeout(()=>{this.isAlive()&&this.updateGroups()})}getFilterColumnPair(e){if(e)return this.filterColumnPairs?.find(({column:t})=>t.getId()===e)}getSelectedFilter(){return this.selectedFilter}getSelectedColumn(){return this.selectedColumn}isFilterAllowed(){return!!this.selectedColumn}};import{AgInputTextField as FA,AgPromise as Bl,Component as PA,RefPlaceholder as AA,_clearElement as RA}from"ag-grid-community";var EA={tag:"div",ref:"eFloatingFilter",cls:"ag-group-floating-filter ag-floating-filter-input",role:"presentation"},IA=class extends PA{constructor(){super(EA),this.eFloatingFilter=AA,this.haveAddedColumnListeners=!1}wireBeans(e){this.filterManager=e.filterManager}init(e){this.params=e;const t=this.gos.get("groupDisplayType")==="multipleColumns";return new Bl(s=>{this.params.parentFilterInstance(i=>{this.parentFilterInstance=i,t?this.setupUnderlyingFloatingFilterElement().then(()=>s()):(this.setupReadOnlyFloatingFilterElement(),s())})}).then(()=>{const s=this.onColChange.bind(this);this.addManagedListeners(this.parentFilterInstance,{selectedColumnChanged:s,columnRowGroupChanged:s})})}refresh(e){this.params=e,this.setParams()}setParams(){const e=this.beans.colNames.getDisplayNameForColumn(this.params.column,"header",!0),t=this.getLocaleTextFunc();this.eFloatingFilterText?.setInputAriaLabel(`${e} ${t("ariaFilterInput","Filter Input")}`)}setupReadOnlyFloatingFilterElement(){this.eFloatingFilterText||(this.eFloatingFilterText=this.createManagedBean(new FA),this.eFloatingFilterText.setDisabled(!0).addGuiEventListener("click",()=>this.params.showParentFilter()),this.setParams()),this.updateDisplayedValue(),this.eFloatingFilter.appendChild(this.eFloatingFilterText.getGui())}setupUnderlyingFloatingFilterElement(){this.showingUnderlyingFloatingFilter=!1,this.underlyingFloatingFilter=void 0,RA(this.eFloatingFilter);const e=this.parentFilterInstance.getSelectedColumn();if(e&&!e.isVisible()){const t=this.filterManager.getFloatingFilterCompDetails(e,this.params.showParentFilter);if(t)return this.haveAddedColumnListeners||(this.haveAddedColumnListeners=!0,this.addManagedListeners(e,{visibleChanged:this.onColumnVisibleChanged.bind(this),colDefChanged:this.onColDefChanged.bind(this)})),t.newAgStackInstance().then(s=>{this.underlyingFloatingFilter=s,this.underlyingFloatingFilter?.onParentModelChanged(this.parentFilterInstance.getSelectedFilter()?.getModel()),this.appendChild(s.getGui()),this.showingUnderlyingFloatingFilter=!0})}return this.setupReadOnlyFloatingFilterElement(),Bl.resolve()}onColumnVisibleChanged(){this.setupUnderlyingFloatingFilterElement()}onColDefChanged(e){if(!e.column)return;const t=this.filterManager.getFloatingFilterCompDetails(e.column,this.params.showParentFilter);t&&this.underlyingFloatingFilter?.refresh?.(t.params)}onParentModelChanged(e,t){this.showingUnderlyingFloatingFilter?this.underlyingFloatingFilter?.onParentModelChanged(this.parentFilterInstance.getSelectedFilter()?.getModel(),t):this.updateDisplayedValue()}updateDisplayedValue(){const{eFloatingFilterText:e,parentFilterInstance:t}=this;if(!t||!e)return;const s=t.getSelectedFilter();if(!s){e.setValue(""),e.setDisplayed(!1);return}if(e.setDisplayed(!0),s.getModelAsString){const i=s.getModel();e.setValue(i==null?"":s.getModelAsString(i))}else e.setValue("")}onColChange(){this.showingUnderlyingFloatingFilter||this.updateDisplayedValue()}};import{BeanStub as DA,RowNode as LA,_ROW_ID_PREFIX_ROW_GROUP as kA,_areEqual as Wr,_exists as _l,_removeFromArray as GA,_warn as OA}from"ag-grid-community";var jr=class{constructor(){this.allSets=new Map}removeFromChildrenAfterGroup(e,t){const s=this.getSet(e);(s.fromChildrenAfterGroup??(s.fromChildrenAfterGroup=new Set)).add(t)}isRemoveFromAllLeafChildren(e,t){return!!this.allSets.get(e)?.fromAllLeafChildren?.has(t)}preventRemoveFromAllLeafChildren(e,t){this.allSets.get(e)?.fromAllLeafChildren?.delete(t)}removeFromAllLeafChildren(e,t){const s=this.getSet(e);(s.fromAllLeafChildren??(s.fromAllLeafChildren=new Set)).add(t)}getSet(e){let t=this.allSets.get(e);return t||(t={fromChildrenAfterGroup:null,fromAllLeafChildren:null},this.allSets.set(e,t)),t}getAllParents(){return Array.from(this.allSets.keys())}flush(){const e=this.allSets;for(const t of e.keys()){const s=e.get(t);if(s){const{fromChildrenAfterGroup:i,fromAllLeafChildren:r}=s,{childrenAfterGroup:a,allLeafChildren:n}=t;a&&i&&(Vl(a,i),t.updateHasChildren()),n&&r&&Vl(n,r)}}e.clear()}};function Vl(e,t){let s=0;for(let i=0,r=e.length;i<r;++i){const a=e[i];t.has(a)||(e[s++]=a)}e.length=s}function NA(e){if(!e)return!1;const t=e.length;if(t<2)return!1;let s=!1;for(let i=1;i<t;i++)if(Hl(e[i-1],e[i])>0){s=!0;break}return s?(e.sort(Hl),!0):!1}function Hl(e,t){const s=e.sourceRowIndex,i=t.sourceRowIndex,r=s>=0,a=i>=0,n=r&&a,o=!r&&!a;return n?s-i:o?e.__objectId-t.__objectId:r?1:-1}var BA=class extends DA{wireBeans(e){this.colModel=e.colModel,this.rowGroupColsSvc=e.rowGroupColsSvc,this.valueSvc=e.valueSvc,this.selectionSvc=e.selectionSvc,this.showRowGroupCols=e.showRowGroupCols}execute(e){const t=this.createGroupingDetails(e),s=e.changedRowNodes;s?this.handleDeltaUpdate(t,s):this.shotgunResetEverything(t,!!e.afterColumnsChanged);const i=e.changedPath;this.positionLeafsAndGroups(i),this.orderGroups(t),this.selectionSvc?.updateSelectableAfterGrouping(i)}positionLeafsAndGroups(e){e.forEachChangedNodeDepthFirst(t=>{if(t.childrenAfterGroup){const s=[],i=[];let r;t.childrenAfterGroup.forEach(a=>{a.childrenAfterGroup?.length?a.key===""&&!r?r=a:i.push(a):s.push(a)}),r&&i.push(r),t.childrenAfterGroup=[...s,...i]}},!1)}createGroupingDetails(e){const{rowNode:t,changedPath:s,rowNodesOrderChanged:i}=e,r=this.rowGroupColsSvc?.columns;return{expandByDefault:this.gos.get("groupDefaultExpanded"),groupedCols:r,rootNode:t,pivotMode:this.colModel.isPivotMode(),groupedColCount:r?.length??0,rowNodesOrderChanged:!!i,changedPath:s,groupAllowUnbalanced:this.gos.get("groupAllowUnbalanced"),isGroupOpenByDefault:this.gos.getCallback("isGroupOpenByDefault"),initialGroupOrderComparator:this.gos.getCallback("initialGroupOrderComparator"),keyCreators:r?.map(n=>n.getColDef().keyCreator)??[]}}handleDeltaUpdate(e,{removals:t,updates:s,adds:i}){const r=new jr;t.size&&this.removeNodes(t,e,r);for(const o of s)this.moveNodeInWrongPath(o,e,r);const a=e.changedPath;for(const o of i)this.insertOneNode(o,e),a.active&&a.addParentNode(o.parent);const n=r.getAllParents();r.flush(),this.removeEmptyGroups(n,e),e.rowNodesOrderChanged&&this.sortChildren(e)}sortChildren(e){e.changedPath.forEachChangedNodeDepthFirst(t=>{NA(t.childrenAfterGroup)&&e.changedPath.addParentNode(t)},!1,!0)}orderGroups(e){const t=e.initialGroupOrderComparator;_l(t)&&s(e.rootNode);function s(i){_l(i.childrenAfterGroup)&&!i.leafGroup&&(i.childrenAfterGroup.sort((a,n)=>t({nodeA:a,nodeB:n})),i.childrenAfterGroup.forEach(a=>s(a)))}}getExistingPathForNode(e,t){const s=[];let i=e.parent;for(;i&&i!==t.rootNode;)s.push({key:i.key,rowGroupColumn:i.rowGroupColumn,field:i.field}),i=i.parent;return s.reverse(),s}moveNodeInWrongPath(e,t,s){t.changedPath.active&&t.changedPath.addParentNode(e.parent);const i=o=>o.key,r=this.getExistingPathForNode(e,t).map(i),a=this.getGroupInfo(e,t).map(i);Wr(r,a)||this.moveNode(e,t,s)}moveNode(e,t,s){if(this.removeNodesFromParents([e],t,s),this.insertOneNode(e,t,s),e.setData(e.data),t.changedPath.active){const i=e.parent;t.changedPath.addParentNode(i)}}removeNodes(e,t,s){if(this.removeNodesFromParents(e,t,s),t.changedPath.active)for(const i of e)t.changedPath.addParentNode(i.parent)}forEachParentGroup(e,t,s){let i=t;for(;i&&i!==e.rootNode;)s(i),i=i.parent}removeNodesFromParents(e,t,s){const i=s==null,r=s||new jr;for(const a of e)this.removeFromParent(a,r),this.forEachParentGroup(t,a.parent,n=>{r.removeFromAllLeafChildren(n,a)});i&&r.flush()}removeEmptyGroups(e,t){let s=!0;const i=r=>{const a=this.getChildrenMappedKey(r.key,r.rowGroupColumn),n=r.parent;return(n?.childrenMapped?!n.childrenMapped[a]:!0)?!1:!!r.group&&(r.childrenAfterGroup?.length??0)===0};for(;s;){s=!1;const r=new jr;e.forEach(a=>{this.forEachParentGroup(t,a,n=>{i(n)&&(s=!0,this.removeFromParent(n,r),this.selectionSvc?.setNodesSelected({nodes:[n],newValue:!1,source:"rowGroupChanged"}))})}),r.flush()}}removeFromParent(e,t){e.parent&&(t?t.removeFromChildrenAfterGroup(e.parent,e):(GA(e.parent.childrenAfterGroup,e),e.parent.updateHasChildren()));const s=this.getChildrenMappedKey(e.key,e.rowGroupColumn);e.parent?.childrenMapped&&delete e.parent.childrenMapped[s],e.setRowTop(null),e.setRowIndex(null)}addToParent(e,t){const s=this.getChildrenMappedKey(e.key,e.rowGroupColumn);t?.childrenMapped&&t.childrenMapped[s]!==e&&(t.childrenMapped[s]=e,t.childrenAfterGroup.push(e),hr(t,this.beans,!0))}areGroupColsEqual(e,t){return e==null||t==null||e.pivotMode!==t.pivotMode?!1:Wr(e.groupedCols,t.groupedCols)&&Wr(e.keyCreators,t.keyCreators)}checkAllGroupDataAfterColsChanged(e){const t=s=>{s&&s.forEach(i=>{if(!i.group)return;const a={field:i.field,key:i.key,rowGroupColumn:i.rowGroupColumn,leafNode:i.allLeafChildren?.[0]};this.setGroupData(i,a),t(i.childrenAfterGroup)})};t(e.rootNode.childrenAfterGroup)}shotgunResetEverything(e,t){if(this.noChangeInGroupingColumns(e,t))return;this.selectionSvc?.filterFromSelection?.(a=>!a.group);const{groupedCols:s}=e,i=e.rootNode;i.leafGroup=s.length===0,i.childrenAfterGroup=[],i.childrenMapped={},i.updateHasChildren();const r=i.sibling;r&&(r.childrenAfterGroup=i.childrenAfterGroup,r.childrenMapped=i.childrenMapped),this.insertNodes(i.allLeafChildren,e)}noChangeInGroupingColumns(e,t){let s=!1;const i=this.showRowGroupCols.getShowRowGroupCols(),r=i?i.map(a=>a.getId()).join("-"):"";return t&&(s=this.areGroupColsEqual(e,this.oldGroupingDetails),this.oldGroupDisplayColIds!==r&&this.checkAllGroupDataAfterColsChanged(e)),this.oldGroupingDetails=e,this.oldGroupDisplayColIds=r,s}insertNodes(e,t){e.forEach(s=>{this.insertOneNode(s,t),t.changedPath.active&&t.changedPath.addParentNode(s.parent)})}insertOneNode(e,t,s){const i=this.getGroupInfo(e,t),r=this.findParentForNode(e,i,t,s);r.group||OA(184,{parentGroupData:r.data,childNodeData:e.data}),e.parent=r,e.level=i.length,r.childrenAfterGroup.push(e),r.updateHasChildren()}findParentForNode(e,t,s,i){let r=s.rootNode;return t.forEach((a,n)=>{r=this.getOrCreateNextNode(r,a,n,s),i?.isRemoveFromAllLeafChildren(r,e)?i?.preventRemoveFromAllLeafChildren(r,e):r.allLeafChildren.push(e)}),r}getOrCreateNextNode(e,t,s,i){const r=this.getChildrenMappedKey(t.key,t.rowGroupColumn);let a=e?.childrenMapped?.[r];return a||(a=this.createGroup(t,e,s,i),this.addToParent(a,e)),a}createGroup(e,t,s,i){const r=new LA(this.beans);return r.group=!0,r.field=e.field,r.rowGroupColumn=e.rowGroupColumn,this.setGroupData(r,e),r.key=e.key,r.id=this.createGroupId(r,t,s),r.level=s,r.leafGroup=s===i.groupedColCount-1,r.allLeafChildren=[],r.setAllChildrenCount(0),r.rowGroupIndex=s,r.childrenAfterGroup=[],r.childrenMapped={},r.updateHasChildren(),r.parent=t,this.setExpandedInitialValue(i,r),r}createGroupId(e,t,s){const i=(r,a)=>{if(!r.rowGroupColumn)return null;const n=a?i(a,a.parent,0):null;return`${n==null?"":n+"-"}${r.rowGroupColumn.getColId()}-${r.key}`};return kA+i(e,t,s)}setGroupData(e,t){const s=t.rowGroupColumn;s&&t.leafNode&&(e.groupValue=this.valueSvc.getValue(s,t.leafNode)),e.groupData={},this.showRowGroupCols.getShowRowGroupCols().forEach(r=>{const a=e.rowGroupColumn;a!==null&&r.isRowGroupDisplayed(a.getId())&&(e.groupData[r.getColId()]=this.valueSvc.getValue(a,t.leafNode))})}getChildrenMappedKey(e,t){return t?t.getId()+"-"+e:e}setExpandedInitialValue(e,t){if(e.pivotMode&&t.leafGroup){t.expanded=!1;return}const s=e.isGroupOpenByDefault;if(s){const i={rowNode:t,field:t.field,key:t.key,level:t.level,rowGroupColumn:t.rowGroupColumn};t.expanded=s(i)==!0;return}if(e.expandByDefault===-1){t.expanded=!0;return}t.expanded=t.level<e.expandByDefault}getGroupInfo(e,t){const s=[];return t.groupedCols.forEach(i=>{let r=this.valueSvc.getKeyForNode(i,e),a=r!=null&&r!=="";if((t.pivotMode||!t.groupAllowUnbalanced)&&!a&&(r="",a=!0),a){const o={key:r,field:i.getColDef().field,rowGroupColumn:i,leafNode:e};s.push(o)}}),s}};function _A(e,t){e.rowGroupColsSvc?.setColumns(t,"api")}function VA(e,t){e.rowGroupColsSvc?.removeColumns(t,"api")}function HA(e,t){e.rowGroupColsSvc?.addColumns(t,"api")}function zA(e,t,s){e.rowGroupColsSvc?.moveColumn?.(t,s,"api")}function UA(e){return e.rowGroupColsSvc?.columns??[]}var zl={moduleName:"SharedRowGrouping",version:E,apiFunctions:{setRowGroupColumns:_A,removeRowGroupColumns:VA,addRowGroupColumns:HA,getRowGroupColumns:UA,moveRowGroupColumn:zA},dependsOn:[O,Br,Ol,zr]},$r={moduleName:"RowGrouping",version:E,dynamicBeans:{groupStrategy:BA},rowModels:["clientSide"],dependsOn:[zl,_r,Ys]},Ul={moduleName:"RowGroupingPanel",version:E,selectors:[yA],icons:{pivotPanel:"pivot",rowGroupPanel:"group",panelDelimiter:"small-right",panelDelimiterRtl:"small-left"},dependsOn:[O,wF]},Kl={moduleName:"GroupFilter",version:E,userComponents:{agGroupColumnFilter:TA,agGroupColumnFloatingFilter:IA},dependsOn:[O,bF]};import{BeanStub as KA,RowNode as WA,_getRowHeightAsNumber as Wl,_missing as jA,_warn as $A}from"ag-grid-community";var YA=class extends KA{constructor(){super(...arguments),this.beanName="rowModel",this.firstRow=-1,this.lastRow=-1,this.rowCount=-1,this.rowNodesByIndex={}}ensureRowHeightsValid(e,t,s,i){return!1}postConstruct(){const e=this.beans;this.rowHeight=Wl(e),this.addManagedEventListeners({viewportChanged:this.onViewportChanged.bind(this)}),this.addManagedPropertyListener("viewportDatasource",()=>this.updateDatasource()),this.addManagedPropertyListener("rowHeight",()=>{this.rowHeight=Wl(e),this.updateRowHeights()})}start(){this.updateDatasource()}isLastRowIndexKnown(){return!0}destroy(){this.destroyDatasource(),super.destroy()}destroyDatasource(){const e=this.datasource;e&&(e.destroy?.(),this.beans.rowRenderer.datasourceChanged(),this.firstRow=-1,this.lastRow=-1)}updateDatasource(){const e=this.gos.get("viewportDatasource");e&&this.setViewportDatasource(e)}getPageSize(){return this.gos.get("viewportRowModelPageSize")}getBufferSize(){return this.gos.get("viewportRowModelBufferSize")}calculateFirstRow(e){const t=this.getBufferSize(),s=this.getPageSize(),i=e-t;return i<0?0:Math.floor(i/s)*s}calculateLastRow(e){if(e===-1)return e;const t=this.getBufferSize(),s=this.getPageSize(),i=e+t,r=Math.ceil(i/s)*s,a=this.rowCount-1;return Math.min(r,a)}onViewportChanged(e){const t=this.calculateFirstRow(e.firstRow),s=this.calculateLastRow(e.lastRow);(this.firstRow!==t||this.lastRow!==s)&&(this.firstRow=t,this.lastRow=s,this.purgeRowsNotInViewport(),this.datasource?.setViewportRange(this.firstRow,this.lastRow))}purgeRowsNotInViewport(){const e=this.rowNodesByIndex;Object.keys(e).forEach(t=>{const s=parseInt(t,10);if(s<this.firstRow||s>this.lastRow){if(this.isRowFocused(s))return;delete e[s]}})}isRowFocused(e){const t=this.beans.focusSvc.getFocusCellToUseAfterRefresh();return!t||t.rowPinned!=null?!1:t.rowIndex===e}setViewportDatasource(e){this.destroyDatasource(),this.datasource=e,this.rowCount=-1,e.init?e.init({setRowCount:this.setRowCount.bind(this),setRowData:this.setRowData.bind(this),getRow:this.getRow.bind(this)}):$A(226)}getType(){return"viewport"}getRow(e){return this.rowNodesByIndex[e]||(this.rowNodesByIndex[e]=this.createBlankRowNode(e)),this.rowNodesByIndex[e]}getRowNode(e){let t;return this.forEachNode(s=>{s.id===e&&(t=s)}),t}getRowCount(){return this.rowCount===-1?0:this.rowCount}getRowIndexAtPixel(e){return this.rowHeight!==0?Math.floor(e/this.rowHeight):0}getRowBounds(e){const t=this.rowHeight;return{rowHeight:t,rowTop:t*e}}updateRowHeights(){const e=this.rowHeight;this.forEachNode(t=>{t.setRowHeight(e),t.setRowTop(e*t.rowIndex)}),this.eventSvc.dispatchEvent({type:"modelUpdated",newData:!1,newPage:!1,keepRenderedRows:!0,animate:!1})}getTopLevelRowCount(){return this.getRowCount()}getTopLevelRowDisplayedIndex(e){return e}isEmpty(){return this.rowCount>0}isRowsToRender(){return this.rowCount>0}getNodesInRangeForSelection(e,t){const s=e.rowIndex,i=t.rowIndex,r=s<this.firstRow||s>this.lastRow,a=i<this.firstRow||i>this.lastRow;if(r||a)return[];const n=[],o=s<=i?s:i,l=s<=i?i:s;for(let c=o;c<=l;c++)n.push(this.rowNodesByIndex[c]);return n}forEachNode(e){let t=0;Object.keys(this.rowNodesByIndex).forEach(s=>{const i=parseInt(s,10),r=this.rowNodesByIndex[i];e(r,t),t++})}setRowData(e){const t=this.rowNodesByIndex;for(const s of Object.keys(e)){const i=e[s],r=parseInt(s,10);if(r>=this.firstRow&&r<=this.lastRow){let a=t[r];jA(a)&&(a=this.createBlankRowNode(r),t[r]=a),a.setDataAndId(i,r.toString())}}}createBlankRowNode(e){const t=new WA(this.beans),s=this.rowHeight;return t.setRowHeight(s),t.setRowTop(s*e),t.setRowIndex(e),t}setRowCount(e,t=!1){if(e===this.rowCount)return;this.rowCount=e;const s=this.eventSvc;s.dispatchEventOnce({type:"rowCountReady"}),s.dispatchEvent({type:"modelUpdated",newData:!1,newPage:!1,keepRenderedRows:t,animate:!1})}isRowPresent(e){return!!this.getRowNode(e.id)}},jl={moduleName:"ViewportRowModel",version:E,rowModels:["viewport"],beans:[YA],dependsOn:[O]};import{CsvExportModule as XA,HighlightChangesModule as qA,_KeyboardNavigationModule as ZA}from"ag-grid-community";function JA(e,t){e.clipboardSvc?.copyToClipboard(t)}function QA(e,t){e.clipboardSvc?.cutToClipboard(t)}function eR(e,t){e.clipboardSvc?.copySelectedRowsToClipboard(t)}function tR(e,t){e.clipboardSvc?.copySelectedRangeToClipboard(t)}function sR(e){e.clipboardSvc?.copyRangeDown()}function iR(e){e.clipboardSvc?.pasteFromClipboard()}import{BeanStub as rR,ChangedPath as aR,_createCellId as bt,_exists as nR,_getActiveDomElement as oR,_getDocument as $l,_getRowBelow as Yr,_getRowNode as Xr,_isClientSideRowModel as lR,_isSameRow as Yl,_last as cR,_removeFromArray as dR,_warn as Xs}from"ag-grid-community";var qr="paste",Zr="dragCopy",Xl="clipboard";function hR(e,t=","){const s=[],i=a=>a==="\r"||a===`
|