ag-grid-enterprise 32.2.2 → 32.3.0
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 +4630 -3860
- 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 +4629 -3859
- package/dist/package/main.cjs.js +76 -74
- package/dist/package/main.cjs.min.js +34 -34
- package/dist/package/main.esm.min.mjs +95 -95
- package/dist/package/main.esm.mjs +76 -76
- package/dist/package/package.json +23 -23
- package/dist/types/advanced-filter/version.d.ts +1 -1
- package/dist/types/charts/version.d.ts +1 -1
- package/dist/types/clipboard/version.d.ts +1 -1
- package/dist/types/column-tool-panel/version.d.ts +1 -1
- package/dist/types/enterprise-core/version.d.ts +1 -1
- package/dist/types/excel-export/excelExport/assets/excelInterfaces.d.ts +1 -1
- package/dist/types/excel-export/excelExport/files/ooxml/contentTypes.d.ts +2 -0
- package/dist/types/excel-export/version.d.ts +1 -1
- package/dist/types/filter-tool-panel/version.d.ts +1 -1
- package/dist/types/master-detail/version.d.ts +1 -1
- package/dist/types/menu/version.d.ts +1 -1
- package/dist/types/multi-filter/version.d.ts +1 -1
- package/dist/types/range-selection/version.d.ts +1 -1
- package/dist/types/rich-select/version.d.ts +1 -1
- package/dist/types/row-grouping/version.d.ts +1 -1
- package/dist/types/server-side-row-model/version.d.ts +1 -1
- package/dist/types/set-filter/version.d.ts +1 -1
- package/dist/types/side-bar/sideBar/agSideBar.d.ts +1 -1
- package/dist/types/side-bar/version.d.ts +1 -1
- package/dist/types/sparklines/version.d.ts +1 -1
- package/dist/types/status-bar/version.d.ts +1 -1
- package/dist/types/viewport-row-model/version.d.ts +1 -1
- package/package.json +23 -23
- package/styles/_css-content.scss +34 -16
- package/styles/ag-grid-no-native-widgets.css +17 -8
- package/styles/ag-grid-no-native-widgets.min.css +3 -3
- package/styles/ag-grid.css +17 -8
- package/styles/ag-grid.min.css +3 -3
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
var __defProp=Object.defineProperty,__getOwnPropDesc=Object.getOwnPropertyDescriptor,__getOwnPropNames=Object.getOwnPropertyNames,__hasOwnProp=Object.prototype.hasOwnProperty,__export=(e,t)=>{for(var s in t)__defProp(e,s,{get:t[s],enumerable:!0})},__copyProps=(e,t,s,i)=>{if(t&&typeof t=="object"||typeof t=="function")for(let r of __getOwnPropNames(t))!__hasOwnProp.call(e,r)&&r!==s&&__defProp(e,r,{get:()=>t[r],enumerable:!(i=__getOwnPropDesc(t,r))||i.enumerable});return e},__reExport=(e,t,s)=>(__copyProps(e,t,"default"),s&&__copyProps(s,t,"default")),__toCommonJS=e=>__copyProps(__defProp({},"__esModule",{value:!0}),e),main_exports={};__export(main_exports,{AdvancedFilterModule:()=>AdvancedFilterModule,AgDialog:()=>AgDialog,AgGroupComponent:()=>AgGroupComponent,AgGroupComponentSelector:()=>AgGroupComponentSelector,AgMenuItemComponent:()=>AgMenuItemComponent,AgMenuItemRenderer:()=>AgMenuItemRenderer,AgMenuList:()=>AgMenuList,AgMenuPanel:()=>AgMenuPanel,AgPanel:()=>AgPanel,AgPrimaryCols:()=>AgPrimaryCols,AgRichSelect:()=>AgRichSelect,ClipboardModule:()=>ClipboardModule,ColumnsToolPanelModule:()=>ColumnsToolPanelModule,EnterpriseCoreModule:()=>EnterpriseCoreModule,ExcelExportModule:()=>ExcelExportModule,FiltersToolPanelModule:()=>FiltersToolPanelModule,GridChartsModule:()=>GridChartsModule,GroupCellRenderer:()=>GroupCellRenderer,GroupCellRendererCtrl:()=>GroupCellRendererCtrl,LicenseManager:()=>GridLicenseManager,MasterDetailModule:()=>MasterDetailModule,MenuModule:()=>MenuModule,MultiFilter:()=>MultiFilter,MultiFilterModule:()=>MultiFilterModule,PillDragComp:()=>PillDragComp,PillDropZonePanel:()=>PillDropZonePanel,PivotDropZonePanel:()=>PivotDropZonePanel,RangeSelectionModule:()=>RangeSelectionModule,RichSelectModule:()=>RichSelectModule,RowGroupDropZonePanel:()=>RowGroupDropZonePanel,RowGroupingModule:()=>RowGroupingModule,ServerSideRowModelModule:()=>ServerSideRowModelModule,SetFilter:()=>SetFilter,SetFilterModule:()=>SetFilterModule,SideBarModule:()=>SideBarModule,SparklinesModule:()=>SparklinesModule,StatusBarModule:()=>StatusBarModule,TabbedLayout:()=>TabbedLayout,ToolPanelColDefService:()=>ToolPanelColDefService,ValuesDropZonePanel:()=>ValuesDropZonePanel,ViewportRowModelModule:()=>ViewportRowModelModule,VirtualList:()=>VirtualList,VirtualListDragFeature:()=>VirtualListDragFeature,agCharts:()=>agCharts,exportMultipleSheetsAsExcel:()=>exportMultipleSheetsAsExcel,getMultipleSheetsAsExcel:()=>getMultipleSheetsAsExcel}),module.exports=__toCommonJS(main_exports);var import_client_side_row_model=require("ag-grid-community"),import_core313=require("ag-grid-community"),import_csv_export6=require("ag-grid-community"),import_infinite_row_model=require("ag-grid-community"),import_core25=require("ag-grid-community"),import_core5=require("ag-grid-community"),import_core3=require("ag-grid-community"),import_core=require("ag-grid-community"),MD5=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,o){return this.cmn(t&s|~t&i,e,t,r,a,o)}gg(e,t,s,i,r,a,o){return this.cmn(t&i|s&~i,e,t,r,a,o)}hh(e,t,s,i,r,a,o){return this.cmn(t^s^i,e,t,r,a,o)}ii(e,t,s,i,r,a,o){return this.cmn(s^(t|~i),e,t,r,a,o)}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}},LICENSE_TYPES={"01":"GRID","02":"CHARTS","0102":"BOTH"},LICENSING_HELP_URL="https://ag-grid.com/licensing/",_LicenseManager=class _{constructor(t){this.watermarkMessage=void 0,this.totalMessageLength=124,this.document=t,this.md5=new MD5,this.md5.init()}validateLicense(){const t=this.getLicenseDetails(_.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=_.getGridReleaseDate(),a=_.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(_.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),[o,n,l]=_.extractBracketedInformation(s);return{md5:r,license:a,version:o,isTrial:n,type:l}}getLicenseDetails(t){const s=_.chartsLicenseManager?"BOTH":"GRID";if((0,import_core._missingOrEmpty)(t))return{licenseKey:t,valid:!1,missing:!0,currentLicenseType:s};const i=_.getGridReleaseDate(),{md5:r,license:a,version:o,isTrial:n,type:l}=_.extractLicenseComponents(t);let c=r===this.md5.md5(a)&&t.indexOf("For_Trialing_ag-Grid_Only")===-1,h,d,u=null,p=!1,g;function m(){h=u<new Date,d=void 0}if(c&&(u=_.extractExpiry(a),c=!isNaN(u.getTime()),c))switch(d=i>u,o){case"legacy":case"2":{n&&m();break}case"3":(0,import_core._missingOrEmpty)(l)?c=!1:(g=l,l!==LICENSE_TYPES["01"]&&l!==LICENSE_TYPES["0102"]||s==="BOTH"&&g!=="BOTH"?(c=!1,p=!0):n&&m())}return c?{licenseKey:t,valid:c,expiry:_.formatDate(u),expired:d,version:o,isTrial:n,trialExpired:h,incorrectLicenseType:p,currentLicenseType:s,suppliedLicenseType:g}:{licenseKey:t,valid:c,incorrectLicenseType:p,currentLicenseType:s,suppliedLicenseType:g}}isDisplayWatermark(){return this.isForceWatermark()||!this.isLocalhost()&&!this.isWebsiteUrl()&&!(0,import_core._missingOrEmpty)(this.watermarkMessage)}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(_.decode(_.RELEASE_INFORMATION),10))}static decode(t){const s="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";let i="",r,a,o,n,l,c,h,d=0;const u=t.replace(/[^A-Za-z0-9+/=]/g,"");for(;d<u.length;)n=s.indexOf(u.charAt(d++)),l=s.indexOf(u.charAt(d++)),c=s.indexOf(u.charAt(d++)),h=s.indexOf(u.charAt(d++)),r=n<<2|l>>4,a=(l&15)<<4|c>>2,o=(c&3)<<6|h,i=i+String.fromCharCode(r),c!=64&&(i=i+String.fromCharCode(a)),h!=64&&(i=i+String.fromCharCode(o));return i=_.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&&this.chartsLicenseManager.setLicenseKey(t,!0)}static extractBracketedInformation(t){if(!t.includes("["))return["legacy",!1,void 0];const s=t.match(/\[(.*?)\]/g).map(n=>n.replace("[","").replace("]",""));if(!s||s.length===0)return["legacy",!1,void 0];const i=s.filter(n=>n==="TRIAL").length===1,r=s.filter(n=>n.indexOf("v")===0)[0],a=r?r.replace("v",""):"legacy",o=LICENSE_TYPES[s.filter(n=>LICENSE_TYPES[n])[0]];return[a,i,o]}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 ${LICENSING_HELP_URL}.`," ","*"),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 ${LICENSING_HELP_URL}.`," ","*"),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"}};_LicenseManager.RELEASE_INFORMATION="MTcyODA1NzY1NzgzNA==";var LicenseManager=_LicenseManager,import_core2=require("ag-grid-community"),AgWatermark=class extends import_core2.Component{constructor(){super(`<div class="ag-watermark">
|
|
1
|
+
var __defProp=Object.defineProperty,__getOwnPropDesc=Object.getOwnPropertyDescriptor,__getOwnPropNames=Object.getOwnPropertyNames,__hasOwnProp=Object.prototype.hasOwnProperty,__export=(e,t)=>{for(var s in t)__defProp(e,s,{get:t[s],enumerable:!0})},__copyProps=(e,t,s,i)=>{if(t&&typeof t=="object"||typeof t=="function")for(let r of __getOwnPropNames(t))!__hasOwnProp.call(e,r)&&r!==s&&__defProp(e,r,{get:()=>t[r],enumerable:!(i=__getOwnPropDesc(t,r))||i.enumerable});return e},__reExport=(e,t,s)=>(__copyProps(e,t,"default"),s&&__copyProps(s,t,"default")),__toCommonJS=e=>__copyProps(__defProp({},"__esModule",{value:!0}),e),main_exports={};__export(main_exports,{AdvancedFilterModule:()=>AdvancedFilterModule,AgDialog:()=>AgDialog,AgGroupComponent:()=>AgGroupComponent,AgGroupComponentSelector:()=>AgGroupComponentSelector,AgMenuItemComponent:()=>AgMenuItemComponent,AgMenuItemRenderer:()=>AgMenuItemRenderer,AgMenuList:()=>AgMenuList,AgMenuPanel:()=>AgMenuPanel,AgPanel:()=>AgPanel,AgPrimaryCols:()=>AgPrimaryCols,AgRichSelect:()=>AgRichSelect,ClipboardModule:()=>ClipboardModule,ColumnsToolPanelModule:()=>ColumnsToolPanelModule,EnterpriseCoreModule:()=>EnterpriseCoreModule,ExcelExportModule:()=>ExcelExportModule,FiltersToolPanelModule:()=>FiltersToolPanelModule,GridChartsModule:()=>GridChartsModule,GroupCellRenderer:()=>GroupCellRenderer,GroupCellRendererCtrl:()=>GroupCellRendererCtrl,LicenseManager:()=>GridLicenseManager,MasterDetailModule:()=>MasterDetailModule,MenuModule:()=>MenuModule,MultiFilter:()=>MultiFilter,MultiFilterModule:()=>MultiFilterModule,PillDragComp:()=>PillDragComp,PillDropZonePanel:()=>PillDropZonePanel,PivotDropZonePanel:()=>PivotDropZonePanel,RangeSelectionModule:()=>RangeSelectionModule,RichSelectModule:()=>RichSelectModule,RowGroupDropZonePanel:()=>RowGroupDropZonePanel,RowGroupingModule:()=>RowGroupingModule,ServerSideRowModelModule:()=>ServerSideRowModelModule,SetFilter:()=>SetFilter,SetFilterModule:()=>SetFilterModule,SideBarModule:()=>SideBarModule,SparklinesModule:()=>SparklinesModule,StatusBarModule:()=>StatusBarModule,TabbedLayout:()=>TabbedLayout,ToolPanelColDefService:()=>ToolPanelColDefService,ValuesDropZonePanel:()=>ValuesDropZonePanel,ViewportRowModelModule:()=>ViewportRowModelModule,VirtualList:()=>VirtualList,VirtualListDragFeature:()=>VirtualListDragFeature,agCharts:()=>agCharts,exportMultipleSheetsAsExcel:()=>exportMultipleSheetsAsExcel,getMultipleSheetsAsExcel:()=>getMultipleSheetsAsExcel}),module.exports=__toCommonJS(main_exports);var import_client_side_row_model=require("ag-grid-community"),import_core313=require("ag-grid-community"),import_csv_export6=require("ag-grid-community"),import_infinite_row_model=require("ag-grid-community"),import_core25=require("ag-grid-community"),import_core5=require("ag-grid-community"),import_core3=require("ag-grid-community"),import_core=require("ag-grid-community"),MD5=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,o){return this.cmn(t&s|~t&i,e,t,r,a,o)}gg(e,t,s,i,r,a,o){return this.cmn(t&i|s&~i,e,t,r,a,o)}hh(e,t,s,i,r,a,o){return this.cmn(t^s^i,e,t,r,a,o)}ii(e,t,s,i,r,a,o){return this.cmn(s^(t|~i),e,t,r,a,o)}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}},LICENSE_TYPES={"01":"GRID","02":"CHARTS","0102":"BOTH"},LICENSING_HELP_URL="https://ag-grid.com/licensing/",_LicenseManager=class _{constructor(t){this.watermarkMessage=void 0,this.totalMessageLength=124,this.document=t,this.md5=new MD5,this.md5.init()}validateLicense(){const t=this.getLicenseDetails(_.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=_.getGridReleaseDate(),a=_.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(_.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),[o,n,l]=_.extractBracketedInformation(s);return{md5:r,license:a,version:o,isTrial:n,type:l}}getLicenseDetails(t){const s=_.chartsLicenseManager?"BOTH":"GRID";if((0,import_core._missingOrEmpty)(t))return{licenseKey:t,valid:!1,missing:!0,currentLicenseType:s};const i=_.getGridReleaseDate(),{md5:r,license:a,version:o,isTrial:n,type:l}=_.extractLicenseComponents(t);let c=r===this.md5.md5(a)&&t.indexOf("For_Trialing_ag-Grid_Only")===-1,h,d,u=null,p=!1,g;function m(){h=u<new Date,d=void 0}if(c&&(u=_.extractExpiry(a),c=!isNaN(u.getTime()),c))switch(d=i>u,o){case"legacy":case"2":{n&&m();break}case"3":(0,import_core._missingOrEmpty)(l)?c=!1:(g=l,l!==LICENSE_TYPES["01"]&&l!==LICENSE_TYPES["0102"]||s==="BOTH"&&g!=="BOTH"?(c=!1,p=!0):n&&m())}return c?{licenseKey:t,valid:c,expiry:_.formatDate(u),expired:d,version:o,isTrial:n,trialExpired:h,incorrectLicenseType:p,currentLicenseType:s,suppliedLicenseType:g}:{licenseKey:t,valid:c,incorrectLicenseType:p,currentLicenseType:s,suppliedLicenseType:g}}isDisplayWatermark(){return this.isForceWatermark()||!this.isLocalhost()&&!this.isWebsiteUrl()&&!(0,import_core._missingOrEmpty)(this.watermarkMessage)}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(_.decode(_.RELEASE_INFORMATION),10))}static decode(t){const s="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";let i="",r,a,o,n,l,c,h,d=0;const u=t.replace(/[^A-Za-z0-9+/=]/g,"");for(;d<u.length;)n=s.indexOf(u.charAt(d++)),l=s.indexOf(u.charAt(d++)),c=s.indexOf(u.charAt(d++)),h=s.indexOf(u.charAt(d++)),r=n<<2|l>>4,a=(l&15)<<4|c>>2,o=(c&3)<<6|h,i=i+String.fromCharCode(r),c!=64&&(i=i+String.fromCharCode(a)),h!=64&&(i=i+String.fromCharCode(o));return i=_.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&&this.chartsLicenseManager.setLicenseKey(t,!0)}static extractBracketedInformation(t){if(!t.includes("["))return["legacy",!1,void 0];const s=t.match(/\[(.*?)\]/g).map(n=>n.replace("[","").replace("]",""));if(!s||s.length===0)return["legacy",!1,void 0];const i=s.filter(n=>n==="TRIAL").length===1,r=s.filter(n=>n.indexOf("v")===0)[0],a=r?r.replace("v",""):"legacy",o=LICENSE_TYPES[s.filter(n=>LICENSE_TYPES[n])[0]];return[a,i,o]}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 ${LICENSING_HELP_URL}.`," ","*"),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 ${LICENSING_HELP_URL}.`," ","*"),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"}};_LicenseManager.RELEASE_INFORMATION="MTcyNzA3NDUwMzgwNQ==";var LicenseManager=_LicenseManager,import_core2=require("ag-grid-community"),AgWatermark=class extends import_core2.Component{constructor(){super(`<div class="ag-watermark">
|
|
2
2
|
<div data-ref="eLicenseTextRef" class="ag-watermark-text"></div>
|
|
3
|
-
</div>`),this.eLicenseTextRef=import_core2.RefPlaceholder}wireBeans(e){this.licenseManager=e.licenseManager}postConstruct(){const e=this.shouldDisplayWatermark();this.setDisplayed(e),e&&(this.eLicenseTextRef.innerText=this.licenseManager.getWatermarkMessage(),window.setTimeout(()=>this.addCssClass("ag-opacity-zero"),0),window.setTimeout(()=>this.setDisplayed(!1),5e3))}shouldDisplayWatermark(){return this.licenseManager.isDisplayWatermark()}},AgWatermarkSelector={selector:"AG-WATERMARK",component:AgWatermark},GridLicenseManager=class extends import_core3.BeanStub{constructor(){super(...arguments),this.beanName="licenseManager"}postConstruct(){this.validateLicense()}validateLicense(){this.licenseManager=new LicenseManager((0,import_core3._getDocument)(this.gos)),this.licenseManager.validateLicense()}static getLicenseDetails(e){return new LicenseManager(null).getLicenseDetails(e)}getWatermarkSelector(){return AgWatermarkSelector}isDisplayWatermark(){return this.licenseManager.isDisplayWatermark()}getWatermarkMessage(){return this.licenseManager.getWatermarkMessage()}static setLicenseKey(e){LicenseManager.setLicenseKey(e)}static setChartsLicenseManager(e){LicenseManager.setChartsLicenseManager(e)}},VERSION="32.
|
|
3
|
+
</div>`),this.eLicenseTextRef=import_core2.RefPlaceholder}wireBeans(e){this.licenseManager=e.licenseManager}postConstruct(){const e=this.shouldDisplayWatermark();this.setDisplayed(e),e&&(this.eLicenseTextRef.innerText=this.licenseManager.getWatermarkMessage(),window.setTimeout(()=>this.addCssClass("ag-opacity-zero"),0),window.setTimeout(()=>this.setDisplayed(!1),5e3))}shouldDisplayWatermark(){return this.licenseManager.isDisplayWatermark()}},AgWatermarkSelector={selector:"AG-WATERMARK",component:AgWatermark},GridLicenseManager=class extends import_core3.BeanStub{constructor(){super(...arguments),this.beanName="licenseManager"}postConstruct(){this.validateLicense()}validateLicense(){this.licenseManager=new LicenseManager((0,import_core3._getDocument)(this.gos)),this.licenseManager.validateLicense()}static getLicenseDetails(e){return new LicenseManager(null).getLicenseDetails(e)}getWatermarkSelector(){return AgWatermarkSelector}isDisplayWatermark(){return this.licenseManager.isDisplayWatermark()}getWatermarkMessage(){return this.licenseManager.getWatermarkMessage()}static setLicenseKey(e){LicenseManager.setLicenseKey(e)}static setChartsLicenseManager(e){LicenseManager.setChartsLicenseManager(e)}},VERSION="32.3.0",import_core4=require("ag-grid-community"),AgMenuItemRenderer=class extends import_core4.Component{constructor(){super(),this.setTemplate("<div></div>")}init(e){this.params=e,this.cssClassPrefix=this.params.cssClassPrefix??"ag-menu-option",this.addIcon(),this.addName(),this.addShortcut(),this.addSubMenu()}configureDefaults(){return!0}addIcon(){if(this.params.isCompact)return;const e=(0,import_core4._loadTemplate)(`<span data-ref="eIcon" class="${this.getClassName("part")} ${this.getClassName("icon")}" role="presentation"></span>`),{checked:t,icon:s}=this.params;t?e.appendChild((0,import_core4._createIconNoSpan)("check",this.gos)):s&&((0,import_core4._isNodeOrElement)(s)?e.appendChild(s):typeof s=="string"?e.innerHTML=s:(0,import_core4._warnOnce)("menu item icon must be DOM node or string")),this.getGui().appendChild(e)}addName(){const e=(0,import_core4._loadTemplate)(`<span data-ref="eName" class="${this.getClassName("part")} ${this.getClassName("text")}">${this.params.name||""}</span>`);this.getGui().appendChild(e)}addShortcut(){if(this.params.isCompact)return;const e=(0,import_core4._loadTemplate)(`<span data-ref="eShortcut" class="${this.getClassName("part")} ${this.getClassName("shortcut")}">${this.params.shortcut||""}</span>`);this.getGui().appendChild(e)}addSubMenu(){const e=(0,import_core4._loadTemplate)(`<span data-ref="ePopupPointer" class="${this.getClassName("part")} ${this.getClassName("popup-pointer")}"></span>`),t=this.getGui();if(this.params.subMenu){const s=this.gos.get("enableRtl")?"smallLeft":"smallRight";(0,import_core4._setAriaExpanded)(t,!1),e.appendChild((0,import_core4._createIconNoSpan)(s,this.gos))}t.appendChild(e)}getClassName(e){return`${this.cssClassPrefix}-${e}`}destroy(){super.destroy()}},EnterpriseCoreModule=(0,import_core5._defineModule)({version:VERSION,moduleName:import_core5.ModuleNames.EnterpriseCoreModule,beans:[GridLicenseManager],userComponents:[{name:"agMenuItem",classImp:AgMenuItemRenderer}]}),import_core6=require("ag-grid-community");function getAgGroupComponentTemplate(e){const t=e.cssIdentifier||"default",s=e.direction||"vertical";return`
|
|
4
4
|
<div class="ag-group ag-${t}-group" role="presentation">
|
|
5
5
|
<div data-ref="eToolbar" class="ag-group-toolbar ag-${t}-group-toolbar">
|
|
6
6
|
<ag-checkbox data-ref="cbGroupEnabled"></ag-checkbox>
|
|
@@ -31,7 +31,7 @@ var __defProp=Object.defineProperty,__getOwnPropDesc=Object.getOwnPropertyDescri
|
|
|
31
31
|
<span data-ref="eDeselect" class="ag-rich-select-deselect-button ag-picker-field-icon" role="presentation"></span>
|
|
32
32
|
<span data-ref="eIcon" class="ag-picker-field-icon" aria-hidden="true"></span>
|
|
33
33
|
</div>
|
|
34
|
-
</div>`,agComponents:[import_core13.AgInputTextFieldSelector],modalPicker:!1,...e,maxPickerHeight:e?.maxPickerHeight??"calc(var(--ag-row-height) * 6.5)"}),this.searchString="",this.searchStringCreator=null,this.eInput=import_core13.RefPlaceholder,this.eDeselect=import_core13.RefPlaceholder,this.skipWrapperAnnouncement=!1;const{value:t,valueList:s,searchStringCreator:i}=e||{};t!==void 0&&(this.value=t),s!=null&&(this.values=s),i&&(this.searchStringCreator=i)}wireBeans(e){super.wireBeans(e),this.userComponentFactory=e.userComponentFactory,this.ariaAnnouncementService=e.ariaAnnouncementService}postConstruct(){super.postConstruct(),this.createListComponent(),this.eDeselect.appendChild((0,import_core13._createIconNoSpan)("cancel",this.gos));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=(0,import_core13._debounce)(this.clearSearchString,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,localeService:s}=this;e.tabIndex=t.get("tabIndex");const i=s.getLocaleTextFunc();this.ariaDeleteSelection=i("ariaLabelRichSelectDeleteSelection","Press DELETE to deselect item"),this.ariaDeselectAllItems=i("ariaLabelRichSelectDeselectAllItems","Press DELETE to deselect all items"),this.ariaToggleSelection=i("ariaLabelRichSelectToggleSelection","Press SPACE to toggle selection")}createListComponent(){this.listComponent=this.createBean(new AgRichSelectList(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}=this,{allowTyping:i,cellRenderer:r,initialInputValue:a,multiSelect:o,suppressDeselectAll:n,suppressMultiSelectPillRenderer:l}=s,c=this.config.valueFormatter?this.config.valueFormatter(e):e;if(i){this.eInput.setValue(a??c);return}if(o&&!n){const u=e==null||Array.isArray(e)&&e.length===0;this.eDeselect.classList.toggle("ag-hidden",u)}let h;if(o&&!l){this.createOrUpdatePillContainer(t);return}r&&(h=this.userComponentFactory.getEditorRendererDetails(s,{value:e,valueFormatted:c,getValue:()=>this.getValue(),setValue:u=>{this.setValue(u,!0)},setTooltip:(u,p)=>{this.setTooltip({newTooltipText:u,shouldDisplayTooltip:p})}}));let d;if(h&&(d=h.newAgStackInstance()),d)(0,import_core13._clearElement)(t),(0,import_core13._bindCellRendererToHtmlElement)(d,t),d.then(u=>{this.addDestroyFunc(()=>this.destroyBean(u))});else{if((0,import_core13._exists)(this.value))t.innerText=c,t.classList.remove("ag-display-as-placeholder");else{const{placeholder:u}=s;(0,import_core13._exists)(u)?(t.innerHTML=`${(0,import_core13._escapeString)(u)}`,t.classList.add("ag-display-as-placeholder")):(0,import_core13._clearElement)(t)}this.setTooltip({newTooltipText:c??null,shouldDisplayTooltip:()=>this.eDisplayField.scrollWidth>this.eDisplayField.clientWidth})}}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.values=t,this.isPickerDisplayed&&(this.listComponent.selectValue(this.value)||this.listComponent.refresh())),this.alignPickerToComponent()))}showPicker(){super.showPicker();const{listComponent:e,value:t}=this;if(!e)return;let s=null;this.value!=null&&(e.selectValue(this.value),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 AgPillContainer);this.addDestroyFunc(()=>{this.destroyBean(this.pillContainer),this.pillContainer=null}),(0,import_core13._clearElement)(e),e.appendChild(t.getGui()),t.init({eWrapper:this.eWrapper,onPillMouseDown:s=>{s.stopImmediatePropagation()},announceItemFocus:()=>{this.announceAriaValue(this.ariaDeleteSelection)},getValue:()=>this.getValue(),setValue:s=>this.setValue(s,!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===import_core13.KeyCode.BACKSPACE)this.searchString=this.searchString.slice(0,-1),t="";else if(!(0,import_core13._isEventFromPrintableCharacter)(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()}buildSearchStrings(e){const{valueFormatter:t=i=>i}=this.config;let s;return typeof e[0]=="number"||typeof e[0]=="string"?s=e.map(i=>t(i)):typeof e[0]=="object"&&this.searchStringCreator&&(s=this.searchStringCreator(e)),s}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.buildSearchStrings(e);if(!t){this.listComponent.highlightIndex(-1);return}const{suggestions:s,filteredValues:i}=this.getSuggestionsAndFilteredValues(this.searchString,t),{filterList:r,highlightMatch:a,searchType:o="fuzzy"}=this.config,n=i.length,l=!!(r&&this.searchString!=="");if(this.filterListModel(l?i:e),s.length){const c=l?0:t.indexOf(s[0]);this.listComponent?.highlightIndex(c)}else if(this.listComponent?.highlightIndex(-1),!l||n)this.listComponent?.ensureIndexVisible(0);else if(l){this.getAriaElement().removeAttribute("data-active-option");const c=this.listComponent?.getAriaElement();c&&(0,import_core13._setAriaActiveDescendant)(c,null)}a&&o!=="fuzzy"&&this.listComponent?.highlightFilterMatch(this.searchString),this.displayOrHidePicker()}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 o=(0,import_core13._fuzzySuggestions)(e,t,!0);s=o.values;const n=o.indices;if(a&&n.length)for(let l=0;l<n.length;l++)i.push(this.values[n[l]])}else s=t.filter((o,n)=>{const l=o.toLocaleLowerCase(),c=this.searchString.toLocaleLowerCase(),h=r==="match"?l.startsWith(c):l.indexOf(c)!==-1;return a&&h&&i.push(this.values[n]),h});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===import_core13.KeyCode.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?this.dispatchPickerEventAndHidePicker(this.value,!0):this.onListValueSelected(new Set([t]),!0)}}onDeleteKeyDown(e){const{eWrapper:t,gos:s}=this;(0,import_core13._getActiveDomElement)(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 this.setValue(s.getLastItemHovered(),!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:o,multiSelect:n,suppressDeselectAll:l}=i;switch(t){case import_core13.KeyCode.LEFT:case import_core13.KeyCode.RIGHT:(!o||this.pillContainer)&&(e.preventDefault(),this.pillContainer&&(this.listComponent?.highlightIndex(-1),this.pillContainer.onNavigationKeyDown(e)));break;case import_core13.KeyCode.PAGE_HOME:case import_core13.KeyCode.PAGE_END:if(o){e.preventDefault();const c=this.eInput.getInputElement(),h=t===import_core13.KeyCode.PAGE_HOME?0:c.value.length;c.setSelectionRange(h,h);break}case import_core13.KeyCode.PAGE_UP:case import_core13.KeyCode.PAGE_DOWN:e.preventDefault(),a&&r?.navigateToPage(t);break;case import_core13.KeyCode.DOWN:case import_core13.KeyCode.UP:this.onNavigationKeyDown(e,t,()=>{n&&(this.doWhileBlockingAnnouncement(()=>this.eWrapper.focus()),this.announceAriaValue(this.ariaToggleSelection))});break;case import_core13.KeyCode.ESCAPE:s&&((0,import_core13._isVisible)(this.listComponent.getGui())&&(e.preventDefault(),(0,import_core13._stopPropagationForAgGrid)(e)),this.hidePicker());break;case import_core13.KeyCode.ENTER:this.onEnterKeyDown(e);break;case import_core13.KeyCode.SPACE:if(s&&n&&r){e.preventDefault();const c=r.getLastItemHovered();c&&r.toggleListItemSelection(c)}break;case import_core13.KeyCode.TAB:this.onTabKeyDown();break;case import_core13.KeyCode.DELETE:n&&!l&&this.onDeleteKeyDown(e);break;default:o||this.buildSearchStringFromKeyboardEvent(e)}}announceAriaValue(e){this.ariaAnnouncementService.announceValue(e,"richSelect")}destroy(){this.listComponent&&(this.listComponent=this.destroyBean(this.listComponent)),super.destroy()}},import_core14=require("ag-grid-community"),PillDragComp=class extends import_core14.Component{constructor(e,t,s,i,r){super(),this.dragSourceDropTarget=e,this.ghost=t,this.horizontal=s,this.template=i,this.agComponents=r,this.eText=import_core14.RefPlaceholder,this.eDragHandle=import_core14.RefPlaceholder,this.eButton=import_core14.RefPlaceholder}wireBeans(e){this.dragAndDropService=e.dragAndDropService}postConstruct(){this.setTemplate(this.template??`
|
|
34
|
+
</div>`,agComponents:[import_core13.AgInputTextFieldSelector],modalPicker:!1,...e,maxPickerHeight:e?.maxPickerHeight??"calc(var(--ag-row-height) * 6.5)"}),this.searchString="",this.searchStringCreator=null,this.eInput=import_core13.RefPlaceholder,this.eDeselect=import_core13.RefPlaceholder,this.skipWrapperAnnouncement=!1;const{value:t,valueList:s,searchStringCreator:i}=e||{};t!==void 0&&(this.value=t),s!=null&&(this.values=s),i&&(this.searchStringCreator=i)}wireBeans(e){super.wireBeans(e),this.userComponentFactory=e.userComponentFactory,this.ariaAnnouncementService=e.ariaAnnouncementService}postConstruct(){super.postConstruct(),this.createListComponent(),this.eDeselect.appendChild((0,import_core13._createIconNoSpan)("cancel",this.gos));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=(0,import_core13._debounce)(this.clearSearchString,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,localeService:s}=this;e.tabIndex=t.get("tabIndex");const i=s.getLocaleTextFunc();this.ariaDeleteSelection=i("ariaLabelRichSelectDeleteSelection","Press DELETE to deselect item"),this.ariaDeselectAllItems=i("ariaLabelRichSelectDeselectAllItems","Press DELETE to deselect all items"),this.ariaToggleSelection=i("ariaLabelRichSelectToggleSelection","Press SPACE to toggle selection")}createListComponent(){this.listComponent=this.createBean(new AgRichSelectList(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}=this,{allowTyping:i,cellRenderer:r,initialInputValue:a,multiSelect:o,suppressDeselectAll:n,suppressMultiSelectPillRenderer:l}=s,c=this.config.valueFormatter?this.config.valueFormatter(e):e;if(i){this.eInput.setValue(a??c);return}if(o&&!n){const u=e==null||Array.isArray(e)&&e.length===0;this.eDeselect.classList.toggle("ag-hidden",u)}let h;if(o&&!l){this.createOrUpdatePillContainer(t);return}r&&(h=this.userComponentFactory.getEditorRendererDetails(s,{value:e,valueFormatted:c,getValue:()=>this.getValue(),setValue:u=>{this.setValue(u,!0)},setTooltip:(u,p)=>{this.setTooltip({newTooltipText:u,shouldDisplayTooltip:p})}}));let d;if(h&&(d=h.newAgStackInstance()),d)(0,import_core13._clearElement)(t),(0,import_core13._bindCellRendererToHtmlElement)(d,t),d.then(u=>{this.addDestroyFunc(()=>this.destroyBean(u))});else{if((0,import_core13._exists)(this.value))t.innerText=c,t.classList.remove("ag-display-as-placeholder");else{const{placeholder:u}=s;(0,import_core13._exists)(u)?(t.innerHTML=`${(0,import_core13._escapeString)(u)}`,t.classList.add("ag-display-as-placeholder")):(0,import_core13._clearElement)(t)}this.setTooltip({newTooltipText:c??null,shouldDisplayTooltip:()=>this.eDisplayField.scrollWidth>this.eDisplayField.clientWidth})}}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.values=t,this.isPickerDisplayed&&(this.listComponent.selectValue(this.value)||this.listComponent.refresh())),this.alignPickerToComponent()))}showPicker(){super.showPicker();const{listComponent:e,value:t}=this;if(!e)return;let s=null;this.value!=null&&(e.selectValue(this.value),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 AgPillContainer);this.addDestroyFunc(()=>{this.destroyBean(this.pillContainer),this.pillContainer=null}),(0,import_core13._clearElement)(e),e.appendChild(t.getGui()),t.init({eWrapper:this.eWrapper,onPillMouseDown:s=>{s.stopImmediatePropagation()},announceItemFocus:()=>{this.announceAriaValue(this.ariaDeleteSelection)},getValue:()=>this.getValue(),setValue:s=>this.setValue(s,!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===import_core13.KeyCode.BACKSPACE)this.searchString=this.searchString.slice(0,-1),t="";else if(!(0,import_core13._isEventFromPrintableCharacter)(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()}buildSearchStrings(e){const{valueFormatter:t=i=>i}=this.config;let s;return typeof e[0]=="number"||typeof e[0]=="string"?s=e.map(i=>t(i)):typeof e[0]=="object"&&this.searchStringCreator&&(s=this.searchStringCreator(e)),s}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.buildSearchStrings(e);if(!t){this.listComponent.highlightIndex(-1);return}const{suggestions:s,filteredValues:i}=this.getSuggestionsAndFilteredValues(this.searchString,t),{filterList:r,highlightMatch:a,searchType:o="fuzzy"}=this.config,n=i.length,l=!!(r&&this.searchString!=="");if(this.filterListModel(l?i:e),s.length){const c=l?0:t.indexOf(s[0]);this.listComponent?.highlightIndex(c)}else if(this.listComponent?.highlightIndex(-1),!l||n)this.listComponent?.ensureIndexVisible(0);else if(l){this.getAriaElement().removeAttribute("data-active-option");const c=this.listComponent?.getAriaElement();c&&(0,import_core13._setAriaActiveDescendant)(c,null)}a&&o!=="fuzzy"&&this.listComponent?.highlightFilterMatch(this.searchString),this.displayOrHidePicker()}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 o=(0,import_core13._fuzzySuggestions)({inputValue:e,allSuggestions:t,hideIrrelevant:!0,addSequentialWeight:!0});s=o.values;const n=o.indices;if(a&&n.length)for(let l=0;l<n.length;l++)i.push(this.values[n[l]])}else s=t.filter((o,n)=>{const l=o.toLocaleLowerCase(),c=this.searchString.toLocaleLowerCase(),h=r==="match"?l.startsWith(c):l.indexOf(c)!==-1;return a&&h&&i.push(this.values[n]),h});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===import_core13.KeyCode.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?this.dispatchPickerEventAndHidePicker(this.value,!0):this.onListValueSelected(new Set([t]),!0)}}onDeleteKeyDown(e){const{eWrapper:t,gos:s}=this;(0,import_core13._getActiveDomElement)(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 this.setValue(s.getLastItemHovered(),!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:o,multiSelect:n,suppressDeselectAll:l}=i;switch(t){case import_core13.KeyCode.LEFT:case import_core13.KeyCode.RIGHT:(!o||this.pillContainer)&&(e.preventDefault(),this.pillContainer&&(this.listComponent?.highlightIndex(-1),this.pillContainer.onNavigationKeyDown(e)));break;case import_core13.KeyCode.PAGE_HOME:case import_core13.KeyCode.PAGE_END:if(o){e.preventDefault();const c=this.eInput.getInputElement(),h=t===import_core13.KeyCode.PAGE_HOME?0:c.value.length;c.setSelectionRange(h,h);break}case import_core13.KeyCode.PAGE_UP:case import_core13.KeyCode.PAGE_DOWN:e.preventDefault(),a&&r?.navigateToPage(t);break;case import_core13.KeyCode.DOWN:case import_core13.KeyCode.UP:this.onNavigationKeyDown(e,t,()=>{n&&(this.doWhileBlockingAnnouncement(()=>this.eWrapper.focus()),this.announceAriaValue(this.ariaToggleSelection))});break;case import_core13.KeyCode.ESCAPE:s&&((0,import_core13._isVisible)(this.listComponent.getGui())&&(e.preventDefault(),(0,import_core13._stopPropagationForAgGrid)(e)),this.hidePicker());break;case import_core13.KeyCode.ENTER:this.onEnterKeyDown(e);break;case import_core13.KeyCode.SPACE:if(s&&n&&r){e.preventDefault();const c=r.getLastItemHovered();c&&r.toggleListItemSelection(c)}break;case import_core13.KeyCode.TAB:this.onTabKeyDown();break;case import_core13.KeyCode.DELETE:n&&!l&&this.onDeleteKeyDown(e);break;default:o||this.buildSearchStringFromKeyboardEvent(e)}}announceAriaValue(e){this.ariaAnnouncementService.announceValue(e,"richSelect")}destroy(){this.listComponent&&(this.listComponent=this.destroyBean(this.listComponent)),super.destroy()}},import_core14=require("ag-grid-community"),PillDragComp=class extends import_core14.Component{constructor(e,t,s,i,r){super(),this.dragSourceDropTarget=e,this.ghost=t,this.horizontal=s,this.template=i,this.agComponents=r,this.eText=import_core14.RefPlaceholder,this.eDragHandle=import_core14.RefPlaceholder,this.eButton=import_core14.RefPlaceholder}wireBeans(e){this.dragAndDropService=e.dragAndDropService}postConstruct(){this.setTemplate(this.template??`
|
|
35
35
|
<span role="option">
|
|
36
36
|
<span data-ref="eDragHandle" class="ag-drag-handle ag-column-drop-cell-drag-handle" role="presentation"></span>
|
|
37
37
|
<span data-ref="eText" class="ag-column-drop-cell-text" aria-hidden="true"></span>
|
|
@@ -42,7 +42,7 @@ var __defProp=Object.defineProperty,__getOwnPropDesc=Object.getOwnPropertyDescri
|
|
|
42
42
|
<div data-ref="eTitleBarButtons" class="ag-panel-title-bar-buttons ag-${t}-panel-title-bar-buttons"></div>
|
|
43
43
|
</div>
|
|
44
44
|
<div data-ref="eContentWrapper" class="ag-panel-content-wrapper ag-${t}-panel-content-wrapper"></div>
|
|
45
|
-
</div>`}var _AgPanel=class q extends import_core16.Component{constructor(t){super(getTemplate(t)),this.config=t,this.closable=!0,this.eContentWrapper=import_core16.RefPlaceholder,this.eTitleBar=import_core16.RefPlaceholder,this.eTitleBarButtons=import_core16.RefPlaceholder,this.eTitle=import_core16.RefPlaceholder}postConstruct(){const{component:t,closable:s,hideTitleBar:i,title:r,minWidth:a=250,width:o,minHeight:n=250,height:l,centered:c,popup:h,x:d,y:u}=this.config;this.positionableFeature=new import_core16.PositionableFeature(this.getGui(),{minWidth:a,width:o,minHeight:n,height:l,centered:c,x:d,y:u,popup:h,calculateTopBuffer:()=>this.positionableFeature.getHeight()-this.getBodyHeight()}),this.createManagedBean(this.positionableFeature);const p=this.getGui();t&&this.setBodyComponent(t),i?(0,import_core16._setDisplayed)(this.eTitleBar,!1):(r&&this.setTitle(r),this.setClosable(s??this.closable)),this.addManagedElementListeners(this.eTitleBar,{mousedown:g=>{if(p.contains(g.relatedTarget)||p.contains((0,import_core16._getActiveDomElement)(this.gos))||this.eTitleBarButtons.contains(g.target)){g.preventDefault();return}const m=this.eContentWrapper.querySelector("button, [href], input, select, textarea, [tabindex]");m&&m.focus()}}),!(h&&this.positionableFeature.isPositioned())&&(this.renderComponent&&this.renderComponent(),this.positionableFeature.initialisePosition(),this.eContentWrapper.style.height="0")}renderComponent(){const t=this.getGui();t.focus(),this.close=()=>{t.parentElement.removeChild(t),this.destroy()}}getHeight(){return this.positionableFeature.getHeight()}setHeight(t){this.positionableFeature.setHeight(t)}getWidth(){return this.positionableFeature.getWidth()}setWidth(t){this.positionableFeature.setWidth(t)}setClosable(t){if(t!==this.closable&&(this.closable=t),t){const s=this.closeButtonComp=new import_core16.Component(q.CLOSE_BTN_TEMPLATE);this.createBean(s);const i=s.getGui(),r=(0,import_core16._createIconNoSpan)("close",this.gos);r.classList.add("ag-panel-title-bar-button-icon"),i.appendChild(r),this.addTitleBarButton(s),s.addManagedElementListeners(i,{click:this.onBtClose.bind(this)})}else if(this.closeButtonComp){const s=this.closeButtonComp.getGui();s.parentElement.removeChild(s),this.closeButtonComp=this.destroyBean(this.closeButtonComp)}}setBodyComponent(t){t.setParentComponent(this),this.eContentWrapper.appendChild(t.getGui())}addTitleBarButton(t,s){const i=this.eTitleBarButtons,r=i.children,a=r.length;s==null&&(s=a),s=Math.max(0,Math.min(s,a)),t.addCssClass("ag-panel-title-bar-button");const o=t.getGui();s===0?i.insertAdjacentElement("afterbegin",o):s===a?i.insertAdjacentElement("beforeend",o):r[s-1].insertAdjacentElement("afterend",o),t.setParentComponent(this)}getBodyHeight(){return(0,import_core16._getInnerHeight)(this.eContentWrapper)}getBodyWidth(){return(0,import_core16._getInnerWidth)(this.eContentWrapper)}setTitle(t){this.eTitle.innerText=t}onBtClose(){this.close()}destroy(){this.closeButtonComp&&(this.closeButtonComp=this.destroyBean(this.closeButtonComp));const t=this.getGui();t&&(0,import_core16._isVisible)(t)&&this.close(),super.destroy()}};_AgPanel.CLOSE_BTN_TEMPLATE='<div class="ag-button"></div>';var AgPanel=_AgPanel,AgDialog=class extends AgPanel{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.popupService=e.popupService,this.focusService=e.focusService}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:o,eventSource:n,column:l,mouseEvent:c,rowNode:h}=a;this.popupService.callPostProcessPopup(o,e,n,c,l,h)}if(this.tabGuardFeature=this.createManagedBean(new import_core17.TabGuardFeature(this)),this.tabGuardFeature.initialiseTabGuard({isFocusableContainer:!0,onFocusIn:()=>{
|
|
45
|
+
</div>`}var _AgPanel=class q extends import_core16.Component{constructor(t){super(getTemplate(t)),this.config=t,this.closable=!0,this.eContentWrapper=import_core16.RefPlaceholder,this.eTitleBar=import_core16.RefPlaceholder,this.eTitleBarButtons=import_core16.RefPlaceholder,this.eTitle=import_core16.RefPlaceholder}postConstruct(){const{component:t,closable:s,hideTitleBar:i,title:r,minWidth:a=250,width:o,minHeight:n=250,height:l,centered:c,popup:h,x:d,y:u}=this.config;this.positionableFeature=new import_core16.PositionableFeature(this.getGui(),{minWidth:a,width:o,minHeight:n,height:l,centered:c,x:d,y:u,popup:h,calculateTopBuffer:()=>this.positionableFeature.getHeight()-this.getBodyHeight()}),this.createManagedBean(this.positionableFeature);const p=this.getGui();t&&this.setBodyComponent(t),i?(0,import_core16._setDisplayed)(this.eTitleBar,!1):(r&&this.setTitle(r),this.setClosable(s??this.closable)),this.addManagedElementListeners(this.eTitleBar,{mousedown:g=>{if(p.contains(g.relatedTarget)||p.contains((0,import_core16._getActiveDomElement)(this.gos))||this.eTitleBarButtons.contains(g.target)){g.preventDefault();return}const m=this.eContentWrapper.querySelector("button, [href], input, select, textarea, [tabindex]");m&&m.focus()}}),!(h&&this.positionableFeature.isPositioned())&&(this.renderComponent&&this.renderComponent(),this.positionableFeature.initialisePosition(),this.eContentWrapper.style.height="0")}renderComponent(){const t=this.getGui();t.focus(),this.close=()=>{t.parentElement.removeChild(t),this.destroy()}}getHeight(){return this.positionableFeature.getHeight()}setHeight(t){this.positionableFeature.setHeight(t)}getWidth(){return this.positionableFeature.getWidth()}setWidth(t){this.positionableFeature.setWidth(t)}setClosable(t){if(t!==this.closable&&(this.closable=t),t){const s=this.closeButtonComp=new import_core16.Component(q.CLOSE_BTN_TEMPLATE);this.createBean(s);const i=s.getGui(),r=(0,import_core16._createIconNoSpan)("close",this.gos);r.classList.add("ag-panel-title-bar-button-icon"),i.appendChild(r),this.addTitleBarButton(s),s.addManagedElementListeners(i,{click:this.onBtClose.bind(this)})}else if(this.closeButtonComp){const s=this.closeButtonComp.getGui();s.parentElement.removeChild(s),this.closeButtonComp=this.destroyBean(this.closeButtonComp)}}setBodyComponent(t){t.setParentComponent(this),this.eContentWrapper.appendChild(t.getGui())}addTitleBarButton(t,s){const i=this.eTitleBarButtons,r=i.children,a=r.length;s==null&&(s=a),s=Math.max(0,Math.min(s,a)),t.addCssClass("ag-panel-title-bar-button");const o=t.getGui();s===0?i.insertAdjacentElement("afterbegin",o):s===a?i.insertAdjacentElement("beforeend",o):r[s-1].insertAdjacentElement("afterend",o),t.setParentComponent(this)}getBodyHeight(){return(0,import_core16._getInnerHeight)(this.eContentWrapper)}getBodyWidth(){return(0,import_core16._getInnerWidth)(this.eContentWrapper)}setTitle(t){this.eTitle.innerText=t}onBtClose(){this.close()}destroy(){this.closeButtonComp&&(this.closeButtonComp=this.destroyBean(this.closeButtonComp));const t=this.getGui();t&&(0,import_core16._isVisible)(t)&&this.close(),super.destroy()}};_AgPanel.CLOSE_BTN_TEMPLATE='<div class="ag-button"></div>';var AgPanel=_AgPanel,AgDialog=class extends AgPanel{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.popupService=e.popupService,this.focusService=e.focusService}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:o,eventSource:n,column:l,mouseEvent:c,rowNode:h}=a;this.popupService.callPostProcessPopup(o,e,n,c,l,h)}if(this.tabGuardFeature=this.createManagedBean(new import_core17.TabGuardFeature(this)),this.tabGuardFeature.initialiseTabGuard({isFocusableContainer:!0,onFocusIn:()=>{this.popupService.bringPopupToFront(e)},onTabKeyDown:o=>{if(r)return;const n=o.shiftKey,l=this.focusService.findNextFocusableElement(e,!1,n);(!l||this.tabGuardFeature.getTabGuardCtrl().isTabGuard(l))&&this.focusService.focusNextGridCoreContainer(n)&&o.preventDefault()}}),t&&this.setMovable(t),i&&this.setMaximizable(i),s&&this.setResizable(s),!this.config.modal){const{focusService:o}=this;o.addFocusableContainer(this),this.addDestroyFunc(()=>o.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.localeService.getLocaleTextFunc(),o=this.popupService.addPopup({modal:s,eChild:e,closeOnEsc:!0,closedCallback:this.onClosed.bind(this),alwaysOnTop:t,ariaLabel:i||a("ariaLabelDialog","Dialog"),afterGuiAttached:r});o&&(this.close=o.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(){(0,import_core17._setDisplayed)(this.maximizeIcon,!this.isMaximized),(0,import_core17._setDisplayed)(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 import_core17.Component('<div class="ag-dialog-button"></span>')),t=e.getGui();return this.maximizeIcon=(0,import_core17._createIconNoSpan)("maximize",this.gos),t.appendChild(this.maximizeIcon),this.maximizeIcon.classList.add("ag-panel-title-bar-button-icon"),this.minimizeIcon=(0,import_core17._createIconNoSpan)("minimize",this.gos),t.appendChild(this.minimizeIcon),this.minimizeIcon.classList.add("ag-panel-title-bar-button-icon"),e}},import_core20=require("ag-grid-community"),import_core18=require("ag-grid-community"),AgMenuList=class extends import_core18.TabGuardComp{constructor(e=0,t){super('<div class="ag-menu-list" role="tree"></div>'),this.level=e,this.menuItems=[],this.params=t??{column:null,node:null,value:null}}postConstruct(){this.initialiseTabGuard({onTabKeyDown:e=>this.onTabKeyDown(e),handleKeyDown:e=>this.handleKeyDown(e),onFocusIn:e=>this.handleFocusIn(e),onFocusOut:e=>this.handleFocusOut(e)})}onTabKeyDown(e){const t=this.getParentComponent(),s=t&&t.getGui();s&&s.classList.contains("ag-focus-managed")||e.preventDefault(),e.shiftKey&&this.closeIfIsChild(e)}handleKeyDown(e){switch(e.key){case import_core18.KeyCode.UP:case import_core18.KeyCode.RIGHT:case import_core18.KeyCode.DOWN:case import_core18.KeyCode.LEFT:e.preventDefault(),this.handleNavKey(e.key);break;case import_core18.KeyCode.ESCAPE:this.closeIfIsChild()&&(0,import_core18._stopPropagationForAgGrid)(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&&import_core18.AgPromise.all(e.map(t=>t==="separator"?import_core18.AgPromise.resolve({eGui:this.createSeparator()}):typeof t=="string"?((0,import_core18._warnOnce)(`unrecognised menu item ${t}`),import_core18.AgPromise.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 AgMenuItemComponent);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(){return(0,import_core18._loadTemplate)(`
|
|
46
46
|
<div class="ag-menu-separator" aria-hidden="true">
|
|
47
47
|
<div class="ag-menu-separator-part"></div>
|
|
48
48
|
<div class="ag-menu-separator-part"></div>
|
|
@@ -62,7 +62,7 @@ var __defProp=Object.defineProperty,__getOwnPropDesc=Object.getOwnPropertyDescri
|
|
|
62
62
|
<div class="ag-autocomplete-row-label"></div>
|
|
63
63
|
</div>`),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((0,import_core35._exists)(e)){const s=this.value?.toLocaleLowerCase().indexOf(e.toLocaleLowerCase());if(s>=0){t=!0,this.hasHighlighting=!0;const i=s+e.length,r=(0,import_core35._escapeString)(this.value.slice(0,s)),a=(0,import_core35._escapeString)(this.value.slice(s,i)),o=(0,import_core35._escapeString)(this.value.slice(i));this.getGui().lastElementChild.innerHTML=`${r}<b>${a}</b>${o}`}}!t&&this.hasHighlighting&&(this.hasHighlighting=!1,this.render())}render(){this.getGui().lastElementChild.innerHTML=(0,import_core35._escapeString)(this.value)??" "}},AgAutocompleteList=class extends import_core33.PopupComponent{constructor(e){super(`<div class="ag-autocomplete-list-popup">
|
|
64
64
|
<div data-ref="eList" class="ag-autocomplete-list"></div>
|
|
65
|
-
<div>`),this.params=e,this.eList=import_core33.RefPlaceholder,this.searchString=""}destroy(){super.destroy()}postConstruct(){this.autocompleteEntries=this.params.autocompleteEntries,this.virtualList=this.createManagedBean(new VirtualList({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===import_core33.KeyCode.UP?s-1:s+1;this.checkSetSelectedValue(i)}setSearch(e){this.searchString=e,(0,import_core33._exists)(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(o=>{const l=o.toLocaleLowerCase().indexOf(r),c=l===0,h=l>=0;return h&&(!s||!i&&c||i===c&&o.length<s.length)&&(s=o,i=c),h});return!s&&a.length&&(s=a[0]),{topMatch:s,allMatches:a}}runSearch(){const{autocompleteEntries:e}=this.params,t=e.map(o=>o.displayValue??o.key);let s,i;if(this.params.useFuzzySearch)s=(0,import_core33._fuzzySuggestions)(this.searchString,t
|
|
65
|
+
<div>`),this.params=e,this.eList=import_core33.RefPlaceholder,this.searchString=""}destroy(){super.destroy()}postConstruct(){this.autocompleteEntries=this.params.autocompleteEntries,this.virtualList=this.createManagedBean(new VirtualList({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===import_core33.KeyCode.UP?s-1:s+1;this.checkSetSelectedValue(i)}setSearch(e){this.searchString=e,(0,import_core33._exists)(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(o=>{const l=o.toLocaleLowerCase().indexOf(r),c=l===0,h=l>=0;return h&&(!s||!i&&c||i===c&&o.length<s.length)&&(s=o,i=c),h});return!s&&a.length&&(s=a[0]),{topMatch:s,allMatches:a}}runSearch(){const{autocompleteEntries:e}=this.params,t=e.map(o=>o.displayValue??o.key);let s,i;if(this.params.useFuzzySearch)s=(0,import_core33._fuzzySuggestions)({inputValue:this.searchString,allSuggestions:t,hideIrrelevant:!0,addSequentialWeight:!0}).values,i=s.length?s[0]:void 0;else{const o=this.runContainsSearch(this.searchString,t);s=o.allMatches,i=o.topMatch}let r=e.filter(({key:o,displayValue:n})=>s.includes(n??o));if(!r.length&&this.selectedValue&&this.params?.forceLastSelection?.(this.selectedValue,this.searchString)&&(r=[this.selectedValue]),this.autocompleteEntries=r,this.virtualList.refresh(),!i)return;const a=s.indexOf(i);this.checkSetSelectedValue(a)}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 AgAutocompleteRow;return this.createBean(t),t.setState(e.displayValue??e.key,e===this.selectedValue),t}onMouseMove(e){const t=this.virtualList.getGui().getBoundingClientRect(),s=this.virtualList.getScrollTop(),i=e.clientY-t.top+s,r=Math.floor(i/this.virtualList.getRowHeight());this.checkSetSelectedValue(r)}afterGuiAttached(){this.virtualList.refresh()}getSelectedValue(){return this.autocompleteEntries.length?this.selectedValue??null:null}},AgAutocomplete=class extends import_core32.Component{constructor(){super(`
|
|
66
66
|
<div class="ag-autocomplete" role="presentation">
|
|
67
67
|
<ag-input-text-field data-ref="eAutocompleteInput"></ag-input-text-field>
|
|
68
68
|
</div>`,[import_core32.AgInputTextFieldSelector]),this.eAutocompleteInput=import_core32.RefPlaceholder,this.isListOpen=!1,this.lastPosition=0,this.valid=!0}wireBeans(e){this.popupService=e.popupService}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=(0,import_core32._makeNull)(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};if((!t.type||t.type!==this.autocompleteListParams?.type)&&this.isListOpen&&this.closeList(),this.autocompleteListParams=t,this.autocompleteListParams?.enabled){this.isListOpen||this.openList();const{searchString:s}=this.autocompleteListParams;this.autocompleteList.setSearch(s??"")}else this.isListOpen&&this.closeList()}onKeyDown(e){const t=e.key;switch(this.updateLastPosition(),t){case import_core32.KeyCode.ENTER:this.onEnterKeyDown(e);break;case import_core32.KeyCode.TAB:this.onTabKeyDown(e);break;case import_core32.KeyCode.DOWN:case import_core32.KeyCode.UP:this.onUpDownKeyDown(e,t);break;case import_core32.KeyCode.LEFT:case import_core32.KeyCode.RIGHT:case import_core32.KeyCode.PAGE_HOME:case import_core32.KeyCode.PAGE_END:setTimeout(()=>{this.updatePositionAndList()});break;case import_core32.KeyCode.ESCAPE:this.onEscapeKeyDown(e);break;case import_core32.KeyCode.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&&(0,import_core32._isNothingFocused)(this.gos)&&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){this.validator&&(this.validationMessage=this.validator(e),this.eAutocompleteInput.getInputElement().setCustomValidity(this.validationMessage??""),this.valid=!this.validationMessage,this.dispatchLocalEvent({type:"eventValidChanged",isValid:this.valid,validationMessage:this.validationMessage}))}openList(){this.isListOpen=!0,this.autocompleteList=this.createBean(new AgAutocompleteList({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.popupService.addPopup({eChild:e,anchorToElement:this.getGui(),positionCallback:()=>this.popupService.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(0,import_core32._makeNull)(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}},AgAutocompleteSelector={selector:"AG-AUTOCOMPLETE",component:AgAutocomplete},AdvancedFilterComp=class extends import_core31.Component{constructor(){super(`
|
|
@@ -132,7 +132,7 @@ var __defProp=Object.defineProperty,__getOwnPropDesc=Object.getOwnPropertyDescri
|
|
|
132
132
|
<button class="ag-button ag-standard-button ag-advanced-filter-builder-apply-button" data-ref="eApplyFilterButton"></button>
|
|
133
133
|
<button class="ag-button ag-standard-button ag-advanced-filter-builder-cancel-button" data-ref="eCancelFilterButton"></button>
|
|
134
134
|
</div>
|
|
135
|
-
</div>`),this.eList=import_core37.RefPlaceholder,this.eApplyFilterButton=import_core37.RefPlaceholder,this.eCancelFilterButton=import_core37.RefPlaceholder,this.validationMessage=null}wireBeans(e){this.filterManager=e.filterManager,this.advancedFilterService=e.advancedFilterService,this.advancedFilterExpressionService=e.advancedFilterExpressionService}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 AdvancedFilterBuilderDragFeature(this,this.virtualList)),this.setupButtons()}refresh(){let e=this.virtualList.getLastFocusedRow();this.setupFilterModel(),this.validateItems(),this.refreshList(!1),e!=null&&(this.virtualList.getComponentAt(e)||(e=0),this.virtualList.focusRow(e))}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(){this.virtualList=this.createManagedBean(new VirtualList({cssIdentifier:"advanced-filter-builder",ariaRole:"tree",listName:this.advancedFilterExpressionService.translate("ariaAdvancedFilterBuilderList")})),this.virtualList.setComponentCreator(this.createItemComponent.bind(this)),this.virtualList.setComponentUpdater(this.updateItemComponent.bind(this)),this.virtualList.setRowHeight(40),this.eList.appendChild(this.virtualList.getGui()),this.virtualList.setModel({getRowCount:()=>this.items.length,getRow:e=>this.items[e],areRowsEqual:(e,t)=>e===t}),this.buildList(),this.virtualList.refresh()}setupButtons(){this.eApplyFilterButton.innerText=this.advancedFilterExpressionService.translate("advancedFilterBuilderApply"),this.activateTabIndex([this.eApplyFilterButton]),this.addManagedElementListeners(this.eApplyFilterButton,{click:()=>{this.advancedFilterService.setModel(this.filterModel),this.filterManager?.onFilterChanged({source:"advancedFilter"}),this.close()}}),this.validationTooltipFeature=this.createManagedBean(new import_core37.TooltipFeature({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.advancedFilterExpressionService.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 o;r?o=0:(o=a.conditions.indexOf(i.filterModel),o===-1?o=a.conditions.length:s==="bottom"&&(o+=1)),a.conditions.splice(o,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.advancedFilterService.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=(n,l)=>{const h=this.items.find(d=>d.filterModel===n)?.parent;if(h){const{conditions:d}=h;i(h,l),l.push(d[d.length-1]===n)}},r=[],{filterModel:a}=e;a&&(i(a,r),r[0]=!1);const o=a?.filterType==="join"&&!!a.conditions.length;t.setState({disableMoveUp:s===1,disableMoveDown:!this.canMoveDown(e,s),treeLines:r,showStartTreeLine:o})}createItemComponent(e,t){const s=this.createBean(e.filterModel?new AdvancedFilterBuilderItemComp(e,this.dragFeature,t):new AdvancedFilterBuilderItemAddComp(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 AdvancedFilterBuilderItemComp&&this.updateItemComponent(e,s),s}addItem(e,t){const{parent:s,level:i,filterModel:r}=e,a=r?.filterType==="join",o=t?{filterType:"join",type:"AND",conditions:[]}:{},n=a?r:s;let l=a?0:n.conditions.indexOf(r);l>=0?(a||(l+=1),n.conditions.splice(l,0,o)):n.conditions.push(o);let c=this.items.indexOf(e);const h=c>=0;if(h){e.filterModel&&c++;const d=[{filterModel:o,level:a?i+1:i,parent:n,valid:t,showMove:this.showMove}];this.items.splice(c,0,...d)}this.refreshList(h),h&&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),o=!r&&a>=0;o&&this.items.splice(a,1),this.refreshList(o),a>=0&&this.virtualList.focusRow(a)}moveItemUpDown(e,t){const s=this.items.indexOf(e),i=t?s-1:s+1;if(i===0||!t&&!this.canMoveDown(e,s))return;const r=this.items[i],a=this.removeItemFromParent(e),{level:o,filterModel:n,parent:l}=e,{level:c,filterModel:h,parent:d}=r;if(t)if(c===o&&h.filterType==="join")h.conditions.push(n);else if(c<=o){const p=d.conditions.indexOf(h);d.conditions.splice(p,0,n)}else l.conditions[a-1].conditions.push(n);else if(c===o)if(h.filterType==="join")h.conditions.splice(0,0,n);else{const p=d.conditions.indexOf(h);d.conditions.splice(p+1,0,n)}else if(a<l.conditions.length)l.conditions.splice(a+1,0,n);else{const p=this.items.find(m=>m.filterModel===l),g=p.parent.conditions.indexOf(p.filterModel)+1;p.parent.conditions.splice(g,0,n)}this.refreshList(!1);const u=this.items.findIndex(({filterModel:p})=>p===n);if(u>=0){const p=this.virtualList.getComponentAt(u);p instanceof AdvancedFilterBuilderItemComp&&p.focusMoveButton(t)}}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.advancedFilterService.getCtrl().toggleFilterBuilder({source:"ui"})}validate(){let e=!this.items.every(({valid:t})=>t);e?this.validationMessage=this.advancedFilterExpressionService.translate("advancedFilterBuilderValidationIncomplete"):(e=JSON.stringify(this.filterModel)===this.stringifiedModel,e?this.validationMessage=this.advancedFilterExpressionService.translate("advancedFilterBuilderValidationAlreadyApplied"):this.validationMessage=null),(0,import_core37._setDisabled)(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.advancedFilterExpressionService.getColumnAutocompleteEntries().find(({key:c})=>c===r),o=this.advancedFilterExpressionService.getColumnDetails(i.colId);if(!a||!o.column){s.valid=!1,i.colId=void 0,e(i),t(i);return}const l=this.advancedFilterExpressionService.getDataTypeExpressionOperator(o.baseCellDataType).operators[i.type];if(!l){s.valid=!1,e(i),t(i);return}if(l.numOperands>0&&!(0,import_core37._exists)(i.filter)){s.valid=!1;return}})}},AdvancedFilterCtrl=class extends import_core29.BeanStub{constructor(e){super(),this.enabled=e}wireBeans(e){this.ctrlsService=e.ctrlsService,this.popupService=e.popupService,this.advancedFilterExpressionService=e.advancedFilterExpressionService,this.environment=e.environment}postConstruct(){this.hasAdvancedFilterParent=!!this.gos.get("advancedFilterParent"),this.ctrlsService.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 AdvancedFilterHeaderComp(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:o}=this.getBuilderDialogSize();this.eBuilderComp=this.createBean(new AdvancedFilterBuilderComp),this.eBuilderDialog=this.createBean(new AgDialog({title:this.advancedFilterExpressionService.translate("advancedFilterBuilderTitle"),component:this.eBuilderComp,width:r,height:a,resizable:!0,movable:!0,maximizable:!0,centered:!0,closable:!0,minWidth:o,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.eventService.dispatchEvent({type:"advancedFilterBuilderVisibleChanged",source:e,visible:t})}getBuilderDialogSize(){const e=this.gos.get("advancedFilterBuilderParams")?.minWidth??500,t=this.popupService.getPopupParent(),s=Math.round((0,import_core29._getAbsoluteWidth)(t))-2,i=Math.round((0,import_core29._getAbsoluteHeight)(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.eventService.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 AdvancedFilterComp),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&&((0,import_core29._removeFromParent)(this.eFilterComp.getGui()),this.destroyBean(this.eFilterComp))}},OperatorParser2=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=getSearchString(r,e,a==null?this.params.expression.length:a+1)}let i=this.params.advancedFilterExpressionService.getJoinOperatorAutocompleteEntries();return(t||t==null&&this.activeOperator)&&(i=i.filter(({key:r})=>r===this.parsedOperator)),this.params.advancedFilterExpressionService.generateAutocompleteListParams(i,"join",s)}updateExpression(e,t,s){let{expression:i}=this.params;const r=t.displayValue??t.key;if(s===0)for(let n=this.operatorEndPositions.length-1;n>0;n--){const l=this.operatorEndPositions[n];l!=null&&(i=updateExpression(i,this.operatorStartPositions[n],l,r).updatedValue)}const a=this.operatorStartPositions.length>s?this.operatorStartPositions[s]:e,o=(this.operatorEndPositions.length>s?this.operatorEndPositions[s]:void 0)??findEndPosition(i,e,!0).endPosition;return updateExpression(i,a,o,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.advancedFilterExpressionService.getExpressionJoinOperators(),i=findMatch(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.advancedFilterExpressionService.translate("advancedFilterValidationJoinOperatorMismatch"),startPosition:e-t.length+1,endPosition:e}),!1}else this.parsedOperator=i;return t!==r&&(checkAndUpdateExpression(this.params,t,r,e),this.operators[this.activeOperator]=r),!0}else return i===null?!1:(this.validationError||(this.validationError={message:this.params.advancedFilterExpressionService.translate("advancedFilterValidationInvalidJoinOperator"),startPosition:e-t.length+1,endPosition:e}),!0)}},JoinFilterExpressionParser=class j{constructor(t,s){this.params=t,this.startPosition=s,this.expectingExpression=!0,this.expectingOperator=!1,this.expressionParsers=[],this.operatorParser=new OperatorParser2(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 j(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 ColFilterExpressionParser(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.advancedFilterExpressionService.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.advancedFilterExpressionService.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,o,n)=>i[r](l=>l(a,o,n))}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.advancedFilterExpressionService.getColumnValue(s):s.displayValue??s.key;return updateExpression(r,this.startPosition,this.startPosition,l,!0)}const n=this.expressionParsers[a].updateExpression(t,s,i);return n??(i==="column"?updateExpression(r,t,r.length-1,this.params.advancedFilterExpressionService.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.advancedFilterExpressionService.generateAutocompleteListParams(this.params.advancedFilterExpressionService.getColumnAutocompleteEntries(),"column","")}getExpressionParserIndex(t){let s;for(let i=0;i<this.expressionParsers.length&&!(this.expressionParsers[i].startPosition>t);i++)s=i;return s}},FilterExpressionParser=class{constructor(e){this.params=e,this.valid=!1}parseExpression(){this.joinExpressionParser=new JoinFilterExpressionParser(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.advancedFilterExpressionService.translate("advancedFilterValidationMessage",[t,this.params.expression.slice(s,i+1).trim()]):this.params.advancedFilterExpressionService.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:[]}}},AdvancedFilterService=class extends import_core28.BeanStub{constructor(){super(...arguments),this.beanName="advancedFilterService",this.appliedExpression=null,this.expression=null,this.isValid=!0}wireBeans(e){this.valueService=e.valueService,this.columnModel=e.columnModel,this.dataTypeService=e.dataTypeService,this.advancedFilterExpressionService=e.advancedFilterExpressionService}postConstruct(){this.setEnabled(this.gos.get("enableAdvancedFilter"),!0),this.ctrl=this.createManagedBean(new AdvancedFilterCtrl(this.enabled)),this.expressionProxy={getValue:(e,t)=>{const s=this.columnModel.getColDefCol(e);return s?this.valueService.getValue(s,t,!0):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.advancedFilterExpressionService.parseJoinOperator(i),o=i.conditions.map(n=>t(n)).filter(n=>(0,import_core28._exists)(n)).join(` ${a} `);return r||i.conditions.length<=1?o:`(${o})`}else return this.advancedFilterExpressionService.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 FilterExpressionParser({expression:e,columnModel:this.columnModel,dataTypeService:this.dataTypeService,valueService:this.valueService,advancedFilterExpressionService:this.advancedFilterExpressionService}):null}getDefaultExpression(e){const t=this.advancedFilterExpressionService.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=(0,import_core28._isClientSideRowModel)(this.gos)||(0,import_core28._isServerSideRowModel)(this.gos);e&&!i&&(0,import_core28._warnOnce)("Advanced Filter is only supported with the Client-Side Row Model or Server-Side Row Model."),this.enabled=e&&i,!t&&this.enabled!==s&&this.eventService.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.advancedFilterExpressionService.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.dataTypeService?.isPendingInference())return;this.ctrl.setInputDisabled(!0);const[t]=this.addManagedEventListeners({dataTypesInferred:()=>{t?.(),this.ctrl.setInputDisabled(!1)}})}},VERSION2="32.2.2",AdvancedFilterCoreModule=(0,import_core25._defineModule)({version:VERSION2,moduleName:`${import_core25.ModuleNames.AdvancedFilterModule}-core`,beans:[AdvancedFilterService,AdvancedFilterExpressionService],dependantModules:[EnterpriseCoreModule,import_core25._FilterCoreModule]}),AdvancedFilterApiModule=(0,import_core25._defineModule)({version:VERSION2,moduleName:`${import_core25.ModuleNames.AdvancedFilterModule}-api`,apiFunctions:{getAdvancedFilterModel,setAdvancedFilterModel,showAdvancedFilterBuilder,hideAdvancedFilterBuilder},dependantModules:[AdvancedFilterCoreModule]}),AdvancedFilterModule=(0,import_core25._defineModule)({version:VERSION2,moduleName:import_core25.ModuleNames.AdvancedFilterModule,dependantModules:[AdvancedFilterCoreModule,AdvancedFilterApiModule]}),main_esm_exports={};__export(main_esm_exports,{GridChartsModule:()=>GridChartsModule,agCharts:()=>agCharts});var import_ag_charts_community=require("ag-charts-community"),import_core58=require("ag-grid-community"),import_core51=require("ag-grid-community"),import_core53=require("ag-grid-community"),import_core54=require("ag-grid-community"),import_core55=require("ag-grid-community"),import_core56=require("ag-grid-community"),import_core57=require("ag-grid-community");function getCellRanges(e){return e.rangeService?.getCellRanges()??null}function addCellRange(e,t){e.rangeService?.addCellRange(t)}function clearRangeSelection(e){e.rangeService?.removeAllCellRanges()}var RangeService=class extends import_core53.BeanStub{constructor(){super(...arguments),this.beanName="rangeService",this.cellRanges=[],this.bodyScrollListener=this.onBodyScroll.bind(this),this.dragging=!1,this.intersectionRange=!1}wireBeans(e){this.rowModel=e.rowModel,this.dragService=e.dragService,this.columnModel=e.columnModel,this.visibleColsService=e.visibleColsService,this.cellNavigationService=e.cellNavigationService,this.pinnedRowModel=e.pinnedRowModel,this.rowPositionUtils=e.rowPositionUtils,this.cellPositionUtils=e.cellPositionUtils,this.ctrlsService=e.ctrlsService,this.valueService=e.valueService}postConstruct(){const e=this.onColumnsChanged.bind(this),t=()=>this.removeAllCellRanges(),s=this.refreshLastRangeStart.bind(this);this.addManagedEventListeners({newColumnsLoaded:e,columnVisible:e,columnValueChanged:e,columnPivotModeChanged:t,columnRowGroupChanged:t,columnPivotChanged:t,columnGroupOpened:s,columnMoved:s,columnPinned:s}),this.ctrlsService.whenReady(this,i=>{const r=i.gridBodyCtrl;this.autoScrollService=new import_core53.AutoScrollService({scrollContainer:r.getBodyViewportElement(),scrollAxis:"xy",getVerticalPosition:()=>r.getScrollFeature().getVScrollPosition().top,setVerticalPosition:a=>r.getScrollFeature().setVerticalScrollPosition(a),getHorizontalPosition:()=>r.getScrollFeature().getHScrollPosition().left,setHorizontalPosition:a=>r.getScrollFeature().setHorizontalScrollPosition(a),shouldSkipVerticalScroll:()=>!(0,import_core53._isDomLayout)(this.gos,"normal"),shouldSkipHorizontalScroll:()=>!r.getScrollFeature().isHorizontalScrollShowing()})})}onColumnsChanged(){this.refreshLastRangeStart();const e=this.visibleColsService.getAllCols();this.cellRanges.forEach(s=>{const i=s.columns;s.columns=s.columns.filter(a=>a.isVisible()&&e.indexOf(a)!==-1),!(0,import_core53._areEqual)(i,s.columns)&&this.dispatchChangedEvent(!1,!0,s.id)});const t=this.cellRanges.length;this.cellRanges=this.cellRanges.filter(s=>s.columns.length>0),t>this.cellRanges.length&&this.dispatchChangedEvent(!1,!0)}refreshLastRangeStart(){const e=(0,import_core53._last)(this.cellRanges);e&&this.refreshRangeStart(e)}isContiguousRange(e){const t=e.columns;if(!t.length)return!1;const s=this.visibleColsService.getAllCols(),i=t.map(r=>s.indexOf(r)).sort((r,a)=>r-a);return(0,import_core53._last)(i)-i[0]+1===t.length}getRangeStartRow(e){return e.startRow&&e.endRow?this.rowPositionUtils.before(e.startRow,e.endRow)?e.startRow:e.endRow:{rowIndex:0,rowPinned:this.pinnedRowModel.getPinnedTopRowCount()>0?"top":null}}getRangeEndRow(e){if(e.startRow&&e.endRow)return this.rowPositionUtils.before(e.startRow,e.endRow)?e.endRow:e.startRow;const t=this.pinnedRowModel.getPinnedBottomRowCount();return t>0?{rowIndex:t-1,rowPinned:"bottom"}:{rowIndex:this.rowModel.getRowCount()-1,rowPinned:null}}setRangeToCell(e,t=!1){if(!(0,import_core53._isCellSelectionEnabled)(this.gos))return;const s=this.calculateColumnsBetween(e.column,e.column);if(!s)return;((0,import_core53._getSuppressMultiRanges)(this.gos)||!t||(0,import_core53._missing)(this.cellRanges))&&this.removeAllCellRanges(!0);const r={rowIndex:e.rowIndex,rowPinned:e.rowPinned},a={startRow:r,endRow:r,columns:s,startColumn:e.column};this.cellRanges.push(a),this.setNewestRangeStartCell(e),this.onDragStop(),this.dispatchChangedEvent(!0,!0)}extendLatestRangeToCell(e){if(this.isEmpty()||!this.newestRangeStartCell)return;const t=(0,import_core53._last)(this.cellRanges);this.updateRangeEnd(t,e)}updateRangeEnd(e,t,s=!1){const i=t.column,r=this.calculateColumnsBetween(e.startColumn,i);!r||this.isLastCellOfRange(e,t)||(e.columns=r,e.endRow={rowIndex:t.rowIndex,rowPinned:t.rowPinned},s||this.dispatchChangedEvent(!0,!0,e.id))}refreshRangeStart(e){const{startColumn:t,columns:s}=e,i=(l,c)=>{const h=e.columns.filter(d=>d!==l);l?(e.startColumn=l,e.columns=c?[l,...h]:[...h,l]):e.columns=h},{left:r,right:a}=this.getRangeEdgeColumns(e);if(t===s[0]&&t!==r){i(r,!0);return}if(t===(0,import_core53._last)(s)&&t===a){i(a,!1);return}}getRangeEdgeColumns(e){const t=this.visibleColsService.getAllCols(),s=e.columns.map(i=>t.indexOf(i)).filter(i=>i>-1).sort((i,r)=>i-r);return{left:t[s[0]],right:t[(0,import_core53._last)(s)]}}extendLatestRangeInDirection(e){if(this.isEmpty()||!this.newestRangeStartCell)return;const t=e.key,s=e.ctrlKey||e.metaKey,i=(0,import_core53._last)(this.cellRanges),r=this.newestRangeStartCell,a=i.columns[0],o=(0,import_core53._last)(i.columns),n=i.endRow.rowIndex,l=i.endRow.rowPinned,h={column:r.column===a?o:a,rowIndex:n,rowPinned:l},d=this.cellNavigationService.getNextCellToFocus(t,h,s);if(d)return this.setCellRange({rowStartIndex:r.rowIndex,rowStartPinned:r.rowPinned,rowEndIndex:d.rowIndex,rowEndPinned:d.rowPinned,columnStart:r.column,columnEnd:d.column}),d}setCellRange(e){(0,import_core53._isCellSelectionEnabled)(this.gos)&&(this.removeAllCellRanges(!0),this.addCellRange(e))}setCellRanges(e){(0,import_core53._shallowCompare)(this.cellRanges,e)||(this.removeAllCellRanges(!0),e.forEach(t=>{t.columns&&t.startRow&&this.setNewestRangeStartCell({rowIndex:t.startRow.rowIndex,rowPinned:t.startRow.rowPinned,column:t.columns[0]}),this.cellRanges.push(t)}),this.dispatchChangedEvent(!1,!0))}setNewestRangeStartCell(e){this.newestRangeStartCell=e}clearCellRangeCellValues(e){let{cellRanges:t}=e;const{cellEventSource:s="rangeService",dispatchWrapperEvents:i,wrapperEventSource:r="deleteKey"}=e;i&&(this.eventService.dispatchEvent({type:"cellSelectionDeleteStart",source:r}),this.eventService.dispatchEvent({type:"rangeDeleteStart",source:r})),t||(t=this.cellRanges),t.forEach(a=>{this.forEachRowInRange(a,o=>{const n=this.rowPositionUtils.getRowNode(o);if(n)for(let l=0;l<a.columns.length;l++){const c=this.columnModel.getCol(a.columns[l]);if(!c||!c.isCellEditable(n))continue;const h=this.valueService.getDeleteValue(c,n);n.setDataValue(c,h,s)}})}),i&&(this.eventService.dispatchEvent({type:"cellSelectionDeleteEnd",source:r}),this.eventService.dispatchEvent({type:"rangeDeleteEnd",source:r}))}createCellRangeFromCellRangeParams(e){return this.createPartialCellRangeFromRangeParams(e,!1)}createPartialCellRangeFromRangeParams(e,t){let s,i=!1;if(e.columns)s=e.columns.map(o=>this.columnModel.getCol(o)).filter(o=>o);else{const o=this.columnModel.getCol(e.columnStart),n=this.columnModel.getCol(e.columnEnd);if(!o||!n)return;s=this.calculateColumnsBetween(o,n),s&&s.length&&(i=s[0]!==o)}if(!s||!t&&s.length===0)return;const r=e.rowStartIndex!=null?{rowIndex:e.rowStartIndex,rowPinned:e.rowStartPinned||null}:void 0,a=e.rowEndIndex!=null?{rowIndex:e.rowEndIndex,rowPinned:e.rowEndPinned||null}:void 0;return{startRow:r,endRow:a,columns:s,startColumn:i?(0,import_core53._last)(s):s[0]}}addCellRange(e){const t=this.gos;if(!(0,import_core53._isCellSelectionEnabled)(t))return;if((0,import_core53._isUsingNewCellSelectionAPI)(t)&&(0,import_core53._getSuppressMultiRanges)(t)&&this.cellRanges.length>0)return(0,import_core53._warnOnce)("cannot add multiple ranges when `cellSelection.suppressMultiRanges = true`");const s=this.createCellRangeFromCellRangeParams(e);s&&(s.startRow&&this.setNewestRangeStartCell({rowIndex:s.startRow.rowIndex,rowPinned:s.startRow.rowPinned,column:s.startColumn}),this.cellRanges.push(s),this.dispatchChangedEvent(!1,!0,s.id))}getCellRanges(){return this.cellRanges}isEmpty(){return this.cellRanges.length===0}isMoreThanOneCell(){const e=this.cellRanges.length;if(e===0)return!1;if(e>1)return!0;const t=this.cellRanges[0],s=this.getRangeStartRow(t),i=this.getRangeEndRow(t);return s.rowPinned!==i.rowPinned||s.rowIndex!==i.rowIndex||t.columns.length!==1}areAllRangesAbleToMerge(){const e=new Map;if(this.cellRanges.length<=1)return!0;this.cellRanges.forEach(i=>{this.forEachRowInRange(i,r=>{const a=`${r.rowPinned||"normal"}_${r.rowIndex}`,o=e.get(a),n=i.columns.map(l=>l.getId());if(o){const l=n.filter(c=>o.indexOf(c)===-1);o.push(...l)}else e.set(a,n)})});let s;for(const i of e.values()){const r=i.sort().join();if(s===void 0){s=r;continue}if(s!==r)return!1}return!0}forEachRowInRange(e,t){const s=this.getRangeStartRow(e),i=this.getRangeEndRow(e);let r=s;for(;r&&(t(r),!this.rowPositionUtils.sameRow(r,i));)r=this.cellNavigationService.getRowBelow(r)}removeAllCellRanges(e){this.isEmpty()||(this.onDragStop(),this.cellRanges.length=0,e||this.dispatchChangedEvent(!1,!0))}onBodyScroll(){this.dragging&&this.lastMouseEvent&&this.onDragging(this.lastMouseEvent)}isCellInAnyRange(e){return this.getCellRangeCount(e)>0}isCellInSpecificRange(e,t){const s=t.columns!==null&&(0,import_core53._includes)(t.columns,e.column),i=this.isRowInRange(e.rowIndex,e.rowPinned,t);return s&&i}isLastCellOfRange(e,t){const{startRow:s,endRow:i}=e,r=this.rowPositionUtils.before(s,i)?i:s,a=t.rowIndex===r.rowIndex&&t.rowPinned===r.rowPinned,o=e.columns[0],n=(0,import_core53._last)(e.columns),l=e.startColumn===o?n:o;return t.column===l&&a}isBottomRightCell(e,t){const s=this.visibleColsService.getAllCols(),i=e.columns.map(c=>s.indexOf(c)).sort((c,h)=>c-h),{startRow:r,endRow:a}=e,o=this.rowPositionUtils.before(r,a)?a:r,n=s.indexOf(t.column)===(0,import_core53._last)(i),l=t.rowIndex===o.rowIndex&&(0,import_core53._makeNull)(t.rowPinned)===(0,import_core53._makeNull)(o.rowPinned);return n&&l}getCellRangeCount(e){return this.isEmpty()?0:this.cellRanges.filter(t=>this.isCellInSpecificRange(e,t)).length}isRowInRange(e,t,s){const i=this.getRangeStartRow(s),r=this.getRangeEndRow(s),a={rowIndex:e,rowPinned:t||null},o=a.rowIndex===i.rowIndex&&a.rowPinned==i.rowPinned,n=a.rowIndex===r.rowIndex&&a.rowPinned==r.rowPinned;if(o||n)return!0;const l=!this.rowPositionUtils.before(a,i),c=this.rowPositionUtils.before(a,r);return l&&c}getDraggingRange(){return this.draggingRange}onDragStart(e){if(!(0,import_core53._isCellSelectionEnabled)(this.gos))return;const{ctrlKey:t,metaKey:s,shiftKey:i}=e,r=t||s,o=!(0,import_core53._getSuppressMultiRanges)(this.gos)?r:!1,n=i&&(0,import_core53._existsAndNotEmpty)(this.cellRanges);!o&&(!n||(0,import_core53._exists)((0,import_core53._last)(this.cellRanges).type))&&this.removeAllCellRanges(!0);const l=this.dragService.getStartTarget();if(l&&this.updateValuesOnMove(l),!!this.lastCellHovered){if(this.dragging=!0,this.lastMouseEvent=e,this.intersectionRange=o&&this.getCellRangeCount(this.lastCellHovered)>1,n||this.setNewestRangeStartCell(this.lastCellHovered),this.cellRanges.length>0)this.draggingRange=(0,import_core53._last)(this.cellRanges);else{const c={rowIndex:this.lastCellHovered.rowIndex,rowPinned:this.lastCellHovered.rowPinned};this.draggingRange={startRow:c,endRow:c,columns:[this.lastCellHovered.column],startColumn:this.newestRangeStartCell.column},this.cellRanges.push(this.draggingRange)}this.ctrlsService.getGridBodyCtrl().addScrollEventListener(this.bodyScrollListener),this.dispatchChangedEvent(!0,!1,this.draggingRange.id)}}intersectLastRange(e){if(e&&this.dragging||(0,import_core53._getSuppressMultiRanges)(this.gos)||this.isEmpty())return;const t=this.rowPositionUtils,s=(0,import_core53._last)(this.cellRanges),i=this.getRangeStartRow(s),r=this.getRangeEndRow(s),a=[];this.cellRanges.slice(0,-1).forEach(o=>{const n=this.getRangeStartRow(o),l=this.getRangeEndRow(o),c=o.columns,h=c.filter(u=>s.columns.indexOf(u)===-1);if(h.length===c.length){a.push(o);return}if(t.before(r,n)||t.before(l,i)){a.push(o);return}const d=a.length;if(t.before(n,i)){const u={columns:[...c],startColumn:s.startColumn,startRow:{...n},endRow:this.cellNavigationService.getRowAbove(i)};a.push(u)}if(h.length>0){const u={columns:h,startColumn:(0,import_core53._includes)(h,s.startColumn)?s.startColumn:h[0],startRow:this.rowMax([{...i},{...n}]),endRow:this.rowMin([{...r},{...l}])};a.push(u)}t.before(r,l)&&a.push({columns:[...c],startColumn:s.startColumn,startRow:this.cellNavigationService.getRowBelow(r),endRow:{...l}}),a.length-d===1&&(a[a.length-1].id=o.id)}),this.cellRanges=a,e&&this.dispatchChangedEvent(!1,!0)}rowMax(e){let t;return e.forEach(s=>{(t===void 0||this.rowPositionUtils.before(t,s))&&(t=s)}),t}rowMin(e){let t;return e.forEach(s=>{(t===void 0||this.rowPositionUtils.before(s,t))&&(t=s)}),t}updateValuesOnMove(e){const t=(0,import_core53._getCtrlForEventTarget)(this.gos,e,import_core53.CellCtrl.DOM_DATA_KEY_CELL_CTRL),s=t?.getCellPosition();if(this.cellHasChanged=!1,!(!s||this.lastCellHovered&&this.cellPositionUtils.equals(s,this.lastCellHovered))){if(t?.isEditing()){this.dragService.cancelDrag(e);return}this.lastCellHovered&&(this.cellHasChanged=!0),this.lastCellHovered=s}}onDragging(e){if(!this.dragging||!e)return;this.updateValuesOnMove(e.target),this.lastMouseEvent=e;const t=this.lastCellHovered,s=a=>t&&t.rowPinned===a&&this.newestRangeStartCell.rowPinned===a,i=s("top")||s("bottom");if(this.autoScrollService.check(e,i),!this.cellHasChanged)return;const r=this.calculateColumnsBetween(this.newestRangeStartCell.column,t.column);r&&(this.draggingRange.endRow={rowIndex:t.rowIndex,rowPinned:t.rowPinned},this.draggingRange.columns=r,this.dispatchChangedEvent(!1,!1,this.draggingRange.id))}onDragStop(){if(!this.dragging)return;const{id:e}=this.draggingRange;this.autoScrollService.ensureCleared(),this.ctrlsService.getGridBodyCtrl().removeScrollEventListener(this.bodyScrollListener),this.lastMouseEvent=null,this.dragging=!1,this.draggingRange=void 0,this.lastCellHovered=void 0,this.intersectionRange&&(this.intersectionRange=!1,this.intersectLastRange()),this.dispatchChangedEvent(!1,!0,e)}dispatchChangedEvent(e,t,s){this.eventService.dispatchEvent({type:"cellSelectionChanged",started:e,finished:t,id:s}),this.eventService.dispatchEvent({type:"rangeSelectionChanged",started:e,finished:t,id:s})}calculateColumnsBetween(e,t){const s=this.visibleColsService.getAllCols(),i=e===t,r=s.indexOf(e),a=h=>(0,import_core53._warnOnce)(`column ${h.getId()} is not visible`);if(r<0){a(e);return}const o=i?r:s.indexOf(t);if(o<0){a(t);return}if(i)return[e];const n=Math.min(r,o),l=n===r?o:r,c=[];for(let h=n;h<=l;h++)c.push(s[h]);return c}},AbstractSelectionHandle=class extends import_core56.Component{constructor(){super(...arguments),this.changedCalculatedValues=!1,this.dragging=!1,this.shouldDestroyOnEndDragging=!1}wireBeans(e){this.dragService=e.dragService,this.rangeService=e.rangeService,this.mouseEventService=e.mouseEventService,this.rowPositionUtils=e.rowPositionUtils,this.cellPositionUtils=e.cellPositionUtils,this.ctrlsService=e.ctrlsService}postConstruct(){this.dragService.addDragSource({dragStartPixels:0,eElement:this.getGui(),onDragStart:this.onDragStart.bind(this),onDragging:e=>{this.dragging=!0,this.rangeService.autoScrollService.check(e),this.changedCalculatedValues&&(this.onDrag(e),this.changedCalculatedValues=!1)},onDragStop:e=>{this.dragging=!1,this.onDragEnd(e),this.clearDragProperties(),this.shouldDestroyOnEndDragging&&this.destroy()},onDragCancel:()=>{this.dragging=!1,this.onDragCancel(),this.clearDragProperties()}}),this.addManagedElementListeners(this.getGui(),{mousedown:this.preventRangeExtension.bind(this)})}isDragging(){return this.dragging}getCellCtrl(){return this.cellCtrl}setCellCtrl(e){this.cellCtrl=e}getCellRange(){return this.cellRange}setCellRange(e){this.cellRange=e}getRangeStartRow(){return this.rangeStartRow}setRangeStartRow(e){this.rangeStartRow=e}getRangeEndRow(){return this.rangeEndRow}setRangeEndRow(e){this.rangeEndRow=e}getLastCellHovered(){return this.lastCellHovered}preventRangeExtension(e){e.stopPropagation()}onDragStart(e){[this.cellHoverListener]=this.addManagedElementListeners(this.ctrlsService.get("gridCtrl").getGui(),{mousemove:this.updateValuesOnMove.bind(this)}),document.body.classList.add(this.getDraggingCssClass())}getDraggingCssClass(){return`ag-dragging-${this.type===import_core56.SelectionHandleType.FILL?"fill":"range"}-handle`}updateValuesOnMove(e){const t=this.mouseEventService.getCellPositionForEvent(e);!t||this.lastCellHovered&&this.cellPositionUtils.equals(t,this.lastCellHovered)||(this.lastCellHovered=t,this.changedCalculatedValues=!0)}clearDragProperties(){this.clearValues(),this.rangeService.autoScrollService.ensureCleared(),document.body.classList.remove(this.getDraggingCssClass())}getType(){return this.type}refresh(e){const t=this.getCellCtrl(),s=this.getGui(),i=(0,import_core56._last)(this.rangeService.getCellRanges()),r=i.startRow,a=i.endRow;if(r&&a&&(this.rowPositionUtils.before(a,r)?(this.setRangeStartRow(a),this.setRangeEndRow(r)):(this.setRangeStartRow(r),this.setRangeEndRow(a))),t!==e||!(0,import_core56._isVisible)(s)){this.setCellCtrl(e);const o=e.getComp().getParentOfValue();o&&o.appendChild(s)}this.setCellRange(i)}clearValues(){this.lastCellHovered=void 0,this.removeListeners()}removeListeners(){this.cellHoverListener&&(this.cellHoverListener(),this.cellHoverListener=void 0)}destroy(){if(!this.shouldDestroyOnEndDragging&&this.isDragging()){(0,import_core56._setDisplayed)(this.getGui(),!1),this.shouldDestroyOnEndDragging=!0;return}this.shouldDestroyOnEndDragging=!1,super.destroy(),this.removeListeners();const e=this.getGui();e.parentElement&&e.parentElement.removeChild(e)}};function findLineByLeastSquares(e){const t=e.length;let s=0;if(t<=1)return e;for(let d=0;d<e.length;d++){const u=e[d],p=u.toString().split("e-");if(p.length>1){s=Math.max(s,parseInt(p[1],10));continue}Math.floor(u)!==u&&(s=Math.max(s,u.toString().split(".")[1].length))}let i=0,r=0,a=0,o=0,n=0;for(let d=0;d<t;d++)n=e[d],i+=d,r+=n,o+=d*d,a+=d*n;const l=(t*a-i*r)/(t*o-i*i),c=r/t-l*i/t,h=[];for(let d=0;d<=t;d++)h.push(parseFloat((d*l+c).toFixed(s)));return h}var AgFillHandle=class extends AbstractSelectionHandle{constructor(){super('<div class="ag-fill-handle"></div>'),this.markedCells=[],this.cellValues=[],this.isUp=!1,this.isLeft=!1,this.isReduce=!1,this.type=import_core55.SelectionHandleType.FILL}wireBeans(e){super.wireBeans(e),this.valueService=e.valueService,this.navigationService=e.navigationService,this.cellNavigationService=e.cellNavigationService,this.visibleColsService=e.visibleColsService}updateValuesOnMove(e){super.updateValuesOnMove(e),this.initialXY||(this.initialXY=this.mouseEventService.getNormalisedPosition(e));const{x:t,y:s}=this.initialXY,{x:i,y:r}=this.mouseEventService.getNormalisedPosition(e),a=Math.abs(t-i),o=Math.abs(s-r),n=this.getFillHandleDirection();let l;n==="xy"?l=a>o?"x":"y":l=n,l!==this.dragAxis&&(this.dragAxis=l,this.changedCalculatedValues=!0)}onDrag(e){if(!this.initialPosition){const s=this.getCellCtrl();if(!s)return;this.initialPosition=s.getCellPosition()}const t=this.getLastCellHovered();t&&this.markPathFrom(this.initialPosition,t)}onDragEnd(e){if(this.initialXY=null,!this.markedCells.length)return;const t=this.dragAxis==="x",s=this.getCellRange(),i=s.columns.length,r=this.getRangeStartRow(),a=this.getRangeEndRow();let o;if(!this.isUp&&!this.isLeft)o=this.rangeService.createCellRangeFromCellRangeParams({rowStartIndex:r.rowIndex,rowStartPinned:r.rowPinned,columnStart:s.columns[0],rowEndIndex:t?a.rowIndex:this.lastCellMarked.rowIndex,rowEndPinned:t?a.rowPinned:this.lastCellMarked.rowPinned,columnEnd:t?this.lastCellMarked.column:s.columns[i-1]});else{const n=t?r:this.lastCellMarked;o=this.rangeService.createCellRangeFromCellRangeParams({rowStartIndex:n.rowIndex,rowStartPinned:n.rowPinned,columnStart:t?this.lastCellMarked.column:s.columns[0],rowEndIndex:a.rowIndex,rowEndPinned:a.rowPinned,columnEnd:s.columns[i-1]})}o&&(this.eventService.dispatchEvent({type:"fillStart"}),this.handleValueChanged(s,o,e),this.rangeService.setCellRanges([o]),this.eventService.dispatchEvent({type:"fillEnd",initialRange:s,finalRange:o}))}onDragCancel(){this.initialXY=null,this.markedCells.length&&this.clearMarkedPath()}getFillHandleDirection(){const e=(0,import_core55._getFillHandle)(this.gos)?.direction;return e?e!=="x"&&e!=="y"&&e!=="xy"?((0,import_core55._warnOnce)("valid values for fillHandleDirection are 'x', 'y' and 'xy'. Default to 'xy'."),"xy"):e:"xy"}handleValueChanged(e,t,s){const i=this.rangeService.getRangeEndRow(e),r=this.rangeService.getRangeStartRow(e),a=this.rangeService.getRangeEndRow(t),o=this.rangeService.getRangeStartRow(t),n=this.dragAxis==="y";if(this.isReduce&&!(0,import_core55._getFillHandle)(this.gos)?.suppressClearOnFillReduction){const f=n?e.columns:e.columns.filter(S=>t.columns.indexOf(S)<0),v=n?this.cellNavigationService.getRowBelow(a):o;v&&this.clearCellsInRange(v,i,f);return}const l=[],c=[],h=[],d=[];let u=!0,p=0;const g=()=>{l.length=0,c.length=0,h.length=0,d.length=0,p=0},m=(f,v)=>{let S=this.isUp?i:r,y=!1;for(n&&(u=!0,g());!y&&S;){const w=this.rowPositionUtils.getRowNode(S);if(!w)break;n&&f?C(l,f,w,()=>!this.rowPositionUtils.sameRow(S,this.isUp?r:i)):v&&(u=!0,g(),v.forEach(x=>C(l,x,w,()=>x!==(this.isLeft?e.columns[0]:(0,import_core55._last)(e.columns))))),y=this.rowPositionUtils.sameRow(S,this.isUp?o:a),S=this.isUp?this.cellNavigationService.getRowAbove(S):this.cellNavigationService.getRowBelow(S)}},C=(f,v,S,y)=>{let w,x=!1;if(u)w=this.valueService.getValue(v,S),c.push(w),h.push(this.valueService.getValue(v,S,void 0,!0)),d.push(this.valueService.formatValue(v,S,w)),u=y();else{const{value:b,fromUserFunction:T,sourceCol:M,sourceRowNode:P}=this.processValues({event:s,values:f,initialValues:c,initialNonAggregatedValues:h,initialFormattedValues:d,col:v,rowNode:S,idx:p++});if(w=b,v.isCellEditable(S)){const R=this.valueService.getValue(v,S);T||(M&&M.getColDef()?.useValueFormatterForExport!==!1&&(w=this.valueService.formatValue(M,P,w)??w),v.getColDef().useValueParserForImport!==!1&&(w=this.valueService.parseValue(v,S,M?w:(0,import_core55._toStringOrNull)(w),R))),!T||R!==w?S.setDataValue(v,w,"rangeService"):x=!0}}x||f.push({value:w,column:v,rowNode:S})};if(n)e.columns.forEach(f=>{m(f)});else{const f=this.isLeft?[...t.columns].reverse():t.columns;m(void 0,f)}}clearCellsInRange(e,t,s){const i={startRow:e,endRow:t,columns:s,startColumn:s[0]};this.rangeService.clearCellRangeCellValues({cellRanges:[i]})}processValues(e){const{event:t,values:s,initialValues:i,initialNonAggregatedValues:r,initialFormattedValues:a,col:o,rowNode:n,idx:l}=e,c=(0,import_core55._getFillHandle)(this.gos)?.setFillValue,h=this.dragAxis==="y";let d;if(h?d=this.isUp?"up":"down":d=this.isLeft?"left":"right",c){const p=this.gos.addGridCommonParams({event:t,values:s.map(({value:m})=>m),initialValues:i,initialNonAggregatedValues:r,initialFormattedValues:a,currentIndex:l,currentCellValue:this.valueService.getValue(o,n),direction:d,column:o,rowNode:n}),g=c(p);if(g!==!1)return{value:g,fromUserFunction:!0}}const u=!s.some(({value:p})=>{const g=parseFloat(p);return isNaN(g)||g.toString()!==p.toString()});if(t.altKey||!u){if(u&&i.length===1){const C=this.isUp||this.isLeft?-1:1;return{value:parseFloat((0,import_core55._last)(s).value)+1*C,fromUserFunction:!1}}const{value:p,column:g,rowNode:m}=s[l%s.length];return{value:p,fromUserFunction:!1,sourceCol:g,sourceRowNode:m}}return{value:(0,import_core55._last)(findLineByLeastSquares(s.map(({value:p})=>Number(p)))),fromUserFunction:!1}}clearValues(){this.clearMarkedPath(),this.clearCellValues(),this.lastCellMarked=void 0,super.clearValues()}clearMarkedPath(){this.markedCells.forEach(e=>{if(!e.isAlive())return;const t=e.getComp();t.addOrRemoveCssClass("ag-selection-fill-top",!1),t.addOrRemoveCssClass("ag-selection-fill-right",!1),t.addOrRemoveCssClass("ag-selection-fill-bottom",!1),t.addOrRemoveCssClass("ag-selection-fill-left",!1)}),this.markedCells.length=0,this.isUp=!1,this.isLeft=!1,this.isReduce=!1}clearCellValues(){this.cellValues.length=0}markPathFrom(e,t){if(this.clearMarkedPath(),this.clearCellValues(),this.dragAxis==="y"){if(this.rowPositionUtils.sameRow(t,e))return;const s=this.rowPositionUtils.before(t,e),i=this.getRangeStartRow(),r=this.getRangeEndRow();s&&(t.rowPinned==i.rowPinned&&t.rowIndex>=i.rowIndex||i.rowPinned!=r.rowPinned&&t.rowPinned==r.rowPinned&&t.rowIndex<=r.rowIndex)?(this.reduceVertical(e,t),this.isReduce=!0):(this.extendVertical(e,t,s),this.isReduce=!1)}else{const s=e.column,i=t.column;if(s===i)return;const r=this.visibleColsService.getAllCols(),a=r.indexOf(s),o=r.indexOf(i);o<=a&&o>=r.indexOf(this.getCellRange().columns[0])?(this.reduceHorizontal(e,t),this.isReduce=!0):(this.extendHorizontal(e,t,o<a),this.isReduce=!1)}this.lastCellMarked=t}extendVertical(e,t,s){const{navigationService:i,rangeService:r}=this;let a=e;do{const o=this.getCellRange(),n=o.columns.length;for(let l=0;l<n;l++){const c=o.columns[l],d={...{rowIndex:a.rowIndex,rowPinned:a.rowPinned},column:c},u=r.isCellInSpecificRange(d,o),p=this.rowPositionUtils.sameRow(a,e);if(s&&(this.isUp=!0),!p){const g=i.getCellByPosition(d);if(g){this.markedCells.push(g);const m=g.getComp();u||(m.addOrRemoveCssClass("ag-selection-fill-left",l===0),m.addOrRemoveCssClass("ag-selection-fill-right",l===n-1)),m.addOrRemoveCssClass(s?"ag-selection-fill-top":"ag-selection-fill-bottom",this.rowPositionUtils.sameRow(a,t))}}}if(this.rowPositionUtils.sameRow(a,t))break}while(a=s?this.cellNavigationService.getRowAbove(a):this.cellNavigationService.getRowBelow(a))}reduceVertical(e,t){let s=e;do{const i=this.getCellRange(),r=i.columns.length,a=this.rowPositionUtils.sameRow(s,t);for(let o=0;o<r;o++){const l={...{rowIndex:s.rowIndex,rowPinned:s.rowPinned},column:i.columns[o]},c=this.navigationService.getCellByPosition(l);c&&(this.markedCells.push(c),c.getComp().addOrRemoveCssClass("ag-selection-fill-bottom",this.rowPositionUtils.sameRow(s,t)))}if(a)break}while(s=this.cellNavigationService.getRowAbove(s))}extendHorizontal(e,t,s){const i=this.visibleColsService.getAllCols(),r=i.indexOf(s?t.column:e.column),a=i.indexOf(s?this.getCellRange().columns[0]:t.column),o=s?0:1,n=i.slice(r+o,a+o),l=this.getRangeStartRow(),c=this.getRangeEndRow();n.forEach(h=>{let d=l,u=!1;do{u=this.rowPositionUtils.sameRow(d,c);const p=this.navigationService.getCellByPosition({rowIndex:d.rowIndex,rowPinned:d.rowPinned,column:h});if(p){this.markedCells.push(p);const g=p.getComp();g.addOrRemoveCssClass("ag-selection-fill-top",this.rowPositionUtils.sameRow(d,l)),g.addOrRemoveCssClass("ag-selection-fill-bottom",this.rowPositionUtils.sameRow(d,c)),s?(this.isLeft=!0,g.addOrRemoveCssClass("ag-selection-fill-left",h===n[0])):g.addOrRemoveCssClass("ag-selection-fill-right",h===(0,import_core55._last)(n))}d=this.cellNavigationService.getRowBelow(d)}while(!u)})}reduceHorizontal(e,t){const s=this.visibleColsService.getAllCols(),i=s.indexOf(t.column),r=s.indexOf(e.column),a=s.slice(i,r),o=this.getRangeStartRow(),n=this.getRangeEndRow();a.forEach(l=>{let c=o,h=!1;do{h=this.rowPositionUtils.sameRow(c,n);const d=this.navigationService.getCellByPosition({rowIndex:c.rowIndex,rowPinned:c.rowPinned,column:l});d&&(this.markedCells.push(d),d.getComp().addOrRemoveCssClass("ag-selection-fill-right",l===a[0])),c=this.cellNavigationService.getRowBelow(c)}while(!h)})}refresh(e){const t=this.rangeService.getCellRanges()[0];if(!t.startRow||!t.endRow){this.destroy();return}super.refresh(e)}},AgRangeHandle=class extends AbstractSelectionHandle{constructor(){super('<div class="ag-range-handle"></div>'),this.type=import_core57.SelectionHandleType.RANGE,this.rangeFixed=!1}onDrag(e){const t=this.getLastCellHovered();if(!t)return;const s=this.rangeService.getCellRanges(),i=(0,import_core57._last)(s);this.rangeFixed||(this.fixRangeStartEnd(i),this.rangeFixed=!0),this.endPosition={rowIndex:t.rowIndex,rowPinned:t.rowPinned,column:t.column},s.length===2&&s[0].type===import_core57.CellRangeType.DIMENSION&&i.type===import_core57.CellRangeType.VALUE&&!this.rowPositionUtils.sameRow(this.endPosition,this.rangeService.getRangeEndRow(i))&&this.rangeService.updateRangeEnd(s[0],{...this.endPosition,column:s[0].columns[0]},!0),this.rangeService.extendLatestRangeToCell(this.endPosition)}onDragEnd(e){const t=(0,import_core57._last)(this.rangeService.getCellRanges());this.fixRangeStartEnd(t),this.rangeFixed=!1}onDragCancel(){this.rangeFixed=!1}fixRangeStartEnd(e){const t=this.rangeService.getRangeStartRow(e),s=this.rangeService.getRangeEndRow(e),i=e.columns[0];e.startRow=t,e.endRow=s,e.startColumn=i}},SelectionHandleFactory=class extends import_core54.BeanStub{constructor(){super(...arguments),this.beanName="selectionHandleFactory"}createSelectionHandle(e){return this.createBean(e===import_core54.SelectionHandleType.RANGE?new AgRangeHandle:new AgFillHandle)}},VERSION3="32.2.2",RangeSelectionCoreModule=(0,import_core51._defineModule)({version:VERSION3,moduleName:`${import_core51.ModuleNames.RangeSelectionModule}-core`,beans:[RangeService,SelectionHandleFactory],dependantModules:[EnterpriseCoreModule]}),RangeSelectionApiModule=(0,import_core51._defineModule)({version:VERSION3,moduleName:`${import_core51.ModuleNames.RangeSelectionModule}-api`,apiFunctions:{getCellRanges,addCellRange,clearRangeSelection,clearCellSelection:clearRangeSelection},dependantModules:[RangeSelectionCoreModule]}),RangeSelectionModule=(0,import_core51._defineModule)({version:VERSION3,moduleName:import_core51.ModuleNames.RangeSelectionModule,dependantModules:[RangeSelectionCoreModule,RangeSelectionApiModule]}),import_core60=require("ag-grid-community"),import_core62=require("ag-grid-community"),import_core63=require("ag-grid-community"),import_core64=require("ag-grid-community"),import_core65=require("ag-grid-community"),import_core67=require("ag-grid-community"),import_core69=require("ag-grid-community"),import_ag_charts_community2=require("ag-charts-community"),import_core71=require("ag-grid-community"),import_ag_charts_community3=require("ag-charts-community"),import_core72=require("ag-grid-community"),import_ag_charts_community4=require("ag-charts-community"),import_core73=require("ag-grid-community"),import_core75=require("ag-grid-community"),import_core76=require("ag-grid-community"),import_core77=require("ag-grid-community"),import_core79=require("ag-grid-community"),import_core81=require("ag-grid-community"),import_core82=require("ag-grid-community"),import_core83=require("ag-grid-community"),import_core84=require("ag-grid-community"),import_ag_charts_community5=require("ag-charts-community"),import_core85=require("ag-grid-community"),import_core87=require("ag-grid-community"),import_ag_charts_community6=require("ag-charts-community"),import_core88=require("ag-grid-community"),import_ag_charts_community7=require("ag-charts-community"),import_core89=require("ag-grid-community"),import_core90=require("ag-grid-community"),import_core91=require("ag-grid-community"),import_core92=require("ag-grid-community"),import_core93=require("ag-grid-community"),import_ag_charts_community8=require("ag-charts-community"),import_ag_charts_community9=require("ag-charts-community"),import_core94=require("ag-grid-community"),import_ag_charts_community10=require("ag-charts-community"),import_core95=require("ag-grid-community"),import_core96=require("ag-grid-community"),import_core98=require("ag-grid-community"),import_core99=require("ag-grid-community"),import_core101=require("ag-grid-community"),import_core102=require("ag-grid-community"),import_core104=require("ag-grid-community"),import_core105=require("ag-grid-community"),import_core107=require("ag-grid-community"),import_core109=require("ag-grid-community"),import_core110=require("ag-grid-community"),import_core112=require("ag-grid-community"),import_core114=require("ag-grid-community"),import_core115=require("ag-grid-community"),import_core117=require("ag-grid-community"),import_core118=require("ag-grid-community"),import_core120=require("ag-grid-community"),import_core122=require("ag-grid-community"),import_core124=require("ag-grid-community"),import_core126=require("ag-grid-community"),import_core128=require("ag-grid-community"),import_core130=require("ag-grid-community"),import_core132=require("ag-grid-community"),import_core133=require("ag-grid-community"),import_core135=require("ag-grid-community"),import_core137=require("ag-grid-community"),import_core139=require("ag-grid-community"),import_core141=require("ag-grid-community"),import_core143=require("ag-grid-community"),import_core145=require("ag-grid-community"),import_core147=require("ag-grid-community"),import_core149=require("ag-grid-community"),import_core151=require("ag-grid-community"),import_core153=require("ag-grid-community"),import_core155=require("ag-grid-community"),import_core156=require("ag-grid-community"),import_core157=require("ag-grid-community"),import_ag_charts_community11=require("ag-charts-community"),import_ag_charts_community12=require("ag-charts-community"),import_core159=require("ag-grid-community"),import_ag_charts_community13=require("ag-charts-community"),import_ag_charts_community14=require("ag-charts-community"),import_ag_charts_community15=require("ag-charts-community"),import_ag_charts_community16=require("ag-charts-community"),import_ag_charts_community17=require("ag-charts-community"),import_ag_charts_community18=require("ag-charts-community"),import_ag_charts_community19=require("ag-charts-community"),import_ag_charts_community20=require("ag-charts-community"),import_ag_charts_community21=require("ag-charts-community"),import_ag_charts_community22=require("ag-charts-community"),import_ag_charts_community23=require("ag-charts-community"),import_ag_charts_community24=require("ag-charts-community"),import_ag_charts_community25=require("ag-charts-community"),import_ag_charts_community26=require("ag-charts-community"),import_ag_charts_community27=require("ag-charts-community"),import_ag_charts_community28=require("ag-charts-community"),import_ag_charts_community29=require("ag-charts-community"),import_ag_charts_community30=require("ag-charts-community"),import_ag_charts_community31=require("ag-charts-community"),import_ag_charts_community32=require("ag-charts-community"),import_ag_charts_community33=require("ag-charts-community"),import_ag_charts_community34=require("ag-charts-community"),import_core160=require("ag-grid-community");__reExport(main_esm_exports,require("ag-charts-community"));var SERIES_TYPES={area:{isCartesian:!0,canInvert:!0},bar:{isCartesian:!0,canInvert:!0},histogram:{isCartesian:!0},line:{isCartesian:!0,canInvert:!0},pie:{isPie:!0},donut:{isPie:!0,canInvert:!0},scatter:{isCartesian:!0},bubble:{isCartesian:!0},"radial-column":{isPolar:!0,isEnterprise:!0,isRadial:!0,canInvert:!0},"radial-bar":{isPolar:!0,isEnterprise:!0,isRadial:!0,canInvert:!0},"radar-line":{isPolar:!0,isEnterprise:!0,canInvert:!0},"radar-area":{isPolar:!0,isEnterprise:!0,canInvert:!0},nightingale:{isPolar:!0,isEnterprise:!0,canInvert:!0},"range-bar":{isCartesian:!0,isEnterprise:!0,canSwitchDirection:!0},"range-area":{isCartesian:!0,isEnterprise:!0},"box-plot":{isCartesian:!0,isEnterprise:!0,canSwitchDirection:!0},treemap:{isEnterprise:!0,isHierarchical:!0},sunburst:{isEnterprise:!0,isHierarchical:!0},heatmap:{isCartesian:!0,isEnterprise:!0},waterfall:{isCartesian:!0,isEnterprise:!0,canSwitchDirection:!0}};function isSeriesType(e){return!!SERIES_TYPES[e]}function isComboChart(e){return import_core63.ChartMappings.COMBO_CHART_TYPES.includes(e)}function doesSeriesHaveProperty(e,t){return!!SERIES_TYPES[e]?.[t]}function isEnterpriseChartType(e){return doesSeriesHaveProperty(getSeriesType(e),"isEnterprise")}var stackedChartTypes=new Set(["stackedColumn","normalizedColumn","stackedBar","normalizedBar"]);function isStacked(e){return stackedChartTypes.has(e)}function isCartesian(e){return doesSeriesHaveProperty(e,"isCartesian")}function isPolar(e){return doesSeriesHaveProperty(e,"isPolar")}function isRadial(e){return doesSeriesHaveProperty(e,"isRadial")}function isHierarchical(e){return doesSeriesHaveProperty(e,"isHierarchical")}function getCanonicalChartType(e){return e==="doughnut"?"donut":e}function getSeriesTypeIfExists(e){return import_core63.ChartMappings.CHART_TYPE_TO_SERIES_TYPE[e]}function getSeriesType(e){return getSeriesTypeIfExists(e)??"line"}function isPieChartSeries(e){return doesSeriesHaveProperty(e,"isPie")}function canOnlyHaveSingleSeries(e){return e==="pie"||e==="waterfall"||e==="histogram"}function getMaxNumCategories(e){return isHierarchical(getSeriesType(e))?void 0:1}function getMaxNumSeries(e){return isHierarchical(getSeriesType(e))?2:canOnlyHaveSingleSeries(e)?1:void 0}function supportsInvertedCategorySeries(e){return!isComboChart(e)&&doesSeriesHaveProperty(getSeriesType(e),"canInvert")}function canSwitchDirection(e){return doesSeriesHaveProperty(getSeriesType(e),"canSwitchDirection")}function getFullChartNameTranslationKey(e){switch(e){case"groupedColumn":case"stackedColumn":case"normalizedColumn":case"groupedBar":case"stackedBar":case"normalizedBar":case"stackedArea":case"normalizedArea":return`${e}Full`;case"doughnut":return"donut";case"areaColumnCombo":return"AreaColumnCombo";default:return e}}var ChartPanelFeature=class extends import_core64.BeanStub{constructor(e,t,s,i){super(),this.chartController=e,this.eGui=t,this.cssClass=s,this.createPanels=i,this.panels=[]}postConstruct(){this.addManagedListeners(this.chartController,{chartUpdated:()=>this.refreshPanels(!0),chartApiUpdate:()=>this.refreshPanels(!1)})}addComponent(e){this.createBean(e),this.panels.push(e),e.addCssClass(this.cssClass),this.eGui.appendChild(e.getGui())}refreshPanels(e){const t=this.chartController.getChartType(),s=this.chartController.isGrouping(),i=getSeriesType(t);e&&t===this.chartType&&s===this.isGrouping||(this.destroyPanels(),this.createPanels(t,i),this.chartType=t,this.isGrouping=s)}destroyPanels(){this.panels.forEach(e=>{(0,import_core64._removeFromParent)(e.getGui()),this.destroyBean(e)}),this.panels=[]}destroy(){this.destroyPanels(),super.destroy()}},AnimationPanel=class extends import_core65.Component{constructor(e){super(),this.chartMenuParamsFactory=e}wireBeans(e){this.chartTranslationService=e.chartTranslationService}postConstruct(){const e=this.chartMenuParamsFactory.addEnableParams("animation.enabled",{cssIdentifier:"charts-advanced-settings-top-level",direction:"vertical",suppressOpenCloseIcons:!0,title:this.chartTranslationService.translate("animation"),suppressEnabledCheckbox:!0,useToggle:!0}),t=this.chartMenuParamsFactory.getDefaultNumberInputParams("animation.duration","durationMillis",{min:0});this.setTemplate(`<div>
|
|
135
|
+
</div>`),this.eList=import_core37.RefPlaceholder,this.eApplyFilterButton=import_core37.RefPlaceholder,this.eCancelFilterButton=import_core37.RefPlaceholder,this.validationMessage=null}wireBeans(e){this.filterManager=e.filterManager,this.advancedFilterService=e.advancedFilterService,this.advancedFilterExpressionService=e.advancedFilterExpressionService}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 AdvancedFilterBuilderDragFeature(this,this.virtualList)),this.setupButtons()}refresh(){let e=this.virtualList.getLastFocusedRow();this.setupFilterModel(),this.validateItems(),this.refreshList(!1),e!=null&&(this.virtualList.getComponentAt(e)||(e=0),this.virtualList.focusRow(e))}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(){this.virtualList=this.createManagedBean(new VirtualList({cssIdentifier:"advanced-filter-builder",ariaRole:"tree",listName:this.advancedFilterExpressionService.translate("ariaAdvancedFilterBuilderList")})),this.virtualList.setComponentCreator(this.createItemComponent.bind(this)),this.virtualList.setComponentUpdater(this.updateItemComponent.bind(this)),this.virtualList.setRowHeight(40),this.eList.appendChild(this.virtualList.getGui()),this.virtualList.setModel({getRowCount:()=>this.items.length,getRow:e=>this.items[e],areRowsEqual:(e,t)=>e===t}),this.buildList(),this.virtualList.refresh()}setupButtons(){this.eApplyFilterButton.innerText=this.advancedFilterExpressionService.translate("advancedFilterBuilderApply"),this.activateTabIndex([this.eApplyFilterButton]),this.addManagedElementListeners(this.eApplyFilterButton,{click:()=>{this.advancedFilterService.setModel(this.filterModel),this.filterManager?.onFilterChanged({source:"advancedFilter"}),this.close()}}),this.validationTooltipFeature=this.createManagedBean(new import_core37.TooltipFeature({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.advancedFilterExpressionService.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 o;r?o=0:(o=a.conditions.indexOf(i.filterModel),o===-1?o=a.conditions.length:s==="bottom"&&(o+=1)),a.conditions.splice(o,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.advancedFilterService.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=(n,l)=>{const h=this.items.find(d=>d.filterModel===n)?.parent;if(h){const{conditions:d}=h;i(h,l),l.push(d[d.length-1]===n)}},r=[],{filterModel:a}=e;a&&(i(a,r),r[0]=!1);const o=a?.filterType==="join"&&!!a.conditions.length;t.setState({disableMoveUp:s===1,disableMoveDown:!this.canMoveDown(e,s),treeLines:r,showStartTreeLine:o})}createItemComponent(e,t){const s=this.createBean(e.filterModel?new AdvancedFilterBuilderItemComp(e,this.dragFeature,t):new AdvancedFilterBuilderItemAddComp(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 AdvancedFilterBuilderItemComp&&this.updateItemComponent(e,s),s}addItem(e,t){const{parent:s,level:i,filterModel:r}=e,a=r?.filterType==="join",o=t?{filterType:"join",type:"AND",conditions:[]}:{},n=a?r:s;let l=a?0:n.conditions.indexOf(r);l>=0?(a||(l+=1),n.conditions.splice(l,0,o)):n.conditions.push(o);let c=this.items.indexOf(e);const h=c>=0;if(h){e.filterModel&&c++;const d=[{filterModel:o,level:a?i+1:i,parent:n,valid:t,showMove:this.showMove}];this.items.splice(c,0,...d)}this.refreshList(h),h&&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),o=!r&&a>=0;o&&this.items.splice(a,1),this.refreshList(o),a>=0&&this.virtualList.focusRow(a)}moveItemUpDown(e,t){const s=this.items.indexOf(e),i=t?s-1:s+1;if(i===0||!t&&!this.canMoveDown(e,s))return;const r=this.items[i],a=this.removeItemFromParent(e),{level:o,filterModel:n,parent:l}=e,{level:c,filterModel:h,parent:d}=r;if(t)if(c===o&&h.filterType==="join")h.conditions.push(n);else if(c<=o){const p=d.conditions.indexOf(h);d.conditions.splice(p,0,n)}else l.conditions[a-1].conditions.push(n);else if(c===o)if(h.filterType==="join")h.conditions.splice(0,0,n);else{const p=d.conditions.indexOf(h);d.conditions.splice(p+1,0,n)}else if(a<l.conditions.length)l.conditions.splice(a+1,0,n);else{const p=this.items.find(m=>m.filterModel===l),g=p.parent.conditions.indexOf(p.filterModel)+1;p.parent.conditions.splice(g,0,n)}this.refreshList(!1);const u=this.items.findIndex(({filterModel:p})=>p===n);if(u>=0){const p=this.virtualList.getComponentAt(u);p instanceof AdvancedFilterBuilderItemComp&&p.focusMoveButton(t)}}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.advancedFilterService.getCtrl().toggleFilterBuilder({source:"ui"})}validate(){let e=!this.items.every(({valid:t})=>t);e?this.validationMessage=this.advancedFilterExpressionService.translate("advancedFilterBuilderValidationIncomplete"):(e=JSON.stringify(this.filterModel)===this.stringifiedModel,e?this.validationMessage=this.advancedFilterExpressionService.translate("advancedFilterBuilderValidationAlreadyApplied"):this.validationMessage=null),(0,import_core37._setDisabled)(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.advancedFilterExpressionService.getColumnAutocompleteEntries().find(({key:c})=>c===r),o=this.advancedFilterExpressionService.getColumnDetails(i.colId);if(!a||!o.column){s.valid=!1,i.colId=void 0,e(i),t(i);return}const l=this.advancedFilterExpressionService.getDataTypeExpressionOperator(o.baseCellDataType).operators[i.type];if(!l){s.valid=!1,e(i),t(i);return}if(l.numOperands>0&&!(0,import_core37._exists)(i.filter)){s.valid=!1;return}})}},AdvancedFilterCtrl=class extends import_core29.BeanStub{constructor(e){super(),this.enabled=e}wireBeans(e){this.ctrlsService=e.ctrlsService,this.popupService=e.popupService,this.advancedFilterExpressionService=e.advancedFilterExpressionService,this.environment=e.environment}postConstruct(){this.hasAdvancedFilterParent=!!this.gos.get("advancedFilterParent"),this.ctrlsService.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 AdvancedFilterHeaderComp(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:o}=this.getBuilderDialogSize();this.eBuilderComp=this.createBean(new AdvancedFilterBuilderComp),this.eBuilderDialog=this.createBean(new AgDialog({title:this.advancedFilterExpressionService.translate("advancedFilterBuilderTitle"),component:this.eBuilderComp,width:r,height:a,resizable:!0,movable:!0,maximizable:!0,centered:!0,closable:!0,minWidth:o,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.eventService.dispatchEvent({type:"advancedFilterBuilderVisibleChanged",source:e,visible:t})}getBuilderDialogSize(){const e=this.gos.get("advancedFilterBuilderParams")?.minWidth??500,t=this.popupService.getPopupParent(),s=Math.round((0,import_core29._getAbsoluteWidth)(t))-2,i=Math.round((0,import_core29._getAbsoluteHeight)(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.eventService.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 AdvancedFilterComp),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&&((0,import_core29._removeFromParent)(this.eFilterComp.getGui()),this.destroyBean(this.eFilterComp))}},OperatorParser2=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=getSearchString(r,e,a==null?this.params.expression.length:a+1)}let i=this.params.advancedFilterExpressionService.getJoinOperatorAutocompleteEntries();return(t||t==null&&this.activeOperator)&&(i=i.filter(({key:r})=>r===this.parsedOperator)),this.params.advancedFilterExpressionService.generateAutocompleteListParams(i,"join",s)}updateExpression(e,t,s){let{expression:i}=this.params;const r=t.displayValue??t.key;if(s===0)for(let n=this.operatorEndPositions.length-1;n>0;n--){const l=this.operatorEndPositions[n];l!=null&&(i=updateExpression(i,this.operatorStartPositions[n],l,r).updatedValue)}const a=this.operatorStartPositions.length>s?this.operatorStartPositions[s]:e,o=(this.operatorEndPositions.length>s?this.operatorEndPositions[s]:void 0)??findEndPosition(i,e,!0).endPosition;return updateExpression(i,a,o,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.advancedFilterExpressionService.getExpressionJoinOperators(),i=findMatch(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.advancedFilterExpressionService.translate("advancedFilterValidationJoinOperatorMismatch"),startPosition:e-t.length+1,endPosition:e}),!1}else this.parsedOperator=i;return t!==r&&(checkAndUpdateExpression(this.params,t,r,e),this.operators[this.activeOperator]=r),!0}else return i===null?!1:(this.validationError||(this.validationError={message:this.params.advancedFilterExpressionService.translate("advancedFilterValidationInvalidJoinOperator"),startPosition:e-t.length+1,endPosition:e}),!0)}},JoinFilterExpressionParser=class j{constructor(t,s){this.params=t,this.startPosition=s,this.expectingExpression=!0,this.expectingOperator=!1,this.expressionParsers=[],this.operatorParser=new OperatorParser2(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 j(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 ColFilterExpressionParser(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.advancedFilterExpressionService.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.advancedFilterExpressionService.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,o,n)=>i[r](l=>l(a,o,n))}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.advancedFilterExpressionService.getColumnValue(s):s.displayValue??s.key;return updateExpression(r,this.startPosition,this.startPosition,l,!0)}const n=this.expressionParsers[a].updateExpression(t,s,i);return n??(i==="column"?updateExpression(r,t,r.length-1,this.params.advancedFilterExpressionService.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.advancedFilterExpressionService.generateAutocompleteListParams(this.params.advancedFilterExpressionService.getColumnAutocompleteEntries(),"column","")}getExpressionParserIndex(t){let s;for(let i=0;i<this.expressionParsers.length&&!(this.expressionParsers[i].startPosition>t);i++)s=i;return s}},FilterExpressionParser=class{constructor(e){this.params=e,this.valid=!1}parseExpression(){this.joinExpressionParser=new JoinFilterExpressionParser(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.advancedFilterExpressionService.translate("advancedFilterValidationMessage",[t,this.params.expression.slice(s,i+1).trim()]):this.params.advancedFilterExpressionService.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:[]}}},AdvancedFilterService=class extends import_core28.BeanStub{constructor(){super(...arguments),this.beanName="advancedFilterService",this.appliedExpression=null,this.expression=null,this.isValid=!0}wireBeans(e){this.valueService=e.valueService,this.columnModel=e.columnModel,this.dataTypeService=e.dataTypeService,this.advancedFilterExpressionService=e.advancedFilterExpressionService}postConstruct(){this.setEnabled(this.gos.get("enableAdvancedFilter"),!0),this.ctrl=this.createManagedBean(new AdvancedFilterCtrl(this.enabled)),this.expressionProxy={getValue:(e,t)=>{const s=this.columnModel.getColDefCol(e);return s?this.valueService.getValue(s,t,!0):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.advancedFilterExpressionService.parseJoinOperator(i),o=i.conditions.map(n=>t(n)).filter(n=>(0,import_core28._exists)(n)).join(` ${a} `);return r||i.conditions.length<=1?o:`(${o})`}else return this.advancedFilterExpressionService.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 FilterExpressionParser({expression:e,columnModel:this.columnModel,dataTypeService:this.dataTypeService,valueService:this.valueService,advancedFilterExpressionService:this.advancedFilterExpressionService}):null}getDefaultExpression(e){const t=this.advancedFilterExpressionService.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=(0,import_core28._isClientSideRowModel)(this.gos)||(0,import_core28._isServerSideRowModel)(this.gos);e&&!i&&(0,import_core28._warnOnce)("Advanced Filter is only supported with the Client-Side Row Model or Server-Side Row Model."),this.enabled=e&&i,!t&&this.enabled!==s&&this.eventService.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.advancedFilterExpressionService.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.dataTypeService?.isPendingInference())return;this.ctrl.setInputDisabled(!0);const[t]=this.addManagedEventListeners({dataTypesInferred:()=>{t?.(),this.ctrl.setInputDisabled(!1)}})}},VERSION2="32.3.0",AdvancedFilterCoreModule=(0,import_core25._defineModule)({version:VERSION2,moduleName:`${import_core25.ModuleNames.AdvancedFilterModule}-core`,beans:[AdvancedFilterService,AdvancedFilterExpressionService],dependantModules:[EnterpriseCoreModule,import_core25._FilterCoreModule]}),AdvancedFilterApiModule=(0,import_core25._defineModule)({version:VERSION2,moduleName:`${import_core25.ModuleNames.AdvancedFilterModule}-api`,apiFunctions:{getAdvancedFilterModel,setAdvancedFilterModel,showAdvancedFilterBuilder,hideAdvancedFilterBuilder},dependantModules:[AdvancedFilterCoreModule]}),AdvancedFilterModule=(0,import_core25._defineModule)({version:VERSION2,moduleName:import_core25.ModuleNames.AdvancedFilterModule,dependantModules:[AdvancedFilterCoreModule,AdvancedFilterApiModule]}),main_esm_exports={};__export(main_esm_exports,{GridChartsModule:()=>GridChartsModule,agCharts:()=>agCharts});var import_ag_charts_community=require("ag-charts-community"),import_core58=require("ag-grid-community"),import_core51=require("ag-grid-community"),import_core53=require("ag-grid-community"),import_core54=require("ag-grid-community"),import_core55=require("ag-grid-community"),import_core56=require("ag-grid-community"),import_core57=require("ag-grid-community");function getCellRanges(e){return e.rangeService?.getCellRanges()??null}function addCellRange(e,t){e.rangeService?.addCellRange(t)}function clearRangeSelection(e){e.rangeService?.removeAllCellRanges()}var RangeService=class extends import_core53.BeanStub{constructor(){super(...arguments),this.beanName="rangeService",this.cellRanges=[],this.bodyScrollListener=this.onBodyScroll.bind(this),this.dragging=!1,this.intersectionRange=!1}wireBeans(e){this.rowModel=e.rowModel,this.dragService=e.dragService,this.columnModel=e.columnModel,this.visibleColsService=e.visibleColsService,this.cellNavigationService=e.cellNavigationService,this.pinnedRowModel=e.pinnedRowModel,this.rowPositionUtils=e.rowPositionUtils,this.cellPositionUtils=e.cellPositionUtils,this.ctrlsService=e.ctrlsService,this.valueService=e.valueService}postConstruct(){const e=this.onColumnsChanged.bind(this),t=()=>this.removeAllCellRanges(),s=this.refreshLastRangeStart.bind(this);this.addManagedEventListeners({newColumnsLoaded:e,columnVisible:e,columnValueChanged:e,columnPivotModeChanged:t,columnRowGroupChanged:t,columnPivotChanged:t,columnGroupOpened:s,columnMoved:s,columnPinned:s}),this.ctrlsService.whenReady(this,i=>{const r=i.gridBodyCtrl;this.autoScrollService=new import_core53.AutoScrollService({scrollContainer:r.getBodyViewportElement(),scrollAxis:"xy",getVerticalPosition:()=>r.getScrollFeature().getVScrollPosition().top,setVerticalPosition:a=>r.getScrollFeature().setVerticalScrollPosition(a),getHorizontalPosition:()=>r.getScrollFeature().getHScrollPosition().left,setHorizontalPosition:a=>r.getScrollFeature().setHorizontalScrollPosition(a),shouldSkipVerticalScroll:()=>!(0,import_core53._isDomLayout)(this.gos,"normal"),shouldSkipHorizontalScroll:()=>!r.getScrollFeature().isHorizontalScrollShowing()})})}onColumnsChanged(){this.refreshLastRangeStart();const e=this.visibleColsService.getAllCols();this.cellRanges.forEach(s=>{const i=s.columns;s.columns=s.columns.filter(a=>a.isVisible()&&e.indexOf(a)!==-1),!(0,import_core53._areEqual)(i,s.columns)&&this.dispatchChangedEvent(!1,!0,s.id)});const t=this.cellRanges.length;this.cellRanges=this.cellRanges.filter(s=>s.columns.length>0),t>this.cellRanges.length&&this.dispatchChangedEvent(!1,!0)}refreshLastRangeStart(){const e=(0,import_core53._last)(this.cellRanges);e&&this.refreshRangeStart(e)}isContiguousRange(e){const t=e.columns;if(!t.length)return!1;const s=this.visibleColsService.getAllCols(),i=t.map(r=>s.indexOf(r)).sort((r,a)=>r-a);return(0,import_core53._last)(i)-i[0]+1===t.length}getRangeStartRow(e){return e.startRow&&e.endRow?this.rowPositionUtils.before(e.startRow,e.endRow)?e.startRow:e.endRow:{rowIndex:0,rowPinned:this.pinnedRowModel.getPinnedTopRowCount()>0?"top":null}}getRangeEndRow(e){if(e.startRow&&e.endRow)return this.rowPositionUtils.before(e.startRow,e.endRow)?e.endRow:e.startRow;const t=this.pinnedRowModel.getPinnedBottomRowCount();return t>0?{rowIndex:t-1,rowPinned:"bottom"}:{rowIndex:this.rowModel.getRowCount()-1,rowPinned:null}}setRangeToCell(e,t=!1){if(!(0,import_core53._isCellSelectionEnabled)(this.gos))return;const s=this.calculateColumnsBetween(e.column,e.column);if(!s)return;((0,import_core53._getSuppressMultiRanges)(this.gos)||!t||(0,import_core53._missing)(this.cellRanges))&&this.removeAllCellRanges(!0);const r={rowIndex:e.rowIndex,rowPinned:e.rowPinned},a={startRow:r,endRow:r,columns:s,startColumn:e.column};this.cellRanges.push(a),this.setNewestRangeStartCell(e),this.onDragStop(),this.dispatchChangedEvent(!0,!0)}extendLatestRangeToCell(e){if(this.isEmpty()||!this.newestRangeStartCell)return;const t=(0,import_core53._last)(this.cellRanges);this.updateRangeEnd(t,e)}updateRangeEnd(e,t,s=!1){const i=t.column,r=this.calculateColumnsBetween(e.startColumn,i);!r||this.isLastCellOfRange(e,t)||(e.columns=r,e.endRow={rowIndex:t.rowIndex,rowPinned:t.rowPinned},s||this.dispatchChangedEvent(!0,!0,e.id))}refreshRangeStart(e){const{startColumn:t,columns:s}=e,i=(l,c)=>{const h=e.columns.filter(d=>d!==l);l?(e.startColumn=l,e.columns=c?[l,...h]:[...h,l]):e.columns=h},{left:r,right:a}=this.getRangeEdgeColumns(e);if(t===s[0]&&t!==r){i(r,!0);return}if(t===(0,import_core53._last)(s)&&t===a){i(a,!1);return}}getRangeEdgeColumns(e){const t=this.visibleColsService.getAllCols(),s=e.columns.map(i=>t.indexOf(i)).filter(i=>i>-1).sort((i,r)=>i-r);return{left:t[s[0]],right:t[(0,import_core53._last)(s)]}}extendLatestRangeInDirection(e){if(this.isEmpty()||!this.newestRangeStartCell)return;const t=e.key,s=e.ctrlKey||e.metaKey,i=(0,import_core53._last)(this.cellRanges),r=this.newestRangeStartCell,a=i.columns[0],o=(0,import_core53._last)(i.columns),n=i.endRow.rowIndex,l=i.endRow.rowPinned,h={column:r.column===a?o:a,rowIndex:n,rowPinned:l},d=this.cellNavigationService.getNextCellToFocus(t,h,s);if(d)return this.setCellRange({rowStartIndex:r.rowIndex,rowStartPinned:r.rowPinned,rowEndIndex:d.rowIndex,rowEndPinned:d.rowPinned,columnStart:r.column,columnEnd:d.column}),d}setCellRange(e){(0,import_core53._isCellSelectionEnabled)(this.gos)&&(this.removeAllCellRanges(!0),this.addCellRange(e))}setCellRanges(e){(0,import_core53._shallowCompare)(this.cellRanges,e)||(this.removeAllCellRanges(!0),e.forEach(t=>{t.columns&&t.startRow&&this.setNewestRangeStartCell({rowIndex:t.startRow.rowIndex,rowPinned:t.startRow.rowPinned,column:t.columns[0]}),this.cellRanges.push(t)}),this.dispatchChangedEvent(!1,!0))}setNewestRangeStartCell(e){this.newestRangeStartCell=e}clearCellRangeCellValues(e){let{cellRanges:t}=e;const{cellEventSource:s="rangeService",dispatchWrapperEvents:i,wrapperEventSource:r="deleteKey"}=e;i&&(this.eventService.dispatchEvent({type:"cellSelectionDeleteStart",source:r}),this.eventService.dispatchEvent({type:"rangeDeleteStart",source:r})),t||(t=this.cellRanges),t.forEach(a=>{this.forEachRowInRange(a,o=>{const n=this.rowPositionUtils.getRowNode(o);if(n)for(let l=0;l<a.columns.length;l++){const c=this.columnModel.getCol(a.columns[l]);if(!c||!c.isCellEditable(n))continue;const h=this.valueService.getDeleteValue(c,n);n.setDataValue(c,h,s)}})}),i&&(this.eventService.dispatchEvent({type:"cellSelectionDeleteEnd",source:r}),this.eventService.dispatchEvent({type:"rangeDeleteEnd",source:r}))}createCellRangeFromCellRangeParams(e){return this.createPartialCellRangeFromRangeParams(e,!1)}createPartialCellRangeFromRangeParams(e,t){let s,i=!1;if(e.columns)s=e.columns.map(o=>this.columnModel.getCol(o)).filter(o=>o);else{const o=this.columnModel.getCol(e.columnStart),n=this.columnModel.getCol(e.columnEnd);if(!o||!n)return;s=this.calculateColumnsBetween(o,n),s&&s.length&&(i=s[0]!==o)}if(!s||!t&&s.length===0)return;const r=e.rowStartIndex!=null?{rowIndex:e.rowStartIndex,rowPinned:e.rowStartPinned||null}:void 0,a=e.rowEndIndex!=null?{rowIndex:e.rowEndIndex,rowPinned:e.rowEndPinned||null}:void 0;return{startRow:r,endRow:a,columns:s,startColumn:i?(0,import_core53._last)(s):s[0]}}addCellRange(e){const t=this.gos;if(!(0,import_core53._isCellSelectionEnabled)(t))return;if((0,import_core53._isUsingNewCellSelectionAPI)(t)&&(0,import_core53._getSuppressMultiRanges)(t)&&this.cellRanges.length>0)return(0,import_core53._warnOnce)("cannot add multiple ranges when `cellSelection.suppressMultiRanges = true`");const s=this.createCellRangeFromCellRangeParams(e);s&&(s.startRow&&this.setNewestRangeStartCell({rowIndex:s.startRow.rowIndex,rowPinned:s.startRow.rowPinned,column:s.startColumn}),this.cellRanges.push(s),this.dispatchChangedEvent(!1,!0,s.id))}getCellRanges(){return this.cellRanges}isEmpty(){return this.cellRanges.length===0}isMoreThanOneCell(){const e=this.cellRanges.length;if(e===0)return!1;if(e>1)return!0;const t=this.cellRanges[0],s=this.getRangeStartRow(t),i=this.getRangeEndRow(t);return s.rowPinned!==i.rowPinned||s.rowIndex!==i.rowIndex||t.columns.length!==1}areAllRangesAbleToMerge(){const e=new Map;if(this.cellRanges.length<=1)return!0;this.cellRanges.forEach(i=>{this.forEachRowInRange(i,r=>{const a=`${r.rowPinned||"normal"}_${r.rowIndex}`,o=e.get(a),n=i.columns.map(l=>l.getId());if(o){const l=n.filter(c=>o.indexOf(c)===-1);o.push(...l)}else e.set(a,n)})});let s;for(const i of e.values()){const r=i.sort().join();if(s===void 0){s=r;continue}if(s!==r)return!1}return!0}forEachRowInRange(e,t){const s=this.getRangeStartRow(e),i=this.getRangeEndRow(e);let r=s;for(;r&&(t(r),!this.rowPositionUtils.sameRow(r,i));)r=this.cellNavigationService.getRowBelow(r)}removeAllCellRanges(e){this.isEmpty()||(this.onDragStop(),this.cellRanges.length=0,e||this.dispatchChangedEvent(!1,!0))}onBodyScroll(){this.dragging&&this.lastMouseEvent&&this.onDragging(this.lastMouseEvent)}isCellInAnyRange(e){return this.getCellRangeCount(e)>0}isCellInSpecificRange(e,t){const s=t.columns!==null&&(0,import_core53._includes)(t.columns,e.column),i=this.isRowInRange(e.rowIndex,e.rowPinned,t);return s&&i}isLastCellOfRange(e,t){const{startRow:s,endRow:i}=e,r=this.rowPositionUtils.before(s,i)?i:s,a=t.rowIndex===r.rowIndex&&t.rowPinned===r.rowPinned,o=e.columns[0],n=(0,import_core53._last)(e.columns),l=e.startColumn===o?n:o;return t.column===l&&a}isBottomRightCell(e,t){const s=this.visibleColsService.getAllCols(),i=e.columns.map(c=>s.indexOf(c)).sort((c,h)=>c-h),{startRow:r,endRow:a}=e,o=this.rowPositionUtils.before(r,a)?a:r,n=s.indexOf(t.column)===(0,import_core53._last)(i),l=t.rowIndex===o.rowIndex&&(0,import_core53._makeNull)(t.rowPinned)===(0,import_core53._makeNull)(o.rowPinned);return n&&l}getCellRangeCount(e){return this.isEmpty()?0:this.cellRanges.filter(t=>this.isCellInSpecificRange(e,t)).length}isRowInRange(e,t,s){const i=this.getRangeStartRow(s),r=this.getRangeEndRow(s),a={rowIndex:e,rowPinned:t||null},o=a.rowIndex===i.rowIndex&&a.rowPinned==i.rowPinned,n=a.rowIndex===r.rowIndex&&a.rowPinned==r.rowPinned;if(o||n)return!0;const l=!this.rowPositionUtils.before(a,i),c=this.rowPositionUtils.before(a,r);return l&&c}getDraggingRange(){return this.draggingRange}onDragStart(e){if(!(0,import_core53._isCellSelectionEnabled)(this.gos))return;const{ctrlKey:t,metaKey:s,shiftKey:i}=e,r=t||s,o=!(0,import_core53._getSuppressMultiRanges)(this.gos)?r:!1,n=i&&(0,import_core53._existsAndNotEmpty)(this.cellRanges);!o&&(!n||(0,import_core53._exists)((0,import_core53._last)(this.cellRanges).type))&&this.removeAllCellRanges(!0);const l=this.dragService.getStartTarget();if(l&&this.updateValuesOnMove(l),!!this.lastCellHovered){if(this.dragging=!0,this.lastMouseEvent=e,this.intersectionRange=o&&this.getCellRangeCount(this.lastCellHovered)>1,n||this.setNewestRangeStartCell(this.lastCellHovered),this.cellRanges.length>0)this.draggingRange=(0,import_core53._last)(this.cellRanges);else{const c={rowIndex:this.lastCellHovered.rowIndex,rowPinned:this.lastCellHovered.rowPinned};this.draggingRange={startRow:c,endRow:c,columns:[this.lastCellHovered.column],startColumn:this.newestRangeStartCell.column},this.cellRanges.push(this.draggingRange)}this.ctrlsService.getGridBodyCtrl().addScrollEventListener(this.bodyScrollListener),this.dispatchChangedEvent(!0,!1,this.draggingRange.id)}}intersectLastRange(e){if(e&&this.dragging||(0,import_core53._getSuppressMultiRanges)(this.gos)||this.isEmpty())return;const t=this.rowPositionUtils,s=(0,import_core53._last)(this.cellRanges),i=this.getRangeStartRow(s),r=this.getRangeEndRow(s),a=[];this.cellRanges.slice(0,-1).forEach(o=>{const n=this.getRangeStartRow(o),l=this.getRangeEndRow(o),c=o.columns,h=c.filter(u=>s.columns.indexOf(u)===-1);if(h.length===c.length){a.push(o);return}if(t.before(r,n)||t.before(l,i)){a.push(o);return}const d=a.length;if(t.before(n,i)){const u={columns:[...c],startColumn:s.startColumn,startRow:{...n},endRow:this.cellNavigationService.getRowAbove(i)};a.push(u)}if(h.length>0){const u={columns:h,startColumn:(0,import_core53._includes)(h,s.startColumn)?s.startColumn:h[0],startRow:this.rowMax([{...i},{...n}]),endRow:this.rowMin([{...r},{...l}])};a.push(u)}t.before(r,l)&&a.push({columns:[...c],startColumn:s.startColumn,startRow:this.cellNavigationService.getRowBelow(r),endRow:{...l}}),a.length-d===1&&(a[a.length-1].id=o.id)}),this.cellRanges=a,e&&this.dispatchChangedEvent(!1,!0)}rowMax(e){let t;return e.forEach(s=>{(t===void 0||this.rowPositionUtils.before(t,s))&&(t=s)}),t}rowMin(e){let t;return e.forEach(s=>{(t===void 0||this.rowPositionUtils.before(s,t))&&(t=s)}),t}updateValuesOnMove(e){const t=(0,import_core53._getCtrlForEventTarget)(this.gos,e,import_core53.CellCtrl.DOM_DATA_KEY_CELL_CTRL),s=t?.getCellPosition();if(this.cellHasChanged=!1,!(!s||this.lastCellHovered&&this.cellPositionUtils.equals(s,this.lastCellHovered))){if(t?.isEditing()){this.dragService.cancelDrag(e);return}this.lastCellHovered&&(this.cellHasChanged=!0),this.lastCellHovered=s}}onDragging(e){if(!this.dragging||!e)return;this.updateValuesOnMove(e.target),this.lastMouseEvent=e;const t=this.lastCellHovered,s=a=>t&&t.rowPinned===a&&this.newestRangeStartCell.rowPinned===a,i=s("top")||s("bottom");if(this.autoScrollService.check(e,i),!this.cellHasChanged)return;const r=this.calculateColumnsBetween(this.newestRangeStartCell.column,t.column);r&&(this.draggingRange.endRow={rowIndex:t.rowIndex,rowPinned:t.rowPinned},this.draggingRange.columns=r,this.dispatchChangedEvent(!1,!1,this.draggingRange.id))}onDragStop(){if(!this.dragging)return;const{id:e}=this.draggingRange;this.autoScrollService.ensureCleared(),this.ctrlsService.getGridBodyCtrl().removeScrollEventListener(this.bodyScrollListener),this.lastMouseEvent=null,this.dragging=!1,this.draggingRange=void 0,this.lastCellHovered=void 0,this.intersectionRange&&(this.intersectionRange=!1,this.intersectLastRange()),this.dispatchChangedEvent(!1,!0,e)}dispatchChangedEvent(e,t,s){this.eventService.dispatchEvent({type:"cellSelectionChanged",started:e,finished:t,id:s}),this.eventService.dispatchEvent({type:"rangeSelectionChanged",started:e,finished:t,id:s})}calculateColumnsBetween(e,t){const s=this.visibleColsService.getAllCols(),i=e===t,r=s.indexOf(e),a=h=>(0,import_core53._warnOnce)(`column ${h.getId()} is not visible`);if(r<0){a(e);return}const o=i?r:s.indexOf(t);if(o<0){a(t);return}if(i)return[e];const n=Math.min(r,o),l=n===r?o:r,c=[];for(let h=n;h<=l;h++)c.push(s[h]);return c}},AbstractSelectionHandle=class extends import_core56.Component{constructor(){super(...arguments),this.changedCalculatedValues=!1,this.dragging=!1,this.shouldDestroyOnEndDragging=!1}wireBeans(e){this.dragService=e.dragService,this.rangeService=e.rangeService,this.mouseEventService=e.mouseEventService,this.rowPositionUtils=e.rowPositionUtils,this.cellPositionUtils=e.cellPositionUtils,this.ctrlsService=e.ctrlsService}postConstruct(){this.dragService.addDragSource({dragStartPixels:0,eElement:this.getGui(),onDragStart:this.onDragStart.bind(this),onDragging:e=>{this.dragging=!0,this.rangeService.autoScrollService.check(e),this.changedCalculatedValues&&(this.onDrag(e),this.changedCalculatedValues=!1)},onDragStop:e=>{this.dragging=!1,this.onDragEnd(e),this.clearDragProperties(),this.shouldDestroyOnEndDragging&&this.destroy()},onDragCancel:()=>{this.dragging=!1,this.onDragCancel(),this.clearDragProperties()}}),this.addManagedElementListeners(this.getGui(),{mousedown:this.preventRangeExtension.bind(this)})}isDragging(){return this.dragging}getCellCtrl(){return this.cellCtrl}setCellCtrl(e){this.cellCtrl=e}getCellRange(){return this.cellRange}setCellRange(e){this.cellRange=e}getRangeStartRow(){return this.rangeStartRow}setRangeStartRow(e){this.rangeStartRow=e}getRangeEndRow(){return this.rangeEndRow}setRangeEndRow(e){this.rangeEndRow=e}getLastCellHovered(){return this.lastCellHovered}preventRangeExtension(e){e.stopPropagation()}onDragStart(e){[this.cellHoverListener]=this.addManagedElementListeners(this.ctrlsService.get("gridCtrl").getGui(),{mousemove:this.updateValuesOnMove.bind(this)}),document.body.classList.add(this.getDraggingCssClass())}getDraggingCssClass(){return`ag-dragging-${this.type===import_core56.SelectionHandleType.FILL?"fill":"range"}-handle`}updateValuesOnMove(e){const t=this.mouseEventService.getCellPositionForEvent(e);!t||this.lastCellHovered&&this.cellPositionUtils.equals(t,this.lastCellHovered)||(this.lastCellHovered=t,this.changedCalculatedValues=!0)}clearDragProperties(){this.clearValues(),this.rangeService.autoScrollService.ensureCleared(),document.body.classList.remove(this.getDraggingCssClass())}getType(){return this.type}refresh(e){const t=this.getCellCtrl(),s=this.getGui(),i=(0,import_core56._last)(this.rangeService.getCellRanges()),r=i.startRow,a=i.endRow;if(r&&a&&(this.rowPositionUtils.before(a,r)?(this.setRangeStartRow(a),this.setRangeEndRow(r)):(this.setRangeStartRow(r),this.setRangeEndRow(a))),t!==e||!(0,import_core56._isVisible)(s)){this.setCellCtrl(e);const o=e.getComp().getParentOfValue();o&&o.appendChild(s)}this.setCellRange(i)}clearValues(){this.lastCellHovered=void 0,this.removeListeners()}removeListeners(){this.cellHoverListener&&(this.cellHoverListener(),this.cellHoverListener=void 0)}destroy(){if(!this.shouldDestroyOnEndDragging&&this.isDragging()){(0,import_core56._setDisplayed)(this.getGui(),!1),this.shouldDestroyOnEndDragging=!0;return}this.shouldDestroyOnEndDragging=!1,super.destroy(),this.removeListeners();const e=this.getGui();e.parentElement&&e.parentElement.removeChild(e)}};function findLineByLeastSquares(e){const t=e.length;let s=0;if(t<=1)return e;for(let d=0;d<e.length;d++){const u=e[d],p=u.toString().split("e-");if(p.length>1){s=Math.max(s,parseInt(p[1],10));continue}Math.floor(u)!==u&&(s=Math.max(s,u.toString().split(".")[1].length))}let i=0,r=0,a=0,o=0,n=0;for(let d=0;d<t;d++)n=e[d],i+=d,r+=n,o+=d*d,a+=d*n;const l=(t*a-i*r)/(t*o-i*i),c=r/t-l*i/t,h=[];for(let d=0;d<=t;d++)h.push(parseFloat((d*l+c).toFixed(s)));return h}var AgFillHandle=class extends AbstractSelectionHandle{constructor(){super('<div class="ag-fill-handle"></div>'),this.markedCells=[],this.cellValues=[],this.isUp=!1,this.isLeft=!1,this.isReduce=!1,this.type=import_core55.SelectionHandleType.FILL}wireBeans(e){super.wireBeans(e),this.valueService=e.valueService,this.navigationService=e.navigationService,this.cellNavigationService=e.cellNavigationService,this.visibleColsService=e.visibleColsService}updateValuesOnMove(e){super.updateValuesOnMove(e),this.initialXY||(this.initialXY=this.mouseEventService.getNormalisedPosition(e));const{x:t,y:s}=this.initialXY,{x:i,y:r}=this.mouseEventService.getNormalisedPosition(e),a=Math.abs(t-i),o=Math.abs(s-r),n=this.getFillHandleDirection();let l;n==="xy"?l=a>o?"x":"y":l=n,l!==this.dragAxis&&(this.dragAxis=l,this.changedCalculatedValues=!0)}onDrag(e){if(!this.initialPosition){const s=this.getCellCtrl();if(!s)return;this.initialPosition=s.getCellPosition()}const t=this.getLastCellHovered();t&&this.markPathFrom(this.initialPosition,t)}onDragEnd(e){if(this.initialXY=null,!this.markedCells.length)return;const t=this.dragAxis==="x",s=this.getCellRange(),i=s.columns.length,r=this.getRangeStartRow(),a=this.getRangeEndRow();let o;if(!this.isUp&&!this.isLeft)o=this.rangeService.createCellRangeFromCellRangeParams({rowStartIndex:r.rowIndex,rowStartPinned:r.rowPinned,columnStart:s.columns[0],rowEndIndex:t?a.rowIndex:this.lastCellMarked.rowIndex,rowEndPinned:t?a.rowPinned:this.lastCellMarked.rowPinned,columnEnd:t?this.lastCellMarked.column:s.columns[i-1]});else{const n=t?r:this.lastCellMarked;o=this.rangeService.createCellRangeFromCellRangeParams({rowStartIndex:n.rowIndex,rowStartPinned:n.rowPinned,columnStart:t?this.lastCellMarked.column:s.columns[0],rowEndIndex:a.rowIndex,rowEndPinned:a.rowPinned,columnEnd:s.columns[i-1]})}o&&(this.eventService.dispatchEvent({type:"fillStart"}),this.handleValueChanged(s,o,e),this.rangeService.setCellRanges([o]),this.eventService.dispatchEvent({type:"fillEnd",initialRange:s,finalRange:o}))}onDragCancel(){this.initialXY=null,this.markedCells.length&&this.clearMarkedPath()}getFillHandleDirection(){const e=(0,import_core55._getFillHandle)(this.gos)?.direction;return e?e!=="x"&&e!=="y"&&e!=="xy"?((0,import_core55._warnOnce)("valid values for fillHandleDirection are 'x', 'y' and 'xy'. Default to 'xy'."),"xy"):e:"xy"}handleValueChanged(e,t,s){const i=this.rangeService.getRangeEndRow(e),r=this.rangeService.getRangeStartRow(e),a=this.rangeService.getRangeEndRow(t),o=this.rangeService.getRangeStartRow(t),n=this.dragAxis==="y";if(this.isReduce&&!(0,import_core55._getFillHandle)(this.gos)?.suppressClearOnFillReduction){const f=n?e.columns:e.columns.filter(S=>t.columns.indexOf(S)<0),v=n?this.cellNavigationService.getRowBelow(a):o;v&&this.clearCellsInRange(v,i,f);return}const l=[],c=[],h=[],d=[];let u=!0,p=0;const g=()=>{l.length=0,c.length=0,h.length=0,d.length=0,p=0},m=(f,v)=>{let S=this.isUp?i:r,y=!1;for(n&&(u=!0,g());!y&&S;){const w=this.rowPositionUtils.getRowNode(S);if(!w)break;n&&f?C(l,f,w,()=>!this.rowPositionUtils.sameRow(S,this.isUp?r:i)):v&&(u=!0,g(),v.forEach(x=>C(l,x,w,()=>x!==(this.isLeft?e.columns[0]:(0,import_core55._last)(e.columns))))),y=this.rowPositionUtils.sameRow(S,this.isUp?o:a),S=this.isUp?this.cellNavigationService.getRowAbove(S):this.cellNavigationService.getRowBelow(S)}},C=(f,v,S,y)=>{let w,x=!1;if(u)w=this.valueService.getValue(v,S),c.push(w),h.push(this.valueService.getValue(v,S,void 0,!0)),d.push(this.valueService.formatValue(v,S,w)),u=y();else{const{value:b,fromUserFunction:T,sourceCol:M,sourceRowNode:P}=this.processValues({event:s,values:f,initialValues:c,initialNonAggregatedValues:h,initialFormattedValues:d,col:v,rowNode:S,idx:p++});if(w=b,v.isCellEditable(S)){const R=this.valueService.getValue(v,S);T||(M&&M.getColDef()?.useValueFormatterForExport!==!1&&(w=this.valueService.formatValue(M,P,w)??w),v.getColDef().useValueParserForImport!==!1&&(w=this.valueService.parseValue(v,S,M?w:(0,import_core55._toStringOrNull)(w),R))),!T||R!==w?S.setDataValue(v,w,"rangeService"):x=!0}}x||f.push({value:w,column:v,rowNode:S})};if(n)e.columns.forEach(f=>{m(f)});else{const f=this.isLeft?[...t.columns].reverse():t.columns;m(void 0,f)}}clearCellsInRange(e,t,s){const i={startRow:e,endRow:t,columns:s,startColumn:s[0]};this.rangeService.clearCellRangeCellValues({cellRanges:[i]})}processValues(e){const{event:t,values:s,initialValues:i,initialNonAggregatedValues:r,initialFormattedValues:a,col:o,rowNode:n,idx:l}=e,c=(0,import_core55._getFillHandle)(this.gos)?.setFillValue,h=this.dragAxis==="y";let d;if(h?d=this.isUp?"up":"down":d=this.isLeft?"left":"right",c){const p=this.gos.addGridCommonParams({event:t,values:s.map(({value:m})=>m),initialValues:i,initialNonAggregatedValues:r,initialFormattedValues:a,currentIndex:l,currentCellValue:this.valueService.getValue(o,n),direction:d,column:o,rowNode:n}),g=c(p);if(g!==!1)return{value:g,fromUserFunction:!0}}const u=!s.some(({value:p})=>{const g=parseFloat(p);return isNaN(g)||g.toString()!==p.toString()});if(t.altKey||!u){if(u&&i.length===1){const C=this.isUp||this.isLeft?-1:1;return{value:parseFloat((0,import_core55._last)(s).value)+1*C,fromUserFunction:!1}}const{value:p,column:g,rowNode:m}=s[l%s.length];return{value:p,fromUserFunction:!1,sourceCol:g,sourceRowNode:m}}return{value:(0,import_core55._last)(findLineByLeastSquares(s.map(({value:p})=>Number(p)))),fromUserFunction:!1}}clearValues(){this.clearMarkedPath(),this.clearCellValues(),this.lastCellMarked=void 0,super.clearValues()}clearMarkedPath(){this.markedCells.forEach(e=>{if(!e.isAlive())return;const t=e.getComp();t.addOrRemoveCssClass("ag-selection-fill-top",!1),t.addOrRemoveCssClass("ag-selection-fill-right",!1),t.addOrRemoveCssClass("ag-selection-fill-bottom",!1),t.addOrRemoveCssClass("ag-selection-fill-left",!1)}),this.markedCells.length=0,this.isUp=!1,this.isLeft=!1,this.isReduce=!1}clearCellValues(){this.cellValues.length=0}markPathFrom(e,t){if(this.clearMarkedPath(),this.clearCellValues(),this.dragAxis==="y"){if(this.rowPositionUtils.sameRow(t,e))return;const s=this.rowPositionUtils.before(t,e),i=this.getRangeStartRow(),r=this.getRangeEndRow();s&&(t.rowPinned==i.rowPinned&&t.rowIndex>=i.rowIndex||i.rowPinned!=r.rowPinned&&t.rowPinned==r.rowPinned&&t.rowIndex<=r.rowIndex)?(this.reduceVertical(e,t),this.isReduce=!0):(this.extendVertical(e,t,s),this.isReduce=!1)}else{const s=e.column,i=t.column;if(s===i)return;const r=this.visibleColsService.getAllCols(),a=r.indexOf(s),o=r.indexOf(i);o<=a&&o>=r.indexOf(this.getCellRange().columns[0])?(this.reduceHorizontal(e,t),this.isReduce=!0):(this.extendHorizontal(e,t,o<a),this.isReduce=!1)}this.lastCellMarked=t}extendVertical(e,t,s){const{navigationService:i,rangeService:r}=this;let a=e;do{const o=this.getCellRange(),n=o.columns.length;for(let l=0;l<n;l++){const c=o.columns[l],d={...{rowIndex:a.rowIndex,rowPinned:a.rowPinned},column:c},u=r.isCellInSpecificRange(d,o),p=this.rowPositionUtils.sameRow(a,e);if(s&&(this.isUp=!0),!p){const g=i.getCellByPosition(d);if(g){this.markedCells.push(g);const m=g.getComp();u||(m.addOrRemoveCssClass("ag-selection-fill-left",l===0),m.addOrRemoveCssClass("ag-selection-fill-right",l===n-1)),m.addOrRemoveCssClass(s?"ag-selection-fill-top":"ag-selection-fill-bottom",this.rowPositionUtils.sameRow(a,t))}}}if(this.rowPositionUtils.sameRow(a,t))break}while(a=s?this.cellNavigationService.getRowAbove(a):this.cellNavigationService.getRowBelow(a))}reduceVertical(e,t){let s=e;do{const i=this.getCellRange(),r=i.columns.length,a=this.rowPositionUtils.sameRow(s,t);for(let o=0;o<r;o++){const l={...{rowIndex:s.rowIndex,rowPinned:s.rowPinned},column:i.columns[o]},c=this.navigationService.getCellByPosition(l);c&&(this.markedCells.push(c),c.getComp().addOrRemoveCssClass("ag-selection-fill-bottom",this.rowPositionUtils.sameRow(s,t)))}if(a)break}while(s=this.cellNavigationService.getRowAbove(s))}extendHorizontal(e,t,s){const i=this.visibleColsService.getAllCols(),r=i.indexOf(s?t.column:e.column),a=i.indexOf(s?this.getCellRange().columns[0]:t.column),o=s?0:1,n=i.slice(r+o,a+o),l=this.getRangeStartRow(),c=this.getRangeEndRow();n.forEach(h=>{let d=l,u=!1;do{u=this.rowPositionUtils.sameRow(d,c);const p=this.navigationService.getCellByPosition({rowIndex:d.rowIndex,rowPinned:d.rowPinned,column:h});if(p){this.markedCells.push(p);const g=p.getComp();g.addOrRemoveCssClass("ag-selection-fill-top",this.rowPositionUtils.sameRow(d,l)),g.addOrRemoveCssClass("ag-selection-fill-bottom",this.rowPositionUtils.sameRow(d,c)),s?(this.isLeft=!0,g.addOrRemoveCssClass("ag-selection-fill-left",h===n[0])):g.addOrRemoveCssClass("ag-selection-fill-right",h===(0,import_core55._last)(n))}d=this.cellNavigationService.getRowBelow(d)}while(!u)})}reduceHorizontal(e,t){const s=this.visibleColsService.getAllCols(),i=s.indexOf(t.column),r=s.indexOf(e.column),a=s.slice(i,r),o=this.getRangeStartRow(),n=this.getRangeEndRow();a.forEach(l=>{let c=o,h=!1;do{h=this.rowPositionUtils.sameRow(c,n);const d=this.navigationService.getCellByPosition({rowIndex:c.rowIndex,rowPinned:c.rowPinned,column:l});d&&(this.markedCells.push(d),d.getComp().addOrRemoveCssClass("ag-selection-fill-right",l===a[0])),c=this.cellNavigationService.getRowBelow(c)}while(!h)})}refresh(e){const t=this.rangeService.getCellRanges()[0];if(!t.startRow||!t.endRow){this.destroy();return}super.refresh(e)}},AgRangeHandle=class extends AbstractSelectionHandle{constructor(){super('<div class="ag-range-handle"></div>'),this.type=import_core57.SelectionHandleType.RANGE,this.rangeFixed=!1}onDrag(e){const t=this.getLastCellHovered();if(!t)return;const s=this.rangeService.getCellRanges(),i=(0,import_core57._last)(s);this.rangeFixed||(this.fixRangeStartEnd(i),this.rangeFixed=!0),this.endPosition={rowIndex:t.rowIndex,rowPinned:t.rowPinned,column:t.column},s.length===2&&s[0].type===import_core57.CellRangeType.DIMENSION&&i.type===import_core57.CellRangeType.VALUE&&!this.rowPositionUtils.sameRow(this.endPosition,this.rangeService.getRangeEndRow(i))&&this.rangeService.updateRangeEnd(s[0],{...this.endPosition,column:s[0].columns[0]},!0),this.rangeService.extendLatestRangeToCell(this.endPosition)}onDragEnd(e){const t=(0,import_core57._last)(this.rangeService.getCellRanges());this.fixRangeStartEnd(t),this.rangeFixed=!1}onDragCancel(){this.rangeFixed=!1}fixRangeStartEnd(e){const t=this.rangeService.getRangeStartRow(e),s=this.rangeService.getRangeEndRow(e),i=e.columns[0];e.startRow=t,e.endRow=s,e.startColumn=i}},SelectionHandleFactory=class extends import_core54.BeanStub{constructor(){super(...arguments),this.beanName="selectionHandleFactory"}createSelectionHandle(e){return this.createBean(e===import_core54.SelectionHandleType.RANGE?new AgRangeHandle:new AgFillHandle)}},VERSION3="32.3.0",RangeSelectionCoreModule=(0,import_core51._defineModule)({version:VERSION3,moduleName:`${import_core51.ModuleNames.RangeSelectionModule}-core`,beans:[RangeService,SelectionHandleFactory],dependantModules:[EnterpriseCoreModule]}),RangeSelectionApiModule=(0,import_core51._defineModule)({version:VERSION3,moduleName:`${import_core51.ModuleNames.RangeSelectionModule}-api`,apiFunctions:{getCellRanges,addCellRange,clearRangeSelection,clearCellSelection:clearRangeSelection},dependantModules:[RangeSelectionCoreModule]}),RangeSelectionModule=(0,import_core51._defineModule)({version:VERSION3,moduleName:import_core51.ModuleNames.RangeSelectionModule,dependantModules:[RangeSelectionCoreModule,RangeSelectionApiModule]}),import_core60=require("ag-grid-community"),import_core62=require("ag-grid-community"),import_core63=require("ag-grid-community"),import_core64=require("ag-grid-community"),import_core65=require("ag-grid-community"),import_core67=require("ag-grid-community"),import_core69=require("ag-grid-community"),import_ag_charts_community2=require("ag-charts-community"),import_core71=require("ag-grid-community"),import_ag_charts_community3=require("ag-charts-community"),import_core72=require("ag-grid-community"),import_ag_charts_community4=require("ag-charts-community"),import_core73=require("ag-grid-community"),import_core75=require("ag-grid-community"),import_core76=require("ag-grid-community"),import_core77=require("ag-grid-community"),import_core79=require("ag-grid-community"),import_core81=require("ag-grid-community"),import_core82=require("ag-grid-community"),import_core83=require("ag-grid-community"),import_core84=require("ag-grid-community"),import_ag_charts_community5=require("ag-charts-community"),import_core85=require("ag-grid-community"),import_core87=require("ag-grid-community"),import_ag_charts_community6=require("ag-charts-community"),import_core88=require("ag-grid-community"),import_ag_charts_community7=require("ag-charts-community"),import_core89=require("ag-grid-community"),import_core90=require("ag-grid-community"),import_core91=require("ag-grid-community"),import_core92=require("ag-grid-community"),import_core93=require("ag-grid-community"),import_ag_charts_community8=require("ag-charts-community"),import_ag_charts_community9=require("ag-charts-community"),import_core94=require("ag-grid-community"),import_ag_charts_community10=require("ag-charts-community"),import_core95=require("ag-grid-community"),import_core96=require("ag-grid-community"),import_core98=require("ag-grid-community"),import_core99=require("ag-grid-community"),import_core101=require("ag-grid-community"),import_core102=require("ag-grid-community"),import_core104=require("ag-grid-community"),import_core105=require("ag-grid-community"),import_core107=require("ag-grid-community"),import_core109=require("ag-grid-community"),import_core110=require("ag-grid-community"),import_core112=require("ag-grid-community"),import_core114=require("ag-grid-community"),import_core115=require("ag-grid-community"),import_core117=require("ag-grid-community"),import_core118=require("ag-grid-community"),import_core120=require("ag-grid-community"),import_core122=require("ag-grid-community"),import_core124=require("ag-grid-community"),import_core126=require("ag-grid-community"),import_core128=require("ag-grid-community"),import_core130=require("ag-grid-community"),import_core132=require("ag-grid-community"),import_core133=require("ag-grid-community"),import_core135=require("ag-grid-community"),import_core137=require("ag-grid-community"),import_core139=require("ag-grid-community"),import_core141=require("ag-grid-community"),import_core143=require("ag-grid-community"),import_core145=require("ag-grid-community"),import_core147=require("ag-grid-community"),import_core149=require("ag-grid-community"),import_core151=require("ag-grid-community"),import_core153=require("ag-grid-community"),import_core155=require("ag-grid-community"),import_core156=require("ag-grid-community"),import_core157=require("ag-grid-community"),import_ag_charts_community11=require("ag-charts-community"),import_ag_charts_community12=require("ag-charts-community"),import_core159=require("ag-grid-community"),import_ag_charts_community13=require("ag-charts-community"),import_ag_charts_community14=require("ag-charts-community"),import_ag_charts_community15=require("ag-charts-community"),import_ag_charts_community16=require("ag-charts-community"),import_ag_charts_community17=require("ag-charts-community"),import_ag_charts_community18=require("ag-charts-community"),import_ag_charts_community19=require("ag-charts-community"),import_ag_charts_community20=require("ag-charts-community"),import_ag_charts_community21=require("ag-charts-community"),import_ag_charts_community22=require("ag-charts-community"),import_ag_charts_community23=require("ag-charts-community"),import_ag_charts_community24=require("ag-charts-community"),import_ag_charts_community25=require("ag-charts-community"),import_ag_charts_community26=require("ag-charts-community"),import_ag_charts_community27=require("ag-charts-community"),import_ag_charts_community28=require("ag-charts-community"),import_ag_charts_community29=require("ag-charts-community"),import_ag_charts_community30=require("ag-charts-community"),import_ag_charts_community31=require("ag-charts-community"),import_ag_charts_community32=require("ag-charts-community"),import_ag_charts_community33=require("ag-charts-community"),import_ag_charts_community34=require("ag-charts-community"),import_core160=require("ag-grid-community");__reExport(main_esm_exports,require("ag-charts-community"));var SERIES_TYPES={area:{isCartesian:!0,canInvert:!0},bar:{isCartesian:!0,canInvert:!0},histogram:{isCartesian:!0},line:{isCartesian:!0,canInvert:!0},pie:{isPie:!0},donut:{isPie:!0,canInvert:!0},scatter:{isCartesian:!0},bubble:{isCartesian:!0},"radial-column":{isPolar:!0,isEnterprise:!0,isRadial:!0,canInvert:!0},"radial-bar":{isPolar:!0,isEnterprise:!0,isRadial:!0,canInvert:!0},"radar-line":{isPolar:!0,isEnterprise:!0,canInvert:!0},"radar-area":{isPolar:!0,isEnterprise:!0,canInvert:!0},nightingale:{isPolar:!0,isEnterprise:!0,canInvert:!0},"range-bar":{isCartesian:!0,isEnterprise:!0,canSwitchDirection:!0},"range-area":{isCartesian:!0,isEnterprise:!0},"box-plot":{isCartesian:!0,isEnterprise:!0,canSwitchDirection:!0},treemap:{isEnterprise:!0,isHierarchical:!0},sunburst:{isEnterprise:!0,isHierarchical:!0},heatmap:{isCartesian:!0,isEnterprise:!0},waterfall:{isCartesian:!0,isEnterprise:!0,canSwitchDirection:!0}};function isSeriesType(e){return!!SERIES_TYPES[e]}function isComboChart(e){return import_core63.ChartMappings.COMBO_CHART_TYPES.includes(e)}function doesSeriesHaveProperty(e,t){return!!SERIES_TYPES[e]?.[t]}function isEnterpriseChartType(e){return doesSeriesHaveProperty(getSeriesType(e),"isEnterprise")}var stackedChartTypes=new Set(["stackedColumn","normalizedColumn","stackedBar","normalizedBar"]);function isStacked(e){return stackedChartTypes.has(e)}function isCartesian(e){return doesSeriesHaveProperty(e,"isCartesian")}function isPolar(e){return doesSeriesHaveProperty(e,"isPolar")}function isRadial(e){return doesSeriesHaveProperty(e,"isRadial")}function isHierarchical(e){return doesSeriesHaveProperty(e,"isHierarchical")}function getCanonicalChartType(e){return e==="doughnut"?"donut":e}function getSeriesTypeIfExists(e){return import_core63.ChartMappings.CHART_TYPE_TO_SERIES_TYPE[e]}function getSeriesType(e){return getSeriesTypeIfExists(e)??"line"}function isPieChartSeries(e){return doesSeriesHaveProperty(e,"isPie")}function canOnlyHaveSingleSeries(e){return e==="pie"||e==="waterfall"||e==="histogram"}function getMaxNumCategories(e){return isHierarchical(getSeriesType(e))?void 0:1}function getMaxNumSeries(e){return isHierarchical(getSeriesType(e))?2:canOnlyHaveSingleSeries(e)?1:void 0}function supportsInvertedCategorySeries(e){return!isComboChart(e)&&doesSeriesHaveProperty(getSeriesType(e),"canInvert")}function canSwitchDirection(e){return doesSeriesHaveProperty(getSeriesType(e),"canSwitchDirection")}function getFullChartNameTranslationKey(e){switch(e){case"groupedColumn":case"stackedColumn":case"normalizedColumn":case"groupedBar":case"stackedBar":case"normalizedBar":case"stackedArea":case"normalizedArea":return`${e}Full`;case"doughnut":return"donut";case"areaColumnCombo":return"AreaColumnCombo";default:return e}}var ChartPanelFeature=class extends import_core64.BeanStub{constructor(e,t,s,i){super(),this.chartController=e,this.eGui=t,this.cssClass=s,this.createPanels=i,this.panels=[]}postConstruct(){this.addManagedListeners(this.chartController,{chartUpdated:()=>this.refreshPanels(!0),chartApiUpdate:()=>this.refreshPanels(!1)})}addComponent(e){this.createBean(e),this.panels.push(e),e.addCssClass(this.cssClass),this.eGui.appendChild(e.getGui())}refreshPanels(e){const t=this.chartController.getChartType(),s=this.chartController.isGrouping(),i=getSeriesType(t);e&&t===this.chartType&&s===this.isGrouping||(this.destroyPanels(),this.createPanels(t,i),this.chartType=t,this.isGrouping=s)}destroyPanels(){this.panels.forEach(e=>{(0,import_core64._removeFromParent)(e.getGui()),this.destroyBean(e)}),this.panels=[]}destroy(){this.destroyPanels(),super.destroy()}},AnimationPanel=class extends import_core65.Component{constructor(e){super(),this.chartMenuParamsFactory=e}wireBeans(e){this.chartTranslationService=e.chartTranslationService}postConstruct(){const e=this.chartMenuParamsFactory.addEnableParams("animation.enabled",{cssIdentifier:"charts-advanced-settings-top-level",direction:"vertical",suppressOpenCloseIcons:!0,title:this.chartTranslationService.translate("animation"),suppressEnabledCheckbox:!0,useToggle:!0}),t=this.chartMenuParamsFactory.getDefaultNumberInputParams("animation.duration","durationMillis",{min:0});this.setTemplate(`<div>
|
|
136
136
|
<ag-group-component data-ref="animationGroup">
|
|
137
137
|
<ag-input-number-field data-ref="animationHeightInput"></ag-input>
|
|
138
138
|
</ag-group-component>
|
|
@@ -188,7 +188,7 @@ var __defProp=Object.defineProperty,__getOwnPropDesc=Object.getOwnPropertyDescri
|
|
|
188
188
|
</ag-group-component>
|
|
189
189
|
</div>`,[AgGroupComponentSelector,import_core77.AgCheckboxSelector,AgSliderSelector],{zoomGroup:e,zoomScrollingCheckbox:t,zoomScrollingStepInput:s,zoomSelectingCheckbox:i}),this.zoomScrollingStepInput.setDisabled(!t.value)}},INTERACTIVITY_GROUPS=["navigator","zoom","animation","crosshair"],AdvancedSettingsPanel=class extends import_core62.Component{constructor(e){super('<div class="ag-chart-advanced-settings-wrapper"></div>'),this.chartMenuContext=e}postConstruct(){this.chartPanelFeature=this.createManagedBean(new ChartPanelFeature(this.chartMenuContext.chartController,this.getGui(),"ag-chart-advanced-settings-section",(e,t)=>this.createPanels(e,t))),this.chartPanelFeature.refreshPanels()}createPanels(e,t){INTERACTIVITY_GROUPS.forEach(s=>{if(!this.isGroupPanelShownForSeries(s,t))return;const i=this.createPanel(s);this.chartPanelFeature.addComponent(i)})}isGroupPanelShownForSeries(e,t){return e==="animation"||isCartesian(t)}createPanel(e){const{chartMenuParamsFactory:t,chartAxisMenuParamsFactory:s}=this.chartMenuContext;switch(e){case"navigator":return new NavigatorPanel(t);case"zoom":return new ZoomPanel(t);case"animation":return new AnimationPanel(t);case"crosshair":return new CrosshairPanel(s)}}},AdvancedSettingsMenuFactory=class extends import_core60.BeanStub{constructor(){super(...arguments),this.beanName="advancedSettingsMenuFactory"}wireBeans(e){this.focusService=e.focusService,this.chartTranslationService=e.chartTranslationService}showMenu(e,t){this.hideMenu();const s=this.createBean(new AdvancedSettingsMenu(e));this.activeDialog=this.createBean(new AgDialog({title:this.chartTranslationService.translate("advancedSettings"),component:s,width:300,height:400,resizable:!0,movable:!0,centered:!0,closable:!0,afterGuiAttached:()=>{this.focusService.findFocusableElements(s.getGui())[0]?.focus()},closedCallback:()=>{this.activeMenu=this.destroyBean(this.activeMenu),this.activeDialog=void 0,t?.focus({preventScroll:!0})}})),this.activeMenu=s}hideMenu(){this.activeDialog&&this.destroyBean(this.activeDialog)}destroy(){this.activeMenu=this.destroyBean(this.activeMenu),this.activeDialog=this.destroyBean(this.activeDialog),super.destroy()}},AdvancedSettingsMenu=class extends import_core60.TabGuardComp{constructor(e){super('<div class="ag-chart-advanced-settings"></div>'),this.chartMenuContext=e}wireBeans(e){this.focusService=e.focusService}postConstruct(){this.advancedSettingsPanel=this.createManagedBean(new AdvancedSettingsPanel(this.chartMenuContext)),this.getGui().appendChild(this.advancedSettingsPanel.getGui()),this.initialiseTabGuard({onTabKeyDown:this.onTabKeyDown.bind(this),focusTrapActive:!0})}onTabKeyDown(e){if(e.defaultPrevented)return;e.preventDefault();const t=e.shiftKey,s=this.advancedSettingsPanel.getGui(),i=this.focusService.findNextFocusableElement(s,!1,t);if(i)i.focus();else{const r=this.focusService.findFocusableElements(s);r.length&&r[t?r.length-1:0].focus()}}},ChartMenuListFactory=class extends import_core79.BeanStub{constructor(){super(...arguments),this.beanName="chartMenuListFactory"}wireBeans(e){this.popupService=e.popupService,this.chartMenuService=e.chartMenuService,this.chartTranslationService=e.chartTranslationService}showMenuList(e){const{eventSource:t,showMenu:s,chartMenuContext:i}=e,r=this.chartMenuService.doChartToolPanelsExist(i.chartController),a=this.mapWithStockItems(this.getMenuItems(i.chartController,r),i,s,t,r);if(!a.length)return;const o=this.createBean(new ChartMenuList(a));this.activeChartMenuList=o;let n=-1,l="left";this.gos.get("enableRtl")&&(n=1,l="right");const c=o.getGui();this.popupService.addPopup({modal:!0,eChild:c,closeOnEsc:!0,closedCallback:()=>{this.destroyBean(o),this.activeChartMenuList=void 0,(0,import_core79._isNothingFocused)(this.gos)&&t.focus({preventScroll:!0})},afterGuiAttached:h=>o.afterGuiAttached(h),positionCallback:()=>{this.popupService.positionPopupByComponent({type:"chartMenu",eventSource:t,ePopup:c,alignSide:l,nudgeX:4*n,nudgeY:4,position:"under",keepWithinBounds:!0})},ariaLabel:"Chart Menu"})}getMenuItems(e,t){const s=[...t?["chartEdit"]:[],...e.isEnterprise()?["chartAdvancedSettings"]:[],e.isChartLinked()?"chartUnlink":"chartLink","chartDownload"],i=this.gos.get("chartMenuItems");return i?Array.isArray(i)?i:i(this.gos.addGridCommonParams({defaultItems:s})):s}mapWithStockItems(e,t,s,i,r){if(!e)return[];const a=[];return e.forEach(o=>{let n;if(typeof o=="string"?n=this.getStockMenuItem(o,t,s,i,r):n={...o},!n)return;const{subMenu:l}=n;Array.isArray(l)&&(n.subMenu=this.mapWithStockItems(l,t,s,i,r)),a.push(n)}),a}getStockMenuItem(e,t,s,i,r){switch(e){case"chartEdit":return r?this.createMenuItem(this.chartTranslationService.translate("chartEdit"),"chartsMenuEdit",s):null;case"chartAdvancedSettings":return this.createMenuItem(this.chartTranslationService.translate("chartAdvancedSettings"),"chartsMenuAdvancedSettings",()=>this.chartMenuService.openAdvancedSettings(t,i));case"chartUnlink":return t.chartController.isChartLinked()?this.createMenuItem(this.chartTranslationService.translate("chartUnlink"),"unlinked",()=>this.chartMenuService.toggleLinked(t)):null;case"chartLink":return t.chartController.isChartLinked()?null:this.createMenuItem(this.chartTranslationService.translate("chartLink"),"linked",()=>this.chartMenuService.toggleLinked(t));case"chartDownload":return this.createMenuItem(this.chartTranslationService.translate("chartDownload"),"save",()=>this.chartMenuService.downloadChart(t))}return null}createMenuItem(e,t,s){return{name:e,icon:(0,import_core79._createIconNoSpan)(t,this.gos,null),action:s}}destroy(){this.destroyBean(this.activeChartMenuList),super.destroy()}},ChartMenuList=class extends import_core79.Component{constructor(e){super(`
|
|
190
190
|
<div data-ref="eChartsMenu" role="presentation" class="ag-menu ag-chart-menu-popup"></div>
|
|
191
|
-
`),this.menuItems=e,this.eChartsMenu=import_core79.RefPlaceholder}wireBeans(e){this.focusService=e.focusService}postConstruct(){this.mainMenuList=this.createManagedBean(new AgMenuList(0)),this.mainMenuList.addMenuItems(this.menuItems),this.mainMenuList.addEventListener("closeMenu",this.onHidePopup.bind(this)),this.eChartsMenu.appendChild(this.mainMenuList.getGui())}onHidePopup(){this.hidePopupFunc?.()}afterGuiAttached({hidePopup:e}){e&&(this.hidePopupFunc=e,this.addDestroyFunc(e)),this.focusService.focusInto(this.mainMenuList.getGui())}},ChartCrossFilterService=class K extends import_core81.BeanStub{constructor(){super(...arguments),this.beanName="chartCrossFilterService"}wireBeans(t){this.columnModel=t.columnModel,this.valueService=t.valueService,this.filterManager=t.filterManager,(0,import_core81._isClientSideRowModel)(this.gos)&&(this.clientSideRowModel=t.rowModel)}filter(t,s=!1){const i=this.filterManager?.getFilterModel()??{};if(s){this.resetFilters(i);return}const r=K.extractFilterColId(t);this.isValidColumnFilter(r)?this.updateFilters(i,t,r):(0,import_core81._warnOnce)("cross filtering requires a 'agSetColumnFilter' or 'agMultiColumnFilter' to be defined on the column with id: '"+r+"'")}resetFilters(t){Object.keys(t).length>0&&(this.filterManager?.setFilterModel(null),this.filterManager?.onFilterChanged({source:"api"}))}updateFilters(t,s,i){const r=K.extractFilterColId(s),a=s.datum[r];if(a===void 0)return;const o=a.toString();if(s.event.metaKey||s.event.ctrlKey){const n=this.getCurrentGridValuesForCategory(i),l=(0,import_core81._includes)(n,o);let c;l?c=n.filter(h=>h!==o):(c=n,c.push(o)),t[i]=this.getUpdatedFilterModel(i,c)}else{const n=[o];t={[i]:this.getUpdatedFilterModel(i,n)}}this.filterManager?.setFilterModel(t)}getUpdatedFilterModel(t,s){return this.getColumnFilterType(t)==="agMultiColumnFilter"?{filterType:"multi",filterModels:[null,{filterType:"set",values:s}]}:{filterType:"set",values:s}}getCurrentGridValuesForCategory(t){const s=[],i=this.getColumnById(t);return this.clientSideRowModel?.forEachNodeAfterFilter(r=>{if(i&&!r.group){const a=this.valueService.getValue(i,r)+"";s.includes(a)||s.push(a)}}),s}static extractFilterColId(t){return t.xKey||t.calloutLabelKey}isValidColumnFilter(t){t.indexOf("-filtered-out")&&(t=t.replace("-filtered-out",""));const s=this.getColumnFilterType(t);return typeof s=="boolean"?s:(0,import_core81._includes)(["agSetColumnFilter","agMultiColumnFilter"],s)}getColumnFilterType(t){const s=this.getColumnById(t);if(s)return s.getColDef().filter}getColumnById(t){return this.columnModel.getCol(t)}},CHART_TOOLBAR_ALLOW_LIST=["chartUnlink","chartLink","chartDownload","chartMenu"],CHART_TOOL_PANEL_MENU_OPTIONS={settings:"chartSettings",data:"chartData",format:"chartFormat"},ChartMenuService=class extends import_core82.BeanStub{constructor(){super(...arguments),this.beanName="chartMenuService"}wireBeans(e){this.advancedSettingsMenuFactory=e.advancedSettingsMenuFactory}downloadChart(e,t,s,i){e.chartController.getChartProxy().downloadChart(t,s,i)}toggleLinked(e){e.chartController.detachChartRange()}openAdvancedSettings(e,t){this.advancedSettingsMenuFactory.showMenu(e,t)}hideAdvancedSettings(){this.advancedSettingsMenuFactory.hideMenu()}getChartToolbarOptions(){const e=["chartMenu"],t=this.gos.getCallback("getChartToolbarItems");return t?t({defaultItems:e}).filter(i=>CHART_TOOLBAR_ALLOW_LIST.includes(i)?!0:((0,import_core82._warnOnce)(`'${i}' is not a valid Chart Toolbar Option`),!1)):e}getChartToolPanels(e){const t=this.gos.get("chartToolPanelsDef");let i=t?.panels?.map(o=>{const n=CHART_TOOL_PANEL_MENU_OPTIONS[o];return n||(0,import_core82._warnOnce)(`Invalid panel in chartToolPanelsDef.panels: '${o}'`),n}).filter(o=>!!o)??Object.values(CHART_TOOL_PANEL_MENU_OPTIONS);e.isPivotChart()&&(i=i.filter(o=>o!=="chartData"));const r=t?.defaultToolPanel,a=r&&CHART_TOOL_PANEL_MENU_OPTIONS[r]||i[0];return{panels:i,defaultPanel:a}}doesChartToolbarExist(){return this.getChartToolbarOptions().length>0}doChartToolPanelsExist(e){const{panels:t}=this.getChartToolPanels(e);return t.length>0}},_ChartTranslationService=class Y extends import_core83.BeanStub{constructor(){super(...arguments),this.beanName="chartTranslationService"}translate(t){const s=this.localeService.getLocaleTextFunc(),i=Y.DEFAULT_TRANSLATIONS[t];return s(t,i)}};_ChartTranslationService.DEFAULT_TRANSLATIONS={pivotChartTitle:"Pivot Chart",rangeChartTitle:"Range Chart",settings:"Chart",data:"Set Up",format:"Customize",categories:"Categories",defaultCategory:"(None)",series:"Series",switchCategorySeries:"Switch Category / Series",categoryValues:"Category Values",seriesLabels:"Series Labels",aggregate:"Aggregate",xyValues:"X Y Values",paired:"Paired Mode",axis:"Axis",xAxis:"Horizontal Axis",yAxis:"Vertical Axis",polarAxis:"Polar Axis",radiusAxis:"Radius Axis",navigator:"Navigator",zoom:"Zoom",animation:"Animation",crosshair:"Crosshair",color:"Color",thickness:"Thickness",preferredLength:"Preferred Length",xType:"X Type",axisType:"Axis Type",automatic:"Automatic",category:"Category",number:"Number",time:"Time",timeFormat:"Time Format",autoRotate:"Auto Rotate",labelRotation:"Rotation",circle:"Circle",polygon:"Polygon",square:"Square",cross:"Cross",diamond:"Diamond",plus:"Plus",triangle:"Triangle",heart:"Heart",orientation:"Orientation",fixed:"Fixed",parallel:"Parallel",perpendicular:"Perpendicular",radiusAxisPosition:"Position",ticks:"Ticks",gridLines:"Grid Lines",width:"Width",height:"Height",length:"Length",padding:"Padding",spacing:"Spacing",chartStyle:"Chart Style",title:"Title",chartTitles:"Titles",chartTitle:"Chart Title",chartSubtitle:"Subtitle",horizontalAxisTitle:"Horizontal Axis Title",verticalAxisTitle:"Vertical Axis Title",polarAxisTitle:"Polar Axis Title",titlePlaceholder:"Chart Title",background:"Background",font:"Font",weight:"Weight",top:"Top",right:"Right",bottom:"Bottom",left:"Left",labels:"Labels",calloutLabels:"Callout Labels",sectorLabels:"Sector Labels",positionRatio:"Position Ratio",size:"Size",shape:"Shape",minSize:"Minimum Size",maxSize:"Maximum Size",legend:"Legend",position:"Position",markerSize:"Marker Size",markerStroke:"Marker Stroke",markerPadding:"Marker Padding",itemSpacing:"Item Spacing",itemPaddingX:"Item Padding X",itemPaddingY:"Item Padding Y",layoutHorizontalSpacing:"Horizontal Spacing",layoutVerticalSpacing:"Vertical Spacing",strokeWidth:"Stroke Width",offset:"Offset",offsets:"Offsets",tooltips:"Tooltips",callout:"Callout",markers:"Markers",shadow:"Shadow",blur:"Blur",xOffset:"X Offset",yOffset:"Y Offset",lineWidth:"Line Width",lineDash:"Line Dash",lineDashOffset:"Dash Offset",scrollingZoom:"Scrolling",scrollingStep:"Scrolling Step",selectingZoom:"Selecting",durationMillis:"Duration (ms)",crosshairLabel:"Label",crosshairSnap:"Snap to Node",normal:"Normal",bold:"Bold",italic:"Italic",boldItalic:"Bold Italic",predefined:"Predefined",fillOpacity:"Fill Opacity",strokeColor:"Line Color",strokeOpacity:"Line Opacity",miniChart:"Mini-Chart",histogramBinCount:"Bin count",connectorLine:"Connector Line",seriesItems:"Series Items",seriesItemType:"Item Type",seriesItemPositive:"Positive",seriesItemNegative:"Negative",seriesItemLabels:"Item Labels",columnGroup:"Column",barGroup:"Bar",pieGroup:"Pie",lineGroup:"Line",scatterGroup:"X Y (Scatter)",areaGroup:"Area",polarGroup:"Polar",statisticalGroup:"Statistical",hierarchicalGroup:"Hierarchical",specializedGroup:"Specialized",combinationGroup:"Combination",groupedColumnTooltip:"Grouped",stackedColumnTooltip:"Stacked",normalizedColumnTooltip:"100% Stacked",groupedBarTooltip:"Grouped",stackedBarTooltip:"Stacked",normalizedBarTooltip:"100% Stacked",pieTooltip:"Pie",donutTooltip:"Donut",lineTooltip:"Line",groupedAreaTooltip:"Area",stackedAreaTooltip:"Stacked",normalizedAreaTooltip:"100% Stacked",scatterTooltip:"Scatter",bubbleTooltip:"Bubble",histogramTooltip:"Histogram",radialColumnTooltip:"Radial Column",radialBarTooltip:"Radial Bar",radarLineTooltip:"Radar Line",radarAreaTooltip:"Radar Area",nightingaleTooltip:"Nightingale",rangeBarTooltip:"Range Bar",rangeAreaTooltip:"Range Area",boxPlotTooltip:"Box Plot",treemapTooltip:"Treemap",sunburstTooltip:"Sunburst",waterfallTooltip:"Waterfall",heatmapTooltip:"Heatmap",columnLineComboTooltip:"Column & Line",areaColumnComboTooltip:"Area & Column",customComboTooltip:"Custom Combination",innerRadius:"Inner Radius",startAngle:"Start Angle",endAngle:"End Angle",reverseDirection:"Reverse Direction",groupPadding:"Group Padding",seriesPadding:"Series Padding",tile:"Tile",whisker:"Whisker",cap:"Cap",capLengthRatio:"Length Ratio",labelPlacement:"Placement",inside:"Inside",outside:"Outside",noDataToChart:"No data available to be charted.",pivotChartRequiresPivotMode:"Pivot Chart requires Pivot Mode enabled.",chartSettingsToolbarTooltip:"Menu",chartLinkToolbarTooltip:"Linked to Grid",chartUnlinkToolbarTooltip:"Unlinked from Grid",chartDownloadToolbarTooltip:"Download Chart",chartMenuToolbarTooltip:"Menu",chartEdit:"Edit Chart",chartAdvancedSettings:"Advanced Settings",chartLink:"Link to Grid",chartUnlink:"Unlink from Grid",chartDownload:"Download Chart",histogramFrequency:"Frequency",seriesChartType:"Series Chart Type",seriesType:"Series Type",secondaryAxis:"Secondary Axis",seriesAdd:"Add a series",categoryAdd:"Add a category",bar:"Bar",column:"Column",histogram:"Histogram",advancedSettings:"Advanced Settings",direction:"Direction",horizontal:"Horizontal",vertical:"Vertical",seriesGroupType:"Group Type",groupedSeriesGroupType:"Grouped",stackedSeriesGroupType:"Stacked",normalizedSeriesGroupType:"100% Stacked",legendEnabled:"Enabled",invalidColor:"Color value is invalid",groupedColumnFull:"Grouped Column",stackedColumnFull:"Stacked Column",normalizedColumnFull:"100% Stacked Column",groupedBarFull:"Grouped Bar",stackedBarFull:"Stacked Bar",normalizedBarFull:"100% Stacked Bar",stackedAreaFull:"Stacked Area",normalizedAreaFull:"100% Stacked Area",customCombo:"Custom Combination",groupedColumn:"Grouped",stackedColumn:"Stacked",pie:"Pie",donut:"Donut",line:"Line",scatter:"Scatter",bubble:"Bubble",area:"Area",stackedArea:"Stacked",radarLine:"Radar Line",radarArea:"Radar Area",nightingale:"Nightingale",radialColumn:"Radial Column",radialBar:"Radial Bar",boxPlot:"Box Plot",rangeBar:"Range Bar",rangeArea:"Range Area",treemap:"Treemap",sunburst:"Sunburst",waterfall:"Waterfall",heatmap:"Heatmap",columnLineCombo:"Column & Line",AreaColumnCombo:"Area & Column",ariaChartMenuClose:"Close Chart Edit Menu",ariaChartSelected:"Selected",group:"Group",timeFormatSlashesDDMMYYYY:"DD/MM/YYYY",timeFormatSlashesMMDDYYYY:"MM/DD/YYYY",timeFormatSlashesDDMMYY:"DD/MM/YY",timeFormatSlashesMMDDYY:"MM/DD/YY",timeFormatDotsDDMYY:"DD.M.YY",timeFormatDotsMDDYY:"M.DD.YY",timeFormatDashesYYYYMMDD:"YYYY-MM-DD",timeFormatSpacesDDMMMMYYYY:"DD MMMM YYYY",timeFormatHHMMSS:"HH:MM:SS",timeFormatHHMMSSAmPm:"HH:MM:SS AM/PM",sum:"Sum",first:"First",last:"Last",min:"Min",max:"Max",count:"Count",avg:"Average"};var ChartTranslationService=_ChartTranslationService,VERSION4="32.2.2",ALL_AXIS_TYPES=["number","category","grouped-category","log","time"];function getLegacyAxisType(e){switch(e){case"bar":case"stackedBar":case"normalizedBar":return["number","category"];case"groupedBar":return["number","grouped-category"];case"column":case"stackedColumn":case"normalizedColumn":case"line":case"area":case"stackedArea":case"normalizedArea":case"histogram":return["category","number"];case"groupedColumn":return["grouped-category","number"];case"scatter":case"bubble":return["number","number"];default:return}}function get(e,t,s){if(e==null)return s;const i=t.split(".");let r=e;for(;i.length>1;)if(r=r[i.shift()],r==null)return s;const a=r[i[0]];return a??s}function set(e,t,s){if(e==null)return;const i=t.split(".");let r=e;i.forEach((a,o)=>{r[a]||(r[a]={}),o<i.length-1&&(r=r[a])}),r[i[i.length-1]]=s}function createAgChartTheme(e,t,s,i,r){const{chartOptionsToRestore:a,chartPaletteToRestore:o,chartThemeToRestore:n}=e,l=getSelectedTheme(e),c=isStockTheme(l),h=c?{baseTheme:l}:lookupCustomChartTheme(e,l)??{},d=e.getGridOptionsChartThemeOverrides(),u=e.apiChartThemeOverrides,p=getSeriesType(e.chartType),g=e.crossFiltering?createCrossFilterThemeOverrides(t,e,p):void 0,f=[c?inbuiltStockThemeOverrides(e,s,(()=>{const v=S=>S?Object.keys(S).some(y=>get(S[y],"title.enabled",!1)):!1;return v(d)||v(u)})()):void 0,pieAndDonutOverrides(),i,g,d,u,{...a??{}},r].filter(v=>!!v).reduce((v,S)=>({baseTheme:v,overrides:S}),h);if(o&&l===n){const v=import_ag_charts_community7._Theme.getChartTheme(h).palette;isIdenticalPalette(o,v)||(f.palette=o)}return f}function isIdenticalPalette(e,t){const s=(i,r)=>i===r?!0:i?.length!==r?.length?!1:i?.every((a,o)=>a===r?.[o])??!1;return s(e.fills,t.fills)&&s(e.strokes,t.strokes)}function isStockTheme(e){return(0,import_core88._includes)(Object.keys(import_ag_charts_community7._Theme.themes),e)}function createCrossFilterThemeOverrides(e,t,s){const i={listeners:{legendItemClick:r=>{e.getChart().series.forEach(o=>{o.toggleSeriesItem(r.itemId,r.enabled),o.toggleSeriesItem(`${r.itemId}-filtered-out`,r.enabled)})}}};return{[s]:{tooltip:{delay:500},legend:i,listeners:{click:r=>t.crossFilterCallback(r,!0)}}}}var STATIC_INBUILT_STOCK_THEME_AXES_OVERRIDES=ALL_AXIS_TYPES.reduce((e,t)=>({...e,[t]:{title:{_enabledFromTheme:!0}}}),{});function inbuiltStockThemeOverrides(e,t,s){const i=e.getExtraPaddingDirections();return{common:{...t?{animation:{duration:500}}:void 0,axes:STATIC_INBUILT_STOCK_THEME_AXES_OVERRIDES,padding:{top:!s&&i.includes("top")?40:20,right:i.includes("right")?30:20,bottom:i.includes("bottom")?40:20,left:i.includes("left")?30:20}}}}function pieAndDonutOverrides(){return{pie:{series:{title:{_enabledFromTheme:!0},calloutLabel:{_enabledFromTheme:!0},sectorLabel:{enabled:!1,_enabledFromTheme:!0}}},donut:{series:{title:{_enabledFromTheme:!0},calloutLabel:{_enabledFromTheme:!0},sectorLabel:{enabled:!1,_enabledFromTheme:!0}}}}}function getSelectedTheme(e){let t=e.getChartThemeName();const s=e.getChartThemes();return(0,import_core88._includes)(s,t)||(t=s[0]),t}function lookupCustomChartTheme(e,t){const{customChartThemes:s}=e,i=s&&s[t];return i||(0,import_core88._warnOnce)(`no stock theme exists with the name '${t}' and no custom chart theme with that name was supplied to 'customChartThemes'`),i}var ChartDatasource=class X extends import_core90.BeanStub{wireBeans(t){this.sortController=t.sortController,this.gridRowModel=t.rowModel,this.columnModel=t.columnModel,this.valueService=t.valueService,this.pivotResultColsService=t.pivotResultColsService,this.rowNodeSorter=t.rowNodeSorter,this.aggregationStage=t.aggregationStage}getData(t){if(t.crossFiltering){if(t.grouping)return(0,import_core90._warnOnce)("crossing filtering with row grouping is not supported."),{chartData:[],columnNames:{}};if(!(0,import_core90._isClientSideRowModel)(this.gos))return(0,import_core90._warnOnce)("crossing filtering is only supported in the client side row model."),{chartData:[],columnNames:{}}}(0,import_core90._isServerSideRowModel)(this.gos)&&t.pivoting&&this.updatePivotKeysForSSRM();const i=this.extractRowsFromGridRowModel(t);return i.chartData=this.aggregateRowsByDimension(t,i.chartData),i}extractRowsFromGridRowModel(t){const{crossFiltering:s,startRow:i,endRow:r,valueCols:a,dimensionCols:o,grouping:n}=t;let l=[];const c={},h={},d={};let u={},p=[],g;if(s)u=this.getFilteredRowNodes(),p=this.getAllRowNodes(),g=p.length;else{const v=this.gridRowModel.getRowCount()-1;i===r&&i===0&&o.length===0&&a.length===0?g=0:g=(r>=0?Math.min(r,v):v)-i+1}g>0&&a.forEach(v=>{let S=[];const y=v.getColDef().pivotKeys;y&&(S=y.slice());const w=v.getColDef().headerName;w&&S.push(w),S.length>0&&(c[v.getId()]=S)});let m=0,C=0;for(let v=0;v<g;v++){const S=s?p[v]:this.gridRowModel.getRow(v+i);if(S.footer||S.detail){m++;continue}const y={};o.forEach(w=>{const x=w.colId,b=this.columnModel.getCol(x);if(b){const T=this.valueService.getValue(b,S);if(n){const M=T?.toString?String(T.toString()):"",P=X.getGroupLabels(S,M);y[x]={labels:P,id:C++,toString:function(){return this.labels.filter(D=>!!D).reverse().join(" - ")}},S.group&&(h[P.toString()]=v-m);const R=P.slice(1,P.length).toString();R&&(d[R]=h[R])}else y[x]=T}else y[ChartDataModel.DEFAULT_CATEGORY]=v+1}),a.forEach(w=>{const x=w.getColId();if(s){const b=x+"-filtered-out",T=this.valueService.getValue(w,S),M=T!=null&&typeof T.toNumber=="function"?T.toNumber():T;u[S.id]?(y[x]=M,y[b]=t.aggFunc||t.isScatter?void 0:0):(y[x]=t.aggFunc||t.isScatter?void 0:0,y[b]=M)}else{let b=this.valueService.getValue(w,S);b&&Object.prototype.hasOwnProperty.call(b,"toString")&&(b=parseFloat(b.toString())),y[x]=b!=null&&typeof b.toNumber=="function"?b.toNumber():b}}),l.push(y)}let f;if(n){const v=(0,import_core90._values)(d),S=l;l=[],f=[];for(let y=0;y<S.length;y++)((0,import_core90._includes)(v,y)?f:l).push(S[y])}return{chartData:l,columnNames:c,groupChartData:f}}aggregateRowsByDimension(t,s){const i=t.dimensionCols;if(!t.aggFunc||i.length===0)return s;const r=(0,import_core90._last)(i),a=r&&r.colId,o={},n=[];if(s.forEach(l=>{let c=o;i.forEach(h=>{const d=h.colId,u=l[d];if(d===a){let p=c[u];p||(p={__children:[]},i.forEach(g=>{const m=g.colId;p[m]=l[m]}),c[u]=p,n.push(p)),p.__children.push(l)}else c[u]||(c[u]={}),c=c[u]})}),this.gos.assertModuleRegistered(import_core90.ModuleNames.RowGroupingModule,"Charting Aggregation")){const l=this.aggregationStage;n.forEach(c=>t.valueCols.forEach(h=>{if(t.crossFiltering)t.valueCols.forEach(d=>{const u=d.getColId(),p=c.__children.filter(v=>typeof v[u]<"u").map(v=>v[u]),g=l.aggregateValues(p,t.aggFunc);c[d.getId()]=g&&typeof g.value<"u"?g.value:g;const m=`${u}-filtered-out`,C=c.__children.filter(v=>typeof v[m]<"u").map(v=>v[m]),f=l.aggregateValues(C,t.aggFunc);c[m]=f&&typeof f.value<"u"?f.value:f});else{const d=c.__children.map(p=>p[h.getId()]),u=l.aggregateValues(d,t.aggFunc);c[h.getId()]=u&&typeof u.value<"u"?u.value:u}}))}return n}updatePivotKeysForSSRM(){const t=this.pivotResultColsService.getPivotResultCols()?.list;if(!t)return;const s=this.extractPivotKeySeparator(t);t.forEach(i=>{if(s==="")i.getColDef().pivotKeys=[];else{const r=i.getColId().split(s);i.getColDef().pivotKeys=r.slice(0,r.length-1)}})}extractPivotKeySeparator(t){if(t.length===0)return"";const s=(r,a)=>{const o=r.getGroupId();return r.getParent()?s(r.getParent(),o):a.split(o)[1][0]},i=t[0];return i.getParent()==null?"":s(i.getParent(),i.getColId())}static getGroupLabels(t,s){const i=[s];for(;t&&t.level!==0;)t=t.parent,t&&i.push(t.key);return i}getFilteredRowNodes(){const t={};return this.gridRowModel.forEachNodeAfterFilterAndSort(s=>{t[s.id]=s}),t}getAllRowNodes(){const t=[];return this.gridRowModel.forEachNode(s=>{t.push(s)}),this.sortRowNodes(t)}sortRowNodes(t){const s=this.sortController.getSortOptions();return!s||s.length==0?t:this.rowNodeSorter.doFullSort(t,s)}},ChartColumnService=class extends import_core91.BeanStub{constructor(){super(...arguments),this.beanName="chartColumnService",this.valueColsWithoutSeriesType=new Set}wireBeans(e){this.columnModel=e.columnModel,this.showRowGroupColsService=e.showRowGroupColsService,this.columnNameService=e.columnNameService,this.visibleColsService=e.visibleColsService,this.funcColsService=e.funcColsService,this.valueService=e.valueService,this.rowPositionUtils=e.rowPositionUtils}postConstruct(){const e=()=>this.valueColsWithoutSeriesType.clear();this.addManagedEventListeners({newColumnsLoaded:e,rowDataUpdated:e})}getColumn(e){return this.columnModel.getColDefCol(e)}getAllDisplayedColumns(){return this.visibleColsService.getAllCols()}getColDisplayName(e,t){const s="chart",i=this.columnNameService.getDisplayNameForColumn(e,s);if(t){const r=[i],a=o=>{if(!o)return;const n=this.columnNameService.getDisplayNameForColumnGroup(o,s);(0,import_core91._missingOrEmpty)(n)||(r.unshift(n),a(o.getParent()))};return a(e.getParent()),r.join(" - ")}return i}getRowGroupColumns(){return this.funcColsService.getRowGroupColumns()}getGroupDisplayColumns(){return this.showRowGroupColsService?.getShowRowGroupCols()??[]}isPivotMode(){return this.columnModel.isPivotMode()}isPivotActive(){return this.columnModel.isPivotActive()}getChartColumns(){const e=this.columnModel.getCols(),t=new Set,s=new Set;return e.forEach(i=>{const r=i.getColDef(),a=r.chartDataType;if(a)switch(a){case"category":case"time":t.add(i);return;case"series":s.add(i);return;case"excluded":return;default:(0,import_core91._warnOnce)(`unexpected chartDataType value '${a}' supplied, instead use 'category', 'series' or 'excluded'`);break}if(r.colId==="ag-Grid-AutoColumn"){t.add(i);return}if(!i.isPrimary()){s.add(i);return}(this.isInferredValueCol(i)?s:t).add(i)}),{dimensionCols:t,valueCols:s}}isInferredValueCol(e){const t=e.getColId();if(t==="ag-Grid-AutoColumn")return!1;const s=this.rowPositionUtils.getRowNode({rowIndex:0,rowPinned:null});if(!s)return this.valueColsWithoutSeriesType.has(t);let i=this.valueService.getValue(e,s);i==null&&(i=this.extractLeafData(s,e)),i!=null&&typeof i.toNumber=="function"&&(i=i.toNumber());const r=typeof i=="number";return r&&this.valueColsWithoutSeriesType.add(t),r}extractLeafData(e,t){if(!e.allLeafChildren)return null;for(let s=0;s<e.allLeafChildren.length;s++){const i=e.allLeafChildren[s],r=this.valueService.getValue(t,i);if(r!=null)return r}return null}destroy(){this.valueColsWithoutSeriesType.clear(),super.destroy()}},_ComboChartModel=class Z extends import_core92.BeanStub{constructor(t){super(),this.suppressComboChartWarnings=!1,this.chartDataModel=t,this.seriesChartTypes=t.params.seriesChartTypes??[]}postConstruct(){this.initComboCharts()}update(t){this.seriesChartTypes=t??this.seriesChartTypes,this.initComboCharts(),this.updateSeriesChartTypes()}initComboCharts(){const t=this.seriesChartTypes&&this.seriesChartTypes.length>0;(this.chartDataModel.chartType==="customCombo"||t)&&(this.chartDataModel.chartType="customCombo",this.savedCustomSeriesChartTypes=this.seriesChartTypes||[])}updateSeriesChartTypes(){if(this.chartDataModel.isComboChart()){if(this.seriesChartTypes=this.seriesChartTypes.map(t=>{const s=["groupedColumn","stackedColumn","stackedArea"].includes(t.chartType);return t.secondaryAxis=s?!1:t.secondaryAxis,t}),this.chartDataModel.chartType==="customCombo"){this.updateSeriesChartTypesForCustomCombo();return}this.updateChartSeriesTypesForBuiltInCombos()}}updateSeriesChartTypesForCustomCombo(){!(this.seriesChartTypes&&this.seriesChartTypes.length>0)&&!this.suppressComboChartWarnings&&(0,import_core92._warnOnce)("'seriesChartTypes' are required when the 'customCombo' chart type is specified."),this.seriesChartTypes=this.seriesChartTypes.map(r=>(Z.SUPPORTED_COMBO_CHART_TYPES.includes(r.chartType)||((0,import_core92._warnOnce)(`invalid chartType '${r.chartType}' supplied in 'seriesChartTypes', converting to 'line' instead.`),r.chartType="line"),r));const s=r=>{(!this.savedCustomSeriesChartTypes||this.savedCustomSeriesChartTypes.length===0)&&(this.savedCustomSeriesChartTypes=this.seriesChartTypes);const a=this.savedCustomSeriesChartTypes.find(o=>o.colId===r.colId);return a||(r.selected&&!this.suppressComboChartWarnings&&(0,import_core92._warnOnce)(`no 'seriesChartType' found for colId = '${r.colId}', defaulting to 'line'.`),{colId:r.colId,chartType:"line",secondaryAxis:!1})},i=this.chartDataModel.valueColState.map(s);this.seriesChartTypes=i,this.savedCustomSeriesChartTypes=i,this.suppressComboChartWarnings=!0}updateChartSeriesTypesForBuiltInCombos(){const{chartType:t,valueColState:s}=this.chartDataModel,i=t==="columnLineCombo"?"groupedColumn":"stackedArea",r=t==="columnLineCombo"?"line":"groupedColumn",a=s.filter(n=>n.selected),o=Math.ceil(a.length/2);this.seriesChartTypes=a.map((n,l)=>{const c=l>=o?r:i;return{colId:n.colId,chartType:c,secondaryAxis:!1}})}};_ComboChartModel.SUPPORTED_COMBO_CHART_TYPES=["line","groupedColumn","stackedColumn","area","stackedArea"];var ComboChartModel=_ComboChartModel,_ChartDataModel=class z extends import_core89.BeanStub{constructor(t){super(),this.unlinked=!1,this.chartData=[],this.valueColState=[],this.dimensionColState=[],this.columnNames={},this.crossFiltering=!1,this.grouping=!1,this.params=t,this.chartId=t.chartId,this.setParams(t)}wireBeans(t){this.rangeService=t.rangeService,this.chartTranslationService=t.chartTranslationService}setParams(t){const{chartType:s,pivotChart:i,chartThemeName:r,switchCategorySeries:a,aggFunc:o,cellRange:n,suppressChartRanges:l,unlinkChart:c,crossFiltering:h,seriesGroupType:d}=t;this.chartType=s,this.pivotChart=i??!1,this.chartThemeName=r,this.switchCategorySeries=!!a,this.aggFunc=o,this.referenceCellRange=n,this.suppliedCellRange=n,this.suppressChartRanges=l??!1,this.unlinked=!!c,this.crossFiltering=!!h,this.seriesGroupType=d}postConstruct(){this.datasource=this.createManagedBean(new ChartDatasource),this.chartColumnService=this.createManagedBean(new ChartColumnService),this.comboChartModel=this.createManagedBean(new ComboChartModel(this)),this.updateCellRanges({setColsFromRange:!0}),this.updateData()}updateModel(t){const{cellRange:s,seriesChartTypes:i}=t;s!==this.suppliedCellRange&&(this.dimensionCellRange=void 0,this.valueCellRange=void 0),this.setParams(t),this.updateSelectedDimensions(s?.columns),this.updateCellRanges({setColsFromRange:!0}),(this.isComboChart()||i)&&this.comboChartModel.update(i),this.unlinked||this.updateData()}updateCellRanges(t){const{updatedColState:s,resetOrder:i,maintainColState:r,setColsFromRange:a}=t??{};this.valueCellRange&&(this.referenceCellRange=this.valueCellRange);const{dimensionCols:o,valueCols:n}=this.chartColumnService.getChartColumns(),l=this.getAllColumnsFromRanges();s&&this.updateColumnState(s,i),this.setDimensionCellRange(o,l,s),this.setValueCellRange(n,l,a),!s&&!r&&(this.resetColumnState(),this.syncDimensionCellRange()),this.comboChartModel.updateSeriesChartTypes()}updateData(){const{startRow:t,endRow:s}=this.getRowIndexes();this.pivotChart&&this.resetColumnState(),this.grouping=this.isGrouping();const i={aggFunc:this.aggFunc,dimensionCols:this.getSelectedDimensions(),grouping:this.grouping,pivoting:this.isPivotActive(),crossFiltering:this.crossFiltering,valueCols:this.getSelectedValueCols(),startRow:t,endRow:s,isScatter:(0,import_core89._includes)(["scatter","bubble"],this.chartType)},{chartData:r,columnNames:a,groupChartData:o}=this.datasource.getData(i);this.chartData=r,this.groupChartData=o,this.columnNames=a,this.categoryAxisType=void 0}isGrouping(){const t=this.gos.get("treeData"),s=t?null:this.chartColumnService.getRowGroupColumns(),i=t||s&&s.length>0,r=this.getSelectedDimensions().map(({colId:n})=>n),o=this.chartColumnService.getGroupDisplayColumns().map(n=>n.getColId()).some(n=>r.includes(n));return!!i&&o}getSelectedValueCols(){return this.valueColState.filter(t=>t.selected).map(t=>t.column)}getSelectedDimensions(){return this.dimensionColState.filter(t=>t.selected)}getColDisplayName(t,s){return this.chartColumnService.getColDisplayName(t,s)}isPivotMode(){return this.chartColumnService.isPivotMode()}getChartDataType(t){const s=this.chartColumnService.getColumn(t);return s?s.getColDef().chartDataType:void 0}isPivotActive(){return this.chartColumnService.isPivotActive()}createCellRange(t,...s){return{id:this.chartId,startRow:this.referenceCellRange.startRow,endRow:this.referenceCellRange.endRow,columns:s,startColumn:t===import_core89.CellRangeType.DIMENSION||this.referenceCellRange.startColumn==null?s[0]:this.referenceCellRange.startColumn,type:t}}getAllColumnsFromRanges(){if(this.pivotChart)return new Set(this.chartColumnService.getAllDisplayedColumns());const t=this.dimensionCellRange||this.valueCellRange?[]:this.referenceCellRange.columns;return this.dimensionCellRange&&t.push(...this.dimensionCellRange.columns),this.valueCellRange&&t.push(...this.valueCellRange.columns),new Set(t)}getRowIndexes(){let t=0,s=0;const{rangeService:i,valueCellRange:r,dimensionCellRange:a}=this,o=r||a;if(i&&o){t=i.getRangeStartRow(o).rowIndex;const n=i.getRangeEndRow(o);s=n.rowPinned==="bottom"?-1:n.rowIndex}return{startRow:t,endRow:s}}resetColumnState(){const{dimensionCols:t,valueCols:s}=this.chartColumnService.getChartColumns(),i=this.getAllColumnsFromRanges(),r=this.valueColState.length<1;this.dimensionColState=[],this.valueColState=[];const a=isHierarchical(getSeriesType(this.chartType));let o=!1,n=1;const l=this.suppliedCellRange.columns[0];t.forEach(d=>{const u=d.getColId()==="ag-Grid-AutoColumn";let p=!1;this.crossFiltering&&this.aggFunc?l.getColId()===d.getColId()&&(p=!0):p=u?!0:(!o||a)&&i.has(d),this.dimensionColState.push({column:d,colId:d.getColId(),displayName:this.getColDisplayName(d),selected:p,order:n++}),p&&(o=!0)});const c={colId:z.DEFAULT_CATEGORY,displayName:this.chartTranslationService.translate("defaultCategory"),selected:!o,order:0};this.dimensionColState.unshift(c);const h=this.referenceCellRange.columns.filter(d=>s.has(d));s.forEach(d=>{r&&(0,import_core89._includes)(this.referenceCellRange.columns,d)&&(d=h.shift()),this.valueColState.push({column:d,colId:d.getColId(),displayName:this.getColDisplayName(d),selected:i.has(d),order:n++})})}updateColumnState(t,s){const i=h=>h.colId===t.colId,{dimensionColState:r,valueColState:a}=this,o=r.find(i),n=a.find(i);if(o)if(isHierarchical(getSeriesType(this.chartType)))o.selected=t.selected;else{const d=t.selected?o:r.filter(u=>u!==o).find(({selected:u})=>u);r.forEach(u=>u.selected=u===d)}else n&&(n.selected=t.selected);const l=[...r,...a],c=[];s||(l.forEach((h,d)=>{d===t.order&&c.push(t.colId),h.colId!==t.colId&&c.push(h.colId)}),l.forEach(h=>{const d=c.indexOf(h.colId);h.order=d>=0?c.indexOf(h.colId):l.length-1})),this.reorderColState()}reorderColState(){const t=(s,i)=>s.order-i.order;this.dimensionColState.sort(t),this.valueColState.sort(t)}setDimensionCellRange(t,s,i){this.dimensionCellRange=void 0;const r=isHierarchical(getSeriesType(this.chartType));if(!i&&!this.dimensionColState.length){const l=new Array;t.forEach(c=>{l.length>0&&!r||!s.has(c)||l.push(c)}),l.length>0&&(this.dimensionCellRange=this.createCellRange(import_core89.CellRangeType.DIMENSION,...l));return}let a=i?[i]:[];if(this.crossFiltering&&this.aggFunc){const l=this.suppliedCellRange.columns[0];a=this.dimensionColState.filter(c=>c.colId===l.getColId())}else(r||a.length===0||a.some(({column:l})=>!l||!t.has(l)))&&(a=this.dimensionColState.filter(l=>l.selected));const o=a.length===1?a[0].colId===z.DEFAULT_CATEGORY:!1,n=a.map(({column:l})=>l).filter(l=>l!=null);n.length>0&&!o&&(this.dimensionCellRange=this.createCellRange(import_core89.CellRangeType.DIMENSION,...n))}setValueCellRange(t,s,i){this.valueCellRange=void 0;const r=[],a=getMaxNumSeries(this.chartType);let o=0;if(t.forEach(n=>{i?(a==null||o<a)&&s.has(n)&&(r.push(n),o++):this.valueColState.some(l=>l.selected&&l.colId===n.getColId())&&r.push(n)}),r.length>0){let n=[];this.valueColState.length>0?n=this.valueColState.map(l=>l.colId):s.forEach(l=>n.push(l.getColId())),r.sort((l,c)=>n.indexOf(l.getColId())-n.indexOf(c.getColId())),this.valueCellRange=this.createCellRange(import_core89.CellRangeType.VALUE,...r)}}resetCellRanges(t,s){if(!t&&!s)return;const{dimensionCols:i,valueCols:r}=this.chartColumnService.getChartColumns(),a=this.getAllColumnsFromRanges();t&&this.setDimensionCellRange(i,a),s&&this.setValueCellRange(r,a)}updateSelectedDimensions(t){const s=new Set(t.map(r=>r.getColId()));if(isHierarchical(getSeriesType(this.chartType))){const r=this.dimensionColState.filter(o=>s.has(o.colId)),a=new Set(r.map(o=>o.colId));this.dimensionColState=this.dimensionColState.map(o=>({...o,selected:a.has(o.colId)}))}else{const a=(this.dimensionColState.find(o=>s.has(o.colId))||this.dimensionColState[0]).colId;this.dimensionColState=this.dimensionColState.map(o=>({...o,selected:o.colId===a}))}}syncDimensionCellRange(){const t=this.getSelectedDimensions();if(t.length===0)return;const s=t.map(({column:i})=>i).filter(i=>i!=null);s.length>0&&(this.dimensionCellRange=this.createCellRange(import_core89.CellRangeType.DIMENSION,...s))}isComboChart(t){return isComboChart(t??this.chartType)}};_ChartDataModel.DEFAULT_CATEGORY="AG-GRID-DEFAULT-CATEGORY";var ChartDataModel=_ChartDataModel,validateIfDefined=e=>t=>t==null?!0:e(t),isString=e=>typeof e=="string",isBoolean=e=>typeof e=="boolean",isValidSeriesChartType=e=>typeof e=="object",createWarnMessage=(e,t)=>s=>`AG Grid - unable to update chart as invalid params supplied: \`${e}: ${s}\`, expected ${t}.`,createEnterpriseMessage=e=>`${e} is not supported in AG Charts Community (either 'ag-grid-charts-enterprise' or '@ag-grid-enterprise/charts-enterprise' hasn't been loaded). See https://www.ag-grid.com/javascript-data-grid/integrated-charts-installation/ for more details.`,_ChartParamsValidator=class O{static isEnterprise(){return import_ag_charts_community8._ModuleSupport.enterpriseModule.isEnterprise}static isValidChartType(t){return!!getSeriesTypeIfExists(t)||isComboChart(t)}static isLegacyChartType(t){return O.legacyChartTypes.includes(t)}static validateUpdateParams(t){switch(t.type){case"rangeChartUpdate":return O.validateUpdateRangeChartParams(t);case"pivotChartUpdate":return O.validateUpdatePivotChartParams(t);case"crossFilterChartUpdate":return O.validateUpdateCrossFilterChartParams(t);default:return(0,import_core93._warnOnce)(`Invalid value supplied for 'type': ${t.type}. It must be either 'rangeChartUpdate', 'pivotChartUpdate', or 'crossFilterChartUpdate'.`),!1}}static validateCreateParams(t){return validateProperties(t,[O.enterpriseChartTypeValidation,O.switchCategorySeriesValidation])}static validateUpdateRangeChartParams(t){const s=[...O.commonUpdateValidations,O.enterpriseChartTypeValidation,...O.cellRangeValidations,{property:"seriesChartTypes",validationFn:i=>i===void 0||Array.isArray(i)&&i.every(isValidSeriesChartType),warnMessage:createWarnMessage("seriesChartTypes","Array of SeriesChartType")}];return validateProperties(t,s,[...O.baseUpdateChartParams,"cellRange","suppressChartRanges","switchCategorySeries","aggFunc","seriesChartTypes","seriesGroupType"],"UpdateRangeChartParams")}static validateUpdatePivotChartParams(t){const s=[...O.commonUpdateValidations];return validateProperties(t,s,[...O.baseUpdateChartParams],"UpdatePivotChartParams")}static validateUpdateCrossFilterChartParams(t){const s=[...O.commonUpdateValidations,...O.cellRangeValidations];return validateProperties(t,s,[...O.baseUpdateChartParams,"cellRange","suppressChartRanges","aggFunc"],"UpdateCrossFilterChartParams")}};_ChartParamsValidator.legacyChartTypes=["doughnut"],_ChartParamsValidator.baseUpdateChartParams=["type","chartId","chartType","chartThemeName","chartThemeOverrides","unlinkChart"],_ChartParamsValidator.validateChartType=validateIfDefined(e=>{if(_ChartParamsValidator.isValidChartType(e))return!0;if(_ChartParamsValidator.isLegacyChartType(e)){const t=getCanonicalChartType(e);return(0,import_core93._warnOnce)(`The chart type '${e}' has been deprecated. Please use '${t}' instead.`),t}return!1}),_ChartParamsValidator.validateAgChartThemeOverrides=validateIfDefined(e=>typeof e=="object"),_ChartParamsValidator.validateChartParamsCellRange=validateIfDefined(e=>typeof e=="object"),_ChartParamsValidator.validateAggFunc=validateIfDefined(e=>typeof e=="string"||typeof e=="function"),_ChartParamsValidator.enterpriseChartTypeValidation={property:"chartType",validationFn:validateIfDefined(e=>_ChartParamsValidator.isEnterprise()||!e||!isEnterpriseChartType(e)),warnMessage:e=>createEnterpriseMessage(`The '${e}' chart type`)},_ChartParamsValidator.switchCategorySeriesValidation={property:"switchCategorySeries",validationFn:validateIfDefined(e=>{if(!e||_ChartParamsValidator.isEnterprise())return!0}),warnMessage:()=>createEnterpriseMessage("'switchCategorySeries' has been ignored as it"),warnIfFixed:!0},_ChartParamsValidator.commonUpdateValidations=[{property:"chartId",validationFn:isString,warnMessage:createWarnMessage("chartId","string")},{property:"chartType",validationFn:_ChartParamsValidator.validateChartType,warnMessage:createWarnMessage("chartType","ChartType")},{property:"chartThemeName",validationFn:isString,warnMessage:createWarnMessage("chartThemeName","string")},{property:"chartThemeOverrides",validationFn:_ChartParamsValidator.validateAgChartThemeOverrides,warnMessage:createWarnMessage("chartThemeOverrides","AgChartThemeOverrides")},{property:"unlinkChart",validationFn:isBoolean,warnMessage:createWarnMessage("unlinkChart","boolean")}],_ChartParamsValidator.cellRangeValidations=[{property:"cellRange",validationFn:_ChartParamsValidator.validateChartParamsCellRange,warnMessage:createWarnMessage("cellRange","ChartParamsCellRange")},{property:"suppressChartRanges",validationFn:isBoolean,warnMessage:createWarnMessage("suppressChartRanges","boolean")},{property:"aggFunc",validationFn:_ChartParamsValidator.validateAggFunc,warnMessage:createWarnMessage("aggFunc","string or IAggFunc")},_ChartParamsValidator.switchCategorySeriesValidation];var ChartParamsValidator=_ChartParamsValidator;function validateProperties(e,t,s,i){let r;for(const a of t){const{property:o,validationFn:n,warnMessage:l,warnIfFixed:c}=a;if(o in e){const h=e[o],d=n(h);if(d===!0)continue;if(d===!1)return(0,import_core93._warnOnce)(l(h)),!1;r=r||{...e},r[o]=d,c&&(0,import_core93._warnOnce)(l(h))}}if(s){for(const a in e)if(!s.includes(a))return(0,import_core93._warnOnce)(`Unexpected property supplied. ${i} does not contain: \`${a}\`.`),!1}return r||!0}var DEFAULT_THEMES=["ag-default","ag-material","ag-sheets","ag-polychroma","ag-vivid"],ChartController=class extends import_core87.BeanStub{constructor(e){super(),this.model=e,this.isEnterprise=()=>import_ag_charts_community6._ModuleSupport.enterpriseModule.isEnterprise}wireBeans(e){this.rangeService=e.rangeService}postConstruct(){this.setChartRange(),this.model.unlinked&&this.rangeService&&this.rangeService.setCellRanges([]);const e=this.updateForGridChange.bind(this,{});this.addManagedEventListeners({cellSelectionChanged:t=>{t.id&&t.id===this.model.chartId&&this.updateForRangeChange()},columnMoved:e,columnPinned:e,columnVisible:e,columnRowGroupChanged:e,modelUpdated:e,cellValueChanged:this.updateForDataChange.bind(this)})}update(e){if(!this.validUpdateType(e))return!1;const t=ChartParamsValidator.validateUpdateParams(e);if(!t)return!1;const s=t===!0?e:t;return this.applyValidatedChartParams(s),!0}applyValidatedChartParams(e){const{chartId:t,chartType:s,chartThemeName:i,unlinkChart:r}=e,o={...{chartId:t,pivotChart:this.model.pivotChart,chartType:s??this.model.chartType,chartThemeName:i??this.model.chartThemeName,unlinkChart:r??this.model.unlinked,cellRange:this.model.suppliedCellRange,switchCategorySeries:this.model.switchCategorySeries,aggFunc:this.model.aggFunc,seriesChartTypes:void 0,suppressChartRanges:!1,crossFiltering:!1}};switch(e.type){case"rangeChartUpdate":o.cellRange=this.createCellRange(e)??this.model.suppliedCellRange,o.switchCategorySeries=e.switchCategorySeries??this.model.switchCategorySeries,o.aggFunc=e.aggFunc??this.model.aggFunc,o.seriesChartTypes=e.seriesChartTypes,o.suppressChartRanges=e.suppressChartRanges??this.model.suppressChartRanges,o.seriesGroupType=e.seriesGroupType??this.model.seriesGroupType;break;case"crossFilterChartUpdate":o.cellRange=this.createCellRange(e)??this.model.suppliedCellRange,o.switchCategorySeries=!1,o.aggFunc=e.aggFunc??this.model.aggFunc,o.crossFiltering=!0,o.suppressChartRanges=e.suppressChartRanges??this.model.suppressChartRanges;break;case"pivotChartUpdate":o.switchCategorySeries=!1;break}this.model.updateModel(o),o.unlinkChart||o.suppressChartRanges?this.rangeService?.setCellRanges([]):this.setChartRange()}updateForGridChange(e){if(this.model.unlinked)return;const{maintainColState:t,setColsFromRange:s}=e??{};this.model.updateCellRanges({maintainColState:t,setColsFromRange:s}),this.model.updateData(),this.setChartRange()}updateForDataChange(){this.model.unlinked||(this.model.updateData(),this.raiseChartModelUpdateEvent())}updateForRangeChange(){this.updateForGridChange({setColsFromRange:!0}),this.raiseChartRangeSelectionChangedEvent()}updateForPanelChange(e){this.model.updateCellRanges(e),this.model.updateData(),e.skipAnimation&&this.getChartProxy().getChartRef().skipAnimations(),this.setChartRange(),this.raiseChartRangeSelectionChangedEvent()}updateThemeOverrides(e){this.chartProxy.updateThemeOverrides(e)}getChartUpdateParams(e){const s=this.getSelectedValueColState().map(o=>({colId:o.colId,displayName:o.displayName})),i=this.getChartData(),r=this.getSelectedDimensions(),a={data:i,groupData:this.model.groupChartData,grouping:this.isGrouping(),categories:r.map(o=>({id:o.colId,name:o.displayName,chartDataType:this.model.categoryAxisType??this.model.getChartDataType(o.colId)})),fields:s,chartId:this.getChartId(),getCrossFilteringContext:()=>({lastSelectedChartId:"xxx"}),seriesChartTypes:this.getSeriesChartTypes(),updatedOverrides:e,seriesGroupType:this.model.seriesGroupType};return this.isCategorySeriesSwitched()?this.invertCategorySeriesParams(a):a}invertCategorySeriesParams(e){const[t]=e.categories,s=[{id:ChartDataModel.DEFAULT_CATEGORY,name:""}],i=e.data.map((a,o)=>{const n=`${t.id}:${o}`,l=a[t.id],c=l==null?"":String(l);return{colId:n,displayName:c}}),r=e.fields.map(a=>{const o={[ChartDataModel.DEFAULT_CATEGORY]:a.displayName};for(const[n,l]of e.data.entries()){const c=`${t.id}:${n}`,h=l[a.colId];o[c]=h}return o});return{...e,categories:s,fields:i,data:r}}getChartModel(){const e=this.model.pivotChart?"pivot":"range",t=this.isComboChart()?this.model.comboChartModel.seriesChartTypes:void 0;return{modelType:e,chartId:this.model.chartId,chartType:this.model.chartType,chartThemeName:this.getChartThemeName(),chartOptions:this.chartProxy.getChartThemeOverrides(),chartPalette:this.chartProxy.getChartPalette(),cellRange:this.getCellRangeParams(),switchCategorySeries:this.model.switchCategorySeries,suppressChartRanges:this.model.suppressChartRanges,aggFunc:this.model.aggFunc,unlinkChart:this.model.unlinked,seriesChartTypes:t,seriesGroupType:this.model.seriesGroupType}}getChartId(){return this.model.chartId}getChartData(){return this.model.chartData}getChartType(){return this.model.chartType}setChartType(e){this.updateMultiSeriesAndCategory(this.model.chartType,e),this.model.chartType=e,this.model.comboChartModel.updateSeriesChartTypes(),this.model.switchCategorySeries=!1,this.model.categoryAxisType=void 0,this.model.seriesGroupType=void 0,this.raiseChartModelUpdateEvent(),this.raiseChartOptionsChangedEvent()}isCategorySeriesSwitched(){return this.model.switchCategorySeries&&!this.model.isGrouping()}switchCategorySeries(e){supportsInvertedCategorySeries(this.getChartType())&&(this.model.switchCategorySeries=e,this.raiseChartModelUpdateEvent())}getAggFunc(){return this.model.aggFunc}setAggFunc(e,t){this.model.aggFunc!==e&&(this.model.aggFunc=e,!t&&(this.model.updateData(),this.raiseChartModelUpdateEvent()))}updateMultiSeriesAndCategory(e,t){const s=(n,l)=>{let c=0;for(const h of n)h.selected&&(c>=l?h.selected=!1:c++);c===0&&(n[0].selected=!0)},i=getMaxNumCategories(t),r=getMaxNumSeries(t),a=i!=null&&(getMaxNumCategories(e)??100)>(i??100),o=r!=null&&(getMaxNumSeries(e)??100)>(r??100);a&&s(this.model.dimensionColState,i),o&&s(this.model.valueColState,r),(a||o)&&(this.model.resetCellRanges(a,o),this.setChartRange(!0))}setChartThemeName(e,t){this.model.chartThemeName=e,t||(this.raiseChartModelUpdateEvent(),this.raiseChartOptionsChangedEvent())}getChartThemeName(){return this.model.chartThemeName}isPivotChart(){return this.model.pivotChart}isPivotMode(){return this.model.isPivotMode()}isGrouping(){return this.model.isGrouping()}isCrossFilterChart(){return this.model.crossFiltering}getThemeNames(){return this.gos.get("chartThemes")||DEFAULT_THEMES}getThemes(){return this.getThemeNames().map(t=>{const i=isStockTheme(t)?t:this.chartProxy.lookupCustomChartTheme(t);return import_ag_charts_community6._Theme.getChartTheme(i)})}getPalettes(){return this.getThemes().map(t=>t.palette)}getThemeTemplateParameters(){return this.getThemes().map(t=>t.getTemplateParameters())}getValueColState(){return this.model.valueColState.map(this.displayNameMapper.bind(this))}getSelectedValueColState(){return this.getValueColState().filter(e=>e.selected)}getSelectedDimensions(){return this.model.getSelectedDimensions()}displayNameMapper(e){const{column:t}=e;if(t)e.displayName=this.model.getColDisplayName(t,this.model.isPivotMode());else{const s=this.model.columnNames[e.colId];e.displayName=s?s.join(" - "):this.model.getColDisplayName(t)}return e}getColStateForMenu(){return{dimensionCols:this.model.dimensionColState,valueCols:this.getValueColState()}}setChartRange(e=!1){this.rangeService&&!this.model.suppressChartRanges&&!this.model.unlinked&&this.rangeService.setCellRanges(this.getCellRanges()),e||this.raiseChartModelUpdateEvent()}detachChartRange(){this.model.unlinked=!this.model.unlinked,this.model.unlinked?this.rangeService&&this.rangeService.setCellRanges([]):this.updateForGridChange(),this.dispatchLocalEvent({type:"chartLinkedChanged"})}setChartProxy(e){this.chartProxy=e}getChartProxy(){return this.chartProxy}isActiveXYChart(){return["scatter","bubble"].includes(this.getChartType())}isChartLinked(){return!this.model.unlinked}customComboExists(){const e=this.model.comboChartModel.savedCustomSeriesChartTypes;return e&&e.length>0}getSeriesChartTypes(){return this.model.comboChartModel.seriesChartTypes}isComboChart(e){return this.model.isComboChart(e)}updateSeriesChartType(e,t,s){const i=this.model.comboChartModel.seriesChartTypes.find(r=>r.colId===e);if(i){const r=this.model.chartType!=="customCombo";r&&(this.model.chartType="customCombo");const a=i.chartType;t!=null&&(i.chartType=t),s!=null&&(i.secondaryAxis=s),this.model.comboChartModel.savedCustomSeriesChartTypes=this.model.comboChartModel.seriesChartTypes,this.model.comboChartModel.updateSeriesChartTypes(),this.updateForDataChange(),r&&this.dispatchLocalEvent({type:"chartTypeChanged"}),a!==t&&this.dispatchLocalEvent({type:"chartSeriesChartTypeChanged"}),this.raiseChartOptionsChangedEvent()}}getActiveSeriesChartTypes(){const e=this.getSelectedValueColState().map(t=>t.colId);return this.getSeriesChartTypes().filter(t=>e.includes(t.colId))}getChartSeriesTypes(e){const t=e??this.getChartType();return this.isComboChart(t)?["line","bar","area"]:[getSeriesType(t)]}getChartSeriesType(){const e=this.getSeriesChartTypes();if(e.length===0)return"bar";const t=e[0].chartType;return t==="columnLineCombo"?"bar":t==="areaColumnCombo"?"area":getSeriesType(t)}getCellRanges(){return[this.model.dimensionCellRange,this.model.valueCellRange].filter(e=>e)}createCellRange(e){return e.cellRange&&this.rangeService?.createPartialCellRangeFromRangeParams(e.cellRange,!0)}validUpdateType(e){if(!e.type)return(0,import_core87._warnOnce)("Unable to update chart as the 'type' is missing. It must be either 'rangeChartUpdate', 'pivotChartUpdate', or 'crossFilterChartUpdate'."),!1;const t={"Range Chart":()=>!this.isPivotChart()&&!this.isCrossFilterChart(),"Pivot Chart":()=>this.isPivotChart(),"Cross Filter Chart":()=>this.isCrossFilterChart()},s=Object.keys(t).find(r=>t[r]())??"Range Chart",i=e.type===`${s[0].toLowerCase()}${s.slice(1).replace(/ /g,"")}Update`;return i||(0,import_core87._warnOnce)(`Unable to update chart as a '${e.type}' update type is not permitted on a ${s}.`),i}getCellRangeParams(){const e=this.getCellRanges(),t=e[0],s=t&&t.startRow||null,i=t&&t.endRow||null;return{rowStartIndex:s&&s.rowIndex,rowStartPinned:s&&s.rowPinned,rowEndIndex:i&&i.rowIndex,rowEndPinned:i&&i.rowPinned,columns:e.reduce((r,a)=>r.concat(a.columns.map(o=>o.getId())),[])}}setCategoryAxisType(e){this.model.categoryAxisType=e,this.raiseChartModelUpdateEvent()}getSeriesGroupType(){return this.model.seriesGroupType??this.chartProxy.getSeriesGroupType()}setSeriesGroupType(e){this.model.seriesGroupType=e,this.raiseChartModelUpdateEvent()}raiseChartModelUpdateEvent(){this.dispatchLocalEvent({type:"chartModelUpdate"})}raiseChartUpdatedEvent(){this.dispatchLocalEvent({type:"chartUpdated"})}raiseChartApiUpdateEvent(){this.dispatchLocalEvent({type:"chartApiUpdate"})}raiseChartOptionsChangedEvent(){const{chartId:e,chartType:t}=this.getChartModel();this.eventService.dispatchEvent({type:"chartOptionsChanged",chartId:e,chartType:t,chartThemeName:this.getChartThemeName(),chartOptions:this.chartProxy.getChartThemeOverrides()})}raiseChartRangeSelectionChangedEvent(){this.eventService.dispatchEvent({type:"chartRangeSelectionChanged",id:this.model.chartId,chartId:this.model.chartId,cellRange:this.getCellRangeParams()})}destroy(){super.destroy(),this.rangeService&&this.rangeService.setCellRanges([])}};function deproxy(e){return e.chart!=null?e.chart:e}var ChartProxy=class{constructor(e){this.chartProxyParams=e,this.clearThemeOverrides=!1,this.isEnterpriseCharts=import_ag_charts_community9._ModuleSupport.enterpriseModule.isEnterprise,this.chart=e.chartInstance,this.chartType=e.chartType,this.crossFiltering=e.crossFiltering,this.crossFilterCallback=e.crossFilterCallback,this.standaloneChartType=getSeriesType(this.chartType),this.chart==null?this.chart=import_ag_charts_community9.AgCharts.create(this.getCommonChartOptions()):this.clearThemeOverrides=!0}crossFilteringReset(){}update(e){this.getChartRef().update(this.getUpdateOptions(e,this.getCommonChartOptions(e.updatedOverrides)))}updateThemeOverrides(e){this.getChartRef().updateDelta({theme:{overrides:e}})}getChart(){return deproxy(this.chart)}getChartRef(){return this.chart}downloadChart(e,t,s){const{chart:i}=this,r=deproxy(i),a=t||(r.title?r.title.text:"chart"),{width:o,height:n}=e||{};i.download({width:o,height:n,fileName:a,fileFormat:s})}getChartImageDataURL(e){return this.getChart().getCanvasDataURL(e)}getChartOptions(){return this.chart.getOptions()}getChartThemeOverrides(){return this.getChartOptions().theme.overrides??{}}getChartPalette(){return import_ag_charts_community9._Theme.getChartTheme(this.getChartOptions().theme).palette}setPaired(e){const t=getSeriesType(this.chartProxyParams.chartType);this.chart.updateDelta({theme:{overrides:{[t]:{paired:e}}}})}isPaired(){const e=getSeriesType(this.chartProxyParams.chartType);return get(this.getChartThemeOverrides(),`${e}.paired`,!0)}lookupCustomChartTheme(e){return lookupCustomChartTheme(this.chartProxyParams,e)}getSeriesGroupType(){}transformCategoryData(e,t){return e.map((s,i)=>{const r=s[t],a=r&&r.toString?r.toString():"",o={...s};return o[t]={id:i,value:r,toString:()=>a},o})}getCommonChartOptions(e){const t=this.clearThemeOverrides?{}:this.chart?.getOptions()??{},s=this.chart!=null?this.getActiveFormattingPanelOverrides():void 0;this.clearThemeOverrides=!1;const i=createAgChartTheme(this.chartProxyParams,this,this.isEnterpriseCharts,this.getChartThemeDefaults(),e??s),r={...t,mode:"integrated"};return r.theme=i,r.container=this.chartProxyParams.parentElement,r}getChartThemeDefaults(){const e=this.getSeriesChartThemeDefaults(),t=e?{[this.standaloneChartType]:e}:{},s={enabled:!0,snap:!0,label:{enabled:!1}},i=this.isEnterpriseCharts?{zoom:{enabled:!0},animation:{enabled:!0,duration:500},axes:{number:{crosshair:s},category:{crosshair:s},log:{crosshair:s},time:{crosshair:s}}}:{};return i.minHeight=0,i.minWidth=0,i.navigator={enabled:!1},{common:i,...t}}getSeriesChartThemeDefaults(){}getActiveFormattingPanelOverrides(){return this.clearThemeOverrides?{}:this.chart?.getOptions().theme?.overrides??{}}destroy({keepChartInstance:e=!1}={}){if(e)return this.chart.resetAnimations(),this.chart;this.destroyChart()}destroyChart(){this.chart&&(this.chart.destroy(),this.chart=void 0)}},CartesianChartProxy=class extends ChartProxy{constructor(e){super(e),this.crossFilteringAllPoints=new Set,this.crossFilteringSelectedPoints=[]}getUpdateOptions(e,t){const s=this.getAxes(e,t);return{...t,data:this.getData(e,s),axes:s,series:this.getSeries(e)}}getData(e,t){const s=["area","line"].includes(this.standaloneChartType);return this.crossFiltering&&s?this.getCrossFilterData(e):this.getDataTransformedData(e,t)}getDataTransformedData(e,t){const s=t[0].type,{categories:i,data:r}=e,[a]=i;switch(s){case"category":return this.transformCategoryData(r,a.id);case"time":return this.transformTimeData(r,a.id);default:return r}}getXAxisType(e){return e.grouping?"grouped-category":this.isXAxisOfType(e,"time",t=>t instanceof Date)?"time":this.isXAxisOfType(e,"number")?"number":"category"}isXAxisOfType(e,t,s){const[i]=e.categories;if(i?.chartDataType)return i.chartDataType===t;if(!s)return!1;const r=e.data[0];return r?s(r[i.id]):!1}transformTimeData(e,t){return e[0]?.[t]instanceof Date?e:e.map(i=>{const r=i[t];return typeof r=="string"?{...i,[t]:new Date(r)}:i})}crossFilteringReset(){this.crossFilteringSelectedPoints=[],this.crossFilteringAllPoints.clear()}crossFilteringPointSelected(e){return this.crossFilteringSelectedPoints.length==0||this.crossFilteringSelectedPoints.includes(e)}crossFilteringDeselectedPoints(){return this.crossFilteringSelectedPoints.length>0&&this.crossFilteringAllPoints.size!==this.crossFilteringSelectedPoints.length}extractLineAreaCrossFilterSeries(e,t){const[s]=t.categories,i=r=>this.standaloneChartType==="area"?t.getCrossFilteringContext().lastSelectedChartId===t.chartId?r+"-total":r:r+"-total";return e.map(r=>(r.yKey=i(r.yKey),r.listeners={nodeClick:a=>{const o=a.datum[r.xKey],n=a.event.metaKey||a.event.ctrlKey;this.crossFilteringAddSelectedPoint(n,o),this.crossFilterCallback(a)}},r.marker={itemStyler:a=>{const o=a.datum[s.id];return{fill:a.highlighted?"yellow":a.fill,size:a.highlighted?14:this.crossFilteringPointSelected(o)?8:0}}},this.standaloneChartType==="area"&&(r.fillOpacity=this.crossFilteringDeselectedPoints()?.3:1),this.standaloneChartType==="line"&&(r.strokeOpacity=this.crossFilteringDeselectedPoints()?.3:1),r))}getCrossFilterData(e){this.crossFilteringAllPoints.clear();const[t]=e.categories,s=e.fields[0].colId,i=`${s}-filtered-out`,r=e.getCrossFilteringContext().lastSelectedChartId;return e.data.map(a=>{const o=a[t.id];this.crossFilteringAllPoints.add(o);const n=this.crossFilteringPointSelected(o);return this.standaloneChartType==="area"&&r===e.chartId&&(a[`${s}-total`]=n?a[s]:a[s]+a[i]),this.standaloneChartType==="line"&&(a[`${s}-total`]=n?a[s]:a[s]+a[i]),a})}crossFilteringAddSelectedPoint(e,t){e?this.crossFilteringSelectedPoints.push(t):this.crossFilteringSelectedPoints=[t]}isHorizontal(e){const t=this.standaloneChartType;if(t!=="waterfall"&&t!=="box-plot"&&t!=="range-bar")return!1;const s=e.theme,i=r=>{const a=r?.overrides?.[t]?.series?.direction;return a!=null?a==="horizontal":typeof r?.baseTheme=="object"?i(r.baseTheme):!1};return i(s)}},AreaChartProxy=class extends CartesianChartProxy{constructor(e){super(e)}getAxes(e){const t=[{type:this.getXAxisType(e),position:"bottom"},{type:"number",position:"left"}];if(this.isNormalised()){const s=t[1];s.label={...s.label,formatter:i=>Math.round(i.value)+"%"}}return t}getSeries(e){const[t]=e.categories,s=e.fields.map(i=>({type:this.standaloneChartType,xKey:t.id,xName:t.name,yKey:i.colId,yName:i.displayName,normalizedTo:this.chartType==="normalizedArea"?100:void 0,stacked:["normalizedArea","stackedArea"].includes(this.chartType)}));return this.crossFiltering?this.extractLineAreaCrossFilterSeries(s,e):s}isNormalised(){return!this.crossFiltering&&this.chartType==="normalizedArea"}};function hexToRGBA(e,t){const s=parseInt(e.slice(1,3),16),i=parseInt(e.slice(3,5),16),r=parseInt(e.slice(5,7),16);return t?`rgba(${s}, ${i}, ${r}, ${t})`:`rgba(${s}, ${i}, ${r})`}function changeOpacity(e,t){return e.map(s=>{const i=import_ag_charts_community10._Util.Color.fromString(s);return new import_ag_charts_community10._Util.Color(i.r,i.g,i.b,t).toHexString()})}var HORIZONTAL_CHART_TYPES=new Set(["bar","groupedBar","stackedBar","normalizedBar"]),BarChartProxy=class extends CartesianChartProxy{constructor(e){super(e)}getAxes(e){const t=[{type:this.getXAxisType(e),position:this.isHorizontal()?"left":"bottom"},{type:"number",position:this.isHorizontal()?"bottom":"left"}];if(this.isNormalised()){const s=t[1];s.label={...s.label,formatter:i=>Math.round(i.value)+"%"}}return t}getSeries(e){const[t]=e.categories,s=e.fields.map(i=>({type:this.standaloneChartType,direction:this.isHorizontal()?"horizontal":"vertical",stacked:this.crossFiltering||isStacked(this.chartType),normalizedTo:this.isNormalised()?100:void 0,xKey:t.id,xName:t.name,yKey:i.colId,yName:i.displayName}));return this.crossFiltering?this.extractCrossFilterSeries(s):s}extractCrossFilterSeries(e){const t=this.getChartPalette(),s=(a,o)=>({...a,highlightStyle:{item:{fill:void 0}},fill:t?.fills?.[o],stroke:t?.strokes?.[o],listeners:{nodeClick:this.crossFilterCallback}}),i=a=>{const o=a.yKey+"-filtered-out";return{...a,yKey:o,fill:hexToRGBA(a.fill,"0.3"),stroke:hexToRGBA(a.stroke,"0.3"),showInLegend:!1}},r=[];for(let a=0;a<e.length;a++){const o=e[a];r.push(s(o,a)),r.push(i(s(o,a)))}return r}isNormalised(){const e=["normalizedColumn","normalizedBar"];return!this.crossFiltering&&(0,import_core94._includes)(e,this.chartType)}isHorizontal(){return HORIZONTAL_CHART_TYPES.has(this.chartType)}},HistogramChartProxy=class extends CartesianChartProxy{constructor(e){super(e)}getSeries(e){const t=e.fields[0];return[{type:this.standaloneChartType,xKey:t.colId,xName:t.displayName,yName:this.chartProxyParams.translate("histogramFrequency"),areaPlot:!1}]}getAxes(e){return[{type:"number",position:"bottom"},{type:"number",position:"left"}]}},LineChartProxy=class extends CartesianChartProxy{constructor(e){super(e)}getAxes(e){return[{type:this.getXAxisType(e),position:"bottom"},{type:"number",position:"left"}]}getSeries(e){const[t]=e.categories,s=e.fields.map(i=>({type:this.standaloneChartType,xKey:t.id,xName:t.name,yKey:i.colId,yName:i.displayName}));return this.crossFiltering?this.extractLineAreaCrossFilterSeries(s,e):s}},ScatterChartProxy=class extends CartesianChartProxy{constructor(e){super(e)}getAxes(e){return[{type:"number",position:"bottom"},{type:"number",position:"left"}]}getSeries(e){const[t]=e.categories,s=this.isPaired(),i=this.getSeriesDefinitions(e.fields,s),r=t.id===ChartDataModel.DEFAULT_CATEGORY?void 0:t,a=i.map(o=>o?.sizeField?{type:"bubble",xKey:o.xField.colId,xName:o.xField.displayName??void 0,yKey:o.yField.colId,yName:o.yField.displayName??void 0,title:`${o.yField.displayName} vs ${o.xField.displayName}`,sizeKey:o.sizeField.colId,sizeName:o.sizeField.displayName??"",labelKey:r?r.id:o.yField.colId,labelName:r?r.name:void 0}:{type:"scatter",xKey:o.xField.colId,xName:o.xField.displayName??void 0,yKey:o.yField.colId,yName:o.yField.displayName??void 0,title:`${o.yField.displayName} vs ${o.xField.displayName}`,labelKey:r?r.id:o.yField.colId,labelName:r?r.name:void 0});return this.crossFiltering?this.extractCrossFilterSeries(a,e):a}extractCrossFilterSeries(e,t){const{data:s}=t,i=this.getChartPalette(),r=c=>`${c}-filtered-out`,a=(c,h)=>{const d=[1/0,-1/0];if(h!=null)for(const u of c){const p=u[h]??u[r(h)];p<d[0]&&(d[0]=p),p>d[1]&&(d[1]=p)}if(d[0]<=d[1])return d},o=(c,h)=>{const d=i?.fills?.[h],u=i?.strokes?.[h];let p;if(c.type==="bubble"){const{sizeKey:g}=c;p=a(s,g)}return{...c,fill:d,stroke:u,domain:p,highlightStyle:{item:{fill:"yellow"}},listeners:{...c.listeners,nodeClick:this.crossFilterCallback}}},n=c=>{const{yKey:h,xKey:d}=c;let u={};return c.type==="bubble"&&(u={sizeKey:r(c.sizeKey)}),{...c,...u,yKey:r(h),xKey:r(d),fillOpacity:.3,strokeOpacity:.3,showInLegend:!1,listeners:{...c.listeners,nodeClick:p=>{const g=p.datum[r(d)],m={...p,xKey:d,datum:{...p.datum,[d]:g}};this.crossFilterCallback(m)}}}},l=e.map(o);return[...l,...l.map(n)]}getSeriesDefinitions(e,t){if(e.length<2)return[];const s=this.chartType==="bubble";if(t)return s?e.map((r,a)=>a%3===0?{xField:r,yField:e[a+1],sizeField:e[a+2]}:null).filter(r=>r&&r.yField&&r.sizeField):e.map((r,a)=>a%2===0?{xField:r,yField:e[a+1]}:null).filter(r=>r&&r.yField);const i=e[0];return s?e.map((r,a)=>a%2===1?{xField:i,yField:r,sizeField:e[a+1]}:null).filter(r=>r&&r.sizeField):e.filter((r,a)=>a>0).map(r=>({xField:i,yField:r}))}},WaterfallChartProxy=class extends CartesianChartProxy{constructor(e){super(e)}getAxes(e,t){return[{type:this.getXAxisType(e),position:this.isHorizontal(t)?"left":"bottom"},{type:"number",position:this.isHorizontal(t)?"bottom":"left"}]}getSeries(e){const[t]=e.categories,[s]=e.fields;return[{type:this.standaloneChartType,xKey:t.id,xName:t.name,yKey:s.colId,yName:s.displayName??void 0}]}},ComboChartProxy=class extends CartesianChartProxy{constructor(e){super(e)}getAxes(e){const t=e?e.fields:[],s=new Map(t.map(o=>[o.colId,o])),{primaryYKeys:i,secondaryYKeys:r}=this.getYKeys(t,e.seriesChartTypes),a=[{type:this.getXAxisType(e),position:"bottom"}];return i.length>0&&a.push({type:"number",keys:i,position:"left"}),r.length>0&&r.forEach(o=>{const n=s.get(o);if(!(n&&n.colId===o))return;const c={type:"number",keys:[o],position:"right"};a.push(c)}),a}getSeries(e){const{fields:t,seriesChartTypes:s}=e,[i]=e.categories;return t.map(r=>{const a=s.find(o=>o.colId===r.colId);if(a){const o=a.chartType,l=["groupedColumn","groupedBar"].includes(o)?{grouped:!0}:{};return{type:getSeriesType(o),xKey:i.id,yKey:r.colId,yName:r.displayName,stacked:["stackedArea","stackedColumn"].includes(o),...l}}})}getYKeys(e,t){const s=[],i=[];return e.forEach(r=>{const a=r.colId,o=t.find(n=>n.colId===a);o&&(o.secondaryAxis?i.push(a):s.push(a))}),{primaryYKeys:s,secondaryYKeys:i}}},CATEGORY_LABEL_KEY="AG-GRID-DEFAULT-LABEL-KEY";function createCategoryHierarchy(e,t){const s=buildNestedHierarchy(e,i,r);return formatCategoryHierarchy(s);function i(o){return t.length}function r(o,n){const l=t[n],c=o[l];return a(c)}function a(o){return o==null?null:String(o)}}function createAutoGroupHierarchy(e,t){const s=buildNestedHierarchy(e,i,r);return formatCategoryHierarchy(s);function i(a){return t(a)?.length??0}function r(a,o){const n=t(a);if(!n)return null;const l=n.length-1-o;return n[l]}}function formatCategoryHierarchy(e,t=null,s){const{depth:i,rootValues:r,value:a,children:o}=e;if(r)return r.map(l=>({[CATEGORY_LABEL_KEY]:t,...l}));if(i===0)return[{[CATEGORY_LABEL_KEY]:t,...a}];const n=[];for(const[l,c]of o.entries())n.push(...formatCategoryHierarchy(c,l,!0));return s?[{[CATEGORY_LABEL_KEY]:t,children:n,...a??{}}]:n}function buildNestedHierarchy(e,t,s){const i={depth:0,children:new Map};return e.forEach(a=>{const o=t(a);r(a,o,s,0,i)}),i;function r(a,o,n,l,c){if(l===o)return l===0?(c.rootValues||(c.rootValues=[]),c.rootValues.push(a)):c.value=a,c;{const h=n(a,l),d=c.children.get(h),u=r(a,o,n,l+1,d||{depth:0,children:new Map});return c.children.set(h,u),c.depth=Math.max(1+u.depth,c.depth),c}}}var HierarchicalChartProxy=class extends ChartProxy{constructor(e){super(e)}getUpdateOptions(e,t){const{fields:s}=e,[i,r]=s;return{...t,series:this.getSeries(i,r),data:this.getData(e,i,r)}}getSeriesChartThemeDefaults(){return{gradientLegend:{gradient:{preferredLength:200}}}}getSeries(e,t){return[{type:this.standaloneChartType,labelKey:CATEGORY_LABEL_KEY,sizeKey:e?.colId,sizeName:e?.displayName??void 0,colorKey:t?.colId,colorName:t?.displayName??void 0}]}getData(e,t,s){const{categories:i,data:r,groupData:a,grouping:o}=e;if(o){const n=s?r.concat(a?.map(l=>{const c={...l};return delete c[t.colId],c})??[]):r;return createAutoGroupHierarchy(n,l=>l[import_core95.GROUP_AUTO_COLUMN_ID]?.labels??null)}else{const n=i.map(({id:l})=>l);return createCategoryHierarchy(r,n)}}};function calculateOffsets(e){const t=e.currentOffset;e.currentOffset-=e.offsetAmount;const s=e.currentOffset;return e.currentOffset-=e.offsetAmount,{outerRadiusOffset:t,innerRadiusOffset:s}}var PieChartProxy=class extends ChartProxy{constructor(e){super(e)}getUpdateOptions(e,t){return{...t,data:this.crossFiltering?this.getCrossFilterData(e):e.data,series:this.getSeries(e)}}getSeries(e){const[t]=e.categories,s=e.fields.length,i={currentOffset:0,offsetAmount:s>1?20:40},r=this.getFields(e).map(a=>{const o={type:this.standaloneChartType,angleKey:a.colId,angleName:a.displayName,sectorLabelKey:a.colId,calloutLabelName:t.name,calloutLabelKey:t.id};if(this.chartType==="donut"||this.chartType==="doughnut"){const{outerRadiusOffset:n,innerRadiusOffset:l}=calculateOffsets(i),c=a.displayName?{title:{text:a.displayName,showInLegend:s>1}}:void 0;return{...o,type:"donut",outerRadiusOffset:n,innerRadiusOffset:l,...c,calloutLine:{colors:this.getChartPalette()?.strokes}}}return o});return this.crossFiltering?this.extractCrossFilterSeries(r):r}getCrossFilterData(e){const t=e.fields[0].colId,s=`${t}-filtered-out`;return e.data.map(i=>{const r=i[t]+i[s];return i[`${t}-total`]=r,i[s]=1,i[t]=i[t]/r,i})}extractCrossFilterSeries(e){const t=this.getChartPalette(),s=n=>({...n,legendItemKey:n.calloutLabelKey,calloutLabel:{enabled:!1},highlightStyle:{item:{fill:void 0}},radiusKey:n.angleKey,angleKey:n.angleKey+"-total",radiusMin:0,radiusMax:1,listeners:{nodeClick:this.crossFilterCallback}}),i=(n,l)=>({...o,radiusKey:l+"-filtered-out",fills:changeOpacity(n.fills??t?.fills??[],.3),strokes:changeOpacity(n.strokes??t?.strokes??[],.3),showInLegend:!1}),r=e[0],a=r.angleKey,o=s(r);return[i(s(r),a),o]}getFields(e){return this.chartType==="pie"?e.fields.slice(0,1):e.fields}},PolarChartProxy=class extends ChartProxy{constructor(e){super(e)}getAxes(e){const t=this.standaloneChartType==="radial-bar";return[{type:t?"angle-number":"angle-category"},{type:t?"radius-category":"radius-number"}]}getSeries(e){const{fields:t,categories:s,seriesGroupType:i}=e,[r]=s,a=this.standaloneChartType==="radial-bar",o=this.getSeriesGroupTypeOptions(i);return t.map(n=>({type:this.standaloneChartType,angleKey:a?n.colId:r.id,angleName:a?n.displayName??void 0:r.name,radiusKey:a?r.id:n.colId,radiusName:a?r.name:n.displayName??void 0,...o}))}getSeriesGroupType(){const e=this.standaloneChartType;if(!["nightingale","radial-bar","radial-column"].includes(e))return;const t=this.getChart().series?.[0]?.properties.toJson(),s=()=>t.normalizedTo?"normalized":"stacked";return e==="nightingale"?t.grouped?"grouped":s():t.stacked?s():"grouped"}getUpdateOptions(e,t){const s=this.getAxes(e);return{...t,data:this.getData(e,s),axes:s,series:this.getSeries(e)}}getData(e,t){if(t.some(i=>i.type==="angle-category"||i.type==="radius-category")){const[i]=e.categories;return this.transformCategoryData(e.data,i.id)}else return e.data}getSeriesGroupTypeOptions(e){return e?{grouped:e==="grouped"||void 0,stacked:e!=="grouped"||void 0,normalizedTo:e==="normalized"?100:void 0}:{}}};function flatMap(e,t){return e.reduce((s,i,r,a)=>s.concat(t(i,r,a)),new Array)}var HEATMAP_CATEGORY_KEY="AG-GRID-DEFAULT-HEATMAP-CATEGORY-KEY",HEATMAP_SERIES_KEY="AG-GRID-DEFAULT-HEATMAP-SERIES-KEY",HEATMAP_VALUE_KEY="AG-GRID-DEFAULT-HEATMAP-VALUE-KEY",HeatmapChartProxy=class extends ChartProxy{constructor(e){super(e)}getUpdateOptions(e,t){const s=HEATMAP_SERIES_KEY,i=HEATMAP_VALUE_KEY,r=HEATMAP_CATEGORY_KEY;return{...t,series:this.getSeries(e,s,i,r),data:this.getData(e,s,i,r)}}getSeries(e,t,s,i){const[r]=e.categories;return[{type:this.standaloneChartType,yKey:i,xKey:t,colorKey:s,yName:r.name,xName:void 0,colorName:void 0}]}getData(e,t,s,i){const[r]=e.categories;return flatMap(e.data,(a,o)=>{const n=a[r.id],l=n==null?"":String(n),c={id:o,value:n,toString:()=>l};return e.fields.map(({colId:h,displayName:d})=>({...a,[t]:d,[s]:a[h],[i]:c}))})}getSeriesChartThemeDefaults(){return{gradientLegend:{gradient:{preferredLength:200}},series:{tooltip:{renderer:renderHeatmapTooltip}}}}};function renderHeatmapTooltip(e){const{xKey:t,yKey:s,colorKey:i,yName:r,datum:a}=e;return{title:"",content:[{label:r,value:a[s]},{label:a[t],value:i&&a[i]}].map(({label:l,value:c})=>`<b>${sanitizeHtml(String(l))}:</b> ${sanitizeHtml(String(c))}`).join("<br>")}}function sanitizeHtml(e){const t={"&":"&","<":"<",">":">"},s=`[${Object.keys(t).join("")}]`,i=new RegExp(s,"g");return e.replace(i,r=>t[r])}var StatisticalChartProxy=class extends CartesianChartProxy{constructor(e){super(e)}getAxes(e,t){return[{type:this.getXAxisType(e),position:this.isHorizontal(t)?"left":"bottom"},{type:"number",position:this.isHorizontal(t)?"bottom":"left"}]}computeSeriesStatistics(e,t){const{data:s,fields:i}=e,[r]=e.categories,a=r.id||ChartDataModel.DEFAULT_CATEGORY,o=this.groupDataByCategory(a,s);return Array.from(o).map(([n,l])=>{const c={[r.id]:n};return i.forEach((h,d)=>{const u=l.map(p=>p[h.colId]).filter(p=>typeof p=="number"&&!isNaN(p));Object.entries(t(u)).forEach(([p,g])=>{const m=`${p}:${d}`;c[m]=u.length>0?g:null})}),c})}groupDataByCategory(e,t){const s=i=>{if(e===ChartDataModel.DEFAULT_CATEGORY)return 1;const r=i[e];return r==null?"":r instanceof Date?r.getTime():r};return t.reduce((i,r)=>{const a=s(r),o=i.get(a);return o?o.push(r):i.set(a,[r]),i},new Map)}},BoxPlotChartProxy=class extends StatisticalChartProxy{constructor(e){super(e)}getSeries(e){const[t]=e.categories;return e.fields.map((s,i)=>({type:this.standaloneChartType,xKey:t.id,xName:t.name,yName:s.displayName??void 0,minName:"Min",q1Name:"Q1",medianName:"Median",q3Name:"Q3",maxName:"Max",minKey:`min:${i}`,q1Key:`q1:${i}`,medianKey:`median:${i}`,q3Key:`q3:${i}`,maxKey:`max:${i}`}))}getData(e){return this.computeSeriesStatistics(e,t=>{const s=t.sort((i,r)=>i-r);return{min:s[0],q1:this.quantile(s,.25),median:this.quantile(s,.5),q3:this.quantile(s,.75),max:s[s.length-1]}})}quantile(e,t){const s=(e.length-1)*t,i=Math.floor(s),r=s-i;return e[i+1]!==void 0?e[i]+r*(e[i+1]-e[i]):e[i]}},RangeChartProxy=class extends StatisticalChartProxy{constructor(e){super(e)}getSeries(e){const[t]=e.categories;return e.fields.map((s,i)=>({type:this.standaloneChartType,xKey:t.id,xName:t.name,yName:s.displayName??void 0,yLowName:"Min",yHighName:"Max",yLowKey:`min:${i}`,yHighKey:`max:${i}`}))}getData(e){return this.computeSeriesStatistics(e,t=>({min:Math.min(...t),max:Math.max(...t)}))}},ChartToolbar=class extends import_core98.Component{constructor(){super('<div class="ag-chart-menu" data-ref="eMenu"></div>'),this.eMenu=import_core98.RefPlaceholder,this.buttonListenersDestroyFuncs=[]}wireBeans(e){this.chartTranslationService=e.chartTranslationService}updateParams(e){const{buttons:t}=e;this.createButtons(t)}createButtons(e){this.buttonListenersDestroyFuncs.forEach(s=>s?.()),this.buttonListenersDestroyFuncs=[];const t=this.eMenu;(0,import_core98._clearElement)(t),e.forEach(s=>{const{buttonName:i,iconName:r,callback:a}=s,o=this.createButton(r),n=this.chartTranslationService.translate(i+"ToolbarTooltip");n&&o instanceof HTMLElement&&(o.title=n),this.buttonListenersDestroyFuncs.push(...this.addManagedElementListeners(o,{click:l=>a(l.currentTarget)})),t.appendChild(o)})}createButton(e){const t=(0,import_core98._createIconNoSpan)(e,this.gos,void 0,!0);t.classList.add("ag-chart-menu-icon");const s=(0,import_core98._getDocument)(this.gos).createElement("button");return s.appendChild(t),s.classList.add("ag-chart-menu-toolbar-button"),s}destroy(){this.buttonListenersDestroyFuncs=[],super.destroy()}},AgPillSelect=class extends import_core105.Component{constructor(e){super('<div class="ag-pill-select" role="presentation"></div>'),this.config=e??{};const{selectedValueList:t,valueFormatter:s,valueList:i}=this.config;this.selectedValues=t??[],this.valueList=i??[],this.valueFormatter=s??(r=>(0,import_core105._escapeString)(r))}postConstruct(){const{ariaLabel:e,onValuesChange:t,dragSourceId:s}=this.config;this.dropZonePanel=this.createManagedBean(new PillSelectDropZonePanel({getValues:()=>this.selectedValues,setValues:r=>this.updateValues(r),isDraggable:()=>this.selectedValues.length>1},r=>this.valueFormatter(r),e,s)),this.getGui().appendChild(this.dropZonePanel.getGui()),this.initSelect(),t!=null&&(this.onValuesChange=t)}setValues(e,t){const{added:s,removed:i,updated:r}=this.getChanges(this.valueList,e);let a=!1;return(s.length||i.length||r.length)&&(a=!0),this.valueList=e,this.updateValues(t,a,!0),this}setValueFormatter(e){return this.valueFormatter=e,this}initSelect(){const e=this.createSelectOptions();if(!e.length)return!1;const{selectPlaceholder:t}=this.config;return this.eSelect=this.createBean(new import_core105.AgSelect({options:e,placeholder:t,onValueChange:s=>this.addValue(s),pickerIcon:"chartsMenuAdd"})),this.getGui().appendChild(this.eSelect.getGui()),!0}createSelectOptions(){const e=[],{maxSelection:t}=this.config;return t&&this.selectedValues.length>=t||this.valueList.forEach(s=>{this.selectedValues.includes(s)||e.push({value:s,text:this.valueFormatter(s)})}),e}addValue(e){this.dropZonePanel.addItem(e)}updateValues(e,t,s){const i=this.selectedValues;this.selectedValues=e;const r=this.getChanges(i,e),a=t||r.added.length||r.removed.length,o=(0,import_core105._getActiveDomElement)(this.gos),n=this.eSelect?.getGui().contains(o),l=this.dropZonePanel?.getGui().contains(o);s||this.onValuesChange?.(r);const c=a?!this.refreshSelect():!1;this.dropZonePanel.refreshGui(),a&&n&&(c?this.dropZonePanel.focusList(!0):this.eSelect?.getFocusableElement().focus()),l&&!e.length&&this.eSelect?.getFocusableElement().focus()}getChanges(e,t){const s=t.filter(a=>!e.includes(a)),i=e.filter(a=>!t.includes(a)),r=t.filter((a,o)=>e[o]!==a);return{added:s,removed:i,updated:r,selected:t}}refreshSelect(){if(!this.eSelect)return this.initSelect();const e=this.createSelectOptions();return e.length?(this.eSelect.clearOptions().addOptions(e).setValue(void 0,!0),!0):((0,import_core105._removeFromParent)(this.eSelect.getGui()),this.eSelect=this.destroyBean(this.eSelect),!1)}destroy(){this.destroyBean(this.eSelect),super.destroy()}},PillSelectDragComp=class extends PillDragComp{constructor(e,t,s,i,r,a){super(t,s,!1),this.value=e,this.valueFormatter=i,this.draggable=r,this.sourceId=a}getItem(){return this.value}getDisplayName(){return this.valueFormatter(this.value)}getAriaDisplayName(){return this.getDisplayName()}getTooltip(){}createGetDragItem(){return()=>({value:this.value})}getDragSourceType(){return import_core105.DragSourceType.ChartPanel}getDragSourceId(){return this.sourceId}isDraggable(){return this.draggable}},PillSelectDropZonePanel=class extends PillDropZonePanel{constructor(e,t,s,i){super(!1),this.model=e,this.valueFormatter=t,this.ariaLabel=s,this.sourceId=i}postConstruct(){super.init()}isItemDroppable(e,t){return this.isSourceEventFromTarget(t)||this.sourceId!=null&&this.sourceId===t.dragSource.sourceId}updateItems(e){this.model.setValues(e)}getExistingItems(){return this.model.getValues()}getIconName(){return this.isPotentialDndItems()?"move":"notAllowed"}getAriaLabel(){return this.ariaLabel}createPillComponent(e,t,s){return new PillSelectDragComp(e,t,s,this.valueFormatter,this.model.isDraggable(),this.sourceId)}getItems(e){return[e.value]}isInterestedIn(e){return e===import_core105.DragSourceType.ChartPanel}},DragDataPanel=class extends import_core104.Component{constructor(e,t,s,i){super(i),this.chartController=e,this.allowMultipleSelection=t,this.maxSelection=s}wireBeans(e){this.chartTranslationService=e.chartTranslationService}addItem(e){this.groupComp.addItem(e)}createGroup(e,t,s,i,r){if(this.allowMultipleSelection){const a=e.filter(o=>o.selected);this.valuePillSelect=this.groupComp.createManagedBean(new AgPillSelect({valueList:e,selectedValueList:a,valueFormatter:t,selectPlaceholder:this.chartTranslationService.translate(s),dragSourceId:i,onValuesChange:o=>this.onValueChange(o),maxSelection:this.maxSelection})),this.groupComp.addItem(this.valuePillSelect)}else{const a=this.createValueSelectParams(e);a.onValueChange=o=>{e.forEach(n=>{n.selected=!1}),o.selected=!0,o.colId===ChartDataModel.DEFAULT_CATEGORY&&this.chartController.setAggFunc(void 0,!0),this.chartController.updateForPanelChange({updatedColState:o,skipAnimation:r?.()})},this.valueSelect=this.groupComp.createManagedBean(new import_core104.AgSelect(a)),this.groupComp.addItem(this.valueSelect)}}refreshValueSelect(e){if(!this.valueSelect)return;const{options:t,value:s}=this.createValueSelectParams(e);this.valueSelect.clearOptions().addOptions(t).setValue(s,!0)}createValueSelectParams(e){let t;return{options:e.map(i=>{const r=i.displayName??"";return i.selected&&(t=i),{value:i,text:r}}),value:t}}onValueChange({added:e,updated:t,removed:s,selected:i}){let r,a;const o=()=>{i.forEach((n,l)=>{n.order=l}),a=!0};e.length?(r=e[0],r.selected=!0,o()):s.length?(r=s[0],r.selected=!1):t.length&&(o(),r=t[0]),r&&this.chartController.updateForPanelChange({updatedColState:r,resetOrder:a})}destroy(){this.valuePillSelect=void 0,this.valueSelect=void 0,super.destroy()}},DEFAULT_AGG_FUNC="sum",CategoriesDataPanel=class extends DragDataPanel{constructor(e,t,s,i,r){super(e,s,void 0,'<div id="categoriesGroup"></div>'),this.title=t,this.dimensionCols=i,this.isOpen=r}postConstruct(){this.groupComp=this.createBean(new AgGroupComponent({title:this.title,enabled:!0,suppressEnabledCheckbox:!0,suppressOpenCloseIcons:!1,cssIdentifier:"charts-data",expanded:this.isOpen})),this.createGroup(this.dimensionCols,e=>e.displayName??"","categoryAdd","categorySelect",()=>!this.chartController.getAggFunc()),this.createAggFuncControls(this.dimensionCols),this.getGui().appendChild(this.groupComp.getGui())}refresh(e){this.valuePillSelect?.setValues(e,e.filter(t=>t.selected)),this.refreshValueSelect(e),this.refreshAggFuncControls(e,this.chartController.getAggFunc())}createAggFuncControls(e){const t=this.chartController.getAggFunc();this.groupComp.addItem(this.aggFuncToggle=this.createBean(new import_core102.AgToggleButton({label:this.chartTranslationService.translate("aggregate"),labelAlignment:"left",labelWidth:"flex",inputWidth:"flex",value:t!=null,onValueChange:s=>{const i=s?DEFAULT_AGG_FUNC:void 0;this.chartController.setAggFunc(i),this.aggFuncSelect?.setValue(i,!0),this.aggFuncSelect?.setDisplayed(i!=null)}}))),this.groupComp.addItem(this.aggFuncSelect=this.createBean(new import_core102.AgSelect({options:[{value:"sum",text:this.chartTranslationService.translate("sum")},{value:"first",text:this.chartTranslationService.translate("first")},{value:"last",text:this.chartTranslationService.translate("last")},{value:"min",text:this.chartTranslationService.translate("min")},{value:"max",text:this.chartTranslationService.translate("max")},{value:"count",text:this.chartTranslationService.translate("count")},{value:"avg",text:this.chartTranslationService.translate("avg")}],value:typeof t=="string"?t:void 0,onValueChange:s=>{this.chartController.setAggFunc(s)}}))),this.refreshAggFuncControls(e,t)}refreshAggFuncControls(e,t){const i=e.filter(r=>r.selected).some(r=>r.colId!==ChartDataModel.DEFAULT_CATEGORY);this.aggFuncToggle?.setValue(t!=null),this.aggFuncSelect?.setValue(typeof t=="string"?t:void 0,!0),this.aggFuncToggle?.setDisplayed(i),this.aggFuncSelect?.setDisplayed(i&&t!=null)}clearAggFuncControls(){this.aggFuncToggle=this.destroyBean(this.aggFuncToggle),this.aggFuncSelect=this.destroyBean(this.aggFuncSelect)}destroy(){this.clearAggFuncControls(),this.groupComp=this.destroyBean(this.groupComp),super.destroy()}},ChartMenuParamsFactory=class extends import_core109.BeanStub{constructor(e){super(),this.chartOptionsProxy=e}wireBeans(e){this.chartTranslationService=e.chartTranslationService}getDefaultColorPickerParams(e,t,s){return this.addValueParams(e,{label:this.chartTranslationService.translate(t??"color"),labelWidth:"flex",inputWidth:"flex",labelAlignment:"top",pickerGap:6},s)}getDefaultNumberInputParams(e,t,s){return this.addValueParams(e,{label:this.chartTranslationService.translate(t),labelAlignment:"top",labelWidth:"flex",inputWidth:"flex",precision:s?.precision,step:s?.step,min:s?.min,max:s?.max},{parseInputValue:i=>{const r=Number(i);return isNaN(r)?void 0:r},formatInputValue:i=>i==null?"":`${i}`})}getDefaultSliderParams(e,t,s,i){let r=this.chartOptionsProxy.getValue(e)??0;i&&Array.isArray(r)&&(r=r[0]);const a=this.getDefaultSliderParamsWithoutValueParams(r,t,s);return a.onValueChange=o=>this.chartOptionsProxy.setValue(e,i?[o]:o),a}getDefaultSliderParamsWithoutValueParams(e,t,s){return{label:this.chartTranslationService.translate(t),minValue:0,maxValue:Math.max(e,s),textFieldWidth:45,value:`${e}`}}getDefaultCheckboxParams(e,t,s){const i=this.chartOptionsProxy.getValue(e),r={label:this.chartTranslationService.translate(t),value:i,readOnly:s?.readOnly,passive:s?.passive};return r.onValueChange=a=>{this.chartOptionsProxy.setValue(e,typeof a=="boolean"?a:void 0)},r}getDefaultSelectParams(e,t,s){return this.getDefaultSelectParamsWithoutValueParams(t,s,this.chartOptionsProxy.getValue(e),i=>{this.chartOptionsProxy.setValue(e,i)})}getDefaultSelectParamsWithoutValueParams(e,t,s,i){return{label:this.chartTranslationService.translate(e),labelAlignment:"top",options:t,pickerGap:6,value:s,onValueChange:i}}getDefaultFontPanelParams(e,t){const s=i=>`${e}.${i}`;return this.addEnableParams(s("enabled"),{name:this.chartTranslationService.translate(t),suppressEnabledCheckbox:!1,chartMenuParamsFactory:this,keyMapper:s})}addValueParams(e,t,s){const i=this.chartOptionsProxy.getValue(e);return t.value=s?.formatInputValue?s.formatInputValue(i):i,t.onValueChange=r=>{const a=s?.parseInputValue?s.parseInputValue(r):r;this.chartOptionsProxy.setValue(e,a)},t}addEnableParams(e,t){return t.enabled=this.chartOptionsProxy.getValue(e)??!1,t.onEnableChange=s=>this.chartOptionsProxy.setValue(e,s),t}getChartOptions(){return this.chartOptionsProxy}},ChartSpecificDataPanel=class extends import_core107.Component{constructor(e,t){super(),this.chartMenuContext=e,this.isOpen=t,this.chartSpecificGroup=import_core107.RefPlaceholder,this.hasContent=!1}wireBeans(e){this.chartTranslationService=e.chartTranslationService,this.chartService=e.chartService}postConstruct(){const t={title:this.getTitle(),enabled:!0,suppressEnabledCheckbox:!0,suppressOpenCloseIcons:!1,cssIdentifier:"charts-data",expanded:this.isOpen,items:[...this.createDirectionSelect(),this.createGroupTypeSelect()]};this.setTemplate(`
|
|
191
|
+
`),this.menuItems=e,this.eChartsMenu=import_core79.RefPlaceholder}wireBeans(e){this.focusService=e.focusService}postConstruct(){this.mainMenuList=this.createManagedBean(new AgMenuList(0)),this.mainMenuList.addMenuItems(this.menuItems),this.mainMenuList.addEventListener("closeMenu",this.onHidePopup.bind(this)),this.eChartsMenu.appendChild(this.mainMenuList.getGui())}onHidePopup(){this.hidePopupFunc?.()}afterGuiAttached({hidePopup:e}){e&&(this.hidePopupFunc=e,this.addDestroyFunc(e)),this.focusService.focusInto(this.mainMenuList.getGui())}},ChartCrossFilterService=class K extends import_core81.BeanStub{constructor(){super(...arguments),this.beanName="chartCrossFilterService"}wireBeans(t){this.columnModel=t.columnModel,this.valueService=t.valueService,this.filterManager=t.filterManager,(0,import_core81._isClientSideRowModel)(this.gos)&&(this.clientSideRowModel=t.rowModel)}filter(t,s=!1){const i=this.filterManager?.getFilterModel()??{};if(s){this.resetFilters(i);return}const r=K.extractFilterColId(t);this.isValidColumnFilter(r)?this.updateFilters(i,t,r):(0,import_core81._warnOnce)("cross filtering requires a 'agSetColumnFilter' or 'agMultiColumnFilter' to be defined on the column with id: '"+r+"'")}resetFilters(t){Object.keys(t).length>0&&(this.filterManager?.setFilterModel(null),this.filterManager?.onFilterChanged({source:"api"}))}updateFilters(t,s,i){const r=K.extractFilterColId(s),a=s.datum[r];if(a===void 0)return;const o=a.toString();if(s.event.metaKey||s.event.ctrlKey){const n=this.getCurrentGridValuesForCategory(i),l=(0,import_core81._includes)(n,o);let c;l?c=n.filter(h=>h!==o):(c=n,c.push(o)),t[i]=this.getUpdatedFilterModel(i,c)}else{const n=[o];t={[i]:this.getUpdatedFilterModel(i,n)}}this.filterManager?.setFilterModel(t)}getUpdatedFilterModel(t,s){return this.getColumnFilterType(t)==="agMultiColumnFilter"?{filterType:"multi",filterModels:[null,{filterType:"set",values:s}]}:{filterType:"set",values:s}}getCurrentGridValuesForCategory(t){const s=[],i=this.getColumnById(t);return this.clientSideRowModel?.forEachNodeAfterFilter(r=>{if(i&&!r.group){const a=this.valueService.getValue(i,r)+"";s.includes(a)||s.push(a)}}),s}static extractFilterColId(t){return t.xKey||t.calloutLabelKey}isValidColumnFilter(t){t.indexOf("-filtered-out")&&(t=t.replace("-filtered-out",""));const s=this.getColumnFilterType(t);return typeof s=="boolean"?s:(0,import_core81._includes)(["agSetColumnFilter","agMultiColumnFilter"],s)}getColumnFilterType(t){const s=this.getColumnById(t);if(s)return s.getColDef().filter}getColumnById(t){return this.columnModel.getCol(t)}},CHART_TOOLBAR_ALLOW_LIST=["chartUnlink","chartLink","chartDownload","chartMenu"],CHART_TOOL_PANEL_MENU_OPTIONS={settings:"chartSettings",data:"chartData",format:"chartFormat"},ChartMenuService=class extends import_core82.BeanStub{constructor(){super(...arguments),this.beanName="chartMenuService"}wireBeans(e){this.advancedSettingsMenuFactory=e.advancedSettingsMenuFactory}downloadChart(e,t,s,i){e.chartController.getChartProxy().downloadChart(t,s,i)}toggleLinked(e){e.chartController.detachChartRange()}openAdvancedSettings(e,t){this.advancedSettingsMenuFactory.showMenu(e,t)}hideAdvancedSettings(){this.advancedSettingsMenuFactory.hideMenu()}getChartToolbarOptions(){const e=["chartMenu"],t=this.gos.getCallback("getChartToolbarItems");return t?t({defaultItems:e}).filter(i=>CHART_TOOLBAR_ALLOW_LIST.includes(i)?!0:((0,import_core82._warnOnce)(`'${i}' is not a valid Chart Toolbar Option`),!1)):e}getChartToolPanels(e){const t=this.gos.get("chartToolPanelsDef");let i=t?.panels?.map(o=>{const n=CHART_TOOL_PANEL_MENU_OPTIONS[o];return n||(0,import_core82._warnOnce)(`Invalid panel in chartToolPanelsDef.panels: '${o}'`),n}).filter(o=>!!o)??Object.values(CHART_TOOL_PANEL_MENU_OPTIONS);e.isPivotChart()&&(i=i.filter(o=>o!=="chartData"));const r=t?.defaultToolPanel,a=r&&CHART_TOOL_PANEL_MENU_OPTIONS[r]||i[0];return{panels:i,defaultPanel:a}}doesChartToolbarExist(){return this.getChartToolbarOptions().length>0}doChartToolPanelsExist(e){const{panels:t}=this.getChartToolPanels(e);return t.length>0}},_ChartTranslationService=class Y extends import_core83.BeanStub{constructor(){super(...arguments),this.beanName="chartTranslationService"}translate(t){const s=this.localeService.getLocaleTextFunc(),i=Y.DEFAULT_TRANSLATIONS[t];return s(t,i)}};_ChartTranslationService.DEFAULT_TRANSLATIONS={pivotChartTitle:"Pivot Chart",rangeChartTitle:"Range Chart",settings:"Chart",data:"Set Up",format:"Customize",categories:"Categories",defaultCategory:"(None)",series:"Series",switchCategorySeries:"Switch Category / Series",categoryValues:"Category Values",seriesLabels:"Series Labels",aggregate:"Aggregate",xyValues:"X Y Values",paired:"Paired Mode",axis:"Axis",xAxis:"Horizontal Axis",yAxis:"Vertical Axis",polarAxis:"Polar Axis",radiusAxis:"Radius Axis",navigator:"Navigator",zoom:"Zoom",animation:"Animation",crosshair:"Crosshair",color:"Color",thickness:"Thickness",preferredLength:"Preferred Length",xType:"X Type",axisType:"Axis Type",automatic:"Automatic",category:"Category",number:"Number",time:"Time",timeFormat:"Time Format",autoRotate:"Auto Rotate",labelRotation:"Rotation",circle:"Circle",polygon:"Polygon",square:"Square",cross:"Cross",diamond:"Diamond",plus:"Plus",triangle:"Triangle",heart:"Heart",orientation:"Orientation",fixed:"Fixed",parallel:"Parallel",perpendicular:"Perpendicular",radiusAxisPosition:"Position",ticks:"Ticks",gridLines:"Grid Lines",width:"Width",height:"Height",length:"Length",padding:"Padding",spacing:"Spacing",chartStyle:"Chart Style",title:"Title",chartTitles:"Titles",chartTitle:"Chart Title",chartSubtitle:"Subtitle",horizontalAxisTitle:"Horizontal Axis Title",verticalAxisTitle:"Vertical Axis Title",polarAxisTitle:"Polar Axis Title",titlePlaceholder:"Chart Title",background:"Background",font:"Font",weight:"Weight",top:"Top",right:"Right",bottom:"Bottom",left:"Left",labels:"Labels",calloutLabels:"Callout Labels",sectorLabels:"Sector Labels",positionRatio:"Position Ratio",size:"Size",shape:"Shape",minSize:"Minimum Size",maxSize:"Maximum Size",legend:"Legend",position:"Position",markerSize:"Marker Size",markerStroke:"Marker Stroke",markerPadding:"Marker Padding",itemSpacing:"Item Spacing",itemPaddingX:"Item Padding X",itemPaddingY:"Item Padding Y",layoutHorizontalSpacing:"Horizontal Spacing",layoutVerticalSpacing:"Vertical Spacing",strokeWidth:"Stroke Width",offset:"Offset",offsets:"Offsets",tooltips:"Tooltips",callout:"Callout",markers:"Markers",shadow:"Shadow",blur:"Blur",xOffset:"X Offset",yOffset:"Y Offset",lineWidth:"Line Width",lineDash:"Line Dash",lineDashOffset:"Dash Offset",scrollingZoom:"Scrolling",scrollingStep:"Scrolling Step",selectingZoom:"Selecting",durationMillis:"Duration (ms)",crosshairLabel:"Label",crosshairSnap:"Snap to Node",normal:"Normal",bold:"Bold",italic:"Italic",boldItalic:"Bold Italic",predefined:"Predefined",fillOpacity:"Fill Opacity",strokeColor:"Line Color",strokeOpacity:"Line Opacity",miniChart:"Mini-Chart",histogramBinCount:"Bin count",connectorLine:"Connector Line",seriesItems:"Series Items",seriesItemType:"Item Type",seriesItemPositive:"Positive",seriesItemNegative:"Negative",seriesItemLabels:"Item Labels",columnGroup:"Column",barGroup:"Bar",pieGroup:"Pie",lineGroup:"Line",scatterGroup:"X Y (Scatter)",areaGroup:"Area",polarGroup:"Polar",statisticalGroup:"Statistical",hierarchicalGroup:"Hierarchical",specializedGroup:"Specialized",combinationGroup:"Combination",groupedColumnTooltip:"Grouped",stackedColumnTooltip:"Stacked",normalizedColumnTooltip:"100% Stacked",groupedBarTooltip:"Grouped",stackedBarTooltip:"Stacked",normalizedBarTooltip:"100% Stacked",pieTooltip:"Pie",donutTooltip:"Donut",lineTooltip:"Line",groupedAreaTooltip:"Area",stackedAreaTooltip:"Stacked",normalizedAreaTooltip:"100% Stacked",scatterTooltip:"Scatter",bubbleTooltip:"Bubble",histogramTooltip:"Histogram",radialColumnTooltip:"Radial Column",radialBarTooltip:"Radial Bar",radarLineTooltip:"Radar Line",radarAreaTooltip:"Radar Area",nightingaleTooltip:"Nightingale",rangeBarTooltip:"Range Bar",rangeAreaTooltip:"Range Area",boxPlotTooltip:"Box Plot",treemapTooltip:"Treemap",sunburstTooltip:"Sunburst",waterfallTooltip:"Waterfall",heatmapTooltip:"Heatmap",columnLineComboTooltip:"Column & Line",areaColumnComboTooltip:"Area & Column",customComboTooltip:"Custom Combination",innerRadius:"Inner Radius",startAngle:"Start Angle",endAngle:"End Angle",reverseDirection:"Reverse Direction",groupPadding:"Group Padding",seriesPadding:"Series Padding",tile:"Tile",whisker:"Whisker",cap:"Cap",capLengthRatio:"Length Ratio",labelPlacement:"Placement",inside:"Inside",outside:"Outside",noDataToChart:"No data available to be charted.",pivotChartRequiresPivotMode:"Pivot Chart requires Pivot Mode enabled.",chartSettingsToolbarTooltip:"Menu",chartLinkToolbarTooltip:"Linked to Grid",chartUnlinkToolbarTooltip:"Unlinked from Grid",chartDownloadToolbarTooltip:"Download Chart",chartMenuToolbarTooltip:"Menu",chartEdit:"Edit Chart",chartAdvancedSettings:"Advanced Settings",chartLink:"Link to Grid",chartUnlink:"Unlink from Grid",chartDownload:"Download Chart",histogramFrequency:"Frequency",seriesChartType:"Series Chart Type",seriesType:"Series Type",secondaryAxis:"Secondary Axis",seriesAdd:"Add a series",categoryAdd:"Add a category",bar:"Bar",column:"Column",histogram:"Histogram",advancedSettings:"Advanced Settings",direction:"Direction",horizontal:"Horizontal",vertical:"Vertical",seriesGroupType:"Group Type",groupedSeriesGroupType:"Grouped",stackedSeriesGroupType:"Stacked",normalizedSeriesGroupType:"100% Stacked",legendEnabled:"Enabled",invalidColor:"Color value is invalid",groupedColumnFull:"Grouped Column",stackedColumnFull:"Stacked Column",normalizedColumnFull:"100% Stacked Column",groupedBarFull:"Grouped Bar",stackedBarFull:"Stacked Bar",normalizedBarFull:"100% Stacked Bar",stackedAreaFull:"Stacked Area",normalizedAreaFull:"100% Stacked Area",customCombo:"Custom Combination",groupedColumn:"Grouped",stackedColumn:"Stacked",pie:"Pie",donut:"Donut",line:"Line",scatter:"Scatter",bubble:"Bubble",area:"Area",stackedArea:"Stacked",radarLine:"Radar Line",radarArea:"Radar Area",nightingale:"Nightingale",radialColumn:"Radial Column",radialBar:"Radial Bar",boxPlot:"Box Plot",rangeBar:"Range Bar",rangeArea:"Range Area",treemap:"Treemap",sunburst:"Sunburst",waterfall:"Waterfall",heatmap:"Heatmap",columnLineCombo:"Column & Line",AreaColumnCombo:"Area & Column",ariaChartMenuClose:"Close Chart Edit Menu",ariaChartSelected:"Selected",group:"Group",timeFormatSlashesDDMMYYYY:"DD/MM/YYYY",timeFormatSlashesMMDDYYYY:"MM/DD/YYYY",timeFormatSlashesDDMMYY:"DD/MM/YY",timeFormatSlashesMMDDYY:"MM/DD/YY",timeFormatDotsDDMYY:"DD.M.YY",timeFormatDotsMDDYY:"M.DD.YY",timeFormatDashesYYYYMMDD:"YYYY-MM-DD",timeFormatSpacesDDMMMMYYYY:"DD MMMM YYYY",timeFormatHHMMSS:"HH:MM:SS",timeFormatHHMMSSAmPm:"HH:MM:SS AM/PM",sum:"Sum",first:"First",last:"Last",min:"Min",max:"Max",count:"Count",avg:"Average"};var ChartTranslationService=_ChartTranslationService,VERSION4="32.3.0",ALL_AXIS_TYPES=["number","category","grouped-category","log","time"];function getLegacyAxisType(e){switch(e){case"bar":case"stackedBar":case"normalizedBar":return["number","category"];case"groupedBar":return["number","grouped-category"];case"column":case"stackedColumn":case"normalizedColumn":case"line":case"area":case"stackedArea":case"normalizedArea":case"histogram":return["category","number"];case"groupedColumn":return["grouped-category","number"];case"scatter":case"bubble":return["number","number"];default:return}}function get(e,t,s){if(e==null)return s;const i=t.split(".");let r=e;for(;i.length>1;)if(r=r[i.shift()],r==null)return s;const a=r[i[0]];return a??s}function set(e,t,s){if(e==null)return;const i=t.split(".");let r=e;i.forEach((a,o)=>{r[a]||(r[a]={}),o<i.length-1&&(r=r[a])}),r[i[i.length-1]]=s}function createAgChartTheme(e,t,s,i,r){const{chartOptionsToRestore:a,chartPaletteToRestore:o,chartThemeToRestore:n}=e,l=getSelectedTheme(e),c=isStockTheme(l),h=c?{baseTheme:l}:lookupCustomChartTheme(e,l)??{},d=e.getGridOptionsChartThemeOverrides(),u=e.apiChartThemeOverrides,p=getSeriesType(e.chartType),g=e.crossFiltering?createCrossFilterThemeOverrides(t,e,p):void 0,f=[c?inbuiltStockThemeOverrides(e,s,(()=>{const v=S=>S?Object.keys(S).some(y=>get(S[y],"title.enabled",!1)):!1;return v(d)||v(u)})()):void 0,pieAndDonutOverrides(),i,g,d,u,{...a??{}},r].filter(v=>!!v).reduce((v,S)=>({baseTheme:v,overrides:S}),h);if(o&&l===n){const v=import_ag_charts_community7._Theme.getChartTheme(h).palette;isIdenticalPalette(o,v)||(f.palette=o)}return f}function isIdenticalPalette(e,t){const s=(i,r)=>i===r?!0:i?.length!==r?.length?!1:i?.every((a,o)=>a===r?.[o])??!1;return s(e.fills,t.fills)&&s(e.strokes,t.strokes)}function isStockTheme(e){return(0,import_core88._includes)(Object.keys(import_ag_charts_community7._Theme.themes),e)}function createCrossFilterThemeOverrides(e,t,s){const i={listeners:{legendItemClick:r=>{e.getChart().series.forEach(o=>{o.toggleSeriesItem(r.itemId,r.enabled),o.toggleSeriesItem(`${r.itemId}-filtered-out`,r.enabled)})}}};return{[s]:{tooltip:{delay:500},legend:i,listeners:{click:r=>t.crossFilterCallback(r,!0)}}}}var STATIC_INBUILT_STOCK_THEME_AXES_OVERRIDES=ALL_AXIS_TYPES.reduce((e,t)=>({...e,[t]:{title:{_enabledFromTheme:!0}}}),{});function inbuiltStockThemeOverrides(e,t,s){const i=e.getExtraPaddingDirections();return{common:{...t?{animation:{duration:500}}:void 0,axes:STATIC_INBUILT_STOCK_THEME_AXES_OVERRIDES,padding:{top:!s&&i.includes("top")?40:20,right:i.includes("right")?30:20,bottom:i.includes("bottom")?40:20,left:i.includes("left")?30:20}}}}function pieAndDonutOverrides(){return{pie:{series:{title:{_enabledFromTheme:!0},calloutLabel:{_enabledFromTheme:!0},sectorLabel:{enabled:!1,_enabledFromTheme:!0}}},donut:{series:{title:{_enabledFromTheme:!0},calloutLabel:{_enabledFromTheme:!0},sectorLabel:{enabled:!1,_enabledFromTheme:!0}}}}}function getSelectedTheme(e){let t=e.getChartThemeName();const s=e.getChartThemes();return(0,import_core88._includes)(s,t)||(t=s[0]),t}function lookupCustomChartTheme(e,t){const{customChartThemes:s}=e,i=s&&s[t];return i||(0,import_core88._warnOnce)(`no stock theme exists with the name '${t}' and no custom chart theme with that name was supplied to 'customChartThemes'`),i}var ChartDatasource=class X extends import_core90.BeanStub{wireBeans(t){this.sortController=t.sortController,this.gridRowModel=t.rowModel,this.columnModel=t.columnModel,this.valueService=t.valueService,this.pivotResultColsService=t.pivotResultColsService,this.rowNodeSorter=t.rowNodeSorter,this.aggregationStage=t.aggregationStage}getData(t){if(t.crossFiltering){if(t.grouping)return(0,import_core90._warnOnce)("crossing filtering with row grouping is not supported."),{chartData:[],columnNames:{}};if(!(0,import_core90._isClientSideRowModel)(this.gos))return(0,import_core90._warnOnce)("crossing filtering is only supported in the client side row model."),{chartData:[],columnNames:{}}}(0,import_core90._isServerSideRowModel)(this.gos)&&t.pivoting&&this.updatePivotKeysForSSRM();const i=this.extractRowsFromGridRowModel(t);return i.chartData=this.aggregateRowsByDimension(t,i.chartData),i}extractRowsFromGridRowModel(t){const{crossFiltering:s,startRow:i,endRow:r,valueCols:a,dimensionCols:o,grouping:n}=t;let l=[];const c={},h={},d={};let u={},p=[],g;if(s)u=this.getFilteredRowNodes(),p=this.getAllRowNodes(),g=p.length;else{const v=this.gridRowModel.getRowCount()-1;i===r&&i===0&&o.length===0&&a.length===0?g=0:g=(r>=0?Math.min(r,v):v)-i+1}g>0&&a.forEach(v=>{let S=[];const y=v.getColDef().pivotKeys;y&&(S=y.slice());const w=v.getColDef().headerName;w&&S.push(w),S.length>0&&(c[v.getId()]=S)});let m=0,C=0;for(let v=0;v<g;v++){const S=s?p[v]:this.gridRowModel.getRow(v+i);if(S.footer||S.detail){m++;continue}const y={};o.forEach(w=>{const x=w.colId,b=this.columnModel.getCol(x);if(b){const T=this.valueService.getValue(b,S);if(n){const M=T?.toString?String(T.toString()):"",P=X.getGroupLabels(S,M);y[x]={labels:P,id:C++,toString:function(){return this.labels.filter(D=>!!D).reverse().join(" - ")}},S.group&&(h[P.toString()]=v-m);const R=P.slice(1,P.length).toString();R&&(d[R]=h[R])}else y[x]=T}else y[ChartDataModel.DEFAULT_CATEGORY]=v+1}),a.forEach(w=>{const x=w.getColId();if(s){const b=x+"-filtered-out",T=this.valueService.getValue(w,S),M=T!=null&&typeof T.toNumber=="function"?T.toNumber():T;u[S.id]?(y[x]=M,y[b]=t.aggFunc||t.isScatter?void 0:0):(y[x]=t.aggFunc||t.isScatter?void 0:0,y[b]=M)}else{let b=this.valueService.getValue(w,S);b&&Object.prototype.hasOwnProperty.call(b,"toString")&&(b=parseFloat(b.toString())),y[x]=b!=null&&typeof b.toNumber=="function"?b.toNumber():b}}),l.push(y)}let f;if(n){const v=(0,import_core90._values)(d),S=l;l=[],f=[];for(let y=0;y<S.length;y++)((0,import_core90._includes)(v,y)?f:l).push(S[y])}return{chartData:l,columnNames:c,groupChartData:f}}aggregateRowsByDimension(t,s){const i=t.dimensionCols;if(!t.aggFunc||i.length===0)return s;const r=(0,import_core90._last)(i),a=r&&r.colId,o={},n=[];if(s.forEach(l=>{let c=o;i.forEach(h=>{const d=h.colId,u=l[d];if(d===a){let p=c[u];p||(p={__children:[]},i.forEach(g=>{const m=g.colId;p[m]=l[m]}),c[u]=p,n.push(p)),p.__children.push(l)}else c[u]||(c[u]={}),c=c[u]})}),this.gos.assertModuleRegistered(import_core90.ModuleNames.RowGroupingModule,"Charting Aggregation")){const l=this.aggregationStage;n.forEach(c=>t.valueCols.forEach(h=>{if(t.crossFiltering)t.valueCols.forEach(d=>{const u=d.getColId(),p=c.__children.filter(v=>typeof v[u]<"u").map(v=>v[u]),g=l.aggregateValues(p,t.aggFunc);c[d.getId()]=g&&typeof g.value<"u"?g.value:g;const m=`${u}-filtered-out`,C=c.__children.filter(v=>typeof v[m]<"u").map(v=>v[m]),f=l.aggregateValues(C,t.aggFunc);c[m]=f&&typeof f.value<"u"?f.value:f});else{const d=c.__children.map(p=>p[h.getId()]),u=l.aggregateValues(d,t.aggFunc);c[h.getId()]=u&&typeof u.value<"u"?u.value:u}}))}return n}updatePivotKeysForSSRM(){const t=this.pivotResultColsService.getPivotResultCols()?.list;if(!t)return;const s=this.extractPivotKeySeparator(t);t.forEach(i=>{if(s==="")i.getColDef().pivotKeys=[];else{const r=i.getColId().split(s);i.getColDef().pivotKeys=r.slice(0,r.length-1)}})}extractPivotKeySeparator(t){if(t.length===0)return"";const s=(r,a)=>{const o=r.getGroupId();return r.getParent()?s(r.getParent(),o):a.split(o)[1][0]},i=t[0];return i.getParent()==null?"":s(i.getParent(),i.getColId())}static getGroupLabels(t,s){const i=[s];for(;t&&t.level!==0;)t=t.parent,t&&i.push(t.key);return i}getFilteredRowNodes(){const t={};return this.gridRowModel.forEachNodeAfterFilterAndSort(s=>{t[s.id]=s}),t}getAllRowNodes(){const t=[];return this.gridRowModel.forEachNode(s=>{t.push(s)}),this.sortRowNodes(t)}sortRowNodes(t){const s=this.sortController.getSortOptions();return!s||s.length==0?t:this.rowNodeSorter.doFullSort(t,s)}},ChartColumnService=class extends import_core91.BeanStub{constructor(){super(...arguments),this.beanName="chartColumnService",this.valueColsWithoutSeriesType=new Set}wireBeans(e){this.columnModel=e.columnModel,this.showRowGroupColsService=e.showRowGroupColsService,this.columnNameService=e.columnNameService,this.visibleColsService=e.visibleColsService,this.funcColsService=e.funcColsService,this.valueService=e.valueService,this.rowPositionUtils=e.rowPositionUtils}postConstruct(){const e=()=>this.valueColsWithoutSeriesType.clear();this.addManagedEventListeners({newColumnsLoaded:e,rowDataUpdated:e})}getColumn(e){return this.columnModel.getColDefCol(e)}getAllDisplayedColumns(){return this.visibleColsService.getAllCols()}getColDisplayName(e,t){const s="chart",i=this.columnNameService.getDisplayNameForColumn(e,s);if(t){const r=[i],a=o=>{if(!o)return;const n=this.columnNameService.getDisplayNameForColumnGroup(o,s);(0,import_core91._missingOrEmpty)(n)||(r.unshift(n),a(o.getParent()))};return a(e.getParent()),r.join(" - ")}return i}getRowGroupColumns(){return this.funcColsService.getRowGroupColumns()}getGroupDisplayColumns(){return this.showRowGroupColsService?.getShowRowGroupCols()??[]}isPivotMode(){return this.columnModel.isPivotMode()}isPivotActive(){return this.columnModel.isPivotActive()}getChartColumns(){const e=this.columnModel.getCols(),t=new Set,s=new Set;return e.forEach(i=>{const r=i.getColDef(),a=r.chartDataType;if(a)switch(a){case"category":case"time":t.add(i);return;case"series":s.add(i);return;case"excluded":return;default:(0,import_core91._warnOnce)(`unexpected chartDataType value '${a}' supplied, instead use 'category', 'series' or 'excluded'`);break}if(r.colId==="ag-Grid-AutoColumn"){t.add(i);return}if(!i.isPrimary()){s.add(i);return}(this.isInferredValueCol(i)?s:t).add(i)}),{dimensionCols:t,valueCols:s}}isInferredValueCol(e){const t=e.getColId();if(t==="ag-Grid-AutoColumn")return!1;const s=this.rowPositionUtils.getRowNode({rowIndex:0,rowPinned:null});if(!s)return this.valueColsWithoutSeriesType.has(t);let i=this.valueService.getValue(e,s);i==null&&(i=this.extractLeafData(s,e)),i!=null&&typeof i.toNumber=="function"&&(i=i.toNumber());const r=typeof i=="number";return r&&this.valueColsWithoutSeriesType.add(t),r}extractLeafData(e,t){if(!e.allLeafChildren)return null;for(let s=0;s<e.allLeafChildren.length;s++){const i=e.allLeafChildren[s],r=this.valueService.getValue(t,i);if(r!=null)return r}return null}destroy(){this.valueColsWithoutSeriesType.clear(),super.destroy()}},_ComboChartModel=class Z extends import_core92.BeanStub{constructor(t){super(),this.suppressComboChartWarnings=!1,this.chartDataModel=t,this.seriesChartTypes=t.params.seriesChartTypes??[]}postConstruct(){this.initComboCharts()}update(t){this.seriesChartTypes=t??this.seriesChartTypes,this.initComboCharts(),this.updateSeriesChartTypes()}initComboCharts(){const t=this.seriesChartTypes&&this.seriesChartTypes.length>0;(this.chartDataModel.chartType==="customCombo"||t)&&(this.chartDataModel.chartType="customCombo",this.savedCustomSeriesChartTypes=this.seriesChartTypes||[])}updateSeriesChartTypes(){if(this.chartDataModel.isComboChart()){if(this.seriesChartTypes=this.seriesChartTypes.map(t=>{const s=["groupedColumn","stackedColumn","stackedArea"].includes(t.chartType);return t.secondaryAxis=s?!1:t.secondaryAxis,t}),this.chartDataModel.chartType==="customCombo"){this.updateSeriesChartTypesForCustomCombo();return}this.updateChartSeriesTypesForBuiltInCombos()}}updateSeriesChartTypesForCustomCombo(){!(this.seriesChartTypes&&this.seriesChartTypes.length>0)&&!this.suppressComboChartWarnings&&(0,import_core92._warnOnce)("'seriesChartTypes' are required when the 'customCombo' chart type is specified."),this.seriesChartTypes=this.seriesChartTypes.map(r=>(Z.SUPPORTED_COMBO_CHART_TYPES.includes(r.chartType)||((0,import_core92._warnOnce)(`invalid chartType '${r.chartType}' supplied in 'seriesChartTypes', converting to 'line' instead.`),r.chartType="line"),r));const s=r=>{(!this.savedCustomSeriesChartTypes||this.savedCustomSeriesChartTypes.length===0)&&(this.savedCustomSeriesChartTypes=this.seriesChartTypes);const a=this.savedCustomSeriesChartTypes.find(o=>o.colId===r.colId);return a||(r.selected&&!this.suppressComboChartWarnings&&(0,import_core92._warnOnce)(`no 'seriesChartType' found for colId = '${r.colId}', defaulting to 'line'.`),{colId:r.colId,chartType:"line",secondaryAxis:!1})},i=this.chartDataModel.valueColState.map(s);this.seriesChartTypes=i,this.savedCustomSeriesChartTypes=i,this.suppressComboChartWarnings=!0}updateChartSeriesTypesForBuiltInCombos(){const{chartType:t,valueColState:s}=this.chartDataModel,i=t==="columnLineCombo"?"groupedColumn":"stackedArea",r=t==="columnLineCombo"?"line":"groupedColumn",a=s.filter(n=>n.selected),o=Math.ceil(a.length/2);this.seriesChartTypes=a.map((n,l)=>{const c=l>=o?r:i;return{colId:n.colId,chartType:c,secondaryAxis:!1}})}};_ComboChartModel.SUPPORTED_COMBO_CHART_TYPES=["line","groupedColumn","stackedColumn","area","stackedArea"];var ComboChartModel=_ComboChartModel,_ChartDataModel=class z extends import_core89.BeanStub{constructor(t){super(),this.unlinked=!1,this.chartData=[],this.valueColState=[],this.dimensionColState=[],this.columnNames={},this.crossFiltering=!1,this.grouping=!1,this.params=t,this.chartId=t.chartId,this.setParams(t)}wireBeans(t){this.rangeService=t.rangeService,this.chartTranslationService=t.chartTranslationService}setParams(t){const{chartType:s,pivotChart:i,chartThemeName:r,switchCategorySeries:a,aggFunc:o,cellRange:n,suppressChartRanges:l,unlinkChart:c,crossFiltering:h,seriesGroupType:d}=t;this.chartType=s,this.pivotChart=i??!1,this.chartThemeName=r,this.switchCategorySeries=!!a,this.aggFunc=o,this.referenceCellRange=n,this.suppliedCellRange=n,this.suppressChartRanges=l??!1,this.unlinked=!!c,this.crossFiltering=!!h,this.seriesGroupType=d}postConstruct(){this.datasource=this.createManagedBean(new ChartDatasource),this.chartColumnService=this.createManagedBean(new ChartColumnService),this.comboChartModel=this.createManagedBean(new ComboChartModel(this)),this.updateCellRanges({setColsFromRange:!0}),this.updateData()}updateModel(t){const{cellRange:s,seriesChartTypes:i}=t;s!==this.suppliedCellRange&&(this.dimensionCellRange=void 0,this.valueCellRange=void 0),this.setParams(t),this.updateSelectedDimensions(s?.columns),this.updateCellRanges({setColsFromRange:!0}),(this.isComboChart()||i)&&this.comboChartModel.update(i),this.unlinked||this.updateData()}updateCellRanges(t){const{updatedColState:s,resetOrder:i,maintainColState:r,setColsFromRange:a}=t??{};this.valueCellRange&&(this.referenceCellRange=this.valueCellRange);const{dimensionCols:o,valueCols:n}=this.chartColumnService.getChartColumns(),l=this.getAllColumnsFromRanges();s&&this.updateColumnState(s,i),this.setDimensionCellRange(o,l,s),this.setValueCellRange(n,l,a),!s&&!r&&(this.resetColumnState(),this.syncDimensionCellRange()),this.comboChartModel.updateSeriesChartTypes()}updateData(){const{startRow:t,endRow:s}=this.getRowIndexes();this.pivotChart&&this.resetColumnState(),this.grouping=this.isGrouping();const i={aggFunc:this.aggFunc,dimensionCols:this.getSelectedDimensions(),grouping:this.grouping,pivoting:this.isPivotActive(),crossFiltering:this.crossFiltering,valueCols:this.getSelectedValueCols(),startRow:t,endRow:s,isScatter:(0,import_core89._includes)(["scatter","bubble"],this.chartType)},{chartData:r,columnNames:a,groupChartData:o}=this.datasource.getData(i);this.chartData=r,this.groupChartData=o,this.columnNames=a,this.categoryAxisType=void 0}isGrouping(){const t=this.gos.get("treeData"),s=t?null:this.chartColumnService.getRowGroupColumns(),i=t||s&&s.length>0,r=this.getSelectedDimensions().map(({colId:n})=>n),o=this.chartColumnService.getGroupDisplayColumns().map(n=>n.getColId()).some(n=>r.includes(n));return!!i&&o}getSelectedValueCols(){return this.valueColState.filter(t=>t.selected).map(t=>t.column)}getSelectedDimensions(){return this.dimensionColState.filter(t=>t.selected)}getColDisplayName(t,s){return this.chartColumnService.getColDisplayName(t,s)}isPivotMode(){return this.chartColumnService.isPivotMode()}getChartDataType(t){const s=this.chartColumnService.getColumn(t);return s?s.getColDef().chartDataType:void 0}isPivotActive(){return this.chartColumnService.isPivotActive()}createCellRange(t,...s){return{id:this.chartId,startRow:this.referenceCellRange.startRow,endRow:this.referenceCellRange.endRow,columns:s,startColumn:t===import_core89.CellRangeType.DIMENSION||this.referenceCellRange.startColumn==null?s[0]:this.referenceCellRange.startColumn,type:t}}getAllColumnsFromRanges(){if(this.pivotChart)return new Set(this.chartColumnService.getAllDisplayedColumns());const t=this.dimensionCellRange||this.valueCellRange?[]:this.referenceCellRange.columns;return this.dimensionCellRange&&t.push(...this.dimensionCellRange.columns),this.valueCellRange&&t.push(...this.valueCellRange.columns),new Set(t)}getRowIndexes(){let t=0,s=0;const{rangeService:i,valueCellRange:r,dimensionCellRange:a}=this,o=r||a;if(i&&o){t=i.getRangeStartRow(o).rowIndex;const n=i.getRangeEndRow(o);s=n.rowPinned==="bottom"?-1:n.rowIndex}return{startRow:t,endRow:s}}resetColumnState(){const{dimensionCols:t,valueCols:s}=this.chartColumnService.getChartColumns(),i=this.getAllColumnsFromRanges(),r=this.valueColState.length<1;this.dimensionColState=[],this.valueColState=[];const a=isHierarchical(getSeriesType(this.chartType));let o=!1,n=1;const l=this.suppliedCellRange.columns[0];t.forEach(d=>{const u=d.getColId()==="ag-Grid-AutoColumn";let p=!1;this.crossFiltering&&this.aggFunc?l.getColId()===d.getColId()&&(p=!0):p=u?!0:(!o||a)&&i.has(d),this.dimensionColState.push({column:d,colId:d.getColId(),displayName:this.getColDisplayName(d),selected:p,order:n++}),p&&(o=!0)});const c={colId:z.DEFAULT_CATEGORY,displayName:this.chartTranslationService.translate("defaultCategory"),selected:!o,order:0};this.dimensionColState.unshift(c);const h=this.referenceCellRange.columns.filter(d=>s.has(d));s.forEach(d=>{r&&(0,import_core89._includes)(this.referenceCellRange.columns,d)&&(d=h.shift()),this.valueColState.push({column:d,colId:d.getColId(),displayName:this.getColDisplayName(d),selected:i.has(d),order:n++})})}updateColumnState(t,s){const i=h=>h.colId===t.colId,{dimensionColState:r,valueColState:a}=this,o=r.find(i),n=a.find(i);if(o)if(isHierarchical(getSeriesType(this.chartType)))o.selected=t.selected;else{const d=t.selected?o:r.filter(u=>u!==o).find(({selected:u})=>u);r.forEach(u=>u.selected=u===d)}else n&&(n.selected=t.selected);const l=[...r,...a],c=[];s||(l.forEach((h,d)=>{d===t.order&&c.push(t.colId),h.colId!==t.colId&&c.push(h.colId)}),l.forEach(h=>{const d=c.indexOf(h.colId);h.order=d>=0?c.indexOf(h.colId):l.length-1})),this.reorderColState()}reorderColState(){const t=(s,i)=>s.order-i.order;this.dimensionColState.sort(t),this.valueColState.sort(t)}setDimensionCellRange(t,s,i){this.dimensionCellRange=void 0;const r=isHierarchical(getSeriesType(this.chartType));if(!i&&!this.dimensionColState.length){const l=new Array;t.forEach(c=>{l.length>0&&!r||!s.has(c)||l.push(c)}),l.length>0&&(this.dimensionCellRange=this.createCellRange(import_core89.CellRangeType.DIMENSION,...l));return}let a=i?[i]:[];if(this.crossFiltering&&this.aggFunc){const l=this.suppliedCellRange.columns[0];a=this.dimensionColState.filter(c=>c.colId===l.getColId())}else(r||a.length===0||a.some(({column:l})=>!l||!t.has(l)))&&(a=this.dimensionColState.filter(l=>l.selected));const o=a.length===1?a[0].colId===z.DEFAULT_CATEGORY:!1,n=a.map(({column:l})=>l).filter(l=>l!=null);n.length>0&&!o&&(this.dimensionCellRange=this.createCellRange(import_core89.CellRangeType.DIMENSION,...n))}setValueCellRange(t,s,i){this.valueCellRange=void 0;const r=[],a=getMaxNumSeries(this.chartType);let o=0;if(t.forEach(n=>{i?(a==null||o<a)&&s.has(n)&&(r.push(n),o++):this.valueColState.some(l=>l.selected&&l.colId===n.getColId())&&r.push(n)}),r.length>0){let n=[];this.valueColState.length>0?n=this.valueColState.map(l=>l.colId):s.forEach(l=>n.push(l.getColId())),r.sort((l,c)=>n.indexOf(l.getColId())-n.indexOf(c.getColId())),this.valueCellRange=this.createCellRange(import_core89.CellRangeType.VALUE,...r)}}resetCellRanges(t,s){if(!t&&!s)return;const{dimensionCols:i,valueCols:r}=this.chartColumnService.getChartColumns(),a=this.getAllColumnsFromRanges();t&&this.setDimensionCellRange(i,a),s&&this.setValueCellRange(r,a)}updateSelectedDimensions(t){const s=new Set(t.map(r=>r.getColId()));if(isHierarchical(getSeriesType(this.chartType))){const r=this.dimensionColState.filter(o=>s.has(o.colId)),a=new Set(r.map(o=>o.colId));this.dimensionColState=this.dimensionColState.map(o=>({...o,selected:a.has(o.colId)}))}else{const a=(this.dimensionColState.find(o=>s.has(o.colId))||this.dimensionColState[0]).colId;this.dimensionColState=this.dimensionColState.map(o=>({...o,selected:o.colId===a}))}}syncDimensionCellRange(){const t=this.getSelectedDimensions();if(t.length===0)return;const s=t.map(({column:i})=>i).filter(i=>i!=null);s.length>0&&(this.dimensionCellRange=this.createCellRange(import_core89.CellRangeType.DIMENSION,...s))}isComboChart(t){return isComboChart(t??this.chartType)}};_ChartDataModel.DEFAULT_CATEGORY="AG-GRID-DEFAULT-CATEGORY";var ChartDataModel=_ChartDataModel,validateIfDefined=e=>t=>t==null?!0:e(t),isString=e=>typeof e=="string",isBoolean=e=>typeof e=="boolean",isValidSeriesChartType=e=>typeof e=="object",createWarnMessage=(e,t)=>s=>`AG Grid - unable to update chart as invalid params supplied: \`${e}: ${s}\`, expected ${t}.`,createEnterpriseMessage=e=>`${e} is not supported in AG Charts Community (either 'ag-grid-charts-enterprise' or '@ag-grid-enterprise/charts-enterprise' hasn't been loaded). See https://www.ag-grid.com/javascript-data-grid/integrated-charts-installation/ for more details.`,_ChartParamsValidator=class O{static isEnterprise(){return import_ag_charts_community8._ModuleSupport.enterpriseModule.isEnterprise}static isValidChartType(t){return!!getSeriesTypeIfExists(t)||isComboChart(t)}static isLegacyChartType(t){return O.legacyChartTypes.includes(t)}static validateUpdateParams(t){switch(t.type){case"rangeChartUpdate":return O.validateUpdateRangeChartParams(t);case"pivotChartUpdate":return O.validateUpdatePivotChartParams(t);case"crossFilterChartUpdate":return O.validateUpdateCrossFilterChartParams(t);default:return(0,import_core93._warnOnce)(`Invalid value supplied for 'type': ${t.type}. It must be either 'rangeChartUpdate', 'pivotChartUpdate', or 'crossFilterChartUpdate'.`),!1}}static validateCreateParams(t){return validateProperties(t,[O.enterpriseChartTypeValidation,O.switchCategorySeriesValidation])}static validateUpdateRangeChartParams(t){const s=[...O.commonUpdateValidations,O.enterpriseChartTypeValidation,...O.cellRangeValidations,{property:"seriesChartTypes",validationFn:i=>i===void 0||Array.isArray(i)&&i.every(isValidSeriesChartType),warnMessage:createWarnMessage("seriesChartTypes","Array of SeriesChartType")}];return validateProperties(t,s,[...O.baseUpdateChartParams,"cellRange","suppressChartRanges","switchCategorySeries","aggFunc","seriesChartTypes","seriesGroupType"],"UpdateRangeChartParams")}static validateUpdatePivotChartParams(t){const s=[...O.commonUpdateValidations];return validateProperties(t,s,[...O.baseUpdateChartParams],"UpdatePivotChartParams")}static validateUpdateCrossFilterChartParams(t){const s=[...O.commonUpdateValidations,...O.cellRangeValidations];return validateProperties(t,s,[...O.baseUpdateChartParams,"cellRange","suppressChartRanges","aggFunc"],"UpdateCrossFilterChartParams")}};_ChartParamsValidator.legacyChartTypes=["doughnut"],_ChartParamsValidator.baseUpdateChartParams=["type","chartId","chartType","chartThemeName","chartThemeOverrides","unlinkChart"],_ChartParamsValidator.validateChartType=validateIfDefined(e=>{if(_ChartParamsValidator.isValidChartType(e))return!0;if(_ChartParamsValidator.isLegacyChartType(e)){const t=getCanonicalChartType(e);return(0,import_core93._warnOnce)(`The chart type '${e}' has been deprecated. Please use '${t}' instead.`),t}return!1}),_ChartParamsValidator.validateAgChartThemeOverrides=validateIfDefined(e=>typeof e=="object"),_ChartParamsValidator.validateChartParamsCellRange=validateIfDefined(e=>typeof e=="object"),_ChartParamsValidator.validateAggFunc=validateIfDefined(e=>typeof e=="string"||typeof e=="function"),_ChartParamsValidator.enterpriseChartTypeValidation={property:"chartType",validationFn:validateIfDefined(e=>_ChartParamsValidator.isEnterprise()||!e||!isEnterpriseChartType(e)),warnMessage:e=>createEnterpriseMessage(`The '${e}' chart type`)},_ChartParamsValidator.switchCategorySeriesValidation={property:"switchCategorySeries",validationFn:validateIfDefined(e=>{if(!e||_ChartParamsValidator.isEnterprise())return!0}),warnMessage:()=>createEnterpriseMessage("'switchCategorySeries' has been ignored as it"),warnIfFixed:!0},_ChartParamsValidator.commonUpdateValidations=[{property:"chartId",validationFn:isString,warnMessage:createWarnMessage("chartId","string")},{property:"chartType",validationFn:_ChartParamsValidator.validateChartType,warnMessage:createWarnMessage("chartType","ChartType")},{property:"chartThemeName",validationFn:isString,warnMessage:createWarnMessage("chartThemeName","string")},{property:"chartThemeOverrides",validationFn:_ChartParamsValidator.validateAgChartThemeOverrides,warnMessage:createWarnMessage("chartThemeOverrides","AgChartThemeOverrides")},{property:"unlinkChart",validationFn:isBoolean,warnMessage:createWarnMessage("unlinkChart","boolean")}],_ChartParamsValidator.cellRangeValidations=[{property:"cellRange",validationFn:_ChartParamsValidator.validateChartParamsCellRange,warnMessage:createWarnMessage("cellRange","ChartParamsCellRange")},{property:"suppressChartRanges",validationFn:isBoolean,warnMessage:createWarnMessage("suppressChartRanges","boolean")},{property:"aggFunc",validationFn:_ChartParamsValidator.validateAggFunc,warnMessage:createWarnMessage("aggFunc","string or IAggFunc")},_ChartParamsValidator.switchCategorySeriesValidation];var ChartParamsValidator=_ChartParamsValidator;function validateProperties(e,t,s,i){let r;for(const a of t){const{property:o,validationFn:n,warnMessage:l,warnIfFixed:c}=a;if(o in e){const h=e[o],d=n(h);if(d===!0)continue;if(d===!1)return(0,import_core93._warnOnce)(l(h)),!1;r=r||{...e},r[o]=d,c&&(0,import_core93._warnOnce)(l(h))}}if(s){for(const a in e)if(!s.includes(a))return(0,import_core93._warnOnce)(`Unexpected property supplied. ${i} does not contain: \`${a}\`.`),!1}return r||!0}var DEFAULT_THEMES=["ag-default","ag-material","ag-sheets","ag-polychroma","ag-vivid"],ChartController=class extends import_core87.BeanStub{constructor(e){super(),this.model=e,this.isEnterprise=()=>import_ag_charts_community6._ModuleSupport.enterpriseModule.isEnterprise}wireBeans(e){this.rangeService=e.rangeService}postConstruct(){this.setChartRange(),this.model.unlinked&&this.rangeService&&this.rangeService.setCellRanges([]);const e=this.updateForGridChange.bind(this,{});this.addManagedEventListeners({cellSelectionChanged:t=>{t.id&&t.id===this.model.chartId&&this.updateForRangeChange()},columnMoved:e,columnPinned:e,columnVisible:e,columnRowGroupChanged:e,modelUpdated:e,cellValueChanged:this.updateForDataChange.bind(this)})}update(e){if(!this.validUpdateType(e))return!1;const t=ChartParamsValidator.validateUpdateParams(e);if(!t)return!1;const s=t===!0?e:t;return this.applyValidatedChartParams(s),!0}applyValidatedChartParams(e){const{chartId:t,chartType:s,chartThemeName:i,unlinkChart:r}=e,o={...{chartId:t,pivotChart:this.model.pivotChart,chartType:s??this.model.chartType,chartThemeName:i??this.model.chartThemeName,unlinkChart:r??this.model.unlinked,cellRange:this.model.suppliedCellRange,switchCategorySeries:this.model.switchCategorySeries,aggFunc:this.model.aggFunc,seriesChartTypes:void 0,suppressChartRanges:!1,crossFiltering:!1}};switch(e.type){case"rangeChartUpdate":o.cellRange=this.createCellRange(e)??this.model.suppliedCellRange,o.switchCategorySeries=e.switchCategorySeries??this.model.switchCategorySeries,o.aggFunc=e.aggFunc??this.model.aggFunc,o.seriesChartTypes=e.seriesChartTypes,o.suppressChartRanges=e.suppressChartRanges??this.model.suppressChartRanges,o.seriesGroupType=e.seriesGroupType??this.model.seriesGroupType;break;case"crossFilterChartUpdate":o.cellRange=this.createCellRange(e)??this.model.suppliedCellRange,o.switchCategorySeries=!1,o.aggFunc=e.aggFunc??this.model.aggFunc,o.crossFiltering=!0,o.suppressChartRanges=e.suppressChartRanges??this.model.suppressChartRanges;break;case"pivotChartUpdate":o.switchCategorySeries=!1;break}this.model.updateModel(o),o.unlinkChart||o.suppressChartRanges?this.rangeService?.setCellRanges([]):this.setChartRange()}updateForGridChange(e){if(this.model.unlinked)return;const{maintainColState:t,setColsFromRange:s}=e??{};this.model.updateCellRanges({maintainColState:t,setColsFromRange:s}),this.model.updateData(),this.setChartRange()}updateForDataChange(){this.model.unlinked||(this.model.updateData(),this.raiseChartModelUpdateEvent())}updateForRangeChange(){this.updateForGridChange({setColsFromRange:!0}),this.raiseChartRangeSelectionChangedEvent()}updateForPanelChange(e){this.model.updateCellRanges(e),this.model.updateData(),e.skipAnimation&&this.getChartProxy().getChartRef().skipAnimations(),this.setChartRange(),this.raiseChartRangeSelectionChangedEvent()}updateThemeOverrides(e){this.chartProxy.updateThemeOverrides(e)}getChartUpdateParams(e){const s=this.getSelectedValueColState().map(o=>({colId:o.colId,displayName:o.displayName})),i=this.getChartData(),r=this.getSelectedDimensions(),a={data:i,groupData:this.model.groupChartData,grouping:this.isGrouping(),categories:r.map(o=>({id:o.colId,name:o.displayName,chartDataType:this.model.categoryAxisType??this.model.getChartDataType(o.colId)})),fields:s,chartId:this.getChartId(),getCrossFilteringContext:()=>({lastSelectedChartId:"xxx"}),seriesChartTypes:this.getSeriesChartTypes(),updatedOverrides:e,seriesGroupType:this.model.seriesGroupType};return this.isCategorySeriesSwitched()?this.invertCategorySeriesParams(a):a}invertCategorySeriesParams(e){const[t]=e.categories,s=[{id:ChartDataModel.DEFAULT_CATEGORY,name:""}],i=e.data.map((a,o)=>{const n=`${t.id}:${o}`,l=a[t.id],c=l==null?"":String(l);return{colId:n,displayName:c}}),r=e.fields.map(a=>{const o={[ChartDataModel.DEFAULT_CATEGORY]:a.displayName};for(const[n,l]of e.data.entries()){const c=`${t.id}:${n}`,h=l[a.colId];o[c]=h}return o});return{...e,categories:s,fields:i,data:r}}getChartModel(){const e=this.model.pivotChart?"pivot":"range",t=this.isComboChart()?this.model.comboChartModel.seriesChartTypes:void 0;return{modelType:e,chartId:this.model.chartId,chartType:this.model.chartType,chartThemeName:this.getChartThemeName(),chartOptions:this.chartProxy.getChartThemeOverrides(),chartPalette:this.chartProxy.getChartPalette(),cellRange:this.getCellRangeParams(),switchCategorySeries:this.model.switchCategorySeries,suppressChartRanges:this.model.suppressChartRanges,aggFunc:this.model.aggFunc,unlinkChart:this.model.unlinked,seriesChartTypes:t,seriesGroupType:this.model.seriesGroupType}}getChartId(){return this.model.chartId}getChartData(){return this.model.chartData}getChartType(){return this.model.chartType}setChartType(e){this.updateMultiSeriesAndCategory(this.model.chartType,e),this.model.chartType=e,this.model.comboChartModel.updateSeriesChartTypes(),this.model.switchCategorySeries=!1,this.model.categoryAxisType=void 0,this.model.seriesGroupType=void 0,this.raiseChartModelUpdateEvent(),this.raiseChartOptionsChangedEvent()}isCategorySeriesSwitched(){return this.model.switchCategorySeries&&!this.model.isGrouping()}switchCategorySeries(e){supportsInvertedCategorySeries(this.getChartType())&&(this.model.switchCategorySeries=e,this.raiseChartModelUpdateEvent())}getAggFunc(){return this.model.aggFunc}setAggFunc(e,t){this.model.aggFunc!==e&&(this.model.aggFunc=e,!t&&(this.model.updateData(),this.raiseChartModelUpdateEvent()))}updateMultiSeriesAndCategory(e,t){const s=(n,l)=>{let c=0;for(const h of n)h.selected&&(c>=l?h.selected=!1:c++);c===0&&(n[0].selected=!0)},i=getMaxNumCategories(t),r=getMaxNumSeries(t),a=i!=null&&(getMaxNumCategories(e)??100)>(i??100),o=r!=null&&(getMaxNumSeries(e)??100)>(r??100);a&&s(this.model.dimensionColState,i),o&&s(this.model.valueColState,r),(a||o)&&(this.model.resetCellRanges(a,o),this.setChartRange(!0))}setChartThemeName(e,t){this.model.chartThemeName=e,t||(this.raiseChartModelUpdateEvent(),this.raiseChartOptionsChangedEvent())}getChartThemeName(){return this.model.chartThemeName}isPivotChart(){return this.model.pivotChart}isPivotMode(){return this.model.isPivotMode()}isGrouping(){return this.model.isGrouping()}isCrossFilterChart(){return this.model.crossFiltering}getThemeNames(){return this.gos.get("chartThemes")||DEFAULT_THEMES}getThemes(){return this.getThemeNames().map(t=>{const i=isStockTheme(t)?t:this.chartProxy.lookupCustomChartTheme(t);return import_ag_charts_community6._Theme.getChartTheme(i)})}getPalettes(){return this.getThemes().map(t=>t.palette)}getThemeTemplateParameters(){return this.getThemes().map(t=>t.getTemplateParameters())}getValueColState(){return this.model.valueColState.map(this.displayNameMapper.bind(this))}getSelectedValueColState(){return this.getValueColState().filter(e=>e.selected)}getSelectedDimensions(){return this.model.getSelectedDimensions()}displayNameMapper(e){const{column:t}=e;if(t)e.displayName=this.model.getColDisplayName(t,this.model.isPivotMode());else{const s=this.model.columnNames[e.colId];e.displayName=s?s.join(" - "):this.model.getColDisplayName(t)}return e}getColStateForMenu(){return{dimensionCols:this.model.dimensionColState,valueCols:this.getValueColState()}}setChartRange(e=!1){this.rangeService&&!this.model.suppressChartRanges&&!this.model.unlinked&&this.rangeService.setCellRanges(this.getCellRanges()),e||this.raiseChartModelUpdateEvent()}detachChartRange(){this.model.unlinked=!this.model.unlinked,this.model.unlinked?this.rangeService&&this.rangeService.setCellRanges([]):this.updateForGridChange(),this.dispatchLocalEvent({type:"chartLinkedChanged"})}setChartProxy(e){this.chartProxy=e}getChartProxy(){return this.chartProxy}isActiveXYChart(){return["scatter","bubble"].includes(this.getChartType())}isChartLinked(){return!this.model.unlinked}customComboExists(){const e=this.model.comboChartModel.savedCustomSeriesChartTypes;return e&&e.length>0}getSeriesChartTypes(){return this.model.comboChartModel.seriesChartTypes}isComboChart(e){return this.model.isComboChart(e)}updateSeriesChartType(e,t,s){const i=this.model.comboChartModel.seriesChartTypes.find(r=>r.colId===e);if(i){const r=this.model.chartType!=="customCombo";r&&(this.model.chartType="customCombo");const a=i.chartType;t!=null&&(i.chartType=t),s!=null&&(i.secondaryAxis=s),this.model.comboChartModel.savedCustomSeriesChartTypes=this.model.comboChartModel.seriesChartTypes,this.model.comboChartModel.updateSeriesChartTypes(),this.updateForDataChange(),r&&this.dispatchLocalEvent({type:"chartTypeChanged"}),a!==t&&this.dispatchLocalEvent({type:"chartSeriesChartTypeChanged"}),this.raiseChartOptionsChangedEvent()}}getActiveSeriesChartTypes(){const e=this.getSelectedValueColState().map(t=>t.colId);return this.getSeriesChartTypes().filter(t=>e.includes(t.colId))}getChartSeriesTypes(e){const t=e??this.getChartType();return this.isComboChart(t)?["line","bar","area"]:[getSeriesType(t)]}getChartSeriesType(){const e=this.getSeriesChartTypes();if(e.length===0)return"bar";const t=e[0].chartType;return t==="columnLineCombo"?"bar":t==="areaColumnCombo"?"area":getSeriesType(t)}getCellRanges(){return[this.model.dimensionCellRange,this.model.valueCellRange].filter(e=>e)}createCellRange(e){return e.cellRange&&this.rangeService?.createPartialCellRangeFromRangeParams(e.cellRange,!0)}validUpdateType(e){if(!e.type)return(0,import_core87._warnOnce)("Unable to update chart as the 'type' is missing. It must be either 'rangeChartUpdate', 'pivotChartUpdate', or 'crossFilterChartUpdate'."),!1;const t={"Range Chart":()=>!this.isPivotChart()&&!this.isCrossFilterChart(),"Pivot Chart":()=>this.isPivotChart(),"Cross Filter Chart":()=>this.isCrossFilterChart()},s=Object.keys(t).find(r=>t[r]())??"Range Chart",i=e.type===`${s[0].toLowerCase()}${s.slice(1).replace(/ /g,"")}Update`;return i||(0,import_core87._warnOnce)(`Unable to update chart as a '${e.type}' update type is not permitted on a ${s}.`),i}getCellRangeParams(){const e=this.getCellRanges(),t=e[0],s=t&&t.startRow||null,i=t&&t.endRow||null;return{rowStartIndex:s&&s.rowIndex,rowStartPinned:s&&s.rowPinned,rowEndIndex:i&&i.rowIndex,rowEndPinned:i&&i.rowPinned,columns:e.reduce((r,a)=>r.concat(a.columns.map(o=>o.getId())),[])}}setCategoryAxisType(e){this.model.categoryAxisType=e,this.raiseChartModelUpdateEvent()}getSeriesGroupType(){return this.model.seriesGroupType??this.chartProxy.getSeriesGroupType()}setSeriesGroupType(e){this.model.seriesGroupType=e,this.raiseChartModelUpdateEvent()}raiseChartModelUpdateEvent(){this.dispatchLocalEvent({type:"chartModelUpdate"})}raiseChartUpdatedEvent(){this.dispatchLocalEvent({type:"chartUpdated"})}raiseChartApiUpdateEvent(){this.dispatchLocalEvent({type:"chartApiUpdate"})}raiseChartOptionsChangedEvent(){const{chartId:e,chartType:t}=this.getChartModel();this.eventService.dispatchEvent({type:"chartOptionsChanged",chartId:e,chartType:t,chartThemeName:this.getChartThemeName(),chartOptions:this.chartProxy.getChartThemeOverrides()})}raiseChartRangeSelectionChangedEvent(){this.eventService.dispatchEvent({type:"chartRangeSelectionChanged",id:this.model.chartId,chartId:this.model.chartId,cellRange:this.getCellRangeParams()})}destroy(){super.destroy(),this.rangeService&&this.rangeService.setCellRanges([])}};function deproxy(e){return e.chart!=null?e.chart:e}var ChartProxy=class{constructor(e){this.chartProxyParams=e,this.clearThemeOverrides=!1,this.isEnterpriseCharts=import_ag_charts_community9._ModuleSupport.enterpriseModule.isEnterprise,this.chart=e.chartInstance,this.chartType=e.chartType,this.crossFiltering=e.crossFiltering,this.crossFilterCallback=e.crossFilterCallback,this.standaloneChartType=getSeriesType(this.chartType),this.chart==null?this.chart=import_ag_charts_community9.AgCharts.create(this.getCommonChartOptions()):this.clearThemeOverrides=!0}crossFilteringReset(){}update(e){this.getChartRef().update(this.getUpdateOptions(e,this.getCommonChartOptions(e.updatedOverrides)))}updateThemeOverrides(e){this.getChartRef().updateDelta({theme:{overrides:e}})}getChart(){return deproxy(this.chart)}getChartRef(){return this.chart}downloadChart(e,t,s){const{chart:i}=this,r=deproxy(i),a=t||(r.title?r.title.text:"chart"),{width:o,height:n}=e||{};i.download({width:o,height:n,fileName:a,fileFormat:s})}getChartImageDataURL(e){return this.getChart().getCanvasDataURL(e)}getChartOptions(){return this.chart.getOptions()}getChartThemeOverrides(){return this.getChartOptions().theme.overrides??{}}getChartPalette(){return import_ag_charts_community9._Theme.getChartTheme(this.getChartOptions().theme).palette}setPaired(e){const t=getSeriesType(this.chartProxyParams.chartType);this.chart.updateDelta({theme:{overrides:{[t]:{paired:e}}}})}isPaired(){const e=getSeriesType(this.chartProxyParams.chartType);return get(this.getChartThemeOverrides(),`${e}.paired`,!0)}lookupCustomChartTheme(e){return lookupCustomChartTheme(this.chartProxyParams,e)}getSeriesGroupType(){}transformCategoryData(e,t){return e.map((s,i)=>{const r=s[t],a=r&&r.toString?r.toString():"",o={...s};return o[t]={id:i,value:r,toString:()=>a},o})}getCommonChartOptions(e){const t=this.clearThemeOverrides?{}:this.chart?.getOptions()??{},s=this.chart!=null?this.getActiveFormattingPanelOverrides():void 0;this.clearThemeOverrides=!1;const i=createAgChartTheme(this.chartProxyParams,this,this.isEnterpriseCharts,this.getChartThemeDefaults(),e??s),r={...t,mode:"integrated"};return r.theme=i,r.container=this.chartProxyParams.parentElement,r}getChartThemeDefaults(){const e=this.getSeriesChartThemeDefaults(),t=e?{[this.standaloneChartType]:e}:{},s={enabled:!0,snap:!0,label:{enabled:!1}},i=this.isEnterpriseCharts?{zoom:{enabled:!0},animation:{enabled:!0,duration:500},axes:{number:{crosshair:s},category:{crosshair:s},log:{crosshair:s},time:{crosshair:s}}}:{};return i.minHeight=0,i.minWidth=0,i.navigator={enabled:!1},{common:i,...t}}getSeriesChartThemeDefaults(){}getActiveFormattingPanelOverrides(){return this.clearThemeOverrides?{}:this.chart?.getOptions().theme?.overrides??{}}destroy({keepChartInstance:e=!1}={}){if(e)return this.chart.resetAnimations(),this.chart;this.destroyChart()}destroyChart(){this.chart&&(this.chart.destroy(),this.chart=void 0)}},CartesianChartProxy=class extends ChartProxy{constructor(e){super(e),this.crossFilteringAllPoints=new Set,this.crossFilteringSelectedPoints=[]}getUpdateOptions(e,t){const s=this.getAxes(e,t);return{...t,data:this.getData(e,s),axes:s,series:this.getSeries(e)}}getData(e,t){const s=["area","line"].includes(this.standaloneChartType);return this.crossFiltering&&s?this.getCrossFilterData(e):this.getDataTransformedData(e,t)}getDataTransformedData(e,t){const s=t[0].type,{categories:i,data:r}=e,[a]=i;switch(s){case"category":return this.transformCategoryData(r,a.id);case"time":return this.transformTimeData(r,a.id);default:return r}}getXAxisType(e){return e.grouping?"grouped-category":this.isXAxisOfType(e,"time",t=>t instanceof Date)?"time":this.isXAxisOfType(e,"number")?"number":"category"}isXAxisOfType(e,t,s){const[i]=e.categories;if(i?.chartDataType)return i.chartDataType===t;if(!s)return!1;const r=e.data[0];return r?s(r[i.id]):!1}transformTimeData(e,t){return e[0]?.[t]instanceof Date?e:e.map(i=>{const r=i[t];return typeof r=="string"?{...i,[t]:new Date(r)}:i})}crossFilteringReset(){this.crossFilteringSelectedPoints=[],this.crossFilteringAllPoints.clear()}crossFilteringPointSelected(e){return this.crossFilteringSelectedPoints.length==0||this.crossFilteringSelectedPoints.includes(e)}crossFilteringDeselectedPoints(){return this.crossFilteringSelectedPoints.length>0&&this.crossFilteringAllPoints.size!==this.crossFilteringSelectedPoints.length}extractLineAreaCrossFilterSeries(e,t){const[s]=t.categories,i=r=>this.standaloneChartType==="area"?t.getCrossFilteringContext().lastSelectedChartId===t.chartId?r+"-total":r:r+"-total";return e.map(r=>(r.yKey=i(r.yKey),r.listeners={nodeClick:a=>{const o=a.datum[r.xKey],n=a.event.metaKey||a.event.ctrlKey;this.crossFilteringAddSelectedPoint(n,o),this.crossFilterCallback(a)}},r.marker={itemStyler:a=>{const o=a.datum[s.id];return{fill:a.highlighted?"yellow":a.fill,size:a.highlighted?14:this.crossFilteringPointSelected(o)?8:0}}},this.standaloneChartType==="area"&&(r.fillOpacity=this.crossFilteringDeselectedPoints()?.3:1),this.standaloneChartType==="line"&&(r.strokeOpacity=this.crossFilteringDeselectedPoints()?.3:1),r))}getCrossFilterData(e){this.crossFilteringAllPoints.clear();const[t]=e.categories,s=e.fields[0].colId,i=`${s}-filtered-out`,r=e.getCrossFilteringContext().lastSelectedChartId;return e.data.map(a=>{const o=a[t.id];this.crossFilteringAllPoints.add(o);const n=this.crossFilteringPointSelected(o);return this.standaloneChartType==="area"&&r===e.chartId&&(a[`${s}-total`]=n?a[s]:a[s]+a[i]),this.standaloneChartType==="line"&&(a[`${s}-total`]=n?a[s]:a[s]+a[i]),a})}crossFilteringAddSelectedPoint(e,t){e?this.crossFilteringSelectedPoints.push(t):this.crossFilteringSelectedPoints=[t]}isHorizontal(e){const t=this.standaloneChartType;if(t!=="waterfall"&&t!=="box-plot"&&t!=="range-bar")return!1;const s=e.theme,i=r=>{const a=r?.overrides?.[t]?.series?.direction;return a!=null?a==="horizontal":typeof r?.baseTheme=="object"?i(r.baseTheme):!1};return i(s)}},AreaChartProxy=class extends CartesianChartProxy{constructor(e){super(e)}getAxes(e){const t=[{type:this.getXAxisType(e),position:"bottom"},{type:"number",position:"left"}];if(this.isNormalised()){const s=t[1];s.label={...s.label,formatter:i=>Math.round(i.value)+"%"}}return t}getSeries(e){const[t]=e.categories,s=e.fields.map(i=>({type:this.standaloneChartType,xKey:t.id,xName:t.name,yKey:i.colId,yName:i.displayName,normalizedTo:this.chartType==="normalizedArea"?100:void 0,stacked:["normalizedArea","stackedArea"].includes(this.chartType)}));return this.crossFiltering?this.extractLineAreaCrossFilterSeries(s,e):s}isNormalised(){return!this.crossFiltering&&this.chartType==="normalizedArea"}};function hexToRGBA(e,t){const s=parseInt(e.slice(1,3),16),i=parseInt(e.slice(3,5),16),r=parseInt(e.slice(5,7),16);return t?`rgba(${s}, ${i}, ${r}, ${t})`:`rgba(${s}, ${i}, ${r})`}function changeOpacity(e,t){return e.map(s=>{const i=import_ag_charts_community10._Util.Color.fromString(s);return new import_ag_charts_community10._Util.Color(i.r,i.g,i.b,t).toHexString()})}var HORIZONTAL_CHART_TYPES=new Set(["bar","groupedBar","stackedBar","normalizedBar"]),BarChartProxy=class extends CartesianChartProxy{constructor(e){super(e)}getAxes(e){const t=[{type:this.getXAxisType(e),position:this.isHorizontal()?"left":"bottom"},{type:"number",position:this.isHorizontal()?"bottom":"left"}];if(this.isNormalised()){const s=t[1];s.label={...s.label,formatter:i=>Math.round(i.value)+"%"}}return t}getSeries(e){const[t]=e.categories,s=e.fields.map(i=>({type:this.standaloneChartType,direction:this.isHorizontal()?"horizontal":"vertical",stacked:this.crossFiltering||isStacked(this.chartType),normalizedTo:this.isNormalised()?100:void 0,xKey:t.id,xName:t.name,yKey:i.colId,yName:i.displayName}));return this.crossFiltering?this.extractCrossFilterSeries(s):s}extractCrossFilterSeries(e){const t=this.getChartPalette(),s=(a,o)=>({...a,highlightStyle:{item:{fill:void 0}},fill:t?.fills?.[o],stroke:t?.strokes?.[o],listeners:{nodeClick:this.crossFilterCallback}}),i=a=>{const o=a.yKey+"-filtered-out";return{...a,yKey:o,fill:hexToRGBA(a.fill,"0.3"),stroke:hexToRGBA(a.stroke,"0.3"),showInLegend:!1}},r=[];for(let a=0;a<e.length;a++){const o=e[a];r.push(s(o,a)),r.push(i(s(o,a)))}return r}isNormalised(){const e=["normalizedColumn","normalizedBar"];return!this.crossFiltering&&(0,import_core94._includes)(e,this.chartType)}isHorizontal(){return HORIZONTAL_CHART_TYPES.has(this.chartType)}},HistogramChartProxy=class extends CartesianChartProxy{constructor(e){super(e)}getSeries(e){const t=e.fields[0];return[{type:this.standaloneChartType,xKey:t.colId,xName:t.displayName,yName:this.chartProxyParams.translate("histogramFrequency"),areaPlot:!1}]}getAxes(e){return[{type:"number",position:"bottom"},{type:"number",position:"left"}]}},LineChartProxy=class extends CartesianChartProxy{constructor(e){super(e)}getAxes(e){return[{type:this.getXAxisType(e),position:"bottom"},{type:"number",position:"left"}]}getSeries(e){const[t]=e.categories,s=e.fields.map(i=>({type:this.standaloneChartType,xKey:t.id,xName:t.name,yKey:i.colId,yName:i.displayName}));return this.crossFiltering?this.extractLineAreaCrossFilterSeries(s,e):s}},ScatterChartProxy=class extends CartesianChartProxy{constructor(e){super(e)}getAxes(e){return[{type:"number",position:"bottom"},{type:"number",position:"left"}]}getSeries(e){const[t]=e.categories,s=this.isPaired(),i=this.getSeriesDefinitions(e.fields,s),r=t.id===ChartDataModel.DEFAULT_CATEGORY?void 0:t,a=i.map(o=>o?.sizeField?{type:"bubble",xKey:o.xField.colId,xName:o.xField.displayName??void 0,yKey:o.yField.colId,yName:o.yField.displayName??void 0,title:`${o.yField.displayName} vs ${o.xField.displayName}`,sizeKey:o.sizeField.colId,sizeName:o.sizeField.displayName??"",labelKey:r?r.id:o.yField.colId,labelName:r?r.name:void 0}:{type:"scatter",xKey:o.xField.colId,xName:o.xField.displayName??void 0,yKey:o.yField.colId,yName:o.yField.displayName??void 0,title:`${o.yField.displayName} vs ${o.xField.displayName}`,labelKey:r?r.id:o.yField.colId,labelName:r?r.name:void 0});return this.crossFiltering?this.extractCrossFilterSeries(a,e):a}extractCrossFilterSeries(e,t){const{data:s}=t,i=this.getChartPalette(),r=c=>`${c}-filtered-out`,a=(c,h)=>{const d=[1/0,-1/0];if(h!=null)for(const u of c){const p=u[h]??u[r(h)];p<d[0]&&(d[0]=p),p>d[1]&&(d[1]=p)}if(d[0]<=d[1])return d},o=(c,h)=>{const d=i?.fills?.[h],u=i?.strokes?.[h];let p;if(c.type==="bubble"){const{sizeKey:g}=c;p=a(s,g)}return{...c,fill:d,stroke:u,domain:p,highlightStyle:{item:{fill:"yellow"}},listeners:{...c.listeners,nodeClick:this.crossFilterCallback}}},n=c=>{const{yKey:h,xKey:d}=c;let u={};return c.type==="bubble"&&(u={sizeKey:r(c.sizeKey)}),{...c,...u,yKey:r(h),xKey:r(d),fillOpacity:.3,strokeOpacity:.3,showInLegend:!1,listeners:{...c.listeners,nodeClick:p=>{const g=p.datum[r(d)],m={...p,xKey:d,datum:{...p.datum,[d]:g}};this.crossFilterCallback(m)}}}},l=e.map(o);return[...l,...l.map(n)]}getSeriesDefinitions(e,t){if(e.length<2)return[];const s=this.chartType==="bubble";if(t)return s?e.map((r,a)=>a%3===0?{xField:r,yField:e[a+1],sizeField:e[a+2]}:null).filter(r=>r&&r.yField&&r.sizeField):e.map((r,a)=>a%2===0?{xField:r,yField:e[a+1]}:null).filter(r=>r&&r.yField);const i=e[0];return s?e.map((r,a)=>a%2===1?{xField:i,yField:r,sizeField:e[a+1]}:null).filter(r=>r&&r.sizeField):e.filter((r,a)=>a>0).map(r=>({xField:i,yField:r}))}},WaterfallChartProxy=class extends CartesianChartProxy{constructor(e){super(e)}getAxes(e,t){return[{type:this.getXAxisType(e),position:this.isHorizontal(t)?"left":"bottom"},{type:"number",position:this.isHorizontal(t)?"bottom":"left"}]}getSeries(e){const[t]=e.categories,[s]=e.fields;return[{type:this.standaloneChartType,xKey:t.id,xName:t.name,yKey:s.colId,yName:s.displayName??void 0}]}},ComboChartProxy=class extends CartesianChartProxy{constructor(e){super(e)}getAxes(e){const t=e?e.fields:[],s=new Map(t.map(o=>[o.colId,o])),{primaryYKeys:i,secondaryYKeys:r}=this.getYKeys(t,e.seriesChartTypes),a=[{type:this.getXAxisType(e),position:"bottom"}];return i.length>0&&a.push({type:"number",keys:i,position:"left"}),r.length>0&&r.forEach(o=>{const n=s.get(o);if(!(n&&n.colId===o))return;const c={type:"number",keys:[o],position:"right"};a.push(c)}),a}getSeries(e){const{fields:t,seriesChartTypes:s}=e,[i]=e.categories;return t.map(r=>{const a=s.find(o=>o.colId===r.colId);if(a){const o=a.chartType,l=["groupedColumn","groupedBar"].includes(o)?{grouped:!0}:{};return{type:getSeriesType(o),xKey:i.id,yKey:r.colId,yName:r.displayName,stacked:["stackedArea","stackedColumn"].includes(o),...l}}})}getYKeys(e,t){const s=[],i=[];return e.forEach(r=>{const a=r.colId,o=t.find(n=>n.colId===a);o&&(o.secondaryAxis?i.push(a):s.push(a))}),{primaryYKeys:s,secondaryYKeys:i}}},CATEGORY_LABEL_KEY="AG-GRID-DEFAULT-LABEL-KEY";function createCategoryHierarchy(e,t){const s=buildNestedHierarchy(e,i,r);return formatCategoryHierarchy(s);function i(o){return t.length}function r(o,n){const l=t[n],c=o[l];return a(c)}function a(o){return o==null?null:String(o)}}function createAutoGroupHierarchy(e,t){const s=buildNestedHierarchy(e,i,r);return formatCategoryHierarchy(s);function i(a){return t(a)?.length??0}function r(a,o){const n=t(a);if(!n)return null;const l=n.length-1-o;return n[l]}}function formatCategoryHierarchy(e,t=null,s){const{depth:i,rootValues:r,value:a,children:o}=e;if(r)return r.map(l=>({[CATEGORY_LABEL_KEY]:t,...l}));if(i===0)return[{[CATEGORY_LABEL_KEY]:t,...a}];const n=[];for(const[l,c]of o.entries())n.push(...formatCategoryHierarchy(c,l,!0));return s?[{[CATEGORY_LABEL_KEY]:t,children:n,...a??{}}]:n}function buildNestedHierarchy(e,t,s){const i={depth:0,children:new Map};return e.forEach(a=>{const o=t(a);r(a,o,s,0,i)}),i;function r(a,o,n,l,c){if(l===o)return l===0?(c.rootValues||(c.rootValues=[]),c.rootValues.push(a)):c.value=a,c;{const h=n(a,l),d=c.children.get(h),u=r(a,o,n,l+1,d||{depth:0,children:new Map});return c.children.set(h,u),c.depth=Math.max(1+u.depth,c.depth),c}}}var HierarchicalChartProxy=class extends ChartProxy{constructor(e){super(e)}getUpdateOptions(e,t){const{fields:s}=e,[i,r]=s;return{...t,series:this.getSeries(i,r),data:this.getData(e,i,r)}}getSeriesChartThemeDefaults(){return{gradientLegend:{gradient:{preferredLength:200}}}}getSeries(e,t){return[{type:this.standaloneChartType,labelKey:CATEGORY_LABEL_KEY,sizeKey:e?.colId,sizeName:e?.displayName??void 0,colorKey:t?.colId,colorName:t?.displayName??void 0}]}getData(e,t,s){const{categories:i,data:r,groupData:a,grouping:o}=e;if(o){const n=s?r.concat(a?.map(l=>{const c={...l};return delete c[t.colId],c})??[]):r;return createAutoGroupHierarchy(n,l=>l[import_core95.GROUP_AUTO_COLUMN_ID]?.labels??null)}else{const n=i.map(({id:l})=>l);return createCategoryHierarchy(r,n)}}};function calculateOffsets(e){const t=e.currentOffset;e.currentOffset-=e.offsetAmount;const s=e.currentOffset;return e.currentOffset-=e.offsetAmount,{outerRadiusOffset:t,innerRadiusOffset:s}}var PieChartProxy=class extends ChartProxy{constructor(e){super(e)}getUpdateOptions(e,t){return{...t,data:this.crossFiltering?this.getCrossFilterData(e):e.data,series:this.getSeries(e)}}getSeries(e){const[t]=e.categories,s=e.fields.length,i={currentOffset:0,offsetAmount:s>1?20:40},r=this.getFields(e).map(a=>{const o={type:this.standaloneChartType,angleKey:a.colId,angleName:a.displayName,sectorLabelKey:a.colId,calloutLabelName:t.name,calloutLabelKey:t.id};if(this.chartType==="donut"||this.chartType==="doughnut"){const{outerRadiusOffset:n,innerRadiusOffset:l}=calculateOffsets(i),c=a.displayName?{title:{text:a.displayName,showInLegend:s>1}}:void 0;return{...o,type:"donut",outerRadiusOffset:n,innerRadiusOffset:l,...c,calloutLine:{colors:this.getChartPalette()?.strokes}}}return o});return this.crossFiltering?this.extractCrossFilterSeries(r):r}getCrossFilterData(e){const t=e.fields[0].colId,s=`${t}-filtered-out`;return e.data.map(i=>{const r=i[t]+i[s];return i[`${t}-total`]=r,i[s]=1,i[t]=i[t]/r,i})}extractCrossFilterSeries(e){const t=this.getChartPalette(),s=n=>({...n,legendItemKey:n.calloutLabelKey,calloutLabel:{enabled:!1},highlightStyle:{item:{fill:void 0}},radiusKey:n.angleKey,angleKey:n.angleKey+"-total",radiusMin:0,radiusMax:1,listeners:{nodeClick:this.crossFilterCallback}}),i=(n,l)=>({...o,radiusKey:l+"-filtered-out",fills:changeOpacity(n.fills??t?.fills??[],.3),strokes:changeOpacity(n.strokes??t?.strokes??[],.3),showInLegend:!1}),r=e[0],a=r.angleKey,o=s(r);return[i(s(r),a),o]}getFields(e){return this.chartType==="pie"?e.fields.slice(0,1):e.fields}},PolarChartProxy=class extends ChartProxy{constructor(e){super(e)}getAxes(e){const t=this.standaloneChartType==="radial-bar";return[{type:t?"angle-number":"angle-category"},{type:t?"radius-category":"radius-number"}]}getSeries(e){const{fields:t,categories:s,seriesGroupType:i}=e,[r]=s,a=this.standaloneChartType==="radial-bar",o=this.getSeriesGroupTypeOptions(i);return t.map(n=>({type:this.standaloneChartType,angleKey:a?n.colId:r.id,angleName:a?n.displayName??void 0:r.name,radiusKey:a?r.id:n.colId,radiusName:a?r.name:n.displayName??void 0,...o}))}getSeriesGroupType(){const e=this.standaloneChartType;if(!["nightingale","radial-bar","radial-column"].includes(e))return;const t=this.getChart().series?.[0]?.properties.toJson(),s=()=>t.normalizedTo?"normalized":"stacked";return e==="nightingale"?t.grouped?"grouped":s():t.stacked?s():"grouped"}getUpdateOptions(e,t){const s=this.getAxes(e);return{...t,data:this.getData(e,s),axes:s,series:this.getSeries(e)}}getData(e,t){if(t.some(i=>i.type==="angle-category"||i.type==="radius-category")){const[i]=e.categories;return this.transformCategoryData(e.data,i.id)}else return e.data}getSeriesGroupTypeOptions(e){return e?{grouped:e==="grouped"||void 0,stacked:e!=="grouped"||void 0,normalizedTo:e==="normalized"?100:void 0}:{}}};function flatMap(e,t){return e.reduce((s,i,r,a)=>s.concat(t(i,r,a)),new Array)}var HEATMAP_CATEGORY_KEY="AG-GRID-DEFAULT-HEATMAP-CATEGORY-KEY",HEATMAP_SERIES_KEY="AG-GRID-DEFAULT-HEATMAP-SERIES-KEY",HEATMAP_VALUE_KEY="AG-GRID-DEFAULT-HEATMAP-VALUE-KEY",HeatmapChartProxy=class extends ChartProxy{constructor(e){super(e)}getUpdateOptions(e,t){const s=HEATMAP_SERIES_KEY,i=HEATMAP_VALUE_KEY,r=HEATMAP_CATEGORY_KEY;return{...t,series:this.getSeries(e,s,i,r),data:this.getData(e,s,i,r)}}getSeries(e,t,s,i){const[r]=e.categories;return[{type:this.standaloneChartType,yKey:i,xKey:t,colorKey:s,yName:r.name,xName:void 0,colorName:void 0}]}getData(e,t,s,i){const[r]=e.categories;return flatMap(e.data,(a,o)=>{const n=a[r.id],l=n==null?"":String(n),c={id:o,value:n,toString:()=>l};return e.fields.map(({colId:h,displayName:d})=>({...a,[t]:d,[s]:a[h],[i]:c}))})}getSeriesChartThemeDefaults(){return{gradientLegend:{gradient:{preferredLength:200}},series:{tooltip:{renderer:renderHeatmapTooltip}}}}};function renderHeatmapTooltip(e){const{xKey:t,yKey:s,colorKey:i,yName:r,datum:a}=e;return{title:"",content:[{label:r,value:a[s]},{label:a[t],value:i&&a[i]}].map(({label:l,value:c})=>`<b>${sanitizeHtml(String(l))}:</b> ${sanitizeHtml(String(c))}`).join("<br>")}}function sanitizeHtml(e){const t={"&":"&","<":"<",">":">"},s=`[${Object.keys(t).join("")}]`,i=new RegExp(s,"g");return e.replace(i,r=>t[r])}var StatisticalChartProxy=class extends CartesianChartProxy{constructor(e){super(e)}getAxes(e,t){return[{type:this.getXAxisType(e),position:this.isHorizontal(t)?"left":"bottom"},{type:"number",position:this.isHorizontal(t)?"bottom":"left"}]}computeSeriesStatistics(e,t){const{data:s,fields:i}=e,[r]=e.categories,a=r.id||ChartDataModel.DEFAULT_CATEGORY,o=this.groupDataByCategory(a,s);return Array.from(o).map(([n,l])=>{const c={[r.id]:n};return i.forEach((h,d)=>{const u=l.map(p=>p[h.colId]).filter(p=>typeof p=="number"&&!isNaN(p));Object.entries(t(u)).forEach(([p,g])=>{const m=`${p}:${d}`;c[m]=u.length>0?g:null})}),c})}groupDataByCategory(e,t){const s=i=>{if(e===ChartDataModel.DEFAULT_CATEGORY)return 1;const r=i[e];return r==null?"":r instanceof Date?r.getTime():r};return t.reduce((i,r)=>{const a=s(r),o=i.get(a);return o?o.push(r):i.set(a,[r]),i},new Map)}},BoxPlotChartProxy=class extends StatisticalChartProxy{constructor(e){super(e)}getSeries(e){const[t]=e.categories;return e.fields.map((s,i)=>({type:this.standaloneChartType,xKey:t.id,xName:t.name,yName:s.displayName??void 0,minName:"Min",q1Name:"Q1",medianName:"Median",q3Name:"Q3",maxName:"Max",minKey:`min:${i}`,q1Key:`q1:${i}`,medianKey:`median:${i}`,q3Key:`q3:${i}`,maxKey:`max:${i}`}))}getData(e){return this.computeSeriesStatistics(e,t=>{const s=t.sort((i,r)=>i-r);return{min:s[0],q1:this.quantile(s,.25),median:this.quantile(s,.5),q3:this.quantile(s,.75),max:s[s.length-1]}})}quantile(e,t){const s=(e.length-1)*t,i=Math.floor(s),r=s-i;return e[i+1]!==void 0?e[i]+r*(e[i+1]-e[i]):e[i]}},RangeChartProxy=class extends StatisticalChartProxy{constructor(e){super(e)}getSeries(e){const[t]=e.categories;return e.fields.map((s,i)=>({type:this.standaloneChartType,xKey:t.id,xName:t.name,yName:s.displayName??void 0,yLowName:"Min",yHighName:"Max",yLowKey:`min:${i}`,yHighKey:`max:${i}`}))}getData(e){return this.computeSeriesStatistics(e,t=>({min:Math.min(...t),max:Math.max(...t)}))}},ChartToolbar=class extends import_core98.Component{constructor(){super('<div class="ag-chart-menu" data-ref="eMenu"></div>'),this.eMenu=import_core98.RefPlaceholder,this.buttonListenersDestroyFuncs=[]}wireBeans(e){this.chartTranslationService=e.chartTranslationService}updateParams(e){const{buttons:t}=e;this.createButtons(t)}createButtons(e){this.buttonListenersDestroyFuncs.forEach(s=>s?.()),this.buttonListenersDestroyFuncs=[];const t=this.eMenu;(0,import_core98._clearElement)(t),e.forEach(s=>{const{buttonName:i,iconName:r,callback:a}=s,o=this.createButton(r),n=this.chartTranslationService.translate(i+"ToolbarTooltip");n&&o instanceof HTMLElement&&(o.title=n),this.buttonListenersDestroyFuncs.push(...this.addManagedElementListeners(o,{click:l=>a(l.currentTarget)})),t.appendChild(o)})}createButton(e){const t=(0,import_core98._createIconNoSpan)(e,this.gos,void 0,!0);t.classList.add("ag-chart-menu-icon");const s=(0,import_core98._getDocument)(this.gos).createElement("button");return s.appendChild(t),s.classList.add("ag-chart-menu-toolbar-button"),s}destroy(){this.buttonListenersDestroyFuncs=[],super.destroy()}},AgPillSelect=class extends import_core105.Component{constructor(e){super('<div class="ag-pill-select" role="presentation"></div>'),this.config=e??{};const{selectedValueList:t,valueFormatter:s,valueList:i}=this.config;this.selectedValues=t??[],this.valueList=i??[],this.valueFormatter=s??(r=>(0,import_core105._escapeString)(r))}postConstruct(){const{ariaLabel:e,onValuesChange:t,dragSourceId:s}=this.config;this.dropZonePanel=this.createManagedBean(new PillSelectDropZonePanel({getValues:()=>this.selectedValues,setValues:r=>this.updateValues(r),isDraggable:()=>this.selectedValues.length>1},r=>this.valueFormatter(r),e,s)),this.getGui().appendChild(this.dropZonePanel.getGui()),this.initSelect(),t!=null&&(this.onValuesChange=t)}setValues(e,t){const{added:s,removed:i,updated:r}=this.getChanges(this.valueList,e);let a=!1;return(s.length||i.length||r.length)&&(a=!0),this.valueList=e,this.updateValues(t,a,!0),this}setValueFormatter(e){return this.valueFormatter=e,this}initSelect(){const e=this.createSelectOptions();if(!e.length)return!1;const{selectPlaceholder:t}=this.config;return this.eSelect=this.createBean(new import_core105.AgSelect({options:e,placeholder:t,onValueChange:s=>this.addValue(s),pickerIcon:"chartsMenuAdd"})),this.getGui().appendChild(this.eSelect.getGui()),!0}createSelectOptions(){const e=[],{maxSelection:t}=this.config;return t&&this.selectedValues.length>=t||this.valueList.forEach(s=>{this.selectedValues.includes(s)||e.push({value:s,text:this.valueFormatter(s)})}),e}addValue(e){this.dropZonePanel.addItem(e)}updateValues(e,t,s){const i=this.selectedValues;this.selectedValues=e;const r=this.getChanges(i,e),a=t||r.added.length||r.removed.length,o=(0,import_core105._getActiveDomElement)(this.gos),n=this.eSelect?.getGui().contains(o),l=this.dropZonePanel?.getGui().contains(o);s||this.onValuesChange?.(r);const c=a?!this.refreshSelect():!1;this.dropZonePanel.refreshGui(),a&&n&&(c?this.dropZonePanel.focusList(!0):this.eSelect?.getFocusableElement().focus()),l&&!e.length&&this.eSelect?.getFocusableElement().focus()}getChanges(e,t){const s=t.filter(a=>!e.includes(a)),i=e.filter(a=>!t.includes(a)),r=t.filter((a,o)=>e[o]!==a);return{added:s,removed:i,updated:r,selected:t}}refreshSelect(){if(!this.eSelect)return this.initSelect();const e=this.createSelectOptions();return e.length?(this.eSelect.clearOptions().addOptions(e).setValue(void 0,!0),!0):((0,import_core105._removeFromParent)(this.eSelect.getGui()),this.eSelect=this.destroyBean(this.eSelect),!1)}destroy(){this.destroyBean(this.eSelect),super.destroy()}},PillSelectDragComp=class extends PillDragComp{constructor(e,t,s,i,r,a){super(t,s,!1),this.value=e,this.valueFormatter=i,this.draggable=r,this.sourceId=a}getItem(){return this.value}getDisplayName(){return this.valueFormatter(this.value)}getAriaDisplayName(){return this.getDisplayName()}getTooltip(){}createGetDragItem(){return()=>({value:this.value})}getDragSourceType(){return import_core105.DragSourceType.ChartPanel}getDragSourceId(){return this.sourceId}isDraggable(){return this.draggable}},PillSelectDropZonePanel=class extends PillDropZonePanel{constructor(e,t,s,i){super(!1),this.model=e,this.valueFormatter=t,this.ariaLabel=s,this.sourceId=i}postConstruct(){super.init()}isItemDroppable(e,t){return this.isSourceEventFromTarget(t)||this.sourceId!=null&&this.sourceId===t.dragSource.sourceId}updateItems(e){this.model.setValues(e)}getExistingItems(){return this.model.getValues()}getIconName(){return this.isPotentialDndItems()?"move":"notAllowed"}getAriaLabel(){return this.ariaLabel}createPillComponent(e,t,s){return new PillSelectDragComp(e,t,s,this.valueFormatter,this.model.isDraggable(),this.sourceId)}getItems(e){return[e.value]}isInterestedIn(e){return e===import_core105.DragSourceType.ChartPanel}},DragDataPanel=class extends import_core104.Component{constructor(e,t,s,i){super(i),this.chartController=e,this.allowMultipleSelection=t,this.maxSelection=s}wireBeans(e){this.chartTranslationService=e.chartTranslationService}addItem(e){this.groupComp.addItem(e)}createGroup(e,t,s,i,r){if(this.allowMultipleSelection){const a=e.filter(o=>o.selected);this.valuePillSelect=this.groupComp.createManagedBean(new AgPillSelect({valueList:e,selectedValueList:a,valueFormatter:t,selectPlaceholder:this.chartTranslationService.translate(s),dragSourceId:i,onValuesChange:o=>this.onValueChange(o),maxSelection:this.maxSelection})),this.groupComp.addItem(this.valuePillSelect)}else{const a=this.createValueSelectParams(e);a.onValueChange=o=>{e.forEach(n=>{n.selected=!1}),o.selected=!0,o.colId===ChartDataModel.DEFAULT_CATEGORY&&this.chartController.setAggFunc(void 0,!0),this.chartController.updateForPanelChange({updatedColState:o,skipAnimation:r?.()})},this.valueSelect=this.groupComp.createManagedBean(new import_core104.AgSelect(a)),this.groupComp.addItem(this.valueSelect)}}refreshValueSelect(e){if(!this.valueSelect)return;const{options:t,value:s}=this.createValueSelectParams(e);this.valueSelect.clearOptions().addOptions(t).setValue(s,!0)}createValueSelectParams(e){let t;return{options:e.map(i=>{const r=i.displayName??"";return i.selected&&(t=i),{value:i,text:r}}),value:t}}onValueChange({added:e,updated:t,removed:s,selected:i}){let r,a;const o=()=>{i.forEach((n,l)=>{n.order=l}),a=!0};e.length?(r=e[0],r.selected=!0,o()):s.length?(r=s[0],r.selected=!1):t.length&&(o(),r=t[0]),r&&this.chartController.updateForPanelChange({updatedColState:r,resetOrder:a})}destroy(){this.valuePillSelect=void 0,this.valueSelect=void 0,super.destroy()}},DEFAULT_AGG_FUNC="sum",CategoriesDataPanel=class extends DragDataPanel{constructor(e,t,s,i,r){super(e,s,void 0,'<div id="categoriesGroup"></div>'),this.title=t,this.dimensionCols=i,this.isOpen=r}postConstruct(){this.groupComp=this.createBean(new AgGroupComponent({title:this.title,enabled:!0,suppressEnabledCheckbox:!0,suppressOpenCloseIcons:!1,cssIdentifier:"charts-data",expanded:this.isOpen})),this.createGroup(this.dimensionCols,e=>e.displayName??"","categoryAdd","categorySelect",()=>!this.chartController.getAggFunc()),this.createAggFuncControls(this.dimensionCols),this.getGui().appendChild(this.groupComp.getGui())}refresh(e){this.valuePillSelect?.setValues(e,e.filter(t=>t.selected)),this.refreshValueSelect(e),this.refreshAggFuncControls(e,this.chartController.getAggFunc())}createAggFuncControls(e){const t=this.chartController.getAggFunc();this.groupComp.addItem(this.aggFuncToggle=this.createBean(new import_core102.AgToggleButton({label:this.chartTranslationService.translate("aggregate"),labelAlignment:"left",labelWidth:"flex",inputWidth:"flex",value:t!=null,onValueChange:s=>{const i=s?DEFAULT_AGG_FUNC:void 0;this.chartController.setAggFunc(i),this.aggFuncSelect?.setValue(i,!0),this.aggFuncSelect?.setDisplayed(i!=null)}}))),this.groupComp.addItem(this.aggFuncSelect=this.createBean(new import_core102.AgSelect({options:[{value:"sum",text:this.chartTranslationService.translate("sum")},{value:"first",text:this.chartTranslationService.translate("first")},{value:"last",text:this.chartTranslationService.translate("last")},{value:"min",text:this.chartTranslationService.translate("min")},{value:"max",text:this.chartTranslationService.translate("max")},{value:"count",text:this.chartTranslationService.translate("count")},{value:"avg",text:this.chartTranslationService.translate("avg")}],value:typeof t=="string"?t:void 0,onValueChange:s=>{this.chartController.setAggFunc(s)}}))),this.refreshAggFuncControls(e,t)}refreshAggFuncControls(e,t){const i=e.filter(r=>r.selected).some(r=>r.colId!==ChartDataModel.DEFAULT_CATEGORY);this.aggFuncToggle?.setValue(t!=null),this.aggFuncSelect?.setValue(typeof t=="string"?t:void 0,!0),this.aggFuncToggle?.setDisplayed(i),this.aggFuncSelect?.setDisplayed(i&&t!=null)}clearAggFuncControls(){this.aggFuncToggle=this.destroyBean(this.aggFuncToggle),this.aggFuncSelect=this.destroyBean(this.aggFuncSelect)}destroy(){this.clearAggFuncControls(),this.groupComp=this.destroyBean(this.groupComp),super.destroy()}},ChartMenuParamsFactory=class extends import_core109.BeanStub{constructor(e){super(),this.chartOptionsProxy=e}wireBeans(e){this.chartTranslationService=e.chartTranslationService}getDefaultColorPickerParams(e,t,s){return this.addValueParams(e,{label:this.chartTranslationService.translate(t??"color"),labelWidth:"flex",inputWidth:"flex",labelAlignment:"top",pickerGap:6},s)}getDefaultNumberInputParams(e,t,s){return this.addValueParams(e,{label:this.chartTranslationService.translate(t),labelAlignment:"top",labelWidth:"flex",inputWidth:"flex",precision:s?.precision,step:s?.step,min:s?.min,max:s?.max},{parseInputValue:i=>{const r=Number(i);return isNaN(r)?void 0:r},formatInputValue:i=>i==null?"":`${i}`})}getDefaultSliderParams(e,t,s,i){let r=this.chartOptionsProxy.getValue(e)??0;i&&Array.isArray(r)&&(r=r[0]);const a=this.getDefaultSliderParamsWithoutValueParams(r,t,s);return a.onValueChange=o=>this.chartOptionsProxy.setValue(e,i?[o]:o),a}getDefaultSliderParamsWithoutValueParams(e,t,s){return{label:this.chartTranslationService.translate(t),minValue:0,maxValue:Math.max(e,s),textFieldWidth:45,value:`${e}`}}getDefaultCheckboxParams(e,t,s){const i=this.chartOptionsProxy.getValue(e),r={label:this.chartTranslationService.translate(t),value:i,readOnly:s?.readOnly,passive:s?.passive};return r.onValueChange=a=>{this.chartOptionsProxy.setValue(e,typeof a=="boolean"?a:void 0)},r}getDefaultSelectParams(e,t,s){return this.getDefaultSelectParamsWithoutValueParams(t,s,this.chartOptionsProxy.getValue(e),i=>{this.chartOptionsProxy.setValue(e,i)})}getDefaultSelectParamsWithoutValueParams(e,t,s,i){return{label:this.chartTranslationService.translate(e),labelAlignment:"top",options:t,pickerGap:6,value:s,onValueChange:i}}getDefaultFontPanelParams(e,t){const s=i=>`${e}.${i}`;return this.addEnableParams(s("enabled"),{name:this.chartTranslationService.translate(t),suppressEnabledCheckbox:!1,chartMenuParamsFactory:this,keyMapper:s})}addValueParams(e,t,s){const i=this.chartOptionsProxy.getValue(e);return t.value=s?.formatInputValue?s.formatInputValue(i):i,t.onValueChange=r=>{const a=s?.parseInputValue?s.parseInputValue(r):r;this.chartOptionsProxy.setValue(e,a)},t}addEnableParams(e,t){return t.enabled=this.chartOptionsProxy.getValue(e)??!1,t.onEnableChange=s=>this.chartOptionsProxy.setValue(e,s),t}getChartOptions(){return this.chartOptionsProxy}},ChartSpecificDataPanel=class extends import_core107.Component{constructor(e,t){super(),this.chartMenuContext=e,this.isOpen=t,this.chartSpecificGroup=import_core107.RefPlaceholder,this.hasContent=!1}wireBeans(e){this.chartTranslationService=e.chartTranslationService,this.chartService=e.chartService}postConstruct(){const t={title:this.getTitle(),enabled:!0,suppressEnabledCheckbox:!0,suppressOpenCloseIcons:!1,cssIdentifier:"charts-data",expanded:this.isOpen,items:[...this.createDirectionSelect(),this.createGroupTypeSelect()]};this.setTemplate(`
|
|
192
192
|
<div id="chartSpecificGroup">
|
|
193
193
|
<ag-group-component data-ref="chartSpecificGroup"></ag-group-component>
|
|
194
194
|
</div>`,[AgGroupComponentSelector],{chartSpecificGroup:t}),this.setDisplayed(this.hasContent)}refresh(){this.hasContent=!1,this.chartSpecificGroup.setTitle(this.getTitle()),this.updateDirectionSelect(),this.updateGroupTypeSelect(),this.setDisplayed(this.hasContent)}getTitle(){const e=this.chartMenuContext.chartController.getChartType();return this.chartTranslationService.translate(getFullChartNameTranslationKey(e))}createDirectionSelect(){if(!this.chartService.isEnterprise())return[];const{chartOptionsService:e,chartController:t}=this.chartMenuContext,s=e.getSeriesOptionsProxy(()=>getSeriesType(t.getChartType())),i=this.createManagedBean(new ChartMenuParamsFactory(s)),r=["horizontal","vertical"].map(n=>({value:n,text:this.chartTranslationService.translate(n)})),a=i.getDefaultSelectParams("direction","direction",r),o=a.onValueChange;return a.onValueChange=n=>{o(n),t.raiseChartModelUpdateEvent()},this.directionSelect=this.createManagedBean(new import_core107.AgSelect(a)),this.updateDirectionSelect(),[this.directionSelect]}updateDirectionSelect(){const e=canSwitchDirection(this.chartMenuContext.chartController.getChartType());this.updateDisplayed(this.directionSelect,e)}createGroupTypeSelect(){const{chartController:e,chartMenuParamsFactory:t}=this.chartMenuContext;return this.groupTypeSelect=this.createManagedBean(new import_core107.AgSelect(t.getDefaultSelectParamsWithoutValueParams("seriesGroupType",import_core107.ChartMappings.SERIES_GROUP_TYPES.map(s=>({value:s,text:this.chartTranslationService.translate(`${s}SeriesGroupType`)})),e.getSeriesGroupType(),s=>e.setSeriesGroupType(s)))),this.updateGroupTypeSelect(),this.groupTypeSelect}updateGroupTypeSelect(){const e=["radialColumn","radialBar","nightingale"].includes(this.chartMenuContext.chartController.getChartType());this.updateDisplayed(this.groupTypeSelect,e)}updateDisplayed(e,t){e?.setDisplayed(t),e&&(this.hasContent=this.hasContent||t)}},SeriesChartTypePanel=class extends import_core110.Component{constructor(e,t,s){super('<div id="seriesChartTypeGroup"></div>'),this.chartController=e,this.columns=t,this.isOpen=s,this.selectedColIds=[],this.chartTypeComps=new Map,this.secondaryAxisComps=new Map}wireBeans(e){this.chartTranslationService=e.chartTranslationService}postConstruct(){this.createSeriesChartTypeGroup(this.columns)}refresh(e){(0,import_core110._areEqual)(this.getValidColIds(e),this.selectedColIds)?this.refreshComps():this.recreate(e)}recreate(e){this.isOpen=this.seriesChartTypeGroupComp.isExpanded(),(0,import_core110._clearElement)(this.getGui()),this.destroyBean(this.seriesChartTypeGroupComp),this.columns=e,this.selectedColIds=[],this.clearComps(),this.postConstruct()}getValidColIds(e){const t=this.chartController.getSeriesChartTypes();return e.filter(s=>s.selected&&!!t.filter(i=>i.colId===s.colId)[0]).map(({colId:s})=>s)}createSeriesChartTypeGroup(e){this.seriesChartTypeGroupComp=this.createBean(new AgGroupComponent({title:this.chartTranslationService.translate("seriesChartType"),enabled:!0,suppressEnabledCheckbox:!0,suppressOpenCloseIcons:!1,cssIdentifier:"charts-data",expanded:this.isOpen}));const t=this.chartController.getSeriesChartTypes();e.forEach(s=>{if(!s.selected)return;const i=t.filter(c=>c.colId===s.colId)[0];if(!i)return;this.selectedColIds.push(s.colId);const r=this.seriesChartTypeGroupComp.createManagedBean(new AgGroupComponent({title:s.displayName,enabled:!0,suppressEnabledCheckbox:!0,suppressOpenCloseIcons:!0,cssIdentifier:"charts-format-sub-level"})),a=c=>["groupedColumn","stackedColumn","stackedArea"].includes(c),o=this.seriesChartTypeGroupComp.createManagedBean(new import_core110.AgCheckbox({label:this.chartTranslationService.translate("secondaryAxis"),labelWidth:"flex",disabled:a(i.chartType),value:!!i.secondaryAxis,onValueChange:c=>this.chartController.updateSeriesChartType(s.colId,void 0,c)}));r.addItem(o);const n=["line","area","stackedArea","groupedColumn","stackedColumn"].map(c=>({value:c,text:this.chartTranslationService.translate(getFullChartNameTranslationKey(c))})),l=r.createManagedBean(new import_core110.AgSelect({options:n,value:i.chartType,onValueChange:c=>this.chartController.updateSeriesChartType(s.colId,c)}));r.addItem(l),this.seriesChartTypeGroupComp.addItem(r),this.chartTypeComps.set(s.colId,l),this.secondaryAxisComps.set(s.colId,o)}),this.getGui().appendChild(this.seriesChartTypeGroupComp.getGui())}refreshComps(){const e=this.chartController.getSeriesChartTypes();this.selectedColIds.forEach(t=>{const s=e.find(a=>a.colId===t);if(!s)return;const i=this.chartTypeComps.get(t),r=this.secondaryAxisComps.get(t);i?.setValue(s.chartType),r?.setValue(!!s.secondaryAxis),r?.setDisabled(this.isSecondaryAxisDisabled(s.chartType))})}clearComps(){this.chartTypeComps.clear(),this.secondaryAxisComps.clear()}isSecondaryAxisDisabled(e){return["groupedColumn","stackedColumn","stackedArea"].includes(e)}destroy(){this.clearComps(),this.seriesChartTypeGroupComp=this.destroyBean(this.seriesChartTypeGroupComp),super.destroy()}},SeriesDataPanel=class extends DragDataPanel{constructor(e,t,s,i,r,a,o){super(e,i,r,'<div id="seriesGroup"></div>'),this.chartOptionsService=t,this.title=s,this.valueCols=a,this.isOpen=o}postConstruct(){if(this.groupComp=this.createBean(new AgGroupComponent({title:this.title,enabled:!0,suppressEnabledCheckbox:!0,suppressOpenCloseIcons:!1,cssIdentifier:"charts-data",expanded:this.isOpen})),this.chartController.isActiveXYChart()){const e=this.groupComp.createManagedBean(new import_core112.AgToggleButton({label:this.chartTranslationService.translate("paired"),labelAlignment:"left",labelWidth:"flex",inputWidth:"flex",value:this.chartOptionsService.getPairedMode(),onValueChange:t=>{this.chartOptionsService.setPairedMode(!!t),this.chartController.updateForGridChange({maintainColState:!0})}}));this.groupComp.addItem(e)}this.createGroup(this.valueCols,this.generateGetSeriesLabel(this.valueCols),"seriesAdd","seriesSelect"),this.getGui().appendChild(this.groupComp.getGui())}refresh(e){this.valuePillSelect?.setValueFormatter(this.generateGetSeriesLabel(e)),this.valuePillSelect?.setValues(e,e.filter(t=>t.selected)),this.refreshValueSelect(e)}generateGetSeriesLabel(e){if(!this.chartController.isActiveXYChart())return a=>a.displayName??"";const t=e.filter(a=>a.selected),s=this.chartController.getChartType()==="bubble",i=this.chartOptionsService.getPairedMode(),r=new Map;return r.set(0,"X"),r.set(1,"Y"),r.set(2,"size"),a=>{const o=a.displayName??"";if(!a.selected)return o;const n=t.indexOf(a);if(n===-1)return o;let l;return i?l=r.get(n%(s?3:2)):n===0?l="X":l=s&&n%2===0?"size":"Y",`${o} (${l})`}}destroy(){this.groupComp=this.destroyBean(this.groupComp),super.destroy()}},DefaultDataPanelDef={groups:[{type:"categories",isOpen:!0},{type:"series",isOpen:!0},{type:"seriesChartType",isOpen:!0},{type:"chartSpecific",isOpen:!0}]},ChartDataPanel=class extends import_core101.Component{constructor(e){super('<div class="ag-chart-data-wrapper ag-scrollable-container"></div>'),this.chartMenuContext=e,this.isSwitchCategorySeriesToggled=!1,this.restoreSwitchCategorySeriesToggleFocus=!1,this.panels=[],this.chartController=e.chartController}wireBeans(e){this.chartTranslationService=e.chartTranslationService,this.chartService=e.chartService}postConstruct(){this.createSwitchCategorySeriesToggle(),this.isSwitchCategorySeriesToggled=this.chartController.isCategorySeriesSwitched(),this.updatePanels();const e=this.updatePanels.bind(this);this.addManagedListeners(this.chartController,{chartModelUpdate:e,chartApiUpdate:e})}destroy(){this.clearPanelComponents(),super.destroy()}updatePanels(){const e=this.chartType,t=this.isSwitchCategorySeriesToggled,{dimensionCols:s,valueCols:i}=this.chartController.getColStateForMenu();this.chartType=this.chartController.getChartType(),this.isSwitchCategorySeriesToggled=this.chartController.isCategorySeriesSwitched();const r=this.isSwitchCategorySeriesToggled!==t;this.canRefresh(e,this.chartType)&&!r?(this.categoriesDataPanel?.refresh(s),this.seriesDataPanel?.refresh(i),this.seriesChartTypePanel?.refresh(i),this.chartSpecificPanel?.refresh()):this.recreatePanels(s,i);const a=supportsInvertedCategorySeries(this.chartType)&&this.chartService.isEnterprise()&&!this.chartController.isGrouping();(0,import_core101._setDisplayed)(this.switchCategorySeriesToggle.getGui(),a),r&&this.switchCategorySeriesToggle?.setValue(this.chartController.isCategorySeriesSwitched()),this.restoreSwitchCategorySeriesToggleFocus&&(this.restoreSwitchCategorySeriesToggleFocus=!1,a&&this.switchCategorySeriesToggle.getFocusableElement().focus())}canRefresh(e,t){if(e===void 0)return!1;if(e===t)return!0;const s=i=>["columnLineCombo","areaColumnCombo","customCombo"].includes(i);return!!(s(e)&&s(t))}recreatePanels(e,t){this.clearPanelComponents();const{chartType:s}=this;if(!s)return;const i=this.chartController.isCategorySeriesSwitched();this.getDataPanelDef().groups?.forEach(({type:r,isOpen:a})=>{r===(i?"series":"categories")?(this.categoriesDataPanel=this.createBean(new CategoriesDataPanel(this.chartController,this.getCategoryGroupTitle(i),this.getCategoryGroupMultipleSelect(s,i),e,a)),this.panels.push(this.categoriesDataPanel)):r===(i?"categories":"series")?(this.seriesDataPanel=this.createBean(new SeriesDataPanel(this.chartController,this.chartMenuContext.chartOptionsService,this.getSeriesGroupTitle(i),this.getSeriesGroupMultipleSelect(s,i),this.getSeriesGroupMaxSelection(s,i),t,a)),this.panels.push(this.seriesDataPanel)):r==="seriesChartType"?this.chartController.isComboChart()&&(this.seriesChartTypePanel=this.createBean(new SeriesChartTypePanel(this.chartController,t,a)),this.panels.push(this.seriesChartTypePanel)):r==="chartSpecific"?(this.chartSpecificPanel=this.createBean(new ChartSpecificDataPanel(this.chartMenuContext,a)),this.panels.push(this.chartSpecificPanel)):(0,import_core101._warnOnce)(`Invalid charts data panel group name supplied: '${r}'`)}),(i?this.categoriesDataPanel:this.seriesDataPanel)?.addItem(this.switchCategorySeriesToggle.getGui()),this.addPanelComponents()}addPanelComponents(){if(!this.panels.length)return;const t=(0,import_core101._getDocument)(this.gos).createDocumentFragment();for(const s of this.panels)s.addCssClass("ag-chart-data-section"),t.appendChild(s.getGui());this.getGui().appendChild(t)}clearPanelComponents(){const e=this.getGui();this.panels.forEach(t=>{e.removeChild(t.getGui()),this.destroyBean(t)}),this.panels=[]}getDataPanelDef(){return this.gos.get("chartToolPanelsDef")?.dataPanel??DefaultDataPanelDef}getCategoryGroupTitle(e){return e?this.chartTranslationService.translate("seriesLabels"):this.chartTranslationService.translate(this.chartController.isActiveXYChart()?"labels":"categories")}getCategoryGroupMultipleSelect(e,t){return t?!1:getMaxNumCategories(e)!==1}getSeriesGroupTitle(e){return e?this.chartTranslationService.translate("categoryValues"):this.chartTranslationService.translate(this.chartController.isActiveXYChart()?"xyValues":"series")}getSeriesGroupMultipleSelect(e,t){return this.getSeriesGroupMaxSelection(e,t)!==1}getSeriesGroupMaxSelection(e,t){if(!t)return getMaxNumSeries(e)}createSwitchCategorySeriesToggle(){this.switchCategorySeriesToggle=this.createManagedBean(new import_core101.AgToggleButton({label:this.chartTranslationService.translate("switchCategorySeries"),labelAlignment:"left",labelWidth:"flex",inputWidth:"flex",value:this.chartController.isCategorySeriesSwitched(),onValueChange:e=>{this.restoreSwitchCategorySeriesToggleFocus=!0,this.chartController.switchCategorySeries(e)}}))}},AgAngleSelect=class extends import_core117.AgAbstractLabel{constructor(e){super(e,`<div class="ag-angle-select">
|
|
@@ -307,7 +307,7 @@ var __defProp=Object.defineProperty,__getOwnPropDesc=Object.getOwnPropertyDescri
|
|
|
307
307
|
</ag-group-component>
|
|
308
308
|
</div>`,[AgGroupComponentSelector],{seriesGroup:r}),i(this.seriesGroup),this.chartMenuUtils=this.createManagedBean(new ChartMenuParamsFactory(t.getSeriesOptionsProxy(()=>this.seriesType))),this.addManagedListeners(s,{chartSeriesChartTypeChanged:this.refreshWidgets.bind(this)}),this.refreshWidgets()}refreshWidgets(){const{chartController:e}=this.options;this.destroyActivePanels(),e.getChartProxy().getChart().waitForUpdate().then(()=>{this.isAlive()&&(e.isComboChart()&&(this.updateSeriesType(),this.initSeriesSelect()),(this.seriesWidgetMappings[this.seriesType]??[]).forEach(i=>{const r=this.widgetFuncs[i]();let a;if(Array.isArray(r)){const o=this.createBean(r[0]);a=o,r[1](o)}else a=this.createBean(r);this.seriesGroup.addItem(a),this.activePanels.push(a)}))}).catch(s=>(0,import_core135._errorOnce)("chart rendering failed",s))}initSeriesSelect(){const e=this.createBean(new import_core135.AgSelect(this.chartMenuUtils.getDefaultSelectParamsWithoutValueParams("seriesType",this.getSeriesSelectOptions(),`${this.seriesType}`,t=>{this.seriesType=t,this.refreshWidgets()})));this.seriesGroup.addItem(e),this.activePanels.push(e)}initTooltips(){return new import_core135.AgToggleButton(this.chartMenuUtils.addValueParams("tooltip.enabled",{label:this.translate("tooltips"),labelAlignment:"left",labelWidth:"flex",inputWidth:"flex"}))}initLineColor(){return new AgColorPicker(this.chartMenuUtils.getDefaultColorPickerParams("stroke","strokeColor"))}initStrokeWidth(e){return new AgSlider(this.chartMenuUtils.getDefaultSliderParams("strokeWidth",e,10))}initLineDash(){return new AgSlider(this.chartMenuUtils.getDefaultSliderParams("lineDash","lineDash",30,!0))}initOpacity(e){const t=this.chartMenuUtils.getDefaultSliderParams(e,e,1);return t.step=.05,new AgSlider(t)}initLabels(){const e=isPieChartSeries(this.seriesType),t=e?"calloutLabel":"label",s=e?"calloutLabels":"labels",i=this.chartMenuUtils.getDefaultFontPanelParams(t,s);return[new FontPanel(i),o=>{if(e){const n=o.createManagedBean(new CalloutPanel(this.chartMenuUtils));o.addItem(n),this.activePanels.push(n)}if(this.seriesType==="range-bar"){const n=[{value:"inside",text:this.translate("inside")},{value:"outside",text:this.translate("outside")}],l=o.createManagedBean(new import_core135.AgSelect(this.chartMenuUtils.getDefaultSelectParams("label.placement","labelPlacement",n)));o.addItem(l),this.activePanels.push(l);const c=o.createManagedBean(new AgSlider(this.chartMenuUtils.getDefaultSliderParams("label.padding","padding",200)));o.addItem(c),this.activePanels.push(c)}}]}initSectorLabels(){const e=this.chartMenuUtils.getDefaultFontPanelParams("sectorLabel","sectorLabels");return[new FontPanel(e),i=>{const r=this.chartMenuUtils.getDefaultSliderParams("sectorLabel.positionRatio","positionRatio",1);r.step=.05;const a=i.createManagedBean(new AgSlider(r));i.addItem(a)}]}initBins(){const e=this.chartMenuUtils.getDefaultSliderParams("binCount","histogramBinCount",20),t=this.chartMenuUtils.getChartOptions(),s=(t.getValue("bins")??t.getValue("calculatedBins",!0)).length;return e.value=`${s}`,e.maxValue=Math.max(s,20),new AgSlider(e)}initShape(){return new import_core135.AgSelect(this.chartMenuUtils.getDefaultSelectParams("shape","shape",getShapeSelectOptions(this.chartTranslationService)))}initSize(e,t){return new AgSlider(this.chartMenuUtils.getDefaultSliderParams(e,t,60))}getSeriesSelectOptions(){const e=this.getActiveSeriesTypes();return["area","bar","line"].filter(t=>e.includes(t)).map(t=>({value:t,text:this.translate(t)}))}updateSeriesType(){const e=this.getActiveSeriesTypes();!e.includes(this.seriesType)&&e.length>0&&(this.seriesType=e[0])}getActiveSeriesTypes(){return this.options.chartController.getActiveSeriesChartTypes().map(e=>getSeriesType(e.chartType))}translate(e){return this.chartTranslationService.translate(e)}destroyActivePanels(){this.activePanels.forEach(e=>{(0,import_core135._removeFromParent)(e.getGui()),this.destroyBean(e)})}destroy(){this.destroyActivePanels(),super.destroy()}},TitlePanel=class extends import_core155.Component{constructor(e,t,s){super("<div></div>"),this.chartMenuUtils=e,this.name=t,this.key=s,this.chartOptions=e.getChartOptions()}wireBeans(e){this.chartTranslationService=e.chartTranslationService}postConstruct(){this.initFontPanel()}hasTitle(){const e=this.chartOptions.getValue(this.key);return e&&e.enabled&&e.text&&e.text.length>0}initFontPanel(){const e=this.hasTitle(),t={name:this.chartTranslationService.translate(this.name),enabled:e,suppressEnabledCheckbox:!1,chartMenuParamsFactory:this.chartMenuUtils,keyMapper:s=>`${this.key}.${s}`,onEnableChange:s=>this.onEnableChange(s)};this.fontPanel=this.createManagedBean(new FontPanel(t)),this.fontPanel.addItem(this.createBean(new import_core155.AgInputTextField(this.getTextInputParams())),!0),this.fontPanel.addItem(this.createBean(new AgSlider(this.getSpacingSliderParams()))),this.getGui().appendChild(this.fontPanel.getGui())}getTextInputParams(){return this.chartMenuUtils.addValueParams(`${this.key}.text`,{label:this.chartTranslationService.translate("title"),labelAlignment:"top"})}getSpacingSliderParams(){return this.chartMenuUtils.getDefaultSliderParams(`${this.key}.spacing`,"spacing",100)}onEnableChange(e){this.chartOptions.setValue(`${this.key}.enabled`,e)}},ChartTitlePanel=class extends TitlePanel{wireBeans(e){super.wireBeans(e),this.chartMenuService=e.chartMenuService}postConstruct(){this.titlePlaceholder=this.chartTranslationService.translate("titlePlaceholder"),super.postConstruct(),this.addManagedEventListeners({chartTitleEdit:()=>{this.fontPanel.setEnabled(this.hasTitle())}})}getTextInputParams(){const e=super.getTextInputParams();return this.shouldOverrideTextWithPlaceholder(e.value)&&(e.value=this.titlePlaceholder),e}getSpacingSliderParams(){const e=super.getSpacingSliderParams();return e.value="10",e}onEnableChange(e){if(this.chartMenuService.doesChartToolbarExist()){const s=this.chartOptions.getValue("padding.top");this.chartOptions.setValue("padding.top",e?s-20:s+20)}this.chartOptions.setValue(`${this.key}.enabled`,e);const t=this.chartOptions.getValue(`${this.key}.text`);e&&this.shouldOverrideTextWithPlaceholder(t)&&this.chartOptions.setValue(`${this.key}.text`,this.titlePlaceholder)}shouldOverrideTextWithPlaceholder(e){return e==="Title"||e?.trim().length===0}},TitlesPanel=class extends import_core153.Component{constructor(e){super(),this.options=e,this.titleGroup=import_core153.RefPlaceholder}wireBeans(e){this.chartTranslationService=e.chartTranslationService}postConstruct(){const{chartMenuParamsFactory:e,chartAxisMenuParamsFactory:t,chartOptionsService:s,seriesType:i,isExpandedOnInit:r=!1,registerGroupComponent:a}=this.options,o=[];if(isCartesian(i)){const l=c=>this.createManagedBean(new ChartMenuParamsFactory(s.getCartesianAxisThemeOverridesProxy(c)));o.push(this.createManagedBean(new TitlePanel(l("xAxis"),"horizontalAxisTitle","title"))),o.push(this.createManagedBean(new TitlePanel(l("yAxis"),"verticalAxisTitle","title")))}else isPolar(i)&&o.push(this.createManagedBean(new TitlePanel(t,"polarAxisTitle","title")));const n={cssIdentifier:"charts-format-top-level",direction:"vertical",title:this.chartTranslationService.translate("chartTitles"),expanded:r,suppressEnabledCheckbox:!0,items:[this.createManagedBean(new ChartTitlePanel(e,"chartTitle","title")),this.createManagedBean(new TitlePanel(e,"chartSubtitle","subtitle")),...o]};this.setTemplate(`<div>
|
|
309
309
|
<ag-group-component data-ref="titleGroup"></ag-group-component>
|
|
310
|
-
</div>`,[AgGroupComponentSelector],{titleGroup:n}),a(this.titleGroup)}},DefaultFormatPanelDef={groups:[{type:"chart"},{type:"titles"},{type:"legend"},{type:"series"},{type:"axis"}]},FormatPanel=class extends import_core114.Component{constructor(e){super('<div class="ag-chart-format-wrapper"></div>'),this.chartMenuContext=e}postConstruct(){this.groupExpansionFeature=this.createManagedBean(new GroupExpansionFeature(this.getGui())),this.chartPanelFeature=this.createManagedBean(new ChartPanelFeature(this.chartMenuContext.chartController,this.getGui(),"ag-chart-format-section",(e,t)=>this.createPanels(t))),this.chartPanelFeature.refreshPanels()}createPanels(e){let t=!1;this.getFormatPanelDef().groups?.forEach(({type:s,isOpen:i=!1})=>{if(!this.isGroupPanelShownInSeries(s,e))return;i&&(t&&(0,import_core114._warnOnce)(`As of v32, only one charts customize panel group can be expanded at a time. '${s}' will not be expanded.`),t=!0);const r=o=>this.groupExpansionFeature.addGroupComponent(o),a={...this.chartMenuContext,isExpandedOnInit:i,seriesType:e,registerGroupComponent:r};switch(s){case"chart":this.chartPanelFeature.addComponent(new ChartPanel(a));break;case"titles":this.chartPanelFeature.addComponent(new TitlesPanel(a));break;case"legend":this.chartPanelFeature.addComponent(new LegendPanel(a));break;case"axis":isPolar(e)?this.chartPanelFeature.addComponent(new PolarAxisPanel(a)):isCartesian(e)&&(this.chartPanelFeature.addComponent(new CartesianAxisPanel("xAxis",a)),this.chartPanelFeature.addComponent(new CartesianAxisPanel("yAxis",a)));break;case"horizontalAxis":this.chartPanelFeature.addComponent(new CartesianAxisPanel("xAxis",a));break;case"verticalAxis":this.chartPanelFeature.addComponent(new CartesianAxisPanel("yAxis",a));break;case"series":this.chartPanelFeature.addComponent(new SeriesPanel(a));break;case"navigator":(0,import_core114._warnOnce)("'navigator' is now displayed in the charts advanced settings instead of the customize panel, and this setting will be ignored.");break;default:(0,import_core114._warnOnce)(`Invalid charts customize panel group name supplied: '${s}'`)}})}getFormatPanelDef(){const e=this.gos.get("chartToolPanelsDef")?.formatPanel;return e||DefaultFormatPanelDef}isGroupPanelShownInSeries(e,t){return["chart","titles","legend","series"].includes(e)||isCartesian(t)&&["axis","horizontalAxis","verticalAxis"].includes(e)||isPolar(t)&&e==="axis"}};function createColumnRects(e){const{stacked:t,size:s,padding:i,xScalePadding:r,xScaleDomain:a,yScaleDomain:o}=e,n=new import_ag_charts_community11._Scene.BandScale;n.domain=a,n.range=[i,s-i],n.paddingInner=r,n.paddingOuter=r;const l=new import_ag_charts_community11._Scene.LinearScale;l.domain=o,l.range=[s-i,i];const c=(h,d,u)=>h.map((p,g)=>{const m=u.convert(p),C=new import_ag_charts_community11._Scene.Rect;return C.x=d.convert(g),C.y=m,C.width=d.bandwidth,C.height=u.convert(0)-m,C.strokeWidth=0,C.crisp=!0,C});return t?e.data.map(h=>c(h,n,l)):c(e.data,n,l)}function createLinePaths(e,t,s,i){const r=new import_ag_charts_community11._Scene.LinearScale;r.domain=[0,4],r.range=[i,s-i];const a=new import_ag_charts_community11._Scene.LinearScale;a.domain=[0,10],a.range=[s-i,i];const o=t.map(l=>{const c=new import_ag_charts_community11._Scene.Path;return c.strokeWidth=3,c.lineCap="round",c.fill=void 0,l.forEach((h,d)=>{c.path[d>0?"lineTo":"moveTo"](r.convert(d),a.convert(h))}),c}),n=new import_ag_charts_community11._Scene.Group;return n.setClipRectInGroupCoordinateSpace(new import_ag_charts_community11._Scene.BBox(i,i,s-i*2,s-i*2)),n.append(o),e.append(n),o}function createPolarPaths(e,t,s,i,r,a=0){const o=new import_ag_charts_community11._Scene.LinearScale;o.domain=[0,7],o.range=[-Math.PI,Math.PI].map(u=>u+Math.PI/2);const n=new import_ag_charts_community11._Scene.LinearScale;n.domain=[0,10],n.range=[i,r];const l=[],c=s/2,h=t.map(u=>{const p=new import_ag_charts_community11._Scene.Path;return p.strokeWidth=1,p.strokeOpacity=.5,p.lineCap="round",p.fill=void 0,p.fillOpacity=.8,u.forEach((g,m)=>{const C=o.convert(m),f=i+r-n.convert(g),v=f*Math.cos(C)+c,S=f*Math.sin(C)+c;if(p.path[m>0?"lineTo":"moveTo"](v,S),a>0){const y=new import_ag_charts_community11._Scene.Circle;y.x=v,y.y=S,y.size=a,l.push(y)}}),p.path.closePath(),p}),d=new import_ag_charts_community11._Scene.Group;return d.append([...h,...l]),e.append(d),{paths:h,markers:l}}function accumulateData(e){let[t,s]=[1/0,-1/0];return{processedData:e.reduce((r,a,o)=>{const n=o>0?r[o-1]:void 0;r[o]??(r[o]=[]);const l=r[o];return a.forEach((c,h)=>{n&&(c+=n[h]),l[h]=c,l[h]<t&&(t=l[h]),l[h]>s&&(s=l[h])}),r},[]),min:t,max:s}}var CANVAS_CLASS="ag-chart-mini-thumbnail-canvas",ERROR_MESSAGE="AG Grid - chart update failed",MiniChart=class extends import_core159.Component{constructor(e,t){super(),this.tooltipName=t,this.size=58,this.padding=5,this.root=new import_ag_charts_community13._Scene.Group;const s=new import_ag_charts_community13._Scene.Scene({width:this.size,height:this.size});s.canvas.element.classList.add(CANVAS_CLASS),s.setRoot(this.root),s.setContainer(e),this.scene=s}wireBeans(e){this.chartTranslationService=e.chartTranslationService}postConstruct(){this.scene.canvas.element.title=this.chartTranslationService.translate(this.tooltipName),this.scene.render().catch(e=>{(0,import_core159._errorOnce)(`${ERROR_MESSAGE}`,e)})}},MiniChartWithAxes=class extends MiniChart{constructor(e,t){super(e,t),this.stroke="gray",this.axisOvershoot=3}postConstruct(){const e=this.size,t=this.padding,s=new import_ag_charts_community12._Scene.Line;s.x1=t,s.y1=t,s.x2=t,s.y2=e-t+this.axisOvershoot,s.stroke=this.stroke;const i=new import_ag_charts_community12._Scene.Line;i.x1=t-this.axisOvershoot+1,i.y1=e-t,i.x2=e-t+1,i.y2=e-t,i.stroke=this.stroke;const r=this.root;r.append(s),r.append(i),super.postConstruct()}},MiniColumn=class extends MiniChartWithAxes{constructor(e,t,s){super(e,"groupedColumnTooltip"),this.columnData=[2,3,4];const{root:i,columnData:r,size:a,padding:o}=this;this.columns=createColumnRects({stacked:!1,root:i,data:r,size:a,padding:o,xScaleDomain:[0,1,2],yScaleDomain:[0,4],xScalePadding:.3}),i.append(this.columns),this.updateColors(t,s)}updateColors(e,t){this.columns.forEach((s,i)=>{s.fill=e[i],s.stroke=t[i]})}};MiniColumn.chartType="groupedColumn";var _MiniStackedColumn=class J extends MiniChartWithAxes{constructor(t,s,i,r,a,o=J.data,n=[0,16],l="stackedColumnTooltip"){super(t,l);const{root:c,size:h,padding:d}=this;this.stackedColumns=createColumnRects({stacked:!0,root:c,data:o,size:h,padding:d,xScaleDomain:[0,1,2],yScaleDomain:n,xScalePadding:.3}),c.append([].concat.apply([],this.stackedColumns)),this.updateColors(s,i)}updateColors(t,s){this.stackedColumns.forEach((i,r)=>i.forEach(a=>{a.fill=t[r],a.stroke=s[r]}))}};_MiniStackedColumn.chartType="stackedColumn",_MiniStackedColumn.data=[[8,12,16],[6,9,12],[2,3,4]];var MiniStackedColumn=_MiniStackedColumn,_MiniNormalizedColumn=class Q extends MiniStackedColumn{constructor(t,s,i,r,a){super(t,s,i,r,a,Q.data,[0,10],"normalizedColumnTooltip")}};_MiniNormalizedColumn.chartType="normalizedColumn",_MiniNormalizedColumn.data=[[10,10,10],[6,7,8],[2,4,6]];var MiniNormalizedColumn=_MiniNormalizedColumn,MiniBar=class extends MiniChartWithAxes{constructor(e,t,s){super(e,"groupedBarTooltip");const i=this.padding,r=this.size,a=[2,3,4],o=new import_ag_charts_community14._Scene.BandScale;o.domain=[0,1,2],o.range=[i,r-i],o.paddingInner=.3,o.paddingOuter=.3;const n=new import_ag_charts_community14._Scene.LinearScale;n.domain=[0,4],n.range=[r-i,i];const l=n.convert(0),c=o.bandwidth;this.bars=a.map((h,d)=>{const u=new import_ag_charts_community14._Scene.Rect;return u.x=i,u.y=o.convert(d),u.width=l-n.convert(h),u.height=c,u.strokeWidth=0,u.crisp=!0,u}),this.updateColors(t,s),this.root.append(this.bars)}updateColors(e,t){this.bars.forEach((s,i)=>{s.fill=e[i],s.stroke=t[i]})}};MiniBar.chartType="groupedBar";var _MiniStackedBar=class ee extends MiniChartWithAxes{constructor(t,s,i,r,a,o=ee.data,n=[0,16],l="stackedBarTooltip"){super(t,l);const c=this.size,h=this.padding,d=new import_ag_charts_community15._Scene.BandScale;d.domain=[0,1,2],d.range=[h,c-h],d.paddingInner=.3,d.paddingOuter=.3;const u=new import_ag_charts_community15._Scene.LinearScale;u.domain=n,u.range=[c-h,h];const p=u.convert(0),g=d.bandwidth;this.bars=o.map(m=>m.map((C,f)=>{const v=new import_ag_charts_community15._Scene.Rect;return v.x=h,v.y=d.convert(f),v.width=p-u.convert(C),v.height=g,v.strokeWidth=0,v.crisp=!0,v})),this.updateColors(s,i),this.root.append([].concat.apply([],this.bars))}updateColors(t,s){this.bars.forEach((i,r)=>i.forEach(a=>{a.fill=t[r],a.stroke=s[r]}))}};_MiniStackedBar.chartType="stackedBar",_MiniStackedBar.data=[[8,12,16],[6,9,12],[2,3,4]];var MiniStackedBar=_MiniStackedBar,_MiniNormalizedBar=class te extends MiniStackedBar{constructor(t,s,i,r,a){super(t,s,i,r,a,te.data,[0,10],"normalizedBarTooltip")}};_MiniNormalizedBar.chartType="normalizedBar",_MiniNormalizedBar.data=[[10,10,10],[6,7,8],[2,4,6]];var MiniNormalizedBar=_MiniNormalizedBar,toRadians=import_ag_charts_community16._Scene.toRadians,MiniDonut=class extends MiniChart{constructor(e,t,s,i,r,a=.6,o="donutTooltip"){super(e,o);const n=(this.size-this.padding*2)/2,l=n+this.padding,c=[[toRadians(-90),toRadians(30)],[toRadians(30),toRadians(120)],[toRadians(120),toRadians(180)],[toRadians(180),toRadians(210)],[toRadians(210),toRadians(240)],[toRadians(240),toRadians(270)]];this.sectors=c.map(([h,d])=>{const u=new import_ag_charts_community16._Scene.Sector;return u.centerX=l,u.centerY=l,u.innerRadius=n*a,u.outerRadius=n,u.startAngle=h,u.endAngle=d,u.stroke=void 0,u.strokeWidth=0,u.inset=.75,u}),this.updateColors(t,s),this.root.append(this.sectors)}updateColors(e,t){this.sectors.forEach((s,i)=>{s.fill=e[i%e.length],s.stroke=t[i%t.length]})}};MiniDonut.chartType="donut";var MiniPie=class extends MiniDonut{constructor(e,t,s,i,r){super(e,t,s,i,r,0,"pieTooltip")}};MiniPie.chartType="pie";var MiniLine=class extends MiniChartWithAxes{constructor(e,t,s){super(e,"lineTooltip"),this.data=[[9,7,8,5,6],[5,6,3,4,1],[1,3,4,8,7]],this.lines=createLinePaths(this.root,this.data,this.size,this.padding),this.updateColors(t,s)}updateColors(e,t){this.lines.forEach((s,i)=>{s.stroke=e[i]})}};MiniLine.chartType="line";var MiniScatter=class extends MiniChartWithAxes{constructor(e,t,s){super(e,"scatterTooltip");const i=this.size,r=this.padding,a=[[[.3,3],[1.1,.9],[2,.4],[3.4,2.4]],[[0,.3],[1,2],[2.4,1.4],[3,0]]],o=new import_ag_charts_community17._Scene.LinearScale;o.domain=[-.5,4],o.range=[r*2,i-r];const n=new import_ag_charts_community17._Scene.LinearScale;n.domain=[-.5,3.5],n.range=[i-r,r];const l=[];a.forEach(h=>{h.forEach(([d,u])=>{const p=new import_ag_charts_community17._Scene.Arc;p.strokeWidth=0,p.centerX=o.convert(d),p.centerY=n.convert(u),p.radius=2.5,l.push(p)})}),this.points=l,this.updateColors(t,s);const c=new import_ag_charts_community17._Scene.Group;c.setClipRectInGroupCoordinateSpace(new import_ag_charts_community17._Scene.BBox(r,r,i-r*2,i-r*2)),c.append(this.points),this.root.append(c)}updateColors(e,t){this.points.forEach((s,i)=>{s.stroke=t[i%t.length],s.fill=e[i%e.length]})}};MiniScatter.chartType="scatter";var MiniBubble=class extends MiniChartWithAxes{constructor(e,t,s){super(e,"bubbleTooltip");const i=this.size,r=this.padding,a=[[[.1,.3,5],[.5,.4,7],[.2,.8,7]],[[.8,.7,5],[.7,.3,9]]],o=new import_ag_charts_community18._Scene.LinearScale;o.domain=[0,1],o.range=[r*2,i-r];const n=new import_ag_charts_community18._Scene.LinearScale;n.domain=[0,1],n.range=[i-r,r];const l=[];a.forEach(h=>{h.forEach(([d,u,p])=>{const g=new import_ag_charts_community18._Scene.Arc;g.strokeWidth=0,g.centerX=o.convert(d),g.centerY=n.convert(u),g.radius=p,g.fillOpacity=.7,l.push(g)})}),this.points=l,this.updateColors(t,s);const c=new import_ag_charts_community18._Scene.Group;c.setClipRectInGroupCoordinateSpace(new import_ag_charts_community18._Scene.BBox(r,r,i-r*2,i-r*2)),c.append(this.points),this.root.append(c)}updateColors(e,t){this.points.forEach((s,i)=>{s.stroke=t[i%t.length],s.fill=e[i%e.length]})}};MiniBubble.chartType="bubble";var _MiniArea=class se extends MiniChartWithAxes{constructor(t,s,i,r,a,o=se.data){super(t,"groupedAreaTooltip");const n=this.size,l=this.padding,c=new import_ag_charts_community19._Scene.BandScale;c.domain=[0,1,2],c.paddingInner=1,c.paddingOuter=0,c.range=[l+.5,n-l-.5];const h=new import_ag_charts_community19._Scene.LinearScale;h.domain=[0,6],h.range=[n-l+.5,l];const u=o.length*2-1,p=[],g=h.convert(0);o.forEach((m,C)=>{const f=c.convert(C);m.forEach((v,S)=>{const y=h.convert(v),w=p[S]||(p[S]=[]);w[C]={x:f,y},w[u-C]={x:f,y:g}})}),this.areas=p.reverse().map(m=>{const C=new import_ag_charts_community19._Scene.Path;C.strokeWidth=1,C.strokeOpacity=.75,C.fillOpacity=.7;const f=C.path;return f.clear(),m.forEach((v,S)=>f[S>0?"lineTo":"moveTo"](v.x,v.y)),f.closePath(),C}),this.updateColors(s,i),this.root.append(this.areas)}updateColors(t,s){this.areas.forEach((i,r)=>{i.fill=t[r],i.stroke=s[r]})}};_MiniArea.chartType="area",_MiniArea.data=[[1,3,5],[2,6,4],[5,3,1]];var MiniArea=_MiniArea,_MiniStackedArea=class ie extends MiniChartWithAxes{constructor(t,s,i,r,a,o=ie.data,n="stackedAreaTooltip"){super(t,n);const l=this.size,c=this.padding,h=new import_ag_charts_community20._Scene.BandScale;h.domain=[0,1,2],h.paddingInner=1,h.paddingOuter=0,h.range=[c+.5,l-c-.5];const d=new import_ag_charts_community20._Scene.LinearScale;d.domain=[0,16],d.range=[l-c+.5,c+.5];const p=o.length*2-1,g=[];o.forEach((m,C)=>{const f=h.convert(C);let v=0;m.forEach((S,y)=>{const w=d.convert(v+S),x=g[y]||(g[y]=[]);x[C]={x:f,y:w},x[p-C]={x:f,y:d.convert(v)},v+=S})}),this.areas=g.map(m=>{const C=new import_ag_charts_community20._Scene.Path;C.strokeWidth=0;const f=C.path;return f.clear(),m.forEach((v,S)=>f[S>0?"lineTo":"moveTo"](v.x,v.y)),f.closePath(),C}),this.updateColors(s,i),this.root.append(this.areas)}updateColors(t,s){this.areas.forEach((i,r)=>{i.fill=t[r],i.stroke=s[r]})}};_MiniStackedArea.chartType="stackedArea",_MiniStackedArea.data=[[2,3,2],[3,6,5],[6,2,2]];var MiniStackedArea=_MiniStackedArea,_MiniNormalizedArea=class re extends MiniStackedArea{constructor(t,s,i,r,a,o=re.data){super(t,s,i,r,a,o,"normalizedAreaTooltip")}};_MiniNormalizedArea.chartType="normalizedArea",_MiniNormalizedArea.data=MiniStackedArea.data.map(e=>{const t=e.reduce((s,i)=>s+i,0);return e.map(s=>s/t*16)});var MiniNormalizedArea=_MiniNormalizedArea,MiniHistogram=class extends MiniChartWithAxes{constructor(e,t,s){super(e,"histogramTooltip");const i=this.padding,r=this.size,a=[2,5,11,13,10,6,1],o=new import_ag_charts_community21._Scene.LinearScale;o.domain=[0,a.length],o.range=[i,r-i];const n=new import_ag_charts_community21._Scene.LinearScale;n.domain=[0,a.reduce((c,h)=>Math.max(c,h),0)],n.range=[r-i,i];const l=n.convert(0);this.bars=a.map((c,h)=>{const d=n.convert(c),u=o.convert(h),p=o.convert(h+1),g=new import_ag_charts_community21._Scene.Rect;return g.x=u,g.y=d,g.width=p-u,g.height=l-d,g.strokeWidth=1,g.strokeOpacity=.75,g.crisp=!0,g}),this.updateColors(t,s),this.root.append(this.bars)}updateColors([e],[t]){this.bars.forEach(s=>{s.fill=e,s.stroke=t})}};MiniHistogram.chartType="histogram";var MiniChartWithPolarAxes=class extends MiniChart{constructor(e,t){super(e,t),this.stroke="gray",this.showRadiusAxisLine=!0,this.showAngleAxisLines=!0}postConstruct(){const e=this.size,t=this.padding,s=t*2,i=(e-s)/2,r=this.showAngleAxisLines?[i,i*.8,i*.6,i*.4]:[],a=new import_ag_charts_community23._Scene.Line;a.x1=e/2,a.y1=t,a.x2=e/2,a.y2=e-t-i-r[r.length-1],a.stroke=this.stroke,a.strokeOpacity=.5,a.fill=void 0,a.visible=this.showRadiusAxisLine;const o=t+i;this.gridLines=r.map((l,c)=>{const h=new import_ag_charts_community23._Scene.Path;return h.path.arc(o,o,l,0,2*Math.PI),h.strokeWidth=1,h.stroke=this.stroke,h.strokeOpacity=c===0?.5:.2,h.fill=void 0,h});const n=this.root;n.append(a),this.gridLines.length>0&&n.append(this.gridLines),super.postConstruct()}},MiniRadialColumn=class extends MiniChartWithPolarAxes{constructor(e,t,s){super(e,"radialColumnTooltip"),this.data=[[6,8,10,2,6,5],[4,4,3,6,4,4],[5,4,2,9,8,9]],this.showRadiusAxisLine=!1;const{padding:i,size:r,data:a}=this,o=(r-i*2)/2,l=o*.4,c=new import_ag_charts_community22._Scene.BandScale;c.domain=a[0].map((m,C)=>C),c.range=[0,2*Math.PI],c.paddingInner=0,c.paddingOuter=0;const h=c.bandwidth*.7,{processedData:d,max:u}=accumulateData(a),p=new import_ag_charts_community22._Scene.LinearScale;p.domain=[0,u],p.range=[l,o];const g=this.size/2;this.series=d.map((m,C)=>{const v=C===0?void 0:d[C-1],S=new import_ag_charts_community22._Scene.TranslatableGroup({zIndex:1e6}),y=m.map((w,x)=>{const b=v?.[x],T=p.convert(w),M=p.convert(b??0),P=c.convert(x),R=P+h,D=import_ag_charts_community22._Scene.getRadialColumnWidth(P,R,o,.5,.5),F=new import_ag_charts_community22._Scene.RadialColumnShape;return F.columnWidth=D,F.innerRadius=M,F.outerRadius=T,F.startAngle=P,F.endAngle=R,F.isBeveled=!0,F.axisInnerRadius=l,F.axisOuterRadius=o,F.stroke=void 0,F.strokeWidth=0,F});return S.append(y),S.translationX=g,S.translationY=g,S}),this.root.append(this.series),this.updateColors(t,s)}updateColors(e,t){this.series.forEach((s,i)=>{s.children?.forEach(r=>{r.fill=e[i%e.length],r.stroke=t[i%t.length]})})}};MiniRadialColumn.chartType="radialColumn";var MiniRadialBar=class extends MiniChartWithPolarAxes{constructor(e,t,s){super(e,"radialBarTooltip"),this.data=[[6,8,10],[4,4,3],[5,4,2]],this.showRadiusAxisLine=!1;const i=(this.size-this.padding)/2,a=i*.4,o=new import_ag_charts_community24._Scene.BandScale;o.domain=this.data[0].map((g,m)=>m),o.range=[a,i],o.paddingInner=.5,o.paddingOuter=0;const n=o.bandwidth,{processedData:l,max:c}=accumulateData(this.data),h=new import_ag_charts_community24._Scene.LinearScale;h.domain=[0,Math.ceil(c*1.5)];const d=3/2*Math.PI,u=d+2*Math.PI;h.range=[d,u];const p=this.size/2;this.series=l.map((g,m)=>{const C=m<0?void 0:l[m-1],f=new import_ag_charts_community24._Scene.Group({zIndex:1e6}),v=g.map((S,y)=>{const w=C?.[y]??0,x=o.convert(y),b=x-n,T=h.convert(w),M=h.convert(S),P=new import_ag_charts_community24._Scene.Sector;return P.centerX=p,P.centerY=p,P.innerRadius=b,P.outerRadius=x,P.startAngle=T,P.endAngle=M,P.stroke=void 0,P.strokeWidth=0,P});return f.append(v),f}),this.root.append(this.series),this.updateColors(t,s)}updateColors(e,t){this.series.forEach((s,i)=>{s.children?.forEach(r=>{r.fill=e[i%e.length],r.stroke=t[i%t.length]})})}};MiniRadialBar.chartType="radialBar";var MiniRadarLine=class extends MiniChartWithPolarAxes{constructor(e,t,s){super(e,"radarLineTooltip"),this.markerSize=4,this.data=[[8,7,8,7,8,8,7,8],[6,8,5,10,6,7,4,6],[0,3,3,5,4,4,2,0]],this.showRadiusAxisLine=!1;const i=(this.size-this.padding*2)/2,r=0,{paths:a,markers:o}=createPolarPaths(this.root,this.data,this.size,i,r,this.markerSize);this.lines=a,this.markers=o,this.updateColors(t,s)}updateColors(e,t){this.lines.forEach((s,i)=>{const r=this.data[i].length;s.stroke=e[i];const a=i*r,o=a+r;this.markers.slice(a,o).forEach(l=>{l.stroke=t[i],l.fill=e[i]})})}};MiniRadarLine.chartType="radarLine";var MiniRadarArea=class extends MiniChartWithPolarAxes{constructor(e,t,s){super(e,"radarAreaTooltip"),this.data=[[8,10,5,7,4,1,5,8],[1,1,2,7,7,8,10,1],[4,5,9,9,4,2,3,4]],this.showRadiusAxisLine=!1;const i=(this.size-this.padding*2)/2,r=i-this.size*.3;this.areas=createPolarPaths(this.root,this.data,this.size,i,r).paths,this.updateColors(t,s)}updateColors(e,t){this.areas.forEach((s,i)=>{s.fill=e[i],s.stroke=t[i]})}};MiniRadarArea.chartType="radarArea";var MiniNightingale=class extends MiniChartWithPolarAxes{constructor(e,t,s){super(e,"nightingaleTooltip"),this.data=[[6,10,9,8,7,8],[4,6,5,4,5,5],[3,5,4,3,4,7]],this.showRadiusAxisLine=!1;const i=(this.size-this.padding*2)/2,r=new import_ag_charts_community25._Scene.BandScale;r.domain=this.data[0].map((h,d)=>d),r.range=[-Math.PI,Math.PI],r.paddingInner=0,r.paddingOuter=0;const a=r.bandwidth*.7,{processedData:o,max:n}=accumulateData(this.data),l=new import_ag_charts_community25._Scene.LinearScale;l.domain=[0,n],l.range=[0,i];const c=this.size/2;this.series=o.map((h,d)=>{const u=d<0?void 0:o[d-1],p=new import_ag_charts_community25._Scene.Group({zIndex:1e6}),g=h.map((m,C)=>{const f=u?.[C],v=l.convert(m),S=l.convert(f??0),y=r.convert(C),w=y+a,x=new import_ag_charts_community25._Scene.Sector;return x.centerX=c,x.centerY=c,x.innerRadius=S,x.outerRadius=v,x.startAngle=y,x.endAngle=w,x.stroke=void 0,x.strokeWidth=0,x});return p.append(g),p}),this.root.append(this.series),this.updateColors(t,s)}updateColors(e,t){this.series.forEach((s,i)=>{s.children?.forEach(r=>{r.fill=e[i%e.length],r.stroke=t[i%t.length]})})}};MiniNightingale.chartType="nightingale";var MiniRangeBar=class extends MiniChartWithAxes{constructor(e,t,s){super(e,"rangeBarTooltip");const i=[3,3.5,3];this.bars=this.createRangeBar(this.root,i,this.size,this.padding,"vertical"),this.updateColors(t,s)}updateColors(e,t){this.bars.forEach((s,i)=>{s.fill=e[i],s.stroke=t[i]})}createRangeBar(e,t,s,i,r){const a=r==="horizontal",o=2*i,n=new import_ag_charts_community26._Scene.BandScale;n.domain=t.map((p,g)=>g),n.range=[i,s-i],n.paddingInner=.3,n.paddingOuter=.3;const l=.7,c=1.3,h=new import_ag_charts_community26._Scene.LinearScale;h.domain=[t.reduce((p,g)=>Math.min(p,g),1/0)*l,t.reduce((p,g)=>Math.max(p,g),0)*c],h.range=[o,s-o];const d=n.bandwidth,u=t.map((p,g)=>{const[m,C]=[p*l,p*c],f=n.convert(g),v=h.convert(m),S=h.convert(C)-v,y=new import_ag_charts_community26._Scene.Rect;return y.x=a?v:f,y.y=a?f:v,y.width=a?S:d,y.height=a?d:S,y.strokeWidth=0,y.crisp=!0,y});return e.append(u),u}};MiniRangeBar.chartType="rangeBar";var MiniRangeArea=class extends MiniChartWithAxes{constructor(e,t,s){super(e,"rangeAreaTooltip");const i=4,r=[zigzag({offset:.375*i,length:i,pattern:{low:3,high:5,period:i}}),zigzag({offset:.375*i,length:i,pattern:{low:2.25,high:4.25,period:i}}),zigzag({offset:.75*i,length:i,pattern:{low:2.5,high:4.5,period:i}})],a=1.75,o=r.map(c=>c.map(([h,d])=>({x:h,low:d-.5*a,high:d+.5*a}))),{lines:n,areas:l}=this.createRangeArea(this.root,o,this.size,this.padding);this.lines=n,this.areas=l,this.updateColors(t,s)}updateColors(e,t){e=swapArrayItems(e,1,2),t=swapArrayItems(t,1,2),this.lines.forEach(([s,i],r)=>{s.fill=void 0,s.stroke=t[r],i.fill=void 0,i.stroke=t[r]}),this.areas.forEach((s,i)=>{s.fill=e[i]})}createRangeArea(e,t,s,i){const r=t.reduce((g,m)=>m.reduce((C,{x:f})=>Math.min(C,f),g),1/0),a=t.reduce((g,m)=>m.reduce((C,{x:f})=>Math.max(C,f),g),-1/0),o=t.reduce((g,m)=>m.reduce((C,{low:f})=>Math.min(C,f),g),1/0),n=t.reduce((g,m)=>m.reduce((C,{high:f})=>Math.max(C,f),g),-1/0),l=new import_ag_charts_community27._Scene.LinearScale;l.domain=[r,a],l.range=[i,s-i];const c=2*i,h=new import_ag_charts_community27._Scene.LinearScale;h.domain=[o,n],h.range=[s-c,c];const d=[],u=[];return t.map(g=>{const m=new import_ag_charts_community27._Scene.Path,C=new import_ag_charts_community27._Scene.Path,f=new import_ag_charts_community27._Scene.Path;return d.push([m,C]),u.push(f),m.strokeWidth=0,C.strokeWidth=0,f.strokeWidth=0,f.fillOpacity=.8,m.path.clear(),C.path.clear(),f.path.clear(),g.map((v,S)=>{const{x:y,low:w,high:x}=v,b=l.convert(y),T=h.convert(w),M=h.convert(x),P=S>0?"lineTo":"moveTo";return m.path[P](b,M),C.path[P](b,T),f.path[P](b,M),[b,T]})}).forEach((g,m)=>{const C=g.length-1,f=u[m];for(let v=C;v>=0;v--){const[S,y]=g[v];f.path.lineTo(S,y)}}),e.append(u.concat(...d)),{lines:d,areas:u}}};MiniRangeArea.chartType="rangeArea";function zigzag(e){const{offset:t,length:s,pattern:i}=e,r=n(t,s,i),a=0,o=s;return(r.length===0||r[0][0]!==a)&&r.unshift(l(a,t,i)),r[r.length-1][0]!==o&&r.push(l(o,t,i)),r;function n(h,d,u){const{period:p}=u,g=h/p,C=[0,.5].map(v=>v-g).map(getRemainderAbs).sort((v,S)=>v-S);return Array.from({length:Math.floor(C.length*(p/d))},(v,S)=>C[S%C.length]+Math.floor(S/C.length)).map(v=>v*p).map(v=>l(v,h,u))}function l(h,d,u){return[h,c(d+h,u)]}function c(h,d){const{low:u,high:p,period:g}=d,m=getRemainderAbs(h/g),C=m>.5?1-2*(m-.5):2*m;return u+(p-u)*C}}function getRemainderAbs(e){const t=e%1;return t<0?t+1:t}function swapArrayItems(e,t,s){const i=[...e],r=i[t];return i[t]=i[s],i[s]=r,i}var MiniBoxPlot=class extends MiniChartWithAxes{constructor(e,t,s,i,r){super(e,"boxPlotTooltip");const a=this.padding,o=this.size,n=[11,11.5,10.5],l=1.2,c=1.1,h=.9,d=.8,u=new import_ag_charts_community28._Scene.LinearScale;u.domain=[n.reduce((C,f)=>Math.min(C,f),1/0)*d,n.reduce((C,f)=>Math.max(C,f),0)*l],u.range=[o-1.5*a,a];const p=new import_ag_charts_community28._Scene.BandScale;p.domain=n.map((C,f)=>f),p.range=[a,o-a],p.paddingInner=.4,p.paddingOuter=.2;const g=Math.round(p.bandwidth),m=Math.round(p.bandwidth/2);this.boxPlotGroups=n.map((C,f)=>{const[v,S,y,w]=[C*d,C*h,C*c,C*l],x=Math.round(u.convert(y)),b=Math.round(p.convert(f)),T=Math.round(b+g),M=Math.round(u.convert(S)),P=Math.round(u.convert(v)),R=Math.round(u.convert(C)),D=Math.round(u.convert(w)),F=b+m,A=new import_ag_charts_community28._Scene.Group,G=new import_ag_charts_community28._Scene.Rect,L=new import_ag_charts_community28._Scene.Line,N=new import_ag_charts_community28._Scene.Line,k=new import_ag_charts_community28._Scene.Line,E=new import_ag_charts_community28._Scene.Line,I=new import_ag_charts_community28._Scene.Line;return G.x=b,G.y=x,G.width=g,G.height=M-x,G.strokeWidth=1,G.strokeOpacity=.75,G.crisp=!0,this.setLineProperties(L,b,T,R,R),this.setLineProperties(N,F,F,D,x),this.setLineProperties(k,F,F,P,M),this.setLineProperties(E,b,T,D,D),this.setLineProperties(I,b,T,P,P),A.append([G,L,N,k,E,I]),A}),this.updateColors(t,s,i,r),this.root.append(this.boxPlotGroups)}updateColors(e,t,s,i){const r=s?.get(import_ag_charts_community28._Theme.DEFAULT_BACKGROUND_COLOUR),a=(Array.isArray(r)?r[0]:r)??"white";this.boxPlotGroups.forEach((o,n)=>{o.children?.forEach(l=>{const c=e[n%e.length];l.fill=i?c:import_ag_charts_community28._Util.interpolateColor(c,a)(.7),l.stroke=t[n%t.length]})})}setLineProperties(e,t,s,i,r){e.x1=t,e.x2=s,e.y1=i,e.y2=r,e.strokeOpacity=.75}};MiniBoxPlot.chartType="boxPlot";var MiniTreemap=class extends MiniChart{constructor(e,t,s,i,r){super(e,"treemapTooltip");const{size:a,padding:o}=this,n=[[1,1],[3,2,1]],c=n.length%2===0?.3:.2,h=[o,a-o],d=n.length,u=d*(d+1)/2,p=c/(d-1),g=h[1]-h[0],m=g-c;let C=h[0];this.rects=n.reduce((v,S,y)=>{v??(v=[]);const w=(d-y)/u,x=m*w,b=S.length,T=S.reduce((F,A)=>F+=A,0),M=c/(b-1||1),P=b>1?g-c:g;let R=h[0];const D=S.map(F=>{const A=new import_ag_charts_community29._Scene.Rect,G=P*F/T;return A.x=C,A.y=R,A.width=x,A.height=G,A.strokeWidth=.75,A.crisp=!0,R+=G+M,A});return C+=x+p,v.push(...D),v},[]),this.updateColors(t,s,i,r);const f=new import_ag_charts_community29._Scene.Group;f.setClipRectInGroupCoordinateSpace(new import_ag_charts_community29._Scene.BBox(o,o,a-o,a-o)),f.append(this.rects),this.root.append(f)}updateColors(e,t,s,i){const r=s?.get(import_ag_charts_community29._Theme.DEFAULT_BACKGROUND_COLOUR),a=(Array.isArray(r)?r[0]:r)??"white";this.rects.forEach((o,n)=>{o.fill=e[n%t.length],o.stroke=i?t[n%t.length]:a})}};MiniTreemap.chartType="treemap";var MiniSunburst=class extends MiniChartWithPolarAxes{constructor(e,t,s){super(e,"sunburstTooltip"),this.data=[[[],[]],[[],[]],[[],[]]],this.angleOffset=-Math.PI/2,this.innerRadiusRatio=0,this.showRadiusAxisLine=!1,this.showAngleAxisLines=!1;const{data:i,size:r,padding:a,angleOffset:o,innerRadiusRatio:n}=this,l=(r-a*2)/2,c=[o+0,o+2*Math.PI],h=Math.abs(c[1]-c[0]),d=[l*n,l],u=Math.abs(d[1]-d[0]);let p=0;const g=(S,y)=>{S.forEach(w=>{const x=y+1;p=Math.max(p,x),g(w,x)})};g(i,0);const m=u/p,C=this.size/2,f=c[0];this.series=[];const v=(S,y,w,x,b)=>{if(!Array.isArray(S))return;const M=y+1;let P=w;S.forEach((R,D,F)=>{let A=b;A||(A=new import_ag_charts_community30._Scene.Group,this.series.push(A));const G=d[0]+y*m,L=d[0]+M*m,N=1/F.length,k=P,E=k+x*N,I=new import_ag_charts_community30._Scene.Sector;I.centerX=C,I.centerY=C,I.innerRadius=G,I.outerRadius=L,I.startAngle=k,I.endAngle=E,I.stroke=void 0,I.strokeWidth=0,I.inset=.75,P=E,A.append(I),v(R,M,k,Math.abs(E-k),A)})};v(i,0,f,h),this.root.append(this.series),this.updateColors(t,s)}updateColors(e,t){this.series.forEach((s,i)=>{s.children?.forEach(r=>{r.fill=e[i%e.length],r.stroke=t[i%t.length]})})}};MiniSunburst.chartType="sunburst";var MiniHeatmap=class extends MiniChart{constructor(e,t,s,i,r){super(e,"heatmapTooltip");const{size:a,padding:o}=this,n=3,l=Array.from({length:n},(m,C)=>Array.from({length:n},(f,v)=>v)),c=l.map((m,C)=>C),h=new import_ag_charts_community31._Scene.BandScale;h.domain=c,h.range=[o,a-o],h.paddingInner=.01,h.paddingOuter=.1;const d=new import_ag_charts_community31._Scene.BandScale;d.domain=c,d.range=[o,a-o],d.paddingInner=.01,d.paddingOuter=.1;const u=h.bandwidth??0,p=d.bandwidth??0;this.rects=l.reduce((m,C,f)=>{m??(m=[]);const v=C.map((S,y)=>{const w=new import_ag_charts_community31._Scene.Rect;return w.x=h.convert(f),w.y=d.convert(y),w.width=u,w.height=p,w.strokeWidth=0,w.crisp=!0,w});return m.push(...v),m},[]),this.updateColors(t,s,i,r);const g=new import_ag_charts_community31._Scene.Group;g.setClipRectInGroupCoordinateSpace(new import_ag_charts_community31._Scene.BBox(o,o,a-o,a-o)),g.append(this.rects),this.root.append(g)}updateColors(e,t,s,i){const r=s?.get(import_ag_charts_community31._Theme.DEFAULT_DIVERGING_SERIES_COLOUR_RANGE),a=s?.get(import_ag_charts_community31._Theme.DEFAULT_BACKGROUND_COLOUR),o=(Array.isArray(a)?a[0]:a)??"white",n=i?[e[0],e[1]]:r,l=i?t[0]:o,c=import_ag_charts_community31._Util.interpolateColor(n[0],n[1]);this.rects.forEach((h,d)=>{h.fill=c(d*.2),h.stroke=l})}};MiniHeatmap.chartType="heatmap";var MiniWaterfall=class extends MiniChartWithAxes{constructor(e,t,s,i,r){super(e,"waterfallTooltip"),this.data=[4,3,-3,6,-3],this.bars=this.createWaterfall(this.root,this.data,this.size,this.padding,"vertical").bars,this.updateColors(t,s,i,r)}updateColors(e,t,s,i){const{data:r}=this,a={fill:i?e[0]:s?.get(import_ag_charts_community32._Theme.PALETTE_ALT_UP_FILL),stroke:i?t[0]:s?.get(import_ag_charts_community32._Theme.PALETTE_ALT_UP_STROKE)},o={fill:i?e[1]:s?.get(import_ag_charts_community32._Theme.PALETTE_ALT_DOWN_FILL),stroke:i?t[1]:s?.get(import_ag_charts_community32._Theme.PALETTE_ALT_DOWN_STROKE)};this.bars.forEach((n,l)=>{const c=r[l]>=0;n.fill=c?a.fill:o.fill,n.stroke=c?a.stroke:o.stroke})}createWaterfall(e,t,s,i,r){const a=2*i,{processedData:o,min:n,max:l}=accumulateData(t.map(v=>[v])),c=o.reduce((v,S)=>v.concat(S),[]),h=new import_ag_charts_community32._Scene.LinearScale;h.domain=[Math.min(n,0),l],h.range=[s-a,a];const d=new import_ag_charts_community32._Scene.BandScale;d.domain=t.map((v,S)=>S),d.range=[i,s-i],d.paddingInner=.2,d.paddingOuter=.3;const u=d.bandwidth,p=new import_ag_charts_community32._Scene.Path;p.stroke="#575757",p.strokeWidth=0;const g=Math.floor(p.strokeWidth)%2/2,m=p.path;m.clear();const C=r==="horizontal",f=c.map((v,S)=>{const y=S>0?c[S-1]:0,x=t[S]>0,b=Math.round(h.convert(v)),T=Math.round(h.convert(y)),M=(x?b:T)-g,P=(x?T:b)+g,R=Math.abs(P-M),D=d.convert(S),F=new import_ag_charts_community32._Scene.Rect;F.x=C?M:D,F.y=C?D:M,F.width=C?R:u,F.height=C?u:R,F.strokeWidth=0,F.crisp=!0;const A=b+g,G=T+g;if(S>0){const k=C?G:F.x,E=C?F.y:G;m.lineTo(k,E)}const L=C?A:F.x,N=C?F.y:A;return m.moveTo(L,N),F});return e.append([p,...f]),{bars:f}}};MiniWaterfall.chartType="waterfall";var MiniColumnLineCombo=class extends MiniChartWithAxes{constructor(e,t,s){super(e,"columnLineComboTooltip"),this.columnData=[3,4],this.lineData=[[5,4,6,5,4]];const{root:i,columnData:r,lineData:a,size:o,padding:n}=this;this.columns=createColumnRects({stacked:!1,root:i,data:r,size:o,padding:n,xScaleDomain:[0,1],yScaleDomain:[0,4],xScalePadding:.5}),i.append(this.columns),this.lines=createLinePaths(i,a,o,n),this.updateColors(t,s)}updateColors(e,t){this.columns.forEach((s,i)=>{s.fill=e[i],s.stroke=t[i]}),this.lines.forEach((s,i)=>{s.stroke=e[i+2]})}};MiniColumnLineCombo.chartType="columnLineCombo";var MiniAreaColumnCombo=class extends MiniChartWithAxes{constructor(e,t,s){super(e,"areaColumnComboTooltip"),this.columnData=[3,4.5],this.areaData=[[5,4,6,5,4]];const{root:i,columnData:r,areaData:a,size:o,padding:n}=this;this.columns=createColumnRects({stacked:!1,root:i,data:r,size:o,padding:n,xScaleDomain:[0,1],yScaleDomain:[0,6],xScalePadding:.5});const l=new import_ag_charts_community33._Scene.BandScale;l.range=[n,o-n],l.domain=[0,1,2,3,4],l.paddingInner=1,l.paddingOuter=0;const c=new import_ag_charts_community33._Scene.LinearScale;c.range=[o-n,n],c.domain=[0,6];const h=[],d=c.convert(0),u=l.convert(0);a.forEach((p,g)=>{const m=h[g]||(h[g]=[]);p.forEach((f,v)=>{const S=f,y=v,w=l.convert(y),x=c.convert(S);m[v]={x:w,y:x}});const C=l.convert(p.length-1);h[g].push({x:C,y:d},{x:u,y:d})}),this.areas=h.map(p=>{const g=new import_ag_charts_community33._Scene.Path;g.strokeWidth=0,g.fillOpacity=.8;const m=g.path;return p.forEach((C,f)=>m[f>0?"lineTo":"moveTo"](C.x,C.y)),g}),i.append(this.areas),i.append([].concat.apply([],this.columns)),this.updateColors(t,s)}updateColors(e,t){this.areas.forEach((s,i)=>{s.fill=e[i],s.stroke=t[i]}),this.columns.forEach((s,i)=>{s.fill=e[i+1],s.stroke=t[i+1]})}};MiniAreaColumnCombo.chartType="areaColumnCombo";var MiniCustomCombo=class extends MiniChart{constructor(e,t,s){super(e,"customComboTooltip"),this.columnData=[3,4],this.lineData=[[5,4,6,5,4]];const{root:i,columnData:r,lineData:a,size:o,padding:n}=this;this.columns=createColumnRects({stacked:!1,root:i,data:r,size:o,padding:n,xScaleDomain:[0,1],yScaleDomain:[0,4],xScalePadding:.5}),i.append(this.columns),this.lines=createLinePaths(i,a,o,n);const l="grey",c=3,h=new import_ag_charts_community34._Scene.Line;h.x1=n,h.y1=n,h.x2=n,h.y2=o-n+c,h.stroke=l;const d=new import_ag_charts_community34._Scene.Line;d.x1=n-c+1,d.y1=o-n,d.x2=o-n+1,d.y2=o-n,d.stroke=l;const u=new import_ag_charts_community34._Scene.Path;this.buildPenIconPath(u),u.fill="whitesmoke",u.stroke="darkslategrey",u.strokeWidth=1,i.append([d,h,u]),this.updateColors(t,s)}updateColors(e,t){this.columns.forEach((s,i)=>{s.fill=e[i],s.stroke=t[i]}),this.lines.forEach((s,i)=>{s.stroke=e[i+2]})}buildPenIconPath(e){const{path:t}=e;t.moveTo(25.76,43.46),t.lineTo(31.27,48.53),t.moveTo(49.86,22),t.lineTo(49.86,22),t.cubicCurveTo(49.01994659053345,21.317514933510974,47.89593834348529,21.09645997825817,46.86,21.41),t.lineTo(46.86,21.41),t.cubicCurveTo(45.55460035985361,21.77260167850787,44.38777081121966,22.517979360321792,43.51,23.55),t.lineTo(25.51,43.8),t.lineTo(25.43,43.89),t.lineTo(23.01,51.89),t.lineTo(22.83,52.46),t.lineTo(31.02,48.86),t.lineTo(49.02,28.52),t.lineTo(49.02,28.52),t.cubicCurveTo(49.940716461596224,27.521914221246085,50.54302631059587,26.2720342455763,50.75,24.93),t.lineTo(50.75,24.93),t.cubicCurveTo(50.95363374988308,23.866379846512814,50.62080640232334,22.77066734274871,49.86,22),t.closePath(),t.moveTo(41.76,25.5),t.lineTo(47.34,30.5),t.moveTo(40.74,26.65),t.lineTo(46.25,31.71)}};MiniCustomCombo.chartType="customCombo";var miniChartMapping={columnGroup:{column:{range:!0,pivot:!0,enterprise:!1,icon:MiniColumn},stackedColumn:{range:!0,pivot:!0,enterprise:!1,icon:MiniStackedColumn},normalizedColumn:{range:!0,pivot:!0,enterprise:!1,icon:MiniNormalizedColumn}},barGroup:{bar:{range:!0,pivot:!0,enterprise:!1,icon:MiniBar},stackedBar:{range:!0,pivot:!0,enterprise:!1,icon:MiniStackedBar},normalizedBar:{range:!0,pivot:!0,enterprise:!1,icon:MiniNormalizedBar}},pieGroup:{pie:{range:!0,pivot:!0,enterprise:!1,icon:MiniPie},donut:{range:!0,pivot:!0,enterprise:!1,icon:MiniDonut},doughnut:{range:!0,pivot:!0,enterprise:!1,icon:MiniDonut}},lineGroup:{line:{range:!0,pivot:!0,enterprise:!1,icon:MiniLine}},scatterGroup:{scatter:{range:!0,pivot:!0,enterprise:!1,icon:MiniScatter},bubble:{range:!0,pivot:!0,enterprise:!1,icon:MiniBubble}},areaGroup:{area:{range:!0,pivot:!0,enterprise:!1,icon:MiniArea},stackedArea:{range:!0,pivot:!0,enterprise:!1,icon:MiniStackedArea},normalizedArea:{range:!0,pivot:!0,enterprise:!1,icon:MiniNormalizedArea}},polarGroup:{radarLine:{range:!0,pivot:!1,enterprise:!0,icon:MiniRadarLine},radarArea:{range:!0,pivot:!1,enterprise:!0,icon:MiniRadarArea},nightingale:{range:!0,pivot:!1,enterprise:!0,icon:MiniNightingale},radialColumn:{range:!0,pivot:!1,enterprise:!0,icon:MiniRadialColumn},radialBar:{range:!0,pivot:!1,enterprise:!0,icon:MiniRadialBar}},statisticalGroup:{boxPlot:{range:!0,pivot:!1,enterprise:!0,icon:MiniBoxPlot},histogram:{range:!0,pivot:!1,enterprise:!1,icon:MiniHistogram},rangeBar:{range:!0,pivot:!1,enterprise:!0,icon:MiniRangeBar},rangeArea:{range:!0,pivot:!1,enterprise:!0,icon:MiniRangeArea}},hierarchicalGroup:{treemap:{range:!0,pivot:!0,enterprise:!0,icon:MiniTreemap},sunburst:{range:!0,pivot:!0,enterprise:!0,icon:MiniSunburst}},specializedGroup:{heatmap:{range:!0,pivot:!1,enterprise:!0,icon:MiniHeatmap},waterfall:{range:!0,pivot:!1,enterprise:!0,icon:MiniWaterfall}},combinationGroup:{columnLineCombo:{range:!0,pivot:!0,enterprise:!1,icon:MiniColumnLineCombo},areaColumnCombo:{range:!0,pivot:!0,enterprise:!1,icon:MiniAreaColumnCombo},customCombo:{range:!0,pivot:!0,enterprise:!1,icon:MiniCustomCombo}}},DEFAULT_CHART_GROUPS={columnGroup:["column","stackedColumn","normalizedColumn"],barGroup:["bar","stackedBar","normalizedBar"],pieGroup:["pie","donut"],lineGroup:["line"],scatterGroup:["scatter","bubble"],areaGroup:["area","stackedArea","normalizedArea"],polarGroup:["radarLine","radarArea","nightingale","radialColumn","radialBar"],statisticalGroup:["boxPlot","histogram","rangeBar","rangeArea"],hierarchicalGroup:["treemap","sunburst"],specializedGroup:["heatmap","waterfall"],combinationGroup:["columnLineCombo","areaColumnCombo","customCombo"]},MiniChartsContainer=class extends import_core157.Component{constructor(e,t,s,i,r,a=DEFAULT_CHART_GROUPS){super('<div class="ag-chart-settings-mini-wrapper"></div>'),this.wrappers=new Map,this.chartController=e,this.fills=t,this.strokes=s,this.themeTemplateParameters=i,this.isCustomTheme=r,this.chartGroups={...a}}wireBeans(e){this.chartTranslationService=e.chartTranslationService}postConstruct(){!this.chartController.customComboExists()&&this.chartGroups.combinationGroup&&(this.chartGroups.combinationGroup=this.chartGroups.combinationGroup.filter(a=>a!=="customCombo"));const e=this.getGui(),t=this.chartController.isEnterprise(),s=this.chartController.isPivotChart(),i=!s,r=Object.keys(this.chartGroups).map(a=>{const o=a in miniChartMapping?miniChartMapping[a]:void 0;if(!o)return(0,import_core157._warnOnce)(`invalid chartGroupsDef config '${a}'`),null;const l=(this.chartGroups[a]??[]).map(c=>{const h=c in o?o[c]:void 0;return h?!t&&h.enterprise?null:i&&h.range||s&&h.pivot?h:null:((0,import_core157._warnOnce)(`invalid chartGroupsDef config '${a}.${c}'`),null)}).filter(c=>c!=null);return l.length===0?null:{label:this.chartTranslationService.translate(a),items:l}}).filter(a=>a!=null);for(const{label:a,items:o}of r){const n=this.createBean(new AgGroupComponent({title:a,suppressEnabledCheckbox:!0,enabled:!0,suppressOpenCloseIcons:!0,cssIdentifier:"charts-settings",direction:"horizontal",suppressKeyboardNavigation:!0}));for(const l of o){const c=l.icon,h=document.createElement("div");h.classList.add("ag-chart-mini-thumbnail"),h.setAttribute("tabindex","0"),h.setAttribute("role","button");const d=c.chartType,u=()=>{this.chartController.setChartType(d),this.updateSelectedMiniChart()};this.addManagedListeners(h,{click:u,keydown:p=>{(p.key==import_core157.KeyCode.ENTER||p.key===import_core157.KeyCode.SPACE)&&(p.preventDefault(),u())}}),this.wrappers.set(d,h),this.createBean(new c(h,this.fills,this.strokes,this.themeTemplateParameters,this.isCustomTheme)),n.addItem(h)}e.appendChild(n.getGui())}this.updateSelectedMiniChart()}updateSelectedMiniChart(){const e=this.chartController.getChartType();this.wrappers.forEach((t,s)=>{const i=s===e;t.classList.toggle("ag-selected",i);const r=this.chartTranslationService.translate(getFullChartNameTranslationKey(s)),a=i?`${r}. ${this.chartTranslationService.translate("ariaChartSelected")}`:r;(0,import_core157._setAriaLabel)(t,a)})}destroy(){this.wrappers.clear(),super.destroy()}},ChartSettingsPanel=class extends import_core156.Component{constructor(e){super(`<div class="ag-chart-settings-wrapper">
|
|
310
|
+
</div>`,[AgGroupComponentSelector],{titleGroup:n}),a(this.titleGroup)}},DefaultFormatPanelDef={groups:[{type:"chart"},{type:"titles"},{type:"legend"},{type:"series"},{type:"axis"}]},FormatPanel=class extends import_core114.Component{constructor(e){super('<div class="ag-chart-format-wrapper"></div>'),this.chartMenuContext=e}postConstruct(){this.groupExpansionFeature=this.createManagedBean(new GroupExpansionFeature(this.getGui())),this.chartPanelFeature=this.createManagedBean(new ChartPanelFeature(this.chartMenuContext.chartController,this.getGui(),"ag-chart-format-section",(e,t)=>this.createPanels(t))),this.chartPanelFeature.refreshPanels()}createPanels(e){let t=!1;this.getFormatPanelDef().groups?.forEach(({type:s,isOpen:i=!1})=>{if(!this.isGroupPanelShownInSeries(s,e))return;i&&(t&&(0,import_core114._warnOnce)(`As of v32, only one charts customize panel group can be expanded at a time. '${s}' will not be expanded.`),t=!0);const r=o=>this.groupExpansionFeature.addGroupComponent(o),a={...this.chartMenuContext,isExpandedOnInit:i,seriesType:e,registerGroupComponent:r};switch(s){case"chart":this.chartPanelFeature.addComponent(new ChartPanel(a));break;case"titles":this.chartPanelFeature.addComponent(new TitlesPanel(a));break;case"legend":this.chartPanelFeature.addComponent(new LegendPanel(a));break;case"axis":isPolar(e)?this.chartPanelFeature.addComponent(new PolarAxisPanel(a)):isCartesian(e)&&(this.chartPanelFeature.addComponent(new CartesianAxisPanel("xAxis",a)),this.chartPanelFeature.addComponent(new CartesianAxisPanel("yAxis",a)));break;case"horizontalAxis":this.chartPanelFeature.addComponent(new CartesianAxisPanel("xAxis",a));break;case"verticalAxis":this.chartPanelFeature.addComponent(new CartesianAxisPanel("yAxis",a));break;case"series":this.chartPanelFeature.addComponent(new SeriesPanel(a));break;case"navigator":(0,import_core114._warnOnce)("'navigator' is now displayed in the charts advanced settings instead of the customize panel, and this setting will be ignored.");break;default:(0,import_core114._warnOnce)(`Invalid charts customize panel group name supplied: '${s}'`)}})}getFormatPanelDef(){const e=this.gos.get("chartToolPanelsDef")?.formatPanel;return e||DefaultFormatPanelDef}isGroupPanelShownInSeries(e,t){return["chart","titles","legend","series"].includes(e)||isCartesian(t)&&["axis","horizontalAxis","verticalAxis"].includes(e)||isPolar(t)&&e==="axis"}};function createColumnRects(e){const{stacked:t,size:s,padding:i,xScalePadding:r,xScaleDomain:a,yScaleDomain:o}=e,n=new import_ag_charts_community11._Scene.BandScale;n.domain=a,n.range=[i,s-i],n.paddingInner=r,n.paddingOuter=r;const l=new import_ag_charts_community11._Scene.LinearScale;l.domain=o,l.range=[s-i,i];const c=(h,d,u)=>h.map((p,g)=>{const m=u.convert(p),C=new import_ag_charts_community11._Scene.Rect;return C.x=d.convert(g),C.y=m,C.width=d.bandwidth,C.height=u.convert(0)-m,C.strokeWidth=0,C.crisp=!0,C});return t?e.data.map(h=>c(h,n,l)):c(e.data,n,l)}function createLinePaths(e,t,s,i){const r=new import_ag_charts_community11._Scene.LinearScale;r.domain=[0,4],r.range=[i,s-i];const a=new import_ag_charts_community11._Scene.LinearScale;a.domain=[0,10],a.range=[s-i,i];const o=t.map(l=>{const c=new import_ag_charts_community11._Scene.Path;return c.strokeWidth=3,c.lineCap="round",c.fill=void 0,l.forEach((h,d)=>{c.path[d>0?"lineTo":"moveTo"](r.convert(d),a.convert(h))}),c}),n=new import_ag_charts_community11._Scene.Group;return n.setClipRect(new import_ag_charts_community11._Scene.BBox(i,i,s-i*2,s-i*2)),n.append(o),e.append(n),o}function createPolarPaths(e,t,s,i,r,a=0){const o=new import_ag_charts_community11._Scene.LinearScale;o.domain=[0,7],o.range=[-Math.PI,Math.PI].map(u=>u+Math.PI/2);const n=new import_ag_charts_community11._Scene.LinearScale;n.domain=[0,10],n.range=[i,r];const l=[],c=s/2,h=t.map(u=>{const p=new import_ag_charts_community11._Scene.Path;return p.strokeWidth=1,p.strokeOpacity=.5,p.lineCap="round",p.fill=void 0,p.fillOpacity=.8,u.forEach((g,m)=>{const C=o.convert(m),f=i+r-n.convert(g),v=f*Math.cos(C)+c,S=f*Math.sin(C)+c;if(p.path[m>0?"lineTo":"moveTo"](v,S),a>0){const y=new import_ag_charts_community11._Scene.Circle;y.x=v,y.y=S,y.size=a,l.push(y)}}),p.path.closePath(),p}),d=new import_ag_charts_community11._Scene.Group;return d.append([...h,...l]),e.append(d),{paths:h,markers:l}}function accumulateData(e){let[t,s]=[1/0,-1/0];return{processedData:e.reduce((r,a,o)=>{const n=o>0?r[o-1]:void 0;r[o]??(r[o]=[]);const l=r[o];return a.forEach((c,h)=>{n&&(c+=n[h]),l[h]=c,l[h]<t&&(t=l[h]),l[h]>s&&(s=l[h])}),r},[]),min:t,max:s}}var CANVAS_CLASS="ag-chart-mini-thumbnail-canvas",ERROR_MESSAGE="AG Grid - chart update failed",MiniChart=class extends import_core159.Component{constructor(e,t){super(),this.tooltipName=t,this.size=58,this.padding=5,this.root=new import_ag_charts_community13._Scene.Group;const s=new import_ag_charts_community13._Scene.Scene({width:this.size,height:this.size});s.canvas.element.classList.add(CANVAS_CLASS),s.setRoot(this.root),s.setContainer(e),this.scene=s}wireBeans(e){this.chartTranslationService=e.chartTranslationService}postConstruct(){this.scene.canvas.element.title=this.chartTranslationService.translate(this.tooltipName),this.scene.render().catch(e=>{(0,import_core159._errorOnce)(`${ERROR_MESSAGE}`,e)})}},MiniChartWithAxes=class extends MiniChart{constructor(e,t){super(e,t),this.stroke="gray",this.axisOvershoot=3}postConstruct(){const e=this.size,t=this.padding,s=new import_ag_charts_community12._Scene.Line;s.x1=t,s.y1=t,s.x2=t,s.y2=e-t+this.axisOvershoot,s.stroke=this.stroke;const i=new import_ag_charts_community12._Scene.Line;i.x1=t-this.axisOvershoot+1,i.y1=e-t,i.x2=e-t+1,i.y2=e-t,i.stroke=this.stroke;const r=this.root;r.append(s),r.append(i),super.postConstruct()}},MiniColumn=class extends MiniChartWithAxes{constructor(e,t,s){super(e,"groupedColumnTooltip"),this.columnData=[2,3,4];const{root:i,columnData:r,size:a,padding:o}=this;this.columns=createColumnRects({stacked:!1,root:i,data:r,size:a,padding:o,xScaleDomain:[0,1,2],yScaleDomain:[0,4],xScalePadding:.3}),i.append(this.columns),this.updateColors(t,s)}updateColors(e,t){this.columns.forEach((s,i)=>{s.fill=e[i],s.stroke=t[i]})}};MiniColumn.chartType="groupedColumn";var _MiniStackedColumn=class J extends MiniChartWithAxes{constructor(t,s,i,r,a,o=J.data,n=[0,16],l="stackedColumnTooltip"){super(t,l);const{root:c,size:h,padding:d}=this;this.stackedColumns=createColumnRects({stacked:!0,root:c,data:o,size:h,padding:d,xScaleDomain:[0,1,2],yScaleDomain:n,xScalePadding:.3}),c.append([].concat.apply([],this.stackedColumns)),this.updateColors(s,i)}updateColors(t,s){this.stackedColumns.forEach((i,r)=>i.forEach(a=>{a.fill=t[r],a.stroke=s[r]}))}};_MiniStackedColumn.chartType="stackedColumn",_MiniStackedColumn.data=[[8,12,16],[6,9,12],[2,3,4]];var MiniStackedColumn=_MiniStackedColumn,_MiniNormalizedColumn=class Q extends MiniStackedColumn{constructor(t,s,i,r,a){super(t,s,i,r,a,Q.data,[0,10],"normalizedColumnTooltip")}};_MiniNormalizedColumn.chartType="normalizedColumn",_MiniNormalizedColumn.data=[[10,10,10],[6,7,8],[2,4,6]];var MiniNormalizedColumn=_MiniNormalizedColumn,MiniBar=class extends MiniChartWithAxes{constructor(e,t,s){super(e,"groupedBarTooltip");const i=this.padding,r=this.size,a=[2,3,4],o=new import_ag_charts_community14._Scene.BandScale;o.domain=[0,1,2],o.range=[i,r-i],o.paddingInner=.3,o.paddingOuter=.3;const n=new import_ag_charts_community14._Scene.LinearScale;n.domain=[0,4],n.range=[r-i,i];const l=n.convert(0),c=o.bandwidth;this.bars=a.map((h,d)=>{const u=new import_ag_charts_community14._Scene.Rect;return u.x=i,u.y=o.convert(d),u.width=l-n.convert(h),u.height=c,u.strokeWidth=0,u.crisp=!0,u}),this.updateColors(t,s),this.root.append(this.bars)}updateColors(e,t){this.bars.forEach((s,i)=>{s.fill=e[i],s.stroke=t[i]})}};MiniBar.chartType="groupedBar";var _MiniStackedBar=class ee extends MiniChartWithAxes{constructor(t,s,i,r,a,o=ee.data,n=[0,16],l="stackedBarTooltip"){super(t,l);const c=this.size,h=this.padding,d=new import_ag_charts_community15._Scene.BandScale;d.domain=[0,1,2],d.range=[h,c-h],d.paddingInner=.3,d.paddingOuter=.3;const u=new import_ag_charts_community15._Scene.LinearScale;u.domain=n,u.range=[c-h,h];const p=u.convert(0),g=d.bandwidth;this.bars=o.map(m=>m.map((C,f)=>{const v=new import_ag_charts_community15._Scene.Rect;return v.x=h,v.y=d.convert(f),v.width=p-u.convert(C),v.height=g,v.strokeWidth=0,v.crisp=!0,v})),this.updateColors(s,i),this.root.append([].concat.apply([],this.bars))}updateColors(t,s){this.bars.forEach((i,r)=>i.forEach(a=>{a.fill=t[r],a.stroke=s[r]}))}};_MiniStackedBar.chartType="stackedBar",_MiniStackedBar.data=[[8,12,16],[6,9,12],[2,3,4]];var MiniStackedBar=_MiniStackedBar,_MiniNormalizedBar=class te extends MiniStackedBar{constructor(t,s,i,r,a){super(t,s,i,r,a,te.data,[0,10],"normalizedBarTooltip")}};_MiniNormalizedBar.chartType="normalizedBar",_MiniNormalizedBar.data=[[10,10,10],[6,7,8],[2,4,6]];var MiniNormalizedBar=_MiniNormalizedBar,toRadians=import_ag_charts_community16._Scene.toRadians,MiniDonut=class extends MiniChart{constructor(e,t,s,i,r,a=.6,o="donutTooltip"){super(e,o);const n=(this.size-this.padding*2)/2,l=n+this.padding,c=[[toRadians(-90),toRadians(30)],[toRadians(30),toRadians(120)],[toRadians(120),toRadians(180)],[toRadians(180),toRadians(210)],[toRadians(210),toRadians(240)],[toRadians(240),toRadians(270)]];this.sectors=c.map(([h,d])=>{const u=new import_ag_charts_community16._Scene.Sector;return u.centerX=l,u.centerY=l,u.innerRadius=n*a,u.outerRadius=n,u.startAngle=h,u.endAngle=d,u.stroke=void 0,u.strokeWidth=0,u.inset=.75,u}),this.updateColors(t,s),this.root.append(this.sectors)}updateColors(e,t){this.sectors.forEach((s,i)=>{s.fill=e[i%e.length],s.stroke=t[i%t.length]})}};MiniDonut.chartType="donut";var MiniPie=class extends MiniDonut{constructor(e,t,s,i,r){super(e,t,s,i,r,0,"pieTooltip")}};MiniPie.chartType="pie";var MiniLine=class extends MiniChartWithAxes{constructor(e,t,s){super(e,"lineTooltip"),this.data=[[9,7,8,5,6],[5,6,3,4,1],[1,3,4,8,7]],this.lines=createLinePaths(this.root,this.data,this.size,this.padding),this.updateColors(t,s)}updateColors(e,t){this.lines.forEach((s,i)=>{s.stroke=e[i]})}};MiniLine.chartType="line";var MiniScatter=class extends MiniChartWithAxes{constructor(e,t,s){super(e,"scatterTooltip");const i=this.size,r=this.padding,a=[[[.3,3],[1.1,.9],[2,.4],[3.4,2.4]],[[0,.3],[1,2],[2.4,1.4],[3,0]]],o=new import_ag_charts_community17._Scene.LinearScale;o.domain=[-.5,4],o.range=[r*2,i-r];const n=new import_ag_charts_community17._Scene.LinearScale;n.domain=[-.5,3.5],n.range=[i-r,r];const l=[];a.forEach(h=>{h.forEach(([d,u])=>{const p=new import_ag_charts_community17._Scene.Arc;p.strokeWidth=0,p.centerX=o.convert(d),p.centerY=n.convert(u),p.radius=2.5,l.push(p)})}),this.points=l,this.updateColors(t,s);const c=new import_ag_charts_community17._Scene.Group;c.setClipRect(new import_ag_charts_community17._Scene.BBox(r,r,i-r*2,i-r*2)),c.append(this.points),this.root.append(c)}updateColors(e,t){this.points.forEach((s,i)=>{s.stroke=t[i%t.length],s.fill=e[i%e.length]})}};MiniScatter.chartType="scatter";var MiniBubble=class extends MiniChartWithAxes{constructor(e,t,s){super(e,"bubbleTooltip");const i=this.size,r=this.padding,a=[[[.1,.3,5],[.5,.4,7],[.2,.8,7]],[[.8,.7,5],[.7,.3,9]]],o=new import_ag_charts_community18._Scene.LinearScale;o.domain=[0,1],o.range=[r*2,i-r];const n=new import_ag_charts_community18._Scene.LinearScale;n.domain=[0,1],n.range=[i-r,r];const l=[];a.forEach(h=>{h.forEach(([d,u,p])=>{const g=new import_ag_charts_community18._Scene.Arc;g.strokeWidth=0,g.centerX=o.convert(d),g.centerY=n.convert(u),g.radius=p,g.fillOpacity=.7,l.push(g)})}),this.points=l,this.updateColors(t,s);const c=new import_ag_charts_community18._Scene.Group;c.setClipRect(new import_ag_charts_community18._Scene.BBox(r,r,i-r*2,i-r*2)),c.append(this.points),this.root.append(c)}updateColors(e,t){this.points.forEach((s,i)=>{s.stroke=t[i%t.length],s.fill=e[i%e.length]})}};MiniBubble.chartType="bubble";var _MiniArea=class se extends MiniChartWithAxes{constructor(t,s,i,r,a,o=se.data){super(t,"groupedAreaTooltip");const n=this.size,l=this.padding,c=new import_ag_charts_community19._Scene.BandScale;c.domain=[0,1,2],c.paddingInner=1,c.paddingOuter=0,c.range=[l+.5,n-l-.5];const h=new import_ag_charts_community19._Scene.LinearScale;h.domain=[0,6],h.range=[n-l+.5,l];const u=o.length*2-1,p=[],g=h.convert(0);o.forEach((m,C)=>{const f=c.convert(C);m.forEach((v,S)=>{const y=h.convert(v),w=p[S]||(p[S]=[]);w[C]={x:f,y},w[u-C]={x:f,y:g}})}),this.areas=p.reverse().map(m=>{const C=new import_ag_charts_community19._Scene.Path;C.strokeWidth=1,C.strokeOpacity=.75,C.fillOpacity=.7;const f=C.path;return f.clear(),m.forEach((v,S)=>f[S>0?"lineTo":"moveTo"](v.x,v.y)),f.closePath(),C}),this.updateColors(s,i),this.root.append(this.areas)}updateColors(t,s){this.areas.forEach((i,r)=>{i.fill=t[r],i.stroke=s[r]})}};_MiniArea.chartType="area",_MiniArea.data=[[1,3,5],[2,6,4],[5,3,1]];var MiniArea=_MiniArea,_MiniStackedArea=class ie extends MiniChartWithAxes{constructor(t,s,i,r,a,o=ie.data,n="stackedAreaTooltip"){super(t,n);const l=this.size,c=this.padding,h=new import_ag_charts_community20._Scene.BandScale;h.domain=[0,1,2],h.paddingInner=1,h.paddingOuter=0,h.range=[c+.5,l-c-.5];const d=new import_ag_charts_community20._Scene.LinearScale;d.domain=[0,16],d.range=[l-c+.5,c+.5];const p=o.length*2-1,g=[];o.forEach((m,C)=>{const f=h.convert(C);let v=0;m.forEach((S,y)=>{const w=d.convert(v+S),x=g[y]||(g[y]=[]);x[C]={x:f,y:w},x[p-C]={x:f,y:d.convert(v)},v+=S})}),this.areas=g.map(m=>{const C=new import_ag_charts_community20._Scene.Path;C.strokeWidth=0;const f=C.path;return f.clear(),m.forEach((v,S)=>f[S>0?"lineTo":"moveTo"](v.x,v.y)),f.closePath(),C}),this.updateColors(s,i),this.root.append(this.areas)}updateColors(t,s){this.areas.forEach((i,r)=>{i.fill=t[r],i.stroke=s[r]})}};_MiniStackedArea.chartType="stackedArea",_MiniStackedArea.data=[[2,3,2],[3,6,5],[6,2,2]];var MiniStackedArea=_MiniStackedArea,_MiniNormalizedArea=class re extends MiniStackedArea{constructor(t,s,i,r,a,o=re.data){super(t,s,i,r,a,o,"normalizedAreaTooltip")}};_MiniNormalizedArea.chartType="normalizedArea",_MiniNormalizedArea.data=MiniStackedArea.data.map(e=>{const t=e.reduce((s,i)=>s+i,0);return e.map(s=>s/t*16)});var MiniNormalizedArea=_MiniNormalizedArea,MiniHistogram=class extends MiniChartWithAxes{constructor(e,t,s){super(e,"histogramTooltip");const i=this.padding,r=this.size,a=[2,5,11,13,10,6,1],o=new import_ag_charts_community21._Scene.LinearScale;o.domain=[0,a.length],o.range=[i,r-i];const n=new import_ag_charts_community21._Scene.LinearScale;n.domain=[0,a.reduce((c,h)=>Math.max(c,h),0)],n.range=[r-i,i];const l=n.convert(0);this.bars=a.map((c,h)=>{const d=n.convert(c),u=o.convert(h),p=o.convert(h+1),g=new import_ag_charts_community21._Scene.Rect;return g.x=u,g.y=d,g.width=p-u,g.height=l-d,g.strokeWidth=1,g.strokeOpacity=.75,g.crisp=!0,g}),this.updateColors(t,s),this.root.append(this.bars)}updateColors([e],[t]){this.bars.forEach(s=>{s.fill=e,s.stroke=t})}};MiniHistogram.chartType="histogram";var MiniChartWithPolarAxes=class extends MiniChart{constructor(e,t){super(e,t),this.stroke="gray",this.showRadiusAxisLine=!0,this.showAngleAxisLines=!0}postConstruct(){const e=this.size,t=this.padding,s=t*2,i=(e-s)/2,r=this.showAngleAxisLines?[i,i*.8,i*.6,i*.4]:[],a=new import_ag_charts_community23._Scene.Line;a.x1=e/2,a.y1=t,a.x2=e/2,a.y2=e-t-i-r[r.length-1],a.stroke=this.stroke,a.strokeOpacity=.5,a.fill=void 0,a.visible=this.showRadiusAxisLine;const o=t+i;this.gridLines=r.map((l,c)=>{const h=new import_ag_charts_community23._Scene.Path;return h.path.arc(o,o,l,0,2*Math.PI),h.strokeWidth=1,h.stroke=this.stroke,h.strokeOpacity=c===0?.5:.2,h.fill=void 0,h});const n=this.root;n.append(a),this.gridLines.length>0&&n.append(this.gridLines),super.postConstruct()}},MiniRadialColumn=class extends MiniChartWithPolarAxes{constructor(e,t,s){super(e,"radialColumnTooltip"),this.data=[[6,8,10,2,6,5],[4,4,3,6,4,4],[5,4,2,9,8,9]],this.showRadiusAxisLine=!1;const{padding:i,size:r,data:a}=this,o=(r-i*2)/2,l=o*.4,c=new import_ag_charts_community22._Scene.BandScale;c.domain=a[0].map((m,C)=>C),c.range=[0,2*Math.PI],c.paddingInner=0,c.paddingOuter=0;const h=c.bandwidth*.7,{processedData:d,max:u}=accumulateData(a),p=new import_ag_charts_community22._Scene.LinearScale;p.domain=[0,u],p.range=[l,o];const g=this.size/2;this.series=d.map((m,C)=>{const v=C===0?void 0:d[C-1],S=new import_ag_charts_community22._Scene.TranslatableGroup({zIndex:1e6}),y=m.map((w,x)=>{const b=v?.[x],T=p.convert(w),M=p.convert(b??0),P=c.convert(x),R=P+h,D=import_ag_charts_community22._Scene.getRadialColumnWidth(P,R,o,.5,.5),F=new import_ag_charts_community22._Scene.RadialColumnShape;return F.columnWidth=D,F.innerRadius=M,F.outerRadius=T,F.startAngle=P,F.endAngle=R,F.isBeveled=!0,F.axisInnerRadius=l,F.axisOuterRadius=o,F.stroke=void 0,F.strokeWidth=0,F});return S.append(y),S.translationX=g,S.translationY=g,S}),this.root.append(this.series),this.updateColors(t,s)}updateColors(e,t){this.series.forEach((s,i)=>{for(const r of s.children())r.fill=e[i%e.length],r.stroke=t[i%t.length]})}};MiniRadialColumn.chartType="radialColumn";var MiniRadialBar=class extends MiniChartWithPolarAxes{constructor(e,t,s){super(e,"radialBarTooltip"),this.data=[[6,8,10],[4,4,3],[5,4,2]],this.showRadiusAxisLine=!1;const i=(this.size-this.padding)/2,a=i*.4,o=new import_ag_charts_community24._Scene.BandScale;o.domain=this.data[0].map((g,m)=>m),o.range=[a,i],o.paddingInner=.5,o.paddingOuter=0;const n=o.bandwidth,{processedData:l,max:c}=accumulateData(this.data),h=new import_ag_charts_community24._Scene.LinearScale;h.domain=[0,Math.ceil(c*1.5)];const d=3/2*Math.PI,u=d+2*Math.PI;h.range=[d,u];const p=this.size/2;this.series=l.map((g,m)=>{const C=m<0?void 0:l[m-1],f=new import_ag_charts_community24._Scene.Group({zIndex:1e6}),v=g.map((S,y)=>{const w=C?.[y]??0,x=o.convert(y),b=x-n,T=h.convert(w),M=h.convert(S),P=new import_ag_charts_community24._Scene.Sector;return P.centerX=p,P.centerY=p,P.innerRadius=b,P.outerRadius=x,P.startAngle=T,P.endAngle=M,P.stroke=void 0,P.strokeWidth=0,P});return f.append(v),f}),this.root.append(this.series),this.updateColors(t,s)}updateColors(e,t){this.series.forEach((s,i)=>{for(const r of s.children())r.fill=e[i%e.length],r.stroke=t[i%t.length]})}};MiniRadialBar.chartType="radialBar";var MiniRadarLine=class extends MiniChartWithPolarAxes{constructor(e,t,s){super(e,"radarLineTooltip"),this.markerSize=4,this.data=[[8,7,8,7,8,8,7,8],[6,8,5,10,6,7,4,6],[0,3,3,5,4,4,2,0]],this.showRadiusAxisLine=!1;const i=(this.size-this.padding*2)/2,r=0,{paths:a,markers:o}=createPolarPaths(this.root,this.data,this.size,i,r,this.markerSize);this.lines=a,this.markers=o,this.updateColors(t,s)}updateColors(e,t){this.lines.forEach((s,i)=>{const r=this.data[i].length;s.stroke=e[i];const a=i*r,o=a+r;this.markers.slice(a,o).forEach(l=>{l.stroke=t[i],l.fill=e[i]})})}};MiniRadarLine.chartType="radarLine";var MiniRadarArea=class extends MiniChartWithPolarAxes{constructor(e,t,s){super(e,"radarAreaTooltip"),this.data=[[8,10,5,7,4,1,5,8],[1,1,2,7,7,8,10,1],[4,5,9,9,4,2,3,4]],this.showRadiusAxisLine=!1;const i=(this.size-this.padding*2)/2,r=i-this.size*.3;this.areas=createPolarPaths(this.root,this.data,this.size,i,r).paths,this.updateColors(t,s)}updateColors(e,t){this.areas.forEach((s,i)=>{s.fill=e[i],s.stroke=t[i]})}};MiniRadarArea.chartType="radarArea";var MiniNightingale=class extends MiniChartWithPolarAxes{constructor(e,t,s){super(e,"nightingaleTooltip"),this.data=[[6,10,9,8,7,8],[4,6,5,4,5,5],[3,5,4,3,4,7]],this.showRadiusAxisLine=!1;const i=(this.size-this.padding*2)/2,r=new import_ag_charts_community25._Scene.BandScale;r.domain=this.data[0].map((h,d)=>d),r.range=[-Math.PI,Math.PI],r.paddingInner=0,r.paddingOuter=0;const a=r.bandwidth*.7,{processedData:o,max:n}=accumulateData(this.data),l=new import_ag_charts_community25._Scene.LinearScale;l.domain=[0,n],l.range=[0,i];const c=this.size/2;this.series=o.map((h,d)=>{const u=d<0?void 0:o[d-1],p=new import_ag_charts_community25._Scene.Group({zIndex:1e6}),g=h.map((m,C)=>{const f=u?.[C],v=l.convert(m),S=l.convert(f??0),y=r.convert(C),w=y+a,x=new import_ag_charts_community25._Scene.Sector;return x.centerX=c,x.centerY=c,x.innerRadius=S,x.outerRadius=v,x.startAngle=y,x.endAngle=w,x.stroke=void 0,x.strokeWidth=0,x});return p.append(g),p}),this.root.append(this.series),this.updateColors(t,s)}updateColors(e,t){this.series.forEach((s,i)=>{for(const r of s.children())r.fill=e[i%e.length],r.stroke=t[i%t.length]})}};MiniNightingale.chartType="nightingale";var MiniRangeBar=class extends MiniChartWithAxes{constructor(e,t,s){super(e,"rangeBarTooltip");const i=[3,3.5,3];this.bars=this.createRangeBar(this.root,i,this.size,this.padding,"vertical"),this.updateColors(t,s)}updateColors(e,t){this.bars.forEach((s,i)=>{s.fill=e[i],s.stroke=t[i]})}createRangeBar(e,t,s,i,r){const a=r==="horizontal",o=2*i,n=new import_ag_charts_community26._Scene.BandScale;n.domain=t.map((p,g)=>g),n.range=[i,s-i],n.paddingInner=.3,n.paddingOuter=.3;const l=.7,c=1.3,h=new import_ag_charts_community26._Scene.LinearScale;h.domain=[t.reduce((p,g)=>Math.min(p,g),1/0)*l,t.reduce((p,g)=>Math.max(p,g),0)*c],h.range=[o,s-o];const d=n.bandwidth,u=t.map((p,g)=>{const[m,C]=[p*l,p*c],f=n.convert(g),v=h.convert(m),S=h.convert(C)-v,y=new import_ag_charts_community26._Scene.Rect;return y.x=a?v:f,y.y=a?f:v,y.width=a?S:d,y.height=a?d:S,y.strokeWidth=0,y.crisp=!0,y});return e.append(u),u}};MiniRangeBar.chartType="rangeBar";var MiniRangeArea=class extends MiniChartWithAxes{constructor(e,t,s){super(e,"rangeAreaTooltip");const i=4,r=[zigzag({offset:.375*i,length:i,pattern:{low:3,high:5,period:i}}),zigzag({offset:.375*i,length:i,pattern:{low:2.25,high:4.25,period:i}}),zigzag({offset:.75*i,length:i,pattern:{low:2.5,high:4.5,period:i}})],a=1.75,o=r.map(c=>c.map(([h,d])=>({x:h,low:d-.5*a,high:d+.5*a}))),{lines:n,areas:l}=this.createRangeArea(this.root,o,this.size,this.padding);this.lines=n,this.areas=l,this.updateColors(t,s)}updateColors(e,t){e=swapArrayItems(e,1,2),t=swapArrayItems(t,1,2),this.lines.forEach(([s,i],r)=>{s.fill=void 0,s.stroke=t[r],i.fill=void 0,i.stroke=t[r]}),this.areas.forEach((s,i)=>{s.fill=e[i]})}createRangeArea(e,t,s,i){const r=t.reduce((g,m)=>m.reduce((C,{x:f})=>Math.min(C,f),g),1/0),a=t.reduce((g,m)=>m.reduce((C,{x:f})=>Math.max(C,f),g),-1/0),o=t.reduce((g,m)=>m.reduce((C,{low:f})=>Math.min(C,f),g),1/0),n=t.reduce((g,m)=>m.reduce((C,{high:f})=>Math.max(C,f),g),-1/0),l=new import_ag_charts_community27._Scene.LinearScale;l.domain=[r,a],l.range=[i,s-i];const c=2*i,h=new import_ag_charts_community27._Scene.LinearScale;h.domain=[o,n],h.range=[s-c,c];const d=[],u=[];return t.map(g=>{const m=new import_ag_charts_community27._Scene.Path,C=new import_ag_charts_community27._Scene.Path,f=new import_ag_charts_community27._Scene.Path;return d.push([m,C]),u.push(f),m.strokeWidth=0,C.strokeWidth=0,f.strokeWidth=0,f.fillOpacity=.8,m.path.clear(),C.path.clear(),f.path.clear(),g.map((v,S)=>{const{x:y,low:w,high:x}=v,b=l.convert(y),T=h.convert(w),M=h.convert(x),P=S>0?"lineTo":"moveTo";return m.path[P](b,M),C.path[P](b,T),f.path[P](b,M),[b,T]})}).forEach((g,m)=>{const C=g.length-1,f=u[m];for(let v=C;v>=0;v--){const[S,y]=g[v];f.path.lineTo(S,y)}}),e.append(u.concat(...d)),{lines:d,areas:u}}};MiniRangeArea.chartType="rangeArea";function zigzag(e){const{offset:t,length:s,pattern:i}=e,r=n(t,s,i),a=0,o=s;return(r.length===0||r[0][0]!==a)&&r.unshift(l(a,t,i)),r[r.length-1][0]!==o&&r.push(l(o,t,i)),r;function n(h,d,u){const{period:p}=u,g=h/p,C=[0,.5].map(v=>v-g).map(getRemainderAbs).sort((v,S)=>v-S);return Array.from({length:Math.floor(C.length*(p/d))},(v,S)=>C[S%C.length]+Math.floor(S/C.length)).map(v=>v*p).map(v=>l(v,h,u))}function l(h,d,u){return[h,c(d+h,u)]}function c(h,d){const{low:u,high:p,period:g}=d,m=getRemainderAbs(h/g),C=m>.5?1-2*(m-.5):2*m;return u+(p-u)*C}}function getRemainderAbs(e){const t=e%1;return t<0?t+1:t}function swapArrayItems(e,t,s){const i=[...e],r=i[t];return i[t]=i[s],i[s]=r,i}var MiniBoxPlot=class extends MiniChartWithAxes{constructor(e,t,s,i,r){super(e,"boxPlotTooltip");const a=this.padding,o=this.size,n=[11,11.5,10.5],l=1.2,c=1.1,h=.9,d=.8,u=new import_ag_charts_community28._Scene.LinearScale;u.domain=[n.reduce((C,f)=>Math.min(C,f),1/0)*d,n.reduce((C,f)=>Math.max(C,f),0)*l],u.range=[o-1.5*a,a];const p=new import_ag_charts_community28._Scene.BandScale;p.domain=n.map((C,f)=>f),p.range=[a,o-a],p.paddingInner=.4,p.paddingOuter=.2;const g=Math.round(p.bandwidth),m=Math.round(p.bandwidth/2);this.boxPlotGroups=n.map((C,f)=>{const[v,S,y,w]=[C*d,C*h,C*c,C*l],x=Math.round(u.convert(y)),b=Math.round(p.convert(f)),T=Math.round(b+g),M=Math.round(u.convert(S)),P=Math.round(u.convert(v)),R=Math.round(u.convert(C)),D=Math.round(u.convert(w)),F=b+m,A=new import_ag_charts_community28._Scene.Group,G=new import_ag_charts_community28._Scene.Rect,L=new import_ag_charts_community28._Scene.Line,N=new import_ag_charts_community28._Scene.Line,k=new import_ag_charts_community28._Scene.Line,E=new import_ag_charts_community28._Scene.Line,I=new import_ag_charts_community28._Scene.Line;return G.x=b,G.y=x,G.width=g,G.height=M-x,G.strokeWidth=1,G.strokeOpacity=.75,G.crisp=!0,this.setLineProperties(L,b,T,R,R),this.setLineProperties(N,F,F,D,x),this.setLineProperties(k,F,F,P,M),this.setLineProperties(E,b,T,D,D),this.setLineProperties(I,b,T,P,P),A.append([G,L,N,k,E,I]),A}),this.updateColors(t,s,i,r),this.root.append(this.boxPlotGroups)}updateColors(e,t,s,i){const r=s?.get(import_ag_charts_community28._Theme.DEFAULT_BACKGROUND_COLOUR),a=(Array.isArray(r)?r[0]:r)??"white";this.boxPlotGroups.forEach((o,n)=>{for(const l of o.children()){const c=e[n%e.length];l.fill=i?c:import_ag_charts_community28._Util.interpolateColor(c,a)(.7),l.stroke=t[n%t.length]}})}setLineProperties(e,t,s,i,r){e.x1=t,e.x2=s,e.y1=i,e.y2=r,e.strokeOpacity=.75}};MiniBoxPlot.chartType="boxPlot";var MiniTreemap=class extends MiniChart{constructor(e,t,s,i,r){super(e,"treemapTooltip");const{size:a,padding:o}=this,n=[[1,1],[3,2,1]],c=n.length%2===0?.3:.2,h=[o,a-o],d=n.length,u=d*(d+1)/2,p=c/(d-1),g=h[1]-h[0],m=g-c;let C=h[0];this.rects=n.reduce((v,S,y)=>{v??(v=[]);const w=(d-y)/u,x=m*w,b=S.length,T=S.reduce((F,A)=>F+=A,0),M=c/(b-1||1),P=b>1?g-c:g;let R=h[0];const D=S.map(F=>{const A=new import_ag_charts_community29._Scene.Rect,G=P*F/T;return A.x=C,A.y=R,A.width=x,A.height=G,A.strokeWidth=.75,A.crisp=!0,R+=G+M,A});return C+=x+p,v.push(...D),v},[]),this.updateColors(t,s,i,r);const f=new import_ag_charts_community29._Scene.Group;f.setClipRect(new import_ag_charts_community29._Scene.BBox(o,o,a-o,a-o)),f.append(this.rects),this.root.append(f)}updateColors(e,t,s,i){const r=s?.get(import_ag_charts_community29._Theme.DEFAULT_BACKGROUND_COLOUR),a=(Array.isArray(r)?r[0]:r)??"white";this.rects.forEach((o,n)=>{o.fill=e[n%t.length],o.stroke=i?t[n%t.length]:a})}};MiniTreemap.chartType="treemap";var MiniSunburst=class extends MiniChartWithPolarAxes{constructor(e,t,s){super(e,"sunburstTooltip"),this.data=[[[],[]],[[],[]],[[],[]]],this.angleOffset=-Math.PI/2,this.innerRadiusRatio=0,this.showRadiusAxisLine=!1,this.showAngleAxisLines=!1;const{data:i,size:r,padding:a,angleOffset:o,innerRadiusRatio:n}=this,l=(r-a*2)/2,c=[o+0,o+2*Math.PI],h=Math.abs(c[1]-c[0]),d=[l*n,l],u=Math.abs(d[1]-d[0]);let p=0;const g=(S,y)=>{S.forEach(w=>{const x=y+1;p=Math.max(p,x),g(w,x)})};g(i,0);const m=u/p,C=this.size/2,f=c[0];this.series=[];const v=(S,y,w,x,b)=>{if(!Array.isArray(S))return;const M=y+1;let P=w;S.forEach((R,D,F)=>{let A=b;A||(A=new import_ag_charts_community30._Scene.Group,this.series.push(A));const G=d[0]+y*m,L=d[0]+M*m,N=1/F.length,k=P,E=k+x*N,I=new import_ag_charts_community30._Scene.Sector;I.centerX=C,I.centerY=C,I.innerRadius=G,I.outerRadius=L,I.startAngle=k,I.endAngle=E,I.stroke=void 0,I.strokeWidth=0,I.inset=.75,P=E,A.append(I),v(R,M,k,Math.abs(E-k),A)})};v(i,0,f,h),this.root.append(this.series),this.updateColors(t,s)}updateColors(e,t){this.series.forEach((s,i)=>{for(const r of s.children())r.fill=e[i%e.length],r.stroke=t[i%t.length]})}};MiniSunburst.chartType="sunburst";var MiniHeatmap=class extends MiniChart{constructor(e,t,s,i,r){super(e,"heatmapTooltip");const{size:a,padding:o}=this,n=3,l=Array.from({length:n},(m,C)=>Array.from({length:n},(f,v)=>v)),c=l.map((m,C)=>C),h=new import_ag_charts_community31._Scene.BandScale;h.domain=c,h.range=[o,a-o],h.paddingInner=.01,h.paddingOuter=.1;const d=new import_ag_charts_community31._Scene.BandScale;d.domain=c,d.range=[o,a-o],d.paddingInner=.01,d.paddingOuter=.1;const u=h.bandwidth??0,p=d.bandwidth??0;this.rects=l.reduce((m,C,f)=>{m??(m=[]);const v=C.map((S,y)=>{const w=new import_ag_charts_community31._Scene.Rect;return w.x=h.convert(f),w.y=d.convert(y),w.width=u,w.height=p,w.strokeWidth=0,w.crisp=!0,w});return m.push(...v),m},[]),this.updateColors(t,s,i,r);const g=new import_ag_charts_community31._Scene.Group;g.setClipRect(new import_ag_charts_community31._Scene.BBox(o,o,a-o,a-o)),g.append(this.rects),this.root.append(g)}updateColors(e,t,s,i){const r=s?.get(import_ag_charts_community31._Theme.DEFAULT_DIVERGING_SERIES_COLOR_RANGE),a=s?.get(import_ag_charts_community31._Theme.DEFAULT_BACKGROUND_COLOUR),o=(Array.isArray(a)?a[0]:a)??"white",n=i?[e[0],e[1]]:r,l=i?t[0]:o,c=import_ag_charts_community31._Util.interpolateColor(n[0],n[1]);this.rects.forEach((h,d)=>{h.fill=c(d*.2),h.stroke=l})}};MiniHeatmap.chartType="heatmap";var MiniWaterfall=class extends MiniChartWithAxes{constructor(e,t,s,i,r){super(e,"waterfallTooltip"),this.data=[4,3,-3,6,-3],this.bars=this.createWaterfall(this.root,this.data,this.size,this.padding,"vertical").bars,this.updateColors(t,s,i,r)}updateColors(e,t,s,i){const{data:r}=this,a={fill:i?e[0]:s?.get(import_ag_charts_community32._Theme.PALETTE_ALT_UP_FILL),stroke:i?t[0]:s?.get(import_ag_charts_community32._Theme.PALETTE_ALT_UP_STROKE)},o={fill:i?e[1]:s?.get(import_ag_charts_community32._Theme.PALETTE_ALT_DOWN_FILL),stroke:i?t[1]:s?.get(import_ag_charts_community32._Theme.PALETTE_ALT_DOWN_STROKE)};this.bars.forEach((n,l)=>{const c=r[l]>=0;n.fill=c?a.fill:o.fill,n.stroke=c?a.stroke:o.stroke})}createWaterfall(e,t,s,i,r){const a=2*i,{processedData:o,min:n,max:l}=accumulateData(t.map(v=>[v])),c=o.reduce((v,S)=>v.concat(S),[]),h=new import_ag_charts_community32._Scene.LinearScale;h.domain=[Math.min(n,0),l],h.range=[s-a,a];const d=new import_ag_charts_community32._Scene.BandScale;d.domain=t.map((v,S)=>S),d.range=[i,s-i],d.paddingInner=.2,d.paddingOuter=.3;const u=d.bandwidth,p=new import_ag_charts_community32._Scene.Path;p.stroke="#575757",p.strokeWidth=0;const g=Math.floor(p.strokeWidth)%2/2,m=p.path;m.clear();const C=r==="horizontal",f=c.map((v,S)=>{const y=S>0?c[S-1]:0,x=t[S]>0,b=Math.round(h.convert(v)),T=Math.round(h.convert(y)),M=(x?b:T)-g,P=(x?T:b)+g,R=Math.abs(P-M),D=d.convert(S),F=new import_ag_charts_community32._Scene.Rect;F.x=C?M:D,F.y=C?D:M,F.width=C?R:u,F.height=C?u:R,F.strokeWidth=0,F.crisp=!0;const A=b+g,G=T+g;if(S>0){const k=C?G:F.x,E=C?F.y:G;m.lineTo(k,E)}const L=C?A:F.x,N=C?F.y:A;return m.moveTo(L,N),F});return e.append([p,...f]),{bars:f}}};MiniWaterfall.chartType="waterfall";var MiniColumnLineCombo=class extends MiniChartWithAxes{constructor(e,t,s){super(e,"columnLineComboTooltip"),this.columnData=[3,4],this.lineData=[[5,4,6,5,4]];const{root:i,columnData:r,lineData:a,size:o,padding:n}=this;this.columns=createColumnRects({stacked:!1,root:i,data:r,size:o,padding:n,xScaleDomain:[0,1],yScaleDomain:[0,4],xScalePadding:.5}),i.append(this.columns),this.lines=createLinePaths(i,a,o,n),this.updateColors(t,s)}updateColors(e,t){this.columns.forEach((s,i)=>{s.fill=e[i],s.stroke=t[i]}),this.lines.forEach((s,i)=>{s.stroke=e[i+2]})}};MiniColumnLineCombo.chartType="columnLineCombo";var MiniAreaColumnCombo=class extends MiniChartWithAxes{constructor(e,t,s){super(e,"areaColumnComboTooltip"),this.columnData=[3,4.5],this.areaData=[[5,4,6,5,4]];const{root:i,columnData:r,areaData:a,size:o,padding:n}=this;this.columns=createColumnRects({stacked:!1,root:i,data:r,size:o,padding:n,xScaleDomain:[0,1],yScaleDomain:[0,6],xScalePadding:.5});const l=new import_ag_charts_community33._Scene.BandScale;l.range=[n,o-n],l.domain=[0,1,2,3,4],l.paddingInner=1,l.paddingOuter=0;const c=new import_ag_charts_community33._Scene.LinearScale;c.range=[o-n,n],c.domain=[0,6];const h=[],d=c.convert(0),u=l.convert(0);a.forEach((p,g)=>{const m=h[g]||(h[g]=[]);p.forEach((f,v)=>{const S=f,y=v,w=l.convert(y),x=c.convert(S);m[v]={x:w,y:x}});const C=l.convert(p.length-1);h[g].push({x:C,y:d},{x:u,y:d})}),this.areas=h.map(p=>{const g=new import_ag_charts_community33._Scene.Path;g.strokeWidth=0,g.fillOpacity=.8;const m=g.path;return p.forEach((C,f)=>m[f>0?"lineTo":"moveTo"](C.x,C.y)),g}),i.append(this.areas),i.append([].concat.apply([],this.columns)),this.updateColors(t,s)}updateColors(e,t){this.areas.forEach((s,i)=>{s.fill=e[i],s.stroke=t[i]}),this.columns.forEach((s,i)=>{s.fill=e[i+1],s.stroke=t[i+1]})}};MiniAreaColumnCombo.chartType="areaColumnCombo";var MiniCustomCombo=class extends MiniChart{constructor(e,t,s){super(e,"customComboTooltip"),this.columnData=[3,4],this.lineData=[[5,4,6,5,4]];const{root:i,columnData:r,lineData:a,size:o,padding:n}=this;this.columns=createColumnRects({stacked:!1,root:i,data:r,size:o,padding:n,xScaleDomain:[0,1],yScaleDomain:[0,4],xScalePadding:.5}),i.append(this.columns),this.lines=createLinePaths(i,a,o,n);const l="grey",c=3,h=new import_ag_charts_community34._Scene.Line;h.x1=n,h.y1=n,h.x2=n,h.y2=o-n+c,h.stroke=l;const d=new import_ag_charts_community34._Scene.Line;d.x1=n-c+1,d.y1=o-n,d.x2=o-n+1,d.y2=o-n,d.stroke=l;const u=new import_ag_charts_community34._Scene.Path;this.buildPenIconPath(u),u.fill="whitesmoke",u.stroke="darkslategrey",u.strokeWidth=1,i.append([d,h,u]),this.updateColors(t,s)}updateColors(e,t){this.columns.forEach((s,i)=>{s.fill=e[i],s.stroke=t[i]}),this.lines.forEach((s,i)=>{s.stroke=e[i+2]})}buildPenIconPath(e){const{path:t}=e;t.moveTo(25.76,43.46),t.lineTo(31.27,48.53),t.moveTo(49.86,22),t.lineTo(49.86,22),t.cubicCurveTo(49.01994659053345,21.317514933510974,47.89593834348529,21.09645997825817,46.86,21.41),t.lineTo(46.86,21.41),t.cubicCurveTo(45.55460035985361,21.77260167850787,44.38777081121966,22.517979360321792,43.51,23.55),t.lineTo(25.51,43.8),t.lineTo(25.43,43.89),t.lineTo(23.01,51.89),t.lineTo(22.83,52.46),t.lineTo(31.02,48.86),t.lineTo(49.02,28.52),t.lineTo(49.02,28.52),t.cubicCurveTo(49.940716461596224,27.521914221246085,50.54302631059587,26.2720342455763,50.75,24.93),t.lineTo(50.75,24.93),t.cubicCurveTo(50.95363374988308,23.866379846512814,50.62080640232334,22.77066734274871,49.86,22),t.closePath(),t.moveTo(41.76,25.5),t.lineTo(47.34,30.5),t.moveTo(40.74,26.65),t.lineTo(46.25,31.71)}};MiniCustomCombo.chartType="customCombo";var miniChartMapping={columnGroup:{column:{range:!0,pivot:!0,enterprise:!1,icon:MiniColumn},stackedColumn:{range:!0,pivot:!0,enterprise:!1,icon:MiniStackedColumn},normalizedColumn:{range:!0,pivot:!0,enterprise:!1,icon:MiniNormalizedColumn}},barGroup:{bar:{range:!0,pivot:!0,enterprise:!1,icon:MiniBar},stackedBar:{range:!0,pivot:!0,enterprise:!1,icon:MiniStackedBar},normalizedBar:{range:!0,pivot:!0,enterprise:!1,icon:MiniNormalizedBar}},pieGroup:{pie:{range:!0,pivot:!0,enterprise:!1,icon:MiniPie},donut:{range:!0,pivot:!0,enterprise:!1,icon:MiniDonut},doughnut:{range:!0,pivot:!0,enterprise:!1,icon:MiniDonut}},lineGroup:{line:{range:!0,pivot:!0,enterprise:!1,icon:MiniLine}},scatterGroup:{scatter:{range:!0,pivot:!0,enterprise:!1,icon:MiniScatter},bubble:{range:!0,pivot:!0,enterprise:!1,icon:MiniBubble}},areaGroup:{area:{range:!0,pivot:!0,enterprise:!1,icon:MiniArea},stackedArea:{range:!0,pivot:!0,enterprise:!1,icon:MiniStackedArea},normalizedArea:{range:!0,pivot:!0,enterprise:!1,icon:MiniNormalizedArea}},polarGroup:{radarLine:{range:!0,pivot:!1,enterprise:!0,icon:MiniRadarLine},radarArea:{range:!0,pivot:!1,enterprise:!0,icon:MiniRadarArea},nightingale:{range:!0,pivot:!1,enterprise:!0,icon:MiniNightingale},radialColumn:{range:!0,pivot:!1,enterprise:!0,icon:MiniRadialColumn},radialBar:{range:!0,pivot:!1,enterprise:!0,icon:MiniRadialBar}},statisticalGroup:{boxPlot:{range:!0,pivot:!1,enterprise:!0,icon:MiniBoxPlot},histogram:{range:!0,pivot:!1,enterprise:!1,icon:MiniHistogram},rangeBar:{range:!0,pivot:!1,enterprise:!0,icon:MiniRangeBar},rangeArea:{range:!0,pivot:!1,enterprise:!0,icon:MiniRangeArea}},hierarchicalGroup:{treemap:{range:!0,pivot:!0,enterprise:!0,icon:MiniTreemap},sunburst:{range:!0,pivot:!0,enterprise:!0,icon:MiniSunburst}},specializedGroup:{heatmap:{range:!0,pivot:!1,enterprise:!0,icon:MiniHeatmap},waterfall:{range:!0,pivot:!1,enterprise:!0,icon:MiniWaterfall}},combinationGroup:{columnLineCombo:{range:!0,pivot:!0,enterprise:!1,icon:MiniColumnLineCombo},areaColumnCombo:{range:!0,pivot:!0,enterprise:!1,icon:MiniAreaColumnCombo},customCombo:{range:!0,pivot:!0,enterprise:!1,icon:MiniCustomCombo}}},DEFAULT_CHART_GROUPS={columnGroup:["column","stackedColumn","normalizedColumn"],barGroup:["bar","stackedBar","normalizedBar"],pieGroup:["pie","donut"],lineGroup:["line"],scatterGroup:["scatter","bubble"],areaGroup:["area","stackedArea","normalizedArea"],polarGroup:["radarLine","radarArea","nightingale","radialColumn","radialBar"],statisticalGroup:["boxPlot","histogram","rangeBar","rangeArea"],hierarchicalGroup:["treemap","sunburst"],specializedGroup:["heatmap","waterfall"],combinationGroup:["columnLineCombo","areaColumnCombo","customCombo"]},MiniChartsContainer=class extends import_core157.Component{constructor(e,t,s,i,r,a=DEFAULT_CHART_GROUPS){super('<div class="ag-chart-settings-mini-wrapper"></div>'),this.wrappers=new Map,this.chartController=e,this.fills=t,this.strokes=s,this.themeTemplateParameters=i,this.isCustomTheme=r,this.chartGroups={...a}}wireBeans(e){this.chartTranslationService=e.chartTranslationService}postConstruct(){!this.chartController.customComboExists()&&this.chartGroups.combinationGroup&&(this.chartGroups.combinationGroup=this.chartGroups.combinationGroup.filter(a=>a!=="customCombo"));const e=this.getGui(),t=this.chartController.isEnterprise(),s=this.chartController.isPivotChart(),i=!s,r=Object.keys(this.chartGroups).map(a=>{const o=a in miniChartMapping?miniChartMapping[a]:void 0;if(!o)return(0,import_core157._warnOnce)(`invalid chartGroupsDef config '${a}'`),null;const l=(this.chartGroups[a]??[]).map(c=>{const h=c in o?o[c]:void 0;return h?!t&&h.enterprise?null:i&&h.range||s&&h.pivot?h:null:((0,import_core157._warnOnce)(`invalid chartGroupsDef config '${a}.${c}'`),null)}).filter(c=>c!=null);return l.length===0?null:{label:this.chartTranslationService.translate(a),items:l}}).filter(a=>a!=null);for(const{label:a,items:o}of r){const n=this.createBean(new AgGroupComponent({title:a,suppressEnabledCheckbox:!0,enabled:!0,suppressOpenCloseIcons:!0,cssIdentifier:"charts-settings",direction:"horizontal",suppressKeyboardNavigation:!0}));for(const l of o){const c=l.icon,h=document.createElement("div");h.classList.add("ag-chart-mini-thumbnail"),h.setAttribute("tabindex","0"),h.setAttribute("role","button");const d=c.chartType,u=()=>{this.chartController.setChartType(d),this.updateSelectedMiniChart()};this.addManagedListeners(h,{click:u,keydown:p=>{(p.key==import_core157.KeyCode.ENTER||p.key===import_core157.KeyCode.SPACE)&&(p.preventDefault(),u())}}),this.wrappers.set(d,h),this.createBean(new c(h,this.fills,this.strokes,this.themeTemplateParameters,this.isCustomTheme)),n.addItem(h)}e.appendChild(n.getGui())}this.updateSelectedMiniChart()}updateSelectedMiniChart(){const e=this.chartController.getChartType();this.wrappers.forEach((t,s)=>{const i=s===e;t.classList.toggle("ag-selected",i);const r=this.chartTranslationService.translate(getFullChartNameTranslationKey(s)),a=i?`${r}. ${this.chartTranslationService.translate("ariaChartSelected")}`:r;(0,import_core157._setAriaLabel)(t,a)})}destroy(){this.wrappers.clear(),super.destroy()}},ChartSettingsPanel=class extends import_core156.Component{constructor(e){super(`<div class="ag-chart-settings-wrapper">
|
|
311
311
|
<div data-ref="eMiniChartsContainer" class="ag-chart-settings-mini-charts-container ag-scrollable-container"></div>
|
|
312
312
|
<div data-ref="eNavBar" class="ag-chart-settings-nav-bar">
|
|
313
313
|
<div data-ref="ePrevBtn" class="ag-chart-settings-prev">
|
|
@@ -329,48 +329,48 @@ ${apiError("readText")}`),this.navigatorApiFailed=!0,this.pasteFromClipboardLega
|
|
|
329
329
|
`;let a=!1;if(t==="")return[[""]];for(let o=0,n=0,l=0;l<t.length;l++){const c=t[l-1],h=t[l],d=t[l+1],u=()=>{i[o]||(i[o]=[]),i[o][n]||(i[o][n]="")};if(u(),h==='"'&&(a?d==='"'?(i[o][n]+='"',l++):a=!1:(c===void 0||c===s||r(c))&&(a=!0)),!a&&h!=='"'){if(h===s){n++,u();continue}else if(r(h)){n=0,o++,u(),h==="\r"&&d===`
|
|
330
330
|
`&&l++;continue}}i[o][n]+=h}return i}doPasteOperation(t){const s="clipboard";this.eventService.dispatchEvent({type:"pasteStart",source:s});let i;if(this.clientSideRowModel){const l=this.gos.get("aggregateOnlyChangedColumns");i=new import_core163.ChangedPath(l,this.clientSideRowModel.getRootNode())}const r={},a=[],o=this.focusService.getFocusedCell();t(r,a,o,i);const n=[...a];i&&(this.clientSideRowModel.doAggregate(i),i.forEachChangedNodeDepthFirst(l=>{n.push(l)})),this.rowRenderer.refreshCells({rowNodes:n}),this.dispatchFlashCells(r),this.fireRowChanged(a),this.refocusLastFocusedCell(),this.eventService.dispatchEvent({type:"pasteEnd",source:s})}pasteIntoActiveRange(t,s,i,r,a){const o=this.getRangeSize(t)%s.length!=0;let n=0,l=0;const c=(h,d,u,p)=>{if(p-n>=s.length){if(o)return;n+=l,l=0}const m=s[p-n];r.push(d);const C=this.gos.getCallback("processCellFromClipboard");u.forEach((f,v)=>{if(!f.isCellEditable(d)||f.isSuppressPaste(d))return;v>=m.length&&(v=v%m.length);const S=this.processCell(d,f,m[v],EXPORT_TYPE_DRAG_COPY,C,!0);d.setDataValue(f,S,SOURCE_PASTE),a&&a.addParentNode(d.parent,[f]);const{rowIndex:y,rowPinned:w}=h,x=this.cellPositionUtils.createIdFromValues({rowIndex:y,column:f,rowPinned:w});i[x]=!0}),l++};this.iterateActiveRanges(!1,c)}getDisplayedColumnsStartingAt(t){let s=t;const i=[];for(;s!=null;)i.push(s),s=this.visibleColsService.getColAfter(s);return i}pasteStartingFromFocusedCell(t,s,i,r,a){if(!r)return;const o={rowIndex:r.rowIndex,rowPinned:r.rowPinned},n=this.getDisplayedColumnsStartingAt(r.column);this.isPasteSingleValueIntoRange(t)?this.pasteSingleValueIntoRange(t,i,s,a):this.pasteMultipleValues(t,o,i,n,s,EXPORT_TYPE_CLIPBOARD,a)}isPasteSingleValueIntoRange(t){return this.hasOnlyOneValueToPaste(t)&&this.rangeService!=null&&!this.rangeService.isEmpty()}pasteSingleValueIntoRange(t,s,i,r){const a=t[0][0],o=(n,l,c)=>{s.push(l),c.forEach(h=>this.updateCellValue(l,h,a,i,EXPORT_TYPE_CLIPBOARD,r))};this.iterateActiveRanges(!1,o)}hasOnlyOneValueToPaste(t){return t.length===1&&t[0].length===1}copyRangeDown(){if(!this.rangeService||this.rangeService.isEmpty())return;const t=[],s=(i,r,a,o)=>{const n=this.gos.getCallback("processCellForClipboard"),l=this.gos.getCallback("processCellFromClipboard"),c=(h,d,u)=>{t.length?(r.push(d),u.forEach((p,g)=>{if(!p.isCellEditable(d)||p.isSuppressPaste(d))return;const m=this.processCell(d,p,t[g],EXPORT_TYPE_DRAG_COPY,l,!0);d.setDataValue(p,m,SOURCE_PASTE),o&&o.addParentNode(d.parent,[p]);const{rowIndex:C,rowPinned:f}=h,v=this.cellPositionUtils.createIdFromValues({rowIndex:C,column:p,rowPinned:f});i[v]=!0})):u.forEach(p=>{const g=this.processCell(d,p,this.valueService.getValue(p,d),EXPORT_TYPE_DRAG_COPY,n,!1,!0);t.push(g)})};this.iterateActiveRanges(!0,c)};this.doPasteOperation(s)}removeLastLineIfBlank(t){const s=(0,import_core163._last)(t);if(s&&s.length===1&&s[0]===""){if(t.length===1)return;(0,import_core163._removeFromArray)(t,s)}}fireRowChanged(t){this.gos.get("editType")==="fullRow"&&t.forEach(s=>{this.eventService.dispatchEvent({type:"rowValueChanged",node:s,data:s.data,rowIndex:s.rowIndex,rowPinned:s.rowPinned})})}pasteMultipleValues(t,s,i,r,a,o,n){let l=s;const c=this.clientSideRowModel!=null&&!this.gos.get("enableGroupEdit")&&!this.gos.get("treeData"),h=()=>{for(;;){if(!l)return null;const d=this.rowPositionUtils.getRowNode(l);if(l=this.cellNavigationService.getRowBelow({rowPinned:l.rowPinned,rowIndex:l.rowIndex}),d==null)return null;if(!(d.detail||d.footer||c&&d.group))return d}};t.forEach(d=>{const u=h();u&&(d.forEach((p,g)=>this.updateCellValue(u,r[g],p,a,o,n)),i.push(u))})}updateCellValue(t,s,i,r,a,o){if(!t||!s||!s.isCellEditable(t)||s.isSuppressPaste(t))return;const n=this.processCell(t,s,i,a,this.gos.getCallback("processCellFromClipboard"),!0);t.setDataValue(s,n,SOURCE_PASTE);const{rowIndex:l,rowPinned:c}=t,h=this.cellPositionUtils.createIdFromValues({rowIndex:l,column:s,rowPinned:c});r[h]=!0,o&&o.addParentNode(t.parent,[s])}copyToClipboard(t={}){this.copyOrCutToClipboard(t)}cutToClipboard(t={},s="api"){this.gos.get("suppressCutToClipboard")||(this.eventService.dispatchEvent({type:"cutStart",source:s}),this.copyOrCutToClipboard(t,!0),this.eventService.dispatchEvent({type:"cutEnd",source:s}))}copyOrCutToClipboard(t,s){let{includeHeaders:i,includeGroupHeaders:r}=t;i==null&&(i=this.gos.get("copyHeadersToClipboard")),r==null&&(r=this.gos.get("copyGroupHeadersToClipboard"));const a={includeHeaders:i,includeGroupHeaders:r},o=this.gos.get("rowSelection"),n=this.gos.get("cellSelection");let l=null;this.shouldCopyCells(n,o)?(this.copySelectedRangeToClipboard(a),l=0):this.shouldCopyRows(o)?(this.copySelectedRowsToClipboard(a),l=1):this.focusService.isAnyCellFocused()&&(this.copyFocusedCellToClipboard(a),l=2),s&&l!==null&&this.clearCellsAfterCopy(l)}shouldCopyCells(t,s){if(!this.rangeService||this.rangeService.isEmpty())return!1;if(t)return!(typeof s=="object"&&s.copySelectedRows&&!this.selectionService.isEmpty());{const i=this.gos.get("suppressCopySingleCellRanges");return!(!this.rangeService.isMoreThanOneCell()&&i)}}shouldCopyRows(t){return this.selectionService.isEmpty()?!1:t&&typeof t!="string"?t.copySelectedRows??!1:!this.gos.get("suppressCopyRowsToClipboard")}clearCellsAfterCopy(t){if(this.eventService.dispatchEvent({type:"keyShortcutChangedCellStart"}),t===0)this.rangeService.clearCellRangeCellValues({cellEventSource:"clipboardService"});else if(t===1)this.clearSelectedRows();else{const s=this.focusService.getFocusedCell();if(s==null)return;const i=this.rowPositionUtils.getRowNode(s);i&&this.clearCellValue(i,s.column)}this.eventService.dispatchEvent({type:"keyShortcutChangedCellEnd"})}clearSelectedRows(){const t=this.selectionService.getSelectedNodes(),s=this.visibleColsService.getAllCols();for(const i of t)for(const r of s)this.clearCellValue(i,r)}clearCellValue(t,s){if(!s.isCellEditable(t))return;const i=this.valueService.getDeleteValue(s,t);t.setDataValue(s,i,"clipboardService")}iterateActiveRanges(t,s,i){if(!this.rangeService||this.rangeService.isEmpty())return;const r=this.rangeService.getCellRanges();t?this.iterateActiveRange(r[0],s,i,!0):r.forEach((a,o)=>this.iterateActiveRange(a,s,i,o===r.length-1))}iterateActiveRange(t,s,i,r){if(!this.rangeService)return;let a=this.rangeService.getRangeStartRow(t);const o=this.rangeService.getRangeEndRow(t);i&&t.columns&&i(t.columns);let n=0,l=!1;for(;!l&&a!=null;){const c=this.rowPositionUtils.getRowNode(a);l=this.rowPositionUtils.sameRow(a,o),s(a,c,t.columns,n++,l&&r),a=this.cellNavigationService.getRowBelow(a)}}copySelectedRangeToClipboard(t={}){if(!this.rangeService||this.rangeService.isEmpty())return;const s=this.rangeService.areAllRangesAbleToMerge(),{data:i,cellsToFlash:r}=s?this.buildDataFromMergedRanges(this.rangeService,t):this.buildDataFromRanges(this.rangeService,t);this.copyDataToClipboard(i),this.dispatchFlashCells(r)}buildDataFromMergedRanges(t,s){const i=new Set,r=t.getCellRanges(),a=new Map,o=[],n={};r.forEach(d=>{d.columns.forEach(g=>i.add(g));const{rowPositions:u,cellsToFlash:p}=this.getRangeRowPositionsAndCellsToFlash(t,d);u.forEach(g=>{const m=`${g.rowIndex}-${g.rowPinned||"null"}`;a.get(m)||(a.set(m,!0),o.push(g))}),Object.assign(n,p)});const l=this.visibleColsService.getAllCols(),c=Array.from(i);return c.sort((d,u)=>{const p=l.indexOf(d),g=l.indexOf(u);return p-g}),{data:this.buildExportParams({columns:c,rowPositions:o,includeHeaders:s.includeHeaders,includeGroupHeaders:s.includeGroupHeaders}),cellsToFlash:n}}buildDataFromRanges(t,s){const i=t.getCellRanges(),r=[],a={};return i.forEach(o=>{const{rowPositions:n,cellsToFlash:l}=this.getRangeRowPositionsAndCellsToFlash(t,o);Object.assign(a,l),r.push(this.buildExportParams({columns:o.columns,rowPositions:n,includeHeaders:s.includeHeaders,includeGroupHeaders:s.includeGroupHeaders}))}),{data:r.join(`
|
|
331
331
|
`),cellsToFlash:a}}getRangeRowPositionsAndCellsToFlash(t,s){const i=[],r={},a=t.getRangeStartRow(s),o=t.getRangeEndRow(s);let n=a;for(;n&&(i.push(n),s.columns.forEach(l=>{const{rowIndex:c,rowPinned:h}=n,d=this.cellPositionUtils.createIdFromValues({rowIndex:c,column:l,rowPinned:h});r[d]=!0}),!this.rowPositionUtils.sameRow(n,o));)n=this.cellNavigationService.getRowBelow(n);return{rowPositions:i,cellsToFlash:r}}getCellsToFlashFromRowNodes(t){const s=this.visibleColsService.getAllCols(),i={};for(let r=0;r<t.length;r++){const{rowIndex:a,rowPinned:o}=t[r];if(a!=null)for(let n=0;n<s.length;n++){const l=s[n],c=this.cellPositionUtils.createIdFromValues({rowIndex:a,column:l,rowPinned:o});i[c]=!0}}return i}copyFocusedCellToClipboard(t={}){const s=this.focusService.getFocusedCell();if(s==null)return;const i=this.cellPositionUtils.createId(s),r={rowPinned:s.rowPinned,rowIndex:s.rowIndex},a=s.column,o=this.buildExportParams({columns:[a],rowPositions:[r],includeHeaders:t.includeHeaders,includeGroupHeaders:t.includeGroupHeaders});this.copyDataToClipboard(o),this.dispatchFlashCells({[i]:!0})}copySelectedRowsToClipboard(t={}){const{columnKeys:s,includeHeaders:i,includeGroupHeaders:r}=t,a=this.buildExportParams({columns:s,includeHeaders:i,includeGroupHeaders:r});this.copyDataToClipboard(a);const o=this.selectionService.getSelectedNodes()||[];this.dispatchFlashCells(this.getCellsToFlashFromRowNodes(o))}buildExportParams(t){const{columns:s,rowPositions:i,includeHeaders:r=!1,includeGroupHeaders:a=!1}=t,o={columnKeys:s,rowPositions:i,skipColumnHeaders:!r,skipColumnGroupHeaders:!a,suppressQuotes:!0,columnSeparator:this.getClipboardDelimiter(),onlySelected:!i,processCellCallback:this.gos.getCallback("processCellForClipboard"),processRowGroupCallback:n=>this.processRowGroupCallback(n),processHeaderCallback:this.gos.getCallback("processHeaderForClipboard"),processGroupHeaderCallback:this.gos.getCallback("processGroupHeaderForClipboard")};return this.csvCreator.getDataAsCsv(o,!0)}processRowGroupCallback(t){const{node:s,column:i}=t,r=this.gos.get("treeData"),a=this.gos.get("suppressGroupMaintainValueType");let n=(()=>{if(r||a||!i)return s.key;const c=s.groupData?.[i.getId()];return!c||!s.rowGroupColumn||s.rowGroupColumn.getColDef().useValueFormatterForExport===!1?c:this.valueService.formatValue(s.rowGroupColumn,s,c)??c})();if(t.node.footer){let c="";n&&n.length&&(c=` ${n}`),n=`Total${c}`}const l=this.gos.getCallback("processCellForClipboard");if(l){let c=s.rowGroupColumn;return!c&&s.footer&&s.level===-1&&(c=this.funcColsService.getRowGroupColumns()[0]),l({value:n,node:s,column:c,type:"clipboard",formatValue:h=>this.valueService.formatValue(c,s,h)??h,parseValue:h=>this.valueService.parseValue(c,s,h,this.valueService.getValue(c,s))})}return n}dispatchFlashCells(t){window.setTimeout(()=>{this.eventService.dispatchEvent({type:"flashCells",cells:t})},0)}processCell(t,s,i,r,a,o,n){return a?a({column:s,node:t,value:i,type:r,formatValue:c=>this.valueService.formatValue(s,t??null,c)??c,parseValue:c=>this.valueService.parseValue(s,t??null,c,this.valueService.getValue(s,t))}):o&&s.getColDef().useValueParserForImport!==!1?this.valueService.parseValue(s,t??null,i,this.valueService.getValue(s,t)):n&&s.getColDef().useValueFormatterForExport!==!1?this.valueService.formatValue(s,t??null,i)??i:i}copyDataToClipboard(t){const s=this.gos.getCallback("sendToClipboard");if(s){s({data:t});return}if(!this.gos.get("suppressClipboardApi")&&navigator.clipboard){navigator.clipboard.writeText(t).catch(r=>{(0,import_core163._warnOnce)(`${r}
|
|
332
|
-
${apiError("writeText")}`),this.copyDataToClipboardLegacy(t)});return}this.copyDataToClipboardLegacy(t)}copyDataToClipboardLegacy(t){this.executeOnTempElement(s=>{const i=(0,import_core163._getDocument)(this.gos),r=(0,import_core163._getActiveDomElement)(this.gos);s.value=t||" ",s.select(),s.focus({preventScroll:!0}),i.execCommand("copy")||(0,import_core163._warnOnce)("Browser did not allow document.execCommand('copy'). Ensure api.copySelectedRowsToClipboard() is invoked via a user event, i.e. button click, otherwise the browser will prevent it for security reasons."),r!=null&&r.focus!=null&&r.focus({preventScroll:!0})})}executeOnTempElement(t,s){const i=(0,import_core163._getDocument)(this.gos),r=i.createElement("textarea");r.style.width="1px",r.style.height="1px",r.style.top=i.documentElement.scrollTop+"px",r.style.left=i.documentElement.scrollLeft+"px",r.style.position="absolute",r.style.opacity="0";const a=this.gridCtrl.getGui();a.appendChild(r);try{t(r)}catch{(0,import_core163._warnOnce)("Browser does not support document.execCommand('copy') for clipboard operations")}s?window.setTimeout(()=>{s(r),a.removeChild(r)},100):a.removeChild(r)}getRangeSize(t){const s=t.getCellRanges();let i=0,r=0;return s.length>0&&(i=t.getRangeStartRow(s[0]).rowIndex,r=t.getRangeEndRow(s[0]).rowIndex),i-r+1}},VERSION5="32.2.2",ClipboardCoreModule=(0,import_core161._defineModule)({version:VERSION5,moduleName:`${import_core161.ModuleNames.ClipboardModule}-core`,beans:[ClipboardService],dependantModules:[EnterpriseCoreModule,import_csv_export.CsvExportModule]}),ClipboardApiModule=(0,import_core161._defineModule)({version:VERSION5,moduleName:`${import_core161.ModuleNames.ClipboardModule}-api`,apiFunctions:{copyToClipboard,cutToClipboard,copySelectedRowsToClipboard,copySelectedRangeToClipboard,copySelectedRangeDown,pasteFromClipboard},dependantModules:[ClipboardCoreModule]}),ClipboardModule=(0,import_core161._defineModule)({version:VERSION5,moduleName:import_core161.ModuleNames.ClipboardModule,dependantModules:[ClipboardCoreModule,ClipboardApiModule]}),import_core200=require("ag-grid-community"),import_core164=require("ag-grid-community"),import_core166=require("ag-grid-community"),import_core167=require("ag-grid-community"),import_core168=require("ag-grid-community"),import_core169=require("ag-grid-community"),import_core170=require("ag-grid-community"),import_core171=require("ag-grid-community"),import_core172=require("ag-grid-community"),import_core174=require("ag-grid-community"),import_core176=require("ag-grid-community"),import_core177=require("ag-grid-community"),import_core178=require("ag-grid-community"),import_core179=require("ag-grid-community"),import_core180=require("ag-grid-community"),import_core181=require("ag-grid-community"),import_core182=require("ag-grid-community"),import_core183=require("ag-grid-community"),import_core184=require("ag-grid-community"),import_core185=require("ag-grid-community"),import_core186=require("ag-grid-community"),import_core187=require("ag-grid-community"),defaultAggFuncNames={sum:"Sum",first:"First",last:"Last",min:"Min",max:"Max",count:"Count",avg:"Average"},AggFuncService=class extends import_core166.BeanStub{constructor(){super(...arguments),this.beanName="aggFuncService",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=aggSum,e.first=aggFirst,e.last=aggLast,e.min=aggMin,e.max=aggMax,e.count=aggCount,e.avg=aggAvg,this.initialised=!0}isAggFuncPossible(e,t){const s=this.getFuncNames(e),i=(0,import_core166._includes)(s,t),r=(0,import_core166._exists)(this.aggFuncsMap[t]);return i&&r}getDefaultFuncLabel(e){return defaultAggFuncNames[e]??e}getDefaultAggFunc(e){const t=e.getColDef().defaultAggFunc;if((0,import_core166._exists)(t)&&this.isAggFuncPossible(e,t))return t;if(this.isAggFuncPossible(e,"sum"))return"sum";const s=this.getFuncNames(e);return(0,import_core166._existsAndNotEmpty)(s)?s[0]:null}addAggFuncs(e){this.init(),(0,import_core166._iterateObject)(e,(t,s)=>{this.aggFuncsMap[t]=s})}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 aggSum(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 aggFirst(e){return e.values.length>0?e.values[0]:null}function aggLast(e){return e.values.length>0?(0,import_core166._last)(e.values):null}function aggMin(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 aggMax(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 aggCount(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 aggAvg(e){const{values:t}=e;let s=0,i=0;for(let o=0;o<t.length;o++){const n=t[o];let l=null;typeof n=="number"||typeof n=="bigint"?(l=n,i++):n!=null&&(typeof n.value=="number"||typeof n.value=="bigint")&&typeof n.count=="number"&&(l=n.value*(typeof n.value=="number"?n.count:BigInt(n.count)),i+=n.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}}}var AggregationStage=class extends import_core167.BeanStub{constructor(){super(...arguments),this.beanName="aggregationStage"}wireBeans(e){this.columnModel=e.columnModel,this.aggFuncService=e.aggFuncService,this.funcColsService=e.funcColsService,this.pivotResultColsService=e.pivotResultColsService,this.valueService=e.valueService}execute(e){const t=(0,import_core167._missingOrEmpty)(this.funcColsService.getValueColumns()),s=!this.gos.getCallback("getGroupRowAgg"),i=e.changedPath&&e.changedPath.isActive();if(t&&s&&i)return;const r=this.createAggDetails(e);this.recursivelyCreateAggData(r)}createAggDetails(e){const t=this.columnModel.isPivotActive(),s=this.funcColsService.getValueColumns(),i=t?this.funcColsService.getPivotColumns():[];return{alwaysAggregateAtRootLevel:this.gos.get("alwaysAggregateAtRootLevel"),groupIncludeTotalFooter:!!(0,import_core167._getGrandTotalRow)(this.gos),changedPath:e.changedPath,valueColumns:s,pivotColumns:i,filteredOnly:!this.isSuppressAggFilteredOnly(),userAggFunc:this.gos.getCallback("getGroupRowAgg")}}isSuppressAggFilteredOnly(){return(0,import_core167._getGroupAggFiltering)(this.gos)!==void 0||this.gos.get("suppressAggFilteredOnly")}recursivelyCreateAggData(e){const t=s=>{if(!s.hasChildren()){s.aggData&&s.setAggData(null);return}if(s.level===-1&&!e.groupIncludeTotalFooter){const a=!this.columnModel.isPivotMode();if(!e.alwaysAggregateAtRootLevel&&a){s.setAggData(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),e.setAggData(r),e.sibling&&e.sibling.setAggData(r)}aggregateRowNodeUsingValuesAndPivot(e){const t={},s=this.pivotResultColsService.getPivotResultCols()?.list??[];let i=!0;for(let r=0;r<s.length;r++){const a=s[r],o=a.getColDef();if(o.pivotTotalColumnIds!=null){i=!1;continue}const n=o.pivotKeys??[];let l;e.leafGroup?l=this.getValuesFromMappedSet(e.childrenMapped,n,o.pivotValueColumn):l=this.getValuesPivotNonLeaf(e,o.colId),t[o.colId]=this.aggregateValues(l,o.pivotValueColumn.getAggFunc(),o.pivotValueColumn,e,a)}if(!i)for(let r=0;r<s.length;r++){const a=s[r],o=a.getColDef();if(o.pivotTotalColumnIds==null||!o.pivotTotalColumnIds.length)continue;const n=o.pivotTotalColumnIds.map(l=>t[l]);t[o.colId]=this.aggregateValues(n,o.pivotValueColumn.getAggFunc(),o.pivotValueColumn,e,a)}return t}aggregateRowNodeUsingValuesOnly(e,t){const s={},i=t.changedPath.isActive()?t.changedPath.getValueColumnsForNode(e,t.valueColumns):t.valueColumns,r=t.changedPath.isActive()?t.changedPath.getNotValueColumnsForNode(e,t.valueColumns):null,a=this.getValuesNormal(e,i,t.filteredOnly),o=e.aggData;return i.forEach((n,l)=>{s[n.getId()]=this.aggregateValues(a[l],n.getAggFunc(),n,e)}),r&&o&&r.forEach(n=>{s[n.getId()]=o[n.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.valueService.getValue(s,r)):[]}getValuesNormal(e,t,s){const i=[];t.forEach(()=>i.push([]));const r=t.length,a=s?e.childrenAfterFilter:e.childrenAfterGroup,o=a.length;for(let n=0;n<o;n++){const l=a[n];for(let c=0;c<r;c++){const h=t[c],d=this.valueService.getValue(h,l);i[c].push(d)}}return i}aggregateValues(e,t,s,i,r){const a=typeof t=="string"?this.aggFuncService.getAggFunc(t):t;if(typeof a!="function")return(0,import_core167._errorOnce)(`unrecognised aggregation function ${t}`),null;const o=a,n=this.gos.addGridCommonParams({values:e,column:s,colDef:s?s.getColDef():void 0,pivotResultColumn:r,rowNode:i,data:i?i.data:void 0});return o(n)}},AutoColService=class extends import_core168.BeanStub{constructor(){super(...arguments),this.beanName="autoColService"}wireBeans(e){this.columnModel=e.columnModel,this.columnNameService=e.columnNameService,this.columnFactory=e.columnFactory}createAutoCols(e){const t=[],s=this.gos.get("treeData");let i=(0,import_core168._isGroupMultiAutoColumn)(this.gos);return s&&i&&((0,import_core168._warnOnce)('you cannot mix groupDisplayType = "multipleColumns" with treeData, only one column can be used to display groups when doing tree data'),i=!1),i?e.forEach((r,a)=>{t.push(this.createOneAutoCol(r,a))}):t.push(this.createOneAutoCol()),t}updateAutoCols(e,t){e.forEach((s,i)=>this.updateOneAutoCol(s,i,t))}createOneAutoCol(e,t){let s;e?s=`${import_core168.GROUP_AUTO_COLUMN_ID}-${e.getId()}`:s=import_core168.GROUP_AUTO_COLUMN_ID;const i=this.createAutoColDef(s,e,t);i.colId=s;const r=new import_core168.AgColumn(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=r!=null?this.columnModel.getColDefCol(r):void 0,o=this.createAutoColDef(e.getId(),a??void 0,t);e.setColDef(o,null,s),this.columnFactory.applyColumnState(e,o,s)}createAutoColDef(e,t,s){let i=this.createBaseColDef(t);const r=this.gos.get("autoGroupColumnDef");(0,import_core168._mergeDeep)(i,r),i=this.columnFactory.addColumnDefaultAndTypes(i,e),this.gos.get("treeData")||(0,import_core168._missing)(i.field)&&(0,import_core168._missing)(i.valueGetter)&&(0,import_core168._missing)(i.filterValueGetter)&&i.filter!=="agGroupColumnFilter"&&(i.filter=!1),s&&s>0&&(i.headerCheckboxSelection=!1);const a=(0,import_core168._isColumnsSortingCoupledToGroup)(this.gos),o=i.valueGetter||i.field!=null;return a&&!o&&(i.sortIndex=void 0,i.initialSort=void 0),i}createBaseColDef(e){const t=this.gos.get("autoGroupColumnDef"),i={headerName:this.localeService.getLocaleTextFunc()("group","Group")};if(t&&(t.cellRenderer||t.cellRendererSelector)||(i.cellRenderer="agGroupCellRenderer"),e){const a=e.getColDef();Object.assign(i,{headerName:this.columnNameService.getDisplayNameForColumn(e,"header"),headerValueGetter:a.headerValueGetter}),a.cellRenderer&&Object.assign(i,{cellRendererParams:{innerRenderer:a.cellRenderer,innerRendererParams:a.cellRendererParams}}),i.showRowGroup=e.getColId()}else i.showRowGroup=!0;return i}},DropZoneColumnComp=class extends PillDragComp{constructor(e,t,s,i,r){super(t,s,r,`
|
|
332
|
+
${apiError("writeText")}`),this.copyDataToClipboardLegacy(t)});return}this.copyDataToClipboardLegacy(t)}copyDataToClipboardLegacy(t){this.executeOnTempElement(s=>{const i=(0,import_core163._getDocument)(this.gos),r=(0,import_core163._getActiveDomElement)(this.gos);s.value=t||" ",s.select(),s.focus({preventScroll:!0}),i.execCommand("copy")||(0,import_core163._warnOnce)("Browser did not allow document.execCommand('copy'). Ensure api.copySelectedRowsToClipboard() is invoked via a user event, i.e. button click, otherwise the browser will prevent it for security reasons."),r!=null&&r.focus!=null&&r.focus({preventScroll:!0})})}executeOnTempElement(t,s){const i=(0,import_core163._getDocument)(this.gos),r=i.createElement("textarea");r.style.width="1px",r.style.height="1px",r.style.top=i.documentElement.scrollTop+"px",r.style.left=i.documentElement.scrollLeft+"px",r.style.position="absolute",r.style.opacity="0";const a=this.gridCtrl.getGui();a.appendChild(r);try{t(r)}catch{(0,import_core163._warnOnce)("Browser does not support document.execCommand('copy') for clipboard operations")}s?window.setTimeout(()=>{s(r),a.removeChild(r)},100):a.removeChild(r)}getRangeSize(t){const s=t.getCellRanges();let i=0,r=0;return s.length>0&&(i=t.getRangeStartRow(s[0]).rowIndex,r=t.getRangeEndRow(s[0]).rowIndex),i-r+1}},VERSION5="32.3.0",ClipboardCoreModule=(0,import_core161._defineModule)({version:VERSION5,moduleName:`${import_core161.ModuleNames.ClipboardModule}-core`,beans:[ClipboardService],dependantModules:[EnterpriseCoreModule,import_csv_export.CsvExportModule]}),ClipboardApiModule=(0,import_core161._defineModule)({version:VERSION5,moduleName:`${import_core161.ModuleNames.ClipboardModule}-api`,apiFunctions:{copyToClipboard,cutToClipboard,copySelectedRowsToClipboard,copySelectedRangeToClipboard,copySelectedRangeDown,pasteFromClipboard},dependantModules:[ClipboardCoreModule]}),ClipboardModule=(0,import_core161._defineModule)({version:VERSION5,moduleName:import_core161.ModuleNames.ClipboardModule,dependantModules:[ClipboardCoreModule,ClipboardApiModule]}),import_core200=require("ag-grid-community"),import_core164=require("ag-grid-community"),import_core166=require("ag-grid-community"),import_core167=require("ag-grid-community"),import_core168=require("ag-grid-community"),import_core169=require("ag-grid-community"),import_core170=require("ag-grid-community"),import_core171=require("ag-grid-community"),import_core172=require("ag-grid-community"),import_core174=require("ag-grid-community"),import_core176=require("ag-grid-community"),import_core177=require("ag-grid-community"),import_core178=require("ag-grid-community"),import_core179=require("ag-grid-community"),import_core180=require("ag-grid-community"),import_core181=require("ag-grid-community"),import_core182=require("ag-grid-community"),import_core183=require("ag-grid-community"),import_core184=require("ag-grid-community"),import_core185=require("ag-grid-community"),import_core186=require("ag-grid-community"),import_core187=require("ag-grid-community"),defaultAggFuncNames={sum:"Sum",first:"First",last:"Last",min:"Min",max:"Max",count:"Count",avg:"Average"},AggFuncService=class extends import_core166.BeanStub{constructor(){super(...arguments),this.beanName="aggFuncService",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=aggSum,e.first=aggFirst,e.last=aggLast,e.min=aggMin,e.max=aggMax,e.count=aggCount,e.avg=aggAvg,this.initialised=!0}isAggFuncPossible(e,t){const s=this.getFuncNames(e),i=(0,import_core166._includes)(s,t),r=(0,import_core166._exists)(this.aggFuncsMap[t]);return i&&r}getDefaultFuncLabel(e){return defaultAggFuncNames[e]??e}getDefaultAggFunc(e){const t=e.getColDef().defaultAggFunc;if((0,import_core166._exists)(t)&&this.isAggFuncPossible(e,t))return t;if(this.isAggFuncPossible(e,"sum"))return"sum";const s=this.getFuncNames(e);return(0,import_core166._existsAndNotEmpty)(s)?s[0]:null}addAggFuncs(e){this.init(),(0,import_core166._iterateObject)(e,(t,s)=>{this.aggFuncsMap[t]=s})}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 aggSum(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 aggFirst(e){return e.values.length>0?e.values[0]:null}function aggLast(e){return e.values.length>0?(0,import_core166._last)(e.values):null}function aggMin(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 aggMax(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 aggCount(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 aggAvg(e){const{values:t}=e;let s=0,i=0;for(let o=0;o<t.length;o++){const n=t[o];let l=null;typeof n=="number"||typeof n=="bigint"?(l=n,i++):n!=null&&(typeof n.value=="number"||typeof n.value=="bigint")&&typeof n.count=="number"&&(l=n.value*(typeof n.value=="number"?n.count:BigInt(n.count)),i+=n.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}}}var AggregationStage=class extends import_core167.BeanStub{constructor(){super(...arguments),this.beanName="aggregationStage"}wireBeans(e){this.columnModel=e.columnModel,this.aggFuncService=e.aggFuncService,this.funcColsService=e.funcColsService,this.pivotResultColsService=e.pivotResultColsService,this.valueService=e.valueService}execute(e){const t=(0,import_core167._missingOrEmpty)(this.funcColsService.getValueColumns()),s=!this.gos.getCallback("getGroupRowAgg"),i=e.changedPath&&e.changedPath.isActive();if(t&&s&&i)return;const r=this.createAggDetails(e);this.recursivelyCreateAggData(r)}createAggDetails(e){const t=this.columnModel.isPivotActive(),s=this.funcColsService.getValueColumns(),i=t?this.funcColsService.getPivotColumns():[];return{alwaysAggregateAtRootLevel:this.gos.get("alwaysAggregateAtRootLevel"),groupIncludeTotalFooter:!!(0,import_core167._getGrandTotalRow)(this.gos),changedPath:e.changedPath,valueColumns:s,pivotColumns:i,filteredOnly:!this.isSuppressAggFilteredOnly(),userAggFunc:this.gos.getCallback("getGroupRowAgg")}}isSuppressAggFilteredOnly(){return(0,import_core167._getGroupAggFiltering)(this.gos)!==void 0||this.gos.get("suppressAggFilteredOnly")}recursivelyCreateAggData(e){const t=s=>{if(!s.hasChildren()){s.aggData&&s.setAggData(null);return}if(s.level===-1&&!e.groupIncludeTotalFooter){const a=!this.columnModel.isPivotMode();if(!e.alwaysAggregateAtRootLevel&&a){s.setAggData(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),e.setAggData(r),e.sibling&&e.sibling.setAggData(r)}aggregateRowNodeUsingValuesAndPivot(e){const t={},s=this.pivotResultColsService.getPivotResultCols()?.list??[];let i=!0;for(let r=0;r<s.length;r++){const a=s[r],o=a.getColDef();if(o.pivotTotalColumnIds!=null){i=!1;continue}const n=o.pivotKeys??[];let l;e.leafGroup?l=this.getValuesFromMappedSet(e.childrenMapped,n,o.pivotValueColumn):l=this.getValuesPivotNonLeaf(e,o.colId),t[o.colId]=this.aggregateValues(l,o.pivotValueColumn.getAggFunc(),o.pivotValueColumn,e,a)}if(!i)for(let r=0;r<s.length;r++){const a=s[r],o=a.getColDef();if(o.pivotTotalColumnIds==null||!o.pivotTotalColumnIds.length)continue;const n=o.pivotTotalColumnIds.map(l=>t[l]);t[o.colId]=this.aggregateValues(n,o.pivotValueColumn.getAggFunc(),o.pivotValueColumn,e,a)}return t}aggregateRowNodeUsingValuesOnly(e,t){const s={},i=t.changedPath.isActive()?t.changedPath.getValueColumnsForNode(e,t.valueColumns):t.valueColumns,r=t.changedPath.isActive()?t.changedPath.getNotValueColumnsForNode(e,t.valueColumns):null,a=this.getValuesNormal(e,i,t.filteredOnly),o=e.aggData;return i.forEach((n,l)=>{s[n.getId()]=this.aggregateValues(a[l],n.getAggFunc(),n,e)}),r&&o&&r.forEach(n=>{s[n.getId()]=o[n.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.valueService.getValue(s,r)):[]}getValuesNormal(e,t,s){const i=[];t.forEach(()=>i.push([]));const r=t.length,a=s?e.childrenAfterFilter:e.childrenAfterGroup,o=a.length;for(let n=0;n<o;n++){const l=a[n];for(let c=0;c<r;c++){const h=t[c],d=this.valueService.getValue(h,l);i[c].push(d)}}return i}aggregateValues(e,t,s,i,r){const a=typeof t=="string"?this.aggFuncService.getAggFunc(t):t;if(typeof a!="function")return(0,import_core167._errorOnce)(`unrecognised aggregation function ${t}`),null;const o=a,n=this.gos.addGridCommonParams({values:e,column:s,colDef:s?s.getColDef():void 0,pivotResultColumn:r,rowNode:i,data:i?i.data:void 0});return o(n)}},AutoColService=class extends import_core168.BeanStub{constructor(){super(...arguments),this.beanName="autoColService"}wireBeans(e){this.columnModel=e.columnModel,this.columnNameService=e.columnNameService,this.columnFactory=e.columnFactory}createAutoCols(e){const t=[],s=this.gos.get("treeData");let i=(0,import_core168._isGroupMultiAutoColumn)(this.gos);return s&&i&&((0,import_core168._warnOnce)('you cannot mix groupDisplayType = "multipleColumns" with treeData, only one column can be used to display groups when doing tree data'),i=!1),i?e.forEach((r,a)=>{t.push(this.createOneAutoCol(r,a))}):t.push(this.createOneAutoCol()),t}updateAutoCols(e,t){e.forEach((s,i)=>this.updateOneAutoCol(s,i,t))}createOneAutoCol(e,t){let s;e?s=`${import_core168.GROUP_AUTO_COLUMN_ID}-${e.getId()}`:s=import_core168.GROUP_AUTO_COLUMN_ID;const i=this.createAutoColDef(s,e,t);i.colId=s;const r=new import_core168.AgColumn(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=r!=null?this.columnModel.getColDefCol(r):void 0,o=this.createAutoColDef(e.getId(),a??void 0,t);e.setColDef(o,null,s),this.columnFactory.applyColumnState(e,o,s)}createAutoColDef(e,t,s){let i=this.createBaseColDef(t);const r=this.gos.get("autoGroupColumnDef");(0,import_core168._mergeDeep)(i,r),i=this.columnFactory.addColumnDefaultAndTypes(i,e),this.gos.get("treeData")||(0,import_core168._missing)(i.field)&&(0,import_core168._missing)(i.valueGetter)&&(0,import_core168._missing)(i.filterValueGetter)&&i.filter!=="agGroupColumnFilter"&&(i.filter=!1),s&&s>0&&(i.headerCheckboxSelection=!1);const a=(0,import_core168._isColumnsSortingCoupledToGroup)(this.gos),o=i.valueGetter||i.field!=null;return a&&!o&&(i.sortIndex=void 0,i.initialSort=void 0),i}createBaseColDef(e){const t=this.gos.get("autoGroupColumnDef"),i={headerName:this.localeService.getLocaleTextFunc()("group","Group")};if(t&&(t.cellRenderer||t.cellRendererSelector)||(i.cellRenderer="agGroupCellRenderer"),e){const a=e.getColDef();Object.assign(i,{headerName:this.columnNameService.getDisplayNameForColumn(e,"header"),headerValueGetter:a.headerValueGetter}),a.cellRenderer&&Object.assign(i,{cellRendererParams:{innerRenderer:a.cellRenderer,innerRendererParams:a.cellRendererParams}}),i.showRowGroup=e.getColId()}else i.showRowGroup=!0;return i}},DropZoneColumnComp=class extends PillDragComp{constructor(e,t,s,i,r){super(t,s,r,`
|
|
333
333
|
<span role="option">
|
|
334
334
|
<span data-ref="eDragHandle" class="ag-drag-handle ag-column-drop-cell-drag-handle" role="presentation"></span>
|
|
335
335
|
<span data-ref="eText" class="ag-column-drop-cell-text" aria-hidden="true"></span>
|
|
336
336
|
<ag-sort-indicator data-ref="eSortIndicator"></ag-sort-indicator>
|
|
337
337
|
<span data-ref="eButton" class="ag-column-drop-cell-button" role="presentation"></span>
|
|
338
338
|
</span>
|
|
339
|
-
`,[import_core174.SortIndicatorSelector]),this.column=e,this.dropZonePurpose=i,this.eSortIndicator=import_core174.RefPlaceholder,this.popupShowing=!1}wireBeans(e){super.wireBeans(e),this.popupService=e.popupService,this.sortController=e.sortController,this.columnModel=e.columnModel,this.columnNameService=e.columnNameService,this.funcColsService=e.funcColsService,this.aggFuncService=e.aggFuncService}postConstruct(){this.displayName=this.columnNameService.getDisplayNameForColumn(this.column,"columnDrop"),super.postConstruct(),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)}isDraggable(){return this.isReadOnly()}isRemovable(){return this.isReadOnly()}isReadOnly(){return!this.isGroupingAndLocked()&&!this.gos.get("functionsReadOnly")}getAriaDisplayName(){const e=this.localeService.getLocaleTextFunc(),{name:t,aggFuncName:s}=this.getColumnAndAggFuncName(),i=e("ariaDropZoneColumnComponentAggFuncSeparator"," of "),r={asc:e("ariaDropZoneColumnComponentSortAscending","ascending"),desc:e("ariaDropZoneColumnComponentSortDescending","descending")},a=this.column.getSort(),o=this.gos.get("rowGroupPanelSuppressSort");return[s&&`${s}${i}`,t,this.isGroupingZone()&&!o&&a&&`, ${r[a]}`].filter(n=>!!n).join("")}getColumnAndAggFuncName(){const e=this.displayName;let t="";if(this.isAggregationZone()){const s=this.column.getAggFunc(),i=typeof s=="string"?s:"agg";t=this.localeService.getLocaleTextFunc()(i,i)}return{name:e,aggFuncName:t}}setupSort(){const e=this.column.isSortable(),t=this.isGroupingZone();if(!(!e||!t)&&!this.gos.get("rowGroupPanelSuppressSort")){this.eSortIndicator.setupSort(this.column,!0);const s=i=>{i.preventDefault();const a=this.gos.get("multiSortKey")==="ctrl"?i.ctrlKey||i.metaKey:i.shiftKey;this.sortController.progressSort(this.column,a,"uiColumnSorted")};this.addGuiEventListener("click",s),this.addGuiEventListener("keydown",i=>{i.key===import_core174.KeyCode.ENTER&&this.isGroupingZone()&&s(i)})}}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===import_core174.KeyCode.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 e=new VirtualList({cssIdentifier:"select-agg-func"}),t=this.aggFuncService.getFuncNames(this.column),s=this.getGui(),i=e.getGui();e.setModel({getRow:function(h){return t[h]},getRowCount:function(){return t.length}}),this.createBean(e);const r=(0,import_core174._loadTemplate)('<div class="ag-select-agg-func-popup"></div>');r.style.top="0px",r.style.left="0px",r.appendChild(i),r.style.width=`${s.clientWidth}px`;const[a]=this.addManagedElementListeners(r,{focusout:h=>{!r.contains(h.relatedTarget)&&l&&l.hideFunc()}}),o=h=>{this.destroyBean(e),this.popupShowing=!1,h?.key==="Escape"&&s.focus(),a&&a()},n=this.localeService.getLocaleTextFunc(),l=this.popupService.addPopup({modal:!0,eChild:r,closeOnEsc:!0,closedCallback:o,ariaLabel:n("ariaLabelAggregationFunction","Aggregation Function")});l&&e.setComponentCreator(this.createAggSelect.bind(this,l.hideFunc)),e.addGuiEventListener("keydown",h=>{if(h.key===import_core174.KeyCode.ENTER||h.key===import_core174.KeyCode.SPACE){const d=e.getLastFocusedRow();if(d==null)return;const u=e.getComponentAt(d);u&&u.selectItem()}}),this.popupService.positionPopupByComponent({type:"aggFuncSelect",eventSource:s,ePopup:r,keepWithinBounds:!0,column:this.column,position:"under"}),e.refresh();let c=t.findIndex(h=>h===this.column.getAggFunc());c===-1&&(c=0),e.focusRow(c)}createAggSelect(e,t){const s=()=>{e(),this.funcColsService.setColumnAggFunc(this.column,t,"toolPanelDragAndDrop")},i=this.localeService.getLocaleTextFunc(),r=t.toString(),a=i(r,r);return new AggItemComp(s,a)}isGroupingAndLocked(){return this.isGroupingZone()&&this.columnModel.isColGroupLocked(this.column)}isAggregationZone(){return this.dropZonePurpose==="aggregation"}isGroupingZone(){return this.dropZonePurpose==="rowGroup"}getDragSourceType(){return import_core174.DragSourceType.ToolPanel}destroy(){super.destroy(),this.column=null}},AggItemComp=class extends import_core174.Component{constructor(e,t){super('<div class="ag-select-agg-func-item"/>'),this.selectItem=e,this.getGui().innerText=t,this.addGuiEventListener("click",this.selectItem)}},BaseDropZonePanel=class extends PillDropZonePanel{constructor(e,t){super(e),this.dropZonePurpose=t}wireBeans(e){super.wireBeans(e),this.columnModel=e.columnModel,this.funcColsService=e.funcColsService}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===import_core172.DragSourceType.HeaderCell||e===import_core172.DragSourceType.ToolPanel}minimumAllowedNewInsertIndex(){const e=this.gos.get("groupLockGroupColumns"),t=this.funcColsService.getRowGroupColumns().length;return e===-1?t:Math.min(e,t)}showOrHideColumnOnExit(e){return this.isRowGroupPanel()&&!this.gos.get("suppressRowGroupHidesColumns")&&!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.columnModel.setColsVisible(i,t,s)}}isRowGroupPanel(){return this.dropZonePurpose==="rowGroup"}createPillComponent(e,t,s,i){return new DropZoneColumnComp(e,t,s,this.dropZonePurpose,i)}},PivotDropZonePanel=class extends BaseDropZonePanel{constructor(e){super(e,"pivot")}postConstruct(){const e=this.localeService.getLocaleTextFunc(),t=e("pivotColumnsEmptyMessage","Drag here to set column labels"),s=e("pivots","Column Labels");super.init({icon:(0,import_core171._createIconNoSpan)("pivotPanel",this.gos,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.localeService.getLocaleTextFunc()("ariaPivotDropZonePanelLabel","Column Labels")}getTooltipParams(){const e=super.getTooltipParams();return e.location="pivotColumnsList",e}refresh(){this.checkVisibility(),this.refreshGui()}checkVisibility(){const e=this.columnModel.isPivotMode();if(this.isHorizontal())switch(this.gos.get("pivotPanelShow")){case"always":this.setDisplayed(e);break;case"onlyWhenPivoting":{const t=this.columnModel.isPivotActive();this.setDisplayed(e&&t);break}default:this.setDisplayed(!1);break}else this.setDisplayed(e)}isItemDroppable(e,t){return this.gos.get("functionsReadOnly")||!e.isPrimary()?!1:e.isAllowPivot()&&(!e.isPivotActive()||this.isSourceEventFromTarget(t))}updateItems(e){this.funcColsService.setPivotColumns(e,"toolPanelUi")}getIconName(){return this.isPotentialDndItems()?"pivot":"notAllowed"}getExistingItems(){return this.funcColsService.getPivotColumns()}},RowGroupDropZonePanel=class extends BaseDropZonePanel{constructor(e){super(e,"rowGroup")}postConstruct(){const e=this.localeService.getLocaleTextFunc(),t=e("rowGroupColumnsEmptyMessage","Drag here to set row groups"),s=e("groups","Row Groups");super.init({icon:(0,import_core176._createIconNoSpan)("rowGroupPanel",this.gos,null),emptyMessage:t,title:s}),this.addManagedEventListeners({columnRowGroupChanged:this.refreshGui.bind(this)})}getAriaLabel(){return this.localeService.getLocaleTextFunc()("ariaRowGroupDropZonePanelLabel","Row Groups")}getTooltipParams(){const e=super.getTooltipParams();return e.location="rowGroupColumnsList",e}isItemDroppable(e,t){return this.gos.get("functionsReadOnly")||!e.isPrimary()?!1:e.isAllowRowGroup()&&(!e.isRowGroupActive()||this.isSourceEventFromTarget(t))}updateItems(e){this.funcColsService.setRowGroupColumns(e,"toolPanelUi")}getIconName(){return this.isPotentialDndItems()?"group":"notAllowed"}getExistingItems(){return this.funcColsService.getRowGroupColumns()}},AgGridHeaderDropZones=class extends import_core170.Component{wireBeans(e){this.columnModel=e.columnModel,this.funcColsService=e.funcColsService}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=document.createElement("div");e.classList.add("ag-column-drop-wrapper"),(0,import_core170._setAriaRole)(e,"presentation"),this.rowGroupComp=new RowGroupDropZonePanel(!0),this.createManagedBean(this.rowGroupComp),this.pivotComp=new PivotDropZonePanel(!0),this.createManagedBean(this.pivotComp),e.appendChild(this.rowGroupComp.getGui()),e.appendChild(this.pivotComp.getGui());const t=this.onDropPanelVisible.bind(this);return this.addManagedListeners(this.rowGroupComp,{displayChanged:t}),this.addManagedListeners(this.pivotComp,{displayChanged:t}),this.onDropPanelVisible(),e}onDropPanelVisible(){const e=this.rowGroupComp.isDisplayed()&&this.pivotComp.isDisplayed(),t="ag-column-drop-horizontal-half-width";this.rowGroupComp.addOrRemoveCssClass(t,e),this.pivotComp.addOrRemoveCssClass(t,e)}onRowGroupChanged(){if(!this.rowGroupComp)return;const e=this.gos.get("rowGroupPanelShow");if(e==="always")this.rowGroupComp.setDisplayed(!0);else if(e==="onlyWhenGrouping"){const t=!this.funcColsService.isRowGroupEmpty();this.rowGroupComp.setDisplayed(t)}else this.rowGroupComp.setDisplayed(!1)}onPivotPanelShow(){if(!this.pivotComp)return;const e=this.gos.get("pivotPanelShow");if(e==="always")this.pivotComp.setDisplayed(!0);else if(e==="onlyWhenPivoting"){const t=this.columnModel.isPivotActive();this.pivotComp.setDisplayed(t)}else this.pivotComp.setDisplayed(!1)}},AgGridHeaderDropZonesSelector={selector:"AG-GRID-HEADER-DROP-ZONES",component:AgGridHeaderDropZones},ColumnDropZoneService=class extends import_core169.BeanStub{constructor(){super(...arguments),this.beanName="columnDropZonesService"}getDropZoneSelector(){return AgGridHeaderDropZonesSelector}},FilterAggregatesStage=class extends import_core177.BeanStub{constructor(){super(...arguments),this.beanName="filterAggregatesStage"}wireBeans(e){this.filterManager=e.filterManager,this.columnModel=e.columnModel}execute(e){const t=this.columnModel.isPivotMode(),s=this.filterManager?.isAggregateFilterPresent()||this.filterManager?.isAggregateQuickFilterPresent(),i=c=>!c.node.group,r=c=>c.node.leafGroup,a=(0,import_core177._getGroupAggFiltering)(this.gos)||(t?r:i),{changedPath:o}=e,n=(c,h=!1)=>{c.childrenAfterFilter&&(c.childrenAfterAggFilter=c.childrenAfterFilter,h&&c.childrenAfterAggFilter.forEach(d=>n(d,h)),this.setAllChildrenCount(c)),c.sibling&&(c.sibling.childrenAfterAggFilter=c.childrenAfterAggFilter)},l=c=>{c.childrenAfterAggFilter=c.childrenAfterFilter?.filter(h=>a({node:h})&&this.filterManager.doesRowPassAggregateFilters({rowNode:h})?(n(h,!0),!0):h.childrenAfterAggFilter?.length)||null,this.setAllChildrenCount(c),c.sibling&&(c.sibling.childrenAfterAggFilter=c.childrenAfterAggFilter)};o.forEachChangedNodeDepthFirst(s?l:n,!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)}},GroupFilter=class extends import_core178.TabGuardComp{constructor(){super(`
|
|
339
|
+
`,[import_core174.SortIndicatorSelector]),this.column=e,this.dropZonePurpose=i,this.eSortIndicator=import_core174.RefPlaceholder,this.popupShowing=!1}wireBeans(e){super.wireBeans(e),this.popupService=e.popupService,this.sortController=e.sortController,this.columnModel=e.columnModel,this.columnNameService=e.columnNameService,this.funcColsService=e.funcColsService,this.aggFuncService=e.aggFuncService}postConstruct(){this.displayName=this.columnNameService.getDisplayNameForColumn(this.column,"columnDrop"),super.postConstruct(),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)}isDraggable(){return this.isReadOnly()}isRemovable(){return this.isReadOnly()}isReadOnly(){return!this.isGroupingAndLocked()&&!this.gos.get("functionsReadOnly")}getAriaDisplayName(){const e=this.localeService.getLocaleTextFunc(),{name:t,aggFuncName:s}=this.getColumnAndAggFuncName(),i=e("ariaDropZoneColumnComponentAggFuncSeparator"," of "),r={asc:e("ariaDropZoneColumnComponentSortAscending","ascending"),desc:e("ariaDropZoneColumnComponentSortDescending","descending")},a=this.column.getSort(),o=this.gos.get("rowGroupPanelSuppressSort");return[s&&`${s}${i}`,t,this.isGroupingZone()&&!o&&a&&`, ${r[a]}`].filter(n=>!!n).join("")}getColumnAndAggFuncName(){const e=this.displayName;let t="";if(this.isAggregationZone()){const s=this.column.getAggFunc(),i=typeof s=="string"?s:"agg";t=this.localeService.getLocaleTextFunc()(i,i)}return{name:e,aggFuncName:t}}setupSort(){const e=this.column.isSortable(),t=this.isGroupingZone();if(!(!e||!t)&&!this.gos.get("rowGroupPanelSuppressSort")){this.eSortIndicator.setupSort(this.column,!0);const s=i=>{i.preventDefault();const a=this.gos.get("multiSortKey")==="ctrl"?i.ctrlKey||i.metaKey:i.shiftKey;this.sortController.progressSort(this.column,a,"uiColumnSorted")};this.addGuiEventListener("click",s),this.addGuiEventListener("keydown",i=>{i.key===import_core174.KeyCode.ENTER&&this.isGroupingZone()&&s(i)})}}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===import_core174.KeyCode.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 e=new VirtualList({cssIdentifier:"select-agg-func"}),t=this.aggFuncService.getFuncNames(this.column),s=this.getGui(),i=e.getGui();e.setModel({getRow:function(h){return t[h]},getRowCount:function(){return t.length}}),this.createBean(e);const r=(0,import_core174._loadTemplate)('<div class="ag-select-agg-func-popup"></div>');r.style.top="0px",r.style.left="0px",r.appendChild(i),r.style.width=`${s.clientWidth}px`;const[a]=this.addManagedElementListeners(r,{focusout:h=>{!r.contains(h.relatedTarget)&&l&&l.hideFunc()}}),o=h=>{this.destroyBean(e),this.popupShowing=!1,h?.key==="Escape"&&s.focus(),a&&a()},n=this.localeService.getLocaleTextFunc(),l=this.popupService.addPopup({modal:!0,eChild:r,closeOnEsc:!0,closedCallback:o,ariaLabel:n("ariaLabelAggregationFunction","Aggregation Function")});l&&e.setComponentCreator(this.createAggSelect.bind(this,l.hideFunc)),e.addGuiEventListener("keydown",h=>{if(h.key===import_core174.KeyCode.ENTER||h.key===import_core174.KeyCode.SPACE){const d=e.getLastFocusedRow();if(d==null)return;const u=e.getComponentAt(d);u&&u.selectItem()}}),this.popupService.positionPopupByComponent({type:"aggFuncSelect",eventSource:s,ePopup:r,keepWithinBounds:!0,column:this.column,position:"under"}),e.refresh();let c=t.findIndex(h=>h===this.column.getAggFunc());c===-1&&(c=0),e.focusRow(c)}createAggSelect(e,t){const s=()=>{e(),this.getGui().focus(),this.funcColsService.setColumnAggFunc(this.column,t,"toolPanelDragAndDrop")},i=this.localeService.getLocaleTextFunc(),r=t.toString(),a=i(r,r);return new AggItemComp(s,a)}isGroupingAndLocked(){return this.isGroupingZone()&&this.columnModel.isColGroupLocked(this.column)}isAggregationZone(){return this.dropZonePurpose==="aggregation"}isGroupingZone(){return this.dropZonePurpose==="rowGroup"}getDragSourceType(){return import_core174.DragSourceType.ToolPanel}destroy(){super.destroy(),this.column=null}},AggItemComp=class extends import_core174.Component{constructor(e,t){super('<div class="ag-select-agg-func-item"/>'),this.selectItem=e,this.getGui().innerText=t,this.addGuiEventListener("click",this.selectItem)}},BaseDropZonePanel=class extends PillDropZonePanel{constructor(e,t){super(e),this.dropZonePurpose=t}wireBeans(e){super.wireBeans(e),this.columnModel=e.columnModel,this.funcColsService=e.funcColsService}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===import_core172.DragSourceType.HeaderCell||e===import_core172.DragSourceType.ToolPanel}minimumAllowedNewInsertIndex(){const e=this.gos.get("groupLockGroupColumns"),t=this.funcColsService.getRowGroupColumns().length;return e===-1?t:Math.min(e,t)}showOrHideColumnOnExit(e){return this.isRowGroupPanel()&&!this.gos.get("suppressRowGroupHidesColumns")&&!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.columnModel.setColsVisible(i,t,s)}}isRowGroupPanel(){return this.dropZonePurpose==="rowGroup"}createPillComponent(e,t,s,i){return new DropZoneColumnComp(e,t,s,this.dropZonePurpose,i)}},PivotDropZonePanel=class extends BaseDropZonePanel{constructor(e){super(e,"pivot")}postConstruct(){const e=this.localeService.getLocaleTextFunc(),t=e("pivotColumnsEmptyMessage","Drag here to set column labels"),s=e("pivots","Column Labels");super.init({icon:(0,import_core171._createIconNoSpan)("pivotPanel",this.gos,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.localeService.getLocaleTextFunc()("ariaPivotDropZonePanelLabel","Column Labels")}getTooltipParams(){const e=super.getTooltipParams();return e.location="pivotColumnsList",e}refresh(){this.checkVisibility(),this.refreshGui()}checkVisibility(){const e=this.columnModel.isPivotMode();if(this.isHorizontal())switch(this.gos.get("pivotPanelShow")){case"always":this.setDisplayed(e);break;case"onlyWhenPivoting":{const t=this.columnModel.isPivotActive();this.setDisplayed(e&&t);break}default:this.setDisplayed(!1);break}else this.setDisplayed(e)}isItemDroppable(e,t){return this.gos.get("functionsReadOnly")||!e.isPrimary()?!1:e.isAllowPivot()&&(!e.isPivotActive()||this.isSourceEventFromTarget(t))}updateItems(e){this.funcColsService.setPivotColumns(e,"toolPanelUi")}getIconName(){return this.isPotentialDndItems()?"pivot":"notAllowed"}getExistingItems(){return this.funcColsService.getPivotColumns()}},RowGroupDropZonePanel=class extends BaseDropZonePanel{constructor(e){super(e,"rowGroup")}postConstruct(){const e=this.localeService.getLocaleTextFunc(),t=e("rowGroupColumnsEmptyMessage","Drag here to set row groups"),s=e("groups","Row Groups");super.init({icon:(0,import_core176._createIconNoSpan)("rowGroupPanel",this.gos,null),emptyMessage:t,title:s}),this.addManagedEventListeners({columnRowGroupChanged:this.refreshGui.bind(this)})}getAriaLabel(){return this.localeService.getLocaleTextFunc()("ariaRowGroupDropZonePanelLabel","Row Groups")}getTooltipParams(){const e=super.getTooltipParams();return e.location="rowGroupColumnsList",e}isItemDroppable(e,t){return this.gos.get("functionsReadOnly")||!e.isPrimary()?!1:e.isAllowRowGroup()&&(!e.isRowGroupActive()||this.isSourceEventFromTarget(t))}updateItems(e){this.funcColsService.setRowGroupColumns(e,"toolPanelUi")}getIconName(){return this.isPotentialDndItems()?"group":"notAllowed"}getExistingItems(){return this.funcColsService.getRowGroupColumns()}},AgGridHeaderDropZones=class extends import_core170.Component{wireBeans(e){this.columnModel=e.columnModel,this.funcColsService=e.funcColsService}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=document.createElement("div");e.classList.add("ag-column-drop-wrapper"),(0,import_core170._setAriaRole)(e,"presentation"),this.rowGroupComp=new RowGroupDropZonePanel(!0),this.createManagedBean(this.rowGroupComp),this.pivotComp=new PivotDropZonePanel(!0),this.createManagedBean(this.pivotComp),e.appendChild(this.rowGroupComp.getGui()),e.appendChild(this.pivotComp.getGui());const t=this.onDropPanelVisible.bind(this);return this.addManagedListeners(this.rowGroupComp,{displayChanged:t}),this.addManagedListeners(this.pivotComp,{displayChanged:t}),this.onDropPanelVisible(),e}onDropPanelVisible(){const e=this.rowGroupComp.isDisplayed()&&this.pivotComp.isDisplayed(),t="ag-column-drop-horizontal-half-width";this.rowGroupComp.addOrRemoveCssClass(t,e),this.pivotComp.addOrRemoveCssClass(t,e)}onRowGroupChanged(){if(!this.rowGroupComp)return;const e=this.gos.get("rowGroupPanelShow");if(e==="always")this.rowGroupComp.setDisplayed(!0);else if(e==="onlyWhenGrouping"){const t=!this.funcColsService.isRowGroupEmpty();this.rowGroupComp.setDisplayed(t)}else this.rowGroupComp.setDisplayed(!1)}onPivotPanelShow(){if(!this.pivotComp)return;const e=this.gos.get("pivotPanelShow");if(e==="always")this.pivotComp.setDisplayed(!0);else if(e==="onlyWhenPivoting"){const t=this.columnModel.isPivotActive();this.pivotComp.setDisplayed(t)}else this.pivotComp.setDisplayed(!1)}},AgGridHeaderDropZonesSelector={selector:"AG-GRID-HEADER-DROP-ZONES",component:AgGridHeaderDropZones},ColumnDropZoneService=class extends import_core169.BeanStub{constructor(){super(...arguments),this.beanName="columnDropZonesService"}getDropZoneSelector(){return AgGridHeaderDropZonesSelector}},FilterAggregatesStage=class extends import_core177.BeanStub{constructor(){super(...arguments),this.beanName="filterAggregatesStage"}wireBeans(e){this.filterManager=e.filterManager,this.columnModel=e.columnModel}execute(e){const t=this.columnModel.isPivotMode(),s=this.filterManager?.isAggregateFilterPresent()||this.filterManager?.isAggregateQuickFilterPresent(),i=c=>!c.node.group,r=c=>c.node.leafGroup,a=(0,import_core177._getGroupAggFiltering)(this.gos)||(t?r:i),{changedPath:o}=e,n=(c,h=!1)=>{c.childrenAfterFilter&&(c.childrenAfterAggFilter=c.childrenAfterFilter,h&&c.childrenAfterAggFilter.forEach(d=>n(d,h)),this.setAllChildrenCount(c)),c.sibling&&(c.sibling.childrenAfterAggFilter=c.childrenAfterAggFilter)},l=c=>{c.childrenAfterAggFilter=c.childrenAfterFilter?.filter(h=>a({node:h})&&this.filterManager.doesRowPassAggregateFilters({rowNode:h})?(n(h,!0),!0):h.childrenAfterAggFilter?.length)||null,this.setAllChildrenCount(c),c.sibling&&(c.sibling.childrenAfterAggFilter=c.childrenAfterAggFilter)};o.forEachChangedNodeDepthFirst(s?l:n,!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)}},GroupFilter=class extends import_core178.TabGuardComp{constructor(){super(`
|
|
340
340
|
<div class="ag-group-filter">
|
|
341
341
|
<div data-ref="eGroupField"></div>
|
|
342
342
|
<div data-ref="eUnderlyingFilter"></div>
|
|
343
343
|
</div>
|
|
344
|
-
`),this.eGroupField=import_core178.RefPlaceholder,this.eUnderlyingFilter=import_core178.RefPlaceholder}wireBeans(e){this.filterManager=e.filterManager,this.columnNameService=e.columnNameService,this.funcColsService=e.funcColsService}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&&(0,import_core178._warnOnce)('Group Column Filter does not work with the colDef property "field". This property will be ignored.'),e.filterValueGetter&&(0,import_core178._warnOnce)('Group Column Filter does not work with the colDef property "filterValueGetter". This property will be ignored.'),e.filterParams&&(0,import_core178._warnOnce)('Group Column Filter does not work with the colDef property "filterParams". This property will be ignored.')}updateGroups(){const e=this.updateGroupField();return this.getUnderlyingFilters(e)}getSourceColumns(){if(this.groupColumn=this.params.column,this.gos.get("treeData"))return(0,import_core178._warnOnce)("Group Column Filter does not work with Tree Data enabled. Please disable Tree Data, or use a different filter."),[];const e=this.funcColsService.getSourceColumnsForGroupColumn(this.groupColumn);return e||((0,import_core178._warnOnce)("Group Column Filter only works on group columns. Please use a different filter."),[])}updateGroupField(){(0,import_core178._clearElement)(this.eGroupField),this.eGroupFieldSelect&&this.destroyBean(this.eGroupFieldSelect);const e=this.getSourceColumns(),t=e.filter(s=>s.isFilterAllowed());return t.length?(e.length===1?(this.selectedColumn=t[0],(0,import_core178._setDisplayed)(this.eGroupField,!1)):((!this.selectedColumn||!t.some(s=>s.getId()===this.selectedColumn.getId()))&&(this.selectedColumn=t[0]),this.createGroupFieldSelectElement(t),this.eGroupField.appendChild(this.eGroupFieldSelect.getGui()),this.eGroupField.appendChild((0,import_core178._loadTemplate)('<div class="ag-filter-separator"></div>')),(0,import_core178._setDisplayed)(this.eGroupField,!0)),t):(this.selectedColumn=void 0,(0,import_core178._setDisplayed)(this.eGroupField,!1),null)}createGroupFieldSelectElement(e){this.eGroupFieldSelect=this.createManagedBean(new import_core178.AgSelect);const t=this.localeService.getLocaleTextFunc();this.eGroupFieldSelect.setLabel(t("groupFilterSelect","Select field:")),this.eGroupFieldSelect.setLabelAlignment("top"),this.eGroupFieldSelect.addOptions(e.map(s=>({value:s.getId(),text:this.columnNameService.getDisplayNameForColumn(s,"groupFilter",!1)??void 0}))),this.eGroupFieldSelect.setValue(this.selectedColumn.getId()),this.eGroupFieldSelect.onValueChange(s=>this.updateSelectedColumn(s)),this.eGroupFieldSelect.addCssClass("ag-group-filter-field-select-wrapper"),e.length===1&&this.eGroupFieldSelect.setDisabled(!0)}getUnderlyingFilters(e){if(!e)return this.filterColumnPairs=void 0,this.selectedFilter=void 0,this.groupColumn.setFilterActive(!1,"columnRowGroupChanged"),import_core178.AgPromise.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)))}),import_core178.AgPromise.all(t).then(()=>{this.filterColumnPairs=s,this.groupColumn.setFilterActive(this.isFilterActive(),"columnRowGroupChanged")})}addUnderlyingFilterElement(){if((0,import_core178._clearElement)(this.eUnderlyingFilter),!this.selectedColumn)return import_core178.AgPromise.resolve();const e=this.createManagedBean(new import_core178.FilterWrapperComp(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()})??import_core178.AgPromise.resolve()):import_core178.AgPromise.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 import_core178.AgPromise.resolve()}afterGuiAttached(e){this.afterGuiAttachedParams=e,this.addUnderlyingFilterElement()}afterGuiDetached(){(0,import_core178._clearElement)(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.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}destroy(){super.destroy()}},GroupFloatingFilterComp=class extends import_core179.Component{constructor(){super(`
|
|
344
|
+
`),this.eGroupField=import_core178.RefPlaceholder,this.eUnderlyingFilter=import_core178.RefPlaceholder}wireBeans(e){this.filterManager=e.filterManager,this.columnNameService=e.columnNameService,this.funcColsService=e.funcColsService}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&&(0,import_core178._warnOnce)('Group Column Filter does not work with the colDef property "field". This property will be ignored.'),e.filterValueGetter&&(0,import_core178._warnOnce)('Group Column Filter does not work with the colDef property "filterValueGetter". This property will be ignored.'),e.filterParams&&(0,import_core178._warnOnce)('Group Column Filter does not work with the colDef property "filterParams". This property will be ignored.')}updateGroups(){const e=this.updateGroupField();return this.getUnderlyingFilters(e)}getSourceColumns(){if(this.groupColumn=this.params.column,this.gos.get("treeData"))return(0,import_core178._warnOnce)("Group Column Filter does not work with Tree Data enabled. Please disable Tree Data, or use a different filter."),[];const e=this.funcColsService.getSourceColumnsForGroupColumn(this.groupColumn);return e||((0,import_core178._warnOnce)("Group Column Filter only works on group columns. Please use a different filter."),[])}updateGroupField(){(0,import_core178._clearElement)(this.eGroupField),this.eGroupFieldSelect&&this.destroyBean(this.eGroupFieldSelect);const e=this.getSourceColumns(),t=e.filter(s=>s.isFilterAllowed());return t.length?(e.length===1?(this.selectedColumn=t[0],(0,import_core178._setDisplayed)(this.eGroupField,!1)):((!this.selectedColumn||!t.some(s=>s.getId()===this.selectedColumn.getId()))&&(this.selectedColumn=t[0]),this.createGroupFieldSelectElement(t),this.eGroupField.appendChild(this.eGroupFieldSelect.getGui()),this.eGroupField.appendChild((0,import_core178._loadTemplate)('<div class="ag-filter-separator"></div>')),(0,import_core178._setDisplayed)(this.eGroupField,!0)),t):(this.selectedColumn=void 0,(0,import_core178._setDisplayed)(this.eGroupField,!1),null)}createGroupFieldSelectElement(e){this.eGroupFieldSelect=this.createManagedBean(new import_core178.AgSelect);const t=this.localeService.getLocaleTextFunc();this.eGroupFieldSelect.setLabel(t("groupFilterSelect","Select field:")),this.eGroupFieldSelect.setLabelAlignment("top"),this.eGroupFieldSelect.addOptions(e.map(s=>({value:s.getId(),text:this.columnNameService.getDisplayNameForColumn(s,"groupFilter",!1)??void 0}))),this.eGroupFieldSelect.setValue(this.selectedColumn.getId()),this.eGroupFieldSelect.onValueChange(s=>this.updateSelectedColumn(s)),this.eGroupFieldSelect.addCssClass("ag-group-filter-field-select-wrapper"),e.length===1&&this.eGroupFieldSelect.setDisabled(!0)}getUnderlyingFilters(e){if(!e)return this.filterColumnPairs=void 0,this.selectedFilter=void 0,this.groupColumn.setFilterActive(!1,"columnRowGroupChanged"),import_core178.AgPromise.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)))}),import_core178.AgPromise.all(t).then(()=>{this.filterColumnPairs=s,this.groupColumn.setFilterActive(this.isFilterActive(),"columnRowGroupChanged")})}addUnderlyingFilterElement(){if((0,import_core178._clearElement)(this.eUnderlyingFilter),!this.selectedColumn)return import_core178.AgPromise.resolve();const e=this.createManagedBean(new import_core178.FilterWrapperComp(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()})??import_core178.AgPromise.resolve()):import_core178.AgPromise.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 import_core178.AgPromise.resolve()}afterGuiAttached(e){this.afterGuiAttachedParams=e,this.addUnderlyingFilterElement()}afterGuiDetached(){(0,import_core178._clearElement)(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}destroy(){super.destroy()}},GroupFloatingFilterComp=class extends import_core179.Component{constructor(){super(`
|
|
345
345
|
<div data-ref="eFloatingFilter" class="ag-group-floating-filter ag-floating-filter-input" role="presentation"></div>
|
|
346
|
-
`),this.eFloatingFilter=import_core179.RefPlaceholder,this.haveAddedColumnListeners=!1}wireBeans(e){this.columnNameService=e.columnNameService,this.filterManager=e.filterManager}init(e){this.params=e;const t=this.gos.get("groupDisplayType")==="multipleColumns";return new import_core179.AgPromise(s=>{this.params.parentFilterInstance(i=>{this.parentFilterInstance=i,t?this.setupUnderlyingFloatingFilterElement().then(()=>s()):(this.setupReadOnlyFloatingFilterElement(),s())})}).then(()=>{this.addManagedListeners(this.parentFilterInstance,{selectedColumnChanged:this.onSelectedColumnChanged.bind(this),columnRowGroupChanged:this.onColumnRowGroupChanged.bind(this)})})}onParamsUpdated(e){this.refresh(e)}refresh(e){this.params=e,this.setParams()}setParams(){const e=this.columnNameService.getDisplayNameForColumn(this.params.column,"header",!0),t=this.localeService.getLocaleTextFunc();this.eFloatingFilterText?.setInputAriaLabel(`${e} ${t("ariaFilterInput","Filter Input")}`)}setupReadOnlyFloatingFilterElement(){this.eFloatingFilterText||(this.eFloatingFilterText=this.createManagedBean(new import_core179.AgInputTextField),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,(0,import_core179._clearElement)(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(),import_core179.AgPromise.resolve()}onColumnVisibleChanged(){this.setupUnderlyingFloatingFilterElement()}onColDefChanged(e){if(!e.column)return;const t=this.filterManager.getFloatingFilterCompDetails(e.column,this.params.showParentFilter);t&&(this.underlyingFloatingFilter?.refresh?this.underlyingFloatingFilter.refresh(t.params):this.underlyingFloatingFilter?.onParamsUpdated?.(t.params))}onParentModelChanged(e,t){this.showingUnderlyingFloatingFilter?this.underlyingFloatingFilter?.onParentModelChanged(this.parentFilterInstance.getSelectedFilter()?.getModel(),t):this.updateDisplayedValue()}updateDisplayedValue(){if(!this.parentFilterInstance||!this.eFloatingFilterText)return;const e=this.parentFilterInstance.getSelectedFilter();if(!e){this.eFloatingFilterText.setValue(""),this.eFloatingFilterText.setDisplayed(!1);return}if(this.eFloatingFilterText.setDisplayed(!0),e.getModelAsString){const t=e.getModel();this.eFloatingFilterText.setValue(t==null?"":e.getModelAsString(t))}else this.eFloatingFilterText.setValue("")}onSelectedColumnChanged(){this.showingUnderlyingFloatingFilter||this.updateDisplayedValue()}onColumnRowGroupChanged(){this.showingUnderlyingFloatingFilter||this.updateDisplayedValue()}destroy(){super.destroy()}},BatchRemover=class{constructor(){this.allSets={},this.allParents=[]}removeFromChildrenAfterGroup(e,t){const s=this.getSet(e);s.removeFromChildrenAfterGroup[t.id]=!0}isRemoveFromAllLeafChildren(e,t){return!!this.getSet(e).removeFromAllLeafChildren[t.id]}preventRemoveFromAllLeafChildren(e,t){const s=this.getSet(e);delete s.removeFromAllLeafChildren[t.id]}removeFromAllLeafChildren(e,t){const s=this.getSet(e);s.removeFromAllLeafChildren[t.id]=!0}getSet(e){return this.allSets[e.id]||(this.allSets[e.id]={removeFromAllLeafChildren:{},removeFromChildrenAfterGroup:{}},this.allParents.push(e)),this.allSets[e.id]}getAllParents(){return this.allParents}flush(){this.allParents.forEach(e=>{const t=this.allSets[e.id];e.childrenAfterGroup=e.childrenAfterGroup.filter(i=>!t.removeFromChildrenAfterGroup[i.id]),e.allLeafChildren=e.allLeafChildren?.filter(i=>!t.removeFromAllLeafChildren[i.id])??null,e.updateHasChildren();const s=e.sibling;s&&(s.childrenAfterGroup=e.childrenAfterGroup,s.allLeafChildren=e.allLeafChildren)}),this.allSets={},this.allParents.length=0}};function sortGroupChildren(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(compareGroupChildren(e[i-1],e[i])>0){s=!0;break}return s?(e.sort(compareGroupChildren),!0):!1}function compareGroupChildren(e,t){const s=e.sourceRowIndex,i=t.sourceRowIndex,r=s>=0,a=i>=0,o=r&&a,n=!r&&!a;return o?s-i:n?e.__objectId-t.__objectId:r?1:-1}var GroupStrategy=class extends import_core181.BeanStub{wireBeans(e){this.beans=e,this.columnModel=e.columnModel,this.funcColsService=e.funcColsService,this.valueService=e.valueService,this.selectionService=e.selectionService,this.showRowGroupColsService=e.showRowGroupColsService}execute(e){const t=this.createGroupingDetails(e);if(t.transactions)this.handleTransaction(t);else{const s=e.afterColumnsChanged===!0;this.shotgunResetEverything(t,s)}this.positionLeafsAndGroups(e.changedPath),this.orderGroups(t)}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,rowNodeTransactions:i,rowNodesOrderChanged:r}=e,a=this.funcColsService.getRowGroupColumns();return{expandByDefault:this.gos.get("groupDefaultExpanded"),groupedCols:a,rootNode:t,pivotMode:this.columnModel.isPivotMode(),groupedColCount:a?.length??0,transactions:i,rowNodesOrderChanged:!!r,changedPath:s,groupAllowUnbalanced:this.gos.get("groupAllowUnbalanced"),isGroupOpenByDefault:this.gos.getCallback("isGroupOpenByDefault"),initialGroupOrderComparator:this.gos.getCallback("initialGroupOrderComparator"),suppressGroupMaintainValueType:this.gos.get("suppressGroupMaintainValueType"),keyCreators:a?.map(n=>n.getColDef().keyCreator)??[]}}handleTransaction(e){e.transactions.forEach(t=>{const s=new BatchRemover;(0,import_core181._existsAndNotEmpty)(t.remove)&&this.removeNodes(t.remove,e,s),(0,import_core181._existsAndNotEmpty)(t.update)&&this.moveNodesInWrongPath(t.update,e,s),(0,import_core181._existsAndNotEmpty)(t.add)&&this.insertNodes(t.add,e);const i=s.getAllParents().slice();s.flush(),this.removeEmptyGroups(i,e)}),e.rowNodesOrderChanged&&this.sortChildren(e)}sortChildren(e){e.changedPath.forEachChangedNodeDepthFirst(t=>{sortGroupChildren(t.childrenAfterGroup)&&e.changedPath.addParentNode(t)},!1,!0)}orderGroups(e){const t=e.initialGroupOrderComparator;(0,import_core181._exists)(t)&&s(e.rootNode);function s(i){(0,import_core181._exists)(i.childrenAfterGroup)&&!i.leafGroup&&(i.childrenAfterGroup.sort((a,o)=>t({nodeA:a,nodeB:o})),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}moveNodesInWrongPath(e,t,s){e.forEach(i=>{t.changedPath.isActive()&&t.changedPath.addParentNode(i.parent);const r=l=>l.key,a=this.getExistingPathForNode(i,t).map(r),o=this.getGroupInfo(i,t).map(r);(0,import_core181._areEqual)(a,o)||this.moveNode(i,t,s)})}moveNode(e,t,s){if(this.removeNodesFromParents([e],t,s),this.insertOneNode(e,t,s),e.setData(e.data),t.changedPath.isActive()){const i=e.parent;t.changedPath.addParentNode(i)}}removeNodes(e,t,s){this.removeNodesFromParents(e,t,s),t.changedPath.isActive()&&e.forEach(i=>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 BatchRemover;e.forEach(a=>{this.removeFromParent(a,r),this.forEachParentGroup(t,a.parent,o=>{r.removeFromAllLeafChildren(o,a)})}),i&&r.flush()}removeEmptyGroups(e,t){let s=!0;const i=r=>{const a=this.getChildrenMappedKey(r.key,r.rowGroupColumn),o=r.parent;return(o?.childrenMapped?!o.childrenMapped[a]:!0)?!1:!!r.group&&(r.childrenAfterGroup?.length??0)===0};for(;s;){s=!1;const r=new BatchRemover;e.forEach(a=>{this.forEachParentGroup(t,a,o=>{i(o)&&(s=!0,this.removeFromParent(o,r),o.setSelectedParams({newValue:!1,source:"rowGroupChanged"}))})}),r.flush()}}removeFromParent(e,t){e.parent&&(t?t.removeFromChildrenAfterGroup(e.parent,e):((0,import_core181._removeFromArray)(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),t.setGroup(!0))}areGroupColsEqual(e,t){return e==null||t==null||e.pivotMode!==t.pivotMode?!1:(0,import_core181._areEqual)(e.groupedCols,t.groupedCols)&&(0,import_core181._areEqual)(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,e),t(i.childrenAfterGroup)})};t(e.rootNode.childrenAfterGroup)}shotgunResetEverything(e,t){if(this.noChangeInGroupingColumns(e,t))return;this.selectionService.filterFromSelection(a=>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.showRowGroupColsService.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.isActive()&&t.changedPath.addParentNode(s.parent)})}insertOneNode(e,t,s){const i=this.getGroupInfo(e,t),r=this.findParentForNode(e,i,t,s);r.group||(0,import_core181._warnOnce)("duplicate group keys for row data, keys should be unique",[r.data,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,o)=>{r=this.getOrCreateNextNode(r,a,o,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 import_core181.RowNode(this.beans);return r.group=!0,r.field=e.field,r.rowGroupColumn=e.rowGroupColumn,this.setGroupData(r,e,i),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 o=a?i(a,a.parent,0):null;return`${o==null?"":o+"-"}${r.rowGroupColumn.getColId()}-${r.key}`};return import_core181.RowNode.ID_PREFIX_ROW_GROUP+i(e,t,s)}setGroupData(e,t,s){e.groupData={},this.showRowGroupColsService.getShowRowGroupCols().forEach(r=>{const a=e.rowGroupColumn;a!==null&&r.isRowGroupDisplayed(a.getId())&&(s.suppressGroupMaintainValueType?e.groupData[r.getColId()]=t.key:e.groupData[r.getColId()]=this.valueService.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.valueService.getKeyForNode(i,e),a=r!=null&&r!=="";if((t.pivotMode||!t.groupAllowUnbalanced)&&!a&&(r="",a=!0),a){const n={key:r,field:i.getColDef().field,rowGroupColumn:i,leafNode:e};s.push(n)}}),s}},treeNodePositionComparer=(e,t)=>e.treeNode.oldSourceRowIndex-t.treeNode.oldSourceRowIndex,EMPTY_ARRAY=Object.freeze([]),EMPTY_CHILDREN=EMPTY_ARRAY.values(),orphanRow=(e,t)=>{e.parent=null,e.treeNode=null,t?e.childrenAfterGroup=[]:(e.level=0,e.childrenAfterGroup=null,e.allLeafChildren=null)},TreeNode=class ne{constructor(t,s,i){this.parent=t,this.key=s,this.level=i,this.children=null,this.invalidatedHead=null,this.invalidatedNext=void 0,this.row=null,this.oldRow=null,this.duplicateRows=null,this.childrenAfterGroup=EMPTY_ARRAY,this.allLeafChildren=EMPTY_ARRAY,this.childrenChanged=!1,this.leafChildrenChanged=!1,this.oldSourceRowIndex=-1}isEmptyFillerNode(){return!this.row?.data&&!this.children?.size}hasChildren(){return!!this.children?.size}enumChildren(){return this.children?.values()??EMPTY_CHILDREN}upsertKey(t){typeof t!="string"&&(t=String(t));let s=this.children?.get(t);return s||(s=new ne(this,t,this.level+1),(this.children??(this.children=new Map))?.set(s.key,s)),s}destroy(){const{row:t,parent:s}=this;s!==null&&(s?.children?.delete(this.key),t!==null&&orphanRow(t,!0),this.parent=null)}setRow(t){const{level:s,row:i,childrenAfterGroup:r}=this;if(s<0)i!==null&&i!==t&&orphanRow(i,!0);else{if(i===t)return!1;i!==null?(t.allLeafChildren=i.allLeafChildren??this.allLeafChildren??EMPTY_ARRAY,orphanRow(i,!1)):t.allLeafChildren=this.allLeafChildren??EMPTY_ARRAY}return t.level=s,t.childrenAfterGroup=r,t.treeNode=this,this.row=t,!0}removeRow(t){const{level:s,row:i,duplicateRows:r,childrenAfterGroup:a}=this;if(i===t){const o=this.popDuplicateRow();o?(this.row=o,o.childrenAfterGroup=a,s>=0&&(o.allLeafChildren=i.allLeafChildren??this.allLeafChildren??EMPTY_ARRAY)):this.row=null}else{if(!r?.delete(t))return!1;r.size===0&&(this.duplicateRows=null)}return orphanRow(t,s<0),!0}addDuplicateRow(t){const{level:s}=this;let i=this.duplicateRows;if(i===null)i=new Set,this.duplicateRows=i;else if(i.has(t))return!1;return i.add(t),t.treeNode=this,t.level=s,s>=0&&(t.allLeafChildren=EMPTY_ARRAY),t.childrenAfterGroup=EMPTY_ARRAY,!0}sortFirstDuplicateRow(){const t=this.duplicateRows,s=this.row;if(!s||!t)return s;let i=s;for(const r of t)r.sourceRowIndex<i.sourceRowIndex&&(i=r);return i!==s&&(i.childrenAfterGroup=this.childrenAfterGroup,i.allLeafChildren=s.allLeafChildren??this.allLeafChildren??EMPTY_ARRAY,s.childrenAfterGroup=EMPTY_ARRAY,s.allLeafChildren=EMPTY_ARRAY,t.delete(i),t.add(s),this.row=i),i}popDuplicateRow(){let t=null;const s=this.duplicateRows;return s!==null&&(t=s.values().next().value,t!==null&&s.delete(t)&&s.size===0&&(this.duplicateRows=null)),t}dequeueInvalidated(){const t=this.invalidatedHead;return t!==null&&(this.invalidatedHead=t.invalidatedNext??null,t.invalidatedNext=void 0),t}invalidate(){let t=this,s=this.parent;for(;s!==null&&t.invalidatedNext===void 0;)t.invalidatedNext=s.invalidatedHead,s.invalidatedHead=t,t=s,s=t.parent}invalidateOrder(){const t=this.parent;t!==null&&!t.childrenChanged&&((this.children?.size??0)>1||!t.row?.data)&&(t.childrenChanged=!0,t.invalidate())}getRowPosition(){const t=this.row;return t?.data?t.sourceRowIndex:this.childrenAfterGroup[0]?.treeNode?.oldSourceRowIndex??this.oldSourceRowIndex}updateChildrenAfterGroup(){this.childrenChanged=!1;const t=this.children?.size??0;if(t===0)return this.childrenAfterGroup.length===0?!1:(this.leafChildrenChanged=!0,this.childrenAfterGroup=EMPTY_ARRAY,this.row.childrenAfterGroup=EMPTY_ARRAY,!0);let s=!1,i=this.childrenAfterGroup;i===EMPTY_ARRAY?(i=new Array(t),this.childrenAfterGroup=i,this.row.childrenAfterGroup=i,s=!0):i.length!==t&&(i.length=t,s=!0);let r=0,a=-1,o=!1;for(const n of this.enumChildren()){const l=n.getRowPosition();l<a&&(o=!0),a=l,n.oldSourceRowIndex=l;const c=n.row;i[r]!==c&&(i[r]=c,s=!0),++r}return s&&(this.leafChildrenChanged=!0),o&&this.reorderChildrenList(i),s||o}reorderChildrenList(t){const s=t.length,i=this.children;t.sort(treeNodePositionComparer),i.clear();for(let r=0;r<s;++r){const a=t[r].treeNode;i.set(a.key,a)}}updateAllLeafChildren(){const{parent:t,row:s,childrenAfterGroup:i}=this;this.leafChildrenChanged=!1;let r=!1;const a=i.length;if(a===0)r=s.allLeafChildren?.length!==0,s.allLeafChildren=EMPTY_ARRAY,this.allLeafChildren=EMPTY_ARRAY;else if(a===1&&i[0].allLeafChildren?.length)s.allLeafChildren=i[0].allLeafChildren,this.allLeafChildren=null,r=!0;else{let o=this.allLeafChildren;(o===EMPTY_ARRAY||o===null)&&(o=[],this.allLeafChildren=o);const n=o.length;let l=0;for(let c=0;c<a;++c){const h=i[c],d=h.allLeafChildren,u=d.length;if(u)for(let p=0;p<u;++p){const g=d[p];(l>=n||o[l]!==g)&&(o[l]=g,r=!0),++l}else(l>=n||o[l]!==h)&&h&&(o[l]=h,r=!0),++l}n!==l&&(o.length=l,r=!0),s.allLeafChildren!==o&&(s.allLeafChildren=o,r=!0)}r&&t&&(t.leafChildrenChanged=!0)}},isTreeRowCommitted=e=>(e.treeNodeFlags&1)!==0,isTreeRowExpandedInitialized=e=>(e.treeNodeFlags&2)!==0,isTreeRowUpdated=e=>(e.treeNodeFlags&4)!==0,isTreeRowKeyChanged=e=>(e.treeNodeFlags&8)!==0,isTreeRowPathChanged=e=>(e.treeNodeFlags&16)!==0,setTreeRowExpandedInitialized=(e,t)=>{t?e.treeNodeFlags|=2:e.treeNodeFlags&=-3},setTreeRowUpdated=e=>{const t=e.treeNodeFlags;t&1&&(e.treeNodeFlags=t|4)},setTreeRowKeyChanged=e=>{const t=e.treeNodeFlags;t&1&&(e.treeNodeFlags=t|12)},markTreeRowPathChanged=e=>{e.treeNodeFlags|=16},markTreeRowCommitted=e=>{e.treeNodeFlags=1|e.treeNodeFlags&-29},clearTreeRowFlags=e=>{e.treeNodeFlags=0},TreeStrategy=class extends import_core182.BeanStub{constructor(){super(...arguments),this.rowsPendingDestruction=null,this.root=new TreeNode(null,"",-1)}wireBeans(e){this.beans=e,this.showRowGroupColsService=e.showRowGroupColsService}destroy(){const e=this.root.row;e!==null&&(this.root.removeRow(e),clearTreeRowFlags(e)),this.destroyTree(this.root),this.commitDestroyedRows(),super.destroy()}execute(e){const{rowNodeTransactions:t,rowNodesOrderChanged:s,changedPath:i}=e,r=e.rowNode,a=this.gos,o={changedPath:i,expandByDefault:a.get("groupDefaultExpanded"),suppressGroupMaintainValueType:a.get("suppressGroupMaintainValueType"),getDataPath:a.get("getDataPath"),isGroupOpenByDefault:a.getCallback("isGroupOpenByDefault"),initialGroupOrderComparator:a.getCallback("initialGroupOrderComparator")};this.root.setRow(r),r.leafGroup=!1;const l=r.sibling;l&&(l.childrenAfterGroup=r.childrenAfterGroup,l.childrenMapped=r.childrenMapped),t?this.handleTransaction(o,t,s):this.handleRowData(o,r,e.afterColumnsChanged===!0)}handleRowData(e,t,s){const i=this.root;if(s||this.oldGroupDisplayColIds===void 0){const r=this.showRowGroupColsService?.getShowRowGroupCols()?.map(a=>a.getId()).join("-")??"";if(s){this.oldGroupDisplayColIds!==r&&this.checkAllGroupDataAfterColsChanged(i.row?.childrenAfterGroup);return}this.oldGroupDisplayColIds=r}this.clearTree(i),this.addOrUpdateRows(e,t.allLeafChildren,!1),this.commitTree(e)}handleTransaction(e,t,s){for(const{remove:i,update:r,add:a}of t)this.removeRows(i),this.addOrUpdateRows(e,r,!0),this.addOrUpdateRows(e,a,!1);s&&this.handleRowNodesOrderChanged(),this.commitTree(e)}handleRowNodesOrderChanged(){const e=this.root.row?.allLeafChildren;if(e)for(let t=0,s=e.length;t<s;++t){const i=e[t].treeNode;i&&i.oldSourceRowIndex!==t&&i.invalidateOrder()}}checkAllGroupDataAfterColsChanged(e){for(let t=0,s=e?.length??0;t<s;++t){const i=e[t];this.setGroupData(i,i.treeNode?.key??i.key),this.checkAllGroupDataAfterColsChanged(i.childrenAfterGroup)}}addOrUpdateRows(e,t,s){for(let i=0,r=t?.length??0;i<r;++i){const a=t[i],o=this.upsertPath(this.getDataPath(e,a));o&&this.addOrUpdateRow(o,a,s)}}removeRows(e){for(let t=0,s=e?.length??0;t<s;++t){const i=e[t],r=i.treeNode;r!==null&&this.removeRow(r,i)}}getDataPath({getDataPath:e},{data:t}){const s=e?.(t)||EMPTY_ARRAY;return s.length||(0,import_core182._warnOnce)("getDataPath() should not return an empty path",[t]),s}upsertPath(e){let t=this.root;const s=e.length-1;for(let i=0;i<=s;++i){const r=t.upsertKey(e[i]);if(i>=s)return r.invalidate(),r;t=r}return null}addOrUpdateRow(e,t,s){const{level:i,row:r}=e;if(i<0)return;let a=!1;if(r!==t){const o=t.treeNode;o!==null&&o!==e&&(o.removeRow(t),o.invalidate()),r===null?(e.setRow(t),a=!0):r.data?e.addDuplicateRow(t)&&(a=!0):(e.setRow(t),this.destroyRow(r,!0),a=!0)}s&&!isTreeRowUpdated(t)&&(setTreeRowUpdated(t),a=!0),a&&e.invalidate(),this.rowsPendingDestruction?.delete(t)}removeRow(e,t){const{parent:s,level:i}=e;if(i<0)return;let r=!1;e.removeRow(t)&&(r=!0,s&&(s.childrenChanged=!0),this.destroyRow(t,!t.data)),r&&e.invalidate()}commitTree(e){const t=this.root;this.commitInvalidatedChildren(e,t);const s=t.row;t.childrenChanged&&t.updateChildrenAfterGroup()&&markTreeRowPathChanged(s),s.updateHasChildren(),isTreeRowPathChanged(s)&&e.changedPath?.isActive()&&e.changedPath.addParentNode(s),markTreeRowCommitted(s),this.commitDestroyedRows()}commitInvalidatedChildren(e,t){for(;;){const s=t.dequeueInvalidated();if(s===null)break;s.parent===t&&this.commitChild(e,t,s)}}commitChild(e,t,s){if(s.isEmptyFillerNode()){this.clearTree(s);return}this.commitNodePreOrder(t,s),this.commitInvalidatedChildren(e,s),this.commitNodePostOrder(e,t,s)}commitNodePreOrder(e,t){let s=t.row;if(s===null?(s=this.createFillerRow(t),t.setRow(s)):(s=t.sortFirstDuplicateRow(),s.allChildrenCount===void 0&&(s.allChildrenCount=null)),s.parent=e.row,t.oldRow!==s)for(const r of t.enumChildren()){const a=r.row;a!==null&&(a.parent=s)}const i=t.key;s.key!==i?(s.key=i,setTreeRowKeyChanged(s),this.setGroupData(s,i)):s.groupData||this.setGroupData(s,i)}commitNodePostOrder(e,t,s){const i=s.row,r=s.oldRow;if(s.isEmptyFillerNode()){this.clearTree(s);return}s.childrenChanged&&s.updateChildrenAfterGroup()&&markTreeRowPathChanged(i),s.leafChildrenChanged&&s.updateAllLeafChildren();const a=s.getRowPosition();s.oldSourceRowIndex!==a&&(s.oldSourceRowIndex=a,t.childrenChanged=!0);const o=!!i.childrenAfterGroup?.length,n=o||!i.data,l=i.group;l!==n?(markTreeRowPathChanged(i),i.setGroup(n),!n&&!i.expanded&&setTreeRowExpandedInitialized(i,!1)):i.hasChildren()!==o&&(markTreeRowPathChanged(i),i.updateHasChildren()),i.group&&!isTreeRowExpandedInitialized(i)&&(r!==i&&r!==null&&r.group&&isTreeRowExpandedInitialized(r)&&!e.isGroupOpenByDefault?i.expanded=r.expanded:i.expanded=this.getExpandedInitialValue(e,i),setTreeRowExpandedInitialized(i,!0)),isTreeRowUpdated(i)&&(markTreeRowPathChanged(t.row),isTreeRowKeyChanged(i)&&i.setData(i.data)),r!==i&&(s.oldRow=i,r!==null&&(l||s.hasChildren())&&markTreeRowPathChanged(i),t.childrenChanged=!0,markTreeRowPathChanged(t.row)),isTreeRowPathChanged(i)?e.changedPath?.isActive()&&e.changedPath.addParentNode(i):isTreeRowCommitted(i)||(i.childrenAfterFilter||(i.childrenAfterFilter=i.childrenAfterGroup.slice()),i.childrenAfterAggFilter||(i.childrenAfterAggFilter=i.childrenAfterFilter.slice()),i.childrenAfterSort||(i.childrenAfterSort=i.childrenAfterAggFilter.slice())),markTreeRowCommitted(i),s.duplicateRows?.size&&!s.duplicateRowsWarned&&(s.duplicateRowsWarned=!0,(0,import_core182._warnOnce)("duplicate group keys for row data, keys should be unique",[i.id,i.data,...Array.from(s.duplicateRows).map(c=>c.data)]))}createFillerRow(e){const t=new import_core183.RowNode(this.beans);t.key=e.key,t.group=!0,t.field=null,t.leafGroup=!1,t.rowGroupIndex=null,t.allChildrenCount=null;let s=e.level+"-"+e.key,i=e.parent;for(;i!==null;){const r=i.parent;if(r===null)break;s=`${i.level}-${i.key}-${s}`,i=r}return t.id=import_core183.RowNode.ID_PREFIX_ROW_GROUP+s,t}setGroupData(e,t){const s={};e.groupData=s;const i=this.showRowGroupColsService?.getShowRowGroupCols();if(i)for(const r of i)s[r.getColId()]=t}getExpandedInitialValue(e,t){const s=e.isGroupOpenByDefault;return s?s({rowNode:t,field:t.field,key:t.key,level:t.level,rowGroupColumn:t.rowGroupColumn})==!0:e.expandByDefault===-1||t.level<e.expandByDefault}clearTree(e){const{parent:t,oldRow:s,row:i,level:r}=e;if(t!==null&&s!==null&&(t.childrenChanged=!0,t.row!==null&&markTreeRowPathChanged(t.row)),i!==null&&r>=0){let a=e.row;for(;a!==null&&e.removeRow(a);)this.destroyRow(a,!a.data),a=e.row}for(const a of e.enumChildren())this.clearTree(a);e.destroy()}destroyTree(e){const{row:t,level:s,duplicateRows:i}=e;if(t&&(s>=0&&!t.data?this.destroyRow(t,!0):clearTreeRowFlags(t)),i)for(const r of i)s>=0&&!r.data?this.destroyRow(r,!0):clearTreeRowFlags(r);for(const r of e.enumChildren())this.destroyTree(r);e.destroy()}destroyRow(e,t){if(!isTreeRowCommitted(e)){clearTreeRowFlags(e);return}if(!t){(this.rowsPendingDestruction??(this.rowsPendingDestruction=new Set)).add(e);return}clearTreeRowFlags(e),e.setRowIndex(null),e.setRowTop(null),!e.data&&e.isSelected()&&e.setSelectedParams({newValue:!1,source:"rowGroupChanged"})}commitDestroyedRows(){const{rowsPendingDestruction:e}=this;if(e!==null){this.rowsPendingDestruction=null;for(const t of e)this.destroyRow(t,!0)}}},GroupStage=class extends import_core180.BeanStub{constructor(){super(...arguments),this.beanName="groupStage"}wireBeans(e){this.selectableService=e.selectableService}execute(e){const t=this.gos.get("treeData")?TreeStrategy:GroupStrategy;let s=this.strategy;s?.constructor!==t&&(this.destroyBean(s),s=this.createManagedBean(new t),this.strategy=s),s.execute(e),this.selectableService.updateSelectableAfterGrouping()}destroy(){this.destroyBean(this.strategy),this.strategy=void 0,super.destroy()}},PIVOT_ROW_TOTAL_PREFIX="PivotRowTotal_",PivotColDefService=class extends import_core184.BeanStub{constructor(){super(...arguments),this.beanName="pivotColDefService"}wireBeans(e){this.columnModel=e.columnModel,this.funcColsService=e.funcColsService,this.columnNameService=e.columnNameService}postConstruct(){const e=()=>this.gos.get("serverSidePivotResultFieldSeparator")??"_";this.fieldSeparator=e(),this.addManagedPropertyListener("serverSidePivotResultFieldSeparator",()=>{this.fieldSeparator=e()});const t=()=>this.gos.get("pivotDefaultExpanded");this.pivotDefaultExpanded=t(),this.addManagedPropertyListener("pivotDefaultExpanded",()=>{this.pivotDefaultExpanded=t()})}createPivotColumnDefs(e){const t=this.createPivotColumnsFromUniqueValues(e);function s(a,o=[]){return a.forEach(n=>{n.children!==void 0?s(n.children,o):o.push(n)}),o}const i=s(t);this.addRowGroupTotals(t,i),this.addExpandablePivotGroups(t,i),this.addPivotTotalsToGroups(t,i);const r=i.map(a=>(0,import_core184._cloneObject)(a));return{pivotColumnGroupDefs:t,pivotColumnDefs:r}}createPivotColumnsFromUniqueValues(e){const t=this.funcColsService.getPivotColumns(),s=t.length;return this.recursivelyBuildGroup(0,e,[],s,t)}recursivelyBuildGroup(e,t,s,i,r){const a=this.funcColsService.getValueColumns();if(e>=i)return this.buildMeasureCols(s);const o=r[e].getColDef(),n=this.headerNameComparator.bind(this,o.pivotComparator);if(a.length===1&&this.gos.get("removePivotHeaderRowWhenSingleValueColumn")&&e===i-1){const c=[];return(0,import_core184._iterateObject)(t,h=>{const d=[...s,h],u=this.createColDef(a[0],h,d);u.columnGroupShow="open",c.push(u)}),c.sort(n),c}const l=[];return(0,import_core184._iterateObject)(t,(c,h)=>{const d=this.pivotDefaultExpanded===-1||e<this.pivotDefaultExpanded,u=[...s,c];l.push({children:this.recursivelyBuildGroup(e+1,h,u,i,r),headerName:c,pivotKeys:u,columnGroupShow:"open",openByDefault:d,groupId:this.generateColumnGroupId(u)})}),l.sort(n),l}buildMeasureCols(e){const t=this.funcColsService.getValueColumns();return t.length===0?[this.createColDef(null,"-",e)]:t.map(s=>{const i=this.columnNameService.getDisplayNameForColumn(s,"header");return{...this.createColDef(s,i,e),columnGroupShow:"open"}})}addExpandablePivotGroups(e,t){const s=this.gos.get("suppressExpandablePivotGroups");if(s||this.gos.get("pivotColumnGroupTotals"))return;const i=(r,a,o)=>{if("children"in r){const c=new Map;r.children.forEach(d=>{i(d,a,c)});const h=!r.children.some(d=>d.children);this.funcColsService.getValueColumns().forEach(d=>{const u=this.columnNameService.getDisplayNameForColumn(d,"header"),p=this.createColDef(d,u,r.pivotKeys);p.pivotTotalColumnIds=c.get(d.getColId()),p.columnGroupShow=s?"open":"closed",p.aggFunc=d.getAggFunc(),h||(r.children.push(p),a.push(p))}),this.merge(o,c);return}if(!r.pivotValueColumn)return;const n=r.pivotValueColumn.getColId();o.has(n)?o.get(n).push(r.colId):o.set(n,[r.colId])};e.forEach(r=>{i(r,t,new Map)})}addPivotTotalsToGroups(e,t){if(!this.gos.get("pivotColumnGroupTotals"))return;const s=this.gos.get("pivotColumnGroupTotals")==="after",i=this.funcColsService.getValueColumns(),r=i.map(o=>o.getAggFunc());if(!r||r.length<1||!this.sameAggFuncs(r))return;const a=i[0];e.forEach(o=>{this.recursivelyAddPivotTotal(o,t,a,s)})}recursivelyAddPivotTotal(e,t,s,i){const r=e;if(!r.children){const o=e;return o.colId?[o.colId]:null}let a=[];if(r.children.forEach(o=>{const n=this.recursivelyAddPivotTotal(o,t,s,i);n&&(a=a.concat(n))}),r.children.length>1){const n=this.localeService.getLocaleTextFunc()("pivotColumnGroupTotals","Total"),l=this.createColDef(s,n,e.pivotKeys,!0);l.pivotTotalColumnIds=a,l.aggFunc=s.getAggFunc(),l.columnGroupShow=this.gos.get("suppressExpandablePivotGroups")?"open":void 0;const c=e.children;i?c.push(l):c.unshift(l),t.push(l)}return a}addRowGroupTotals(e,t){if(!this.gos.get("pivotRowTotals"))return;const s=this.gos.get("pivotRowTotals")==="after",r=this.funcColsService.getValueColumns().slice();s||r.reverse();const a=r.length>1||!this.gos.get("removePivotHeaderRowWhenSingleValueColumn");for(let o=0;o<r.length;o++){const n=r[o],l=this.columnNameService.getDisplayNameForColumn(n,"header"),c=this.createColDef(n,l,[]),h=[];for(let u=0;u<t.length;u++){const p=t[u];p.pivotValueColumn===n&&h.push(p.colId)}c.pivotTotalColumnIds=h,c.colId=PIVOT_ROW_TOTAL_PREFIX+c.colId;const d=a?{children:[c],pivotKeys:[],groupId:`${PIVOT_ROW_TOTAL_PREFIX}_pivotGroup_${n.getColId()}`}:c;t.push(c),s?e.push(d):e.unshift(d)}}createColDef(e,t,s,i=!1){const r={};if(e){const a=e.getColDef();Object.assign(r,a),r.hide=!1}return r.headerName=t,r.colId=this.generateColumnId(s||[],e&&!i?e.getColId():""),r.field=r.colId,r.valueGetter=a=>a.data?.[a.colDef.field],r.pivotKeys=s,r.pivotValueColumn=e,r.filter===!0&&(r.filter="agNumberColumnFilter"),r}sameAggFuncs(e){if(e.length==1)return!0;for(let t=1;t<e.length;t++)if(e[t]!==e[0])return!1;return!0}headerNameComparator(e,t,s){return e?e(t.headerName,s.headerName):t.headerName&&!s.headerName?1:!t.headerName&&s.headerName?-1:!t.headerName||!s.headerName?0:t.headerName<s.headerName?-1:t.headerName>s.headerName?1:0}merge(e,t){t.forEach((s,i)=>{const a=[...e.has(i)?e.get(i):[],...s];e.set(i,a)})}generateColumnGroupId(e){return`pivotGroup_${this.funcColsService.getPivotColumns().map(s=>s.getColId()).join("-")}_${e.join("-")}`}generateColumnId(e,t){return`pivot_${this.funcColsService.getPivotColumns().map(i=>i.getColId()).join("-")}_${e.join("-")}_${t}`}createColDefsFromFields(e){const t={};for(let r=0;r<e.length;r++){const o=e[r].split(this.fieldSeparator);let n=t;for(let l=0;l<o.length;l++){const c=o[l];n[c]==null&&(n[c]={}),n=n[c]}}const s=(r,a,o,n)=>{const l=[];for(const d in o){const u=o[d],p=s(`${r}${this.fieldSeparator}${d}`,d,u,n+1);l.push(p)}if(l.length===0){const d=this.columnModel.getColDefCol(a);if(d){const p=this.columnNameService.getDisplayNameForColumn(d,"header")??a,g=this.createColDef(d,p,void 0,!1);return g.colId=r,g.aggFunc=d.getAggFunc(),g.valueGetter=m=>m.data?.[r],g}return{colId:r,headerName:a,valueGetter:p=>p.data?.[r]}}return this.gos.get("removePivotHeaderRowWhenSingleValueColumn")&&l.length===1&&"colId"in l[0]?(l[0].headerName=a,l[0]):{openByDefault:this.pivotDefaultExpanded===-1||n<this.pivotDefaultExpanded,groupId:r,headerName:a,children:l}},i=[];for(const r in t){const a=t[r],o=s(r,r,a,0);i.push(o)}return i}},EXCEEDED_MAX_UNIQUE_VALUES="Exceeded maximum allowed pivot column count.",PivotStage=class extends import_core185.BeanStub{constructor(){super(...arguments),this.beanName="pivotStage",this.uniqueValues={},this.lastTimeFailed=!1,this.maxUniqueValues=-1,this.currentUniqueCount=0}wireBeans(e){this.valueService=e.valueService,this.columnModel=e.columnModel,this.pivotResultColsService=e.pivotResultColsService,this.funcColsService=e.funcColsService,this.pivotColDefService=e.pivotColDefService}execute(e){const t=e.changedPath;this.columnModel.isPivotActive()?this.executePivotOn(t):this.executePivotOff(t)}executePivotOff(e){this.aggregationColumnsHashLastTime=null,this.uniqueValues={},this.pivotResultColsService.isPivotResultColsPresent()&&(this.pivotResultColsService.setPivotResultCols(null,"rowModelUpdated"),e&&e.setInactive())}executePivotOn(e){const t=this.funcColsService.getValueColumns().length??1,s=this.gos.get("pivotMaxGeneratedColumns");this.maxUniqueValues=s===-1?-1:s/t;let i;try{i=this.bucketUpRowNodes(e)}catch(f){if(f.message===EXCEEDED_MAX_UNIQUE_VALUES){this.pivotResultColsService.setPivotResultCols([],"rowModelUpdated"),this.eventService.dispatchEvent({type:"pivotMaxColumnsExceeded",message:f.message}),this.lastTimeFailed=!0;return}throw f}const r=this.setUniqueValues(i),a=this.funcColsService.getValueColumns(),o=a.map(f=>`${f.getId()}-${f.getColDef().headerName}`).join("#"),n=a.map(f=>f.getAggFunc().toString()).join("#"),l=this.aggregationColumnsHashLastTime!==o,c=this.aggregationFuncsHashLastTime!==n;this.aggregationColumnsHashLastTime=o,this.aggregationFuncsHashLastTime=n;const h=this.funcColsService.getRowGroupColumns().map(f=>f.getId()).join("#"),d=h!==this.groupColumnsHashLastTime;this.groupColumnsHashLastTime=h;const u=this.gos.get("pivotRowTotals"),p=this.gos.get("pivotColumnGroupTotals"),g=this.gos.get("suppressExpandablePivotGroups"),m=this.gos.get("removePivotHeaderRowWhenSingleValueColumn"),C=u!==this.pivotRowTotalsLastTime||p!==this.pivotColumnGroupTotalsLastTime||g!==this.suppressExpandablePivotGroupsLastTime||m!==this.removePivotHeaderRowWhenSingleValueColumnLastTime;if(this.pivotRowTotalsLastTime=u,this.pivotColumnGroupTotalsLastTime=p,this.suppressExpandablePivotGroupsLastTime=g,this.removePivotHeaderRowWhenSingleValueColumnLastTime=m,this.lastTimeFailed||r||l||d||c||C){const{pivotColumnGroupDefs:f,pivotColumnDefs:v}=this.pivotColDefService.createPivotColumnDefs(this.uniqueValues);this.pivotColumnDefs=v,this.pivotResultColsService.setPivotResultCols(f,"rowModelUpdated"),e&&e.setInactive()}this.lastTimeFailed=!1}setUniqueValues(e){const t=JSON.stringify(e),s=JSON.stringify(this.uniqueValues);return t!==s?(this.uniqueValues=e,!0):!1}bucketUpRowNodes(e){this.currentUniqueCount=0;const t={};e.forEachChangedNodeDepthFirst(i=>{i.leafGroup&&(i.childrenMapped=null)});const s=i=>{i.leafGroup?this.bucketRowNode(i,t):i.childrenAfterFilter?.forEach(s)};return e.executeFromRootNode(s),t}bucketRowNode(e,t){const s=this.funcColsService.getPivotColumns();s.length===0?e.childrenMapped=null:e.childrenMapped=this.bucketChildren(e.childrenAfterFilter,s,0,t),e.sibling&&(e.sibling.childrenMapped=e.childrenMapped)}bucketChildren(e,t,s,i){const r={},a=t[s];if(e.forEach(o=>{let n=this.valueService.getKeyForNode(a,o);if((0,import_core185._missing)(n)&&(n=""),!i[n]){this.currentUniqueCount+=1,i[n]={};const l=this.maxUniqueValues!==-1,c=this.currentUniqueCount>this.maxUniqueValues;if(l&&c)throw Error(EXCEEDED_MAX_UNIQUE_VALUES)}r[n]||(r[n]=[]),r[n].push(o)}),s===t.length-1)return r;{const o={};return(0,import_core185._iterateObject)(r,(n,l)=>{o[n]=this.bucketChildren(l,t,s+1,i[n])}),o}}getPivotColumnDefs(){return this.pivotColumnDefs}};function addAggFunc(e,t,s){e.aggFuncService&&e.aggFuncService.addAggFuncs({key:s})}function addAggFuncs(e,t){e.aggFuncService&&e.aggFuncService.addAggFuncs(t)}function clearAggFuncs(e){e.aggFuncService&&e.aggFuncService.clear()}function setColumnAggFunc(e,t,s){e.funcColsService.setColumnAggFunc(t,s,"api")}function isPivotMode(e){return e.columnModel.isPivotMode()}function getPivotResultColumn(e,t,s){return e.pivotResultColsService.lookupPivotResultCol(t,s)}function setValueColumns(e,t){e.funcColsService.setValueColumns(t,"api")}function getValueColumns(e){return e.funcColsService.getValueColumns()}function removeValueColumn(e,t){e.funcColsService.removeValueColumns([t],"api")}function removeValueColumns(e,t){e.funcColsService.removeValueColumns(t,"api")}function addValueColumn(e,t){e.funcColsService.addValueColumns([t],"api")}function addValueColumns(e,t){e.funcColsService.addValueColumns(t,"api")}function setRowGroupColumns(e,t){e.funcColsService.setRowGroupColumns(t,"api")}function removeRowGroupColumn(e,t){e.funcColsService.removeRowGroupColumns([t],"api")}function removeRowGroupColumns(e,t){e.funcColsService.removeRowGroupColumns(t,"api")}function addRowGroupColumn(e,t){e.funcColsService.addRowGroupColumns([t],"api")}function addRowGroupColumns(e,t){e.funcColsService.addRowGroupColumns(t,"api")}function moveRowGroupColumn(e,t,s){e.funcColsService.moveRowGroupColumn(t,s,"api")}function getRowGroupColumns(e){return e.funcColsService.getRowGroupColumns()}function setPivotColumns(e,t){e.funcColsService.setPivotColumns(t,"api")}function removePivotColumn(e,t){e.funcColsService.removePivotColumns([t],"api")}function removePivotColumns(e,t){e.funcColsService.removePivotColumns(t,"api")}function addPivotColumn(e,t){e.funcColsService.addPivotColumns([t],"api")}function addPivotColumns(e,t){e.funcColsService.addPivotColumns(t,"api")}function getPivotColumns(e){return e.funcColsService.getPivotColumns()}function setPivotResultColumns(e,t){e.pivotResultColsService.setPivotResultCols(t,"api")}function getPivotResultColumns(e){const t=e.pivotResultColsService.getPivotResultCols();return t?t.list:null}var ShowRowGroupColsService=class extends import_core186.BeanStub{constructor(){super(...arguments),this.beanName="showRowGroupColsService"}wireBeans(e){this.columnModel=e.columnModel,this.funcColsService=e.funcColsService}refresh(){this.showRowGroupCols=[],this.showRowGroupColsMap={},this.columnModel.getCols().forEach(e=>{const s=e.getColDef().showRowGroup,i=typeof s=="string";!i&&!(s===!0)||(this.showRowGroupCols.push(e),i?this.showRowGroupColsMap[s]=e:this.funcColsService.getRowGroupColumns().forEach(o=>{this.showRowGroupColsMap[o.getId()]=e}))})}getShowRowGroupCols(){return this.showRowGroupCols}getShowRowGroupCol(e){return this.showRowGroupColsMap[e]}},VERSION6="32.2.2",RowGroupingCoreModule=(0,import_core164._defineModule)({version:VERSION6,moduleName:`${import_core164.ModuleNames.RowGroupingModule}-core`,beans:[AggregationStage,FilterAggregatesStage,GroupStage,PivotColDefService,PivotStage,AggFuncService,AutoColService,ShowRowGroupColsService,ColumnDropZoneService],userComponents:[{name:"agGroupRowRenderer",classImp:GroupCellRenderer},{name:"agGroupCellRenderer",classImp:GroupCellRenderer}],controllers:[{name:"groupCellRendererCtrl",classImp:GroupCellRendererCtrl}],dependantModules:[EnterpriseCoreModule]}),RowGroupingApiModule=(0,import_core164._defineModule)({version:VERSION6,moduleName:`${import_core164.ModuleNames.RowGroupingModule}-api`,apiFunctions:{addAggFunc,addAggFuncs,clearAggFuncs,setColumnAggFunc,isPivotMode,getPivotResultColumn,setValueColumns,getValueColumns,removeValueColumn,removeValueColumns,addValueColumn,addValueColumns,setRowGroupColumns,removeRowGroupColumn,removeRowGroupColumns,addRowGroupColumn,addRowGroupColumns,getRowGroupColumns,moveRowGroupColumn,setPivotColumns,removePivotColumn,removePivotColumns,addPivotColumn,addPivotColumns,getPivotColumns,setPivotResultColumns,getPivotResultColumns},dependantModules:[RowGroupingCoreModule]}),GroupFilterModule=(0,import_core164._defineModule)({version:VERSION6,moduleName:"@ag-grid-enterprise/group-filter",userComponents:[{name:"agGroupColumnFilter",classImp:GroupFilter}],dependantModules:[RowGroupingCoreModule,import_core164._ColumnFilterModule]}),GroupFloatingFilterModule=(0,import_core164._defineModule)({version:VERSION6,moduleName:"@ag-grid-enterprise/group-floating-filter",userComponents:[{name:"agGroupColumnFloatingFilter",classImp:GroupFloatingFilterComp}],dependantModules:[GroupFilterModule,import_core164._FloatingFilterModule]}),RowGroupingModule=(0,import_core164._defineModule)({version:VERSION6,moduleName:import_core164.ModuleNames.RowGroupingModule,dependantModules:[RowGroupingCoreModule,RowGroupingApiModule,GroupFilterModule,GroupFloatingFilterModule]}),ValuesDropZonePanel=class extends BaseDropZonePanel{constructor(e){super(e,"aggregation")}postConstruct(){const e=this.localeService.getLocaleTextFunc(),t=e("valueColumnsEmptyMessage","Drag here to aggregate"),s=e("values","Values");super.init({icon:(0,import_core187._createIconNoSpan)("valuePanel",this.gos,null),emptyMessage:t,title:s}),this.addManagedEventListeners({columnValueChanged:this.refreshGui.bind(this)})}getAriaLabel(){return this.localeService.getLocaleTextFunc()("ariaValuesDropZonePanelLabel","Values")}getTooltipParams(){const e=super.getTooltipParams();return e.location="valueColumnsList",e}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.funcColsService.setValueColumns(e,"toolPanelUi")}getExistingItems(){return this.funcColsService.getValueColumns()}},import_core198=require("ag-grid-community"),import_core189=require("ag-grid-community"),import_core188=require("ag-grid-community");function isColGroupDef(e){return!!e&&typeof e.children<"u"}function getId(e){return isColGroupDef(e)?e.groupId:e.colId}function addChildrenToGroup(e,t,s){const i=(o,n)=>{const l=o.children.map(getId),c=(0,import_core188._includes)(l,getId(n)),h=(0,import_core188._last)(o.children),d=h&&getId(h)!==getId(n);return c&&d};if(!isColGroupDef(e))return!0;const r=e,a=s;if(i(r,a))return r.children.push(a),!0;if(r.groupId===t){const o=r.children.map(getId);if(!(0,import_core188._includes)(o,getId(a)))return r.children.push(a),!0}for(let o=r.children.length-1;o>=0&&!addChildrenToGroup(r.children[o],t,s);o--);return!1}function mergeLeafPathTrees(e){const t=(r,a)=>isColGroupDef(r)&&isColGroupDef(a)&&getId(r)===getId(a),s=(r,a)=>{if(!isColGroupDef(a))return r;const o=r,n=a;return n.children&&n.groupId&&addChildrenToGroup(o,n.groupId,n.children[0])||n.children.forEach(l=>s(o,l)),o},i=[];for(let r=1;r<=e.length;r++){const a=e[r-1],o=e[r];t(a,o)?e[r]=s(a,o):i.push(a)}return i}var ToolPanelColDefService=class extends import_core189.BeanStub{constructor(){super(...arguments),this.beanName="toolPanelColDefService"}wireBeans(e){this.columnModel=e.columnModel}createColumnTree(e){const t=[],s=(r,a)=>{if(isColGroupDef(r)){const o=r,n=typeof o.groupId<"u"?o.groupId:o.headerName,l=new import_core189.AgProvidedColumnGroup(o,n,!1,a),c=[];return o.children.forEach(h=>{const d=s(h,a+1);d&&c.push(d)}),l.setChildren(c),l}else{const o=r,n=o.colId?o.colId:o.field,l=this.columnModel.getColDefCol(n);return l||t.push(o),l}},i=[];return e.forEach(r=>{const a=s(r,0);a&&i.push(a)}),t.length>0&&(0,import_core189._warnOnce)("unable to find grid columns for the supplied colDef(s):",t),i}syncLayoutWithGrid(e){const t=this.getLeafPathTrees(),s=mergeLeafPathTrees(t);e(s)}getLeafPathTrees(){const e=(i,r)=>{let a;if((0,import_core189.isProvidedColumnGroup)(i))if(i.isPadding())a=r;else{const n=Object.assign({},i.getColGroupDef());n.groupId=i.getGroupId(),n.children=[r],a=n}else{const n=Object.assign({},i.getColDef());n.colId=i.getColId(),a=n}const o=i.getOriginalParent();return o?e(o,a):a};return this.columnModel.getCols().filter(i=>{const r=i.getColDef();return i.isPrimary()&&!r.showRowGroup}).map(i=>e(i,i.getColDef()))}},import_core190=require("ag-grid-community");function isSideBarVisible(e){return e.sideBarService?.getSideBarComp().isDisplayed()??!1}function setSideBarVisible(e,t){e.sideBarService?.getSideBarComp().setDisplayed(t)}function setSideBarPosition(e,t){e.sideBarService?.getSideBarComp().setSideBarPosition(t)}function openToolPanel(e,t){e.sideBarService?.getSideBarComp().openToolPanel(t,"api")}function closeToolPanel(e){e.sideBarService?.getSideBarComp().close("api")}function getOpenedToolPanel(e){return e.sideBarService?.getSideBarComp().openedItem()??null}function refreshToolPanel(e){e.sideBarService?.getSideBarComp().refresh()}function isToolPanelShowing(e){return e.sideBarService?.getSideBarComp().isToolPanelShowing()??!1}function getToolPanelInstance(e,t){const s=e.sideBarService?.getSideBarComp().getToolPanelInstance(t);return(0,import_core190._unwrapUserComp)(s)}function getSideBar(e){return e.sideBarService?.getSideBarComp().getDef()}var import_core197=require("ag-grid-community"),import_core196=require("ag-grid-community"),import_core192=require("ag-grid-community"),import_core191=require("ag-grid-community"),SideBarButtonComp=class extends import_core191.Component{constructor(e){super(),this.eToggleButton=import_core191.RefPlaceholder,this.eIconWrapper=import_core191.RefPlaceholder,this.eLabel=import_core191.RefPlaceholder,this.toolPanelDef=e}getToolPanelId(){return this.toolPanelDef.id}postConstruct(){const e=this.createTemplate();this.setTemplate(e,[]),this.setLabel(),this.setIcon(),this.addManagedElementListeners(this.eToggleButton,{click:this.onButtonPressed.bind(this)}),this.eToggleButton.setAttribute("id",`ag-${this.getCompId()}-button`)}createTemplate(){return`<div class="ag-side-button" role="presentation">
|
|
346
|
+
`),this.eFloatingFilter=import_core179.RefPlaceholder,this.haveAddedColumnListeners=!1}wireBeans(e){this.columnNameService=e.columnNameService,this.filterManager=e.filterManager}init(e){this.params=e;const t=this.gos.get("groupDisplayType")==="multipleColumns";return new import_core179.AgPromise(s=>{this.params.parentFilterInstance(i=>{this.parentFilterInstance=i,t?this.setupUnderlyingFloatingFilterElement().then(()=>s()):(this.setupReadOnlyFloatingFilterElement(),s())})}).then(()=>{this.addManagedListeners(this.parentFilterInstance,{selectedColumnChanged:this.onSelectedColumnChanged.bind(this),columnRowGroupChanged:this.onColumnRowGroupChanged.bind(this)})})}onParamsUpdated(e){this.refresh(e)}refresh(e){this.params=e,this.setParams()}setParams(){const e=this.columnNameService.getDisplayNameForColumn(this.params.column,"header",!0),t=this.localeService.getLocaleTextFunc();this.eFloatingFilterText?.setInputAriaLabel(`${e} ${t("ariaFilterInput","Filter Input")}`)}setupReadOnlyFloatingFilterElement(){this.eFloatingFilterText||(this.eFloatingFilterText=this.createManagedBean(new import_core179.AgInputTextField),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,(0,import_core179._clearElement)(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(),import_core179.AgPromise.resolve()}onColumnVisibleChanged(){this.setupUnderlyingFloatingFilterElement()}onColDefChanged(e){if(!e.column)return;const t=this.filterManager.getFloatingFilterCompDetails(e.column,this.params.showParentFilter);t&&(this.underlyingFloatingFilter?.refresh?this.underlyingFloatingFilter.refresh(t.params):this.underlyingFloatingFilter?.onParamsUpdated?.(t.params))}onParentModelChanged(e,t){this.showingUnderlyingFloatingFilter?this.underlyingFloatingFilter?.onParentModelChanged(this.parentFilterInstance.getSelectedFilter()?.getModel(),t):this.updateDisplayedValue()}updateDisplayedValue(){if(!this.parentFilterInstance||!this.eFloatingFilterText)return;const e=this.parentFilterInstance.getSelectedFilter();if(!e){this.eFloatingFilterText.setValue(""),this.eFloatingFilterText.setDisplayed(!1);return}if(this.eFloatingFilterText.setDisplayed(!0),e.getModelAsString){const t=e.getModel();this.eFloatingFilterText.setValue(t==null?"":e.getModelAsString(t))}else this.eFloatingFilterText.setValue("")}onSelectedColumnChanged(){this.showingUnderlyingFloatingFilter||this.updateDisplayedValue()}onColumnRowGroupChanged(){this.showingUnderlyingFloatingFilter||this.updateDisplayedValue()}destroy(){super.destroy()}},BatchRemover=class{constructor(){this.allSets={},this.allParents=[]}removeFromChildrenAfterGroup(e,t){const s=this.getSet(e);s.removeFromChildrenAfterGroup[t.id]=!0}isRemoveFromAllLeafChildren(e,t){return!!this.getSet(e).removeFromAllLeafChildren[t.id]}preventRemoveFromAllLeafChildren(e,t){const s=this.getSet(e);delete s.removeFromAllLeafChildren[t.id]}removeFromAllLeafChildren(e,t){const s=this.getSet(e);s.removeFromAllLeafChildren[t.id]=!0}getSet(e){return this.allSets[e.id]||(this.allSets[e.id]={removeFromAllLeafChildren:{},removeFromChildrenAfterGroup:{}},this.allParents.push(e)),this.allSets[e.id]}getAllParents(){return this.allParents}flush(){this.allParents.forEach(e=>{const t=this.allSets[e.id];e.childrenAfterGroup=e.childrenAfterGroup.filter(i=>!t.removeFromChildrenAfterGroup[i.id]),e.allLeafChildren=e.allLeafChildren?.filter(i=>!t.removeFromAllLeafChildren[i.id])??null,e.updateHasChildren();const s=e.sibling;s&&(s.childrenAfterGroup=e.childrenAfterGroup,s.allLeafChildren=e.allLeafChildren)}),this.allSets={},this.allParents.length=0}};function sortGroupChildren(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(compareGroupChildren(e[i-1],e[i])>0){s=!0;break}return s?(e.sort(compareGroupChildren),!0):!1}function compareGroupChildren(e,t){const s=e.sourceRowIndex,i=t.sourceRowIndex,r=s>=0,a=i>=0,o=r&&a,n=!r&&!a;return o?s-i:n?e.__objectId-t.__objectId:r?1:-1}var GroupStrategy=class extends import_core181.BeanStub{wireBeans(e){this.beans=e,this.columnModel=e.columnModel,this.funcColsService=e.funcColsService,this.valueService=e.valueService,this.selectionService=e.selectionService,this.showRowGroupColsService=e.showRowGroupColsService}execute(e){const t=this.createGroupingDetails(e);if(t.transactions)this.handleTransaction(t);else{const s=e.afterColumnsChanged===!0;this.shotgunResetEverything(t,s)}this.positionLeafsAndGroups(e.changedPath),this.orderGroups(t)}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,rowNodeTransactions:i,rowNodesOrderChanged:r}=e,a=this.funcColsService.getRowGroupColumns();return{expandByDefault:this.gos.get("groupDefaultExpanded"),groupedCols:a,rootNode:t,pivotMode:this.columnModel.isPivotMode(),groupedColCount:a?.length??0,transactions:i,rowNodesOrderChanged:!!r,changedPath:s,groupAllowUnbalanced:this.gos.get("groupAllowUnbalanced"),isGroupOpenByDefault:this.gos.getCallback("isGroupOpenByDefault"),initialGroupOrderComparator:this.gos.getCallback("initialGroupOrderComparator"),suppressGroupMaintainValueType:this.gos.get("suppressGroupMaintainValueType"),keyCreators:a?.map(n=>n.getColDef().keyCreator)??[]}}handleTransaction(e){e.transactions.forEach(t=>{const s=new BatchRemover;(0,import_core181._existsAndNotEmpty)(t.remove)&&this.removeNodes(t.remove,e,s),(0,import_core181._existsAndNotEmpty)(t.update)&&this.moveNodesInWrongPath(t.update,e,s),(0,import_core181._existsAndNotEmpty)(t.add)&&this.insertNodes(t.add,e);const i=s.getAllParents().slice();s.flush(),this.removeEmptyGroups(i,e)}),e.rowNodesOrderChanged&&this.sortChildren(e)}sortChildren(e){e.changedPath.forEachChangedNodeDepthFirst(t=>{sortGroupChildren(t.childrenAfterGroup)&&e.changedPath.addParentNode(t)},!1,!0)}orderGroups(e){const t=e.initialGroupOrderComparator;(0,import_core181._exists)(t)&&s(e.rootNode);function s(i){(0,import_core181._exists)(i.childrenAfterGroup)&&!i.leafGroup&&(i.childrenAfterGroup.sort((a,o)=>t({nodeA:a,nodeB:o})),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}moveNodesInWrongPath(e,t,s){e.forEach(i=>{t.changedPath.isActive()&&t.changedPath.addParentNode(i.parent);const r=l=>l.key,a=this.getExistingPathForNode(i,t).map(r),o=this.getGroupInfo(i,t).map(r);(0,import_core181._areEqual)(a,o)||this.moveNode(i,t,s)})}moveNode(e,t,s){if(this.removeNodesFromParents([e],t,s),this.insertOneNode(e,t,s),e.setData(e.data),t.changedPath.isActive()){const i=e.parent;t.changedPath.addParentNode(i)}}removeNodes(e,t,s){this.removeNodesFromParents(e,t,s),t.changedPath.isActive()&&e.forEach(i=>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 BatchRemover;e.forEach(a=>{this.removeFromParent(a,r),this.forEachParentGroup(t,a.parent,o=>{r.removeFromAllLeafChildren(o,a)})}),i&&r.flush()}removeEmptyGroups(e,t){let s=!0;const i=r=>{const a=this.getChildrenMappedKey(r.key,r.rowGroupColumn),o=r.parent;return(o?.childrenMapped?!o.childrenMapped[a]:!0)?!1:!!r.group&&(r.childrenAfterGroup?.length??0)===0};for(;s;){s=!1;const r=new BatchRemover;e.forEach(a=>{this.forEachParentGroup(t,a,o=>{i(o)&&(s=!0,this.removeFromParent(o,r),o.setSelectedParams({newValue:!1,source:"rowGroupChanged"}))})}),r.flush()}}removeFromParent(e,t){e.parent&&(t?t.removeFromChildrenAfterGroup(e.parent,e):((0,import_core181._removeFromArray)(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),t.setGroup(!0))}areGroupColsEqual(e,t){return e==null||t==null||e.pivotMode!==t.pivotMode?!1:(0,import_core181._areEqual)(e.groupedCols,t.groupedCols)&&(0,import_core181._areEqual)(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,e),t(i.childrenAfterGroup)})};t(e.rootNode.childrenAfterGroup)}shotgunResetEverything(e,t){if(this.noChangeInGroupingColumns(e,t))return;this.selectionService.filterFromSelection(a=>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.showRowGroupColsService.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.isActive()&&t.changedPath.addParentNode(s.parent)})}insertOneNode(e,t,s){const i=this.getGroupInfo(e,t),r=this.findParentForNode(e,i,t,s);r.group||(0,import_core181._warnOnce)("duplicate group keys for row data, keys should be unique",[r.data,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,o)=>{r=this.getOrCreateNextNode(r,a,o,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 import_core181.RowNode(this.beans);return r.group=!0,r.field=e.field,r.rowGroupColumn=e.rowGroupColumn,this.setGroupData(r,e,i),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 o=a?i(a,a.parent,0):null;return`${o==null?"":o+"-"}${r.rowGroupColumn.getColId()}-${r.key}`};return import_core181.RowNode.ID_PREFIX_ROW_GROUP+i(e,t,s)}setGroupData(e,t,s){e.groupData={},this.showRowGroupColsService.getShowRowGroupCols().forEach(r=>{const a=e.rowGroupColumn;a!==null&&r.isRowGroupDisplayed(a.getId())&&(s.suppressGroupMaintainValueType?e.groupData[r.getColId()]=t.key:e.groupData[r.getColId()]=this.valueService.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.valueService.getKeyForNode(i,e),a=r!=null&&r!=="";if((t.pivotMode||!t.groupAllowUnbalanced)&&!a&&(r="",a=!0),a){const n={key:r,field:i.getColDef().field,rowGroupColumn:i,leafNode:e};s.push(n)}}),s}},treeNodePositionComparer=(e,t)=>e.treeNode.oldSourceRowIndex-t.treeNode.oldSourceRowIndex,EMPTY_ARRAY=Object.freeze([]),EMPTY_CHILDREN=EMPTY_ARRAY.values(),orphanRow=(e,t)=>{e.parent=null,e.treeNode=null,t?e.childrenAfterGroup=[]:(e.level=0,e.childrenAfterGroup=null,e.allLeafChildren=null)},TreeNode=class ne{constructor(t,s,i){this.parent=t,this.key=s,this.level=i,this.children=null,this.invalidatedHead=null,this.invalidatedNext=void 0,this.row=null,this.oldRow=null,this.duplicateRows=null,this.childrenAfterGroup=EMPTY_ARRAY,this.allLeafChildren=EMPTY_ARRAY,this.childrenChanged=!1,this.leafChildrenChanged=!1,this.oldSourceRowIndex=-1}isEmptyFillerNode(){return!this.row?.data&&!this.children?.size}hasChildren(){return!!this.children?.size}enumChildren(){return this.children?.values()??EMPTY_CHILDREN}upsertKey(t){typeof t!="string"&&(t=String(t));let s=this.children?.get(t);return s||(s=new ne(this,t,this.level+1),(this.children??(this.children=new Map))?.set(s.key,s)),s}destroy(){const{row:t,parent:s}=this;s!==null&&(s?.children?.delete(this.key),t!==null&&orphanRow(t,!0),this.parent=null)}setRow(t){const{level:s,row:i,childrenAfterGroup:r}=this;if(s<0)i!==null&&i!==t&&orphanRow(i,!0);else{if(i===t)return!1;i!==null?(t.allLeafChildren=i.allLeafChildren??this.allLeafChildren??EMPTY_ARRAY,orphanRow(i,!1)):t.allLeafChildren=this.allLeafChildren??EMPTY_ARRAY}return t.level=s,t.childrenAfterGroup=r,t.treeNode=this,this.row=t,!0}removeRow(t){const{level:s,row:i,duplicateRows:r,childrenAfterGroup:a}=this;if(i===t){const o=this.popDuplicateRow();o?(this.row=o,o.childrenAfterGroup=a,s>=0&&(o.allLeafChildren=i.allLeafChildren??this.allLeafChildren??EMPTY_ARRAY)):this.row=null}else{if(!r?.delete(t))return!1;r.size===0&&(this.duplicateRows=null)}return orphanRow(t,s<0),!0}addDuplicateRow(t){const{level:s}=this;let i=this.duplicateRows;if(i===null)i=new Set,this.duplicateRows=i;else if(i.has(t))return!1;return i.add(t),t.treeNode=this,t.level=s,s>=0&&(t.allLeafChildren=EMPTY_ARRAY),t.childrenAfterGroup=EMPTY_ARRAY,!0}sortFirstDuplicateRow(){const t=this.duplicateRows,s=this.row;if(!s||!t)return s;let i=s;for(const r of t)r.sourceRowIndex<i.sourceRowIndex&&(i=r);return i!==s&&(i.childrenAfterGroup=this.childrenAfterGroup,i.allLeafChildren=s.allLeafChildren??this.allLeafChildren??EMPTY_ARRAY,s.childrenAfterGroup=EMPTY_ARRAY,s.allLeafChildren=EMPTY_ARRAY,t.delete(i),t.add(s),this.row=i),i}popDuplicateRow(){let t=null;const s=this.duplicateRows;return s!==null&&(t=s.values().next().value,t!==null&&s.delete(t)&&s.size===0&&(this.duplicateRows=null)),t}dequeueInvalidated(){const t=this.invalidatedHead;return t!==null&&(this.invalidatedHead=t.invalidatedNext??null,t.invalidatedNext=void 0),t}invalidate(){let t=this,s=this.parent;for(;s!==null&&t.invalidatedNext===void 0;)t.invalidatedNext=s.invalidatedHead,s.invalidatedHead=t,t=s,s=t.parent}invalidateOrder(){const t=this.parent;t!==null&&!t.childrenChanged&&((this.children?.size??0)>1||!t.row?.data)&&(t.childrenChanged=!0,t.invalidate())}getRowPosition(){const t=this.row;return t?.data?t.sourceRowIndex:this.childrenAfterGroup[0]?.treeNode?.oldSourceRowIndex??this.oldSourceRowIndex}updateChildrenAfterGroup(){this.childrenChanged=!1;const t=this.children?.size??0;if(t===0)return this.childrenAfterGroup.length===0?!1:(this.leafChildrenChanged=!0,this.childrenAfterGroup=EMPTY_ARRAY,this.row.childrenAfterGroup=EMPTY_ARRAY,!0);let s=!1,i=this.childrenAfterGroup;i===EMPTY_ARRAY?(i=new Array(t),this.childrenAfterGroup=i,this.row.childrenAfterGroup=i,s=!0):i.length!==t&&(i.length=t,s=!0);let r=0,a=-1,o=!1;for(const n of this.enumChildren()){const l=n.getRowPosition();l<a&&(o=!0),a=l,n.oldSourceRowIndex=l;const c=n.row;i[r]!==c&&(i[r]=c,s=!0),++r}return s&&(this.leafChildrenChanged=!0),o&&this.reorderChildrenList(i),s||o}reorderChildrenList(t){const s=t.length,i=this.children;t.sort(treeNodePositionComparer),i.clear();for(let r=0;r<s;++r){const a=t[r].treeNode;i.set(a.key,a)}}updateAllLeafChildren(){const{parent:t,row:s,childrenAfterGroup:i}=this;this.leafChildrenChanged=!1;let r=!1;const a=i.length;if(a===0)r=s.allLeafChildren?.length!==0,s.allLeafChildren=EMPTY_ARRAY,this.allLeafChildren=EMPTY_ARRAY;else if(a===1&&i[0].allLeafChildren?.length)s.allLeafChildren=i[0].allLeafChildren,this.allLeafChildren=null,r=!0;else{let o=this.allLeafChildren;(o===EMPTY_ARRAY||o===null)&&(o=[],this.allLeafChildren=o);const n=o.length;let l=0;for(let c=0;c<a;++c){const h=i[c],d=h.allLeafChildren,u=d.length;if(u)for(let p=0;p<u;++p){const g=d[p];(l>=n||o[l]!==g)&&(o[l]=g,r=!0),++l}else(l>=n||o[l]!==h)&&h&&(o[l]=h,r=!0),++l}n!==l&&(o.length=l,r=!0),s.allLeafChildren!==o&&(s.allLeafChildren=o,r=!0)}r&&t&&(t.leafChildrenChanged=!0)}},isTreeRowCommitted=e=>(e.treeNodeFlags&1)!==0,isTreeRowExpandedInitialized=e=>(e.treeNodeFlags&2)!==0,isTreeRowUpdated=e=>(e.treeNodeFlags&4)!==0,isTreeRowKeyChanged=e=>(e.treeNodeFlags&8)!==0,isTreeRowPathChanged=e=>(e.treeNodeFlags&16)!==0,setTreeRowExpandedInitialized=(e,t)=>{t?e.treeNodeFlags|=2:e.treeNodeFlags&=-3},setTreeRowUpdated=e=>{const t=e.treeNodeFlags;t&1&&(e.treeNodeFlags=t|4)},setTreeRowKeyChanged=e=>{const t=e.treeNodeFlags;t&1&&(e.treeNodeFlags=t|12)},markTreeRowPathChanged=e=>{e.treeNodeFlags|=16},markTreeRowCommitted=e=>{e.treeNodeFlags=1|e.treeNodeFlags&-29},clearTreeRowFlags=e=>{e.treeNodeFlags=0},TreeStrategy=class extends import_core182.BeanStub{constructor(){super(...arguments),this.rowsPendingDestruction=null,this.root=new TreeNode(null,"",-1)}wireBeans(e){this.beans=e,this.showRowGroupColsService=e.showRowGroupColsService}destroy(){const e=this.root.row;e!==null&&(this.root.removeRow(e),clearTreeRowFlags(e)),this.destroyTree(this.root),this.commitDestroyedRows(),super.destroy()}execute(e){const{rowNodeTransactions:t,rowNodesOrderChanged:s,changedPath:i}=e,r=e.rowNode,a=this.gos,o={changedPath:i,expandByDefault:a.get("groupDefaultExpanded"),suppressGroupMaintainValueType:a.get("suppressGroupMaintainValueType"),getDataPath:a.get("getDataPath"),isGroupOpenByDefault:a.getCallback("isGroupOpenByDefault"),initialGroupOrderComparator:a.getCallback("initialGroupOrderComparator")};this.root.setRow(r),r.leafGroup=!1;const l=r.sibling;l&&(l.childrenAfterGroup=r.childrenAfterGroup,l.childrenMapped=r.childrenMapped),t?this.handleTransaction(o,t,s):this.handleRowData(o,r,e.afterColumnsChanged===!0)}handleRowData(e,t,s){const i=this.root;if(s||this.oldGroupDisplayColIds===void 0){const r=this.showRowGroupColsService?.getShowRowGroupCols()?.map(a=>a.getId()).join("-")??"";if(s){this.oldGroupDisplayColIds!==r&&this.checkAllGroupDataAfterColsChanged(i.row?.childrenAfterGroup);return}this.oldGroupDisplayColIds=r}this.clearTree(i),this.addOrUpdateRows(e,t.allLeafChildren,!1),this.commitTree(e)}handleTransaction(e,t,s){for(const{remove:i,update:r,add:a}of t)this.removeRows(i),this.addOrUpdateRows(e,r,!0),this.addOrUpdateRows(e,a,!1);s&&this.handleRowNodesOrderChanged(),this.commitTree(e)}handleRowNodesOrderChanged(){const e=this.root.row?.allLeafChildren;if(e)for(let t=0,s=e.length;t<s;++t){const i=e[t].treeNode;i&&i.oldSourceRowIndex!==t&&i.invalidateOrder()}}checkAllGroupDataAfterColsChanged(e){for(let t=0,s=e?.length??0;t<s;++t){const i=e[t];this.setGroupData(i,i.treeNode?.key??i.key),this.checkAllGroupDataAfterColsChanged(i.childrenAfterGroup)}}addOrUpdateRows(e,t,s){for(let i=0,r=t?.length??0;i<r;++i){const a=t[i],o=this.upsertPath(this.getDataPath(e,a));o&&this.addOrUpdateRow(o,a,s)}}removeRows(e){for(let t=0,s=e?.length??0;t<s;++t){const i=e[t],r=i.treeNode;r!==null&&this.removeRow(r,i)}}getDataPath({getDataPath:e},{data:t}){const s=e?.(t)||EMPTY_ARRAY;return s.length||(0,import_core182._warnOnce)("getDataPath() should not return an empty path",[t]),s}upsertPath(e){let t=this.root;const s=e.length-1;for(let i=0;i<=s;++i){const r=t.upsertKey(e[i]);if(i>=s)return r.invalidate(),r;t=r}return null}addOrUpdateRow(e,t,s){const{level:i,row:r}=e;if(i<0)return;let a=!1;if(r!==t){const o=t.treeNode;o!==null&&o!==e&&(o.removeRow(t),o.invalidate()),r===null?(e.setRow(t),a=!0):r.data?e.addDuplicateRow(t)&&(a=!0):(e.setRow(t),this.destroyRow(r,!0),a=!0)}s&&!isTreeRowUpdated(t)&&(setTreeRowUpdated(t),a=!0),a&&e.invalidate(),this.rowsPendingDestruction?.delete(t)}removeRow(e,t){const{parent:s,level:i}=e;if(i<0)return;let r=!1;e.removeRow(t)&&(r=!0,s&&(s.childrenChanged=!0),this.destroyRow(t,!t.data)),r&&e.invalidate()}commitTree(e){const t=this.root;this.commitInvalidatedChildren(e,t);const s=t.row;t.childrenChanged&&t.updateChildrenAfterGroup()&&markTreeRowPathChanged(s),s.updateHasChildren(),isTreeRowPathChanged(s)&&e.changedPath?.isActive()&&e.changedPath.addParentNode(s),markTreeRowCommitted(s),this.commitDestroyedRows()}commitInvalidatedChildren(e,t){for(;;){const s=t.dequeueInvalidated();if(s===null)break;s.parent===t&&this.commitChild(e,t,s)}}commitChild(e,t,s){if(s.isEmptyFillerNode()){this.clearTree(s);return}this.commitNodePreOrder(t,s),this.commitInvalidatedChildren(e,s),this.commitNodePostOrder(e,t,s)}commitNodePreOrder(e,t){let s=t.row;if(s===null?(s=this.createFillerRow(t),t.setRow(s)):(s=t.sortFirstDuplicateRow(),s.allChildrenCount===void 0&&(s.allChildrenCount=null)),s.parent=e.row,t.oldRow!==s)for(const r of t.enumChildren()){const a=r.row;a!==null&&(a.parent=s)}const i=t.key;s.key!==i?(s.key=i,setTreeRowKeyChanged(s),this.setGroupData(s,i)):s.groupData||this.setGroupData(s,i)}commitNodePostOrder(e,t,s){const i=s.row,r=s.oldRow;if(s.isEmptyFillerNode()){this.clearTree(s);return}s.childrenChanged&&s.updateChildrenAfterGroup()&&markTreeRowPathChanged(i),s.leafChildrenChanged&&s.updateAllLeafChildren();const a=s.getRowPosition();s.oldSourceRowIndex!==a&&(s.oldSourceRowIndex=a,t.childrenChanged=!0);const o=!!i.childrenAfterGroup?.length,n=o||!i.data,l=i.group;l!==n?(markTreeRowPathChanged(i),i.setGroup(n),!n&&!i.expanded&&setTreeRowExpandedInitialized(i,!1)):i.hasChildren()!==o&&(markTreeRowPathChanged(i),i.updateHasChildren()),i.group&&!isTreeRowExpandedInitialized(i)&&(r!==i&&r!==null&&r.group&&isTreeRowExpandedInitialized(r)&&!e.isGroupOpenByDefault?i.expanded=r.expanded:i.expanded=this.getExpandedInitialValue(e,i),setTreeRowExpandedInitialized(i,!0)),isTreeRowUpdated(i)&&(markTreeRowPathChanged(t.row),isTreeRowKeyChanged(i)&&i.setData(i.data)),r!==i&&(s.oldRow=i,r!==null&&(l||s.hasChildren())&&markTreeRowPathChanged(i),t.childrenChanged=!0,markTreeRowPathChanged(t.row)),isTreeRowPathChanged(i)?e.changedPath?.isActive()&&e.changedPath.addParentNode(i):isTreeRowCommitted(i)||(i.childrenAfterFilter||(i.childrenAfterFilter=i.childrenAfterGroup.slice()),i.childrenAfterAggFilter||(i.childrenAfterAggFilter=i.childrenAfterFilter.slice()),i.childrenAfterSort||(i.childrenAfterSort=i.childrenAfterAggFilter.slice())),markTreeRowCommitted(i),s.duplicateRows?.size&&!s.duplicateRowsWarned&&(s.duplicateRowsWarned=!0,(0,import_core182._warnOnce)("duplicate group keys for row data, keys should be unique",[i.id,i.data,...Array.from(s.duplicateRows).map(c=>c.data)]))}createFillerRow(e){const t=new import_core183.RowNode(this.beans);t.key=e.key,t.group=!0,t.field=null,t.leafGroup=!1,t.rowGroupIndex=null,t.allChildrenCount=null;let s=e.level+"-"+e.key,i=e.parent;for(;i!==null;){const r=i.parent;if(r===null)break;s=`${i.level}-${i.key}-${s}`,i=r}return t.id=import_core183.RowNode.ID_PREFIX_ROW_GROUP+s,t}setGroupData(e,t){const s={};e.groupData=s;const i=this.showRowGroupColsService?.getShowRowGroupCols();if(i)for(const r of i)s[r.getColId()]=t}getExpandedInitialValue(e,t){const s=e.isGroupOpenByDefault;return s?s({rowNode:t,field:t.field,key:t.key,level:t.level,rowGroupColumn:t.rowGroupColumn})==!0:e.expandByDefault===-1||t.level<e.expandByDefault}clearTree(e){const{parent:t,oldRow:s,row:i,level:r}=e;if(t!==null&&s!==null&&(t.childrenChanged=!0,t.row!==null&&markTreeRowPathChanged(t.row)),i!==null&&r>=0){let a=e.row;for(;a!==null&&e.removeRow(a);)this.destroyRow(a,!a.data),a=e.row}for(const a of e.enumChildren())this.clearTree(a);e.destroy()}destroyTree(e){const{row:t,level:s,duplicateRows:i}=e;if(t&&(s>=0&&!t.data?this.destroyRow(t,!0):clearTreeRowFlags(t)),i)for(const r of i)s>=0&&!r.data?this.destroyRow(r,!0):clearTreeRowFlags(r);for(const r of e.enumChildren())this.destroyTree(r);e.destroy()}destroyRow(e,t){if(!isTreeRowCommitted(e)){clearTreeRowFlags(e);return}if(!t){(this.rowsPendingDestruction??(this.rowsPendingDestruction=new Set)).add(e);return}clearTreeRowFlags(e),e.setRowIndex(null),e.setRowTop(null),!e.data&&e.isSelected()&&e.setSelectedParams({newValue:!1,source:"rowGroupChanged"})}commitDestroyedRows(){const{rowsPendingDestruction:e}=this;if(e!==null){this.rowsPendingDestruction=null;for(const t of e)this.destroyRow(t,!0)}}},GroupStage=class extends import_core180.BeanStub{constructor(){super(...arguments),this.beanName="groupStage"}wireBeans(e){this.selectableService=e.selectableService}execute(e){const t=this.gos.get("treeData")?TreeStrategy:GroupStrategy;let s=this.strategy;s?.constructor!==t&&(this.destroyBean(s),s=this.createManagedBean(new t),this.strategy=s),s.execute(e),this.selectableService.updateSelectableAfterGrouping()}destroy(){this.destroyBean(this.strategy),this.strategy=void 0,super.destroy()}},PIVOT_ROW_TOTAL_PREFIX="PivotRowTotal_",PivotColDefService=class extends import_core184.BeanStub{constructor(){super(...arguments),this.beanName="pivotColDefService"}wireBeans(e){this.columnModel=e.columnModel,this.funcColsService=e.funcColsService,this.columnNameService=e.columnNameService}postConstruct(){const e=()=>this.gos.get("serverSidePivotResultFieldSeparator")??"_";this.fieldSeparator=e(),this.addManagedPropertyListener("serverSidePivotResultFieldSeparator",()=>{this.fieldSeparator=e()});const t=()=>this.gos.get("pivotDefaultExpanded");this.pivotDefaultExpanded=t(),this.addManagedPropertyListener("pivotDefaultExpanded",()=>{this.pivotDefaultExpanded=t()})}createPivotColumnDefs(e){const t=this.createPivotColumnsFromUniqueValues(e);function s(a,o=[]){return a.forEach(n=>{n.children!==void 0?s(n.children,o):o.push(n)}),o}const i=s(t);this.addRowGroupTotals(t,i),this.addExpandablePivotGroups(t,i),this.addPivotTotalsToGroups(t,i);const r=i.map(a=>(0,import_core184._cloneObject)(a));return{pivotColumnGroupDefs:t,pivotColumnDefs:r}}createPivotColumnsFromUniqueValues(e){const t=this.funcColsService.getPivotColumns(),s=t.length;return this.recursivelyBuildGroup(0,e,[],s,t)}recursivelyBuildGroup(e,t,s,i,r){const a=this.funcColsService.getValueColumns();if(e>=i)return this.buildMeasureCols(s);const o=r[e].getColDef(),n=this.headerNameComparator.bind(this,o.pivotComparator);if(a.length===1&&this.gos.get("removePivotHeaderRowWhenSingleValueColumn")&&e===i-1){const c=[];return(0,import_core184._iterateObject)(t,h=>{const d=[...s,h],u=this.createColDef(a[0],h,d);u.columnGroupShow="open",c.push(u)}),c.sort(n),c}const l=[];return(0,import_core184._iterateObject)(t,(c,h)=>{const d=this.pivotDefaultExpanded===-1||e<this.pivotDefaultExpanded,u=[...s,c];l.push({children:this.recursivelyBuildGroup(e+1,h,u,i,r),headerName:c,pivotKeys:u,columnGroupShow:"open",openByDefault:d,groupId:this.generateColumnGroupId(u)})}),l.sort(n),l}buildMeasureCols(e){const t=this.funcColsService.getValueColumns();return t.length===0?[this.createColDef(null,"-",e)]:t.map(s=>{const i=this.columnNameService.getDisplayNameForColumn(s,"header");return{...this.createColDef(s,i,e),columnGroupShow:"open"}})}addExpandablePivotGroups(e,t){const s=this.gos.get("suppressExpandablePivotGroups");if(s||this.gos.get("pivotColumnGroupTotals"))return;const i=(r,a,o)=>{if("children"in r){const c=new Map;r.children.forEach(d=>{i(d,a,c)});const h=!r.children.some(d=>d.children);this.funcColsService.getValueColumns().forEach(d=>{const u=this.columnNameService.getDisplayNameForColumn(d,"header"),p=this.createColDef(d,u,r.pivotKeys);p.pivotTotalColumnIds=c.get(d.getColId()),p.columnGroupShow=s?"open":"closed",p.aggFunc=d.getAggFunc(),h||(r.children.push(p),a.push(p))}),this.merge(o,c);return}if(!r.pivotValueColumn)return;const n=r.pivotValueColumn.getColId();o.has(n)?o.get(n).push(r.colId):o.set(n,[r.colId])};e.forEach(r=>{i(r,t,new Map)})}addPivotTotalsToGroups(e,t){if(!this.gos.get("pivotColumnGroupTotals"))return;const s=this.gos.get("pivotColumnGroupTotals")==="after",i=this.funcColsService.getValueColumns(),r=i.map(o=>o.getAggFunc());if(!r||r.length<1||!this.sameAggFuncs(r))return;const a=i[0];e.forEach(o=>{this.recursivelyAddPivotTotal(o,t,a,s)})}recursivelyAddPivotTotal(e,t,s,i){const r=e;if(!r.children){const o=e;return o.colId?[o.colId]:null}let a=[];if(r.children.forEach(o=>{const n=this.recursivelyAddPivotTotal(o,t,s,i);n&&(a=a.concat(n))}),r.children.length>1){const n=this.localeService.getLocaleTextFunc()("pivotColumnGroupTotals","Total"),l=this.createColDef(s,n,e.pivotKeys,!0);l.pivotTotalColumnIds=a,l.aggFunc=s.getAggFunc(),l.columnGroupShow=this.gos.get("suppressExpandablePivotGroups")?"open":void 0;const c=e.children;i?c.push(l):c.unshift(l),t.push(l)}return a}addRowGroupTotals(e,t){if(!this.gos.get("pivotRowTotals"))return;const s=this.gos.get("pivotRowTotals")==="after",r=this.funcColsService.getValueColumns().slice();s||r.reverse();const a=r.length>1||!this.gos.get("removePivotHeaderRowWhenSingleValueColumn");for(let o=0;o<r.length;o++){const n=r[o],l=this.columnNameService.getDisplayNameForColumn(n,"header"),c=this.createColDef(n,l,[]),h=[];for(let u=0;u<t.length;u++){const p=t[u];p.pivotValueColumn===n&&h.push(p.colId)}c.pivotTotalColumnIds=h,c.colId=PIVOT_ROW_TOTAL_PREFIX+c.colId;const d=a?{children:[c],pivotKeys:[],groupId:`${PIVOT_ROW_TOTAL_PREFIX}_pivotGroup_${n.getColId()}`}:c;t.push(c),s?e.push(d):e.unshift(d)}}createColDef(e,t,s,i=!1){const r={};if(e){const a=e.getColDef();Object.assign(r,a),r.hide=!1}return r.headerName=t,r.colId=this.generateColumnId(s||[],e&&!i?e.getColId():""),r.field=r.colId,r.valueGetter=a=>a.data?.[a.colDef.field],r.pivotKeys=s,r.pivotValueColumn=e,r.filter===!0&&(r.filter="agNumberColumnFilter"),r}sameAggFuncs(e){if(e.length==1)return!0;for(let t=1;t<e.length;t++)if(e[t]!==e[0])return!1;return!0}headerNameComparator(e,t,s){return e?e(t.headerName,s.headerName):t.headerName&&!s.headerName?1:!t.headerName&&s.headerName?-1:!t.headerName||!s.headerName?0:t.headerName<s.headerName?-1:t.headerName>s.headerName?1:0}merge(e,t){t.forEach((s,i)=>{const a=[...e.has(i)?e.get(i):[],...s];e.set(i,a)})}generateColumnGroupId(e){return`pivotGroup_${this.funcColsService.getPivotColumns().map(s=>s.getColId()).join("-")}_${e.join("-")}`}generateColumnId(e,t){return`pivot_${this.funcColsService.getPivotColumns().map(i=>i.getColId()).join("-")}_${e.join("-")}_${t}`}createColDefsFromFields(e){const t={};for(let r=0;r<e.length;r++){const o=e[r].split(this.fieldSeparator);let n=t;for(let l=0;l<o.length;l++){const c=o[l];n[c]==null&&(n[c]={}),n=n[c]}}const s=(r,a,o,n)=>{const l=[];for(const d in o){const u=o[d],p=s(`${r}${this.fieldSeparator}${d}`,d,u,n+1);l.push(p)}if(l.length===0){const d=this.columnModel.getColDefCol(a);if(d){const p=this.columnNameService.getDisplayNameForColumn(d,"header")??a,g=this.createColDef(d,p,void 0,!1);return g.colId=r,g.aggFunc=d.getAggFunc(),g.valueGetter=m=>m.data?.[r],g}return{colId:r,headerName:a,valueGetter:p=>p.data?.[r]}}return this.gos.get("removePivotHeaderRowWhenSingleValueColumn")&&l.length===1&&"colId"in l[0]?(l[0].headerName=a,l[0]):{openByDefault:this.pivotDefaultExpanded===-1||n<this.pivotDefaultExpanded,groupId:r,headerName:a,children:l}},i=[];for(const r in t){const a=t[r],o=s(r,r,a,0);i.push(o)}return i}},EXCEEDED_MAX_UNIQUE_VALUES="Exceeded maximum allowed pivot column count.",PivotStage=class extends import_core185.BeanStub{constructor(){super(...arguments),this.beanName="pivotStage",this.uniqueValues={},this.lastTimeFailed=!1,this.maxUniqueValues=-1,this.currentUniqueCount=0}wireBeans(e){this.valueService=e.valueService,this.columnModel=e.columnModel,this.pivotResultColsService=e.pivotResultColsService,this.funcColsService=e.funcColsService,this.pivotColDefService=e.pivotColDefService}execute(e){const t=e.changedPath;this.columnModel.isPivotActive()?this.executePivotOn(t):this.executePivotOff(t)}executePivotOff(e){this.aggregationColumnsHashLastTime=null,this.uniqueValues={},this.pivotResultColsService.isPivotResultColsPresent()&&(this.pivotResultColsService.setPivotResultCols(null,"rowModelUpdated"),e&&e.setInactive())}executePivotOn(e){const t=this.funcColsService.getValueColumns().length??1,s=this.gos.get("pivotMaxGeneratedColumns");this.maxUniqueValues=s===-1?-1:s/t;let i;try{i=this.bucketUpRowNodes(e)}catch(f){if(f.message===EXCEEDED_MAX_UNIQUE_VALUES){this.pivotResultColsService.setPivotResultCols([],"rowModelUpdated"),this.eventService.dispatchEvent({type:"pivotMaxColumnsExceeded",message:f.message}),this.lastTimeFailed=!0;return}throw f}const r=this.setUniqueValues(i),a=this.funcColsService.getValueColumns(),o=a.map(f=>`${f.getId()}-${f.getColDef().headerName}`).join("#"),n=a.map(f=>f.getAggFunc().toString()).join("#"),l=this.aggregationColumnsHashLastTime!==o,c=this.aggregationFuncsHashLastTime!==n;this.aggregationColumnsHashLastTime=o,this.aggregationFuncsHashLastTime=n;const h=this.funcColsService.getRowGroupColumns().map(f=>f.getId()).join("#"),d=h!==this.groupColumnsHashLastTime;this.groupColumnsHashLastTime=h;const u=this.gos.get("pivotRowTotals"),p=this.gos.get("pivotColumnGroupTotals"),g=this.gos.get("suppressExpandablePivotGroups"),m=this.gos.get("removePivotHeaderRowWhenSingleValueColumn"),C=u!==this.pivotRowTotalsLastTime||p!==this.pivotColumnGroupTotalsLastTime||g!==this.suppressExpandablePivotGroupsLastTime||m!==this.removePivotHeaderRowWhenSingleValueColumnLastTime;if(this.pivotRowTotalsLastTime=u,this.pivotColumnGroupTotalsLastTime=p,this.suppressExpandablePivotGroupsLastTime=g,this.removePivotHeaderRowWhenSingleValueColumnLastTime=m,this.lastTimeFailed||r||l||d||c||C){const{pivotColumnGroupDefs:f,pivotColumnDefs:v}=this.pivotColDefService.createPivotColumnDefs(this.uniqueValues);this.pivotColumnDefs=v,this.pivotResultColsService.setPivotResultCols(f,"rowModelUpdated"),e&&e.setInactive()}this.lastTimeFailed=!1}setUniqueValues(e){const t=JSON.stringify(e),s=JSON.stringify(this.uniqueValues);return t!==s?(this.uniqueValues=e,!0):!1}bucketUpRowNodes(e){this.currentUniqueCount=0;const t={};e.forEachChangedNodeDepthFirst(i=>{i.leafGroup&&(i.childrenMapped=null)});const s=i=>{i.leafGroup?this.bucketRowNode(i,t):i.childrenAfterFilter?.forEach(s)};return e.executeFromRootNode(s),t}bucketRowNode(e,t){const s=this.funcColsService.getPivotColumns();s.length===0?e.childrenMapped=null:e.childrenMapped=this.bucketChildren(e.childrenAfterFilter,s,0,t),e.sibling&&(e.sibling.childrenMapped=e.childrenMapped)}bucketChildren(e,t,s,i){const r={},a=t[s];if(e.forEach(o=>{let n=this.valueService.getKeyForNode(a,o);if((0,import_core185._missing)(n)&&(n=""),!i[n]){this.currentUniqueCount+=1,i[n]={};const l=this.maxUniqueValues!==-1,c=this.currentUniqueCount>this.maxUniqueValues;if(l&&c)throw Error(EXCEEDED_MAX_UNIQUE_VALUES)}r[n]||(r[n]=[]),r[n].push(o)}),s===t.length-1)return r;{const o={};return(0,import_core185._iterateObject)(r,(n,l)=>{o[n]=this.bucketChildren(l,t,s+1,i[n])}),o}}getPivotColumnDefs(){return this.pivotColumnDefs}};function addAggFunc(e,t,s){e.aggFuncService&&e.aggFuncService.addAggFuncs({key:s})}function addAggFuncs(e,t){e.aggFuncService&&e.aggFuncService.addAggFuncs(t)}function clearAggFuncs(e){e.aggFuncService&&e.aggFuncService.clear()}function setColumnAggFunc(e,t,s){e.funcColsService.setColumnAggFunc(t,s,"api")}function isPivotMode(e){return e.columnModel.isPivotMode()}function getPivotResultColumn(e,t,s){return e.pivotResultColsService.lookupPivotResultCol(t,s)}function setValueColumns(e,t){e.funcColsService.setValueColumns(t,"api")}function getValueColumns(e){return e.funcColsService.getValueColumns()}function removeValueColumn(e,t){e.funcColsService.removeValueColumns([t],"api")}function removeValueColumns(e,t){e.funcColsService.removeValueColumns(t,"api")}function addValueColumn(e,t){e.funcColsService.addValueColumns([t],"api")}function addValueColumns(e,t){e.funcColsService.addValueColumns(t,"api")}function setRowGroupColumns(e,t){e.funcColsService.setRowGroupColumns(t,"api")}function removeRowGroupColumn(e,t){e.funcColsService.removeRowGroupColumns([t],"api")}function removeRowGroupColumns(e,t){e.funcColsService.removeRowGroupColumns(t,"api")}function addRowGroupColumn(e,t){e.funcColsService.addRowGroupColumns([t],"api")}function addRowGroupColumns(e,t){e.funcColsService.addRowGroupColumns(t,"api")}function moveRowGroupColumn(e,t,s){e.funcColsService.moveRowGroupColumn(t,s,"api")}function getRowGroupColumns(e){return e.funcColsService.getRowGroupColumns()}function setPivotColumns(e,t){e.funcColsService.setPivotColumns(t,"api")}function removePivotColumn(e,t){e.funcColsService.removePivotColumns([t],"api")}function removePivotColumns(e,t){e.funcColsService.removePivotColumns(t,"api")}function addPivotColumn(e,t){e.funcColsService.addPivotColumns([t],"api")}function addPivotColumns(e,t){e.funcColsService.addPivotColumns(t,"api")}function getPivotColumns(e){return e.funcColsService.getPivotColumns()}function setPivotResultColumns(e,t){e.pivotResultColsService.setPivotResultCols(t,"api")}function getPivotResultColumns(e){const t=e.pivotResultColsService.getPivotResultCols();return t?t.list:null}var ShowRowGroupColsService=class extends import_core186.BeanStub{constructor(){super(...arguments),this.beanName="showRowGroupColsService"}wireBeans(e){this.columnModel=e.columnModel,this.funcColsService=e.funcColsService}refresh(){this.showRowGroupCols=[],this.showRowGroupColsMap={},this.columnModel.getCols().forEach(e=>{const s=e.getColDef().showRowGroup,i=typeof s=="string";!i&&!(s===!0)||(this.showRowGroupCols.push(e),i?this.showRowGroupColsMap[s]=e:this.funcColsService.getRowGroupColumns().forEach(o=>{this.showRowGroupColsMap[o.getId()]=e}))})}getShowRowGroupCols(){return this.showRowGroupCols}getShowRowGroupCol(e){return this.showRowGroupColsMap[e]}},VERSION6="32.3.0",RowGroupingCoreModule=(0,import_core164._defineModule)({version:VERSION6,moduleName:`${import_core164.ModuleNames.RowGroupingModule}-core`,beans:[AggregationStage,FilterAggregatesStage,GroupStage,PivotColDefService,PivotStage,AggFuncService,AutoColService,ShowRowGroupColsService,ColumnDropZoneService],userComponents:[{name:"agGroupRowRenderer",classImp:GroupCellRenderer},{name:"agGroupCellRenderer",classImp:GroupCellRenderer}],controllers:[{name:"groupCellRendererCtrl",classImp:GroupCellRendererCtrl}],dependantModules:[EnterpriseCoreModule]}),RowGroupingApiModule=(0,import_core164._defineModule)({version:VERSION6,moduleName:`${import_core164.ModuleNames.RowGroupingModule}-api`,apiFunctions:{addAggFunc,addAggFuncs,clearAggFuncs,setColumnAggFunc,isPivotMode,getPivotResultColumn,setValueColumns,getValueColumns,removeValueColumn,removeValueColumns,addValueColumn,addValueColumns,setRowGroupColumns,removeRowGroupColumn,removeRowGroupColumns,addRowGroupColumn,addRowGroupColumns,getRowGroupColumns,moveRowGroupColumn,setPivotColumns,removePivotColumn,removePivotColumns,addPivotColumn,addPivotColumns,getPivotColumns,setPivotResultColumns,getPivotResultColumns},dependantModules:[RowGroupingCoreModule]}),GroupFilterModule=(0,import_core164._defineModule)({version:VERSION6,moduleName:"@ag-grid-enterprise/group-filter",userComponents:[{name:"agGroupColumnFilter",classImp:GroupFilter}],dependantModules:[RowGroupingCoreModule,import_core164._ColumnFilterModule]}),GroupFloatingFilterModule=(0,import_core164._defineModule)({version:VERSION6,moduleName:"@ag-grid-enterprise/group-floating-filter",userComponents:[{name:"agGroupColumnFloatingFilter",classImp:GroupFloatingFilterComp}],dependantModules:[GroupFilterModule,import_core164._FloatingFilterModule]}),RowGroupingModule=(0,import_core164._defineModule)({version:VERSION6,moduleName:import_core164.ModuleNames.RowGroupingModule,dependantModules:[RowGroupingCoreModule,RowGroupingApiModule,GroupFilterModule,GroupFloatingFilterModule]}),ValuesDropZonePanel=class extends BaseDropZonePanel{constructor(e){super(e,"aggregation")}postConstruct(){const e=this.localeService.getLocaleTextFunc(),t=e("valueColumnsEmptyMessage","Drag here to aggregate"),s=e("values","Values");super.init({icon:(0,import_core187._createIconNoSpan)("valuePanel",this.gos,null),emptyMessage:t,title:s}),this.addManagedEventListeners({columnValueChanged:this.refreshGui.bind(this)})}getAriaLabel(){return this.localeService.getLocaleTextFunc()("ariaValuesDropZonePanelLabel","Values")}getTooltipParams(){const e=super.getTooltipParams();return e.location="valueColumnsList",e}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.funcColsService.setValueColumns(e,"toolPanelUi")}getExistingItems(){return this.funcColsService.getValueColumns()}},import_core198=require("ag-grid-community"),import_core189=require("ag-grid-community"),import_core188=require("ag-grid-community");function isColGroupDef(e){return!!e&&typeof e.children<"u"}function getId(e){return isColGroupDef(e)?e.groupId:e.colId}function addChildrenToGroup(e,t,s){const i=(o,n)=>{const l=o.children.map(getId),c=(0,import_core188._includes)(l,getId(n)),h=(0,import_core188._last)(o.children),d=h&&getId(h)!==getId(n);return c&&d};if(!isColGroupDef(e))return!0;const r=e,a=s;if(i(r,a))return r.children.push(a),!0;if(r.groupId===t){const o=r.children.map(getId);if(!(0,import_core188._includes)(o,getId(a)))return r.children.push(a),!0}for(let o=r.children.length-1;o>=0&&!addChildrenToGroup(r.children[o],t,s);o--);return!1}function mergeLeafPathTrees(e){const t=(r,a)=>isColGroupDef(r)&&isColGroupDef(a)&&getId(r)===getId(a),s=(r,a)=>{if(!isColGroupDef(a))return r;const o=r,n=a;return n.children&&n.groupId&&addChildrenToGroup(o,n.groupId,n.children[0])||n.children.forEach(l=>s(o,l)),o},i=[];for(let r=1;r<=e.length;r++){const a=e[r-1],o=e[r];t(a,o)?e[r]=s(a,o):i.push(a)}return i}var ToolPanelColDefService=class extends import_core189.BeanStub{constructor(){super(...arguments),this.beanName="toolPanelColDefService"}wireBeans(e){this.columnModel=e.columnModel}createColumnTree(e){const t=[],s=(r,a)=>{if(isColGroupDef(r)){const o=r,n=typeof o.groupId<"u"?o.groupId:o.headerName,l=new import_core189.AgProvidedColumnGroup(o,n,!1,a),c=[];return o.children.forEach(h=>{const d=s(h,a+1);d&&c.push(d)}),l.setChildren(c),l}else{const o=r,n=o.colId?o.colId:o.field,l=this.columnModel.getColDefCol(n);return l||t.push(o),l}},i=[];return e.forEach(r=>{const a=s(r,0);a&&i.push(a)}),t.length>0&&(0,import_core189._warnOnce)("unable to find grid columns for the supplied colDef(s):",t),i}syncLayoutWithGrid(e){const t=this.getLeafPathTrees(),s=mergeLeafPathTrees(t);e(s)}getLeafPathTrees(){const e=(i,r)=>{let a;if((0,import_core189.isProvidedColumnGroup)(i))if(i.isPadding())a=r;else{const n=Object.assign({},i.getColGroupDef());n.groupId=i.getGroupId(),n.children=[r],a=n}else{const n=Object.assign({},i.getColDef());n.colId=i.getColId(),a=n}const o=i.getOriginalParent();return o?e(o,a):a};return this.columnModel.getCols().filter(i=>{const r=i.getColDef();return i.isPrimary()&&!r.showRowGroup}).map(i=>e(i,i.getColDef()))}},import_core190=require("ag-grid-community");function isSideBarVisible(e){return e.sideBarService?.getSideBarComp().isDisplayed()??!1}function setSideBarVisible(e,t){e.sideBarService?.getSideBarComp().setDisplayed(t)}function setSideBarPosition(e,t){e.sideBarService?.getSideBarComp().setSideBarPosition(t)}function openToolPanel(e,t){e.sideBarService?.getSideBarComp().openToolPanel(t,"api")}function closeToolPanel(e){e.sideBarService?.getSideBarComp().close("api")}function getOpenedToolPanel(e){return e.sideBarService?.getSideBarComp().openedItem()??null}function refreshToolPanel(e){e.sideBarService?.getSideBarComp().refresh()}function isToolPanelShowing(e){return e.sideBarService?.getSideBarComp().isToolPanelShowing()??!1}function getToolPanelInstance(e,t){const s=e.sideBarService?.getSideBarComp().getToolPanelInstance(t);return(0,import_core190._unwrapUserComp)(s)}function getSideBar(e){return e.sideBarService?.getSideBarComp().getDef()}var import_core197=require("ag-grid-community"),import_core196=require("ag-grid-community"),import_core192=require("ag-grid-community"),import_core191=require("ag-grid-community"),SideBarButtonComp=class extends import_core191.Component{constructor(e){super(),this.eToggleButton=import_core191.RefPlaceholder,this.eIconWrapper=import_core191.RefPlaceholder,this.eLabel=import_core191.RefPlaceholder,this.toolPanelDef=e}getToolPanelId(){return this.toolPanelDef.id}postConstruct(){const e=this.createTemplate();this.setTemplate(e,[]),this.setLabel(),this.setIcon(),this.addManagedElementListeners(this.eToggleButton,{click:this.onButtonPressed.bind(this)}),this.eToggleButton.setAttribute("id",`ag-${this.getCompId()}-button`)}createTemplate(){return`<div class="ag-side-button" role="presentation">
|
|
347
347
|
<button type="button" data-ref="eToggleButton" tabindex="-1" role="tab" aria-expanded="false" class="ag-button ag-side-button-button">
|
|
348
348
|
<div data-ref="eIconWrapper" class="ag-side-button-icon-wrapper" aria-hidden="true"></div>
|
|
349
349
|
<span data-ref="eLabel" class="ag-side-button-label"></span>
|
|
350
350
|
</button>
|
|
351
351
|
</div>`}setLabel(){const e=this.localeService.getLocaleTextFunc(),t=this.toolPanelDef,s=e(t.labelKey,t.labelDefault);this.eLabel.innerText=s}setIcon(){this.eIconWrapper.insertAdjacentElement("afterbegin",(0,import_core191._createIconNoSpan)(this.toolPanelDef.iconKey,this.gos))}onButtonPressed(){this.dispatchLocalEvent({type:"toggleButtonClicked"})}setSelected(e){this.addOrRemoveCssClass("ag-selected",e),(0,import_core191._setAriaExpanded)(this.eToggleButton,e)}getButtonElement(){return this.eToggleButton}},AgSideBarButtons=class extends import_core192.Component{constructor(){super('<div class="ag-side-buttons" role="tablist"></div>'),this.buttonComps=[]}wireBeans(e){this.focusService=e.focusService,this.visibleColsService=e.visibleColsService}postConstruct(){this.addManagedElementListeners(this.getFocusableElement(),{keydown:this.handleKeyDown.bind(this)})}handleKeyDown(e){if(!(e.key!==import_core192.KeyCode.TAB||!e.shiftKey)){if(this.focusService.focusNextGridCoreContainer(!0)){e.preventDefault();return}(0,import_core192._stopPropagationForAgGrid)(e)}}setActiveButton(e){this.buttonComps.forEach(t=>{t.setSelected(e===t.getToolPanelId())})}addButtonComp(e){const t=this.createBean(new SideBarButtonComp(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),(0,import_core192._clearElement)(this.getGui()),super.destroy()}destroy(){this.clearButtons(),super.destroy()}},AgSideBarButtonsSelector={selector:"AG-SIDE-BAR-BUTTONS",component:AgSideBarButtons},import_core193=require("ag-grid-community"),DEFAULT_COLUMN_COMP={id:"columns",labelDefault:"Columns",labelKey:"columns",iconKey:"columns",toolPanel:"agColumnsToolPanel"},DEFAULT_FILTER_COMP={id:"filters",labelDefault:"Filters",labelKey:"filters",iconKey:"filter",toolPanel:"agFiltersToolPanel"},DEFAULT_BY_KEY={columns:DEFAULT_COLUMN_COMP,filters:DEFAULT_FILTER_COMP};function parseSideBarDef(e){if(!e)return;if(e===!0)return{toolPanels:[DEFAULT_COLUMN_COMP,DEFAULT_FILTER_COMP],defaultToolPanel:"columns"};if(typeof e=="string")return parseSideBarDef([e]);if(Array.isArray(e)){const s=[];return e.forEach(i=>{const r=DEFAULT_BY_KEY[i];if(!r){logMissingKey(i);return}s.push(r)}),s.length===0?void 0:{toolPanels:s,defaultToolPanel:s[0].id}}return{toolPanels:parseComponents(e.toolPanels),defaultToolPanel:e.defaultToolPanel,hiddenByDefault:e.hiddenByDefault,position:e.position}}function logMissingKey(e){(0,import_core193._warnOnce)(`the key ${e} is not a valid key for specifying a tool panel, valid keys are: ${Object.keys(DEFAULT_BY_KEY).join(",")}`)}function parseComponents(e){const t=[];return e&&e.forEach(s=>{let i=null;if(typeof s=="string"){const r=DEFAULT_BY_KEY[s];if(!r){logMissingKey(s);return}i=r}else i=s;t.push(i)}),t}var import_core195=require("ag-grid-community"),import_core194=require("ag-grid-community"),AgHorizontalResize=class extends import_core194.Component{constructor(){super('<div class="ag-tool-panel-horizontal-resize"></div>'),this.minWidth=100,this.maxWidth=null}wireBeans(e){this.horizontalResizeService=e.horizontalResizeService}setElementToResize(e){this.elementToResize=e}postConstruct(){const e=this.horizontalResizeService.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.setInverted(this.gos.get("enableRtl"))}dispatchResizeEvent(e,t,s){this.eventService.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)}setInverted(e){this.inverted=e}setMaxWidth(e){this.maxWidth=e}setMinWidth(e){e!=null?this.minWidth=e:this.minWidth=100}},ToolPanelWrapper=class extends import_core195.Component{wireBeans(e){this.userComponentFactory=e.userComponentFactory}constructor(){super('<div class="ag-tool-panel-wrapper" role="tabpanel"/>')}postConstruct(){const e=this.getGui(),t=this.resizeBar=this.createManagedBean(new AgHorizontalResize);e.setAttribute("id",`ag-${this.getCompId()}`),t.setElementToResize(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 o=this.userComponentFactory.getToolPanelCompDetails(e,t),n=o.newAgStackInstance();if(this.params=o.params,n==null){(0,import_core195._warnOnce)(`error processing tool panel component ${s}. You need to specify 'toolPanel'`);return}n.then(this.setToolPanelComponent.bind(this)),i!=null&&this.resizeBar.setMinWidth(i),r!=null&&this.resizeBar.setMaxWidth(r)}setToolPanelComponent(e){this.toolPanelCompInstance=e,this.appendChild(e.getGui()),this.addDestroyFunc(()=>{this.destroyBean(e)}),this.width&&(this.getGui().style.width=`${this.width}px`)}getToolPanelInstance(){return this.toolPanelCompInstance}setResizerSizerSide(e){const t=this.gos.get("enableRtl"),s=e==="left",i=t?s:!s;this.resizeBar.setInverted(i)}refresh(){this.toolPanelCompInstance?.refresh(this.params)}},AgSideBar=class extends import_core196.Component{constructor(){super(`<div class="ag-side-bar ag-unselectable">
|
|
352
352
|
<ag-side-bar-buttons data-ref="sideBarButtons"></ag-side-bar-buttons>
|
|
353
|
-
</div>`,[AgSideBarButtonsSelector]),this.sideBarButtons=import_core196.RefPlaceholder,this.toolPanelWrappers=[]}wireBeans(e){this.focusService=e.focusService,this.filterManager=e.filterManager,this.sideBarService=e.sideBarService}postConstruct(){this.sideBarButtons.addEventListener("sideBarButtonClicked",this.onToolPanelButtonClicked.bind(this));const{sideBar:e}=this.gos.get("initialState")??{};this.setSideBarDef({sideBarDef:parseSideBarDef(this.gos.get("sideBar")),sideBarState:e}),this.addManagedPropertyListener("sideBar",this.onSideBarUpdated.bind(this)),this.sideBarService.registerSideBarComp(this);const t=this.getFocusableElement();this.createManagedBean(new import_core196.ManagedFocusFeature(t,{onTabKeyDown:this.onTabKeyDown.bind(this),handleKeyDown:this.handleKeyDown.bind(this)})),(0,import_core196._addFocusableContainerListener)(this,t,this.focusService)}onTabKeyDown(e){if(e.defaultPrevented)return;const{focusService:t,sideBarButtons:s}=this,i=this.getGui(),r=s.getGui(),a=(0,import_core196._getActiveDomElement)(this.gos),o=i.querySelector(".ag-tool-panel-wrapper:not(.ag-hidden)"),n=e.target;if(!o)return;if(r.contains(a)){t.focusInto(o,e.shiftKey)&&e.preventDefault();return}if(!e.shiftKey)return;let l=null;o.contains(a)?l=this.focusService.findNextFocusableElement(o,void 0,!0):t.isTargetUnderManagedComponent(o,n)&&e.shiftKey&&(l=this.focusService.findFocusableElementBeforeTabGuard(o,n)),l||(l=r.querySelector(".ag-selected button")),l&&l!==e.target&&(e.preventDefault(),l.focus())}handleKeyDown(e){const t=(0,import_core196._getActiveDomElement)(this.gos);if(!this.sideBarButtons.getGui().contains(t))return;const s=this.sideBarButtons.getGui(),i=Array.prototype.slice.call(s.querySelectorAll(".ag-side-button")),r=i.findIndex(n=>n.contains(t));let a=null;switch(e.key){case import_core196.KeyCode.LEFT:case import_core196.KeyCode.UP:a=Math.max(0,r-1);break;case import_core196.KeyCode.RIGHT:case import_core196.KeyCode.DOWN:a=Math.min(r+1,i.length-1);break}if(a===null)return;const o=i[a].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,this.sideBar&&this.sideBar.toolPanels){const i=this.sideBar.toolPanels;if(this.createToolPanelsAndSideButtons(i,t,s),!this.toolPanelWrappers.length)return;const r=t?t.visible:!this.sideBar.hiddenByDefault;if(this.setDisplayed(r),this.setSideBarPosition(t?t.position:this.sideBar.position),r)if(t){const{openToolPanel:a}=t;a&&this.openToolPanel(a,"sideBarInitializing")}else this.openToolPanel(this.sideBar.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){if(e.id==null)return(0,import_core196._warnOnce)("please review all your toolPanel components, it seems like at least one of them doesn't have an id"),!1;if(e.toolPanel==="agColumnsToolPanel"&&!this.gos.assertModuleRegistered(import_core196.ModuleNames.ColumnsToolPanelModule,"Column Tool Panel"))return!1;if(e.toolPanel==="agFiltersToolPanel"){if(!this.gos.assertModuleRegistered(import_core196.ModuleNames.FiltersToolPanelModule,"Filters Tool Panel"))return!1;if(this.filterManager?.isAdvancedFilterEnabled())return(0,import_core196._warnOnce)("Advanced Filter does not work with Filters Tool Panel. Filters Tool Panel has been disabled."),!1}return!0}createToolPanelAndSideButton(e,t,s){if(!this.validateDef(e))return;const i=this.sideBarButtons.addButtonComp(e);let r;s?r=s:(r=this.createBean(new ToolPanelWrapper),r.setToolPanelDef(e,{initialState:t,onStateUpdated:()=>this.dispatchSideBarUpdated()})),r.setDisplayed(!1);const a=r.getGui();this.appendChild(a),this.toolPanelWrappers.push(r),(0,import_core196._setAriaControls)(i.getButtonElement(),a)}refresh(){this.toolPanelWrappers.forEach(e=>e.refresh())}openToolPanel(e,t="api"){const s=this.openedItem();if(s===e)return;this.toolPanelWrappers.forEach(a=>{const o=e===a.getToolPanelId();a.setDisplayed(o)});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){(0,import_core196._warnOnce)(`unable to lookup Tool Panel as invalid key supplied: ${e}`);return}return t.getToolPanelInstance()}raiseToolPanelVisibleEvent(e,t,s){const i=!!e&&!!t;t&&this.eventService.dispatchEvent({type:"toolPanelVisibleChanged",source:s,key:t,visible:!1,switchingToolPanel:i}),e&&this.eventService.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=parseSideBarDef(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 o=this.gos.addGridCommonParams({...s.toolPanelParams??{},onStateUpdated:()=>this.dispatchSideBarUpdated()});a.getToolPanelInstance()?.refresh(o)===!0&&(this.toolPanelWrappers=this.toolPanelWrappers.filter(l=>l!==a),(0,import_core196._removeFromParent)(a.getGui()),t[i]=a)}),this.clearDownUi(),this.setSideBarDef({sideBarDef:e,existingToolPanelWrappers:t})}dispatchSideBarUpdated(){this.eventService.dispatchEvent({type:"sideBarUpdated"})}destroyToolPanelWrappers(){this.toolPanelWrappers.forEach(e=>{(0,import_core196._removeFromParent)(e.getGui()),this.destroyBean(e)}),this.toolPanelWrappers.length=0}destroy(){this.destroyToolPanelWrappers(),super.destroy()}},AgSideBarSelector={selector:"AG-SIDE-BAR",component:AgSideBar},SideBarService=class extends import_core197.BeanStub{constructor(){super(...arguments),this.beanName="sideBarService"}registerSideBarComp(e){this.sideBarComp=e}getSideBarComp(){return this.sideBarComp}getSideBarSelector(){return AgSideBarSelector}},VERSION7="32.
|
|
353
|
+
</div>`,[AgSideBarButtonsSelector]),this.sideBarButtons=import_core196.RefPlaceholder,this.toolPanelWrappers=[]}wireBeans(e){this.focusService=e.focusService,this.filterManager=e.filterManager,this.sideBarService=e.sideBarService}postConstruct(){this.sideBarButtons.addEventListener("sideBarButtonClicked",this.onToolPanelButtonClicked.bind(this));const{sideBar:e}=this.gos.get("initialState")??{};this.setSideBarDef({sideBarDef:parseSideBarDef(this.gos.get("sideBar")),sideBarState:e}),this.addManagedPropertyListener("sideBar",this.onSideBarUpdated.bind(this)),this.sideBarService.registerSideBarComp(this);const t=this.getFocusableElement();this.createManagedBean(new import_core196.ManagedFocusFeature(t,{onTabKeyDown:this.onTabKeyDown.bind(this),handleKeyDown:this.handleKeyDown.bind(this)})),(0,import_core196._addFocusableContainerListener)(this,t,this.focusService)}onTabKeyDown(e){if(e.defaultPrevented)return;const{focusService:t,sideBarButtons:s}=this,i=this.getGui(),r=s.getGui(),a=(0,import_core196._getActiveDomElement)(this.gos),o=i.querySelector(".ag-tool-panel-wrapper:not(.ag-hidden)"),n=e.target;if(!o)return t.focusNextGridCoreContainer(e.shiftKey,!0);if(r.contains(a)){t.focusInto(o,e.shiftKey)&&e.preventDefault();return}if(!e.shiftKey)return;let l=null;o.contains(a)?l=this.focusService.findNextFocusableElement(o,void 0,!0):t.isTargetUnderManagedComponent(o,n)&&e.shiftKey&&(l=this.focusService.findFocusableElementBeforeTabGuard(o,n)),l||(l=r.querySelector(".ag-selected button")),l&&l!==e.target&&(e.preventDefault(),l.focus())}handleKeyDown(e){const t=(0,import_core196._getActiveDomElement)(this.gos);if(!this.sideBarButtons.getGui().contains(t))return;const s=this.sideBarButtons.getGui(),i=Array.prototype.slice.call(s.querySelectorAll(".ag-side-button")),r=i.findIndex(n=>n.contains(t));let a=null;switch(e.key){case import_core196.KeyCode.LEFT:case import_core196.KeyCode.UP:a=Math.max(0,r-1);break;case import_core196.KeyCode.RIGHT:case import_core196.KeyCode.DOWN:a=Math.min(r+1,i.length-1);break}if(a===null)return;const o=i[a].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,this.sideBar&&this.sideBar.toolPanels){const i=this.sideBar.toolPanels;if(this.createToolPanelsAndSideButtons(i,t,s),!this.toolPanelWrappers.length)return;const r=t?t.visible:!this.sideBar.hiddenByDefault;if(this.setDisplayed(r),this.setSideBarPosition(t?t.position:this.sideBar.position),r)if(t){const{openToolPanel:a}=t;a&&this.openToolPanel(a,"sideBarInitializing")}else this.openToolPanel(this.sideBar.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){if(e.id==null)return(0,import_core196._warnOnce)("please review all your toolPanel components, it seems like at least one of them doesn't have an id"),!1;if(e.toolPanel==="agColumnsToolPanel"&&!this.gos.assertModuleRegistered(import_core196.ModuleNames.ColumnsToolPanelModule,"Column Tool Panel"))return!1;if(e.toolPanel==="agFiltersToolPanel"){if(!this.gos.assertModuleRegistered(import_core196.ModuleNames.FiltersToolPanelModule,"Filters Tool Panel"))return!1;if(this.filterManager?.isAdvancedFilterEnabled())return(0,import_core196._warnOnce)("Advanced Filter does not work with Filters Tool Panel. Filters Tool Panel has been disabled."),!1}return!0}createToolPanelAndSideButton(e,t,s){if(!this.validateDef(e))return;const i=this.sideBarButtons.addButtonComp(e);let r;s?r=s:(r=this.createBean(new ToolPanelWrapper),r.setToolPanelDef(e,{initialState:t,onStateUpdated:()=>this.dispatchSideBarUpdated()})),r.setDisplayed(!1);const a=r.getGui();this.appendChild(a),this.toolPanelWrappers.push(r),(0,import_core196._setAriaControls)(i.getButtonElement(),a)}refresh(){this.toolPanelWrappers.forEach(e=>e.refresh())}openToolPanel(e,t="api"){const s=this.openedItem();if(s===e)return;this.toolPanelWrappers.forEach(a=>{const o=e===a.getToolPanelId();a.setDisplayed(o)});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){(0,import_core196._warnOnce)(`unable to lookup Tool Panel as invalid key supplied: ${e}`);return}return t.getToolPanelInstance()}raiseToolPanelVisibleEvent(e,t,s){const i=!!e&&!!t;t&&this.eventService.dispatchEvent({type:"toolPanelVisibleChanged",source:s,key:t,visible:!1,switchingToolPanel:i}),e&&this.eventService.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=parseSideBarDef(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 o=this.gos.addGridCommonParams({...s.toolPanelParams??{},onStateUpdated:()=>this.dispatchSideBarUpdated()});a.getToolPanelInstance()?.refresh(o)===!0&&(this.toolPanelWrappers=this.toolPanelWrappers.filter(l=>l!==a),(0,import_core196._removeFromParent)(a.getGui()),t[i]=a)}),this.clearDownUi(),this.setSideBarDef({sideBarDef:e,existingToolPanelWrappers:t})}dispatchSideBarUpdated(){this.eventService.dispatchEvent({type:"sideBarUpdated"})}destroyToolPanelWrappers(){this.toolPanelWrappers.forEach(e=>{(0,import_core196._removeFromParent)(e.getGui()),this.destroyBean(e)}),this.toolPanelWrappers.length=0}destroy(){this.destroyToolPanelWrappers(),super.destroy()}},AgSideBarSelector={selector:"AG-SIDE-BAR",component:AgSideBar},SideBarService=class extends import_core197.BeanStub{constructor(){super(...arguments),this.beanName="sideBarService"}registerSideBarComp(e){this.sideBarComp=e}getSideBarComp(){return this.sideBarComp}getSideBarSelector(){return AgSideBarSelector}},VERSION7="32.3.0",SideBarCoreModule=(0,import_core198._defineModule)({version:VERSION7,moduleName:`${import_core198.ModuleNames.SideBarModule}-core`,beans:[ToolPanelColDefService,SideBarService],dependantModules:[EnterpriseCoreModule]}),SideBarApiModule=(0,import_core198._defineModule)({version:VERSION7,moduleName:`${import_core198.ModuleNames.SideBarModule}-api`,apiFunctions:{isSideBarVisible,setSideBarVisible,setSideBarPosition,openToolPanel,closeToolPanel,getOpenedToolPanel,refreshToolPanel,isToolPanelShowing,getToolPanelInstance,getSideBar},dependantModules:[SideBarCoreModule]}),SideBarModule=(0,import_core198._defineModule)({version:VERSION7,moduleName:import_core198.ModuleNames.SideBarModule,dependantModules:[SideBarCoreModule,SideBarApiModule]}),import_core202=require("ag-grid-community"),import_core203=require("ag-grid-community"),import_core204=require("ag-grid-community"),import_core205=require("ag-grid-community"),import_core207=require("ag-grid-community"),import_core208=require("ag-grid-community"),import_core210=require("ag-grid-community"),import_core211=require("ag-grid-community"),import_core213=require("ag-grid-community"),import_core214=require("ag-grid-community"),import_core215=require("ag-grid-community"),DEBOUNCE_DELAY=300,AgPrimaryColsHeader=class extends import_core204.Component{constructor(){super(`<div class="ag-column-select-header" role="presentation">
|
|
354
354
|
<div data-ref="eExpand" class="ag-column-select-header-icon"></div>
|
|
355
355
|
<ag-checkbox data-ref="eSelect" class="ag-column-select-header-checkbox"></ag-checkbox>
|
|
356
356
|
<ag-input-text-field class="ag-column-select-header-filter-wrapper" data-ref="eFilterTextField"></ag-input-text-field>
|
|
357
|
-
</div>`,[import_core204.AgCheckboxSelector,import_core204.AgInputTextFieldSelector]),this.eExpand=import_core204.RefPlaceholder,this.eSelect=import_core204.RefPlaceholder,this.eFilterTextField=import_core204.RefPlaceholder}wireBeans(e){this.columnModel=e.columnModel}postConstruct(){this.createExpandIcons(),this.addManagedListeners(this.eExpand,{click:this.onExpandClicked.bind(this),keydown:t=>{t.key===import_core204.KeyCode.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.addManagedElementListeners(this.eFilterTextField.getInputElement(),{keydown:this.onMiniFilterKeyDown.bind(this)}),this.addManagedEventListeners({newColumnsLoaded:this.showOrHideOptions.bind(this)});const e=this.localeService.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.columnModel.isReady()&&this.showOrHideOptions()}createExpandIcons(){this.eExpand.appendChild(this.eExpandChecked=(0,import_core204._createIconNoSpan)("columnSelectOpen",this.gos)),this.eExpand.appendChild(this.eExpandUnchecked=(0,import_core204._createIconNoSpan)("columnSelectClosed",this.gos)),this.eExpand.appendChild(this.eExpandIndeterminate=(0,import_core204._createIconNoSpan)("columnSelectIndeterminate",this.gos)),this.setExpandState(0)}showOrHideOptions(){const e=!this.params.suppressColumnFilter,t=!this.params.suppressColumnSelectAll,s=!this.params.suppressColumnExpandAll,i=this.columnModel.isProvidedColGroupsPresent(),r=this.localeService.getLocaleTextFunc();this.eFilterTextField.setInputPlaceholder(r("searchOoo","Search...")),(0,import_core204._setDisplayed)(this.eFilterTextField.getGui(),e),(0,import_core204._setDisplayed)(this.eSelect.getGui(),t),(0,import_core204._setDisplayed)(this.eExpand,s&&i)}onFilterTextChanged(){this.onFilterTextChangedDebounced||(this.onFilterTextChangedDebounced=(0,import_core204._debounce)(()=>{const e=this.eFilterTextField.getValue();this.dispatchLocalEvent({type:"filterChanged",filterText:e})},DEBOUNCE_DELAY)),this.onFilterTextChangedDebounced()}onMiniFilterKeyDown(e){e.key===import_core204.KeyCode.ENTER&&setTimeout(()=>this.onSelectClicked(),DEBOUNCE_DELAY)}onSelectClicked(){this.dispatchLocalEvent({type:this.selectState?"unselectAll":"selectAll"})}onExpandClicked(){this.dispatchLocalEvent({type:this.expandState===0?"collapseAll":"expandAll"})}setExpandState(e){this.expandState=e,(0,import_core204._setDisplayed)(this.eExpandChecked,this.expandState===0),(0,import_core204._setDisplayed)(this.eExpandUnchecked,this.expandState===1),(0,import_core204._setDisplayed)(this.eExpandIndeterminate,this.expandState===2)}setSelectionState(e){this.selectState=e,this.eSelect.setValue(this.selectState)}},AgPrimaryColsHeaderSelector={selector:"AG-PRIMARY-COLS-HEADER",component:AgPrimaryColsHeader},ColumnModelItem=class{constructor(e,t,s,i=!1,r){this.localEventService=new import_core207.LocalEventService,this.displayName=e,this.dept=s,this.group=i,i?(this.columnGroup=t,this.expanded=r,this.children=[]):this.column=t}isGroup(){return this.group}getDisplayName(){return this.displayName}getColumnGroup(){return this.columnGroup}getColumn(){return this.column}getDept(){return this.dept}isExpanded(){return!!this.expanded}getChildren(){return this.children}isPassesFilter(){return this.passesFilter}setExpanded(e){e!==this.expanded&&(this.expanded=e,this.localEventService.dispatchEvent({type:"expandedChanged"}))}setPassesFilter(e){this.passesFilter=e}addEventListener(e,t){this.localEventService.addEventListener(e,t)}removeEventListener(e,t){this.localEventService.removeEventListener(e,t)}},ToolPanelContextMenu=class extends import_core211.Component{constructor(e,t,s){super('<div class="ag-menu"></div>'),this.column=e,this.mouseEvent=t,this.parentEl=s,this.displayName=null}wireBeans(e){this.columnModel=e.columnModel,this.columnNameService=e.columnNameService,this.funcColsService=e.funcColsService,this.popupService=e.popupService,this.focusService=e.focusService}postConstruct(){if(this.initializeProperties(this.column),this.buildMenuItemMap(),(0,import_core211.isColumn)(this.column)?this.displayName=this.columnNameService.getDisplayNameForColumn(this.column,"columnToolPanel"):this.displayName=this.columnNameService.getDisplayNameForProvidedColumnGroup(null,this.column,"columnToolPanel"),this.isActive()){this.mouseEvent.preventDefault();const e=this.getMappedMenuItems();if(e.length===0)return;this.displayContextMenu(e)}}initializeProperties(e){(0,import_core211.isProvidedColumnGroup)(e)?this.columns=e.getLeafColumns():this.columns=[e],this.allowGrouping=this.columns.some(t=>t.isPrimary()&&t.isAllowRowGroup()),this.allowValues=this.columns.some(t=>t.isPrimary()&&t.isAllowValue()),this.allowPivoting=this.columnModel.isPivotMode()&&this.columns.some(t=>t.isPrimary()&&t.isAllowPivot())}buildMenuItemMap(){const e=this.localeService.getLocaleTextFunc();this.menuItemMap=new Map,this.menuItemMap.set("rowGroup",{allowedFunction:t=>t.isPrimary()&&t.isAllowRowGroup()&&!this.columnModel.isColGroupLocked(t),activeFunction:t=>t.isRowGroupActive(),activateLabel:()=>`${e("groupBy","Group by")} ${this.displayName}`,deactivateLabel:()=>`${e("ungroupBy","Un-Group by")} ${this.displayName}`,activateFunction:()=>{const t=this.funcColsService.getRowGroupColumns();this.funcColsService.setRowGroupColumns(this.addColumnsToList(t),"toolPanelUi")},deActivateFunction:()=>{const t=this.funcColsService.getRowGroupColumns();this.funcColsService.setRowGroupColumns(this.removeColumnsFromList(t),"toolPanelUi")},addIcon:"menuAddRowGroup",removeIcon:"menuRemoveRowGroup"}),this.menuItemMap.set("value",{allowedFunction:t=>t.isPrimary()&&t.isAllowValue(),activeFunction:t=>t.isValueActive(),activateLabel:()=>e("addToValues",`Add ${this.displayName} to values`,[this.displayName]),deactivateLabel:()=>e("removeFromValues",`Remove ${this.displayName} from values`,[this.displayName]),activateFunction:()=>{const t=this.funcColsService.getValueColumns();this.funcColsService.setValueColumns(this.addColumnsToList(t),"toolPanelUi")},deActivateFunction:()=>{const t=this.funcColsService.getValueColumns();this.funcColsService.setValueColumns(this.removeColumnsFromList(t),"toolPanelUi")},addIcon:"valuePanel",removeIcon:"valuePanel"}),this.menuItemMap.set("pivot",{allowedFunction:t=>this.columnModel.isPivotMode()&&t.isPrimary()&&t.isAllowPivot(),activeFunction:t=>t.isPivotActive(),activateLabel:()=>e("addToLabels",`Add ${this.displayName} to labels`,[this.displayName]),deactivateLabel:()=>e("removeFromLabels",`Remove ${this.displayName} from labels`,[this.displayName]),activateFunction:()=>{const t=this.funcColsService.getPivotColumns();this.funcColsService.setPivotColumns(this.addColumnsToList(t),"toolPanelUi")},deActivateFunction:()=>{const t=this.funcColsService.getPivotColumns();this.funcColsService.setPivotColumns(this.removeColumnsFromList(t),"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 AgMenuList),i=this.localeService.getLocaleTextFunc();let r=()=>{};t.appendChild(s.getGui()),s.addMenuItems(e),s.addManagedListeners(s,{closeMenu:()=>{this.parentEl.focus(),r()}});const a=this.popupService.addPopup({modal:!0,eChild:t,closeOnEsc:!0,afterGuiAttached:()=>this.focusService.focusInto(s.getGui()),ariaLabel:i("ariaLabelContextMenu","Context Menu"),closedCallback:o=>{o instanceof KeyboardEvent&&this.parentEl.focus(),this.destroyBean(s)}});a&&(r=a.hideFunc),this.popupService.positionPopupUnderMouseEvent({type:"columnContextMenu",mouseEvent:this.mouseEvent,ePopup:t})}isActive(){return this.allowGrouping||this.allowValues||this.allowPivoting}getMappedMenuItems(){const e=[];for(const t of this.menuItemMap.values()){const s=this.columns.some(r=>t.allowedFunction(r)&&!t.activeFunction(r)),i=this.columns.some(r=>t.allowedFunction(r)&&t.activeFunction(r));s&&e.push({name:t.activateLabel(this.displayName),icon:(0,import_core211._createIconNoSpan)(t.addIcon,this.gos,null),action:()=>t.activateFunction()}),i&&e.push({name:t.deactivateLabel(this.displayName),icon:(0,import_core211._createIconNoSpan)(t.removeIcon,this.gos,null),action:()=>t.deActivateFunction()})}return e}},ToolPanelColumnGroupComp=class extends import_core210.Component{constructor(e,t,s,i){super(),this.modelItem=e,this.allowDragging=t,this.eventType=s,this.focusWrapper=i,this.cbSelect=import_core210.RefPlaceholder,this.eLabel=import_core210.RefPlaceholder,this.eGroupOpenedIcon=import_core210.RefPlaceholder,this.eGroupClosedIcon=import_core210.RefPlaceholder,this.eColumnGroupIcons=import_core210.RefPlaceholder,this.processingColumnStateChange=!1,this.modelItem=e,this.columnGroup=e.getColumnGroup(),this.columnDept=e.getDept(),this.displayName=e.getDisplayName(),this.allowDragging=t}wireBeans(e){this.columnModel=e.columnModel,this.dragAndDropService=e.dragAndDropService,this.modelItemUtils=e.modelItemUtils}postConstruct(){this.setTemplate(`<div class="ag-column-select-column-group"
|
|
358
|
-
|
|
359
|
-
|
|
360
|
-
|
|
361
|
-
|
|
362
|
-
|
|
363
|
-
|
|
364
|
-
|
|
365
|
-
|
|
366
|
-
|
|
367
|
-
</div>`,[import_core213.AgCheckboxSelector]),this.eDragHandle=(0,import_core213._createIconNoSpan)("columnDrag",this.gos),this.eDragHandle.classList.add("ag-drag-handle","ag-column-select-column-drag-handle");const e=this.cbSelect.getGui(),t=this.cbSelect.getInputElement();e.insertAdjacentElement("afterend",this.eDragHandle),t.setAttribute("tabindex","-1");const s=(0,import_core213._escapeString)(this.displayName);this.eLabel.innerHTML=s;const i=this.columnDept;this.groupsExist&&this.addCssClass("ag-column-select-add-group-indent"),this.addCssClass(`ag-column-select-indent-${i}`),this.getGui().style.setProperty("--ag-indentation-level",String(i)),this.setupDragging();const r=this.onColumnStateChanged.bind(this);this.addManagedEventListeners({columnPivotModeChanged:r}),this.addManagedListeners(this.column,{columnValueChanged:r,columnPivotChanged:r,columnRowGroupChanged:r,visibleChanged:r}),this.addManagedListeners(this.focusWrapper,{keydown:this.handleKeyDown.bind(this),contextmenu:this.onContextMenu.bind(this)}),this.addManagedPropertyListener("functionsReadOnly",this.onColumnStateChanged.bind(this)),this.addManagedListeners(this.cbSelect,{fieldValueChanged:this.onCheckboxChanged.bind(this)}),this.addManagedElementListeners(this.eLabel,{click:this.onLabelClicked.bind(this)}),this.onColumnStateChanged(),this.refreshAriaLabel(),this.setupTooltip(),(0,import_core213._getToolPanelClassesFromColDef)(this.column.getColDef(),this.gos,this.column,null).forEach(o=>this.addOrRemoveCssClass(o,!0))}getColumn(){return this.column}setupTooltip(){const e=this.gos.get("tooltipShowMode")==="whenTruncated";let t;e&&(t=()=>this.eLabel.scrollWidth>this.eLabel.clientWidth);const s=()=>{const i=this.column.getColDef().headerTooltip;this.setTooltip({newTooltipText:i,location:"columnToolPanelColumn",shouldDisplayTooltip:t})};s(),this.addManagedEventListeners({newColumnsLoaded:s})}getTooltipParams(){const e=super.getTooltipParams();return e.location="columnToolPanelColumn",e.colDef=this.column.getColDef(),e}onContextMenu(e){const{column:t,gos:s}=this;if(s.get("functionsReadOnly"))return;const i=this.createBean(new ToolPanelContextMenu(t,e,this.focusWrapper));this.addDestroyFunc(()=>{i.isAlive()&&this.destroyBean(i)})}handleKeyDown(e){e.key===import_core213.KeyCode.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&&this.modelItemUtils.setColumn(this.column,e,"toolPanelUi"))}refreshAriaLabel(){const e=this.localeService.getLocaleTextFunc(),t=e("ariaColumn","Column"),s=this.cbSelect.getValue()?e("ariaVisible","visible"):e("ariaHidden","hidden"),i=e("ariaToggleVisibility","Press SPACE to toggle visibility");(0,import_core213._setAriaLabel)(this.focusWrapper,`${this.displayName} ${t}`),this.cbSelect.setInputAriaLabel(`${i} (${s})`),(0,import_core213._setAriaDescribedBy)(this.focusWrapper,this.cbSelect.getInputElement().id)}setupDragging(){if(!this.allowDragging){(0,import_core213._setDisplayed)(this.eDragHandle,!1);return}let e=!this.gos.get("suppressDragLeaveHidesColumns");const t={type:import_core213.DragSourceType.ToolPanel,eElement:this.eDragHandle,dragItemName:this.displayName,getDefaultIconName:()=>e?"hide":"notAllowed",getDragItem:()=>this.createDragItem(),onDragStarted:()=>{e=!this.gos.get("suppressDragLeaveHidesColumns"),this.eventService.dispatchEvent({type:"columnPanelItemDragStart",column:this.column})},onDragStopped:()=>{this.eventService.dispatchEvent({type:"columnPanelItemDragEnd"})},onGridEnter:s=>{e&&this.modelItemUtils.updateColumns({columns:[this.column],visibleState:s?.visibleState,pivotState:s?.pivotState,eventType:"toolPanelUi"})},onGridExit:()=>{e&&this.onChangeCommon(!1)}};this.dragAndDropService.addDragSource(t,!0),this.addDestroyFunc(()=>this.dragAndDropService.removeDragSource(t))}createDragItem(){const e=this.column.getColId(),t={[e]:this.column.isVisible()},s={[e]:this.modelItemUtils.createPivotState(this.column)};return{columns:[this.column],visibleState:t,pivotState:s}}onColumnStateChanged(){this.processingColumnStateChange=!0;const e=this.columnModel.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:o,lockVisible:n}=this.column.getColDef(),l=!!i||!!r,c=!!a||!!o;t=!n,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){e!==this.cbSelect.getValue()&&(this.cbSelect.isReadOnly()||this.cbSelect.toggle())}isSelected(){return this.cbSelect.getValue()}isSelectable(){return!this.cbSelect.isReadOnly()}isExpandable(){return!1}setExpanded(e){(0,import_core213._warnOnce)("can not expand a column item that does not represent a column group header")}},UIColumnModel=class{constructor(e){this.items=e}getRowCount(){return this.items.length}getRow(e){return this.items[e]}},PRIMARY_COLS_LIST_PANEL_CLASS="ag-column-select-list",AgPrimaryColsList=class extends import_core205.Component{constructor(){super(`<div class="${PRIMARY_COLS_LIST_PANEL_CLASS}" role="presentation"></div>`),this.destroyColumnItemFuncs=[],this.hasLoadedInitialState=!1,this.isInitialState=!1}wireBeans(e){this.columnModel=e.columnModel,this.columnNameService=e.columnNameService,this.colDefService=e.toolPanelColDefService,this.modelItemUtils=e.modelItemUtils}destroy(){this.destroyColumnTree(),super.destroy()}destroyColumnTree(){this.allColsTree=[],this.destroyColumnItemFuncs.forEach(e=>e()),this.destroyColumnItemFuncs=[]}init(e,t,s){this.params=e,this.allowDragging=t,this.eventType=s,this.params.suppressSyncLayoutWithGrid||this.addManagedEventListeners({columnMoved:this.onColumnsChanged.bind(this)}),this.addManagedEventListeners({newColumnsLoaded:this.onColumnsChanged.bind(this)});const i=this.fireSelectionChangedEvent.bind(this);this.addManagedEventListeners({columnPivotChanged:i,columnPivotModeChanged:i,columnRowGroupChanged:i,columnValueChanged:i,columnVisible:i,newColumnsLoaded:i}),this.expandGroupsByDefault=!this.params.contractColumnSelection,this.virtualList=this.createManagedBean(new VirtualList({cssIdentifier:"column-select",ariaRole:"tree"})),this.appendChild(this.virtualList.getGui()),this.virtualList.setComponentCreator((r,a)=>((0,import_core205._setAriaLevel)(a,r.getDept()+1),this.createComponentFromItem(r,a))),this.columnModel.isReady()&&this.onColumnsChanged(),!this.params.suppressColumnMove&&this.createManagedBean(new PrimaryColsListPanelItemDragFeature(this,this.virtualList))}createComponentFromItem(e,t){if(e.isGroup()){const i=new ToolPanelColumnGroupComp(e,this.allowDragging,this.eventType,t);return this.createBean(i),i}const s=new ToolPanelColumnComp(e,this.allowDragging,this.groupsExist,t);return this.createBean(s),s}onColumnsChanged(){this.hasLoadedInitialState||(this.hasLoadedInitialState=!0,this.isInitialState=!!this.params.initialState);const e=this.getExpandedStates(),t=this.columnModel.isPivotMode();!this.params.suppressSyncLayoutWithGrid&&!t?this.buildTreeFromWhatGridIsDisplaying():this.buildTreeFromProvidedColumnDefs(),this.setExpandedStates(e),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.isGroup())return;const s=t.getColumnGroup();s&&(e[s.getId()]=t.isExpanded())}),e):{}}setExpandedStates(e){if(!this.allColsTree)return;const{isInitialState:t}=this;this.forEachItem(s=>{if(!s.isGroup())return;const i=s.getColumnGroup();if(i){const r=e[i.getId()];(r!=null||t)&&s.setExpanded(!!r)}})}buildTreeFromWhatGridIsDisplaying(){this.colDefService.syncLayoutWithGrid(this.setColumnLayout.bind(this))}setColumnLayout(e){const t=this.colDefService.createColumnTree(e);this.buildListModel(t),this.groupsExist=e.some(s=>s&&typeof s.children<"u"),this.markFilteredColumns(),this.flattenAndFilterModel()}buildTreeFromProvidedColumnDefs(){this.buildListModel(this.columnModel.getColDefColTree()),this.groupsExist=this.columnModel.isProvidedColGroupsPresent()}buildListModel(e){const t=this.onColumnExpanded.bind(this),s=o=>{o.addEventListener("expandedChanged",t);const n=o.removeEventListener.bind(o,"expandedChanged",t);this.destroyColumnItemFuncs.push(n)},i=(o,n,l)=>{o.forEach(c=>{(0,import_core205.isProvidedColumnGroup)(c)?r(c,n,l):a(c,n,l)})},r=(o,n,l)=>{const c=o.getColGroupDef();if(c&&c.suppressColumnsToolPanel)return;if(o.isPadding()){i(o.getChildren(),n,l);return}const d=this.columnNameService.getDisplayNameForProvidedColumnGroup(null,o,"columnToolPanel"),u=new ColumnModelItem(d,o,n,!0,this.expandGroupsByDefault);l.push(u),s(u),i(o.getChildren(),n+1,u.getChildren())},a=(o,n,l)=>{if(o.getColDef()&&o.getColDef().suppressColumnsToolPanel)return;const h=this.columnNameService.getDisplayNameForColumn(o,"columnToolPanel");l.push(new ColumnModelItem(h,o,n))};this.destroyColumnTree(),i(e,0,this.allColsTree)}onColumnExpanded(){this.flattenAndFilterModel()}flattenAndFilterModel(){this.displayedColsList=[];const e=s=>{s.isPassesFilter()&&(this.displayedColsList.push(s),s.isGroup()&&s.isExpanded()&&s.getChildren().forEach(e))};this.allColsTree.forEach(e),this.virtualList.setModel(new UIColumnModel(this.displayedColsList));const t=this.virtualList.getLastFocusedRow();this.virtualList.refresh(),t!=null&&this.focusRowIfAlive(t),this.notifyListeners(),this.refreshAriaLabel()}refreshAriaLabel(){const e=this.localeService.getLocaleTextFunc(),t=e("ariaColumnPanelList","Column List"),s=e("columns","Columns"),i=this.displayedColsList.length;(0,import_core205._setAriaLabel)(this.virtualList.getAriaElement(),`${t} ${i} ${s}`)}focusRowIfAlive(e){window.setTimeout(()=>{this.isAlive()&&this.virtualList.focusRow(e)},0)}forEachItem(e){const t=s=>{s.forEach(i=>{e(i),i.isGroup()&&t(i.getChildren())})};this.allColsTree&&t(this.allColsTree)}doSetExpandedAll(e){this.forEachItem(t=>{t.isGroup()&&t.setExpanded(e)})}setGroupsExpanded(e,t){if(!t){this.doSetExpandedAll(e);return}const s=[];this.forEachItem(r=>{if(!r.isGroup())return;const a=r.getColumnGroup().getId();t.indexOf(a)>=0&&(r.setExpanded(e),s.push(a))});const i=t.filter(r=>!(0,import_core205._includes)(s,r));i.length>0&&(0,import_core205._warnOnce)("unable to find group(s) for supplied groupIds:",i)}getExpandState(){let e=0,t=0;return this.forEachItem(s=>{s.isGroup()&&(s.isExpanded()?e++:t++)}),e>0&&t>0?2:t>0?1:0}doSetSelectedAll(e){this.modelItemUtils.selectAllChildren(this.allColsTree,e,this.eventType)}getSelectionState(){let e=0,t=0;const s=this.columnModel.isPivotMode();if(this.forEachItem(i=>{if(i.isGroup()||!i.isPassesFilter())return;const r=i.getColumn(),a=r.getColDef();let o;if(s){if(!r.isAllowPivot()&&!r.isAllowRowGroup()&&!r.isAllowValue())return;o=r.isValueActive()||r.isPivotActive()||r.isRowGroupActive()}else{if(a.lockVisible)return;o=r.isVisible()}o?e++:t++}),!(e>0&&t>0))return!(e===0||t>0)}setFilterText(e){this.filterText=(0,import_core205._exists)(e)?e.toLowerCase():null,this.markFilteredColumns(),this.flattenAndFilterModel()}markFilteredColumns(){const e=s=>{if(!(0,import_core205._exists)(this.filterText))return!0;const i=s.getDisplayName();return i==null||i.toLowerCase().indexOf(this.filterText)!==-1},t=(s,i)=>{let r=!1;if(s.isGroup()){const o=e(s);s.getChildren().forEach(n=>{const l=t(n,o||i);l&&(r=l)})}const a=i||r?!0:e(s);return s.setPassesFilter(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.isGroup()&&t.isExpanded()&&e.push(t.getColumnGroup().getId())}),e}},AgPrimaryColsListSelector={selector:"AG-PRIMARY-COLS-LIST",component:AgPrimaryColsList},AgPrimaryCols=class extends import_core203.Component{constructor(){super(`<div class="ag-column-select">
|
|
357
|
+
</div>`,[import_core204.AgCheckboxSelector,import_core204.AgInputTextFieldSelector]),this.eExpand=import_core204.RefPlaceholder,this.eSelect=import_core204.RefPlaceholder,this.eFilterTextField=import_core204.RefPlaceholder}wireBeans(e){this.columnModel=e.columnModel}postConstruct(){this.createExpandIcons(),this.addManagedListeners(this.eExpand,{click:this.onExpandClicked.bind(this),keydown:t=>{t.key===import_core204.KeyCode.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.addManagedElementListeners(this.eFilterTextField.getInputElement(),{keydown:this.onMiniFilterKeyDown.bind(this)}),this.addManagedEventListeners({newColumnsLoaded:this.showOrHideOptions.bind(this)});const e=this.localeService.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.columnModel.isReady()&&this.showOrHideOptions()}createExpandIcons(){this.eExpand.appendChild(this.eExpandChecked=(0,import_core204._createIconNoSpan)("columnSelectOpen",this.gos)),this.eExpand.appendChild(this.eExpandUnchecked=(0,import_core204._createIconNoSpan)("columnSelectClosed",this.gos)),this.eExpand.appendChild(this.eExpandIndeterminate=(0,import_core204._createIconNoSpan)("columnSelectIndeterminate",this.gos)),this.setExpandState(0)}showOrHideOptions(){const e=!this.params.suppressColumnFilter,t=!this.params.suppressColumnSelectAll,s=!this.params.suppressColumnExpandAll,i=this.columnModel.isProvidedColGroupsPresent(),r=this.localeService.getLocaleTextFunc();this.eFilterTextField.setInputPlaceholder(r("searchOoo","Search...")),(0,import_core204._setDisplayed)(this.eFilterTextField.getGui(),e),(0,import_core204._setDisplayed)(this.eSelect.getGui(),t),(0,import_core204._setDisplayed)(this.eExpand,s&&i)}onFilterTextChanged(){this.onFilterTextChangedDebounced||(this.onFilterTextChangedDebounced=(0,import_core204._debounce)(()=>{const e=this.eFilterTextField.getValue();this.dispatchLocalEvent({type:"filterChanged",filterText:e})},DEBOUNCE_DELAY)),this.onFilterTextChangedDebounced()}onMiniFilterKeyDown(e){e.key===import_core204.KeyCode.ENTER&&setTimeout(()=>this.onSelectClicked(),DEBOUNCE_DELAY)}onSelectClicked(){this.dispatchLocalEvent({type:this.selectState?"unselectAll":"selectAll"})}onExpandClicked(){this.dispatchLocalEvent({type:this.expandState===0?"collapseAll":"expandAll"})}setExpandState(e){this.expandState=e,(0,import_core204._setDisplayed)(this.eExpandChecked,this.expandState===0),(0,import_core204._setDisplayed)(this.eExpandUnchecked,this.expandState===1),(0,import_core204._setDisplayed)(this.eExpandIndeterminate,this.expandState===2)}setSelectionState(e){this.selectState=e,this.eSelect.setValue(this.selectState)}},AgPrimaryColsHeaderSelector={selector:"AG-PRIMARY-COLS-HEADER",component:AgPrimaryColsHeader},ColumnModelItem=class{constructor(e,t,s,i=!1,r){this.localEventService=new import_core207.LocalEventService,this.displayName=e,this.dept=s,this.group=i,i?(this.columnGroup=t,this.expanded=r,this.children=[]):this.column=t}isGroup(){return this.group}getDisplayName(){return this.displayName}getColumnGroup(){return this.columnGroup}getColumn(){return this.column}getDept(){return this.dept}isExpanded(){return!!this.expanded}getChildren(){return this.children}isPassesFilter(){return this.passesFilter}setExpanded(e){e!==this.expanded&&(this.expanded=e,this.localEventService.dispatchEvent({type:"expandedChanged"}))}setPassesFilter(e){this.passesFilter=e}addEventListener(e,t){this.localEventService.addEventListener(e,t)}removeEventListener(e,t){this.localEventService.removeEventListener(e,t)}},ToolPanelContextMenu=class extends import_core211.Component{constructor(e,t,s){super('<div class="ag-menu"></div>'),this.column=e,this.mouseEvent=t,this.parentEl=s,this.displayName=null}wireBeans(e){this.columnModel=e.columnModel,this.columnNameService=e.columnNameService,this.funcColsService=e.funcColsService,this.popupService=e.popupService,this.focusService=e.focusService}postConstruct(){if(this.initializeProperties(this.column),this.buildMenuItemMap(),(0,import_core211.isColumn)(this.column)?this.displayName=this.columnNameService.getDisplayNameForColumn(this.column,"columnToolPanel"):this.displayName=this.columnNameService.getDisplayNameForProvidedColumnGroup(null,this.column,"columnToolPanel"),this.isActive()){this.mouseEvent.preventDefault();const e=this.getMappedMenuItems();if(e.length===0)return;this.displayContextMenu(e)}}initializeProperties(e){(0,import_core211.isProvidedColumnGroup)(e)?this.columns=e.getLeafColumns():this.columns=[e],this.allowGrouping=this.columns.some(t=>t.isPrimary()&&t.isAllowRowGroup()),this.allowValues=this.columns.some(t=>t.isPrimary()&&t.isAllowValue()),this.allowPivoting=this.columnModel.isPivotMode()&&this.columns.some(t=>t.isPrimary()&&t.isAllowPivot())}buildMenuItemMap(){const e=this.localeService.getLocaleTextFunc();this.menuItemMap=new Map,this.menuItemMap.set("rowGroup",{allowedFunction:t=>t.isPrimary()&&t.isAllowRowGroup()&&!this.columnModel.isColGroupLocked(t),activeFunction:t=>t.isRowGroupActive(),activateLabel:()=>`${e("groupBy","Group by")} ${this.displayName}`,deactivateLabel:()=>`${e("ungroupBy","Un-Group by")} ${this.displayName}`,activateFunction:()=>{const t=this.funcColsService.getRowGroupColumns();this.funcColsService.setRowGroupColumns(this.addColumnsToList(t),"toolPanelUi")},deActivateFunction:()=>{const t=this.funcColsService.getRowGroupColumns();this.funcColsService.setRowGroupColumns(this.removeColumnsFromList(t),"toolPanelUi")},addIcon:"menuAddRowGroup",removeIcon:"menuRemoveRowGroup"}),this.menuItemMap.set("value",{allowedFunction:t=>t.isPrimary()&&t.isAllowValue(),activeFunction:t=>t.isValueActive(),activateLabel:()=>e("addToValues",`Add ${this.displayName} to values`,[this.displayName]),deactivateLabel:()=>e("removeFromValues",`Remove ${this.displayName} from values`,[this.displayName]),activateFunction:()=>{const t=this.funcColsService.getValueColumns();this.funcColsService.setValueColumns(this.addColumnsToList(t),"toolPanelUi")},deActivateFunction:()=>{const t=this.funcColsService.getValueColumns();this.funcColsService.setValueColumns(this.removeColumnsFromList(t),"toolPanelUi")},addIcon:"valuePanel",removeIcon:"valuePanel"}),this.menuItemMap.set("pivot",{allowedFunction:t=>this.columnModel.isPivotMode()&&t.isPrimary()&&t.isAllowPivot(),activeFunction:t=>t.isPivotActive(),activateLabel:()=>e("addToLabels",`Add ${this.displayName} to labels`,[this.displayName]),deactivateLabel:()=>e("removeFromLabels",`Remove ${this.displayName} from labels`,[this.displayName]),activateFunction:()=>{const t=this.funcColsService.getPivotColumns();this.funcColsService.setPivotColumns(this.addColumnsToList(t),"toolPanelUi")},deActivateFunction:()=>{const t=this.funcColsService.getPivotColumns();this.funcColsService.setPivotColumns(this.removeColumnsFromList(t),"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 AgMenuList),i=this.localeService.getLocaleTextFunc();let r=()=>{};t.appendChild(s.getGui()),s.addMenuItems(e),s.addManagedListeners(s,{closeMenu:()=>{this.parentEl.focus(),r()}});const a=this.popupService.addPopup({modal:!0,eChild:t,closeOnEsc:!0,afterGuiAttached:()=>this.focusService.focusInto(s.getGui()),ariaLabel:i("ariaLabelContextMenu","Context Menu"),closedCallback:o=>{o instanceof KeyboardEvent&&this.parentEl.focus(),this.destroyBean(s)}});a&&(r=a.hideFunc),this.popupService.positionPopupUnderMouseEvent({type:"columnContextMenu",mouseEvent:this.mouseEvent,ePopup:t})}isActive(){return this.allowGrouping||this.allowValues||this.allowPivoting}getMappedMenuItems(){const e=[];for(const t of this.menuItemMap.values()){const s=this.columns.some(r=>t.allowedFunction(r)&&!t.activeFunction(r)),i=this.columns.some(r=>t.allowedFunction(r)&&t.activeFunction(r));s&&e.push({name:t.activateLabel(this.displayName),icon:(0,import_core211._createIconNoSpan)(t.addIcon,this.gos,null),action:()=>t.activateFunction()}),i&&e.push({name:t.deactivateLabel(this.displayName),icon:(0,import_core211._createIconNoSpan)(t.removeIcon,this.gos,null),action:()=>t.deActivateFunction()})}return e}},ToolPanelColumnGroupComp=class extends import_core210.Component{constructor(e,t,s,i){super(),this.modelItem=e,this.allowDragging=t,this.eventType=s,this.focusWrapper=i,this.cbSelect=import_core210.RefPlaceholder,this.eLabel=import_core210.RefPlaceholder,this.eGroupOpenedIcon=import_core210.RefPlaceholder,this.eGroupClosedIcon=import_core210.RefPlaceholder,this.eColumnGroupIcons=import_core210.RefPlaceholder,this.processingColumnStateChange=!1,this.modelItem=e,this.columnGroup=e.getColumnGroup(),this.columnDept=e.getDept(),this.displayName=e.getDisplayName(),this.allowDragging=t}wireBeans(e){this.columnModel=e.columnModel,this.dragAndDropService=e.dragAndDropService,this.modelItemUtils=e.modelItemUtils}postConstruct(){this.setTemplate(`<div class="ag-column-select-column-group">
|
|
358
|
+
<span class="ag-column-group-icons" data-ref="eColumnGroupIcons" >
|
|
359
|
+
<span class="ag-column-group-closed-icon" data-ref="eGroupClosedIcon"></span>
|
|
360
|
+
<span class="ag-column-group-opened-icon" data-ref="eGroupOpenedIcon"></span>
|
|
361
|
+
</span>
|
|
362
|
+
<ag-checkbox data-ref="cbSelect" class="ag-column-select-checkbox"></ag-checkbox>
|
|
363
|
+
<span class="ag-column-select-column-label" data-ref="eLabel"></span>
|
|
364
|
+
</div>`,[import_core210.AgCheckboxSelector]),this.eDragHandle=(0,import_core210._createIconNoSpan)("columnDrag",this.gos),this.eDragHandle.classList.add("ag-drag-handle","ag-column-select-column-group-drag-handle");const e=this.cbSelect.getGui(),t=this.cbSelect.getInputElement();e.insertAdjacentElement("afterend",this.eDragHandle),t.setAttribute("tabindex","-1"),this.eLabel.innerHTML=this.displayName?this.displayName:"",this.setupExpandContract(),this.addCssClass("ag-column-select-indent-"+this.columnDept),this.getGui().style.setProperty("--ag-indentation-level",String(this.columnDept)),this.addManagedEventListeners({columnPivotModeChanged:this.onColumnStateChanged.bind(this)}),this.addManagedElementListeners(this.eLabel,{click:this.onLabelClicked.bind(this)}),this.addManagedListeners(this.cbSelect,{fieldValueChanged:this.onCheckboxChanged.bind(this)}),this.addManagedListeners(this.modelItem,{expandedChanged:this.onExpandChanged.bind(this)}),this.addManagedListeners(this.focusWrapper,{keydown:this.handleKeyDown.bind(this),contextmenu:this.onContextMenu.bind(this)}),this.setOpenClosedIcons(),this.setupDragging(),this.onColumnStateChanged(),this.addVisibilityListenersToAllChildren(),this.refreshAriaExpanded(),this.refreshAriaLabel(),this.setupTooltip(),(0,import_core210._getToolPanelClassesFromColDef)(this.columnGroup.getColGroupDef(),this.gos,null,this.columnGroup).forEach(i=>this.addOrRemoveCssClass(i,!0))}getColumns(){return this.columnGroup.getLeafColumns()}setupTooltip(){const e=this.columnGroup.getColGroupDef();if(!e)return;const t=this.gos.get("tooltipShowMode")==="whenTruncated";let s;t&&(s=()=>this.eLabel.scrollWidth>this.eLabel.clientWidth);const i=()=>{const r=e.headerTooltip;this.setTooltip({newTooltipText:r,location:"columnToolPanelColumnGroup",shouldDisplayTooltip:s})};i(),this.addManagedEventListeners({newColumnsLoaded:i})}getTooltipParams(){const e=super.getTooltipParams();return e.location="columnToolPanelColumnGroup",e}handleKeyDown(e){switch(e.key){case import_core210.KeyCode.LEFT:e.preventDefault(),this.modelItem.setExpanded(!1);break;case import_core210.KeyCode.RIGHT:e.preventDefault(),this.modelItem.setExpanded(!0);break;case import_core210.KeyCode.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 ToolPanelContextMenu(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){(0,import_core210._setDisplayed)(this.eDragHandle,!1);return}let e=!this.gos.get("suppressDragLeaveHidesColumns");const t={type:import_core210.DragSourceType.ToolPanel,eElement:this.eDragHandle,dragItemName:this.displayName,getDefaultIconName:()=>e?"hide":"notAllowed",getDragItem:()=>this.createDragItem(),onDragStarted:()=>{e=!this.gos.get("suppressDragLeaveHidesColumns"),this.eventService.dispatchEvent({type:"columnPanelItemDragStart",column:this.columnGroup})},onDragStopped:()=>{this.eventService.dispatchEvent({type:"columnPanelItemDragEnd"})},onGridEnter:s=>{e&&this.modelItemUtils.updateColumns({columns:this.columnGroup.getLeafColumns(),visibleState:s?.visibleState,pivotState:s?.pivotState,eventType:this.eventType})},onGridExit:()=>{e&&this.onChangeCommon(!1)}};this.dragAndDropService.addDragSource(t,!0),this.addDestroyFunc(()=>this.dragAndDropService.removeDragSource(t))}createDragItem(){const e=this.columnGroup.getLeafColumns(),t={},s={};return e.forEach(i=>{const r=i.getId();t[r]=i.isVisible(),s[r]=this.modelItemUtils.createPivotState(i)}),{columns:e,visibleState:t,pivotState:s}}setupExpandContract(){this.eGroupClosedIcon.appendChild((0,import_core210._createIcon)("columnSelectClosed",this.gos,null)),this.eGroupOpenedIcon.appendChild((0,import_core210._createIcon)("columnSelectOpen",this.gos,null));const e=this.onExpandOrContractClicked.bind(this);this.addManagedElementListeners(this.eGroupClosedIcon,{click:e}),this.addManagedElementListeners(this.eGroupOpenedIcon,{click:e});const t=new import_core210.TouchListener(this.eColumnGroupIcons,!0);this.addManagedListeners(t,{tap:e}),this.addDestroyFunc(t.destroy.bind(t))}onLabelClicked(){const e=!this.cbSelect.getValue();this.onChangeCommon(e)}onCheckboxChanged(e){this.onChangeCommon(e.selected)}getVisibleLeafColumns(){const e=[],t=s=>{s.forEach(i=>{i.isPassesFilter()&&(i.isGroup()?t(i.getChildren()):e.push(i.getColumn()))})};return t(this.modelItem.getChildren()),e}onChangeCommon(e){this.refreshAriaLabel(),!this.processingColumnStateChange&&this.modelItemUtils.selectAllChildren(this.modelItem.getChildren(),e,this.eventType)}refreshAriaLabel(){const e=this.localeService.getLocaleTextFunc(),t=e("ariaColumnGroup","Column Group"),s=this.cbSelect.getValue(),i=s===void 0?e("ariaIndeterminate","indeterminate"):s?e("ariaVisible","visible"):e("ariaHidden","hidden"),r=e("ariaToggleVisibility","Press SPACE to toggle visibility");(0,import_core210._setAriaLabel)(this.focusWrapper,`${this.displayName} ${t}`),this.cbSelect.setInputAriaLabel(`${r} (${i})`),(0,import_core210._setAriaDescribedBy)(this.focusWrapper,this.cbSelect.getInputElement().id)}onColumnStateChanged(){const e=this.workOutSelectedValue(),t=this.workOutReadOnlyValue();this.processingColumnStateChange=!0,this.cbSelect.setValue(e),this.cbSelect.setReadOnly(t),this.addOrRemoveCssClass("ag-column-select-column-group-readonly",t),this.processingColumnStateChange=!1}workOutSelectedValue(){const e=this.columnModel.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.columnModel.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.isExpanded();this.modelItem.setExpanded(!e)}onExpandChanged(){this.setOpenClosedIcons(),this.refreshAriaExpanded()}setOpenClosedIcons(){const e=this.modelItem.isExpanded();(0,import_core210._setDisplayed)(this.eGroupClosedIcon,!e),(0,import_core210._setDisplayed)(this.eGroupOpenedIcon,e)}refreshAriaExpanded(){(0,import_core210._setAriaExpanded)(this.focusWrapper,this.modelItem.isExpanded())}getDisplayName(){return this.displayName}onSelectAllChanged(e){const t=this.cbSelect.getValue();!this.cbSelect.isReadOnly()&&(e&&!t||!e&&t)&&this.cbSelect.toggle()}isSelected(){return this.cbSelect.getValue()}isSelectable(){return!this.cbSelect.isReadOnly()}setSelected(e){this.cbSelect.setValue(e,!0)}},PrimaryColsListPanelItemDragFeature=class extends import_core208.BeanStub{constructor(e,t){super(),this.comp=e,this.virtualList=t}wireBeans(e){this.columnMoveService=e.columnMoveService,this.columnModel=e.columnModel}postConstruct(){this.createManagedBean(new VirtualListDragFeature(this.comp,this.virtualList,{dragSourceType:import_core208.DragSourceType.ToolPanel,listItemDragStartEvent:"columnPanelItemDragStart",listItemDragEndEvent:"columnPanelItemDragEnd",eventSource:this.eventService,getCurrentDragValue:e=>this.getCurrentDragValue(e),isMoveBlocked:e=>this.isMoveBlocked(e),getNumRows:e=>e.getDisplayedColsList().length,moveItem:(e,t)=>this.moveItem(this.getCurrentColumnsBeingMoved(e),t)}))}getCurrentDragValue(e){return e.column}getCurrentColumnsBeingMoved(e){return(0,import_core208.isProvidedColumnGroup)(e)?e.getLeafColumns():e?[e]:[]}isMoveBlocked(e){return this.gos.get("suppressMovableColumns")?!0:!!this.getCurrentColumnsBeingMoved(e).find(r=>{const a=r.getColDef();return!!a.suppressMovable||!!a.lockPosition})}moveItem(e,t){if(!t)return;const{component:s}=t;let i=null,r=t.position==="top";if(s instanceof ToolPanelColumnGroupComp?(i=s.getColumns()[0],r=!0):s&&(i=s.getColumn()),!i)return;const a=this.getMoveTargetIndex({currentColumns:e,lastHoveredColumn:i,isBefore:r});a!=null&&this.columnMoveService.moveColumns(e,a,"toolPanelUi")}getMoveTargetIndex(e){const{currentColumns:t,lastHoveredColumn:s,isBefore:i}=e;if(!s||!t)return null;const r=this.columnModel.getCols().indexOf(s),a=i?r:r+1,o=this.getMoveDiff(t,a);return a-o}getMoveDiff(e,t){const s=this.columnModel.getCols();if(!e)return 0;const i=e[0],r=e.length;return s.indexOf(i)<t?r:0}},ToolPanelColumnComp=class extends import_core213.Component{constructor(e,t,s,i){super(),this.allowDragging=t,this.groupsExist=s,this.focusWrapper=i,this.eLabel=import_core213.RefPlaceholder,this.cbSelect=import_core213.RefPlaceholder,this.processingColumnStateChange=!1,this.column=e.getColumn(),this.columnDept=e.getDept(),this.displayName=e.getDisplayName()}wireBeans(e){this.columnModel=e.columnModel,this.dragAndDropService=e.dragAndDropService,this.modelItemUtils=e.modelItemUtils}postConstruct(){this.setTemplate(`<div class="ag-column-select-column">
|
|
365
|
+
<ag-checkbox data-ref="cbSelect" class="ag-column-select-checkbox"></ag-checkbox>
|
|
366
|
+
<span class="ag-column-select-column-label" data-ref="eLabel"></span>
|
|
367
|
+
</div>`,[import_core213.AgCheckboxSelector]),this.eDragHandle=(0,import_core213._createIconNoSpan)("columnDrag",this.gos),this.eDragHandle.classList.add("ag-drag-handle","ag-column-select-column-drag-handle");const e=this.cbSelect.getGui(),t=this.cbSelect.getInputElement();e.insertAdjacentElement("afterend",this.eDragHandle),t.setAttribute("tabindex","-1");const s=(0,import_core213._escapeString)(this.displayName);this.eLabel.innerHTML=s;const i=this.columnDept;this.groupsExist&&this.addCssClass("ag-column-select-add-group-indent"),this.addCssClass(`ag-column-select-indent-${i}`),this.getGui().style.setProperty("--ag-indentation-level",String(i)),this.setupDragging();const r=this.onColumnStateChanged.bind(this);this.addManagedEventListeners({columnPivotModeChanged:r}),this.addManagedListeners(this.column,{columnValueChanged:r,columnPivotChanged:r,columnRowGroupChanged:r,visibleChanged:r}),this.addManagedListeners(this.focusWrapper,{keydown:this.handleKeyDown.bind(this),contextmenu:this.onContextMenu.bind(this)}),this.addManagedPropertyListener("functionsReadOnly",this.onColumnStateChanged.bind(this)),this.addManagedListeners(this.cbSelect,{fieldValueChanged:this.onCheckboxChanged.bind(this)}),this.addManagedElementListeners(this.eLabel,{click:this.onLabelClicked.bind(this)}),this.onColumnStateChanged(),this.refreshAriaLabel(),this.setupTooltip(),(0,import_core213._getToolPanelClassesFromColDef)(this.column.getColDef(),this.gos,this.column,null).forEach(o=>this.addOrRemoveCssClass(o,!0))}getColumn(){return this.column}setupTooltip(){const e=this.gos.get("tooltipShowMode")==="whenTruncated";let t;e&&(t=()=>this.eLabel.scrollWidth>this.eLabel.clientWidth);const s=()=>{const i=this.column.getColDef().headerTooltip;this.setTooltip({newTooltipText:i,location:"columnToolPanelColumn",shouldDisplayTooltip:t})};s(),this.addManagedEventListeners({newColumnsLoaded:s})}getTooltipParams(){const e=super.getTooltipParams();return e.location="columnToolPanelColumn",e.colDef=this.column.getColDef(),e}onContextMenu(e){const{column:t,gos:s}=this;if(s.get("functionsReadOnly"))return;const i=this.createBean(new ToolPanelContextMenu(t,e,this.focusWrapper));this.addDestroyFunc(()=>{i.isAlive()&&this.destroyBean(i)})}handleKeyDown(e){e.key===import_core213.KeyCode.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&&this.modelItemUtils.setColumn(this.column,e,"toolPanelUi"))}refreshAriaLabel(){const e=this.localeService.getLocaleTextFunc(),t=e("ariaColumn","Column"),s=this.cbSelect.getValue()?e("ariaVisible","visible"):e("ariaHidden","hidden"),i=e("ariaToggleVisibility","Press SPACE to toggle visibility");(0,import_core213._setAriaLabel)(this.focusWrapper,`${this.displayName} ${t}`),this.cbSelect.setInputAriaLabel(`${i} (${s})`),(0,import_core213._setAriaDescribedBy)(this.focusWrapper,this.cbSelect.getInputElement().id)}setupDragging(){if(!this.allowDragging){(0,import_core213._setDisplayed)(this.eDragHandle,!1);return}let e=!this.gos.get("suppressDragLeaveHidesColumns");const t={type:import_core213.DragSourceType.ToolPanel,eElement:this.eDragHandle,dragItemName:this.displayName,getDefaultIconName:()=>e?"hide":"notAllowed",getDragItem:()=>this.createDragItem(),onDragStarted:()=>{e=!this.gos.get("suppressDragLeaveHidesColumns"),this.eventService.dispatchEvent({type:"columnPanelItemDragStart",column:this.column})},onDragStopped:()=>{this.eventService.dispatchEvent({type:"columnPanelItemDragEnd"})},onGridEnter:s=>{e&&this.modelItemUtils.updateColumns({columns:[this.column],visibleState:s?.visibleState,pivotState:s?.pivotState,eventType:"toolPanelUi"})},onGridExit:()=>{e&&this.onChangeCommon(!1)}};this.dragAndDropService.addDragSource(t,!0),this.addDestroyFunc(()=>this.dragAndDropService.removeDragSource(t))}createDragItem(){const e=this.column.getColId(),t={[e]:this.column.isVisible()},s={[e]:this.modelItemUtils.createPivotState(this.column)};return{columns:[this.column],visibleState:t,pivotState:s}}onColumnStateChanged(){this.processingColumnStateChange=!0;const e=this.columnModel.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:o,lockVisible:n}=this.column.getColDef(),l=!!i||!!r,c=!!a||!!o;t=!n,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){e!==this.cbSelect.getValue()&&(this.cbSelect.isReadOnly()||this.cbSelect.toggle())}isSelected(){return this.cbSelect.getValue()}isSelectable(){return!this.cbSelect.isReadOnly()}isExpandable(){return!1}setExpanded(e){(0,import_core213._warnOnce)("can not expand a column item that does not represent a column group header")}},UIColumnModel=class{constructor(e){this.items=e}getRowCount(){return this.items.length}getRow(e){return this.items[e]}},PRIMARY_COLS_LIST_PANEL_CLASS="ag-column-select-list",AgPrimaryColsList=class extends import_core205.Component{constructor(){super(`<div class="${PRIMARY_COLS_LIST_PANEL_CLASS}" role="presentation"></div>`),this.destroyColumnItemFuncs=[],this.hasLoadedInitialState=!1,this.isInitialState=!1}wireBeans(e){this.columnModel=e.columnModel,this.columnNameService=e.columnNameService,this.colDefService=e.toolPanelColDefService,this.modelItemUtils=e.modelItemUtils}destroy(){this.destroyColumnTree(),super.destroy()}destroyColumnTree(){this.allColsTree=[],this.destroyColumnItemFuncs.forEach(e=>e()),this.destroyColumnItemFuncs=[]}init(e,t,s){this.params=e,this.allowDragging=t,this.eventType=s,this.params.suppressSyncLayoutWithGrid||this.addManagedEventListeners({columnMoved:this.onColumnsChanged.bind(this)}),this.addManagedEventListeners({newColumnsLoaded:this.onColumnsChanged.bind(this)});const i=this.fireSelectionChangedEvent.bind(this);this.addManagedEventListeners({columnPivotChanged:i,columnPivotModeChanged:i,columnRowGroupChanged:i,columnValueChanged:i,columnVisible:i,newColumnsLoaded:i}),this.expandGroupsByDefault=!this.params.contractColumnSelection,this.virtualList=this.createManagedBean(new VirtualList({cssIdentifier:"column-select",ariaRole:"tree"})),this.appendChild(this.virtualList.getGui()),this.virtualList.setComponentCreator((r,a)=>((0,import_core205._setAriaLevel)(a,r.getDept()+1),this.createComponentFromItem(r,a))),this.columnModel.isReady()&&this.onColumnsChanged(),!this.params.suppressColumnMove&&this.createManagedBean(new PrimaryColsListPanelItemDragFeature(this,this.virtualList))}createComponentFromItem(e,t){if(e.isGroup()){const i=new ToolPanelColumnGroupComp(e,this.allowDragging,this.eventType,t);return this.createBean(i),i}const s=new ToolPanelColumnComp(e,this.allowDragging,this.groupsExist,t);return this.createBean(s),s}onColumnsChanged(){this.hasLoadedInitialState||(this.hasLoadedInitialState=!0,this.isInitialState=!!this.params.initialState);const e=this.getExpandedStates(),t=this.columnModel.isPivotMode();!this.params.suppressSyncLayoutWithGrid&&!t?this.buildTreeFromWhatGridIsDisplaying():this.buildTreeFromProvidedColumnDefs(),this.setExpandedStates(e),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.isGroup())return;const s=t.getColumnGroup();s&&(e[s.getId()]=t.isExpanded())}),e):{}}setExpandedStates(e){if(!this.allColsTree)return;const{isInitialState:t}=this;this.forEachItem(s=>{if(!s.isGroup())return;const i=s.getColumnGroup();if(i){const r=e[i.getId()];(r!=null||t)&&s.setExpanded(!!r)}})}buildTreeFromWhatGridIsDisplaying(){this.colDefService.syncLayoutWithGrid(this.setColumnLayout.bind(this))}setColumnLayout(e){const t=this.colDefService.createColumnTree(e);this.buildListModel(t),this.groupsExist=e.some(s=>s&&typeof s.children<"u"),this.markFilteredColumns(),this.flattenAndFilterModel()}buildTreeFromProvidedColumnDefs(){this.buildListModel(this.columnModel.getColDefColTree()),this.groupsExist=this.columnModel.isProvidedColGroupsPresent()}buildListModel(e){const t=this.onColumnExpanded.bind(this),s=o=>{o.addEventListener("expandedChanged",t);const n=o.removeEventListener.bind(o,"expandedChanged",t);this.destroyColumnItemFuncs.push(n)},i=(o,n,l)=>{o.forEach(c=>{(0,import_core205.isProvidedColumnGroup)(c)?r(c,n,l):a(c,n,l)})},r=(o,n,l)=>{const c=o.getColGroupDef();if(c&&c.suppressColumnsToolPanel)return;if(o.isPadding()){i(o.getChildren(),n,l);return}const d=this.columnNameService.getDisplayNameForProvidedColumnGroup(null,o,"columnToolPanel"),u=new ColumnModelItem(d,o,n,!0,this.expandGroupsByDefault);l.push(u),s(u),i(o.getChildren(),n+1,u.getChildren())},a=(o,n,l)=>{if(o.getColDef()&&o.getColDef().suppressColumnsToolPanel)return;const h=this.columnNameService.getDisplayNameForColumn(o,"columnToolPanel");l.push(new ColumnModelItem(h,o,n))};this.destroyColumnTree(),i(e,0,this.allColsTree)}onColumnExpanded(){this.flattenAndFilterModel()}flattenAndFilterModel(){this.displayedColsList=[];const e=s=>{s.isPassesFilter()&&(this.displayedColsList.push(s),s.isGroup()&&s.isExpanded()&&s.getChildren().forEach(e))};this.allColsTree.forEach(e),this.virtualList.setModel(new UIColumnModel(this.displayedColsList));const t=this.virtualList.getLastFocusedRow();this.virtualList.refresh(),t!=null&&this.focusRowIfAlive(t),this.notifyListeners(),this.refreshAriaLabel()}refreshAriaLabel(){const e=this.localeService.getLocaleTextFunc(),t=e("ariaColumnPanelList","Column List"),s=e("columns","Columns"),i=this.displayedColsList.length;(0,import_core205._setAriaLabel)(this.virtualList.getAriaElement(),`${t} ${i} ${s}`)}focusRowIfAlive(e){window.setTimeout(()=>{this.isAlive()&&this.virtualList.focusRow(e)},0)}forEachItem(e){const t=s=>{s.forEach(i=>{e(i),i.isGroup()&&t(i.getChildren())})};this.allColsTree&&t(this.allColsTree)}doSetExpandedAll(e){this.forEachItem(t=>{t.isGroup()&&t.setExpanded(e)})}setGroupsExpanded(e,t){if(!t){this.doSetExpandedAll(e);return}const s=[];this.forEachItem(r=>{if(!r.isGroup())return;const a=r.getColumnGroup().getId();t.indexOf(a)>=0&&(r.setExpanded(e),s.push(a))});const i=t.filter(r=>!(0,import_core205._includes)(s,r));i.length>0&&(0,import_core205._warnOnce)("unable to find group(s) for supplied groupIds:",i)}getExpandState(){let e=0,t=0;return this.forEachItem(s=>{s.isGroup()&&(s.isExpanded()?e++:t++)}),e>0&&t>0?2:t>0?1:0}doSetSelectedAll(e){this.modelItemUtils.selectAllChildren(this.allColsTree,e,this.eventType)}getSelectionState(){let e=0,t=0;const s=this.columnModel.isPivotMode();if(this.forEachItem(i=>{if(i.isGroup()||!i.isPassesFilter())return;const r=i.getColumn(),a=r.getColDef();let o;if(s){if(!r.isAllowPivot()&&!r.isAllowRowGroup()&&!r.isAllowValue())return;o=r.isValueActive()||r.isPivotActive()||r.isRowGroupActive()}else{if(a.lockVisible)return;o=r.isVisible()}o?e++:t++}),!(e>0&&t>0))return!(e===0||t>0)}setFilterText(e){this.filterText=(0,import_core205._exists)(e)?e.toLowerCase():null,this.markFilteredColumns(),this.flattenAndFilterModel()}markFilteredColumns(){const e=s=>{if(!(0,import_core205._exists)(this.filterText))return!0;const i=s.getDisplayName();return i==null||i.toLowerCase().indexOf(this.filterText)!==-1},t=(s,i)=>{let r=!1;if(s.isGroup()){const o=e(s);s.getChildren().forEach(n=>{const l=t(n,o||i);l&&(r=l)})}const a=i||r?!0:e(s);return s.setPassesFilter(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.isGroup()&&t.isExpanded()&&e.push(t.getColumnGroup().getId())}),e}},AgPrimaryColsListSelector={selector:"AG-PRIMARY-COLS-LIST",component:AgPrimaryColsList},AgPrimaryCols=class extends import_core203.Component{constructor(){super(`<div class="ag-column-select">
|
|
368
368
|
<ag-primary-cols-header data-ref="primaryColsHeaderPanel"></ag-primary-cols-header>
|
|
369
369
|
<ag-primary-cols-list data-ref="primaryColsListPanel"></ag-primary-cols-list>
|
|
370
370
|
</div>`,[AgPrimaryColsHeaderSelector,AgPrimaryColsListSelector]),this.primaryColsHeaderPanel=import_core203.RefPlaceholder,this.primaryColsListPanel=import_core203.RefPlaceholder}init(e,t,s){this.allowDragging=e,this.params=t,this.eventType=s,this.primaryColsHeaderPanel.init(this.params);const i=this.params.suppressColumnFilter,r=this.params.suppressColumnSelectAll;this.params.suppressColumnExpandAll&&i&&r&&this.primaryColsHeaderPanel.setDisplayed(!1),this.addManagedListeners(this.primaryColsListPanel,{groupExpanded:this.onGroupExpanded.bind(this),selectionChanged:this.onSelectionChange.bind(this)}),this.primaryColsListPanel.init(this.params,this.allowDragging,this.eventType),this.addManagedListeners(this.primaryColsHeaderPanel,{expandAll:this.onExpandAll.bind(this),collapseAll:this.onCollapseAll.bind(this),selectAll:this.onSelectAll.bind(this),unselectAll:this.onUnselectAll.bind(this),filterChanged:this.onFilterChanged.bind(this)}),this.positionableFeature=new import_core203.PositionableFeature(this.getGui(),{minHeight:100}),this.createManagedBean(this.positionableFeature)}toggleResizable(e){this.positionableFeature.setResizable(e?{bottom:!0}:!1)}onExpandAll(){this.primaryColsListPanel.doSetExpandedAll(!0)}onCollapseAll(){this.primaryColsListPanel.doSetExpandedAll(!1)}expandGroups(e){this.primaryColsListPanel.setGroupsExpanded(!0,e)}collapseGroups(e){this.primaryColsListPanel.setGroupsExpanded(!1,e)}setColumnLayout(e){this.primaryColsListPanel.setColumnLayout(e)}onFilterChanged(e){this.primaryColsListPanel.setFilterText(e.filterText)}syncLayoutWithGrid(){this.primaryColsListPanel.onColumnsChanged()}onSelectAll(){this.primaryColsListPanel.doSetSelectedAll(!0)}onUnselectAll(){this.primaryColsListPanel.doSetSelectedAll(!1)}onGroupExpanded(e){this.primaryColsHeaderPanel.setExpandState(e.state),this.params.onStateUpdated()}onSelectionChange(e){this.primaryColsHeaderPanel.setSelectionState(e.state)}getExpandedGroups(){return this.primaryColsListPanel.getExpandedGroups()}},PivotModePanel=class extends import_core214.Component{constructor(){super(...arguments),this.cbPivotMode=import_core214.RefPlaceholder}wireBeans(e){this.columnModel=e.columnModel,this.ctrlsService=e.ctrlsService}createTemplate(){return`<div class="ag-pivot-mode-panel">
|
|
371
371
|
<ag-toggle-button data-ref="cbPivotMode" class="ag-pivot-mode-select"></ag-toggle-button>
|
|
372
|
-
</div>`}postConstruct(){this.setTemplate(this.createTemplate(),[import_core214.AgToggleButtonSelector]),this.cbPivotMode.setValue(this.columnModel.isPivotMode());const e=this.localeService.getLocaleTextFunc();this.cbPivotMode.setLabel(e("pivotMode","Pivot Mode")),this.addManagedListeners(this.cbPivotMode,{fieldValueChanged:this.onBtPivotMode.bind(this)});const t=this.onPivotModeChanged.bind(this);this.addManagedEventListeners({newColumnsLoaded:t,columnPivotModeChanged:t})}onBtPivotMode(){const e=!!this.cbPivotMode.getValue();e!==this.columnModel.isPivotMode()&&(this.gos.updateGridOptions({options:{pivotMode:e},source:"toolPanelUi"}),this.ctrlsService.getHeaderRowContainerCtrls().forEach(t=>t.refresh()))}onPivotModeChanged(){const e=this.columnModel.isPivotMode();this.cbPivotMode.setValue(e)}},ColumnToolPanel=class extends import_core202.Component{constructor(){super('<div class="ag-column-panel"></div>'),this.initialised=!1,this.childDestroyFuncs=[]}setVisible(e){super.setDisplayed(e),e&&!this.initialised&&this.init(this.params)}init(e){const t=this.gos.addGridCommonParams({suppressColumnMove:!1,suppressColumnSelectAll:!1,suppressColumnFilter:!1,suppressColumnExpandAll:!1,contractColumnSelection:!1,suppressPivotMode:!1,suppressRowGroups:!1,suppressValues:!1,suppressPivots:!1,suppressSyncLayoutWithGrid:!1});if(this.params={...t,...e},this.isRowGroupingModuleLoaded()&&!this.params.suppressPivotMode&&(this.pivotModePanel=this.createBean(new PivotModePanel),this.childDestroyFuncs.push(()=>this.destroyBean(this.pivotModePanel)),this.appendChild(this.pivotModePanel)),this.primaryColsPanel=this.createBean(new AgPrimaryCols),this.childDestroyFuncs.push(()=>this.destroyBean(this.primaryColsPanel)),this.primaryColsPanel.init(!0,this.params,"toolPanelUi"),this.primaryColsPanel.addCssClass("ag-column-panel-column-select"),this.appendChild(this.primaryColsPanel),this.isRowGroupingModuleLoaded()){this.params.suppressRowGroups||(this.rowGroupDropZonePanel=this.createBean(new RowGroupDropZonePanel(!1)),this.childDestroyFuncs.push(()=>this.destroyBean(this.rowGroupDropZonePanel)),this.appendChild(this.rowGroupDropZonePanel)),this.params.suppressValues||(this.valuesDropZonePanel=this.createBean(new ValuesDropZonePanel(!1)),this.childDestroyFuncs.push(()=>this.destroyBean(this.valuesDropZonePanel)),this.appendChild(this.valuesDropZonePanel)),this.params.suppressPivots||(this.pivotDropZonePanel=this.createBean(new PivotDropZonePanel(!1)),this.childDestroyFuncs.push(()=>this.destroyBean(this.pivotDropZonePanel)),this.appendChild(this.pivotDropZonePanel)),this.setLastVisible();const[s]=this.addManagedEventListeners({columnPivotModeChanged:()=>{this.resetChildrenHeight(),this.setLastVisible()}});this.childDestroyFuncs.push(()=>s())}this.initialised=!0}setPivotModeSectionVisible(e){this.isRowGroupingModuleLoaded()&&(this.pivotModePanel?this.pivotModePanel.setDisplayed(e):e&&(this.pivotModePanel=this.createBean(new PivotModePanel),this.getGui().insertBefore(this.pivotModePanel.getGui(),this.getGui().firstChild),this.childDestroyFuncs.push(()=>this.destroyBean(this.pivotModePanel))),this.setLastVisible())}setRowGroupsSectionVisible(e){this.isRowGroupingModuleLoaded()&&(this.rowGroupDropZonePanel?this.rowGroupDropZonePanel.setDisplayed(e):e&&(this.rowGroupDropZonePanel=this.createManagedBean(new RowGroupDropZonePanel(!1)),this.appendChild(this.rowGroupDropZonePanel)),this.setLastVisible())}setValuesSectionVisible(e){this.isRowGroupingModuleLoaded()&&(this.valuesDropZonePanel?this.valuesDropZonePanel.setDisplayed(e):e&&(this.valuesDropZonePanel=this.createManagedBean(new ValuesDropZonePanel(!1)),this.appendChild(this.valuesDropZonePanel)),this.setLastVisible())}setPivotSectionVisible(e){this.isRowGroupingModuleLoaded()&&(this.pivotDropZonePanel?this.pivotDropZonePanel.setDisplayed(e):e&&(this.pivotDropZonePanel=this.createManagedBean(new PivotDropZonePanel(!1)),this.appendChild(this.pivotDropZonePanel),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=(0,import_core202._last)(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 i=t[s];i.style.removeProperty("height"),i.style.removeProperty("flex")}}isRowGroupingModuleLoaded(){return this.gos.assertModuleRegistered(import_core202.ModuleNames.RowGroupingModule,"Row Grouping")}expandColumnGroups(e){this.primaryColsPanel.expandGroups(e)}collapseColumnGroups(e){this.primaryColsPanel.collapseGroups(e)}setColumnLayout(e){this.primaryColsPanel.setColumnLayout(e)}syncLayoutWithGrid(){this.primaryColsPanel.syncLayoutWithGrid()}destroyChildren(){this.childDestroyFuncs.forEach(e=>e()),this.childDestroyFuncs.length=0,(0,import_core202._clearElement)(this.getGui())}refresh(e){return this.destroyChildren(),this.init(e),!0}getState(){return{expandedGroupIds:this.primaryColsPanel.getExpandedGroups()}}destroy(){this.destroyChildren(),super.destroy()}},ModelItemUtils=class extends import_core215.BeanStub{constructor(){super(...arguments),this.beanName="modelItemUtils"}wireBeans(e){this.aggFuncService=e.aggFuncService,this.columnModel=e.columnModel,this.columnApplyStateService=e.columnApplyStateService}selectAllChildren(e,t,s){const i=this.extractAllLeafColumns(e);this.setAllColumns(i,t,s)}setColumn(e,t,s){this.setAllColumns([e],t,s)}setAllColumns(e,t,s){this.columnModel.isPivotMode()?this.setAllPivot(e,t,s):this.setAllVisible(e,t,s)}extractAllLeafColumns(e){const t=[],s=i=>{i.forEach(r=>{r.isPassesFilter()&&(r.isGroup()?s(r.getChildren()):t.push(r.getColumn()))})};return s(e),t}setAllVisible(e,t,s){const i=[];e.forEach(r=>{r.getColDef().lockVisible||r.isVisible()!=t&&i.push({colId:r.getId(),hide:!t})}),i.length>0&&this.columnApplyStateService.applyColumnState({state:i},s)}setAllPivot(e,t,s){this.setAllPivotActive(e,t,s)}setAllPivotActive(e,t,s){const i=[],o=t?n=>{if(!n.isAnyFunctionActive())if(n.isAllowValue()){const l=typeof n.getAggFunc()=="string"?n.getAggFunc():this.aggFuncService?.getDefaultAggFunc(n);i.push({colId:n.getId(),aggFunc:l})}else n.isAllowRowGroup()?i.push({colId:n.getId(),rowGroup:!0}):n.isAllowPivot()&&i.push({colId:n.getId(),pivot:!0})}:n=>{(n.isPivotActive()||n.isRowGroupActive()||n.isValueActive())&&i.push({colId:n.getId(),pivot:!1,rowGroup:!1,aggFunc:null})};e.forEach(o),i.length>0&&this.columnApplyStateService.applyColumnState({state:i},s)}updateColumns(e){const{columns:t,visibleState:s,pivotState:i,eventType:r}=e,a=t.map(o=>{const n=o.getColId();if(this.columnModel.isPivotMode()){const l=i?.[n];return{colId:n,pivot:l?.pivot,rowGroup:l?.rowGroup,aggFunc:l?.aggFunc}}else return{colId:n,hide:!s?.[n]}});this.columnApplyStateService.applyColumnState({state:a},r)}createPivotState(e){return{pivot:e.isPivotActive(),rowGroup:e.isRowGroupActive(),aggFunc:e.isValueActive()?e.getAggFunc():void 0}}},VERSION8="32.2.2",ColumnsToolPanelModule=(0,import_core200._defineModule)({version:VERSION8,moduleName:import_core200.ModuleNames.ColumnsToolPanelModule,beans:[ModelItemUtils],userComponents:[{name:"agColumnsToolPanel",classImp:ColumnToolPanel},{name:"agMenuItem",classImp:AgMenuItemRenderer}],dependantModules:[EnterpriseCoreModule,RowGroupingModule,SideBarModule]}),import_core216=require("ag-grid-community"),import_csv_export2=require("ag-grid-community"),import_core218=require("ag-grid-community"),import_csv_export3=require("ag-grid-community"),import_core219=require("ag-grid-community"),import_csv_export4=require("ag-grid-community"),import_core220=require("ag-grid-community"),import_csv_export5=require("ag-grid-community"),import_core221=require("ag-grid-community"),import_core222=require("ag-grid-community"),import_core223=require("ag-grid-community"),import_core224=require("ag-grid-community"),import_core225=require("ag-grid-community"),INCH_TO_EMU=9525,numberFormatMap={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},pointsToPixel=e=>Math.round(e*96/72),pixelsToEMU=e=>Math.ceil(e*INCH_TO_EMU),getFontFamilyId=e=>{if(e===void 0)return;const s=["Automatic","Roman","Swiss","Modern","Script","Decorative"].indexOf(e||"Automatic");return Math.max(s,0)},getHeightFromProperty=(e,t)=>{if(!t)return;let s;return typeof t=="number"?s=t:s=t({rowIndex:e}),s},setExcelImageTotalWidth=(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 o=0;o<r.length;o++){const n=r[o].getActualWidth();if(e.width<a+n){e.position.colSpan=o+1,e.totalWidth=e.width,e.width=e.totalWidth-a;break}a+=n}}else e.totalWidth=e.width},setExcelImageTotalHeight=(e,t)=>{const{rowSpan:s,row:i}=e.position;if(e.height)if(s){let r=0,a=0;for(let o=i;o<i+s;o++){const n=pointsToPixel(getHeightFromProperty(o,t)||20);if(e.height<r+n){e.position.rowSpan=a+1,e.totalHeight=e.height,e.height=e.totalHeight-r;break}r+=n,a++}}else e.totalHeight=e.height},createXmlPart=(e,t)=>{const s=import_csv_export5.XmlFactory.createHeader({encoding:"UTF-8",standalone:"yes"}),i=import_csv_export5.XmlFactory.createXml(e);return t?i:`${s}${i}`},getExcelColumnName=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):getExcelColumnName(r)+i(65+a-1):getExcelColumnName(r-1)+"Z"},replaceInvisibleCharacters=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 o=`_x${i.toString(16).toUpperCase().padStart(4,"0")}_`;t+=o}else t+=e[s]}return t},buildSharedString=e=>{const t=[];for(const s of e.keys()){const i=s.toString(),r={name:"t",textNode:(0,import_core220._escapeString)(replaceInvisibleCharacters(i),!1)};i.trim().length!==i.length&&(r.properties={rawMap:{"xml:space":"preserve"}}),t.push({name:"si",children:[r]})}return t},contentTypeFactory={getTemplate(e){const{name:t,ContentType:s,Extension:i,PartName:r}=e;return{name:t,properties:{rawMap:{Extension:i,PartName:r,ContentType:s}}}}},contentType_default=contentTypeFactory,contentTypesFactory={getTemplate(e){const t=new Array(e).fill(void 0).map((h,d)=>({name:"Override",ContentType:"application/vnd.openxmlformats-officedocument.spreadsheetml.worksheet+xml",PartName:`/xl/worksheets/sheet${d+1}.xml`})),s=ExcelXlsxFactory.worksheetImages.size,i=ExcelXlsxFactory.worksheetHeaderFooterImages.size,r=ExcelXlsxFactory.worksheetDataTables.size,a={};ExcelXlsxFactory.workbookImageIds.forEach(h=>{const d=h.type==="jpg"?"jpeg":h.type;a[d]=!0});const o=new Array(s).fill(void 0).map((h,d)=>({name:"Override",ContentType:"application/vnd.openxmlformats-officedocument.drawing+xml",PartName:`/xl/drawings/drawing${d+1}.xml`})),n=new Array(r).fill(void 0).map((h,d)=>({name:"Override",ContentType:"application/vnd.openxmlformats-officedocument.spreadsheetml.table+xml",PartName:`/xl/tables/${ExcelXlsxFactory.getTableNameFromIndex(d)}.xml`})),l=Object.keys(a).map(h=>({name:"Default",ContentType:`image/${h}`,Extension:h}));i&&l.push({name:"Default",Extension:"vml",ContentType:"application/vnd.openxmlformats-officedocument.vmlDrawing"});const c=[...l,{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"},...o,...n,{name:"Override",ContentType:"application/vnd.openxmlformats-package.core-properties+xml",PartName:"/docProps/core.xml"}].map(h=>contentType_default.getTemplate(h));return{name:"Types",properties:{rawMap:{xmlns:"http://schemas.openxmlformats.org/package/2006/content-types"}},children:c}}},contentTypes_default=contentTypesFactory,coreFactory={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}]}}},core_default=coreFactory,getAnchor=(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()}]}),getExt=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}},getNvPicPr=(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:[getExt(e)]},{name:"xdr:cNvPicPr",properties:{rawMap:{preferRelativeResize:"0"}},children:[{name:"a:picLocks"}]}]}),getColorDetails=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},getDuoTone=(e,t)=>({name:"a:duotone",children:[{name:"a:prstClr",properties:{rawMap:{val:e.color}},children:getColorDetails(e)},{name:"a:srgbClr",properties:{rawMap:{val:t.color}},children:getColorDetails(t)}]}),getBlipFill=(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(getDuoTone({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"}]}]}},getSpPr=(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"}]}]}},getImageBoxSize=e=>{e.fitCell=!!e.fitCell||!e.width||!e.height;const{position:t={},fitCell:s,width:i=0,height:r=0,totalHeight:a,totalWidth:o}=e,{offsetX:n=0,offsetY:l=0,row:c=1,rowSpan:h=1,column:d=1,colSpan:u=1}=t;return{from:{row:c-1,col:d-1,offsetX:pixelsToEMU(n),offsetY:pixelsToEMU(l)},to:{row:c-1+(s?1:h-1),col:d-1+(s?1:u-1),offsetX:pixelsToEMU(i+n),offsetY:pixelsToEMU(r+l)},height:pixelsToEMU(a||r),width:pixelsToEMU(o||i)}},getPicture=(e,t,s,i)=>({name:"xdr:pic",children:[getNvPicPr(e,t+1),getBlipFill(e,s+1),getSpPr(e,i)]}),drawingFactory={getTemplate(e){const{sheetIndex:t}=e,s=ExcelXlsxFactory.worksheetImages.get(t),i=ExcelXlsxFactory.worksheetImageIds.get(t),r=s.map((a,o)=>{const n=getImageBoxSize(a);return{name:"xdr:twoCellAnchor",properties:{rawMap:{editAs:"absolute"}},children:[getAnchor("from",n.from),getAnchor("to",n.to),getPicture(a,o,i.get(a.id).index,n),{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}}},drawing_default=drawingFactory,relationshipFactory={getTemplate(e){const{Id:t,Type:s,Target:i}=e;return{name:"Relationship",properties:{rawMap:{Id:t,Type:s,Target:i}}}}},relationship_default=relationshipFactory,relationshipsFactory={getTemplate(e){const t=e.map(s=>relationship_default.getTemplate(s));return{name:"Relationships",properties:{rawMap:{xmlns:"http://schemas.openxmlformats.org/package/2006/relationships"}},children:t}}},relationships_default=relationshipsFactory,sharedStrings={getTemplate(e){return{name:"sst",properties:{rawMap:{xmlns:"http://schemas.openxmlformats.org/spreadsheetml/2006/main",count:e.size,uniqueCount:e.size}},children:buildSharedString(e)}}},sharedStrings_default=sharedStrings,getWeightName=e=>{switch(e){case 1:return"thin";case 2:return"medium";case 3:return"thick";default:return"hair"}},mappedBorderNames={None:"None",Dot:"Dotted",Dash:"Dashed",Double:"Double",DashDot:"DashDot",DashDotDot:"DashDotDot",SlantDashDot:"SlantDashDot",Continuous:"Continuous"},mediumBorders=["Dashed","DashDot","DashDotDot"],colorMap={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"},horizontalAlignmentMap={Automatic:"general",Left:"left",Center:"center",Right:"right",Fill:"fill",Justify:"justify",CenterAcrossSelection:"centerContinuous",Distributed:"distributed",JustifyDistributed:"justify"},verticalAlignmentMap={Automatic:void 0,Top:"top",Bottom:"bottom",Center:"center",Justify:"justify",Distributed:"distributed",JustifyDistributed:"justify"},convertLegacyPattern=e=>e?colorMap[e]||e:"none",convertLegacyColor=e=>e==null?e:(e.charAt(0)==="#"&&(e=e.substring(1)),e.length===6?"FF"+e:e),convertLegacyBorder=(e,t)=>{if(!e)return"thin";const s=getWeightName(t);if(e==="Continuous")return s;const i=mappedBorderNames[e];return s==="medium"&&mediumBorders.some(r=>r===i)?`medium${i}`:`${i.charAt(0).toLowerCase()}${i.substring(1)}`},convertLegacyHorizontalAlignment=e=>horizontalAlignmentMap[e]||"general",convertLegacyVerticalAlignment=e=>verticalAlignmentMap[e]||void 0,getBorderColor=e=>({name:"color",properties:{rawMap:{rgb:convertLegacyColor(e||"#000000")}}}),borderFactory={getTemplate(e){const{left:t,right:s,top:i,bottom:r,diagonal:a}=e,o=t?[getBorderColor(t.color)]:void 0,n=s?[getBorderColor(s.color)]:void 0,l=i?[getBorderColor(i.color)]:void 0,c=r?[getBorderColor(r.color)]:void 0,h=a?[getBorderColor(a.color)]:void 0;return{name:"border",children:[{name:"left",properties:{rawMap:{style:t&&t.style}},children:o},{name:"right",properties:{rawMap:{style:s&&s.style}},children:n},{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:h}]}}},border_default=borderFactory,bordersFactory={getTemplate(e){return{name:"borders",properties:{rawMap:{count:e.length}},children:e.map(t=>border_default.getTemplate(t))}}},borders_default=bordersFactory,getReadingOrderId=e=>{const s=["Context","LeftToRight","RightToLeft"].indexOf(e);return Math.max(s,0)},alignmentFactory={getTemplate(e){const{horizontal:t,indent:s,readingOrder:i,rotate:r,shrinkToFit:a,vertical:o,wrapText:n}=e;return{name:"alignment",properties:{rawMap:{horizontal:t&&convertLegacyHorizontalAlignment(t),indent:s,readingOrder:i&&getReadingOrderId(i),textRotation:r,shrinkToFit:a,vertical:o&&convertLegacyVerticalAlignment(o),wrapText:n}}}}},alignment_default=alignmentFactory,protectionFactory={getTemplate(e){const t=e.protected===!1?0:1;return{name:"protection",properties:{rawMap:{hidden:e.hideFormula===!0?1:0,locked:t}}}}},protection_default=protectionFactory,xfFactory={getTemplate(e){const{alignment:t,borderId:s,fillId:i,fontId:r,numFmtId:a,protection:o,quotePrefix:n,xfId:l}=e,c=[];return t&&c.push(alignment_default.getTemplate(t)),o&&c.push(protection_default.getTemplate(o)),{name:"xf",properties:{rawMap:{applyAlignment:t?1:void 0,applyProtection:o?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:n?1:void 0,xfId:l}},children:c.length?c:void 0}}},xf_default=xfFactory,cellStylesXfsFactory={getTemplate(e){return{name:"cellStyleXfs",properties:{rawMap:{count:e.length}},children:e.map(t=>xf_default.getTemplate(t))}}},cellStyleXfs_default=cellStylesXfsFactory,borderFactory2={getTemplate(e){const{builtinId:t,name:s,xfId:i}=e;return{name:"cellStyle",properties:{rawMap:{builtinId:t,name:s,xfId:i}}}}},cellStyle_default=borderFactory2,cellStylesFactory={getTemplate(e){return{name:"cellStyles",properties:{rawMap:{count:e.length}},children:e.map(t=>cellStyle_default.getTemplate(t))}}},cellStyles_default=cellStylesFactory,cellXfsFactory={getTemplate(e){return{name:"cellXfs",properties:{rawMap:{count:e.length}},children:e.map(t=>xf_default.getTemplate(t))}}},cellXfs_default=cellXfsFactory,fillFactory={getTemplate(e){const{patternType:t,fgTheme:s,fgTint:i,fgRgb:r,bgRgb:a,bgIndexed:o}=e,n={name:"patternFill",properties:{rawMap:{patternType:t}}};return(s||i||r)&&(n.children=[{name:"fgColor",properties:{rawMap:{theme:s,tint:i,rgb:r}}}]),(o||a)&&(n.children||(n.children=[]),n.children.push({name:"bgColor",properties:{rawMap:{indexed:o,rgb:a}}})),{name:"fill",children:[n]}}},fill_default=fillFactory,fillsFactory={getTemplate(e){return{name:"fills",properties:{rawMap:{count:e.length}},children:e.map(t=>fill_default.getTemplate(t))}}},fills_default=fillsFactory,fontFactory={getTemplate(e){const{size:t,colorTheme:s,color:i="FF000000",fontName:r="Calibri",family:a,scheme:o,italic:n,bold:l,strikeThrough:c,outline:h,shadow:d,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}}}),o&&g.push({name:"scheme",properties:{rawMap:{val:o}}}),n&&g.push({name:"i"}),l&&g.push({name:"b"}),c&&g.push({name:"strike"}),h&&g.push({name:"outline"}),d&&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}}},font_default=fontFactory,fontsFactory={getTemplate(e){return{name:"fonts",properties:{rawMap:{count:e.length}},children:e.map(t=>font_default.getTemplate(t))}}},fonts_default=fontsFactory;function prepareString(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]=(0,import_core222._escapeString)(i))}return t.join("")}var numberFormatFactory={getTemplate(e){let{formatCode:t,numFmtId:s}=e;return t.length&&(t=prepareString(t)),{name:"numFmt",properties:{rawMap:{formatCode:t,numFmtId:s}}}}},numberFormat_default=numberFormatFactory,numberFormatsFactory={getTemplate(e){return{name:"numFmts",properties:{rawMap:{count:e.length}},children:e.map(t=>numberFormat_default.getTemplate(t))}}},numberFormats_default=numberFormatsFactory,stylesMap,registeredNumberFmts,registeredFonts,registeredFills,registeredBorders,registeredCellStyleXfs,registeredCellXfs,registeredCellStyles,currentSheet,getStyleName=(e,t)=>(e.indexOf("mixedStyle")!==-1&&t>1&&(e+=`_${t}`),e),resetStylesheetValues=()=>{stylesMap={base:0},registeredNumberFmts=[],registeredFonts=[{fontName:"Calibri",colorTheme:"1",family:"2",scheme:"minor"}],registeredFills=[{patternType:"none"},{patternType:"gray125"}],registeredBorders=[{left:void 0,right:void 0,top:void 0,bottom:void 0,diagonal:void 0}],registeredCellStyleXfs=[{borderId:0,fillId:0,fontId:0,numFmtId:0}],registeredCellXfs=[{borderId:0,fillId:0,fontId:0,numFmtId:0,xfId:0}],registeredCellStyles=[{builtinId:0,name:"Normal",xfId:0}]},registerFill=e=>{const t=convertLegacyPattern(e.pattern),s=convertLegacyColor(e.color),i=convertLegacyColor(e.patternColor);let r=registeredFills.findIndex(a=>{const{patternType:o,fgRgb:n,bgRgb:l}=a;return!(o!=t||n!=s||l!=i)});return r===-1&&(r=registeredFills.length,registeredFills.push({patternType:t,fgRgb:s,bgRgb:i})),r},registerNumberFmt=e=>{if(numberFormatMap[e])return numberFormatMap[e];let t=registeredNumberFmts.findIndex(s=>s.formatCode===e);return t===-1?(t=registeredNumberFmts.length+164,registeredNumberFmts.push({formatCode:e,numFmtId:t})):t=registeredNumberFmts[t].numFmtId,t},registerBorders=e=>{const{borderBottom:t,borderTop:s,borderLeft:i,borderRight:r}=e;let a,o,n,l,c,h,d,u;i&&(n=convertLegacyBorder(i.lineStyle,i.weight),d=convertLegacyColor(i.color)),r&&(l=convertLegacyBorder(r.lineStyle,r.weight),u=convertLegacyColor(r.color)),t&&(a=convertLegacyBorder(t.lineStyle,t.weight),c=convertLegacyColor(t.color)),s&&(o=convertLegacyBorder(s.lineStyle,s.weight),h=convertLegacyColor(s.color));let p=registeredBorders.findIndex(g=>{const{left:m,right:C,top:f,bottom:v}=g;if(!m&&(n||d)||!C&&(l||u)||!f&&(o||h)||!v&&(a||c))return!1;const{style:S,color:y}=m||{},{style:w,color:x}=C||{},{style:b,color:T}=f||{},{style:M,color:P}=v||{};return!(S!=n||y!=d||w!=l||x!=u||b!=o||T!=h||M!=a||P!=c)});return p===-1&&(p=registeredBorders.length,registeredBorders.push({left:{style:n,color:d},right:{style:l,color:u},top:{style:o,color:h},bottom:{style:a,color:c},diagonal:{style:void 0,color:void 0}})),p},registerFont=e=>{const{fontName:t="Calibri",color:s,size:i,bold:r,italic:a,outline:o,shadow:n,strikeThrough:l,underline:c,family:h,verticalAlign:d}=e,u=convertLegacyColor(s),p=getFontFamilyId(h),g=c?c.toLocaleLowerCase():void 0,m=d?d.toLocaleLowerCase():void 0;let C=registeredFonts.findIndex(f=>!(f.fontName!=t||f.color!=u||f.size!=i||f.bold!=r||f.italic!=a||f.outline!=o||f.shadow!=n||f.strikeThrough!=l||f.underline!=g||f.verticalAlign!=m||f.family!=p));return C===-1&&(C=registeredFonts.length,registeredFonts.push({fontName:t,color:u,size:i,bold:r,italic:a,outline:o,shadow:n,strikeThrough:l,underline:g,verticalAlign:m,family:p?.toString()})),C},registerStyle=e=>{const{alignment:t,borders:s,font:i,interior:r,numberFormat:a,protection:o,quotePrefix:n}=e;let{id:l}=e,c=0,h=0,d=0,u=0;l&&(l=getStyleName(l,currentSheet),stylesMap[l]==null&&(r&&(c=registerFill(r)),s&&(h=registerBorders(s)),i&&(d=registerFont(i)),a&&(u=registerNumberFmt(a.format)),stylesMap[l]=registeredCellXfs.length,registeredCellXfs.push({alignment:t,borderId:h||0,fillId:c||0,fontId:d||0,numFmtId:u||0,protection:o,quotePrefix:n,xfId:0})))},stylesheetFactory={getTemplate(e){const t=numberFormats_default.getTemplate(registeredNumberFmts),s=fonts_default.getTemplate(registeredFonts.map(l=>({...l,size:l.size!=null?l.size:e}))),i=fills_default.getTemplate(registeredFills),r=borders_default.getTemplate(registeredBorders),a=cellStyleXfs_default.getTemplate(registeredCellStyleXfs),o=cellXfs_default.getTemplate(registeredCellXfs),n=cellStyles_default.getTemplate(registeredCellStyles);return resetStylesheetValues(),{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,o,n,{name:"tableStyles",properties:{rawMap:{count:0,defaultPivotStyle:"PivotStyleLight16",defaultTableStyle:"TableStyleMedium2"}}}]}}},getStyleId=(e,t)=>stylesMap[getStyleName(e,t)]||0,registerStyles=(e,t)=>{currentSheet=t,currentSheet===1&&resetStylesheetValues(),e.forEach(registerStyle)},stylesheet_default=stylesheetFactory,tableFactory={getTemplate(e,t){const{name:s,columns:i,rowCount:r,displayName:a,headerRowIndex:o,showRowStripes:n,showColumnStripes:l,showFilterButtons:c,highlightFirstColumn:h,highlightLastColumn:d}=e||{};if(!e||!s||!Array.isArray(i)||!i.length||!r)return{name:"table"};const u=i.map((S,y)=>({name:"filterColumn",properties:{rawMap:{colId:y.toString(),hiddenButton:c[y]?0:1}}})),p=o+1,g=(t+1).toString(),m=`A${p}`,C=`${String.fromCharCode(64+i.length)}${p+r}`,f=`${m}:${C}`,v=t?`${a}_${t+1}`: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:v,ref:f,totalsRowShown:0,id:g}},children:[{name:"autoFilter",properties:{rawMap:{ref:f}},children:u},{name:"tableColumns",properties:{rawMap:{count:i.length}},children:i.map((S,y)=>({name:"tableColumn",properties:{rawMap:{id:(y+1).toString(),name:S,dataCellStyle:"Normal"}}}))},{name:"tableStyleInfo",properties:{rawMap:{name:"TableStyleLight1",showFirstColumn:h?1:0,showLastColumn:d?1:0,showRowStripes:n?1:0,showColumnStripes:l?1:0}}}]}}},table_default=tableFactory,getColorChildren=e=>{const[t,s,i,r]=e;return{name:`a:${t}`,children:[{name:`a:${s}`,properties:{rawMap:{val:i,lastClr:r}}}]}},colorScheme={getTemplate(){return{name:"a:clrScheme",properties:{rawMap:{name:"Office"}},children:[getColorChildren(["dk1","sysClr","windowText","000000"]),getColorChildren(["lt1","sysClr","window","FFFFFF"]),getColorChildren(["dk2","srgbClr","44546A"]),getColorChildren(["lt2","srgbClr","E7E6E6"]),getColorChildren(["accent1","srgbClr","4472C4"]),getColorChildren(["accent2","srgbClr","ED7D31"]),getColorChildren(["accent3","srgbClr","A5A5A5"]),getColorChildren(["accent4","srgbClr","FFC000"]),getColorChildren(["accent5","srgbClr","5B9BD5"]),getColorChildren(["accent6","srgbClr","70AD47"]),getColorChildren(["hlink","srgbClr","0563C1"]),getColorChildren(["folHlink","srgbClr","954F72"])]}}},colorScheme_default=colorScheme,getFont=e=>{const[t,s,i,r]=e;return{name:`a:${t}`,properties:{rawMap:{script:i,typeface:s,panose:r}}}},fontScheme={getTemplate(){return{name:"a:fontScheme",properties:{rawMap:{name:"Office"}},children:[{name:"a:majorFont",children:[getFont(["latin","Calibri Light",void 0,"020F0302020204030204"]),getFont(["ea",""]),getFont(["cs",""]),getFont(["font","\u6E38\u30B4\u30B7\u30C3\u30AF Light","Jpan"]),getFont(["font","\uB9D1\uC740 \uACE0\uB515","Hang"]),getFont(["font","\u7B49\u7EBF Light","Hans"]),getFont(["font","\u65B0\u7D30\u660E\u9AD4","Hant"]),getFont(["font","Times New Roman","Arab"]),getFont(["font","Times New Roman","Hebr"]),getFont(["font","Tahoma","Thai"]),getFont(["font","Nyala","Ethi"]),getFont(["font","Vrinda","Beng"]),getFont(["font","Shruti","Gujr"]),getFont(["font","MoolBoran","Khmr"]),getFont(["font","Tunga","Knda"]),getFont(["font","Raavi","Guru"]),getFont(["font","Euphemia","Cans"]),getFont(["font","Plantagenet Cherokee","Cher"]),getFont(["font","Microsoft Yi Baiti","Yiii"]),getFont(["font","Microsoft Himalaya","Tibt"]),getFont(["font","MV Boli","Thaa"]),getFont(["font","Mangal","Deva"]),getFont(["font","Gautami","Telu"]),getFont(["font","Latha","Taml"]),getFont(["font","Estrangelo Edessa","Syrc"]),getFont(["font","Kalinga","Orya"]),getFont(["font","Kartika","Mlym"]),getFont(["font","DokChampa","Laoo"]),getFont(["font","Iskoola Pota","Sinh"]),getFont(["font","Mongolian Baiti","Mong"]),getFont(["font","Times New Roman","Viet"]),getFont(["font","Microsoft Uighur","Uigh"]),getFont(["font","Sylfaen","Geor"]),getFont(["font","Arial","Armn"]),getFont(["font","Leelawadee UI","Bugi"]),getFont(["font","Microsoft JhengHei","Bopo"]),getFont(["font","Javanese Text","Java"]),getFont(["font","Segoe UI","Lisu"]),getFont(["font","Myanmar Text","Mymr"]),getFont(["font","Ebrima","Nkoo"]),getFont(["font","Nirmala UI","Olck"]),getFont(["font","Ebrima","Osma"]),getFont(["font","Phagspa","Phag"]),getFont(["font","Estrangelo Edessa","Syrn"]),getFont(["font","Estrangelo Edessa","Syrj"]),getFont(["font","Estrangelo Edessa","Syre"]),getFont(["font","Nirmala UI","Sora"]),getFont(["font","Microsoft Tai Le","Tale"]),getFont(["font","Microsoft New Tai Lue","Talu"]),getFont(["font","Ebrima","Tfng"])]},{name:"a:minorFont",children:[getFont(["latin","Calibri",void 0,"020F0502020204030204"]),getFont(["ea",""]),getFont(["cs",""]),getFont(["font","\u6E38\u30B4\u30B7\u30C3\u30AF","Jpan"]),getFont(["font","\uB9D1\uC740 \uACE0\uB515","Hang"]),getFont(["font","\u7B49\u7EBF","Hans"]),getFont(["font","\u65B0\u7D30\u660E\u9AD4","Hant"]),getFont(["font","Arial","Arab"]),getFont(["font","Arial","Hebr"]),getFont(["font","Tahoma","Thai"]),getFont(["font","Nyala","Ethi"]),getFont(["font","Vrinda","Beng"]),getFont(["font","Shruti","Gujr"]),getFont(["font","DaunPenh","Khmr"]),getFont(["font","Tunga","Knda"]),getFont(["font","Raavi","Guru"]),getFont(["font","Euphemia","Cans"]),getFont(["font","Plantagenet Cherokee","Cher"]),getFont(["font","Microsoft Yi Baiti","Yiii"]),getFont(["font","Microsoft Himalaya","Tibt"]),getFont(["font","MV Boli","Thaa"]),getFont(["font","Mangal","Deva"]),getFont(["font","Gautami","Telu"]),getFont(["font","Latha","Taml"]),getFont(["font","Estrangelo Edessa","Syrc"]),getFont(["font","Kalinga","Orya"]),getFont(["font","Kartika","Mlym"]),getFont(["font","DokChampa","Laoo"]),getFont(["font","Iskoola Pota","Sinh"]),getFont(["font","Mongolian Baiti","Mong"]),getFont(["font","Arial","Viet"]),getFont(["font","Microsoft Uighur","Uigh"]),getFont(["font","Sylfaen","Geor"]),getFont(["font","Arial","Armn"]),getFont(["font","Leelawadee UI","Bugi"]),getFont(["font","Microsoft JhengHei","Bopo"]),getFont(["font","Javanese Text","Java"]),getFont(["font","Segoe UI","Lisu"]),getFont(["font","Myanmar Text","Mymr"]),getFont(["font","Ebrima","Nkoo"]),getFont(["font","Nirmala UI","Olck"]),getFont(["font","Ebrima","Osma"]),getFont(["font","Phagspa","Phag"]),getFont(["font","Estrangelo Edessa","Syrn"]),getFont(["font","Estrangelo Edessa","Syrj"]),getFont(["font","Estrangelo Edessa","Syre"]),getFont(["font","Nirmala UI","Sora"]),getFont(["font","Microsoft Tai Le","Tale"]),getFont(["font","Microsoft New Tai Lue","Talu"]),getFont(["font","Ebrima","Tfng"])]}]}}},fontScheme_default=fontScheme,getPropertyVal=(e,t,s)=>({name:`a:${e}`,properties:{rawMap:{val:t}},children:s}),getGs=e=>{const[t,s,i,r,a,o]=e,n=[];return n.push(getPropertyVal("satMod",i)),r&&n.push(getPropertyVal("lumMod",r)),a&&n.push(getPropertyVal("tint",a)),o&&n.push(getPropertyVal("shade",o)),{name:"a:gs",properties:{rawMap:{pos:t}},children:[{name:"a:schemeClr",properties:{rawMap:{val:s}},children:n}]}},getSolidFill=(e,t)=>({name:"a:solidFill",children:[getPropertyVal("schemeClr",e,t)]}),getGradFill=e=>{const[t,s,i,r,a]=e,[o,n]=a;return{name:"a:gradFill",properties:{rawMap:{rotWithShape:t}},children:[{name:"a:gsLst",children:[getGs(s),getGs(i),getGs(r)]},{name:"a:lin",properties:{rawMap:{ang:o,scaled:n}}}]}},getLine=e=>{const[t,s,i,r]=e;return{name:"a:ln",properties:{rawMap:{w:t,cap:s,cmpd:i,algn:r}},children:[getSolidFill("phClr"),getPropertyVal("prstDash","solid"),{name:"a:miter",properties:{rawMap:{lim:"800000"}}}]}},getEffectStyle=e=>{const t=[];if(e){const[s,i,r,a,o]=e;t.push({name:"a:outerShdw",properties:{rawMap:{blurRad:s,dist:i,dir:r,algn:a,rotWithShape:o}},children:[getPropertyVal("srgbClr","000000",[getPropertyVal("alpha","63000")])]})}return{name:"a:effectStyle",children:[Object.assign({},{name:"a:effectLst"},t.length?{children:t}:{})]}},getFillStyleList=()=>({name:"a:fillStyleLst",children:[getSolidFill("phClr"),getGradFill(["1",["0","phClr","105000","110000","67000"],["50000","phClr","103000","105000","73000"],["100000","phClr","109000","105000","81000"],["5400000","0"]]),getGradFill(["1",["0","phClr","103000","102000","94000"],["50000","phClr","110000","100000",void 0,"100000"],["100000","phClr","120000","99000",void 0,"78000"],["5400000","0"]])]}),getLineStyleList=()=>({name:"a:lnStyleLst",children:[getLine(["6350","flat","sng","ctr"]),getLine(["12700","flat","sng","ctr"]),getLine(["19050","flat","sng","ctr"])]}),getEffectStyleList=()=>({name:"a:effectStyleLst",children:[getEffectStyle(),getEffectStyle(),getEffectStyle(["57150","19050","5400000","ctr","0"])]}),getBgFillStyleList=()=>({name:"a:bgFillStyleLst",children:[getSolidFill("phClr"),getSolidFill("phClr",[getPropertyVal("tint","95000"),getPropertyVal("satMod","170000")]),getGradFill(["1",["0","phClr","150000","102000","93000","98000"],["50000","phClr","130000","103000","98000","90000"],["100000","phClr","120000",void 0,void 0,"63000"],["5400000","0"]])]}),formatScheme={getTemplate(){return{name:"a:fmtScheme",properties:{rawMap:{name:"Office"}},children:[getFillStyleList(),getLineStyleList(),getEffectStyleList(),getBgFillStyleList()]}}},formatScheme_default=formatScheme,themeElements={getTemplate(){return{name:"a:themeElements",children:[colorScheme_default.getTemplate(),fontScheme_default.getTemplate(),formatScheme_default.getTemplate()]}}},themeElements_default=themeElements,officeTheme={getTemplate(){return{name:"a:theme",properties:{prefixedAttributes:[{prefix:"xmlns:",map:{a:"http://schemas.openxmlformats.org/drawingml/2006/main"}}],rawMap:{name:"Office Theme"}},children:[themeElements_default.getTemplate(),{name:"a:objectDefaults"},{name:"a:extraClrSchemeLst"}]}}},office_default=officeTheme,getShapeLayout=()=>({name:"o:shapelayout",properties:{prefixedAttributes:[{prefix:"v:",map:{ext:"edit"}}]},children:[{name:"o:idmap",properties:{prefixedAttributes:[{prefix:"v:",map:{ext:"edit"}}],rawMap:{data:"1"}}}]}),getStroke=()=>({name:"v:stroke",properties:{rawMap:{joinstyle:"miter"}}}),getFormulas=e=>({name:"v:formulas",children:e.map(t=>({name:"v:f",properties:{rawMap:{eqn:t}}}))}),getPath=()=>({name:"v:path",properties:{prefixedAttributes:[{prefix:"o:",map:{connecttype:"rect",extrusionok:"f"}}],rawMap:{gradientshapeok:"t"}}}),getLock=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 mapNumber(e,t,s,i,r){return(e-t)/(s-t)*(r-i)+i}var getImageData=(e,t)=>{let s;const{recolor:i,brightness:r,contrast:a,id:o}=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 n="1";a>=0&&(a<50?n=String(a/50):a<100?n=String(50/(100-a)):a===100&&(n="2147483647f")),s.gain=n}r!=null&&r!==50&&(s.blacklevel=mapNumber(r,0,100,-.5,.5).toString())}return{name:"v:imagedata",properties:{prefixedAttributes:[{prefix:"o:",map:{relid:`rId${t}`,title:o}}],rawMap:s}}},getShapeType=()=>{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:[getStroke(),getFormulas(e),getPath(),getLock({aspectratio:!0})]}},pixelToPoint=e=>Math.floor((e??0)*.74999943307122),getShape=(e,t)=>{const{width:s=0,height:i=0,altText:r}=e,a=pixelToPoint(s),o=pixelToPoint(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: ${o}pt; z-index: ${t+1}`,type:"#_x0000_t75",alt:r}},children:[getImageData(e,t+1),getLock({rotation:!0})]}},vmlDrawingFactory={getTemplate(e){const t=ExcelXlsxFactory.worksheetHeaderFooterImages.get(e.sheetIndex)||[],s=[getShapeLayout(),getShapeType(),...t.map((i,r)=>getShape(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}}},vmlDrawing_default=vmlDrawingFactory,sheetFactory={getTemplate(e,t){const s=(t+1).toString();return{name:"sheet",properties:{rawMap:{name:e,sheetId:s,"r:id":`rId${s}`}}}}},sheet_default=sheetFactory,sheetsFactory={getTemplate(e){return{name:"sheets",children:e.map((t,s)=>sheet_default.getTemplate(t,s))}}},sheets_default=sheetsFactory,workbookFactory={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}}}]},sheets_default.getTemplate(e)]}}},workbook_default=workbookFactory,getExcelCellWidth=e=>Math.ceil((e-12)/7+1),columnFactory={getTemplate(e){const{min:t,max:s,outlineLevel:i,s:r,width:a,hidden:o,bestFit:n}=e;let l=1,c="0";return a>1&&(l=getExcelCellWidth(a),c="1"),{name:"col",properties:{rawMap:{min:t,max:s,outlineLevel:i??void 0,width:l,style:r,hidden:o?"1":"0",bestFit:n?"1":"0",customWidth:c}}}}},column_default=columnFactory,mergeCellFactory={getTemplate(e){return{name:"mergeCell",properties:{rawMap:{ref:e}}}}},mergeCell_default=mergeCellFactory,convertLegacyType=e=>{const t=e.charAt(0).toLowerCase();return t==="s"?"inlineStr":t},cellFactory={getTemplate(e,t,s){const{ref:i,data:r,styleId:a}=e,{type:o,value:n}=r||{type:"empty",value:null};let l=o;o==="f"?l="str":o.charAt(0)===o.charAt(0).toUpperCase()&&(l=convertLegacyType(o));const c={name:"c",properties:{rawMap:{r:i,t:l==="empty"?void 0:l,s:a?getStyleId(a,s):void 0}}};if(l==="empty")return c;let h;return l==="str"&&o==="f"?h=[{name:"f",textNode:(0,import_core224._escapeString)(replaceInvisibleCharacters(n),!1)}]:l==="inlineStr"?h=[{name:"is",children:[{name:"t",textNode:(0,import_core224._escapeString)(replaceInvisibleCharacters(n),!1)}]}]:h=[{name:"v",textNode:n}],Object.assign({},c,{children:h})}},cell_default=cellFactory,addEmptyCells=(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=[],o=e[s[r].pos];for(let n=1;n<=o.mergeAcross;n++)a.push({ref:`${getExcelColumnName(s[r].excelPos+1+n)}${t+1}`,styleId:o.styleId,data:{type:"empty",value:null}});a.length&&e.splice(s[r].pos+1,0,...a)}},shouldDisplayCell=e=>e.data?.value!==""||e.styleId!==void 0,rowFactory={getTemplate(e,t,s){const{collapsed:i,hidden:r,height:a,outlineLevel:o,cells:n=[]}=e;addEmptyCells(n,t);const l=n.filter(shouldDisplayCell).map((c,h)=>cell_default.getTemplate(c,h,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:o||void 0}},children:l}}},row_default=rowFactory,getMergedCellsAndAddColumnGroups=(e,t,s)=>{const i=[],r=[];e.forEach((n,l)=>{const c=n.cells;let h=0,d;c.forEach((u,p)=>{const g=p+h+1,m=getExcelColumnName(g),C=l+1;if(u.mergeAcross){h+=u.mergeAcross;const v=getExcelColumnName(p+h+1);i.push(`${m}${C}:${v}${C}`)}t[g-1]||(t[g-1]={});const{collapsibleRanges:f}=u;f&&f.forEach(v=>{r.push([g+v[0],g+v[1]])}),d=t[g-1],d.min=g,d.max=g,u.ref=`${m}${C}`})}),r.sort((n,l)=>n[0]!==l[0]?n[0]-l[0]:l[1]-n[1]);const a=new Map,o=new Map;return r.filter(n=>{const l=n.toString();return a.get(l)?!1:(a.set(l,!0),!0)}).forEach(n=>{const l=t.find(h=>h.min==n[0]&&h.max==n[1]),c=o.get(n[0]);t.push({min:n[0],max:n[1],outlineLevel:s?void 0:c||1,width:(l||{width:100}).width}),o.set(n[0],(c||0)+1)}),i},getPageOrientation=e=>!e||e!=="Portrait"&&e!=="Landscape"?"portrait":e.toLocaleLowerCase(),getPageSize=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},replaceHeaderFooterTokens=e=>{const t={"&[Page]":"&P","&[Pages]":"&N","&[Date]":"&D","&[Time]":"&T","&[Tab]":"&A","&[Path]":"&Z","&[File]":"&F","&[Picture]":"&G"};return(0,import_core223._iterateObject)(t,(s,i)=>{e=e.replace(s,i)}),e},getHeaderPosition=e=>e==="Center"?"C":e==="Right"?"R":"L",applyHeaderFontStyle=(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),processHeaderFooterContent=(e,t,s)=>e.reduce((i,r,a)=>{const o=getHeaderPosition(r.position),n=applyHeaderFontStyle(`${i}&${o}`,r.font),l=["Left","Center","Right"];r.position||(r.position=l[a]);const{image:c}=r;if(r.value==="&[Picture]"&&c){const h=`${o}${t}${s}`;ExcelXlsxFactory.addHeaderFooterImageToMap(c,h)}return`${n}${(0,import_core223._escapeString)(replaceHeaderFooterTokens(r.value))}`},""),buildHeaderFooter=e=>{const t=["all","first","even"],s=[];return t.forEach(i=>{const r=e[i],a=i==="all"?"odd":i;if(r)for(const[o,n]of Object.entries(r)){const l=`${o.charAt(0).toUpperCase()}${o.slice(1)}`,c=o[0].toUpperCase();if(n){const h=i==="all"?"":i.toUpperCase();s.push({name:`${a}${l}`,properties:{rawMap:{"xml:space":"preserve"}},textNode:processHeaderFooterContent(n,c,h)})}}}),s},addColumns=e=>t=>(e.length&&t.children.push({name:"cols",children:e.map(s=>column_default.getTemplate(s))}),t),addSheetData=(e,t)=>s=>(e.length&&s.children.push({name:"sheetData",children:e.map((i,r)=>row_default.getTemplate(i,r,t))}),s),addMergeCells=e=>t=>(e.length&&t.children.push({name:"mergeCells",properties:{rawMap:{count:e.length}},children:e.map(s=>mergeCell_default.getTemplate(s))}),t),addPageMargins=e=>t=>{const{top:s=.75,right:i=.7,bottom:r=.75,left:a=.7,header:o=.3,footer:n=.3}=e;return t.children.push({name:"pageMargins",properties:{rawMap:{bottom:r,footer:n,header:o,left:a,right:i,top:s}}}),t},addPageSetup=e=>t=>(e&&t.children.push({name:"pageSetup",properties:{rawMap:{horizontalDpi:0,verticalDpi:0,orientation:getPageOrientation(e.orientation),paperSize:getPageSize(e.pageSize)}}}),t),addHeaderFooter=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:buildHeaderFooter(e)}),t},addExcelTableRel=e=>t=>(e&&t.children.push({name:"tableParts",properties:{rawMap:{count:"1"}},children:[{name:"tablePart",properties:{rawMap:{"r:id":`rId${++t.rIdCounter}`}}}]}),t),addDrawingRel=e=>t=>(ExcelXlsxFactory.worksheetImages.get(e)?.length&&t.children.push({name:"drawing",properties:{rawMap:{"r:id":`rId${++t.rIdCounter}`}}}),t),addVmlDrawingRel=e=>t=>(ExcelXlsxFactory.worksheetHeaderFooterImages.get(e)&&t.children.push({name:"legacyDrawingHF",properties:{rawMap:{"r:id":`rId${++t.rIdCounter}`}}}),t),getPane=(e=0,t=0)=>{const s=e>0||t>0;return s?[{name:"pane",properties:{rawMap:{state:s?"frozen":void 0,topLeftCell:s?`${getExcelColumnName(e+1)}${t+1}`:void 0,xSplit:e===0?void 0:e,ySplit:t===0?void 0:t}}}]:void 0},addSheetViews=(e=!1,t,s)=>i=>(i.children.push({name:"sheetViews",children:[{name:"sheetView",properties:{rawMap:{rightToLeft:e===!0?"1":"0",workbookViewId:"0"}},children:getPane(t,s)}]}),i),addSheetPr=()=>e=>(e.children.push({name:"sheetPr",children:[{name:"outlinePr",properties:{rawMap:{summaryBelow:0}}}]}),e),addSheetFormatPr=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},worksheetFactory={getTemplate(e){const{worksheet:t,currentSheet:s,config:i}=e,{margins:r={},pageSetup:a,headerFooterConfig:o,suppressColumnOutline:n,rightToLeft:l,frozenRowCount:c,frozenColumnCount:h}=i,{table:d}=t,{rows:u,columns:p}=d,g=p&&p.length?getMergedCellsAndAddColumnGroups(u,p,!!n):[],{worksheetDataTables:m}=ExcelXlsxFactory,C=m.get(s),f=(0,import_core223._compose)(addSheetPr(),addSheetViews(l,h,c),addSheetFormatPr(u),addColumns(p),addSheetData(u,s+1),addMergeCells(g),addPageMargins(r),addPageSetup(a),addHeaderFooter(o),addDrawingRel(s),addVmlDrawingRel(s),addExcelTableRel(C)),{children:v}=f({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:v}}},worksheet_default=worksheetFactory,_ExcelXlsxFactory=class le{static createExcel(t,s,i){this.addSheetName(s),registerStyles(t,this.sheetNames.length);const r=Object.assign({},i);return i.exportAsExcelTable&&(i.columnModel.isPivotActive()&&(this.showExcelTableNonCompatibleFeaturesWarning("pivot mode"),r.exportAsExcelTable=!1),i.gos.get("masterDetail")&&(this.showExcelTableNonCompatibleFeaturesWarning("master/detail"),r.exportAsExcelTable=!1)),this.processTableConfig(s,r),this.createWorksheet(s,r)}static showExcelTableNonCompatibleFeaturesWarning(t){(0,import_core221._warnOnce)(`Excel table export does not work with ${t}. The exported Excel file will not contain any Excel tables.
|
|
373
|
-
Please turn off ${t} to enable Excel table exports.`)}static getTableNameFromIndex(t){return`table${t+1}`}static getSanitizedTableName(t){return t.replace(/^[^a-zA-Z_]+/,"_").replace(/\s/g,"_").replace(/[^a-zA-Z0-9_]/g,"_")}static addTableToSheet(t,s){if(this.worksheetDataTables.has(t)){(0,import_core221._warnOnce)("Unable to add data table to Excel sheet: A table already exists.");return}this.worksheetDataTables.set(t,s)}static processTableConfig(t,s){if(!s.exportAsExcelTable)return;const i=typeof s.exportAsExcelTable=="boolean"?{}:s.exportAsExcelTable,{name:r,showColumnStripes:a,showRowStripes:o,showFilterButton:n,highlightFirstColumn:l,highlightLastColumn:c}=i,h=this.getSanitizedTableName(r||le.defaultTableDisplayName),d=this.sheetNames.length-1,{table:u}=t,{rows:p,columns:g}=u,m=s.columnModel.getHeaderRowCount(),C=m-1,f=p.length,v=g.length,S=[],y=[];for(let w=0;w<v;w++){const x=g[w];S.push(x.displayName||""),y.push(n==="match"||n===void 0?x.filterAllowed??!1:n)}if(!S||!S.length||!f||!h){(0,import_core221._warnOnce)("Unable to add data table to Excel sheet: Missing required parameters.");return}this.addTableToSheet(d,{name:this.getTableNameFromIndex(d),displayName:h,columns:S,showFilterButtons:y,headerRowIndex:C,rowCount:f-m,showRowStripes:o??!0,showColumnStripes:a??!1,highlightFirstColumn:l??!1,highlightLastColumn:c??!1})}static addHeaderFooterImageToMap(t,s){const i=this.sheetNames.length-1,r=t;r.headerFooterPosition=s,this.buildImageMap({imageToAdd:r,idx:i});let a=this.worksheetHeaderFooterImages.get(i);a||(a=[],this.worksheetHeaderFooterImages.set(i,a)),a.find(o=>o.id===t.id)||a.push(t)}static addBodyImageToMap(t,s,i,r,a){const o=this.sheetNames.length,{row:n,column:l}=t.position||{},c=t;r&&(s!=null&&i!=null&&(!n||!l)&&(t.position||(t.position={}),t.position=Object.assign({},t.position,{row:s,column:r.indexOf(i)+1})),setExcelImageTotalWidth(c,r),setExcelImageTotalHeight(c,a)),this.buildImageMap({imageToAdd:c,idx:o});let h=this.worksheetImageIds.get(o);h||(h=new Map,this.worksheetImageIds.set(o,h));const d=this.worksheetImages.get(o);d?d.push(c):this.worksheetImages.set(o,[c]),h.get(t.id)||h.set(t.id,{index:h.size,type:t.imageType})}static buildImageMap(t){const{imageToAdd:s,idx:i}=t,r=this.images.get(s.id);if(r){const a=r.find(o=>o.sheetId===i);a?a.image.push(s):r.push({sheetId:i,image:[s]})}else this.images.set(s.id,[{sheetId:i,image:[s]}]),this.workbookImageIds.set(s.id,{type:s.imageType,index:this.workbookImageIds.size})}static addSheetName(t){const s=(0,import_core221._escapeString)(t.name)||"";let i="";for(;this.sheetNames.indexOf(`${s}${i}`)!==-1;)i===""?i="_1":i=`_${parseInt(i.slice(1),10)+1}`;t.name=`${s}${i}`,this.sheetNames.push(t.name)}static getStringPosition(t){return this.sharedStrings.has(t)?this.sharedStrings.get(t):(this.sharedStrings.set(t,this.sharedStrings.size),this.sharedStrings.size-1)}static resetFactory(){this.sharedStrings=new Map,this.images=new Map,this.worksheetImages=new Map,this.worksheetHeaderFooterImages=new Map,this.workbookImageIds=new Map,this.worksheetImageIds=new Map,this.worksheetDataTables=new Map,this.sheetNames=[],this.factoryMode=import_core221.ExcelFactoryMode.SINGLE_SHEET}static createWorkbook(t){return createXmlPart(workbook_default.getTemplate(this.sheetNames,t))}static createStylesheet(t){return createXmlPart(stylesheet_default.getTemplate(t))}static createSharedStrings(){return createXmlPart(sharedStrings_default.getTemplate(this.sharedStrings))}static createCore(t){return createXmlPart(core_default.getTemplate(t))}static createContentTypes(t){return createXmlPart(contentTypes_default.getTemplate(t))}static createRels(){const t=relationships_default.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 createXmlPart(t)}static createTheme(){return createXmlPart(office_default.getTemplate())}static createTable(t,s){return createXmlPart(table_default.getTemplate(t,s))}static createWorkbookRels(t){const s=new Array(t).fill(void 0).map((r,a)=>({Id:`rId${a+1}`,Type:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/worksheet",Target:`worksheets/sheet${a+1}.xml`})),i=relationships_default.getTemplate([...s,{Id:`rId${t+1}`,Type:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/theme",Target:"theme/theme1.xml"},{Id:`rId${t+2}`,Type:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/styles",Target:"styles.xml"},{Id:`rId${t+3}`,Type:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/sharedStrings",Target:"sharedStrings.xml"}]);return createXmlPart(i)}static createDrawing(t){return createXmlPart(drawing_default.getTemplate({sheetIndex:t}))}static createDrawingRel(t){const s=this.worksheetImageIds.get(t)||[],i=[];for(const[r,a]of s)i.push({Id:`rId${a.index+1}`,Type:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/image",Target:`../media/image${this.workbookImageIds.get(r).index+1}.${a.type}`});return createXmlPart(relationships_default.getTemplate(i))}static createVmlDrawing(t){return createXmlPart(vmlDrawing_default.getTemplate({sheetIndex:t}),!0)}static createVmlDrawingRel(t){const s=this.worksheetHeaderFooterImages.get(t)||[],i=[];for(let r=0;r<s.length;r++){const a=s[r],o=this.workbookImageIds.get(a.id);if(!o)continue;const{index:n,type:l}=o,c=l==="jpg"?"jpeg":l;i.push({Id:`rId${r+1}`,Type:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/image",Target:`../media/image${n+1}.${c}`})}return createXmlPart(relationships_default.getTemplate(i))}static createRelationships({drawingIndex:t,vmlDrawingIndex:s,tableIndex:i}={}){if(t===void 0&&s===void 0&&i===void 0)return"";const r=[];t!=null&&r.push({Id:`rId${r.length+1}`,Type:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/drawing",Target:`../drawings/drawing${t+1}.xml`}),s!=null&&r.push({Id:`rId${r.length+1}`,Type:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/vmlDrawing",Target:`../drawings/vmlDrawing${s+1}.vml`}),i!=null&&r.push({Id:`rId${r.length+1}`,Type:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/table",Target:`../tables/${this.getTableNameFromIndex(i)}.xml`});const a=relationships_default.getTemplate(r);return createXmlPart(a)}static createWorksheet(t,s){return createXmlPart(worksheet_default.getTemplate({worksheet:t,currentSheet:this.sheetNames.length-1,config:s}))}};_ExcelXlsxFactory.sharedStrings=new Map,_ExcelXlsxFactory.sheetNames=[],_ExcelXlsxFactory.images=new Map,_ExcelXlsxFactory.worksheetImages=new Map,_ExcelXlsxFactory.worksheetHeaderFooterImages=new Map,_ExcelXlsxFactory.workbookImageIds=new Map,_ExcelXlsxFactory.worksheetImageIds=new Map,_ExcelXlsxFactory.worksheetDataTables=new Map,_ExcelXlsxFactory.defaultTableDisplayName="AG-GRID-TABLE",_ExcelXlsxFactory.factoryMode=import_core221.ExcelFactoryMode.SINGLE_SHEET;var ExcelXlsxFactory=_ExcelXlsxFactory,ExcelSerializingSession=class extends import_csv_export4.BaseGridSerializingSession{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:getHeightFromProperty(s,t.height||this.config.rowHeight),cells:(t.cells||[]).map((a,o)=>{const n=this.addImage(s,this.columnsToExport[o],a.data?.value);let l=null;a.styleId&&(l=typeof a.styleId=="string"?[a.styleId]:a.styleId);const c=this.getStyleId(l);if(n)return this.createCell(c,this.getDataTypeForValue(n.value),n.value==null?"":n.value);const h=a.data?.value??"",d=this.getDataTypeForValue(h);return a.mergeAcross?this.createMergedCell(c,d,h,a.mergeAcross):this.createCell(c,d,h)}),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:getHeightFromProperty(this.rows.length+1,s)}),t&&this.frozenRowCount++,{onColumn:(i,r,a,o,n)=>{const l=this.config.styleLinker({rowType:import_csv_export4.RowType.HEADER_GROUPING,rowIndex:1,value:`grouping-${r}`,columnGroup:i});e.push({...this.createMergedCell(this.getStyleId(l),this.getDataTypeForValue("string"),r,o),collapsibleRanges:n})}}}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({...this.gos.getGridCommonParams(),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(this.gos.getGridCommonParams()):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,o=(0,import_core219._last)(this.rows);if(o.outlineLevel=e.level+a,i==="expanded")return;const n=i==="collapsed";if(e.isExpandable()){const l=!n&&e.expanded;o.collapsed=!l}o.hidden=!!e.parent&&e.parent.level!==-1&&(n||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:import_csv_export4.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,o,n)=>{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({...this.gos.getGridCommonParams(),column:a})?this.frozenColumnCount++:this.skipFrozenColumns=!0}const{value:l,valueFormatted:c}=this.extractRowCellValue(a,o,e,"excel",n),h=this.config.styleLinker({rowType:import_csv_export4.RowType.BODY,rowIndex:e,value:l,column:a,node:n}),d=this.getStyleId(h),u=a.getColSpan(n),p=this.addImage(e,a,l);p?t.push(this.createCell(d,this.getDataTypeForValue(p.value),p.value==null?"":p.value)):u>1?(s=u-1,t.push(this.createMergedCell(d,this.getDataTypeForValue(l),l,u-1))):t.push(this.createCell(d,this.getDataTypeForValue(l),l,c))}}onNewRow(e,t){const s=[];return this.rows.push({cells:s,height:getHeightFromProperty(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),ExcelXlsxFactory.createExcel(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:(0,import_core219._warnOnce)(`Unrecognized data type for excel export [${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 ExcelXlsxFactory.addBodyImageToMap(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&&(s=i);const a=this.getTypeFromStyle(r,s)||t,{value:o,escaped:n}=this.getCellValue(a,s),l=[];return r&&l.push(e),n&&l.push("_quotePrefix"),e=this.getStyleId(l)||void 0,{styleId:e,data:{type:a,value:o}}}createMergedCell(e,t,s,i){const r=s??"";return{styleId:this.getStyleById(e)?e:void 0,data:{type:t,value:t==="s"?ExcelXlsxFactory.getStringPosition(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=ExcelXlsxFactory.getStringPosition(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&&(0,import_core219._mergeDeep)(s,this.deepCloneObject(a));s.id=t,s.name=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}},createExcelXMLCoreFolderStructure=()=>{import_csv_export3.ZipContainer.addFolders(["_rels/","docProps/","xl/","xl/theme/","xl/_rels/","xl/worksheets/"]);const{images:e}=ExcelXlsxFactory;if(!e.size)return;import_csv_export3.ZipContainer.addFolders(["xl/worksheets/_rels","xl/drawings/","xl/drawings/_rels","xl/media/"]);let t=0;e.forEach(s=>{const i=s[0].image[0],{base64:r,imageType:a}=i,o=a==="jpg"?"jpeg":a;import_csv_export3.ZipContainer.addFile(`xl/media/image${++t}.${o}`,r,!0)})},createExcelXmlWorksheets=e=>{let t=0,s=0,i=0;const{images:r,worksheetDataTables:a,worksheetImages:o,worksheetHeaderFooterImages:n}=ExcelXlsxFactory;for(let l=0;l<e.length;l++){const c=e[l];import_csv_export3.ZipContainer.addFile(`xl/worksheets/sheet${l+1}.xml`,c,!1);const h=r.size>0&&o.has(l),d=a.size>0&&a.has(l),u=r.size&&n.has(l);if(!h&&!d&&!u)continue;let p,g,m;h&&(createExcelXmlDrawings(l,t),g=t,t++),u&&(createExcelVmlDrawings(l,s),m=s,s++),d&&(p=i++);const C=`xl/worksheets/_rels/sheet${l+1}.xml.rels`;import_csv_export3.ZipContainer.addFile(C,ExcelXlsxFactory.createRelationships({tableIndex:p,drawingIndex:g,vmlDrawingIndex:m}))}},createExcelXmlDrawings=(e,t)=>{const s="xl/drawings",i=`${s}/drawing${t+1}.xml`,r=`${s}/_rels/drawing${t+1}.xml.rels`;import_csv_export3.ZipContainer.addFile(r,ExcelXlsxFactory.createDrawingRel(e)),import_csv_export3.ZipContainer.addFile(i,ExcelXlsxFactory.createDrawing(e))},createExcelVmlDrawings=(e,t)=>{const s="xl/drawings",i=`${s}/vmlDrawing${t+1}.vml`,r=`${s}/_rels/vmlDrawing${t+1}.vml.rels`;import_csv_export3.ZipContainer.addFile(i,ExcelXlsxFactory.createVmlDrawing(e)),import_csv_export3.ZipContainer.addFile(r,ExcelXlsxFactory.createVmlDrawingRel(e))},createExcelXmlTables=()=>{const{worksheetDataTables:e}=ExcelXlsxFactory,t=e,s=Array.from(t.keys());for(let i=0;i<s.length;i++){const r=s[i],a=t.get(r);a&&import_csv_export3.ZipContainer.addFile(`xl/tables/${a.name}.xml`,ExcelXlsxFactory.createTable(a,i))}},createExcelXmlCoreSheets=(e,t,s,i)=>{import_csv_export3.ZipContainer.addFile("xl/workbook.xml",ExcelXlsxFactory.createWorkbook(i)),import_csv_export3.ZipContainer.addFile("xl/styles.xml",ExcelXlsxFactory.createStylesheet(e)),import_csv_export3.ZipContainer.addFile("xl/sharedStrings.xml",ExcelXlsxFactory.createSharedStrings()),import_csv_export3.ZipContainer.addFile("xl/theme/theme1.xml",ExcelXlsxFactory.createTheme()),import_csv_export3.ZipContainer.addFile("xl/_rels/workbook.xml.rels",ExcelXlsxFactory.createWorkbookRels(s)),import_csv_export3.ZipContainer.addFile("docProps/core.xml",ExcelXlsxFactory.createCore(t)),import_csv_export3.ZipContainer.addFile("[Content_Types].xml",ExcelXlsxFactory.createContentTypes(s)),import_csv_export3.ZipContainer.addFile("_rels/.rels",ExcelXlsxFactory.createRels())},createExcelFileForExcel=(e,t={})=>{if(!e||e.length===0)return(0,import_core218._warnOnce)("Invalid params supplied to createExcelFileForExcel() - `ExcelExportParams.data` is empty."),ExcelXlsxFactory.resetFactory(),!1;const{fontSize:s=11,author:i="AG Grid",activeTab:r=0}=t,a=e.length,o=Math.max(Math.min(r,a-1),0);return createExcelXMLCoreFolderStructure(),createExcelXmlTables(),createExcelXmlWorksheets(e),createExcelXmlCoreSheets(s,i,a,o),ExcelXlsxFactory.resetFactory(),!0},getMultipleSheetsAsExcelCompressed=e=>{const{data:t,fontSize:s,author:i,activeSheetIndex:r}=e,a=e.mimeType||"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet";return createExcelFileForExcel(t,{author:i,fontSize:s,activeTab:r})?import_csv_export3.ZipContainer.getZipFile(a):Promise.resolve(void 0)},getMultipleSheetsAsExcel=e=>{const{data:t,fontSize:s,author:i,activeSheetIndex:r}=e,a=e.mimeType||"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet";if(createExcelFileForExcel(t,{author:i,fontSize:s,activeTab:r}))return import_csv_export3.ZipContainer.getUncompressedZipFile(a)},exportMultipleSheetsAsExcel=e=>{const{fileName:t="export.xlsx"}=e;getMultipleSheetsAsExcelCompressed(e).then(s=>{if(s){const i=typeof t=="function"?t():t;import_csv_export3.Downloader.download(i,s)}})},ExcelCreator=class extends import_csv_export3.BaseCreator{constructor(){super(...arguments),this.beanName="excelCreator"}wireBeans(e){this.columnModel=e.columnModel,this.columnNameService=e.columnNameService,this.funcColsService=e.funcColsService,this.valueService=e.valueService,this.stylingService=e.stylingService,this.gridSerializer=e.gridSerializer,this.gos=e.gos}postConstruct(){this.setBeans({gridSerializer:this.gridSerializer,gos:this.gos})}getMergedParams(e){const t=this.gos.get("defaultExcelExportParams");return Object.assign({},t,e)}export(e){if(this.isExportSuppressed()){(0,import_core218._warnOnce)("Export cancelled. Export is not allowed as per your configuration.");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,o=typeof a=="function"?a(this.gos.getGridCommonParams()):a;import_csv_export3.Downloader.download(this.getFileName(o),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){ExcelXlsxFactory.factoryMode=e}getFactoryMode(){return ExcelXlsxFactory.factoryMode}getSheetDataForExcel(e){const t=this.getMergedParams(e);return this.getData(t)}getMultipleSheetsAsExcel(e){return getMultipleSheetsAsExcel(e)}exportMultipleSheetsAsExcel(e){exportMultipleSheetsAsExcel(e)}getDefaultFileExtension(){return"xlsx"}createSerializingSession(e){const{columnModel:t,columnNameService:s,funcColsService:i,valueService:r,gos:a}=this,o={...e,columnModel:t,columnNameService:s,funcColsService:i,valueService:r,gos:a,suppressRowOutline:e.suppressRowOutline||e.skipRowGroups,headerRowHeight:e.headerRowHeight||e.rowHeight,baseExcelStyles:this.gos.get("excelStyles")||[],rightToLeft:e.rightToLeft??this.gos.get("enableRtl"),styleLinker:this.styleLinker.bind(this)};return new ExcelSerializingSession(o)}styleLinker(e){const{rowType:t,rowIndex:s,value:i,column:r,columnGroup:a,node:o}=e,n=t===import_csv_export3.RowType.HEADER,l=t===import_csv_export3.RowType.HEADER_GROUPING,c=n?r:a;let h=[];if(n||l)return h.push("header"),l&&h.push("headerGroup"),c&&(h=h.concat((0,import_core218._getHeaderClassesFromColDef)(c.getDefinition(),this.gos,r||null,a||null))),h;const d=this.gos.get("excelStyles"),u=["cell"];if(!d||!d.length)return u;const p=d.map(m=>m.id),g=r.getDefinition();return this.stylingService.processAllCellClasses(g,this.gos.addGridCommonParams({value:i,data:o.data,node:o,colDef:g,column:r,rowIndex:s}),m=>{p.indexOf(m)>-1&&u.push(m)}),u.sort((m,C)=>p.indexOf(m)<p.indexOf(C)?-1:1)}isExportSuppressed(){return this.gos.get("suppressExcelExport")}packageCompressedFile(e){return getMultipleSheetsAsExcelCompressed(e)}packageFile(e){return getMultipleSheetsAsExcel(e)}};function assertNotExcelMultiSheet(e){return e.excelCreator?.getFactoryMode()===import_core225.ExcelFactoryMode.MULTI_SHEET?((0,import_core225._warnOnce)("The Excel Exporter is currently on Multi Sheet mode. End that operation by calling 'api.getMultipleSheetAsExcel()' or 'api.exportMultipleSheetsAsExcel()'"),!1):!0}function getDataAsExcel(e,t){if(assertNotExcelMultiSheet(e))return e.excelCreator?.getDataAsExcel(t)}function exportDataAsExcel(e,t){assertNotExcelMultiSheet(e)&&e.excelCreator?.exportDataAsExcel(t)}function getSheetDataForExcel(e,t){return e.excelCreator?.setFactoryMode(import_core225.ExcelFactoryMode.MULTI_SHEET),e.excelCreator?.getSheetDataForExcel(t)}function getMultipleSheetsAsExcel2(e,t){return e.excelCreator?.getMultipleSheetsAsExcel(t)}function exportMultipleSheetsAsExcel2(e,t){e.excelCreator?.exportMultipleSheetsAsExcel(t)}var VERSION9="32.2.2",ExcelExportCoreModule=(0,import_core216._defineModule)({version:VERSION9,moduleName:`${import_core216.ModuleNames.ExcelExportModule}-core`,beans:[ExcelCreator],dependantModules:[import_csv_export2._CsvExportCoreModule,EnterpriseCoreModule]}),ExcelExportApiModule=(0,import_core216._defineModule)({version:VERSION9,moduleName:`${import_core216.ModuleNames.ExcelExportModule}-api`,apiFunctions:{getDataAsExcel,exportDataAsExcel,getSheetDataForExcel,getMultipleSheetsAsExcel:getMultipleSheetsAsExcel2,exportMultipleSheetsAsExcel:exportMultipleSheetsAsExcel2},dependantModules:[ExcelExportCoreModule]}),ExcelExportModule=(0,import_core216._defineModule)({version:VERSION9,moduleName:import_core216.ModuleNames.ExcelExportModule,dependantModules:[ExcelExportCoreModule,ExcelExportApiModule]}),import_core226=require("ag-grid-community"),import_core228=require("ag-grid-community"),import_core229=require("ag-grid-community"),import_core230=require("ag-grid-community"),import_core231=require("ag-grid-community"),import_core232=require("ag-grid-community"),AgFiltersToolPanelHeader=class extends import_core229.Component{constructor(){super(...arguments),this.eExpand=import_core229.RefPlaceholder,this.eFilterTextField=import_core229.RefPlaceholder}wireBeans(e){this.columnModel=e.columnModel}postConstruct(){this.setTemplate(`<div class="ag-filter-toolpanel-search" role="presentation">
|
|
372
|
+
</div>`}postConstruct(){this.setTemplate(this.createTemplate(),[import_core214.AgToggleButtonSelector]),this.cbPivotMode.setValue(this.columnModel.isPivotMode());const e=this.localeService.getLocaleTextFunc();this.cbPivotMode.setLabel(e("pivotMode","Pivot Mode")),this.addManagedListeners(this.cbPivotMode,{fieldValueChanged:this.onBtPivotMode.bind(this)});const t=this.onPivotModeChanged.bind(this);this.addManagedEventListeners({newColumnsLoaded:t,columnPivotModeChanged:t})}onBtPivotMode(){const e=!!this.cbPivotMode.getValue();e!==this.columnModel.isPivotMode()&&(this.gos.updateGridOptions({options:{pivotMode:e},source:"toolPanelUi"}),this.ctrlsService.getHeaderRowContainerCtrls().forEach(t=>t.refresh()))}onPivotModeChanged(){const e=this.columnModel.isPivotMode();this.cbPivotMode.setValue(e)}},ColumnToolPanel=class extends import_core202.Component{constructor(){super('<div class="ag-column-panel"></div>'),this.initialised=!1,this.childDestroyFuncs=[]}setVisible(e){super.setDisplayed(e),e&&!this.initialised&&this.init(this.params)}init(e){const t=this.gos.addGridCommonParams({suppressColumnMove:!1,suppressColumnSelectAll:!1,suppressColumnFilter:!1,suppressColumnExpandAll:!1,contractColumnSelection:!1,suppressPivotMode:!1,suppressRowGroups:!1,suppressValues:!1,suppressPivots:!1,suppressSyncLayoutWithGrid:!1});if(this.params={...t,...e},this.isRowGroupingModuleLoaded()&&!this.params.suppressPivotMode&&(this.pivotModePanel=this.createBean(new PivotModePanel),this.childDestroyFuncs.push(()=>this.destroyBean(this.pivotModePanel)),this.appendChild(this.pivotModePanel)),this.primaryColsPanel=this.createBean(new AgPrimaryCols),this.childDestroyFuncs.push(()=>this.destroyBean(this.primaryColsPanel)),this.primaryColsPanel.init(!0,this.params,"toolPanelUi"),this.primaryColsPanel.addCssClass("ag-column-panel-column-select"),this.appendChild(this.primaryColsPanel),this.isRowGroupingModuleLoaded()){this.params.suppressRowGroups||(this.rowGroupDropZonePanel=this.createBean(new RowGroupDropZonePanel(!1)),this.childDestroyFuncs.push(()=>this.destroyBean(this.rowGroupDropZonePanel)),this.appendChild(this.rowGroupDropZonePanel)),this.params.suppressValues||(this.valuesDropZonePanel=this.createBean(new ValuesDropZonePanel(!1)),this.childDestroyFuncs.push(()=>this.destroyBean(this.valuesDropZonePanel)),this.appendChild(this.valuesDropZonePanel)),this.params.suppressPivots||(this.pivotDropZonePanel=this.createBean(new PivotDropZonePanel(!1)),this.childDestroyFuncs.push(()=>this.destroyBean(this.pivotDropZonePanel)),this.appendChild(this.pivotDropZonePanel)),this.setLastVisible();const[s]=this.addManagedEventListeners({columnPivotModeChanged:()=>{this.resetChildrenHeight(),this.setLastVisible()}});this.childDestroyFuncs.push(()=>s())}this.initialised=!0}setPivotModeSectionVisible(e){this.isRowGroupingModuleLoaded()&&(this.pivotModePanel?this.pivotModePanel.setDisplayed(e):e&&(this.pivotModePanel=this.createBean(new PivotModePanel),this.getGui().insertBefore(this.pivotModePanel.getGui(),this.getGui().firstChild),this.childDestroyFuncs.push(()=>this.destroyBean(this.pivotModePanel))),this.setLastVisible())}setRowGroupsSectionVisible(e){this.isRowGroupingModuleLoaded()&&(this.rowGroupDropZonePanel?this.rowGroupDropZonePanel.setDisplayed(e):e&&(this.rowGroupDropZonePanel=this.createManagedBean(new RowGroupDropZonePanel(!1)),this.appendChild(this.rowGroupDropZonePanel)),this.setLastVisible())}setValuesSectionVisible(e){this.isRowGroupingModuleLoaded()&&(this.valuesDropZonePanel?this.valuesDropZonePanel.setDisplayed(e):e&&(this.valuesDropZonePanel=this.createManagedBean(new ValuesDropZonePanel(!1)),this.appendChild(this.valuesDropZonePanel)),this.setLastVisible())}setPivotSectionVisible(e){this.isRowGroupingModuleLoaded()&&(this.pivotDropZonePanel?this.pivotDropZonePanel.setDisplayed(e):e&&(this.pivotDropZonePanel=this.createManagedBean(new PivotDropZonePanel(!1)),this.appendChild(this.pivotDropZonePanel),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=(0,import_core202._last)(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 i=t[s];i.style.removeProperty("height"),i.style.removeProperty("flex")}}isRowGroupingModuleLoaded(){return this.gos.assertModuleRegistered(import_core202.ModuleNames.RowGroupingModule,"Row Grouping")}expandColumnGroups(e){this.primaryColsPanel.expandGroups(e)}collapseColumnGroups(e){this.primaryColsPanel.collapseGroups(e)}setColumnLayout(e){this.primaryColsPanel.setColumnLayout(e)}syncLayoutWithGrid(){this.primaryColsPanel.syncLayoutWithGrid()}destroyChildren(){this.childDestroyFuncs.forEach(e=>e()),this.childDestroyFuncs.length=0,(0,import_core202._clearElement)(this.getGui())}refresh(e){return this.destroyChildren(),this.init(e),!0}getState(){return{expandedGroupIds:this.primaryColsPanel.getExpandedGroups()}}destroy(){this.destroyChildren(),super.destroy()}},ModelItemUtils=class extends import_core215.BeanStub{constructor(){super(...arguments),this.beanName="modelItemUtils"}wireBeans(e){this.aggFuncService=e.aggFuncService,this.columnModel=e.columnModel,this.columnApplyStateService=e.columnApplyStateService}selectAllChildren(e,t,s){const i=this.extractAllLeafColumns(e);this.setAllColumns(i,t,s)}setColumn(e,t,s){this.setAllColumns([e],t,s)}setAllColumns(e,t,s){this.columnModel.isPivotMode()?this.setAllPivot(e,t,s):this.setAllVisible(e,t,s)}extractAllLeafColumns(e){const t=[],s=i=>{i.forEach(r=>{r.isPassesFilter()&&(r.isGroup()?s(r.getChildren()):t.push(r.getColumn()))})};return s(e),t}setAllVisible(e,t,s){const i=[];e.forEach(r=>{r.getColDef().lockVisible||r.isVisible()!=t&&i.push({colId:r.getId(),hide:!t})}),i.length>0&&this.columnApplyStateService.applyColumnState({state:i},s)}setAllPivot(e,t,s){this.setAllPivotActive(e,t,s)}setAllPivotActive(e,t,s){const i=[],o=t?n=>{if(!n.isAnyFunctionActive())if(n.isAllowValue()){const l=typeof n.getAggFunc()=="string"?n.getAggFunc():this.aggFuncService?.getDefaultAggFunc(n);i.push({colId:n.getId(),aggFunc:l})}else n.isAllowRowGroup()?i.push({colId:n.getId(),rowGroup:!0}):n.isAllowPivot()&&i.push({colId:n.getId(),pivot:!0})}:n=>{(n.isPivotActive()||n.isRowGroupActive()||n.isValueActive())&&i.push({colId:n.getId(),pivot:!1,rowGroup:!1,aggFunc:null})};e.forEach(o),i.length>0&&this.columnApplyStateService.applyColumnState({state:i},s)}updateColumns(e){const{columns:t,visibleState:s,pivotState:i,eventType:r}=e,a=t.map(o=>{const n=o.getColId();if(this.columnModel.isPivotMode()){const l=i?.[n];return{colId:n,pivot:l?.pivot,rowGroup:l?.rowGroup,aggFunc:l?.aggFunc}}else return{colId:n,hide:!s?.[n]}});this.columnApplyStateService.applyColumnState({state:a},r)}createPivotState(e){return{pivot:e.isPivotActive(),rowGroup:e.isRowGroupActive(),aggFunc:e.isValueActive()?e.getAggFunc():void 0}}},VERSION8="32.3.0",ColumnsToolPanelModule=(0,import_core200._defineModule)({version:VERSION8,moduleName:import_core200.ModuleNames.ColumnsToolPanelModule,beans:[ModelItemUtils],userComponents:[{name:"agColumnsToolPanel",classImp:ColumnToolPanel},{name:"agMenuItem",classImp:AgMenuItemRenderer}],dependantModules:[EnterpriseCoreModule,RowGroupingModule,SideBarModule]}),import_core216=require("ag-grid-community"),import_csv_export2=require("ag-grid-community"),import_core218=require("ag-grid-community"),import_csv_export3=require("ag-grid-community"),import_core219=require("ag-grid-community"),import_csv_export4=require("ag-grid-community"),import_core220=require("ag-grid-community"),import_csv_export5=require("ag-grid-community"),import_core221=require("ag-grid-community"),import_core222=require("ag-grid-community"),import_core223=require("ag-grid-community"),import_core224=require("ag-grid-community"),import_core225=require("ag-grid-community"),INCH_TO_EMU=9525,numberFormatMap={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},pointsToPixel=e=>Math.round(e*96/72),pixelsToEMU=e=>Math.ceil(e*INCH_TO_EMU),getFontFamilyId=e=>{if(e===void 0)return;const s=["Automatic","Roman","Swiss","Modern","Script","Decorative"].indexOf(e||"Automatic");return Math.max(s,0)},getHeightFromProperty=(e,t)=>{if(!t)return;let s;return typeof t=="number"?s=t:s=t({rowIndex:e}),s},setExcelImageTotalWidth=(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 o=0;o<r.length;o++){const n=r[o].getActualWidth();if(e.width<a+n){e.position.colSpan=o+1,e.totalWidth=e.width,e.width=e.totalWidth-a;break}a+=n}}else e.totalWidth=e.width},setExcelImageTotalHeight=(e,t)=>{const{rowSpan:s,row:i}=e.position;if(e.height)if(s){let r=0,a=0;for(let o=i;o<i+s;o++){const n=pointsToPixel(getHeightFromProperty(o,t)||20);if(e.height<r+n){e.position.rowSpan=a+1,e.totalHeight=e.height,e.height=e.totalHeight-r;break}r+=n,a++}}else e.totalHeight=e.height},createXmlPart=(e,t)=>{const s=import_csv_export5.XmlFactory.createHeader({encoding:"UTF-8",standalone:"yes"}),i=import_csv_export5.XmlFactory.createXml(e);return t?i:`${s}${i}`},getExcelColumnName=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):getExcelColumnName(r)+i(65+a-1):getExcelColumnName(r-1)+"Z"},replaceInvisibleCharacters=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 o=`_x${i.toString(16).toUpperCase().padStart(4,"0")}_`;t+=o}else t+=e[s]}return t},buildSharedString=e=>{const t=[];for(const s of e.keys()){const i=s.toString(),r={name:"t",textNode:(0,import_core220._escapeString)(replaceInvisibleCharacters(i),!1)};i.trim().length!==i.length&&(r.properties={rawMap:{"xml:space":"preserve"}}),t.push({name:"si",children:[r]})}return t},contentTypeFactory={getTemplate(e){const{name:t,ContentType:s,Extension:i,PartName:r}=e;return{name:t,properties:{rawMap:{Extension:i,PartName:r,ContentType:s}}}}},contentType_default=contentTypeFactory,_normaliseImageExtension=e=>e==="jpg"?"jpeg":e,contentTypesFactory={getTemplate(e){const t=new Array(e).fill(void 0).map((h,d)=>({name:"Override",ContentType:"application/vnd.openxmlformats-officedocument.spreadsheetml.worksheet+xml",PartName:`/xl/worksheets/sheet${d+1}.xml`})),s=ExcelXlsxFactory.worksheetImages.size,i=ExcelXlsxFactory.worksheetHeaderFooterImages.size,r=ExcelXlsxFactory.worksheetDataTables.size,a={};ExcelXlsxFactory.workbookImageIds.forEach(h=>{a[_normaliseImageExtension(h.type)]=!0});const o=new Array(s).fill(void 0).map((h,d)=>({name:"Override",ContentType:"application/vnd.openxmlformats-officedocument.drawing+xml",PartName:`/xl/drawings/drawing${d+1}.xml`})),n=new Array(r).fill(void 0).map((h,d)=>({name:"Override",ContentType:"application/vnd.openxmlformats-officedocument.spreadsheetml.table+xml",PartName:`/xl/tables/${ExcelXlsxFactory.getTableNameFromIndex(d)}.xml`})),l=Object.keys(a).map(h=>({name:"Default",ContentType:`image/${h}`,Extension:h}));i&&l.push({name:"Default",Extension:"vml",ContentType:"application/vnd.openxmlformats-officedocument.vmlDrawing"});const c=[...l,{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"},...o,...n,{name:"Override",ContentType:"application/vnd.openxmlformats-package.core-properties+xml",PartName:"/docProps/core.xml"}].map(h=>contentType_default.getTemplate(h));return{name:"Types",properties:{rawMap:{xmlns:"http://schemas.openxmlformats.org/package/2006/content-types"}},children:c}}},contentTypes_default=contentTypesFactory,coreFactory={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}]}}},core_default=coreFactory,getAnchor=(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()}]}),getExt=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}},getNvPicPr=(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:[getExt(e)]},{name:"xdr:cNvPicPr",properties:{rawMap:{preferRelativeResize:"0"}},children:[{name:"a:picLocks"}]}]}),getColorDetails=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},getDuoTone=(e,t)=>({name:"a:duotone",children:[{name:"a:prstClr",properties:{rawMap:{val:e.color}},children:getColorDetails(e)},{name:"a:srgbClr",properties:{rawMap:{val:t.color}},children:getColorDetails(t)}]}),getBlipFill=(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(getDuoTone({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"}]}]}},getSpPr=(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"}]}]}},getImageBoxSize=e=>{e.fitCell=!!e.fitCell||!e.width||!e.height;const{position:t={},fitCell:s,width:i=0,height:r=0,totalHeight:a,totalWidth:o}=e,{offsetX:n=0,offsetY:l=0,row:c=1,rowSpan:h=1,column:d=1,colSpan:u=1}=t;return{from:{row:c-1,col:d-1,offsetX:pixelsToEMU(n),offsetY:pixelsToEMU(l)},to:{row:c-1+(s?1:h-1),col:d-1+(s?1:u-1),offsetX:pixelsToEMU(i+n),offsetY:pixelsToEMU(r+l)},height:pixelsToEMU(a||r),width:pixelsToEMU(o||i)}},getPicture=(e,t,s,i)=>({name:"xdr:pic",children:[getNvPicPr(e,t+1),getBlipFill(e,s+1),getSpPr(e,i)]}),drawingFactory={getTemplate(e){const{sheetIndex:t}=e,s=ExcelXlsxFactory.worksheetImages.get(t),i=ExcelXlsxFactory.worksheetImageIds.get(t),r=s.map((a,o)=>{const n=getImageBoxSize(a);return{name:"xdr:twoCellAnchor",properties:{rawMap:{editAs:"absolute"}},children:[getAnchor("from",n.from),getAnchor("to",n.to),getPicture(a,o,i.get(a.id).index,n),{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}}},drawing_default=drawingFactory,relationshipFactory={getTemplate(e){const{Id:t,Type:s,Target:i}=e;return{name:"Relationship",properties:{rawMap:{Id:t,Type:s,Target:i}}}}},relationship_default=relationshipFactory,relationshipsFactory={getTemplate(e){const t=e.map(s=>relationship_default.getTemplate(s));return{name:"Relationships",properties:{rawMap:{xmlns:"http://schemas.openxmlformats.org/package/2006/relationships"}},children:t}}},relationships_default=relationshipsFactory,sharedStrings={getTemplate(e){return{name:"sst",properties:{rawMap:{xmlns:"http://schemas.openxmlformats.org/spreadsheetml/2006/main",count:e.size,uniqueCount:e.size}},children:buildSharedString(e)}}},sharedStrings_default=sharedStrings,getWeightName=e=>{switch(e){case 1:return"thin";case 2:return"medium";case 3:return"thick";default:return"hair"}},mappedBorderNames={None:"None",Dot:"Dotted",Dash:"Dashed",Double:"Double",DashDot:"DashDot",DashDotDot:"DashDotDot",SlantDashDot:"SlantDashDot",Continuous:"Continuous"},mediumBorders=["Dashed","DashDot","DashDotDot"],colorMap={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"},horizontalAlignmentMap={Automatic:"general",Left:"left",Center:"center",Right:"right",Fill:"fill",Justify:"justify",CenterAcrossSelection:"centerContinuous",Distributed:"distributed",JustifyDistributed:"justify"},verticalAlignmentMap={Automatic:void 0,Top:"top",Bottom:"bottom",Center:"center",Justify:"justify",Distributed:"distributed",JustifyDistributed:"justify"},convertLegacyPattern=e=>e?colorMap[e]||e:"none",convertLegacyColor=e=>e==null?e:(e.charAt(0)==="#"&&(e=e.substring(1)),e.length===6?"FF"+e:e),convertLegacyBorder=(e,t)=>{if(!e)return"thin";const s=getWeightName(t);if(e==="Continuous")return s;const i=mappedBorderNames[e];return s==="medium"&&mediumBorders.some(r=>r===i)?`medium${i}`:`${i.charAt(0).toLowerCase()}${i.substring(1)}`},convertLegacyHorizontalAlignment=e=>horizontalAlignmentMap[e]||"general",convertLegacyVerticalAlignment=e=>verticalAlignmentMap[e]||void 0,getBorderColor=e=>({name:"color",properties:{rawMap:{rgb:convertLegacyColor(e||"#000000")}}}),borderFactory={getTemplate(e){const{left:t,right:s,top:i,bottom:r,diagonal:a}=e,o=t?[getBorderColor(t.color)]:void 0,n=s?[getBorderColor(s.color)]:void 0,l=i?[getBorderColor(i.color)]:void 0,c=r?[getBorderColor(r.color)]:void 0,h=a?[getBorderColor(a.color)]:void 0;return{name:"border",children:[{name:"left",properties:{rawMap:{style:t&&t.style}},children:o},{name:"right",properties:{rawMap:{style:s&&s.style}},children:n},{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:h}]}}},border_default=borderFactory,bordersFactory={getTemplate(e){return{name:"borders",properties:{rawMap:{count:e.length}},children:e.map(t=>border_default.getTemplate(t))}}},borders_default=bordersFactory,getReadingOrderId=e=>{const s=["Context","LeftToRight","RightToLeft"].indexOf(e);return Math.max(s,0)},alignmentFactory={getTemplate(e){const{horizontal:t,indent:s,readingOrder:i,rotate:r,shrinkToFit:a,vertical:o,wrapText:n}=e;return{name:"alignment",properties:{rawMap:{horizontal:t&&convertLegacyHorizontalAlignment(t),indent:s,readingOrder:i&&getReadingOrderId(i),textRotation:r,shrinkToFit:a,vertical:o&&convertLegacyVerticalAlignment(o),wrapText:n}}}}},alignment_default=alignmentFactory,protectionFactory={getTemplate(e){const t=e.protected===!1?0:1;return{name:"protection",properties:{rawMap:{hidden:e.hideFormula===!0?1:0,locked:t}}}}},protection_default=protectionFactory,xfFactory={getTemplate(e){const{alignment:t,borderId:s,fillId:i,fontId:r,numFmtId:a,protection:o,quotePrefix:n,xfId:l}=e,c=[];return t&&c.push(alignment_default.getTemplate(t)),o&&c.push(protection_default.getTemplate(o)),{name:"xf",properties:{rawMap:{applyAlignment:t?1:void 0,applyProtection:o?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:n?1:void 0,xfId:l}},children:c.length?c:void 0}}},xf_default=xfFactory,cellStylesXfsFactory={getTemplate(e){return{name:"cellStyleXfs",properties:{rawMap:{count:e.length}},children:e.map(t=>xf_default.getTemplate(t))}}},cellStyleXfs_default=cellStylesXfsFactory,borderFactory2={getTemplate(e){const{builtinId:t,name:s,xfId:i}=e;return{name:"cellStyle",properties:{rawMap:{builtinId:t,name:s,xfId:i}}}}},cellStyle_default=borderFactory2,cellStylesFactory={getTemplate(e){return{name:"cellStyles",properties:{rawMap:{count:e.length}},children:e.map(t=>cellStyle_default.getTemplate(t))}}},cellStyles_default=cellStylesFactory,cellXfsFactory={getTemplate(e){return{name:"cellXfs",properties:{rawMap:{count:e.length}},children:e.map(t=>xf_default.getTemplate(t))}}},cellXfs_default=cellXfsFactory,fillFactory={getTemplate(e){const{patternType:t,fgTheme:s,fgTint:i,fgRgb:r,bgRgb:a,bgIndexed:o}=e,n={name:"patternFill",properties:{rawMap:{patternType:t}}};return(s||i||r)&&(n.children=[{name:"fgColor",properties:{rawMap:{theme:s,tint:i,rgb:r}}}]),(o||a)&&(n.children||(n.children=[]),n.children.push({name:"bgColor",properties:{rawMap:{indexed:o,rgb:a}}})),{name:"fill",children:[n]}}},fill_default=fillFactory,fillsFactory={getTemplate(e){return{name:"fills",properties:{rawMap:{count:e.length}},children:e.map(t=>fill_default.getTemplate(t))}}},fills_default=fillsFactory,fontFactory={getTemplate(e){const{size:t,colorTheme:s,color:i="FF000000",fontName:r="Calibri",family:a,scheme:o,italic:n,bold:l,strikeThrough:c,outline:h,shadow:d,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}}}),o&&g.push({name:"scheme",properties:{rawMap:{val:o}}}),n&&g.push({name:"i"}),l&&g.push({name:"b"}),c&&g.push({name:"strike"}),h&&g.push({name:"outline"}),d&&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}}},font_default=fontFactory,fontsFactory={getTemplate(e){return{name:"fonts",properties:{rawMap:{count:e.length}},children:e.map(t=>font_default.getTemplate(t))}}},fonts_default=fontsFactory;function prepareString(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]=(0,import_core222._escapeString)(i))}return t.join("")}var numberFormatFactory={getTemplate(e){let{formatCode:t,numFmtId:s}=e;return t.length&&(t=prepareString(t)),{name:"numFmt",properties:{rawMap:{formatCode:t,numFmtId:s}}}}},numberFormat_default=numberFormatFactory,numberFormatsFactory={getTemplate(e){return{name:"numFmts",properties:{rawMap:{count:e.length}},children:e.map(t=>numberFormat_default.getTemplate(t))}}},numberFormats_default=numberFormatsFactory,stylesMap,registeredNumberFmts,registeredFonts,registeredFills,registeredBorders,registeredCellStyleXfs,registeredCellXfs,registeredCellStyles,currentSheet,getStyleName=(e,t)=>(e.indexOf("mixedStyle")!==-1&&t>1&&(e+=`_${t}`),e),resetStylesheetValues=()=>{stylesMap={base:0},registeredNumberFmts=[],registeredFonts=[{fontName:"Calibri",colorTheme:"1",family:"2",scheme:"minor"}],registeredFills=[{patternType:"none"},{patternType:"gray125"}],registeredBorders=[{left:void 0,right:void 0,top:void 0,bottom:void 0,diagonal:void 0}],registeredCellStyleXfs=[{borderId:0,fillId:0,fontId:0,numFmtId:0}],registeredCellXfs=[{borderId:0,fillId:0,fontId:0,numFmtId:0,xfId:0}],registeredCellStyles=[{builtinId:0,name:"Normal",xfId:0}]},registerFill=e=>{const t=convertLegacyPattern(e.pattern),s=convertLegacyColor(e.color),i=convertLegacyColor(e.patternColor);let r=registeredFills.findIndex(a=>{const{patternType:o,fgRgb:n,bgRgb:l}=a;return!(o!=t||n!=s||l!=i)});return r===-1&&(r=registeredFills.length,registeredFills.push({patternType:t,fgRgb:s,bgRgb:i})),r},registerNumberFmt=e=>{if(numberFormatMap[e])return numberFormatMap[e];let t=registeredNumberFmts.findIndex(s=>s.formatCode===e);return t===-1?(t=registeredNumberFmts.length+164,registeredNumberFmts.push({formatCode:e,numFmtId:t})):t=registeredNumberFmts[t].numFmtId,t},registerBorders=e=>{const{borderBottom:t,borderTop:s,borderLeft:i,borderRight:r}=e;let a,o,n,l,c,h,d,u;i&&(n=convertLegacyBorder(i.lineStyle,i.weight),d=convertLegacyColor(i.color)),r&&(l=convertLegacyBorder(r.lineStyle,r.weight),u=convertLegacyColor(r.color)),t&&(a=convertLegacyBorder(t.lineStyle,t.weight),c=convertLegacyColor(t.color)),s&&(o=convertLegacyBorder(s.lineStyle,s.weight),h=convertLegacyColor(s.color));let p=registeredBorders.findIndex(g=>{const{left:m,right:C,top:f,bottom:v}=g;if(!m&&(n||d)||!C&&(l||u)||!f&&(o||h)||!v&&(a||c))return!1;const{style:S,color:y}=m||{},{style:w,color:x}=C||{},{style:b,color:T}=f||{},{style:M,color:P}=v||{};return!(S!=n||y!=d||w!=l||x!=u||b!=o||T!=h||M!=a||P!=c)});return p===-1&&(p=registeredBorders.length,registeredBorders.push({left:{style:n,color:d},right:{style:l,color:u},top:{style:o,color:h},bottom:{style:a,color:c},diagonal:{style:void 0,color:void 0}})),p},registerFont=e=>{const{fontName:t="Calibri",color:s,size:i,bold:r,italic:a,outline:o,shadow:n,strikeThrough:l,underline:c,family:h,verticalAlign:d}=e,u=convertLegacyColor(s),p=getFontFamilyId(h),g=c?c.toLocaleLowerCase():void 0,m=d?d.toLocaleLowerCase():void 0;let C=registeredFonts.findIndex(f=>!(f.fontName!=t||f.color!=u||f.size!=i||f.bold!=r||f.italic!=a||f.outline!=o||f.shadow!=n||f.strikeThrough!=l||f.underline!=g||f.verticalAlign!=m||f.family!=p));return C===-1&&(C=registeredFonts.length,registeredFonts.push({fontName:t,color:u,size:i,bold:r,italic:a,outline:o,shadow:n,strikeThrough:l,underline:g,verticalAlign:m,family:p?.toString()})),C},registerStyle=e=>{const{alignment:t,borders:s,font:i,interior:r,numberFormat:a,protection:o,quotePrefix:n}=e;let{id:l}=e,c=0,h=0,d=0,u=0;l&&(l=getStyleName(l,currentSheet),stylesMap[l]==null&&(r&&(c=registerFill(r)),s&&(h=registerBorders(s)),i&&(d=registerFont(i)),a&&(u=registerNumberFmt(a.format)),stylesMap[l]=registeredCellXfs.length,registeredCellXfs.push({alignment:t,borderId:h||0,fillId:c||0,fontId:d||0,numFmtId:u||0,protection:o,quotePrefix:n,xfId:0})))},stylesheetFactory={getTemplate(e){const t=numberFormats_default.getTemplate(registeredNumberFmts),s=fonts_default.getTemplate(registeredFonts.map(l=>({...l,size:l.size!=null?l.size:e}))),i=fills_default.getTemplate(registeredFills),r=borders_default.getTemplate(registeredBorders),a=cellStyleXfs_default.getTemplate(registeredCellStyleXfs),o=cellXfs_default.getTemplate(registeredCellXfs),n=cellStyles_default.getTemplate(registeredCellStyles);return resetStylesheetValues(),{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,o,n,{name:"tableStyles",properties:{rawMap:{count:0,defaultPivotStyle:"PivotStyleLight16",defaultTableStyle:"TableStyleMedium2"}}}]}}},getStyleId=(e,t)=>stylesMap[getStyleName(e,t)]||0,registerStyles=(e,t)=>{currentSheet=t,currentSheet===1&&resetStylesheetValues(),e.forEach(registerStyle)},stylesheet_default=stylesheetFactory,tableFactory={getTemplate(e,t){const{name:s,columns:i,rowCount:r,displayName:a,headerRowIndex:o,showRowStripes:n,showColumnStripes:l,showFilterButtons:c,highlightFirstColumn:h,highlightLastColumn:d}=e||{};if(!e||!s||!Array.isArray(i)||!i.length||!r)return{name:"table"};const u=i.map((S,y)=>({name:"filterColumn",properties:{rawMap:{colId:y.toString(),hiddenButton:c[y]?0:1}}})),p=o+1,g=(t+1).toString(),m=`A${p}`,C=`${String.fromCharCode(64+i.length)}${p+r}`,f=`${m}:${C}`,v=t?`${a}_${t+1}`: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:v,ref:f,totalsRowShown:0,id:g}},children:[{name:"autoFilter",properties:{rawMap:{ref:f}},children:u},{name:"tableColumns",properties:{rawMap:{count:i.length}},children:i.map((S,y)=>({name:"tableColumn",properties:{rawMap:{id:(y+1).toString(),name:S,dataCellStyle:"Normal"}}}))},{name:"tableStyleInfo",properties:{rawMap:{name:"TableStyleLight1",showFirstColumn:h?1:0,showLastColumn:d?1:0,showRowStripes:n?1:0,showColumnStripes:l?1:0}}}]}}},table_default=tableFactory,getColorChildren=e=>{const[t,s,i,r]=e;return{name:`a:${t}`,children:[{name:`a:${s}`,properties:{rawMap:{val:i,lastClr:r}}}]}},colorScheme={getTemplate(){return{name:"a:clrScheme",properties:{rawMap:{name:"Office"}},children:[getColorChildren(["dk1","sysClr","windowText","000000"]),getColorChildren(["lt1","sysClr","window","FFFFFF"]),getColorChildren(["dk2","srgbClr","44546A"]),getColorChildren(["lt2","srgbClr","E7E6E6"]),getColorChildren(["accent1","srgbClr","4472C4"]),getColorChildren(["accent2","srgbClr","ED7D31"]),getColorChildren(["accent3","srgbClr","A5A5A5"]),getColorChildren(["accent4","srgbClr","FFC000"]),getColorChildren(["accent5","srgbClr","5B9BD5"]),getColorChildren(["accent6","srgbClr","70AD47"]),getColorChildren(["hlink","srgbClr","0563C1"]),getColorChildren(["folHlink","srgbClr","954F72"])]}}},colorScheme_default=colorScheme,getFont=e=>{const[t,s,i,r]=e;return{name:`a:${t}`,properties:{rawMap:{script:i,typeface:s,panose:r}}}},fontScheme={getTemplate(){return{name:"a:fontScheme",properties:{rawMap:{name:"Office"}},children:[{name:"a:majorFont",children:[getFont(["latin","Calibri Light",void 0,"020F0302020204030204"]),getFont(["ea",""]),getFont(["cs",""]),getFont(["font","\u6E38\u30B4\u30B7\u30C3\u30AF Light","Jpan"]),getFont(["font","\uB9D1\uC740 \uACE0\uB515","Hang"]),getFont(["font","\u7B49\u7EBF Light","Hans"]),getFont(["font","\u65B0\u7D30\u660E\u9AD4","Hant"]),getFont(["font","Times New Roman","Arab"]),getFont(["font","Times New Roman","Hebr"]),getFont(["font","Tahoma","Thai"]),getFont(["font","Nyala","Ethi"]),getFont(["font","Vrinda","Beng"]),getFont(["font","Shruti","Gujr"]),getFont(["font","MoolBoran","Khmr"]),getFont(["font","Tunga","Knda"]),getFont(["font","Raavi","Guru"]),getFont(["font","Euphemia","Cans"]),getFont(["font","Plantagenet Cherokee","Cher"]),getFont(["font","Microsoft Yi Baiti","Yiii"]),getFont(["font","Microsoft Himalaya","Tibt"]),getFont(["font","MV Boli","Thaa"]),getFont(["font","Mangal","Deva"]),getFont(["font","Gautami","Telu"]),getFont(["font","Latha","Taml"]),getFont(["font","Estrangelo Edessa","Syrc"]),getFont(["font","Kalinga","Orya"]),getFont(["font","Kartika","Mlym"]),getFont(["font","DokChampa","Laoo"]),getFont(["font","Iskoola Pota","Sinh"]),getFont(["font","Mongolian Baiti","Mong"]),getFont(["font","Times New Roman","Viet"]),getFont(["font","Microsoft Uighur","Uigh"]),getFont(["font","Sylfaen","Geor"]),getFont(["font","Arial","Armn"]),getFont(["font","Leelawadee UI","Bugi"]),getFont(["font","Microsoft JhengHei","Bopo"]),getFont(["font","Javanese Text","Java"]),getFont(["font","Segoe UI","Lisu"]),getFont(["font","Myanmar Text","Mymr"]),getFont(["font","Ebrima","Nkoo"]),getFont(["font","Nirmala UI","Olck"]),getFont(["font","Ebrima","Osma"]),getFont(["font","Phagspa","Phag"]),getFont(["font","Estrangelo Edessa","Syrn"]),getFont(["font","Estrangelo Edessa","Syrj"]),getFont(["font","Estrangelo Edessa","Syre"]),getFont(["font","Nirmala UI","Sora"]),getFont(["font","Microsoft Tai Le","Tale"]),getFont(["font","Microsoft New Tai Lue","Talu"]),getFont(["font","Ebrima","Tfng"])]},{name:"a:minorFont",children:[getFont(["latin","Calibri",void 0,"020F0502020204030204"]),getFont(["ea",""]),getFont(["cs",""]),getFont(["font","\u6E38\u30B4\u30B7\u30C3\u30AF","Jpan"]),getFont(["font","\uB9D1\uC740 \uACE0\uB515","Hang"]),getFont(["font","\u7B49\u7EBF","Hans"]),getFont(["font","\u65B0\u7D30\u660E\u9AD4","Hant"]),getFont(["font","Arial","Arab"]),getFont(["font","Arial","Hebr"]),getFont(["font","Tahoma","Thai"]),getFont(["font","Nyala","Ethi"]),getFont(["font","Vrinda","Beng"]),getFont(["font","Shruti","Gujr"]),getFont(["font","DaunPenh","Khmr"]),getFont(["font","Tunga","Knda"]),getFont(["font","Raavi","Guru"]),getFont(["font","Euphemia","Cans"]),getFont(["font","Plantagenet Cherokee","Cher"]),getFont(["font","Microsoft Yi Baiti","Yiii"]),getFont(["font","Microsoft Himalaya","Tibt"]),getFont(["font","MV Boli","Thaa"]),getFont(["font","Mangal","Deva"]),getFont(["font","Gautami","Telu"]),getFont(["font","Latha","Taml"]),getFont(["font","Estrangelo Edessa","Syrc"]),getFont(["font","Kalinga","Orya"]),getFont(["font","Kartika","Mlym"]),getFont(["font","DokChampa","Laoo"]),getFont(["font","Iskoola Pota","Sinh"]),getFont(["font","Mongolian Baiti","Mong"]),getFont(["font","Arial","Viet"]),getFont(["font","Microsoft Uighur","Uigh"]),getFont(["font","Sylfaen","Geor"]),getFont(["font","Arial","Armn"]),getFont(["font","Leelawadee UI","Bugi"]),getFont(["font","Microsoft JhengHei","Bopo"]),getFont(["font","Javanese Text","Java"]),getFont(["font","Segoe UI","Lisu"]),getFont(["font","Myanmar Text","Mymr"]),getFont(["font","Ebrima","Nkoo"]),getFont(["font","Nirmala UI","Olck"]),getFont(["font","Ebrima","Osma"]),getFont(["font","Phagspa","Phag"]),getFont(["font","Estrangelo Edessa","Syrn"]),getFont(["font","Estrangelo Edessa","Syrj"]),getFont(["font","Estrangelo Edessa","Syre"]),getFont(["font","Nirmala UI","Sora"]),getFont(["font","Microsoft Tai Le","Tale"]),getFont(["font","Microsoft New Tai Lue","Talu"]),getFont(["font","Ebrima","Tfng"])]}]}}},fontScheme_default=fontScheme,getPropertyVal=(e,t,s)=>({name:`a:${e}`,properties:{rawMap:{val:t}},children:s}),getGs=e=>{const[t,s,i,r,a,o]=e,n=[];return n.push(getPropertyVal("satMod",i)),r&&n.push(getPropertyVal("lumMod",r)),a&&n.push(getPropertyVal("tint",a)),o&&n.push(getPropertyVal("shade",o)),{name:"a:gs",properties:{rawMap:{pos:t}},children:[{name:"a:schemeClr",properties:{rawMap:{val:s}},children:n}]}},getSolidFill=(e,t)=>({name:"a:solidFill",children:[getPropertyVal("schemeClr",e,t)]}),getGradFill=e=>{const[t,s,i,r,a]=e,[o,n]=a;return{name:"a:gradFill",properties:{rawMap:{rotWithShape:t}},children:[{name:"a:gsLst",children:[getGs(s),getGs(i),getGs(r)]},{name:"a:lin",properties:{rawMap:{ang:o,scaled:n}}}]}},getLine=e=>{const[t,s,i,r]=e;return{name:"a:ln",properties:{rawMap:{w:t,cap:s,cmpd:i,algn:r}},children:[getSolidFill("phClr"),getPropertyVal("prstDash","solid"),{name:"a:miter",properties:{rawMap:{lim:"800000"}}}]}},getEffectStyle=e=>{const t=[];if(e){const[s,i,r,a,o]=e;t.push({name:"a:outerShdw",properties:{rawMap:{blurRad:s,dist:i,dir:r,algn:a,rotWithShape:o}},children:[getPropertyVal("srgbClr","000000",[getPropertyVal("alpha","63000")])]})}return{name:"a:effectStyle",children:[Object.assign({},{name:"a:effectLst"},t.length?{children:t}:{})]}},getFillStyleList=()=>({name:"a:fillStyleLst",children:[getSolidFill("phClr"),getGradFill(["1",["0","phClr","105000","110000","67000"],["50000","phClr","103000","105000","73000"],["100000","phClr","109000","105000","81000"],["5400000","0"]]),getGradFill(["1",["0","phClr","103000","102000","94000"],["50000","phClr","110000","100000",void 0,"100000"],["100000","phClr","120000","99000",void 0,"78000"],["5400000","0"]])]}),getLineStyleList=()=>({name:"a:lnStyleLst",children:[getLine(["6350","flat","sng","ctr"]),getLine(["12700","flat","sng","ctr"]),getLine(["19050","flat","sng","ctr"])]}),getEffectStyleList=()=>({name:"a:effectStyleLst",children:[getEffectStyle(),getEffectStyle(),getEffectStyle(["57150","19050","5400000","ctr","0"])]}),getBgFillStyleList=()=>({name:"a:bgFillStyleLst",children:[getSolidFill("phClr"),getSolidFill("phClr",[getPropertyVal("tint","95000"),getPropertyVal("satMod","170000")]),getGradFill(["1",["0","phClr","150000","102000","93000","98000"],["50000","phClr","130000","103000","98000","90000"],["100000","phClr","120000",void 0,void 0,"63000"],["5400000","0"]])]}),formatScheme={getTemplate(){return{name:"a:fmtScheme",properties:{rawMap:{name:"Office"}},children:[getFillStyleList(),getLineStyleList(),getEffectStyleList(),getBgFillStyleList()]}}},formatScheme_default=formatScheme,themeElements={getTemplate(){return{name:"a:themeElements",children:[colorScheme_default.getTemplate(),fontScheme_default.getTemplate(),formatScheme_default.getTemplate()]}}},themeElements_default=themeElements,officeTheme={getTemplate(){return{name:"a:theme",properties:{prefixedAttributes:[{prefix:"xmlns:",map:{a:"http://schemas.openxmlformats.org/drawingml/2006/main"}}],rawMap:{name:"Office Theme"}},children:[themeElements_default.getTemplate(),{name:"a:objectDefaults"},{name:"a:extraClrSchemeLst"}]}}},office_default=officeTheme,getShapeLayout=()=>({name:"o:shapelayout",properties:{prefixedAttributes:[{prefix:"v:",map:{ext:"edit"}}]},children:[{name:"o:idmap",properties:{prefixedAttributes:[{prefix:"v:",map:{ext:"edit"}}],rawMap:{data:"1"}}}]}),getStroke=()=>({name:"v:stroke",properties:{rawMap:{joinstyle:"miter"}}}),getFormulas=e=>({name:"v:formulas",children:e.map(t=>({name:"v:f",properties:{rawMap:{eqn:t}}}))}),getPath=()=>({name:"v:path",properties:{prefixedAttributes:[{prefix:"o:",map:{connecttype:"rect",extrusionok:"f"}}],rawMap:{gradientshapeok:"t"}}}),getLock=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 mapNumber(e,t,s,i,r){return(e-t)/(s-t)*(r-i)+i}var getImageData=(e,t)=>{let s;const{recolor:i,brightness:r,contrast:a,id:o}=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 n="1";a>=0&&(a<50?n=String(a/50):a<100?n=String(50/(100-a)):a===100&&(n="2147483647f")),s.gain=n}r!=null&&r!==50&&(s.blacklevel=mapNumber(r,0,100,-.5,.5).toString())}return{name:"v:imagedata",properties:{prefixedAttributes:[{prefix:"o:",map:{relid:`rId${t}`,title:o}}],rawMap:s}}},getShapeType=()=>{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:[getStroke(),getFormulas(e),getPath(),getLock({aspectratio:!0})]}},pixelToPoint=e=>Math.floor((e??0)*.74999943307122),getShape=(e,t)=>{const{width:s=0,height:i=0,altText:r}=e,a=pixelToPoint(s),o=pixelToPoint(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: ${o}pt; z-index: ${t+1}`,type:"#_x0000_t75",alt:r}},children:[getImageData(e,t+1),getLock({rotation:!0})]}},vmlDrawingFactory={getTemplate(e){const t=ExcelXlsxFactory.worksheetHeaderFooterImages.get(e.sheetIndex)||[],s=[getShapeLayout(),getShapeType(),...t.map((i,r)=>getShape(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}}},vmlDrawing_default=vmlDrawingFactory,sheetFactory={getTemplate(e,t){const s=(t+1).toString();return{name:"sheet",properties:{rawMap:{name:e,sheetId:s,"r:id":`rId${s}`}}}}},sheet_default=sheetFactory,sheetsFactory={getTemplate(e){return{name:"sheets",children:e.map((t,s)=>sheet_default.getTemplate(t,s))}}},sheets_default=sheetsFactory,workbookFactory={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}}}]},sheets_default.getTemplate(e)]}}},workbook_default=workbookFactory,getExcelCellWidth=e=>Math.ceil((e-12)/7+1),columnFactory={getTemplate(e){const{min:t,max:s,outlineLevel:i,s:r,width:a,hidden:o,bestFit:n}=e;let l=1,c="0";return a>1&&(l=getExcelCellWidth(a),c="1"),{name:"col",properties:{rawMap:{min:t,max:s,outlineLevel:i??void 0,width:l,style:r,hidden:o?"1":"0",bestFit:n?"1":"0",customWidth:c}}}}},column_default=columnFactory,mergeCellFactory={getTemplate(e){return{name:"mergeCell",properties:{rawMap:{ref:e}}}}},mergeCell_default=mergeCellFactory,convertLegacyType=e=>{const t=e.charAt(0).toLowerCase();return t==="s"?"inlineStr":t},cellFactory={getTemplate(e,t,s){const{ref:i,data:r,styleId:a}=e,{type:o,value:n}=r||{type:"empty",value:null};let l=o;o==="f"?l="str":o.charAt(0)===o.charAt(0).toUpperCase()&&(l=convertLegacyType(o));const c={name:"c",properties:{rawMap:{r:i,t:l==="empty"?void 0:l,s:a?getStyleId(a,s):void 0}}};if(l==="empty")return c;let h;return l==="str"&&o==="f"?h=[{name:"f",textNode:(0,import_core224._escapeString)(replaceInvisibleCharacters(n),!1)}]:l==="inlineStr"?h=[{name:"is",children:[{name:"t",textNode:(0,import_core224._escapeString)(replaceInvisibleCharacters(n),!1)}]}]:h=[{name:"v",textNode:n}],Object.assign({},c,{children:h})}},cell_default=cellFactory,addEmptyCells=(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=[],o=e[s[r].pos];for(let n=1;n<=o.mergeAcross;n++)a.push({ref:`${getExcelColumnName(s[r].excelPos+1+n)}${t+1}`,styleId:o.styleId,data:{type:"empty",value:null}});a.length&&e.splice(s[r].pos+1,0,...a)}},shouldDisplayCell=e=>e.data?.value!==""||e.styleId!==void 0,rowFactory={getTemplate(e,t,s){const{collapsed:i,hidden:r,height:a,outlineLevel:o,cells:n=[]}=e;addEmptyCells(n,t);const l=n.filter(shouldDisplayCell).map((c,h)=>cell_default.getTemplate(c,h,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:o||void 0}},children:l}}},row_default=rowFactory,getMergedCellsAndAddColumnGroups=(e,t,s)=>{const i=[],r=[];e.forEach((n,l)=>{const c=n.cells;let h=0,d;c.forEach((u,p)=>{const g=p+h+1,m=getExcelColumnName(g),C=l+1;if(u.mergeAcross){h+=u.mergeAcross;const v=getExcelColumnName(p+h+1);i.push(`${m}${C}:${v}${C}`)}t[g-1]||(t[g-1]={});const{collapsibleRanges:f}=u;f&&f.forEach(v=>{r.push([g+v[0],g+v[1]])}),d=t[g-1],d.min=g,d.max=g,u.ref=`${m}${C}`})}),r.sort((n,l)=>n[0]!==l[0]?n[0]-l[0]:l[1]-n[1]);const a=new Map,o=new Map;return r.filter(n=>{const l=n.toString();return a.get(l)?!1:(a.set(l,!0),!0)}).forEach(n=>{const l=t.find(h=>h.min==n[0]&&h.max==n[1]),c=o.get(n[0]);t.push({min:n[0],max:n[1],outlineLevel:s?void 0:c||1,width:(l||{width:100}).width}),o.set(n[0],(c||0)+1)}),i},getPageOrientation=e=>!e||e!=="Portrait"&&e!=="Landscape"?"portrait":e.toLocaleLowerCase(),getPageSize=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},replaceHeaderFooterTokens=e=>{const t={"&[Page]":"&P","&[Pages]":"&N","&[Date]":"&D","&[Time]":"&T","&[Tab]":"&A","&[Path]":"&Z","&[File]":"&F","&[Picture]":"&G"};return(0,import_core223._iterateObject)(t,(s,i)=>{e=e.replace(s,i)}),e},getHeaderPosition=e=>e==="Center"?"C":e==="Right"?"R":"L",applyHeaderFontStyle=(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),processHeaderFooterContent=(e,t,s)=>e.reduce((i,r,a)=>{const o=getHeaderPosition(r.position),n=applyHeaderFontStyle(`${i}&${o}`,r.font),l=["Left","Center","Right"];r.position||(r.position=l[a]);const{image:c}=r;if(r.value==="&[Picture]"&&c){const h=`${o}${t}${s}`;ExcelXlsxFactory.addHeaderFooterImageToMap(c,h)}return`${n}${(0,import_core223._escapeString)(replaceHeaderFooterTokens(r.value))}`},""),buildHeaderFooter=e=>{const t=["all","first","even"],s=[];return t.forEach(i=>{const r=e[i],a=i==="all"?"odd":i;if(r)for(const[o,n]of Object.entries(r)){const l=`${o.charAt(0).toUpperCase()}${o.slice(1)}`,c=o[0].toUpperCase();if(n){const h=i==="all"?"":i.toUpperCase();s.push({name:`${a}${l}`,properties:{rawMap:{"xml:space":"preserve"}},textNode:processHeaderFooterContent(n,c,h)})}}}),s},addColumns=e=>t=>(e.length&&t.children.push({name:"cols",children:e.map(s=>column_default.getTemplate(s))}),t),addSheetData=(e,t)=>s=>(e.length&&s.children.push({name:"sheetData",children:e.map((i,r)=>row_default.getTemplate(i,r,t))}),s),addMergeCells=e=>t=>(e.length&&t.children.push({name:"mergeCells",properties:{rawMap:{count:e.length}},children:e.map(s=>mergeCell_default.getTemplate(s))}),t),addPageMargins=e=>t=>{const{top:s=.75,right:i=.7,bottom:r=.75,left:a=.7,header:o=.3,footer:n=.3}=e;return t.children.push({name:"pageMargins",properties:{rawMap:{bottom:r,footer:n,header:o,left:a,right:i,top:s}}}),t},addPageSetup=e=>t=>(e&&t.children.push({name:"pageSetup",properties:{rawMap:{horizontalDpi:0,verticalDpi:0,orientation:getPageOrientation(e.orientation),paperSize:getPageSize(e.pageSize)}}}),t),addHeaderFooter=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:buildHeaderFooter(e)}),t},addExcelTableRel=e=>t=>(e&&t.children.push({name:"tableParts",properties:{rawMap:{count:"1"}},children:[{name:"tablePart",properties:{rawMap:{"r:id":`rId${++t.rIdCounter}`}}}]}),t),addDrawingRel=e=>t=>(ExcelXlsxFactory.worksheetImages.get(e)?.length&&t.children.push({name:"drawing",properties:{rawMap:{"r:id":`rId${++t.rIdCounter}`}}}),t),addVmlDrawingRel=e=>t=>(ExcelXlsxFactory.worksheetHeaderFooterImages.get(e)&&t.children.push({name:"legacyDrawingHF",properties:{rawMap:{"r:id":`rId${++t.rIdCounter}`}}}),t),getPane=(e=0,t=0)=>{const s=e>0||t>0;return s?[{name:"pane",properties:{rawMap:{state:s?"frozen":void 0,topLeftCell:s?`${getExcelColumnName(e+1)}${t+1}`:void 0,xSplit:e===0?void 0:e,ySplit:t===0?void 0:t}}}]:void 0},addSheetViews=(e=!1,t,s)=>i=>(i.children.push({name:"sheetViews",children:[{name:"sheetView",properties:{rawMap:{rightToLeft:e===!0?"1":"0",workbookViewId:"0"}},children:getPane(t,s)}]}),i),addSheetPr=()=>e=>(e.children.push({name:"sheetPr",children:[{name:"outlinePr",properties:{rawMap:{summaryBelow:0}}}]}),e),addSheetFormatPr=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},worksheetFactory={getTemplate(e){const{worksheet:t,currentSheet:s,config:i}=e,{margins:r={},pageSetup:a,headerFooterConfig:o,suppressColumnOutline:n,rightToLeft:l,frozenRowCount:c,frozenColumnCount:h}=i,{table:d}=t,{rows:u,columns:p}=d,g=p&&p.length?getMergedCellsAndAddColumnGroups(u,p,!!n):[],{worksheetDataTables:m}=ExcelXlsxFactory,C=m.get(s),f=(0,import_core223._compose)(addSheetPr(),addSheetViews(l,h,c),addSheetFormatPr(u),addColumns(p),addSheetData(u,s+1),addMergeCells(g),addPageMargins(r),addPageSetup(a),addHeaderFooter(o),addDrawingRel(s),addVmlDrawingRel(s),addExcelTableRel(C)),{children:v}=f({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:v}}},worksheet_default=worksheetFactory,_ExcelXlsxFactory=class le{static createExcel(t,s,i){this.addSheetName(s),registerStyles(t,this.sheetNames.length);const r=Object.assign({},i);return i.exportAsExcelTable&&(i.columnModel.isPivotActive()&&(this.showExcelTableNonCompatibleFeaturesWarning("pivot mode"),r.exportAsExcelTable=!1),i.gos.get("masterDetail")&&(this.showExcelTableNonCompatibleFeaturesWarning("master/detail"),r.exportAsExcelTable=!1)),this.processTableConfig(s,r),this.createWorksheet(s,r)}static showExcelTableNonCompatibleFeaturesWarning(t){(0,import_core221._warnOnce)(`Excel table export does not work with ${t}. The exported Excel file will not contain any Excel tables.
|
|
373
|
+
Please turn off ${t} to enable Excel table exports.`)}static getTableNameFromIndex(t){return`table${t+1}`}static getSanitizedTableName(t){return t.replace(/^[^a-zA-Z_]+/,"_").replace(/\s/g,"_").replace(/[^a-zA-Z0-9_]/g,"_")}static addTableToSheet(t,s){if(this.worksheetDataTables.has(t)){(0,import_core221._warnOnce)("Unable to add data table to Excel sheet: A table already exists.");return}this.worksheetDataTables.set(t,s)}static processTableConfig(t,s){if(!s.exportAsExcelTable)return;const i=typeof s.exportAsExcelTable=="boolean"?{}:s.exportAsExcelTable,{name:r,showColumnStripes:a,showRowStripes:o,showFilterButton:n,highlightFirstColumn:l,highlightLastColumn:c}=i,h=this.getSanitizedTableName(r||le.defaultTableDisplayName),d=this.sheetNames.length-1,{table:u}=t,{rows:p,columns:g}=u,m=s.columnModel.getHeaderRowCount(),C=m-1,f=p.length,v=g.length,S=[],y=[];for(let w=0;w<v;w++){const x=g[w];S.push(x.displayName||""),y.push(n==="match"||n===void 0?x.filterAllowed??!1:n)}if(!S||!S.length||!f||!h){(0,import_core221._warnOnce)("Unable to add data table to Excel sheet: Missing required parameters.");return}this.addTableToSheet(d,{name:this.getTableNameFromIndex(d),displayName:h,columns:S,showFilterButtons:y,headerRowIndex:C,rowCount:f-m,showRowStripes:o??!0,showColumnStripes:a??!1,highlightFirstColumn:l??!1,highlightLastColumn:c??!1})}static addHeaderFooterImageToMap(t,s){const i=this.sheetNames.length-1,r=t;r.headerFooterPosition=s,this.buildImageMap({imageToAdd:r,idx:i});let a=this.worksheetHeaderFooterImages.get(i);a||(a=[],this.worksheetHeaderFooterImages.set(i,a)),a.find(o=>o.id===t.id)||a.push(t)}static addBodyImageToMap(t,s,i,r,a){const o=this.sheetNames.length,{row:n,column:l}=t.position||{},c=t;r&&(s!=null&&i!=null&&(!n||!l)&&(t.position||(t.position={}),t.position=Object.assign({},t.position,{row:s,column:r.indexOf(i)+1})),setExcelImageTotalWidth(c,r),setExcelImageTotalHeight(c,a)),this.buildImageMap({imageToAdd:c,idx:o});let h=this.worksheetImageIds.get(o);h||(h=new Map,this.worksheetImageIds.set(o,h));const d=this.worksheetImages.get(o);d?d.push(c):this.worksheetImages.set(o,[c]),h.get(t.id)||h.set(t.id,{index:h.size,type:t.imageType})}static buildImageMap(t){const{imageToAdd:s,idx:i}=t,r=this.images.get(s.id);if(r){const a=r.find(o=>o.sheetId===i);a?a.image.push(s):r.push({sheetId:i,image:[s]})}else this.images.set(s.id,[{sheetId:i,image:[s]}]),this.workbookImageIds.set(s.id,{type:s.imageType,index:this.workbookImageIds.size})}static addSheetName(t){const s=(0,import_core221._escapeString)(t.name)||"";let i="";for(;this.sheetNames.indexOf(`${s}${i}`)!==-1;)i===""?i="_1":i=`_${parseInt(i.slice(1),10)+1}`;t.name=`${s}${i}`,this.sheetNames.push(t.name)}static getStringPosition(t){return this.sharedStrings.has(t)?this.sharedStrings.get(t):(this.sharedStrings.set(t,this.sharedStrings.size),this.sharedStrings.size-1)}static resetFactory(){this.sharedStrings=new Map,this.images=new Map,this.worksheetImages=new Map,this.worksheetHeaderFooterImages=new Map,this.workbookImageIds=new Map,this.worksheetImageIds=new Map,this.worksheetDataTables=new Map,this.sheetNames=[],this.factoryMode=import_core221.ExcelFactoryMode.SINGLE_SHEET}static createWorkbook(t){return createXmlPart(workbook_default.getTemplate(this.sheetNames,t))}static createStylesheet(t){return createXmlPart(stylesheet_default.getTemplate(t))}static createSharedStrings(){return createXmlPart(sharedStrings_default.getTemplate(this.sharedStrings))}static createCore(t){return createXmlPart(core_default.getTemplate(t))}static createContentTypes(t){return createXmlPart(contentTypes_default.getTemplate(t))}static createRels(){const t=relationships_default.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 createXmlPart(t)}static createTheme(){return createXmlPart(office_default.getTemplate())}static createTable(t,s){return createXmlPart(table_default.getTemplate(t,s))}static createWorkbookRels(t){const s=new Array(t).fill(void 0).map((r,a)=>({Id:`rId${a+1}`,Type:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/worksheet",Target:`worksheets/sheet${a+1}.xml`})),i=relationships_default.getTemplate([...s,{Id:`rId${t+1}`,Type:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/theme",Target:"theme/theme1.xml"},{Id:`rId${t+2}`,Type:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/styles",Target:"styles.xml"},{Id:`rId${t+3}`,Type:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/sharedStrings",Target:"sharedStrings.xml"}]);return createXmlPart(i)}static createDrawing(t){return createXmlPart(drawing_default.getTemplate({sheetIndex:t}))}static createDrawingRel(t){const s=this.worksheetImageIds.get(t)||[],i=[];for(const[r,a]of s){const{index:o,type:n}=a;i.push({Id:`rId${o+1}`,Type:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/image",Target:`../media/image${this.workbookImageIds.get(r).index+1}.${_normaliseImageExtension(n)}`})}return createXmlPart(relationships_default.getTemplate(i))}static createVmlDrawing(t){return createXmlPart(vmlDrawing_default.getTemplate({sheetIndex:t}),!0)}static createVmlDrawingRel(t){const s=this.worksheetHeaderFooterImages.get(t)||[],i=[];for(let r=0;r<s.length;r++){const a=s[r],o=this.workbookImageIds.get(a.id);if(!o)continue;const{index:n,type:l}=o;i.push({Id:`rId${r+1}`,Type:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/image",Target:`../media/image${n+1}.${_normaliseImageExtension(l)}`})}return createXmlPart(relationships_default.getTemplate(i))}static createRelationships({drawingIndex:t,vmlDrawingIndex:s,tableIndex:i}={}){if(t===void 0&&s===void 0&&i===void 0)return"";const r=[];t!=null&&r.push({Id:`rId${r.length+1}`,Type:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/drawing",Target:`../drawings/drawing${t+1}.xml`}),s!=null&&r.push({Id:`rId${r.length+1}`,Type:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/vmlDrawing",Target:`../drawings/vmlDrawing${s+1}.vml`}),i!=null&&r.push({Id:`rId${r.length+1}`,Type:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/table",Target:`../tables/${this.getTableNameFromIndex(i)}.xml`});const a=relationships_default.getTemplate(r);return createXmlPart(a)}static createWorksheet(t,s){return createXmlPart(worksheet_default.getTemplate({worksheet:t,currentSheet:this.sheetNames.length-1,config:s}))}};_ExcelXlsxFactory.sharedStrings=new Map,_ExcelXlsxFactory.sheetNames=[],_ExcelXlsxFactory.images=new Map,_ExcelXlsxFactory.worksheetImages=new Map,_ExcelXlsxFactory.worksheetHeaderFooterImages=new Map,_ExcelXlsxFactory.workbookImageIds=new Map,_ExcelXlsxFactory.worksheetImageIds=new Map,_ExcelXlsxFactory.worksheetDataTables=new Map,_ExcelXlsxFactory.defaultTableDisplayName="AG-GRID-TABLE",_ExcelXlsxFactory.factoryMode=import_core221.ExcelFactoryMode.SINGLE_SHEET;var ExcelXlsxFactory=_ExcelXlsxFactory,ExcelSerializingSession=class extends import_csv_export4.BaseGridSerializingSession{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:getHeightFromProperty(s,t.height||this.config.rowHeight),cells:(t.cells||[]).map((a,o)=>{const n=this.addImage(s,this.columnsToExport[o],a.data?.value);let l=null;a.styleId&&(l=typeof a.styleId=="string"?[a.styleId]:a.styleId);const c=this.getStyleId(l);if(n)return this.createCell(c,this.getDataTypeForValue(n.value),n.value==null?"":n.value);const h=a.data?.value??"",d=this.getDataTypeForValue(h);return a.mergeAcross?this.createMergedCell(c,d,h,a.mergeAcross):this.createCell(c,d,h)}),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:getHeightFromProperty(this.rows.length+1,s)}),t&&this.frozenRowCount++,{onColumn:(i,r,a,o,n)=>{const l=this.config.styleLinker({rowType:import_csv_export4.RowType.HEADER_GROUPING,rowIndex:1,value:`grouping-${r}`,columnGroup:i});e.push({...this.createMergedCell(this.getStyleId(l),this.getDataTypeForValue("string"),r,o),collapsibleRanges:n})}}}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({...this.gos.getGridCommonParams(),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(this.gos.getGridCommonParams()):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,o=(0,import_core219._last)(this.rows),n=Math.min(e.level+a,7);if(o.outlineLevel=n,i==="expanded")return;const l=i==="collapsed";if(e.isExpandable()){const c=!l&&e.expanded;o.collapsed=!c}o.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:import_csv_export4.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,o,n)=>{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({...this.gos.getGridCommonParams(),column:a})?this.frozenColumnCount++:this.skipFrozenColumns=!0}const{value:l,valueFormatted:c}=this.extractRowCellValue(a,o,e,"excel",n),h=this.config.styleLinker({rowType:import_csv_export4.RowType.BODY,rowIndex:e,value:l,column:a,node:n}),d=this.getStyleId(h),u=a.getColSpan(n),p=this.addImage(e,a,l);p?t.push(this.createCell(d,this.getDataTypeForValue(p.value),p.value==null?"":p.value)):u>1?(s=u-1,t.push(this.createMergedCell(d,this.getDataTypeForValue(l),l,u-1))):t.push(this.createCell(d,this.getDataTypeForValue(l),l,c))}}onNewRow(e,t){const s=[];return this.rows.push({cells:s,height:getHeightFromProperty(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),ExcelXlsxFactory.createExcel(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:(0,import_core219._warnOnce)(`Unrecognized data type for excel export [${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 ExcelXlsxFactory.addBodyImageToMap(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&&(s=i);const a=this.getTypeFromStyle(r,s)||t,{value:o,escaped:n}=this.getCellValue(a,s),l=[];return r&&l.push(e),n&&l.push("_quotePrefix"),e=this.getStyleId(l)||void 0,{styleId:e,data:{type:a,value:o}}}createMergedCell(e,t,s,i){const r=s??"";return{styleId:this.getStyleById(e)?e:void 0,data:{type:t,value:t==="s"?ExcelXlsxFactory.getStringPosition(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=ExcelXlsxFactory.getStringPosition(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&&(0,import_core219._mergeDeep)(s,this.deepCloneObject(a));s.id=t,s.name=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}},createExcelXMLCoreFolderStructure=()=>{import_csv_export3.ZipContainer.addFolders(["_rels/","docProps/","xl/","xl/theme/","xl/_rels/","xl/worksheets/"]);const{images:e}=ExcelXlsxFactory;if(!e.size)return;import_csv_export3.ZipContainer.addFolders(["xl/worksheets/_rels","xl/drawings/","xl/drawings/_rels","xl/media/"]);let t=0;e.forEach(s=>{const i=s[0].image[0],{base64:r,imageType:a}=i;import_csv_export3.ZipContainer.addFile(`xl/media/image${++t}.${_normaliseImageExtension(a)}`,r,!0)})},createExcelXmlWorksheets=e=>{let t=0,s=0,i=0;const{images:r,worksheetDataTables:a,worksheetImages:o,worksheetHeaderFooterImages:n}=ExcelXlsxFactory;for(let l=0;l<e.length;l++){const c=e[l];import_csv_export3.ZipContainer.addFile(`xl/worksheets/sheet${l+1}.xml`,c,!1);const h=r.size>0&&o.has(l),d=a.size>0&&a.has(l),u=r.size&&n.has(l);if(!h&&!d&&!u)continue;let p,g,m;h&&(createExcelXmlDrawings(l,t),g=t,t++),u&&(createExcelVmlDrawings(l,s),m=s,s++),d&&(p=i++);const C=`xl/worksheets/_rels/sheet${l+1}.xml.rels`;import_csv_export3.ZipContainer.addFile(C,ExcelXlsxFactory.createRelationships({tableIndex:p,drawingIndex:g,vmlDrawingIndex:m}))}},createExcelXmlDrawings=(e,t)=>{const s="xl/drawings",i=`${s}/drawing${t+1}.xml`,r=`${s}/_rels/drawing${t+1}.xml.rels`;import_csv_export3.ZipContainer.addFile(r,ExcelXlsxFactory.createDrawingRel(e)),import_csv_export3.ZipContainer.addFile(i,ExcelXlsxFactory.createDrawing(e))},createExcelVmlDrawings=(e,t)=>{const s="xl/drawings",i=`${s}/vmlDrawing${t+1}.vml`,r=`${s}/_rels/vmlDrawing${t+1}.vml.rels`;import_csv_export3.ZipContainer.addFile(i,ExcelXlsxFactory.createVmlDrawing(e)),import_csv_export3.ZipContainer.addFile(r,ExcelXlsxFactory.createVmlDrawingRel(e))},createExcelXmlTables=()=>{const{worksheetDataTables:e}=ExcelXlsxFactory,t=e,s=Array.from(t.keys());for(let i=0;i<s.length;i++){const r=s[i],a=t.get(r);a&&import_csv_export3.ZipContainer.addFile(`xl/tables/${a.name}.xml`,ExcelXlsxFactory.createTable(a,i))}},createExcelXmlCoreSheets=(e,t,s,i)=>{import_csv_export3.ZipContainer.addFile("xl/workbook.xml",ExcelXlsxFactory.createWorkbook(i)),import_csv_export3.ZipContainer.addFile("xl/styles.xml",ExcelXlsxFactory.createStylesheet(e)),import_csv_export3.ZipContainer.addFile("xl/sharedStrings.xml",ExcelXlsxFactory.createSharedStrings()),import_csv_export3.ZipContainer.addFile("xl/theme/theme1.xml",ExcelXlsxFactory.createTheme()),import_csv_export3.ZipContainer.addFile("xl/_rels/workbook.xml.rels",ExcelXlsxFactory.createWorkbookRels(s)),import_csv_export3.ZipContainer.addFile("docProps/core.xml",ExcelXlsxFactory.createCore(t)),import_csv_export3.ZipContainer.addFile("[Content_Types].xml",ExcelXlsxFactory.createContentTypes(s)),import_csv_export3.ZipContainer.addFile("_rels/.rels",ExcelXlsxFactory.createRels())},createExcelFileForExcel=(e,t={})=>{if(!e||e.length===0)return(0,import_core218._warnOnce)("Invalid params supplied to createExcelFileForExcel() - `ExcelExportParams.data` is empty."),ExcelXlsxFactory.resetFactory(),!1;const{fontSize:s=11,author:i="AG Grid",activeTab:r=0}=t,a=e.length,o=Math.max(Math.min(r,a-1),0);return createExcelXMLCoreFolderStructure(),createExcelXmlTables(),createExcelXmlWorksheets(e),createExcelXmlCoreSheets(s,i,a,o),ExcelXlsxFactory.resetFactory(),!0},getMultipleSheetsAsExcelCompressed=e=>{const{data:t,fontSize:s,author:i,activeSheetIndex:r}=e,a=e.mimeType||"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet";return createExcelFileForExcel(t,{author:i,fontSize:s,activeTab:r})?import_csv_export3.ZipContainer.getZipFile(a):Promise.resolve(void 0)},getMultipleSheetsAsExcel=e=>{const{data:t,fontSize:s,author:i,activeSheetIndex:r}=e,a=e.mimeType||"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet";if(createExcelFileForExcel(t,{author:i,fontSize:s,activeTab:r}))return import_csv_export3.ZipContainer.getUncompressedZipFile(a)},exportMultipleSheetsAsExcel=e=>{const{fileName:t="export.xlsx"}=e;getMultipleSheetsAsExcelCompressed(e).then(s=>{if(s){const i=typeof t=="function"?t():t;import_csv_export3.Downloader.download(i,s)}})},ExcelCreator=class extends import_csv_export3.BaseCreator{constructor(){super(...arguments),this.beanName="excelCreator"}wireBeans(e){this.columnModel=e.columnModel,this.columnNameService=e.columnNameService,this.funcColsService=e.funcColsService,this.valueService=e.valueService,this.stylingService=e.stylingService,this.gridSerializer=e.gridSerializer,this.gos=e.gos}postConstruct(){this.setBeans({gridSerializer:this.gridSerializer,gos:this.gos})}getMergedParams(e){const t=this.gos.get("defaultExcelExportParams");return Object.assign({},t,e)}export(e){if(this.isExportSuppressed()){(0,import_core218._warnOnce)("Export cancelled. Export is not allowed as per your configuration.");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,o=typeof a=="function"?a(this.gos.getGridCommonParams()):a;import_csv_export3.Downloader.download(this.getFileName(o),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){ExcelXlsxFactory.factoryMode=e}getFactoryMode(){return ExcelXlsxFactory.factoryMode}getSheetDataForExcel(e){const t=this.getMergedParams(e);return this.getData(t)}getMultipleSheetsAsExcel(e){return getMultipleSheetsAsExcel(e)}exportMultipleSheetsAsExcel(e){exportMultipleSheetsAsExcel(e)}getDefaultFileExtension(){return"xlsx"}createSerializingSession(e){const{columnModel:t,columnNameService:s,funcColsService:i,valueService:r,gos:a}=this,o={...e,columnModel:t,columnNameService:s,funcColsService:i,valueService:r,gos:a,suppressRowOutline:e.suppressRowOutline||e.skipRowGroups,headerRowHeight:e.headerRowHeight||e.rowHeight,baseExcelStyles:this.gos.get("excelStyles")||[],rightToLeft:e.rightToLeft??this.gos.get("enableRtl"),styleLinker:this.styleLinker.bind(this)};return new ExcelSerializingSession(o)}styleLinker(e){const{rowType:t,rowIndex:s,value:i,column:r,columnGroup:a,node:o}=e,n=t===import_csv_export3.RowType.HEADER,l=t===import_csv_export3.RowType.HEADER_GROUPING,c=n?r:a;let h=[];if(n||l)return h.push("header"),l&&h.push("headerGroup"),c&&(h=h.concat((0,import_core218._getHeaderClassesFromColDef)(c.getDefinition(),this.gos,r||null,a||null))),h;const d=this.gos.get("excelStyles"),u=["cell"];if(!d||!d.length)return u;const p=d.map(m=>m.id),g=r.getDefinition();return this.stylingService.processAllCellClasses(g,this.gos.addGridCommonParams({value:i,data:o.data,node:o,colDef:g,column:r,rowIndex:s}),m=>{p.indexOf(m)>-1&&u.push(m)}),u.sort((m,C)=>p.indexOf(m)<p.indexOf(C)?-1:1)}isExportSuppressed(){return this.gos.get("suppressExcelExport")}packageCompressedFile(e){return getMultipleSheetsAsExcelCompressed(e)}packageFile(e){return getMultipleSheetsAsExcel(e)}};function assertNotExcelMultiSheet(e){return e.excelCreator?.getFactoryMode()===import_core225.ExcelFactoryMode.MULTI_SHEET?((0,import_core225._warnOnce)("The Excel Exporter is currently on Multi Sheet mode. End that operation by calling 'api.getMultipleSheetAsExcel()' or 'api.exportMultipleSheetsAsExcel()'"),!1):!0}function getDataAsExcel(e,t){if(assertNotExcelMultiSheet(e))return e.excelCreator?.getDataAsExcel(t)}function exportDataAsExcel(e,t){assertNotExcelMultiSheet(e)&&e.excelCreator?.exportDataAsExcel(t)}function getSheetDataForExcel(e,t){return e.excelCreator?.setFactoryMode(import_core225.ExcelFactoryMode.MULTI_SHEET),e.excelCreator?.getSheetDataForExcel(t)}function getMultipleSheetsAsExcel2(e,t){return e.excelCreator?.getMultipleSheetsAsExcel(t)}function exportMultipleSheetsAsExcel2(e,t){e.excelCreator?.exportMultipleSheetsAsExcel(t)}var VERSION9="32.3.0",ExcelExportCoreModule=(0,import_core216._defineModule)({version:VERSION9,moduleName:`${import_core216.ModuleNames.ExcelExportModule}-core`,beans:[ExcelCreator],dependantModules:[import_csv_export2._CsvExportCoreModule,EnterpriseCoreModule]}),ExcelExportApiModule=(0,import_core216._defineModule)({version:VERSION9,moduleName:`${import_core216.ModuleNames.ExcelExportModule}-api`,apiFunctions:{getDataAsExcel,exportDataAsExcel,getSheetDataForExcel,getMultipleSheetsAsExcel:getMultipleSheetsAsExcel2,exportMultipleSheetsAsExcel:exportMultipleSheetsAsExcel2},dependantModules:[ExcelExportCoreModule]}),ExcelExportModule=(0,import_core216._defineModule)({version:VERSION9,moduleName:import_core216.ModuleNames.ExcelExportModule,dependantModules:[ExcelExportCoreModule,ExcelExportApiModule]}),import_core226=require("ag-grid-community"),import_core228=require("ag-grid-community"),import_core229=require("ag-grid-community"),import_core230=require("ag-grid-community"),import_core231=require("ag-grid-community"),import_core232=require("ag-grid-community"),AgFiltersToolPanelHeader=class extends import_core229.Component{constructor(){super(...arguments),this.eExpand=import_core229.RefPlaceholder,this.eFilterTextField=import_core229.RefPlaceholder}wireBeans(e){this.columnModel=e.columnModel}postConstruct(){this.setTemplate(`<div class="ag-filter-toolpanel-search" role="presentation">
|
|
374
374
|
<div data-ref="eExpand" class="ag-filter-toolpanel-expand"></div>
|
|
375
375
|
<ag-input-text-field data-ref="eFilterTextField" class="ag-filter-toolpanel-search-input"></ag-input-text-field>
|
|
376
376
|
</div>`,[import_core229.AgInputTextFieldSelector]);const e=this.localeService.getLocaleTextFunc();this.eFilterTextField.setAutoComplete(!1).setInputAriaLabel(e("ariaFilterColumnsInput","Filter Columns Input")).onValueChange(this.onSearchTextChanged.bind(this)),this.createExpandIcons(),this.setExpandState(0),this.addManagedElementListeners(this.eExpand,{click:this.onExpandClicked.bind(this)}),this.addManagedEventListeners({newColumnsLoaded:this.showOrHideOptions.bind(this)})}init(e){this.params=e,this.columnModel.isReady()&&this.showOrHideOptions()}createExpandIcons(){this.eExpand.appendChild(this.eExpandChecked=(0,import_core229._createIconNoSpan)("columnSelectOpen",this.gos)),this.eExpand.appendChild(this.eExpandUnchecked=(0,import_core229._createIconNoSpan)("columnSelectClosed",this.gos)),this.eExpand.appendChild(this.eExpandIndeterminate=(0,import_core229._createIconNoSpan)("columnSelectIndeterminate",this.gos))}showOrHideOptions(){const e=!this.params.suppressFilterSearch,t=!this.params.suppressExpandAll,s=this.localeService.getLocaleTextFunc();this.eFilterTextField.setInputPlaceholder(s("searchOoo","Search..."));const i=a=>a.getOriginalParent()&&a.isFilterAllowed(),r=this.columnModel.getCols().some(i);(0,import_core229._setDisplayed)(this.eFilterTextField.getGui(),e),(0,import_core229._setDisplayed)(this.eExpand,t&&r)}onSearchTextChanged(){this.onSearchTextChangedDebounced||(this.onSearchTextChangedDebounced=(0,import_core229._debounce)(()=>{this.dispatchLocalEvent({type:"searchChanged",searchText:this.eFilterTextField.getValue()})},300)),this.onSearchTextChangedDebounced()}onExpandClicked(){const e=this.currentExpandState===0?{type:"collapseAll"}:{type:"expandAll"};this.dispatchLocalEvent(e)}setExpandState(e){this.currentExpandState=e,(0,import_core229._setDisplayed)(this.eExpandChecked,this.currentExpandState===0),(0,import_core229._setDisplayed)(this.eExpandUnchecked,this.currentExpandState===1),(0,import_core229._setDisplayed)(this.eExpandIndeterminate,this.currentExpandState===2)}},AgFiltersToolPanelHeaderSelector={selector:"AG-FILTERS-TOOL-PANEL-HEADER",component:AgFiltersToolPanelHeader},ToolPanelFilterComp=class extends import_core231.Component{constructor(e,t){super(`
|
|
@@ -386,14 +386,14 @@ Please turn off ${t} to enable Excel table exports.`)}static getTableNameFromInd
|
|
|
386
386
|
</div>`,[AgGroupComponentSelector],{filterGroupComp:t}),this.setGroupTitle(),this.filterGroupComp.setAlignItems("stretch"),this.filterGroupComp.addCssClass(`ag-filter-toolpanel-group-level-${this.depth}`),this.filterGroupComp.getGui().style.setProperty("--ag-indentation-level",String(this.depth)),this.filterGroupComp.addCssClassToTitleBar(`ag-filter-toolpanel-group-level-${this.depth}-header`),this.childFilterComps.forEach(s=>{this.filterGroupComp.addItem(s),s.addCssClassToTitleBar(`ag-filter-toolpanel-group-level-${this.depth+1}-header`),s.getGui().style.setProperty("--ag-indentation-level",String(this.depth+1))}),this.refreshFilterClass(),this.addExpandCollapseListeners(),this.addFilterChangedListeners(),this.setupTooltip(),this.addInIcon("filter")}setupTooltip(){if(!this.showingColumn)return;const t=this.gos.get("tooltipShowMode")==="whenTruncated";let s;t&&(s=()=>{const a=this.filterGroupComp.getGui().querySelector(".ag-group-title");return a?a.scrollWidth>a.clientWidth:!0});const i=()=>{const r=this.columnGroup.getColDef().headerTooltip;this.setTooltip({newTooltipText:r,location:"filterToolPanelColumnGroup",shouldDisplayTooltip:s})};i(),this.addManagedEventListeners({newColumnsLoaded:i})}getTooltipParams(){const t=super.getTooltipParams();return t.location="filterToolPanelColumnGroup",t}addCssClassToTitleBar(t){this.filterGroupComp.addCssClassToTitleBar(t)}refreshFilters(t){this.childFilterComps.forEach(s=>{s instanceof ce?s.refreshFilters(t):s.refreshFilter(t)})}isColumnGroup(){return(0,import_core232.isProvidedColumnGroup)(this.columnGroup)}isExpanded(){return this.filterGroupComp.isExpanded()}getChildren(){return this.childFilterComps}getFilterGroupName(){return this.filterGroupName?this.filterGroupName:""}getFilterGroupId(){return this.columnGroup.getId()}hideGroupItem(t,s){this.filterGroupComp.hideItem(t,s)}hideGroup(t){this.setDisplayed(!t)}addInIcon(t){const s=(0,import_core232._createIconNoSpan)(t,this.gos);s&&s.classList.add("ag-filter-toolpanel-group-instance-header-icon"),this.filterGroupComp.addTitleBarWidget(s)}forEachToolPanelFilterChild(t){this.childFilterComps.forEach(s=>{s instanceof ToolPanelFilterComp&&t(s)})}addExpandCollapseListeners(){const t=this.isColumnGroup()?()=>this.expandedCallback():()=>this.forEachToolPanelFilterChild(i=>i.expand()),s=this.isColumnGroup()?()=>this.expandedCallback():()=>this.forEachToolPanelFilterChild(i=>i.collapse());this.addManagedListeners(this.filterGroupComp,{expanded:t,collapsed:s})}getColumns(){return(0,import_core232.isProvidedColumnGroup)(this.columnGroup)?this.columnGroup.getLeafColumns():[this.columnGroup]}addFilterChangedListeners(){this.getColumns().forEach(t=>{this.addManagedListeners(t,{filterChanged:()=>this.refreshFilterClass()})}),(0,import_core232.isProvidedColumnGroup)(this.columnGroup)||this.addManagedEventListeners({filterOpened:this.onFilterOpened.bind(this)})}refreshFilterClass(){const t=this.getColumns(),s=()=>t.some(i=>i.isFilterActive());this.filterGroupComp.addOrRemoveCssClass("ag-has-filter",s())}onFilterOpened(t){t.source==="COLUMN_MENU"&&t.column===this.columnGroup&&this.isExpanded()&&this.collapse()}expand(){this.filterGroupComp.toggleGroupExpand(!0)}collapse(){this.filterGroupComp.toggleGroupExpand(!1)}setGroupTitle(){this.filterGroupName=(0,import_core232.isProvidedColumnGroup)(this.columnGroup)?this.getColumnGroupName(this.columnGroup):this.getColumnName(this.columnGroup),this.filterGroupComp.setTitle(this.filterGroupName||"")}getColumnGroupName(t){return this.columnNameService.getDisplayNameForProvidedColumnGroup(null,t,"filterToolPanel")}getColumnName(t){return this.columnNameService.getDisplayNameForColumn(t,"filterToolPanel",!1)}destroyFilters(){this.childFilterComps=this.destroyBeans(this.childFilterComps),(0,import_core232._clearElement)(this.getGui())}destroy(){this.destroyFilters(),super.destroy()}},AgFiltersToolPanelList=class extends import_core230.Component{constructor(){super('<div class="ag-filter-list-panel"></div>'),this.initialised=!1,this.hasLoadedInitialState=!1,this.isInitialState=!1,this.filterGroupComps=[],this.suppressOnColumnsChanged=!1,this.onColumnsChangedPending=!1}wireBeans(e){this.toolPanelColDefService=e.toolPanelColDefService,this.columnModel=e.columnModel}init(e){this.initialised=!0;const t=this.gos.addGridCommonParams({suppressExpandAll:!1,suppressFilterSearch:!1,suppressSyncLayoutWithGrid:!1});(0,import_core230._mergeDeep)(t,e),this.params=t,this.params.suppressSyncLayoutWithGrid||this.addManagedEventListeners({columnMoved:()=>this.onColumnsChanged()}),this.addManagedEventListeners({newColumnsLoaded:()=>this.onColumnsChanged(),toolPanelVisibleChanged:s=>{s.key==="filters"&&this.refreshFilters(s.visible)},dragStarted:()=>{this.suppressOnColumnsChanged=!0},dragStopped:()=>{this.suppressOnColumnsChanged=!1,this.onColumnsChangedPending&&(this.onColumnsChangedPending=!1,this.onColumnsChanged())}}),this.columnModel.isReady()&&this.onColumnsChanged()}onColumnsChanged(){if(this.suppressOnColumnsChanged){this.onColumnsChangedPending=!0;return}const e=this.columnModel.isPivotMode();!this.params.suppressSyncLayoutWithGrid&&!e?this.syncFilterLayout():this.buildTreeFromProvidedColumnDefs(),this.refreshAriaLabel()}syncFilterLayout(){this.toolPanelColDefService.syncLayoutWithGrid(this.setFiltersLayout.bind(this)),this.refreshAriaLabel()}buildTreeFromProvidedColumnDefs(){const e=this.columnModel.getColDefColTree();this.recreateFilters(e)}setFiltersLayout(e){const t=this.toolPanelColDefService.createColumnTree(e);this.recreateFilters(t)}recreateFilters(e){const t=(0,import_core230._getActiveDomElement)(this.gos);this.hasLoadedInitialState||(this.hasLoadedInitialState=!0,this.isInitialState=!!this.params.initialState);const s=this.getExpansionState();this.destroyFilters(),this.filterGroupComps=this.recursivelyAddComps(e,0,s);const i=this.filterGroupComps.length;i&&(this.filterGroupComps.forEach(r=>this.appendChild(r)),this.setFirstAndLastVisible(0,i-1)),(0,import_core230._exists)(this.searchFilterText)&&this.searchFilters(this.searchFilterText),this.fireExpandedEvent(),this.getGui().contains(t)&&t.focus(),this.isInitialState=!1,this.refreshAriaLabel()}recursivelyAddComps(e,t,s){return(0,import_core230._flatten)(e.map(i=>{if((0,import_core230.isProvidedColumnGroup)(i))return(0,import_core230._flatten)(this.recursivelyAddFilterGroupComps(i,t,s));const r=i;if(!this.shouldDisplayFilter(r))return[];const a=t===0,o=new ToolPanelFilterComp(a,()=>this.onFilterExpanded());if(this.createBean(o),o.setColumn(r),s.get(r.getId())&&o.expand(),t>0)return o;const n=this.createBean(new ToolPanelFilterGroupComp(r,[o],this.onGroupExpanded.bind(this),t,!0));return n.addCssClassToTitleBar("ag-filter-toolpanel-header"),s.get(n.getFilterGroupId())||n.collapse(),n}))}refreshAriaLabel(){const e=this.localeService.getLocaleTextFunc(),t=e("ariaFilterPanelList","Filter List"),s=e("filters","Filters"),l=this.getGui().querySelectorAll(".ag-filter-toolpanel-group-item:not(.ag-filter-toolpanel-group-wrapper, .ag-hidden)").length;(0,import_core230._setAriaLabel)(this.getAriaElement(),`${t} ${l} ${s}`)}recursivelyAddFilterGroupComps(e,t,s){if(!this.filtersExistInChildren(e.getChildren()))return;const i=e.getColGroupDef();if(i&&i.suppressFiltersToolPanel)return[];const r=e.isPadding()?t:t+1,a=(0,import_core230._flatten)(this.recursivelyAddComps(e.getChildren(),r,s));if(e.isPadding())return a;const o=new ToolPanelFilterGroupComp(e,a,this.onGroupExpanded.bind(this),t,!1);this.createBean(o),o.addCssClassToTitleBar("ag-filter-toolpanel-header");const n=s.get(o.getFilterGroupId());return(this.isInitialState&&!n||n===!1)&&o.collapse(),[o]}filtersExistInChildren(e){return e.some(t=>(0,import_core230.isProvidedColumnGroup)(t)?this.filtersExistInChildren(t.getChildren()):this.shouldDisplayFilter(t))}shouldDisplayFilter(e){const t=e.getColDef()&&e.getColDef().suppressFiltersToolPanel;return e.isFilterAllowed()&&!t}getExpansionState(){const e=new Map;if(this.isInitialState){const{expandedColIds:s,expandedGroupIds:i}=this.params.initialState;return s.forEach(r=>e.set(r,!0)),i.forEach(r=>e.set(r,!0)),e}const t=s=>{e.set(s.getFilterGroupId(),s.isExpanded()),s.getChildren().forEach(i=>{i instanceof ToolPanelFilterGroupComp?t(i):e.set(i.getColumn().getId(),i.isExpanded())})};return this.filterGroupComps.forEach(t),e}refresh(){}setVisible(e){super.setDisplayed(e),e&&!this.initialised&&this.init(this.params)}expandFilterGroups(e,t){const s=[],i=r=>{const a=r.getFilterGroupId();(!t||(0,import_core230._includes)(t,a))&&(e&&r.isColumnGroup()?r.expand():r.collapse(),s.push(a)),r.getChildren().forEach(n=>{n instanceof ToolPanelFilterGroupComp&&i(n)})};if(this.filterGroupComps.forEach(i),this.onGroupExpanded(),t){const r=t.filter(a=>s.indexOf(a)<0);r.length>0&&(0,import_core230._warnOnce)("unable to find groups for these supplied groupIds:",r)}}expandFilters(e,t){const s=[],i=r=>{if(r instanceof ToolPanelFilterGroupComp){let n=!1;return r.getChildren().forEach(l=>{i(l)&&(e?(r.expand(),n=!0):r.isColumnGroup()||r.collapse())}),n}const a=r.getColumn().getColId(),o=!t||(0,import_core230._includes)(t,a);return o&&(e?r.expand():r.collapse(),s.push(a)),o};if(this.filterGroupComps.forEach(i),this.onGroupExpanded(),t){const r=t.filter(a=>s.indexOf(a)<0);r.length>0&&(0,import_core230._warnOnce)("unable to find columns for these supplied colIds:"+r)}}onGroupExpanded(){this.fireExpandedEvent()}onFilterExpanded(){this.dispatchLocalEvent({type:"filterExpanded"})}fireExpandedEvent(){let e=0,t=0;const s=r=>{r.isColumnGroup()&&(r.isExpanded()?e++:t++,r.getChildren().forEach(a=>{a instanceof ToolPanelFilterGroupComp&&s(a)}))};this.filterGroupComps.forEach(s);let i;e>0&&t>0?i=2:t>0?i=1:i=0,this.dispatchLocalEvent({type:"groupExpanded",state:i})}performFilterSearch(e){this.searchFilterText=(0,import_core230._exists)(e)?e.toLowerCase():null,this.searchFilters(this.searchFilterText)}searchFilters(e){const t=a=>!(0,import_core230._exists)(e)||a.toLowerCase().indexOf(e)!==-1,s=(a,o)=>{if(!(a instanceof ToolPanelFilterGroupComp))return t(a.getColumnFilterName()||"");const n=a.getChildren(),l=t(a.getFilterGroupName()),c=o||l;if(c){a.hideGroup(!1);for(let d=0;d<n.length;d++)s(n[d],c),a.hideGroupItem(!1,d);return!0}let h=!1;return n.forEach((d,u)=>{const p=s(d,o);a.hideGroupItem(!p,u),p&&(h=!0)}),a.hideGroup(!h),h};let i,r;this.filterGroupComps.forEach((a,o)=>{s(a,!1),i===void 0?a.containsCssClass("ag-hidden")||(i=o,r=o):!a.containsCssClass("ag-hidden")&&r!==o&&(r=o)}),this.setFirstAndLastVisible(i,r),this.refreshAriaLabel()}setFirstAndLastVisible(e,t){this.filterGroupComps.forEach((s,i)=>{s.removeCssClass("ag-first-group-visible"),s.removeCssClass("ag-last-group-visible"),i===e&&s.addCssClass("ag-first-group-visible"),i===t&&s.addCssClass("ag-last-group-visible")})}refreshFilters(e){this.filterGroupComps.forEach(t=>t.refreshFilters(e))}getExpandedFiltersAndGroups(){const e=[],t=new Set,s=i=>{if(i instanceof ToolPanelFilterGroupComp){i.getChildren().forEach(a=>s(a));const r=i.getFilterGroupId();i.isExpanded()&&!t.has(r)&&e.push(r)}else i.isExpanded()&&t.add(i.getColumn().getColId())};return this.filterGroupComps.forEach(s),{expandedGroupIds:e,expandedColIds:Array.from(t)}}destroyFilters(){this.filterGroupComps=this.destroyBeans(this.filterGroupComps),(0,import_core230._clearElement)(this.getGui())}destroy(){this.destroyFilters(),super.destroy()}},AgFiltersToolPanelListSelector={selector:"AG-FILTERS-TOOL-PANEL-LIST",component:AgFiltersToolPanelList},FiltersToolPanel=class extends import_core228.Component{constructor(){super(`<div class="ag-filter-toolpanel">
|
|
387
387
|
<ag-filters-tool-panel-header data-ref="filtersToolPanelHeaderPanel"></ag-filters-tool-panel-header>
|
|
388
388
|
<ag-filters-tool-panel-list data-ref="filtersToolPanelListPanel"></ag-filters-tool-panel-list>
|
|
389
|
-
</div>`,[AgFiltersToolPanelHeaderSelector,AgFiltersToolPanelListSelector]),this.filtersToolPanelHeaderPanel=import_core228.RefPlaceholder,this.filtersToolPanelListPanel=import_core228.RefPlaceholder,this.initialised=!1,this.listenerDestroyFuncs=[]}init(e){this.initialised&&(this.listenerDestroyFuncs.forEach(r=>r()),this.listenerDestroyFuncs=[]),this.initialised=!0;const t=this.gos.addGridCommonParams({suppressExpandAll:!1,suppressFilterSearch:!1,suppressSyncLayoutWithGrid:!1});this.params={...t,...e},this.filtersToolPanelHeaderPanel.init(this.params),this.filtersToolPanelListPanel.init(this.params);const s=this.params.suppressExpandAll,i=this.params.suppressFilterSearch;s&&i&&this.filtersToolPanelHeaderPanel.setDisplayed(!1),this.listenerDestroyFuncs.push(...this.addManagedListeners(this.filtersToolPanelHeaderPanel,{expandAll:this.onExpandAll.bind(this),collapseAll:this.onCollapseAll.bind(this),searchChanged:this.onSearchChanged.bind(this)}),...this.addManagedListeners(this.filtersToolPanelListPanel,{filterExpanded:this.onFilterExpanded.bind(this),groupExpanded:this.onGroupExpanded.bind(this)}))}setVisible(e){super.setDisplayed(e),e&&!this.initialised&&this.init(this.params)}onExpandAll(){this.filtersToolPanelListPanel.expandFilterGroups(!0)}onCollapseAll(){this.filtersToolPanelListPanel.expandFilterGroups(!1)}onSearchChanged(e){this.filtersToolPanelListPanel.performFilterSearch(e.searchText)}setFilterLayout(e){this.filtersToolPanelListPanel.setFiltersLayout(e)}onFilterExpanded(){this.params.onStateUpdated()}onGroupExpanded(e){this.filtersToolPanelHeaderPanel.setExpandState(e.state),this.params.onStateUpdated()}expandFilterGroups(e){this.filtersToolPanelListPanel.expandFilterGroups(!0,e)}collapseFilterGroups(e){this.filtersToolPanelListPanel.expandFilterGroups(!1,e)}expandFilters(e){this.filtersToolPanelListPanel.expandFilters(!0,e)}collapseFilters(e){this.filtersToolPanelListPanel.expandFilters(!1,e)}syncLayoutWithGrid(){this.filtersToolPanelListPanel.syncFilterLayout()}refresh(e){return this.init(e),!0}getState(){return this.filtersToolPanelListPanel.getExpandedFiltersAndGroups()}destroy(){super.destroy()}},VERSION10="32.
|
|
389
|
+
</div>`,[AgFiltersToolPanelHeaderSelector,AgFiltersToolPanelListSelector]),this.filtersToolPanelHeaderPanel=import_core228.RefPlaceholder,this.filtersToolPanelListPanel=import_core228.RefPlaceholder,this.initialised=!1,this.listenerDestroyFuncs=[]}init(e){this.initialised&&(this.listenerDestroyFuncs.forEach(r=>r()),this.listenerDestroyFuncs=[]),this.initialised=!0;const t=this.gos.addGridCommonParams({suppressExpandAll:!1,suppressFilterSearch:!1,suppressSyncLayoutWithGrid:!1});this.params={...t,...e},this.filtersToolPanelHeaderPanel.init(this.params),this.filtersToolPanelListPanel.init(this.params);const s=this.params.suppressExpandAll,i=this.params.suppressFilterSearch;s&&i&&this.filtersToolPanelHeaderPanel.setDisplayed(!1),this.listenerDestroyFuncs.push(...this.addManagedListeners(this.filtersToolPanelHeaderPanel,{expandAll:this.onExpandAll.bind(this),collapseAll:this.onCollapseAll.bind(this),searchChanged:this.onSearchChanged.bind(this)}),...this.addManagedListeners(this.filtersToolPanelListPanel,{filterExpanded:this.onFilterExpanded.bind(this),groupExpanded:this.onGroupExpanded.bind(this)}))}setVisible(e){super.setDisplayed(e),e&&!this.initialised&&this.init(this.params)}onExpandAll(){this.filtersToolPanelListPanel.expandFilterGroups(!0)}onCollapseAll(){this.filtersToolPanelListPanel.expandFilterGroups(!1)}onSearchChanged(e){this.filtersToolPanelListPanel.performFilterSearch(e.searchText)}setFilterLayout(e){this.filtersToolPanelListPanel.setFiltersLayout(e)}onFilterExpanded(){this.params.onStateUpdated()}onGroupExpanded(e){this.filtersToolPanelHeaderPanel.setExpandState(e.state),this.params.onStateUpdated()}expandFilterGroups(e){this.filtersToolPanelListPanel.expandFilterGroups(!0,e)}collapseFilterGroups(e){this.filtersToolPanelListPanel.expandFilterGroups(!1,e)}expandFilters(e){this.filtersToolPanelListPanel.expandFilters(!0,e)}collapseFilters(e){this.filtersToolPanelListPanel.expandFilters(!1,e)}syncLayoutWithGrid(){this.filtersToolPanelListPanel.syncFilterLayout()}refresh(e){return this.init(e),!0}getState(){return this.filtersToolPanelListPanel.getExpandedFiltersAndGroups()}destroy(){super.destroy()}},VERSION10="32.3.0",FiltersToolPanelModule=(0,import_core226._defineModule)({version:VERSION10,moduleName:import_core226.ModuleNames.FiltersToolPanelModule,beans:[],userComponents:[{name:"agFiltersToolPanel",classImp:FiltersToolPanel}],dependantModules:[SideBarModule,EnterpriseCoreModule,import_core226._ColumnFilterModule]}),import_core234=require("ag-grid-community"),import_core236=require("ag-grid-community"),import_core237=require("ag-grid-community"),import_core238=require("ag-grid-community"),DetailCellRendererCtrl=class extends import_core237.BeanStub{constructor(){super(...arguments),this.loadRowDataVersion=0}wireBeans(e){this.focusService=e.focusService,this.rowPositionUtils=e.rowPositionUtils,this.environment=e.environment}init(e,t){this.params=t,this.comp=e,t.pinned==null&&(this.setAutoHeightClasses(),this.setupRefreshStrategy(),this.addThemeToDetailGrid(),this.createDetailGrid(),this.loadRowData(),this.addManagedEventListeners({fullWidthRowFocused:this.onFullWidthRowFocused.bind(this)}))}onFullWidthRowFocused(e){const t=this.params,s={rowIndex:t.node.rowIndex,rowPinned:t.node.rowPinned},i={rowIndex:e.rowIndex,rowPinned:e.rowPinned};this.rowPositionUtils.sameRow(s,i)&&this.focusService.focusInto(this.comp.getGui(),e.fromBelow)}setAutoHeightClasses(){const e=this.gos.get("detailRowAutoHeight"),t=e?"ag-details-row-auto-height":"ag-details-row-fixed-height",s=e?"ag-details-grid-auto-height":"ag-details-grid-fixed-height";this.comp.addOrRemoveCssClass(t,!0),this.comp.addOrRemoveDetailGridCssClass(s,!0)}setupRefreshStrategy(){const e=this.params.refreshStrategy;if(e=="everything"||e=="nothing"||e=="rows"){this.refreshStrategy=e;return}e!=null&&(0,import_core237._warnOnce)("invalid cellRendererParams.refreshStrategy = '"+e+"' supplied, defaulting to refreshStrategy = 'rows'."),this.refreshStrategy="rows"}addThemeToDetailGrid(){for(const e of this.environment.getThemeClasses())this.comp.addOrRemoveDetailGridCssClass(e,!0)}createDetailGrid(){if((0,import_core237._missing)(this.params.detailGridOptions)){(0,import_core237._warnOnce)("could not find detail grid options for master detail, please set gridOptions.detailCellRendererParams.detailGridOptions");return}const e={...this.params.detailGridOptions};this.gos.get("detailRowAutoHeight")&&(e.domLayout="autoHeight"),e.theme||(e.theme=this.gos.get("theme")),this.comp.setDetailGrid(e)}registerDetailWithMaster(e){const t=this.params.node.id,s=this.params.api,i={id:t,api:e},r=this.params.node;s.isDestroyed()||(s.addDetailGridInfo(t,i),r.detailGridInfo=i,this.addDestroyFunc(()=>{r.detailGridInfo===i&&(s.isDestroyed()||s.removeDetailGridInfo(t),r.detailGridInfo=null)}))}loadRowData(){this.loadRowDataVersion++;const e=this.loadRowDataVersion;if(this.params.detailGridOptions?.rowModelType==="serverSide"){this.params.node.detailGridInfo?.api?.refreshServerSide({purge:!0});return}const t=this.params.getDetailRowData;if(!t){(0,import_core237._warnOnce)("could not find getDetailRowData for master / detail, please set gridOptions.detailCellRendererParams.getDetailRowData");return}const s=r=>{this.loadRowDataVersion===e&&this.comp.setRowData(r)},i={node:this.params.node,data:this.params.node.data,successCallback:s,context:this.gos.getGridCommonParams().context};t(i)}refresh(){switch(this.refreshStrategy){case"nothing":return!0;case"everything":return!1}return this.loadRowData(),!0}},DetailFrameworkComponentWrapper=class{constructor(e){this.parentWrapper=e}wrap(e,t,s,i){return this.parentWrapper.wrap(e,t,s,i)}},DetailCellRenderer=class extends import_core236.Component{constructor(){super(...arguments),this.eDetailGrid=import_core236.RefPlaceholder}wireBeans(e){this.context=e.context}init(e){this.params=e,this.selectAndSetTemplate();const t={addOrRemoveCssClass:(s,i)=>this.addOrRemoveCssClass(s,i),addOrRemoveDetailGridCssClass:(s,i)=>this.eDetailGrid.classList.toggle(s,i),setDetailGrid:s=>this.setDetailGrid(s),setRowData:s=>this.setRowData(s),getGui:()=>this.eDetailGrid};this.ctrl=this.createManagedBean(new DetailCellRendererCtrl),this.ctrl.init(t,e)}refresh(){return this.ctrl&&this.ctrl.refresh()}destroy(){super.destroy()}selectAndSetTemplate(){if(this.params.pinned){this.setTemplate('<div class="ag-details-row"></div>');return}const e=()=>{this.setTemplate(`<div class="ag-details-row" role="gridcell">
|
|
390
390
|
<div data-ref="eDetailGrid" class="ag-details-grid" role="presentation"></div>
|
|
391
|
-
</div>`)};if((0,import_core236._missing)(this.params.template))e();else if(typeof this.params.template=="string")this.setTemplate(this.params.template,[]);else if(typeof this.params.template=="function"){const t=this.params.template,s=t(this.params);this.setTemplate(s,[])}else(0,import_core236._warnOnce)("detailCellRendererParams.template should be function or string"),e();this.eDetailGrid==null&&(0,import_core236._warnOnce)('Reference to eDetailGrid was missing from the details template. Please add data-ref="eDetailGrid" to the template.')}setDetailGrid(e){if(!this.eDetailGrid)return;const t=this.context.getBean("frameworkComponentWrapper"),s=new DetailFrameworkComponentWrapper(t),i=this.getFrameworkOverrides(),r=(0,import_core236.createGrid)(this.eDetailGrid,e,{frameworkOverrides:i,providedBeanInstances:{frameworkComponentWrapper:s},modules:import_core236.ModuleRegistry.__getGridRegisteredModules(this.params.api.getGridId())});this.detailApi=r,this.ctrl.registerDetailWithMaster(r),this.addDestroyFunc(()=>{r?.destroy()})}setRowData(e){this.detailApi&&this.detailApi.setGridOption("rowData",e)}},DetailGridApiService=class extends import_core238.BeanStub{constructor(){super(...arguments),this.beanName="detailGridApiService",this.detailGridInfoMap={}}addDetailGridInfo(e,t){this.detailGridInfoMap[e]=t}removeDetailGridInfo(e){delete this.detailGridInfoMap[e]}getDetailGridInfo(e){return this.detailGridInfoMap[e]}forEachDetailGridInfo(e){let t=0;(0,import_core238._iterateObject)(this.detailGridInfoMap,(s,i)=>{(0,import_core238._exists)(i)&&(e(i,t),t++)})}destroy(){this.detailGridInfoMap={},super.destroy()}};function addDetailGridInfo(e,t,s){e.detailGridApiService?.addDetailGridInfo(t,s)}function removeDetailGridInfo(e,t){e.detailGridApiService?.removeDetailGridInfo(t)}function getDetailGridInfo(e,t){return e.detailGridApiService?.getDetailGridInfo(t)}function forEachDetailGridInfo(e,t){e.detailGridApiService?.forEachDetailGridInfo(t)}var VERSION11="32.2.2",MasterDetailCoreModule=(0,import_core234._defineModule)({version:VERSION11,moduleName:`${import_core234.ModuleNames.MasterDetailModule}-core`,userComponents:[{name:"agGroupRowRenderer",classImp:GroupCellRenderer},{name:"agGroupCellRenderer",classImp:GroupCellRenderer},{name:"agDetailCellRenderer",classImp:DetailCellRenderer}],controllers:[{name:"detailCellRenderer",classImp:DetailCellRendererCtrl},{name:"groupCellRendererCtrl",classImp:GroupCellRendererCtrl}],dependantModules:[EnterpriseCoreModule]}),MasterDetailApiModule=(0,import_core234._defineModule)({version:VERSION11,moduleName:`${import_core234.ModuleNames.MasterDetailModule}-api`,beans:[DetailGridApiService],apiFunctions:{addDetailGridInfo,removeDetailGridInfo,getDetailGridInfo,forEachDetailGridInfo},dependantModules:[MasterDetailCoreModule]}),MasterDetailModule=(0,import_core234._defineModule)({version:VERSION11,moduleName:import_core234.ModuleNames.MasterDetailModule,dependantModules:[MasterDetailCoreModule,MasterDetailApiModule]}),import_core239=require("ag-grid-community"),import_core241=require("ag-grid-community"),import_core242=require("ag-grid-community"),import_core244=require("ag-grid-community"),import_core246=require("ag-grid-community"),import_core248=require("ag-grid-community"),import_core250=require("ag-grid-community"),import_core251=require("ag-grid-community"),ChartMenuItemMapper=class he extends import_core241.BeanStub{constructor(){super(...arguments),this.beanName="chartMenuItemMapper"}wireBeans(t){this.chartService=t.chartService}getChartItems(t){if(!this.chartService){this.gos.assertModuleRegistered(import_core241.ModuleNames.GridChartsModule,`the Context Menu key "${t}"`);return}const s=t==="pivotChart"?new PivotMenuItemMapper(this.gos,this.chartService,this.localeService):new RangeMenuItemMapper(this.gos,this.chartService,this.localeService),i=this.chartService.isEnterprise();let r=s.getMenuItem();if(r&&r.subMenu&&!i){const o=n=>({...n,subMenu:n.subMenu?.filter(l=>!l._enterprise).map(l=>o(l))});r=o(r)}const a=this.gos.get("chartToolPanelsDef")?.settingsPanel?.chartGroupsDef;return a&&(r=he.filterAndOrderChartMenu(r,a,s.getConfigLookup())),this.cleanInternals(r)}cleanInternals(t){if(!t)return t;const s=i=>(delete i?._key,delete i?._enterprise,i?.subMenu?.forEach(r=>s(r)),i);return s(t)}static buildLookup(t){const s={},i=r=>{s[r._key]=r,r.subMenu&&r.subMenu.forEach(a=>i(a))};return i(t),s}static filterAndOrderChartMenu(t,s,i){const r=this.buildLookup(t),a={...t,subMenu:[]};if(Object.entries(s).forEach(([o,n])=>{const l=i[o];if(l===null)return;if(l==null){(0,import_core241._warnOnce)(`invalid chartGroupsDef config '${o}'`);return}const c=r[l._key];if(c)if(c.subMenu){const h=n.map(d=>{const u=l[d];if(u==null){(0,import_core241._warnOnce)(`invalid chartGroupsDef config '${o}.${d}'`);return}return r[u]}).filter(d=>d!==void 0);h.length>0&&(c.subMenu=h,a.subMenu?.push(c))}else a.subMenu?.push(c)}),a.subMenu?.length!=0)return a}},PivotMenuItemMapper=class{constructor(e,t,s){this.gos=e,this.chartService=t,this.localeService=s}getMenuItem(){const e=this.localeService.getLocaleTextFunc(),t=(s,i,r,a,o=!1)=>({name:e(s,i),action:()=>this.chartService.createPivotChart({chartType:r}),_key:a,_enterprise:o});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")]},t("line","Line‎","line","pivotLineChart"),{_key:"pivotXYChart",name:e("xyChart","X Y (Scatter)"),subMenu:[t("scatter","Scatter‎","scatter","pivotScatter"),t("bubble","Bubble‎","bubble","pivotBubble")]},{_key:"pivotAreaChart",name:e("areaChart","Area"),subMenu:[t("area","Area‎","area","pivotArea"),t("stackedArea","Stacked‎","stackedArea","pivotStackedArea"),t("normalizedArea","100% Stacked‎","normalizedArea","pivotNormalizedArea")]},{_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:"pivotCombinationChart",name:e("combinationChart","Combination"),subMenu:[t("columnLineCombo","Column & Line‎","columnLineCombo","pivotColumnLineCombo"),t("AreaColumnCombo","Area & Column‎","areaColumnCombo","pivotAreaColumnCombo")]}],icon:(0,import_core241._createIconNoSpan)("chart",this.gos,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"},scatterGroup:{_key:"pivotXYChart",bubble:"pivotBubble",scatter:"pivotScatter"},areaGroup:{_key:"pivotAreaChart",area:"pivotArea",stackedArea:"pivotStackedArea",normalizedArea:"pivotNormalizedArea"},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},polarGroup:null,specializedGroup:null}}},RangeMenuItemMapper=class{constructor(e,t,s){this.gos=e,this.chartService=t,this.localeService=s}getMenuItem(){const e=this.localeService.getLocaleTextFunc(),t=(s,i,r,a,o=!1)=>({name:e(s,i),action:()=>this.chartService.createChartFromCurrentRange(r),_key:a,_enterprise:o});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"},t("line","Line‎","line","rangeLineChart"),{name:e("xyChart","X Y (Scatter)"),subMenu:[t("scatter","Scatter‎","scatter","rangeScatter"),t("bubble","Bubble‎","bubble","rangeBubble")],_key:"rangeXYChart"},{name:e("areaChart","Area"),subMenu:[t("area","Area‎","area","rangeArea"),t("stackedArea","Stacked‎","stackedArea","rangeStackedArea"),t("normalizedArea","100% Stacked‎","normalizedArea","rangeNormalizedArea")],_key:"rangeAreaChart"},{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("combinationChart","Combination"),subMenu:[t("columnLineCombo","Column & Line‎","columnLineCombo","rangeColumnLineCombo"),t("AreaColumnCombo","Area & Column‎","areaColumnCombo","rangeAreaColumnCombo")],_key:"rangeCombinationChart"}],icon:(0,import_core241._createIconNoSpan)("chart",this.gos,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"},scatterGroup:{_key:"rangeXYChart",bubble:"rangeBubble",scatter:"rangeScatter"},areaGroup:{_key:"rangeAreaChart",area:"rangeArea",stackedArea:"rangeStackedArea",normalizedArea:"rangeNormalizedArea"},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"},combinationGroup:{_key:"rangeCombinationChart",columnLineCombo:"rangeColumnLineCombo",areaColumnCombo:"rangeAreaColumnCombo",customCombo:null}}}},ColumnChooserFactory=class extends import_core242.BeanStub{constructor(){super(...arguments),this.beanName="columnChooserFactory"}wireBeans(e){this.focusService=e.focusService,this.menuUtils=e.menuUtils,this.visibleColsService=e.visibleColsService}createColumnSelectPanel(e,t,s,i){const r=e.createManagedBean(new AgPrimaryCols),a=i??t?.getColDef().columnChooserParams??t?.getColDef().columnsMenuParams??{},{contractColumnSelection:o,suppressColumnExpandAll:n,suppressColumnFilter:l,suppressColumnSelectAll:c,suppressSyncLayoutWithGrid:h,columnLayout:d}=a;return r.init(!!s,this.gos.addGridCommonParams({suppressColumnMove:!1,suppressValues:!1,suppressPivots:!1,suppressRowGroups:!1,suppressPivotMode:!1,contractColumnSelection:!!o,suppressColumnExpandAll:!!n,suppressColumnFilter:!!l,suppressColumnSelectAll:!!c,suppressSyncLayoutWithGrid:!!d||!!h,onStateUpdated:()=>{}}),"columnMenu"),d&&r.setColumnLayout(d),r}showColumnChooser({column:e,chooserParams:t,eventSource:s}){this.hideActiveColumnChooser();const i=this.createColumnSelectPanel(this,e,!0,t),r=this.localeService.getLocaleTextFunc(),a=this.visibleColsService.getAllCols().indexOf(e),o=e?this.focusService.getFocusedHeader():null;this.activeColumnChooserDialog=this.createBean(new AgDialog({title:r("chooseColumns","Choose Columns"),component:i,width:300,height:300,resizable:!0,movable:!0,centered:!0,closable:!0,afterGuiAttached:()=>{this.focusService.findNextFocusableElement(i.getGui())?.focus({preventScroll:!0}),this.dispatchVisibleChangedEvent(!0,e)},closedCallback:n=>{const l=this.activeColumnChooser.getGui();this.destroyBean(this.activeColumnChooser),this.activeColumnChooser=void 0,this.activeColumnChooserDialog=void 0,this.dispatchVisibleChangedEvent(!1,e),e&&this.menuUtils.restoreFocusOnClose({column:e,headerPosition:o,columnIndex:a,eventSource:s},l,n,!0)},postProcessPopupParams:{type:"columnChooser",column:e,eventSource:s}})),this.activeColumnChooser=i}hideActiveColumnChooser(){this.activeColumnChooserDialog&&this.destroyBean(this.activeColumnChooserDialog)}dispatchVisibleChangedEvent(e,t){this.eventService.dispatchEvent({type:"columnMenuVisibleChanged",visible:e,switchingTab:!1,key:"columnChooser",column:t??null})}},MENU_ITEM_SEPARATOR="separator",ColumnMenuFactory=class extends import_core244.BeanStub{constructor(){super(...arguments),this.beanName="columnMenuFactory"}wireBeans(e){this.menuItemMapper=e.menuItemMapper,this.columnModel=e.columnModel,this.funcColsService=e.funcColsService,this.menuService=e.menuService}createMenu(e,t,s,i){const r=e.createManagedBean(new AgMenuList(0,{column:s??null,node:null,value:null})),a=this.menuItemMapper.mapWithStockItems(t,s??null,i,"columnMenu");return r.addMenuItems(a),r}getMenuItems(e,t){const s=this.getDefaultMenuOptions(e);let i;const r=e?.getColDef().mainMenuItems;if(Array.isArray(r))i=r;else if(typeof r=="function")i=r(this.gos.addGridCommonParams({column:e,defaultItems:s}));else{const a=this.gos.getCallback("getMainMenuItems");a&&e?i=a({column:e,defaultItems:s}):i=s}return(0,import_core244._removeRepeatsFromArray)(i,MENU_ITEM_SEPARATOR),i}getDefaultMenuOptions(e){const t=[],s=this.menuService.isLegacyMenuEnabled();if(!e)return s||t.push("columnChooser"),t.push("resetColumns"),t;const i=!e.getColDef().lockPinned,r=this.funcColsService.getRowGroupColumns().length,a=r>0,o=e.isAllowValue(),n=e.isAllowRowGroup(),l=e.isPrimary(),c=this.columnModel.isPivotMode(),h=(0,import_core244._isClientSideRowModel)(this.gos),d=this.gos.get("treeData"),u=l&&a&&o||!l;if(!s&&e.isSortable()){const m=e.getSort();m!=="asc"&&t.push("sortAscending"),m!=="desc"&&t.push("sortDescending"),m&&t.push("sortUnSort"),t.push(MENU_ITEM_SEPARATOR)}return this.menuService.isFilterMenuItemEnabled(e)&&(t.push("columnFilter"),t.push(MENU_ITEM_SEPARATOR)),i&&t.push("pinSubMenu"),u&&t.push("valueAggSubMenu"),(i||u)&&t.push(MENU_ITEM_SEPARATOR),t.push("autoSizeThis"),t.push("autoSizeAll"),t.push(MENU_ITEM_SEPARATOR),e.getColDef().showRowGroup?t.push("rowUnGroup"):n&&e.isPrimary()&&(e.isRowGroupActive()?this.columnModel.isColGroupLocked(e)||t.push("rowUnGroup"):t.push("rowGroup")),t.push(MENU_ITEM_SEPARATOR),s||t.push("columnChooser"),t.push("resetColumns"),h&&(d||r>(c?1:0))&&(t.push("expandAll"),t.push("contractAll")),t}},CSS_MENU="ag-menu",CSS_CONTEXT_MENU_OPEN="ag-context-menu-open",ContextMenuFactory=class extends import_core246.BeanStub{constructor(){super(...arguments),this.beanName="contextMenuFactory"}wireBeans(e){this.popupService=e.popupService,this.ctrlsService=e.ctrlsService,this.columnModel=e.columnModel,this.menuUtils=e.menuUtils,this.rangeService=e.rangeService,this.focusService=e.focusService}hideActiveMenu(){this.destroyBean(this.activeMenu)}getMenuItems(e,t,s){const i=[];if((0,import_core246._exists)(e)&&this.gos.isModuleRegistered(import_core246.ModuleNames.ClipboardModule)&&t&&(this.gos.get("suppressCutToClipboard")||i.push("cut"),i.push("copy","copyWithHeaders","copyWithGroupHeaders","paste","separator")),this.gos.get("enableCharts")&&this.gos.isModuleRegistered(import_core246.ModuleNames.GridChartsModule)&&(this.columnModel.isPivotMode()&&i.push("pivotChart"),this.rangeService&&!this.rangeService.isEmpty()&&i.push("chartRange")),(0,import_core246._exists)(e)){const n=!this.gos.isModuleRegistered(import_core246.ModuleNames.CsvExportModule),l=!this.gos.isModuleRegistered(import_core246.ModuleNames.ExcelExportModule),c=this.gos.get("suppressExcelExport")||l,h=this.gos.get("suppressCsvExport")||n;!(0,import_core246._isIOSUserAgent)()&&(!c||!h)&&i.push("export")}const r=i.length?i:void 0,a=t?.getColDef().contextMenuItems;if(Array.isArray(a))return a;if(typeof a=="function")return a(this.gos.addGridCommonParams({column:t,node:e,value:s,defaultItems:r}));const o=this.gos.getCallback("getContextMenuItems");return o?o({column:t,node:e,value:s,defaultItems:r}):i}onContextMenu(e,t,s,i,r,a){this.menuUtils.onContextMenu(e,t,o=>this.showMenu(s,i,r,o,a))}showMenu(e,t,s,i,r){const a=this.getMenuItems(e,t,s),o=this.ctrlsService.getGridBodyCtrl().getGui();if(a===void 0||(0,import_core246._missingOrEmpty)(a))return!1;const n=new ContextMenu(a,t,e,s);this.createBean(n);const l=n.getGui();t||this.focusService.clearFocusedCell();const c={column:t,rowNode:e,type:"contextMenu",mouseEvent:i,ePopup:l,nudgeY:1},h=this.localeService.getLocaleTextFunc(),d=this.popupService.addPopup({modal:!0,eChild:l,closeOnEsc:!0,closedCallback:p=>{o.classList.remove(CSS_CONTEXT_MENU_OPEN),this.destroyBean(n),this.dispatchVisibleChangedEvent(!1,p===void 0?"api":"ui")},click:i,positionCallback:()=>{const p=this.gos.get("enableRtl");this.popupService.positionPopupUnderMouseEvent({...c,nudgeX:p?(l.offsetWidth+1)*-1:1})},anchorToElement:r,ariaLabel:h("ariaLabelContextMenu","Context Menu")});d&&(o.classList.add(CSS_CONTEXT_MENU_OPEN),n.afterGuiAttached({container:"contextMenu",hidePopup:d.hideFunc})),this.activeMenu&&this.hideActiveMenu(),this.activeMenu=n,n.addEventListener("destroyed",()=>{this.activeMenu===n&&(this.activeMenu=null)}),d&&n.addEventListener("closeMenu",p=>d.hideFunc({mouseEvent:p.mouseEvent??void 0,keyboardEvent:p.keyboardEvent??void 0,forceHide:!0}));const u=i&&i instanceof MouseEvent&&i.type==="mousedown";return this.dispatchVisibleChangedEvent(!0,u?"api":"ui"),!0}dispatchVisibleChangedEvent(e,t="ui"){this.eventService.dispatchEvent({type:"contextMenuVisibleChanged",visible:e,source:t})}},ContextMenu=class extends import_core246.Component{constructor(e,t,s,i){super(`<div class="${CSS_MENU}" role="presentation"></div>`),this.menuItems=e,this.column=t,this.node=s,this.value=i,this.menuList=null,this.focusedCell=null}wireBeans(e){this.focusService=e.focusService,this.menuItemMapper=e.menuItemMapper,this.cellPositionUtils=e.cellPositionUtils}postConstruct(){const e=this.createManagedBean(new AgMenuList(0,{column:this.column,node:this.node,value:this.value})),t=this.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(e){e.hidePopup&&this.addDestroyFunc(e.hidePopup),this.focusedCell=this.focusService.getFocusedCell(),this.menuList&&this.focusService.focusInto(this.menuList.getGui())}restoreFocusedCell(){const e=this.focusService.getFocusedCell();if(e&&this.focusedCell&&this.cellPositionUtils.equals(e,this.focusedCell)){const{rowIndex:t,rowPinned:s,column:i}=this.focusedCell;(0,import_core246._isNothingFocused)(this.gos)&&this.focusService.setFocusedCell({rowIndex:t,column:i,rowPinned:s,forceBrowserFocus:!0,preventScrollOnBrowserFocus:!this.focusService.isKeyboardMode()})}}destroy(){this.restoreFocusedCell(),super.destroy()}},TAB_FILTER="filterMenuTab",TAB_GENERAL="generalMenuTab",TAB_COLUMNS="columnsMenuTab",TABS_DEFAULT=[TAB_GENERAL,TAB_FILTER,TAB_COLUMNS],EnterpriseMenuFactory=class extends import_core248.BeanStub{constructor(){super(...arguments),this.beanName="enterpriseMenuFactory"}wireBeans(e){this.popupService=e.popupService,this.focusService=e.focusService,this.ctrlsService=e.ctrlsService,this.visibleColsService=e.visibleColsService,this.filterManager=e.filterManager,this.menuUtils=e.menuUtils,this.menuService=e.menuService,this.columnMenuFactory=e.columnMenuFactory}hideActiveMenu(){this.destroyBean(this.activeMenu)}showMenuAfterMouseEvent(e,t,s,i){const{column:r,columnGroup:a}=this.splitColumnOrGroup(e),o=i?"filterMenuTab":void 0;this.showMenu(r,a,n=>{const l=n.getGui();this.popupService.positionPopupUnderMouseEvent({type:s,column:r,mouseEvent:t,ePopup:l}),o&&n.showTab?.(o),this.dispatchVisibleChangedEvent(!0,!1,r,a,o)},s,o,void 0,t.target)}splitColumnOrGroup(e){const t=e&&(0,import_core248.isColumn)(e);return{column:t?e:void 0,columnGroup:t?void 0:e}}showMenuAfterButtonClick(e,t,s,i){let r=-1,a="left";this.gos.get("enableRtl")&&(r=1,a="right");const o=i?"filterMenuTab":void 0,n=o?[o]:void 0,l=this.menuService.isLegacyMenuEnabled(),c=(l?9:4)*r,h=l?-23:4,{column:d,columnGroup:u}=this.splitColumnOrGroup(e);this.showMenu(d,u,p=>{const g=p.getGui();this.popupService.positionPopupByComponent({type:s,column:d,eventSource:t,ePopup:g,alignSide:a,nudgeX:c,nudgeY:h,position:"under",keepWithinBounds:!0}),o&&p.showTab?.(o),this.dispatchVisibleChangedEvent(!0,!1,d,u,o)},s,o,n,t)}showMenu(e,t,s,i,r,a,o){const n=this.getMenuParams(e,t,a,o);if(!n)return;const{menu:l,eMenuGui:c,anchorToElement:h,restoreFocusParams:d}=n,u=[];u.push(g=>{const m=l.getGui();this.destroyBean(l),e&&(e.setMenuVisible(!1,"contextMenu"),this.menuUtils.restoreFocusOnClose(d,m,g))});const p=this.localeService.getLocaleTextFunc();if(this.popupService.addPopup({modal:!0,eChild:c,closeOnEsc:!0,closedCallback:g=>{u.forEach(m=>m(g)),this.dispatchVisibleChangedEvent(!1,!1,e,t,r)},afterGuiAttached:g=>l.afterGuiAttached(Object.assign({},{container:i},g)),positionCallback:r?()=>s(l):void 0,ariaLabel:p("ariaLabelColumnMenu","Column Menu")}),r||(l.showTabBasedOnPreviousSelection?.(),s(l)),this.menuService.isColumnMenuAnchoringEnabled()){const g=this.popupService.setPopupPositionRelatedToElement(c,h);g&&e&&this.addStopAnchoring(g,e,u)}l.addEventListener("tabSelected",g=>{this.dispatchVisibleChangedEvent(!1,!0,e),this.lastSelectedTab=g.key,this.dispatchVisibleChangedEvent(!0,!0,e)}),e?.setMenuVisible(!0,"contextMenu"),this.activeMenu=l,l.addEventListener("destroyed",()=>{this.activeMenu===l&&(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 r={column:e,headerPosition:this.focusService.getFocusedHeader(),columnIndex:this.visibleColsService.getAllCols().indexOf(e),eventSource:i},a=this.createMenu(e,t,r,s,i);return a?{menu:a,eMenuGui:a.getGui(),anchorToElement:i||this.ctrlsService.getGridBodyCtrl().getGui(),restoreFocusParams:r}:void 0}createMenu(e,t,s,i,r){if(this.menuService.isLegacyMenuEnabled())return this.createBean(new TabbedColumnMenu(e,s,this.lastSelectedTab,i,r));{const a=this.columnMenuFactory.getMenuItems(e,t);return a.length?this.createBean(new ColumnContextMenu(a,e,s,r)):void 0}}dispatchVisibleChangedEvent(e,t,s,i,r){this.eventService.dispatchEvent({type:"columnMenuVisibleChanged",visible:e,switchingTab:t,key:this.lastSelectedTab??r??(this.menuService.isLegacyMenuEnabled()?TAB_GENERAL:"columnMenu"),column:s??null,columnGroup:i??null})}isMenuEnabled(e){if(!this.menuService.isLegacyMenuEnabled())return!0;const t=!this.filterManager?.isFilterAllowed(e),s=e.getColDef().menuTabs??TABS_DEFAULT;return(t&&s.includes(TAB_FILTER)?s.length-1:s.length)>0}showMenuAfterContextMenuEvent(e,t,s){this.menuUtils.onContextMenu(t,s,i=>(this.showMenuAfterMouseEvent(e,i,"columnMenu"),!0))}},TabbedColumnMenu=class extends import_core248.BeanStub{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={},this.tabFactories[TAB_GENERAL]=this.createMainPanel.bind(this),this.tabFactories[TAB_FILTER]=this.createFilterPanel.bind(this),this.tabFactories[TAB_COLUMNS]=this.createColumnsPanel.bind(this),this.includeChecks[TAB_GENERAL]=()=>!0,this.includeChecks[TAB_FILTER]=()=>e?!!this.filterManager?.isFilterAllowed(e):!1,this.includeChecks[TAB_COLUMNS]=()=>!0}wireBeans(e){this.filterManager=e.filterManager,this.columnChooserFactory=e.columnChooserFactory,this.columnMenuFactory=e.columnMenuFactory,this.menuUtils=e.menuUtils}postConstruct(){const e=this.getTabsToCreate().map(t=>this.createTab(t));this.tabbedLayout=new TabbedLayout({items:e,cssClass:"ag-menu",onActiveItemClicked:this.onHidePopup.bind(this),onItemClicked:this.onTabItemClicked.bind(this)}),this.createBean(this.tabbedLayout),this.mainMenuList&&this.mainMenuList.setParentComponent(this.tabbedLayout),this.addDestroyFunc(()=>this.destroyBean(this.tabbedLayout))}getTabsToCreate(){return this.restrictTo?this.restrictTo:(this.column?.getColDef().menuTabs??TABS_DEFAULT).filter(e=>this.isValidMenuTabItem(e)).filter(e=>this.isNotSuppressed(e)).filter(e=>this.isModuleLoaded(e))}isModuleLoaded(e){return e===TAB_COLUMNS?this.gos.isModuleRegistered(import_core248.ModuleNames.ColumnsToolPanelModule):!0}isValidMenuTabItem(e){let t=!0,s=TABS_DEFAULT;return this.restrictTo!=null&&(t=this.restrictTo.indexOf(e)>-1,s=this.restrictTo),t=t&&TABS_DEFAULT.indexOf(e)>-1,t||(0,import_core248._warnOnce)(`Trying to render an invalid menu item '${e}'. Check that your 'menuTabs' contains one of [${s}]`),t}isNotSuppressed(e){return this.includeChecks[e]()}createTab(e){return this.tabFactories[e]()}showTabBasedOnPreviousSelection(){this.showTab(this.initialSelection)}showTab(e){this.tabItemColumns&&e===TAB_COLUMNS?this.tabbedLayout.showItem(this.tabItemColumns):this.tabItemFilter&&e===TAB_FILTER?this.tabbedLayout.showItem(this.tabItemFilter):this.tabItemGeneral&&e===TAB_GENERAL?this.tabbedLayout.showItem(this.tabItemGeneral):this.tabbedLayout.showFirstItem()}onTabItemClicked(e){let t=null;switch(e.item){case this.tabItemColumns:t=TAB_COLUMNS;break;case this.tabItemFilter:t=TAB_FILTER;break;case this.tabItemGeneral:t=TAB_GENERAL;break}t&&this.activateTab(t)}activateTab(e){const t={type:"tabSelected",key:e};this.dispatchLocalEvent(t)}createMainPanel(){return this.mainMenuList=this.columnMenuFactory.createMenu(this,this.columnMenuFactory.getMenuItems(this.column),this.column,()=>this.sourceElement??this.getGui()),this.mainMenuList.addEventListener("closeMenu",this.onHidePopup.bind(this)),this.tabItemGeneral={title:(0,import_core248._createIconNoSpan)("menu",this.gos,this.column),titleLabel:TAB_GENERAL.replace("MenuTab",""),bodyPromise:import_core248.AgPromise.resolve(this.mainMenuList.getGui()),name:TAB_GENERAL},this.tabItemGeneral}onHidePopup(e){this.menuUtils.closePopupAndRestoreFocusOnSelect(this.hidePopupFunc,this.restoreFocusParams,e)}createFilterPanel(){const e=this.column?this.createBean(new import_core248.FilterWrapperComp(this.column,"COLUMN_MENU")):null;if(this.filterComp=e,!e?.hasFilter())throw new Error("AG Grid - Unable to instantiate filter");const t=i=>e.afterGuiAttached(i),s=()=>e.afterGuiDetached();return this.tabItemFilter={title:(0,import_core248._createIconNoSpan)("filter",this.gos,this.column),titleLabel:TAB_FILTER.replace("MenuTab",""),bodyPromise:import_core248.AgPromise.resolve(e?.getGui()),afterAttachedCallback:t,afterDetachedCallback:s,name:TAB_FILTER},this.tabItemFilter}createColumnsPanel(){const e=document.createElement("div");e.classList.add("ag-menu-column-select-wrapper");const s=this.columnChooserFactory.createColumnSelectPanel(this,this.column).getGui();return s.classList.add("ag-menu-column-select"),e.appendChild(s),this.tabItemColumns={title:(0,import_core248._createIconNoSpan)("columns",this.gos,this.column),titleLabel:TAB_COLUMNS.replace("MenuTab",""),bodyPromise:import_core248.AgPromise.resolve(e),name:TAB_COLUMNS},this.tabItemColumns}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)}},ColumnContextMenu=class extends import_core248.Component{constructor(e,t,s,i){super(`
|
|
391
|
+
</div>`)};if((0,import_core236._missing)(this.params.template))e();else if(typeof this.params.template=="string")this.setTemplate(this.params.template,[]);else if(typeof this.params.template=="function"){const t=this.params.template,s=t(this.params);this.setTemplate(s,[])}else(0,import_core236._warnOnce)("detailCellRendererParams.template should be function or string"),e();this.eDetailGrid==null&&(0,import_core236._warnOnce)('Reference to eDetailGrid was missing from the details template. Please add data-ref="eDetailGrid" to the template.')}setDetailGrid(e){if(!this.eDetailGrid)return;const t=this.context.getBean("frameworkComponentWrapper"),s=new DetailFrameworkComponentWrapper(t),i=this.getFrameworkOverrides(),r=(0,import_core236.createGrid)(this.eDetailGrid,e,{frameworkOverrides:i,providedBeanInstances:{frameworkComponentWrapper:s},modules:import_core236.ModuleRegistry.__getGridRegisteredModules(this.params.api.getGridId())});this.detailApi=r,this.ctrl.registerDetailWithMaster(r),this.addDestroyFunc(()=>{r?.destroy()})}setRowData(e){this.detailApi&&this.detailApi.setGridOption("rowData",e)}},DetailGridApiService=class extends import_core238.BeanStub{constructor(){super(...arguments),this.beanName="detailGridApiService",this.detailGridInfoMap={}}addDetailGridInfo(e,t){this.detailGridInfoMap[e]=t}removeDetailGridInfo(e){delete this.detailGridInfoMap[e]}getDetailGridInfo(e){return this.detailGridInfoMap[e]}forEachDetailGridInfo(e){let t=0;(0,import_core238._iterateObject)(this.detailGridInfoMap,(s,i)=>{(0,import_core238._exists)(i)&&(e(i,t),t++)})}destroy(){this.detailGridInfoMap={},super.destroy()}};function addDetailGridInfo(e,t,s){e.detailGridApiService?.addDetailGridInfo(t,s)}function removeDetailGridInfo(e,t){e.detailGridApiService?.removeDetailGridInfo(t)}function getDetailGridInfo(e,t){return e.detailGridApiService?.getDetailGridInfo(t)}function forEachDetailGridInfo(e,t){e.detailGridApiService?.forEachDetailGridInfo(t)}var VERSION11="32.3.0",MasterDetailCoreModule=(0,import_core234._defineModule)({version:VERSION11,moduleName:`${import_core234.ModuleNames.MasterDetailModule}-core`,userComponents:[{name:"agGroupRowRenderer",classImp:GroupCellRenderer},{name:"agGroupCellRenderer",classImp:GroupCellRenderer},{name:"agDetailCellRenderer",classImp:DetailCellRenderer}],controllers:[{name:"detailCellRenderer",classImp:DetailCellRendererCtrl},{name:"groupCellRendererCtrl",classImp:GroupCellRendererCtrl}],dependantModules:[EnterpriseCoreModule]}),MasterDetailApiModule=(0,import_core234._defineModule)({version:VERSION11,moduleName:`${import_core234.ModuleNames.MasterDetailModule}-api`,beans:[DetailGridApiService],apiFunctions:{addDetailGridInfo,removeDetailGridInfo,getDetailGridInfo,forEachDetailGridInfo},dependantModules:[MasterDetailCoreModule]}),MasterDetailModule=(0,import_core234._defineModule)({version:VERSION11,moduleName:import_core234.ModuleNames.MasterDetailModule,dependantModules:[MasterDetailCoreModule,MasterDetailApiModule]}),import_core239=require("ag-grid-community"),import_core241=require("ag-grid-community"),import_core242=require("ag-grid-community"),import_core244=require("ag-grid-community"),import_core246=require("ag-grid-community"),import_core248=require("ag-grid-community"),import_core250=require("ag-grid-community"),import_core251=require("ag-grid-community"),ChartMenuItemMapper=class he extends import_core241.BeanStub{constructor(){super(...arguments),this.beanName="chartMenuItemMapper"}wireBeans(t){this.chartService=t.chartService}getChartItems(t){if(!this.chartService){this.gos.assertModuleRegistered(import_core241.ModuleNames.GridChartsModule,`the Context Menu key "${t}"`);return}const s=t==="pivotChart"?new PivotMenuItemMapper(this.gos,this.chartService,this.localeService):new RangeMenuItemMapper(this.gos,this.chartService,this.localeService),i=this.chartService.isEnterprise();let r=s.getMenuItem();if(r&&r.subMenu&&!i){const o=n=>({...n,subMenu:n.subMenu?.filter(l=>!l._enterprise).map(l=>o(l))});r=o(r)}const a=this.gos.get("chartToolPanelsDef")?.settingsPanel?.chartGroupsDef;return a&&(r=he.filterAndOrderChartMenu(r,a,s.getConfigLookup())),this.cleanInternals(r)}cleanInternals(t){if(!t)return t;const s=i=>(delete i?._key,delete i?._enterprise,i?.subMenu?.forEach(r=>s(r)),i);return s(t)}static buildLookup(t){const s={},i=r=>{s[r._key]=r,r.subMenu&&r.subMenu.forEach(a=>i(a))};return i(t),s}static filterAndOrderChartMenu(t,s,i){const r=this.buildLookup(t),a={...t,subMenu:[]};if(Object.entries(s).forEach(([o,n])=>{const l=i[o];if(l===null)return;if(l==null){(0,import_core241._warnOnce)(`invalid chartGroupsDef config '${o}'`);return}const c=r[l._key];if(c)if(c.subMenu){const h=n.map(d=>{const u=l[d];if(u==null){(0,import_core241._warnOnce)(`invalid chartGroupsDef config '${o}.${d}'`);return}return r[u]}).filter(d=>d!==void 0);h.length>0&&(c.subMenu=h,a.subMenu?.push(c))}else a.subMenu?.push(c)}),a.subMenu?.length!=0)return a}},PivotMenuItemMapper=class{constructor(e,t,s){this.gos=e,this.chartService=t,this.localeService=s}getMenuItem(){const e=this.localeService.getLocaleTextFunc(),t=(s,i,r,a,o=!1)=>({name:e(s,i),action:()=>this.chartService.createPivotChart({chartType:r}),_key:a,_enterprise:o});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")]},t("line","Line‎","line","pivotLineChart"),{_key:"pivotXYChart",name:e("xyChart","X Y (Scatter)"),subMenu:[t("scatter","Scatter‎","scatter","pivotScatter"),t("bubble","Bubble‎","bubble","pivotBubble")]},{_key:"pivotAreaChart",name:e("areaChart","Area"),subMenu:[t("area","Area‎","area","pivotArea"),t("stackedArea","Stacked‎","stackedArea","pivotStackedArea"),t("normalizedArea","100% Stacked‎","normalizedArea","pivotNormalizedArea")]},{_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:"pivotCombinationChart",name:e("combinationChart","Combination"),subMenu:[t("columnLineCombo","Column & Line‎","columnLineCombo","pivotColumnLineCombo"),t("AreaColumnCombo","Area & Column‎","areaColumnCombo","pivotAreaColumnCombo")]}],icon:(0,import_core241._createIconNoSpan)("chart",this.gos,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"},scatterGroup:{_key:"pivotXYChart",bubble:"pivotBubble",scatter:"pivotScatter"},areaGroup:{_key:"pivotAreaChart",area:"pivotArea",stackedArea:"pivotStackedArea",normalizedArea:"pivotNormalizedArea"},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},polarGroup:null,specializedGroup:null}}},RangeMenuItemMapper=class{constructor(e,t,s){this.gos=e,this.chartService=t,this.localeService=s}getMenuItem(){const e=this.localeService.getLocaleTextFunc(),t=(s,i,r,a,o=!1)=>({name:e(s,i),action:()=>this.chartService.createChartFromCurrentRange(r),_key:a,_enterprise:o});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"},t("line","Line‎","line","rangeLineChart"),{name:e("xyChart","X Y (Scatter)"),subMenu:[t("scatter","Scatter‎","scatter","rangeScatter"),t("bubble","Bubble‎","bubble","rangeBubble")],_key:"rangeXYChart"},{name:e("areaChart","Area"),subMenu:[t("area","Area‎","area","rangeArea"),t("stackedArea","Stacked‎","stackedArea","rangeStackedArea"),t("normalizedArea","100% Stacked‎","normalizedArea","rangeNormalizedArea")],_key:"rangeAreaChart"},{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("combinationChart","Combination"),subMenu:[t("columnLineCombo","Column & Line‎","columnLineCombo","rangeColumnLineCombo"),t("AreaColumnCombo","Area & Column‎","areaColumnCombo","rangeAreaColumnCombo")],_key:"rangeCombinationChart"}],icon:(0,import_core241._createIconNoSpan)("chart",this.gos,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"},scatterGroup:{_key:"rangeXYChart",bubble:"rangeBubble",scatter:"rangeScatter"},areaGroup:{_key:"rangeAreaChart",area:"rangeArea",stackedArea:"rangeStackedArea",normalizedArea:"rangeNormalizedArea"},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"},combinationGroup:{_key:"rangeCombinationChart",columnLineCombo:"rangeColumnLineCombo",areaColumnCombo:"rangeAreaColumnCombo",customCombo:null}}}},ColumnChooserFactory=class extends import_core242.BeanStub{constructor(){super(...arguments),this.beanName="columnChooserFactory"}wireBeans(e){this.focusService=e.focusService,this.menuUtils=e.menuUtils,this.visibleColsService=e.visibleColsService}createColumnSelectPanel(e,t,s,i){const r=e.createManagedBean(new AgPrimaryCols),a=i??t?.getColDef().columnChooserParams??t?.getColDef().columnsMenuParams??{},{contractColumnSelection:o,suppressColumnExpandAll:n,suppressColumnFilter:l,suppressColumnSelectAll:c,suppressSyncLayoutWithGrid:h,columnLayout:d}=a;return r.init(!!s,this.gos.addGridCommonParams({suppressColumnMove:!1,suppressValues:!1,suppressPivots:!1,suppressRowGroups:!1,suppressPivotMode:!1,contractColumnSelection:!!o,suppressColumnExpandAll:!!n,suppressColumnFilter:!!l,suppressColumnSelectAll:!!c,suppressSyncLayoutWithGrid:!!d||!!h,onStateUpdated:()=>{}}),"columnMenu"),d&&r.setColumnLayout(d),r}showColumnChooser({column:e,chooserParams:t,eventSource:s}){this.hideActiveColumnChooser();const i=this.createColumnSelectPanel(this,e,!0,t),r=this.localeService.getLocaleTextFunc(),a=this.visibleColsService.getAllCols().indexOf(e),o=e?this.focusService.getFocusedHeader():null;this.activeColumnChooserDialog=this.createBean(new AgDialog({title:r("chooseColumns","Choose Columns"),component:i,width:300,height:300,resizable:!0,movable:!0,centered:!0,closable:!0,afterGuiAttached:()=>{this.focusService.findNextFocusableElement(i.getGui())?.focus({preventScroll:!0}),this.dispatchVisibleChangedEvent(!0,e)},closedCallback:n=>{const l=this.activeColumnChooser.getGui();this.destroyBean(this.activeColumnChooser),this.activeColumnChooser=void 0,this.activeColumnChooserDialog=void 0,this.dispatchVisibleChangedEvent(!1,e),e&&this.menuUtils.restoreFocusOnClose({column:e,headerPosition:o,columnIndex:a,eventSource:s},l,n,!0)},postProcessPopupParams:{type:"columnChooser",column:e,eventSource:s}})),this.activeColumnChooser=i}hideActiveColumnChooser(){this.activeColumnChooserDialog&&this.destroyBean(this.activeColumnChooserDialog)}dispatchVisibleChangedEvent(e,t){this.eventService.dispatchEvent({type:"columnMenuVisibleChanged",visible:e,switchingTab:!1,key:"columnChooser",column:t??null})}},MENU_ITEM_SEPARATOR="separator",ColumnMenuFactory=class extends import_core244.BeanStub{constructor(){super(...arguments),this.beanName="columnMenuFactory"}wireBeans(e){this.menuItemMapper=e.menuItemMapper,this.columnModel=e.columnModel,this.funcColsService=e.funcColsService,this.menuService=e.menuService}createMenu(e,t,s,i){const r=e.createManagedBean(new AgMenuList(0,{column:s??null,node:null,value:null})),a=this.menuItemMapper.mapWithStockItems(t,s??null,i,"columnMenu");return r.addMenuItems(a),r}getMenuItems(e,t){const s=this.getDefaultMenuOptions(e);let i;const r=e?.getColDef().mainMenuItems;if(Array.isArray(r))i=r;else if(typeof r=="function")i=r(this.gos.addGridCommonParams({column:e,defaultItems:s}));else{const a=this.gos.getCallback("getMainMenuItems");a&&e?i=a({column:e,defaultItems:s}):i=s}return(0,import_core244._removeRepeatsFromArray)(i,MENU_ITEM_SEPARATOR),i}getDefaultMenuOptions(e){const t=[],s=this.menuService.isLegacyMenuEnabled();if(!e)return s||t.push("columnChooser"),t.push("resetColumns"),t;const i=!e.getColDef().lockPinned,r=this.funcColsService.getRowGroupColumns().length,a=r>0,o=e.isAllowValue(),n=e.isAllowRowGroup(),l=e.isPrimary(),c=this.columnModel.isPivotMode(),h=(0,import_core244._isClientSideRowModel)(this.gos),d=this.gos.get("treeData"),u=l&&a&&o||!l;if(!s&&e.isSortable()){const m=e.getSort();m!=="asc"&&t.push("sortAscending"),m!=="desc"&&t.push("sortDescending"),m&&t.push("sortUnSort"),t.push(MENU_ITEM_SEPARATOR)}return this.menuService.isFilterMenuItemEnabled(e)&&(t.push("columnFilter"),t.push(MENU_ITEM_SEPARATOR)),i&&t.push("pinSubMenu"),u&&t.push("valueAggSubMenu"),(i||u)&&t.push(MENU_ITEM_SEPARATOR),t.push("autoSizeThis"),t.push("autoSizeAll"),t.push(MENU_ITEM_SEPARATOR),e.getColDef().showRowGroup?t.push("rowUnGroup"):n&&e.isPrimary()&&(e.isRowGroupActive()?this.columnModel.isColGroupLocked(e)||t.push("rowUnGroup"):t.push("rowGroup")),t.push(MENU_ITEM_SEPARATOR),s||t.push("columnChooser"),t.push("resetColumns"),h&&(d||r>(c?1:0))&&(t.push("expandAll"),t.push("contractAll")),t}},CSS_MENU="ag-menu",CSS_CONTEXT_MENU_OPEN="ag-context-menu-open",ContextMenuFactory=class extends import_core246.BeanStub{constructor(){super(...arguments),this.beanName="contextMenuFactory"}wireBeans(e){this.popupService=e.popupService,this.ctrlsService=e.ctrlsService,this.columnModel=e.columnModel,this.menuUtils=e.menuUtils,this.rangeService=e.rangeService,this.focusService=e.focusService}hideActiveMenu(){this.destroyBean(this.activeMenu)}getMenuItems(e,t,s){const i=[];if((0,import_core246._exists)(e)&&this.gos.isModuleRegistered(import_core246.ModuleNames.ClipboardModule)&&t&&(this.gos.get("suppressCutToClipboard")||i.push("cut"),i.push("copy","copyWithHeaders","copyWithGroupHeaders","paste","separator")),this.gos.get("enableCharts")&&this.gos.isModuleRegistered(import_core246.ModuleNames.GridChartsModule)&&(this.columnModel.isPivotMode()&&i.push("pivotChart"),this.rangeService&&!this.rangeService.isEmpty()&&i.push("chartRange")),(0,import_core246._exists)(e)){const n=!this.gos.isModuleRegistered(import_core246.ModuleNames.CsvExportModule),l=!this.gos.isModuleRegistered(import_core246.ModuleNames.ExcelExportModule),c=this.gos.get("suppressExcelExport")||l,h=this.gos.get("suppressCsvExport")||n;!(0,import_core246._isIOSUserAgent)()&&(!c||!h)&&i.push("export")}const r=i.length?i:void 0,a=t?.getColDef().contextMenuItems;if(Array.isArray(a))return a;if(typeof a=="function")return a(this.gos.addGridCommonParams({column:t,node:e,value:s,defaultItems:r}));const o=this.gos.getCallback("getContextMenuItems");return o?o({column:t,node:e,value:s,defaultItems:r}):i}onContextMenu(e,t,s,i,r,a){this.menuUtils.onContextMenu(e,t,o=>this.showMenu(s,i,r,o,a))}showMenu(e,t,s,i,r){const a=this.getMenuItems(e,t,s),o=this.ctrlsService.getGridBodyCtrl().getGui();if(a===void 0||(0,import_core246._missingOrEmpty)(a))return!1;const n=new ContextMenu(a,t,e,s);this.createBean(n);const l=n.getGui();t||this.focusService.clearFocusedCell();const c={column:t,rowNode:e,type:"contextMenu",mouseEvent:i,ePopup:l,nudgeY:1},h=this.localeService.getLocaleTextFunc(),d=this.popupService.addPopup({modal:!0,eChild:l,closeOnEsc:!0,closedCallback:p=>{o.classList.remove(CSS_CONTEXT_MENU_OPEN),this.destroyBean(n),this.dispatchVisibleChangedEvent(!1,p===void 0?"api":"ui")},click:i,positionCallback:()=>{const p=this.gos.get("enableRtl");this.popupService.positionPopupUnderMouseEvent({...c,nudgeX:p?(l.offsetWidth+1)*-1:1})},anchorToElement:r,ariaLabel:h("ariaLabelContextMenu","Context Menu")});d&&(o.classList.add(CSS_CONTEXT_MENU_OPEN),n.afterGuiAttached({container:"contextMenu",hidePopup:d.hideFunc})),this.activeMenu&&this.hideActiveMenu(),this.activeMenu=n,n.addEventListener("destroyed",()=>{this.activeMenu===n&&(this.activeMenu=null)}),d&&n.addEventListener("closeMenu",p=>d.hideFunc({mouseEvent:p.mouseEvent??void 0,keyboardEvent:p.keyboardEvent??void 0,forceHide:!0}));const u=i&&i instanceof MouseEvent&&i.type==="mousedown";return this.dispatchVisibleChangedEvent(!0,u?"api":"ui"),!0}dispatchVisibleChangedEvent(e,t="ui"){this.eventService.dispatchEvent({type:"contextMenuVisibleChanged",visible:e,source:t})}},ContextMenu=class extends import_core246.Component{constructor(e,t,s,i){super(`<div class="${CSS_MENU}" role="presentation"></div>`),this.menuItems=e,this.column=t,this.node=s,this.value=i,this.menuList=null,this.focusedCell=null}wireBeans(e){this.focusService=e.focusService,this.menuItemMapper=e.menuItemMapper,this.cellPositionUtils=e.cellPositionUtils}postConstruct(){const e=this.createManagedBean(new AgMenuList(0,{column:this.column,node:this.node,value:this.value})),t=this.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(e){e.hidePopup&&this.addDestroyFunc(e.hidePopup),this.focusedCell=this.focusService.getFocusedCell(),this.menuList&&this.focusService.focusInto(this.menuList.getGui())}restoreFocusedCell(){const e=this.focusService.getFocusedCell();if(e&&this.focusedCell&&this.cellPositionUtils.equals(e,this.focusedCell)){const{rowIndex:t,rowPinned:s,column:i}=this.focusedCell;(0,import_core246._isNothingFocused)(this.gos)&&this.focusService.setFocusedCell({rowIndex:t,column:i,rowPinned:s,forceBrowserFocus:!0,preventScrollOnBrowserFocus:!this.focusService.isKeyboardMode()})}}destroy(){this.restoreFocusedCell(),super.destroy()}},TAB_FILTER="filterMenuTab",TAB_GENERAL="generalMenuTab",TAB_COLUMNS="columnsMenuTab",TABS_DEFAULT=[TAB_GENERAL,TAB_FILTER,TAB_COLUMNS],EnterpriseMenuFactory=class extends import_core248.BeanStub{constructor(){super(...arguments),this.beanName="enterpriseMenuFactory"}wireBeans(e){this.popupService=e.popupService,this.focusService=e.focusService,this.ctrlsService=e.ctrlsService,this.visibleColsService=e.visibleColsService,this.filterManager=e.filterManager,this.menuUtils=e.menuUtils,this.menuService=e.menuService,this.columnMenuFactory=e.columnMenuFactory}hideActiveMenu(){this.destroyBean(this.activeMenu)}showMenuAfterMouseEvent(e,t,s,i){const{column:r,columnGroup:a}=this.splitColumnOrGroup(e),o=i?"filterMenuTab":void 0;this.showMenu(r,a,n=>{const l=n.getGui();this.popupService.positionPopupUnderMouseEvent({type:s,column:r,mouseEvent:t,ePopup:l}),o&&n.showTab?.(o),this.dispatchVisibleChangedEvent(!0,!1,r,a,o)},s,o,void 0,t.target)}splitColumnOrGroup(e){const t=e&&(0,import_core248.isColumn)(e);return{column:t?e:void 0,columnGroup:t?void 0:e}}showMenuAfterButtonClick(e,t,s,i){let r=-1,a="left";this.gos.get("enableRtl")&&(r=1,a="right");const o=i?"filterMenuTab":void 0,n=o?[o]:void 0,l=this.menuService.isLegacyMenuEnabled(),c=(l?9:4)*r,h=l?-23:4,{column:d,columnGroup:u}=this.splitColumnOrGroup(e);this.showMenu(d,u,p=>{const g=p.getGui();this.popupService.positionPopupByComponent({type:s,column:d,eventSource:t,ePopup:g,alignSide:a,nudgeX:c,nudgeY:h,position:"under",keepWithinBounds:!0}),o&&p.showTab?.(o),this.dispatchVisibleChangedEvent(!0,!1,d,u,o)},s,o,n,t)}showMenu(e,t,s,i,r,a,o){const n=this.getMenuParams(e,t,a,o);if(!n)return;const{menu:l,eMenuGui:c,anchorToElement:h,restoreFocusParams:d}=n,u=[];u.push(g=>{const m=l.getGui();this.destroyBean(l),e&&(e.setMenuVisible(!1,"contextMenu"),this.menuUtils.restoreFocusOnClose(d,m,g))});const p=this.localeService.getLocaleTextFunc();if(this.popupService.addPopup({modal:!0,eChild:c,closeOnEsc:!0,closedCallback:g=>{u.forEach(m=>m(g)),this.dispatchVisibleChangedEvent(!1,!1,e,t,r)},afterGuiAttached:g=>l.afterGuiAttached(Object.assign({},{container:i},g)),positionCallback:r?()=>s(l):void 0,ariaLabel:p("ariaLabelColumnMenu","Column Menu")}),r||(l.showTabBasedOnPreviousSelection?.(),s(l)),this.menuService.isColumnMenuAnchoringEnabled()){const g=this.popupService.setPopupPositionRelatedToElement(c,h);g&&e&&this.addStopAnchoring(g,e,u)}l.addEventListener("tabSelected",g=>{this.dispatchVisibleChangedEvent(!1,!0,e),this.lastSelectedTab=g.key,this.dispatchVisibleChangedEvent(!0,!0,e)}),e?.setMenuVisible(!0,"contextMenu"),this.activeMenu=l,l.addEventListener("destroyed",()=>{this.activeMenu===l&&(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 r={column:e,headerPosition:this.focusService.getFocusedHeader(),columnIndex:this.visibleColsService.getAllCols().indexOf(e),eventSource:i},a=this.createMenu(e,t,r,s,i);return a?{menu:a,eMenuGui:a.getGui(),anchorToElement:i||this.ctrlsService.getGridBodyCtrl().getGui(),restoreFocusParams:r}:void 0}createMenu(e,t,s,i,r){if(this.menuService.isLegacyMenuEnabled())return this.createBean(new TabbedColumnMenu(e,s,this.lastSelectedTab,i,r));{const a=this.columnMenuFactory.getMenuItems(e,t);return a.length?this.createBean(new ColumnContextMenu(a,e,s,r)):void 0}}dispatchVisibleChangedEvent(e,t,s,i,r){this.eventService.dispatchEvent({type:"columnMenuVisibleChanged",visible:e,switchingTab:t,key:this.lastSelectedTab??r??(this.menuService.isLegacyMenuEnabled()?TAB_GENERAL:"columnMenu"),column:s??null,columnGroup:i??null})}isMenuEnabled(e){if(!this.menuService.isLegacyMenuEnabled())return!0;const t=!this.filterManager?.isFilterAllowed(e),s=e.getColDef().menuTabs??TABS_DEFAULT;return(t&&s.includes(TAB_FILTER)?s.length-1:s.length)>0}showMenuAfterContextMenuEvent(e,t,s){this.menuUtils.onContextMenu(t,s,i=>(this.showMenuAfterMouseEvent(e,i,"columnMenu"),!0))}},TabbedColumnMenu=class extends import_core248.BeanStub{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={},this.tabFactories[TAB_GENERAL]=this.createMainPanel.bind(this),this.tabFactories[TAB_FILTER]=this.createFilterPanel.bind(this),this.tabFactories[TAB_COLUMNS]=this.createColumnsPanel.bind(this),this.includeChecks[TAB_GENERAL]=()=>!0,this.includeChecks[TAB_FILTER]=()=>e?!!this.filterManager?.isFilterAllowed(e):!1,this.includeChecks[TAB_COLUMNS]=()=>!0}wireBeans(e){this.filterManager=e.filterManager,this.columnChooserFactory=e.columnChooserFactory,this.columnMenuFactory=e.columnMenuFactory,this.menuUtils=e.menuUtils}postConstruct(){const e=this.getTabsToCreate().map(t=>this.createTab(t));this.tabbedLayout=new TabbedLayout({items:e,cssClass:"ag-menu",onActiveItemClicked:this.onHidePopup.bind(this),onItemClicked:this.onTabItemClicked.bind(this)}),this.createBean(this.tabbedLayout),this.mainMenuList&&this.mainMenuList.setParentComponent(this.tabbedLayout),this.addDestroyFunc(()=>this.destroyBean(this.tabbedLayout))}getTabsToCreate(){return this.restrictTo?this.restrictTo:(this.column?.getColDef().menuTabs??TABS_DEFAULT).filter(e=>this.isValidMenuTabItem(e)).filter(e=>this.isNotSuppressed(e)).filter(e=>this.isModuleLoaded(e))}isModuleLoaded(e){return e===TAB_COLUMNS?this.gos.isModuleRegistered(import_core248.ModuleNames.ColumnsToolPanelModule):!0}isValidMenuTabItem(e){let t=!0,s=TABS_DEFAULT;return this.restrictTo!=null&&(t=this.restrictTo.indexOf(e)>-1,s=this.restrictTo),t=t&&TABS_DEFAULT.indexOf(e)>-1,t||(0,import_core248._warnOnce)(`Trying to render an invalid menu item '${e}'. Check that your 'menuTabs' contains one of [${s}]`),t}isNotSuppressed(e){return this.includeChecks[e]()}createTab(e){return this.tabFactories[e]()}showTabBasedOnPreviousSelection(){this.showTab(this.initialSelection)}showTab(e){this.tabItemColumns&&e===TAB_COLUMNS?this.tabbedLayout.showItem(this.tabItemColumns):this.tabItemFilter&&e===TAB_FILTER?this.tabbedLayout.showItem(this.tabItemFilter):this.tabItemGeneral&&e===TAB_GENERAL?this.tabbedLayout.showItem(this.tabItemGeneral):this.tabbedLayout.showFirstItem()}onTabItemClicked(e){let t=null;switch(e.item){case this.tabItemColumns:t=TAB_COLUMNS;break;case this.tabItemFilter:t=TAB_FILTER;break;case this.tabItemGeneral:t=TAB_GENERAL;break}t&&this.activateTab(t)}activateTab(e){const t={type:"tabSelected",key:e};this.dispatchLocalEvent(t)}createMainPanel(){return this.mainMenuList=this.columnMenuFactory.createMenu(this,this.columnMenuFactory.getMenuItems(this.column),this.column,()=>this.sourceElement??this.getGui()),this.mainMenuList.addEventListener("closeMenu",this.onHidePopup.bind(this)),this.tabItemGeneral={title:(0,import_core248._createIconNoSpan)("menu",this.gos,this.column),titleLabel:TAB_GENERAL.replace("MenuTab",""),bodyPromise:import_core248.AgPromise.resolve(this.mainMenuList.getGui()),name:TAB_GENERAL},this.tabItemGeneral}onHidePopup(e){this.menuUtils.closePopupAndRestoreFocusOnSelect(this.hidePopupFunc,this.restoreFocusParams,e)}createFilterPanel(){const e=this.column?this.createBean(new import_core248.FilterWrapperComp(this.column,"COLUMN_MENU")):null;if(this.filterComp=e,!e?.hasFilter())throw new Error("AG Grid - Unable to instantiate filter");const t=i=>e.afterGuiAttached(i),s=()=>e.afterGuiDetached();return this.tabItemFilter={title:(0,import_core248._createIconNoSpan)("filter",this.gos,this.column),titleLabel:TAB_FILTER.replace("MenuTab",""),bodyPromise:import_core248.AgPromise.resolve(e?.getGui()),afterAttachedCallback:t,afterDetachedCallback:s,name:TAB_FILTER},this.tabItemFilter}createColumnsPanel(){const e=document.createElement("div");e.classList.add("ag-menu-column-select-wrapper");const s=this.columnChooserFactory.createColumnSelectPanel(this,this.column).getGui();return s.classList.add("ag-menu-column-select"),e.appendChild(s),this.tabItemColumns={title:(0,import_core248._createIconNoSpan)("columns",this.gos,this.column),titleLabel:TAB_COLUMNS.replace("MenuTab",""),bodyPromise:import_core248.AgPromise.resolve(e),name:TAB_COLUMNS},this.tabItemColumns}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)}},ColumnContextMenu=class extends import_core248.Component{constructor(e,t,s,i){super(`
|
|
392
392
|
<div data-ref="eColumnMenu" role="presentation" class="ag-menu ag-column-menu"></div>
|
|
393
|
-
`),this.menuItems=e,this.column=t,this.restoreFocusParams=s,this.sourceElement=i,this.eColumnMenu=import_core248.RefPlaceholder}wireBeans(e){this.columnMenuFactory=e.columnMenuFactory,this.menuUtils=e.menuUtils,this.focusService=e.focusService}postConstruct(){this.mainMenuList=this.columnMenuFactory.createMenu(this,this.menuItems,this.column,()=>this.sourceElement??this.getGui()),this.mainMenuList.addEventListener("closeMenu",this.onHidePopup.bind(this)),this.eColumnMenu.appendChild(this.mainMenuList.getGui())}onHidePopup(e){this.menuUtils.closePopupAndRestoreFocusOnSelect(this.hidePopupFunc,this.restoreFocusParams,e)}afterGuiAttached({hidePopup:e}){e&&(this.hidePopupFunc=e,this.addDestroyFunc(e)),this.focusService.focusInto(this.mainMenuList.getGui())}};function showContextMenu(e,t){const{rowNode:s,column:i,value:r,x:a,y:o}=t||{};let{x:n,y:l}=e.menuService.getContextMenuPosition(s,i);a!=null&&(n=a),o!=null&&(l=o),e.menuService.showContextMenu({mouseEvent:new MouseEvent("mousedown",{clientX:n,clientY:l}),rowNode:s,column:i,value:r})}function showColumnChooser(e,t){e.menuService.showColumnChooser({chooserParams:t})}function hideColumnChooser(e){e.menuService.hideColumnChooser()}var MenuItemMapper=class extends import_core250.BeanStub{constructor(){super(...arguments),this.beanName="menuItemMapper"}wireBeans(e){this.columnModel=e.columnModel,this.columnNameService=e.columnNameService,this.columnApplyStateService=e.columnApplyStateService,this.funcColsService=e.funcColsService,this.focusService=e.focusService,this.rowPositionUtils=e.rowPositionUtils,this.chartMenuItemMapper=e.chartMenuItemMapper,this.menuService=e.menuService,this.sortController=e.sortController,this.columnAutosizeService=e.columnAutosizeService,this.expansionService=e.expansionService,this.clipboardService=e.clipboardService,this.aggFuncService=e.aggFuncService,this.csvCreator=e.csvCreator,this.excelCreator=e.excelCreator}mapWithStockItems(e,t,s,i){if(!e)return[];const r=[];return e.forEach(a=>{let o;if(typeof a=="string"?o=this.getStockMenuItem(a,t,s,i):o={...a},!o)return;const n=o,{subMenu:l}=n;l&&l instanceof Array&&(n.subMenu=this.mapWithStockItems(l,t,s,i)),o!=null&&r.push(o)}),r}getStockMenuItem(e,t,s,i){const r=this.localeService.getLocaleTextFunc(),a=this.gos.get("skipHeaderOnAutoSize");switch(e){case"pinSubMenu":return{name:r("pinColumn","Pin Column"),icon:(0,import_core250._createIconNoSpan)("menuPin",this.gos,null),subMenu:["clearPinned","pinLeft","pinRight"]};case"pinLeft":return{name:r("pinLeft","Pin Left"),action:()=>this.columnModel.setColsPinned([t],"left",i),checked:!!t&&t.isPinnedLeft()};case"pinRight":return{name:r("pinRight","Pin Right"),action:()=>this.columnModel.setColsPinned([t],"right",i),checked:!!t&&t.isPinnedRight()};case"clearPinned":return{name:r("noPin","No Pin"),action:()=>this.columnModel.setColsPinned([t],null,i),checked:!!t&&!t.isPinned()};case"valueAggSubMenu":return this.gos.assertModuleRegistered(import_core250.ModuleNames.RowGroupingModule,"Aggregation from Menu")?!t?.isPrimary()&&!t?.getColDef().pivotValueColumn?null:{name:r("valueAggregation","Value Aggregation"),icon:(0,import_core250._createIconNoSpan)("menuValue",this.gos,null),subMenu:this.createAggregationSubMenu(t,this.aggFuncService),disabled:this.gos.get("functionsReadOnly")}:null;case"autoSizeThis":return{name:r("autosizeThisColumn","Autosize This Column"),action:()=>this.columnAutosizeService.autoSizeColumn(t,i,a)};case"autoSizeAll":return{name:r("autosizeAllColumns","Autosize All Columns"),action:()=>this.columnAutosizeService.autoSizeAllColumns(i,a)};case"rowGroup":return{name:r("groupBy","Group by")+" "+(0,import_core250._escapeString)(this.columnNameService.getDisplayNameForColumn(t,"header")),disabled:this.gos.get("functionsReadOnly")||t?.isRowGroupActive()||!t?.getColDef().enableRowGroup,action:()=>this.funcColsService.addRowGroupColumns([t],i),icon:(0,import_core250._createIconNoSpan)("menuAddRowGroup",this.gos,null)};case"rowUnGroup":{const o=(0,import_core250._createIconNoSpan)("menuRemoveRowGroup",this.gos,null),n=t?.getColDef().showRowGroup,l=this.gos.get("groupLockGroupColumns");if(n===!0)return{name:r("ungroupAll","Un-Group All"),disabled:this.gos.get("functionsReadOnly")||l===-1||l>=this.funcColsService.getRowGroupColumns().length,action:()=>this.funcColsService.setRowGroupColumns(this.funcColsService.getRowGroupColumns().slice(0,l),i),icon:o};if(typeof n=="string"){const c=this.columnModel.getColDefCol(n),h=c!=null?(0,import_core250._escapeString)(this.columnNameService.getDisplayNameForColumn(c,"header")):n;return{name:r("ungroupBy","Un-Group by")+" "+h,disabled:this.gos.get("functionsReadOnly")||c!=null&&this.columnModel.isColGroupLocked(c),action:()=>this.funcColsService.removeRowGroupColumns([n],i),icon:o}}return{name:r("ungroupBy","Un-Group by")+" "+(0,import_core250._escapeString)(this.columnNameService.getDisplayNameForColumn(t,"header")),disabled:this.gos.get("functionsReadOnly")||!t?.isRowGroupActive()||!t?.getColDef().enableRowGroup||this.columnModel.isColGroupLocked(t),action:()=>this.funcColsService.removeRowGroupColumns([t],i),icon:o}}case"resetColumns":return{name:r("resetColumns","Reset Columns"),action:()=>this.columnApplyStateService.resetColumnState(i)};case"expandAll":return{name:r("expandAll","Expand All Row Groups"),action:()=>this.expansionService.expandAll(!0)};case"contractAll":return{name:r("collapseAll","Collapse All Row Groups"),action:()=>this.expansionService.expandAll(!1)};case"copy":return this.gos.assertModuleRegistered(import_core250.ModuleNames.ClipboardModule,"Copy from Menu")?{name:r("copy","Copy"),shortcut:r("ctrlC","Ctrl+C"),icon:(0,import_core250._createIconNoSpan)("clipboardCopy",this.gos,null),action:()=>this.clipboardService.copyToClipboard()}:null;case"copyWithHeaders":return this.gos.assertModuleRegistered(import_core250.ModuleNames.ClipboardModule,"Copy with Headers from Menu")?{name:r("copyWithHeaders","Copy with Headers"),icon:(0,import_core250._createIconNoSpan)("clipboardCopy",this.gos,null),action:()=>this.clipboardService.copyToClipboard({includeHeaders:!0})}:null;case"copyWithGroupHeaders":return this.gos.assertModuleRegistered(import_core250.ModuleNames.ClipboardModule,"Copy with Group Headers from Menu")?{name:r("copyWithGroupHeaders","Copy with Group Headers"),icon:(0,import_core250._createIconNoSpan)("clipboardCopy",this.gos,null),action:()=>this.clipboardService.copyToClipboard({includeHeaders:!0,includeGroupHeaders:!0})}:null;case"cut":if(this.gos.assertModuleRegistered(import_core250.ModuleNames.ClipboardModule,"Cut from Menu")){const o=this.focusService.getFocusedCell(),n=o?this.rowPositionUtils.getRowNode(o):null,l=n?o?.column.isCellEditable(n):!1;return{name:r("cut","Cut"),shortcut:r("ctrlX","Ctrl+X"),icon:(0,import_core250._createIconNoSpan)("clipboardCut",this.gos,null),disabled:!l||this.gos.get("suppressCutToClipboard"),action:()=>this.clipboardService.cutToClipboard(void 0,"contextMenu")}}else return null;case"paste":return this.gos.assertModuleRegistered(import_core250.ModuleNames.ClipboardModule,"Paste from Clipboard")?{name:r("paste","Paste"),shortcut:r("ctrlV","Ctrl+V"),disabled:!0,icon:(0,import_core250._createIconNoSpan)("clipboardPaste",this.gos,null),action:()=>this.clipboardService.pasteFromClipboard()}:null;case"export":{const o=[],n=this.gos.isModuleRegistered(import_core250.ModuleNames.CsvExportModule),l=this.gos.isModuleRegistered(import_core250.ModuleNames.ExcelExportModule);return!this.gos.get("suppressCsvExport")&&n&&o.push("csvExport"),!this.gos.get("suppressExcelExport")&&l&&o.push("excelExport"),{name:r("export","Export"),subMenu:o,icon:(0,import_core250._createIconNoSpan)("save",this.gos,null)}}case"csvExport":return{name:r("csvExport","CSV Export"),icon:(0,import_core250._createIconNoSpan)("csvExport",this.gos,null),action:()=>this.csvCreator?.exportDataAsCsv()};case"excelExport":return{name:r("excelExport","Excel Export"),icon:(0,import_core250._createIconNoSpan)("excelExport",this.gos,null),action:()=>this.excelCreator?.exportDataAsExcel()};case"separator":return"separator";case"pivotChart":case"chartRange":return this.chartMenuItemMapper.getChartItems(e)??null;case"columnFilter":return t?{name:r("columnFilter","Column Filter"),icon:(0,import_core250._createIconNoSpan)("filter",this.gos,null),action:()=>this.menuService.showFilterMenu({column:t,buttonElement:s(),containerType:"columnFilter",positionBy:"button"})}:null;case"columnChooser":return this.gos.isModuleRegistered(import_core250.ModuleNames.ColumnsToolPanelModule)?{name:r("columnChooser","Choose Columns"),icon:(0,import_core250._createIconNoSpan)("columns",this.gos,null),action:()=>this.menuService.showColumnChooser({column:t,eventSource:s()})}:null;case"sortAscending":return{name:r("sortAscending","Sort Ascending"),icon:(0,import_core250._createIconNoSpan)("sortAscending",this.gos,null),action:()=>this.sortController.setSortForColumn(t,"asc",!1,i)};case"sortDescending":return{name:r("sortDescending","Sort Descending"),icon:(0,import_core250._createIconNoSpan)("sortDescending",this.gos,null),action:()=>this.sortController.setSortForColumn(t,"desc",!1,i)};case"sortUnSort":return{name:r("sortUnSort","Clear Sort"),icon:(0,import_core250._createIconNoSpan)("sortUnSort",this.gos,null),action:()=>this.sortController.setSortForColumn(t,null,!1,i)};default:return(0,import_core250._warnOnce)(`unknown menu item type ${e}`),null}}createAggregationSubMenu(e,t){const s=this.localeService.getLocaleTextFunc();let i;if(e.isPrimary())i=e;else{const a=e.getColDef().pivotValueColumn;i=(0,import_core250._exists)(a)?a:void 0}const r=[];if(i){const a=i.isValueActive(),o=t.getFuncNames(i);r.push({name:s("noAggregation","None"),action:()=>{this.funcColsService.removeValueColumns([i],"contextMenu"),this.funcColsService.setColumnAggFunc(i,void 0,"contextMenu")},checked:!a}),o.forEach(n=>{r.push({name:s(n,t.getDefaultFuncLabel(n)),action:()=>{this.funcColsService.setColumnAggFunc(i,n,"contextMenu"),this.funcColsService.addValueColumns([i],"contextMenu")},checked:a&&i.getAggFunc()===n})})}return r}},MenuUtils=class extends import_core251.BeanStub{constructor(){super(...arguments),this.beanName="menuUtils"}wireBeans(e){this.focusService=e.focusService,this.headerNavigationService=e.headerNavigationService,this.visibleColsService=e.visibleColsService}restoreFocusOnClose(e,t,s,i){const{eventSource:r}=e,a=s instanceof KeyboardEvent;if(!i&&!a||!r)return;const o=(0,import_core251._getActiveDomElement)(this.gos);!t.contains(o)&&!(0,import_core251._isNothingFocused)(this.gos)||this.focusHeaderCell(e)}closePopupAndRestoreFocusOnSelect(e,t,s){let i;s&&s.keyboardEvent&&(i=s.keyboardEvent),e(i&&{keyboardEvent:i});const r=this.focusService.getFocusedCell();if((0,import_core251._isNothingFocused)(this.gos))if(r){const{rowIndex:a,rowPinned:o,column:n}=r;this.focusService.setFocusedCell({rowIndex:a,column:n,rowPinned:o,forceBrowserFocus:!0,preventScrollOnBrowserFocus:!0})}else this.focusHeaderCell(t)}onContextMenu(e,t,s){if(!this.gos.get("allowContextMenuWithControlKey")&&e&&(e.ctrlKey||e.metaKey)||(e&&this.blockMiddleClickScrollsIfNeeded(e),this.gos.get("suppressContextMenu")))return;const i=e??t.touches[0];if(s(i)){const r=e??t;r&&r.cancelable&&r.preventDefault()}}async focusHeaderCell(e){const{column:t,columnIndex:s,headerPosition:i,eventSource:r}=e,a=await this.visibleColsService.getAllCols().some(o=>o===t);if(!(t&&!t.isAlive())){if(a&&r&&(0,import_core251._isVisible)(r)){const o=this.focusService.findTabbableParent(r);o&&(t&&this.headerNavigationService.scrollToColumn(t),o.focus())}else if(i&&s!==-1){const o=this.visibleColsService.getAllCols(),n=o[s]||(0,import_core251._last)(o);n&&this.focusService.focusHeaderPosition({headerPosition:{headerRowIndex:i.headerRowIndex,column:n}})}}}blockMiddleClickScrollsIfNeeded(e){this.gos.get("suppressMiddleClickScrolls")&&e.which===2&&e.preventDefault()}},VERSION12="32.2.2",MenuCoreModule=(0,import_core239._defineModule)({version:VERSION12,moduleName:`${import_core239.ModuleNames.MenuModule}-core`,beans:[EnterpriseMenuFactory,ContextMenuFactory,MenuItemMapper,ChartMenuItemMapper,ColumnChooserFactory,ColumnMenuFactory,MenuUtils],dependantModules:[EnterpriseCoreModule],userComponents:[{name:"agMenuItem",classImp:AgMenuItemRenderer}]}),MenuApiModule=(0,import_core239._defineModule)({version:VERSION12,moduleName:`${import_core239.ModuleNames.MenuModule}-api`,apiFunctions:{showContextMenu,showColumnChooser,hideColumnChooser},dependantModules:[MenuCoreModule,import_core239._CommunityMenuApiModule]}),MenuModule=(0,import_core239._defineModule)({version:VERSION12,moduleName:import_core239.ModuleNames.MenuModule,dependantModules:[MenuCoreModule,MenuApiModule]}),import_core252=require("ag-grid-community"),import_core254=require("ag-grid-community"),import_core256=require("ag-grid-community"),MultiFilter=class de extends import_core254.TabGuardComp{constructor(){super('<div class="ag-multi-filter ag-menu-list-compact"></div>'),this.filterDefs=[],this.filters=[],this.guiDestroyFuncs=[],this.filterGuis=[],this.activeFilterIndices=[],this.lastActivatedMenuItem=null,this.afterFiltersReadyFuncs=[]}wireBeans(t){this.filterManager=t.filterManager,this.userComponentFactory=t.userComponentFactory,this.focusService=t.focusService}postConstruct(){this.initialiseTabGuard({onFocusIn:t=>this.onFocusIn(t)})}static getFilterDefs(t){const{filters:s}=t;return s&&s.length>0?s:[{filter:"agTextColumnFilter"},{filter:"agSetColumnFilter"}]}init(t){this.params=t,this.filterDefs=de.getFilterDefs(t);const{column:s,filterChangedCallback:i}=t;this.column=s,this.filterChangedCallback=i;const r=[];return this.filterDefs.forEach((a,o)=>{const n=this.createFilter(a,o);n!=null&&r.push(n)}),new import_core254.AgPromise(a=>{import_core254.AgPromise.all(r).then(o=>{this.filters=o,this.refreshGui("columnMenu").then(()=>{a()})})}).then(()=>{this.afterFiltersReadyFuncs.forEach(a=>a()),this.afterFiltersReadyFuncs.length=0})}refreshGui(t){return t===this.lastOpenedInContainer?import_core254.AgPromise.resolve():(this.tabGuardFeature.removeAllChildrenExceptTabGuards(),this.destroyChildren(),import_core254.AgPromise.all(this.filters.map((s,i)=>{const r=this.filterDefs[i],a=this.getFilterTitle(s,r);let o;if(r.display==="subMenu"&&t!=="toolPanel")o=this.insertFilterMenu(s,a).then(n=>n.getGui());else if(r.display==="subMenu"||r.display==="accordion"){const n=this.insertFilterGroup(s,a);o=import_core254.AgPromise.resolve(n.getGui())}else o=import_core254.AgPromise.resolve(s.getGui());return o})).then(s=>{s.forEach((i,r)=>{r>0&&this.appendChild((0,import_core254._loadTemplate)('<div class="ag-filter-separator"></div>')),this.appendChild(i)}),this.filterGuis=s,this.lastOpenedInContainer=t}))}getFilterTitle(t,s){return s.title!=null?s.title:t instanceof import_core254.ProvidedFilter?t.getFilterTitle():"Filter"}destroyChildren(){this.guiDestroyFuncs.forEach(t=>t()),this.guiDestroyFuncs.length=0,this.filterGuis.length=0}insertFilterMenu(t,s){const i=this.createBean(new AgMenuItemComponent);return i.init({menuItemDef:{name:s,subMenu:[],cssClasses:["ag-multi-filter-menu-item"],menuItem:AgMenuItemRenderer,menuItemParams:{cssClassPrefix:"ag-compact-menu-option",isCompact:!0}},level:0,isAnotherSubMenuOpen:()=>!1,childComponent:t,contextParams:{column:null,node:null,value:null}}).then(()=>{i.setParentComponent(this),this.guiDestroyFuncs.push(()=>this.destroyBean(i)),this.addManagedListeners(i,{menuItemActivated:a=>{this.lastActivatedMenuItem&&this.lastActivatedMenuItem!==a.menuItem&&this.lastActivatedMenuItem.deactivate(),this.lastActivatedMenuItem=a.menuItem}});const r=i.getGui();return i.addManagedElementListeners(r,{keydown:a=>{const{key:o}=a;switch(o){case import_core254.KeyCode.UP:case import_core254.KeyCode.RIGHT:case import_core254.KeyCode.DOWN:case import_core254.KeyCode.LEFT:a.preventDefault(),o===import_core254.KeyCode.RIGHT&&i.openSubMenu(!0);break}},focusin:()=>i.activate(),focusout:()=>{!i.isSubMenuOpen()&&!i.isSubMenuOpening()&&i.deactivate()}}),i})}insertFilterGroup(t,s){const i=this.createBean(new AgGroupComponent({title:s,cssIdentifier:"multi-filter"}));return this.guiDestroyFuncs.push(()=>this.destroyBean(i)),i.addItem(t.getGui()),i.toggleGroupExpand(!1),t.afterGuiAttached&&i.addManagedListeners(i,{expanded:()=>t.afterGuiAttached({container:this.lastOpenedInContainer,suppressFocus:!0,hidePopup:this.hidePopup})}),i}isFilterActive(){return this.filters.some(t=>t.isFilterActive())}getLastActiveFilterIndex(){return this.activeFilterIndices.length>0?this.activeFilterIndices[this.activeFilterIndices.length-1]:null}doesFilterPass(t,s){let i=!0;return this.filters.forEach(r=>{!i||r===s||!r.isFilterActive()||(i=r.doesFilterPass(t))}),i}getFilterType(){return"multi"}getModelFromUi(){return{filterType:this.getFilterType(),filterModels:this.filters.map(s=>{const i=s;return typeof i.getModelFromUi=="function"?i.getModelFromUi():null})}}getModel(){return this.isFilterActive()?{filterType:this.getFilterType(),filterModels:this.filters.map(s=>s.isFilterActive()?s.getModel():null)}:null}setModel(t){const s=(r,a)=>new import_core254.AgPromise(o=>{const n=r.setModel(a);n?n.then(()=>o()):o()});let i=[];return t==null?i=this.filters.map((r,a)=>s(r,null).then(()=>{this.updateActiveList(a)})):this.filters.forEach((r,a)=>{const o=t.filterModels.length>a?t.filterModels[a]:null,n=s(r,o).then(()=>{this.updateActiveList(a)});i.push(n)}),import_core254.AgPromise.all(i).then(()=>{})}applyModel(t="api"){let s=!1;return this.filters.forEach(i=>{i instanceof import_core254.ProvidedFilter&&(s=i.applyModel(t)||s)}),s}getChildFilterInstance(t){return this.filters[t]}afterGuiAttached(t){let s;t?(this.hidePopup=t.hidePopup,s=this.refreshGui(t.container)):(this.hidePopup=void 0,s=import_core254.AgPromise.resolve());const i=t?.suppressFocus;s.then(()=>{const{filterDefs:r}=this;let a=!!i;r&&(0,import_core254._forEachReverse)(r,(n,l)=>{const c=l===0,h=n.display&&n.display!=="inline",d=i||!c||h,u={...t??{},suppressFocus:d},p=this.filters?.[l];if(p&&(this.executeFunctionIfExistsOnFilter(p,"afterGuiAttached",u),c&&!d&&(a=!0)),!i&&c&&h){const g=this.filterGuis[l];g&&(this.focusService.focusInto(g)||g.focus(),a=!0)}});const o=(0,import_core254._getActiveDomElement)(this.gos);!a&&((0,import_core254._isNothingFocused)(this.gos)||this.getGui().contains(o))&&this.forceFocusOutOfContainer(!0)})}afterGuiDetached(){this.executeFunctionIfExists("afterGuiDetached")}onAnyFilterChanged(){this.executeFunctionIfExists("onAnyFilterChanged")}onNewRowsLoaded(){this.executeFunctionIfExists("onNewRowsLoaded")}destroy(){this.filters.forEach(t=>this.destroyBean(t)),this.filters.length=0,this.destroyChildren(),this.hidePopup=void 0,super.destroy()}executeFunctionIfExists(t,...s){(0,import_core254._forEachReverse)(this.filters,i=>{this.executeFunctionIfExistsOnFilter(i,t,s)})}executeFunctionIfExistsOnFilter(t,s,...i){const r=t[s];typeof r=="function"&&r.apply(t,i)}createFilter(t,s){const{filterModifiedCallback:i,doesRowPassOtherFilter:r}=this.params;let a;const o={...this.filterManager.createFilterParams(this.column,this.column.getColDef()),filterModifiedCallback:i,filterChangedCallback:c=>{this.executeWhenAllFiltersReady(()=>this.filterChanged(s,c))},doesRowPassOtherFilter:c=>r(c)&&this.doesFilterPass({node:c,data:c.data},a)},n=this.userComponentFactory.getFilterDetails(t,o,"agTextColumnFilter");if(!n)return null;const l=n.newAgStackInstance();return l&&l.then(c=>a=c),l}executeWhenAllFiltersReady(t){this.filters&&this.filters.length>0?t():this.afterFiltersReadyFuncs.push(t)}updateActiveList(t){const s=this.filters[t];(0,import_core254._removeFromArray)(this.activeFilterIndices,t),s.isFilterActive()&&this.activeFilterIndices.push(t)}filterChanged(t,s){this.updateActiveList(t),this.filterChangedCallback(s);const i=this.filters[t];this.filters.forEach(r=>{r!==i&&typeof r.onAnyFilterChanged=="function"&&r.onAnyFilterChanged()})}onFocusIn(t){this.lastActivatedMenuItem!=null&&!this.lastActivatedMenuItem.getGui().contains(t.target)&&(this.lastActivatedMenuItem.deactivate(),this.lastActivatedMenuItem=null)}getModelAsString(t){if(!this.filters||!t?.filterModels?.length)return"";const s=this.getLastActiveFilterIndex()??0;return this.filters[s].getModelAsString?.(t.filterModels[s])??""}},MultiFloatingFilterComp=class extends import_core256.Component{constructor(){super('<div class="ag-multi-floating-filter ag-floating-filter-input"></div>'),this.floatingFilters=[],this.compDetailsList=[]}wireBeans(e){this.userComponentFactory=e.userComponentFactory,this.filterManager=e.filterManager}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))}),import_core256.AgPromise.all(t).then(s=>{s.forEach((i,r)=>{this.floatingFilters.push(i);const a=i.getGui();this.appendChild(a),r>0&&(0,import_core256._setDisplayed)(a,!1)})})}onParamsUpdated(e){this.refresh(e)}refresh(e){this.params=e;const{compDetailsList:t,floatingFilterParamsList:s}=this.getCompDetailsList(e);t.length===this.compDetailsList.length&&t.every((r,a)=>!this.filterManager?.areFilterCompsDifferent(this.compDetailsList[a],r))?s.forEach((r,a)=>{const o=this.floatingFilters[a];let n=!1;o.refresh&&o.refresh(r)!==null&&(n=!0),n||o.onParamsUpdated?.(r)}):((0,import_core256._clearElement)(this.getGui()),this.destroyBeans(this.floatingFilters),this.floatingFilters=[],this.compDetailsList=[],this.setParams(t))}getCompDetailsList(e){const t=[],s=[],i=e.filterParams;return MultiFilter.getFilterDefs(i).forEach((r,a)=>{const o={...e,parentFilterInstance:l=>{this.parentMultiFilterInstance(c=>{const h=c.getChildFilterInstance(a);h!=null&&l(h)})}};(0,import_core256._mergeDeep)(o.filterParams,r.filterParams);const n=this.getCompDetails(r,o);n&&(t.push(n),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),(0,import_core256._setDisplayed)(i.getGui(),r===0)});else{const i=s.getLastActiveFilterIndex();this.floatingFilters.forEach((r,a)=>{const o=e.filterModels.length>a?e.filterModels[a]:null;r.onParentModelChanged(o,t);const n=i==null?a===0:a===i;(0,import_core256._setDisplayed)(r.getGui(),n)})}})}destroy(){this.destroyBeans(this.floatingFilters),this.floatingFilters.length=0,super.destroy()}getCompDetails(e,t){const s=(0,import_core256.getDefaultFloatingFilterType)(this.frameworkOverrides,e,()=>this.filterManager.getDefaultFloatingFilter(this.params.column))??"agReadOnlyFloatingFilter";return this.userComponentFactory.getFloatingFilterCompDetails(e,t,s)}parentMultiFilterInstance(e){this.params.parentFilterInstance(t=>{if(!(t instanceof MultiFilter))throw new Error("AG Grid - MultiFloatingFilterComp expects MultiFilter as its parent");e(t)})}},VERSION13="32.2.2",MultiFilterCoreModule=(0,import_core252._defineModule)({version:VERSION13,moduleName:`${import_core252.ModuleNames.MultiFilterModule}-core`,userComponents:[{name:"agMultiColumnFilter",classImp:MultiFilter},{name:"agMenuItem",classImp:AgMenuItemRenderer}],dependantModules:[EnterpriseCoreModule,import_core252._ColumnFilterModule]}),MultiFloatingFilterModule=(0,import_core252._defineModule)({version:VERSION13,moduleName:"@ag-grid-enterprise/multi-floating-filter",userComponents:[{name:"agMultiColumnFloatingFilter",classImp:MultiFloatingFilterComp}],dependantModules:[MultiFilterCoreModule,import_core252._ReadOnlyFloatingFilterModule]}),MultiFilterModule=(0,import_core252._defineModule)({version:VERSION13,moduleName:import_core252.ModuleNames.MultiFilterModule,dependantModules:[MultiFilterCoreModule,MultiFloatingFilterModule]}),import_core257=require("ag-grid-community"),import_core259=require("ag-grid-community"),RichSelectCellEditor=class extends import_core259.PopupComponent{constructor(){super('<div class="ag-cell-edit-wrapper"></div>')}init(e){this.params=e;const{cellStartedEdit:t,values:s}=e;(0,import_core259._missing)(s)&&(0,import_core259._warnOnce)("agRichSelectCellEditor requires cellEditorParams.values to be set");const{params:i,valuesPromise:r}=this.buildRichSelectParams();this.richSelect=this.createManagedBean(new AgRichSelect(i)),this.richSelect.addCssClass("ag-cell-editor"),this.appendChild(this.richSelect),r&&r.then(a=>{this.richSelect.setValueList({valueList:a,refresh:!0});const o=this.getSearchStringCallback(a);o&&this.richSelect.setSearchStringCreator(o)}),this.addManagedListeners(this.richSelect,{fieldPickerValueSelected:this.onEditorPickerValueSelected.bind(this)}),this.focusAfterAttached=t}onEditorPickerValueSelected(e){setTimeout(()=>this.params.stopEditing(!e.fromEnterKey))}buildRichSelectParams(){const{cellRenderer:e,cellHeight:t,value:s,values:i,formatValue:r,searchDebounceDelay:a,valueListGap:o,valueListMaxHeight:n,valueListMaxWidth:l,allowTyping:c,filterList:h,searchType:d,highlightMatch:u,valuePlaceholder:p,eventKey:g,multiSelect:m,suppressDeselectAll:C,suppressMultiSelectPillRenderer:f}=this.params,v={value:s,cellRenderer:e,cellRowHeight:t,searchDebounceDelay:a,valueFormatter:r,pickerAriaLabelKey:"ariaLabelRichSelectField",pickerAriaLabelValue:"Rich Select Field",pickerType:"virtual-list",pickerGap:o,allowTyping:c,filterList:h,searchType:d,highlightMatch:u,maxPickerHeight:n,maxPickerWidth:l,placeholder:p,initialInputValue:g?.length===1?g:void 0,multiSelect:m,suppressDeselectAll:C,suppressMultiSelectPillRenderer:f};let S,y;return typeof i=="function"?S=i(this.params):S=i??[],Array.isArray(S)?(v.valueList=S,v.searchStringCreator=this.getSearchStringCallback(S)):y=S,m&&c&&(this.params.allowTyping=v.allowTyping=!1,(0,import_core259._warnOnce)("agRichSelectCellEditor cannot have `multiSelect` and `allowTyping` set to `true`. AllowTyping has been turned off.")),{params:v,valuesPromise:y}}getSearchStringCallback(e){const{colDef:t}=this.params;if(!(typeof e[0]!="object"||!t.keyCreator))return s=>s.map(i=>{const r=this.gos.addGridCommonParams({value:i,colDef:this.params.colDef,column:this.params.column,node:this.params.node,data:this.params.data});return t.keyCreator(r)})}afterGuiAttached(){const{focusAfterAttached:e,params:t}=this;setTimeout(()=>{if(!this.isAlive())return;if(e){const i=this.richSelect.getFocusableElement();i.focus();const{allowTyping:r,eventKey:a}=this.params;r&&(!a||a.length!==1)&&i.select()}this.richSelect.showPicker();const{eventKey:s}=t;s&&s?.length===1&&this.richSelect.searchTextFromString(s)})}focusIn(){this.richSelect.getFocusableElement().focus()}getValue(){return this.richSelect.getValue()}isPopup(){return!1}},VERSION14="32.2.2",RichSelectModule=(0,import_core257._defineModule)({version:VERSION14,moduleName:import_core257.ModuleNames.RichSelectModule,beans:[],userComponents:[{name:"agRichSelect",classImp:RichSelectCellEditor},{name:"agRichSelectCellEditor",classImp:RichSelectCellEditor}],dependantModules:[EnterpriseCoreModule,import_core257._EditCoreModule]}),import_core261=require("ag-grid-community"),import_core263=require("ag-grid-community"),import_core264=require("ag-grid-community"),import_core265=require("ag-grid-community"),import_core266=require("ag-grid-community"),import_core267=require("ag-grid-community"),import_core268=require("ag-grid-community"),import_core269=require("ag-grid-community"),import_core270=require("ag-grid-community"),import_core271=require("ag-grid-community"),import_core272=require("ag-grid-community"),import_core273=require("ag-grid-community"),import_core274=require("ag-grid-community"),import_core275=require("ag-grid-community"),import_core276=require("ag-grid-community"),import_core277=require("ag-grid-community"),import_core278=require("ag-grid-community"),import_core279=require("ag-grid-community"),import_core280=require("ag-grid-community"),import_core281=require("ag-grid-community"),GROUP_MISSING_KEY_ID="ag-Grid-MissingKey",BlockUtils=class extends import_core263.BeanStub{constructor(){super(...arguments),this.beanName="ssrmBlockUtils"}wireBeans(e){this.valueService=e.valueService,this.showRowGroupColsService=e.showRowGroupColsService,this.nodeManager=e.ssrmNodeManager,this.beans=e,this.expansionService=e.expansionService,this.serverSideRowModel=e.rowModel,this.storeFactory=e.ssrmStoreFactory}createRowNode(e){const t=new import_core263.RowNode(this.beans),s=e.rowHeight!=null?e.rowHeight:(0,import_core263._getRowHeightAsNumber)(this.gos);return t.setRowHeight(s),t.group=e.group,t.leafGroup=e.leafGroup,t.level=e.level,t.uiLevel=e.level,t.parent=e.parent,t.stub=!0,t.__needsRefreshWhenVisible=!1,t.group&&(t.expanded=!1,t.field=e.field,t.rowGroupColumn=e.rowGroupColumn),t}destroyRowNodes(e){e&&e.forEach(t=>this.destroyRowNode(t))}destroyRowNode(e,t=!1){e.childStore&&!t&&(this.destroyBean(e.childStore),e.childStore=null),e.sibling&&!e.footer&&this.destroyRowNode(e.sibling,!1),e.clearRowTopAndRowIndex(),e.id!=null&&this.nodeManager.removeNode(e)}setTreeGroupInfo(e){e.updateHasChildren();const t=this.gos.get("getServerSideGroupKey");e.hasChildren()&&t!=null&&(e.key=t(e.data)),!e.hasChildren()&&e.childStore!=null&&(this.destroyBean(e.childStore),e.childStore=null,e.expanded=!1)}setRowGroupInfo(e){if(e.key=this.valueService.getValue(e.rowGroupColumn,e),(e.key===null||e.key===void 0)&&(0,import_core263._doOnce)(()=>{(0,import_core263._warnOnce)("null and undefined values are not allowed for server side row model keys"),e.rowGroupColumn&&(0,import_core263._warnOnce)(`column = ${e.rowGroupColumn.getId()}`),(0,import_core263._warnOnce)("data is "+e.data)},"ServerSideBlock-CannotHaveNullOrUndefinedForKey"),this.gos.get("groupAllowUnbalanced")&&e.key===""){const r=this.serverSideRowModel.getParams();e.childStore=this.createBean(this.storeFactory.createStore(r,e))}(0,import_core263._getGroupTotalRowCallback)(this.beans.gos)({node:e})&&(e.createFooter(),e.sibling&&(e.sibling.uiLevel=e.uiLevel+1))}setMasterDetailInfo(e){const t=this.gos.get("isRowMaster");t!=null?e.master=t(e.data):e.master=!0}updateDataIntoRowNode(e,t){e.updateData(t),this.gos.get("treeData")?(this.setTreeGroupInfo(e),this.setChildCountIntoRowNode(e)):e.group?(this.setChildCountIntoRowNode(e),e.footer||((0,import_core263._getGroupTotalRowCallback)(this.beans.gos)({node:e})?e.sibling?e.sibling.updateData(t):e.createFooter():e.sibling&&e.destroyFooter())):this.gos.get("masterDetail")}setDataIntoRowNode(e,t,s,i){e.stub=!1;const r=this.gos.get("treeData");(0,import_core263._exists)(t)?(e.setDataAndId(t,s),r?this.setTreeGroupInfo(e):e.group?this.setRowGroupInfo(e):this.gos.get("masterDetail")&&this.setMasterDetailInfo(e)):(e.setDataAndId(void 0,void 0),e.key=null),(r||e.group)&&(this.setGroupDataIntoRowNode(e),this.setChildCountIntoRowNode(e)),(0,import_core263._exists)(t)&&(e.setRowHeight((0,import_core263._getRowHeightForNode)(this.gos,e,!1,i).height),e.sibling?.setRowHeight((0,import_core263._getRowHeightForNode)(this.gos,e.sibling,!1,i).height))}setChildCountIntoRowNode(e){const t=this.gos.get("getChildCount");t&&e.setAllChildrenCount(t(e.data))}setGroupDataIntoRowNode(e){const t=this.showRowGroupColsService?.getShowRowGroupCols()??[],s=this.gos.get("treeData");t.forEach(i=>{if(e.groupData==null&&(e.groupData={}),s)e.groupData[i.getColId()]=e.key;else if(i.isRowGroupDisplayed(e.rowGroupColumn.getId())){const r=this.valueService.getValue(e.rowGroupColumn,e);e.groupData[i.getColId()]=r}})}clearDisplayIndex(e){e.clearRowTopAndRowIndex(),e.hasChildren()&&(0,import_core263._exists)(e.childStore)&&e.childStore.clearDisplayIndexes(),e.master&&e.detailNode&&e.detailNode.clearRowTopAndRowIndex()}setDisplayIndex(e,t,s,i){const r=this.gos.get("groupAllowUnbalanced")&&e.group&&e.key==="";if(this.gos.get("groupHideOpenParents")&&e.group&&e.expanded||r?(e.setRowIndex(null),e.setRowTop(null)):(e.setRowIndex(t.next()),e.setRowTop(s.value),s.value+=e.rowHeight),e.setUiLevel(i),e.footer)return;if(e.master&&(e.expanded&&e.detailNode?(e.detailNode.setRowIndex(t.next()),e.detailNode.setRowTop(s.value),s.value+=e.detailNode.rowHeight):e.detailNode&&e.detailNode.clearRowTopAndRowIndex()),e.hasChildren()&&(0,import_core263._exists)(e.childStore)){const l=e.childStore;e.expanded||r?l.setDisplayIndexes(t,s,r?i:i+1):l.clearDisplayIndexes()}}binarySearchForDisplayIndex(e,t){let s=0,i=t.length-1;if((0,import_core263._missing)(i)||(0,import_core263._missing)(s)){(0,import_core263._warnOnce)(`error: topPointer = ${i}, bottomPointer = ${s}`);return}for(;;){const r=Math.floor((s+i)/2),a=t[r];if(a.rowIndex===e)return a;const o=a.master&&a.expanded,n=a.detailNode;if(o&&n&&n.rowIndex===e)return a.detailNode;const l=a.childStore;if(a.expanded&&l&&l.isDisplayIndexInStore(e))return l.getRowUsingDisplayIndex(e);if(a.rowIndex<e)s=r+1;else if(a.rowIndex>e)i=r-1;else{(0,import_core263._warnOnce)(`error: unable to locate rowIndex = ${e} in cache`);return}}}extractRowBounds(e,t){const s=i=>({rowHeight:i.rowHeight,rowTop:i.rowTop});if(e.rowIndex===t)return s(e);if(e.hasChildren()&&e.expanded&&(0,import_core263._exists)(e.childStore)){const i=e.childStore;if(i.isDisplayIndexInStore(t))return i.getRowBounds(t)}else if(e.master&&e.expanded&&(0,import_core263._exists)(e.detailNode)&&e.detailNode.rowIndex===t)return s(e.detailNode)}isPixelInNodeRange(e,t){return!(0,import_core263._exists)(e.rowTop)||!(0,import_core263._exists)(e.rowHeight)?!1:t>=e.rowTop&&t<e.rowTop+e.rowHeight}getIndexAtPixel(e,t){if(this.isPixelInNodeRange(e,t))return e.rowIndex;const s=e.master&&e.expanded,i=e.detailNode;if(s&&i&&this.isPixelInNodeRange(i,t))return e.detailNode.rowIndex;if(e.hasChildren()&&e.expanded&&(0,import_core263._exists)(e.childStore)){const r=e.childStore;if(r.isPixelInRange(t))return r.getRowIndexAtPixel(t)}return null}createNodeIdPrefix(e){const t=[];let s=e;for(;s&&s.level>=0;)s.key===""?t.push(GROUP_MISSING_KEY_ID):t.push(s.key),s=s.parent;if(t.length>0)return t.reverse().join("-")}checkOpenByDefault(e){return this.expansionService.checkOpenByDefault(e)}},ExpandListener=class extends import_core264.BeanStub{constructor(){super(...arguments),this.beanName="ssrmExpandListener"}wireBeans(e){this.serverSideRowModel=e.rowModel,this.storeFactory=e.ssrmStoreFactory,this.beans=e}postConstruct(){(0,import_core264._isServerSideRowModel)(this.gos)&&this.addManagedEventListeners({rowGroupOpened:this.onRowGroupOpened.bind(this)})}onRowGroupOpened(e){const t=e.node;if(t.expanded){if(t.master)this.createDetailNode(t);else if((0,import_core264._missing)(t.childStore)){const s=this.serverSideRowModel.getParams();t.childStore=this.createBean(this.storeFactory.createStore(s,t))}}else this.gos.get("purgeClosedRowNodes")&&(0,import_core264._exists)(t.childStore)&&(t.childStore=this.destroyBean(t.childStore));this.eventService.dispatchEvent({type:"storeUpdated"})}createDetailNode(e){if((0,import_core264._exists)(e.detailNode))return e.detailNode;const t=new import_core264.RowNode(this.beans);t.detail=!0,t.selectable=!1,t.parent=e,(0,import_core264._exists)(e.id)&&(t.id="detail_"+e.id),t.data=e.data,t.level=e.level+1;const s=200,i=(0,import_core264._getRowHeightForNode)(this.gos,t).height;return t.rowHeight=i||s,e.detailNode=t,t}},FilterListener=class extends import_core265.BeanStub{constructor(){super(...arguments),this.beanName="ssrmFilterListener"}wireBeans(e){this.serverSideRowModel=e.rowModel,this.filterManager=e.filterManager,this.listenerUtils=e.ssrmListenerUtils}postConstruct(){(0,import_core265._isServerSideRowModel)(this.gos)&&this.addManagedEventListeners({advancedFilterEnabledChanged:()=>this.onFilterChanged(!0),filterChanged:()=>this.onFilterChanged()})}onFilterChanged(e){const t=this.serverSideRowModel.getParams();if(!t)return;const s=t.filterModel;let i,r;if(this.filterManager?.isAdvancedFilterEnabled()){i=this.filterManager.getAdvancedFilterModel();const l=e?Object.keys(s??{}):this.getAdvancedFilterColumns(s),c=this.getAdvancedFilterColumns(i);l.forEach(h=>c.add(h)),r=Array.from(c)}else if(i=this.filterManager?.getFilterModel()??{},e){const l=this.getAdvancedFilterColumns(s);Object.keys(i).forEach(c=>l.add(c)),r=Array.from(l)}else r=this.findChangedColumns(s,i);const a=this.listenerUtils.isSortingWithValueColumn(r),o=this.listenerUtils.isSortingWithSecondaryColumn(r),n={valueColChanged:a,secondaryColChanged:o,changedColumns:r};this.serverSideRowModel.refreshAfterFilter(i,n)}findChangedColumns(e,t){const s={};Object.keys(e).forEach(r=>s[r]=!0),Object.keys(t).forEach(r=>s[r]=!0);const i=[];return Object.keys(s).forEach(r=>{const a=JSON.stringify(e[r]),o=JSON.stringify(t[r]);a!=o&&i.push(r)}),i}getAdvancedFilterColumns(e){const t=new Set;if(!e)return t;const s=i=>{i.filterType==="join"?i.conditions.forEach(r=>s(r)):t.add(i.colId)};return s(e),t}},ListenerUtils=class extends import_core266.BeanStub{constructor(){super(...arguments),this.beanName="ssrmListenerUtils"}wireBeans(e){this.pivotResultColsService=e.pivotResultColsService,this.funcColsService=e.funcColsService}isSortingWithValueColumn(e){const t=this.funcColsService.getValueColumns().map(s=>s.getColId());for(let s=0;s<e.length;s++)if(t.indexOf(e[s])>-1)return!0;return!1}isSortingWithSecondaryColumn(e){const t=this.pivotResultColsService.getPivotResultCols();if(!t)return!1;const s=t.list.map(i=>i.getColId());for(let i=0;i<e.length;i++)if(s.indexOf(e[i])>-1)return!0;return!1}},SortListener=class extends import_core267.BeanStub{constructor(){super(...arguments),this.beanName="ssrmSortService"}wireBeans(e){this.sortController=e.sortController,this.serverSideRowModel=e.rowModel,this.listenerUtils=e.ssrmListenerUtils}postConstruct(){(0,import_core267._isServerSideRowModel)(this.gos)&&this.addManagedEventListeners({sortChanged:this.onSortChanged.bind(this)})}onSortChanged(){const e=this.serverSideRowModel.getParams();if(!e)return;const t=this.sortController.getSortModel(),s=e.sortModel,i=this.findChangedColumnsInSort(t,s),r=this.listenerUtils.isSortingWithValueColumn(i),a=this.listenerUtils.isSortingWithSecondaryColumn(i),o={valueColChanged:r,secondaryColChanged:a,changedColumns:i};this.serverSideRowModel.refreshAfterSort(t,o)}findChangedColumnsInSort(e,t){let s=[];[e,t].forEach(a=>{if(a){const o=a.map(n=>n.colId);s=s.concat(o)}});const i=(a,o)=>{const n=a?a.sort:null,l=o?o.sort:null;return n!==l},r=(a,o)=>{const n=a?t.indexOf(a):-1,l=o?e.indexOf(o):-1;return n!==l};return s.filter(a=>{const o=t.find(l=>l.colId===a),n=e.find(l=>l.colId===a);return i(o,n)||r(o,n)})}},NodeManager=class extends import_core268.BeanStub{constructor(){super(...arguments),this.beanName="ssrmNodeManager",this.rowNodes={}}addRowNode(e){const t=e.id;this.rowNodes[t]&&((0,import_core268._warnOnce)(`Duplicate node id ${e.id}. Row IDs are provided via the getRowId() callback. Please modify the getRowId() callback code to provide unique row id values.`),(0,import_core268._warnOnce)("first instance",this.rowNodes[t].data),(0,import_core268._warnOnce)("second instance",e.data)),this.rowNodes[t]=e}removeNode(e){const t=e.id;this.rowNodes[t]&&(this.rowNodes[t]=void 0)}destroy(){this.clear(),super.destroy()}clear(){this.rowNodes={},super.destroy()}},FullStore=class extends import_core270.RowNodeBlock{constructor(e,t,s){super(0),this.nodeIdSequence=new import_core270.NumberSequence,this.info={},this.ssrmParams=e,this.parentRowNode=s,this.level=s.level+1,this.groupLevel=e.rowGroupCols?this.level<e.rowGroupCols.length:void 0,this.leafGroup=e.rowGroupCols?this.level===e.rowGroupCols.length-1:!1}wireBeans(e){this.storeUtils=e.ssrmStoreUtils,this.blockUtils=e.ssrmBlockUtils,this.funcColsService=e.funcColsService,this.rowNodeBlockLoader=e.rowNodeBlockLoader,this.rowNodeSorter=e.rowNodeSorter,this.sortController=e.sortController,this.selectionService=e.selectionService,this.nodeManager=e.ssrmNodeManager,this.filterManager=e.filterManager,this.transactionManager=e.ssrmTransactionManager,this.serverSideRowModel=e.rowModel}postConstruct(){if(this.usingTreeData=this.gos.get("treeData"),this.nodeIdPrefix=this.blockUtils.createNodeIdPrefix(this.parentRowNode),!this.usingTreeData&&this.groupLevel){const i=this.ssrmParams.rowGroupCols[this.level];this.groupField=i.field,this.rowGroupColumn=this.funcColsService.getRowGroupColumns()[this.level]}let e=1;const t=this.parentRowNode.level===-1,s=this.storeUtils.getServerSideInitialRowCount();t&&s!=null&&(e=s),this.initialiseRowNodes(e),this.rowNodeBlockLoader.addBlock(this),this.addDestroyFunc(()=>this.rowNodeBlockLoader.removeBlock(this)),this.postSortFunc=this.gos.getCallback("postSortRows"),s!=null&&this.eventService.dispatchEventOnce({type:"rowCountReady"})}destroy(){this.destroyRowNodes(),super.destroy()}destroyRowNodes(){this.blockUtils.destroyRowNodes(this.allRowNodes),this.allRowNodes=[],this.nodesAfterSort=[],this.nodesAfterFilter=[],this.allNodesMap={}}initialiseRowNodes(e,t=!1){this.destroyRowNodes();for(let s=0;s<e;s++){const i=this.blockUtils.createRowNode({field:this.groupField,group:this.groupLevel,leafGroup:this.leafGroup,level:this.level,parent:this.parentRowNode,rowGroupColumn:this.rowGroupColumn});t&&(i.failedLoad=!0),this.allRowNodes.push(i),this.nodesAfterFilter.push(i),this.nodesAfterSort.push(i)}}getBlockStateJson(){return{id:this.nodeIdPrefix?this.nodeIdPrefix:"",state:this.getState()}}loadFromDatasource(){this.storeUtils.loadFromDatasource({startRow:void 0,endRow:void 0,parentBlock:this,parentNode:this.parentRowNode,storeParams:this.ssrmParams,success:this.success.bind(this,this.getVersion()),fail:this.pageLoadFailed.bind(this,this.getVersion())})}getStartRow(){return 0}getEndRow(){return this.nodesAfterSort.length}createDataNode(e,t){const s=this.blockUtils.createRowNode({field:this.groupField,group:this.groupLevel,leafGroup:this.leafGroup,level:this.level,parent:this.parentRowNode,rowGroupColumn:this.rowGroupColumn});t!=null?(0,import_core270._insertIntoArray)(this.allRowNodes,s,t):this.allRowNodes.push(s);const i=this.prefixId(this.nodeIdSequence.next());return this.blockUtils.setDataIntoRowNode(s,e,i,void 0),this.nodeManager.addRowNode(s),this.blockUtils.checkOpenByDefault(s),this.allNodesMap[s.id]=s,s}prefixId(e){return this.nodeIdPrefix?this.nodeIdPrefix+"-"+e:e.toString()}processServerFail(){this.initialiseRowNodes(1,!0),this.fireStoreUpdatedEvent(),this.flushAsyncTransactions()}processServerResult(e){if(!this.isAlive())return;const t=e.groupLevelInfo;t&&Object.assign(this.info,t),e.pivotResultFields&&this.serverSideRowModel.generateSecondaryColumns(e.pivotResultFields);const s=this.allRowNodes.length>0?this.allNodesMap:void 0;this.allRowNodes=[],this.nodesAfterSort=[],this.nodesAfterFilter=[],this.allNodesMap={},e.rowData||(0,import_core270._warnOnce)('"params.data" is missing from Server-Side Row Model success() callback. Please use the "data" attribute. If no data is returned, set an empty list.'),this.createOrRecycleNodes(s,e.rowData),s&&this.blockUtils.destroyRowNodes((0,import_core270._getAllValuesInObject)(s)),this.level===0&&this.eventService.dispatchEventOnce({type:"rowCountReady"}),this.filterAndSortNodes(),this.fireStoreUpdatedEvent(),this.flushAsyncTransactions()}createOrRecycleNodes(e,t){if(!t)return;const s=r=>{if(!e)return;const a=(0,import_core270._getRowIdCallback)(this.gos);if(!a)return;const o=this.parentRowNode.getRoute()??[],n=this.level,l=a({data:r,parentKeys:o.length>0?o:void 0,level:n}),c=e[l];if(c)return delete e[l],c},i=(r,a)=>{this.allNodesMap[r.id]=r,this.blockUtils.updateDataIntoRowNode(r,a),this.allRowNodes.push(r)};t.forEach(r=>{const a=s(r);a?i(a,r):this.createDataNode(r)})}flushAsyncTransactions(){window.setTimeout(()=>this.transactionManager.flushAsyncTransactions(),0)}filterAndSortNodes(){this.filterRowNodes(),this.sortRowNodes()}sortRowNodes(){const e=this.storeUtils.isServerSideSortAllLevels()||this.storeUtils.isServerSideSortOnServer(),t=this.sortController.getSortOptions(),s=!t||t.length==0;if(e||s){this.nodesAfterSort=this.nodesAfterFilter;return}if(this.nodesAfterSort=this.rowNodeSorter.doFullSort(this.nodesAfterFilter,t),this.postSortFunc){const i={nodes:this.nodesAfterSort};this.postSortFunc(i)}}filterRowNodes(){const e=!this.storeUtils.isServerSideOnlyRefreshFilteredGroups()||this.storeUtils.isServerSideFilterOnServer(),t=this.groupLevel;if(e||t){this.nodesAfterFilter=this.allRowNodes;return}this.nodesAfterFilter=this.filterManager?this.allRowNodes.filter(s=>this.filterManager.doesRowPassFilter({rowNode:s})):this.allRowNodes}clearDisplayIndexes(){this.displayIndexStart=void 0,this.displayIndexEnd=void 0,this.allRowNodes.forEach(e=>this.blockUtils.clearDisplayIndex(e))}getDisplayIndexEnd(){return this.displayIndexEnd}isDisplayIndexInStore(e){return this.getRowCount()===0?!1:e>=this.displayIndexStart&&e<this.displayIndexEnd}setDisplayIndexes(e,t,s){this.displayIndexStart=e.peek(),this.topPx=t.value;const i={};this.nodesAfterSort.forEach(r=>{this.blockUtils.setDisplayIndex(r,e,t,s),i[r.id]=!0}),this.allRowNodes.forEach(r=>{i[r.id]||this.blockUtils.clearDisplayIndex(r)}),this.displayIndexEnd=e.peek(),this.heightPx=t.value-this.topPx}forEachStoreDeep(e,t=new import_core270.NumberSequence){e(this,t.next()),this.allRowNodes.forEach(s=>{const i=s.childStore;i&&i.forEachStoreDeep(e,t)})}forEachNodeDeep(e,t=new import_core270.NumberSequence){this.allRowNodes.forEach(s=>{e(s,t.next());const i=s.childStore;i&&i.forEachNodeDeep(e,t)})}forEachNodeDeepAfterFilterAndSort(e,t=new import_core270.NumberSequence,s=!1){this.nodesAfterSort.forEach(i=>{e(i,t.next());const r=i.childStore;r&&r.forEachNodeDeepAfterFilterAndSort(e,t,s)}),s&&this.parentRowNode.sibling&&e(this.parentRowNode.sibling,t.next())}getRowUsingDisplayIndex(e){return this.isDisplayIndexInStore(e)?this.blockUtils.binarySearchForDisplayIndex(e,this.nodesAfterSort):void 0}getRowBounds(e){for(let t=0;t<this.nodesAfterSort.length;t++){const s=this.nodesAfterSort[t],i=this.blockUtils.extractRowBounds(s,e);if(i)return i}return null}isPixelInRange(e){return e>=this.topPx&&e<this.topPx+this.heightPx}getRowIndexAtPixel(e){if(e<=this.topPx)return this.nodesAfterSort[0].rowIndex;if(e>=this.topPx+this.heightPx){const a=this.nodesAfterSort[this.nodesAfterSort.length-1];if(!a)return null;const o=a.rowTop+a.rowHeight;if(e>=o&&a.expanded){if(a.childStore&&a.childStore.getRowCount()>0)return a.childStore.getRowIndexAtPixel(e);if(a.detailNode)return a.detailNode.rowIndex}return a.rowIndex}let i=null;return this.nodesAfterSort.forEach(a=>{const o=this.blockUtils.getIndexAtPixel(a,e);o!=null&&(i=o)}),i??this.displayIndexEnd-1}getChildStore(e){return this.storeUtils.getChildStore(e,this,t=>this.allRowNodes.find(i=>i.key==t))}forEachChildStoreShallow(e){this.allRowNodes.forEach(t=>{const s=t.childStore;s&&e(s)})}refreshAfterFilter(e){const t=this.storeUtils.isServerSideFilterOnServer(),s=this.storeUtils.isServerRefreshNeeded(this.parentRowNode,this.ssrmParams.rowGroupCols,e);if(!this.storeUtils.isServerSideOnlyRefreshFilteredGroups()||t&&s){this.refreshStore(!0),this.sortRowNodes();return}this.filterRowNodes(),this.sortRowNodes(),this.forEachChildStoreShallow(r=>r.refreshAfterFilter(e))}refreshAfterSort(e){const t=this.storeUtils.isServerSideSortOnServer(),s=this.storeUtils.isServerRefreshNeeded(this.parentRowNode,this.ssrmParams.rowGroupCols,e);if(this.storeUtils.isServerSideSortAllLevels()||t&&s){this.refreshStore(!0),this.filterRowNodes();return}this.filterRowNodes(),this.sortRowNodes(),this.forEachChildStoreShallow(r=>r.refreshAfterSort(e))}applyTransaction(e){switch(this.getState()){case"failed":return{status:import_core270.ServerSideTransactionResultStatus.StoreLoadingFailed};case"loading":return{status:import_core270.ServerSideTransactionResultStatus.StoreLoading};case"needsLoading":return{status:import_core270.ServerSideTransactionResultStatus.StoreWaitingToLoad}}const t=this.gos.getCallback("isApplyServerSideTransaction");if(t){const r={transaction:e,parentNode:this.parentRowNode,groupLevelInfo:this.info};if(!t(r))return{status:import_core270.ServerSideTransactionResultStatus.Cancelled}}const s={status:import_core270.ServerSideTransactionResultStatus.Applied,remove:[],update:[],add:[]},i=[];return this.executeAdd(e,s),this.executeRemove(e,s,i),this.executeUpdate(e,s,i),this.filterAndSortNodes(),this.updateSelection(i),s}updateSelection(e){e.length>0&&(this.selectionService.setNodesSelected({newValue:!1,nodes:e,suppressFinishActions:!0,clearSelection:!1,source:"rowDataChanged"}),this.eventService.dispatchEvent({type:"selectionChanged",source:"rowDataChanged"}))}executeAdd(e,t){const{add:s,addIndex:i}=e;if((0,import_core270._missingOrEmpty)(s))return;typeof i=="number"&&i>=0?s.reverse().forEach(a=>{const o=this.createDataNode(a,i);t.add.push(o)}):s.forEach(a=>{const o=this.createDataNode(a);t.add.push(o)})}executeRemove(e,t,s){const{remove:i}=e;if(i==null)return;const r={};i.forEach(a=>{const o=this.lookupRowNode(a);o&&(o.isSelected()&&s.push(o),o.clearRowTopAndRowIndex(),r[o.id]=!0,delete this.allNodesMap[o.id],t.remove.push(o),this.nodeManager.removeNode(o))}),this.allRowNodes=this.allRowNodes.filter(a=>!r[a.id])}executeUpdate(e,t,s){const{update:i}=e;i?.forEach(r=>{const a=this.lookupRowNode(r);a&&(this.blockUtils.updateDataIntoRowNode(a,r),!a.selectable&&a.isSelected()&&s.push(a),t.update.push(a))})}lookupRowNode(e){const t=(0,import_core270._getRowIdCallback)(this.gos);if(t!=null){const s=this.parentRowNode.getRoute()??[],i=t({data:e,parentKeys:s.length>0?s:void 0,level:this.level}),r=this.allNodesMap[i];return r||((0,import_core270._errorOnce)(`could not find row id=${i}, data item was not found for this id`),null)}else{const s=this.allRowNodes.find(i=>i.data===e);return s||((0,import_core270._errorOnce)("could not find data item as object was not found",e),null)}}addStoreStates(e){e.push({suppressInfiniteScroll:!0,route:this.parentRowNode.getRoute()??[],rowCount:this.allRowNodes.length,info:this.info}),this.forEachChildStoreShallow(t=>t.addStoreStates(e))}refreshStore(e){if(e){const t=this.nodesAfterSort?this.nodesAfterSort.length:1;this.initialiseRowNodes(t)}this.scheduleLoad(),this.fireStoreUpdatedEvent()}retryLoads(){this.getState()==="failed"&&(this.initialiseRowNodes(1),this.scheduleLoad()),this.forEachChildStoreShallow(e=>e.retryLoads())}scheduleLoad(){this.setStateWaitingToLoad(),this.rowNodeBlockLoader.checkBlockToLoad()}fireStoreUpdatedEvent(){this.eventService.dispatchEvent({type:"storeUpdated"})}getRowCount(){return this.nodesAfterSort.length}getTopLevelRowDisplayedIndex(e){return this.nodesAfterSort[e].rowIndex}isLastRowIndexKnown(){return this.getState()=="loaded"}getRowNodesInRange(e,t){const s=[];let i=!1;return(0,import_core270._missing)(e)&&(i=!0),this.nodesAfterSort.forEach(a=>{const o=a===e||a===t;(i||o)&&s.push(a),o&&(i=!i)}),i?[]:s}getStoreBounds(){return{topPx:this.topPx,heightPx:this.heightPx}}},LazyBlockLoadingService=class extends import_core273.BeanStub{constructor(){super(...arguments),this.beanName="lazyBlockLoadingService",this.cacheLoadingNodesMap=new Map,this.isCheckQueued=!1,this.nextBlockToLoad=void 0}wireBeans(e){this.rowNodeBlockLoader=e.rowNodeBlockLoader,this.rowRenderer=e.rowRenderer,this.rowModel=e.rowModel}postConstruct(){this.addManagedListeners(this.rowNodeBlockLoader,{blockLoaded:()=>this.queueLoadCheck()})}subscribe(e){this.cacheLoadingNodesMap.set(e,new Set)}unsubscribe(e){this.cacheLoadingNodesMap.delete(e)}queueLoadCheck(){this.isCheckQueued||(this.isCheckQueued=!0,window.queueMicrotask(()=>{this.queueLoadAction(),this.isCheckQueued=!1}))}queueLoadAction(){const e=this.getBlockToLoad();if(!e)return;const t=this.nextBlockToLoad&&this.nextBlockToLoad.cache===e.cache&&this.nextBlockToLoad.index===e.index;if(!t&&(!this.nextBlockToLoad||!t)){this.nextBlockToLoad=e,window.clearTimeout(this.loaderTimeout);const s=Number(this.nextBlockToLoad.index),i=this.nextBlockToLoad.cache,r=e.index+e.cache.getBlockSize();this.loaderTimeout=window.setTimeout(()=>{i.isAlive()&&(this.loaderTimeout=void 0,this.attemptLoad(i,s,r),this.nextBlockToLoad=void 0)},this.gos.get("blockLoadDebounceMillis"))}}attemptLoad(e,t,s){const i=this.rowNodeBlockLoader.getAvailableLoadingCount();i!=null&&i===0||(this.rowNodeBlockLoader.registerLoads(1),this.executeLoad(e,t,s),this.queueLoadCheck())}executeLoad(e,t,s){const i=e.getSsrmParams(),r={startRow:t,endRow:s,rowGroupCols:i.rowGroupCols,valueCols:i.valueCols,pivotCols:i.pivotCols,pivotMode:i.pivotMode,groupKeys:e.store.getParentNode().getRoute()??[],filterModel:i.filterModel,sortModel:i.sortModel},a=this.cacheLoadingNodesMap.get(e),o=()=>{for(let d=0;d<s-t;d++)a.delete(t+d)},n=()=>{for(let d=0;d<s-t;d++)a.add(t+d)},l=d=>{this.rowNodeBlockLoader.loadComplete(),e.onLoadSuccess(t,s-t,d),o()},c=()=>{this.rowNodeBlockLoader.loadComplete(),e.onLoadFailed(t,s-t),o()},h=this.gos.addGridCommonParams({request:r,success:l,fail:c,parentNode:e.store.getParentNode()});n(),e.getSsrmParams().datasource?.getRows(h)}getBlockToLoad(){const e=this.rowRenderer.getFirstVirtualRenderedRow(),t=this.rowRenderer.getLastVirtualRenderedRow();for(let n=e;n<=t;n++){const l=this.rowModel.getRow(n);if(!l)continue;const c=l.parent&&l.parent.childStore;if(!c||!(c instanceof LazyStore))continue;const h=c.getCache(),d=h.getNodes().getBy("node",l);if(!(!d||this.cacheLoadingNodesMap.get(h)?.has(d.index))&&(l.__needsRefreshWhenVisible||l.stub&&!l.failedLoad))return{cache:h,index:h.getBlockStartIndex(d.index)}}let s=null,i=null,r=Number.MAX_SAFE_INTEGER;for(const n of this.cacheLoadingNodesMap.keys())n.getNodesToRefresh().forEach(c=>{if(c.rowIndex==null){i=c,s=n;return}const h=n.getNodes().getBy("node",c);if(!h||this.cacheLoadingNodesMap.get(n)?.has(h.index))return;const u=Math.abs(e-c.rowIndex),p=Math.abs(c.rowIndex-t);u<r&&(i=c,r=u,s=n),p<r&&(i=c,r=p,s=n)});if(!s)return;const a=s,o=a.getNodes().getBy("node",i)?.index;return o==null?void 0:{cache:a,index:a.getBlockStartIndex(o)}}isRowLoading(e,t){return this.cacheLoadingNodesMap.get(e)?.has(t)??!1}};LazyBlockLoadingService.DEFAULT_BLOCK_SIZE=100;var MultiIndexMap=class{constructor(...e){if(e.length<1)throw new Error("AG Grid: At least one index must be provided.");this.indexes=e,this.maps=new Map(this.indexes.map(t=>[t,new Map]))}getSize(){return this.maps.get(this.indexes[0]).size}getBy(e,t){const s=this.maps.get(e);if(!s)throw new Error(`AG Grid: ${String(e)} not found`);return s.get(t)}set(e){this.indexes.forEach(t=>{const s=this.maps.get(t);if(!s)throw new Error(`AG Grid: ${String(t)} not found`);s.set(e[t],e)})}delete(e){this.indexes.forEach(t=>{const s=this.maps.get(t);if(!s)throw new Error(`AG Grid: ${String(t)} not found`);s.delete(e[t])})}clear(){this.maps.forEach(e=>e.clear())}getIterator(e){const t=this.maps.get(e);if(!t)throw new Error(`AG Grid: ${String(e)} not found`);return t.values()}forEach(e){const t=this.getIterator(this.indexes[0]);let s;for(;(s=t.next())&&!s.done;)e(s.value)}find(e){const t=this.getIterator(this.indexes[0]);let s;for(;(s=t.next())&&!s.done;)if(e(s.value))return s.value}filter(e){const t=this.getIterator(this.indexes[0]);let s;const i=[];for(;(s=t.next())&&!s.done;)e(s.value)&&i.push(s.value);return i}},LazyCache=class extends import_core272.BeanStub{constructor(e,t,s,i){super(),this.live=!0,this.removedNodeCache=new Map,this.store=e,this.numberOfRows=t,this.isLastRowKnown=s,this.storeParams=i}wireBeans(e){this.rowRenderer=e.rowRenderer,this.blockUtils=e.ssrmBlockUtils,this.focusService=e.focusService,this.nodeManager=e.ssrmNodeManager,this.serverSideRowModel=e.rowModel,this.rowNodeSorter=e.rowNodeSorter,this.sortController=e.sortController,this.lazyBlockLoadingService=e.lazyBlockLoadingService}postConstruct(){this.lazyBlockLoadingService.subscribe(this),this.nodeMap=new MultiIndexMap("index","id","node"),this.nodeDisplayIndexMap=new Map,this.nodesToRefresh=new Set,this.defaultNodeIdPrefix=this.blockUtils.createNodeIdPrefix(this.store.getParentNode()),this.getRowIdFunc=(0,import_core272._getRowIdCallback)(this.gos),this.isMasterDetail=this.gos.get("masterDetail")}destroy(){this.lazyBlockLoadingService.unsubscribe(this),this.numberOfRows=0,this.nodeMap.forEach(e=>this.blockUtils.destroyRowNode(e.node)),this.nodeMap.clear(),this.nodeDisplayIndexMap.clear(),this.nodesToRefresh.clear(),this.live=!1,super.destroy()}getRowByDisplayIndex(e){if(!this.store.isDisplayIndexInStore(e))return;const t=this.nodeDisplayIndexMap.get(e);if(t)return(t.stub||t.__needsRefreshWhenVisible)&&this.lazyBlockLoadingService.queueLoadCheck(),t;if(this.gos.get("groupHideOpenParents")||this.gos.get("groupAllowUnbalanced")){const l=this.nodeMap.find(c=>!!c.node.childStore?.isDisplayIndexInStore(e));if(l)return l.node.childStore?.getRowUsingDisplayIndex(e)}if(e===this.store.getDisplayIndexStart())return this.createStubNode(0,e);const i=this.nodeDisplayIndexMap.get(e-1);if(i){if(this.isMasterDetail&&i.master&&i.expanded)return i.detailNode;if(i.expanded&&i.childStore?.isDisplayIndexInStore(e))return i.childStore?.getRowUsingDisplayIndex(e);const l=this.nodeMap.getBy("node",i);return this.createStubNode(l.index+1,e)}const r=this.getSurroundingNodesByDisplayIndex(e);if(r==null){const l=this.store.getRowCount()-(this.store.getDisplayIndexEnd()-e);return this.createStubNode(l,e)}const{previousNode:a,nextNode:o}=r;if(a&&a.node.expanded&&a.node.childStore?.isDisplayIndexInStore(e))return a.node.childStore?.getRowUsingDisplayIndex(e);if(o){const l=o.node.rowIndex-e,c=o.index-l;return this.createStubNode(c,e)}const n=this.store.getRowCount()-(this.store.getDisplayIndexEnd()-e);return this.createStubNode(n,e)}createStubNode(e,t){const s=this.store.getRowBounds(t),i=this.createRowAtIndex(e,null,r=>{r.setRowIndex(t),r.setRowTop(s.rowTop),this.nodeDisplayIndexMap.set(t,r)});if(e===0&&this.gos.get("groupHideOpenParents")){const r=this.store.getParentNode().groupData;for(const a in r)i.setGroupValue(a,r[a])}return this.lazyBlockLoadingService.queueLoadCheck(),i}getRowByStoreIndex(e){return this.nodeMap.getBy("index",e)?.node}skipDisplayIndexes(e,t,s){if(e===0)return;const i=(0,import_core272._getRowHeightAsNumber)(this.gos);t.skip(e),s.value+=e*i}setDisplayIndexes(e,t,s){this.nodeDisplayIndexMap.clear();const i={};this.nodeMap.forEach(o=>{i[o.index]=o.node});let r=-1;for(const o in i){const n=i[o],l=Number(o),c=l-1-r;this.skipDisplayIndexes(c,e,t);const h=l===0;if(n.setFirstChild(h),h&&this.gos.get("groupHideOpenParents")){const d=this.store.getParentNode().groupData;for(const u in d)n.setGroupValue(u,h?d[u]:void 0)}this.blockUtils.setDisplayIndex(n,e,t,s),n.rowIndex!=null&&this.nodeDisplayIndexMap.set(n.rowIndex,n),r=l}const a=this.numberOfRows-1-r;this.skipDisplayIndexes(a,e,t),this.purgeExcessRows()}getRowCount(){return this.numberOfRows}setRowCount(e,t){if(e<0)throw new Error("AG Grid: setRowCount can only accept a positive row count.");this.numberOfRows=e,t!=null&&(this.isLastRowKnown=t,t===!1&&(this.numberOfRows+=1)),this.fireStoreUpdatedEvent()}getNodes(){return this.nodeMap}getNodeCachedByDisplayIndex(e){return this.nodeDisplayIndexMap.get(e)??null}getNodesToRefresh(){return this.nodesToRefresh}getSurroundingNodesByDisplayIndex(e){let t,s;return this.nodeMap.forEach(i=>{if(e>i.node.rowIndex){(s==null||s.node.rowIndex<i.node.rowIndex)&&(s=i);return}if(t==null||t.node.rowIndex>i.node.rowIndex){t=i;return}}),!s&&!t?null:{previousNode:s,nextNode:t}}getDisplayIndexFromStoreIndex(e){const t=this.nodeMap.getBy("index",e);if(t)return t.node.rowIndex;let s,i;if(this.nodeMap.forEach(o=>{if(e>o.index){(i==null||i.index<o.index)&&(i=o);return}if(s==null||s.index>o.index){s=o;return}}),!s)return this.store.getDisplayIndexEnd()-(this.numberOfRows-e);if(!i)return this.store.getDisplayIndexStart()+e;const r=e-i.index;return(i.node.childStore?.getDisplayIndexEnd()??i.node.rowIndex)+r}createRowAtIndex(e,t,s){const i=this.nodeMap.getBy("index",e);if(i){const{node:a}=i;if(a.__needsRefreshWhenVisible=!1,this.doesNodeMatch(t,a))return this.blockUtils.updateDataIntoRowNode(a,t),this.nodesToRefresh.delete(a),a;if(this.getRowIdFunc==null&&a.hasChildren()&&a.expanded)return this.nodesToRefresh.delete(a),a;this.destroyRowAtIndex(e)}if(t&&this.getRowIdFunc!=null){const a=this.getRowId(t),o=a&&this.removedNodeCache?.get(a);if(o)return this.removedNodeCache?.delete(a),this.blockUtils.updateDataIntoRowNode(o,t),this.nodeMap.set({id:o.id,node:o,index:e}),this.nodesToRefresh.delete(o),o.__needsRefreshWhenVisible=!1,o;const n=this.nodeMap.getBy("id",a);if(n){this.nodeMap.delete(n);const{node:l,index:c}=n;return this.blockUtils.updateDataIntoRowNode(l,t),this.nodeMap.set({id:l.id,node:l,index:e}),this.nodesToRefresh.delete(l),l.__needsRefreshWhenVisible=!1,this.getBlockStartIndex(c)===this.getBlockStartIndex(e)||this.markBlockForVerify(c),l}}const r=this.blockUtils.createRowNode(this.store.getRowDetails());if(t!=null){const a=this.getPrefixedId(this.store.getIdSequence().next());this.blockUtils.setDataIntoRowNode(r,t,a,void 0),this.serverSideRowModel.setPaused(!0),this.blockUtils.checkOpenByDefault(r),this.serverSideRowModel.setPaused(!1),this.nodeManager.addRowNode(r)}return this.nodeMap.set({id:r.id,node:r,index:e}),s&&s(r),r}getBlockStates(){const e={},t={};this.nodeMap.forEach(({node:a,index:o})=>{const n=this.getBlockStartIndex(o);!a.stub&&!a.failedLoad&&(e[n]=(e[n]??0)+1);let l="loaded";a.failedLoad?l="failed":this.lazyBlockLoadingService.isRowLoading(this,n)?l="loading":(this.nodesToRefresh.has(a)||a.stub)&&(l="needsLoading"),t[n]||(t[n]=new Set),t[n].add(l)});const s={loading:4,failed:3,needsLoading:2,loaded:1},i=this.blockUtils.createNodeIdPrefix(this.store.getParentNode()),r={};return Object.entries(t).forEach(([a,o])=>{const l=[...o].sort((d,u)=>(s[d]??0)-(s[u]??0))[0],c=Number(a)/this.getBlockSize(),h=i?`${i}-${c}`:String(c);r[h]={blockNumber:c,startRow:Number(a),endRow:Number(a)+this.getBlockSize(),pageStatus:l,loadedRowCount:e[a]??0}}),r}destroyRowAtIndex(e){const t=this.nodeMap.getBy("index",e);t&&(this.nodeMap.delete(t),this.nodeDisplayIndexMap.delete(t.node.rowIndex),this.nodesToRefresh.size>0?this.removedNodeCache.set(t.node.id,t.node):this.blockUtils.destroyRowNode(t.node),this.nodesToRefresh.delete(t.node))}getSsrmParams(){return this.store.getSsrmParams()}getPrefixedId(e){return this.defaultNodeIdPrefix?this.defaultNodeIdPrefix+"-"+e:e.toString()}markBlockForVerify(e){const[t,s]=this.getBlockBounds(e);this.nodeMap.filter(r=>r.index>=t&&r.index<s).forEach(({node:r})=>{r.__needsRefreshWhenVisible=!0})}doesNodeMatch(e,t){if(t.stub)return!1;const s=this.getRowId(e);return s===null?t.data===e:t.id===s}purgeStubsOutsideOfViewport(){const e=this.rowRenderer.getFirstVirtualRenderedRow(),t=this.rowRenderer.getLastVirtualRenderedRow(),s=this.getBlockStartIndex(e),[,i]=this.getBlockBounds(t);this.nodeMap.forEach(r=>{this.lazyBlockLoadingService.isRowLoading(this,r.index)||r.node.failedLoad||r.node.stub&&(r.index<s||r.index>i)&&this.destroyRowAtIndex(r.index)})}getBlocksDistanceFromRow(e,t){const s={};return e.forEach(({node:i,index:r})=>{const[a,o]=this.getBlockBounds(r);if(a in s)return;const n=Math.abs(i.rowIndex-t);let l;const c=this.nodeMap.getBy("index",[o-1]);c&&(l=Math.abs(c.node.rowIndex-t));const h=l==null||n<l?n:l;s[a]=h}),Object.entries(s)}purgeExcessRows(){if(this.purgeStubsOutsideOfViewport(),this.store.getDisplayIndexEnd()==null||this.storeParams.maxBlocksInCache==null)return;const e=this.rowRenderer.getFirstVirtualRenderedRow(),t=this.rowRenderer.getLastVirtualRenderedRow(),s=new Set,i=new Set;this.nodeMap.forEach(({index:p,node:g})=>{const m=this.getBlockStartIndex(p);s.add(m),g.rowIndex>=e&&g.rowIndex<=t&&i.add(m)});const r=Math.max(i.size,this.storeParams.maxBlocksInCache??0),o=s.size-r;if(o<=0)return;let n=Number.MAX_SAFE_INTEGER,l=Number.MIN_SAFE_INTEGER;i.forEach(p=>{n>p&&(n=p),l<p&&(l=p)});const c=this.nodeMap.filter(({node:p,index:g})=>{const m=this.getBlockStartIndex(g);return!(m>=n&&m<=l)&&!this.isNodeCached(p)});if(c.length===0)return;const h=e+(t-e)/2,d=this.getBlocksDistanceFromRow(c,h),u=this.getBlockSize();d.sort((p,g)=>Math.sign(g[1]-p[1]));for(let p=0;p<Math.min(o,d.length);p++){const g=Number(d[p][0]);for(let m=g;m<g+u;m++){const C=this.nodeMap.getBy("index",m);!C||this.isNodeCached(C.node)||this.destroyRowAtIndex(m)}}}isNodeFocused(e){const t=this.focusService.getFocusCellToUseAfterRefresh();return!t||t.rowPinned!=null?!1:t.rowIndex===e.rowIndex}isNodeCached(e){const t=this.gos.get("groupAllowUnbalanced")&&e.key==="";return e.isExpandable()&&e.expanded||this.isNodeFocused(e)||t}extractDuplicateIds(e){if(this.getRowIdFunc==null)return[];const t=new Set,s=new Set;return e.forEach(i=>{const r=this.getRowId(i);if(t.has(r)){s.add(r);return}t.add(r)}),[...s]}onLoadSuccess(e,t,s){if(!this.live)return;const i=s.groupLevelInfo;if(this.store.setStoreInfo(i),this.getRowIdFunc!=null){const o=this.extractDuplicateIds(s.rowData);if(o.length>0){const n=o.join(", ");(0,import_core272._warnOnce)(`Unable to display rows as duplicate row ids (${n}) were returned by the getRowId callback. Please modify the getRowId callback to provide unique ids.`),this.onLoadFailed(e,t);return}}s.pivotResultFields&&this.serverSideRowModel.generateSecondaryColumns(s.pivotResultFields);const r=this.nodesToRefresh.size>0;if(s.rowData.forEach((o,n)=>{const l=e+n,c=this.nodeMap.getBy("index",l);if(c?.node?.stub){this.createRowAtIndex(l,o);return}if(c&&this.doesNodeMatch(o,c.node)){this.blockUtils.updateDataIntoRowNode(c.node,o),this.nodesToRefresh.delete(c.node),c.node.__needsRefreshWhenVisible=!1;return}this.createRowAtIndex(l,o)}),s.rowCount!=null&&s.rowCount!==-1)this.numberOfRows=s.rowCount,this.isLastRowKnown=!0;else if(t>s.rowData.length)this.numberOfRows=e+s.rowData.length,this.isLastRowKnown=!0;else if(!this.isLastRowKnown){const o=e+s.rowData.length+1;o>this.numberOfRows&&(this.numberOfRows=o)}this.isLastRowKnown&&this.nodeMap.filter(n=>n.index>=this.numberOfRows).forEach(n=>this.destroyRowAtIndex(n.index)),this.fireStoreUpdatedEvent();const a=this.nodesToRefresh.size===0;r&&a&&this.fireRefreshFinishedEvent()}fireRefreshFinishedEvent(){this.nodesToRefresh.size===0&&(this.removedNodeCache.forEach(t=>{this.blockUtils.destroyRowNode(t)}),this.removedNodeCache=new Map,this.store.fireRefreshFinishedEvent())}isStoreFullyLoaded(){const e=this.isLastRowKnown,t=this.nodeMap.getSize()===this.numberOfRows;if(!e||!t||this.nodesToRefresh.size>0)return;let s=-1;return this.nodeMap.find(r=>(s+=1,!!(r.index!==s||r.node.__needsRefreshWhenVisible||r.node.stub)))==null}isLastRowIndexKnown(){return this.isLastRowKnown}onLoadFailed(e,t){if(!this.live)return;const s=this.nodesToRefresh.size>0;for(let r=e;r<e+t&&r<this.getRowCount();r++){let{node:a}=this.nodeMap.getBy("index",r)??{};a&&this.nodesToRefresh.delete(a),(!a||!a.stub)&&(a&&!a.stub&&this.destroyRowAtIndex(r),a=this.createRowAtIndex(r)),a.__needsRefreshWhenVisible=!1,a.failedLoad=!0}const i=this.nodesToRefresh.size===0;s&&i&&this.fireRefreshFinishedEvent(),this.fireStoreUpdatedEvent()}markNodesForRefresh(){this.nodeMap.forEach(e=>{e.node.stub&&!e.node.failedLoad||this.nodesToRefresh.add(e.node)}),this.lazyBlockLoadingService.queueLoadCheck(),this.isLastRowKnown&&this.numberOfRows===0&&(this.numberOfRows=1,this.isLastRowKnown=!1,this.fireStoreUpdatedEvent())}isNodeInCache(e){return!!this.nodeMap.getBy("id",e)}fireStoreUpdatedEvent(){this.live&&this.store.fireStoreUpdatedEvent()}getRowId(e){if(this.getRowIdFunc==null)return null;const{level:t}=this.store.getRowDetails(),s=this.store.getParentNode().getRoute()??[];return this.getRowIdFunc({data:e,parentKeys:s.length>0?s:void 0,level:t})}getOrderedNodeMap(){const e={};return this.nodeMap.forEach(t=>e[t.index]=t),e}clearDisplayIndexes(){this.nodeDisplayIndexMap.clear()}clientSideSortRows(){const e=this.sortController.getSortOptions();if(!e.some(r=>r.sort!=null))return;const s=new Array(this.nodeMap.getSize());this.nodeMap.forEach(r=>s[r.index]=r.node),this.nodeMap.clear(),this.rowNodeSorter.doFullSort(s,e).forEach((r,a)=>{this.nodeMap.set({id:r.id,node:r,index:a})})}updateRowNodes(e){if(this.getRowIdFunc==null)throw new Error("AG Grid: Transactions can only be applied when row ids are supplied.");const t=[];return e.forEach(s=>{const i=this.getRowId(s),r=this.nodeMap.getBy("id",i);r&&(this.blockUtils.updateDataIntoRowNode(r.node,s),t.push(r.node))}),t}insertRowNodes(e,t){const s=this.store.getRowCount()-(this.store.getParentNode().sibling?1:0),i=t==null&&this.isLastRowKnown?s:t;if(i==null||s<i)return[];if(this.getRowIdFunc==null)throw new Error("AG Grid: Transactions can only be applied when row ids are supplied.");const r={};e.forEach(l=>{const c=this.getRowId(l);c&&this.isNodeInCache(c)||(r[c]=l)});const a=Object.values(r),o=a.length;if(o===0)return[];const n=this.nodeMap.filter(l=>l.index>=i);return n.forEach(l=>this.nodeMap.delete(l)),n.forEach(l=>{this.nodeMap.set({node:l.node,index:l.index+o,id:l.id})}),this.numberOfRows+=o,a.map((l,c)=>this.createRowAtIndex(i+c,l))}removeRowNodes(e){if(this.getRowIdFunc==null)throw new Error("AG Grid: Transactions can only be applied when row ids are supplied.");const t=[],s=[];let i=0;const r=[...e],a=this.getOrderedNodeMap();let o=-1;for(const n in a){o+=1;const l=a[n],c=r.findIndex(d=>d===l.id);if(c!==-1){r.splice(c,1),this.destroyRowAtIndex(Number(n)),t.push(l.node),i+=1;continue}if(i===0)continue;const h=Number(n);o!==h&&s.push(l.node),this.nodeMap.delete(a[n]),this.nodeMap.set({id:l.id,node:l.node,index:h-i})}return this.numberOfRows-=this.isLastRowIndexKnown()?e.length:i,r.length>0&&s.length>0&&(s.forEach(n=>n.__needsRefreshWhenVisible=!0),this.lazyBlockLoadingService.queueLoadCheck()),t}getBlockSize(){return this.storeParams.cacheBlockSize||LazyBlockLoadingService.DEFAULT_BLOCK_SIZE}getBlockStartIndex(e){const t=this.getBlockSize();return e-e%t}getBlockBounds(e){const t=this.getBlockStartIndex(e),s=this.getBlockSize();return[t,t+s]}},LazyStore=class extends import_core271.BeanStub{constructor(e,t,s){super(),this.idSequence=new import_core271.NumberSequence,this.ssrmParams=e,this.parentRowNode=s,this.storeParams=t,this.level=s.level+1,this.group=e.rowGroupCols?this.level<e.rowGroupCols.length:!1,this.leafGroup=e.rowGroupCols?this.level===e.rowGroupCols.length-1:!1,this.info={}}wireBeans(e){this.blockUtils=e.ssrmBlockUtils,this.storeUtils=e.ssrmStoreUtils,this.selectionService=e.selectionService,this.funcColsService=e.funcColsService}postConstruct(){let e=1;if(this.level===0&&(e=this.storeUtils.getServerSideInitialRowCount()??1,this.eventService.dispatchEventOnce({type:"rowCountReady"})),this.cache=this.createManagedBean(new LazyCache(this,e,!1,this.storeParams)),!this.gos.get("treeData")&&this.group){const s=this.ssrmParams.rowGroupCols[this.level];this.groupField=s.field,this.rowGroupColumn=this.funcColsService.getRowGroupColumns()[this.level]}}destroy(){this.displayIndexStart=void 0,this.displayIndexEnd=void 0,this.destroyBean(this.cache),super.destroy()}applyRowData(e,t,s){this.cache.onLoadSuccess(t,s,e)}applyTransaction(e){const t=(0,import_core271._getRowIdCallback)(this.gos);if(!t)return(0,import_core271._warnOnce)("getRowId callback must be implemented for transactions to work. Transaction was ignored."),{status:import_core271.ServerSideTransactionResultStatus.Cancelled};const s=this.gos.getCallback("isApplyServerSideTransaction");if(s){const h={transaction:e,parentNode:this.parentRowNode,groupLevelInfo:this.info};if(!s(h))return{status:import_core271.ServerSideTransactionResultStatus.Cancelled}}const i=this.cache.isStoreFullyLoaded();let r;e.update?.length&&(r=this.cache.updateRowNodes(e.update));let a;if(e.add?.length){let h=e.addIndex;h!=null&&h<0&&(h=void 0),a=this.cache.insertRowNodes(e.add,h)}let o;if(e.remove?.length){const h=e.remove.map(u=>t({level:this.level,parentKeys:this.parentRowNode.getRoute()??[],data:u})),d=[...new Set(h)];o=this.cache.removeRowNodes(d)}const n=this.gos.get("serverSideEnableClientSideSort"),l=r?.length||a?.length;return i&&n&&l&&this.cache.clientSideSortRows(),this.updateSelectionAfterTransaction(r,o),{status:import_core271.ServerSideTransactionResultStatus.Applied,update:r,add:a,remove:o}}updateSelectionAfterTransaction(e,t){const s=[];e?.forEach(i=>{i.isSelected()&&!i.selectable&&s.push(i)}),t?.forEach(i=>{i.isSelected()&&s.push(i)}),s.length&&this.selectionService.setNodesSelected({newValue:!1,clearSelection:!1,nodes:s,source:"rowDataChanged"})}clearDisplayIndexes(){this.displayIndexStart=void 0,this.displayIndexEnd=void 0,this.cache.getNodes().forEach(e=>this.blockUtils.clearDisplayIndex(e.node)),this.parentRowNode.sibling&&this.blockUtils.clearDisplayIndex(this.parentRowNode.sibling),this.cache.clearDisplayIndexes()}getDisplayIndexStart(){return this.displayIndexStart}getDisplayIndexEnd(){return this.displayIndexEnd}getRowCount(){return this.parentRowNode.sibling?this.cache.getRowCount()+1:this.cache.getRowCount()}setRowCount(e,t){this.cache.setRowCount(e,t)}isDisplayIndexInStore(e){return this.cache.getRowCount()===0?!1:this.displayIndexStart<=e&&e<this.getDisplayIndexEnd()}setDisplayIndexes(e,t,s){this.displayIndexStart=e.peek(),this.topPx=t.value;const i=this.parentRowNode.level>-1&&(0,import_core271._getGroupTotalRowCallback)(this.gos)({node:this.parentRowNode});i||this.parentRowNode.destroyFooter(),i==="top"&&(this.parentRowNode.createFooter(),this.blockUtils.setDisplayIndex(this.parentRowNode.sibling,e,t,s)),this.cache.setDisplayIndexes(e,t,s),i==="bottom"&&(this.parentRowNode.createFooter(),this.blockUtils.setDisplayIndex(this.parentRowNode.sibling,e,t,s)),this.displayIndexEnd=e.peek(),this.heightPx=t.value-this.topPx}forEachStoreDeep(e,t=new import_core271.NumberSequence){e(this,t.next()),this.cache.getNodes().forEach(s=>{const i=s.node.childStore;i&&i.forEachStoreDeep(e,t)})}forEachNodeDeep(e,t=new import_core271.NumberSequence){this.cache.getNodes().forEach(s=>{e(s.node,t.next());const i=s.node.childStore;i&&i.forEachNodeDeep(e,t)})}forEachNodeDeepAfterFilterAndSort(e,t=new import_core271.NumberSequence,s=!1){const i=this.parentRowNode.level>-1&&(0,import_core271._getGroupTotalRowCallback)(this.gos)({node:this.parentRowNode});i==="top"&&e(this.parentRowNode.sibling,t.next());const r=this.cache.getOrderedNodeMap();for(const a in r){const o=r[a];e(o.node,t.next());const n=o.node.childStore;n&&n.forEachNodeDeepAfterFilterAndSort(e,t,s)}i==="bottom"&&e(this.parentRowNode.sibling,t.next())}retryLoads(){this.cache.getNodes().forEach(({node:e})=>{e.failedLoad&&(e.failedLoad=!1,e.__needsRefreshWhenVisible=!0,e.stub=!0)}),this.forEachChildStoreShallow(e=>e.retryLoads()),this.fireStoreUpdatedEvent()}getRowUsingDisplayIndex(e){return this.parentRowNode.sibling&&e===this.parentRowNode.sibling.rowIndex?this.parentRowNode.sibling:this.cache.getRowByDisplayIndex(e)}getRowBounds(e){if(!this.isDisplayIndexInStore(e))return null;const t=this.cache.getNodeCachedByDisplayIndex(e);if(t){const n=this.blockUtils.extractRowBounds(t,e);if(n)return n}const{previousNode:s,nextNode:i}=this.cache.getSurroundingNodesByDisplayIndex(e)??{};if(s){const n=this.blockUtils.extractRowBounds(s.node,e);if(n!=null)return n}const r=(0,import_core271._getRowHeightAsNumber)(this.gos);if(i){const n=(i.node.rowIndex-e)*r;return{rowTop:i.node.rowTop-n,rowHeight:r}}const a=this.topPx+this.heightPx,o=(this.getDisplayIndexEnd()-e)*r;return{rowTop:a-o,rowHeight:r}}isPixelInRange(e){return e>=this.topPx&&e<this.topPx+this.heightPx}getRowIndexAtPixel(e){if(e<this.topPx)return this.getDisplayIndexStart();if(e>=this.topPx+this.heightPx)return this.getDisplayIndexEnd()-1;if(this.parentRowNode.sibling&&e>this.parentRowNode.sibling.rowTop&&e<this.parentRowNode.sibling.rowTop+this.parentRowNode.sibling.rowHeight)return this.parentRowNode.sibling.rowIndex;let t=Number.MAX_SAFE_INTEGER,s=null,i=Number.MAX_SAFE_INTEGER,r=null;if(this.cache.getNodes().forEach(({node:l})=>{const c=Math.abs(e-l.rowTop);if(l.rowTop<e){c<t&&(t=c,s=l);return}c<i&&(i=c,r=l)}),s=s,r=r,s){const l=this.blockUtils.getIndexAtPixel(s,e);if(l!=null)return l}const a=(0,import_core271._getRowHeightAsNumber)(this.gos);if(r){const l=r.rowTop,c=Math.ceil((l-e)/a);return r.rowIndex-c}const o=this.topPx+this.heightPx,n=Math.floor((o-e)/a);return this.getDisplayIndexEnd()-n}getChildStore(e){return this.storeUtils.getChildStore(e,this,t=>{const s=this.cache.getNodes().find(i=>i.node.key==t);return s?s.node:null})}forEachChildStoreShallow(e){this.cache.getNodes().forEach(({node:t})=>{t.childStore&&e(t.childStore)})}refreshAfterSort(e){if(this.storeUtils.isServerSideSortAllLevels()||this.storeUtils.isServerRefreshNeeded(this.parentRowNode,this.ssrmParams.rowGroupCols,e)){const s=this.cache.isStoreFullyLoaded(),i=this.gos.get("serverSideEnableClientSideSort");if(!(s&&i)){const a=this.cache.getRowCount(),o=this.cache.isLastRowIndexKnown();this.destroyBean(this.cache),this.cache=this.createManagedBean(new LazyCache(this,a,o,this.storeParams));return}this.cache.clientSideSortRows()}this.forEachChildStoreShallow(s=>s.refreshAfterSort(e))}refreshAfterFilter(e){if(!this.storeUtils.isServerSideOnlyRefreshFilteredGroups()||this.storeUtils.isServerRefreshNeeded(this.parentRowNode,this.ssrmParams.rowGroupCols,e)){this.refreshStore(!0);return}this.forEachChildStoreShallow(s=>s.refreshAfterFilter(e))}refreshStore(e){if(e){this.destroyBean(this.cache),this.cache=this.createManagedBean(new LazyCache(this,1,!1,this.storeParams)),this.fireStoreUpdatedEvent();return}this.cache.markNodesForRefresh()}getTopLevelRowDisplayedIndex(e){return this.cache.getDisplayIndexFromStoreIndex(e)??e}isLastRowIndexKnown(){return this.cache.isLastRowIndexKnown()}getRowNodesInRange(e,t){return this.cache.getNodes().filter(({node:s})=>s.rowIndex>=e.rowIndex&&s.rowIndex<=t.rowIndex).map(({node:s})=>s)}addStoreStates(e){e.push({suppressInfiniteScroll:!1,route:this.parentRowNode.getRoute()??[],rowCount:this.getRowCount(),lastRowIndexKnown:this.isLastRowIndexKnown(),info:this.info,maxBlocksInCache:this.storeParams.maxBlocksInCache,cacheBlockSize:this.storeParams.cacheBlockSize}),this.forEachChildStoreShallow(t=>t.addStoreStates(e))}getIdSequence(){return this.idSequence}getParentNode(){return this.parentRowNode}getRowDetails(){return{field:this.groupField,group:this.group,leafGroup:this.leafGroup,level:this.level,parent:this.parentRowNode,rowGroupColumn:this.rowGroupColumn}}getSsrmParams(){return this.ssrmParams}setStoreInfo(e){e&&Object.assign(this.info,e)}fireStoreUpdatedEvent(){this.eventService.dispatchEvent({type:"storeUpdated"})}fireRefreshFinishedEvent(){this.eventService.dispatchEvent({type:"storeRefreshed",route:this.parentRowNode.getRoute()})}getBlockStates(){return this.cache.getBlockStates()}getStoreBounds(){return{topPx:this.topPx,heightPx:this.heightPx}}getCache(){return this.cache}},ServerSideRowModel=class extends import_core269.BeanStub{constructor(){super(...arguments),this.beanName="rowModel",this.onRowHeightChanged_debounced=(0,import_core269._debounce)(this.onRowHeightChanged.bind(this),100),this.pauseStoreUpdateListening=!1,this.started=!1,this.managingPivotResultColumns=!1}wireBeans(e){this.columnModel=e.columnModel,this.columnNameService=e.columnNameService,this.pivotResultColsService=e.pivotResultColsService,this.funcColsService=e.funcColsService,this.filterManager=e.filterManager,this.sortController=e.sortController,this.rowRenderer=e.rowRenderer,this.nodeManager=e.ssrmNodeManager,this.storeFactory=e.ssrmStoreFactory,this.beans=e,this.pivotColDefService=e.pivotColDefService}ensureRowHeightsValid(){return!1}start(){this.started=!0,this.updateDatasource()}destroyDatasource(){this.datasource&&(this.datasource.destroy&&this.datasource.destroy(),this.rowRenderer.datasourceChanged(),this.datasource=void 0)}postConstruct(){const e=this.resetRootStore.bind(this);this.addManagedEventListeners({newColumnsLoaded:this.onColumnEverything.bind(this),storeUpdated:this.onStoreUpdated.bind(this),columnValueChanged:e,columnPivotChanged:e,columnRowGroupChanged:e,columnPivotModeChanged:e}),this.addManagedPropertyListeners(["masterDetail","treeData","removePivotHeaderRowWhenSingleValueColumn","suppressServerSideInfiniteScroll","cacheBlockSize"],e),this.addManagedPropertyListener("groupAllowUnbalanced",()=>this.onStoreUpdated()),this.addManagedPropertyListener("rowHeight",()=>this.resetRowHeights()),this.verifyProps(),this.addManagedPropertyListener("serverSideDatasource",()=>this.updateDatasource())}updateDatasource(){const e=this.gos.get("serverSideDatasource");e&&this.setDatasource(e)}verifyProps(){this.gos.exists("initialGroupOrderComparator")&&(0,import_core269._warnOnce)("initialGroupOrderComparator cannot be used with Server Side Row Model."),(0,import_core269._isRowSelection)(this.gos)&&!this.gos.exists("getRowId")&&(0,import_core269._warnOnce)("getRowId callback must be provided for Server Side Row Model selection to work correctly.")}setDatasource(e){this.started&&(this.destroyDatasource(),this.datasource=e,this.resetRootStore())}applyRowData(e,t,s){const i=this.getRootStore();if(!i)return;const r=i.getChildStore(s);r&&(r instanceof LazyStore?r.applyRowData(e,t,e.rowData.length):r instanceof FullStore&&r.processServerResult(e))}isLastRowIndexKnown(){const e=this.getRootStore();return e?e.isLastRowIndexKnown():!1}onColumnEverything(){if(!this.storeParams){this.resetRootStore();return}const e=this.columnsToValueObjects(this.funcColsService.getRowGroupColumns()),t=this.columnsToValueObjects(this.funcColsService.getValueColumns()),s=this.columnsToValueObjects(this.funcColsService.getPivotColumns()),i=c=>{const h={};c.oldCols.forEach(p=>h[p.id]=p);const d=c.newCols.every(p=>{const g=h[p.id];return g&&delete h[p.id],g&&g.field===p.field&&g.aggFunc===p.aggFunc}),u=!c.allowRemovedColumns&&!!Object.values(h).length;return d&&!u},r=!(0,import_core269._jsonEquals)(this.storeParams.sortModel,this.sortController.getSortModel()),a=!i({oldCols:this.storeParams.rowGroupCols,newCols:e}),o=!i({oldCols:this.storeParams.pivotCols,newCols:s}),n=!!e?.length&&!i({oldCols:this.storeParams.valueCols,newCols:t,allowRemovedColumns:!0});if(r||a||o||n)this.resetRootStore();else{const c=this.createStoreParams();this.storeParams.rowGroupCols=c.rowGroupCols,this.storeParams.pivotCols=c.pivotCols,this.storeParams.valueCols=c.valueCols}}destroyRootStore(){!this.rootNode||!this.rootNode.childStore||(this.rootNode.childStore=this.destroyBean(this.rootNode.childStore),this.nodeManager.clear())}refreshAfterSort(e,t){this.storeParams&&(this.storeParams.sortModel=e);const s=this.getRootStore();s&&(s.refreshAfterSort(t),this.onStoreUpdated())}generateSecondaryColumns(e){if(!this.pivotColDefService){this.gos.assertModuleRegistered(import_core269.ModuleNames.RowGroupingModule,"pivotResultFields");return}const t=this.pivotColDefService.createColDefsFromFields(e);this.managingPivotResultColumns=!0,this.pivotResultColsService.setPivotResultCols(t,"rowModelUpdated")}resetRowHeights(){const e=this.resetRowHeightsForAllRowNodes(),t=(0,import_core269._getRowHeightForNode)(this.gos,this.rootNode);if(this.rootNode.setRowHeight(t.height,t.estimated),this.rootNode.sibling){const s=(0,import_core269._getRowHeightForNode)(this.gos,this.rootNode.sibling);this.rootNode.sibling.setRowHeight(s.height,s.estimated)}e&&this.onRowHeightChanged()}resetRowHeightsForAllRowNodes(){let e=!1;return this.forEachNode(t=>{const s=(0,import_core269._getRowHeightForNode)(this.gos,t);t.setRowHeight(s.height,s.estimated);const i=t.detailNode;if(i){const r=(0,import_core269._getRowHeightForNode)(this.gos,i);i.setRowHeight(r.height,r.estimated)}if(t.sibling){const r=(0,import_core269._getRowHeightForNode)(this.gos,t.sibling);i.setRowHeight(r.height,r.estimated)}e=!0}),e}resetRootStore(){this.destroyRootStore(),this.rootNode=new import_core269.RowNode(this.beans),this.rootNode.group=!0,this.rootNode.level=-1,this.datasource&&(this.storeParams=this.createStoreParams(),this.rootNode.childStore=this.createBean(this.storeFactory.createStore(this.storeParams,this.rootNode)),this.updateRowIndexesAndBounds()),this.managingPivotResultColumns&&(this.pivotResultColsService.setPivotResultCols(null,"api"),this.managingPivotResultColumns=!1),this.dispatchModelUpdated(!0)}columnsToValueObjects(e){return e.map(t=>({id:t.getId(),aggFunc:t.getAggFunc(),displayName:this.columnNameService.getDisplayNameForColumn(t,"model"),field:t.getColDef().field}))}createStoreParams(){const e=this.columnsToValueObjects(this.funcColsService.getRowGroupColumns()),t=this.columnsToValueObjects(this.funcColsService.getValueColumns()),s=this.columnsToValueObjects(this.funcColsService.getPivotColumns()),i=(0,import_core269._isGetRowHeightFunction)(this.gos);return{valueCols:t,rowGroupCols:e,pivotCols:s,pivotMode:this.columnModel.isPivotMode(),filterModel:this.filterManager?.isAdvancedFilterEnabled()?this.filterManager?.getAdvancedFilterModel():this.filterManager?.getFilterModel()??{},sortModel:this.sortController.getSortModel(),datasource:this.datasource,lastAccessedSequence:new import_core269.NumberSequence,dynamicRowHeight:i}}getParams(){return this.storeParams}dispatchModelUpdated(e=!1){this.eventService.dispatchEvent({type:"modelUpdated",animate:!e,keepRenderedRows:!e,newPage:!1,newData:!1})}onStoreUpdated(){this.pauseStoreUpdateListening||(this.updateRowIndexesAndBounds(),this.dispatchModelUpdated())}onRowHeightChangedDebounced(){this.onRowHeightChanged_debounced()}onRowHeightChanged(){this.updateRowIndexesAndBounds(),this.dispatchModelUpdated()}updateRowIndexesAndBounds(){const e=this.getRootStore();e&&e.setDisplayIndexes(new import_core269.NumberSequence,{value:0},0)}retryLoads(){const e=this.getRootStore();e&&(e.retryLoads(),this.onStoreUpdated())}getRow(e){const t=this.getRootStore();if(t)return t.getRowUsingDisplayIndex(e)}setPaused(e){this.pauseStoreUpdateListening=e}expandAll(e){this.pauseStoreUpdateListening=!0,this.forEachNode(t=>{t.stub||t.hasChildren()&&t.setExpanded(e)}),this.pauseStoreUpdateListening=!1,this.onStoreUpdated()}refreshAfterFilter(e,t){this.storeParams&&(this.storeParams.filterModel=e);const s=this.getRootStore();s&&(s.refreshAfterFilter(t),this.onStoreUpdated())}getRootStore(){if(this.rootNode&&this.rootNode.childStore)return this.rootNode.childStore}getRowCount(){const e=this.getRootStore();return e?e.getDisplayIndexEnd():0}getTopLevelRowCount(){const e=this.getRootStore();return e?e.getRowCount():1}getTopLevelRowDisplayedIndex(e){const t=this.getRootStore();return t?t.getTopLevelRowDisplayedIndex(e):e}getRowBounds(e){const t=this.getRootStore();return t?t.getRowBounds(e):{rowTop:0,rowHeight:(0,import_core269._getRowHeightAsNumber)(this.gos)}}getBlockStates(){const e=this.getRootStore();if(!e)return;const t={};return e.forEachStoreDeep(s=>{if(s instanceof FullStore){const{id:i,state:r}=s.getBlockStateJson();t[i]=r}else if(s instanceof LazyStore)Object.entries(s.getBlockStates()).forEach(([i,r])=>{t[i]=r});else throw new Error("AG Grid: Unsupported store type")}),t}getRowIndexAtPixel(e){const t=this.getRootStore();return e<=0||!t?0:t.getRowIndexAtPixel(e)}isEmpty(){return!1}isRowsToRender(){return this.getRootStore()!=null&&this.getRowCount()>0}getType(){return"serverSide"}forEachNode(e){const t=this.getRootStore();t&&t.forEachNodeDeep(e)}forEachNodeAfterFilterAndSort(e,t=!1){const s=this.getRootStore();s&&s.forEachNodeDeepAfterFilterAndSort(e,void 0,t)}executeOnStore(e,t){if(!this.started)return!1;const s=this.getRootStore();if(!s)return!0;const i=s.getChildStore(e);return i&&t(i),!0}refreshStore(e={}){const t=e.route?e.route:[];this.executeOnStore(t,s=>s.refreshStore(e.purge==!0))}getStoreState(){const e=[],t=this.getRootStore();return t&&t.addStoreStates(e),e}getNodesInRangeForSelection(e,t){const s=e.rowIndex,i=t.rowIndex;if(s===null&&i===null)return[];if(i===null)return e?[e]:[];if(s===null)return[t];const r=[],[a,o]=[s,i].sort((n,l)=>n-l);return this.forEachNode(n=>{const l=n.rowIndex;l==null||n.stub||l>=a&&l<=o&&r.push(n)}),r.length!==o-a+1?e?[e,t]:[]:r}getRowNode(e){let t;return this.forEachNode(s=>{s.id===e&&(t=s),s.detailNode&&s.detailNode.id===e&&(t=s.detailNode)}),t}isRowPresent(e){return!!this.getRowNode(e.id)}setRowCount(e,t){const s=this.getRootStore();if(s){if(s instanceof LazyStore){s.setRowCount(e,t);return}(0,import_core269._errorOnce)("Infinite scrolling must be enabled in order to set the row count.")}}destroy(){this.destroyDatasource(),this.destroyRootStore(),super.destroy()}};function getServerSideSelectionState(e){return e.selectionService.getSelectionState()}function setServerSideSelectionState(e,t){e.selectionService.setSelectionState(t,"api")}function applyServerSideTransaction(e,t){return e.ssrmTransactionManager?.applyTransaction(t)}function applyServerSideRowData(e,t){const s=t.startRow??0,i=t.route??[];if(s<0){(0,import_core274._warnOnce)(`invalid value ${t.startRow} for startRow, the value should be >= 0`);return}e.rowModelHelperService?.getServerSideRowModel()?.applyRowData(t.successParams,s,i)}function applyServerSideTransactionAsync(e,t,s){return e.ssrmTransactionManager?.applyTransactionAsync(t,s)}function retryServerSideLoads(e){e.rowModelHelperService?.getServerSideRowModel()?.retryLoads()}function flushServerSideAsyncTransactions(e){return e.ssrmTransactionManager?.flushAsyncTransactions()}function refreshServerSide(e,t){e.rowModelHelperService?.getServerSideRowModel()?.refreshStore(t)}function getServerSideGroupLevelState(e){return e.rowModelHelperService?.getServerSideRowModel()?.getStoreState()??[]}var ServerSideExpansionService=class extends import_core275.ExpansionService{constructor(){super(...arguments),this.beanName="expansionService",this.queuedRowIds=new Set}wireBeans(e){super.wireBeans(e),this.serverSideRowModel=e.rowModel}postConstruct(){super.postConstruct(),this.addManagedEventListeners({columnRowGroupChanged:()=>{this.queuedRowIds.clear()}})}checkOpenByDefault(e){if(!e.isExpandable())return;if(this.queuedRowIds.has(e.id)){this.queuedRowIds.delete(e.id),e.setExpanded(!0);return}const t=this.gos.getCallback("isServerSideGroupOpenByDefault");if(!t)return;const s={data:e.data,rowNode:e};t(s)&&e.setExpanded(!0)}expandRows(e){e.forEach(t=>{const s=this.serverSideRowModel.getRowNode(t);s?s.setExpanded(!0):this.queuedRowIds.add(t)})}expandAll(e){this.serverSideRowModel.expandAll(e)}onGroupExpandedOrCollapsed(){}},ServerSideRowRangeSelectionContext=class{constructor(){this.root=null,this.end=null,this.cachedRange=[]}init(e){this.rowModel=e}reset(){this.root=null,this.end=null,this.cachedRange.length=0}setRoot(e){this.root=e,this.end=null,this.cachedRange.length=0}setEndRange(e){this.end=e,this.cachedRange.length=0}getRoot(){return this.root}getRange(){if(this.cachedRange.length===0){const e=this.root?this.rowModel.getRowNode(this.root):void 0,t=this.end?this.rowModel.getRowNode(this.end):void 0;if(e==null||t==null)return this.cachedRange;this.cachedRange=this.rowModel.getNodesInRangeForSelection(e,t)}return this.cachedRange}isInRange(e){return this.root===null?!1:this.getRange().some(t=>t.id===e)}truncate(e){const t=this.getRange();if(t.length===0)return{keep:[],discard:[]};const s=t[0].id===this.root,i=t.findIndex(r=>r.id===e);if(i>-1){const r=t.slice(0,i),a=t.slice(i+1);return this.setEndRange(e),s?{keep:r,discard:a}:{keep:a,discard:r}}else return{keep:t,discard:[]}}extend(e,t=!1){if(this.root==null){const a=this.getRange().slice(),o=this.rowModel.getRowNode(e);return o&&(t&&o.depthFirstSearch(n=>!n.group&&a.push(n)),a.push(o)),this.setRoot(e),{keep:a,discard:[]}}const s=this.rowModel.getRowNode(e),i=this.rowModel.getRowNode(this.root);if(s==null)return{keep:this.getRange(),discard:[]};if(i==null)return{keep:this.getRange().concat(s),discard:[]};if(this.rowModel.getNodesInRangeForSelection(i,s).find(a=>a.id===this.end))return this.setEndRange(e),{keep:this.getRange(),discard:[]};{const a=this.getRange().slice();return this.setEndRange(e),{keep:this.getRange(),discard:a}}}},DefaultStrategy=class extends import_core277.BeanStub{constructor(){super(...arguments),this.selectionCtx=new ServerSideRowRangeSelectionContext,this.selectedState={selectAll:!1,toggledNodes:new Set},this.selectAllUsed=!1,this.selectedNodes={}}wireBeans(e){this.rowModel=e.rowModel}postConstruct(){this.selectionCtx.init(this.rowModel)}getSelectedState(){return{selectAll:this.selectedState.selectAll,toggledNodes:[...this.selectedState.toggledNodes]}}setSelectedState(e){const t={selectAll:!1,toggledNodes:new Set};if(typeof e!="object")return(0,import_core277._errorOnce)("The provided selection state should be an object.");if(!("selectAll"in e))return(0,import_core277._errorOnce)("Invalid selection state. The state must conform to `IServerSideSelectionState`.");if(typeof e.selectAll=="boolean")t.selectAll=e.selectAll;else return(0,import_core277._errorOnce)("selectAll must be of boolean type.");if("toggledNodes"in e&&Array.isArray(e.toggledNodes))e.toggledNodes.forEach(i=>{typeof i=="string"?t.toggledNodes.add(i):(0,import_core277._warnOnce)(`Provided ids must be of string type. Invalid id provided: ${i}`)});else return(0,import_core277._warnOnce)("`toggledNodes` must be an array of string ids.");const s=t.selectAll||t.toggledNodes.size>1;if((0,import_core277._isUsingNewRowSelectionAPI)(this.gos)&&!(0,import_core277._isMultiRowSelection)(this.gos)&&s)return(0,import_core277._warnOnce)("cannot multi select unless selection mode is 'multiRow'");this.selectedState=t}deleteSelectionStateFromParent(e,t){if(this.selectedState.toggledNodes.size===0)return!1;let s=!1;return t.forEach(i=>{this.selectedState.toggledNodes.delete(i)&&(s=!0)}),s}overrideSelectionValue(e,t){if(!(0,import_core277.isSelectionUIEvent)(t))return e;const s=this.selectionCtx.getRoot(),i=s?this.rowModel.getRowNode(s):null;return i?i.isSelected()??!1:!0}setNodesSelected(e){const{nodes:t,clearSelection:s,newValue:i,rangeSelect:r,source:a}=e;if(t.length===0)return 0;const o=s&&i&&!r;if(!(0,import_core277._isMultiRowSelection)(this.gos)||o){if(t.length>1)throw new Error("AG Grid: cannot select multiple rows when rowSelection.mode is set to 'singleRow'");const l=t[0];return i&&l.selectable?(this.selectedNodes={[l.id]:l},this.selectedState={selectAll:!1,toggledNodes:new Set([l.id])}):(this.selectedNodes={},this.selectedState={selectAll:!1,toggledNodes:new Set}),l.selectable&&this.selectionCtx.setRoot(l.id),1}const n=(l,c=i)=>{c&&l.selectable?this.selectedNodes[l.id]=l:delete this.selectedNodes[l.id],c===this.selectedState.selectAll||!l.selectable?this.selectedState.toggledNodes.delete(l.id):this.selectedState.toggledNodes.add(l.id)};if(r){if(t.length>1)throw new Error("AG Grid: cannot select multiple rows when using rangeSelect");const l=t[0],c=this.overrideSelectionValue(i,a);if(this.selectionCtx.isInRange(l.id)){const h=this.selectionCtx.truncate(l.id);c&&h.discard.forEach(d=>n(d,!1)),h.keep.forEach(d=>n(d,c))}else if(this.selectionCtx.getRoot()!==l.id){const u=this.selectionCtx.extend(l.id);c&&u.discard.forEach(p=>n(p,!1)),u.keep.forEach(p=>n(p,c))}return 1}return t.forEach(l=>n(l)),this.selectionCtx.setRoot((0,import_core277._last)(t).id),1}processNewRow(e){this.selectedNodes[e.id]&&(this.selectedNodes[e.id]=e)}isNodeSelected(e){const t=this.selectedState.toggledNodes.has(e.id);return this.selectedState.selectAll?!t:t}getSelectedNodes(){return this.selectAllUsed&&(0,import_core277._warnOnce)("getSelectedNodes and getSelectedRows functions cannot be used with select all functionality with the server-side row model.\n Use `api.getServerSideSelectionState()` instead."),Object.values(this.selectedNodes)}getSelectedRows(){return this.getSelectedNodes().map(e=>e.data)}getSelectionCount(){return this.selectedState.selectAll?-1:this.selectedState.toggledNodes.size}clearOtherNodes(e,t){const s=this.selectedState.selectAll?1:this.selectedState.toggledNodes.size-1;return this.selectedState={selectAll:!1,toggledNodes:new Set([e.id])},this.rowModel.forEachNode(i=>{i!==e&&i.selectThisNode(!1,void 0,t)}),this.eventService.dispatchEvent({type:"selectionChanged",source:t}),s}isEmpty(){return!this.selectedState.selectAll&&!this.selectedState.toggledNodes?.size}selectAllRowNodes(){this.selectedState={selectAll:!0,toggledNodes:new Set},this.selectedNodes={},this.selectAllUsed=!0,this.selectionCtx.reset()}deselectAllRowNodes(){this.selectedState={selectAll:!1,toggledNodes:new Set},this.selectedNodes={},this.selectionCtx.reset()}getSelectAllState(){return this.selectedState.selectAll?this.selectedState.toggledNodes.size>0?null:!0:this.selectedState.toggledNodes.size>0?null:!1}},GroupSelectsChildrenStrategy=class extends import_core278.BeanStub{constructor(){super(...arguments),this.selectionCtx=new ServerSideRowRangeSelectionContext,this.selectedState={selectAllChildren:!1,toggledNodes:new Map}}wireBeans(e){this.rowModel=e.rowModel,this.funcColsService=e.funcColsService,this.filterManager=e.filterManager,this.selectionService=e.selectionService}postConstruct(){this.addManagedEventListeners({modelUpdated:()=>this.removeRedundantState(),columnRowGroupChanged:()=>this.selectionService.reset("rowGroupChanged")}),this.selectionCtx.init(this.rowModel)}getSelectedState(){const e=this.gos.get("treeData"),t=(s,i,r)=>{const a={nodeId:r};if((e||i<=this.funcColsService.getRowGroupColumns().length)&&(a.selectAllChildren=s.selectAllChildren),s.toggledNodes.size){const o=[];s.toggledNodes.forEach((n,l)=>{const c=t(n,i+1,l);o.push(c)}),a.toggledNodes=o}return a};return t(this.selectedState,0)}setSelectedState(e){if("selectAll"in e)return(0,import_core278._errorOnce)("Invalid selection state. When `groupSelectsChildren` is enabled, the state must conform to `IServerSideGroupSelectionState`.");const t=(s,i)=>{if(typeof s!="object")throw new Error("Each provided state object must be an object.");if("selectAllChildren"in s&&typeof s.selectAllChildren!="boolean")throw new Error("`selectAllChildren` must be a boolean value or undefined.");if("toggledNodes"in s){if(!Array.isArray(s.toggledNodes))throw new Error("`toggledNodes` must be an array.");if(!s.toggledNodes.every(l=>typeof l=="object"&&"nodeId"in l&&typeof l.nodeId=="string"))throw new Error("Every `toggledNode` requires an associated string id.")}const r=s.selectAllChildren??!i,a=s.toggledNodes?.map(n=>[n.nodeId,t(n,r)]);if(a?.some(([,n])=>r===n.selectAllChildren&&n.toggledNodes.size===0))throw new Error(`
|
|
393
|
+
`),this.menuItems=e,this.column=t,this.restoreFocusParams=s,this.sourceElement=i,this.eColumnMenu=import_core248.RefPlaceholder}wireBeans(e){this.columnMenuFactory=e.columnMenuFactory,this.menuUtils=e.menuUtils,this.focusService=e.focusService}postConstruct(){this.mainMenuList=this.columnMenuFactory.createMenu(this,this.menuItems,this.column,()=>this.sourceElement??this.getGui()),this.mainMenuList.addEventListener("closeMenu",this.onHidePopup.bind(this)),this.eColumnMenu.appendChild(this.mainMenuList.getGui())}onHidePopup(e){this.menuUtils.closePopupAndRestoreFocusOnSelect(this.hidePopupFunc,this.restoreFocusParams,e)}afterGuiAttached({hidePopup:e}){e&&(this.hidePopupFunc=e,this.addDestroyFunc(e)),this.focusService.focusInto(this.mainMenuList.getGui())}};function showContextMenu(e,t){const{rowNode:s,column:i,value:r,x:a,y:o}=t||{};let{x:n,y:l}=e.menuService.getContextMenuPosition(s,i);a!=null&&(n=a),o!=null&&(l=o),e.menuService.showContextMenu({mouseEvent:new MouseEvent("mousedown",{clientX:n,clientY:l}),rowNode:s,column:i,value:r})}function showColumnChooser(e,t){e.menuService.showColumnChooser({chooserParams:t})}function hideColumnChooser(e){e.menuService.hideColumnChooser()}var MenuItemMapper=class extends import_core250.BeanStub{constructor(){super(...arguments),this.beanName="menuItemMapper"}wireBeans(e){this.columnModel=e.columnModel,this.columnNameService=e.columnNameService,this.columnApplyStateService=e.columnApplyStateService,this.funcColsService=e.funcColsService,this.focusService=e.focusService,this.rowPositionUtils=e.rowPositionUtils,this.chartMenuItemMapper=e.chartMenuItemMapper,this.menuService=e.menuService,this.sortController=e.sortController,this.columnAutosizeService=e.columnAutosizeService,this.expansionService=e.expansionService,this.clipboardService=e.clipboardService,this.aggFuncService=e.aggFuncService,this.csvCreator=e.csvCreator,this.excelCreator=e.excelCreator}mapWithStockItems(e,t,s,i){if(!e)return[];const r=[];return e.forEach(a=>{let o;if(typeof a=="string"?o=this.getStockMenuItem(a,t,s,i):o={...a},!o)return;const n=o,{subMenu:l}=n;l&&l instanceof Array&&(n.subMenu=this.mapWithStockItems(l,t,s,i)),o!=null&&r.push(o)}),r}getStockMenuItem(e,t,s,i){const r=this.localeService.getLocaleTextFunc(),a=this.gos.get("skipHeaderOnAutoSize");switch(e){case"pinSubMenu":return{name:r("pinColumn","Pin Column"),icon:(0,import_core250._createIconNoSpan)("menuPin",this.gos,null),subMenu:["clearPinned","pinLeft","pinRight"]};case"pinLeft":return{name:r("pinLeft","Pin Left"),action:()=>this.columnModel.setColsPinned([t],"left",i),checked:!!t&&t.isPinnedLeft()};case"pinRight":return{name:r("pinRight","Pin Right"),action:()=>this.columnModel.setColsPinned([t],"right",i),checked:!!t&&t.isPinnedRight()};case"clearPinned":return{name:r("noPin","No Pin"),action:()=>this.columnModel.setColsPinned([t],null,i),checked:!!t&&!t.isPinned()};case"valueAggSubMenu":return this.gos.assertModuleRegistered(import_core250.ModuleNames.RowGroupingModule,"Aggregation from Menu")?!t?.isPrimary()&&!t?.getColDef().pivotValueColumn?null:{name:r("valueAggregation","Value Aggregation"),icon:(0,import_core250._createIconNoSpan)("menuValue",this.gos,null),subMenu:this.createAggregationSubMenu(t,this.aggFuncService),disabled:this.gos.get("functionsReadOnly")}:null;case"autoSizeThis":return{name:r("autosizeThisColumn","Autosize This Column"),action:()=>this.columnAutosizeService.autoSizeColumn(t,i,a)};case"autoSizeAll":return{name:r("autosizeAllColumns","Autosize All Columns"),action:()=>this.columnAutosizeService.autoSizeAllColumns(i,a)};case"rowGroup":return{name:r("groupBy","Group by")+" "+(0,import_core250._escapeString)(this.columnNameService.getDisplayNameForColumn(t,"header")),disabled:this.gos.get("functionsReadOnly")||t?.isRowGroupActive()||!t?.getColDef().enableRowGroup,action:()=>this.funcColsService.addRowGroupColumns([t],i),icon:(0,import_core250._createIconNoSpan)("menuAddRowGroup",this.gos,null)};case"rowUnGroup":{const o=(0,import_core250._createIconNoSpan)("menuRemoveRowGroup",this.gos,null),n=t?.getColDef().showRowGroup,l=this.gos.get("groupLockGroupColumns");if(n===!0)return{name:r("ungroupAll","Un-Group All"),disabled:this.gos.get("functionsReadOnly")||l===-1||l>=this.funcColsService.getRowGroupColumns().length,action:()=>this.funcColsService.setRowGroupColumns(this.funcColsService.getRowGroupColumns().slice(0,l),i),icon:o};if(typeof n=="string"){const c=this.columnModel.getColDefCol(n),h=c!=null?(0,import_core250._escapeString)(this.columnNameService.getDisplayNameForColumn(c,"header")):n;return{name:r("ungroupBy","Un-Group by")+" "+h,disabled:this.gos.get("functionsReadOnly")||c!=null&&this.columnModel.isColGroupLocked(c),action:()=>this.funcColsService.removeRowGroupColumns([n],i),icon:o}}return{name:r("ungroupBy","Un-Group by")+" "+(0,import_core250._escapeString)(this.columnNameService.getDisplayNameForColumn(t,"header")),disabled:this.gos.get("functionsReadOnly")||!t?.isRowGroupActive()||!t?.getColDef().enableRowGroup||this.columnModel.isColGroupLocked(t),action:()=>this.funcColsService.removeRowGroupColumns([t],i),icon:o}}case"resetColumns":return{name:r("resetColumns","Reset Columns"),action:()=>this.columnApplyStateService.resetColumnState(i)};case"expandAll":return{name:r("expandAll","Expand All Row Groups"),action:()=>this.expansionService.expandAll(!0)};case"contractAll":return{name:r("collapseAll","Collapse All Row Groups"),action:()=>this.expansionService.expandAll(!1)};case"copy":return this.gos.assertModuleRegistered(import_core250.ModuleNames.ClipboardModule,"Copy from Menu")?{name:r("copy","Copy"),shortcut:r("ctrlC","Ctrl+C"),icon:(0,import_core250._createIconNoSpan)("clipboardCopy",this.gos,null),action:()=>this.clipboardService.copyToClipboard()}:null;case"copyWithHeaders":return this.gos.assertModuleRegistered(import_core250.ModuleNames.ClipboardModule,"Copy with Headers from Menu")?{name:r("copyWithHeaders","Copy with Headers"),icon:(0,import_core250._createIconNoSpan)("clipboardCopy",this.gos,null),action:()=>this.clipboardService.copyToClipboard({includeHeaders:!0})}:null;case"copyWithGroupHeaders":return this.gos.assertModuleRegistered(import_core250.ModuleNames.ClipboardModule,"Copy with Group Headers from Menu")?{name:r("copyWithGroupHeaders","Copy with Group Headers"),icon:(0,import_core250._createIconNoSpan)("clipboardCopy",this.gos,null),action:()=>this.clipboardService.copyToClipboard({includeHeaders:!0,includeGroupHeaders:!0})}:null;case"cut":if(this.gos.assertModuleRegistered(import_core250.ModuleNames.ClipboardModule,"Cut from Menu")){const o=this.focusService.getFocusedCell(),n=o?this.rowPositionUtils.getRowNode(o):null,l=n?o?.column.isCellEditable(n):!1;return{name:r("cut","Cut"),shortcut:r("ctrlX","Ctrl+X"),icon:(0,import_core250._createIconNoSpan)("clipboardCut",this.gos,null),disabled:!l||this.gos.get("suppressCutToClipboard"),action:()=>this.clipboardService.cutToClipboard(void 0,"contextMenu")}}else return null;case"paste":return this.gos.assertModuleRegistered(import_core250.ModuleNames.ClipboardModule,"Paste from Clipboard")?{name:r("paste","Paste"),shortcut:r("ctrlV","Ctrl+V"),disabled:!0,icon:(0,import_core250._createIconNoSpan)("clipboardPaste",this.gos,null),action:()=>this.clipboardService.pasteFromClipboard()}:null;case"export":{const o=[],n=this.gos.isModuleRegistered(import_core250.ModuleNames.CsvExportModule),l=this.gos.isModuleRegistered(import_core250.ModuleNames.ExcelExportModule);return!this.gos.get("suppressCsvExport")&&n&&o.push("csvExport"),!this.gos.get("suppressExcelExport")&&l&&o.push("excelExport"),{name:r("export","Export"),subMenu:o,icon:(0,import_core250._createIconNoSpan)("save",this.gos,null)}}case"csvExport":return{name:r("csvExport","CSV Export"),icon:(0,import_core250._createIconNoSpan)("csvExport",this.gos,null),action:()=>this.csvCreator?.exportDataAsCsv()};case"excelExport":return{name:r("excelExport","Excel Export"),icon:(0,import_core250._createIconNoSpan)("excelExport",this.gos,null),action:()=>this.excelCreator?.exportDataAsExcel()};case"separator":return"separator";case"pivotChart":case"chartRange":return this.chartMenuItemMapper.getChartItems(e)??null;case"columnFilter":return t?{name:r("columnFilter","Column Filter"),icon:(0,import_core250._createIconNoSpan)("filter",this.gos,null),action:()=>this.menuService.showFilterMenu({column:t,buttonElement:s(),containerType:"columnFilter",positionBy:"button"})}:null;case"columnChooser":return this.gos.isModuleRegistered(import_core250.ModuleNames.ColumnsToolPanelModule)?{name:r("columnChooser","Choose Columns"),icon:(0,import_core250._createIconNoSpan)("columns",this.gos,null),action:()=>this.menuService.showColumnChooser({column:t,eventSource:s()})}:null;case"sortAscending":return{name:r("sortAscending","Sort Ascending"),icon:(0,import_core250._createIconNoSpan)("sortAscending",this.gos,null),action:()=>this.sortController.setSortForColumn(t,"asc",!1,i)};case"sortDescending":return{name:r("sortDescending","Sort Descending"),icon:(0,import_core250._createIconNoSpan)("sortDescending",this.gos,null),action:()=>this.sortController.setSortForColumn(t,"desc",!1,i)};case"sortUnSort":return{name:r("sortUnSort","Clear Sort"),icon:(0,import_core250._createIconNoSpan)("sortUnSort",this.gos,null),action:()=>this.sortController.setSortForColumn(t,null,!1,i)};default:return(0,import_core250._warnOnce)(`unknown menu item type ${e}`),null}}createAggregationSubMenu(e,t){const s=this.localeService.getLocaleTextFunc();let i;if(e.isPrimary())i=e;else{const a=e.getColDef().pivotValueColumn;i=(0,import_core250._exists)(a)?a:void 0}const r=[];if(i){const a=i.isValueActive(),o=t.getFuncNames(i);r.push({name:s("noAggregation","None"),action:()=>{this.funcColsService.removeValueColumns([i],"contextMenu"),this.funcColsService.setColumnAggFunc(i,void 0,"contextMenu")},checked:!a}),o.forEach(n=>{r.push({name:s(n,t.getDefaultFuncLabel(n)),action:()=>{this.funcColsService.setColumnAggFunc(i,n,"contextMenu"),this.funcColsService.addValueColumns([i],"contextMenu")},checked:a&&i.getAggFunc()===n})})}return r}},MenuUtils=class extends import_core251.BeanStub{constructor(){super(...arguments),this.beanName="menuUtils"}wireBeans(e){this.focusService=e.focusService,this.headerNavigationService=e.headerNavigationService,this.visibleColsService=e.visibleColsService}restoreFocusOnClose(e,t,s,i){const{eventSource:r}=e,a=s instanceof KeyboardEvent;if(!i&&!a||!r)return;const o=(0,import_core251._getActiveDomElement)(this.gos);!t.contains(o)&&!(0,import_core251._isNothingFocused)(this.gos)||this.focusHeaderCell(e)}closePopupAndRestoreFocusOnSelect(e,t,s){let i;s&&s.keyboardEvent&&(i=s.keyboardEvent),e(i&&{keyboardEvent:i});const r=this.focusService.getFocusedCell();if((0,import_core251._isNothingFocused)(this.gos))if(r){const{rowIndex:a,rowPinned:o,column:n}=r;this.focusService.setFocusedCell({rowIndex:a,column:n,rowPinned:o,forceBrowserFocus:!0,preventScrollOnBrowserFocus:!0})}else this.focusHeaderCell(t)}onContextMenu(e,t,s){if(!this.gos.get("allowContextMenuWithControlKey")&&e&&(e.ctrlKey||e.metaKey)||(e&&this.blockMiddleClickScrollsIfNeeded(e),this.gos.get("suppressContextMenu")))return;const i=e??t.touches[0];if(s(i)){const r=e??t;r&&r.cancelable&&r.preventDefault()}}async focusHeaderCell(e){const{column:t,columnIndex:s,headerPosition:i,eventSource:r}=e,a=await this.visibleColsService.getAllCols().some(o=>o===t);if(!(t&&!t.isAlive())){if(a&&r&&(0,import_core251._isVisible)(r)){const o=this.focusService.findTabbableParent(r);o&&(t&&this.headerNavigationService.scrollToColumn(t),o.focus())}else if(i&&s!==-1){const o=this.visibleColsService.getAllCols(),n=o[s]||(0,import_core251._last)(o);n&&this.focusService.focusHeaderPosition({headerPosition:{headerRowIndex:i.headerRowIndex,column:n}})}}}blockMiddleClickScrollsIfNeeded(e){this.gos.get("suppressMiddleClickScrolls")&&e.which===2&&e.preventDefault()}},VERSION12="32.3.0",MenuCoreModule=(0,import_core239._defineModule)({version:VERSION12,moduleName:`${import_core239.ModuleNames.MenuModule}-core`,beans:[EnterpriseMenuFactory,ContextMenuFactory,MenuItemMapper,ChartMenuItemMapper,ColumnChooserFactory,ColumnMenuFactory,MenuUtils],dependantModules:[EnterpriseCoreModule],userComponents:[{name:"agMenuItem",classImp:AgMenuItemRenderer}]}),MenuApiModule=(0,import_core239._defineModule)({version:VERSION12,moduleName:`${import_core239.ModuleNames.MenuModule}-api`,apiFunctions:{showContextMenu,showColumnChooser,hideColumnChooser},dependantModules:[MenuCoreModule,import_core239._CommunityMenuApiModule]}),MenuModule=(0,import_core239._defineModule)({version:VERSION12,moduleName:import_core239.ModuleNames.MenuModule,dependantModules:[MenuCoreModule,MenuApiModule]}),import_core252=require("ag-grid-community"),import_core254=require("ag-grid-community"),import_core256=require("ag-grid-community"),MultiFilter=class de extends import_core254.TabGuardComp{constructor(){super('<div class="ag-multi-filter ag-menu-list-compact"></div>'),this.filterDefs=[],this.filters=[],this.guiDestroyFuncs=[],this.filterGuis=[],this.activeFilterIndices=[],this.lastActivatedMenuItem=null,this.afterFiltersReadyFuncs=[]}wireBeans(t){this.filterManager=t.filterManager,this.userComponentFactory=t.userComponentFactory,this.focusService=t.focusService}postConstruct(){this.initialiseTabGuard({onFocusIn:t=>this.onFocusIn(t)})}static getFilterDefs(t){const{filters:s}=t;return s&&s.length>0?s:[{filter:"agTextColumnFilter"},{filter:"agSetColumnFilter"}]}init(t){this.params=t,this.filterDefs=de.getFilterDefs(t);const{column:s,filterChangedCallback:i}=t;this.column=s,this.filterChangedCallback=i;const r=[];return this.filterDefs.forEach((a,o)=>{const n=this.createFilter(a,o);n!=null&&r.push(n)}),new import_core254.AgPromise(a=>{import_core254.AgPromise.all(r).then(o=>{this.filters=o,this.refreshGui("columnMenu").then(()=>{a()})})}).then(()=>{this.afterFiltersReadyFuncs.forEach(a=>a()),this.afterFiltersReadyFuncs.length=0})}refreshGui(t){return t===this.lastOpenedInContainer?import_core254.AgPromise.resolve():(this.tabGuardFeature.removeAllChildrenExceptTabGuards(),this.destroyChildren(),import_core254.AgPromise.all(this.filters.map((s,i)=>{const r=this.filterDefs[i],a=this.getFilterTitle(s,r);let o;if(r.display==="subMenu"&&t!=="toolPanel")o=this.insertFilterMenu(s,a).then(n=>n.getGui());else if(r.display==="subMenu"||r.display==="accordion"){const n=this.insertFilterGroup(s,a);o=import_core254.AgPromise.resolve(n.getGui())}else o=import_core254.AgPromise.resolve(s.getGui());return o})).then(s=>{s.forEach((i,r)=>{r>0&&this.appendChild((0,import_core254._loadTemplate)('<div class="ag-filter-separator"></div>')),this.appendChild(i)}),this.filterGuis=s,this.lastOpenedInContainer=t}))}getFilterTitle(t,s){return s.title!=null?s.title:t instanceof import_core254.ProvidedFilter?t.getFilterTitle():"Filter"}destroyChildren(){this.guiDestroyFuncs.forEach(t=>t()),this.guiDestroyFuncs.length=0,this.filterGuis.length=0}insertFilterMenu(t,s){const i=this.createBean(new AgMenuItemComponent);return i.init({menuItemDef:{name:s,subMenu:[],cssClasses:["ag-multi-filter-menu-item"],menuItem:AgMenuItemRenderer,menuItemParams:{cssClassPrefix:"ag-compact-menu-option",isCompact:!0}},level:0,isAnotherSubMenuOpen:()=>!1,childComponent:t,contextParams:{column:null,node:null,value:null}}).then(()=>{i.setParentComponent(this),this.guiDestroyFuncs.push(()=>this.destroyBean(i)),this.addManagedListeners(i,{menuItemActivated:a=>{this.lastActivatedMenuItem&&this.lastActivatedMenuItem!==a.menuItem&&this.lastActivatedMenuItem.deactivate(),this.lastActivatedMenuItem=a.menuItem}});const r=i.getGui();return i.addManagedElementListeners(r,{keydown:a=>{const{key:o}=a;switch(o){case import_core254.KeyCode.UP:case import_core254.KeyCode.RIGHT:case import_core254.KeyCode.DOWN:case import_core254.KeyCode.LEFT:a.preventDefault(),o===import_core254.KeyCode.RIGHT&&i.openSubMenu(!0);break}},focusin:()=>i.activate(),focusout:()=>{!i.isSubMenuOpen()&&!i.isSubMenuOpening()&&i.deactivate()}}),i})}insertFilterGroup(t,s){const i=this.createBean(new AgGroupComponent({title:s,cssIdentifier:"multi-filter"}));return this.guiDestroyFuncs.push(()=>this.destroyBean(i)),i.addItem(t.getGui()),i.toggleGroupExpand(!1),t.afterGuiAttached&&i.addManagedListeners(i,{expanded:()=>t.afterGuiAttached({container:this.lastOpenedInContainer,suppressFocus:!0,hidePopup:this.hidePopup})}),i}isFilterActive(){return this.filters.some(t=>t.isFilterActive())}getLastActiveFilterIndex(){return this.activeFilterIndices.length>0?this.activeFilterIndices[this.activeFilterIndices.length-1]:null}doesFilterPass(t,s){let i=!0;return this.filters.forEach(r=>{!i||r===s||!r.isFilterActive()||(i=r.doesFilterPass(t))}),i}getFilterType(){return"multi"}getModelFromUi(){return{filterType:this.getFilterType(),filterModels:this.filters.map(s=>{const i=s;return typeof i.getModelFromUi=="function"?i.getModelFromUi():null})}}getModel(){return this.isFilterActive()?{filterType:this.getFilterType(),filterModels:this.filters.map(s=>s.isFilterActive()?s.getModel():null)}:null}setModel(t){const s=(r,a)=>new import_core254.AgPromise(o=>{const n=r.setModel(a);n?n.then(()=>o()):o()});let i=[];return t==null?i=this.filters.map((r,a)=>s(r,null).then(()=>{this.updateActiveList(a)})):this.filters.forEach((r,a)=>{const o=t.filterModels.length>a?t.filterModels[a]:null,n=s(r,o).then(()=>{this.updateActiveList(a)});i.push(n)}),import_core254.AgPromise.all(i).then(()=>{})}applyModel(t="api"){let s=!1;return this.filters.forEach(i=>{i instanceof import_core254.ProvidedFilter&&(s=i.applyModel(t)||s)}),s}getChildFilterInstance(t){return this.filters[t]}afterGuiAttached(t){let s;t?(this.hidePopup=t.hidePopup,s=this.refreshGui(t.container)):(this.hidePopup=void 0,s=import_core254.AgPromise.resolve());const i=t?.suppressFocus;s.then(()=>{const{filterDefs:r}=this;let a=!!i;r&&(0,import_core254._forEachReverse)(r,(n,l)=>{const c=l===0,h=n.display&&n.display!=="inline",d=i||!c||h,u={...t??{},suppressFocus:d},p=this.filters?.[l];if(p&&(this.executeFunctionIfExistsOnFilter(p,"afterGuiAttached",u),c&&!d&&(a=!0)),!i&&c&&h){const g=this.filterGuis[l];g&&(this.focusService.focusInto(g)||g.focus(),a=!0)}});const o=(0,import_core254._getActiveDomElement)(this.gos);!a&&((0,import_core254._isNothingFocused)(this.gos)||this.getGui().contains(o))&&this.forceFocusOutOfContainer(!0)})}afterGuiDetached(){this.executeFunctionIfExists("afterGuiDetached")}onAnyFilterChanged(){this.executeFunctionIfExists("onAnyFilterChanged")}onNewRowsLoaded(){this.executeFunctionIfExists("onNewRowsLoaded")}destroy(){this.filters.forEach(t=>this.destroyBean(t)),this.filters.length=0,this.destroyChildren(),this.hidePopup=void 0,super.destroy()}executeFunctionIfExists(t,...s){(0,import_core254._forEachReverse)(this.filters,i=>{this.executeFunctionIfExistsOnFilter(i,t,s)})}executeFunctionIfExistsOnFilter(t,s,...i){const r=t[s];typeof r=="function"&&r.apply(t,i)}createFilter(t,s){const{filterModifiedCallback:i,doesRowPassOtherFilter:r}=this.params;let a;const o={...this.filterManager.createFilterParams(this.column,this.column.getColDef()),filterModifiedCallback:i,filterChangedCallback:c=>{this.executeWhenAllFiltersReady(()=>this.filterChanged(s,c))},doesRowPassOtherFilter:c=>r(c)&&this.doesFilterPass({node:c,data:c.data},a)},n=this.userComponentFactory.getFilterDetails(t,o,"agTextColumnFilter");if(!n)return null;const l=n.newAgStackInstance();return l&&l.then(c=>a=c),l}executeWhenAllFiltersReady(t){this.filters&&this.filters.length>0?t():this.afterFiltersReadyFuncs.push(t)}updateActiveList(t){const s=this.filters[t];(0,import_core254._removeFromArray)(this.activeFilterIndices,t),s.isFilterActive()&&this.activeFilterIndices.push(t)}filterChanged(t,s){this.updateActiveList(t),this.filterChangedCallback(s);const i=this.filters[t];this.filters.forEach(r=>{r!==i&&typeof r.onAnyFilterChanged=="function"&&r.onAnyFilterChanged()})}onFocusIn(t){this.lastActivatedMenuItem!=null&&!this.lastActivatedMenuItem.getGui().contains(t.target)&&(this.lastActivatedMenuItem.deactivate(),this.lastActivatedMenuItem=null)}getModelAsString(t){if(!this.filters||!t?.filterModels?.length)return"";const s=this.getLastActiveFilterIndex()??0;return this.filters[s].getModelAsString?.(t.filterModels[s])??""}},MultiFloatingFilterComp=class extends import_core256.Component{constructor(){super('<div class="ag-multi-floating-filter ag-floating-filter-input"></div>'),this.floatingFilters=[],this.compDetailsList=[]}wireBeans(e){this.userComponentFactory=e.userComponentFactory,this.filterManager=e.filterManager}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))}),import_core256.AgPromise.all(t).then(s=>{s.forEach((i,r)=>{this.floatingFilters.push(i);const a=i.getGui();this.appendChild(a),r>0&&(0,import_core256._setDisplayed)(a,!1)})})}onParamsUpdated(e){this.refresh(e)}refresh(e){this.params=e;const{compDetailsList:t,floatingFilterParamsList:s}=this.getCompDetailsList(e);t.length===this.compDetailsList.length&&t.every((r,a)=>!this.filterManager?.areFilterCompsDifferent(this.compDetailsList[a],r))?s.forEach((r,a)=>{const o=this.floatingFilters[a];let n=!1;o.refresh&&o.refresh(r)!==null&&(n=!0),n||o.onParamsUpdated?.(r)}):((0,import_core256._clearElement)(this.getGui()),this.destroyBeans(this.floatingFilters),this.floatingFilters=[],this.compDetailsList=[],this.setParams(t))}getCompDetailsList(e){const t=[],s=[],i=e.filterParams;return MultiFilter.getFilterDefs(i).forEach((r,a)=>{const o={...e,parentFilterInstance:l=>{this.parentMultiFilterInstance(c=>{const h=c.getChildFilterInstance(a);h!=null&&l(h)})}};(0,import_core256._mergeDeep)(o.filterParams,r.filterParams);const n=this.getCompDetails(r,o);n&&(t.push(n),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),(0,import_core256._setDisplayed)(i.getGui(),r===0)});else{const i=s.getLastActiveFilterIndex();this.floatingFilters.forEach((r,a)=>{const o=e.filterModels.length>a?e.filterModels[a]:null;r.onParentModelChanged(o,t);const n=i==null?a===0:a===i;(0,import_core256._setDisplayed)(r.getGui(),n)})}})}destroy(){this.destroyBeans(this.floatingFilters),this.floatingFilters.length=0,super.destroy()}getCompDetails(e,t){const s=(0,import_core256.getDefaultFloatingFilterType)(this.frameworkOverrides,e,()=>this.filterManager.getDefaultFloatingFilter(this.params.column))??"agReadOnlyFloatingFilter";return this.userComponentFactory.getFloatingFilterCompDetails(e,t,s)}parentMultiFilterInstance(e){this.params.parentFilterInstance(t=>{if(!(t instanceof MultiFilter))throw new Error("AG Grid - MultiFloatingFilterComp expects MultiFilter as its parent");e(t)})}},VERSION13="32.3.0",MultiFilterCoreModule=(0,import_core252._defineModule)({version:VERSION13,moduleName:`${import_core252.ModuleNames.MultiFilterModule}-core`,userComponents:[{name:"agMultiColumnFilter",classImp:MultiFilter},{name:"agMenuItem",classImp:AgMenuItemRenderer}],dependantModules:[EnterpriseCoreModule,import_core252._ColumnFilterModule]}),MultiFloatingFilterModule=(0,import_core252._defineModule)({version:VERSION13,moduleName:"@ag-grid-enterprise/multi-floating-filter",userComponents:[{name:"agMultiColumnFloatingFilter",classImp:MultiFloatingFilterComp}],dependantModules:[MultiFilterCoreModule,import_core252._ReadOnlyFloatingFilterModule]}),MultiFilterModule=(0,import_core252._defineModule)({version:VERSION13,moduleName:import_core252.ModuleNames.MultiFilterModule,dependantModules:[MultiFilterCoreModule,MultiFloatingFilterModule]}),import_core257=require("ag-grid-community"),import_core259=require("ag-grid-community"),RichSelectCellEditor=class extends import_core259.PopupComponent{constructor(){super('<div class="ag-cell-edit-wrapper"></div>')}init(e){this.params=e;const{cellStartedEdit:t,values:s}=e;(0,import_core259._missing)(s)&&(0,import_core259._warnOnce)("agRichSelectCellEditor requires cellEditorParams.values to be set");const{params:i,valuesPromise:r}=this.buildRichSelectParams();this.richSelect=this.createManagedBean(new AgRichSelect(i)),this.richSelect.addCssClass("ag-cell-editor"),this.appendChild(this.richSelect),r&&r.then(a=>{this.richSelect.setValueList({valueList:a,refresh:!0});const o=this.getSearchStringCallback(a);o&&this.richSelect.setSearchStringCreator(o)}),this.addManagedListeners(this.richSelect,{fieldPickerValueSelected:this.onEditorPickerValueSelected.bind(this)}),this.focusAfterAttached=t}onEditorPickerValueSelected(e){setTimeout(()=>this.params.stopEditing(!e.fromEnterKey))}buildRichSelectParams(){const{cellRenderer:e,cellHeight:t,value:s,values:i,formatValue:r,searchDebounceDelay:a,valueListGap:o,valueListMaxHeight:n,valueListMaxWidth:l,allowTyping:c,filterList:h,searchType:d,highlightMatch:u,valuePlaceholder:p,eventKey:g,multiSelect:m,suppressDeselectAll:C,suppressMultiSelectPillRenderer:f}=this.params,v={value:s,cellRenderer:e,cellRowHeight:t,searchDebounceDelay:a,valueFormatter:r,pickerAriaLabelKey:"ariaLabelRichSelectField",pickerAriaLabelValue:"Rich Select Field",pickerType:"virtual-list",pickerGap:o,allowTyping:c,filterList:h,searchType:d,highlightMatch:u,maxPickerHeight:n,maxPickerWidth:l,placeholder:p,initialInputValue:g?.length===1?g:void 0,multiSelect:m,suppressDeselectAll:C,suppressMultiSelectPillRenderer:f};let S,y;return typeof i=="function"?S=i(this.params):S=i??[],Array.isArray(S)?(v.valueList=S,v.searchStringCreator=this.getSearchStringCallback(S)):y=S,m&&c&&(this.params.allowTyping=v.allowTyping=!1,(0,import_core259._warnOnce)("agRichSelectCellEditor cannot have `multiSelect` and `allowTyping` set to `true`. AllowTyping has been turned off.")),{params:v,valuesPromise:y}}getSearchStringCallback(e){const{colDef:t}=this.params;if(!(typeof e[0]!="object"||!t.keyCreator))return s=>s.map(i=>{const r=this.gos.addGridCommonParams({value:i,colDef:this.params.colDef,column:this.params.column,node:this.params.node,data:this.params.data});return t.keyCreator(r)})}afterGuiAttached(){const{focusAfterAttached:e,params:t}=this;setTimeout(()=>{if(!this.isAlive())return;if(e){const i=this.richSelect.getFocusableElement();i.focus();const{allowTyping:r,eventKey:a}=this.params;r&&(!a||a.length!==1)&&i.select()}this.richSelect.showPicker();const{eventKey:s}=t;s&&s?.length===1&&this.richSelect.searchTextFromString(s)})}focusIn(){this.richSelect.getFocusableElement().focus()}getValue(){return this.richSelect.getValue()}isPopup(){return!1}},VERSION14="32.3.0",RichSelectModule=(0,import_core257._defineModule)({version:VERSION14,moduleName:import_core257.ModuleNames.RichSelectModule,beans:[],userComponents:[{name:"agRichSelect",classImp:RichSelectCellEditor},{name:"agRichSelectCellEditor",classImp:RichSelectCellEditor}],dependantModules:[EnterpriseCoreModule,import_core257._EditCoreModule]}),import_core261=require("ag-grid-community"),import_core263=require("ag-grid-community"),import_core264=require("ag-grid-community"),import_core265=require("ag-grid-community"),import_core266=require("ag-grid-community"),import_core267=require("ag-grid-community"),import_core268=require("ag-grid-community"),import_core269=require("ag-grid-community"),import_core270=require("ag-grid-community"),import_core271=require("ag-grid-community"),import_core272=require("ag-grid-community"),import_core273=require("ag-grid-community"),import_core274=require("ag-grid-community"),import_core275=require("ag-grid-community"),import_core276=require("ag-grid-community"),import_core277=require("ag-grid-community"),import_core278=require("ag-grid-community"),import_core279=require("ag-grid-community"),import_core280=require("ag-grid-community"),import_core281=require("ag-grid-community"),GROUP_MISSING_KEY_ID="ag-Grid-MissingKey",BlockUtils=class extends import_core263.BeanStub{constructor(){super(...arguments),this.beanName="ssrmBlockUtils"}wireBeans(e){this.valueService=e.valueService,this.showRowGroupColsService=e.showRowGroupColsService,this.nodeManager=e.ssrmNodeManager,this.beans=e,this.expansionService=e.expansionService,this.serverSideRowModel=e.rowModel,this.storeFactory=e.ssrmStoreFactory}createRowNode(e){const t=new import_core263.RowNode(this.beans),s=e.rowHeight!=null?e.rowHeight:(0,import_core263._getRowHeightAsNumber)(this.gos);return t.setRowHeight(s),t.group=e.group,t.leafGroup=e.leafGroup,t.level=e.level,t.uiLevel=e.level,t.parent=e.parent,t.stub=!0,t.__needsRefreshWhenVisible=!1,t.group&&(t.expanded=!1,t.field=e.field,t.rowGroupColumn=e.rowGroupColumn),t}destroyRowNodes(e){e&&e.forEach(t=>this.destroyRowNode(t))}destroyRowNode(e,t=!1){e.childStore&&!t&&(this.destroyBean(e.childStore),e.childStore=null),e.sibling&&!e.footer&&this.destroyRowNode(e.sibling,!1),e.clearRowTopAndRowIndex(),e.id!=null&&this.nodeManager.removeNode(e)}setTreeGroupInfo(e){e.updateHasChildren();const t=this.gos.get("getServerSideGroupKey");e.hasChildren()&&t!=null&&(e.key=t(e.data)),!e.hasChildren()&&e.childStore!=null&&(this.destroyBean(e.childStore),e.childStore=null,e.expanded=!1)}setRowGroupInfo(e){if(e.key=this.valueService.getValue(e.rowGroupColumn,e),(e.key===null||e.key===void 0)&&(0,import_core263._doOnce)(()=>{(0,import_core263._warnOnce)("null and undefined values are not allowed for server side row model keys"),e.rowGroupColumn&&(0,import_core263._warnOnce)(`column = ${e.rowGroupColumn.getId()}`),(0,import_core263._warnOnce)("data is "+e.data)},"ServerSideBlock-CannotHaveNullOrUndefinedForKey"),this.gos.get("groupAllowUnbalanced")&&e.key===""){const r=this.serverSideRowModel.getParams();e.childStore=this.createBean(this.storeFactory.createStore(r,e))}(0,import_core263._getGroupTotalRowCallback)(this.beans.gos)({node:e})&&(e.createFooter(),e.sibling&&(e.sibling.uiLevel=e.uiLevel+1))}setMasterDetailInfo(e){const t=this.gos.get("isRowMaster");t!=null?e.master=t(e.data):e.master=!0}updateDataIntoRowNode(e,t){e.updateData(t),this.gos.get("treeData")?(this.setTreeGroupInfo(e),this.setChildCountIntoRowNode(e)):e.group?(this.setChildCountIntoRowNode(e),e.footer||((0,import_core263._getGroupTotalRowCallback)(this.beans.gos)({node:e})?e.sibling?e.sibling.updateData(t):e.createFooter():e.sibling&&e.destroyFooter())):this.gos.get("masterDetail")}setDataIntoRowNode(e,t,s,i){e.stub=!1;const r=this.gos.get("treeData");(0,import_core263._exists)(t)?(e.setDataAndId(t,s),r?this.setTreeGroupInfo(e):e.group?this.setRowGroupInfo(e):this.gos.get("masterDetail")&&this.setMasterDetailInfo(e)):(e.setDataAndId(void 0,void 0),e.key=null),(r||e.group)&&(this.setGroupDataIntoRowNode(e),this.setChildCountIntoRowNode(e)),(0,import_core263._exists)(t)&&(e.setRowHeight((0,import_core263._getRowHeightForNode)(this.gos,e,!1,i).height),e.sibling?.setRowHeight((0,import_core263._getRowHeightForNode)(this.gos,e.sibling,!1,i).height))}setChildCountIntoRowNode(e){const t=this.gos.get("getChildCount");t&&e.setAllChildrenCount(t(e.data))}setGroupDataIntoRowNode(e){const t=this.showRowGroupColsService?.getShowRowGroupCols()??[],s=this.gos.get("treeData");t.forEach(i=>{if(e.groupData==null&&(e.groupData={}),s)e.groupData[i.getColId()]=e.key;else if(i.isRowGroupDisplayed(e.rowGroupColumn.getId())){const r=this.valueService.getValue(e.rowGroupColumn,e);e.groupData[i.getColId()]=r}})}clearDisplayIndex(e){e.clearRowTopAndRowIndex(),e.hasChildren()&&(0,import_core263._exists)(e.childStore)&&e.childStore.clearDisplayIndexes(),e.master&&e.detailNode&&e.detailNode.clearRowTopAndRowIndex()}setDisplayIndex(e,t,s,i){const r=this.gos.get("groupAllowUnbalanced")&&e.group&&e.key==="";if(this.gos.get("groupHideOpenParents")&&e.group&&e.expanded||r?(e.setRowIndex(null),e.setRowTop(null)):(e.setRowIndex(t.next()),e.setRowTop(s.value),s.value+=e.rowHeight),e.setUiLevel(i),e.footer)return;if(e.master&&(e.expanded&&e.detailNode?(e.detailNode.setRowIndex(t.next()),e.detailNode.setRowTop(s.value),s.value+=e.detailNode.rowHeight):e.detailNode&&e.detailNode.clearRowTopAndRowIndex()),e.hasChildren()&&(0,import_core263._exists)(e.childStore)){const l=e.childStore;e.expanded||r?l.setDisplayIndexes(t,s,r?i:i+1):l.clearDisplayIndexes()}}binarySearchForDisplayIndex(e,t){let s=0,i=t.length-1;if((0,import_core263._missing)(i)||(0,import_core263._missing)(s)){(0,import_core263._warnOnce)(`error: topPointer = ${i}, bottomPointer = ${s}`);return}for(;;){const r=Math.floor((s+i)/2),a=t[r];if(a.rowIndex===e)return a;const o=a.master&&a.expanded,n=a.detailNode;if(o&&n&&n.rowIndex===e)return a.detailNode;const l=a.childStore;if(a.expanded&&l&&l.isDisplayIndexInStore(e))return l.getRowUsingDisplayIndex(e);if(a.rowIndex<e)s=r+1;else if(a.rowIndex>e)i=r-1;else{(0,import_core263._warnOnce)(`error: unable to locate rowIndex = ${e} in cache`);return}}}extractRowBounds(e,t){const s=i=>({rowHeight:i.rowHeight,rowTop:i.rowTop});if(e.rowIndex===t)return s(e);if(e.hasChildren()&&e.expanded&&(0,import_core263._exists)(e.childStore)){const i=e.childStore;if(i.isDisplayIndexInStore(t))return i.getRowBounds(t)}else if(e.master&&e.expanded&&(0,import_core263._exists)(e.detailNode)&&e.detailNode.rowIndex===t)return s(e.detailNode)}isPixelInNodeRange(e,t){return!(0,import_core263._exists)(e.rowTop)||!(0,import_core263._exists)(e.rowHeight)?!1:t>=e.rowTop&&t<e.rowTop+e.rowHeight}getIndexAtPixel(e,t){if(this.isPixelInNodeRange(e,t))return e.rowIndex;const s=e.master&&e.expanded,i=e.detailNode;if(s&&i&&this.isPixelInNodeRange(i,t))return e.detailNode.rowIndex;if(e.hasChildren()&&e.expanded&&(0,import_core263._exists)(e.childStore)){const r=e.childStore;if(r.isPixelInRange(t))return r.getRowIndexAtPixel(t)}return null}createNodeIdPrefix(e){const t=[];let s=e;for(;s&&s.level>=0;)s.key===""?t.push(GROUP_MISSING_KEY_ID):t.push(s.key),s=s.parent;if(t.length>0)return t.reverse().join("-")}checkOpenByDefault(e){return this.expansionService.checkOpenByDefault(e)}},ExpandListener=class extends import_core264.BeanStub{constructor(){super(...arguments),this.beanName="ssrmExpandListener"}wireBeans(e){this.serverSideRowModel=e.rowModel,this.storeFactory=e.ssrmStoreFactory,this.beans=e}postConstruct(){(0,import_core264._isServerSideRowModel)(this.gos)&&this.addManagedEventListeners({rowGroupOpened:this.onRowGroupOpened.bind(this)})}onRowGroupOpened(e){const t=e.node;if(t.expanded){if(t.master)this.createDetailNode(t);else if((0,import_core264._missing)(t.childStore)){const s=this.serverSideRowModel.getParams();t.childStore=this.createBean(this.storeFactory.createStore(s,t))}}else this.gos.get("purgeClosedRowNodes")&&(0,import_core264._exists)(t.childStore)&&(t.childStore=this.destroyBean(t.childStore));this.eventService.dispatchEvent({type:"storeUpdated"})}createDetailNode(e){if((0,import_core264._exists)(e.detailNode))return e.detailNode;const t=new import_core264.RowNode(this.beans);t.detail=!0,t.selectable=!1,t.parent=e,(0,import_core264._exists)(e.id)&&(t.id="detail_"+e.id),t.data=e.data,t.level=e.level+1;const s=200,i=(0,import_core264._getRowHeightForNode)(this.gos,t).height;return t.rowHeight=i||s,e.detailNode=t,t}},FilterListener=class extends import_core265.BeanStub{constructor(){super(...arguments),this.beanName="ssrmFilterListener"}wireBeans(e){this.serverSideRowModel=e.rowModel,this.filterManager=e.filterManager,this.listenerUtils=e.ssrmListenerUtils}postConstruct(){(0,import_core265._isServerSideRowModel)(this.gos)&&this.addManagedEventListeners({advancedFilterEnabledChanged:()=>this.onFilterChanged(!0),filterChanged:()=>this.onFilterChanged()})}onFilterChanged(e){const t=this.serverSideRowModel.getParams();if(!t)return;const s=t.filterModel;let i,r;if(this.filterManager?.isAdvancedFilterEnabled()){i=this.filterManager.getAdvancedFilterModel();const l=e?Object.keys(s??{}):this.getAdvancedFilterColumns(s),c=this.getAdvancedFilterColumns(i);l.forEach(h=>c.add(h)),r=Array.from(c)}else if(i=this.filterManager?.getFilterModel()??{},e){const l=this.getAdvancedFilterColumns(s);Object.keys(i).forEach(c=>l.add(c)),r=Array.from(l)}else r=this.findChangedColumns(s,i);const a=this.listenerUtils.isSortingWithValueColumn(r),o=this.listenerUtils.isSortingWithSecondaryColumn(r),n={valueColChanged:a,secondaryColChanged:o,changedColumns:r};this.serverSideRowModel.refreshAfterFilter(i,n)}findChangedColumns(e,t){const s={};Object.keys(e).forEach(r=>s[r]=!0),Object.keys(t).forEach(r=>s[r]=!0);const i=[];return Object.keys(s).forEach(r=>{const a=JSON.stringify(e[r]),o=JSON.stringify(t[r]);a!=o&&i.push(r)}),i}getAdvancedFilterColumns(e){const t=new Set;if(!e)return t;const s=i=>{i.filterType==="join"?i.conditions.forEach(r=>s(r)):t.add(i.colId)};return s(e),t}},ListenerUtils=class extends import_core266.BeanStub{constructor(){super(...arguments),this.beanName="ssrmListenerUtils"}wireBeans(e){this.pivotResultColsService=e.pivotResultColsService,this.funcColsService=e.funcColsService}isSortingWithValueColumn(e){const t=this.funcColsService.getValueColumns().map(s=>s.getColId());for(let s=0;s<e.length;s++)if(t.indexOf(e[s])>-1)return!0;return!1}isSortingWithSecondaryColumn(e){const t=this.pivotResultColsService.getPivotResultCols();if(!t)return!1;const s=t.list.map(i=>i.getColId());for(let i=0;i<e.length;i++)if(s.indexOf(e[i])>-1)return!0;return!1}},SortListener=class extends import_core267.BeanStub{constructor(){super(...arguments),this.beanName="ssrmSortService"}wireBeans(e){this.sortController=e.sortController,this.serverSideRowModel=e.rowModel,this.listenerUtils=e.ssrmListenerUtils}postConstruct(){(0,import_core267._isServerSideRowModel)(this.gos)&&this.addManagedEventListeners({sortChanged:this.onSortChanged.bind(this)})}onSortChanged(){const e=this.serverSideRowModel.getParams();if(!e)return;const t=this.sortController.getSortModel(),s=e.sortModel,i=this.findChangedColumnsInSort(t,s),r=this.listenerUtils.isSortingWithValueColumn(i),a=this.listenerUtils.isSortingWithSecondaryColumn(i),o={valueColChanged:r,secondaryColChanged:a,changedColumns:i};this.serverSideRowModel.refreshAfterSort(t,o)}findChangedColumnsInSort(e,t){let s=[];[e,t].forEach(a=>{if(a){const o=a.map(n=>n.colId);s=s.concat(o)}});const i=(a,o)=>{const n=a?a.sort:null,l=o?o.sort:null;return n!==l},r=(a,o)=>{const n=a?t.indexOf(a):-1,l=o?e.indexOf(o):-1;return n!==l};return s.filter(a=>{const o=t.find(l=>l.colId===a),n=e.find(l=>l.colId===a);return i(o,n)||r(o,n)})}},NodeManager=class extends import_core268.BeanStub{constructor(){super(...arguments),this.beanName="ssrmNodeManager",this.rowNodes={}}addRowNode(e){const t=e.id;this.rowNodes[t]&&((0,import_core268._warnOnce)(`Duplicate node id ${e.id}. Row IDs are provided via the getRowId() callback. Please modify the getRowId() callback code to provide unique row id values.`),(0,import_core268._warnOnce)("first instance",this.rowNodes[t].data),(0,import_core268._warnOnce)("second instance",e.data)),this.rowNodes[t]=e}removeNode(e){const t=e.id;this.rowNodes[t]&&(this.rowNodes[t]=void 0)}destroy(){this.clear(),super.destroy()}clear(){this.rowNodes={},super.destroy()}},FullStore=class extends import_core270.RowNodeBlock{constructor(e,t,s){super(0),this.nodeIdSequence=new import_core270.NumberSequence,this.info={},this.ssrmParams=e,this.parentRowNode=s,this.level=s.level+1,this.groupLevel=e.rowGroupCols?this.level<e.rowGroupCols.length:void 0,this.leafGroup=e.rowGroupCols?this.level===e.rowGroupCols.length-1:!1}wireBeans(e){this.storeUtils=e.ssrmStoreUtils,this.blockUtils=e.ssrmBlockUtils,this.funcColsService=e.funcColsService,this.rowNodeBlockLoader=e.rowNodeBlockLoader,this.rowNodeSorter=e.rowNodeSorter,this.sortController=e.sortController,this.selectionService=e.selectionService,this.nodeManager=e.ssrmNodeManager,this.filterManager=e.filterManager,this.transactionManager=e.ssrmTransactionManager,this.serverSideRowModel=e.rowModel}postConstruct(){if(this.usingTreeData=this.gos.get("treeData"),this.nodeIdPrefix=this.blockUtils.createNodeIdPrefix(this.parentRowNode),!this.usingTreeData&&this.groupLevel){const i=this.ssrmParams.rowGroupCols[this.level];this.groupField=i.field,this.rowGroupColumn=this.funcColsService.getRowGroupColumns()[this.level]}let e=1;const t=this.parentRowNode.level===-1,s=this.storeUtils.getServerSideInitialRowCount();t&&s!=null&&(e=s),this.initialiseRowNodes(e),this.rowNodeBlockLoader.addBlock(this),this.addDestroyFunc(()=>this.rowNodeBlockLoader.removeBlock(this)),this.postSortFunc=this.gos.getCallback("postSortRows"),s!=null&&this.eventService.dispatchEventOnce({type:"rowCountReady"})}destroy(){this.destroyRowNodes(),super.destroy()}destroyRowNodes(){this.blockUtils.destroyRowNodes(this.allRowNodes),this.allRowNodes=[],this.nodesAfterSort=[],this.nodesAfterFilter=[],this.allNodesMap={}}initialiseRowNodes(e,t=!1){this.destroyRowNodes();for(let s=0;s<e;s++){const i=this.blockUtils.createRowNode({field:this.groupField,group:this.groupLevel,leafGroup:this.leafGroup,level:this.level,parent:this.parentRowNode,rowGroupColumn:this.rowGroupColumn});t&&(i.failedLoad=!0),this.allRowNodes.push(i),this.nodesAfterFilter.push(i),this.nodesAfterSort.push(i)}}getBlockStateJson(){return{id:this.nodeIdPrefix?this.nodeIdPrefix:"",state:this.getState()}}loadFromDatasource(){this.storeUtils.loadFromDatasource({startRow:void 0,endRow:void 0,parentBlock:this,parentNode:this.parentRowNode,storeParams:this.ssrmParams,success:this.success.bind(this,this.getVersion()),fail:this.pageLoadFailed.bind(this,this.getVersion())})}getStartRow(){return 0}getEndRow(){return this.nodesAfterSort.length}createDataNode(e,t){const s=this.blockUtils.createRowNode({field:this.groupField,group:this.groupLevel,leafGroup:this.leafGroup,level:this.level,parent:this.parentRowNode,rowGroupColumn:this.rowGroupColumn});t!=null?(0,import_core270._insertIntoArray)(this.allRowNodes,s,t):this.allRowNodes.push(s);const i=this.prefixId(this.nodeIdSequence.next());return this.blockUtils.setDataIntoRowNode(s,e,i,void 0),this.nodeManager.addRowNode(s),this.blockUtils.checkOpenByDefault(s),this.allNodesMap[s.id]=s,s}prefixId(e){return this.nodeIdPrefix?this.nodeIdPrefix+"-"+e:e.toString()}processServerFail(){this.initialiseRowNodes(1,!0),this.fireStoreUpdatedEvent(),this.flushAsyncTransactions()}processServerResult(e){if(!this.isAlive())return;const t=e.groupLevelInfo;t&&Object.assign(this.info,t),e.pivotResultFields&&this.serverSideRowModel.generateSecondaryColumns(e.pivotResultFields);const s=this.allRowNodes.length>0?this.allNodesMap:void 0;this.allRowNodes=[],this.nodesAfterSort=[],this.nodesAfterFilter=[],this.allNodesMap={},e.rowData||(0,import_core270._warnOnce)('"params.data" is missing from Server-Side Row Model success() callback. Please use the "data" attribute. If no data is returned, set an empty list.'),this.createOrRecycleNodes(s,e.rowData),s&&this.blockUtils.destroyRowNodes((0,import_core270._getAllValuesInObject)(s)),this.level===0&&this.eventService.dispatchEventOnce({type:"rowCountReady"}),this.filterAndSortNodes(),this.fireStoreUpdatedEvent(),this.flushAsyncTransactions()}createOrRecycleNodes(e,t){if(!t)return;const s=r=>{if(!e)return;const a=(0,import_core270._getRowIdCallback)(this.gos);if(!a)return;const o=this.parentRowNode.getRoute()??[],n=this.level,l=a({data:r,parentKeys:o.length>0?o:void 0,level:n}),c=e[l];if(c)return delete e[l],c},i=(r,a)=>{this.allNodesMap[r.id]=r,this.blockUtils.updateDataIntoRowNode(r,a),this.allRowNodes.push(r)};t.forEach(r=>{const a=s(r);a?i(a,r):this.createDataNode(r)})}flushAsyncTransactions(){window.setTimeout(()=>this.transactionManager.flushAsyncTransactions(),0)}filterAndSortNodes(){this.filterRowNodes(),this.sortRowNodes()}sortRowNodes(){const e=this.storeUtils.isServerSideSortAllLevels()||this.storeUtils.isServerSideSortOnServer(),t=this.sortController.getSortOptions(),s=!t||t.length==0;if(e||s){this.nodesAfterSort=this.nodesAfterFilter;return}if(this.nodesAfterSort=this.rowNodeSorter.doFullSort(this.nodesAfterFilter,t),this.postSortFunc){const i={nodes:this.nodesAfterSort};this.postSortFunc(i)}}filterRowNodes(){const e=!this.storeUtils.isServerSideOnlyRefreshFilteredGroups()||this.storeUtils.isServerSideFilterOnServer(),t=this.groupLevel;if(e||t){this.nodesAfterFilter=this.allRowNodes;return}this.nodesAfterFilter=this.filterManager?this.allRowNodes.filter(s=>this.filterManager.doesRowPassFilter({rowNode:s})):this.allRowNodes}clearDisplayIndexes(){this.displayIndexStart=void 0,this.displayIndexEnd=void 0,this.allRowNodes.forEach(e=>this.blockUtils.clearDisplayIndex(e))}getDisplayIndexEnd(){return this.displayIndexEnd}isDisplayIndexInStore(e){return this.getRowCount()===0?!1:e>=this.displayIndexStart&&e<this.displayIndexEnd}setDisplayIndexes(e,t,s){this.displayIndexStart=e.peek(),this.topPx=t.value;const i={};this.nodesAfterSort.forEach(r=>{this.blockUtils.setDisplayIndex(r,e,t,s),i[r.id]=!0}),this.allRowNodes.forEach(r=>{i[r.id]||this.blockUtils.clearDisplayIndex(r)}),this.displayIndexEnd=e.peek(),this.heightPx=t.value-this.topPx}forEachStoreDeep(e,t=new import_core270.NumberSequence){e(this,t.next()),this.allRowNodes.forEach(s=>{const i=s.childStore;i&&i.forEachStoreDeep(e,t)})}forEachNodeDeep(e,t=new import_core270.NumberSequence){this.allRowNodes.forEach(s=>{e(s,t.next());const i=s.childStore;i&&i.forEachNodeDeep(e,t)})}forEachNodeDeepAfterFilterAndSort(e,t=new import_core270.NumberSequence,s=!1){this.nodesAfterSort.forEach(i=>{e(i,t.next());const r=i.childStore;r&&r.forEachNodeDeepAfterFilterAndSort(e,t,s)}),s&&this.parentRowNode.sibling&&e(this.parentRowNode.sibling,t.next())}getRowUsingDisplayIndex(e){return this.isDisplayIndexInStore(e)?this.blockUtils.binarySearchForDisplayIndex(e,this.nodesAfterSort):void 0}getRowBounds(e){for(let t=0;t<this.nodesAfterSort.length;t++){const s=this.nodesAfterSort[t],i=this.blockUtils.extractRowBounds(s,e);if(i)return i}return null}isPixelInRange(e){return e>=this.topPx&&e<this.topPx+this.heightPx}getRowIndexAtPixel(e){if(e<=this.topPx)return this.nodesAfterSort[0].rowIndex;if(e>=this.topPx+this.heightPx){const a=this.nodesAfterSort[this.nodesAfterSort.length-1];if(!a)return null;const o=a.rowTop+a.rowHeight;if(e>=o&&a.expanded){if(a.childStore&&a.childStore.getRowCount()>0)return a.childStore.getRowIndexAtPixel(e);if(a.detailNode)return a.detailNode.rowIndex}return a.rowIndex}let i=null;return this.nodesAfterSort.forEach(a=>{const o=this.blockUtils.getIndexAtPixel(a,e);o!=null&&(i=o)}),i??this.displayIndexEnd-1}getChildStore(e){return this.storeUtils.getChildStore(e,this,t=>this.allRowNodes.find(i=>i.key==t))}forEachChildStoreShallow(e){this.allRowNodes.forEach(t=>{const s=t.childStore;s&&e(s)})}refreshAfterFilter(e){const t=this.storeUtils.isServerSideFilterOnServer(),s=this.storeUtils.isServerRefreshNeeded(this.parentRowNode,this.ssrmParams.rowGroupCols,e);if(!this.storeUtils.isServerSideOnlyRefreshFilteredGroups()||t&&s){this.refreshStore(!0),this.sortRowNodes();return}this.filterRowNodes(),this.sortRowNodes(),this.forEachChildStoreShallow(r=>r.refreshAfterFilter(e))}refreshAfterSort(e){const t=this.storeUtils.isServerSideSortOnServer(),s=this.storeUtils.isServerRefreshNeeded(this.parentRowNode,this.ssrmParams.rowGroupCols,e);if(this.storeUtils.isServerSideSortAllLevels()||t&&s){this.refreshStore(!0),this.filterRowNodes();return}this.filterRowNodes(),this.sortRowNodes(),this.forEachChildStoreShallow(r=>r.refreshAfterSort(e))}applyTransaction(e){switch(this.getState()){case"failed":return{status:import_core270.ServerSideTransactionResultStatus.StoreLoadingFailed};case"loading":return{status:import_core270.ServerSideTransactionResultStatus.StoreLoading};case"needsLoading":return{status:import_core270.ServerSideTransactionResultStatus.StoreWaitingToLoad}}const t=this.gos.getCallback("isApplyServerSideTransaction");if(t){const r={transaction:e,parentNode:this.parentRowNode,groupLevelInfo:this.info};if(!t(r))return{status:import_core270.ServerSideTransactionResultStatus.Cancelled}}const s={status:import_core270.ServerSideTransactionResultStatus.Applied,remove:[],update:[],add:[]},i=[];return this.executeAdd(e,s),this.executeRemove(e,s,i),this.executeUpdate(e,s,i),this.filterAndSortNodes(),this.updateSelection(i),s}updateSelection(e){e.length>0&&(this.selectionService.setNodesSelected({newValue:!1,nodes:e,suppressFinishActions:!0,clearSelection:!1,source:"rowDataChanged"}),this.eventService.dispatchEvent({type:"selectionChanged",source:"rowDataChanged"}))}executeAdd(e,t){const{add:s,addIndex:i}=e;if((0,import_core270._missingOrEmpty)(s))return;typeof i=="number"&&i>=0?s.reverse().forEach(a=>{const o=this.createDataNode(a,i);t.add.push(o)}):s.forEach(a=>{const o=this.createDataNode(a);t.add.push(o)})}executeRemove(e,t,s){const{remove:i}=e;if(i==null)return;const r={};i.forEach(a=>{const o=this.lookupRowNode(a);o&&(o.isSelected()&&s.push(o),o.clearRowTopAndRowIndex(),r[o.id]=!0,delete this.allNodesMap[o.id],t.remove.push(o),this.nodeManager.removeNode(o))}),this.allRowNodes=this.allRowNodes.filter(a=>!r[a.id])}executeUpdate(e,t,s){const{update:i}=e;i?.forEach(r=>{const a=this.lookupRowNode(r);a&&(this.blockUtils.updateDataIntoRowNode(a,r),!a.selectable&&a.isSelected()&&s.push(a),t.update.push(a))})}lookupRowNode(e){const t=(0,import_core270._getRowIdCallback)(this.gos);if(t!=null){const s=this.parentRowNode.getRoute()??[],i=t({data:e,parentKeys:s.length>0?s:void 0,level:this.level}),r=this.allNodesMap[i];return r||((0,import_core270._errorOnce)(`could not find row id=${i}, data item was not found for this id`),null)}else{const s=this.allRowNodes.find(i=>i.data===e);return s||((0,import_core270._errorOnce)("could not find data item as object was not found",e),null)}}addStoreStates(e){e.push({suppressInfiniteScroll:!0,route:this.parentRowNode.getRoute()??[],rowCount:this.allRowNodes.length,info:this.info}),this.forEachChildStoreShallow(t=>t.addStoreStates(e))}refreshStore(e){if(e){const t=this.nodesAfterSort?this.nodesAfterSort.length:1;this.initialiseRowNodes(t)}this.scheduleLoad(),this.fireStoreUpdatedEvent()}retryLoads(){this.getState()==="failed"&&(this.initialiseRowNodes(1),this.scheduleLoad()),this.forEachChildStoreShallow(e=>e.retryLoads())}scheduleLoad(){this.setStateWaitingToLoad(),this.rowNodeBlockLoader.checkBlockToLoad()}fireStoreUpdatedEvent(){this.eventService.dispatchEvent({type:"storeUpdated"})}getRowCount(){return this.nodesAfterSort.length}getTopLevelRowDisplayedIndex(e){return this.nodesAfterSort[e].rowIndex}isLastRowIndexKnown(){return this.getState()=="loaded"}getRowNodesInRange(e,t){const s=[];let i=!1;return(0,import_core270._missing)(e)&&(i=!0),this.nodesAfterSort.forEach(a=>{const o=a===e||a===t;(i||o)&&s.push(a),o&&(i=!i)}),i?[]:s}getStoreBounds(){return{topPx:this.topPx,heightPx:this.heightPx}}},LazyBlockLoadingService=class extends import_core273.BeanStub{constructor(){super(...arguments),this.beanName="lazyBlockLoadingService",this.cacheLoadingNodesMap=new Map,this.isCheckQueued=!1,this.nextBlockToLoad=void 0}wireBeans(e){this.rowNodeBlockLoader=e.rowNodeBlockLoader,this.rowRenderer=e.rowRenderer,this.rowModel=e.rowModel}postConstruct(){this.addManagedListeners(this.rowNodeBlockLoader,{blockLoaded:()=>this.queueLoadCheck()})}subscribe(e){this.cacheLoadingNodesMap.set(e,new Set)}unsubscribe(e){this.cacheLoadingNodesMap.delete(e)}queueLoadCheck(){this.isCheckQueued||(this.isCheckQueued=!0,window.queueMicrotask(()=>{this.queueLoadAction(),this.isCheckQueued=!1}))}queueLoadAction(){const e=this.getBlockToLoad();if(!e)return;const t=this.nextBlockToLoad&&this.nextBlockToLoad.cache===e.cache&&this.nextBlockToLoad.index===e.index;if(!t&&(!this.nextBlockToLoad||!t)){this.nextBlockToLoad=e,window.clearTimeout(this.loaderTimeout);const s=Number(this.nextBlockToLoad.index),i=this.nextBlockToLoad.cache,r=e.index+e.cache.getBlockSize();this.loaderTimeout=window.setTimeout(()=>{i.isAlive()&&(this.loaderTimeout=void 0,this.attemptLoad(i,s,r),this.nextBlockToLoad=void 0)},this.gos.get("blockLoadDebounceMillis"))}}attemptLoad(e,t,s){const i=this.rowNodeBlockLoader.getAvailableLoadingCount();i!=null&&i===0||(this.rowNodeBlockLoader.registerLoads(1),this.executeLoad(e,t,s),this.queueLoadCheck())}executeLoad(e,t,s){const i=e.getSsrmParams(),r={startRow:t,endRow:s,rowGroupCols:i.rowGroupCols,valueCols:i.valueCols,pivotCols:i.pivotCols,pivotMode:i.pivotMode,groupKeys:e.store.getParentNode().getRoute()??[],filterModel:i.filterModel,sortModel:i.sortModel},a=this.cacheLoadingNodesMap.get(e),o=()=>{for(let d=0;d<s-t;d++)a.delete(t+d)},n=()=>{for(let d=0;d<s-t;d++)a.add(t+d)},l=d=>{this.rowNodeBlockLoader.loadComplete(),e.onLoadSuccess(t,s-t,d),o()},c=()=>{this.rowNodeBlockLoader.loadComplete(),e.onLoadFailed(t,s-t),o()},h=this.gos.addGridCommonParams({request:r,success:l,fail:c,parentNode:e.store.getParentNode()});n(),e.getSsrmParams().datasource?.getRows(h)}getBlockToLoad(){const e=this.rowRenderer.getFirstVirtualRenderedRow(),t=this.rowRenderer.getLastVirtualRenderedRow();for(let n=e;n<=t;n++){const l=this.rowModel.getRow(n);if(!l)continue;const c=l.parent&&l.parent.childStore;if(!c||!(c instanceof LazyStore))continue;const h=c.getCache(),d=h.getNodes().getBy("node",l);if(!(!d||this.cacheLoadingNodesMap.get(h)?.has(d.index))&&(l.__needsRefreshWhenVisible||l.stub&&!l.failedLoad))return{cache:h,index:h.getBlockStartIndex(d.index)}}let s=null,i=null,r=Number.MAX_SAFE_INTEGER;for(const n of this.cacheLoadingNodesMap.keys())n.getNodesToRefresh().forEach(c=>{if(c.rowIndex==null){i=c,s=n;return}const h=n.getNodes().getBy("node",c);if(!h||this.cacheLoadingNodesMap.get(n)?.has(h.index))return;const u=Math.abs(e-c.rowIndex),p=Math.abs(c.rowIndex-t);u<r&&(i=c,r=u,s=n),p<r&&(i=c,r=p,s=n)});if(!s)return;const a=s,o=a.getNodes().getBy("node",i)?.index;return o==null?void 0:{cache:a,index:a.getBlockStartIndex(o)}}isRowLoading(e,t){return this.cacheLoadingNodesMap.get(e)?.has(t)??!1}};LazyBlockLoadingService.DEFAULT_BLOCK_SIZE=100;var MultiIndexMap=class{constructor(...e){if(e.length<1)throw new Error("AG Grid: At least one index must be provided.");this.indexes=e,this.maps=new Map(this.indexes.map(t=>[t,new Map]))}getSize(){return this.maps.get(this.indexes[0]).size}getBy(e,t){const s=this.maps.get(e);if(!s)throw new Error(`AG Grid: ${String(e)} not found`);return s.get(t)}set(e){this.indexes.forEach(t=>{const s=this.maps.get(t);if(!s)throw new Error(`AG Grid: ${String(t)} not found`);s.set(e[t],e)})}delete(e){this.indexes.forEach(t=>{const s=this.maps.get(t);if(!s)throw new Error(`AG Grid: ${String(t)} not found`);s.delete(e[t])})}clear(){this.maps.forEach(e=>e.clear())}getIterator(e){const t=this.maps.get(e);if(!t)throw new Error(`AG Grid: ${String(e)} not found`);return t.values()}forEach(e){const t=this.getIterator(this.indexes[0]);let s;for(;(s=t.next())&&!s.done;)e(s.value)}find(e){const t=this.getIterator(this.indexes[0]);let s;for(;(s=t.next())&&!s.done;)if(e(s.value))return s.value}filter(e){const t=this.getIterator(this.indexes[0]);let s;const i=[];for(;(s=t.next())&&!s.done;)e(s.value)&&i.push(s.value);return i}},LazyCache=class extends import_core272.BeanStub{constructor(e,t,s,i){super(),this.live=!0,this.removedNodeCache=new Map,this.store=e,this.numberOfRows=t,this.isLastRowKnown=s,this.storeParams=i}wireBeans(e){this.rowRenderer=e.rowRenderer,this.blockUtils=e.ssrmBlockUtils,this.focusService=e.focusService,this.nodeManager=e.ssrmNodeManager,this.serverSideRowModel=e.rowModel,this.rowNodeSorter=e.rowNodeSorter,this.sortController=e.sortController,this.lazyBlockLoadingService=e.lazyBlockLoadingService}postConstruct(){this.lazyBlockLoadingService.subscribe(this),this.nodeMap=new MultiIndexMap("index","id","node"),this.nodeDisplayIndexMap=new Map,this.nodesToRefresh=new Set,this.defaultNodeIdPrefix=this.blockUtils.createNodeIdPrefix(this.store.getParentNode()),this.getRowIdFunc=(0,import_core272._getRowIdCallback)(this.gos),this.isMasterDetail=this.gos.get("masterDetail")}destroy(){this.lazyBlockLoadingService.unsubscribe(this),this.numberOfRows=0,this.nodeMap.forEach(e=>this.blockUtils.destroyRowNode(e.node)),this.nodeMap.clear(),this.nodeDisplayIndexMap.clear(),this.nodesToRefresh.clear(),this.live=!1,super.destroy()}getRowByDisplayIndex(e){if(!this.store.isDisplayIndexInStore(e))return;const t=this.nodeDisplayIndexMap.get(e);if(t)return(t.stub||t.__needsRefreshWhenVisible)&&this.lazyBlockLoadingService.queueLoadCheck(),t;if(this.gos.get("groupHideOpenParents")||this.gos.get("groupAllowUnbalanced")){const l=this.nodeMap.find(c=>!!c.node.childStore?.isDisplayIndexInStore(e));if(l)return l.node.childStore?.getRowUsingDisplayIndex(e)}if(e===this.store.getDisplayIndexStart())return this.createStubNode(0,e);const i=this.nodeDisplayIndexMap.get(e-1);if(i){if(this.isMasterDetail&&i.master&&i.expanded)return i.detailNode;if(i.expanded&&i.childStore?.isDisplayIndexInStore(e))return i.childStore?.getRowUsingDisplayIndex(e);const l=this.nodeMap.getBy("node",i);return this.createStubNode(l.index+1,e)}const r=this.getSurroundingNodesByDisplayIndex(e);if(r==null){const l=this.store.getRowCount()-(this.store.getDisplayIndexEnd()-e);return this.createStubNode(l,e)}const{previousNode:a,nextNode:o}=r;if(a&&a.node.expanded&&a.node.childStore?.isDisplayIndexInStore(e))return a.node.childStore?.getRowUsingDisplayIndex(e);if(o){const l=o.node.rowIndex-e,c=o.index-l;return this.createStubNode(c,e)}const n=this.store.getRowCount()-(this.store.getDisplayIndexEnd()-e);return this.createStubNode(n,e)}createStubNode(e,t){const s=this.store.getRowBounds(t),i=this.createRowAtIndex(e,null,r=>{r.setRowIndex(t),r.setRowTop(s.rowTop),this.nodeDisplayIndexMap.set(t,r)});if(e===0&&this.gos.get("groupHideOpenParents")){const r=this.store.getParentNode().groupData;for(const a in r)i.setGroupValue(a,r[a])}return this.lazyBlockLoadingService.queueLoadCheck(),i}getRowByStoreIndex(e){return this.nodeMap.getBy("index",e)?.node}skipDisplayIndexes(e,t,s){if(e===0)return;const i=(0,import_core272._getRowHeightAsNumber)(this.gos);t.skip(e),s.value+=e*i}setDisplayIndexes(e,t,s){this.nodeDisplayIndexMap.clear();const i={};this.nodeMap.forEach(o=>{i[o.index]=o.node});let r=-1;for(const o in i){const n=i[o],l=Number(o),c=l-1-r;this.skipDisplayIndexes(c,e,t);const h=l===0;if(n.setFirstChild(h),h&&this.gos.get("groupHideOpenParents")){const d=this.store.getParentNode().groupData;for(const u in d)n.setGroupValue(u,h?d[u]:void 0)}this.blockUtils.setDisplayIndex(n,e,t,s),n.rowIndex!=null&&this.nodeDisplayIndexMap.set(n.rowIndex,n),r=l}const a=this.numberOfRows-1-r;this.skipDisplayIndexes(a,e,t),this.purgeExcessRows()}getRowCount(){return this.numberOfRows}setRowCount(e,t){if(e<0)throw new Error("AG Grid: setRowCount can only accept a positive row count.");this.numberOfRows=e,t!=null&&(this.isLastRowKnown=t,t===!1&&(this.numberOfRows+=1)),this.fireStoreUpdatedEvent()}getNodes(){return this.nodeMap}getNodeCachedByDisplayIndex(e){return this.nodeDisplayIndexMap.get(e)??null}getNodesToRefresh(){return this.nodesToRefresh}getSurroundingNodesByDisplayIndex(e){let t,s;return this.nodeMap.forEach(i=>{if(e>i.node.rowIndex){(s==null||s.node.rowIndex<i.node.rowIndex)&&(s=i);return}if(t==null||t.node.rowIndex>i.node.rowIndex){t=i;return}}),!s&&!t?null:{previousNode:s,nextNode:t}}getDisplayIndexFromStoreIndex(e){const t=this.nodeMap.getBy("index",e);if(t)return t.node.rowIndex;let s,i;if(this.nodeMap.forEach(o=>{if(e>o.index){(i==null||i.index<o.index)&&(i=o);return}if(s==null||s.index>o.index){s=o;return}}),!s)return this.store.getDisplayIndexEnd()-(this.numberOfRows-e);if(!i)return this.store.getDisplayIndexStart()+e;const r=e-i.index;return(i.node.childStore?.getDisplayIndexEnd()??i.node.rowIndex)+r}createRowAtIndex(e,t,s){const i=this.nodeMap.getBy("index",e);if(i){const{node:a}=i;if(a.__needsRefreshWhenVisible=!1,this.doesNodeMatch(t,a))return this.blockUtils.updateDataIntoRowNode(a,t),this.nodesToRefresh.delete(a),a;if(this.getRowIdFunc==null&&a.hasChildren()&&a.expanded)return this.nodesToRefresh.delete(a),a;this.destroyRowAtIndex(e)}if(t&&this.getRowIdFunc!=null){const a=this.getRowId(t),o=a&&this.removedNodeCache?.get(a);if(o)return this.removedNodeCache?.delete(a),this.blockUtils.updateDataIntoRowNode(o,t),this.nodeMap.set({id:o.id,node:o,index:e}),this.nodesToRefresh.delete(o),o.__needsRefreshWhenVisible=!1,o;const n=this.nodeMap.getBy("id",a);if(n){this.nodeMap.delete(n);const{node:l,index:c}=n;return this.blockUtils.updateDataIntoRowNode(l,t),this.nodeMap.set({id:l.id,node:l,index:e}),this.nodesToRefresh.delete(l),l.__needsRefreshWhenVisible=!1,this.getBlockStartIndex(c)===this.getBlockStartIndex(e)||this.markBlockForVerify(c),l}}const r=this.blockUtils.createRowNode(this.store.getRowDetails());if(t!=null){const a=this.getPrefixedId(this.store.getIdSequence().next());this.blockUtils.setDataIntoRowNode(r,t,a,void 0),this.serverSideRowModel.setPaused(!0),this.blockUtils.checkOpenByDefault(r),this.serverSideRowModel.setPaused(!1),this.nodeManager.addRowNode(r)}return this.nodeMap.set({id:r.id,node:r,index:e}),s&&s(r),r}getBlockStates(){const e={},t={};this.nodeMap.forEach(({node:a,index:o})=>{const n=this.getBlockStartIndex(o);!a.stub&&!a.failedLoad&&(e[n]=(e[n]??0)+1);let l="loaded";a.failedLoad?l="failed":this.lazyBlockLoadingService.isRowLoading(this,n)?l="loading":(this.nodesToRefresh.has(a)||a.stub)&&(l="needsLoading"),t[n]||(t[n]=new Set),t[n].add(l)});const s={loading:4,failed:3,needsLoading:2,loaded:1},i=this.blockUtils.createNodeIdPrefix(this.store.getParentNode()),r={};return Object.entries(t).forEach(([a,o])=>{const l=[...o].sort((d,u)=>(s[d]??0)-(s[u]??0))[0],c=Number(a)/this.getBlockSize(),h=i?`${i}-${c}`:String(c);r[h]={blockNumber:c,startRow:Number(a),endRow:Number(a)+this.getBlockSize(),pageStatus:l,loadedRowCount:e[a]??0}}),r}destroyRowAtIndex(e){const t=this.nodeMap.getBy("index",e);t&&(this.nodeMap.delete(t),this.nodeDisplayIndexMap.delete(t.node.rowIndex),this.nodesToRefresh.size>0?this.removedNodeCache.set(t.node.id,t.node):this.blockUtils.destroyRowNode(t.node),this.nodesToRefresh.delete(t.node))}getSsrmParams(){return this.store.getSsrmParams()}getPrefixedId(e){return this.defaultNodeIdPrefix?this.defaultNodeIdPrefix+"-"+e:e.toString()}markBlockForVerify(e){const[t,s]=this.getBlockBounds(e);this.nodeMap.filter(r=>r.index>=t&&r.index<s).forEach(({node:r})=>{r.__needsRefreshWhenVisible=!0})}doesNodeMatch(e,t){if(t.stub)return!1;const s=this.getRowId(e);return s===null?t.data===e:t.id===s}purgeStubsOutsideOfViewport(){const e=this.rowRenderer.getFirstVirtualRenderedRow(),t=this.rowRenderer.getLastVirtualRenderedRow(),s=this.getBlockStartIndex(e),[,i]=this.getBlockBounds(t);this.nodeMap.forEach(r=>{this.lazyBlockLoadingService.isRowLoading(this,r.index)||r.node.failedLoad||r.node.stub&&(r.index<s||r.index>i)&&this.destroyRowAtIndex(r.index)})}getBlocksDistanceFromRow(e,t){const s={};return e.forEach(({node:i,index:r})=>{const[a,o]=this.getBlockBounds(r);if(a in s)return;const n=Math.abs(i.rowIndex-t);let l;const c=this.nodeMap.getBy("index",[o-1]);c&&(l=Math.abs(c.node.rowIndex-t));const h=l==null||n<l?n:l;s[a]=h}),Object.entries(s)}purgeExcessRows(){if(this.purgeStubsOutsideOfViewport(),this.store.getDisplayIndexEnd()==null||this.storeParams.maxBlocksInCache==null)return;const e=this.rowRenderer.getFirstVirtualRenderedRow(),t=this.rowRenderer.getLastVirtualRenderedRow(),s=new Set,i=new Set;this.nodeMap.forEach(({index:p,node:g})=>{const m=this.getBlockStartIndex(p);s.add(m),g.rowIndex>=e&&g.rowIndex<=t&&i.add(m)});const r=Math.max(i.size,this.storeParams.maxBlocksInCache??0),o=s.size-r;if(o<=0)return;let n=Number.MAX_SAFE_INTEGER,l=Number.MIN_SAFE_INTEGER;i.forEach(p=>{n>p&&(n=p),l<p&&(l=p)});const c=this.nodeMap.filter(({node:p,index:g})=>{const m=this.getBlockStartIndex(g);return!(m>=n&&m<=l)&&!this.isNodeCached(p)});if(c.length===0)return;const h=e+(t-e)/2,d=this.getBlocksDistanceFromRow(c,h),u=this.getBlockSize();d.sort((p,g)=>Math.sign(g[1]-p[1]));for(let p=0;p<Math.min(o,d.length);p++){const g=Number(d[p][0]);for(let m=g;m<g+u;m++){const C=this.nodeMap.getBy("index",m);!C||this.isNodeCached(C.node)||this.destroyRowAtIndex(m)}}}isNodeFocused(e){const t=this.focusService.getFocusCellToUseAfterRefresh();return!t||t.rowPinned!=null?!1:t.rowIndex===e.rowIndex}isNodeCached(e){const t=this.gos.get("groupAllowUnbalanced")&&e.key==="";return e.isExpandable()&&e.expanded||this.isNodeFocused(e)||t}extractDuplicateIds(e){if(this.getRowIdFunc==null)return[];const t=new Set,s=new Set;return e.forEach(i=>{const r=this.getRowId(i);if(t.has(r)){s.add(r);return}t.add(r)}),[...s]}onLoadSuccess(e,t,s){if(!this.live)return;const i=s.groupLevelInfo;if(this.store.setStoreInfo(i),this.getRowIdFunc!=null){const o=this.extractDuplicateIds(s.rowData);if(o.length>0){const n=o.join(", ");(0,import_core272._warnOnce)(`Unable to display rows as duplicate row ids (${n}) were returned by the getRowId callback. Please modify the getRowId callback to provide unique ids.`),this.onLoadFailed(e,t);return}}s.pivotResultFields&&this.serverSideRowModel.generateSecondaryColumns(s.pivotResultFields);const r=this.nodesToRefresh.size>0;if(s.rowData.forEach((o,n)=>{const l=e+n,c=this.nodeMap.getBy("index",l);if(c?.node?.stub){this.createRowAtIndex(l,o);return}if(c&&this.doesNodeMatch(o,c.node)){this.blockUtils.updateDataIntoRowNode(c.node,o),this.nodesToRefresh.delete(c.node),c.node.__needsRefreshWhenVisible=!1;return}this.createRowAtIndex(l,o)}),s.rowCount!=null&&s.rowCount!==-1)this.numberOfRows=s.rowCount,this.isLastRowKnown=!0;else if(t>s.rowData.length)this.numberOfRows=e+s.rowData.length,this.isLastRowKnown=!0;else if(!this.isLastRowKnown){const o=e+s.rowData.length+1;o>this.numberOfRows&&(this.numberOfRows=o)}this.isLastRowKnown&&this.nodeMap.filter(n=>n.index>=this.numberOfRows).forEach(n=>this.destroyRowAtIndex(n.index)),this.fireStoreUpdatedEvent();const a=this.nodesToRefresh.size===0;r&&a&&this.fireRefreshFinishedEvent()}fireRefreshFinishedEvent(){this.nodesToRefresh.size===0&&(this.removedNodeCache.forEach(t=>{this.blockUtils.destroyRowNode(t)}),this.removedNodeCache=new Map,this.store.fireRefreshFinishedEvent())}isStoreFullyLoaded(){const e=this.isLastRowKnown,t=this.nodeMap.getSize()===this.numberOfRows;if(!e||!t||this.nodesToRefresh.size>0)return;let s=-1;return this.nodeMap.find(r=>(s+=1,!!(r.index!==s||r.node.__needsRefreshWhenVisible||r.node.stub)))==null}isLastRowIndexKnown(){return this.isLastRowKnown}onLoadFailed(e,t){if(!this.live)return;const s=this.nodesToRefresh.size>0;for(let r=e;r<e+t&&r<this.getRowCount();r++){let{node:a}=this.nodeMap.getBy("index",r)??{};a&&this.nodesToRefresh.delete(a),(!a||!a.stub)&&(a&&!a.stub&&this.destroyRowAtIndex(r),a=this.createRowAtIndex(r)),a.__needsRefreshWhenVisible=!1,a.failedLoad=!0}const i=this.nodesToRefresh.size===0;s&&i&&this.fireRefreshFinishedEvent(),this.fireStoreUpdatedEvent()}markNodesForRefresh(){this.nodeMap.forEach(e=>{e.node.stub&&!e.node.failedLoad||this.nodesToRefresh.add(e.node)}),this.lazyBlockLoadingService.queueLoadCheck(),this.isLastRowKnown&&this.numberOfRows===0&&(this.numberOfRows=1,this.isLastRowKnown=!1,this.fireStoreUpdatedEvent())}isNodeInCache(e){return!!this.nodeMap.getBy("id",e)}fireStoreUpdatedEvent(){this.live&&this.store.fireStoreUpdatedEvent()}getRowId(e){if(this.getRowIdFunc==null)return null;const{level:t}=this.store.getRowDetails(),s=this.store.getParentNode().getRoute()??[];return this.getRowIdFunc({data:e,parentKeys:s.length>0?s:void 0,level:t})}getOrderedNodeMap(){const e={};return this.nodeMap.forEach(t=>e[t.index]=t),e}clearDisplayIndexes(){this.nodeDisplayIndexMap.clear()}clientSideSortRows(){const e=this.sortController.getSortOptions();if(!e.some(r=>r.sort!=null))return;const s=new Array(this.nodeMap.getSize());this.nodeMap.forEach(r=>s[r.index]=r.node),this.nodeMap.clear(),this.rowNodeSorter.doFullSort(s,e).forEach((r,a)=>{this.nodeMap.set({id:r.id,node:r,index:a})})}updateRowNodes(e){if(this.getRowIdFunc==null)throw new Error("AG Grid: Transactions can only be applied when row ids are supplied.");const t=[];return e.forEach(s=>{const i=this.getRowId(s),r=this.nodeMap.getBy("id",i);r&&(this.blockUtils.updateDataIntoRowNode(r.node,s),t.push(r.node))}),t}insertRowNodes(e,t){const s=this.store.getRowCount()-(this.store.getParentNode().sibling?1:0),i=t==null&&this.isLastRowKnown?s:t;if(i==null||s<i)return[];if(this.getRowIdFunc==null)throw new Error("AG Grid: Transactions can only be applied when row ids are supplied.");const r={};e.forEach(l=>{const c=this.getRowId(l);c&&this.isNodeInCache(c)||(r[c]=l)});const a=Object.values(r),o=a.length;if(o===0)return[];const n=this.nodeMap.filter(l=>l.index>=i);return n.forEach(l=>this.nodeMap.delete(l)),n.forEach(l=>{this.nodeMap.set({node:l.node,index:l.index+o,id:l.id})}),this.numberOfRows+=o,a.map((l,c)=>this.createRowAtIndex(i+c,l))}removeRowNodes(e){if(this.getRowIdFunc==null)throw new Error("AG Grid: Transactions can only be applied when row ids are supplied.");const t=[],s=[];let i=0;const r=[...e],a=this.getOrderedNodeMap();let o=-1;for(const n in a){o+=1;const l=a[n],c=r.findIndex(d=>d===l.id);if(c!==-1){r.splice(c,1),this.destroyRowAtIndex(Number(n)),t.push(l.node),i+=1;continue}if(i===0)continue;const h=Number(n);o!==h&&s.push(l.node),this.nodeMap.delete(a[n]),this.nodeMap.set({id:l.id,node:l.node,index:h-i})}return this.numberOfRows-=this.isLastRowIndexKnown()?e.length:i,r.length>0&&s.length>0&&(s.forEach(n=>n.__needsRefreshWhenVisible=!0),this.lazyBlockLoadingService.queueLoadCheck()),t}getBlockSize(){return this.storeParams.cacheBlockSize||LazyBlockLoadingService.DEFAULT_BLOCK_SIZE}getBlockStartIndex(e){const t=this.getBlockSize();return e-e%t}getBlockBounds(e){const t=this.getBlockStartIndex(e),s=this.getBlockSize();return[t,t+s]}},LazyStore=class extends import_core271.BeanStub{constructor(e,t,s){super(),this.idSequence=new import_core271.NumberSequence,this.ssrmParams=e,this.parentRowNode=s,this.storeParams=t,this.level=s.level+1,this.group=e.rowGroupCols?this.level<e.rowGroupCols.length:!1,this.leafGroup=e.rowGroupCols?this.level===e.rowGroupCols.length-1:!1,this.info={}}wireBeans(e){this.blockUtils=e.ssrmBlockUtils,this.storeUtils=e.ssrmStoreUtils,this.selectionService=e.selectionService,this.funcColsService=e.funcColsService}postConstruct(){let e=1;if(this.level===0&&(e=this.storeUtils.getServerSideInitialRowCount()??1,this.eventService.dispatchEventOnce({type:"rowCountReady"})),this.cache=this.createManagedBean(new LazyCache(this,e,!1,this.storeParams)),!this.gos.get("treeData")&&this.group){const s=this.ssrmParams.rowGroupCols[this.level];this.groupField=s.field,this.rowGroupColumn=this.funcColsService.getRowGroupColumns()[this.level]}}destroy(){this.displayIndexStart=void 0,this.displayIndexEnd=void 0,this.destroyBean(this.cache),super.destroy()}applyRowData(e,t,s){this.cache.onLoadSuccess(t,s,e)}applyTransaction(e){const t=(0,import_core271._getRowIdCallback)(this.gos);if(!t)return(0,import_core271._warnOnce)("getRowId callback must be implemented for transactions to work. Transaction was ignored."),{status:import_core271.ServerSideTransactionResultStatus.Cancelled};const s=this.gos.getCallback("isApplyServerSideTransaction");if(s){const h={transaction:e,parentNode:this.parentRowNode,groupLevelInfo:this.info};if(!s(h))return{status:import_core271.ServerSideTransactionResultStatus.Cancelled}}const i=this.cache.isStoreFullyLoaded();let r;e.update?.length&&(r=this.cache.updateRowNodes(e.update));let a;if(e.add?.length){let h=e.addIndex;h!=null&&h<0&&(h=void 0),a=this.cache.insertRowNodes(e.add,h)}let o;if(e.remove?.length){const h=e.remove.map(u=>t({level:this.level,parentKeys:this.parentRowNode.getRoute()??[],data:u})),d=[...new Set(h)];o=this.cache.removeRowNodes(d)}const n=this.gos.get("serverSideEnableClientSideSort"),l=r?.length||a?.length;return i&&n&&l&&this.cache.clientSideSortRows(),this.updateSelectionAfterTransaction(r,o),{status:import_core271.ServerSideTransactionResultStatus.Applied,update:r,add:a,remove:o}}updateSelectionAfterTransaction(e,t){const s=[];e?.forEach(i=>{i.isSelected()&&!i.selectable&&s.push(i)}),t?.forEach(i=>{i.isSelected()&&s.push(i)}),s.length&&this.selectionService.setNodesSelected({newValue:!1,clearSelection:!1,nodes:s,source:"rowDataChanged"})}clearDisplayIndexes(){this.displayIndexStart=void 0,this.displayIndexEnd=void 0,this.cache.getNodes().forEach(e=>this.blockUtils.clearDisplayIndex(e.node)),this.parentRowNode.sibling&&this.blockUtils.clearDisplayIndex(this.parentRowNode.sibling),this.cache.clearDisplayIndexes()}getDisplayIndexStart(){return this.displayIndexStart}getDisplayIndexEnd(){return this.displayIndexEnd}getRowCount(){return this.parentRowNode.sibling?this.cache.getRowCount()+1:this.cache.getRowCount()}setRowCount(e,t){this.cache.setRowCount(e,t)}isDisplayIndexInStore(e){return this.cache.getRowCount()===0?!1:this.displayIndexStart<=e&&e<this.getDisplayIndexEnd()}setDisplayIndexes(e,t,s){this.displayIndexStart=e.peek(),this.topPx=t.value;const i=this.parentRowNode.level>-1&&(0,import_core271._getGroupTotalRowCallback)(this.gos)({node:this.parentRowNode});i||this.parentRowNode.destroyFooter(),i==="top"&&(this.parentRowNode.createFooter(),this.blockUtils.setDisplayIndex(this.parentRowNode.sibling,e,t,s)),this.cache.setDisplayIndexes(e,t,s),i==="bottom"&&(this.parentRowNode.createFooter(),this.blockUtils.setDisplayIndex(this.parentRowNode.sibling,e,t,s)),this.displayIndexEnd=e.peek(),this.heightPx=t.value-this.topPx}forEachStoreDeep(e,t=new import_core271.NumberSequence){e(this,t.next()),this.cache.getNodes().forEach(s=>{const i=s.node.childStore;i&&i.forEachStoreDeep(e,t)})}forEachNodeDeep(e,t=new import_core271.NumberSequence){this.cache.getNodes().forEach(s=>{e(s.node,t.next());const i=s.node.childStore;i&&i.forEachNodeDeep(e,t)})}forEachNodeDeepAfterFilterAndSort(e,t=new import_core271.NumberSequence,s=!1){const i=this.parentRowNode.level>-1&&(0,import_core271._getGroupTotalRowCallback)(this.gos)({node:this.parentRowNode});i==="top"&&e(this.parentRowNode.sibling,t.next());const r=this.cache.getOrderedNodeMap();for(const a in r){const o=r[a];e(o.node,t.next());const n=o.node.childStore;n&&n.forEachNodeDeepAfterFilterAndSort(e,t,s)}i==="bottom"&&e(this.parentRowNode.sibling,t.next())}retryLoads(){this.cache.getNodes().forEach(({node:e})=>{e.failedLoad&&(e.failedLoad=!1,e.__needsRefreshWhenVisible=!0,e.stub=!0)}),this.forEachChildStoreShallow(e=>e.retryLoads()),this.fireStoreUpdatedEvent()}getRowUsingDisplayIndex(e){return this.parentRowNode.sibling&&e===this.parentRowNode.sibling.rowIndex?this.parentRowNode.sibling:this.cache.getRowByDisplayIndex(e)}getRowBounds(e){if(!this.isDisplayIndexInStore(e))return null;const t=this.cache.getNodeCachedByDisplayIndex(e);if(t){const n=this.blockUtils.extractRowBounds(t,e);if(n)return n}const{previousNode:s,nextNode:i}=this.cache.getSurroundingNodesByDisplayIndex(e)??{};if(s){const n=this.blockUtils.extractRowBounds(s.node,e);if(n!=null)return n}const r=(0,import_core271._getRowHeightAsNumber)(this.gos);if(i){const n=(i.node.rowIndex-e)*r;return{rowTop:i.node.rowTop-n,rowHeight:r}}const a=this.topPx+this.heightPx,o=(this.getDisplayIndexEnd()-e)*r;return{rowTop:a-o,rowHeight:r}}isPixelInRange(e){return e>=this.topPx&&e<this.topPx+this.heightPx}getRowIndexAtPixel(e){if(e<this.topPx)return this.getDisplayIndexStart();if(e>=this.topPx+this.heightPx)return this.getDisplayIndexEnd()-1;if(this.parentRowNode.sibling&&e>this.parentRowNode.sibling.rowTop&&e<this.parentRowNode.sibling.rowTop+this.parentRowNode.sibling.rowHeight)return this.parentRowNode.sibling.rowIndex;let t=Number.MAX_SAFE_INTEGER,s=null,i=Number.MAX_SAFE_INTEGER,r=null;if(this.cache.getNodes().forEach(({node:l})=>{const c=Math.abs(e-l.rowTop);if(l.rowTop<e){c<t&&(t=c,s=l);return}c<i&&(i=c,r=l)}),s=s,r=r,s){const l=this.blockUtils.getIndexAtPixel(s,e);if(l!=null)return l}const a=(0,import_core271._getRowHeightAsNumber)(this.gos);if(r){const l=r.rowTop,c=Math.ceil((l-e)/a);return r.rowIndex-c}const o=this.topPx+this.heightPx,n=Math.floor((o-e)/a);return this.getDisplayIndexEnd()-n}getChildStore(e){return this.storeUtils.getChildStore(e,this,t=>{const s=this.cache.getNodes().find(i=>i.node.key==t);return s?s.node:null})}forEachChildStoreShallow(e){this.cache.getNodes().forEach(({node:t})=>{t.childStore&&e(t.childStore)})}refreshAfterSort(e){if(this.storeUtils.isServerSideSortAllLevels()||this.storeUtils.isServerRefreshNeeded(this.parentRowNode,this.ssrmParams.rowGroupCols,e)){const s=this.cache.isStoreFullyLoaded(),i=this.gos.get("serverSideEnableClientSideSort");if(!(s&&i)){const a=this.cache.getRowCount(),o=this.cache.isLastRowIndexKnown();this.destroyBean(this.cache),this.cache=this.createManagedBean(new LazyCache(this,a,o,this.storeParams));return}this.cache.clientSideSortRows()}this.forEachChildStoreShallow(s=>s.refreshAfterSort(e))}refreshAfterFilter(e){if(!this.storeUtils.isServerSideOnlyRefreshFilteredGroups()||this.storeUtils.isServerRefreshNeeded(this.parentRowNode,this.ssrmParams.rowGroupCols,e)){this.refreshStore(!0);return}this.forEachChildStoreShallow(s=>s.refreshAfterFilter(e))}refreshStore(e){if(e){this.destroyBean(this.cache),this.cache=this.createManagedBean(new LazyCache(this,1,!1,this.storeParams)),this.fireStoreUpdatedEvent();return}this.cache.markNodesForRefresh()}getTopLevelRowDisplayedIndex(e){return this.cache.getDisplayIndexFromStoreIndex(e)??e}isLastRowIndexKnown(){return this.cache.isLastRowIndexKnown()}getRowNodesInRange(e,t){return this.cache.getNodes().filter(({node:s})=>s.rowIndex>=e.rowIndex&&s.rowIndex<=t.rowIndex).map(({node:s})=>s)}addStoreStates(e){e.push({suppressInfiniteScroll:!1,route:this.parentRowNode.getRoute()??[],rowCount:this.getRowCount(),lastRowIndexKnown:this.isLastRowIndexKnown(),info:this.info,maxBlocksInCache:this.storeParams.maxBlocksInCache,cacheBlockSize:this.storeParams.cacheBlockSize}),this.forEachChildStoreShallow(t=>t.addStoreStates(e))}getIdSequence(){return this.idSequence}getParentNode(){return this.parentRowNode}getRowDetails(){return{field:this.groupField,group:this.group,leafGroup:this.leafGroup,level:this.level,parent:this.parentRowNode,rowGroupColumn:this.rowGroupColumn}}getSsrmParams(){return this.ssrmParams}setStoreInfo(e){e&&Object.assign(this.info,e)}fireStoreUpdatedEvent(){this.eventService.dispatchEvent({type:"storeUpdated"})}fireRefreshFinishedEvent(){this.eventService.dispatchEvent({type:"storeRefreshed",route:this.parentRowNode.getRoute()})}getBlockStates(){return this.cache.getBlockStates()}getStoreBounds(){return{topPx:this.topPx,heightPx:this.heightPx}}getCache(){return this.cache}},ServerSideRowModel=class extends import_core269.BeanStub{constructor(){super(...arguments),this.beanName="rowModel",this.onRowHeightChanged_debounced=(0,import_core269._debounce)(this.onRowHeightChanged.bind(this),100),this.pauseStoreUpdateListening=!1,this.started=!1,this.managingPivotResultColumns=!1}wireBeans(e){this.columnModel=e.columnModel,this.columnNameService=e.columnNameService,this.pivotResultColsService=e.pivotResultColsService,this.funcColsService=e.funcColsService,this.filterManager=e.filterManager,this.sortController=e.sortController,this.rowRenderer=e.rowRenderer,this.nodeManager=e.ssrmNodeManager,this.storeFactory=e.ssrmStoreFactory,this.beans=e,this.pivotColDefService=e.pivotColDefService}ensureRowHeightsValid(){return!1}start(){this.started=!0,this.updateDatasource()}destroyDatasource(){this.datasource&&(this.datasource.destroy&&this.datasource.destroy(),this.rowRenderer.datasourceChanged(),this.datasource=void 0)}postConstruct(){const e=this.resetRootStore.bind(this);this.addManagedEventListeners({newColumnsLoaded:this.onColumnEverything.bind(this),storeUpdated:this.onStoreUpdated.bind(this),columnValueChanged:e,columnPivotChanged:e,columnRowGroupChanged:e,columnPivotModeChanged:e}),this.addManagedPropertyListeners(["masterDetail","treeData","removePivotHeaderRowWhenSingleValueColumn","suppressServerSideInfiniteScroll","cacheBlockSize"],e),this.addManagedPropertyListener("groupAllowUnbalanced",()=>this.onStoreUpdated()),this.addManagedPropertyListener("rowHeight",()=>this.resetRowHeights()),this.verifyProps(),this.addManagedPropertyListener("serverSideDatasource",()=>this.updateDatasource())}updateDatasource(){const e=this.gos.get("serverSideDatasource");e&&this.setDatasource(e)}verifyProps(){this.gos.exists("initialGroupOrderComparator")&&(0,import_core269._warnOnce)("initialGroupOrderComparator cannot be used with Server Side Row Model."),(0,import_core269._isRowSelection)(this.gos)&&!this.gos.exists("getRowId")&&(0,import_core269._warnOnce)("getRowId callback must be provided for Server Side Row Model selection to work correctly.")}setDatasource(e){this.started&&(this.destroyDatasource(),this.datasource=e,this.resetRootStore())}applyRowData(e,t,s){const i=this.getRootStore();if(!i)return;const r=i.getChildStore(s);r&&(r instanceof LazyStore?r.applyRowData(e,t,e.rowData.length):r instanceof FullStore&&r.processServerResult(e))}isLastRowIndexKnown(){const e=this.getRootStore();return e?e.isLastRowIndexKnown():!1}onColumnEverything(){if(!this.storeParams){this.resetRootStore();return}const e=this.columnsToValueObjects(this.funcColsService.getRowGroupColumns()),t=this.columnsToValueObjects(this.funcColsService.getValueColumns()),s=this.columnsToValueObjects(this.funcColsService.getPivotColumns()),i=c=>{const h={};c.oldCols.forEach(p=>h[p.id]=p);const d=c.newCols.every(p=>{const g=h[p.id];return g&&delete h[p.id],g&&g.field===p.field&&g.aggFunc===p.aggFunc}),u=!c.allowRemovedColumns&&!!Object.values(h).length;return d&&!u},r=!(0,import_core269._jsonEquals)(this.storeParams.sortModel,this.sortController.getSortModel()),a=!i({oldCols:this.storeParams.rowGroupCols,newCols:e}),o=!i({oldCols:this.storeParams.pivotCols,newCols:s}),n=!!e?.length&&!i({oldCols:this.storeParams.valueCols,newCols:t,allowRemovedColumns:!0});if(r||a||o||n)this.resetRootStore();else{const c=this.createStoreParams();this.storeParams.rowGroupCols=c.rowGroupCols,this.storeParams.pivotCols=c.pivotCols,this.storeParams.valueCols=c.valueCols}}destroyRootStore(){!this.rootNode||!this.rootNode.childStore||(this.rootNode.childStore=this.destroyBean(this.rootNode.childStore),this.nodeManager.clear())}refreshAfterSort(e,t){this.storeParams&&(this.storeParams.sortModel=e);const s=this.getRootStore();s&&(s.refreshAfterSort(t),this.onStoreUpdated())}generateSecondaryColumns(e){if(!this.pivotColDefService){this.gos.assertModuleRegistered(import_core269.ModuleNames.RowGroupingModule,"pivotResultFields");return}const t=this.pivotColDefService.createColDefsFromFields(e);this.managingPivotResultColumns=!0,this.pivotResultColsService.setPivotResultCols(t,"rowModelUpdated")}resetRowHeights(){const e=this.resetRowHeightsForAllRowNodes(),t=(0,import_core269._getRowHeightForNode)(this.gos,this.rootNode);if(this.rootNode.setRowHeight(t.height,t.estimated),this.rootNode.sibling){const s=(0,import_core269._getRowHeightForNode)(this.gos,this.rootNode.sibling);this.rootNode.sibling.setRowHeight(s.height,s.estimated)}e&&this.onRowHeightChanged()}resetRowHeightsForAllRowNodes(){let e=!1;return this.forEachNode(t=>{const s=(0,import_core269._getRowHeightForNode)(this.gos,t);t.setRowHeight(s.height,s.estimated);const i=t.detailNode;if(i){const r=(0,import_core269._getRowHeightForNode)(this.gos,i);i.setRowHeight(r.height,r.estimated)}if(t.sibling){const r=(0,import_core269._getRowHeightForNode)(this.gos,t.sibling);i.setRowHeight(r.height,r.estimated)}e=!0}),e}resetRootStore(){this.destroyRootStore(),this.rootNode=new import_core269.RowNode(this.beans),this.rootNode.group=!0,this.rootNode.level=-1,this.datasource&&(this.storeParams=this.createStoreParams(),this.rootNode.childStore=this.createBean(this.storeFactory.createStore(this.storeParams,this.rootNode)),this.updateRowIndexesAndBounds()),this.managingPivotResultColumns&&(this.pivotResultColsService.setPivotResultCols(null,"api"),this.managingPivotResultColumns=!1),this.dispatchModelUpdated(!0)}columnsToValueObjects(e){return e.map(t=>({id:t.getId(),aggFunc:t.getAggFunc(),displayName:this.columnNameService.getDisplayNameForColumn(t,"model"),field:t.getColDef().field}))}createStoreParams(){const e=this.columnsToValueObjects(this.funcColsService.getRowGroupColumns()),t=this.columnsToValueObjects(this.funcColsService.getValueColumns()),s=this.columnsToValueObjects(this.funcColsService.getPivotColumns()),i=(0,import_core269._isGetRowHeightFunction)(this.gos);return{valueCols:t,rowGroupCols:e,pivotCols:s,pivotMode:this.columnModel.isPivotMode(),filterModel:this.filterManager?.isAdvancedFilterEnabled()?this.filterManager?.getAdvancedFilterModel():this.filterManager?.getFilterModel()??{},sortModel:this.sortController.getSortModel(),datasource:this.datasource,lastAccessedSequence:new import_core269.NumberSequence,dynamicRowHeight:i}}getParams(){return this.storeParams}dispatchModelUpdated(e=!1){this.eventService.dispatchEvent({type:"modelUpdated",animate:!e,keepRenderedRows:!e,newPage:!1,newData:!1})}onStoreUpdated(){this.pauseStoreUpdateListening||(this.updateRowIndexesAndBounds(),this.dispatchModelUpdated())}onRowHeightChangedDebounced(){this.onRowHeightChanged_debounced()}onRowHeightChanged(){this.updateRowIndexesAndBounds(),this.dispatchModelUpdated()}updateRowIndexesAndBounds(){const e=this.getRootStore();e&&e.setDisplayIndexes(new import_core269.NumberSequence,{value:0},0)}retryLoads(){const e=this.getRootStore();e&&(e.retryLoads(),this.onStoreUpdated())}getRow(e){const t=this.getRootStore();if(t)return t.getRowUsingDisplayIndex(e)}setPaused(e){this.pauseStoreUpdateListening=e}expandAll(e){this.pauseStoreUpdateListening=!0,this.forEachNode(t=>{t.stub||t.hasChildren()&&t.setExpanded(e)}),this.pauseStoreUpdateListening=!1,this.onStoreUpdated()}refreshAfterFilter(e,t){this.storeParams&&(this.storeParams.filterModel=e);const s=this.getRootStore();s&&(s.refreshAfterFilter(t),this.onStoreUpdated())}getRootStore(){if(this.rootNode&&this.rootNode.childStore)return this.rootNode.childStore}getRowCount(){const e=this.getRootStore();return e?e.getDisplayIndexEnd():0}getTopLevelRowCount(){const e=this.getRootStore();return e?e.getRowCount():1}getTopLevelRowDisplayedIndex(e){const t=this.getRootStore();return t?t.getTopLevelRowDisplayedIndex(e):e}getRowBounds(e){const t=this.getRootStore();return t?t.getRowBounds(e):{rowTop:0,rowHeight:(0,import_core269._getRowHeightAsNumber)(this.gos)}}getBlockStates(){const e=this.getRootStore();if(!e)return;const t={};return e.forEachStoreDeep(s=>{if(s instanceof FullStore){const{id:i,state:r}=s.getBlockStateJson();t[i]=r}else if(s instanceof LazyStore)Object.entries(s.getBlockStates()).forEach(([i,r])=>{t[i]=r});else throw new Error("AG Grid: Unsupported store type")}),t}getRowIndexAtPixel(e){const t=this.getRootStore();return e<=0||!t?0:t.getRowIndexAtPixel(e)}isEmpty(){return!1}isRowsToRender(){return this.getRootStore()!=null&&this.getRowCount()>0}getType(){return"serverSide"}forEachNode(e){const t=this.getRootStore();t&&t.forEachNodeDeep(e)}forEachNodeAfterFilterAndSort(e,t=!1){const s=this.getRootStore();s&&s.forEachNodeDeepAfterFilterAndSort(e,void 0,t)}executeOnStore(e,t){if(!this.started)return!1;const s=this.getRootStore();if(!s)return!0;const i=s.getChildStore(e);return i&&t(i),!0}refreshStore(e={}){const t=e.route?e.route:[];this.executeOnStore(t,s=>s.refreshStore(e.purge==!0))}getStoreState(){const e=[],t=this.getRootStore();return t&&t.addStoreStates(e),e}getNodesInRangeForSelection(e,t){const s=e.rowIndex,i=t.rowIndex;if(s===null&&i===null)return[];if(i===null)return e?[e]:[];if(s===null)return[t];const r=[],[a,o]=[s,i].sort((n,l)=>n-l);return this.forEachNode(n=>{const l=n.rowIndex;l==null||n.stub||l>=a&&l<=o&&r.push(n)}),r.length!==o-a+1?e?[e,t]:[]:r}getRowNode(e){let t;return this.forEachNode(s=>{s.id===e&&(t=s),s.detailNode&&s.detailNode.id===e&&(t=s.detailNode)}),t}isRowPresent(e){return!!this.getRowNode(e.id)}setRowCount(e,t){const s=this.getRootStore();if(s){if(s instanceof LazyStore){s.setRowCount(e,t);return}(0,import_core269._errorOnce)("Infinite scrolling must be enabled in order to set the row count.")}}destroy(){this.destroyDatasource(),this.destroyRootStore(),super.destroy()}};function getServerSideSelectionState(e){return e.selectionService.getSelectionState()}function setServerSideSelectionState(e,t){e.selectionService.setSelectionState(t,"api")}function applyServerSideTransaction(e,t){return e.ssrmTransactionManager?.applyTransaction(t)}function applyServerSideRowData(e,t){const s=t.startRow??0,i=t.route??[];if(s<0){(0,import_core274._warnOnce)(`invalid value ${t.startRow} for startRow, the value should be >= 0`);return}e.rowModelHelperService?.getServerSideRowModel()?.applyRowData(t.successParams,s,i)}function applyServerSideTransactionAsync(e,t,s){return e.ssrmTransactionManager?.applyTransactionAsync(t,s)}function retryServerSideLoads(e){e.rowModelHelperService?.getServerSideRowModel()?.retryLoads()}function flushServerSideAsyncTransactions(e){return e.ssrmTransactionManager?.flushAsyncTransactions()}function refreshServerSide(e,t){e.rowModelHelperService?.getServerSideRowModel()?.refreshStore(t)}function getServerSideGroupLevelState(e){return e.rowModelHelperService?.getServerSideRowModel()?.getStoreState()??[]}var ServerSideExpansionService=class extends import_core275.ExpansionService{constructor(){super(...arguments),this.beanName="expansionService",this.queuedRowIds=new Set}wireBeans(e){super.wireBeans(e),this.serverSideRowModel=e.rowModel}postConstruct(){super.postConstruct(),this.addManagedEventListeners({columnRowGroupChanged:()=>{this.queuedRowIds.clear()}})}checkOpenByDefault(e){if(!e.isExpandable())return;if(this.queuedRowIds.has(e.id)){this.queuedRowIds.delete(e.id),e.setExpanded(!0);return}const t=this.gos.getCallback("isServerSideGroupOpenByDefault");if(!t)return;const s={data:e.data,rowNode:e};t(s)&&e.setExpanded(!0)}expandRows(e){e.forEach(t=>{const s=this.serverSideRowModel.getRowNode(t);s?s.setExpanded(!0):this.queuedRowIds.add(t)})}expandAll(e){this.serverSideRowModel.expandAll(e)}onGroupExpandedOrCollapsed(){}},ServerSideRowRangeSelectionContext=class{constructor(){this.root=null,this.end=null,this.cachedRange=[]}init(e){this.rowModel=e}reset(){this.root=null,this.end=null,this.cachedRange.length=0}setRoot(e){this.root=e,this.end=null,this.cachedRange.length=0}setEndRange(e){this.end=e,this.cachedRange.length=0}getRoot(){return this.root}getRange(){if(this.cachedRange.length===0){const e=this.root?this.rowModel.getRowNode(this.root):void 0,t=this.end?this.rowModel.getRowNode(this.end):void 0;if(e==null||t==null)return this.cachedRange;this.cachedRange=this.rowModel.getNodesInRangeForSelection(e,t)}return this.cachedRange}isInRange(e){return this.root===null?!1:this.getRange().some(t=>t.id===e)}truncate(e){const t=this.getRange();if(t.length===0)return{keep:[],discard:[]};const s=t[0].id===this.root,i=t.findIndex(r=>r.id===e);if(i>-1){const r=t.slice(0,i),a=t.slice(i+1);return this.setEndRange(e),s?{keep:r,discard:a}:{keep:a,discard:r}}else return{keep:t,discard:[]}}extend(e,t=!1){if(this.root==null){const a=this.getRange().slice(),o=this.rowModel.getRowNode(e);return o&&(t&&o.depthFirstSearch(n=>!n.group&&a.push(n)),a.push(o)),this.setRoot(e),{keep:a,discard:[]}}const s=this.rowModel.getRowNode(e),i=this.rowModel.getRowNode(this.root);if(s==null)return{keep:this.getRange(),discard:[]};if(i==null)return{keep:this.getRange().concat(s),discard:[]};if(this.rowModel.getNodesInRangeForSelection(i,s).find(a=>a.id===this.end))return this.setEndRange(e),{keep:this.getRange(),discard:[]};{const a=this.getRange().slice();return this.setEndRange(e),{keep:this.getRange(),discard:a}}}},DefaultStrategy=class extends import_core277.BeanStub{constructor(){super(...arguments),this.selectionCtx=new ServerSideRowRangeSelectionContext,this.selectedState={selectAll:!1,toggledNodes:new Set},this.selectAllUsed=!1,this.selectedNodes={}}wireBeans(e){this.rowModel=e.rowModel}postConstruct(){this.selectionCtx.init(this.rowModel)}getSelectedState(){return{selectAll:this.selectedState.selectAll,toggledNodes:[...this.selectedState.toggledNodes]}}setSelectedState(e){const t={selectAll:!1,toggledNodes:new Set};if(typeof e!="object")return(0,import_core277._errorOnce)("The provided selection state should be an object.");if(!("selectAll"in e))return(0,import_core277._errorOnce)("Invalid selection state. The state must conform to `IServerSideSelectionState`.");if(typeof e.selectAll=="boolean")t.selectAll=e.selectAll;else return(0,import_core277._errorOnce)("selectAll must be of boolean type.");if("toggledNodes"in e&&Array.isArray(e.toggledNodes))e.toggledNodes.forEach(i=>{typeof i=="string"?t.toggledNodes.add(i):(0,import_core277._warnOnce)(`Provided ids must be of string type. Invalid id provided: ${i}`)});else return(0,import_core277._warnOnce)("`toggledNodes` must be an array of string ids.");const s=t.selectAll||t.toggledNodes.size>1;if((0,import_core277._isUsingNewRowSelectionAPI)(this.gos)&&!(0,import_core277._isMultiRowSelection)(this.gos)&&s)return(0,import_core277._warnOnce)("cannot multi select unless selection mode is 'multiRow'");this.selectedState=t}deleteSelectionStateFromParent(e,t){if(this.selectedState.toggledNodes.size===0)return!1;let s=!1;return t.forEach(i=>{this.selectedState.toggledNodes.delete(i)&&(s=!0)}),s}overrideSelectionValue(e,t){if(!(0,import_core277.isSelectionUIEvent)(t))return e;const s=this.selectionCtx.getRoot(),i=s?this.rowModel.getRowNode(s):null;return i?i.isSelected()??!1:!0}setNodesSelected(e){const{nodes:t,clearSelection:s,newValue:i,rangeSelect:r,source:a}=e;if(t.length===0)return 0;const o=s&&i&&!r;if(!(0,import_core277._isMultiRowSelection)(this.gos)||o){if(t.length>1)throw new Error("AG Grid: cannot select multiple rows when rowSelection.mode is set to 'singleRow'");const l=t[0];return i&&l.selectable?(this.selectedNodes={[l.id]:l},this.selectedState={selectAll:!1,toggledNodes:new Set([l.id])}):(this.selectedNodes={},this.selectedState={selectAll:!1,toggledNodes:new Set}),l.selectable&&this.selectionCtx.setRoot(l.id),1}const n=(l,c=i)=>{c&&l.selectable?this.selectedNodes[l.id]=l:delete this.selectedNodes[l.id],c===this.selectedState.selectAll||!l.selectable?this.selectedState.toggledNodes.delete(l.id):this.selectedState.toggledNodes.add(l.id)};if(r){if(t.length>1)throw new Error("AG Grid: cannot select multiple rows when using rangeSelect");const l=t[0],c=this.overrideSelectionValue(i,a);if(this.selectionCtx.isInRange(l.id)){const h=this.selectionCtx.truncate(l.id);c&&h.discard.forEach(d=>n(d,!1)),h.keep.forEach(d=>n(d,c))}else if(this.selectionCtx.getRoot()!==l.id){const u=this.selectionCtx.extend(l.id);c&&u.discard.forEach(p=>n(p,!1)),u.keep.forEach(p=>n(p,c))}return 1}return t.forEach(l=>n(l)),this.selectionCtx.setRoot((0,import_core277._last)(t).id),1}processNewRow(e){this.selectedNodes[e.id]&&(this.selectedNodes[e.id]=e)}isNodeSelected(e){const t=this.selectedState.toggledNodes.has(e.id);return this.selectedState.selectAll?!t:t}getSelectedNodes(){return this.selectAllUsed&&(0,import_core277._warnOnce)("getSelectedNodes and getSelectedRows functions cannot be used with select all functionality with the server-side row model.\n Use `api.getServerSideSelectionState()` instead."),Object.values(this.selectedNodes)}getSelectedRows(){return this.getSelectedNodes().map(e=>e.data)}getSelectionCount(){return this.selectedState.selectAll?-1:this.selectedState.toggledNodes.size}clearOtherNodes(e,t){const s=this.selectedState.selectAll?1:this.selectedState.toggledNodes.size-1;return this.selectedState={selectAll:!1,toggledNodes:new Set([e.id])},this.rowModel.forEachNode(i=>{i!==e&&i.selectThisNode(!1,void 0,t)}),this.eventService.dispatchEvent({type:"selectionChanged",source:t}),s}isEmpty(){return!this.selectedState.selectAll&&!this.selectedState.toggledNodes?.size}selectAllRowNodes(){this.selectedState={selectAll:!0,toggledNodes:new Set},this.selectedNodes={},this.selectAllUsed=!0,this.selectionCtx.reset()}deselectAllRowNodes(){this.selectedState={selectAll:!1,toggledNodes:new Set},this.selectedNodes={},this.selectionCtx.reset()}getSelectAllState(){return this.selectedState.selectAll?this.selectedState.toggledNodes.size>0?null:!0:this.selectedState.toggledNodes.size>0?null:!1}},GroupSelectsChildrenStrategy=class extends import_core278.BeanStub{constructor(){super(...arguments),this.selectionCtx=new ServerSideRowRangeSelectionContext,this.selectedState={selectAllChildren:!1,toggledNodes:new Map}}wireBeans(e){this.rowModel=e.rowModel,this.funcColsService=e.funcColsService,this.filterManager=e.filterManager,this.selectionService=e.selectionService}postConstruct(){this.addManagedEventListeners({modelUpdated:()=>this.removeRedundantState(),columnRowGroupChanged:()=>this.selectionService.reset("rowGroupChanged")}),this.selectionCtx.init(this.rowModel)}getSelectedState(){const e=this.gos.get("treeData"),t=(s,i,r)=>{const a={nodeId:r};if((e||i<=this.funcColsService.getRowGroupColumns().length)&&(a.selectAllChildren=s.selectAllChildren),s.toggledNodes.size){const o=[];s.toggledNodes.forEach((n,l)=>{const c=t(n,i+1,l);o.push(c)}),a.toggledNodes=o}return a};return t(this.selectedState,0)}setSelectedState(e){if("selectAll"in e)return(0,import_core278._errorOnce)("Invalid selection state. When `groupSelectsChildren` is enabled, the state must conform to `IServerSideGroupSelectionState`.");const t=(s,i)=>{if(typeof s!="object")throw new Error("Each provided state object must be an object.");if("selectAllChildren"in s&&typeof s.selectAllChildren!="boolean")throw new Error("`selectAllChildren` must be a boolean value or undefined.");if("toggledNodes"in s){if(!Array.isArray(s.toggledNodes))throw new Error("`toggledNodes` must be an array.");if(!s.toggledNodes.every(l=>typeof l=="object"&&"nodeId"in l&&typeof l.nodeId=="string"))throw new Error("Every `toggledNode` requires an associated string id.")}const r=s.selectAllChildren??!i,a=s.toggledNodes?.map(n=>[n.nodeId,t(n,r)]);if(a?.some(([,n])=>r===n.selectAllChildren&&n.toggledNodes.size===0))throw new Error(`
|
|
394
394
|
Row selection state could not be parsed due to invalid data. Ensure all child state has toggledNodes or does not conform with the parent rule.
|
|
395
395
|
Please rebuild the selection state and reapply it.
|
|
396
|
-
`);return{selectAllChildren:r,toggledNodes:new Map(a)}};try{this.selectedState=t(e,!!e.selectAllChildren)}catch(s){(0,import_core278._errorOnce)(s.message)}}deleteSelectionStateFromParent(e,t){let s=this.selectedState;const i=[...e];for(;s&&i.length;)s=s.toggledNodes.get(i.pop());if(!s)return!1;let r=!1;return t.forEach(a=>{s?.toggledNodes.delete(a)&&(r=!0)}),r&&this.removeRedundantState(),r}overrideSelectionValue(e,t){if(!(0,import_core278.isSelectionUIEvent)(t))return e;const s=this.selectionCtx.getRoot(),i=s?this.rowModel.getRowNode(s):null;return i?i.isSelected()??!1:!0}setNodesSelected({nodes:e,newValue:t,rangeSelect:s,clearSelection:i,source:r}){if(e.length===0)return 0;if(s){if(e.length>1)throw new Error("AG Grid: cannot select multiple rows when using rangeSelect");const o=e[0],n=this.overrideSelectionValue(t,r);if(this.selectionCtx.isInRange(o.id)){const l=this.selectionCtx.truncate(o.id);return n&&this.selectRange(l.discard,!1),this.selectRange(l.keep,n),1}else if(this.selectionCtx.getRoot()!==o.id){const h=this.selectionCtx.extend(o.id,!0);return n&&this.selectRange(h.discard,!1),this.selectRange(h.keep,n),1}return 1}const a=i&&t&&!s;if(!(0,import_core278._isMultiRowSelection)(this.gos)||a){if(e.length>1)throw new Error("AG Grid: cannot select multiple rows when rowSelection.mode is set to 'singleRow'");this.deselectAllRowNodes()}return e.forEach(o=>{const n=this.getRouteToNode(o);this.recursivelySelectNode(n,this.selectedState,t)}),this.removeRedundantState(),this.selectionCtx.setRoot((0,import_core278._last)(e).id),1}selectRange(e,t){const s=e.map(this.getRouteToNode).sort((r,a)=>a.length-r.length),i=new Set;s.forEach(r=>{i.has((0,import_core278._last)(r))||(r.forEach(a=>i.add(a)),this.recursivelySelectNode(r,this.selectedState,t))}),this.removeRedundantState()}isNodeSelected(e){const t=this.getRouteToNode(e);return this.isNodePathSelected(t,this.selectedState)}isNodePathSelected([e,...t],s){if(t.length===0){const i=s.toggledNodes.has(e.id);if(e.hasChildren()){const r=s.toggledNodes.get(e.id);if(r&&r.toggledNodes.size)return}return s.selectAllChildren?!i:i}if(s.toggledNodes.has(e.id)){const i=s.toggledNodes.get(e.id);if(i)return this.isNodePathSelected(t,i)}return s.selectAllChildren}getRouteToNode(e){const t=[];let s=e;for(;s.parent;)t.push(s),s=s.parent;return t.reverse()}removeRedundantState(){if(this.filterManager?.isAnyFilterPresent())return;const e=(t=this.selectedState,s,i)=>{if(t.toggledNodes.forEach((o,n)=>{e(o,n,t)}),s){const n=this.rowModel.getRowNode(s)?.childStore;if(n?.isLastRowIndexKnown()&&t.toggledNodes.size>=n.getRowCount()){for(const h of t.toggledNodes.entries()){const[d,u]=h;if(u.toggledNodes.size>0||!this.rowModel.getRowNode(d))return}t.selectAllChildren=!t.selectAllChildren,t.toggledNodes.clear()}}const r=t.toggledNodes.size===0,a=i?.selectAllChildren===t.selectAllChildren;r&&a&&i?.toggledNodes.delete(s)};e()}recursivelySelectNode([e,...t],s,i){if(!e)return;if(!t.length){const n=e.selectable;if(s.selectAllChildren===i||!n){s.toggledNodes.delete(e.id);return}const c={selectAllChildren:i,toggledNodes:new Map};s.toggledNodes.set(e.id,c);return}const a=s.toggledNodes.has(e.id),o=s.toggledNodes.get(e.id)??{selectAllChildren:s.selectAllChildren,toggledNodes:new Map};a||s.toggledNodes.set(e.id,o),this.recursivelySelectNode(t,o,i),s.selectAllChildren===o.selectAllChildren&&o.toggledNodes.size===0&&s.toggledNodes.delete(e.id)}getSelectedNodes(){(0,import_core278._warnOnce)("`getSelectedNodes` and `getSelectedRows` functions cannot be used with `groupSelectsChildren` and the server-side row model.\n Use `api.getServerSideSelectionState()` instead.");const e=[];return this.rowModel.forEachNode(t=>{t.isSelected()&&e.push(t)}),e}processNewRow(){}getSelectedRows(){return this.getSelectedNodes().map(e=>e.data)}getSelectionCount(){return-1}isEmpty(){return!this.selectedState.selectAllChildren&&!this.selectedState.toggledNodes?.size}selectAllRowNodes(){this.selectedState={selectAllChildren:!0,toggledNodes:new Map},this.selectionCtx.reset()}deselectAllRowNodes(){this.selectedState={selectAllChildren:!1,toggledNodes:new Map},this.selectionCtx.reset()}getSelectAllState(){return this.selectedState.selectAllChildren?this.selectedState.toggledNodes.size>0?null:!0:this.selectedState.toggledNodes.size>0?null:!1}},ServerSideSelectionService=class extends import_core276.BeanStub{constructor(){super(...arguments),this.beanName="selectionService"}wireBeans(e){this.rowModel=e.rowModel}postConstruct(){this.addManagedPropertyListeners(["groupSelectsChildren","rowSelection"],()=>{const s=(0,import_core276._getGroupSelectsDescendants)(this.gos),i=s&&this.selectionStrategy instanceof DefaultStrategy?GroupSelectsChildrenStrategy:!s&&this.selectionStrategy instanceof GroupSelectsChildrenStrategy?DefaultStrategy:void 0;i&&(this.destroyBean(this.selectionStrategy),this.selectionStrategy=this.createManagedBean(new i),this.shotgunResetNodeSelectionState(),this.dispatchSelectionChanged("api"))}),this.addManagedPropertyListeners(["rowSelection"],()=>{const s=(0,import_core276._getRowSelectionMode)(this.gos);s!==this.selectionMode&&(this.selectionMode=s,this.deselectAllRowNodes({source:"api"}))}),this.selectionMode=(0,import_core276._getRowSelectionMode)(this.gos);const t=(0,import_core276._getGroupSelectsDescendants)(this.gos)?GroupSelectsChildrenStrategy:DefaultStrategy;this.selectionStrategy=this.createManagedBean(new t)}getSelectionState(){return this.selectionStrategy.getSelectedState()}setSelectionState(e,t){Array.isArray(e)||(this.selectionStrategy.setSelectedState(e),this.shotgunResetNodeSelectionState(),this.dispatchSelectionChanged(t))}setNodesSelected(e){const{nodes:t,...s}=e;if(t.length>1&&this.selectionMode!=="multiRow")return(0,import_core276._warnOnce)("cannot multi select unless selection mode is 'multiRow'"),0;if(t.length>1&&e.rangeSelect)return(0,import_core276._warnOnce)("cannot use range selection when multi selecting rows"),0;const i={nodes:t.filter(a=>a.selectable),...s};if(!i.nodes.length)return 0;const r=this.selectionStrategy.setNodesSelected(i);return this.shotgunResetNodeSelectionState(i.source),this.dispatchSelectionChanged(i.source),r}deleteSelectionStateFromParent(e,t){this.selectionStrategy.deleteSelectionStateFromParent(e,t)&&(this.shotgunResetNodeSelectionState(),this.dispatchSelectionChanged("api"))}shotgunResetNodeSelectionState(e){this.rowModel.forEachNode(t=>{if(t.stub)return;const s=this.selectionStrategy.isNodeSelected(t);s!==t.isSelected()&&t.selectThisNode(s,void 0,e)})}getSelectedNodes(){return this.selectionStrategy.getSelectedNodes()}getSelectedRows(){return this.selectionStrategy.getSelectedRows()}getSelectionCount(){return this.selectionStrategy.getSelectionCount()}syncInRowNode(e){this.selectionStrategy.processNewRow(e);const t=this.selectionStrategy.isNodeSelected(e);if(t!=!1&&!e.selectable){this.selectionStrategy.setNodesSelected({nodes:[e],newValue:!1,source:"api"}),this.shotgunResetNodeSelectionState(),this.dispatchSelectionChanged("api");return}e.setSelectedInitialValue(t)}reset(){this.selectionStrategy.deselectAllRowNodes({source:"api"})}isEmpty(){return this.selectionStrategy.isEmpty()}hasNodesToSelect(){return!0}selectAllRowNodes(e){if(validateSelectionParameters(e),(0,import_core276._isUsingNewRowSelectionAPI)(this.gos)&&(0,import_core276._getRowSelectionMode)(this.gos)!=="multiRow")return(0,import_core276._warnOnce)("cannot multi select unless selection mode is 'multiRow'");this.selectionStrategy.selectAllRowNodes(e),this.rowModel.forEachNode(t=>{t.stub||t.selectThisNode(!0,void 0,e.source)}),this.dispatchSelectionChanged(e.source)}deselectAllRowNodes(e){validateSelectionParameters(e),this.selectionStrategy.deselectAllRowNodes(e),this.rowModel.forEachNode(t=>{t.stub||t.selectThisNode(!1,void 0,e.source)}),this.dispatchSelectionChanged(e.source)}getSelectAllState(e,t){return this.selectionStrategy.getSelectAllState(e,t)}updateGroupsFromChildrenSelections(){return!1}getBestCostNodeSelection(){(0,import_core276._warnOnce)("calling gridApi.getBestCostNodeSelection() is only possible when using rowModelType=`clientSide`.")}filterFromSelection(){}dispatchSelectionChanged(e){this.eventService.dispatchEvent({type:"selectionChanged",source:e})}};function validateSelectionParameters({justCurrentPage:e,justFiltered:t}){(e||t)&&(0,import_core276._warnOnce)(`selecting just ${e?"current page":"filtered"} only works when gridOptions.rowModelType='clientSide'`)}var StoreFactory=class extends import_core279.BeanStub{constructor(){super(...arguments),this.beanName="ssrmStoreFactory"}wireBeans(e){this.columnModel=e.columnModel,this.funcColsService=e.funcColsService}createStore(e,t){const s=this.getStoreParams(e,t),i=s.suppressInfiniteScroll?FullStore:LazyStore;return new i(e,s,t)}getStoreParams(e,t){const s=this.getLevelSpecificParams(t),i=this.isInfiniteScroll(s),r=this.getBlockSize(i,s),a=this.getMaxBlocksInCache(i,e,s);return{suppressInfiniteScroll:!i,cacheBlockSize:r,maxBlocksInCache:a}}getMaxBlocksInCache(e,t,s){if(!e)return;const i=s&&s.maxBlocksInCache!=null?s.maxBlocksInCache:this.gos.get("maxBlocksInCache");if(i!=null&&i>=0){if(t.dynamicRowHeight){(0,import_core279._warnOnce)("Server Side Row Model does not support Dynamic Row Height and Cache Purging. Either a) remove getRowHeight() callback or b) remove maxBlocksInCache property. Purging has been disabled.");return}if(this.columnModel.isAutoRowHeightActive()){(0,import_core279._warnOnce)("Server Side Row Model does not support Auto Row Height and Cache Purging. Either a) remove colDef.autoHeight or b) remove maxBlocksInCache property. Purging has been disabled.");return}return i}}getBlockSize(e,t){if(!e)return;const s=t&&t.cacheBlockSize!=null?t.cacheBlockSize:this.gos.get("cacheBlockSize");return s!=null&&s>0?s:100}getLevelSpecificParams(e){const t=this.gos.getCallback("getServerSideGroupLevelParams");if(!t)return;const s={level:e.level+1,parentRowNode:e.level>=0?e:void 0,rowGroupColumns:this.funcColsService.getRowGroupColumns(),pivotColumns:this.funcColsService.getPivotColumns(),pivotMode:this.columnModel.isPivotMode()};return t(s)}isInfiniteScroll(e){return!(e&&e.suppressInfiniteScroll!=null?e.suppressInfiniteScroll:this.isSuppressServerSideInfiniteScroll())}isSuppressServerSideInfiniteScroll(){return this.gos.get("suppressServerSideInfiniteScroll")}},StoreUtils=class extends import_core280.BeanStub{constructor(){super(...arguments),this.beanName="ssrmStoreUtils"}wireBeans(e){this.columnModel=e.columnModel,this.serverSideRowModel=e.rowModel,this.storeFactory=e.ssrmStoreFactory}loadFromDatasource(e){const{storeParams:t,parentBlock:s,parentNode:i}=e,r=i.getRoute()??[];if(!t.datasource)return;const a={startRow:e.startRow,endRow:e.endRow,rowGroupCols:t.rowGroupCols,valueCols:t.valueCols,pivotCols:t.pivotCols,pivotMode:t.pivotMode,groupKeys:r,filterModel:t.filterModel,sortModel:t.sortModel},o=this.gos.addGridCommonParams({success:e.success,fail:e.fail,request:a,parentNode:e.parentNode});window.setTimeout(()=>{if(!t.datasource||!s.isAlive()){e.fail();return}t.datasource.getRows(o)},0)}getChildStore(e,t,s){if((0,import_core280._missingOrEmpty)(e))return t;const i=e[0],r=s(i);if(r){if(e.length===1&&!r.childStore){const n=this.serverSideRowModel.getParams();r.childStore=this.createBean(this.storeFactory.createStore(n,r))}const a=e.slice(1,e.length),o=r.childStore;return o?o.getChildStore(a):null}return null}isServerRefreshNeeded(e,t,s){if(s.valueColChanged||s.secondaryColChanged)return!0;const i=e.level+1;if(!(i<t.length))return!0;const o=t[i].id;return s.changedColumns.indexOf(o)>-1?!0:this.columnModel.getCols().filter(h=>h.getColDef().showRowGroup&&s.changedColumns.includes(h.getId())).map(h=>h.getColDef().showRowGroup).some(h=>h===!0||h===o)}getServerSideInitialRowCount(){return this.gos.get("serverSideInitialRowCount")}assertRowModelIsServerSide(e){return(0,import_core280._isServerSideRowModel)(this.gos)?!0:((0,import_core280._warnOnce)(`The '${e}' property can only be used with the Server Side Row Model.`),!1)}assertNotTreeData(e){return this.gos.get("treeData")?((0,import_core280._warnOnce)(`The '${e}' property cannot be used while using tree data.`),!1):!0}isServerSideSortAllLevels(){return this.gos.get("serverSideSortAllLevels")&&this.assertRowModelIsServerSide("serverSideSortAllLevels")}isServerSideOnlyRefreshFilteredGroups(){return this.gos.get("serverSideOnlyRefreshFilteredGroups")&&this.assertRowModelIsServerSide("serverSideOnlyRefreshFilteredGroups")}isServerSideSortOnServer(){return this.gos.get("serverSideSortOnServer")&&this.assertRowModelIsServerSide("serverSideSortOnServer")&&this.assertNotTreeData("serverSideSortOnServer")}isServerSideFilterOnServer(){return this.gos.get("serverSideFilterOnServer")&&this.assertRowModelIsServerSide("serverSideFilterOnServer")&&this.assertNotTreeData("serverSideFilterOnServer")}},TransactionManager=class extends import_core281.BeanStub{constructor(){super(...arguments),this.beanName="ssrmTransactionManager",this.asyncTransactions=[]}wireBeans(e){this.valueCache=e.valueCache,this.serverSideRowModel=e.rowModel,this.selectionService=e.selectionService}postConstruct(){(0,import_core281._isServerSideRowModel)(this.gos)}applyTransactionAsync(e,t){this.asyncTransactionsTimeout==null&&this.scheduleExecuteAsync(),this.asyncTransactions.push({transaction:e,callback:t})}scheduleExecuteAsync(){const e=this.gos.get("asyncTransactionWaitMillis");this.asyncTransactionsTimeout=window.setTimeout(()=>{this.executeAsyncTransactions()},e)}executeAsyncTransactions(){if(!this.asyncTransactions)return;const e=[],t=[],s=[];let i=!1;this.asyncTransactions.forEach(r=>{let a;if(this.serverSideRowModel.executeOnStore(r.transaction.route,l=>{a=l.applyTransaction(r.transaction)})?a==null&&(a={status:import_core281.ServerSideTransactionResultStatus.StoreNotFound}):a={status:import_core281.ServerSideTransactionResultStatus.StoreNotStarted},t.push(a),a.status==import_core281.ServerSideTransactionResultStatus.StoreLoading){s.push(r);return}r.callback&&e.push(()=>r.callback(a)),a.status===import_core281.ServerSideTransactionResultStatus.Applied&&(i=!0)}),e.length>0&&window.setTimeout(()=>{e.forEach(r=>r())},0),this.asyncTransactionsTimeout=void 0,this.asyncTransactions=s,i&&(this.valueCache.onDataChanged(),this.eventService.dispatchEvent({type:"storeUpdated"})),t.length>0&&this.eventService.dispatchEvent({type:"asyncTransactionsFlushed",results:t})}flushAsyncTransactions(){this.asyncTransactionsTimeout!=null&&clearTimeout(this.asyncTransactionsTimeout),this.executeAsyncTransactions()}applyTransaction(e){let t;if(this.serverSideRowModel.executeOnStore(e.route,i=>{t=i.applyTransaction(e)}))if(t){if(this.valueCache.onDataChanged(),t.remove){const i=t.remove.map(r=>r.id);this.selectionService.deleteSelectionStateFromParent(e.route||[],i)}return this.eventService.dispatchEvent({type:"storeUpdated"}),t}else return{status:import_core281.ServerSideTransactionResultStatus.StoreNotFound};else return{status:import_core281.ServerSideTransactionResultStatus.StoreNotStarted}}},VERSION15="32.2.2",ServerSideRowModelCoreModule=(0,import_core261._defineModule)({version:VERSION15,moduleName:`${import_core261.ModuleNames.ServerSideRowModelModule}-core`,rowModel:"serverSide",beans:[ServerSideRowModel,ExpandListener,SortListener,StoreUtils,BlockUtils,NodeManager,TransactionManager,FilterListener,StoreFactory,ListenerUtils,ServerSideSelectionService,ServerSideExpansionService,LazyBlockLoadingService],dependantModules:[EnterpriseCoreModule,import_core261._RowNodeBlockModule]}),ServerSideRowModelApiModule=(0,import_core261._defineModule)({version:VERSION15,moduleName:`${import_core261.ModuleNames.ServerSideRowModelModule}-api`,beans:[import_core261.RowModelHelperService],apiFunctions:{getServerSideSelectionState,setServerSideSelectionState,applyServerSideTransaction,applyServerSideTransactionAsync,applyServerSideRowData,retryServerSideLoads,flushServerSideAsyncTransactions,refreshServerSide,getServerSideGroupLevelState},dependantModules:[ServerSideRowModelCoreModule,import_core261._CsrmSsrmSharedApiModule,import_core261._SsrmInfiniteSharedApiModule]}),ServerSideRowModelModule=(0,import_core261._defineModule)({version:VERSION15,moduleName:import_core261.ModuleNames.ServerSideRowModelModule,dependantModules:[ServerSideRowModelCoreModule,ServerSideRowModelApiModule]}),import_core282=require("ag-grid-community"),import_core284=require("ag-grid-community"),import_core286=require("ag-grid-community"),import_core287=require("ag-grid-community"),import_core288=require("ag-grid-community"),import_core289=require("ag-grid-community"),import_core290=require("ag-grid-community"),import_core291=require("ag-grid-community"),SetFilterDisplayValue=class{};SetFilterDisplayValue.SELECT_ALL="__AG_SELECT_ALL__",SetFilterDisplayValue.ADD_SELECTION_TO_FILTER="__AG_ADD_SELECTION_TO_FILTER__";var DEFAULT_LOCALE_TEXT={loadingOoo:"Loading...",blanks:"(Blanks)",searchOoo:"Search...",selectAll:"(Select All)",selectAllSearchResults:"(Select All Search Results)",addCurrentSelectionToFilter:"Add current selection to filter",noMatches:"No matches."},SetFilterListItem=class extends import_core286.Component{constructor(e){super(e.isGroup?`
|
|
396
|
+
`);return{selectAllChildren:r,toggledNodes:new Map(a)}};try{this.selectedState=t(e,!!e.selectAllChildren)}catch(s){(0,import_core278._errorOnce)(s.message)}}deleteSelectionStateFromParent(e,t){let s=this.selectedState;const i=[...e];for(;s&&i.length;)s=s.toggledNodes.get(i.pop());if(!s)return!1;let r=!1;return t.forEach(a=>{s?.toggledNodes.delete(a)&&(r=!0)}),r&&this.removeRedundantState(),r}overrideSelectionValue(e,t){if(!(0,import_core278.isSelectionUIEvent)(t))return e;const s=this.selectionCtx.getRoot(),i=s?this.rowModel.getRowNode(s):null;return i?i.isSelected()??!1:!0}setNodesSelected({nodes:e,newValue:t,rangeSelect:s,clearSelection:i,source:r}){if(e.length===0)return 0;if(s){if(e.length>1)throw new Error("AG Grid: cannot select multiple rows when using rangeSelect");const o=e[0],n=this.overrideSelectionValue(t,r);if(this.selectionCtx.isInRange(o.id)){const l=this.selectionCtx.truncate(o.id);return n&&this.selectRange(l.discard,!1),this.selectRange(l.keep,n),1}else if(this.selectionCtx.getRoot()!==o.id){const h=this.selectionCtx.extend(o.id,!0);return n&&this.selectRange(h.discard,!1),this.selectRange(h.keep,n),1}return 1}const a=i&&t&&!s;if(!(0,import_core278._isMultiRowSelection)(this.gos)||a){if(e.length>1)throw new Error("AG Grid: cannot select multiple rows when rowSelection.mode is set to 'singleRow'");this.deselectAllRowNodes()}return e.forEach(o=>{const n=this.getRouteToNode(o);this.recursivelySelectNode(n,this.selectedState,t)}),this.removeRedundantState(),this.selectionCtx.setRoot((0,import_core278._last)(e).id),1}selectRange(e,t){const s=e.map(this.getRouteToNode).sort((r,a)=>a.length-r.length),i=new Set;s.forEach(r=>{i.has((0,import_core278._last)(r))||(r.forEach(a=>i.add(a)),this.recursivelySelectNode(r,this.selectedState,t))}),this.removeRedundantState()}isNodeSelected(e){const t=this.getRouteToNode(e);return this.isNodePathSelected(t,this.selectedState)}isNodePathSelected([e,...t],s){if(t.length===0){const i=s.toggledNodes.has(e.id);if(e.hasChildren()){const r=s.toggledNodes.get(e.id);if(r&&r.toggledNodes.size)return}return s.selectAllChildren?!i:i}if(s.toggledNodes.has(e.id)){const i=s.toggledNodes.get(e.id);if(i)return this.isNodePathSelected(t,i)}return s.selectAllChildren}getRouteToNode(e){const t=[];let s=e;for(;s.parent;)t.push(s),s=s.parent;return t.reverse()}removeRedundantState(){if(this.filterManager?.isAnyFilterPresent())return;const e=(t=this.selectedState,s,i)=>{if(t.toggledNodes.forEach((o,n)=>{e(o,n,t)}),s){const n=this.rowModel.getRowNode(s)?.childStore;if(n?.isLastRowIndexKnown()&&t.toggledNodes.size>=n.getRowCount()){for(const h of t.toggledNodes.entries()){const[d,u]=h;if(u.toggledNodes.size>0||!this.rowModel.getRowNode(d))return}t.selectAllChildren=!t.selectAllChildren,t.toggledNodes.clear()}}const r=t.toggledNodes.size===0,a=i?.selectAllChildren===t.selectAllChildren;r&&a&&i?.toggledNodes.delete(s)};e()}recursivelySelectNode([e,...t],s,i){if(!e)return;if(!t.length){const n=e.selectable;if(s.selectAllChildren===i||!n){s.toggledNodes.delete(e.id);return}const c={selectAllChildren:i,toggledNodes:new Map};s.toggledNodes.set(e.id,c);return}const a=s.toggledNodes.has(e.id),o=s.toggledNodes.get(e.id)??{selectAllChildren:s.selectAllChildren,toggledNodes:new Map};a||s.toggledNodes.set(e.id,o),this.recursivelySelectNode(t,o,i),s.selectAllChildren===o.selectAllChildren&&o.toggledNodes.size===0&&s.toggledNodes.delete(e.id)}getSelectedNodes(){(0,import_core278._warnOnce)("`getSelectedNodes` and `getSelectedRows` functions cannot be used with `groupSelectsChildren` and the server-side row model.\n Use `api.getServerSideSelectionState()` instead.");const e=[];return this.rowModel.forEachNode(t=>{t.isSelected()&&e.push(t)}),e}processNewRow(){}getSelectedRows(){return this.getSelectedNodes().map(e=>e.data)}getSelectionCount(){return-1}isEmpty(){return!this.selectedState.selectAllChildren&&!this.selectedState.toggledNodes?.size}selectAllRowNodes(){this.selectedState={selectAllChildren:!0,toggledNodes:new Map},this.selectionCtx.reset()}deselectAllRowNodes(){this.selectedState={selectAllChildren:!1,toggledNodes:new Map},this.selectionCtx.reset()}getSelectAllState(){return this.selectedState.selectAllChildren?this.selectedState.toggledNodes.size>0?null:!0:this.selectedState.toggledNodes.size>0?null:!1}},ServerSideSelectionService=class extends import_core276.BeanStub{constructor(){super(...arguments),this.beanName="selectionService"}wireBeans(e){this.rowModel=e.rowModel}postConstruct(){this.addManagedPropertyListeners(["groupSelectsChildren","rowSelection"],()=>{const s=(0,import_core276._getGroupSelectsDescendants)(this.gos),i=s&&this.selectionStrategy instanceof DefaultStrategy?GroupSelectsChildrenStrategy:!s&&this.selectionStrategy instanceof GroupSelectsChildrenStrategy?DefaultStrategy:void 0;i&&(this.destroyBean(this.selectionStrategy),this.selectionStrategy=this.createManagedBean(new i),this.shotgunResetNodeSelectionState(),this.dispatchSelectionChanged("api"))}),this.addManagedPropertyListeners(["rowSelection"],()=>{const s=(0,import_core276._getRowSelectionMode)(this.gos);s!==this.selectionMode&&(this.selectionMode=s,this.deselectAllRowNodes({source:"api"}))}),this.selectionMode=(0,import_core276._getRowSelectionMode)(this.gos);const t=(0,import_core276._getGroupSelectsDescendants)(this.gos)?GroupSelectsChildrenStrategy:DefaultStrategy;this.selectionStrategy=this.createManagedBean(new t)}getSelectionState(){return this.selectionStrategy.getSelectedState()}setSelectionState(e,t){Array.isArray(e)||(this.selectionStrategy.setSelectedState(e),this.shotgunResetNodeSelectionState(),this.dispatchSelectionChanged(t))}setNodesSelected(e){const{nodes:t,...s}=e;if(t.length>1&&this.selectionMode!=="multiRow")return(0,import_core276._warnOnce)("cannot multi select unless selection mode is 'multiRow'"),0;if(t.length>1&&e.rangeSelect)return(0,import_core276._warnOnce)("cannot use range selection when multi selecting rows"),0;const i={nodes:t.filter(a=>a.selectable),...s};if(!i.nodes.length)return 0;const r=this.selectionStrategy.setNodesSelected(i);return this.shotgunResetNodeSelectionState(i.source),this.dispatchSelectionChanged(i.source),r}deleteSelectionStateFromParent(e,t){this.selectionStrategy.deleteSelectionStateFromParent(e,t)&&(this.shotgunResetNodeSelectionState(),this.dispatchSelectionChanged("api"))}shotgunResetNodeSelectionState(e){this.rowModel.forEachNode(t=>{if(t.stub)return;const s=this.selectionStrategy.isNodeSelected(t);s!==t.isSelected()&&t.selectThisNode(s,void 0,e)})}getSelectedNodes(){return this.selectionStrategy.getSelectedNodes()}getSelectedRows(){return this.selectionStrategy.getSelectedRows()}getSelectionCount(){return this.selectionStrategy.getSelectionCount()}syncInRowNode(e){this.selectionStrategy.processNewRow(e);const t=this.selectionStrategy.isNodeSelected(e);if(t!=!1&&!e.selectable){this.selectionStrategy.setNodesSelected({nodes:[e],newValue:!1,source:"api"}),this.shotgunResetNodeSelectionState(),this.dispatchSelectionChanged("api");return}e.setSelectedInitialValue(t)}reset(){this.selectionStrategy.deselectAllRowNodes({source:"api"})}isEmpty(){return this.selectionStrategy.isEmpty()}hasNodesToSelect(){return!0}selectAllRowNodes(e){if(validateSelectionParameters(e),(0,import_core276._isUsingNewRowSelectionAPI)(this.gos)&&(0,import_core276._getRowSelectionMode)(this.gos)!=="multiRow")return(0,import_core276._warnOnce)("cannot multi select unless selection mode is 'multiRow'");this.selectionStrategy.selectAllRowNodes(e),this.rowModel.forEachNode(t=>{t.stub||t.selectThisNode(!0,void 0,e.source)}),this.dispatchSelectionChanged(e.source)}deselectAllRowNodes(e){validateSelectionParameters(e),this.selectionStrategy.deselectAllRowNodes(e),this.rowModel.forEachNode(t=>{t.stub||t.selectThisNode(!1,void 0,e.source)}),this.dispatchSelectionChanged(e.source)}getSelectAllState(e,t){return this.selectionStrategy.getSelectAllState(e,t)}updateGroupsFromChildrenSelections(){return!1}getBestCostNodeSelection(){(0,import_core276._warnOnce)("calling gridApi.getBestCostNodeSelection() is only possible when using rowModelType=`clientSide`.")}filterFromSelection(){}dispatchSelectionChanged(e){this.eventService.dispatchEvent({type:"selectionChanged",source:e})}};function validateSelectionParameters({justCurrentPage:e,justFiltered:t}){(e||t)&&(0,import_core276._warnOnce)(`selecting just ${e?"current page":"filtered"} only works when gridOptions.rowModelType='clientSide'`)}var StoreFactory=class extends import_core279.BeanStub{constructor(){super(...arguments),this.beanName="ssrmStoreFactory"}wireBeans(e){this.columnModel=e.columnModel,this.funcColsService=e.funcColsService}createStore(e,t){const s=this.getStoreParams(e,t),i=s.suppressInfiniteScroll?FullStore:LazyStore;return new i(e,s,t)}getStoreParams(e,t){const s=this.getLevelSpecificParams(t),i=this.isInfiniteScroll(s),r=this.getBlockSize(i,s),a=this.getMaxBlocksInCache(i,e,s);return{suppressInfiniteScroll:!i,cacheBlockSize:r,maxBlocksInCache:a}}getMaxBlocksInCache(e,t,s){if(!e)return;const i=s&&s.maxBlocksInCache!=null?s.maxBlocksInCache:this.gos.get("maxBlocksInCache");if(i!=null&&i>=0){if(t.dynamicRowHeight){(0,import_core279._warnOnce)("Server Side Row Model does not support Dynamic Row Height and Cache Purging. Either a) remove getRowHeight() callback or b) remove maxBlocksInCache property. Purging has been disabled.");return}if(this.columnModel.isAutoRowHeightActive()){(0,import_core279._warnOnce)("Server Side Row Model does not support Auto Row Height and Cache Purging. Either a) remove colDef.autoHeight or b) remove maxBlocksInCache property. Purging has been disabled.");return}return i}}getBlockSize(e,t){if(!e)return;const s=t&&t.cacheBlockSize!=null?t.cacheBlockSize:this.gos.get("cacheBlockSize");return s!=null&&s>0?s:100}getLevelSpecificParams(e){const t=this.gos.getCallback("getServerSideGroupLevelParams");if(!t)return;const s={level:e.level+1,parentRowNode:e.level>=0?e:void 0,rowGroupColumns:this.funcColsService.getRowGroupColumns(),pivotColumns:this.funcColsService.getPivotColumns(),pivotMode:this.columnModel.isPivotMode()};return t(s)}isInfiniteScroll(e){return!(e&&e.suppressInfiniteScroll!=null?e.suppressInfiniteScroll:this.isSuppressServerSideInfiniteScroll())}isSuppressServerSideInfiniteScroll(){return this.gos.get("suppressServerSideInfiniteScroll")}},StoreUtils=class extends import_core280.BeanStub{constructor(){super(...arguments),this.beanName="ssrmStoreUtils"}wireBeans(e){this.columnModel=e.columnModel,this.serverSideRowModel=e.rowModel,this.storeFactory=e.ssrmStoreFactory}loadFromDatasource(e){const{storeParams:t,parentBlock:s,parentNode:i}=e,r=i.getRoute()??[];if(!t.datasource)return;const a={startRow:e.startRow,endRow:e.endRow,rowGroupCols:t.rowGroupCols,valueCols:t.valueCols,pivotCols:t.pivotCols,pivotMode:t.pivotMode,groupKeys:r,filterModel:t.filterModel,sortModel:t.sortModel},o=this.gos.addGridCommonParams({success:e.success,fail:e.fail,request:a,parentNode:e.parentNode});window.setTimeout(()=>{if(!t.datasource||!s.isAlive()){e.fail();return}t.datasource.getRows(o)},0)}getChildStore(e,t,s){if((0,import_core280._missingOrEmpty)(e))return t;const i=e[0],r=s(i);if(r){if(e.length===1&&!r.childStore){const n=this.serverSideRowModel.getParams();r.childStore=this.createBean(this.storeFactory.createStore(n,r))}const a=e.slice(1,e.length),o=r.childStore;return o?o.getChildStore(a):null}return null}isServerRefreshNeeded(e,t,s){if(s.valueColChanged||s.secondaryColChanged)return!0;const i=e.level+1;if(!(i<t.length))return!0;const o=t[i].id;return s.changedColumns.indexOf(o)>-1?!0:this.columnModel.getCols().filter(h=>h.getColDef().showRowGroup&&s.changedColumns.includes(h.getId())).map(h=>h.getColDef().showRowGroup).some(h=>h===!0||h===o)}getServerSideInitialRowCount(){return this.gos.get("serverSideInitialRowCount")}assertRowModelIsServerSide(e){return(0,import_core280._isServerSideRowModel)(this.gos)?!0:((0,import_core280._warnOnce)(`The '${e}' property can only be used with the Server Side Row Model.`),!1)}assertNotTreeData(e){return this.gos.get("treeData")?((0,import_core280._warnOnce)(`The '${e}' property cannot be used while using tree data.`),!1):!0}isServerSideSortAllLevels(){return this.gos.get("serverSideSortAllLevels")&&this.assertRowModelIsServerSide("serverSideSortAllLevels")}isServerSideOnlyRefreshFilteredGroups(){return this.gos.get("serverSideOnlyRefreshFilteredGroups")&&this.assertRowModelIsServerSide("serverSideOnlyRefreshFilteredGroups")}isServerSideSortOnServer(){return this.gos.get("serverSideSortOnServer")&&this.assertRowModelIsServerSide("serverSideSortOnServer")&&this.assertNotTreeData("serverSideSortOnServer")}isServerSideFilterOnServer(){return this.gos.get("serverSideFilterOnServer")&&this.assertRowModelIsServerSide("serverSideFilterOnServer")&&this.assertNotTreeData("serverSideFilterOnServer")}},TransactionManager=class extends import_core281.BeanStub{constructor(){super(...arguments),this.beanName="ssrmTransactionManager",this.asyncTransactions=[]}wireBeans(e){this.valueCache=e.valueCache,this.serverSideRowModel=e.rowModel,this.selectionService=e.selectionService}postConstruct(){(0,import_core281._isServerSideRowModel)(this.gos)}applyTransactionAsync(e,t){this.asyncTransactionsTimeout==null&&this.scheduleExecuteAsync(),this.asyncTransactions.push({transaction:e,callback:t})}scheduleExecuteAsync(){const e=this.gos.get("asyncTransactionWaitMillis");this.asyncTransactionsTimeout=window.setTimeout(()=>{this.executeAsyncTransactions()},e)}executeAsyncTransactions(){if(!this.asyncTransactions)return;const e=[],t=[],s=[];let i=!1;this.asyncTransactions.forEach(r=>{let a;if(this.serverSideRowModel.executeOnStore(r.transaction.route,l=>{a=l.applyTransaction(r.transaction)})?a==null&&(a={status:import_core281.ServerSideTransactionResultStatus.StoreNotFound}):a={status:import_core281.ServerSideTransactionResultStatus.StoreNotStarted},t.push(a),a.status==import_core281.ServerSideTransactionResultStatus.StoreLoading){s.push(r);return}r.callback&&e.push(()=>r.callback(a)),a.status===import_core281.ServerSideTransactionResultStatus.Applied&&(i=!0)}),e.length>0&&window.setTimeout(()=>{e.forEach(r=>r())},0),this.asyncTransactionsTimeout=void 0,this.asyncTransactions=s,i&&(this.valueCache.onDataChanged(),this.eventService.dispatchEvent({type:"storeUpdated"})),t.length>0&&this.eventService.dispatchEvent({type:"asyncTransactionsFlushed",results:t})}flushAsyncTransactions(){this.asyncTransactionsTimeout!=null&&clearTimeout(this.asyncTransactionsTimeout),this.executeAsyncTransactions()}applyTransaction(e){let t;if(this.serverSideRowModel.executeOnStore(e.route,i=>{t=i.applyTransaction(e)}))if(t){if(this.valueCache.onDataChanged(),t.remove){const i=t.remove.map(r=>r.id);this.selectionService.deleteSelectionStateFromParent(e.route||[],i)}return this.eventService.dispatchEvent({type:"storeUpdated"}),t}else return{status:import_core281.ServerSideTransactionResultStatus.StoreNotFound};else return{status:import_core281.ServerSideTransactionResultStatus.StoreNotStarted}}},VERSION15="32.3.0",ServerSideRowModelCoreModule=(0,import_core261._defineModule)({version:VERSION15,moduleName:`${import_core261.ModuleNames.ServerSideRowModelModule}-core`,rowModel:"serverSide",beans:[ServerSideRowModel,ExpandListener,SortListener,StoreUtils,BlockUtils,NodeManager,TransactionManager,FilterListener,StoreFactory,ListenerUtils,ServerSideSelectionService,ServerSideExpansionService,LazyBlockLoadingService],dependantModules:[EnterpriseCoreModule,import_core261._RowNodeBlockModule]}),ServerSideRowModelApiModule=(0,import_core261._defineModule)({version:VERSION15,moduleName:`${import_core261.ModuleNames.ServerSideRowModelModule}-api`,beans:[import_core261.RowModelHelperService],apiFunctions:{getServerSideSelectionState,setServerSideSelectionState,applyServerSideTransaction,applyServerSideTransactionAsync,applyServerSideRowData,retryServerSideLoads,flushServerSideAsyncTransactions,refreshServerSide,getServerSideGroupLevelState},dependantModules:[ServerSideRowModelCoreModule,import_core261._CsrmSsrmSharedApiModule,import_core261._SsrmInfiniteSharedApiModule]}),ServerSideRowModelModule=(0,import_core261._defineModule)({version:VERSION15,moduleName:import_core261.ModuleNames.ServerSideRowModelModule,dependantModules:[ServerSideRowModelCoreModule,ServerSideRowModelApiModule]}),import_core282=require("ag-grid-community"),import_core284=require("ag-grid-community"),import_core286=require("ag-grid-community"),import_core287=require("ag-grid-community"),import_core288=require("ag-grid-community"),import_core289=require("ag-grid-community"),import_core290=require("ag-grid-community"),import_core291=require("ag-grid-community"),SetFilterDisplayValue=class{};SetFilterDisplayValue.SELECT_ALL="__AG_SELECT_ALL__",SetFilterDisplayValue.ADD_SELECTION_TO_FILTER="__AG_ADD_SELECTION_TO_FILTER__";var DEFAULT_LOCALE_TEXT={loadingOoo:"Loading...",blanks:"(Blanks)",searchOoo:"Search...",selectAll:"(Select All)",selectAllSearchResults:"(Select All Search Results)",addCurrentSelectionToFilter:"Add current selection to filter",noMatches:"No matches."},SetFilterListItem=class extends import_core286.Component{constructor(e){super(e.isGroup?`
|
|
397
397
|
<div class="ag-set-filter-item" aria-hidden="true">
|
|
398
398
|
<span class="ag-set-filter-group-icons">
|
|
399
399
|
<span class="ag-set-filter-group-closed-icon" data-ref="eGroupClosedIcon"></span>
|
|
@@ -410,10 +410,10 @@ Please turn off ${t} to enable Excel table exports.`)}static getTableNameFromInd
|
|
|
410
410
|
<ag-input-text-field class="ag-mini-filter" data-ref="eMiniFilter"></ag-input-text-field>
|
|
411
411
|
<div data-ref="eFilterNoMatches" class="ag-filter-no-matches ag-hidden">${this.translateForSetFilter("noMatches")}</div>
|
|
412
412
|
<div data-ref="eSetFilterList" class="ag-set-filter-list" role="presentation"></div>
|
|
413
|
-
</div>`}getAgComponents(){return[import_core284.AgInputTextFieldSelector]}handleKeyDown(e){if(super.handleKeyDown(e),!e.defaultPrevented)switch(e.key){case import_core284.KeyCode.SPACE:this.handleKeySpace(e);break;case import_core284.KeyCode.ENTER:this.handleKeyEnter(e);break;case import_core284.KeyCode.LEFT:this.handleKeyLeft(e);break;case import_core284.KeyCode.RIGHT:this.handleKeyRight(e);break}}handleKeySpace(e){this.getComponentForKeyEvent(e)?.toggleSelected()}handleKeyEnter(e){if(!this.setFilterParams)return;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((0,import_core284._getActiveDomElement)(this.gos))||!this.virtualList)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),import_core284.AgPromise.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.refreshFilterValues()}),!0)}haveColDefParamsChanged(e){const{colDef:t,keyCreator:s}=e,{colDef:i,keyCreator:r}=this.setFilterParams??{},a=s??t.keyCreator,o=r??i?.keyCreator,n=t.filterValueGetter!==i?.filterValueGetter,l=a!==o,c=!!this.dataTypeService&&!!a&&this.dataTypeService.getFormatValue(t.cellDataType)===a&&t.valueFormatter!==i?.valueFormatter;return n||l||c}setModelAndRefresh(e){return this.valueModel?this.valueModel.setModel(e).then(()=>{this.isAlive()&&this.checkAndRefreshVirtualList()}):import_core284.AgPromise.resolve()}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(){if(!this.valueModel)throw new Error("Value model has not been created.");const e=this.valueModel.getModel();return e?{values:e,filterType:this.getFilterType()}:null}getFilterType(){return"set"}getValueModel(){return this.valueModel}areModelsEqual(e,t){return e==null&&t==null?!0:e!=null&&t!=null&&(0,import_core284._areEqual)(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 SetValueModel({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,funcColsService:this.funcColsService,valueService:this.valueService,treeDataTreeList:this.treeDataTreeList,groupingTreeList:this.groupingTreeList,addManagedEventListeners:s=>this.addManagedEventListeners(s)}),this.initialiseFilterBodyUi(),this.addEventListenersForDataChanges()}onAddCurrentSelectionToFilterChange(e){if(!this.valueModel)throw new Error("Value model has not been created.");this.valueModel.setAddCurrentSelectionToFilter(e)}setValueFormatter(e,t,s,i){let r=e;if(!r){if(t&&!s)throw new Error("AG Grid: Must supply a Value Formatter in Set Filter params when using a Key Creator");this.noValueFormatterSupplied=!0,i||(r=a=>(0,import_core284._toStringOrNull)(a.value))}this.valueFormatter=r}generateCreateKey(e,t){if(t&&!e)throw new Error("AG Grid: Must supply a Key Creator in Set Filter params when `treeList = true` on a group column, and Tree Data or Row Grouping is enabled.");return e?(s,i=null)=>{const r=this.getKeyCreatorParams(s,i);return(0,import_core284._makeNull)(e(r))}:s=>(0,import_core284._makeNull)((0,import_core284._toStringOrNull)(s))}getFormattedValue(e){let t=this.valueModel.getValue(e);this.noValueFormatterSupplied&&(this.treeDataTreeList||this.groupingTreeList)&&Array.isArray(t)&&(t=(0,import_core284._last)(t));const s=this.valueService.formatValue(this.setFilterParams.column,null,t,this.valueFormatter,!1);return s??(0,import_core284._toStringOrNull)(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,(0,import_core284._warnOnce)('The Set Filter Parameter "defaultToNothingSelected" value was ignored because it does not work when "excelMode" is used.'))}addEventListenersForDataChanges(){this.isValuesTakenFromGrid()&&(this.addManagedEventListeners({cellValueChanged:e=>{this.setFilterParams&&e.column===this.setFilterParams.column&&this.syncAfterDataChange()}}),this.addManagedPropertyListeners(["treeData","getDataPath","groupAllowUnbalanced"],()=>{this.syncAfterDataChange()}))}syncAfterDataChange(){if(!this.valueModel)throw new Error("Value model has not been created.");return this.valueModel.refreshValues().then(()=>{this.checkAndRefreshVirtualList(),(!this.applyActive||this.areModelsEqual(this.getModel(),this.getModelFromUi()))&&this.onBtApply(!1,!0)})}setIsLoading(e){(0,import_core284._setDisplayed)(this.eFilterLoading,e),e||(this.hardRefreshVirtualList=!0)}initialiseFilterBodyUi(){this.initVirtualList(),this.initMiniFilter()}initVirtualList(){if(!this.setFilterParams)throw new Error("Set filter params have not been provided.");if(!this.valueModel)throw new Error("Value model has not been created.");const t=this.localeService.getLocaleTextFunc()("ariaFilterList","Filter List"),s=!!this.setFilterParams.treeList,i=this.virtualList=this.createBean(new VirtualList({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 o=(l,c)=>this.createSetListItem(l,s,c);i.setComponentCreator(o);const n=(l,c)=>this.updateSetListItem(l,c);i.setComponentUpdater(n),this.createVirtualListModel(this.setFilterParams)}createVirtualListModel(e){if(!this.valueModel)return;let t;e.suppressSelectAll?t=new ModelWrapper(this.valueModel):t=new ModelWrapperWithSelectAll(this.valueModel,()=>this.isSelectAllSelected()),e.treeList&&(t=new TreeModelWrapper(t)),this.virtualList?.setModel(t)}getSelectAllLabel(){if(!this.setFilterParams)throw new Error("Set filter params have not been provided.");if(!this.valueModel)throw new Error("Value model has not been created.");const e=this.valueModel.getMiniFilter()==null||!this.setFilterParams.excelMode?"selectAll":"selectAllSearchResults";return this.translateForSetFilter(e)}getAddSelectionToFilterLabel(){if(!this.setFilterParams)throw new Error("Set filter params have not been provided.");if(!this.valueModel)throw new Error("Value model has not been created.");return this.translateForSetFilter("addCurrentSelectionToFilter")}createSetListItem(e,t,s){if(!this.setFilterParams)throw new Error("Set filter params have not been provided.");if(!this.valueModel)throw new Error("Value model has not been created.");const i=this.valueModel.hasGroups(),{isSelected:r,isExpanded:a}=this.isSelectedExpanded(e),{value:o,depth:n,isGroup:l,hasIndeterminateExpandState:c,selectedListener:h,expandedListener:d}=this.newSetListItemAttributes(e),u={focusWrapper:s,value:o,params:this.setFilterParams,translate:g=>this.translateForSetFilter(g),valueFormatter:this.valueFormatter,item:e,isSelected:r,isTree:t,depth:n,groupsExist:i,isGroup:l,isExpanded:a,hasIndeterminateExpandState:c},p=this.createBean(new SetFilterListItem(u));return p.addEventListener("selectionChanged",h),d&&p.addEventListener("expandedChanged",d),p}newSetTreeItemAttributes(e){if(!this.setFilterParams)throw new Error("Set filter params have not been provided.");if(!this.valueModel)throw new Error("Value model has not been created.");const t=this.valueModel.hasGroups();return e.key===SetFilterDisplayValue.SELECT_ALL?{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===SetFilterDisplayValue.ADD_SELECTION_TO_FILTER?{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){if(!this.setFilterParams)throw new Error("Set filter params have not been provided.");if(!this.valueModel)throw new Error("Value model has not been created.");return this.isSetFilterModelTreeItem(e)?this.newSetTreeItemAttributes(e):e===SetFilterDisplayValue.SELECT_ALL?{value:()=>this.getSelectAllLabel(),selectedListener:t=>this.onSelectAll(t.isSelected)}:e===SetFilterDisplayValue.ADD_SELECTION_TO_FILTER?{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===SetFilterDisplayValue.SELECT_ALL?t=this.isSelectAllSelected():e.key===SetFilterDisplayValue.ADD_SELECTION_TO_FILTER?t=this.valueModel.isAddCurrentSelectionToFilterChecked():e.children?t=this.areAllChildrenSelected(e):t=this.valueModel.isKeySelected(e.key)):e===SetFilterDisplayValue.SELECT_ALL?t=this.isSelectAllSelected():e===SetFilterDisplayValue.ADD_SELECTION_TO_FILTER?t=this.valueModel.isAddCurrentSelectionToFilterChecked():t=this.valueModel.isKeySelected(e),{isSelected:t,isExpanded:s}}isSetFilterModelTreeItem(e){return e?.treeKey!==void 0}initMiniFilter(){if(!this.setFilterParams)throw new Error("Set filter params have not been provided.");if(!this.valueModel)throw new Error("Value model has not been created.");const{eMiniFilter:e,localeService:t}=this,s=t.getLocaleTextFunc();e.setDisplayed(!this.setFilterParams.suppressMiniFilter),e.setValue(this.valueModel.getMiniFilter()),e.onValueChange(()=>this.onMiniFilterInput()),e.setInputAriaLabel(s("ariaSearchFilterValues","Search filter values")),this.addManagedElementListeners(e.getInputElement(),{keydown:i=>this.onMiniFilterKeyDown(i)})}updateMiniFilter(){if(!this.setFilterParams)throw new Error("Set filter params have not been provided.");if(!this.valueModel)throw new Error("Value model has not been created.");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){if(!this.setFilterParams)throw new Error("Set filter params have not been provided.");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?.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"){if(!this.setFilterParams)throw new Error("Set filter params have not been provided.");if(!this.valueModel)throw new Error("Value model has not been created.");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&&this.setFilterParams.excelMode?e==null||e.values.length>0:!0}doesFilterPass(e){if(!this.setFilterParams||!this.valueModel||!this.valueModel.getCaseFormattedAppliedModelKeys())return!0;if(!this.valueModel.hasAnyAppliedModelKey())return!1;const{node:t,data:s}=e;if(this.treeDataTreeList)return this.doesFilterPassForTreeData(t,s);if(this.groupingTreeList)return this.doesFilterPassForGrouping(t);const i=this.getValueFromNode(t);return i!=null&&Array.isArray(i)?i.length===0?this.valueModel.hasAppliedModelKey(null):i.some(r=>this.isInAppliedModel(this.createKey(r,t))):this.isInAppliedModel(this.createKey(i,t))}doesFilterPassForTreeData(e,t){return e.childrenAfterGroup?.length?!1:this.isInAppliedModel(this.createKey(processDataPath(this.getDataPath(t),!0,this.gos.get("groupAllowUnbalanced"))))}doesFilterPassForGrouping(e){const t=this.funcColsService.getRowGroupColumns().map(s=>this.valueService.getKeyForNode(s,e));return t.push(this.getValueFromNode(e)),this.isInAppliedModel(this.createKey(processDataPath(t,!1,this.gos.get("groupAllowUnbalanced"))))}isInAppliedModel(e){return this.valueModel.hasAppliedModelKey(e)}getValueFromNode(e){return this.setFilterParams.getValue(e)}getKeyCreatorParams(e,t=null){return{value:e,colDef:this.setFilterParams.colDef,column:this.setFilterParams.column,node:t,data:t?.data,api:this.setFilterParams.api,context:this.setFilterParams.context}}onNewRowsLoaded(){this.isValuesTakenFromGrid()&&this.syncAfterDataChange()}isValuesTakenFromGrid(){return this.valueModel?this.valueModel.getValuesType()===2:!1}setFilterValues(e){if(!this.valueModel)throw new Error("Value model has not been created.");this.valueModel.overrideValues(e).then(()=>{this.checkAndRefreshVirtualList(),this.onUiChanged()})}resetFilterValues(){if(!this.valueModel)throw new Error("Value model has not been created.");this.valueModel.setValuesType(2),this.syncAfterDataChange()}refreshFilterValues(){if(!this.valueModel)throw new Error("Value model has not been created.");this.valueModel.isInitialised()&&this.valueModel.refreshValues().then(()=>{this.hardRefreshVirtualList=!0,this.checkAndRefreshVirtualList(),this.onUiChanged()})}onAnyFilterChanged(){setTimeout(()=>{if(this.isAlive()){if(!this.valueModel)throw new Error("Value model has not been created.");this.valueModel.refreshAfterAnyFilterChanged().then(e=>{e&&(this.checkAndRefreshVirtualList(),this.showOrHideResults())})}},0)}onMiniFilterInput(){if(!this.setFilterParams)throw new Error("Set filter params have not been provided.");if(!this.valueModel)throw new Error("Value model has not been created.");if(!this.valueModel.setMiniFilter(this.eMiniFilter.getValue()))return;const{applyMiniFilterWhileTyping:e,readOnly:t}=this.setFilterParams||{};!t&&e?this.filterOnAllVisibleValues(!1):this.updateUiAfterMiniFilterChange()}updateUiAfterMiniFilterChange(){if(!this.setFilterParams)throw new Error("Set filter params have not been provided.");if(!this.valueModel)throw new Error("Value model has not been created.");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(){if(!this.valueModel)throw new Error("Value model has not been created.");const e=this.valueModel.getMiniFilter()!=null&&this.valueModel.getDisplayedValueCount()<1;(0,import_core284._setDisplayed)(this.eFilterNoMatches,e),(0,import_core284._setDisplayed)(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.onUiChanged(!1,"prevent"),t?.()})}handleCancelEnd(e){this.setMiniFilter(null),super.handleCancelEnd(e)}onMiniFilterKeyDown(e){const{excelMode:t,readOnly:s}=this.setFilterParams||{};e.key===import_core284.KeyCode.ENTER&&!t&&!s&&this.filterOnAllVisibleValues()}filterOnAllVisibleValues(e=!0){const{readOnly:t}=this.setFilterParams||{};if(!this.valueModel)throw new Error("Value model has not been created.");if(t)throw new Error("Unable to filter in readOnly mode.");this.valueModel.selectAllMatchingMiniFilter(!0),this.checkAndRefreshVirtualList(),this.onUiChanged(!1,e?"immediately":"debounce"),this.showOrHideResults()}focusRowIfAlive(e){e!=null&&window.setTimeout(()=>{if(!this.virtualList)throw new Error("Virtual list has not been created.");this.isAlive()&&this.virtualList.focusRow(e)},0)}onSelectAll(e){if(!this.valueModel)throw new Error("Value model has not been created.");if(!this.virtualList)throw new Error("Virtual list has not been created.");e?this.valueModel.selectAllMatchingMiniFilter():this.valueModel.deselectAllMatchingMiniFilter(),this.refreshAfterSelection()}onGroupItemSelected(e,t){const s=i=>{i.children?i.children.forEach(r=>s(r)):this.selectItem(i.key,t)};s(e),this.refreshAfterSelection()}onItemSelected(e,t){if(!this.valueModel)throw new Error("Value model has not been created.");if(!this.virtualList)throw new Error("Virtual list has not been created.");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?this.valueModel.getMiniFilter():null}checkAndRefreshVirtualList(){if(!this.virtualList)throw new Error("Virtual list has not been created.");this.virtualList.refresh(!this.hardRefreshVirtualList),this.hardRefreshVirtualList&&(this.hardRefreshVirtualList=!1)}getFilterKeys(){return this.valueModel?this.valueModel.getKeys():[]}getFilterValues(){return this.valueModel?this.valueModel.getValues():[]}getValues(){return this.getFilterKeys()}refreshVirtualList(){this.setFilterParams&&this.setFilterParams.refreshValuesOnOpen?this.refreshFilterValues():this.checkAndRefreshVirtualList()}translateForSetFilter(e){return this.localeService.getLocaleTextFunc()(e,DEFAULT_LOCALE_TEXT[e])}isSelectAllSelected(){if(!this.setFilterParams||!this.valueModel)return!1;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(o=>{if(!o.filterPasses||!o.available)return!1;const n=t(o);return n===void 0?!0:(n?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!=null&&(this.virtualList.destroy(),this.virtualList=null),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}},ModelWrapper=class{constructor(e){this.model=e}getRowCount(){return this.model.getDisplayedValueCount()}getRow(e){return this.model.getDisplayedItem(e)}areRowsEqual(e,t){return e===t}},ModelWrapperWithSelectAll=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}},TreeModelWrapper=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}},SetFloatingFilterComp=class extends import_core291.Component{constructor(){super(`
|
|
413
|
+
</div>`}getAgComponents(){return[import_core284.AgInputTextFieldSelector]}handleKeyDown(e){if(super.handleKeyDown(e),!e.defaultPrevented)switch(e.key){case import_core284.KeyCode.SPACE:this.handleKeySpace(e);break;case import_core284.KeyCode.ENTER:this.handleKeyEnter(e);break;case import_core284.KeyCode.LEFT:this.handleKeyLeft(e);break;case import_core284.KeyCode.RIGHT:this.handleKeyRight(e);break}}handleKeySpace(e){this.getComponentForKeyEvent(e)?.toggleSelected()}handleKeyEnter(e){if(!this.setFilterParams)return;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((0,import_core284._getActiveDomElement)(this.gos))||!this.virtualList)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),import_core284.AgPromise.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.refreshFilterValues()}),!0)}haveColDefParamsChanged(e){const{colDef:t,keyCreator:s}=e,{colDef:i,keyCreator:r}=this.setFilterParams??{},a=s??t.keyCreator,o=r??i?.keyCreator,n=t.filterValueGetter!==i?.filterValueGetter,l=a!==o,c=!!this.dataTypeService&&!!a&&this.dataTypeService.getFormatValue(t.cellDataType)===a&&t.valueFormatter!==i?.valueFormatter;return n||l||c}setModelAndRefresh(e){return this.valueModel?this.valueModel.setModel(e).then(()=>{this.isAlive()&&this.checkAndRefreshVirtualList()}):import_core284.AgPromise.resolve()}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(){if(!this.valueModel)throw new Error("Value model has not been created.");const e=this.valueModel.getModel();return e?{values:e,filterType:this.getFilterType()}:null}getFilterType(){return"set"}getValueModel(){return this.valueModel}areModelsEqual(e,t){return e==null&&t==null?!0:e!=null&&t!=null&&(0,import_core284._areEqual)(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 SetValueModel({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,funcColsService:this.funcColsService,valueService:this.valueService,treeDataTreeList:this.treeDataTreeList,groupingTreeList:this.groupingTreeList,addManagedEventListeners:s=>this.addManagedEventListeners(s)}),this.initialiseFilterBodyUi(),this.addEventListenersForDataChanges()}onAddCurrentSelectionToFilterChange(e){if(!this.valueModel)throw new Error("Value model has not been created.");this.valueModel.setAddCurrentSelectionToFilter(e)}setValueFormatter(e,t,s,i){let r=e;if(!r){if(t&&!s)throw new Error("AG Grid: Must supply a Value Formatter in Set Filter params when using a Key Creator");this.noValueFormatterSupplied=!0,i||(r=a=>(0,import_core284._toStringOrNull)(a.value))}this.valueFormatter=r}generateCreateKey(e,t){if(t&&!e)throw new Error("AG Grid: Must supply a Key Creator in Set Filter params when `treeList = true` on a group column, and Tree Data or Row Grouping is enabled.");return e?(s,i=null)=>{const r=this.getKeyCreatorParams(s,i);return(0,import_core284._makeNull)(e(r))}:s=>(0,import_core284._makeNull)((0,import_core284._toStringOrNull)(s))}getFormattedValue(e){let t=this.valueModel.getValue(e);this.noValueFormatterSupplied&&(this.treeDataTreeList||this.groupingTreeList)&&Array.isArray(t)&&(t=(0,import_core284._last)(t));const s=this.valueService.formatValue(this.setFilterParams.column,null,t,this.valueFormatter,!1);return s??(0,import_core284._toStringOrNull)(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,(0,import_core284._warnOnce)('The Set Filter Parameter "defaultToNothingSelected" value was ignored because it does not work when "excelMode" is used.'))}addEventListenersForDataChanges(){this.isValuesTakenFromGrid()&&(this.addManagedEventListeners({cellValueChanged:e=>{this.setFilterParams&&e.column===this.setFilterParams.column&&this.syncAfterDataChange()}}),this.addManagedPropertyListeners(["treeData","getDataPath","groupAllowUnbalanced"],()=>{this.syncAfterDataChange()}))}syncAfterDataChange(){if(!this.valueModel)throw new Error("Value model has not been created.");return this.valueModel.refreshValues().then(()=>{this.checkAndRefreshVirtualList(),(!this.applyActive||this.areModelsEqual(this.getModel(),this.getModelFromUi()))&&this.onBtApply(!1,!0)})}setIsLoading(e){(0,import_core284._setDisplayed)(this.eFilterLoading,e),e||(this.hardRefreshVirtualList=!0)}initialiseFilterBodyUi(){this.initVirtualList(),this.initMiniFilter()}initVirtualList(){if(!this.setFilterParams)throw new Error("Set filter params have not been provided.");if(!this.valueModel)throw new Error("Value model has not been created.");const t=this.localeService.getLocaleTextFunc()("ariaFilterList","Filter List"),s=!!this.setFilterParams.treeList,i=this.virtualList=this.createBean(new VirtualList({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 o=(l,c)=>this.createSetListItem(l,s,c);i.setComponentCreator(o);const n=(l,c)=>this.updateSetListItem(l,c);i.setComponentUpdater(n),this.createVirtualListModel(this.setFilterParams)}createVirtualListModel(e){if(!this.valueModel)return;let t;e.suppressSelectAll?t=new ModelWrapper(this.valueModel):t=new ModelWrapperWithSelectAll(this.valueModel,()=>this.isSelectAllSelected()),e.treeList&&(t=new TreeModelWrapper(t)),this.virtualList?.setModel(t)}getSelectAllLabel(){if(!this.setFilterParams)throw new Error("Set filter params have not been provided.");if(!this.valueModel)throw new Error("Value model has not been created.");const e=this.valueModel.getMiniFilter()==null||!this.setFilterParams.excelMode?"selectAll":"selectAllSearchResults";return this.translateForSetFilter(e)}getAddSelectionToFilterLabel(){if(!this.setFilterParams)throw new Error("Set filter params have not been provided.");if(!this.valueModel)throw new Error("Value model has not been created.");return this.translateForSetFilter("addCurrentSelectionToFilter")}createSetListItem(e,t,s){if(!this.setFilterParams)throw new Error("Set filter params have not been provided.");if(!this.valueModel)throw new Error("Value model has not been created.");const i=this.valueModel.hasGroups(),{isSelected:r,isExpanded:a}=this.isSelectedExpanded(e),{value:o,depth:n,isGroup:l,hasIndeterminateExpandState:c,selectedListener:h,expandedListener:d}=this.newSetListItemAttributes(e),u={focusWrapper:s,value:o,params:this.setFilterParams,translate:g=>this.translateForSetFilter(g),valueFormatter:this.valueFormatter,item:e,isSelected:r,isTree:t,depth:n,groupsExist:i,isGroup:l,isExpanded:a,hasIndeterminateExpandState:c},p=this.createBean(new SetFilterListItem(u));return p.addEventListener("selectionChanged",h),d&&p.addEventListener("expandedChanged",d),p}newSetTreeItemAttributes(e){if(!this.setFilterParams)throw new Error("Set filter params have not been provided.");if(!this.valueModel)throw new Error("Value model has not been created.");const t=this.valueModel.hasGroups();return e.key===SetFilterDisplayValue.SELECT_ALL?{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===SetFilterDisplayValue.ADD_SELECTION_TO_FILTER?{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){if(!this.setFilterParams)throw new Error("Set filter params have not been provided.");if(!this.valueModel)throw new Error("Value model has not been created.");return this.isSetFilterModelTreeItem(e)?this.newSetTreeItemAttributes(e):e===SetFilterDisplayValue.SELECT_ALL?{value:()=>this.getSelectAllLabel(),selectedListener:t=>this.onSelectAll(t.isSelected)}:e===SetFilterDisplayValue.ADD_SELECTION_TO_FILTER?{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===SetFilterDisplayValue.SELECT_ALL?t=this.isSelectAllSelected():e.key===SetFilterDisplayValue.ADD_SELECTION_TO_FILTER?t=this.valueModel.isAddCurrentSelectionToFilterChecked():e.children?t=this.areAllChildrenSelected(e):t=this.valueModel.isKeySelected(e.key)):e===SetFilterDisplayValue.SELECT_ALL?t=this.isSelectAllSelected():e===SetFilterDisplayValue.ADD_SELECTION_TO_FILTER?t=this.valueModel.isAddCurrentSelectionToFilterChecked():t=this.valueModel.isKeySelected(e),{isSelected:t,isExpanded:s}}isSetFilterModelTreeItem(e){return e?.treeKey!==void 0}initMiniFilter(){if(!this.setFilterParams)throw new Error("Set filter params have not been provided.");if(!this.valueModel)throw new Error("Value model has not been created.");const{eMiniFilter:e,localeService:t}=this,s=t.getLocaleTextFunc();e.setDisplayed(!this.setFilterParams.suppressMiniFilter),e.setValue(this.valueModel.getMiniFilter()),e.onValueChange(()=>this.onMiniFilterInput()),e.setInputAriaLabel(s("ariaSearchFilterValues","Search filter values")),this.addManagedElementListeners(e.getInputElement(),{keydown:i=>this.onMiniFilterKeyDown(i)})}updateMiniFilter(){if(!this.setFilterParams)throw new Error("Set filter params have not been provided.");if(!this.valueModel)throw new Error("Value model has not been created.");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){if(!this.setFilterParams)throw new Error("Set filter params have not been provided.");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"){if(!this.setFilterParams)throw new Error("Set filter params have not been provided.");if(!this.valueModel)throw new Error("Value model has not been created.");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&&this.setFilterParams.excelMode?e==null||e.values.length>0:!0}doesFilterPass(e){if(!this.setFilterParams||!this.valueModel||!this.valueModel.getCaseFormattedAppliedModelKeys())return!0;if(!this.valueModel.hasAnyAppliedModelKey())return!1;const{node:t,data:s}=e;if(this.treeDataTreeList)return this.doesFilterPassForTreeData(t,s);if(this.groupingTreeList)return this.doesFilterPassForGrouping(t);const i=this.getValueFromNode(t);return i!=null&&Array.isArray(i)?i.length===0?this.valueModel.hasAppliedModelKey(null):i.some(r=>this.isInAppliedModel(this.createKey(r,t))):this.isInAppliedModel(this.createKey(i,t))}doesFilterPassForTreeData(e,t){return e.childrenAfterGroup?.length?!1:this.isInAppliedModel(this.createKey(processDataPath(this.getDataPath(t),!0,this.gos.get("groupAllowUnbalanced"))))}doesFilterPassForGrouping(e){const t=this.funcColsService.getRowGroupColumns().map(s=>this.valueService.getKeyForNode(s,e));return t.push(this.getValueFromNode(e)),this.isInAppliedModel(this.createKey(processDataPath(t,!1,this.gos.get("groupAllowUnbalanced"))))}isInAppliedModel(e){return this.valueModel.hasAppliedModelKey(e)}getValueFromNode(e){return this.setFilterParams.getValue(e)}getKeyCreatorParams(e,t=null){return{value:e,colDef:this.setFilterParams.colDef,column:this.setFilterParams.column,node:t,data:t?.data,api:this.setFilterParams.api,context:this.setFilterParams.context}}onNewRowsLoaded(){this.isValuesTakenFromGrid()&&this.syncAfterDataChange()}isValuesTakenFromGrid(){return this.valueModel?this.valueModel.getValuesType()===2:!1}setFilterValues(e){if(!this.valueModel)throw new Error("Value model has not been created.");this.valueModel.overrideValues(e).then(()=>{this.checkAndRefreshVirtualList(),this.onUiChanged()})}resetFilterValues(){if(!this.valueModel)throw new Error("Value model has not been created.");this.valueModel.setValuesType(2),this.syncAfterDataChange()}refreshFilterValues(){if(!this.valueModel)throw new Error("Value model has not been created.");this.valueModel.isInitialised()&&this.valueModel.refreshValues().then(()=>{this.hardRefreshVirtualList=!0,this.checkAndRefreshVirtualList(),this.onUiChanged()})}onAnyFilterChanged(){setTimeout(()=>{if(this.isAlive()){if(!this.valueModel)throw new Error("Value model has not been created.");this.valueModel.refreshAfterAnyFilterChanged().then(e=>{e&&(this.checkAndRefreshVirtualList(),this.showOrHideResults())})}},0)}onMiniFilterInput(){if(!this.setFilterParams)throw new Error("Set filter params have not been provided.");if(!this.valueModel)throw new Error("Value model has not been created.");if(!this.valueModel.setMiniFilter(this.eMiniFilter.getValue()))return;const{applyMiniFilterWhileTyping:e,readOnly:t}=this.setFilterParams||{};!t&&e?this.filterOnAllVisibleValues(!1):this.updateUiAfterMiniFilterChange()}updateUiAfterMiniFilterChange(){if(!this.setFilterParams)throw new Error("Set filter params have not been provided.");if(!this.valueModel)throw new Error("Value model has not been created.");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(){if(!this.valueModel)throw new Error("Value model has not been created.");const e=this.valueModel.getMiniFilter()!=null&&this.valueModel.getDisplayedValueCount()<1;(0,import_core284._setDisplayed)(this.eFilterNoMatches,e),(0,import_core284._setDisplayed)(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.onUiChanged(!1,"prevent"),t?.()})}handleCancelEnd(e){this.setMiniFilter(null),super.handleCancelEnd(e)}onMiniFilterKeyDown(e){const{excelMode:t,readOnly:s}=this.setFilterParams||{};e.key===import_core284.KeyCode.ENTER&&!t&&!s&&this.filterOnAllVisibleValues()}filterOnAllVisibleValues(e=!0){const{readOnly:t}=this.setFilterParams||{};if(!this.valueModel)throw new Error("Value model has not been created.");if(t)throw new Error("Unable to filter in readOnly mode.");this.valueModel.selectAllMatchingMiniFilter(!0),this.checkAndRefreshVirtualList(),this.onUiChanged(!1,e?"immediately":"debounce"),this.showOrHideResults()}focusRowIfAlive(e){e!=null&&window.setTimeout(()=>{if(!this.virtualList)throw new Error("Virtual list has not been created.");this.isAlive()&&this.virtualList.focusRow(e)},0)}onSelectAll(e){if(!this.valueModel)throw new Error("Value model has not been created.");if(!this.virtualList)throw new Error("Virtual list has not been created.");e?this.valueModel.selectAllMatchingMiniFilter():this.valueModel.deselectAllMatchingMiniFilter(),this.refreshAfterSelection()}onGroupItemSelected(e,t){const s=i=>{i.children?i.children.forEach(r=>s(r)):this.selectItem(i.key,t)};s(e),this.refreshAfterSelection()}onItemSelected(e,t){if(!this.valueModel)throw new Error("Value model has not been created.");if(!this.virtualList)throw new Error("Virtual list has not been created.");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?this.valueModel.getMiniFilter():null}checkAndRefreshVirtualList(){if(!this.virtualList)throw new Error("Virtual list has not been created.");this.virtualList.refresh(!this.hardRefreshVirtualList),this.hardRefreshVirtualList&&(this.hardRefreshVirtualList=!1)}getFilterKeys(){return this.valueModel?this.valueModel.getKeys():[]}getFilterValues(){return this.valueModel?this.valueModel.getValues():[]}getValues(){return this.getFilterKeys()}refreshVirtualList(){this.setFilterParams&&this.setFilterParams.refreshValuesOnOpen?this.refreshFilterValues():this.checkAndRefreshVirtualList()}translateForSetFilter(e){return this.localeService.getLocaleTextFunc()(e,DEFAULT_LOCALE_TEXT[e])}isSelectAllSelected(){if(!this.setFilterParams||!this.valueModel)return!1;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(o=>{if(!o.filterPasses||!o.available)return!1;const n=t(o);return n===void 0?!0:(n?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!=null&&(this.virtualList.destroy(),this.virtualList=null),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}},ModelWrapper=class{constructor(e){this.model=e}getRowCount(){return this.model.getDisplayedValueCount()}getRow(e){return this.model.getDisplayedItem(e)}areRowsEqual(e,t){return e===t}},ModelWrapperWithSelectAll=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}},TreeModelWrapper=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}},SetFloatingFilterComp=class extends import_core291.Component{constructor(){super(`
|
|
414
414
|
<div class="ag-floating-filter-input ag-set-floating-filter-input" role="presentation">
|
|
415
415
|
<ag-input-text-field data-ref="eFloatingFilterText"></ag-input-text-field>
|
|
416
|
-
</div>`,[import_core291.AgInputTextFieldSelector]),this.eFloatingFilterText=import_core291.RefPlaceholder,this.availableValuesListenerAdded=!1,this.filterModelFormatter=new SetFilterModelFormatter}wireBeans(e){this.columnNameService=e.columnNameService}destroy(){super.destroy()}init(e){this.params=e,this.eFloatingFilterText.setDisabled(!0).addGuiEventListener("click",()=>this.params.showParentFilter()),this.setParams(e)}setParams(e){const t=this.columnNameService.getDisplayNameForColumn(e.column,"header",!0),s=this.localeService.getLocaleTextFunc();this.eFloatingFilterText.setInputAriaLabel(`${t} ${s("ariaFilterInput","Filter Input")}`)}onParamsUpdated(e){this.refresh(e)}refresh(e){this.params=e,this.setParams(e)}onParentModelChanged(e){this.updateFloatingFilterText(e)}parentSetFilterInstance(e){this.params.parentFilterInstance(t=>{if(!(t instanceof SetFilter))throw new Error("AG Grid - SetFloatingFilter expects SetFilter as its parent");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))})}},VERSION16="32.
|
|
416
|
+
</div>`,[import_core291.AgInputTextFieldSelector]),this.eFloatingFilterText=import_core291.RefPlaceholder,this.availableValuesListenerAdded=!1,this.filterModelFormatter=new SetFilterModelFormatter}wireBeans(e){this.columnNameService=e.columnNameService}destroy(){super.destroy()}init(e){this.params=e,this.eFloatingFilterText.setDisabled(!0).addGuiEventListener("click",()=>this.params.showParentFilter()),this.setParams(e)}setParams(e){const t=this.columnNameService.getDisplayNameForColumn(e.column,"header",!0),s=this.localeService.getLocaleTextFunc();this.eFloatingFilterText.setInputAriaLabel(`${t} ${s("ariaFilterInput","Filter Input")}`)}onParamsUpdated(e){this.refresh(e)}refresh(e){this.params=e,this.setParams(e)}onParentModelChanged(e){this.updateFloatingFilterText(e)}parentSetFilterInstance(e){this.params.parentFilterInstance(t=>{if(!(t instanceof SetFilter))throw new Error("AG Grid - SetFloatingFilter expects SetFilter as its parent");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))})}},VERSION16="32.3.0",SetFilterCoreModule=(0,import_core282._defineModule)({version:VERSION16,moduleName:`${import_core282.ModuleNames.SetFilterModule}-core`,userComponents:[{name:"agSetColumnFilter",classImp:SetFilter}],dependantModules:[EnterpriseCoreModule,import_core282._ColumnFilterModule]}),SetFloatingFilterModule=(0,import_core282._defineModule)({version:VERSION16,moduleName:"@ag-grid-enterprise/set-floating-filter",userComponents:[{name:"agSetColumnFloatingFilter",classImp:SetFloatingFilterComp}],dependantModules:[SetFilterCoreModule,import_core282._FloatingFilterModule]}),SetFilterModule=(0,import_core282._defineModule)({version:VERSION16,moduleName:import_core282.ModuleNames.SetFilterModule,dependantModules:[SetFilterCoreModule,SetFloatingFilterModule]}),import_core292=require("ag-grid-community"),import_core294=require("ag-grid-community"),import_core295=require("ag-grid-community"),import_ag_charts_community35=require("ag-charts-community"),import_ag_charts_community36=require("ag-charts-community"),import_core296=require("ag-grid-community"),import_ag_charts_community37=require("ag-charts-community"),import_core297=require("ag-grid-community"),import_ag_charts_community38=require("ag-charts-community"),import_ag_charts_community39=require("ag-charts-community"),import_ag_charts_community40=require("ag-charts-community"),import_ag_charts_community41=require("ag-charts-community"),import_ag_charts_community42=require("ag-charts-community"),import_core298=require("ag-grid-community");function getLineDash(e,t="solid"){const s={solid:[],dash:[4,3],dot:[1,3],dashDot:[4,3,1,3],dashDotDot:[4,3,1,3,1,3],shortDot:[1,1],shortDash:[3,1],shortDashDot:[3,1,1,1],shortDashDotDot:[3,1,1,1,1,1],longDash:[8,3],longDashDot:[8,3,1,3],longDashDotDot:[8,3,1,3,1,3]},i={solid:[],dash:[3,3],dot:[0,3],dashDot:[3,3,0,3],dashDotDot:[3,3,0,3,0,3],shortDot:[0,2],shortDash:[2,2],shortDashDot:[2,2,0,2],shortDashDotDot:[2,2,0,2,0,2],longDash:[7,3],longDashDot:[7,3,0,3],longDashDotDot:[7,3,0,3,0,3]};return e==="round"||e==="square"?i[t]==null?(warnInvalid(t),i.solid):i[t]:s[t]==null?(warnInvalid(t),s.solid):s[t]}function warnInvalid(e){(0,import_core296._warnOnce)(`'${e}' is not a valid 'lineDash' option.`)}function getMarker(e){switch(e){case"circle":return import_ag_charts_community37._Scene.Circle;case"square":return import_ag_charts_community37._Scene.Square;case"diamond":return import_ag_charts_community37._Scene.Diamond;default:return import_ag_charts_community37._Scene.Circle}}var defaultTooltipCss=`
|
|
417
417
|
.ag-sparkline-tooltip-wrapper {
|
|
418
418
|
position: absolute;
|
|
419
419
|
user-select: none;
|
|
@@ -456,7 +456,7 @@ Please turn off ${t} to enable Excel table exports.`)}static getTableNameFromInd
|
|
|
456
456
|
${l}
|
|
457
457
|
</div>`}var TooltipClass="ag-sparkline-tooltip",SparklineTooltip=class{constructor(){this.created=!1,this.element=document.createElement("div")}isVisible(){const{element:e}=this;if(e.classList)return!e.classList.contains(`${TooltipClass}-wrapper-hidden`);const t=e.getAttribute("class");return t?t.split(" ").indexOf(`${TooltipClass}-wrapper-hidden`)<0:!1}updateClass(e){this.created||(document.body.appendChild(this.element),this.created=!0);const t=[`${TooltipClass}-wrapper`];e!==!0&&t.push(`${TooltipClass}-wrapper-hidden`),this.element.setAttribute("class",t.join(" "))}show(e,t){this.toggle(!1);const{element:s}=this;if(t!==void 0)s.innerHTML=t;else if(!s.innerHTML)return;const i=e.position?.xOffset??10,r=e.position?.yOffset??0;let a=e.pageX+i,o=e.pageY+r;const n=s.getBoundingClientRect();let l=window.innerWidth-n.width;if(e.container){const c=e.container.getBoundingClientRect();l=c.left+(c.width-n.width)}a>l&&(a=e.pageX-s.clientWidth-i),typeof scrollX<"u"&&(a+=scrollX),typeof scrollY<"u"&&(o+=scrollY),s.style.left=`${Math.round(a)}px`,s.style.top=`${Math.round(o)}px`,this.toggle(!0)}toggle(e){this.updateClass(e)}destroy(){const{parentNode:e}=this.element;e&&e.removeChild(this.element)}},{extent:extent2}=import_ag_charts_community36._Util,{BandScale:BandScale2}=import_ag_charts_community36._Scale,SparklineMarker=class{constructor(){this.enabled=!0,this.shape="circle",this.size=0,this.fill="rgb(124, 181, 236)",this.stroke="rgb(124, 181, 236)",this.strokeWidth=1,this.formatter=void 0}},SparklineLine=class{constructor(){this.stroke="rgb(124, 181, 236)",this.strokeWidth=1}},SparklineCrosshairs=class{constructor(){this.xLine={enabled:!0,stroke:"rgba(0,0,0, 0.54)",strokeWidth:1,lineDash:"solid",lineCap:void 0},this.yLine={enabled:!1,stroke:"rgba(0,0,0, 0.54)",strokeWidth:1,lineDash:"solid",lineCap:void 0}}},AreaSparkline=class extends Sparkline{constructor(){super(),this.fill="rgba(124, 181, 236, 0.25)",this.strokePath=new import_ag_charts_community36._Scene.Path,this.fillPath=new import_ag_charts_community36._Scene.Path,this.xCrosshairLine=new import_ag_charts_community36._Scene.Line,this.yCrosshairLine=new import_ag_charts_community36._Scene.Line,this.areaSparklineGroup=new import_ag_charts_community36._Scene.Group,this.xAxisLine=new import_ag_charts_community36._Scene.Line,this.markers=new import_ag_charts_community36._Scene.Group,this.markerSelection=import_ag_charts_community36._Scene.Selection.select(this.markers,()=>this.markerFactory()),this.markerSelectionData=[],this.marker=new SparklineMarker,this.line=new SparklineLine,this.crosshairs=new SparklineCrosshairs,this.rootGroup.append(this.areaSparklineGroup),this.xAxisLine.zIndex=500,this.fillPath.zIndex=50,this.strokePath.zIndex=1e3,this.xCrosshairLine.zIndex=2e3,this.yCrosshairLine.zIndex=2e3,this.markers.zIndex=2500,this.areaSparklineGroup.append([this.fillPath,this.xAxisLine,this.strokePath,this.xCrosshairLine,this.yCrosshairLine,this.markers])}markerFactory(){const{shape:e}=this.marker,t=getMarker(e);return new t}getNodeData(){return this.markerSelectionData}update(){const e=this.generateNodeData();if(!e)return;const{nodeData:t,fillData:s,strokeData:i}=e;this.markerSelectionData=t,this.updateSelection(t),this.updateNodes(),this.updateStroke(i),this.updateFill(s)}updateYScaleDomain(){const{yData:e,yScale:t}=this,s=extent2(e);let i=0,r=1;s!=null&&(i=this.min=s[0],r=this.max=s[1]),i=i<0?i:0,r=r<0?0:r,t.domain=[i,r]}generateNodeData(){const{data:e,yData:t,xData:s,xScale:i,yScale:r}=this;if(!e)return;const a=!(i instanceof BandScale2),o=a?0:i.bandwidth/2,n=t.length,l=[],c=[],h=[];let d,u,p,g;const m=r.convert(0);for(let C=0;C<n;C++){const f=t[C],v=s[C],S=i.convert(a?i.toDomain(v):v)+o,y=f===void 0?NaN:r.convert(f);C+1<n&&(g=i.convert(a?i.toDomain(s[C+1]):s[C+1])+o),h.push({seriesDatum:{x:v,y:f},point:{x:S,y}}),f===void 0&&p!==void 0?(c.push({seriesDatum:void 0,point:{x:p,y:m}}),g!==void 0&&c.push({seriesDatum:void 0,point:{x:g,y:m}})):f!==void 0&&(c.push({seriesDatum:{x:v,y:f},point:{x:S,y}}),l.push({seriesDatum:{x:v,y:f},point:{x:S,y}}),d=d!==void 0?d:S,u=S),p=S}return c.push({seriesDatum:void 0,point:{x:u,y:m}},{seriesDatum:void 0,point:{x:d,y:m}}),{nodeData:l,fillData:c,strokeData:h}}updateAxisLine(){const{xScale:e,yScale:t,axis:{stroke:s,strokeWidth:i},xAxisLine:r}=this,a=t.convert(0);r.x1=e.range[0],r.x2=e.range[1],r.y1=r.y2=a,r.stroke=s,r.strokeWidth=i}updateSelection(e){this.markerSelection.update(e)}updateNodes(){const{highlightedDatum:e,highlightStyle:t,marker:s}=this,{size:i,fill:r,stroke:a,strokeWidth:o}=t,n=s.formatter;this.markerSelection.each((l,c,h)=>{const{point:d,seriesDatum:u}=c;if(!d)return;const p=c===e,g=p&&r!==void 0?r:s.fill,m=p&&a!==void 0?a:s.stroke,C=p&&o!==void 0?o:s.strokeWidth,f=p&&i!==void 0?i:s.size;let v;if(n){const S=h===0,y=h===this.markerSelectionData.length-1,w=u.y===this.min,x=u.y===this.max;v=n({datum:c,xValue:u.x,yValue:u.y,min:w,max:x,first:S,last:y,fill:g,stroke:m,strokeWidth:C,size:f,highlighted:p})}l.size=v&&v.size!=null?v.size:f,l.fill=v&&v.fill!=null?v.fill:g,l.stroke=v&&v.stroke!=null?v.stroke:m,l.strokeWidth=v&&v.strokeWidth!=null?v.strokeWidth:C,l.translationX=d.x,l.translationY=d.y,l.visible=v&&v.enabled!=null?v.enabled:s.enabled&&l.size>0})}updateStroke(e){const{strokePath:t,yData:s,line:i}=this,r=t.path;if(r.clear(),s.length<2)return;const a=e.length;let o=!0;for(let n=0;n<a;n++){const{point:l,seriesDatum:c}=e[n],h=l.x,d=l.y;c.y==null?o=!0:o?(r.moveTo(h,d),o=!1):r.lineTo(h,d)}t.lineJoin=t.lineCap="round",t.fill=void 0,t.stroke=i.stroke,t.strokeWidth=i.strokeWidth}updateFill(e){const{fillPath:t,yData:s,fill:i}=this,r=t.path,a=e.length;if(r.clear(),!(s.length<2)){for(let o=0;o<a;o++){const{point:n}=e[o],l=n.x,c=n.y;o>0?r.lineTo(l,c):r.moveTo(l,c)}r.closePath(),t.lineJoin="round",t.stroke=void 0,t.fill=i}}updateXCrosshairLine(){const{yScale:e,xCrosshairLine:t,highlightedDatum:s,crosshairs:{xLine:i}}=this;if(!i.enabled||s==null){t.strokeWidth=0;return}t.y1=e.range[0],t.y2=e.range[1],t.x1=t.x2=s.point.x,t.stroke=i.stroke,t.strokeWidth=i.strokeWidth??1,t.lineCap=i.lineCap==="round"||i.lineCap==="square"?i.lineCap:void 0;const{lineDash:r}=i;t.lineDash=Array.isArray(r)?r:getLineDash(t.lineCap,i.lineDash)}updateYCrosshairLine(){const{xScale:e,yCrosshairLine:t,highlightedDatum:s,crosshairs:{yLine:i}}=this;if(!i.enabled||s==null){t.strokeWidth=0;return}t.x1=e.range[0],t.x2=e.range[1],t.y1=t.y2=s.point.y,t.stroke=i.stroke,t.strokeWidth=i.strokeWidth??1,t.lineCap=i.lineCap==="round"||i.lineCap==="square"?i.lineCap:void 0;const{lineDash:r}=i;t.lineDash=Array.isArray(r)?r:getLineDash(t.lineCap,i.lineDash)}getTooltipHtml(e){const{dataType:t}=this,{seriesDatum:s}=e,i=s.y,r=s.x,a=this.formatNumericDatum(i),o=t==="array"||t==="object"?this.formatDatum(r):void 0,n={content:a,title:o},l=this.processedOptions?.tooltip?.renderer;return l?toTooltipHtml(l({context:this.context,datum:s,yValue:i,xValue:r}),n):toTooltipHtml(n)}},Label=class{constructor(){this.enabled=!0,this.fontSize=8,this.fontFamily="Verdana, sans-serif",this.fontStyle=void 0,this.fontWeight=void 0,this.color="rgba(70, 70, 70, 1)"}},{extent:extent3}=import_ag_charts_community40._Util,BarColumnLabel=class extends Label{constructor(){super(...arguments),this.formatter=void 0,this.placement="insideEnd"}},BarColumnSparkline=class extends Sparkline{constructor(){super(),this.fill="rgb(124, 181, 236)",this.stroke="silver",this.strokeWidth=0,this.paddingInner=.1,this.paddingOuter=.2,this.valueAxisDomain=void 0,this.formatter=void 0,this.axisLine=new import_ag_charts_community40._Scene.Line,this.bandWidth=0,this.sparklineGroup=new import_ag_charts_community40._Scene.Group,this.rectGroup=new import_ag_charts_community40._Scene.Group,this.labelGroup=new import_ag_charts_community40._Scene.Group,this.rectSelection=import_ag_charts_community40._Scene.Selection.select(this.rectGroup,import_ag_charts_community40._Scene.Rect),this.labelSelection=import_ag_charts_community40._Scene.Selection.select(this.labelGroup,import_ag_charts_community40._Scene.Text),this.nodeSelectionData=[],this.label=new BarColumnLabel,this.rootGroup.append(this.sparklineGroup),this.rectGroup.zIndex=50,this.axisLine.zIndex=500,this.labelGroup.zIndex=1500,this.sparklineGroup.append([this.rectGroup,this.axisLine,this.labelGroup]),this.axisLine.lineCap="round",this.label.enabled=!1}getNodeData(){return this.nodeSelectionData}update(){this.updateSelections(),this.updateNodes()}updateSelections(){const e=this.generateNodeData();e&&(this.nodeSelectionData=e,this.updateRectSelection(e),this.updateLabelSelection(e))}updateNodes(){this.updateRectNodes(),this.updateLabelNodes()}calculateStep(e){const{xScale:t,paddingInner:s,paddingOuter:i,smallestInterval:r}=this,o=(t.domain[1]-t.domain[0])/(r?.x??1)+1,l=Math.min(o,50),c=l-1;return e/Math.max(1,2*i+c*s+l)}updateYScaleDomain(){const{yScale:e,yData:t,valueAxisDomain:s}=this,i=extent3(t);let r=0,a=1;i!=null&&(r=this.min=i[0],a=this.max=i[1]),r=r<0?r:0,a=a<0?0:a,s&&(s[1]<a&&(s[1]=a),s[0]>r&&(s[0]=r)),e.domain=s||[r,a]}updateRectSelection(e){this.rectSelection.update(e)}updateRectNodes(){const{highlightedDatum:e,formatter:t,fill:s,stroke:i,strokeWidth:r}=this,{fill:a,stroke:o,strokeWidth:n}=this.highlightStyle;this.rectSelection.each((l,c,h)=>{const d=c===e,u=d&&a!==void 0?a:s,p=d&&o!==void 0?o:i,g=d&&n!==void 0?n:r;let m;const{x:C,y:f,width:v,height:S,seriesDatum:y}=c;if(t){const w=h===0,x=h===this.nodeSelectionData.length-1,b=y.y===this.min,T=y.y===this.max;m=t({datum:c,xValue:y.x,yValue:y.y,width:v,height:S,min:b,max:T,first:w,last:x,fill:u,stroke:p,strokeWidth:g,highlighted:d})}l.fill=m&&m.fill||u,l.stroke=m&&m.stroke||p,l.strokeWidth=m&&m.strokeWidth||g,l.x=C,l.y=f,l.width=v,l.height=S,l.visible=l.height>0})}updateLabelSelection(e){this.labelSelection.update(e,t=>{t.tag=1,t.pointerEvents=import_ag_charts_community40._Scene.PointerEvents.None})}updateLabelNodes(){const{label:{enabled:e,fontStyle:t,fontWeight:s,fontSize:i,fontFamily:r,color:a}}=this;this.labelSelection.each((o,n)=>{const l=n.label;l&&e?(o.fontStyle=t,o.fontWeight=s,o.fontSize=i,o.fontFamily=r,o.textAlign=l.textAlign,o.textBaseline=l.textBaseline,o.text=l.text,o.x=l.x,o.y=l.y,o.fill=a,o.visible=!0):o.visible=!1})}getTooltipHtml(e){const{dataType:t}=this,{seriesDatum:s}=e,i=s.y,r=s.x,a=this.formatNumericDatum(i),o=t==="array"||t==="object"?this.formatDatum(r):void 0,n={content:a,title:o},l=this.processedOptions?.tooltip?.renderer;return l?toTooltipHtml(l({context:this.context,datum:s,yValue:i,xValue:r}),n):toTooltipHtml(n)}formatLabelValue(e){return e%1!==0?e.toFixed(1):e.toFixed(0)}},{isNumber:isNumber2}=import_ag_charts_community39._Util,{BandScale:BandScale3}=import_ag_charts_community39._Scale,BarSparkline=class extends BarColumnSparkline{updateYScaleRange(){const{seriesRect:e,yScale:t}=this;t.range=[0,e.width]}updateXScaleRange(){const{xScale:e,seriesRect:t,paddingOuter:s,paddingInner:i}=this;if(e instanceof BandScale3)e.range=[0,t.height],e.paddingInner=i,e.paddingOuter=s;else{const r=this.calculateStep(t.height),a=r*s;this.bandWidth=r*(1-i),e.range=[a,t.height-a-this.bandWidth]}}updateAxisLine(){const{yScale:e,axis:{stroke:t,strokeWidth:s},axisLine:i,seriesRect:r}=this,a=e.convert(0);i.x1=i.x2=a,i.y1=0,i.y2=r.height,i.stroke=t,i.strokeWidth=s+(s%2===1?1:0)}generateNodeData(){const{data:e,yData:t,xData:s,xScale:i,yScale:r,fill:a,stroke:o,strokeWidth:n,label:l}=this;if(!e)return;const{fontStyle:c,fontWeight:h,fontSize:d,fontFamily:u,color:p,formatter:g,placement:m}=l,C=[],f=r.convert(0),v=!(i instanceof BandScale3);for(let S=0,y=t.length;S<y;S++){let w=t[S];const x=s[S],b=w===void 0;b&&(w=0);const T=i.convert(v?i.toDomain(x):x),M=Math.min(w===void 0?NaN:r.convert(w),f),P=Math.max(w===void 0?NaN:r.convert(w),f),R=v?this.bandWidth:i.bandwidth,D=P-M,F={x:f,y:T};let A;g?A=g({value:w}):A=w!==void 0&&isNumber2(w)?this.formatLabelValue(w):"";const G=T+R/2;let L;const N="middle";let k;const E=w!==void 0&&w>=0,I=4;if(m==="center")L=M+D/2,k="center";else if(m==="outsideEnd")L=M+(E?D+I:-I),k=E?"start":"end";else if(m==="insideEnd"){L=M+(E?D-I:I),k=E?"end":"start";const V=import_ag_charts_community39._ModuleSupport.CachedTextMeasurerPool.measureText(A,{font:u}).width||20,U=f+V,H=f-V;(E&&L<U||!E&&L>H)&&(L=f+I*(E?1:-1),k=E?"start":"end")}else L=f+I*(E?1:-1),k=E?"start":"end";C.push({x:M,y:T,width:D,height:R,fill:a,stroke:o,strokeWidth:n,seriesDatum:{x,y:b?void 0:w},point:F,label:{x:L,y:G,text:A,fontStyle:c,fontWeight:h,fontSize:d,fontFamily:u,textAlign:k,textBaseline:N,fill:p}})}return C}getDistance(e,t){return Math.abs(e.y-t.y)}},{isNumber:isNumber3}=import_ag_charts_community41._Util,{BandScale:BandScale4}=import_ag_charts_community41._Scale,ColumnSparkline=class extends BarColumnSparkline{updateYScaleRange(){const{seriesRect:e,yScale:t}=this;t.range=[e.height,0]}updateXScaleRange(){const{xScale:e,seriesRect:t,paddingOuter:s,paddingInner:i}=this;if(e instanceof BandScale4)e.range=[0,t.width],e.paddingInner=i,e.paddingOuter=s;else{const r=this.calculateStep(t.width),a=r*s;this.bandWidth=r*(1-i),e.range=[a,t.width-a-this.bandWidth]}}updateAxisLine(){const{yScale:e,axis:{stroke:t,strokeWidth:s},axisLine:i,seriesRect:r}=this,a=e.convert(0);i.x1=0,i.x2=r.width,i.y1=i.y2=a,i.stroke=t,i.strokeWidth=s+(s%2===1?1:0)}generateNodeData(){const{data:e,yData:t,xData:s,xScale:i,yScale:r,fill:a,stroke:o,strokeWidth:n,label:l}=this;if(!e)return;const{fontStyle:c,fontWeight:h,fontSize:d,fontFamily:u,color:p,formatter:g,placement:m}=l,C=[],f=r.convert(0),v=!(i instanceof BandScale4);for(let S=0,y=t.length;S<y;S++){let w=t[S];const x=s[S],b=w===void 0;b&&(w=0);const T=Math.min(w===void 0?NaN:r.convert(w),f),M=i.convert(v?i.toDomain(x):x),P=Math.max(w===void 0?NaN:r.convert(w),f),R=v?this.bandWidth:i.bandwidth,D=P-T,F={x:M+R/2,y:f};let A;g?A=g({value:w}):A=w!==void 0&&isNumber3(w)?this.formatLabelValue(w):"";const G=M+R/2;let L;const N="center";let k;const E=w!==void 0&&w>=0,I=2;if(m==="center")L=T+D/2,k="middle";else if(m==="outsideEnd")L=T+(E?-I:D+I),k=E?"bottom":"top";else if(m==="insideEnd"){L=T+(E?I:D-I),k=E?"top":"bottom";const V=import_ag_charts_community41._ModuleSupport.CachedTextMeasurerPool.measureText(A,{font:u}).height||10,U=f-V,H=f+V;(E&&L>U||!E&&L<H)&&(L=f+I*(E?-1:1),k=E?"bottom":"top")}else L=f+I*(E?-1:1),k=E?"bottom":"top";C.push({x:M,y:T,width:R,height:D,fill:a,stroke:o,strokeWidth:n,seriesDatum:{x,y:b?void 0:w},point:F,label:{x:G,y:L,text:A,fontStyle:c,fontWeight:h,fontSize:d,fontFamily:u,textAlign:N,textBaseline:k,fill:p}})}return C}},{extent:extent4}=import_ag_charts_community42._Util,{BandScale:BandScale5}=import_ag_charts_community42._Scale,SparklineMarker2=class{constructor(){this.enabled=!0,this.shape="circle",this.size=0,this.fill="rgb(124, 181, 236)",this.stroke="rgb(124, 181, 236)",this.strokeWidth=1,this.formatter=void 0}},SparklineLine2=class{constructor(){this.stroke="rgb(124, 181, 236)",this.strokeWidth=1}},SparklineCrosshairs2=class{constructor(){this.xLine={enabled:!0,stroke:"rgba(0,0,0, 0.54)",strokeWidth:1,lineDash:"solid",lineCap:void 0},this.yLine={enabled:!1,stroke:"rgba(0,0,0, 0.54)",strokeWidth:1,lineDash:"solid",lineCap:void 0}}},LineSparkline=class extends Sparkline{constructor(){super(),this.linePath=new import_ag_charts_community42._Scene.Path,this.xCrosshairLine=new import_ag_charts_community42._Scene.Line,this.yCrosshairLine=new import_ag_charts_community42._Scene.Line,this.lineSparklineGroup=new import_ag_charts_community42._Scene.Group,this.markers=new import_ag_charts_community42._Scene.Group,this.markerSelection=import_ag_charts_community42._Scene.Selection.select(this.markers,()=>this.markerFactory()),this.markerSelectionData=[],this.marker=new SparklineMarker2,this.line=new SparklineLine2,this.crosshairs=new SparklineCrosshairs2,this.rootGroup.append(this.lineSparklineGroup),this.linePath.zIndex=1e3,this.xCrosshairLine.zIndex=2e3,this.yCrosshairLine.zIndex=2e3,this.markers.zIndex=2500,this.lineSparklineGroup.append([this.linePath,this.xCrosshairLine,this.yCrosshairLine,this.markers])}getNodeData(){return this.markerSelectionData}markerFactory(){const{shape:e}=this.marker,t=getMarker(e);return new t}onMarkerShapeChange(){this.markerSelection=this.markerSelection.clear(),this.scheduleLayout()}update(){const e=this.generateNodeData();e&&(this.markerSelectionData=e,this.updateSelection(e),this.updateNodes(),this.updateLine())}updateYScaleDomain(){const{yData:e,yScale:t}=this,s=extent4(e);let i=0,r=1;if(s!=null&&(i=this.min=s[0],r=this.max=s[1]),i===r){const a=Math.abs(i*.01);i-=a,r+=a}t.domain=[i,r]}generateNodeData(){const{data:e,yData:t,xData:s,xScale:i,yScale:r}=this;if(!e)return;const a=!(i instanceof BandScale5),o=a?0:i.bandwidth/2,n=[];for(let l=0;l<t.length;l++){const c=t[l],h=s[l];if(c==null)continue;const d=i.convert(a?i.toDomain(h):h)+o,u=c===void 0?NaN:r.convert(c);n.push({seriesDatum:{x:h,y:c},point:{x:d,y:u}})}return n}updateSelection(e){this.markerSelection.update(e)}updateNodes(){const{highlightedDatum:e,highlightStyle:t,marker:s}=this,{size:i,fill:r,stroke:a,strokeWidth:o}=t,n=s.formatter;this.markerSelection.each((l,c,h)=>{const d=c===e,u=d&&r!==void 0?r:s.fill,p=d&&a!==void 0?a:s.stroke,g=d&&o!==void 0?o:s.strokeWidth,m=d&&i!==void 0?i:s.size;let C;const{seriesDatum:f,point:v}=c;if(n){const S=h===0,y=h===this.markerSelectionData.length-1,w=f.y===this.min,x=f.y===this.max;C=n({datum:c,xValue:f.x,yValue:f.y,min:w,max:x,first:S,last:y,fill:u,stroke:p,strokeWidth:g,size:m,highlighted:d})}l.size=C&&C.size!=null?C.size:m,l.fill=C&&C.fill!=null?C.fill:u,l.stroke=C&&C.stroke!=null?C.stroke:p,l.strokeWidth=C&&C.strokeWidth!=null?C.strokeWidth:g,l.translationX=v.x,l.translationY=v.y,l.visible=C&&C.enabled!=null?C.enabled:s.enabled&&l.size>0})}updateLine(){const{linePath:e,yData:t,xData:s,xScale:i,yScale:r,line:a}=this,o=e.path;if(o.clear(),t.length<2)return;const n=!(i instanceof BandScale5),l=t.length,c=n?0:i.bandwidth/2;let h=!0;for(let d=0;d<l;d++){const u=s[d],p=t[d],g=i.convert(n?i.toDomain(u):u)+c,m=p===void 0?NaN:r.convert(p);p==null?h=!0:h?(o.moveTo(g,m),h=!1):o.lineTo(g,m)}e.fill=void 0,e.stroke=a.stroke,e.strokeWidth=a.strokeWidth}updateXCrosshairLine(){const{yScale:e,xCrosshairLine:t,highlightedDatum:s,crosshairs:{xLine:i}}=this;if(!i.enabled||s==null){t.strokeWidth=0;return}t.y1=e.range[0],t.y2=e.range[1],t.x1=t.x2=s.point.x,t.stroke=i.stroke,t.strokeWidth=i.strokeWidth??1,t.lineCap=i.lineCap==="round"||i.lineCap==="square"?i.lineCap:void 0;const{lineDash:r}=i;t.lineDash=Array.isArray(r)?r:getLineDash(t.lineCap,i.lineDash)}updateYCrosshairLine(){const{xScale:e,yCrosshairLine:t,highlightedDatum:s,crosshairs:{yLine:i}}=this;if(!i.enabled||s==null){t.strokeWidth=0;return}t.x1=e.range[0],t.x2=e.range[1],t.y1=t.y2=s.point.y,t.stroke=i.stroke,t.strokeWidth=i.strokeWidth??1,t.lineCap=i.lineCap==="round"||i.lineCap==="square"?i.lineCap:void 0;const{lineDash:r}=i;t.lineDash=Array.isArray(r)?r:getLineDash(t.lineCap,i.lineDash)}getTooltipHtml(e){const{dataType:t}=this,{seriesDatum:s}=e,i=s.y,r=s.x,a=this.formatNumericDatum(i),o=t==="array"||t==="object"?this.formatDatum(r):void 0,n={content:a,title:o},l=this.processedOptions?.tooltip?.renderer;return l?toTooltipHtml(l({context:this.context,datum:s,yValue:i,xValue:r}),n):toTooltipHtml(n)}},{isNumber:isNumber4}=import_ag_charts_community35._Util,AgSparkline=class{static create(e,t){e=import_ag_charts_community35._Util.deepClone(e);const s=getSparklineInstance(e.type);return t&&(s.tooltip=t),initSparkline(s,e),initSparklineByType(s,e),e.data&&(s.data=e.data),s.processedOptions=e,s}};function getSparklineInstance(e="line"){switch(e){case"column":return new ColumnSparkline;case"bar":return new BarSparkline;case"area":return new AreaSparkline;case"line":default:return new LineSparkline}}function initSparklineByType(e,t){switch(t.type){case"bar":initBarColumnSparkline(e,t);break;case"column":initBarColumnSparkline(e,t);break;case"area":initAreaSparkline(e,t);break;case"line":default:initLineSparkline(e,t);break}}function initSparkline(e,t){setValueIfPropertyExists(e,"context",t.context,t),setValueIfPropertyExists(e,"width",t.width,t),setValueIfPropertyExists(e,"height",t.height,t),setValueIfPropertyExists(e,"container",t.container,t),setValueIfPropertyExists(e,"xKey",t.xKey,t),setValueIfPropertyExists(e,"yKey",t.yKey,t),t.padding&&initPaddingOptions(e.padding,t.padding),t.axis&&initAxisOptions(e.axis,t.axis),t.highlightStyle&&initHighlightStyleOptions(e.highlightStyle,t.highlightStyle)}function initLineSparkline(e,t){t.marker&&initMarkerOptions(e.marker,t.marker),t.line&&initLineOptions(e.line,t.line),t.crosshairs&&initCrosshairsOptions(e.crosshairs,t.crosshairs)}function initAreaSparkline(e,t){setValueIfPropertyExists(e,"fill",t.fill,t),t.marker&&initMarkerOptions(e.marker,t.marker),t.line&&initLineOptions(e.line,t.line),t.crosshairs&&initCrosshairsOptions(e.crosshairs,t.crosshairs)}function initBarColumnSparkline(e,t){setValueIfPropertyExists(e,"valueAxisDomain",t.valueAxisDomain,t),setValueIfPropertyExists(e,"fill",t.fill,t),setValueIfPropertyExists(e,"stroke",t.stroke,t),setValueIfPropertyExists(e,"strokeWidth",t.strokeWidth,t),setValueIfPropertyExists(e,"paddingInner",t.paddingInner,t),setValueIfPropertyExists(e,"paddingOuter",t.paddingOuter,t),setValueIfPropertyExists(e,"formatter",t.formatter,t),t.label&&initLabelOptions(e.label,t.label)}function initPaddingOptions(e,t){setValueIfPropertyExists(e,"top",t.top,t),setValueIfPropertyExists(e,"right",t.right,t),setValueIfPropertyExists(e,"bottom",t.bottom,t),setValueIfPropertyExists(e,"left",t.left,t)}function initMarkerOptions(e,t){setValueIfPropertyExists(e,"enabled",t.enabled,t),setValueIfPropertyExists(e,"size",t.size,t),setValueIfPropertyExists(e,"shape",t.shape,t),setValueIfPropertyExists(e,"fill",t.fill,t),setValueIfPropertyExists(e,"stroke",t.stroke,t),setValueIfPropertyExists(e,"strokeWidth",t.strokeWidth,t),setValueIfPropertyExists(e,"formatter",t.formatter,t)}function initLabelOptions(e,t){setValueIfPropertyExists(e,"enabled",t.enabled,t),setValueIfPropertyExists(e,"fontStyle",t.fontStyle,t),setValueIfPropertyExists(e,"fontWeight",t.fontWeight,t),setValueIfPropertyExists(e,"fontSize",t.fontSize,t),setValueIfPropertyExists(e,"fontFamily",t.fontFamily,t),setValueIfPropertyExists(e,"textAlign",t.textAlign,t),setValueIfPropertyExists(e,"textBaseline",t.textBaseline,t),setValueIfPropertyExists(e,"color",t.color,t),setValueIfPropertyExists(e,"formatter",t.formatter,t),setValueIfPropertyExists(e,"placement",t.placement,t)}function initLineOptions(e,t){setValueIfPropertyExists(e,"stroke",t.stroke,t),setValueIfPropertyExists(e,"strokeWidth",t.strokeWidth,t)}function initAxisOptions(e,t){setValueIfPropertyExists(e,"type",t.type,t),setValueIfPropertyExists(e,"stroke",t.stroke,t),setValueIfPropertyExists(e,"strokeWidth",t.strokeWidth,t)}function initHighlightStyleOptions(e,t){setValueIfPropertyExists(e,"fill",t.fill,t),setValueIfPropertyExists(e,"size",t.size,t),setValueIfPropertyExists(e,"stroke",t.stroke,t),setValueIfPropertyExists(e,"strokeWidth",t.strokeWidth,t)}function initCrosshairsOptions(e,t){e.xLine&&t.xLine&&initCrosshairLineOptions(e.xLine,t.xLine),e.yLine&&t.yLine&&initCrosshairLineOptions(e.yLine,t.yLine)}function initCrosshairLineOptions(e,t){setValueIfPropertyExists(e,"enabled",t.enabled,t),setValueIfPropertyExists(e,"stroke",t.stroke,t),setValueIfPropertyExists(e,"strokeWidth",t.strokeWidth,t),setValueIfPropertyExists(e,"lineDash",t.lineDash,t),setValueIfPropertyExists(e,"lineCap",t.lineCap,t)}var offsetValidator=(e,t,s)=>isNumber4(t)?!0:((0,import_core295._warnOnce)(`${e} must be a number, the value you provided is not a valid number. Using the default of ${s}px.`),!1),validators={xOffset:offsetValidator,yOffset:offsetValidator};function setValueIfPropertyExists(e,t,s,i){if(t in i)if(t in e){const r=validators[t];(r?r(t,s,e[t]):!0)&&e[t]!==s&&(e[t]=s)}else(0,import_core295._warnOnce)(`Property ${t} does not exist on the target object.`)}var SparklineCellRenderer=class extends import_core294.Component{constructor(){super(`<div class="ag-sparkline-wrapper">
|
|
458
458
|
<span data-ref="eSparkline"></span>
|
|
459
|
-
</div>`),this.eSparkline=import_core294.RefPlaceholder}wireBeans(e){this.resizeObserverService=e.resizeObserverService,this.sparklineTooltipSingleton=e.sparklineTooltipSingleton}init(e){let t=!0;const s=()=>{const{clientWidth:r,clientHeight:a}=this.getGui();if(!(r===0||a===0))if(t){const o={data:e.value,width:r,height:a,context:{data:e.data},...e.sparklineOptions};this.sparkline=AgSparkline.create(o,this.sparklineTooltipSingleton.getSparklineTooltip()),this.eSparkline.appendChild(this.sparkline.canvasElement),t=!1}else this.sparkline.width=r,this.sparkline.height=a},i=this.resizeObserverService.observeResize(this.getGui(),s);this.addDestroyFunc(()=>i())}refresh(e){return this.sparkline?(this.sparkline.data=e.value,this.sparkline.context={data:e.data},!0):!1}destroy(){this.sparkline&&this.sparkline.destroy(),super.destroy()}},SparklineTooltipSingleton=class extends import_core298.BeanStub{constructor(){super(...arguments),this.beanName="sparklineTooltipSingleton"}postConstruct(){this.tooltip=new SparklineTooltip}getSparklineTooltip(){return this.tooltip}destroy(){this.tooltip&&this.tooltip.destroy(),super.destroy()}},VERSION17="32.
|
|
459
|
+
</div>`),this.eSparkline=import_core294.RefPlaceholder}wireBeans(e){this.resizeObserverService=e.resizeObserverService,this.sparklineTooltipSingleton=e.sparklineTooltipSingleton}init(e){let t=!0;const s=()=>{const{clientWidth:r,clientHeight:a}=this.getGui();if(!(r===0||a===0))if(t){const o={data:e.value,width:r,height:a,context:{data:e.data},...e.sparklineOptions};this.sparkline=AgSparkline.create(o,this.sparklineTooltipSingleton.getSparklineTooltip()),this.eSparkline.appendChild(this.sparkline.canvasElement),t=!1}else this.sparkline.width=r,this.sparkline.height=a},i=this.resizeObserverService.observeResize(this.getGui(),s);this.addDestroyFunc(()=>i())}refresh(e){return this.sparkline?(this.sparkline.data=e.value,this.sparkline.context={data:e.data},!0):!1}destroy(){this.sparkline&&this.sparkline.destroy(),super.destroy()}},SparklineTooltipSingleton=class extends import_core298.BeanStub{constructor(){super(...arguments),this.beanName="sparklineTooltipSingleton"}postConstruct(){this.tooltip=new SparklineTooltip}getSparklineTooltip(){return this.tooltip}destroy(){this.tooltip&&this.tooltip.destroy(),super.destroy()}},VERSION17="32.3.0",SparklinesModule=(0,import_core292._defineModule)({version:VERSION17,moduleName:import_core292.ModuleNames.SparklinesModule,beans:[SparklineTooltipSingleton],userComponents:[{name:"agSparklineCellRenderer",classImp:SparklineCellRenderer}],dependantModules:[EnterpriseCoreModule]}),import_core308=require("ag-grid-community"),import_core300=require("ag-grid-community"),import_core299=require("ag-grid-community"),AgNameValue=class extends import_core299.Component{constructor(){super(`<div class="ag-status-name-value">
|
|
460
460
|
<span data-ref="eLabel"></span>:
|
|
461
461
|
<span data-ref="eValue" class="ag-status-name-value-value"></span>
|
|
462
462
|
</div>`),this.eLabel=import_core299.RefPlaceholder,this.eValue=import_core299.RefPlaceholder}setLabel(e,t){this.setDisplayed(!1);const s=this.localeService.getLocaleTextFunc();this.eLabel.innerHTML=s(e,t)}setValue(e){this.eValue.innerHTML=e}},AgNameValueSelector={selector:"AG-NAME-VALUE",component:AgNameValue},AggregationComp=class extends import_core300.Component{constructor(){super(`<div class="ag-status-panel ag-status-panel-aggregations">
|
|
@@ -469,4 +469,4 @@ Please turn off ${t} to enable Excel table exports.`)}static getTableNameFromInd
|
|
|
469
469
|
<div data-ref="eStatusBarLeft" class="ag-status-bar-left" role="status"></div>
|
|
470
470
|
<div data-ref="eStatusBarCenter" class="ag-status-bar-center" role="status"></div>
|
|
471
471
|
<div data-ref="eStatusBarRight" class="ag-status-bar-right" role="status"></div>
|
|
472
|
-
</div>`),this.updateQueued=!1,this.panelsPromise=import_core306.AgPromise.resolve(),this.eStatusBarLeft=import_core306.RefPlaceholder,this.eStatusBarCenter=import_core306.RefPlaceholder,this.eStatusBarRight=import_core306.RefPlaceholder,this.compDestroyFunctions={}}wireBeans(e){this.userComponentFactory=e.userComponentFactory,this.statusBarService=e.statusBarService}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=import_core306.AgPromise.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.statusBarService.getStatusPanel(r);if(a?.refresh){const o=this.gos.addGridCommonParams(i.statusPanelParams??{});a.refresh(o)&&(s.set(r,a),delete this.compDestroyFunctions[r],(0,import_core306._removeFromParent)(a.getGui()))}}),this.resetStatusBar(),t&&this.processStatusPanels(s)}resetStatusBar(){this.eStatusBarLeft.innerHTML="",this.eStatusBarCenter.innerHTML="",this.eStatusBarRight.innerHTML="",this.destroyComponents(),this.statusBarService.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,o=s.get(a);let n;if(o)n=import_core306.AgPromise.resolve(o);else{const l={};if(n=this.userComponentFactory.getStatusPanelCompDetails(r,l).newAgStackInstance(),n==null)return}i.push({key:a,promise:n})}),import_core306.AgPromise.all(i.map(r=>r.promise)).then(()=>{i.forEach(r=>{r.promise.then(a=>{const o=()=>{this.destroyBean(a)};this.isAlive()?(this.statusBarService.registerStatusPanel(r.key,a),t.appendChild(a.getGui()),this.compDestroyFunctions[r.key]=o):o()})})})}},AgStatusBarSelector={selector:"AG-STATUS-BAR",component:AgStatusBar},StatusBarService=class extends import_core307.BeanStub{constructor(){super(),this.beanName="statusBarService",this.allComponents=new Map}registerStatusPanel(e,t){this.allComponents.set(e,t)}unregisterStatusPanel(e){this.allComponents.delete(e)}unregisterAllComponents(){this.allComponents.clear()}getStatusPanel(e){return this.allComponents.get(e)}getStatusPanelSelector(){return AgStatusBarSelector}destroy(){this.unregisterAllComponents(),super.destroy()}},VERSION18="32.
|
|
472
|
+
</div>`),this.updateQueued=!1,this.panelsPromise=import_core306.AgPromise.resolve(),this.eStatusBarLeft=import_core306.RefPlaceholder,this.eStatusBarCenter=import_core306.RefPlaceholder,this.eStatusBarRight=import_core306.RefPlaceholder,this.compDestroyFunctions={}}wireBeans(e){this.userComponentFactory=e.userComponentFactory,this.statusBarService=e.statusBarService}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=import_core306.AgPromise.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.statusBarService.getStatusPanel(r);if(a?.refresh){const o=this.gos.addGridCommonParams(i.statusPanelParams??{});a.refresh(o)&&(s.set(r,a),delete this.compDestroyFunctions[r],(0,import_core306._removeFromParent)(a.getGui()))}}),this.resetStatusBar(),t&&this.processStatusPanels(s)}resetStatusBar(){this.eStatusBarLeft.innerHTML="",this.eStatusBarCenter.innerHTML="",this.eStatusBarRight.innerHTML="",this.destroyComponents(),this.statusBarService.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,o=s.get(a);let n;if(o)n=import_core306.AgPromise.resolve(o);else{const l={};if(n=this.userComponentFactory.getStatusPanelCompDetails(r,l).newAgStackInstance(),n==null)return}i.push({key:a,promise:n})}),import_core306.AgPromise.all(i.map(r=>r.promise)).then(()=>{i.forEach(r=>{r.promise.then(a=>{const o=()=>{this.destroyBean(a)};this.isAlive()?(this.statusBarService.registerStatusPanel(r.key,a),t.appendChild(a.getGui()),this.compDestroyFunctions[r.key]=o):o()})})})}},AgStatusBarSelector={selector:"AG-STATUS-BAR",component:AgStatusBar},StatusBarService=class extends import_core307.BeanStub{constructor(){super(),this.beanName="statusBarService",this.allComponents=new Map}registerStatusPanel(e,t){this.allComponents.set(e,t)}unregisterStatusPanel(e){this.allComponents.delete(e)}unregisterAllComponents(){this.allComponents.clear()}getStatusPanel(e){return this.allComponents.get(e)}getStatusPanelSelector(){return AgStatusBarSelector}destroy(){this.unregisterAllComponents(),super.destroy()}},VERSION18="32.3.0",StatusBarCoreModule=(0,import_core308._defineModule)({version:VERSION18,moduleName:`${import_core308.ModuleNames.StatusBarModule}-core`,beans:[StatusBarService],userComponents:[{name:"agAggregationComponent",classImp:AggregationComp},{name:"agSelectedRowCountComponent",classImp:SelectedRowsComp},{name:"agTotalRowCountComponent",classImp:TotalRowsComp},{name:"agFilteredRowCountComponent",classImp:FilteredRowsComp},{name:"agTotalAndFilteredRowCountComponent",classImp:TotalAndFilteredRowsComp}],dependantModules:[EnterpriseCoreModule]}),StatusBarApiModule=(0,import_core308._defineModule)({version:VERSION18,moduleName:`${import_core308.ModuleNames.StatusBarModule}-api`,apiFunctions:{getStatusPanel},dependantModules:[StatusBarCoreModule]}),StatusBarModule=(0,import_core308._defineModule)({version:VERSION18,moduleName:import_core308.ModuleNames.StatusBarModule,dependantModules:[StatusBarCoreModule,StatusBarApiModule]}),import_core310=require("ag-grid-community"),import_core312=require("ag-grid-community"),VERSION19="32.3.0",ViewportRowModel=class extends import_core312.BeanStub{constructor(){super(...arguments),this.beanName="rowModel",this.firstRow=-1,this.lastRow=-1,this.rowCount=-1,this.rowNodesByIndex={}}wireBeans(e){this.rowRenderer=e.rowRenderer,this.focusService=e.focusService,this.beans=e}ensureRowHeightsValid(e,t,s,i){return!1}postConstruct(){this.rowHeight=(0,import_core312._getRowHeightAsNumber)(this.gos),this.addManagedEventListeners({viewportChanged:this.onViewportChanged.bind(this)}),this.addManagedPropertyListener("viewportDatasource",()=>this.updateDatasource()),this.addManagedPropertyListener("rowHeight",()=>{this.rowHeight=(0,import_core312._getRowHeightAsNumber)(this.gos),this.updateRowHeights()})}start(){this.updateDatasource()}isLastRowIndexKnown(){return!0}destroy(){this.destroyDatasource(),super.destroy()}destroyDatasource(){this.viewportDatasource&&(this.viewportDatasource.destroy&&this.viewportDatasource.destroy(),this.rowRenderer.datasourceChanged(),this.firstRow=-1,this.lastRow=-1)}updateDatasource(){const e=this.gos.get("viewportDatasource");e&&this.setViewportDatasource(e)}getViewportRowModelPageSize(){return this.gos.get("viewportRowModelPageSize")}getViewportRowModelBufferSize(){return this.gos.get("viewportRowModelBufferSize")}calculateFirstRow(e){const t=this.getViewportRowModelBufferSize(),s=this.getViewportRowModelPageSize(),i=e-t;return i<0?0:Math.floor(i/s)*s}calculateLastRow(e){if(e===-1)return e;const t=this.getViewportRowModelBufferSize(),s=this.getViewportRowModelPageSize(),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.viewportDatasource&&this.viewportDatasource.setViewportRange(this.firstRow,this.lastRow))}purgeRowsNotInViewport(){Object.keys(this.rowNodesByIndex).forEach(e=>{const t=parseInt(e,10);if(t<this.firstRow||t>this.lastRow){if(this.isRowFocused(t))return;delete this.rowNodesByIndex[t]}})}isRowFocused(e){const t=this.focusService.getFocusCellToUseAfterRefresh();return!t||t.rowPinned!=null?!1:t.rowIndex===e}setViewportDatasource(e){this.destroyDatasource(),this.viewportDatasource=e,this.rowCount=-1,e.init?e.init({setRowCount:this.setRowCount.bind(this),setRowData:this.setRowData.bind(this),getRow:this.getRow.bind(this)}):(0,import_core312._warnOnce)("viewport is missing init method.")}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){return{rowHeight:this.rowHeight,rowTop:this.rowHeight*e}}updateRowHeights(){this.forEachNode(e=>{e.setRowHeight(this.rowHeight),e.setRowTop(this.rowHeight*e.rowIndex)}),this.eventService.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 o=[],n=s<=i?s:i,l=s<=i?i:s;for(let c=n;c<=l;c++)o.push(this.rowNodesByIndex[c]);return o}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){(0,import_core312._iterateObject)(e,(t,s)=>{const i=parseInt(t,10);if(i>=this.firstRow&&i<=this.lastRow){let r=this.rowNodesByIndex[i];(0,import_core312._missing)(r)&&(r=this.createBlankRowNode(i),this.rowNodesByIndex[i]=r),r.setDataAndId(s,i.toString())}})}createBlankRowNode(e){const t=new import_core312.RowNode(this.beans);return t.setRowHeight(this.rowHeight),t.setRowTop(this.rowHeight*e),t.setRowIndex(e),t}setRowCount(e,t=!1){e!==this.rowCount&&(this.rowCount=e,this.eventService.dispatchEventOnce({type:"rowCountReady"}),this.eventService.dispatchEvent({type:"modelUpdated",newData:!1,newPage:!1,keepRenderedRows:t,animate:!1}))}isRowPresent(e){return!!this.getRowNode(e.id)}},ViewportRowModelModule=(0,import_core310._defineModule)({version:VERSION19,moduleName:import_core310.ModuleNames.ViewportRowModelModule,rowModel:"viewport",beans:[ViewportRowModel],dependantModules:[EnterpriseCoreModule]});__reExport(main_exports,require("ag-grid-community"),module.exports),__reExport(main_exports,require("ag-grid-community"),module.exports),__reExport(main_exports,main_esm_exports,module.exports),import_core313.ModuleRegistry.__registerModules([import_core313.CommunityFeaturesModule,import_client_side_row_model.ClientSideRowModelModule,import_infinite_row_model.InfiniteRowModelModule,import_csv_export6.CsvExportModule,AdvancedFilterModule,GridChartsModule,ClipboardModule,ColumnsToolPanelModule,ExcelExportModule,FiltersToolPanelModule,MasterDetailModule,MenuModule,MultiFilterModule,RangeSelectionModule,RichSelectModule,RowGroupingModule,ServerSideRowModelModule,SetFilterModule,SideBarModule,SparklinesModule,StatusBarModule,ViewportRowModelModule],!1,void 0);
|