!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.agGrid=t():e.agGrid=t()}(self,function(){return function(){var e={95372:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.advancedFilterCSS=void 0,t.advancedFilterCSS='.ag-advanced-filter-header{align-items:center;background-color:var(--ag-header-background-color);border-bottom:var(--ag-header-row-border);display:flex;position:relative}.ag-advanced-filter{align-items:center;display:flex;width:100%}.ag-advanced-filter-buttons{display:contents}.ag-advanced-filter-header-cell{height:100%;padding-left:var(--ag-cell-horizontal-padding);padding-right:var(--ag-cell-horizontal-padding)}.ag-advanced-filter-apply-button,.ag-advanced-filter-builder-button{align-items:center;background-color:unset;border:0;display:flex;font-size:var(--ag-font-size);font-weight:600;line-height:normal;padding:var(--ag-spacing);white-space:nowrap;&:where(.ag-standard-button):where(:not(:disabled)){cursor:pointer;&:where(.ag-standard-button):hover{background-color:var(--ag-row-hover-color)}}}:where(.ag-ltr) .ag-advanced-filter-apply-button,:where(.ag-ltr) .ag-advanced-filter-builder-button{margin-left:calc(var(--ag-spacing)*2)}:where(.ag-rtl) .ag-advanced-filter-apply-button,:where(.ag-rtl) .ag-advanced-filter-builder-button{margin-right:calc(var(--ag-spacing)*2)}:where(.ag-ltr) .ag-advanced-filter-builder-button-label{margin-left:var(--ag-spacing)}:where(.ag-rtl) .ag-advanced-filter-builder-button-label{margin-right:var(--ag-spacing)}.ag-advanced-filter-builder{display:flex;flex-direction:column;-webkit-user-select:none;-moz-user-select:none;user-select:none;width:100%}.ag-advanced-filter-builder-list{flex:1;overflow:auto}.ag-advanced-filter-builder-button-panel{border-top:var(--ag-advanced-filter-builder-button-bar-border);display:flex;justify-content:flex-end;padding:var(--ag-widget-container-vertical-padding) var(--ag-widget-container-horizontal-padding)}:where(.ag-ltr) .ag-advanced-filter-builder-apply-button,:where(.ag-ltr) .ag-advanced-filter-builder-cancel-button{margin-left:calc(var(--ag-spacing)*2)}:where(.ag-rtl) .ag-advanced-filter-builder-apply-button,:where(.ag-rtl) .ag-advanced-filter-builder-cancel-button{margin-right:calc(var(--ag-spacing)*2)}.ag-advanced-filter-builder-item-wrapper{align-items:center;display:flex;flex:1 1 auto;justify-content:space-between;overflow:hidden}:where(.ag-ltr) .ag-advanced-filter-builder-item-wrapper{padding-left:calc(var(--ag-icon-size)/2);padding-right:var(--ag-icon-size)}:where(.ag-rtl) .ag-advanced-filter-builder-item-wrapper{padding-left:var(--ag-icon-size);padding-right:calc(var(--ag-icon-size)/2)}:where(.ag-virtual-list-viewport) .ag-advanced-filter-builder-item-wrapper .ag-tab-guard{position:absolute}.ag-advanced-filter-builder-item-tree-line{width:var(--ag-advanced-filter-builder-indent-size)}.ag-advanced-filter-builder-item-tree-line-root{width:var(--ag-icon-size)}.ag-advanced-filter-builder-item-tree-line-root:before{height:50%;top:50%}.ag-advanced-filter-builder-item-tree-line-horizontal,.ag-advanced-filter-builder-item-tree-line-vertical,.ag-advanced-filter-builder-item-tree-line-vertical-bottom,.ag-advanced-filter-builder-item-tree-line-vertical-top{align-items:center;display:flex;height:100%;position:relative}.ag-advanced-filter-builder-item-tree-line-horizontal:after,.ag-advanced-filter-builder-item-tree-line-horizontal:before,.ag-advanced-filter-builder-item-tree-line-vertical-bottom:after,.ag-advanced-filter-builder-item-tree-line-vertical-bottom:before,.ag-advanced-filter-builder-item-tree-line-vertical-top:after,.ag-advanced-filter-builder-item-tree-line-vertical-top:before,.ag-advanced-filter-builder-item-tree-line-vertical:after,.ag-advanced-filter-builder-item-tree-line-vertical:before{content:"";height:100%;position:absolute}.ag-advanced-filter-builder-item-tree-line-horizontal:after{border-bottom:var(--ag-border-width) solid var(--ag-border-color);height:50%;top:0;width:calc(var(--ag-advanced-filter-builder-indent-size) - var(--ag-icon-size))}:where(.ag-ltr) .ag-advanced-filter-builder-item-tree-line-horizontal:after{left:calc(var(--ag-icon-size)/2)}:where(.ag-rtl) .ag-advanced-filter-builder-item-tree-line-horizontal:after{right:calc(var(--ag-icon-size)/2)}.ag-advanced-filter-builder-item-tree-line-vertical:before{top:0;width:calc(var(--ag-advanced-filter-builder-indent-size) - var(--ag-icon-size)/2)}:where(.ag-ltr) .ag-advanced-filter-builder-item-tree-line-vertical:before{border-left:var(--ag-border-width) solid var(--ag-border-color);left:calc(var(--ag-icon-size)/2)}:where(.ag-rtl) .ag-advanced-filter-builder-item-tree-line-vertical:before{border-right:var(--ag-border-width) solid var(--ag-border-color);right:calc(var(--ag-icon-size)/2)}.ag-advanced-filter-builder-item-tree-line-vertical-top:before{height:50%;top:0;width:calc(var(--ag-advanced-filter-builder-indent-size) - var(--ag-icon-size)/2)}:where(.ag-ltr) .ag-advanced-filter-builder-item-tree-line-vertical-top:before{border-left:var(--ag-border-width) solid var(--ag-border-color);left:calc(var(--ag-icon-size)/2)}:where(.ag-rtl) .ag-advanced-filter-builder-item-tree-line-vertical-top:before{border-right:var(--ag-border-width) solid var(--ag-border-color);right:calc(var(--ag-icon-size)/2)}.ag-advanced-filter-builder-item-tree-line-vertical-bottom:before{height:calc(50% - var(--ag-icon-size)*1.5/2);top:calc(50% + var(--ag-icon-size)*1.5/2);width:calc(var(--ag-icon-size)/2)}:where(.ag-ltr) .ag-advanced-filter-builder-item-tree-line-vertical-bottom:before{border-left:var(--ag-border-width) solid var(--ag-border-color);left:calc(var(--ag-icon-size)/2)}:where(.ag-rtl) .ag-advanced-filter-builder-item-tree-line-vertical-bottom:before{border-right:var(--ag-border-width) solid var(--ag-border-color);right:calc(var(--ag-icon-size)/2)}.ag-advanced-filter-builder-item-condition{padding-bottom:var(--ag-spacing);padding-top:var(--ag-spacing)}.ag-advanced-filter-builder-item,.ag-advanced-filter-builder-item-buttons,.ag-advanced-filter-builder-item-condition,.ag-advanced-filter-builder-item-tree-lines,.ag-advanced-filter-builder-pill,.ag-advanced-filter-builder-pill-wrapper{align-items:center;display:flex;height:100%}.ag-advanced-filter-builder-pill-wrapper{margin:0 var(--ag-spacing)}.ag-advanced-filter-builder-pill{border-radius:var(--ag-border-radius);min-height:calc(100% - var(--ag-spacing)*3);min-width:calc(var(--ag-spacing)*2);padding:var(--ag-spacing) calc(var(--ag-spacing)*2);position:relative}:where(.ag-advanced-filter-builder-pill){.ag-advanced-filter-builder-value-number{font-family:monospace;font-weight:700}.ag-advanced-filter-builder-value-empty{color:var(--ag-subtle-text-color)}}:where(.ag-ltr) :where(.ag-advanced-filter-builder-pill){.ag-picker-field-display{margin-right:var(--ag-spacing)}}:where(.ag-rtl) :where(.ag-advanced-filter-builder-pill){.ag-picker-field-display{margin-left:var(--ag-spacing)}}.ag-advanced-filter-builder-pill-display{font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ag-advanced-filter-builder-join-pill{background-color:var(--ag-advanced-filter-builder-join-pill-color);cursor:pointer}.ag-advanced-filter-builder-column-pill{background-color:var(--ag-advanced-filter-builder-column-pill-color);cursor:pointer}.ag-advanced-filter-builder-option-pill{background-color:var(--ag-advanced-filter-builder-option-pill-color);cursor:pointer}.ag-advanced-filter-builder-value-pill{background-color:var(--ag-advanced-filter-builder-value-pill-color);cursor:text;max-width:140px;:where(.ag-advanced-filter-builder-pill-display){display:block}}.ag-advanced-filter-builder-item-buttons{display:flex;gap:var(--ag-spacing);padding:0 calc(var(--ag-spacing)*.5)}.ag-advanced-filter-builder-item-button{color:var(--ag-subtle-text-color);cursor:pointer;position:relative}.ag-advanced-filter-builder-item-button,.ag-advanced-filter-builder-pill{&:focus-visible{box-shadow:var(--ag-focus-shadow)}}.ag-advanced-filter-builder-item-button-disabled{cursor:default;opacity:.5}.ag-advanced-filter-builder-virtual-list-container{top:var(--ag-spacing)}.ag-advanced-filter-builder-virtual-list-item{cursor:default;display:flex;height:var(--ag-list-item-height)}.ag-advanced-filter-builder-virtual-list-item:hover{background-color:var(--ag-row-hover-color);:where(.ag-advanced-filter-builder-item-button){opacity:1}}.ag-advanced-filter-builder-invalid{color:var(--ag-subtle-text-color);cursor:default;margin:0 var(--ag-spacing)}:where(.ag-advanced-filter-builder-validation) .ag-advanced-filter-builder-invalid{color:var(--ag-invalid-color)}:where(.ag-advanced-filter-builder-virtual-list-item-highlight) .ag-advanced-filter-builder-item-button:focus-visible{opacity:1}'},46138:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.hideAdvancedFilterBuilder=t.showAdvancedFilterBuilder=t.setAdvancedFilterModel=t.getAdvancedFilterModel=void 0,t.getAdvancedFilterModel=function(e){return e.filterManager?.getAdvFilterModel()??null},t.setAdvancedFilterModel=function(e,t){e.filterManager?.setAdvFilterModel(t)},t.showAdvancedFilterBuilder=function(e){e.filterManager?.toggleAdvFilterBuilder(!0,"api")},t.hideAdvancedFilterBuilder=function(e){e.filterManager?.toggleAdvFilterBuilder(!1,"api")}},12583:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.AdvancedFilterComp=void 0;const s=i(76624),o=i(42611),r={buttons:["apply"],suppressBuilderButton:!1},n={apply:"advancedFilterApply",clear:"advancedFilterClear",cancel:"advancedFilterCancel",reset:"advancedFilterReset"},a={tag:"div",cls:"ag-advanced-filter",role:"presentation",attrs:{tabindex:"-1"},children:[{tag:"ag-autocomplete",ref:"eAutocomplete"},{tag:"ag-filter-button",ref:"eButtons",cls:"ag-advanced-filter-buttons"},{tag:"button",ref:"eBuilderFilterButton",cls:"ag-button ag-advanced-filter-builder-button",children:[{tag:"span",ref:"eBuilderFilterButtonIcon",attrs:{"aria-hidden":"true"}},{tag:"span",ref:"eBuilderFilterButtonLabel",cls:"ag-advanced-filter-builder-button-label"}]}]};class l extends s.Component{wireBeans(e){this.advFilterExpSvc=e.advFilterExpSvc,this.advancedFilter=e.advancedFilter,this.filterManager=e.filterManager,this.registry=e.registry}constructor(){super(a,[o.AgAutocompleteSelector,s.AgFilterButtonSelector]),this.eAutocomplete=s.RefPlaceholder,this.eButtons=s.RefPlaceholder,this.eBuilderFilterButton=s.RefPlaceholder,this.eBuilderFilterButtonIcon=s.RefPlaceholder,this.eBuilderFilterButtonLabel=s.RefPlaceholder,this.expressionParser=null,this.isApplyDisabled=!0,this.builderOpen=!1}postConstruct(){this.tooltipFeature=this.createOptionalManagedBean(this.registry.createDynamicBean("tooltipFeature",!1,{getGui:()=>this.getGui(),getTooltipShowDelayOverride:()=>1e3,getLocation:()=>"advancedFilter"})),this.eAutocomplete.setListGenerator((e,t)=>this.generateAutocompleteListParams(t)).setValidator(()=>this.validateValue()).setForceLastSelection((e,t)=>this.forceLastSelection(e,t)).setInputAriaLabel(this.advFilterExpSvc.translate("ariaAdvancedFilterInput")).setListAriaLabel(this.advFilterExpSvc.translate("ariaLabelAdvancedFilterAutocomplete")),this.refresh(),this.addManagedListeners(this.eAutocomplete,{eventValueChanged:({value:e})=>this.onValueChanged(e),eventValueConfirmed:({isValid:e})=>this.onValueConfirmed(e),eventOptionSelected:({position:e,updateEntry:t,autocompleteType:i})=>this.onOptionSelected(e,t,i),eventValidChanged:({isValid:e,validationMessage:t})=>this.onValidChanged(e,t)});const{buttons:e,suppressBuilderButton:t}={...r,...this.gos.get("advancedFilterParams")};this.setupButtons(e),this.setupBuilderButton(t),this.beans.gos.addManagedPropertyListener("advancedFilterParams",e=>{const t={...r,...e.currentValue},i={...r,...e.previousValue};if(t.buttons!==i.buttons){const e=t.buttons.map(e=>({type:e,label:this.advFilterExpSvc.translate(n[e])}));this.eButtons.updateButtons(e)}t.suppressBuilderButton!==i.suppressBuilderButton&&(0,s._setDisplayed)(this.eBuilderFilterButton,!t.suppressBuilderButton)})}refresh(){const e=this.advancedFilter.getExpressionDisplayValue();this.eAutocomplete.setValue({value:e??"",position:e?.length,updateListOnlyIfOpen:!0})}setInputDisabled(e){this.eAutocomplete.setInputDisabled(e),this.eButtons.updateValidity(!e&&!this.isApplyDisabled&&!this.advancedFilter.isCurrentExpressionApplied())}setupButtons(e){const t=e.map(e=>({type:e,label:this.advFilterExpSvc.translate(n[e])})),i=e=>()=>{this.updateModel(e)};this.eButtons.addManagedListeners(this.eButtons,{apply:i("apply"),clear:i("clear"),reset:i("reset"),cancel:i("cancel")}),this.eButtons.updateButtons(t)}updateModel(e){switch(e){case"apply":this.onValueConfirmed(this.eAutocomplete.isValid());break;case"reset":this.advancedFilter.setModel(null),this.filterManager?.onFilterChanged({source:"advancedFilter"});break;case"cancel":this.advancedFilter.setModel(this.advancedFilter.getModel()),this.filterManager?.onFilterChanged({source:"advancedFilter"});break;case"clear":this.eAutocomplete.setValue({value:"",restoreFocus:!0})}}setupBuilderButton(e){this.eBuilderFilterButtonIcon.appendChild((0,s._createIconNoSpan)("advancedFilterBuilder",this.beans)),this.eBuilderFilterButtonLabel.textContent=this.advFilterExpSvc.translate("advancedFilterBuilder"),this.activateTabIndex([this.eBuilderFilterButton]),this.addManagedElementListeners(this.eBuilderFilterButton,{click:()=>this.openBuilder()}),this.addManagedListeners(this.advancedFilter.getCtrl(),{advancedFilterBuilderClosed:()=>this.closeBuilder()}),(0,s._setDisplayed)(this.eBuilderFilterButton,!e)}onValueChanged(e){e=(0,s._makeNull)(e),this.advancedFilter.setExpressionDisplayValue(e),this.expressionParser=this.advancedFilter.createExpressionParser(e);const t=this.expressionParser?.parseExpression();t&&t!==e&&this.eAutocomplete.setValue({value:t,silent:!0,restoreFocus:!0})}onValueConfirmed(e){e&&!this.isApplyDisabled&&(this.eButtons?.updateValidity(!1),this.advancedFilter.applyExpression(),this.filterManager?.onFilterChanged({source:"advancedFilter"}))}onOptionSelected(e,t,i){const{updatedValue:s,updatedPosition:o,hideAutocomplete:r}=this.updateExpression(e,t,i);this.eAutocomplete.setValue({value:s,position:o,updateListOnlyIfOpen:r,restoreFocus:!0})}validateValue(){return this.expressionParser?.isValid()?null:this.expressionParser?.getValidationMessage()??null}onValidChanged(e,t){this.isApplyDisabled=!e||this.advancedFilter.isCurrentExpressionApplied(),this.eButtons.updateValidity(!this.isApplyDisabled),this.tooltipFeature?.setTooltipAndRefresh(t)}generateAutocompleteListParams(e){return this.expressionParser?this.expressionParser.getAutocompleteListParams(e):this.advFilterExpSvc.getDefaultAutocompleteListParams("")}updateExpression(e,t,i){return this.advFilterExpSvc.updateAutocompleteCache(t,i),this.expressionParser?.updateExpression(e,t,i)??this.advancedFilter.getDefaultExpression(t)}forceLastSelection({key:e,displayValue:t},i){return!!i.toLocaleLowerCase().match(`^${(t??e).toLocaleLowerCase()}\\s*$`)}openBuilder(){this.builderOpen||(this.builderOpen=!0,(0,s._setDisabled)(this.eBuilderFilterButton,!0),this.advancedFilter.getCtrl().toggleFilterBuilder({source:"ui",eventSource:this.eBuilderFilterButton}))}closeBuilder(){this.builderOpen&&(this.builderOpen=!1,(0,s._setDisabled)(this.eBuilderFilterButton,!1),this.eBuilderFilterButton.focus())}}t.AdvancedFilterComp=l},35865:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.AdvancedFilterCtrl=void 0;const s=i(76624),o=i(49703),r=i(12583),n=i(34858),a=i(68986);class l extends s.BeanStub{wireBeans(e){this.ctrlsSvc=e.ctrlsSvc,this.popupSvc=e.popupSvc,this.advFilterExpSvc=e.advFilterExpSvc,this.environment=e.environment}constructor(e){super(),this.enabled=e}postConstruct(){this.hasAdvancedFilterParent=!!this.gos.get("advancedFilterParent"),this.ctrlsSvc.whenReady(this,()=>this.setAdvancedFilterComp()),this.addManagedEventListeners({advancedFilterEnabledChanged:({enabled:e})=>this.onEnabledChanged(e)}),this.addManagedPropertyListener("advancedFilterParent",()=>this.updateComps()),this.addManagedPropertyListener("advancedFilterBuilderParams",e=>{e.currentValue?.suppressFullScreenButton!==e.previousValue?.suppressFullScreenButton&&this.eBuilderDialog?.setMaximizable(e.currentValue?.suppressFullScreenButton??!0)}),this.addDestroyFunc(()=>{this.destroyAdvancedFilterComp(),this.destroyBean(this.eBuilderComp),this.eBuilderDialog?.isAlive()&&this.destroyBean(this.eBuilderDialog)})}setupHeaderComp(e){this.eHeaderComp&&(this.eHeaderComp?.getGui().remove(),this.destroyBean(this.eHeaderComp)),this.eHeaderComp=this.createManagedBean(new n.AdvancedFilterHeaderComp(this.enabled&&!this.hasAdvancedFilterParent)),e.insertAdjacentElement("beforebegin",this.eHeaderComp.getGui())}focusHeaderComp(){return!!this.eHeaderComp&&(this.eHeaderComp.getFocusableElement().focus(),!0)}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:i,eventSource:s}=e;if(i&&this.eBuilderDialog||!1===i&&!this.eBuilderDialog)return;if(this.eBuilderDialog)return this.builderDestroySource=t,void this.destroyBean(this.eBuilderDialog);this.setInputDisabled(!0);const{width:r,height:n,minWidth:l}=this.getBuilderDialogSize(),{suppressFullScreenButton:d}={suppressFullScreenButton:!1,...this.gos.get("advancedFilterBuilderParams")};this.eBuilderComp=this.createBean(new a.AdvancedFilterBuilderComp),this.eBuilderDialog=this.createBean(new o.Dialog({title:this.advFilterExpSvc.translate("advancedFilterBuilderTitle"),component:this.eBuilderComp,width:r,height:n,resizable:!0,movable:!0,maximizable:!d,centered:!0,closable:!0,minWidth:l,afterGuiAttached:()=>this.eBuilderComp?.afterGuiAttached(),postProcessPopupParams:{type:"advancedFilterBuilder",eventSource:s}})),this.dispatchFilterBuilderVisibleChangedEvent(t,!0),this.eBuilderDialog.addEventListener("destroyed",()=>{this.destroyBean(this.eBuilderComp),this.eBuilderComp=void 0,this.eBuilderDialog=void 0,this.setInputDisabled(!1),this.dispatchLocalEvent({type:"advancedFilterBuilderClosed"}),this.dispatchFilterBuilderVisibleChangedEvent(this.builderDestroySource??"ui",!1),this.builderDestroySource=void 0})}dispatchFilterBuilderVisibleChangedEvent(e,t){this.eventSvc.dispatchEvent({type:"advancedFilterBuilderVisibleChanged",source:e,visible:t})}getBuilderDialogSize(){const e=this.gos.get("advancedFilterBuilderParams")?.minWidth??500,t=this.popupSvc.getPopupParent(),i=Math.round((0,s._getAbsoluteWidth)(t))-2,o=Math.round(.75*(0,s._getAbsoluteHeight)(t))-2;return{width:Math.min(Math.max(700,e),i),height:Math.min(600,o),minWidth:e}}onEnabledChanged(e){this.enabled=e,this.updateComps()}updateComps(){this.setAdvancedFilterComp(),this.setHeaderCompEnabled(),this.eventSvc.dispatchEvent({type:"headerHeightChanged"})}setAdvancedFilterComp(){if(this.destroyAdvancedFilterComp(),!this.enabled)return;const e=this.gos.get("advancedFilterParent");if(this.hasAdvancedFilterParent=!!e,e){const t=this.createBean(new r.AdvancedFilterComp),i=t.getGui();this.environment.applyThemeClasses(i),i.classList.add(this.gos.get("enableRtl")?"ag-rtl":"ag-ltr"),e.appendChild(i),this.eFilterComp=t}}setHeaderCompEnabled(){this.eHeaderComp?.setEnabled(this.enabled&&!this.hasAdvancedFilterParent)}destroyAdvancedFilterComp(){this.eFilterComp&&((0,s._removeFromParent)(this.eFilterComp.getGui()),this.destroyBean(this.eFilterComp))}}t.AdvancedFilterCtrl=l},61723:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.AdvancedFilterExpressionService=void 0;const s=i(76624),o=i(68397),r=i(49023),n=i(79459);class a extends s.BeanStub{constructor(){super(...arguments),this.beanName="advFilterExpSvc",this.filterOperandGetters={number:e=>(0,s._toStringOrNull)(e.filter)??"",bigint:e=>(0,s._toStringOrNull)(e.filter)??"",date:e=>{const t=this.colModel.getColDefCol(e.colId);return t?this.valueSvc.formatValue(t,null,(0,s._parseDateTimeFromString)((0,s._toStringOrNull)(e.filter)??"")):null},dateTime:e=>this.filterOperandGetters.date(e),dateString:e=>{const t=this.colModel.getColDefCol(e.colId);if(!t)return null;const{filter:i}=e,o=this.dataTypeSvc?.getDateFormatterFunction(t),r=o?.((0,s._parseDateTimeFromString)((0,s._toStringOrNull)(e.filter)??"")??void 0)??i;return this.valueSvc.formatValue(t,null,r)},dateTimeString:e=>this.filterOperandGetters.dateString(e),boolean:()=>null,object:()=>null,text:()=>null},this.operandModelValueGetters={number:e=>(0,s._exists)(e)?Number(e):null,bigint:e=>e,date:(e,t,i)=>(0,s._serialiseDate)(this.valueSvc.parseValue(t,null,e,void 0),!!this.dataTypeSvc?.getDateIncludesTimeFlag(i)),dateTime:(...e)=>this.operandModelValueGetters.date(...e),dateString:(e,t,i)=>{const o=this.valueSvc.parseValue(t,null,e,void 0);return this.dataTypeSvc?(0,s._serialiseDate)(this.dataTypeSvc.getDateParserFunction(t)(o)??null,this.dataTypeSvc.getDateIncludesTimeFlag(i)):o},dateTimeString:(...e)=>this.operandModelValueGetters.dateString(...e),boolean:e=>e,object:e=>e,text:e=>e},this.columnNameToIdMap={},this.columnAutocompleteEntries=null,this.expressionEvaluatorParams={}}wireBeans(e){this.valueSvc=e.valueSvc,this.colModel=e.colModel,this.colNames=e.colNames,this.dataTypeSvc=e.dataTypeSvc}postConstruct(){this.expressionJoinOperators=this.generateExpressionJoinOperators(),this.expressionOperators=this.generateExpressionOperators()}parseJoinOperator(e){const{type:t}=e;return this.expressionJoinOperators[t]??t}getColumnDisplayValue(e){const{colId:t}=e,i=this.getColumnAutocompleteEntries().find(({key:e})=>e===t);let s;return i?(s=i.displayValue,this.columnNameToIdMap[s.toLocaleUpperCase()]={colId:t,columnName:s}):s=t,s}getOperatorDisplayValue(e){return this.getExpressionOperator(e.filterType,e.type)?.displayValue??e.type}getOperandModelValue(e,t,i){return this.operandModelValueGetters[t](e,i,t)}getOperandDisplayValue(e,t){const{filter:i,filterType:o}=e;if(null==i)return"";let r=this.filterOperandGetters[o](e);return"number"!==o&&"bigint"!==o&&(r??(r=(0,s._toStringOrNull)(i)??""),t||(r=`"${r}"`)),t?r:` ${r}`}parseColumnFilterModel(e){return`[${this.getColumnDisplayValue(e)??""}] ${this.getOperatorDisplayValue(e)??""}${this.getOperandDisplayValue(e)}`}updateAutocompleteCache(e,t){if("column"===t){const{key:t,displayValue:i}=e;this.columnNameToIdMap[e.displayValue.toLocaleUpperCase()]={colId:t,columnName:i}}}translate(e,t){let i=o.ADVANCED_FILTER_LOCALE_TEXT[e];return"function"==typeof i&&(i=i(t)),this.getLocaleTextFunc()(e,i,t)}generateAutocompleteListParams(e,t,i){return{enabled:!0,type:t,searchString:i,entries:e}}getColumnAutocompleteEntries(){if(this.columnAutocompleteEntries)return this.columnAutocompleteEntries;const e=this.colModel.getColDefCols()??[],t=[],i=this.gos.get("includeHiddenColumnsInAdvancedFilter");for(const s of e)s.getColDef().filter&&(i||s.isVisible()||s.isRowGroupActive())&&t.push({key:s.getColId(),displayValue:this.colNames.getDisplayNameForColumn(s,"advancedFilter")});return t.sort((e,t)=>{const i=e.displayValue??"",s=t.displayValue??"";return ii?1:0}),t}getOperatorAutocompleteEntries(e,t){const i=this.getActiveOperators(e);return this.getDataTypeExpressionOperator(t).getEntries(i)}getJoinOperatorAutocompleteEntries(){return Object.entries(this.expressionJoinOperators).map(([e,t])=>({key:e,displayValue:t}))}getDefaultAutocompleteListParams(e){return this.generateAutocompleteListParams(this.getColumnAutocompleteEntries(),"column",e)}getDataTypeExpressionOperator(e){return this.expressionOperators[e]}getExpressionOperator(e,t){return this.getDataTypeExpressionOperator(e)?.operators?.[t]}getExpressionJoinOperators(){return this.expressionJoinOperators}getColId(e){const t=e.toLocaleUpperCase(),i=this.columnNameToIdMap[t];if(i)return i;const s=this.getColumnAutocompleteEntries().find(({displayValue:e})=>e.toLocaleUpperCase()===t);if(s){const{key:e,displayValue:i}=s,o={colId:e,columnName:i};return this.columnNameToIdMap[t]=o,o}return null}getExpressionEvaluatorParams(e){let t=this.expressionEvaluatorParams[e];if(t)return t;const i=this.colModel.getColDefCol(e);if(!i)return{valueConverter:e=>e};const o=this.dataTypeSvc?.getBaseDataType(i);switch(o){case"dateTimeString":case"dateString":t={valueConverter:this.dataTypeSvc?.getDateParserFunction(i)??(e=>e)};break;case"object":t=i.getColDef().filterValueGetter?{valueConverter:e=>e}:{valueConverter:(e,t)=>this.valueSvc.formatValue(i,t,e)??("function"==typeof e.toString?e.toString():"")};break;case"text":case void 0:t={valueConverter:e=>(0,s._toStringOrNull)(e)};break;default:t={valueConverter:e=>e}}const{filterParams:r}=i.getColDef();return r&&["caseSensitive","includeBlanksInEquals","includeBlanksInLessThan","includeBlanksInGreaterThan"].forEach(e=>{const i=r[e];i&&(t[e]=i)}),this.expressionEvaluatorParams[e]=t,t}getColumnDetails(e){const t=this.colModel.getColDefCol(e)??void 0;return{column:t,baseCellDataType:(t?this.dataTypeSvc?.getBaseDataType(t):void 0)??"text"}}generateExpressionOperators(){const e=(e,t)=>this.translate(e,t),t={translate:e,equals:(e,t)=>e.getTime()===t.getTime()};return{text:new n.TextFilterExpressionOperators({translate:e}),boolean:new n.BooleanFilterExpressionOperators({translate:e}),object:new n.TextFilterExpressionOperators({translate:e}),number:new n.ScalarFilterExpressionOperators({translate:e,equals:(e,t)=>e===t}),bigint:new n.ScalarFilterExpressionOperators({translate:e,equals:(e,t)=>e===t}),date:new n.ScalarFilterExpressionOperators(t),dateString:new n.ScalarFilterExpressionOperators(t),dateTime:new n.ScalarFilterExpressionOperators(t),dateTimeString:new n.ScalarFilterExpressionOperators(t)}}getColumnValue({displayValue:e}){return`${r.COL_FILTER_EXPRESSION_START_CHAR}${e}${r.COL_FILTER_EXPRESSION_END_CHAR}`}generateExpressionJoinOperators(){return{AND:this.translate("advancedFilterAnd"),OR:this.translate("advancedFilterOr")}}getActiveOperators(e){const t=e.getColDef().filterParams?.filterOptions;if(!t)return;return t.every(e=>"string"==typeof e)?t:void 0}resetColumnCaches(){this.columnAutocompleteEntries=null,this.columnNameToIdMap={},this.expressionEvaluatorParams={}}}t.AdvancedFilterExpressionService=a},34858:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.AdvancedFilterHeaderComp=void 0;const s=i(76624),o=i(12583),r={tag:"div",cls:"ag-advanced-filter-header",role:"row"};class n extends s.Component{wireBeans(e){this.colModel=e.colModel,this.focusSvc=e.focusSvc,this.ctrlsSvc=e.ctrlsSvc}constructor(e){super(r),this.enabled=e}postConstruct(){this.setupAdvancedFilter(this.enabled),this.addDestroyFunc(()=>this.destroyBean(this.eAdvancedFilter));const e=()=>{this.enabled&&this.setEnabledHeight()};this.addManagedEventListeners({gridColumnsChanged:()=>this.onGridColumnsChanged(),columnHeaderHeightChanged:e,stylesChanged:e}),this.addManagedPropertyListener("headerHeight",e),this.addManagedPropertyListener("floatingFiltersHeight",e),this.addGuiEventListener("keydown",e=>this.onKeyDown(e)),this.addGuiEventListener("focusout",e=>{this.getFocusableElement().contains(e.relatedTarget)||this.focusSvc.clearAdvancedFilterColumn()})}getFocusableElement(){return this.eAdvancedFilter?.getGui()??this.getGui()}setEnabled(e){e!==this.enabled&&this.setupAdvancedFilter(e)}refresh(){this.eAdvancedFilter?.refresh()}getHeight(){return this.height}setInputDisabled(e){this.eAdvancedFilter?.setInputDisabled(e)}setupAdvancedFilter(e){const t=this.getGui();if(e){this.eAdvancedFilter=this.createBean(new o.AdvancedFilterComp);const e=this.eAdvancedFilter.getGui();this.eAdvancedFilter.addCss("ag-advanced-filter-header-cell"),this.setEnabledHeight(),this.setAriaRowIndex(),(0,s._setAriaRole)(e,"gridcell"),(0,s._setAriaColIndex)(e,1),this.setAriaColumnCount(e),t.appendChild(e)}else(0,s._clearElement)(t),this.destroyBean(this.eAdvancedFilter),this.height=0;(0,s._setDisplayed)(t,e),this.enabled=e}setEnabledHeight(){const e=this.getGui();this.height=(0,s._getFloatingFiltersHeight)(this.beans);const t=`${this.height}px`;e.style.height=t,e.style.minHeight=t}setAriaColumnCount(e){(0,s._setAriaColSpan)(e,this.colModel.getCols().length)}setAriaRowIndex(){(0,s._setAriaRowIndex)(this.getGui(),this.ctrlsSvc.getHeaderRowContainerCtrl()?.getRowCount()??0)}onGridColumnsChanged(){this.eAdvancedFilter&&(this.setAriaColumnCount(this.eAdvancedFilter.getGui()),this.setAriaRowIndex())}onKeyDown(e){switch(e.key){case s.KeyCode.ENTER:this.hasFocus()&&(0,s._focusInto)(this.getFocusableElement())&&e.preventDefault();break;case s.KeyCode.ESCAPE:this.hasFocus()||this.getFocusableElement().focus();break;case s.KeyCode.UP:this.navigateUpDown(!0,e);break;case s.KeyCode.DOWN:this.navigateUpDown(!1,e);break;case s.KeyCode.TAB:if(this.hasFocus())this.navigateLeftRight(e);else{const t=(0,s._findNextFocusableElement)(this.beans,this.getFocusableElement(),null,e.shiftKey);t?(e.preventDefault(),t.focus()):this.navigateLeftRight(e)}}}navigateUpDown(e,t){this.hasFocus()&&this.focusSvc.focusNextFromAdvancedFilter(e)&&t.preventDefault()}navigateLeftRight(e){(e.shiftKey?this.focusSvc.focusLastHeader():this.focusSvc.focusNextFromAdvancedFilter(!1,!0))&&e.preventDefault()}hasFocus(){return(0,s._getActiveDomElement)(this.beans)===this.getFocusableElement()}}t.AdvancedFilterHeaderComp=n},68397:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ADVANCED_FILTER_LOCALE_TEXT=void 0,t.ADVANCED_FILTER_LOCALE_TEXT={ariaAdvancedFilterBuilderItem:e=>`${e[0]}. Level ${e[1]}. Press ENTER to edit`,ariaAdvancedFilterBuilderItemValidation:e=>`${e[0]}. Level ${e[1]}. ${e[2]} Press ENTER to edit`,ariaAdvancedFilterBuilderList:"Advanced Filter Builder List",ariaAdvancedFilterBuilderFilterItem:"Filter Condition",ariaAdvancedFilterBuilderGroupItem:"Filter Group",ariaAdvancedFilterBuilderColumn:"Column",ariaAdvancedFilterBuilderOption:"Option",ariaAdvancedFilterBuilderValue:"Value",ariaAdvancedFilterBuilderJoinOperator:"Join Operator",ariaAdvancedFilterInput:"Advanced Filter Input",ariaLabelAdvancedFilterAutocomplete:"Advanced Filter Autocomplete",advancedFilterContains:"contains",advancedFilterNotContains:"does not contain",advancedFilterTextEquals:"equals",advancedFilterTextNotEqual:"does not equal",advancedFilterStartsWith:"begins with",advancedFilterEndsWith:"ends with",advancedFilterBlank:"is blank",advancedFilterNotBlank:"is not blank",advancedFilterEquals:"=",advancedFilterNotEqual:"!=",advancedFilterGreaterThan:">",advancedFilterGreaterThanOrEqual:">=",advancedFilterLessThan:"<",advancedFilterLessThanOrEqual:"<=",advancedFilterTrue:"is true",advancedFilterFalse:"is false",advancedFilterAnd:"AND",advancedFilterOr:"OR",advancedFilterApply:"Apply",advancedFilterReset:"Reset",advancedFilterCancel:"Cancel",advancedFilterClear:"Clear",advancedFilterBuilder:"Builder",advancedFilterValidationMissingColumn:"Column is missing",advancedFilterValidationMissingOption:"Option is missing",advancedFilterValidationMissingValue:"Value is missing",advancedFilterValidationInvalidColumn:"Column not found",advancedFilterValidationInvalidOption:"Option not found",advancedFilterValidationMissingQuote:"Value is missing an end quote",advancedFilterValidationNotANumber:"Value is not a number",advancedFilterValidationNotABigInt:"Value is not a big integer",advancedFilterValidationInvalidDate:"Value is not a valid date",advancedFilterValidationMissingCondition:"Condition is missing",advancedFilterValidationJoinOperatorMismatch:"Join operators within a condition must be the same",advancedFilterValidationInvalidJoinOperator:"Join operator not found",advancedFilterValidationMissingEndBracket:"Missing end bracket",advancedFilterValidationExtraEndBracket:"Too many end brackets",advancedFilterValidationMessage:e=>`Expression has an error. ${e[0]} - ${e[1]}.`,advancedFilterValidationMessageAtEnd:e=>`Expression has an error. ${e[0]} at end of expression.`,advancedFilterBuilderTitle:"Advanced Filter",advancedFilterBuilderApply:"Apply",advancedFilterBuilderCancel:"Cancel",advancedFilterBuilderClear:"Clear",advancedFilterBuilderReset:"Reset",advancedFilterBuilderAddButtonTooltip:"Add Filter or Group",advancedFilterBuilderRemoveButtonTooltip:"Remove",advancedFilterBuilderMoveUpButtonTooltip:"Move Up",advancedFilterBuilderMoveDownButtonTooltip:"Move Down",advancedFilterBuilderAddJoin:"Add Group",advancedFilterBuilderAddCondition:"Add Filter",advancedFilterBuilderSelectColumn:"Select a column",advancedFilterBuilderSelectOption:"Select an option",advancedFilterBuilderEnterValue:"Enter a value...",advancedFilterBuilderValidationAlreadyApplied:"Current filter already applied.",advancedFilterBuilderValidationIncomplete:"Not all conditions are complete.",advancedFilterBuilderValidationSelectColumn:"Must select a column.",advancedFilterBuilderValidationSelectOption:"Must select an option.",advancedFilterBuilderValidationEnterValue:"Must enter a value."}},67976:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.AdvancedFilterModule=void 0;const s=i(76624),o=i(39206),r=i(19586),n=i(95372),a=i(46138),l=i(61723),d=i(63065);t.AdvancedFilterModule={moduleName:"AdvancedFilter",version:r.VERSION,beans:[d.AdvancedFilterService,l.AdvancedFilterExpressionService],icons:{advancedFilterBuilder:"group",advancedFilterBuilderDrag:"grip",advancedFilterBuilderInvalid:"not-allowed",advancedFilterBuilderMoveUp:"up",advancedFilterBuilderMoveDown:"down",advancedFilterBuilderAdd:"plus",advancedFilterBuilderRemove:"minus",advancedFilterBuilderSelectOpen:"small-down",richSelectRemove:"cancel",richSelectLoading:"loading"},apiFunctions:{getAdvancedFilterModel:a.getAdvancedFilterModel,setAdvancedFilterModel:a.setAdvancedFilterModel,showAdvancedFilterBuilder:a.showAdvancedFilterBuilder,hideAdvancedFilterBuilder:a.hideAdvancedFilterBuilder},dependsOn:[o.EnterpriseCoreModule,s._FilterCoreModule,s._SharedDragAndDropModule,s._PopupModule,s._FilterValueModule,s.TooltipModule],css:[n.advancedFilterCSS]}},63065:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.AdvancedFilterService=void 0;const s=i(76624),o=i(35865),r=i(34899);class n extends s.BeanStub{constructor(){super(...arguments),this.beanName="advancedFilter",this.appliedExpression=null,this.expression=null,this.isValid=!0}wireBeans(e){this.valueSvc=e.valueSvc,this.colModel=e.colModel,this.dataTypeSvc=e.dataTypeSvc,this.advFilterExpSvc=e.advFilterExpSvc,this.filterValueSvc=e.filterValueSvc,this.filterManager=e.filterManager}postConstruct(){this.setEnabled(this.gos.get("enableAdvancedFilter"),!0),this.ctrl=this.createManagedBean(new o.AdvancedFilterCtrl(this.enabled)),this.expressionProxy={getValue:(e,t)=>{const i=this.colModel.getColDefCol(e);return i?this.filterValueSvc.getValue(i,t):void 0}},this.addManagedPropertyListener("enableAdvancedFilter",e=>this.setEnabled(!!e.currentValue)),this.addManagedEventListeners({newColumnsLoaded:e=>this.onNewColumnsLoaded(e)}),this.addManagedPropertyListener("includeHiddenColumnsInAdvancedFilter",()=>{this.updateValidity()&&this.filterManager?.onFilterChanged({source:"advancedFilter"})})}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=(e,i)=>{if("join"===e.filterType){const o=this.advFilterExpSvc.parseJoinOperator(e),r=e.conditions.map(e=>t(e)).filter(e=>(0,s._exists)(e)).join(` ${o} `);return i||e.conditions.length<=1?r:`(${r})`}return this.advFilterExpSvc.parseColumnFilterModel(e)},i=e?t(e,!0):null;this.setExpressionDisplayValue(i),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 r.FilterExpressionParser({expression:e,colModel:this.colModel,dataTypeSvc:this.dataTypeSvc,valueSvc:this.valueSvc,advFilterExpSvc:this.advFilterExpSvc}):null}getDefaultExpression(e){const t=this.advFilterExpSvc.getColumnValue(e)+" ";return{updatedValue:t,updatedPosition:t.length}}isHeaderActive(){return!this.gos.get("advancedFilterParent")}getCtrl(){return this.ctrl}setEnabled(e,t){const i=this.enabled,o=(0,s._isClientSideRowModel)(this.gos)||(0,s._isServerSideRowModel)(this.gos);e&&!o&&(0,s._warn)(123),this.enabled=e&&o,t||this.enabled===i||this.eventSvc.dispatchEvent({type:"advancedFilterEnabledChanged",enabled:this.enabled})}applyExpression(){const e=this.createExpressionParser(this.expression);e?.parseExpression(),this.applyExpressionFromParser(e)}getAppliedExpressionDisplayValue(){return this.appliedExpression}applyExpressionFromParser(e){if(this.isValid=!e||e.isValid(),!e||!this.isValid)return this.expressionFunction=null,this.expressionParams=null,void(this.appliedExpression=null);const{expressionFunction:t,params:i}=e.getFunction();this.expressionFunction=t,this.expressionParams=i,this.appliedExpression=this.expression}updateValidity(){this.advFilterExpSvc.resetColumnCaches();const e=this.createExpressionParser(this.expression);e?.parseExpression();const t=(!e||e.isValid())!==this.isValid;return this.applyExpressionFromParser(e),this.ctrl.refreshComp(),this.ctrl.refreshBuilderComp(),t}onNewColumnsLoaded(e){if("gridInitializing"!==e.source||!this.dataTypeSvc?.isPendingInference)return;this.ctrl.setInputDisabled(!0);const[t]=this.addManagedEventListeners({dataTypesInferred:()=>{t?.(),this.ctrl.setInputDisabled(!1)}})}}t.AdvancedFilterService=n},49546:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.agAutocompleteCSS=void 0,t.agAutocompleteCSS=".ag-autocomplete{align-items:center;display:flex;width:100%;>:where(.ag-text-field){flex:1 1 auto}}.ag-autocomplete-list-popup{background-color:var(--ag-background-color);border-radius:var(--ag-border-radius);box-shadow:var(--ag-dropdown-shadow);padding:0;position:absolute;-webkit-user-select:none;-moz-user-select:none;user-select:none}.ag-autocomplete-list{height:calc(var(--ag-row-height)*6.5);min-width:200px;position:relative;width:100%}.ag-autocomplete-virtual-list-item{cursor:default;display:flex;height:var(--ag-list-item-height);&:focus-visible:after{content:none}}.ag-autocomplete-virtual-list-item:hover{background-color:var(--ag-row-hover-color)}.ag-autocomplete-row{align-items:center;display:flex;flex:1 1 auto;overflow:hidden}.ag-autocomplete-row-label{margin:0 var(--ag-widget-container-horizontal-padding);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ag-autocomplete-row-selected{background-color:var(--ag-selected-row-background-color)}"},42611:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.AgAutocompleteSelector=t.AgAutocomplete=void 0;const s=i(76624),o=i(49546),r=i(33359),n={tag:"div",cls:"ag-autocomplete",role:"presentation",children:[{tag:"ag-input-text-field",ref:"eAutocompleteInput"}]};class a extends s.Component{wireBeans(e){this.popupSvc=e.popupSvc}constructor(){super(n,[s.AgInputTextFieldSelector]),this.eAutocompleteInput=s.RefPlaceholder,this.isListOpen=!1,this.lastPosition=0,this.valid=!0,this.registerCSS(o.agAutocompleteCSS)}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,s._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};t.type&&t.type===this.autocompleteListParams?.type||this.isListOpen&&this.closeList();const i=this.isListOpen;if(this.autocompleteListParams=t,t?.enabled){i||this.openList();const{searchString:e}=t;this.autocompleteList.setSearch(e??"")}else i&&this.closeList()}onKeyDown(e){const t=e.key;switch(this.updateLastPosition(),t){case s.KeyCode.ENTER:this.onEnterKeyDown(e);break;case s.KeyCode.TAB:this.onTabKeyDown(e);break;case s.KeyCode.DOWN:case s.KeyCode.UP:this.onUpDownKeyDown(e,t);break;case s.KeyCode.LEFT:case s.KeyCode.RIGHT:case s.KeyCode.PAGE_HOME:case s.KeyCode.PAGE_END:setTimeout(()=>{this.updatePositionAndList()});break;case s.KeyCode.ESCAPE:this.onEscapeKeyDown(e);break;case s.KeyCode.SPACE:e.ctrlKey&&!this.isListOpen&&(e.preventDefault(),this.forceOpenList())}}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,s._isNothingFocused)(this.beans))&&this.eAutocompleteInput.getFocusableElement().focus();const i=this.eAutocompleteInput.getInputElement();i.setSelectionRange(e,e),e===i.value.length&&(i.scrollLeft=i.scrollWidth)}forceOpenList(){this.onValueChanged(this.eAutocompleteInput.getValue())}updateLastPosition(){this.lastPosition=this.eAutocompleteInput.getInputElement().selectionStart??0}validate(e){if(!this.validator)return;const t=this.validationMessage=this.validator(e);this.eAutocompleteInput.getInputElement().setCustomValidity(t??""),this.valid=!t,this.dispatchLocalEvent({type:"eventValidChanged",isValid:this.valid,validationMessage:t})}openList(){this.isListOpen=!0,this.autocompleteList=this.createBean(new r.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},i=this.popupSvc.addPopup({eChild:e,anchorToElement:this.getGui(),positionCallback:()=>this.popupSvc.positionPopupByComponent(t),ariaLabel:this.listAriaLabel});this.hidePopup=i.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,s._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:i,silent:s,updateListOnlyIfOpen:o,restoreFocus:r}=e;this.eAutocompleteInput.setValue(t,!0),this.setCaret(i??this.lastPosition,r),s||this.updateValue(t),o&&!this.isListOpen||this.updateAutocompleteList(t)}setForceLastSelection(e){return this.forceLastSelection=e,this}setInputDisabled(e){return this.eAutocompleteInput.setDisabled(e),this}}t.AgAutocomplete=a,t.AgAutocompleteSelector={selector:"AG-AUTOCOMPLETE",component:a}},33359:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.AgAutocompleteList=void 0;const s=i(76624),o=i(37904),r=i(49087),n={tag:"div",cls:"ag-autocomplete-list-popup",children:[{tag:"div",ref:"eList",cls:"ag-autocomplete-list"}]};class a extends s.AgPopupComponent{constructor(e){super(n),this.params=e,this.eList=s.RefPlaceholder,this.searchString="",this.lastAutoListHeight=null}postConstruct(){this.autocompleteEntries=this.params.autocompleteEntries,this.virtualList=this.createManagedBean(new o.VirtualList({cssIdentifier:"autocomplete"})),this.virtualList.setComponentCreator(this.createRowComponent.bind(this)),this.eList.appendChild(this.virtualList.getGui()),this.virtualList.setModel({getRowCount:()=>this.autocompleteEntries.length,getRow:e=>this.autocompleteEntries[e]});const e=this.virtualList.getGui();this.addManagedListeners(e,{click:()=>this.params.onConfirmed(),mousemove:this.onMouseMove.bind(this),mousedown:e=>e.preventDefault()}),this.setSelectedValue(0),this.updateListHeight()}onNavigationKeyDown(e,t){e.preventDefault();const i=this.autocompleteEntries.indexOf(this.selectedValue),o=t===s.KeyCode.UP?i-1:i+1;this.checkSetSelectedValue(o)}setSearch(e){this.searchString=e,(0,s._exists)(e)?this.runSearch():(this.autocompleteEntries=this.params.autocompleteEntries,this.virtualList.refresh(),this.checkSetSelectedValue(0),this.updateListHeight()),this.updateSearchInList()}runContainsSearch(e,t){let i,s=!1;const o=e.toLocaleLowerCase(),r=t.filter(e=>{const t=e.toLocaleLowerCase().indexOf(o),r=0===t,n=t>=0;return n&&(!i||!s&&r||s===r&&e.lengthe.toLocaleLowerCase().startsWith(i));return{topMatch:s[0],allMatches:s}}runSearch(){const{autocompleteEntries:e,useFuzzySearch:t,useStartsWithSearch:i,forceLastSelection:o}=this.params,r=e.map(e=>e.displayValue??e.key);let n,a;if(t)n=(0,s._fuzzySuggestions)({inputValue:this.searchString,allSuggestions:r,hideIrrelevant:!0}).values,a=n.length?n[0]:void 0;else{const e=i?this.runStartsWithSearch(this.searchString,r):this.runContainsSearch(this.searchString,r);n=e.allMatches,a=e.topMatch}let l=e.filter(({key:e,displayValue:t})=>n.includes(t??e));if(!l.length&&this.selectedValue&&o?.(this.selectedValue,this.searchString)&&(l=[this.selectedValue]),this.autocompleteEntries=l,this.virtualList.refresh(),this.updateListHeight(),!a)return;const d=n.indexOf(a);this.checkSetSelectedValue(d)}updateSearchInList(){this.virtualList.forEachRenderedRow(e=>e.setSearchString(this.searchString))}updateListHeight(){if(!this.params.autoSizeList)return;const e=this.autocompleteEntries.length,t=this.virtualList.getRowHeight(),i=this.params.maxVisibleItems??e;let o=Math.min(e,i)*t;0===e&&(o=t),this.lastAutoListHeight!==o&&(this.lastAutoListHeight=o,this.eList.style.height=`${o}px`,(0,s._isVisible)(this.eList)&&this.params.onListHeightChanged?.())}checkSetSelectedValue(e){e>=0&&e{t.updateSelected(e===i)}))}createRowComponent(e){const t=new r.AgAutocompleteRow;return this.createBean(t),t.setState(e.displayValue??e.key,e===this.selectedValue),t}onMouseMove(e){const t=this.virtualList,i=t.getGui().getBoundingClientRect(),s=t.getScrollTop(),o=e.clientY-i.top+s,r=Math.floor(o/t.getRowHeight());this.checkSetSelectedValue(r)}afterGuiAttached(){this.virtualList.refresh(),this.updateListHeight()}getSelectedValue(){return this.autocompleteEntries.length?this.selectedValue??null:null}}t.AgAutocompleteList=a},49087:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.AgAutocompleteRow=void 0;const s=i(76624),o={tag:"div",cls:"ag-autocomplete-row",role:"presentation",children:[{tag:"div",cls:"ag-autocomplete-row-label"}]};class r extends s.Component{constructor(){super(o),this.hasHighlighting=!1}setState(e,t){this.value=e,this.render(),this.updateSelected(t)}updateSelected(e){this.toggleCss("ag-autocomplete-row-selected",e)}setSearchString(e){let t=!1;const{value:i}=this;if(i&&(0,s._exists)(e)){const o=i.toLocaleLowerCase().indexOf(e.toLocaleLowerCase());if(o>=0){t=!0,this.hasHighlighting=!0;const r=o+e.length,n=this.getGui().lastElementChild;(0,s._clearElement)(n),n.append(i.slice(0,o),(0,s._createElement)({tag:"b",children:i.slice(o,r)}),i.slice(r))}}!t&&this.hasHighlighting&&(this.hasHighlighting=!1,this.render())}render(){this.getGui().lastElementChild.textContent=this.value??" "}}t.AgAutocompleteRow=r},5219:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.AddDropdownComp=void 0;const s=i(76624),o=i(62005),r={tag:"div",cls:"ag-picker-field",role:"presentation",children:[{tag:"div",ref:"eLabel"},{tag:"div",ref:"eWrapper",cls:"ag-wrapper ag-picker-collapsed",children:[{tag:"div",ref:"eDisplayField",cls:"ag-picker-field-display"},{tag:"ag-input-text-field",ref:"eInput",cls:"ag-rich-select-field-input"},{tag:"span",ref:"eDeselect",cls:"ag-rich-select-deselect-button ag-picker-field-icon",role:"presentation"},{tag:"div",ref:"eIcon",cls:"ag-picker-field-icon",attrs:{"aria-hidden":"true"}}]}]};class n extends o.AgRichSelect{constructor(e){super({...e,template:r,agComponents:[s.AgInputTextFieldSelector]}),this.params=e}showPicker(){setTimeout(()=>super.showPicker())}hidePicker(){setTimeout(()=>super.hidePicker())}postConstruct(){super.postConstruct();const{wrapperClassName:e,ariaLabel:t}=this.params;(0,s._setDisplayed)(this.eDisplayField,!1),e&&this.eWrapper.classList.add(e),(0,s._setAriaLabelledBy)(this.eWrapper,""),(0,s._setAriaLabel)(this.eWrapper,t)}onEnterKeyDown(e){(0,s._stopPropagationForAgGrid)(e),this.isPickerDisplayed?super.onEnterKeyDown(e):(e.preventDefault(),this.showPicker())}}t.AddDropdownComp=n},68986:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.AdvancedFilterBuilderComp=void 0;const s=i(76624),o=i(37904),r=i(2865),n=i(22172),a=i(39889),l={apply:"advancedFilterBuilderApply",clear:"advancedFilterBuilderClear",cancel:"advancedFilterBuilderCancel",reset:"advancedFilterBuilderReset"},d={tag:"div",cls:"ag-advanced-filter-builder",role:"presentation",attrs:{tabindex:"-1"},children:[{tag:"div",ref:"eList",cls:"ag-advanced-filter-builder-list",role:"presentation"}]};class c extends s.Component{wireBeans(e){this.filterManager=e.filterManager,this.advancedFilter=e.advancedFilter,this.advFilterExpSvc=e.advFilterExpSvc}constructor(){super(d),this.eList=s.RefPlaceholder}postConstruct(){const e=this.gos.get("advancedFilterBuilderParams");this.params={buttons:["apply","cancel"],...e},this.addManagedPropertyListener("advancedFilterBuilderParams",({currentValue:e})=>{this.params.showMoveButtons=!!e?.showMoveButtons,this.params.buttons=e?.buttons??["apply","cancel"],this.refreshList(!1)}),this.filterModel=this.setupFilterModel(),this.setupVirtualList(),this.dragFeature=this.createManagedBean(new r.AdvancedFilterBuilderDragFeature(this,this.virtualList)),this.resetButtonsPanel(this.params.buttons)}refresh(){const e=this.virtualList;let t=e.getLastFocusedRow();this.setupFilterModel(),this.validateItems(),this.refreshList(!1),null!=t&&(e.getComponentAt(t)||(t=0),e.focusRow(t))}getNumItems(){return this.items.length}moveItem(e,t){t&&e&&this.moveItemToIndex(e,t.rowIndex,t.position)}afterGuiAttached(){this.virtualList.awaitStable(()=>this.virtualList.focusRow(0))}setupVirtualList(){const e=this.virtualList=this.createManagedBean(new o.VirtualList({cssIdentifier:"advanced-filter-builder",ariaRole:"tree",listName:this.advFilterExpSvc.translate("ariaAdvancedFilterBuilderList"),moveItemCallback:this.virtualListMoveItemCallback.bind(this)}));e.setComponentCreator(this.createItemComponent.bind(this)),e.setComponentUpdater(this.updateItemComponent.bind(this)),e.setRowHeight(40),this.eList.appendChild(e.getGui()),e.setModel({getRowCount:()=>this.items?.length||0,getRow:e=>this.items[e],areRowsEqual:(e,t)=>e===t}),this.buildList(),e.refresh()}resetButtonsPanel(e){const t=e&&e.length>0;let i=this.eButtons;if(t){const t=e.map(e=>({type:e,label:this.advFilterExpSvc.translate(l[e])}));if(!i){i=this.createBean(new s.FilterButtonComp),this.appendChild(i.getGui());const e=e=>({event:t})=>{this.updateModel(e),this.afterAction(e,t)};i.addManagedListeners(i,{apply:e("apply"),clear:e("clear"),reset:e("reset"),cancel:e("cancel")}),this.eButtons=i}i.updateButtons(t);const o=i.getApplyButton();if(o){const e=e=>this.toggleCss("ag-advanced-filter-builder-validation",e);this.addManagedElementListeners(o,{mouseenter:()=>e(!0),mouseleave:()=>e(!1)})}}else i&&((0,s._removeFromParent)(i.getGui()),this.eButtons=this.destroyBean(i))}updateModel(e){switch(e){case"apply":this.advancedFilter.setModel(this.filterModel),this.filterManager?.onFilterChanged({source:"advancedFilter"});break;case"reset":this.advancedFilter.setModel(null),this.filterManager?.onFilterChanged({source:"advancedFilter"});break;case"cancel":break;case"clear":this.filterModel=this.formatFilterModel(null),this.refreshList(!1)}}afterAction(e,t){switch(e){case"apply":t?.preventDefault(),this.close();break;case"reset":case"cancel":this.close()}}removeItemFromParent(e){const t=e.parent.conditions.indexOf(e.filterModel);return e.parent.conditions.splice(t,1),t}moveItemToIndex(e,t,i){const s=this.items[t],o="join"===s.filterModel?.filterType&&"bottom"===i,r=o?s.filterModel:s.parent;if(!r)return;if(this.isChildOrSelf(r,e.filterModel)||s===e)return;let n;this.removeItemFromParent(e),o?n=0:(n=r.conditions.indexOf(s.filterModel),-1===n?n=r.conditions.length:"bottom"===i&&(n+=1)),r.conditions.splice(n,0,e.filterModel),this.refreshList(!1)}isChildOrSelf(e,t){return e===t||"join"===t.filterType&&t.conditions.some(t=>this.isChildOrSelf(e,t))}setupFilterModel(){const e=this.formatFilterModel(this.advancedFilter.getModel());return this.stringifiedModel=JSON.stringify(e),e}formatFilterModel(e){return"join"!==(e=e??{filterType:"join",type:"AND",conditions:[]}).filterType&&(e={filterType:"join",type:"AND",conditions:[e]}),e}buildList(){const e=(t,i,s,o)=>{if(i.push({filterModel:t,level:s,parent:o,valid:!0,showMove:this.params.showMoveButtons}),"join"===t.filterType){for(const o of t.conditions)e(o,i,s+1,t);0===s&&i.push({filterModel:null,level:s+1,parent:t,valid:!0})}};this.items=[],e(this.filterModel,this.items,0)}refreshList(e){if(!e){const e=[];for(const t of this.items)t.valid||e.push(t.filterModel);if(this.buildList(),e.length)for(const t of this.items)t.filterModel&&e.includes(t.filterModel)&&(t.valid=!1)}this.virtualList.refresh(e),this.validate()}updateItemComponent(e,t){const i=this.items.indexOf(e),s=(e,t)=>{const i=this.items.find(t=>t.filterModel===e),o=i?.parent;if(o){const{conditions:i}=o;s(o,t),t.push(i[i.length-1]===e)}},o=[],{filterModel:r}=e;r&&(s(r,o),o[0]=!1);const n="join"===r?.filterType&&!!r.conditions.length;t.setState({disableMoveUp:1===i,disableMoveDown:!this.canMoveDown(e,i),treeLines:o,showStartTreeLine:n})}createItemComponent(e,t){const i=this.createBean(e.filterModel?new a.AdvancedFilterBuilderItemComp(e,this.dragFeature,t):new n.AdvancedFilterBuilderItemAddComp(e,t));return i.addManagedListeners(i,{advancedFilterBuilderRemoved:({item:e})=>this.removeItem(e),advancedFilterBuilderValueChanged:()=>this.validate(),advancedFilterBuilderAdded:({item:e,isJoin:t})=>this.addItem(e,t),advancedFilterBuilderMoved:({item:e,backwards:t})=>this.moveItemUpDown(e,t)}),i instanceof a.AdvancedFilterBuilderItemComp&&this.updateItemComponent(e,i),i}addItem(e,t){const{parent:i,level:s,filterModel:o}=e,r="join"===o?.filterType,n=t?{filterType:"join",type:"AND",conditions:[]}:{},a=r?o:i;let l=r?0:a.conditions.indexOf(o);l>=0?(r||(l+=1),a.conditions.splice(l,0,n)):a.conditions.push(n);let d=this.items.indexOf(e);const c=d>=0;if(c){e.filterModel&&d++;const i=[{filterModel:n,level:r?s+1:s,parent:a,valid:t,showMove:this.params.showMoveButtons}];this.items.splice(d,0,...i)}this.refreshList(c),c&&this.virtualList.getComponentAt(d)?.afterAdd()}removeItem(e){const t=e.parent,{filterModel:i}=e,s=t.conditions.indexOf(i);t.conditions.splice(s,1);const o="join"===e.filterModel?.filterType,r=this.items.indexOf(e),n=!o&&r>=0;n&&this.items.splice(r,1),this.refreshList(n),r>=0&&this.virtualList.focusRow(r)}moveItemUpDown(e,t,i){const s=this.items.indexOf(e),o=t?s-1:s+1;if(0===o||!t&&!this.canMoveDown(e,s))return;const r=this.items[o],n=this.removeItemFromParent(e),{level:l,filterModel:d,parent:c}=e,{level:u,filterModel:h,parent:g}=r;if(t)if(u===l&&"join"===h.filterType)h.conditions.push(d);else if(u<=l){const e=g.conditions.indexOf(h);g.conditions.splice(e,0,d)}else{c.conditions[n-1].conditions.push(d)}else if(u===l)if("join"===h.filterType)h.conditions.splice(0,0,d);else{const e=g.conditions.indexOf(h);g.conditions.splice(e+1,0,d)}else if(ne.filterModel===c),t=e.parent.conditions.indexOf(e.filterModel)+1;e.parent.conditions.splice(t,0,d)}this.refreshList(!1);const p=this.items.findIndex(({filterModel:e})=>e===d);if(p<0)return;const m=this.virtualList.getComponentAt(p);m instanceof a.AdvancedFilterBuilderItemComp&&(i||m.focusMoveButton(t))}virtualListMoveItemCallback(e,t){const i=e.item,s=this.items.indexOf(i);s<=0||s===this.items.length-1||t&&1===s||!t&&!this.canMoveDown(i,s)||(this.moveItemUpDown(i,t,!0),this.virtualList.focusRow(s+(t?-1:1)))}canMoveDown(e,t){return!(1===e.level&&t===this.items.length-2||1===e.level&&e.parent.conditions[e.parent.conditions.length-1]===e.filterModel)}close(){this.advancedFilter.getCtrl().toggleFilterBuilder({source:"ui"})}validate(){let e=this.items.every(({valid:e})=>e),t=null;e?(e=JSON.stringify(this.filterModel)!==this.stringifiedModel,e||(t=this.advFilterExpSvc.translate("advancedFilterBuilderValidationAlreadyApplied"))):t=this.advFilterExpSvc.translate("advancedFilterBuilderValidationIncomplete"),this.eButtons?.updateValidity(e,t)}validateItems(){const e=e=>{e.type=void 0},t=e=>{delete e.filter};for(const i of this.items){if(!i.valid||!i.filterModel||"join"===i.filterModel.filterType)continue;const{filterModel:o}=i,{colId:r}=o,n=this.advFilterExpSvc.getColumnAutocompleteEntries().find(({key:e})=>e===r),a=this.advFilterExpSvc.getColumnDetails(o.colId);if(!n||!a.column){i.valid=!1,o.colId=void 0,e(o),t(o);continue}const l=this.advFilterExpSvc.getDataTypeExpressionOperator(a.baseCellDataType).operators[o.type];l?l.numOperands>0&&!(0,s._exists)(o.filter)&&(i.valid=!1):(i.valid=!1,e(o),t(o))}}}t.AdvancedFilterBuilderComp=c},2865:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.AdvancedFilterBuilderDragFeature=void 0;const s=i(76624),o=i(45760);class r extends s.BeanStub{constructor(e,t){super(),this.comp=e,this.virtualList=t}postConstruct(){this.createManagedBean(new o.VirtualListDragFeature(this.comp,this.virtualList,{dragSourceType:s.DragSourceType.AdvancedFilterBuilder,addListeners:(e,t,i)=>{e.addManagedListeners(this,{advancedFilterBuilderDragStarted:t,advancedFilterBuilderDragEnded:i})},getCurrentDragValue:e=>this.getCurrentDragValue(e),isMoveBlocked:()=>!1,getNumRows:e=>e.getNumItems(),moveItem:(e,t)=>this.moveItem(e,t)}))}getCurrentDragValue(e){return e.item}moveItem(e,t){this.comp.moveItem(e,t)}}t.AdvancedFilterBuilderDragFeature=r},22172:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.AdvancedFilterBuilderItemAddComp=void 0;const s=i(76624),o=i(5219),r=i(21748),n=i(96608),a={tag:"div",cls:"ag-advanced-filter-builder-item-wrapper",role:"presentation",children:[{tag:"div",ref:"eItem",cls:"ag-advanced-filter-builder-item",role:"presentation",children:[{tag:"div",cls:"ag-advanced-filter-builder-item-tree-lines",attrs:{"aria-hidden":"true"},children:[{tag:"div",cls:"ag-advanced-filter-builder-item-tree-line ag-advanced-filter-builder-item-tree-line-vertical-top ag-advanced-filter-builder-item-tree-line-horizontal"}]}]}]};class l extends s.Component{wireBeans(e){this.advFilterExpSvc=e.advFilterExpSvc,this.registry=e.registry}constructor(e,t){super(a),this.item=e,this.focusWrapper=t,this.eItem=s.RefPlaceholder}postConstruct(){(0,s._setAriaLevel)(this.focusWrapper,2);const e=(0,n.getAdvancedFilterBuilderAddButtonParams)(e=>this.advFilterExpSvc.translate(e),this.gos.get("advancedFilterBuilderParams")?.addSelectWidth),t=this.createManagedBean(new o.AddDropdownComp(e));this.addManagedListeners(t,{fieldPickerValueSelected:({value:e})=>{this.dispatchLocalEvent({type:"advancedFilterBuilderAdded",item:this.item,isJoin:"join"===e.key})}}),this.eItem.appendChild(t.getGui()),this.createOptionalManagedBean(this.registry.createDynamicBean("tooltipFeature",!1,{getGui:()=>t.getGui(),getLocation:()=>"advancedFilter",getTooltipValue:()=>this.advFilterExpSvc.translate("advancedFilterBuilderAddButtonTooltip")})),this.createManagedBean(new r.AdvancedFilterBuilderItemNavigationFeature(this.getGui(),this.focusWrapper,t)),(0,s._setAriaLabel)(this.focusWrapper,this.advFilterExpSvc.translate("ariaAdvancedFilterBuilderItem",[this.advFilterExpSvc.translate("advancedFilterBuilderAddButtonTooltip"),`${this.item.level+1}`]))}afterAdd(){}}t.AdvancedFilterBuilderItemAddComp=l},39889:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.AdvancedFilterBuilderItemComp=void 0;const s=i(76624),o=i(5219),r=i(21748),n=i(96608),a=i(56106),l=i(34042),d=i(41395),c=i(43036),u={tag:"div",cls:"ag-advanced-filter-builder-item-wrapper",role:"presentation",children:[{tag:"div",cls:"ag-advanced-filter-builder-item",role:"presentation",children:[{tag:"div",ref:"eTreeLines",cls:"ag-advanced-filter-builder-item-tree-lines",attrs:{"aria-hidden":"true"}},{tag:"span",ref:"eDragHandle",cls:"ag-drag-handle",attrs:{"aria-hidden":"true"}},{tag:"span",ref:"eValidation",cls:"ag-advanced-filter-builder-item-button ag-advanced-filter-builder-invalid",attrs:{"aria-hidden":"true"}}]},{tag:"div",ref:"eButtons",cls:"ag-advanced-filter-builder-item-buttons",children:[{tag:"span",ref:"eMoveUpButton",cls:"ag-advanced-filter-builder-item-button",role:"button"},{tag:"span",ref:"eMoveDownButton",cls:"ag-advanced-filter-builder-item-button",role:"button"},{tag:"div",ref:"eAddButton",role:"presentation"},{tag:"span",ref:"eRemoveButton",cls:"ag-advanced-filter-builder-item-button",role:"button"}]}]};class h extends s.TabGuardComp{wireBeans(e){this.dragAndDrop=e.dragAndDrop,this.advFilterExpSvc=e.advFilterExpSvc,this.registry=e.registry}constructor(e,t,i){super(u),this.item=e,this.dragFeature=t,this.focusWrapper=i,this.eTreeLines=s.RefPlaceholder,this.eDragHandle=s.RefPlaceholder,this.eButtons=s.RefPlaceholder,this.eValidation=s.RefPlaceholder,this.eMoveUpButton=s.RefPlaceholder,this.eMoveDownButton=s.RefPlaceholder,this.eAddButton=s.RefPlaceholder,this.eRemoveButton=s.RefPlaceholder,this.moveUpDisabled=!1,this.moveDownDisabled=!1}postConstruct(){const{filterModel:e,level:t,showMove:i}=this.item,o="join"===e.filterType;if(this.ePillWrapper=this.createManagedBean(o?new d.JoinPillWrapperComp:new a.ConditionPillWrapperComp),this.ePillWrapper.init({item:this.item,createPill:e=>this.createPill(e)}),this.eDragHandle.insertAdjacentElement("afterend",this.ePillWrapper.getGui()),0===t){const e=(0,s._createElement)({tag:"div",cls:"ag-advanced-filter-builder-item-tree-line ag-advanced-filter-builder-item-tree-line-vertical-bottom ag-advanced-filter-builder-item-tree-line-root"});this.eTreeLines.appendChild(e),(0,s._setDisplayed)(this.eDragHandle,!1),(0,s._setDisplayed)(this.eButtons,!1),(0,s._setAriaExpanded)(this.focusWrapper,!0)}else this.setupTreeLines(t),this.eDragHandle.appendChild((0,s._createIconNoSpan)("advancedFilterBuilderDrag",this.beans)),this.setupValidation(),this.setupMoveButtons(i),this.setupAddButton(),this.setupRemoveButton(),this.setupDragging(),this.updateAriaExpanded();(0,s._setAriaLevel)(this.focusWrapper,t+1),this.initialiseTabGuard({}),this.createManagedBean(new r.AdvancedFilterBuilderItemNavigationFeature(this.getGui(),this.focusWrapper,this.ePillWrapper)),this.updateAriaLabel(),this.addManagedListeners(this.ePillWrapper,{advancedFilterBuilderValueChanged:()=>this.dispatchLocalEvent({type:"advancedFilterBuilderValueChanged"}),advancedFilterBuilderValidChanged:()=>this.updateValidity()})}setState(e){const{level:t}=this.item;if(0===t)return;const{showMove:i}=this.item,{disableMoveUp:o,disableMoveDown:r,treeLines:n,showStartTreeLine:a}=e;this.updateTreeLines(n,a),this.updateAriaExpanded(),i&&(this.moveUpDisabled=!!o,this.moveDownDisabled=!!r,this.eMoveUpButton.classList.toggle("ag-advanced-filter-builder-item-button-disabled",o),this.eMoveDownButton.classList.toggle("ag-advanced-filter-builder-item-button-disabled",r),(0,s._setAriaDisabled)(this.eMoveUpButton,!!o),(0,s._setAriaDisabled)(this.eMoveDownButton,!!r),this.moveUpTooltipFeature?.refreshTooltip(),this.moveDownTooltipFeature?.refreshTooltip())}focusMoveButton(e){(e?this.eMoveUpButton:this.eMoveDownButton).focus()}afterAdd(){this.ePillWrapper.getFocusableElement().focus()}setupTreeLines(e){for(let t=0;tthis.eValidation,getLocation:()=>"advancedFilter",getTooltipValue:()=>this.ePillWrapper.getValidationMessage(),getTooltipShowDelayOverride:()=>1e3})),this.updateValidity()}setupAddButton(){const e=(0,n.getAdvancedFilterBuilderAddButtonParams)(e=>this.advFilterExpSvc.translate(e),this.gos.get("advancedFilterBuilderParams")?.addSelectWidth),t=this.createManagedBean(new o.AddDropdownComp(e));this.addManagedListeners(t,{fieldPickerValueSelected:({value:e})=>this.dispatchLocalEvent({type:"advancedFilterBuilderAdded",item:this.item,isJoin:"join"===e.key})}),this.eAddButton.appendChild(t.getGui()),this.createOptionalManagedBean(this.registry.createDynamicBean("tooltipFeature",!1,{getGui:()=>this.eAddButton,getLocation:()=>"advancedFilter",getTooltipValue:()=>this.advFilterExpSvc.translate("advancedFilterBuilderAddButtonTooltip")}))}setupRemoveButton(){this.eRemoveButton.appendChild((0,s._createIconNoSpan)("advancedFilterBuilderRemove",this.beans)),this.addManagedListeners(this.eRemoveButton,{click:()=>this.removeItem(),keydown:e=>{e.key===s.KeyCode.ENTER&&(e.preventDefault(),(0,s._stopPropagationForAgGrid)(e),this.removeItem())}}),this.createOptionalManagedBean(this.registry.createDynamicBean("tooltipFeature",!1,{getGui:()=>this.eRemoveButton,getLocation:()=>"advancedFilter",getTooltipValue:()=>this.advFilterExpSvc.translate("advancedFilterBuilderRemoveButtonTooltip")})),(0,s._setAriaLabel)(this.eRemoveButton,this.advFilterExpSvc.translate("advancedFilterBuilderRemoveButtonTooltip")),this.activateTabIndex([this.eRemoveButton])}setupMoveButtons(e){e?(this.eMoveUpButton.appendChild((0,s._createIconNoSpan)("advancedFilterBuilderMoveUp",this.beans)),this.addManagedListeners(this.eMoveUpButton,{click:()=>this.moveItem(!0),keydown:e=>{e.key===s.KeyCode.ENTER&&(e.preventDefault(),(0,s._stopPropagationForAgGrid)(e),this.moveItem(!0))}}),this.moveUpTooltipFeature=this.createOptionalManagedBean(this.registry.createDynamicBean("tooltipFeature",!1,{getGui:()=>this.eMoveUpButton,getLocation:()=>"advancedFilter",getTooltipValue:()=>this.moveUpDisabled?null:this.advFilterExpSvc.translate("advancedFilterBuilderMoveUpButtonTooltip")})),(0,s._setAriaLabel)(this.eMoveUpButton,this.advFilterExpSvc.translate("advancedFilterBuilderMoveUpButtonTooltip")),this.eMoveDownButton.appendChild((0,s._createIconNoSpan)("advancedFilterBuilderMoveDown",this.beans)),this.addManagedListeners(this.eMoveDownButton,{click:()=>this.moveItem(!1),keydown:e=>{e.key===s.KeyCode.ENTER&&(e.preventDefault(),(0,s._stopPropagationForAgGrid)(e),this.moveItem(!1))}}),this.moveDownTooltipFeature=this.createOptionalManagedBean(this.registry.createDynamicBean("tooltipFeature",!1,{getGui:()=>this.eMoveDownButton,getLocation:()=>"advancedFilter",getTooltipValue:()=>this.moveDownDisabled?null:this.advFilterExpSvc.translate("advancedFilterBuilderMoveDownButtonTooltip")})),(0,s._setAriaLabel)(this.eMoveDownButton,this.advFilterExpSvc.translate("advancedFilterBuilderMoveDownButtonTooltip")),this.activateTabIndex([this.eMoveUpButton,this.eMoveDownButton])):((0,s._setDisplayed)(this.eMoveUpButton,!1),(0,s._setDisplayed)(this.eMoveDownButton,!1))}updateValidity(){(0,s._setVisible)(this.eValidation,!this.item.valid),this.validationTooltipFeature?.refreshTooltip(),this.updateAriaLabel()}createPill(e){const{key:t,cssClass:i,update:s,ariaLabel:o}=e,r=e=>{null!=e&&(s(e),this.dispatchLocalEvent({type:"advancedFilterBuilderValueChanged"}))};if(e.isSelect){const{getEditorParams:s,pickerAriaLabelKey:n,pickerAriaLabelValue:a,displayValue:l}=e,d=this.gos.get("advancedFilterBuilderParams"),u=`${d?.pillSelectMinWidth??140}px`,h=`${d?.pillSelectMaxWidth??200}px`,g=this.createBean(new c.SelectPillComp({pickerAriaLabelKey:n,pickerAriaLabelValue:a,pickerType:"ag-list",value:{key:t,displayValue:l},valueFormatter:e=>null==e?"":e.displayValue??e.key,variableWidth:!0,minPickerWidth:u,maxPickerWidth:h,getEditorParams:s,wrapperClassName:i,ariaLabel:o,pickerIcon:"advancedFilterBuilderSelectOpen"}));return this.addManagedListeners(g,{fieldPickerValueSelected:({value:e})=>r(e?.key)}),g}{const{baseCellDataType:s,valueFormatter:n}=e,a=this.createBean(new l.InputPillComp({value:t,valueFormatter:n,cssClass:i,type:s,ariaLabel:o}));return this.addManagedListeners(a,{fieldValueChanged:({value:e})=>r(e)}),a}}setupDragging(){const e={type:s.DragSourceType.AdvancedFilterBuilder,eElement:this.eDragHandle,dragItemName:()=>this.ePillWrapper.getDragName(),getDefaultIconName:()=>"notAllowed",getDragItem:()=>({}),onDragStarted:()=>this.dragFeature.dispatchLocalEvent({type:"advancedFilterBuilderDragStarted",item:this.item}),onDragStopped:()=>this.dragFeature.dispatchLocalEvent({type:"advancedFilterBuilderDragEnded"})};this.dragAndDrop.addDragSource(e,!0),this.addDestroyFunc(()=>this.dragAndDrop.removeDragSource(e))}updateAriaLabel(){const e=this.ePillWrapper.getAriaLabel(),t=`${this.item.level+1}`,i=this.ePillWrapper.getValidationMessage();let o;o=i?this.advFilterExpSvc.translate("ariaAdvancedFilterBuilderItemValidation",[e,t,i]):this.advFilterExpSvc.translate("ariaAdvancedFilterBuilderItem",[e,t]),(0,s._setAriaLabel)(this.focusWrapper,o)}updateAriaExpanded(){(0,s._removeAriaExpanded)(this.focusWrapper);const{filterModel:e}=this.item;"join"===e?.filterType&&e.conditions.length&&(0,s._setAriaExpanded)(this.focusWrapper,!0)}removeItem(){this.dispatchLocalEvent({type:"advancedFilterBuilderRemoved",item:this.item})}moveItem(e){this.dispatchLocalEvent({type:"advancedFilterBuilderMoved",item:this.item,backwards:e})}}t.AdvancedFilterBuilderItemComp=h},21748:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.AdvancedFilterBuilderItemNavigationFeature=void 0;const s=i(76624);class o extends s.BeanStub{constructor(e,t,i){super(),this.eGui=e,this.focusWrapper=t,this.eFocusableComp=i}postConstruct(){this.addManagedElementListeners(this.eGui,{keydown:e=>{switch(e.key){case s.KeyCode.TAB:e.defaultPrevented||(0,s._stopPropagationForAgGrid)(e);break;case s.KeyCode.UP:case s.KeyCode.DOWN:(0,s._stopPropagationForAgGrid)(e);break;case s.KeyCode.ESCAPE:if((0,s._isStopPropagationForAgGrid)(e))return;this.eGui.contains((0,s._getActiveDomElement)(this.beans))&&(e.preventDefault(),(0,s._stopPropagationForAgGrid)(e),this.focusWrapper.focus())}}});const e="ag-advanced-filter-builder-virtual-list-item-highlight";this.addManagedListeners(this.focusWrapper,{keydown:e=>{if(e.key===s.KeyCode.ENTER){if((0,s._isStopPropagationForAgGrid)(e))return;(0,s._getActiveDomElement)(this.beans)===this.focusWrapper&&(e.preventDefault(),(0,s._stopPropagationForAgGrid)(e),this.eFocusableComp.getFocusableElement().focus())}},focusin:()=>{this.focusWrapper.classList.add(e)},focusout:t=>{this.focusWrapper.contains(t.relatedTarget)||this.focusWrapper.classList.remove(e)}})}}t.AdvancedFilterBuilderItemNavigationFeature=o},96608:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.getAdvancedFilterBuilderAddButtonParams=void 0,t.getAdvancedFilterBuilderAddButtonParams=function(e,t){return{pickerAriaLabelKey:"ariaLabelAdvancedFilterBuilderAddField",pickerAriaLabelValue:"Advanced Filter Builder Add Field",pickerType:"ag-list",valueList:[{key:"condition",displayValue:e("advancedFilterBuilderAddCondition")},{key:"join",displayValue:e("advancedFilterBuilderAddJoin")}],valueFormatter:e=>null==e?"":e.displayValue??e.key,pickerIcon:"advancedFilterBuilderAdd",maxPickerWidth:`${t??120}px`,wrapperClassName:"ag-advanced-filter-builder-item-button",ariaLabel:e("advancedFilterBuilderAddButtonTooltip")}}},56106:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ConditionPillWrapperComp=void 0;const s=i(76624);class o extends s.Component{wireBeans(e){this.advFilterExpSvc=e.advFilterExpSvc}constructor(){super({tag:"div",cls:"ag-advanced-filter-builder-item-condition",role:"presentation"}),this.validationMessage=null}init(e){const{item:t,createPill:i}=e;this.item=t,this.createPill=i,this.filterModel=t.filterModel,this.setupColumnCondition(this.filterModel),this.validate(),this.addDestroyFunc(()=>this.destroyBeans([this.eColumnPill,this.eOperatorPill,this.eOperandPill]))}getDragName(){return this.filterModel.colId?this.advFilterExpSvc.parseColumnFilterModel(this.filterModel):this.getDefaultColumnDisplayValue()}getAriaLabel(){return`${this.advFilterExpSvc.translate("ariaAdvancedFilterBuilderFilterItem")} ${this.getDragName()}`}getValidationMessage(){return this.validationMessage}getFocusableElement(){return this.eColumnPill.getFocusableElement()}setupColumnCondition(e){const t=this.advFilterExpSvc.getColumnDetails(e.colId);this.baseCellDataType=t.baseCellDataType,this.column=t.column,this.numOperands=this.getNumOperands(this.getOperatorKey()),this.eColumnPill=this.createPill({key:this.getColumnKey(),displayValue:this.getColumnDisplayValue()??this.getDefaultColumnDisplayValue(),cssClass:"ag-advanced-filter-builder-column-pill",isSelect:!0,getEditorParams:()=>({values:this.advFilterExpSvc.getColumnAutocompleteEntries()}),update:e=>this.setColumnKey(e),pickerAriaLabelKey:"ariaLabelAdvancedFilterBuilderColumnSelectField",pickerAriaLabelValue:"Advanced Filter Builder Column Select Field",ariaLabel:this.advFilterExpSvc.translate("ariaAdvancedFilterBuilderColumn")}),this.getGui().appendChild(this.eColumnPill.getGui()),(0,s._exists)(this.getColumnKey())&&(this.createOperatorPill(),this.hasOperand()&&this.createOperandPill())}createOperatorPill(){this.eOperatorPill=this.createPill({key:this.getOperatorKey(),displayValue:this.getOperatorDisplayValue()??this.getDefaultOptionSelectValue(),cssClass:"ag-advanced-filter-builder-option-pill",isSelect:!0,getEditorParams:()=>({values:this.getOperatorAutocompleteEntries()}),update:e=>this.setOperatorKey(e),pickerAriaLabelKey:"ariaLabelAdvancedFilterBuilderOptionSelectField",pickerAriaLabelValue:"Advanced Filter Builder Option Select Field",ariaLabel:this.advFilterExpSvc.translate("ariaAdvancedFilterBuilderOption")}),this.eColumnPill.getGui().insertAdjacentElement("afterend",this.eOperatorPill.getGui())}createOperandPill(){const{filter:e}=this.filterModel,t=("number"==typeof e||"bigint"==typeof e?(0,s._toStringOrNull)(e):e)??"";this.eOperandPill=this.createPill({key:t,valueFormatter:e=>this.advFilterExpSvc.getOperandDisplayValue({...this.filterModel,filter:e},!0),baseCellDataType:this.baseCellDataType,cssClass:"ag-advanced-filter-builder-value-pill",isSelect:!1,update:e=>this.setOperand(e),ariaLabel:this.advFilterExpSvc.translate("ariaAdvancedFilterBuilderValue")}),this.getGui().appendChild(this.eOperandPill.getGui())}getColumnKey(){return this.filterModel.colId}getColumnDisplayValue(){return this.advFilterExpSvc.getColumnDisplayValue(this.filterModel)}getOperatorKey(){return this.filterModel.type}getOperatorDisplayValue(){return this.advFilterExpSvc.getOperatorDisplayValue(this.filterModel)}getOperandDisplayValue(){return this.advFilterExpSvc.getOperandDisplayValue(this.filterModel,!0)}hasOperand(){return this.numOperands>0}getOperatorAutocompleteEntries(){return this.column?this.advFilterExpSvc.getOperatorAutocompleteEntries(this.column,this.baseCellDataType):[]}setColumnKey(e){this.eOperatorPill||this.createOperatorPill();const t=this.advFilterExpSvc.getColumnDetails(e);this.column=t.column;const i=t.baseCellDataType;this.baseCellDataType!==i&&(this.baseCellDataType=i,this.setOperatorKey(void 0),this.eOperatorPill&&((0,s._removeFromParent)(this.eOperatorPill.getGui()),this.destroyBean(this.eOperatorPill),this.createOperatorPill()),this.validate()),this.filterModel.colId=e,this.filterModel.filterType=this.baseCellDataType}setOperatorKey(e){const t=this.getNumOperands(e);t!==this.numOperands&&(this.numOperands=t,0===t?this.destroyOperandPill():(this.createOperandPill(),"number"!==this.baseCellDataType&&this.setOperand(""))),this.filterModel.type=e,this.validate()}setOperand(e){let t=e;"number"===this.baseCellDataType&&(t=(0,s._exists)(e)?Number(e):""),this.filterModel.filter=t,this.validate()}getNumOperands(e){return this.advFilterExpSvc.getExpressionOperator(this.baseCellDataType,e)?.numOperands??0}destroyOperandPill(){delete this.filterModel.filter,this.eOperandPill?.getGui().remove(),this.destroyBean(this.eOperandPill),this.eOperandPill=void 0}validate(){let e=null;(0,s._exists)(this.getColumnKey())?(0,s._exists)(this.getOperatorKey())?this.numOperands>0&&!(0,s._exists)(this.getOperandDisplayValue())&&(e=this.advFilterExpSvc.translate("advancedFilterBuilderValidationEnterValue")):e=this.advFilterExpSvc.translate("advancedFilterBuilderValidationSelectOption"):e=this.advFilterExpSvc.translate("advancedFilterBuilderValidationSelectColumn"),this.item.valid=!e,e!==this.validationMessage&&(this.validationMessage=e,this.dispatchLocalEvent({type:"advancedFilterBuilderValidChanged"}))}getDefaultColumnDisplayValue(){return this.advFilterExpSvc.translate("advancedFilterBuilderSelectColumn")}getDefaultOptionSelectValue(){return this.advFilterExpSvc.translate("advancedFilterBuilderSelectOption")}}t.ConditionPillWrapperComp=o},34042:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.InputPillComp=void 0;const s=i(76624),o={number:[s.AgInputNumberField],bigint:[s.AgInputTextField],boolean:[s.AgInputTextField],object:[s.AgInputTextField],text:[s.AgInputTextField],date:[s.AgInputDateField],dateString:[s.AgInputDateField],dateTime:[s.AgInputDateField,e=>e.setIncludeTime(!0)],dateTimeString:[s.AgInputDateField,e=>e.setIncludeTime(!0)]},r={tag:"div",cls:"ag-advanced-filter-builder-pill-wrapper",role:"presentation",children:[{tag:"div",ref:"ePill",cls:"ag-advanced-filter-builder-pill",role:"button",children:[{tag:"span",ref:"eLabel",cls:"ag-advanced-filter-builder-pill-display"}]}]};class n extends s.Component{wireBeans(e){this.advFilterExpSvc=e.advFilterExpSvc}constructor(e){super(r),this.params=e,this.ePill=s.RefPlaceholder,this.eLabel=s.RefPlaceholder;const{value:t,valueFormatter:i}=e;this.value=t,this.displayValue=i(t)}postConstruct(){const{cssClass:e,ariaLabel:t}=this.params;this.ePill.classList.add(e),this.activateTabIndex([this.ePill]),this.eLabel.id=`${this.getCompId()}`,(0,s._setAriaDescribedBy)(this.ePill,this.eLabel.id),(0,s._setAriaLabel)(this.ePill,t),this.renderValue(),this.addManagedListeners(this.ePill,{click:e=>{e.preventDefault(),this.showEditor()},keydown:e=>{e.key===s.KeyCode.ENTER&&(e.preventDefault(),(0,s._stopPropagationForAgGrid)(e),this.showEditor())}}),this.addDestroyFunc(()=>this.destroyBean(this.eEditor))}getFocusableElement(){return this.ePill}showEditor(){if(this.eEditor)return;(0,s._setDisplayed)(this.ePill,!1),this.eEditor=this.createEditorComp(this.params.type),this.eEditor.setValue(this.value);const e=this.eEditor.getGui();this.eEditor.addManagedElementListeners(e,{keydown:e=>{switch(e.key){case s.KeyCode.ENTER:e.preventDefault(),(0,s._stopPropagationForAgGrid)(e),this.updateValue(!0);break;case s.KeyCode.ESCAPE:e.preventDefault(),(0,s._stopPropagationForAgGrid)(e),this.hideEditor(!0)}},focusout:()=>this.updateValue(!1)}),this.getGui().appendChild(e),this.eEditor.getFocusableElement().focus()}createEditorComp(e){const[t,i]=o[e],s=this.createBean(new t);return i?.(s),s}hideEditor(e){const{eEditor:t}=this;t&&(this.eEditor=void 0,t.getGui().remove(),this.destroyBean(t),(0,s._setDisplayed)(this.ePill,!0),e&&this.ePill.focus())}renderValue(){let e;const{displayValue:t,eLabel:i,params:o}=this,{type:r}=o,{classList:n}=i;n.remove("ag-advanced-filter-builder-value-empty","ag-advanced-filter-builder-value-number","ag-advanced-filter-builder-value-text"),(0,s._exists)(t)?"number"===r||"bigint"===r?(e=t,n.add("ag-advanced-filter-builder-value-number")):(e=`"${t}"`,n.add("ag-advanced-filter-builder-value-text")):(e=this.advFilterExpSvc.translate("advancedFilterBuilderEnterValue"),n.add("ag-advanced-filter-builder-value-empty")),i.textContent=e}updateValue(e){if(!this.eEditor)return;const t=this.eEditor.getValue()??"";this.dispatchLocalEvent({type:"fieldValueChanged",value:t}),this.value=t,this.displayValue=this.params.valueFormatter(t),this.renderValue(),this.hideEditor(e)}}t.InputPillComp=n},41395:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.JoinPillWrapperComp=void 0;const s=i(76624);class o extends s.Component{wireBeans(e){this.advFilterExpSvc=e.advFilterExpSvc}constructor(){super({tag:"div",cls:"ag-advanced-filter-builder-item-condition",role:"presentation"})}init(e){const{item:t,createPill:i}=e,s=t.filterModel;this.filterModel=s,this.ePill=i({key:s.type,displayValue:this.advFilterExpSvc.parseJoinOperator(s),cssClass:"ag-advanced-filter-builder-join-pill",isSelect:!0,getEditorParams:()=>({values:this.advFilterExpSvc.getJoinOperatorAutocompleteEntries()}),update:e=>s.type=e,pickerAriaLabelKey:"ariaLabelAdvancedFilterBuilderJoinSelectField",pickerAriaLabelValue:"Advanced Filter Builder Join Operator Select Field",ariaLabel:this.advFilterExpSvc.translate("ariaAdvancedFilterBuilderJoinOperator")}),this.getGui().appendChild(this.ePill.getGui()),this.addDestroyFunc(()=>this.destroyBean(this.ePill))}getDragName(){return this.advFilterExpSvc.parseJoinOperator(this.filterModel)}getAriaLabel(){return`${this.advFilterExpSvc.translate("ariaAdvancedFilterBuilderGroupItem")} ${this.getDragName()}`}getValidationMessage(){return null}getFocusableElement(){return this.ePill.getFocusableElement()}}t.JoinPillWrapperComp=o},43036:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SelectPillComp=void 0;const s=i(76624),o=i(62005),r={tag:"div",cls:"ag-picker-field ag-advanced-filter-builder-pill-wrapper",role:"presentation",children:[{tag:"div",ref:"eLabel"},{tag:"div",ref:"eWrapper",cls:"ag-wrapper ag-advanced-filter-builder-pill ag-picker-collapsed",children:[{tag:"div",ref:"eDisplayField",cls:"ag-picker-field-display ag-advanced-filter-builder-pill-display"},{tag:"ag-input-text-field",ref:"eInput",cls:"ag-rich-select-field-input"},{tag:"span",ref:"eDeselect",cls:"ag-rich-select-deselect-button ag-picker-field-icon",role:"presentation"},{tag:"div",ref:"eIcon",cls:"ag-picker-field-icon",attrs:{"aria-hidden":"true"}}]}]};class n extends o.AgRichSelect{constructor(e){super({...e,template:r,agComponents:[s.AgInputTextFieldSelector]}),this.params=e}getFocusableElement(){return this.eWrapper}showPicker(){setTimeout(()=>super.showPicker())}hidePicker(){setTimeout(()=>super.hidePicker())}postConstruct(){super.postConstruct();const{wrapperClassName:e,ariaLabel:t}=this.params;this.eWrapper.classList.add(e),(0,s._setAriaLabelledBy)(this.eWrapper,""),(0,s._setAriaLabel)(this.eWrapper,t)}createPickerComponent(){if(!this.values){const{values:e}=this.params.getEditorParams();this.values=e;const t=this.value.key,i=e.find(e=>e.key===t)??{key:t,displayValue:this.value.displayValue};this.value=i}return super.createPickerComponent()}onEnterKeyDown(e){(0,s._stopPropagationForAgGrid)(e),this.isPickerDisplayed?super.onEnterKeyDown(e):(e.preventDefault(),this.showPicker())}}t.SelectPillComp=n},49023:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ColFilterExpressionParser=t.COL_FILTER_EXPRESSION_END_CHAR=t.COL_FILTER_EXPRESSION_START_CHAR=void 0;const s=i(76624),o=i(86487);class r{constructor(e,t){this.params=e,this.startPosition=t,this.type="column",this.valid=!0,this.hasStartChar=!1,this.hasEndChar=!1,this.colName=""}parse(e,i){if(e!==t.COL_FILTER_EXPRESSION_START_CHAR||this.colName)if(e===t.COL_FILTER_EXPRESSION_END_CHAR&&this.hasStartChar){if(this.parseColumn(!1,i))return this.hasEndChar=!0,!1;this.colName+=e}else this.colName+=e;else this.hasStartChar=!0}getDisplayValue(){return(this.hasStartChar?t.COL_FILTER_EXPRESSION_START_CHAR:"")+this.colName+(this.hasEndChar?t.COL_FILTER_EXPRESSION_END_CHAR:"")}getColId(){return this.colId}complete(e){this.parseColumn(!0,e)}getValidationError(){return this.valid?null:{message:this.params.advFilterExpSvc.translate("advancedFilterValidationInvalidColumn"),startPosition:this.startPosition,endPosition:this.endPosition??this.params.expression.length-1}}parseColumn(e,t){this.endPosition=t;const i=this.params.advFilterExpSvc.getColId(this.colName);return i&&this.hasStartChar&&(this.colId=i.colId,(0,o.checkAndUpdateExpression)(this.params,this.colName,i.columnName,t-1),this.colName=i.columnName,this.column=this.params.colModel.getColDefCol(this.colId),this.column)?(this.baseCellDataType=this.params.dataTypeSvc?.getBaseDataType(this.column)??"text",!0):(e&&(this.valid=!1),this.baseCellDataType="text",!1)}}class n{constructor(e,t,i){this.params=e,this.startPosition=t,this.baseCellDataType=i,this.type="operator",this.valid=!0,this.expectedNumOperands=0,this.operator=""}parse(e,t){if(" "===e||")"===e){if(this.parseOperator(!1,t-1))return!0;this.operator+=e}else this.operator+=e}complete(e){this.parseOperator(!0,e)}getValidationError(){return this.valid?null:{message:this.params.advFilterExpSvc.translate("advancedFilterValidationInvalidOption"),startPosition:this.startPosition,endPosition:this.endPosition??this.params.expression.length-1}}getDisplayValue(){return this.operator}getOperatorKey(){return this.parsedOperator}parseOperator(e,t){const i=this.params.advFilterExpSvc.getDataTypeExpressionOperator(this.baseCellDataType),s=i.findOperator(this.operator);if(this.endPosition=t,s){this.parsedOperator=s;const e=i.operators[s];this.expectedNumOperands=e.numOperands;const r=e.displayValue;return(0,o.checkAndUpdateExpression)(this.params,this.operator,r,t),this.operator=r,!0}return!e&&null===s||(this.valid=!1),!1}}class a{constructor(e,t,i,o){this.params=e,this.startPosition=t,this.baseCellDataType=i,this.column=o,this.type="operand",this.valid=!0,this.operand="",this.validationMessage=null,this.filterValidationSetters={number:()=>{(this.quotes||isNaN(this.modelValue))&&(this.valid=!1,this.validationMessage=this.params.advFilterExpSvc.translate("advancedFilterValidationNotANumber"))},bigint:()=>{(this.quotes||null===(0,s._parseBigIntOrNull)(this.modelValue))&&(this.valid=!1,this.validationMessage=this.params.advFilterExpSvc.translate("advancedFilterValidationNotABigInt"))},date:e=>{null==e&&(this.valid=!1,this.validationMessage=this.params.advFilterExpSvc.translate("advancedFilterValidationInvalidDate"))},dateString:(...e)=>this.filterValidationSetters.date(...e),dateTime:(...e)=>this.filterValidationSetters.date(...e),dateTimeString:(...e)=>this.filterValidationSetters.date(...e),boolean(){},object(){},text(){}}}parse(e,t){if(" "===e){if(!this.quotes)return this.parseOperand(!1,t),!0;this.operand+=e}else if(")"===e){if("number"===this.baseCellDataType||!this.quotes)return this.parseOperand(!1,t-1),!0;this.operand+=e}else if(this.operand||this.quotes||"'"!==e&&'"'!==e){if(this.quotes&&e===this.quotes)return this.parseOperand(!1,t),!1;this.operand+=e}else this.quotes=e}complete(e){this.parseOperand(!0,e)}getValidationError(){return this.validationMessage?{message:this.validationMessage,startPosition:this.startPosition,endPosition:this.endPosition??this.params.expression.length-1}:null}getRawValue(){return this.operand}getModelValue(){return this.modelValue}parseOperand(e,t){const{advFilterExpSvc:i}=this.params;if(this.endPosition=t,this.modelValue=this.operand,e&&this.quotes)this.valid=!1,this.validationMessage=i.translate("advancedFilterValidationMissingQuote");else if(""===this.modelValue)this.valid=!1,this.validationMessage=i.translate("advancedFilterValidationMissingValue");else{const e=i.getOperandModelValue(this.operand,this.baseCellDataType,this.column);null!=e&&(this.modelValue=e),this.filterValidationSetters[this.baseCellDataType](e)}}}t.COL_FILTER_EXPRESSION_START_CHAR="[",t.COL_FILTER_EXPRESSION_END_CHAR="]";t.ColFilterExpressionParser=class{constructor(e,t){this.params=e,this.startPosition=t,this.isAwaiting=!0,this.operandValueGetters={number:Number,bigint:e=>(0,s._parseBigIntOrNull)(e),date:e=>this.params.valueSvc.parseValue(this.columnParser.column,null,e,void 0),dateString:e=>this.operandValueGetters.date(e),dateTime:e=>this.operandValueGetters.date(e),dateTimeString:e=>this.operandValueGetters.date(e),boolean:e=>e,object:e=>e,text:e=>e}}parseExpression(){let e=this.startPosition;const{expression:t}=this.params;for(;e(o,r,n)=>n.operators[t].evaluator(o.getValue(i,r),r,n.evaluatorParams[s],null==e?void 0:n.operands[e]))}getAutocompleteListParams(e){return this.isColumnPosition(e)?this.getColumnAutocompleteListParams(e):this.isOperatorPosition(e)?this.getOperatorAutocompleteListParams(e):this.isBeyondEndPosition(e)?void 0:{enabled:!1}}updateExpression(e,t,i){const{expression:s}=this.params;if(this.isColumnPosition(e))return(0,o.updateExpression)(this.params.expression,this.startPosition,this.columnParser?.getColId()?this.columnParser.endPosition:(0,o.findEndPosition)(s,e).endPosition,this.params.advFilterExpSvc.getColumnValue(t),!0);if(this.isOperatorPosition(e)){const r=this.getBaseCellDataTypeFromOperatorAutocompleteType(i),n=this.hasOperand(r,t.key),a=n&&this.doesOperandNeedQuotes(r);let l;if(null!=this.operatorParser?.startPosition&&ethis.endPosition+1&&this.endPosition+10,r=this.columnParser?.hasEndChar&&i.length===t.length+2;return s?i.slice(1,r?-1:void 0):i}getOperatorAutocompleteListParams(e){const t=this.columnParser?.column;if(!t)return{enabled:!1};const i=this.columnParser.baseCellDataType,s=null!=this.operatorParser?.startPosition&&e0}doesOperandNeedQuotes(e){return"number"!==e&&"bigint"!==e}addToListAndGetIndex(e,t){const i=e.length;return e.push(t),i}}},79459:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.BooleanFilterExpressionOperators=t.ScalarFilterExpressionOperators=t.TextFilterExpressionOperators=t.findMatch=t.FilterExpressionOperators=void 0;function i(e,t,i){let s=!1;const o=e.toLocaleLowerCase(),r=o+" ",n=Object.keys(t).find(e=>{const n=t[e],a=i(n).toLocaleLowerCase();return a.startsWith(r)&&(s=!0),a===o});return n||(s?null:void 0)}function s(e,t){return(t??Object.keys(e)).map(t=>({key:t,displayValue:e[t].displayValue}))}t.FilterExpressionOperators=class{},t.findMatch=i;t.TextFilterExpressionOperators=class{constructor(e){this.params=e,this.initOperators()}getEntries(e){return s(this.operators,e)}findOperator(e){return i(e,this.operators,({displayValue:e})=>e)}initOperators(){const{translate:e}=this.params;this.operators={contains:{displayValue:e("advancedFilterContains"),evaluator:(e,t,i,s)=>this.evaluateExpression(e,t,i,s,!1,(e,t)=>e.includes(t)),numOperands:1},notContains:{displayValue:e("advancedFilterNotContains"),evaluator:(e,t,i,s)=>this.evaluateExpression(e,t,i,s,!0,(e,t)=>!e.includes(t)),numOperands:1},equals:{displayValue:e("advancedFilterTextEquals"),evaluator:(e,t,i,s)=>this.evaluateExpression(e,t,i,s,!1,(e,t)=>e===t),numOperands:1},notEqual:{displayValue:e("advancedFilterTextNotEqual"),evaluator:(e,t,i,s)=>this.evaluateExpression(e,t,i,s,!0,(e,t)=>e!=t),numOperands:1},startsWith:{displayValue:e("advancedFilterStartsWith"),evaluator:(e,t,i,s)=>this.evaluateExpression(e,t,i,s,!1,(e,t)=>e.startsWith(t)),numOperands:1},endsWith:{displayValue:e("advancedFilterEndsWith"),evaluator:(e,t,i,s)=>this.evaluateExpression(e,t,i,s,!1,(e,t)=>e.endsWith(t)),numOperands:1},blank:{displayValue:e("advancedFilterBlank"),evaluator:e=>null==e||"string"==typeof e&&0===e.trim().length,numOperands:0},notBlank:{displayValue:e("advancedFilterNotBlank"),evaluator:e=>null!=e&&("string"!=typeof e||e.trim().length>0),numOperands:0}}}evaluateExpression(e,t,i,s,o,r){return null==e?o:i.caseSensitive?r(i.valueConverter(e,t),s):r(i.valueConverter(e,t).toLocaleLowerCase(),s.toLocaleLowerCase())}};t.ScalarFilterExpressionOperators=class{constructor(e){this.params=e,this.initOperators()}getEntries(e){return s(this.operators,e)}findOperator(e){return i(e,this.operators,({displayValue:e})=>e)}initOperators(){const{translate:e,equals:t}=this.params;this.operators={equals:{displayValue:e("advancedFilterEquals"),evaluator:(e,i,s,o)=>this.evaluateSingleOperandExpression(e,i,s,o,!!s.includeBlanksInEquals,t),numOperands:1},notEqual:{displayValue:e("advancedFilterNotEqual"),evaluator:(e,i,s,o)=>this.evaluateSingleOperandExpression(e,i,s,o,!!s.includeBlanksInEquals,(e,i)=>!t(e,i)),numOperands:1},greaterThan:{displayValue:e("advancedFilterGreaterThan"),evaluator:(e,t,i,s)=>this.evaluateSingleOperandExpression(e,t,i,s,!!i.includeBlanksInGreaterThan,(e,t)=>e>t),numOperands:1},greaterThanOrEqual:{displayValue:e("advancedFilterGreaterThanOrEqual"),evaluator:(e,t,i,s)=>this.evaluateSingleOperandExpression(e,t,i,s,!!i.includeBlanksInGreaterThan,(e,t)=>e>=t),numOperands:1},lessThan:{displayValue:e("advancedFilterLessThan"),evaluator:(e,t,i,s)=>this.evaluateSingleOperandExpression(e,t,i,s,!!i.includeBlanksInLessThan,(e,t)=>ethis.evaluateSingleOperandExpression(e,t,i,s,!!i.includeBlanksInLessThan,(e,t)=>e<=t),numOperands:1},blank:{displayValue:e("advancedFilterBlank"),evaluator:e=>null==e,numOperands:0},notBlank:{displayValue:e("advancedFilterNotBlank"),evaluator:e=>null!=e,numOperands:0}}}evaluateSingleOperandExpression(e,t,i,s,o,r){return null==e?o:r(i.valueConverter(e,t),s)}};t.BooleanFilterExpressionOperators=class{constructor(e){this.params=e,this.initOperators()}getEntries(e){return s(this.operators,e)}findOperator(e){return i(e,this.operators,({displayValue:e})=>e)}initOperators(){const{translate:e}=this.params;this.operators={true:{displayValue:e("advancedFilterTrue"),evaluator:e=>!!e,numOperands:0},false:{displayValue:e("advancedFilterFalse"),evaluator:e=>!1===e,numOperands:0},blank:{displayValue:e("advancedFilterBlank"),evaluator:e=>null==e,numOperands:0},notBlank:{displayValue:e("advancedFilterNotBlank"),evaluator:e=>null!=e,numOperands:0}}}}},34899:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.FilterExpressionParser=void 0;const s=i(9471);t.FilterExpressionParser=class{constructor(e){this.params=e,this.valid=!1}parseExpression(){this.joinExpressionParser=new s.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:i,endPosition:s}=e;return ie===this.parsedOperator)),this.params.advFilterExpSvc.generateAutocompleteListParams(s,"join",i)}updateExpression(e,t,i){let{expression:s}=this.params;const o=t.displayValue??t.key;if(0===i)for(let e=this.operatorEndPositions.length-1;e>0;e--){const t=this.operatorEndPositions[e];null!=t&&(s=(0,r.updateExpression)(s,this.operatorStartPositions[e],t,o).updatedValue)}const n=this.operatorStartPositions.length>i?this.operatorStartPositions[i]:e,a=(this.operatorEndPositions.length>i?this.operatorEndPositions[i]:void 0)??(0,r.findEndPosition)(s,e,!0).endPosition;return(0,r.updateExpression)(s,n,a,o,!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]:"",i=this.params.advFilterExpSvc.getExpressionJoinOperators(),s=(0,o.findMatch)(t,i,e=>e);if(s){this.operatorEndPositions[this.activeOperator]=e;const o=i[s];if(this.activeOperator){if(s!==this.parsedOperator)return this.validationError||(this.validationError={message:this.params.advFilterExpSvc.translate("advancedFilterValidationJoinOperatorMismatch"),startPosition:e-t.length+1,endPosition:e}),!1}else this.parsedOperator=s;return t!==o&&((0,r.checkAndUpdateExpression)(this.params,t,o,e),this.operators[this.activeOperator]=o),!0}return null!==s&&(this.validationError||(this.validationError={message:this.params.advFilterExpSvc.translate("advancedFilterValidationInvalidJoinOperator"),startPosition:e-t.length+1,endPosition:e}),!0)}}class a{constructor(e,t){this.params=e,this.startPosition=t,this.expectingExpression=!0,this.expectingOperator=!1,this.expressionParsers=[],this.operatorParser=new n(this.params),this.missingEndBracket=!1,this.extraEndBracket=!1}parseExpression(){let e=this.startPosition;const{expression:t}=this.params;for(;e0&&(this.missingEndBracket=!0),e}isValid(){return!this.missingEndBracket&&!this.extraEndBracket&&this.expressionParsers.length===this.operatorParser.getNumOperators()+1&&this.operatorParser.isValid()&&this.expressionParsers.every(e=>e.isValid())}getValidationError(){const e=this.operatorParser.getValidationError();for(let t=0;tt.getFunction(e)),s="&&"===t?"every":"some";return(e,t,o)=>i[s](i=>i(e,t,o))}getAutocompleteListParams(e){if(null!=this.endPosition&&e>this.endPosition+1)return;if(!this.expressionParsers.length)return this.getColumnAutocompleteListParams();const t=this.getExpressionParserIndex(e);if(null==t)return"("===this.params.expression[e]?{enabled:!1}:this.getColumnAutocompleteListParams();const i=this.expressionParsers[t].getAutocompleteListParams(e);if(!i){if(tthis.endPosition+1?null:this.operatorParser.updateExpression(e,t,o):n}getModel(){return this.expressionParsers.length>1?{filterType:"join",type:this.operatorParser.getModel(),conditions:this.expressionParsers.map(e=>e.getModel())}:this.expressionParsers[0].getModel()}getColumnAutocompleteListParams(){return this.params.advFilterExpSvc.generateAutocompleteListParams(this.params.advFilterExpSvc.getColumnAutocompleteEntries(),"column","")}getExpressionParserIndex(e){let t;for(let i=0;ie)break;t=i}return t}}t.JoinFilterExpressionParser=a},39206:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.EnterpriseCoreModule=void 0;const s=i(63159),o=i(19586);t.EnterpriseCoreModule={moduleName:"EnterpriseCore",version:o.VERSION,beans:[s.GridLicenseManager],icons:{accordionOpen:"tree-open",accordionClosed:"tree-closed",accordionIndeterminate:"tree-indeterminate",close:"cross",cancel:"cancel",maximize:"maximize",minimize:"minimize",columnDrag:"grip"},dependsOn:[],setLicenseKey:s.GridLicenseManager.setLicenseKey}},97205:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.AgColorInputSelector=t.AgColorInput=void 0;const s=i(76624);class o extends s.AgInputTextField{wireBeans(e){this.color=e.agChartsExports._Util.Color}constructor(){super({template:{tag:"div",cls:"ag-color-input",role:"presentation",children:[{tag:"div",ref:"eLabel",cls:"ag-input-field-label"},{tag:"div",ref:"eWrapper",cls:"ag-wrapper ag-input-wrapper",role:"presentation",children:[{tag:"input",ref:"eInput",cls:"ag-input-field-input"},{tag:"div",ref:"eColor",cls:"ag-color-input-color"}]}]}}),this.eColor=s.RefPlaceholder}setColor(e){const t=e.toRgbaString();this.setValue(this.color.fromString(t).toHexString().toUpperCase(),!0),this.eColor.style.backgroundColor=t}setValue(e,t){const i=this.color.validColorString(e??"");return this.eInput.setCustomValidity(i?"":this.getLocaleTextFunc()("invalidColor","Color value is invalid")),super.setValue(e,t),i&&!t&&this.dispatchLocalEvent({type:"colorChanged"}),this}onColorChanged(e){this.addManagedListeners(this,{colorChanged:()=>e(this.color.fromString(this.value))})}}t.AgColorInput=o,t.AgColorInputSelector={selector:"AG-COLOR-INPUT",component:o}},52935:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.AgColorPanel=void 0;const s=i(76624),o=i(97205);let r=[];class n extends s._AgComponentStub{constructor(e){super('
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n \n
\n
\n
',[o.AgColorInputSelector]),this.H=1,this.S=1,this.B=1,this.A=1,this.isSpectrumDragging=!1,this.isSpectrumHueDragging=!1,this.isSpectrumAlphaDragging=!1,this.colorChanged=!1,this.spectrumColor=s.RefPlaceholder,this.spectrumVal=s.RefPlaceholder,this.spectrumDragger=s.RefPlaceholder,this.spectrumHue=s.RefPlaceholder,this.spectrumHueSlider=s.RefPlaceholder,this.spectrumAlpha=s.RefPlaceholder,this.spectrumAlphaSlider=s.RefPlaceholder,this.colorInput=s.RefPlaceholder,this.recentColors=s.RefPlaceholder,this.picker=e.picker}wireBeans(e){this._Color=e.agChartsExports._Util.Color}postConstruct(){this.initTabIndex(),this.initRecentColors(),this.addGuiEventListener("focus",()=>this.spectrumColor.focus()),this.addGuiEventListener("keydown",e=>{e.key!==s.KeyCode.ENTER||e.defaultPrevented||this.destroy()}),this.addManagedListeners(this.spectrumColor,{keydown:e=>this.moveDragger(e)}),this.addManagedListeners(this.spectrumAlphaSlider,{keydown:e=>this.moveAlphaSlider(e)}),this.addManagedListeners(this.spectrumHueSlider,{keydown:e=>this.moveHueSlider(e)}),this.addManagedListeners(this.spectrumVal,{mousedown:this.onSpectrumDraggerDown.bind(this)}),this.addManagedListeners(this.spectrumHue,{mousedown:this.onSpectrumHueDown.bind(this)}),this.addManagedListeners(this.spectrumAlpha,{mousedown:this.onSpectrumAlphaDown.bind(this)}),this.addGuiEventListener("mousemove",e=>{this.onSpectrumDraggerMove(e),this.onSpectrumHueMove(e),this.onSpectrumAlphaMove(e)}),this.addManagedListeners(document,{mouseup:this.onMouseUp.bind(this)}),this.colorInput.onColorChanged(this.setColor.bind(this)),this.addManagedListeners(this.recentColors,{click:this.onRecentColorClick.bind(this),keydown:e=>{e.key!==s.KeyCode.ENTER&&e.key!==s.KeyCode.SPACE||(e.preventDefault(),this.onRecentColorClick(e))}})}initTabIndex(){const e=this.tabIndex=this.gos.get("tabIndex").toString();this.spectrumColor.setAttribute("tabindex",e),this.spectrumHueSlider.setAttribute("tabindex",e),this.spectrumAlphaSlider.setAttribute("tabindex",e)}refreshSpectrumRect(){return this.spectrumValRect=this.spectrumVal.getBoundingClientRect()}refreshHueRect(){return this.spectrumHueRect=this.spectrumHue.getBoundingClientRect()}refreshAlphaRect(){return this.spectrumAlphaRect=this.spectrumAlpha.getBoundingClientRect()}onSpectrumDraggerDown(e){e.preventDefault(),this.refreshSpectrumRect(),this.isSpectrumDragging=!0,this.moveDragger(e)}onSpectrumDraggerMove(e){this.isSpectrumDragging&&this.moveDragger(e)}onSpectrumHueDown(e){this.refreshHueRect(),this.isSpectrumHueDragging=!0,this.moveHueSlider(e)}onSpectrumHueMove(e){this.isSpectrumHueDragging&&this.moveHueSlider(e)}onSpectrumAlphaDown(e){this.refreshAlphaRect(),this.isSpectrumAlphaDragging=!0,this.moveAlphaSlider(e)}onSpectrumAlphaMove(e){this.isSpectrumAlphaDragging&&this.moveAlphaSlider(e)}onMouseUp(){this.isSpectrumDragging=!1,this.isSpectrumHueDragging=!1,this.isSpectrumAlphaDragging=!1}moveDragger(e){const t=this.spectrumValRect;if(!t)return;let i,o;if(e instanceof MouseEvent)i=e.clientX-t.left,o=e.clientY-t.top;else{const t=e.key===s.KeyCode.LEFT,r=e.key===s.KeyCode.RIGHT,n=e.key===s.KeyCode.UP,a=e.key===s.KeyCode.DOWN,l=n||a,d=t||r;if(!l&&!d)return;e.preventDefault();const{x:c,y:u}=this.getSpectrumValue();i=c+(d?t?-5:5:0),o=u+(l?n?-5:5:0)}i=Math.max(i,0),i=Math.min(i,t.width),o=Math.max(o,0),o=Math.min(o,t.height),this.setSpectrumValue(i/t.width,1-o/t.height)}moveHueSlider(e){const t=this.spectrumHueRect;if(!t)return;const i=this.moveSlider(this.spectrumHueSlider,e);null!=i&&(this.H=1-i/t.width,this.update())}moveAlphaSlider(e){const t=this.spectrumAlphaRect;if(!t)return;const i=this.moveSlider(this.spectrumAlphaSlider,e);null!=i&&(this.A=i/t.width,this.update())}moveSlider(e,t){const i=e.getBoundingClientRect(),o=e.parentElement?.getBoundingClientRect();if(!e||!o)return null;const r=i.width/2;let n;if(t instanceof MouseEvent)n=Math.floor(t.clientX-o.left);else{const i=t.key===s.KeyCode.LEFT,o=t.key===s.KeyCode.RIGHT;if(!i&&!o)return null;t.preventDefault();const a=i?-5:5;n=parseFloat(e.style.left)+r+a}return n=Math.max(n,0),n=Math.min(n,o.width),e.style.left=n-r+"px",n}update(e){const{A:t,S:i,B:s,H:o,_Color:r}=this,n=360*o,a=r.fromHSB(n,i,s,t),l=a.toRgbaString(),d=r.fromHSB(n,i,s).toRgbaString(),c=r.fromHSB(n,1,1).toRgbaString(),u=this.picker;r.fromString(u.getValue()).toRgbaString()!==l&&(this.colorChanged=!0),u.setValue(l),this.spectrumColor.style.backgroundColor=c,this.spectrumDragger.style.backgroundColor=d,this.spectrumHueSlider.style.backgroundColor=c,this.spectrumAlpha.style.setProperty("--ag-internal-spectrum-alpha-color-from",r.fromHSB(n,i,s,0).toRgbaString()),this.spectrumAlpha.style.setProperty("--ag-internal-spectrum-alpha-color-to",d),this.spectrumAlpha.style.setProperty("--ag-internal-spectrum-alpha-color",l),e||this.colorInput.setColor(a)}setSpectrumValue(e,t,i){const s=this.spectrumValRect||this.refreshSpectrumRect();if(null==s)return;const o=this.spectrumDragger,r=o.getBoundingClientRect();e=Math.max(0,e),e=Math.min(1,e),t=Math.max(0,t),t=Math.min(1,t),this.S=e,this.B=t,o.style.left=e*s.width-r.width/2+"px",o.style.top=(1-t)*s.height-r.height/2+"px",this.update(i)}getSpectrumValue(){const e=this.spectrumDragger,t=e.getBoundingClientRect();return{x:parseFloat(e.style.left)+t.width/2,y:parseFloat(e.style.top)+t.height/2}}initRecentColors(){const e=r,t=e.map((e,t)=>`
`);this.recentColors.innerHTML=t.join(""),(0,s._setDisplayed)(this.recentColors,!!e.length)}setValue(e){const t=this._Color.fromString(e);this.setColor(t,!0)}setColor(e,t){const[i,s,o]=e.toHSB();this.H=(isNaN(i)?0:i)/360,this.A=e.a;const r=this.spectrumHueRect||this.refreshHueRect(),n=this.spectrumAlphaRect||this.refreshAlphaRect();this.spectrumHueSlider.style.left=(this.H-1)*-r.width-this.spectrumHueSlider.getBoundingClientRect().width/2+"px",this.spectrumAlphaSlider.style.left=this.A*n.width-this.spectrumAlphaSlider.getBoundingClientRect().width/2+"px",this.setSpectrumValue(s,o,!t)}onRecentColorClick(e){const t=e.target;if(!(0,s._exists)(t.id))return;const i=parseInt(t.id,10);this.setValue(r[i]),this.destroy()}addRecentColor(){const e=this._Color.fromHSB(360*this.H,this.S,this.B,this.A).toRgbaString();let t=r;this.colorChanged&&t[0]!==e&&(t=t.filter(t=>t!=e),t=[e].concat(t),t.length>8&&(t=t.slice(0,8)),r=t)}destroy(){this.addRecentColor(),super.destroy()}}t.AgColorPanel=n},48139:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.AgColorPickerSelector=t.AgColorPicker=void 0;const s=i(76624),o=i(52935),r=i(87144);class n extends s.AgPickerField{constructor(e){super({pickerAriaLabelKey:"ariaLabelColorPicker",pickerAriaLabelValue:"Color Picker",pickerType:"ag-list",className:"ag-color-picker",pickerIcon:"chartsColorPicker",...e})}postConstruct(){this.eDisplayFieldColor=(0,s._createElement)({tag:"span",cls:"ag-color-picker-color"}),this.eDisplayFieldText=(0,s._createElement)({tag:"span",cls:"ag-color-picker-value"}),this.eDisplayField.append(this.eDisplayFieldColor,this.eDisplayFieldText),super.postConstruct(),this.value&&this.setValue(this.value)}createPickerComponent(){const e=this.eWrapper.getBoundingClientRect(),t=this.beans.popupSvc.getParentRect();return this.createBean(new r.AgDialog({closable:!1,modal:!0,hideTitleBar:!0,minWidth:190,width:190,height:250,x:e.right-t.left-190,y:e.top-t.top-250-(this.config.pickerGap??0),postProcessPopupParams:{type:"colorPicker",eventSource:this.eWrapper}},this.config.dialogCallbacks))}renderAndPositionPicker(){const e=this.pickerComponent,t=this.createBean(new o.AgColorPanel({picker:this}));return e.addCss("ag-color-dialog"),t.addDestroyFunc(()=>{e.isAlive()&&this.destroyBean(e)}),e.setParentComponent(this),e.setBodyComponent(t),t.setValue(this.getValue()),t.getGui().focus(),e.addDestroyFunc(()=>{this.isDestroyingPicker?this.isDestroyingPicker=!1:(this.beforeHidePicker(),this.isDestroyingPicker=!0,t.isAlive()&&this.destroyBean(t),this.isAlive()&&this.getFocusableElement().focus())}),()=>this.pickerComponent?.close()}setValue(e){return this.value===e?this:(this.eDisplayFieldColor.style.backgroundColor=e,this.eDisplayFieldText.textContent=this.beans.agChartsExports._Util.Color.fromString(e).toHexString().toUpperCase(),super.setValue(e))}getValue(){return this.value}}t.AgColorPicker=n,t.AgColorPickerSelector={selector:"AG-COLOR-PICKER",component:n}},87479:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.AgContextMenuService=void 0;const s=i(76624),o=i(67255);class r extends s._AgBeanStub{constructor(e){super(),this.params=e,this.destroyLoadingSpinner=null,this.lastPromise=0}hideActiveMenu(){this.destroyBean(this.activeMenu)}showMenu(e,t,i){const{getMenuItems:o,shouldBlockMenuOpen:r}=this.params,n=o(e,t);if((0,s._isPromise)(n)){const o=this.lastPromise+1;return this.lastPromise=o,this.destroyLoadingSpinner||this.createLoadingIcon(t),n.then(n=>{if(this.lastPromise!==o)return;const{target:a}=t,l=!a;n?.length&&(l||(0,s._isVisible)(a))&&!r?.()&&this.createContextMenu({menuItems:n,menuActionParams:e,mouseEvent:t,anchorToElement:i}),this.destroyLoadingSpinner?.()}),!0}return!!n?.length&&(this.createContextMenu({menuItems:n,menuActionParams:e,mouseEvent:t,anchorToElement:i}),!0)}createLoadingIcon(e){const{beans:t}=this,i=this.getLocaleTextFunc(),o=t.iconSvc.createIconNoSpan("loadingMenuItems"),r=(0,s._createAgElement)({tag:"div",cls:"ag-context-menu-loading-icon"});r.appendChild(o);const n=(0,s._getRootNode)(t),a=(0,s._getPageBody)(t);if(!a)return;a.appendChild(r),t.ariaAnnounce?.announceValue(i("ariaLabelLoadingContextMenu","Loading Context Menu"),"contextmenu"),t.environment.applyThemeClasses(r),(0,s._anchorElementToMouseMoveEvent)(r,e,t);const l=e=>{(0,s._anchorElementToMouseMoveEvent)(r,e,t)};n.addEventListener("mousemove",l),this.destroyLoadingSpinner=()=>{n.removeEventListener("mousemove",l),r.remove(),this.destroyLoadingSpinner=null}}createContextMenu(e){const{mapMenuItems:t,menuItemCallbacks:i,beforeMenuOpen:s,onMenuClose:o,afterMenuDestroyed:r,onVisibleChanged:a,onMenuOpen:l}=this.params,{menuItems:d,menuActionParams:c,mouseEvent:u,anchorToElement:h}=e,g=this.beans.popupSvc,p=new n(t?e=>t(d,c,e):()=>d,c,i);this.createBean(p);const m=p.getGui();s?.(c);const f={additionalParams:i.getPostProcessPopupParams(c),type:"contextMenu",mouseEvent:u,ePopup:m,nudgeY:1},C=this.getLocaleTextFunc(),v=g?.addPopup({modal:!0,eChild:m,closeOnEsc:!0,closedCallback:e=>{i.preserveRangesWhile(this.beans,()=>{o?.(),this.destroyBean(p),r?.(),a?.(!1,void 0===e?"api":"ui")})},click:u,positionCallback:()=>{const e=this.gos.get("enableRtl");g?.positionPopupUnderMouseEvent({...f,nudgeX:e?-1*(m.offsetWidth+1):1})},anchorToElement:h,ariaLabel:C("ariaLabelContextMenu","Context Menu")});v&&(l?.(),p.afterGuiAttached({container:"contextMenu",hidePopup:v.hideFunc})),this.activeMenu&&this.hideActiveMenu(),this.activeMenu=p,p.addEventListener("destroyed",()=>{this.activeMenu===p&&(this.activeMenu=null)}),v&&p.addEventListener("closeMenu",e=>v.hideFunc({mouseEvent:e.mouseEvent??void 0,keyboardEvent:e.keyboardEvent??void 0,forceHide:!0}));const w=u&&u instanceof MouseEvent&&"mousedown"===u.type;a?.(!0,w?"api":"ui")}destroy(){this.destroyLoadingSpinner?.(),super.destroy()}}t.AgContextMenuService=r;class n extends s._AgComponentStub{constructor(e,t,i){super({tag:"div",cls:"ag-menu",role:"presentation"}),this.getMenuItems=e,this.menuActionParams=t,this.callbacks=i,this.menuList=null}postConstruct(){const e=this.createManagedBean(new o.AgMenuList(0,this.menuActionParams,this.callbacks)),t=this.getMenuItems(()=>this.getGui());e.addMenuItems(t),this.appendChild(e),this.menuList=e,e.addEventListener("closeMenu",e=>this.dispatchLocalEvent(e))}afterGuiAttached({hidePopup:e}){e&&this.addDestroyFunc(e);const t=this.menuList;t&&this.callbacks.preserveRangesWhile(this.beans,()=>(0,s._focusInto)(t.getGui()))}}},87144:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.AgDialog=void 0;const s=i(76624),o=i(44948);class r extends o.AgPanel{wireBeans(e){this.popupSvc=e.popupSvc}constructor(e,t){super({...e,popup:!0}),this.callbacks=t,this.isMaximizable=!1,this.isMaximized=!1,this.maximizeListeners=[],this.resizeListenerDestroy=null,this.lastPosition={x:0,y:0,width:0,height:0}}postConstruct(){const e=this.getGui(),{movable:t,resizable:i,maximizable:o,modal:r}=this.config;this.addCss("ag-dialog"),super.postConstruct(),this.tabGuardFeature=this.createManagedBean(new s._AgTabGuardFeature(this,this.callbacks?.stopPropagationCallbacks)),this.tabGuardFeature.initialiseTabGuard({isFocusableContainer:!0,onFocusIn:()=>{this.popupSvc?.bringPopupToFront(e)},onTabKeyDown:t=>{if(r)return;const i=t.shiftKey,o=(0,s._findNextFocusableElement)(this.beans,e,!1,i);o&&!this.tabGuardFeature.getTabGuardCtrl().isTabGuard(o)||this.callbacks?.focusNextContainer(this.beans,i)&&t.preventDefault()}}),t&&this.setMovable(t),o&&this.setMaximizable(o),i&&this.setResizable(i),this.config.modal||this.callbacks?.configureFocusableContainer(this.beans,this)}setAllowFocus(e){this.tabGuardFeature.getTabGuardCtrl().setAllowFocus(e)}renderComponent(){const e=this.getGui(),{alwaysOnTop:t,modal:i,title:s,afterGuiAttached:o}=this.config,r=this.getLocaleTextFunc(),n=this.popupSvc?.addPopup({modal:i,eChild:e,closeOnEsc:!0,closedCallback:this.onClosed.bind(this),alwaysOnTop:t,ariaLabel:s||r("ariaLabelDialog","Dialog"),afterGuiAttached:o});n&&(this.close=n.hideFunc)}onClosed(e){this.destroy(),this.config.closedCallback?.(e)}setMaximized(e){this.isMaximizable&&e!==this.isMaximized&&this.toggleMaximize()}toggleMaximize(){const e=this.positionableFeature.getPosition();if(this.isMaximized){const{x:e,y:t,width:i,height:s}=this.lastPosition;this.setWidth(i),this.setHeight(s),this.positionableFeature.offsetElement(e,t)}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,s._setDisplayed)(this.maximizeIcon,!this.isMaximized),(0,s._setDisplayed)(this.minimizeIcon,this.isMaximized)}clearMaximizebleListeners(){if(this.maximizeListeners.length){for(const e of this.maximizeListeners)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)return this.clearMaximizebleListeners(),void(this.maximizeButtonComp&&(this.destroyBean(this.maximizeButtonComp),this.maximizeButtonComp=this.maximizeIcon=this.minimizeIcon=void 0));const t=this.eTitleBar;if(!t||e===this.isMaximizable)return;this.isMaximizable=e;const i=this.buildMaximizeAndMinimizeElements();this.refreshMaximizeIcon(),i.addManagedElementListeners(i.getGui(),{click:this.toggleMaximize.bind(this)}),this.addTitleBarButton(i,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 s._AgComponentStub({tag:"div",cls:"ag-dialog-button"})),t=e.getGui(),i=this.beans.iconSvc;return this.maximizeIcon=i.createIconNoSpan("maximize"),t.appendChild(this.maximizeIcon),this.maximizeIcon.classList.add("ag-panel-title-bar-button-icon"),this.minimizeIcon=i.createIconNoSpan("minimize"),t.appendChild(this.minimizeIcon),this.minimizeIcon.classList.add("ag-panel-title-bar-button-icon"),e}}t.AgDialog=r},37899:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.agGroupComponentCSS=void 0,t.agGroupComponentCSS=".ag-group{position:relative;width:100%}.ag-group-title-bar{align-items:center;display:flex;padding:var(--ag-spacing)}.ag-group-title{display:inline;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}:where(.ag-group-title-bar) .ag-group-title{cursor:default}.ag-group-toolbar{align-items:center;display:flex;padding:var(--ag-spacing)}.ag-group-container{display:flex}.ag-disabled .ag-group-container{pointer-events:none}.ag-disabled-group-container,.ag-disabled-group-title-bar{opacity:.5}.ag-group-container-horizontal{flex-flow:row wrap}.ag-group-container-vertical{flex-direction:column}.ag-group-title-bar-icon{cursor:pointer;flex:none}:where(.ag-ltr) .ag-group-title-bar-icon{margin-right:var(--ag-spacing)}:where(.ag-rtl) .ag-group-title-bar-icon{margin-left:var(--ag-spacing)}:where(.ag-group-item-alignment-stretch) .ag-group-item{align-items:stretch}:where(.ag-group-item-alignment-start) .ag-group-item{align-items:flex-start}:where(.ag-group-item-alignment-end) .ag-group-item{align-items:flex-end}"},61994:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.AgGroupComponentSelector=t.AgGroupComponent=void 0;const s=i(76624),o=i(37899);class r extends s._AgComponentStub{constructor(e={}){super(function(e){const t=e.cssIdentifier||"default";return{tag:"div",cls:`ag-group ag-${t}-group`,role:"presentation",children:[{tag:"div",ref:"eToolbar",cls:`ag-group-toolbar ag-${t}-group-toolbar`,children:[{tag:"ag-checkbox",ref:"cbGroupEnabled"}]},{tag:"div",ref:"eContainer",cls:`ag-group-container ag-group-container-${e.direction||"vertical"} ag-${t}-group-container`}]}}(e),[s.AgCheckboxSelector]),this.params=e,this.suppressEnabledCheckbox=!0,this.suppressToggleExpandOnEnableChange=!1,this.eToolbar=s.RefPlaceholder,this.cbGroupEnabled=s.RefPlaceholder,this.eContainer=s.RefPlaceholder,this.registerCSS(o.agGroupComponentCSS);const{enabled:t,items:i,suppressEnabledCheckbox:r,expanded:n,suppressToggleExpandOnEnableChange:a,useToggle:l}=e;this.cssIdentifier=e.cssIdentifier||"default",this.enabled=null==t||t,this.items=i||[],this.useToggle=l??!1,this.alignItems=e.alignItems||"center",this.expanded=null==n||n,null!=r&&(this.suppressEnabledCheckbox=r),null!=a&&(this.suppressToggleExpandOnEnableChange=a)}postConstruct(){if(this.setupTitleBar(),this.items.length){const e=this.items;this.items=[],this.addItems(e)}const e=this.getLocaleTextFunc();this.cbGroupEnabled.setLabel(e("enabled","Enabled")),this.enabled&&this.setEnabled(this.enabled,void 0,!0),this.setAlignItems(this.alignItems);const{onEnableChange:t,onExpandedChange:i,suppressOpenCloseIcons:o}=this.params;this.hideEnabledCheckbox(this.suppressEnabledCheckbox),this.hideOpenCloseIcons(o??!1),this.refreshChildDisplay(),(0,s._setDisplayed)(this.eContainer,this.expanded),this.cbGroupEnabled.onValueChange(e=>{this.setEnabled(e,!0,this.suppressToggleExpandOnEnableChange),this.dispatchEnableChangeEvent(e)}),null!=t&&this.onEnableChange(t),null!=i&&this.onExpandedChange(i)}refreshChildDisplay(){(0,s._setDisplayed)(this.eToolbar,this.expanded&&!this.suppressEnabledCheckbox),this.eTitleBar?.refreshOnExpand(this.expanded)}isExpanded(){return this.expanded}setAlignItems(e){this.alignItems!==e&&this.removeCss(`ag-group-item-alignment-${this.alignItems}`),this.alignItems=e;const t=`ag-group-item-alignment-${this.alignItems}`;return this.addCss(t),this}toggleGroupExpand(e,t){if(this.eTitleBar?.isSuppressCollapse()&&!this.useToggle)e=!0,t=!0;else if(e=null!=e?e:!this.expanded,this.expanded===e)return this;return this.expanded=e,this.refreshChildDisplay(),(0,s._setDisplayed)(this.eContainer,e),t||this.dispatchLocalEvent({type:e?"expanded":"collapsed"}),this}addItems(e){for(const t of e)this.addItem(t)}prependItem(e){this.insertItem(e,!0)}addItem(e){this.insertItem(e,!1)}updateItems(e){const t=this.items;let i=0;for(let o=0;oe(t.enabled)}),this}onExpandedChange(e){return this.addManagedListeners(this,{expanded:()=>e(!0),collapsed:()=>e(!1)}),this}hideEnabledCheckbox(e){return this.suppressEnabledCheckbox=e,this.refreshChildDisplay(),this.refreshDisabledStyles(),this}hideOpenCloseIcons(e){return this.eTitleBar?.hideOpenCloseIcons(e),this}refreshDisabledStyles(){const e=!this.enabled;this.eContainer.classList.toggle("ag-disabled",e),this.eTitleBar?.refreshDisabledStyles(this.suppressEnabledCheckbox&&e),this.eContainer.classList.toggle("ag-disabled-group-container",e)}setupTitleBar(){const e=this.useToggle?this.createToggleTitleBar():this.createDefaultTitleBar();this.eToolbar.insertAdjacentElement("beforebegin",e.getGui())}createDefaultTitleBar(){const e=this.createManagedBean(new a(this.params));return this.eTitleBar=e,e.refreshOnExpand(this.expanded),this.addManagedListeners(e,{expandedChanged:e=>this.toggleGroupExpand(e.expanded)}),e}createToggleTitleBar(){const e=this.createManagedBean(new s.AgToggleButton({value:this.enabled,label:this.params.title,labelAlignment:"left",labelWidth:"flex",onValueChange:e=>{this.setEnabled(e,!0),this.dispatchEnableChangeEvent(e)}}));return e.addCss("ag-group-title-bar"),e.addCss(`ag-${this.params.cssIdentifier??"default"}-group-title-bar ag-unselectable`),this.eToggle=e,this.toggleGroupExpand(this.enabled),e}}t.AgGroupComponent=r;const n="ag-disabled-group-title-bar";class a extends s._AgComponentStub{constructor(e={}){super(function(e){const t=e.cssIdentifier??"default";return{tag:"div",cls:`ag-group-title-bar ag-${t}-group-title-bar ag-unselectable`,role:e.suppressKeyboardNavigation?"presentation":"group",children:[{tag:"span",ref:"eGroupOpenedIcon",cls:`ag-group-title-bar-icon ag-${t}-group-title-bar-icon`,role:"presentation"},{tag:"span",ref:"eGroupClosedIcon",cls:`ag-group-title-bar-icon ag-${t}-group-title-bar-icon`,role:"presentation"},{tag:"span",ref:"eTitle",cls:`ag-group-title ag-${t}-group-title`}]}}(e)),this.suppressOpenCloseIcons=!1,this.suppressKeyboardNavigation=!1,this.eGroupOpenedIcon=s.RefPlaceholder,this.eGroupClosedIcon=s.RefPlaceholder,this.eTitle=s.RefPlaceholder;const{title:t,suppressOpenCloseIcons:i,suppressKeyboardNavigation:o}=e;t&&t.length>0&&(this.title=t),null!=i&&(this.suppressOpenCloseIcons=i),this.suppressKeyboardNavigation=o??!1}postConstruct(){this.setTitle(this.title),this.hideOpenCloseIcons(this.suppressOpenCloseIcons),this.setupExpandContract()}setupExpandContract(){const e=this.beans.iconSvc;this.eGroupClosedIcon.appendChild(e.createIconNoSpan("accordionClosed")),this.eGroupOpenedIcon.appendChild(e.createIconNoSpan("accordionOpen")),this.addManagedElementListeners(this.getGui(),{click:()=>this.dispatchExpandChanged(),keydown:e=>{switch(e.key){case s.KeyCode.ENTER:case s.KeyCode.SPACE:e.preventDefault(),this.dispatchExpandChanged();break;case s.KeyCode.RIGHT:case s.KeyCode.LEFT:e.preventDefault(),this.dispatchExpandChanged(e.key===s.KeyCode.RIGHT)}}})}refreshOnExpand(e){this.refreshAriaStatus(e),this.refreshOpenCloseIcons(e)}refreshAriaStatus(e){this.suppressOpenCloseIcons||(0,s._setAriaExpanded)(this.getGui(),e)}refreshOpenCloseIcons(e){const t=!this.suppressOpenCloseIcons;(0,s._setDisplayed)(this.eGroupOpenedIcon,t&&e),(0,s._setDisplayed)(this.eGroupClosedIcon,t&&!e)}isSuppressCollapse(){return this.suppressOpenCloseIcons}dispatchExpandChanged(e){const t={type:"expandedChanged",expanded:e};this.dispatchLocalEvent(t)}setTitle(e){const t=this.getGui(),i=!!e&&e.length>0;e=i?e:void 0,this.eTitle.textContent=e??"",(0,s._setDisplayed)(t,i),e!==this.title&&(this.title=e);const o=t.classList.contains(n);return this.refreshDisabledStyles(o),this}addWidget(e){return this.getGui().appendChild(e),this}hideOpenCloseIcons(e){return this.suppressOpenCloseIcons=e,e&&this.dispatchExpandChanged(!0),this}refreshDisabledStyles(e){const t=this.getGui();e?(t.classList.add(n),t.removeAttribute("tabindex"),(0,s._setAriaRole)(t,"presentation")):(t.classList.remove(n),"string"!=typeof this.title||this.suppressKeyboardNavigation?(t.removeAttribute("tabindex"),(0,s._setAriaRole)(t,"presentation")):(this.activateTabIndex([t]),(0,s._setAriaRole)(t,"group")))}}t.AgGroupComponentSelector={selector:"AG-GROUP-COMPONENT",component:r}},20489:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.AgInputRangeSelector=t.AgInputRange=void 0;const s=i(76624);class o extends s.AgAbstractInputField{constructor(e){super(e,"ag-range-field","range")}postConstruct(){super.postConstruct();const{min:e,max:t,step:i}=this.config;null!=e&&this.setMinValue(e),null!=t&&this.setMaxValue(t),this.setStep(i||1)}addInputListeners(){this.addManagedElementListeners(this.eInput,{input:e=>{const t=e.target.value;this.setValue(t)}})}setMinValue(e){return this.min=e,this.eInput.setAttribute("min",e.toString()),this}setMaxValue(e){return this.max=e,this.eInput.setAttribute("max",e.toString()),this}setStep(e){return this.eInput.setAttribute("step",e.toString()),this}setValue(e,t){null!=this.min&&(e=Math.max(parseFloat(e),this.min).toString()),null!=this.max&&(e=Math.min(parseFloat(e),this.max).toString());const i=super.setValue(e,t);return this.eInput.value=e,i}}t.AgInputRange=o,t.AgInputRangeSelector={selector:"AG-INPUT-RANGE",component:o}},75749:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.AgMenuItemComponent=void 0;const s=i(76624),o=i(67255),r=i(20913);class n extends s._AgBeanStub{constructor(e){super(),this.callbacks=e,this.ACTIVATION_DELAY=80,this.isActive=!1,this.subMenuIsOpen=!1,this.subMenuIsOpening=!1,this.suppressRootStyles=!0,this.suppressAria=!0,this.suppressFocus=!0}init(e){const{menuItemDef:t,isAnotherSubMenuOpen:i,level:s,childComponent:o,contextParams:r}=e;return this.params=e.menuItemDef,this.level=s,this.isAnotherSubMenuOpen=i,this.childComponent=o,this.contextParams=r,this.cssClassPrefix=this.params.menuItemParams?.cssClassPrefix??"ag-menu-option",this.callbacks.getMenuItemComp(this.beans,this.params,{...t,level:s,isAnotherSubMenuOpen:i,openSubMenu:e=>this.openSubMenu(e),closeSubMenu:()=>this.closeSubMenu(),closeMenu:e=>this.closeMenu(e),updateTooltip:(e,t)=>this.refreshTooltip(e,t),onItemActivated:()=>this.onItemActivated()}).then(e=>{if(!e)return;this.menuItemComp=e;const t=e.configureDefaults?.();t&&this.configureDefaults(!0===t?void 0:t)})}addListeners(e,t){t?.suppressClick||this.addManagedElementListeners(e,{click:e=>this.onItemSelected(e)}),t?.suppressKeyboardSelect||this.addManagedElementListeners(e,{keydown:e=>{e.key!==s.KeyCode.ENTER&&e.key!==s.KeyCode.SPACE||(e.preventDefault(),this.onItemSelected(e))}}),t?.suppressMouseDown||this.addManagedElementListeners(e,{mousedown:e=>{e.stopPropagation(),e.preventDefault()}}),t?.suppressMouseOver||this.addManagedElementListeners(e,{mouseenter:()=>this.onMouseEnter(),mouseleave:()=>this.onMouseLeave()})}isDisabled(){return!!this.params.disabled}openSubMenu(e=!1,t){if(this.closeSubMenu(),!this.params.subMenu)return;this.subMenuIsOpening=!0;const i=(0,s._createElement)({tag:"div",cls:"ag-menu",role:"presentation"});let n;this.eSubMenuGui=i;let a=()=>{this.subMenuIsOpening=!1};if(this.childComponent){const e=this.createBean(new r.AgMenuPanel(this.childComponent));e.setParentComponent(this);const t=e.getGui(),s="mouseenter",o=()=>this.cancelDeactivate();t.addEventListener(s,o),n=()=>{t.removeEventListener(s,o),this.destroyBean(e)},i.appendChild(t),this.childComponent.afterGuiAttached&&(a=()=>{this.childComponent.afterGuiAttached(),this.subMenuIsOpening=!1})}else if(this.params.subMenu){const t=this.createBean(new o.AgMenuList(this.level+1,this.contextParams,this.callbacks));t.setParentComponent(this),t.addMenuItems(this.params.subMenu),i.appendChild(t.getGui()),this.addManagedListeners(t,{closeMenu:e=>this.dispatchLocalEvent(e)}),t.addGuiEventListener("mouseenter",()=>this.cancelDeactivate()),n=()=>this.destroyBean(t),e&&(a=()=>{t.activateFirstItem(),this.subMenuIsOpening=!1})}const l=this.beans.popupSvc,d=this.getLocaleTextFunc(),c=l?.addPopup({modal:!0,eChild:i,positionCallback:()=>{const e=this.eGui;l?.positionPopupForMenu({eventSource:e,ePopup:i,event:t instanceof MouseEvent?t:void 0,additionalParams:this.callbacks.getPostProcessPopupParams(this.contextParams)})},anchorToElement:this.eGui,ariaLabel:d("ariaLabelSubMenu","SubMenu"),afterGuiAttached:a});this.subMenuIsOpen=!0,this.setAriaExpanded(!0),this.hideSubMenu=()=>{c&&c.hideFunc(),this.subMenuIsOpen=!1,this.setAriaExpanded(!1),n(),this.menuItemComp.setExpanded?.(!1),this.eSubMenuGui=void 0},this.menuItemComp.setExpanded?.(!0)}setAriaExpanded(e){this.suppressAria||(0,s._setAriaExpanded)(this.eGui,e)}closeSubMenu(){this.hideSubMenu&&(this.hideSubMenu(),this.hideSubMenu=null,this.setAriaExpanded(!1))}isSubMenuOpen(){return this.subMenuIsOpen}isSubMenuOpening(){return this.subMenuIsOpening}activate(e,t){this.cancelActivate(),this.params.disabled&&!t||(this.isActive=!0,this.suppressRootStyles||this.eGui.classList.add(`${this.cssClassPrefix}-active`),this.menuItemComp.setActive?.(!0),this.suppressFocus||this.callbacks.preserveRangesWhile(this.beans,()=>this.eGui.focus({preventScroll:!t})),e&&this.params.subMenu&&window.setTimeout(()=>{this.isAlive()&&this.isActive&&this.openSubMenu()},300),this.onItemActivated())}deactivate(){this.cancelDeactivate(),this.suppressRootStyles||this.eGui.classList.remove(`${this.cssClassPrefix}-active`),this.menuItemComp.setActive?.(!1),this.isActive=!1,this.subMenuIsOpen&&this.closeSubMenu()}getGui(){return this.menuItemComp.getGui()}getParentComponent(){return this.parentComponent}setParentComponent(e){this.parentComponent=e}getSubMenuGui(){return this.eSubMenuGui}onItemSelected(e){this.menuItemComp.select?.(),this.params.action?this.beans.frameworkOverrides.wrapOutgoing(()=>this.params.action(this.gos.addCommon({...this.contextParams}))):this.openSubMenu(e&&"keydown"===e.type,e),this.params.subMenu&&!this.params.action||this.params.suppressCloseOnSelect||this.closeMenu(e)}closeMenu(e){const t={type:"closeMenu"};e&&(e instanceof MouseEvent?t.mouseEvent=e:t.keyboardEvent=e),this.dispatchLocalEvent(t)}onItemActivated(){const e={type:"menuItemActivated",menuItem:this};this.dispatchLocalEvent(e)}cancelActivate(){this.activateTimeoutId&&(window.clearTimeout(this.activateTimeoutId),this.activateTimeoutId=0)}cancelDeactivate(){this.deactivateTimeoutId&&(window.clearTimeout(this.deactivateTimeoutId),this.deactivateTimeoutId=0)}onMouseEnter(){this.cancelDeactivate(),this.isAnotherSubMenuOpen()?this.activateTimeoutId=window.setTimeout(()=>this.activate(!0),this.ACTIVATION_DELAY):this.activate(!0)}onMouseLeave(){this.cancelActivate(),this.isSubMenuOpen()?this.deactivateTimeoutId=window.setTimeout(()=>this.deactivate(),this.ACTIVATION_DELAY):this.deactivate()}refreshRootElementGui(e){let t=this.menuItemComp.getGui();const{cssClassPrefix:i,params:{cssClasses:s,disabled:o}}=this,r=this.menuItemComp.getRootElement?.();if(r&&(e||t.classList.add("ag-menu-option-custom"),t=r),this.suppressRootStyles=!!e,!this.suppressRootStyles){t.classList.add(i);for(const e of s??[])t.classList.add(e);o&&t.classList.add(`${i}-disabled`)}return t}applyAriaProperties(e){const{params:{checked:t,subMenu:i,subMenuRole:o,disabled:r}}=this,n=null!=t;(0,s._setAriaRole)(e,n?"menuitemcheckbox":"menuitem"),i&&(0,s._setAriaHasPopup)(e,o??"menu"),r&&(0,s._setAriaDisabled)(e,!0)}configureDefaults(e){if(!this.menuItemComp)return void setTimeout(()=>this.configureDefaults(e));const{suppressRootStyles:t,suppressTooltip:i,suppressAria:s,suppressTabIndex:o,suppressFocus:r}=e||{},{params:{tooltip:n,disabled:a}}=this,l=this.eGui=this.refreshRootElementGui(!!t);this.suppressAria=!!s,s||this.applyAriaProperties(l),o||l.setAttribute("tabindex","-1"),i||this.refreshTooltip(n),a||this.addListeners(l,e),this.suppressFocus=!!r}refreshTooltip(e,t){if(this.tooltip=e,this.tooltipFeature=this.destroyBean(this.tooltipFeature),!e||!this.menuItemComp)return;const i=this.beans.registry.createDynamicBean("tooltipFeature",!1,{getGui:()=>this.getGui(),getTooltipValue:()=>this.tooltip,getLocation:()=>"menu",shouldDisplayTooltip:t});i&&(this.tooltipFeature=this.createBean(i))}destroy(){this.tooltipFeature=this.destroyBean(this.tooltipFeature),this.menuItemComp?.destroy?.(),super.destroy()}}t.AgMenuItemComponent=n},50531:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.AgMenuItemRenderer=void 0;const s=i(76624);class o extends s._AgComponentStub{constructor(e){super({tag:"div"}),this.callbacks=e}init(e){this.params=e,this.cssClassPrefix=this.params.cssClassPrefix??"ag-menu-option",this.addAriaAttributes(),this.addIcon(),this.addName(),this.addShortcut(),this.addSubMenu()}configureDefaults(){return!0}addAriaAttributes(){const{checked:e,subMenu:t}=this.params,i=this.getGui();e&&(0,s._setAriaChecked)(i,e),t&&(0,s._setAriaExpanded)(i,!1)}addIcon(){if(this.params.isCompact)return;const e=(0,s._createAgElement)({tag:"span",ref:"eIcon",cls:`${this.getClassName("part")} ${this.getClassName("icon")}`,role:"presentation"}),{checked:t,icon:i}=this.params;t?e.appendChild(this.beans.iconSvc.createIconNoSpan("check")):i&&((0,s._isNodeOrElement)(i)?e.appendChild(i):"string"==typeof i?e.innerHTML=i:this.callbacks?.warnNoIcon?.()),this.getGui().appendChild(e)}addName(){const e=(0,s._createAgElement)({tag:"span",ref:"eName",cls:`${this.getClassName("part")} ${this.getClassName("text")}`,children:this.params.name||""});this.getGui().appendChild(e)}addShortcut(){if(this.params.isCompact)return;const e=(0,s._createAgElement)({tag:"span",ref:"eShortcut",cls:`${this.getClassName("part")} ${this.getClassName("shortcut")}`,children:this.params.shortcut||""});this.getGui().appendChild(e)}addSubMenu(){const e=(0,s._createAgElement)({tag:"span",ref:"ePopupPointer",cls:`${this.getClassName("part")} ${this.getClassName("popup-pointer")}`}),t=this.getGui();if(this.params.subMenu){const t=this.gos.get("enableRtl")?"subMenuOpenRtl":"subMenuOpen";e.appendChild(this.beans.iconSvc.createIconNoSpan(t))}t.appendChild(e)}getClassName(e){return`${this.cssClassPrefix}-${e}`}}t.AgMenuItemRenderer=o},67255:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.AgMenuList=void 0;const s=i(76624),o=i(75749);class r extends s._AgTabGuardComp{constructor(e=0,t,i){super({tag:"div",cls:"ag-menu-list",role:"menu"}),this.level=e,this.menuActionParams=t,this.callbacks=i,this.menuItems=[]}postConstruct(){this.initialiseTabGuard({onTabKeyDown:e=>this.onTabKeyDown(e),handleKeyDown:e=>this.callbacks.preserveRangesWhile(this.beans,()=>this.handleKeyDown(e)),onFocusIn:e=>this.handleFocusIn(e),onFocusOut:e=>this.handleFocusOut(e)})}onTabKeyDown(e){const t=this.getParentComponent(),i=t?.getGui()?.classList.contains("ag-focus-managed");i||e.preventDefault(),e.shiftKey&&this.closeIfIsChild(e)}handleKeyDown(e){switch(e.key){case s.KeyCode.UP:case s.KeyCode.RIGHT:case s.KeyCode.DOWN:case s.KeyCode.LEFT:e.preventDefault(),this.handleNavKey(e.key);break;case s.KeyCode.ESCAPE:this.closeIfIsChild()&&this.callbacks.stopPropagationCallbacks.stopPropagation(e)}}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){null!=e&&s.AgPromise.all(e.map(e=>"separator"===e?s.AgPromise.resolve({eGui:this.createSeparator()}):"string"==typeof e?(this.callbacks.warnNoItem?.(e),s.AgPromise.resolve({eGui:null})):this.addItem(e))).then(e=>{for(const t of e??[])t?.eGui&&(this.appendChild(t.eGui),t.comp&&this.menuItems.push(t.comp))})}addItem(e){const t=this.createManagedBean(new o.AgMenuItemComponent(this.callbacks));return t.init({menuItemDef:e,isAnotherSubMenuOpen:()=>this.menuItems.some(e=>e.isSubMenuOpen()),level:this.level,contextParams:this.menuActionParams}).then(()=>(t.setParentComponent(this),this.addManagedListeners(t,{closeMenu:e=>{this.dispatchLocalEvent(e)},menuItemActivated:e=>{this.activeMenuItem&&this.activeMenuItem!==e.menuItem&&this.activeMenuItem.deactivate(),this.activeMenuItem=e.menuItem}}),{comp:t,eGui:t.getGui()}))}activateFirstItem(){const e=this.menuItems.filter(e=>!e.isDisabled())[0];e&&e.activate()}createSeparator(){const e={tag:"div",cls:"ag-menu-separator-part"};return(0,s._createAgElement)({tag:"div",cls:"ag-menu-separator",attrs:{"aria-hidden":"true"},children:[e,e,e,e]})}handleNavKey(e){switch(e){case s.KeyCode.UP:case s.KeyCode.DOWN:{const t=this.findNextItem(e===s.KeyCode.UP);return void(t&&t!==this.activeMenuItem&&t.activate(!1,!0))}}e===(this.gos.get("enableRtl")?s.KeyCode.RIGHT:s.KeyCode.LEFT)?this.closeIfIsChild():this.openChild()}closeIfIsChild(e){const t=this.getParentComponent();return!!(t&&t instanceof o.AgMenuItemComponent)&&(e&&e.preventDefault(),t.closeSubMenu(),t.getGui().focus(),!0)}openChild(){this.activeMenuItem&&this.activeMenuItem.openSubMenu(!0)}findNextItem(e){const t=[...this.menuItems];if(!t.length)return;if(!this.activeMenuItem)return e?(0,s._last)(t):t[0];let i;e&&t.reverse();let o=!1;for(const e of t){if(o){i=e;break}e===this.activeMenuItem&&(o=!0)}return o&&!i?t[0]:i||this.activeMenuItem}destroy(){this.clearActiveItem(),super.destroy()}}t.AgMenuList=r},20913:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.AgMenuPanel=void 0;const s=i(76624);class o extends s._AgTabGuardComp{constructor(e){super(),this.setTemplateFromElement(e.getGui(),void 0,void 0,!0)}postConstruct(){this.initialiseTabGuard({onTabKeyDown:e=>this.onTabKeyDown(e),handleKeyDown:e=>this.handleKeyDown(e)})}handleKeyDown(e){e.key===s.KeyCode.ESCAPE&&this.closePanel()}onTabKeyDown(e){e.defaultPrevented||(this.closePanel(),e.preventDefault())}closePanel(){const e=this.parentComponent;e.closeSubMenu(),setTimeout(()=>e.getGui().focus(),0)}}t.AgMenuPanel=o},97993:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.agPanelCSS=void 0,t.agPanelCSS=".ag-panel{background-color:var(--ag-panel-background-color);display:flex;flex-direction:column;overflow:hidden;position:relative}.ag-dialog{border:var(--ag-dialog-border);border-radius:var(--ag-border-radius);box-shadow:var(--ag-dialog-shadow);position:absolute}.ag-panel-title-bar{align-items:center;background-color:var(--ag-panel-title-bar-background-color);border-bottom:var(--ag-panel-title-bar-border);color:var(--ag-panel-title-bar-text-color);cursor:default;display:flex;flex:none;font-family:var(--ag-panel-title-bar-font-family);font-size:var(--ag-panel-title-bar-font-size);font-weight:var(--ag-panel-title-bar-font-weight);height:var(--ag-panel-title-bar-height);padding:var(--ag-spacing) var(--ag-cell-horizontal-padding)}.ag-panel-title-bar-button{cursor:pointer;:where(.ag-icon){color:var(--ag-panel-title-bar-icon-color)}}:where(.ag-ltr) .ag-panel-title-bar-button{margin-left:calc(var(--ag-spacing)*2);margin-right:var(--ag-spacing)}:where(.ag-rtl) .ag-panel-title-bar-button{margin-left:var(--ag-spacing);margin-right:calc(var(--ag-spacing)*2)}.ag-panel-title-bar-title{flex:1 1 auto}.ag-panel-title-bar-buttons{display:flex}.ag-panel-content-wrapper{display:flex;flex:1 1 auto;overflow:hidden;position:relative}:where(.ag-dragging-fill-handle) .ag-dialog,:where(.ag-dragging-range-handle) .ag-dialog{opacity:.7;pointer-events:none}"},44948:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.AgPanel=void 0;const s=i(76624),o=i(97993);class r extends s._AgComponentStub{constructor(e){var t;super(((t=e.cssIdentifier)??(t=t||"default"),{tag:"div",cls:`ag-panel ag-${t}-panel`,attrs:{tabindex:"-1"},children:[{tag:"div",ref:"eTitleBar",cls:`ag-panel-title-bar ag-${t}-panel-title-bar ag-unselectable`,children:[{tag:"span",ref:"eTitle",cls:`ag-panel-title-bar-title ag-${t}-panel-title-bar-title`},{tag:"div",ref:"eTitleBarButtons",cls:`ag-panel-title-bar-buttons ag-${t}-panel-title-bar-buttons`}]},{tag:"div",ref:"eContentWrapper",cls:`ag-panel-content-wrapper ag-${t}-panel-content-wrapper`}]})),this.config=e,this.closable=!0,this.eContentWrapper=s.RefPlaceholder,this.eTitleBar=s.RefPlaceholder,this.eTitleBarButtons=s.RefPlaceholder,this.eTitle=s.RefPlaceholder,this.registerCSS(o.agPanelCSS)}postConstruct(){const{component:e,closable:t,hideTitleBar:i,title:o,minWidth:r=250,width:n,minHeight:a=250,height:l,centered:d,popup:c,x:u,y:h,postProcessPopupParams:g}=this.config,p=this.beans,m=this.createManagedBean(new s._AgPositionableFeature(this.getGui(),{minWidth:r,width:n,minHeight:a,height:l,centered:d,x:u,y:h,popup:c,calculateTopBuffer:()=>this.positionableFeature.getHeight()-this.getBodyHeight()}));this.positionableFeature=m;const f=this.getGui();if(e&&this.setBodyComponent(e),i?(0,s._setDisplayed)(this.eTitleBar,!1):(o&&this.setTitle(o),this.setClosable(null!=t?t:this.closable)),this.addManagedElementListeners(this.eTitleBar,{mousedown:e=>{if(f.contains(e.relatedTarget)||f.contains((0,s._getActiveDomElement)(p))||this.eTitleBarButtons.contains(e.target))return void e.preventDefault();const t=this.eContentWrapper.querySelector("button, [href], input, select, textarea, [tabindex]");t&&t.focus()}}),c&&m.isPositioned())return;let C;if(this.renderComponent&&this.renderComponent(),g){const{type:e,eventSource:t,mouseEvent:i}=g;C=()=>p.popupSvc?.callPostProcessPopup(g,e,f,t,i)}m.initialisePosition(C),this.eContentWrapper.style.height="0"}renderComponent(){const e=this.getGui();e.focus(),this.close=()=>{e.remove(),this.destroy()}}getHeight(){return this.positionableFeature.getHeight()}setHeight(e){this.positionableFeature.setHeight(e)}getWidth(){return this.positionableFeature.getWidth()}setWidth(e){this.positionableFeature.setWidth(e)}setClosable(e){if(e!==this.closable&&(this.closable=e),e){const e=this.closeButtonComp=new s._AgComponentStub({tag:"div",cls:"ag-button"});this.createBean(e);const t=e.getGui(),i=this.beans.iconSvc.createIconNoSpan("close",this.beans);i.classList.add("ag-panel-title-bar-button-icon"),t.appendChild(i),this.addTitleBarButton(e),e.addManagedElementListeners(t,{click:this.onBtClose.bind(this)})}else if(this.closeButtonComp){this.closeButtonComp.getGui().remove(),this.closeButtonComp=this.destroyBean(this.closeButtonComp)}}setBodyComponent(e){e.setParentComponent(this),this.eContentWrapper.appendChild(e.getGui())}addTitleBarButton(e,t){const i=this.eTitleBarButtons,s=i.children,o=s.length;null==t&&(t=o),t=Math.max(0,Math.min(t,o)),e.addCss("ag-panel-title-bar-button");const r=e.getGui();0===t?i.prepend(r):t===o?i.append(r):s[t-1].after(r),e.setParentComponent(this)}getBodyHeight(){return(0,s._getInnerHeight)(this.eContentWrapper)}getBodyWidth(){return(0,s._getInnerWidth)(this.eContentWrapper)}setTitle(e){this.eTitle.innerText=e}onBtClose(){this.close()}destroy(){this.closeButtonComp&&(this.closeButtonComp=this.destroyBean(this.closeButtonComp));const e=this.getGui();e&&(0,s._isVisible)(e)&&this.close(),super.destroy()}}t.AgPanel=r},76917:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.AgSliderSelector=t.AgSlider=void 0;const s=i(76624),o=i(20489);class r extends s.AgAbstractLabel{constructor(e){super(e,'
\n \n
\n \n \n
\n
',[o.AgInputRangeSelector,s.AgInputNumberFieldSelector]),this.eLabel=s.RefPlaceholder,this.eSlider=s.RefPlaceholder,this.eText=s.RefPlaceholder,this.labelAlignment="top"}postConstruct(){super.postConstruct(),this.eSlider.addCss("ag-slider-field");const{minValue:e,maxValue:t,textFieldWidth:i,step:s,value:o,onValueChange:r}=this.config;null!=e&&this.setMinValue(e),null!=t&&this.setMaxValue(t),null!=i&&this.setTextFieldWidth(i),null!=s&&this.setStep(s),null!=o&&this.setValue(o),null!=r&&this.onValueChange(r)}onValueChange(e){return this.addManagedListeners(this.eText,{fieldValueChanged:()=>{const t=parseFloat(this.eText.getValue());this.eSlider.setValue(t.toString(),!0),e(t||0)}}),this.addManagedListeners(this.eSlider,{fieldValueChanged:()=>{const t=this.eSlider.getValue();this.eText.setValue(t,!0),e(parseFloat(t))}}),this}setSliderWidth(e){return this.eSlider.setWidth(e),this}setTextFieldWidth(e){return this.eText.setWidth(e),this}setMinValue(e){return this.eSlider.setMinValue(e),this.eText.setMin(e),this}setMaxValue(e){return this.eSlider.setMaxValue(e),this.eText.setMax(e),this}getValue(){return this.eText.getValue()}setValue(e,t){return this.getValue()===e||(this.eText.setValue(e,!0),this.eSlider.setValue(e,!0),t||this.dispatchLocalEvent({type:"fieldValueChanged"})),this}setStep(e){return this.eSlider.setStep(e),this.eText.setStep(e),this}}t.AgSlider=r,t.AgSliderSelector={selector:"AG-SLIDER",component:r}},69424:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.AgTabbedLayout=void 0;const s=i(76624),o=i(46242);class r extends s._AgTabGuardComp{constructor(e){var t;super({tag:"div",cls:`ag-tabs ${t=e.cssClass}`,children:[{tag:"div",ref:"eHeader"},{tag:"div",ref:"eBody",role:"presentation",cls:` ${t}-body`}]}),this.eHeader=s.RefPlaceholder,this.eBody=s.RefPlaceholder,this.items=[],this.tabbedItemScrollMap=new Map,this.params=e}postConstruct(){if(this.setupHeader(),this.params.items)for(const e of this.params.items)this.addItem(e);this.initialiseTabGuard({onTabKeyDown:this.onTabKeyDown.bind(this),handleKeyDown:this.handleKeyDown.bind(this),focusInnerElement:this.focusInnerElement.bind(this),focusTrapActive:!0}),this.addDestroyFunc(()=>this.activeItem?.tabbedItem?.afterDetachedCallback?.())}setupHeader(){const{enableCloseButton:e,cssClass:t}=this.params,i=(e,i)=>{e.classList.add(`ag-tabs-${i}`),t&&e.classList.add(`${t}-${i}`)};e?(this.setupCloseButton(i),this.eTabHeader=(0,s._createAgElement)({tag:"div",role:"presentation"}),i(this.eHeader,"header-wrapper"),this.eHeader.appendChild(this.eTabHeader)):this.eTabHeader=this.eHeader,(0,s._setAriaRole)(this.eTabHeader,"tablist"),i(this.eTabHeader,"header")}setupCloseButton(e){const t=(0,s._createAgElement)({tag:"button"});e(t,"close-button");const i=this.beans.iconSvc.createIconNoSpan("close");(0,s._setAriaLabel)(t,this.params.closeButtonAriaLabel),t.appendChild(i),this.addManagedElementListeners(t,{click:()=>this.params.onCloseClicked?.()});const o=(0,s._createAgElement)({tag:"div",role:"presentation"});e(o,"close-button-wrapper"),o.appendChild(t),this.eHeader.appendChild(o),this.eCloseButton=t}handleKeyDown(e){switch(e.key){case s.KeyCode.RIGHT:case s.KeyCode.LEFT:{if(!this.eTabHeader.contains((0,s._getActiveDomElement)(this.beans)))return;const t=e.key===s.KeyCode.RIGHT,i=this.gos.get("enableRtl"),o=this.items.indexOf(this.activeItem),r=t!==i?Math.min(o+1,this.items.length-1):Math.max(o-1,0);if(o===r)return;e.preventDefault();const n=this.items[r];this.showItemWrapper(n),n.eHeaderButton.focus();break}case s.KeyCode.UP:case s.KeyCode.DOWN:e.stopPropagation()}}onTabKeyDown(e){if(e.defaultPrevented)return;const{beans:t,eHeader:i,eBody:r,activeItem:n,params:a}=this,{suppressTrapFocus:l,enableCloseButton:d}=a,c=(0,s._getActiveDomElement)(t),u=e.target,h=e.shiftKey;if(i.contains(c))return e.preventDefault(),void(d&&h&&!this.eCloseButton?.contains(c)?this.eCloseButton?.focus():l&&h?(0,o.findFocusableElementBeforeTabGuard)((0,s._getDocument)(t).body,u)?.focus():this.focusBody(e.shiftKey));let g=null;(0,o.isTargetUnderManagedComponent)(r,u)&&(h&&(g=(0,o.findFocusableElementBeforeTabGuard)(r,u)),g||l||(g=n.eHeaderButton)),g||!r.contains(c)||(g=(0,s._findNextFocusableElement)(t,r,!1,h),g)?g&&(e.preventDefault(),g.focus()):l&&!h?this.forceFocusOutOfContainer(h):d&&!h?(e.preventDefault(),this.eCloseButton?.focus()):(e.preventDefault(),this.focusHeader())}focusInnerElement(e){return e?this.focusBody(!0):(this.focusHeader(),!0)}focusHeader(e){this.activeItem.eHeaderButton.focus({preventScroll:e})}focusBody(e){return(0,s._focusInto)(this.eBody,e)}setAfterAttachedParams(e){this.afterAttachedParams=e}showFirstItem(){this.items.length>0&&this.showItemWrapper(this.items[0])}addItem(e){const t=(0,s._createAgElement)({tag:"span",cls:"ag-tab",role:"tab",attrs:{tabindex:"-1"}});t.appendChild(e.title),this.eTabHeader.appendChild(t),(0,s._setAriaLabel)(t,e.titleLabel);const i={tabbedItem:e,eHeaderButton:t};this.items.push(i),t.addEventListener("click",this.showItemWrapper.bind(this,i))}showItem(e){const t=this.items.find(t=>t.tabbedItem===e);t&&this.showItemWrapper(t)}showItemWrapper(e){const{tabbedItem:t,eHeaderButton:i}=e;this.params.onItemClicked?.({item:t}),this.activeItem!==e?(this.lastScrollListener&&(this.lastScrollListener=this.lastScrollListener()),(0,s._clearElement)(this.eBody),t.bodyPromise.then(e=>{this.eBody.appendChild(e);const i=!(0,s._isKeyboardMode)();if(this.params.suppressFocusBodyOnOpen||(0,s._focusInto)(this.eBody,!1,i),t.afterAttachedCallback&&t.afterAttachedCallback(this.afterAttachedParams),this.params.keepScrollPosition){const i=t.getScrollableContainer?.()||e;[this.lastScrollListener]=this.addManagedElementListeners(i,{scroll:()=>{this.tabbedItemScrollMap.set(t.name,i.scrollTop)}});const s=this.tabbedItemScrollMap.get(t.name);void 0!==s&&setTimeout(()=>{i.scrollTop=s},0)}}),this.activeItem&&(this.activeItem.eHeaderButton.classList.remove("ag-tab-selected"),this.activeItem.tabbedItem.afterDetachedCallback?.()),i.classList.add("ag-tab-selected"),this.activeItem=e):this.params.onActiveItemClicked?.()}}t.AgTabbedLayout=r},56512:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.agVirtualListCSS=void 0,t.agVirtualListCSS=":where(.ag-virtual-list-viewport) .ag-tab-guard{position:sticky}.ag-virtual-list-viewport{flex:1 1 auto;height:100%;min-width:0;overflow:auto;position:relative;width:100%}.ag-virtual-list-container{overflow:hidden;position:relative}.ag-virtual-list-item{height:var(--ag-list-item-height);position:absolute;width:100%}"},93053:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.AgVirtualList=void 0;const s=i(76624),o=i(56512);class r extends s._AgTabGuardComp{constructor(e,t){super(function(e){return{tag:"div",cls:`ag-virtual-list-viewport ag-${e}-virtual-list-viewport`,role:"presentation",children:[{tag:"div",ref:"eContainer",cls:`ag-virtual-list-container ag-${e}-virtual-list-container`}]}}(t?.cssIdentifier||"default")),this.stopPropagationCallbacks=e,this.renderedRows=new Map,this.rowHeight=20,this.pageSize=-1,this.isScrolling=!1,this.isHeightFromTheme=!0,this.eContainer=s.RefPlaceholder,this.awaitStableCallbacks=[],this.registerCSS(o.agVirtualListCSS);const{cssIdentifier:i="default",ariaRole:r="listbox",listName:n,moveItemCallback:a}=t||{};this.cssIdentifier=i,this.ariaRole=r,this.listName=n,this.moveItemCallback=a}postConstruct(){this.addScrollListener(),this.rowHeight=this.getItemHeight(),this.addResizeObserver(),this.initialiseTabGuard({onFocusIn:e=>this.onFocusIn(e),onFocusOut:e=>this.onFocusOut(e),focusInnerElement:e=>this.focusInnerElement(e),onTabKeyDown:e=>this.onTabKeyDown(e),handleKeyDown:e=>this.handleKeyDown(e)},this.stopPropagationCallbacks),this.refreshAriaProperties(),this.addManagedEventListeners({stylesChanged:this.onStylesChanged.bind(this)})}onStylesChanged(e){e.listItemHeightChanged&&(this.rowHeight=this.getItemHeight(),this.refresh())}refreshAriaProperties(){const e=this.getLocaleTextFunc()("ariaDefaultListName",this.listName||"List"),t=this.eContainer;(0,s._setAriaRole)(t,this.model?.getRowCount()>0?this.ariaRole:"presentation"),(0,s._setAriaLabel)(t,e)}addResizeObserver(){const e=(0,s._observeResize)(this.beans,this.getGui(),()=>(0,s._requestAnimationFrame)(this.beans,()=>this.drawVirtualRows()));this.addDestroyFunc(e)}focusInnerElement(e){return this.focusRow(e?this.model.getRowCount()-1:0),!0}onFocusIn(e){const t=e.target;t.classList.contains("ag-virtual-list-item")&&(this.lastFocusedRowIndex=(0,s._getAriaPosInSet)(t)-1)}onFocusOut(e){this.getFocusableElement().contains(e.relatedTarget)||(this.lastFocusedRowIndex=null)}handleKeyDown(e){const{key:t,shiftKey:i}=e;switch(t){case s.KeyCode.UP:case s.KeyCode.DOWN:{const o=t===s.KeyCode.UP;e.preventDefault(),i?this.moveItem(o):this.navigate(o)}break;case s.KeyCode.PAGE_HOME:case s.KeyCode.PAGE_END:case s.KeyCode.PAGE_UP:case s.KeyCode.PAGE_DOWN:null!==this.navigateToPage(t)&&e.preventDefault()}}onTabKeyDown(e){this.stopPropagationCallbacks?.stopPropagation(e),this.forceFocusOutOfContainer(e.shiftKey)}getNextRow(e){if(null==this.lastFocusedRowIndex)return;const t=this.lastFocusedRowIndex+(e?-1:1);return t<0||t>=this.model.getRowCount()?void 0:t}moveItem(e){if(!this.moveItemCallback)return;const t=this.getComponentAt(this.lastFocusedRowIndex);t&&this.moveItemCallback(t,e)}navigate(e){const t=this.getNextRow(e);void 0!==t&&this.focusRow(t)}navigateToPage(e,t="focused"){let i=!1;"focused"===t&&(t=this.getLastFocusedRow(),i=!0);const o=this.model.getRowCount()-1;let r=-1;return e===s.KeyCode.PAGE_HOME?r=0:e===s.KeyCode.PAGE_END?r=o:e===s.KeyCode.PAGE_DOWN?r=Math.min(t+this.pageSize,o):e===s.KeyCode.PAGE_UP&&(r=Math.max(t-this.pageSize,0)),-1===r?null:(i?this.focusRow(r):this.ensureIndexVisible(r),r)}getLastFocusedRow(){return this.lastFocusedRowIndex}focusRow(e){this.isScrolling||(this.isScrolling=!0,this.ensureIndexVisible(e),(0,s._requestAnimationFrame)(this.beans,()=>{if(this.isScrolling=!1,!this.isAlive())return;const t=this.renderedRows.get(e);t&&t.eDiv.focus()}))}getComponentAt(e){const t=this.renderedRows.get(e);return t&&t.rowComponent}forEachRenderedRow(e){this.renderedRows.forEach((t,i)=>e(t.rowComponent,i))}getItemHeight(){return this.isHeightFromTheme?this.beans.environment.getDefaultListItemHeight():this.rowHeight}ensureIndexVisible(e,t=!0){const i=this.model.getRowCount();if("number"!=typeof e||e<0||e>=i)return!1;const s=e*this.rowHeight,o=s+this.rowHeight,r=this.getGui(),n=r.scrollTop,a=r.offsetHeight,l=n+a,d=t?0:this.rowHeight,c=ls+d)return r.scrollTop=s,!0;if(c){const e=o-a;return r.scrollTop=e,!0}return!1}setComponentCreator(e){this.componentCreator=e}setComponentUpdater(e){this.componentUpdater=e}getRowHeight(){return this.rowHeight}getScrollTop(){return this.getGui().scrollTop}setRowHeight(e){this.isHeightFromTheme=!1,this.rowHeight=e,this.refresh()}refresh(e){if(null==this.model||!this.isAlive())return;const t=this.model.getRowCount();this.eContainer.style.height=t*this.rowHeight+"px",this.refreshAriaProperties(),this.awaitStable(()=>{this.isAlive()&&(this.canSoftRefresh(e)?this.drawVirtualRows(!0):(this.clearVirtualRows(),this.drawVirtualRows()))})}awaitStable(e){if(this.awaitStableCallbacks.push(e),this.awaitStableCallbacks.length>1)return;const t=this.model.getRowCount();(0,s._waitUntil)(this,()=>this.eContainer.clientHeight>=t*this.rowHeight,()=>{if(!this.isAlive())return;const e=this.awaitStableCallbacks;this.awaitStableCallbacks=[];for(const t of e)t()})}canSoftRefresh(e){return!!(e&&this.renderedRows.size&&"function"==typeof this.model.areRowsEqual&&this.componentUpdater)}clearVirtualRows(){this.renderedRows.forEach((e,t)=>this.removeRow(t))}drawVirtualRows(e){if(!this.isAlive()||!this.model)return;const t=this.getGui(),i=t.scrollTop,s=i+t.offsetHeight;if(i===s)this.clearVirtualRows();else{const t=Math.floor(i/this.rowHeight),o=Math.floor(s/this.rowHeight);this.pageSize=Math.floor((s-i)/this.rowHeight),this.ensureRowsRendered(t,o,e)}}ensureRowsRendered(e,t,i){this.renderedRows.forEach((i,s)=>{(st)&&s!==this.lastFocusedRowIndex&&this.removeRow(s)}),i&&this.refreshRows();for(let i=e;i<=t;i++)this.renderedRows.has(i)||ithis.lastFocusedRowIndex=e),o.appendChild(r.getGui()),this.renderedRows.has(e-1)?this.renderedRows.get(e-1).eDiv.insertAdjacentElement("afterend",o):this.renderedRows.has(e+1)?this.renderedRows.get(e+1).eDiv.insertAdjacentElement("beforebegin",o):this.eContainer.appendChild(o),this.renderedRows.set(e,{rowComponent:r,eDiv:o,value:t})}removeRow(e){const t=this.renderedRows.get(e);t.eDiv.remove(),this.destroyBean(t.rowComponent),this.renderedRows.delete(e)}refreshRows(){const e=this.model.getRowCount();this.renderedRows.forEach((t,i)=>{if(i>=e)this.removeRow(i);else{const e=this.model.getRow(i);this.model.areRowsEqual?.(t.value,e)?this.componentUpdater(e,t.rowComponent):this.removeRow(i)}})}addScrollListener(){this.addGuiEventListener("scroll",()=>this.drawVirtualRows(),{passive:!0})}setModel(e){this.model=e}getAriaElement(){return this.eContainer}destroy(){this.isAlive()&&(this.clearVirtualRows(),this.awaitStableCallbacks.length=0,super.destroy())}}t.AgVirtualList=r},64764:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.agVirtualListDragFeatureCSS=void 0,t.agVirtualListDragFeatureCSS='.ag-list-item-hovered:after{background-color:var(--ag-accent-color);content:"";height:1px;left:0;position:absolute;right:0}.ag-item-highlight-top:after{top:0}.ag-item-highlight-bottom:after{bottom:0}'},63809:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.AgVirtualListDragFeature=void 0;const s=i(76624),o=i(64764),r="ag-list-item-hovered";class n extends s._AgBeanStub{constructor(e,t,i){super(),this.comp=e,this.virtualList=t,this.params=i,this.currentDragValue=null,this.lastHoveredListItem=null}postConstruct(){this.beans.environment.addGlobalCSS(o.agVirtualListDragFeatureCSS,"component-AgVirtualListDragFeature"),this.params.addListeners(this,this.listItemDragStart.bind(this),this.listItemDragEnd.bind(this)),this.createDropTarget(),this.createAutoScrollService()}listItemDragStart(e){this.currentDragValue=this.params.getCurrentDragValue(e),this.moveBlocked=this.params.isMoveBlocked(this.currentDragValue)}listItemDragEnd(){window.setTimeout(()=>{this.currentDragValue=null,this.moveBlocked=!1},10)}createDropTarget(){const e={isInterestedIn:e=>e===this.params.dragSourceType,getIconName:()=>this.moveBlocked?"pinned":"move",getContainer:()=>this.comp.getGui(),onDragging:e=>this.onDragging(e),onDragStop:()=>this.onDragStop(),onDragLeave:()=>this.onDragLeave(),onDragCancel:()=>this.onDragCancel()};this.beans.dragAndDrop?.addDropTarget(e)}createAutoScrollService(){const e=this.virtualList.getGui();this.autoScrollService=new s.AutoScrollService({scrollContainer:e,scrollAxis:"y",getVerticalPosition:()=>e.scrollTop,setVerticalPosition:t=>e.scrollTop=t})}onDragging(e){if(!this.currentDragValue||this.moveBlocked)return;const t=this.getListDragItem(e),i=this.virtualList.getComponentAt(t.rowIndex);if(!i)return;const o=i.getGui().parentElement;this.lastHoveredListItem&&this.lastHoveredListItem.rowIndex===t.rowIndex&&this.lastHoveredListItem.position===t.position||(this.autoScrollService.check(e.event),this.clearHoveredItems(),this.lastHoveredListItem=t,(0,s._radioCssClass)(o,r),(0,s._radioCssClass)(o,`ag-item-highlight-${t.position}`))}getListDragItem(e){const t=this.virtualList.getGui(),i=Number.parseFloat(window.getComputedStyle(t).paddingTop),s=this.virtualList.getRowHeight(),o=this.virtualList.getScrollTop(),r=Math.max(0,(e.y-i+o)/s),n=this.params.getNumRows(this.comp)-1,a=0|Math.min(n,r);return{rowIndex:a,position:Math.round(r)>r||r>n?"bottom":"top",component:this.virtualList.getComponentAt(a)}}onDragStop(){this.moveBlocked||(this.params.moveItem(this.currentDragValue,this.lastHoveredListItem),this.clearDragProperties())}onDragCancel(){this.clearDragProperties()}onDragLeave(){this.clearDragProperties()}clearDragProperties(){this.clearHoveredItems(),this.autoScrollService.ensureCleared()}clearHoveredItems(){const e=this.virtualList.getGui();for(const t of e.querySelectorAll(`.${r}`))for(const e of[r,"ag-item-highlight-top","ag-item-highlight-bottom"])t.classList.remove(e);this.lastHoveredListItem=null}}t.AgVirtualListDragFeature=n},2529:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.AggColumnNameService=void 0;const s=i(76624);class o extends s.BeanStub{constructor(){super(...arguments),this.beanName="aggColNameSvc"}getHeaderName(e,t){if(this.gos.get("suppressAggFuncInHeader"))return t;const{valueColsSvc:i,colModel:o,rowGroupColsSvc:r}=this.beans,n=e.getColDef().pivotValueColumn;let a,l=null;if((0,s._exists)(n)){const s=i?.columns??[],o=this.gos.get("removePivotHeaderRowWhenSingleValueColumn")&&1===s.length,r=void 0!==e.getColDef().pivotTotalColumnIds;if(o&&!r)return t;l=n?n.getAggFunc():null,a=!0}else{const t=e.isValueActive(),i=0!==r?.columns.length,s=o.isPivotMode()||i||this.gos.get("treeData");t&&s?(l=e.getAggFunc(),a=!0):a=!1}if(a){const e="string"==typeof l?l:"func";return`${this.getLocaleTextFunc()(e,e)}(${t})`}return t}}t.AggColumnNameService=o},65780:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.AggFuncService=void 0;const s=i(76624),o={sum:"Sum",first:"First",last:"Last",min:"Min",max:"Max",count:"Count",avg:"Average"};class r extends s.BeanStub{constructor(){super(...arguments),this.beanName="aggFuncSvc",this.aggFuncsMap={},this.initialised=!1}postConstruct(){this.init()}init(){this.initialised||(this.initialiseWithDefaultAggregations(),this.addAggFuncs(this.gos.get("aggFuncs")))}initialiseWithDefaultAggregations(){const e=this.aggFuncsMap;e.sum=n,e.first=a,e.last=l,e.min=d,e.max=c,e.count=h,e.avg=p,this.initialised=!0}isAggFuncPossible(e,t){const i=this.getFuncNames(e).includes(t),o=(0,s._exists)(this.aggFuncsMap[t]);return i&&o}getDefaultFuncLabel(e){return o[e]??e}getDefaultAggFunc(e){const t=e.getColDef().defaultAggFunc;if((0,s._exists)(t)&&this.isAggFuncPossible(e,t))return t;if(this.isAggFuncPossible(e,"sum"))return"sum";const i=this.getFuncNames(e);return i?.length?i[0]:null}addAggFuncs(e){if(this.init(),e)for(const t of Object.keys(e))e[t]&&(this.aggFuncsMap[t]=e[t])}getAggFunc(e){return this.init(),this.aggFuncsMap[e]}getFuncNames(e){const t=e.getColDef().allowedAggFuncs;return null==t?Object.keys(this.aggFuncsMap).sort():t}clear(){this.aggFuncsMap={}}}function n(e){const{values:t}=e;let i=null;for(let e=0;e0?e.values[0]:null}function l(e){return e.values.length>0?(0,s._last)(e.values):null}function d(e){const{values:t}=e;let i=null;for(let e=0;es)||(i=s)}return i}function c(e){const{values:t}=e;let i=null;for(let e=0;e0&&(o=i/("number"==typeof i?s:BigInt(s)));const r=e.rowNode?.aggData?.[e.column?.getColId()];if(r&&r.count===s&&r.value===o)return r;const n=Object.create(g);return n.count=s,n.value=o,n}},57508:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t._aggregateValues=void 0;const s=i(76624);t._aggregateValues=function({beans:e,values:t,aggFuncOrString:i,column:o,rowNode:r,pivotResultColumn:n,aggregatedChildren:a}){const l="string"==typeof i?e.aggFuncSvc.getAggFunc(i):i;return"function"!=typeof l?((0,s._warn)(109,{inputValue:i.toString(),allSuggestions:e.aggFuncSvc.getFuncNames(o)}),null):l((0,s._addGridCommonParams)(e.gos,{values:t,column:o,colDef:o.colDef,pivotResultColumn:n,rowNode:r,data:r?.data,aggregatedChildren:a}))}},31872:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.setColumnAggFunc=t.clearAggFuncs=t.addAggFuncs=void 0,t.addAggFuncs=function(e,t){e.aggFuncSvc&&e.aggFuncSvc.addAggFuncs(t)},t.clearAggFuncs=function(e){e.aggFuncSvc&&e.aggFuncSvc.clear()},t.setColumnAggFunc=function(e,t,i){e.valueColsSvc?.setColumnAggFunc?.(t,i,"api")}},12270:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.AggregationModule=t.SharedAggregationModule=void 0;const s=i(39206),o=i(19586),r=i(2529),n=i(65780),a=i(31872),l=i(3438),d=i(56948),c=i(20182),u=i(57926);t.SharedAggregationModule={moduleName:"SharedAggregation",version:o.VERSION,beans:[n.AggFuncService,r.AggColumnNameService,c.FooterService,u.ValueColsSvc],apiFunctions:{addAggFuncs:a.addAggFuncs,clearAggFuncs:a.clearAggFuncs,setColumnAggFunc:a.setColumnAggFunc},dependsOn:[s.EnterpriseCoreModule]},t.AggregationModule={moduleName:"Aggregation",version:o.VERSION,beans:[l.AggregationStage,d.FilterAggregatesStage],rowModels:["clientSide"],dependsOn:[t.SharedAggregationModule]}},3438:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.AggregationStage=void 0;const s=i(76624),o=i(57508);class r extends s.BeanStub{constructor(){super(...arguments),this.beanName="aggStage",this.step="aggregate",this.refreshProps=["getGroupRowAgg","alwaysAggregateAtRootLevel","suppressAggFilteredOnly","grandTotalRow"],this.clientSide=!1}wireBeans(e){this.colModel=e.colModel,this.pivotColsSvc=e.pivotColsSvc,this.valueColsSvc=e.valueColsSvc,this.pivotResultCols=e.pivotResultCols,this.valueSvc=e.valueSvc,this.clientSide=(0,s._isClientSideRowModel)(e.gos)}execute(e){const t=!this.valueColsSvc?.columns?.length,i=!this.gos.getCallback("getGroupRowAgg");if(t&&i&&e?.active)return;const s=this.createAggDetails(e);this.recursivelyCreateAggData(s)}createAggDetails(e){const t=this.colModel.isPivotActive(),i=this.valueColsSvc?.columns,o=t&&this.pivotColsSvc?this.pivotColsSvc.columns:[];return{alwaysAggregateAtRootLevel:this.gos.get("alwaysAggregateAtRootLevel"),groupIncludeTotalFooter:!!(0,s._getGrandTotalRow)(this.gos),changedPath:e,valueColumns:i??[],pivotColumns:o,filteredOnly:!this.isSuppressAggFilteredOnly(),userAggFunc:this.gos.getCallback("getGroupRowAgg")}}isSuppressAggFilteredOnly(){return void 0!==(0,s._getGroupAggFiltering)(this.gos)||this.gos.get("suppressAggFilteredOnly")}recursivelyCreateAggData(e){e.changedPath.forEachChangedNodeDepthFirst(t=>{if(!t.hasChildren())return void(t.aggData&&this.setAggDataWithSiblings(t,null));if(-1===t.level&&!e.groupIncludeTotalFooter){const i=!this.colModel.isPivotMode();if(!e.alwaysAggregateAtRootLevel&&i)return void this.setAggData(t,null)}this.aggregateRowNode(t,e)},!0)}aggregateRowNode(e,t){const i=0===t.valueColumns.length,s=0===t.pivotColumns.length;let o;o=t.userAggFunc?t.userAggFunc({nodes:e.childrenAfterFilter}):i?null:s?this.aggregateRowNodeUsingValuesOnly(e,t):this.aggregateRowNodeUsingValuesAndPivot(e),this.setAggDataWithSiblings(e,o)}aggregateRowNodeUsingValuesAndPivot(e){const t={},i=this.pivotResultCols?.getPivotResultCols()?.list??[];let s=!0;const r=this.beans,a=this.valueSvc;for(let c=0;ct[e]);t[a.colId]=(0,o._aggregateValues)({beans:r,values:l,aggFuncOrString:a.pivotValueColumn.getAggFunc(),column:a.pivotValueColumn,rowNode:e,pivotResultColumn:n,aggregatedChildren:e.childrenAfterFilter??[]})}return t}aggregateRowNodeUsingValuesOnly(e,t){const i={},{changedPath:s,valueColumns:r,filteredOnly:n}=t,l=s.active?s.getValueColumnsForNode(e,r):r,d=s.active?s.getNotValueColumnsForNode(e,r):null,c=(n?e.childrenAfterFilter:e.childrenAfterGroup)??[],u=a(this.valueSvc,c,l),h=e.aggData,g=this.beans;if(l.forEach((t,s)=>{i[t.getId()]=(0,o._aggregateValues)({beans:g,values:u[s],aggFuncOrString:t.getAggFunc(),column:t,rowNode:e,pivotResultColumn:void 0,aggregatedChildren:c})}),d&&h)for(const e of d)i[e.getId()]=h[e.getId()];return i}getAggregatedChildren(e,t){if(!e?.group||!this.clientSide)return[];if(e.rowPinned){const t=e.pinnedSibling;if(!t)return[];e=t}const i=t?.getColDef(),s=i?.pivotKeys;return s?e.leafGroup&&s.length&&!i.pivotTotalColumnIds?d(e.childrenMapped,s)??[]:e.childrenAfterFilter??e.childrenAfterGroup??[]:this.isSuppressAggFilteredOnly()?e.childrenAfterGroup??[]:e.childrenAfterFilter??e.childrenAfterGroup??[]}setAggDataWithSiblings(e,t){this.setAggData(e,t);const i=e.pinnedSibling;i&&this.setAggData(i,t);const s=e.sibling;if(s){this.setAggData(s,t);const e=s.pinnedSibling;e&&this.setAggData(e,t)}}setAggData(e,t){const i=e.aggData;if(e.aggData=t,e.__localEventService){const s=t=>{const s=e.aggData?e.aggData[t]:void 0,o=i?i[t]:void 0;if(s===o)return;const r=this.colModel.getColById(t);r&&e.dispatchCellChangedEvent(r,s,o)};if(i)for(const e of Object.keys(i))s(e);if(t)for(const e of Object.keys(t))i&&e in i||s(e)}}}t.AggregationStage=r;const n=(e,t,i)=>{if(!t)return[];const s=t.length,o=new Array(s);for(let r=0;r{const s=i.length,o=new Array(s);for(let e=0;e{if(!e)return[];const i=e.length,s=new Array(i);for(let o=0;o{if(!t)return;let i=e;for(let e=0;ee.node.leafGroup:e=>!e.node.group),r=(e,t=!1)=>{if(e.childrenAfterFilter){if(e.childrenAfterAggFilter=e.childrenAfterFilter,t)for(const i of e.childrenAfterAggFilter)r(i,t);this.setAllChildrenCount(e)}e.sibling&&(e.sibling.childrenAfterAggFilter=e.childrenAfterAggFilter)};e.forEachChangedNodeDepthFirst(i?e=>{e.childrenAfterAggFilter=e.childrenAfterFilter?.filter(e=>{if(o({node:e})){if(this.filterManager.doesRowPassAggregateFilters({rowNode:e}))return r(e,!0),!0}const t=e.childrenAfterAggFilter?.length;return t})||null,this.setAllChildrenCount(e),e.sibling&&(e.sibling.childrenAfterAggFilter=e.childrenAfterAggFilter)}:r,!0)}setAllChildrenCountTreeData(e){const t=e.childrenAfterAggFilter;let i=0;if(t){const e=t.length;i=e;for(let s=0;s=0?null:i)}setAllChildrenCountGridGrouping(e){let t=0;e.childrenAfterAggFilter.forEach(e=>{e.group?t+=e.allChildrenCount:t++}),e.setAllChildrenCount(t)}setAllChildrenCount(e){e.hasChildren()?this.gos.get("treeData")?this.setAllChildrenCountTreeData(e):this.setAllChildrenCountGridGrouping(e):e.setAllChildrenCount(null)}}t.FilterAggregatesStage=o},20182:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.FooterService=void 0;const s=i(76624),o=i(86432);class r extends s.BeanStub{constructor(){super(...arguments),this.beanName="footerSvc"}addTotalRows(e,t,i,r,n,a){let l=e;if(n){return function(e,t){switch(t){case"top":case"pinnedTop":return"top"===e;case"bottom":case"pinnedBottom":return"bottom"===e;default:return!1}}(a,r&&(0,s._getGrandTotalRow)(this.gos))&&((0,o._createRowNodeFooter)(t,this.beans),i(t.sibling,l++)),l}const d=(0,s._getGroupTotalRowCallback)(this.gos);return(r&&d({node:t}))===a&&((0,o._createRowNodeFooter)(t,this.beans),i(t.sibling,l++)),l}getTopDisplayIndex(e,t,i,s){let o=t;if(e[0].footer){if(0===t)return 0;o-=1}const r=e[e.length-1],n=o>=i.length;return r.footer&&n?r.rowIndex:s(o)}doesCellShowTotalPrefix(e,t){return!(!e.footer||!t?.getColDef().showRowGroup)&&(!!this.gos.get("treeData")||(-1===e.level?this.beans.showRowGroupCols?.columns[0]===t:!!e.rowGroupColumn&&t?.isRowGroupDisplayed(e.rowGroupColumn.getId())))}applyTotalPrefix(e,t,i,o){const r=o.getColDef().cellRendererParams?.totalValueGetter;if(r){const n=(0,s._addGridCommonParams)(this.gos,{column:o,node:i,value:e,formattedValue:t});if("function"===typeof r)return r(n);if("string"==typeof r)return this.beans.expressionSvc?.evaluate(r,n);(0,s._warn)(179)}return-1===i.level?this.getLocaleTextFunc()("footerTotal","Total")+" ":this.getTotalValue(t??e)??""}getTotalValue(e){return this.getLocaleTextFunc()("footerTotal","Total")+" "+(e??"")}}t.FooterService=r},86432:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t._destroyRowNodeFooter=t._createRowNodeFooter=void 0;const s=i(76624);t._createRowNodeFooter=function(e,t){if(e.sibling)return;const i=(0,s._createRowNodeSibling)(e,t);i.footer=!0,i.setRowTop(null),i.setRowIndex(null),i.oldRowTop=null,i.id="rowGroupFooter_"+e.id,i.sibling=e,e.sibling=i},t._destroyRowNodeFooter=function(e){const t=e.sibling;t&&(t._destroy(!1),e.sibling=void 0,t.sibling=void 0)}},57926:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ValueColsSvc=void 0;const s=i(76624);class o extends s.BaseColsService{constructor(){super(...arguments),this.beanName="valueColsSvc",this.eventName="columnValueChanged",this.columnProcessors={set:(e,t,i)=>this.setValueActive(t,e,i),add:(e,t,i)=>this.setValueActive(!0,e,i),remove:(e,t,i)=>this.setValueActive(!1,e,i)},this.columnExtractors={setFlagFunc:(e,t,i)=>this.setColValueActive(e,t,i),getIndexFunc:()=>{},getInitialIndexFunc:()=>{},getValueFunc:e=>{const t=e.aggFunc;return null===t||""===t?null:void 0!==t?!!t:void 0},getInitialValueFunc:e=>null!=e.initialAggFunc&&""!=e.initialAggFunc},this.modifyColumnsNoEventsCallbacks={addCol:e=>this.columns.push(e),removeCol:e=>(0,s._removeFromArray)(this.columns,e)}}extractCols(e,t){this.columns=super.extractCols(e,t);for(const e of this.columns){const t=e.getColDef();null!=t.aggFunc&&""!=t.aggFunc?this.setColAggFunc(e,t.aggFunc):e.getAggFunc()||this.setColAggFunc(e,t.initialAggFunc)}return this.columns}setColumnAggFunc(e,t,i){if(!e)return;const s=this.colModel.getColDefCol(e);s&&(this.setColAggFunc(s,t),this.dispatchColumnChangedEvent(this.eventSvc,this.eventName,[s],i))}syncColumnWithState(e,t,i){const o=i("aggFunc").value1;void 0!==o&&("string"==typeof o?(this.setColAggFunc(e,o),e.isValueActive()||(this.setColValueActive(e,!0,t),this.modifyColumnsNoEventsCallbacks.addCol(e))):((0,s._exists)(o)&&(0,s._warn)(33),e.isValueActive()&&(this.setColValueActive(e,!1,t),this.modifyColumnsNoEventsCallbacks.removeCol(e))))}setValueActive(e,t,i){if(e!==t.isValueActive()&&(this.setColValueActive(t,e,i),e&&!t.getAggFunc()&&this.aggFuncSvc)){const e=this.aggFuncSvc.getDefaultAggFunc(t);this.setColAggFunc(t,e)}}setColAggFunc(e,t){e.aggFunc=t,e.dispatchStateUpdatedEvent("aggFunc")}setColValueActive(e,t,i){e.aggregationActive!==t&&(e.aggregationActive=t,e.dispatchColEvent("columnValueChanged",i))}}t.ValueColsSvc=o},95498:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.AiToolkitModule=void 0;const s=i(76624),o=i(39206),r=i(19586),n=i(23844);t.AiToolkitModule={moduleName:"AiToolkit",version:r.VERSION,beans:[],dependsOn:[o.EnterpriseCoreModule,s.ColumnApiModule],apiFunctions:{getStructuredSchema:n.getStructuredSchema}}},10757:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.buildAdvancedFilterFeatureSchema=void 0;const s=i(95556);t.buildAdvancedFilterFeatureSchema=({colModel:e,dataTypeSvc:t})=>{if(!t)return;const i=e.getCols(),r={boolean:[],object:[],date:[],dateString:[],dateTime:[],dateTimeString:[],number:[],bigint:[],text:[]};for(const e of i){const i=t.getBaseDataType(e);i&&r[i].push(e.colId)}const n=[],a={};for(const e of Object.keys(r))if(r[e].length>0){const t=`${e}AdvancedFilterModel`,i=o[e];a[t]=i(r[e]),n.push({$ref:`#/$defs/${t}`})}return a.joinAdvancedFilterModel=s.s.object({filterType:s.s.literal("join","Filter type identifier for joining multiple advanced filter conditions"),type:s.s.enum(["AND","OR"],"Logical operator to combine multiple advanced filter conditions"),conditions:s.s.array(s.s.ref("advancedFilterModel"),"Array of advanced filter conditions to be combined")}),a.advancedFilterModel={anyOf:[...n,{$ref:"#/$defs/joinAdvancedFilterModel"}]},s.s.object({advancedFilterModel:s.s.ref("advancedFilterModel")},"Advanced filter configuration for the grid").nullable()};const o={boolean:e=>s.s.object({filterType:s.s.literal("boolean","Filter type identifier for boolean column filters"),colId:s.s.enum(e,"Column identifier for the boolean column to filter"),type:s.s.enum(["true","false"],"Boolean value to filter by")}),object:e=>s.s.object({filterType:s.s.literal("object","Filter type identifier for object column filters"),colId:s.s.enum(e,"Column identifier for the object column to filter"),filter:s.s.string("Filter value to compare against object column values").nullable(),type:s.s.enum(["equals","notEqual","contains","notContains","startsWith","endsWith","blank","notBlank"],"Object filter operation type")}),date:e=>s.s.object({filterType:s.s.literal("date","Filter type identifier for date column filters"),colId:s.s.enum(e,"Column identifier for the date column to filter"),filter:s.s.string({pattern:"^\\d{4}-\\d{2}-\\d{2}$",description:"Date value in YYYY-MM-DD format"}).nullable(),type:s.s.enum(["equals","notEqual","lessThan","lessThanOrEqual","greaterThan","greaterThanOrEqual","blank","notBlank"],"Date filter operation type")}),dateString:e=>s.s.object({filterType:s.s.literal("date","Filter type identifier for date string column filters"),colId:s.s.enum(e,"Column identifier for the date string column to filter"),filter:s.s.string({pattern:"^\\d{4}-\\d{2}-\\d{2}$",description:"Date value in YYYY-MM-DD format"}).nullable(),type:s.s.enum(["equals","notEqual","lessThan","lessThanOrEqual","greaterThan","greaterThanOrEqual","blank","notBlank"],"Date string filter operation type")}),dateTime:e=>s.s.object({filterType:s.s.literal("dateTime","Filter type identifier for datetime column filters"),colId:s.s.enum(e,"Column identifier for the datetime column to filter"),filter:s.s.string({pattern:"^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}$",description:"DateTime value in YYYY-MM-DDTHH:mm:ss format"}).nullable(),type:s.s.enum(["equals","notEqual","lessThan","lessThanOrEqual","greaterThan","greaterThanOrEqual","blank","notBlank"],"DateTime filter operation type")}),dateTimeString:e=>s.s.object({filterType:s.s.literal("dateTimeString","Filter type identifier for datetime string column filters"),colId:s.s.enum(e,"Column identifier for the datetime string column to filter"),filter:s.s.string({pattern:"^\\d{4}-\\d{2}-\\d{2} \\d{2}:\\d{2}:\\d{2}$",description:"DateTime value in YYYY-MM-DD HH:mm:ss format"}).nullable(),type:s.s.enum(["equals","notEqual","lessThan","lessThanOrEqual","greaterThan","greaterThanOrEqual","blank","notBlank"],"DateTime string filter operation type")}),number:e=>s.s.object({filterType:s.s.literal("number","Filter type identifier for number column filters"),colId:s.s.enum(e,"Column identifier for the number column to filter"),filter:s.s.number("Numeric value to filter by").nullable(),type:s.s.enum(["equals","notEqual","lessThan","lessThanOrEqual","greaterThan","greaterThanOrEqual","blank","notBlank"],"Number filter operation type")}),bigint:e=>s.s.object({filterType:s.s.literal("bigint","Filter type identifier for bigint column filters"),colId:s.s.enum(e,"Column identifier for the bigint column to filter"),filter:s.s.string({pattern:"^-?\\d+$",description:"BigInt value to filter by"}).nullable(),type:s.s.enum(["equals","notEqual","lessThan","lessThanOrEqual","greaterThan","greaterThanOrEqual","blank","notBlank"],"BigInt filter operation type")}),text:e=>s.s.object({filterType:s.s.literal("text","Filter type identifier for text column filters"),colId:s.s.enum(e,"Column identifier for the text column to filter"),filter:s.s.string("Text value to filter by").nullable(),type:s.s.enum(["equals","notEqual","contains","notContains","startsWith","endsWith","blank","notBlank"],"Text filter operation type")})}},84773:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.buildAggregationFeatureSchema=void 0;const s=i(95556);t.buildAggregationFeatureSchema=e=>{const{aggFuncSvc:t}=e;if(!t)return;const i=e.colModel.getCols().filter(e=>e.isAllowValue()&&t.getFuncNames(e).length>0);return 0!==i.length?s.s.object({aggregationModel:s.s.array(s.s.union(i.map(t=>s.s.object({colId:s.s.literal(t.getColId(),"Column identifier"),aggFunc:s.s.enum(e.aggFuncSvc?.getFuncNames(t)||[],"Aggregation function")}))),"Array of column aggregations")},"Aggregation configuration for the grid").nullable():void 0}},5337:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.buildColumnSizingFeatureSchema=void 0;const s=i(95556);t.buildColumnSizingFeatureSchema=e=>{const t=e.colModel.getCols().filter(e=>e.isResizable());if(0===t.length)return;const i=t.map(e=>e.getColId());return s.s.object({columnSizingModel:s.s.array(s.s.union([s.s.object({colId:s.s.ref("resizableColumnId"),width:s.s.number("Fixed width in pixels").minimum(20)}),s.s.object({colId:s.s.ref("resizableColumnId"),flex:s.s.number("Flex sizing ratio").minimum(0)})]),"Array of column sizing configurations")},"Column sizing configuration for the grid").define("resizableColumnId",s.s.enum(i,"Column ID that supports resizing"))}},72947:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.buildColumnVisibilityFeatureSchema=void 0;const s=i(95556);t.buildColumnVisibilityFeatureSchema=()=>s.s.object({hiddenColIds:s.s.array(s.s.ref("allColumnIds"),"Array of column IDs to hide")},"Column visibility configuration for the grid").nullable()},66063:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.buildFilterFeatureSchema=void 0;const s=i(95556),o=i(10757),r="agNumberColumnFilter",n="agDateColumnFilter",a=["agTextColumnFilter",r,n];t.buildFilterFeatureSchema=(e,t)=>{const{advancedFilter:i}=e;return i?.isEnabled()?(0,o.buildAdvancedFilterFeatureSchema)(e):l(e,t)};const l=(e,t)=>{const{gos:i,colFilter:o,colModel:r}=e;if(!o)return;const n=r.getCols().filter(e=>e.isFilterAllowed());if(0===n.length)return;const a={},l=i.get("enableFilterHandlers");for(const e of n){const i=t?.columns?t.columns[e.getColId()]:void 0,s=e.getColDef(),r=o.getDefaultFilter(e),n=i?.includeSetValues??!1,c=d(s.filter,s.filterParams,r,(t=!1,i=0)=>{if(!n)return[];let s;if(t){if(l){s=o.getHandler(e,!0).getHandler(i)}}else s=o.getHandler(e,!0);return s?s.getFilterKeys():[]});c&&(a[e.colId]=c.nullable())}return s.s.object({filterModel:s.s.object(a)}).nullable()};function d(e,t,i,s){let o;if("string"==typeof e?o=e:"object"==typeof e&&"string"==typeof e.component?o=e.component:(!0===e||"object"==typeof e&&!0===e.component)&&(o=i),!o)return null;if(a.includes(o)){const e=t?.maxNumConditions,i=t?.filterOptions?t.filterOptions.map(e=>"string"==typeof e?e:"object"==typeof e&&e.displayKey?e.displayKey:null).filter(Boolean):void 0;return c(o,{maxConditions:e,filterOptions:i,useIsoSeparator:t?.useIsoSeparator||!1})}return"agSetColumnFilter"===o?m(s):"agMultiColumnFilter"===o?f(t.filters,i,s):null}const c=(e,t)=>e===n?p(t):e===r?g(t):h(t),u=(e,t,i=2)=>1===i?e:s.s.object({filterType:s.s.literal(t,`Filter type identifier for ${t} filters with multiple conditions`),operator:s.s.enum(["AND","OR"],"Logical operator to combine multiple filter conditions. Must be included even with a single filter to adhere to the API."),conditions:s.s.array(e,"Array of filter conditions to be combined").minItems(2).maxItems(i)}),h=e=>{const t=e.filterOptions??["contains","notContains","equals","notEqual","startsWith","endsWith","blank","notBlank"],i=s.s.object({filterType:s.s.literal("text","Filter type identifier for text filters"),type:s.s.enum(t,"Text filter operation type"),filter:s.s.string("Primary filter value").nullable(),filterTo:s.s.string("Secondary filter value for range operations").nullable()});return u(i,"text",e.maxConditions)},g=e=>{const t=e.filterOptions??["equals","notEqual","greaterThan","greaterThanOrEqual","lessThan","lessThanOrEqual","inRange","blank","notBlank"],i=s.s.object({filterType:s.s.literal("number","Filter type identifier for number filters"),type:s.s.enum(t,"Number filter operation type"),filter:s.s.number("Primary filter value").nullable(),filterTo:s.s.number("Secondary filter value for range operations").nullable()});return u(i,"number",e.maxConditions)},p=e=>{const t=e.filterOptions??["equals","notEqual","lessThan","greaterThan","inRange","blank","notBlank"],i=e.useIsoSeparator?"^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}$":"^\\d{4}-\\d{2}-\\d{2} \\d{2}:\\d{2}:\\d{2}$",o=s.s.object({filterType:s.s.literal("date","Filter type identifier for date filters"),type:s.s.enum(t,"Date filter operation type"),dateFrom:s.s.string({pattern:i,description:"Primary date filter value in YYYY-MM-DD HH:mm:ss format"}).nullable(),dateTo:s.s.string({pattern:i,description:"Secondary date filter value for range operations in YYYY-MM-DD HH:mm:ss format"}).nullable()});return u(o,"date",e.maxConditions)},m=e=>{const t=e?e().filter(Boolean):[];return s.s.object({filterType:s.s.literal("set","Filter type identifier for set filters"),values:s.s.array(t.length>0?s.s.enum(t,"Available values to filter by"):s.s.string("Filter values"),"Array of values to include in the filter")})},f=(e,t,i=()=>[])=>s.s.object({filterType:s.s.literal("multi","Filter type identifier for multi-condition filters"),filterModels:s.s.array(s.s.union(e.map((e,s)=>d(e.filter,e.filterParams,t,()=>i(!0,s))),"Union of different filter types that can be combined").nullable(),"Array of filter conditions to be combined with AND/OR logic")})},49819:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.buildPivotFeatureSchema=void 0;const s=i(95556);t.buildPivotFeatureSchema=e=>{const t=e.colModel.getCols().filter(e=>e.isAllowPivot()).map(e=>e.getColId());if(0!==t.length)return s.s.object({pivotMode:s.s.boolean("Whether pivot mode is enabled"),pivotColIds:s.s.array(s.s.enum(t,"Column ID that supports pivoting"),"Array of column IDs to use as pivot columns")},"Pivot configuration for the grid").nullable()}},8592:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.buildRowGroupFeatureSchema=void 0;const s=i(95556);t.buildRowGroupFeatureSchema=e=>{const t=e.colModel.getCols().filter(e=>e.isAllowRowGroup());if(0===t.length)return;const i=t.map(e=>e.getColId());return s.s.object({groupColIds:s.s.array(s.s.enum(i,"Column ID that supports row grouping"),"Array of column IDs to group by")},"Row grouping configuration for the grid")}},79425:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.buildSortFeatureSchema=void 0;const s=i(95556);t.buildSortFeatureSchema=e=>{const{sortSvc:t}=e;if(!t)return;const i=e.colModel.getCols().filter(e=>e.isSortable());if(0===i.length)return;const o=i.map(e=>e.getColId());return s.s.object({sortModel:s.s.array(s.s.object({colId:s.s.enum(o,"Column ID that supports sorting"),sort:s.s.enum(["asc","desc"],"Sort direction: ascending or descending"),type:s.s.enum(["default","absolute"],"Sort type: default or absolute values")}),"Array of sort configurations")},"Sort configuration for the grid").nullable()}},95556:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.s=void 0;class i{constructor(e){this._defs={},this._nullable=!1,this.description=e}_collectNestedDefs(e){const t={...this._defs};for(const i of e)i&&"object"==typeof i&&"$defs"in i&&(Object.assign(t,i.$defs),delete i.$defs);return t}_toJSON(e={}){const t={type:this._nullable?[this.type,"null"]:this.type,description:this.description,...e};return Object.keys(this._defs).length>0&&(t.$defs=this._defs),t}nullable(){return this._nullable=!0,this}define(e,t){return this._defs[e]=t,this}}class s extends i{constructor(e){super("string"==typeof e?e:e?.description),this.type="string","object"==typeof e&&e&&(this._pattern=e.pattern,this._format=e.format)}pattern(e){return this._pattern=e,this}format(e){return this._format=e,this}toJSON(){return this._toJSON({pattern:this._pattern,format:this._format})}}class o extends i{constructor(e){super("string"==typeof e?e:e?.description),this.type="number","object"==typeof e&&e&&(this._minimum=e.minimum,this._maximum=e.maximum,this._exclusiveMinimum=e.exclusiveMinimum,this._exclusiveMaximum=e.exclusiveMaximum,this._multipleOf=e.multipleOf)}minimum(e){return this._minimum=e,this}exclusiveMinimum(e){return this._exclusiveMinimum=e,this}maximum(e){return this._maximum=e,this}exclusiveMaximum(e){return this._exclusiveMaximum=e,this}multipleOf(e){return this._multipleOf=e,this}toJSON(){return this._toJSON({minimum:this._minimum,exclusiveMinimum:this._exclusiveMinimum,maximum:this._maximum,exclusiveMaximum:this._exclusiveMaximum,multipleOf:this._multipleOf})}}class r extends i{constructor(e,t){super(t),this._enum=e,this.type="string"}toJSON(){return this._toJSON({enum:this._enum})}}class n extends r{constructor(e,t){super([e],t)}}class a extends i{constructor(e){super(e),this.type="boolean"}toJSON(){return this._toJSON()}}class l extends i{constructor(e,t){super("string"==typeof t?t:t?.description),this.items=e,this.type="array","object"==typeof t&&t&&(this._minItems=t.minItems,this._maxItems=t.maxItems)}minItems(e){return this._minItems=e,this}maxItems(e){return this._maxItems=e,this}toJSON(){const e=this.items.toJSON(),t=this._collectNestedDefs([e]);return this._defs=t,this._toJSON({items:e,minItems:this._minItems,maxItems:this._maxItems})}}class d extends i{constructor(e,t){super(t),this.properties=e,this.type="object"}toJSON(){const e=Object.fromEntries(Object.keys(this.properties).map(e=>[e,this.properties[e].toJSON()])),t=this._collectNestedDefs(Object.values(e));return this._defs=t,this._toJSON({required:Object.keys(this.properties),additionalProperties:!1,properties:e})}}class c{constructor(e,t){this.schemas=e,this._nullable=!1,this._defs={},this.description=t}nullable(){return this._nullable=!0,this}define(e,t){return this._defs[e]=t,this}_collectNestedDefs(e){const t=this._defs;for(const i of e)i&&"object"==typeof i&&"$defs"in i&&(Object.assign(t,i.$defs),delete i.$defs);return t}toJSON(){const e=this.schemas.map(e=>e.toJSON()),t=this._collectNestedDefs(e),i={anyOf:this._nullable?[...e,{type:"null"}]:e};return this.description&&(i.description=this.description),Object.keys(t).length>0&&(i.$defs=t),i}}class u{constructor(e){this.id=e}nullable(){return this}toJSON(){return{$ref:`#/$defs/${this.id}`}}}t.s={string:e=>new s(e),number:e=>new o(e),enum:(e,t)=>new r(e,t),boolean:e=>new a(e),array:(e,t)=>new l(e,t),object:(e,t)=>new d(e,t),union:(e,t)=>new c(e,t),literal:(e,t)=>new n(e,t),ref:e=>new u(e)}},23844:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.getStructuredSchema=void 0;const s=i(76624),o=i(84773),r=i(5337),n=i(72947),a=i(66063),l=i(49819),d=i(8592),c=i(79425),u=i(95556),h={aggregation:o.buildAggregationFeatureSchema,filter:a.buildFilterFeatureSchema,sort:c.buildSortFeatureSchema,pivot:l.buildPivotFeatureSchema,columnVisibility:n.buildColumnVisibilityFeatureSchema,columnSizing:r.buildColumnSizingFeatureSchema,rowGroup:d.buildRowGroupFeatureSchema};t.getStructuredSchema=function(e,t){const i=e.colModel.getCols().map(e=>e.getColId()),o={};for(const i of s.STRUCTURED_SCHEMA_FEATURES){if(t?.exclude?.includes(i))continue;const s=(0,h[i])(e,t);s&&(o[i]=s.nullable())}const r=t?.columns??{},n=i.map(e=>r[e]?.description?`${e}: ${r[e].description}`:e).filter(Boolean).join("\n");return u.s.object(o).define("allColumnIds",u.s.enum(i,n)).toJSON()}},51809:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.AllEnterpriseModule=void 0;const s=i(76624),o=i(67976),r=i(95498),n=i(10937),a=i(11527),l=i(13766),d=i(86455),c=i(92886),u=i(2515),h=i(27546),g=i(85898),p=i(21594),m=i(37130),f=i(75434),C=i(75470),v=i(266),w=i(69327),b=i(81442),y=i(20976),S=i(99074),x=i(49002),F=i(26358),R=i(22949),P=i(78450),M=i(59428),E=i(19586),A=i(7794),T=[s.AllCommunityModule,l.ClipboardModule,d.ColumnsToolPanelModule,c.ExcelExportModule,u.FiltersToolPanelModule,u.NewFiltersToolPanelModule,p.MasterDetailModule,m.ColumnMenuModule,m.ContextMenuModule,v.CellSelectionModule,w.RichSelectModule,y.RowNumbersModule,b.RowGroupingModule,b.RowGroupingPanelModule,b.GroupFilterModule,S.ServerSideRowModelModule,S.ServerSideRowModelApiModule,g.FormulaModule,x.SetFilterModule,f.MultiFilterModule,o.AdvancedFilterModule,F.SideBarModule,P.StatusBarModule,A.ViewportRowModelModule,C.PivotModule,M.TreeDataModule,h.FindModule,n.BatchEditModule,r.AiToolkitModule],D="AllEnterprise";t.AllEnterpriseModule={with:e=>({moduleName:D,version:E.VERSION,dependsOn:[...T,a.IntegratedChartsModule.with(e),R.SparklinesModule.with(e)]}),moduleName:D,version:E.VERSION,dependsOn:T}},26705:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.isBatchEditing=t.commitBatchEdit=t.cancelBatchEdit=t.startBatchEdit=void 0;const s=i(76624);t.startBatchEdit=function({editSvc:e,gos:t,rowModel:i}){(0,s._isClientSideRowModel)(t,i)?e?.startBatchEditing():(0,s._warn)(289,{rowModelType:t.get("rowModelType")})},t.cancelBatchEdit=function({editSvc:e}){e?.stopBatchEditing({cancel:!0,source:"api",forceCancel:!0})},t.commitBatchEdit=function({editSvc:e}){e?.stopBatchEditing({source:"api",forceStop:!0,commit:!0})},t.isBatchEditing=function(e){return e.editSvc?.isBatchEditing()??!1}},10937:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.BatchEditModule=void 0;const s=i(76624),o=i(39206),r=i(19586),n=i(26705);t.BatchEditModule={moduleName:"BatchEdit",version:r.VERSION,beans:[],apiFunctions:{isBatchEditing:n.isBatchEditing,startBatchEdit:n.startBatchEdit,cancelBatchEdit:n.cancelBatchEdit,commitBatchEdit:n.commitBatchEdit},dependsOn:[s._EditCoreModule,o.EnterpriseCoreModule],css:[]}},57672:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.LoadingCellRendererModule=void 0;const s=i(39206),o=i(19586),r=i(21565);t.LoadingCellRendererModule={moduleName:"LoadingCellRenderer",version:o.VERSION,userComponents:{agLoadingCellRenderer:r.LoadingCellRenderer},icons:{groupLoading:"loading"},dependsOn:[s.EnterpriseCoreModule]}},21565:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.LoadingCellRenderer=void 0;const s=i(76624),o={tag:"div",cls:"ag-loading",children:[{tag:"span",ref:"eLoadingIcon",cls:"ag-loading-icon"},{tag:"span",ref:"eLoadingText",cls:"ag-loading-text"}]};class r extends s.Component{constructor(){super(o),this.eLoadingIcon=s.RefPlaceholder,this.eLoadingText=s.RefPlaceholder}init(e){e.node.failedLoad?this.setupFailed():this.setupLoading()}setupFailed(){this.eLoadingText.textContent=this.getLocaleTextFunc()("loadingError","ERR")}setupLoading(){const e=(0,s._createIconNoSpan)("groupLoading",this.beans,null);e&&this.eLoadingIcon.appendChild(e),this.eLoadingText.textContent=this.getLocaleTextFunc()("loadingOoo","Loading...")}refresh(e){return!1}}t.LoadingCellRenderer=r},22459:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.AgChartsExports=void 0;const s=i(76624);class o extends s.BeanStub{constructor(e){super(),this.beanName="agChartsExports",this.isEnterprise=!1,this.create=e.create,this._Theme=e._Theme,this._Scene=e._Scene,this.isEnterprise=e.isEnterprise,this._Util=e._Util}}t.AgChartsExports=o},33251:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ChartController=t.DEFAULT_THEMES=void 0;const s=i(76624),o=i(68987),r=i(98592),n=i(18889),a=i(54237);t.DEFAULT_THEMES=["ag-default","ag-material","ag-sheets","ag-polychroma","ag-vivid"];class l extends s.BeanStub{wireBeans(e){this.rangeSvc=e.rangeSvc,this.agChartsExports=e.agChartsExports}constructor(e){super(),this.model=e,this.isEnterprise=()=>this.agChartsExports.isEnterprise}postConstruct(){this.setChartRange(),this.model.unlinked&&this.rangeSvc&&this.rangeSvc.setCellRanges([]);const e=this.updateForGridChange.bind(this,{});this.addManagedEventListeners({cellSelectionChanged:e=>{e.id&&e.id===this.model.chartId&&this.updateForRangeChange()},columnMoved:e,columnPinned:e,columnVisible:e,columnRowGroupChanged:e,modelUpdated:e,cellValueChanged:this.updateForDataChange.bind(this),cellEditValuesChanged:this.updateForDataChange.bind(this)})}update(e){if(!this.validUpdateType(e))return!1;const t=(0,n.validateUpdateParams)(e,this.agChartsExports.isEnterprise);if(!t)return!1;const i=!0===t?e:t;return this.applyValidatedChartParams(i),!0}applyValidatedChartParams(e){const{chartId:t,chartType:i,chartThemeName:s,unlinkChart:o}=e,r={...{chartId:t,pivotChart:this.model.pivotChart,chartType:i??this.model.chartType,chartThemeName:s??this.model.chartThemeName,unlinkChart:o??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":r.cellRange=this.createCellRange(e)??this.model.suppliedCellRange,r.switchCategorySeries=e.switchCategorySeries??this.model.switchCategorySeries,r.aggFunc=e.aggFunc??this.model.aggFunc,r.seriesChartTypes=e.seriesChartTypes,r.suppressChartRanges=e.suppressChartRanges??this.model.suppressChartRanges,r.seriesGroupType=e.seriesGroupType??this.model.seriesGroupType,r.useGroupColumnAsCategory=e.useGroupColumnAsCategory??this.model.useGroupColumnAsCategory;break;case"crossFilterChartUpdate":r.cellRange=this.createCellRange(e)??this.model.suppliedCellRange,r.switchCategorySeries=!1,r.aggFunc=e.aggFunc??this.model.aggFunc,r.crossFiltering=!0,r.crossFilteringSort=this.model.crossFilteringSort,r.suppressChartRanges=e.suppressChartRanges??this.model.suppressChartRanges;break;case"pivotChartUpdate":r.switchCategorySeries=!1}this.model.updateModel(r);r.unlinkChart||r.suppressChartRanges?this.rangeSvc?.setCellRanges([]):this.setChartRange()}updateForGridChange(e){if(this.model.unlinked)return;const{maintainColState:t,setColsFromRange:i}=e??{};this.model.updateCellRanges({maintainColState:t,setColsFromRange:i}),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 t=this.getSelectedValueColState().map(e=>({colId:e.colId,displayName:e.displayName})),i=this.getChartData(),s=this.getSelectedDimensions(),o=this.model,r={data:i,groupData:o.groupChartData,grouping:this.isGrouping(),categories:s.map(({colId:e,displayName:t})=>{const i=o.categoryAxisType??o.getChartDataType(e);return{id:e,name:t,chartDataType:i,convertTime:"time"===i?o.getConvertTime(e):void 0}}),fields:t,chartId:this.getChartId(),getCrossFilteringContext:()=>({lastSelectedChartId:"xxx"}),seriesChartTypes:this.getSeriesChartTypes(),updatedOverrides:e,seriesGroupType:o.seriesGroupType};return this.isCategorySeriesSwitched()?this.invertCategorySeriesParams(r):r}invertCategorySeriesParams(e){const[t]=e.categories,i=[{id:r.DEFAULT_CHART_CATEGORY,name:""}],s=e.data.map((e,i)=>{const s=`${t.id}:${i}`,o=e[t.id];return{colId:s,displayName:null==o?"":String(o)}}),o=e.fields.map(i=>{const s={[r.DEFAULT_CHART_CATEGORY]:i.displayName};for(const[o,r]of e.data.entries()){const e=`${t.id}:${o}`,n=r[i.colId];s[e]=n}return s});return{...e,categories:i,fields:s,data:o}}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,useGroupColumnAsCategory:this.model.useGroupColumnAsCategory}}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()}isCategorySeriesSwitched(){return this.model.switchCategorySeries&&!this.model.isGrouping()}switchCategorySeries(e){(0,a.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 i=(e,t)=>{let i=0;for(const s of e)s.selected&&(i>=t?s.selected=!1:i++);0===i&&(e[0].selected=!0)},s=(0,a.getMaxNumCategories)(t),o=(0,a.getMaxNumSeries)(t),r=null!=s&&((0,a.getMaxNumCategories)(e)??100)>(s??100),n=null!=o&&((0,a.getMaxNumSeries)(e)??100)>(o??100);r&&i(this.model.dimensionColState,s),n&&i(this.model.valueColState,o),(r||n)&&(this.model.resetCellRanges(r,n),this.setChartRange(!0))}setChartThemeName(e,t){this.model.chartThemeName=e,t||this.raiseChartModelUpdateEvent()}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")||t.DEFAULT_THEMES}getThemes(){return this.getThemeNames().map(e=>{const t=(0,o.isStockTheme)(e,this.agChartsExports._Theme)?e:this.chartProxy.lookupCustomChartTheme(e);return this.agChartsExports._Theme.getChartTheme(t)})}getPalettes(){return this.getThemes().map(e=>e.palette)}getSelectedValueColState(){return this.model.getValueColState().filter(e=>e.selected)}getSelectedDimensions(){return this.model.getSelectedDimensions()}getColStateForMenu(){return{dimensionCols:this.model.dimensionColState,valueCols:this.model.getValueColState()}}setChartRange(e=!1){!this.rangeSvc||this.model.suppressChartRanges||this.model.unlinked||this.rangeSvc.setCellRanges(this.getCellRanges()),e||this.raiseChartModelUpdateEvent()}detachChartRange(){this.model.unlinked=!this.model.unlinked,this.model.unlinked?this.rangeSvc&&this.rangeSvc.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,i){const s=this.model.comboChartModel.seriesChartTypes.find(t=>t.colId===e);if(s){const e="customCombo"!==this.model.chartType;e&&(this.model.chartType="customCombo");const o=s.chartType;null!=t&&(s.chartType=t),null!=i&&(s.secondaryAxis=i),this.model.comboChartModel.savedCustomSeriesChartTypes=this.model.comboChartModel.seriesChartTypes,this.model.comboChartModel.updateSeriesChartTypes(),this.updateForDataChange(),e&&this.dispatchLocalEvent({type:"chartTypeChanged"}),o!==t&&this.dispatchLocalEvent({type:"chartSeriesChartTypeChanged"}),this.raiseChartOptionsChangedEvent()}}getActiveSeriesChartTypes(){const e=this.getSelectedValueColState().map(e=>e.colId);return this.getSeriesChartTypes().filter(t=>e.includes(t.colId))}getChartSeriesTypes(e){const t=e??this.getChartType();return this.isComboChart(t)?["line","bar","area"]:[(0,a.getSeriesType)(t)]}getChartSeriesType(){const e=this.getSeriesChartTypes();if(0===e.length)return"bar";const t=e[0].chartType;return"columnLineCombo"===t?"bar":"areaColumnCombo"===t?"area":(0,a.getSeriesType)(t)}getCellRanges(){return[this.model.dimensionCellRange,this.model.valueCellRange].filter(e=>e)}createCellRange(e){return e.cellRange&&this.rangeSvc?.createPartialCellRangeFromRangeParams(e.cellRange,!0)}validUpdateType(e){if(!e.type)return(0,s._warn)(136),!1;const t={"Range Chart":()=>!this.isPivotChart()&&!this.isCrossFilterChart(),"Pivot Chart":()=>this.isPivotChart(),"Cross Filter Chart":()=>this.isCrossFilterChart()},i=Object.keys(t).find(e=>t[e]())??"Range Chart",o=e.type===`${i[0].toLowerCase()}${i.slice(1).replace(/ /g,"")}Update`;return o||(0,s._warn)(137,{currentChartType:i,type:e.type}),o}getCellRangeParams(){const e=this.getCellRanges(),t=e[0],i=t?.startRow||null,s=t?.endRow||null;return{rowStartIndex:i?.rowIndex??null,rowStartPinned:i?.rowPinned,rowEndIndex:s?.rowIndex??null,rowEndPinned:s?.rowPinned,columns:e.reduce((e,t)=>e.concat(t.columns.map(e=>e.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"}),this.raiseChartOptionsChangedEvent()}raiseChartUpdatedEvent(){this.dispatchLocalEvent({type:"chartUpdated"})}raiseChartApiUpdateEvent(){this.dispatchLocalEvent({type:"chartApiUpdate"})}raiseChartOptionsChangedEvent(){const{chartId:e,chartType:t}=this.getChartModel();this.eventSvc.dispatchEvent({type:"chartOptionsChanged",chartId:e,chartType:t,chartThemeName:this.getChartThemeName(),chartOptions:this.chartProxy?.getChartThemeOverrides()})}raiseChartRangeSelectionChangedEvent(){this.eventSvc.dispatchEvent({type:"chartRangeSelectionChanged",id:this.model.chartId,chartId:this.model.chartId,cellRange:this.getCellRangeParams()})}destroy(){super.destroy(),this.rangeSvc&&this.rangeSvc.setCellRanges([])}}t.ChartController=l},47216:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.AreaChartProxy=void 0;const s=i(58631);class o extends s.CartesianChartProxy{getAxes(e){const t={x:{type:this.getXAxisType(e),position:"bottom"},y:{type:"number",position:"left"}};return this.isNormalised()&&(t.y.label={...t.y.label,formatter:e=>Math.round(e.value)+"%"}),t}getSeries(e){const[t]=e.categories,i=e.fields.map(e=>({type:this.standaloneChartType,xKey:t.id,xName:t.name,yKey:e.colId,yName:e.displayName,normalizedTo:"normalizedArea"===this.chartType?100:void 0,stacked:["normalizedArea","stackedArea"].includes(this.chartType)}));return this.crossFiltering?this.extractLineAreaCrossFilterSeries(i,e):i}isNormalised(){return!this.crossFiltering&&"normalizedArea"===this.chartType}}t.AreaChartProxy=o},23116:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.BarChartProxy=void 0;const s=i(54237),o=i(58631),r=new Set(["bar","groupedBar","stackedBar","normalizedBar"]);class n extends o.CartesianChartProxy{getAxes(e){const t={x:{type:this.getXAxisType(e),position:this.isHorizontal()?"left":"bottom"},y:{type:"number",position:this.isHorizontal()?"bottom":"left"}};return this.isNormalised()&&(t.y.label={...t.y.label,formatter:e=>Math.round(e.value)+"%"}),t}getSeries(e){const[t]=e.categories,i=e.fields.map(e=>({type:this.standaloneChartType,direction:this.isHorizontal()?"horizontal":"vertical",stacked:this.crossFiltering||(0,s.isStacked)(this.chartType),normalizedTo:this.isNormalised()?100:void 0,xKey:t.id,xName:t.name,yKey:e.colId,yName:e.displayName}));return this.crossFiltering?this.extractCrossFilterSeries(i):i}extractCrossFilterSeries(e){const t=[];for(let i=0;ie instanceof Date)?"time":this.isXAxisOfType(e,"number")?"number":"category"}isXAxisOfType(e,t,i){const[s]=e.categories;if(s?.chartDataType)return s.chartDataType===t;if(!i)return!1;const o=e.data[0];return!!o&&i(o[s.id])}transformTimeData(e,t,i){const o=e[0]?.[t];return o instanceof Date?e:e.map(e=>{const o=e[t];return"string"==typeof o?{...e,[t]:i?i(o):(0,s._parseDateTimeFromString)(o)}:e})}crossFilteringReset(){this.crossFilteringSelectedPoints=[],this.crossFilteringAllPoints.clear()}crossFilteringPointSelected(e){return 0==this.crossFilteringSelectedPoints.length||this.crossFilteringSelectedPoints.includes(e)}crossFilteringDeselectedPoints(){return this.crossFilteringSelectedPoints.length>0&&this.crossFilteringAllPoints.size!==this.crossFilteringSelectedPoints.length}extractLineAreaCrossFilterSeries(e,t){const[i]=t.categories,s=e=>{if("area"===this.standaloneChartType){return t.getCrossFilteringContext().lastSelectedChartId===t.chartId?e+"-total":e}return e+"-total"};return e.map(e=>(e.yKey=s(e.yKey),e.listeners={seriesNodeClick:t=>{const i=t.datum[e.xKey],s=t.event.metaKey||t.event.ctrlKey;this.crossFilteringAddSelectedPoint(s,i),this.crossFilterCallback(t)}},e.marker={itemStyler:e=>{const t=e.datum[i.id],s="highlighted-item"===e.highlightState;return{fill:s?"yellow":e.fill,size:s?14:this.crossFilteringPointSelected(t)?8:0}}},"area"===this.standaloneChartType&&(e.fillOpacity=this.crossFilteringDeselectedPoints()?.3:1),"line"===this.standaloneChartType&&(e.strokeOpacity=this.crossFilteringDeselectedPoints()?.3:1),e))}getCrossFilterData(e){this.crossFilteringAllPoints.clear();const[t]=e.categories,i=e.fields[0].colId,s=`${i}-filtered-out`,o=e.getCrossFilteringContext().lastSelectedChartId;return e.data.map(r=>{const n=r[t.id];this.crossFilteringAllPoints.add(n);const a=this.crossFilteringPointSelected(n);return"area"===this.standaloneChartType&&o===e.chartId&&(r[`${i}-total`]=a?r[i]:r[i]+r[s]),"line"===this.standaloneChartType&&(r[`${i}-total`]=a?r[i]:r[i]+r[s]),r})}crossFilteringAddSelectedPoint(e,t){e?this.crossFilteringSelectedPoints.push(t):this.crossFilteringSelectedPoints=[t]}isHorizontal(e){const t=this.standaloneChartType;if("waterfall"!==t&&"box-plot"!==t&&"range-bar"!==t)return!1;const i=e.theme,s=e=>{const i=e?.overrides?.[t]?.series?.direction;return null!=i?"horizontal"===i:"object"==typeof e?.baseTheme&&s(e.baseTheme)};return s(i)}getSeriesChartThemeDefaults(){return{series:{highlight:(0,r.getSeriesHighlight)(this.crossFiltering)}}}}t.CartesianChartProxy=n},51051:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.HistogramChartProxy=void 0;const s=i(58631);class o extends s.CartesianChartProxy{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{x:{type:"number",position:"bottom"},y:{type:"number",position:"left"}}}}t.HistogramChartProxy=o},49235:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.LineChartProxy=void 0;const s=i(58631);class o extends s.CartesianChartProxy{getAxes(e){const t={x:{type:this.getXAxisType(e),position:"bottom"},y:{type:"number",position:"left"}};return this.isNormalised()&&(t.y.label={...t.y.label,formatter:e=>Math.round(e.value)+"%"}),t}getSeries(e){const[t]=e.categories,i=["normalizedLine","stackedLine"].includes(this.chartType),s=e.fields.map(e=>({type:this.standaloneChartType,xKey:t.id,xName:t.name,yKey:e.colId,yName:e.displayName,normalizedTo:i&&this.isNormalised()?100:void 0,stacked:i}));return this.crossFiltering?this.extractLineAreaCrossFilterSeries(s,e):s}isNormalised(){return!this.crossFiltering&&["normalizedLine"].includes(this.chartType)}}t.LineChartProxy=o},87015:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ScatterChartProxy=void 0;const s=i(98592),o=i(58631);class r extends o.CartesianChartProxy{getAxes(e){return{x:{type:"number",position:"bottom"},y:{type:"number",position:"left"}}}getSeries(e){const[t]=e.categories,i=this.isPaired(),o=this.getSeriesDefinitions(e.fields,i),r=t.id===s.DEFAULT_CHART_CATEGORY?void 0:t,n=o.map(e=>{if(e?.sizeField){return{type:"bubble",xKey:e.xField.colId,xName:e.xField.displayName??void 0,yKey:e.yField.colId,yName:e.yField.displayName??void 0,title:`${e.yField.displayName} vs ${e.xField.displayName}`,sizeKey:e.sizeField.colId,sizeName:e.sizeField.displayName??"",labelKey:r?r.id:e.yField.colId,labelName:r?r.name:void 0}}return{type:"scatter",xKey:e.xField.colId,xName:e.xField.displayName??void 0,yKey:e.yField.colId,yName:e.yField.displayName??void 0,title:`${e.yField.displayName} vs ${e.xField.displayName}`,labelKey:r?r.id:e.yField.colId,labelName:r?r.name:void 0}});return this.crossFiltering?this.extractCrossFilterSeries(n,e):n}extractCrossFilterSeries(e,t){const{data:i}=t,s=e=>`${e}-filtered-out`,o=e.map(e=>{let t;if("bubble"===e.type){const{sizeKey:o}=e;t=((e,t)=>{const i=[1/0,-1/0];if(null!=t)for(const o of e){const e=o[t]??o[s(t)];ei[1]&&(i[1]=e)}if(i[0]<=i[1])return i})(i,o)}return{...e,domain:t,highlight:{highlightedItem:{fill:"yellow"}},listeners:{...e.listeners,seriesNodeClick:this.crossFilterCallback}}});return[...o,...o.map(e=>{const{yKey:t,xKey:i}=e;let o={};return"bubble"===e.type&&(o={sizeKey:s(e.sizeKey)}),{...e,...o,yKey:s(t),xKey:s(i),showInLegend:!1,listeners:{...e.listeners,seriesNodeClick:e=>{const t=e.datum[s(i)],o={...e,xKey:i,datum:{...e.datum,[i]:t}};this.crossFilterCallback(o)}}}})]}getSeriesDefinitions(e,t){if(e.length<2)return[];const i="bubble"===this.chartType;if(t)return i?e.map((t,i)=>i%3==0?{xField:t,yField:e[i+1],sizeField:e[i+2]}:null).filter(e=>e?.yField&&e.sizeField):e.map((t,i)=>i%2==0?{xField:t,yField:e[i+1]}:null).filter(e=>e?.yField);const s=e[0];return i?e.map((t,i)=>i%2==1?{xField:s,yField:t,sizeField:e[i+1]}:null).filter(e=>e?.sizeField):e.filter((e,t)=>t>0).map(e=>({xField:s,yField:e}))}}t.ScatterChartProxy=r},59303:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.WaterfallChartProxy=void 0;const s=i(58631);class o extends s.CartesianChartProxy{getAxes(e,t){const i=this.isHorizontal(t),s=i?"y":"x",o=i?"x":"y";return{[s]:{type:this.getXAxisType(e),position:i?"left":"bottom"},[o]:{type:"number",position:i?"bottom":"left"}}}getSeries(e){const[t]=e.categories,[i]=e.fields;return[{type:this.standaloneChartType,xKey:t.id,xName:t.name,yKey:i.colId,yName:i.displayName??void 0}]}}t.WaterfallChartProxy=o},26738:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ChartProxy=void 0;const s=i(19687),o=i(22210),r=i(54237),n=i(68987);t.ChartProxy=class{constructor(e){this.chartProxyParams=e,this.clearThemeOverrides=!1,this.agChartsExports=e.agChartsExports,this.chart=e.chartInstance,this.chartType=e.chartType,this.crossFiltering=e.crossFiltering,this.crossFilterCallback=e.crossFilterCallback,this.standaloneChartType=(0,r.getSeriesType)(this.chartType),null==this.chart?this.chart=e.agChartsExports.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(0,s.deproxy)(this.chart)}getChartRef(){return this.chart}downloadChart(e,t,i){const{chart:o}=this,r=(0,s.deproxy)(o),n=t||r.title.node.getPlainText(),{width:a,height:l}=e||{};o.download({width:a,height:l,fileName:n,fileFormat:i})}getChartImageDataURL(e){return this.getChart().getCanvasDataURL(e)}getChartOptions(){return this.chart.getOptions()}getChartThemeOverrides(){return this.getChartOptions().theme.overrides??{}}getChartPalette(){return this.agChartsExports._Theme.getChartTheme(this.getChartOptions().theme).palette}setPaired(e){const t=(0,r.getSeriesType)(this.chartProxyParams.chartType);this.chart.updateDelta({theme:{overrides:{[t]:{paired:e}}}})}isPaired(){const e=(0,r.getSeriesType)(this.chartProxyParams.chartType);return(0,o.get)(this.getChartThemeOverrides(),`${e}.paired`,!0)}lookupCustomChartTheme(e){return(0,n.lookupCustomChartTheme)(this.chartProxyParams,e)}getSeriesGroupType(){}transformCategoryData(e,t){return e.map((e,i)=>{const s=e[t],o=s?.toString?s.toString():"",r={...e};return r[t]={id:i,value:s,toString:()=>o},r})}getCommonChartOptions(e){const t=this.clearThemeOverrides?{}:this.chart?.getOptions()??{},i=null!=this.chart?this.getActiveFormattingPanelOverrides():void 0;this.clearThemeOverrides=!1;const s=this.chartProxyParams.styleNonce;return{...t,mode:"integrated",...s?{styleNonce:s}:{},suppressFieldDotNotation:!0,theme:(0,n.createAgChartTheme)(this.chartProxyParams,this,this.agChartsExports.isEnterprise,this.getChartThemeDefaults(),e??i),container:this.chartProxyParams.parentElement}}getChartThemeDefaults(){const e={enabled:!0,snap:!0,label:{enabled:!1}},t=this.agChartsExports.isEnterprise?{zoom:{enabled:!0},animation:{enabled:!0,duration:500},axes:{number:{crosshair:e},category:{crosshair:e},log:{crosshair:e},time:{crosshair:e}}}:{};t.minHeight=0,t.minWidth=0,t.navigator={enabled:!1,height:18},t.context=this.chartProxyParams.context;const i={common:t};return this.setSeriesChartThemeDefaults(i),i}setSeriesChartThemeDefaults(e){const t=this.getSeriesChartThemeDefaults();t&&(e[this.standaloneChartType]=t)}getSeriesChartThemeDefaults(){}getActiveFormattingPanelOverrides(){if(this.clearThemeOverrides)return{};const e=this.chart?.getOptions().theme;return e?.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)}}},68987:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.getSeriesHighlight=t.lookupCustomChartTheme=t.isStockTheme=t.createAgChartTheme=void 0;const s=i(76624),o=i(12753),r=i(22210),n=i(54237);function a(e,t){return Object.keys(t.themes).includes(e)}t.createAgChartTheme=function(e,t,i,s,o){const{chartOptionsToRestore:l,chartPaletteToRestore:u,chartThemeToRestore:h,agChartsExports:g}=e,p=function(e){let t=e.getChartThemeName();const i=e.getChartThemes();i.includes(t)||(t=i[0]);return t}(e),m=a(p,g._Theme),f=m?{baseTheme:p}:c(e,p)??{},C=e.getGridOptionsChartThemeOverrides(),v=e.apiChartThemeOverrides,w=(0,n.getSeriesType)(e.chartType),b=e.crossFiltering?function(e,t,i){const s={listeners:{legendItemClick:t=>{const i=e.getChart(),s=[t.seriesId,`${t.seriesId}-filtered-out`];for(const e of i.series.filter(e=>s.includes(e.id)))e.toggleSeriesItem(void 0,"category",t.itemId,void 0)}}},o={tooltip:{delay:500},legend:s,listeners:{click:e=>t.crossFilterCallback(e,!0)}};if("pie"===i||"donut"===i)return{[i]:{series:{fills:{$applyCycle:[{$cacheMax:{$size:{$path:["./data",{$path:"/data"}]}}},{$palette:"fills"},{$if:[{$eq:[{$value:"$parentIndex"},0]},{$mix:[{$value:"$1"},{$ref:"backgroundColor"},.7]},{$value:"$1"}]}]},strokes:{$applyCycle:[{$cacheMax:{$size:{$path:["./data",{$path:"/data"}]}}},{$palette:"strokes"},{$if:[{$eq:[{$value:"$parentIndex"},0]},{$mix:[{$value:"$1"},{$ref:"backgroundColor"},.7]},{$value:"$1"}]}]}},...o}};const r={};"line"!==i&&(r.fill={$if:[{$isEven:[{$value:"$index"}]},{$palette:"fill"},{$mix:[{$path:["../$prevIndex/fill",{$palette:"fill"}]},{$ref:"backgroundColor"},.7]}]});return{[i]:{series:{stroke:{$if:[{$isEven:[{$value:"$index"}]},{$palette:"stroke"},{$mix:[{$path:["../$prevIndex/fill",{$palette:"stroke"}]},{$ref:"backgroundColor"},.7]}]},...r},...o}}}(t,e,w):void 0,y=[m?d(e,i,(()=>{const e=e=>!!e&&Object.keys(e).some(t=>(0,r.get)(e[t],"title.enabled",!1));return e(C)||e(v)})()):void 0,{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}}}},s,b,C,v,{...l??{}},o].filter(e=>!!e).reduce((e,t)=>({baseTheme:e,overrides:t}),f);if(u&&p===h){(function(e,t){const i=(e,t)=>e===t||e?.length===t?.length&&(e?.every((e,i)=>e===t?.[i])??!1);return i(e.fills,t.fills)&&i(e.strokes,t.strokes)})(u,e.agChartsExports._Theme.getChartTheme(f).palette)||(y.palette=u)}return y},t.isStockTheme=a;const l=o.ALL_AXIS_TYPES.reduce((e,t)=>({...e,[t]:{title:{_enabledFromTheme:!0}}}),{});function d(e,t,i){const s=e.getExtraPaddingDirections();return{common:{...t?{animation:{duration:500}}:void 0,axes:l,padding:{top:!i&&s.includes("top")?40:20,right:s.includes("right")?30:20,bottom:s.includes("bottom")?40:20,left:s.includes("left")?30:20}}}}function c(e,t){const{customChartThemes:i}=e,o=i?.[t];return o||(0,s._warn)(140,{name:t}),o}t.lookupCustomChartTheme=c,t.getSeriesHighlight=function(e){const t={unhighlightedSeries:{opacity:1},highlightedItem:{strokeWidth:2}};return e||(t.unhighlightedItem={opacity:1}),t}},88995:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ComboChartProxy=void 0;const s=i(54237),o=i(58631);class r extends o.CartesianChartProxy{getAxes(e){const t=e?e.fields:[],i=new Map(t.map(e=>[e.colId,e])),{primaryYKeys:s,secondaryYKeys:o}=this.getYKeys(t,e.seriesChartTypes),r={x:{type:this.getXAxisType(e),position:"bottom"}};return s.length>0&&(r.y={type:"number",position:"left"}),o.length>0&&o.forEach(e=>{const t=i.get(e);if(!(t&&t.colId===e))return;r[`y_${e}`]={type:"number",position:"right"}}),r}getSeries(e){const{fields:t,seriesChartTypes:i}=e,[o]=e.categories;return t.map(e=>{const t=i.find(t=>t.colId===e.colId);if(t){const i=t.chartType,r=["groupedColumn","groupedBar"].includes(i)?{grouped:!0}:{},n=t.secondaryAxis?`y_${e.colId}`:"y";return{type:(0,s.getSeriesType)(i),xKey:o.id,yKey:e.colId,yName:e.displayName,yKeyAxis:n,stacked:["stackedArea","stackedColumn"].includes(i),...r}}})}getYKeys(e,t){const i=[],s=[];for(const o of e){const e=o.colId,r=t.find(t=>t.colId===e);r&&(r.secondaryAxis?s.push(e):i.push(e))}return{primaryYKeys:i,secondaryYKeys:s}}setSeriesChartThemeDefaults(e){const t=this.getSeriesChartThemeDefaults();if(!t)return;const i=new Set;for(const e of this.chartProxyParams.seriesChartTypes)i.add(e.chartType);for(const o of i)e[(0,s.getSeriesType)(o)]=t}}t.ComboChartProxy=r},57879:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.EnterpriseChartProxyFactory=void 0;const s=i(76624),o=i(51051),r=i(59303),n=i(22817),a=i(13511),l=i(19899),d=i(47562),c=i(27794),u=i(84545);class h extends s.BeanStub{constructor(){super(...arguments),this.beanName="enterpriseChartProxyFactory"}createChartProxy(e){switch(e.chartType){case"histogram":return new o.HistogramChartProxy(e);case"radarLine":case"radarArea":case"nightingale":case"radialColumn":case"radialBar":return new l.PolarChartProxy(e);case"rangeBar":case"rangeArea":return new u.RangeChartProxy(e);case"boxPlot":return new c.BoxPlotChartProxy(e);case"treemap":case"sunburst":return new a.HierarchicalChartProxy(e);case"heatmap":return new d.HeatmapChartProxy(e);case"waterfall":return new r.WaterfallChartProxy(e);case"funnel":case"coneFunnel":case"pyramid":return new n.FunnelChartProxy(e)}}}t.EnterpriseChartProxyFactory=h},22817:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.FunnelChartProxy=void 0;const s=i(26738);class o extends s.ChartProxy{getUpdateOptions(e,t){return{...t,data:this.transformFunnelCategories(e),series:this.getSeries(e)}}transformFunnelCategories(e){const{data:t}=e,[{id:i}]=e.categories;return t.map((e,t)=>({...e,[i]:{name:e[i],id:t,toString:()=>String(e[i])}}))}getSeriesChartThemeDefaults(){const e={crosshair:{enabled:!1}};return{zoom:{enabled:!1},..."pyramid"!==this.chartType&&{axes:{category:e,number:e}}}}getSeries(e){const[{id:t}]=e.categories,[{colId:i}]=e.fields;return[{type:this.standaloneChartType,stageKey:t,valueKey:i}]}}t.FunnelChartProxy=o},13511:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.HierarchicalChartProxy=void 0;const s=i(76624),o=i(26738),r=i(66326);class n extends o.ChartProxy{getUpdateOptions(e,t){const{fields:i}=e,[s,o]=i;return{...t,series:this.getSeries(s,o),data:this.getData(e,s,o)}}getSeriesChartThemeDefaults(){return{gradientLegend:{gradient:{preferredLength:200},position:"right"}}}getSeries(e,t){return[{type:this.standaloneChartType,labelKey:r.CATEGORY_LABEL_KEY,sizeKey:e?.colId,sizeName:e?.displayName??void 0,colorKey:t?.colId,colorName:t?.displayName??void 0}]}getData(e,t,i){const{categories:o,data:n,groupData:a,grouping:l}=e;if(l){const e=i?n.concat(a?.map(e=>{const i={...e};return delete i[t.colId],i})??[]):n;return(0,r.createAutoGroupHierarchy)(e,e=>e[s.GROUP_AUTO_COLUMN_ID]?.value??null)}{const e=o.map(({id:e})=>e);return(0,r.createCategoryHierarchy)(n,e)}}}t.HierarchicalChartProxy=n},66326:function(e,t){"use strict";function i(e,s=null,o){const{depth:r,rootValues:n,value:a,children:l}=e;if(n)return n.map(e=>({[t.CATEGORY_LABEL_KEY]:s,...e}));if(0===r)return[{[t.CATEGORY_LABEL_KEY]:s,...a}];const d=[];for(const[e,t]of l.entries())d.push(...i(t,e,!0));return o?[{[t.CATEGORY_LABEL_KEY]:s,children:d,...a??{}}]:d}function s(e,t,i){const s={depth:0,children:new Map};for(const r of e){o(r,t(r),i,0,s)}return s;function o(e,t,i,s,r){if(s===t)return 0===s?(r.rootValues||(r.rootValues=[]),r.rootValues.push(e)):r.value=e,r;{const n=i(e,s),a=o(e,t,i,s+1,r.children.get(n)||{depth:0,children:new Map});return r.children.set(n,a),r.depth=Math.max(1+a.depth,r.depth),r}}}Object.defineProperty(t,"__esModule",{value:!0}),t.createAutoGroupHierarchy=t.createCategoryHierarchy=t.CATEGORY_LABEL_KEY=void 0,t.CATEGORY_LABEL_KEY="AG-GRID-DEFAULT-LABEL-KEY",t.createCategoryHierarchy=function(e,t){return i(s(e,function(e){return t.length},function(e,i){const s=t[i];return function(e){if(null==e)return null;return String(e)}(e[s])}))},t.createAutoGroupHierarchy=function(e,t){return i(s(e,function(e){return t(e)?.length??0},function(e,i){const s=t(e);return s?s[i]:s}))}},71723:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.PieChartProxy=void 0;const s=i(26738),o=i(68987);class r extends s.ChartProxy{getUpdateOptions(e,t){return{...t,data:this.crossFiltering?this.getCrossFilterData(e):e.data,series:this.getSeries(e)}}getSeries(e){const[t]=e.categories,i=e.fields.length,s={currentOffset:0,offsetAmount:i>1?20:40},o=this.getFields(e).map(e=>{const o={type:this.standaloneChartType,angleKey:e.colId,angleName:e.displayName,sectorLabelKey:e.colId,calloutLabelName:t.name,calloutLabelKey:t.id};if("donut"===this.chartType||"doughnut"===this.chartType){const{outerRadiusOffset:t,innerRadiusOffset:r}=function(e){const t=e.currentOffset;e.currentOffset-=e.offsetAmount;const i=e.currentOffset;return e.currentOffset-=e.offsetAmount,{outerRadiusOffset:t,innerRadiusOffset:i}}(s),n=e.displayName?{title:{text:e.displayName,showInLegend:i>1}}:void 0;return{...o,type:"donut",outerRadiusOffset:t,innerRadiusOffset:r,...n}}return o});return this.crossFiltering?this.extractCrossFilterSeries(o):o}getCrossFilterData(e){const t=e.fields[0].colId,i=`${t}-filtered-out`;return e.data.map(e=>{const s=e[t]+e[i];return e[`${t}-total`]=s,e[i]=1,e[t]=e[t]/s,e})}extractCrossFilterSeries(e){const t=e[0],i=t.angleKey,s={...t,radiusMin:0,radiusMax:1,listeners:{seriesNodeClick:this.crossFilterCallback},legendItemKey:t.calloutLabelKey,angleKey:`${i}-total`},o={...s,radiusKey:i,sectorLabelKey:`${i}-total`};return[{...s,radiusKey:`${i}-filtered-out`,showInLegend:!1},o]}getFields(e){return"pie"===this.chartType?e.fields.slice(0,1):e.fields}getSeriesChartThemeDefaults(){return{series:{highlight:(0,o.getSeriesHighlight)(this.crossFiltering)}}}}t.PieChartProxy=r},19899:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.PolarChartProxy=void 0;const s=i(26738),o=i(68987);class r extends s.ChartProxy{getAxes(e){const t="radial-bar"===this.standaloneChartType;return{angle:{type:t?"angle-number":"angle-category"},radius:{type:t?"radius-category":"radius-number"}}}getSeries(e){const{fields:t,categories:i,seriesGroupType:s}=e,[o]=i,r="radial-bar"===this.standaloneChartType,n=this.getSeriesGroupTypeOptions(s);return t.map(e=>({type:this.standaloneChartType,angleKey:r?e.colId:o.id,angleName:r?e.displayName??void 0:o.name,radiusKey:r?o.id:e.colId,radiusName:r?o.name:e.displayName??void 0,...n}))}getSeriesGroupType(){const e=this.standaloneChartType;if(!["nightingale","radial-bar","radial-column"].includes(e))return;const t=this.getChart().series?.[0]?.properties.toJson(),i=()=>t.normalizedTo?"normalized":"stacked";return"nightingale"===e?t.grouped?"grouped":i():t.stacked?i():"grouped"}getUpdateOptions(e,t){const i=this.getAxes(e);return{...t,data:this.getData(e,i),axes:i,series:this.getSeries(e)}}getData(e,t){if("angle-category"===t.angle.type||"radius-category"===t.radius.type){const[t]=e.categories;return this.transformCategoryData(e.data,t.id)}return e.data}getSeriesGroupTypeOptions(e){return e?{grouped:"grouped"===e||void 0,stacked:"grouped"!==e||void 0,normalizedTo:"normalized"===e?100:void 0}:{}}getSeriesChartThemeDefaults(){return{series:{highlight:(0,o.getSeriesHighlight)(this.crossFiltering)}}}}t.PolarChartProxy=r},47562:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.HeatmapChartProxy=void 0;const s=i(26738);class o extends s.ChartProxy{getUpdateOptions(e,t){const i="AG-GRID-DEFAULT-HEATMAP-SERIES-KEY",s="AG-GRID-DEFAULT-HEATMAP-VALUE-KEY",o="AG-GRID-DEFAULT-HEATMAP-CATEGORY-KEY";return{...t,series:this.getSeries(e,i,s,o),data:this.getData(e,i,s,o)}}getSeries(e,t,i,s){const[o]=e.categories;return[{type:this.standaloneChartType,yKey:s,xKey:t,colorKey:i,yName:o.name,xName:void 0,colorName:void 0}]}getData(e,t,i,s){const[o]=e.categories;return r=e.data,n=(r,n)=>{const a=r[o.id],l=null==a?"":String(a),d={id:n,value:a,toString:()=>l};return e.fields.map(({colId:e,displayName:o})=>({...r,[t]:o,[i]:r[e],[s]:d}))},r.reduce((e,t,i,s)=>e.concat(n(t,i,s)),new Array);var r,n}getSeriesChartThemeDefaults(){return{gradientLegend:{gradient:{preferredLength:200},position:"right"},series:{tooltip:{renderer:r}}}}}function r(e){const{xKey:t,yKey:i,colorKey:s,yName:o,datum:r}=e;return{title:"",data:[{label:o,value:r[i]},{label:r[t],value:s&&r[s]}].map(({label:e,value:t})=>({label:String(e),value:String(t)}))}}t.HeatmapChartProxy=o},27794:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.BoxPlotChartProxy=void 0;const s=i(80879);class o extends s.StatisticalChartProxy{getSeries(e){const[t]=e.categories;return e.fields.map((e,i)=>({type:this.standaloneChartType,xKey:t.id,xName:t.name,yName:e.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,e=>{const t=e.sort((e,t)=>e-t);return{min:t[0],q1:this.quantile(t,.25),median:this.quantile(t,.5),q3:this.quantile(t,.75),max:t[t.length-1]}})}quantile(e,t){const i=(e.length-1)*t,s=Math.floor(i),o=i-s;return void 0!==e[s+1]?e[s]+o*(e[s+1]-e[s]):e[s]}}t.BoxPlotChartProxy=o},84545:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.RangeChartProxy=void 0;const s=i(80879);class o extends s.StatisticalChartProxy{getSeries(e){const[t]=e.categories;return e.fields.map((e,i)=>({type:this.standaloneChartType,xKey:t.id,xName:t.name,yName:e.displayName??void 0,yLowName:"Min",yHighName:"Max",yLowKey:`min:${i}`,yHighKey:`max:${i}`}))}getData(e){return this.computeSeriesStatistics(e,e=>({min:Math.min(...e),max:Math.max(...e)}))}}t.RangeChartProxy=o},80879:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.StatisticalChartProxy=void 0;const s=i(98592),o=i(58631);class r extends o.CartesianChartProxy{getAxes(e,t){return{x:{type:this.getXAxisType(e),position:this.isHorizontal(t)?"left":"bottom"},y:{type:"number",position:this.isHorizontal(t)?"bottom":"left"}}}computeSeriesStatistics(e,t){const{data:i,fields:o}=e,[r]=e.categories,n=r.id||s.DEFAULT_CHART_CATEGORY,a=this.groupDataByCategory(n,i);return Array.from(a).map(([e,i])=>{const s={[r.id]:e};return o.forEach((e,o)=>{const r=i.map(t=>t[e.colId]).filter(e=>"number"==typeof e&&!isNaN(e)),n=t(r);for(const e of Object.keys(n)){s[`${e}:${o}`]=r.length>0?n[e]:null}}),s})}groupDataByCategory(e,t){return t.reduce((t,i)=>{const o=(t=>{if(e===s.DEFAULT_CHART_CATEGORY)return 1;const i=t[e];return null==i?"":i instanceof Date?i.getTime():i})(i),r=t.get(o);return r?r.push(i):t.set(o,[i]),t},new Map)}}t.StatisticalChartProxy=r},99208:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ChartDatasource=void 0;const s=i(76624),o=i(57508),r=i(98592);class n extends s.BeanStub{wireBeans(e){this.sortSvc=e.sortSvc,this.gridRowModel=e.rowModel,this.colModel=e.colModel,this.valueSvc=e.valueSvc,this.pivotResultCols=e.pivotResultCols,this.rowNodeSorter=e.rowNodeSorter}getData(e){if(e.crossFiltering){if(e.grouping)return(0,s._warn)(141),{chartData:[],colNames:{}};if(!(0,s._isClientSideRowModel)(this.gos))return(0,s._warn)(142),{chartData:[],colNames:{}}}(0,s._isServerSideRowModel)(this.gos)&&e.pivoting&&this.updatePivotKeysForSSRM();const t=this.extractRowsFromGridRowModel(e);return t.chartData=this.aggregateRowsByDimension(e,t.chartData),t}extractRowsFromGridRowModel(e){const{crossFiltering:t,startRow:i,endRow:s,valueCols:o,dimensionCols:n,grouping:a,crossFilteringSort:l,combineGroupValues:d}=e;let c=[];const u={},h={},g={};let p,m={},f=[];if(t)m=this.getFilteredRowNodes(),f=this.getAllRowNodes(l),p=f.length;else{const e=this.gridRowModel.getRowCount()-1;if(i===s&&0===i&&0===n.length&&0===o.length)p=0;else{p=(s>=0?Math.min(s,e):e)-i+1}}if(p>0)for(const e of o){let t=[];const i=e.getColDef().pivotKeys;i&&(t=i.slice());const s=e.getColDef().headerName;s&&t.push(s),t.length>0&&(u[e.getId()]=t)}let C=0,v=0;const w={};for(let s=0;sr.filter(Boolean).join(" - ")};if(d){const e=n.toString(),t=w[e];t?n=t:w[e]=n}u[t]=n,l.group&&(h[o.toString()]=s-C);const a=o.slice(1,o.length).toString();a&&(g[a]=h[a])}else u[t]=e}else u[r.DEFAULT_CHART_CATEGORY]=s+1}for(const i of o){const s=i.getColId();if(t){const t=s+"-filtered-out",o=this.valueSvc.getValue(i,l,"data");let r=o;null!=o&&("function"==typeof o.toNumber?r=o.toNumber():"number"==typeof o.value&&(r=o.value)),m[l.id]?(u[s]=r,u[t]=e.aggFunc||e.isScatter?void 0:0):(u[s]=e.aggFunc||e.isScatter?void 0:0,u[t]=r)}else{let e=this.valueSvc.getValue(i,l,"data");e&&"number"==typeof e.value&&(e=e.value),e&&Object.prototype.hasOwnProperty.call(e,"toString")&&(e=parseFloat(e.toString())),u[s]=null!=e&&"function"==typeof e.toNumber?e.toNumber():e}}c.push(u)}let b;if(a){const e=Object.values(g),t=c;c=[],b=[];for(let i=0;ivoid 0!==e[s]).map(e=>e[s]),n=(0,o._aggregateValues)({beans:this.beans,values:r,aggFuncOrString:e.aggFunc,column:i,rowNode:void 0,pivotResultColumn:void 0,aggregatedChildren:[]});t[s]=n&&void 0!==n.value?n.value:n;const a=`${s}-filtered-out`,l=t.__children.filter(e=>void 0!==e[a]).map(e=>e[a]),d=(0,o._aggregateValues)({beans:this.beans,values:l,aggFuncOrString:e.aggFunc,column:i,rowNode:void 0,pivotResultColumn:void 0,aggregatedChildren:[]});t[a]=d&&void 0!==d.value?d.value:d}else{const r=t.__children.map(e=>e[s]),n=(0,o._aggregateValues)({beans:this.beans,values:r,aggFuncOrString:e.aggFunc,column:i,rowNode:void 0,pivotResultColumn:void 0,aggregatedChildren:[]});t[s]=n&&void 0!==n.value?n.value:n}}return l}updatePivotKeysForSSRM(){const e=this.pivotResultCols?.getPivotResultCols()?.list;if(!e)return;const t=this.extractPivotKeySeparator(e);for(const i of e)if(""===t)i.getColDef().pivotKeys=[];else{const e=i.getColId().split(t);i.getColDef().pivotKeys=e.slice(0,e.length-1)}}extractPivotKeySeparator(e){if(0===e.length)return"";const t=(e,i)=>{const s=e.getGroupId();return e.getParent()?t(e.getParent(),s):i.split(s)[1][0]},i=e[0];return null==i.getParent()?"":t(i.getParent(),i.getColId())}getGroupLabels(e,t){const i=[t];for(;e&&0!==e.level;)if(e=e.parent)if(e.group){const t=this.colModel.getCol(s.GROUP_AUTO_COLUMN_ID);if(t){const s=this.valueSvc.getValue(t,e,"data"),o=s?.toString?String(s.toString()):" ";i.push(o)}}else i.push(e.key);return i}getFilteredRowNodes(){const e={};return this.gridRowModel.forEachNodeAfterFilterAndSort(t=>{e[t.id]=t}),e}getAllRowNodes(e){const t=[];this.gridRowModel.forEachNode(e=>{t.push(e)});const i=this.rowNodeSorter;if(!i)return t;const s=!0===e?this.sortSvc?.getSortOptions():e;return s&&0!=s.length?i.doFullSortInPlace(t,s):t}}t.ChartDatasource=n},17760:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.GridChartComp=void 0;const s=i(76624),o=i(49703),r=i(33251),n=i(47216),a=i(23116),l=i(49235),d=i(87015),c=i(88995),u=i(71723),h=i(83608),g=i(83786),p=i(98592),m=i(67492),f=i(96297),C=i(54237);class v extends s.Component{wireBeans(e){this.crossFilterService=e.chartCrossFilterSvc,this.chartTranslation=e.chartTranslation,this.chartMenuSvc=e.chartMenuSvc,this.focusSvc=e.focusSvc,this.popupSvc=e.popupSvc,this.enterpriseChartProxyFactory=e.enterpriseChartProxyFactory,this.environment=e.environment}constructor(e){super('\n
\n
\n
\n
\n
\n
\n
\n
\n
\n '),this.eChart=s.RefPlaceholder,this.eWrapper=s.RefPlaceholder,this.eChartContainer=s.RefPlaceholder,this.eMenuContainer=s.RefPlaceholder,this.eEmpty=s.RefPlaceholder,this.params=e}postConstruct(){const e={...this.params,chartType:(0,C.getCanonicalChartType)(this.params.chartType),chartThemeName:this.getThemeName()},t=this.gos.get("enableRtl");this.eWrapper.classList.add(t?"ag-rtl":"ag-ltr");const i=this.createBean(new p.ChartDataModel(e));this.chartController=this.createManagedBean(new r.ChartController(i)),this.chartOptionsService=this.createManagedBean(new f.ChartOptionsService(this.chartController)),this.validateCustomThemes(),this.createChart(),this.params.insideDialog?this.addDialog():(this.addManagedEventListeners({stylesChanged:this.updateTheme.bind(this)}),this.updateTheme()),this.addMenu(),this.addManagedElementListeners(this.getGui(),{focusin:this.setActiveChartCellRange.bind(this)}),this.addManagedListeners(this.chartController,{chartModelUpdate:this.update.bind(this)}),this.addManagedPropertyListeners(["chartThemeOverrides","chartThemes"],this.reactivePropertyUpdate.bind(this)),this.update(),this.raiseChartCreatedEvent()}updateTheme(){this.environment.applyThemeClasses(this.getGui())}createChart(){let e;this.chartProxy&&(e=this.chartProxy.destroy({keepChartInstance:!0}));const t=this.chartController.getChartType(),i={agChartsExports:this.beans.agChartsExports,chartType:t,chartInstance:e,getChartThemeName:this.getChartThemeName.bind(this),getChartThemes:this.getChartThemes.bind(this),customChartThemes:this.gos.get("customChartThemes"),styleNonce:this.gos.get("styleNonce"),getGridOptionsChartThemeOverrides:()=>this.getGridOptionsChartThemeOverrides(),getExtraPaddingDirections:()=>this.chartMenu?.getExtraPaddingDirections()??[],apiChartThemeOverrides:this.params.chartThemeOverrides,crossFiltering:this.params.crossFiltering??!1,crossFilterCallback:(e,t)=>{this.params.crossFilteringContext.lastSelectedChartId=t?"":this.chartController.getChartId(),t&&this.params.crossFilteringResetCallback(),this.crossFilterService.filter(e,t)},parentElement:this.eChart,grouping:this.chartController.isGrouping(),chartThemeToRestore:this.params.chartThemeName,chartOptionsToRestore:this.params.chartOptionsToRestore,chartPaletteToRestore:this.params.chartPaletteToRestore,seriesChartTypes:this.chartController.getSeriesChartTypes(),translate:e=>this.chartTranslation.translate(e),context:(0,s._addGridCommonParams)(this.gos,{})};this.params.chartOptionsToRestore=void 0,this.chartType=t,this.chartProxy=this.createChartProxy(i),this.chartProxy?(this.chartController.setChartProxy(this.chartProxy),this.createMenuContext()):(0,s._warn)(138,{chartType:i.chartType})}createMenuContext(){if(this.chartMenuContext)return;const e=this.createManagedBean(new g.ChartMenuParamsFactory(this.chartOptionsService.getChartThemeOverridesProxy())),t=this.createManagedBean(new g.ChartMenuParamsFactory(this.chartOptionsService.getAxisThemeOverridesProxy()));this.chartMenuContext={chartController:this.chartController,chartOptionsService:this.chartOptionsService,chartMenuParamsFactory:e,chartAxisMenuParamsFactory:t}}getChartThemeName(){return this.chartController.getChartThemeName()}getChartThemes(){return this.chartController.getThemeNames()}getGridOptionsChartThemeOverrides(){return this.gos.get("chartThemeOverrides")}createChartProxy(e){const{chartType:t}=e;switch(t){case"column":case"bar":case"groupedColumn":case"stackedColumn":case"normalizedColumn":case"groupedBar":case"stackedBar":case"normalizedBar":return new a.BarChartProxy(e);case"pie":case"donut":case"doughnut":return new u.PieChartProxy(e);case"area":case"stackedArea":case"normalizedArea":return new n.AreaChartProxy(e);case"line":case"stackedLine":case"normalizedLine":return new l.LineChartProxy(e);case"scatter":case"bubble":return new d.ScatterChartProxy(e);case"columnLineCombo":case"areaColumnCombo":case"customCombo":return new c.ComboChartProxy(e)}const i=this.enterpriseChartProxyFactory?.createChartProxy(e);if(!i)throw(0,s._errMsg)(251,{chartType:t});return i}addDialog(){const e=this.chartTranslation.translate(this.params.pivotChart?"pivotChartTitle":"rangeChartTitle"),{width:t,height:i}=this.getBestDialogSize(),r=this.params.focusDialogOnOpen?()=>setTimeout(()=>(0,s._focusInto)(this.getGui())):void 0;this.chartDialog=new o.Dialog({resizable:!0,movable:!0,maximizable:!0,title:e,width:t,height:i,component:this,centered:!0,closable:!0,afterGuiAttached:r,postProcessPopupParams:{type:"chart"}}),this.createBean(this.chartDialog),this.chartDialog.addEventListener("destroyed",()=>{this.destroy(),this.chartMenuSvc.hideAdvancedSettings();const e=this.focusSvc.getFocusedCell();setTimeout(()=>{this.focusSvc.isAlive()&&(e?this.focusSvc.setFocusedCell({...e,forceBrowserFocus:!0}):(0,s._focusGridInnerElement)(this.beans))})})}getBestDialogSize(){const e=this.popupSvc.getPopupParent(),t=.75*(0,s._getAbsoluteWidth)(e),i=.75*(0,s._getAbsoluteHeight)(e),o=this.chartProxy.getChart();let r=this.params.insideDialog?850:o.width,n=this.params.insideDialog?470:o.height;return(r>t||n>i)&&(r=Math.min(r,t),n=Math.round(.553*r),n>i&&(n=i,r=Math.min(r,Math.round(n/.553)))),{width:r,height:n}}addMenu(){this.params.crossFiltering||(this.chartMenu=this.createBean(new h.ChartMenu(this.eChartContainer,this.eMenuContainer,this.chartMenuContext)),this.eChartContainer.appendChild(this.chartMenu.getGui()))}update(e){if(e?.chartId){if(!this.chartController.update(e))return}const t=this.chartTypeChanged(e),i=t||this.chartEmpty?(e=>{const t=this.chartType,i=e,s=this.chartProxy.getChart(),o=s?.getOptions(),r=Object.values(s?.axes??{});return this.chartOptionsService.getPersistedChartThemeOverrides(o,r,t,i??t)})(t):void 0;t&&this.createChart(),i&&e?.chartThemeOverrides&&(0,s._mergeDeep)(i,e.chartThemeOverrides);const o=i??e?.chartThemeOverrides;this.updateChart(o),e?.chartId&&this.chartProxy.getChart().waitForUpdate().then(()=>{this.chartController.raiseChartApiUpdateEvent()})}updateChart(e){const{chartProxy:t}=this,i=this.chartController.getSelectedValueColState(),s=this.chartController.getChartData(),o=this.handleEmptyChart(s,i.length);if(this.chartEmpty=o,o)return void(e&&this.chartController.updateThemeOverrides(e));const r=this.chartController.getChartUpdateParams(e);t.update(r),this.chartProxy.getChart().waitForUpdate().then(()=>{this.chartController.raiseChartUpdatedEvent()})}chartTypeChanged(e){const[t,i]=[this.chartController.getChartType(),e?.chartType],s=i?(0,C.getCanonicalChartType)(i):void 0;return this.chartType!==t?s??t:s&&t!==s?s:null}getChartModel(){return this.chartController.getChartModel()}getChartImageDataURL(e){return this.chartProxy.getChartImageDataURL(e)}handleEmptyChart(e,t){const i=this.chartController.isPivotChart()&&!this.chartController.isPivotMode(),o=this.chartController.getChartType();let r=1;this.chartController.isActiveXYChart()?r="bubble"===o?3:2:(0,C.isHierarchical)((0,C.getSeriesType)(o))&&(r=0);const n=tnull!=e))for(const e of Object.keys(i))t[e]=null;return Object.keys(t)}validateCustomThemes(){const e=this.getChartThemes(),t=this.gos.get("customChartThemes");if(t)for(const i of this.getAllKeysInObjects([t]))e.includes(i)||(0,s._warn)(139,{customThemeName:i})}reactivePropertyUpdate(){this.chartController.setChartThemeName(this.getThemeName(),!0);const e=this.getChartId(),t=this.chartController.isCrossFilterChart()?"crossFilter":this.getChartModel().modelType,i=this.gos.get("chartThemeOverrides")||{};this.update({type:`${t}ChartUpdate`,chartId:e,chartThemeOverrides:i})}raiseChartCreatedEvent(){this.chartProxy.getChart().waitForUpdate().then(()=>{this.eventSvc.dispatchEvent({type:"chartCreated",chartId:this.chartController.getChartId()})})}raiseChartDestroyedEvent(){this.eventSvc.dispatchEvent({type:"chartDestroyed",chartId:this.chartController.getChartId()})}destroy(){super.destroy(),this.chartProxy&&this.chartProxy.destroy(),this.destroyBean(this.chartMenu),this.chartDialog?.isAlive()&&this.destroyBean(this.chartDialog),this.onDestroyColorSchemeChangeListener?.();const e=this.getGui();(0,s._clearElement)(e),(0,s._removeFromParent)(e),this.raiseChartDestroyedEvent()}}t.GridChartComp=v},26353:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.AdvancedSettingsMenuFactory=void 0;const s=i(76624),o=i(49703),r=i(85776);class n extends s.BeanStub{constructor(){super(...arguments),this.beanName="advSettingsMenuFactory"}showMenu(e,t){this.hideMenu();const i=this.createBean(new a(e));this.activeDialog=this.createBean(new o.Dialog({title:this.beans.chartTranslation.translate("advancedSettings"),component:i,width:300,height:400,resizable:!0,movable:!0,centered:!0,closable:!0,afterGuiAttached:()=>{(0,s._findFocusableElements)(i.getGui())[0]?.focus()},closedCallback:()=>{this.activeMenu=this.destroyBean(this.activeMenu),this.activeDialog=void 0,t?.focus({preventScroll:!0})}})),this.activeMenu=i}hideMenu(){this.activeDialog&&this.destroyBean(this.activeDialog)}destroy(){this.activeMenu=this.destroyBean(this.activeMenu),this.activeDialog=this.destroyBean(this.activeDialog),super.destroy()}}t.AdvancedSettingsMenuFactory=n;class a extends s.TabGuardComp{constructor(e){super('
'),this.chartMenuContext=e}postConstruct(){this.advancedSettingsPanel=this.createManagedBean(new r.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,i=this.advancedSettingsPanel.getGui(),o=(0,s._findNextFocusableElement)(this.beans,i,!1,t);if(o)o.focus();else{const e=(0,s._findFocusableElements)(i);e.length&&e[t?e.length-1:0].focus()}}}},85776:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.AdvancedSettingsPanel=void 0;const s=i(76624),o=i(54237),r=i(11299),n=i(76671),a=i(2337),l=i(92738),d=i(73320),c=["navigator","zoom","animation","crosshair"];class u extends s.Component{constructor(e){super('
'),this.chartMenuContext=e}postConstruct(){this.chartPanelFeature=this.createManagedBean(new r.ChartPanelFeature(this.chartMenuContext.chartController,this.getGui(),"ag-chart-advanced-settings-section",(e,t)=>this.createPanels(e,t))),this.chartPanelFeature.refreshPanels()}createPanels(e,t){for(const e of c){if(!this.isGroupPanelShownForSeries(e,t))continue;const i=this.createPanel(e);this.chartPanelFeature.addComponent(i)}}isGroupPanelShownForSeries(e,t){return"animation"===e||(0,o.isCartesian)(t)&&!(0,o.isFunnel)(t)}createPanel(e){const{chartMenuParamsFactory:t,chartAxisMenuParamsFactory:i}=this.chartMenuContext;switch(e){case"navigator":return new l.NavigatorPanel(t);case"zoom":return new d.ZoomPanel(t);case"animation":return new n.AnimationPanel(t);case"crosshair":return new a.CrosshairPanel(i)}}}t.AdvancedSettingsPanel=u},76671:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.AnimationPanel=void 0;const s=i(76624),o=i(61994);class r extends s.Component{wireBeans(e){this.chartTranslation=e.chartTranslation}constructor(e){super(),this.chartMenuParamsFactory=e}postConstruct(){const e=this.chartMenuParamsFactory.addEnableParams("animation.enabled",{cssIdentifier:"charts-advanced-settings-top-level",direction:"vertical",suppressOpenCloseIcons:!0,title:this.chartTranslation.translate("animation"),suppressEnabledCheckbox:!0,useToggle:!0}),t=this.chartMenuParamsFactory.getDefaultNumberInputParams("animation.duration","durationMillis",{min:0});this.setTemplate('
\n \n \n \n
',[o.AgGroupComponentSelector,s.AgInputNumberFieldSelector],{animationGroup:e,animationHeightInput:t})}}t.AnimationPanel=r},2337:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.CrosshairPanel=void 0;const s=i(76624),o=i(61994),r=i(22076);class n extends s.Component{wireBeans(e){this.chartTranslation=e.chartTranslation}constructor(e){super(),this.chartMenuParamsFactory=e}postConstruct(){const e=this.chartMenuParamsFactory.addEnableParams("crosshair.enabled",{cssIdentifier:"charts-advanced-settings-top-level",direction:"vertical",suppressOpenCloseIcons:!0,title:this.chartTranslation.translate("crosshair"),suppressEnabledCheckbox:!0,useToggle:!0}),t=this.chartMenuParamsFactory.getDefaultCheckboxParams("crosshair.label.enabled","crosshairLabel"),i=this.chartMenuParamsFactory.getDefaultCheckboxParams("crosshair.snap","crosshairSnap"),n=this.chartMenuParamsFactory.getDefaultColorPickerParams("crosshair.stroke","color");this.setTemplate('
\n \n \n \n \n \n
',[o.AgGroupComponentSelector,s.AgCheckboxSelector,r.ColorPickerSelector],{crosshairGroup:e,crosshairLabelCheckbox:t,crosshairSnapCheckbox:i,crosshairStrokeColorPicker:n})}}t.CrosshairPanel=n},92738:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.NavigatorPanel=void 0;const s=i(76624),o=i(61994),r=i(76917);class n extends s.Component{wireBeans(e){this.chartTranslation=e.chartTranslation}constructor(e){super(),this.chartMenuParamsFactory=e}postConstruct(){const e=this.chartMenuParamsFactory.addEnableParams("navigator.enabled",{cssIdentifier:"charts-advanced-settings-top-level",direction:"vertical",suppressOpenCloseIcons:!0,title:this.chartTranslation.translate("navigator"),suppressEnabledCheckbox:!0,useToggle:!0}),t=this.chartMenuParamsFactory.getDefaultSliderParams("navigator.height","height",60);t.minValue=10;const i=this.chartMenuParamsFactory.getDefaultCheckboxParams("navigator.miniChart.enabled","miniChart");this.setTemplate('
\n \n \n \n \n
',[o.AgGroupComponentSelector,r.AgSliderSelector,s.AgCheckboxSelector],{navigatorGroup:e,navigatorHeightSlider:t,navigatorMiniChartCheckbox:i})}}t.NavigatorPanel=n},73320:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ZoomPanel=void 0;const s=i(76624),o=i(61994),r=i(76917);class n extends s.Component{wireBeans(e){this.chartTranslation=e.chartTranslation}constructor(e){super(),this.chartMenuParamsFactory=e,this.zoomScrollingStepInput=s.RefPlaceholder}postConstruct(){const e=this.chartMenuParamsFactory.addEnableParams("zoom.enabled",{cssIdentifier:"charts-advanced-settings-top-level",direction:"vertical",suppressOpenCloseIcons:!0,title:this.chartTranslation.translate("zoom"),suppressEnabledCheckbox:!0,useToggle:!0}),t=this.chartMenuParamsFactory.getDefaultCheckboxParams("zoom.enableScrolling","scrollingZoom"),i=this.chartMenuParamsFactory.getDefaultSliderParams("zoom.scrollingStep","scrollingStep",1);i.step=.01,i.minValue=i.step;const n=this.chartMenuParamsFactory.getDefaultCheckboxParams("zoom.enableSelecting","selectingZoom");t.onValueChange=(e=>t=>{e&&(e(t),this.zoomScrollingStepInput.setDisabled(!t))})(t.onValueChange),this.setTemplate('
\n \n \n \n \n \n
',[o.AgGroupComponentSelector,s.AgCheckboxSelector,r.AgSliderSelector],{zoomGroup:e,zoomScrollingCheckbox:t,zoomScrollingStepInput:i,zoomSelectingCheckbox:n}),this.zoomScrollingStepInput.setDisabled(!t.value)}}t.ZoomPanel=n},83608:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ChartMenu=void 0;const s=i(76624),o=i(44948),r=i(17348),n=i(95518);class a extends s.Component{wireBeans(e){this.chartMenuSvc=e.chartMenuSvc,this.chartMenuListFactory=e.chartMenuListFactory}constructor(e,t,i){super('
'),this.eChartContainer=e,this.eMenuPanelContainer=t,this.chartMenuContext=i,this.buttons={chartLink:{iconName:"linked",callback:()=>this.chartMenuSvc.toggleLinked(this.chartMenuContext)},chartUnlink:{iconName:"unlinked",callback:()=>this.chartMenuSvc.toggleLinked(this.chartMenuContext)},chartDownload:{iconName:"chartsDownload",callback:()=>this.chartMenuSvc.downloadChart(this.chartMenuContext)},chartMenu:{iconName:"chartsMenu",callback:e=>this.showMenuList(e)}},this.panels=[],this.menuVisible=!1,this.chartController=i.chartController}postConstruct(){this.chartToolbar=this.createManagedBean(new r.ChartToolbar),this.getGui().appendChild(this.chartToolbar.getGui()),this.refreshToolbarAndPanels(),this.addManagedEventListeners({chartCreated:e=>{if(e.chartId===this.chartController.getChartId()){Boolean(this.gos.get("chartToolPanelsDef")?.defaultToolPanel)&&this.showMenu({panel:this.defaultPanel,suppressFocus:!0})}}}),this.addManagedListeners(this.chartController,{chartLinkedChanged:this.refreshToolbarAndPanels.bind(this)}),this.refreshMenuClasses(),this.addManagedListeners(this.chartController,{chartApiUpdate:this.refreshToolbarAndPanels.bind(this)})}isVisible(){return this.menuVisible}getExtraPaddingDirections(){return["chartMenu","chartLink","chartUnlink","chartDownload"].some(e=>this.chartToolbarOptions.includes(e))?["top"]:[]}refreshToolbarAndPanels(){this.initToolbarOptionsAndPanels(),this.updateToolbar()}initToolbarOptionsAndPanels(){const{panels:e,defaultPanel:t}=this.chartMenuSvc.getChartToolPanels(this.chartController);this.panels=e,this.defaultPanel=t,this.chartToolbarOptions=this.chartMenuSvc.getChartToolbarOptions()}updateToolbar(){const e=this.chartToolbarOptions.map(e=>{const{iconName:t,callback:i}=this.buttons[e];return{buttonName:e,iconName:t,callback:i}});this.chartToolbar.updateParams({buttons:e})}createMenuPanel(e){const t=this.menuPanel=this.createBean(new o.AgPanel({height:"100%",closable:!0,hideTitleBar:!0,cssIdentifier:"chart-menu"}));return t.setParentComponent(this),this.eMenuPanelContainer.appendChild(t.getGui()),this.tabbedMenu=this.createBean(new n.TabbedChartMenu(this.panels,this.chartMenuContext)),this.addManagedListeners(this.tabbedMenu,{closed:()=>{this.hideMenu()}}),this.addManagedListeners(t,{destroyed:()=>this.destroyBean(this.tabbedMenu)}),new s.AgPromise(i=>{window.setTimeout(()=>{t.setBodyComponent(this.tabbedMenu),this.tabbedMenu.showTab(e),i(t)},100)})}showContainer(e,t){this.menuPanel&&(this.menuVisible=!0,this.refreshMenuClasses(),this.tabbedMenu.showMenu(e,t))}showMenu(e){const{panel:t,eventSource:i,suppressFocus:o}=e??{};if(this.menuPanel&&!t)this.showContainer(i,o);else{const e=t||this.defaultPanel;let r=this.panels.indexOf(e);r<0&&((0,s._warn)(143,{panel:t}),r=this.panels.indexOf(this.defaultPanel)),this.menuPanel?(this.tabbedMenu.showTab(r),this.showContainer(i,o)):this.createMenuPanel(r).then(()=>this.showContainer(i,o))}}hideMenu(){this.menuVisible=!1,this.refreshMenuClasses()}refreshMenuClasses(){this.eChartContainer.classList.toggle("ag-chart-menu-visible",this.menuVisible),this.eChartContainer.classList.toggle("ag-chart-menu-hidden",!this.menuVisible)}showMenuList(e){this.chartMenuListFactory.showMenuList({eventSource:e,showMenu:()=>this.showMenu({eventSource:e}),chartMenuContext:this.chartMenuContext})}destroy(){super.destroy(),this.menuPanel?.isAlive()&&this.destroyBean(this.menuPanel),this.tabbedMenu?.isAlive()&&this.destroyBean(this.tabbedMenu)}}t.ChartMenu=a},16292:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ChartMenuListFactory=void 0;const s=i(76624),o=i(20500);class r extends s.BeanStub{constructor(){super(...arguments),this.beanName="chartMenuListFactory"}wireBeans(e){this.popupSvc=e.popupSvc,this.chartMenuSvc=e.chartMenuSvc,this.chartTranslation=e.chartTranslation}showMenuList(e){const{eventSource:t,showMenu:i,chartMenuContext:o}=e,r=this.chartMenuSvc.doChartToolPanelsExist(o.chartController),a=this.mapWithStockItems(this.getMenuItems(o.chartController,r),o,i,t,r);if(!a.length)return;const l=this.createBean(new n(a));this.activeChartMenuList=l;let d=-1,c="left";this.gos.get("enableRtl")&&(d=1,c="right");const u=l.getGui();this.popupSvc.addPopup({modal:!0,eChild:u,closeOnEsc:!0,closedCallback:()=>{this.destroyBean(l),this.activeChartMenuList=void 0,(0,s._isNothingFocused)(this.beans)&&t.focus({preventScroll:!0})},afterGuiAttached:e=>l.afterGuiAttached(e),positionCallback:()=>{this.popupSvc.positionPopupByComponent({type:"chartMenu",eventSource:t,ePopup:u,alignSide:c,nudgeX:4*d,nudgeY:4,position:"under",keepWithinBounds:!0})},ariaLabel:"Chart Menu"})}getMenuItems(e,t){const i=[...t?["chartEdit"]:[],...e.isEnterprise()?["chartAdvancedSettings"]:[],e.isChartLinked()?"chartUnlink":"chartLink","chartDownload"],o=this.gos.get("chartMenuItems");return o?Array.isArray(o)?o:o((0,s._addGridCommonParams)(this.gos,{defaultItems:i,chartId:e.getChartId()})):i}mapWithStockItems(e,t,i,s,o){if(!e)return[];const r=[];for(const n of e){let e;if(e="string"==typeof n?this.getStockMenuItem(n,t,i,s,o):{...n},!e)continue;const{subMenu:a}=e;Array.isArray(a)&&(e.subMenu=this.mapWithStockItems(a,t,i,s,o)),r.push(e)}return r}getStockMenuItem(e,t,i,s,o){switch(e){case"chartEdit":return o?this.createMenuItem(this.chartTranslation.translate("chartEdit"),"chartsMenuEdit",i):null;case"chartAdvancedSettings":return this.createMenuItem(this.chartTranslation.translate("chartAdvancedSettings"),"chartsMenuAdvancedSettings",()=>this.chartMenuSvc.openAdvancedSettings(t,s));case"chartUnlink":return t.chartController.isChartLinked()?this.createMenuItem(this.chartTranslation.translate("chartUnlink"),"unlinked",()=>this.chartMenuSvc.toggleLinked(t)):null;case"chartLink":return t.chartController.isChartLinked()?null:this.createMenuItem(this.chartTranslation.translate("chartLink"),"linked",()=>this.chartMenuSvc.toggleLinked(t));case"chartDownload":return this.createMenuItem(this.chartTranslation.translate("chartDownload"),"chartsDownload",()=>this.chartMenuSvc.downloadChart(t))}return null}createMenuItem(e,t,i){return{name:e,icon:(0,s._createIconNoSpan)(t,this.beans,null),action:i}}destroy(){this.destroyBean(this.activeChartMenuList),super.destroy()}}t.ChartMenuListFactory=r;class n extends s.Component{constructor(e){super('\n \n '),this.menuItems=e,this.eChartsMenu=s.RefPlaceholder}postConstruct(){this.mainMenuList=this.createManagedBean(new o.MenuList(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)),(0,s._focusInto)(this.mainMenuList.getGui())}}},83786:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ChartMenuParamsFactory=void 0;const s=i(76624);class o extends s.BeanStub{wireBeans(e){this.chartTranslation=e.chartTranslation}constructor(e){super(),this.chartOptionsProxy=e}getDefaultColorPickerParams(e,t,i){return this.addValueParams(e,{label:this.chartTranslation.translate(t??"color"),labelWidth:"flex",inputWidth:"flex",labelAlignment:"top",pickerGap:6},i)}getDefaultNumberInputParams(e,t,i){return this.addValueParams(e,{label:this.chartTranslation.translate(t),labelAlignment:"top",labelWidth:"flex",inputWidth:"flex",precision:i?.precision,step:i?.step,min:i?.min,max:i?.max},{parseInputValue:e=>{const t=Number(e);return isNaN(t)?void 0:t},formatInputValue:e=>null==e?"":`${e}`})}getDefaultSliderParams(e,t,i,s){let o=this.chartOptionsProxy.getValue(e)??0;s&&Array.isArray(o)&&(o=o[0]);const r=this.getDefaultSliderParamsWithoutValueParams(o,t,i);return r.onValueChange=t=>this.chartOptionsProxy.setValue(e,s?[t]:t),r}getDefaultSliderParamsWithoutValueParams(e,t,i){return{label:this.chartTranslation.translate(t),minValue:0,maxValue:Math.max(e,i),textFieldWidth:45,value:`${e}`}}getDefaultCheckboxParams(e,t,i){const s=this.chartOptionsProxy.getValue(e),o={label:this.chartTranslation.translate(t),value:s,readOnly:i?.readOnly,passive:i?.passive};return o.onValueChange=t=>{this.chartOptionsProxy.setValue(e,"boolean"==typeof t?t:void 0)},o}getDefaultToggleParams(e,t,i){const s=this.chartOptionsProxy.getValue(e),o={label:this.chartTranslation.translate(t),labelAlignment:"left",labelWidth:"flex",inputWidth:"flex",value:s,readOnly:i?.readOnly,passive:i?.passive};return o.onValueChange=t=>{this.chartOptionsProxy.setValue(e,"boolean"==typeof t?t:void 0)},o}getDefaultSelectParams(e,t,i){return this.getDefaultSelectParamsWithoutValueParams(t,i,this.chartOptionsProxy.getValue(e),t=>{this.chartOptionsProxy.setValue(e,t)})}getDefaultSelectParamsWithoutValueParams(e,t,i,s){return{label:this.chartTranslation.translate(e),labelAlignment:"top",options:t,pickerGap:6,value:i,onValueChange:s}}getDefaultFontPanelParams(e,t){const i=t=>`${e}.${t}`;return this.addEnableParams(i("enabled"),{name:this.chartTranslation.translate(t),suppressEnabledCheckbox:!1,chartMenuParamsFactory:this,keyMapper:i})}addValueParams(e,t,i){const s=this.chartOptionsProxy.getValue(e);return t.value=i?.formatInputValue?i.formatInputValue(s):s,t.onValueChange=t=>{const s=i?.parseInputValue?i.parseInputValue(t):t;this.chartOptionsProxy.setValue(e,s)},t}addEnableParams(e,t){return t.enabled=this.chartOptionsProxy.getValue(e)??!1,t.onEnableChange=t=>this.chartOptionsProxy.setValue(e,t),t}getChartOptions(){return this.chartOptionsProxy}}t.ChartMenuParamsFactory=o},11299:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ChartPanelFeature=void 0;const s=i(76624),o=i(54237);class r extends s.BeanStub{constructor(e,t,i,s){super(),this.chartController=e,this.eGui=t,this.cssClass=i,this.createPanels=s,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.addCss(this.cssClass),this.eGui.appendChild(e.getGui())}refreshPanels(e){const t=this.chartController.getChartType(),i=this.chartController.isGrouping(),s=(0,o.getSeriesType)(t);e&&t===this.chartType&&i===this.isGrouping||(this.destroyPanels(),this.createPanels(t,s),this.chartType=t,this.isGrouping=i)}destroyPanels(){for(const e of this.panels)(0,s._removeFromParent)(e.getGui()),this.destroyBean(e);this.panels=[]}destroy(){this.destroyPanels(),super.destroy()}}t.ChartPanelFeature=r},17348:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ChartToolbar=void 0;const s=i(76624);class o extends s.Component{wireBeans(e){this.chartTranslation=e.chartTranslation}constructor(){super('
'),this.eMenu=s.RefPlaceholder,this.buttonListenersDestroyFuncs=[]}updateParams(e){const{buttons:t}=e;this.createButtons(t)}createButtons(e){for(const e of this.buttonListenersDestroyFuncs)e?.();this.buttonListenersDestroyFuncs=[];const t=this.eMenu;(0,s._clearElement)(t);for(const i of e){const{buttonName:e,iconName:s,callback:o}=i,r=this.createButton(s),n=this.chartTranslation.translate(e+"ToolbarTooltip");n&&r instanceof HTMLElement&&(r.title=n),this.buttonListenersDestroyFuncs.push(...this.addManagedElementListeners(r,{click:e=>o(e.currentTarget)})),t.appendChild(r)}}createButton(e){const t=(0,s._createIconNoSpan)(e,this.beans);t.classList.add("ag-chart-menu-icon");const i=(0,s._createElement)({tag:"button",attrs:{type:"button"},cls:"ag-chart-menu-toolbar-button"});return i.appendChild(t),i}destroy(){this.buttonListenersDestroyFuncs=[],super.destroy()}}t.ChartToolbar=o},64858:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.CategoriesDataPanel=void 0;const s=i(76624),o=i(61994),r=i(98592),n=i(6532);class a extends n.DragDataPanel{constructor(e,t,i,s,o){super(e,i,undefined,'
'),this.title=t,this.dimensionCols=s,this.isOpen=o}postConstruct(){this.groupComp=this.createBean(new o.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(e=>e.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 s.AgToggleButton({label:this.chartTranslation.translate("aggregate"),labelAlignment:"left",labelWidth:"flex",inputWidth:"flex",value:null!=t,onValueChange:e=>{const t=e?"sum":void 0;this.chartController.setAggFunc(t),this.aggFuncSelect?.setValue(t,!0),this.aggFuncSelect?.setDisplayed(null!=t)}}))),this.groupComp.addItem(this.aggFuncSelect=this.createBean(new s.AgSelect({options:[{value:"sum",text:this.chartTranslation.translate("sum")},{value:"first",text:this.chartTranslation.translate("first")},{value:"last",text:this.chartTranslation.translate("last")},{value:"min",text:this.chartTranslation.translate("min")},{value:"max",text:this.chartTranslation.translate("max")},{value:"count",text:this.chartTranslation.translate("count")},{value:"avg",text:this.chartTranslation.translate("avg")}],value:"string"==typeof t?t:void 0,onValueChange:e=>{this.chartController.setAggFunc(e)}}))),this.refreshAggFuncControls(e,t)}refreshAggFuncControls(e,t){const i=e.filter(e=>e.selected).some(e=>e.colId!==r.DEFAULT_CHART_CATEGORY);this.aggFuncToggle?.setValue(null!=t),this.aggFuncSelect?.setValue("string"==typeof t?t:void 0,!0),this.aggFuncToggle?.setDisplayed(i),this.aggFuncSelect?.setDisplayed(i&&null!=t)}clearAggFuncControls(){this.aggFuncToggle=this.destroyBean(this.aggFuncToggle),this.aggFuncSelect=this.destroyBean(this.aggFuncSelect)}destroy(){this.clearAggFuncControls(),this.groupComp=this.destroyBean(this.groupComp),super.destroy()}}t.CategoriesDataPanel=a},11504:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ChartDataPanel=void 0;const s=i(76624),o=i(54237),r=i(64858),n=i(5524),a=i(81625),l=i(13365),d={groups:[{type:"categories",isOpen:!0},{type:"series",isOpen:!0},{type:"seriesChartType",isOpen:!0},{type:"chartSpecific",isOpen:!0}]};class c extends s.Component{wireBeans(e){this.chartTranslation=e.chartTranslation,this.chartSvc=e.chartSvc}constructor(e){super('
'),this.chartMenuContext=e,this.isSwitchCategorySeriesToggled=!1,this.restoreSwitchCategorySeriesToggleFocus=!1,this.panels=[],this.chartController=e.chartController}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:i,valueCols:r}=this.chartController.getColStateForMenu();this.chartType=this.chartController.getChartType(),this.isSwitchCategorySeriesToggled=this.chartController.isCategorySeriesSwitched();const n=this.isSwitchCategorySeriesToggled!==t;this.canRefresh(e,this.chartType)&&!n?(this.categoriesDataPanel?.refresh(i),this.seriesDataPanel?.refresh(r),this.seriesChartTypePanel?.refresh(r),this.chartSpecificPanel?.refresh()):this.recreatePanels(i,r);const a=(0,o.supportsInvertedCategorySeries)(this.chartType)&&this.chartSvc.isEnterprise()&&!this.chartController.isGrouping();(0,s._setDisplayed)(this.switchCategorySeriesToggle.getGui(),a),n&&this.switchCategorySeriesToggle?.setValue(this.chartController.isCategorySeriesSwitched()),this.restoreSwitchCategorySeriesToggleFocus&&(this.restoreSwitchCategorySeriesToggleFocus=!1,a&&this.switchCategorySeriesToggle.getFocusableElement().focus())}canRefresh(e,t){if(void 0===e)return!1;if(e===t)return!0;const i=e=>["columnLineCombo","areaColumnCombo","customCombo"].includes(e);return!(!i(e)||!i(t))}recreatePanels(e,t){this.clearPanelComponents();const{chartType:i}=this;if(!i)return;const o=this.chartController.isCategorySeriesSwitched();this.getDataPanelDef().groups?.forEach(({type:d,isOpen:c})=>{d===(o?"series":"categories")?(this.categoriesDataPanel=this.createBean(new r.CategoriesDataPanel(this.chartController,this.getCategoryGroupTitle(o),this.getCategoryGroupMultipleSelect(i,o),e,c)),this.panels.push(this.categoriesDataPanel)):d===(o?"categories":"series")?(this.seriesDataPanel=this.createBean(new l.SeriesDataPanel(this.chartController,this.chartMenuContext.chartOptionsService,this.getSeriesGroupTitle(o),this.getSeriesGroupMultipleSelect(i,o),this.getSeriesGroupMaxSelection(i,o),t,c)),this.panels.push(this.seriesDataPanel)):"seriesChartType"===d?this.chartController.isComboChart()&&(this.seriesChartTypePanel=this.createBean(new a.SeriesChartTypePanel(this.chartController,t,c)),this.panels.push(this.seriesChartTypePanel)):"chartSpecific"===d?(this.chartSpecificPanel=this.createBean(new n.ChartSpecificDataPanel(this.chartMenuContext,c)),this.panels.push(this.chartSpecificPanel)):(0,s._warn)(144,{type:d})}),(o?this.categoriesDataPanel:this.seriesDataPanel)?.addItem(this.switchCategorySeriesToggle.getGui()),this.addPanelComponents()}addPanelComponents(){if(!this.panels.length)return;const e=(0,s._getDocument)(this.beans).createDocumentFragment();for(const t of this.panels)t.addCss("ag-chart-data-section"),e.appendChild(t.getGui());this.getGui().appendChild(e)}clearPanelComponents(){for(const e of this.panels)e.getGui().remove(),this.destroyBean(e);this.panels=[]}getDataPanelDef(){return this.gos.get("chartToolPanelsDef")?.dataPanel??d}getCategoryGroupTitle(e){return e?this.chartTranslation.translate("seriesLabels"):this.chartTranslation.translate(this.chartController.isActiveXYChart()?"labels":"categories")}getCategoryGroupMultipleSelect(e,t){return!t&&1!==(0,o.getMaxNumCategories)(e)}getSeriesGroupTitle(e){return e?this.chartTranslation.translate("categoryValues"):this.chartTranslation.translate(this.chartController.isActiveXYChart()?"xyValues":"series")}getSeriesGroupMultipleSelect(e,t){return 1!==this.getSeriesGroupMaxSelection(e,t)}getSeriesGroupMaxSelection(e,t){if(!t)return(0,o.getMaxNumSeries)(e)}createSwitchCategorySeriesToggle(){this.switchCategorySeriesToggle=this.createManagedBean(new s.AgToggleButton({label:this.chartTranslation.translate("switchCategorySeries"),labelAlignment:"left",labelWidth:"flex",inputWidth:"flex",value:this.chartController.isCategorySeriesSwitched(),onValueChange:e=>{this.restoreSwitchCategorySeriesToggleFocus=!0,this.chartController.switchCategorySeries(e)}}))}}t.ChartDataPanel=c},5524:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ChartSpecificDataPanel=void 0;const s=i(76624),o=i(61994),r=i(54237),n=i(83786);class a extends s.Component{wireBeans(e){this.chartTranslation=e.chartTranslation,this.chartSvc=e.chartSvc}constructor(e,t){super(),this.chartMenuContext=e,this.isOpen=t,this.chartSpecificGroup=s.RefPlaceholder,this.hasContent=!1}postConstruct(){const e={title:this.getTitle(),enabled:!0,suppressEnabledCheckbox:!0,suppressOpenCloseIcons:!1,cssIdentifier:"charts-data",expanded:this.isOpen,items:[...this.createDirectionSelect(),this.createReverseSelect(),this.createGroupTypeSelect()]};this.setTemplate('\n
\n \n
',[o.AgGroupComponentSelector],{chartSpecificGroup:e}),this.setDisplayed(this.hasContent)}refresh(){this.hasContent=!1,this.chartSpecificGroup.setTitle(this.getTitle()),this.updateDirectionSelect(),this.updateReverseSelect(),this.updateGroupTypeSelect(),this.setDisplayed(this.hasContent)}getTitle(){const e=this.chartMenuContext.chartController.getChartType();return this.chartTranslation.translate((0,r.getFullChartNameTranslationKey)(e))}createDirectionSelect(){if(!this.chartSvc.isEnterprise())return[];const{chartOptionsService:e,chartController:t}=this.chartMenuContext,i=e.getSeriesOptionsProxy(()=>(0,r.getSeriesType)(t.getChartType())),o=this.createManagedBean(new n.ChartMenuParamsFactory(i)),a=["horizontal","vertical"].map(e=>({value:e,text:this.chartTranslation.translate(e)})),l=o.getDefaultSelectParams("direction","direction",a),d=l.onValueChange;return l.onValueChange=e=>{d(e),t.raiseChartModelUpdateEvent()},this.directionSelect=this.createManagedBean(new s.AgSelect(l)),this.updateDirectionSelect(),[this.directionSelect]}createReverseSelect(){const{chartMenuParamsFactory:e}=this.chartMenuContext,t=e.getDefaultToggleParams("series.reverse","reverse");return this.reverseToggle=this.createManagedBean(new s.AgToggleButton(t)),this.updateReverseSelect(),this.reverseToggle}updateReverseSelect(){const e="pyramid"===this.chartMenuContext.chartController.getChartType();this.updateDisplayed(this.reverseToggle,e)}updateDirectionSelect(){const e=(0,r.canSwitchDirection)(this.chartMenuContext.chartController.getChartType());this.updateDisplayed(this.directionSelect,e)}createGroupTypeSelect(){const{chartController:e,chartMenuParamsFactory:t}=this.chartMenuContext;return this.groupTypeSelect=this.createManagedBean(new s.AgSelect(t.getDefaultSelectParamsWithoutValueParams("seriesGroupType",r.SERIES_GROUP_TYPES.map(e=>({value:e,text:this.chartTranslation.translate(`${e}SeriesGroupType`)})),e.getSeriesGroupType(),t=>e.setSeriesGroupType(t)))),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)}}t.ChartSpecificDataPanel=a},6532:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.DragDataPanel=void 0;const s=i(76624),o=i(82406),r=i(98592);class n extends s.Component{wireBeans(e){this.chartTranslation=e.chartTranslation}constructor(e,t,i,s){super(s),this.chartController=e,this.allowMultipleSelection=t,this.maxSelection=i}addItem(e){this.groupComp.addItem(e)}createGroup(e,t,i,n,a){if(this.allowMultipleSelection){const s=e.filter(e=>e.selected);this.valuePillSelect=this.groupComp.createManagedBean(new o.AgPillSelect({valueList:e,selectedValueList:s,valueFormatter:t,selectPlaceholder:this.chartTranslation.translate(i),dragSourceId:n,onValuesChange:e=>this.onValueChange(e),maxSelection:this.maxSelection})),this.groupComp.addItem(this.valuePillSelect)}else{const t=this.createValueSelectParams(e);t.onValueChange=t=>{for(const t of e)t.selected=!1;t.selected=!0,t.colId===r.DEFAULT_CHART_CATEGORY&&this.chartController.setAggFunc(void 0,!0),this.chartController.updateForPanelChange({updatedColState:t,skipAnimation:a?.()})},this.valueSelect=this.groupComp.createManagedBean(new s.AgSelect(t)),this.groupComp.addItem(this.valueSelect)}}refreshValueSelect(e){if(!this.valueSelect)return;const{options:t,value:i}=this.createValueSelectParams(e);this.valueSelect.clearOptions().addOptions(t).setValue(i,!0)}createValueSelectParams(e){let t;return{options:e.map(e=>{const i=e.displayName??"";return e.selected&&(t=e),{value:e,text:i}}),value:t}}onValueChange({added:e,updated:t,removed:i,selected:s}){let o,r;const n=()=>{s.forEach((e,t)=>{e.order=t}),r=!0};e.length?(o=e[0],o.selected=!0,n()):i.length?(o=i[0],o.selected=!1):t.length&&(n(),o=t[0]),o&&this.chartController.updateForPanelChange({updatedColState:o,resetOrder:r})}destroy(){this.valuePillSelect=void 0,this.valueSelect=void 0,super.destroy()}}t.DragDataPanel=n},81625:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SeriesChartTypePanel=void 0;const s=i(76624),o=i(61994),r=i(54237);class n extends s.Component{wireBeans(e){this.chartTranslation=e.chartTranslation}constructor(e,t,i){super('
'),this.chartController=e,this.columns=t,this.isOpen=i,this.selectedColIds=[],this.chartTypeComps=new Map,this.secondaryAxisComps=new Map}postConstruct(){this.createSeriesChartTypeGroup(this.columns)}refresh(e){(0,s._areEqual)(this.getValidColIds(e),this.selectedColIds)?this.refreshComps():this.recreate(e)}recreate(e){this.isOpen=this.seriesChartTypeGroupComp.isExpanded(),(0,s._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(e=>e.selected&&!!t.filter(t=>t.colId===e.colId)[0]).map(({colId:e})=>e)}createSeriesChartTypeGroup(e){this.seriesChartTypeGroupComp=this.createBean(new o.AgGroupComponent({title:this.chartTranslation.translate("seriesChartType"),enabled:!0,suppressEnabledCheckbox:!0,suppressOpenCloseIcons:!1,cssIdentifier:"charts-data",expanded:this.isOpen}));const t=this.chartController.getSeriesChartTypes();for(const i of e){if(!i.selected)continue;const e=t.filter(e=>e.colId===i.colId)[0];if(!e)continue;this.selectedColIds.push(i.colId);const n=this.seriesChartTypeGroupComp.createManagedBean(new o.AgGroupComponent({title:i.displayName,enabled:!0,suppressEnabledCheckbox:!0,suppressOpenCloseIcons:!0,cssIdentifier:"charts-format-sub-level"})),a=e=>["groupedColumn","stackedColumn","stackedArea"].includes(e),l=this.seriesChartTypeGroupComp.createManagedBean(new s.AgCheckbox({label:this.chartTranslation.translate("secondaryAxis"),labelWidth:"flex",disabled:a(e.chartType),value:!!e.secondaryAxis,onValueChange:e=>this.chartController.updateSeriesChartType(i.colId,void 0,e)}));n.addItem(l);const d=["line","area","stackedArea","groupedColumn","stackedColumn"].map(e=>({value:e,text:this.chartTranslation.translate((0,r.getFullChartNameTranslationKey)(e))})),c=n.createManagedBean(new s.AgSelect({options:d,value:e.chartType,onValueChange:e=>this.chartController.updateSeriesChartType(i.colId,e)}));n.addItem(c),this.seriesChartTypeGroupComp.addItem(n),this.chartTypeComps.set(i.colId,c),this.secondaryAxisComps.set(i.colId,l)}this.getGui().appendChild(this.seriesChartTypeGroupComp.getGui())}refreshComps(){const e=this.chartController.getSeriesChartTypes();for(const t of this.selectedColIds){const i=e.find(e=>e.colId===t);if(!i)continue;const s=this.chartTypeComps.get(t),o=this.secondaryAxisComps.get(t);s?.setValue(i.chartType),o?.setValue(!!i.secondaryAxis),o?.setDisabled(this.isSecondaryAxisDisabled(i.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()}}t.SeriesChartTypePanel=n},13365:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SeriesDataPanel=void 0;const s=i(76624),o=i(61994),r=i(6532);class n extends r.DragDataPanel{constructor(e,t,i,s,o,r,n){super(e,s,o,'
'),this.chartOptionsService=t,this.title=i,this.valueCols=r,this.isOpen=n}postConstruct(){if(this.groupComp=this.createBean(new o.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 s.AgToggleButton({label:this.chartTranslation.translate("paired"),labelAlignment:"left",labelWidth:"flex",inputWidth:"flex",value:this.chartOptionsService.getPairedMode(),onValueChange:e=>{this.chartOptionsService.setPairedMode(!!e),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(e=>e.selected)),this.refreshValueSelect(e)}generateGetSeriesLabel(e){if(!this.chartController.isActiveXYChart())return e=>e.displayName??"";const t=e.filter(e=>e.selected),i="bubble"===this.chartController.getChartType(),s=this.chartOptionsService.getPairedMode(),o=new Map;return o.set(0,"X"),o.set(1,"Y"),o.set(2,"size"),e=>{const r=e.displayName??"";if(!e.selected)return r;const n=t.indexOf(e);if(-1===n)return r;let a;return a=s?o.get(n%(i?3:2)):0===n?"X":i&&n%2==0?"size":"Y",`${r} (${a})`}}destroy(){this.groupComp=this.destroyBean(this.groupComp),super.destroy()}}t.SeriesDataPanel=n},75248:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.AxisTicksPanel=void 0;const s=i(76624),o=i(61994),r=i(76917),n=i(22076);class a extends s.Component{wireBeans(e){this.chartTranslation=e.chartTranslation}constructor(e){super(),this.chartMenuUtils=e,this.axisTicksSizeSlider=s.RefPlaceholder}postConstruct(){const{chartMenuUtils:e}=this,t=e.addEnableParams("tick.enabled",{cssIdentifier:"charts-format-sub-level",direction:"vertical",suppressOpenCloseIcons:!0,title:this.chartTranslation.translate("ticks"),suppressEnabledCheckbox:!0,useToggle:!0}),i=e.getDefaultColorPickerParams("tick.stroke"),s=e.getDefaultSliderParams("tick.width","width",10),a=e.getDefaultSliderParams("tick.size","length",30);this.setTemplate('
\n \n \n \n \n \n
',[o.AgGroupComponentSelector,n.ColorPickerSelector,r.AgSliderSelector],{axisTicksGroup:t,axisTicksColorPicker:i,axisTicksWidthSlider:s,axisTicksSizeSlider:a})}setTickSizeSliderDisplayed(e){this.axisTicksSizeSlider.setDisplayed(e)}}t.AxisTicksPanel=a},65002:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.CartesianAxisPanel=void 0;const s=i(76624),o=i(61994),r=i(76917),n=i(61750),a=i(22076),l=i(83786),d=i(87730),c=i(75248),u=i(24513);class h extends s.Component{wireBeans(e){this.chartTranslation=e.chartTranslation}constructor(e,t){super(),this.axisType=e,this.options=t,this.axisGroup=s.RefPlaceholder,this.axisTypeSelect=s.RefPlaceholder,this.axisPositionSelect=s.RefPlaceholder,this.axisTimeFormatSelect=s.RefPlaceholder,this.activePanels=[],this.updateFuncs=[];const{chartOptionsService:i,seriesType:o,chartController:r}=t;this.chartOptionsService=i,this.chartController=r,this.chartOptionsSeriesProxy=i.getSeriesOptionsProxy(()=>o)}postConstruct(){const{isExpandedOnInit:e,chartOptionsService:t,registerGroupComponent:i}=this.options,n=this.axisType,d={cssIdentifier:"charts-format-top-level",direction:"vertical",title:this.translate(n),expanded:e,suppressEnabledCheckbox:!0},c=t.getCartesianAxisOptionsProxy(this.axisType),u=this.createManagedBean(new l.ChartMenuParamsFactory(c)),h=this.createManagedBean(new l.ChartMenuParamsFactory(t.getCartesianAxisThemeOverridesProxy(this.axisType))),g=this.getAxisTypeSelectParams(u,t.getCartesianAxisAppliedThemeOverridesProxy(this.axisType)),p=this.getAxisPositionSelectParams(u),m=this.getAxisTimeFormatSelectParams(u),f=this.getAxisColorInputParams(h),C=this.getAxisLineWidthSliderParams(h);this.setTemplate('
\n \n \n \n \n \n \n \n
',[o.AgGroupComponentSelector,s.AgSelectSelector,a.ColorPickerSelector,r.AgSliderSelector],{axisGroup:d,axisTypeSelect:g??void 0,axisPositionSelect:p??void 0,axisTimeFormatSelect:m??void 0,axisColorInput:f,axisLineWidthSlider:C}),i(this.axisGroup),this.axisTypeSelect.setDisplayed(!!g.options?.length),p||this.removeTemplateComponent(this.axisPositionSelect);const v=()=>{const e="time"===c.getValue("type");(0,s._setDisplayed)(this.axisTimeFormatSelect.getGui(),e)};m?(v(),this.addManagedEventListeners({chartOptionsChanged:()=>{v()}})):this.removeTemplateComponent(this.axisTimeFormatSelect),this.initGridLines(h),this.initAxisTicks(h),this.initAxisLabels(h);this.addManagedListeners(this.chartController,{chartUpdated:()=>{for(const e of this.updateFuncs)e()},chartModelUpdate:()=>setTimeout(()=>{this.isAlive()&&(this.refreshAxisTypeSelect(u),v())})})}getAxisTypeSelectParams(e,t){const i=e.getChartOptions(),s=this.getAxisTypeSelectOptions(),o=e.getDefaultSelectParams("type","axisType",s);return o.onValueChange=e=>{const s=i.getValue("type");if(e===s)return;const o=t.getValue("*"),r="time"===e,n="time"===s!==r?r?"%d %B %Y":void 0:null;void 0===n&&i.clearValue?.("label","format"),this.chartOptionsService.setCartesianCategoryAxisType(this.axisType,e),null!=n&&i.setValue("label.format",n),t.setValue("*",o)},o}refreshAxisTypeSelect(e){const t=this.getAxisTypeSelectOptions(),i=!!t.length;this.axisTypeSelect.setDisplayed(i),i&&this.axisTypeSelect.clearOptions().addOptions(t).setValue(e.getChartOptions().getValue("type"))}getAxisTypeSelectOptions(){const e=this.chartController,t=e.getChartType();return["heatmap","histogram","boxPlot","rangeBar","scatter","bubble"].includes(t)||e.isGrouping()||!this.isCategoryAxis()||e.isCategorySeriesSwitched()||!(()=>{const t=e.getChartData()[0];return!!t&&e.getSelectedDimensions().every(e=>!isNaN(parseFloat(t[e.colId])))})()?[]:["category","number","time"].map(e=>({value:e,text:this.translate(e)}))}isCategoryAxis(){const e="horizontal"===this.chartOptionsSeriesProxy.getValue("direction");return e&&"yAxis"===this.axisType||!e&&"xAxis"===this.axisType}getAxisPositionSelectParams(e){const t=((e,t)=>"heatmap"===e?null:"xAxis"===t?[{value:"top",text:this.translate("top")},{value:"bottom",text:this.translate("bottom")}]:"yAxis"===t?[{value:"left",text:this.translate("left")},{value:"right",text:this.translate("right")}]:void 0)(this.chartController.getChartType(),this.axisType);return t?e.getDefaultSelectParams("position","position",t):null}getAxisTimeFormatSelectParams(e){if(!this.isCategoryAxis())return null;const t=[{value:"%d/%m/%Y",text:this.translate("timeFormatSlashesDDMMYYYY")},{value:"%m/%d/%Y",text:this.translate("timeFormatSlashesMMDDYYYY")},{value:"%d/%m/%y",text:this.translate("timeFormatSlashesDDMMYY")},{value:"%m/%d/%y",text:this.translate("timeFormatSlashesMMDDYY")},{value:"%d.%e.%y",text:this.translate("timeFormatDotsDDMYY")},{value:"%e.%d.%y",text:this.translate("timeFormatDotsMDDYY")},{value:"%Y-%m-%d",text:this.translate("timeFormatDashesYYYYMMDD")},{value:"%d %B %Y",text:this.translate("timeFormatSpacesDDMMMMYYYY")},{value:"%H:%M:%S",text:this.translate("timeFormatHHMMSS")},{value:"%I:%M:%S %p",text:this.translate("timeFormatHHMMSSAmPm")}];return e.getDefaultSelectParams("label.format","timeFormat",t)}getAxisColorInputParams(e){return e.getDefaultColorPickerParams("line.stroke")}getAxisLineWidthSliderParams(e){const t=e.getChartOptions(),i=e.getDefaultSliderParamsWithoutValueParams((t.getValue("line.enabled")?t.getValue("line.width"):null)??0,"thickness",10);return i.onValueChange=e=>{var i;i=0===e?null:e,t.setValues([{expression:"line.enabled",value:null!=i},{expression:"line.width",value:i??0}])},i}initGridLines(e){if("heatmap"===this.chartController.getChartType())return;const t=this.createBean(new u.GridLinePanel(e));this.axisGroup.addItem(t),this.activePanels.push(t)}initAxisTicks(e){if(!this.hasConfigurableAxisTicks())return;const t=this.createBean(new c.AxisTicksPanel(e));this.axisGroup.addItem(t),this.activePanels.push(t);const i=()=>t.setTickSizeSliderDisplayed(this.isGroupedCategoryAxis());this.updateFuncs.push(i),i()}hasConfigurableAxisTicks(){switch(this.chartController.getChartType()){case"radarLine":case"radarArea":case"rangeBar":case"boxPlot":case"waterfall":return!1;default:return!0}}initAxisLabels(e){const t={name:this.translate("labels"),enabled:!0,suppressEnabledCheckbox:!0,chartMenuParamsFactory:e,keyMapper:e=>`label.${e}`},i=this.createBean(new d.FontPanel(t));this.axisGroup.addItem(i),this.activePanels.push(i),this.addAdditionalLabelComps(i,e)}addAdditionalLabelComps(e,t){this.addLabelPadding(e,t);const i=this.createRotationWidget("labelRotation",t),s=this.initLabelRotation(i,t);e.addItem(s),e.addItem(i)}initLabelRotation(e,t){const i=t.getChartOptions(),o=()=>i.getValue("label.rotation"),r="number"!=typeof o()&&i.getValue("label.autoRotate"),n=this.createBean(new s.AgCheckbox({label:this.translate("autoRotate"),value:r,onValueChange:t=>{t&&(this.prevRotation=o()),i.setValues([{expression:"label.autoRotate",value:t},{expression:"label.rotation",value:t?void 0:this.prevRotation}]),e.setDisplayed(!t)}}));e.setDisplayed(!r);const a=()=>n.setDisplayed(this.isGroupedCategoryAxis());return this.updateFuncs.push(a),a(),n}createRotationWidget(e,t){const i=t.getChartOptions(),s=()=>i.getValue("label.rotation"),o=String.fromCharCode(176),r=`${this.chartTranslation.translate(e)} ${o}`,a=new n.AgAngleSelect({label:r,labelWidth:"flex",value:s()??0,onValueChange:e=>i.setValue("label.rotation",e)});return this.updateFuncs.push(()=>{a.setValue(s()??0)}),this.createBean(a)}isGroupedCategoryAxis(){return"grouped-category"!==this.chartOptionsService.getCartesianAxisOptionsProxy(this.axisType).getValue("type")||!this.isCategoryAxis()}addLabelPadding(e,t){const i=this.createBean(new r.AgSlider(t.getDefaultSliderParams("label.spacing","padding",30)));e.addItem(i)}translate(e){return this.chartTranslation.translate(e)}removeTemplateComponent(e){(0,s._removeFromParent)(e.getGui()),this.destroyBean(e)}destroyActivePanels(){for(const e of this.activePanels)(0,s._removeFromParent)(e.getGui()),this.destroyBean(e)}destroy(){this.destroyActivePanels(),super.destroy()}}t.CartesianAxisPanel=h},24513:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.GridLinePanel=void 0;const s=i(76624),o=i(61994),r=i(76917),n=i(22076);class a extends s.Component{wireBeans(e){this.chartTranslation=e.chartTranslation}constructor(e){super(),this.chartMenuUtils=e,this.chartOptions=e.getChartOptions()}postConstruct(){const e=this.chartMenuUtils.addEnableParams("gridLine.enabled",{cssIdentifier:"charts-format-sub-level",direction:"vertical",suppressOpenCloseIcons:!0,title:this.chartTranslation.translate("gridLines"),suppressEnabledCheckbox:!0,useToggle:!0}),t=this.getGridLineColorPickerParams("color"),i=this.getGridLineWidthSliderParams("thickness"),s=this.getGridLineDashSliderParams("lineDash");this.setTemplate('
\n \n \n \n \n \n
',[o.AgGroupComponentSelector,n.ColorPickerSelector,r.AgSliderSelector],{gridLineGroup:e,gridLineColorPicker:t,gridLineWidthSlider:i,gridLineLineDashSlider:s})}getGridLineColorPickerParams(e){return this.chartMenuUtils.getDefaultColorPickerParams("gridLine.style",e,{formatInputValue:e=>e?.[0]?.stroke,parseInputValue:e=>{const t=this.chartOptions.getValue("gridLine.style")??[];return 0===t.length?[{stroke:e,lineDash:[]}]:[{...t[0],stroke:e}]}})}getGridLineWidthSliderParams(e){return this.chartMenuUtils.getDefaultSliderParams("gridLine.width",e,10)}getGridLineDashSliderParams(e){const t=this.chartOptions.getValue("gridLine.style"),i=t?.[0]?.lineDash?.[0],s=this.chartMenuUtils.getDefaultSliderParamsWithoutValueParams(i??0,e,30);return s.onValueChange=e=>{const t=this.chartOptions.getValue("gridLine.style.0.stroke");this.chartOptions.setValue("gridLine.style",[{lineDash:[e],stroke:t}])},s}}t.GridLinePanel=a},80956:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.PolarAxisPanel=void 0;const s=i(76624),o=i(61994),r=i(76917),n=i(22076),a=i(54237),l=i(87730);class d extends s.Component{wireBeans(e){this.chartTranslation=e.chartTranslation}constructor(e){super(),this.options=e,this.axisGroup=s.RefPlaceholder}postConstruct(){const{isExpandedOnInit:e,chartAxisMenuParamsFactory:t,registerGroupComponent:i}=this.options,s={cssIdentifier:"charts-format-top-level",direction:"vertical",title:this.translate("polarAxis"),expanded:e,suppressEnabledCheckbox:!0},a=t.getDefaultColorPickerParams("line.stroke"),l=t.getDefaultSliderParams("line.width","thickness",10);this.setTemplate('
\n \n \n \n \n
',[o.AgGroupComponentSelector,n.ColorPickerSelector,r.AgSliderSelector],{axisGroup:s,axisColorInput:a,axisLineWidthSlider:l}),i(this.axisGroup),this.initAxis(),this.initAxisLabels(),this.initRadiusAxis()}initAxis(){const e=this.options.chartController.getChartType();if(["radarLine","radarArea"].includes(e)){const e=[{value:"circle",text:this.translate("circle")},{value:"polygon",text:this.translate("polygon")}];this.axisGroup.addItem(this.createSelect({labelKey:"shape",options:e,property:"shape"}))}"pie"!==e&&this.axisGroup.addItem(this.createSlider({labelKey:"innerRadius",defaultMaxValue:1,property:"innerRadiusRatio"}))}initAxisLabels(){const e={name:this.translate("labels"),enabled:!0,suppressEnabledCheckbox:!0,chartMenuParamsFactory:this.options.chartAxisMenuParamsFactory,keyMapper:e=>`label.${e}`},t=this.createManagedBean(new l.FontPanel(e)),i=this.createOrientationWidget();t.addItem(i),this.axisGroup.addItem(t)}createOrientationWidget(){const e=[{value:"fixed",text:this.translate("fixed")},{value:"parallel",text:this.translate("parallel")},{value:"perpendicular",text:this.translate("perpendicular")}];return this.createSelect({labelKey:"orientation",options:e,property:"label.orientation"})}initRadiusAxis(){const e=(0,a.getSeriesType)(this.options.chartController.getChartType());if(!(0,a.isRadial)(e))return;const t=[this.createSlider({labelKey:"groupPadding",defaultMaxValue:1,property:"paddingInner"}),this.createSlider({labelKey:"seriesPadding",defaultMaxValue:1,property:"groupPaddingInner"})],i=this.createManagedBean(new o.AgGroupComponent({cssIdentifier:"charts-format-sub-level",direction:"vertical",suppressOpenCloseIcons:!0,enabled:!0,suppressEnabledCheckbox:!0,title:this.translate("padding"),items:t})).hideEnabledCheckbox(!0).hideOpenCloseIcons(!0);this.axisGroup.addItem(i)}createSlider(e){const{labelKey:t,defaultMaxValue:i,step:s=.05,property:o}=e,n=this.options.chartAxisMenuParamsFactory.getDefaultSliderParams(o,t,i);return n.step=s,this.createManagedBean(new r.AgSlider(n))}createSelect(e){const{labelKey:t,options:i,property:o}=e;return this.createManagedBean(new s.AgSelect(this.options.chartAxisMenuParamsFactory.getDefaultSelectParams(o,t,i)))}translate(e){return this.chartTranslation.translate(e)}}t.PolarAxisPanel=d},74742:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.BackgroundPanel=void 0;const s=i(76624),o=i(61994),r=i(22076);class n extends s.Component{wireBeans(e){this.chartTranslation=e.chartTranslation}constructor(e){super(),this.chartMenuUtils=e}postConstruct(){const e=this.chartMenuUtils.addEnableParams("background.visible",{cssIdentifier:"charts-format-sub-level",direction:"vertical",suppressOpenCloseIcons:!0,title:this.chartTranslation.translate("background"),suppressEnabledCheckbox:!0,useToggle:!0}),t=this.chartMenuUtils.getDefaultColorPickerParams("background.fill");this.setTemplate('
\n \n \n \n
',[o.AgGroupComponentSelector,r.ColorPickerSelector],{chartBackgroundGroup:e,colorPicker:t})}}t.BackgroundPanel=n},63628:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ChartPanel=void 0;const s=i(76624),o=i(61994),r=i(74742),n=i(2567);class a extends s.Component{wireBeans(e){this.chartTranslation=e.chartTranslation}constructor(e){super(),this.options=e,this.chartGroup=s.RefPlaceholder}postConstruct(){const{chartController:e,chartMenuParamsFactory:t,isExpandedOnInit:i,registerGroupComponent:s}=this.options,a={cssIdentifier:"charts-format-top-level",direction:"vertical",title:this.chartTranslation.translate("chartStyle"),expanded:i,suppressEnabledCheckbox:!0,items:[this.createManagedBean(new n.PaddingPanel(t,e)),this.createManagedBean(new r.BackgroundPanel(t))]};this.setTemplate('
\n \n
',[o.AgGroupComponentSelector],{chartGroup:a}),s(this.chartGroup)}}t.ChartPanel=a},2567:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.PaddingPanel=void 0;const s=i(76624),o=i(61994),r=i(76917);class n extends s.Component{wireBeans(e){this.chartTranslation=e.chartTranslation}constructor(e,t){super(),this.chartMenuUtils=e,this.chartController=t,this.paddingTopSlider=s.RefPlaceholder}postConstruct(){const e={cssIdentifier:"charts-format-sub-level",direction:"vertical",suppressOpenCloseIcons:!0,title:this.chartTranslation.translate("padding"),suppressEnabledCheckbox:!0},t=e=>this.chartMenuUtils.getDefaultSliderParams("padding."+e,e,200);this.setTemplate('
\n \n \n \n \n \n \n
',[o.AgGroupComponentSelector,r.AgSliderSelector],{chartPaddingGroup:e,paddingTopSlider:t("top"),paddingRightSlider:t("right"),paddingBottomSlider:t("bottom"),paddingLeftSlider:t("left")}),this.addManagedEventListeners({chartOptionsChanged:e=>{this.updateTopPadding(e.chartOptions)}})}updateTopPadding(e){const t=[...this.chartController.getChartSeriesTypes(),"common"].map(t=>e?.[t]?.padding?.top).find(e=>null!=e);null!=t&&this.paddingTopSlider.setValue(`${t}`)}}t.PaddingPanel=n},87730:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.FontPanel=void 0;const s=i(76624),o=i(61994),r=i(22076);class n extends s.Component{wireBeans(e){this.chartTranslation=e.chartTranslation}constructor(e){super(),this.params=e,this.fontGroup=s.RefPlaceholder,this.activeComps=[],this.chartOptions=e.chartMenuParamsFactory.getChartOptions()}postConstruct(){const{cssIdentifier:e="charts-format-sub-level",name:t,enabled:i,onEnableChange:n,suppressEnabledCheckbox:a,chartMenuParamsFactory:l,keyMapper:d}=this.params,c={cssIdentifier:e,direction:"vertical",suppressOpenCloseIcons:!0,title:t,enabled:i,suppressEnabledCheckbox:!0,onEnableChange:e=>{n&&n(e)},useToggle:!a};this.setTemplate('
\n \n \n \n
\n \n \n
\n
\n
',[o.AgGroupComponentSelector,s.AgSelectSelector,r.ColorPickerSelector],{fontGroup:c,familySelect:this.getFamilySelectParams(),weightStyleSelect:this.getWeightStyleSelectParams(),sizeSelect:this.getSizeSelectParams(),colorPicker:l.getDefaultColorPickerParams(d("color"))}),this.toggleCss("ag-font-panel-no-header",!t)}addItem(e,t){t?this.fontGroup.prependItem(e):this.fontGroup.addItem(e),this.activeComps.push(e)}setEnabled(e){this.fontGroup.setEnabled(e)}getFamilySelectParams(){const e=["Arial, sans-serif","Aria Black, sans-serif","Book Antiqua, serif","Charcoal, sans-serif","Comic Sans MS, cursive","Courier, monospace","Courier New, monospace","Gadget, sans-serif","Geneva, sans-serif","Helvetica, sans-serif","Impact, sans-serif","Lucida Console, monospace","Lucida Grande, sans-serif","Lucida Sans Unicode, sans-serif","Monaco, monospace","Palatino Linotype, serif","Palatino, serif","Times New Roman, serif","Times, serif","Verdana, sans-serif"],t=this.getInitialFontValue("fontFamily");let i=e[0];if(t){const o=e.map(e=>e.toLowerCase()).indexOf(t.toLowerCase());if(o>=0)i=e[o];else{const o=(s=t)[0].toUpperCase()+s.substring(1).toLowerCase();e.push(o),i=o}}var s;const o=e.sort().map(e=>({value:e,text:e}));return this.params.chartMenuParamsFactory.getDefaultSelectParamsWithoutValueParams("font",o,`${i}`,e=>this.setFont({fontFamily:e}))}getSizeSelectParams(){const e=[8,10,12,14,16,18,20,22,24,26,28,30,32,34,36],t=this.getInitialFontValue("fontSize");e.includes(t)||e.push(t);const i=e.sort((e,t)=>e-t).map(e=>({value:`${e}`,text:`${e}`}));return this.params.chartMenuParamsFactory.getDefaultSelectParamsWithoutValueParams("size",i,`${t}`,e=>this.setFont({fontSize:parseInt(e,10)}))}getWeightStyleSelectParams(){const e=this.getInitialFontValue("fontWeight")??"normal",t=this.getInitialFontValue("fontStyle")??"normal",i=[{name:"normal",weight:"normal",style:"normal"},{name:"bold",weight:"bold",style:"normal"},{name:"italic",weight:"normal",style:"italic"},{name:"boldItalic",weight:"bold",style:"italic"}];let s=i.find(i=>i.weight===e&&i.style===t);s||(s={name:"predefined",weight:e,style:t},i.unshift(s));const o=i.map(e=>({value:e.name,text:this.chartTranslation.translate(e.name)}));return this.params.chartMenuParamsFactory.getDefaultSelectParamsWithoutValueParams("weight",o,s.name,e=>{const t=i.find(t=>t.name===e);this.setFont({fontWeight:t.weight,fontStyle:t.style})})}destroyActiveComps(){for(const e of this.activeComps)(0,s._removeFromParent)(e.getGui()),this.destroyBean(e)}destroy(){this.destroyActiveComps(),super.destroy()}setFont(e){const{keyMapper:t}=this.params;for(const i of Object.keys(e)){const s=e[i];s&&this.chartOptions.setValue(t(i),s)}}getInitialFontValue(e){const{keyMapper:t}=this.params;return this.chartOptions.getValue(t(e))}}t.FontPanel=n},23160:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.FormatPanel=void 0;const s=i(76624),o=i(54237),r=i(11299),n=i(65002),a=i(80956),l=i(63628),d=i(48693),c=i(93316),u=i(42496),h=i(85272),g={groups:[{type:"chart"},{type:"titles"},{type:"legend"},{type:"series"},{type:"axis"}]},p=["axis","horizontalAxis","verticalAxis"];class m extends s.Component{constructor(e){super('
'),this.chartMenuContext=e}postConstruct(){this.groupExpansionFeature=this.createManagedBean(new d.GroupExpansionFeature(this.getGui())),this.chartPanelFeature=this.createManagedBean(new r.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:i,isOpen:r=!1})=>{if(!this.isGroupPanelShownInSeries(i,e))return;r&&(t&&(0,s._warn)(145,{group:i}),t=!0);const d={...this.chartMenuContext,isExpandedOnInit:r,seriesType:e,registerGroupComponent:e=>this.groupExpansionFeature.addGroupComponent(e)};switch(i){case"chart":this.chartPanelFeature.addComponent(new l.ChartPanel(d));break;case"titles":this.chartPanelFeature.addComponent(new h.TitlesPanel(d));break;case"legend":this.chartPanelFeature.addComponent(new c.LegendPanel(d,this.chartMenuContext));break;case"axis":(0,o.isPolar)(e)?this.chartPanelFeature.addComponent(new a.PolarAxisPanel(d)):(0,o.isCartesian)(e)&&(this.chartPanelFeature.addComponent(new n.CartesianAxisPanel("xAxis",d)),this.chartPanelFeature.addComponent(new n.CartesianAxisPanel("yAxis",d)));break;case"horizontalAxis":this.chartPanelFeature.addComponent(new n.CartesianAxisPanel("xAxis",d));break;case"verticalAxis":this.chartPanelFeature.addComponent(new n.CartesianAxisPanel("yAxis",d));break;case"series":this.chartPanelFeature.addComponent(new u.SeriesPanel(d));break;default:(0,s._warn)(147,{group:i})}})}getFormatPanelDef(){const e=this.gos.get("chartToolPanelsDef")?.formatPanel;return e||g}isGroupPanelShownInSeries(e,t){const i=["chart","titles","legend","series"].includes(e)||(0,o.isCartesian)(t)&&p.includes(e)||(0,o.isPolar)(t)&&"axis"===e,s=(0,o.isFunnel)(t)&&"legend"===e||(0,o.isFunnel)(t)&&p.includes(e);return i&&!s}}t.FormatPanel=m},48693:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.GroupExpansionFeature=void 0;const s=i(76624);class o extends s.BeanStub{constructor(e){super(),this.groupContainer=e,this.id=0,this.groupComponents=new Map}addGroupComponent(e){const t=this.id++;this.groupComponents.set(t,e),e.isExpanded()&&(this.expandedGroupComponent=t),e.onExpandedChange(i=>{if(i){const i=this.expandedGroupComponent;if(this.expandedGroupComponent=t,null!=i){const t=e.getGui(),s=t.offsetTop-this.groupContainer.parentElement.scrollTop;this.groupComponents.get(i)?.toggleGroupExpand(!1,!0);let o=t.offsetTop-s;o<0&&(o=0),o!==this.groupContainer.parentElement.scrollTop&&(this.groupContainer.parentElement.scrollTop=o)}}else this.expandedGroupComponent=void 0})}destroy(){this.groupComponents.clear(),super.destroy()}}t.GroupExpansionFeature=o},93316:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.LegendPanel=void 0;const s=i(76624),o=i(61994),r=i(76917),n=i(87730);class a extends s.Component{wireBeans(e){this.chartTranslation=e.chartTranslation}constructor(e,t){super(),this.options=e,this.legendGroup=s.RefPlaceholder,this.enabledGroup=s.RefPlaceholder,this.isGradient=["treemap","sunburst","heatmap"].includes(e.seriesType),this.key=this.isGradient?"gradientLegend":"legend",this.chartController=t.chartController}postConstruct(){const{chartMenuParamsFactory:e,isExpandedOnInit:t,registerGroupComponent:i}=this.options,r=this.createManagedBean(new s.AgSelect(e.getDefaultSelectParams(`${this.key}.position`,"position",["top","right","bottom","left"].map(e=>({value:e,text:this.chartTranslation.translate(e)})))));this.enabledGroup=this.createManagedBean(new o.AgGroupComponent(e.addEnableParams(`${this.key}.enabled`,{cssIdentifier:"charts-format-sub-level",direction:"vertical",suppressOpenCloseIcons:!0,title:this.chartTranslation.translate("legendEnabled"),suppressEnabledCheckbox:!0,useToggle:!0,items:[this.createLabelPanel(e),r,...this.getItems(e)]})));const n={cssIdentifier:"charts-format-top-level",direction:"vertical",title:this.chartTranslation.translate("legend"),suppressEnabledCheckbox:!0,expanded:t,items:[this.enabledGroup]};this.setTemplate('
\n \n \n
',[o.AgGroupComponentSelector],{legendGroup:n}),i(this.legendGroup);const a=this.updateLegendEnabledState.bind(this);this.addManagedListeners(this.chartController,{chartModelUpdate:a,chartApiUpdate:a})}updateLegendEnabledState(){const{valueCols:e}=this.chartController.getColStateForMenu();this.enabledGroup.setEnabled(e.filter(e=>e.selected).length>1)}getItems(e){const t=(t,i,s)=>this.createManagedBean(new r.AgSlider(e.getDefaultSliderParams(`${this.key}.${t}`,i,s)));return this.isGradient?[this.createManagedBean(new s.AgCheckbox(e.addValueParams("gradientLegend.reverseOrder",{label:this.chartTranslation.translate("reverseDirection"),labelWidth:"flex"}))),t("gradient.thickness","thickness",40),t("gradient.preferredLength","preferredLength",300),t("spacing","spacing",200)]:[t("spacing","spacing",200),t("item.marker.size","markerSize",40),t("item.marker.strokeWidth","markerStroke",10),t("item.marker.padding","itemSpacing",20),t("item.paddingX","layoutHorizontalSpacing",50),t("item.paddingY","layoutVerticalSpacing",50)]}createLabelPanel(e){const t=this.isGradient?"gradientLegend.scale.label":"legend.item.label",i={enabled:!0,suppressEnabledCheckbox:!0,chartMenuParamsFactory:e,keyMapper:e=>`${t}.${e}`,cssIdentifier:"charts-format-sub-level-no-header"};return this.createManagedBean(new n.FontPanel(i))}}t.LegendPanel=a},76279:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.CalloutPanel=void 0;const s=i(76624),o=i(61994),r=i(76917);class n extends s.Component{wireBeans(e){this.chartTranslation=e.chartTranslation}constructor(e){super(),this.chartMenuUtils=e}postConstruct(){const e={cssIdentifier:"charts-format-sub-level",direction:"vertical",title:this.chartTranslation.translate("callout"),enabled:!0,suppressOpenCloseIcons:!0,suppressEnabledCheckbox:!0};this.setTemplate('
\n \n \n \n \n \n
',[o.AgGroupComponentSelector,r.AgSliderSelector],{calloutGroup:e,calloutLengthSlider:this.chartMenuUtils.getDefaultSliderParams("calloutLine.length","length",40),calloutStrokeWidthSlider:this.chartMenuUtils.getDefaultSliderParams("calloutLine.strokeWidth","strokeWidth",10),labelOffsetSlider:this.chartMenuUtils.getDefaultSliderParams("calloutLabel.offset","offset",30)})}}t.CalloutPanel=n},32948:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.CapsPanel=void 0;const s=i(76624),o=i(61994),r=i(76917);class n extends s.Component{wireBeans(e){this.chartTranslation=e.chartTranslation}constructor(e){super(),this.chartMenuUtils=e}postConstruct(){const e={cssIdentifier:"charts-format-sub-level",direction:"vertical",title:this.chartTranslation.translate("cap"),enabled:!0,suppressOpenCloseIcons:!0,suppressEnabledCheckbox:!0},t=this.chartMenuUtils.getDefaultSliderParams("cap.lengthRatio","capLengthRatio",1);t.step=.05,this.setTemplate('
\n \n \n \n
',[o.AgGroupComponentSelector,r.AgSliderSelector],{capsGroup:e,capLengthRatioSlider:t})}}t.CapsPanel=n},71428:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ConnectorLinePanel=void 0;const s=i(76624),o=i(61994),r=i(76917),n=i(22076);class a extends s.Component{wireBeans(e){this.chartTranslation=e.chartTranslation}constructor(e){super(),this.chartMenuUtils=e}postConstruct(){const e={cssIdentifier:"charts-format-sub-level",direction:"vertical",title:this.chartTranslation.translate("connectorLine"),enabled:!0,suppressOpenCloseIcons:!0,suppressEnabledCheckbox:!0};this.setTemplate('
\n \n \n \n \n \n \n
',[o.AgGroupComponentSelector,n.ColorPickerSelector,r.AgSliderSelector],{lineGroup:e,lineColorPicker:this.chartMenuUtils.getDefaultColorPickerParams("line.stroke"),lineStrokeWidthSlider:this.getSliderParams("strokeWidth",10,"line.strokeWidth"),lineDashSlider:this.getSliderParams("lineDash",30,"line.lineDash",1,!0),lineOpacitySlider:this.getSliderParams("strokeOpacity",1,"line.strokeOpacity",.05)})}getSliderParams(e,t,i,s=1,o=!1){const r=this.chartMenuUtils.getDefaultSliderParams(i,e,t,o);return r.step=s,r}}t.ConnectorLinePanel=a},61902:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.MarkersPanel=void 0;const s=i(76624),o=i(61994),r=i(76917),n=i(51307);class a extends s.Component{wireBeans(e){this.chartTranslation=e.chartTranslation}constructor(e){super(),this.chartMenuUtils=e}postConstruct(){const e=this.chartMenuUtils.addEnableParams("marker.enabled",{cssIdentifier:"charts-format-sub-level",direction:"vertical",title:this.chartTranslation.translate("markers"),suppressEnabledCheckbox:!0,useToggle:!0,suppressOpenCloseIcons:!0});this.setTemplate('
\n \n \n \n \n \n
',[o.AgGroupComponentSelector,s.AgSelectSelector,r.AgSliderSelector],{seriesMarkersGroup:e,seriesMarkerShapeSelect:this.chartMenuUtils.getDefaultSelectParams("marker.shape","shape",(0,n.getShapeSelectOptions)(this.chartTranslation)),seriesMarkerSizeSlider:this.chartMenuUtils.getDefaultSliderParams("marker.size","size",60),seriesMarkerStrokeWidthSlider:this.chartMenuUtils.getDefaultSliderParams("marker.strokeWidth","strokeWidth",10)})}}t.MarkersPanel=a},41730:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SeriesItemsPanel=void 0;const s=i(76624),o=i(61994),r=i(76917),n=i(87730);class a extends s.Component{wireBeans(e){this.chartTranslation=e.chartTranslation}constructor(e){super(),this.chartMenuUtils=e,this.seriesItemsGroup=s.RefPlaceholder,this.activePanels=[]}postConstruct(){const e={cssIdentifier:"charts-format-sub-level",direction:"vertical",title:this.chartTranslation.translate("seriesItems"),enabled:!0,suppressOpenCloseIcons:!0,suppressEnabledCheckbox:!0};this.setTemplate('
\n \n \n \n
',[o.AgGroupComponentSelector,s.AgSelectSelector],{seriesItemsGroup:e,seriesItemSelect:this.getSeriesItemsParams()}),this.initSeriesControls()}getSeriesItemsParams(){const e=[{value:"positive",text:this.chartTranslation.translate("seriesItemPositive")},{value:"negative",text:this.chartTranslation.translate("seriesItemNegative")}];return this.chartMenuUtils.getDefaultSelectParamsWithoutValueParams("seriesItemType",e,"positive",e=>{this.destroyActivePanels(),this.initSeriesControls(e)})}initSeriesControls(e="positive"){this.initSlider("strokeWidth",10,`item.${e}.strokeWidth`),this.initSlider("lineDash",30,`item.${e}.lineDash`,1,!0),this.initSlider("strokeOpacity",1,`item.${e}.strokeOpacity`,.05,!1),this.initSlider("fillOpacity",1,`item.${e}.fillOpacity`,.05,!1),this.initItemLabels(e)}initSlider(e,t,i,s=1,o=!1){const n=this.chartMenuUtils.getDefaultSliderParams(i,e,t,o);n.step=s;const a=this.seriesItemsGroup.createManagedBean(new r.AgSlider(n));this.seriesItemsGroup.addItem(a),this.activePanels.push(a)}initItemLabels(e){const t=this.chartMenuUtils.getDefaultFontPanelParams(`item.${e}.label`,"seriesItemLabels"),i=this.createBean(new n.FontPanel(t));this.seriesItemsGroup.addItem(i),this.activePanels.push(i)}destroyActivePanels(){for(const e of this.activePanels)(0,s._removeFromParent)(e.getGui()),this.destroyBean(e)}destroy(){this.destroyActivePanels(),super.destroy()}}t.SeriesItemsPanel=a},42496:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SeriesPanel=void 0;const s=i(76624),o=i(61994),r=i(76917),n=i(22076),a=i(54237),l=i(83786),d=i(87730),c=i(95277),u=i(76279),h=i(32948),g=i(71428),p=i(61902),m=i(41730),f=i(51307),C=i(51919),v=i(64880),w=i(90950),b=i(20991),y="tooltips",S="strokeWidth",x="lineWidth",F="lineDash",R="lineOpacity",P="fillOpacity",M="labels",E="shadow",A="stageLabels",T="markers";class D extends s.Component{wireBeans(e){this.chartTranslation=e.chartTranslation}constructor(e){super(),this.options=e,this.seriesGroup=s.RefPlaceholder,this.activePanels=[],this.widgetFuncs={lineWidth:()=>this.initStrokeWidth(x),[S]:()=>this.initStrokeWidth("strokeWidth"),lineColor:()=>this.initLineColor(),[F]:()=>this.initLineDash(),[R]:()=>this.initOpacity("strokeOpacity"),[P]:()=>this.initOpacity("fillOpacity"),markers:()=>new p.MarkersPanel(this.chartMenuUtils),[M]:()=>this.initLabels(),sectorLabels:()=>this.initSectorLabels(),[E]:()=>new C.ShadowPanel(this.chartMenuUtils),[y]:()=>new w.TooltipPanel(this.options.chartMenuParamsFactory),bins:()=>this.initBins(),whiskers:()=>new b.WhiskersPanel(this.chartMenuUtils),caps:()=>new h.CapsPanel(this.chartMenuUtils),connectorLine:()=>new g.ConnectorLinePanel(this.chartMenuUtils),seriesItems:()=>new m.SeriesItemsPanel(this.chartMenuUtils),tileSpacing:()=>new v.TileSpacingPanel(this.chartMenuUtils),shape:()=>this.initShape(),size:()=>this.initSize("size","size"),minSize:()=>this.initSize("size","minSize"),maxSize:()=>this.initSize("maxSize","maxSize"),dropoff:()=>this.initDropOff(),stageLabels:()=>this.initStageLabels()},this.seriesWidgetMappings={bar:[y,S,F,R,P,M,E],pie:[y,S,R,P,M,"sectorLabels",E],donut:[y,S,R,P,M,"sectorLabels",E],line:[y,x,F,R,T,M],scatter:[y,"shape","size",S,M],bubble:[y,"shape","minSize","maxSize",S,M],area:[y,x,F,R,P,T,M,E],histogram:[y,"bins",S,F,R,P,M,E],"radial-column":[y,S,F,R,P,M],"radial-bar":[y,S,F,R,P,M],"radar-line":[y,S,F,R,T,M],"radar-area":[y,S,F,R,P,T,M],nightingale:[y,S,F,R,P,M],"box-plot":[y,S,F,R,P,"whiskers","caps"],"range-bar":[y,S,F,R,P,M],"range-area":[y,x,F,R,P,T,M,E],treemap:[y,"tileSpacing"],sunburst:[y],heatmap:[y,M,"lineColor",x,R],waterfall:[y,"connectorLine","seriesItems"],funnel:[y,S,F,R,P,M,"dropoff",A,E],"cone-funnel":[y,S,F,R,P,M,A],pyramid:[y,S,F,R,P,M,A,E]},this.seriesType=e.seriesType}postConstruct(){const{isExpandedOnInit:e,chartOptionsService:t,chartController:i,registerGroupComponent:s}=this.options,r={cssIdentifier:"charts-format-top-level",direction:"vertical",title:this.translate("series"),expanded:e,suppressEnabledCheckbox:!0};this.setTemplate('
\n \n \n
',[o.AgGroupComponentSelector],{seriesGroup:r}),s(this.seriesGroup),this.chartMenuUtils=this.createManagedBean(new l.ChartMenuParamsFactory(t.getSeriesOptionsProxy(()=>this.seriesType))),this.addManagedListeners(i,{chartSeriesChartTypeChanged:this.refreshWidgets.bind(this)}),this.refreshWidgets()}refreshWidgets(){const{chartController:e}=this.options;this.destroyActivePanels();e.getChartProxy().getChart().waitForUpdate().then(()=>{if(!!this.isAlive()){e.isComboChart()&&(this.updateSeriesType(),this.initSeriesSelect());for(const e of this.seriesWidgetMappings[this.seriesType]??[]){const t=this.widgetFuncs[e]();let i;if(Array.isArray(t)){const e=this.createBean(t[0]);i=e,t[1](e)}else i=this.createBean(t);this.seriesGroup.addItem(i),this.activePanels.push(i)}}}).catch(e=>(0,s._error)(105,{e:e}))}initSeriesSelect(){const e=this.createBean(new s.AgSelect(this.chartMenuUtils.getDefaultSelectParamsWithoutValueParams("seriesType",this.getSeriesSelectOptions(),`${this.seriesType}`,e=>{this.seriesType=e,this.refreshWidgets()})));this.seriesGroup.addItem(e),this.activePanels.push(e)}initLineColor(){return new n.ColorPicker(this.chartMenuUtils.getDefaultColorPickerParams("stroke","strokeColor"))}initStrokeWidth(e,t){return new r.AgSlider(this.chartMenuUtils.getDefaultSliderParams(t?`${t}.${e}`:"strokeWidth",e,10))}initLineDash(e){return new r.AgSlider(this.chartMenuUtils.getDefaultSliderParams(e?`${e}.lineDash`:"lineDash","lineDash",30,!0))}initOpacity(e,t){const i=this.chartMenuUtils.getDefaultSliderParams(t?`${t}.${e}`:e,e,1);return i.step=.05,new r.AgSlider(i)}initDropOff(){return[new c.ToggleablePanel({tag:"dropOff",cssIdentifier:"charts-format-sub-level",title:this.translate("dropOff"),suppressEnabledCheckbox:!1,chartMenuParamsFactory:this.chartMenuUtils}),e=>{for(const t of[this.initStrokeWidth("strokeWidth","dropOff"),this.initLineDash("dropOff"),this.initOpacity("strokeOpacity","dropOff"),this.initOpacity("fillOpacity","dropOff")]){const i=e.createManagedBean(t);e.addItem(i),this.activePanels.push(i)}}]}initLabels(){const e=(0,a.isPieChartSeries)(this.seriesType),t=e?"calloutLabel":"label",i=e?"calloutLabels":"labels",o=this.chartMenuUtils.getDefaultFontPanelParams(t,i);return[new d.FontPanel(o),t=>{if(e){const e=t.createManagedBean(new u.CalloutPanel(this.chartMenuUtils));t.addItem(e),this.activePanels.push(e)}if("range-bar"===this.seriesType){const e=[{value:"inside",text:this.translate("inside")},{value:"outside",text:this.translate("outside")}],i=t.createManagedBean(new s.AgSelect(this.chartMenuUtils.getDefaultSelectParams("label.placement","labelPlacement",e)));t.addItem(i),this.activePanels.push(i);const o=t.createManagedBean(new r.AgSlider(this.chartMenuUtils.getDefaultSliderParams("label.padding","padding",200)));t.addItem(o),this.activePanels.push(o)}}]}initSectorLabels(){const e=this.chartMenuUtils.getDefaultFontPanelParams("sectorLabel","sectorLabels");return[new d.FontPanel(e),e=>{const t=this.chartMenuUtils.getDefaultSliderParams("sectorLabel.positionRatio","positionRatio",1);t.step=.05;const i=e.createManagedBean(new r.AgSlider(t));e.addItem(i)}]}initStageLabels(){return new d.FontPanel(this.chartMenuUtils.getDefaultFontPanelParams("stageLabel",A))}initBins(){const e=this.chartMenuUtils.getDefaultSliderParams("binCount","histogramBinCount",20),t=this.chartMenuUtils.getChartOptions(),i=(t.getValue("bins")??t.getValue("calculatedBins",!0)).length;return e.value=`${i}`,e.maxValue=Math.max(i,20),new r.AgSlider(e)}initShape(){return new s.AgSelect(this.chartMenuUtils.getDefaultSelectParams("shape","shape",(0,f.getShapeSelectOptions)(this.chartTranslation)))}initSize(e,t){return new r.AgSlider(this.chartMenuUtils.getDefaultSliderParams(e,t,60))}getSeriesSelectOptions(){const e=this.getActiveSeriesTypes();return["area","bar","line"].filter(t=>e.includes(t)).map(e=>({value:e,text:this.translate(e)}))}updateSeriesType(){const e=this.getActiveSeriesTypes();!e.includes(this.seriesType)&&e.length>0&&(this.seriesType=e[0])}getActiveSeriesTypes(){return this.options.chartController.getActiveSeriesChartTypes().map(e=>(0,a.getSeriesType)(e.chartType))}translate(e){return this.chartTranslation.translate(e)}destroyActivePanels(){for(const e of this.activePanels)(0,s._removeFromParent)(e.getGui()),this.destroyBean(e)}destroy(){this.destroyActivePanels(),super.destroy()}}t.SeriesPanel=D},51307:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.getShapeSelectOptions=void 0,t.getShapeSelectOptions=function(e){return["square","circle","cross","diamond","plus","triangle","heart"].map(t=>({value:t,text:e.translate(t)}))}},51919:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ShadowPanel=void 0;const s=i(76624),o=i(61994),r=i(76917),n=i(22076);class a extends s.Component{wireBeans(e){this.chartTranslation=e.chartTranslation}constructor(e,t="shadow"){super(),this.chartMenuUtils=e,this.propertyKey=t}postConstruct(){const e=this.propertyKey,t=this.chartMenuUtils.addEnableParams(`${e}.enabled`,{cssIdentifier:"charts-format-sub-level",direction:"vertical",suppressOpenCloseIcons:!0,title:this.chartTranslation.translate("shadow"),suppressEnabledCheckbox:!0,useToggle:!0}),i=this.chartMenuUtils.getDefaultColorPickerParams(`${e}.color`);this.setTemplate('
\n \n \n \n \n \n \n
',[o.AgGroupComponentSelector,n.ColorPickerSelector,r.AgSliderSelector],{shadowGroup:t,shadowColorPicker:i,shadowBlurSlider:this.getSliderParams("blur",0,20),shadowXOffsetSlider:this.getSliderParams("xOffset",-10,10),shadowYOffsetSlider:this.getSliderParams("yOffset",-10,10)})}getSliderParams(e,t,i){const s=`${this.propertyKey}.${e}`,o=this.chartMenuUtils.getDefaultSliderParams(s,e,i);return o.minValue=t,o}}t.ShadowPanel=a},64880:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TileSpacingPanel=void 0;const s=i(76624),o=i(61994),r=i(76917);class n extends s.Component{wireBeans(e){this.chartTranslation=e.chartTranslation}constructor(e){super(),this.chartMenuUtils=e}postConstruct(){const e={cssIdentifier:"charts-format-sub-level",direction:"vertical",enabled:!0,suppressOpenCloseIcons:!0,suppressEnabledCheckbox:!0};this.setTemplate('
\n \n \n \n \n \n \n \n \n
',[o.AgGroupComponentSelector,r.AgSliderSelector],{groupSpacing:{...e,title:this.chartTranslation.translate("group")},tileSpacing:{...e,title:this.chartTranslation.translate("tile")},groupPaddingSlider:this.getSliderParams("padding","group.padding"),groupSpacingSlider:this.getSliderParams("spacing","group.gap"),tilePaddingSlider:this.getSliderParams("padding","tile.padding"),tileSpacingSlider:this.getSliderParams("spacing","tile.gap")})}getSliderParams(e,t){return this.chartMenuUtils.getDefaultSliderParams(t,e,10)}}t.TileSpacingPanel=n},90950:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TooltipPanel=void 0;const s=i(76624),o=i(61994);class r extends s.Component{constructor(e){super(),this.chartMenuUtils=e,this.tooltipMode=s.RefPlaceholder}postConstruct(){const{chartMenuUtils:e,beans:t}=this,i="tooltip",r=t.chartTranslation,n=e.addEnableParams(`${i}.enabled`,{cssIdentifier:"charts-format-sub-level",direction:"vertical",suppressOpenCloseIcons:!0,title:r.translate("tooltips"),suppressEnabledCheckbox:!0,useToggle:!0}),a="tooltipMode",l=["single","shared","compact"].map(e=>{return{value:e,text:r.translate(`${a}${t=e,t[0].toUpperCase()+t.substring(1)}`)};var t}),d=`${i}.mode`,c=e.getDefaultSelectParams(d,a,l);this.setTemplate('
\n \n \n \n
',[o.AgGroupComponentSelector,s.AgSelectSelector],{tooltipGroup:n,tooltipMode:c}),this.addManagedEventListeners({chartOptionsChanged:()=>{const t=e.getChartOptions().getValue(d);this.tooltipMode.setValue(t,!0)}})}}t.TooltipPanel=r},20991:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.WhiskersPanel=void 0;const s=i(76624),o=i(61994),r=i(76917),n=i(22076);class a extends s.Component{wireBeans(e){this.chartTranslation=e.chartTranslation}constructor(e){super(),this.chartMenuUtils=e}postConstruct(){const e={cssIdentifier:"charts-format-sub-level",direction:"vertical",title:this.chartTranslation.translate("whisker"),enabled:!0,suppressOpenCloseIcons:!0,suppressEnabledCheckbox:!0};this.setTemplate('
\n \n \n \n \n \n \n \n
',[o.AgGroupComponentSelector,n.ColorPickerSelector,r.AgSliderSelector],{whiskersGroup:e,whiskerColorPicker:this.chartMenuUtils.getDefaultColorPickerParams("whisker.stroke"),whiskerThicknessSlider:this.chartMenuUtils.getDefaultSliderParams("whisker.strokeWidth","strokeWidth",10),whiskerOpacitySlider:this.chartMenuUtils.getDefaultSliderParams("whisker.strokeOpacity","strokeOpacity",1),whiskerLineDashSlider:this.chartMenuUtils.getDefaultSliderParams("whisker.lineDash","lineDash",30,!0),whiskerLineDashOffsetSlider:this.chartMenuUtils.getDefaultSliderParams("whisker.lineDashOffset","lineDashOffset",30)})}}t.WhiskersPanel=a},13179:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ChartTitlePanel=void 0;const s=i(89375);class o extends s.TitlePanel{wireBeans(e){super.wireBeans(e),this.chartMenuSvc=e.chartMenuSvc}postConstruct(){this.titlePlaceholder=this.chartTranslation.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.chartMenuSvc.doesChartToolbarExist()){const t=this.chartOptions.getValue("padding.top");this.chartOptions.setValue("padding.top",e?t-20:t+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"Title"===e||0===e?.trim().length}}t.ChartTitlePanel=o},89375:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TitlePanel=void 0;const s=i(76624),o=i(76917),r=i(87730);class n extends s.Component{wireBeans(e){this.chartTranslation=e.chartTranslation}constructor(e,t,i){super("
"),this.chartMenuUtils=e,this.name=t,this.key=i,this.chartOptions=e.getChartOptions()}postConstruct(){this.initFontPanel()}hasTitle(){const e=this.chartOptions.getValue(this.key);return e?.enabled&&e.text&&e.text.length>0}initFontPanel(){const e=this.hasTitle(),t={name:this.chartTranslation.translate(this.name),enabled:e,suppressEnabledCheckbox:!1,chartMenuParamsFactory:this.chartMenuUtils,keyMapper:e=>`${this.key}.${e}`,onEnableChange:e=>this.onEnableChange(e)};this.fontPanel=this.createManagedBean(new r.FontPanel(t)),this.fontPanel.addItem(this.createBean(new s.AgInputTextField(this.getTextInputParams())),!0),this.fontPanel.addItem(this.createBean(new o.AgSlider(this.getSpacingSliderParams()))),this.getGui().appendChild(this.fontPanel.getGui())}getTextInputParams(){return this.chartMenuUtils.addValueParams(`${this.key}.text`,{label:this.chartTranslation.translate("title"),labelAlignment:"top"})}getSpacingSliderParams(){return this.chartMenuUtils.getDefaultSliderParams(`${this.key}.spacing`,"spacing",100)}onEnableChange(e){this.chartOptions.setValue(`${this.key}.enabled`,e)}}t.TitlePanel=n},85272:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TitlesPanel=void 0;const s=i(76624),o=i(61994),r=i(54237),n=i(83786),a=i(13179),l=i(89375);class d extends s.Component{wireBeans(e){this.chartTranslation=e.chartTranslation}constructor(e){super(),this.options=e,this.titleGroup=s.RefPlaceholder}postConstruct(){const{chartMenuParamsFactory:e,chartAxisMenuParamsFactory:t,chartOptionsService:i,seriesType:s,isExpandedOnInit:d=!1,registerGroupComponent:c}=this.options,u=[];if((0,r.isCartesian)(s)&&"pyramid"!==s){const e=e=>this.createManagedBean(new n.ChartMenuParamsFactory(i.getCartesianAxisThemeOverridesProxy(e)));u.push(this.createManagedBean(new l.TitlePanel(e("xAxis"),"horizontalAxisTitle","title"))),u.push(this.createManagedBean(new l.TitlePanel(e("yAxis"),"verticalAxisTitle","title")))}else(0,r.isPolar)(s)&&u.push(this.createManagedBean(new l.TitlePanel(t,"polarAxisTitle","title")));const h={cssIdentifier:"charts-format-top-level",direction:"vertical",title:this.chartTranslation.translate("chartTitles"),expanded:d,suppressEnabledCheckbox:!0,items:[this.createManagedBean(new a.ChartTitlePanel(e,"chartTitle","title")),this.createManagedBean(new l.TitlePanel(e,"chartSubtitle","subtitle")),...u]};this.setTemplate('
\n \n
',[o.AgGroupComponentSelector],{titleGroup:h}),c(this.titleGroup)}}t.TitlesPanel=d},95277:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ToggleablePanel=void 0;const s=i(76624),o=i(61994);class r extends s.Component{constructor(e){super(),this.params=e,this.toggleableGroup=s.RefPlaceholder,this.activeComps=[],this.chartOptions=e.chartMenuParamsFactory.getChartOptions()}postConstruct(){const{tag:e,cssIdentifier:t="charts-format-sub-level",title:i,suppressEnabledCheckbox:s}=this.params,r=this.params.chartMenuParamsFactory.addEnableParams(`${e}.enabled`,{cssIdentifier:t,direction:"vertical",suppressOpenCloseIcons:!0,title:i,suppressEnabledCheckbox:!0,useToggle:!s});this.setTemplate('
\n \n \n
',[o.AgGroupComponentSelector],{toggleableGroup:r}),this.toggleCss("ag-toggleable-group-panel-no-header",!i)}addItem(e,t){t?this.toggleableGroup.prependItem(e):this.toggleableGroup.addItem(e),this.activeComps.push(e)}setEnabled(e){this.toggleableGroup.setEnabled(e)}destroyActiveComps(){for(const e of this.activeComps)(0,s._removeFromParent)(e.getGui()),this.destroyBean(e)}destroy(){this.destroyActiveComps(),super.destroy()}}t.ToggleablePanel=r},26604:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ChartSettingsPanel=void 0;const s=i(76624),o=i(68987),r=i(86692);class n extends s.Component{constructor(e){super('
\n
\n
\n
\n \n
\n
\n
\n \n
\n
\n
'),this.chartController=e,this.eMiniChartsContainer=s.RefPlaceholder,this.eNavBar=s.RefPlaceholder,this.eCardSelector=s.RefPlaceholder,this.ePrevBtn=s.RefPlaceholder,this.eNextBtn=s.RefPlaceholder,this.miniChartsContainers=[],this.cardItems=[],this.activePaletteIndex=0,this.palettes=[],this.themes=[]}postConstruct(){this.resetPalettes();const e=this.gos.get("enableRtl");this.ePrevBtn.insertAdjacentElement("afterbegin",(0,s._createIconNoSpan)(e?"chartsThemeNext":"chartsThemePrevious",this.beans)),this.eNextBtn.insertAdjacentElement("afterbegin",(0,s._createIconNoSpan)(e?"chartsThemePrevious":"chartsThemeNext",this.beans)),this.addManagedElementListeners(this.ePrevBtn,{click:()=>this.setActivePalette(this.getPrev(),"left")}),this.addManagedElementListeners(this.eNextBtn,{click:()=>this.setActivePalette(this.getNext(),"right")});const t=()=>this.resetPalettes(!0);this.addManagedListeners(this.chartController,{chartTypeChanged:t,chartApiUpdate:t}),this.scrollSelectedIntoView()}scrollSelectedIntoView(){setTimeout(()=>{const e=this.miniChartsContainers.find(e=>!e.getGui().classList.contains("ag-hidden")).getGui().querySelector(".ag-selected");if(e){const t=e.offsetParent;t&&this.eMiniChartsContainer.scrollTo(0,t.offsetTop)}},250)}resetPalettes(e){const t=this.chartController.getPalettes(),i=this.gos.get("chartToolPanelsDef")?.settingsPanel?.chartGroupsDef;if((0,s._areEqual)(t,this.palettes)&&!e||this.isAnimating)return;this.palettes=t,this.themes=this.chartController.getThemeNames(),this.activePaletteIndex=this.themes.findIndex(e=>e===this.chartController.getChartThemeName()),this.cardItems=[],(0,s._clearElement)(this.eCardSelector),this.destroyMiniCharts();const{themes:n}=this;this.palettes.forEach((e,t)=>{const s=this.activePaletteIndex===t,{fills:a=[],strokes:l=[]}=e,d=n[t],c=!(0,o.isStockTheme)(d,this.beans.agChartsExports._Theme),u=this.createBean(new r.MiniChartsContainer(this.chartController,a,l,c,i));this.miniChartsContainers.push(u),this.eMiniChartsContainer.appendChild(u.getGui()),this.addCardLink(t),s?u.updateSelectedMiniChart():u.setDisplayed(!1)}),(0,s._setDisplayed)(this.eNavBar,this.palettes.length>1),(0,s._radioCssClass)(this.cardItems[this.activePaletteIndex],"ag-selected","ag-not-selected")}addCardLink(e){const t=document.createElement("div");t.classList.add("ag-chart-settings-card-item"),this.addManagedElementListeners(t,{click:()=>{this.setActivePalette(e,e=this.palettes.length&&(e=0),e}setActivePalette(e,t){if(this.isAnimating||this.activePaletteIndex===e)return;(0,s._radioCssClass)(this.cardItems[e],"ag-selected","ag-not-selected");const i=this.miniChartsContainers[this.activePaletteIndex],o=i.getGui(),r=this.miniChartsContainers[e],n=r.getGui();i.updateSelectedMiniChart(),r.updateSelectedMiniChart();const a="left"===t?-1:1,l=n.style.left=(0,s._getAbsoluteWidth)(this.getGui())*a+"px";this.activePaletteIndex=e,this.isAnimating=!0;const d="ag-animating";r.setDisplayed(!0),i.addCss(d),r.addCss(d),this.chartController.setChartThemeName(this.themes[e]),window.setTimeout(()=>{o.style.left=-parseFloat(l)+"px",n.style.left="0px"},0),window.setTimeout(()=>{this.isAnimating=!1,i.removeCss(d),r.removeCss(d),i.setDisplayed(!1)},300)}destroyMiniCharts(){(0,s._clearElement)(this.eMiniChartsContainer),this.miniChartsContainers=this.destroyBeans(this.miniChartsContainers)}destroy(){this.destroyMiniCharts(),super.destroy()}}t.ChartSettingsPanel=n},13564:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.MiniArea=t.MiniAreaClass=t.miniAreaData=void 0;const s=i(27526),o=i(69004),r=i(21408);t.miniAreaData=s.miniLineData;class n extends r.MiniChartWithAxes{constructor(e,i,s,r,n,a=t.miniAreaData,l="groupedAreaTooltip",d=!1){super(e,i,l),this.areas=(0,o.createAreaPaths)(i._Scene,this.root,a,this.size,this.padding,d),this.updateColors(s,r)}updateColors(e,t){this.areas.forEach((i,s)=>{i.fill=e[s],i.stroke=t[s],i.strokeWidth=1,i.strokeOpacity=.75,i.fillOpacity=.7})}}t.MiniAreaClass=n,t.MiniArea={chartType:"area",miniChart:n}},86249:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.MiniNormalizedArea=t.MiniNormalizedAreaClass=t.miniNormalizedAreaData=void 0;const s=i(69004),o=i(95133);t.miniNormalizedAreaData=(0,s.normalizeStackData)(o.miniStackedAreaData);class r extends o.MiniStackedAreaClass{constructor(e,i,s,o,r,n=t.miniNormalizedAreaData,a="normalizedAreaTooltip"){super(e,i,s,o,r,n,a)}}t.MiniNormalizedAreaClass=r,t.MiniNormalizedArea={chartType:"normalizedArea",miniChart:r}},95133:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.MiniStackedArea=t.MiniStackedAreaClass=t.miniStackedAreaData=void 0;const s=i(69004),o=i(13564);t.miniStackedAreaData=(0,s.stackData)(o.miniAreaData);class r extends o.MiniAreaClass{constructor(e,i,s,o,r,n=t.miniStackedAreaData,a="stackedAreaTooltip"){super(e,i,s,o,r,n,a,!0)}updateColors(e,t){this.areas.forEach((i,s)=>{i.fill=e[s],i.stroke=t[s]})}}t.MiniStackedAreaClass=r,t.MiniStackedArea={chartType:"stackedArea",miniChart:r}},40702:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.MiniBar=t.MiniBarClass=void 0;const s=i(21408);class o extends s.MiniChartWithAxes{constructor(e,t,i,s){super(e,t,"groupedBarTooltip");const{_Scene:o}=t,r=this.padding,n=this.size,a=new o.CategoryScale;a.domain=[0,1,2],a.range=[r,n-r],a.paddingInner=.3,a.paddingOuter=.3;const l=new o.LinearScale;l.domain=[0,4],l.range=[n-r,r];const d=l.convert(0),c=a.bandwidth;this.bars=[2,3,4].map((e,t)=>{const i=new o.Rect;return i.x=r,i.y=a.convert(t),i.width=d-l.convert(e),i.height=c,i.strokeWidth=0,i.crisp=!0,i}),this.updateColors(i,s),this.root.append(this.bars)}updateColors(e,t){this.bars.forEach((i,s)=>{i.fill=e[s],i.stroke=t[s]})}}t.MiniBarClass=o,t.MiniBar={chartType:"groupedBar",miniChart:o}},43245:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.MiniNormalizedBar=t.MiniNormalizedBarClass=void 0;const s=i(74161),o=[[10,10,10],[6,7,8],[2,4,6]];class r extends s.MiniStackedBarClass{constructor(e,t,i,s,r){super(e,t,i,s,r,o,[0,10],"normalizedBarTooltip")}}t.MiniNormalizedBarClass=r,t.MiniNormalizedBar={chartType:"normalizedBar",miniChart:r}},74161:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.MiniStackedBar=t.MiniStackedBarClass=t.miniStackedBarData=void 0;const s=i(76624),o=i(21408);t.miniStackedBarData=[[8,12,16],[6,9,12],[2,3,4]];class r extends o.MiniChartWithAxes{constructor(e,i,o,r,n,a=t.miniStackedBarData,l=[0,16],d="stackedBarTooltip"){super(e,i,d);const{_Scene:c}=i,u=this.size,h=this.padding,g=new c.CategoryScale;g.domain=[0,1,2],g.range=[h,u-h],g.paddingInner=.3,g.paddingOuter=.3;const p=new c.LinearScale;p.domain=l,p.range=[u-h,h];const m=p.convert(0),f=g.bandwidth;this.bars=a.map(e=>e.map((e,t)=>{const i=new c.Rect;return i.x=h,i.y=g.convert(t),i.width=m-p.convert(e),i.height=f,i.strokeWidth=0,i.crisp=!0,i})),this.updateColors(o,r),this.root.append((0,s._flatten)(this.bars))}updateColors(e,t){this.bars.forEach((i,s)=>i.forEach(i=>{i.fill=e[s],i.stroke=t[s]}))}}t.MiniStackedBarClass=r,t.MiniStackedBar={chartType:"stackedBar",miniChart:r}},11990:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.MiniColumn=t.MiniColumnClass=void 0;const s=i(69004),o=i(21408);class r extends o.MiniChartWithAxes{constructor(e,t,i,o){super(e,t,"groupedColumnTooltip"),this.columnData=[2,3,4];const{root:r,columnData:n,size:a,padding:l}=this;this.columns=(0,s.createColumnRects)({stacked:!1,root:r,data:n,size:a,padding:l,xScaleDomain:[0,1,2],yScaleDomain:[0,4],xScalePadding:.3,agChartsExports:t}),r.append(this.columns),this.updateColors(i,o)}updateColors(e,t){this.columns.forEach((i,s)=>{i.fill=e[s],i.stroke=t[s]})}}t.MiniColumnClass=r,t.MiniColumn={chartType:"groupedColumn",miniChart:r}},42115:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.MiniNormalizedColumn=t.MiniNormalizedColumnClass=t.miniNormalizedColumnData=void 0;const s=i(12397);t.miniNormalizedColumnData=[[10,10,10],[6,7,8],[2,4,6]];class o extends s.MiniStackedColumnClass{constructor(e,i,s,o,r){super(e,i,s,o,r,t.miniNormalizedColumnData,[0,10],"normalizedColumnTooltip")}}t.MiniNormalizedColumnClass=o,t.MiniNormalizedColumn={chartType:"normalizedColumn",miniChart:o}},12397:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.MiniStackedColumn=t.MiniStackedColumnClass=t.miniStackedColumnData=void 0;const s=i(76624),o=i(69004),r=i(21408);t.miniStackedColumnData=[[8,12,16],[6,9,12],[2,3,4]];class n extends r.MiniChartWithAxes{constructor(e,i,r,n,a,l=t.miniStackedColumnData,d=[0,16],c="stackedColumnTooltip"){super(e,i,c);const{root:u,size:h,padding:g}=this;this.stackedColumns=(0,o.createColumnRects)({stacked:!0,root:u,data:l,size:h,padding:g,xScaleDomain:[0,1,2],yScaleDomain:d,xScalePadding:.3,agChartsExports:i}),u.append((0,s._flatten)(this.stackedColumns)),this.updateColors(r,n)}updateColors(e,t){this.stackedColumns.forEach((i,s)=>{for(const o of i)o.fill=e[s],o.stroke=t[s]})}}t.MiniStackedColumnClass=n,t.MiniStackedColumn={chartType:"stackedColumn",miniChart:n}},90539:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.MiniAreaColumnCombo=t.MiniAreaColumnComboClass=void 0;const s=i(69004),o=i(21408);class r extends o.MiniChartWithAxes{constructor(e,t,i,o){super(e,t,"areaColumnComboTooltip"),this.columnData=[3,4.5],this.areaData=[[5,4,6,5,4]];const{root:r,columnData:n,areaData:a,size:l,padding:d,agChartsExports:{_Scene:c}}=this;this.columns=(0,s.createColumnRects)({stacked:!1,root:r,data:n,size:l,padding:d,xScaleDomain:[0,1],yScaleDomain:[0,6],xScalePadding:.5,agChartsExports:t});const u=new c.CategoryScale;u.range=[d,l-d],u.domain=[0,1,2,3,4],u.paddingInner=1,u.paddingOuter=0;const h=new c.LinearScale;h.range=[l-d,d],h.domain=[0,6];const g=[],p=h.convert(0),m=u.convert(0);a.forEach((e,t)=>{const i=g[t]||(g[t]=[]);e.forEach((e,t)=>{const s=e,o=t,r=u.convert(o),n=h.convert(s);i[t]={x:r,y:n}});const s=u.convert(e.length-1);g[t].push({x:s,y:p},{x:m,y:p})}),this.areas=g.map(e=>{const t=new c.Path;t.strokeWidth=0,t.fillOpacity=.8;const i=t.path;return e.forEach((e,t)=>i[t>0?"lineTo":"moveTo"](e.x,e.y)),t});const f=new c.Group;f.setClipRect(new c.BBox(d,d,l-2*d,l-2*d));const C=new c.Group;C.setClipRect(new c.BBox(d,d,l-2*d,l-2*d)),f.append(this.areas),C.append(this.columns),r.append(f),r.append(C),this.updateColors(i,o)}updateColors(e,t){this.areas.forEach((i,s)=>{i.fill=e[s],i.stroke=t[s]}),this.columns.forEach((i,s)=>{i.fill=e[s+1],i.stroke=t[s+1]})}}t.MiniAreaColumnComboClass=r,t.MiniAreaColumnCombo={chartType:"areaColumnCombo",miniChart:r}},56042:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.MiniColumnLineCombo=t.MiniColumnLineComboClass=void 0;const s=i(69004),o=i(21408);class r extends o.MiniChartWithAxes{constructor(e,t,i,o){super(e,t,"columnLineComboTooltip"),this.columnData=[3,4],this.lineData=[[5,4,6,5,4]];const{root:r,columnData:n,lineData:a,size:l,padding:d}=this;this.columns=(0,s.createColumnRects)({stacked:!1,root:r,data:n,size:l,padding:d,xScaleDomain:[0,1],yScaleDomain:[0,4],xScalePadding:.5,agChartsExports:t}),r.append(this.columns),this.lines=(0,s.createLinePaths)(t,r,a,l,d),this.updateColors(i,o)}updateColors(e,t){this.columns.forEach((i,s)=>{i.fill=e[s],i.stroke=t[s]}),this.lines.forEach((t,i)=>{t.stroke=e[i+2]})}}t.MiniColumnLineComboClass=r,t.MiniColumnLineCombo={chartType:"columnLineCombo",miniChart:r}},51655:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.MiniCustomCombo=t.MiniCustomComboClass=void 0;const s=i(52893),o=i(69004);class r extends s.MiniChart{constructor(e,t,i,s){super(e,t,"customComboTooltip"),this.columnData=[3,4],this.lineData=[[5,4,6,5,4]];const{root:r,columnData:n,lineData:a,size:l,padding:d,agChartsExports:{_Scene:c}}=this;this.columns=(0,o.createColumnRects)({stacked:!1,root:r,data:n,size:l,padding:d,xScaleDomain:[0,1],yScaleDomain:[0,4],xScalePadding:.5,agChartsExports:t}),r.append(this.columns),this.lines=(0,o.createLinePaths)(this.agChartsExports,r,a,l,d);const u="grey",h=new c.Line;h.x1=d,h.y1=d,h.x2=d,h.y2=l-d+3,h.stroke=u;const g=new c.Line;g.x1=d-3+1,g.y1=l-d,g.x2=l-d+1,g.y2=l-d,g.stroke=u;const p=new c.Path;this.buildPenIconPath(p),p.fill="whitesmoke",p.stroke="darkslategrey",p.strokeWidth=1,r.append([g,h,p]),this.updateColors(i,s)}updateColors(e,t){this.columns.forEach((i,s)=>{i.fill=e[s],i.stroke=t[s]}),this.lines.forEach((t,i)=>{t.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)}}t.MiniCustomComboClass=r,t.MiniCustomCombo={chartType:"customCombo",miniChart:r}},28049:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.MiniConeFunnel=t.MiniConeFunnelClass=void 0;const s=i(28250),o=[[[13,16],[10.75,11.5],[5.25,11.5],[3,16]],[[10.75,11.5],[8.875,6],[7.125,6],[5.25,11.5]],[[8.875,6],[8.875,1.5],[7.125,1.5],[7.125,6]]];class r extends s.MiniFunnelClass{constructor(e,t,i,s,r,n="coneFunnelTooltip"){super(e,t,i,s,r,n,o)}updateColors(e,t){this.shapes.forEach((i,s)=>{i.fill=e[0],i.fillOpacity=1-.2*s,i.stroke=t[0],i.strokeWidth=0})}}t.MiniConeFunnelClass=r,t.MiniConeFunnel={chartType:"coneFunnel",miniChart:r}},28250:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.MiniFunnel=t.MiniFunnelClass=void 0;const s=i(52893),o=i(69004),r=[[[13,16],[13,12],[3,12],[3,16]],[[12,11],[12,7],[4,7],[4,11]],[[10.125,6],[10.125,1.5],[5.875,1.5],[5.875,6]]];class n extends s.MiniChart{constructor(e,t,i,s,n,a="funnelTooltip",l=r){super(e,t,a),this.shapes=(0,o.createShapePaths)(t,this.root,l,this.size,this.padding),this.updateColors(i,s)}updateColors(e,t){for(const i of this.shapes)i.fill=e[0],i.stroke=t[0],i.strokeWidth=0}}t.MiniFunnelClass=n,t.MiniFunnel={chartType:"funnel",miniChart:n}},81244:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.MiniPyramid=t.MiniPyramidClass=void 0;const s=i(28250),o=[[[8,16],[10,12],[6,12]],[[10.5,11],[12.5,7],[3.5,7],[5.5,11]],[[13,6],[15.5,1.5],[.5,1.5],[3,6]]];class r extends s.MiniFunnelClass{constructor(e,t,i,s,r,n="pyramidTooltip"){super(e,t,i,s,r,n,o)}updateColors(e,t){this.shapes.forEach((i,s)=>{i.fill=e[s],i.stroke=t[s],i.strokeWidth=0})}}t.MiniPyramidClass=r,t.MiniPyramid={chartType:"pyramid",miniChart:r}},45717:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.MiniSunburst=t.MiniSunburstClass=void 0;const s=i(32220);class o extends s.MiniChartWithPolarAxes{constructor(e,t,i,s){super(e,t,"sunburstTooltip"),this.data=[[[],[]],[[],[]],[[],[]]],this.angleOffset=-Math.PI/2,this.innerRadiusRatio=0,this.showRadiusAxisLine=!1,this.showAngleAxisLines=!1;const{data:o,size:r,padding:n,angleOffset:a,innerRadiusRatio:l,agChartsExports:{_Scene:d}}=this,c=(r-2*n)/2,u=[a+0,a+2*Math.PI],h=Math.abs(u[1]-u[0]),g=[c*l,c],p=Math.abs(g[1]-g[0]);let m=0;const f=(e,t)=>{for(const i of e){const e=t+1;m=Math.max(m,e),f(i,e)}};f(o,0);const C=p/m,v=this.size/2,w=u[0];this.series=[];const b=(e,t,i,s,o)=>{if(!Array.isArray(e))return;const r=t+1;let n=i;e.forEach((e,i,a)=>{let l=o;l||(l=new d.Group,this.series.push(l));const c=g[0]+t*C,u=g[0]+r*C,h=1/a.length,p=n,m=p+s*h,f=new d.Sector;f.centerX=v,f.centerY=v,f.innerRadius=c,f.outerRadius=u,f.startAngle=p,f.endAngle=m,f.stroke=void 0,f.strokeWidth=0,f.inset=.75,n=m,l.append(f),b(e,r,p,Math.abs(m-p),l)})};b(o,0,w,h),this.root.append(this.series),this.updateColors(i,s)}updateColors(e,t){this.series.forEach((i,s)=>{for(const o of i.children())o.fill=e[s%e.length],o.stroke=t[s%t.length]})}}t.MiniSunburstClass=o,t.MiniSunburst={chartType:"sunburst",miniChart:o}},27439:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.MiniTreemap=t.MiniTreemapClass=void 0;const s=i(52893);class o extends s.MiniChart{constructor(e,t,i,s,o){super(e,t,"treemapTooltip");const{size:r,padding:n,agChartsExports:{_Scene:a}}=this,l=[[1,1],[3,2,1]],d=l.length%2==0?.3:.2,c=[n,r-n],u=l.length,h=u*(u+1)/2,g=d/(u-1),p=c[1]-c[0],m=p-d;let f=c[0];this.rects=l.reduce((e,t,i)=>{e??(e=[]);const s=m*((u-i)/h),o=t.length,r=t.reduce((e,t)=>e+t,0),n=d/(o-1||1),l=o>1?p-d:p;let C=c[0];const v=t.map(e=>{const t=new a.Rect,i=l*e/r;return t.x=f,t.y=C,t.width=s,t.height=i,t.strokeWidth=.75,t.crisp=!0,C+=i+n,t});return f+=s+g,e.push(...v),e},[]),this.updateColors(i,s,o);const C=new a.Group;C.setClipRect(new a.BBox(n,n,r-n,r-n)),C.append(this.rects),this.root.append(C)}updateColors(e,t,i){const{_Theme:s}=this.agChartsExports;this.rects.forEach((o,r)=>{o.fill=e[r%t.length],o.stroke=i?t[r%t.length]:s.resolveOperation({$ref:"backgroundColor"})})}}t.MiniTreemapClass=o,t.MiniTreemap={chartType:"treemap",miniChart:o}},85626:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.MiniHistogram=t.MiniHistogramClass=void 0;const s=i(21408);class o extends s.MiniChartWithAxes{constructor(e,t,i,s){super(e,t,"histogramTooltip");const{padding:o,size:r,agChartsExports:{_Scene:n}}=this,a=[2,5,11,13,10,6,1],l=new n.LinearScale;l.domain=[0,a.length],l.range=[o,r-o];const d=new n.LinearScale;d.domain=[0,a.reduce((e,t)=>Math.max(e,t),0)],d.range=[r-o,o];const c=d.convert(0);this.bars=a.map((e,t)=>{const i=d.convert(e),s=l.convert(t),o=l.convert(t+1),r=new n.Rect;return r.x=s,r.y=i,r.width=o-s,r.height=c-i,r.strokeWidth=1,r.strokeOpacity=.75,r.crisp=!0,r}),this.updateColors(i,s),this.root.append(this.bars)}updateColors([e],[t]){for(const i of this.bars)i.fill=e,i.stroke=t}}t.MiniHistogramClass=o,t.MiniHistogram={chartType:"histogram",miniChart:o}},76544:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const s=i(85608);s.__exportStar(i(11990),t),s.__exportStar(i(12397),t),s.__exportStar(i(42115),t),s.__exportStar(i(40702),t),s.__exportStar(i(74161),t),s.__exportStar(i(43245),t),s.__exportStar(i(30210),t),s.__exportStar(i(17716),t),s.__exportStar(i(27526),t),s.__exportStar(i(39005),t),s.__exportStar(i(68051),t),s.__exportStar(i(10434),t),s.__exportStar(i(73268),t),s.__exportStar(i(13564),t),s.__exportStar(i(95133),t),s.__exportStar(i(86249),t),s.__exportStar(i(85626),t),s.__exportStar(i(90781),t),s.__exportStar(i(59702),t),s.__exportStar(i(45520),t),s.__exportStar(i(66279),t),s.__exportStar(i(92036),t),s.__exportStar(i(94823),t),s.__exportStar(i(37049),t),s.__exportStar(i(31819),t),s.__exportStar(i(27439),t),s.__exportStar(i(45717),t),s.__exportStar(i(70795),t),s.__exportStar(i(13209),t),s.__exportStar(i(56042),t),s.__exportStar(i(90539),t),s.__exportStar(i(51655),t)},27526:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.MiniLine=t.MiniLineClass=t.miniLineData=void 0;const s=i(69004),o=i(21408);t.miniLineData=[[1,3,5],[2,6,4],[5,3,1]];class r extends o.MiniChartWithAxes{constructor(e,i,o,r,n,a=t.miniLineData,l="lineTooltip"){super(e,i,l);const{size:d,padding:c,root:u}=this;this.lines=(0,s.createLinePaths)(i,u,a,d,c),this.updateColors(o,r)}updateColors(e,t){this.lines.forEach((t,i)=>{t.stroke=e[i]})}}t.MiniLineClass=r,t.MiniLine={chartType:"line",miniChart:r}},68051:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.MiniNormalizedLine=t.MiniNormalizedLineClass=t.miniNormalizedLineData=void 0;const s=i(69004),o=i(27526),r=i(39005);t.miniNormalizedLineData=(0,s.normalizeStackData)(r.miniStackedLineData);class n extends o.MiniLineClass{constructor(e,i,s,o,r,n=t.miniNormalizedLineData,a="normalizedLineTooltip"){super(e,i,s,o,r,n,a)}}t.MiniNormalizedLineClass=n,t.MiniNormalizedLine={chartType:"normalizedLine",miniChart:n}},39005:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.MiniStackedLine=t.MiniStackedLineClass=t.miniStackedLineData=void 0;const s=i(69004),o=i(27526);t.miniStackedLineData=(0,s.stackData)(o.miniLineData);class r extends o.MiniLineClass{constructor(e,i,s,o,r,n=t.miniStackedLineData,a="stackedLineTooltip"){super(e,i,s,o,r,n,a)}}t.MiniStackedLineClass=r,t.MiniStackedLine={chartType:"stackedLine",miniChart:r}},52893:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.MiniChart=void 0;const s=i(76624);class o extends s.Component{wireBeans(e){this.chartTranslation=e.chartTranslation}constructor(e,t,i){super(),this.agChartsExports=t,this.tooltipName=i,this.size=58,this.padding=5;const{_Scene:s}=t;this.root=new s.Group;const o=new s.Scene({width:this.size,height:this.size});o.canvas.element.classList.add("ag-chart-mini-thumbnail-canvas"),o.setRoot(this.root),o.setContainer(e),this.scene=o}postConstruct(){this.scene.canvas.element.title=this.chartTranslation.translate(this.tooltipName);try{this.scene.render()}catch(e){(0,s._error)(108,{e:e})}}}t.MiniChart=o},69004:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.accumulateData=t.createPolarPaths=t.normalizeStackData=t.stackData=t.createAreaPaths=t.createLinePaths=t.createShapePaths=t.commandsToPath=t.closePathViaOrigin=t.closePathViaPreviousSeries=t.createAreaPathCommands=t.createPath=t.closePath=t.createXYPathCommands=t.createXPathCommands=t.prepareLinearScene=t.prepareXYScales=t.createColumnRects=void 0;const s=i(76624);function o(e,t,i,s){const o=[],r=[];for(const e of t)for(const[t,i]of e)o.push(t),r.push(i);const n=new e.LinearScale;n.domain=[Math.min(...o),Math.max(...o)],n.range=[s,i-s];const a=new e.LinearScale;return a.domain=[Math.min(...r),Math.max(...r)],a.range=[i-s,s],{xScale:n,yScale:a}}function r(e,t,i,s){const o=[0,t[0].length-1],r=t.reduce((e,t)=>{for(const i of t)ie[1]&&(e[1]=i);return e},[1/0,-1/0]);r[0]--,r[r.length-1]++;const n=new e.LinearScale;n.domain=o,n.range=[s,i-s];const a=new e.LinearScale;return a.domain=r,a.range=[i-s,s],{xScale:n,yScale:a}}function n(e,t,i){return e.map(e=>e.map((e,s)=>[s>0?"lineTo":"moveTo",t.convert(s),i.convert(e)]))}function a(e,t,i){return e.map(([e,s],o)=>[o>0?"lineTo":"moveTo",t.convert(e),i.convert(s)])}function l(e){const t=e[0],i=e[1],o=(0,s._last)(e);return i[1]===o[1]&&i[2]===o[2]||e.push([t[0],i[1],i[2]]),e}function d(e,t){const i=new e.Path;return t.forEach(([e,t,s])=>i.path[e](t,s)),i}function c(e,t,i){return e.map((e,o,r)=>{const n=[...i?u(r,o,t):h(e,t)].reverse().map(([e,t,i])=>["lineTo",t,i]),a=e[0],l=(0,s._last)(n);return a[1]===l[1]&&a[2]===l[2]||n.push(["lineTo",a[1],a[2]]),[...e,...n]})}function u(e,t,i){return 0===t?h(e[t],i):[...e[t-1]]}function h(e,t){return e.map(([e,i])=>[e,i,t.convert(0)])}function g(e,t){const i=d(e,t);return i.fill=void 0,i.lineCap="round",i.strokeWidth=3,i}t.createColumnRects=function(e){const{stacked:t,size:i,padding:s,xScalePadding:o,xScaleDomain:r,yScaleDomain:n,agChartsExports:{_Scene:a}}=e,l=new a.CategoryScale;l.domain=r,l.range=[s,i-s],l.paddingInner=o,l.paddingOuter=o;const d=new a.LinearScale;d.domain=n,d.range=[i-s,s];const c=(e,t,i)=>e.map((e,s)=>{const o=i.convert(e),r=new a.Rect;return r.x=t.convert(s),r.y=o,r.width=t.bandwidth,r.height=i.convert(0)-o,r.strokeWidth=0,r.crisp=!0,r});return t?e.data.map(e=>c(e,l,d)):c(e.data,l,d)},t.prepareXYScales=o,t.prepareLinearScene=r,t.createXPathCommands=n,t.createXYPathCommands=a,t.closePath=l,t.createPath=d,t.createAreaPathCommands=c,t.closePathViaPreviousSeries=u,t.closePathViaOrigin=h,t.commandsToPath=g,t.createShapePaths=function({_Scene:e},t,i,s,r){const{xScale:n,yScale:d}=o(e,i,s,r),c=i.map(e=>a(e,n,d)).map(e=>l(e)).map(t=>g(e,t)).reduce((e,t)=>e.concat(t),[]),u=new e.Group;return u.setClipRect(new e.BBox(r,r,s-2*r,s-2*r)),u.append(c),t.append(u),c},t.createLinePaths=function({_Scene:e},t,i,s,o){const{xScale:a,yScale:l}=r(e,i,s,o),d=n(i,a,l).map(t=>g(e,t)),c=new e.Group;return c.setClipRect(new e.BBox(o,o,s-2*o,s-2*o)),c.append(d),t.append(c),d},t.createAreaPaths=function(e,t,i,s,o,a=!1){const{xScale:l,yScale:u}=r(e,i,s,o),h=c(n(i,l,u),u,a),g=new e.Group;g.setClipRect(new e.BBox(o,o,s-2*o,s-2*o));const p=h.map(t=>d(e,t));return g.append(p),t.append(g),p},t.stackData=function(e){return e.map((e,t,i)=>e.map((e,s)=>i.slice(0,t+1).reduce((e,t)=>e+t[s],0)))},t.normalizeStackData=function(e){const t=e.map((t,i)=>e.reduce((e,t)=>Math.max(e,t[i]),0));return e.map(e=>e.map((e,i)=>e/t[i]*19))},t.createPolarPaths=function(e,t,i,s,o,r,n=0){const{_Scene:a}=e,l=new a.LinearScale;l.domain=[0,7],l.range=[-Math.PI,Math.PI].map(e=>e+Math.PI/2);const d=new a.LinearScale;d.domain=[0,10],d.range=[o,r];const c=[],u=s/2,h=i.map(e=>{const t=new a.Path;return t.strokeWidth=1,t.strokeOpacity=.5,t.lineCap="round",t.fill=void 0,t.fillOpacity=.8,e.forEach((e,i)=>{const s=l.convert(i),h=o+r-d.convert(e),g=h*Math.cos(s)+u,p=h*Math.sin(s)+u;if(t.path[i>0?"lineTo":"moveTo"](g,p),n>0){const e=new a.Marker({shape:"circle"});e.x=g,e.y=p,e.size=n,c.push(e)}}),t.path.closePath(),t}),g=new a.Group;return g.append([...h,...c]),t.append(g),{paths:h,markers:c}},t.accumulateData=function(e){let[t,i]=[1/0,-1/0];return{processedData:e.reduce((e,s,o)=>{const r=o>0?e[o-1]:void 0;e[o]??(e[o]=[]);const n=e[o];return s.forEach((e,s)=>{r&&(e+=r[s]),n[s]=e,n[s]i&&(i=n[s])}),e},[]),min:t,max:i}}},21408:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.MiniChartWithAxes=void 0;const s=i(52893);class o extends s.MiniChart{constructor(e,t,i){super(e,t,i),this.stroke="gray",this.axisOvershoot=3}postConstruct(){const{_Scene:e}=this.agChartsExports,t=this.size,i=this.padding,s=new e.Line;s.x1=i,s.y1=i,s.x2=i,s.y2=t-i+this.axisOvershoot,s.stroke=this.stroke;const o=new e.Line;o.x1=i-this.axisOvershoot+1,o.y1=t-i,o.x2=t-i+1,o.y2=t-i,o.stroke=this.stroke;const r=this.root;r.append(s),r.append(o),super.postConstruct()}}t.MiniChartWithAxes=o},32220:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.MiniChartWithPolarAxes=void 0;const s=i(52893);class o extends s.MiniChart{constructor(e,t,i){super(e,t,i),this.stroke="gray",this.showRadiusAxisLine=!0,this.showAngleAxisLines=!0}postConstruct(){const{_Scene:e}=this.agChartsExports,t=this.size,i=this.padding,s=(t-2*i)/2,o=this.showAngleAxisLines?[s,.8*s,.6*s,.4*s]:[],r=new e.Line;r.x1=t/2,r.y1=i,r.x2=t/2,r.y2=t-i-s-o[o.length-1],r.stroke=this.stroke,r.strokeOpacity=.5,r.fill=void 0,r.visible=this.showRadiusAxisLine;const n=i+s;this.gridLines=o.map((t,i)=>{const s=new e.Path;return s.path.arc(n,n,t,0,2*Math.PI),s.strokeWidth=1,s.stroke=this.stroke,s.strokeOpacity=0===i?.5:.2,s.fill=void 0,s});const a=this.root;a.append(r),this.gridLines.length>0&&a.append(this.gridLines),super.postConstruct()}}t.MiniChartWithPolarAxes=o},17716:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.MiniDonut=t.MiniDonutClass=void 0;const s=i(52893);class o extends s.MiniChart{constructor(e,t,i,s,o,r=.6,n="donutTooltip"){super(e,t,n);const{size:a,padding:l,agChartsExports:{_Scene:d}}=this,c=(a-2*l)/2,u=c+l,h=d.toRadians,g=[[h(-90),h(30)],[h(30),h(120)],[h(120),h(180)],[h(180),h(210)],[h(210),h(240)],[h(240),h(270)]];this.sectors=g.map(([e,t])=>{const i=new d.Sector;return i.centerX=u,i.centerY=u,i.innerRadius=c*r,i.outerRadius=c,i.startAngle=e,i.endAngle=t,i.stroke=void 0,i.strokeWidth=0,i.inset=.75,i}),this.updateColors(i,s),this.root.append(this.sectors)}updateColors(e,t){this.sectors.forEach((i,s)=>{i.fill=e[s%e.length],i.stroke=t[s%t.length]})}}t.MiniDonutClass=o,t.MiniDonut={chartType:"donut",miniChart:o}},30210:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.MiniPie=t.MiniPieClass=void 0;const s=i(17716);class o extends s.MiniDonutClass{constructor(e,t,i,s,o){super(e,t,i,s,o,0,"pieTooltip")}}t.MiniPieClass=o,t.MiniPie={chartType:"pie",miniChart:o}},92036:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.MiniNightingale=t.MiniNightingaleClass=void 0;const s=i(69004),o=i(32220);class r extends o.MiniChartWithPolarAxes{constructor(e,t,i,o){super(e,t,"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{size:r,padding:n,data:a,agChartsExports:{_Scene:l}}=this,d=(r-2*n)/2,c=new l.CategoryScale;c.domain=a[0].map((e,t)=>t),c.range=[-Math.PI,Math.PI],c.paddingInner=0,c.paddingOuter=0;const u=.7*c.bandwidth,{processedData:h,max:g}=(0,s.accumulateData)(a),p=new l.LinearScale;p.domain=[0,g],p.range=[0,d];const m=r/2;this.series=h.map((e,t)=>{const i=t<0?void 0:h[t-1],s=new l.Group({zIndex:1e6}),o=e.map((e,t)=>{const s=i?.[t],o=p.convert(e),r=p.convert(s??0),n=c.convert(t),a=n+u,d=new l.Sector;return d.centerX=m,d.centerY=m,d.innerRadius=r,d.outerRadius=o,d.startAngle=n,d.endAngle=a,d.stroke=void 0,d.strokeWidth=0,d});return s.append(o),s}),this.root.append(this.series),this.updateColors(i,o)}updateColors(e,t){this.series.forEach((i,s)=>{for(const o of i.children())o.fill=e[s%e.length],o.stroke=t[s%t.length]})}}t.MiniNightingaleClass=r,t.MiniNightingale={chartType:"nightingale",miniChart:r}},66279:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.MiniRadarArea=t.MiniRadarAreaClass=void 0;const s=i(69004),o=i(32220);class r extends o.MiniChartWithPolarAxes{constructor(e,t,i,o){super(e,t,"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]];const{size:r,padding:n,root:a,data:l}=this;this.showRadiusAxisLine=!1;const d=(r-2*n)/2,c=d-.3*r;this.areas=(0,s.createPolarPaths)(t,a,l,r,d,c).paths,this.updateColors(i,o)}updateColors(e,t){this.areas.forEach((i,s)=>{i.fill=e[s],i.stroke=t[s]})}}t.MiniRadarAreaClass=r,t.MiniRadarArea={chartType:"radarArea",miniChart:r}},45520:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.MiniRadarLine=t.MiniRadarLineClass=void 0;const s=i(69004),o=i(32220);class r extends o.MiniChartWithPolarAxes{constructor(e,t,i,o){super(e,t,"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{size:r,padding:n,root:a,data:l}=this,d=(r-2*n)/2,{paths:c,markers:u}=(0,s.createPolarPaths)(t,a,l,r,d,0,this.markerSize);this.lines=c,this.markers=u,this.updateColors(i,o)}updateColors(e,t){this.lines.forEach((i,s)=>{const o=this.data[s].length;i.stroke=e[s];const r=s*o,n=r+o,a=this.markers.slice(r,n);for(const i of a)i.stroke=t[s],i.fill=e[s]})}}t.MiniRadarLineClass=r,t.MiniRadarLine={chartType:"radarLine",miniChart:r}},59702:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.MiniRadialBar=t.MiniRadialBarClass=void 0;const s=i(69004),o=i(32220);class r extends o.MiniChartWithPolarAxes{constructor(e,t,i,o){super(e,t,"radialBarTooltip"),this.data=[[6,8,10],[4,4,3],[5,4,2]],this.showRadiusAxisLine=!1;const{size:r,padding:n,data:a,agChartsExports:{_Scene:l}}=this,d=(r-n)/2,c=.4*d,u=new l.CategoryScale;u.domain=a[0].map((e,t)=>t),u.range=[c,d],u.paddingInner=.5,u.paddingOuter=0;const h=u.bandwidth,{processedData:g,max:p}=(0,s.accumulateData)(a),m=new l.LinearScale;m.domain=[0,Math.ceil(1.5*p)];const f=1.5*Math.PI,C=f+2*Math.PI;m.range=[f,C];const v=r/2;this.series=g.map((e,t)=>{const i=t<0?void 0:g[t-1],s=new l.Group({zIndex:1e6}),o=e.map((e,t)=>{const s=i?.[t]??0,o=u.convert(t),r=o-h,n=m.convert(s),a=m.convert(e),d=new l.Sector;return d.centerX=v,d.centerY=v,d.innerRadius=r,d.outerRadius=o,d.startAngle=n,d.endAngle=a,d.stroke=void 0,d.strokeWidth=0,d});return s.append(o),s}),this.root.append(this.series),this.updateColors(i,o)}updateColors(e,t){this.series.forEach((i,s)=>{for(const o of i.children())o.fill=e[s%e.length],o.stroke=t[s%t.length]})}}t.MiniRadialBarClass=r,t.MiniRadialBar={chartType:"radialBar",miniChart:r}},90781:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.MiniRadialColumn=t.MiniRadialColumnClass=void 0;const s=i(69004),o=i(32220);class r extends o.MiniChartWithPolarAxes{constructor(e,t,i,o){super(e,t,"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:r,size:n,data:a,agChartsExports:{_Scene:l}}=this,d=(n-2*r)/2,c=.4*d,u=new l.CategoryScale;u.domain=a[0].map((e,t)=>t),u.range=[0,2*Math.PI],u.paddingInner=0,u.paddingOuter=0;const h=.7*u.bandwidth,{processedData:g,max:p}=(0,s.accumulateData)(a),m=new l.LinearScale;m.domain=[0,p],m.range=[c,d];const f=this.size/2;this.series=g.map((e,t)=>{const i=0===t?void 0:g[t-1],s=new l.TranslatableGroup({zIndex:1e6}),o=e.map((e,t)=>{const s=i?.[t],o=m.convert(e),r=m.convert(s??0),n=u.convert(t),a=n+h,g=l.getRadialColumnWidth(n,a,d,.5,.5),p=new l.RadialColumnShape;return p.columnWidth=g,p.innerRadius=r,p.outerRadius=o,p.startAngle=n,p.endAngle=a,p.isBeveled=!0,p.axisInnerRadius=c,p.axisOuterRadius=d,p.stroke=void 0,p.strokeWidth=0,p});return s.append(o),s.translationX=f,s.translationY=f,s}),this.root.append(this.series),this.updateColors(i,o)}updateColors(e,t){this.series.forEach((i,s)=>{for(const o of i.children())o.fill=e[s%e.length],o.stroke=t[s%t.length]})}}t.MiniRadialColumnClass=r,t.MiniRadialColumn={chartType:"radialColumn",miniChart:r}},73268:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.MiniBubble=t.MiniBubbleClass=void 0;const s=i(21408);class o extends s.MiniChartWithAxes{constructor(e,t,i,s){super(e,t,"bubbleTooltip");const{size:o,padding:r,agChartsExports:{_Scene:n}}=this,a=new n.LinearScale;a.domain=[0,1],a.range=[2*r,o-r];const l=new n.LinearScale;l.domain=[0,1],l.range=[o-r,r];const d=[];[[[.1,.3,5],[.5,.4,7],[.2,.8,7]],[[.8,.7,5],[.7,.3,9]]].forEach(e=>{e.forEach(([e,t,i])=>{const s=new n.Arc;s.strokeWidth=0,s.centerX=a.convert(e),s.centerY=l.convert(t),s.radius=i,s.fillOpacity=.7,d.push(s)})}),this.points=d,this.updateColors(i,s);const c=new n.Group;c.setClipRect(new n.BBox(r,r,o-2*r,o-2*r)),c.append(this.points),this.root.append(c)}updateColors(e,t){this.points.forEach((i,s)=>{i.stroke=t[s%t.length],i.fill=e[s%e.length]})}}t.MiniBubbleClass=o,t.MiniBubble={chartType:"bubble",miniChart:o}},10434:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.MiniScatter=t.MiniScatterClass=void 0;const s=i(21408);class o extends s.MiniChartWithAxes{constructor(e,t,i,s){super(e,t,"scatterTooltip");const{size:o,padding:r,agChartsExports:{_Scene:n}}=this,a=new n.LinearScale;a.domain=[-.5,4],a.range=[2*r,o-r];const l=new n.LinearScale;l.domain=[-.5,3.5],l.range=[o-r,r];const d=[];[[[.3,3],[1.1,.9],[2,.4],[3.4,2.4]],[[0,.3],[1,2],[2.4,1.4],[3,0]]].forEach(e=>{e.forEach(([e,t])=>{const i=new n.Arc;i.strokeWidth=0,i.centerX=a.convert(e),i.centerY=l.convert(t),i.radius=2.5,d.push(i)})}),this.points=d,this.updateColors(i,s);const c=new n.Group;c.setClipRect(new n.BBox(r,r,o-2*r,o-2*r)),c.append(this.points),this.root.append(c)}updateColors(e,t){this.points.forEach((i,s)=>{i.stroke=t[s%t.length],i.fill=e[s%e.length]})}}t.MiniScatterClass=o,t.MiniScatter={chartType:"scatter",miniChart:o}},70795:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.MiniHeatmap=t.MiniHeatmapClass=void 0;const s=i(52893);class o extends s.MiniChart{constructor(e,t,i,s,o){super(e,t,"heatmapTooltip");const{size:r,padding:n,agChartsExports:{_Scene:a}}=this,l=Array.from({length:3},(e,t)=>Array.from({length:3},(e,t)=>t)),d=l.map((e,t)=>t),c=new a.CategoryScale;c.domain=d,c.range=[n,r-n],c.paddingInner=.01,c.paddingOuter=.1;const u=new a.CategoryScale;u.domain=d,u.range=[n,r-n],u.paddingInner=.01,u.paddingOuter=.1;const h=c.bandwidth??0,g=u.bandwidth??0;this.rects=l.reduce((e,t,i)=>{e??(e=[]);const s=t.map((e,t)=>{const s=new a.Rect;return s.x=c.convert(i),s.y=u.convert(t),s.width=h,s.height=g,s.strokeWidth=0,s.crisp=!0,s});return e.push(...s),e},[]),this.updateColors(i,s,o);const p=new a.Group;p.setClipRect(new a.BBox(n,n,r-n,r-n)),p.append(this.rects),this.root.append(p)}updateColors(e,t,i){const{_Theme:s,_Util:o}=this.agChartsExports,r=i?[e[0],e[1]]:s.resolveOperation({$palette:"divergingColors"}),n=i?t[0]:s.resolveOperation({$ref:"backgroundColor"}),a=o.interpolateColor(r[0],r[1]);this.rects.forEach((e,t)=>{e.fill=a(.2*t),e.stroke=n})}}t.MiniHeatmapClass=o,t.MiniHeatmap={chartType:"heatmap",miniChart:o}},13209:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.MiniWaterfall=t.MiniWaterfallClass=void 0;const s=i(69004),o=i(21408);class r extends o.MiniChartWithAxes{constructor(e,t,i,s,o){super(e,t,"waterfallTooltip"),this.data=[4,3,-3,6,-3],this.bars=this.createWaterfall(this.root,this.data,this.size,this.padding,"vertical").bars,this.updateColors(i,s,o)}updateColors(e,t,i){const{data:s,agChartsExports:{_Theme:o}}=this,r={fill:i?e[0]:o.resolveOperation({$palette:"altUp.fill"}),stroke:i?t[0]:o.resolveOperation({$palette:"altUp.stroke"})},n={fill:i?e[1]:o.resolveOperation({$palette:"altDown.fill"}),stroke:i?t[1]:o.resolveOperation({$palette:"altDown.stroke"})};this.bars.forEach((e,t)=>{const i=s[t]>=0;e.fill=i?r.fill:n.fill,e.stroke=i?r.stroke:n.stroke})}createWaterfall(e,t,i,o,r){const n=2*o,{processedData:a,min:l,max:d}=(0,s.accumulateData)(t.map(e=>[e])),c=a.reduce((e,t)=>e.concat(t),[]),{_Scene:u}=this.agChartsExports,h=new u.LinearScale;h.domain=[Math.min(l,0),d],h.range=[i-n,n];const g=new u.CategoryScale;g.domain=t.map((e,t)=>t),g.range=[o,i-o],g.paddingInner=.2,g.paddingOuter=.3;const p=g.bandwidth,m=new u.Path;m.stroke="#575757",m.strokeWidth=0;const f=Math.floor(m.strokeWidth)%2/2,C=m.path;C.clear();const v="horizontal"===r,w=c.map((e,i)=>{const s=i>0?c[i-1]:0,o=t[i]>0,r=Math.round(h.convert(e)),n=Math.round(h.convert(s)),a=(o?r:n)-f,l=(o?n:r)+f,d=Math.abs(l-a),m=g.convert(i),w=new u.Rect;w.x=v?a:m,w.y=v?m:a,w.width=v?d:p,w.height=v?p:d,w.strokeWidth=0,w.crisp=!0;const b=r+f,y=n+f;if(i>0){const e=v?y:w.x,t=v?w.y:y;C.lineTo(e,t)}const S=v?b:w.x,x=v?w.y:b;return C.moveTo(S,x),w});return e.append([m,...w]),{bars:w}}}t.MiniWaterfallClass=r,t.MiniWaterfall={chartType:"waterfall",miniChart:r}},31819:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.MiniBoxPlot=t.MiniBoxPlotClass=void 0;const s=i(21408);class o extends s.MiniChartWithAxes{constructor(e,t,i,s,o){super(e,t,"boxPlotTooltip");const{size:r,padding:n,agChartsExports:{_Scene:a}}=this,l=[11,11.5,10.5],d=new a.LinearScale;d.domain=[.8*l.reduce((e,t)=>Math.min(e,t),1/0),1.2*l.reduce((e,t)=>Math.max(e,t),0)],d.range=[r-1.5*n,n];const c=new a.CategoryScale;c.domain=l.map((e,t)=>t),c.range=[n,r-n],c.paddingInner=.4,c.paddingOuter=.2;const u=Math.round(c.bandwidth),h=Math.round(c.bandwidth/2);this.boxPlotGroups=l.map((e,t)=>{const[i,s,o,r]=[.8*e,.9*e,1.1*e,1.2*e],n=Math.round(d.convert(o)),l=Math.round(c.convert(t)),g=Math.round(l+u),p=Math.round(d.convert(s)),m=Math.round(d.convert(i)),f=Math.round(d.convert(e)),C=Math.round(d.convert(r)),v=l+h,w=new a.Group,b=new a.Rect,y=new a.Line,S=new a.Line,x=new a.Line,F=new a.Line,R=new a.Line;return b.x=l,b.y=n,b.width=u,b.height=p-n,b.strokeWidth=1,b.strokeOpacity=.75,b.crisp=!0,this.setLineProperties(y,l,g,f,f),this.setLineProperties(S,v,v,C,n),this.setLineProperties(x,v,v,m,p),this.setLineProperties(F,l,g,C,C),this.setLineProperties(R,l,g,m,m),w.append([b,y,S,x,F,R]),w}),this.updateColors(i,s,o),this.root.append(this.boxPlotGroups)}updateColors(e,t,i){const{_Theme:s}=this.agChartsExports;this.boxPlotGroups.forEach((o,r)=>{for(const n of o.children()){const o=e[r%e.length];n.fill=i?o:s.resolveOperation({$mix:[o,{$ref:"backgroundColor"},.7]}),n.stroke=t[r%t.length]}})}setLineProperties(e,t,i,s,o){e.x1=t,e.x2=i,e.y1=s,e.y2=o,e.strokeOpacity=.75}}t.MiniBoxPlotClass=o,t.MiniBoxPlot={chartType:"boxPlot",miniChart:o}},37049:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.MiniRangeArea=t.MiniRangeAreaClass=void 0;const s=i(21408);class o extends s.MiniChartWithAxes{constructor(e,t,i,s){super(e,t,"rangeAreaTooltip");const o=[r({offset:1.5,length:4,pattern:{low:3,high:5,period:4}}),r({offset:1.5,length:4,pattern:{low:2.25,high:4.25,period:4}}),r({offset:3,length:4,pattern:{low:2.5,high:4.5,period:4}})],n=o.map(e=>e.map(([e,t])=>({x:e,low:t-.875,high:t+.875}))),{lines:a,areas:l}=this.createRangeArea(this.root,n,this.size,this.padding);this.lines=a,this.areas=l,this.updateColors(i,s)}updateColors(e,t){e=a(e,1,2),t=a(t,1,2),this.lines.forEach(([e,i],s)=>{e.fill=void 0,e.stroke=t[s],i.fill=void 0,i.stroke=t[s]}),this.areas.forEach((t,i)=>{t.fill=e[i]})}createRangeArea(e,t,i,s){const o=t.reduce((e,t)=>t.reduce((e,{x:t})=>Math.min(e,t),e),1/0),r=t.reduce((e,t)=>t.reduce((e,{x:t})=>Math.max(e,t),e),-1/0),n=t.reduce((e,t)=>t.reduce((e,{low:t})=>Math.min(e,t),e),1/0),a=t.reduce((e,t)=>t.reduce((e,{high:t})=>Math.max(e,t),e),-1/0),{_Scene:l}=this.agChartsExports,d=new l.LinearScale;d.domain=[o,r],d.range=[s,i-s];const c=2*s,u=new l.LinearScale;u.domain=[n,a],u.range=[i-c,c];const h=[],g=[];return t.map(e=>{const t=new l.Path,i=new l.Path,s=new l.Path;return h.push([t,i]),g.push(s),t.strokeWidth=0,i.strokeWidth=0,s.strokeWidth=0,s.fillOpacity=.8,t.path.clear(),i.path.clear(),s.path.clear(),e.map((e,o)=>{const{x:r,low:n,high:a}=e,l=d.convert(r),c=u.convert(n),h=u.convert(a),g=o>0?"lineTo":"moveTo";return t.path[g](l,h),i.path[g](l,c),s.path[g](l,h),[l,c]})}).forEach((e,t)=>{const i=e.length-1,s=g[t];for(let t=i;t>=0;t--){const[i,o]=e[t];s.path.lineTo(i,o)}}),e.append(g.concat(...h)),{lines:h,areas:g}}}function r(e){const{offset:t,length:i,pattern:s}=e,o=function(e,t,i){const{period:s}=i,o=e/s,r=[0,.5].map(e=>e-o).map(n).sort((e,t)=>e-t),l=Array.from({length:Math.floor(r.length*(s/t))},(e,t)=>r[t%r.length]+Math.floor(t/r.length));return l.map(e=>e*s).map(t=>a(t,e,i))}(t,i,s),r=i;return 0!==o.length&&0===o[0][0]||o.unshift(a(0,t,s)),o[o.length-1][0]!==r&&o.push(a(r,t,s)),o;function a(e,t,i){return[e,l(t+e,i)]}function l(e,t){const{low:i,high:s,period:o}=t,r=n(e/o);return i+(s-i)*(r>.5?1-2*(r-.5):2*r)}}function n(e){const t=e%1;return t<0?t+1:t}function a(e,t,i){const s=[...e],o=s[t];return s[t]=s[i],s[i]=o,s}t.MiniRangeAreaClass=o,t.MiniRangeArea={chartType:"rangeArea",miniChart:o}},94823:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.MiniRangeBar=t.MiniRangeBarClass=void 0;const s=i(21408);class o extends s.MiniChartWithAxes{constructor(e,t,i,s){super(e,t,"rangeBarTooltip");this.bars=this.createRangeBar(this.root,[3,3.5,3],this.size,this.padding,"vertical"),this.updateColors(i,s)}updateColors(e,t){this.bars.forEach((i,s)=>{i.fill=e[s],i.stroke=t[s]})}createRangeBar(e,t,i,s,o){const r="horizontal"===o,n=2*s,{_Scene:a}=this.agChartsExports,l=new a.CategoryScale;l.domain=t.map((e,t)=>t),l.range=[s,i-s],l.paddingInner=.3,l.paddingOuter=.3;const d=new a.LinearScale;d.domain=[.7*t.reduce((e,t)=>Math.min(e,t),1/0),1.3*t.reduce((e,t)=>Math.max(e,t),0)],d.range=[n,i-n];const c=l.bandwidth,u=t.map((e,t)=>{const[i,s]=[.7*e,1.3*e],o=l.convert(t),n=d.convert(i),u=d.convert(s)-n,h=new a.Rect;return h.x=r?n:o,h.y=r?o:n,h.width=r?u:c,h.height=r?c:u,h.strokeWidth=0,h.crisp=!0,h});return e.append(u),u}}t.MiniRangeBarClass=o,t.MiniRangeBar={chartType:"rangeBar",miniChart:o}},86692:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.MiniChartsContainer=void 0;const s=i(76624),o=i(61994),r=i(54237),n=i(28049),a=i(28250),l=i(81244),d=i(76544),c={columnGroup:{column:{range:!0,pivot:!0,enterprise:!1,icon:d.MiniColumn},stackedColumn:{range:!0,pivot:!0,enterprise:!1,icon:d.MiniStackedColumn},normalizedColumn:{range:!0,pivot:!0,enterprise:!1,icon:d.MiniNormalizedColumn}},barGroup:{bar:{range:!0,pivot:!0,enterprise:!1,icon:d.MiniBar},stackedBar:{range:!0,pivot:!0,enterprise:!1,icon:d.MiniStackedBar},normalizedBar:{range:!0,pivot:!0,enterprise:!1,icon:d.MiniNormalizedBar}},pieGroup:{pie:{range:!0,pivot:!0,enterprise:!1,icon:d.MiniPie},donut:{range:!0,pivot:!0,enterprise:!1,icon:d.MiniDonut},doughnut:{range:!0,pivot:!0,enterprise:!1,icon:d.MiniDonut}},lineGroup:{line:{range:!0,pivot:!0,enterprise:!1,icon:d.MiniLine},stackedLine:{range:!0,pivot:!0,enterprise:!1,icon:d.MiniStackedLine},normalizedLine:{range:!0,pivot:!0,enterprise:!1,icon:d.MiniNormalizedLine}},scatterGroup:{scatter:{range:!0,pivot:!0,enterprise:!1,icon:d.MiniScatter},bubble:{range:!0,pivot:!0,enterprise:!1,icon:d.MiniBubble}},areaGroup:{area:{range:!0,pivot:!0,enterprise:!1,icon:d.MiniArea},stackedArea:{range:!0,pivot:!0,enterprise:!1,icon:d.MiniStackedArea},normalizedArea:{range:!0,pivot:!0,enterprise:!1,icon:d.MiniNormalizedArea}},polarGroup:{radarLine:{range:!0,pivot:!1,enterprise:!0,icon:d.MiniRadarLine},radarArea:{range:!0,pivot:!1,enterprise:!0,icon:d.MiniRadarArea},nightingale:{range:!0,pivot:!1,enterprise:!0,icon:d.MiniNightingale},radialColumn:{range:!0,pivot:!1,enterprise:!0,icon:d.MiniRadialColumn},radialBar:{range:!0,pivot:!1,enterprise:!0,icon:d.MiniRadialBar}},statisticalGroup:{boxPlot:{range:!0,pivot:!1,enterprise:!0,icon:d.MiniBoxPlot},histogram:{range:!0,pivot:!1,enterprise:!1,icon:d.MiniHistogram},rangeBar:{range:!0,pivot:!1,enterprise:!0,icon:d.MiniRangeBar},rangeArea:{range:!0,pivot:!1,enterprise:!0,icon:d.MiniRangeArea}},hierarchicalGroup:{treemap:{range:!0,pivot:!0,enterprise:!0,icon:d.MiniTreemap},sunburst:{range:!0,pivot:!0,enterprise:!0,icon:d.MiniSunburst}},specializedGroup:{heatmap:{range:!0,pivot:!1,enterprise:!0,icon:d.MiniHeatmap},waterfall:{range:!0,pivot:!1,enterprise:!0,icon:d.MiniWaterfall}},combinationGroup:{columnLineCombo:{range:!0,pivot:!0,enterprise:!1,icon:d.MiniColumnLineCombo},areaColumnCombo:{range:!0,pivot:!0,enterprise:!1,icon:d.MiniAreaColumnCombo},customCombo:{range:!0,pivot:!0,enterprise:!1,icon:d.MiniCustomCombo}},funnelGroup:{funnel:{range:!0,pivot:!1,enterprise:!0,icon:a.MiniFunnel},coneFunnel:{range:!0,pivot:!1,enterprise:!0,icon:n.MiniConeFunnel},pyramid:{range:!0,pivot:!1,enterprise:!0,icon:l.MiniPyramid}}},u={columnGroup:["column","stackedColumn","normalizedColumn"],barGroup:["bar","stackedBar","normalizedBar"],pieGroup:["pie","donut"],lineGroup:["line","stackedLine","normalizedLine"],areaGroup:["area","stackedArea","normalizedArea"],scatterGroup:["scatter","bubble"],polarGroup:["radarLine","radarArea","nightingale","radialColumn","radialBar"],statisticalGroup:["boxPlot","histogram","rangeBar","rangeArea"],hierarchicalGroup:["treemap","sunburst"],specializedGroup:["heatmap","waterfall"],funnelGroup:["funnel","coneFunnel","pyramid"],combinationGroup:["columnLineCombo","areaColumnCombo","customCombo"]};class h extends s.Component{wireBeans(e){this.chartTranslation=e.chartTranslation}constructor(e,t,i,s,o=u){super('
'),this.wrappers=new Map,this.chartController=e,this.fills=t,this.strokes=i,this.isCustomTheme=s,this.chartGroups={...o}}postConstruct(){!this.chartController.customComboExists()&&this.chartGroups.combinationGroup&&(this.chartGroups.combinationGroup=this.chartGroups.combinationGroup.filter(e=>"customCombo"!==e));const e=this.getGui(),t=this.chartController.isEnterprise(),i=this.chartController.isPivotChart(),r=!i,n=Object.keys(this.chartGroups).map(e=>{const o=e in c?c[e]:void 0;if(!o)return(0,s._warn)(148,{group:e}),null;const n=(this.chartGroups[e]??[]).map(n=>{const a=n in o?o[n]:void 0;return a?!t&&a.enterprise?null:r&&a.range||i&&a.pivot?a:null:((0,s._warn)(149,{group:e,chartType:n}),null)}).filter(e=>null!=e);return 0===n.length?null:{label:this.chartTranslation.translate(e),items:n}}).filter(e=>null!=e);for(const{label:t,items:i}of n){const r=this.createBean(new o.AgGroupComponent({title:t,suppressEnabledCheckbox:!0,enabled:!0,suppressOpenCloseIcons:!0,cssIdentifier:"charts-settings",direction:"horizontal",suppressKeyboardNavigation:!0}));for(const e of i){const{miniChart:t,chartType:i}=e.icon,o=document.createElement("div");o.classList.add("ag-chart-mini-thumbnail"),o.setAttribute("tabindex","0"),o.setAttribute("role","button");const n=i,a=()=>{this.chartController.setChartType(n),this.updateSelectedMiniChart()};this.addManagedListeners(o,{click:a,keydown:e=>{e.key!=s.KeyCode.ENTER&&e.key!==s.KeyCode.SPACE||(e.preventDefault(),a())}}),this.wrappers.set(n,o),this.createBean(new t(o,this.beans.agChartsExports,this.fills,this.strokes,this.isCustomTheme)),r.addItem(o)}e.appendChild(r.getGui())}this.updateSelectedMiniChart()}updateSelectedMiniChart(){const e=this.chartController.getChartType();this.wrappers.forEach((t,i)=>{const o=i===e;t.classList.toggle("ag-selected",o);const n=this.chartTranslation.translate((0,r.getFullChartNameTranslationKey)(i)),a=o?`${n}. ${this.chartTranslation.translate("ariaChartSelected")}`:n;(0,s._setAriaLabel)(t,a)})}destroy(){this.wrappers.clear(),super.destroy()}}t.MiniChartsContainer=h},95518:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TabbedChartMenu=void 0;const s=i(76624),o=i(69424),r=i(11504),n=i(23160),a=i(26604);class l extends s.Component{wireBeans(e){this.chartTranslation=e.chartTranslation}constructor(e,t){super(),this.panels=e,this.chartMenuContext=t,this.tabs=[]}postConstruct(){for(const e of this.panels){const t=e.replace("chart","").toLowerCase(),i=this.createPanel(t),s=this.createTab(e,t,i);this.tabs.push(s),this.addDestroyFunc(()=>this.destroyBean(i))}this.tabbedLayout=new o.AgTabbedLayout({items:this.tabs,cssClass:"ag-chart-tabbed-menu",keepScrollPosition:!0,suppressFocusBodyOnOpen:!0,suppressTrapFocus:!0,enableCloseButton:!0,closeButtonAriaLabel:this.chartTranslation.translate("ariaChartMenuClose"),onCloseClicked:()=>{this.eventSource?.focus({preventScroll:!0}),this.dispatchLocalEvent({type:"closed"})}}),this.createBean(this.tabbedLayout)}createTab(e,t,i){const o=(0,s._createElement)({tag:"div",cls:`ag-chart-tab ag-chart-${t}`});this.createBean(i),o.appendChild(i.getGui());const r=this.chartTranslation.translate(t);return{title:(0,s._createElement)({tag:"div",children:r}),titleLabel:r,bodyPromise:s.AgPromise.resolve(o),getScrollableContainer:()=>o.querySelector(".ag-scrollable-container")||o,name:e}}showTab(e){const t=this.tabs[e];this.tabbedLayout.showItem(t)}getGui(){return this.tabbedLayout?.getGui()}showMenu(e,t){this.eventSource=e,t||this.tabbedLayout?.focusHeader(!0)}destroy(){this.parentComponent?.isAlive()&&this.destroyBean(this.parentComponent),super.destroy()}createPanel(e){switch(e){case"data":return new r.ChartDataPanel(this.chartMenuContext);case"format":return new n.FormatPanel(this.chartMenuContext);default:return new a.ChartSettingsPanel(this.chartMenuContext.chartController)}}}t.TabbedChartMenu=l},98592:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ChartDataModel=t.DEFAULT_CHART_CATEGORY=void 0;const s=i(76624),o=i(99208),r=i(18919),n=i(54237),a=i(52474);t.DEFAULT_CHART_CATEGORY="AG-GRID-DEFAULT-CATEGORY";class l extends s.BeanStub{wireBeans(e){this.rangeSvc=e.rangeSvc,this.chartTranslation=e.chartTranslation}constructor(e){super(),this.unlinked=!1,this.chartData=[],this.valueColState=[],this.dimensionColState=[],this.colNames={},this.crossFiltering=!1,this.crossFilteringSort=!0,this.grouping=!1,this.useGroupColumnAsCategory=!1,this.params=e,this.chartId=e.chartId,this.setParams(e)}setParams(e){const{chartType:t,pivotChart:i,chartThemeName:s,switchCategorySeries:o,aggFunc:r,cellRange:n,suppressChartRanges:a,unlinkChart:l,crossFiltering:d,crossFilteringSort:c,seriesGroupType:u,useGroupColumnAsCategory:h}=e;this.chartType=t,this.pivotChart=i??!1,this.chartThemeName=s,this.switchCategorySeries=!!o,this.aggFunc=r,this.referenceCellRange=n,this.suppliedCellRange=n,this.suppressChartRanges=a??!1,this.unlinked=!!l,this.crossFiltering=!!d,this.crossFilteringSort=c??!0,this.seriesGroupType=u,this.useGroupColumnAsCategory=!!h}postConstruct(){this.datasource=this.createManagedBean(new o.ChartDatasource),this.chartColSvc=this.createManagedBean(new r.ChartColumnService),this.comboChartModel=this.createManagedBean(new a.ComboChartModel(this)),this.updateCellRanges({setColsFromRange:!0}),this.updateData()}updateModel(e){const{cellRange:t,seriesChartTypes:i}=e;t!==this.suppliedCellRange&&(this.dimensionCellRange=void 0,this.valueCellRange=void 0),this.setParams(e),this.updateSelectedDimensions(t?.columns),this.updateCellRanges({setColsFromRange:!0});(this.isComboChart()||i)&&this.comboChartModel.update(i),this.unlinked||this.updateData()}updateCellRanges(e){const{updatedColState:t,resetOrder:i,maintainColState:s,setColsFromRange:o}=e??{};this.valueCellRange&&(this.referenceCellRange=this.valueCellRange);const{dimensionCols:r,valueCols:n}=this.chartColSvc.getChartColumns(),a=this.getAllColumnsFromRanges();t&&this.updateColumnState(t,i),this.setDimensionCellRange(r,a,t),this.setValueCellRange(n,a,o),t||s||(this.resetColumnState(),this.syncDimensionCellRange()),this.comboChartModel.updateSeriesChartTypes()}updateData(){const{startRow:e,endRow:t}=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,crossFilteringSort:this.getCrossFilteringSort(),valueCols:this.getSelectedValueCols(),startRow:e,endRow:t,isScatter:["scatter","bubble"].includes(this.chartType),combineGroupValues:(0,n.isStatistical)((0,n.getSeriesType)(this.chartType))},{chartData:s,colNames:o,groupChartData:r}=this.datasource.getData(i);this.chartData=s,this.groupChartData=r,this.colNames=o,this.categoryAxisType=void 0}isGrouping(){const e=this.gos.get("treeData"),t=e?null:this.chartColSvc.getRowGroupColumns(),i=e||t&&t.length>0,s=this.getSelectedDimensions().map(({colId:e})=>e),o=this.chartColSvc.getGroupDisplayColumns().map(e=>e.getColId()).some(e=>s.includes(e));return!!i&&o}getSelectedValueCols(){return this.valueColState.filter(e=>e.selected).map(e=>e.column)}getSelectedDimensions(){return this.dimensionColState.filter(e=>e.selected)}getValueColState(){return this.valueColState.map(this.displayNameMapper.bind(this))}displayNameMapper(e){const{column:t}=e;if(t){const i=this.getColDisplayName(t);e.displayName=this.isPivotMode()?this.getPivotDisplayName(t,i):i}else{const i=this.colNames[e.colId];e.displayName=i?i.join(" - "):this.getColDisplayName(t)}return e}getPivotDisplayName(e,t){let i=!1,s=[t];const o=e=>{if(!e)return;const t=this.chartColSvc.getColGroupDisplayName(e);t?.length?(s.unshift(t),o(e.getParent())):i=!0};if(o(e.getParent()),i){const t=this.colNames[e.getColId()];t&&(s=t)}return s.join(" - ")}getColDisplayName(e){return this.chartColSvc.getColDisplayName(e)}isPivotMode(){return this.chartColSvc.isPivotMode()}getChartDataType(e){const t=this.chartColSvc.getColumn(e);return t?t.getColDef().chartDataType:void 0}getConvertTime(e){const t=this.chartColSvc.getColumn(e);if("dateString"===t?.colDef.cellDataType)return this.beans.dataTypeSvc?.getDateParserFunction(t)}isPivotActive(){return this.chartColSvc.isPivotActive()}createCellRange(e,...t){return{id:this.chartId,startRow:this.referenceCellRange.startRow,endRow:this.referenceCellRange.endRow,columns:t,startColumn:e===s.CellRangeType.DIMENSION||null==this.referenceCellRange.startColumn?t[0]:this.referenceCellRange.startColumn,type:e}}getAllColumnsFromRanges(){if(this.pivotChart)return new Set(this.chartColSvc.getAllDisplayedColumns());const e=this.dimensionCellRange||this.valueCellRange?[]:this.referenceCellRange.columns;return this.dimensionCellRange&&e.push(...this.dimensionCellRange.columns),this.valueCellRange&&e.push(...this.valueCellRange.columns),new Set(e)}getRowIndexes(){let e=0,t=0;const{rangeSvc:i,valueCellRange:s,dimensionCellRange:o}=this,r=s||o;if(i&&r){e=i.getRangeStartRow(r).rowIndex;const s=i.getRangeEndRow(r);t="bottom"===s.rowPinned?-1:s.rowIndex}return{startRow:e,endRow:t}}resetColumnState(){const{dimensionCols:e,valueCols:i}=this.chartColSvc.getChartColumns(),o=this.getAllColumnsFromRanges(),r=this.valueColState.length<1;this.dimensionColState=[],this.valueColState=[];const a=(0,n.isHierarchical)((0,n.getSeriesType)(this.chartType));let l=!1,d=1;const c=this.suppliedCellRange.columns[0],u=this.gos.get("treeData"),h=u?null:this.chartColSvc.getRowGroupColumns(),g=u||h&&h.length>0;e.forEach(e=>{const t=(0,s.isColumnGroupAutoCol)(e),i=this.crossFiltering&&this.aggFunc?c.getColId()===e.getColId():this.useGroupColumnAsCategory&&g&&t||(!l||a)&&o.has(e);this.dimensionColState.push({column:e,colId:e.getColId(),displayName:this.getColDisplayName(e),selected:i,order:d++}),i&&(l=!0)});const p={colId:t.DEFAULT_CHART_CATEGORY,displayName:this.chartTranslation.translate("defaultCategory"),selected:!l,order:0};this.dimensionColState.unshift(p);const m=this.referenceCellRange.columns.filter(e=>i.has(e));i.forEach(e=>{r&&this.referenceCellRange.columns.includes(e)&&(e=m.shift()),this.valueColState.push({column:e,colId:e.getColId(),displayName:this.getColDisplayName(e),selected:o.has(e),order:d++})})}updateColumnState(e,t){const i=t=>t.colId===e.colId,{dimensionColState:s,valueColState:o}=this,r=s.find(i),a=o.find(i);if(r){if((0,n.isHierarchical)((0,n.getSeriesType)(this.chartType)))r.selected=e.selected;else{const t=e.selected?r:s.filter(e=>e!==r).find(({selected:e})=>e);s.forEach(e=>e.selected=e===t)}}else a&&(a.selected=e.selected);const l=[...s,...o],d=[];t||(l.forEach((t,i)=>{i===e.order&&d.push(e.colId),t.colId!==e.colId&&d.push(t.colId)}),l.forEach(e=>{const t=d.indexOf(e.colId);e.order=t>=0?d.indexOf(e.colId):l.length-1})),this.reorderColState()}reorderColState(){const e=(e,t)=>e.order-t.order;this.dimensionColState.sort(e),this.valueColState.sort(e)}setDimensionCellRange(e,i,o){this.dimensionCellRange=void 0;const r=(0,n.isHierarchical)((0,n.getSeriesType)(this.chartType));if(!o&&!this.dimensionColState.length){const t=new Array;return e.forEach(e=>{t.length>0&&!r||!i.has(e)||t.push(e)}),void(t.length>0&&(this.dimensionCellRange=this.createCellRange(s.CellRangeType.DIMENSION,...t)))}let a=o?[o]:[];if(this.crossFiltering&&this.aggFunc){const e=this.suppliedCellRange.columns[0];a=this.dimensionColState.filter(t=>t.colId===e.getColId())}else(r||0===a.length||a.some(({column:t})=>!t||!e.has(t)))&&(a=this.dimensionColState.filter(e=>e.selected));const l=1===a.length&&a[0].colId===t.DEFAULT_CHART_CATEGORY,d=a.map(({column:e})=>e).filter(e=>null!=e);d.length>0&&!l&&(this.dimensionCellRange=this.createCellRange(s.CellRangeType.DIMENSION,...d))}setValueCellRange(e,t,i){this.valueCellRange=void 0;const o=[],r=(0,n.getMaxNumSeries)(this.chartType);let a=0;if(e.forEach(e=>{i?(null==r||at.selected&&t.colId===e.getColId())&&o.push(e)}),o.length>0){let e=[];this.valueColState.length>0?e=this.valueColState.map(e=>e.colId):t.forEach(t=>e.push(t.getColId())),o.sort((t,i)=>e.indexOf(t.getColId())-e.indexOf(i.getColId())),this.valueCellRange=this.createCellRange(s.CellRangeType.VALUE,...o)}}resetCellRanges(e,t){if(!e&&!t)return;const{dimensionCols:i,valueCols:s}=this.chartColSvc.getChartColumns(),o=this.getAllColumnsFromRanges();e&&this.setDimensionCellRange(i,o),t&&this.setValueCellRange(s,o)}updateSelectedDimensions(e){const t=new Set(e.map(e=>e.getColId()));if((0,n.isHierarchical)((0,n.getSeriesType)(this.chartType))){const e=this.dimensionColState.filter(e=>t.has(e.colId)),i=new Set(e.map(e=>e.colId));this.dimensionColState=this.dimensionColState.map(e=>({...e,selected:i.has(e.colId)}))}else{const e=(this.dimensionColState.find(e=>t.has(e.colId))||this.dimensionColState[0]).colId;this.dimensionColState=this.dimensionColState.map(t=>({...t,selected:t.colId===e}))}}syncDimensionCellRange(){const e=this.getSelectedDimensions();if(0===e.length)return;const t=e.map(({column:e})=>e).filter(e=>null!=e);t.length>0&&(this.dimensionCellRange=this.createCellRange(s.CellRangeType.DIMENSION,...t))}isComboChart(e){return(0,n.isComboChart)(e??this.chartType)}getCrossFilteringSort(){const e=this.crossFilteringSort;if("boolean"==typeof e)return e;const t=[];return e.forEach(({sort:e,colId:i})=>{const o=this.chartColSvc.getColumn(i);o&&t.push({sort:e,column:o,type:(0,s._normalizeSortType)(o.getSortDef()?.type)})}),t}}t.ChartDataModel=l},52474:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ComboChartModel=void 0;const s=i(76624),o=new Set(["line","groupedColumn","stackedColumn","area","stackedArea"]);class r extends s.BeanStub{constructor(e){super(),this.suppressComboChartWarnings=!1,this.chartDataModel=e,this.seriesChartTypes=e.params.seriesChartTypes??[]}postConstruct(){this.initComboCharts()}update(e){this.seriesChartTypes=e??this.seriesChartTypes,this.initComboCharts(),this.updateSeriesChartTypes()}initComboCharts(){const e=this.seriesChartTypes&&this.seriesChartTypes.length>0;("customCombo"===this.chartDataModel.chartType||e)&&(this.chartDataModel.chartType="customCombo",this.savedCustomSeriesChartTypes=this.seriesChartTypes||[])}updateSeriesChartTypes(){this.chartDataModel.isComboChart()&&(this.seriesChartTypes=this.seriesChartTypes.map(e=>{const t=["groupedColumn","stackedColumn","stackedArea"].includes(e.chartType);return e.secondaryAxis=!t&&e.secondaryAxis,e}),"customCombo"!==this.chartDataModel.chartType?this.updateChartSeriesTypesForBuiltInCombos():this.updateSeriesChartTypesForCustomCombo())}updateSeriesChartTypesForCustomCombo(){this.seriesChartTypes&&this.seriesChartTypes.length>0||this.suppressComboChartWarnings||(0,s._warn)(150),this.seriesChartTypes=this.seriesChartTypes.map(e=>(o.has(e.chartType)||((0,s._warn)(151,{chartType:e.chartType}),e.chartType="line"),e));const e=this.chartDataModel.valueColState.map(e=>{this.savedCustomSeriesChartTypes&&0!==this.savedCustomSeriesChartTypes.length||(this.savedCustomSeriesChartTypes=this.seriesChartTypes);const t=this.savedCustomSeriesChartTypes.find(t=>t.colId===e.colId);return t||(e.selected&&!this.suppressComboChartWarnings&&(0,s._warn)(152,{colId:e.colId}),{colId:e.colId,chartType:"line",secondaryAxis:!1})});this.seriesChartTypes=e,this.savedCustomSeriesChartTypes=e,this.suppressComboChartWarnings=!0}updateChartSeriesTypesForBuiltInCombos(){const{chartType:e,valueColState:t}=this.chartDataModel,i="columnLineCombo"===e?"groupedColumn":"stackedArea",s="columnLineCombo"===e?"line":"groupedColumn",o=t.filter(e=>e.selected),r=Math.ceil(o.length/2);this.seriesChartTypes=o.map((e,t)=>{const o=t>=r?s:i;return{colId:e.colId,chartType:o,secondaryAxis:!1}})}}t.ComboChartModel=r},18919:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ChartColumnService=void 0;const s=i(76624);class o extends s.BeanStub{constructor(){super(...arguments),this.valueColsWithoutSeriesType=new Set}wireBeans(e){this.colModel=e.colModel,this.colNames=e.colNames,this.valueSvc=e.valueSvc}postConstruct(){const e=()=>this.valueColsWithoutSeriesType.clear();this.addManagedEventListeners({newColumnsLoaded:e,rowDataUpdated:e})}getColumn(e){return this.colModel.getColDefCol(e)}getAllDisplayedColumns(){return this.beans.visibleCols.allCols}getColDisplayName(e){return this.colNames.getDisplayNameForColumn(e,"chart")}getColGroupDisplayName(e){return this.colNames.getDisplayNameForColumnGroup(e,"chart")}getRowGroupColumns(){return this.beans.rowGroupColsSvc?.columns??[]}getGroupDisplayColumns(){return this.beans.showRowGroupCols?.columns??[]}isPivotMode(){return this.colModel.isPivotMode()}isPivotActive(){return this.colModel.isPivotActive()}getChartColumns(){const e=this.colModel.getCols(),t=new Set,i=new Set;for(const o of e){const e=o.getColDef(),r=e.chartDataType;if(r)switch(r){case"category":case"time":t.add(o);continue;case"series":i.add(o);continue;case"excluded":continue;default:(0,s._warn)(153,{chartDataType:r})}"ag-Grid-AutoColumn"!==e.colId?o.isPrimary()?(this.isInferredValueCol(o)?i:t).add(o):i.add(o):t.add(o)}return{dimensionCols:t,valueCols:i}}isInferredValueCol(e){const t=e.getColId();if("ag-Grid-AutoColumn"===t)return!1;const i=(0,s._getRowNode)(this.beans,{rowIndex:0,rowPinned:null});if(!i)return this.valueColsWithoutSeriesType.has(t);let o=this.valueSvc.getValue(e,i,"data");null==o&&(o=this.extractLeafData(i,e)),null!=o&&("function"==typeof o.toNumber?o=o.toNumber():"number"==typeof o.value&&(o=o.value));const r="number"==typeof o||"number"===e.colDef.cellDataType||["series","time"].includes(e.colDef.chartDataType);return r?this.valueColsWithoutSeriesType.add(t):null==o&&"number"!==e.colDef.cellDataType&&(0,s._warn)(265,{colId:t}),r}extractLeafData(e,t){const i=e.data&&this.valueSvc.getValue(t,e,"data");if(null!=i)return i;const s=e.childrenAfterGroup;if(s)for(let e=0,i=s.length;e0&&i?.setFilterModel(null));let o=n(e);o.indexOf("-filtered-out")&&(o=o.replace("-filtered-out","")),this.updateFilters(s,e,o)}updateFilters(e,t,i){const o=n(t),a=this.convertRawValue(i,t.datum[o]);if(void 0===a)return;const l=this.beans.filterManager;l?.getColumnFilterInstance(i).then(o=>{const n=o?.filterType;let d,c=e=>e;if("multi"===n){const e=function(e){const t=e.getNumChildFilters();for(let i=0;ir(e,i,t)}}return{}}(o);d=e.setFilter,c=e.processModel??c}else"set"===n&&(d=o);if(!d)return void(0,s._warn)(154,{colId:i});const u=t.event.metaKey||t.event.ctrlKey,h=d.getFilterHandler().getCrossFilterModel((e,t,i)=>function(e,t,i,s){let o;if(e)if(i.has(t)&&(null==s||s.includes(t)))if(o=[],null==s)for(const e of i)e!==t&&o.push(e);else for(const e of s)e!==t&&i.has(e)&&o.push(e);else{if(null==s)o=Array.from(i);else{o=[];for(const e of s)i.has(e)&&o.push(e)}o.push(t)}else o=[t];return{filterType:"set",values:o}}(u,e(a),t,i)),g=c(h),p=u?{...e}:{};p[i]=g,l?.setFilterModel(p)})}convertRawValue(e,t){const{colModel:i,dataTypeSvc:s}=this.beans,o=i.getColById(e),r=o?.colDef;return r&&s&&"time"===r.chartDataType&&"dateString"===r.cellDataType?s.getDateFormatterFunction(o)(t):t}}function r(e,t,i){const s=new Array(i);for(let o=0;o!!o.includes(e)||((0,s._warn)(155,{option:e}),!1)):e}getChartToolPanels(e){const i=this.gos.get("chartToolPanelsDef"),o=i?.panels?.map(e=>{const i=t.CHART_TOOL_PANEL_MENU_OPTIONS[e];return i||(0,s._warn)(156,{panel:e}),i}).filter(e=>Boolean(e));let r=o??Object.values(t.CHART_TOOL_PANEL_MENU_OPTIONS);e.isPivotChart()&&(r=r.filter(e=>"chartData"!==e));const n=i?.defaultToolPanel;return{panels:r,defaultPanel:n&&t.CHART_TOOL_PANEL_MENU_OPTIONS[n]||r[0]}}doesChartToolbarExist(){return this.getChartToolbarOptions().length>0}doChartToolPanelsExist(e){const{panels:t}=this.getChartToolPanels(e);return t.length>0}}t.ChartMenuService=r},96297:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ChartOptionsService=void 0;const s=i(76624),o=i(22210),r=i(54237),n=["number","category","time","grouped-category"],a=[...n,"angle-category","angle-number","radius-category","radius-number"];class l extends s.BeanStub{constructor(e){super(),this.chartController=e}getChartThemeOverridesProxy(){return{getValue:e=>this.getChartOption(e),setValue:(e,t)=>this.setChartThemeOverrides([{expression:e,value:t}]),setValues:e=>this.setChartThemeOverrides(e)}}getAxisThemeOverridesProxy(){return{getValue:e=>this.getAxisProperty(e),setValue:(e,t)=>this.setAxisThemeOverrides([{expression:e,value:t}]),setValues:e=>this.setAxisThemeOverrides(e)}}getCartesianAxisOptionsProxy(e){return{getValue:t=>this.getCartesianAxisProperty(e,t),setValue:(t,i)=>this.setCartesianAxisOptions(e,[{expression:t,value:i}]),setValues:t=>this.setCartesianAxisOptions(e,t),clearValue:(t,i)=>this.clearCartesianAxisOptions(e,t,i)}}getCartesianAxisThemeOverridesProxy(e){return{getValue:t=>this.getCartesianAxisProperty(e,t),setValue:(t,i)=>this.setCartesianAxisThemeOverrides(e,[{expression:t,value:i}]),setValues:t=>this.setCartesianAxisThemeOverrides(e,t)}}getCartesianAxisAppliedThemeOverridesProxy(e){return{getValue:t=>this.getCartesianAxisThemeOverride(e,"*"===t?null:t),setValue:(t,i)=>this.setCartesianAxisThemeOverrides(e,[{expression:"*"===t?null:t,value:i}]),setValues:t=>this.setCartesianAxisThemeOverrides(e,t)}}getSeriesOptionsProxy(e){return{getValue:(t,i)=>this.getSeriesOption(e(),t,i),setValue:(t,i)=>this.setSeriesOptions(e(),[{expression:t,value:i}]),setValues:t=>this.setSeriesOptions(e(),t)}}getPersistedChartThemeOverrides(e,t,i,s){const o=this.getRetainedChartThemeOverrideKeys(i,s),r=this.getRetainedChartAxisThemeOverrideKeys(null,i,s),n=this.createChartOptions();for(const t of o){const o=this.retrieveChartOptionsThemeOverride(e,i,t);void 0!==o&&this.assignChartOptionsThemeOverride(n,s,t,o)}return t&&this.assignPersistedAxisOverrides({existingAxes:t,retainedChartAxisThemeOverrideKeys:r,existingChartOptions:e,targetChartOptions:n,existingChartType:i,targetChartType:s}),n.theme.overrides}assignPersistedAxisOverrides(e){const{existingAxes:t,retainedChartAxisThemeOverrideKeys:i,existingChartOptions:s,targetChartOptions:o,existingChartType:r,targetChartType:n}=e;for(const{expression:e,targetAxisTypes:a}of i)for(const i of t.map(e=>e.type)){const t=this.retrieveChartOptionsThemeOverride(s,r,["axes",i,e].join("."));if(void 0!==t)for(const i of a)this.assignChartOptionsThemeOverride(o,n,["axes",i,e].join("."),t)}}getRetainedChartThemeOverrideKeys(e,t){const i=["zoom","navigator"];return["animation",...((e,t)=>{const s=new Array;return(0,r.isCartesian)((0,r.getSeriesType)(e))&&(0,r.isCartesian)((0,r.getSeriesType)(t))&&s.push(...i),s})(e,t)]}getRetainedChartAxisThemeOverrideKeys(e,t,i){if((0,r.isCartesian)((0,r.getSeriesType)(t))&&(0,r.isCartesian)((0,r.getSeriesType)(i))){return this.getRetainedCartesianAxisThemeOverrideKeys(e).map(e=>({expression:e,targetAxisTypes:n}))}return[]}getRetainedCartesianAxisThemeOverrideKeys(e){const t="xAxis"===e?["",".top",".bottom"]:"yAxis"===e?["",".left",".right"]:["",".left",".right",".top",".bottom"],i=["crosshair"],s=new Array;for(const e of i)for(const i of t)s.push(`${e}${i}`);return s}getChartOption(e){return(0,o.get)(this.getChart(),e,void 0)}setChartThemeOverrides(e){const t=this.getChartType(),i=this.createChartOptions();for(const{expression:s,value:o}of e)this.assignChartOptionsThemeOverride(i,t,s,o);this.applyChartOptions(i)}applyChartOptions(e,t){if(0===Object.keys(e).length)return;this.updateChart(e);!t?.silent&&this.raiseChartOptionsChangedEvent()}awaitChartOptionUpdate(e){this.chartController.getChartProxy().getChart().waitForUpdate().then(()=>e()).catch(e=>(0,s._error)(108,{e:e}))}getAxisProperty(e){return(0,o.get)(this.getChart().axes?.x,e,void 0)}setAxisThemeOverrides(e){const t=this.getChart(),i=this.getChartType(),s=this.createChartOptions();for(const{expression:o,value:r}of e){const e=Object.values(t.axes??{}).filter(e=>{const t=o.split(".");let i=e;for(const e of t){if(!(e in i))return!1;i=i[e]}return!0});if(e)for(const t of e)this.isValidAxisType(t)&&this.assignChartAxisThemeOverride(s,i,t.type,null,o,r)}this.applyChartOptions(s)}getCartesianAxisProperty(e,t){const i=this.getChartAxes(),s=this.getCartesianAxis(i,e);return(0,o.get)(s,t,void 0)}getCartesianAxisThemeOverride(e,t){const i=this.getChartAxes(),s=this.getCartesianAxis(i,e);if(!s||!this.isValidAxisType(s))return;const o=this.getChartType(),r=this.getChart().getOptions();return this.retrieveChartAxisThemeOverride(r,o,s.type,"yAxis"===e?["left","right"]:["bottom","top"],t)}setCartesianAxisThemeOverrides(e,t){const i=this.getChartAxes(),s=this.getCartesianAxis(i,e);if(!s||!this.isValidAxisType(s))return;const o=this.getChartType(),r=this.createChartOptions();for(const{expression:i,value:n}of t)this.assignChartAxisThemeOverride(r,o,s.type,"yAxis"===e?["left","right"]:["bottom","top"],i,n);this.applyChartOptions(r)}setCartesianAxisOptions(e,t){this.updateCartesianAxisOptions(e,i=>{const s="yAxis"===e?"y":"x";for(const{expression:e,value:o}of t)this.assignChartOption(i,`axes.${s}.${e}`,o)})}clearCartesianAxisOptions(e,t,i){this.updateCartesianAxisOptions(e,s=>{const o="yAxis"===e?"y":"x";this.clearChartOption(s,`axes.${o}.${t}`,i)})}updateCartesianAxisOptions(e,t){const i=this.getChart().getOptions(),s="axes"in i?i.axes:void 0;if(!i||!s)return;const o=this.getChartAxes(),r=this.getCartesianAxis(o,e);if(!r)return;const n=this.createChartOptions();n.axes=s,t(n,r,i),this.applyChartOptions(n)}setCartesianCategoryAxisType(e,t){this.updateCartesianAxisOptions(e,(i,s,o)=>{const r=this.getChartType();this.assignPersistedAxisOverrides({existingAxes:[s],retainedChartAxisThemeOverrideKeys:this.getRetainedChartAxisThemeOverrideKeys(e,r,r),existingChartOptions:o,targetChartOptions:i,existingChartType:r,targetChartType:r}),this.assignChartOption(i,"axes.x.type",t),this.chartController.setCategoryAxisType(t)})}getCartesianAxis(e,t){if(!(e.length<2))switch(t){case"xAxis":return"x"===e[0].direction?e[0]:e[1];case"yAxis":return"y"===e[1].direction?e[1]:e[0]}}getSeriesOption(e,t,i){const s=this.getChart().series.find(t=>function(e,t){return(0,r.isSeriesType)(e)&&t.type===e}(e,t));return(0,o.get)(i?s:s?.properties.toJson(),t,void 0)}setSeriesOptions(e,t){const i=this.createChartOptions();for(const{expression:s,value:o}of t)this.assignChartOptionsSeriesThemeOverride(i,e,`series.${s}`,o);this.applyChartOptions(i)}getPairedMode(){return this.chartController.getChartProxy().isPaired()}setPairedMode(e){this.chartController.getChartProxy().setPaired(e)}getChartAxes(){const e=this.getChart();return Object.values(e.axes??{})}retrieveChartAxisThemeOverride(e,t,i,s,o){if(!s)return this.retrieveChartOptionsThemeOverride(e,t,["axes",i,...o?[o]:[]].join("."));for(const r of s){const s=this.retrieveChartOptionsThemeOverride(e,t,["axes",i,r,...o?[o]:[]].join("."));if(void 0!==s)return s}}assignChartAxisThemeOverride(e,t,i,s,o,r){if(s)for(const n of s)this.assignChartOptionsThemeOverride(e,t,["axes",i,n,...o?[o]:[]].join("."),r);else this.assignChartOptionsThemeOverride(e,t,["axes",i,...o?[o]:[]].join("."),r)}isValidAxisType(e){return a.includes(e.type)}getChartType(){return this.chartController.getChartType()}getChart(){return this.chartController.getChartProxy().getChart()}updateChart(e){const t=this.chartController.getChartProxy().getChartRef();t.skipAnimations(),t.updateDelta(e)}createChartOptions(){return{theme:{overrides:{}}}}retrieveChartOptionsThemeOverride(e,t,i){const s=this.getChartThemeOverridesSeriesTypeKeys(t);for(const t of s){const s=this.retrieveChartOptionsSeriesThemeOverride(e,t,i);if(void 0!==s)return s}}assignChartOptionsThemeOverride(e,t,i,s){const o=this.getChartThemeOverridesSeriesTypeKeys(t);for(const t of o)this.assignChartOptionsSeriesThemeOverride(e,t,i,s)}retrieveChartOptionsSeriesThemeOverride(e,t,i){return this.retrieveChartOption(e,["theme","overrides",t,...i?[i]:[]].join("."))}assignChartOptionsSeriesThemeOverride(e,t,i,s){this.assignChartOption(e,["theme","overrides",t,...i?[i]:[]].join("."),s)}getChartThemeOverridesSeriesTypeKeys(e){const t=this.chartController.getChartSeriesTypes(e);return this.chartController.isComboChart()&&t.push("common"),t}retrieveChartOption(e,t){return(0,o.get)(e,t,void 0)}assignChartOption(e,t,i){(0,o.set)(e,t,i)}clearChartOption(e,t,i){const s=(0,o.get)(e,t,void 0);s&&delete s[i]}raiseChartOptionsChangedEvent(){const e=this.chartController.getChartModel();this.eventSvc.dispatchEvent({type:"chartOptionsChanged",chartId:e.chartId,chartType:e.chartType,chartThemeName:this.chartController.getChartThemeName(),chartOptions:e.chartOptions})}}t.ChartOptionsService=l},82474:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ChartTranslationService=void 0;const s=i(76624),o={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",stackedLineTooltip:"Stacked",normalizedLineTooltip:"100% Stacked",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",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",stackedLineFull:"Stacked Line",normalizedLineFull:"100% Stacked Line",customCombo:"Custom Combination",funnel:"Funnel",coneFunnel:"Cone Funnel",pyramid:"Pyramid",funnelGroup:"Funnel",funnelTooltip:"Funnel",coneFunnelTooltip:"Cone Funnel",pyramidTooltip:"Pyramid",dropOff:"Drop-Off",stageLabels:"Stage Labels",reverse:"Reverse",tooltipMode:"Tooltip Mode",tooltipModeSingle:"Single",tooltipModeShared:"Multiple",tooltipModeCompact:"Compact",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"};class r extends s.BeanStub{constructor(){super(...arguments),this.beanName="chartTranslation"}translate(e){return this.getLocaleTextFunc()(e,o[e])}}t.ChartTranslationService=r},12753:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.getLegacyAxisType=t.ALL_AXIS_TYPES=void 0,t.ALL_AXIS_TYPES=["number","category","grouped-category","log","time"],t.getLegacyAxisType=function(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"stackedLine":case"normalizedLine":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}}},18889:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.validateCreateParams=t.validateUpdateParams=void 0;const s=i(76624),o=i(54237),r=e=>t=>null==t||e(t),n=e=>"string"==typeof e,a=e=>"boolean"==typeof e,l=e=>"object"==typeof e,d=(e,t)=>i=>`AG Grid - unable to update chart as invalid params supplied: \`${e}: ${i}\`, expected ${t}.`,c=e=>`${e} is not supported in AG Charts Community ('ag-charts-enterprise' hasn't been loaded). See https://www.ag-grid.com/javascript-data-grid/integrated-charts-installation/ for more details.`,u=["doughnut"],h=["type","chartId","chartType","chartThemeName","chartThemeOverrides","unlinkChart"];const g=r(e=>{if(t=e,(0,o.getSeriesTypeIfExists)(t)||(0,o.isComboChart)(t))return!0;var t;if(function(e){return u.includes(e)}(e)){const t=(0,o.getCanonicalChartType)(e);return(0,s._warnOnce)(`The chart type '${e}' has been deprecated. Please use '${t}' instead.`),t}return!1}),p=r(e=>"object"==typeof e),m=r(e=>"object"==typeof e),f=r(e=>"string"==typeof e||"function"==typeof e),C=e=>({property:"chartType",validationFn:r(t=>e||!t||!(0,o.isEnterpriseChartType)(t)),warnMessage:e=>c(`The '${e}' chart type`)}),v=e=>({property:"switchCategorySeries",validationFn:r(t=>{if(!t||e)return!0}),warnMessage:()=>c("'switchCategorySeries' has been ignored as it"),warnIfFixed:!0}),w=()=>[{property:"chartId",validationFn:n,warnMessage:d("chartId","string")},{property:"chartType",validationFn:g,warnMessage:d("chartType","ChartType")},{property:"chartThemeName",validationFn:n,warnMessage:d("chartThemeName","string")},{property:"chartThemeOverrides",validationFn:p,warnMessage:d("chartThemeOverrides","AgChartThemeOverrides")},{property:"unlinkChart",validationFn:a,warnMessage:d("unlinkChart","boolean")}],b=e=>[{property:"cellRange",validationFn:m,warnMessage:d("cellRange","ChartParamsCellRange")},{property:"suppressChartRanges",validationFn:a,warnMessage:d("suppressChartRanges","boolean")},{property:"aggFunc",validationFn:f,warnMessage:d("aggFunc","string or IAggFunc")},v(e)];function y(e,t,i,o){let r;for(const i of t){const{property:t,validationFn:o,warnMessage:n,warnIfFixed:a}=i;if(t in e){const i=e[t],l=o(i);if(!0===l)continue;if(!1===l)return(0,s._warnOnce)(n(i)),!1;r=r||{...e},r[t]=l,a&&(0,s._warnOnce)(n(i))}}if(i)for(const t of Object.keys(e))if(!i.includes(t))return(0,s._warnOnce)(`Unexpected property supplied. ${o} does not contain: \`${t}\`.`),!1;return r||!0}t.validateUpdateParams=function(e,t){switch(e.type){case"rangeChartUpdate":return function(e,t){const i=[...w(),C(t),...b(t),{property:"seriesChartTypes",validationFn:e=>void 0===e||Array.isArray(e)&&e.every(l),warnMessage:d("seriesChartTypes","Array of SeriesChartType")},{property:"useGroupColumnAsCategory",validationFn:a,warnMessage:d("useGroupColumnAsCategory","boolean")}];return y(e,i,[...h,"cellRange","suppressChartRanges","switchCategorySeries","aggFunc","seriesChartTypes","seriesGroupType","useGroupColumnAsCategory"],"UpdateRangeChartParams")}(e,t);case"pivotChartUpdate":return function(e){const t=[...w()];return y(e,t,[...h],"UpdatePivotChartParams")}(e);case"crossFilterChartUpdate":return function(e,t){const i=[...w(),...b(t)];return y(e,i,[...h,"cellRange","suppressChartRanges","aggFunc"],"UpdateCrossFilterChartParams")}(e,t);default:return(0,s._warnOnce)(`Invalid value supplied for 'type': ${e.type}. It must be either 'rangeChartUpdate', 'pivotChartUpdate', or 'crossFilterChartUpdate'.`),!1}},t.validateCreateParams=function(e,t){return y(e,[C(t),v(t)])}},19687:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.deproxy=void 0,t.deproxy=function(e){return null!=e.chart?e.chart:e}},22210:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.set=t.get=void 0;const i=new Set(["__proto__","constructor","prototype"]);t.get=function(e,t,i){if(null==e)return i;const s=t.split(".");let o=e;for(;s.length>1;)if(o=o[s.shift()],null==o)return i;const r=o[s[0]];return null!=r?r:i},t.set=function(e,t,s){if(null==e)return;const o=t.split(".");let r=e;o.filter(e=>!i.has(e)).forEach((e,t)=>{r[e]||(r[e]={}),t({type:e,...0===t?s:o}));return{chartType:t,chartThemeName:{borneo:"ag-default",material:"ag-material",bright:"ag-vivid"}[i]??"ag-default",chartOptions:{...n,axes:d,xAxis:s,yAxis:o},...a}}function c(e){return e=I("chartOptions.seriesDefaults.label.minRequiredAngle","minAngle",e)}function u(e){return e=k("chart",e=O("chartOptions.seriesDefaults.highlightStyle",e,({dimOpacity:e,...t})=>({...t,...null!=e?{series:{dimOpacity:e}}:{}}))),e=k("chartOptions.seriesDefaults.tooltipClass",e),e=M("chartOptions.axes[].label.rotation",0,e=k("chartOptions.seriesDefaults.tooltipTracking",e)),e=M("chartOptions.axes[].label.rotation",335,e)}function h(e){const t=({item:e,series:t,...i})=>({item:{...i,...e},...t?{series:t}:{}});return e=O("chartOptions.seriesDefaults.highlightStyle",e,t),e=O("chartOptions.series[].highlightStyle",e,t)}function g(e){e=T("chartOptions.seriesDefaults.fill.opacity","chartOptions.seriesDefaults.fillOpacity",e),e=T("chartOptions.seriesDefaults.stroke.opacity","chartOptions.seriesDefaults.strokeOpacity",e),e=k("chartOptions.seriesDefaults.fill",e=T("chartOptions.seriesDefaults.stroke.width","chartOptions.seriesDefaults.strokeWidth",e)),e=k("chartOptions.seriesDefaults.stroke",e),e=k("chartOptions.seriesDefaults.callout.colors",e),e=k("chartOptions.xAxis",e),e=k("chartOptions.yAxis",e);const{chartType:t,chartOptions:{axes:i,series:s,seriesDefaults:o,...a},...l}=e,d=(0,n.getCanonicalChartType)(t),c=(0,n.getSeriesType)(d),u=[c],h={};if(!(0,n.isPieChartSeries)(c)){const e={top:{},bottom:{},left:{},right:{}},t=i.map(({type:t,...i})=>({[t]:{...e,...i}})).reduce(N,{});for(const i of r.ALL_AXIS_TYPES.filter(e=>null==t[e]))t[i]={...e};h.axes=t}return e={...l,chartType:d,chartOptions:u.map(e=>({[e]:{...h,series:o,...a}})).reduce(N,{})}}function p(e){return e=k("chartOptions.*.title.padding",e),e=k("chartOptions.*.subtitle.padding",e),e=E("chartOptions.*.axes.*.title.enabled",!1,e=k("chartOptions.*.axes.*.title.padding",e))}function m(e){return e=I("chartOptions.pie.series.callout","calloutLine",e),e=I("chartOptions.pie.series.label","calloutLabel",e),e=I("chartOptions.pie.series.labelKey","sectorLabelKey",e),e=I("chartOptions.pie.series.labelName","sectorLabelName",e),e=I("chartOptions.donut.series.callout","calloutLine",e),e=I("chartOptions.donut.series.label","calloutLabel",e),e=I("chartOptions.donut.series.labelKey","sectorLabelKey",e),e=I("chartOptions.donut.series.labelName","sectorLabelName",e)}function f(e){return e=D("chartOptions.scatter.series.fill","chartOptions.scatter.series.marker.fill",e),e=D("chartOptions.scatter.series.fillOpacity","chartOptions.scatter.series.marker.fillOpacity",e),e=D("chartOptions.scatter.series.stroke","chartOptions.scatter.series.marker.stroke",e),e=D("chartOptions.scatter.series.strokeOpacity","chartOptions.scatter.series.marker.strokeOpacity",e),e=T("chartOptions.scatter.series.paired","chartOptions.scatter.paired",e=D("chartOptions.scatter.series.strokeWidth","chartOptions.scatter.series.marker.strokeWidth",e))}function C(e){return e=k("chartOptions.axes[].tick.count",e)}function v(e){return e=O("chartOptions.*.tooltip",e,({tracking:e,...t})=>{const i={...t};return!1===e?(i.position??(i.position={type:"pointer"}),i.range??(i.range="nearest")):!0===e&&(i.position??(i.position={type:"node"}),i.range??(i.range="nearest")),i})}function w(e){return e=I("chartOptions.pie.series.labelKey","sectorLabelKey",e),e=E("chartOptions.common.legend.position","right",e=A("chartOptions.common.legend.enabled",!0,e=k("chartOptions.*.series.flipXY",e=v(e=C(e=I("chartOptions.pie.series.labelName","sectorLabelName",e))))))}function b(e){const t=I("chartOptions.column","bar",e),i={"ag-pastel":"ag-sheets","ag-solar":"ag-polychroma"}[t.chartThemeName]||t.chartThemeName;return{...t,chartThemeName:i}}function y(e){return e=L("chartOptions.*.autoSize",!0,e,(e,t)=>{!0===e[t]||!1===e[t]&&(e.minHeight=600,e.minWidth=300),delete e[t]})}function S(e){return e=k("chartOptions.*.axes.category.label.format",e),e=k("chartOptions.*.axes.category.crosshair.label.format",e),e=k("chartOptions.*.axes.angle-category.label.format",e),e=I("chartOptions.*.axes.*.label.padding","spacing",e=k("chartOptions.*.axes.radius-category.label.format",e)),e=k("chartOptions.*.axes.*.crossLines.label.className",e=I("chartOptions.*.navigator.miniChart.label.padding","spacing",e)),e=G("chartOptions.bar.series.label.placement",e=k("chartOptions.bullet",e=L("chartOptions.*.axes.*.crossLines.label.position",!0,e,(e,t)=>{"string"==typeof e[t]&&(e[t]=e[t].replace(/([A-Z])/,"-$1").toLowerCase())})),{inside:"inside-center",outside:"inside-end"}),e=k("chartOptions.*.navigator.min",e=G("chartOptions.waterfall.series.item.*.label.placement",e,{inside:"inside-center",start:"outside-start",end:"outside-end"})),e=k("chartOptions.*.navigator.max",e),e=k("chartOptions.*.zoom.ratioX",e),e=k("chartOptions.*.zoom.ratioY",e),e=k("chartOptions.*.zoom.rangeX",e),e=k("chartOptions.*.zoom.rangeY",e)}function x(e){return L("chartOptions.series[].highlightStyle",!0,e,(e,t)=>{const i=e[t];if(null==i)return;const s={};if(i.item&&(s.highlightedItem=i.item),i.series){const{dimOpacity:e,...t}=i.series;null!=e&&(s.unhighlightedSeries={opacity:e}),Object.keys(t).length>0&&(s.highlightedSeries=t)}delete e[t],e.highlight=s}),e}function F(e){const t=e;if(null!=e.version)return e.version;const i=(e,...t)=>Object.keys(e||{}).some(e=>t.includes(e)),s=t.chartOptions,o=i(s,"seriesDefaults")?s?.seriesDefaults:s?.[Object.keys(s)[0]],r={"27.0.0":i(t,"seriesChartTypes"),"26.2.0":!i(s,"seriesDefaults"),"26.1.0":i(o?.highlightStyle,"item"),"26.0.0":i(o?.highlightStyle,"series"),"25.1.0":i(o?.label,"minAngle"),"25.0.0":i(t,"modelType","aggFunc","unlinkChart","suppressChartRanges")||i(o,"lineDash","lineDashOffset"),"24.0.0":i(t,"chartThemeName","chart")||i(s,"series"),"23.2.0":i(s,"navigator"),"23.0.0":i(s?.legend?.item?.marker,"shape"),"22.1.0":i(t,"chartPalette","chartType")},n="27.1.0",a=Object.entries(r).filter(([e,t])=>t);const[l=n]=a[0];return l}function R(e,t,i){if(P(e)>P(t.version)){a;const s=i(t);return s.version=e,s}return t}function P(e){const{major:t,minor:i,patch:o}=function(e){const t=e.includes("-beta")?e.replace(/-beta.*/,""):e,i="string"==typeof t?t.split(".").map(e=>Number(e)):[];if(3!==i.length||i.some(e=>isNaN(e)))throw new Error((0,s._errMsg)(253,{version:t}));return{major:i[0],minor:i[1],patch:i[2]}}(e);return 1e4*t+100*i+o}function M(e,t,i){return L(e,!0,i,(e,i)=>{e[i]===t&&delete e[i]})}function E(e,t,i){return L(e,!1,i,(e,i)=>{null==e[i]&&(e[i]=t)})}function A(e,t,i){"string"==typeof e&&(e=e.split("."));const s=e[0];e.length>1&&(i[s]=A(e.slice(1),t,i[s]??{}));return Object.keys(i).includes(s)||(i[s]=t),i}function T(e,t,i){let s,o=!1;return i=L(e,!0,i,(e,t)=>{o=!0,s=e[t],delete e[t]}),o?L(t,!1,i,(e,t)=>{e[t]=s}):i}function D(e,t,i){let s,o=!1;return i=L(e,!0,i,(e,t)=>{o=!0,s=e[t],delete e[t]}),o?L(t,!1,i,(e,t)=>{void 0===e[t]&&(e[t]=s)}):i}function I(e,t,i){return L(e,!0,i,(e,i)=>{e[t]=e[i],delete e[i]})}function k(e,t){return L(e,!0,t,(e,t)=>delete e[t])}function L(e,t,i,s){const o=e instanceof Array?e:e.split("."),r=o.slice(0,o.length-1),n=o[o.length-1];return O(r,i,e=>{const i=Object.keys(e).includes(n);if(t&&!i)return e;const o={...e};return s(o,n),o})}function O(e,t,i){const s=e instanceof Array?e:e.split(".");if(t={...t},0===s.length)return i(t);if(s[0].startsWith("{")){const e=s[0].substring(1,s[0].lastIndexOf("}")).split(",");for(const o of e)null!=t[o]&&(t[o]=O(s.slice(1),t[o],i))}else if(s[0].endsWith("[]")){const o=s[0].substring(0,e[0].indexOf("["));t[o]instanceof Array&&(t[o]=t[o].map(e=>O(s.slice(1),e,i)))}else if("*"===s[0])for(const e of Object.keys(t))t[e]=O(s.slice(1),t[e],i);else null!=t[s[0]]&&(t[s[0]]=O(s.slice(1),t[s[0]],i));return t}function G(e,t,i){return L(e,!0,t,(e,t)=>{"string"==typeof e[t]&&(e[t]=i[t]??t)})}t.upgradeChartModel=function(e){return e.version,null==e.version&&(e.version=F(e)),e=R("23.0.0",e,l),e=R("24.0.0",e,d),e=R("25.1.0",e,c),e=R("26.0.0",e,u),e=R("26.1.0",e,h),e=R("26.2.0",e,g),e=R("28.0.0",e,p),e=R("28.2.0",e,m),e=R("29.0.0",e,f),e=R("29.1.0",e,C),e=R("29.2.0",e,v),e=R("30.0.0",e,w),e=R("31.0.0",e,b),e=R("32.0.0",e,y),e=R("33.0.0",e,S),e=function(e){return e=k("chartOptions.*.width",e),e=k("chartOptions.*.height",e),e=E("chartOptions.*.axes.category.label.autoRotate",!0,e),e}(e=R("34.0.0",e,x)),e=R(o.VERSION,e,e=>e)},t.heuristicVersionDetection=F;const N=(e,t)=>({...e,...t})},10100:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ChartService=void 0;const s=i(76624),o=i(19586),r=i(17760),n=i(18889),a=i(54237),l=i(76476);class d extends s.BeanStub{constructor(){super(...arguments),this.beanName="chartSvc",this.activeCharts=new Set,this.activeChartComps=new Set,this.crossFilteringContext={lastSelectedChartId:""},this.isEnterprise=()=>this.agChartsExports.isEnterprise}wireBeans(e){this.visibleCols=e.visibleCols,this.rangeSvc=e.rangeSvc,this.agChartsExports=e.agChartsExports}updateChart(e){if(0===this.activeChartComps.size)return void(0,s._warn)(124);const t=[...this.activeChartComps].find(t=>t.getChartId()===e.chartId);t?t.update(e):(0,s._warn)(125,{chartId:e.chartId})}getChartModels(){const e=[],t=e=>({...e,version:o.VERSION});for(const i of this.activeChartComps)e.push(t(i.getChartModel()));return e}getChartRef(e){let t;for(const i of this.activeCharts)i.chartId===e&&(t=i);return t}getChartComp(e){let t;for(const i of this.activeChartComps)i.getChartId()===e&&(t=i);return t}getChartImageDataURL(e){let t;for(const i of this.activeChartComps)i.getChartId()===e.chartId&&(t=i.getChartImageDataURL(e.fileFormat));return t}downloadChart(e){const t=Array.from(this.activeChartComps).find(t=>t.getChartId()===e.chartId);t?.downloadChart(e.dimensions,e.fileName,e.fileFormat)}openChartToolPanel(e){const t=Array.from(this.activeChartComps).find(t=>t.getChartId()===e.chartId);t?.openChartToolPanel(e.panel)}closeChartToolPanel(e){const t=Array.from(this.activeChartComps).find(t=>t.getChartId()===e);t?.closeChartToolPanel()}createChartFromCurrentRange(e="groupedColumn",t){const i=this.getSelectedRange();return this.createChart({cellRange:i,chartType:e,focusDialogOnOpen:!t})}restoreChart(e,t){if(!e)return void(0,s._warn)(126);let i,r,n,a;return e.version!==o.VERSION&&(e=(0,l.upgradeChartModel)(e)),"pivot"===e.modelType?(this.gos.updateGridOptions({options:{pivotMode:!0},source:"pivotChart"}),i=this.createCellRange(void 0,!0),r=!0,n=!0):(i=this.createCellRange(e.cellRange),a=e.chartPalette,n=e.suppressChartRanges),i?this.createChart({...e,cellRange:i,pivotChart:r,suppressChartRanges:n,chartContainer:t,chartOptionsToRestore:e.chartOptions,chartPaletteToRestore:a}):void 0}createRangeChart(e,t){const i=this.createCellRange(e.cellRange);if(i)return this.createChart({...e,cellRange:i,focusDialogOnOpen:!t})}createPivotChart(e,t){this.gos.updateGridOptions({options:{pivotMode:!0},source:"pivotChart"});const i=this.createCellRange(void 0,!0);if(i)return this.createChart({...e,cellRange:i,pivotChart:!0,suppressChartRanges:!0,focusDialogOnOpen:!t})}createCrossFilterChart(e,t){const i=this.createCellRange(e.cellRange);if(!i)return;const s=!(void 0!==e.suppressChartRanges&&null!==e.suppressChartRanges)||e.suppressChartRanges;return this.createChart({...e,cellRange:i,suppressChartRanges:s,crossFiltering:!0,crossFilteringSort:e.sort,focusDialogOnOpen:!t})}createChart(e){const t=(0,n.validateCreateParams)(e,this.agChartsExports.isEnterprise);if(!t)return;e=!0===t?e:t;const{chartType:i,chartContainer:s}=e,o=this.gos.getCallback("createChartContainer"),l={...e,chartId:this.generateId(),chartType:(0,a.getCanonicalChartType)(i),insideDialog:!(s||o),crossFilteringContext:this.crossFilteringContext,crossFilteringResetCallback:()=>{for(const e of this.activeChartComps)e.crossFilteringReset()}},d=new r.GridChartComp(l);this.createBean(d);const c=this.createChartRef(d);return s?s.appendChild(c.chartElement):o?o(c):d.addEventListener("destroyed",()=>{this.activeChartComps.delete(d),this.activeCharts.delete(c)}),c}createChartRef(e){const t={destroyChart:()=>{this.activeCharts.has(t)&&(this.destroyBean(e),this.activeChartComps.delete(e),this.activeCharts.delete(t))},focusChart:()=>{(0,s._focusInto)(e.getGui())},chartElement:e.getGui(),chart:e.getUnderlyingChart(),chartId:e.getChartModel().chartId,setMaximized:e.setMaximized.bind(e)};return this.activeCharts.add(t),this.activeChartComps.add(e),t}getSelectedRange(){const e=this.rangeSvc?.getCellRanges();if(!e||0===e.length)return{columns:[]};const t=new Set;let i=Number.MAX_VALUE,s=-Number.MAX_VALUE;for(const{startRow:o,endRow:r,columns:n}of e){if(!o||!r)continue;for(const e of n)t.add(e);let{rowIndex:e,rowPinned:a}=o,{rowIndex:l,rowPinned:d}=r;if("top"===a){if("top"===d)continue;e=0}if("bottom"===d){if("bottom"===a)continue;l=this.beans.pageBounds.getLastRow()}void 0!==e&&(i=Math.min(i,e)),void 0!==l&&(s=Math.max(s,l))}if(i===Number.MAX_VALUE||s===-Number.MAX_VALUE)return{columns:[]};const o=Array.from(t);return{columns:o,startColumn:o[0],startRow:{rowIndex:i,rowPinned:void 0},endRow:{rowIndex:s,rowPinned:void 0}}}generateId(){return`id-${Math.random().toString(36).substring(2,18)}`}createCellRange(e,t){const i=t?{rowStartIndex:null,rowStartPinned:void 0,rowEndIndex:null,rowEndPinned:void 0,columns:this.visibleCols.allCols.map(e=>e.getColId())}:e,o=i&&this.rangeSvc?.createPartialCellRangeFromRangeParams(i,!0);return o||(0,s._warn)(127,{allRange:t}),o}destroy(){for(const e of this.activeCharts)e.destroyChart();super.destroy()}}t.ChartService=d},54604:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.restoreChart=t.updateChart=t.createCrossFilterChart=t.createPivotChart=t.createRangeChart=t.closeChartToolPanel=t.openChartToolPanel=t.downloadChart=t.getChartImageDataURL=t.getChartRef=t.getChartModels=void 0,t.getChartModels=function(e){return e.frameworkOverrides.wrapIncoming(()=>e.chartSvc?.getChartModels())},t.getChartRef=function(e,t){return e.frameworkOverrides.wrapIncoming(()=>e.chartSvc?.getChartRef(t))},t.getChartImageDataURL=function(e,t){return e.frameworkOverrides.wrapIncoming(()=>e.chartSvc?.getChartImageDataURL(t))},t.downloadChart=function(e,t){return e.frameworkOverrides.wrapIncoming(()=>e.chartSvc?.downloadChart(t))},t.openChartToolPanel=function(e,t){return e.frameworkOverrides.wrapIncoming(()=>e.chartSvc?.openChartToolPanel(t))},t.closeChartToolPanel=function(e,t){return e.frameworkOverrides.wrapIncoming(()=>e.chartSvc?.closeChartToolPanel(t.chartId))},t.createRangeChart=function(e,t){return e.frameworkOverrides.wrapIncoming(()=>e.chartSvc?.createRangeChart(t,!0))},t.createPivotChart=function(e,t){return e.frameworkOverrides.wrapIncoming(()=>e.chartSvc?.createPivotChart(t,!0))},t.createCrossFilterChart=function(e,t){return e.frameworkOverrides.wrapIncoming(()=>e.chartSvc?.createCrossFilterChart(t,!0))},t.updateChart=function(e,t){return e.frameworkOverrides.wrapIncoming(()=>e.chartSvc?.updateChart(t))},t.restoreChart=function(e,t,i){return e.frameworkOverrides.wrapIncoming(()=>e.chartSvc?.restoreChart(t,i))}},24806:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.integratedChartsModuleCSS=void 0,t.integratedChartsModuleCSS='.ag-chart{display:flex;height:100%;position:relative;width:100%}.ag-chart-components-wrapper{display:flex}.ag-chart-canvas-wrapper,.ag-chart-components-wrapper{flex:1 1 auto;position:relative}.ag-chart-menu{background:var(--ag-background-color);background-color:color-mix(in srgb,transparent,var(--ag-background-color) 30%);border-radius:var(--ag-border-radius);display:flex;flex-direction:row;gap:20px;padding:4px 2px;position:absolute;top:8px;width:auto;--ag-icon-size:20px}:where(.ag-ltr) .ag-chart-menu{justify-content:right;right:calc(var(--ag-cell-horizontal-padding) + var(--ag-spacing) - 4px)}:where(.ag-rtl) .ag-chart-menu{justify-content:left;left:calc(var(--ag-cell-horizontal-padding) + var(--ag-spacing) - 4px)}.ag-chart-docked-container{min-width:var(--ag-chart-menu-panel-width);position:relative}:where(.ag-chart-menu-hidden)~.ag-chart-docked-container{display:none}.ag-chart-tabbed-menu{display:flex;flex-direction:column;height:100%;overflow:hidden;width:100%}.ag-chart-tabbed-menu-header{cursor:default;flex:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.ag-chart-tabbed-menu-body{align-items:stretch;display:flex;flex:1 1 auto;overflow:hidden;position:relative}.ag-chart-tabbed-menu-body:after{background:linear-gradient(var(--ag-background-color),transparent);content:"";display:block;height:16px;left:0;position:absolute;right:0;top:0}.ag-chart-tab{overflow:hidden;overflow-y:auto;width:100%}.ag-chart-settings{overflow-x:hidden}.ag-chart-settings-wrapper{display:flex;flex-direction:column;height:100%;overflow:hidden;position:relative;width:100%}.ag-chart-settings-nav-bar{align-items:center;border-top:solid var(--ag-border-width) var(--ag-border-color);display:flex;height:30px;padding:0 10px;-webkit-user-select:none;-moz-user-select:none;user-select:none;width:100%}.ag-chart-settings-card-selector{align-items:center;display:flex;flex:1 1 auto;height:100%;justify-content:space-around;padding:0 10px}.ag-chart-settings-card-item{background-color:var(--ag-foreground-color);border-radius:4px;cursor:pointer;height:8px;position:relative;width:8px;&.ag-not-selected{opacity:.2}&.ag-selected{background-color:var(--ag-accent-color)}}.ag-chart-settings-card-item:before{background-color:transparent;content:" ";display:block;height:20px;left:50%;margin-left:-10px;margin-top:-10px;position:absolute;top:50%;width:20px}.ag-chart-settings-next,.ag-chart-settings-prev{flex:none;position:relative}.ag-chart-settings-next:focus-within,.ag-chart-settings-prev:focus-within{border-radius:1px;box-shadow:var(--ag-focus-shadow)}.ag-chart-settings-next-button,.ag-chart-settings-prev-button{cursor:pointer;height:100%;left:0;opacity:0;position:absolute;top:0;width:100%}.ag-chart-settings-mini-charts-container{flex:1 1 auto;overflow:hidden auto;position:relative}.ag-chart-settings-mini-wrapper{display:flex;flex-direction:column;left:0;min-height:100%;overflow:hidden;padding-bottom:var(--ag-widget-container-vertical-padding);position:absolute;top:0;width:100%;&.ag-animating{transition:left .3s;transition-timing-function:ease-in-out}}.ag-chart-mini-thumbnail{border:solid var(--ag-border-width) var(--ag-border-color);border-radius:5px;cursor:pointer;padding:1px;&.ag-selected{border-color:var(--ag-accent-color);border-width:calc(var(--ag-border-width) + 1px);padding:unset}&:focus-visible{border-color:var(--ag-accent-color);box-shadow:var(--ag-focus-shadow)}}.ag-chart-mini-thumbnail-canvas{display:block}.ag-chart-advanced-settings-wrapper,.ag-chart-data-wrapper,.ag-chart-format-wrapper{display:flex;flex-direction:column;padding-bottom:16px;position:relative;-webkit-user-select:none;-moz-user-select:none;user-select:none}.ag-chart-advanced-settings-wrapper,.ag-chart-data-wrapper{height:100%;overflow-y:auto}.ag-chart-advanced-settings{background-color:var(--ag-chrome-background-color)}.ag-chart-advanced-settings,.ag-chart-advanced-settings-wrapper{width:100%}.ag-chart-advanced-settings-wrapper{padding-bottom:0}.ag-chart-advanced-settings-section{border-bottom:solid var(--ag-border-width) var(--ag-border-color);display:flex;margin:0;padding-bottom:var(--ag-widget-container-vertical-padding);padding-top:var(--ag-widget-container-vertical-padding)}.ag-chart-empty-text{align-items:center;background-color:var(--ag-background-color);display:flex;height:100%;justify-content:center;top:0;width:100%}.ag-charts-font-size-color{align-self:stretch;display:flex;justify-content:space-between}.ag-chart-menu-icon{border-radius:var(--ag-border-radius);cursor:pointer;margin:2px 0;opacity:.8}.ag-chart-menu-icon:hover{opacity:1}.ag-chart-menu-toolbar-button{background-color:unset;border:0;border-radius:1px;padding:0 2px}.ag-chart-data-column-drag-handle{margin-left:var(--ag-spacing)}.ag-chart-data-section,.ag-chart-format-section{display:flex;margin:0;:where(.ag-label:not(.ag-group-title-bar)){color:var(--ag-chart-menu-label-color)}:where(.ag-label-align-top .ag-label){margin-bottom:var(--ag-widget-vertical-spacing);margin-top:calc(var(--ag-widget-vertical-spacing)*.5)}:where(.ag-slider.ag-label-align-top .ag-label){margin-bottom:0}.ag-label{display:inline-block}}.ag-chart-menu-panel{--ag-panel-background-color:var(--ag-chrome-background-color)}:where(.ag-ltr) .ag-chart-menu-panel{border-left:solid var(--ag-border-width) var(--ag-border-color)}:where(.ag-rtl) .ag-chart-menu-panel{border-right:solid var(--ag-border-width) var(--ag-border-color)}.ag-chart-data-wrapper,.ag-chart-format-wrapper{margin:0;padding:0}.ag-group{.ag-charts-data-group-item{padding-bottom:var(--ag-widget-container-vertical-padding);position:relative}.ag-charts-data-group-item:where(:not(:last-child)){margin-bottom:var(--ag-spacing)}.ag-charts-advanced-settings-top-level-group-title-bar{background-color:unset;position:relative}.ag-charts-data-group-item:where(:not(.ag-charts-format-sub-level-group,.ag-pill-select,.ag-select)){height:var(--ag-list-item-height)}.ag-charts-data-group-item:where(.ag-picker-field){margin-top:var(--ag-spacing)}.ag-charts-advanced-settings-top-level-group-item,.ag-charts-format-top-level-group-item{margin:var(--ag-spacing) 0}.ag-charts-format-sub-level-group-container{display:flex;flex-direction:column;padding:var(--ag-widget-vertical-spacing) 0}.ag-charts-settings-group-container{border-top:none;display:grid;font-weight:500;grid-template-columns:60px 1fr 60px 1fr 60px;row-gap:8px;:where(.ag-chart-mini-thumbnail:nth-child(3n+1)){grid-column:1}:where(.ag-chart-mini-thumbnail:nth-child(3n+2)){grid-column:3}:where(.ag-chart-mini-thumbnail:nth-child(3n+3)){grid-column:5}}.ag-charts-data-group-title-bar,.ag-charts-format-top-level-group-title-bar,.ag-charts-settings-group-title-bar{border-top:none;font-weight:500;margin:0;padding:var(--ag-widget-container-vertical-padding) var(--ag-widget-container-horizontal-padding);position:relative}.ag-charts-format-sub-level-group-title-bar{background:none;font-weight:500;padding:var(--ag-widget-vertical-spacing) 0}&.ag-charts-data-group,&.ag-charts-format-top-level-group{border-top:solid var(--ag-border-width) var(--ag-border-color)}.ag-charts-data-group-container,.ag-charts-format-top-level-group-container,.ag-charts-settings-group-container{margin:0;padding:0 var(--ag-widget-container-horizontal-padding)}.ag-charts-format-sub-level-group-item,.ag-charts-format-sub-level-no-header-group-item,.ag-charts-format-top-level-group-item{margin-bottom:var(--ag-widget-vertical-spacing)}&.ag-charts-format-sub-level-group,&.ag-charts-format-top-level-group,.ag-charts-format-sub-level-group-item:last-child,.ag-charts-format-top-level-group-item{margin:0;padding:0}.ag-charts-advanced-settings-top-level-group-container{margin:0}.ag-charts-advanced-settings-top-level-group-container,.ag-charts-advanced-settings-top-level-group-title-bar{padding:0 var(--ag-widget-container-horizontal-padding)}.ag-charts-advanced-settings-top-level-group-item{margin-bottom:0;margin-top:calc(var(--ag-widget-vertical-spacing)*2)}}.ag-chart-settings-card-item.ag-not-selected:hover{opacity:.35}.ag-angle-select{align-items:center;display:flex}.ag-angle-select-wrapper{display:flex}.ag-angle-select-parent-circle{background-color:var(--ag-background-color);border:solid var(--ag-border-width) var(--ag-border-color);border-radius:12px;display:block;height:24px;position:relative;width:24px}.ag-angle-select-child-circle{background-color:var(--ag-foreground-color);border-radius:3px;height:6px;left:12px;margin-left:-3px;margin-top:-4px;position:absolute;top:4px;width:6px}.ag-slider-wrapper{display:flex;:where(.ag-input-field){flex:1 1 auto}}.ag-color-panel{display:flex;flex-direction:column;padding:var(--ag-spacing);text-align:center;width:100%}.ag-spectrum-color{cursor:default;flex:1 1 auto;overflow:visible;position:relative}.ag-spectrum-color,.ag-spectrum-fill{border-radius:var(--ag-border-radius)}.ag-spectrum-fill{inset:0;position:absolute}.ag-spectrum-val{background-image:linear-gradient(0deg,#000,hsla(20,42%,65%,0));cursor:pointer}.ag-spectrum-dragger{background:#000;border:var(--ag-color-picker-thumb-border-width) solid #fff;border-radius:var(--ag-color-picker-thumb-size);box-shadow:0 0 2px 0 rgba(0,0,0,.24);cursor:pointer;height:var(--ag-color-picker-thumb-size);pointer-events:none;position:absolute;width:var(--ag-color-picker-thumb-size)}.ag-spectrum-alpha,.ag-spectrum-hue{cursor:default}.ag-spectrum-hue-background{background:linear-gradient(270deg,red 3%,#ff0 17%,#0f0 33%,#0ff 50%,#00f 67%,#f0f 83%,red);height:100%;width:100%}.ag-spectrum-alpha-background{background:linear-gradient(to right,var(--ag-internal-spectrum-alpha-color-from),var(--ag-internal-spectrum-alpha-color-to)),url(\'data:image/svg+xml;utf8,\') 0 0 /4px 4px;height:100%;width:100%}.ag-spectrum-tool{cursor:pointer;height:var(--ag-color-picker-track-size);margin-bottom:10px;position:relative}.ag-spectrum-slider,.ag-spectrum-tool{border-radius:var(--ag-color-picker-thumb-size)}.ag-spectrum-slider{border:var(--ag-color-picker-thumb-border-width) solid #fff;box-shadow:0 1px 4px 0 rgba(0,0,0,.37);height:var(--ag-color-picker-thumb-size);margin-top:calc(var(--ag-color-picker-track-size)/2*-1 + var(--ag-color-picker-thumb-size)/2*-1);pointer-events:none;position:absolute;width:var(--ag-color-picker-thumb-size)}:where(.ag-spectrum-alpha) .ag-spectrum-slider{background:linear-gradient(to bottom,var(--ag-internal-spectrum-alpha-color),var(--ag-internal-spectrum-alpha-color)) var(--ag-background-color)}.ag-recent-colors{display:flex;gap:6px;margin:10px var(--ag-spacing) 2px}.ag-recent-color{border:solid var(--ag-border-width) var(--ag-border-color);cursor:pointer}.ag-angle-select[disabled]{opacity:.5;pointer-events:none}:where(.ag-ltr) .ag-angle-select-field,:where(.ag-ltr) .ag-slider-field{margin-right:calc(var(--ag-spacing)*2)}:where(.ag-rtl) .ag-angle-select-field,:where(.ag-rtl) .ag-slider-field{margin-left:calc(var(--ag-spacing)*2)}.ag-color-dialog{border-radius:5px}:where(.ag-color-picker){.ag-picker-field-wrapper{padding-left:var(--ag-spacing);padding-right:var(--ag-spacing)}.ag-picker-field-display{align-items:center;display:flex;flex-direction:row;min-height:var(--ag-list-item-height)}}:where(.ag-ltr) .ag-color-picker-color,:where(.ag-ltr) .ag-color-picker-value{margin-right:var(--ag-spacing)}:where(.ag-rtl) .ag-color-picker-color,:where(.ag-rtl) .ag-color-picker-value{margin-left:var(--ag-spacing)}.ag-spectrum-tools{padding:10px 0 0}.ag-spectrum-alpha-background,.ag-spectrum-hue-background{border-radius:var(--ag-color-picker-track-border-radius)}.ag-color-input-color,.ag-color-picker-color,.ag-recent-color{border-radius:var(--ag-color-picker-color-border-radius)}.ag-spectrum-sat{background-image:linear-gradient(90deg,#fff,hsla(20,42%,65%,0))}.ag-recent-color,.ag-spectrum-color,.ag-spectrum-slider{&:where(:not(:disabled,[readonly])):focus-visible{box-shadow:var(--ag-focus-shadow)}}.ag-color-input-color,.ag-color-picker-color{border:solid var(--ag-border-width) var(--ag-border-color);height:var(--ag-icon-size);width:var(--ag-icon-size)}:where(.ag-ltr) .ag-color-input .ag-input-field-input{padding-left:calc(var(--ag-icon-size) + var(--ag-spacing)*2)}:where(.ag-rtl) .ag-color-input .ag-input-field-input{padding-right:calc(var(--ag-icon-size) + var(--ag-spacing)*2)}:where(.ag-color-input) .ag-color-input-color{position:absolute}:where(.ag-ltr) :where(.ag-color-input) .ag-color-input-color{margin-left:var(--ag-spacing)}:where(.ag-rtl) :where(.ag-color-input) .ag-color-input-color{margin-right:var(--ag-spacing)}.ag-range-field{align-items:center;display:flex;:where(.ag-input-wrapper){height:100%}}.ag-range-field-input{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;height:100%;overflow:visible;padding:0;width:100%;&:disabled{opacity:.5}}.ag-range-field-input{&::-webkit-slider-runnable-track{background-color:var(--ag-border-color);border-radius:1.5px;height:3px;margin:0;padding:0;width:100%}&::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;background-color:var(--ag-background-color);border:solid var(--ag-border-width) var(--ag-border-color);border-radius:100%;height:var(--ag-icon-size);margin:0;padding:0;transform:translateY(calc(var(--ag-icon-size)*-.5 + 1.5px));width:var(--ag-icon-size)}&:focus::-webkit-slider-thumb{border-color:var(--ag-accent-color);box-shadow:var(--ag-focus-shadow)}&:active::-webkit-slider-runnable-track{background-color:var(--ag-accent-color)}}.ag-range-field-input{&::-moz-range-track{background-color:var(--ag-border-color);border-radius:1.5px;height:3px;margin:0;padding:0;width:100%}&::-moz-ag-range-thumb{-moz-appearance:none;appearance:none;background-color:var(--ag-background-color);border:solid var(--ag-border-width) var(--ag-border-color);border-radius:100%;height:var(--ag-icon-size);margin:0;padding:0;transform:translateY(calc(var(--ag-icon-size)*-.5 + 1.5px));width:var(--ag-icon-size)}&:focus::-moz-ag-range-thumb{border-color:var(--ag-accent-color);box-shadow:var(--ag-focus-shadow)}&:active::-moz-ag-range-track{background-color:var(--ag-accent-color)}}'},11527:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.IntegratedChartsModule=t.GridChartsModule=void 0;const s=i(76624),o=i(39206),r=i(26565),n=i(266),a=i(19586),l=i(73375),d=i(22459),c=i(57879),u=i(26353),h=i(16292),g=i(28769),p=i(67492),m=i(82474),f=i(10100),C=i(54604),v=i(24806),w=i(73504),b={linked:"linked",unlinked:"unlinked",chartsMenu:"menu-alt",chartsDownload:"save",chartsMenuEdit:"chart",chartsMenuAdvancedSettings:"settings",chartsMenuAdd:"plus",chartsColorPicker:"small-down",chartsThemePrevious:"previous",chartsThemeNext:"next"},y={getChartModels:C.getChartModels,getChartRef:C.getChartRef,getChartImageDataURL:C.getChartImageDataURL,downloadChart:C.downloadChart,openChartToolPanel:C.openChartToolPanel,closeChartToolPanel:C.closeChartToolPanel,createRangeChart:C.createRangeChart,createPivotChart:C.createPivotChart,createCrossFilterChart:C.createCrossFilterChart,updateChart:C.updateChart,restoreChart:C.restoreChart},S=[n.CellSelectionModule,o.EnterpriseCoreModule,s._SharedDragAndDropModule,s._PopupModule,l.MenuItemModule],x="IntegratedCharts";t.GridChartsModule={moduleName:"GridCharts",version:a.VERSION,dependsOn:S,validate:()=>({isValid:!1,message:`AG Grid: As of v33, the "GridChartsModule" has been deprecated. Please use "IntegratedChartsModule.with(...)" instead.\n ${(0,s._preInitErrMsg)(257)}`})},t.IntegratedChartsModule={moduleName:x,version:a.VERSION,dependsOn:S,validate:()=>({isValid:!1,message:(0,s._preInitErrMsg)(257)}),with:e=>{if(e.setup(),e.setGridContext?.(!0),e.isEnterprise&&e.setLicenseKey){const t={setLicenseKey:e.setLicenseKey};r.LicenseManager.setChartsLicenseManager(t)}return{moduleName:x,version:a.VERSION,icons:b,apiFunctions:y,dependsOn:S,css:[v.integratedChartsModuleCSS],validate:()=>(0,w.validGridChartsVersion)({gridVersion:a.VERSION,chartsVersion:e.VERSION}),beans:[d.AgChartsExports.bind(null,e),f.ChartService,m.ChartTranslationService,g.ChartCrossFilterService,h.ChartMenuListFactory,p.ChartMenuService,c.EnterpriseChartProxyFactory,u.AdvancedSettingsMenuFactory]}}}},73504:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.validGridChartsVersion=t.validGridChartsVersionErrorMessage=t.gridChartVersion=void 0;function i(e){return e?.match(/\d+\.\d+\.\d+/)}function s(e){if(!e||!i(e))return;const[t,s]=e.split(".")||[],o=`${t}.${s}.x`,r=parseInt(t,10)-28+6;if(r<0)return;return{gridMajorMinor:o,chartsMajorMinor:`${r}.${s}.x`}}function o({type:e,gridVersion:t,chartsVersion:i}){const o="AG Grid: AG Grid version is incompatible. Please see https://www.ag-grid.com/javascript-data-grid/modules/ for more information.";if(!t)return o;const r=s(t);if(!r)return o;const{gridMajorMinor:n,chartsMajorMinor:a}=r;return"incompatible"===e?`AG Grid version ${t} and AG Charts version ${i} is not supported. AG Grid version ${n} should be used with AG Chart ${a}. Please see https://www.ag-grid.com/javascript-data-grid/modules/ for more information.`:"invalidCharts"===e?`AG Grid version ${n} should be used with AG Chart ${a} not ${i}. Please see https://www.ag-grid.com/javascript-data-grid/modules/ for more information.`:o}t.gridChartVersion=s,t.validGridChartsVersionErrorMessage=o,t.validGridChartsVersion=function({gridVersion:e,chartsVersion:t}){if(!i(t))return{isValid:!1,message:o({type:"invalidCharts",gridVersion:e,chartsVersion:t})};if(!i(e))return{isValid:!1,message:o({type:"invalidGrid",gridVersion:e,chartsVersion:t})};const[s,r]=e.split(".")||[],[n,a,l]=t.split(".")||[],d=function({gridMajorVersion:e,chartsMajorVersion:t}){const i=parseInt(e,10)-28;return i===parseInt(t,10)-6&&i>=0}({gridMajorVersion:s,chartsMajorVersion:n});return d&&r===a||l.includes("beta")?{isValid:!0}:d&&r===a?{isValid:!1,message:o({type:"invalid",gridVersion:e,chartsVersion:t})}:{isValid:!1,message:o({type:"incompatible",gridVersion:e,chartsVersion:t})}}},61750:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.AgAngleSelect=void 0;const s=i(76624);class o extends s.AgAbstractLabel{wireBeans(e){this.dragSvc=e.dragSvc}constructor(e){super(e,'
\n
\n
\n
\n
\n
\n
\n
\n \n
\n
',[s.AgInputNumberFieldSelector]),this.eLabel=s.RefPlaceholder,this.eParentCircle=s.RefPlaceholder,this.eChildCircle=s.RefPlaceholder,this.eAngleValue=s.RefPlaceholder,this.radius=0,this.offsetX=0,this.offsetY=0}postConstruct(){super.postConstruct();const{value:e,onValueChange:t}=this.config;null!=e&&this.setValue(e,void 0,!0),null!=t&&this.onValueChange(t),this.dragListener={eElement:this.eParentCircle,dragStartPixels:0,onDragStart:()=>{this.parentCircleRect=this.eParentCircle.getBoundingClientRect()},onDragging:e=>this.calculateAngleDrag(e),onDragStop:()=>{}},this.dragSvc?.addDragSource(this.dragListener),this.eAngleValue.setLabel("").setLabelWidth(5).setInputWidth(45).setMin(0).setMax(360).setValue(`${this.degrees}`).onValueChange(e=>{null!=e&&""!==e||(e="0"),e=this.eAngleValue.normalizeValue(e);let t=parseFloat(e);t>180&&(t-=360),this.setValue(t)}),this.updateNumberInput(),(0,s._exists)(this.getValue())&&this.eAngleValue.setValue(this.normalizeNegativeValue(this.getValue()).toString()),this.addManagedListeners(this,{fieldValueChanged:()=>{this.eAngleValue.getInputElement().contains((0,s._getActiveDomElement)(this.beans))||this.updateNumberInput()}})}updateNumberInput(){const e=this.normalizeNegativeValue(this.getValue());this.eAngleValue.setValue(e.toString())}positionChildCircle(e){const t=this.parentCircleRect||{width:24,height:24},i=this.eChildCircle,s=t.width/2,o=t.height/2;i.style.left=`${s+8*Math.cos(e)}px`,i.style.top=`${o+8*Math.sin(e)}px`}calculatePolar(){const e=this.offsetX,t=this.offsetY,i=Math.atan2(t,e);this.degrees=this.toDegrees(i),this.radius=Math.sqrt(e*e+t*t),this.positionChildCircle(i)}calculateCartesian(){const e=this.toRadians(this.getValue()),t=this.getRadius();this.setOffsetX(Math.cos(e)*t).setOffsetY(Math.sin(e)*t)}setOffsetX(e){return this.offsetX!==e&&(this.offsetX=e,this.calculatePolar()),this}setOffsetY(e){return this.offsetY!==e&&(this.offsetY=e,this.calculatePolar()),this}calculateAngleDrag(e){const t=this.parentCircleRect,i=t.width/2,s=t.height/2,o=e.clientX-t.left-i,r=e.clientY-t.top-s,n=Math.atan2(r,o);this.setValue(n,!0)}toDegrees(e){return e/Math.PI*180}toRadians(e){return e/180*Math.PI}normalizeNegativeValue(e){return e<0?360+e:e}normalizeAngle180(e){return(e%=2*Math.PI)<-Math.PI?e+=2*Math.PI:e>=Math.PI&&(e-=2*Math.PI),e}getRadius(){return this.radius}setRadius(e){return this.radius===e||(this.radius=e,this.calculateCartesian()),this}onValueChange(e){return this.addManagedListeners(this,{fieldValueChanged:()=>{e(this.degrees)}}),this}getValue(e){return e?this.toRadians(this.degrees):this.degrees}setValue(e,t,i){let s;return s=t?e:this.normalizeAngle180(this.toRadians(e)),e=this.toDegrees(s),this.degrees!==e&&(this.degrees=Math.floor(e),this.calculateCartesian(),this.positionChildCircle(s),i||this.dispatchLocalEvent({type:"fieldValueChanged"})),this}setWidth(e){return(0,s._setFixedWidth)(this.getGui(),e),this}setDisabled(e){return super.setDisabled(e),this.eAngleValue.setDisabled(e),this}destroy(){this.dragSvc?.removeDragSource(this.dragListener),super.destroy()}}t.AgAngleSelect=o},38239:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.agPillSelectCSS=void 0,t.agPillSelectCSS=".ag-pill-select{display:flex;flex-direction:column}.ag-pill-select .ag-column-drop-list{padding:0}:where(.ag-pill-select){.ag-select{padding-top:var(--ag-spacing)}.ag-picker-field-wrapper{background-color:transparent;border:0}.ag-picker-field-display{cursor:pointer;font-weight:500}.ag-picker-field-display,.ag-picker-field-icon{color:var(--ag-chart-menu-label-color)}}"},82406:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.AgPillSelect=void 0;const s=i(76624),o=i(63173),r=i(39733),n=i(38239);class a extends s.Component{constructor(e){super(''),this.config=e??{};const{selectedValueList:t,valueFormatter:i,valueList:o}=this.config;this.selectedValues=t??[],this.valueList=o??[],this.valueFormatter=i??(e=>(0,s._escapeString)(e)),this.registerCSS(n.agPillSelectCSS)}postConstruct(){const{ariaLabel:e,onValuesChange:t,dragSourceId:i}=this.config;this.dropZonePanel=this.createManagedBean(new d({getValues:()=>this.selectedValues,setValues:e=>this.updateValues(e),isDraggable:()=>this.selectedValues.length>1},e=>this.valueFormatter(e),e,i));this.getGui().appendChild(this.dropZonePanel.getGui()),this.initSelect(),null!=t&&(this.onValuesChange=t)}setValues(e,t){const{added:i,removed:s,updated:o}=this.getChanges(this.valueList,e);let r=!1;return(i.length||s.length||o.length)&&(r=!0),this.valueList=e,this.updateValues(t,r,!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 s.AgSelect({options:e,placeholder:t,onValueChange:e=>this.addValue(e),pickerIcon:"chartsMenuAdd"})),this.getGui().appendChild(this.eSelect.getGui()),!0}createSelectOptions(){const e=[],{maxSelection:t}=this.config;if(t&&this.selectedValues.length>=t)return e;for(const t of this.valueList)this.selectedValues.includes(t)||e.push({value:t,text:this.valueFormatter(t)});return e}addValue(e){this.dropZonePanel.addItem(e)}updateValues(e,t,i){const o=this.selectedValues;this.selectedValues=e;const r=this.getChanges(o,e),n=t||r.added.length||r.removed.length,a=(0,s._getActiveDomElement)(this.beans),l=this.eSelect?.getGui().contains(a),d=this.dropZonePanel?.getGui().contains(a);i||this.onValuesChange?.(r);const c=!!n&&!this.refreshSelect();this.dropZonePanel.refreshGui(),n&&l&&(c?this.dropZonePanel.focusList(!0):this.eSelect?.getFocusableElement().focus()),d&&!e.length&&this.eSelect?.getFocusableElement().focus()}getChanges(e,t){return{added:t.filter(t=>!e.includes(t)),removed:e.filter(e=>!t.includes(e)),updated:t.filter((t,i)=>e[i]!==t),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,s._removeFromParent)(this.eSelect.getGui()),this.eSelect=this.destroyBean(this.eSelect),!1)}destroy(){this.destroyBean(this.eSelect),super.destroy()}}t.AgPillSelect=a;class l extends o.PillDragComp{constructor(e,t,i,s,o,r){super(t,i,!1),this.value=e,this.valueFormatter=s,this.draggable=o,this.sourceId=r}getItem(){return this.value}getDisplayName(){return this.valueFormatter(this.value)}getAriaDisplayName(){return this.getDisplayName()}getTooltip(){}createGetDragItem(){return()=>({value:this.value})}getDragSourceType(){return s.DragSourceType.ChartPanel}getDragSourceId(){return this.sourceId}isMovable(){return this.isDraggable()}isDraggable(){return this.draggable}}class d extends r.PillDropZonePanel{constructor(e,t,i,s){super(!1),this.model=e,this.valueFormatter=t,this.ariaLabel=i,this.sourceId=s}postConstruct(){super.init()}isItemDroppable(e,t){return this.isSourceEventFromTarget(t)||null!=this.sourceId&&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,i){return new l(e,t,i,this.valueFormatter,this.model.isDraggable(),this.sourceId)}getItems(e){return[e.value]}isInterestedIn(e){return e===s.DragSourceType.ChartPanel}}},22076:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ColorPickerSelector=t.ColorPicker=void 0;const s=i(48139),o=i(49703);class r extends s.AgColorPicker{constructor(e){super({...e,dialogCallbacks:o.DIALOG_CALLBACKS})}}t.ColorPicker=r,t.ColorPickerSelector={selector:"AG-COLOR-PICKER",component:r}},99112:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.pasteFromClipboard=t.copySelectedRangeDown=t.copySelectedRangeToClipboard=t.copySelectedRowsToClipboard=t.cutToClipboard=t.copyToClipboard=void 0,t.copyToClipboard=function(e,t){e.clipboardSvc?.copyToClipboard(t)},t.cutToClipboard=function(e,t){e.clipboardSvc?.cutToClipboard(t)},t.copySelectedRowsToClipboard=function(e,t){e.clipboardSvc?.copySelectedRowsToClipboard(t)},t.copySelectedRangeToClipboard=function(e,t){e.clipboardSvc?.copySelectedRangeToClipboard(t)},t.copySelectedRangeDown=function(e){e.clipboardSvc?.copyRangeDown()},t.pasteFromClipboard=function(e){e.clipboardSvc?.pasteFromClipboard()}},13766:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ClipboardModule=void 0;const s=i(76624),o=i(39206),r=i(19586),n=i(99112),a=i(45519);t.ClipboardModule={moduleName:"Clipboard",version:r.VERSION,beans:[a.ClipboardService],apiFunctions:{copyToClipboard:n.copyToClipboard,cutToClipboard:n.cutToClipboard,copySelectedRowsToClipboard:n.copySelectedRowsToClipboard,copySelectedRangeToClipboard:n.copySelectedRangeToClipboard,copySelectedRangeDown:n.copySelectedRangeDown,pasteFromClipboard:n.pasteFromClipboard},dependsOn:[o.EnterpriseCoreModule,s.CsvExportModule,s._KeyboardNavigationModule,s.HighlightChangesModule]}},45519:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ClipboardService=t.stringToArray=void 0;const s=i(76624),o="paste",r="dragCopy",n="clipboard";var a;function l(e,t=","){const i=[],s=e=>"\r"===e||"\n"===e;let o=!1;if(""===e)return[[""]];for(let r=0,n=0,a=0;a{i[r]||(i[r]=[]),i[r][n]||(i[r][n]="")};if(u(),'"'===d&&(o?'"'===c?(i[r][n]+='"',a++):o=!1:(void 0===l||l===t||s(l))&&(o=!0)),!o&&'"'!==d){if(d===t){n++,u();continue}if(s(d)){n=0,r++,u(),"\r"===d&&"\n"===c&&a++;continue}}i[r][n]+=d}return i}!function(e){e[e.CellRange=0]="CellRange",e[e.SelectedRows=1]="SelectedRows",e[e.FocusedCell=2]="FocusedCell"}(a||(a={})),t.stringToArray=l;class d extends s.BeanStub{constructor(){super(...arguments),this.beanName="clipboardSvc",this.clientSideRowModel=null,this.gridCtrl=null,this.lastPasteOperationTime=0,this.navigatorApiFailed=!1}postConstruct(){const{gos:e,rowModel:t,ctrlsSvc:i}=this.beans;(0,s._isClientSideRowModel)(e,t)&&(this.clientSideRowModel=t),i.whenReady(this,e=>{this.gridCtrl=e.gridCtrl})}destroy(){super.destroy(),this.clientSideRowModel=null,this.gridCtrl=null}pasteFromClipboard(){!this.gos.get("suppressClipboardApi")&&!this.navigatorApiFailed&&navigator.clipboard?.readText?navigator.clipboard.readText().then(this.processClipboardData.bind(this)).catch(e=>{(0,s._warn)(40,{e:e,method:"readText"}),this.navigatorApiFailed=!0,this.pasteFromClipboardLegacy()}):this.pasteFromClipboardLegacy()}pasteFromClipboardLegacy(){let e=!1;const t=t=>{const i=Date.now();i-this.lastPasteOperationTime<50&&(e=!0,t.preventDefault()),this.lastPasteOperationTime=i};this.executeOnTempElement(e=>{e.addEventListener("paste",t),e.focus({preventScroll:!0})},i=>{const s=i.value;e?this.refocusLastFocusedCell():this.processClipboardData(s),i.removeEventListener("paste",t)})}refocusLastFocusedCell(){const{focusSvc:e}=this.beans,t=e.getFocusedCell();t&&e.setFocusedCell({rowIndex:t.rowIndex,column:t.column,rowPinned:t.rowPinned,forceBrowserFocus:!0})}getClipboardDelimiter(){const e=this.gos.get("clipboardDelimiter");return(0,s._exists)(e)?e:"\t"}processClipboardData(e){if(null==e)return;let t=l(e,this.getClipboardDelimiter());const i=this.gos.getCallback("processDataFromClipboard");if(i&&(t=i({data:t})),null==t)return;this.gos.get("suppressLastEmptyLineOnPaste")&&this.removeLastLineIfBlank(t);const{rangeSvc:s,editSvc:r}=this.beans;this.doPasteOperation((e,i,n,a)=>{const l=s?.isMoreThanOneCell();l&&!this.hasOnlyOneValueToPaste(t)?this.pasteIntoActiveRange(t,e,i,a):this.pasteStartingFromFocusedCell(t,e,i,n,a),r?.stopEditing(void 0,{source:o})})}doPasteOperation(e){const t="clipboard",{eventSvc:i,focusSvc:o,rowRenderer:r,gos:n}=this.beans;i.dispatchEvent({type:"pasteStart",source:t});const{clientSideRowModel:a}=this,l=a?.rootNode,d=l&&new s.ChangedPath(n.get("aggregateOnlyChangedColumns"),l),c={},u=[];e(c,u,o.getFocusedCell(),d);const h=[...u];d&&(a.doAggregate(d),d.forEachChangedNodeDepthFirst(e=>{h.push(e)})),r.refreshCells({rowNodes:h}),this.dispatchFlashCells(c),this.fireRowChanged(u),this.refocusLastFocusedCell(),i.dispatchEvent({type:"pasteEnd",source:t})}getPreProcessRangeCallback(e){return t=>{const{rangeSvc:i}=this.beans;if(!i)return;const{rowDiff:s,colDiff:o}=this.getAdjustedRangeDimensionForPaste(t,e);0!==s&&i.extendRangeRowCountBy(t,s),0!==o&&i.extendRangeColumnCountBy(t,o)}}getAdjustedRangeDimensionForPaste(e,t){const i=this.beans.rangeSvc,s=t.length,o=i.getRangeRowCount(e),r=o>=s&&o%s===0,n=t[0].length,a=e.columns.length;return{rowDiff:r?0:s-o,colDiff:a>=n&&a%n===0?0:n-a}}pasteIntoActiveRange(e,t,i,n){let a=0,l=0;this.iterateActiveRanges((d,c,u,h)=>{if(h-a>=e.length){if(h%e.length!==0)return;a+=l,l=0}const g=e[h-a];i.push(c);const p=this.gos.getCallback("processCellFromClipboard"),m=u.columns,f=m.findIndex(s.isColumnSelectionCol);-1!==f&&m.splice(f,1);for(let e=0;e=g.length&&(a=e%g.length);const l=this.processCell(c,i,g[a],r,p,!0);c.setDataValue(i,l,o),n?.addParentNode(c.parent,[i]);const{rowIndex:u,rowPinned:h}=d,f=(0,s._createCellId)({rowIndex:u,column:i,rowPinned:h});t[f]=!0}l++},!1,this.getPreProcessRangeCallback(e))}getDisplayedColumnsStartingAt(e){let t=e;const i=[],{visibleCols:o}=this.beans;for(;t&&(0,s.isSpecialCol)(t);)t=o.getColAfter(t);for(;null!=t;)i.push(t),t=o.getColAfter(t);return i}pasteStartingFromFocusedCell(e,t,i,s,o){if(!s)return;const r={rowIndex:s.rowIndex,rowPinned:s.rowPinned},a=this.getDisplayedColumnsStartingAt(s.column);this.isPasteSingleValueIntoRange(e)?this.pasteSingleValueIntoRange(e,i,t,o):this.pasteMultipleValues(e,r,i,a,t,n,o)}isPasteSingleValueIntoRange(e){const t=this.beans.rangeSvc;return this.hasOnlyOneValueToPaste(e)&&!!t&&!t.isEmpty()}pasteSingleValueIntoRange(e,t,i,s){const o=e[0][0];this.iterateActiveRanges((e,r,a)=>{t.push(r),a.columns.forEach(e=>this.updateCellValue(r,e,o,i,n,s))})}hasOnlyOneValueToPaste(e){return 1===e.length&&1===e[0].length}copyRangeDown(){const{rangeSvc:e,gos:t,formula:i,valueSvc:n}=this.beans;if(!e||e.isEmpty())return;const a=[];this.doPasteOperation((e,l,d,c)=>{const u=t.getCallback("processCellForClipboard"),h=t.getCallback("processCellFromClipboard");this.iterateActiveRanges((t,d,g)=>{const{columns:p}=g;a.length?(l.push(d),p.forEach((n,l)=>{if(!n.isCellEditable(d)||n.isSuppressPaste(d))return;n.isAllowFormula()&&i?.isFormula(a[l])&&(a[l]=i?.updateFormulaByOffset({value:a[l],rowDelta:1}));const u=this.processCell(d,n,a[l],r,h,!0);d.setDataValue(n,u,o),c&&c.addParentNode(d.parent,[n]);const{rowIndex:g,rowPinned:p}=t,m=(0,s._createCellId)({rowIndex:g,column:n,rowPinned:p});e[m]=!0})):p.forEach(e=>{const t=this.processCell(d,e,n.getValue(e,d,"batch"),r,u,!1,!0);a.push(t)})},!0)})}removeLastLineIfBlank(e){const t=(0,s._last)(e);if(t&&1===t.length&&""===t[0]){if(1===e.length)return;(0,s._removeFromArray)(e,t)}}fireRowChanged(e){if("fullRow"===this.gos.get("editType"))for(const t of e)this.eventSvc.dispatchEvent({type:"rowValueChanged",node:t,data:t.data,rowIndex:t.rowIndex,rowPinned:t.rowPinned})}pasteMultipleValues(e,t,i,o,r,n,a){let l=t;const d=this.beans,{gos:c}=d,u=null!=this.clientSideRowModel&&!c.get("enableGroupEdit")&&!c.get("treeData"),h=()=>{for(;;){if(!l)return null;const e=(0,s._getRowNode)(d,l);if(l=(0,s._getRowBelow)(d,{rowPinned:l.rowPinned,rowIndex:l.rowIndex}),null==e)return null;if(!(e.detail||e.footer||u&&e.group))return e}};for(const t of e){const e=h();e&&(t.forEach((t,i)=>this.updateCellValue(e,o[i],t,r,n,a)),i.push(e))}}updateCellValue(e,t,i,r,n,a){if(!e||!t?.isCellEditable(e)||t?.isSuppressPaste(e))return;const l=this.processCell(e,t,i,n,this.gos.getCallback("processCellFromClipboard"),!0);e.setDataValue(t,l,o);const{rowIndex:d,rowPinned:c}=e;r[(0,s._createCellId)({rowIndex:d,column:t,rowPinned:c})]=!0,a&&a.addParentNode(e.parent,[t])}copyToClipboard(e={}){this.copyOrCutToClipboard(e)}cutToClipboard(e={},t="api"){this.gos.get("suppressCutToClipboard")||(this.eventSvc.dispatchEvent({type:"cutStart",source:t}),this.copyOrCutToClipboard(e,!0),this.eventSvc.dispatchEvent({type:"cutEnd",source:t}))}copyOrCutToClipboard(e,t){let{includeHeaders:i,includeGroupHeaders:s}=e;const{gos:o,focusSvc:r}=this.beans;null==i&&(i=o.get("copyHeadersToClipboard")),null==s&&(s=o.get("copyGroupHeadersToClipboard"));const n={includeHeaders:i,includeGroupHeaders:s},l=o.get("rowSelection"),d=o.get("cellSelection");let c=null;this.shouldCopyCells(d,l)?(this.copySelectedRangeToClipboard(n),c=a.CellRange):this.shouldCopyRows(l)?(this.copySelectedRowsToClipboard(n),c=a.SelectedRows):r.isAnyCellFocused()&&(this.copyFocusedCellToClipboard(n),c=a.FocusedCell),t&&null!==c&&this.clearCellsAfterCopy(c)}shouldCopyCells(e,t){const{rangeSvc:i,selectionSvc:s,gos:o}=this.beans;if(!i||i.isEmpty())return!1;if(e){return!("object"==typeof t&&t.copySelectedRows&&!s?.isEmpty())}{const e=o.get("suppressCopySingleCellRanges");return!(!i.isMoreThanOneCell()&&e)}}shouldCopyRows(e){const{selectionSvc:t,gos:i}=this.beans;return!(t?.isEmpty()??1)&&(e&&"string"!=typeof e?e.copySelectedRows??!1:!i.get("suppressCopyRowsToClipboard"))}clearCellsAfterCopy(e){const t=this.beans,{rangeSvc:i,focusSvc:o,eventSvc:r}=t;if(r.dispatchEvent({type:"keyShortcutChangedCellStart"}),e===a.CellRange)i.clearCellRangeCellValues({cellEventSource:"clipboardSvc"});else if(e===a.SelectedRows)this.clearSelectedRows();else{const e=o.getFocusedCell();if(null==e)return;const i=(0,s._getRowNode)(t,e);i&&this.clearCellValue(i,e.column)}r.dispatchEvent({type:"keyShortcutChangedCellEnd"})}clearSelectedRows(){const{selectionSvc:e,visibleCols:t}=this.beans,i=e?.getSelectedNodes()??[],s=t.allCols;for(const e of i)for(const t of s)this.clearCellValue(e,t)}clearCellValue(e,t){if(!t.isCellEditable(e))return;const i=this.beans.valueSvc.getDeleteValue(t,e);e.setDataValue(t,i,"clipboardSvc")}iterateActiveRanges(e,t,i){const s=this.beans.rangeSvc;if(!s||s.isEmpty())return;const o=s.getCellRanges(),r=t?[o[0]]:o;for(const t of r)this.iterateActiveRange({cellRange:t,rowCallback:e,preProcessRange:i})}iterateActiveRange(e){const{cellRange:t,preProcessRange:i,rowCallback:o}=e,{beans:r}=this,{rangeSvc:n}=r;if(!n)return;i&&i(t);let a=n.getRangeStartRow(t);const l=n.getRangeEndRow(t);let d=0,c=!1;for(;!c&&null!=a;){const e=(0,s._getRowNode)(r,a);c=(0,s._isSameRow)(a,l),o(a,e,t,d++),a=(0,s._getRowBelow)(r,a)}}copySelectedRangeToClipboard(e={}){const t=this.beans.rangeSvc;if(!t||t.isEmpty())return;const i=t.areAllRangesAbleToMerge(),{data:s,cellsToFlash:o}=i?this.buildDataFromMergedRanges(t,e):this.buildDataFromRanges(t,e);this.copyDataToClipboard(s),this.dispatchFlashCells(o)}buildDataFromMergedRanges(e,t){const i=new Set,o=e.getCellRanges(),r=new Map,n=[],a={},l=(0,s._isClientSideRowModel)(this.gos,this.beans.rowModel),d=new Set;l||this.beans.rowModel.forEachNode(e=>{d.add(e.rowIndex)});for(const t of o){t.columns.forEach(e=>i.add(e));const{rowPositions:s,cellsToFlash:o}=this.getRangeRowPositionsAndCellsToFlash(e,t);for(const e of s){const t=d.has(e.rowIndex);if(!l&&!t)continue;const i=`${e.rowIndex}-${e.rowPinned||"null"}`;r.get(i)||(r.set(i,!0),n.push(e))}Object.assign(a,o)}const c=this.beans.visibleCols.allCols,u=Array.from(i);u.sort((e,t)=>c.indexOf(e)-c.indexOf(t));return{data:this.buildExportParams({columns:u,rowPositions:n,includeHeaders:t.includeHeaders,includeGroupHeaders:t.includeGroupHeaders}),cellsToFlash:a}}buildDataFromRanges(e,t){const i=e.getCellRanges(),s=[],o={};for(const r of i){const{rowPositions:i,cellsToFlash:n}=this.getRangeRowPositionsAndCellsToFlash(e,r);Object.assign(o,n),s.push(this.buildExportParams({columns:r.columns,rowPositions:i,includeHeaders:t.includeHeaders,includeGroupHeaders:t.includeGroupHeaders}))}return{data:s.join("\n"),cellsToFlash:o}}getRangeRowPositionsAndCellsToFlash(e,t){const i=[],o={},r=e.getRangeStartRow(t),n=e.getRangeEndRow(t);let a=r;for(;a;){i.push(a);for(const e of t.columns){const{rowIndex:t,rowPinned:i}=a;o[(0,s._createCellId)({rowIndex:t,column:e,rowPinned:i})]=!0}if((0,s._isSameRow)(a,n))break;a=(0,s._getRowBelow)(this.beans,a)}return{rowPositions:i,cellsToFlash:o}}getCellsToFlashFromRowNodes(e){const t=this.beans.visibleCols.allCols,i={};for(let o=0;o{const{value:i,valueFormatted:s}=this.beans.valueSvc.getValueForDisplay({column:t,node:e,includeValueFormatted:!0,from:"batch"}),o=s??i??"",a=r.getCallback("processCellForClipboard");return a?a({column:t,node:e,value:o,type:n,formatValue:i=>this.beans.valueSvc.formatValue(t,e,i)??i,parseValue:s=>this.beans.valueSvc.parseValue(t,e,s,i)??s}):o},processHeaderCallback:r.getCallback("processHeaderForClipboard"),processGroupHeaderCallback:r.getCallback("processGroupHeaderForClipboard")};return a.getDataAsCsv(l,!0)}dispatchFlashCells(e){window.setTimeout(()=>{this.eventSvc.dispatchEvent({type:"flashCells",cells:e})},0)}processCell(e,t,i,s,o,r,n){const{valueSvc:a,formula:l}=this.beans;if(o){return o({column:t,node:e,value:i,type:s,formatValue:i=>a.formatValue(t,e??null,i)??i,parseValue:i=>a.parseValue(t,e??null,i,a.getValue(t,e,"edit"))})}return r&&!1!==t.getColDef().useValueParserForImport?a.parseValue(t,e??null,i,a.getValue(t,e,"edit")):n&&!1!==t.getColDef().useValueFormatterForExport?l?.isFormula(i)?i:a.formatValue(t,e??null,i)??i:i}copyDataToClipboard(e){const t=this.gos.getCallback("sendToClipboard");if(t)return void t({data:e});!this.gos.get("suppressClipboardApi")&&navigator.clipboard?navigator.clipboard.writeText(e).catch(t=>{(0,s._warn)(40,{e:t,method:"writeText"}),this.copyDataToClipboardLegacy(e)}):this.copyDataToClipboardLegacy(e)}copyDataToClipboardLegacy(e){this.executeOnTempElement(t=>{const i=(0,s._getDocument)(this.beans),o=(0,s._getActiveDomElement)(this.beans);t.value=e||" ",t.select(),t.focus({preventScroll:!0});i.execCommand("copy")||(0,s._warn)(41),null!=o?.focus&&o.focus({preventScroll:!0})})}executeOnTempElement(e,t){if(!this.gridCtrl)return;const i=(0,s._getDocument)(this.beans),o=i.createElement("textarea"),r=o.style;r.width="1px",r.height="1px";const n=i.documentElement;r.top=n.scrollTop+"px",r.left=n.scrollLeft+"px",r.position="absolute",r.opacity="0";this.gridCtrl.getGui().appendChild(o);try{e(o)}catch(e){(0,s._warn)(42)}t?window.setTimeout(()=>{t(o),o.remove()},100):o.remove()}}t.ClipboardService=d},12664:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.agPrimaryColsCSS=void 0,t.agPrimaryColsCSS=".ag-column-select{display:flex;flex:3 1 0px;flex-direction:column;overflow:hidden;position:relative}.ag-column-select-header{flex:none;height:var(--ag-header-height);padding-left:var(--ag-widget-container-horizontal-padding);padding-right:var(--ag-widget-container-horizontal-padding)}.ag-column-select-column,.ag-column-select-column-group,.ag-column-select-header{align-items:center;display:flex;gap:var(--ag-widget-horizontal-spacing);position:relative}.ag-column-select-column,.ag-column-select-column-group{height:100%}:where(.ag-ltr) .ag-column-select-column,:where(.ag-ltr) .ag-column-select-column-group{padding-left:calc(var(--ag-indentation-level)*var(--ag-column-select-indent-size))}:where(.ag-rtl) .ag-column-select-column,:where(.ag-rtl) .ag-column-select-column-group{padding-right:calc(var(--ag-indentation-level)*var(--ag-column-select-indent-size))}.ag-column-select-column-group:where(:not(:last-child)),.ag-column-select-column:where(:not(:last-child)){margin-bottom:var(--ag-widget-vertical-spacing)}.ag-column-select-header-icon{border-radius:var(--ag-border-radius);cursor:pointer;height:var(--ag-icon-size);position:relative;width:var(--ag-icon-size);&:focus-visible{box-shadow:var(--ag-focus-shadow)}}.ag-column-select-header-filter-wrapper{flex:1 1 auto}.ag-column-select-header-filter{width:100%}.ag-column-select-list{flex:1 1 0px;overflow:hidden}:where(.ag-ltr) .ag-column-select-add-group-indent{margin-left:calc(var(--ag-icon-size) + var(--ag-spacing)*1.5)}:where(.ag-rtl) .ag-column-select-add-group-indent{margin-right:calc(var(--ag-icon-size) + var(--ag-spacing)*1.5)}.ag-column-select-column-group-readonly,.ag-column-select-column-readonly{opacity:.5;pointer-events:none;.ag-icon{opacity:.5}&.ag-icon-grip{opacity:.35}}.ag-column-select-column-readonly{&.ag-icon-grip,.ag-icon-grip{opacity:.35}}.ag-column-select-virtual-list-viewport{padding:calc(var(--ag-widget-container-vertical-padding)*.5) 0}.ag-column-select-virtual-list-item{padding:0 var(--ag-widget-container-horizontal-padding)}.ag-column-select-column-label{flex:1 1 auto;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ag-column-select-checkbox{display:flex}"},31269:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.AgPrimaryCols=void 0;const s=i(76624),o=i(12664),r=i(34312),n=i(85853),a={tag:"div",cls:"ag-column-select",children:[{tag:"ag-primary-cols-header",ref:"primaryColsHeaderPanel"},{tag:"ag-primary-cols-list",ref:"primaryColsListPanel"}]};class l extends s.Component{constructor(){super(a,[r.AgPrimaryColsHeaderSelector,n.AgPrimaryColsListSelector]),this.primaryColsHeaderPanel=s.RefPlaceholder,this.primaryColsListPanel=s.RefPlaceholder,this.registerCSS(o.agPrimaryColsCSS)}init(e,t,i){const{primaryColsHeaderPanel:o,primaryColsListPanel:r}=this;o.init(t);const n=t.suppressColumnFilter,a=t.suppressColumnSelectAll;t.suppressColumnExpandAll&&n&&a&&o.setDisplayed(!1),this.addManagedListeners(r,{groupExpanded:e=>{o.setExpandState(e.state),t.onStateUpdated()},selectionChanged:e=>o.setSelectionState(e.state)}),r.init(t,e,i),this.addManagedListeners(o,{expandAll:r.doSetExpandedAll.bind(r,!0),collapseAll:r.doSetExpandedAll.bind(r,!1),selectAll:r.doSetSelectedAll.bind(r,!0),unselectAll:r.doSetSelectedAll.bind(r,!1),filterChanged:e=>r.setFilterText(e.filterText)}),this.positionableFeature=this.createManagedBean(new s.PositionableFeature(this.getGui(),{minHeight:100}))}toggleResizable(e){this.positionableFeature.setResizable(!!e&&{bottom:!0})}expandGroups(e){this.primaryColsListPanel.setGroupsExpanded(!0,e)}collapseGroups(e){this.primaryColsListPanel.setGroupsExpanded(!1,e)}setColumnLayout(e){this.primaryColsListPanel.setColumnLayout(e)}syncLayoutWithGrid(){this.primaryColsListPanel.onColumnsChanged()}getExpandedGroups(){return this.primaryColsListPanel.getExpandedGroups()}}t.AgPrimaryCols=l},34312:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.AgPrimaryColsHeaderSelector=t.AgPrimaryColsHeader=t.ExpandState=void 0;const s=i(76624);var o;!function(e){e[e.EXPANDED=0]="EXPANDED",e[e.COLLAPSED=1]="COLLAPSED",e[e.INDETERMINATE=2]="INDETERMINATE"}(o||(t.ExpandState=o={}));const r={tag:"div",cls:"ag-column-select-header",role:"presentation",children:[{tag:"div",ref:"eExpand",cls:"ag-column-select-header-icon"},{tag:"ag-checkbox",ref:"eSelect",cls:"ag-column-select-header-checkbox"},{tag:"ag-input-text-field",ref:"eFilterTextField",cls:"ag-column-select-header-filter-wrapper"}]};class n extends s.Component{constructor(){super(r,[s.AgCheckboxSelector,s.AgInputTextFieldSelector]),this.eExpand=s.RefPlaceholder,this.eSelect=s.RefPlaceholder,this.eFilterTextField=s.RefPlaceholder}postConstruct(){this.createExpandIcons(),this.addManagedListeners(this.eExpand,{click:this.onExpandClicked.bind(this),keydown:e=>{e.key===s.KeyCode.SPACE&&(e.preventDefault(),this.onExpandClicked())}}),this.addManagedElementListeners(this.eSelect.getInputElement(),{click:this.onSelectClicked.bind(this)}),this.addManagedPropertyListener("functionsReadOnly",()=>this.onFunctionsReadOnlyPropChanged()),this.eFilterTextField.setAutoComplete(!1).onValueChange(()=>this.onFilterTextChanged()),this.addManagedEventListeners({newColumnsLoaded:this.showOrHideOptions.bind(this)});const e=this.getLocaleTextFunc();this.eSelect.setInputAriaLabel(e("ariaColumnSelectAll","Toggle All Columns Visibility")),this.eFilterTextField.setInputAriaLabel(e("ariaFilterColumnsInput","Filter Columns Input")),this.activateTabIndex([this.eExpand])}onFunctionsReadOnlyPropChanged(){const e=this.gos.get("functionsReadOnly");this.eSelect.setReadOnly(e),this.eSelect.toggleCss("ag-column-select-column-readonly",e)}init(e){this.params=e;const t=this.gos.get("functionsReadOnly");this.eSelect.setReadOnly(t),this.eSelect.toggleCss("ag-column-select-column-readonly",t),this.beans.colModel.ready&&this.showOrHideOptions()}createExpandIcons(){const e=this.beans;this.eExpand.appendChild(this.eExpandChecked=(0,s._createIconNoSpan)("columnSelectOpen",e)),this.eExpand.appendChild(this.eExpandUnchecked=(0,s._createIconNoSpan)("columnSelectClosed",e)),this.eExpand.appendChild(this.eExpandIndeterminate=(0,s._createIconNoSpan)("columnSelectIndeterminate",e)),this.setExpandState(o.EXPANDED)}showOrHideOptions(){const e=this.params,t=!e.suppressColumnFilter,i=!e.suppressColumnSelectAll,o=!e.suppressColumnExpandAll,r=!!this.beans.colModel.colDefCols?.treeDepth,n=this.getLocaleTextFunc();this.eFilterTextField.setInputPlaceholder(n("searchOoo","Search...")),(0,s._setDisplayed)(this.eFilterTextField.getGui(),t),(0,s._setDisplayed)(this.eSelect.getGui(),i),(0,s._setDisplayed)(this.eExpand,o&&r)}onFilterTextChanged(){this.onFilterTextChangedDebounced||(this.onFilterTextChangedDebounced=(0,s._debounce)(this,()=>{const e=this.eFilterTextField.getValue();this.dispatchLocalEvent({type:"filterChanged",filterText:e})},300)),this.onFilterTextChangedDebounced()}onSelectClicked(){this.dispatchLocalEvent({type:this.selectState?"unselectAll":"selectAll"})}onExpandClicked(){this.dispatchLocalEvent({type:this.expandState===o.EXPANDED?"collapseAll":"expandAll"})}setExpandState(e){this.expandState=e,(0,s._setDisplayed)(this.eExpandChecked,e===o.EXPANDED),(0,s._setDisplayed)(this.eExpandUnchecked,e===o.COLLAPSED),(0,s._setDisplayed)(this.eExpandIndeterminate,e===o.INDETERMINATE)}setSelectionState(e){this.selectState=e,this.eSelect.setValue(this.selectState)}}t.AgPrimaryColsHeader=n,t.AgPrimaryColsHeaderSelector={selector:"AG-PRIMARY-COLS-HEADER",component:n}},85853:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.AgPrimaryColsListSelector=t.AgPrimaryColsList=void 0;const s=i(76624),o=i(45760),r=i(26092),n=i(37904),a=i(34312),l=i(62176),d=i(32016),c=i(44781),u=i(34545),h=i(94224);class g{constructor(e){this.items=e}getRowCount(){return this.items.length}getRow(e){return this.items[e]}}class p extends s.Component{wireBeans(e){this.colModel=e.colModel}constructor(){super({tag:"div",cls:"ag-column-select-list",role:"presentation"}),this.destroyColumnItemFuncs=[],this.hasLoadedInitialState=!1,this.isInitialState=!1,this.skipRefocus=!1}destroy(){this.destroyColumnTree(),super.destroy()}destroyColumnTree(){this.allColsTree=[];for(const e of this.destroyColumnItemFuncs)e();this.destroyColumnItemFuncs=[]}init(e,t,i){this.params=e;const{suppressSyncLayoutWithGrid:o,contractColumnSelection:r,suppressColumnMove:a}=e;this.allowDragging=t,this.eventType=i,o||this.addManagedEventListeners({columnMoved:this.onColumnsChanged.bind(this)}),this.addManagedEventListeners({newColumnsLoaded:this.onColumnsChanged.bind(this)});const l=this.fireSelectionChangedEvent.bind(this);this.addManagedEventListeners({columnPivotChanged:l,columnPivotModeChanged:l,columnRowGroupChanged:l,columnValueChanged:l,columnVisible:l,newColumnsLoaded:l}),this.expandGroupsByDefault=!r;const d=a||o,c=this.createManagedBean(new n.VirtualList({cssIdentifier:"column-select",ariaRole:"tree",moveItemCallback:(e,t)=>{d||this.moveItems(e,t)}}));this.virtualList=c,this.appendChild(c.getGui()),c.setComponentCreator((e,t)=>((0,s._setAriaLevel)(t,e.depth+1),this.createComponentFromItem(e,t))),this.colModel.ready&&this.onColumnsChanged(),d||this.createItemDragFeature()}createItemDragFeature(){const{gos:e,beans:t,virtualList:i}=this;this.createManagedBean(new o.VirtualListDragFeature(this,i,{dragSourceType:s.DragSourceType.ToolPanel,addListeners:(e,t,i)=>{e.addManagedEventListeners({columnPanelItemDragStart:t,columnPanelItemDragEnd:i})},getCurrentDragValue:e=>(0,d.getCurrentDragValue)(e),isMoveBlocked:i=>(0,d.isMoveBlocked)(e,t,(0,d.getCurrentColumnsBeingMoved)(i)),getNumRows:e=>e.getDisplayedColsList().length,moveItem:(e,i)=>(0,d.moveItem)(t,(0,d.getCurrentColumnsBeingMoved)(e),i)}))}moveItems(e,t){const{gos:i,beans:s}=this,{modelItem:o}=e,{group:r,columnGroup:n,column:a,expanded:l}=o,c=(0,d.getCurrentColumnsBeingMoved)(r?n:a);if((0,d.isMoveBlocked)(i,s,c))return;const u=this.displayedColsList.indexOf(o),h=t?-1:1;let g=0;if(t){const t=e.columnDepth>0?a.getParent()?.getChildren():null;t?.length&&a===t[0]&&(g=-1)}else r&&(g=l?o.children.length:0);const p=Math.min(Math.max(u+g+h,0),this.displayedColsList.length-1);this.skipRefocus=!0,(0,d.moveItem)(s,c,{rowIndex:p,position:t?"top":"bottom",component:this.virtualList.getComponentAt(p)}),this.focusRowIfAlive(p-g).then(()=>{this.skipRefocus=!1})}createComponentFromItem(e,t){const i=this.allowDragging;if(e.group){const s=new h.ToolPanelColumnGroupComp(e,i,this.eventType,t);return this.createBean(s),s}const s=new u.ToolPanelColumnComp(e,i,this.groupsExist,t);return this.createBean(s),s}onColumnsChanged(){const e=this.params;this.hasLoadedInitialState||(this.hasLoadedInitialState=!0,this.isInitialState=!!e.initialState);const t=this.getExpandedStates(),i=this.colModel.isPivotMode();!e.suppressSyncLayoutWithGrid&&!i?this.buildTreeFromWhatGridIsDisplaying():this.buildTreeFromProvidedColumnDefs(),this.setExpandedStates(t),this.markFilteredColumns(),this.flattenAndFilterModel(),this.isInitialState=!1}getDisplayedColsList(){return this.displayedColsList}getExpandedStates(){const e={};if(this.isInitialState){const{expandedGroupIds:t}=this.params.initialState;for(const i of t)e[i]=!0;return e}return this.allColsTree?(this.forEachItem(t=>{if(!t.group)return;const i=t.columnGroup;i&&(e[i.getId()]=t.expanded)}),e):{}}setExpandedStates(e){if(!this.allColsTree)return;const{isInitialState:t}=this;this.forEachItem(i=>{if(!i.group)return;const s=i.columnGroup;if(s){const o=e[s.getId()];(null!=o||t)&&(i.expanded=!!o)}})}buildTreeFromWhatGridIsDisplaying(){(0,r.syncLayoutWithGrid)(this.colModel,this.setColumnLayout.bind(this))}setColumnLayout(e){const t=(0,r.toolPanelCreateColumnTree)(this.colModel,e);this.buildListModel(t),this.groupsExist=e.some(e=>e&&void 0!==e.children),this.markFilteredColumns(),this.flattenAndFilterModel()}buildTreeFromProvidedColumnDefs(){const e=this.colModel;this.buildListModel(e.getColDefColTree()),this.groupsExist=!!e.colDefCols?.treeDepth}buildListModel(e){const t=this.onColumnExpanded.bind(this),i=e=>{e.addEventListener("expandedChanged",t);const i=e.removeEventListener.bind(e,"expandedChanged",t);this.destroyColumnItemFuncs.push(i)},o=this.beans.colNames,r=(e,t,i)=>{for(const o of e)(0,s.isProvidedColumnGroup)(o)?n(o,t,i):a(o,t,i)},n=(e,t,s)=>{const n=e.getColGroupDef(),a=n?.suppressColumnsToolPanel;if(a)return;if(e.isPadding())return void r(e.getChildren(),t,s);const d=o.getDisplayNameForProvidedColumnGroup(null,e,"columnToolPanel"),c=new l.ColumnModelItem(d,e,t,!0,this.expandGroupsByDefault);s.push(c),i(c),r(e.getChildren(),t+1,c.children)},a=(e,t,i)=>{const s=e.getColDef()?.suppressColumnsToolPanel;if(s)return;const r=o.getDisplayNameForColumn(e,"columnToolPanel");i.push(new l.ColumnModelItem(r,e,t))};this.destroyColumnTree(),r(e,0,this.allColsTree)}onColumnExpanded(){this.flattenAndFilterModel()}flattenAndFilterModel(){this.displayedColsList=[];const e=t=>{t.passesFilter&&(this.displayedColsList.push(t),t.group&&t.expanded&&t.children.forEach(e))},t=this.virtualList;this.allColsTree.forEach(e),t.setModel(new g(this.displayedColsList));let i=null;this.skipRefocus||(i=t.getLastFocusedRow()),t.refresh(),null!=i&&this.focusRowIfAlive(i),this.notifyListeners(),this.refreshAriaLabel()}refreshAriaLabel(){const e=this.getLocaleTextFunc(),t=e("ariaColumnPanelList","Column List"),i=e("columns","Columns"),o=this.displayedColsList.length;(0,s._setAriaLabel)(this.virtualList.getAriaElement(),`${t} ${o} ${i}`)}focusRowIfAlive(e){return-1===e?Promise.resolve():new Promise(t=>{window.setTimeout(()=>{this.isAlive()&&this.virtualList.focusRow(e),t()},0)})}forEachItem(e){const t=i=>{for(const s of i)e(s),s.group&&t(s.children)},i=this.allColsTree;i&&t(i)}doSetExpandedAll(e){this.forEachItem(t=>{t.group&&(t.expanded=e)})}setGroupsExpanded(e,t){if(!t)return void this.doSetExpandedAll(e);const i=[];this.forEachItem(s=>{if(!s.group)return;const o=s.columnGroup.getId();t.indexOf(o)>=0&&(s.expanded=e,i.push(o))});const o=t.filter(e=>!i.includes(e));o.length>0&&(0,s._warn)(157,{unrecognisedGroupIds:o})}getExpandState(){let e=0,t=0;return this.forEachItem(i=>{i.group&&(i.expanded?e++:t++)}),e>0&&t>0?a.ExpandState.INDETERMINATE:t>0?a.ExpandState.COLLAPSED:a.ExpandState.EXPANDED}doSetSelectedAll(e){(0,c.selectAllChildren)(this.beans,this.allColsTree,e,this.eventType)}getSelectionState(){let e=0,t=0;const i=this.colModel.isPivotMode();if(this.forEachItem(s=>{if(s.group)return;if(!s.passesFilter)return;const o=s.column,r=o.getColDef();let n;if(i){if(!o.isAllowPivot()&&!o.isAllowRowGroup()&&!o.isAllowValue())return;n=o.isValueActive()||o.isPivotActive()||o.isRowGroupActive()}else{if(r.lockVisible)return;n=o.isVisible()}n?e++:t++}),!(e>0&&t>0))return!(0===e||t>0)}setFilterText(e){this.filterText=(0,s._exists)(e)?e.toLowerCase():null,this.markFilteredColumns(),this.flattenAndFilterModel()}markFilteredColumns(){const e=e=>{if(!(0,s._exists)(this.filterText))return!0;const t=e.displayName;return null==t||-1!==t.toLowerCase().indexOf(this.filterText)},t=(i,s)=>{let o=!1;if(i.group){const r=e(i);for(const e of i.children){const i=t(e,r||s);i&&(o=i)}}const r=!(!s&&!o)||e(i);return i.passesFilter=r,r};for(const e of this.allColsTree)t(e,!1)}notifyListeners(){this.fireGroupExpandedEvent(),this.fireSelectionChangedEvent()}fireGroupExpandedEvent(){const e=this.getExpandState();this.dispatchLocalEvent({type:"groupExpanded",state:e})}fireSelectionChangedEvent(){if(!this.allColsTree)return;const e=this.getSelectionState();this.dispatchLocalEvent({type:"selectionChanged",state:e})}getExpandedGroups(){const e=[];return this.allColsTree?(this.forEachItem(t=>{t.group&&t.expanded&&e.push(t.columnGroup.getId())}),e):e}}t.AgPrimaryColsList=p,t.AgPrimaryColsListSelector={selector:"AG-PRIMARY-COLS-LIST",component:p}},62176:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ColumnModelItem=void 0;const s=i(76624);t.ColumnModelItem=class{constructor(e,t,i,o=!1,r){this.displayName=e,this.depth=i,this.group=o,this.localEventService=new s.LocalEventService,o?(this.columnGroup=t,this._expanded=r,this.children=[]):this.column=t}get expanded(){return!!this._expanded}set expanded(e){e!==this._expanded&&(this._expanded=e,this.localEventService.dispatchEvent({type:"expandedChanged"}))}addEventListener(e,t){this.localEventService.addEventListener(e,t)}removeEventListener(e,t){this.localEventService.removeEventListener(e,t)}}},32016:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.getCurrentDragValue=t.moveItem=t.isMoveBlocked=t.getCurrentColumnsBeingMoved=void 0;const s=i(76624),o=i(94224);t.getCurrentColumnsBeingMoved=e=>(0,s.isProvidedColumnGroup)(e)?e.getLeafColumns():e?[e]:[];const r=(e,t,i)=>{if(!t)return 0;const s=t[0],o=t.length;return e.indexOf(s){if(e.get("suppressMovableColumns")||t.colModel.isPivotMode())return!0;return!!i.find(({colDef:e})=>!!e.suppressMovable||!!e.lockPosition)};t.moveItem=(e,t,i)=>{if(!i)return;const{component:s}=i;let n=null,a="top"===i.position;if(s instanceof o.ToolPanelColumnGroupComp){n=s.getColumns()[0],a=!0}else s&&(n=s.column);if(!n)return;const l=((e,t,i,s)=>{if(!i||!t)return null;const o=e.colModel.getCols(),n=o.indexOf(i),a=s?n:n+1;return a-r(o,t,a)})(e,t,n,a);null!=l&&e.colMoves?.moveColumns(t,l,"toolPanelUi")};t.getCurrentDragValue=e=>e.column},77367:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.columnToolPanelCSS=void 0,t.columnToolPanelCSS=".ag-column-panel{display:flex;flex:1 1 auto;flex-direction:column;overflow:hidden}.ag-pivot-mode-panel{display:flex;height:var(--ag-header-height)}.ag-pivot-mode-select{align-items:center;display:flex}:where(.ag-ltr) .ag-pivot-mode-select{margin-left:var(--ag-widget-container-horizontal-padding)}:where(.ag-rtl) .ag-pivot-mode-select{margin-right:var(--ag-widget-container-horizontal-padding)}.ag-column-panel-column-select{border-bottom:var(--ag-tool-panel-separator-border)}.ag-column-panel-column-select:where(:nth-child(n+2 of :not(.ag-hidden))){border-top:var(--ag-tool-panel-separator-border)}:where(.ag-column-panel) .ag-column-drop-vertical{flex:1 1 0px;min-height:50px}:where(.ag-column-panel) .ag-column-drop-vertical:where(:not(.ag-last-column-drop)){border-bottom:var(--ag-tool-panel-separator-border)}"},84142:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ColumnToolPanel=void 0;const s=i(76624),o=i(31269),r=i(77367);class n extends s.Component{constructor(){super({tag:"div",cls:"ag-column-panel"}),this.initialised=!1,this.childDestroyFuncs=[],this.registerCSS(r.columnToolPanelCSS)}wireBeans(e){this.colToolPanelFactory=e.colToolPanelFactory}setVisible(e){super.setDisplayed(e),e&&!this.initialised&&this.init(this.params)}init(e){const t={...(0,s._addGridCommonParams)(this.gos,{suppressColumnMove:!1,suppressColumnSelectAll:!1,suppressColumnFilter:!1,suppressColumnExpandAll:!1,contractColumnSelection:!1,suppressPivotMode:!1,suppressRowGroups:!1,suppressValues:!1,suppressPivots:!1,suppressSyncLayoutWithGrid:!1}),...e};this.params=t;const{childDestroyFuncs:i,colToolPanelFactory:r,gos:n}=this,a=n.isModuleRegistered("SharedPivot"),l=a||n.isModuleRegistered("SharedRowGrouping");!t.suppressPivotMode&&r&&a&&(this.pivotModePanel=r.createPivotModePanel(this,i));const d=this.createBean(new o.AgPrimaryCols);if(this.primaryColsPanel=d,i.push(()=>this.destroyBean(this.primaryColsPanel)),d.init(!0,t,"toolPanelUi"),d.addCss("ag-column-panel-column-select"),this.appendChild(d),r){!t.suppressRowGroups&&l&&(this.rowGroupDropZonePanel=r.createRowGroupPanel(this,i)),!t.suppressValues&&l&&(this.valuesDropZonePanel=r.createValuesPanel(this,i)),!t.suppressPivots&&a&&(this.pivotDropZonePanel=r.createPivotPanel(this,i)),this.setLastVisible();const[e]=this.addManagedEventListeners({columnPivotModeChanged:()=>{this.resetChildrenHeight(),this.setLastVisible()}});i.push(()=>e())}this.initialised=!0}setPivotModeSectionVisible(e){const t=this.colToolPanelFactory;t&&(this.pivotModePanel=t.setPanelVisible(this.pivotModePanel,e,t.createPivotModePanel.bind(t,this,this.childDestroyFuncs,!0)),this.setLastVisible())}setRowGroupsSectionVisible(e){const t=this.colToolPanelFactory;t&&(this.rowGroupDropZonePanel=t.setPanelVisible(this.rowGroupDropZonePanel,e,t.createRowGroupPanel.bind(t,this,this.childDestroyFuncs)),this.setLastVisible())}setValuesSectionVisible(e){const t=this.colToolPanelFactory;t&&(this.valuesDropZonePanel=t.setPanelVisible(this.valuesDropZonePanel,e,t.createValuesPanel.bind(t,this,this.childDestroyFuncs)),this.setLastVisible())}setPivotSectionVisible(e){const t=this.colToolPanelFactory;t&&(this.pivotDropZonePanel=t.setPanelVisible(this.pivotDropZonePanel,e,t.createPivotPanel.bind(t,this,this.childDestroyFuncs)),this.pivotDropZonePanel?.setDisplayed(e),this.setLastVisible())}setResizers(){for(const e of[this.primaryColsPanel,this.rowGroupDropZonePanel,this.valuesDropZonePanel,this.pivotDropZonePanel]){if(!e)continue;const t=e.getGui();e.toggleResizable(!t.classList.contains("ag-last-column-drop")&&!t.classList.contains("ag-hidden"))}}setLastVisible(){const e=this.getGui(),t=Array.prototype.slice.call(e.querySelectorAll(".ag-column-drop"));for(const e of t)e.classList.remove("ag-last-column-drop");const i=e.querySelectorAll(".ag-column-drop:not(.ag-hidden)"),o=(0,s._last)(i);o&&o.classList.add("ag-last-column-drop"),this.setResizers()}resetChildrenHeight(){const e=this.getGui().children;for(let t=0;te.destroyBean(i)),s?e.prependChild(i):e.appendChild(i),i}}t.ColumnToolPanelFactory=l},86455:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ColumnsToolPanelModule=void 0;const s=i(76624),o=i(39206),r=i(26358),n=i(19586),a=i(73375),l=i(84142),d=i(68698);t.ColumnsToolPanelModule={moduleName:"ColumnsToolPanel",version:n.VERSION,beans:[d.ColumnToolPanelFactory],userComponents:{agColumnsToolPanel:l.ColumnToolPanel},icons:{ensureColumnVisible:"column-arrow",columnsToolPanel:"columns",menuAddRowGroup:"group",menuRemoveRowGroup:"group",pivotPanel:"pivot",rowGroupPanel:"group",valuePanel:"aggregation",columnSelectClosed:"tree-closed",columnSelectOpen:"tree-open",columnSelectIndeterminate:"tree-indeterminate"},dependsOn:[o.EnterpriseCoreModule,r.SideBarModule,s._ColumnMoveModule,s._SharedDragAndDropModule,s._PopupModule,a.MenuItemModule]}},44781:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.createPivotState=t.updateColumns=t.setAllColumns=t.selectAllChildren=void 0;const s=i(76624);function o(e,t,i,o){e.colModel.isPivotMode()?function(e,t,i,o){!function(e,t,i,o){const r=[],n=t=>{if(!t.isAnyFunctionActive())if(t.isAllowValue()){const i="string"==typeof t.getAggFunc()?t.getAggFunc():e.aggFuncSvc?.getDefaultAggFunc(t);r.push({colId:t.getId(),aggFunc:i})}else t.isAllowRowGroup()?r.push({colId:t.getId(),rowGroup:!0}):t.isAllowPivot()&&r.push({colId:t.getId(),pivot:!0})},a=e=>{(e.isPivotActive()||e.isRowGroupActive()||e.isValueActive())&&r.push({colId:e.getId(),pivot:!1,rowGroup:!1,aggFunc:null})},l=i?n:a;t.forEach(l),r.length>0&&(0,s._applyColumnState)(e,{state:r},o)}(e,t,i,o)}(e,t,i,o):function(e,t,i,o){const r=[];for(const e of t)e.getColDef().lockVisible||e.isVisible()!=i&&r.push({colId:e.getId(),hide:!i});r.length>0&&(0,s._applyColumnState)(e,{state:r},o)}(e,t,i,o)}t.selectAllChildren=function(e,t,i,s){o(e,function(e){const t=[],i=e=>{for(const s of e)s.passesFilter&&(s.group?i(s.children):t.push(s.column))};return i(e),t}(t),i,s)},t.setAllColumns=o,t.updateColumns=function(e,t){const{columns:i,visibleState:o,pivotState:r,eventType:n}=t,a=i.map(t=>{const i=t.getColId();if(e.colModel.isPivotMode()){const e=r?.[i];return{colId:i,pivot:e?.pivot,rowGroup:e?.rowGroup,aggFunc:e?.aggFunc}}return{colId:i,hide:!o?.[i]}});(0,s._applyColumnState)(e,{state:a},n)},t.createPivotState=function(e){return{pivot:e.isPivotActive(),rowGroup:e.isRowGroupActive(),aggFunc:e.isValueActive()?e.getAggFunc():void 0}}},64465:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.PivotModePanel=void 0;const s=i(76624),o={tag:"div",cls:"ag-pivot-mode-panel",children:[{tag:"ag-toggle-button",ref:"cbPivotMode",cls:"ag-pivot-mode-select"}]};class r extends s.Component{constructor(){super(...arguments),this.cbPivotMode=s.RefPlaceholder}postConstruct(){this.setTemplate(o,[s.AgToggleButtonSelector]);const e=this.cbPivotMode,{colModel:t,ctrlsSvc:i,gos:r}=this.beans;e.setValue(t.isPivotMode());const n=this.getLocaleTextFunc();e.setLabel(n("pivotMode","Pivot Mode"));const a=()=>{const i=t.isPivotMode();e.setValue(i)};this.addManagedListeners(e,{fieldValueChanged:()=>{const s=!!e.getValue();if(s!==t.isPivotMode()){r.updateGridOptions({options:{pivotMode:s},source:"toolPanelUi"});for(const e of i.getHeaderRowContainerCtrls())e.refresh()}}}),this.addManagedEventListeners({newColumnsLoaded:a,columnPivotModeChanged:a})}}t.PivotModePanel=r},34545:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ToolPanelColumnComp=void 0;const s=i(76624),o=i(44781),r=i(80334),n={tag:"div",cls:"ag-column-select-column",children:[{tag:"ag-checkbox",ref:"cbSelect",cls:"ag-column-select-checkbox"},{tag:"span",ref:"eLabel",cls:"ag-column-select-column-label"}]};class a extends s.Component{constructor(e,t,i,o){super(),this.modelItem=e,this.allowDragging=t,this.groupsExist=i,this.focusWrapper=o,this.eLabel=s.RefPlaceholder,this.cbSelect=s.RefPlaceholder,this.processingColumnStateChange=!1;const{column:r,depth:n,displayName:a}=e;this.column=r,this.columnDepth=n,this.displayName=a}postConstruct(){this.setTemplate(n,[s.AgCheckboxSelector]);const{beans:e,cbSelect:t,displayName:i,eLabel:o,columnDepth:r,groupsExist:a,column:l,gos:d,focusWrapper:c}=this,u=(0,s._createIconNoSpan)("columnDrag",e);this.eDragHandle=u,u.classList.add("ag-drag-handle","ag-column-select-column-drag-handle");const h=t.getGui(),g=t.getInputElement();h.after(u),g.setAttribute("tabindex","-1"),o.textContent=i,a&&this.addCss("ag-column-select-add-group-indent"),this.addCss(`ag-column-select-indent-${r}`),this.getGui().style.setProperty("--ag-indentation-level",String(r)),this.tooltipFeature=this.createOptionalManagedBean(e.registry.createDynamicBean("tooltipFeature",!1,{getGui:()=>this.focusWrapper,getLocation:()=>"columnToolPanelColumn",shouldDisplayTooltip:(0,s._getShouldDisplayTooltip)(d,()=>o),getAdditionalParams:()=>({colDef:l.getColDef()})})),this.setupDragging();const p=this.onColumnStateChanged.bind(this);this.addManagedEventListeners({columnPivotModeChanged:p}),this.addManagedListeners(l,{columnValueChanged:p,columnPivotChanged:p,columnRowGroupChanged:p,visibleChanged:p}),this.addManagedListeners(c,{keydown:this.handleKeyDown.bind(this),contextmenu:this.onContextMenu.bind(this)});const m=new s.TouchListener(c);this.addManagedListeners(m,{longTap:e=>this.onContextMenu(e.touchStart)}),this.addDestroyFunc(m.destroy.bind(m)),this.addManagedPropertyListener("functionsReadOnly",this.onColumnStateChanged.bind(this)),this.addManagedListeners(t,{fieldValueChanged:this.onCheckboxChanged.bind(this)}),this.addManagedElementListeners(o,{click:this.onLabelClicked.bind(this)}),this.onColumnStateChanged(),this.refreshAriaLabel(),this.setupTooltip();const f=(0,s._getToolPanelClassesFromColDef)(l.getColDef(),d,l,null);for(const e of f)this.toggleCss(e,!0)}getColumn(){return this.column}setupTooltip(){const e=()=>this.tooltipFeature?.setTooltipAndRefresh(this.column.getColDef().headerTooltip);e(),this.addManagedEventListeners({newColumnsLoaded:e})}onContextMenu(e){const{column:t,gos:i}=this;if(i.get("functionsReadOnly"))return;const s=this.createBean(new r.ToolPanelContextMenu(t,e,this.focusWrapper));this.addDestroyFunc(()=>{s.isAlive()&&this.destroyBean(s)})}handleKeyDown(e){e.key===s.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||(0,o.setAllColumns)(this.beans,[this.column],e,"toolPanelUi"))}refreshAriaLabel(){const{cbSelect:e,focusWrapper:t,displayName:i}=this,o=this.getLocaleTextFunc(),r=o("ariaColumn","Column"),n=e.getValue()?o("ariaVisible","visible"):o("ariaHidden","hidden"),a=o("ariaToggleVisibility","Press SPACE to toggle visibility");(0,s._setAriaLabel)(t,`${i} ${r}`),this.cbSelect.setInputAriaLabel(`${a} (${n})`),(0,s._setAriaDescribedBy)(t,e.getInputElement().id)}setupDragging(){const e=this.eDragHandle;if(!this.allowDragging)return void(0,s._setDisplayed)(e,!1);const t=this.beans,{gos:i,eventSvc:r,dragAndDrop:n}=t;let a=!i.get("suppressDragLeaveHidesColumns");const l={type:s.DragSourceType.ToolPanel,eElement:e,dragItemName:this.displayName,getDefaultIconName:()=>a?"hide":"notAllowed",getDragItem:()=>this.createDragItem(),onDragStarted:()=>{a=!i.get("suppressDragLeaveHidesColumns"),r.dispatchEvent({type:"columnPanelItemDragStart",column:this.column})},onDragStopped:()=>{r.dispatchEvent({type:"columnPanelItemDragEnd"})},onGridEnter:e=>{a&&(0,o.updateColumns)(t,{columns:[this.column],visibleState:e?.visibleState,pivotState:e?.pivotState,eventType:"toolPanelUi"})},onGridExit:()=>{a&&this.onChangeCommon(!1)}};n.addDragSource(l,!0),this.addDestroyFunc(()=>n.removeDragSource(l))}createDragItem(){const e=this.column.getColId(),t={[e]:this.column.isVisible()},i={[e]:(0,o.createPivotState)(this.column)};return{columns:[this.column],visibleState:t,pivotState:i}}onColumnStateChanged(){this.processingColumnStateChange=!0;const e=this.beans.colModel.isPivotMode();if(e){const e=this.column.isAnyFunctionActive();this.cbSelect.setValue(e)}else this.cbSelect.setValue(this.column.isVisible());let t=!0,i=!0;if(e){const e=this.gos.get("functionsReadOnly"),s=!this.column.isAnyFunctionAllowed();t=!e&&!s,i=t}else{const{enableRowGroup:e,enableValue:s,lockPosition:o,suppressMovable:r,lockVisible:n}=this.column.getColDef();t=!n,i=!!e||!!s||!(!!o||!!r)}this.cbSelect.setReadOnly(!t),this.eDragHandle.classList.toggle("ag-column-select-column-readonly",!i),this.toggleCss("ag-column-select-column-readonly",!i&&!t),this.cbSelect.setPassive(!1),this.processingColumnStateChange=!1}getDisplayName(){return this.displayName}onSelectAllChanged(e){const t=this.cbSelect;e!==t.getValue()&&(t.isReadOnly()||t.toggle())}isSelected(){return this.cbSelect.getValue()}isSelectable(){return!this.cbSelect.isReadOnly()}isExpandable(){return!1}setExpanded(e){(0,s._warn)(158)}}t.ToolPanelColumnComp=a},94224:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ToolPanelColumnGroupComp=void 0;const s=i(76624),o=i(44781),r=i(80334),n={tag:"div",cls:"ag-column-select-column-group",children:[{tag:"span",ref:"eColumnGroupIcons",cls:"ag-column-group-icons",children:[{tag:"span",ref:"eGroupClosedIcon",cls:"ag-column-group-closed-icon"},{tag:"span",ref:"eGroupOpenedIcon",cls:"ag-column-group-opened-icon"}]},{tag:"ag-checkbox",ref:"cbSelect",cls:"ag-column-select-checkbox"},{tag:"span",ref:"eLabel",cls:"ag-column-select-column-label"}]};class a extends s.Component{constructor(e,t,i,o){super(),this.modelItem=e,this.allowDragging=t,this.eventType=i,this.focusWrapper=o,this.cbSelect=s.RefPlaceholder,this.eLabel=s.RefPlaceholder,this.eGroupOpenedIcon=s.RefPlaceholder,this.eGroupClosedIcon=s.RefPlaceholder,this.eColumnGroupIcons=s.RefPlaceholder,this.processingColumnStateChange=!1;const{columnGroup:r,depth:n,displayName:a}=e;this.columnGroup=r,this.columnDepth=n,this.displayName=a}postConstruct(){this.setTemplate(n,[s.AgCheckboxSelector]);const{beans:e,cbSelect:t,eLabel:i,displayName:o,columnDepth:r,modelItem:a,focusWrapper:l,columnGroup:d}=this,{registry:c,gos:u}=e,h=(0,s._createIconNoSpan)("columnDrag",e);this.eDragHandle=h,h.classList.add("ag-drag-handle","ag-column-select-column-group-drag-handle");const g=t.getGui(),p=t.getInputElement();g.after(h),p.setAttribute("tabindex","-1"),i.textContent=o??"",this.setupExpandContract(),this.addCss("ag-column-select-indent-"+r),this.getGui().style.setProperty("--ag-indentation-level",String(r)),this.tooltipFeature=this.createOptionalManagedBean(c.createDynamicBean("tooltipFeature",!1,{getGui:()=>this.focusWrapper,getLocation:()=>"columnToolPanelColumnGroup",shouldDisplayTooltip:(0,s._getShouldDisplayTooltip)(u,()=>i)})),this.addManagedEventListeners({columnPivotModeChanged:this.onColumnStateChanged.bind(this)}),this.addManagedElementListeners(i,{click:this.onLabelClicked.bind(this)}),this.addManagedListeners(t,{fieldValueChanged:this.onCheckboxChanged.bind(this)}),this.addManagedListeners(a,{expandedChanged:this.onExpandChanged.bind(this)});const m=new s.TouchListener(this.getGui(),!1);this.addManagedListeners(m,{longTap:e=>this.onContextMenu(e.touchStart)}),this.addDestroyFunc(m.destroy.bind(m)),this.addManagedListeners(l,{keydown:this.handleKeyDown.bind(this),contextmenu:this.onContextMenu.bind(this)}),this.setOpenClosedIcons(),this.setupDragging(),this.onColumnStateChanged(),this.addVisibilityListenersToAllChildren(),this.refreshAriaExpanded(),this.refreshAriaLabel(),this.setupTooltip();const f=(0,s._getToolPanelClassesFromColDef)(d.getColGroupDef(),u,null,d);for(const e of f)this.toggleCss(e,!0)}getColumns(){return this.columnGroup.getLeafColumns()}setupTooltip(){const e=this.columnGroup.getColGroupDef();if(!e)return;const t=()=>this.tooltipFeature?.setTooltipAndRefresh(e.headerTooltip);t(),this.addManagedEventListeners({newColumnsLoaded:t})}handleKeyDown(e){switch(e.key){case s.KeyCode.LEFT:e.preventDefault(),this.modelItem.expanded=!1;break;case s.KeyCode.RIGHT:e.preventDefault(),this.modelItem.expanded=!0;break;case s.KeyCode.SPACE:e.preventDefault(),this.isSelectable()&&this.onSelectAllChanged(!this.isSelected())}}onContextMenu(e){const{columnGroup:t,gos:i}=this;if(i.get("functionsReadOnly"))return;const s=this.createBean(new r.ToolPanelContextMenu(t,e,this.focusWrapper));this.addDestroyFunc(()=>{s.isAlive()&&this.destroyBean(s)})}addVisibilityListenersToAllChildren(){const e=this.onColumnStateChanged.bind(this);for(const t of this.columnGroup.getLeafColumns())this.addManagedListeners(t,{visibleChanged:e,columnValueChanged:e,columnPivotChanged:e,columnRowGroupChanged:e})}setupDragging(){if(!this.allowDragging)return void(0,s._setDisplayed)(this.eDragHandle,!1);const e=this.beans,{gos:t,eventSvc:i,dragAndDrop:r}=e;let n=!t.get("suppressDragLeaveHidesColumns");const a={type:s.DragSourceType.ToolPanel,eElement:this.eDragHandle,dragItemName:this.displayName,getDefaultIconName:()=>n?"hide":"notAllowed",getDragItem:()=>this.createDragItem(),onDragStarted:()=>{n=!t.get("suppressDragLeaveHidesColumns"),i.dispatchEvent({type:"columnPanelItemDragStart",column:this.columnGroup})},onDragStopped:()=>{i.dispatchEvent({type:"columnPanelItemDragEnd"})},onGridEnter:t=>{n&&(0,o.updateColumns)(e,{columns:this.columnGroup.getLeafColumns(),visibleState:t?.visibleState,pivotState:t?.pivotState,eventType:this.eventType})},onGridExit:()=>{n&&this.onChangeCommon(!1)}};r.addDragSource(a,!0),this.addDestroyFunc(()=>r.removeDragSource(a))}createDragItem(){const e=this.columnGroup.getLeafColumns(),t={},i={};for(const s of e){const e=s.getId();t[e]=s.isVisible(),i[e]=(0,o.createPivotState)(s)}return{columns:e,visibleState:t,pivotState:i}}setupExpandContract(){const{beans:e,eGroupClosedIcon:t,eGroupOpenedIcon:i,eColumnGroupIcons:o}=this;t.appendChild((0,s._createIcon)("columnSelectClosed",e,null)),i.appendChild((0,s._createIcon)("columnSelectOpen",e,null));const r=this.onExpandOrContractClicked.bind(this);this.addManagedElementListeners(t,{click:r}),this.addManagedElementListeners(i,{click:r});const n=new s.TouchListener(o,!0);this.addManagedListeners(n,{tap:r}),this.addDestroyFunc(n.destroy.bind(n))}onLabelClicked(){const e=!this.cbSelect.getValue();this.onChangeCommon(e)}onCheckboxChanged(e){this.onChangeCommon(e.selected)}getVisibleLeafColumns(){const e=[],t=i=>{for(const s of i)s.passesFilter&&(s.group?t(s.children):e.push(s.column))};return t(this.modelItem.children),e}onChangeCommon(e){this.refreshAriaLabel(),this.processingColumnStateChange||(0,o.selectAllChildren)(this.beans,this.modelItem.children,e,this.eventType)}refreshAriaLabel(){const{cbSelect:e,focusWrapper:t,displayName:i}=this,o=this.getLocaleTextFunc(),r=o("ariaColumnGroup","Column Group"),n=e.getValue(),a=void 0===n?o("ariaIndeterminate","indeterminate"):n?o("ariaVisible","visible"):o("ariaHidden","hidden"),l=o("ariaToggleVisibility","Press SPACE to toggle visibility");(0,s._setAriaLabel)(t,`${i} ${r}`),e.setInputAriaLabel(`${l} (${a})`),(0,s._setAriaDescribedBy)(t,e.getInputElement().id)}onColumnStateChanged(){const e=this.workOutSelectedValue(),t=this.workOutReadOnlyValue();this.processingColumnStateChange=!0;const i=this.cbSelect;i.setValue(e),i.setReadOnly(t),this.toggleCss("ag-column-select-column-group-readonly",t),this.processingColumnStateChange=!1}workOutSelectedValue(){const e=this.beans.colModel.isPivotMode(),t=this.getVisibleLeafColumns();let i=0,s=0;for(const o of t)!e&&o.getColDef().lockVisible||(this.isColumnChecked(o,e)?i++:s++);if(!(i>0&&s>0))return i>0}workOutReadOnlyValue(){const e=this.beans.colModel.isPivotMode();let t=0;for(const i of this.columnGroup.getLeafColumns())e?i.isAnyFunctionAllowed()&&t++:i.getColDef().lockVisible||t++;return 0===t}isColumnChecked(e,t){if(t){const t=e.isPivotActive(),i=e.isRowGroupActive(),s=e.isValueActive();return t||i||s}return e.isVisible()}onExpandOrContractClicked(){const e=this.modelItem,t=e.expanded;e.expanded=!t}onExpandChanged(){this.setOpenClosedIcons(),this.refreshAriaExpanded()}setOpenClosedIcons(){const e=this.modelItem.expanded;(0,s._setDisplayed)(this.eGroupClosedIcon,!e),(0,s._setDisplayed)(this.eGroupOpenedIcon,e)}refreshAriaExpanded(){(0,s._setAriaExpanded)(this.focusWrapper,this.modelItem.expanded)}getDisplayName(){return this.displayName}onSelectAllChanged(e){const t=this.cbSelect,i=t.getValue();!t.isReadOnly()&&(e&&!i||!e&&i)&&t.toggle()}isSelected(){return this.cbSelect.getValue()}isSelectable(){return!this.cbSelect.isReadOnly()}setSelected(e){this.cbSelect.setValue(e,!0)}}t.ToolPanelColumnGroupComp=a},80334:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ToolPanelContextMenu=void 0;const s=i(76624),o=i(68105),r=i(20500);class n extends s.Component{constructor(e,t,i){super({tag:"div",cls:"ag-menu"}),this.column=e,this.mouseEventOrTouch=t,this.parentEl=i,this.displayName=null}postConstruct(){const{column:e,beans:{colNames:t}}=this;let i;if(this.initializeProperties(e),i=(0,s.isColumn)(e)?t.getDisplayNameForColumn(e,"columnToolPanel"):t.getDisplayNameForProvidedColumnGroup(null,e,"columnToolPanel"),this.displayName=i,this.buildMenuItemMap(),this.isActive()){const e=this.mouseEventOrTouch;"preventDefault"in e&&e.preventDefault();const t=this.getMappedMenuItems();if(0===t.length)return;this.displayContextMenu(t)}}initializeProperties(e){let t;t=(0,s.isProvidedColumnGroup)(e)?e.getLeafColumns():[e],this.columns=t;const i=this.beans.colModel.isPivotMode();this.allowScrollIntoView=!i&&t.some(this.isColumnValidForScrollIntoView),this.allowGrouping=t.some(e=>e.isPrimary()&&e.isAllowRowGroup()),this.allowValues=t.some(e=>e.isPrimary()&&e.isAllowValue()),this.allowPivoting=i&&t.some(e=>e.isPrimary()&&e.isAllowPivot())}buildMenuItemMap(){const e=this.getLocaleTextFunc(),{beans:t,displayName:i}=this,{rowGroupColsSvc:s,valueColsSvc:r,pivotColsSvc:n,colModel:a}=t,l=new Map;this.menuItemMap=l;const d=a.isPivotMode();l.set("scrollIntoView",{allowedFunction:e=>!e.isPinned()&&!d&&this.isColumnValidForScrollIntoView(e),activeFunction:()=>!1,activateLabel:()=>e("scrollColumnIntoView",`Scroll ${i} into View`,[i]),activateFunction:()=>{const e=this.columns.find(this.isColumnValidForScrollIntoView);e&&this.beans.ctrlsSvc.getScrollFeature().ensureColumnVisible(e)},deActivateFunction:()=>{},addIcon:"ensureColumnVisible"});const c=e=>e.isPrimary()&&e.isAllowRowGroup()&&!(0,o.isRowGroupColLocked)(e,t);l.set("rowGroup",{allowedFunction:c,activeFunction:e=>e.isRowGroupActive(),activateLabel:()=>(0,o.getGroupingLocaleText)(e,"groupBy",i),deactivateLabel:()=>(0,o.getGroupingLocaleText)(e,"ungroupBy",i),activateFunction:()=>s?.setColumns(this.addColumnsToList(s.columns,c),"toolPanelUi"),deActivateFunction:()=>s?.setColumns(this.removeColumnsFromList(s.columns,c),"toolPanelUi"),addIcon:"menuAddRowGroup",removeIcon:"menuRemoveRowGroup"});const u=e=>e.isPrimary()&&e.isAllowValue();l.set("value",{allowedFunction:u,activeFunction:e=>e.isValueActive(),activateLabel:()=>e("addToValues",`Add ${i} to values`,[i]),deactivateLabel:()=>e("removeFromValues",`Remove ${i} from values`,[i]),activateFunction:()=>r?.setColumns(this.addColumnsToList(r.columns,u),"toolPanelUi"),deActivateFunction:()=>r?.setColumns(this.removeColumnsFromList(r.columns,u),"toolPanelUi"),addIcon:"valuePanel",removeIcon:"valuePanel"});const h=e=>d&&e.isPrimary()&&e.isAllowPivot();l.set("pivot",{allowedFunction:h,activeFunction:e=>e.isPivotActive(),activateLabel:()=>e("addToLabels",`Add ${i} to labels`,[i]),deactivateLabel:()=>e("removeFromLabels",`Remove ${i} from labels`,[i]),activateFunction:()=>n?.setColumns(this.addColumnsToList(n.columns,h),"toolPanelUi"),deActivateFunction:()=>n?.setColumns(this.removeColumnsFromList(n.columns,h),"toolPanelUi"),addIcon:"pivotPanel",removeIcon:"pivotPanel"})}isColumnValidForScrollIntoView(e){if(!e.isVisible())return!1;const t=e.getParent();return!t||(t.getDisplayedChildren()?.includes(e)??!0)}addColumnsToList(e,t){return[...e].concat(this.columns.filter(i=>t(i)&&!e.includes(i)))}removeColumnsFromList(e,t){return e.filter(e=>t(e)&&!this.columns.includes(e))}displayContextMenu(e){const t=this.getGui(),i=this.createBean(new r.MenuList),o=this.getLocaleTextFunc();let n=()=>{};t.appendChild(i.getGui()),i.addMenuItems(e),i.addManagedListeners(i,{closeMenu:()=>{this.parentEl.focus(),n()}});const a=this.beans.popupSvc,l=a.addPopup({modal:!0,eChild:t,closeOnEsc:!0,afterGuiAttached:()=>(0,s._focusInto)(i.getGui()),ariaLabel:o("ariaLabelContextMenu","Context Menu"),closedCallback:e=>{e instanceof KeyboardEvent&&this.parentEl.focus(),this.destroyBean(i)}});l&&(n=l.hideFunc),a.positionPopupUnderMouseEvent({type:"columnContextMenu",mouseEvent:this.mouseEventOrTouch,ePopup:t})}isActive(){return this.allowScrollIntoView||this.allowGrouping||this.allowValues||this.allowPivoting}getMappedMenuItems(){const e=[],{menuItemMap:t,columns:i,displayName:o,beans:r}=this;for(const n of t.values()){const t=i.some(e=>n.allowedFunction(e)&&!n.activeFunction(e)),a=i.some(e=>n.allowedFunction(e)&&n.activeFunction(e));t&&e.push({name:n.activateLabel(o),icon:(0,s._createIconNoSpan)(n.addIcon,r,null),action:()=>n.activateFunction()}),a&&n.removeIcon&&n.deactivateLabel&&e.push({name:n.deactivateLabel(o),icon:(0,s._createIconNoSpan)(n.removeIcon,r,null),action:()=>n.deActivateFunction?.()})}return e}}t.ToolPanelContextMenu=n},72805:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.numberFormatMap=t.INCH_TO_EMU=void 0,t.INCH_TO_EMU=9525,t.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}},21842:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.convertLegacyVerticalAlignment=t.convertLegacyHorizontalAlignment=t.convertLegacyBorder=t.convertLegacyColor=t.convertLegacyPattern=void 0;const i={None:"None",Dot:"Dotted",Dash:"Dashed",Double:"Double",DashDot:"DashDot",DashDotDot:"DashDotDot",SlantDashDot:"SlantDashDot",Continuous:"Continuous"},s=["Dashed","DashDot","DashDotDot"],o={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"},r={Automatic:"general",Left:"left",Center:"center",Right:"right",Fill:"fill",Justify:"justify",CenterAcrossSelection:"centerContinuous",Distributed:"distributed",JustifyDistributed:"justify"},n={Automatic:void 0,Top:"top",Bottom:"bottom",Center:"center",Justify:"justify",Distributed:"distributed",JustifyDistributed:"justify"};t.convertLegacyPattern=e=>e?o[e]||e:"none";t.convertLegacyColor=e=>null==e?e:("#"===e.charAt(0)&&(e=e.substring(1)),6===e.length?"FF"+e:e);t.convertLegacyBorder=(e,t)=>{if(!e)return"thin";const o=(e=>{switch(e){case 1:return"thin";case 2:return"medium";case 3:return"thick";default:return"hair"}})(t);if("Continuous"===e)return o;const r=i[e];return"medium"===o&&s.some(e=>e===r)?`medium${r}`:`${r.charAt(0).toLowerCase()}${r.substring(1)}`};t.convertLegacyHorizontalAlignment=e=>r[e]||"general";t.convertLegacyVerticalAlignment=e=>n[e]||void 0},93237:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.buildSharedString=t.replaceInvisibleCharacters=t.sanitizeTableName=t.getExcelColumnName=t.createXmlPart=t.setExcelImageTotalHeight=t.setExcelImageTotalWidth=t.getHeightFromProperty=t.getFontFamilyId=t.pixelsToEMU=void 0;const s=i(76624),o=i(72805),r=i(55048),n=e=>Math.round(96*e/72);t.pixelsToEMU=e=>Math.ceil(e*o.INCH_TO_EMU);t.getFontFamilyId=e=>{if(void 0===e)return;const t=["Automatic","Roman","Swiss","Modern","Script","Decorative"].indexOf(e||"Automatic");return Math.max(t,0)};t.getHeightFromProperty=(e,t)=>{if(!t)return;let i;if("number"==typeof t)i=t;else{i=t({rowIndex:e})}return i};t.setExcelImageTotalWidth=(e,t)=>{const{colSpan:i,column:s}=e.position;if(e.width)if(i){const o=t.slice(s-1,s+i-1);let r=0;for(let t=0;t{const{rowSpan:s,row:o}=e.position;if(e.height)if(s){let r=0,a=0;for(let l=o;l{const i=(0,r.createXmlHeader)({encoding:"UTF-8",standalone:"yes"}),s=(0,r.createXml)(e);return t?s:`${i}${s}`};t.getExcelColumnName=e=>{const i=String.fromCharCode,s=Math.floor(e/26),o=e%26;return s&&26!==e?o?s<26?i(65+s-1)+i(65+o-1):(0,t.getExcelColumnName)(s)+i(65+o-1):(0,t.getExcelColumnName)(s-1)+"Z":i(65+e-1)};t.sanitizeTableName=e=>e.replaceAll("\n","_x000a_");t.replaceInvisibleCharacters=e=>{if(null==e)return null;let t="";for(let i=0;i=0&&s<=31&&10!==s){t+=`_x${s.toString(16).toUpperCase().padStart(4,"0")}_`}else t+=e[i]}return t};t.buildSharedString=e=>{const i=[];for(const o of e.keys()){const e=o.toString(),r={name:"t",textNode:(0,s._escapeString)((0,t.replaceInvisibleCharacters)(e))};e.trim().length!==e.length&&(r.properties={rawMap:{"xml:space":"preserve"}}),i.push({name:"si",children:[r]})}return i}},55048:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.createXml=t.createXmlHeader=void 0;const i="\r\n";function s(e,t,i){if(!t&&""!==t&&0!==t)return"";let s=t;return"boolean"==typeof t&&i&&(s=i(t)),` ${e}="${s}"`}t.createXmlHeader=function(e={}){const t=["version"];return e.version||(e.version="1.0"),e.encoding&&t.push("encoding"),e.standalone&&t.push("standalone"),``${t}="${e[t]}"`).join(" ")} ?>`},t.createXml=function e(t,o){let r="";if(t.properties&&(t.properties.prefixedAttributes&&t.properties.prefixedAttributes.forEach(e=>{for(const t of Object.keys(e.map))r+=s(e.prefix+t,e.map[t],o)}),t.properties.rawMap))for(const e of Object.keys(t.properties.rawMap))r+=s(e,t.properties.rawMap[e],o);let n="<"+t.name+r;if(!t.children&&null==t.textNode)return n+"/>"+i;if(null!=t.textNode)return n+">"+t.textNode+""+i;if(n+=">\r\n",t.children)for(const i of t.children)n+=e(i,o);return n+""+i}},81790:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ExcelCreator=t.exportMultipleSheetsAsExcel=t.getMultipleSheetsAsExcel=void 0;const s=i(76624),o=i(75103),r=i(87165),n=i(80541),a=i(75950),l=(e,t,i)=>{const s="xl/drawings",o=`${s}/drawing${i+1}.xml`,n=`${s}/_rels/drawing${i+1}.xml.rels`;e.addFile(n,(0,r.createXlsxDrawingRel)(t)),e.addFile(o,(0,r.createXlsxDrawing)(t))},d=(e,t,i)=>{const s="xl/drawings",o=`${s}/vmlDrawing${i+1}.vml`,n=`${s}/_rels/vmlDrawing${i+1}.vml.rels`;e.addFile(o,(0,r.createXlsxVmlDrawing)(t)),e.addFile(n,(0,r.createXlsxVmlDrawingRel)(t))},c=(e,t,i={},o)=>{if(!t||0===t.length)return(0,s._warn)(159),o.reset(),!1;o.syncOrderWithSheetData(t);const{fontSize:a=11,author:c="AG Grid",activeTab:u=0,customMetadata:h}=i,g=t.length,p=Math.max(Math.min(u,g-1),0);return(e=>{if(e.addFolders(["_rels/","docProps/","xl/","xl/theme/","xl/_rels/","xl/worksheets/"]),!r.XLSX_IMAGES.size)return;e.addFolders(["xl/worksheets/_rels","xl/drawings/","xl/drawings/_rels","xl/media/"]);let t=0;r.XLSX_IMAGES.forEach(i=>{const s=i[0].image[0],{base64:o,imageType:r}=s;e.addFile(`xl/media/image${++t}.${(0,n._normaliseImageExtension)(r)}`,o,!0)})})(e),(e=>{const t=r.XLSX_WORKSHEET_DATA_TABLES,i=Array.from(t.keys());for(let s=0;s{let i=0,s=0;for(let o=0;o0&&r.XLSX_WORKSHEET_IMAGES.has(o),c=r.XLSX_WORKSHEET_DATA_TABLES.size>0&&r.XLSX_WORKSHEET_DATA_TABLES.get(o),u=r.XLSX_IMAGES.size&&r.XLSX_WORKSHEET_HEADER_FOOTER_IMAGES.has(o);if(!a&&!c&&!u)continue;let h,g,p;a&&(l(e,o,i),g=i,i++),u&&(d(e,o,s),p=s,s++),c&&(h=c.name);const m=`xl/worksheets/_rels/sheet${o+1}.xml.rels`;e.addFile(m,(0,r.createXlsxRelationships)({tableName:h,drawingIndex:g,vmlDrawingIndex:p}))}})(e,t),((e,t,i,s,o,n)=>{const a=!!n&&Object.keys(n).some(e=>null!=n[e]);e.addFile("xl/workbook.xml",(0,r.createXlsxWorkbook)(o)),e.addFile("xl/styles.xml",(0,r.createXlsxStylesheet)(t)),e.addFile("xl/sharedStrings.xml",(0,r.createXlsxSharedStrings)()),e.addFile("xl/theme/theme1.xml",(0,r.createXlsxTheme)()),e.addFile("xl/_rels/workbook.xml.rels",(0,r.createXlsxWorkbookRels)(s)),e.addFile("docProps/core.xml",(0,r.createXlsxCore)(i)),a&&e.addFile("docProps/custom.xml",(0,r.createXlsxCustomProperties)(n)),e.addFile("[Content_Types].xml",(0,r.createXlsxContentTypes)(s,a)),e.addFile("_rels/.rels",(0,r.createXlsxRels)(a))})(e,a,c,g,p,h),o.reset(),!0},u=(e,t=new r.Workbook)=>{const{data:i,fontSize:s,author:o,activeSheetIndex:n,customMetadata:l}=e,d=e.mimeType||"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",u=new a.ZipContainer;return c(u,i,{author:o,fontSize:s,activeTab:n,customMetadata:l},t)?u.getZipFile(d):Promise.resolve(void 0)};t.getMultipleSheetsAsExcel=(e,t=new r.Workbook)=>{const{data:i,fontSize:s,author:o,activeSheetIndex:n,customMetadata:l}=e,d=e.mimeType||"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",u=new a.ZipContainer;if(c(u,i,{author:o,fontSize:s,activeTab:n,customMetadata:l},t))return u.getUncompressedZipFile(d)};t.exportMultipleSheetsAsExcel=e=>{const{fileName:t="export.xlsx"}=e,i=new r.Workbook;u(e,i).then(e=>{if(e){const i="function"==typeof t?t():t;(0,s._downloadFile)(i,e)}})};class h extends s.BaseCreator{constructor(){super(...arguments),this.beanName="excelCreator",this.workbook=new r.Workbook}getMergedParams(e){const t=this.gos.get("defaultExcelExportParams");return Object.assign({},t,e)}export(e){if(this.isExportSuppressed())return void(0,s._warn)(160);const t=()=>{const t=this.getMergedParams(e),i=this.getData(t),{fontSize:o,author:r,mimeType:n,customMetadata:a}=t,l={data:[i],fontSize:o,author:r,mimeType:n,customMetadata:a};this.packageCompressedFile(l).then(e=>{if(e){const{fileName:i}=t,o="function"==typeof i?i((0,s._addGridCommonParams)(this.gos,{})):i;(0,s._downloadFile)(this.getFileName(o),e)}})},{overlays:i}=this.beans;i?i.showExportOverlay(t):t()}exportDataAsExcel(e){this.export(e)}getDataAsExcel(e){const t=this.getMergedParams(e),i=this.getData(t),{fontSize:s,author:o,mimeType:r,customMetadata:n}=t,a={data:[i],fontSize:s,author:o,mimeType:r,customMetadata:n};return this.packageFile(a)}setFactoryMode(e){this.workbook.setFactoryMode(e)}getFactoryMode(){return this.workbook.getFactoryMode()}getSheetDataForExcel(e){const t=this.getMergedParams(e);return this.getData(t)}getMultipleSheetsAsExcel(e){return(0,t.getMultipleSheetsAsExcel)(e,this.workbook)}exportMultipleSheetsAsExcel(e){u(e,this.workbook).then(t=>{const{fileName:i="export.xlsx"}=e;if(t){const e="function"==typeof i?i():i;(0,s._downloadFile)(e,t)}})}getDefaultFileExtension(){return"xlsx"}createSerializingSession(e){const{colModel:t,colNames:i,rowGroupColsSvc:r,valueSvc:n,formula:a,gos:l}=this.beans,d=l.get("excelStyles")||[],c=this.createStyleLinker(d),u={...e,colModel:t,colNames:i,rowGroupColsSvc:r,valueSvc:n,formulaSvc:a,gos:l,suppressRowOutline:e.suppressRowOutline||e.skipRowGroups,headerRowHeight:e.headerRowHeight||e.rowHeight,baseExcelStyles:d,rightToLeft:e.rightToLeft??l.get("enableRtl"),styleLinker:c,headerRowCount:(0,s._getHeaderRowCount)(t),pivotModeActive:t.isPivotActive(),workbook:this.workbook};return new o.ExcelSerializingSession(u)}createStyleLinker(e){const t=[],i=new Set,o=new Map;e.forEach((e,s)=>{t.push(e.id),i.add(e.id),o.set(e.id,s)});const{gos:r,cellStyles:n}=this.beans;return e=>{const{rowType:a,rowIndex:l,value:d,column:c,columnGroup:u,node:h}=e,g="HEADER"===a,p="HEADER_GROUPING"===a,m=g?c:u;let f=[];if(g||p)return f.push("header"),p&&f.push("headerGroup"),m&&(f=f.concat((0,s._getHeaderClassesFromColDef)(m.getDefinition(),r,c||null,u||null))),f;const C=["cell"];if(!t.length)return C;const v=c.getDefinition();return n?.processAllCellClasses(v,(0,s._addGridCommonParams)(r,{value:d,data:h.data,node:h,colDef:v,column:c,rowIndex:l}),e=>{i.has(e)&&C.push(e)}),C.sort((e,t)=>{const i=o.get(e)??-1,s=o.get(t)??-1;return i===s?0:i{const s=this.addImage(e,this.columnsToExport[i],t.data?.value);let o=null;t.styleId&&(o="string"==typeof t.styleId?[t.styleId]:t.styleId);const r=this.getStyleId(o);if(s)return this.createCell(r,this.getDataTypeForValue(s.value),null==s.value?"":s.value);const n=t.data?.value??"",a=this.getDataTypeForValue(n);return t.mergeAcross?this.createMergedCell(r,a,n,t.mergeAcross):this.createCell(r,a,n)}),outlineLevel:i};null!=t.collapsed&&(s.collapsed=t.collapsed),null!=t.hidden&&(s.hidden=t.hidden),this.rows.push(s)}}onNewHeaderGroupingRow(){const e=[],{freezeRows:t,headerRowHeight:i}=this.config;return this.rows.push({cells:e,height:(0,o.getHeightFromProperty)(this.rows.length+1,i)}),t&&this.frozenRowCount++,{onColumn:(t,i,s,o,r)=>{const n=this.config.styleLinker({rowType:"HEADER_GROUPING",rowIndex:1,value:`grouping-${i}`,columnGroup:t});e.push({...this.createMergedCell(this.getStyleId(n),this.getDataTypeForValue("string"),i,o),collapsibleRanges:r})}}}onNewHeaderRow(){const{freezeRows:e,headerRowHeight:t}=this.config;return e&&this.frozenRowCount++,this.onNewRow(this.onNewHeaderColumn,t)}onNewBodyRow(e){const{freezeRows:t,rowHeight:i}=this.config;this.skipFrozenRows||("headersAndPinnedRows"===t&&"top"===e?.rowPinned||"function"==typeof t&&t((0,s._addGridCommonParams)(this.gos,{node:e}))?this.frozenRowCount++:this.skipFrozenRows=!0);const o=this.onNewRow(this.onNewBodyColumn,i);return e&&this.addRowOutlineIfNecessary(e),o}prepare(e){super.prepare(e),this.columnsToExport=[...e],this.cols=e.map((e,t)=>this.convertColumnToExcel(e,t))}parse(){const e=this.rows.reduce((e,t)=>Math.max(e,t.cells.length),0);for(;this.cols.length{const s=this.extractHeaderValue(i),o=this.config.styleLinker({rowType:"HEADER",rowIndex:e,value:s,column:i});t.push(this.createCell(this.getStyleId(o),this.getDataTypeForValue("string"),s))}}onNewBodyColumn(e,t){let i=0;const{freezeColumns:o,rightToLeft:r}=this.config;return(n,a,l)=>{if(i>0)return void(i-=1);if(!this.skipFrozenColumns){const e=n.getPinned();"pinned"===o&&e&&(!0===e||"left"===e)!==r||"function"==typeof o&&o((0,s._addGridCommonParams)(this.gos,{column:n}))?this.frozenColumnCount++:this.skipFrozenColumns=!0}const{value:d,valueFormatted:c}=this.extractRowCellValue({column:n,node:l,currentColumnIndex:a,accumulatedRowIndex:e,type:"excel",useRawFormula:!0}),u=d,h="bigint"==typeof u?u.toString():u,g=this.config.styleLinker({rowType:"BODY",rowIndex:e,value:u,column:n,node:l}),p=this.getStyleId(g),m=n.getColSpan(l),f=this.addImage(e,n,h);if(f)t.push(this.createCell(p,this.getDataTypeForValue(f.value),null==f.value?"":f.value));else if(m>1)i=m-1,t.push(this.createMergedCell(p,this.getDataTypeForValue(u),h,m-1));else{const i=n.isAllowFormula()&&this.formulaSvc?.isFormula(h),s=this.createCell(p,i?"f":this.getDataTypeForValue(u),i?this.formulaSvc?.updateFormulaByOffset({value:h,rowDelta:e-(l.formulaRowIndex+1),useRefFormat:!1}):h,c);t.push(s)}}}onNewRow(e,t){const i=[];return this.rows.push({cells:i,height:(0,o.getHeightFromProperty)(this.rows.length+1,t)}),{onColumn:e.bind(this,this.rows.length,i)()}}addWorksheetToWorkbook(e){const{excelStyles:t,config:i}=this;return this.mapSharedStrings(e),this.frozenColumnCount&&(i.frozenColumnCount=this.frozenColumnCount),this.frozenRowCount&&(i.frozenRowCount=this.frozenRowCount),this.workbook.addWorksheet(t,e,i)}mapSharedStrings(e){let t;for(const i of e.table.rows)for(const e of i.cells){const i=e.data;if(!i||"s"!==i.type)continue;const s=i.value;null!=s&&(""!==s?i.value=this.workbook.getStringPosition(String(s)).toString():(t??(t=this.workbook.getStringPosition("").toString()),i.value=t))}}getDataTypeForValue(e){if(void 0===e)return"empty";let t="s";try{this.isNumerical(e)&&(t="n")}catch(e){}return t}getTypeFromStyle(e,t){if(this.isFormula(t))return"f";if(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,s._warn)(162,{id:e.id,dataType:e.dataType})}return null}addImage(e,t,i){if(!this.config.addImageToCell)return;const s=this.config.addImageToCell(e,t,i);return s?(this.workbook.addBodyImageToMap(s.image,e,t,this.columnsToExport,this.config.rowHeight),s):void 0}createCell(e,t,i,s){const o=this.getStyleById(e);o?.dataType||"s"!==t||null==s||(i=s);const r=this.getTypeFromStyle(o,i)||t,{value:n,escaped:a}=this.getCellValue(r,i),l=[];return o&&l.push(e),a&&l.push("_quotePrefix"),{styleId:e=this.getStyleId(l)||void 0,data:{type:r,value:n}}}createMergedCell(e,t,i,s){const o=null==i?"":i;return{styleId:this.getStyleById(e)?e:void 0,data:{type:t,value:"s"===t?String(o):i},mergeAcross:s}}getCellValue(e,t){let i=!1;if(null==t||"s"===e&&""===t)return{value:"",escaped:!1};if("s"===e)"'"===(t=String(t))[0]&&(i=!0,t=t.slice(1));else if("f"===e)t=this.addXlfnPrefix(t).slice(1);else if("n"===e){const e=Number(t);isNaN(e)?t="":""!==t&&(t=e.toString())}return{value:t,escaped:i}}addXlfnPrefix(e){if(!e)return e;return e.replace(/(^|[^A-Z0-9._])(CONCAT)(\s*\()/gi,(e,t,i,s)=>`${t}_xlfn.${i}${s}`)}getStyleId(e){if(!e?.length)return null;const t=e.filter(e=>null!=this.stylesByIds[e]);if(!t.length)return null;if(1===t.length)return t[0];const i=t.join("-");return this.mixedStyles[i]||this.addNewMixedStyle(t),this.mixedStyles[i].excelID}addNewMixedStyle(e){this.mixedStyleCounter+=1;const t=`mixedStyle${this.mixedStyleCounter}`,i={};for(const t of e){const e=this.stylesByIds[t];e&&(0,s._mergeDeep)(i,e,!0,!0)}i.id=t;const o=e.join("-");this.mixedStyles[o]={excelID:t,key:o,result:i},this.excelStyles.push(i),this.stylesByIds[t]=i}isFormula(e){if(null==e)return!1;const t=String(e);return this.config.autoConvertFormulas&&(0,s._isExpressionString)(t)}isNumerical(e){return"bigint"!=typeof e&&(isFinite(e)&&""!==e&&!isNaN(parseFloat(e)))}getStyleById(e){return null==e?null:this.stylesByIds[e]||null}}t.ExcelSerializingSession=r},87165:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Workbook=t.syncXlsxOrderWithSheetData=t.createXlsxRelationships=t.createXlsxVmlDrawingRel=t.createXlsxVmlDrawing=t.createXlsxDrawingRel=t.createXlsxDrawing=t.createXlsxWorkbookRels=t.createXlsxTable=t.createXlsxTheme=t.createXlsxRels=t.createXlsxContentTypes=t.createXlsxCustomProperties=t.createXlsxCore=t.createXlsxSharedStrings=t.createXlsxStylesheet=t.createXlsxWorkbook=t.resetXlsxFactory=t.getXlsxStringPosition=t.addXlsxBodyImageToMap=t.addXlsxHeaderFooterImageToMap=t.createXlsxExcel=t.setXlsxFactoryMode=t.getXlsxFactoryMode=t.XLSX_WORKSHEET_DATA_TABLES=t.XLSX_WORKSHEET_IMAGE_IDS=t.XLSX_WORKBOOK_IMAGE_IDS=t.XLSX_WORKSHEET_HEADER_FOOTER_IMAGES=t.XLSX_WORKSHEET_IMAGES=t.XLSX_IMAGES=void 0;const s=i(85608),o=i(76624),r=i(93237),n=s.__importStar(i(80541)),a=s.__importDefault(i(61528)),l=s.__importDefault(i(47405)),d=s.__importDefault(i(66161)),c=s.__importDefault(i(97348)),u=s.__importDefault(i(71126)),h=s.__importStar(i(3056)),g=s.__importDefault(i(30859)),p=s.__importDefault(i(76316)),m=s.__importDefault(i(15592)),f=s.__importDefault(i(82519)),C=s.__importDefault(i(60559)),v=new Map;let w=[],b=[],y=new Map;t.XLSX_IMAGES=new Map,t.XLSX_WORKSHEET_IMAGES=new Map,t.XLSX_WORKSHEET_HEADER_FOOTER_IMAGES=new Map,t.XLSX_WORKBOOK_IMAGE_IDS=new Map,t.XLSX_WORKSHEET_IMAGE_IDS=new Map,t.XLSX_WORKSHEET_DATA_TABLES=new Map;const S="AG-GRID-TABLE";let x="SINGLE_SHEET";function F(){return x}function R(e){x=e}function P(e,i,s){!function(e){const t=(0,o._escapeString)(e.name)||"";let i="";for(;-1!==w.indexOf(`${t}${i}`);)if(""===i)i="_1";else{const e=parseInt(i.slice(1),10);i=`_${e+1}`}e.name=`${t}${i}`,w.push(e.name)}(i),(0,h.registerStyles)(e,w.length);const n=Object.assign({},s);s.exportAsExcelTable&&s.pivotModeActive&&((0,o._warn)(163,{featureName:"pivot mode"}),n.exportAsExcelTable=!1),function(e,i){const{exportAsExcelTable:s,prependContent:r,appendContent:n,headerRowCount:a=0}=i;if(!s)return;const l="boolean"==typeof s?{}:s,{name:d,showColumnStripes:c,showRowStripes:u,showFilterButton:h,highlightFirstColumn:g,highlightLastColumn:p}=l,m=function(e){return e.replace(/^[^a-zA-Z_]+/,"_").replace(/\s/g,"_").replace(/[^a-zA-Z0-9_]/g,"_")}(d||S),f=w.length-1,{table:C}=e,{rows:v,columns:b}=C,y=r?r.length:0,x=n?n.length:0,F=v.length,R=b.length,P=[],M=[];for(let e=0;et.id===e.id)||r.push(e)}function E(e,i,s,o,n){const a=w.length,{row:l,column:d}=e.position||{},c=e;o&&(null==i||null==s||l&&d||(e.position||(e.position={}),e.position=Object.assign({},e.position,{row:i,column:o.indexOf(s)+1})),(0,r.setExcelImageTotalWidth)(c,o),(0,r.setExcelImageTotalHeight)(c,n)),A({imageToAdd:c,idx:a});let u=t.XLSX_WORKSHEET_IMAGE_IDS.get(a);u||(u=new Map,t.XLSX_WORKSHEET_IMAGE_IDS.set(a,u));const h=t.XLSX_WORKSHEET_IMAGES.get(a);h?h.push(c):t.XLSX_WORKSHEET_IMAGES.set(a,[c]),u.get(e.id)||u.set(e.id,{index:u.size,type:e.imageType})}function A(e){const{imageToAdd:i,idx:s}=e,o=t.XLSX_IMAGES.get(i.id);if(o){const e=o.find(e=>e.sheetId===s);e?e.image.push(i):o.push({sheetId:s,image:[i]})}else t.XLSX_IMAGES.set(i.id,[{sheetId:s,image:[i]}]),t.XLSX_WORKBOOK_IMAGE_IDS.set(i.id,{type:i.imageType,index:t.XLSX_WORKBOOK_IMAGE_IDS.size})}function T(e){return v.has(e)?v.get(e):(v.set(e,v.size),v.size-1)}function D(){v.clear(),t.XLSX_IMAGES.clear(),t.XLSX_WORKSHEET_IMAGES.clear(),t.XLSX_WORKSHEET_HEADER_FOOTER_IMAGES.clear(),t.XLSX_WORKBOOK_IMAGE_IDS.clear(),t.XLSX_WORKSHEET_IMAGE_IDS.clear(),t.XLSX_WORKSHEET_DATA_TABLES.clear(),w=[],b=[],y=new Map,x="SINGLE_SHEET"}t.getXlsxFactoryMode=F,t.setXlsxFactoryMode=R,t.createXlsxExcel=P,t.addXlsxHeaderFooterImageToMap=M,t.addXlsxBodyImageToMap=E,t.getXlsxStringPosition=T,t.resetXlsxFactory=D,t.createXlsxWorkbook=function(e){return(0,r.createXmlPart)(f.default.getTemplate(w,e))},t.createXlsxStylesheet=function(e){return(0,r.createXmlPart)(h.default.getTemplate(e))},t.createXlsxSharedStrings=function(){return(0,r.createXmlPart)(u.default.getTemplate(v))},t.createXlsxCore=function(e){return(0,r.createXmlPart)(a.default.getTemplate(e))},t.createXlsxCustomProperties=function(e){return(0,r.createXmlPart)(l.default.getTemplate(e))},t.createXlsxContentTypes=function(e,t){return(0,r.createXmlPart)(n.default.getTemplate({sheetLen:e,hasCustomProperties:t}))},t.createXlsxRels=function(e){const t=[{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"}];e&&t.push({Id:"rId3",Type:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/custom-properties",Target:"docProps/custom.xml"});const i=c.default.getTemplate(t);return(0,r.createXmlPart)(i)},t.createXlsxTheme=function(){return(0,r.createXmlPart)(p.default.getTemplate())},t.createXlsxTable=function(e,t){return(0,r.createXmlPart)(g.default.getTemplate(e,t))},t.createXlsxWorkbookRels=function(e){const t=new Array(e).fill(void 0).map((e,t)=>({Id:`rId${t+1}`,Type:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/worksheet",Target:`worksheets/sheet${t+1}.xml`})),i=c.default.getTemplate([...t,{Id:`rId${e+1}`,Type:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/theme",Target:"theme/theme1.xml"},{Id:`rId${e+2}`,Type:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/styles",Target:"styles.xml"},{Id:`rId${e+3}`,Type:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/sharedStrings",Target:"sharedStrings.xml"}]);return(0,r.createXmlPart)(i)},t.createXlsxDrawing=function(e){return(0,r.createXmlPart)(d.default.getTemplate({sheetIndex:e}))},t.createXlsxDrawingRel=function(e){const i=t.XLSX_WORKSHEET_IMAGE_IDS.get(e)||[],s=[];for(const[e,o]of i){const{index:i,type:r}=o;s.push({Id:`rId${i+1}`,Type:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/image",Target:`../media/image${t.XLSX_WORKBOOK_IMAGE_IDS.get(e).index+1}.${(0,n._normaliseImageExtension)(r)}`})}return(0,r.createXmlPart)(c.default.getTemplate(s))},t.createXlsxVmlDrawing=function(e){return(0,r.createXmlPart)(m.default.getTemplate({sheetIndex:e}),!0)},t.createXlsxVmlDrawingRel=function(e){const i=t.XLSX_WORKSHEET_HEADER_FOOTER_IMAGES.get(e)||[],s=[];for(let e=0;e{if(!e.size)return;const i=new Map;t.forEach((t,s)=>{e.has(t)&&i.set(s,e.get(t))}),e.clear(),i.forEach((t,i)=>e.set(i,t))},k=e=>{const t=y.get(e)??[];t.push(w.length-1),y.set(e,t),b.push(e)};t.syncXlsxOrderWithSheetData=e=>{if(e.length<=1)return;const i=(e=>{const t=new Map(y),i=[];for(const s of e){const e=t.get(s);if(!e?.length)return null;const o=e.shift();i.push(o),t.set(s,e)}return i})(e)??(e=>{if(!e.length||0===b.length)return null;const t=new Set,i=[];for(const s of e){const e=b.findIndex((e,i)=>!t.has(i)&&e===s);if(-1===e)return null;t.add(e),i.push(e)}return i})(e);i&&(e=>{const i=new Map;e.forEach((e,t)=>i.set(e,t)),w=e.map(e=>w[e]),b=e.map(e=>b[e]),I(t.XLSX_WORKSHEET_IMAGES,e),I(t.XLSX_WORKSHEET_HEADER_FOOTER_IMAGES,e),I(t.XLSX_WORKSHEET_DATA_TABLES,e),I(t.XLSX_WORKSHEET_IMAGE_IDS,e),t.XLSX_IMAGES.forEach(e=>{e.forEach(e=>{const t=i.get(e.sheetId);null!=t&&(e.sheetId=t)})}),y=new Map,b.forEach((e,t)=>{const i=y.get(e)??[];i.push(t),y.set(e,i)})})(i)};t.Workbook=class{getStringPosition(e){return T(e)}addBodyImageToMap(e,t,i,s,o){E(e,t,i,s,o)}addHeaderFooterImageToMap(e,t){M(e,t)}addWorksheet(e,t,i){return P(e,t,i)}syncOrderWithSheetData(e){(0,t.syncXlsxOrderWithSheetData)(e)}reset(){D()}setFactoryMode(e){R(e)}getFactoryMode(){return F()}getSheetNames(){return[...w]}}},43391:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const s=i(76624),o=i(93237),r=i(3056),n={getTemplate(e,t,i){const{ref:n,data:a,styleId:l}=e,{type:d,value:c}=a||{type:"empty",value:null};let u=d;"f"===d?u="str":d.charAt(0)===d.charAt(0).toUpperCase()&&(u=(e=>{const t=e.charAt(0).toLowerCase();return"s"===t?"inlineStr":t})(d));const h={name:"c",properties:{rawMap:{r:n,t:"empty"===u?void 0:u,s:l?(0,r.getStyleId)(l,i):void 0}}};if("empty"===u)return h;let g;return g="str"===u&&"f"===d?[{name:"f",textNode:(0,s._escapeString)((0,o.replaceInvisibleCharacters)(c))}]:"inlineStr"===u?[{name:"is",children:[{name:"t",textNode:(0,s._escapeString)((0,o.replaceInvisibleCharacters)(c))}]}]:[{name:"v",textNode:c}],Object.assign({},h,{children:g})}};t.default=n},73285:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const i={getTemplate(e){const{min:t,max:i,outlineLevel:s,s:o,width:r,hidden:n,bestFit:a}=e;let l=1,d="0";return r>1&&(l=(e=>Math.ceil((e-12)/7+1))(r),d="1"),{name:"col",properties:{rawMap:{min:t,max:i,outlineLevel:null!=s?s:void 0,width:l,style:o,hidden:n?"1":"0",bestFit:a?"1":"0",customWidth:d}}}}};t.default=i},32654:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const i={getTemplate(e){const{name:t,ContentType:i,Extension:s,PartName:o}=e;return{name:t,properties:{rawMap:{Extension:s,PartName:o,ContentType:i}}}}};t.default=i},80541:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t._normaliseImageExtension=void 0;const s=i(85608),o=i(87165),r=s.__importDefault(i(32654));t._normaliseImageExtension=e=>"jpg"===e?"jpeg":e;const n={getTemplate({sheetLen:e,hasCustomProperties:i}){const s=new Array(e).fill(void 0).map((e,t)=>({name:"Override",ContentType:"application/vnd.openxmlformats-officedocument.spreadsheetml.worksheet+xml",PartName:`/xl/worksheets/sheet${t+1}.xml`})),n=o.XLSX_WORKSHEET_IMAGES.size,a=o.XLSX_WORKSHEET_HEADER_FOOTER_IMAGES.size,l={};o.XLSX_WORKBOOK_IMAGE_IDS.forEach(e=>{l[(0,t._normaliseImageExtension)(e.type)]=!0});const d=new Array(n).fill(void 0).map((e,t)=>({name:"Override",ContentType:"application/vnd.openxmlformats-officedocument.drawing+xml",PartName:`/xl/drawings/drawing${t+1}.xml`})),c=[];o.XLSX_WORKSHEET_DATA_TABLES.forEach(({name:e})=>{c.push({name:"Override",ContentType:"application/vnd.openxmlformats-officedocument.spreadsheetml.table+xml",PartName:`/xl/tables/${e}.xml`})});const u=i?[{name:"Override",ContentType:"application/vnd.openxmlformats-officedocument.custom-properties+xml",PartName:"/docProps/custom.xml"}]:[],h=Object.keys(l).map(e=>({name:"Default",ContentType:`image/${e}`,Extension:e}));a&&h.push({name:"Default",Extension:"vml",ContentType:"application/vnd.openxmlformats-officedocument.vmlDrawing"});return{name:"Types",properties:{rawMap:{xmlns:"http://schemas.openxmlformats.org/package/2006/content-types"}},children:[...h,{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"},...s,{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"},...d,...c,{name:"Override",ContentType:"application/vnd.openxmlformats-package.core-properties+xml",PartName:"/docProps/core.xml"},...u].map(e=>r.default.getTemplate(e))}}};t.default=n},61528:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const i={getTemplate(e){const t=(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:t},{name:"dcterms:modified",properties:{rawMap:{"xsi:type":"dcterms:W3CDTF"}},textNode:t}]}}};t.default=i},47405:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const s=i(76624),o=i(93237),r=e=>Object.keys(e).filter(t=>t&&null!=e[t]).map((t,i)=>({name:"property",properties:{rawMap:{fmtid:"{D5CDD505-2E9C-101B-9397-08002B2CF9AE}",pid:(i+2).toString(),name:(0,s._escapeString)(t)??""}},children:[{name:"vt:lpwstr",textNode:(0,s._escapeString)((0,o.replaceInvisibleCharacters)(String(e[t])))??""}]})),n={getTemplate(e){return{name:"Properties",properties:{rawMap:{xmlns:"http://schemas.openxmlformats.org/officeDocument/2006/custom-properties","xmlns:vt":"http://schemas.openxmlformats.org/officeDocument/2006/docPropsVTypes"}},children:r(e)}}};t.default=n},66161:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const s=i(93237),o=i(87165),r=(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()}]}),n=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"}}}]}],i=e.recolor?.toLowerCase();switch(i){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}},a=(e,t)=>({name:"xdr:nvPicPr",children:[{name:"xdr:cNvPr",properties:{rawMap:{id:t,name:e.id,descr:null!=e.altText?e.altText:void 0}},children:[n(e)]},{name:"xdr:cNvPicPr",properties:{rawMap:{preferRelativeResize:"0"}},children:[{name:"a:picLocks"}]}]}),l=e=>{if(!e.saturation&&!e.tint)return;const t=[];return e.saturation&&t.push({name:"a:satMod",properties:{rawMap:{val:1e3*e.saturation}}}),e.tint&&t.push({name:"a:tint",properties:{rawMap:{val:1e3*e.tint}}}),t},d=(e,t)=>{let i;if(e.transparency){const t=Math.min(Math.max(e.transparency,0),100);i=[{name:"a:alphaModFix",properties:{rawMap:{amt:1e5-Math.round(1e3*t)}}}]}if(e.recolor)switch(i||(i=[]),e.recolor.toLocaleLowerCase()){case"grayscale":i.push({name:"a:grayscl"});break;case"sepia":i.push((o={color:"D9C3A5",tint:50,saturation:180},{name:"a:duotone",children:[{name:"a:prstClr",properties:{rawMap:{val:(s={color:"black"}).color}},children:l(s)},{name:"a:srgbClr",properties:{rawMap:{val:o.color}},children:l(o)}]}));break;case"washout":i.push({name:"a:lum",properties:{rawMap:{bright:"70000",contrast:"-70000"}}})}var s,o;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:i},{name:"a:stretch",children:[{name:"a:fillRect"}]}]}},c=(e,t)=>{const i={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 t=e.rotation;i.properties={rawMap:{rot:6e4*Math.min(Math.max(t,0),360)}}}return{name:"xdr:spPr",children:[i,{name:"a:prstGeom",properties:{rawMap:{prst:"rect"}},children:[{name:"a:avLst"}]}]}},u=(e,t,i,s)=>({name:"xdr:pic",children:[a(e,t+1),d(e,i+1),c(e,s)]}),h={getTemplate(e){const{sheetIndex:t}=e,i=o.XLSX_WORKSHEET_IMAGES.get(t),n=o.XLSX_WORKSHEET_IMAGE_IDS.get(t);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:i.map((e,t)=>{const i=(e=>{e.fitCell=!!e.fitCell||!e.width||!e.height;const{position:t={},fitCell:i,width:o=0,height:r=0,totalHeight:n,totalWidth:a}=e,{offsetX:l=0,offsetY:d=0,row:c=1,rowSpan:u=1,column:h=1,colSpan:g=1}=t;return{from:{row:c-1,col:h-1,offsetX:(0,s.pixelsToEMU)(l),offsetY:(0,s.pixelsToEMU)(d)},to:{row:c-1+(i?1:u-1),col:h-1+(i?1:g-1),offsetX:(0,s.pixelsToEMU)(o+l),offsetY:(0,s.pixelsToEMU)(r+d)},height:(0,s.pixelsToEMU)(n||r),width:(0,s.pixelsToEMU)(a||o)}})(e);return{name:"xdr:twoCellAnchor",properties:{rawMap:{editAs:"absolute"}},children:[r("from",i.from),r("to",i.to),u(e,t,n.get(e.id).index,i),{name:"xdr:clientData"}]}})}}};t.default=h},1775:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const i={getTemplate(e){return{name:"mergeCell",properties:{rawMap:{ref:e}}}}};t.default=i},10637:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const i={getTemplate(e){const{Id:t,Type:i,Target:s}=e;return{name:"Relationship",properties:{rawMap:{Id:t,Type:i,Target:s}}}}};t.default=i},97348:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const s=i(85608).__importDefault(i(10637)),o={getTemplate(e){return{name:"Relationships",properties:{rawMap:{xmlns:"http://schemas.openxmlformats.org/package/2006/relationships"}},children:e.map(e=>s.default.getTemplate(e))}}};t.default=o},57067:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const s=i(85608),o=i(93237),r=s.__importDefault(i(43391)),n=e=>""!==e.data?.value||void 0!==e.styleId,a={getTemplate(e,t,i){const{collapsed:s,hidden:a,height:l,outlineLevel:d,cells:c=[]}=e;((e,t)=>{const i=[];let s=0;for(let t=0;t=0;s--){const r=[],n=e[i[s].pos];for(let e=1;e<=n.mergeAcross;e++)r.push({ref:`${(0,o.getExcelColumnName)(i[s].excelPos+1+e)}${t+1}`,styleId:n.styleId,data:{type:"empty",value:null}});r.length&&e.splice(i[s].pos+1,0,...r)}})(c,t);const u=c.filter(n).map((e,t)=>r.default.getTemplate(e,t,i));return{name:"row",properties:{rawMap:{r:t+1,collapsed:s?"1":"0",hidden:a?"1":"0",ht:l,customHeight:null!=l?"1":"0",spans:"1:1",outlineLevel:d||void 0}},children:u}}};t.default=a},71126:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const s=i(93237),o={getTemplate(e){return{name:"sst",properties:{rawMap:{xmlns:"http://schemas.openxmlformats.org/spreadsheetml/2006/main",count:e.size,uniqueCount:e.size}},children:(0,s.buildSharedString)(e)}}};t.default=o},67440:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const i={getTemplate(e,t){const i=(t+1).toString();return{name:"sheet",properties:{rawMap:{name:e,sheetId:i,"r:id":`rId${i}`}}}}};t.default=i},82023:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const s=i(85608).__importDefault(i(67440)),o={getTemplate(e){return{name:"sheets",children:e.map((e,t)=>s.default.getTemplate(e,t))}}};t.default=o},81951:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const s=i(21842),o=e=>{const t=["Context","LeftToRight","RightToLeft"].indexOf(e);return Math.max(t,0)},r={getTemplate(e){const{horizontal:t,indent:i,readingOrder:r,rotate:n,shrinkToFit:a,vertical:l,wrapText:d}=e;return{name:"alignment",properties:{rawMap:{horizontal:t&&(0,s.convertLegacyHorizontalAlignment)(t),indent:i,readingOrder:r&&o(r),textRotation:n,shrinkToFit:a,vertical:l&&(0,s.convertLegacyVerticalAlignment)(l),wrapText:d}}}}};t.default=r},13142:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const s=i(21842),o=e=>({name:"color",properties:{rawMap:{rgb:(0,s.convertLegacyColor)(e||"#000000")}}}),r={getTemplate(e){const{left:t,right:i,top:s,bottom:r,diagonal:n}=e,a=t?[o(t.color)]:void 0,l=i?[o(i.color)]:void 0,d=s?[o(s.color)]:void 0,c=r?[o(r.color)]:void 0,u=n?[o(n.color)]:void 0;return{name:"border",children:[{name:"left",properties:{rawMap:{style:t?.style}},children:a},{name:"right",properties:{rawMap:{style:i?.style}},children:l},{name:"top",properties:{rawMap:{style:s?.style}},children:d},{name:"bottom",properties:{rawMap:{style:r?.style}},children:c},{name:"diagonal",properties:{rawMap:{style:n?.style}},children:u}]}}};t.default=r},30773:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const s=i(85608).__importDefault(i(13142)),o={getTemplate(e){return{name:"borders",properties:{rawMap:{count:e.length}},children:e.map(e=>s.default.getTemplate(e))}}};t.default=o},95271:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const i={getTemplate(e){const{builtinId:t,name:i,xfId:s}=e;return{name:"cellStyle",properties:{rawMap:{builtinId:t,name:i,xfId:s}}}}};t.default=i},64100:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const s=i(85608).__importDefault(i(7234)),o={getTemplate(e){return{name:"cellStyleXfs",properties:{rawMap:{count:e.length}},children:e.map(e=>s.default.getTemplate(e))}}};t.default=o},23246:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const s=i(85608).__importDefault(i(95271)),o={getTemplate(e){return{name:"cellStyles",properties:{rawMap:{count:e.length}},children:e.map(e=>s.default.getTemplate(e))}}};t.default=o},74473:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const s=i(85608).__importDefault(i(7234)),o={getTemplate(e){return{name:"cellXfs",properties:{rawMap:{count:e.length}},children:e.map(e=>s.default.getTemplate(e))}}};t.default=o},73153:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const i={getTemplate(e){const{patternType:t,fgTheme:i,fgTint:s,fgRgb:o,bgRgb:r,bgIndexed:n}=e,a={name:"patternFill",properties:{rawMap:{patternType:t}}};return(i||s||o)&&(a.children=[{name:"fgColor",properties:{rawMap:{theme:i,tint:s,rgb:o}}}]),(n||r)&&(a.children||(a.children=[]),a.children.push({name:"bgColor",properties:{rawMap:{indexed:n,rgb:r}}})),{name:"fill",children:[a]}}};t.default=i},59392:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const s=i(85608).__importDefault(i(73153)),o={getTemplate(e){return{name:"fills",properties:{rawMap:{count:e.length}},children:e.map(e=>s.default.getTemplate(e))}}};t.default=o},80585:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const i={getTemplate(e){const{size:t,colorTheme:i,color:s="FF000000",fontName:o="Calibri",family:r,scheme:n,italic:a,bold:l,strikeThrough:d,outline:c,shadow:u,underline:h,verticalAlign:g}=e,p=[{name:"sz",properties:{rawMap:{val:t}}},{name:"color",properties:{rawMap:{theme:i,rgb:s}}},{name:"name",properties:{rawMap:{val:o}}}];return r&&p.push({name:"family",properties:{rawMap:{val:r}}}),n&&p.push({name:"scheme",properties:{rawMap:{val:n}}}),a&&p.push({name:"i"}),l&&p.push({name:"b"}),d&&p.push({name:"strike"}),c&&p.push({name:"outline"}),u&&p.push({name:"shadow"}),h&&p.push({name:"u",properties:{rawMap:{val:h}}}),g&&p.push({name:"vertAlign",properties:{rawMap:{val:g}}}),{name:"font",children:p}}};t.default=i},83704:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const s=i(85608).__importDefault(i(80585)),o={getTemplate(e){return{name:"fonts",properties:{rawMap:{count:e.length}},children:e.map(e=>s.default.getTemplate(e))}}};t.default=o},77282:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const s=i(76624);const o={getTemplate(e){let{formatCode:t,numFmtId:i}=e;return t.length&&(t=function(e){const t=e.split(/(\[[^\]]*\])/);for(let e=0;es.default.getTemplate(e))}}};t.default=o},78187:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const i={getTemplate(e){const t=!1===e.protected?0:1;return{name:"protection",properties:{rawMap:{hidden:!0===e.hideFormula?1:0,locked:t}}}}};t.default=i},3056:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.registerStyles=t.getStyleId=void 0;const s=i(85608),o=i(72805),r=i(21842),n=i(93237),a=s.__importDefault(i(30773)),l=s.__importDefault(i(64100)),d=s.__importDefault(i(23246)),c=s.__importDefault(i(74473)),u=s.__importDefault(i(59392)),h=s.__importDefault(i(83704)),g=s.__importDefault(i(85305));let p,m,f,C,v,w,b,y,S;const x=(e,t)=>(e.includes("mixedStyle")&&t>1&&(e+=`_${t}`),e),F=()=>{p={base:0},m=[],f=[{fontName:"Calibri",colorTheme:"1",family:"2",scheme:"minor"}],C=[{patternType:"none"},{patternType:"gray125"}],v=[{left:void 0,right:void 0,top:void 0,bottom:void 0,diagonal:void 0}],w=[{borderId:0,fillId:0,fontId:0,numFmtId:0}],b=[{borderId:0,fillId:0,fontId:0,numFmtId:0,xfId:0}],y=[{builtinId:0,name:"Normal",xfId:0}]},R=e=>{const{alignment:t,borders:i,font:s,interior:a,numberFormat:l,protection:d,quotePrefix:c}=e;let{id:u}=e,h=0,g=0,w=0,y=0;u&&(u=x(u,S),null==p[u]&&(a&&(h=(e=>{const t=(0,r.convertLegacyPattern)(e.pattern),i=(0,r.convertLegacyColor)(e.color),s=(0,r.convertLegacyColor)(e.patternColor);let o=C.findIndex(e=>{const{patternType:o,fgRgb:r,bgRgb:n}=e;return!(o!=t||r!=i||n!=s)});return-1===o&&(o=C.length,C.push({patternType:t,fgRgb:i,bgRgb:s})),o})(a)),i&&(g=(e=>{const{borderBottom:t,borderTop:i,borderLeft:s,borderRight:o}=e;let n,a,l,d,c,u,h,g;s&&(l=(0,r.convertLegacyBorder)(s.lineStyle,s.weight),h=(0,r.convertLegacyColor)(s.color)),o&&(d=(0,r.convertLegacyBorder)(o.lineStyle,o.weight),g=(0,r.convertLegacyColor)(o.color)),t&&(n=(0,r.convertLegacyBorder)(t.lineStyle,t.weight),c=(0,r.convertLegacyColor)(t.color)),i&&(a=(0,r.convertLegacyBorder)(i.lineStyle,i.weight),u=(0,r.convertLegacyColor)(i.color));let p=v.findIndex(e=>{const{left:t,right:i,top:s,bottom:o}=e;if(!t&&(l||h))return!1;if(!i&&(d||g))return!1;if(!s&&(a||u))return!1;if(!o&&(n||c))return!1;const{style:r,color:p}=t||{},{style:m,color:f}=i||{},{style:C,color:v}=s||{},{style:w,color:b}=o||{};return r==l&&p==h&&m==d&&f==g&&C==a&&v==u&&w==n&&b==c});return-1===p&&(p=v.length,v.push({left:{style:l,color:h},right:{style:d,color:g},top:{style:a,color:u},bottom:{style:n,color:c},diagonal:{style:void 0,color:void 0}})),p})(i)),s&&(w=(e=>{const{fontName:t="Calibri",color:i,size:s,bold:o,italic:a,outline:l,shadow:d,strikeThrough:c,underline:u,family:h,verticalAlign:g}=e,p=(0,r.convertLegacyColor)(i),m=(0,n.getFontFamilyId)(h),C=u?u.toLocaleLowerCase():void 0,v=g?g.toLocaleLowerCase():void 0;let w=f.findIndex(e=>!(e.fontName!=t||e.color!=p||e.size!=s||e.bold!=o||e.italic!=a||e.outline!=l||e.shadow!=d||e.strikeThrough!=c||e.underline!=C||e.verticalAlign!=v||e.family!=m));return-1===w&&(w=f.length,f.push({fontName:t,color:p,size:s,bold:o,italic:a,outline:l,shadow:d,strikeThrough:c,underline:C,verticalAlign:v,family:null!=m?m.toString():void 0})),w})(s)),l&&(y=(e=>{if(o.numberFormatMap[e])return o.numberFormatMap[e];let t=m.findIndex(t=>t.formatCode===e);return-1===t?(t=m.length+164,m.push({formatCode:e,numFmtId:t})):t=m[t].numFmtId,t})(l.format)),p[u]=b.length,b.push({alignment:t,borderId:g||0,fillId:h||0,fontId:w||0,numFmtId:y||0,protection:d,quotePrefix:c,xfId:0})))},P={getTemplate(e){const t=g.default.getTemplate(m),i=h.default.getTemplate(f.map(t=>({...t,size:null!=t.size?t.size:e}))),s=u.default.getTemplate(C),o=a.default.getTemplate(v),r=l.default.getTemplate(w),n=c.default.getTemplate(b),p=d.default.getTemplate(y);return F(),{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,i,s,o,r,n,p,{name:"tableStyles",properties:{rawMap:{count:0,defaultPivotStyle:"PivotStyleLight16",defaultTableStyle:"TableStyleMedium2"}}}]}}};t.getStyleId=(e,t)=>p[x(e,t)]||0;t.registerStyles=(e,t)=>{S=t,1===S&&F(),e.forEach(R)},t.default=P},7234:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const s=i(85608),o=s.__importDefault(i(81951)),r=s.__importDefault(i(78187)),n={getTemplate(e){const{alignment:t,borderId:i,fillId:s,fontId:n,numFmtId:a,protection:l,quotePrefix:d,xfId:c}=e,u=[];return t&&u.push(o.default.getTemplate(t)),l&&u.push(r.default.getTemplate(l)),{name:"xf",properties:{rawMap:{applyAlignment:t?1:void 0,applyProtection:l?1:void 0,applyBorder:i?1:void 0,applyFill:s?1:void 0,borderId:i,fillId:s,applyFont:n?1:void 0,fontId:n,applyNumberFormat:a?1:void 0,numFmtId:a,quotePrefix:d?1:void 0,xfId:c}},children:u.length?u:void 0}}};t.default=n},30859:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const s=i(76624),o=i(93237),r={getTemplate(e,t){const{name:i,columns:r,rowRange:n,displayName:a,showRowStripes:l,showColumnStripes:d,showFilterButtons:c,highlightFirstColumn:u,highlightLastColumn:h}=e||{},g=!n||n[0]-n[1]===0;if(!e||!i||!Array.isArray(r)||!r.length||g)return{name:"table"};const p=r.map((e,t)=>({name:"filterColumn",properties:{rawMap:{colId:t.toString(),hiddenButton:c[t]?0:1}}})),m=`${`A${n[0]}`}:${`${(0,o.getExcelColumnName)(r.length)}${n[1]}`}`,f=`${t+1}`,C=t?`${a}_${f}`:a;return{name:"table",properties:{rawMap:{xmlns:"http://schemas.openxmlformats.org/spreadsheetml/2006/main","xmlns:mc":"http://schemas.openxmlformats.org/markup-compatibility/2006","mc:Ignorable":"xr xr3","xmlns:xr":"http://schemas.microsoft.com/office/spreadsheetml/2014/revision","xmlns:xr3":"http://schemas.microsoft.com/office/spreadsheetml/2016/revision3",name:C,displayName:C,ref:m,totalsRowShown:0,id:f}},children:[{name:"autoFilter",properties:{rawMap:{ref:m}},children:p},{name:"tableColumns",properties:{rawMap:{count:r.length}},children:r.map((e,t)=>({name:"tableColumn",properties:{rawMap:{id:(t+1).toString(),name:(0,s._escapeString)((0,o.sanitizeTableName)(e)),dataCellStyle:"Normal"}}}))},{name:"tableStyleInfo",properties:{rawMap:{name:"TableStyleLight1",showFirstColumn:u?1:0,showLastColumn:h?1:0,showRowStripes:l?1:0,showColumnStripes:d?1:0}}}]}}};t.default=r},76316:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const s=i(85608).__importDefault(i(72119)),o={getTemplate(){return{name:"a:theme",properties:{prefixedAttributes:[{prefix:"xmlns:",map:{a:"http://schemas.openxmlformats.org/drawingml/2006/main"}}],rawMap:{name:"Office Theme"}},children:[s.default.getTemplate(),{name:"a:objectDefaults"},{name:"a:extraClrSchemeLst"}]}}};t.default=o},39119:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const i=e=>{const[t,i,s,o]=e;return{name:`a:${t}`,children:[{name:`a:${i}`,properties:{rawMap:{val:s,lastClr:o}}}]}},s={getTemplate(){return{name:"a:clrScheme",properties:{rawMap:{name:"Office"}},children:[i(["dk1","sysClr","windowText","000000"]),i(["lt1","sysClr","window","FFFFFF"]),i(["dk2","srgbClr","44546A"]),i(["lt2","srgbClr","E7E6E6"]),i(["accent1","srgbClr","4472C4"]),i(["accent2","srgbClr","ED7D31"]),i(["accent3","srgbClr","A5A5A5"]),i(["accent4","srgbClr","FFC000"]),i(["accent5","srgbClr","5B9BD5"]),i(["accent6","srgbClr","70AD47"]),i(["hlink","srgbClr","0563C1"]),i(["folHlink","srgbClr","954F72"])]}}};t.default=s},221:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const i=e=>{const[t,i,s,o]=e;return{name:`a:${t}`,properties:{rawMap:{script:s,typeface:i,panose:o}}}},s={getTemplate(){return{name:"a:fontScheme",properties:{rawMap:{name:"Office"}},children:[{name:"a:majorFont",children:[i(["latin","Calibri Light",void 0,"020F0302020204030204"]),i(["ea",""]),i(["cs",""]),i(["font","游ゴシック Light","Jpan"]),i(["font","맑은 고딕","Hang"]),i(["font","等线 Light","Hans"]),i(["font","新細明體","Hant"]),i(["font","Times New Roman","Arab"]),i(["font","Times New Roman","Hebr"]),i(["font","Tahoma","Thai"]),i(["font","Nyala","Ethi"]),i(["font","Vrinda","Beng"]),i(["font","Shruti","Gujr"]),i(["font","MoolBoran","Khmr"]),i(["font","Tunga","Knda"]),i(["font","Raavi","Guru"]),i(["font","Euphemia","Cans"]),i(["font","Plantagenet Cherokee","Cher"]),i(["font","Microsoft Yi Baiti","Yiii"]),i(["font","Microsoft Himalaya","Tibt"]),i(["font","MV Boli","Thaa"]),i(["font","Mangal","Deva"]),i(["font","Gautami","Telu"]),i(["font","Latha","Taml"]),i(["font","Estrangelo Edessa","Syrc"]),i(["font","Kalinga","Orya"]),i(["font","Kartika","Mlym"]),i(["font","DokChampa","Laoo"]),i(["font","Iskoola Pota","Sinh"]),i(["font","Mongolian Baiti","Mong"]),i(["font","Times New Roman","Viet"]),i(["font","Microsoft Uighur","Uigh"]),i(["font","Sylfaen","Geor"]),i(["font","Arial","Armn"]),i(["font","Leelawadee UI","Bugi"]),i(["font","Microsoft JhengHei","Bopo"]),i(["font","Javanese Text","Java"]),i(["font","Segoe UI","Lisu"]),i(["font","Myanmar Text","Mymr"]),i(["font","Ebrima","Nkoo"]),i(["font","Nirmala UI","Olck"]),i(["font","Ebrima","Osma"]),i(["font","Phagspa","Phag"]),i(["font","Estrangelo Edessa","Syrn"]),i(["font","Estrangelo Edessa","Syrj"]),i(["font","Estrangelo Edessa","Syre"]),i(["font","Nirmala UI","Sora"]),i(["font","Microsoft Tai Le","Tale"]),i(["font","Microsoft New Tai Lue","Talu"]),i(["font","Ebrima","Tfng"])]},{name:"a:minorFont",children:[i(["latin","Calibri",void 0,"020F0502020204030204"]),i(["ea",""]),i(["cs",""]),i(["font","游ゴシック","Jpan"]),i(["font","맑은 고딕","Hang"]),i(["font","等线","Hans"]),i(["font","新細明體","Hant"]),i(["font","Arial","Arab"]),i(["font","Arial","Hebr"]),i(["font","Tahoma","Thai"]),i(["font","Nyala","Ethi"]),i(["font","Vrinda","Beng"]),i(["font","Shruti","Gujr"]),i(["font","DaunPenh","Khmr"]),i(["font","Tunga","Knda"]),i(["font","Raavi","Guru"]),i(["font","Euphemia","Cans"]),i(["font","Plantagenet Cherokee","Cher"]),i(["font","Microsoft Yi Baiti","Yiii"]),i(["font","Microsoft Himalaya","Tibt"]),i(["font","MV Boli","Thaa"]),i(["font","Mangal","Deva"]),i(["font","Gautami","Telu"]),i(["font","Latha","Taml"]),i(["font","Estrangelo Edessa","Syrc"]),i(["font","Kalinga","Orya"]),i(["font","Kartika","Mlym"]),i(["font","DokChampa","Laoo"]),i(["font","Iskoola Pota","Sinh"]),i(["font","Mongolian Baiti","Mong"]),i(["font","Arial","Viet"]),i(["font","Microsoft Uighur","Uigh"]),i(["font","Sylfaen","Geor"]),i(["font","Arial","Armn"]),i(["font","Leelawadee UI","Bugi"]),i(["font","Microsoft JhengHei","Bopo"]),i(["font","Javanese Text","Java"]),i(["font","Segoe UI","Lisu"]),i(["font","Myanmar Text","Mymr"]),i(["font","Ebrima","Nkoo"]),i(["font","Nirmala UI","Olck"]),i(["font","Ebrima","Osma"]),i(["font","Phagspa","Phag"]),i(["font","Estrangelo Edessa","Syrn"]),i(["font","Estrangelo Edessa","Syrj"]),i(["font","Estrangelo Edessa","Syre"]),i(["font","Nirmala UI","Sora"]),i(["font","Microsoft Tai Le","Tale"]),i(["font","Microsoft New Tai Lue","Talu"]),i(["font","Ebrima","Tfng"])]}]}}};t.default=s},11203:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const i=(e,t,i)=>({name:`a:${e}`,properties:{rawMap:{val:t}},children:i}),s=e=>{const[t,s,o,r,n,a]=e,l=[];return l.push(i("satMod",o)),r&&l.push(i("lumMod",r)),n&&l.push(i("tint",n)),a&&l.push(i("shade",a)),{name:"a:gs",properties:{rawMap:{pos:t}},children:[{name:"a:schemeClr",properties:{rawMap:{val:s}},children:l}]}},o=(e,t)=>({name:"a:solidFill",children:[i("schemeClr",e,t)]}),r=e=>{const[t,i,o,r,n]=e,[a,l]=n;return{name:"a:gradFill",properties:{rawMap:{rotWithShape:t}},children:[{name:"a:gsLst",children:[s(i),s(o),s(r)]},{name:"a:lin",properties:{rawMap:{ang:a,scaled:l}}}]}},n=e=>{const[t,s,r,n]=e;return{name:"a:ln",properties:{rawMap:{w:t,cap:s,cmpd:r,algn:n}},children:[o("phClr"),i("prstDash","solid"),{name:"a:miter",properties:{rawMap:{lim:"800000"}}}]}},a=e=>{const t=[];if(e){const[s,o,r,n,a]=e;t.push({name:"a:outerShdw",properties:{rawMap:{blurRad:s,dist:o,dir:r,algn:n,rotWithShape:a}},children:[i("srgbClr","000000",[i("alpha","63000")])]})}return{name:"a:effectStyle",children:[Object.assign({},{name:"a:effectLst"},t.length?{children:t}:{})]}},l={getTemplate(){return{name:"a:fmtScheme",properties:{rawMap:{name:"Office"}},children:[{name:"a:fillStyleLst",children:[o("phClr"),r(["1",["0","phClr","105000","110000","67000"],["50000","phClr","103000","105000","73000"],["100000","phClr","109000","105000","81000"],["5400000","0"]]),r(["1",["0","phClr","103000","102000","94000"],["50000","phClr","110000","100000",void 0,"100000"],["100000","phClr","120000","99000",void 0,"78000"],["5400000","0"]])]},{name:"a:lnStyleLst",children:[n(["6350","flat","sng","ctr"]),n(["12700","flat","sng","ctr"]),n(["19050","flat","sng","ctr"])]},{name:"a:effectStyleLst",children:[a(),a(),a(["57150","19050","5400000","ctr","0"])]},{name:"a:bgFillStyleLst",children:[o("phClr"),o("phClr",[i("tint","95000"),i("satMod","170000")]),r(["1",["0","phClr","150000","102000","93000","98000"],["50000","phClr","130000","103000","98000","90000"],["100000","phClr","120000",void 0,void 0,"63000"],["5400000","0"]])]}]}}};t.default=l},72119:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const s=i(85608),o=s.__importDefault(i(39119)),r=s.__importDefault(i(221)),n=s.__importDefault(i(11203)),a={getTemplate(){return{name:"a:themeElements",children:[o.default.getTemplate(),r.default.getTemplate(),n.default.getTemplate()]}}};t.default=a},15592:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const s=i(87165),o=e=>{const{aspectratio:t,rotation:i}=e||{},s={};return t&&(s.aspectratio="t"),i&&(s.rotation="t"),{name:"o:lock",properties:{prefixedAttributes:[{prefix:"v:",map:{ext:"edit"}}],rawMap:s}}};const r=(e,t)=>{let i;const{recolor:s,brightness:o,contrast:r,id:n}=e;if(s&&(i={},"Washout"!==s&&"Grayscale"!==s||(i.gain="19661f",i.blacklevel="22938f"),"Black & White"!==s&&"Grayscale"!==s||(i.grayscale="t","Black & White"===s&&(i.bilevel="t"))),!s||"Grayscale"===s){if(i||(i={}),null!=r&&50!==r){let e="1";r>=0&&(r<50?e=String(r/50):r<100?e=String(50/(100-r)):100===r&&(e="2147483647f")),i.gain=e}null!=o&&50!==o&&(i.blacklevel=(a=o,l=0,d=100,c=-.5,u=.5,(a-l)/(d-l)*(u-c)+c).toString())}var a,l,d,c,u;return{name:"v:imagedata",properties:{prefixedAttributes:[{prefix:"o:",map:{relid:`rId${t}`,title:n}}],rawMap:i}}},n=e=>Math.floor(.74999943307122*(e??0)),a={getTemplate(e){const t=s.XLSX_WORKSHEET_HEADER_FOOTER_IMAGES.get(e.sheetIndex)||[];var i;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:[{name:"o:shapelayout",properties:{prefixedAttributes:[{prefix:"v:",map:{ext:"edit"}}]},children:[{name:"o:idmap",properties:{prefixedAttributes:[{prefix:"v:",map:{ext:"edit"}}],rawMap:{data:"1"}}}]},{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:[{name:"v:stroke",properties:{rawMap:{joinstyle:"miter"}}},(i=["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"],{name:"v:formulas",children:i.map(e=>({name:"v:f",properties:{rawMap:{eqn:e}}}))}),{name:"v:path",properties:{prefixedAttributes:[{prefix:"o:",map:{connecttype:"rect",extrusionok:"f"}}],rawMap:{gradientshapeok:"t"}}},o({aspectratio:!0})]},...t.map((e,t)=>((e,t)=>{const{width:i=0,height:s=0,altText:a}=e,l=n(i),d=n(s);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: ${l}pt; height: ${d}pt; z-index: ${t+1}`,type:"#_x0000_t75",alt:a}},children:[r(e,t+1),o({rotation:!0})]}})(e,t))]}}};t.default=a},82519:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const s=i(85608).__importDefault(i(82023)),o={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}}}]},s.default.getTemplate(e)]}}};t.default=o},60559:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const s=i(85608),o=i(76624),r=i(93237),n=i(87165),a=s.__importDefault(i(73285)),l=s.__importDefault(i(1775)),d=s.__importDefault(i(57067)),c=e=>{if(null==e)return 1;const t=["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-1===t?1:t+1},u=(e,t,i)=>e.reduce((e,s,r)=>{const a="Center"===(l=s.position)?"C":"Right"===l?"R":"L";var l;const d=(c=`${e}&${a}`,(u=s.font)?(c+="&"",c+=u.fontName||"Calibri",u.bold!==u.italic?c+=u.bold?",Bold":",Italic":u.bold?c+=",Bold Italic":c+=",Regular",c+=""",u.size&&(c+=`&${u.size}`),u.strikeThrough&&(c+="&S"),u.underline&&(c+="&"+("Double"===u.underline?"E":"U")),u.color&&(c+=`&K${u.color.replace("#","").toUpperCase()}`),c):c);var c,u;const h=["Left","Center","Right"];s.position||(s.position=h[r]);const{image:g}=s;if("&[Picture]"===s.value&&g){const e=`${a}${t}${i}`;(0,n.addXlsxHeaderFooterImageToMap)(g,e)}return`${d}${(0,o._escapeString)((e=>{const t={"&[Page]":"&P","&[Pages]":"&N","&[Date]":"&D","&[Time]":"&T","&[Tab]":"&A","&[Path]":"&Z","&[File]":"&F","&[Picture]":"&G"};for(const i of Object.keys(t))e=e.replace(i,t[i]);return e})(s.value))}`},""),h=e=>{const t=[];return["all","first","even"].forEach(i=>{const s=e[i],o="all"===i?"odd":i;if(s)for(const e of Object.keys(s)){const r=s[e],n=`${e.charAt(0).toUpperCase()}${e.slice(1)}`,a=e[0].toUpperCase();if(r){const e="all"===i?"":i.toUpperCase();t.push({name:`${o}${n}`,properties:{rawMap:{"xml:space":"preserve"}},textNode:u(r,a,e)})}}}),t},g=e=>t=>(e.length&&t.children.push({name:"cols",children:e.map(e=>a.default.getTemplate(e))}),t),p=(e,t)=>i=>(e.length&&i.children.push({name:"sheetData",children:e.map((e,i)=>d.default.getTemplate(e,i,t))}),i),m=e=>t=>{if(!e)return t;const i="boolean"==typeof e?{}:e,s={sheet:1},o=i.password?(e=>{const t=e.length;if(!t)return"";const i=new Array(t+1);i[0]=t;for(let s=1;s<=t;s++)i[s]=255&e.charCodeAt(s-1);let s=0;for(let e=i.length-1;e>=0;e--)s=((16384&s?1:0)|s<<1&32767)^i[e];return(52811^s).toString(16).toUpperCase().padStart(4,"0")})(i.password):"";o&&(s.password=o);const r={autoFilter:!1,deleteColumns:!1,deleteRows:!1,formatCells:!1,formatColumns:!1,formatRows:!1,insertColumns:!1,insertHyperlinks:!1,insertRows:!1,pivotTables:!1,selectLockedCells:!0,selectUnlockedCells:!0};return Object.keys(r).forEach(e=>{const t=i[e];null!=t&&t!==r[e]&&(s[e]=t?0:1)}),t.children.push({name:"sheetProtection",properties:{rawMap:s}}),t},f=e=>t=>{const{top:i=.75,right:s=.7,bottom:o=.75,left:r=.7,header:n=.3,footer:a=.3}=e;return t.children.push({name:"pageMargins",properties:{rawMap:{bottom:o,footer:a,header:n,left:r,right:s,top:i}}}),t},C=e=>t=>{var i;return e&&t.children.push({name:"pageSetup",properties:{rawMap:{horizontalDpi:0,verticalDpi:0,orientation:(i=e.orientation,!i||"Portrait"!==i&&"Landscape"!==i?"portrait":i.toLocaleLowerCase()),paperSize:c(e.pageSize)}}}),t},v=e=>t=>{if(!e)return t;const i=null!=e.first?1:0,s=null!=e.even?1:0;return t.children.push({name:"headerFooter",properties:{rawMap:{differentFirst:i,differentOddEven:s}},children:h(e)}),t},w=e=>t=>{const i=n.XLSX_WORKSHEET_IMAGES.get(e);return i?.length&&t.children.push({name:"drawing",properties:{rawMap:{"r:id":"rId"+ ++t.rIdCounter}}}),t},b=e=>t=>(n.XLSX_WORKSHEET_HEADER_FOOTER_IMAGES.get(e)&&t.children.push({name:"legacyDrawingHF",properties:{rawMap:{"r:id":"rId"+ ++t.rIdCounter}}}),t),y=(e=0,t=0)=>{const i=e>0||t>0;return i?[{name:"pane",properties:{rawMap:{state:i?"frozen":void 0,topLeftCell:i?`${(0,r.getExcelColumnName)(e+1)}${t+1}`:void 0,xSplit:0===e?void 0:e,ySplit:0===t?void 0:t}}}]:void 0},S=(e=!1,t,i)=>s=>(s.children.push({name:"sheetViews",children:[{name:"sheetView",properties:{rawMap:{rightToLeft:!0===e?"1":"0",workbookViewId:"0"}},children:y(t,i)}]}),s),x=e=>t=>{const i=e.reduce((e,t)=>t.outlineLevel&&t.outlineLevel>e?t.outlineLevel:e,0);return t.children.push({name:"sheetFormatPr",properties:{rawMap:{baseColWidth:10,defaultRowHeight:16,outlineLevelRow:i||void 0}}}),t},F={getTemplate(e){const{worksheet:t,currentSheet:i,config:s}=e,{margins:o={},pageSetup:a,headerFooterConfig:d,suppressColumnOutline:c,rightToLeft:u,frozenRowCount:h,frozenColumnCount:y,protectSheet:F}=s,{table:R}=t,{rows:P,columns:M}=R,E=M?.length?((e,t,i)=>{const s=[],o=[];e.forEach((e,i)=>{const n=e.cells;let a,l=0;n.forEach((e,n)=>{const d=n+l+1,c=(0,r.getExcelColumnName)(d),u=i+1;if(e.mergeAcross){l+=e.mergeAcross;const t=(0,r.getExcelColumnName)(n+l+1);s.push(`${c}${u}:${t}${u}`)}t[d-1]||(t[d-1]={});const{collapsibleRanges:h}=e;h&&h.forEach(e=>{o.push([d+e[0],d+e[1]])}),a=t[d-1],a.min=d,a.max=d,e.ref=`${c}${u}`})}),o.sort((e,t)=>e[0]!==t[0]?e[0]-t[0]:t[1]-e[1]);const n=new Map,a=new Map;return o.filter(e=>{const t=e.toString();return!n.get(t)&&(n.set(t,!0),!0)}).forEach(e=>{const s=t.find(t=>t.min==e[0]&&t.max==e[1]),o=a.get(e[0]);t.push({min:e[0],max:e[1],outlineLevel:i?void 0:o||1,width:(s||{width:100}).width}),a.set(e[0],(o||0)+1)}),s})(P,M,!!c):[],A=n.XLSX_WORKSHEET_DATA_TABLES.get(i),{children:T}=[e=>(e.children.push({name:"sheetPr",children:[{name:"outlinePr",properties:{rawMap:{summaryBelow:0}}}]}),e),S(u,y,h),x(P),g(M),p(P,i+1),m(F),(I=E,e=>(I.length&&e.children.push({name:"mergeCells",properties:{rawMap:{count:I.length}},children:I.map(e=>l.default.getTemplate(e))}),e)),f(o),C(a),v(d),w(i),b(i),(D=A,e=>(D&&e.children.push({name:"tableParts",properties:{rawMap:{count:"1"}},children:[{name:"tablePart",properties:{rawMap:{"r:id":"rId"+ ++e.rIdCounter}}}]}),e))].reduce((e,t)=>t(e),{children:[],rIdCounter:0});var D,I;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:T}}};t.default=F},5552:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.deflateLocalFile=void 0;t.deflateLocalFile=async e=>{const t=new Blob([e]),{size:i,content:s}=await(async e=>{let t=0;const i=[],s=new WritableStream({write:e=>{i.push(e),t+=e.length}}),o=new ReadableStream({start:t=>{const i=new FileReader;i.onload=e=>{e.target?.result&&t.enqueue(e.target.result),t.close()},i.readAsArrayBuffer(e)}}),r=new window.CompressionStream("deflate-raw");return await o.pipeThrough(r).pipeTo(s),{size:t,content:new Blob(i)}})(t);return{size:i,content:new Uint8Array(await s.arrayBuffer())}}},14557:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.convertDecToHex=t.convertDate=t.convertTime=void 0;t.convertTime=e=>{let t=e.getHours();return t<<=6,t|=e.getMinutes(),t<<=5,t|=e.getSeconds()/2,t};t.convertDate=e=>{let t=e.getFullYear()-1980;return t<<=4,t|=e.getMonth()+1,t<<=5,t|=e.getDate(),t},t.convertDecToHex=function(e,t){let i="";for(let s=0;s>>=8;return i}},30758:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.getCrcFromCrc32Table=void 0;const i=e=>{if(!e.length)return 0;let t=~0,i=0,o=0,r=0;for(let n=0;n>>8^r;return-1^t};t.getCrcFromCrc32Table=e=>e.length?i("string"==typeof e?(new TextEncoder).encode(e):e):0;const s=new Uint32Array([0,1996959894,3993919788,2567524794,124634137,1886057615,3915621685,2657392035,249268274,2044508324,3772115230,2547177864,162941995,2125561021,3887607047,2428444049,498536548,1789927666,4089016648,2227061214,450548861,1843258603,4107580753,2211677639,325883990,1684777152,4251122042,2321926636,335633487,1661365465,4195302755,2366115317,997073096,1281953886,3579855332,2724688242,1006888145,1258607687,3524101629,2768942443,901097722,1119000684,3686517206,2898065728,853044451,1172266101,3705015759,2882616665,651767980,1373503546,3369554304,3218104598,565507253,1454621731,3485111705,3099436303,671266974,1594198024,3322730930,2970347812,795835527,1483230225,3244367275,3060149565,1994146192,31158534,2563907772,4023717930,1907459465,112637215,2680153253,3904427059,2013776290,251722036,2517215374,3775830040,2137656763,141376813,2439277719,3865271297,1802195444,476864866,2238001368,4066508878,1812370925,453092731,2181625025,4111451223,1706088902,314042704,2344532202,4240017532,1658658271,366619977,2362670323,4224994405,1303535960,984961486,2747007092,3569037538,1256170817,1037604311,2765210733,3554079995,1131014506,879679996,2909243462,3663771856,1141124467,855842277,2852801631,3708648649,1342533948,654459306,3188396048,3373015174,1466479909,544179635,3110523913,3462522015,1591671054,702138776,2966460450,3352799412,1504918807,783551873,3082640443,3233442989,3988292384,2596254646,62317068,1957810842,3939845945,2647816111,81470997,1943803523,3814918930,2489596804,225274430,2053790376,3826175755,2466906013,167816743,2097651377,4027552580,2265490386,503444072,1762050814,4150417245,2154129355,426522225,1852507879,4275313526,2312317920,282753626,1742555852,4189708143,2394877945,397917763,1622183637,3604390888,2714866558,953729732,1340076626,3518719985,2797360999,1068828381,1219638859,3624741850,2936675148,906185462,1090812512,3747672003,2825379669,829329135,1181335161,3412177804,3160834842,628085408,1382605366,3423369109,3138078467,570562233,1426400815,3317316542,2998733608,733239954,1555261956,3268935591,3050360625,752459403,1541320221,2607071920,3965973030,1969922972,40735498,2617837225,3943577151,1913087877,83908371,2512341634,3803740692,2075208622,213261112,2463272603,3855990285,2094854071,198958881,2262029012,4057260610,1759359992,534414190,2176718541,4139329115,1873836001,414664567,2282248934,4279200368,1711684554,285281116,2405801727,4167216745,1634467795,376229701,2685067896,3608007406,1308918612,956543938,2808555105,3495958263,1231636301,1047427035,2932959818,3654703836,1088359270,936918e3,2847714899,3736837829,1202900863,817233897,3183342108,3401237130,1404277552,615818150,3134207493,3453421203,1423857449,601450431,3009837614,3294710456,1567103746,711928724,3020668471,3272380065,1510334235,755167117])},75950:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ZipContainer=void 0;const s=i(76090);t.ZipContainer=class{constructor(){this.folders=[],this.files=[]}addFolders(e){e.forEach(this.addFolder.bind(this))}addFolder(e){this.folders.push({path:e,created:new Date,isBase64:!1,type:"folder"})}addFile(e,t,i=!1){this.files.push({path:e,created:new Date,content:i?t:(new TextEncoder).encode(t),isBase64:i,type:"file"})}async getZipFile(e="application/zip"){const t=await this.buildCompressedFileStream();return this.clearStream(),new Blob([t],{type:e})}getUncompressedZipFile(e="application/zip"){const t=this.buildFileStream();return this.clearStream(),new Blob([t],{type:e})}clearStream(){this.folders=[],this.files=[]}packageFiles(e){let t=0,i=0;for(const s of e){const{localFileHeader:e,centralDirectoryHeader:o,content:r}=s;t+=e.length+r.length,i+=o.length}const o=new Uint8Array(t),r=new Uint8Array(i);let n=0,a=0;for(const t of e){const{localFileHeader:e,centralDirectoryHeader:i,content:s}=t;o.set(e,n),n+=e.length,o.set(s,n),n+=s.length,r.set(i,a),a+=i.length}const l=(0,s.buildCentralDirectoryEnd)(e.length,i,t),d=new Uint8Array(o.length+r.length+l.length);return d.set(o),d.set(r,o.length),d.set(l,o.length+r.length),d}async buildCompressedFileStream(){const e=[...this.folders,...this.files],t=await Promise.all(e.map(s.preprocessFileForZip)),i=[];let o=0;for(let r=0;r>i&63|128)}function o(e){if(!(4294967168&e))return t(e);let o="";return 4294965248&e?4294901760&e?4292870144&e||(o=t(e>>18&7|240),o+=i(e,12),o+=i(e,6)):(!function(e){if(e>=55296&&e<=57343)throw new Error((0,s._errMsg)(255,{point:e}))}(e),o=t(e>>12&15|224),o+=i(e,6)):o=t(e>>6&31|192),o+=t(63&e|128),o}const r=function(e){const t=[];if(!e)return[];const i=e.length;let s,o,r=0;for(;r=55296&&s<=56319&&r{const{content:d,path:c,created:u}=e,h=(0,r.convertTime)(u),g=(0,r.convertDate)(u),p=(0,n.getCrcFromCrc32Table)(o),m=void 0!==l?l:s,f=a(c),C=f!==c;let v="";if(C){const e=(0,r.convertDecToHex)(1,1)+(0,r.convertDecToHex)((0,n.getCrcFromCrc32Table)(f),4)+f;v="up"+(0,r.convertDecToHex)(e.length,2)+e}const w="\0"+(C?"\0\b":"\0\0")+(0,r.convertDecToHex)(t?8:0,2)+(0,r.convertDecToHex)(h,2)+(0,r.convertDecToHex)(g,2)+(0,r.convertDecToHex)(m?p:0,4)+(0,r.convertDecToHex)(l??s,4)+(0,r.convertDecToHex)(s,4)+(0,r.convertDecToHex)(f.length,2)+(0,r.convertDecToHex)(v.length,2),b="PK"+w+f+v,y="PK\0"+w+"\0\0\0\0\0\0"+(d?"\0\0\0\0":"\0\0\0")+(0,r.convertDecToHex)(i,4)+f+v;return{localFileHeader:Uint8Array.from(b,e=>e.charCodeAt(0)),centralDirectoryHeader:Uint8Array.from(y,e=>e.charCodeAt(0))}};const l=e=>{let t;if("string"==typeof e){const i=atob(e.split(";base64,")[1]);t=Uint8Array.from(i,e=>e.charCodeAt(0))}else t=e;return{size:t.length,content:t}};t.preprocessFileForZip=async e=>{const{content:t}=e,{size:i,content:s}=t?l(t):{size:0,content:Uint8Array.from([])};let r,n,a=!1;if("file"===e.type&&s&&i>0){const e=await(0,o.deflateLocalFile)(s);r=e.content,n=e.size,a=!0}return{rawContent:s,rawSize:i,deflatedContent:r,deflatedSize:n,isCompressed:a}};t.getHeaderAndContent=(e,i)=>{const{content:s}=e,{content:o}=s?l(s):{content:Uint8Array.from([])};return{...(0,t.getHeaders)(e,!1,i,o.length,o,void 0),content:o,isCompressed:!1}};t.buildCentralDirectoryEnd=(e,t,i)=>{const s="PK\0\0\0\0"+(0,r.convertDecToHex)(e,2)+(0,r.convertDecToHex)(e,2)+(0,r.convertDecToHex)(t,4)+(0,r.convertDecToHex)(i,4)+"\0\0";return Uint8Array.from(s,e=>e.charCodeAt(0))}},45760:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.VirtualListDragFeature=void 0;const s=i(63809);class o extends s.AgVirtualListDragFeature{}t.VirtualListDragFeature=o},8046:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.AgFiltersToolPanelHeaderSelector=t.AgFiltersToolPanelHeader=t.EXPAND_STATE=void 0;const s=i(76624);var o;!function(e){e[e.EXPANDED=0]="EXPANDED",e[e.COLLAPSED=1]="COLLAPSED",e[e.INDETERMINATE=2]="INDETERMINATE"}(o||(t.EXPAND_STATE=o={}));const r={tag:"div",cls:"ag-filter-toolpanel-search",role:"presentation",children:[{tag:"div",ref:"eExpand",cls:"ag-filter-toolpanel-expand"},{tag:"ag-input-text-field",ref:"eFilterTextField",cls:"ag-filter-toolpanel-search-input"}]};class n extends s.Component{constructor(){super(...arguments),this.eExpand=s.RefPlaceholder,this.eFilterTextField=s.RefPlaceholder}postConstruct(){this.setTemplate(r,[s.AgInputTextFieldSelector]);const e=this.getLocaleTextFunc();this.eFilterTextField.setAutoComplete(!1).setInputAriaLabel(e("ariaFilterColumnsInput","Filter Columns Input")).onValueChange(this.onSearchTextChanged.bind(this)),this.createExpandIcons(),this.setExpandState(o.EXPANDED),this.addManagedElementListeners(this.eExpand,{click:this.onExpandClicked.bind(this)}),this.addManagedEventListeners({newColumnsLoaded:this.showOrHideOptions.bind(this)})}init(e){this.params=e,this.beans.colModel.ready&&this.showOrHideOptions()}createExpandIcons(){const{eExpand:e,beans:t}=this;e.appendChild(this.eExpandChecked=(0,s._createIconNoSpan)("accordionOpen",t)),e.appendChild(this.eExpandUnchecked=(0,s._createIconNoSpan)("accordionClosed",t)),e.appendChild(this.eExpandIndeterminate=(0,s._createIconNoSpan)("accordionIndeterminate",t))}showOrHideOptions(){const{params:e,eFilterTextField:t}=this,i=!e.suppressFilterSearch,o=!e.suppressExpandAll,r=this.getLocaleTextFunc();t.setInputPlaceholder(r("searchOoo","Search..."));const n=this.beans.colModel.getCols().some(e=>e.getOriginalParent()&&e.isFilterAllowed());(0,s._setDisplayed)(t.getGui(),i),(0,s._setDisplayed)(this.eExpand,o&&n)}onSearchTextChanged(){this.onSearchTextChangedDebounced||(this.onSearchTextChangedDebounced=(0,s._debounce)(this,()=>this.dispatchLocalEvent({type:"searchChanged",searchText:this.eFilterTextField.getValue()}),300)),this.onSearchTextChangedDebounced()}onExpandClicked(){const e=this.currentExpandState===o.EXPANDED?{type:"collapseAll"}:{type:"expandAll"};this.dispatchLocalEvent(e)}setExpandState(e){this.currentExpandState=e,(0,s._setDisplayed)(this.eExpandChecked,e===o.EXPANDED),(0,s._setDisplayed)(this.eExpandUnchecked,e===o.COLLAPSED),(0,s._setDisplayed)(this.eExpandIndeterminate,e===o.INDETERMINATE)}}t.AgFiltersToolPanelHeader=n,t.AgFiltersToolPanelHeaderSelector={selector:"AG-FILTERS-TOOL-PANEL-HEADER",component:n}},77291:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.AgFiltersToolPanelListSelector=t.AgFiltersToolPanelList=void 0;const s=i(76624),o=i(26092),r=i(8046),n=i(43905),a=i(15296);class l extends s.Component{wireBeans(e){this.colModel=e.colModel}constructor(){super({tag:"div",cls:"ag-filter-list-panel"}),this.initialised=!1,this.hasLoadedInitialState=!1,this.isInitialState=!1,this.filterGroupComps=[],this.suppressOnColumnsChanged=!1,this.onColumnsChangedPending=!1}init(e){this.initialised=!0;const t=(0,s._addGridCommonParams)(this.gos,{suppressExpandAll:!1,suppressFilterSearch:!1,suppressSyncLayoutWithGrid:!1});(0,s._mergeDeep)(t,e),this.params=t,t.suppressSyncLayoutWithGrid||this.addManagedEventListeners({columnMoved:()=>this.onColumnsChanged()}),this.addManagedEventListeners({newColumnsLoaded:()=>this.onColumnsChanged(),toolPanelVisibleChanged:e=>{"filters"!==e.key||e.visible||this.onPanelHidden()},dragStarted:()=>{this.suppressOnColumnsChanged=!0},dragStopped:()=>{this.suppressOnColumnsChanged=!1,this.onColumnsChangedPending&&(this.onColumnsChangedPending=!1,this.onColumnsChanged())}}),this.colModel.ready&&this.onColumnsChanged()}onColumnsChanged(){if(this.suppressOnColumnsChanged)return void(this.onColumnsChangedPending=!0);const e=this.colModel.isPivotMode();!this.params.suppressSyncLayoutWithGrid&&!e?this.syncFilterLayout():this.buildTreeFromProvidedColumnDefs(),this.refreshAriaLabel()}syncFilterLayout(){(0,o.syncLayoutWithGrid)(this.colModel,this.setFiltersLayout.bind(this)),this.refreshAriaLabel()}buildTreeFromProvidedColumnDefs(){const e=this.colModel.getColDefColTree();this.recreateFilters(e)}setFiltersLayout(e){const t=(0,o.toolPanelCreateColumnTree)(this.colModel,e);this.recreateFilters(t)}recreateFilters(e){const t=(0,s._getActiveDomElement)(this.beans);this.hasLoadedInitialState||(this.hasLoadedInitialState=!0,this.isInitialState=!!this.params.initialState);const i=this.getExpansionState();this.destroyFilters();const o=this.recursivelyAddComps(e,0,i);this.filterGroupComps=o;const r=o.length;if(r){for(const e of o)this.appendChild(e);this.setFirstAndLastVisible(0,r-1)}const n=this.searchFilterText;(0,s._exists)(n)&&this.searchFilters(n),this.fireExpandedEvent(),this.getGui().contains(t)&&t.focus(),this.isInitialState=!1,this.refreshAriaLabel()}recursivelyAddComps(e,t,i){return e.map(e=>{if((0,s.isProvidedColumnGroup)(e))return this.recursivelyAddFilterGroupComps(e,t,i)?.flatMap(e=>e)??[];const o=e;if(!this.shouldDisplayFilter(o))return[];const r=0===t,l=new n.ToolPanelFilterComp(r,()=>this.onFilterExpanded());if(this.createBean(l),l.setColumn(o),i.get(o.getId())&&l.expand(),t>0)return l;const d=this.createBean(new a.ToolPanelFilterGroupComp(o,[l],this.onGroupExpanded.bind(this),t,!0));return d.addCssClassToTitleBar("ag-filter-toolpanel-header"),i.get(d.getFilterGroupId())||d.collapse(),d}).flatMap(e=>e)}refreshAriaLabel(){const e=this.getLocaleTextFunc(),t=e("ariaFilterPanelList","Filter List"),i=e("filters","Filters"),o=this.getGui().querySelectorAll(".ag-filter-toolpanel-group-item:not(.ag-filter-toolpanel-group-wrapper, .ag-hidden)").length;(0,s._setAriaLabel)(this.getAriaElement(),`${t} ${o} ${i}`)}recursivelyAddFilterGroupComps(e,t,i){if(!this.filtersExistInChildren(e.getChildren()))return;const s=e.getColGroupDef();if(s?.suppressFiltersToolPanel)return[];const o=e.isPadding()?t:t+1,r=this.recursivelyAddComps(e.getChildren(),o,i).flatMap(e=>e);if(e.isPadding())return r;const n=new a.ToolPanelFilterGroupComp(e,r,this.onGroupExpanded.bind(this),t,!1);this.createBean(n),n.addCssClassToTitleBar("ag-filter-toolpanel-header");const l=i.get(n.getFilterGroupId());return(this.isInitialState&&!l||!1===l)&&n.collapse(),[n]}filtersExistInChildren(e){return e.some(e=>(0,s.isProvidedColumnGroup)(e)?this.filtersExistInChildren(e.getChildren()):this.shouldDisplayFilter(e))}shouldDisplayFilter(e){const t=e.getColDef()?.suppressFiltersToolPanel;return e.isFilterAllowed()&&!t}getExpansionState(){const e=new Map;if(this.isInitialState){const{expandedColIds:t,expandedGroupIds:i}=this.params.initialState;for(const i of t)e.set(i,!0);for(const t of i)e.set(t,!0);return e}const t=i=>{e.set(i.getFilterGroupId(),i.isExpanded());for(const s of i.getChildren())s instanceof a.ToolPanelFilterGroupComp?t(s):e.set(s.getColumn().getId(),s.isExpanded())};return this.filterGroupComps.forEach(t),e}refresh(){}setVisible(e){super.setDisplayed(e),e&&!this.initialised&&this.init(this.params)}expandFilterGroups(e,t){const i=[],o=s=>{const r=s.getFilterGroupId();(!t||t.includes(r))&&(e&&s.isColumnGroup()?s.expand():s.collapse(),i.push(r));for(const e of s.getChildren())e instanceof a.ToolPanelFilterGroupComp&&o(e)};if(this.filterGroupComps.forEach(o),this.onGroupExpanded(),t){const e=t.filter(e=>i.indexOf(e)<0);e.length>0&&(0,s._warn)(166,{unrecognisedGroupIds:e})}}expandFilters(e,t){const i=[],o=s=>{if(s instanceof a.ToolPanelFilterGroupComp){let t=!1;for(const i of s.getChildren()){o(i)&&(e?(s.expand(),t=!0):s.isColumnGroup()||s.collapse())}return t}const r=s.getColumn().getColId(),n=!t||t.includes(r);return n&&(e?s.expand():s.collapse(),i.push(r)),n};if(this.filterGroupComps.forEach(o),this.onGroupExpanded(),t){const e=t.filter(e=>i.indexOf(e)<0);e.length>0&&(0,s._warn)(167,{unrecognisedColIds:e})}}onGroupExpanded(){this.fireExpandedEvent()}onFilterExpanded(){this.dispatchLocalEvent({type:"filterExpanded"})}fireExpandedEvent(){let e=0,t=0;const i=s=>{if(s.isColumnGroup()){s.isExpanded()?e++:t++;for(const e of s.getChildren())e instanceof a.ToolPanelFilterGroupComp&&i(e)}};let s;this.filterGroupComps.forEach(i),s=e>0&&t>0?r.EXPAND_STATE.INDETERMINATE:t>0?r.EXPAND_STATE.COLLAPSED:r.EXPAND_STATE.EXPANDED,this.dispatchLocalEvent({type:"groupExpanded",state:s})}performFilterSearch(e){this.searchFilterText=(0,s._exists)(e)?e.toLowerCase():null,this.searchFilters(this.searchFilterText)}searchFilters(e){const t=t=>!(0,s._exists)(e)||-1!==t.toLowerCase().indexOf(e),i=(e,s)=>{if(!(e instanceof a.ToolPanelFilterGroupComp))return t(e.getColumnFilterName()||"");const o=e.getChildren(),r=t(e.getFilterGroupName()),n=s||r;if(n){e.hideGroup(!1);for(let t=0;t{const r=i(t,s);e.hideGroupItem(!r,o),r&&(l=!0)}),e.hideGroup(!l),l};let o,r;this.filterGroupComps.forEach((e,t)=>{i(e,!1);const s=e.getGui()?.classList.contains("ag-hidden");void 0===o?s||(o=t,r=t):s||r===t||(r=t)}),this.setFirstAndLastVisible(o,r),this.refreshAriaLabel()}setFirstAndLastVisible(e,t){this.filterGroupComps.forEach((i,s)=>{i.removeCss("ag-first-group-visible"),i.removeCss("ag-last-group-visible"),s===e&&i.addCss("ag-first-group-visible"),s===t&&i.addCss("ag-last-group-visible")})}onPanelHidden(){for(const e of this.filterGroupComps)e.onPanelHidden()}getExpandedFiltersAndGroups(){const e=[],t=new Set,i=s=>{if(s instanceof a.ToolPanelFilterGroupComp){for(const e of s.getChildren())i(e);const o=s.getFilterGroupId();s.isExpanded()&&!t.has(o)&&e.push(o)}else s.isExpanded()&&t.add(s.getColumn().getColId())};return this.filterGroupComps.forEach(i),{expandedGroupIds:e,expandedColIds:Array.from(t)}}destroyFilters(){this.filterGroupComps=this.destroyBeans(this.filterGroupComps),(0,s._clearElement)(this.getGui())}destroy(){this.destroyFilters(),super.destroy()}}t.AgFiltersToolPanelList=l,t.AgFiltersToolPanelListSelector={selector:"AG-FILTERS-TOOL-PANEL-LIST",component:l}},50662:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.filtersToolPanelCSS=void 0,t.filtersToolPanelCSS=".ag-filter-toolpanel{flex:1 1 0px;min-width:0}.ag-filter-toolpanel-header,.ag-filter-toolpanel-search{align-items:center;color:var(--ag-header-text-color);display:flex;font-weight:var(--ag-header-font-weight);padding:0 var(--ag-spacing);>:where(.ag-filter-icon),>:where(.ag-filter-toolpanel-expand),>:where(.ag-filter-toolpanel-search-input),>:where(.ag-header-cell-text){align-items:center;display:flex}}.ag-filter-toolpanel-header{padding-bottom:var(--ag-spacing);padding-top:var(--ag-spacing);position:relative;&:focus-visible{border-radius:var(--ag-border-radius);box-shadow:inset var(--ag-focus-shadow)}}:where(.ag-ltr) .ag-filter-toolpanel-group-instance-header-icon,:where(.ag-ltr) .ag-filter-toolpanel-instance-header-icon{margin-left:var(--ag-spacing)}:where(.ag-rtl) .ag-filter-toolpanel-group-instance-header-icon,:where(.ag-rtl) .ag-filter-toolpanel-instance-header-icon{margin-right:var(--ag-spacing)}.ag-filter-toolpanel-search{min-height:var(--ag-header-height);padding-bottom:var(--ag-spacing);padding-top:var(--ag-widget-container-vertical-padding)}:where(.ag-filter-toolpanel-group:not(.ag-has-filter)>.ag-group-title-bar) .ag-filter-toolpanel-group-instance-header-icon{display:none}.ag-filter-toolpanel-search-input{flex-grow:1;height:calc(var(--ag-spacing)*4)}:where(.ag-ltr) .ag-filter-toolpanel-group-title-bar-icon{margin-right:var(--ag-spacing)}:where(.ag-rtl) .ag-filter-toolpanel-group-title-bar-icon{margin-left:var(--ag-spacing)}.ag-filter-toolpanel-expand{cursor:pointer}:where(.ag-ltr) .ag-filter-toolpanel-expand{margin-right:var(--ag-spacing)}:where(.ag-rtl) .ag-filter-toolpanel-expand{margin-left:var(--ag-spacing)}:where(.ag-ltr) .ag-filter-toolpanel-group-title-bar,:where(.ag-ltr) .ag-filter-toolpanel-instance-header{padding-left:calc(var(--ag-spacing) + var(--ag-filter-tool-panel-group-indent)*var(--ag-indentation-level))}:where(.ag-rtl) .ag-filter-toolpanel-group-title-bar,:where(.ag-rtl) .ag-filter-toolpanel-instance-header{padding-right:calc(var(--ag-spacing) + var(--ag-filter-tool-panel-group-indent)*var(--ag-indentation-level))}:where(.ag-ltr) .ag-filter-toolpanel-instance-body{margin-left:var(--ag-filter-tool-panel-group-indent)}:where(.ag-rtl) .ag-filter-toolpanel-instance-body{margin-right:var(--ag-filter-tool-panel-group-indent)}.ag-filter-toolpanel-instance-filter{background-color:var(--ag-chrome-background-color)}.ag-filter-toolpanel-group-level-0{border-top:none}"},50983:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.FiltersToolPanel=void 0;const s=i(76624),o=i(8046),r=i(77291),n=i(50662),a={tag:"div",cls:"ag-filter-toolpanel",children:[{tag:"ag-filters-tool-panel-header",ref:"filtersToolPanelHeaderPanel"},{tag:"ag-filters-tool-panel-list",ref:"filtersToolPanelListPanel"}]};class l extends s.Component{constructor(){super(a,[o.AgFiltersToolPanelHeaderSelector,r.AgFiltersToolPanelListSelector]),this.filtersToolPanelHeaderPanel=s.RefPlaceholder,this.filtersToolPanelListPanel=s.RefPlaceholder,this.initialised=!1,this.listenerDestroyFuncs=[],this.registerCSS(n.filtersToolPanelCSS)}init(e){if(this.initialised){for(const e of this.listenerDestroyFuncs)e();this.listenerDestroyFuncs=[]}this.initialised=!0;const t={suppressExpandAll:!1,suppressFilterSearch:!1,suppressSyncLayoutWithGrid:!1,...e};this.params=t;const{filtersToolPanelHeaderPanel:i,filtersToolPanelListPanel:s}=this;i.init(t),s.init(t);const{suppressExpandAll:o,suppressFilterSearch:r}=t;o&&r&&i.setDisplayed(!1),this.listenerDestroyFuncs.push(...this.addManagedListeners(i,{expandAll:()=>s.expandFilterGroups(!0),collapseAll:()=>s.expandFilterGroups(!1),searchChanged:e=>s.performFilterSearch(e.searchText)}),...this.addManagedListeners(s,{filterExpanded:t.onStateUpdated,groupExpanded:e=>{i.setExpandState(e.state),t.onStateUpdated()}}))}setVisible(e){super.setDisplayed(e),e&&!this.initialised&&this.init(this.params)}setFilterLayout(e){this.filtersToolPanelListPanel.setFiltersLayout(e)}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()}}t.FiltersToolPanel=l},2515:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.NewFiltersToolPanelModule=t.FiltersToolPanelModule=void 0;const s=i(76624),o=i(39206),r=i(26358),n=i(19586),a=i(50983),l=i(33014),d=i(18764),c=i(68592);t.FiltersToolPanelModule={moduleName:"FiltersToolPanel",version:n.VERSION,userComponents:{agFiltersToolPanel:a.FiltersToolPanel},icons:{filtersToolPanel:"filter"},dependsOn:[r.SideBarModule,o.EnterpriseCoreModule,s._ColumnFilterModule]},t.NewFiltersToolPanelModule={moduleName:"NewFiltersToolPanel",version:n.VERSION,userComponents:{agNewFiltersToolPanel:c.WrapperToolPanel},beans:[l.FilterPanelService,d.SelectableFilterService],icons:{filterAdd:"filter-add",filtersToolPanel:"filter",richSelectOpen:"small-down",richSelectRemove:"cancel",richSelectLoading:"loading",filterCardExpand:"chevron-down",filterCardCollapse:"chevron-up",filterCardEditing:"edit"},dependsOn:[r.SideBarModule,o.EnterpriseCoreModule,s._ColumnFilterModule]}},31679:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.AddFilterComp=void 0;const s=i(76624),o=i(62005),r=i(30976),n={tag:"div",cls:"ag-filter-card ag-filter-card-add"};class a extends s.Component{constructor(e){super(n),this.options=new Map,this.setOptions(e)}postConstruct(){this.showButton()}refresh(e){this.setOptions(e);const{eSelect:t,options:i}=this;t&&t.setValueList({valueList:Array.from(i.keys()),refresh:!0})}showButton(){(0,s._clearElement)(this.getGui()),this.destroySelect();const e=(0,s._createElement)({tag:"button",cls:"ag-button ag-standard-button ag-filter-add-button",children:[{tag:"span",children:[()=>(0,s._createIconNoSpan)("filterAdd",this.beans)]},{tag:"span",cls:"ag-filter-add-button-label",children:(0,r.translateForFilterPanel)(this,"addFilterCard")}]});this.activateTabIndex([e]);const t=this.showSelect.bind(this);e.addEventListener("click",t),this.removeButton=()=>{e.removeEventListener("click",t)},this.appendChild(e),e.focus()}showSelect(){(0,s._clearElement)(this.getGui()),this.destroyButton();const e="ariaLabelAddFilterField",t={className:"ag-filter-add-select",pickerType:"virtual-list",pickerAriaLabelKey:e,pickerAriaLabelValue:(0,r.translateForFilterPanel)(this,e),placeholder:(0,r.translateForFilterPanel)(this,"addFilterPlaceholder"),value:"",valueList:Array.from(this.options.keys()),searchType:"matchAny",allowTyping:!0,filterList:!0,highlightMatch:!0,valueFormatter:e=>this.options.get(e)},i=this.createManagedBean(new o.AgRichSelect(t));this.eSelect=i,this.appendChild(i.getGui()),i.showPicker(),i.getFocusableElement().focus(),i.addManagedListeners(i,{fieldPickerValueSelected:({value:e})=>this.dispatchLocalEvent({type:"filterSelected",id:e}),pickerHidden:()=>{this.showButton()}})}setOptions(e){const t=this.options;t.clear();for(const{id:i,name:s}of e)t.set(i,s)}destroySelect(){this.eSelect=this.destroyBean(this.eSelect)}destroyButton(){this.removeButton=this.removeButton?.()}destroy(){this.destroySelect(),this.destroyButton(),super.destroy()}}t.AddFilterComp=a},9898:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.FilterCardComp=void 0;const s=i(76624),o=i(80557),r=i(30976),n=i(20160),a={tag:"div",cls:"ag-filter-card",children:[{tag:"div",cls:"ag-filter-card-header",role:"presentation",children:[{tag:"div",cls:"ag-filter-card-heading",role:"heading",attrs:{"aria-level":"2"},children:[{tag:"button",ref:"eExpand",cls:"ag-button ag-filter-card-expand",children:[{tag:"span",ref:"eTitle",cls:"ag-filter-card-title"},{tag:"span",ref:"eEditing",cls:"ag-filter-card-editing-icon"},{tag:"span",ref:"eExpandIcon",cls:"ag-filter-card-expand-icon"}]}]},{tag:"button",ref:"eDelete",cls:"ag-button ag-filter-card-delete",children:[{tag:"span",ref:"eDeleteIcon",cls:"ag-filter-card-delete-icon"}]}]}]};class l extends s.Component{constructor(e){super(a),this.id=e,this.eTitle=s.RefPlaceholder,this.eExpand=s.RefPlaceholder,this.eDelete=s.RefPlaceholder,this.eExpandIcon=s.RefPlaceholder,this.eDeleteIcon=s.RefPlaceholder,this.eEditing=s.RefPlaceholder}postConstruct(){const{beans:e,eDelete:t,eExpand:i,eDeleteIcon:o,eEditing:n,id:a}=this,l=e.filterPanelSvc;(0,s._setAriaLabel)(t,(0,r.translateForFilterPanel)(this,"ariaLabelFilterCardDelete")),o.appendChild((0,s._createIcon)("close",e,null)),this.activateTabIndex([i,t]),this.addManagedElementListeners(i,{click:()=>l.expand(a,!this.state?.expanded)}),this.addManagedElementListeners(t,{click:()=>l.remove(a)}),this.addManagedEventListeners({filterOpened:this.onFilterOpened.bind(this)}),n.appendChild((0,s._createIcon)("filterCardEditing",e,null))}refresh(e){const{eExpand:t,eEditing:i,state:a,beans:l}=this;this.state=e;const{name:d,expanded:c,isEditing:u}=e;this.eTitle.textContent=d,(0,s._setDisplayed)(i,u),a&&c===a.expanded||this.toggleExpand(e);let h=c?null:`${d} ${e.summary}`;u&&(h=`${h??d}. ${(0,r.translateForFilterPanel)(this,"ariaLabelFilterCardHasEdits")}`),(0,s._setAriaLabel)(t,h);const g=e=>{if(e)return(0,s._removeFromParent)(e.getGui()),this.destroyBean(e)},p=(t,i,s)=>(t||(t=this.createBean(new i),s?.(t),this.appendChild(t.getGui())),t.refresh(e),t);if(e.expanded){this.summaryComp=g(this.summaryComp);const e=p(this.detailComp,o.FilterDetailComp,e=>e.addManagedListeners(e,{filterTypeChanged:({filterDef:e})=>l.filterPanelSvc.updateType(this.id,e)}));this.detailComp=e;const i=`ag-${this.getCompId()}-filter`;e.getGui().id=i,(0,s._setAriaControls)(t,i)}else this.detailComp=g(this.detailComp),this.summaryComp=p(this.summaryComp,n.FilterSummaryComp),(0,s._setAriaControls)(t,null)}toggleExpand(e){const t=!!e.expanded,{eExpandIcon:i,eExpand:o,beans:r}=this;(0,s._clearElement)(i),i.appendChild((0,s._createIcon)(t?"filterCardCollapse":"filterCardExpand",r,null)),(0,s._setAriaExpanded)(o,t)}onFilterOpened(e){const{state:t,beans:i,id:s}=this;"COLUMN_MENU"===e.source&&e.column===t?.column&&t?.expanded&&i.filterPanelSvc.expand(s,!1)}destroy(){this.detailComp=this.destroyBean(this.detailComp),this.summaryComp=this.destroyBean(this.summaryComp),this.state=void 0,super.destroy()}}t.FilterCardComp=l},80557:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.FilterDetailComp=void 0;const s=i(76624),o={tag:"div",cls:"ag-filter-card-body",children:[{tag:"ag-select",cls:"ag-filter-type-select",ref:"eFilterType"}]};class r extends s.Component{constructor(){super(...arguments),this.eFilterType=s.RefPlaceholder}postConstruct(){const e={onValueChange:e=>this.dispatchLocalEvent({type:"filterTypeChanged",filterDef:e})};this.setTemplate(o,[s.AgSelectSelector],{eFilterType:e}),this.eFilterType.setDisplayed(!1)}refresh(e){const t=this.state;this.state=e;const{activeFilterDef:i,filterDefs:o,detail:r,afterGuiAttached:n,afterGuiDetached:a}=e,{activeFilterDef:l,filterDefs:d,detail:c}=t??{},u=this.eFilterType;if(o!==d){u.clearOptions();const e=o?.map(e=>({value:e,text:e.name}));e&&u.clearOptions().addOptions(e).setValue(i,!0),u.setDisplayed(!!e)}else i!==l&&u.setValue(i,!0);r!==c&&(c&&((0,s._removeFromParent)(c),a()),this.appendChild(r),n({container:"newFiltersToolPanel",suppressFocus:!0}))}}t.FilterDetailComp=r},33549:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.FilterPanel=void 0;const s=i(76624),o=i(31679),r=i(9898),n=i(30976);const a={tag:"div",cls:"ag-filter-panel",children:[{tag:"div",cls:"ag-filter-panel-container",ref:"eContainer"}]};class l extends s.Component{constructor(){super(a),this.eContainer=s.RefPlaceholder,this.filters=new Map}refresh(e){if(function(e){return!!e?.action}(e))return void this.refreshActions();if(function(e){return!!e?.id}(e))return void this.filters.get(e.id)?.refresh(e.state);const{eContainer:t,filters:i,beans:a}=this,l=a.filterPanelSvc,d=l.getIds(),c=new Map,u=!(0,s._isNothingFocused)(a),h=u?(0,s._getActiveDomElement)(a):void 0,g=u&&t.contains(h),p=[],m=[];for(const e of d){const t=i.get(e)??this.createBean(new r.FilterCardComp(e));t.refresh(l.getState(e)),c.set(e,t),m.push(t.getGui())}this.filters=c;const f=[];i.forEach((e,t)=>{p.push(e.getGui()),c.has(t)||f.push(e)});let C=this.addFilterComp;C&&p.push(C.getGui());const v=l.getAvailable();v.length?(C||(C=this.createBean(new o.AddFilterComp(v)),C.addManagedListeners(C,{filterSelected:({id:e})=>l.add(e)})),C.refresh(v),m.push(C.getGui())):C=this.destroyBean(C),this.addFilterComp=C,(0,n.compareAndUpdateListsInDom)(t,m,p);for(const e of f)this.destroyBean(e);const w=e?.activeId,b=w&&c.get(w)?.getGui();b?(0,s._focusInto)(b):g&&(0,s._isNothingFocused)(a)&&(0,s._focusInto)(m[m.length-1]??t),this.refreshActions()}refreshActions(){const e=this.beans.filterPanelSvc,{actions:t,canApply:i}=e.getActions()??{};let o=this.buttonComp;if(t?.length){const r=t.map(e=>({type:e,label:(0,s._translateForFilter)(this,`${e}Filter`)}));if(!o){o=this.createBean(new s.FilterButtonComp({className:"ag-filter-panel-buttons"})),this.getGui().appendChild(o.getGui());const t={};for(const i of["apply","clear","reset","cancel"])t[i]=()=>e.doAction(i);o.addManagedListeners(o,t)}o.updateButtons(r),o.updateValidity(!1!==i)}else o&&((0,s._removeFromParent)(o.getGui()),o=this.destroyBean(o));this.buttonComp=o}destroy(){this.beans.filterPanelSvc?.clear?.(),this.addFilterComp=this.destroyBean(this.addFilterComp),this.buttonComp=this.destroyBean(this.buttonComp);const e=this.filters;e.forEach(e=>this.destroyBean(e)),e.clear(),super.destroy()}}t.FilterPanel=l},33014:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.FilterPanelService=void 0;const s=i(76624);class o extends s.BeanStub{constructor(){super(...arguments),this.beanName="filterPanelSvc",this.states=new Map,this.orderedStates=[],this.initialStateApplied=!1,this.columnsLoaded=!1,this.isActive=!1}postConstruct(){if(!this.gos.get("enableFilterHandlers"))return;const e=this.updateFilterStates.bind(this),t=()=>this.dispatchStatesUpdates(void 0,!0),i=this.onFilterDestroyed.bind(this);this.addManagedEventListeners({newColumnsLoaded:()=>{this.columnsLoaded=!0,this.initialStateApplied||this.applyState(),e()},dataTypesInferred:e,filterChanged:e,filterDestroyed:i,filterHandlerDestroyed:i,filterOpened:t,filterClosed:t});const s=({column:e})=>{this.states.get(e.getColId())?.refresh?.(),t()};this.addManagedListeners(this.beans.colFilter,{filterStateChanged:s,filterModelAsStringChanged:s})}updateParams(e,t){this.params=e;let i=!1;if(t&&(this.currState=t,this.columnsLoaded)){const e=new Set(t.filters?.map(e=>e.colId));for(const t of this.getIds())e.has(t)||this.remove(t);this.clear(),this.applyState(),this.updateFilterStates(),i=!0}i||this.dispatchStatesUpdates(),this.beans.colFilter?.setGlobalButtons(!!e.buttons?.length)}getIds(){return Array.from(this.states.keys())}getAvailable(){const e=this.beans,t=[];for(const i of e.colModel.getColDefCols()??[]){const s=i.getColId();!i.isFilterAllowed()||i.colDef.suppressFiltersToolPanel||this.states.get(s)||t.push({id:s,name:r(e,i)})}return t}add(e){this.createFilter(e,!0),this.dispatchStatesUpdates(e)}remove(e){const{states:t,orderedStates:i,beans:{colFilter:s,selectableFilter:o}}=this,r=t.get(e);if(!r)return;r.destroy?.();const n=r.state.column;t.delete(e),o?.clearActive(e),s?.destroyFilter(n),this.eventSvc.dispatchEvent({type:"filterSwitched",column:n});const a=i.indexOf(e);i.splice(a,1);const l=i[a];this.dispatchStatesUpdates(l)}getState(e){return this.states.get(e)?.state}updateFilterState(e,t,i,s){const o=this.getState(e);o&&(o[t]=i,s||this.dispatchLocalEvent({type:"filterPanelStateChanged",id:e,state:o}))}expand(e,t){const i=this.states.get(e);if(!i)return;i.destroy?.();const{handler:s,state:{column:o}}=i,r=this.createFilterState(o,s,t);this.states.set(e,r),this.dispatchLocalEvent({type:"filterPanelStateChanged",id:e,state:r.state})}updateType(e,t){const i=this.states.get(e);if(!i)return;const s=i.state;if(!1===s.expanded)return;const o=s.filterDefs;if(!o)return;const{colFilter:r,selectableFilter:n}=this.beans;n?.setActive(e,o,t),r.filterParamsChanged(e,"columnFilter");const a=s.column;this.eventSvc.dispatchEvent({type:"filterSwitched",column:a});const l=this.states.get(e);if(!l)return;const d=l.state;this.dispatchLocalEvent({type:"filterPanelStateChanged",id:e,state:d})}getActions(){const e=this.params?.buttons;if(!e?.length)return;return{actions:e,canApply:!!this.beans.colFilter?.canApplyAll()}}doAction(e){this.beans.colFilter?.updateAllModels(e)}getGridState(){const e=[];return this.states.forEach((t,i)=>{e.push({colId:i,expanded:t.state.expanded})}),{filters:e}}createFilter(e,t){const i=this.createFilterStateWrapper(e,t);i&&(this.states.set(e,i),this.orderedStates.push(e))}createFilterStateWrapper(e,t){const{colModel:i,colFilter:s}=this.beans,o=i.getColDefCol(e);if(o&&!o.colDef.suppressFiltersToolPanel){const e=s.getHandler(o,!0);if(e)return this.createFilterState(o,e,t)}}updateFilterStates(){if(!this.params)return;const e=this.beans.colFilter.getModel(),t=new Set;for(const i of Object.keys(e)){const e=this.states.get(i);e?e.refresh?.():this.createFilter(i),t.add(i)}this.states.forEach((e,i)=>{t.has(i)||e.refresh?.()}),this.dispatchStatesUpdates()}createFilterState(e,t,i){const o=this.beans,{colFilter:n,selectableFilter:a}=o,l=r(o,e),d=e.getColId(),c=()=>!!this.params?.buttons&&n.hasUnappliedModel(d),u=c();if(i){const o=e.colDef,{filterDefs:r,activeFilterDef:n}=a?.getDefs(e,o)??{},h=this.createBean(new s.FilterComp(e,"TOOLBAR",!0));return{state:{column:e,name:l,isEditing:u,expanded:i,detail:h.getGui(),activeFilterDef:n,filterDefs:r,afterGuiAttached:h.afterGuiAttached.bind(h),afterGuiDetached:h.afterGuiDetached.bind(h)},handler:t,refresh:()=>{this.updateFilterState(d,"isEditing",c())},destroy:()=>this.destroyBean(h)}}{const i=e.getColId(),s=()=>t.getModelAsString?.(n.getStateForColumn(i).model,"filterToolPanel")??"";return{state:{column:e,name:l,isEditing:u,expanded:!1,summary:s()},handler:t,refresh:()=>{this.updateFilterState(i,"isEditing",c(),!0),this.updateFilterState(i,"summary",s())}}}}onFilterDestroyed({column:e,source:t}){const{colFilter:i,filterManager:s}=this.beans;if(!i?.isAlive()||!s?.isFilterAllowed(e))return;const o=this.states,r=e.getColId(),n=o.get(r);if(n){const e=this.createFilterStateWrapper(r,n.state.expanded);e?(n.destroy?.(),o.set(r,e)):this.remove(r),"api"===t&&this.dispatchStatesUpdates()}}dispatchStatesUpdates(e,t){this.dispatchLocalEvent({type:"filterPanelStatesChanged",activeId:e,action:t})}applyState(){if(this.params&&this.columnsLoaded){this.initialStateApplied=!0;for(const{colId:e,expanded:t}of this.currState?.filters??[])this.createFilter(e,t)}}destroy(){this.clear(),this.params=void 0,this.currState=void 0,super.destroy()}clear(){const{states:e,orderedStates:t}=this;e.forEach(e=>e.destroy?.()),e.clear(),t.length=0}}function r(e,t){return e.colNames.getDisplayNameForColumn(t,"filterToolPanel")??t.getColId()}t.FilterPanelService=o},30976:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.compareAndUpdateListsInDom=t.translateForFilterPanel=void 0;const s=i(76624),o={addFilterCard:"Add Filter",ariaLabelAddFilterField:"Add Filter Field",ariaLabelFilterCardDelete:"Delete Filter",ariaLabelFilterCardHasEdits:"Has Edits",agTextColumnFilterDisplayName:"Simple Filter",agNumberColumnFilterDisplayName:"Simple Filter",agDateColumnFilterDisplayName:"Simple Filter",agSetColumnFilterDisplayName:"Selection Filter",agMultiColumnFilterDisplayName:"Combo Filter",addFilterPlaceholder:"Search columns..."};t.translateForFilterPanel=function(e,t){return(0,s._translate)(e,o,t)},t.compareAndUpdateListsInDom=function(e,t,i){let o=0;for(let e=0;e{const{filter:i,filterParams:n,name:a,filterValueGetter:d=c.filterValueGetter}=t,p=m?{...m,...n}:n;let f,C;if(h&&g&&(f="agMultiColumnFilter"===i?r.multiFilter?.getParamsForDataType(p,d,h,g):(0,s._getFilterParamsForDataType)(i,p,d,h,g,r,this.getLocaleTextFunc())),!a){let t=i;"boolean"==typeof i&&(t=l?.getDefaultFilterFromDataType(()=>u)),"string"==typeof t?C=(0,o.translateForFilterPanel)(this,`${t}DisplayName`):((0,s._warn)(280,{colId:e.getColId()}),C="")}return m||f||C?{...t,filterParams:p,name:C??a,...f}:t});let v=i??this.selectedFilters.get(e.getColId())??f??(!p&&(0,s._isSetFilterByDefault)(n)?1:0);v>=C.length&&(v=0);return{filterDefs:C,activeFilterDef:C[v]}}setActive(e,t,i,s){const o=t.indexOf(i);if(o<0)return;const{selectedFilters:r,valueGetters:n}=this;r.set(e,o);const a=i.filterValueGetter;a?n.set(e,a):n.delete(e),s||this.onChange()}clearActive(e){const{selectedFilters:t,valueGetters:i}=this;t.delete(e),i.delete(e),this.onChange()}getState(){return Object.fromEntries(this.selectedFilters)}setState(e){this.clearAll();const t=this.beans.colModel;for(const i of Object.keys(e)){const s=t.getColDefCol(i);if(s){const t=this.getDefs(s,s.colDef,e[i]);t&&this.setActive(i,t.filterDefs,t.activeFilterDef,!0)}}}destroy(){this.clearAll(),super.destroy()}clearAll(){const{selectedFilters:e,valueGetters:t}=this;e.clear(),t.clear()}onChange(){this.dispatchLocalEvent({type:"selectedFilterChanged"})}getDefaultFilters(e){const t=this.beans,{gos:i,dataTypeSvc:o}=t,r=i.isModuleRegistered("MultiFilter"),n=o?.getBaseDataType(e);return[{filter:(0,s._getDefaultSimpleFilter)(n,!1)},{filter:"agSetColumnFilter"},...r?[{filter:"agMultiColumnFilter"}]:[]]}}t.SelectableFilterService=r},68592:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.WrapperToolPanel=void 0;const s=i(76624),o=i(33549),r=i(28031);class n extends s.Component{constructor(){super(),this.registerCSS(r.newFiltersToolPanelCSS)}init(e){if(!this.gos.get("enableFilterHandlers"))return void(0,s._warn)(282);const t=this.beans.filterPanelSvc;t.isActive=!0,this.addDestroyFunc(()=>{t.isActive=!1}),this.updateParams(e,e.initialState);const i=this.createManagedBean(new o.FilterPanel);this.filterPanel=i;const r=t=>{i.refresh(t),e.onStateUpdated()};r(),this.addManagedListeners(t,{filterPanelStatesChanged:r,filterPanelStateChanged:r})}getGui(){return this.filterPanel?.getGui()}refresh(e){return this.updateParams(e,e.initialState),!0}updateParams(e,t){this.beans.filterPanelSvc?.updateParams(e,t)}getState(){return this.beans.filterPanelSvc?.getGridState()??{}}}t.WrapperToolPanel=n},43905:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ToolPanelFilterComp=void 0;const s=i(76624),o={tag:"div",cls:"ag-filter-toolpanel-instance",children:[{tag:"div",ref:"eFilterToolPanelHeader",cls:"ag-filter-toolpanel-header ag-filter-toolpanel-instance-header",role:"button",attrs:{"aria-expanded":"false"},children:[{tag:"div",ref:"eExpand",cls:"ag-filter-toolpanel-expand"},{tag:"span",ref:"eFilterName",cls:"ag-header-cell-text"},{tag:"span",ref:"eFilterIcon",cls:"ag-header-icon ag-filter-icon ag-filter-toolpanel-instance-header-icon"}]},{tag:"div",ref:"agFilterToolPanelBody",cls:"ag-filter-toolpanel-instance-body ag-filter"}]};class r extends s.Component{constructor(e,t){super(o),this.hideHeader=e,this.expandedCallback=t,this.eFilterToolPanelHeader=s.RefPlaceholder,this.eFilterName=s.RefPlaceholder,this.agFilterToolPanelBody=s.RefPlaceholder,this.eFilterIcon=s.RefPlaceholder,this.eExpand=s.RefPlaceholder,this.expanded=!1}postConstruct(){const{beans:e,eExpand:t,eFilterIcon:i}=this,o=(0,s._createIconNoSpan)("accordionOpen",e);this.eExpandChecked=o;const r=(0,s._createIconNoSpan)("accordionClosed",e);this.eExpandUnchecked=r,t.appendChild(o),t.appendChild(r);const n=this.getLocaleTextFunc();(0,s._setAriaLabel)(i,n("ariaFilterActive","Filter Active")),(0,s._setAriaRole)(i,"img")}setColumn(e){this.column=e;const{beans:t,eFilterToolPanelHeader:i,eFilterIcon:o,eExpandChecked:r,hideHeader:n}=this;this.eFilterName.innerText=t.colNames.getDisplayNameForColumn(e,"filterToolPanel",!1)||"",this.addManagedListeners(i,{click:this.toggleExpanded.bind(this),keydown:this.onKeyDown.bind(this)}),this.addManagedEventListeners({filterOpened:this.onFilterOpened.bind(this)}),this.addInIcon("filterActive",o,e),(0,s._setDisplayed)(o,this.isFilterActive()),(0,s._setDisplayed)(r,!1),n?((0,s._setDisplayed)(i,!1),i.removeAttribute("tabindex")):i.setAttribute("tabindex","0"),this.addManagedListeners(e,{filterChanged:this.onFilterChanged.bind(this)})}onKeyDown(e){const{key:t}=e,{ENTER:i,SPACE:o,LEFT:r,RIGHT:n}=s.KeyCode;t!==i&&t!==o&&t!==r&&t!==n||(e.preventDefault(),t===i||t===o?this.toggleExpanded():t===s.KeyCode.LEFT?this.collapse():this.expand())}getColumn(){return this.column}getColumnFilterName(){return this.beans.colNames.getDisplayNameForColumn(this.column,"filterToolPanel",!1)}addCssClassToTitleBar(e){this.eFilterToolPanelHeader.classList.add(e)}addInIcon(e,t,i){if(null==t)return;const o=(0,s._createIconNoSpan)(e,this.beans,i);t.appendChild(o)}isFilterActive(){return!!this.beans.colFilter?.isFilterActive(this.column)}onFilterChanged(){(0,s._setDisplayed)(this.eFilterIcon,this.isFilterActive()),this.dispatchLocalEvent({type:"filterChanged"})}toggleExpanded(){this.expanded?this.collapse():this.expand()}expand(){this.expanded||(this.expanded=!0,(0,s._setAriaExpanded)(this.eFilterToolPanelHeader,!0),(0,s._setDisplayed)(this.eExpandChecked,!0),(0,s._setDisplayed)(this.eExpandUnchecked,!1),this.addFilterElement(),this.expandedCallback())}addFilterElement(e){const t=(0,s._createElement)({tag:"div",cls:"ag-filter-toolpanel-instance-filter"}),i=this.createManagedBean(new s.FilterComp(this.column,"TOOLBAR"));this.filterComp=i,i.hasFilter()&&i.getFilter()?.then(s=>{this.underlyingFilter=s,s&&(t.appendChild(i.getGui()),this.agFilterToolPanelBody.appendChild(t),i.afterGuiAttached({container:"toolPanel",suppressFocus:e}))})}collapse(){if(!this.expanded)return;this.expanded=!1,(0,s._setAriaExpanded)(this.eFilterToolPanelHeader,!1),this.removeFilterElement(),(0,s._setDisplayed)(this.eExpandChecked,!1),(0,s._setDisplayed)(this.eExpandUnchecked,!0);const e=this.filterComp;e?.afterGuiDetached(),this.destroyBean(e),this.expandedCallback()}removeFilterElement(){(0,s._clearElement)(this.agFilterToolPanelBody)}isExpanded(){return this.expanded}onPanelHidden(){if(!this.expanded)return;const e=this.underlyingFilter;e&&e.afterGuiDetached?.()}onFilterOpened(e){"COLUMN_MENU"===e.source&&e.column===this.column&&this.expanded&&this.collapse()}}t.ToolPanelFilterComp=r},15296:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ToolPanelFilterGroupComp=void 0;const s=i(76624),o=i(61994),r=i(43905);class n extends s.Component{constructor(e,t,i,o,r){super(),this.columnGroup=e,this.childFilterComps=t,this.expandedCallback=i,this.depth=o,this.showingColumn=r,this.filterGroupComp=s.RefPlaceholder}postConstruct(){this.setTemplate({tag:"div",cls:"ag-filter-toolpanel-group-wrapper",children:[{tag:"ag-group-component",ref:"filterGroupComp"}]},[o.AgGroupComponentSelector],{filterGroupComp:{cssIdentifier:"filter-toolpanel",direction:"vertical"}}),this.setGroupTitle();const{filterGroupComp:e,depth:t,childFilterComps:i,gos:r}=this;e.setAlignItems("stretch"),e.addCss(`ag-filter-toolpanel-group-level-${t}`),e.getGui().style.setProperty("--ag-indentation-level",String(t)),e.addCssClassToTitleBar(`ag-filter-toolpanel-group-level-${t}-header`);for(const s of i)e.addItem(s),s.addCssClassToTitleBar(`ag-filter-toolpanel-group-level-${t+1}-header`),s.getGui().style.setProperty("--ag-indentation-level",String(t+1));const n=this.showingColumn?this.columnGroup:void 0;this.tooltipFeature=this.createOptionalManagedBean(this.beans.registry.createDynamicBean("tooltipFeature",!1,{getGui:()=>this.getGui(),getLocation:()=>"filterToolPanelColumnGroup",shouldDisplayTooltip:(0,s._getShouldDisplayTooltip)(r,()=>e.getGui().querySelector(".ag-group-title")),getAdditionalParams:()=>({colDef:n?.getColDef(),column:n})})),this.refreshFilterClass(),this.addExpandCollapseListeners(),this.addFilterChangedListeners(),this.setupTooltip(),this.addInIcon("filterActive")}setupTooltip(){if(!this.showingColumn)return;const e=()=>{this.tooltipFeature?.setTooltipAndRefresh(this.columnGroup.getColDef().headerTooltip)};e(),this.addManagedEventListeners({newColumnsLoaded:e})}addCssClassToTitleBar(e){this.filterGroupComp.addCssClassToTitleBar(e)}onPanelHidden(){for(const e of this.childFilterComps)e.onPanelHidden()}isColumnGroup(){return(0,s.isProvidedColumnGroup)(this.columnGroup)}isExpanded(){return this.filterGroupComp.isExpanded()}getChildren(){return this.childFilterComps}getFilterGroupName(){return this.filterGroupName??""}getFilterGroupId(){return this.columnGroup.getId()}hideGroupItem(e,t){this.filterGroupComp.hideItem(e,t)}hideGroup(e){this.setDisplayed(!e)}addInIcon(e){const t=(0,s._createIconNoSpan)(e,this.beans);if(t){t.classList.add("ag-filter-toolpanel-group-instance-header-icon");const e=this.getLocaleTextFunc();(0,s._setAriaLabel)(t,e("ariaFilterActive","Filter Active")),(0,s._setAriaRole)(t,"img")}this.filterGroupComp.addTitleBarWidget(t)}forEachToolPanelFilterChild(e){for(const t of this.childFilterComps)t instanceof r.ToolPanelFilterComp&&e(t)}addExpandCollapseListeners(){const e=this.isColumnGroup()?()=>this.expandedCallback():()=>this.forEachToolPanelFilterChild(e=>e.expand()),t=this.isColumnGroup()?()=>this.expandedCallback():()=>this.forEachToolPanelFilterChild(e=>e.collapse());this.addManagedListeners(this.filterGroupComp,{expanded:e,collapsed:t})}getColumns(){return(0,s.isProvidedColumnGroup)(this.columnGroup)?this.columnGroup.getLeafColumns():[this.columnGroup]}addFilterChangedListeners(){for(const e of this.getColumns())this.addManagedListeners(e,{filterChanged:()=>this.refreshFilterClass()});(0,s.isProvidedColumnGroup)(this.columnGroup)||this.addManagedEventListeners({filterOpened:this.onFilterOpened.bind(this)})}refreshFilterClass(){const e=this.getColumns();this.filterGroupComp.toggleCss("ag-has-filter",e.some(e=>e.isFilterActive()))}onFilterOpened(e){"COLUMN_MENU"===e.source&&e.column===this.columnGroup&&this.isExpanded()&&this.collapse()}expand(){this.filterGroupComp.toggleGroupExpand(!0)}collapse(){this.filterGroupComp.toggleGroupExpand(!1)}setGroupTitle(){const e=this.columnGroup,t=(0,s.isProvidedColumnGroup)(e)?this.getColumnGroupName(e):this.getColumnName(e);this.filterGroupName=t,this.filterGroupComp.setTitle(t||"")}getColumnGroupName(e){return this.beans.colNames.getDisplayNameForProvidedColumnGroup(null,e,"filterToolPanel")}getColumnName(e){return this.beans.colNames.getDisplayNameForColumn(e,"filterToolPanel",!1)}destroyFilters(){this.childFilterComps=this.destroyBeans(this.childFilterComps),(0,s._clearElement)(this.getGui())}destroy(){this.destroyFilters(),super.destroy()}}t.ToolPanelFilterGroupComp=n},60855:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.findCSS=void 0,t.findCSS=".ag-find-cell{display:block;overflow:hidden;text-overflow:ellipsis}.ag-find-match{background-color:var(--ag-find-match-background-color);color:var(--ag-find-match-color)}.ag-find-active-match{background-color:var(--ag-find-active-match-background-color);color:var(--ag-find-active-match-color)}"},20436:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.findRefresh=t.findGetParts=t.findGetNumMatches=t.findGetActiveMatch=t.findClearActive=t.findGoTo=t.findGetTotalMatches=t.findPrevious=t.findNext=void 0,t.findNext=function(e){e.findSvc?.next()},t.findPrevious=function(e){e.findSvc?.previous()},t.findGetTotalMatches=function(e){return e.findSvc?.totalMatches??0},t.findGoTo=function(e,t,i){e.findSvc?.goTo(t,i)},t.findClearActive=function(e){e.findSvc?.clearActive()},t.findGetActiveMatch=function(e){return e.findSvc?.activeMatch},t.findGetNumMatches=function(e,t){const{node:i,column:s}=t;return e.findSvc?.getNumMatches(i,s)??0},t.findGetParts=function(e,t){return e.findSvc?.getParts(t)??[]},t.findRefresh=function(e){return e.findSvc?.refresh(!0)}},85637:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.FindCellRenderer=void 0;const s=i(76624),o={tag:"span",cls:"ag-find-cell"};class r extends s.Component{constructor(){super(o)}init(e){this.refresh(e)}refresh(e){const{node:t,column:i}=e,{findSvc:o,valueSvc:r}=this.beans,{value:n,valueFormatted:a}=r.getValueForDisplay({column:i,node:t,includeValueFormatted:!0,from:"edit"}),l=a??n??"",d=this.getGui();(0,s._clearElement)(d);const c=o?.getParts({value:l,node:t,column:i??null});if(c){let e=!1;for(const{value:t,match:i,activeMatch:o}of c){const r=(0,s._toString)(t)??"";if(i){const t=(0,s._createElement)({tag:"mark",cls:"ag-find-match"});t.textContent=r,o&&(t.classList.add("ag-find-active-match"),e=!0),d.appendChild(t)}else d.appendChild(document.createTextNode(r))}d.classList.toggle("ag-find-cell-active-match",e)}else d.textContent=(0,s._toString)(l)??"",d.classList.remove("ag-find-cell-active-match");return!0}}t.FindCellRenderer=r},27546:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.FindModule=void 0;const s=i(39206),o=i(19586),r=i(60855),n=i(20436),a=i(85637),l=i(90963),d={moduleName:"FindCore",version:o.VERSION,rowModels:["clientSide"],beans:[l.FindService],userComponents:{agFindCellRenderer:a.FindCellRenderer},css:[r.findCSS]};t.FindModule={moduleName:"Find",version:o.VERSION,apiFunctions:{findGetTotalMatches:n.findGetTotalMatches,findGoTo:n.findGoTo,findNext:n.findNext,findPrevious:n.findPrevious,findGetActiveMatch:n.findGetActiveMatch,findGetNumMatches:n.findGetNumMatches,findGetParts:n.findGetParts,findClearActive:n.findClearActive,findRefresh:n.findRefresh},dependsOn:[s.EnterpriseCoreModule,d]}},90963:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.FindService=void 0;const s=i(76624),o=i(19130);function r(e){return e?.toLocaleLowerCase()}function n(e,t,i){const o=t((0,s._toString)(i));let r=0;if(o?.length){let t=-1;for(;t=o.indexOf(e,t+1),-1!=t;)r++}return r}class a extends s.BeanStub{constructor(){super(...arguments),this.beanName="findSvc",this.active=!1,this.topMatches=new Map,this.topNodes=[],this.topNumMatches=0,this.centerMatches=new Map,this.centerNodes=[],this.centerNumMatches=0,this.bottomMatches=new Map,this.bottomNodes=[],this.caseFormat=r,this.scrollOnRefresh=!1,this.totalMatches=0}postConstruct(){if(!(0,s._isClientSideRowModel)(this.gos))return;const e=this.refresh.bind(this,!1),t=this.refresh.bind(this,!0),i=(0,s._debounce)(this,()=>{this.isAlive()&&t()},0);this.refreshDebounced=i,this.addManagedPropertyListener("findSearchValue",e),this.addManagedPropertyListener("findOptions",({currentValue:t,previousValue:i})=>{(0,s._jsonEquals)(t,i)||e()}),this.addManagedPropertyListeners(["groupSuppressBlankHeader","showOpenedGroup"],t),this.addManagedEventListeners({modelUpdated:t,displayedColumnsChanged:t,pinnedRowDataChanged:t,cellValueChanged:i,rowNodeDataChanged:i,cellEditingStopped:i,cellEditValuesChanged:i,batchEditingStopped:i});const o=this.beans.rowSpanSvc;o&&this.addManagedListeners(o,{spannedCellsUpdated:i}),e()}next(){this.findAcrossContainers(!1,["top",null,"bottom"],1,1)}previous(){this.findAcrossContainers(!0,["bottom",null,"top"],this.totalMatches,-1)}goTo(e,t){if(!t&&e===this.activeMatch?.numOverall)return;const{topMatches:i,topNumMatches:s,centerMatches:o,centerNumMatches:r,bottomMatches:n}=this;e<=s?this.goToInContainer(i,e,0):e<=r?this.goToInContainer(o,e,s):this.goToInContainer(n,e,s+r)}clearActive(){this.activeMatch&&this.setActive(void 0)}isMatch(e,t){return this.active&&!!this.getMatches(e.rowPinned).get(e)?.some(([e])=>e===t)}getNumMatches(e,t){return this.getMatches(e.rowPinned).get(e)?.find(([e])=>e===t)?.[1]??0}getParts(e){const{value:t,node:i,column:o,precedingNumMatches:r}=e,n=this.findSearchValue,a=(0,s._toString)(t)??"";if((0,s._missing)(n))return[{value:a}];const l=this.caseFormat(a)??"",d=this.getActiveMatchNum(i,o)-(r??0);let c=0,u=0;const h=n.length,g=[];for(;;){const e=l.indexOf(n,c);if(-1==e)return cc&&g.push({value:a.slice(c,e)});const t=e+h;g.push({value:a.slice(e,t),match:!0,activeMatch:u===d}),c=t}}}registerDetailGrid(e,t){const i=this.gos;if(!(0,s._isClientSideRowModel)(i))return;const o=()=>i.get("findOptions")?.searchDetail,r=t=>{const i=this.centerMatches.get(e)?.[0];t!==(i?.[1]??0)&&this.refreshDebounced()};t.addEventListener("findChanged",e=>{!t.isDestroyed()&&this.isAlive()&&this.active&&o()&&r(e.totalMatches)}),t.addEventListener("gridPreDestroyed",()=>{if(!this.isAlive()||!this.active||!o())return;const t=e.parent,s=this.findSearchValue;if(!t||!s)return;const a=i.get("detailCellRendererParams")?.getFindMatches?.({node:t,data:t.data,findSearchValue:i.get("findSearchValue"),updateMatches:this.refreshDebounced,getMatchesForValue:e=>n(s,this.caseFormat,e)})??0;r(a)}),o()&&t.setGridOption("findSearchValue",i.get("findSearchValue"))}refresh(e){const t=new Set([...this.topNodes,...this.centerNodes,...this.bottomNodes]);this.topNodes=[],this.centerNodes=[],this.bottomNodes=[];const{topNodes:i,topMatches:a,centerMatches:l,centerNodes:d,bottomNodes:c,bottomMatches:u,beans:{gos:h,visibleCols:g,rowModel:p,valueSvc:m,pinnedRowModel:f,pagination:C,rowSpanSvc:v,masterDetailSvc:w,colModel:b},findSearchValue:y}=this,S=h.get("findOptions"),x=S?.caseSensitive?e=>e??void 0:r;this.caseFormat=x;const F=h.get("findSearchValue"),R=x(F?.trim());this.findSearchValue=R,a.clear(),l.clear(),u.clear();const P=e?this.activeMatch:void 0;this.activeMatch=void 0;const M=h.get("masterDetail")&&S?.searchDetail&&w;if((0,s._missing)(R)){if(this.active=!1,this.topNumMatches=0,this.centerNumMatches=0,this.totalMatches=0,this.refreshRows(t),M){const e=w.store;for(const t of Object.keys(e))e[t]?.api?.findClearActive()}return void((0,s._missing)(y)||this.dispatchFindChanged())}const E=g.allCols,A=h.getCallback("isFullWidthRow"),T=h.get("detailCellRendererParams"),D=h.get("fullWidthCellRendererParams"),I=h.get("groupRowRendererParams"),k=(0,o._getFlattenDetails)(h),L=b.isPivotMode();let O,G,N=0,B=!1;const V=(e,i,s,o)=>{if(!s)return;let r=O.get(e);r||(r=[],O.set(e,r),G.push(e),o||t.add(e)),r.push([i,s]),N+=s},_=e=>{if(B){let t=e.rowIndex,i=e.parent;for(;null==t&&i;)t=i.rowIndex,i=i.parent;if(null==t||!C.isRowInPage(t))return}const t=e.hasChildren();if(!(0,o._shouldRowBeRendered)(k,e,t,L,(0,o._isRemovedSingleChildrenGroup)(k,e,t),(0,o._isRemovedLowestSingleChildrenGroup)(k,e,t)))return;const i=e.data;if(A?.({rowNode:e})){if(D){const t=D.getFindMatches?.({node:e,data:i,findSearchValue:F,updateMatches:this.refreshDebounced,getMatchesForValue:e=>n(R,x,e)})??0;V(e,null,t)}return}if((0,s._isFullWidthGroupRow)(h,e,L)){let t;const o=I?.getFindText;if(o){const r=m.getValueForDisplay({node:e,from:"batch"}).value;t=o((0,s._addGridCommonParams)(h,{value:r,node:e,data:i,column:null,colDef:null,getValueFormatted:()=>{const{valueFormatted:t}=m.getValueForDisplay({node:e,includeValueFormatted:!0,from:"batch"});return t}}))}else{const{value:i,valueFormatted:s}=m.getValueForDisplay({node:e,includeValueFormatted:!0,from:"batch"});t=s??i}const r=n(R,x,t);return void V(e,null,r)}const r=e.level>0&&h.get("groupHideOpenParents")&&e.parent?.getFirstChild()===e&&!e.parent?.expanded;for(const t of E){if((0,s.isSpecialCol)(t))continue;const o=v?.getCellSpan(t,e);if(o&&o.firstNode!==e)continue;if(t.colDef.showRowGroup&&r)continue;let a;const l=t.colDef,d=l.getFindText;if(d){const o=m.getValueForDisplay({column:t,node:e,from:"batch"}).value;a=d((0,s._addGridCommonParams)(h,{value:o,node:e,data:i,column:t,colDef:l,getValueFormatted:()=>{const{valueFormatted:i}=m.getValueForDisplay({column:t,node:e,includeValueFormatted:!0,from:"batch"});return i}}))}else{const{value:i,valueFormatted:s}=m.getValueForDisplay({column:t,node:e,includeValueFormatted:!0,from:"batch"});a=s??i}const c=n(R,x,a);V(e,t,c)}if(e.master&&M){const t=e.detailNode;if(t){const e=t.detailGridInfo?.api;if(e){e.setGridOption("findSearchValue",F);const i=e.findGetTotalMatches();return void V(t,null,i)}}if(T){const s=T.getFindMatches?.({node:e,data:i,findSearchValue:F,updateMatches:this.refreshDebounced,getMatchesForValue:e=>n(R,x,e)})??0;V(t??{parent:e,dummy:!0},null,s,!t)}}};O=a,G=i,f?.forEachPinnedRow("top",_),this.topNumMatches=N;let H=N;O=l,G=d,N=0,B=!!C&&!!S?.currentPageOnly,p.forEachNodeAfterFilterAndSort(_,!0),this.centerNumMatches=N,H+=N,O=u,G=c,N=0,B=!1,f?.forEachPinnedRow("bottom",_),H+=N,this.totalMatches=H,this.active=!0,this.refreshRows(t),P&&this.resetActiveMatch(P),this.dispatchFindChanged()}resetActiveMatch(e){const{column:t,numInMatch:i}=e;let s=e.node;if(s.dummy){const e=s.parent?.detailNode;if(!e)return;s=e}const o=s.rowPinned??null,r=this.getMatches(o)?.get(s)?.some(([e,s])=>e===t&&s>=i);if(!r)return;let n=0;null==o?n=this.topNumMatches:"bottom"===o&&(n=this.topNumMatches+this.centerNumMatches);(()=>{const e=this.getMatches(o);for(const o of e.keys()){const r=o===s,a=e.get(o);for(const[e,s]of a){if(r&&e===t)return void(n+=i);n+=s}}})();const a={...e,node:s,numOverall:n};this.activeMatch=a,this.refreshRows(new Set([s]),null==t?void 0:new Set([t])),this.scrollOnRefresh&&(this.scrollOnRefresh=!1,this.scrollToActive(a)),this.setDetailActive(a)}refreshRows(e,t){e.size&&this.beans.rowRenderer.refreshCells({rowNodes:[...e],columns:t?[...t]:void 0,force:!0,suppressFlash:!0})}findAcrossContainers(e,t,i,s){if(!this.totalMatches)return void this.setActive();const o=this.activeMatch;let r=t;if(o){const{column:i,node:n,numInMatch:a,numOverall:l}=o,d=n.rowPinned??null,c=l+s;if(this.findInContainer(d,e,c,n,i,a))return;const u=t.indexOf(d),h=t.length;if(t.slice(u+1,h).some(t=>this.findInContainer(t,e,c)))return;r=t.slice(0,u+1)}r.some(t=>this.findInContainer(t,e,i))}findInContainer(e,t,i,s,o,r){const n=this.getMatches(e),a=this.getRowNodes(e),l=t?-1:1;if(null!=s){const e=n.get(s),a=e?.findIndex(([e])=>e===o);if(null!=a&&-1!=a){const[o,n]=e[a];if(t?r>1:re===s);d=a[e+l]}if(null==d)return!1;const c=n.get(d),u=c?.[t?c.length-1:0];if(u){const[e,s]=u;return this.setActive({column:e,node:d,numInMatch:t?s:1,numOverall:i}),!0}return!1}dispatchFindChanged(){const{eventSvc:e,activeMatch:t,totalMatches:i,findSearchValue:s}=this;e.dispatchEvent({type:"findChanged",activeMatch:t,totalMatches:i,findSearchValue:s})}setActive(e){if(e&&null==e.node.rowIndex){const t=e.node;let i=t.footer?t.sibling:t.parent;for(;i&&-1!==i.level;)i.expanded=!0,i=i.parent;return this.activeMatch=e,this.scrollOnRefresh=!0,void this.beans.expansionSvc?.onGroupExpandedOrCollapsed()}const t=this.activeMatch;this.activeMatch=e,this.refreshAndScrollToActive(e,t),e&&this.setDetailActive(e),this.dispatchFindChanged()}setDetailActive({node:e,numInMatch:t}){e.detail&&e.detailGridInfo?.api?.findGoTo(t)}refreshAndScrollToActive(e,t){if(e||t){const i=new Set,s=new Set;let o=!1;const r=e=>{if(!e)return;const{node:t,column:r}=e;i.add(t),null==r?o=!0:s.add(r)};r(e),r(t),this.refreshRows(i,o?void 0:s)}e&&this.scrollToActive(e)}scrollToActive({node:{rowPinned:e,rowIndex:t},column:i}){const{ctrlsSvc:s,pagination:o,gos:r}=this.beans,n=s.getScrollFeature();null==e&&null!=t&&(!o||r.get("findOptions")?.currentPageOnly||o.isRowInPage(t)||o.goToPageWithIndex(t),n.ensureIndexVisible(t)),n.ensureColumnVisible(i)}goToInContainer(e,t,i){let s=i;for(const i of e.keys()){const o=e.get(i);for(const[e,r]of o){if(t<=s+r)return void this.setActive({column:e,node:i,numInMatch:t-s,numOverall:t});s+=r}}}getMatches(e){return"top"===e?this.topMatches:"bottom"===e?this.bottomMatches:this.centerMatches}getRowNodes(e){return"top"===e?this.topNodes:"bottom"===e?this.bottomNodes:this.centerNodes}getActiveMatchNum(e,t){const i=this.activeMatch;return null!=i&&i.node===e&&i.column===t?i.numInMatch:0}destroy(){this.topMatches.clear(),this.topNodes.length=0,this.centerMatches.clear(),this.centerNodes.length=0,this.bottomMatches.clear(),this.bottomNodes.length=0,this.activeMatch=void 0,super.destroy()}}t.FindService=a},79278:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.OP_BY_SYMBOL=t.OP_SYMBOLS_DESC=t.getDefBySymbol=void 0;const i=[{symbol:"%",fixity:"postfix",precedence:100},{symbol:"-",fixity:"prefix",precedence:90},{symbol:"+",fixity:"prefix",precedence:90},{symbol:"^",fixity:"infix",precedence:80,associativity:"right"},{symbol:"*",fixity:"infix",precedence:70,associativity:"left",isAssociative:!0},{symbol:"/",fixity:"infix",precedence:70,associativity:"left"},{symbol:"+",fixity:"infix",precedence:60,associativity:"left",isAssociative:!0},{symbol:"-",fixity:"infix",precedence:60,associativity:"left"},{symbol:"&",fixity:"infix",precedence:55,associativity:"left",isAssociative:!0},{symbol:"=",fixity:"infix",precedence:50,associativity:"left"},{symbol:"<>",fixity:"infix",precedence:50,associativity:"left"},{symbol:">=",fixity:"infix",precedence:50,associativity:"left"},{symbol:"<=",fixity:"infix",precedence:50,associativity:"left"},{symbol:">",fixity:"infix",precedence:50,associativity:"left"},{symbol:"<",fixity:"infix",precedence:50,associativity:"left"}],s=new Map;for(const e of i){const t=s.get(e.symbol)??[];t.push(e),s.set(e.symbol,t)}t.getDefBySymbol=function(e,t){const i=s.get(e)??[];return t?i.find(e=>e.fixity===t):i[0]},t.OP_SYMBOLS_DESC=[...new Set(i.map(e=>e.symbol))].sort((e,t)=>t.length-e.length),t.OP_BY_SYMBOL=s},27271:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.parseFormula=void 0;const s=i(76624),o=i(93916),r=i(79278),n=i(30594),a=(e,t,i)=>{const r=t.trim();if(r.startsWith('"')&&r.endsWith('"')&&r.length>2)return r.slice(1,-1);if("true"===r.toLowerCase())return!0;if("false"===r.toLowerCase())return!1;const a=Number(r);if(!isNaN(a))return a;const l=(0,o.parseA1Ref)(r);if(l){const{startCol:t,startRow:o,startColAbsolute:a,startRowAbsolute:d,endCol:c,endRow:u,endColAbsolute:h,endRowAbsolute:g}=l,p=(t,i,o,a,l)=>{const d=t||l?i.toUpperCase():e.formula?.getColByRef(i)?.colId,c=o||l?a:(0,s._getClientSideRowModel)(e)?.getFormulaRow(Number(a)-1)?.id;if(null==d||null==c)throw new n.FormulaParseError(2,0,0,[r]);return{column:{id:d,absolute:t},row:{id:c,absolute:o}}},m=p(a,t,d,o,i);if(c&&u){const e=p(h??!1,c,g??!1,u,i);m.endColumn=e.column,m.endRow=e.row}return m}return null};function l(e){const t=[];let i=0;const s=(e,t)=>{let i=t;const s=()=>"$"===e[i]&&(i++,!0),r=()=>{const t=i;return s(),(()=>{const t=i;for(;it})()?(s(),!!(()=>{const t=i;for(;it})()||(i=t,!1)):(i=t,!1)};if(!r())return 0;if(":"===e[i]){const e=i;if(i++,!r())throw new n.FormulaParseError(3,e,i)}const a=e.slice(t,i);return(0,o.isStandaloneRefToken)(e,t,a)?i-t:0};for(;i=e.length)throw new n.FormulaParseError(4,i,e.length);t.push(e.slice(i,s+1)),i=s+1;continue}if(/[0-9]/.test(a)||"."===a&&/[0-9]/.test(e[i+1])){let s=i+1;for(;s0){t.push(e.slice(i,i+r)),i+=r;continue}let n=i+1;for(;ne.startsWith(t,i));if(!l)throw new n.FormulaParseError(5,i,i+1,[a]);t.push(l),i+=l.length}return t}function d(e,t){return"infix"!==e.fixity||"infix"!==t.fixity||("right"!==e.associativity||e.precedence!==t.precedence)&&e.precedence>=t.precedence}function c(e,t){const i=r.OP_BY_SYMBOL.get(e);if(!i)return null;const s=void 0!==t&&r.OP_BY_SYMBOL.has(t);return void 0!==t&&!s&&!("("===t||","===t)&&"("!==t||")"===t?i.find(e=>"postfix"===e.fixity)??i.find(e=>"infix"===e.fixity)??null:i.find(e=>"prefix"===e.fixity)??i.find(e=>"infix"===e.fixity)??null}function u(e,t){return"operation"===e.type&&e.operation.toUpperCase()===t.toUpperCase()}function h(e,t=!1){return e?"operand"!==e.type?t:!!e.value:t}function g(e){if(!e||"operand"!==e.type)return null;const t=e.value;return"string"==typeof t?t:"number"==typeof t||"boolean"==typeof t?String(t):null}function p(e){if(!u(e,"COLUMN"))return null;const t=g(e.operands[0]);if(null==t)return null;return{id:t,absolute:h(e.operands[1],!1)}}function m(e){if(!u(e,"ROW"))return null;const t=g(e.operands[0]);if(null==t)return null;return{id:t,absolute:h(e.operands[1],!1)}}function f(e){if("operation"===e.type){const t=e.operands.map(f),i={type:"operation",operation:e.operation,operands:t},s=function(e){if(!u(e,"REF"))return null;const t=e.operands;if(2!==t.length&&4!==t.length)return null;const i=p(t[0]),s=m(t[1]);if(!i||!s)return null;const o={column:i,row:s};if(4===t.length){const e=p(t[2]),i=m(t[3]);if(!e||!i)return null;o.endColumn=e,o.endRow=i}return{type:"operand",value:o}}(i);return s??i}return e}t.parseFormula=(e,t,i=!1)=>{if(!(0,s._isExpressionString)(t))throw new n.FormulaParseError(17,0,1);return f(function(e,t,i){const s=l(t),u=[],h=[],g=()=>{const e=h.pop();if(!e)throw new n.FormulaParseError(6,0,0);if("op"===e.kind){const t=e.def;if("infix"!==t.fixity){const e=u.pop();if(!e)throw new n.FormulaParseError(7,0,0,[t.symbol]);return"+"===t.symbol&&"prefix"===t.fixity?void u.push(e):"postfix"===t.fixity&&"%"===t.symbol?void u.push({type:"operation",operation:t.symbol,operands:[e]}):void("-"===t.symbol&&"prefix"===t.fixity?u.push({type:"operation",operation:"-",operands:[{type:"operand",value:0},e]}):u.push({type:"operation",operation:t.symbol,operands:[e]}))}const i=u.pop(),s=u.pop();if(!s||!i)throw new n.FormulaParseError(7,0,0,[t.symbol]);return void u.push({type:"operation",operation:t.symbol,operands:[s,i]})}throw new n.FormulaParseError(8,0,0)};let p=0;for(;pe.outLen&&t.args.push(u.pop()),p++;continue}if(")"===t){for(;;){const e=h[h.length-1];if(!e||"parenthesis"===e.kind)break;if("op"!==e.kind)throw new n.FormulaParseError(12,p,p+1);g()}const e=h[h.length-1];if(!e||"parenthesis"!==e.kind)throw new n.FormulaParseError(13,p,p+1);const t=e.outLen;if(h.pop(),"function"===h[h.length-1]?.kind){const e=h.pop();u.length>t&&e.args.push(u.pop()),u.push({type:"operation",operation:e.name,operands:e.args})}p++;continue}const l=r.OP_BY_SYMBOL.has(t)?c(t,s[p-1]):null;if(l){for(;;){const e=h[h.length-1];if(!e||"op"!==e.kind)break;if(!d(e.def,l))break;g()}h.push({kind:"op",def:l}),p++;continue}const m=a(e,t,i);if(null==m)throw new n.FormulaParseError(14,0,t.length,[t]);u.push({type:"operand",value:m}),p++}for(;h.length;){if("op"!==h[h.length-1].kind)throw new n.FormulaParseError(15,0,0);g()}if(1!==u.length)throw new n.FormulaParseError(16,0,0);return u[0]}(e,t.slice(1).trim(),i))}},787:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.serializeFormula=t.rowIdFromIndex=t.rowIndexFromId=t.colIdFromIndex=t.colIndexFromId=void 0;const s=i(76624),o=i(79278),r=i(30594),n=e=>"operation"===e.type;function a(e,t){const i=e.colModel.getColById(t);return i?e.formula?.getColRef(i)??null:null}function l(e,t){const i=e.rowModel?.getRowNode?.(t);return null!=i?.formulaRowIndex?i.formulaRowIndex+1:null}function d(e,t){return(0,s._getClientSideRowModel)(e)?.getFormulaRow?.(t-1)?.id??null}function c(e){if(e.includes('"'))throw new r.FormulaError(18);return`"${e}"`}function u(e,t){if(t.absolute)return t.id;const i=a(e,t.id);if(i)return i.toUpperCase();throw new r.FormulaError(22,[t.id])}function h(e,t){if(t.absolute){const e=Number(t.id);if(Number.isFinite(e)&&e>=1)return e;throw new r.FormulaError(23,[t.id])}const i=l(e,t.id);if(null!=i)return i;throw new r.FormulaError(24,[t.id])}function g(e,t){const i=t=>`COLUMN(${c(function(e,t){const i=/^[A-Za-z]+$/.test(t.id);if(t.absolute){if(i)return t.id.toUpperCase();const s=a(e,t.id);if(s)return s.toUpperCase();throw new r.FormulaError(19,[t.id])}if(i){const i=function(e,t){return e.formula?.getColByRef?.(t)?.colId??null}(e,t.id);if(i)return i}return t.id}(e,t))}${t.absolute?",true":""})`,s=t=>`ROW(${c(function(e,t){const{id:i,absolute:s}=t;if(s){if(null==d(e,Number(i)))throw new r.FormulaError(20,[i])}else if(null==l(e,i))throw new r.FormulaError(21,[i]);return i}(e,t))}${t.absolute?",true":""})`,o=`REF(${i(t.column)},${s(t.row)}`;return t.endColumn&&t.endRow?`${o},${i(t.endColumn)},${s(t.endRow)})`:`${o})`}function p(e){if(!n(e)||"-"!==e.operation||2!==e.operands.length)return null;const[t,i]=e.operands;return"operand"===t.type&&0===t.value?i:null}function m(e,t,i){if(!n(t))return!1;if(p(t))return!1;const s=(0,o.getDefBySymbol)(t.operation,"infix");if(!s||"infix"!==s.fixity)return!1;const r=e.precedence,a=s.precedence;if(ar)return!1;if("right"===e.associativity){const t=s.symbol===e.symbol;return"left"===i&&t}return!(!0===e.isAssociative)&&"right"===i}t.colIndexFromId=function(e,t,i){const s=e.getColById(i);if(!s)return null;const o=t.indexOf(s);return o>=0?o:null},t.colIdFromIndex=function(e,t){const i=e[t];return i?i.getId()??null:null},t.rowIndexFromId=l,t.rowIdFromIndex=d,t.serializeFormula=function(e,t,i,s){const r=t=>i?g(e,t):function(e,t,i){const s=(e,t)=>(e?"$":"")+String(t),o=i?t.column.id:u(e,t.column),r=i?t.row.id:h(e,t.row),n=s(t.column.absolute,o)+s(t.row.absolute,r);if(t.endColumn&&t.endRow){const o=i?t.endColumn.id:u(e,t.endColumn),r=i?t.endRow.id:h(e,t.endRow);return`${n}:${s(t.endColumn.absolute,o)}${s(t.endRow.absolute,r)}`}return n}(e,t,s);return"="+function e(t){if("operand"===t.type){const e=t.value;return"string"==typeof e?c(e):"number"==typeof e?String(e):"boolean"==typeof e?e?"TRUE":"FALSE":r(e)}const i=p(t);if(i){const t=e(i);return function(e){if(!n(e))return!1;const t=(0,o.getDefBySymbol)(e.operation,"infix");return!!t&&!("^"===t.symbol)}(i)?`-(${t})`:`-${t}`}const s=t.operation.toUpperCase();if(1===t.operands.length){const i=t.operands[0],r=(0,o.getDefBySymbol)(s,"postfix");if(r)return`${e(i)}${r.symbol}`;const a=(0,o.getDefBySymbol)(s,"prefix");if(a){const t=e(i),s=function(e){return!!n(e)&&!!(0,o.getDefBySymbol)(e.operation,"infix")}(i);return s?`${a.symbol}(${t})`:`${a.symbol}${t}`}return`${s}(${e(i)})`}if(2===t.operands.length){const i=(0,o.getDefBySymbol)(s,"infix");if(i){const[s,o]=t.operands,r=m(i,s,"left")?`(${e(s)})`:e(s),n=m(i,o,"right")?`(${e(o)})`:e(o);return`${r}${i.symbol}${n}`}}return`${s}(${t.operands.map(e).join(",")})`}(t)}},30594:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.FormulaParseError=t.FormulaError=void 0;const s=i(84678);class o extends Error{constructor(e,t,i){const o="string"==typeof e,r=!o&&Array.isArray(t)?(e=>{if(e?.length)return e.map(e=>String(e))})(t):void 0;if(super(o?e:(0,s.getFormulaErrorDefaultMessage)(e,r)),this.name="FormulaError",o)this.type="string"==typeof t?t:"#ERROR!",this.errorId=null,this.localeKey=null,this.defaultMessage=e,this.variableValues=void 0;else{const[t,o,n]=(0,s.getFormulaErrorDefinition)(e);this.type=i??n??"#ERROR!",this.errorId=e,this.localeKey=t,this.defaultMessage=o,this.variableValues=r}}getTranslatedMessage(e){return this.localeKey?e(this.localeKey,this.defaultMessage,this.variableValues):this.message}}t.FormulaError=o;t.FormulaParseError=class extends o{constructor(e,t,i,s){super(e,s,"#PARSE!"),this.errorStart=t,this.errorEnd=i}}},82255:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.FormulaCellEditor=void 0;const s=i(76624),o=i(26985),r=i(84678);class n extends s.AgAbstractCellEditor{constructor(){super({tag:"div",cls:"ag-cell-edit-wrapper"}),this.eEditor=s.RefPlaceholder,this.focusAfterAttached=!1}initialiseEditor(e){const t=this.createManagedBean(new o.AgFormulaInputField);this.eEditor=t,t.addCss("ag-cell-editor"),this.appendChild(t),this.addManagedElementListeners(t.getContentElement(),{keydown:t=>this.onFormulaInputKeyDown(t,e.onKeyDown)});const{eventKey:i,cellStartedEdit:r}=e;let n;r?(this.focusAfterAttached=!0,n=i===s.KeyCode.BACKSPACE||i===s.KeyCode.DELETE?"":i&&1===i.length?i:this.getStartValue(e)):n=this.getStartValue(e);const a=null==n?"":String(n);this.eEditor.setEditingCellRef(e.column,e.rowIndex),this.eEditor.setValue(a,!0)}onFormulaInputKeyDown(e,t){const{key:i}=e;if(i!==s.KeyCode.TAB||e.defaultPrevented)return;const{focusSvc:o}=this.beans,r=o?.getFocusedCell();this.eEditor.withSelectionChangeHandlingSuppressed(()=>{t?.(e)});const n=o?.getFocusedCell();let a=!1;if(r&&n){const{rowIndex:e,rowPinned:t,column:i}=r,{rowIndex:s,rowPinned:o,column:l}=n;a=e!==s||t!==o||i!==l}const{defaultPrevented:l}=e;(l||a)&&e.preventDefault(),e.stopPropagation()}getStartValue(e){const{value:t}=e;return t?.toString()??t}isPopup(){return!1}afterGuiAttached(){if(!this.focusAfterAttached)return;const{beans:e,eEditor:t}=this;(0,s._isBrowserSafari)()||this.focusIn(),(0,s._placeCaretAtEnd)(e,t.getContentElement())}focusIn(){this.eEditor.getContentElement().focus({preventScroll:!0})}getValue(){const e=this.eEditor.getCurrentValue(),{value:t,parseValue:i}=this.params;return"string"==typeof e&&this.isFormulaText(e)?e:null==e&&null==t?t:i(String(e))}getValidationElement(){return this.eEditor.getContentElement()}getValidationErrors(){const{params:e}=this,t=this.eEditor.getCurrentValue(),i=this.getLocaleTextFunc(),{getValidationErrors:s,validateFormulas:o}=e;let n=null;if((!0===o||!!s)&&"string"==typeof t&&this.isFormulaText(t)){const e=this.beans.formula?.normaliseFormula(t,!0);e||(n=[(0,r.translateFormulaError)(i,1)])}return s?s({value:t,internalErrors:n,cellEditorParams:e}):n}isFormulaText(e){const t=null==e?"":String(e);return this.beans.formula?.isFormula(t)??t.trimStart().startsWith("=")}}t.FormulaCellEditor=n},99015:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.formulaCSS=void 0,t.formulaCSS='.formula-error:after{background-color:var(--ag-invalid-color);content:"";height:12px;position:absolute;top:-6px;width:12px}:where(.ag-ltr) .formula-error:after{right:-6px;transform:rotate(45deg)}:where(.ag-rtl) .formula-error:after{left:-6px;transform:rotate(-45deg)}'},40027:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.FormulaDataService=void 0;const s=i(76624);class o extends s.BeanStub{constructor(){super(...arguments),this.beanName="formulaDataSvc",this.hasSource=!1}postConstruct(){const e=this.gos.get("formulaDataSource");e&&this.setDataSource(e)}hasDataSource(){return this.hasSource}getFormula(e){const t=this.dataSource?.getFormula(e);return(0,s._isExpressionString)(t)?t:void 0}setFormula(e){this.dataSource?.setFormula(e)}setDataSource(e){this.dataSource=e,this.hasSource=!0,e.init?.(this.createInitParams())}createInitParams(){return(0,s._addGridCommonParams)(this.gos,{})}destroy(){this.dataSource?.destroy?.(),super.destroy()}}t.FormulaDataService=o},79046:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.FormulaInputManagerService=void 0;const s=i(76624);class o extends s.BeanStub{constructor(){super(...arguments),this.beanName="formulaInputManager",this.activeEditor=null,this.activeEditorDeactivate=null}postConstruct(){this.registerRangeSelectionExtension()}registerActiveEditor(e,t){if(this.activeEditor===e&&this.activeEditorDeactivate===t)return!1;const i=this.activeEditorDeactivate;return i&&i!==t&&i(),this.activeEditor=e,this.activeEditorDeactivate=t,!0}unregisterActiveEditor(e,t){this.activeEditor===e&&this.activeEditorDeactivate===t&&(this.activeEditor=null,this.activeEditorDeactivate=null)}isActiveEditor(e){return this.activeEditor===e}shouldSuppressRangeSelection(e){const t=e;return!!t?.closest&&(null!=this.activeEditor?!!t.closest(".ag-cell-editor"):!!t.closest(".ag-formula-input-field"))}registerRangeSelectionExtension(){const e=this.beans.rangeSvc;e&&(e.registerRangeSelectionExtension(this),this.addDestroyFunc(()=>e.unregisterRangeSelectionExtension?.(this)))}}t.FormulaInputManagerService=o},85898:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.FormulaModule=void 0;const s=i(20976),o=i(19586),r=i(82255),n=i(99015),a=i(40027),l=i(79046),d=i(23715);t.FormulaModule={moduleName:"Formula",version:o.VERSION,userComponents:{agFormulaCellEditor:r.FormulaCellEditor},beans:[d.FormulaService,a.FormulaDataService,l.FormulaInputManagerService],dependsOn:[s.RowNumbersModule],css:[n.formulaCSS]}},23715:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.FormulaService=t.CellFormula=void 0;const s=i(85608),o=i(76624),r=i(27271),n=i(787),a=i(30594),l=i(77574),d=s.__importDefault(i(11157)),c=i(46779),u=i(93916);class h{constructor(e,t,i,s){this.rowNode=e,this.column=t,this.formulaString=i,this.beans=s,this.error=null,this.ast=null,this.astStale=!0,this._value=void 0,this._valueStale=!0}setFormulaString(e){this.formulaString!==e&&(this.formulaString=e,this.astStale=!0,this._valueStale=!0)}setComputedValue(e){this._value=e,this._valueStale=!1,this.error=null}setError(e){this.error=e,this._valueStale=!1}isValueReady(){return!this._valueStale}getValue(){return this.error?.type??this._value}getError(){return this.error}getAst(){if(!this.astStale)return this.ast;const e=(0,r.parseFormula)(this.beans,this.formulaString);return this.ast=e??null,this.astStale=!1,this.ast}}t.CellFormula=h;class g extends o.BeanStub{constructor(){super(...arguments),this.beanName="formula",this.cachedResult=new WeakMap,this.colRefMap=new Map,this.functionNames=null,this.active=!1}setFormulasActive(e){const t=e.list.some(e=>e.isAllowFormula())&&this.checkForIncompatibleServices(e);t!==this.active&&(this.active=t,this.refreshFormulas(!0))}checkForIncompatibleServices(e){return this.gos.get("masterDetail")?((0,o._warn)(295,{blockedService:"Master Detail"}),!1):this.gos.get("treeData")?((0,o._warn)(295,{blockedService:"Tree Data"}),!1):this.gos.get("enableCellExpressions")?((0,o._warn)(295,{blockedService:"Cell Expressions"}),!1):e.list.every(e=>e.isAllowPivot()||e.isPivotActive()?((0,o._warn)(295,{blockedService:"Column Pivoting"}),!1):e.isAllowRowGroup()||e.isRowGroupActive()?((0,o._warn)(295,{blockedService:"Row Groups"}),!1):!(e.isAllowValue()||e.isValueActive()||e.getAggFunc())||((0,o._warn)(295,{blockedService:"Value Aggregation"}),!1))}postConstruct(){this.setupFunctions();const e=()=>{this.active&&this.refreshFormulas(!0)},t=()=>{this.active&&this.setupColRefMap()};this.addManagedPropertyListeners(["masterDetail","enableCellExpressions"],e=>{const{colModel:t}=this.beans,i=t.cols?.list.some(e=>e.isAllowFormula());i&&t.refreshAll((0,o._convertColumnEventSourceType)(e.source))}),this.addManagedListeners(this.beans.eventSvc,{modelUpdated:e,cellValueChanged:e,rowDataUpdated:e,newColumnsLoaded:t,columnMoved:t})}updateFormulaByOffset(e){const{value:t,rowDelta:i=0,columnDelta:s=0,useRefFormat:o=!0}=e,{beans:a}=this;try{const e=!o,l=(0,r.parseFormula)(a,t,e);return(0,c.shiftNode)(a,l,i,s,e),(0,n.serializeFormula)(a,l,o,e)}catch{return t}}setupFunctions(){this.supportedOperations=new Map,Object.keys(d.default).forEach(e=>{this.supportedOperations.set(e,d.default[e])}),this.functionNames=null;const e=this.gos.get("formulaFuncs");e&&Object.keys(e).forEach(t=>{this.supportedOperations.set(t.toUpperCase(),e[t].func)})}getFunctionNames(){if(this.functionNames)return this.functionNames;const e=[];for(const t of this.supportedOperations.keys())(0,u.isFormulaIdentStart)(t[0])&&[...t].every(e=>(0,u.isFormulaIdentChar)(e))&&e.push(t);return e.sort((e,t)=>e.localeCompare(t)),this.functionNames=e,e}setupColRefMap(){if(!this.active)return void(this.colRefMap=new Map);const e="abcdefghijklmnopqrstuvwxyz",t=this.beans.colModel.getCols(),i=new Map;let s=0;t?.forEach(t=>{if(!t.isPrimary())return;let o="",r=s++;for(;o=e[r%26]+o,!(r<26);)r=Math.floor(r/26)-1;t.formulaRef!==o.toUpperCase()&&(t.formulaRef=o.toUpperCase(),t.dispatchColEvent("formulaRefChanged","api")),i.set(o.toUpperCase(),t)}),this.colRefMap=i,this.refreshFormulas(!0)}getColByRef(e){return this.colRefMap.get(e.toUpperCase())??null}getColRef(e){for(const[t,i]of this.colRefMap.entries())if(i===e)return t;return null}refreshFormulas(e){this.cachedResult=new WeakMap,e&&this.beans.rowRenderer.refreshCells({suppressFlash:!0,force:!0})}isFormula(e){return this.active&&(0,o._isExpressionString)(e)}normaliseFormula(e,t=!1){const{beans:i}=this;try{const s=(0,r.parseFormula)(i,e);return(0,n.serializeFormula)(i,s,!t,!1)}catch{return null}}getFormulaError(e,t){const i=this.cachedResult.get(t),s=i?.get(e);return s?.error??null}getFunction(e){return this.supportedOperations.get(e.toUpperCase())}ensureCellFormula(e,t){let i=this.cachedResult.get(e),s=i?.get(t);if(s)return s;const o=this.getFormulaFromDataSource(e,t)??this.fetchRawValue(t,e);return"string"!=typeof o||"="!==o[0]?null:(s=new h(e,t,o,this.beans),i||(i=new Map,this.cachedResult.set(e,i)),i.set(t,s),s)}getFormulaFromDataSource(e,t){const i=this.beans.formulaDataSvc;if(i?.hasDataSource())return i.getFormula({column:t,rowNode:e})}coerceFormulaValue(e,t){const i=this.beans.dataTypeSvc?.getBaseDataType(e);if("bigint"===i){return this.toBigIntValue(t)??t}if("number"===i&&"bigint"==typeof t){const e=Number(t);return Number.isFinite(e)?e:t}return t}toBigIntValue(e){return"bigint"==typeof e?e:"number"==typeof e&&Number.isFinite(e)&&Number.isInteger(e)?BigInt(e):null}fetchRawValue(e,t){return this.beans.valueSvc.getValue(e,t,"data")}getVisitorContext(){if(this.activeCtx)return this.activeCtx;const e=new Map;return this.activeCtx={setVisited:(t,i)=>{const s=e.get(t);s&&(s.delete(i),0===s.size&&e.delete(t))},setVisiting:(t,i)=>{let s=e.get(t);const o=s?.has(i);if(o)throw new a.FormulaError(51);s||(s=new Set,e.set(t,s)),s.add(i)},errorAllVisitors:t=>{for(const[i,s]of e)for(const e of s){const s=this.ensureCellFormula(i,e);s?.setError(t)}}}}makeFormulaFrame(e){const t=this.ensureCellFormula(e.row,e.column).getAst();if(!t)throw new a.FormulaError(52);return{address:e,ast:t,unresolvedDepIterator:(0,l.unresolvedDeps)(this.beans,t,this.ensureCellFormula.bind(this))}}resolveValue(e,t){const i=this.ensureCellFormula(t,e);if(!i)return this.fetchRawValue(e,t);if(i.isValueReady())return i.getValue();const s=!!this.activeCtx,{setVisited:o,setVisiting:r,errorAllVisitors:n}=this.getVisitorContext(),d=[];try{for(r(t,e),d.push(this.makeFormulaFrame({row:t,column:e}));d.length;){const{address:e,ast:t,unresolvedDepIterator:i}=d[d.length-1],{row:s,column:n}=e,c=this.ensureCellFormula(s,n);if(c.isValueReady()){if(d.pop(),o(s,n),c.error)throw c.error;continue}const u=i.next();if(!u.done){const e=u.value,t=this.ensureCellFormula(e.row,e.column);if(!t||t.isValueReady())continue;r(e.row,e.column),d.push(this.makeFormulaFrame(e));continue}const h=(0,l.evalAst)(this.beans,t,e=>{const t=this.ensureCellFormula(e.row,e.column);if(t){if(!t.isValueReady())throw new a.FormulaError(53);const e=t.getError();if(e)throw e;return t.getValue()}return this.fetchRawValue(e.column,e.row)},{row:s,column:n}),g=this.coerceFormulaValue(n,h),p=c.getError();if(p)throw o(s,n),p;c.setComputedValue(g),o(s,n),d.pop()}if(!i.isValueReady())throw new a.FormulaError(53);return i.getValue()}catch(e){const t=e instanceof a.FormulaError?e:new a.FormulaError(String(e?.message??e));return n(t),t.type}finally{s||(this.activeCtx=null)}}}t.FormulaService=g},90583:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.COUNTIF=t.COUNTBLANK=t.COUNTA=t.COUNT=void 0;const s=i(30594),o=i(46779);t.COUNT=({values:e})=>{let t=0;for(const i of e)null==i||""===i||isNaN(i)||t++;return t};t.COUNTA=({values:e})=>{let t=0;for(const i of e)null!=i&&""!==i&&t++;return t};t.COUNTBLANK=({values:e})=>{let t=0;for(const i of e)null!=i&&""!==i||t++;return t};t.COUNTIF=({args:e})=>{const[t,i]=(0,o.take)(e,"COUNTIF",2);if(!(0,o.isRangeParam)(t))throw new s.FormulaError(65);if(!(0,o.isValueParam)(i))throw new s.FormulaError(66);const r=(0,o.criteriaToPredicate)(i.value);let n=0;for(const e of t)r(e)&&n++;return n}},18317:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TODAY=t.NOW=void 0;t.NOW=()=>new Date;t.TODAY=()=>{const e=new Date;return new Date(e.getFullYear(),e.getMonth(),e.getDate())}},61626:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.MAX=t.MIN=t.IF=t.LTE=t.LT=t.GTE=t.GT=t.NOT_EQUALS=t.EQUALS=void 0;const s=i(30594),o=i(46779);t.EQUALS=({values:e})=>{const[t,i]=(0,o.take)(e,"EQUALS",2);return t===i};t.NOT_EQUALS=({values:e})=>{const[t,i]=(0,o.take)(e,"NOT_EQUALS",2);return t!==i};t.GT=({values:e})=>{const[t,i]=(0,o.take)(e,"GT",2);return t>i};t.GTE=({values:e})=>{const[t,i]=(0,o.take)(e,"GTE",2);return t>=i};t.LT=({values:e})=>{const[t,i]=(0,o.take)(e,"LT",2);return t{const[t,i]=(0,o.take)(e,"LTE",2);return t<=i};t.IF=({values:e})=>{const[t,i,s]=(0,o.take)(e,"IF",3);return t?i:s};t.MIN=({values:e})=>{let t=null;for(const i of e)null!=i&&(null===t||i{let t=null;for(const i of e)null!=i&&(null===t||i>t)&&(t=i);if(null===t)throw new s.FormulaError(69);return t}},35114:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SUMIF=t.RAND=t.MEDIAN=t.AVERAGE=t.POWER=t.PERCENT=t.MINUS=t.SUM=t.DIVIDE=t.PRODUCT=void 0;const s=i(30594),o=i(46779),r=i(32898);t.PRODUCT=({values:e})=>{let t=1,i=null;for(const s of(0,o.iterableWithoutBlanks)(e)){const e=(0,r.coerceFiniteNumberOrBigInt)("PRODUCT",s);if("bigint"!=typeof e)if(null==i){if(0===e)return 0;t*=e}else i*=(0,r.coerceBigInt)("PRODUCT",e);else{if(i??(i=(0,r.coerceBigInt)("PRODUCT",t)),0n===e)return 0n;i*=e}}return i??t};t.DIVIDE=({values:e})=>{const[t,i]=(0,o.take)((0,o.iterableWithoutBlanks)(e),"DIVIDE",2),n=(0,r.coerceFiniteNumber)("DIV",t),a=(0,r.coerceFiniteNumber)("DIV",i);if(null==n||null==a)throw new s.FormulaError(54);if(0===a)throw new s.FormulaError(55);return n/a};t.SUM=({values:e})=>{let t=!1,i=0,n=null,a=!1;for(const l of(0,o.iterableWithoutBlanks)(e)){t||(t=(0,r.isDateValue)(l));const e=(0,r.coerceFiniteNumberOrBigInt)("SUM",l);if("bigint"!=typeof e)if("bigint"!=typeof n)i+=e,a=!0;else{if(t)throw new s.FormulaError(56);n+=(0,r.coerceBigInt)("SUM",e),a=!0}else{if(t)throw new s.FormulaError(56);n??(n=(0,r.coerceBigInt)("SUM",i)),n+=e,a=!0}}if(!a)throw new s.FormulaError(57);return"bigint"==typeof n?n:t?(0,r.dateFromDays)(i):i};t.MINUS=({values:e})=>{const[t,i]=(0,o.take)((0,o.iterableWithoutBlanks)(e),"MINUS",2),s=(0,r.isDateValue)(t),n=(0,r.isDateValue)(i);if(s||n){const e=(0,r.coerceFiniteNumber)("MINUS",t),o=(0,r.coerceFiniteNumber)("MINUS",i);return s&&!n?(0,r.dateFromDays)(e-o):e-o}const a=(0,r.coerceFiniteNumberOrBigInt)("MINUS",t),l=(0,r.coerceFiniteNumberOrBigInt)("MINUS",i);return"bigint"==typeof a||"bigint"==typeof l?(0,r.coerceBigInt)("MINUS",a)-(0,r.coerceBigInt)("MINUS",l):a-l};t.PERCENT=({values:e})=>{const[t]=(0,o.take)(e,"PERCENT",1),i=(0,r.coerceFiniteNumber)("PERCENT",t);if(null==i)throw new s.FormulaError(70);return i/100};t.POWER=({values:e})=>{const[t,i]=(0,o.take)(e,"POWER",2),n=(0,r.coerceFiniteNumber)("POWER",t),a=(0,r.coerceFiniteNumber)("POWER",i);if(null==n||null==a)throw new s.FormulaError(71);return Math.pow(n,a)};t.AVERAGE=({values:e})=>{let t=0,i=0,n=!0;for(const s of(0,o.iterableWithoutBlanks)(e)){const e=(0,r.coerceFiniteNumber)("AVG",s);null!=e&&(t+=e,i++,n&&(n=(0,r.isDateValue)(s)))}if(0===i)throw new s.FormulaError(58);const a=t/i;return n?(0,r.dateFromDays)(a):a};t.MEDIAN=({values:e})=>{let t=!0;const i=[];for(const n of(0,o.iterableWithoutBlanks)(e)){const e=(0,r.coerceFiniteNumber)("MEDIAN",n);if(null==e)throw new s.FormulaError(59);i.push(e),t&&(t=(0,r.isDateValue)(n))}if(0===i.length)throw new s.FormulaError(60);i.sort((e,t)=>e-t);const n=Math.floor(i.length/2),a=i.length%2==1?i[n]:(i[n-1]+i[n])/2;return t?(0,r.dateFromDays)(a):a};t.RAND=()=>Math.random();t.SUMIF=({args:e})=>{const[t,i,n]=(0,o.takeBetween)(e,"SUMIF",2,3);if(!(0,o.isRangeParam)(t))throw new s.FormulaError(61);if(!(0,o.isValueParam)(i))throw new s.FormulaError(62);if(n&&!(0,o.isRangeParam)(n))throw new s.FormulaError(63);const a=(0,o.criteriaToPredicate)(i.value);if(!n){let e=0,i=null;for(const s of t)if(a(s)){const t=(0,r.coerceFiniteNumberOrBigInt)("SUMIF",s);"bigint"==typeof t?(i??(i=(0,r.coerceBigInt)("SUMIF",e)),i+=t):null!=i?i+=(0,r.coerceBigInt)("SUMIF",t):e+=t}return i??e}if(t.rowEnd-t.rowStart!==n.rowEnd-n.rowStart)throw new s.FormulaError(64);const l=t[Symbol.iterator](),d=n[Symbol.iterator]();let c=0,u=null;for(;;){const e=l.next(),t=d.next();if(e.done||t.done){if(e.done!==t.done)throw new s.FormulaError(64);break}if(a(e.value)){const e=(0,r.coerceFiniteNumberOrBigInt)("SUMIF",t.value);"bigint"==typeof e?(u??(u=(0,r.coerceBigInt)("SUMIF",c)),u+=e):null!=u?u+=(0,r.coerceBigInt)("SUMIF",e):c+=e}}return u??c}},32898:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.coerceBigInt=t.coerceFiniteNumberOrBigInt=t.coerceFiniteNumber=t.isDateValue=t.dateFromDays=void 0;const s=i(30594),o=864e5;function r(e){return e instanceof Date}function n(e,t){if("bigint"==typeof t){const i=Number(t);if(Number.isFinite(i))return i;throw new s.FormulaError(48,[e])}if((e=>"number"==typeof e&&Number.isFinite(e))(t))return t;if(r(t))return t.getTime()/o;if("boolean"==typeof t)return t?1:0;if("string"==typeof t){const e=Number(t.trim());if(Number.isFinite(e))return e}throw new s.FormulaError(48,[e])}t.dateFromDays=function(e){return new Date(e*o)},t.isDateValue=r,t.coerceFiniteNumber=n,t.coerceFiniteNumberOrBigInt=function(e,t){return"bigint"==typeof t?t:n(e,t)},t.coerceBigInt=function(e,t){if("bigint"==typeof t)return t;if(!Number.isFinite(t)||!Number.isInteger(t))throw new s.FormulaError(49,[e]);return BigInt(t)}},77574:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.unresolvedDeps=t.evalAst=void 0;const s=i(76624),o=i(30594);function r(e){return!(!e.endColumn||!e.endRow)}function n(e,t){const{row:i,column:o}=t,r=i.absolute?(0,s._getClientSideRowModel)(e)?.getFormulaRow(Number(i.id)-1):e.rowModel.getRowNode(i.id),n=o.absolute?e.formula.getColByRef(o.id):e.colModel.getColById(o.id);return r&&n?{row:r,column:n}:null}function a(e,t,i,s){if("operand"===t.type){const s=t.value;if("object"!=typeof s)return s;if(r(s))throw new o.FormulaError(25);const a=n(e,s);if(!a)throw new o.FormulaError(26);return i(a)}const a=e.formula?.getFunction(t.operation);if(!a)throw new o.FormulaError(27,[t.operation]);const{args:l,values:u}=function(e,t,i,s){const o={[Symbol.iterator](){return new d(e,t,i,s)}},r={[Symbol.iterator](){return new c(e,t,i,s)}};return{args:o,values:r}}(e,t.operands,i,s);return a({row:s.row,column:s.column,args:l,values:u})}function l(e,t,i,s){if("operand"===t.type){const s=t.value;if("object"!=typeof s)return{kind:"value",value:s};if(r(s))return function(e,t,i){const s=u(e,t.row),o=t.endRow?u(e,t.endRow):s,r=Math.min(s,o),n=Math.max(s,o),a=h(e,t.column),l=t.endColumn?h(e,t.endColumn):a;return{kind:"range",rowStart:r,rowEnd:n,colStart:a,colEnd:l,[Symbol.iterator](){return new g(e,r,n,a,l,i)}}}(e,s,i);const a=n(e,s);if(!a)throw new o.FormulaError(26);return{kind:"value",value:i(a)}}return{kind:"value",value:a(e,t,i,s)}}t.evalAst=a;class d{constructor(e,t,i,s){this.beans=e,this.operandNodes=t,this.getCellValue=i,this.caller=s,this.i=0,this.res={done:!1,value:void 0}}next(){return this.i>=this.operandNodes.length?(this.res.done=!0,this.res.value=void 0,this.res):(this.res.done=!1,this.res.value=l(this.beans,this.operandNodes[this.i++],this.getCellValue,this.caller),this.res)}[Symbol.iterator](){return this}}class c{constructor(e,t,i,s){this.beans=e,this.operandNodes=t,this.getCellValue=i,this.caller=s,this.i=0,this.inner=null,this.res={done:!1,value:void 0}}next(){for(;;){if(this.inner){const e=this.inner.next();if(!e.done)return this.res.done=!1,this.res.value=e.value,this.res;this.inner=null;continue}if(this.i>=this.operandNodes.length)return this.res.done=!0,this.res.value=void 0,this.res;const e=l(this.beans,this.operandNodes[this.i++],this.getCellValue,this.caller);if("value"===e.kind)return this.res.done=!1,this.res.value=e.value,this.res;this.inner=e[Symbol.iterator]()}}[Symbol.iterator](){return this}}function u(e,t){if(t.absolute){const e=Number(t.id)-1;if(!Number.isFinite(e)||e<0)throw new o.FormulaError(28);return e}const i=e.rowModel?.getRowNode?.(t.id);if(null==i?.formulaRowIndex)throw new o.FormulaError(29);return i.formulaRowIndex}function h(e,t){if(t.absolute){const i=e.formula?.getColByRef(t.id);if(!i)throw new o.FormulaError(30);return i}const i=e.colModel.getColById(t.id);if(!i)throw new o.FormulaError(31);return i}class g{constructor(e,t,i,s,o,r){this.beans=e,this.rowStartIndex=t,this.rowEndIndex=i,this.colStart=s,this.colEnd=o,this.getCellValue=r,this.cols=null,this.currentRowIndex=this.rowStartIndex,this.currentColIdx=-1,this.colStartIdx=-1,this.colEndIdx=-1,this.res={done:!1,value:void 0}}initColsOnce(){if(this.cols)return;this.cols=this.beans.colModel.getCols()??[];const e=p(this.beans,this.colStart,this.colEnd);if(!e)return this.colStartIdx=-1,void(this.colEndIdx=-1);[this.colStartIdx,this.colEndIdx]=e,this.currentColIdx=this.colStartIdx}next(){if(!this.cols&&(this.initColsOnce(),this.colStartIdx<0))return this.res.done=!0,this.res;if(this.currentRowIndex<=this.rowEndIndex){const e=(0,s._getClientSideRowModel)(this.beans)?.getFormulaRow(this.currentRowIndex);if(!e)throw new o.FormulaError(32);const t=this.cols[this.currentColIdx];return this.currentColIdx{let t="";for(const i of e)if(null!=i)switch(typeof i){case"string":t+=i;break;case"number":t+=String(i);break;case"boolean":t+=i?"TRUE":"FALSE";break;case"object":t+=i.toString();break;default:throw new s.FormulaError(67)}return t}},11157:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const s=i(90583),o=i(18317),r=i(61626),n=i(35114),a=i(38746);t.default={IF:r.IF,NOW:o.NOW,TODAY:o.TODAY,PRODUCT:n.PRODUCT,SUM:n.SUM,ADD:n.SUM,SUMIF:n.SUMIF,POWER:n.POWER,MIN:r.MIN,MAX:r.MAX,AVERAGE:n.AVERAGE,MEDIAN:n.MEDIAN,COUNT:s.COUNT,COUNTA:s.COUNTA,COUNTBLANK:s.COUNTBLANK,COUNTIF:s.COUNTIF,RAND:n.RAND,CONCAT:a.CONCAT,CONCATENATE:a.CONCAT,"+":n.SUM,"-":n.MINUS,"*":n.PRODUCT,"/":n.DIVIDE,"^":n.POWER,"%":n.PERCENT,"=":r.EQUALS,"&":a.CONCAT,"<>":r.NOT_EQUALS,">":r.GT,">=":r.GTE,"<":r.LT,"<=":r.LTE}},46779:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.shiftNode=t.criteriaToPredicate=t.isValueParam=t.isRangeParam=t.takeBetween=t.iterableWithoutBlanks=t.take=void 0;const s=i(787),o=i(30594);t.take=function(e,t,i){const s=e[Symbol.iterator](),r=new Array(i);for(let e=0;es)throw new o.FormulaError(36,[t,s]);if(r.length"range"===e.kind;t.isValueParam=e=>"value"===e.kind;const r=["<=",">=","<>","<",">","="];function n(e){if("number"==typeof e&&Number.isFinite(e))return e;if(e instanceof Date)return+e;if("string"==typeof e){const t=Number(e);if(!Number.isNaN(t))return t}return null}function a(e){if(null==e)return"";switch(typeof e){case"string":return e;case"number":return String(e);case"boolean":return e?"TRUE":"FALSE"}return e instanceof Date?String(+e):String(e)}const l=(e,t,i)=>{let s=n(t),o=n(i);switch(null!=s&&null!=o||(s=t,o=a(i).toUpperCase()),e){case"<":return o":return o>s;case"<=":return o<=s;case">=":return o>=s;case"=":return o===s;case"<>":return o!==s}return!1},d=(e,t,i)=>{const s=a(i),o=t.test(s);return"="===e?o:!o},c=e=>null==e||""===e;t.criteriaToPredicate=function(e){if("number"==typeof e)return t=>n(t)===e;if("string"!=typeof e)return t=>e===t;const t=e.trim();if(""===t)return c;const i=function(e){for(const t of r)if(e.startsWith(t))return t;return null}(t),s=i?t.substring(i.length):t;if(!/[*?]/.test(s))return l.bind(null,i??"=",s.toUpperCase());if(i&&"="!==i&&"<>"!==i)throw new o.FormulaError(38);const a=function(e){let t="^";for(let i=0;i!!e&&"object"==typeof e&&null!==e&&"row"in e&&"column"in e)(t))return;const{row:n,column:a,endRow:l,endColumn:d}=t;return h(e,s,n,r),u(e,o,a),h(e,s,l,r),void u(e,o,d)}if("operation"===i.type)for(const n of i.operands)(0,t.shiftNode)(e,n,s,o,r)}},84678:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.translateFormulaError=t.getFormulaErrorDefaultMessage=t.getFormulaErrorDefinition=void 0;const i={1:["invalidFormulaValidation","Invalid formula."],2:["formulaParseInvalidCellReference","Invalid cell reference: ${variable}."],3:["formulaParseInvalidRangeEndReference","Invalid range end reference."],4:["formulaParseUnterminatedString","Unterminated string."],5:["formulaParseUnexpectedCharacter","Unexpected character: ${variable}."],6:["formulaParseOperatorStackUnderflow","Operator stack underflow."],7:["formulaParseMissingOperand","Missing operand for '${variable}'."],8:["formulaParseInternalUnexpectedFrameDuringReduction","Internal error: unexpected frame during reduction."],9:["formulaParseInternalUnexpectedFrameBeforeOpenParen","Internal error: unexpected frame before '('."],10:["formulaParseMisplacedComma","Misplaced comma."],11:["formulaParseCommaOutsideFunctionCall","Comma outside of a function call."],12:["formulaParseInternalUnexpectedFrameBeforeCloseParen","Internal error: unexpected frame before ')'."],13:["formulaParseMismatchedParentheses","Mismatched parentheses."],14:["formulaParseUnsupportedOperand","Unsupported operand: ${variable}."],15:["formulaParseMismatchedParenthesesOrUnfinishedFunctionCall","Mismatched parentheses or unfinished function call."],16:["formulaParseInvalidExpression","Invalid expression."],17:["formulaParseFormulasMustBeginWithEquals","Formulas must begin with =."],18:["formulaSerializeStringContainsQuote",'String contains a quote (") which the tokenizer does not support.',"#PARSE!"],19:["formulaSerializeCannotProduceAbsoluteColumnLabelFromId","Cannot produce absolute COLUMN label from id '${variable}'."],20:["formulaSerializeCannotProduceAbsoluteRowIndexFromId","Cannot produce absolute ROW index from id '${variable}'."],21:["formulaSerializeCannotProduceRowIndexFromId","Cannot produce ROW index from id '${variable}'."],22:["formulaSerializeCannotMapColumnIdToA1Label","Cannot map column id '${variable}' to A1 label."],23:["formulaSerializeCannotParseAbsoluteRowIndex","Cannot parse absolute row index '${variable}'."],24:["formulaSerializeCannotMapRowIdToA1Index","Cannot map row id '${variable}' to A1 index."],25:["formulaEvalRangeNotAllowedInScalarContext","Range is not allowed in scalar context."],26:["formulaEvalUnknownReferenceToCell","Unknown reference to cell.","#REF!"],27:["formulaEvalUnsupportedOperation","Unsupported operation ${variable}.","#NAME?"],28:["formulaEvalInvalidAbsoluteRow","Invalid absolute row.","#REF!"],29:["formulaEvalUnrecognisedRowId","Unrecognised row id.","#REF!"],30:["formulaEvalInvalidAbsoluteColumn","Invalid absolute column.","#REF!"],31:["formulaEvalUnrecognisedColumnId","Unrecognised column id.","#REF!"],32:["formulaEvalUnrecognisedRowInRange","Unrecognised row in range.","#REF!"],33:["formulaEvalUnrecognisedReferenceToCell","Unrecognised reference to cell.","#REF!"],34:["formulaEvalIncompleteRangeReference","Incomplete range reference.","#REF!"],35:["formulaFunctionExpectedExactlyArguments","${variable}: expected exactly ${variable} arguments."],36:["formulaFunctionExpectedAtMostArguments","${variable}: expected at most ${variable} arguments."],37:["formulaFunctionExpectedAtLeastArguments","${variable}: expected at least ${variable} arguments."],38:["formulaFunctionInvalidCriteriaWildcardsWithComparator","Invalid criteria: wildcards with comparator.","#VALUE!"],39:["formulaFunctionNonNumericArgument","${variable}: non-numeric argument.","#VALUE!"],40:["formulaFunctionDivisionByZero","${variable}: division by zero.","#DIV/0!"],41:["formulaFunctionCannotCombineDatesWithBigInt","${variable}: cannot combine dates with BigInt.","#VALUE!"],42:["formulaFunctionRequiresAtLeastOneNumericValue","${variable}: requires at least one numeric value.","#PARSE!"],43:["formulaFunctionRequiresAtLeastOneValue","${variable}: requires at least one value."],44:["formulaFunctionAllValuesMustBeNumbers","${variable}: all values must be numbers.","#VALUE!"],45:["formulaFunctionArgumentMustBeRange","${variable}: ${variable} argument must be a range.","#VALUE!"],46:["formulaFunctionArgumentMustBeValue","${variable}: ${variable} argument must be a value.","#VALUE!"],47:["formulaFunctionRangesHaveDifferentSizes","${variable}: ranges have different sizes.","#VALUE!"],48:["formulaFunctionValuesMustBeNumeric","${variable}: values must be numeric.","#VALUE!"],49:["formulaFunctionValuesMustBeIntegers","${variable}: values must be integers.","#VALUE!"],50:["formulaFunctionUnsupportedValueType","${variable}: unsupported value type.","#VALUE!"],51:["formulaServiceCircularReference","Circular reference.","#CIRCREF!"],52:["formulaServiceExpectedParsableFormula","Expected parsable formula.","#PARSE!"],53:["formulaServiceInternalSchedulingError","Internal scheduling error."],54:["formulaFunctionDivNonNumericArgument","DIV: non-numeric argument.","#VALUE!"],55:["formulaFunctionDivDivisionByZero","DIV: division by zero.","#DIV/0!"],56:["formulaFunctionSumCannotCombineDatesWithBigInt","SUM: cannot combine dates with BigInt.","#VALUE!"],57:["formulaFunctionSumRequiresAtLeastOneNumericValue","SUM: requires at least one numeric value.","#PARSE!"],58:["formulaFunctionAvgRequiresAtLeastOneValue","AVG: requires at least one value."],59:["formulaFunctionMedianAllValuesMustBeNumbers","MEDIAN: all values must be numbers.","#VALUE!"],60:["formulaFunctionMedianRequiresAtLeastOneValue","MEDIAN: requires at least one value."],61:["formulaFunctionSumifFirstArgumentMustBeRange","SUMIF: first argument must be a range.","#VALUE!"],62:["formulaFunctionSumifSecondArgumentMustBeValue","SUMIF: second argument must be a value (criteria).","#VALUE!"],63:["formulaFunctionSumifThirdArgumentMustBeRange","SUMIF: third argument must be a range (sum_range).","#VALUE!"],64:["formulaFunctionSumifRangesHaveDifferentSizes","SUMIF: ranges have different sizes.","#VALUE!"],65:["formulaFunctionCountifFirstArgumentMustBeRange","COUNTIF: first argument must be a range.","#VALUE!"],66:["formulaFunctionCountifSecondArgumentMustBeValue","COUNTIF: second argument must be a value (criteria).","#VALUE!"],67:["formulaFunctionConcatUnsupportedValueType","CONCAT: unsupported value type.","#VALUE!"],68:["formulaFunctionMinRequiresAtLeastOneValue","MIN: requires at least one value."],69:["formulaFunctionMaxRequiresAtLeastOneValue","MAX: requires at least one value."],70:["formulaFunctionPercentNonNumericArgument","PERCENT: non-numeric argument.","#VALUE!"],71:["formulaFunctionPowerNonNumericArgument","POWER: non-numeric argument.","#VALUE!"]},s=e=>{if(e?.length)return e.map(e=>String(e))};t.getFormulaErrorDefinition=e=>i[e];t.getFormulaErrorDefaultMessage=(e,i)=>{const[,o]=(0,t.getFormulaErrorDefinition)(e);return((e,t)=>{if(!t?.length)return e;let i=e,s=0;for(;s{const[r,n]=(0,t.getFormulaErrorDefinition)(i);return e(r,n,s(o))}},93916:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.getRefTokenMatches=t.parseA1Ref=t.isStandaloneRefToken=t.isFormulaIdentStart=t.isFormulaIdentChar=void 0;const i=/\$?[A-Za-z]+\$?[0-9]+(?::\$?[A-Za-z]+\$?[0-9]+)?/g,s=/^(\$?)([A-Za-z]+)(\$?)([0-9]+)(?::(\$?)([A-Za-z]+)(\$?)([0-9]+))?$/,o=/[A-Za-z0-9]/;t.isFormulaIdentChar=e=>!!e&&o.test(e);t.isFormulaIdentStart=e=>!!e&&/[A-Za-z]/.test(e);const r=e=>(0,t.isFormulaIdentChar)(e??void 0);t.isStandaloneRefToken=(e,t,i)=>{const s=t>0?e[t-1]:null;if(r(s))return!1;if(i.endsWith(":"))return!0;const o=t+i.length,n=o{const i=(t.allowTrailingColon??!1)&&e.endsWith(":")?e.slice(0,-1):e,o=s.exec(i);if(!o)return null;const[,r,n,a,l,d,c,u,h]=o;return{startCol:n,startRow:l,startColAbsolute:"$"===r,startRowAbsolute:"$"===a,...!(!c||!h)?{endCol:c,endRow:h,endColAbsolute:"$"===d,endRowAbsolute:"$"===u}:null}};t.getRefTokenMatches=e=>{const s=[];let o,r=0;for(i.lastIndex=0;null!=(o=i.exec(e));){let i=o[0];const n=o.index??0,a=n+i.length;a!e.list.some(e=>e.getColId()===t.getColId())).concat(e.list),e.tree=t.tree.filter(t=>!e.tree.some(e=>e.getId()===t.getId())).concat(e.tree),(0,s._updateColsMap)(e))}createColumns(e){const t=new WeakMap,i=new WeakMap,o=this.createGroupHierarchyColumns(e,t,i);if((0,s._areColIdsEqual)(o,this.columns?.list??[]))return;(0,s._destroyColumnTree)(this.beans,this.columns?.tree),this.columns=null;const{colGroupSvc:r}=this.beans,n=r?.findDepth(e.tree)??0,a=r?.balanceTreeForAutoCols(o,n)??[];this.columns={list:o,tree:a,treeDepth:n,map:{}},this.sourceColumnMap=t,this.inverseColumnMap=i}updateColumns(e){}getColumn(e){return this.columns?.list.find(t=>(0,s._columnsMatch)(t,e))??null}getColumns(){return this.columns?.list??null}expandColumnInto(e,t){const i=this.getVirtualColumnsForColumn(t).concat(t);for(const t of i)e.some(e=>(0,s._columnsMatch)(e,t)||e.getColId()===t.getColId())||e.push(t)}compareVirtualColumns(e,t){const i=this.inverseColumnMap.get(e),s=this.inverseColumnMap.get(t);if(i&&i===s){const s=this.sourceColumnMap.get(i)??[];return s?.indexOf(e)-s?.indexOf(t)}return this.sourceColumnMap.get(e)?.includes(t)?1:this.sourceColumnMap.get(t)?.includes(e)?-1:null}insertVirtualColumnsForCol(e,t){const i=this.getVirtualColumnsForColumn(t);if(!i)return[];let o=e.indexOf(t);return o<0&&(o=e.length-1),(0,s._removeAllFromArray)(e,i),e.splice(o,0,...i),i}getVirtualColumnsForColumn(e){return this.isGroupHierarchyColsEnabledForCol(e)?this.sourceColumnMap.get(e)??[]:[]}isGroupHierarchyColsEnabled(e){return e.list.some(e=>this.isGroupHierarchyColsEnabledForCol(e))}isGroupHierarchyColsEnabledForCol(e){const t=e.getColDef();return!(!(0,o._getGroupHierarchy)(t)||!(t.rowGroup||t.enableRowGroup||null!=t.rowGroupIndex||t.pivot||t.enablePivot||null!=t.pivotIndex))}createGroupHierarchyColDefs(e){const t=[],i=e.getColDef(),s=(0,o._getGroupHierarchy)(i);if(!s)return t;if(!this.isGroupHierarchyColsEnabledForCol(e))return t;for(const o of s){let s=null;s="string"==typeof o?this.createColDefForPart(o,e,i):o,s&&t.push(s)}return t}createGroupHierarchyColumns(e,t,i){if(!this.isGroupHierarchyColsEnabled(e))return[];const o=[];for(const r of e.list)for(const e of this.createGroupHierarchyColDefs(r)){const a=e.colId;this.gos.validateColDef(e,a,!0);const l=new s.AgColumn(e,null,a,!0);this.createBean(l),o.push(l),n(t,r,l),i.set(l,r)}return o}createColDefForPart(e,t,i){const{beans:r,gos:n}=this,a=`${s.GROUP_HIERARCHY_COLUMN_ID_PREFIX}-${t.getColId()}-${e}`,l={enableRowGroup:i.enableRowGroup,rowGroup:i.rowGroup,enablePivot:i.enablePivot,hide:!0,editable:!1},d=n.get("groupHierarchyConfig")??{};if(e in d){const t={...l,...d[e]};return t.colId??(t.colId=a),(0,s._addColumnDefaultAndTypes)(r,t,t.colId,!0)}const c=(0,s._addColumnDefaultAndTypes)(r,{colId:a,...l},a,!0),u=this.getLocaleTextFunc(),h=(e,t)=>u?.(e,t)??t;switch(e){case"year":return{...c,headerValueGetter:(0,o.getHeaderValueGetter)(r,t,h(e,"Year")),valueGetter:(0,o.getDatePartValueGetter)(r,t,0)};case"quarter":return{...c,headerValueGetter:(0,o.getHeaderValueGetter)(r,t,h(e,"Quarter")),valueGetter:(0,o.getDatePartValueGetter)(r,t,1,e=>(Math.floor(Number(e)/4)+1).toString())};case"month":return{...c,headerValueGetter:(0,o.getHeaderValueGetter)(r,t,h(e,"Month")),valueGetter:(0,o.getDatePartValueGetter)(r,t,1)};case"formattedMonth":return{...c,headerValueGetter:(0,o.getHeaderValueGetter)(r,t,h("month","Month")),valueGetter:(0,o.getDatePartValueGetter)(r,t,1,e=>{const t=(0,o.numericalMonthToNamedMonth)(e);return h(t.localeKey,t.month)})};case"day":return{...c,headerValueGetter:(0,o.getHeaderValueGetter)(r,t,h(e,"Day")),valueGetter:(0,o.getDatePartValueGetter)(r,t,2)};case"hour":return{...c,headerValueGetter:(0,o.getHeaderValueGetter)(r,t,h(e,"Hour")),valueGetter:(0,o.getDatePartValueGetter)(r,t,3)};case"minute":return{...c,headerValueGetter:(0,o.getHeaderValueGetter)(r,t,h(e,"Minute")),valueGetter:(0,o.getDatePartValueGetter)(r,t,4)};case"second":return{...c,headerValueGetter:(0,o.getHeaderValueGetter)(r,t,h(e,"Second")),valueGetter:(0,o.getDatePartValueGetter)(r,t,5)};default:return null}}}function n(e,t,i){const s=e.get(t);e.set(t,(s??[]).concat(i))}t.GroupHierarchyColService=r},85948:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.GroupHierarchyModule=void 0;const s=i(19586),o=i(11513);t.GroupHierarchyModule={moduleName:"GroupHierarchy",version:s.VERSION,beans:[o.GroupHierarchyColService]}},81327:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t._getGroupHierarchy=t.numericalMonthToNamedMonth=t.getHeaderValueGetter=t.getDatePartValueGetter=void 0;const s=i(76624);t.getDatePartValueGetter=(e,t,i,o)=>r=>{const n=(({valueSvc:e,dataTypeSvc:t},i,o)=>{const r=e.getValue(i,o,"data");let n=null;r instanceof Date?n=r:"string"==typeof r&&(n=(t?.getDateParserFunction(i)??s._parseDateTimeFromString)(r)??null);return n})(e,t,r.node),a=(0,s._getDateParts)(n);return a?o?.(a[i])??a[i]:null};t.getHeaderValueGetter=({colNames:e},t,i)=>s=>{const o=e.getDisplayNameForColumn(t,s.location);return o?`${o} (${i})`:""};const o=Object.fromEntries(s._MONTHS.map(e=>[e,e.toLowerCase()]));t.numericalMonthToNamedMonth=e=>{const t=s._MONTHS[Number.parseInt(e,10)-1]??e;return{month:t,localeKey:o[t]??e}},t._getGroupHierarchy=function(e){return e.groupHierarchy??e.rowGroupingHierarchy}},63159:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.GridLicenseManager=void 0;const s=i(76624),o=i(26565),r=i(3879);class n extends s.BeanStub{constructor(){super(...arguments),this.beanName="licenseManager"}postConstruct(){this.validateLicense()}validateLicense(){this.licenseManager=new o.LicenseManager((0,s._getDocument)(this.beans)),this.licenseManager.validateLicense()}static getLicenseDetails(e){return new o.LicenseManager(null).getLicenseDetails(e)}getWatermarkSelector(){return r.AgWatermarkSelector}isDisplayWatermark(){return this.licenseManager.isDisplayWatermark()}getWatermarkMessage(){return this.licenseManager.getWatermarkMessage()}static setLicenseKey(e){o.LicenseManager.setLicenseKey(e)}static setChartsLicenseManager(e){o.LicenseManager.setChartsLicenseManager(e)}}t.GridLicenseManager=n},26565:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.LicenseManager=void 0;const s=i(76624),o=i(51555),r={"01":"GRID","02":"CHARTS","0102":"BOTH"},n="https://www.ag-grid.com/licensing/";class a{constructor(e){this.watermarkMessage=void 0,this.totalMessageLength=124,this.document=e,this.md5=new o.MD5,this.md5.init()}validateLicense(){const e=this.getLicenseDetails(a.licenseKey),t=`AG Grid ${"BOTH"===e.currentLicenseType?"and AG Charts ":""}Enterprise`,i=void 0===e.suppliedLicenseType?"":`AG ${"BOTH"===e.suppliedLicenseType?"Grid and AG Charts":"GRID"===e.suppliedLicenseType?"Grid":"Charts"} Enterprise`;if(e.missing)this.isWebsiteUrl()&&!this.isForceWatermark()||this.outputMissingLicenseKey(t);else if(e.expired){const s=a.getGridReleaseDate(),o=a.formatDate(s);this.outputExpiredKey(e.expiry,o,t,i)}else e.valid?e.isTrial&&e.trialExpired&&this.outputExpiredTrialKey(e.expiry,t,i):this.outputInvalidLicenseKey(!!e.incorrectLicenseType,t,i)}static extractExpiry(e){const t=e.substring(e.lastIndexOf("_")+1,e.length);return new Date(parseInt(a.decode(t),10))}static extractLicenseComponents(e){let t=e.replace(/[\u200B-\u200D\uFEFF]/g,"");if(t=t.replace(/\r?\n|\r/g,""),e.length<=32)return{md5:null,license:e,version:null,isTrial:null};const i=t.length-32,s=t.substring(i),o=t.substring(0,i),[r,n,l]=a.extractBracketedInformation(t);return{md5:s,license:o,version:r,isTrial:n,type:l}}getLicenseDetails(e){const t=a.chartsLicenseManager?"BOTH":"GRID";if(!e?.length)return{licenseKey:e,valid:!1,missing:!0,currentLicenseType:t};const i=a.getGridReleaseDate(),{md5:s,license:o,version:n,isTrial:l,type:d}=a.extractLicenseComponents(e);let c,u,h,g=s===this.md5.md5(o)&&!e.includes("For_Trialing_ag-Grid_Only"),p=null,m=!1;function f(){const e=new Date;c=pp,n){case"legacy":case"2":l&&f();break;case"3":d?.length?(h=d,d!==r["01"]&&d!==r["0102"]||"BOTH"===t&&"BOTH"!==h?(g=!1,m=!0):l&&f()):g=!1}return g?{licenseKey:e,valid:g,expiry:a.formatDate(p),expired:u,version:n,isTrial:l,trialExpired:c,incorrectLicenseType:m,currentLicenseType:t,suppliedLicenseType:h}:{licenseKey:e,valid:g,incorrectLicenseType:m,currentLicenseType:t,suppliedLicenseType:h}}isDisplayWatermark(){return this.isForceWatermark()||!this.isLocalhost()&&!this.isWebsiteUrl()&&!!this.watermarkMessage?.length}getWatermarkMessage(){return this.watermarkMessage||""}getHostname(){const e=(this.document.defaultView||window).location,{hostname:t=""}=e;return t}isForceWatermark(){const e=(this.document.defaultView||window).location,{pathname:t}=e;return!!t&&t.includes("forceWatermark")}isWebsiteUrl(){return null!==this.getHostname().match(/^((?:[\w-]+\.)?ag-grid\.com)$/)}isLocalhost(){return null!==this.getHostname().match(/^(?:127\.0\.0\.1|localhost)$/)}static formatDate(e){const t=e.getDate(),i=e.getMonth(),s=e.getFullYear();return t+" "+["January","February","March","April","May","June","July","August","September","October","November","December"][i]+" "+s}static getGridReleaseDate(){return new Date(parseInt(a.decode(a.RELEASE_INFORMATION),10))}static decode(e){const t="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";let i,s,o,r,n,l,d,c="",u=0;const h=e.replace(/[^A-Za-z0-9+/=]/g,"");for(;u>4,s=(15&n)<<4|l>>2,o=(3&l)<<6|d,c+=String.fromCharCode(i),64!=l&&(c+=String.fromCharCode(s)),64!=d&&(c+=String.fromCharCode(o));return c=a.utf8_decode(c),c}static utf8_decode(e){e=e.replace(/rn/g,"n");let t="";for(let i=0;i127&&s<2048?(t+=String.fromCharCode(s>>6|192),t+=String.fromCharCode(63&s|128)):(t+=String.fromCharCode(s>>12|224),t+=String.fromCharCode(s>>6&63|128),t+=String.fromCharCode(63&s|128))}return t}static setChartsLicenseManager(e){this.chartsLicenseManager=e,this.chartsLicenseManager?.setLicenseKey(this.licenseKey,!0)}static setLicenseKey(e){(0,s._exists)(this.licenseKey)&&this.licenseKey!==e&&(0,s._logPreInitWarn)(291,void 0,"AG Grid: License Key being set multiple times with different values. This can result in an incorrect license key being used."),this.licenseKey=e,this.chartsLicenseManager?.setLicenseKey(e,!0)}static extractBracketedInformation(e){if(!e.includes("["))return["legacy",!1,void 0];const t=e.match(/\[(.*?)\]/g).map(e=>e.replace("[","").replace("]",""));if(!t||0===t.length)return["legacy",!1,void 0];const i=1===t.filter(e=>"TRIAL"===e).length,s=t.filter(e=>0===e.indexOf("v"))[0];return[s?s.replace("v",""):"legacy",i,r[t.filter(e=>r[e])[0]]]}centerPadAndOutput(e){const t=this.totalMessageLength-e.length;console.error(e.padStart(t/2+e.length,"*").padEnd(this.totalMessageLength,"*"))}padAndOutput(e,t="*",i=""){console.error(e.padEnd(this.totalMessageLength-i.length,t)+i)}outputInvalidLicenseKey(e,t,i){e?(this.centerPadAndOutput(""),this.centerPadAndOutput(` ${t} License `),this.centerPadAndOutput(" Incompatible License Key "),this.padAndOutput(`* Your license key is for ${i} only and does not cover you for ${t}.`," ","*"),this.padAndOutput(`* To troubleshoot your license key visit ${n}.`," ","*"),this.centerPadAndOutput(""),this.centerPadAndOutput("")):(this.centerPadAndOutput(""),this.centerPadAndOutput(` ${t} License `),this.centerPadAndOutput(" Invalid License Key "),this.padAndOutput("* Your license key is not valid."," ","*"),this.padAndOutput(`* To troubleshoot your license key visit ${n}.`," ","*"),this.centerPadAndOutput(""),this.centerPadAndOutput("")),this.watermarkMessage="Invalid License"}outputExpiredTrialKey(e,t,i){this.centerPadAndOutput(""),this.centerPadAndOutput(` ${t} License `),this.centerPadAndOutput(" Trial Period Expired. "),this.padAndOutput(`* Your trial only license for ${i} expired on ${e}.`," ","*"),this.padAndOutput("* Please email info@ag-grid.com to purchase a license."," ","*"),this.centerPadAndOutput(""),this.centerPadAndOutput(""),this.watermarkMessage="Trial Period Expired"}outputMissingLicenseKey(e){this.centerPadAndOutput(""),this.centerPadAndOutput(` ${e} License `),this.centerPadAndOutput(" License Key Not Found "),this.padAndOutput(`* All ${e} features are unlocked for trial.`," ","*"),this.padAndOutput("* If you want to hide the watermark please email info@ag-grid.com for a trial license key."," ","*"),this.centerPadAndOutput(""),this.centerPadAndOutput(""),this.watermarkMessage="For Trial Use Only"}outputExpiredKey(e,t,i,s){this.centerPadAndOutput(""),this.centerPadAndOutput(` ${i} License `),this.centerPadAndOutput(" Incompatible Software Version "),this.padAndOutput(`* Your license key works with versions${""==s?"":` of ${s}`} released before ${e}.`," ","*"),this.padAndOutput(`* The version you are trying to use was released on ${t}.`," ","*"),this.padAndOutput("* Please contact info@ag-grid.com to renew your license key."," ","*"),this.centerPadAndOutput(""),this.centerPadAndOutput(""),this.watermarkMessage="License Expired"}}t.LicenseManager=a,a.RELEASE_INFORMATION="MTc3MDgwOTgzNDk5MQ=="},51555:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.MD5=void 0;t.MD5=class{constructor(){this.ieCompatibility=!1}init(){this.ieCompatibility="5d41402abc4b2a76b9719d911017c592"!=this.md5("hello")}md5cycle(e,t){let i=e[0],s=e[1],o=e[2],r=e[3];i=this.ff(i,s,o,r,t[0],7,-680876936),r=this.ff(r,i,s,o,t[1],12,-389564586),o=this.ff(o,r,i,s,t[2],17,606105819),s=this.ff(s,o,r,i,t[3],22,-1044525330),i=this.ff(i,s,o,r,t[4],7,-176418897),r=this.ff(r,i,s,o,t[5],12,1200080426),o=this.ff(o,r,i,s,t[6],17,-1473231341),s=this.ff(s,o,r,i,t[7],22,-45705983),i=this.ff(i,s,o,r,t[8],7,1770035416),r=this.ff(r,i,s,o,t[9],12,-1958414417),o=this.ff(o,r,i,s,t[10],17,-42063),s=this.ff(s,o,r,i,t[11],22,-1990404162),i=this.ff(i,s,o,r,t[12],7,1804603682),r=this.ff(r,i,s,o,t[13],12,-40341101),o=this.ff(o,r,i,s,t[14],17,-1502002290),s=this.ff(s,o,r,i,t[15],22,1236535329),i=this.gg(i,s,o,r,t[1],5,-165796510),r=this.gg(r,i,s,o,t[6],9,-1069501632),o=this.gg(o,r,i,s,t[11],14,643717713),s=this.gg(s,o,r,i,t[0],20,-373897302),i=this.gg(i,s,o,r,t[5],5,-701558691),r=this.gg(r,i,s,o,t[10],9,38016083),o=this.gg(o,r,i,s,t[15],14,-660478335),s=this.gg(s,o,r,i,t[4],20,-405537848),i=this.gg(i,s,o,r,t[9],5,568446438),r=this.gg(r,i,s,o,t[14],9,-1019803690),o=this.gg(o,r,i,s,t[3],14,-187363961),s=this.gg(s,o,r,i,t[8],20,1163531501),i=this.gg(i,s,o,r,t[13],5,-1444681467),r=this.gg(r,i,s,o,t[2],9,-51403784),o=this.gg(o,r,i,s,t[7],14,1735328473),s=this.gg(s,o,r,i,t[12],20,-1926607734),i=this.hh(i,s,o,r,t[5],4,-378558),r=this.hh(r,i,s,o,t[8],11,-2022574463),o=this.hh(o,r,i,s,t[11],16,1839030562),s=this.hh(s,o,r,i,t[14],23,-35309556),i=this.hh(i,s,o,r,t[1],4,-1530992060),r=this.hh(r,i,s,o,t[4],11,1272893353),o=this.hh(o,r,i,s,t[7],16,-155497632),s=this.hh(s,o,r,i,t[10],23,-1094730640),i=this.hh(i,s,o,r,t[13],4,681279174),r=this.hh(r,i,s,o,t[0],11,-358537222),o=this.hh(o,r,i,s,t[3],16,-722521979),s=this.hh(s,o,r,i,t[6],23,76029189),i=this.hh(i,s,o,r,t[9],4,-640364487),r=this.hh(r,i,s,o,t[12],11,-421815835),o=this.hh(o,r,i,s,t[15],16,530742520),s=this.hh(s,o,r,i,t[2],23,-995338651),i=this.ii(i,s,o,r,t[0],6,-198630844),r=this.ii(r,i,s,o,t[7],10,1126891415),o=this.ii(o,r,i,s,t[14],15,-1416354905),s=this.ii(s,o,r,i,t[5],21,-57434055),i=this.ii(i,s,o,r,t[12],6,1700485571),r=this.ii(r,i,s,o,t[3],10,-1894986606),o=this.ii(o,r,i,s,t[10],15,-1051523),s=this.ii(s,o,r,i,t[1],21,-2054922799),i=this.ii(i,s,o,r,t[8],6,1873313359),r=this.ii(r,i,s,o,t[15],10,-30611744),o=this.ii(o,r,i,s,t[6],15,-1560198380),s=this.ii(s,o,r,i,t[13],21,1309151649),i=this.ii(i,s,o,r,t[4],6,-145523070),r=this.ii(r,i,s,o,t[11],10,-1120210379),o=this.ii(o,r,i,s,t[2],15,718787259),s=this.ii(s,o,r,i,t[9],21,-343485551),e[0]=this.add32(i,e[0]),e[1]=this.add32(s,e[1]),e[2]=this.add32(o,e[2]),e[3]=this.add32(r,e[3])}cmn(e,t,i,s,o,r){return t=this.add32(this.add32(t,e),this.add32(s,r)),this.add32(t<>>32-o,i)}ff(e,t,i,s,o,r,n){return this.cmn(t&i|~t&s,e,t,o,r,n)}gg(e,t,i,s,o,r,n){return this.cmn(t&s|i&~s,e,t,o,r,n)}hh(e,t,i,s,o,r,n){return this.cmn(t^i^s,e,t,o,r,n)}ii(e,t,i,s,o,r,n){return this.cmn(i^(t|~s),e,t,o,r,n)}md51(e){const t=e.length,i=[1732584193,-271733879,-1732584194,271733878];let s;for(s=64;s<=e.length;s+=64)this.md5cycle(i,this.md5blk(e.substring(s-64,s)));e=e.substring(s-64);const o=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0];for(s=0;s>2]|=e.charCodeAt(s)<<(s%4<<3);if(o[s>>2]|=128<<(s%4<<3),s>55)for(this.md5cycle(i,o),s=0;s<16;s++)o[s]=0;return o[14]=8*t,this.md5cycle(i,o),i}md5blk(e){const t=[];for(let i=0;i<64;i+=4)t[i>>2]=e.charCodeAt(i)+(e.charCodeAt(i+1)<<8)+(e.charCodeAt(i+2)<<16)+(e.charCodeAt(i+3)<<24);return t}rhex(e){const t="0123456789abcdef".split("");let i="",s=0;for(;s<4;s++)i+=t[e>>8*s+4&15]+t[e>>8*s&15];return i}hex(e){for(let t=0;t>16)+(t>>16)+(i>>16)<<16|65535&i}}},60454:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.watermarkCSS=void 0,t.watermarkCSS='.ag-watermark{bottom:20px;color:#9b9b9b;opacity:.7;position:absolute;transition:opacity 1s ease-out 3s}:where(.ag-ltr) .ag-watermark{right:25px}:where(.ag-rtl) .ag-watermark{left:25px}.ag-watermark:before{background-image:url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyMDkiIGhlaWdodD0iMzYiIGZpbGw9Im5vbmUiIHZpZXdCb3g9IjAgMCAyMDkgMzYiPjxwYXRoIGZpbGw9IiM5YjliOWIiIGQ9Ik0xOTIuOTkzIDIzLjY1OHYtNy45NDZoLTEzLjU0MWwtNy45NDcgNy45NDZ6TTIwOC4yNSAzLjk1aC0xNi45NzRsLTguMDEgNy45NDdoMjQuOTg0ek0xNjMuNjIyIDMxLjYwNWw0LjA2OS00LjA2OWgxMy43MzJ2Ny45NDdoLTE3LjgwMXoiLz48cGF0aCBmaWxsPSIjOWI5YjliIiBkPSJNMTY2LjYxIDE5Ljc4aDguNzczbDguMDEtNy45NDZIMTY2LjYxek0xNTcuMDExIDMxLjYwNWg2LjYxMWw3Ljg4My03Ljk0N2gtMTQuNDk0ek0xOTEuMjc2IDMuOTVsLTQuMDY4IDQuMDdIMTYxLjI3Vi4wNzJoMzAuMDA2ek0yMC44NCAzMC4yMDZIOC4zNzhsLTIuMTYyIDUuMzRILjc1TDEyLjI1NyA4LjU5Mmg0Ljc2OEwyOC41MyAzNS41NDZoLTUuNTN6bS0xLjcxNy00LjI2TDE0LjYwOSAxNC45NWwtNC41MTQgMTAuOTk4ek0xMDQuNDM3IDE4LjUwOWMxLjU4OS0yLjM1MiA1LjU5NC0yLjYwNyA3LjI0Ny0yLjYwN3Y0LjU3OGMtMi4wMzQgMC00LjA2OS4wNjMtNS4yNzcuOTUzLTEuMjA3Ljg5LTEuODQzIDIuMDk4LTEuODQzIDMuNTZ2MTAuNTUzaC00Ljk1OVYxNS45MDJoNC43Njh6TTExOS4zNzYgMTUuOTAyaC00Ljk1OHYxOS42NDRoNC45NTh6TTExOS4zNzYgNy4xM2gtNC45NTh2NS44NDhoNC45NTh6TTE0My45NzkgNy4xM3YyOC40MTZoLTQuNzY4bC0uMTI3LTIuOTg4YTguMyA4LjMgMCAwIDEtMi42NyAyLjQ4Yy0xLjA4MS41NzItMi40MTYuODktMy45NDIuODktMS4zMzUgMC0yLjYwNi0uMjU1LTMuNjg3LS43LTEuMTQ0LS41MDgtMi4xNjItMS4xNDQtMi45ODgtMi4wMzRhOS42IDkuNiAwIDAgMS0xLjk3MS0zLjE3OWMtLjUwOC0xLjIwNy0uNjk5LTIuNjA2LS42OTktNC4xMzJzLjI1NC0yLjkyNC42OTktNC4xOTZjLjUwOS0xLjI3MSAxLjE0NS0yLjM1MiAxLjk3MS0zLjI0MnMxLjg0NC0xLjU4OSAyLjk4OC0yLjA5OCAyLjM1Mi0uNzYzIDMuNjg3LS43NjNjMS41MjYgMCAyLjc5Ny4yNTUgMy44NzguODI3czEuOTcxIDEuMzM1IDIuNjcgMi40MTZWNy4xOTNoNC45NTl6bS0xMC40MjYgMjQuNTM4YzEuNjUzIDAgMi45MjQtLjU3MiAzLjk0MS0xLjY1M3MxLjUyNi0yLjU0MyAxLjUyNi00LjMyMy0uNTA5LTMuMTc4LTEuNTI2LTQuMzIyYy0xLjAxNy0xLjA4MS0yLjI4OC0xLjY1My0zLjk0MS0xLjY1My0xLjU5IDAtMi45MjUuNTcyLTMuODc4IDEuNjUzLTEuMDE3IDEuMDgtMS41MjYgMi41NDMtMS41MjYgNC4zMjIgMCAxLjc4LjUwOSAzLjE4IDEuNTI2IDQuMjYgMS4wMTcgMS4xNDQgMi4yODggMS43MTYgMy44NzggMS43MTZNNTcuMjAyIDIwLjM1M0g0NC45MzN2NC4yNTloNi45OTNjLS4xOSAyLjE2MS0xLjAxNyAzLjgxNC0yLjQxNiA1LjE1LTEuMzk4IDEuMjctMy4xNzggMS45MDYtNS40NjcgMS45MDYtMS4yNzEgMC0yLjQ4LS4yNTQtMy40OTYtLjY5OWE3IDcgMCAwIDEtMi43MzQtMS45N2MtLjc2My0uODI3LTEuMzM1LTEuODQ0LTEuNzgtMy4wNTJzLS42MzYtMi40OC0uNjM2LTMuOTQyLjE5LTIuNzMzLjYzNi0zLjk0MWMuMzgxLTEuMjA4IDEuMDE3LTIuMTYyIDEuNzgtMy4wNTIuNzYzLS44MjYgMS42NTMtMS40NjIgMi43MzMtMS45N2E5LjEgOS4xIDAgMCAxIDMuNTYtLjdxNC4wMDUgMCA2LjEwMyAxLjkwN2wzLjMwNi0zLjMwNWMtMi40OC0xLjkwNy01LjY1OC0yLjkyNS05LjQwOS0yLjkyNS0yLjA5NyAwLTQuMDA0LjMxOC01LjcyMSAxLjAxOC0xLjcxNi42OTktMy4xNzkgMS41ODktNC4zODYgMi43OTdBMTIuMSAxMi4xIDAgMCAwIDMxLjIgMTYuMjJjLS42MzUgMS43MTctLjk1MyAzLjYyNC0uOTUzIDUuNjU4cy4zMTggMy45NDIgMS4wMTcgNS42NThjLjcgMS43MTcgMS41OSAzLjE3OSAyLjc5NyA0LjM4N2ExMi4xIDEyLjEgMCAwIDAgNC4zODcgMi43OTdjMS43MTYuNyAzLjYyMyAxLjAxNyA1LjY1NyAxLjAxNyAyLjAzNSAwIDMuODc4LS4zMTggNS41MzEtMS4wMTcgMS42NTMtLjcgMy4wNTItMS41OSA0LjE5Ni0yLjc5N3ExLjcxNi0xLjgxMiAyLjY3LTQuMzg3Yy42MzYtMS43MTYuOTU0LTMuNjIzLjk1NC01LjY1OHYtLjgyNmMtLjE5MS0uMTI3LS4yNTUtLjQ0NS0uMjU1LS43TTk1Ljk4MiAyMC4zNTNoLTEyLjI3djQuMjU5aDYuOTkzYy0uMTkgMi4xNjEtMS4wMTcgMy44MTQtMi40MTYgNS4xNS0xLjM5OCAxLjI3LTMuMTc4IDEuOTA2LTUuNDY3IDEuOTA2LTEuMjcxIDAtMi40OC0uMjU0LTMuNDk2LS42OTlhNyA3IDAgMCAxLTIuNzM0LTEuOTdjLS43NjMtLjgyNy0xLjMzNS0xLjg0NC0xLjc4LTMuMDUycy0uNjM2LTIuNDgtLjYzNi0zLjk0Mi4xOS0yLjczMy42MzYtMy45NDFjLjM4MS0xLjIwOCAxLjAxNy0yLjE2MiAxLjc4LTMuMDUyLjc2My0uODI2IDEuNjUzLTEuNDYyIDIuNzM0LTEuOTdhOS4xIDkuMSAwIDAgMSAzLjU2LS43cTQuMDA1IDAgNi4xMDMgMS45MDdsMy4zMDUtMy4zMDVjLTIuNDc5LTEuOTA3LTUuNjU4LTIuOTI1LTkuNDA4LTIuOTI1LTIuMDk4IDAtNC4wMDUuMzE4LTUuNzIyIDEuMDE4LTEuNzE2LjY5OS0zLjE3OCAxLjU4OS00LjM4NiAyLjc5N2ExMi4xIDEyLjEgMCAwIDAtMi43OTcgNC4zODZjLS42MzYgMS43MTctLjk1NCAzLjYyNC0uOTU0IDUuNjU4cy4zMTggMy45NDIgMS4wMTcgNS42NThjLjcgMS43MTcgMS41OSAzLjE3OSAyLjc5NyA0LjM4N2ExMi4xIDEyLjEgMCAwIDAgNC4zODcgMi43OTdjMS43MTYuNyAzLjYyMyAxLjAxNyA1LjY1OCAxLjAxNyAyLjAzNCAwIDMuODc4LS4zMTggNS41My0xLjAxNyAxLjY1My0uNyAzLjA1Mi0xLjU5IDQuMTk2LTIuNzk3cTEuNzE4LTEuODEyIDIuNjctNC4zODdjLjYzNi0xLjcxNi45NTQtMy42MjMuOTU0LTUuNjU4di0uODI2Yy0uMTktLjEyNy0uMjU1LS40NDUtLjI1NS0uNyIvPjwvc3ZnPg==");background-repeat:no-repeat;background-size:170px 40px;content:"";display:block;height:40px;width:170px}.ag-watermark-text{font-family:Impact,sans-serif;font-size:19px;font-weight:700;opacity:.5}:where(.ag-ltr) .ag-watermark-text{padding-left:.7rem}:where(.ag-rtl) .ag-watermark-text{padding-right:.7rem}'},3879:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.AgWatermarkSelector=void 0;const s=i(76624),o=i(60454),r={tag:"div",cls:"ag-watermark",children:[{tag:"div",ref:"eLicenseTextRef",cls:"ag-watermark-text"}]};class n extends s.Component{wireBeans(e){this.licenseManager=e.licenseManager}constructor(){super(r),this.eLicenseTextRef=s.RefPlaceholder,this.registerCSS(o.watermarkCSS)}postConstruct(){const e=this.shouldDisplayWatermark();this.setDisplayed(e),e&&(this.eLicenseTextRef.textContent=this.licenseManager.getWatermarkMessage(),window.setTimeout(()=>this.addCss("ag-opacity-zero"),0),window.setTimeout(()=>this.setDisplayed(!1),5e3))}shouldDisplayWatermark(){return this.licenseManager.isDisplayWatermark()}}t.AgWatermarkSelector={selector:"AG-WATERMARK",component:n}},44769:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.createGrid=void 0;const s=i(85608),o=i(76624),r=i(10012);(0,o._setUmd)(),o.ModuleRegistry.registerModules([r.AllEnterpriseModule]),s.__exportStar(i(76624),t),s.__exportStar(i(10012),t);var n=i(46825);Object.defineProperty(t,"createGrid",{enumerable:!0,get:function(){return n.createGrid}})},46825:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.createGrid=void 0;const s=i(76624),o=i(10012);t.createGrid=function(e,t,i){return function(){const e=globalThis?.agCharts,t=e?.AgChartsEnterpriseModule??e?.AgChartsCommunityModule;t&&s.ModuleRegistry.registerModules([o.IntegratedChartsModule.with(t),o.SparklinesModule.with(t)])}(),(0,s.createGrid)(e,t,i)}},10012:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.PivotModule=t.AggregationModule=t.TreeDataModule=t.SparklinesModule=t.FormulaModule=t.ServerSideRowModelApiModule=t.ServerSideRowModelModule=t.RangeSelectionModule=t.CellSelectionModule=t.MasterDetailModule=t.NewFiltersToolPanelModule=t.FiltersToolPanelModule=t.RowNumbersModule=t.ClipboardModule=t.ViewportRowModelModule=t.SideBarModule=t.RowGroupingModule=t.RowGroupingPanelModule=t.GroupFilterModule=t.MultiFilterModule=t.ExcelExportModule=t.StatusBarModule=t.SetFilterModule=t.RichSelectModule=t.ContextMenuModule=t.ColumnMenuModule=t.MenuModule=t.ColumnsToolPanelModule=t.AiToolkitModule=t.AdvancedFilterModule=t._AgGroupComponentSelector=t._AgGroupComponent=t._AgTabbedLayout=t._AgMenuItemRenderer=t._AgContextMenuService=t._AgMenuItemComponent=t._AgMenuList=t._AgPanel=t._AgDialog=t._AgColorPickerSelector=t._AgColorPicker=t._AgInputRangeSelector=t._AgInputRange=t._AgSliderSelector=t._AgSlider=t._AgVirtualListDragFeature=t._AgVirtualList=t.exportMultipleSheetsAsExcel=t.getMultipleSheetsAsExcel=t.LicenseManager=void 0,t.AllEnterpriseModule=t.IntegratedChartsModule=t.GridChartsModule=t.BatchEditModule=t.FindModule=void 0;const s=i(85608);var o=i(63159);Object.defineProperty(t,"LicenseManager",{enumerable:!0,get:function(){return o.GridLicenseManager}});var r=i(81790);Object.defineProperty(t,"getMultipleSheetsAsExcel",{enumerable:!0,get:function(){return r.getMultipleSheetsAsExcel}}),Object.defineProperty(t,"exportMultipleSheetsAsExcel",{enumerable:!0,get:function(){return r.exportMultipleSheetsAsExcel}});var n=i(93053);Object.defineProperty(t,"_AgVirtualList",{enumerable:!0,get:function(){return n.AgVirtualList}});var a=i(63809);Object.defineProperty(t,"_AgVirtualListDragFeature",{enumerable:!0,get:function(){return a.AgVirtualListDragFeature}});var l=i(76917);Object.defineProperty(t,"_AgSlider",{enumerable:!0,get:function(){return l.AgSlider}}),Object.defineProperty(t,"_AgSliderSelector",{enumerable:!0,get:function(){return l.AgSliderSelector}});var d=i(20489);Object.defineProperty(t,"_AgInputRange",{enumerable:!0,get:function(){return d.AgInputRange}}),Object.defineProperty(t,"_AgInputRangeSelector",{enumerable:!0,get:function(){return d.AgInputRangeSelector}});var c=i(48139);Object.defineProperty(t,"_AgColorPicker",{enumerable:!0,get:function(){return c.AgColorPicker}}),Object.defineProperty(t,"_AgColorPickerSelector",{enumerable:!0,get:function(){return c.AgColorPickerSelector}});var u=i(87144);Object.defineProperty(t,"_AgDialog",{enumerable:!0,get:function(){return u.AgDialog}});var h=i(44948);Object.defineProperty(t,"_AgPanel",{enumerable:!0,get:function(){return h.AgPanel}});var g=i(67255);Object.defineProperty(t,"_AgMenuList",{enumerable:!0,get:function(){return g.AgMenuList}});var p=i(75749);Object.defineProperty(t,"_AgMenuItemComponent",{enumerable:!0,get:function(){return p.AgMenuItemComponent}});var m=i(87479);Object.defineProperty(t,"_AgContextMenuService",{enumerable:!0,get:function(){return m.AgContextMenuService}});var f=i(50531);Object.defineProperty(t,"_AgMenuItemRenderer",{enumerable:!0,get:function(){return f.AgMenuItemRenderer}});var C=i(69424);Object.defineProperty(t,"_AgTabbedLayout",{enumerable:!0,get:function(){return C.AgTabbedLayout}});var v=i(61994);Object.defineProperty(t,"_AgGroupComponent",{enumerable:!0,get:function(){return v.AgGroupComponent}}),Object.defineProperty(t,"_AgGroupComponentSelector",{enumerable:!0,get:function(){return v.AgGroupComponentSelector}});var w=i(67976);Object.defineProperty(t,"AdvancedFilterModule",{enumerable:!0,get:function(){return w.AdvancedFilterModule}});var b=i(95498);Object.defineProperty(t,"AiToolkitModule",{enumerable:!0,get:function(){return b.AiToolkitModule}});var y=i(86455);Object.defineProperty(t,"ColumnsToolPanelModule",{enumerable:!0,get:function(){return y.ColumnsToolPanelModule}});var S=i(37130);Object.defineProperty(t,"MenuModule",{enumerable:!0,get:function(){return S.MenuModule}}),Object.defineProperty(t,"ColumnMenuModule",{enumerable:!0,get:function(){return S.ColumnMenuModule}}),Object.defineProperty(t,"ContextMenuModule",{enumerable:!0,get:function(){return S.ContextMenuModule}});var x=i(69327);Object.defineProperty(t,"RichSelectModule",{enumerable:!0,get:function(){return x.RichSelectModule}});var F=i(49002);Object.defineProperty(t,"SetFilterModule",{enumerable:!0,get:function(){return F.SetFilterModule}});var R=i(78450);Object.defineProperty(t,"StatusBarModule",{enumerable:!0,get:function(){return R.StatusBarModule}});var P=i(92886);Object.defineProperty(t,"ExcelExportModule",{enumerable:!0,get:function(){return P.ExcelExportModule}});var M=i(75434);Object.defineProperty(t,"MultiFilterModule",{enumerable:!0,get:function(){return M.MultiFilterModule}});var E=i(81442);Object.defineProperty(t,"GroupFilterModule",{enumerable:!0,get:function(){return E.GroupFilterModule}}),Object.defineProperty(t,"RowGroupingPanelModule",{enumerable:!0,get:function(){return E.RowGroupingPanelModule}}),Object.defineProperty(t,"RowGroupingModule",{enumerable:!0,get:function(){return E.RowGroupingModule}});var A=i(26358);Object.defineProperty(t,"SideBarModule",{enumerable:!0,get:function(){return A.SideBarModule}});var T=i(7794);Object.defineProperty(t,"ViewportRowModelModule",{enumerable:!0,get:function(){return T.ViewportRowModelModule}});var D=i(13766);Object.defineProperty(t,"ClipboardModule",{enumerable:!0,get:function(){return D.ClipboardModule}});var I=i(20976);Object.defineProperty(t,"RowNumbersModule",{enumerable:!0,get:function(){return I.RowNumbersModule}});var k=i(2515);Object.defineProperty(t,"FiltersToolPanelModule",{enumerable:!0,get:function(){return k.FiltersToolPanelModule}}),Object.defineProperty(t,"NewFiltersToolPanelModule",{enumerable:!0,get:function(){return k.NewFiltersToolPanelModule}});var L=i(21594);Object.defineProperty(t,"MasterDetailModule",{enumerable:!0,get:function(){return L.MasterDetailModule}});var O=i(266);Object.defineProperty(t,"CellSelectionModule",{enumerable:!0,get:function(){return O.CellSelectionModule}}),Object.defineProperty(t,"RangeSelectionModule",{enumerable:!0,get:function(){return O.RangeSelectionModule}});var G=i(99074);Object.defineProperty(t,"ServerSideRowModelModule",{enumerable:!0,get:function(){return G.ServerSideRowModelModule}}),Object.defineProperty(t,"ServerSideRowModelApiModule",{enumerable:!0,get:function(){return G.ServerSideRowModelApiModule}});var N=i(85898);Object.defineProperty(t,"FormulaModule",{enumerable:!0,get:function(){return N.FormulaModule}});var B=i(22949);Object.defineProperty(t,"SparklinesModule",{enumerable:!0,get:function(){return B.SparklinesModule}});var V=i(59428);Object.defineProperty(t,"TreeDataModule",{enumerable:!0,get:function(){return V.TreeDataModule}});var _=i(12270);Object.defineProperty(t,"AggregationModule",{enumerable:!0,get:function(){return _.AggregationModule}});var H=i(75470);Object.defineProperty(t,"PivotModule",{enumerable:!0,get:function(){return H.PivotModule}});var z=i(27546);Object.defineProperty(t,"FindModule",{enumerable:!0,get:function(){return z.FindModule}});var W=i(10937);Object.defineProperty(t,"BatchEditModule",{enumerable:!0,get:function(){return W.BatchEditModule}});var U=i(11527);Object.defineProperty(t,"GridChartsModule",{enumerable:!0,get:function(){return U.GridChartsModule}}),Object.defineProperty(t,"IntegratedChartsModule",{enumerable:!0,get:function(){return U.IntegratedChartsModule}});var j=i(51809);Object.defineProperty(t,"AllEnterpriseModule",{enumerable:!0,get:function(){return j.AllEnterpriseModule}}),s.__exportStar(i(76624),t)},33763:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.DetailCellRenderer=void 0;const s=i(76624),o=i(93210),r=i(37324),n={tag:"div",cls:"ag-details-row"},a={tag:"div",cls:"ag-details-row",role:"gridcell",children:[{tag:"div",ref:"eDetailGrid",cls:"ag-details-grid",role:"presentation"}]};class l extends s.Component{constructor(){super(...arguments),this.eDetailGrid=s.RefPlaceholder}wireBeans(e){this.context=e.context}init(e){this.params=e,this.selectAndSetTemplate();const t={toggleCss:(e,t)=>this.toggleCss(e,t),toggleDetailGridCss:(e,t)=>this.eDetailGrid.classList.toggle(e,t),setDetailGrid:e=>this.setDetailGrid(e),setRowData:e=>this.setRowData(e),getGui:()=>this.eDetailGrid};this.ctrl=this.createManagedBean(new o.DetailCellRendererCtrl),this.ctrl.init(t,e)}refresh(){return this.ctrl?.refresh()??!1}selectAndSetTemplate(){const e=this.params;if(e.pinned)return void this.setTemplate(n);const t=()=>{this.setTemplate(a)};if((0,s._missing)(e.template))t();else if("string"==typeof e.template)this.setTemplate(e.template,[]);else if("function"==typeof e.template){const t=(0,e.template)(e);this.setTemplate(t,[])}else(0,s._warn)(168),t();null==this.eDetailGrid&&(0,s._warn)(169)}setDetailGrid(e){if(!this.eDetailGrid)return;const t=this.context.getBean("frameworkCompWrapper"),i=new r.DetailFrameworkComponentWrapper(t),{frameworkOverrides:o}=this.beans,n=(0,s.createGrid)(this.eDetailGrid,e,{frameworkOverrides:o,providedBeanInstances:{frameworkCompWrapper:i},modules:(0,s._getGridRegisteredModules)(this.params.api.getGridId(),e.rowModelType??"clientSide")});this.detailApi=n,this.ctrl?.registerDetailWithMaster(n),this.addDestroyFunc(()=>{n.destroy()})}setRowData(e){this.detailApi?.setGridOption("rowData",e)}}t.DetailCellRenderer=l},93210:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.DetailCellRendererCtrl=void 0;const s=i(76624);class o extends s.BeanStub{constructor(){super(...arguments),this.loadRowDataVersion=0}wireBeans(e){this.environment=e.environment}init(e,t){this.params=t,this.comp=e;null!=t.pinned||(this.setAutoHeightClasses(),this.setupRefreshStrategy(),this.createDetailGrid(),this.loadRowData(),this.addManagedEventListeners({fullWidthRowFocused:this.onFullWidthRowFocused.bind(this)}))}onFullWidthRowFocused(e){const t=this.params,i={rowIndex:t.node.rowIndex,rowPinned:t.node.rowPinned},o={rowIndex:e.rowIndex,rowPinned:e.rowPinned};(0,s._isSameRow)(i,o)&&(0,s._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",i=e?"ag-details-grid-auto-height":"ag-details-grid-fixed-height",s=this.comp;s.toggleCss(t,!0),s.toggleDetailGridCss(i,!0)}setupRefreshStrategy(){const e=this.params.refreshStrategy;"everything"==e||"nothing"==e||"rows"==e?this.refreshStrategy=e:(null!=e&&(0,s._warn)(170,{providedStrategy:e}),this.refreshStrategy="rows")}createDetailGrid(){const{params:e,gos:t}=this;if((0,s._missing)(e.detailGridOptions))return void(0,s._warn)(171);const i=t.get("theme"),o=e.detailGridOptions.theme;o&&o!==i&&(0,s._warn)(267);const r={themeStyleContainer:this.environment.eStyleContainer,...e.detailGridOptions,theme:i};t.get("detailRowAutoHeight")&&(r.domLayout="autoHeight"),this.comp.setDetailGrid(r)}registerDetailWithMaster(e){const{params:t,beans:{selectionSvc:i,findSvc:s,expansionSvc:o}}=this,r=t.node.id,n=t.api,a={id:r,api:e},l=t.node;if(n.isDestroyed())return;n.addDetailGridInfo(r,a),l.detailGridInfo=a;const d=l.parent;function c(){d&&i?.refreshMasterNodeState(d)}function u({source:t}){return"expandAll"===t?e.expandAll():"collapseAll"===t?e.collapseAll():void 0}function h({node:s,source:o}){s!==d||"masterDetail"===o||e.isDestroyed()||i?.setDetailSelectionState(d,t.detailGridOptions,e)}s?.registerDetailGrid(l,e),e.addEventListener("firstDataRendered",()=>{if(e.isDestroyed()||n.isDestroyed())return;i?.setDetailSelectionState(d,t.detailGridOptions,e),e.addEventListener("selectionChanged",c),n.addEventListener("rowSelected",h);e.isModuleRegistered("CsrmSsrmSharedApiModule")&&(n.addEventListener("expandOrCollapseAll",u),o?.setDetailsExpansionState(e))}),this.addManagedListeners(d,{masterChanged:e=>{e.node.master||this.onDestroy(a)}}),this.addDestroyFunc(()=>this.onDestroy(a))}onDestroy(e){const{params:t}=this,i=t.node,s=t.api;i.detailGridInfo===e&&(s.isDestroyed()||s.removeDetailGridInfo(i.id),i.detailGridInfo=null)}loadRowData(){this.loadRowDataVersion++;const e=this.loadRowDataVersion,t=this.params;if("serverSide"===t.detailGridOptions?.rowModelType){const e=t.node;return void e.detailGridInfo?.api?.refreshServerSide({purge:!0})}const i=t.getDetailRowData;if(!i)return void(0,s._warn)(172);i({node:t.node,data:t.node.data,successCallback:t=>{this.loadRowDataVersion===e&&this.comp.setRowData(t)},context:(0,s._addGridCommonParams)(this.gos,{}).context})}refresh(){const e=!0;switch(this.refreshStrategy){case"nothing":return e;case"everything":return false}return this.loadRowData(),e}}t.DetailCellRendererCtrl=o},37324:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.DetailFrameworkComponentWrapper=void 0;t.DetailFrameworkComponentWrapper=class{constructor(e){this.parentWrapper=e}wrap(e,t,i,s){return this.parentWrapper.wrap(e,t,i,s)}}},84276:function(e,t){"use strict";function i(e,t){const i=e.masterDetailSvc?.store;return i?t(i):void 0}Object.defineProperty(t,"__esModule",{value:!0}),t.forEachDetailGridInfo=t.getDetailGridInfo=t.removeDetailGridInfo=t.addDetailGridInfo=void 0,t.addDetailGridInfo=function(e,t,s){i(e,e=>{e[t]=s})},t.removeDetailGridInfo=function(e,t){i(e,e=>{delete e[t]})},t.getDetailGridInfo=function(e,t){return i(e,e=>e[t])},t.forEachDetailGridInfo=function(e,t){i(e,e=>{let i=0;Object.values(e).forEach(e=>{e&&t(e,i++)})})}},52283:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.masterDetailModuleCSS=void 0,t.masterDetailModuleCSS=".ag-details-row{width:100%}.ag-details-row-fixed-height{height:100%}.ag-details-grid{width:100%}.ag-details-grid-fixed-height{height:100%}"},21594:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.MasterDetailModule=void 0;const s=i(76624),o=i(39206),r=i(16858),n=i(19586),a=i(33763),l=i(93210),d=i(84276),c=i(52283),u=i(82771),h={moduleName:"SharedMasterDetail",version:n.VERSION,beans:[u.MasterDetailService],userComponents:{agDetailCellRenderer:a.DetailCellRenderer},dynamicBeans:{detailCellRendererCtrl:l.DetailCellRendererCtrl},apiFunctions:{addDetailGridInfo:d.addDetailGridInfo,removeDetailGridInfo:d.removeDetailGridInfo,getDetailGridInfo:d.getDetailGridInfo,forEachDetailGridInfo:d.forEachDetailGridInfo},dependsOn:[o.EnterpriseCoreModule,r.GroupCellRendererModule,r.StickyRowModule],css:[c.masterDetailModuleCSS]};t.MasterDetailModule={moduleName:"MasterDetail",version:n.VERSION,dependsOn:[h,r.ClientSideRowModelHierarchyModule,s.EventApiModule]}},82771:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.MasterDetailService=void 0;const s=i(76624),o=i(76897);class r extends s.BeanStub{constructor(){super(...arguments),this.beanName="masterDetailSvc",this.store={}}isEnabled(){return this.gos.get("masterDetail")}postConstruct(){const e=this.gos;(0,s._isClientSideRowModel)(e)&&(this.enabled=this.isEnabled()),(0,s._isServerSideRowModel)(e)&&this.addEventListeners()}addEventListeners(){const e=e=>{this.setMaster(e.node,!1,!0)};let t;const i=()=>{if(t){for(const e of t)e();t=void 0}this.isEnabled()&&(t=this.addManagedListeners(this.beans.eventSvc,{rowNodeDataChanged:e}))};i(),this.gos.addPropertyEventListener("masterDetail",i)}refreshModel(e){if(e.changedProps){const e=this.isEnabled();if(this.enabled!==e)return void this.setMasters(null)}e.rowDataUpdated&&this.setMasters(e.changedRowNodes)}setMaster(e,t,i){const s=e.master,r=this.isEnabled();let n=r;const a=this.gos,l=a.get("isRowMaster"),d=a.get("treeData");if(r)if(t||i){if(l){const t=e.data;n=!!t&&!!l(t)}}else n=s;const c=this.beans;if(!d)if(n&&t){const t=c.rowGroupColsSvc?.columns.length??0;e.expanded=(0,o._getRowDefaultExpanded)(c,e,t,!1)}else!n&&s&&(e.expanded=!1);n!==s&&(e.master=n,e.dispatchRowEvent("masterChanged"))}setMasters(e){if(this.enabled=this.isEnabled(),e){for(const t of e.updates)this.setMaster(t,!1,!0);for(const t of e.adds)this.setMaster(t,!0,!1)}else{const e=(0,s._getClientSideRowModel)(this.beans)?.rootNode?._leafs;if(e)for(let t=0,i=e.length;t{const o=t.clientHeight;if(null!=o&&o>0){const t=()=>{const{rowModel:t}=this.beans,{rowNode:r}=e;r.setRowHeight(o),((0,s._isClientSideRowModel)(i,t)||(0,s._isServerSideRowModel)(i,t))&&t.onRowHeightChanged()};window.setTimeout(t,0)}},n=(0,s._observeResize)(o,t,r);e.addDestroyFunc(n),r()}destroy(){this.store={},super.destroy()}}t.MasterDetailService=r},75636:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ChartMenuItemMapper=void 0;const s=i(76624);class o extends s.BeanStub{constructor(){super(...arguments),this.beanName="chartMenuItemMapper"}getChartItems(e){const t=this.beans,i=t.chartSvc,s="pivotChart"===e;if(!i)return null;const o=this.getLocaleTextFunc.bind(this),a=s?new r(t,i,o):new n(t,i,o),l=i.isEnterprise();let d=a.getMenuItem();if(d?.subMenu&&!l){const e=t=>({...t,subMenu:t.subMenu?.filter(e=>!e._enterprise).map(t=>e(t))});d=e(d)}const c=this.gos.get("chartToolPanelsDef")?.settingsPanel?.chartGroupsDef;return c&&(d=this.filterAndOrderChartMenu(d,c,a.getConfigLookup())),this.cleanInternals(d)}cleanInternals(e){if(!e)return e;const t=e=>{delete e?._key,delete e?._enterprise;for(const i of e?.subMenu??[])t(i);return e};return t(e)}buildLookup(e){const t={},i=e=>{if(t[e._key]=e,e.subMenu)for(const t of e.subMenu)i(t)};return i(e),t}filterAndOrderChartMenu(e,t,i){const o=this.buildLookup(e),r={...e,subMenu:[]};for(const e of Object.keys(t)){const n=t[e],a=i[e];if(null===a)continue;if(null==a){(0,s._warn)(173,{group:e});continue}const l=o[a._key];if(l)if(l.subMenu){const t=n.map(t=>{const i=a[t];if(null!=i)return o[i];(0,s._warn)(174,{group:e,chartType:t})}).filter(e=>void 0!==e);t.length>0&&(l.subMenu=t,r.subMenu?.push(l))}else r.subMenu?.push(l)}return 0==r.subMenu?.length?null:r}}t.ChartMenuItemMapper=o;class r{constructor(e,t,i){this.beans=e,this.chartSvc=t,this.getLocaleTextFunc=i}getMenuItem(){const e=this.getLocaleTextFunc(),t=(t,i,s,o,r=!1)=>({name:e(t,i+"‎"),action:()=>this.chartSvc.createPivotChart({chartType:s}),_key:o,_enterprise:r});return{name:e("pivotChart","Pivot Chart"),_key:"pivotChart",subMenu:[{_key:"pivotColumnChart",name:e("columnChart","Column"),subMenu:[t("groupedColumn","Grouped","groupedColumn","pivotGroupedColumn"),t("stackedColumn","Stacked","stackedColumn","pivotStackedColumn"),t("normalizedColumn","100% Stacked","normalizedColumn","pivotNormalizedColumn")]},{_key:"pivotBarChart",name:e("barChart","Bar"),subMenu:[t("groupedBar","Grouped","groupedBar","pivotGroupedBar"),t("stackedBar","Stacked","stackedBar","pivotStackedBar"),t("normalizedBar","100% Stacked","normalizedBar","pivotNormalizedBar")]},{_key:"pivotPieChart",name:e("pieChart","Pie"),subMenu:[t("pie","Pie","pie","pivotPie"),t("donut","Donut","donut","pivotDonut")]},{_key:"pivotLineChart",name:e("lineChart","Line"),subMenu:[t("lineChart","Line","line","pivotLineChart"),t("stackedLine","Stacked","stackedLine","pivotStackedLine"),t("normalizedLine","100% Stacked","normalizedLine","pivotNormalizedLine")]},{_key:"pivotAreaChart",name:e("areaChart","Area"),subMenu:[t("areaChart","Area","area","pivotArea"),t("stackedArea","Stacked","stackedArea","pivotStackedArea"),t("normalizedArea","100% Stacked","normalizedArea","pivotNormalizedArea")]},{_key:"pivotXYChart",name:e("xyChart","X Y (Scatter)"),subMenu:[t("scatter","Scatter","scatter","pivotScatter"),t("bubble","Bubble","bubble","pivotBubble")]},{_key:"pivotStatisticalChart",_enterprise:!1,name:e("statisticalChart","Statistical"),subMenu:[t("histogramChart","Histogram","histogram","pivotHistogram",!1)]},{_key:"pivotHierarchicalChart",_enterprise:!0,name:e("hierarchicalChart","Hierarchical"),subMenu:[t("treemapChart","Treemap","treemap","pivotTreemap",!0),t("sunburstChart","Sunburst","sunburst","pivotSunburst",!0)]},{_key:"pivotFunnel",name:e("funnel","Funnel"),subMenu:[t("funnel","Funnel","funnel","pivotFunnel"),t("coneFunnel","Cone Funnel","coneFunnel","pivotConeFunnel"),t("pyramid","Pyramid","pyramid","pivotPyramid")]},{_key:"pivotCombinationChart",name:e("combinationChart","Combination"),subMenu:[t("columnLineCombo","Column & Line","columnLineCombo","pivotColumnLineCombo"),t("AreaColumnCombo","Area & Column","areaColumnCombo","pivotAreaColumnCombo")]}],icon:(0,s._createIconNoSpan)("chart",this.beans,void 0)}}getConfigLookup(){return{columnGroup:{_key:"pivotColumnChart",column:"pivotGroupedColumn",stackedColumn:"pivotStackedColumn",normalizedColumn:"pivotNormalizedColumn"},barGroup:{_key:"pivotBarChart",bar:"pivotGroupedBar",stackedBar:"pivotStackedBar",normalizedBar:"pivotNormalizedBar"},pieGroup:{_key:"pivotPieChart",pie:"pivotPie",donut:"pivotDonut",doughnut:"pivotDonut"},lineGroup:{_key:"pivotLineChart",line:"pivotLineChart",stackedLine:"pivotStackedLine",normalizedLine:"pivotNormalizedLine"},areaGroup:{_key:"pivotAreaChart",area:"pivotArea",stackedArea:"pivotStackedArea",normalizedArea:"pivotNormalizedArea"},scatterGroup:{_key:"pivotXYChart",bubble:"pivotBubble",scatter:"pivotScatter"},combinationGroup:{_key:"pivotCombinationChart",columnLineCombo:"pivotColumnLineCombo",areaColumnCombo:"pivotAreaColumnCombo",customCombo:null},hierarchicalGroup:{_key:"pivotHierarchicalChart",treemap:"pivotTreemap",sunburst:"pivotSunburst"},statisticalGroup:{_key:"pivotStatisticalChart",histogram:"pivotHistogram",rangeBar:null,rangeArea:null,boxPlot:null},funnelGroup:{_key:"pivotFunnel",funnel:"pivotFunnel",coneFunnel:"pivotConeFunnel",pyramid:"pivotPyramid"},polarGroup:null,specializedGroup:null}}}class n{constructor(e,t,i){this.beans=e,this.chartSvc=t,this.getLocaleTextFunc=i}getMenuItem(){const e=this.getLocaleTextFunc(),t=(t,i,s,o,r=!1)=>({name:e(t,i),action:()=>this.chartSvc.createChartFromCurrentRange(s),_key:o,_enterprise:r});return{name:e("chartRange","Chart Range"),_key:"chartRange",subMenu:[{name:e("columnChart","Column"),subMenu:[t("groupedColumn","Grouped","groupedColumn","rangeGroupedColumn"),t("stackedColumn","Stacked","stackedColumn","rangeStackedColumn"),t("normalizedColumn","100% Stacked","normalizedColumn","rangeNormalizedColumn")],_key:"rangeColumnChart"},{name:e("barChart","Bar"),subMenu:[t("groupedBar","Grouped","groupedBar","rangeGroupedBar"),t("stackedBar","Stacked","stackedBar","rangeStackedBar"),t("normalizedBar","100% Stacked","normalizedBar","rangeNormalizedBar")],_key:"rangeBarChart"},{name:e("pieChart","Pie"),subMenu:[t("pie","Pie","pie","rangePie"),t("donut","Donut","donut","rangeDonut")],_key:"rangePieChart"},{name:e("lineChart","Line"),subMenu:[t("lineChart","Line","line","rangeLineChart"),t("stackedLine","Stacked","stackedLine","rangeStackedLine"),t("normalizedLine","100% Stacked","normalizedLine","rangeNormalizedLine")],_key:"rangeLineChart"},{name:e("areaChart","Area"),subMenu:[t("areaChart","Area","area","rangeArea"),t("stackedArea","Stacked","stackedArea","rangeStackedArea"),t("normalizedArea","100% Stacked","normalizedArea","rangeNormalizedArea")],_key:"rangeAreaChart"},{name:e("xyChart","X Y (Scatter)"),subMenu:[t("scatter","Scatter","scatter","rangeScatter"),t("bubble","Bubble","bubble","rangeBubble")],_key:"rangeXYChart"},{name:e("polarChart","Polar"),subMenu:[t("radarLine","Radar Line","radarLine","rangeRadarLine"),t("radarArea","Radar Area","radarArea","rangeRadarArea"),t("nightingale","Nightingale","nightingale","rangeNightingale"),t("radialColumn","Radial Column","radialColumn","rangeRadialColumn"),t("radialBar","Radial Bar","radialBar","rangeRadialBar")],_key:"rangePolarChart",_enterprise:!0},{name:e("statisticalChart","Statistical"),subMenu:[t("boxPlot","Box Plot","boxPlot","rangeBoxPlot",!0),t("histogramChart","Histogram","histogram","rangeHistogram",!1),t("rangeBar","Range Bar","rangeBar","rangeRangeBar",!0),t("rangeArea","Range Area","rangeArea","rangeRangeArea",!0)],_key:"rangeStatisticalChart",_enterprise:!1},{name:e("hierarchicalChart","Hierarchical"),subMenu:[t("treemap","Treemap","treemap","rangeTreemap"),t("sunburst","Sunburst","sunburst","rangeSunburst")],_key:"rangeHierarchicalChart",_enterprise:!0},{name:e("specializedChart","Specialized"),subMenu:[t("heatmap","Heatmap","heatmap","rangeHeatmap"),t("waterfall","Waterfall","waterfall","rangeWaterfall")],_key:"rangeSpecializedChart",_enterprise:!0},{name:e("funnel","Funnel"),subMenu:[t("funnel","Funnel","funnel","rangeFunnel"),t("coneFunnel","Cone Funnel","coneFunnel","rangeConeFunnel"),t("pyramid","Pyramid","pyramid","rangePyramid")],_key:"rangeFunnel",_enterprise:!0},{name:e("combinationChart","Combination"),subMenu:[t("columnLineCombo","Column & Line","columnLineCombo","rangeColumnLineCombo"),t("AreaColumnCombo","Area & Column","areaColumnCombo","rangeAreaColumnCombo")],_key:"rangeCombinationChart"}],icon:(0,s._createIconNoSpan)("chart",this.beans,void 0)}}getConfigLookup(){return{columnGroup:{_key:"rangeColumnChart",column:"rangeGroupedColumn",stackedColumn:"rangeStackedColumn",normalizedColumn:"rangeNormalizedColumn"},barGroup:{_key:"rangeBarChart",bar:"rangeGroupedBar",stackedBar:"rangeStackedBar",normalizedBar:"rangeNormalizedBar"},pieGroup:{_key:"rangePieChart",pie:"rangePie",donut:"rangeDonut",doughnut:"rangeDonut"},lineGroup:{_key:"rangeLineChart",line:"rangeLineChart",stackedLine:"rangeStackedLine",normalizedLine:"rangeNormalizedLine"},areaGroup:{_key:"rangeAreaChart",area:"rangeArea",stackedArea:"rangeStackedArea",normalizedArea:"rangeNormalizedArea"},scatterGroup:{_key:"rangeXYChart",bubble:"rangeBubble",scatter:"rangeScatter"},polarGroup:{_key:"rangePolarChart",radarLine:"rangeRadarLine",radarArea:"rangeRadarArea",nightingale:"rangeNightingale",radialColumn:"rangeRadialColumn",radialBar:"rangeRadialBar"},statisticalGroup:{_key:"rangeStatisticalChart",boxPlot:"rangeBoxPlot",histogram:"rangeHistogram",rangeBar:"rangeRangeBar",rangeArea:"rangeRangeArea"},hierarchicalGroup:{_key:"rangeHierarchicalChart",treemap:"rangeTreemap",sunburst:"rangeSunburst"},specializedGroup:{_key:"rangeSpecializedChart",heatmap:"rangeHeatmap",waterfall:"rangeWaterfall"},funnelGroup:{_key:"rangeFunnel",funnel:"rangeFunnel",coneFunnel:"rangeConeFunnel",pyramid:"rangePyramid"},combinationGroup:{_key:"rangeCombinationChart",columnLineCombo:"rangeColumnLineCombo",areaColumnCombo:"rangeAreaColumnCombo",customCombo:null}}}}},9262:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ColumnChooserFactory=void 0;const s=i(76624),o=i(31269),r=i(49703);class n extends s.BeanStub{constructor(){super(...arguments),this.beanName="colChooserFactory"}createColumnSelectPanel(e,t,i,r){const n=e.createManagedBean(new o.AgPrimaryCols),a=r??t?.getColDef().columnChooserParams??{},{contractColumnSelection:l,suppressColumnExpandAll:d,suppressColumnFilter:c,suppressColumnSelectAll:u,suppressSyncLayoutWithGrid:h,columnLayout:g}=a;return n.init(!!i,(0,s._addGridCommonParams)(this.gos,{suppressColumnMove:!1,suppressValues:!1,suppressPivots:!1,suppressRowGroups:!1,suppressPivotMode:!1,contractColumnSelection:!!l,suppressColumnExpandAll:!!d,suppressColumnFilter:!!c,suppressColumnSelectAll:!!u,suppressSyncLayoutWithGrid:!!g||!!h,onStateUpdated:()=>{}}),"columnMenu"),g&&n.setColumnLayout(g),n}showColumnChooser({column:e,chooserParams:t,eventSource:i,headerPosition:o}){this.hideActiveColumnChooser();const n=this.createColumnSelectPanel(this,e,!0,t),a=this.getLocaleTextFunc(),l=this.beans,{visibleCols:d,focusSvc:c,menuUtils:u}=l,h=d.allCols.indexOf(e),g=e?c.focusedHeader??o??null:null;this.activeColumnChooserDialog=this.createBean(new r.Dialog({title:a("chooseColumns","Choose Columns"),component:n,width:300,height:300,resizable:!0,movable:!0,centered:!0,closable:!0,afterGuiAttached:()=>{(0,s._findNextFocusableElement)(l,n.getGui())?.focus({preventScroll:!0}),this.dispatchVisibleChangedEvent(!0,e)},closedCallback:t=>{const s=this.activeColumnChooser.getGui();this.destroyBean(this.activeColumnChooser),this.activeColumnChooser=void 0,this.activeColumnChooserDialog=void 0,this.dispatchVisibleChangedEvent(!1,e),e&&u.restoreFocusOnClose({column:e,headerPosition:g,columnIndex:h,eventSource:i},s,t,!0)},postProcessPopupParams:{type:"columnChooser",column:e,eventSource:i}})),this.activeColumnChooser=n}hideActiveColumnChooser(){this.destroyBean(this.activeColumnChooserDialog)}dispatchVisibleChangedEvent(e,t){this.eventSvc.dispatchEvent({type:"columnMenuVisibleChanged",visible:e,switchingTab:!1,key:"columnChooser",column:t??null})}}t.ColumnChooserFactory=n},25884:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ColumnMenuFactory=void 0;const s=i(76624),o=i(68105),r=i(20500),n=i(91708);class a extends s.BeanStub{constructor(){super(...arguments),this.beanName="colMenuFactory"}createMenu(e,t,i,s){const o=e.createManagedBean(new r.MenuList(0,{column:i??null,node:null,value:null})),n=this.beans.menuItemMapper.mapWithStockItems(t,i??null,null,s,"columnMenu");return o.addMenuItems(n),o}getMenuItems(e=null,t=null){const i=this.getDefaultMenuOptions(e);let o;const r=(e?.getColDef()??t?.getColGroupDef())?.mainMenuItems;if(Array.isArray(r))o=r;else if("function"==typeof r)o=r((0,s._addGridCommonParams)(this.gos,{column:e,columnGroup:t,defaultItems:i}));else{const s=this.gos.getCallback("getMainMenuItems");o=s?s({column:e,columnGroup:t,defaultItems:i}):i}return(0,n._removeRepeatsFromArray)(o,n.MENU_ITEM_SEPARATOR),o}getDefaultMenuOptions(e){const t=[],{beans:i,gos:r}=this,{colChooserFactory:a,rowGroupColsSvc:l,colModel:d,expansionSvc:c,sortSvc:u,menuSvc:h,pinnedCols:g,aggFuncSvc:p,colAutosize:m}=i,f=(0,s._isLegacyMenuEnabled)(r),C=()=>{!f&&a&&t.push("columnChooser"),t.push("resetColumns")};if(!e)return C(),t;const{colDef:v}=e,w=g&&!v.lockPinned,b=l?.columns.length??0,y=b>0,S=(0,s._getGrandTotalRow)(r),x=r.get("treeData"),F=e.isPrimary(),R=!F||p&&e.isAllowValue()&&(y||S||x);if(u&&!f&&e.isSortable()){const{isDefaultSortAllowed:o,isAbsoluteSortAllowed:r,isAbsoluteSort:a,isDefaultSort:l,isAscending:d,isDescending:c,direction:u}=(0,s._getDisplaySortForColumn)(e,i);!o||d&&l||t.push("sortAscending"),!o||c&&l||t.push("sortDescending"),!r||d&&a||t.push("sortAbsoluteAscending"),!r||c&&a||t.push("sortAbsoluteDescending"),u&&t.push("sortUnSort"),t.push(n.MENU_ITEM_SEPARATOR)}if(h?.isFilterMenuItemEnabled(e)&&(t.push("columnFilter"),t.push(n.MENU_ITEM_SEPARATOR)),w&&t.push("pinSubMenu"),R&&t.push("valueAggSubMenu"),(w||R)&&t.push(n.MENU_ITEM_SEPARATOR),m&&(v.suppressAutoSize||t.push("autoSizeThis"),t.push("autoSizeAll"),t.push(n.MENU_ITEM_SEPARATOR)),l&&r.isModuleRegistered("SharedRowGrouping")){const s=t.length;if(v.showRowGroup)t.push("rowUnGroup");else if(e.isAllowRowGroup()&&F)if(e.isRowGroupActive()){(0,o.isRowGroupColLocked)(e,i)||t.push("rowUnGroup")}else t.push("rowGroup");t.length>s&&t.push(n.MENU_ITEM_SEPARATOR)}return C(),c&&((0,s._isClientSideRowModel)(r)||r.get("ssrmExpandAllAffectsAllRows"))&&(x||b>(d.isPivotMode()?1:0))&&(t.push("expandAll"),t.push("contractAll")),t}}t.ColumnMenuFactory=a},23461:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ContextMenuService=void 0;const s=i(76624),o=i(87479),r=i(51504),n="ag-context-menu-open";class a extends s.BeanStub{constructor(){super(...arguments),this.beanName="contextMenuSvc",this.focusedCell=null}postConstruct(){this.menu=this.createManagedBean(new o.AgContextMenuService({menuItemCallbacks:r.MENU_ITEM_CALLBACKS,getMenuItems:this.getMenuItems.bind(this),mapMenuItems:this.mapWithStockItems.bind(this),beforeMenuOpen:this.beforeMenuOpen.bind(this),onMenuOpen:this.onMenuOpen.bind(this),onMenuClose:this.onMenuClose.bind(this),afterMenuDestroyed:this.afterMenuDestroyed.bind(this),onVisibleChanged:this.dispatchVisibleChangedEvent.bind(this),shouldBlockMenuOpen:()=>!!this.beans.overlays?.exclusive}))}hideActiveMenu(){this.menu.hideActiveMenu()}getMenuItems(e,t){const{column:i,node:o,value:r}=e,n=[],{clipboardSvc:a,chartSvc:l,csvCreator:d,excelCreator:c,colModel:u,rangeSvc:h,gos:g}=this.beans;if((0,s._exists)(o)&&a&&i&&(g.get("suppressCutToClipboard")||n.push("cut"),n.push("copy","copyWithHeaders","copyWithGroupHeaders","paste","separator")),g.get("enableCharts")&&l&&(u.isPivotMode()&&n.push("pivotChart"),h&&!h.isEmpty()&&n.push("chartRange")),(0,s._exists)(o)){const e=g.get("enableRowPinning"),t=g.get("isRowPinnable");if(e){const e=o.level>-1&&o.footer,i=-1===o.level&&o.footer,r=(0,s._getGrandTotalRow)(g);if(i&&!("pinnedBottom"===r||"pinnedTop"===r)||!i&&!e){(t?.(o)??!0)&&n.push("pinRowSubMenu")}}const i=g.get("suppressExcelExport")||!c,r=g.get("suppressCsvExport")||!d;!((0,s._isIOSUserAgent)()||i&&r)&&n.push("export")}const p=n.length?n:void 0,m=i?.getColDef().contextMenuItems;if(Array.isArray(m))return m;if("function"==typeof m)return m((0,s._addGridCommonParams)(g,{column:i,node:o,value:r,defaultItems:p,event:t}));const f=g.getCallback("getContextMenuItems");return f?.({column:i,node:o,value:r,defaultItems:p,event:t})??n}getContextMenuPosition(e,t){const i=this.getRowCtrl(e),s=this.getCellGui(i,t);if(!s)return{x:0,y:i?.getRowYPosition()??0};const o=s.getBoundingClientRect();return{x:o.x+o.width/2,y:o.y+o.height/2}}showContextMenu(e){const t=e.rowNode??null,i=e.column??null;let{anchorToElement:s,value:o,source:r}=e;t&&i&&null==o&&(o=this.beans.valueSvc.getValueForDisplay({column:i,node:t,from:"edit"}).value),null==s&&(s=this.getContextMenuAnchorElement(t,i)),this.beans.menuUtils.onContextMenu({mouseEvent:e.mouseEvent??null,touchEvent:e.touchEvent??null,showMenuCallback:e=>this.menu.showMenu({node:t,column:i,value:o},e,s),source:r})}handleContextMenuMouseEvent(e,t,i,s){const o=s?.rowNode??i?.rowNode??null,r=s?.column??i?.findFullWidthInfoForEvent(e||t)?.column??null,{valueSvc:n,ctrlsSvc:a}=this.beans,l=r?n.getValue(r,o,"edit"):null,d=a.getGridBodyCtrl(),c=s?s.eGui:d.eGridBody;this.showContextMenu({mouseEvent:e,touchEvent:t,rowNode:o,column:r,value:l,anchorToElement:c,source:"ui"})}beforeMenuOpen(e){e.column||this.beans.focusSvc.clearFocusedCell()}onMenuOpen(){const{ctrlsSvc:e,focusSvc:t}=this.beans;e.getGridBodyCtrl().eGridBody.classList.add(n),this.focusedCell=t.getFocusedCell()}onMenuClose(){this.beans.ctrlsSvc.getGridBodyCtrl().eGridBody.classList.remove(n)}afterMenuDestroyed(){const{beans:e,focusedCell:t}=this;(0,s._attemptToRestoreCellFocus)(e,t)}dispatchVisibleChangedEvent(e,t){this.eventSvc.dispatchEvent({type:"contextMenuVisibleChanged",visible:e,source:t})}getRowCtrl(e){const{rowIndex:t,rowPinned:i}=e||{};if(null!=t)return this.beans.rowRenderer.getRowByPosition({rowIndex:t,rowPinned:i})||void 0}getCellGui(e,t){if(!e||!t)return;const i=e.getCellCtrl(t);return i?.eGui||void 0}getContextMenuAnchorElement(e,t){const i=this.beans.ctrlsSvc.getGridBodyCtrl().eGridBody,s=this.getRowCtrl(e);if(!s)return i;const o=this.getCellGui(s,t);return o||(s.isFullWidth()?s.getFullWidthElement():i)}mapWithStockItems(e,t,i){const{column:s,node:o}=t;return this.beans.menuItemMapper.mapWithStockItems(e,s,o,i,"contextMenu")}}t.ContextMenuService=a},6345:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.EnterpriseMenuFactory=void 0;const s=i(76624),o=i(69424),r="filterMenuTab",n="generalMenuTab",a="columnsMenuTab",l=[n,r,a];class d extends s.BeanStub{constructor(){super(...arguments),this.beanName="enterpriseMenuFactory"}hideActiveMenu(){this.destroyBean(this.activeMenu)}showMenuAfterMouseEvent(e,t,i,s,o){const{column:r,columnGroup:n}=this.splitColumnOrGroup(e),a=o?"filterMenuTab":void 0;this.showMenu(r,n,e=>{const s=e.getGui();this.beans.popupSvc.positionPopupUnderMouseEvent({type:i,additionalParams:{column:r},mouseEvent:t,ePopup:s}),a&&e.showTab?.(a),this.dispatchVisibleChangedEvent(!0,!1,r,n,a)},i,a,void 0,t.target,s)}splitColumnOrGroup(e){const t=e&&(0,s.isColumn)(e);return{column:t?e:void 0,columnGroup:t?void 0:e}}showMenuAfterButtonClick(e,t,i,o,r){let n=-1,a="left";this.gos.get("enableRtl")&&(n=1,a="right");const l=r?"filterMenuTab":void 0,d=l?[l]:void 0,c=(0,s._isLegacyMenuEnabled)(this.gos),u=(c?9:4)*n,h=c?-23:4,{column:g,columnGroup:p}=this.splitColumnOrGroup(e);this.showMenu(g,p,e=>{const s=e.getGui();this.beans.popupSvc.positionPopupByComponent({type:i,additionalParams:{column:g},eventSource:t,ePopup:s,alignSide:a,nudgeX:u,nudgeY:h,position:"under",keepWithinBounds:!0}),l&&e.showTab?.(l),this.dispatchVisibleChangedEvent(!0,!1,g,p,l)},i,l,d,t,o)}showMenu(e,t,i,o,r,n,a,l){const d=this.getMenuParams(e,t,n,a);if(!d)return;const{menu:c,eMenuGui:u,anchorToElement:h,restoreFocusParams:g}=d,p=[],{menuUtils:m,popupSvc:f}=this.beans;p.push(t=>{const i=c.getGui();this.destroyBean(c),e&&((0,s._setColMenuVisible)(e,!1,"contextMenu"),m.restoreFocusOnClose(g,i,t)),l?.()});const C=this.getLocaleTextFunc();if(f.addPopup({modal:!0,eChild:u,closeOnEsc:!0,closedCallback:i=>{for(const e of p)e(i);this.dispatchVisibleChangedEvent(!1,!1,e,t,r)},afterGuiAttached:e=>c.afterGuiAttached(Object.assign({},{container:o},e)),positionCallback:r?()=>i(c):void 0,ariaLabel:C("ariaLabelColumnMenu","Column Menu")}),r||(c.showTabBasedOnPreviousSelection?.(),i(c)),(0,s._isColumnMenuAnchoringEnabled)(this.gos)){const t=f.setPopupPositionRelatedToElement(u,h);t&&e&&this.addStopAnchoring(t,e,p)}c.addEventListener("tabSelected",t=>{this.dispatchVisibleChangedEvent(!1,!0,e),this.lastSelectedTab=t.key,this.dispatchVisibleChangedEvent(!0,!0,e)}),e&&(0,s._setColMenuVisible)(e,!0,"contextMenu"),this.activeMenu=c,c.addEventListener("destroyed",()=>{this.activeMenu===c&&(this.activeMenu=null)})}addStopAnchoring(e,t,i){e.then(e=>{t.__addEventListener("leftChanged",e),t.__addEventListener("visibleChanged",e),i.push(()=>{t.__removeEventListener("leftChanged",e),t.__removeEventListener("visibleChanged",e)})})}getMenuParams(e,t,i,s){const{focusSvc:o,visibleCols:r,ctrlsSvc:n}=this.beans,a={column:e,headerPosition:o.focusedHeader,columnIndex:r.allCols.indexOf(e),eventSource:s},l=this.createMenu(e,t,a,i,s);return l?{menu:l,eMenuGui:l.getGui(),anchorToElement:s||n.getGridBodyCtrl().eGridBody,restoreFocusParams:a}:void 0}createMenu(e,t,i,o,r){if((0,s._isLegacyMenuEnabled)(this.gos))return this.createBean(new c(e,i,this.lastSelectedTab,o,r));{const s=this.beans.colMenuFactory.getMenuItems(e,t);return s.length?this.createBean(new u(s,e,i,r)):void 0}}dispatchVisibleChangedEvent(e,t,i,o,r){this.eventSvc.dispatchEvent({type:"columnMenuVisibleChanged",visible:e,switchingTab:t,key:this.lastSelectedTab??r??((0,s._isLegacyMenuEnabled)(this.gos)?n:"columnMenu"),column:i??null,columnGroup:o??null})}isMenuEnabled(e){if(!(0,s._isLegacyMenuEnabled)(this.gos))return!0;const t=!this.beans.filterManager?.isFilterAllowed(e),i=e.getColDef().menuTabs??l;return(t&&i.includes(r)?i.length-1:i.length)>0}showMenuAfterContextMenuEvent(e,t,i){this.beans.menuUtils.onContextMenu({mouseEvent:t,touchEvent:i,source:"ui",showMenuCallback:t=>(this.showMenuAfterMouseEvent(e,t,"columnMenu"),!0)})}}t.EnterpriseMenuFactory=d;class c extends s.BeanStub{constructor(e,t,i,s,o){super(),this.column=e,this.restoreFocusParams=t,this.initialSelection=i,this.restrictTo=s,this.sourceElement=o,this.tabFactories={},this.includeChecks={};const{tabFactories:l,includeChecks:d}=this;l[n]=this.createMainPanel.bind(this),l[r]=this.createFilterPanel.bind(this),l[a]=this.createColumnsPanel.bind(this),d[n]=()=>!0,d[r]=()=>!!e&&!!this.beans.filterManager?.isFilterAllowed(e),d[a]=()=>!0}postConstruct(){const e=this.getTabsToCreate().map(e=>this.createTab(e)),t=new o.AgTabbedLayout({items:e,cssClass:"ag-menu",onActiveItemClicked:this.onHidePopup.bind(this),onItemClicked:this.onTabItemClicked.bind(this)});this.tabbedLayout=this.createBean(t),this.mainMenuList?.setParentComponent(t),this.addDestroyFunc(()=>this.destroyBean(t))}getTabsToCreate(){return this.restrictTo?this.restrictTo:(this.column?.getColDef().menuTabs??l).filter(e=>this.isValidMenuTabItem(e)&&this.isNotSuppressed(e))}isValidMenuTabItem(e){let t=!0,i=l;return null!=this.restrictTo&&(t=this.restrictTo.indexOf(e)>-1,i=this.restrictTo),t=t&&l.indexOf(e)>-1,t||(0,s._warn)(175,{menuTabName:e,itemsToConsider:i}),t}isNotSuppressed(e){return this.includeChecks[e]()}createTab(e){return this.tabFactories[e]()}showTabBasedOnPreviousSelection(){this.showTab(this.initialSelection)}showTab(e){const{tabItemColumns:t,tabbedLayout:i,tabItemFilter:s,tabItemGeneral:o}=this;t&&e===a?i.showItem(t):s&&e===r?i.showItem(s):o&&e===n?i.showItem(o):i.showFirstItem()}onTabItemClicked(e){let t=null;switch(e.item){case this.tabItemColumns:t=a;break;case this.tabItemFilter:t=r;break;case this.tabItemGeneral:t=n}t&&this.activateTab(t)}activateTab(e){const t={type:"tabSelected",key:e};this.dispatchLocalEvent(t)}createMainPanel(){const{beans:e,column:t}=this,i=e.colMenuFactory,o=i.createMenu(this,i.getMenuItems(t),this.column,()=>this.sourceElement??this.getGui());this.mainMenuList=o,o.addEventListener("closeMenu",this.onHidePopup.bind(this));const r={title:(0,s._createIconNoSpan)("legacyMenu",e,t),titleLabel:n.replace("MenuTab",""),bodyPromise:s.AgPromise.resolve(o.getGui()),name:n};return this.tabItemGeneral=r,r}onHidePopup(e){this.beans.menuUtils.closePopupAndRestoreFocusOnSelect(this.hidePopupFunc,this.restoreFocusParams,e)}createFilterPanel(){const e=this.column?this.createBean(new s.FilterComp(this.column,"COLUMN_MENU")):null;this.filterComp=e,e?.hasFilter()||(0,s._error)(119);return this.tabItemFilter={title:(0,s._createIconNoSpan)("filterTab",this.beans,this.column),titleLabel:r.replace("MenuTab",""),bodyPromise:s.AgPromise.resolve(e?.getGui()),afterAttachedCallback:t=>e?.afterGuiAttached(t),afterDetachedCallback:()=>e?.afterGuiDetached(),name:r},this.tabItemFilter}createColumnsPanel(){const e=(0,s._createElement)({tag:"div",cls:"ag-menu-column-select-wrapper"}),{beans:t,column:i}=this,o=t.colChooserFactory.createColumnSelectPanel(this,i).getGui();o.classList.add("ag-menu-column-select"),e.appendChild(o);const r={title:(0,s._createIconNoSpan)("columns",t,i),titleLabel:a.replace("MenuTab",""),bodyPromise:s.AgPromise.resolve(e),name:a};return this.tabItemColumns=r,r}afterGuiAttached(e){const{container:t,hidePopup:i}=e;this.tabbedLayout.setAfterAttachedParams({container:t,hidePopup:i}),i&&(this.hidePopupFunc=i,this.addDestroyFunc(i))}getGui(){return this.tabbedLayout.getGui()}destroy(){super.destroy(),this.destroyBean(this.filterComp)}}class u extends s.Component{constructor(e,t,i,o){super({tag:"div",ref:"eColumnMenu",cls:"ag-menu ag-column-menu",role:"presentation"}),this.menuItems=e,this.column=t,this.restoreFocusParams=i,this.sourceElement=o,this.eColumnMenu=s.RefPlaceholder}postConstruct(){const e=this.beans.colMenuFactory.createMenu(this,this.menuItems,this.column,()=>this.sourceElement??this.getGui());this.mainMenuList=e,e.addEventListener("closeMenu",this.onHidePopup.bind(this)),this.eColumnMenu.appendChild(e.getGui())}onHidePopup(e){this.beans.menuUtils.closePopupAndRestoreFocusOnSelect(this.hidePopupFunc,this.restoreFocusParams,e)}afterGuiAttached({hidePopup:e}){e&&(this.hidePopupFunc=e,this.addDestroyFunc(e)),(0,s._focusInto)(this.mainMenuList.getGui())}}},48228:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.hideColumnChooser=t.showColumnChooser=t.showContextMenu=void 0,t.showContextMenu=function(e,t){const{contextMenuSvc:i}=e;if(!i)return;const{rowNode:s,column:o,value:r,x:n,y:a}=t||{};let{x:l,y:d}=i.getContextMenuPosition(s,o);null!=n&&(l=n),null!=a&&(d=a),i.showContextMenu({mouseEvent:new MouseEvent("mousedown",{clientX:l,clientY:d}),rowNode:s,column:o,value:r,source:"api"})},t.showColumnChooser=function(e,t){e.colChooserFactory?.showColumnChooser({chooserParams:t})},t.hideColumnChooser=function(e){e.colChooserFactory?.hideActiveColumnChooser()}},91708:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.MenuItemMapper=t._removeRepeatsFromArray=t.MENU_ITEM_SEPARATOR=void 0;const s=i(76624),o=i(68105),r=i(10465);function n(e,t){if(e)for(let i=e.length-2;i>=0;i--){const s=e[i]===t,o=e[i+1]===t;s&&o&&e.splice(i+1,1)}}t.MENU_ITEM_SEPARATOR="separator",t._removeRepeatsFromArray=n;const a={sortAscending:{fallback:"Sort Ascending",getSortDef:()=>({type:"default",direction:"asc"})},sortDescending:{fallback:"Sort Descending",getSortDef:()=>({type:"default",direction:"desc"})},sortAbsoluteAscending:{fallback:"Sort Absolute Ascending",getSortDef:()=>({type:"absolute",direction:"asc"})},sortAbsoluteDescending:{fallback:"Sort Absolute Descending",getSortDef:()=>({type:"absolute",direction:"desc"})},sortUnSort:{fallback:"Clear Sort",getSortDef:e=>({type:(0,s._normalizeSortType)(e.getSortDef()?.type),direction:null})}};class l extends s.BeanStub{constructor(){super(...arguments),this.beanName="menuItemMapper"}mapWithStockItems(e,i,l,c,u){if(!e)return[];const h=[],g=this.getLocaleTextFunc(),{beans:p,gos:m}=this,{pinnedCols:f,colAutosize:C,aggFuncSvc:v,rowGroupColsSvc:w,colNames:b,colModel:y,clipboardSvc:S,expansionSvc:x,focusSvc:F,csvCreator:R,excelCreator:P,menuSvc:M,colChooserFactory:E,sortSvc:A,chartMenuItemMapper:T,valueColsSvc:D,pinnedRowModel:I}=p,k=(e,t,i,n)=>{switch((0,r.validateMenuItem)(m,e),e){case"pinSubMenu":return f&&t?{name:g("pinColumn","Pin Column"),icon:(0,s._createIconNoSpan)("menuPin",p,null),subMenu:["clearPinned","pinLeft","pinRight"]}:null;case"pinLeft":return f&&t?{name:g("pinLeft","Pin Left"),action:()=>f.setColsPinned([t],"left",n),checked:!!t&&t.isPinnedLeft()}:null;case"pinRight":return f&&t?{name:g("pinRight","Pin Right"),action:()=>f.setColsPinned([t],"right",n),checked:!!t&&t.isPinnedRight()}:null;case"clearPinned":return f&&t?{name:g("noPin","No Pin"),action:()=>f.setColsPinned([t],null,n),checked:!!t&&!t.isPinned()}:null;case"pinRowSubMenu":{const e=m.get("enableRowPinning"),i=[],o=l?.rowPinned??l?.pinnedSibling?.rowPinned;return o&&i.push("unpinRow"),e&&"bottom"!==e&&"top"!=o&&i.push("pinTop"),e&&"top"!==e&&"bottom"!=o&&i.push("pinBottom"),I?.isManual()?{name:g("pinRow","Pin Row"),icon:(0,s._createIconNoSpan)("rowPin",p,t),subMenu:i}:null}case"pinTop":return I?.isManual()?{name:g("pinTop","Pin to Top"),icon:(0,s._createIconNoSpan)("rowPinTop",p,t),action:({node:e,column:t})=>e&&I.pinRow(e,"top",t)}:null;case"pinBottom":return I?.isManual()?{name:g("pinBottom","Pin to Bottom"),icon:(0,s._createIconNoSpan)("rowPinBottom",p,t),action:({node:e,column:t})=>e&&I.pinRow(e,"bottom",t)}:null;case"unpinRow":return I?.isManual()?{name:g("unpinRow","Unpin Row"),icon:(0,s._createIconNoSpan)("rowUnpin",p,t),action:({node:e,column:t})=>e&&I.pinRow(e,null,t)}:null;case"valueAggSubMenu":return v&&D&&(t?.isPrimary()||t?.getColDef().pivotValueColumn)?{name:g("valueAggregation","Value Aggregation"),icon:(0,s._createIconNoSpan)("menuValue",p,null),subMenu:d(t,v,D,g),disabled:m.get("functionsReadOnly")}:null;case"autoSizeThis":return C?{name:g("autosizeThisColumn","Autosize This Column"),action:()=>t&&C.autoSizeColumn(t,n,m.get("skipHeaderOnAutoSize"))}:null;case"autoSizeAll":return C?{name:g("autosizeAllColumns","Autosize All Columns"),action:()=>C.autoSizeAllColumns({source:n,skipHeader:m.get("skipHeaderOnAutoSize")})}:null;case"rowGroup":return w?{name:(0,o.getGroupingLocaleText)(g,"groupBy",b.getDisplayNameForColumn(t,"header")),disabled:m.get("functionsReadOnly")||t?.isRowGroupActive()||!t?.getColDef().enableRowGroup,action:()=>w.addColumns([t],n),icon:(0,s._createIconNoSpan)("menuAddRowGroup",p,null)}:null;case"rowUnGroup":if(w&&m.isModuleRegistered("SharedRowGrouping")){const e=t?.getColDef().showRowGroup,i=m.get("groupLockGroupColumns");let r,a,l;if(!0===e)r=g("ungroupAll","Un-Group All"),a=m.get("functionsReadOnly")||-1===i||i>=(w.columns.length??0),l=()=>w.setColumns(w.columns.slice(0,i),n);else if("string"==typeof e){const t=y.getColDefCol(e),i=null!=t?b.getDisplayNameForColumn(t,"header"):e;r=(0,o.getGroupingLocaleText)(g,"ungroupBy",i),a=m.get("functionsReadOnly")||(0,o.isRowGroupColLocked)(t,p),l=()=>{w.removeColumns([e],n)}}else r=(0,o.getGroupingLocaleText)(g,"ungroupBy",b.getDisplayNameForColumn(t,"header")),a=m.get("functionsReadOnly")||!t?.isRowGroupActive()||!t?.getColDef().enableRowGroup||(0,o.isRowGroupColLocked)(t,p),l=()=>w.removeColumns([t],n);return{name:r,disabled:a,action:l,icon:(0,s._createIconNoSpan)("menuRemoveRowGroup",p,null)}}return null;case"resetColumns":return{name:g("resetColumns","Reset Columns"),action:()=>(0,s._resetColumnState)(p,n)};case"expandAll":return x?{name:g("expandAll","Expand All Row Groups"),action:()=>x.expandAll(!0)}:null;case"contractAll":return x?{name:g("collapseAll","Collapse All Row Groups"),action:()=>x.expandAll(!1)}:null;case"copy":return S?{name:g("copy","Copy"),shortcut:g("ctrlC","Ctrl+C"),icon:(0,s._createIconNoSpan)("clipboardCopy",p,null),action:()=>S.copyToClipboard()}:null;case"copyWithHeaders":return S?{name:g("copyWithHeaders","Copy with Headers"),icon:(0,s._createIconNoSpan)("clipboardCopy",p,null),action:()=>S.copyToClipboard({includeHeaders:!0})}:null;case"copyWithGroupHeaders":return S?{name:g("copyWithGroupHeaders","Copy with Group Headers"),icon:(0,s._createIconNoSpan)("clipboardCopy",p,null),action:()=>S.copyToClipboard({includeHeaders:!0,includeGroupHeaders:!0})}:null;case"cut":if(S){const e=F.getFocusedCell(),t=e?(0,s._getRowNode)(p,e):null,i=!!t&&e?.column.isCellEditable(t);return{name:g("cut","Cut"),shortcut:g("ctrlX","Ctrl+X"),icon:(0,s._createIconNoSpan)("clipboardCut",p,null),disabled:!i||m.get("suppressCutToClipboard"),action:()=>S.cutToClipboard(void 0,"contextMenu")}}return null;case"paste":if(S){const e=m.get("suppressClipboardApi")||m.get("suppressClipboardPaste")||!t||!l||!t.isCellEditable(l)||t.isSuppressPaste(l);return{name:g("paste","Paste"),shortcut:g("ctrlV","Ctrl+V"),icon:(0,s._createIconNoSpan)("clipboardPaste",p,null),disabled:e,action:()=>S.pasteFromClipboard()}}return null;case"export":{const e=[];return!m.get("suppressCsvExport")&&R&&e.push("csvExport"),!m.get("suppressExcelExport")&&P&&e.push("excelExport"),e.length?{name:g("export","Export"),subMenu:e,icon:(0,s._createIconNoSpan)("save",p,null)}:null}case"csvExport":return R?{name:g("csvExport","CSV Export"),icon:(0,s._createIconNoSpan)("csvExport",p,null),action:()=>R.exportDataAsCsv()}:null;case"excelExport":return P?{name:g("excelExport","Excel Export"),icon:(0,s._createIconNoSpan)("excelExport",p,null),action:()=>P.exportDataAsExcel()}:null;case"separator":return e;case"pivotChart":case"chartRange":return T.getChartItems(e);case"columnFilter":return M&&t?{name:g("columnFilter","Column Filter"),icon:(0,s._createIconNoSpan)("filter",p,null),action:()=>M.showFilterMenu({column:t,buttonElement:i(),containerType:"columnFilter",positionBy:"button"})}:null;case"columnChooser":{const e=F.focusedHeader;return E?{name:g("columnChooser","Choose Columns"),icon:(0,s._createIconNoSpan)("columns",p,null),action:()=>E.showColumnChooser({column:t,eventSource:i(),headerPosition:e})}:null}case"sortUnSort":case"sortAscending":case"sortDescending":case"sortAbsoluteAscending":case"sortAbsoluteDescending":{if(!A||!t)return null;const{fallback:i,getSortDef:o}=a[e];return{name:g(e,i),icon:(0,s._createIconNoSpan)(e,p,null),action:()=>A.setSortForColumn(t,o(t),!1,n)}}default:return(0,s._warn)(176,{key:e}),null}};for(const t of e){let e;if(e="string"==typeof t?k(t,i,c,u):{...t},!e)continue;const s=e,{subMenu:o}=s;o&&o instanceof Array&&(s.subMenu=this.mapWithStockItems(o,i,l,c,u)),null!=e&&h.push(e)}return n(h,t.MENU_ITEM_SEPARATOR),h}}function d(e,t,i,o){let r;if(e.isPrimary())r=e;else{const t=e.getColDef().pivotValueColumn;r=(0,s._exists)(t)?t:void 0}const n=[];if(r){const e=r.isValueActive(),s=t.getFuncNames(r);n.push({name:o("noAggregation","None"),action:()=>{i.removeColumns([r],"contextMenu"),i.setColumnAggFunc(r,void 0,"contextMenu")},checked:!e});for(const a of s)n.push({name:o(a,t.getDefaultFuncLabel(a)),action:()=>{i.setColumnAggFunc(r,a,"contextMenu"),i.addColumns([r],"contextMenu")},checked:e&&r.getAggFunc()===a})}return n}t.MenuItemMapper=l},10465:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.validateMenuItem=void 0;const i={pinSubMenu:"PinnedColumn",pinLeft:"PinnedColumn",pinRight:"PinnedColumn",clearPinned:"PinnedColumn",pinRowSubMenu:"PinnedRow",pinBottom:"PinnedRow",pinTop:"PinnedRow",unpinRow:"PinnedRow",valueAggSubMenu:"SharedAggregation",autoSizeThis:"ColumnAutoSize",autoSizeAll:"ColumnAutoSize",rowGroup:"SharedRowGrouping",rowUnGroup:"SharedRowGrouping",resetColumns:"CommunityCore",expandAll:["ClientSideRowModelHierarchy","ServerSideRowModel"],contractAll:["ClientSideRowModelHierarchy","ServerSideRowModel"],copy:"Clipboard",copyWithHeaders:"Clipboard",copyWithGroupHeaders:"Clipboard",cut:"Clipboard",paste:"Clipboard",export:["CsvExport","ExcelExport"],csvExport:"CsvExport",excelExport:"ExcelExport",separator:"CommunityCore",pivotChart:"IntegratedCharts",chartRange:"IntegratedCharts",columnFilter:"ColumnFilter",columnChooser:"ColumnMenu",sortAscending:"Sort",sortDescending:"Sort",sortAbsoluteAscending:"Sort",sortAbsoluteDescending:"Sort",sortUnSort:"Sort"};t.validateMenuItem=function(e,t){const s=i[t];s&&e.assertModuleRegistered(s,`menu item '${t}'`)}},37130:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.MenuModule=t.ContextMenuModule=t.ColumnMenuModule=void 0;const s=i(76624),o=i(39206),r=i(19586),n=i(73375),a=i(75636),l=i(9262),d=i(25884),c=i(23461),u=i(6345),h=i(48228),g=i(91708),p=i(3569),m={moduleName:"MenuCore",version:r.VERSION,beans:[g.MenuItemMapper,a.ChartMenuItemMapper,p.MenuUtils],icons:{chart:"chart",columns:"columns",loadingMenuItems:"loading",menuPin:"pin",menuValue:"aggregation",menuAddRowGroup:"group",menuRemoveRowGroup:"group",clipboardCopy:"copy",clipboardCut:"cut",clipboardPaste:"paste",save:"save",csvExport:"csv",excelExport:"excel",sortAscending:"asc",sortDescending:"desc",sortAbsoluteAscending:"aasc",sortAbsoluteDescending:"adesc",sortUnSort:"none"},dependsOn:[o.EnterpriseCoreModule,s._PopupModule,s._SharedMenuModule,n.MenuItemModule]};t.ColumnMenuModule={moduleName:"ColumnMenu",version:r.VERSION,beans:[u.EnterpriseMenuFactory,d.ColumnMenuFactory,l.ColumnChooserFactory],icons:{ensureColumnVisible:"column-arrow",legacyMenu:"menu",filterTab:"filter",columnSelectClosed:"tree-closed",columnSelectOpen:"tree-open",columnSelectIndeterminate:"tree-indeterminate"},apiFunctions:{showColumnChooser:h.showColumnChooser,hideColumnChooser:h.hideColumnChooser},dependsOn:[m,s._SharedDragAndDropModule,s._ColumnMoveModule]},t.ContextMenuModule={moduleName:"ContextMenu",version:r.VERSION,beans:[c.ContextMenuService],apiFunctions:{showContextMenu:h.showContextMenu},dependsOn:[m]},t.MenuModule={moduleName:"Menu",version:r.VERSION,dependsOn:[t.ColumnMenuModule,t.ContextMenuModule]}},3569:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.MenuUtils=void 0;const s=i(76624);class o extends s.BeanStub{constructor(){super(...arguments),this.beanName="menuUtils"}restoreFocusOnClose(e,t,i,o){const{eventSource:r}=e,n=i instanceof KeyboardEvent;if(!o&&!n||!r)return;const a=(0,s._getActiveDomElement)(this.beans);(t.contains(a)||(0,s._isNothingFocused)(this.beans))&&this.focusHeaderCell(e)}closePopupAndRestoreFocusOnSelect(e,t,i){let o;i?.keyboardEvent&&(o=i.keyboardEvent),e(o&&{keyboardEvent:o});const r=this.beans,n=r.focusSvc,a=n.getFocusedCell();if((0,s._isNothingFocused)(r))if(a){const{rowIndex:e,rowPinned:t,column:i}=a;n.setFocusedCell({rowIndex:e,column:i,rowPinned:t,forceBrowserFocus:!0,preventScrollOnBrowserFocus:!0})}else this.focusHeaderCell(t)}onContextMenu(e){const{mouseEvent:t,touchEvent:i,showMenuCallback:s,source:o}=e;if(!this.gos.get("allowContextMenuWithControlKey")&&t&&(t.ctrlKey||t.metaKey))return;if(t&&this.blockMiddleClickScrollsIfNeeded(t),"ui"===o&&this.gos.get("suppressContextMenu"))return;if(s(t??i.touches[0])){const e=t??i;e?.cancelable&&e.preventDefault()}}async focusHeaderCell(e){const{column:t,columnIndex:i,headerPosition:o,eventSource:r}=e,{visibleCols:n,headerNavigation:a,focusSvc:l}=this.beans,d=await n.allCols.some(e=>e===t);if(this.isAlive())if(t?.isAlive()&&d&&r&&(0,s._isVisible)(r)){const e=(0,s._findTabbableParent)(r);e&&(a?.scrollToColumn(t),e.focus())}else if(o&&-1!==i){const e=n.allCols,t=e[i]||(0,s._last)(e);t&&l.focusHeaderPosition({headerPosition:{headerRowIndex:o.headerRowIndex,column:t}})}}blockMiddleClickScrollsIfNeeded(e){this.gos.get("suppressMiddleClickScrolls")&&2===e.which&&e.preventDefault()}}t.MenuUtils=o},70234:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t._preserveRangesWhile=void 0;const s=i(76624);t._preserveRangesWhile=function(e,t){if(!e.gos.get("enableCellTextSelection"))return t();if(!(0,s._isBrowserFirefox)()&&!(0,s._isBrowserSafari)())return t();const{selection:i,ranges:o}=function(e){const t=(0,s._getRootNode)(e),i="getSelection"in t?t.getSelection():null,o=[];for(let e=0;e<(i?.rangeCount??0);e++){const t=i?.getRangeAt(e);t&&o.push(t)}return{selection:i,ranges:o}}(e);t(),i?.removeAllRanges();for(const e of o)i?.addRange(e)}},46242:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.isTargetUnderManagedComponent=t.findFocusableElementBeforeTabGuard=void 0;const s=i(76624);t.findFocusableElementBeforeTabGuard=function(e,t){if(!t)return null;const i=(0,s._findFocusableElements)(e),o=i.indexOf(t);if(-1===o)return null;let r=-1;for(let e=o-1;e>=0;e--)if(i[e].classList.contains(s.TabGuardClassNames.TAB_GUARD_TOP)){r=e;break}return r<=0?null:i[r-1]},t.isTargetUnderManagedComponent=function(e,t){if(!t)return!1;const i=e.querySelectorAll(`.${s._FOCUS_MANAGED_CLASS}`);if(!i.length)return!1;for(let e=0;ethis.onFocusIn(e)})}refreshGui(e){return e===this.lastOpenedInContainer?s.AgPromise.resolve():(this.tabGuardFeature.removeAllChildrenExceptTabGuards(),this.destroyChildren(),s.AgPromise.all(this.getFilterWrappers().map((t,i)=>{if(!t)return s.AgPromise.resolve(null);const o=this.getFilterFromWrapper(t),r=this.getCompFromWrapper(t),n=this.filterDefs[i],l=(0,a.getFilterTitle)(o,n);let d;if("subMenu"===n.display&&"toolPanel"!==e)d=this.insertFilterMenu(r,o,l).then(e=>e.getGui());else if("subMenu"===n.display||"accordion"===n.display){const e=this.insertFilterGroup(o,r,l);d=s.AgPromise.resolve(e.getGui())}else d=s.AgPromise.resolve(r.getGui());return d})).then(t=>{t.forEach((e,t)=>{e&&(t>0&&this.appendChild((0,s._createElement)({tag:"div",cls:"ag-filter-separator"})),this.appendChild(e))}),this.filterGuis=t,this.lastOpenedInContainer=e}))}destroyChildren(){for(const e of this.guiDestroyFuncs)e();this.guiDestroyFuncs.length=0,this.filterGuis.length=0}insertFilterMenu(e,t,i){const o=e.getGui();(0,s._setAriaRole)(o,"dialog");const a=this.createBean(new r.MenuItemComponent),l={getGui:()=>e.getGui(),afterGuiAttached:i=>{e.afterGuiAttached?.(i),e!==t&&t.afterGuiAttached?.(i)}};return a.init({menuItemDef:{name:i,subMenu:[],subMenuRole:"dialog",cssClasses:["ag-multi-filter-menu-item"],menuItem:n.MenuItemRenderer,menuItemParams:{cssClassPrefix:"ag-compact-menu-option",isCompact:!0}},level:0,isAnotherSubMenuOpen:()=>!1,childComponent:l,contextParams:{column:null,node:null,value:null}}).then(()=>{a.setParentComponent(this),this.guiDestroyFuncs.push(()=>this.destroyBean(a)),this.addManagedListeners(a,{menuItemActivated:e=>{this.lastActivatedMenuItem&&this.lastActivatedMenuItem!==e.menuItem&&this.lastActivatedMenuItem.deactivate(),this.lastActivatedMenuItem=e.menuItem}});const e=a.getGui();return a.addManagedElementListeners(e,{keydown:e=>{const{key:t}=e;switch(t){case s.KeyCode.UP:case s.KeyCode.RIGHT:case s.KeyCode.DOWN:case s.KeyCode.LEFT:e.preventDefault(),t===s.KeyCode.RIGHT&&a.openSubMenu(!0)}},focusin:()=>a.activate(),focusout:()=>{a.isSubMenuOpen()||a.isSubMenuOpening()||a.deactivate()}}),a})}insertFilterGroup(e,t,i){const s=this.createBean(new o.AgGroupComponent({title:i,cssIdentifier:"multi-filter"}));return this.guiDestroyFuncs.push(()=>this.destroyBean(s)),s.addItem(t.getGui()),s.toggleGroupExpand(!1),e.afterGuiAttached&&s.addManagedListeners(s,{expanded:()=>e.afterGuiAttached({container:this.lastOpenedInContainer,suppressFocus:!0,hidePopup:this.hidePopup})}),s}afterGuiAttached(e){let t;e?(this.hidePopup=e.hidePopup,t=this.refreshGui(e.container)):(this.hidePopup=void 0,t=s.AgPromise.resolve());const i=e?.suppressFocus;t.then(()=>{const{filterDefs:t,filterGuis:o,beans:r}=this,n=this.getFilterWrappers();let l=!!i;t&&(0,a.forEachReverse)(t,(t,r)=>{const a=0===r,d=t.display&&"inline"!==t.display,c=i||!a||d,u={...e??{},suppressFocus:c},h=n[r],g=h?this.getFilterFromWrapper(h):void 0;if(h){const e=this.getCompFromWrapper(h);e!==g&&e.afterGuiAttached(u)}if(g&&(this.executeFunctionIfExistsOnFilter(g,"afterGuiAttached",u),a&&!c&&(l=!0)),!i&&a&&d){const e=o[r];e&&((0,s._focusInto)(e)||e.focus({preventScroll:!0}),l=!0)}});const d=(0,s._getActiveDomElement)(r);l||!(0,s._isNothingFocused)(r)&&!this.getGui().contains(d)||this.forceFocusOutOfContainer(!0)})}afterGuiDetached(){this.executeFunctionIfExists("afterGuiDetached")}onAnyFilterChanged(){this.executeFunctionIfExists("onAnyFilterChanged",e=>this.executeOnWrapper(e,"onAnyFilterChanged"))}onNewRowsLoaded(){this.executeFunctionIfExists("onNewRowsLoaded",e=>this.executeOnWrapper(e,"onNewRowsLoaded"))}destroy(){this.destroyChildren(),this.hidePopup=void 0,super.destroy()}executeOnWrapper(e,t){}executeFunctionIfExists(e,t){(0,a.forEachReverse)(this.getFilterWrappers(),i=>{i&&(t?.(i),this.executeFunctionIfExistsOnFilter(this.getFilterFromWrapper(i),e))})}executeFunctionIfExistsOnFilter(e,t,...i){const s=e[t];"function"==typeof s&&s.apply(e,i)}onFocusIn(e){const t=this.lastActivatedMenuItem;null==t||t.getGui().contains(e.target)||(t.deactivate(),this.lastActivatedMenuItem=null)}}t.BaseMultiFilter=l},59038:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.MultiFilter=void 0;const s=i(76624),o=i(75869),r=i(95914);class n extends o.BaseMultiFilter{constructor(){super(...arguments),this.filterType="multi",this.wrappers=[],this.activeFilterIndices=[],this.afterFiltersReadyFuncs=[]}init(e){this.params=e,this.filterDefs=(0,r.getMultiFilterDefs)(e);const t=(0,s._getFilterModel)(this.beans.colFilter.model,e.column.getColId()),{filterChangedCallback:i}=e;this.filterChangedCallback=i;const o=this.filterDefs.map((e,i)=>this.createFilter(e,i,t));return new s.AgPromise(e=>{s.AgPromise.all(o).then(t=>{this.wrappers=t,this.refreshGui("columnMenu").then(()=>{e()})})}).then(()=>{for(const e of this.afterFiltersReadyFuncs)e();this.afterFiltersReadyFuncs.length=0})}refresh(e){return this.params=e,!0}isFilterActive(){return this.wrappers.some(e=>{if(!e)return!1;const{filter:t,handler:i,model:s}=e;return i?null!=s:t.isFilterActive()})}getLastActiveFilterIndex(){const e=this.activeFilterIndices;return e.length>0?e[e.length-1]:null}doesFilterPass(e,t){return this.wrappers.every((i,s)=>{if(!i||null!=t&&s===t)return!0;const{handler:o,filter:r,model:n}=i;return o?null==n||o.doesFilterPass({...e,model:n,handlerParams:i.handlerParams}):!r.isFilterActive()||r.doesFilterPass(e)})}getModelFromUi(){return{filterType:this.filterType,filterModels:this.wrappers.map(e=>{if(!e)return null;const t=e.filter;return"function"==typeof t.getModelFromUi?t.getModelFromUi():null})}}getModel(){if(!this.isFilterActive())return null;return{filterType:this.filterType,filterModels:this.wrappers.map(e=>{if(!e)return null;const{filter:t,handler:i,model:s}=e;return i?s:t.isFilterActive()?t.getModel():null})}}setModel(e){const t=[];return this.wrappers.forEach((i,o)=>{if(!i)return;const n=(0,r.getFilterModelForIndex)(e,o),{filter:a,filterParams:l,handler:d,handlerParams:c,state:u}=i;if(d){const e={model:n,state:u?.state};i.state=e,i.model=n,t.push((0,s._refreshHandlerAndUi)(()=>s.AgPromise.resolve({filter:a,filterParams:l}),d,c,n,e,"api").then(()=>{this.updateActiveListForHandler(o,i.model)}))}else t.push(((e,t)=>new s.AgPromise(i=>{const s=e.setModel(t);s?s.then(i):i()}))(a,n).then(()=>{this.updateActiveListForFilter(o,a)}))}),s.AgPromise.all(t).then(()=>{})}applyModel(e="api"){let t=!1;for(const i of this.wrappers)if(i){const o=i.filter;o instanceof s.ProvidedFilter&&(t=o.applyModel(e)||t)}return t}getChildFilterInstance(e){return this.wrappers[e]?.filter}getNumChildFilters(){return this.wrappers.length}destroy(){for(const e of this.wrappers)this.destroyBean(e?.filter),this.destroyBean(e?.handler);this.wrappers.length=0,super.destroy()}getFilterWrappers(){return this.wrappers}getFilterFromWrapper(e){return e.filter}getCompFromWrapper(e){return e.comp}executeOnWrapper(e,t){e.handler?.[t]?.()}createFilter(e,t,i){const o=this.params.column;let n,a=null;const l=this.beans,d=(e,i)=>{const o=this.wrappers[t];if(!o)return;const r={model:e,state:o.state?.state};o.state=r,o.model=e,(0,s._refreshHandlerAndUi)(()=>s.AgPromise.resolve({filter:o.filter,filterParams:o.filterParams}),o.handler,o.handlerParams,e,r,"ui").then(()=>{this.onHandlerModelChanged(t,o.model,i)})},{compDetails:c,handler:u,handlerParams:h,createFilterUi:g}=l.colFilter.createFilterInstance(o,e,"agTextColumnFilter",(s,h)=>{const g={...s,filterChangedCallback:h?()=>{}:e=>{this.executeWhenAllFiltersReady(()=>this.onFilterModelChanged(t,e))},doesRowPassOtherFilter:e=>s.doesRowPassOtherFilter(e)&&this.doesFilterPass({node:e,data:e.data},t),getValue:(0,r.updateGetValue)(l,o,e,s.getValue)};return h&&(a=(0,r.getFilterModelForIndex)(i,t),n=this.updateDisplayParams(g,t,a,()=>c,()=>u,d)),g});if(!g)return s.AgPromise.resolve(null);let p;if(u){const{doesRowPassOtherFilter:i,getValue:s}=h;p={...h,onModelChange:d,doesRowPassOtherFilter:e=>i(e)&&this.doesFilterPass({node:e,data:e.data},t),getValue:(0,r.updateGetValue)(l,o,e,s)},u.init?.({...p,model:a,source:"init"})}return g().then(e=>{if(!u)return{filter:e,comp:e};const t=c?.params;return{filter:e,comp:n(e),filterParams:t,handler:u,handlerParams:p,model:a}})}updateDisplayParams(e,t,i,o,r,n){const a=this.params.column,l=new s.LocalEventService;e.model=i,e.state={model:i},e.onModelChange=n,e.getHandler=r;const d=(e,t)=>{e.state=t,l.dispatchEvent({type:"filterStateChanged",column:a,state:t})};e.onStateChange=e=>{const i=this.wrappers[t];i&&(d(i,e),(0,s._refreshFilterUi)(i.filter,i.filterParams,i.model??null,e,"ui"))};const c=(e,i,r)=>{const n=this.wrappers[t];if(!n)return;const a=()=>n?.model??null;(0,s._updateFilterModel)({action:i,filterParams:n.filterParams,getFilterUi:()=>{const e=s.AgPromise.resolve(n.filter);return{created:!0,filterParams:n.filterParams,compDetails:o(),create:()=>e,promise:e}},getModel:a,getState:()=>n?.state??{model:a()},updateState:e=>d(n,e),updateModel:e=>n.filterParams?.onModelChange(e,r),processModelToApply:n.handler?.processModelToApply?.bind(n.handler)})};return e.onAction=(e,t,i)=>{c(0,e,t),l.dispatchEvent({type:"filterAction",column:a,action:e,event:i})},e=>{const t=o()?.params;return this.createManagedBean(new s.FilterWrapperComp(a,{comp:e,params:t,isHandler:!0},l,c,!1))}}executeWhenAllFiltersReady(e){(this.wrappers?.length??0)>0?e():this.afterFiltersReadyFuncs.push(e)}updateActiveListForFilter(e,t){this.updateActiveList(e,()=>t?.isFilterActive())}updateActiveListForHandler(e,t){this.updateActiveList(e,()=>null!=t)}updateActiveList(e,t){const i=this.activeFilterIndices;(0,s._removeFromArray)(this.activeFilterIndices,e),t()&&i.push(e)}onFilterModelChanged(e,t){this.updateActiveListForFilter(e,this.wrappers[e]?.filter),this.filterChanged(e,t)}onHandlerModelChanged(e,t,i){this.updateActiveListForHandler(e,t),this.filterChanged(e,i)}filterChanged(e,t){this.filterChangedCallback(t),this.wrappers.forEach((t,i)=>{if(e===i||!t)return;const{filter:s,handler:o}=t;o?.onAnyFilterChanged?.(),"function"==typeof s.onAnyFilterChanged&&s.onAnyFilterChanged()})}getModelAsString(e){if(!e?.filterModels?.length)return"";const t=this.getLastActiveFilterIndex()??0,i=this.wrappers[t]?.filter;return i?.getModelAsString?.(e.filterModels[t])??""}}t.MultiFilter=n},55912:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.MultiFilterHandler=void 0;const s=i(76624),o=i(95914);class r extends s.BeanStub{constructor(){super(...arguments),this.filterType="multi",this.handlerWrappers=[],this.activeFilterIndices=[],this.filterDefs=[]}init(e){this.params=e;const t=(0,o.getMultiFilterDefs)(e.filterParams);this.filterDefs=t,t.forEach((t,i)=>{const r=this.beans.colFilter.createHandler(e.column,t,"agTextColumnFilter");if(this.handlerWrappers.push(r),!r)return void(0,s._warn)(278,{colId:e.column.getColId()});const{handler:n,handlerParams:a}=r;n.init?.({...this.updateHandlerParams(a,i,!0),model:(0,o.getFilterModelForIndex)(e.model,i),source:"init"})}),this.resetActiveList(e.model)}refresh(e){this.params=e;const{model:t,source:i,filterParams:s}=e,r=s?.filters;this.handlerWrappers.forEach((s,n)=>{if(s){const a=this.updateHandlerParams(e,n,!1,r?.[n].filterParams);s.handlerParams=a,s.handler.refresh?.({...a,model:(0,o.getFilterModelForIndex)(t,n),source:i})}}),"floating"!==e.source&&"ui"!==e.source&&this.resetActiveList(e.model),e.additionalEventAttributes?.fromButtons&&this.onAnyFilterChanged()}updateHandlerParams(e,t,i,s){const{onModelChange:r,doesRowPassOtherFilter:n,getValue:a}=e,l={...e,onModelChange:(e,i)=>r((0,o.getUpdatedMultiFilterModel)(this.params.model,this.handlerWrappers.length,e,t),i),doesRowPassOtherFilter:e=>n(e)&&this.doesFilterPass({node:e,data:e.data,model:this.params.model,handlerParams:l},t),getValue:(0,o.updateGetValue)(this.beans,e.column,this.filterDefs[t],a),filterParams:this.updateFilterParams(e,i,s)};return l}updateFilterParams(e,t,i){const o=e.filterParams;i?.buttons&&t&&(0,s._warn)(292,{colId:e.column.getColId()});const r=i?{...o,...i}:o;if(!r.buttons)return r;if(i)return delete r.buttons,r;const{buttons:n,...a}=r;return a}doesFilterPass(e,t){const i=e.model?.filterModels;return null==i||this.handlerWrappers.every((s,o)=>{const r=i[o];if(null==r||null!=t&&o===t)return!0;const n=s?.handler;return!n||n.doesFilterPass({...e,model:r,handlerParams:s.handlerParams})})}resetActiveList(e){this.activeFilterIndices=[];const t=e?.filterModels;if(null!=t)for(let e=0;e0?e[e.length-1]:null}getModelAsString(e,t){const i="filterToolPanel"===t,s=()=>i?this.getLocaleTextFunc()("filterSummaryInactive","is (All)"):"";if(!e?.filterModels?.length)return s();const o=this.getLastActiveFilterIndex()??0,r=this.handlerWrappers[o];return r?.handler.getModelAsString?.(e.filterModels[o],t)??s()}getHandler(e){return this.handlerWrappers[e]?.handler}onAnyFilterChanged(){(0,o.forEachReverse)(this.handlerWrappers,e=>e?.handler?.onAnyFilterChanged?.())}onNewRowsLoaded(){(0,o.forEachReverse)(this.handlerWrappers,e=>e?.handler?.onNewRowsLoaded?.())}destroy(){for(const e of this.handlerWrappers)this.destroyBean(e?.handler);this.handlerWrappers.length=0,super.destroy()}}t.MultiFilterHandler=r},75434:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.MultiFilterModule=void 0;const s=i(76624),o=i(39206),r=i(19586),n=i(73375),a=i(59038),l=i(55912),d=i(94179),c=i(1748),u=i(22335);t.MultiFilterModule={moduleName:"MultiFilter",version:r.VERSION,userComponents:{agMultiColumnFilter:{getComp:e=>e.gos.get("enableFilterHandlers")?{classImp:c.MultiFilterUi,params:{useForm:!0}}:a.MultiFilter},agMultiColumnFloatingFilter:u.MultiFloatingFilterComp},beans:[d.MultiFilterService],dynamicBeans:{agMultiColumnFilterHandler:l.MultiFilterHandler},dependsOn:[o.EnterpriseCoreModule,s._ColumnFilterModule,n.MenuItemModule]}},94179:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.MultiFilterService=void 0;const s=i(76624);class o extends s.BeanStub{constructor(){super(...arguments),this.beanName="multiFilter"}getParamsForDataType(e,t,i,o){let r=e?.filters;const n=this.beans;if(!r){r=[{filter:(0,s._getDefaultSimpleFilter)(i.baseDataType)},{filter:"agSetColumnFilter"}]}const a=this.getLocaleTextFunc();return r=r.map(e=>{const{filter:r,filterParams:l,filterValueGetter:d}=e;if("string"!=typeof r)return e;const{filterParams:c,filterValueGetter:u}=(0,s._getFilterParamsForDataType)(r,l,d??t,i,o,n,a);return{...e,filterParams:c,filterValueGetter:u}}),{filterParams:{...e,filters:r}}}}t.MultiFilterService=o},1748:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.MultiFilterUi=void 0;const s=i(76624),o=i(75869),r=i(95914);class n extends o.BaseMultiFilter{constructor(){super(...arguments),this.filterType="multi",this.filters=[],this.filterParams=[],this.validity=[]}init(e){this.params=e;const t=(0,r.getMultiFilterDefs)(e).map(t=>{if(t.filterParams?.buttons){(0,s._warn)(292,{colId:e.column.getColId()});const i={...t.filterParams};return delete i.buttons,{...t,filterParams:i}}return t});this.filterDefs=t,this.allState=e.state;const i=this.filterDefs.map((e,t)=>this.createFilter(e,t));return new s.AgPromise(e=>{s.AgPromise.all(i).then(t=>{this.filters=t,this.refreshGui("columnMenu").then(()=>{e()})})})}refresh(e){const{model:t,state:i,source:o}=e;if("colDef"===o)return!1;this.params=e;const n=this.filterParams;if(i===this.allState)return!0;this.allState=i;const a=i.state;return this.filters.forEach((e,l)=>{const d=(0,r.getFilterModelForIndex)(t,l),c={state:a?.[l],model:(0,r.getFilterModelForIndex)(i.model,l)};(0,s._refreshFilterUi)(e,n[l],d,c,o)}),!0}getLastActiveFilterIndex(){return this.getHandler().getLastActiveFilterIndex?.()??null}getChildFilterInstance(e){return this.filters[e]??void 0}getNumChildFilters(){return this.filters.length}destroy(){for(const e of this.filters)this.destroyBean(e);this.filters.length=0,super.destroy()}getFilterWrappers(){return this.filters}getFilterFromWrapper(e){return e}getCompFromWrapper(e){return e}createFilter(e,t){const i=this.beans.userCompFactory,o=this.updateParams(e,this.params,t),r=(0,s._getFilterDetails)(i,e,o,"agTextColumnFilter");return r?(this.filterParams[t]=r.params,r.newAgStackInstance()):s.AgPromise.resolve(null)}updateParams(e,t,i){const{doesRowPassOtherFilter:o,model:n,onModelChange:a,state:l,onStateChange:d,column:c,source:u,onAction:h,onUiChange:g,getValue:p}=t,m=(0,r.getFilterModelForIndex)(n,i),f=l?{model:(0,r.getFilterModelForIndex)(l.model,i),state:l.state?.[i]}:{model:m},C=()=>{const e=this.getHandler();this.filters.forEach((t,s)=>{i!==s&&(e.getHandler(s)?.onAnyFilterChanged?.(),t?.onAnyFilterChanged?.())})},v=this.beans.colFilter;return{...v.createBaseFilterParams(c),...e,doesRowPassOtherFilter:e=>o(e)&&this.getHandler().doesFilterPass({node:e,data:e.data,model:this.params.model,handlerParams:v.getHandlerParams(c)},i),model:m,state:f,onModelChange:(e,t)=>{const{filters:s,params:o}=this,n=(0,r.getUpdatedMultiFilterModel)(o.model,s.length,e,i);this.updateActiveList(i,e),a(n,t),C()},onStateChange:e=>this.onStateChange(d,i,e),getHandler:()=>this.getHandler().getHandler(i),onAction:(e,o,n)=>{if((0,s._isUseApplyButton)(t))return;const a="apply"===e||"reset"===e;a&&this.updateActiveList(i,(0,r.getFilterModelForIndex)(this.params.state.model,i)),h(e,o,n),a&&C()},onUiChange:g,source:u,getValue:(0,r.updateGetValue)(this.beans,c,e,p)}}updateActiveList(e,t){this.getHandler().updateActiveList?.(e,t)}getHandler(){return this.params.getHandler()}onStateChange(e,t,i){const{model:s,state:o,valid:n}=i,a=this.validity;a[t]=n;const l=this.allState,d=(0,r.getUpdatedMultiFilterModel)(l.model,this.filters.length,s,t),c=a.every(e=>!1!==e),u=[...l.state??[]];u[t]=o;const h={state:u,model:d,valid:c};this.allState=h,e(h)}getModelAsString(e){return this.getHandler().getModelAsString?.(e)??""}}t.MultiFilterUi=n},95914:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.updateGetValue=t.getFilterModelForIndex=t.getUpdatedMultiFilterModel=t.getFilterTitle=t.forEachReverse=t.getMultiFilterDefs=void 0;const s=i(76624);t.getMultiFilterDefs=function(e){const{filters:t}=e;return t&&t.length>0?t:[{filter:"agTextColumnFilter"},{filter:"agSetColumnFilter"}]},t.forEachReverse=function(e,t){if(null!=e)for(let i=e.length-1;i>=0;i--)t(e[i],i)},t.getFilterTitle=function(e,t){return null!=t.title?t.title:e instanceof s.ProvidedFilter?e.getFilterTitle():"Filter"},t.getUpdatedMultiFilterModel=function(e,t,i,s){const o=[],r=e?.filterModels;for(let e=0;enull==e)?null:{filterType:"multi",filterModels:o}},t.getFilterModelForIndex=function(e,t){return e?.filterModels?.[t]??null},t.updateGetValue=function(e,t,i,s){const o=i.filterValueGetter;return o?e.colFilter.createGetValue(t,o):s}},22335:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.MultiFloatingFilterComp=void 0;const s=i(76624),o=i(59038),r=i(1748),n=i(95914),a={tag:"div",cls:"ag-multi-floating-filter ag-floating-filter-input"};class l extends s.Component{constructor(){super(a),this.floatingFilters=[],this.compDetailsList=[]}init(e){this.params=e;const{compDetailsList:t}=this.getCompDetailsList(e);return this.setParams(t)}setParams(e){const t=[];return e.forEach(e=>{const i=e?.newAgStackInstance();null!=i&&(this.compDetailsList.push(e),t.push(i))}),s.AgPromise.all(t).then(e=>{e.forEach((e,t)=>{this.floatingFilters.push(e);const i=e.getGui();this.appendChild(i),t>0&&(0,s._setDisplayed)(i,!1)})})}refresh(e){this.params=e;const{compDetailsList:t,floatingFilterParamsList:i}=this.getCompDetailsList(e);if(t.length===this.compDetailsList.length&&t.every((e,t)=>!this.beans.colFilter?.areFilterCompsDifferent(this.compDetailsList[t],e))){if(i.forEach((e,t)=>{const i=this.floatingFilters[t];i.refresh?.(e)}),this.gos.get("enableFilterHandlers")){const t=e;if(null==t.model)this.floatingFilters.forEach((e,t)=>{(0,s._setDisplayed)(e.getGui(),0===t)});else{const e=t.getHandler()?.getLastActiveFilterIndex?.();this.floatingFilters.forEach((t,i)=>{const o=null==e?0===i:i===e;(0,s._setDisplayed)(t.getGui(),o)})}}}else(0,s._clearElement)(this.getGui()),this.destroyBeans(this.floatingFilters),this.floatingFilters=[],this.compDetailsList=[],this.setParams(t)}getCompDetailsList(e){const t=[],i=[],o=e.filterParams,r=e.currentParentModel,a=(0,n.getMultiFilterDefs)(o);return a.forEach((o,l)=>{const d={...e,parentFilterInstance:e=>{this.parentMultiFilterInstance(t=>{const i=t.getChildFilterInstance(l);null!=i&&e(i)})},currentParentModel:()=>r()?.filterModels?.[l]??null};if(this.gos.get("enableFilterHandlers")){const e=d;e.model=e.model?.filterModels?.[l]??null;const{onModelChange:t,getHandler:i}=e;e.onModelChange=(e,i)=>t((0,n.getUpdatedMultiFilterModel)(this.params.model,a.length,e,l),i),e.getHandler=()=>i().getHandler(l)}(0,s._mergeDeep)(d.filterParams,o.filterParams);const c=this.getCompDetails(o,d);c&&(t.push(c),i.push(d))}),{compDetailsList:t,floatingFilterParamsList:i}}onParentModelChanged(e,t){t?.afterFloatingFilter||this.parentMultiFilterInstance(i=>{if(null==e)this.floatingFilters.forEach((e,i)=>{e.onParentModelChanged(null,t),(0,s._setDisplayed)(e.getGui(),0===i)});else{const o=i.getLastActiveFilterIndex();this.floatingFilters.forEach((i,r)=>{const n=e.filterModels.length>r?e.filterModels[r]:null;i.onParentModelChanged(n,t);const a=null==o?0===r:r===o;(0,s._setDisplayed)(i.getGui(),a)})}})}destroy(){this.destroyBeans(this.floatingFilters),this.floatingFilters.length=0,super.destroy()}getCompDetails(e,t){const{colFilter:i,frameworkOverrides:o,userCompFactory:r}=this.beans,n=(0,s._getDefaultFloatingFilterType)(o,e,()=>i.getDefaultFloatingFilter(this.params.column))??"agReadOnlyFloatingFilter";return(0,s._getFloatingFilterCompDetails)(r,e,t,n)}parentMultiFilterInstance(e){this.params.parentFilterInstance(t=>{t instanceof o.MultiFilter||t instanceof r.MultiFilterUi||(0,s._error)(120),e(t)})}}t.MultiFloatingFilterComp=l},85792:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.getPivotResultColumns=t.setPivotResultColumns=t.getPivotColumns=t.addPivotColumns=t.removePivotColumns=t.setPivotColumns=t.addValueColumns=t.removeValueColumns=t.getValueColumns=t.setValueColumns=t.getPivotResultColumn=t.isPivotMode=void 0,t.isPivotMode=function(e){return e.colModel.isPivotMode()},t.getPivotResultColumn=function(e,t,i){return e.pivotResultCols?.lookupPivotResultCol(t,i)??null},t.setValueColumns=function(e,t){e.valueColsSvc?.setColumns(t,"api")},t.getValueColumns=function(e){return e.valueColsSvc?.columns??[]},t.removeValueColumns=function(e,t){e.valueColsSvc?.removeColumns(t,"api")},t.addValueColumns=function(e,t){e.valueColsSvc?.addColumns(t,"api")},t.setPivotColumns=function(e,t){e.pivotColsSvc?.setColumns(t,"api")},t.removePivotColumns=function(e,t){e.pivotColsSvc?.removeColumns(t,"api")},t.addPivotColumns=function(e,t){e.pivotColsSvc?.addColumns(t,"api")},t.getPivotColumns=function(e){return e.pivotColsSvc?.columns??[]},t.setPivotResultColumns=function(e,t){e.pivotResultCols?.setPivotResultCols(t,"api")},t.getPivotResultColumns=function(e){const t=e.pivotResultCols?.getPivotResultCols();return t?t.list:null}},6616:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.PivotColDefService=void 0;const s=i(76624),o="PivotRowTotal_",r=({headerName:e},{headerName:t})=>e&&!t?1:!e&&t?-1:e||t?et?1:0:0;class n extends s.BeanStub{constructor(){super(...arguments),this.beanName="pivotColDefSvc"}wireBeans(e){this.colModel=e.colModel,this.pivotColsSvc=e.pivotColsSvc,this.valueColsSvc=e.valueColsSvc,this.colNames=e.colNames}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);const i=function e(t,i=[]){return t.forEach(t=>{void 0!==t.children?e(t.children,i):i.push(t)}),i}(t);return this.addRowGroupTotals(t,i),this.addExpandablePivotGroups(t,i),this.addPivotTotalsToGroups(t,i),t}createPivotColumnsFromUniqueValues(e){const t=this.pivotColsSvc?.columns??[],i=t.length;return this.recursivelyBuildGroup(0,e,[],i,t)}recursivelyBuildGroup(e,t,i,s,o){if(e>=s)return this.buildMeasureCols(i);const{pivotComparator:n}=o[e].getColDef(),a=n?(e=>(t,i)=>e(t.headerName,i.headerName))(n):r,l=this.valueColsSvc?.columns;if(1===l?.length&&this.gos.get("removePivotHeaderRowWhenSingleValueColumn")&&e===s-1){const e=[];for(const s of t.keys()){const t=[...i,s],o=this.createColDef(l[0],s,t);o.columnGroupShow="open",e.push(o)}return e.sort(a),e}const d=[];for(const r of t.keys()){const n=-1===this.pivotDefaultExpanded||e{const i=this.colNames.getDisplayNameForColumn(t,"header"),s=this.createColDef(t,i,e);return s.columnGroupShow="open",s})}addExpandablePivotGroups(e,t){const i=this.gos.get("suppressExpandablePivotGroups");if(i||this.gos.get("pivotColumnGroupTotals"))return;const s=(e,t,o)=>{if("children"in e){const{valueColsSvc:r}=this,{columns:n=[]}=r??{},a=new Map;e.children.forEach(e=>{s(e,t,a)});const l=!e.children.some(e=>e.children),d=l&&1===n.length&&this.gos.get("removePivotHeaderRowWhenSingleValueColumn");for(const s of n){const o=this.colNames.getDisplayNameForColumn(s,"header"),r=this.createColDef(s,o,e.pivotKeys);if(r.pivotTotalColumnIds=a.get(s.getColId()),r.columnGroupShow=i?"open":"closed",r.aggFunc=s.getAggFunc(),!l||d){e.children.push(r),t.push(r)}}return void this.merge(o,a)}if(!e.pivotValueColumn)return;const r=e.pivotValueColumn.getColId();if(o.has(r)){o.get(r).push(e.colId)}else o.set(r,[e.colId])};e.forEach(e=>{s(e,t,new Map)})}addPivotTotalsToGroups(e,t){if(!this.gos.get("pivotColumnGroupTotals"))return;const i="after"===this.gos.get("pivotColumnGroupTotals"),s=this.valueColsSvc?.columns,o=s?.map(e=>e.getAggFunc());if(o&&!(o.length<1)&&this.sameAggFuncs(o)&&s){const o=s[0];e.forEach(e=>{this.recursivelyAddPivotTotal(e,t,o,i)})}}recursivelyAddPivotTotal(e,t,i,s){const o=e;if(!o.children){const t=e;return t.colId?[t.colId]:null}let r=[];if(o.children.forEach(e=>{const o=this.recursivelyAddPivotTotal(e,t,i,s);o&&(r=r.concat(o))}),o.children.length>1){const o=this.getLocaleTextFunc()("pivotColumnGroupTotals","Total"),n=this.createColDef(i,o,e.pivotKeys,!0);n.pivotTotalColumnIds=r,n.aggFunc=i.getAggFunc(),n.columnGroupShow=this.gos.get("suppressExpandablePivotGroups")?"open":void 0;const a=e.children;s?a.push(n):a.unshift(n),t.push(n)}return r}addRowGroupTotals(e,t){if(!this.gos.get("pivotRowTotals"))return;const i="after"===this.gos.get("pivotRowTotals"),s=(this.valueColsSvc?.columns??[]).slice();i||s.reverse();const r=s.length>1||!this.gos.get("removePivotHeaderRowWhenSingleValueColumn");for(let n=0;ne.data?.[e.colDef.field],o.pivotKeys=i,o.pivotValueColumn=e,!0===o.filter&&(o.filter="agNumberColumnFilter"),o}sameAggFuncs(e){if(1==e.length)return!0;for(let t=1;t{const s=[...e.has(i)?e.get(i):[],...t];e.set(i,s)})}generateColumnGroupId(e){return`pivotGroup_${(this.pivotColsSvc?.columns??[]).map(e=>e.getColId()).join("-")}_${e.join("-")}`}generateColumnId(e,t){return`pivot_${(this.pivotColsSvc?.columns??[]).map(e=>e.getColId()).join("-")}_${e.join("-")}_${t}`}createColDefsFromFields(e){const t=new Map;for(let i=0;i{const r=[];for(const[t,n]of s){const s=i(`${e}${this.fieldSeparator}${t}`,t,n,o+1);r.push(s)}if(0===r.length){const i=this.colModel.getColDefCol(t);if(i){const s=this.colNames.getDisplayNameForColumn(i,"header")??t,o=this.createColDef(i,s,void 0,!1);return o.colId=e,o.aggFunc=i.getAggFunc(),o.valueGetter=t=>t.data?.[e],o}return{colId:e,headerName:t,valueGetter:t=>t.data?.[e]}}if(this.gos.get("removePivotHeaderRowWhenSingleValueColumn")&&1===r.length&&"colId"in r[0])return r[0].headerName=t,r[0];return{openByDefault:-1===this.pivotDefaultExpanded||othis.setColPivotActive(e,t,i),add:(e,t,i)=>this.setColPivotActive(e,!0,i),remove:(e,t,i)=>this.setColPivotActive(e,!1,i)},this.columnOrdering={enableProp:"pivot",initialEnableProp:"initialPivot",indexProp:"pivotIndex",initialIndexProp:"initialPivotIndex"},this.columnExtractors={setFlagFunc:(e,t,i)=>this.setColPivotActive(e,t,i),getIndexFunc:e=>e.pivotIndex,getInitialIndexFunc:e=>e.initialPivotIndex,getValueFunc:e=>e.pivot,getInitialValueFunc:e=>e.initialPivot},this.modifyColumnsNoEventsCallbacks={addCol:e=>{this.columns.includes(e)||this.columns.push(e)},removeCol:e=>(0,s._removeFromArray)(this.columns,e)}}syncColumnWithState(e,t,i,s){const{value1:o,value2:r}=i("pivot","pivotIndex");void 0===o&&void 0===r||("number"==typeof r||o?(e.isPivotActive()||(this.setColPivotActive(e,!0,t),this.modifyColumnsNoEventsCallbacks.addCol(e)),s&&"number"==typeof r&&(s[e.getId()]=r)):e.isPivotActive()&&(this.setColPivotActive(e,!1,t),this.modifyColumnsNoEventsCallbacks.removeCol(e)))}setColPivotActive(e,t,i){if(e.pivotActive!==t){if(e.pivotActive=t,t){const s=this.beans.groupHierarchyColSvc?.insertVirtualColumnsForCol(this.columns,e);s?.forEach(e=>this.setColPivotActive(e,t,i))}e.dispatchColEvent("columnPivotChanged",i)}e.dispatchStateUpdatedEvent("pivot")}}t.PivotColsSvc=o},75470:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.PivotModule=t.SharedPivotModule=void 0;const s=i(76624),o=i(81442),r=i(16858),n=i(19586),a=i(85792),l=i(6616),d=i(73227),c=i(66465),u=i(95374);t.SharedPivotModule={moduleName:"SharedPivot",version:n.VERSION,beans:[c.PivotResultColsService,l.PivotColDefService,d.PivotColsSvc],apiFunctions:{isPivotMode:a.isPivotMode,getPivotResultColumn:a.getPivotResultColumn,setValueColumns:a.setValueColumns,getValueColumns:a.getValueColumns,removeValueColumns:a.removeValueColumns,addValueColumns:a.addValueColumns,setPivotColumns:a.setPivotColumns,removePivotColumns:a.removePivotColumns,addPivotColumns:a.addPivotColumns,getPivotColumns:a.getPivotColumns,setPivotResultColumns:a.setPivotResultColumns,getPivotResultColumns:a.getPivotResultColumns},dependsOn:[o.SharedRowGroupingModule,s._ColumnGroupModule]},t.PivotModule={moduleName:"Pivot",version:n.VERSION,rowModels:["clientSide"],beans:[u.PivotStage],dependsOn:[t.SharedPivotModule,o.RowGroupingModule,r.ClientSideRowModelHierarchyModule]}},66465:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.PivotResultColsService=void 0;const s=i(76624);class o extends s.BeanStub{constructor(){super(...arguments),this.beanName="pivotResultCols"}wireBeans(e){this.colModel=e.colModel,this.visibleCols=e.visibleCols}destroy(){(0,s._destroyColumnTree)(this.beans,this.pivotResultCols?.tree),super.destroy()}isPivotResultColsPresent(){return null!=this.pivotResultCols}lookupPivotResultCol(e,t){if(null==this.pivotResultCols)return null;const i=this.colModel.getColDefCol(t);let o=null;for(const t of this.pivotResultCols.list){const r=t.getColDef().pivotKeys,n=t.getColDef().pivotValueColumn;(0,s._areEqual)(r,e)&&n===i&&(o=t)}return o}getPivotResultCols(){return this.pivotResultCols}getPivotResultCol(e){return this.pivotResultCols?this.colModel.getColFromCollection(e,this.pivotResultCols):null}setPivotResultCols(e,t){if(this.colModel.ready&&(null!=e||null!=this.pivotResultCols)){if(e){this.processPivotResultColDef(e);const i=("api"===t?s._createColumnTree:s._createColumnTreeWithIds)(this.beans,e,!1,this.pivotResultCols?.tree||this.previousPivotResultCols||void 0,t);(0,s._destroyColumnTree)(this.beans,this.pivotResultCols?.tree,i.columnTree);const o=i.columnTree,r=i.treeDepth,n=(0,s._getColumnsFromTree)(o),a={};this.pivotResultCols={tree:o,treeDepth:r,list:n,map:a};for(const e of this.pivotResultCols.list)this.pivotResultCols.map[e.getId()]=e;const l=!!this.previousPivotResultCols;this.previousPivotResultCols=null,this.colModel.refreshCols(!l,t)}else this.previousPivotResultCols=this.pivotResultCols?this.pivotResultCols.tree:null,this.pivotResultCols=null,this.colModel.refreshCols(!1,t);this.visibleCols.refresh(t)}}processPivotResultColDef(e){const t=this.gos.get("processPivotResultColDef"),i=this.gos.get("processPivotResultColGroupDef");if(!t&&!i)return;const o=e=>{e.forEach(e=>{if((0,s._exists)(e.children)){const t=e;i&&i(t),o(t.children)}else{t&&t(e)}})};e&&o(e)}}t.PivotResultColsService=o},95374:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.PivotStage=void 0;const s=i(76624),o="Exceeded maximum allowed pivot column count.",r=e=>{const t={};return e.forEach((e,i)=>t[i]=e instanceof Map?r(e):e),t};class n extends s.BeanStub{constructor(){super(...arguments),this.beanName="pivotStage",this.step="pivot",this.refreshProps=["removePivotHeaderRowWhenSingleValueColumn","pivotRowTotals","pivotColumnGroupTotals","suppressExpandablePivotGroups"],this.uniqueValues=new Map,this.lastTimeFailed=!1,this.maxUniqueValues=-1,this.currentUniqueCount=0}wireBeans(e){this.valueSvc=e.valueSvc,this.colModel=e.colModel,this.pivotResultCols=e.pivotResultCols,this.rowGroupColsSvc=e.rowGroupColsSvc,this.valueColsSvc=e.valueColsSvc,this.pivotColsSvc=e.pivotColsSvc,this.pivotColDefSvc=e.pivotColDefSvc}execute(e){this.colModel.isPivotActive()?this.executePivotOn(e):this.executePivotOff(e)}executePivotOff(e){this.aggregationColumnsHashLastTime=null,this.uniqueValues=new Map,this.pivotResultCols.isPivotResultColsPresent()&&(this.pivotResultCols.setPivotResultCols(null,"rowModelUpdated"),e&&(e.active=!1))}executePivotOn(e){const t=this.valueColsSvc?.columns.length??1,i=this.gos.get("pivotMaxGeneratedColumns");let s;this.maxUniqueValues=-1===i?-1:i/t;try{s=this.bucketUpRowNodes(e)}catch(e){if(e.message===o)return this.pivotResultCols.setPivotResultCols([],"rowModelUpdated"),this.eventSvc.dispatchEvent({type:"pivotMaxColumnsExceeded",message:e.message}),void(this.lastTimeFailed=!0);throw e}const r=this.setUniqueValues(s),n=this.valueColsSvc?.columns??[],a=n.map(e=>`${e.getId()}-${e.getColDef().headerName}`).join("#"),l=n.map(e=>e.getAggFunc().toString()).join("#"),d=this.aggregationColumnsHashLastTime!==a,c=this.aggregationFuncsHashLastTime!==l;this.aggregationColumnsHashLastTime=a,this.aggregationFuncsHashLastTime=l;const u=(this.rowGroupColsSvc?.columns??[]).map(e=>e.getId()).join("#"),h=u!==this.groupColumnsHashLastTime;this.groupColumnsHashLastTime=u;const g=this.gos.get("pivotRowTotals"),p=this.gos.get("pivotColumnGroupTotals"),m=this.gos.get("suppressExpandablePivotGroups"),f=this.gos.get("removePivotHeaderRowWhenSingleValueColumn"),C=g!==this.pivotRowTotalsLastTime||p!==this.pivotColumnGroupTotalsLastTime||m!==this.suppressExpandablePivotGroupsLastTime||f!==this.removePivotHeaderRowWhenSingleValueColumnLastTime;if(this.pivotRowTotalsLastTime=g,this.pivotColumnGroupTotalsLastTime=p,this.suppressExpandablePivotGroupsLastTime=m,this.removePivotHeaderRowWhenSingleValueColumnLastTime=f,this.lastTimeFailed||r||d||h||c||C){const t=this.pivotColDefSvc.createPivotColumnDefs(this.uniqueValues);this.pivotResultCols.setPivotResultCols(t,"rowModelUpdated"),e&&(e.active=!1)}this.lastTimeFailed=!1}setUniqueValues(e){return!(0,s._jsonEquals)(r(this.uniqueValues),r(e))&&(this.uniqueValues=e,!0)}bucketUpRowNodes(e){this.currentUniqueCount=0;const t=new Map;e.forEachChangedNodeDepthFirst(e=>{e.leafGroup&&(e.childrenMapped=null)});const i=e=>{e.leafGroup?this.bucketRowNode(e,t):e.childrenAfterFilter?.forEach(i)};return e.executeFromRootNode(i),t}bucketRowNode(e,t){const i=this.pivotColsSvc?.columns;e.childrenMapped=0===i?.length?null:r(this.bucketChildren(e.childrenAfterFilter,i,0,t)),e.sibling&&(e.sibling.childrenMapped=e.childrenMapped)}bucketChildren(e,t=[],i,r){const n=new Map,a=t[i],l=-1!==this.maxUniqueValues;if(e.forEach(e=>{let t=this.valueSvc.getKeyForNode(a,e);if((0,s._missing)(t)&&(t=""),!r.get(t)){this.currentUniqueCount+=1,r.set(t,new Map);const e=this.currentUniqueCount>this.maxUniqueValues;if(l&&e)throw new Error(o)}n.has(t)||n.set(t,[]),n.get(t).push(e)}),i===t.length-1)return n;const d=new Map;for(const e of n.keys())d.set(e,this.bucketChildren(n.get(e),t,i+1,r.get(e)));return d}}t.PivotStage=n},81037:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.AbstractSelectionHandle=t.SelectionHandleType=void 0;const s=i(76624);var o;!function(e){e[e.FILL=0]="FILL",e[e.RANGE=1]="RANGE"}(o||(t.SelectionHandleType=o={}));class r extends s.Component{constructor(){super(...arguments),this.changedCalculatedValues=!1,this.dragging=!1,this.shouldDestroyOnEndDragging=!1}postConstruct(){this.beans.dragSvc.addDragSource({dragStartPixels:0,eElement:this.getGui(),onDragging:e=>{let t=!1;if(!this.dragging){t=!0,this.dragging=!0;const e=(0,s._getPageBody)(this.beans);e.classList?.add(this.getDraggingCssClass())}this.updateValuesOnMove(e),t?this.changedCalculatedValues=!1:(this.beans.rangeSvc.autoScrollService.check(e),this.changedCalculatedValues&&(this.onDrag(e),this.changedCalculatedValues=!1))},onDragStop:e=>{this.dragging=!1,this.onDragEnd(e),this.clearDragProperties()},onDragCancel:()=>{this.dragging=!1,this.onDragCancel(),this.clearDragProperties()}}),this.addManagedEventListeners({cellSelectionChanged:this.updateLocalRangeIfNeeded.bind(this)}),this.addManagedElementListeners(this.getGui(),{pointerdown:n,mousedown:n})}getLastCellHovered(){return this.lastCellHovered}getDraggingCssClass(){return`ag-dragging-${this.type===o.FILL?"fill":"range"}-handle`}updateValuesOnMove(e){const t=(0,s._getCellPositionForEvent)(this.gos,e);!t||this.shouldSkipCell(t)||this.lastCellHovered&&(0,s._areCellsEqual)(t,this.lastCellHovered)||(this.lastCellHovered=t,this.changedCalculatedValues=!0)}clearDragProperties(){this.clearValues(),this.beans.rangeSvc.autoScrollService.ensureCleared();const e=(0,s._getPageBody)(this.beans);e.classList?.remove(this.getDraggingCssClass()),this.shouldDestroyOnEndDragging&&this.destroy()}getType(){return this.type}refresh(e,t){const i=this.cellCtrl,o=this.getGui(),r=t??(0,s._last)(this.beans.rangeSvc.getCellRanges()),n=r.startRow,a=r.endRow;if(n&&a){(0,s._isRowBefore)(a,n)?(this.rangeStartRow=a,this.rangeEndRow=n):(this.rangeStartRow=n,this.rangeEndRow=a)}if(i!==e||!(0,s._isVisible)(o)){this.cellCtrl=e;const t=e.comp.getParentOfValue();t&&t.appendChild(o)}this.cellRange=r}clearValues(){this.lastCellHovered=void 0}destroy(){if(!this.shouldDestroyOnEndDragging&&this.dragging)return(0,s._setDisplayed)(this.getGui(),!1),void(this.shouldDestroyOnEndDragging=!0);this.shouldDestroyOnEndDragging=!1,super.destroy(),this.getGui()?.remove()}updateLocalRangeIfNeeded(e){if(!this.cellRange)return;const{id:t,type:i}=this.cellRange;if(!t||t!==e.id)return;const s=this.beans.rangeSvc?.getCellRanges().find(e=>e.id===t&&e.type===i);s&&s!==this.cellRange&&(this.cellRange=s)}}t.AbstractSelectionHandle=r;const n=e=>{e.stopPropagation()}},89236:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.AgFillHandle=void 0;const s=i(76624),o=i(81037),r=i(63978),n={tag:"div",cls:"ag-fill-handle"};class a extends o.AbstractSelectionHandle{constructor(){super(n),this.markedCells=[],this.cellValues=[],this.isUp=!1,this.isLeft=!1,this.isReduce=!1,this.type=o.SelectionHandleType.FILL}postConstruct(){super.postConstruct(),this.addManagedElementListeners(this.getGui(),{dblclick:this.onDblClick.bind(this)})}onDblClick(e){(0,s._stopPropagationForAgGrid)(e);const{cellRange:t,rangeStartRow:i,beans:o}=this,{rangeSvc:r,visibleCols:n}=o,a=(0,s._getLastRow)(o);if(!a)return;const l=this.getFillHandleDirection();this.dragAxis="xy"===l?"y":l;const d=r?.createCellRangeFromCellRangeParams({rowStartIndex:i.rowIndex,rowStartPinned:i.rowPinned,columnStart:t.columns[0],rowEndIndex:"x"===this.dragAxis?t.endRow?.rowIndex??null:a.rowIndex,rowEndPinned:"x"===this.dragAxis?t.endRow?.rowPinned:a.rowPinned,columnEnd:"x"===this.dragAxis?(0,s._last)(n.allCols):(0,s._last)(t.columns)});this.isUp=!1,this.isLeft=!1,d&&this.performFill({event:e,initialRange:t,finalRange:d}),this.dragAxis=void 0}updateValuesOnMove(e){super.updateValuesOnMove(e),this.initialXY||(this.initialXY=(0,s._getNormalisedMousePosition)(this.beans,e));const{x:t,y:i}=this.initialXY,{x:o,y:r}=(0,s._getNormalisedMousePosition)(this.beans,e),n=Math.abs(t-o),a=Math.abs(i-r),l=this.getFillHandleDirection();let d;d="xy"===l?n>a?"x":"y":l,d!==this.dragAxis&&(this.dragAxis=d,this.changedCalculatedValues=!0)}shouldSkipCell(e){return(0,s.isRowNumberCol)(e.column)}onDrag(e){if(!this.initialPosition){const e=this.cellCtrl;if(!e)return;this.initialPosition=e.cellPosition}const t=this.getLastCellHovered();t&&this.markPathFrom(this.initialPosition,t)}onDragEnd(e){if(this.initialXY=null,!this.markedCells.length)return;const t="x"===this.dragAxis,{cellRange:i,rangeStartRow:s,rangeEndRow:o,beans:{rangeSvc:r}}=this,n=i.columns.length;let a;if(this.isUp||this.isLeft){const e=t?s:this.lastCellMarked;a=r.createCellRangeFromCellRangeParams({rowStartIndex:e.rowIndex,rowStartPinned:e.rowPinned,columnStart:t?this.lastCellMarked.column:i.columns[0],rowEndIndex:o.rowIndex,rowEndPinned:o.rowPinned,columnEnd:i.columns[n-1]})}else a=r.createCellRangeFromCellRangeParams({rowStartIndex:s.rowIndex,rowStartPinned:s.rowPinned,columnStart:i.columns[0],rowEndIndex:t?o.rowIndex:this.lastCellMarked.rowIndex,rowEndPinned:t?o.rowPinned:this.lastCellMarked.rowPinned,columnEnd:t?this.lastCellMarked.column:i.columns[n-1]});a&&this.performFill({event:e,initialRange:i,finalRange:a,shouldUpdateRange:!0})}onDragCancel(){this.initialXY=null,this.markedCells.length&&this.clearMarkedPath()}performFill({event:e,initialRange:t,finalRange:i,shouldUpdateRange:s}){const{eventSvc:o,rangeSvc:r}=this.beans;o.dispatchEvent({type:"fillStart"}),this.handleValueChanged(t,i,e),s&&r.setCellRanges([i]),o.dispatchEvent({type:"fillEnd",initialRange:t,finalRange:i})}getFillHandleDirection(){const e=(0,s._getFillHandle)(this.gos)?.direction;return e?"x"!==e&&"y"!==e&&"xy"!==e?((0,s._warn)(177),"xy"):e:"xy"}handleValueChanged(e,t,i){const{beans:o}=this,{rangeSvc:r,gos:n,valueSvc:a}=o,l=r.getRangeEndRow(e),d=r.getRangeStartRow(e),c=r.getRangeEndRow(t),u=r.getRangeStartRow(t),h="y"===this.dragAxis;if(this.isReduce&&!(0,s._getFillHandle)(n)?.suppressClearOnFillReduction){const i=h?e.columns:e.columns.filter(e=>t.columns.indexOf(e)<0),r=h?(0,s._getRowBelow)(o,c):u;return void(r&&this.clearCellsInRange(r,l,i))}const g=[],p=[],m=[],f=[];let C=!0,v=0;const w=()=>{g.length=0,p.length=0,m.length=0,f.length=0,v=0},b=(t,i)=>{let r=this.isUp?l:d,n=!1;for(h&&(C=!0,w());!n&&r;){const a=(0,s._getRowNode)(o,r);if(!a)break;if(h&&t)y(g,t,a,()=>!(0,s._isSameRow)(r,this.isUp?d:l));else if(i){C=!0,w();for(const t of i)y(g,t,a,()=>t!==(this.isLeft?e.columns[0]:(0,s._last)(e.columns)))}n=(0,s._isSameRow)(r,this.isUp?u:c),r=this.isUp?(0,s._getRowAbove)(this.beans,r):(0,s._getRowBelow)(o,r)}},y=(e,t,o,r)=>{let n,l=!1;if(C)n=a.getValue(t,o,"edit"),p.push(n),m.push(a.getValue(t,o,"edit",!0)),f.push(a.getValueForDisplay({column:t,node:o,from:"edit"}).valueFormatted),C=r();else{const{value:r,fromUserFunction:d,sourceCol:c,sourceRowNode:u}=this.processValues({event:i,values:e,initialValues:p,initialNonAggregatedValues:m,initialFormattedValues:f,col:t,rowNode:o,idx:v++});if(n=r,t.isCellEditable(o)){const e=a.getValue(t,o,"edit");if(!d){if(c){const e=c.getColDef();if(!1!==e.useValueFormatterForExport&&e.valueFormatter){const e=a.getValueForDisplay({column:c,node:u,includeValueFormatted:!0,from:"edit"}).valueFormatted;null!=e&&(n=e)}}!1!==t.getColDef().useValueParserForImport&&(n=a.parseValue(t,o,c?n:(0,s._toStringOrNull)(n),e))}d&&e===n?l=!0:o.setDataValue(t,n,"rangeSvc")}}l||e.push({value:n,column:t,rowNode:o})};if(h)e.columns.forEach(e=>{b(e)});else{const e=this.isLeft?[...t.columns].reverse():t.columns;b(void 0,e)}this.beans.editSvc?.stopEditing(void 0,{source:"fillHandle"})}clearCellsInRange(e,t,i){const s={startRow:e,endRow:t,columns:i,startColumn:i[0]};this.beans.rangeSvc.clearCellRangeCellValues({cellRanges:[s],restoreSourceInBatch:!0})}processValues(e){const{formula:t,valueSvc:i}=this.beans,{event:o,values:n,initialValues:a,initialNonAggregatedValues:l,initialFormattedValues:d,col:c,rowNode:u,idx:h}=e,g=(0,s._getFillHandle)(this.gos)?.setFillValue;let p;if(p="y"===this.dragAxis?this.isUp?"up":"down":this.isLeft?"left":"right",g){const e=g((0,s._addGridCommonParams)(this.gos,{event:o,values:n.map(({value:e})=>e),initialValues:a,initialNonAggregatedValues:l,initialFormattedValues:d,currentIndex:h,currentCellValue:i.getValue(c,u,"edit"),direction:p,column:c,rowNode:u}));if(!1!==e)return{value:e,fromUserFunction:!0}}const m=n.every(({value:e})=>{return"number"==typeof(t=e)&&Number.isFinite(t)||"string"==typeof t&&/^[+-]?\d+(?:\.\d+)?$/.test(t.trim());var t});if(o.altKey||!m){const e=String((0,s._last)(n)?.value??"");if(m&&1===a.length){const t=this.isUp||this.isLeft?-1:1;return{value:parseFloat(e)+1*t,fromUserFunction:!1}}const{value:i,column:o,rowNode:r}=n[h%n.length];let l;const d=o.isAllowFormula()&&t?.isFormula(e);if(d){const i="up"===p?-1:"down"===p?1:0,s="left"===p?-1:"right"===p?1:0;l=t.updateFormulaByOffset({value:e,rowDelta:i,columnDelta:s})}else l=i;return{value:l,fromUserFunction:!1,sourceCol:d?void 0:o,sourceRowNode:r}}return{value:(0,s._last)((0,r.findLineByLeastSquares)(n.map(({value:e})=>Number(e)))),fromUserFunction:!1}}clearValues(){this.clearMarkedPath(),this.clearCellValues(),this.lastCellMarked=void 0,super.clearValues()}clearMarkedPath(){for(const e of this.markedCells){if(!e.isAlive())continue;const{comp:t}=e;t.toggleCss("ag-selection-fill-top",!1),t.toggleCss("ag-selection-fill-right",!1),t.toggleCss("ag-selection-fill-bottom",!1),t.toggleCss("ag-selection-fill-left",!1)}this.markedCells.length=0,this.isUp=!1,this.isLeft=!1,this.isReduce=!1}clearCellValues(){this.cellValues.length=0}markPathFrom(e,t){if(this.clearMarkedPath(),this.clearCellValues(),"y"===this.dragAxis){if((0,s._isSameRow)(t,e))return;const i=(0,s._isRowBefore)(t,e),{rangeStartRow:o,rangeEndRow:r}=this;i&&(t.rowPinned==o.rowPinned&&t.rowIndex>=o.rowIndex||o.rowPinned!=r.rowPinned&&t.rowPinned==r.rowPinned&&t.rowIndex<=r.rowIndex)?(this.reduceVertical(e,t),this.isReduce=!0):(this.extendVertical(e,t,i),this.isReduce=!1)}else{const i=e.column,s=t.column;if(i===s)return;const o=this.beans.visibleCols.allCols,r=o.indexOf(i),n=o.indexOf(s);n<=r&&n>=o.indexOf(this.cellRange.columns[0])?(this.reduceHorizontal(e,t),this.isReduce=!0):(this.extendHorizontal(e,t,n=4),e.toggleCss("ag-cell-range-chart",a),(0,s._setAriaSelected)(o,n>0||void 0),e.toggleCss("ag-cell-range-single-cell",this.isSingleCell()),this.updateRangeBorders(),this.refreshRangeStyleAndHandle()}updateRangeBorders(){const e=this.getRangeBorders(),t=this.isSingleCell(),i=!t&&e.top,s=!t&&e.right,o=!t&&e.bottom,r=!t&&e.left,n=this.cellComp;n.toggleCss("ag-cell-range-top",i),n.toggleCss("ag-cell-range-right",s),n.toggleCss("ag-cell-range-bottom",o),n.toggleCss("ag-cell-range-left",r)}isSingleCell(){const{rangeSvc:e}=this;return 1===this.rangeCount&&!!e&&!e.isMoreThanOneCell()}getHasChartRange(){const{rangeSvc:e}=this;if(!this.rangeCount||!e)return!1;const t=e.getCellRanges();return t.length>0&&t.every(e=>[s.CellRangeType.DIMENSION,s.CellRangeType.VALUE].includes(e.type))}updateRangeBordersIfRangeCount(){this.rangeCount>0&&(this.updateRangeBorders(),this.refreshRangeStyleAndHandle())}getRangeBorders(){const e=this.beans.gos.get("enableRtl");let t=!1,i=!1,o=!1,r=!1;const{rangeSvc:n,beans:{visibleCols:a},cellCtrl:{cellPosition:l}}=this,d=l.column,c=n.getCellRanges().filter(e=>n.isCellInSpecificRange(l,e));if(!c.length)return{top:t,right:i,bottom:o,left:r};let u,h;e?(u=a.getColAfter(d),h=a.getColBefore(d)):(u=a.getColBefore(d),h=a.getColAfter(d)),u||(r=!0),h||(i=!0);for(let e=0;e=0;t--){const s=i[t],o=s.colorClass;if(o&&e.isCellInSpecificRange(this.cellCtrl.cellPosition,s))return o}return null}refreshHandleColor(e){const t=this.selectionHandle?.getGui?.(),i=e?.colorClass??null;t?(this.handleColorClass&&this.handleColorClass!==i&&t.classList.remove(this.handleColorClass),i?t.classList.add(i):this.handleColorClass&&t.classList.remove(this.handleColorClass),this.handleColorClass=i??null):this.handleColorClass=null}getRangeForHandle(){const{gos:e,editSvc:t}=this.beans,i=this.rangeSvc,o=i.getCellRanges(),r=o.length;if(this.rangeCount<1||r<1)return null;const n=t?.isRangeSelectionEnabledWhileEditing(),d=n?o:[(0,s._last)(o)];for(const o of d){const{cellPosition:d,column:c}=this.cellCtrl,u=l(e)&&!c.isSuppressFillHandle(),h=a(e),g=t?.isEditing(this.cellCtrl,{withOpenEditor:!0});let p=!g&&(n||1===r&&(u||h));if(this.hasChartRange&&(p=o.type===s.CellRangeType.VALUE),p&&null!=o.endRow&&i.isContiguousRange(o)&&i.isBottomRightCell(o,d))return o}return null}addSelectionHandle(e){const{beans:t}=this,i=t.editSvc?.isRangeSelectionEnabledWhileEditing(),r=e.type,n=!i&&l(t.gos)&&(0,s._missing)(r)?o.SelectionHandleType.FILL:o.SelectionHandleType.RANGE;if(this.selectionHandle&&this.selectionHandle.getType()!==n&&(this.selectionHandle=t.context.destroyBean(this.selectionHandle)),!this.selectionHandle){const e=t.registry.createDynamicBean(n===o.SelectionHandleType.FILL?"fillHandle":"rangeHandle",!1);e&&(this.selectionHandle=t.context.createBean(e))}this.selectionHandle?.refresh(this.cellCtrl,e)}destroy(){this.unsetComp()}}},26527:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.DragListenerFeature=void 0;const s=i(76624);class o extends s.BeanStub{constructor(e){super(),this.eContainer=e}postConstruct(){const{beans:e,gos:t,eContainer:i}=this,o=e.rangeSvc,r={eElement:i,onDragStart:o.onDragStart.bind(o),onDragStop:o.onDragStop.bind(o),onDragging:o.onDragging.bind(o)},n=e.dragSvc,a=n.addDragSource.bind(n,r),l=n.removeDragSource.bind(n,r);this.addManagedPropertyListeners(["enableRangeSelection","cellSelection"],()=>{(0,s._isCellSelectionEnabled)(t)?a():l()}),this.addDestroyFunc(l),(0,s._isCellSelectionEnabled)(t)&&a()}}t.DragListenerFeature=o},16760:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.HeaderGroupCellMouseListenerFeature=void 0;const s=i(76624);class o extends s.BeanStub{constructor(e,t){super(),this.column=e,this.eGui=t}postConstruct(){this.addManagedElementListeners(this.eGui,{click:e=>e&&this.onClick(e)})}onClick(e){this.beans.rangeSvc?.handleColumnSelection(this.column,e)}}t.HeaderGroupCellMouseListenerFeature=o},41361:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.RangeHeaderHighlightFeature=void 0;const s=i(76624);class o extends s.BeanStub{constructor(e,t){super(),this.column=e,this.comp=t,this.columnMap=new Map,this.isActive=!1,this.resetColumnMap()}postConstruct(){this.addManagedPropertyListener("cellSelection",()=>{this.refreshActive()}),this.refreshActive(),this.setupRangeHeaderHighlight()}resetColumnMap(){let e;this.columnMap.clear(),e=this.column.isColumn?[this.column]:this.column.getDisplayedLeafColumns();for(const t of e)this.columnMap.set(t,!1)}refreshActive(){const{gos:e,rangeSvc:t}=this.beans,i=e.get("cellSelection");this.isActive=!!(i&&t&&"object"==typeof i&&i.enableHeaderHighlight)}setupRangeHeaderHighlight(){const e=this.onRangeSelectionChanged.bind(this);this.addManagedEventListeners({rangeSelectionChanged:e,columnPinned:e,columnMoved:e,columnGroupOpened:e}),e()}onRangeSelectionChanged(){if(!this.isActive)return;this.resetColumnMap();const e=this.beans.rangeSvc.getCellRanges();let t=!1,i=!0;for(const i of e){if(t)break;for(const e of i.columns)this.columnMap.has(e)&&(this.columnMap.set(e,!0),t||(t=!0))}for(const e of Array.from(this.columnMap.values()))if(!1===e){i=!1;break}this.comp.toggleCss("ag-header-range-highlight",t&&i)}destroy(){super.destroy(),this.comp=null,this.column=null}}t.RangeHeaderHighlightFeature=o},53799:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.rangeSelectionCSS=void 0,t.rangeSelectionCSS=".ag-body-viewport:not(.ag-has-focus) .ag-cell-range-single-cell:not(.ag-cell-inline-editing),.ag-cell-range-selected.ag-cell-range-chart,.ag-cell-range-selected:not(.ag-cell-focus){background-color:var(--ag-range-selection-background-color);&.ag-cell-range-chart{background-color:var(--ag-range-selection-chart-background-color)!important;&.ag-cell-range-chart-category{background-color:var(--ag-range-selection-chart-category-background-color)!important}}}.ag-cell-range-selected-1.ag-cell-range-chart,.ag-cell-range-selected-1.ag-formula-range,.ag-cell-range-selected-1:not(.ag-cell-focus),.ag-root:not(.ag-context-menu-open) .ag-body-viewport:not(.ag-has-focus) .ag-cell-range-selected-1:not(.ag-cell-inline-editing){background-color:var(--ag-range-selection-background-color)}.ag-cell-range-selected-2.ag-cell-range-chart,.ag-cell-range-selected-2.ag-formula-range,.ag-cell-range-selected-2:not(.ag-cell-focus){background-image:linear-gradient(var(--ag-range-selection-background-color),var(--ag-range-selection-background-color))}.ag-cell-range-selected-3.ag-cell-range-chart,.ag-cell-range-selected-3.ag-formula-range,.ag-cell-range-selected-3:not(.ag-cell-focus){background-image:linear-gradient(var(--ag-range-selection-background-color),var(--ag-range-selection-background-color)),linear-gradient(var(--ag-range-selection-background-color),var(--ag-range-selection-background-color))}.ag-cell-range-selected-4.ag-cell-range-chart,.ag-cell-range-selected-4.ag-formula-range,.ag-cell-range-selected-4:not(.ag-cell-focus){background-image:linear-gradient(var(--ag-range-selection-background-color),var(--ag-range-selection-background-color)),linear-gradient(var(--ag-range-selection-background-color),var(--ag-range-selection-background-color)),linear-gradient(var(--ag-range-selection-background-color),var(--ag-range-selection-background-color))}.ag-cell.ag-cell-range-selected:not(.ag-cell-range-single-cell){&.ag-cell-range-top{border-top-color:var(--ag-range-selection-border-color);border-top-style:var(--ag-range-selection-border-style)}&.ag-cell-range-right{border-right-color:var(--ag-range-selection-border-color);border-right-style:var(--ag-range-selection-border-style)}&.ag-cell-range-bottom{border-bottom-color:var(--ag-range-selection-border-color);border-bottom-style:var(--ag-range-selection-border-style)}&.ag-cell-range-left{border-left-color:var(--ag-range-selection-border-color);border-left-style:var(--ag-range-selection-border-style)}}.ag-cell.ag-selection-fill-top,.ag-cell.ag-selection-fill-top.ag-cell-range-selected{border-top:1px dashed;border-top-color:var(--ag-range-selection-border-color)}:where(.ag-ltr) .ag-cell.ag-selection-fill-right,:where(.ag-ltr) .ag-cell.ag-selection-fill-right.ag-cell-range-selected{border-right:1px dashed var(--ag-range-selection-border-color)!important}:where(.ag-rtl) .ag-cell.ag-selection-fill-right,:where(.ag-rtl) .ag-cell.ag-selection-fill-right.ag-cell-range-selected{border-left:1px dashed var(--ag-range-selection-border-color)!important}.ag-cell.ag-selection-fill-bottom,.ag-cell.ag-selection-fill-bottom.ag-cell-range-selected{border-bottom:1px dashed;border-bottom-color:var(--ag-range-selection-border-color)}:where(.ag-ltr) .ag-cell.ag-selection-fill-left,:where(.ag-ltr) .ag-cell.ag-selection-fill-left.ag-cell-range-selected{border-left:1px dashed var(--ag-range-selection-border-color)!important}:where(.ag-rtl) .ag-cell.ag-selection-fill-left,:where(.ag-rtl) .ag-cell.ag-selection-fill-left.ag-cell-range-selected{border-right:1px dashed var(--ag-range-selection-border-color)!important}.ag-fill-handle,.ag-range-handle{background-color:var(--ag-range-selection-border-color);bottom:-1px;height:6px;position:absolute;width:6px}:where(.ag-ltr) .ag-fill-handle,:where(.ag-ltr) .ag-range-handle{right:-1px}:where(.ag-rtl) .ag-fill-handle,:where(.ag-rtl) .ag-range-handle{left:-1px}.ag-fill-handle{cursor:crosshair}:where(.ag-ltr) .ag-range-handle{cursor:nwse-resize}:where(.ag-rtl) .ag-range-handle{cursor:nesw-resize}"},7876:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.clearRangeSelection=t.addCellRange=t.getCellRanges=void 0,t.getCellRanges=function(e){return e.rangeSvc?.getCellRanges()??null},t.addCellRange=function(e,t){e.rangeSvc?.addCellRange(t)},t.clearRangeSelection=function(e){e.rangeSvc?.removeAllCellRanges()}},266:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.RangeSelectionModule=t.CellSelectionModule=void 0;const s=i(76624),o=i(39206),r=i(19586),n=i(89236),a=i(57724),l=i(53799),d=i(7876),c=i(31455);t.CellSelectionModule={moduleName:"CellSelection",version:r.VERSION,beans:[c.RangeService],dynamicBeans:{fillHandle:n.AgFillHandle,rangeHandle:a.AgRangeHandle},apiFunctions:{getCellRanges:d.getCellRanges,addCellRange:d.addCellRange,clearRangeSelection:d.clearRangeSelection,clearCellSelection:d.clearRangeSelection},dependsOn:[o.EnterpriseCoreModule,s._KeyboardNavigationModule,s._DragModule],css:[l.rangeSelectionCSS]},t.RangeSelectionModule={moduleName:"RangeSelection",version:r.VERSION,dependsOn:[t.CellSelectionModule]}},31455:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.RangeService=void 0;const s=i(76624),o=i(94870),r=i(26527),n=i(16760),a=i(41361);var l;!function(e){e[e.NORMAL=0]="NORMAL",e[e.ALL_COLUMNS=1]="ALL_COLUMNS"}(l||(l={}));class d extends s.BeanStub{constructor(){super(...arguments),this.beanName="rangeSvc",this.rangeSelectionExtensions=[],this.cellRanges=[],this.bodyScrollListener=this.onBodyScroll.bind(this),this.dragging=!1,this.intersectionRange=!1,this.columnRangeSelectionCtx={}}wireBeans(e){this.rowModel=e.rowModel,this.dragSvc=e.dragSvc,this.colModel=e.colModel,this.visibleCols=e.visibleCols,this.cellNavigation=e.cellNavigation,this.ctrlsSvc=e.ctrlsSvc}postConstruct(){const e=this.onColumnsChanged.bind(this),t=()=>this.removeAllCellRanges(),i=this.refreshLastRangeStart.bind(this);this.addManagedEventListeners({newColumnsLoaded:e,columnVisible:e,columnValueChanged:e,columnPivotModeChanged:t,columnRowGroupChanged:t,columnPivotChanged:t,columnGroupOpened:i,columnMoved:i,columnPinned:i}),this.ctrlsSvc.whenReady(this,e=>{const t=e.gridBodyCtrl;this.autoScrollService=new s.AutoScrollService({scrollContainer:t.eBodyViewport,scrollAxis:"xy",getVerticalPosition:()=>t.scrollFeature.getVScrollPosition().top,setVerticalPosition:e=>t.scrollFeature.setVerticalScrollPosition(e),getHorizontalPosition:()=>t.scrollFeature.getHScrollPosition().left,setHorizontalPosition:e=>t.scrollFeature.setHorizontalScrollPosition(e),shouldSkipVerticalScroll:()=>!(0,s._isDomLayout)(this.gos,"normal"),shouldSkipHorizontalScroll:()=>!t.scrollFeature.isHorizontalScrollShowing()})})}registerRangeSelectionExtension(e){this.rangeSelectionExtensions.includes(e)||this.rangeSelectionExtensions.push(e)}unregisterRangeSelectionExtension(e){(0,s._removeFromArray)(this.rangeSelectionExtensions,e)}shouldSuppressRangeSelection(e){return this.rangeSelectionExtensions.some(t=>t.shouldSuppressRangeSelection?.(e))}shouldSkipColumn(e){return this.rangeSelectionExtensions.some(t=>t.shouldSkipColumn?.(e))}isAllColumnsSelectionCell(e){return this.rangeSelectionExtensions.some(t=>t.isAllColumnsSelectionCell?.(e))}isAllColumnsRange(e,t){return this.rangeSelectionExtensions.some(i=>i.isAllColumnsRange?.(e,t))}updateSelectionModeForCell(e){this.setSelectionMode(this.isAllColumnsSelectionCell(e))}onDragStart(e){const t=this.gos,i=e.target;if(!(0,s._isCellSelectionEnabled)(t)||(0,s._getRowCtrlForEventTarget)(t,i)?.isSuppressMouseEvent(e))return;if(this.shouldSuppressRangeSelection(i))return;const{shiftKey:o}=e,r=this.isMultiRange(e),n=o&&!!this.cellRanges?.length;r||n&&!(0,s._exists)((0,s._last)(this.cellRanges).type)||this.removeAllCellRanges(!0);const a=this.dragSvc.startTarget;if(a&&this.updateValuesOnMove(a),this.lastCellHovered){if(this.dragging=!0,this.lastMouseEvent=e,this.intersectionRange=r&&this.getCellRangeCount(this.lastCellHovered)>1,n||this.setNewestRangeStartCell(this.lastCellHovered),this.cellRanges.length>0)this.draggingRange=(0,s._last)(this.cellRanges);else{const e={rowIndex:this.lastCellHovered.rowIndex,rowPinned:this.lastCellHovered.rowPinned},t=this.getColumnsFromModel([this.lastCellHovered.column]);if(!t?.length)return;this.draggingRange={startRow:e,endRow:e,columns:t,startColumn:this.newestRangeStartCell.column},this.cellRanges.push(this.draggingRange)}this.ctrlsSvc.getGridBodyCtrl().eBodyViewport.addEventListener("scroll",this.bodyScrollListener,{passive:!0}),this.dispatchChangedEvent(!0,!1,this.draggingRange.id)}}onDragging(e){const{dragging:t,lastCellHovered:i,newestRangeStartCell:s,autoScrollService:o,cellHasChanged:r}=this;if(!t||!e)return;this.updateValuesOnMove(e.target),this.lastMouseEvent=e;const n=e=>i&&i.rowPinned===e&&s.rowPinned===e,a=n("top")||n("bottom");if(o.check(e,a),!r||!i)return;const l=s?.column,d=i?.column,c=this.calculateColumnsBetween(l,d);if(!c)return;const{rowIndex:u,rowPinned:h}=i;this.draggingRange.endRow={rowIndex:u,rowPinned:h},this.draggingRange.columns=c,this.dispatchChangedEvent(!1,!1,this.draggingRange.id)}onDragStop(){if(!this.dragging)return;const{id:e}=this.draggingRange;this.autoScrollService.ensureCleared(),this.ctrlsSvc.getGridBodyCtrl().eBodyViewport.removeEventListener("scroll",this.bodyScrollListener),this.lastMouseEvent=null,this.dragging=!1,this.draggingRange=void 0,this.lastCellHovered=void 0,this.intersectionRange&&(this.intersectionRange=!1,this.intersectLastRange()),this.dispatchChangedEvent(!1,!0,e)}onColumnsChanged(){this.refreshLastRangeStart();const e=this.visibleCols.allCols;for(const t of this.cellRanges){const i=t.columns;t.columns=t.columns.filter(t=>t.isVisible()&&-1!==e.indexOf(t));!(0,s._areEqual)(i,t.columns)&&this.dispatchChangedEvent(!1,!0,t.id)}const t=this.cellRanges.length;this.cellRanges=this.cellRanges.filter(e=>e.columns.length>0),t>this.cellRanges.length&&this.dispatchChangedEvent(!1,!0)}refreshLastRangeStart(){const e=(0,s._last)(this.cellRanges);e&&this.refreshRangeStart(e)}isContiguousRange(e){const t=e.columns;if(!t.length)return!1;const i=this.visibleCols.allCols,o=t.map(e=>i.indexOf(e)).sort((e,t)=>e-t);return(0,s._last)(o)-o[0]+1===t.length}getRangeStartRow(e){if(e.startRow&&e.endRow)return(0,s._isRowBefore)(e.startRow,e.endRow)?e.startRow:e.endRow;return{rowIndex:0,rowPinned:(this.beans.pinnedRowModel?.getPinnedTopRowCount()??0)>0?"top":null}}getRangeEndRow(e){if(e.startRow&&e.endRow)return(0,s._isRowBefore)(e.startRow,e.endRow)?e.endRow:e.startRow;const t=this.beans.pinnedRowModel?.getPinnedBottomRowCount()??0;return t>0?{rowIndex:t-1,rowPinned:"bottom"}:{rowIndex:this.rowModel.getRowCount()-1,rowPinned:null}}getRangeRowCount(e){const t=this.beans,i=this.getRangeStartRow(e),o=this.getRangeEndRow(e),r=(0,s._getAbsoluteRowIndex)(t,i);return(0,s._getAbsoluteRowIndex)(t,o)-r+1}handleCellMouseDown(e,t){const{beans:i}=this,o=e.target;if(this.shouldSuppressRangeSelection(o))return;const r=this.isAllColumnsSelectionCell(t);if(r&&e.preventDefault(),e.shiftKey)return this.extendLatestRangeToCell(t);if(r&&(0,s._interpretAsRightClick)(i,e))return;const n=this.isMultiRange(e);this.updateSelectionModeForCell(t);const a=this.calculateColumnsBetween(t.column,t.column);if(!a)return;const l=r?this.findContainingRange({columns:a,startRow:t,endRow:t}):void 0;r&&!!l&&n&&(e.ctrlKey||e.metaKey)&&l?this.removeRowFromAllColumnsRange(t,l):this.setRangeToCell(t,n)}isMultiRange(e){const{ctrlKey:t,metaKey:i}=e,{editingWithRanges:s,allowMulti:o}=this.getMultiRangeContext();return s||!!o&&(t||i)}getMultiRangeContext(){const{gos:e,editSvc:t}=this.beans,i=!!t?.isEditing()&&!!t?.isRangeSelectionEnabledWhileEditing(),o=(0,s._getSuppressMultiRanges)(e)&&!i;return{editingWithRanges:i,suppressMultiRanges:o,allowMulti:!o}}removeRowFromAllColumnsRange(e,t){const{beans:i,cellRanges:o}=this,r=(0,s._getFirstRow)(i),n=(0,s._getLastRow)(i),a=this.getRangeStartRow(t),l=this.getRangeEndRow(t);if(!a&&(0,s._isSameRow)(r,e))g(t,(0,s._getRowBelow)(i,r),"top");else if(!l&&(0,s._isSameRow)(n,e))g(t,(0,s._getRowAbove)(i,n),"bottom");else if((0,s._isSameRow)(a,l))(0,s._removeFromArray)(o,t);else if((0,s._isSameRow)(a,e))g(t,(0,s._getRowBelow)(i,e),"top");else if((0,s._isSameRow)(l,e))g(t,(0,s._getRowAbove)(i,e),"bottom");else{const r=(0,s._getRowAbove)(i,e),n=(0,s._getRowBelow)(i,e);t.startRow=a,t.endRow=r??void 0,o.push({...t,startRow:n??void 0,endRow:l})}this.dispatchChangedEvent(!0,!0)}setRangeToCell(e,t=!1){const{gos:i}=this;if(!(0,s._isCellSelectionEnabled)(i))return;this.updateSelectionModeForCell(e);const o=this.calculateColumnsBetween(e.column,e.column);if(!o)return;const{suppressMultiRanges:r}=this.getMultiRangeContext();(r||!t||(0,s._missing)(this.cellRanges))&&this.removeAllCellRanges(!0);const n={rowIndex:e.rowIndex,rowPinned:e.rowPinned},a={startRow:n,endRow:n,columns:o,startColumn:e.column};this.cellRanges.push(a),this.setNewestRangeStartCell(e),this.onDragStop(),this.dispatchChangedEvent(!0,!0)}getRangeLastColumn(e){const t=e.columns[0],i=(0,s._last)(e.columns);return this.newestRangeStartCell?.column===t?i:t}extendRangeRowCountBy(e,t){const{beans:i}=this,{startRow:o,endRow:r}=e;if(!o||!r)return;let n,a=0;const l=(0,s._isRowBefore)(r,o);n=l?o:r;const d=t>0?s._getRowBelow:s._getRowAbove,c=Math.abs(t);for(;at.indexOf(e)).filter(e=>e>-1).sort((e,t)=>e-t);return{left:t[i[0]],right:t[(0,s._last)(i)]}}extendLatestRangeInDirection(e){if(this.isEmpty()||!this.newestRangeStartCell)return;const t=e.key,i=e.ctrlKey||e.metaKey,o=(0,s._last)(this.cellRanges),r=this.newestRangeStartCell,n=o.endRow.rowIndex,a=o.endRow.rowPinned,l={column:this.getRangeLastColumn(o),rowIndex:n,rowPinned:a},d=this.cellNavigation.getNextCellToFocus(t,l,i);return d?(this.setCellRange({rowStartIndex:r.rowIndex,rowStartPinned:r.rowPinned,rowEndIndex:d.rowIndex,rowEndPinned:d.rowPinned,columnStart:r.column,columnEnd:d.column}),d):void 0}setCellRange(e){(0,s._isCellSelectionEnabled)(this.gos)&&(this.removeAllCellRanges(!0),this.addCellRange(e))}setCellRanges(e){if((0,s._areEqual)(this.cellRanges,e))return;if(!this.verifyCellRanges(this.gos))return;this.setSelectionMode(!1),this.removeAllCellRanges(!0);const t=this.getColumnsFromModel(this.visibleCols.allCols)??[];let i=!1;for(const s of e){if(s.columns&&s.startRow){const e=this.getColumnsFromModel(s.columns);if(!e||0===e.length)continue;s.columns=e;const{startRow:t}=s;this.setNewestRangeStartCell({rowIndex:t.rowIndex,rowPinned:t.rowPinned,column:s.columns[0]})}!i&&t.length>0&&this.isAllColumnsRange(s,t)&&(i=!0),this.cellRanges.push(s)}this.setSelectionMode(i),this.dispatchChangedEvent(!1,!0)}clearCellRangeCellValues(e){const{beans:t,eventSvc:i}=this,{cellEventSource:s="rangeSvc",dispatchWrapperEvents:o,wrapperEventSource:r="deleteKey",restoreSourceInBatch:n}=e;let{cellRanges:a}=e;o&&(i.dispatchEvent({type:"cellSelectionDeleteStart",source:r}),i.dispatchEvent({type:"rangeDeleteStart",source:r})),a||(a=this.cellRanges);const{valueSvc:l,editSvc:d}=t,c=!!d?.isBatchEditing();this.forEachEditableCellInRanges(a,(e,t)=>{if(n&&c)return void d?.batchResetToSourceValue({rowNode:e,column:t});const i=l.getDeleteValue(t,e);e.setDataValue(t,i,s)}),o&&(i.dispatchEvent({type:"cellSelectionDeleteEnd",source:r}),i.dispatchEvent({type:"rangeDeleteEnd",source:r}))}createCellRangeFromCellRangeParams(e){return this.createPartialCellRangeFromRangeParams(e,!1)}createPartialCellRangeFromRangeParams(e,t){const{columns:i,columnStart:o,columnEnd:r,rowStartIndex:n,rowStartPinned:a,rowEndIndex:l,rowEndPinned:d}=e,u=this.getColumnsFromParams(i,o,r);if(!u||!t&&0===u.columns.length)return;const{columns:h,startsOnTheRight:g}=u;return{startRow:c(n,a),endRow:c(l,d),columns:h,startColumn:this.getColumnFromModel(o)??(g?(0,s._last)(h):h[0])}}addCellRange(e){const t=this.gos;if(!(0,s._isCellSelectionEnabled)(t)||!this.verifyCellRanges(t))return;this.setSelectionMode(!1);const i=this.createCellRangeFromCellRangeParams(e);return i?(i.startRow&&this.setNewestRangeStartCell({rowIndex:i.startRow.rowIndex,rowPinned:i.startRow.rowPinned,column:i.startColumn}),this.cellRanges.push(i),this.dispatchChangedEvent(!1,!0,i.id),i):void 0}getCellRanges(){return this.cellRanges}isEmpty(){return 0===this.cellRanges.length}isMoreThanOneCell(){const e=this.cellRanges.length;if(0===e)return!1;if(e>1)return!0;const t=this.cellRanges[0],i=this.getRangeStartRow(t),s=this.getRangeEndRow(t);return i.rowPinned!==s.rowPinned||i.rowIndex!==s.rowIndex||1!==t.columns.length}areAllRangesAbleToMerge(){const e=new Map;if(this.cellRanges.length<=1)return!0;for(const t of this.cellRanges)this.forEachRowInRange(t,i=>{const s=`${i.rowPinned||"normal"}_${i.rowIndex}`,o=e.get(s),r=t.columns.map(e=>e.getId());if(o){const e=r.filter(e=>-1===o.indexOf(e));o.push(...e)}else e.set(s,r)});let t;for(const i of e.values()){const e=i.sort().join();if(void 0!==t){if(t!==e)return!1}else t=e}return!0}removeAllCellRanges(e){this.isEmpty()||(this.onDragStop(),this.cellRanges.length=0,e||this.dispatchChangedEvent(!1,!0))}isCellInAnyRange(e){return this.getCellRangeCount(e)>0}isCellInSpecificRange(e,t){const i=t.columns?.includes(e.column),s=this.isRowInRange(e,t);return i&&s}isColumnInAnyRange(e){const{beans:t}=this,i=(0,s._getFirstRow)(t),o=(0,s._getLastRow)(t);if(!i||!o)return!1;const r=e.isColumn?[e]:e.getDisplayedLeafColumns();return null!=this.findContainingRange({columns:r,startRow:i,endRow:o},!0)}findContainingRange({columns:e,startRow:t,endRow:i},o=!1){const r=this.cellRanges;for(let n=r.length-1;n>=0;n--){const a=r[n],l=e.every(e=>a.columns.includes(e));let d=!1;if(o)d=(0,s._isSameRow)(a.startRow,t)&&(0,s._isSameRow)(a.endRow,i);else{const e=t&&this.isRowInRange(t,a),s=i&&this.isRowInRange(i,a);d=!!e&&!!s}if(l&&d)return a}}isBottomRightCell(e,t){const i=this.visibleCols.allCols,o=e.columns.map(e=>i.indexOf(e)).sort((e,t)=>e-t),{startRow:r,endRow:n}=e,a=(0,s._isRowBefore)(r,n)?n:r,l=i.indexOf(t.column)===(0,s._last)(o),d=t.rowIndex===a.rowIndex&&(0,s._makeNull)(t.rowPinned)===(0,s._makeNull)(a.rowPinned);return l&&d}getCellRangeCount(e){return this.cellRanges.filter(t=>this.isCellInSpecificRange(e,t)).length}isRowInRange(e,t){const i=this.getRangeStartRow(t),o=this.getRangeEndRow(t),r=(0,s._isSameRow)(e,i),n=(0,s._isSameRow)(e,o);if(r||n)return!0;const a=!(0,s._isRowBefore)(e,i),l=(0,s._isRowBefore)(e,o);return a&&l}intersectLastRange(e){const{editingWithRanges:t,suppressMultiRanges:i}=this.getMultiRangeContext();if(t||i||e&&this.dragging||this.isEmpty())return;const o=(0,s._last)(this.cellRanges),r=this.getRangeStartRow(o),n=this.getRangeEndRow(o),a=[];for(const e of this.cellRanges.slice(0,-1)){const t=this.getRangeStartRow(e),i=this.getRangeEndRow(e),l=e.columns,d=l.filter(e=>-1===o.columns.indexOf(e));if(d.length===l.length){a.push(e);continue}if((0,s._isRowBefore)(n,t)||(0,s._isRowBefore)(i,r)){a.push(e);continue}const c=a.length;if((0,s._isRowBefore)(t,r)){const e={columns:[...l],startColumn:o.startColumn,startRow:{...t},endRow:(0,s._getRowAbove)(this.beans,r)};a.push(e)}if(d.length>0){const e={columns:d,startColumn:d.includes(o.startColumn)?o.startColumn:d[0],startRow:u([{...r},{...t}]),endRow:h([{...n},{...i}])};a.push(e)}(0,s._isRowBefore)(n,i)&&a.push({columns:[...l],startColumn:o.startColumn,startRow:(0,s._getRowBelow)(this.beans,n),endRow:{...i}}),a.length-c===1&&(a[a.length-1].id=e.id)}this.cellRanges=a,e&&this.dispatchChangedEvent(!1,!0)}createRangeHighlightFeature(e,t,i){e.createManagedBean(new a.RangeHeaderHighlightFeature(t,i))}setSelectionMode(e){this.selectionMode=e?l.ALL_COLUMNS:l.NORMAL}refreshRangeStart(e){const{startColumn:t,columns:i}=e,o=(t,i)=>{const s=e.columns.filter(e=>e!==t);t?(e.startColumn=t,e.columns=i?[t,...s]:[...s,t]):e.columns=s},{left:r,right:n}=this.getRangeEdgeColumns(e);if(t===i[0]&&t!==r)return void o(r,!0);t===(0,s._last)(i)&&t===n&&o(n,!1)}setNewestRangeStartCell(e){this.newestRangeStartCell=e}getColumnsFromParams(e,t,i){const s=!e&&!t&&!i;let o,r=!1;return s||e?o=this.getColumnsFromModel(s?void 0:e):t&&i&&(o=this.calculateColumnsBetween(t,i),o?.length&&(r=o[0]!==this.getColumnFromModel(t))),o?{columns:o,startsOnTheRight:r}:void 0}verifyCellRanges(e){const{suppressMultiRanges:t}=this.getMultiRangeContext(),i=(0,s._isUsingNewCellSelectionAPI)(e)&&t&&this.cellRanges.length>1;return i&&(0,s._warn)(93),!i}forEachRowInRange(e,t){const i=this.getRangeStartRow(e),o=this.getRangeEndRow(e);let r=i;for(;r&&(t(r),!(0,s._isSameRow)(r,o));)r=(0,s._getRowBelow)(this.beans,r)}forEachEditableCellInRanges(e,t){const{beans:i}=this;for(const o of e)this.forEachRowInRange(o,e=>{const r=(0,s._getRowNode)(i,e);if(r)for(let e=0;e0,c=t.ctrlKey||t.metaKey,u=!l||c,h=(0,s._getFirstRow)(o),g=(0,s._getLastRow)(o);if(!h||!g)return;if(t.key===s.KeyCode.ENTER&&t.preventDefault(),t.shiftKey){const t=r.root;if(!t)return;const i=e.isColumn?e:(0,s._last)(e.getLeafColumns()),o=this.findContainingRange({columns:[t],startRow:h,endRow:g},!0);return o?void this.updateRangeRowBoundary({cellRange:o,boundary:"end",cellPosition:{column:i,...g}}):((0,s._removeFromArray)(n,r.lastCellRange),void this.selectColumns(this.calculateColumnsBetween(t,i),h,g))}d&&(a||!c&&!l)&&this.removeAllCellRanges(!0);const p=(e,t)=>{const i=this.findContainingRange({columns:e,startRow:h,endRow:g},!0);if(i&&u)this.deselectColumnsFromRange(i,e);else{const t=this.selectColumns(e,h,g);t&&(r.lastCellRange=t)}r.root=t};if(e.isColumn)p([e],e);else{const t=e.getDisplayedLeafColumns();p(t,t[0])}}deselectColumnsFromRange(e,t){(0,s._removeAllFromArray)(e.columns,t),t.includes(e.startColumn)&&(e.startColumn=e.columns[0]),0===e.columns.length&&(0,s._removeFromArray)(this.cellRanges,e),this.dispatchChangedEvent(!0,!0)}selectColumns(e,t,i){return this.addCellRange({columns:e,columnStart:e[0],columnEnd:(0,s._last)(e),rowStartIndex:t.rowIndex,rowStartPinned:t.rowPinned,rowEndIndex:i.rowIndex,rowEndPinned:i.rowPinned})}}function c(e,t){return null!=e?{rowIndex:e,rowPinned:t}:void 0}function u(e){let t;for(const i of e)(void 0===t||(0,s._isRowBefore)(t,i))&&(t=i);return t}function h(e){let t;for(const i of e)(void 0===t||(0,s._isRowBefore)(i,t))&&(t=i);return t}function g(e,t,i){let o;o="top"===i?e.startRow&&e.endRow&&!(0,s._isRowBefore)(e.startRow,e.endRow)?"endRow":"startRow":e.startRow&&e.endRow&&!(0,s._isRowBefore)(e.startRow,e.endRow)?"startRow":"endRow",e[o]=t??void 0}t.RangeService=d},63978:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.findLineByLeastSquares=void 0,t.findLineByLeastSquares=function(e){const t=e.length;let i=0;if(t<=1)return e;for(let t=0;t1?i=Math.max(i,parseInt(o[1],10)):Math.floor(s)!==s&&(i=Math.max(i,s.toString().split(".")[1].length))}let s=0,o=0,r=0,n=0,a=0;for(let i=0;i{const t=++this.currentSearchRequest,i=this.eEditor;i.setValueList({refresh:!0,valueList:void 0});const o=this.params;if(o.search=e,!o.search)return;if("function"!=typeof o.values)return void(this.isFullAsync()&&(0,s._warn)(294));const r=o.values(o);if(Array.isArray(r))return this.isFullAsync()&&(0,s._warn)(294),void i.setValueList({refresh:!0,valueList:r});i.setValueList({valueList:r.then(e=>{if(t===this.currentSearchRequest)return e}),refresh:!0})}}initialiseEditor(e){const{cellStartedEdit:t,values:i,eventKey:r}=this.params;(0,s._missing)(i)&&(0,s._warn)(180);const{params:n,valueList:a}=this.buildRichSelectParams(),l=this.createManagedBean(new o.AgRichSelect(n));this.eEditor=l,l.addCss("ag-cell-editor"),this.appendChild(l),this.isFullAsync()&&l.showPicker(),this.eEditor.setValueList({valueList:a,refresh:!0,isInitial:!0});a&&!Array.isArray(a)&&a.then(e=>{const t=this.getSearchStringCallback(e);t&&l.setSearchStringCreator(t),this.processEventKey(r)}),this.addManagedListeners(l,{fieldPickerValueSelected:this.onEditorPickerValueSelected.bind(this)}),this.focusAfterAttached=t}onEditorPickerValueSelected(e){"fullRow"!==this.gos.get("editType")&&setTimeout(()=>this.params.stopEditing(!e.fromEnterKey))}getPlaceholderText(){const{valuePlaceholder:e}=this.params;if(void 0!==e)return e;const t=this.getLocaleTextFunc();return this.isFullAsync()?t("typeToSearchOoo","Type to search..."):t("advancedFilterBuilderSelectOption","Select an option...")}isFullAsync(){const{allowTyping:e,filterListAsync:t,values:i}=this.params;return!("function"==typeof i)&&t&&(0,s._warn)(294),!(!e||!t||"function"!=typeof i)}getInitialValueList(){const e=this.params,{values:t}=e,i=this.isFullAsync();return Array.isArray(t)||!t?t??[]:"function"==typeof t?i?void 0:t({...e}):[]}buildRichSelectParams(){const e=this.params,{cellRenderer:t,cellRendererParams:i,cellHeight:o,value:r,values:n,formatValue:a,searchDebounceDelay:l,valueListGap:d,valueListMaxHeight:c,valueListMaxWidth:u,allowTyping:h,filterList:g,searchType:p,highlightMatch:m,eventKey:f,multiSelect:C,suppressDeselectAll:v,suppressMultiSelectPillRenderer:w}=e,b={value:r,cellRenderer:t,cellRendererParams:i,cellRowHeight:o,searchDebounceDelay:l,valueFormatter:a,pickerAriaLabelKey:"ariaLabelRichSelectField",pickerAriaLabelValue:"Rich Select Field",pickerType:"virtual-list",pickerGap:d,allowTyping:h,filterList:g,searchType:p,highlightMatch:m,maxPickerHeight:c,maxPickerWidth:u,placeholder:this.getPlaceholderText(),initialInputValue:1===f?.length?f:f===s.KeyCode.BACKSPACE?"":void 0,multiSelect:C,suppressDeselectAll:v,suppressMultiSelectPillRenderer:w},y=this.getInitialValueList(),S=this.isFullAsync(),x="function"==typeof n;return Array.isArray(n)?(b.valueList=y,b.searchStringCreator=this.getSearchStringCallback(y)):x&&S&&(b.onSearch=this.onSearchCallback,b.allowNoResultsCopy=!0,b.filterList=!0),C&&h&&(e.allowTyping=!1,b.allowTyping=!1,(0,s._warn)(181)),{params:b,valueList:y}}getSearchStringCallback(e){if("object"!=typeof e[0])return;const t=this.params,{colDef:i,formatValue:o}=t;if(i.cellEditorParams?.formatValue)return e=>e.map(o);const{keyCreator:r}=i;if(r){(0,s._warn)(266);const{column:e,node:o,data:n}=t;return t=>t.map(t=>{const a=(0,s._addGridCommonParams)(this.gos,{value:t,colDef:i,column:e,node:o,data:n});return r(a)})}return e=>e.map(o)}afterGuiAttached(){const{focusAfterAttached:e,params:t}=this;setTimeout(()=>{if(!this.isAlive())return;const i=this.eEditor,{allowTyping:s,eventKey:o,cellStartedEdit:r}=t;if(e){const e=i.getFocusableElement();e.focus(),!s||o&&1===o.length||e.select()}r&&i.showPicker(),this.processEventKey(o)})}processEventKey(e){e&&(e===s.KeyCode.BACKSPACE?this.eEditor.searchTextFromString(null):1===e?.length&&this.eEditor.searchTextFromString(e))}focusIn(){this.eEditor.getFocusableElement().focus()}getValue(){const{params:e}=this,t=this.eEditor.getValue();return e.parseValue?.(t)??t}isPopup(){return!1}getValidationElement(){return this.eEditor.getAriaElement()}getValidationErrors(){const{params:e}=this,{getValidationErrors:t}=e;return t?t({value:this.getValue(),internalErrors:null,cellEditorParams:e}):null}}t.RichSelectCellEditor=r},69327:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.RichSelectModule=void 0;const s=i(76624),o=i(39206),r=i(19586),n=i(79617);t.RichSelectModule={moduleName:"RichSelect",version:r.VERSION,beans:[],userComponents:{agRichSelect:n.RichSelectCellEditor,agRichSelectCellEditor:n.RichSelectCellEditor},icons:{richSelectOpen:"small-down",richSelectRemove:"cancel",richSelectLoading:"loading"},dependsOn:[o.EnterpriseCoreModule,s._EditCoreModule]}},99449:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.AgGridHeaderDropZonesSelector=void 0;const s=i(76624),o=i(16491),r=i(4552);class n extends s.Component{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=(0,s._createElement)({tag:"div",cls:"ag-column-drop-wrapper",role:"presentation"}),t=new r.RowGroupDropZonePanel(!0);this.rowGroupComp=this.createManagedBean(t);const i=new o.PivotDropZonePanel(!0);this.pivotComp=this.createManagedBean(i),e.appendChild(t.getGui()),e.appendChild(i.getGui());const n=this.onDropPanelVisible.bind(this);return this.addManagedListeners(t,{displayChanged:n}),this.addManagedListeners(i,{displayChanged:n}),this.onDropPanelVisible(),e}onDropPanelVisible(){const{rowGroupComp:e,pivotComp:t}=this,i=e.isDisplayed()&&t.isDisplayed(),s="ag-column-drop-horizontal-half-width";e.toggleCss(s,i),t.toggleCss(s,i)}onRowGroupChanged(){const e=this.rowGroupComp;if(!e)return;const t=this.gos.get("rowGroupPanelShow");if("always"===t)e.setDisplayed(!0);else if("onlyWhenGrouping"===t){const t=0!==this.beans.rowGroupColsSvc?.columns?.length;e.setDisplayed(t)}else e.setDisplayed(!1)}onPivotPanelShow(){const e=this.pivotComp;if(!e)return;const t=this.gos.get("pivotPanelShow");if("always"===t)e.setDisplayed(!0);else if("onlyWhenPivoting"===t){const t=this.beans.colModel.isPivotActive();e.setDisplayed(t)}else e.setDisplayed(!1)}}t.AgGridHeaderDropZonesSelector={selector:"AG-GRID-HEADER-DROP-ZONES",component:n}},48322:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.BaseDropZonePanel=void 0;const s=i(76624),o=i(39733),r=i(93154);class n extends o.PillDropZonePanel{constructor(e,t){super(e),this.dropZonePurpose=t,this.addElementClasses(this.getGui(),this.dropZonePurpose.toLowerCase())}init(e){super.init(e),this.addManagedEventListeners({newColumnsLoaded:this.refreshGui.bind(this)}),this.addManagedPropertyListeners(["functionsReadOnly","rowGroupPanelSuppressSort","groupLockGroupColumns"],this.refreshGui.bind(this))}getItems(e){return e.columns??[]}isInterestedIn(e){return e===s.DragSourceType.HeaderCell||e===s.DragSourceType.ToolPanel}minimumAllowedNewInsertIndex(){const{gos:e,rowGroupColsSvc:t}=this.beans,i=e.get("groupLockGroupColumns"),s=t?.columns.length??0;return-1===i?s:Math.min(i,s)}showOrHideColumnOnExit(e){return this.isRowGroupPanel()&&(0,s._shouldUpdateColVisibilityAfterGroup)(this.gos,!0)&&!e.fromNudge}handleDragEnterEnd(e){if(this.showOrHideColumnOnExit(e)){const t=e.dragSource.getDragItem().columns;this.setColumnsVisible(t,!1,"uiColumnDragged")}}handleDragLeaveEnd(e){if(this.showOrHideColumnOnExit(e)){const t=e.dragSource.getDragItem();this.setColumnsVisible(t.columns,!0,"uiColumnDragged")}}setColumnsVisible(e,t,i){if(e){const s=e.filter(e=>!e.getColDef().lockVisible);this.beans.colModel.setColsVisible(s,t,i)}}isRowGroupPanel(){return"rowGroup"===this.dropZonePurpose}createPillComponent(e,t,i,s){return new r.DropZoneColumnComp(e,t,i,this.dropZonePurpose,s)}}t.BaseDropZonePanel=n},93154:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.DropZoneColumnComp=void 0;const s=i(76624),o=i(63173),r=i(37904),n=i(68105);class a extends o.PillDragComp{constructor(e,t,i,o,r){super(t,i,r),this.column=e,this.dropZonePurpose=o,this.eSortIndicator=s.RefPlaceholder,this.popupShowing=!1}postConstruct(){const{sortSvc:e,colNames:t}=this.beans;this.template={tag:"span",role:"option",children:[{tag:"span",ref:"eDragHandle",cls:"ag-drag-handle ag-column-drop-cell-drag-handle",role:"presentation"},{tag:"span",ref:"eText",cls:"ag-column-drop-cell-text",attrs:{"aria-hidden":"true"}},e?{tag:"ag-sort-indicator",ref:"eSortIndicator"}:void 0,{tag:"span",ref:"eButton",cls:"ag-column-drop-cell-button",role:"presentation"}]},e&&(this.agComponents=[e.getSortIndicatorSelector()]),this.displayName=t.getDisplayNameForColumn(this.column,"columnDrop"),super.postConstruct(),e&&(this.setupSort(),this.addManagedEventListeners({sortChanged:()=>{this.setupAria()}})),this.isGroupingZone()&&this.addManagedPropertyListener("groupLockGroupColumns",()=>{this.refreshRemove(),this.refreshDraggable(),this.setupAria()})}getItem(){return this.column}getDisplayName(){return this.displayName}getTooltip(){return this.column.getColDef().headerTooltip}addAdditionalAriaInstructions(e,t){const i=this.gos.get("rowGroupPanelSuppressSort"),s=this.gos.get("functionsReadOnly");if(this.isAggregationZone()&&!s){const i=t("ariaDropZoneColumnValueItemDescription","Press ENTER to change the aggregation type");e.push(i)}if(this.isGroupingZone()&&this.column.isSortable()&&!i){const i=t("ariaDropZoneColumnGroupItemDescription","Press ENTER to sort");e.push(i)}super.addAdditionalAriaInstructions(e,t)}isMovable(){return this.isDraggable()}isDraggable(){return this.isReadOnly()}isRemovable(){return this.isReadOnly()}isReadOnly(){return!this.isGroupingAndLocked()&&!this.gos.get("functionsReadOnly")}getAriaDisplayName(){const e=this.getLocaleTextFunc(),{name:t,aggFuncName:i}=this.getColumnAndAggFuncName(),s=e("ariaDropZoneColumnComponentAggFuncSeparator"," of "),o={asc:e("ariaDropZoneColumnComponentSortAscending","ascending"),desc:e("ariaDropZoneColumnComponentSortDescending","descending")},r=this.column.getSort(),n=this.gos.get("rowGroupPanelSuppressSort");return[i&&`${i}${s}`,t,this.isGroupingZone()&&!n&&r&&`, ${o[r]}`].filter(e=>!!e).join("")}getColumnAndAggFuncName(){const e=this.displayName;let t="";if(this.isAggregationZone()){const e=this.column.getAggFunc(),i="string"==typeof e?e:"agg";t=this.getLocaleTextFunc()(i,i)}return{name:e,aggFuncName:t}}setupSort(){if(this.column.isSortable()&&this.isGroupingZone()&&!this.gos.get("rowGroupPanelSuppressSort")){this.eSortIndicator.setupSort(this.column,!0);const e=e=>{e.preventDefault(),this.beans.sortSvc.progressSortFromEvent(this.column,e)};this.addGuiEventListener("click",e),this.addGuiEventListener("keydown",t=>{t.key===s.KeyCode.ENTER&&this.isGroupingZone()&&e(t)})}}getDefaultIconName(){return"hide"}createGetDragItem(){const{column:e}=this;return()=>{const t={};return t[e.getId()]=e.isVisible(),{columns:[e],visibleState:t}}}setupComponents(){super.setupComponents(),this.isAggregationZone()&&!this.gos.get("functionsReadOnly")&&this.addGuiEventListener("click",this.onShowAggFuncSelection.bind(this))}onKeyDown(e){super.onKeyDown(e);e.key===s.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{aggFuncSvc:e,popupSvc:t}=this.beans,i=new r.VirtualList({cssIdentifier:"select-agg-func"}),o=e.getFuncNames(this.column),n=this.getGui(),a=i.getGui();i.setModel({getRow:function(e){return o[e]},getRowCount:function(){return o.length}}),this.createBean(i);const l=(0,s._createElement)({tag:"div",cls:"ag-select-agg-func-popup"});l.style.top="0px",l.style.left="0px",l.appendChild(a),l.style.width=`${n.clientWidth}px`;const[d]=this.addManagedElementListeners(l,{focusout:e=>{!l.contains(e.relatedTarget)&&u&&u.hideFunc()}}),c=this.getLocaleTextFunc(),u=t.addPopup({modal:!0,eChild:l,closeOnEsc:!0,closedCallback:e=>{this.destroyBean(i),this.popupShowing=!1,"Escape"===e?.key&&n.focus(),d&&d()},ariaLabel:c("ariaLabelAggregationFunction","Aggregation Function")});u&&i.setComponentCreator(this.createAggSelect.bind(this,u.hideFunc)),i.addGuiEventListener("keydown",e=>{if(e.key===s.KeyCode.ENTER||e.key===s.KeyCode.SPACE){const e=i.getLastFocusedRow();if(null==e)return;const t=i.getComponentAt(e);t&&t.selectItem()}}),t.positionPopupByComponent({type:"aggFuncSelect",eventSource:n,ePopup:l,keepWithinBounds:!0,additionalParams:{column:this.column},position:"under"}),i.refresh();let h=o.findIndex(e=>e===this.column.getAggFunc());-1===h&&(h=0),i.focusRow(h)}createAggSelect(e,t){const i=this.getLocaleTextFunc(),s=t.toString(),o=i(s,s);return new l(()=>{e(),this.getGui().focus(),this.beans.valueColsSvc?.setColumnAggFunc?.(this.column,t,"toolPanelDragAndDrop")},o)}isGroupingAndLocked(){return this.isGroupingZone()&&(0,n.isRowGroupColLocked)(this.column,this.beans)}isAggregationZone(){return"aggregation"===this.dropZonePurpose}isGroupingZone(){return"rowGroup"===this.dropZonePurpose}getDragSourceType(){return s.DragSourceType.ToolPanel}destroy(){super.destroy(),this.column=null}}t.DropZoneColumnComp=a;class l extends s.Component{constructor(e,t){super({tag:"div",cls:"ag-select-agg-func-item",children:t}),this.selectItem=e,this.addGuiEventListener("click",this.selectItem)}}},16491:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.PivotDropZonePanel=void 0;const s=i(76624),o=i(48322);class r extends o.BaseDropZonePanel{constructor(e){super(e,"pivot")}postConstruct(){const e=this.getLocaleTextFunc(),t=e("pivotColumnsEmptyMessage","Drag here to set column labels"),i=e("pivots","Column Labels");super.init({icon:(0,s._createIconNoSpan)("pivotPanel",this.beans,null),emptyMessage:t,title:i}),this.addManagedEventListeners({newColumnsLoaded:this.refresh.bind(this),columnPivotChanged:this.refresh.bind(this),columnPivotModeChanged:this.checkVisibility.bind(this)}),this.refresh()}getAriaLabel(){return this.getLocaleTextFunc()("ariaPivotDropZonePanelLabel","Column Labels")}refresh(){this.checkVisibility(),this.refreshGui()}checkVisibility(){const e=this.beans.colModel,t=e.isPivotMode();if(this.horizontal)switch(this.gos.get("pivotPanelShow")){case"always":this.setDisplayed(t);break;case"onlyWhenPivoting":{const i=e.isPivotActive();this.setDisplayed(t&&i);break}default:this.setDisplayed(!1)}else this.setDisplayed(t)}isItemDroppable(e,t){return!(this.gos.get("functionsReadOnly")||!e.isPrimary())&&(e.isAllowPivot()&&(!e.isPivotActive()||this.isSourceEventFromTarget(t)))}updateItems(e){this.beans.pivotColsSvc?.setColumns(e,"toolPanelUi")}getIconName(){return this.isPotentialDndItems()?"pivot":"notAllowed"}getExistingItems(){return this.beans.pivotColsSvc?.columns??[]}}t.PivotDropZonePanel=r},4552:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.RowGroupDropZonePanel=void 0;const s=i(76624),o=i(48322);class r extends o.BaseDropZonePanel{constructor(e){super(e,"rowGroup")}postConstruct(){const e=this.getLocaleTextFunc(),t=e("rowGroupColumnsEmptyMessage","Drag here to set row groups"),i=e("groups","Row Groups");super.init({icon:(0,s._createIconNoSpan)("rowGroupPanel",this.beans,null),emptyMessage:t,title:i}),this.addManagedEventListeners({columnRowGroupChanged:this.refreshGui.bind(this)})}getAriaLabel(){return this.getLocaleTextFunc()("ariaRowGroupDropZonePanelLabel","Row Groups")}isItemDroppable(e,t){return!(this.gos.get("functionsReadOnly")||!e.isPrimary()||e.colDef.showRowGroup)&&(e.isAllowRowGroup()&&(!e.isRowGroupActive()||this.isSourceEventFromTarget(t)))}updateItems(e){this.beans.rowGroupColsSvc?.setColumns(e,"toolPanelUi")}getIconName(){return this.isPotentialDndItems()?"group":"notAllowed"}getExistingItems(){return this.beans.rowGroupColsSvc?.columns??[]}}t.RowGroupDropZonePanel=r},73392:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ValuesDropZonePanel=void 0;const s=i(76624),o=i(48322);class r extends o.BaseDropZonePanel{constructor(e){super(e,"aggregation")}postConstruct(){const e=this.getLocaleTextFunc(),t=e("valueColumnsEmptyMessage","Drag here to aggregate"),i=e("values","Values");super.init({icon:(0,s._createIconNoSpan)("valuePanel",this.beans,null),emptyMessage:t,title:i}),this.addManagedEventListeners({columnValueChanged:this.refreshGui.bind(this)})}getAriaLabel(){return this.getLocaleTextFunc()("ariaValuesDropZonePanelLabel","Values")}getIconName(){return this.isPotentialDndItems()?"aggregate":"notAllowed"}isItemDroppable(e,t){return!(this.gos.get("functionsReadOnly")||!e.isPrimary())&&(e.isAllowValue()&&(!e.isValueActive()||this.isSourceEventFromTarget(t)))}updateItems(e){this.beans.valueColsSvc?.setColumns(e,"toolPanelUi")}getExistingItems(){return this.beans.valueColsSvc?.columns??[]}}t.ValuesDropZonePanel=r},44700:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.GroupFilter=t.processGroupFilterParams=void 0;const s=i(76624);t.processGroupFilterParams=function(e){return e.buttons&&(e.buttons=[]),e};const o={tag:"div",cls:"ag-group-filter",children:[{tag:"div",ref:"eGroupField"},{tag:"div",ref:"eUnderlyingFilter"}]};class r extends s.TabGuardComp{constructor(){super(o),this.filterType="group",this.eGroupField=s.RefPlaceholder,this.eUnderlyingFilter=s.RefPlaceholder}wireBeans(e){this.groupFilterSvc=e.groupFilter}postConstruct(){this.initialiseTabGuard({})}init(e){return this.params=e,this.updateParams().then(()=>{this.addHandlerListeners(this.updateGroups.bind(this))})}refresh(e){const t=e;return this.params=t,"colDef"===t.source&&this.updateParams(),!0}updateParams(){return this.validateParams(),this.updateGroups()}validateParams(){const{colDef:e}=this.params;e.field&&(0,s._warn)(234),e.filterValueGetter&&(0,s._warn)(235),e.filterParams&&(0,s._warn)(236)}addHandlerListeners(e){const t=this.addManagedListeners(this.getHandler(),{sourceColumnsChanged:()=>{this.updateGroups()},destroyed:()=>{for(const e of t)e();this.addHandlerListeners(e)}})}updateGroups(){const{sourceColumns:e,selectedColumn:t}=this.updateGroupField();return this.dispatchLocalEvent({type:"columnsChanged"}),this.getUnderlyingFilters(e,t)}updateGroupField(){this.groupColumn=this.params.column;const e=this.getHandler();if(!e)return{sourceColumns:null};const{sourceColumns:t,hasMultipleColumns:i,selectedColumn:o}=e,r=this.eGroupField;return(0,s._clearElement)(r),this.eGroupFieldSelect&&this.destroyBean(this.eGroupFieldSelect),i&&t&&(this.createGroupFieldSelectElement(t,o),r.appendChild(this.eGroupFieldSelect.getGui()),r.appendChild((0,s._createElement)({tag:"div",cls:"ag-filter-separator"}))),(0,s._setDisplayed)(r,i),{sourceColumns:t,selectedColumn:o}}createGroupFieldSelectElement(e,t){const i=this.createManagedBean(new s.AgSelect);this.eGroupFieldSelect=i;const o=this.getLocaleTextFunc();i.setLabel(o("groupFilterSelect","Select field:")),i.setLabelAlignment("top"),i.addOptions(e.map(e=>({value:e.getColId(),text:this.beans.colNames.getDisplayNameForColumn(e,"groupFilter",!1)??void 0}))),i.setValue(t.getColId()),i.onValueChange(e=>this.updateSelectedColumn(e)),i.addCss("ag-group-filter-field-select-wrapper"),1===e.length&&i.setDisabled(!0)}getUnderlyingFilters(e,t){if(!e)return this.filterColumnPairs=void 0,this.selectedFilter=void 0,s.AgPromise.resolve();const i=[],o=[],r=this.beans.colFilter;for(const s of e){const e=r.getOrCreateFilterUi(s);e&&i.push(e.then(e=>{e&&o.push({filter:e,column:s}),s.getColId()===t.getColId()&&(this.selectedFilter=e??void 0)}))}return s.AgPromise.all(i).then(()=>{this.filterColumnPairs=o})}addUnderlyingFilterElement(e){if((0,s._clearElement)(this.eUnderlyingFilter),!e)return s.AgPromise.resolve();const t=this.createManagedBean(new s.FilterComp(e,"COLUMN_MENU"));return this.filterComp=t,t.hasFilter()?(this.eUnderlyingFilter.appendChild(t.getGui()),t.getFilter()?.then(()=>{t.afterGuiAttached?.(this.afterGuiAttachedParams),this.afterGuiAttachedParams?.suppressFocus||!this.eGroupFieldSelect||this.eGroupFieldSelect.isDisabled()||this.eGroupFieldSelect.getFocusableElement().focus()})??s.AgPromise.resolve()):s.AgPromise.resolve()}updateSelectedColumn(e){if(!e)return;this.filterComp?.afterGuiDetached(),this.destroyBean(this.filterComp);const t=this.getFilterColumnPair(e),i=t?.column;this.selectedFilter=t?.filter,this.getHandler().setSelectedColumn(i),this.dispatchLocalEvent({type:"columnsChanged"}),this.addUnderlyingFilterElement(i)}isFilterActive(){return this.groupFilterSvc.isFilterActive(this.groupColumn)}doesFilterPass(){return!0}getModel(){return null}setModel(){}afterGuiAttached(e){this.afterGuiAttachedParams=e,this.addUnderlyingFilterElement(this.getHandler().selectedColumn)}afterGuiDetached(){(0,s._clearElement)(this.eUnderlyingFilter),this.selectedFilter?.afterGuiDetached?.()}getSelectedColumn(){return this.getHandler().selectedColumn}getHandler(){return this.params.getHandler()}getFilterColumnPair(e){if(e)return this.filterColumnPairs?.find(({column:t})=>t.getColId()===e)}}t.GroupFilter=r},84090:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.GroupFilterHandler=void 0;const s=i(76624);class o extends s.BeanStub{init(e){this.params=e,this.validateModel(e),this.updateColumns(),this.addManagedEventListeners({columnRowGroupChanged:this.updateColumns.bind(this),filterDestroyed:e=>this.onFilterDestroyed(e)})}refresh(e){this.params=e,this.validateModel(e),"colDef"===e.source&&this.updateColumns()}doesFilterPass(){return!0}setSelectedColumn(e){this.selectedColumn=e,this.dispatchLocalEvent({type:"selectedColumnChanged"})}validateModel(e){null!=e.model&&e.onModelChange(null)}getSourceColumns(){const e=this.params.column;if(this.gos.get("treeData"))return(0,s._warn)(237),[];const t=this.beans.groupFilter.getSourceColumns(e);return t||((0,s._warn)(183),[])}updateColumns(){const e=this.getSourceColumns(),t=e.filter(e=>e.isFilterAllowed());let i,s;this.sourceColumns=t,t.length?1===e.length?(i=t[0],s=!1):(i=this.selectedColumn,i&&t.some(e=>e.getId()===i.getId())||(i=t[0]),s=!0):(i=void 0,s=!1),this.selectedColumn=i,this.hasMultipleColumns=s,this.dispatchLocalEvent({type:"sourceColumnsChanged"})}onFilterDestroyed({column:e,source:t}){if("gridDestroyed"===t)return;const i=e.getColId();this.sourceColumns?.some(e=>e.getColId()===i)&&setTimeout(()=>{this.isAlive()&&this.updateColumns()})}}t.GroupFilterHandler=o},93093:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.GroupFilterService=void 0;const s=i(76624);class o extends s.BeanStub{constructor(){super(...arguments),this.beanName="groupFilter"}postConstruct(){this.addManagedEventListeners({columnRowGroupChanged:()=>this.updateFilterFlags("columnRowGroupChanged")})}isGroupFilter(e){return"agGroupColumnFilter"===e.getColDef().filter}isFilterAllowed(e){const t=this.beans.colFilter;return!!this.getSourceColumns(e)?.some(e=>t?.isFilterAllowed(e))}isFilterActive(e){const t=this.beans.colFilter;return!!this.getSourceColumns(e)?.some(e=>t?.isFilterActive(e))}getSourceColumns(e){return this.beans.showRowGroupCols?.getSourceColumnsForGroupColumn(e)}updateFilterFlags(e,t){const{autoColSvc:i,colFilter:s}=this.beans;i?.getColumns()?.forEach(i=>{this.isGroupFilter(i)&&s?.setColFilterActive(i,this.isFilterActive(i),e,t)})}}t.GroupFilterService=o},7250:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.GroupFloatingFilterComp=void 0;const s=i(76624),o={tag:"div",ref:"eFloatingFilter",cls:"ag-group-floating-filter ag-floating-filter-input",role:"presentation"};class r extends s.Component{constructor(){super(o),this.eFloatingFilter=s.RefPlaceholder,this.haveAddedColumnListeners=!1}init(e){this.params=e;const t=(0,s._isGroupMultiAutoColumn)(this.gos),i=this.onColChange.bind(this),o=e=>{t?this.setupUnderlyingFloatingFilterElement().then(()=>e()):(this.setupReadOnlyFloatingFilterElement(),e())};return this.gos.get("enableFilterHandlers")?new s.AgPromise(e=>o(e)).then(()=>{this.addHandlerListeners(e,i)}):new s.AgPromise(e=>{this.params.parentFilterInstance(t=>{this.parentFilterInstance=t,o(e)})}).then(()=>{this.addManagedListeners(this.parentFilterInstance,{columnsChanged:i})})}refresh(e){if(this.params=e,this.setParams(),this.gos.get("enableFilterHandlers"))if(this.showingUnderlyingFloatingFilter){const e=this.getSelectedColumn(),t=this.beans.colFilter.getFloatingFilterCompDetails(e,this.params.showParentFilter);this.underlyingFloatingFilter?.refresh?.(t?.params)}else this.updateDisplayedValue()}setParams(){const e=this.beans.colNames.getDisplayNameForColumn(this.params.column,"header",!0),t=this.getLocaleTextFunc();this.eFloatingFilterText?.setInputAriaLabel(`${e} ${t("ariaFilterInput","Filter Input")}`)}addHandlerListeners(e,t){const i=this.addManagedListeners(e.getHandler(),{selectedColumnChanged:t,sourceColumnsChanged:t,destroyed:()=>{for(const e of i)e();this.addHandlerListeners(this.params,t)}})}setupReadOnlyFloatingFilterElement(){this.eFloatingFilterText||(this.eFloatingFilterText=this.createManagedBean(new s.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,s._clearElement)(this.eFloatingFilter);const e=this.getSelectedColumn();if(e&&!e.isVisible()){const t=this.beans.colFilter,i=t.getFloatingFilterCompDetails(e,this.params.showParentFilter);if(i)return this.haveAddedColumnListeners||(this.haveAddedColumnListeners=!0,this.addManagedListeners(e,{visibleChanged:this.onColumnVisibleChanged.bind(this),colDefChanged:this.onColDefChanged.bind(this)})),i.newAgStackInstance().then(i=>{this.underlyingFloatingFilter=i,this.underlyingFloatingFilter?.onParentModelChanged(t.getModelForColumn(e)),this.appendChild(i.getGui()),this.showingUnderlyingFloatingFilter=!0})}return this.setupReadOnlyFloatingFilterElement(),s.AgPromise.resolve()}getSelectedColumn(){if(this.gos.get("enableFilterHandlers")){return this.params.getHandler().selectedColumn}return this.parentFilterInstance.getSelectedColumn()}onColumnVisibleChanged(){this.setupUnderlyingFloatingFilterElement()}onColDefChanged(e){if(!e.column)return;const t=this.beans.colFilter.getFloatingFilterCompDetails(e.column,this.params.showParentFilter);t&&this.underlyingFloatingFilter?.refresh?.(t.params)}onParentModelChanged(e,t){this.showingUnderlyingFloatingFilter?this.underlyingFloatingFilter?.onParentModelChanged(this.beans.colFilter.getModelForColumn(this.getSelectedColumn()),t):this.updateDisplayedValue()}updateDisplayedValue(){const e=this.eFloatingFilterText;if(!e)return;const t=this.beans.colFilter,i=this.getSelectedColumn(),s=s=>{if(s){const o=i?t.getModelForColumn(i):null;e.setValue(null==o?"":s.getModelAsString?.(o)??""),e.setDisplayed(!0)}else e.setValue(""),e.setDisplayed(!1)};this.gos.get("enableFilterHandlers")?s(t.getHandler(i)):t.getOrCreateFilterUi(i)?.then(e=>{s(e)})}onColChange(){this.showingUnderlyingFloatingFilter||this.updateDisplayedValue()}}t.GroupFloatingFilterComp=r},37002:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.groupColumnsChanged=t.makeGroupColumns=void 0;t.makeGroupColumns=(e,t)=>{if(!e)return void(t.length=0);const i=e.length;t.length=i;for(let s=0;s{const i=e.length;if(i!==t?.length)return!0;for(let s=0;s{const t=e.childrenAfterGroup,i=t?.length;if(!i)return;const s=new Array(i);let o,r=0,n=!1;for(let e=0;e1)}}if(o.size)for(const t of o){this.insertOneNode(e,t);const i=t.parent;l?.addParentNode(i),r||(r=(i?.childrenAfterGroup?.length??0)>1)}a.size&&(d(a),this.removeEmptyGroups(a,n)),r&&this.sortChildren(t)}sortChildren(e){e.forEachChangedNodeDepthFirst(t=>{(0,a.sortGroupChildren)(t.childrenAfterGroup)&&e.active&&e.addParentNode(t)},!1,!0)}orderGroups(e){const t=this.gos.getCallback("initialGroupOrderComparator");if(!t)return;const i=this.beans,s=i.gridApi,o=i.gridOptions.context,r=(e,i)=>t({api:s,context:o,nodeA:e,nodeB:i}),n=e=>{const t=e.childrenAfterGroup,i=t?.length;if(i&&!e.leafGroup){i>1&&t.sort(r);for(let e=0,s=i;e=0;--e){const{col:a}=n[e];let l=i.getKeyForNode(a,t);if(null==l||""===l){if(!s)continue;l=""}if(!o?.parent||o.key!==l){r=!0;break}o=o.parent}return r||(r=!!o?.parent),!!r&&(this.removeFromParent(t),this.insertOneNode(e,t),t.setData(t.data),!0)}groupShouldBeRemoved(e){const t=this.getChildrenMappedKey(e.key,e.rowGroupColumn),i=e.parent?.childrenMapped;return!(!i||!i[t])&&(!!e.group&&0===(e.childrenAfterGroup?.length??0))}removeEmptyGroups(e,t){const i=this.beans.selectionSvc;let s;const o=Array.from(e),r=this.nonLeafsById;do{e.clear();for(let n=0;n!e.group),this.nonLeafsById.clear(),e.leafGroup=!this.groupCols?.length,e.childrenAfterGroup=[],e.childrenMapped={},e.updateHasChildren();const t=e.sibling;t&&(t.childrenAfterGroup=e.childrenAfterGroup,t.childrenMapped=e.childrenMapped);const i=e._leafs;for(let t=0,s=i.length;t=d-1,p=this.createGroup(i,s,c,h,g,t);this.addToParent(p,i),this.setExpandedInitialValue(r,p),i=p}i.group||(0,s._warn)(184,{parentGroupData:i.data,childNodeData:t.data}),t.parent=i,t.level=i.level+1,i.childrenAfterGroup.push(t),i.updateHasChildren(),c(i)}createGroup(e,t,i,o,r,n){const a=t.col,l=(e.level>=0?e.id+"-":"row-group-")+a.getColId()+"-"+i,d=this.nonLeafsById;let c=d.get(l);return void 0!==c||(c=new s.RowNode(this.beans),c.group=!0,c.parent=e,c.field=t.field??null,c.rowGroupColumn=a,c.key=i,c.id=l,c.level=o,c.leafGroup=r,c.rowGroupIndex=o,c.childrenAfterGroup=[],c.childrenMapped={},d.set(l,c),c.groupValue=n&&this.beans.valueSvc.getValue(a,n,"data"),c.setAllChildrenCount(0),c.updateHasChildren()),c}getChildrenMappedKey(e,t){return t?t.getId()+"-"+e:e}setExpandedInitialValue(e,t){e&&t.leafGroup?t.expanded=!1:t.expanded=(0,o._getRowDefaultExpanded)(this.beans,t,t.level)}onShowRowGroupColsSetChanged(){const{rowModel:e,valueSvc:t}=this.beans;for(const e of this.nonLeafsById.values()){e._groupData=void 0;const i=e.rowGroupColumn,o=i&&(0,s._csrmFirstLeaf)(e);e.groupValue=o&&t.getValue(i,o,"data")}const i=e.rootNode?._leafs;if(i)for(let e=0,t=i.length;e{for(const t of e){const e=t?.childrenAfterGroup;if(!e)continue;const i=e.length;let s=0;for(let o=0;o{for(;void 0!==e._leafs;){const t=e.parent;if(!t)break;e._leafs=void 0,e=t}}},17818:function(e,t){"use strict";function i(e,t){const i=e.sourceRowIndex,s=t.sourceRowIndex,o=i>=0,r=s>=0;return o&&r?i-s:!o&&!r?e.__objectId-t.__objectId:o?1:-1}Object.defineProperty(t,"__esModule",{value:!0}),t.sortGroupChildren=void 0,t.sortGroupChildren=function(e){if(!e)return!1;const t=e.length;if(t<2)return!1;let s=!1;for(let o=1;o0){s=!0;break}return!!s&&(e.sort(i),!0)}},24357:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.RowGroupColsSvc=void 0;const s=i(76624);class o extends s.BaseColsService{constructor(){super(...arguments),this.beanName="rowGroupColsSvc",this.eventName="columnRowGroupChanged",this.columnProcessors={set:(e,t,i)=>this.setActive(t,e,i),add:(e,t,i)=>this.setActive(!0,e,i),remove:(e,t,i)=>this.setActive(!1,e,i)},this.columnOrdering={enableProp:"rowGroup",initialEnableProp:"initialRowGroup",indexProp:"rowGroupIndex",initialIndexProp:"initialRowGroupIndex"},this.columnExtractors={setFlagFunc:(e,t,i)=>this.setColRowGroupActive(e,t,i),getIndexFunc:e=>e.rowGroupIndex,getInitialIndexFunc:e=>e.initialRowGroupIndex,getValueFunc:e=>e.rowGroup,getInitialValueFunc:e=>e.initialRowGroup},this.modifyColumnsNoEventsCallbacks={addCol:e=>{this.columns.includes(e)||this.columns.push(e)},removeCol:e=>(0,s._removeFromArray)(this.columns,e)}}moveColumn(e,t,i){if(0===this.columns.length)return;const s=this.columns[e],o=this.columns.slice(e,t);this.columns.splice(e,1),this.columns.splice(t,0,s),this.updateIndexMap(),this.eventSvc.dispatchEvent({type:this.eventName,columns:o,column:1===o.length?o[0]:null,source:i})}syncColumnWithState(e,t,i,s){const{value1:o,value2:r}=i("rowGroup","rowGroupIndex");void 0===o&&void 0===r||("number"==typeof r||o?(e.isRowGroupActive()||(this.setColRowGroupActive(e,!0,t),this.modifyColumnsNoEventsCallbacks.addCol(e)),s&&"number"==typeof r&&(s[e.getId()]=r)):e.isRowGroupActive()&&(this.setColRowGroupActive(e,!1,t),this.modifyColumnsNoEventsCallbacks.removeCol(e)))}setActive(e,t,i){if(e===t.isRowGroupActive())return;this.setColRowGroupActive(t,e,i);const o=this.beans.groupHierarchyColSvc?.getColumn(t);(0,s._shouldUpdateColVisibilityAfterGroup)(this.gos,e)&&!o&&this.colModel.setColsVisible([t],!e,i)}setColRowGroupActive(e,t,i){if(e.rowGroupActive!==t){if(e.rowGroupActive=t,t){const s=this.beans.groupHierarchyColSvc?.insertVirtualColumnsForCol(this.columns,e);s?.forEach(e=>this.setColRowGroupActive(e,t,i))}e.dispatchColEvent("columnRowGroupChanged",i)}e.dispatchStateUpdatedEvent("rowGroup")}}t.RowGroupColsSvc=o},93516:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.getRowGroupColumns=t.moveRowGroupColumn=t.addRowGroupColumns=t.removeRowGroupColumns=t.setRowGroupColumns=void 0,t.setRowGroupColumns=function(e,t){e.rowGroupColsSvc?.setColumns(t,"api")},t.removeRowGroupColumns=function(e,t){e.rowGroupColsSvc?.removeColumns(t,"api")},t.addRowGroupColumns=function(e,t){e.rowGroupColsSvc?.addColumns(t,"api")},t.moveRowGroupColumn=function(e,t,i){e.rowGroupColsSvc?.moveColumn?.(t,i,"api")},t.getRowGroupColumns=function(e){return e.rowGroupColsSvc?.columns??[]}},81442:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.GroupFilterModule=t.RowGroupingPanelModule=t.RowGroupingModule=t.SharedRowGroupingModule=void 0;const s=i(76624),o=i(39206),r=i(12270),n=i(85948),a=i(16858),l=i(19586),d=i(99449),c=i(44700),u=i(84090),h=i(93093),g=i(7250),p=i(29908),m=i(93516);t.SharedRowGroupingModule={moduleName:"SharedRowGrouping",version:l.VERSION,apiFunctions:{setRowGroupColumns:m.setRowGroupColumns,removeRowGroupColumns:m.removeRowGroupColumns,addRowGroupColumns:m.addRowGroupColumns,getRowGroupColumns:m.getRowGroupColumns,moveRowGroupColumn:m.moveRowGroupColumn},dependsOn:[o.EnterpriseCoreModule,r.SharedAggregationModule,a.GroupColumnModule,a.StickyRowModule,n.GroupHierarchyModule]},t.RowGroupingModule={moduleName:"RowGrouping",version:l.VERSION,dynamicBeans:{groupStrategy:p.GroupStrategy},rowModels:["clientSide"],dependsOn:[t.SharedRowGroupingModule,r.AggregationModule,a.ClientSideRowModelHierarchyModule,a.GroupEditModule]},t.RowGroupingPanelModule={moduleName:"RowGroupingPanel",version:l.VERSION,selectors:[d.AgGridHeaderDropZonesSelector],icons:{pivotPanel:"pivot",rowGroupPanel:"group",panelDelimiter:"small-right",panelDelimiterRtl:"small-left"},dependsOn:[o.EnterpriseCoreModule,s._PopupModule]},t.GroupFilterModule={moduleName:"GroupFilter",version:l.VERSION,userComponents:{agGroupColumnFilter:{classImp:c.GroupFilter,processParams:c.processGroupFilterParams},agGroupColumnFloatingFilter:g.GroupFloatingFilterComp},beans:[h.GroupFilterService],dynamicBeans:{agGroupColumnFilterHandler:u.GroupFilterHandler},dependsOn:[o.EnterpriseCoreModule,s._ColumnFilterModule]}},68105:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.getGroupingLocaleText=t.isRowGroupColLocked=t.setRowNodeGroup=t.setRowNodeGroupValue=void 0,t.setRowNodeGroupValue=function(e,t,i,s){const o=t.getCol(i);let r=e._groupData;r||(r={},e._groupData=r);const n=o.getColId(),a=r[n];a!==s&&(r[n]=s,e.dispatchCellChangedEvent(o,s,a))},t.setRowNodeGroup=function(e,t,i){e.group!==i&&(e.group&&!i&&(e.expanded=!1),e.group=i,e.updateHasChildren(),t.selectionSvc?.updateRowSelectable(e),e.dispatchRowEvent("groupChanged"))},t.isRowGroupColLocked=function(e,t){const{gos:i,rowGroupColsSvc:s}=t;if(!s||!e)return!1;const o=i.get("groupLockGroupColumns");return!(!e.isRowGroupActive()||0===o)&&(-1===o||o>s.columns.findIndex(t=>t.getColId()===e.getColId()))},t.getGroupingLocaleText=function(e,t,i){const s=e(t,`${"groupBy"===t?"Group by":"Un-Group by"} ${i}`,[i]);return s.indexOf(i)>=0?s:`${s} ${i}`}},35995:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.AutoColService=void 0;const s=i(76624);class o extends s.BeanStub{constructor(){super(...arguments),this.beanName="autoColSvc"}postConstruct(){this.addManagedPropertyListener("autoGroupColumnDef",this.updateColumns.bind(this))}addColumns(e){null!=this.columns&&(e.list=this.columns.list.concat(e.list),e.tree=this.columns.tree.concat(e.tree),(0,s._updateColsMap)(e))}createColumns(e,t,i){const o=this.beans,{colModel:r,gos:n,rowGroupColsSvc:a,colGroupSvc:l}=o,d=r.isPivotMode(),c=(0,s._isGroupUseEntireRow)(n,d),u=d?n.get("pivotSuppressAutoColumn"):this.isSuppressAutoCol(),h=a?.columns,g=()=>{this.columns&&((0,s._destroyColumnTree)(o,this.columns.tree),this.columns=null)};if(!(h&&h.length>0||n.get("treeData"))||u||c)return void g();const p=this.generateAutoCols(h),m=(0,s._areColIdsEqual)(p,this.columns?.list||null),f=e.treeDepth,C=this.columns?this.columns.treeDepth:-1;if(m&&C==f){const e=new Map(p.map(e=>[e.getId(),e]));for(const t of this.columns?.list??[]){const s=e.get(t.getId());s&&t.setColDef(s.getColDef(),null,i)}return}g();const v=l?.findDepth(e.tree)??0,w=l?.balanceTreeForAutoCols(p,v)??[];this.columns={list:p,tree:w,treeDepth:v,map:{}};t(e=>{if(!e)return null;const t=e.filter(e=>!(0,s.isColumnGroupAutoCol)(e));return[...p,...t]})}updateColumns(e){const t=(0,s._convertColumnEventSourceType)(e.source);this.columns?.list.forEach((e,i)=>this.updateOneAutoCol(e,i,t))}getColumn(e){return this.columns?.list.find(t=>(0,s._columnsMatch)(t,e))??null}getColumns(){return this.columns?.list??null}generateAutoCols(e=[]){const t=[],{gos:i}=this,o=i.get("treeData");let r=(0,s._isGroupMultiAutoColumn)(i);return o&&r&&((0,s._warn)(182),r=!1),r?e.forEach((e,i)=>{t.push(this.createOneAutoCol(e,i))}):t.push(this.createOneAutoCol()),t}isSuppressAutoCol(){const e=this.gos;if("custom"===e.get("groupDisplayType"))return!0;return"custom"===e.get("treeDataDisplayType")}createOneAutoCol(e,t){let i;i=e?`${s.GROUP_AUTO_COLUMN_ID}-${e.getId()}`:s.GROUP_AUTO_COLUMN_ID;const o=this.createAutoColDef(i,e,t);o.colId=i;const r=new s.AgColumn(o,null,i,!0);return this.createBean(r),r}updateOneAutoCol(e,t,i){const o=e.getColDef(),r="string"==typeof o.showRowGroup?o.showRowGroup:void 0,n=this.beans,a=null!=r?n.colModel.getColDefCol(r):void 0,l=e.getId(),d=this.createAutoColDef(l,a??void 0,t);e.setColDef(d,null,i),(0,s._applyColumnState)(n,{state:[(0,s._getColumnStateFromColDef)(d,l)]},i)}createAutoColDef(e,t,i){let o=this.createBaseColDef(t);const r=this.gos.get("autoGroupColumnDef");if((0,s._mergeDeep)(o,r),o=(0,s._addColumnDefaultAndTypes)(this.beans,o,e,!0),!this.gos.get("treeData")){(0,s._missing)(o.field)&&(0,s._missing)(o.valueGetter)&&(0,s._missing)(o.filterValueGetter)&&"agGroupColumnFilter"!==o.filter&&(o.filter=!1)}i&&i>0&&(o.headerCheckboxSelection=!1);const n=(0,s._isColumnsSortingCoupledToGroup)(this.gos),a=o.valueGetter||null!=o.field;return n&&!a&&(o.sortIndex=void 0,o.initialSort=void 0),o}createBaseColDef(e){const t=this.gos.get("autoGroupColumnDef"),i={headerName:this.getLocaleTextFunc()("group","Group"),showRowGroup:e?.getColId()??!0};return t&&(t.cellRenderer||t.cellRendererSelector)||(i.cellRenderer="agGroupCellRenderer"),e&&(i.headerName=this.beans.colNames.getDisplayNameForColumn(e,"header")??void 0,i.headerValueGetter=e.colDef.headerValueGetter),i}destroy(){(0,s._destroyColumnTree)(this.beans,this.columns?.tree),super.destroy()}}t.AutoColService=o},12560:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.BaseExpansionService=void 0;const s=i(76624);class o extends s.BeanStub{addExpandedCss(e,t){t.isExpandable()&&(e.push("ag-row-group"),e.push(t.expanded?"ag-row-group-expanded":"ag-row-group-contracted"))}getRowExpandedListeners(e){const{rowNode:t}=e,i=this.updateExpandedCss.bind(this,e,t);return{expandedChanged:i,hasChildrenChanged:i}}setExpanded(e,t,i,o){if(e.expanded===t)return;e.expanded=t,e.dispatchRowEvent("expandedChanged");const r={...(0,s._createGlobalRowEvent)(e,this.gos,"rowGroupOpened"),expanded:t,event:i||null};this.dispatchExpandedEvent(r,o)}isExpandable(e){return!e.footer&&(this.beans.colModel.isPivotMode()?e.hasChildren()&&!e.leafGroup:e.hasChildren()||e.master)}updateExpandedCss(e,t){const i=t.isExpandable(),o=1==t.expanded;e.forEachGui(void 0,e=>{const t=e.rowComp;t.toggleCss("ag-row-group",i),t.toggleCss("ag-row-group-expanded",i&&o),t.toggleCss("ag-row-group-contracted",i&&!o),(0,s._setAriaExpanded)(e.element,i&&o)})}dispatchStateUpdatedEvent(){this.eventSvc.dispatchEvent({type:"rowExpansionStateChanged"})}}t.BaseExpansionService=o},64449:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ClientSideExpansionService=void 0;const s=i(76624),o=i(12560);class r extends o.BaseExpansionService{constructor(){super(...arguments),this.beanName="expansionSvc",this.events=null,this.dispatchExpandedDebounced=null}destroy(){super.destroy(),this.events=null,this.dispatchExpandedDebounced=null}setExpansionState(e){const t=new Set(e.expandedRowGroupIds);this.beans.rowModel.forEachNode(e=>{const i=e.id;i&&(e.expanded=t.has(i))}),this.onGroupExpandedOrCollapsed()}getInternalExpansionState(e=!1){const t=[],i=[];return this.beans.rowModel.forEachNode(s=>{const o=s.id;o&&(s.expanded?t.push(o):e&&s.isExpandable()&&i.push(o))}),{expandedRowGroupIds:t,collapsedRowGroupIds:i}}getExpansionState(){return this.getInternalExpansionState()}expandAll(e){const{gos:t,rowModel:i,colModel:o,eventSvc:r}=this.beans,n=t.get("treeData"),a=o.isPivotActive(),l=t=>{if(t)for(const i of t){const t=()=>{i.expanded=e,l(i.childrenAfterGroup)};if(i.master){t();continue}if(n){(0,s._exists)(i.childrenAfterGroup)&&t();continue}if(a){!i.leafGroup&&t();continue}i.group&&t()}},d=i.rootNode;d&&l(d.childrenAfterGroup),this.onGroupExpandedOrCollapsed(),r.dispatchEvent({type:"expandOrCollapseAll",source:e?"expandAll":"collapseAll"})}onGroupExpandedOrCollapsed(){this.dispatchStateUpdatedEvent(),this.beans.rowModel.reMapRows()}setDetailsExpansionState(e){const t=this.getInternalExpansionState(!0),i=0===t.collapsedRowGroupIds.length;if(0===t.expandedRowGroupIds.length!==i)return i?e.expandAll():e.collapseAll()}dispatchExpandedEvent(e,t){if((this.events??(this.events=[])).push(e),t)return void this.dispatchExpandedEvents();let i=this.dispatchExpandedDebounced;if(!i){if(!this.isAlive())return;i=this.debounce(()=>this.dispatchExpandedEvents()),this.dispatchExpandedDebounced=i}i()}dispatchExpandedEvents(){const{eventSvc:e,rowRenderer:t}=this.beans,i=this.events,s=i?.length;if(!s)return;this.events=null;const o=new Array(s);for(let t=0;twindow.setTimeout(e,0);let i=!1;return()=>{t.active?i||(i=!0,t.addDestroyTask(()=>{i=!1,e()})):window.setTimeout(e,0)}}}t.ClientSideExpansionService=r},257:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.FlattenStage=void 0;const s=i(76624),o=i(86432),r=i(19130);class n extends s.BeanStub{constructor(){super(...arguments),this.beanName="flattenStage",this.step="map",this.refreshProps=["groupHideParentOfSingleChild","groupRemoveSingleChildren","groupRemoveLowestSingleChildren","groupTotalRow","masterDetail"]}execute(){const{beans:e,gos:t}=this,i=[],s=e.rowModel.rootNode;if(!s)return i;const n=e.colModel.isPivotMode(),a=n&&s.leafGroup&&s.aggData,l=a?[s]:s.childrenAfterSort,d=(0,r._getFlattenDetails)(t);this.recursivelyAddToRowsToDisplay(d,l,i,n,0);const c=i.length>0,u=d.grandTotalRow;if(!a&&c&&u)if((0,o._createRowNodeFooter)(s,e),"pinnedBottom"===u||"pinnedTop"===u)this.beans.pinnedRowModel?.setGrandTotalPinned("pinnedBottom"===u?"bottom":"top");else{const e="top"===u;this.addRowNodeToRowsToDisplay(d,s.sibling,i,0,e)}return i}recursivelyAddToRowsToDisplay(e,t,i,s,n){if(!t?.length)return;const a=this.beans.masterDetailSvc;for(let l=0;lthis.onCsrmCellChange(e),batchEditingStopped:()=>this.flushGroupEdits()})}destroy(){this.stopDragging(!0),super.destroy()}isGroupingDrop(e){return!(!e.rowDragManaged||!e.sameGrid)&&(!!this.gos.get("refreshAfterGroupEdit")&&(!!this.beans.rowGroupColsSvc?.columns?.length&&!this.beans.colModel.isPivotMode()))}initDraggingGroups(e){const t=new Map,i=e=>{const s=e.childrenAfterGroup;if(s){if(t.has(e))return;const o=s.slice();t.set(e,o);for(const e of o)i(e)}};for(const t of e.rows)t.group&&i(t);this.draggingGroups=t}canSetParent(e){return!!e.sameGrid&&(!!this.beans.groupStage?.treeData||!(e.rowDragManaged&&!this.gos.get("refreshAfterGroupEdit"))&&!!this.beans.rowGroupColsSvc?.columns?.length)}canDropRow(e,t){if(this.beans.groupStage?.treeData)return!a(e,t.newParent);const{position:i,target:s,newParent:o,rootNode:r}=t,l=e.parent;if(e.group&&(n(e,s)||n(e,o)))return!1;if("inside"===i)return!0;if(o&&o!==l)return o!==r||l===r;const d=o??s?.parent??r;if(d!==l)return!1;const c=e.group?e.level:l.level??-1;let u=-1;return s?u=s.group?s.level:s.parent?.level??-1:d&&(u=d.level),!(c>=0&&u>=0&&u!==c)}fixRowsDrop(e,t,i,o){const r=!!this.beans.groupStage?.treeData;e.treeData=r;if(!(!!this.beans.rowGroupColsSvc?.columns?.length||this.gos.get("pivotMode"))&&!r)return;this.draggingGroups||!this.isGroupingDrop(e)||e.suppressMoveWhenRowDragging||this.initDraggingGroups(e);let n=e.target,a=null,l=!1;const d=e.rootNode,c=this.beans.rowModel,u=this.canStartGroup(n,r);this.updateDropTarget(e,i,u);const h=this.beans.pageBounds?.getLastRow?.()??c.getRowCount()-1;if(t&&(!n||o>=.5&&n.rowIndex===h?a=d:e.moved&&n&&this.dropGroupThrottled&&this.shouldDropTargetBeParent(e)&&(a=n),a||(a=n?.parent??d)),i||!n||!u||n.group&&n.expanded||this.startDropGroupDelay(n),a){if(n&&a===n&&a!==d){const e=a.expanded?(0,s._prevOrNextDisplayedRow)(c,1,n):null;e?.parent===a?(n=e,o=-.5):l=!0}if(n&&!l){let e=n;for(;e&&e!==d&&e!==a;)n=e,e=e.parent}}e.target=n,e.newParent=a,e.yDelta=o,e.inside=l}clearNewSameParent(e,t){const i=e.newParent;!i||t&&!l(e.rows,i)||(e.newParent=null)}updateDropTarget(e,t,i){const s=i?e.target:null;this.dropGroupTarget&&this.dropGroupTarget!==s&&this.resetDragGroup(),s?.childrenAfterSort?.length&&(t&&this.dropGroupThrottled&&!s.expanded&&s.isExpandable?.()&&s.setExpanded(!0,void 0,!0),this.canDropInTarget(s,e)&&(this.dropGroupThrottled=!0,this.dropGroupTarget=s))}canDropInTarget(e,t){if(e.expanded)return!0;if(!e.group)return!1;if("inside"===t.pointerPos)return!0;if(t.treeData)return!1;const i=t.rows,s=e.level;for(let t=0,o=i.length;t{this.dropGroupTimer=null,this.dropGroupThrottled=!0,this.beans.dragAndDrop?.nudge()},t)}resetDragGroup(){null!==this.dropGroupTimer&&(window.clearTimeout(this.dropGroupTimer),this.dropGroupTimer=null),this.dropGroupTarget=null,this.dropGroupThrottled=!1}stopDragging(e){e&&(this.draggingGroups=null),this.resetDragGroup()}shouldDropTargetBeParent({target:e,rows:t,pointerPos:i,treeData:s}){if(!e||"none"===i)return!1;if("inside"===i)return!0;if(!s&&e.group&&!e.expanded)return!0;if("above"===i)return!1;const o=this.beans.rowModel;let r,n=e.rowIndex+1;do{r=o.getRow(n++)}while(r?.footer);const a=this.draggingGroups?.get(e)??e.childrenAfterGroup;if(r&&r.parent===e&&a?.length){const e=new Set(t);for(let t=0,i=a.length;t{c.has(e)||(c.add(e),g??(g=this.newGroupValues(n)),this.setRowGroup(e,g)&&h.add(e))},m=e=>{const t=this.draggingGroups?.get(e)??e.childrenAfterGroup,i=t?.length;if(i)for(let e=0;e=0?p(i):m(i)}};for(const t of e.rows)if(t.group)m(t);else{const e=t.sourceRowIndex>=0&&!t.destroyed?t:this.csrmFirstLeaf(t);e&&p(e)}const f="inside"===i?"above":i,C="inside"===i?this.findFirstLeafForParent(n,c)??o:o;let v=!1;if(c.size&&"none"!==f&&(v=(0,s._csrmReorderAllLeafs)(r._leafs,c,C,"above"===f)),!h.size&&!v)return!1;u.reordered=v;for(const e of c)u.updates.add(e);return this.csrmRefresh(u),d?d.focusCell():a.clearFocusedCell(),!0}canStartGroup(e,t){return!(!e||e.level<0||e.footer||e.detail)&&(!!e.group||t)}flushGroupEdits(){const e=this.pendingEditRefresh;e&&(this.pendingEditRefresh=null,this.csrmRefresh(e))}csrmRefresh(e){const t=this.beans.rowModel,i=t.rootNode;i&&t.refreshModel({step:"group",keepRenderedRows:!0,animate:!this.gos.get("suppressAnimationFrame"),changedPath:new s.ChangedPath(!1,i),changedRowNodes:e})}newGroupValues(e){const t=this.beans.rowGroupColsSvc?.columns??[],i=new Array(t.length);let s=-1,o=e;for(;o&&o.level>=0;){const e=t[o.level];if(e){const t=e.getColId(),r=o.level;i[r]=o.groupData?.[t]??o.key??void 0,r>s&&(s=r)}o=o.parent}return{values:i,columns:t,maxLevel:s}}setRowGroup(e,{values:t,columns:i,maxLevel:s}){if(s<0)return!1;const{valueSvc:o}=this.beans;let r=!1;for(let n=0;ns)continue;const l=t[n],d=o.getValue(a,e,"data");if(d===l||null==d&&null==l)continue;let c=l;const u=o.parseValue(a,e,l,d);void 0!==u&&(c=u);e.setDataValue(a,c,"rowDrag")&&(r=!0)}return r}onCsrmCellChange(e){const{column:t,node:i,source:s}=e;if(!this.gos.get("refreshAfterGroupEdit"))return;if("rowDrag"===s)return;if(!t?.isRowGroupActive())return;if(i.group||!i.data)return;const o=this.beans.editSvc;if(o?.isBatchEditing()){let e=this.pendingEditRefresh;e||(e=r(),this.pendingEditRefresh=e),e.updates.add(i)}else{const e=r();e.updates.add(i),this.csrmRefresh(e)}}csrmFirstLeaf(e){if(!e)return null;const t=this.draggingGroups;let i=t?.get(e)??e.childrenAfterGroup;for(;i?.length;){const e=i[0];if(e.sourceRowIndex>=0)return e.destroyed?this.firstAliveChildLeaf(e):e;i=t?.get(e)??e.childrenAfterGroup}return(0,s._csrmFirstLeaf)(e)}firstAliveChildLeaf(e){const t=this.draggingGroups?.get(e)??e.childrenAfterGroup;if(t)for(const e of t)if(e.sourceRowIndex>=0&&!e.destroyed)return e;return null}findFirstLeafForParent(e,t){if(!e)return null;const i=this.draggingGroups?.get(e)??e?.childrenAfterGroup;if(!i)return null;for(let e=0,s=i.length;e=0&&!t.has(s))return s;const o=this.findFirstLeafForParent(s,t);if(null!==o)return o}return null}}t.GroupEditService=o;const r=()=>{const e=new s._ChangedRowNodes;return e.reordered=!0,e},n=(e,t)=>{if(!e||!t)return!1;let i=t;for(;i;){if(i===e)return!0;i=i.parent}return!1},a=(e,t)=>{if(!t||e.parent===t)return!1;let i=t;const s=e.id;for(;i;){if(i===e)return!0;if(null!=s&&i.id===s)return!0;i=i.parent}return!1},l=(e,t)=>{for(let i=0,s=e.length;ithis.strategy?.onShowRowGroupColsSetChanged()})}invalidateGroupCols(){this.strategy?.invalidateGroupCols?.()}destroy(){this.strategy=this.destroyBean(this.strategy),super.destroy()}getNonLeaf(e){return this.strategy?.nonLeafsById?.get(e)}getNestedDataGetter(){return this.getStrategy()?.nestedDataGetter}onPropChange(e){const t=this.gos,i=this.strategy?.nestedDataGetter;if(e.has("treeData")){const e=t.get("treeData")&&this.hasTreeData;this.treeData!==e&&(this.beans.rowDragSvc?.cancelRowDrag(),this.treeData=e,this.needReset=!0,this.strategy=this.destroyBean(this.strategy))}return this.strategy?.onPropChange?.(e),this.getNestedDataGetter()!==i}extractData(){const e=this.beans.rowModel.rootNode,t=this.nested?e?.childrenAfterGroup:e?._leafs;if(!t)return this.gos.get("rowData")??[];const i=t.length,s=new Array(i);let o=0;for(let e=0;e{const t=e.sibling;if(!t)return null;const i=t._leafs;return void 0!==i?i:n(t)},n=e=>{const t=e.childrenAfterGroup,i=t?.length;if(e._leafs=null,!i)return null;let s;const o=1===i?t[0]:null;if(o?.group&&o.sourceRowIndex<0)s=o._leafs,void 0===s&&(s=n(o));else if(e.leafGroup)s=t;else{s=[];for(let e=0;e=0&&s.push(i),!i.group)continue;let o=i._leafs;if(void 0===o&&(o=n(i)),o)for(let e=0,t=o.length;e{const i=e._leafs,s=e.sibling;e.treeNodeFlags=0,e.childrenAfterGroup=i,e.childrenMapped=null,e._groupData=void 0,s&&(s.childrenAfterGroup=e.childrenAfterGroup,s.childrenAfterAggFilter=e.childrenAfterAggFilter,s.childrenAfterFilter=e.childrenAfterFilter,s.childrenAfterSort=e.childrenAfterSort,s.childrenMapped=null,s._groupData=void 0);for(let s=0,o=i.length??0;s{e.key=null,e.treeNodeFlags=0,e.allChildrenCount=null,e.childrenAfterGroup=null,e.childrenAfterAggFilter=null,e.childrenAfterFilter=null,e.childrenAfterSort=null,e.childrenMapped=null,e.level=0,e._groupData=void 0}},11982:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.GroupCellRenderer=void 0;const s=i(76624),o=i(75471),r={tag:"span",cls:"ag-cell-wrapper",children:[{tag:"span",ref:"eExpanded",cls:"ag-group-expanded ag-hidden"},{tag:"span",ref:"eContracted",cls:"ag-group-contracted ag-hidden"},{tag:"span",ref:"eCheckbox",cls:"ag-group-checkbox ag-invisible"},{tag:"span",ref:"eValue",cls:"ag-group-value"},{tag:"span",ref:"eChildCount",cls:"ag-group-child-count"}]};class n extends s.Component{constructor(){super(r),this.eExpanded=s.RefPlaceholder,this.eContracted=s.RefPlaceholder,this.eCheckbox=s.RefPlaceholder,this.eValue=s.RefPlaceholder,this.eChildCount=s.RefPlaceholder}init(e){const t={setInnerRenderer:(e,t)=>this.setRenderDetails(e,t),setChildCount:e=>this.eChildCount.textContent=e,toggleCss:(e,t)=>this.toggleCss(e,t),setContractedDisplayed:e=>(0,s._setDisplayed)(this.eContracted,e),setExpandedDisplayed:e=>(0,s._setDisplayed)(this.eExpanded,e),setCheckboxVisible:e=>this.eCheckbox.classList.toggle("ag-invisible",!e),setCheckboxSpacing:e=>this.eCheckbox.classList.toggle("ag-group-checkbox-spacing",e)},i=this.createManagedBean(new o.GroupCellRendererCtrl),r=!e.colDef,n=this.getGui();i.init(t,n,this.eCheckbox,this.eExpanded,this.eContracted,this.constructor,e),r&&(0,s._setAriaRole)(n,i.getCellAriaRole())}setRenderDetails(e,t){e?e.newAgStackInstance().then(e=>{if(!e)return;const t=()=>this.destroyBean(e);this.isAlive()?(this.eValue.appendChild(e.getGui()),this.addDestroyFunc(t)):t()}):this.eValue.innerText=t}destroy(){this.destroyBean(this.innerCellRenderer),super.destroy()}refresh(){return!1}}t.GroupCellRenderer=n},75471:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.GroupCellRendererCtrl=void 0;const s=i(76624),o=i(76897);class r extends s.BeanStub{constructor(){super(...arguments),this.indentClass=null}init(e,t,i,s,o,r,n){this.params=n,this.eGui=t,this.eCheckbox=i,this.eExpanded=s,this.eContracted=o,this.comp=e,this.compClass=r;const{node:a,column:l}=n;this.node=a,this.displayedNode=a;this.isEmbeddedRowMismatch()||(a.footer?this.initFooterCell():l?(this.displayedNode=this.beans.showRowGroupColValueSvc?.getDisplayedNode(a,l)??this.node,this.setupExpand(),this.setupCheckbox(),this.addGroupValue(),this.setupIndent()):this.initFullWidthCell())}initFooterCell(){const{node:e}=this.params;this.addGroupValue(),this.setupIndent();-1===e.level||this.comp.toggleCss("ag-row-group-leaf-indent",!0)}initFullWidthCell(){this.setupExpand(),(()=>{const{rowDragSvc:e}=this.beans;if(!this.params.rowDrag||!e)return;const t=e.createRowDragComp(()=>this.params.value,this.params.node);this.createManagedBean(t),this.eGui.insertAdjacentElement("afterbegin",t.getGui())})(),this.setupCheckbox(),this.addGroupValue(),this.setupIndent()}getCellAriaRole(){const e=this.params.colDef?.cellAriaRole,t=this.params.column?.getColDef().cellAriaRole;return e||t||"gridcell"}isEmbeddedRowMismatch(){if(!this.params.fullWidth||!this.gos.get("embedFullWidthRows"))return!1;const{visibleCols:e}=this.beans,t="left"===this.params.pinned,i="right"===this.params.pinned,s=!t&&!i;return this.gos.get("enableRtl")?e.isPinningLeft()?!i:!s:e.isPinningLeft()?!t:!s}addGroupValue(){const{params:{value:e,valueFormatted:t}}=this,i=this.getInnerCompDetails();this.comp.setInnerRenderer(i,t??e??null)}setupExpand(){const{colModel:e}=this.beans,{eGridCell:t,column:i,suppressDoubleClickExpand:o}=this.params,r=(e,t)=>{const i=(0,s._createIconNoSpan)(e,this.beans,null);i&&(t.appendChild(i),this.addDestroyFunc(()=>i.remove()))};r("groupExpanded",this.eExpanded),r("groupContracted",this.eContracted);const n=this.comp,a=()=>{if(!this.isExpandable())return;const e=this.displayedNode.expanded;n.setExpandedDisplayed(e),n.setContractedDisplayed(!e),(0,s._setAriaExpanded)(t,!!this.displayedNode.expanded)},l=()=>{const i=this.isExpandable();n.toggleCss("ag-cell-expandable",i),n.toggleCss("ag-row-group",i);const o=!i&&e.isPivotMode();n.toggleCss("ag-pivot-leaf-group",o);const r=!(e.isPivotMode()||this.displayedNode.footer&&-1===this.displayedNode.level);n.toggleCss("ag-row-group-leaf-indent",!i&&r);const l=this.getChildCount(),d=l>0?`(${l})`:"";n.setChildCount(d),i?a():(n.setExpandedDisplayed(!1),n.setContractedDisplayed(!1),(0,s._removeAriaExpanded)(t))};(()=>{i?.isCellEditable(this.displayedNode)&&this.gos.get("enableGroupEdit")||o||this.addManagedListeners(t,{dblclick:this.onCellDblClicked.bind(this)}),this.addManagedListeners(this.eExpanded,{click:this.onExpandClicked.bind(this)}),this.addManagedListeners(this.eContracted,{click:this.onExpandClicked.bind(this)}),this.addManagedListeners(t,{keydown:this.onKeyDown.bind(this)}),this.addManagedListeners(this.displayedNode,{allChildrenCountChanged:l,masterChanged:l,groupChanged:l,hasChildrenChanged:l,expandedChanged:a})})(),l()}getInnerCompDetails(){const{userCompFactory:e,findSvc:t}=this.beans,i=this.params;if(i.fullWidth){const o=this.gos.get("groupRowRendererParams"),r=(0,s._getInnerCellRendererDetails)(e,o,i);return r||(t?.isMatch(i.node,null)?(0,s._getInnerCellRendererDetails)(e,{...o,innerRenderer:"agFindCellRenderer"},i):void 0)}const o=e=>e&&e.componentClass==this.compClass,r=(0,s._getInnerCellRendererDetails)(e,i,i);if(r&&!o(r))return r;const{displayedNode:{rowGroupColumn:n}}=this,a=n?.colDef,l=n&&i.column?.isRowGroupDisplayed(n.getId());if(a&&l){const t=(0,s._getCellRendererDetails)(e,a,i);if(t){if(!o(t))return t;if(a?.cellRendererParams?.innerRenderer)return(0,s._getInnerCellRendererDetails)(e,a.cellRendererParams,i)}}return t?.isMatch(i.node,i.column)?(0,s._getCellRendererDetails)(e,{...a??i.colDef,cellRenderer:"agFindCellRenderer"},i):void 0}getChildCount(){const{column:e,suppressCount:t}=this.params;if(t)return 0;const{allChildrenCount:i,rowGroupColumn:s}=this.displayedNode;if(!((i??0)>0&&(!s||!e||e?.isRowGroupDisplayed(s.getId()))))return 0;return this.gos.get("showOpenedGroup")&&this.displayedNode!==this.node&&!(0,o._isHiddenParent)(this.node,this.displayedNode,this.gos)?0:i??0}isExpandable(){const{node:e,column:t,colDef:i}=this.params;if(!this.displayedNode.isExpandable())return!1;if(e.rowPinned)return!1;if(!t)return!0;if(e.hasChildren()&&i){const{showRowGroup:e}=i;if(!e)return!1;if(!0===e)return!0}if(e===this.displayedNode){if(e.rowGroupColumn){const i=t?.isRowGroupDisplayed(e.rowGroupColumn.getId());if(i)return!0}return!!e.master&&(!0===i?.showRowGroup||null==i?.showRowGroup)}return(0,o._isHiddenParent)(this.node,this.displayedNode,this.gos)}setupIndent(){const{suppressPadding:e,node:t,colDef:i}=this.params;if(e)return;const s=()=>{let e=t.uiLevel;i&&!0!==i.showRowGroup&&(e=0);const s="ag-row-group-indent-"+e;s!==this.indentClass&&(this.indentClass&&this.comp.toggleCss(this.indentClass,!1),this.indentClass=s,this.comp.toggleCss(s,!0),this.eGui.style.setProperty("--ag-indentation-level",String(e)))};this.addManagedListeners(t,{uiLevelChanged:s.bind(this)}),s()}setupCheckbox(){const{node:e}=this.params;!e.footer&&!e.rowPinned&&!e.detail&&(this.addManagedPropertyListener("rowSelection",({currentValue:e,previousValue:t})=>{const i="object"==typeof e?e:void 0,s="object"==typeof t?t:void 0;i?.checkboxLocation!==s?.checkboxLocation&&(this.destroyCheckbox(),this.addCheckbox())}),this.addCheckbox())}addCheckbox(){const{selectionSvc:e}=this.beans;if(!e||!(0,s._isRowSelection)(this.gos))return;const{node:t,column:i}=this.params,o=this.gos.get("rowSelection"),r=(0,s._getCheckboxLocation)(o);if("selectionColumn"===r)return;if("autoGroupColumn"===r){const e=null!=i?.getColDef().showRowGroup,s=!i&&t.group;if(!(e||s))return}const n="object"==typeof o?(0,s._getCheckboxes)(o):this.params.checkbox;if(!("function"==typeof n||!0===n))return;if("string"==typeof i?.getColDef().showRowGroup&&!this.isExpandable())return void this.comp.setCheckboxSpacing(!0);const a=e.createCheckboxSelectionComponent();this.cbComp=a,this.createBean(a),a.init({rowNode:t,column:i,overrides:{isVisible:n,callbackParams:this.params,removeHidden:!0}}),this.eCheckbox.appendChild(a.getGui()),this.comp.setCheckboxVisible(!0)}destroyCheckbox(){this.comp.setCheckboxSpacing(!1),this.comp.setCheckboxVisible(!1),this.cbComp?.getGui().remove(),this.cbComp=this.destroyBean(this.cbComp)}onExpandClicked(e){(0,s._isStopPropagationForAgGrid)(e)||((0,s._stopPropagationForAgGrid)(e),this.onExpandOrContract(e))}onKeyDown(e){if(!(e.key===s.KeyCode.ENTER)||this.params.suppressEnterExpand)return;const t=this.params.column?.isCellEditable(this.params.node);t||this.onExpandOrContract(e)}onCellDblClicked(e){if((0,s._isStopPropagationForAgGrid)(e))return;(0,s._isElementInEventPath)(this.eExpanded,e)||(0,s._isElementInEventPath)(this.eContracted,e)||this.onExpandOrContract(e)}onExpandOrContract(e){if(!this.isExpandable())return;const t=this.displayedNode,i=!t.expanded;!i&&t.sticky&&this.beans.ctrlsSvc.getScrollFeature().setVerticalScrollPosition(t.rowTop-t.stickyRowTop),t.setExpanded(i,e)}destroy(){super.destroy(),this.destroyCheckbox()}}t.GroupCellRendererCtrl=r},88034:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.groupCellStylesCSS=void 0,t.groupCellStylesCSS=".ag-group-checkbox-spacing{width:var(--ag-icon-size)}:where(.ag-ltr) .ag-group-checkbox-spacing{margin-right:var(--ag-cell-widget-spacing)}:where(.ag-rtl) .ag-group-checkbox-spacing{margin-left:var(--ag-cell-widget-spacing)}"},16858:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.GroupEditModule=t.StickyRowModule=t.ClientSideRowModelHierarchyModule=t.GroupColumnModule=t.GroupCellRendererModule=void 0;const s=i(39206),o=i(57926),r=i(73227),n=i(24357),a=i(19586),l=i(35995),d=i(64449),c=i(257),u=i(54955),h=i(56022),g=i(11982),p=i(75471),m=i(88034),f=i(70005),C=i(64685),v=i(9617);t.GroupCellRendererModule={moduleName:"GroupCellRenderer",version:a.VERSION,userComponents:{agGroupRowRenderer:g.GroupCellRenderer,agGroupCellRenderer:g.GroupCellRenderer},dynamicBeans:{groupCellRendererCtrl:p.GroupCellRendererCtrl},icons:{groupContracted:"tree-closed",groupExpanded:"tree-open"},css:[m.groupCellStylesCSS],dependsOn:[s.EnterpriseCoreModule]},t.GroupColumnModule={moduleName:"GroupColumn",version:a.VERSION,beans:[l.AutoColService,C.ShowRowGroupColsService,f.ShowRowGroupColValueService,n.RowGroupColsSvc,r.PivotColsSvc,o.ValueColsSvc],dependsOn:[s.EnterpriseCoreModule,t.GroupCellRendererModule]},t.ClientSideRowModelHierarchyModule={moduleName:"ClientSideRowModelHierarchy",version:a.VERSION,rowModels:["clientSide"],beans:[h.GroupStage,c.FlattenStage,d.ClientSideExpansionService],dependsOn:[s.EnterpriseCoreModule]},t.StickyRowModule={moduleName:"StickyRow",version:a.VERSION,beans:[v.StickyRowService]},t.GroupEditModule={moduleName:"GroupEdit",version:a.VERSION,beans:[u.GroupEditService],dependsOn:[s.EnterpriseCoreModule,t.ClientSideRowModelHierarchyModule]}},76897:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t._getRowDefaultExpanded=t._isHiddenParent=void 0,t._isHiddenParent=function(e,t,i){let s=e;const o=s.level-t.level;if(o<=0)return!1;if(!i.get("groupHideOpenParents"))return!1;for(let e=0;e{const o=e.gos,r=s&&o.get("isGroupOpenByDefault");if(!r){const e=o.get("groupDefaultExpanded");return-1===e||ie.level)return null;const r=this.getDisplayedNode(e,t,!0);if(r)return{displayedNode:r,value:s.getValue(t,r,"data",i)}}const r=s.getValue(t,e,"data",i);if(null==r){const o=this.getDisplayedNode(e,t);if(o)return{displayedNode:o,value:s.getValue(t,o,"data",i)}}return{displayedNode:e,value:r}}formatAndPrefixGroupColValue(e,t,i=!1){const s=this.formatGroupColValue(e,t,i),{value:o,displayedNode:r}=e,n=this.beans.footerSvc;if(n?.doesCellShowTotalPrefix(r,t)){return n.applyTotalPrefix(o,s,r,t)}return r.footer&&-1===r.level?null:s}formatGroupColValue(e,t,i=!1){const s=this.beans.valueSvc,{displayedNode:o,value:r}=e,n=o.rowGroupColumn,a=o.group&&!t;if(n&&(a||t?.isRowGroupDisplayed(n.colId))){if(i&&!1===n.colDef.useValueFormatterForExport)return null;const e=s.formatValue(n,o,r);if(null==e&&""===o.key){return this.getLocaleTextFunc()("blanks","(Blanks)")}return e}return!t||o.group||i&&!1===t.colDef.useValueFormatterForExport?null:s.formatValue(t,o,r)}getDisplayedNode(e,t,i=!1){const s=this.gos,o=s.get("groupHideOpenParents"),r=s.get("showOpenedGroup")&&!i;if(!o&&!r)return;const n=t.colDef.showRowGroup;if(!0===n){if(e.group)return;return e.parent??void 0}let a=e;for(;a&&a.rowGroupColumn?.getId()!=n;){const e=a===a.parent?.getFirstChild();if(!r&&!e)return;a=a.parent}return a!==e?a??void 0:void 0}}t.ShowRowGroupColValueService=o},64685:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ShowRowGroupColsService=void 0;const s=i(76624);class o extends s.BeanStub{constructor(){super(...arguments),this.beanName="showRowGroupCols",this.columns=[],this.colsSet=new Set,this.colsMap=new Map}destroy(){super.destroy(),this.columns.length=0,this.colsSet.clear(),this.colsMap.clear()}refresh(){const{colModel:e,rowGroupColsSvc:t}=this.beans,i=this.columns,s=this.colsSet,o=this.colsMap;o.clear();const r=i.length;let n=0,a=!1;const l=e.getCols();for(let e=0,d=l.length;e=r||!s.has(d)),i[n++]=d}if(a||(a=n!==r),a){i.length=n,s.clear();for(let e=0;e{this.gridBodyCtrl=e.gridBodyCtrl}),this.resetStickyContainers()}setOffsetTop(e){this.extraTopHeight!==e&&(this.extraTopHeight=e,this.eventSvc.dispatchEvent({type:"stickyTopOffsetChanged",offset:e}))}setOffsetBottom(e){this.extraBottomHeight!==e&&(this.extraBottomHeight=e)}resetOffsets(){this.setOffsetBottom(0),this.setOffsetTop(0)}getLastPixelOfGroup(e){return this.isClientSide?function(e){if(e.isExpandable()||e.footer){if(e.footer&&0===e.rowIndex)return Number.MAX_SAFE_INTEGER;if(!e.sibling||1===Math.abs(e.sibling.rowIndex-e.rowIndex)){let t=e.footer?e.sibling:e;for(;t.isExpandable()&&t.expanded;)if(t.master&&t.detailNode)t=t.detailNode;else if(t.childrenAfterSort){if(0===t.childrenAfterSort.length)break;t=(0,s._last)(t.childrenAfterSort)}return t.rowTop+t.rowHeight}return e.footer?e.rowTop+e.rowHeight:e.sibling.rowTop+e.sibling.rowHeight}return Number.MAX_SAFE_INTEGER}(e):function(e){if(e.isExpandable()||e.footer){if(e.master&&e.detailNode)return e.detailNode.rowTop+e.detailNode.rowHeight;if(!e.sibling||1===Math.abs(e.sibling.rowIndex-e.rowIndex)){let t=e.childStore?.getStoreBounds();return e.footer&&(t=e.sibling.childStore?.getStoreBounds()),(t?.heightPx??0)+(t?.topPx??0)}return e.footer?e.rowTop+e.rowHeight:e.sibling.rowTop+e.sibling.rowHeight}return Number.MAX_SAFE_INTEGER}(e)}getFirstPixelOfGroup(e){return e.footer?e.sibling.rowTop+e.sibling.rowHeight-1:e.hasChildren()?e.rowTop-1:0}updateStickyRows(e){const t="top"===e;let i=0;if(!this.canRowsBeSticky())return this.refreshNodesAndContainerHeight(e,new Set,i);const s=new Set,{rowModel:o,rowRenderer:r,pinnedRowModel:n,pageBounds:a,rowContainerHeight:l}=this.beans,{pageFirstPixel:d,pageLastPixel:c}=a.getCurrentPagePixelRange(),u=t?r.firstVisibleVPixel-this.extraTopHeight:r.lastVisibleVPixel-this.extraTopHeight,h=l.divStretchOffset??0,g=d+h,p=c+h,m=e=>{if(s.add(e),t){const t=this.getLastPixelOfGroup(e),s=u+i+e.rowHeight;e.stickyRowTop=ts?i-(t-s):i}i=0,s.forEach(e=>{const t=e.stickyRowTop+e.rowHeight;i{if(!t.displayed)return!1;if(t.footer){if(!0===f)return!1;if("grand"===f&&-1===t.level)return!1;if("group"===f&&t.level>-1)return!1;const i=!!t.sibling.rowIndex&&t.sibling.rowIndex+1===t.rowIndex;if("bottom"===e&&i)return!1;if(-1===t.level&&n?.getGrandTotalPinned())return!1;return!s.has(t)}if(t.isExpandable()){if(!0===C)return!1;if("bottom"===e)return!1;return!s.has(t)&&t.expanded}return!1};for(let e=0;e<100;e++){let e=u+i;t||(e=u-i),t&&ep&&(e=p);const s=o.getRowIndexAtPixel(e),r=o.getRow(s);if(null==r)break;const n=this.getStickyAncestors(r).find(e=>(t?e.rowIndexs)&&v(e));if(n){m(n);continue}if(!(t?r.rowTope)||!v(r))break;m(r)}return t||s.forEach(e=>{e.stickyRowTop=i-(e.stickyRowTop+e.rowHeight)}),this.refreshNodesAndContainerHeight(e,s,i)}areFooterRowsStickySuppressed(){const e=this.gos.get("suppressStickyTotalRow");if(!0===e)return!0;const t="group"===e,i="grand"===e;return!(!t||!i)||(i?"grand":!!t&&"group")}canRowsBeSticky(){const e=(0,s._isGroupRowsSticky)(this.gos),t=this.areFooterRowsStickySuppressed(),i=this.gos.get("suppressGroupRowsSticky");return e&&(!t||!i)}getStickyAncestors(e){const t=[];let i=e.footer?e.sibling:e.parent;for(;i;)i.sibling&&t.push(i.sibling),t.push(i),i=i.parent;return t.reverse()}checkStickyRows(){const e=this.updateStickyRows("top"),t=this.updateStickyRows("bottom");return e||t}destroyStickyCtrls(){this.resetStickyContainers()}resetStickyContainers(){this.refreshNodesAndContainerHeight("top",new Set,0),this.refreshNodesAndContainerHeight("bottom",new Set,0)}refreshStickyNode(e){const t=new Set;if(this.stickyTopRowCtrls.some(t=>t.rowNode===e)){for(let i=0;i{a.has(e)||(e.sticky=!0,l.push(this.createRowCon(e,!1,!1)))});let d=!!l.length||n.length!==o.length;s?this.topContainerHeight!==i&&(this.topContainerHeight=i,this.gridBodyCtrl.setStickyTopHeight(i),d=!0):this.bottomContainerHeight!==i&&(this.bottomContainerHeight=i,this.gridBodyCtrl.setStickyBottomHeight(i),d=!0),this.destroyRowCtrls(r,!1);const c=[...n,...l];c.sort((e,t)=>t.rowNode.rowIndex-e.rowNode.rowIndex),s||c.reverse();for(const e of c)e.setRowTop(e.rowNode.stickyRowTop);const u=this.beans.pageBounds;let h=0;if(s){for(const e of t)e.rowIndexthis.topContainerHeight&&(h=this.topContainerHeight),this.setOffsetTop(h)}else{for(const e of t)e.rowIndex>u.getLastRow()&&(h+=e.rowHeight);h>this.bottomContainerHeight&&(h=this.bottomContainerHeight),this.setOffsetBottom(h)}return!!d&&(s?this.stickyTopRowCtrls=c:this.stickyBottomRowCtrls=c,!0)}ensureRowHeightsValid(){let e=!1;const t=t=>{const i=t.rowNode;if(i.rowHeightEstimated){const t=(0,s._getRowHeightForNode)(this.beans,i);i.setRowHeight(t.height),e=!0}};return this.stickyTopRowCtrls.forEach(t),this.stickyBottomRowCtrls.forEach(t),e}}t.StickyRowFeature=o},9617:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.StickyRowService=void 0;const s=i(76624),o=i(80080);class r extends s.BeanStub{constructor(){super(...arguments),this.beanName="stickyRowSvc"}createStickyRowFeature(e,t,i){const r=this.gos;if((0,s._isGroupRowsSticky)(r)&&(0,s._isClientSideRowModel)(r)||(0,s._isServerSideRowModel)(r))return e.createManagedBean(new o.StickyRowFeature(t,i))}}t.StickyRowService=r},98565:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.rowNumbersCSS=void 0,t.rowNumbersCSS='.ag-row-number-cell{background-color:var(--ag-header-background-color);border:none;color:var(--ag-header-text-color);font-family:var(--ag-header-font-family);font-size:var(--ag-header-font-size);font-weight:var(--ag-header-font-weight);overflow:hidden;-webkit-user-select:none;-moz-user-select:none;user-select:none;white-space:nowrap;width:100%}:where(.ag-ltr) .ag-row-number-cell{text-align:right}:where(.ag-rtl) .ag-row-number-cell{text-align:left}.ag-row-numbers-resizer{bottom:-2px;cursor:ns-resize;height:4px;position:absolute;width:100%}:where(.ag-ltr) .ag-row-numbers-resizer{left:0}:where(.ag-rtl) .ag-row-numbers-resizer{right:0}.ag-floating-bottom .ag-row-numbers-resizer{bottom:unset;top:-2px}:where(.ag-row-number-header.ag-row-number-selection-enabled){cursor:cell}.ag-row-number-range-highlight{background-color:var(--ag-range-header-highlight-color)}.ag-row-number-range-selected{background-color:var(--ag-row-numbers-selected-color)}:where(.ag-ltr){.ag-row-number-header,:where(.ag-cell.ag-row-number-cell):not(.ag-cell-last-left-pinned){border-right:var(--ag-pinned-column-border)}:where(.ag-cell.ag-row-number-cell.ag-row-number-selection-enabled){cursor:url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbDpzcGFjZT0icHJlc2VydmUiIHdpZHRoPSIxNiIgaGVpZ2h0PSIxNiIgc3R5bGU9ImZpbGwtcnVsZTpldmVub2RkO2NsaXAtcnVsZTpldmVub2RkO3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDtzdHJva2UtbWl0ZXJsaW1pdDoxLjUiPjxwYXRoIGQ9Ik0zLjQ0NSA4LjkxMVY3LjQwOUg5Ljc1VjYuMDE0bDIuNTM1IDIuMTQ2LTIuNTM1IDIuMTQ2VjguOTExeiIgc3R5bGU9InN0cm9rZTojZmZmO3N0cm9rZS13aWR0aDouNDFweCIgdHJhbnNmb3JtPSJtYXRyaXgoMS41Nzg0IDAgMCAxLjg2NDI5IC00LjQxMyAtNy4yMTIpIi8+PC9zdmc+"),auto}}:where(.ag-rtl){.ag-row-number-header,:where(.ag-cell.ag-row-number-cell):not(.ag-cell-first-right-pinned){border-left:var(--ag-pinned-column-border)}:where(.ag-cell.ag-row-number-cell.ag-row-number-selection-enabled){cursor:url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbDpzcGFjZT0icHJlc2VydmUiIHdpZHRoPSIxNiIgaGVpZ2h0PSIxNiIgc3R5bGU9ImZpbGwtcnVsZTpldmVub2RkO2NsaXAtcnVsZTpldmVub2RkO3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDtzdHJva2UtbWl0ZXJsaW1pdDoxLjUiPjxwYXRoIGQ9Ik01Ljk3OSA4LjkxMXYxLjM5NUwzLjQ0NSA4LjE2bDIuNTM0LTIuMTQ2djEuMzk1aDYuMzA2djEuNTAyeiIgc3R5bGU9InN0cm9rZTojZmZmO3N0cm9rZS13aWR0aDouNDFweCIgdHJhbnNmb3JtPSJtYXRyaXgoMS41Nzg0IDAgMCAxLjg2NDI5IC00LjQxMyAtNy4yMTIpIi8+PC9zdmc+"),auto}}'},20976:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.RowNumbersModule=void 0;const s=i(76624),o=i(39206),r=i(19586),n=i(98565),a=i(58950),l=i(58321);t.RowNumbersModule={moduleName:"RowNumbers",version:r.VERSION,beans:[l.RowNumbersService],dynamicBeans:{rowNumberRowResizer:a.AgRowNumbersRowResizer},dependsOn:[o.EnterpriseCoreModule,s.CellStyleModule,s._SharedDragAndDropModule],css:[n.rowNumbersCSS]}},36834:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.RowNumbersRowResizeFeature=t._isRowNumbersResizerEnabled=void 0;const s=i(76624);function o(e){const t=(0,s._isRowNumbers)(e);return!(!t||"object"!=typeof t||!t.enableRowResizer)}t._isRowNumbersResizerEnabled=o;t.RowNumbersRowResizeFeature=class{constructor(e,t){this.beans=e,this.cellCtrl=t}refreshRowResizer(){o(this.beans)&&this.isRowResizeSupported(this.cellCtrl.rowNode)?this.addResizerToCellComp():this.removeRowResizerFromCellComp()}isRowResizeSupported(e){const{pinnedRowModel:t,rowModel:i,visibleCols:o}=this.beans,r=!!i.onRowHeightChanged;return o.autoHeightCols.length?((0,s._warn)(276),!1):null!=e.rowPinned&&!t?.isManual()||r}addResizerToCellComp(){const{beans:e,cellCtrl:t}=this,{eGui:i}=t;let{rowResizer:s}=this;s?i.appendChild(s.getGui()):(s=e.registry.createDynamicBean("rowNumberRowResizer",!1,t),s&&(this.rowResizer=e.context.createBean(s),i.appendChild(s.getGui())))}removeRowResizerFromCellComp(){const{rowResizer:e,beans:{context:t}}=this;e&&((0,s._removeFromParent)(e.getGui()),this.rowResizer=t.destroyBean(e))}destroy(){this.removeRowResizerFromCellComp()}}},58950:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.AgRowNumbersRowResizer=void 0;const s=i(76624),o={tag:"div",cls:"ag-row-numbers-resizer"};class r extends s.Component{constructor(e){super(o),this.cellCtrl=e,this.initialYPosition=-1,this.dragging=!1}postConstruct(){const{beans:e,cellCtrl:t}=this,{dragSvc:i,environment:o}=e;this.defaultRowHeight=o.getDefaultRowHeight(),i.addDragSource({dragStartPixels:0,eElement:this.getGui(),onDragStart:this.onDragStart.bind(this),onDragging:this.onDragging.bind(this),onDragStop:this.onDragStop.bind(this),onDragCancel:this.onDragCancel.bind(this),includeTouch:!0,stopPropagationForTouch:!0});const r=t.getRowPosition();this.node=(0,s._getRowNode)(this.beans,r)}onDragStart(e){if(!this.node)return;const{beans:{ctrlsSvc:t,eventSvc:i}}=this;t.get("gridCtrl").setResizeCursor(s.Direction.Vertical),this.dragging=!0,this.initialHeight=this.node.rowHeight,i.dispatchEvent({type:"rowResizeStarted",node:this.node,event:e,rowHeight:this.initialHeight})}onDragging(e){let{clientY:t}=e;if("bottom"===this.cellCtrl.rowNode.rowPinned&&(t*=-1),-1===this.initialYPosition||!this.dragging)return void(this.initialYPosition=t);const{beans:i,initialHeight:s,initialYPosition:o,defaultRowHeight:r,node:n}=this;if(null==s)return;const a=n?.rowHeight,l=Math.max(s-(o-t),r);if(a===l)return;n?.setRowHeight(l);const{rowRenderer:d,rowModel:c,pinnedRowModel:u}=i,h=!!n?.rowPinned;h&&d.redraw({afterScroll:!0}),h&&!u?.isManual()||c.onRowHeightChanged({animate:!1})}onDragStop(e){this.beans.eventSvc.dispatchEvent({type:"rowResizeEnded",node:this.node,event:e,rowHeight:this.node?.rowHeight}),this.clearDragDetails(!0)}onDragCancel(){this.clearDragDetails(!0)}clearDragDetails(e){if(this.initialYPosition=-1,this.initialHeight=null,this.dragging=!1,e){this.beans.ctrlsSvc.get("gridCtrl").setResizeCursor(!1)}}destroy(){this.clearDragDetails(!1),this.node=void 0,super.destroy()}}t.AgRowNumbersRowResizer=r},58321:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.RowNumbersService=void 0;const s=i(76624),o=i(36834);class r extends s.BeanStub{constructor(){super(...arguments),this.beanName="rowNumbersSvc",this.isIntegratedWithSelection=!1,this.lastColumnResized=0}postConstruct(){const e=(0,s._debounce)(this,this.refreshCells.bind(this),10);this.addManagedEventListeners({columnResized:()=>{this.lastColumnResized=Date.now()},modelUpdated:t=>{e(!1,!t.keepRenderedRows)},rangeSelectionChanged:()=>this.refreshCells(!0),pinnedRowsChanged:()=>e(!1,!0)}),this.addManagedPropertyListeners(["rowNumbers","cellSelection"],e=>{this.updateColumns(e)}),this.refreshSelectionIntegration(),this.registerRangeSelectionExtension()}shouldSkipColumn(e){return(0,s._isRowNumbers)(this.beans)&&(0,s.isRowNumberCol)(e)}isAllColumnsSelectionCell(e){return(0,s._isRowNumbers)(this.beans)&&(0,s.isRowNumberCol)(e.column)}isAllColumnsRange(e,t){return!(!(0,s._isRowNumbers)(this.beans)||0===t.length)&&(e.columns.length===t.length&&t.every(t=>e.columns.includes(t)))}registerRangeSelectionExtension(){const e=this.beans.rangeSvc;e&&(e.registerRangeSelectionExtension(this),this.addDestroyFunc(()=>e.unregisterRangeSelectionExtension?.(this)))}addColumns(e){null!=this.columns&&(e.list=this.columns.list.concat(e.list),e.tree=this.columns.tree.concat(e.tree),(0,s._updateColsMap)(e))}createColumns(e,t){const i=()=>{(0,s._destroyColumnTree)(this.beans,this.columns?.tree),this.columns=null},{beans:o}=this;if(!(0,s._isRowNumbers)(o))return void i();const r=e.treeDepth,n=(this.columns?.treeDepth??-1)==r,a=this.generateRowNumberCols();if((0,s._areColIdsEqual)(a,this.columns?.list??[])&&n)return;i();const{colGroupSvc:l}=this.beans,d=l?.findDepth(e.tree)??0,c=l?.balanceTreeForAutoCols(a,d)??[];this.columns={list:a,tree:c,treeDepth:d,map:{}};t(e=>{if(!e)return null;const t=e.filter(e=>!(0,s.isRowNumberCol)(e));return[...a,...t]})}handleMouseDownOnCell(e,t){return!this.isIntegratedWithSelection||t.target.classList.contains("ag-row-numbers-resizer")?(this.beans.rangeSvc&&t.preventDefault(),t.stopImmediatePropagation(),!1):(t.shiftKey||(0,s._interpretAsRightClick)(this.beans,t)||this.focusFirstRenderedCellAtRowPosition(e),!0)}updateColumns(e){const t=(0,s._convertColumnEventSourceType)(e.source);this.refreshSelectionIntegration();for(const e of this.columns?.list??[]){const i=this.createRowNumbersColDef();e.setColDef(i,null,t),(0,s._applyColumnState)(this.beans,{state:[(0,s._getColumnStateFromColDef)(i,e.getColId())]},t)}}getColumn(){return this.columns?.list.find(s.isRowNumberCol)??null}getColumns(){return this.columns?.list??null}setupForHeader(e){const{column:t,eGridHeader:i}=e.params;(0,s.isRowNumberCol)(t)&&((0,s._setAriaLabel)(i,"Row Number"),this.addManagedElementListeners(i,{click:this.onHeaderClick.bind(this),keydown:this.onHeaderKeyDown.bind(this),focus:this.onHeaderFocus.bind(this)}))}createRowNumbersRowResizerFeature(e){if((0,o._isRowNumbersResizerEnabled)(this.beans))return new o.RowNumbersRowResizeFeature(this.beans,e)}refreshSelectionIntegration(){const{beans:e}=this,{gos:t,rangeSvc:i}=e,s=t.get("cellSelection");this.refreshRowNumberOverrides(),this.isIntegratedWithSelection=!!i&&!!s&&!this.isSuppressCellSelectionIntegration}refreshRowNumberOverrides(){const e=(0,s._isRowNumbers)(this.beans);if(this.rowNumberOverrides={},!e||"object"!=typeof e)return;e.suppressCellSelectionIntegration&&(this.isSuppressCellSelectionIntegration=!0);const t=["contextMenuItems","context","onCellClicked","onCellContextMenu","onCellDoubleClicked","headerTooltip","headerStyle","headerComponent","headerComponentParams","suppressHeaderKeyboardEvent","tooltipField","tooltipValueGetter","tooltipComponent","tooltipComponentParams","tooltipComponentSelector","valueGetter","valueFormatter","width","maxWidth","minWidth","resizable"];for(const i of t)null!=e[i]&&(this.rowNumberOverrides[i]=e[i])}onHeaderFocus(){this.beans.ariaAnnounce?.announceValue("Press Space to select all cells","ariaSelectAllCells")}onHeaderKeyDown(e){this.isIntegratedWithSelection&&e.key===s.KeyCode.SPACE&&this.handleFocusAllCellsFromHeader()}onHeaderClick(e){Date.now()-this.lastColumnResized<100||!this.isIntegratedWithSelection||this.getColumn()?.resizing||this.handleFocusAllCellsFromHeader()}handleFocusAllCellsFromHeader(){(0,s._selectAllCells)(this.beans),this.focusFirstRenderedCellAtRowPosition()}refreshCells(e,t){const i=this.getColumn();if(i){if(t){const e=this.beans.autoWidthCalc?.getPreferredWidthForElements([this.createDummyElement(i)],2);null!=e&&this.beans.colResize?.setColumnWidths([{key:i,newWidth:e}],!1,!0,"rowNumbersService")}this.beans.rowRenderer.refreshCells({columns:[i],force:e})}}createDummyElement(e){const t=(0,s._createElement)({tag:"div",cls:"ag-cell-value ag-cell"});let i=String(this.beans.rowModel.getRowCount()+1);if("function"==typeof this.rowNumberOverrides.valueFormatter){const t=(0,s._addGridCommonParams)(this.beans.gos,{data:void 0,value:i,node:null,column:e,colDef:e.colDef});i=this.rowNumberOverrides.valueFormatter(t)}return t.textContent=i,t}createRowNumbersColDef(){const{gos:e,contextMenuSvc:t}=this.beans,i=e.get("enableRtl");return{minWidth:60,width:60,resizable:!1,valueGetter:this.valueGetter.bind(this),contextMenuItems:this.isIntegratedWithSelection||!t?void 0:()=>[],...this.rowNumberOverrides,colId:s.ROW_NUMBERS_COLUMN_ID,chartDataType:"excluded",suppressHeaderMenuButton:!0,sortable:!1,suppressMovable:!0,lockPinned:!0,pinned:i?"right":"left",lockPosition:i?"right":"left",editable:!1,suppressFillHandle:!0,suppressAutoSize:!0,suppressSizeToFit:!0,suppressHeaderContextMenu:!0,suppressNavigable:!0,headerClass:this.getHeaderClass(),cellClass:this.getCellClass.bind(this),cellAriaRole:"rowheader"}}valueGetter(e){const t=e.node,i=this.beans.formula?.active,s=t?.pinnedSibling;if(t?.rowPinned&&s){const e=i?s.formulaRowIndex:s.rowIndex;return`${null==e?"-":e+1}`}return String(((i?t?.formulaRowIndex:t?.rowIndex)||0)+1)}getHeaderClass(){const e=["ag-row-number-header"];return this.isIntegratedWithSelection&&e.push("ag-row-number-selection-enabled"),e}getCellClass(e){const{beans:t}=this,{rangeSvc:i,gos:s}=t,{node:o}=e,r=["ag-row-number-cell"],n=s.get("cellSelection");if(!i||!n)return r;this.isIntegratedWithSelection&&r.push("ag-row-number-selection-enabled");const a=i.getCellRanges();if(!a.length)return r;const l=this.beans.visibleCols.allCols.length-1,d="object"==typeof n&&n.enableHeaderHighlight;for(const e of a)i.isRowInRange({rowIndex:o.rowIndex,rowPinned:o.rowPinned},e)&&(d&&r.push("ag-row-number-range-highlight"),e.columns.length===l&&r.push("ag-row-number-range-selected"));return r}generateRowNumberCols(){const{gos:e,beans:t}=this;if(!(0,s._isRowNumbers)(t))return[];const i=this.createRowNumbersColDef(),o=i.colId;e.validateColDef(i,o,!0);const r=new s.AgColumn(i,null,o,!1);return this.createBean(r),[r]}focusFirstRenderedCellAtRowPosition(e){const t=this.beans.editSvc;if(t?.isEditing()&&t.isRangeSelectionEnabledWhileEditing?.())return;if(!e&&!(e=(0,s._getFirstRow)(this.beans)))return;const{beans:i,gos:o}=this,{visibleCols:r,colViewport:n}=i,a=o.get("enableRtl")?r.rightCols:r.leftCols;let l;if(1==a.length){const t=(0,s._getRowNode)(i,e);if(!t)return;l=n.getColsWithinViewport(t)}else l=a;const d=l.find(e=>!(0,s.isRowNumberCol)(e));if(!d)return;const{rowPinned:c,rowIndex:u}=e;setTimeout(()=>{i.focusSvc.setFocusedCell({rowIndex:u,rowPinned:c,column:d,forceBrowserFocus:!0,preventScrollOnBrowserFocus:!0})})}destroy(){(0,s._destroyColumnTree)(this.beans,this.columns?.tree),this.rowNumberOverrides=null,super.destroy()}}t.RowNumbersService=r},11538:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.BlockUtils=void 0;const s=i(76624),o=i(86432);class r extends s.BeanStub{constructor(){super(...arguments),this.beanName="ssrmBlockUtils"}wireBeans(e){this.valueSvc=e.valueSvc,this.showRowGroupCols=e.showRowGroupCols,this.nodeManager=e.ssrmNodeManager,this.expansionSvc=e.expansionSvc,this.serverSideRowModel=e.rowModel,this.storeFactory=e.ssrmStoreFactory}createRowNode(e){const t=new s.RowNode(this.beans),i=null!=e.rowHeight?e.rowHeight:(0,s._getRowHeightAsNumber)(this.beans);return t.setRowHeight(i),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.rowGroupIndex=e.level),t}destroyRowNode(e,t=!1){e.childStore&&!t&&(this.destroyBean(e.childStore),e.childStore=null);const i=e.sibling;i&&!e.footer&&this.destroyRowNode(i,!1),e._destroy(!0),null!=e.id&&this.nodeManager.removeNode(e)}setTreeGroupInfo(e){e.updateHasChildren();const t=this.gos.get("getServerSideGroupKey"),i=e.hasChildren();i&&null!=t&&(e.key=t(e.data)),i||null==e.childStore||(this.destroyBean(e.childStore),e.childStore=null,e.master||(e.expanded=!1))}setRowGroupInfo(e){e.key=this.valueSvc.getValue(e.rowGroupColumn,e,"data"),null!==e.key&&void 0!==e.key||(0,s._doOnce)(()=>{(0,s._warn)(190,{rowGroupId:e.rowGroupColumn?.getId(),data:e.data})},"SSBlock-BadKey");if(this.gos.get("groupAllowUnbalanced")&&""===e.key){const t=this.serverSideRowModel.getParams();e.childStore=this.createBean(this.storeFactory.createStore(t,e))}(0,s._getGroupTotalRowCallback)(this.beans.gos)({node:e})&&((0,o._createRowNodeFooter)(e,this.beans),e.sibling&&(e.sibling.uiLevel=e.uiLevel+1))}setMasterDetailInfo(e){const t=this.gos.get("isRowMaster");e.master=null==t||t(e.data)}updateDataIntoRowNode(e,t){e.updateData(t),this.gos.get("treeData")?(this.setTreeGroupInfo(e),this.setChildCountIntoRowNode(e),this.updateRowFooter(e)):e.group?(this.setChildCountIntoRowNode(e),this.updateRowFooter(e)):this.gos.get("masterDetail")}updateRowFooter(e){if(!e.footer){if(e.group){if((0,s._getGroupTotalRowCallback)(this.beans.gos)({node:e})&&!e.sibling)return void(0,o._createRowNodeFooter)(e,this.beans)}e.sibling&&(0,o._destroyRowNodeFooter)(e)}}setDataIntoRowNode(e,t,i,o){e.stub=!1;const r=this.gos.get("treeData");e.setDataAndId(t,i);const n=e.group;!r&&n||!this.gos.get("masterDetail")||this.setMasterDetailInfo(e),r?this.setTreeGroupInfo(e):n&&this.setRowGroupInfo(e),(r||n)&&(this.setGroupDataIntoRowNode(e),this.setChildCountIntoRowNode(e)),(0,s._exists)(t)&&(e.setRowHeight((0,s._getRowHeightForNode)(this.beans,e,!1,o).height),e.sibling?.setRowHeight((0,s._getRowHeightForNode)(this.beans,e.sibling,!1,o).height))}setChildCountIntoRowNode(e){const t=this.gos.get("getChildCount");t&&e.setAllChildrenCount(t(e.data))}setGroupDataIntoRowNode(e){const t=e.key;e.groupValue=t,e.sibling&&(e.sibling.groupValue=t);const i=this.showRowGroupCols?.columns;if(!i)return;const s=this.gos.get("treeData");for(const o of i){let i=e._groupData;if(i||(i={},e._groupData=i),s)i[o.getColId()]=t;else if(o.isRowGroupDisplayed(e.rowGroupColumn.getId())){const t=this.valueSvc.getValue(e.rowGroupColumn,e,"data");i[o.getColId()]=t}}}clearDisplayIndex(e){e.clearRowTopAndRowIndex();e.hasChildren()&&!!e.childStore&&e.childStore?.clearDisplayIndexes();e.master&&e.detailNode&&e.detailNode?.clearRowTopAndRowIndex()}setDisplayIndex(e,t,i,s){const o=this.gos.get("groupAllowUnbalanced")&&e.group&&""===e.key;if(this.gos.get("groupHideOpenParents")&&e.group&&e.expanded||o?(e.setRowIndex(null),e.setRowTop(null)):(e.setRowIndex(t.value++),e.setRowTop(i.value),i.value+=e.rowHeight),e.setUiLevel(s),e.footer)return;e.master&&(e.expanded&&e.detailNode?(e.detailNode.setRowIndex(t.value++),e.detailNode.setRowTop(i.value),i.value+=e.detailNode.rowHeight):e.detailNode&&e.detailNode.clearRowTopAndRowIndex());if(e.hasChildren()&&!!e.childStore){const r=e.childStore;e.expanded||o?r.setDisplayIndexes(t,i,o?s:s+1):r.clearDisplayIndexes()}}extractRowBounds(e,t){const i=e=>({rowHeight:e.rowHeight,rowTop:e.rowTop});if(e.rowIndex===t)return i(e);if(e.hasChildren()&&e.expanded&&e.childStore){const i=e.childStore;if(i.isDisplayIndexInStore(t))return i.getRowBounds(t)}else if(e.master&&e.expanded&&e.detailNode&&e.detailNode.rowIndex===t)return i(e.detailNode)}isPixelInNodeRange(e,t){return!(!(0,s._exists)(e.rowTop)||!(0,s._exists)(e.rowHeight))&&(t>=e.rowTop&&t=0;)""===i.key?t.push("ag-Grid-MissingKey"):t.push(i.key),i=i.parent;if(t.length>0)return t.reverse().join("-")}checkOpenByDefault(e){const t=!!this.expansionSvc?.isNodeExpanded(e),i=e.expanded;!!i!==t?e.setExpanded(t):void 0===i&&(e.expanded=t)}}t.BlockUtils=r},88089:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ExpandListener=void 0;const s=i(76624);class o extends s.BeanStub{constructor(){super(...arguments),this.beanName="ssrmExpandListener"}postConstruct(){(0,s._isServerSideRowModel)(this.gos)&&this.addManagedEventListeners({rowExpansionStateChanged:this.onRowExpandStateChanged.bind(this)})}onRowExpandStateChanged(){const e=this.beans,t=e.expansionSvc;e.rowModel.forEachNode(e=>{t.updateExpandedState(e)}),this.eventSvc.dispatchEvent({type:"storeUpdated"})}}t.ExpandListener=o},91999:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.FilterListener=void 0;const s=i(76624);class o extends s.BeanStub{constructor(){super(...arguments),this.beanName="ssrmFilterListener"}wireBeans(e){this.serverSideRowModel=e.rowModel,this.filterManager=e.filterManager,this.listenerUtils=e.ssrmListenerUtils}postConstruct(){(0,s._isServerSideRowModel)(this.gos)&&this.addManagedEventListeners({advancedFilterEnabledChanged:()=>this.onFilterChanged(!0),filterChanged:()=>this.onFilterChanged()})}onFilterChanged(e){const t=this.serverSideRowModel.getParams();if(!t)return;const i=t.filterModel;let s,o;if(this.filterManager?.isAdvFilterEnabled()){s=this.filterManager.getAdvFilterModel();const t=e?Object.keys(i??{}):this.getAdvancedFilterColumns(i),r=this.getAdvancedFilterColumns(s);for(const e of t)r.add(e);o=Array.from(r)}else if(s=this.filterManager?.getFilterModel()??{},e){const e=this.getAdvancedFilterColumns(i);for(const t of Object.keys(s))e.add(t);o=Array.from(e)}else o=this.findChangedColumns(i,s);const r={valueColChanged:this.listenerUtils.isSortingWithValueColumn(o),secondaryColChanged:this.listenerUtils.isSortingWithSecondaryColumn(o),changedColumns:o};this.serverSideRowModel.refreshAfterFilter(s,r)}findChangedColumns(e,t){const i={};for(const t of Object.keys(e))i[t]=!0;for(const e of Object.keys(t))i[e]=!0;const o=[];for(const r of Object.keys(i)){!(0,s._jsonEquals)(e[r],t[r])&&o.push(r)}return o}getAdvancedFilterColumns(e){const t=new Set;if(!e)return t;const i=e=>{if("join"===e.filterType)for(const t of e.conditions)i(t);else t.add(e.colId)};return i(e),t}}t.FilterListener=o},65956:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ListenerUtils=void 0;const s=i(76624);class o extends s.BeanStub{constructor(){super(...arguments),this.beanName="ssrmListenerUtils"}wireBeans(e){this.pivotResultCols=e.pivotResultCols,this.valueColsSvc=e.valueColsSvc}isSortingWithValueColumn(e){const t=(this.valueColsSvc?.columns??[]).map(e=>e.getColId());for(let i=0;i-1)return!0;return!1}isSortingWithSecondaryColumn(e){const t=this.pivotResultCols?.getPivotResultCols();if(!t)return!1;const i=t.list.map(e=>e.getColId());for(let t=0;t-1)return!0;return!1}}t.ListenerUtils=o},76533:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SortListener=void 0;const s=i(76624);class o extends s.BeanStub{constructor(){super(...arguments),this.beanName="ssrmSortSvc"}wireBeans(e){this.sortSvc=e.sortSvc,this.serverSideRowModel=e.rowModel,this.listenerUtils=e.ssrmListenerUtils}postConstruct(){(0,s._isServerSideRowModel)(this.gos)&&this.addManagedEventListeners({sortChanged:this.onSortChanged.bind(this)})}onSortChanged(){const e=this.serverSideRowModel.getParams();if(!e)return;const t=this.sortSvc.getSortModel(),i=e.sortModel,s=this.findChangedColumnsInSort(t,i),o={valueColChanged:this.listenerUtils.isSortingWithValueColumn(s),secondaryColChanged:this.listenerUtils.isSortingWithSecondaryColumn(s),changedColumns:s};this.serverSideRowModel.refreshAfterSort(t,o)}findChangedColumnsInSort(e,t){let i=[];for(const s of[e,t])if(s){const e=s.map(e=>e.colId);i=i.concat(e)}return i.filter(i=>{const s=t.find(e=>e.colId===i),o=e.find(e=>e.colId===i);return((e,t)=>(e?e.sort:null)!==(t?t.sort:null))(s,o)||((i,s)=>(i?t.indexOf(i):-1)!==(s?e.indexOf(s):-1))(s,o)})}}t.SortListener=o},89140:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.NodeManager=void 0;const s=i(76624);class o extends s.BeanStub{constructor(){super(...arguments),this.beanName="ssrmNodeManager",this.rowNodes=new Map}addRowNode(e){const t=e.id;this.rowNodes.has(t)&&(0,s._warn)(187,{rowId:t,firstData:this.rowNodes.get(t).data,secondData:e.data}),this.rowNodes.set(t,e)}removeNode(e){const t=e.id;this.rowNodes.delete(t)}destroy(){this.clear(),super.destroy()}clear(){this.rowNodes.clear(),super.destroy()}}t.NodeManager=o},88646:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ServerSideRowModel=void 0;const s=i(76624);class o extends s.BeanStub{constructor(){super(...arguments),this.beanName="rowModel",this.started=!1,this.managingPivotResultColumns=!1,this.onRowHeightChanged_debounced=(0,s._debounce)(this,this.onRowHeightChanged.bind(this),100)}wireBeans(e){this.colModel=e.colModel,this.colNames=e.colNames,this.pivotResultCols=e.pivotResultCols,this.rowGroupColsSvc=e.rowGroupColsSvc,this.pivotColsSvc=e.pivotColsSvc,this.valueColsSvc=e.valueColsSvc,this.filterManager=e.filterManager,this.sortSvc=e.sortSvc,this.rowRenderer=e.rowRenderer,this.nodeManager=e.ssrmNodeManager,this.storeFactory=e.ssrmStoreFactory,this.pivotColDefSvc=e.pivotColDefSvc}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","cacheBlockSize"],e),this.addManagedPropertyListeners(["groupAllowUnbalanced","groupTotalRow"],()=>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(){(0,s._isRowSelection)(this.gos)&&!this.gos.exists("getRowId")&&(0,s._warn)(188,{feature:"selection"})}setDatasource(e){this.started&&(this.destroyDatasource(),this.datasource=e,this.resetRootStore())}applyRowData(e,t,i){const s=this.getRootStore();if(!s)return;const o=s.getChildStore(i);o&&o.applyRowData(e,t,e.rowData.length)}isLastRowIndexKnown(){const e=this.getRootStore();return!!e&&e.isLastRowIndexKnown()}onColumnEverything(){if(!this.storeParams)return void this.resetRootStore();const e=this.columnsToValueObjects(this.rowGroupColsSvc?.columns),t=this.columnsToValueObjects(this.valueColsSvc?.columns),i=this.columnsToValueObjects(this.pivotColsSvc?.columns),o=e=>{const t={};for(const i of e.oldCols)t[i.id]=i;const i=e.newCols.every(e=>{const i=t[e.id];return i&&delete t[e.id],i&&i.field===e.field&&i.aggFunc===e.aggFunc}),s=!e.allowRemovedColumns&&!!Object.values(t).length;return i&&!s},r=!(0,s._jsonEquals)(this.storeParams.sortModel,this.sortSvc?.getSortModel()??[]),n=!o({oldCols:this.storeParams.rowGroupCols,newCols:e}),a=!o({oldCols:this.storeParams.pivotCols,newCols:i}),l=!!e?.length&&!o({oldCols:this.storeParams.valueCols,newCols:t,allowRemovedColumns:!0});if(r||n||a||l)this.resetRootStore();else{const e=this.createStoreParams();this.storeParams.rowGroupCols=e.rowGroupCols,this.storeParams.pivotCols=e.pivotCols,this.storeParams.valueCols=e.valueCols}}destroyRootStore(){this.rootNode?.childStore&&(this.rootNode.childStore=this.destroyBean(this.rootNode.childStore),this.nodeManager.clear())}refreshAfterSort(e,t){this.storeParams&&(this.storeParams.sortModel=e);const i=this.getRootStore();i&&(i.refreshAfterSort(t),this.onStoreUpdated())}generateSecondaryColumns(e){if(!this.pivotColDefSvc)return void this.gos.assertModuleRegistered("SharedPivot",2);const t=this.pivotColDefSvc.createColDefsFromFields(e);this.managingPivotResultColumns=!0,this.pivotResultCols?.setPivotResultCols(t,"rowModelUpdated")}resetRowHeights(){const e=this.resetRowHeightsForAllRowNodes(),t=(0,s._getRowHeightForNode)(this.beans,this.rootNode);if(this.rootNode.setRowHeight(t.height,t.estimated),this.rootNode.sibling){const e=(0,s._getRowHeightForNode)(this.beans,this.rootNode.sibling);this.rootNode.sibling.setRowHeight(e.height,e.estimated)}e&&this.onRowHeightChanged()}resetRowHeightsForAllRowNodes(){let e=!1;return this.forEachNode(t=>{const i=(0,s._getRowHeightForNode)(this.beans,t);t.setRowHeight(i.height,i.estimated);const o=t.detailNode;if(o){const e=(0,s._getRowHeightForNode)(this.beans,o);o.setRowHeight(e.height,e.estimated)}if(t.sibling){const e=(0,s._getRowHeightForNode)(this.beans,t.sibling);o?.setRowHeight(e.height,e.estimated)}e=!0}),e}resetRootStore(){this.destroyRootStore(),this.rootNode=new s.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.pivotResultCols?.setPivotResultCols(null,"api"),this.managingPivotResultColumns=!1),this.dispatchModelUpdated(!0)}columnsToValueObjects(e=[]){return e.map(e=>({id:e.getId(),aggFunc:e.getAggFunc(),displayName:this.colNames.getDisplayNameForColumn(e,"model"),field:e.getColDef().field}))}createStoreParams(){const e=this.columnsToValueObjects(this.rowGroupColsSvc?.columns),t=this.columnsToValueObjects(this.valueColsSvc?.columns),i=this.columnsToValueObjects(this.pivotColsSvc?.columns),o=(0,s._isGetRowHeightFunction)(this.gos);return{valueCols:t,rowGroupCols:e,pivotCols:i,pivotMode:this.colModel.isPivotMode(),filterModel:this.filterManager?.isAdvFilterEnabled()?this.filterManager?.getAdvFilterModel():this.filterManager?.getFilterModel()??{},sortModel:this.sortSvc?.getSortModel()??[],datasource:this.datasource,lastAccessedSequence:{value:0},dynamicRowHeight:o}}getParams(){return this.storeParams}dispatchModelUpdated(e=!1){this.eventSvc.dispatchEvent({type:"modelUpdated",animate:!e,keepRenderedRows:!e,newPage:!1,newData:!1})}onStoreUpdated(){this.updateRowIndexesAndBounds(),this.dispatchModelUpdated()}onRowHeightChanged(){this.updateRowIndexesAndBounds(),this.dispatchModelUpdated()}updateRowIndexesAndBounds(){const e=this.getRootStore();e&&e.setDisplayIndexes({value:0},{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)}refreshAfterFilter(e,t){this.storeParams&&(this.storeParams.filterModel=e);const i=this.getRootStore();i&&(i.refreshAfterFilter(t),this.onStoreUpdated())}getRootStore(){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();if(!t){return{rowTop:0,rowHeight:(0,s._getRowHeightAsNumber)(this.beans)}}return t.getRowBounds(e)}getBlockStates(){const e=this.getRootStore();if(!e)return;const t={};return e.forEachStoreDeep(e=>{const i=e.getBlockStates();for(const e of Object.keys(i))t[e]=i[e]}),t}getRowIndexAtPixel(e){const t=this.getRootStore();return e<=0||!t?0:t.getRowIndexAtPixel(e)}isEmpty(){return!1}getOverlayType(){const e=this.getRootStore();return 0===e?.getDisplayIndexEnd()?this.filterManager?.isAnyFilterPresent()?"noMatchingRows":"noRows":null}isRowsToRender(){return null!=this.getRootStore()&&this.getRowCount()>0}getType(){return"serverSide"}forEachNode(e){const t=this.getRootStore();t&&t.forEachNodeDeep(e)}forEachDisplayedNode(e){this.forEachNode((t,i)=>{!t.stub&&t.displayed&&e(t,i)})}forEachNodeAfterFilterAndSort(e,t=!1){const i=this.getRootStore();i&&i.forEachNodeDeepAfterFilterAndSort(e,void 0,t)}executeOnStore(e,t){if(!this.started)return!1;const i=this.getRootStore();if(!i)return!0;const s=i.getChildStore(e);return s&&t(s),!0}refreshStore(e={}){const t=e.route?e.route:[];this.executeOnStore(t,t=>t.refreshStore(1==e.purge))}getStoreState(){const e=[],t=this.getRootStore();return t&&t.addStoreStates(e),e}getNodesInRangeForSelection(e,t){const i=e.rowIndex,s=t.rowIndex;if(null===i&&null===s)return[];if(null===s)return e?[e]:[];if(null===i)return[t];const o=[],[r,n]=[i,s].sort((e,t)=>e-t);return this.forEachNode(e=>{const t=e.rowIndex;null==t||e.stub||t>=r&&t<=n&&o.push(e)}),o.length!==n-r+1?null:o}getRowNode(e){let t;return this.forEachNode(i=>{i.id===e&&(t=i),i.detailNode&&i.detailNode.id===e&&(t=i.detailNode)}),t}isRowPresent(e){return!!this.getRowNode(e.id)}setRowCount(e,t){const i=this.getRootStore();i&&i.setRowCount(e,t)}destroy(){this.destroyDatasource(),this.destroyRootStore(),super.destroy()}onRowHeightChangedDebounced(){this.onRowHeightChanged_debounced()}}t.ServerSideRowModel=o},25868:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.getServerSideGroupLevelState=t.refreshServerSide=t.flushServerSideAsyncTransactions=t.retryServerSideLoads=t.applyServerSideTransactionAsync=t.applyServerSideRowData=t.applyServerSideTransaction=t.setServerSideSelectionState=t.getServerSideSelectionState=void 0;const s=i(76624);t.getServerSideSelectionState=function(e){return e.selectionSvc?.getSelectionState()??null},t.setServerSideSelectionState=function(e,t){e.selectionSvc?.setSelectionState(t,"api")},t.applyServerSideTransaction=function(e,t){return e.ssrmTxnManager?.applyTransaction(t)},t.applyServerSideRowData=function(e,t){const i=t.startRow??0,o=t.route??[];i<0?(0,s._warn)(189,{startRow:i}):(0,s._getServerSideRowModel)(e)?.applyRowData(t.successParams,i,o)},t.applyServerSideTransactionAsync=function(e,t,i){return e.ssrmTxnManager?.applyTransactionAsync(t,i)},t.retryServerSideLoads=function(e){(0,s._getServerSideRowModel)(e)?.retryLoads()},t.flushServerSideAsyncTransactions=function(e){return e.ssrmTxnManager?.flushAsyncTransactions()},t.refreshServerSide=function(e,t){(0,s._getServerSideRowModel)(e)?.refreshStore(t)},t.getServerSideGroupLevelState=function(e){return(0,s._getServerSideRowModel)(e)?.getStoreState()??[]}},99074:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ServerSideRowModelApiModule=t.ServerSideRowModelModule=void 0;const s=i(76624),o=i(39206),r=i(57672),n=i(75470),a=i(59428),l=i(19586),d=i(11538),c=i(88089),u=i(91999),h=i(65956),g=i(76533),p=i(89140),m=i(88646),f=i(25868),C=i(62758),v=i(18299),w=i(93803),b=i(18865),y=i(92697),S=i(12234),x=i(57332);t.ServerSideRowModelModule={moduleName:"ServerSideRowModel",version:l.VERSION,rowModels:["serverSide"],beans:[m.ServerSideRowModel,c.ExpandListener,S.StoreUtils,d.BlockUtils,p.NodeManager,x.TransactionManager,u.FilterListener,y.StoreFactory,h.ListenerUtils,v.ServerSideSelectionService,b.LazyBlockLoadingService,w.SsrmRowChildrenService,C.ServerSideExpansionService,g.SortListener],dependsOn:[o.EnterpriseCoreModule,s._SortModule,s._SharedRowSelectionModule,n.SharedPivotModule,a.SharedTreeDataModule,r.LoadingCellRendererModule]},t.ServerSideRowModelApiModule={moduleName:"ServerSideRowModelApi",version:l.VERSION,apiFunctions:{getServerSideSelectionState:f.getServerSideSelectionState,setServerSideSelectionState:f.setServerSideSelectionState,applyServerSideTransaction:f.applyServerSideTransaction,applyServerSideTransactionAsync:f.applyServerSideTransactionAsync,applyServerSideRowData:f.applyServerSideRowData,retryServerSideLoads:f.retryServerSideLoads,flushServerSideAsyncTransactions:f.flushServerSideAsyncTransactions,refreshServerSide:f.refreshServerSide,getServerSideGroupLevelState:f.getServerSideGroupLevelState,resetRowHeights:s.resetRowHeights,onRowHeightChanged:s.onRowHeightChanged},dependsOn:[o.EnterpriseCoreModule,s._RowModelSharedApiModule,s._CsrmSsrmSharedApiModule,s._SsrmInfiniteSharedApiModule]}},94818:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ExpandStrategy=void 0;const s=i(76624);class o extends s.BeanStub{constructor(){super(...arguments),this.name="expand",this.expanded=new Set,this.collapsed=new Set,this.initialState=new Map}setExpandedState({expandedRowGroupIds:e,collapsedRowGroupIds:t}){this.expanded=new Set(e),this.collapsed=new Set(t);for(const e of this.expanded)this.initialState.set(e,!1);for(const e of this.collapsed)this.initialState.set(e,!0)}getExpandedState(){return{expandedRowGroupIds:Array.from(this.expanded),collapsedRowGroupIds:Array.from(this.collapsed)}}setRowExpanded(e,t){const i=e.id,s=this.initialState.get(i)===t;if(t)return this.collapsed.delete(i),void(s||this.expanded.add(i));this.expanded.delete(i),s||this.collapsed.add(i)}isRowExpanded(e){const t=e.id;if(this.expanded.has(t))return!0;if(this.collapsed.has(t))return!1;const i=this.initialState.get(t);if(null!=i)return i;const s=this.getInitialRowState(e);return this.initialState.set(t,s),s}getInitialRowState(e){if(!e.isExpandable())return!1;const t=this.gos.getCallback("isServerSideGroupOpenByDefault");if(!t)return!1;return t({data:e.data,rowNode:e})}isRowInitialised(e){return this.initialState.has(e)}expandAll(e){this.beans.rowModel.forEachNode(t=>{this.setRowExpanded(t,e)})}}t.ExpandStrategy=o},48416:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ExpandAllStrategy=void 0;const s=i(76624);class o extends s.BeanStub{constructor(){super(...arguments),this.name="expandAll",this.allExpanded=void 0,this.flipped=new Set}setExpandedState(e){this.allExpanded=e.expandAll,this.flipped=new Set(e.invertedRowGroupIds)}getExpandedState(){return{expandAll:this.allExpanded,invertedRowGroupIds:Array.from(this.flipped)}}setRowExpanded(e,t){const i=e.id;t!==this.allExpanded?this.flipped.add(i):this.flipped.delete(i)}isRowExpanded(e){const t=e.id;return this.allExpanded!==this.flipped.has(t)}isRowInitialised(){return!0}expandAll(e){this.allExpanded=e,this.flipped.clear()}}t.ExpandAllStrategy=o},72147:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.DefaultStrategy=void 0;const s=i(76624);class o extends s.BeanStub{constructor(e){super(),this.selectionCtx=e,this.selectedState={selectAll:!1,toggledNodes:new Set},this.selectAllUsed=!1,this.selectedNodes={}}getSelectedState(){return{selectAll:this.selectedState.selectAll,toggledNodes:[...this.selectedState.toggledNodes]}}setSelectedState(e){if("object"!=typeof e)return void(0,s._error)(116);if(!("selectAll"in e))return void(0,s._error)(116);if("boolean"!=typeof e.selectAll)return void(0,s._error)(117);if(!("toggledNodes"in e)||!Array.isArray(e.toggledNodes))return(0,s._warn)(197);const t={selectAll:e.selectAll,toggledNodes:new Set};e.toggledNodes.forEach(e=>{"string"==typeof e?t.toggledNodes.add(e):(0,s._warn)(196,{key:e})});const i=t.selectAll||t.toggledNodes.size>1;(0,s._isUsingNewRowSelectionAPI)(this.gos)&&!(0,s._isMultiRowSelection)(this.gos)&&i?(0,s._warn)(130):this.selectedState=t}deleteSelectionStateFromParent(e,t){if(0===this.selectedState.toggledNodes.size)return!1;let i=!1;for(const e of t)this.selectedState.toggledNodes.delete(e)&&(i=!0);return i}setNodesSelected(e){const{nodes:t,clearSelection:i,newValue:o,source:r}=e;if(0===t.length)return 0;const n=i&&o;if(!(0,s._isMultiRowSelection)(this.gos)||n){if(t.length>1)return(0,s._error)(130),0;const e=t[0],i=e.footer?e.sibling:e;return o&&i.selectable?(this.selectedNodes={[i.id]:i},this.selectedState={selectAll:!1,toggledNodes:new Set([i.id])}):(this.selectedNodes={},this.selectedState={selectAll:!1,toggledNodes:new Set}),1}const a=(e,t=o)=>{const i=e.footer?e.sibling:e;t&&i.selectable?this.selectedNodes[i.id]=i:delete this.selectedNodes[i.id];t===this.selectedState.selectAll||!i.selectable?this.selectedState.toggledNodes.delete(i.id):this.selectedState.toggledNodes.add(i.id)};for(const e of t)a(e);return 1===t.length&&"api"===r&&this.selectionCtx.setRoot(t[0].footer?t[0].sibling:t[0]),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(e=!1,t=!0){const{selectedState:{selectAll:i},selectedNodes:o,selectAllUsed:r}=this;return t&&r&&(0,s._warn)(199),e&&i?null:Object.values(o)}getSelectedRows(){return(this.getSelectedNodes()??[]).map(e=>e.data)}getSelectionCount(){return this.selectedState.selectAll?-1:this.selectedState.toggledNodes.size}isEmpty(){return!this.selectedState.selectAll&&!this.selectedState.toggledNodes?.size}selectAllRowNodes(){this.reset(!0)}deselectAllRowNodes(){this.reset(!1)}reset(e){this.selectedState={selectAll:e,toggledNodes:new Set},this.selectedNodes={},this.selectAllUsed||(this.selectAllUsed=e)}getSelectAllState(){return this.selectedState.selectAll?!(this.selectedState.toggledNodes.size>0)||null:this.selectedState.toggledNodes.size>0&&null}}t.DefaultStrategy=o},59149:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.GroupSelectsChildrenStrategy=void 0;const s=i(76624);class o extends s.BeanStub{wireBeans(e){this.rowModel=e.rowModel,this.rowGroupColsSvc=e.rowGroupColsSvc,this.filterManager=e.filterManager,this.selectionSvc=e.selectionSvc}constructor(e){super(),this.selectionCtx=e,this.selectedState={selectAllChildren:!1,toggledNodes:new Map}}postConstruct(){this.addManagedEventListeners({modelUpdated:()=>this.removeRedundantState(),columnRowGroupChanged:()=>this.selectionSvc.reset("rowGroupChanged")})}getSelectedState(){const{gos:e,rowGroupColsSvc:t,selectedState:i}=this,s=e.get("treeData"),o=(e,i,r)=>{const n={nodeId:r};if((s||t&&i<=t.columns.length)&&(n.selectAllChildren=e.selectAllChildren),e.toggledNodes.size){const t=[];e.toggledNodes.forEach((e,s)=>{const r=o(e,i+1,s);t.push(r)}),n.toggledNodes=t}return n};return o(i,0)}setSelectedState(e){if("selectAll"in e)return void(0,s._error)(111);const t=(e,i)=>{if("object"!=typeof e)throw(0,s._error)(243),new Error;if("selectAllChildren"in e&&"boolean"!=typeof e.selectAllChildren)throw(0,s._error)(244),new Error;if("toggledNodes"in e){if(!Array.isArray(e.toggledNodes))throw(0,s._error)(245),new Error;if(!e.toggledNodes.every(e=>"object"==typeof e&&"nodeId"in e&&"string"==typeof e.nodeId))throw(0,s._error)(246),new Error}const o=e.selectAllChildren??!i,r=e.toggledNodes?.map(e=>[e.nodeId,t(e,o)]),n=r?.some(([,e])=>o===e.selectAllChildren&&0===e.toggledNodes.size);if(n)throw(0,s._error)(247),new Error;return{selectAllChildren:o,toggledNodes:new Map(r)}};try{this.selectedState=t(e,!!e.selectAllChildren)}catch(e){}}deleteSelectionStateFromParent(e,t){let i=this.selectedState;const s=[...e];for(;i&&s.length;)i=i.toggledNodes.get(s.pop());if(!i)return!1;let o=!1;for(const e of t)i?.toggledNodes.delete(e)&&(o=!0);return o&&this.removeRedundantState(),o}setNodesSelected({nodes:e,newValue:t,clearSelection:i,source:o}){if(0===e.length)return 0;const r=i&&t;if(!(0,s._isMultiRowSelection)(this.gos)||r){if(e.length>1)return(0,s._error)(130),0;this.deselectAllRowNodes()}for(const i of e){const e=i.footer?i.sibling:i,s=this.getRouteToNode(e);this.recursivelySelectNode(s,this.selectedState,t)}return this.removeRedundantState(),1===e.length&&"api"===o&&this.selectionCtx.setRoot(e[0].footer?e[0].sibling:e[0]),1}isNodeSelected(e){const t=this.getRouteToNode(e);return this.isNodePathSelected(t,this.selectedState)}isNodePathSelected([e,...t],i){if(0===t.length){const t=i.toggledNodes.has(e.id);if(e.hasChildren()){const t=i.toggledNodes.get(e.id);if(t?.toggledNodes.size)return}return i.selectAllChildren?!t:t}if(i.toggledNodes.has(e.id)){const s=i.toggledNodes.get(e.id);if(s)return this.isNodePathSelected(t,s)}return i.selectAllChildren}getRouteToNode(e){const t=[];let i=e;for(;i.parent;)t.push(i),i=i.parent;return t.reverse()}removeRedundantState(){if(this.filterManager?.isAnyFilterPresent())return;const e=(t=this.selectedState,i,s)=>{if(t.toggledNodes.forEach((i,s)=>{e(i,s,t)}),i){const e=this.rowModel.getRowNode(i),s=e?.childStore,o=s?.isLastRowIndexKnown();if(o){if(t.toggledNodes.size>=s.getRowCount()){for(const e of t.toggledNodes.entries()){const[t,i]=e;if(i.toggledNodes.size>0)return;if(!this.rowModel.getRowNode(t))return}t.selectAllChildren=!t.selectAllChildren,t.toggledNodes.clear()}}}const o=0===t.toggledNodes.size,r=s?.selectAllChildren===t.selectAllChildren;o&&r&&s?.toggledNodes.delete(i)};e()}recursivelySelectNode([e,...t],i,s){if(!e)return;if(!t.length){const t=e.selectable;if(i.selectAllChildren===s||!t)return void i.toggledNodes.delete(e.id);const o={selectAllChildren:s,toggledNodes:new Map};return void i.toggledNodes.set(e.id,o)}const o=i.toggledNodes.has(e.id),r=i.toggledNodes.get(e.id)??{selectAllChildren:i.selectAllChildren,toggledNodes:new Map};o||i.toggledNodes.set(e.id,r),this.recursivelySelectNode(t,r,s),i.selectAllChildren===r.selectAllChildren&&0===r.toggledNodes.size&&i.toggledNodes.delete(e.id)}getSelectedNodes(e=!1){if((0,s._warn)(202),this.selectedState.selectAllChildren&&e)return null;const t=[];return this.rowModel.forEachNode(e=>{e.isSelected()&&t.push(e)}),t}processNewRow(){}getSelectedRows(){return this.getSelectedNodes()?.map(e=>e.data)??[]}getSelectionCount(){return-1}isEmpty(){return!this.selectedState.selectAllChildren&&!this.selectedState.toggledNodes?.size}selectAllRowNodes(){this.reset(!0)}deselectAllRowNodes(){this.reset(!1)}reset(e){this.selectedState={selectAllChildren:e,toggledNodes:new Map}}getSelectAllState(){return this.selectedState.selectAllChildren?!(this.selectedState.toggledNodes.size>0)||null:this.selectedState.toggledNodes.size>0&&null}}t.GroupSelectsChildrenStrategy=o},62758:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ServerSideExpansionService=void 0;const s=i(76624),o=i(12560),r=i(94818),n=i(48416);class a extends o.BaseExpansionService{constructor(){super(...arguments),this.beanName="expansionSvc"}wireBeans(e){this.serverSideRowModel=e.rowModel,this.storeFactory=e.ssrmStoreFactory}postConstruct(){const e=()=>{this.strategy=this.createManagedBean(new r.ExpandStrategy)};this.addManagedEventListeners({columnRowGroupChanged:e,columnPivotChanged:e,columnPivotModeChanged:e}),this.addManagedPropertyListener("ssrmExpandAllAffectsAllRows",e=>{e.currentValue||(this.strategy=this.createManagedBean(new r.ExpandStrategy),this.updateAllNodes(),this.dispatchStateUpdatedEvent())}),e()}setExpansionState(e){const t="expandAll"in e;t!==this.isExpandAllStrategy(this.strategy)&&(this.strategy=t?this.createManagedBean(new n.ExpandAllStrategy):this.createManagedBean(new r.ExpandStrategy)),this.strategy.setExpandedState(e),this.dispatchStateUpdatedEvent(),this.updateAllNodes()}getExpansionState(){return this.strategy.getExpandedState()}updateAllNodes(){this.serverSideRowModel.forEachNode(e=>{super.setExpanded(e,this.isNodeExpanded(e))})}isNodeExpanded(e){return this.strategy.isRowExpanded(e)}setExpanded(e,t,i,s){this.strategy.setRowExpanded(e,t),super.setExpanded(e,t,i),this.dispatchStateUpdatedEvent(),this.updateExpandedState(e)}expandAll(e){const t=this.beans.gos.get("ssrmExpandAllAffectsAllRows"),i=!this.isExpandAllStrategy(this.strategy)&&t;this.strategy=i?new n.ExpandAllStrategy:this.strategy,this.strategy.expandAll(e),this.updateAllNodes(),this.dispatchStateUpdatedEvent(),this.beans.eventSvc.dispatchEvent({type:"expandOrCollapseAll",source:e?"expandAll":"collapseAll"})}isExpandAllStrategy(e){return"expandAll"===e.name}onGroupExpandedOrCollapsed(){}setDetailsExpansionState(e){const{gos:t}=this.beans;if(!t.get("ssrmExpandAllAffectsAllRows"))return;const i=this.getExpansionState();if(void 0===i.expandAll)return;const s=i.expandAll&&0===i.invertedRowGroupIds.length;return(!i.expandAll&&0===i.invertedRowGroupIds.length)!==s?s?e.expandAll():e.collapseAll():void 0}dispatchExpandedEvent(e){this.eventSvc.dispatchEvent(e),this.beans.rowRenderer.refreshCells({rowNodes:[e.node]})}updateExpandedState(e){const t=e.childStore;if(e.expanded){if(e.master&&!e.detailNode&&(e.detailNode=this.createDetailNode(e)),!t&&e.hasChildren()){const t=this.serverSideRowModel.getParams();e.childStore=this.createBean(this.storeFactory.createStore(t,e))}}else t&&this.gos.get("purgeClosedRowNodes")&&(e.childStore=this.destroyBean(t))}createDetailNode(e){const t=new s.RowNode(this.beans);t.detail=!0,t.selectable=!1,t.parent=e,(0,s._exists)(e.id)&&(t.id="detail_"+e.id),t.data=e.data,t.level=e.level+1;const i=(0,s._getRowHeightForNode)(this.beans,t).height;return t.rowHeight=i||200,t}}t.ServerSideExpansionService=a},18299:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ServerSideSelectionService=void 0;const s=i(76624),o=i(72147),r=i(59149);class n extends s.BaseSelectionService{constructor(){super(...arguments),this.beanName="selectionSvc"}postConstruct(){super.postConstruct(),this.addManagedPropertyListeners(["groupSelectsChildren","rowSelection"],()=>{const e=(0,s._getGroupSelectsDescendants)(this.gos),t=e&&this.selectionStrategy instanceof o.DefaultStrategy?r.GroupSelectsChildrenStrategy:!e&&this.selectionStrategy instanceof r.GroupSelectsChildrenStrategy?o.DefaultStrategy:void 0;t&&(this.destroyBean(this.selectionStrategy),this.selectionStrategy=this.createManagedBean(new t(this.selectionCtx)),this.shotgunResetNodeSelectionState(),this.dispatchSelectionChanged("api"))}),this.addManagedPropertyListeners(["rowSelection"],()=>{const e=(0,s._getRowSelectionMode)(this.gos);e!==this.selectionMode&&(this.selectionMode=e,this.deselectAllRowNodes({source:"api"}))}),this.selectionMode=(0,s._getRowSelectionMode)(this.gos);const e=(0,s._getGroupSelectsDescendants)(this.gos)?r.GroupSelectsChildrenStrategy:o.DefaultStrategy;this.selectionStrategy=this.createManagedBean(new e(this.selectionCtx))}handleSelectionEvent(e,t,i){if(this.isRowSelectionBlocked(t))return 0;let s=0;const o=this.inferNodeSelections(t,e.shiftKey,e.metaKey||e.ctrlKey,i);return null==o?0:(this.selectionCtx.selectAll=!1,"select"in o?(o.reset?this.selectionStrategy.deselectAllRowNodes({source:"api"}):this.selectionStrategy.setNodesSelected({nodes:o.deselect,newValue:!1,source:i}),s=this.selectionStrategy.setNodesSelected({nodes:o.select,newValue:!0,source:i})):s=this.selectionStrategy.setNodesSelected({nodes:[o.node],newValue:o.newValue,clearSelection:o.clearSelection,event:e,source:i}),this.shotgunResetNodeSelectionState(i),this.dispatchSelectionChanged(i),s)}getSelectionState(){return this.selectionStrategy.getSelectedState()}setSelectionState(e,t){(0,s._isRowSelection)(this.gos)?Array.isArray(e)||(e?(this.selectionStrategy.setSelectedState(e),this.shotgunResetNodeSelectionState(),this.dispatchSelectionChanged(t)):this.deselectAllRowNodes({source:t})):e&&(0,s._warn)(132)}setNodesSelected(e){if(!(0,s._isRowSelection)(this.gos)&&e.newValue)return(0,s._warn)(132),0;const{nodes:t,...i}=e;if(t.length>1&&"multiRow"!==this.selectionMode)return(0,s._warn)(130),0;const o={nodes:t.filter(e=>e.selectable),...i};if(!o.nodes.length)return 0;const r=this.selectionStrategy.setNodesSelected(o);return this.shotgunResetNodeSelectionState(o.source),this.dispatchSelectionChanged(o.source),r}deleteSelectionStateFromParent(e,t){this.selectionStrategy.deleteSelectionStateFromParent(e,t)&&(this.shotgunResetNodeSelectionState(),this.dispatchSelectionChanged("api"))}shotgunResetNodeSelectionState(e){this.beans.rowModel.forEachNode(t=>{if(t.stub)return;const i=this.selectionStrategy.isNodeSelected(t);i!==t.isSelected()&&this.selectRowNode(t,i,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(0!=t&&!e.selectable)return this.selectionStrategy.setNodesSelected({nodes:[e],newValue:!1,source:"api"}),this.shotgunResetNodeSelectionState(),void this.dispatchSelectionChanged("api");e.__selected=t}reset(){this.selectionStrategy.deselectAllRowNodes({source:"api"}),this.selectionCtx.reset()}isEmpty(){return this.selectionStrategy.isEmpty()}hasNodesToSelect(){return!0}selectAllRowNodes(e){if((0,s._isRowSelection)(this.gos)){if(a(e),(0,s._isUsingNewRowSelectionAPI)(this.gos)&&!(0,s._isMultiRowSelection)(this.gos))return(0,s._warn)(130);this.selectionStrategy.selectAllRowNodes(e),this.selectionCtx.selectAll=!0,this.beans.rowModel.forEachNode(t=>{t.stub||this.selectRowNode(t,!0,void 0,e.source)}),this.dispatchSelectionChanged(e.source)}else(0,s._warn)(132)}deselectAllRowNodes(e){a(e),this.selectionStrategy.deselectAllRowNodes(e),this.selectionCtx.selectAll=!1,this.beans.rowModel.forEachNode(t=>{t.stub||this.selectRowNode(t,!1,void 0,e.source)}),this.dispatchSelectionChanged(e.source)}getSelectAllState(e){return this.selectionStrategy.getSelectAllState(e)}getBestCostNodeSelection(){return(0,s._warn)(194,{method:"getBestCostNodeSelection"})}updateSelectable(){if(!(0,s._isRowSelection)(this.gos))return;const e=[];this.beans.rowModel.forEachNode(t=>{!this.updateRowSelectable(t,!0)&&t.isSelected()&&e.push(t)}),e.length&&this.setNodesSelected({nodes:e,newValue:!1,source:"selectableChanged"})}dispatchSelectionChanged(e){this.eventSvc.dispatchEvent({type:"selectionChanged",source:e,selectedNodes:this.selectionStrategy instanceof r.GroupSelectsChildrenStrategy?null:this.selectionStrategy.getSelectedNodes(!0,!1),serverSideState:this.getSelectionState()})}updateSelectableAfterGrouping(){return(0,s._error)(194,{method:"updateSelectableAfterGrouping"})}refreshMasterNodeState(){}setDetailSelectionState(){}}function a({selectAll:e}){"filtered"!==e&&"currentPage"!==e||(0,s._warn)(195,{justCurrentPage:"currentPage"===e})}t.ServerSideSelectionService=n},93803:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SsrmRowChildrenService=void 0;const s=i(76624);class o extends s.BeanStub{constructor(){super(...arguments),this.beanName="rowChildrenSvc"}getHasChildrenValue(e){const t=this.gos.get("treeData"),i=this.gos.get("isServerSideGroup");return!e.stub&&!e.footer&&(t?!!i&&i(e.data):!!e.group)}}t.SsrmRowChildrenService=o},18865:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.LazyBlockLoadingService=void 0;const s=i(76624);class o extends s.BeanStub{constructor(){super(...arguments),this.beanName="lazyBlockLoadingSvc",this.outboundRequests=0,this.cacheLoadingNodesMap=new Map,this.isCheckQueued=!1,this.nextBlockToLoad=void 0}wireBeans(e){this.rowRenderer=e.rowRenderer,this.rowModel=e.rowModel}postConstruct(){this.maxOutboundRequests=(0,s._getMaxConcurrentDatasourceRequests)(this.gos)}subscribe(e){this.cacheLoadingNodesMap.set(e,new Set)}unsubscribe(e){this.cacheLoadingNodesMap.delete(e)}queueLoadCheck(){this.isCheckQueued||(this.isCheckQueued=!0,setTimeout(()=>{this.queueLoadAction(),this.isCheckQueued=!1}))}onLoadComplete(){this.outboundRequests-=1,this.queueLoadCheck()}hasAvailableLoadBandwidth(){return void 0===this.maxOutboundRequests||this.outboundRequests{i.isAlive()&&(this.loaderTimeout=void 0,this.attemptLoad(i,t,s),this.nextBlockToLoad=void 0)},this.gos.get("blockLoadDebounceMillis"))}}attemptLoad(e,t,i){this.hasAvailableLoadBandwidth()&&(this.executeLoad(e,t,i),this.queueLoadCheck())}executeLoad(e,t,i){const o=e.getSsrmParams(),r={startRow:t,endRow:i,rowGroupCols:o.rowGroupCols,valueCols:o.valueCols,pivotCols:o.pivotCols,pivotMode:o.pivotMode,groupKeys:e.store.getParentNode().getRoute()??[],filterModel:o.filterModel,sortModel:o.sortModel},n=this.cacheLoadingNodesMap.get(e),a=()=>{for(let e=0;e{this.onLoadComplete(),e.onLoadSuccess(t,i-t,s),a()},fail:()=>{this.onLoadComplete(),e.onLoadFailed(t,i-t),a()},parentNode:e.store.getParentNode()});(()=>{for(let e=0;e{if(null==n.rowIndex)return s=n,void(i=r);const a=r.getNodes().getBy("node",n);if(!a)return;const l=this.cacheLoadingNodesMap.get(r);if(l?.has(a.index))return;const d=Math.abs(e-n.rowIndex),c=Math.abs(n.rowIndex-t);dthis.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.lazyBlockLoadingSvc.queueLoadCheck(),t;if(this.gos.get("groupHideOpenParents")||this.gos.get("groupAllowUnbalanced")){const t=this.nodeMap.find(t=>!!t.node.childStore?.isDisplayIndexInStore(e));if(t)return t.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 t=this.nodeMap.getBy("node",i);return this.createStubNode(t.index+1,e)}const s=this.getSurroundingNodesByDisplayIndex(e);if(null==s){const t=this.store.getRowCount()-(this.store.getDisplayIndexEnd()-e);return this.createStubNode(t,e)}const{previousNode:o,nextNode:r}=s;if(o?.node.expanded&&o.node.childStore?.isDisplayIndexInStore(e))return o.node.childStore?.getRowUsingDisplayIndex(e);if(r){const t=r.node.rowIndex-e,i=r.index-t;return this.createStubNode(i,e)}const n=this.store.getRowCount()-(this.store.getDisplayIndexEnd()-e);return this.createStubNode(n,e)}createStubNode(e,t){const i=this.store.getRowBounds(t),s=this.createRowAtIndex(e,null,e=>{e.setRowIndex(t),e.setRowTop(i.rowTop),this.nodeDisplayIndexMap.set(t,e)});if(0===e&&this.gos.get("groupHideOpenParents")){const e=this.store.getParentNode().groupData;if(e)for(const t of Object.keys(e))(0,o.setRowNodeGroupValue)(s,this.colModel,t,e[t])}return this.lazyBlockLoadingSvc.queueLoadCheck(),s}getRowByStoreIndex(e){return this.nodeMap.getBy("index",e)?.node}skipDisplayIndexes(e,t,i){if(0===e)return;const o=(0,s._getRowHeightAsNumber)(this.beans);t.value+=e,i.value+=e*o}setDisplayIndexes(e,t,i){this.nodeDisplayIndexMap.clear();const s={};this.nodeMap.forEach(e=>{s[e.index]=e.node});let r=-1;for(const n of Object.keys(s)){const a=s[n],l=Number(n),d=l-1-r;this.skipDisplayIndexes(d,e,t);const c=0===l;if(a.firstChild!==c&&(a.firstChild=c,a.dispatchRowEvent("firstChildChanged")),c&&this.gos.get("groupHideOpenParents")){const e=this.store.getParentNode().groupData;if(e)for(const t of Object.keys(e))(0,o.setRowNodeGroupValue)(a,this.colModel,t,c?e[t]:void 0)}this.blockUtils.setDisplayIndex(a,e,t,i),null!=a.rowIndex&&this.nodeDisplayIndexMap.set(a.rowIndex,a),r=l}const n=this.numberOfRows-1-r;this.skipDisplayIndexes(n,e,t),this.purgeExcessRows()}getRowCount(){return this.numberOfRows}setRowCount(e,t){this.numberOfRows=e,null!=t&&(this.isLastRowKnown=t,!1===t&&(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,i;return this.nodeMap.forEach(s=>{e>s.node.rowIndex?(null==i||i.node.rowIndexs.node.rowIndex)&&(t=s)}),i||t?{previousNode:i,nextNode:t}:null}getDisplayIndexFromStoreIndex(e){const t=this.nodeMap.getBy("index",e);if(t)return t.node.rowIndex;let i,s;if(this.nodeMap.forEach(t=>{e>t.index?(null==s||s.indext.index)&&(i=t)}),!i)return this.store.getDisplayIndexEnd()-(this.numberOfRows-e);if(!s)return this.store.getDisplayIndexStart()+e;const o=e-s.index;return(s.node.childStore?.getDisplayIndexEnd()??s.node.rowIndex)+o}createRowAtIndex(e,t,i){const s=this.nodeMap.getBy("index",e);if(s){const{node:i}=s;if(i.__needsRefreshWhenVisible=!1,this.doesNodeMatch(t,i))return this.blockUtils.updateDataIntoRowNode(i,t),this.nodesToRefresh.delete(i),i;if(null==this.getRowIdFunc&&i.hasChildren()&&i.expanded)return this.nodesToRefresh.delete(i),i;this.destroyRowAtIndex(e)}if(t&&null!=this.getRowIdFunc){const i=this.getRowId(t),s=i&&this.removedNodeCache?.get(i);if(s)return this.removedNodeCache?.delete(i),this.blockUtils.updateDataIntoRowNode(s,t),this.nodeMap.set({id:s.id,node:s,index:e}),this.nodesToRefresh.delete(s),s.__needsRefreshWhenVisible=!1,s;const o=this.nodeMap.getBy("id",i);if(o){this.nodeMap.delete(o);const{node:i,index:s}=o;return this.blockUtils.updateDataIntoRowNode(i,t),this.nodeMap.set({id:i.id,node:i,index:e}),this.nodesToRefresh.delete(i),i.__needsRefreshWhenVisible=!1,this.getBlockStartIndex(s)===this.getBlockStartIndex(e)?i:(this.markBlockForVerify(s),i)}}const o=this.blockUtils.createRowNode(this.store.getRowDetails());if(null!=t){const e=this.getPrefixedId(this.store.getIdSequence().value++);this.blockUtils.setDataIntoRowNode(o,t,e,void 0),this.blockUtils.checkOpenByDefault(o),this.nodeManager.addRowNode(o)}return this.nodeMap.set({id:o.id,node:o,index:e}),i&&i(o),o}getBlockStates(){const e={},t={};this.nodeMap.forEach(({node:i,index:s})=>{const o=this.getBlockStartIndex(s);i.stub||i.failedLoad||(e[o]=(e[o]??0)+1);let r="loaded";i.failedLoad?r="failed":this.lazyBlockLoadingSvc.isRowLoading(this,o)?r="loading":(this.nodesToRefresh.has(i)||i.stub)&&(r="needsLoading"),t[o]||(t[o]=new Set),t[o].add(r)});const i={loading:4,failed:3,needsLoading:2,loaded:1},s=this.blockUtils.createNodeIdPrefix(this.store.getParentNode()),o={};for(const r of Object.keys(t)){const n=[...t[r]].sort((e,t)=>(i[e]??0)-(i[t]??0))[0],a=Number(r)/this.getBlockSize();o[s?`${s}-${a}`:String(a)]={blockNumber:a,startRow:Number(r),endRow:Number(r)+this.getBlockSize(),pageStatus:n,loadedRowCount:e[r]??0}}return o}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,i]=this.getBlockBounds(e);this.nodeMap.filter(e=>e.index>=t&&e.index{e.__needsRefreshWhenVisible=!0})}doesNodeMatch(e,t){if(t.stub)return!1;const i=this.getRowId(e);return null===i?t.data===e:t.id===i}purgeStubsOutsideOfViewport(){const{firstRenderedRow:e,lastRenderedRow:t}=this.rowRenderer,i=this.getBlockStartIndex(e),[,s]=this.getBlockBounds(t);this.nodeMap.forEach(e=>{this.lazyBlockLoadingSvc.isRowLoading(this,e.index)||e.node.failedLoad||e.node.stub&&(e.indexs)&&this.destroyRowAtIndex(e.index)})}getBlocksDistanceFromRow(e,t){const i={};return e.forEach(({node:e,index:s})=>{const[o,r]=this.getBlockBounds(s);if(o in i)return;const n=Math.abs(e.rowIndex-t);let a;const l=this.nodeMap.getBy("index",[r-1]);l&&(a=Math.abs(l.node.rowIndex-t));const d=null==a||n{const n=this.getBlockStartIndex(o);i.add(n);r.rowIndex>=e&&r.rowIndex<=t&&s.add(n)});const o=Math.max(s.size,this.storeParams.maxBlocksInCache??0),r=i.size-o;if(r<=0)return;let n=Number.MAX_SAFE_INTEGER,a=Number.MIN_SAFE_INTEGER;s.forEach(e=>{n>e&&(n=e),a{const i=this.getBlockStartIndex(t);return!(i>=n&&i<=a)&&!this.isNodeCached(e)});if(0===l.length)return;const d=e+(t-e)/2,c=this.getBlocksDistanceFromRow(l,d),u=this.getBlockSize();c.sort((e,t)=>Math.sign(t[1]-e[1]));for(let e=0;e{const s=this.getRowId(e);t.has(s)?i.add(s):t.add(s)}),[...i]}onLoadSuccess(e,t,i){if(!this.live)return;const o=i.groupLevelInfo;if(this.store.setStoreInfo(o),null!=this.getRowIdFunc){const o=this.extractDuplicateIds(i.rowData);if(o.length>0){const i=o.join(", ");return(0,s._warn)(205,{duplicateIdText:i}),void this.onLoadFailed(e,t)}}i.pivotResultFields&&this.serverSideRowModel.generateSecondaryColumns(i.pivotResultFields);const r=this.nodesToRefresh.size>0;if(i.rowData.forEach((t,i)=>{const s=e+i,o=this.nodeMap.getBy("index",s);if(!o?.node?.stub)return o&&this.doesNodeMatch(t,o.node)?(this.blockUtils.updateDataIntoRowNode(o.node,t),this.nodesToRefresh.delete(o.node),void(o.node.__needsRefreshWhenVisible=!1)):void this.createRowAtIndex(s,t);this.createRowAtIndex(s,t)}),null!=i.rowCount&&-1!==i.rowCount)this.numberOfRows=i.rowCount,this.isLastRowKnown=!0;else if(t>i.rowData.length)this.numberOfRows=e+i.rowData.length,this.isLastRowKnown=!0;else if(!this.isLastRowKnown){const t=e+i.rowData.length+1;t>this.numberOfRows&&(this.numberOfRows=t)}if(this.isLastRowKnown){this.nodeMap.filter(e=>e.index>=this.numberOfRows).forEach(e=>this.destroyRowAtIndex(e.index))}this.fireStoreUpdatedEvent();const n=0===this.nodesToRefresh.size;r&&n&&this.fireRefreshFinishedEvent()}fireRefreshFinishedEvent(){0===this.nodesToRefresh.size&&(this.removedNodeCache.forEach(e=>{this.blockUtils.destroyRowNode(e)}),this.removedNodeCache=new Map,this.store.fireRefreshFinishedEvent())}isStoreFullyLoaded(){const e=this.isLastRowKnown,t=this.nodeMap.getSize()===this.numberOfRows;if(!e||!t)return;if(this.nodesToRefresh.size>0)return;let i=-1;return null==this.nodeMap.find(e=>(i+=1,e.index!==i||(!!e.node.__needsRefreshWhenVisible||!!e.node.stub)))}isLastRowIndexKnown(){return this.isLastRowKnown}onLoadFailed(e,t){if(!this.live)return;const i=this.nodesToRefresh.size>0;for(let i=e;i{e.node.stub&&!e.node.failedLoad||this.nodesToRefresh.add(e.node)}),this.lazyBlockLoadingSvc.queueLoadCheck(),this.isLastRowKnown&&0===this.numberOfRows&&(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(null==this.getRowIdFunc)return null;const{level:t}=this.store.getRowDetails(),i=this.store.getParentNode().getRoute()??[];return this.getRowIdFunc({data:e,parentKeys:i.length>0?i: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.sortSvc?.getSortOptions()??[],t=e.some(e=>null!=e.sort),i=this.rowNodeSorter;if(!t||!i)return;const s=new Array(this.nodeMap.getSize()),o=this.nodeMap;o.forEach(e=>s[e.index]=e.node),o.clear();const r=i.doFullSortInPlace(s,e);for(let e=0,t=r.length;e{const i=this.getRowId(e),s=this.nodeMap.getBy("id",i);s&&(this.blockUtils.updateDataIntoRowNode(s.node,e),t.push(s.node))}),t}insertRowNodes(e,t){const i=this.store.getRowCount()-(this.store.getParentNode().sibling?1:0),s=null==t&&this.isLastRowKnown?i:t;if(null==s||i{const t=this.getRowId(e);t&&this.isNodeInCache(t)||(o[t]=e)});const r=Object.values(o),n=r.length;if(0===n)return[];const a=this.nodeMap.filter(e=>e.index>=s);return a.forEach(e=>this.nodeMap.delete(e)),a.forEach(e=>{this.nodeMap.set({node:e.node,index:e.index+n,id:e.id})}),this.numberOfRows+=n,r.map((e,t)=>this.createRowAtIndex(s+t,e))}removeRowNodes(e,t){const i=[],s=[];let o=0;const r=[...e],n=this.getOrderedNodeMap();let a=-1;for(const e of Object.keys(n)){a+=1;const t=n[e],l=r.findIndex(e=>e===t.id);if(-1!==l){r.splice(l,1),this.destroyRowAtIndex(Number(e)),i.push(t.node),o+=1;continue}if(0===o)continue;const d=Number(e);a!==d&&s.push(t.node),this.nodeMap.delete(t),this.nodeMap.set({id:t.id,node:t.node,index:d-o})}return null!=t&&t>=0?(this.numberOfRows=t,this.isLastRowKnown=!0):this.numberOfRows-=o,r.length>0&&s.length>0&&(s.forEach(e=>e.__needsRefreshWhenVisible=!0),this.lazyBlockLoadingSvc.queueLoadCheck()),i}getBlockSize(){return this.storeParams.cacheBlockSize||100}getBlockStartIndex(e){return e-e%this.getBlockSize()}getBlockBounds(e){const t=this.getBlockStartIndex(e);return[t,t+this.getBlockSize()]}}t.LazyCache=n},45330:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.LazyStore=void 0;const s=i(76624),o=i(86432),r=i(64905);class n extends s.BeanStub{wireBeans(e){this.blockUtils=e.ssrmBlockUtils,this.storeUtils=e.ssrmStoreUtils,this.selectionSvc=e.selectionSvc,this.rowGroupColsSvc=e.rowGroupColsSvc}constructor(e,t,i){super(),this.idSequence={value:0},this.ssrmParams=e,this.parentRowNode=i,this.storeParams=t,this.level=i.level+1,this.group=!!e.rowGroupCols&&this.levelt({level:this.level,parentKeys:this.parentRowNode.getRoute()??[],data:e})),s=[...new Set(i)];a=this.cache.removeRowNodes(s,e.rowCount)}const l=this.gos.get("serverSideEnableClientSideSort");return o&&l&&(r?.length||n?.length)&&this.cache.clientSideSortRows(),this.updateSelectionAfterTransaction(r,a),{status:s.ServerSideTransactionResultStatus.Applied,update:r,add:n,remove:a}}updateSelectionAfterTransaction(e,t){if(!this.selectionSvc)return;const i=[];for(const t of e??[])t.isSelected()&&!t.selectable&&i.push(t);for(const e of t??[])e.isSelected()&&i.push(e);i.length&&this.selectionSvc.setNodesSelected({newValue:!1,clearSelection:!1,nodes:i,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 0!==this.cache.getRowCount()&&(this.displayIndexStart<=e&&e-1&&(0,s._getGroupTotalRowCallback)(this.gos)({node:this.parentRowNode});r||(0,o._destroyRowNodeFooter)(this.parentRowNode),"top"===r&&((0,o._createRowNodeFooter)(this.parentRowNode,this.beans),this.blockUtils.setDisplayIndex(this.parentRowNode.sibling,e,t,i)),this.cache.setDisplayIndexes(e,t,i),"bottom"===r&&((0,o._createRowNodeFooter)(this.parentRowNode,this.beans),this.blockUtils.setDisplayIndex(this.parentRowNode.sibling,e,t,i)),this.displayIndexEnd=e.value,this.heightPx=t.value-this.topPx}forEachStoreDeep(e,t={value:0}){e(this,t.value++),this.cache.getNodes().forEach(i=>{const s=i.node.childStore;s&&s.forEachStoreDeep(e,t)})}forEachNodeDeep(e,t={value:0}){this.cache.getNodes().forEach(i=>{e(i.node,t.value++);const s=i.node.childStore;s&&s.forEachNodeDeep(e,t)})}forEachNodeDeepAfterFilterAndSort(e,t={value:0},i=!1){const o=this.parentRowNode.level>-1&&(0,s._getGroupTotalRowCallback)(this.gos)({node:this.parentRowNode});"top"===o&&e(this.parentRowNode.sibling,t.value++);const r=this.cache.getOrderedNodeMap();for(const s of Object.values(r)){e(s.node,t.value++);const o=s.node.childStore;o&&o.forEachNodeDeepAfterFilterAndSort(e,t,i)}"bottom"===o&&e(this.parentRowNode.sibling,t.value++)}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 i=this.blockUtils.extractRowBounds(t,e);if(i)return i}const{previousNode:i,nextNode:o}=this.cache.getSurroundingNodesByDisplayIndex(e)??{};if(i){const t=this.blockUtils.extractRowBounds(i.node,e);if(null!=t)return t}const r=(0,s._getRowHeightAsNumber)(this.beans);if(o){const t=(o.node.rowIndex-e)*r;return{rowTop:o.node.rowTop-t,rowHeight:r}}return{rowTop:this.topPx+this.heightPx-(this.getDisplayIndexEnd()-e)*r,rowHeight:r}}isPixelInRange(e){return e>=this.topPx&&e=this.topPx+this.heightPx)return this.getDisplayIndexEnd()-1;if(this.parentRowNode.sibling&&e>this.parentRowNode.sibling.rowTop&&e{const n=Math.abs(e-s.rowTop);s.rowTop{const t=this.cache.getNodes().find(t=>t.node.key==e);return t?t.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 e=this.cache.isStoreFullyLoaded(),t=this.gos.get("serverSideEnableClientSideSort");if(!(e&&t)){const e=this.cache.getRowCount(),t=this.cache.isLastRowIndexKnown();return this.destroyBean(this.cache),void(this.cache=this.createManagedBean(new r.LazyCache(this,e,t,this.storeParams)))}this.cache.clientSideSortRows()}this.forEachChildStoreShallow(t=>t.refreshAfterSort(e))}refreshAfterFilter(e){!this.storeUtils.isServerSideOnlyRefreshFilteredGroups()||this.storeUtils.isServerRefreshNeeded(this.parentRowNode,this.ssrmParams.rowGroupCols,e)?this.refreshStore(!0):this.forEachChildStoreShallow(t=>t.refreshAfterFilter(e))}refreshStore(e){if(e)return this.destroyBean(this.cache),this.cache=this.createManagedBean(new r.LazyCache(this,1,!1,this.storeParams)),void this.fireStoreUpdatedEvent();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:i})=>i.rowIndex>=e.rowIndex&&i.rowIndex<=t.rowIndex).map(({node:e})=>e)}addStoreStates(e){e.push({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.eventSvc.dispatchEvent({type:"storeUpdated"})}fireRefreshFinishedEvent(){this.eventSvc.dispatchEvent({type:"storeRefreshed",route:this.parentRowNode.getRoute()})}getBlockStates(){return this.cache.getBlockStates()}getStoreBounds(){return{topPx:this.topPx,heightPx:this.heightPx}}getCache(){return this.cache}getFirstNode(){const e=this.cache.getNodes().getBy("index",0);return e?.node??null}}t.LazyStore=n},2314:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.MultiIndexMap=void 0;t.MultiIndexMap=class{constructor(...e){this.indexes=e,this.maps=new Map(this.indexes.map(e=>[e,new Map]))}getSize(){return this.maps.get(this.indexes[0]).size}getBy(e,t){return this.maps.get(e).get(t)}set(e){for(const t of this.indexes){this.maps.get(t).set(e[t],e)}}delete(e){for(const t of this.indexes){this.maps.get(t).delete(e[t])}}clear(){this.maps.forEach(e=>e.clear())}getIterator(e){return this.maps.get(e).values()}forEach(e){const t=this.getIterator(this.indexes[0]);let i;for(;(i=t.next())&&!i.done;)e(i.value)}find(e){const t=this.getIterator(this.indexes[0]);let i;for(;(i=t.next())&&!i.done;)if(e(i.value))return i.value}filter(e){const t=this.getIterator(this.indexes[0]);let i;const s=[];for(;(i=t.next())&&!i.done;)e(i.value)&&s.push(i.value);return s}}},92697:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.StoreFactory=void 0;const s=i(76624),o=i(45330);class r extends s.BeanStub{constructor(){super(...arguments),this.beanName="ssrmStoreFactory"}wireBeans(e){this.colModel=e.colModel,this.rowGroupColsSvc=e.rowGroupColsSvc,this.pivotColsSvc=e.pivotColsSvc,this.rowAutoHeight=e.rowAutoHeight}createStore(e,t){const i=this.getStoreParams(e,t);return new o.LazyStore(e,i,t)}getStoreParams(e,t){const i=this.getLevelSpecificParams(t);return{cacheBlockSize:this.getBlockSize(i),maxBlocksInCache:this.getMaxBlocksInCache(e,i)}}getMaxBlocksInCache(e,t){const i=null!=t?.maxBlocksInCache?t.maxBlocksInCache:this.gos.get("maxBlocksInCache");if(null!=i&&i>=0)if(e.dynamicRowHeight)(0,s._warn)(203);else{if(!this.rowAutoHeight?.active)return i;(0,s._warn)(204)}}getBlockSize(e){const t=null!=e?.cacheBlockSize?e.cacheBlockSize:this.gos.get("cacheBlockSize");return null!=t&&t>0?t:100}getLevelSpecificParams(e){const t=this.gos.getCallback("getServerSideGroupLevelParams");if(!t)return;return t({level:e.level+1,parentRowNode:e.level>=0?e:void 0,rowGroupColumns:this.rowGroupColsSvc?.columns??[],pivotColumns:this.pivotColsSvc?.columns??[],pivotMode:this.colModel.isPivotMode()})}}t.StoreFactory=r},12234:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.StoreUtils=void 0;const s=i(76624);class o extends s.BeanStub{constructor(){super(...arguments),this.beanName="ssrmStoreUtils"}wireBeans(e){this.colModel=e.colModel,this.serverSideRowModel=e.rowModel,this.storeFactory=e.ssrmStoreFactory}getChildStore(e,t,i){if(!e?.length)return t;const s=i(e[0]);if(s){if(1===e.length&&!s.childStore){const e=this.serverSideRowModel.getParams();s.childStore=this.createBean(this.storeFactory.createStore(e,s))}const t=e.slice(1,e.length),i=s.childStore;return i?i.getChildStore(t):null}return null}isServerRefreshNeeded(e,t,i){if(i.valueColChanged||i.secondaryColChanged)return!0;const s=e.level+1;if(!(s-1)return!0;return this.colModel.getCols().filter(e=>e.getColDef().showRowGroup&&i.changedColumns.includes(e.getId())).map(e=>e.getColDef().showRowGroup).some(e=>!0===e||e===o)}getServerSideInitialRowCount(){return this.gos.get("serverSideInitialRowCount")}isServerSideSortAllLevels(){return this.gos.get("serverSideSortAllLevels")&&(0,s._isServerSideRowModel)(this.gos)}isServerSideOnlyRefreshFilteredGroups(){return this.gos.get("serverSideOnlyRefreshFilteredGroups")&&(0,s._isServerSideRowModel)(this.gos)}}t.StoreUtils=o},57332:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TransactionManager=void 0;const s=i(76624);class o extends s.BeanStub{constructor(){super(...arguments),this.beanName="ssrmTxnManager",this.asyncTransactions=[]}wireBeans(e){this.valueCache=e.valueCache,this.serverSideRowModel=e.rowModel,this.selectionSvc=e.selectionSvc}postConstruct(){(0,s._isServerSideRowModel)(this.gos)}applyTransactionAsync(e,t){null==this.asyncTransactionsTimeout&&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=[],i=[];let o=!1;for(const r of this.asyncTransactions){let n;this.serverSideRowModel.executeOnStore(r.transaction.route,e=>{n=e.applyTransaction(r.transaction)})?null==n&&(n={status:s.ServerSideTransactionResultStatus.StoreNotFound}):n={status:s.ServerSideTransactionResultStatus.StoreNotStarted},t.push(n);n.status==s.ServerSideTransactionResultStatus.StoreLoading?i.push(r):(r.callback&&e.push(()=>r.callback(n)),n.status===s.ServerSideTransactionResultStatus.Applied&&(o=!0))}e.length>0&&window.setTimeout(()=>{for(const t of e)t()},0),this.asyncTransactionsTimeout=void 0,this.asyncTransactions=i,o&&(this.valueCache?.onDataChanged(),this.eventSvc.dispatchEvent({type:"storeUpdated"})),t.length>0&&this.eventSvc.dispatchEvent({type:"asyncTransactionsFlushed",results:t})}flushAsyncTransactions(){null!=this.asyncTransactionsTimeout&&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&&this.selectionSvc){const i=t.remove.map(e=>e.id);this.selectionSvc.deleteSelectionStateFromParent(e.route||[],i)}return this.eventSvc.dispatchEvent({type:"storeUpdated"}),t}return{status:s.ServerSideTransactionResultStatus.StoreNotFound}}return{status:s.ServerSideTransactionResultStatus.StoreNotStarted}}}t.TransactionManager=o},14737:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ClientSideValuesExtractor=void 0;const s=i(76624),o=i(79889);class r extends s.BeanStub{constructor(e,t,i,s,o){super(),this.createKey=e,this.caseFormat=t,this.getValue=i,this.isTreeDataOrGrouping=s,this.isTreeData=o}extractUniqueValuesAsync(e,t){return new s.AgPromise(i=>{if(this.beans.rowModel.rowCountReady)i(this.extractUniqueValues(e,t));else{const[s]=this.addManagedEventListeners({rowCountReady:()=>{s?.(),i(this.extractUniqueValues(e,t))}})}})}extractUniqueValues(e,t){const i=new Map,o=this.extractExistingFormattedKeys(t),r=new Set,n=this.isTreeData(),a=this.isTreeDataOrGrouping(),l=this.beans.rowGroupColsSvc?.columns,d=this.gos.get("groupAllowUnbalanced"),c=(e,n)=>{const a=this.caseFormat(e);if(!r.has(a)){r.add(a);let l=e,d=(0,s._makeNull)(n);const c=o?.get(a);null!=c&&(l=c,d=t.get(c)),i.set(l,d)}};return this.beans.rowModel.forEachLeafNode(t=>{if(!t.data||!e(t))return;if(a)return void this.addValueForTreeDataOrGrouping(t,n,l,c,d);const i=this.getValue(t);if(null!=i&&Array.isArray(i)){for(const e of i)c(this.createKey(e,t),e);0===i.length&&c(null,null)}else c(this.createKey(i,t),i)}),i}addValueForTreeDataOrGrouping(e,t,i=[],s,r){let n;if(t){if(e.childrenAfterGroup?.length)return;n=e.getRoute()??[e.key??e.id]}else n=i.map(t=>this.beans.valueSvc.getKeyForNode(t,e)),n.push(this.getValue(e));const a=(0,o.processDataPath)(n,t,r);s(this.createKey(a),a)}extractExistingFormattedKeys(e){if(!e)return null;const t=new Map;return e.forEach((e,i)=>{t.set(this.caseFormat(i),i)}),t}}t.ClientSideValuesExtractor=r},68053:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.FlatSetDisplayValueModel=void 0;const s=i(53335);t.FlatSetDisplayValueModel=class{constructor(e,t,i,s,o){this.valueSvc=e,this.getValueFormatter=t,this.formatter=i,this.column=s,this.getUseFormatterFromColumn=o,this.displayedKeys=[]}updateDisplayedValuesToAllAvailable(e,t,i){this.displayedKeys=Array.from(i)}updateDisplayedValuesToMatchMiniFilter(e,t,i,s,o){this.displayedKeys=[];const r=this.getValueFormatter();for(const t of i)if(null==t)o&&this.displayedKeys.push(t);else{const i=e(t),o=this.valueSvc.formatValue(this.column,null,i,r,this.getUseFormatterFromColumn());s(this.formatter(o))&&this.displayedKeys.push(t)}}getDisplayedValueCount(){return this.displayedKeys.length}getDisplayedItem(e){return this.displayedKeys[e]}getSelectAllItem(){return s.SET_FILTER_SELECT_ALL}getAddSelectionToFilterItem(){return s.SET_FILTER_ADD_SELECTION_TO_FILTER}getDisplayedKeys(){return this.displayedKeys}forEachDisplayedKey(e){this.displayedKeys.forEach(e)}someDisplayedKey(e){return this.displayedKeys.some(e)}hasGroups(){return!1}refresh(){}}},53335:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SET_FILTER_ADD_SELECTION_TO_FILTER=t.SET_FILTER_SELECT_ALL=void 0,t.SET_FILTER_SELECT_ALL="__AG_SELECT_ALL__",t.SET_FILTER_ADD_SELECTION_TO_FILTER="__AG_ADD_SELECTION_TO_FILTER__"},73003:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.DEFAULT_LOCALE_TEXT=void 0,t.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.",ariaSearchFilterValues:"Search filter values",ariaFilterList:"Filter List",filterSummaryListInactive:"is (All)",filterSummaryListSeparator:", ",filterSummaryListShort:e=>`is (${e[0]})`,filterSummaryListLong:e=>`is (${e[0]}) and ${e[1]} more`}},32734:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SetFilter=void 0;const s=i(76624),o=i(37904),r=i(68053),n=i(53335),a=i(50105),l=i(79889),d=i(25546);class c extends s.ProvidedFilter{constructor(){super("setFilter","set-filter"),this.filterType="set",this.eMiniFilter=s.RefPlaceholder,this.eFilterLoading=s.RefPlaceholder,this.eFilterLoadingIcon=s.RefPlaceholder,this.eSetFilterList=s.RefPlaceholder,this.eFilterNoMatches=s.RefPlaceholder,this.hardRefreshVirtualList=!1,this.miniFilterText=null,this.addCurrentSelectionToFilter=!1,this.selectedKeys=new Set}setParams(e){super.setParams(e);const t=this.updateHandler(e.getHandler()),{column:i,textFormatter:s,treeList:o,treeListPathGetter:n,treeListFormatter:a}=e;this.formatter=s??(e=>e??null),this.displayValueModel=o?new d.TreeSetDisplayValueModel(this.formatter,n,a,t.isTreeDataOrGrouping()):new r.FlatSetDisplayValueModel(this.beans.valueSvc,()=>this.handler.valueFormatter,this.formatter,i,()=>this.handler.shouldUseValueFormatterFromColumn()),t.valueModel.allKeys.then(e=>{this.isAlive()&&(this.updateDisplayedValues("reload",e??[]),this.resetSelectionState(e??[]))}),t.valueModel.isLoading()&&this.setIsLoading(!0),this.initialiseFilterBodyUi()}refresh(e){return this.params.treeList===e.treeList&&(this.updateHandler(e.getHandler()),super.refresh(e))}updateParams(e,t){super.updateParams(e,t),this.updateMiniFilter(),e.suppressSelectAll!==t.suppressSelectAll&&this.createVirtualListModel(e);const{textFormatter:i,treeListPathGetter:s,treeListFormatter:o}=e;this.formatter=i??(e=>e??null),this.displayValueModel instanceof d.TreeSetDisplayValueModel&&this.displayValueModel.updateParams(s,o),this.handler.refreshFilterValues(!0)}updateHandler(e){if(this.handler!==e){for(const e of this.handlerDestroyFuncs??[])e();this.handlerDestroyFuncs=[...this.addManagedListeners(e,{anyFilterChanged:t=>{e.valueModel.allKeys.then(e=>{this.isAlive()&&(this.updateDisplayedValues("otherFilter",e??[]),t.updated&&(this.checkAndRefreshVirtualList(),this.showOrHideResults()))})},dataChanged:({hardRefresh:t})=>{e.valueModel.allKeys.then(e=>{this.isAlive()&&(this.updateDisplayedValues("reload",e??[]),this.setSelectedModel(this.state.model?.values??null),t&&(this.hardRefreshVirtualList=!0),this.checkAndRefreshVirtualList())})}}),...this.addManagedListeners(e.valueModel,{loadingStart:()=>this.setIsLoading(!0),loadingEnd:()=>this.setIsLoading(!1)})],this.handler=e}return e}updateUiVisibility(){}createBodyTemplate(){return{tag:"div",cls:"ag-set-filter",children:[{tag:"div",ref:"eFilterLoading",cls:"ag-filter-loading ag-loading ag-hidden",children:[{tag:"span",ref:"eFilterLoadingIcon",cls:"ag-loading-icon"},{tag:"span",cls:"ag-loading-text",children:(0,l.translateForSetFilter)(this,"loadingOoo")}]},{tag:"ag-input-text-field",ref:"eMiniFilter",cls:"ag-mini-filter"},{tag:"div",ref:"eFilterNoMatches",cls:"ag-filter-no-matches ag-hidden",children:(0,l.translateForSetFilter)(this,"noMatches")},{tag:"div",ref:"eSetFilterList",cls:"ag-set-filter-list",role:"presentation"}]}}getAgComponents(){return[s.AgInputTextFieldSelector]}handleKeyDown(e){if(super.handleKeyDown(e),e.defaultPrevented)return;const t=()=>{if(!this.eSetFilterList.contains((0,s._getActiveDomElement)(this.beans)))return;const t=this.virtualList.getLastFocusedRow();if(null==t)return;const i=this.virtualList.getComponentAt(t);if(null==i)return;e.preventDefault();const{readOnly:o}=this.params;return o?void 0:i};switch(e.key){case s.KeyCode.SPACE:t()?.toggleSelected();break;case s.KeyCode.ENTER:this.handleKeyEnter(e);break;case s.KeyCode.LEFT:t()?.setExpanded(!1);break;case s.KeyCode.RIGHT:t()?.setExpanded(!0)}}handleKeyEnter(e){e.preventDefault();const{excelMode:t,readOnly:i}=this.params;t&&!i&&(this.params.onAction("apply",void 0,e),"mac"===this.params.excelMode&&this.eMiniFilter.getInputElement().select())}setModelAndRefresh(e){return this.setSelectedModel(e).then(()=>{this.isAlive()&&this.checkAndRefreshVirtualList()})}setModelIntoUi(e){this.setMiniFilter(this.params.state.state?.miniFilterValue??null,!0);const t=null==e?null:e.values;return this.setModelAndRefresh(t)}getModelFromUi(){const e=this.getSelectedModel();return e?{values:e,filterType:this.filterType}:null}areNonNullModelsEqual(e,t){return(0,s._areEqual)(e.values,t.values)}setIsLoading(e){(0,s._setDisplayed)(this.eFilterLoading,e),e||(this.hardRefreshVirtualList=!0)}initialiseFilterBodyUi(){this.initVirtualList(),this.initMiniFilter(),this.initLoading()}initLoading(){const e=(0,s._createIconNoSpan)("setFilterLoading",this.beans,this.params.column);e&&this.eFilterLoadingIcon.appendChild(e)}initVirtualList(){const e=(0,l.translateForSetFilter)(this,"ariaFilterList"),t=!!this.params.treeList,i=this.virtualList=this.createBean(new o.VirtualList({cssIdentifier:"filter",ariaRole:t?"tree":"listbox",listName:e})),s=this.eSetFilterList;t&&s.classList.add("ag-set-filter-tree-list"),s.appendChild(i.getGui());const{cellHeight:r}=this.params;null!=r&&i.setRowHeight(r);i.setComponentCreator((e,i)=>this.createSetListItem(e,t,i));i.setComponentUpdater((e,t)=>this.updateSetListItem(e,t)),this.createVirtualListModel(this.params)}createVirtualListModel(e){let t;t=e.suppressSelectAll?new u(this.displayValueModel):new h(this.displayValueModel,this.showAddCurrentSelectionToFilter.bind(this)),e.treeList&&(t=new g(t)),this.virtualList.setModel(t)}getSelectAllLabel(){const e=null!=this.miniFilterText&&this.params.excelMode?"selectAllSearchResults":"selectAll";return(0,l.translateForSetFilter)(this,e)}getAddSelectionToFilterLabel(){return(0,l.translateForSetFilter)(this,"addCurrentSelectionToFilter")}createSetListItem(e,t,i){const s=this.displayValueModel.hasGroups(),{isSelected:o,isExpanded:r}=this.isSelectedExpanded(e),{value:n,depth:d,isGroup:c,hasIndeterminateExpandState:u,selectedListener:h,expandedListener:g}=this.newSetListItemAttributes(e),p={focusWrapper:i,value:n,params:this.params,translate:e=>(0,l.translateForSetFilter)(this,e),valueFormatter:this.handler.valueFormatter,shouldUseFormatterFromColumn:this.handler.shouldUseValueFormatterFromColumn(),item:e,isSelected:o,isTree:t,depth:d,groupsExist:s,isGroup:c,isExpanded:r,hasIndeterminateExpandState:u},m=this.createBean(new a.SetFilterListItem(p));return m.addEventListener("selectionChanged",h),g&&m.addEventListener("expandedChanged",g),m}newSetTreeItemAttributes(e){const t=this.displayValueModel.hasGroups();return e.key===n.SET_FILTER_SELECT_ALL?{value:()=>this.getSelectAllLabel(),isGroup:t,depth:e.depth,hasIndeterminateExpandState:!0,selectedListener:e=>this.onSelectAll(e.isSelected),expandedListener:e=>this.onExpandAll(e.item,e.isExpanded)}:e.key===n.SET_FILTER_ADD_SELECTION_TO_FILTER?{value:()=>this.getAddSelectionToFilterLabel(),depth:e.depth,isGroup:!1,hasIndeterminateExpandState:!1,selectedListener:e=>{this.addCurrentSelectionToFilter=e.isSelected,this.refreshAfterSelection()}}:e.children?{value:this.params.treeListFormatter?.(e.treeKey,e.depth,e.parentTreeKeys)??e.treeKey,depth:e.depth,isGroup:!0,selectedListener:e=>this.onGroupItemSelected(e.item,e.isSelected),expandedListener:e=>this.onExpandedChanged(e.item,e.isExpanded)}:{value:this.params.treeListFormatter?.(e.treeKey,e.depth,e.parentTreeKeys)??e.treeKey,depth:e.depth,selectedListener:e=>this.onItemSelected(e.item.key,e.isSelected)}}newSetListItemAttributes(e){return this.isSetFilterModelTreeItem(e)?this.newSetTreeItemAttributes(e):e===n.SET_FILTER_SELECT_ALL?{value:()=>this.getSelectAllLabel(),selectedListener:e=>this.onSelectAll(e.isSelected)}:e===n.SET_FILTER_ADD_SELECTION_TO_FILTER?{value:()=>this.getAddSelectionToFilterLabel(),selectedListener:e=>{this.addCurrentSelectionToFilter=e.isSelected,this.refreshAfterSelection()}}:{value:this.handler.valueModel.allValues.get(e)??null,selectedListener:e=>this.onItemSelected(e.item,e.isSelected)}}updateSetListItem(e,t){const{isSelected:i,isExpanded:s}=this.isSelectedExpanded(e);t.refresh(e,i,s)}isSelectedExpanded(e){let t,i;return this.isSetFilterModelTreeItem(e)?(i=e.expanded,t=e.key===n.SET_FILTER_SELECT_ALL?this.isSelectAllSelected():e.key===n.SET_FILTER_ADD_SELECTION_TO_FILTER?this.isAddCurrentSelectionToFilterChecked():e.children?this.areAllChildrenSelected(e):this.selectedKeys.has(e.key)):t=e===n.SET_FILTER_SELECT_ALL?this.isSelectAllSelected():e===n.SET_FILTER_ADD_SELECTION_TO_FILTER?this.isAddCurrentSelectionToFilterChecked():this.selectedKeys.has(e),{isSelected:t,isExpanded:i}}isSetFilterModelTreeItem(e){return void 0!==e?.treeKey}initMiniFilter(){const{eMiniFilter:e}=this;this.updateMiniFilter(),e.onValueChange(()=>this.onMiniFilterInput()),e.setInputAriaLabel((0,l.translateForSetFilter)(this,"ariaSearchFilterValues")),this.addManagedElementListeners(e.getInputElement(),{keydown:e=>this.onMiniFilterKeyDown(e)})}updateMiniFilter(){const{eMiniFilter:e,miniFilterText:t,params:i}=this;e.setDisplayed(!i.suppressMiniFilter),e.setValue(t)}afterGuiAttached(e){super.afterGuiAttached(e),this.resetExpansion(),this.refreshVirtualList();const{eMiniFilter:t}=this;t.setInputPlaceholder((0,l.translateForSetFilter)(this,"searchOoo")),e?.suppressFocus||(t.isDisplayed()?t.getFocusableElement().focus():this.virtualList.awaitStable(()=>this.virtualList.focusRow(0)))}afterGuiDetached(){super.afterGuiDetached();const{column:e,excelMode:t,model:i,onStateChange:s}=this.params;this.beans.colFilter?.shouldKeepStateOnDetach(e)||(t&&this.resetMiniFilter(),(t||i!==this.state.model)&&(s({model:i,state:this.getState()}),this.showOrHideResults()))}canApply(e){return!this.params.excelMode||(null==e||e.values.length>0)}onNewRowsLoaded(){}setFilterValues(e){(0,s._warn)(283),this.handler.setFilterValues(e)}resetFilterValues(){(0,s._warn)(283),this.handler.resetFilterValues()}refreshFilterValues(){(0,s._warn)(283),this.doRefreshFilterValues()}doRefreshFilterValues(){this.handler.refreshFilterValues()}onAnyFilterChanged(){}onMiniFilterInput(e){if(!this.doSetMiniFilter(this.eMiniFilter.getValue()))return;if(e)return void this.showOrHideResults();const{applyMiniFilterWhileTyping:t,readOnly:i,excelMode:s}=this.params,o=!i&&(t||!!s),r=t&&!i?"debounce":void 0;this.updateUiAfterMiniFilterChange(o,r)}updateUiAfterMiniFilterChange(e,t){if(e){const{excelMode:e,readOnly:t,model:i}=this.params;e&&!t&&null==this.miniFilterText?this.setModelAndRefresh(i?.values??null):this.selectAllMatchingMiniFilter(!0)}this.checkAndRefreshVirtualList(),this.onUiChanged(e?t:"prevent"),this.showOrHideResults()}showOrHideResults(){const e=null!=this.miniFilterText&&this.displayValueModel.getDisplayedValueCount()<1;(0,s._setDisplayed)(this.eFilterNoMatches,e),(0,s._setDisplayed)(this.eSetFilterList,!e)}resetMiniFilter(){this.eMiniFilter.setValue(null,!0),this.doSetMiniFilter(null)}onMiniFilterKeyDown(e){const{excelMode:t,readOnly:i}=this.params;e.key!==s.KeyCode.ENTER||t||i||this.updateUiAfterMiniFilterChange(!0,"immediately")}focusRowIfAlive(e){return null==e?Promise.resolve():new Promise(t=>{window.setTimeout(()=>{this.isAlive()&&this.virtualList.focusRow(e),t()},0)})}onSelectAll(e){e?this.selectAllMatchingMiniFilter():this.deselectAllMatchingMiniFilter(),this.refreshAfterSelection()}onGroupItemSelected(e,t){const i=e=>{if(!e.filterPasses)return;const s=e.children;if(s)for(const e of s.values())i(e);else this.setKeySelected(e.key,t)};i(e),this.refreshAfterSelection()}onItemSelected(e,t){this.setKeySelected(e,t),this.refreshAfterSelection()}onExpandAll(e,t){const i=e=>{if(e.filterPasses&&e.available&&e.children){for(const t of e.children.values())i(t);e.expanded=t}};i(e),this.refreshAfterExpansion()}onExpandedChanged(e,t){e.expanded=t,this.refreshAfterExpansion()}refreshAfterExpansion(){const e=this.virtualList.getLastFocusedRow();this.updateDisplayedValues("expansion"),this.checkAndRefreshVirtualList(),this.focusRowIfAlive(e)}refreshAfterSelection(){const e=this.virtualList.getLastFocusedRow();this.checkAndRefreshVirtualList(),this.onUiChanged(),this.focusRowIfAlive(e)}setMiniFilter(e,t){this.eMiniFilter.setValue(e,t),this.onMiniFilterInput(t)}doSetMiniFilter(e){return e=(0,s._makeNull)(e),this.miniFilterText!==e&&(null===e&&(this.addCurrentSelectionToFilter=!1),this.miniFilterText=e,this.updateDisplayedValues("miniFilter"),!0)}getMiniFilter(){return this.miniFilterText}getUiChangeEventParams(){return{miniFilterValue:this.miniFilterText}}getState(){const e=this.miniFilterText;return e?{miniFilterValue:e}:void 0}checkAndRefreshVirtualList(){this.virtualList.refresh(!this.hardRefreshVirtualList),this.hardRefreshVirtualList&&(this.hardRefreshVirtualList=!1)}getFilterKeys(){return(0,s._warn)(283),this.handler.getFilterKeys()}getFilterValues(){return(0,s._warn)(283),this.handler.getFilterValues()}refreshVirtualList(){this.params.refreshValuesOnOpen?this.doRefreshFilterValues():this.checkAndRefreshVirtualList()}isSelectAllSelected(){if(this.params.defaultToNothingSelected){if(this.hasSelections()&&this.isEverythingVisibleSelected())return!0;if(this.isNothingVisibleSelected())return!1}else{if(this.hasSelections()&&this.isNothingVisibleSelected())return!1;if(this.isEverythingVisibleSelected())return!0}}areAllChildrenSelected(e){const t=e=>{if(e.children){let i=!1,s=!1;for(const o of e.children.values()){if(!o.filterPasses||!o.available)continue;const e=t(o);if(void 0===e)return;if(e?i=!0:s=!0,i&&s)return}return i}return this.selectedKeys.has(e.key)};return this.params.defaultToNothingSelected?this.hasSelections()&&t(e):t(e)}resetExpansion(){if(!this.params.treeList)return;const e=this.displayValueModel.getSelectAllItem();if(this.isSetFilterModelTreeItem(e)){const t=e=>{const i=e.children;if(i){for(const e of i.values())t(e);e.expanded=!1}};t(e),this.updateDisplayedValues("expansion")}}getModelAsString(e){return this.handler.getModelAsString(e)}getPositionableElement(){return this.eSetFilterList}updateDisplayedValues(e,t){if("expansion"===e)return void this.displayValueModel.refresh();const i=this.handler,s=i.valueModel;if(null==this.miniFilterText)return void this.displayValueModel.updateDisplayedValuesToAllAvailable(e=>s.allValues.get(e)??null,t,s.availableKeys,e);const o=i.caseFormat(this.formatter(this.miniFilterText)||""),r=e=>null!=e&&i.caseFormat(e).includes(o),n=!!this.params.excelMode&&r((0,l.translateForSetFilter)(this,"blanks"));this.displayValueModel.updateDisplayedValuesToMatchMiniFilter(e=>s.allValues.get(e)??null,t,s.availableKeys,r,n,e)}hasSelections(){return this.params.defaultToNothingSelected?this.selectedKeys.size>0:this.handler.valueModel.allValues.size!==this.selectedKeys.size}isInWindowsExcelMode(){return"windows"===this.params.excelMode}isAddCurrentSelectionToFilterChecked(){return this.isInWindowsExcelMode()&&this.addCurrentSelectionToFilter}showAddCurrentSelectionToFilter(){return this.isInWindowsExcelMode()&&(0,s._exists)(this.miniFilterText)&&this.miniFilterText.length>0}selectAllMatchingMiniFilter(e=!1){null==this.miniFilterText?this.selectedKeys=new Set(this.handler.valueModel.allValues.keys()):(e&&this.selectedKeys.clear(),this.displayValueModel.forEachDisplayedKey(e=>this.selectedKeys.add(e)))}deselectAllMatchingMiniFilter(){null==this.miniFilterText?this.selectedKeys.clear():this.displayValueModel.forEachDisplayedKey(e=>this.selectedKeys.delete(e))}setKeySelected(e,t){t?this.selectedKeys.add(e):(this.params.excelMode&&this.isEverythingVisibleSelected()&&this.resetSelectionState(this.displayValueModel.getDisplayedKeys()),this.selectedKeys.delete(e))}isEverythingVisibleSelected(){return!this.displayValueModel.someDisplayedKey(e=>!this.selectedKeys.has(e))}isNothingVisibleSelected(){return!this.displayValueModel.someDisplayedKey(e=>this.selectedKeys.has(e))}getSelectedModel(){if(!this.hasSelections())return null;const e=this.isAddCurrentSelectionToFilterChecked()?this.params.model?.values:void 0;if(e?.length){if(this.selectedKeys){const t=new Set([...e,...this.selectedKeys]);return Array.from(t)}return Array.from(e)}return Array.from(this.selectedKeys)}setSelectedModel(e){const t=this.handler,i=t.valueModel;return i.allKeys.then(o=>{if(null==e)this.resetSelectionState(o??[]);else{this.selectedKeys.clear();const o=new Map;i.allValues.forEach((e,i)=>{o.set(t.caseFormat(i),i)}),e.forEach(e=>{const i=t.caseFormat((0,s._makeNull)(e)),r=o.get(i);void 0!==r&&this.selectedKeys.add(r)})}})}resetSelectionState(e){this.params.defaultToNothingSelected?this.selectedKeys.clear():this.selectedKeys=new Set(e)}getFilterHandler(){return this.handler}destroy(){this.virtualList=this.destroyBean(this.virtualList);for(const e of this.handlerDestroyFuncs??[])e();this.handler=void 0,this.displayValueModel=void 0,this.selectedKeys.clear(),super.destroy()}}t.SetFilter=c;class u{constructor(e){this.model=e}getRowCount(){return this.model.getDisplayedValueCount()}getRow(e){return this.model.getDisplayedItem(e)}areRowsEqual(e,t){return e===t}}class h{constructor(e,t){this.model=e,this.showAddCurrentSelectionToFilter=t}getRowCount(){const e=this.showAddCurrentSelectionToFilter()?2:1;return this.model.getDisplayedValueCount()+e}getRow(e){if(0===e)return this.model.getSelectAllItem();const t=this.showAddCurrentSelectionToFilter(),i=t?2:1;return 1===e&&t?this.model.getAddSelectionToFilterItem():this.model.getDisplayedItem(e-i)}areRowsEqual(e,t){return e===t}}class g{constructor(e){this.model=e}getRowCount(){return this.model.getRowCount()}getRow(e){return this.model.getRow(e)}areRowsEqual(e,t){return null==e&&null==t||null!=e&&null!=t&&e.treeKey===t.treeKey&&e.depth===t.depth}}},9060:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SetFilterAppliedModel=void 0;t.SetFilterAppliedModel=class{constructor(e){this.caseFormat=e,this.keys=null}isNull(){return null==this.keys}isEmpty(){return!this.keys?.size}update(e){const t=new Set;this.keys=t;const i=e?.values;if(i){const e=this.caseFormat;for(let s=0,o=i.length;sthis.treeDataTreeList)):void 0,u=this.createManagedBean(new l.SetValueModel(c,s,i,t,{handlerParams:e,usingComplexObjects:!!(e.filterParams.keyCreator??e.colDef.keyCreator)}));this.addManagedListeners(u,{availableValuesChanged:e.onModelAsStringChange}),this.valueModel=u,this.appliedModel=new n.SetFilterAppliedModel(this.caseFormat.bind(this)),this.appliedModel.update(e.model),this.validateModel(e),this.addEventListenersForDataChanges()}refresh(e){this.updateParams(e),this.valueModel.refresh({handlerParams:e,usingComplexObjects:!!(e.filterParams.keyCreator??e.colDef.keyCreator)}),this.appliedModel.update(e.model),this.validateModel(e)}updateParams(e){this.params=e;const{colDef:t,filterParams:{caseSensitive:i,treeList:s,keyCreator:o}}=e;this.caseSensitive=!!i;const r=!!t.showRowGroup;this.treeDataTreeList=this.gos.get("treeData")&&!!s&&r,this.groupingTreeList=!!this.beans.rowGroupColsSvc?.columns.length&&!!s&&r;const n=o??t.keyCreator;this.createKey=this.generateCreateKey(n,this.isTreeDataOrGrouping()),this.setValueFormatter(n,e)}doesFilterPass(e){const{appliedModel:t,treeDataTreeList:i,groupingTreeList:s}=this;if(t.isNull())return!0;if(t.isEmpty())return!1;const{node:o}=e;if(i)return this.doesFilterPassForTreeData(o);if(s)return this.doesFilterPassForGrouping(o);const r=this.params.getValue(o);return null!=r&&Array.isArray(r)?0===r.length?t.has(null):r.some(e=>t.has(this.createKey(e,o))):t.has(this.createKey(r,o))}getFormattedValue(e){let t=this.valueModel.getValueForFormatter(e);if(this.isTreeDataOrGrouping()&&Array.isArray(t)){(this.noValueFormatterSupplied||this.useValueFormatterFromColumn)&&(t=(0,o._last)(t))}const i=this.beans.valueSvc.formatValue(this.params.column,null,t,this.valueFormatter,this.useValueFormatterFromColumn);return(null==i?(0,o._toStringOrNull)(t):i)??(0,a.translateForSetFilter)(this,"blanks")}getModelAsString(e,t){const{values:i}=e??{},s="filterToolPanel"===t;if(null==i)return s?(0,a.translateForSetFilter)(this,"filterSummaryListInactive"):"";const o=this.valueModel.getAvailableKeys(i),r=o.length,n=s?3:10,l=o.slice(0,n).map(e=>this.getFormattedValue(e));if(s){const e=l.join((0,a.translateForSetFilter)(this,"filterSummaryListSeparator"));return r>3?(0,a.translateForSetFilter)(this,"filterSummaryListLong",[e,String(r-3)]):(0,a.translateForSetFilter)(this,"filterSummaryListShort",[e])}return`(${r}) ${l.join(",")}${r>10?",...":""}`}onAnyFilterChanged(){window.setTimeout(()=>{this.isAlive()&&this.valueModel.refreshAvailable().then(e=>{this.dispatchLocalEvent({type:"anyFilterChanged",updated:!!e})})})}onNewRowsLoaded(){this.syncAfterDataChange()}setFilterValues(e){this.valueModel.overrideValues(e).then(()=>{this.refreshFilterValues()})}resetFilterValues(){this.valueModel.valuesType=l.default.TAKEN_FROM_GRID_VALUES,this.syncAfterDataChange()}refreshFilterValues(e){this.valueModel.isInitialised()&&this.valueModel.refreshAll().then(()=>{this.dispatchLocalEvent({type:"dataChanged",hardRefresh:!0}),this.validateModel(this.params,void 0,!e)})}getFilterKeys(){return Array.from(this.valueModel.allValues.keys())}getFilterValues(){return Array.from(this.valueModel.allValues.values())}isTreeDataOrGrouping(){return this.treeDataTreeList||this.groupingTreeList}caseFormat(e){return null==e||"string"!=typeof e||this.caseSensitive?e:e.toUpperCase()}addEventListenersForDataChanges(){this.addManagedPropertyListeners(["groupAllowUnbalanced"],()=>this.syncAfterDataChange());const e=(0,o._debounce)(this,this.syncAfterDataChange.bind(this),0);this.addManagedEventListeners({cellValueChanged:t=>{t.column===this.params.column&&e()}})}syncAfterDataChange(){this.isValuesTakenFromGrid()&&this.valueModel.refreshAll().then(()=>{this.dispatchLocalEvent({type:"dataChanged"}),this.validateModel(this.params,{afterDataChange:!0})})}validateModel(e,t,i){const s=this.valueModel;s.allKeys.then(()=>{const r=e.model;if(null==r)return;const n=new Map,a=e=>n.set(this.caseFormat(e),e);if(i)for(const e of s.availableKeys)a(e);else s.allValues.forEach((e,t)=>a(t));const d=[];let c=!1;for(const e of r.values){const t=this.caseFormat((0,o._makeNull)(e)),i=n.get(t);void 0!==i?(d.push(i),i!==e&&(c=!0)):c=!0}const u=d.length,h=e.filterParams;if(0===u&&h.excelMode)return void e.onModelChange(null,t);const g=!(h.defaultToNothingSelected||this.valueModel.valuesType!==l.default.TAKEN_FROM_GRID_VALUES&&h.suppressClearModelOnRefreshValues)&&u===n.size;if(c||!r.filterType||g){const i=g?null:{filterType:this.filterType,values:d};e.onModelChange(i,t)}})}isValuesTakenFromGrid(){return this.valueModel.valuesType===l.default.TAKEN_FROM_GRID_VALUES}doesFilterPassForTreeData(e){if(e.childrenAfterGroup?.length)return!1;const{gos:t,appliedModel:i}=this;return i.has(this.createKey((0,a.processDataPath)(e.getRoute()??[e.key??e.id],!0,t.get("groupAllowUnbalanced"))))}doesFilterPassForGrouping(e){const{appliedModel:t,params:i,gos:s,beans:{rowGroupColsSvc:o,valueSvc:r}}=this,n=(o?.columns??[]).map(t=>r.getKeyForNode(t,e));return n.push(i.getValue(e)),t.has(this.createKey((0,a.processDataPath)(n,!1,s.get("groupAllowUnbalanced"))))}generateCreateKey(e,t){return t&&!e?((0,o._error)(250),()=>null):e?(t,i=null)=>{const s=this.getKeyCreatorParams(t,i);return(0,o._makeNull)(e(s))}:e=>(0,o._makeNull)((0,o._toStringOrNull)(e))}getKeyCreatorParams(e,t=null){const{colDef:i,column:s}=this.params;return(0,o._addGridCommonParams)(this.gos,{value:e,colDef:i,column:s,node:t,data:t?.data})}setValueFormatter(e,t){const{colDef:{refData:i,valueFormatter:s},filterParams:{treeList:r,valueFormatter:n}}=t;if(e&&!(n||r||s))return(0,o._error)(249),this.valueFormatter=void 0,this.noValueFormatterSupplied=!0,void(this.useValueFormatterFromColumn=!1);let a=n;a||s||i||(a=e=>(0,o._toStringOrNull)(e.value)),this.valueFormatter=a,this.noValueFormatterSupplied=!n&&!s,this.useValueFormatterFromColumn=!n&&!!s}shouldUseValueFormatterFromColumn(){return this.useValueFormatterFromColumn&&!this.valueFormatter}getCrossFilterModel(e){const{createKey:t,valueModel:i,params:s}=this;return e(t,i.availableKeys,s.model?.values)}destroy(){this.appliedModel.destroy(),super.destroy(),this.valueModel=void 0}}t.SetFilterHandler=d},50105:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SetFilterListItem=void 0;const s=i(76624),o={tag:"div",cls:"ag-set-filter-item",attrs:{"aria-hidden":"true"},children:[{tag:"span",cls:"ag-set-filter-group-icons",children:[{tag:"span",ref:"eGroupClosedIcon",cls:"ag-set-filter-group-closed-icon"},{tag:"span",ref:"eGroupOpenedIcon",cls:"ag-set-filter-group-opened-icon"},{tag:"span",ref:"eGroupIndeterminateIcon",cls:"ag-set-filter-group-indeterminate-icon"}]},{tag:"ag-checkbox",ref:"eCheckbox",cls:"ag-set-filter-item-checkbox"}]},r={tag:"div",cls:"ag-set-filter-item",children:[{tag:"ag-checkbox",ref:"eCheckbox",cls:"ag-set-filter-item-checkbox"}]};class n extends s.Component{constructor(e){super(e.isGroup?o:r,[s.AgCheckboxSelector]),this.eCheckbox=s.RefPlaceholder,this.eGroupOpenedIcon=s.RefPlaceholder,this.eGroupClosedIcon=s.RefPlaceholder,this.eGroupIndeterminateIcon=s.RefPlaceholder,this.formattedValue=null,this.focusWrapper=e.focusWrapper,this.value=e.value,this.params=e.params,this.translate=e.translate,this.valueFormatter=e.valueFormatter,this.useFormatterFromColumn=e.shouldUseFormatterFromColumn,this.item=e.item,this.isSelected=e.isSelected,this.isTree=e.isTree,this.depth=e.depth??0,this.isGroup=e.isGroup,this.groupsExist=e.groupsExist,this.isExpanded=e.isExpanded,this.hasIndeterminateExpandState=e.hasIndeterminateExpandState}postConstruct(){this.tooltipFeature=this.createOptionalManagedBean(this.beans.registry.createDynamicBean("tooltipFeature",!1,{getGui:()=>this.focusWrapper,getLocation:()=>"setFilterValue",shouldDisplayTooltip:()=>this.shouldDisplayTooltip?.()??!0,getAdditionalParams:()=>{const{colDef:e,column:t}=this.params,i={colDef:e,column:t,valueFormatted:this.formattedValue??void 0};return this.isTree&&(i.level=this.depth),i}})),this.addDestroyFunc(()=>this.destroyCellRendererComponent?.()),this.render(),this.eCheckbox.setLabelEllipsis(!0).setValue(this.isSelected,!0).setDisabled(!!this.params.readOnly).getInputElement().setAttribute("tabindex","-1"),this.refreshVariableAriaLabels(),this.isTree&&(this.depth>0&&(this.addCss("ag-set-filter-indent-"+this.depth),this.getGui().style.setProperty("--ag-indentation-level",String(this.depth))),this.isGroup?this.setupExpansion():this.groupsExist&&this.addCss("ag-set-filter-add-group-indent"),(0,s._setAriaLevel)(this.getAriaElement(),this.depth+1)),this.refreshAriaChecked(),this.params.readOnly||this.eCheckbox.onValueChange(e=>this.onCheckboxChanged(!!e))}getFocusableElement(){return this.focusWrapper}setupExpansion(){const{eGroupClosedIcon:e,eGroupOpenedIcon:t,eGroupIndeterminateIcon:i,hasIndeterminateExpandState:o,beans:r}=this;e.appendChild((0,s._createIcon)("setFilterGroupClosed",r,null)),t.appendChild((0,s._createIcon)("setFilterGroupOpen",r,null));const n=this.onExpandOrContractClicked.bind(this);this.addManagedElementListeners(e,{click:n}),this.addManagedElementListeners(t,{click:n}),o&&(i.appendChild((0,s._createIcon)("setFilterGroupIndeterminate",r,null)),this.addManagedElementListeners(i,{click:n})),this.setExpandedIcons(),this.refreshAriaExpanded()}onExpandOrContractClicked(){this.setExpanded(!this.isExpanded)}setExpanded(e,t){if(this.isGroup&&e!==this.isExpanded){this.isExpanded=e;const i={type:"expandedChanged",isExpanded:!!e,item:this.item};t||this.dispatchLocalEvent(i),this.setExpandedIcons(),this.refreshAriaExpanded()}}setExpandedIcons(){const{isExpanded:e,hasIndeterminateExpandState:t,eGroupClosedIcon:i,eGroupOpenedIcon:o,eGroupIndeterminateIcon:r}=this;(0,s._setDisplayed)(i,t?!1===e:!e),(0,s._setDisplayed)(o,!0===e),t&&(0,s._setDisplayed)(r,void 0===e)}onCheckboxChanged(e){this.isSelected=e;const t={type:"selectionChanged",isSelected:e,item:this.item};this.dispatchLocalEvent(t),this.refreshVariableAriaLabels(),this.refreshAriaChecked()}toggleSelected(){this.params.readOnly||this.setSelected(!this.isSelected)}setSelected(e,t){this.isSelected=e,this.eCheckbox.setValue(e,t),this.refreshAriaChecked()}refreshVariableAriaLabels(){if(!this.isTree)return;const e=this.getLocaleTextFunc(),t=this.eCheckbox.getValue(),i=void 0===t?e("ariaIndeterminate","indeterminate"):t?e("ariaVisible","visible"):e("ariaHidden","hidden"),o=e("ariaToggleVisibility","Press SPACE to toggle visibility");(0,s._setAriaLabelledBy)(this.eCheckbox.getInputElement(),void 0),this.eCheckbox.setInputAriaLabel(`${o} (${i})`)}setupFixedAriaLabels(e){if(!this.isTree)return;const t=this.getLocaleTextFunc()("ariaFilterValue","Filter Value"),i=this.getAriaElement();(0,s._setAriaLabel)(i,`${e} ${t}`),(0,s._setAriaDescribedBy)(i,this.eCheckbox.getInputElement().id)}refreshAriaChecked(){const e=this.getAriaElement();(0,s._setAriaChecked)(e,this.eCheckbox.getValue())}refreshAriaExpanded(){(0,s._setAriaExpanded)(this.getAriaElement(),!!this.isExpanded)}refresh(e,t,i){this.item=e,t!==this.isSelected&&this.setSelected(t,!0),this.setExpanded(i,!0);const{cellRendererComponent:o,cellRendererParams:r,beans:n,params:a}=this;if(this.valueFunction){const e=this.valueFunction();this.setTooltipAndCellRendererParams(e,e),o||this.renderCellWithoutCellRenderer()}if(o){const e=(0,s._getCellRendererDetails)(n.userCompFactory,a,r),t=o.refresh?.(e?.params??r);if(!t){const e=o;this.renderCell(),this.destroyBean(e)}}}render(){const{params:{column:e}}=this;let{value:t}=this,i=null;"function"==typeof t?(this.valueFunction=t,i=this.valueFunction(),t=i):i=this.isTree?(0,s._toStringOrNull)(t):this.getFormattedValue(e,t),this.formattedValue=i,this.setTooltipAndCellRendererParams(t,i),this.renderCell()}setTooltipAndCellRendererParams(e,t){const i=this.gos;if(this.params.showTooltips&&(!(0,s._isShowTooltipWhenTruncated)(i)||!this.params.cellRenderer)){const o=null!=t?t:(0,s._toStringOrNull)(e);this.shouldDisplayTooltip=(0,s._getShouldDisplayTooltip)(i,()=>this.eCheckbox.getGui().querySelector(".ag-label")),this.tooltipFeature?.setTooltipAndRefresh(o)}this.cellRendererParams=(0,s._addGridCommonParams)(i,{value:e,valueFormatted:t,colDef:this.params.colDef,column:this.params.column,setTooltip:(e,t)=>{i.assertModuleRegistered("Tooltip",3),this.shouldDisplayTooltip=t,this.tooltipFeature?.setTooltipAndRefresh(e)}})}getFormattedValue(e,t){return this.beans.valueSvc.formatValue(e,null,t,this.valueFormatter,!!this.useFormatterFromColumn)}renderCell(){const e=(0,s._getCellRendererDetails)(this.beans.userCompFactory,this.params,this.cellRendererParams),t=e?.newAgStackInstance();null!=t?t.then(e=>{e&&(this.cellRendererComponent=e,this.eCheckbox.setLabel(e.getGui()),this.destroyCellRendererComponent=()=>this.destroyBean(e))}):this.renderCellWithoutCellRenderer()}renderCellWithoutCellRenderer(){const{valueFormatted:e,value:t}=this.cellRendererParams;let i=(null==e?t:e)??this.translate("blanks");"string"!=typeof i&&((0,s._warn)(208),i=""),this.eCheckbox.setLabel(i),this.setupFixedAriaLabels(i)}getComponentHolder(){return this.params.column.getColDef()}}t.SetFilterListItem=n},49002:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SetFilterModule=void 0;const s=i(76624),o=i(39206),r=i(19586),n=i(32734),a=i(72936),l=i(79889),d=i(44716);t.SetFilterModule={moduleName:"SetFilter",version:r.VERSION,userComponents:{agSetColumnFilter:{classImp:n.SetFilter,params:{useForm:!0},processParams:e=>((0,l.applyExcelModeOptions)(e),e)},agSetColumnFloatingFilter:d.SetFloatingFilterComp},dynamicBeans:{agSetColumnFilterHandler:a.SetFilterHandler},icons:{setFilterGroupClosed:"tree-closed",setFilterGroupOpen:"tree-open",setFilterGroupIndeterminate:"tree-indeterminate",setFilterLoading:"loading"},dependsOn:[o.EnterpriseCoreModule,s._ColumnFilterModule]}},79889:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.createTreeDataOrGroupingComparator=t.applyExcelModeOptions=t.translateForSetFilter=t.processDataPath=void 0;const s=i(76624),o=i(73003);t.processDataPath=function(e,t,i){let o=e;return o?(o=o.map(e=>(0,s._toStringOrNull)((0,s._makeNull)(e))),!t&&i&&o.some(e=>null==e)?null==(0,s._last)(o)?null:o.filter(e=>null!=e):o):null},t.translateForSetFilter=function(e,t,i){return(0,s._translate)(e,o.DEFAULT_LOCALE_TEXT,t,i)},t.applyExcelModeOptions=function(e){"windows"===e.excelMode?(e.buttons||(e.buttons=["apply","cancel"]),null==e.closeOnApply&&(e.closeOnApply=!0)):"mac"===e.excelMode&&(e.buttons||(e.buttons=["reset"]),null==e.applyMiniFilterWhileTyping&&(e.applyMiniFilterWhileTyping=!0),null==e.debounceMs&&(e.debounceMs=500)),e.excelMode&&e.defaultToNothingSelected&&(e.defaultToNothingSelected=!1,(0,s._warn)(207))},t.createTreeDataOrGroupingComparator=function(){return([e,t],[i,o])=>{if(null==t)return null==o?0:-1;if(null==o)return 1;for(let e=0;e=o.length)return 1;const i=(0,s._defaultComparator)(t[e],o[e]);if(0!==i)return i}return 0}}},44716:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SetFloatingFilterComp=void 0;const s=i(76624),o=i(32734),r={tag:"div",cls:"ag-floating-filter-input ag-set-floating-filter-input",role:"presentation",children:[{tag:"ag-input-text-field",ref:"eFloatingFilterText"}]};class n extends s.Component{constructor(){super(r,[s.AgInputTextFieldSelector]),this.eFloatingFilterText=s.RefPlaceholder}init(e){this.params=e,this.eFloatingFilterText.setDisabled(!0).addGuiEventListener("click",()=>this.params.showParentFilter()),this.setParams(e)}setParams(e){const t=this.beans.colNames.getDisplayNameForColumn(e.column,"header",!0),i=this.getLocaleTextFunc();if(this.eFloatingFilterText.setInputAriaLabel(`${t} ${i("ariaFilterInput","Filter Input")}`),this.gos.get("enableFilterHandlers")){const t=e;this.updateFloatingFilterText(t.model)}}refresh(e){this.params=e,this.setParams(e)}onParentModelChanged(e){this.updateFloatingFilterText(e)}parentSetFilterInstance(e){this.params.parentFilterInstance(t=>{t instanceof o.SetFilter?e(t):(0,s._error)(248)})}updateFloatingFilterText(e){null==e?this.eFloatingFilterText.setValue(""):this.gos.get("enableFilterHandlers")?this.eFloatingFilterText.setValue(this.params.getHandler().getModelAsString?.(e)??""):this.parentSetFilterInstance(t=>{this.eFloatingFilterText.setValue(t.getModelAsString(e))})}}t.SetFloatingFilterComp=n},64366:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SetValueModel=void 0;const s=i(76624),o=i(79889);var r;!function(e){e[e.PROVIDED_LIST=0]="PROVIDED_LIST",e[e.PROVIDED_CALLBACK=1]="PROVIDED_CALLBACK",e[e.TAKEN_FROM_GRID_VALUES=2]="TAKEN_FROM_GRID_VALUES"}(r||(r={})),t.default=r;class n extends s.BeanStub{constructor(e,t,i,s,o){super(),this.clientSideValuesExtractor=e,this.caseFormat=t,this.createKey=i,this.isTreeDataOrGrouping=s,this.params=o,this.allValues=new Map,this.availableKeys=new Set,this.providedValues=null,this.initialised=!1}postConstruct(){const e=this.params,t=e.handlerParams.filterParams.values;this.updateParams(e),null==t?this.valuesType=r.TAKEN_FROM_GRID_VALUES:(this.valuesType=Array.isArray(t)?r.PROVIDED_LIST:r.PROVIDED_CALLBACK,this.providedValues=t),this.updateAllValues()}refresh(e){const t=e.handlerParams;if("colDef"!==t.source)return;const{values:i,suppressSorting:s}=t.filterParams,o=this.providedValues,n=this.params.handlerParams.filterParams.suppressSorting;this.params=e,this.updateParams(e),this.providedValues=i??null,this.providedValues===o&&s===n||(i&&0!==i.length?this.valuesType=Array.isArray(i)?r.PROVIDED_LIST:r.PROVIDED_CALLBACK:(this.valuesType=r.TAKEN_FROM_GRID_VALUES,this.providedValues=null),this.updateAllValues())}updateParams(e){const{handlerParams:{colDef:t,filterParams:{comparator:i,treeList:r,treeListPathGetter:n}},usingComplexObjects:a}=e,l=i??t.comparator,d=this.isTreeDataOrGrouping();let c;c=d&&!l?(0,o.createTreeDataOrGroupingComparator)():!r||n||l?([e,t],[i,s])=>l(t,s):([e,t],[i,o])=>(0,s._defaultComparator)(t,o),this.entryComparator=c,this.keyComparator=l??s._defaultComparator,this.compareByValue=!!(a&&l||d||r&&!n)}updateAllValues(){return this.allKeys=new s.AgPromise(e=>{switch(this.valuesType){case r.TAKEN_FROM_GRID_VALUES:this.getValuesFromRowsAsync().then(t=>e(this.processAllValues(t)));break;case r.PROVIDED_LIST:e(this.processAllValues(this.uniqueValues(this.validateProvidedValues(this.providedValues))));break;case r.PROVIDED_CALLBACK:{this.dispatchLocalEvent({type:"loadingStart"});const t=this.providedValues,{column:i,colDef:o}=this.params.handlerParams,r=(0,s._addGridCommonParams)(this.gos,{success:t=>{this.dispatchLocalEvent({type:"loadingEnd"}),e(this.processAllValues(this.uniqueValues(this.validateProvidedValues(t))))},colDef:o,column:i});window.setTimeout(()=>t(r),0);break}}}),this.allKeys.then(e=>{this.updateAvailableKeys(e??[]),this.initialised=!0}),this.allKeys}getAvailableValues(e){return this.sortKeys(this.getValuesFromRows(e))}overrideValues(e){return this.allKeys.then(()=>{this.valuesType=r.PROVIDED_LIST,this.providedValues=e})}refreshAvailable(){return new s.AgPromise(e=>{this.showAvailableOnly()?this.allKeys.then(t=>{const i=t??[];this.updateAvailableKeys(i),e(!0)}):e(!1)})}refreshAll(){return new s.AgPromise(e=>{this.allKeys.then(()=>{this.updateAllValues().then(()=>{e()})})})}isLoading(){return!this.initialised&&this.valuesType===r.PROVIDED_CALLBACK}isInitialised(){return this.initialised}getValueForFormatter(e){return this.initialised?this.allValues.get(e):e}getAvailableKeys(e){return this.initialised?e.filter(e=>this.availableKeys.has(e)):e}getParamsForValuesFromRows(e){if(!this.clientSideValuesExtractor)return void(0,s._error)(113);return e&&!this.params.handlerParams.filterParams.caseSensitive?this.allValues:void 0}getValuesFromRows(e){const t=this.getParamsForValuesFromRows(!0);return this.clientSideValuesExtractor?.extractUniqueValues(e,t)??null}getValuesFromRowsAsync(){const e=this.getParamsForValuesFromRows(!1);return this.clientSideValuesExtractor?.extractUniqueValuesAsync(()=>!0,e)??s.AgPromise.resolve(null)}processAllValues(e){const t=this.sortKeys(e);return this.allValues=e??new Map,t}uniqueValues(e){const t=new Map,i=new Set,{caseFormat:o,createKey:r}=this;for(const n of e??[]){const e=(0,s._makeNull)(n),a=r(e),l=o(a);i.has(l)||(i.add(l),t.set(a,e))}return t}validateProvidedValues(e){if(this.params.usingComplexObjects&&e?.length){const t=e[0];if(t&&"object"!=typeof t&&"function"!=typeof t){null==this.createKey(t)?(0,s._warn)(209):(0,s._warn)(210)}}return e}sortKeys(e){const t=e??new Map,i=this.params.handlerParams.filterParams;if(i.suppressSorting)return Array.from(t.keys());let s;return s=this.compareByValue?Array.from(t.entries()).sort(this.entryComparator).map(([e])=>e):Array.from(t.keys()).sort(this.keyComparator),i.excelMode&&t.has(null)&&(s=s.filter(e=>null!=e),s.push(null)),s}showAvailableOnly(){return this.valuesType===r.TAKEN_FROM_GRID_VALUES}updateAvailableKeys(e){const t=this.showAvailableOnly()?this.getAvailableValues(e=>this.params.handlerParams.doesRowPassOtherFilter(e)):e;this.availableKeys=new Set(t),window.setTimeout(()=>{this.isAlive()&&this.dispatchLocalEvent({type:"availableValuesChanged"})})}}t.SetValueModel=n},25546:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TreeSetDisplayValueModel=void 0;const s=i(76624),o=i(53335);t.TreeSetDisplayValueModel=class{constructor(e,t,i,s){this.formatter=e,this.treeListPathGetter=t,this.treeListFormatter=i,this.treeDataOrGrouping=s,this.allDisplayedItemsTree=new Map,this.activeDisplayedItemsFlat=[],this.selectAllItem={depth:0,filterPasses:!0,available:!0,treeKey:o.SET_FILTER_SELECT_ALL,children:this.allDisplayedItemsTree,expanded:!0,key:o.SET_FILTER_SELECT_ALL,parentTreeKeys:[]},this.addSelectionToFilterItem={depth:0,filterPasses:!0,available:!0,treeKey:o.SET_FILTER_ADD_SELECTION_TO_FILTER,expanded:!0,key:o.SET_FILTER_ADD_SELECTION_TO_FILTER,parentTreeKeys:[]}}updateParams(e,t){this.treeListPathGetter=e,this.treeListFormatter=t}updateDisplayedValuesToAllAvailable(e,t,i,s){"reload"===s?this.generateItemTree(e,t,i):"otherFilter"===s?(this.updateAvailable(i),this.updateExpandAll()):"miniFilter"===s&&(this.resetFilter(),this.updateExpandAll()),this.flattenItems()}updateDisplayedValuesToMatchMiniFilter(e,t,i,s,o,r){"reload"===r?this.generateItemTree(e,t,i):"otherFilter"===r&&this.updateAvailable(i),this.updateFilter(s,o),this.updateExpandAll(),this.flattenItems()}generateItemTree(e,t,i){const s=new Map;this.allDisplayedItemsTree=s;let o=!1;const r=this.getTreeListPathGetter(e,i);for(const n of t){const t=r(e(n))??[null],a=t.length;a>1&&(o=!0);const l=i.has(n);let d,c=s,u=[];for(let e=0;ee;let i=!1;for(const s of t){const t=e(s);if(t instanceof Date){i=!0;break}if(null!=t)break}return i?e=>(0,s._getDateParts)(e,!1):((0,s._warn)(211),e=>[String(e)])}flattenItems(){this.activeDisplayedItemsFlat=[];const e=t=>{for(const i of t.values())i.filterPasses&&i.available&&(this.activeDisplayedItemsFlat.push(i),i.children&&i.expanded&&e(i.children))};e(this.allDisplayedItemsTree)}resetFilter(){const e=t=>{const i=t.children;if(i)for(const t of i.values())e(t);t.filterPasses=!0};for(const t of this.allDisplayedItemsTree.values())e(t)}updateFilter(e,t){const i=i=>!!i.available&&(null==i.treeKey?t:e(this.formatter(this.treeListFormatter?this.treeListFormatter(i.treeKey,i.depth,i.parentTreeKeys):i.treeKey)));for(const e of this.allDisplayedItemsTree.values())this.recursiveItemCheck(e,!1,i,"filterPasses")}getDisplayedValueCount(){return this.activeDisplayedItemsFlat.length}getDisplayedItem(e){return this.activeDisplayedItemsFlat[e]}getSelectAllItem(){return this.selectAllItem}getAddSelectionToFilterItem(){return this.addSelectionToFilterItem}getDisplayedKeys(){const e=[];return this.forEachDisplayedKey(t=>e.push(t)),e}forEachDisplayedKey(e){const t=(i,s)=>{const o=i.children;if(o){if(!i.expanded||!s)for(const e of o.values())e.filterPasses&&t(e,!1)}else e(i.key)};for(const e of this.activeDisplayedItemsFlat)t(e,!0)}someDisplayedKey(e){const t=(i,s)=>{const o=i.children;if(!o)return e(i.key);if(!i.expanded||!s){for(const e of o.values())if(e.filterPasses&&t(e,!1))return!0;return!1}return!1};return this.activeDisplayedItemsFlat.some(e=>t(e,!0))}hasGroups(){return this.groupsExist}refresh(){this.updateExpandAll(),this.flattenItems()}updateExpandAll(){const e=(t,i,s)=>{for(const o of t.values()){if(!o.filterPasses||!o.available||!o.children)continue;if(i=i||!!o.expanded,s=s||!o.expanded,i&&s)return;const t=e(o.children,i,s);if(void 0===t)return;t?i=!0:s=!0}return i&&s?void 0:i},t=this.getSelectAllItem();t.expanded=e(t.children,!1,!1)}recursiveItemCheck(e,t,i,s){let o=!1;const r=e.children;if(r)for(const n of r.values()){const r=this.recursiveItemCheck(n,t||i(e),i,s);o=o||r}const n=t||o||i(e);return e[s]=n,n}updateAvailable(e){const t=t=>e.has(t.key);for(const e of this.allDisplayedItemsTree.values())this.recursiveItemCheck(e,!1,t,"available")}}},69172:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.AgHorizontalResize=void 0;const s=i(76624);class o extends s.Component{constructor(){super({tag:"div",cls:"ag-tool-panel-horizontal-resize"}),this.minWidth=100,this.maxWidth=null}postConstruct(){const e=this.beans.horizontalResizeSvc.addResizeBar({eResizeBar:this.getGui(),dragStartPixels:1,onResizeStart:this.onResizeStart.bind(this),onResizing:this.onResizing.bind(this),onResizeEnd:this.onResizeEnd.bind(this)});this.addDestroyFunc(e),this.inverted=this.gos.get("enableRtl")}dispatchResizeEvent(e,t,i){this.eventSvc.dispatchEvent({type:"toolPanelSizeChanged",width:i,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 i=this.inverted?-1:1;let s=Math.max(this.minWidth,Math.floor(this.startingWidth-e*i));null!=this.maxWidth&&(s=Math.min(this.maxWidth,s)),this.elementToResize.style.width=`${s}px`,this.dispatchResizeEvent(!1,t,s)}}t.AgHorizontalResize=o},10911:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.agSideBarCSS=void 0,t.agSideBarCSS='.ag-tool-panel-wrapper{display:flex;overflow:hidden auto;-webkit-user-select:none;-moz-user-select:none;user-select:none;width:var(--ag-side-bar-panel-width)}.ag-tool-panel-external{display:flex;flex-direction:row}:where(.ag-tool-panel-external) .ag-tool-panel-wrapper{flex-grow:1}.ag-select-agg-func-item{align-items:center;display:flex;flex:1 1 auto;flex-flow:row nowrap;height:100%;overflow:hidden;position:relative;text-overflow:ellipsis;white-space:nowrap}.ag-tool-panel-horizontal-resize{cursor:ew-resize;height:100%;position:absolute;top:0;width:5px;z-index:1}.ag-side-bar{background-color:var(--ag-side-bar-background-color);display:flex;flex-direction:row-reverse;position:relative}:where(.ag-ltr) :where(.ag-side-bar-left) .ag-tool-panel-horizontal-resize{right:-3px}:where(.ag-rtl) :where(.ag-side-bar-left) .ag-tool-panel-horizontal-resize{left:-3px}:where(.ag-ltr) :where(.ag-side-bar-right) .ag-tool-panel-horizontal-resize{left:-3px}:where(.ag-rtl) :where(.ag-side-bar-right) .ag-tool-panel-horizontal-resize{right:-3px}.ag-side-bar-left{flex-direction:row;order:-1}.ag-side-buttons{background-color:var(--ag-side-button-bar-background-color);padding-top:var(--ag-side-button-bar-top-padding);position:relative}.ag-side-button{background-color:var(--ag-side-button-background-color);border-bottom:var(--ag-side-button-border);border-top:var(--ag-side-button-border);color:var(--ag-side-button-text-color);margin-top:-1px;position:relative}.ag-side-button:before{background-color:transparent;bottom:0;content:"";display:block;position:absolute;top:0;transition:background-color var(--ag-side-button-selected-underline-transition-duration);width:var(--ag-side-button-selected-underline-width)}:where(.ag-ltr) .ag-side-button:before{left:0}:where(.ag-rtl) .ag-side-button:before{right:0}.ag-side-button:hover{background-color:var(--ag-side-button-hover-background-color);color:var(--ag-side-button-hover-text-color)}.ag-side-button.ag-selected{background-color:var(--ag-side-button-selected-background-color);border-bottom:var(--ag-side-button-selected-border);border-top:var(--ag-side-button-selected-border);color:var(--ag-side-button-selected-text-color)}.ag-side-button.ag-selected:before{background-color:var(--ag-side-button-selected-underline-color)}.ag-side-button-button{align-items:center;display:flex;flex-direction:column;gap:var(--ag-spacing);position:relative;white-space:nowrap;width:100%;&:focus{box-shadow:none}}:where(.ag-ltr) .ag-side-button-button{padding:var(--ag-side-button-vertical-padding) var(--ag-side-button-right-padding) var(--ag-side-button-vertical-padding) var(--ag-side-button-left-padding)}:where(.ag-rtl) .ag-side-button-button{padding:var(--ag-side-button-vertical-padding) var(--ag-side-button-left-padding) var(--ag-side-button-vertical-padding) var(--ag-side-button-right-padding)}.ag-side-button-button:focus-visible{box-shadow:inset var(--ag-focus-shadow)}.ag-side-button-label{writing-mode:vertical-lr}@media (resolution <= 1.5x){.ag-side-button-label{font-family:"Segoe UI",var(--ag-font-family)}:where(.ag-ltr) .ag-side-button-label{transform:rotate(.05deg)}:where(.ag-rtl) .ag-side-button-label{transform:rotate(-.05deg)}}:where(.ag-ltr) .ag-side-bar-left,:where(.ag-rtl) .ag-side-bar-right{border-right:var(--ag-side-panel-border);:where(.ag-tool-panel-wrapper){border-left:var(--ag-side-panel-border)}}:where(.ag-ltr) .ag-side-bar-right,:where(.ag-rtl) .ag-side-bar-left{border-left:var(--ag-side-panel-border);:where(.ag-tool-panel-wrapper){border-right:var(--ag-side-panel-border)}}'},3814:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.AgSideBarSelector=void 0;const s=i(76624),o=i(46242),r=i(10911),n=i(47861),a=i(48124),l=i(96443),d={tag:"div",cls:"ag-side-bar ag-unselectable",children:[{tag:"ag-side-bar-buttons",ref:"sideBarButtons"}]};class c extends s.Component{constructor(){super(d,[n.AgSideBarButtonsSelector]),this.sideBarButtons=s.RefPlaceholder,this.toolPanelWrappers=[],this.registerCSS(r.agSideBarCSS)}postConstruct(){this.sideBarButtons.addEventListener("sideBarButtonClicked",this.onToolPanelButtonClicked.bind(this));const{beans:e,gos:t}=this,{sideBar:i}=t.get("initialState")??{};this.setSideBarDef({sideBarDef:(0,a.parseSideBarDef)(t.get("sideBar")),sideBarState:i}),this.addManagedPropertyListener("sideBar",()=>this.setState()),e.sideBar.comp=this;const o=this.getFocusableElement();this.createManagedBean(new s.ManagedFocusFeature(o,{onTabKeyDown:this.onTabKeyDown.bind(this),handleKeyDown:this.handleKeyDown.bind(this)})),(0,s._addFocusableContainerListener)(e,this,o),this.addManagedPropertyListener("enableAdvancedFilter",this.onAdvancedFilterChanged.bind(this))}onTabKeyDown(e){if(e.defaultPrevented)return;const{beans:t,sideBarButtons:i}=this,r=this.getGui(),n=i.getGui(),a=(0,s._getActiveDomElement)(t),l=r.querySelector(".ag-tool-panel-wrapper:not(.ag-hidden)"),d=e.target,c=e.shiftKey;if(!l)return(0,s._focusNextGridCoreContainer)(t,c)?(e.preventDefault(),!0):(0,s._focusNextGridCoreContainer)(t,c,!0);if(n.contains(a))return void((0,s._focusInto)(l,c)&&e.preventDefault());if(!c)return;let u=null;l.contains(a)?u=(0,s._findNextFocusableElement)(t,l,void 0,!0):(0,o.isTargetUnderManagedComponent)(l,d)&&(u=(0,o.findFocusableElementBeforeTabGuard)(l,d)),u||(u=n.querySelector(".ag-selected button"),u=(0,s._isVisible)(u)?u:null),u&&u!==e.target&&(e.preventDefault(),u.focus())}handleKeyDown(e){const t=(0,s._getActiveDomElement)(this.beans),i=this.sideBarButtons;if(!i.getGui().contains(t))return;const o=i.getGui(),r=Array.prototype.slice.call(o.querySelectorAll(".ag-side-button")),n=r.findIndex(e=>e.contains(t));let a=null;switch(e.key){case s.KeyCode.LEFT:case s.KeyCode.UP:a=Math.max(0,n-1);break;case s.KeyCode.RIGHT:case s.KeyCode.DOWN:a=Math.min(n+1,r.length-1)}if(null===a)return;const l=r[a].querySelector("button");l&&(l.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:i}){if(this.setDisplayed(!1),this.sideBar=e,e&&this.sideBarButtons.setDisplayed(!e.hideButtons),e?.toolPanels){const s=e.toolPanels;if(this.createToolPanelsAndSideButtons(s,t,i),!this.toolPanelWrappers.length)return;const o=t?t.visible:!e.hiddenByDefault;if(this.setDisplayed(o),this.setSideBarPosition(t?t.position:e.position),o)if(t){const{openToolPanel:e}=t;e&&this.openToolPanel(e,"sideBarInitializing")}else this.openToolPanel(e.defaultToolPanel,"sideBarInitializing")}}getDef(){return this.sideBar}setSideBarPosition(e){e||(e="right"),this.position=e;const t="left"===e,i=t?"right":"left";this.toggleCss("ag-side-bar-left",t),this.toggleCss("ag-side-bar-right",!t);for(const e of this.toolPanelWrappers)e.setResizerSizerSide(i);return this.dispatchSideBarUpdated(),this}setDisplayed(e,t){super.setDisplayed(e,t),this.dispatchSideBarUpdated()}getState(){const e={};for(const t of this.toolPanelWrappers)e[t.getToolPanelId()]=t.getToolPanelInstance()?.getState?.();return{visible:this.isDisplayed(),position:this.position,openToolPanel:this.openedItem(),toolPanels:e}}createToolPanelsAndSideButtons(e,t,i){for(const s of e)this.createToolPanelAndSideButton(s,t?.toolPanels?.[s.id],i?.[s.id])}validateDef(e){const{id:t,toolPanel:i}=e;return null==t?((0,s._warn)(212),!1):!u(i)||!this.beans.filterManager?.isAdvFilterEnabled()||((0,s._warn)(213),!1)}createToolPanelAndSideButton(e,t,i){if(!this.validateDef(e))return void this.destroyBean(i);let o;if(i)o=i;else{o=this.createBean(new l.ToolPanelWrapper);if(!o.setToolPanelDef(e,(0,s._addGridCommonParams)(this.gos,{initialState:t,onStateUpdated:()=>this.dispatchSideBarUpdated()})))return}o.setDisplayed(!1);const r=o.getGui(),n=e.parent instanceof HTMLElement?e.parent:this;n===e.parent&&(this.beans.environment.applyThemeClasses(n,["ag-external","ag-tool-panel-external"]),r.classList.add(this.gos.get("enableRtl")?"ag-rtl":"ag-ltr")),n.appendChild(r),this.toolPanelWrappers.push(o);const a=this.sideBarButtons.addButtonComp(e);(0,s._setAriaControlsAndLabel)(a.eToggleButton,r)}refresh(){for(const e of this.toolPanelWrappers)e.refresh()}renderToolPanelUnderParent(e,t){const i=this.sideBar?.toolPanels?.find(t=>("string"==typeof t?t:t.id)===e);if(i){const s=(0,a.parseOneComponent)(i);if(s){const i=this.gos.get("initialState")?.sideBar?.toolPanels?.[s.id];s.parent=t;const o=this.toolPanelWrappers.find(t=>t.getToolPanelId()===e);this.createToolPanelAndSideButton(s,i,o)}}}openToolPanel(e,t="api",i){i&&e&&this.renderToolPanelUnderParent(e,i);const s=this.openedItem();if(s===e)return;for(const t of this.toolPanelWrappers){const i=e===t.getToolPanelId();t.setDisplayed(i)}s!==this.openedItem()&&(this.sideBarButtons.setActiveButton(e),this.raiseToolPanelVisibleEvent(e,s??void 0,t))}getToolPanelInstance(e){const t=this.toolPanelWrappers.filter(t=>t.getToolPanelId()===e)[0];if(t)return t.getToolPanelInstance();(0,s._warn)(214,{key:e})}raiseToolPanelVisibleEvent(e,t,i){const s=!!e&&!!t,o=this.eventSvc;t&&o.dispatchEvent({type:"toolPanelVisibleChanged",source:i,key:t,visible:!1,switchingToolPanel:s}),e&&o.dispatchEvent({type:"toolPanelVisibleChanged",source:i,key:e,visible:!0,switchingToolPanel:s})}close(e="api"){this.openToolPanel(void 0,e)}isToolPanelShowing(){return!!this.openedItem()}openedItem(){let e=null;for(const t of this.toolPanelWrappers)t.isDisplayed()&&(e=t.getToolPanelId());return e}setState(e){const t=(0,a.parseSideBarDef)(this.gos.get("sideBar")),i={};t&&this.sideBar&&t.toolPanels?.forEach(t=>{const{id:o}=t;if(!o)return;const r=this.sideBar.toolPanels?.find(e=>e.id===o);if(!r||t.toolPanel!==r.toolPanel)return;const n=this.toolPanelWrappers.find(e=>e.getToolPanelId()===o);if(!n)return;const a=(0,s._addGridCommonParams)(this.gos,{...t.toolPanelParams??{},initialState:e?.toolPanels?.[o],onStateUpdated:()=>this.dispatchSideBarUpdated()}),l=n.getToolPanelInstance()?.refresh(a);!0===l&&(this.toolPanelWrappers=this.toolPanelWrappers.filter(e=>e!==n),(0,s._removeFromParent)(n.getGui()),i[o]=n)}),this.clearDownUi(),this.setSideBarDef({sideBarDef:t,sideBarState:e,existingToolPanelWrappers:i})}dispatchSideBarUpdated(){this.eventSvc.dispatchEvent({type:"sideBarUpdated"})}destroyToolPanelWrappers(){for(const e of this.toolPanelWrappers)(0,s._removeFromParent)(e.getGui()),this.destroyBean(e);this.toolPanelWrappers.length=0}onAdvancedFilterChanged(){const e=this.sideBar?.toolPanels?.some(e=>u("string"==typeof e?e:e.toolPanel));e&&this.setState()}destroy(){this.destroyToolPanelWrappers(),super.destroy()}}function u(e){return"agFiltersToolPanel"===e||"agNewFiltersToolPanel"===e}t.AgSideBarSelector={selector:"AG-SIDE-BAR",component:c}},47861:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.AgSideBarButtonsSelector=t.AgSideBarButtons=void 0;const s=i(76624),o=i(53945),r={tag:"div",cls:"ag-side-buttons",role:"tablist"};class n extends s.Component{constructor(){super(r),this.buttonComps=[]}postConstruct(){this.addManagedElementListeners(this.getFocusableElement(),{keydown:this.handleKeyDown.bind(this)})}handleKeyDown(e){e.key===s.KeyCode.TAB&&e.shiftKey&&((0,s._focusNextGridCoreContainer)(this.beans,!0)?e.preventDefault():(0,s._stopPropagationForAgGrid)(e))}setActiveButton(e){for(const t of this.buttonComps)t.setSelected(e===t.getToolPanelId())}addButtonComp(e){const t=this.createBean(new o.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,s._clearElement)(this.getGui())}destroy(){this.clearButtons(),super.destroy()}}t.AgSideBarButtons=n,t.AgSideBarButtonsSelector={selector:"AG-SIDE-BAR-BUTTONS",component:n}},49705:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.mergeLeafPathTrees=t.isColGroupDef=void 0;const s=i(76624);function o(e){return!!e&&void 0!==e.children}function r(e){return o(e)?e.groupId:e.colId}function n(e,t,i){if(!o(e))return!0;const a=e,l=i;if(((e,t)=>{const i=e.children.map(r).includes(r(t)),o=(0,s._last)(e.children),n=o&&r(o)!==r(t);return i&&n})(a,l))return a.children.push(l),!0;if(a.groupId===t){if(!a.children.map(r).includes(r(l)))return a.children.push(l),!0}for(let e=a.children.length-1;e>=0&&!n(a.children[e],t,i);e--);return!1}t.isColGroupDef=o,t.mergeLeafPathTrees=function(e){const t=(e,t)=>o(e)&&o(t)&&r(e)===r(t),i=(e,t)=>{if(!o(t))return e;const s=e,r=t;if(r.children&&r.groupId){if(n(s,r.groupId,r.children[0]))return s}for(const e of r.children)i(s,e);return s},s=[];for(let o=1;o<=e.length;o++){const r=e[o-1],n=e[o];t(r,n)?e[o]=i(r,n):s.push(r)}return s}},26092:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.syncLayoutWithGrid=t.toolPanelCreateColumnTree=void 0;const s=i(76624),o=i(49705);t.toolPanelCreateColumnTree=function(e,t){const i=[],r=(t,n)=>{if((0,o.isColGroupDef)(t)){const e=t,i=void 0!==e.groupId?e.groupId:e.headerName,o=new s.AgProvidedColumnGroup(e,i,!1,n),a=[];for(const t of e.children){const e=r(t,n+1);e&&a.push(e)}return o.setChildren(a),o}{const s=t,o=s.colId?s.colId:s.field,r=e.getColDefCol(o);return r||i.push(s),r}},n=[];for(const e of t){const t=r(e,0);t&&n.push(t)}return i.length>0&&(0,s._warn)(217,{invalidColIds:i}),n},t.syncLayoutWithGrid=function(e,t){const i=function(e){const t=(e,i)=>{let o;if((0,s.isProvidedColumnGroup)(e))if(e.isPadding())o=i;else{const t=Object.assign({},e.getColGroupDef());t.groupId=e.getGroupId(),t.children=[i],o=t}else{const t=Object.assign({},e.getColDef());t.colId=e.getColId(),o=t}const r=e.getOriginalParent();return r?t(r,o):o},i=e.getCols();return i.filter(e=>{const t=e.getColDef();return e.isPrimary()&&!t.showRowGroup}).map(e=>t(e,e.getColDef()))}(e);t((0,o.mergeLeafPathTrees)(i))}},92024:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.getSideBar=t.getToolPanelInstance=t.isToolPanelShowing=t.refreshToolPanel=t.getOpenedToolPanel=t.closeToolPanel=t.openToolPanel=t.setSideBarPosition=t.setSideBarVisible=t.isSideBarVisible=void 0;const s=i(76624);t.isSideBarVisible=function(e){return e.sideBar?.comp.isDisplayed()??!1},t.setSideBarVisible=function(e,t){e.sideBar?.comp.setDisplayed(t)},t.setSideBarPosition=function(e,t){e.sideBar?.comp.setSideBarPosition(t)},t.openToolPanel=function(e,t,i){e.sideBar?.comp.openToolPanel(t,"api",i)},t.closeToolPanel=function(e){e.sideBar?.comp.close("api")},t.getOpenedToolPanel=function(e){return e.sideBar?.comp.openedItem()??null},t.refreshToolPanel=function(e){e.sideBar?.comp.refresh()},t.isToolPanelShowing=function(e){return e.sideBar?.comp.isToolPanelShowing()??!1},t.getToolPanelInstance=function(e,t){const i=e.sideBar?.comp.getToolPanelInstance(t);return(0,s._unwrapUserComp)(i)},t.getSideBar=function(e){return e.sideBar?.comp.getDef()}},53945:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SideBarButtonComp=void 0;const s=i(76624),o={tag:"div",cls:"ag-side-button",role:"presentation",children:[{tag:"button",ref:"eToggleButton",cls:"ag-button ag-side-button-button",role:"tab",attrs:{type:"button",tabindex:"-1","aria-expanded":"false"},children:[{tag:"div",ref:"eIconWrapper",cls:"ag-side-button-icon-wrapper",attrs:{"aria-hidden":"true"}},{tag:"span",ref:"eLabel",cls:"ag-side-button-label"}]}]};class r extends s.Component{constructor(e){super(),this.toolPanelDef=e,this.eToggleButton=s.RefPlaceholder,this.eIconWrapper=s.RefPlaceholder,this.eLabel=s.RefPlaceholder}getToolPanelId(){return this.toolPanelDef.id}postConstruct(){this.setTemplate(o,[]),this.setLabel(),this.setIcon(),this.addManagedElementListeners(this.eToggleButton,{click:this.onButtonPressed.bind(this)}),this.eToggleButton.setAttribute("id",`ag-${this.getCompId()}-button`)}setLabel(){const e=this.toolPanelDef,t=this.getLocaleTextFunc()(e.labelKey,e.labelDefault);this.eLabel.textContent=t}setIcon(){this.eIconWrapper.insertAdjacentElement("afterbegin",(0,s._createIconNoSpan)(this.toolPanelDef.iconKey,this.beans))}onButtonPressed(){this.dispatchLocalEvent({type:"toggleButtonClicked"})}setSelected(e){this.toggleCss("ag-selected",e),(0,s._setAriaExpanded)(this.eToggleButton,e)}}t.SideBarButtonComp=r},48124:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.parseOneComponent=t.parseSideBarDef=void 0;const s=i(76624),o={id:"columns",labelDefault:"Columns",labelKey:"columns",iconKey:"columnsToolPanel",toolPanel:"agColumnsToolPanel"},r={id:"filters",labelDefault:"Filters",labelKey:"filters",iconKey:"filtersToolPanel",toolPanel:"agFiltersToolPanel"},n={columns:o,filters:r,"filters-new":{id:"filters-new",labelDefault:"Filters",labelKey:"filters",iconKey:"filtersToolPanel",toolPanel:"agNewFiltersToolPanel"}};function a(e){const t=[];return e?(e.forEach(e=>{const i=l(e);i&&t.push(i)}),t):t}function l(e){return"string"!=typeof e?e:n[e]?n[e]:((0,s._warn)(215,{key:e,defaultByKey:n}),null)}t.parseSideBarDef=function e(t){if(t){if(!0===t)return{toolPanels:[o,r],defaultToolPanel:"columns"};if("string"==typeof t)return e([t]);if(Array.isArray(t)){const e=[];for(const i of t){const t=n[i];t?e.push(t):(0,s._warn)(215,{key:i,defaultByKey:n})}if(0===e.length)return;return{toolPanels:e,defaultToolPanel:e[0].id}}return{toolPanels:a(t.toolPanels),defaultToolPanel:t.defaultToolPanel,hiddenByDefault:t.hiddenByDefault,position:t.position,hideButtons:t.hideButtons}}},t.parseOneComponent=l},26358:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SideBarModule=void 0;const s=i(76624),o=i(39206),r=i(19586),n=i(92024),a=i(56191);t.SideBarModule={moduleName:"SideBar",version:r.VERSION,beans:[a.SideBarService],apiFunctions:{isSideBarVisible:n.isSideBarVisible,setSideBarVisible:n.setSideBarVisible,setSideBarPosition:n.setSideBarPosition,openToolPanel:n.openToolPanel,closeToolPanel:n.closeToolPanel,getOpenedToolPanel:n.getOpenedToolPanel,refreshToolPanel:n.refreshToolPanel,isToolPanelShowing:n.isToolPanelShowing,getToolPanelInstance:n.getToolPanelInstance,getSideBar:n.getSideBar},dependsOn:[o.EnterpriseCoreModule,s._HorizontalResizeModule]}},56191:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SideBarService=void 0;const s=i(76624),o=i(3814);class r extends s.BeanStub{constructor(){super(...arguments),this.beanName="sideBar"}getSelector(){return o.AgSideBarSelector}}t.SideBarService=r},96443:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ToolPanelWrapper=void 0;const s=i(76624),o=i(69172);const r={name:"toolPanel",optionalMethods:["refresh","getState"]},n={tag:"div",cls:"ag-tool-panel-wrapper",role:"tabpanel"};class a extends s.Component{constructor(){super(n)}postConstruct(){const e=this.getGui(),t=this.resizeBar=this.createManagedBean(new o.AgHorizontalResize);e.setAttribute("id",`ag-${this.getCompId()}`),t.elementToResize=e,this.appendChild(t)}getToolPanelId(){return this.toolPanelId}setToolPanelDef(e,t){const{id:i,minWidth:s,maxWidth:o,width:n}=e;this.toolPanelId=i,this.width=n;const a=function(e,t,i){return e.getCompDetails(t,r,void 0,i,!0)}(this.beans.userCompFactory,e,t);if(null==a)return!1;const l=a.newAgStackInstance();this.params=a.params,l.then(this.setToolPanelComponent.bind(this));const d=this.resizeBar;return null!=s&&(d.minWidth=s),null!=o&&(d.maxWidth=o),!0}setToolPanelComponent(e){this.toolPanelCompInstance=e,this.appendChild(e.getGui()),this.addDestroyFunc(()=>{this.destroyBean(e)});const t=this.width;t&&(this.getGui().style.width=`${t}px`)}getToolPanelInstance(){return this.toolPanelCompInstance}setResizerSizerSide(e){const t="left"===e,i=this.gos.get("enableRtl")?t:!t;this.resizeBar.inverted=i}refresh(){this.toolPanelCompInstance?.refresh(this.params)}}t.ToolPanelWrapper=a},44087:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.sparklineCSS=void 0,t.sparklineCSS=".ag-sparkline-wrapper{height:100%;line-height:normal;position:absolute;top:0;width:100%}"},2437:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SparklineCellRenderer=void 0;const s=i(76624),o=i(96464);function r(e){return{content:`${e.xValue} ${e.yValue}`}}function n(e){return{content:`${e.yValue}`}}class a extends s.Component{constructor(){super({tag:"div",cls:"ag-sparkline-wrapper",children:[{tag:"span",ref:"eSparkline"}]}),this.eSparkline=s.RefPlaceholder,this.cachedWidth=0,this.cachedHeight=0,this.dataRef=[],this.processedData=[]}postConstruct(){this.env=this.beans.environment,this.addManagedPropertyListeners(["chartThemeOverrides","chartThemes","styleNonce"],()=>this.refresh(this.params))}createListener(e=!0){return()=>this.updateSize(this.params?.column?.getActualWidth()??0,(this.params?.node.rowHeight??0)-2,e)}initGridObserver(){const e=this.createListener(),t=this.createListener(!1),i=this.params?.column,s=this.params?.node;i.__addEventListener("columnStateUpdated",e),s.__addEventListener("heightChanged",e),this.addDestroyFunc(()=>{i.__removeEventListener("columnStateUpdated",e),s.__removeEventListener("heightChanged",e)}),t()}updateSize(e,t,i=!0){if((e-=this.env.getCellPadding())!==this.cachedWidth||t!==this.cachedHeight){this.cachedWidth=e,this.cachedHeight=t;const o=this.refresh.bind(this);i?(0,s._batchCall)(()=>this.isAlive()&&o()):o()}}init(e){this.params=e,this.initGridObserver()}refresh(e=this.params){var t;this.params=e;const i=this.cachedWidth,s=this.cachedHeight,o=this.gos.get("styleNonce");if(!this.sparklineInstance&&e&&i>0&&s>0){if(this.sparklineOptions={container:this.eSparkline,width:i,height:s,...e.sparklineOptions,...o?{styleNonce:o}:{},data:this.processData(e.value)},(t=this.sparklineOptions).type??(t.type="line"),this.sparklineOptions.tooltip?.renderer)this.wrapTooltipRenderer();else{const e=this.getDefaultTooltipRenderer();this.sparklineOptions.tooltip={...this.sparklineOptions.tooltip,renderer:e}}const r=this.sparklineOptions?.theme;return"bar"===this.sparklineOptions.type&&this.sparklineOptions.itemStyler?this.wrapItemStyler(this.sparklineOptions):r?.overrides?.bar?.series?.itemStyler&&this.wrapItemStyler(r.overrides.bar.series),this.sparklineInstance=e.createSparkline(this.sparklineOptions),!0}return!!this.sparklineInstance&&(this.sparklineInstance.update({...this.sparklineOptions,data:this.processData(e?.value),width:i,height:s,...o?{styleNonce:o}:{}}),!0)}processData(e){return e?.length?(this.dataRef!==e&&(this.dataRef=e,this.processedData=Array.isArray(e[0])?e.filter(e=>null!=e):e),this.processedData):e??[]}createContext(){return{data:this.params?.data,cellData:this.params?.value}}getDefaultTooltipRenderer(e){const t=e?.title,i=this.sparklineOptions.xKey,s=Array.isArray(this.sparklineOptions.data?.[0]);return!t&&(i||s)?r:n}wrapItemStyler(e){e.itemStyler=(0,o.wrapFn)(e.itemStyler,(e,t)=>e({...t,context:this.createContext()}))}wrapTooltipRenderer(){this.sparklineOptions.tooltip={...this.sparklineOptions.tooltip,renderer:(0,o.wrapFn)(this.sparklineOptions.tooltip.renderer,(e,t)=>{const i=e({...t,context:this.createContext()});return"string"==typeof i?i:{...this.getDefaultTooltipRenderer(i)(t),...i}})}}destroy(){super.destroy(),this.sparklineInstance?.destroy()}}t.SparklineCellRenderer=a},22949:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SparklinesModule=void 0;const s=i(76624),o=i(39206),r=i(19586),n=i(44087),a=i(2437),l="Sparklines";t.SparklinesModule={moduleName:l,version:r.VERSION,dependsOn:[o.EnterpriseCoreModule],validate:()=>({isValid:!1,message:(0,s._preInitErrMsg)(258)}),with:e=>(e.setup(),{moduleName:l,version:r.VERSION,dependsOn:[o.EnterpriseCoreModule],css:[n.sparklineCSS],userComponents:{agSparklineCellRenderer:{classImp:a.SparklineCellRenderer,params:{createSparkline:e.createSparkline}}},validate:()=>({isValid:!0})})}},96464:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.wrapFn=void 0;const i=Symbol("WrappedFunctionMarker");t.wrapFn=(e,t)=>{if(e[i])return e;const s=(...i)=>t(e,...i);return s[i]=i,s}},72875:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.agStatusBarCSS=void 0,t.agStatusBarCSS=".ag-status-bar{border-top:var(--ag-footer-row-border);display:flex;justify-content:space-between;line-height:1.5;overflow:hidden;padding-left:calc(var(--ag-spacing)*4);padding-right:calc(var(--ag-spacing)*4)}.ag-status-panel,:where(.ag-status-panel.ag-status-panel-aggregations .ag-status-name-value){display:inline-flex}.ag-status-name-value{color:var(--ag-status-bar-label-color);font-weight:var(--ag-status-bar-label-font-weight);margin-left:var(--ag-spacing);margin-right:var(--ag-spacing);padding-bottom:var(--ag-widget-container-vertical-padding);padding-top:var(--ag-widget-container-vertical-padding);white-space:nowrap}.ag-status-name-value-value{color:var(--ag-status-bar-value-color);font-weight:var(--ag-status-bar-value-font-weight)}.ag-status-bar-left{display:inline-flex}.ag-status-bar-center{display:inline-flex;text-align:center}.ag-status-bar-right{display:inline-flex}"},41866:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.AgStatusBarSelector=void 0;const s=i(76624),o=i(72875);function r(e,t,i){return e.getCompDetails(t,n,void 0,i,!0)}const n={name:"statusPanel",optionalMethods:["refresh"]},a={agAggregationComponent:{rowModels:["clientSide","serverSide"],warnArgs:[221]},agFilteredRowCountComponent:{rowModels:["clientSide"],warnArgs:[222]},agSelectedRowCountComponent:{rowModels:["clientSide","serverSide"],warnArgs:[223]},agTotalAndFilteredRowCountComponent:{rowModels:["clientSide"],warnArgs:[224]},agTotalRowCountComponent:{rowModels:["clientSide"],warnArgs:[225]}},l={tag:"div",cls:"ag-status-bar",children:[{tag:"div",ref:"eStatusBarLeft",cls:"ag-status-bar-left",role:"status"},{tag:"div",ref:"eStatusBarCenter",cls:"ag-status-bar-center",role:"status"},{tag:"div",ref:"eStatusBarRight",cls:"ag-status-bar-right",role:"status"}]};class d extends s.Component{wireBeans(e){this.userCompFactory=e.userCompFactory,this.statusBarSvc=e.statusBarSvc}constructor(){super(l),this.updateQueued=!1,this.panelsPromise=s.AgPromise.resolve(),this.eStatusBarLeft=s.RefPlaceholder,this.eStatusBarCenter=s.RefPlaceholder,this.eStatusBarRight=s.RefPlaceholder,this.compDestroyFunctions={},this.registerCSS(o.agStatusBarCSS)}postConstruct(){this.processStatusPanels(new Map),this.addManagedPropertyListeners(["statusBar"],this.handleStatusBarChanged.bind(this))}getValidPanels(){const e=this.gos,t=e.get("statusBar")?.statusPanels;return t?t.filter(t=>{const{rowModels:i,warnArgs:o}=a[t.statusPanel]??{};return!i||(!!i.includes(e.get("rowModelType"))||((0,s._warn)(...o),!1))}):t}processStatusPanels(e){const t=this.getValidPanels();if(t){const i=t.filter(e=>"left"===e.align),o=t.filter(e=>"center"===e.align),r=t.filter(e=>!e.align||"right"===e.align);this.panelsPromise=s.AgPromise.all([this.createAndRenderComponents(i,this.eStatusBarLeft,e),this.createAndRenderComponents(o,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.getValidPanels(),t=Array.isArray(e)&&e.length>0;this.setDisplayed(t);const i=new Map;if(t)for(const t of e){const e=t.key??t.statusPanel,o=this.statusBarSvc.getStatusPanel(e);if(o?.refresh){const r=(0,s._addGridCommonParams)(this.gos,{...t.statusPanelParams??{},key:e});o.refresh(r)&&(i.set(e,o),delete this.compDestroyFunctions[e],(0,s._removeFromParent)(o.getGui()))}}this.resetStatusBar(),t&&this.processStatusPanels(i)}resetStatusBar(){(0,s._clearElement)(this.eStatusBarLeft),(0,s._clearElement)(this.eStatusBarCenter),(0,s._clearElement)(this.eStatusBarRight),this.destroyComponents(),this.statusBarSvc.unregisterAllComponents()}destroy(){this.destroyComponents(),super.destroy()}destroyComponents(){for(const e of Object.values(this.compDestroyFunctions))e();this.compDestroyFunctions={}}createAndRenderComponents(e,t,i){const o=[];for(const t of e){const e=t.key||t.statusPanel,n=i.get(e);let a;if(n)a=s.AgPromise.resolve(n);else{const i=r(this.userCompFactory,t,(0,s._addGridCommonParams)(this.gos,{key:e}));if(null==i)continue;a=i.newAgStackInstance()}o.push({key:e,promise:a})}return s.AgPromise.all(o.map(e=>e.promise)).then(()=>{for(const e of o)e.promise.then(i=>{const s=()=>{this.destroyBean(i)};this.isAlive()?(this.statusBarSvc.registerStatusPanel(e.key,i),t.appendChild(i.getGui()),this.compDestroyFunctions[e.key]=s):s()})})}}t.AgStatusBarSelector={selector:"AG-STATUS-BAR",component:d}},43910:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.AgNameValueSelector=t.AgNameValue=void 0;const s=i(76624),o={tag:"div",cls:"ag-status-name-value",children:[{tag:"span",ref:"eLabel"},": ",{tag:"span",ref:"eValue",cls:"ag-status-name-value-value"}]},r=BigInt(Number.MIN_SAFE_INTEGER),n=BigInt(Number.MAX_SAFE_INTEGER);class a extends s.Component{constructor(){super(o),this.eLabel=s.RefPlaceholder,this.eValue=s.RefPlaceholder}setLabel(e,t){this.setDisplayed(!1),this.eLabel.textContent=this.getLocaleTextFunc()(e,t)}setValue(e,t){let i,o=null;"bigint"==typeof e?(i=e,e>=r&&e<=n&&(o=Number(e))):o=e,this.eValue.textContent=this.valueFormatter((0,s._addGridCommonParams)(this.gos,{value:o,bigintValue:i,totalRows:t,key:this.key}))}}t.AgNameValue=a,t.AgNameValueSelector={selector:"AG-NAME-VALUE",component:a}},28999:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.AggregationComp=void 0;const s=i(76624),o=i(43910),r=i(35675);const n={tag:"div",cls:"ag-status-panel ag-status-panel-aggregations",children:[{tag:"ag-name-value",ref:"avgAggregationComp"},{tag:"ag-name-value",ref:"countAggregationComp"},{tag:"ag-name-value",ref:"minAggregationComp"},{tag:"ag-name-value",ref:"maxAggregationComp"},{tag:"ag-name-value",ref:"sumAggregationComp"}]};class a extends s.Component{constructor(){super(n,[o.AgNameValueSelector]),this.sumAggregationComp=s.RefPlaceholder,this.countAggregationComp=s.RefPlaceholder,this.minAggregationComp=s.RefPlaceholder,this.maxAggregationComp=s.RefPlaceholder,this.avgAggregationComp=s.RefPlaceholder}postConstruct(){this.avgAggregationComp.setLabel("avg","Average"),this.countAggregationComp.setLabel("count","Count"),this.minAggregationComp.setLabel("min","Min"),this.maxAggregationComp.setLabel("max","Max"),this.sumAggregationComp.setLabel("sum","Sum"),this.addManagedEventListeners({cellSelectionChanged:this.onCellSelectionChanged.bind(this),modelUpdated:this.onCellSelectionChanged.bind(this)})}init(e){this.refresh(e)}refresh(e){this.params=e;const t=e.valueFormatter??(e=>{const{value:t,bigintValue:i}=e;return null!=i?i.toString():function(e,t){return"number"!=typeof e?"":(0,s._formatNumberCommas)(Math.round(100*e)/100,t)}(t,this.getLocaleTextFunc.bind(this))}),i=["avg","count","min","max","sum"];for(const e of i){const i=this.getAllowedAggregationValueComponent(e);i&&(i.key=e,i.valueFormatter=t.bind(this))}return this.onCellSelectionChanged(),!0}setAggregationComponentValue(e,t,i){const o=this.getAllowedAggregationValueComponent(e),n=(0,r._getTotalRowCount)(this.beans.rowModel);(0,s._exists)(o)&&o?(o.setValue(t,n),o.setDisplayed(i)):this.getAggregationValueComponent(e)?.setDisplayed(!1)}getAllowedAggregationValueComponent(e){const{aggFuncs:t}=this.params;return!t||t.includes(e)?this.getAggregationValueComponent(e):null}getAggregationValueComponent(e){return this[`${e}AggregationComp`]}onCellSelectionChanged(){const e=this.beans,{rangeSvc:t,valueSvc:i}=e,o=t?.getCellRanges();let r=0,n=0n,a=!1,l=!1,d=0,c=0,u=null,h=null,g=null,p=null;const m=e=>{if("number"==typeof e)if(r+=e,(null===u||eh)&&(h=e),Number.isInteger(e)&&Number.isSafeInteger(e)){const t=BigInt(e);n+=t,(null===g||tp)&&(p=t)}else l=!0;else{a=!0,n+=e,(null===g||ep)&&(p=e);const t=Number(e);r+=t,(null===u||th)&&(h=t)}c++},f={};if(o?.length&&t)for(let n=0;n{if(null===l)return;const o=(0,s._createCellId)({rowPinned:l.rowPinned,column:t,rowIndex:l.rowIndex});if(f[o])return;f[o]=!0;const n=(0,s._getRowNode)(e,l);if((0,s._missing)(n))return;let a=i.getValue(t,n,"data");if(!(0,s._missing)(a)&&""!==a&&(d++,"object"!=typeof a||!("value"in a)||(a=a.value,""!==a))){if("string"==typeof a){const e=a.trim();if(""===e)return;const t=Number(e);if(!Number.isFinite(t))return;r+t>=Number.MAX_SAFE_INTEGER||r+t<=Number.MIN_SAFE_INTEGER||t>=Number.MAX_SAFE_INTEGER||t<=Number.MIN_SAFE_INTEGER?(a=(0,s._parseBigIntOrNull)(e),null===a&&(a=t)):a=t}("number"==typeof a&&!isNaN(a)||"bigint"==typeof a)&&m(a)}}),l=(0,s._getRowBelow)(e,l)}}const C=d>1,v=c>1,w=a&&!l;let b;b=w?n/BigInt(c):r/c;const y=v?w?n:r:null,S=v?w?g:u:null,x=v?w?p:h:null,F=v?b:null,R=v;this.setAggregationComponentValue("count",d,C),this.setAggregationComponentValue("sum",y,v),this.setAggregationComponentValue("min",S,v),this.setAggregationComponentValue("max",x,v),this.setAggregationComponentValue("avg",F,R)}}t.AggregationComp=a},21741:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.FilteredRowsComp=void 0;const s=i(76624),o=i(43910),r=i(35675);class n extends o.AgNameValue{postConstruct(){this.setLabel("filteredRows","Filtered"),this.addCss("ag-status-panel"),this.addCss("ag-status-panel-filtered-row-count"),this.setDisplayed(!0);const e=this.onDataChanged.bind(this);this.addManagedEventListeners({modelUpdated:e})}onDataChanged(){const{rowModel:e}=this.beans,t=(0,r._getTotalRowCount)(e),i=(0,r._getFilteredRowCount)(e);this.setValue(i,t),this.setDisplayed(t!==i)}init(e){this.refresh(e),this.onDataChanged()}updateValueFormatter(e){this.valueFormatter=e??(({value:e})=>(0,s._formatNumberCommas)(e,this.getLocaleTextFunc.bind(this)))}refresh(e){const{key:t,valueFormatter:i}=e;return this.key=t,this.updateValueFormatter(i),!0}}t.FilteredRowsComp=n},18123:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SelectedRowsComp=void 0;const s=i(76624),o=i(43910),r=i(35675);class n extends o.AgNameValue{postConstruct(){this.setLabel("selectedRows","Selected"),this.addCss("ag-status-panel"),this.addCss("ag-status-panel-selected-row-count");const e=this.onRowSelectionChanged.bind(this);this.addManagedEventListeners({modelUpdated:e,selectionChanged:e})}onRowSelectionChanged(){const{selectionSvc:e,rowModel:t}=this.beans,i=e?.getSelectionCount()??0,s=(0,r._getTotalRowCount)(t);this.setValue(i,s),i<0?this.setDisplayed(!0):this.setDisplayed(i>0)}init(e){this.refresh(e),this.onRowSelectionChanged()}updateValueFormatter(e){this.valueFormatter=e??(({value:e})=>null==e||e>=0?(0,s._formatNumberCommas)(e,this.getLocaleTextFunc.bind(this)):this.getLocaleTextFunc()("statusBarLastRowUnknown","?"))}refresh(e){const{key:t,valueFormatter:i}=e;return this.key=t,this.updateValueFormatter(i),!0}}t.SelectedRowsComp=n},71646:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TotalAndFilteredRowsComp=void 0;const s=i(76624),o=i(43910),r=i(35675);class n extends o.AgNameValue{postConstruct(){this.setLabel("totalAndFilteredRows","Rows"),this.addCss("ag-status-panel"),this.addCss("ag-status-panel-total-and-filtered-row-count"),this.setDisplayed(!0),this.addManagedEventListeners({modelUpdated:this.onDataChanged.bind(this)})}onDataChanged(){const{rowModel:e}=this.beans,t=(0,r._getFilteredRowCount)(e),i=(0,r._getTotalRowCount)(e);this.setValue(t,i)}init(e){this.refresh(e),this.onDataChanged()}updateValueFormatter(e){this.valueFormatter=e??(({value:e,totalRows:t})=>{const i=this.getLocaleTextFunc.bind(this),o=(0,s._formatNumberCommas)(e,i),r=(0,s._formatNumberCommas)(t??e,i);if(e===t)return o;return`${o} ${i()("of","of")} ${r}`})}refresh(e){const{key:t,valueFormatter:i}=e;return this.key=t,this.updateValueFormatter(i),!0}}t.TotalAndFilteredRowsComp=n},52042:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TotalRowsComp=void 0;const s=i(76624),o=i(43910),r=i(35675);class n extends o.AgNameValue{postConstruct(){this.setLabel("totalRows","Total Rows"),this.addCss("ag-status-panel"),this.addCss("ag-status-panel-total-row-count"),this.setDisplayed(!0),this.addManagedEventListeners({modelUpdated:this.onDataChanged.bind(this)})}onDataChanged(){const e=(0,r._getTotalRowCount)(this.beans.rowModel);this.setValue(e,e)}init(e){this.refresh(e),this.onDataChanged()}updateValueFormatter(e){this.valueFormatter=e??(({value:e})=>(0,s._formatNumberCommas)(e,this.getLocaleTextFunc.bind(this)))}refresh(e){const{key:t,valueFormatter:i}=e;return this.key=t,this.updateValueFormatter(i),!0}}t.TotalRowsComp=n},35675:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t._getTotalRowCount=t._getFilteredRowCount=void 0;t._getFilteredRowCount=e=>{let t=0;return e.forEachNodeAfterFilter(e=>{e.data&&t++}),t};t._getTotalRowCount=e=>{let t=0;return e.forEachNode(e=>{e.data&&t++}),t}},99516:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.getStatusPanel=void 0;const s=i(76624);t.getStatusPanel=function(e,t){const i=e.statusBarSvc?.getStatusPanel(t);return(0,s._unwrapUserComp)(i)}},78450:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.StatusBarModule=void 0;const s=i(76624),o=i(39206),r=i(19586),n=i(41866),a=i(28999),l=i(21741),d=i(18123),c=i(71646),u=i(52042),h=i(99516),g=i(77947);t.StatusBarModule={moduleName:"StatusBar",version:r.VERSION,beans:[g.StatusBarService],userComponents:{agAggregationComponent:a.AggregationComp,agTotalRowCountComponent:u.TotalRowsComp,agFilteredRowCountComponent:l.FilteredRowsComp,agTotalAndFilteredRowCountComponent:c.TotalAndFilteredRowsComp,agSelectedRowCountComponent:d.SelectedRowsComp},selectors:[n.AgStatusBarSelector],apiFunctions:{getStatusPanel:h.getStatusPanel},dependsOn:[o.EnterpriseCoreModule,s._KeyboardNavigationModule]}},77947:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.StatusBarService=void 0;const s=i(76624);class o extends s.BeanStub{constructor(){super(),this.beanName="statusBarSvc",this.comps=new Map}registerStatusPanel(e,t){this.comps.set(e,t)}unregisterStatusPanel(e){this.comps.delete(e)}unregisterAllComponents(){this.comps.clear()}getStatusPanel(e){return this.comps.get(e)}destroy(){this.unregisterAllComponents(),super.destroy()}}t.StatusBarService=o},17084:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.fieldGetter=void 0;t.fieldGetter=e=>{const t=e.split(".");if(t.includes("__proto__"))return()=>{};const i=t.length;return i<2?t=>t?.[e]:e=>{let s=0;do{if(e=e?.[t[s++]],s===i)return e}while("object"==typeof e)}}},59428:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TreeDataModule=t.SharedTreeDataModule=void 0;const s=i(39206),o=i(12270),r=i(16858),n=i(19586),a=i(4664);t.SharedTreeDataModule={moduleName:"SharedTreeData",version:n.VERSION,dependsOn:[s.EnterpriseCoreModule,o.SharedAggregationModule,r.GroupColumnModule,r.StickyRowModule]},t.TreeDataModule={moduleName:"TreeData",version:n.VERSION,dynamicBeans:{treeGroupStrategy:a.TreeGroupStrategy},rowModels:["clientSide"],dependsOn:[t.SharedTreeDataModule,o.AggregationModule,r.ClientSideRowModelHierarchyModule,r.GroupEditModule]}},4664:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TreeGroupStrategy=void 0;const s=i(76624),o=i(68105),r=i(76897),n=i(17084),a=2147483648,l=1073741824,d=536870912,c=268435456,u=268435455,h=String.fromCodePoint(31,41150,8291);class g extends s.BeanStub{constructor(){super(...arguments),this.nestedDataGetter=null,this.parentIdGetter=null,this.nonLeafsById=null,this.nodesToUnselect=null,this.fullReload=!1}postConstruct(){this.onPropChange(null)}onPropChange(e){const t=this.gos;if(!e||e.has("treeDataParentIdField")){const e=t.get("treeDataParentIdField"),i=e?(0,n.fieldGetter)(e):null;this.fullReload||(this.fullReload=this.parentIdGetter!==i),this.parentIdGetter=i,i&&(this.nestedDataGetter=null)}if(!e||e.has("treeDataChildrenField")){const e=this.parentIdGetter?"":t.get("treeDataChildrenField"),i=e?(0,n.fieldGetter)(e):null;this.fullReload||(this.fullReload=this.nestedDataGetter!==i),this.nestedDataGetter=i}}destroy(){this.nodesToUnselect=null,this.reset(),super.destroy()}reset(){this.clearNonLeafs(),this.deselectHiddenNodes(!1),this.fullReload=!0}clearNonLeafs(){const e=this.nonLeafsById;if(e){for(const t of e.values())t._destroy(!1);e.clear(),this.nonLeafsById=null}}getNonLeaf(e){return this.nonLeafsById?.get(e)}loadGroupData(e){const t=e.key;if(null==t)return e._groupData=null,null;const i={};e._groupData=i;const s=this.beans.showRowGroupCols?.columns;if(s)for(let e=0,o=s.length;e0&&d!==u&&(this.handleCycles(e),this.traverseRoot(e,o)),e.treeNodeFlags=0,this.deselectHiddenNodes(l||r),c}flagUpdatedNodes(e){const{adds:t,updates:i,removals:s}=e;let o=s.length>0;if(t.size>0){o=!0;for(const e of t)e.treeNodeFlags|=l}if(i.size>0){o=!0;for(const e of i)e.treeNodeFlags|=l}return o}initRowsParents(e){const t=e._leafs,i=t.length;let s=!1;for(let e=0;e=0||s.treeNodeFlags&d||null===s.treeParent){s.treeNodeFlags=o;break}s.treeNodeFlags=o|d|e.treeNodeFlags&l,e=s}return t}destroyFillerRows(e){const t=this.nonLeafsById;if(t){for(const i of t.values())null!==i.treeParent&&0!==(i.treeNodeFlags&u)||(t.delete(i.id),i._destroy(e),this.hideRow(i));0===t.size&&(this.nonLeafsById=null)}}initRowsChildrenSize(e){this.initRowChildrenSize(e);const t=e._leafs,i=t.length;for(let e=0;e=0){if(t!==s._EmptyArray){e.childrenAfterGroup=s._EmptyArray;const t=e.sibling;t&&(t.childrenAfterGroup=s._EmptyArray)}}else if(r!==n||t===i)if(t&&t!==s._EmptyArray&&t!==i)t.length=n;else{e.childrenAfterGroup=t=new Array(n);const i=e.sibling;i&&(i.childrenAfterGroup=t)}}preprocessRows(e){const t=e._leafs,i=t.length;let s=0,o=!1;for(let e=0;e{if(t.has(e))return!1;t.add(e);for(const t of e.childrenAfterGroup)i(t);return!0};i(e);const o=e.childrenAfterGroup;o.length=0;const r=e._leafs;for(let t=0,n=r.length;t=0;--e){const i=t.get(a.slice(0,s[e]));if(i){c=i,d=e+1;break}}d0?t[o-1]+3:0,r=t[o];s+="-"+o+"-"+e.slice(i,r),++o}return s+"-"+i+"-"}deselectHiddenNodes(e){const t=this.beans.selectionSvc,i=this.nodesToUnselect,s="rowDataChanged";if(i&&(this.nodesToUnselect=null,t?.setNodesSelected({newValue:!1,nodes:i,suppressFinishActions:!0,source:s})),(i||e)&&t?.updateGroupsFromChildrenSelections?.(s),i){const e=t?.getSelectedNodes()??null;this.eventSvc.dispatchEvent({type:"selectionChanged",source:s,selectedNodes:e,serverSideState:null})}}hideRow(e){e.isSelected()&&(this.nodesToUnselect??(this.nodesToUnselect=[])).push(e),e.parent=null,e.group=!1,e.treeParent=null,e.treeNodeFlags=0,e.childrenAfterGroup=s._EmptyArray,e._leafs=void 0,e._groupData=null;const t=e.sibling;t&&(t.childrenAfterGroup=s._EmptyArray),e.updateHasChildren(),null!==e.rowIndex&&e.clearRowTopAndRowIndex()}onShowRowGroupColsSetChanged(){const e=this.beans.rowModel.rootNode._leafs;if(!e)return;for(let t=0,i=e.length;te.sourceRowIndex-t.sourceRowIndex,m=(e,t)=>0!==(t.treeNodeFlags&c)&&0===(e.treeNodeFlags&c)&&null!==e.treeParent&&e.sourceRowIndex<0&&(e.expanded=t.expanded,!0),f=(e,t)=>{const i=void 0!==e._groupData;e.key=t,e.groupValue=t;const s=e.sibling;s&&(s.key=t),i&&(e._groupData=void 0,e.setData(e.data))}},19586:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.VERSION=void 0,t.VERSION="35.1.0"},44790:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ViewportRowModel=void 0;const s=i(76624);class o extends s.BeanStub{constructor(){super(...arguments),this.beanName="rowModel",this.firstRow=-1,this.lastRow=-1,this.rowCount=-1,this.rowNodesByIndex={},this.rootNode=null,this.viewportChangedContext=!1}ensureRowHeightsValid(e,t,i,s){return!1}postConstruct(){const e=this.beans,t=new s.RowNode(e);this.rootNode=t,t.level=-1,this.rowHeight=(0,s._getRowHeightAsNumber)(e),this.addManagedEventListeners({viewportChanged:this.onViewportChanged.bind(this)}),this.addManagedPropertyListener("viewportDatasource",()=>this.updateDatasource()),this.addManagedPropertyListener("rowHeight",()=>{this.rowHeight=(0,s._getRowHeightAsNumber)(e),this.updateRowHeights()})}start(){this.updateDatasource()}isLastRowIndexKnown(){return!0}destroy(){this.destroyDatasource(),super.destroy(),this.rootNode=null}destroyDatasource(){const e=this.datasource;e&&(e.destroy?.(),this.beans.rowRenderer.datasourceChanged(),this.firstRow=-1,this.lastRow=-1)}updateDatasource(){const e=this.gos.get("viewportDatasource");e&&this.setViewportDatasource(e)}getPageSize(){return this.gos.get("viewportRowModelPageSize")}getBufferSize(){return this.gos.get("viewportRowModelBufferSize")}calculateFirstRow(e){const t=this.getBufferSize(),i=this.getPageSize(),s=e-t;return s<0?0:Math.floor(s/i)*i}calculateLastRow(e){if(-1===e)return e;const t=this.getBufferSize(),i=this.getPageSize(),s=e+t,o=Math.ceil(s/i)*i,r=this.rowCount-1;return Math.min(o,r)}onViewportChanged(e){const t=this.calculateFirstRow(e.firstRow),i=this.calculateLastRow(e.lastRow);this.firstRow===t&&this.lastRow===i||(this.firstRow=t,this.lastRow=i,this.purgeRowsNotInViewport(),this.viewportChangedContext=!0,this.datasource?.setViewportRange(this.firstRow,this.lastRow),this.viewportChangedContext=!1)}purgeRowsNotInViewport(){const e=this.rowNodesByIndex;for(const t of Object.keys(e)){const i=parseInt(t,10);if(ithis.lastRow){if(this.isRowFocused(i)||this.beans.editSvc?.isRowEditing(e[i]))continue;delete e[i]}}}isRowFocused(e){const t=this.beans.focusSvc.getFocusCellToUseAfterRefresh();if(!t)return!1;if(null!=t.rowPinned)return!1;return t.rowIndex===e}setViewportDatasource(e){this.destroyDatasource(),this.datasource=e,this.rowCount=-1,e.init?e.init((0,s._addGridCommonParams)(this.gos,{setRowCount:this.setRowCount.bind(this),setRowData:this.setRowData.bind(this),getRow:this.getRow.bind(this)})):(0,s._warn)(226)}getType(){return"viewport"}getRow(e){return this.rowNodesByIndex[e]||(this.rowNodesByIndex[e]=this.createBlankRowNode(e)),this.rowNodesByIndex[e]}getRowNode(e){let t;return this.forEachNode(i=>{i.id===e&&(t=i)}),t}getRowCount(){return-1===this.rowCount?0:this.rowCount}getRowIndexAtPixel(e){return 0!==this.rowHeight?Math.floor(e/this.rowHeight):0}resetRowHeights(){}onRowHeightChanged(){}getRowBounds(e){const t=this.rowHeight;return{rowHeight:t,rowTop:t*e}}updateRowHeights(){const e=this.rowHeight;this.forEachNode(t=>{t.setRowHeight(e),t.setRowTop(e*t.rowIndex)}),this.eventSvc.dispatchEvent({type:"modelUpdated",newData:!1,newPage:!1,keepRenderedRows:!0,animate:!1})}getTopLevelRowCount(){return this.getRowCount()}getTopLevelRowDisplayedIndex(e){return e}isEmpty(){return this.rowCount>0}getOverlayType(){return null}isRowsToRender(){return this.rowCount>0}getNodesInRangeForSelection(e,t){const i=e.rowIndex,s=t.rowIndex,o=ithis.lastRow,r=sthis.lastRow;if(o||r)return[];const n=[],a=i<=s?s:i;for(let e=i<=s?i:s;e<=a;e++)n.push(this.rowNodesByIndex[e]);return n}forEachNode(e){let t=0;for(const i of Object.keys(this.rowNodesByIndex)){const s=parseInt(i,10);e(this.rowNodesByIndex[s],t),t++}}setRowData(e){const t=(0,s._getRowIdCallback)(this.beans.gos),i=new Map;if(t)for(const e of Object.values(this.rowNodesByIndex))i.set(e.id,e);for(let s=this.firstRow;s<=this.lastRow;s++){const o=e[s];if(!o)continue;let r,n;t?(r=t({data:o,rowPinned:void 0,level:0,parentKeys:void 0}),n=i.get(r)):n=this.rowNodesByIndex[s],n?(n.updateData(o),n.setRowIndex(s),n.setRowTop(this.rowHeight*s)):(n=this.createBlankRowNode(s),n.setDataAndId(o,r??s.toString())),this.rowNodesByIndex[s]=n}this.viewportChangedContext||this.eventSvc.dispatchEvent({type:"modelUpdated",newData:!1,newPage:!1,keepRenderedRows:!0,animate:!1})}createBlankRowNode(e){const t=new s.RowNode(this.beans),i=this.rowHeight;return t.setRowHeight(i),t.setRowTop(i*e),t.setRowIndex(e),t}setRowCount(e,t=!1){if(e===this.rowCount)return;this.rowCount=e;const i=this.eventSvc;i.dispatchEventOnce({type:"rowCountReady"}),i.dispatchEvent({type:"modelUpdated",newData:!1,newPage:!1,keepRenderedRows:t,animate:!1})}isRowPresent(e){return!!this.getRowNode(e.id)}}t.ViewportRowModel=o},7794:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ViewportRowModelModule=void 0;const s=i(39206),o=i(19586),r=i(44790);t.ViewportRowModelModule={moduleName:"ViewportRowModel",version:o.VERSION,rowModels:["viewport"],beans:[r.ViewportRowModel],dependsOn:[s.EnterpriseCoreModule]}},67437:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.AgPillContainer=void 0;const s=i(76624),o=i(3264),r={tag:"div",cls:"ag-pill-container"};class n extends s.Component{constructor(){super(r),this.pills=[]}init(e){this.params=e,this.getKey=e.valueFormatter??(e=>String(e)),this.refresh()}refresh(){this.clearPills();const{params:e,onPillKeyDown:t,getKey:i}=this;let r=e.getValue();if(!Array.isArray(r)){if(null==r)return;r=[r]}const n=e.valueFormatter??(e=>String(e)),a=r.length;(0,s._setAriaRole)(this.getGui(),0===a?"presentation":"listbox");for(let l=0;lthis.onPillButtonClick(c),onKeyDown:t.bind(this)})),u=c.getGui();(0,s._setAriaPosInSet)(u,l+1),(0,s._setAriaSetSize)(u,a),e.onPillMouseDown&&c.addGuiEventListener("mousedown",e.onPillMouseDown),e.announceItemFocus&&c.addGuiEventListener("focus",e.announceItemFocus),c.setText(n(d)??""),c.toggleCloseButtonClass("ag-icon-cancel",!0),this.appendChild(u),this.pills.push({key:i(d)??l.toString(),pill:c})}}onNavigationKeyDown(e){const{key:t}=e;if(!this.pills.length||t!==s.KeyCode.LEFT&&t!==s.KeyCode.RIGHT)return;e.preventDefault();const{params:i,beans:o}=this,r=(0,s._getActiveDomElement)(o),n=this.getGui();if(n.contains(r)){const e=(0,s._findNextFocusableElement)(o,n,!1,t===s.KeyCode.LEFT);e?e.focus():i.eWrapper&&i.eWrapper.focus()}else{const e=(0,s._findFocusableElements)(n);e.length>0&&e[t===s.KeyCode.RIGHT?0:e.length-1].focus()}}clearPills(){const e=this.getGui();e.contains((0,s._getActiveDomElement)(this.beans))&&this.params.eWrapper&&this.params.eWrapper.focus(),(0,s._clearElement)(e),this.destroyBeans(this.pills.map(({pill:e})=>e)),this.pills=[]}onPillButtonClick(e){this.deletePill(e)}onPillKeyDown(e){const t=e.key;if(t!==s.KeyCode.DELETE&&t!==s.KeyCode.BACKSPACE)return;e.preventDefault();const i=(0,s._getDocument)(this.beans),o=this.pills.findIndex(({pill:e})=>e.getGui().contains(i.activeElement));if(-1===o)return;const r=this.pills[o];r?.pill&&this.deletePill(r.pill,o)}deletePill(e,t){const{getKey:i,pills:s,params:o}=this,r=(s[t??-1]??s.find(({pill:t})=>t===e))?.key,n=(o.getValue()||[]).filter(e=>i(e)!==r);if(o.setValue(n),!n.length&&o.eWrapper)o.eWrapper.focus();else if(null!=t){const{pill:e}=s[Math.min(t,s.length-1)];e&&e.getFocusableElement().focus()}}destroy(){this.clearPills(),super.destroy()}}t.AgPillContainer=n},34676:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.agFormulaInputFieldCSS=void 0,t.agFormulaInputFieldCSS=".ag-formula-token{line-height:var(--ag-line-height,1.6)}.ag-formula-token-color-1{color:var(--ag-formula-token-1-color)}.ag-formula-token-color-2{color:var(--ag-formula-token-2-color)}.ag-formula-token-color-3{color:var(--ag-formula-token-3-color)}.ag-formula-token-color-4{color:var(--ag-formula-token-4-color)}.ag-formula-token-color-5{color:var(--ag-formula-token-5-color)}.ag-formula-token-color-6{color:var(--ag-formula-token-6-color)}.ag-formula-token-color-7{color:var(--ag-formula-token-7-color)}.ag-formula-range-color-1{--ag-range-selection-border-color:var(--ag-formula-token-1-color);--ag-range-selection-background-color:var(--ag-formula-token-1-background-color)}.ag-formula-range-color-2{--ag-range-selection-border-color:var(--ag-formula-token-2-color);--ag-range-selection-background-color:var(--ag-formula-token-2-background-color)}.ag-formula-range-color-3{--ag-range-selection-border-color:var(--ag-formula-token-3-color);--ag-range-selection-background-color:var(--ag-formula-token-3-background-color)}.ag-formula-range-color-4{--ag-range-selection-border-color:var(--ag-formula-token-4-color);--ag-range-selection-background-color:var(--ag-formula-token-4-background-color)}.ag-formula-range-color-5{--ag-range-selection-border-color:var(--ag-formula-token-5-color);--ag-range-selection-background-color:var(--ag-formula-token-5-background-color)}.ag-formula-range-color-6{--ag-range-selection-border-color:var(--ag-formula-token-6-color);--ag-range-selection-background-color:var(--ag-formula-token-6-background-color)}.ag-formula-range-color-7{--ag-range-selection-border-color:var(--ag-formula-token-7-color);--ag-range-selection-background-color:var(--ag-formula-token-7-background-color)}.ag-fill-handle.ag-formula-range-color-1,.ag-range-handle.ag-formula-range-color-1{background-color:var(--ag-formula-token-1-color)}.ag-fill-handle.ag-formula-range-color-2,.ag-range-handle.ag-formula-range-color-2{background-color:var(--ag-formula-token-2-color)}.ag-fill-handle.ag-formula-range-color-3,.ag-range-handle.ag-formula-range-color-3{background-color:var(--ag-formula-token-3-color)}.ag-fill-handle.ag-formula-range-color-4,.ag-range-handle.ag-formula-range-color-4{background-color:var(--ag-formula-token-4-color)}.ag-fill-handle.ag-formula-range-color-5,.ag-range-handle.ag-formula-range-color-5{background-color:var(--ag-formula-token-5-color)}.ag-fill-handle.ag-formula-range-color-6,.ag-range-handle.ag-formula-range-color-6{background-color:var(--ag-formula-token-6-color)}"},26985:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.AgFormulaInputField=void 0;const s=i(76624),o=i(49546),r=i(93916),n=i(34676),a=i(75831),l=i(17289),d=i(21635),c=i(44327),u={"/":"÷","*":"×"},h={"÷":"/","×":"*"};class g extends s.AgContentEditableField{constructor(){super({renderValueToElement:!1,className:"ag-formula-input-field"}),this.currentValue="",this.selectionCaretOffset=null,this.lastTokenValueOffset=null,this.lastTokenValueLength=null,this.lastTokenCaretOffset=null,this.focusFromMouseTime=null,this.suppressNextFocusCaretPlacement=!1,this.formulaColorByRef=new Map,this.registerCSS(n.agFormulaInputFieldCSS),this.registerCSS(o.agAutocompleteCSS)}postConstruct(){super.postConstruct(),this.rangeSyncFeature=this.createManagedBean(new l.FormulaInputRangeSyncFeature(this)),this.autocompleteFeature=this.createManagedBean(new a.FormulaInputAutocompleteFeature(this)),this.addManagedElementListeners(this.getContentElement(),{input:this.onContentInput.bind(this),focus:this.onContentFocus.bind(this),blur:this.onContentBlur.bind(this),mousedown:this.onContentMouseDown.bind(this)})}setValue(e,t){const i=null==e?"":String(e),{isFormula:s,hasFormulaPrefix:o}=this.getFormulaState(i);return s?(this.applyFormulaValue(i,{currentValue:this.getCurrentValue(),silent:t}),this.rangeSyncFeature?.onValueUpdated(i,o),this):(this.applyPlainValue(i,{silent:t,dispatch:!0}),this.rangeSyncFeature?.onValueUpdated(i,o),this)}getCurrentValue(){const e=S(this.getContentElement());return e!==this.currentValue&&this.setEditorValue(e,!0),this.currentValue}setEditingCellRef(e,t){const i=e?this.beans.formula?.getColRef(e):void 0,s=i&&null!=t&&void 0!==t?`${i}${t+1}`:void 0;s?this.rangeSyncFeature?.setEditingCellRef(e,t,s):this.rangeSyncFeature?.setEditingCellRef(void 0,void 0,void 0)}rememberCaret(){const e=M(this.beans,this.getContentElement(),this.getCurrentValue());this.selectionCaretOffset=e??this.currentValue.length}setEditorValue(e,t=!1){return this.currentValue=e,super.setValue(e,t),this}renderFormula(e){b({beans:this.beans,contentElement:this.getContentElement(),getColorIndexForToken:this.getColorIndexForToken.bind(this),...e})}renderPlainValue(e,t){const i=this.getContentElement(),s=t??M(this.beans,i,this.currentValue);i.textContent=e??"";const o=null!=s?Math.min(s,e.length):null;P(this.beans,i,o)}withSelectionChangeHandlingSuppressed(e){this.rangeSyncFeature?this.rangeSyncFeature.withSelectionChangeHandlingSuppressed(e):e()}getColorIndexForRef(e){if(!p(this.beans))return null;const t=this.formulaColorByRef.get(e);if(null!=t)return t;const i=this.formulaColorByRef.size%7;return this.formulaColorByRef.set(e,i),i}getColorIndexForToken(e){return p(this.beans)&&null!=e?e%7:null}hasColorForRef(e){return this.formulaColorByRef.has(e)}moveColorToRef(e,t,i){const s=e&&this.formulaColorByRef.has(e)?this.getColorIndexForRef(e):i??this.formulaColorByRef.get(t)??this.getColorIndexForRef(t);return e&&e!==t&&this.formulaColorByRef.delete(e),null==s?null:(this.formulaColorByRef.set(t,s),s)}updateFormulaColorsFromValue(e){if(e=null==e?"":String(e),!p(this.beans))return void this.formulaColorByRef.clear();const t=m(this.beans,e);let i=t.length!==this.formulaColorByRef.size;const s=new Map;t.forEach((e,t)=>{const o=t%7;s.set(e,o),this.formulaColorByRef.get(e)!==o&&(i=!0)}),i&&(this.formulaColorByRef.clear(),s.forEach((e,t)=>this.formulaColorByRef.set(t,e)))}onContentInput(){const e=this.getContentElement(),t=this.getCurrentValue(),i=M(this.beans,e,t),s=S(e),{isFormula:o,hasFormulaPrefix:r}=this.getFormulaState(s);if(!o)return this.applyPlainValue(s,{caret:i,dispatch:!0}),void this.rangeSyncFeature?.onValueUpdated(s,r);this.applyFormulaValue(s,{currentValue:t,caret:i??void 0,dispatch:!0}),this.rangeSyncFeature?.onValueUpdated(s,r)}onContentFocus(){if(this.rangeSyncFeature?.setEditorActive(!0),this.suppressNextFocusCaretPlacement)return void(this.suppressNextFocusCaretPlacement=!1);const{focusFromMouseTime:e}=this,t=null!=e;this.focusFromMouseTime=null,t||(0,s._placeCaretAtEnd)(this.beans,this.getContentElement())}onContentBlur(e){this.focusFromMouseTime=null;const t=e.relatedTarget,i=t?.closest(".ag-cell-editor"),s=t?.closest(".ag-cell");t&&!this.getGui().contains(t)&&i&&s&&this.rangeSyncFeature?.deactivateForFocusLoss()}onContentMouseDown(){this.focusFromMouseTime=Date.now()}insertOrReplaceToken(e,t){const i=this.getTokenInsertOffsets(t);if(!i)return{};const{caretOffset:s,valueOffset:o}=i,r=t||null==this.lastTokenValueLength?0:this.lastTokenValueLength,n=this.getCurrentValue(),a=n.slice(0,o)+e+n.slice(o+r),l=f(this.beans,a,o)?.index??null;let d;return this.applyFormulaValueChange({currentValue:n,nextValue:a,caret:s+e.length,updateTracking:()=>{d=this.updateLastTokenTracking(e,s,o)}}),{previousRef:d,tokenIndex:l}}removeTokenRef(e,t){const i=this.getCurrentValue(),s=(0,c.getRefTokenMatchesForFormula)(this.beans,i);let o;if(null!=t&&(o=s.find(e=>e.index===t),o&&o.ref!==e&&(o=void 0)),o||(o=s.find(t=>t.ref===e)),!o)return!1;const r=i.slice(0,o.start)+i.slice(o.end),n=this.selectionCaretOffset??o.start,a=Math.min(n,r.length);return this.applyFormulaValueChange({currentValue:i,nextValue:r,caret:a,updateTracking:()=>{this.lastTokenValueOffset=null,this.lastTokenValueLength=null,this.lastTokenCaretOffset=a,this.lastTokenRef=void 0}}),!0}applyRangeInsert(e){const t=this.getCurrentValue(),i=this.getCaretOffsets(t);if(!i){const{previousRef:t,tokenIndex:i}=this.insertOrReplaceToken(e,!0);return{action:"insert",previousRef:t,tokenIndex:i}}const{valueOffset:s}=i,o=f(this.beans,t,s);if(o){const{end:t,ref:i}=o;if(i.endsWith(":")&&s===t){const{previousRef:t,tokenIndex:i}=this.insertOrReplaceToken(e,!0);return{action:"insert",previousRef:t,tokenIndex:i}}const{previousRef:r,tokenIndex:n}=this.replaceTokenAtMatch(o,e);return{action:"replace",previousRef:r,tokenIndex:n}}const r=C(t,s);if(r){const i=t.slice(0,r.start)+e+t.slice(r.end),s=f(this.beans,i,r.start)?.index??null,{previousRef:o}=this.replaceTokenAtMatch(r,e,s);return{action:"replace",previousRef:o,tokenIndex:s}}if(!v(t,s))return{action:"none"};const{previousRef:n,tokenIndex:a}=this.insertOrReplaceToken(e,!0);return{action:"insert",previousRef:n,tokenIndex:a}}restoreCaretAfterToken(){const e=(this.lastTokenCaretOffset??M(this.beans,this.getContentElement(),this.getCurrentValue())??this.currentValue.length)+(this.lastTokenValueLength??0);this.selectionCaretOffset=null,this.suppressNextFocusCaretPlacement=!0,setTimeout(()=>{this.isAlive()&&(this.getContentElement().focus({preventScroll:!0}),(0,s._getDocument)(this.beans).activeElement===this.getContentElement()&&(this.suppressNextFocusCaretPlacement=!1),P(this.beans,this.getContentElement(),e))})}replaceTokenAtMatch(e,t,i){const s=this.getCurrentValue(),o=s.slice(0,e.start)+t+s.slice(e.end);return this.applyFormulaValueChange({currentValue:s,nextValue:o,caret:e.start+t.length,updateTracking:()=>{this.updateLastTokenTracking(t,e.start,e.start)}}),{previousRef:e.ref,tokenIndex:i??e.index}}getValueOffsetFromCaret(e){const t=this.getContentElement();let i=e,s=0;for(const e of Array.from(t.childNodes)){const t=F(e),o=x(e).length;if(i<=t)return s+(t===o?i:0);i-=t,s+=o}return this.currentValue.length}getTokenInsertOffsets(e){return this.getCaretOffsets(this.getCurrentValue(),{useCachedCaret:!0,useCachedValueOffset:!e})}getCaretOffsetsForAutocomplete(e){return this.getCaretOffsets(e)}getCaretOffsets(e,t={useCachedCaret:!1,useCachedValueOffset:!1}){const{beans:i}=this,{useCachedCaret:s,useCachedValueOffset:o}=t,r=this.getContentElement(),n=s?this.selectionCaretOffset??M(i,r,e)??this.currentValue.length:M(i,r,e);if(null==n)return null;const a=o&&null!=this.lastTokenValueOffset?this.lastTokenValueOffset:this.getValueOffsetFromCaret(n);return null==a?null:{caretOffset:n,valueOffset:a}}updateLastTokenTracking(e,t,i){const s=this.lastTokenRef;return this.lastTokenValueOffset=i,this.lastTokenValueLength=e.length,this.lastTokenCaretOffset=t,this.lastTokenRef=e,s}getFormulaState(e){const t=e.trimStart().startsWith("=");return{isFormula:this.beans.formula?.isFormula(e)??t,hasFormulaPrefix:t}}dispatchValueChanged(){this.dispatchLocalEvent({type:"fieldValueChanged"})}applyPlainValue(e,t){this.formulaColorByRef.clear(),this.renderPlainValue(e,t.caret),this.setEditorValue(e,t.silent),t.dispatch&&this.dispatchValueChanged(),this.autocompleteFeature?.onPlainValueUpdated()}applyFormulaValue(e,t){this.updateFormulaColorsFromValue(e),this.renderFormula({value:e,currentValue:t.currentValue??this.getCurrentValue(),caret:t.caret??void 0}),this.setEditorValue(e,t.silent),t.dispatch&&this.dispatchValueChanged(),this.autocompleteFeature?.onFormulaValueUpdated()}applyFormulaValueChange(e){const{currentValue:t,nextValue:i,caret:s}=e;this.updateFormulaColorsFromValue(i),e.updateTracking?.(),this.setEditorValue(i),this.renderFormula({currentValue:t,value:i,caret:s}),this.dispatchValueChanged(),this.autocompleteFeature?.onFormulaValueUpdated()}replaceTokenRef(e,t,i,s){const o=this.getContentElement();let r;if(null!=s&&(r=o.querySelector(`.ag-formula-token[data-formula-token-index="${s}"]`)??void 0,r&&E(r)!==e&&(r=void 0)),r||(r=Array.from(o.querySelectorAll(".ag-formula-token")).find(t=>E(t)===e)),!r)return null;const n=y(o,r),a=y(o,r,!0);if(null==n||null==a)return null;const l=this.getCurrentValue();null!=i&&this.formulaColorByRef.set(t,i);const d=l.slice(0,a)+t+l.slice(a+e.length),c=A(r);return this.applyFormulaValueChange({currentValue:l,nextValue:d,caret:n+t.length,updateTracking:()=>{this.updateLastTokenTracking(t,n,a)}}),c??s??null}}t.AgFormulaInputField=g;const p=e=>{const{gos:t,rangeSvc:i}=e;return!!i&&!!t.get("cellSelection")},m=(e,t)=>{const i=[],s=new Set;for(const o of(0,c.getRefTokenMatchesForFormula)(e,t)){const e=o.ref;s.has(e)||(s.add(e),i.push(e))}return i},f=(e,t,i)=>{for(const s of(0,c.getRefTokenMatchesForFormula)(e,t))if(i>=s.start&&i<=s.end)return{ref:s.ref,start:s.start,end:s.end,index:s.index};return null},C=(e,t)=>{for(const i of(0,r.getRefTokenMatches)(e))if(t>=i.start&&t<=i.end)return{ref:i.ref,start:i.start,end:i.end,index:i.index};return null},v=(e,t)=>{const i=(0,d.getPreviousNonSpaceChar)(e,t);return null==i||d.TOKEN_INSERT_AFTER_CHARS.has(i)},w=(e,t,i,o)=>{const r={"aria-label":e,"data-formula-ref":e,"data-formula-token-index":o.toString()};let n;if(i&&null!=t){const i=(0,c.getColorClassesForRef)(e,t);n=i.tokenClass,r["data-formula-range-class"]=i.rangeClass}const a=(0,s._createElement)({tag:"span",cls:"ag-formula-token",attrs:r,children:e});return n&&a.classList.add(n),a},b=e=>{const{beans:t,contentElement:i,currentValue:o,value:r,getColorIndexForToken:n,caret:a}=e,l=a??M(t,i,o),d=r.length;i.textContent="";for(const e of((e,t,i)=>{const o=[];let r=0;const n=(0,c.getRefTokenMatchesForFormula)(e,t),a=(0,s._getDocument)(e);for(const e of n){e.start>r&&o.push(a.createTextNode(T(t.slice(r,e.start))));const s=i(e.index);o.push(w(e.ref,s,null!=s,e.index)),r=e.end}return r{if(!e.contains(t))return null;let s=0;for(const o of Array.from(e.childNodes)){if(o===t)return s;s+=i?x(o).length:F(o)}return null},S=e=>{let t="";return e.childNodes.forEach(e=>{t+=x(e)}),t},x=e=>e.nodeType===Node.TEXT_NODE?D(e.textContent??""):e.nodeType===Node.ELEMENT_NODE?Array.from(e.childNodes).map(e=>x(e)).join(""):"",F=e=>e.nodeType===Node.TEXT_NODE?e.textContent?.length??0:e.nodeType===Node.ELEMENT_NODE?Array.from(e.childNodes).reduce((e,t)=>e+F(t),0):0,R=(e,t)=>{let i=t;for(let t=0;to))return s.nodeType===Node.TEXT_NODE?{node:s,localOffset:i}:R(s,i);i-=o}return{node:e,localOffset:e.childNodes.length}},P=(e,t,i)=>{if(null==i)return;const o=(0,s._getWindow)(e),r=(0,s._getDocument)(e),n=o.getSelection(),a=r.createRange(),{node:l,localOffset:d}=R(t,i);if(l&&n&&t.isConnected&&l.isConnected){a.setStart(l,d),a.collapse(!0),n.removeAllRanges();try{n.addRange(a)}catch{}}},M=(e,t,i)=>{const o=(0,s._getWindow)(e).getSelection();if(!o||0===o.rangeCount)return i?.length??null;const r=o.getRangeAt(0);if(!t.contains(r.startContainer))return i?.length??null;if(r.startContainer===t){let e=0;for(let i=0;iD(e.textContent??e.dataset.formulaRef??""),A=e=>{const t=e.dataset.formulaTokenIndex;if(!t)return null;const i=parseInt(t,10);return Number.isFinite(i)?i:null},T=e=>e.replace(/[/*]/g,e=>u[e]??e),D=e=>e.replace(/[÷×]/g,e=>h[e]??e)},3264:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.AgPill=void 0;const s=i(76624),o={tag:"div",cls:"ag-pill",role:"option",children:[{tag:"span",ref:"eText",cls:"ag-pill-text"},{tag:"span",ref:"eButton",cls:"ag-button ag-pill-button",role:"presentation"}]};class r extends s.Component{constructor(e){super(o),this.config=e,this.eText=s.RefPlaceholder,this.eButton=s.RefPlaceholder}postConstruct(){const{config:e,eButton:t}=this,{onKeyDown:i,onButtonClick:s}=e;this.getGui().setAttribute("tabindex",String(this.gos.get("tabIndex"))),this.addGuiEventListener("focus",()=>{this.eButton.focus()}),i&&this.addGuiEventListener("keydown",i),s&&this.addManagedElementListeners(t,{click:s})}toggleCloseButtonClass(e,t){this.eButton.classList.toggle(e,t)}setText(e){this.eText.textContent=e}getText(){return this.eText.textContent}}t.AgPill=r},27720:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.agRichSelectCSS=void 0,t.agRichSelectCSS=".ag-rich-select{cursor:default;height:100%}.ag-rich-select-value{align-items:center;background-color:var(--ag-picker-button-background-color);display:flex;height:100%;padding:var(--ag-spacing);:where(.ag-picker-field-display){overflow:hidden;text-overflow:ellipsis;&:where(.ag-display-as-placeholder){opacity:.5}}}.ag-virtual-list-viewport.ag-rich-select-list{background-color:var(--ag-picker-list-background-color);border:var(--ag-picker-list-border);border-radius:var(--ag-input-border-radius);box-shadow:var(--ag-dropdown-shadow);height:auto;position:relative;width:100%;:where(.ag-rich-select-loading){display:flex;padding:var(--ag-widget-container-vertical-padding) var(--ag-widget-container-horizontal-padding)}}.ag-rich-select-row{align-items:center;display:flex;flex:1 1 auto;height:100%;overflow:hidden;padding:0 var(--ag-spacing);white-space:nowrap}.ag-rich-select-row-selected{background-color:var(--ag-selected-row-background-color)}.ag-rich-select-row-highlighted,.ag-rich-select-row:hover{background-image:linear-gradient(var(--ag-row-hover-color),var(--ag-row-hover-color))}.ag-rich-select-row-text-highlight{font-weight:700}.ag-rich-select-field-input{flex:1 1 auto;:where(.ag-input-field-input){border:none!important;box-shadow:none!important;padding:0!important;text-overflow:ellipsis;&::-moz-placeholder{opacity:.8}&::placeholder{opacity:.8}}}:where(.ag-ltr) .ag-rich-select-field-input{left:var(--ag-spacing)}:where(.ag-rtl) .ag-rich-select-field-input{right:var(--ag-spacing)}:where(.ag-popup-editor) .ag-rich-select-value{height:var(--ag-row-height);min-width:200px}.ag-rich-select-virtual-list-item{cursor:default;height:var(--ag-list-item-height)}.ag-pill-container{display:flex;flex-wrap:nowrap;gap:.25rem}.ag-pill{align-items:center;background:var(--ag-select-cell-background-color);border:var(--ag-select-cell-border);border-radius:var(--ag-border-radius);display:flex;padding:0 .25rem;white-space:nowrap}.ag-pill-button{border:none;padding:0}:where(.ag-ltr) .ag-pill-button{margin-left:var(--ag-spacing)}:where(.ag-rtl) .ag-pill-button{margin-right:var(--ag-spacing)}.ag-pill-button:hover{color:var(--ag-accent-color);cursor:pointer}"},62005:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t._bindCellRendererToHtmlElement=t.AgRichSelect=void 0;const s=i(76624),o=i(67437),r=i(27720),n=i(25805),a=300,l={tag:"div",cls:"ag-picker-field",role:"presentation",children:[{tag:"div",ref:"eLabel"},{tag:"div",ref:"eWrapper",cls:"ag-wrapper ag-picker-field-wrapper ag-rich-select-value ag-picker-collapsed",children:[{tag:"span",ref:"eDisplayField",cls:"ag-picker-field-display"},{tag:"ag-input-text-field",ref:"eInput",cls:"ag-rich-select-field-input"},{tag:"span",ref:"eDeselect",cls:"ag-rich-select-deselect-button ag-picker-field-icon",role:"presentation"},{tag:"span",ref:"eIcon",cls:"ag-picker-field-icon",attrs:{"aria-hidden":"true"}}]}]};class d extends s.AgPickerField{wireBeans(e){this.userCompFactory=e.userCompFactory,this.ariaAnnounce=e.ariaAnnounce,this.registry=e.registry}constructor(e){super({pickerAriaLabelKey:"ariaLabelRichSelectField",pickerAriaLabelValue:"Rich Select Field",pickerType:"ag-list",className:"ag-rich-select",pickerIcon:"richSelectOpen",ariaRole:"combobox",template:e?.template??l,agComponents:[s.AgInputTextFieldSelector],modalPicker:!1,...e,maxPickerHeight:e?.maxPickerHeight??"calc(var(--ag-row-height) * 6.5)"}),this.searchString="",this.searchStringCreator=null,this.eInput=s.RefPlaceholder,this.eDeselect=s.RefPlaceholder,this.skipWrapperAnnouncement=!1;const{value:t,valueList:i,searchStringCreator:o,onSearch:n}=e||{};void 0!==t&&(this.value=t),o&&(this.searchStringCreator=o),null!=i&&this.setValueList({valueList:i,isInitial:!0});const{searchDebounceDelay:d=a}=this.config;n&&(this.onSearchCallbackDebounced=(0,s._debounce)(this,n,d)),this.registerCSS(r.agRichSelectCSS)}postConstruct(){this.tooltipFeature=this.createOptionalManagedBean(this.registry.createDynamicBean("tooltipFeature",!1,{getGui:()=>this.getGui(),shouldDisplayTooltip:()=>this.shouldDisplayTooltip?.()??!0})),super.postConstruct(),this.createListComponent(),this.eDeselect.appendChild((0,s._createIconNoSpan)("richSelectRemove",this.beans));const{allowTyping:e,placeholder:t,suppressDeselectAll:i}=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:o=300}=this.config;this.clearSearchString=(0,s._debounce)(this,this.clearSearchString.bind(this),o),this.renderSelectedValue(),e&&this.eInput.onValueChange(e=>this.searchTextFromString(e)),this.addManagedElementListeners(this.eWrapper,{focus:this.onWrapperFocus.bind(this)}),this.addManagedElementListeners(this.eWrapper,{focusout:this.onWrapperFocusOut.bind(this)}),i||this.addManagedElementListeners(this.eDeselect,{mousedown:this.onDeselectAllMouseDown.bind(this),click:this.onDeselectAllClick.bind(this)})}setupAriaProperties(){const{eWrapper:e,gos:t}=this;e.tabIndex=t.get("tabIndex");const i=this.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 n.AgRichSelectList(this.config,this.getFocusableElement(),()=>this.searchString)),this.listComponent.setParentComponent(this),this.addManagedListeners(this.listComponent,{richSelectListRowSelected:e=>{this.onListValueSelected(e.value,e.fromEnterKey)}})}renderSelectedValue(e){const{value:t,eDisplayField:i,config:o,gos:r}=this,{allowTyping:n,cellRenderer:a,cellRendererParams:l,initialInputValue:d,multiSelect:h,suppressDeselectAll:g,suppressMultiSelectPillRenderer:p,valueFormatter:m,onSearch:f}=o,C=c(t,m);if(n)return void this.eInput.setValue(d??C,!!e&&!!f);if(h&&!g){const e=null==t||Array.isArray(t)&&0===t.length;this.eDeselect.classList.toggle("ag-hidden",e)}let v,w;if(!h||p)if(a&&(v=(0,s._getEditorRendererDetails)(this.userCompFactory,o,(0,s._addGridCommonParams)(this.gos,{value:t,valueFormatted:C,cellRendererParams:l,getValue:()=>this.getValue(),setValue:e=>{this.setValue(e,!0)},setTooltip:(e,t)=>{r.assertModuleRegistered("Tooltip",3),this.shouldDisplayTooltip=t,this.tooltipFeature?.setTooltipAndRefresh(e)}}))),v&&(w=v.newAgStackInstance()),w)(0,s._clearElement)(i),u(w,i),w.then(e=>{this.addDestroyFunc(()=>this.destroyBean(e))});else{if((0,s._exists)(this.value))i.innerText=C,i.classList.remove("ag-display-as-placeholder");else{const{placeholder:e}=o;(0,s._exists)(e)?(i.textContent=e,i.classList.add("ag-display-as-placeholder")):(0,s._clearElement)(i)}this.shouldDisplayTooltip=(0,s._isElementOverflowingCallback)(()=>this.eDisplayField),this.tooltipFeature?.setTooltipAndRefresh(C??null)}else this.createOrUpdatePillContainer(i)}createPickerComponent(){const{values:e}=this;return e&&this.setValueList({valueList:e}),this.listComponent}setSearchStringCreator(e){this.searchStringCreator=e}setValueListInternal(e){const{listComponent:t,isPickerDisplayed:i,value:s}=this,{valueList:o,refresh:r,isInitial:n}=e;if(n&&this.setValues(o),t&&(this.listComponent?.setCurrentList(o),r)){if(this.values)t.refresh(!0);else if(i){t.selectValue(s)||t.refresh()}this.alignPickerToComponent()}}setValueList(e){const{valueList:t}=e;t&&!Array.isArray(t)?(this.listComponent?.setIsLoading(),t.then(t=>{t&&this.setValueListInternal({...e,valueList:t})})):this.setValueListInternal(e)}setValues(e){this.values=e,this.searchStrings=this.getSearchStringsFromValues(e||[])}showPicker(){const{listComponent:e,value:t}=this;if(!e)return;super.showPicker();let i=t;void 0===t&&(i=null),e.selectValue(i);const s=e.getIndicesForValues(Array.isArray(i)?i:[i])[0];null!=s?(this.tooltipFeature?.attemptToHideTooltip(),e.highlightIndex(s)):e.refresh()}createOrUpdatePillContainer(e){if(!this.pillContainer){const t=this.pillContainer=this.createBean(new o.AgPillContainer);this.addDestroyFunc(()=>{this.destroyBean(this.pillContainer),this.pillContainer=null}),(0,s._clearElement)(e),e.appendChild(t.getGui());const{config:i,eWrapper:r,ariaDeleteSelection:n}=this,{valueFormatter:a}=i;t.init({eWrapper:r,valueFormatter:a,onPillMouseDown:e=>{e.stopImmediatePropagation()},announceItemFocus:()=>{this.announceAriaValue(n)},getValue:()=>this.getValue(),setValue:e=>this.setValue(e,!0)})}this.doWhileBlockingAnnouncement(()=>this.pillContainer?.refresh())}doWhileBlockingAnnouncement(e){this.skipWrapperAnnouncement=!0,e(),this.skipWrapperAnnouncement=!1}onWrapperFocus(){const{eInput:e,config:t}=this,{allowTyping:i,multiSelect:s,suppressDeselectAll:o}=t;if(i){const t=e.getFocusableElement();t.focus(),t.select()}else!s||o||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===s.KeyCode.BACKSPACE)this.searchString=this.searchString.slice(0,-1),t="";else if(!(0,s._isEventFromPrintableCharacter)(e))return;e.preventDefault(),this.searchTextFromCharacter(t)}searchTextFromCharacter(e){this.searchString+=e,this.runSearch(),this.clearSearchString()}searchTextFromString(e){null==e&&(e=""),this.searchString=e,this.runSearch()}getSearchStringsFromValues(e){const{config:{valueFormatter:t}}=this;return"object"==typeof e[0]&&this.searchStringCreator?this.searchStringCreator(e):e.map(e=>c(e,t))}filterListModel(e){const{filterList:t}=this.config;t&&this.setValueList({valueList:e,refresh:!0})}runSearch(){if(!this.listComponent)return;if(this.onSearchCallbackDebounced)return void this.onSearchCallbackDebounced(this.searchString);const e=this.searchStrings;if(!e)return void this.listComponent.highlightIndex(-1);const{suggestions:t,filteredValues:i}=this.getSuggestionsAndFilteredValues(this.searchString,e),{filterList:s,highlightMatch:o,searchType:r="fuzzy"}=this.config,n=!(!s||""===this.searchString);this.filterListModel(n?i:this.values||[]),this.highlightEmptyValue()||this.highlightListValue(t,i,n),o&&"fuzzy"!==r&&this.listComponent?.highlightFilterMatch(this.searchString),this.listComponent?.toggleVisibility()}highlightEmptyValue(){if(""===this.searchString){const e=this.searchStrings?.indexOf("");if(void 0!==e&&-1!==e)return this.listComponent?.highlightIndex(e),!0}return!1}highlightListValue(e,t,i){if(e.length){const t=i?0:this.searchStrings?.indexOf(e[0]);void 0!==t&&this.listComponent?.highlightIndex(t)}else if(this.listComponent?.highlightIndex(-1),!i||t.length)this.listComponent?.ensureIndexVisible(0);else if(i){this.getAriaElement().removeAttribute("data-active-option");const e=this.listComponent?.getAriaElement();e&&(0,s._setAriaActiveDescendant)(e,null)}}getSuggestionsAndFilteredValues(e,t){let i=[];const o=[];if(!e.length)return{suggestions:i,filteredValues:o};const{searchType:r="fuzzy",filterList:n}=this.config,a=this.values||[];if("fuzzy"===r){const r=(0,s._fuzzySuggestions)({inputValue:e,allSuggestions:t,hideIrrelevant:!0});i=r.values;const l=r.indices;if(n&&l.length)for(let e=0;e{const i=e.toLocaleLowerCase(),s=this.searchString.toLocaleLowerCase(),l="match"===r?i.startsWith(s):i.includes(s);return n&&l&&o.push(a[t]),l});return{suggestions:i,filteredValues:o}}clearSearchString(){this.searchString=""}setValue(e,t,i,s){if(this.value===e)return this;const o=Array.isArray(e);if(null!=e){if(!o){const t=this.listComponent?.getCurrentList();if(-1===(t?t.indexOf(e):-1))return this}i||this.listComponent?.selectValue(e)}return super.setValue(e,t),s||this.renderSelectedValue(i),this}onNavigationKeyDown(e,t,i){e.preventDefault();const o=t===s.KeyCode.DOWN;this.isPickerDisplayed||!o?this.listComponent?.onNavigationKeyDown(t,i):this.showPicker()}onEnterKeyDown(e){if(this.isPickerDisplayed&&(e.preventDefault(),this.listComponent?.getCurrentList())){const e=this.listComponent.getLastItemHovered();this.config.multiSelect||void 0===e?this.dispatchPickerEventAndHidePicker(this.value,!0):this.onListValueSelected(new Set([e]),!0)}}onDeleteKeyDown(e){const{eWrapper:t,beans:i}=this;(0,s._getActiveDomElement)(i)===t&&(e.preventDefault(),this.setValue([],!0))}onTabKeyDown(){const{config:e,isPickerDisplayed:t,listComponent:i}=this,{multiSelect:s}=e;if(t&&i){if(s){const e=this.getValueFromSet(i.getSelectedItems());e&&this.setValue(e,!1,!0,!0)}else{const e=i.getLastItemHovered();void 0!==e&&this.setValue(e,!1,!0)}this.hidePicker()}}getValueFromSet(e){const{multiSelect:t}=this.config;let i=null;for(const s of e){if(1===e.size&&!t){i=s;break}i||(i=[]),i.push(s)}return Array.isArray(i)&&i.sort(),i}onListValueSelected(e,t){const i=this.getValueFromSet(e);this.setValue(i,!1,!0),this.config.multiSelect||this.dispatchPickerEventAndHidePicker(i,t)}dispatchPickerEventAndHidePicker(e,t){const i={type:"fieldPickerValueSelected",fromEnterKey:t,value:e};this.dispatchLocalEvent(i),this.hidePicker()}getFocusableElement(){const{allowTyping:e}=this.config;return e?this.eInput.getFocusableElement():super.getFocusableElement()}onKeyDown(e){const{key:t,isComposing:i}=e,{isPickerDisplayed:o,config:{allowTyping:r,multiSelect:n,suppressDeselectAll:a},listComponent:l,pickerComponent:d}=this;switch(t){case s.KeyCode.LEFT:case s.KeyCode.RIGHT:r&&!this.pillContainer||(e.preventDefault(),this.pillContainer&&(this.listComponent?.highlightIndex(-1),this.pillContainer.onNavigationKeyDown(e)));break;case s.KeyCode.PAGE_HOME:case s.KeyCode.PAGE_END:if(r){e.preventDefault();const i=this.eInput.getInputElement(),o=t===s.KeyCode.PAGE_HOME?0:i.value.length;i.setSelectionRange(o,o);break}case s.KeyCode.PAGE_UP:case s.KeyCode.PAGE_DOWN:e.preventDefault(),d&&l?.navigateToPage(t);break;case s.KeyCode.DOWN:case s.KeyCode.UP:i||this.onNavigationKeyDown(e,t,()=>{n&&(this.doWhileBlockingAnnouncement(()=>this.eWrapper.focus()),this.announceAriaValue(this.ariaToggleSelection))});break;case s.KeyCode.ESCAPE:o&&((0,s._isVisible)(this.listComponent.getGui())&&(e.preventDefault(),(0,s._stopPropagationForAgGrid)(e)),this.hidePicker());break;case s.KeyCode.ENTER:i?e.preventDefault():this.onEnterKeyDown(e);break;case s.KeyCode.SPACE:if(r&&!i||e.preventDefault(),!i&&o&&n&&l){const e=l.getLastItemHovered();void 0!==e&&l.toggleListItemSelection(e)}break;case s.KeyCode.TAB:this.onTabKeyDown();break;case s.KeyCode.DELETE:n&&!a&&this.onDeleteKeyDown(e);break;default:r||this.buildSearchStringFromKeyboardEvent(e)}}announceAriaValue(e){this.ariaAnnounce?.announceValue(e,"richSelect")}destroy(){this.listComponent&&(this.listComponent=this.destroyBean(this.listComponent)),this.searchStrings=void 0,super.destroy()}}t.AgRichSelect=d;const c=(e,t)=>t?.(e)??String(e??"");function u(e,t){e.then(e=>{const i=e.getGui();null!=i&&t.appendChild(i)})}t._bindCellRendererToHtmlElement=u},25805:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.AgRichSelectList=void 0;const s=i(76624),o=i(7793),r=i(37904),n="ag-rich-select-list",a="ag-rich-select-row";class l extends r.VirtualList{constructor(e,t,i){super({cssIdentifier:"rich-select"}),this.params=e,this.richSelectWrapper=t,this.getSearchString=i,this.lastRowHovered=-1,this.selectedItems=new Set,this.loadingState=3,this.params=e,this.setComponentCreator(this.createRowComponent.bind(this)),this.setComponentUpdater(()=>{})}postConstruct(){super.postConstruct();const e=this.getLocaleTextFunc();this.loadingLabel=e("loadingOoo","Loading..."),this.noMatchesLabel=e("noMatches","No matches to show"),this.eLoadingIcon=(0,s._createIconNoSpan)("richSelectLoading",this.beans,null),this.eStateCompLabel=(0,s._createElement)({tag:"span",cls:"ag-loading-text",children:this.loadingLabel}),this.eStateComp=(0,s._createElement)({tag:"div",cls:"ag-rich-select-loading",children:[{tag:"span",cls:"ag-loading-icon",children:[this.eLoadingIcon?()=>this.eLoadingIcon:void 0]},{tag:"span",cls:"ag-loading-text",children:[()=>this.eStateCompLabel]}]}),this.appendChild(this.eStateComp);const{cellRowHeight:t,pickerAriaLabelKey:i,pickerAriaLabelValue:o}=this.params;t&&this.setRowHeight(t);const r=this.getGui(),a=this.getAriaElement();this.addManagedListeners(r,{mousemove:this.onMouseMove.bind(this),mouseout:this.onMouseOut.bind(this),mousedown:this.onMouseDown.bind(this),click:this.onClick.bind(this)}),r.classList.add(n);const l=`${n}-${this.getCompId()}`;a.setAttribute("id",l);const d=this.getLocaleTextFunc()(i,o);(0,s._setAriaLabel)(a,d),(0,s._setAriaControlsAndLabel)(this.richSelectWrapper,a)}setIsLoading(){this.setLoadingState(0)}setLoadingState(e){this.loadingState=e,this.toggleStateComp(),this.toggleVisibility()}toggleStateComp(){const{eStateComp:e,eStateCompLabel:t,eLoadingIcon:i,loadingState:o,loadingLabel:r,noMatchesLabel:n,params:a}=this;if(e)return 0===o?(t.textContent=r,i&&(0,s._setDisplayed)(i,!0),void(0,s._setDisplayed)(e,!0)):2===o&&a.allowNoResultsCopy?(t.textContent=n,i&&(0,s._setDisplayed)(i,!1),void(0,s._setDisplayed)(e,!0)):void(0,s._setDisplayed)(e,!1)}shouldBeVisible(){return 2===this.loadingState?!!this.params.allowNoResultsCopy:3!==this.loadingState}toggleVisibility(e){const t=this.getGui();void 0===e?(0,s._setDisplayed)(t,this.shouldBeVisible()):(0,s._setDisplayed)(t,e)}navigateToPage(e){const t=super.navigateToPage(e,this.lastRowHovered);return null!=t&&(0,s._requestAnimationFrame)(this.beans,()=>{if(!this.isAlive())return null;this.highlightIndex(t)}),t}drawVirtualRows(e){super.drawVirtualRows(e),this.refreshSelectedItems()}highlightFilterMatch(e){this.forEachRenderedRow(t=>{t.highlightString(e)})}onNavigationKeyDown(e,t){(0,s._requestAnimationFrame)(this.beans,()=>{if(!this.currentList||!this.isAlive())return;const i=this.currentList.length,o=this.lastRowHovered,r=e===s.KeyCode.DOWN?1:-1,n=Math.min(Math.max(-1===o?0:o+r,0),i-1);this.highlightIndex(n),t()})}selectValue(e){if(!this.currentList||null==e)return!1;const t=this.getIndicesForValues(e),i=t.length>0;return i&&(this.refresh(),this.ensureIndexVisible(t[0]),this.refresh(!0)),this.selectListItems(Array.isArray(e)?e:[e]),i}selectListItems(e,t=!1){t||this.selectedItems.clear();for(let t=0;te.length,getRow:t=>e[t],areRowsEqual:(e,t)=>e===t})}getSelectedItems(){return this.selectedItems}getLastItemHovered(){return this.currentList?.[this.lastRowHovered]}highlightIndex(e,t){if(this.currentList){if(e<0||e>=this.currentList.length)this.lastRowHovered=-1;else{this.lastRowHovered=e;this.ensureIndexVisible(e,!t)&&!t&&this.refresh(!0)}this.forEachRenderedRow((t,i)=>{const o=e===i;if(t.toggleHighlighted(o),o){const e=`${a}-${t.getCompId()}`;(0,s._setAriaActiveDescendant)(this.richSelectWrapper,e),this.richSelectWrapper.setAttribute("data-active-option",e)}})}}getIndicesForValues(e){const{currentList:t}=this;if(!t||0===t.length||null==e)return[];if(Array.isArray(e)||(e=[e]),0===e.length)return[];const{valueFormatter:i}=this.params,s=[],o="object"==typeof e[0],r=t.map(i);for(const n of e){let e=-1;e=o?r.indexOf(i(n)):t.indexOf(n),e>=0&&s.push(e)}return s}toggleListItemSelection(e){const t=this.findItemInSelected(e);void 0!==t?this.selectedItems.delete(t):this.selectedItems.add(e),this.refreshSelectedItems(),this.dispatchValueSelected()}refreshSelectedItems(){this.forEachRenderedRow(e=>{const t=void 0!==this.findItemInSelected(e.getValue());e.updateSelected(t)})}findItemInSelected(e){if("object"!=typeof e)return this.selectedItems.has(e)?e:void 0;{const t=this.params.valueFormatter,i=t(e);for(const e of this.selectedItems)if(t(e)===i)return e}}createRowComponent(e,t){const i=new o.RichSelectRow(this.params);t.setAttribute("id",`${a}-${i.getCompId()}`),i.setParentComponent(this),this.createBean(i),i.setState(e);const{highlightMatch:s,searchType:r="fuzzy"}=this.params;return s&&"fuzzy"!==r&&i.highlightString(this.getSearchString()),i}getRowForMouseEvent(e){if(!this.model)return-1;const t=this.getGui().getBoundingClientRect(),i=this.getScrollTop(),s=e.clientY-t.top+i;return Math.min(Math.floor(s/this.getRowHeight()),this.model.getRowCount()-1)}onMouseMove(e){const t=this.getRowForMouseEvent(e);-1!==t&&t!=this.lastRowHovered&&(this.lastRowHovered=t,this.highlightIndex(t,!0))}onMouseDown(e){e.preventDefault()}onMouseOut(e){this.getGui().contains(e.relatedTarget)||this.highlightIndex(-1)}onClick(e){const{multiSelect:t}=this.params;if(!this.currentList?.length)return;const i=this.getRowForMouseEvent(e),s=this.currentList[i];t?this.toggleListItemSelection(s):(this.selectListItems([s]),this.dispatchValueSelected())}dispatchValueSelected(){this.dispatchLocalEvent({type:"richSelectListRowSelected",fromEnterKey:!1,value:this.selectedItems})}destroy(){super.destroy(),this.eStateComp=void 0}}t.AgRichSelectList=l},7793:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.RichSelectRow=void 0;const s=i(76624),o=i(62005),r={tag:"div",cls:"ag-rich-select-row",role:"presentation"};class n extends s.Component{wireBeans(e){this.userCompFactory=e.userCompFactory,this.registry=e.registry}constructor(e){super(r),this.params=e}postConstruct(){this.tooltipFeature=this.createOptionalManagedBean(this.registry.createDynamicBean("highlightTooltipFeature",!1,{getGui:()=>this.getGui(),shouldDisplayTooltip:()=>this.shouldDisplayTooltip?.()??!0},this))}setState(e){const{params:t}=this,i=t.valueFormatter?.(e)??"";this.populateWithRenderer(e,i)||this.populateWithoutRenderer(e,i),this.value=e}highlightString(e){const{parsedValue:t,params:i}=this;if(i.cellRenderer||!(0,s._exists)(t))return;let o=(0,s._exists)(e);if(o){const i=t?.toLocaleLowerCase().indexOf(e.toLocaleLowerCase());if(i>=0){const o=i+e.length,r=this.getGui().querySelector("span");r&&((0,s._clearElement)(r),r.append(t.slice(0,i),(0,s._createElement)({tag:"span",cls:"ag-rich-select-row-text-highlight",children:t.slice(i,o)}),t.slice(o)))}else o=!1}o||this.renderValueWithoutRenderer(t)}updateSelected(e){const t=this.getGui();(0,s._setAriaSelected)(t.parentElement,e),this.toggleCss("ag-rich-select-row-selected",e)}getValue(){return this.value}toggleHighlighted(e){this.toggleCss("ag-rich-select-row-highlighted",e),this.dispatchLocalEvent({type:"itemHighlighted",highlighted:e})}populateWithoutRenderer(e,t){const i=this.getGui(),o=(0,s._createElement)({tag:"span"});o.style.overflow="hidden",o.style.textOverflow="ellipsis";const r=(0,s._toString)((0,s._exists)(t)?t:e);this.parsedValue=(0,s._exists)(r)?r:null,i.appendChild(o),this.renderValueWithoutRenderer(r),this.shouldDisplayTooltip=(0,s._isElementOverflowingCallback)(()=>o),this.tooltipFeature?.setTooltipAndRefresh(this.parsedValue)}renderValueWithoutRenderer(e){const t=this.getGui().querySelector("span");t&&(t.textContent=(0,s._exists)(e)?e:" ")}populateWithRenderer(e,t){let i,r;const{cellRenderer:n,cellRendererParams:a}=this.params;if(n){const i=this.getParentComponent()?.getParentComponent();r=(0,s._getEditorRendererDetails)(this.userCompFactory,this.params,(0,s._addGridCommonParams)(this.gos,{value:e,valueFormatted:t,cellRendererParams:a,getValue:()=>i?.getValue(),setValue:e=>{i?.setValue(e,!0)},setTooltip:(e,t)=>{this.gos.assertModuleRegistered("Tooltip",3),this.shouldDisplayTooltip=t,this.tooltipFeature?.setTooltipAndRefresh(e)}}))}return r&&(i=r.newAgStackInstance()),i&&(0,o._bindCellRendererToHtmlElement)(i,this.getGui()),!!i&&(i.then(e=>{this.addDestroyFunc(()=>{this.destroyBean(e)})}),!0)}}t.RichSelectRow=n},49703:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Dialog=t.DIALOG_CALLBACKS=void 0;const s=i(76624),o=i(87144);t.DIALOG_CALLBACKS={stopPropagationCallbacks:s._STOP_PROPAGATION_CALLBACKS,focusNextContainer:(e,t)=>(0,s._focusNextGridCoreContainer)(e,t),configureFocusableContainer:(e,t)=>{const i=e.ctrlsSvc.get("gridCtrl");i.addFocusableContainer(t),t.addDestroyFunc(()=>i.removeFocusableContainer(t))}};class r extends o.AgDialog{constructor(e){super(e,t.DIALOG_CALLBACKS)}}t.Dialog=r},75831:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.FormulaInputAutocompleteFeature=void 0;const s=i(76624),o=i(33359),r=i(93916),n=i(21635),a=i(44327);class l extends s.BeanStub{constructor(e){super(),this.field=e,this.functionAutocompleteList=null,this.functionAutocompleteToken=null,this.functionAutocompleteEntries=null,this.functionAutocompleteSearch=null}postConstruct(){this.addManagedElementListeners(this.field.getContentElement(),{keydown:this.onContentKeyDown.bind(this),mouseup:this.updateFunctionAutocomplete.bind(this),focusin:this.updateFunctionAutocomplete.bind(this),focusout:this.closeFunctionAutocomplete.bind(this)}),this.addDestroyFunc(()=>this.closeFunctionAutocomplete())}onPlainValueUpdated(){this.closeFunctionAutocomplete()}onFormulaValueUpdated(){this.updateFunctionAutocomplete()}onContentKeyDown(e){if(this.functionAutocompleteList)switch(e.key){case s.KeyCode.ENTER:case s.KeyCode.TAB:return e.preventDefault(),e.stopPropagation(),void this.confirmFunctionAutocomplete();case s.KeyCode.ESCAPE:return e.preventDefault(),e.stopPropagation(),void this.closeFunctionAutocomplete();case s.KeyCode.UP:case s.KeyCode.DOWN:return void this.functionAutocompleteList.onNavigationKeyDown(e,e.key)}switch(e.key){case s.KeyCode.LEFT:case s.KeyCode.RIGHT:case s.KeyCode.PAGE_HOME:case s.KeyCode.PAGE_END:this.scheduleFunctionAutocompleteUpdate()}}scheduleFunctionAutocompleteUpdate(){setTimeout(()=>{this.isAlive()&&this.updateFunctionAutocomplete()})}updateFunctionAutocomplete(){if(!this.isContentFocused())return void this.closeFunctionAutocomplete();const{field:e,beans:t}=this,i=e.getCurrentValue();if(!i.trimStart().startsWith("="))return void this.closeFunctionAutocomplete();const s=e.getCaretOffsetsForAutocomplete(i);if(!s)return void this.closeFunctionAutocomplete();if(c(t,i,s.valueOffset))return void this.closeFunctionAutocomplete();const o=d(i,s.valueOffset,t.formula??null);if(!o)return void this.closeFunctionAutocomplete();const{prefix:r}=o;if(!r.length)return void this.closeFunctionAutocomplete();const n=this.getFunctionAutocompleteEntries();if(!n.length)return void this.closeFunctionAutocomplete();const a=r.toLocaleLowerCase();n.some(({key:e})=>e.toLocaleLowerCase().startsWith(a))?(this.functionAutocompleteToken=o,this.openFunctionAutocomplete(n),this.functionAutocompleteList&&this.functionAutocompleteSearch!==r&&(this.functionAutocompleteList.setSearch(r),this.functionAutocompleteSearch=r)):this.closeFunctionAutocomplete()}getFunctionAutocompleteEntries(){const e=this.beans.formula,t=e?.active?e.getFunctionNames?.()??[]:[];return this.functionAutocompleteEntries&&this.functionAutocompleteEntries.length===t.length||(this.functionAutocompleteEntries=t.map(e=>({key:e}))),this.functionAutocompleteEntries}openFunctionAutocomplete(e){if(this.functionAutocompleteList||!e.length)return;const t=this.beans.popupSvc;if(!t)return;let i=null;const s=()=>{this.functionAutocompleteList&&i&&t.positionPopupByComponent(i)};this.functionAutocompleteList=this.createManagedBean(new o.AgAutocompleteList({autocompleteEntries:e,onConfirmed:()=>this.confirmFunctionAutocomplete(),useStartsWithSearch:!0,autoSizeList:!0,maxVisibleItems:10,onListHeightChanged:s}));const r=this.functionAutocompleteList.getGui();i={ePopup:r,type:"autocomplete",eventSource:this.field.getGui(),position:"under",alignSide:this.gos.get("enableRtl")?"right":"left",keepWithinBounds:!0};const n=t.addPopup({eChild:r,anchorToElement:this.field.getGui(),positionCallback:s,ariaLabel:"Formula functions"});this.functionAutocompleteHidePopup=n.hideFunc,this.functionAutocompleteList.afterGuiAttached()}closeFunctionAutocomplete(){this.functionAutocompleteToken=null,this.functionAutocompleteSearch=null,this.functionAutocompleteList&&(this.functionAutocompleteHidePopup?.(),this.functionAutocompleteHidePopup=void 0,this.destroyBean(this.functionAutocompleteList),this.functionAutocompleteList=null)}confirmFunctionAutocomplete(){const e=this.functionAutocompleteToken,t=this.functionAutocompleteList?.getSelectedValue();if(!e||!t)return void this.closeFunctionAutocomplete();const{field:i}=this,s=i.getCurrentValue(),o=t.key,r=s.slice(0,e.start)+o+s.slice(e.end),n=e.start+o.length,a="("===r[n]?r:r.slice(0,n)+"("+r.slice(n);i.getContentElement().focus({preventScroll:!0}),i.applyFormulaValueChange({currentValue:s,nextValue:a,caret:n+1}),this.closeFunctionAutocomplete()}isContentFocused(){return(0,s._getDocument)(this.beans).activeElement===this.field.getContentElement()}}t.FormulaInputAutocompleteFeature=l;const d=(e,t,i)=>{if(t<0||t>e.length||u(e,t))return null;let s=t;for(;s>0&&(0,r.isFormulaIdentChar)(e[s-1]);)s--;let o=t;for(;o{for(const s of(0,a.getRefTokenMatchesForFormula)(e,t))if(i>=s.start&&i<=s.end)return!0;return!1},u=(e,t)=>{let i=!1;for(let s=0;s{this.rangeSelectionEnabled=!1,this.suppressRangeEvents=!1,this.ignoreNextRangeEvent=!1,this.skipNextValueUpdate=!1,this.clearTrackedRanges(!0)}}postConstruct(){this.addManagedEventListeners({cellSelectionChanged:this.onCellSelectionChanged.bind(this)}),this.addDestroyFunc(()=>this.disableRangeSelectionWhileEditing()),this.addDestroyFunc(()=>this.unregisterActiveEditor())}onValueUpdated(e,t){if(this.skipNextValueUpdate)this.skipNextValueUpdate=!1;else if(this.isActiveEditor()){if(t){return this.enableRangeSelectionWhileEditing()&&(this.skipNextValueUpdate=!0,this.field.setValue(e,!0)),void this.syncRangesFromFormula(e)}this.disableRangeSelectionWhileEditing()}}setEditingCellRef(e,t,i){this.editingColumn=e,this.editingRowIndex=t??void 0,this.editingCellRef=i}setEditorActive(e){e?this.registerActiveEditor():this.unregisterActiveEditor()}withSelectionChangeHandlingSuppressed(e){const t=this.suppressSelectionChangeHandling;this.suppressSelectionChangeHandling=!0;try{e()}finally{this.suppressSelectionChangeHandling=t}}deactivateForFocusLoss(){this.isActiveEditor()&&(this.handleEditorDeactivated(),this.beans.editSvc?.disableRangeSelectionWhileEditing?.(),this.unregisterActiveEditor())}registerActiveEditor(){const e=this.field.getCompId(),{formulaInputManager:t}=this.beans;if(!t)return;if(!t.registerActiveEditor(e,this.handleEditorDeactivated))return;this.rangeSelectionEnabled=!1,this.suppressRangeEvents=!1,this.ignoreNextRangeEvent=!1,this.skipNextValueUpdate=!1,this.clearTrackedRanges(!1);const i=this.field.getCurrentValue(),s=i.trimStart().startsWith("=");this.onValueUpdated(i,s)}unregisterActiveEditor(){const e=this.field.getCompId(),{formulaInputManager:t}=this.beans;t&&t.unregisterActiveEditor(e,this.handleEditorDeactivated)}isActiveEditor(){const e=this.field.getCompId(),{formulaInputManager:t}=this.beans;return!!t&&t.isActiveEditor(e)}getTrackedRefCount(e){return this.trackedRangeRefs.get(e)??0}hasTrackedRef(e){return this.getTrackedRefCount(e)>0}addTrackedRef(e){this.trackedRangeRefs.set(e,this.getTrackedRefCount(e)+1)}removeTrackedRef(e){const t=this.getTrackedRefCount(e)-1;t<=0?this.trackedRangeRefs.delete(e):this.trackedRangeRefs.set(e,t)}enableRangeSelectionWhileEditing(){return!this.rangeSelectionEnabled&&(this.rangeSelectionEnabled=!0,this.beans.editSvc?.enableRangeSelectionWhileEditing?.(),!0)}disableRangeSelectionWhileEditing(){(this.rangeSelectionEnabled||this.trackedRangeRefs.size)&&(this.rangeSelectionEnabled=!1,this.beans.editSvc?.disableRangeSelectionWhileEditing?.(),this.clearTrackedRanges(this.isActiveEditor()))}clearTrackedRanges(e=!0){if(e){Array.from(this.trackedRangeRefs.keys()).forEach(e=>this.removeRangeForRef(e))}this.trackedRangeRefs.clear(),this.trackedRanges.clear()}getLiveRanges(){return this.beans.rangeSvc?.getCellRanges()??[]}withSuppressedRangeEvents(e){this.suppressRangeEvents=!0,e(),this.suppressRangeEvents=!1}setCellRangesSilently(e){const t=this.beans.rangeSvc;t&&this.withSuppressedRangeEvents(()=>t.setCellRanges(e))}getColorIndexForTokenOrRef(e,t){return this.field.getColorIndexForToken(t??null)??this.field.getColorIndexForRef(e)}normaliseRefForComparison(e){if(!e)return null;return(e.endsWith(":")?e.slice(0,-1):e).replace(/\$/g,"").toUpperCase()}tagRangeColor(e,t,i){const{rangeClass:s}=(0,o.getColorClassesForRef)(t,i);return e.colorClass!==s&&((0,o.tagRangeWithFormulaColor)(e,t,i),!0)}trackRange(e,t,i){const s=this.trackedRanges.get(e),o=void 0!==i?i:s?.tokenIndex??null;s?s.ref!==t&&(this.removeTrackedRef(s.ref),this.addTrackedRef(t)):this.addTrackedRef(t),this.trackedRanges.set(e,{ref:t,tokenIndex:o})}getUntrackedFormulaRangesByRef(){const e=new Map,t=this.getLiveRanges();for(const i of t){if(this.trackedRanges.has(i))continue;if(null==(0,o.getRangeColorIndexFromClass)(i.colorClass))continue;const t=(0,o.rangeToRef)(this.beans,i);if(!t||t===this.editingCellRef)continue;const s=e.get(t);s?s.push(i):e.set(t,[i])}return e}syncRangesFromFormula(e){const t=e??this.field.getCurrentValue()??"";if(!this.rangeSelectionEnabled)return void this.clearTrackedRanges();const i=(0,o.getRefTokensFromText)(this.beans,t),s=new Map;for(const e of i){const{ref:t,index:i}=e;if(t===this.editingCellRef)continue;const o=s.get(t)??[];o.push(i),s.set(t,o)}for(const e of Array.from(this.trackedRangeRefs.keys()))s.has(e)||this.removeRangeForRef(e);if(!this.beans.rangeSvc)return;const r=new Set(this.getLiveRanges());for(const[e,t]of this.trackedRanges.entries())r.has(e)||(this.trackedRanges.delete(e),this.removeTrackedRef(t.ref));const n=this.getUntrackedFormulaRangesByRef();let a=!1;for(const[e,t]of s.entries()){const i=[];for(const[t,s]of this.trackedRanges.entries())s.ref===e&&i.push(t);const s=n.get(e);for(;i.lengtht.length;){const e=i.pop();e&&this.removeTrackedRange(e)}for(;i.length!l.includes(e));t.length!==e.length&&(this.setCellRangesSilently(t),a=!0)}a&&this.refreshRangeStyling()}onCellSelectionChanged(e){if(!this.isActiveEditor()||!this.rangeSelectionEnabled||!this.beans.editSvc?.isRangeSelectionEnabledWhileEditing?.())return;if(this.ignoreNextRangeEvent)return void(this.ignoreNextRangeEvent=!1);if(this.suppressSelectionChangeHandling)return;const{finished:t,started:i}=e,r=this.getLiveRanges(),n=r.filter(e=>!this.isSpecialOnlyRange(e));if(n.length!==r.length)return this.setCellRangesSilently(n),void this.refocusEditingCell();const a=r.length?(0,s._last)(r):null,l=a?(0,o.rangeToRef)(this.beans,a):null,d=!!a&&!this.trackedRanges.has(a)&&!!l&&l!==this.editingCellRef,c=t&&(i||d),u=this.ensureTrackedRangeColors();if(this.suppressRangeEvents)return void(u&&this.refreshRangeStyling());if((i||d)&&this.field.rememberCaret(),!d&&this.handleRemovedRangeTokens())return this.field.restoreCaretAfterToken(),void this.refocusEditingCell();if(this.updateTrackedRangeTokens())return;const h=(0,o.getLatestRangeRef)(this.beans);if(h&&h!==this.editingCellRef){if(c){const{action:e,previousRef:t,tokenIndex:i}=this.field.applyRangeInsert(h);return"none"===e?(this.keepLatestSelectionOnly(a),void this.beans.editSvc?.stopEditing(void 0,{source:"edit"})):"replace"===e&&t===h?(this.discardLatestRangeForRef(h),this.field.restoreCaretAfterToken(),void this.refocusEditingCell()):(this.tagLatestRangeForRef(h,i),this.handleRangeTokenUpdate(t,h,!0,"insert"===e,i),this.syncRangesFromFormula(this.field.getCurrentValue()),this.field.restoreCaretAfterToken(),void this.refocusEditingCell())}if(!i&&!t){const{previousRef:e,tokenIndex:t}=this.field.insertOrReplaceToken(h,!1);return this.tagLatestRangeForRef(h,t),this.handleRangeTokenUpdate(e,h,!1,!1),void this.refocusEditingCell()}this.tagLatestRangeForRef(h),t&&(this.field.restoreCaretAfterToken(),this.refocusEditingCell())}else this.refocusEditingCell()}keepLatestSelectionOnly(e){!e||this.getLiveRanges().length<=1||this.setCellRangesSilently([e])}isSpecialOnlyRange(e){const t=e.columns;return!!t?.length&&t.every(e=>(0,s.isSpecialCol)(e))}handleRangeTokenUpdate(e,t,i,s,o){if(i)return!s&&e&&e!==t&&this.removeRangeForRef(e,o),void this.addRangeForRef(t,!0,o);!s&&e?e!==t&&(this.removeTrackedRef(e),this.addTrackedRef(t)):this.addTrackedRef(t)}addRangeForRef(e,t,i){const s=this.beans.rangeSvc;if(!s)return;let r;if(t)r=this.findLatestRangeForRef(e,!0)??this.findLatestRangeForRef(e,!1);else{const t=(0,o.getCellRangeParams)(this.beans,e);if(!t)return;this.withSuppressedRangeEvents(()=>{r=s.addCellRange(t)})}if(r){const t=this.getColorIndexForTokenOrRef(e,i);this.tagRangeColor(r,e,t),this.trackRange(r,e,i),this.refreshRangeStyling()}return r}findLatestRangeForRef(e,t){const i=this.getLiveRanges();for(let s=i.length-1;s>=0;s--){const r=i[s];if((0,o.rangeToRef)(this.beans,r)===e&&(!t||!this.trackedRanges.has(r)))return r}}tagLatestRangeForRef(e,t){const{trackedRanges:i}=this,o=this.getLiveRanges(),r=o.length?(0,s._last)(o):null;if(!r)return;const n=i.get(r)?.tokenIndex??null,a=this.getColorIndexForTokenOrRef(e,t??n);this.tagRangeColor(r,e,a),this.refreshRangeStyling()}discardLatestRangeForRef(e){const t=this.getLiveRanges();if(!t.length)return;const i=(0,s._last)(t);(0,o.rangeToRef)(this.beans,i)===e&&(this.trackedRanges.has(i)?this.removeTrackedRange(i):this.setCellRangesSilently(t.slice(0,-1)))}ensureTrackedRangeColors(){const e=this.getLiveRanges();if(!e.length)return!1;let t=!1;for(const i of e){const e=this.trackedRanges.get(i),s=e?.ref??(0,o.rangeToRef)(this.beans,i);if(!s||!this.hasTrackedRef(s))continue;const r=e?.tokenIndex??null,n=this.field.getColorIndexForToken(r),a=(0,o.getRangeColorIndexFromClass)(i.colorClass),l=n??(this.field.hasColorForRef(s)?this.field.getColorIndexForRef(s):this.field.moveColorToRef(void 0,s,a??void 0));null!=l&&(this.tagRangeColor(i,s,l)&&(t=!0),this.trackedRanges.has(i)||this.trackRange(i,s,r))}return t}handleRemovedRangeTokens(){if(!this.beans.rangeSvc||0===this.trackedRanges.size)return!1;const e=this.field.getCurrentValue(),t=(0,o.getRefTokensFromText)(this.beans,e).filter(({ref:e})=>e!==this.editingCellRef);if(!t.length)return!1;const i=this.getLiveRanges(),s=new Set(i),r=new Map;for(const e of i){const t=(0,o.rangeToRef)(this.beans,e);t&&t!==this.editingCellRef&&r.set(t,(r.get(t)??0)+1)}const n=new Map;for(const e of t){const{ref:t}=e;n.set(t,(n.get(t)??0)+1)}for(const[e,t]of Array.from(n.entries())){const i=t-(r.get(e)??0);i>0?n.set(e,i):n.delete(e)}if(!n.size)return!1;const a=[];for(const[e,t]of Array.from(this.trackedRanges.entries())){if(s.has(e))continue;const{ref:i}=t,o=n.get(i)??0;o<=0||(n.set(i,o-1),a.push({range:e,tracked:t}))}if(!a.length)return!1;a.sort((e,t)=>(t.tracked.tokenIndex??-1)-(e.tracked.tokenIndex??-1));let l=!1;for(const{range:e,tracked:t}of a){const{ref:i,tokenIndex:s}=t;l=this.field.removeTokenRef(i,s??null)||l,this.trackedRanges.delete(e),this.removeTrackedRef(i)}return l&&this.syncRangesFromFormula(this.field.getCurrentValue()),l}refreshRangeStyling(){const{eventSvc:e}=this.beans;e&&(this.ensureTrackedRangeColors(),this.ignoreNextRangeEvent=!0,e.dispatchEvent({type:"cellSelectionChanged",started:!1,finished:!1}))}refocusEditingCell(){const{focusSvc:e}=this.beans,{editingColumn:t,editingRowIndex:i}=this;e&&null!=t&&null!=i&&e.setFocusedCell({column:t,rowIndex:i,rowPinned:null,preventScrollOnBrowserFocus:!0})}removeTrackedRange(e){const t=this.trackedRanges.get(e);if(!t)return;const i=this.getLiveRanges(),s=i.filter(t=>t!==e);s.length!==i.length&&this.setCellRangesSilently(s),this.trackedRanges.delete(e),this.removeTrackedRef(t.ref)}removeRangeForRef(e,t){if(e&&this.hasTrackedRef(e)){if(null!=t){let i=!1;for(const[s,o]of Array.from(this.trackedRanges.entries())){const{ref:r,tokenIndex:n}=o;if(r===e&&n===t){this.removeTrackedRange(s),i=!0;break}}if(!i)for(const[t,i]of Array.from(this.trackedRanges.entries()))if(i.ref===e){this.removeTrackedRange(t);break}return}for(const[t,i]of Array.from(this.trackedRanges.entries()))i.ref===e&&this.removeTrackedRange(t)}}updateTrackedRangeTokens(){if(!this.beans.rangeSvc)return!1;const e=this.getLiveRanges(),t=this.normaliseRefForComparison(this.editingCellRef);let i=!1;for(const s of e){const e=this.trackedRanges.get(s);if(!e)continue;const{ref:r,tokenIndex:n}=e,a=(0,o.rangeToRef)(this.beans,s),l=this.normaliseRefForComparison(r),d=this.normaliseRefForComparison(a);if(!a||!d||d===l||d===t)continue;const{colorClass:c}=s,u=this.field.getColorIndexForToken(n??null)??this.field.moveColorToRef(r,a,(0,o.getRangeColorIndexFromClass)(c)??void 0),h=this.field.replaceTokenRef(r,a,u,n);null!=h&&(this.tagRangeColor(s,a,u),this.trackRange(s,a,h??n??null),i=!0)}return i&&this.refreshRangeStyling(),i}}t.FormulaInputRangeSyncFeature=r},21635:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.getPreviousNonSpaceChar=t.TOKEN_INSERT_AFTER_CHARS=void 0,t.TOKEN_INSERT_AFTER_CHARS=new Set(["=","+","-","*","/","^",",","(",";","<",">","&"]);t.getPreviousNonSpaceChar=(e,t)=>{for(let i=t-1;i>=0;i--){const t=e[i];if(null!=t&&""!==t.trim())return t}return null}},44327:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.getRefTokensFromText=t.getRefTokenMatchesForFormula=t.rangeToRef=t.getLatestRangeRef=t.getCellRangeParams=t.tagRangeWithFormulaColor=t.getRangeColorIndexFromClass=t.getColorClassesForRef=void 0;const s=i(76624),o=i(93916);t.getColorClassesForRef=(e,t)=>{const i=t??0;return{tokenClass:`ag-formula-token-color-${i+1}`,rangeClass:`ag-formula-range-color-${i+1}`,colorIndex:i}};t.getRangeColorIndexFromClass=e=>{if(!e)return null;const t=/ag-formula-range-color-(\d+)/.exec(e);if(!t)return null;const i=parseInt(t[1],10);return Number.isFinite(i)?i-1:null};t.tagRangeWithFormulaColor=(e,i,s)=>{if(!e)return;const{rangeClass:o}=(0,t.getColorClassesForRef)(i,s);e.colorClass=o};t.getCellRangeParams=(e,t)=>{const i=(0,o.parseA1Ref)(t,{allowTrailingColon:!0});if(!i)return null;const{formula:s}=e,{startCol:r,startRow:n,endCol:a,endRow:l}=i,d=r,c=a??r,u=s?.getColByRef(d),h=s?.getColByRef(c);if(!u||!h)return null;const g=parseInt(n,10)-1,p=l?parseInt(l,10)-1:g;if(g<0||p<0)return null;const m=e.rowModel;return m?.getFormulaRow(g)&&m.getFormulaRow(p)?{rowStartIndex:g,rowEndIndex:p,columnStart:u,columnEnd:h}:null};t.getLatestRangeRef=e=>{const i=e.rangeSvc?.getCellRanges(),s=i?.length?i[i.length-1]:null;return s?(0,t.rangeToRef)(e,s):null};t.rangeToRef=(e,t)=>{const{rangeSvc:i,formula:o}=e;if(!i||!o)return null;const r=i.getRangeStartRow(t),n=i.getRangeEndRow(t);if(!r||!n||r.rowPinned||n.rowPinned)return null;const a=Math.min(r.rowIndex,n.rowIndex)+1,l=Math.max(r.rowIndex,n.rowIndex)+1,d=t.columns?.filter(e=>!(0,s.isSpecialCol)(e)&&!!o.getColRef(e));if(!d?.length)return null;const c=[...d],u=c[0],h=c[c.length-1],g=o.getColRef(u),p=o.getColRef(h);if(!g||!p)return null;return g===p&&a===l?`${g}${a}`:`${g}${a}:${p}${l}`};t.getRefTokenMatchesForFormula=(e,i)=>{const s=(0,o.getRefTokenMatches)(i),{formula:r}=e;if(!r)return s;const n=[];let a=0;for(const i of s)(0,t.getCellRangeParams)(e,i.ref)&&(n.push({...i,index:a}),a+=1);return n};t.getRefTokensFromText=(e,i)=>(0,t.getRefTokenMatchesForFormula)(e,i).map(({ref:e,index:t})=>({ref:e,index:t}))},27685:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.menuCSS=void 0,t.menuCSS='.ag-menu-list{cursor:default;display:table;padding:var(--ag-spacing) 0;width:100%}.ag-menu-option,.ag-menu-separator{display:table-row}.ag-menu-option-part,.ag-menu-separator-part{display:table-cell;vertical-align:middle}.ag-menu-option{cursor:pointer;font-weight:500}:where(.ag-ltr) :where(.ag-menu-option-popup-pointer) .ag-icon{text-align:right}:where(.ag-rtl) :where(.ag-menu-option-popup-pointer) .ag-icon{text-align:left}.ag-menu-option-text{white-space:nowrap}.ag-menu-option-custom{display:contents}.ag-compact-menu-option{display:flex;flex-wrap:nowrap;width:100%}.ag-compact-menu-option-text{flex:1 1 auto;white-space:nowrap}.ag-menu-separator{height:calc(var(--ag-spacing)*2 + 1px)}.ag-menu-separator-part:after{border-top:solid var(--ag-border-width) var(--ag-menu-separator-color);content:"";display:block}.ag-compact-menu-option-active,.ag-menu-option-active{background-color:var(--ag-row-hover-color)}.ag-compact-menu-option-part,.ag-menu-option-part{line-height:var(--ag-icon-size);padding:calc(var(--ag-spacing) + 2px) 0}.ag-compact-menu-option-disabled,.ag-menu-option-disabled{cursor:not-allowed;opacity:.5}.ag-compact-menu-option-icon,.ag-menu-option-icon{width:var(--ag-icon-size)}:where(.ag-ltr) .ag-compact-menu-option-icon,:where(.ag-ltr) .ag-menu-option-icon{padding-left:calc(var(--ag-spacing)*2)}:where(.ag-rtl) .ag-compact-menu-option-icon,:where(.ag-rtl) .ag-menu-option-icon{padding-right:calc(var(--ag-spacing)*2)}.ag-compact-menu-option-text,.ag-menu-option-text{padding-left:calc(var(--ag-spacing)*2);padding-right:calc(var(--ag-spacing)*2)}:where(.ag-ltr) .ag-compact-menu-option-shortcut,:where(.ag-ltr) .ag-menu-option-shortcut{padding-right:var(--ag-spacing)}:where(.ag-rtl) .ag-compact-menu-option-shortcut,:where(.ag-rtl) .ag-menu-option-shortcut{padding-left:var(--ag-spacing)}:where(.ag-ltr) .ag-compact-menu-option-popup-pointer,:where(.ag-ltr) .ag-menu-option-popup-pointer{padding-right:var(--ag-spacing)}:where(.ag-rtl) .ag-compact-menu-option-popup-pointer,:where(.ag-rtl) .ag-menu-option-popup-pointer{padding-left:var(--ag-spacing)}.ag-menu-column-select-wrapper{height:265px;overflow:auto;:where(.ag-column-select){height:100%}}.ag-menu:where(.ag-tabs){min-width:290px}.ag-context-menu-loading-icon{pointer-events:none;position:absolute}'},51504:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.MenuItemComponent=t.MENU_ITEM_CALLBACKS=void 0;const s=i(76624),o=i(75749),r=i(70234),n={name:"menuItem",optionalMethods:["setActive","select","setExpanded","configureDefaults"]};t.MENU_ITEM_CALLBACKS={getMenuItemComp:(e,t,i)=>{const o=e.userCompFactory.getCompDetails(t,n,"agMenuItem",(0,s._addGridCommonParams)(e.gos,i),!0);return o?.newAgStackInstance()??s.AgPromise.resolve()},getPostProcessPopupParams:({column:e,node:t})=>({column:e,rowNode:t}),preserveRangesWhile:r._preserveRangesWhile,stopPropagationCallbacks:s._STOP_PROPAGATION_CALLBACKS,warnNoItem:e=>{(0,s._warn)(228,{menuItemOrString:e})}};class a extends o.AgMenuItemComponent{constructor(){super(t.MENU_ITEM_CALLBACKS)}}t.MenuItemComponent=a},73375:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.MenuItemModule=void 0;const s=i(19586),o=i(27685),r=i(15536);t.MenuItemModule={moduleName:"MenuItem",version:s.VERSION,userComponents:{agMenuItem:r.MenuItemRenderer},icons:{check:"tick",subMenuOpen:"small-right",subMenuOpenRtl:"small-left"},css:[o.menuCSS]}},15536:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.MenuItemRenderer=void 0;const s=i(76624),o=i(50531);class r extends o.AgMenuItemRenderer{constructor(){super({warnNoIcon:()=>(0,s._warn)(227)})}}t.MenuItemRenderer=r},20500:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.MenuList=void 0;const s=i(67255),o=i(51504);class r extends s.AgMenuList{constructor(e,t={column:null,node:null,value:null}){super(e,t,o.MENU_ITEM_CALLBACKS)}}t.MenuList=r},63173:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.PillDragComp=void 0;const s=i(76624),o={tag:"span",role:"option",children:[{tag:"span",ref:"eDragHandle",cls:"ag-drag-handle ag-column-drop-cell-drag-handle",role:"presentation"},{tag:"span",ref:"eText",cls:"ag-column-drop-cell-text",attrs:{"aria-hidden":"true"}},{tag:"span",ref:"eButton",cls:"ag-column-drop-cell-button",role:"presentation"}]};class r extends s.Component{constructor(e,t,i,o,r){super(),this.dragSourceDropTarget=e,this.ghost=t,this.horizontal=i,this.template=o,this.agComponents=r,this.eText=s.RefPlaceholder,this.eDragHandle=s.RefPlaceholder,this.eButton=s.RefPlaceholder}postConstruct(){this.setTemplate(this.template??o,this.agComponents);const e=this.getGui(),{beans:t,eDragHandle:i,eText:r,eButton:n}=this;this.addElementClasses(e),this.addElementClasses(i,"drag-handle"),this.addElementClasses(r,"text"),this.addElementClasses(n,"button"),i.appendChild((0,s._createIconNoSpan)("columnDrag",t)),n.appendChild((0,s._createIconNoSpan)("cancel",t)),this.tooltipFeature=this.createOptionalManagedBean(t.registry.createDynamicBean("tooltipFeature",!1,{getGui:()=>this.getGui()})),this.setupComponents(),!this.ghost&&this.isDraggable()&&this.addDragSource(),this.setupAria(),this.setupTooltip(),this.activateTabIndex(),this.refreshDraggable()}isDraggable(){return!0}refreshDraggable(){this.eDragHandle.classList.toggle("ag-column-select-column-readonly",!this.isDraggable())}setupAria(){const e=this.getLocaleTextFunc(),t=[this.getAriaDisplayName()];this.addAdditionalAriaInstructions(t,e),(0,s._setAriaLabel)(this.getGui(),t.join(". "))}addAdditionalAriaInstructions(e,t){if(this.isRemovable()){const i=t("ariaDropZoneColumnComponentDescription","Press DELETE to remove");e.push(i)}}setupTooltip(){const e=()=>this.tooltipFeature?.setTooltipAndRefresh(this.getTooltip());e(),this.addManagedEventListeners({newColumnsLoaded:e})}getDragSourceId(){}getDefaultIconName(){return"notAllowed"}addDragSource(){const{beans:{dragAndDrop:e},eDragHandle:t}=this,i=this.createGetDragItem(),s=this.getDefaultIconName(),o={type:this.getDragSourceType(),sourceId:this.getDragSourceId(),eElement:t,getDefaultIconName:()=>s,getDragItem:i,dragItemName:this.getDisplayName()};e?.addDragSource(o,!0),this.addDestroyFunc(()=>e?.removeDragSource(o))}setupComponents(){this.eText.textContent=this.getDisplayValue(),this.setupRemove(),this.ghost&&this.addCss("ag-column-drop-cell-ghost")}isRemovable(){return!0}refreshRemove(){(0,s._setDisplayed)(this.eButton,this.isRemovable())}setupRemove(){this.refreshRemove();const e={type:"columnRemove"};this.addGuiEventListener("keydown",e=>this.onKeyDown(e)),this.addManagedElementListeners(this.eButton,{click:t=>{this.dispatchLocalEvent(e),t.stopPropagation()}});const t=new s.TouchListener(this.eButton);this.addManagedListeners(t,{tap:()=>this.dispatchLocalEvent(e)}),this.addDestroyFunc(t.destroy.bind(t))}onKeyDown(e){e.key===s.KeyCode.DELETE&&this.isRemovable()&&(e.preventDefault(),this.dispatchLocalEvent({type:"columnRemove"}))}getDisplayValue(){return this.getDisplayName()}addElementClasses(e,t){t=t?`-${t}`:"";const i=this.horizontal?"horizontal":"vertical";e.classList.add(`ag-column-drop-cell${t}`,`ag-column-drop-${i}-cell${t}`)}destroy(){super.destroy(),this.dragSourceDropTarget=null}}t.PillDragComp=r},47496:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.pillDropZonePanelCSS=void 0,t.pillDropZonePanelCSS=".ag-column-drop{align-items:center;display:inline-flex;overflow:auto;position:relative;width:100%}.ag-column-drop-list{align-items:center;display:flex}.ag-column-drop-cell{align-items:center;background-color:var(--ag-column-drop-cell-background-color);border:var(--ag-column-drop-cell-border);border-radius:500px;color:var(--ag-column-drop-cell-text-color);display:flex;padding:calc(var(--ag-spacing)*.25);position:relative;&:focus-visible{box-shadow:var(--ag-focus-shadow)}:where(.ag-drag-handle){color:var(--ag-column-drop-cell-drag-handle-color)}}:where(.ag-ltr) .ag-column-drop-cell{padding-left:calc(var(--ag-spacing)*.75)}:where(.ag-rtl) .ag-column-drop-cell{padding-right:calc(var(--ag-spacing)*.75)}.ag-column-drop-cell-text{flex:1 1 auto;margin:0 var(--ag-spacing);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ag-column-drop-vertical{align-items:stretch;display:flex;flex-direction:column;min-height:75px;overflow:hidden}.ag-column-drop-vertical-title-bar{align-items:center;display:flex;flex:none;padding:var(--ag-widget-container-vertical-padding) calc(var(--ag-spacing)*2) 0}.ag-column-drop-vertical-list{align-items:stretch;flex-direction:column;flex-grow:1;overflow-x:auto;padding-bottom:var(--ag-spacing);padding-left:var(--ag-spacing);padding-right:var(--ag-spacing);position:relative}:where(.ag-column-drop-empty) .ag-column-drop-vertical-list{overflow:hidden}.ag-column-drop-cell-button{cursor:pointer;min-width:0;opacity:.75}:where(.ag-ltr) .ag-column-drop-cell-button{margin-right:calc(var(--ag-spacing)/4)}:where(.ag-rtl) .ag-column-drop-cell-button{margin-left:calc(var(--ag-spacing)/4)}.ag-column-drop-cell-button:hover{opacity:1}:where(.ag-ltr) .ag-column-drop-cell-drag-handle{margin-left:calc(var(--ag-spacing)/4)}:where(.ag-rtl) .ag-column-drop-cell-drag-handle{margin-right:calc(var(--ag-spacing)/4)}.ag-column-drop-wrapper{display:flex}.ag-column-drop-horizontal-half-width{width:50%!important}.ag-column-drop-cell-ghost{opacity:.5}.ag-column-drop-horizontal{background-color:var(--ag-header-background-color);border-bottom:var(--ag-header-row-border);gap:var(--ag-cell-widget-spacing);height:var(--ag-header-height);overflow:hidden;white-space:nowrap}:where(.ag-ltr) .ag-column-drop-horizontal{padding-left:var(--ag-cell-horizontal-padding)}:where(.ag-rtl) .ag-column-drop-horizontal{padding-right:var(--ag-cell-horizontal-padding)}.ag-column-drop-horizontal-list{gap:var(--ag-cell-widget-spacing)}.ag-column-drop-vertical-cell{margin-top:var(--ag-spacing)}:where(.ag-ltr) .ag-column-drop-vertical-icon{margin-right:var(--ag-widget-horizontal-spacing)}:where(.ag-rtl) .ag-column-drop-vertical-icon{margin-left:var(--ag-widget-horizontal-spacing)}.ag-select-agg-func-popup{background:var(--ag-background-color);border:solid var(--ag-border-width) var(--ag-border-color);border-radius:var(--ag-border-radius);box-shadow:var(--ag-dropdown-shadow);height:calc(var(--ag-spacing)*5*3.5);padding:0;position:absolute}.ag-select-agg-func-virtual-list-item{cursor:default}:where(.ag-ltr) .ag-select-agg-func-virtual-list-item{padding-left:calc(var(--ag-spacing)*2)}:where(.ag-rtl) .ag-select-agg-func-virtual-list-item{padding-right:calc(var(--ag-spacing)*2)}.ag-select-agg-func-virtual-list-item:hover{background-color:var(--ag-selected-row-background-color)}:where(.ag-ltr) .ag-column-drop-horizontal-half-width:where(:not(:last-child)){border-right:solid var(--ag-border-width) var(--ag-border-color)}:where(.ag-rtl) .ag-column-drop-horizontal-half-width:where(:not(:last-child)){border-left:solid var(--ag-border-width) var(--ag-border-color)}"},39733:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.PillDropZonePanel=void 0;const s=i(76624),o=i(47496);function r(e,t,i){null!=e&&null!=t&&e.splice(i,0,...t)}const n={tag:"div",cls:"ag-unselectable",role:"presentation"};class a extends s.Component{constructor(e){super(n),this.horizontal=e,this.state="notDragging",this.guiDestroyFunctions=[],this.childPillComponents=[],this.resizeEnabled=!1,this.addElementClasses(this.getGui()),this.ePillDropList=(0,s._createElement)({tag:"div"}),this.addElementClasses(this.ePillDropList,"list"),this.registerCSS(o.pillDropZonePanelCSS)}toggleResizable(e){this.positionableFeature.setResizable(!!e&&{bottom:!0}),this.resizeEnabled=e}isSourceEventFromTarget(e){const{dropZoneTarget:t,dragSource:i}=e;return t.contains(i.eElement)}destroy(){this.destroyGui(),super.destroy()}destroyGui(){for(const e of this.guiDestroyFunctions)e();this.guiDestroyFunctions.length=0,this.childPillComponents.length=0,(0,s._clearElement)(this.getGui()),(0,s._clearElement)(this.ePillDropList)}init(e){this.params=e??{},this.createManagedBean(new s.ManagedFocusFeature(this.getFocusableElement(),{onTabKeyDown:this.onTabKeyDown.bind(this),handleKeyDown:this.onKeyDown.bind(this)})),this.setupDropTarget(),this.positionableFeature=new s.PositionableFeature(this.getGui()),this.createManagedBean(this.positionableFeature),this.refreshGui(),(0,s._setAriaLabel)(this.ePillDropList,this.getAriaLabel())}onTabKeyDown(e){const t=(0,s._findFocusableElements)(this.getFocusableElement(),null,!0),i=t.length;if(0===i)return;const{shiftKey:o}=e,r=(0,s._getActiveDomElement)(this.beans),n=r===t[0],a=r===(0,s._last)(t);1===i||n&&o||a&&!o||t[o?0:i-1].focus()}onKeyDown(e){const{key:t}=e,i=!this.horizontal;let o=t===s.KeyCode.DOWN,r=t===s.KeyCode.UP;if(!i){const e=this.gos.get("enableRtl");o=!e&&t===s.KeyCode.RIGHT||e&&t===s.KeyCode.LEFT,r=!e&&t===s.KeyCode.LEFT||e&&t===s.KeyCode.RIGHT}if(o||r)if(e.preventDefault(),e.shiftKey)this.moveFocusedItem(r);else{const e=(0,s._findNextFocusableElement)(this.beans,this.getFocusableElement(),!1,r);e&&e.focus()}}moveFocusedItem(e){const t=this.getFocusedItem();if(-1===t)return;const i=e?-1:1;if(!this.normalizeAndUpdateInsertIndex(t,t+i))return;const s=this.childPillComponents[t];if(!s.isMovable())return;const o=s.getItem();this.focusItemAtIndex(this.insertIndex),this.rearrangeItems([o],!0)}addElementClasses(e,t){t=t?`-${t}`:"";const i=this.horizontal?"horizontal":"vertical";e.classList.add(`ag-column-drop${t}`,`ag-column-drop-${i}${t}`)}setupDropTarget(){this.dropTarget={getContainer:this.getGui.bind(this),getIconName:this.getIconName.bind(this),onDragging:this.onDragging.bind(this),onDragEnter:this.onDragEnter.bind(this),onDragLeave:this.onDragLeave.bind(this),onDragStop:this.onDragStop.bind(this),onDragCancel:this.onDragCancel.bind(this),isInterestedIn:this.isInterestedIn.bind(this)},this.beans.dragAndDrop?.addDropTarget(this.dropTarget)}minimumAllowedNewInsertIndex(){return 0}checkInsertIndex(e){const t=this.getNewInsertIndex(e);return!(t<0)&&this.normalizeAndUpdateInsertIndex(this.insertIndex,t)}normalizeAndUpdateInsertIndex(e,t){const i=this.minimumAllowedNewInsertIndex(),s=Math.max(i,t),o=s!==e;return o&&(this.insertIndex=s),o}getNewInsertIndex(e){const t=e.event,i=this.horizontal?t.clientX:t.clientY,s=this.childPillComponents.map(e=>e.getGui().getBoundingClientRect()),o=s.findIndex(e=>this.horizontal?e.right>i&&e.lefti);if(-1===o){const e=this.gos.get("enableRtl");if(s.every(e=>i>(this.horizontal?e.right:e.bottom)))return e&&this.horizontal?0:this.childPillComponents.length;return s.every(e=>i<(this.horizontal?e.left:e.top))?e&&this.horizontal?this.childPillComponents.length:0:this.insertIndex}return this.insertIndex<=o?o+1:o}checkDragStartedBySelf(e){"notDragging"===this.state&&(this.state="rearrangeItems",this.potentialDndItems=this.getItems(e.dragSource.getDragItem()),this.refreshGui(),this.checkInsertIndex(e),this.refreshGui())}onDragging(e){this.checkDragStartedBySelf(e),this.checkInsertIndex(e)&&this.refreshGui()}handleDragEnterEnd(e){}onDragEnter(e){const t=this.getItems(e.dragSource.getDragItem());this.state="newItemsIn";const i=t.filter(t=>this.isItemDroppable(t,e)),s=i.every(e=>-1!==this.childPillComponents.map(e=>e.getItem()).indexOf(e));0!==i.length&&(this.potentialDndItems=i,s?this.state="notDragging":(this.handleDragEnterEnd(e),this.checkInsertIndex(e),this.refreshGui()))}isPotentialDndItems(){return!!this.potentialDndItems?.length}handleDragLeaveEnd(e){}onDragLeave(e){if("rearrangeItems"===this.state){const t=this.getItems(e.dragSource.getDragItem());this.removeItems(t)}this.isPotentialDndItems()&&(this.handleDragLeaveEnd(e),this.potentialDndItems=[],this.refreshGui()),this.state="notDragging"}onDragCancel(e){this.isPotentialDndItems()&&("newItemsIn"===this.state&&this.handleDragLeaveEnd(e),this.potentialDndItems=[],this.refreshGui()),this.state="notDragging"}onDragStop(){this.isPotentialDndItems()&&("newItemsIn"===this.state?this.addItems(this.potentialDndItems):this.rearrangeItems(this.potentialDndItems),this.potentialDndItems=[],this.refreshGui()),this.state="notDragging"}removeItems(e){const t=this.getExistingItems().filter(t=>!e.includes(t));this.updateItems(t)}addItems(e){if(!e)return;const t=this.getExistingItems().slice(),i=e.filter(e=>t.indexOf(e)<0);r(t,i,this.insertIndex),this.updateItems(t)}addItem(e){this.insertIndex=this.getExistingItems().length,this.addItems([e]),this.refreshGui()}rearrangeItems(e,t){let i;return i=t?this.getExistingItems().filter(t=>-1===e.indexOf(t)):this.getNonGhostItems().slice(),r(i,e,this.insertIndex),!(0,s._areEqual)(i,this.getExistingItems())&&(this.updateItems(i),!0)}refreshGui(){let e=0;this.horizontal||(e=this.ePillDropList.scrollTop);const t=this.resizeEnabled,i=this.getFocusedItem(),{eGridDiv:o}=this.beans,r=(0,s._isKeyboardMode)();let n=null;r&&(n=(0,s._findNextFocusableElement)(this.beans,o)??(0,s._findNextFocusableElement)(this.beans,o,!1,!0)),this.toggleResizable(!1),this.destroyGui(),this.addIconAndTitleToGui(),this.addEmptyMessageToGui(),this.addItemsToGui(),0!==e&&(this.ePillDropList.scrollTop=e),t&&this.toggleResizable(t),r&&this.restoreFocus(i,n)}getFocusedItem(){const e=this.getGui(),t=(0,s._getActiveDomElement)(this.beans);if(!e.contains(t))return-1;return Array.from(e.querySelectorAll(".ag-column-drop-cell")).indexOf(t)}focusItemAtIndex(e){const t=this.getGui(),i=Array.from(t.querySelectorAll(".ag-column-drop-cell"))[e];i&&i.focus({preventScroll:!0})}restoreFocus(e,t){const i=this.getGui(),s=Array.from(i.querySelectorAll(".ag-column-drop-cell"));if(-1===e)return;0===s.length&&t.focus();const o=s[Math.min(s.length-1,e)];o&&o.focus()}focusList(e){const t=e?this.childPillComponents.length-1:0;this.restoreFocus(t,this.getFocusableElement())}getNonGhostItems(){const e=this.getExistingItems();return this.isPotentialDndItems()?e.filter(e=>!this.potentialDndItems.includes(e)):e}addItemsToGui(){const e=this.getNonGhostItems().map(e=>this.createItemComponent(e,!1));if(this.isPotentialDndItems()){const t=this.potentialDndItems.map(e=>this.createItemComponent(e,!0));this.insertIndex>=e.length?e.push(...t):e.splice(this.insertIndex,0,...t)}this.appendChild(this.ePillDropList),e.forEach((e,t)=>{t>0&&this.addArrow(this.ePillDropList),this.ePillDropList.appendChild(e.getGui())}),this.addAriaLabelsToComponents()}addAriaLabelsToComponents(){const{childPillComponents:e,ePillDropList:t}=this,i=e.length;(0,s._setAriaRole)(t,0===i?"presentation":"listbox");for(let t=0;tthis.destroyBean(i)),t||this.childPillComponents.push(i),i}addIconAndTitleToGui(){const{title:e,icon:t}=this.params;if(!e||!t)return;const i=(0,s._createElement)({tag:"div"});if((0,s._setAriaHidden)(i,!0),this.addElementClasses(i,"title-bar"),this.addElementClasses(t,"icon"),this.toggleCss("ag-column-drop-empty",this.isExistingItemsEmpty()),i.appendChild(t),!this.horizontal){const t=(0,s._createElement)({tag:"span"});this.addElementClasses(t,"title"),t.textContent=e,i.appendChild(t)}this.appendChild(i)}isExistingItemsEmpty(){return 0===this.getExistingItems().length}addEmptyMessageToGui(){const{emptyMessage:e}=this.params;if(!e||!this.isExistingItemsEmpty()||this.isPotentialDndItems())return;const t=(0,s._createElement)({tag:"span"});t.textContent=e,this.addElementClasses(t,"empty-message"),this.ePillDropList.appendChild(t)}addArrow(e){if(this.horizontal){const t=this.gos.get("enableRtl"),i=(0,s._createIconNoSpan)(t?"panelDelimiterRtl":"panelDelimiter",this.beans);this.addElementClasses(i,"cell-separator"),e.appendChild(i)}}}t.PillDropZonePanel=a},37904:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.VirtualList=void 0;const s=i(76624),o=i(93053);class r extends o.AgVirtualList{constructor(e){super(s._STOP_PROPAGATION_CALLBACKS,e)}}t.VirtualList=r},76624:function(e){var t,i=Object.defineProperty,s=Object.getOwnPropertyDescriptor,o=Object.getOwnPropertyNames,r=Object.prototype.hasOwnProperty,n={};((e,t)=>{for(var s in t)i(e,s,{get:t[s],enumerable:!0})})(n,{ALWAYS_SYNC_GLOBAL_EVENTS:()=>Ig,AgAbstractCellEditor:()=>fa,AgAbstractInputField:()=>Fa,AgAbstractLabel:()=>Sa,AgCheckbox:()=>Ra,AgCheckboxSelector:()=>Pa,AgColumn:()=>Fs,AgColumnGroup:()=>Ao,AgContentEditableField:()=>py,AgContentEditableFieldSelector:()=>my,AgFilterButtonSelector:()=>xr,AgInputDateField:()=>eC,AgInputNumberField:()=>cC,AgInputNumberFieldSelector:()=>uC,AgInputTextArea:()=>aC,AgInputTextField:()=>Qf,AgInputTextFieldSelector:()=>Jf,AgPickerField:()=>CC,AgPopupComponent:()=>ma,AgPromise:()=>ko,AgProvidedColumnGroup:()=>Ls,AgRadioButton:()=>Av,AgRadioButtonSelector:()=>Tv,AgSelect:()=>vC,AgSelectSelector:()=>wC,AgToggleButton:()=>fy,AgToggleButtonSelector:()=>Cy,AlignedGridsModule:()=>qm,AllCommunityModule:()=>ey,AutoScrollService:()=>Jd,BaseColsService:()=>dy,BaseComponentWrapper:()=>cy,BaseCreator:()=>Af,BaseGridSerializingSession:()=>Df,BaseSelectionService:()=>kb,BeanStub:()=>wt,BigIntFilterModule:()=>Zw,CellApiModule:()=>bm,CellRangeType:()=>nl,CellSpanModule:()=>Mb,CellStyleModule:()=>_b,ChangedPath:()=>rc,CheckboxEditorModule:()=>JC,ClientSideRowModelApiModule:()=>wf,ClientSideRowModelModule:()=>vf,ColumnApiModule:()=>gu,ColumnAutoSizeModule:()=>Rf,ColumnHoverModule:()=>Mf,ColumnKeyCreator:()=>Ns,Component:()=>Wo,CssClassManager:()=>Vo,CsvExportModule:()=>Lf,CustomEditorModule:()=>iv,CustomFilterModule:()=>qw,DateEditorModule:()=>QC,DateFilterModule:()=>Qw,Direction:()=>Al,DragAndDropModule:()=>gc,DragSourceType:()=>yr,EventApiModule:()=>nb,ExternalFilterModule:()=>tb,FakeHScrollComp:()=>xl,FakeVScrollComp:()=>Ml,FilterButtonComp:()=>Sr,FilterComp:()=>Dr,FilterWrapperComp:()=>Ar,GROUP_AUTO_COLUMN_ID:()=>Bs,GROUP_HIERARCHY_COLUMN_ID_PREFIX:()=>Hs,GridBodyCtrl:()=>Cd,GridCoreCreator:()=>_m,GridCtrl:()=>Ed,GridHeaderCtrl:()=>Un,GridStateModule:()=>cb,GroupInstanceIdCreator:()=>Ic,HeaderRowContainerCtrl:()=>pa,HighlightChangesModule:()=>bb,InfiniteRowModelModule:()=>rb,KeyCode:()=>To,LargeTextEditorModule:()=>tv,LocalEventService:()=>y,LocaleModule:()=>lb,LocaleService:()=>ab,ManagedFocusFeature:()=>mn,ModuleRegistry:()=>ei,NumberEditorModule:()=>ZC,NumberFilterModule:()=>Xw,PaginationModule:()=>fb,PinnedRowModel:()=>sl,PinnedRowModule:()=>Cb,PositionableFeature:()=>Ur,ProvidedFilter:()=>fn,QuickFilterModule:()=>eb,ROW_NUMBERS_COLUMN_ID:()=>_s,RefPlaceholder:()=>Lo,RenderApiModule:()=>yb,RowApiModule:()=>Zm,RowAutoHeightModule:()=>Sb,RowContainerCtrl:()=>md,RowDragModule:()=>mc,RowNode:()=>Ga,RowSelectionModule:()=>Bb,RowStyleModule:()=>Hb,SELECTION_COLUMN_ID:()=>Vs,STRUCTURED_SCHEMA_FEATURES:()=>Cn,ScrollApiModule:()=>Qm,SelectEditorModule:()=>ev,ServerSideTransactionResultStatus:()=>ol,TabGuardClassNames:()=>xd,TabGuardComp:()=>Md,TabGuardCtrl:()=>uy,TabGuardFeature:()=>hy,TextEditorModule:()=>XC,TextFilterModule:()=>Yw,TooltipModule:()=>$f,TouchListener:()=>rl,UndoRedoEditModule:()=>YC,ValidationModule:()=>Jb,ValueCacheModule:()=>Cm,VanillaFrameworkOverrides:()=>Om,_AgBeanStub:()=>vt,_AgComponentStub:()=>Ho,_AgContext:()=>ll,_AgPositionableFeature:()=>Wr,_AgTabGuardComp:()=>Pd,_AgTabGuardFeature:()=>Rd,_AgTooltipComponent:()=>Bf,_AgTooltipFeature:()=>Of,_BOOLEAN_MIXED_GRID_OPTIONS:()=>Wg,_BaseDragAndDropService:()=>jo,_BaseDragService:()=>Kd,_BaseEnvironment:()=>dh,_BaseEventService:()=>Mg,_BasePopupService:()=>_f,_BaseRegistry:()=>mu,_BaseTooltipStateManager:()=>Nf,_ChangedRowNodes:()=>ec,_ColumnFilterModule:()=>$w,_ColumnGroupModule:()=>Gc,_ColumnMoveModule:()=>Pc,_CsrmSsrmSharedApiModule:()=>tf,_DragModule:()=>hc,_EditCoreModule:()=>qC,_EmptyArray:()=>a,_EmptyBean:()=>ea,_FOCUS_MANAGED_CLASS:()=>dn,_FilterCoreModule:()=>jw,_FilterValueModule:()=>Kw,_GET_ALL_EVENTS:()=>Dg,_GET_ALL_GRID_OPTIONS:()=>Kg,_HeaderComp:()=>ep,_HorizontalResizeModule:()=>fc,_KeyboardNavigationModule:()=>Wp,_MONTHS:()=>Yc,_PUBLIC_EVENTS:()=>Ag,_PUBLIC_EVENT_HANDLERS_MAP:()=>kg,_PopupModule:()=>Hf,_ROW_ID_PREFIX_BOTTOM_PINNED:()=>La,_ROW_ID_PREFIX_ROW_GROUP:()=>Ia,_ROW_ID_PREFIX_TOP_PINNED:()=>ka,_RowModelSharedApiModule:()=>sf,_STOP_PROPAGATION_CALLBACKS:()=>pn,_SharedDragAndDropModule:()=>pc,_SharedExportModule:()=>Ef,_SharedMenuModule:()=>gv,_SharedRowSelectionModule:()=>Nb,_SortModule:()=>fm,_SsrmInfiniteSharedApiModule:()=>of,_addAdditionalCss:()=>Pg,_addColumnDefaultAndTypes:()=>ho,_addFocusableContainerListener:()=>Tn,_addGridCommonParams:()=>ms,_anchorElementToMouseMoveEvent:()=>dt,_applyColumnState:()=>yo,_areCellsEqual:()=>wn,_areColIdsEqual:()=>Xs,_areEqual:()=>d,_areSortDefsEqual:()=>As,_asThemeImpl:()=>Ju,_attemptToRestoreCellFocus:()=>On,_batchCall:()=>Ft,_camelCaseToHumanText:()=>M,_canSkipShowingRowGroup:()=>zi,_clearElement:()=>Te,_columnsMatch:()=>Js,_combineAttributesAndGridOptions:()=>gs,_convertColumnEventSourceType:()=>Qs,_coreThemeDefaults:()=>hh,_createAgElement:()=>Je,_createCellId:()=>vn,_createColumnTree:()=>ro,_createColumnTreeWithIds:()=>oo,_createElement:()=>Go,_createGlobalRowEvent:()=>Na,_createIcon:()=>No,_createIconNoSpan:()=>Bo,_createRowNodeSibling:()=>Va,_createSharedTheme:()=>eh,_csrmFirstLeaf:()=>tc,_csrmReorderAllLeafs:()=>ic,_debounce:()=>Rt,_defaultComparator:()=>b,_destroyColumnTree:()=>Us,_doOnce:()=>yt,_downloadFile:()=>Tf,_errMsg:()=>vi,_error:()=>pi,_escapeString:()=>R,_exists:()=>f,_findEnterpriseCoreModule:()=>ti,_findFocusableElements:()=>rn,_findNextFocusableElement:()=>an,_findTabbableParent:()=>ln,_flatten:()=>p,_focusGridInnerElement:()=>Dn,_focusInto:()=>nn,_focusNextGridCoreContainer:()=>Ln,_formatNumberCommas:()=>ub,_fuzzySuggestions:()=>Sm,_getAbsoluteHeight:()=>Re,_getAbsoluteRowIndex:()=>Mn,_getAbsoluteWidth:()=>Pe,_getActiveDomElement:()=>A,_getAriaPosInSet:()=>V,_getCallbackForEvent:()=>hs,_getCellByPosition:()=>Rn,_getCellCtrlForEventTarget:()=>zl,_getCellPositionForEvent:()=>sc,_getCellRendererDetails:()=>gr,_getCheckboxLocation:()=>$i,_getCheckboxes:()=>ji,_getClientSideRowModel:()=>Ea,_getColumnState:()=>Fo,_getColumnStateFromColDef:()=>to,_getColumnsFromTree:()=>zs,_getDateParts:()=>$c,_getDefaultFloatingFilterType:()=>Rv,_getDefaultSimpleFilter:()=>Fv,_getDisplaySortForColumn:()=>Is,_getDocument:()=>T,_getEditorRendererDetails:()=>pr,_getEnableColumnSelection:()=>es,_getFillHandle:()=>Ji,_getFilterDetails:()=>Cr,_getFilterModel:()=>cv,_getFilterParamsForDataType:()=>yv,_getFirstRow:()=>Sn,_getFloatingFilterCompDetails:()=>vr,_getFloatingFiltersHeight:()=>zn,_getGlobalGridOption:()=>Lt,_getGrandTotalRow:()=>Gi,_getGridOption:()=>fs,_getGridRegisteredModules:()=>Zt,_getGroupAggFiltering:()=>Oi,_getGroupSelection:()=>rs,_getGroupSelectsDescendants:()=>as,_getGroupTotalRowCallback:()=>Ni,_getHeaderCheckbox:()=>Ki,_getHeaderClassesFromColDef:()=>sa,_getHeaderRowCount:()=>Gn,_getInnerCellRendererDetails:()=>hr,_getInnerHeight:()=>xe,_getInnerWidth:()=>Fe,_getIsRowSelectable:()=>is,_getLastRow:()=>xn,_getLocaleTextFromFunc:()=>ft,_getLocaleTextFromMap:()=>Ct,_getLocaleTextFunc:()=>pt,_getMaxConcurrentDatasourceRequests:()=>Wi,_getNormalisedMousePosition:()=>oc,_getPageBody:()=>k,_getParamType:()=>Vu,_getRootNode:()=>E,_getRowAbove:()=>Pn,_getRowBelow:()=>En,_getRowContainerClass:()=>od,_getRowContainerOptions:()=>nd,_getRowCtrlForEventTarget:()=>Ul,_getRowHeightAsNumber:()=>Ei,_getRowHeightForNode:()=>Mi,_getRowIdCallback:()=>Hi,_getRowNode:()=>Fn,_getRowSelectionMode:()=>ss,_getRowSpanContainerClass:()=>rd,_getRowViewportClass:()=>sd,_getServerSideRowModel:()=>Ta,_getShouldDisplayTooltip:()=>Wf,_getSortDefFromColDef:()=>io,_getSortDefFromInput:()=>Rs,_getSuppressMultiRanges:()=>Zi,_getToolPanelClassesFromColDef:()=>oa,_getViewportRowModel:()=>Da,_getWindow:()=>I,_gridThemeLogger:()=>Ph,_interpretAsRightClick:()=>Cs,_isAnimateRows:()=>Ii,_isBrowserFirefox:()=>Kr,_isBrowserSafari:()=>jr,_isCellSelectionEnabled:()=>Qi,_isClientSideRowModel:()=>yi,_isColumnMenuAnchoringEnabled:()=>us,_isColumnsSortingCoupledToGroup:()=>Li,_isComponent:()=>Oo,_isDomLayout:()=>xi,_isElementInEventPath:()=>ot,_isElementOverflowingCallback:()=>Ve,_isEventFromPrintableCharacter:()=>Nl,_isExpressionString:()=>P,_isFocusableFormField:()=>Ce,_isFullWidthGroupRow:()=>_i,_isGetRowHeightFunction:()=>Ri,_isGroupMultiAutoColumn:()=>Bi,_isGroupRowsSticky:()=>ki,_isGroupUseEntireRow:()=>Vi,_isIOSUserAgent:()=>qr,_isKeyboardMode:()=>on,_isLegacyMenuEnabled:()=>cs,_isMultiRowSelection:()=>os,_isNodeOrElement:()=>je,_isNothingFocused:()=>D,_isPromise:()=>Io,_isRowBefore:()=>bn,_isRowNumbers:()=>Pi,_isRowSelection:()=>Fi,_isSameRow:()=>yn,_isServerSideRowModel:()=>Si,_isSetFilterByDefault:()=>ds,_isShowTooltipWhenTruncated:()=>zf,_isSortDirectionValid:()=>Ps,_isSortTypeValid:()=>Ms,_isStopPropagationForAgGrid:()=>gn,_isUseApplyButton:()=>Mr,_isUsingNewCellSelectionAPI:()=>Xi,_isUsingNewRowSelectionAPI:()=>Yi,_isVisible:()=>ke,_jsonEquals:()=>w,_last:()=>l,_loadTemplate:()=>Le,_logPreInitWarn:()=>fi,_makeNull:()=>m,_mergeDeep:()=>At,_missing:()=>C,_normalizeSortDirection:()=>Ts,_normalizeSortType:()=>Ds,_observeResize:()=>qe,_paramToVariableName:()=>Eu,_paramValueToCss:()=>Zu,_parseBigIntOrNull:()=>Hc,_parseDateTimeFromString:()=>Qc,_placeCaretAtEnd:()=>$e,_preInitErrMsg:()=>wi,_prevOrNextDisplayedRow:()=>_a,_processOnChange:()=>ps,_radioCssClass:()=>pe,_refreshFilterUi:()=>av,_refreshHandlerAndUi:()=>nv,_registerModule:()=>qt,_removeAllFromArray:()=>h,_removeAriaExpanded:()=>X,_removeAriaSort:()=>re,_removeFromArray:()=>u,_removeFromParent:()=>De,_requestAnimationFrame:()=>Ye,_resetColumnState:()=>So,_selectAllCells:()=>Kl,_serialiseDate:()=>Kc,_setAriaActiveDescendant:()=>q,_setAriaChecked:()=>ae,_setAriaColCount:()=>te,_setAriaColIndex:()=>ie,_setAriaColSpan:()=>se,_setAriaControls:()=>le,_setAriaControlsAndLabel:()=>de,_setAriaDescribedBy:()=>z,_setAriaDisabled:()=>K,_setAriaExpanded:()=>Y,_setAriaHasPopup:()=>ue,_setAriaHidden:()=>$,_setAriaInvalid:()=>U,_setAriaLabel:()=>_,_setAriaLabelledBy:()=>H,_setAriaLevel:()=>j,_setAriaOrientation:()=>ge,_setAriaPosInSet:()=>Q,_setAriaRole:()=>B,_setAriaRowCount:()=>J,_setAriaRowIndex:()=>ee,_setAriaSelected:()=>ne,_setAriaSetSize:()=>Z,_setAriaSort:()=>oe,_setColMenuVisible:()=>uv,_setDisabled:()=>be,_setDisplayed:()=>ve,_setFixedWidth:()=>ze,_setUmd:()=>Jt,_setVisible:()=>we,_sharedThemeDefaults:()=>Nu,_shouldUpdateColVisibilityAfterGroup:()=>Ui,_stopPropagationForAgGrid:()=>hn,_suppressCellMouseEvent:()=>Bl,_themeAlpineParams:()=>cg,_themeBalhamParams:()=>hg,_themeMaterialParams:()=>mg,_themeQuartzParams:()=>lg,_toString:()=>F,_toStringOrNull:()=>v,_translate:()=>mt,_translateForFilter:()=>Rr,_unwrapUserComp:()=>ap,_updateColsMap:()=>Zs,_updateColumnState:()=>uo,_updateFilterModel:()=>dv,_waitUntil:()=>Mt,_warn:()=>gi,_warnOnce:()=>Bt,agTestIdFor:()=>iy,buttonStyleAlpine:()=>bh,buttonStyleBalham:()=>yh,buttonStyleBase:()=>vh,buttonStyleQuartz:()=>wh,checkboxStyleDefault:()=>Eh,colorSchemeDark:()=>kh,colorSchemeDarkBlue:()=>Gh,colorSchemeDarkWarm:()=>Oh,colorSchemeLight:()=>Ah,colorSchemeLightCold:()=>Dh,colorSchemeLightWarm:()=>Th,colorSchemeVariable:()=>Nh,columnDropStyleBordered:()=>Sh,columnDropStylePlain:()=>xh,convertColumnGroupState:()=>$m,convertColumnState:()=>Um,createGrid:()=>Bm,createPart:()=>Fu,createTheme:()=>Mh,getGridApi:()=>zm,getGridElement:()=>Wm,iconOverrides:()=>Hh,iconSetAlpine:()=>Vh,iconSetBalham:()=>Bh,iconSetMaterial:()=>_h,iconSetQuartz:()=>Kh,iconSetQuartzBold:()=>Yh,iconSetQuartzLight:()=>$h,iconSetQuartzRegular:()=>qh,inputStyleBase:()=>Qh,inputStyleBordered:()=>Jh,inputStyleUnderlined:()=>eg,isColumn:()=>ys,isColumnGroup:()=>Eo,isColumnGroupAutoCol:()=>js,isColumnSelectionCol:()=>Ks,isCombinedFilterModel:()=>Ir,isProvidedColumnGroup:()=>ks,isRowNumberCol:()=>$s,isSpecialCol:()=>qs,onRowHeightChanged:()=>Jm,provideGlobalGridOptions:()=>kt,resetRowHeights:()=>ef,setupAgTestIds:()=>ly,styleMaterial:()=>pg,tabStyleAlpine:()=>ng,tabStyleBase:()=>sg,tabStyleMaterial:()=>rg,tabStyleQuartz:()=>og,tabStyleRolodex:()=>ag,themeAlpine:()=>ug,themeBalham:()=>gg,themeMaterial:()=>fg,themeQuartz:()=>dg,wrapAgTestIdFor:()=>sy}),e.exports=(t=n,((e,t,n,a)=>{if(t&&"object"==typeof t||"function"==typeof t)for(let l of o(t))r.call(e,l)||l===n||i(e,l,{get:()=>t[l],enumerable:!(a=s(t,l))||a.enumerable});return e})(i({},"__esModule",{value:!0}),t));var a=Object.freeze([]);function l(e){if(e?.length)return e[e.length-1]}function d(e,t,i){if(e===t)return!0;if(!e||!t)return null==e&&null==t;const s=e.length;if(s!==t.length)return!1;for(let o=0;o=0&&e.splice(i,1)}function h(e,t){let i=0,s=0;for(;i=0;s--)e.splice(i,0,t[s])}function p(e){return[].concat.apply([],e)}var m=e=>null==e||""===e?null:e;function f(e){return null!=e&&""!==e}function C(e){return!f(e)}var v=e=>null!=e&&"function"==typeof e.toString?e.toString():null,w=(e,t)=>(e?JSON.stringify(e):null)===(t?JSON.stringify(t):null),b=(e,t,i=!1)=>null==e?null==t?0:-1:null==t?1:("object"==typeof e&&e.toNumber&&(e=e.toNumber()),"object"==typeof t&&t.toNumber&&(t=t.toNumber()),i&&"string"==typeof e?e.localeCompare(t):e>t?1:e{const i=s?()=>s.wrapIncoming(e):e;t?this.dispatchAsync(i):i()},r=this.getListeners(i,t,!1);if((r?.size??0)>0){const t=new Set(r);for(const i of t)r?.has(i)&&o(()=>i(e))}const n=this.getGlobalListeners(t);if(n.size>0){const t=new Set(n);for(const s of t)o(()=>s(i,e))}}getGlobalListeners(e){return e?this.globalAsyncListeners:this.globalSyncListeners}dispatchAsync(e){if(this.asyncFunctionsQueue.push(e),!this.scheduled){const e=()=>{window.setTimeout(this.flushAsyncQueue.bind(this),0)},t=this.frameworkOverrides;t?t.wrapIncoming(e):e(),this.scheduled=!0}}flushAsyncQueue(){this.scheduled=!1;const e=this.asyncFunctionsQueue.slice();this.asyncFunctionsQueue=[];for(const t of e)t()}},S=/[&<>"']/g,x={"&":"&","<":"<",">":">",'"':""","'":"'"};function F(e){return e?.toString().toString()??null}function R(e){return F(e)?.replace(S,e=>x[e])??null}function P(e){return"string"==typeof e&&e.startsWith("=")&&e.length>1}function M(e){if(!e||null==e)return null;return e.replace(/([a-z])([A-Z])/g,"$1 $2").replace(/([A-Z]+)([A-Z])([a-z])/g,"$1 $2$3").replace(/\./g," ").split(" ").map(e=>e.substring(0,1).toUpperCase()+(e.length>1?e.substring(1,e.length):"")).join(" ")}function E(e){return e.eRootDiv.getRootNode()}function A(e){return E(e).activeElement}function T(e){const{gos:t,eRootDiv:i}=e;let s=null;const o=t.get("getDocument");return o&&f(o)?s=o():i&&(s=i.ownerDocument),s&&f(s)?s:document}function D(e){const t=A(e);return null===t||t===T(e).body}function I(e){return T(e).defaultView||window}function k(e){let t=null,i=null;try{t=T(e).fullscreenElement}catch(e){}finally{t||(t=E(e));const s=t.querySelector("body");i=s||(t instanceof ShadowRoot?t:t instanceof Document?t?.documentElement:t)}return i}function L(e,t,i){null==i||"string"==typeof i&&""==i?G(e,t):O(e,t,i)}function O(e,t,i){e.setAttribute(N(t),i.toString())}function G(e,t){e.removeAttribute(N(t))}function N(e){return`aria-${e}`}function B(e,t){t?e.setAttribute("role",t):e.removeAttribute("role")}function V(e){return Number.parseInt(e.getAttribute("aria-posinset"),10)}function _(e,t){L(e,"label",t)}function H(e,t){L(e,"labelledby",t)}function z(e,t){L(e,"describedby",t)}function W(e,t){L(e,"live",t)}function U(e,t){L(e,"invalid",t)}function j(e,t){L(e,"level",t)}function K(e,t){L(e,"disabled",t)}function $(e,t){L(e,"hidden",t)}function q(e,t){L(e,"activedescendant",t)}function Y(e,t){O(e,"expanded",t)}function X(e){G(e,"expanded")}function Z(e,t){O(e,"setsize",t)}function Q(e,t){O(e,"posinset",t)}function J(e,t){O(e,"rowcount",t)}function ee(e,t){O(e,"rowindex",t)}function te(e,t){O(e,"colcount",t)}function ie(e,t){O(e,"colindex",t)}function se(e,t){O(e,"colspan",t)}function oe(e,t){O(e,"sort",t)}function re(e){G(e,"sort")}function ne(e,t){L(e,"selected",t)}function ae(e,t){O(e,"checked",void 0===t?"mixed":t)}function le(e,t){L(e,"controls",t)}function de(e,t){le(e,t.id),H(t,e.id)}function ce(e,t){L(e,"owns",t)}function ue(e,t){L(e,"haspopup",!1===t?null:t)}function he(e,t){return void 0===t?e("ariaIndeterminate","indeterminate"):!0===t?e("ariaChecked","checked"):e("ariaUnchecked","unchecked")}function ge(e,t){t?O(e,"orientation",t):G(e,"orientation")}function pe(e,t,i){const s=e.parentElement;let o=s&&s.firstChild;for(;o;)t&&o.classList.toggle(t,o===e),i&&o.classList.toggle(i,o!==e),o=o.nextSibling}var me="[tabindex], input, select, button, textarea, [href]",fe="[disabled], .ag-disabled:not(.ag-button), .ag-disabled *";function Ce(e){if(!e)return!1;if(!e.matches("input, select, button, textarea"))return!1;return!!e.matches(fe)&&ke(e)}function ve(e,t,i={}){const{skipAriaHidden:s}=i;e.classList.toggle("ag-hidden",!t),s||$(e,!t)}function we(e,t,i={}){const{skipAriaHidden:s}=i;e.classList.toggle("ag-invisible",!t),s||$(e,!t)}function be(e,t){const i="disabled",s=t?e=>e.setAttribute(i,""):e=>e.removeAttribute(i);s(e);const o=e.querySelectorAll("input")??[];for(const e of o)s(e)}function ye(e,t,i){let s=0;for(;e;){if(e.classList.contains(t))return!0;if(e=e.parentElement,"number"==typeof i){if(++s>i)break}else if(e===i)break}return!1}function Se(e){const{height:t,width:i,borderTopWidth:s,borderRightWidth:o,borderBottomWidth:r,borderLeftWidth:n,paddingTop:a,paddingRight:l,paddingBottom:d,paddingLeft:c,marginTop:u,marginRight:h,marginBottom:g,marginLeft:p,boxSizing:m}=window.getComputedStyle(e),f=Number.parseFloat;return{height:f(t||"0"),width:f(i||"0"),borderTopWidth:f(s||"0"),borderRightWidth:f(o||"0"),borderBottomWidth:f(r||"0"),borderLeftWidth:f(n||"0"),paddingTop:f(a||"0"),paddingRight:f(l||"0"),paddingBottom:f(d||"0"),paddingLeft:f(c||"0"),marginTop:f(u||"0"),marginRight:f(h||"0"),marginBottom:f(g||"0"),marginLeft:f(p||"0"),boxSizing:m}}function xe(e){const t=Se(e);return"border-box"===t.boxSizing?t.height-t.paddingTop-t.paddingBottom-t.borderTopWidth-t.borderBottomWidth:t.height}function Fe(e){const t=Se(e);return"border-box"===t.boxSizing?t.width-t.paddingLeft-t.paddingRight-t.borderLeftWidth-t.borderRightWidth:t.width}function Re(e){const{height:t,marginBottom:i,marginTop:s}=Se(e);return Math.floor(t+i+s)}function Pe(e){const{width:t,marginLeft:i,marginRight:s}=Se(e);return Math.floor(t+i+s)}function Me(e){const t=e.getBoundingClientRect(),{borderTopWidth:i,borderLeftWidth:s,borderRightWidth:o,borderBottomWidth:r}=Se(e);return{top:t.top+(i||0),left:t.left+(s||0),right:t.right+(o||0),bottom:t.bottom+(r||0)}}function Ee(e,t){let i=e.scrollLeft;return t&&(i=Math.abs(i)),i}function Ae(e,t,i){i&&(t*=-1),e.scrollLeft=t}function Te(e){for(;e?.firstChild;)e.firstChild.remove()}function De(e){e?.parentNode&&e.remove()}function Ie(e){return!!e.offsetParent}function ke(e){if(e.checkVisibility)return e.checkVisibility({checkVisibilityCSS:!0});return!(!Ie(e)||"visible"!==window.getComputedStyle(e).visibility)}function Le(e){const t=document.createElement("div");return t.innerHTML=(e||"").trim(),t.firstChild}function Oe(e,t,i){i&&i.nextSibling===t||(e.firstChild?i?i.nextSibling?e.insertBefore(t,i.nextSibling):e.appendChild(t):e.firstChild&&e.firstChild!==t&&e.prepend(t):e.appendChild(t))}function Ge(e,t){for(let i=0;i`-${e.toLocaleLowerCase()}`)}function Be(e,t){if(t)for(const i of Object.keys(t)){const s=t[i];if(!i?.length||null==s)continue;const o=Ne(i),r=s.toString(),n=r.replace(/\s*!important/g,""),a=n.length!=r.length?"important":void 0;e.style.setProperty(o,n,a)}}function Ve(e){return()=>{const t=e();return!t||(_e(t)||function(e){return e.clientHeighto?.disconnect()}function Ye(e,t){const i=I(e);i.requestAnimationFrame?i.requestAnimationFrame(t):i.webkitRequestAnimationFrame?i.webkitRequestAnimationFrame(t):i.setTimeout(t,0)}var Xe,Ze="data-ref";function Qe(){return Xe??(Xe=document.createTextNode(" ")),Xe.cloneNode()}function Je(e){const{attrs:t,children:i,cls:s,ref:o,role:r,tag:n}=e,a=document.createElement(n);if(s&&(a.className=s),o&&a.setAttribute(Ze,o),r&&a.setAttribute("role",r),t)for(const e of Object.keys(t))a.setAttribute(e,t[e]);if(i)if("string"==typeof i)a.textContent=i;else{let e=!0;for(const t of i)t&&("string"==typeof t?(a.appendChild(document.createTextNode(t)),e=!1):"function"==typeof t?a.appendChild(t()):(e&&(a.appendChild(Qe()),e=!1),a.append(Je(t)),a.appendChild(Qe())))}return a}var et=["touchstart","touchend","touchmove","touchcancel","scroll"],tt=["wheel"],it={},st=(()=>{const e={select:"input",change:"input",submit:"form",reset:"form",error:"img",load:"img",abort:"img"};return t=>{if("boolean"==typeof it[t])return it[t];const i=document.createElement(e[t]||"div");return it[t="on"+t]=t in i}})();function ot(e,t){return!(!t||!e)&&function(e){const t=e;if(t.path)return t.path;if(t.composedPath)return t.composedPath();return function(e){const t=[];let i=e.target;for(;i;)t.push(i),i=i.parentElement;return t}(t)}(t).indexOf(e)>=0}var rt=e=>{const t=et.includes(e),i=tt.includes(e);return!!t||!i&&void 0};function nt(e,t,i){if(0===i)return!1;const s=Math.abs(e.clientX-t.clientX),o=Math.abs(e.clientY-t.clientY);return Math.max(s,o)<=i}var at=(e,t)=>{const i=e.identifier;for(let e=0,s=t.length;e0&&c+e.clientWidth>o+p&&(c=o+p-e.clientWidth),c<0&&(c=0),r>0&&d+e.clientHeight>r+g&&(d=r+g-e.clientHeight),d<0&&(d=0),e.style.left=`${c}px`,e.style.top=`${d}px`}var ct=(e,...t)=>{for(const i of t){const[t,s,o,r]=i;t.addEventListener(s,o,r),e.push(i)}},ut=e=>{if(e){for(const[t,i,s,o]of e)t.removeEventListener(i,s,o);e.length=0}},ht=e=>{e.cancelable&&e.preventDefault()};function gt(e,t){return t}function pt(e){return e?.getLocaleTextFunc()??gt}function mt(e,t,i,s){const o=t[i];return e.getLocaleTextFunc()(i,"function"==typeof o?o(s):o,s)}function ft(e){return(t,i,s)=>e({key:t,defaultValue:i,variableValues:s})}function Ct(e){return(t,i,s)=>{let o=e?.[t];if(o&&s?.length){let e=0;for(;!(e>=s.length);){if(-1===o.indexOf("${variable}"))break;o=o.replace("${variable}",s[e++])}}return o??i}}var vt=class{constructor(){this.destroyFunctions=[],this.destroyed=!1,this.__v_skip=!0,this.propertyListenerId=0,this.lastChangeSetIdLookup={},this.isAlive=()=>!this.destroyed}preWireBeans(e){this.beans=e,this.stubContext=e.context,this.eventSvc=e.eventSvc,this.gos=e.gos}destroy(){const{destroyFunctions:e}=this;for(let t=0;tnull;let s;if(function(e){return void 0!==e.__addEventListener}(e))e.__addEventListener(t,i),s=()=>(e.__removeEventListener(t,i),null);else{const o=function(e){return"global"===e.eventServiceType}(e);e instanceof HTMLElement?function(e,t,i){const s=rt(t);let o;null!=s&&(o={passive:s}),e.addEventListener(t,i,o)}(e,t,i):o?e.addListener(t,i):e.addEventListener(t,i),s=o?()=>(e.removeListener(t,i),null):()=>(e.removeEventListener(t,i),null)}return this.destroyFunctions.push(s),()=>(s(),this.destroyFunctions=this.destroyFunctions.filter(e=>e!==s),null)}setupPropertyListener(e,t){const{gos:i}=this;i.addPropertyEventListener(e,t);const s=()=>(i.removePropertyEventListener(e,t),null);return this.destroyFunctions.push(s),()=>(s(),this.destroyFunctions=this.destroyFunctions.filter(e=>e!==s),null)}addManagedPropertyListener(e,t){return this.destroyed?()=>null:this.setupPropertyListener(e,t)}addManagedPropertyListeners(e,t){if(this.destroyed)return;const i=e.join("-")+this.propertyListenerId++,s=e=>{if(e.changeSet){if(e.changeSet&&e.changeSet.id===this.lastChangeSetIdLookup[i])return;this.lastChangeSetIdLookup[i]=e.changeSet.id}const s={type:"propertyChanged",changeSet:e.changeSet,source:e.source};t(s)};for(const t of e)this.setupPropertyListener(t,s)}getLocaleTextFunc(){return pt(this.beans.localeSvc)}addDestroyFunc(e){this.isAlive()?this.destroyFunctions.push(e):e()}createOptionalManagedBean(e,t){return e?this.createManagedBean(e,t):void 0}createManagedBean(e,t){const i=this.createBean(e,t);return this.addDestroyFunc(this.destroyBean.bind(this,e,t)),i}createBean(e,t,i){return(t||this.stubContext).createBean(e,i)}destroyBean(e,t){return(t||this.stubContext).destroyBean(e)}destroyBeans(e,t){return(t||this.stubContext).destroyBeans(e)}};var wt=class extends vt{},bt=new Set,yt=(e,t)=>{bt.has(t)||(bt.add(t),e())};yt._set=bt;var St={pending:!1,funcs:[]},xt={pending:!1,funcs:[]};function Ft(e,t="setTimeout",i){const s="raf"===t?xt:St;if(s.funcs.push(e),s.pending)return;s.pending=!0;const o=()=>{const e=s.funcs.slice();s.funcs.length=0,s.pending=!1;for(const t of e)t()};"raf"===t?Ye(i,o):window.setTimeout(o,0)}function Rt(e,t,i){let s;return function(...o){const r=this;return window.clearTimeout(s),s=window.setTimeout(function(){e.isAlive()&&t.apply(r,o)},i),s}}function Pt(e,t){let i=0;return function(...s){const o=Date.now();o-i{null!=r&&(window.clearInterval(r),r=null)};e.addDestroyFunc(a);const l=()=>{const e=Date.now()-o>s;(t()||e)&&(i(),n=!0,a())};l(),n||(r=window.setInterval(l,10))}var Et=new Set(["__proto__","constructor","prototype"]);function At(e,t,i=!0,s=!1){f(t)&&function(e,t){if(null!=e)if(Array.isArray(e))for(let i=0;i!Et.has(e)))t(i,e[i])}(t,(t,o)=>{let r=e[t];if(r!==o){if(s){if(null==r&&null!=o){"object"==typeof o&&o.constructor===Object&&(r={},e[t]=r)}}Tt(o)&&Tt(r)&&!Array.isArray(r)?At(r,o,i,s):(i||void 0!==o)&&(e[t]=o)}})}function Tt(e){return"object"==typeof e&&null!==e}var Dt=class e{static applyGlobalGridOptions(t){if(!e.gridOptions)return{...t};let i={};return At(i,e.gridOptions,!0,!0),"deep"===e.mergeStrategy?At(i,t,!0,!0):i={...i,...t},e.gridOptions.context&&(i.context=e.gridOptions.context),t.context&&("deep"===e.mergeStrategy&&i.context&&At(t.context,i.context,!0,!0),i.context=t.context),i}static applyGlobalGridOption(t,i){if("deep"===e.mergeStrategy){const s=Lt(t);if(s&&"object"==typeof s&&"object"==typeof i)return e.applyGlobalGridOptions({[t]:i})[t]}return i}};Dt.gridOptions=void 0,Dt.mergeStrategy="shallow";var It=Dt;function kt(e,t="shallow"){It.gridOptions=e,It.mergeStrategy=t}function Lt(e){return It.gridOptions?.[e]}var Ot={suppressContextMenu:!1,preventDefaultOnContextMenu:!1,allowContextMenuWithControlKey:!1,suppressMenuHide:!0,enableBrowserTooltips:!1,tooltipTrigger:"hover",tooltipShowDelay:2e3,tooltipSwitchShowDelay:200,tooltipHideDelay:1e4,tooltipMouseTrack:!1,tooltipShowMode:"standard",tooltipInteraction:!1,copyHeadersToClipboard:!1,copyGroupHeadersToClipboard:!1,clipboardDelimiter:"\t",suppressCopyRowsToClipboard:!1,suppressCopySingleCellRanges:!1,suppressLastEmptyLineOnPaste:!1,suppressClipboardPaste:!1,suppressClipboardApi:!1,suppressCutToClipboard:!1,maintainColumnOrder:!1,enableStrictPivotColumnOrder:!1,suppressFieldDotNotation:!1,allowDragFromColumnsToolPanel:!1,suppressMovableColumns:!1,suppressColumnMoveAnimation:!1,suppressMoveWhenColumnDragging:!1,suppressDragLeaveHidesColumns:!1,suppressRowGroupHidesColumns:!1,suppressAutoSize:!1,autoSizePadding:20,skipHeaderOnAutoSize:!1,singleClickEdit:!1,suppressClickEdit:!1,readOnlyEdit:!1,stopEditingWhenCellsLoseFocus:!1,enterNavigatesVertically:!1,enterNavigatesVerticallyAfterEdit:!1,enableCellEditingOnBackspace:!1,undoRedoCellEditing:!1,undoRedoCellEditingLimit:10,suppressCsvExport:!1,suppressExcelExport:!1,cacheQuickFilter:!1,includeHiddenColumnsInQuickFilter:!1,excludeChildrenWhenTreeDataFiltering:!1,enableAdvancedFilter:!1,includeHiddenColumnsInAdvancedFilter:!1,enableCharts:!1,masterDetail:!1,keepDetailRows:!1,keepDetailRowsCount:10,detailRowAutoHeight:!1,tabIndex:0,rowBuffer:10,valueCache:!1,valueCacheNeverExpires:!1,enableCellExpressions:!1,suppressTouch:!1,suppressFocusAfterRefresh:!1,suppressBrowserResizeObserver:!1,suppressPropertyNamesCheck:!1,suppressChangeDetection:!1,debug:!1,suppressLoadingOverlay:!1,suppressNoRowsOverlay:!1,pagination:!1,paginationPageSize:100,paginationPageSizeSelector:!0,paginationAutoPageSize:!1,paginateChildRows:!1,suppressPaginationPanel:!1,pivotMode:!1,pivotPanelShow:"never",pivotDefaultExpanded:0,pivotSuppressAutoColumn:!1,suppressExpandablePivotGroups:!1,functionsReadOnly:!1,suppressAggFuncInHeader:!1,alwaysAggregateAtRootLevel:!1,aggregateOnlyChangedColumns:!1,suppressAggFilteredOnly:!1,removePivotHeaderRowWhenSingleValueColumn:!1,animateRows:!0,cellFlashDuration:500,cellFadeDuration:1e3,allowShowChangeAfterFilter:!1,domLayout:"normal",ensureDomOrder:!1,enableRtl:!1,suppressColumnVirtualisation:!1,suppressMaxRenderedRowRestriction:!1,suppressRowVirtualisation:!1,rowDragManaged:!1,refreshAfterGroupEdit:!1,rowDragInsertDelay:500,suppressRowDrag:!1,suppressMoveWhenRowDragging:!1,rowDragEntireRow:!1,rowDragMultiRow:!1,embedFullWidthRows:!1,groupDisplayType:"singleColumn",groupDefaultExpanded:0,groupMaintainOrder:!1,groupSelectsChildren:!1,groupSuppressBlankHeader:!1,groupSelectsFiltered:!1,showOpenedGroup:!1,groupRemoveSingleChildren:!1,groupRemoveLowestSingleChildren:!1,groupHideOpenParents:!1,groupAllowUnbalanced:!1,rowGroupPanelShow:"never",suppressMakeColumnVisibleAfterUnGroup:!1,treeData:!1,rowGroupPanelSuppressSort:!1,suppressGroupRowsSticky:!1,rowModelType:"clientSide",asyncTransactionWaitMillis:50,suppressModelUpdateAfterUpdateTransaction:!1,cacheOverflowSize:1,infiniteInitialRowCount:1,serverSideInitialRowCount:1,cacheBlockSize:100,maxBlocksInCache:-1,maxConcurrentDatasourceRequests:2,blockLoadDebounceMillis:0,purgeClosedRowNodes:!1,serverSideSortAllLevels:!1,serverSideOnlyRefreshFilteredGroups:!1,serverSidePivotResultFieldSeparator:"_",viewportRowModelPageSize:5,viewportRowModelBufferSize:5,alwaysShowHorizontalScroll:!1,alwaysShowVerticalScroll:!1,debounceVerticalScrollbar:!1,suppressHorizontalScroll:!1,suppressScrollOnNewData:!1,suppressScrollWhenPopupsAreOpen:!1,suppressAnimationFrame:!1,suppressMiddleClickScrolls:!1,suppressPreventDefaultOnMouseWheel:!1,rowMultiSelectWithClick:!1,suppressRowDeselection:!1,suppressRowClickSelection:!1,suppressCellFocus:!1,suppressHeaderFocus:!1,suppressMultiRangeSelection:!1,enableCellTextSelection:!1,enableRangeSelection:!1,enableRangeHandle:!1,enableFillHandle:!1,fillHandleDirection:"xy",suppressClearOnFillReduction:!1,accentedSort:!1,unSortIcon:!1,suppressMultiSort:!1,alwaysMultiSort:!1,suppressMaintainUnsortedOrder:!1,suppressRowHoverHighlight:!1,suppressRowTransform:!1,columnHoverHighlight:!1,deltaSort:!1,enableGroupEdit:!1,groupLockGroupColumns:0,serverSideEnableClientSideSort:!1,suppressServerSideFullWidthLoadingRow:!1,pivotMaxGeneratedColumns:-1,columnMenu:"new",reactiveCustomComponents:!0,suppressSetFilterByDefault:!1,enableFilterHandlers:!1},Gt="https://www.ag-grid.com";function Nt(e,t,...i){e.get("debug")&&console.log("AG Grid: "+t,...i)}function Bt(e,...t){yt(()=>console.warn("AG Grid: "+e,...t),e+t?.join(""))}function Vt(e,...t){yt(()=>console.error("AG Grid: "+e,...t),e+t?.join(""))}var _t,Ht=new Set,zt={},Wt={},Ut=!1,jt=!1,Kt=!1;function $t(e){_t||(_t=e.version);const t=e=>`You are using incompatible versions of AG Grid modules. Major and minor versions should always match across modules. ${e} Please update all modules to the same version.`;e.version?function(e){const[t,i]=e.version.split(".")||[],[s,o]=_t.split(".")||[];return t===s&&i===o}(e)||Vt(t(`'${e.moduleName}' is version ${e.version} but the other modules are version ${_t}.`)):Vt(t(`'${e.moduleName}' is incompatible.`));const i=e.validate?.();i&&!i.isValid&&Vt(`${i.message}`)}function qt(e,t,i=!1){i||(Ut=!0),$t(e);const s=e.rowModels??["all"];let o;Ht.add(e),void 0!==t?(jt=!0,void 0===Wt[t]&&(Wt[t]={}),o=Wt[t]):o=zt;for(const t of s)void 0===o[t]&&(o[t]={}),o[t][e.moduleName]=e;if(e.dependsOn)for(const s of e.dependsOn)qt(s,t,i)}function Yt(e,t,i){const s=i=>!!zt[i]?.[e]||!!Wt[t]?.[i]?.[e];return s(i)||s("all")}function Xt(){return jt}function Zt(e,t){const i=Wt[e]??{};return[...Object.values(i.all??{}),...Object.values(i[t]??{})]}function Qt(){return Kt}function Jt(){Kt=!0}var ei=class{static register(e){qt(e,void 0)}static registerModules(e){for(const t of e)qt(t,void 0)}};function ti(e){for(const t of e){if("setLicenseKey"in t)return t;if(t.dependsOn){const e=ti(t.dependsOn);if(e)return e}}}var ii="35.1.0",si="_version_",oi=null,ri=`${Gt}/javascript-data-grid`;function ni(e,t,i){return oi?.(e,t)??[hi(e,t,i)]}function ai(e,t,i,s,o){e(`${s?"warning":"error"} #${t}`,...ni(t,i,o))}function li(e){let t=e;return e instanceof Error?t=e.toString():"object"==typeof e&&(t=function(e){if(!e)return String(e);const t={};for(const i of Object.keys(e))"object"!=typeof e[i]&&"function"!=typeof e[i]&&(t[i]=e[i]);return JSON.stringify(t)}(e)),t}function di(e){return void 0===e?"undefined":null===e?"null":e}function ci(e,t){return`${e}?${t.toString()}`}function ui(e,t){const i=new URLSearchParams;if(i.append(si,ii),t)for(const e of Object.keys(t))i.append(e,li(t[e]));const s=`${ri}/errors/${e}`,o=ci(s,i);return o.length<=2e3?o:function(e,t,i){const s=Array.from(t.entries()).sort((e,t)=>t[1].length-e[1].length);let o=ci(e,t);for(const[r,n]of s){if(r===si)continue;const s=o.length-i;if(s<=0)break;const a="...",l=s+a.length,d=n.length-l>100?n.slice(0,n.length-l)+a:n.slice(0,100)+a;t.set(r,d),o=ci(e,t)}return o}(s,i,2e3)}var hi=(e,t,i)=>{const s=`${i?i+" \n":""}Visit ${ui(e,t)}`;return Qt()?s:`${s}${i?"":" \n Alternatively register the ValidationModule to see the full message in the console."}`};function gi(...e){ai(Bt,e[0],e[1],!0)}function pi(...e){ai(Vt,e[0],e[1],!1)}function mi(e,t,i){ai(Vt,e,t,!1,i)}function fi(e,t,i){ai(Bt,e,t,!0,i)}function Ci(e,t){const i=t[0];return`error #${i} `+ni(i,t[1],e).join(" ")}function vi(...e){return Ci(void 0,e)}function wi(...e){return Ci("\n",e)}function bi(e,t){return e.get("rowModelType")===t}function yi(e,t){return bi(e,"clientSide")}function Si(e,t){return bi(e,"serverSide")}function xi(e,t){return e.get("domLayout")===t}function Fi(e){return void 0!==ss(e)}function Ri(e){return"function"==typeof e.get("getRowHeight")}function Pi({gos:e,formula:t}){const i=e.get("rowNumbers");return i||!!t?.active&&!1!==i}function Mi(e,t,i=!1,s){const{gos:o,environment:r}=e;if(null==s&&(s=r.getDefaultRowHeight()),Ri(o)){if(i)return{height:s,estimated:!0};const e={node:t,data:t.data},r=o.getCallback("getRowHeight")(e);if(Ai(r))return 0===r&&gi(23),{height:Math.max(1,r),estimated:!1}}if(t.detail&&o.get("masterDetail"))return function(e){if(e.get("detailRowAutoHeight"))return{height:1,estimated:!1};const t=e.get("detailRowHeight");if(Ai(t))return{height:t,estimated:!1};return{height:300,estimated:!1}}(o);const n=o.get("rowHeight");return{height:n&&Ai(n)?n:s,estimated:!1}}function Ei(e){const{environment:t,gos:i}=e,s=i.get("rowHeight");if(!s||C(s))return t.getDefaultRowHeight();const o=t.refreshRowHeightVariable();return-1!==o?o:(gi(24),t.getDefaultRowHeight())}function Ai(e){return!isNaN(e)&&"number"==typeof e&&isFinite(e)}function Ti(e,t,i){const s=t[e.getDomDataKey()];return s?s[i]:void 0}function Di(e,t,i,s){const o=e.getDomDataKey();let r=t[o];C(r)&&(r={},t[o]=r),r[i]=s}function Ii(e){return!e.get("ensureDomOrder")&&e.get("animateRows")}function ki(e){return!(e.get("paginateChildRows")||e.get("groupHideOpenParents")||xi(e,"print"))}function Li(e){const t=e.get("autoGroupColumnDef");return!t?.comparator&&!e.get("treeData")}function Oi(e){const t=e.get("groupAggFiltering");return"function"==typeof t?e.getCallback("groupAggFiltering"):!0===t?()=>!0:void 0}function Gi(e){return e.get("grandTotalRow")}function Ni(e){const t=e.get("groupTotalRow");return"function"==typeof t?e.getCallback("groupTotalRow"):()=>t??void 0}function Bi(e){return!!e.get("groupHideOpenParents")||"multipleColumns"===e.get("groupDisplayType")}function Vi(e,t){return!t&&"groupRows"===e.get("groupDisplayType")}function _i(e,t,i){return!!t.group&&!t.footer&&Vi(e,i)}function Hi(e){const t=e.getCallback("getRowId");return void 0===t?t:e=>{let i=t(e);return"string"!=typeof i&&(yt(()=>gi(25,{id:i}),"getRowIdString"),i=String(i)),i}}function zi(e,t){const i=e.get("groupHideParentOfSingleChild");return!0===i||(!("leafGroupsOnly"!==i||!t.leafGroup)||(!!e.get("groupRemoveSingleChildren")||!(!e.get("groupRemoveLowestSingleChildren")||!t.leafGroup)))}function Wi(e){const t=e.get("maxConcurrentDatasourceRequests");return t>0?t:void 0}function Ui(e,t){const i=e.get("suppressGroupChangesColumnVisibility");if(!0===i)return!1;if(t&&"suppressHideOnGroup"===i)return!1;if(!t&&"suppressShowOnUngroup"===i)return!1;const s=e.get("suppressRowGroupHidesColumns");if(t&&!0===s)return!1;const o=e.get("suppressMakeColumnVisibleAfterUnGroup");return!(!t&&!0===o)}function ji(e){return e?.checkboxes??!0}function Ki(e){return"multiRow"===e?.mode&&(e.headerCheckbox??!0)}function $i(e){if("object"==typeof e)return e.checkboxLocation??"selectionColumn"}function qi(e){return e?.hideDisabledCheckboxes??!1}function Yi(e){return"string"!=typeof e.get("rowSelection")}function Xi(e){return void 0!==e.get("cellSelection")}function Zi(e){const t=e.get("cellSelection");return void 0!==t?"boolean"!=typeof t&&(t?.suppressMultiRanges??!1):e.get("suppressMultiRangeSelection")}function Qi(e){const t=e.get("cellSelection");return void 0!==t?!!t:e.get("enableRangeSelection")}function Ji(e){const t=e.get("cellSelection");return void 0!==t?"boolean"!=typeof t&&"fill"===t.handle?.mode?t.handle:void 0:{mode:"fill",setFillValue:e.get("fillOperation"),direction:e.get("fillHandleDirection"),suppressClearOnFillReduction:e.get("suppressClearOnFillReduction")}}function es(e){const t=e.get("cellSelection")??!1;return("object"==typeof t&&t.enableColumnSelection)??!1}function ts(e){const t=e.get("rowSelection")??"single";if("string"==typeof t){const t=e.get("suppressRowClickSelection"),i=e.get("suppressRowDeselection");return(!t||!i)&&(t?"enableDeselection":!i||"enableSelection")}return("singleRow"===t.mode||"multiRow"===t.mode)&&(t.enableClickSelection??!1)}function is(e){const t=e.get("rowSelection");return"string"==typeof t?e.get("isRowSelectable"):t?.isRowSelectable}function ss(e){const t="beanName"in e&&"gos"===e.beanName?e.get("rowSelection"):e.rowSelection;if("string"==typeof t)switch(t){case"multiple":return"multiRow";case"single":return"singleRow";default:return}switch(t?.mode){case"multiRow":case"singleRow":return t.mode;default:return}}function os(e){return"multiRow"===ss(e)}function rs(e){const t=e.get("rowSelection");if("string"==typeof t){const t=e.get("groupSelectsChildren"),i=e.get("groupSelectsFiltered");return t&&i?"filteredDescendants":t?"descendants":"self"}return"multiRow"===t?.mode?t.groupSelects:void 0}function ns(e,t=!0){const i=e.get("rowSelection");return"object"!=typeof i?t?"all":void 0:"multiRow"===i.mode?i.selectAll:"all"}function as(e){const t=rs(e);return"descendants"===t||"filteredDescendants"===t}function ls(e){const t=e.get("rowSelection");return"object"==typeof t&&t.masterSelects||"self"}function ds(e){return e.isModuleRegistered("SetFilter")&&!e.get("suppressSetFilterByDefault")}function cs(e){return"legacy"===e.get("columnMenu")}function us(e){return!cs(e)}function hs(e){return!e||e.length<2?e:"on"+e[0].toUpperCase()+e.substring(1)}function gs(e,t,i){"object"!=typeof e&&(e={});const s={...e};for(const e of i){const i=t[e];void 0!==i&&(s[e]=i)}return s}function ps(e,t){if(!e)return;const i={};let s=!1;for(const t of Object.keys(e))i[t]=e[t],s=!0;if(!s)return;const o={type:"gridOptionsChanged",options:i};t.dispatchEvent(o);const r={type:"componentStateChanged",...i};t.dispatchEvent(r)}function ms(e,t){return e.addCommon(t)}function fs(e,t){return e[t]??e.gridOptions?.[t]??Lt(t)??Ot[t]}function Cs({gos:e},t){return 2===t.button||t.ctrlKey&&e.get("allowContextMenuWithControlKey")}var vs={resizable:!0,sortable:!0},ws=0;function bs(){return ws++}function ys(e){return e instanceof Fs}var Ss=["asc","desc",null],xs=[{type:"absolute",direction:"asc"},{type:"absolute",direction:"desc"},null],Fs=class extends wt{constructor(e,t,i,s){super(),this.colDef=e,this.userProvidedColDef=t,this.colId=i,this.primary=s,this.isColumn=!0,this.instanceId=bs(),this.autoHeaderHeight=null,this.sortDef=Rs(),this._wasSortExplicitlyRemoved=!1,this.moving=!1,this.resizing=!1,this.menuVisible=!1,this.formulaRef=null,this.lastLeftPinned=!1,this.firstRightPinned=!1,this.filterActive=!1,this.colEventSvc=new y,this.tooltipEnabled=!1,this.rowGroupActive=!1,this.pivotActive=!1,this.aggregationActive=!1,this.flex=null,this.colIdSanitised=R(i)}destroy(){super.destroy(),this.beans.rowSpanSvc?.deregister(this)}getInstanceId(){return this.instanceId}initState(){const{colDef:e,beans:{sortSvc:t,pinnedCols:i,colFlex:s}}=this;t?.initCol(this);const o=e.hide;this.visible=void 0!==o?!o:!e.initialHide,i?.initCol(this),s?.initCol(this)}setColDef(e,t,i){const s=e.spanRows!==this.colDef.spanRows;this.colDef=e,this.userProvidedColDef=t,this.initMinAndMaxWidths(),this.initDotNotation(),this.initTooltip(),s&&(this.beans.rowSpanSvc?.deregister(this),this.initRowSpan()),this.dispatchColEvent("colDefChanged",i)}getUserProvidedColDef(){return this.userProvidedColDef}getParent(){return this.parent}getOriginalParent(){return this.originalParent}postConstruct(){this.initState(),this.initMinAndMaxWidths(),this.resetActualWidth("gridInitializing"),this.initDotNotation(),this.initTooltip(),this.initRowSpan(),this.addPivotListener()}initDotNotation(){const{gos:e,colDef:{field:t,tooltipField:i}}=this,s=e.get("suppressFieldDotNotation");this.fieldContainsDots=f(t)&&t.includes(".")&&!s,this.tooltipFieldContainsDots=f(i)&&i.includes(".")&&!s}initMinAndMaxWidths(){const e=this.colDef;this.minWidth=e.minWidth??this.beans.environment.getDefaultColumnMinWidth(),this.maxWidth=e.maxWidth??Number.MAX_SAFE_INTEGER}initTooltip(){this.beans.tooltipSvc?.initCol(this)}initRowSpan(){this.colDef.spanRows&&this.beans.rowSpanSvc?.register(this)}addPivotListener(){const e=this.beans.pivotColDefSvc,t=this.colDef.pivotValueColumn;e&&t&&this.addManagedListeners(t,{colDefChanged:t=>{const i=e.recreateColDef(this.colDef);this.setColDef(i,i,t.source)}})}resetActualWidth(e){const t=this.calculateColInitialWidth(this.colDef);this.setActualWidth(t,e,!0)}calculateColInitialWidth(e){const t=e.width??e.initialWidth??200;return Math.max(Math.min(t,this.maxWidth),this.minWidth)}isEmptyGroup(){return!1}isRowGroupDisplayed(e){return this.beans.showRowGroupCols?.isRowGroupDisplayed(this,e)??!1}isPrimary(){return this.primary}isFilterAllowed(){return!!this.colDef.filter}isFieldContainsDots(){return this.fieldContainsDots}isTooltipEnabled(){return this.tooltipEnabled}isTooltipFieldContainsDots(){return this.tooltipFieldContainsDots}getHighlighted(){return this.highlighted}__addEventListener(e,t){this.colEventSvc.addEventListener(e,t)}__removeEventListener(e,t){this.colEventSvc.removeEventListener(e,t)}addEventListener(e,t){this.frameworkEventListenerService=this.beans.frameworkOverrides.createLocalEventListenerWrapper?.(this.frameworkEventListenerService,this.colEventSvc);const i=this.frameworkEventListenerService?.wrap(e,t)??t;this.colEventSvc.addEventListener(e,i)}removeEventListener(e,t){const i=this.frameworkEventListenerService?.unwrap(e,t)??t;this.colEventSvc.removeEventListener(e,i)}createColumnFunctionCallbackParams(e){return ms(this.gos,{node:e,data:e.data,column:this,colDef:this.colDef})}isSuppressNavigable(e){return this.beans.cellNavigation?.isSuppressNavigable(this,e)??!1}isCellEditable(e){return this.beans.editSvc?.isCellEditable({rowNode:e,column:this})??!1}isSuppressFillHandle(){return!!this.colDef.suppressFillHandle}isAutoHeight(){return!!this.colDef.autoHeight}isAutoHeaderHeight(){return!!this.colDef.autoHeaderHeight}isRowDrag(e){return this.isColumnFunc(e,this.colDef.rowDrag)}isDndSource(e){return this.isColumnFunc(e,this.colDef.dndSource)}isCellCheckboxSelection(e){return this.beans.selectionSvc?.isCellCheckboxSelection(this,e)??!1}isSuppressPaste(e){return this.isColumnFunc(e,this.colDef?.suppressPaste??null)}isResizable(){return!!this.getColDefValue("resizable")}getColDefValue(e){return this.colDef[e]??vs[e]}isColumnFunc(e,t){if("boolean"==typeof t)return t;if("function"==typeof t){return t(this.createColumnFunctionCallbackParams(e))}return!1}createColumnEvent(e,t){return ms(this.gos,{type:e,column:this,columns:[this],source:t})}isMoving(){return this.moving}getSort(){return this.sortDef.direction}getSortDef(){return this.sortDef.direction?this.sortDef:null}getColDefAllowedSortTypes(){const e=[],{sort:t,initialSort:i}=this.colDef,s=null===t?t:Ds(t?.type),o=null===i?i:Ds(i?.type);return s&&e.push(s),o&&e.push(o),e}getSortingOrder(){const e=this.getColDefAllowedSortTypes().includes("absolute")?xs:Ss;return(this.colDef.sortingOrder??this.gos.get("sortingOrder")??e).map(e=>Rs(e))}getAvailableSortTypes(){const e=this.getSortingOrder().reduce((e,t)=>(t.direction&&e.push(t.type),e),this.getColDefAllowedSortTypes());return new Set(e)}get wasSortExplicitlyRemoved(){return this._wasSortExplicitlyRemoved}setSortDef(e,t=!1){t||(this._wasSortExplicitlyRemoved=!e.direction),this.sortDef=e}isSortable(){return!!this.getColDefValue("sortable")}isSortAscending(){return"asc"===this.getSort()}isSortDescending(){return"desc"===this.getSort()}isSortNone(){return C(this.getSort())}isSorting(){return f(this.getSort())}getSortIndex(){return this.sortIndex}isMenuVisible(){return this.menuVisible}getAggFunc(){return this.aggFunc}getLeft(){return this.left}getOldLeft(){return this.oldLeft}getRight(){return this.left+this.actualWidth}setLeft(e,t){this.oldLeft=this.left,this.left!==e&&(this.left=e,this.dispatchColEvent("leftChanged",t))}isFilterActive(){return this.filterActive}isHovered(){return gi(261),!!this.beans.colHover?.isHovered(this)}setFirstRightPinned(e,t){this.firstRightPinned!==e&&(this.firstRightPinned=e,this.dispatchColEvent("firstRightPinnedChanged",t))}setLastLeftPinned(e,t){this.lastLeftPinned!==e&&(this.lastLeftPinned=e,this.dispatchColEvent("lastLeftPinnedChanged",t))}isFirstRightPinned(){return this.firstRightPinned}isLastLeftPinned(){return this.lastLeftPinned}isPinned(){return"left"===this.pinned||"right"===this.pinned}isPinnedLeft(){return"left"===this.pinned}isPinnedRight(){return"right"===this.pinned}getPinned(){return this.pinned}setVisible(e,t){const i=!0===e;this.visible!==i&&(this.visible=i,this.dispatchColEvent("visibleChanged",t)),this.dispatchStateUpdatedEvent("hide")}isVisible(){return this.visible}isSpanHeaderHeight(){return!this.getColDef().suppressSpanHeaderHeight}getFirstRealParent(){let e=this.getOriginalParent();for(;e?.isPadding();)e=e.getOriginalParent();return e}getColumnGroupPaddingInfo(){let e=this.getParent();if(!e?.isPadding())return{numberOfParents:0,isSpanningTotal:!1};const t=e.getPaddingLevel()+1;let i=!0;for(;e;){if(!e.isPadding()){i=!1;break}e=e.getParent()}return{numberOfParents:t,isSpanningTotal:i}}getColDef(){return this.colDef}getDefinition(){return this.colDef}getColumnGroupShow(){return this.colDef.columnGroupShow}getColId(){return this.colId}getId(){return this.colId}getUniqueId(){return this.colId}getActualWidth(){return this.actualWidth}getAutoHeaderHeight(){return this.autoHeaderHeight}setAutoHeaderHeight(e){const t=e!==this.autoHeaderHeight;return this.autoHeaderHeight=e,t}createBaseColDefParams(e){return ms(this.gos,{node:e,data:e.data,colDef:this.colDef,column:this})}getColSpan(e){if(C(this.colDef.colSpan))return 1;const t=this.createBaseColDefParams(e),i=this.colDef.colSpan(t);return Math.max(i,1)}getRowSpan(e){if(C(this.colDef.rowSpan))return 1;const t=this.createBaseColDefParams(e),i=this.colDef.rowSpan(t);return Math.max(i,1)}setActualWidth(e,t,i=!1){e=Math.max(e,this.minWidth),e=Math.min(e,this.maxWidth),this.actualWidth!==e&&(this.actualWidth=e,null!=this.flex&&"flex"!==t&&"gridInitializing"!==t&&(this.flex=null),i||this.fireColumnWidthChangedEvent(t)),this.dispatchStateUpdatedEvent("width")}fireColumnWidthChangedEvent(e){this.dispatchColEvent("widthChanged",e)}isGreaterThanMax(e){return e>this.maxWidth}getMinWidth(){return this.minWidth}getMaxWidth(){return this.maxWidth}getFlex(){return this.flex}isRowGroupActive(){return this.rowGroupActive}isPivotActive(){return this.pivotActive}isAnyFunctionActive(){return this.isPivotActive()||this.isRowGroupActive()||this.isValueActive()}isAnyFunctionAllowed(){return this.isAllowPivot()||this.isAllowRowGroup()||this.isAllowValue()}isValueActive(){return this.aggregationActive}isAllowPivot(){return!0===this.colDef.enablePivot}isAllowValue(){return!0===this.colDef.enableValue}isAllowRowGroup(){return!0===this.colDef.enableRowGroup}isAllowFormula(){return!0===this.colDef.allowFormula}dispatchColEvent(e,t,i){const s=this.createColumnEvent(e,t);i&&At(s,i),this.colEventSvc.dispatchEvent(s)}dispatchStateUpdatedEvent(e){this.colEventSvc.dispatchEvent({type:"columnStateUpdated",key:e})}};function Rs(e){return Es(e)?{direction:e.direction,type:e.type}:{direction:Ts(e),type:Ds(e)}}function Ps(e){return"asc"===e||"desc"===e||null===e}function Ms(e){return"default"===e||"absolute"===e}function Es(e){if(!e||"object"!=typeof e)return!1;const t=e;return Ms(t.type)&&Ps(t.direction)}function As(e,t){return e?t?e.type===t.type&&e.direction===t.direction:!e||null===e.direction:!t||null===t.direction}function Ts(e){return Ps(e)?e:null}function Ds(e){return Ms(e)?e:"default"}function Is(e,t){const i=t.sortSvc.getDisplaySortForColumn(e),s=Ds(i?.type),o=Ts(i?.direction),r=e.getAvailableSortTypes();return{isDefaultSortAllowed:r.has("default"),isAbsoluteSortAllowed:r.has("absolute"),isAbsoluteSort:"absolute"===s,isDefaultSort:"default"===s,isAscending:"asc"===o,isDescending:"desc"===o,direction:o}}function ks(e){return e instanceof Ls}var Ls=class extends wt{constructor(e,t,i,s){super(),this.colGroupDef=e,this.groupId=t,this.padding=i,this.level=s,this.isColumn=!1,this.expandable=!1,this.instanceId=bs(),this.expandableListenerRemoveCallback=null,this.expanded=!!e?.openByDefault}destroy(){this.expandableListenerRemoveCallback&&this.reset(null,void 0),super.destroy()}reset(e,t){this.colGroupDef=e,this.level=t,this.originalParent=null,this.expandableListenerRemoveCallback&&this.expandableListenerRemoveCallback(),this.children=void 0,this.expandable=void 0}getInstanceId(){return this.instanceId}getOriginalParent(){return this.originalParent}getLevel(){return this.level}isVisible(){return!!this.children&&this.children.some(e=>e.isVisible())}isPadding(){return this.padding}setExpanded(e){this.expanded=void 0!==e&&e,this.dispatchLocalEvent({type:"expandedChanged"})}isExpandable(){return this.expandable}isExpanded(){return this.expanded}getGroupId(){return this.groupId}getId(){return this.getGroupId()}setChildren(e){this.children=e}getChildren(){return this.children}getColGroupDef(){return this.colGroupDef}getLeafColumns(){const e=[];return this.addLeafColumns(e),e}forEachLeafColumn(e){if(this.children)for(const t of this.children)ys(t)?e(t):ks(t)&&t.forEachLeafColumn(e)}addLeafColumns(e){if(this.children)for(const t of this.children)ys(t)?e.push(t):ks(t)&&t.addLeafColumns(e)}getColumnGroupShow(){const e=this.colGroupDef;if(e)return e.columnGroupShow}setupExpandable(){this.setExpandable(),this.expandableListenerRemoveCallback&&this.expandableListenerRemoveCallback();const e=this.onColumnVisibilityChanged.bind(this);for(const t of this.getLeafColumns())t.__addEventListener("visibleChanged",e);this.expandableListenerRemoveCallback=()=>{for(const t of this.getLeafColumns())t.__removeEventListener("visibleChanged",e);this.expandableListenerRemoveCallback=null}}setExpandable(){if(this.isPadding())return;let e=!1,t=!1,i=!1;const s=this.findChildrenRemovingPadding();for(let o=0,r=s.length;o{for(const s of i){ks(s)&&s.isPadding()?t(s.children):e.push(s)}};return t(this.children),e}onColumnVisibilityChanged(){this.setExpandable()}},Os={numericColumn:{headerClass:"ag-right-aligned-header",cellClass:"ag-right-aligned-cell"},rightAligned:{headerClass:"ag-right-aligned-header",cellClass:"ag-right-aligned-cell"}};function Gs(e,t,i){const s={},o=e.gos;return Object.assign(s,o.get("defaultColGroupDef")),Object.assign(s,t),o.validateColDef(s,i),s}var Ns=class{constructor(){this.existingKeys={}}addExistingKeys(e){for(let t=0;t0&&gi(273,{providedId:e,usedId:t}),this.existingKeys[t]=!0,t}i++}}},Bs="ag-Grid-AutoColumn",Vs="ag-Grid-SelectionColumn",_s="ag-Grid-RowNumbersColumn",Hs="ag-Grid-HierarchyColumn";function zs(e){const t=[],i=e=>{for(let s=0;se+t.getActualWidth(),0)}function Us(e,t,i){const s={};if(!t)return;po(null,t,e=>{s[e.getInstanceId()]=e}),i&&po(null,i,e=>{s[e.getInstanceId()]=null});const o=Object.values(s).filter(e=>null!=e);e.context.destroyBeans(o)}function js(e){return e.getId().startsWith(Bs)}function Ks(e){const t="string"==typeof e?e:"getColId"in e?e.getColId():e.colId;return t?.startsWith(Vs)??!1}function $s(e){const t="string"==typeof e?e:"getColId"in e?e.getColId():e.colId;return t?.startsWith(_s)??!1}function qs(e){return Ks(e)||$s(e)}function Ys(e){let t=[];return e instanceof Array?t=e:"string"==typeof e&&(t=e.split(",")),t}function Xs(e,t){return d(e,t,(e,t)=>e.getColId()===t.getColId())}function Zs(e){e.map={};for(const t of e.list)e.map[t.getId()]=t}function Qs(e){return"optionsUpdated"===e?"gridOptionsChanged":e}function Js(e,t){return e===t||e.colId==t||e.getColDef()===t}var eo=(e,t)=>(i,s)=>{const o={value1:void 0,value2:void 0};let r=!1;return e&&(void 0!==e[i]&&(o.value1=e[i],r=!0),f(s)&&void 0!==e[s]&&(o.value2=e[s],r=!0)),!r&&t&&(void 0!==t[i]&&(o.value1=t[i]),f(s)&&void 0!==t[s]&&(o.value2=t[s])),o};function to(e,t){const i={...e,sort:void 0,colId:t},s=io(e);return s&&(i.sort=s.direction,i.sortType=s.type),i}function io(e){const{sort:t,initialSort:i}=e,s=Es(t)||Ps(t),o=Es(i)||Ps(i);return s?Rs(t):o?Rs(i):null}var so=(e,t)=>{ks(e)&&e.setupExpandable(),e.originalParent=t};function oo(e,t=null,i,s,o){const{existingCols:r,existingGroups:n}=no(s),a=new Map(r.map(e=>[e.getId(),e])),l=new Map(n.map(e=>[e.getId(),e]));let d=0;const c=(t,s)=>{if(d=Math.max(d,s),go(t)){if(!e.colGroupSvc)return null;const i=t.groupId,o=l.get(i),r=Gs(e,t,i),n=new Ls(r,i,!1,s);return e.context.createBean(n),o&&n.setExpanded(o.isExpanded()),n.setChildren(t.children.map(e=>c(e,s+1))),n}const r=t.colId;let n=a.get(r);const u=ho(e,t,n?.getColId()??r);return n?(n.setColDef(u,t,o),uo(e,n,u,o)):(n=new Fs(u,t,r,i),e.context.createBean(n)),e.dataTypeSvc?.addColumnListeners(n),n},u=t?.map(e=>c(e,0))??[];let h=0;const g={getUniqueKey:(e,t)=>String(++h)},p=e.colGroupSvc?e.colGroupSvc.balanceColumnTree(u,0,d,g):u;return po(null,p,so),{columnTree:p,treeDepth:d}}function ro(e,t=null,i,s,o){const r=new Ns,{existingCols:n,existingGroups:a,existingColKeys:l}=no(s);r.addExistingKeys(l);const d=ao(e,t,0,i,n,r,a,o),{colGroupSvc:c}=e,u=c?.findMaxDepth(d,0)??0,h=c?c.balanceColumnTree(d,0,u,r):d;return po(null,h,so),{columnTree:h,treeDepth:u}}function no(e){const t=[],i=[],s=[];return e&&po(null,e,e=>{if(ks(e)){const t=e;i.push(t)}else{const i=e;s.push(i.getId()),t.push(i)}}),{existingCols:t,existingGroups:i,existingColKeys:s}}function ao(e,t,i,s,o,r,n,a){if(!t)return[];const{colGroupSvc:l}=e,d=new Array(t.length);for(let c=0;c0))if(null!=i.width)t.setActualWidth(i.width,s);else{const e=t.getActualWidth();t.setActualWidth(e,s)}}function ho(e,t,i,s){const{gos:o,dataTypeSvc:r}=e,n={};At(n,o.get("defaultColDef"),!1,!0);const a=function(e,t,i,s){const o=e.dataTypeSvc?.updateColDefAndGetColumnType(t,i,s),r=i.type??o??t.type;return t.type=r,r?Ys(r):void 0}(e,n,t,i);a&&function(e,t,i){if(!t.length)return;const s=Object.assign({},Os),o=e.gos.get("columnTypes")||{};for(const e of Object.keys(o)){const t=o[e];if(e in s)gi(34,{key:e});else{t.type&&gi(35),s[e]=t}}for(const e of t){const t=s[e.trim()];t?At(i,t,!1,!0):gi(36,{t:e})}}(e,a,n);const l=n.cellDataType;At(n,t,!1,!0),void 0!==l&&(n.cellDataType=l);const d=o.get("autoGroupColumnDef"),c=Li(o);return t.rowGroup&&d&&c&&At(n,{sort:d.sort,initialSort:d.initialSort},!1,!0),r?.postProcess(n),r?.validateColDef(n),o.validateColDef(n,i,s),n}function go(e){return void 0!==e.children}function po(e,t,i){if(t)for(let s=0;s{const t=e.getColDef().lockPosition;"right"===t?o.push(e):"left"===t||!0===t?i.push(e):s.push(e)});return t.get("enableRtl")?[...o,...s,...i]:[...i,...s,...o]}function fo(e,t){let i=!0;return po(null,t,t=>{if(!ks(t))return;const s=t,o=s.getColGroupDef(),r=o?.marryChildren;if(!r)return;const n=[];for(const t of s.getLeafColumns()){const i=e.indexOf(t);n.push(i)}Math.max.apply(Math,n)-Math.min.apply(Math,n)>s.getLeafColumns().length-1&&(i=!1)}),i}function Co(e,t){if(!e||0==e.length)return;const i=t(e[0]);for(let s=1;se.getPinned());e.dispatchEvent({type:"columnPinned",pinned:null!=o?o:null,columns:t,column:s,source:i})}function wo(e,t,i,s){e.dispatchEvent({type:t,columns:i,column:i&&1==i.length?i[0]:null,source:s})}function bo(e,t,i,s,o=null){t?.length&&e.dispatchEvent({type:"columnResized",columns:t,column:1===t.length?t[0]:null,flexColumns:o,finished:i,source:s})}function yo(e,t,i){const{colModel:s,rowGroupColsSvc:o,pivotColsSvc:r,autoColSvc:n,selectionColSvc:a,colAnimation:l,visibleCols:d,pivotResultCols:c,environment:h,valueColsSvc:g,eventSvc:p,gos:m}=e,C=s.getColDefCols()??[],v=a?.getColumns();if(!C.length&&!v?.length)return!1;if(t?.state&&!t.state.forEach)return gi(32),!1;const w=(s,n,a,l,d)=>{if(!s)return;const c=eo(n,t.defaultState),u=c("flex").value1,p=c("sort").value1,m=c("sortType").value1,f=Ps(p)||Ms(m),C=Ds(m),v=Ts(p),w=f?{type:C,direction:v}:void 0;if(co(e,s,c("hide").value1,w,c("sortIndex").value1,c("pinned").value1,u,i),null==u){const e=c("width").value1;if(null!=e){const t=s.getColDef().minWidth??h.getDefaultColumnMinWidth();null!=t&&e>=t&&s.setActualWidth(e,i)}}!d&&s.isPrimary()&&(g?.syncColumnWithState(s,i,c),o?.syncColumnWithState(s,i,c,a),r?.syncColumnWithState(s,i,c,l))},b=(l,c,h)=>{const g=xo(e,i),f=c.slice(),C={},v={},b=[],y=[],S=[];let x=0;const F=o?.columns.slice()??[],R=r?.columns.slice()??[];for(const e of l){const t=e.colId;if(t.startsWith(Bs)){b.push(e),S.push(e);continue}if(Ks(t)){y.push(e),S.push(e);continue}const i=h(t);i?(w(i,e,C,v,!1),u(f,i)):(S.push(e),x+=1)}const P=e=>w(e,null,C,v,!1);f.forEach(P),o?.sortColumns(Po.bind(o,C,F)),r?.sortColumns(Po.bind(r,v,R)),s.refreshCols(!1,i);const M=(e,t,i=[])=>{for(const s of t){const t=e(s.colId);u(i,t),w(t,s,null,null,!0)}i.forEach(P)};return M(e=>n?.getColumn(e)??null,b,n?.getColumns()?.slice()),M(e=>a?.getColumn(e)??null,y,a?.getColumns()?.slice()),function(e,t,i){if(!e.applyOrder||!e.state)return;const s=[];for(const t of e.state)null!=t.colId&&s.push(t.colId);!function(e,t,i,s){if(null==e)return;let o=[];const r={};for(const i of t){if(r[i])continue;const t=e.map[i];t&&(o.push(t),r[i]=!0)}let n=0;for(const t of e.list){const e=t.getColId();if(null!=r[e])continue;e.startsWith(Bs)?o.splice(n++,0,t):o.push(t)}if(o=mo(o,s),!fo(o,i.getColTree()))return void gi(39);e.list=o}(t.cols,s,t,i)}(t,s,m),d.refresh(i),p.dispatchEvent({type:"columnEverythingChanged",source:i}),g(),{unmatchedAndAutoStates:S,unmatchedCount:x}};l?.start();let{unmatchedAndAutoStates:y,unmatchedCount:S}=b(t.state||[],C,e=>s.getColDefCol(e));if(y.length>0||f(t.defaultState)){S=b(y,c?.getPivotResultCols()?.list??[],e=>c?.getPivotResultCol(e)??null).unmatchedCount}return l?.finish(),0===S}function So(e,t){const{colModel:i,autoColSvc:s,selectionColSvc:o,eventSvc:r,gos:n}=e,a=i.getColDefCols();if(!a?.length)return;const l=zs(i.getColDefColTree()),d=[];let c=1e3,u=1e3;const h=e=>{const t=Ro(e);C(t.rowGroupIndex)&&t.rowGroup&&(t.rowGroupIndex=c++),C(t.pivotIndex)&&t.pivot&&(t.pivotIndex=u++),d.push(t)};s?.getColumns()?.forEach(h),o?.getColumns()?.forEach(h),l?.forEach(h),yo(e,{state:d},t);const g=s?.getColumns()??[];yo(e,{state:[...o?.getColumns()??[],...g,...a].map(e=>({colId:e.colId})),applyOrder:!0},t),r.dispatchEvent(ms(n,{type:"columnsReset",source:t}))}function xo(e,t){const{rowGroupColsSvc:i,pivotColsSvc:s,valueColsSvc:o,colModel:r,sortSvc:n,eventSvc:a}=e,l={rowGroupColumns:i?.columns.slice()??[],pivotColumns:s?.columns.slice()??[],valueColumns:o?.columns.slice()??[]},c=Fo(e),u={};for(const e of c)u[e.colId]=e;return()=>{const o=(e,i,s,o)=>{if(d(i.map(o),s.map(o)))return;const r=new Set(i);for(const e of s)r.delete(e)||r.add(e);const n=[...r];a.dispatchEvent({type:e,columns:n,column:1===n.length?n[0]:null,source:t})},h=e=>{const t=[];return r.forAllCols(i=>{const s=u[i.getColId()];s&&e(s,i)&&t.push(i)}),t},g=e=>e.getColId();o("columnRowGroupChanged",l.rowGroupColumns,i?.columns??[],g),o("columnPivotChanged",l.pivotColumns,s?.columns??[],g);const p=h((e,t)=>{const i=null!=e.aggFunc,s=i!=t.isValueActive(),o=i&&e.aggFunc!=t.getAggFunc();return s||o});p.length>0&&wo(a,"columnValueChanged",p,t);bo(a,h((e,t)=>e.width!=t.getActualWidth()),!0,t);vo(a,h((e,t)=>e.pinned!=t.getPinned()),t);!function(e,t,i){if(!t.length)return;const s=1===t.length?t[0]:null,o=Co(t,e=>e.isVisible());e.dispatchEvent({type:"columnVisible",visible:o,columns:t,column:s,source:i})}(a,h((e,t)=>e.hide==t.isVisible()),t);const m=h((e,t)=>!As(t.getSortDef(),{type:Ds(e.sortType),direction:Ts(e.sort)})||e.sortIndex!=t.getSortIndex());m.length>0&&n?.dispatchSortChangedEvents(t,m);const f=Fo(e);!function(e,t,i,s,o){const r={};for(const e of t)r[e.colId]=e;const n={};for(const t of e)r[t.colId]&&(n[t.colId]=!0);const a=e.filter(e=>n[e.colId]),l=t.filter(e=>n[e.colId]),d=[];if(l.forEach((e,t)=>{const i=a?.[t];if(i&&i.colId!==e.colId){const e=s.getCol(i.colId);e&&d.push(e)}}),!d.length)return;o.dispatchEvent({type:"columnMoved",columns:d,column:1===d.length?d[0]:null,finished:!0,source:i})}(c,f,t,r,a)}}function Fo(e){const{colModel:t,rowGroupColsSvc:i,pivotColsSvc:s}=e;if(C(t.getColDefCols())||!t.isAlive())return[];const o=i?.columns,r=s?.columns,n=[];t.forAllCols(e=>(e=>{const t=e.isRowGroupActive()&&o?o.indexOf(e):null,i=e.isPivotActive()&&r?r.indexOf(e):null,s=e.isValueActive()?e.getAggFunc():null,a=null!=e.getSortIndex()?e.getSortIndex():null;n.push({colId:e.getColId(),width:e.getActualWidth(),hide:!e.isVisible(),pinned:e.getPinned(),sort:e.getSort(),sortType:e.getSortDef()?.type,sortIndex:a,aggFunc:s,rowGroup:e.isRowGroupActive(),rowGroupIndex:t,pivot:e.isPivotActive(),pivotIndex:i,flex:e.getFlex()??null})})(e));const a=new Map(t.getCols().map((e,t)=>[e.getColId(),t]));return n.sort((e,t)=>(a.has(e.colId)?a.get(e.colId):-1)-(a.has(t.colId)?a.get(t.colId):-1)),n}function Ro(e){const t=(e,t)=>null!=e?e:null!=t?t:null,i=e.getColDef(),s=Rs(t(i.sort,i.initialSort)),o=s.direction,r=s.type,n=t(i.sortIndex,i.initialSortIndex),a=t(i.hide,i.initialHide),l=t(i.pinned,i.initialPinned),d=t(i.width,i.initialWidth),c=t(i.flex,i.initialFlex);let u=t(i.rowGroupIndex,i.initialRowGroupIndex),h=t(i.rowGroup,i.initialRowGroup);null!=u||h||(u=null,h=null);let g=t(i.pivotIndex,i.initialPivotIndex),p=t(i.pivot,i.initialPivot);null!=g||p||(g=null,p=null);const m=t(i.aggFunc,i.initialAggFunc);return{colId:e.getColId(),sort:o,sortType:r,sortIndex:n,hide:a,pinned:l,width:d,flex:c,rowGroup:h,rowGroupIndex:u,pivot:p,pivotIndex:g,aggFunc:m}}var Po=(e,t,i,s)=>{const o=e[i.getId()],r=e[s.getId()],n=null!=o,a=null!=r;if(n&&a)return o-r;if(n)return-1;if(a)return 1;const l=t.indexOf(i),d=t.indexOf(s),c=l>=0;return c&&d>=0?l-d:c?-1:1};function Mo(e,t){return e+"_"+t}function Eo(e){return e instanceof Ao}var Ao=class extends wt{constructor(e,t,i,s){super(),this.providedColumnGroup=e,this.groupId=t,this.partId=i,this.pinned=s,this.isColumn=!1,this.displayedChildren=[],this.autoHeaderHeight=null,this.parent=null,this.colIdSanitised=R(this.getUniqueId())}reset(){this.parent=null,this.children=null,this.displayedChildren=null}getParent(){return this.parent}getUniqueId(){return Mo(this.groupId,this.partId)}isEmptyGroup(){return 0===this.displayedChildren.length}isMoving(){const e=this.getProvidedColumnGroup().getLeafColumns();return!(!e||0===e.length)&&e.every(e=>e.isMoving())}checkLeft(){for(const e of this.displayedChildren)Eo(e)&&e.checkLeft();if(this.displayedChildren.length>0)if(this.gos.get("enableRtl")){const e=l(this.displayedChildren).getLeft();this.setLeft(e)}else{const e=this.displayedChildren[0].getLeft();this.setLeft(e)}else this.setLeft(null)}getLeft(){return this.left}getOldLeft(){return this.oldLeft}setLeft(e){this.oldLeft=this.left,this.left!==e&&(this.left=e,this.dispatchLocalEvent({type:"leftChanged"}))}getPinned(){return this.pinned}getGroupId(){return this.groupId}getPartId(){return this.partId}getActualWidth(){let e=0;for(const t of this.displayedChildren??[])e+=t.getActualWidth();return e}isResizable(){if(!this.displayedChildren)return!1;let e=!1;for(const t of this.displayedChildren)t.isResizable()&&(e=!0);return e}getMinWidth(){let e=0;for(const t of this.displayedChildren)e+=t.getMinWidth();return e}addChild(e){this.children||(this.children=[]),this.children.push(e)}getDisplayedChildren(){return this.displayedChildren}getLeafColumns(){const e=[];return this.addLeafColumns(e),e}getDisplayedLeafColumns(){const e=[];return this.addDisplayedLeafColumns(e),e}getDefinition(){return this.providedColumnGroup.getColGroupDef()}getColGroupDef(){return this.providedColumnGroup.getColGroupDef()}isPadding(){return this.providedColumnGroup.isPadding()}isExpandable(){return this.providedColumnGroup.isExpandable()}isExpanded(){return this.providedColumnGroup.isExpanded()}setExpanded(e){this.providedColumnGroup.setExpanded(e)}isAutoHeaderHeight(){return!!this.getColGroupDef()?.autoHeaderHeight}getAutoHeaderHeight(){return this.autoHeaderHeight}setAutoHeaderHeight(e){const t=e!==this.autoHeaderHeight;return this.autoHeaderHeight=e,t}addDisplayedLeafColumns(e){for(const t of this.displayedChildren??[])ys(t)?e.push(t):Eo(t)&&t.addDisplayedLeafColumns(e)}addLeafColumns(e){for(const t of this.children??[])ys(t)?e.push(t):Eo(t)&&t.addLeafColumns(e)}getChildren(){return this.children}getColumnGroupShow(){return this.providedColumnGroup.getColumnGroupShow()}getProvidedColumnGroup(){return this.providedColumnGroup}getPaddingLevel(){const e=this.getParent();return this.isPadding()&&e?.isPadding()?1+e.getPaddingLevel():0}calculateDisplayedColumns(){this.displayedChildren=[];let e=this;for(;e?.isPadding();)e=e.getParent();if(!(!!e&&e.getProvidedColumnGroup().isExpandable()))return this.displayedChildren=this.children,void this.dispatchLocalEvent({type:"displayedChildrenChanged"});for(const t of this.children??[]){if(Eo(t)&&!t.displayedChildren?.length)continue;switch(t.getColumnGroupShow()){case"open":e.getProvidedColumnGroup().isExpanded()&&this.displayedChildren.push(t);break;case"closed":e.getProvidedColumnGroup().isExpanded()||this.displayedChildren.push(t);break;default:this.displayedChildren.push(t)}}this.dispatchLocalEvent({type:"displayedChildrenChanged"})}},To={BACKSPACE:"Backspace",TAB:"Tab",ENTER:"Enter",ESCAPE:"Escape",SPACE:" ",LEFT:"ArrowLeft",UP:"ArrowUp",RIGHT:"ArrowRight",DOWN:"ArrowDown",DELETE:"Delete",F2:"F2",PAGE_UP:"PageUp",PAGE_DOWN:"PageDown",PAGE_HOME:"Home",PAGE_END:"End",A:"KeyA",C:"KeyC",D:"KeyD",V:"KeyV",X:"KeyX",Y:"KeyY",Z:"KeyZ"};function Do(e){const{keyCode:t}=e;let i;switch(t){case 65:i=To.A;break;case 67:i=To.C;break;case 86:i=To.V;break;case 68:i=To.D;break;case 90:i=To.Z;break;case 89:i=To.Y;break;default:i=e.code}return i}function Io(e){return"function"==typeof e.then}var ko=class e{constructor(e){this.status=0,this.resolution=null,this.waiters=[],e(e=>this.onDone(e),e=>this.onReject(e))}static all(t){return t.length?new e(e=>{let i=t.length;const s=new Array(i);t.forEach((t,o)=>{t.then(t=>{s[o]=t,i--,0===i&&e(s)})})}):e.resolve()}static resolve(t=null){return new e(e=>e(t))}then(t){return new e(e=>{1===this.status?e(t(this.resolution)):this.waiters.push(i=>e(t(i)))})}onDone(e){this.status=1,this.resolution=e;for(const t of this.waiters)t(e)}onReject(e){}},Lo=null;function Oo(e){return"function"==typeof e?.getGui}function Go(e){return Je(e)}function No(e,t,i){const s=Bo(e,t,i);if(s){const{className:e}=s;if("string"==typeof e&&e.includes("ag-icon")||"object"==typeof e&&e["ag-icon"])return s}const o=Go({tag:"span"});return o.appendChild(s),o}function Bo(e,t,i){let s=null;"smallDown"===e?gi(262):"smallLeft"===e?gi(263):"smallRight"===e&&gi(264);const o=i?.getColDef().icons;if(o&&(s=o[e]),t.gos&&!s){const i=t.gos.get("icons");i&&(s=i[e])}if(s){let t;if("function"==typeof s)t=s();else{if("string"!=typeof s)return void gi(38,{iconName:e});t=s}return"string"==typeof t?Le(t):je(t)?t:void gi(133,{iconName:e})}{const i=t.registry.getIcon(e);return i||t.validation?.validateIcon(e),Go({tag:"span",cls:`ag-icon ag-icon-${i??e}`,role:"presentation",attrs:{unselectable:"on"}})}}var Vo=class{constructor(e){this.cssClassStates={},this.getGui=e}toggleCss(e,t){if(!e)return;if(e.includes(" ")){const i=(e||"").split(" ");if(i.length>1){for(const e of i)this.toggleCss(e,t);return}}this.cssClassStates[e]!==t&&e.length&&(this.getGui()?.classList.toggle(e,t),this.cssClassStates[e]=t)}},_o=0,Ho=class extends vt{constructor(e,t){super(),this.suppressDataRefValidation=!1,this.displayed=!0,this.visible=!0,this.compId=_o++,this.cssManager=new Vo(()=>this.eGui),this.componentSelectors=new Map((t??[]).map(e=>[e.selector,e])),e&&this.setTemplate(e)}preConstruct(){this.wireTemplate(this.getGui()),this.addGlobalCss()}wireTemplate(e,t){e&&this.gos&&(this.applyElementsToComponent(e),this.createChildComponentsFromTags(e,t))}getCompId(){return this.compId}getDataRefAttribute(e){return e.getAttribute?e.getAttribute(Ze):null}applyElementsToComponent(e,t,i,s=null){if(void 0===t&&(t=this.getDataRefAttribute(e)),t){const o=this[t];if(o===Lo)this[t]=s??e;else{const e=i?.[t];if(!this.suppressDataRefValidation&&!e)throw new Error(`data-ref: ${t} on ${this.constructor.name} with ${o}`)}}}createChildComponentsFromTags(e,t){const i=[];for(const t of e.childNodes??[])i.push(t);for(const s of i){if(!(s instanceof HTMLElement))continue;const i=this.createComponentFromElement(s,e=>{const t=e.getGui();if(t)for(const e of s.attributes??[])t.setAttribute(e.name,e.value)},t);if(i){if(i.addItems&&s.children.length){this.createChildComponentsFromTags(s,t);const e=Array.prototype.slice.call(s.children);i.addItems(e)}this.swapComponentForNode(i,e,s)}else s.childNodes&&this.createChildComponentsFromTags(s,t)}}createComponentFromElement(e,t,i){const s=e.nodeName,o=this.getDataRefAttribute(e),r=0===s.indexOf("AG-"),n=r?this.componentSelectors.get(s):null;let a=null;if(n){const e=i&&o?i[o]:void 0;a=new n.component(e),a.setParentComponent(this),this.createBean(a,null,t)}else if(r)throw new Error(`selector: ${s}`);return this.applyElementsToComponent(e,o,i,a),a}swapComponentForNode(e,t,i){const s=e.getGui();t.replaceChild(s,i),t.insertBefore(document.createComment(i.nodeName),s),this.addDestroyFunc(this.destroyBean.bind(this,e))}activateTabIndex(e,t){const i=t??this.gos.get("tabIndex");e||(e=[]),e.length||e.push(this.getGui());for(const t of e)t.setAttribute("tabindex",i.toString())}setTemplate(e,t,i){let s;s="string"==typeof e||null==e?Le(e):Je(e),this.setTemplateFromElement(s,t,i)}setTemplateFromElement(e,t,i,s=!1){if(this.eGui=e,this.suppressDataRefValidation=s,t)for(let e=0;ethis.eGui.removeEventListener(e,t))}addCss(e){this.cssManager.toggleCss(e,!0)}removeCss(e){this.cssManager.toggleCss(e,!1)}toggleCss(e,t){this.cssManager.toggleCss(e,t)}registerCSS(e){this.css===zo?(this.css=[e],this.addGlobalCss()):(this.css||(this.css=[]),this.css.push(e))}addGlobalCss(){if(Array.isArray(this.css)){const e="component-"+Object.getPrototypeOf(this)?.constructor?.name;for(const t of this.css??[])this.beans.environment.addGlobalCSS(t,e)}this.css=zo}},zo=Symbol(),Wo=class extends Ho{},Uo={tag:"div",children:[{tag:"div",ref:"eGhost",cls:"ag-dnd-ghost ag-unselectable",children:[{tag:"span",ref:"eIcon",cls:"ag-dnd-ghost-icon ag-shake-left-to-right"},{tag:"div",ref:"eLabel",cls:"ag-dnd-ghost-label"}]}]},jo=class extends vt{constructor(){super(...arguments),this.beanName="dragAndDrop",this.dragSourceAndParamsList=[],this.dragItem=null,this.dragInitialSourcePointerOffsetX=0,this.dragInitialSourcePointerOffsetY=0,this.lastMouseEvent=null,this.lastDraggingEvent=null,this.dragSource=null,this.dragImageCompPromise=null,this.dragImageComp=null,this.dragImageLastIcon=void 0,this.dragImageLastLabel=void 0,this.dropTargets=[],this.externalDropZoneCount=0,this.lastDropTarget=null}addDragSource(e,t=!1){const i={capturePointer:!0,dragSource:e,eElement:e.eElement,dragStartPixels:e.dragStartPixels,onDragStart:t=>this.onDragStart(e,t),onDragStop:this.onDragStop.bind(this),onDragging:this.onDragging.bind(this),onDragCancel:this.onDragCancel.bind(this),includeTouch:t};this.dragSourceAndParamsList.push(i),this.beans.dragSvc.addDragSource(i)}setDragImageCompIcon(e,t=!1){const i=this.dragImageComp;i&&(t||this.dragImageLastIcon!==e)&&(this.dragImageLastIcon=e,i.setIcon(e,t))}removeDragSource(e){const{dragSourceAndParamsList:t,beans:i}=this;for(let s=0,o=t.length;s{for(const i of t){const{width:t,height:s,left:o,right:r,top:n,bottom:a}=i.getBoundingClientRect();if(0===t||0===s)return!1;const l=e.clientX>=o&&e.clientX=n&&e.clientY0}findExternalZone(e){const t=this.dropTargets;for(let i=0,s=t.length;i0?"down":p<0?"up":null,hDirection:g<0?"left":g>0?"right":null,initialSourcePointerOffsetX:a,initialSourcePointerOffsetY:l,dragSource:s,fromNudge:i,dragItem:o,dropZoneTarget:d,dropTarget:r?.dropTarget??null,changed:!!r?.changed});return this.lastDraggingEvent=m,m}positionDragImageComp(e){const t=this.dragImageComp?.getGui();t&&dt(t,e,this.beans)}removeDragImageComp(e){this.dragImageComp===e&&(this.dragImageComp=null),e&&(e.getGui()?.remove(),this.destroyBean(e))}createAndUpdateDragImageComp(e){const t=this.createDragImageComp(e)??null;this.dragImageCompPromise=t,t?.then(e=>{const i=this.lastMouseEvent;if(t!==this.dragImageCompPromise||!i||!this.isAlive())return void this.destroyBean(e);this.dragImageCompPromise=null,this.dragImageLastIcon=void 0,this.dragImageLastLabel=void 0;const s=this.dragImageComp;s!==e&&(this.dragImageComp=e,this.removeDragImageComp(s)),e&&(this.appendDragImageComp(e),this.updateDragImageComp(),this.positionDragImageComp(i))})}appendDragImageComp(e){const t=e.getGui(),i=t.style;i.position="absolute",i.zIndex="9999",this.beans.dragSvc?.hasPointerCapture()&&(i.pointerEvents="none"),this.gos.setInstanceDomData(t),this.beans.environment.applyThemeClasses(t),i.top="20px",i.left="20px";const s=k(this.beans);s?s.appendChild(t):this.warnNoBody()}updateDragImageComp(){const{dragImageComp:e,dragSource:t,lastDropTarget:i,lastDraggingEvent:s,dragImageLastLabel:o}=this;if(!e)return;this.setDragImageCompIcon(i?.getIconName?.(s)??null);let r=t?.dragItemName;"function"==typeof r&&(r=r(s)),r||(r=""),o!==r&&(this.dragImageLastLabel=r,e.setLabel(r))}};function Ko(e){return"object"==typeof e&&!!e.component}function $o(e,t,i,s){const{name:o}=i;let r,n,a,l,d,c;if(t){const i=t,u=i[o+"Selector"],h=u?u(s):null,g=t=>{if("string"==typeof t)r=t;else if(null!=t&&!0!==t){e.isFrameworkComponent(t)?a=t:n=t}};h?(g(h.component),l=h.params,d=h.popup,c=h.popupPosition):g(i[o])}return{compName:r,jsComp:n,fwComp:a,paramsFromSelector:l,popupFromSelector:d,popupPositionFromSelector:c}}var qo={name:"dateComponent",mandatoryMethods:["getDate","setDate"],optionalMethods:["afterGuiAttached","setInputPlaceholder","setInputAriaLabel","setDisabled","refresh"]},Yo={name:"dragAndDropImageComponent",mandatoryMethods:["setIcon","setLabel"]},Xo={name:"headerComponent",optionalMethods:["refresh"]},Zo={name:"innerHeaderComponent"},Qo={name:"innerHeaderGroupComponent"},Jo={name:"headerGroupComponent"},er={name:"innerRenderer",cellRenderer:!0,optionalMethods:["afterGuiAttached"]},tr={name:"cellRenderer",optionalMethods:["refresh","afterGuiAttached"],cellRenderer:!0},ir={name:"cellRenderer",optionalMethods:["refresh","afterGuiAttached"]},sr={name:"loadingCellRenderer",cellRenderer:!0},or={name:"cellEditor",mandatoryMethods:["getValue"],optionalMethods:["isPopup","isCancelBeforeStart","isCancelAfterEnd","getPopupPosition","focusIn","focusOut","afterGuiAttached","refresh"]},rr={name:"tooltipComponent"},nr={name:"filter",mandatoryMethods:["isFilterActive","doesFilterPass","getModel","setModel"],optionalMethods:["afterGuiAttached","afterGuiDetached","onNewRowsLoaded","getModelAsString","onFloatingFilterChanged","onAnyFilterChanged","refresh"]},ar={name:"floatingFilterComponent",mandatoryMethods:["onParentModelChanged"],optionalMethods:["afterGuiAttached","refresh"]},lr={name:"fullWidthCellRenderer",optionalMethods:["refresh","afterGuiAttached"],cellRenderer:!0},dr={name:"loadingCellRenderer",cellRenderer:!0},cr={name:"groupRowRenderer",optionalMethods:["afterGuiAttached"],cellRenderer:!0},ur={name:"detailCellRenderer",optionalMethods:["refresh"],cellRenderer:!0};function hr(e,t,i){return e.getCompDetails(t,er,void 0,i)}function gr(e,t,i){return e.getCompDetails(t,tr,void 0,i)}function pr(e,t,i){return e.getCompDetails(t,ir,void 0,i)}function mr(e,t,i){return e.getCompDetails(t,sr,"agSkeletonCellRenderer",i,!0)}function fr(e,t,i){return e.getCompDetails(t,or,"agCellEditor",i,!0)}function Cr(e,t,i,s){const o=t.filter;return Ko(o)&&(t={filter:o.component,filterParams:t.filterParams}),e.getCompDetails(t,nr,s,i,!0)}function vr(e,t,i,s){return e.getCompDetails(t,ar,s,i)}function wr(e,t){return $o(e,t,nr)}function br(e,t,i){return e.mergeParams(t,nr,i)}var yr=(e=>(e[e.ToolPanel=0]="ToolPanel",e[e.HeaderCell=1]="HeaderCell",e[e.RowDrag=2]="RowDrag",e[e.ChartPanel=3]="ChartPanel",e[e.AdvancedFilterBuilder=4]="AdvancedFilterBuilder",e))(yr||{});var Sr=class extends Wo{constructor(e){const{className:t="ag-filter-apply-panel"}=e??{};super(function(e){return{tag:"div",cls:e}}(t)),this.listeners=[],this.validationMessage=null,this.className=t}updateButtons(e,t){const i=this.buttons;if(this.buttons=e,i===e)return;const s=this.getGui();let o;Te(s),this.destroyListeners();const r=document.createDocumentFragment(),n=this.className,a=({type:e,label:i})=>{const s=t=>{this.dispatchLocalEvent({type:e,event:t})};["apply","clear","reset","cancel"].includes(e)||gi(75);const a="apply"===e,l=Go({tag:"button",attrs:{type:a&&t?"submit":"button"},ref:`${e}FilterButton`,cls:`ag-button ag-standard-button ${n}-button${a?" "+n+"-apply-button":""}`,children:i});this.activateTabIndex([l]),a&&(o=l);const d=e=>{e.key===To.ENTER&&(e.preventDefault(),s(e))},c=this.listeners;l.addEventListener("click",s),c.push(()=>l.removeEventListener("click",s)),l.addEventListener("keydown",d),c.push(()=>l.removeEventListener("keydown",d)),r.append(l)};for(const t of e)a(t);this.eApply=o;const l=this.validationTooltipFeature;o&&!l?this.validationTooltipFeature=this.createOptionalManagedBean(this.beans.registry.createDynamicBean("tooltipFeature",!1,{getGui:()=>this.eApply,getLocation:()=>"advancedFilter",getTooltipShowDelayOverride:()=>1e3})):!o&&l&&(this.validationTooltipFeature=this.destroyBean(l)),s.append(r)}getApplyButton(){return this.eApply}updateValidity(e,t=null){const i=this.eApply;i&&(be(i,!e),this.validationMessage=t,this.validationTooltipFeature?.setTooltipAndRefresh(this.validationMessage))}destroyListeners(){for(const e of this.listeners)e();this.listeners=[]}destroy(){this.destroyListeners(),super.destroy()}},xr={selector:"AG-FILTER-BUTTON",component:Sr},Fr={applyFilter:"Apply",clearFilter:"Clear",resetFilter:"Reset",cancelFilter:"Cancel",textFilter:"Text Filter",numberFilter:"Number Filter",bigintFilter:"BigInt Filter",dateFilter:"Date Filter",setFilter:"Set Filter",filterOoo:"Filter...",empty:"Choose one",equals:"Equals",notEqual:"Does not equal",lessThan:"Less than",greaterThan:"Greater than",inRange:"Between",inRangeStart:"From",inRangeEnd:"To",lessThanOrEqual:"Less than or equal to",greaterThanOrEqual:"Greater than or equal to",contains:"Contains",notContains:"Does not contain",startsWith:"Begins with",endsWith:"Ends with",blank:"Blank",notBlank:"Not blank",before:"Before",after:"After",andCondition:"AND",orCondition:"OR",dateFormatOoo:"yyyy-mm-dd",filterSummaryInactive:"is (All)",filterSummaryContains:"contains",filterSummaryNotContains:"does not contain",filterSummaryTextEquals:"equals",filterSummaryTextNotEqual:"does not equal",filterSummaryStartsWith:"begins with",filterSummaryEndsWith:"ends with",filterSummaryBlank:"is blank",filterSummaryNotBlank:"is not blank",filterSummaryEquals:"=",filterSummaryNotEqual:"!=",filterSummaryGreaterThan:">",filterSummaryGreaterThanOrEqual:">=",filterSummaryLessThan:"<",filterSummaryLessThanOrEqual:"<=",filterSummaryInRange:"between",yesterday:"Yesterday",today:"Today",tomorrow:"Tomorrow",last7Days:"Last 7 Days",lastWeek:"Last Week",thisWeek:"This Week",nextWeek:"Next Week",last30Days:"Last 30 Days",lastMonth:"Last Month",thisMonth:"This Month",nextMonth:"Next Month",last90Days:"Last 90 Days",lastQuarter:"Last Quarter",thisQuarter:"This Quarter",nextQuarter:"Next Quarter",lastYear:"Last Year",thisYear:"This Year",yearToDate:"Year To Date",nextYear:"Next Year",last6Months:"Last 6 Months",last12Months:"Last 12 Months",last24Months:"Last 24 Months",filterSummaryInRangeValues:e=>`(${e[0]}, ${e[1]})`,filterSummaryTextQuote:e=>`"${e[0]}"`,minDateValidation:e=>`Date must be after ${e[0]}`,maxDateValidation:e=>`Date must be before ${e[0]}`,strictMinValueValidation:e=>`Must be greater than ${e[0]}`,strictMaxValueValidation:e=>`Must be less than ${e[0]}`};function Rr(e,t,i){return mt(e,Fr,t,i)}function Pr(e,t){const{debounceMs:i}=e;return Mr(e)?(null!=i&&gi(71),0):i??t}function Mr(e){return(e.buttons?.indexOf("apply")??-1)>=0}function Er(e,t,i,s){let o=Rr(e,i);if("function"==typeof t){o=t({filterOptionKey:s,filterOption:Rr(e,s),placeholder:o})}else"string"==typeof t&&(o=t);return o}var Ar=class extends Wo{constructor(e,t,i,s,o,r){super(),this.column=e,this.wrapper=t,this.eventParent=i,this.updateModel=s,this.isGlobalButtons=o,this.enableGlobalButtonCheck=r,this.hidePopup=null,this.applyActive=!1}postConstruct(){const{comp:e,params:t}=this.wrapper,i=t,s=i.useForm,o=s?"form":"div";this.setTemplate({tag:o,cls:"ag-filter-wrapper"}),s&&this.addManagedElementListeners(this.getGui(),{submit:e=>{e?.preventDefault()},keydown:this.handleKeyDown.bind(this)}),this.appendChild(e.getGui()),this.params=i,this.resetButtonsPanel(i),this.addManagedListeners(this.eventParent,{filterParamsChanged:({column:e,params:t})=>{e===this.column&&this.resetButtonsPanel(t,this.params)},filterStateChanged:({column:e,state:t})=>{e===this.column&&this.eButtons?.updateValidity(!1!==t.valid)},filterAction:({column:e,action:t,event:i})=>{e===this.column&&this.afterAction(t,i)},...this.enableGlobalButtonCheck?{filterGlobalButtons:({isGlobal:e})=>{if(e!==this.isGlobalButtons){this.isGlobalButtons=e;const t=this.params;this.resetButtonsPanel(t,t,!0)}}}:void 0})}afterGuiAttached(e){e&&(this.hidePopup=e.hidePopup)}resetButtonsPanel(e,t,i){const{buttons:s,readOnly:o}=t??{},{buttons:r,readOnly:n,useForm:a}=e;if(!i&&o===n&&w(s,r))return;const l=r&&r.length>0&&!e.readOnly&&!this.isGlobalButtons;let d=this.eButtons;if(l){const e=r.map(e=>({type:e,label:Rr(this,`${e}Filter`)}));if(this.applyActive=Mr(this.params),!d){d=this.createBean(new Sr),this.appendChild(d.getGui());const e=this.column,t=t=>({event:i})=>{this.updateModel(e,t,{fromButtons:!0}),this.afterAction(t,i)};d?.addManagedListeners(d,{apply:t("apply"),clear:t("clear"),reset:t("reset"),cancel:t("cancel")}),this.eButtons=d}d.updateButtons(e,a)}else this.applyActive=!1,d&&(De(d.getGui()),this.eButtons=this.destroyBean(d))}close(e){const t=this.hidePopup;if(!t)return;const i=e,s=i?.key;let o;s!==To.ENTER&&s!==To.SPACE||(o={keyboardEvent:i}),t(o),this.hidePopup=null}afterAction(e,t){const{params:i,applyActive:s}=this,o=i?.closeOnApply;switch(e){case"apply":t?.preventDefault(),o&&s&&this.close(t);break;case"reset":o&&s&&this.close();break;case"cancel":o&&this.close(t)}}handleKeyDown(e){!e.defaultPrevented&&e.key===To.ENTER&&this.applyActive&&(this.updateModel(this.column,"apply",{fromButtons:!0}),this.afterAction("apply",e))}destroy(){this.hidePopup=null,this.eButtons=this.destroyBean(this.eButtons)}},Tr={tag:"div",cls:"ag-filter"},Dr=class extends Wo{constructor(e,t,i){super(Tr),this.column=e,this.source=t,this.enableGlobalButtonCheck=i,this.wrapper=null}postConstruct(){this.beans.colFilter?.activeFilterComps.add(this),this.createFilter(!0),this.addManagedEventListeners({filterDestroyed:this.onFilterDestroyed.bind(this)})}hasFilter(){return null!=this.wrapper}getFilter(){return this.wrapper?.then(e=>e.comp)??null}afterInit(){return this.wrapper?.then(()=>{})??ko.resolve()}afterGuiAttached(e){this.afterGuiAttachedParams=e,this.wrapper?.then(t=>{this.comp?.afterGuiAttached(e),t?.comp?.afterGuiAttached?.(e)})}afterGuiDetached(){this.wrapper?.then(e=>{e?.comp?.afterGuiDetached?.()})}createFilter(e){const{column:t,source:i,beans:{colFilter:s}}=this,o=s.getFilterUiForDisplay(t)??null;this.wrapper=o,o?.then(o=>{if(!o)return;const{isHandler:r,comp:n}=o;let a;if(r){const e=!!this.enableGlobalButtonCheck,i=this.createBean(new Ar(t,o,s,s.updateModel.bind(s),e&&s.isGlobalButtons,e));this.comp=i,a=i.getGui()}else this.registerCSS(":where(.ag-menu:not(.ag-tabs) .ag-filter)>:not(.ag-filter-wrapper){min-width:180px}"),a=n.getGui(),f(a)||gi(69,{guiFromFilter:a});this.appendChild(a),e?this.eventSvc.dispatchEvent({type:"filterOpened",column:t,source:i,eGui:this.getGui()}):n.afterGuiAttached?.(this.afterGuiAttachedParams)})}onFilterDestroyed(e){const{source:t,column:i}=e;"api"!==t&&"paramsUpdated"!==t||i.getId()!==this.column.getId()||!this.beans.colModel.getColDefCol(this.column)||(Te(this.getGui()),this.comp=this.destroyBean(this.comp),this.createFilter())}destroy(){this.beans.colFilter?.activeFilterComps.delete(this),this.eventSvc.dispatchEvent({type:"filterClosed",column:this.column}),this.wrapper=null,this.comp=this.destroyBean(this.comp),this.afterGuiAttachedParams=void 0,super.destroy()}};function Ir(e){return!!e.operator}var kr,Lr,Or,Gr,Nr,Br,Vr,_r="ag-resizer-wrapper",Hr=(e,t)=>({tag:"div",ref:`${e}Resizer`,cls:`ag-resizer ag-resizer-${t}`}),zr={tag:"div",cls:_r,children:[Hr("eTopLeft","topLeft"),Hr("eTop","top"),Hr("eTopRight","topRight"),Hr("eRight","right"),Hr("eBottomRight","bottomRight"),Hr("eBottom","bottom"),Hr("eBottomLeft","bottomLeft"),Hr("eLeft","left")]},Wr=class extends vt{constructor(e,t){super(),this.element=e,this.dragStartPosition={x:0,y:0},this.position={x:0,y:0},this.lastSize={width:-1,height:-1},this.positioned=!1,this.resizersAdded=!1,this.resizeListeners=[],this.boundaryEl=null,this.isResizing=!1,this.isMoving=!1,this.resizable={},this.movable=!1,this.currentResizer=null,this.config={popup:!1,...t}}wireBeans(e){this.popupSvc=e.popupSvc,this.dragSvc=e.dragSvc}center(e){const{clientHeight:t,clientWidth:i}=this.offsetParent,s=i/2-this.getWidth()/2,o=t/2-this.getHeight()/2;this.offsetElement(s,o,e)}initialisePosition(e){if(this.positioned)return;const{centered:t,forcePopupParentAsOffsetParent:i,minWidth:s,width:o,minHeight:r,height:n,x:a,y:l}=this.config;this.offsetParent||this.setOffsetParent();let d=0,c=0;const u=ke(this.element);if(u){const e=this.findBoundaryElement(),t=window.getComputedStyle(e);if(null!=t.minWidth){const i=e.offsetWidth-this.element.offsetWidth;c=Number.parseInt(t.minWidth,10)-i}if(null!=t.minHeight){const i=e.offsetHeight-this.element.offsetHeight;d=Number.parseInt(t.minHeight,10)-i}}if(this.minHeight=r||d,this.minWidth=s||c,o&&this.setWidth(o),n&&this.setHeight(n),o&&n||this.refreshSize(),t)this.center(e);else if(a||l)this.offsetElement(a,l,e);else if(u&&i){let t=this.boundaryEl,i=!0;if(t||(t=this.findBoundaryElement(),i=!1),t){const s=Number.parseFloat(t.style.top),o=Number.parseFloat(t.style.left);i?this.offsetElement(Number.isNaN(o)?0:o,Number.isNaN(s)?0:s,e):this.setPosition(o,s)}}this.positioned=!!this.offsetParent}isPositioned(){return this.positioned}getPosition(){return this.position}setMovable(e,t){if(!this.config.popup||e===this.movable)return;this.movable=e;const i=this.moveElementDragListener||{eElement:t,onDragStart:this.onMoveStart.bind(this),onDragging:this.onMove.bind(this),onDragStop:this.onMoveEnd.bind(this)};e?(this.dragSvc?.addDragSource(i),this.moveElementDragListener=i):(this.dragSvc?.removeDragSource(i),this.moveElementDragListener=void 0)}setResizable(e){if(this.clearResizeListeners(),e?this.addResizers():this.removeResizers(),"boolean"==typeof e){if(!1===e)return;e={topLeft:e,top:e,topRight:e,right:e,bottomRight:e,bottom:e,bottomLeft:e,left:e}}for(const t of Object.keys(e)){const i=!!e[t],s=this.getResizerElement(t),o={dragStartPixels:0,eElement:s,onDragStart:e=>this.onResizeStart(e,t),onDragging:this.onResize.bind(this),onDragStop:e=>this.onResizeEnd(e,t)};(i||!this.isAlive()&&!i)&&(i?(this.dragSvc?.addDragSource(o),this.resizeListeners.push(o),s.style.pointerEvents="all"):s.style.pointerEvents="none",this.resizable[t]=i)}}removeSizeFromEl(){this.element.style.removeProperty("height"),this.element.style.removeProperty("width"),this.element.style.removeProperty("flex")}restoreLastSize(){this.element.style.flex="0 0 auto";const{height:e,width:t}=this.lastSize;-1!==t&&(this.element.style.width=`${t}px`),-1!==e&&(this.element.style.height=`${e}px`)}getHeight(){return this.element.offsetHeight}setHeight(e){const{popup:t}=this.config,i=this.element;let s=!1;if("string"==typeof e&&e.includes("%"))We(i,e),e=Re(i),s=!0;else if(e=Math.max(this.minHeight,e),this.positioned){const t=this.getAvailableHeight();t&&e>t&&(e=t)}this.getHeight()!==e&&(s?(i.style.maxHeight="unset",i.style.minHeight="unset"):t?We(i,e):(i.style.height=`${e}px`,i.style.flex="0 0 auto",this.lastSize.height="number"==typeof e?e:Number.parseFloat(e)))}getAvailableHeight(){const{popup:e,forcePopupParentAsOffsetParent:t}=this.config;this.positioned||this.initialisePosition();const{clientHeight:i}=this.offsetParent;if(!i)return null;const s=this.element.getBoundingClientRect(),o=this.offsetParent.getBoundingClientRect(),r=e?this.position.y:s.top,n=e?0:o.top;let a=0;if(t){const e=this.element.parentElement;if(e){const{bottom:t}=e.getBoundingClientRect();a=t-s.bottom}}return i+n-r-a}getWidth(){return this.element.offsetWidth}setWidth(e){const t=this.element,{popup:i}=this.config;let s=!1;if("string"==typeof e&&e.includes("%"))ze(t,e),e=Pe(t),s=!0;else if(this.positioned){e=Math.max(this.minWidth,e);const{clientWidth:t}=this.offsetParent,s=i?this.position.x:this.element.getBoundingClientRect().left;t&&e+s>t&&(e=t-s)}this.getWidth()!==e&&(s?(t.style.maxWidth="unset",t.style.minWidth="unset"):this.config.popup?ze(t,e):(t.style.width=`${e}px`,t.style.flex=" unset",this.lastSize.width="number"==typeof e?e:Number.parseFloat(e)))}offsetElement(e=0,t=0,i){const{forcePopupParentAsOffsetParent:s}=this.config,o=s?this.boundaryEl:this.element;o&&(this.popupSvc?.positionPopup({ePopup:o,keepWithinBounds:!0,skipObserver:this.movable||this.isResizable(),updatePosition:()=>({x:e,y:t}),postProcessCallback:i}),this.setPosition(Number.parseFloat(o.style.left),Number.parseFloat(o.style.top)))}constrainSizeToAvailableHeight(e){if(!this.config.forcePopupParentAsOffsetParent)return;const t=()=>{const e=this.getAvailableHeight();this.element.style.setProperty("max-height",`${e}px`)};e&&this.popupSvc?(this.resizeObserverSubscriber?.(),this.resizeObserverSubscriber=qe(this.beans,this.popupSvc?.getPopupParent(),t)):(this.element.style.removeProperty("max-height"),this.resizeObserverSubscriber&&(this.resizeObserverSubscriber(),this.resizeObserverSubscriber=void 0))}setPosition(e,t){this.position.x=e,this.position.y=t}updateDragStartPosition(e,t){this.dragStartPosition={x:e,y:t}}calculateMouseMovement(e){const{e:t,isLeft:i,isTop:s,anywhereWithin:o,topBuffer:r}=e,n=t.clientX-this.dragStartPosition.x,a=t.clientY-this.dragStartPosition.y;return{movementX:this.shouldSkipX(t,!!i,!!o,n)?0:n,movementY:this.shouldSkipY(t,!!s,r,a)?0:a}}shouldSkipX(e,t,i,s){const o=this.element.getBoundingClientRect(),r=this.offsetParent.getBoundingClientRect(),n=this.boundaryEl.getBoundingClientRect(),a=this.config.popup?this.position.x:o.left;let l=a<=0&&r.left>=e.clientX||r.right<=e.clientX&&r.right<=n.right;return!!l||(l=t?s<0&&e.clientX>a+r.left||s>0&&e.clientXn.right||s>0&&e.clientXn.right||s>0&&e.clientX=e.clientY||r.bottom<=e.clientY&&r.bottom<=n.bottom;return!!l||(l=t?s<0&&e.clientY>a+r.top+i||s>0&&e.clientYn.bottom||s>0&&e.clientY({element:this.element.querySelector(`[data-ref=${e}Resizer]`)});this.resizerMap={topLeft:e("eTopLeft"),top:e("eTop"),topRight:e("eTopRight"),right:e("eRight"),bottomRight:e("eBottomRight"),bottom:e("eBottom"),bottomLeft:e("eBottomLeft"),left:e("eLeft")}}addResizers(){if(this.resizersAdded)return;const e=this.element;e&&(e.appendChild(Je(zr)),this.createResizeMap(),this.resizersAdded=!0)}removeResizers(){this.resizerMap=void 0;const e=this.element.querySelector(`.${_r}`);e?.remove(),this.resizersAdded=!1}getResizerElement(e){return this.resizerMap[e].element}onResizeStart(e,t){this.boundaryEl=this.findBoundaryElement(),this.positioned||this.initialisePosition(),this.currentResizer={isTop:!!t.match(/top/i),isRight:!!t.match(/right/i),isBottom:!!t.match(/bottom/i),isLeft:!!t.match(/left/i)},this.element.classList.add("ag-resizing"),this.resizerMap[t].element.classList.add("ag-active");const{popup:i,forcePopupParentAsOffsetParent:s}=this.config;i||s||this.applySizeToSiblings(this.currentResizer.isBottom||this.currentResizer.isTop),this.isResizing=!0,this.updateDragStartPosition(e.clientX,e.clientY)}getSiblings(){const e=this.element.parentElement;return e?Array.prototype.slice.call(e.children).filter(e=>!e.classList.contains("ag-hidden")):null}getMinSizeOfSiblings(){const e=this.getSiblings()||[];let t=0,i=0;for(const s of e){const e=!!s.style.flex&&"0 0 auto"!==s.style.flex;if(s===this.element)continue;let o=this.minHeight||0,r=this.minWidth||0;if(e){const e=window.getComputedStyle(s);e.minHeight&&(o=Number.parseInt(e.minHeight,10)),e.minWidth&&(r=Number.parseInt(e.minWidth,10))}else o=s.offsetHeight,r=s.offsetWidth;t+=o,i+=r}return{height:t,width:i}}applySizeToSiblings(e){let t=null;const i=this.getSiblings();if(i){for(let s=0;se)}onResize(e){if(!this.isResizing||!this.currentResizer)return;const{popup:t,forcePopupParentAsOffsetParent:i}=this.config,{isTop:s,isRight:o,isBottom:r,isLeft:n}=this.currentResizer,a=o||n,l=r||s,{movementX:d,movementY:c}=this.calculateMouseMovement({e:e,isLeft:n,isTop:s}),u=this.position.x,h=this.position.y;let g=0,p=0;if(a&&d){const e=n?-1:1,t=this.getWidth(),i=t+d*e;let s=!1;n&&(g=t-i,(u+g<=0||i<=this.minWidth)&&(s=!0,g=0)),s||this.setWidth(i)}if(l&&c){const e=s?-1:1,t=this.getHeight(),i=t+c*e;let o=!1;s?(p=t-i,(h+p<=0||i<=this.minHeight)&&(o=!0,p=0)):!this.config.popup&&!this.config.forcePopupParentAsOffsetParent&&tthis.element.parentElement.offsetHeight&&(o=!0),o||this.setHeight(i)}this.updateDragStartPosition(e.clientX,e.clientY),((t||i)&&g||p)&&this.offsetElement(u+g,h+p)}onResizeEnd(e,t){this.isResizing=!1,this.currentResizer=null,this.boundaryEl=null,this.element.classList.remove("ag-resizing"),this.resizerMap[t].element.classList.remove("ag-active"),this.dispatchLocalEvent({type:"resize"})}refreshSize(){const e=this.element;this.config.popup&&(this.config.width||this.setWidth(e.offsetWidth),this.config.height||this.setHeight(e.offsetHeight))}onMoveStart(e){this.boundaryEl=this.findBoundaryElement(),this.positioned||this.initialisePosition(),this.isMoving=!0,this.element.classList.add("ag-moving"),this.updateDragStartPosition(e.clientX,e.clientY)}onMove(e){if(!this.isMoving)return;const{x:t,y:i}=this.position;let s;this.config.calculateTopBuffer&&(s=this.config.calculateTopBuffer());const{movementX:o,movementY:r}=this.calculateMouseMovement({e:e,isTop:!0,anywhereWithin:!0,topBuffer:s});this.offsetElement(t+o,i+r),this.updateDragStartPosition(e.clientX,e.clientY)}onMoveEnd(){this.isMoving=!1,this.boundaryEl=null,this.element.classList.remove("ag-moving")}setOffsetParent(){this.config.forcePopupParentAsOffsetParent&&this.popupSvc?this.offsetParent=this.popupSvc.getPopupParent():this.offsetParent=this.element.offsetParent}findBoundaryElement(){let e=this.element;for(;e;){if("static"!==window.getComputedStyle(e).position)return e;e=e.parentElement}return this.element}clearResizeListeners(){for(;this.resizeListeners.length;){const e=this.resizeListeners.pop();this.dragSvc?.removeDragSource(e)}}destroy(){super.destroy(),this.moveElementDragListener&&this.dragSvc?.removeDragSource(this.moveElementDragListener),this.constrainSizeToAvailableHeight(!1),this.clearResizeListeners(),this.removeResizers()}},Ur=class extends Wr{};function jr(){return void 0===kr&&(kr=/^((?!chrome|android).)*safari/i.test(navigator.userAgent)),kr}function Kr(){return void 0===Lr&&(Lr=/(firefox)/i.test(navigator.userAgent)),Lr}function $r(){return void 0===Or&&(Or=/(Mac|iPhone|iPod|iPad)/i.test(navigator.platform)),Or}function qr(){return void 0===Gr&&(Gr=/iPad|iPhone|iPod/.test(navigator.platform)||"MacIntel"===navigator.platform&&navigator.maxTouchPoints>1),Gr}function Yr(e){if(!e)return null;const t=e.tabIndex,i=e.getAttribute("tabIndex");return-1!==t||null!==i&&(""!==i||Kr())?t.toString():null}function Xr(){return null==Br&&Zr(),Br}function Zr(){const e=document.body,t=document.createElement("div");t.style.width=t.style.height="100px",t.style.opacity="0",t.style.overflow="scroll",t.style.msOverflowStyle="scrollbar",t.style.position="absolute",e.appendChild(t);let i=t.offsetWidth-t.clientWidth;0===i&&0===t.clientWidth&&(i=null),t.parentNode&&t.remove(),null!=i&&(Br=i,Nr=0===i)}function Qr(){return null==Nr&&Zr(),Nr}var Jr=!1,en=0;function tn(e){const t=Jr,i="keydown"===e.type;i&&(e.ctrlKey||e.metaKey||e.altKey)||t!==i&&(Jr=i)}function sn(e){const t=T(e);var i;return i=t,en>0||(i.addEventListener("keydown",tn),i.addEventListener("mousedown",tn)),en++,()=>{en--,function(e){en>0||(e.removeEventListener("keydown",tn),e.removeEventListener("mousedown",tn))}(t)}}function on(){return Jr}function rn(e,t,i=!1){const s=me;let o=fe;t&&(o+=", "+t),i&&(o+=', [tabindex="-1"]');const r=Array.prototype.slice.apply(e.querySelectorAll(s)).filter(e=>ke(e)),n=Array.prototype.slice.apply(e.querySelectorAll(o));if(!n.length)return r;return a=n,r.filter(e=>-1===a.indexOf(e));var a}function nn(e,t=!1,i=!1,s=!1){const o=rn(e,s?".ag-tab-guard":null,i),r=t?l(o):o[0];return!!r&&(r.focus({preventScroll:!0}),!0)}function an(e,t,i,s){const o=rn(t,i?':not([tabindex="-1"])':null),r=A(e);let n;n=i?o.findIndex(e=>e.contains(r)):o.indexOf(r);const a=n+(s?-1:1);return a<0||a>=o.length?null:o[a]}function ln(e,t=5){let i=0;for(;e&&null===Yr(e)&&++i<=t;)e=e.parentElement;return null===Yr(e)?null:e}var dn="ag-focus-managed",cn=class extends vt{constructor(e,t={isStopPropagation:()=>!1,stopPropagation:()=>{}},i={}){super(),this.eFocusable=e,this.stopPropagationCallbacks=t,this.callbacks=i,this.callbacks={shouldStopEventPropagation:()=>!1,onTabKeyDown:e=>{if(e.defaultPrevented)return;const t=an(this.beans,this.eFocusable,!1,e.shiftKey);t&&(t.focus(),e.preventDefault())},...i}}postConstruct(){const{eFocusable:e,callbacks:{onFocusIn:t,onFocusOut:i}}=this;e.classList.add(dn),this.addKeyDownListeners(e),t&&this.addManagedElementListeners(e,{focusin:t}),i&&this.addManagedElementListeners(e,{focusout:i})}addKeyDownListeners(e){this.addManagedElementListeners(e,{keydown:e=>{if(e.defaultPrevented||this.stopPropagationCallbacks.isStopPropagation(e))return;const{callbacks:t}=this;t.shouldStopEventPropagation(e)?this.stopPropagationCallbacks.stopPropagation(e):e.key===To.TAB?t.onTabKeyDown(e):t.handleKeyDown&&t.handleKeyDown(e)}})}},un="__ag_Grid_Stop_Propagation";function hn(e){e[un]=!0}function gn(e){return!0===e[un]}var pn={isStopPropagation:gn,stopPropagation:hn},mn=class extends cn{constructor(e,t){super(e,pn,t)}},fn=class extends Wo{constructor(e,t){super(),this.filterNameKey=e,this.cssIdentifier=t,this.applyActive=!1,this.debouncePending=!1,this.defaultDebounceMs=0}postConstruct(){const e={tag:"div",cls:`ag-filter-body-wrapper ag-${this.cssIdentifier}-body-wrapper`,children:[this.createBodyTemplate()]};this.setTemplate(e,this.getAgComponents()),this.createManagedBean(new mn(this.getFocusableElement(),{handleKeyDown:this.handleKeyDown.bind(this)})),this.positionableFeature=this.createBean(new Ur(this.getPositionableElement(),{forcePopupParentAsOffsetParent:!0}))}handleKeyDown(e){}init(e){const t=e;this.setParams(t),this.setModelIntoUi(t.state.model,!0).then(()=>this.updateUiVisibility())}areStatesEqual(e,t){return e===t}refresh(e){const t=e,i=this.params;this.params=t;const{source:s,state:o,additionalEventAttributes:r}=t;"colDef"===s&&this.updateParams(t,i);const n=this.state;this.state=o;const a=r?.fromAction;return(a&&"apply"!==a||o.model!==n.model||!this.areStatesEqual(o.state,n.state))&&this.setModelIntoUi(o.model),!0}setParams(e){this.params=e,this.state=e.state,this.commonUpdateParams(e)}updateParams(e,t){this.commonUpdateParams(e,t)}commonUpdateParams(e,t){this.applyActive=Mr(e),this.setupApplyDebounced()}doesFilterPass(e){gi(283);const{getHandler:t,model:i,column:s}=this.params;return t().doesFilterPass({...e,model:i,handlerParams:this.beans.colFilter.getHandlerParams(s)})}getFilterTitle(){return this.translate(this.filterNameKey)}isFilterActive(){return gi(284),null!=this.params.model}setupApplyDebounced(){const e=Pr(this.params,this.defaultDebounceMs),t=Rt(this,this.checkApplyDebounce.bind(this),e);this.applyDebounced=()=>{this.debouncePending=!0,t()}}checkApplyDebounce(){this.debouncePending&&(this.debouncePending=!1,this.doApplyModel())}getModel(){return gi(285),this.params.model}setModel(e){gi(286);const{beans:t,params:i}=this;return t.colFilter.setModelForColumnLegacy(i.column,e)}applyModel(e="api"){return this.doApplyModel()}canApply(e){return!0}doApplyModel(e){const{params:t,state:{valid:i=!0,model:s}}=this;if(!i)return!1;const o=!this.areModelsEqual(t.model,s);return o&&t.onAction("apply",e),o}onNewRowsLoaded(){}onUiChanged(e,t=!1){this.updateUiVisibility();const i=this.getModelFromUi(),s={model:i,state:this.getState(),valid:this.canApply(i)};this.state=s;const{params:o,gos:r,eventSvc:n,applyActive:a}=this;o.onStateChange(s),o.onUiChange(this.getUiChangeEventParams()),r.get("enableFilterHandlers")||n.dispatchEvent({type:"filterModified",column:o.column,filterInstance:this}),s.valid&&(e??(e=a?void 0:"debounce"),"immediately"===e?this.doApplyModel({afterFloatingFilter:t,afterDataChange:!1}):"debounce"===e&&this.applyDebounced())}getState(){}getUiChangeEventParams(){}afterGuiAttached(e){this.lastContainerType=e?.container,this.refreshFilterResizer(e?.container)}refreshFilterResizer(e){const{positionableFeature:t,gos:i}=this;if(!t)return;const s="floatingFilter"===e||"columnFilter"===e;s?(t.restoreLastSize(),t.setResizable(i.get("enableRtl")?{bottom:!0,bottomLeft:!0,left:!0}:{bottom:!0,bottomRight:!0,right:!0})):(t.removeSizeFromEl(),t.setResizable(!1)),t.constrainSizeToAvailableHeight(s)}afterGuiDetached(){this.checkApplyDebounce(),this.positionableFeature?.constrainSizeToAvailableHeight(!1)}destroy(){this.positionableFeature=this.destroyBean(this.positionableFeature),super.destroy()}translate(e,t){return Rr(this,e,t)}getPositionableElement(){return this.getGui()}areModelsEqual(e,t){return e===t||null==e&&null==t||null!=e&&null!=t&&this.areNonNullModelsEqual(e,t)}},Cn=["aggregation","filter","sort","pivot","columnVisibility","columnSizing","rowGroup"];function vn(e){const{rowIndex:t,rowPinned:i,column:s}=e;return`${t}.${null==i?"null":i}.${s.getId()}`}function wn(e,t){const i=e.column===t.column,s=e.rowPinned===t.rowPinned,o=e.rowIndex===t.rowIndex;return i&&s&&o}function bn(e,t){switch(e.rowPinned){case"top":if("top"!==t.rowPinned)return!0;break;case"bottom":if("bottom"!==t.rowPinned)return!1;break;default:if(f(t.rowPinned))return"top"!==t.rowPinned}return e.rowIndexe.rowNode.rowIndex===t.rowIndex),l=a?r:n,d=(i?-1:1)*(a?-1:1);let c;for(let e=0;e{if(!t.defaultPrevented&&t.key===To.TAB){const s=t.shiftKey;an(e,i,!1,s)||Ln(e,s)&&t.preventDefault()}}})}function Dn(e,t){return e.ctrlsSvc.get("gridCtrl").focusInnerElement(t)}function In(e){return e.gos.get("suppressHeaderFocus")||!!e.overlays?.exclusive}function kn(e){return e.gos.get("suppressCellFocus")||!!e.overlays?.exclusive}function Ln(e,t,i=!1){const s=e.ctrlsSvc.get("gridCtrl");return!(i||!s.focusNextInnerContainer(t))||((i||!t&&!s.isDetailGrid())&&s.forceFocusOutOfContainer(t),!1)}function On(e,t){const i=e.focusSvc,s=i.getFocusedCell();if(s&&t&&wn(s,t)){const{rowIndex:s,rowPinned:o,column:r}=t;D(e)&&i.setFocusedCell({rowIndex:s,column:r,rowPinned:o,forceBrowserFocus:!0,preventScrollOnBrowserFocus:!on()})}}function Gn(e){return e.cols?e.cols.treeDepth+1:-1}function Nn(e){return e.ctrlsSvc.getHeaderRowContainerCtrl()?.getRowCount()??0}function Bn(e){const t=[],i=e.ctrlsSvc.getHeaderRowContainerCtrls();for(const s of i){if(!s)continue;const i=s.getGroupRowCount()||0;for(let o=0;or)&&(t[o]=s)}}}return t}function Vn(e,t){let i=e.colModel.isPivotMode()?function(e){return e.gos.get("pivotGroupHeaderHeight")??Wn(e)}(e):Wn(e);const s=t.getHeaderCellCtrls();for(const e of s){const{column:t}=e,s=t.getAutoHeaderHeight();null!=s&&s>i&&t.isAutoHeaderHeight()&&(i=s)}return i}function _n(e){let t=e.colModel.isPivotMode()?function(e){return e.gos.get("pivotHeaderHeight")??Hn(e)}(e):Hn(e);return e.colModel.forAllCols(e=>{const i=e.getAutoHeaderHeight();null!=i&&i>t&&e.isAutoHeaderHeight()&&(t=i)}),t}function Hn(e){return e.gos.get("headerHeight")??e.environment.getDefaultHeaderHeight()}function zn(e){return e.gos.get("floatingFiltersHeight")??Hn(e)}function Wn(e){return e.gos.get("groupHeaderHeight")??Hn(e)}var Un=class extends wt{setComp(e,t,i){this.comp=e,this.eGui=t;const{beans:s}=this,{headerNavigation:o,touchSvc:r,ctrlsSvc:n}=s;o&&this.createManagedBean(new mn(i,{onTabKeyDown:this.onTabKeyDown.bind(this),handleKeyDown:this.handleKeyDown.bind(this),onFocusOut:this.onFocusOut.bind(this)})),this.addManagedEventListeners({columnPivotModeChanged:this.onPivotModeChanged.bind(this,s),displayedColumnsChanged:this.onDisplayedColumnsChanged.bind(this,s)}),this.onPivotModeChanged(s),this.setupHeaderHeight();const a=this.onHeaderContextMenu.bind(this);this.addManagedElementListeners(this.eGui,{contextmenu:a}),r?.mockHeaderContextMenu(this,a),n.register("gridHeaderCtrl",this)}setupHeaderHeight(){const e=this.setHeaderHeight.bind(this);e(),this.addManagedPropertyListeners(["headerHeight","pivotHeaderHeight","groupHeaderHeight","pivotGroupHeaderHeight","floatingFiltersHeight"],e),this.addManagedEventListeners({headerRowsChanged:e,columnHeaderHeightChanged:e,columnGroupHeaderHeightChanged:()=>Ye(this.beans,()=>e()),stylesChanged:e,advancedFilterEnabledChanged:e})}setHeaderHeight(){const{beans:e}=this;let t=0;const i=Bn(e).reduce((e,t)=>e+t,0),s=_n(e);e.filterManager?.hasFloatingFilters()&&(t+=zn(e)),t+=i,t+=s;const o=t+e.environment.getHeaderRowBorderWidth();if(this.headerHeightWithBorder!==o){this.headerHeightWithBorder=o;const e=`${o}px`;this.comp.setHeightAndMinHeight(e)}this.headerHeight!==t&&(this.headerHeight=t,this.eventSvc.dispatchEvent({type:"headerHeightChanged"}))}onPivotModeChanged(e){const t=e.colModel.isPivotMode();this.comp.toggleCss("ag-pivot-on",t),this.comp.toggleCss("ag-pivot-off",!t)}onDisplayedColumnsChanged(e){const t=e.visibleCols.allCols.some(e=>e.isSpanHeaderHeight());this.comp.toggleCss("ag-header-allow-overflow",t)}onTabKeyDown(e){const t=this.gos.get("enableRtl"),i=e.shiftKey,s=i!==t?"LEFT":"RIGHT",{beans:o}=this,{headerNavigation:r,focusSvc:n}=o;(r.navigateHorizontally(s,!0,e)||!i&&n.focusOverlay(!1)||Ln(o,i,!0))&&e.preventDefault()}handleKeyDown(e){let t=null;const{headerNavigation:i}=this.beans;switch(e.key){case To.LEFT:t="LEFT";case To.RIGHT:f(t)||(t="RIGHT"),i.navigateHorizontally(t,!1,e)&&e.preventDefault();break;case To.UP:t="UP";case To.DOWN:f(t)||(t="DOWN"),i.navigateVertically(t,e)&&e.preventDefault();break;default:return}}onFocusOut(e){const{relatedTarget:t}=e,{eGui:i,beans:s}=this;!t&&i.contains(A(s))||i.contains(t)||(s.focusSvc.focusedHeader=null)}onHeaderContextMenu(e,t,i){const{menuSvc:s,ctrlsSvc:o}=this.beans;if(!e&&!i||!s?.isHeaderContextMenuEnabled())return;const{target:r}=e??t;r!==this.eGui&&r!==o.getHeaderRowContainerCtrl()?.eViewport||s.showHeaderContextMenu(void 0,e,i)}},jn=class extends Wo{constructor(e,t){super(e),this.ctrl=t}getCtrl(){return this.ctrl}},Kn={tag:"div",cls:"ag-header-cell",role:"columnheader",children:[{tag:"div",ref:"eResize",cls:"ag-header-cell-resize",role:"presentation"},{tag:"div",ref:"eHeaderCompWrapper",cls:"ag-header-cell-comp-wrapper",role:"presentation"}]},$n=class extends jn{constructor(e){super(Kn,e),this.eResize=Lo,this.eHeaderCompWrapper=Lo,this.headerCompVersion=0}postConstruct(){const e=this.getGui(),t=()=>{const e=this.ctrl.getSelectAllGui();e&&(this.eResize.insertAdjacentElement("afterend",e),this.addDestroyFunc(()=>e.remove()))},i={setWidth:t=>e.style.width=t,toggleCss:(e,t)=>this.toggleCss(e,t),setUserStyles:t=>Be(e,t),setAriaSort:t=>t?oe(e,t):re(e),setUserCompDetails:e=>this.setUserCompDetails(e),getUserCompInstance:()=>this.headerComp,refreshSelectAllGui:t,removeSelectAllGui:()=>this.ctrl.getSelectAllGui()?.remove()};this.ctrl.setComp(i,this.getGui(),this.eResize,this.eHeaderCompWrapper,void 0),t()}destroy(){this.destroyHeaderComp(),super.destroy()}destroyHeaderComp(){this.headerComp&&(this.headerCompGui?.remove(),this.headerComp=this.destroyBean(this.headerComp),this.headerCompGui=void 0)}setUserCompDetails(e){this.headerCompVersion++;const t=this.headerCompVersion;e.newAgStackInstance().then(e=>this.afterCompCreated(t,e))}afterCompCreated(e,t){e==this.headerCompVersion&&this.isAlive()?(this.destroyHeaderComp(),this.headerComp=t,this.headerCompGui=t.getGui(),this.eHeaderCompWrapper.appendChild(this.headerCompGui),this.ctrl.setDragSource(this.getGui())):this.destroyBean(t)}},qn={tag:"div",cls:"ag-header-group-cell",role:"columnheader",children:[{tag:"div",ref:"eHeaderCompWrapper",cls:"ag-header-cell-comp-wrapper",role:"presentation"},{tag:"div",ref:"eResize",cls:"ag-header-cell-resize",role:"presentation"}]},Yn=class extends jn{constructor(e){super(qn,e),this.eResize=Lo,this.eHeaderCompWrapper=Lo}postConstruct(){const e=this.getGui(),t={toggleCss:(e,t)=>this.toggleCss(e,t),setUserStyles:t=>Be(e,t),setHeaderWrapperHidden:e=>{e?this.eHeaderCompWrapper.style.setProperty("display","none"):this.eHeaderCompWrapper.style.removeProperty("display")},setHeaderWrapperMaxHeight:e=>{null!=e?this.eHeaderCompWrapper.style.setProperty("max-height",`${e}px`):this.eHeaderCompWrapper.style.removeProperty("max-height"),this.eHeaderCompWrapper.classList.toggle("ag-header-cell-comp-wrapper-limited-height",null!=e)},setResizableDisplayed:e=>ve(this.eResize,e),setWidth:t=>e.style.width=t,setAriaExpanded:t=>{return i="aria-expanded",null!=(s=t)?e.setAttribute(i,s):e.removeAttribute(i);var i,s},setUserCompDetails:e=>this.setUserCompDetails(e),getUserCompInstance:()=>this.headerGroupComp};this.ctrl.setComp(t,e,this.eResize,this.eHeaderCompWrapper,void 0)}setUserCompDetails(e){e.newAgStackInstance().then(e=>this.afterHeaderCompCreated(e))}afterHeaderCompCreated(e){const t=()=>this.destroyBean(e);if(!this.isAlive())return void t();const i=this.getGui(),s=e.getGui();this.eHeaderCompWrapper.appendChild(s),this.addDestroyFunc(t),this.headerGroupComp=e,this.ctrl.setDragSource(i)}},Xn={tag:"div",cls:"ag-header-cell ag-floating-filter",role:"gridcell",children:[{tag:"div",ref:"eFloatingFilterBody",role:"presentation"},{tag:"div",ref:"eButtonWrapper",cls:"ag-floating-filter-button ag-hidden",role:"presentation",children:[{tag:"button",ref:"eButtonShowMainFilter",cls:"ag-button ag-floating-filter-button-button",attrs:{type:"button",tabindex:"-1"}}]}]},Zn=class extends jn{constructor(e){super(Xn,e),this.eFloatingFilterBody=Lo,this.eButtonWrapper=Lo,this.eButtonShowMainFilter=Lo}postConstruct(){const e=this.getGui(),t={toggleCss:(e,t)=>this.toggleCss(e,t),setUserStyles:t=>Be(e,t),addOrRemoveBodyCssClass:(e,t)=>this.eFloatingFilterBody.classList.toggle(e,t),setButtonWrapperDisplayed:e=>ve(this.eButtonWrapper,e),setCompDetails:e=>this.setCompDetails(e),getFloatingFilterComp:()=>this.compPromise,setWidth:t=>e.style.width=t,setMenuIcon:e=>this.eButtonShowMainFilter.appendChild(e)};this.ctrl.setComp(t,e,this.eButtonShowMainFilter,this.eFloatingFilterBody,void 0)}setCompDetails(e){if(!e)return this.destroyFloatingFilterComp(),void(this.compPromise=null);this.compPromise=e.newAgStackInstance(),this.compPromise.then(e=>this.afterCompCreated(e))}destroy(){this.destroyFloatingFilterComp(),super.destroy()}destroyFloatingFilterComp(){this.floatingFilterComp?.getGui().remove(),this.floatingFilterComp=this.destroyBean(this.floatingFilterComp)}afterCompCreated(e){e&&(this.isAlive()?(this.destroyFloatingFilterComp(),this.floatingFilterComp=e,this.eFloatingFilterBody.appendChild(e.getGui()),e.afterGuiAttached?.()):this.destroyBean(e))}},Qn=class extends Wo{constructor(e){super({tag:"div",cls:e.headerRowClass,role:"row"}),this.ctrl=e,this.headerComps={}}postConstruct(){this.getGui().setAttribute("tabindex",String(this.gos.get("tabIndex"))),ee(this.getGui(),this.ctrl.getAriaRowIndex());const e={setHeight:e=>this.getGui().style.height=e,setTop:e=>this.getGui().style.top=e,setHeaderCtrls:(e,t)=>this.setHeaderCtrls(e,t),setWidth:e=>this.getGui().style.width=e,setRowIndex:e=>ee(this.getGui(),e)};this.ctrl.setComp(e,void 0)}destroy(){this.setHeaderCtrls([],!1),super.destroy()}setHeaderCtrls(e,t){if(!this.isAlive())return;const i=this.headerComps;this.headerComps={};for(const t of e){const e=t.instanceId;let s=i[e];delete i[e],null==s&&(s=this.createHeaderComp(t),this.getGui().appendChild(s.getGui())),this.headerComps[e]=s}if(Object.values(i).forEach(e=>{e.getGui().remove(),this.destroyBean(e)}),t){const e=Object.values(this.headerComps);e.sort((e,t)=>e.getCtrl().column.getLeft()-t.getCtrl().column.getLeft());const t=e.map(e=>e.getGui());Ge(this.getGui(),t)}}createHeaderComp(e){let t;switch(this.ctrl.type){case"group":t=new Yn(e);break;case"filter":t=new Zn(e);break;default:t=new $n(e)}return this.createBean(t),t.setParentComponent(this),t}},Jn=class extends wt{constructor(e,t=!1){super(),this.callback=e,this.addSpacer=t}postConstruct(){const e=this.setWidth.bind(this);this.addManagedPropertyListener("domLayout",e),this.addManagedEventListeners({columnContainerWidthChanged:e,displayedColumnsChanged:e,leftPinnedWidthChanged:e}),this.addSpacer&&this.addManagedEventListeners({rightPinnedWidthChanged:e,scrollVisibilityChanged:e,scrollbarWidthChanged:e}),this.setWidth()}setWidth(){const e=xi(this.gos,"print"),{visibleCols:t,scrollVisibleSvc:i}=this.beans,s=t.bodyWidth,o=t.getColsLeftWidth(),r=t.getDisplayedColumnsRightWidth();let n;if(e)n=s+o+r;else if(n=s,this.addSpacer){0===(this.gos.get("enableRtl")?o:r)&&i.verticalScrollShowing&&(n+=i.getScrollbarWidth())}this.callback(n)}},ea=class extends wt{};function ta(e,t,i){return i&&e.addDestroyFunc(()=>t.destroyBean(i)),i??e}var ia=class extends wt{constructor(e,t,i,s){super(),this.columnOrGroup=e,this.eCell=t,this.colsSpanning=s,this.columnOrGroup=e,this.ariaEl=t.querySelector("[role=columnheader]")||t,this.beans=i}setColsSpanning(e){this.colsSpanning=e,this.onLeftChanged()}getColumnOrGroup(){const{beans:e,colsSpanning:t}=this;return e.gos.get("enableRtl")&&t?l(t):this.columnOrGroup}postConstruct(){const e=this.onLeftChanged.bind(this);this.addManagedListeners(this.columnOrGroup,{leftChanged:e}),this.setLeftFirstTime(),this.addManagedEventListeners({displayedColumnsWidthChanged:e}),this.addManagedPropertyListener("domLayout",e)}setLeftFirstTime(){const{gos:e,colAnimation:t}=this.beans,i=e.get("suppressColumnMoveAnimation"),s=f(this.columnOrGroup.getOldLeft());t?.isActive()&&s&&!i?this.animateInLeft():this.onLeftChanged()}animateInLeft(){const e=this.getColumnOrGroup(),t=this.modifyLeftForPrintLayout(e,e.getOldLeft()),i=this.modifyLeftForPrintLayout(e,e.getLeft());this.setLeft(t),this.actualLeft=i,this.beans.colAnimation.executeNextVMTurn(()=>{this.actualLeft===i&&this.setLeft(i)})}onLeftChanged(){const e=this.getColumnOrGroup(),t=e.getLeft();this.actualLeft=this.modifyLeftForPrintLayout(e,t),this.setLeft(this.actualLeft)}modifyLeftForPrintLayout(e,t){const{gos:i,visibleCols:s}=this.beans;if(!xi(i,"print"))return t;if("left"===e.getPinned())return t;const o=s.getColsLeftWidth();if("right"===e.getPinned()){return o+s.bodyWidth+t}return o+t}setLeft(e){if(f(e)&&(this.eCell.style.left=`${e}px`),Eo(this.columnOrGroup)){const e=this.columnOrGroup.getLeafColumns();if(!e.length)return;e.length>1&&se(this.ariaEl,e.length)}}};function sa(e,t,i,s){return C(e)?[]:na(e.headerClass,e,t,i,s)}function oa(e,t,i,s){return C(e)?[]:na(e.toolPanelClass,e,t,i,s)}function ra(e,t,i){e.toggleCss("ag-column-first",i.isColAtEdge(t,"first")),e.toggleCss("ag-column-last",i.isColAtEdge(t,"last"))}function na(e,t,i,s,o){if(C(e))return[];let r;if("function"==typeof e){const n=function(e,t,i,s){return ms(t,{colDef:e,column:i,columnGroup:s})}(t,i,s,o);r=e(n)}else r=e;return"string"==typeof r?[r]:Array.isArray(r)?[...r]:[]}var aa=0,la="headerCtrl",da=class extends wt{constructor(e,t){super(),this.column=e,this.rowCtrl=t,this.resizeToggleTimeout=0,this.resizeMultiplier=1,this.resizeFeature=null,this.lastFocusEvent=null,this.dragSource=null,this.reAttemptToFocus=!1,this.instanceId=e.getUniqueId()+"-"+aa++}postConstruct(){const e=this.refreshTabIndex.bind(this);this.addManagedPropertyListeners(["suppressHeaderFocus"],e),this.addManagedEventListeners({overlayExclusiveChanged:e})}setComp(e,t,i,s,o){t.setAttribute("col-id",this.column.colIdSanitised),this.wireComp(e,t,i,s,o),this.reAttemptToFocus&&(this.reAttemptToFocus=!1,this.focus(this.lastFocusEvent??void 0))}shouldStopEventPropagation(e){const{headerRowIndex:t,column:i}=this.beans.focusSvc.focusedHeader,s=i.getDefinition(),o=s?.suppressHeaderKeyboardEvent;if(!f(o))return!1;return!!o(ms(this.gos,{colDef:s,column:i,headerRowIndex:t,event:e}))}getWrapperHasFocus(){return A(this.beans)===this.eGui}setGui(e,t){this.eGui=e,this.addDomData(t),t.addManagedListeners(this.beans.eventSvc,{displayedColumnsChanged:this.onDisplayedColumnsChanged.bind(this)}),t.addManagedElementListeners(this.eGui,{focus:this.onGuiFocus.bind(this)}),this.onDisplayedColumnsChanged(),this.refreshTabIndex()}refreshHeaderStyles(){const e=this.column.getDefinition();if(!e)return;const{headerStyle:t}=e;let i;if("function"==typeof t){i=t(this.getHeaderClassParams())}else i=t;i&&this.comp.setUserStyles(i)}onGuiFocus(){this.eventSvc.dispatchEvent({type:"headerFocused",column:this.column})}setupAutoHeight(e){const{wrapperElement:t,checkMeasuringCallback:i,compBean:s}=e,{beans:o}=this,r=e=>{if(!this.isAlive()||!s.isAlive())return;const{paddingTop:i,paddingBottom:n,borderBottomWidth:a,borderTopWidth:l}=Se(this.eGui),d=i+n+a+l,c=t.offsetHeight+d;if(e<5){const i=T(o);if(!i?.contains(t)||0==c)return void Ft(()=>r(e+1),"raf",o)}this.setColHeaderHeight(this.column,c)};let n,a=!1;const l=()=>{const e=this.column.isAutoHeaderHeight();e&&!a&&d(),!e&&a&&c()},d=()=>{a=!0,this.comp.toggleCss("ag-header-cell-auto-height",!0),r(0),n=qe(this.beans,t,()=>r(0))},c=()=>{a=!1,n&&n(),this.comp.toggleCss("ag-header-cell-auto-height",!1),n=void 0};l(),s.addDestroyFunc(()=>c()),s.addManagedListeners(this.column,{widthChanged:()=>a&&r(0)}),s.addManagedEventListeners({sortChanged:()=>{a&&window.setTimeout(()=>r(0))}}),i&&i(l)}onDisplayedColumnsChanged(){const{comp:e,column:t,beans:i,eGui:s}=this;e&&t&&s&&(ra(e,t,i.visibleCols),ie(s,i.visibleCols.getAriaColIndex(t)))}addResizeAndMoveKeyboardListeners(e){e.addManagedListeners(this.eGui,{keydown:this.onGuiKeyDown.bind(this),keyup:this.onGuiKeyUp.bind(this)})}refreshTabIndex(){const e=In(this.beans);this.eGui&&Ke(this.eGui,"tabindex",e?null:"-1")}onGuiKeyDown(e){const t=A(this.beans),i=e.key===To.LEFT||e.key===To.RIGHT;if(this.isResizing&&(e.preventDefault(),e.stopImmediatePropagation()),t!==this.eGui||!e.shiftKey&&!e.altKey&&!e.ctrlKey&&!e.metaKey)return;(this.isResizing||i)&&(e.preventDefault(),e.stopImmediatePropagation());if((e.ctrlKey||e.metaKey)&&Do(e)===To.C)return this.beans.clipboardSvc?.copyToClipboard();if(!i)return;const s=e.key===To.LEFT!==this.gos.get("enableRtl")?"left":"right";if(e.altKey){this.isResizing=!0,this.resizeMultiplier+=1;const t=this.getViewportAdjustedResizeDiff(e);this.resizeHeader(t,e.shiftKey),this.resizeFeature?.toggleColumnResizing(!0)}else this.moveHeader(s)}moveHeader(e){this.beans.colMoves?.moveHeader(e,this.eGui,this.column,this.rowCtrl.pinned,this)}getViewportAdjustedResizeDiff(e){const t=this.getResizeDiff(e),{pinnedCols:i}=this.beans;return i?i.getHeaderResizeDiff(t,this.column):t}getResizeDiff(e){const{gos:t,column:i}=this;let s=e.key===To.LEFT!==t.get("enableRtl");const o=i.getPinned(),r=t.get("enableRtl");return o&&r!==("right"===o)&&(s=!s),(s?-1:1)*this.resizeMultiplier}onGuiKeyUp(){this.isResizing&&(this.resizeToggleTimeout&&(window.clearTimeout(this.resizeToggleTimeout),this.resizeToggleTimeout=0),this.isResizing=!1,this.resizeMultiplier=1,this.resizeToggleTimeout=window.setTimeout(()=>{this.resizeFeature?.toggleColumnResizing(!1)},150))}handleKeyDown(e){const t=this.getWrapperHasFocus();switch(e.key){case To.PAGE_DOWN:case To.PAGE_UP:case To.PAGE_HOME:case To.PAGE_END:t&&e.preventDefault()}}addDomData(e){const t=la,{eGui:i,gos:s}=this;Di(s,i,t,this),e.addDestroyFunc(()=>Di(s,i,t,null))}focus(e){if(!this.isAlive())return!1;const{eGui:t}=this;return t?(this.lastFocusEvent=e||null,t.focus()):this.reAttemptToFocus=!0,!0}focusThis(){this.beans.focusSvc.focusedHeader={headerRowIndex:this.rowCtrl.rowIndex,column:this.column}}removeDragSource(){this.dragSource&&(this.beans.dragAndDrop?.removeDragSource(this.dragSource),this.dragSource=null)}handleContextMenuMouseEvent(e,t,i){const s=e??t,{menuSvc:o,gos:r}=this.beans;r.get("preventDefaultOnContextMenu")&&s.preventDefault(),o?.isHeaderContextMenuEnabled(i)&&o.showHeaderContextMenu(i,e,t),this.dispatchColumnMouseEvent("columnHeaderContextMenu",i)}dispatchColumnMouseEvent(e,t){this.eventSvc.dispatchEvent({type:e,column:t})}setColHeaderHeight(e,t){if(!e.setAutoHeaderHeight(t))return;const{eventSvc:i}=this;e.isColumn?i.dispatchEvent({type:"columnHeaderHeightChanged",column:e,columns:[e],source:"autosizeColumnHeaderHeight"}):i.dispatchEvent({type:"columnGroupHeaderHeightChanged",columnGroup:e,source:"autosizeColumnGroupHeaderHeight"})}clearComponent(){this.removeDragSource(),this.resizeFeature=null,this.comp=null,this.eGui=null}destroy(){super.destroy(),this.column=null,this.lastFocusEvent=null,this.rowCtrl=null}},ca=class extends da{constructor(){super(...arguments),this.refreshFunctions={},this.userHeaderClasses=new Set,this.ariaDescriptionProperties=new Map}wireComp(e,t,i,s,o){this.comp=e;const{rowCtrl:r,column:n,beans:a}=this,{colResize:l,context:d,colHover:c,rangeSvc:u}=a,h=ta(this,d,o);this.setGui(t,h),this.updateState(),this.setupWidth(h),this.setupMovingCss(h),this.setupMenuClass(h),this.setupSortableClass(h),this.setupWrapTextClass(),this.refreshSpanHeaderHeight(),this.setupAutoHeight({wrapperElement:s,checkMeasuringCallback:e=>this.setRefreshFunction("measuring",e),compBean:h}),this.addColumnHoverListener(h),this.setupFilterClass(h),this.setupStylesFromColDef(),this.setupClassesFromColDef(),this.setupTooltip(),this.addActiveHeaderMouseListeners(h),this.setupSelectAll(h),this.setupUserComp(),this.refreshAria(),l?this.resizeFeature=h.createManagedBean(l.createResizeFeature(r.pinned,n,i,e,this)):ve(i,!1),c?.createHoverFeature(h,[n],t),u?.createRangeHighlightFeature(h,n,e),h.createManagedBean(new ia(n,t,a)),h.createManagedBean(new mn(t,{shouldStopEventPropagation:e=>this.shouldStopEventPropagation(e),onTabKeyDown:()=>null,handleKeyDown:this.handleKeyDown.bind(this),onFocusIn:this.onFocusIn.bind(this),onFocusOut:this.onFocusOut.bind(this)})),this.addResizeAndMoveKeyboardListeners(h),h.addManagedPropertyListeners(["suppressMovableColumns","suppressMenuHide","suppressAggFuncInHeader","enableAdvancedFilter"],()=>this.refresh()),h.addManagedListeners(n,{colDefChanged:()=>this.refresh(),formulaRefChanged:()=>this.refresh(),headerHighlightChanged:this.onHeaderHighlightChanged.bind(this)});const g=()=>this.checkDisplayName();h.addManagedEventListeners({columnValueChanged:g,columnRowGroupChanged:g,columnPivotChanged:g,headerHeightChanged:this.onHeaderHeightChanged.bind(this)}),h.addDestroyFunc(()=>{this.refreshFunctions={},this.selectAllFeature=null,this.dragSourceElement=void 0,this.userCompDetails=null,this.userHeaderClasses.clear(),this.ariaDescriptionProperties.clear(),this.clearComponent()})}resizeHeader(e,t){this.beans.colResize?.resizeHeader(this.column,e,t)}getHeaderClassParams(){const{column:e,beans:t}=this,i=e.colDef;return ms(t.gos,{colDef:i,column:e,floatingFilter:!1})}setupUserComp(){const e=this.lookupUserCompDetails();e&&this.setCompDetails(e)}setCompDetails(e){this.userCompDetails=e,this.comp.setUserCompDetails(e)}lookupUserCompDetails(){const e=this.createParams(),t=this.column.getColDef();return function(e,t,i){return e.getCompDetails(t,Xo,"agColumnHeader",i)}(this.beans.userCompFactory,t,e)}createParams(){const{menuSvc:e,sortSvc:t,colFilter:i,gos:s}=this.beans;return ms(s,{column:this.column,displayName:this.displayName,enableSorting:this.column.isSortable(),enableMenu:this.menuEnabled,enableFilterButton:this.openFilterEnabled&&!!e?.isHeaderFilterButtonEnabled(this.column),enableFilterIcon:!!i&&(!this.openFilterEnabled||cs(this.gos)),showColumnMenu:(t,i)=>{e?.showColumnMenu({column:this.column,buttonElement:t,positionBy:"button",onClosedCallback:i})},showColumnMenuAfterMouseClick:(t,i)=>{e?.showColumnMenu({column:this.column,mouseEvent:t,positionBy:"mouse",onClosedCallback:i})},showFilter:t=>{e?.showFilterMenu({column:this.column,buttonElement:t,containerType:"columnFilter",positionBy:"button"})},progressSort:e=>{t?.progressSort(this.column,!!e,"uiColumnSorted")},setSort:(e,i)=>{t?.setSortForColumn(this.column,Rs(e),!!i,"uiColumnSorted")},eGridHeader:this.eGui,setTooltip:(e,t)=>{s.assertModuleRegistered("Tooltip",3),this.setupTooltip(e,t)}})}setupSelectAll(e){const{selectionSvc:t}=this.beans;t&&(this.selectAllFeature=e.createOptionalManagedBean(t.createSelectAllFeature(this.column)),this.selectAllFeature?.setComp(this),e.addManagedPropertyListener("rowSelection",()=>{const i=t.createSelectAllFeature(this.column);i&&!this.selectAllFeature?(this.selectAllFeature=e.createManagedBean(i),this.selectAllFeature?.setComp(this),this.comp.refreshSelectAllGui()):this.selectAllFeature&&!i&&(this.comp.removeSelectAllGui(),this.selectAllFeature=this.destroyBean(this.selectAllFeature))}))}getSelectAllGui(){return this.selectAllFeature?.getCheckboxGui()}handleKeyDown(e){super.handleKeyDown(e),e.key===To.SPACE?this.selectAllFeature?.onSpaceKeyDown(e):e.key===To.ENTER?this.onEnterKeyDown(e):e.key===To.DOWN&&e.altKey&&this.showMenuOnKeyPress(e,!1)}onEnterKeyDown(e){const{column:t,gos:i,sortable:s,beans:o}=this;let r=!1;(e.ctrlKey||e.metaKey)&&(r=this.showMenuOnKeyPress(e,!0)),r||(!e.altKey&&es(i)?o.rangeSvc?.handleColumnSelection(t,e):s&&o.sortSvc?.progressSort(t,e.shiftKey,"uiColumnSorted"))}showMenuOnKeyPress(e,t){const i=this.comp.getUserCompInstance();return!!ua(i)&&(!!i.onMenuKeyboardShortcut(t)&&(e.preventDefault(),!0))}onFocusIn(e){this.eGui.contains(e.relatedTarget)||(this.focusThis(),this.announceAriaDescription()),on()&&this.setActiveHeader(!0)}onFocusOut(e){this.eGui.contains(e.relatedTarget)||this.setActiveHeader(!1)}setupTooltip(e,t){this.tooltipFeature=this.beans.tooltipSvc?.setupHeaderTooltip(this.tooltipFeature,this,e,t)}setupStylesFromColDef(){this.setRefreshFunction("headerStyles",this.refreshHeaderStyles.bind(this)),this.refreshHeaderStyles()}setupClassesFromColDef(){const e=()=>{const e=sa(this.column.getColDef(),this.gos,this.column,null),t=this.userHeaderClasses;this.userHeaderClasses=new Set(e);for(const i of e)t.has(i)?t.delete(i):this.comp.toggleCss(i,!0);for(const e of t)this.comp.toggleCss(e,!1)};this.setRefreshFunction("headerClasses",e),e()}setDragSource(e){this.dragSourceElement=e,this.removeDragSource(),e&&this.draggable&&(this.dragSource=this.beans.colMoves?.setDragSourceForHeader(e,this.column,this.displayName)??null)}updateState(){const{menuSvc:e}=this.beans;this.menuEnabled=!!e?.isColumnMenuInHeaderEnabled(this.column),this.openFilterEnabled=!!e?.isFilterMenuInHeaderEnabled(this.column),this.sortable=this.column.isSortable(),this.displayName=this.calculateDisplayName(),this.draggable=this.workOutDraggable()}setRefreshFunction(e,t){this.refreshFunctions[e]=t}refresh(){this.updateState(),this.refreshHeaderComp(),this.refreshAria();for(const e of Object.values(this.refreshFunctions))e()}refreshHeaderComp(){const e=this.lookupUserCompDetails();if(!e)return;!!(null!=this.comp.getUserCompInstance()&&this.userCompDetails.componentClass==e.componentClass)&&this.attemptHeaderCompRefresh(e.params)?this.setDragSource(this.dragSourceElement):this.setCompDetails(e)}attemptHeaderCompRefresh(e){const t=this.comp.getUserCompInstance();if(!t)return!1;if(!t.refresh)return!1;return t.refresh(e)}calculateDisplayName(){return this.beans.colNames.getDisplayNameForColumn(this.column,"header",!0)}checkDisplayName(){this.displayName!==this.calculateDisplayName()&&this.refresh()}workOutDraggable(){const e=this.column.getColDef();return!!(!this.gos.get("suppressMovableColumns")&&!e.suppressMovable&&!e.lockPosition)||!!e.enableRowGroup||!!e.enablePivot}setupWidth(e){const t=()=>{const e=this.column.getActualWidth();this.comp.setWidth(`${e}px`)};e.addManagedListeners(this.column,{widthChanged:t}),t()}setupMovingCss(e){const t=()=>{this.comp.toggleCss("ag-header-cell-moving",this.column.isMoving())};e.addManagedListeners(this.column,{movingChanged:t}),t()}setupMenuClass(e){const t=()=>{this.comp?.toggleCss("ag-column-menu-visible",this.column.isMenuVisible())};e.addManagedListeners(this.column,{menuVisibleChanged:t}),t()}setupSortableClass(e){const t=()=>{this.comp.toggleCss("ag-header-cell-sortable",!!this.sortable)};t(),this.setRefreshFunction("updateSortable",t),e.addManagedEventListeners({sortChanged:this.refreshAriaSort.bind(this)})}setupFilterClass(e){const t=()=>{const e=this.column.isFilterActive();this.comp.toggleCss("ag-header-cell-filtered",e),this.refreshAria()};e.addManagedListeners(this.column,{filterActiveChanged:t}),t()}setupWrapTextClass(){const e=()=>{const e=!!this.column.getColDef().wrapHeaderText;this.comp.toggleCss("ag-header-cell-wrap-text",e)};e(),this.setRefreshFunction("wrapText",e)}onHeaderHighlightChanged(){const e=this.column.getHighlighted(),t=0===e,i=1===e;this.comp.toggleCss("ag-header-highlight-before",t),this.comp.toggleCss("ag-header-highlight-after",i)}onDisplayedColumnsChanged(){super.onDisplayedColumnsChanged(),this.isAlive()&&this.onHeaderHeightChanged()}onHeaderHeightChanged(){this.refreshSpanHeaderHeight()}refreshSpanHeaderHeight(){const{eGui:e,column:t,comp:i,beans:s}=this,o=Bn(this.beans),r=0===o.reduce((e,t)=>e+t,0);if(i.toggleCss("ag-header-parent-hidden",r),!t.isSpanHeaderHeight())return e.style.removeProperty("top"),e.style.removeProperty("height"),i.toggleCss("ag-header-span-height",!1),void i.toggleCss("ag-header-span-total",!1);const{numberOfParents:n,isSpanningTotal:a}=this.column.getColumnGroupPaddingInfo();i.toggleCss("ag-header-span-height",n>0);const l=_n(s);if(0===n)return i.toggleCss("ag-header-span-total",!1),e.style.setProperty("top","0px"),void e.style.setProperty("height",`${l}px`);i.toggleCss("ag-header-span-total",a);const d=(this.column.getFirstRealParent()?.getLevel()??-1)+1,c=o.length-d;let u=0;for(let e=0;e"filter"===e?-1:t.charCodeAt(0)-e.charCodeAt(0)).map(e=>i.get(e)).join(". ");e.ariaAnnounce?.announceValue(s,"columnHeader")}refreshAria(){this.refreshAriaSort(),this.refreshAriaMenu(),this.refreshAriaFilterButton(),this.refreshAriaFiltered(),this.refreshAriaCellSelection()}addColumnHoverListener(e){this.beans.colHover?.addHeaderColumnHoverListener(e,this.comp,this.column)}addActiveHeaderMouseListeners(e){const t=e=>this.handleMouseOverChange("mouseenter"===e.type);e.addManagedListeners(this.eGui,{mouseenter:t,mouseleave:t,click:()=>{this.setActiveHeader(!0),this.dispatchColumnMouseEvent("columnHeaderClicked",this.column)},contextmenu:e=>this.handleContextMenuMouseEvent(e,void 0,this.column)})}handleMouseOverChange(e){this.setActiveHeader(e),this.eventSvc.dispatchEvent({type:e?"columnHeaderMouseOver":"columnHeaderMouseLeave",column:this.column})}setActiveHeader(e){this.comp.toggleCss("ag-header-active",e)}getAnchorElementForMenu(e){const t=this.comp.getUserCompInstance();return ua(t)?t.getAnchorElementForMenu(e):this.eGui}destroy(){this.tooltipFeature=this.destroyBean(this.tooltipFeature),super.destroy()}};function ua(e){return"function"==typeof e?.getAnchorElementForMenu&&"function"==typeof e.onMenuKeyboardShortcut}var ha=0,ga=class extends wt{constructor(e,t,i){super(),this.rowIndex=e,this.pinned=t,this.type=i,this.instanceId=ha++,this.comp=null,this.allCtrls=[];let s="ag-header-row-column";"group"===i?s="ag-header-row-group":"filter"===i&&(s="ag-header-row-filter"),this.headerRowClass=`ag-header-row ${s}`}setRowIndex(e){this.rowIndex=e,this.comp?.setRowIndex(this.getAriaRowIndex()),this.onRowHeightChanged()}postConstruct(){this.isPrintLayout=xi(this.gos,"print"),this.isEnsureDomOrder=this.gos.get("ensureDomOrder")}areCellsRendered(){return!!this.comp&&this.allCtrls.every(e=>null!=e.eGui)}setComp(e,t,i=!0){this.comp=e,t=ta(this,this.beans.context,t),i&&(this.setRowIndex(this.rowIndex),this.onVirtualColumnsChanged()),this.setWidth(),this.addEventListeners(t)}getAriaRowIndex(){return this.rowIndex+1}addEventListeners(e){const t=this.onRowHeightChanged.bind(this),i=this.onDisplayedColumnsChanged.bind(this);e.addManagedEventListeners({columnResized:this.setWidth.bind(this),displayedColumnsChanged:i,virtualColumnsChanged:e=>this.onVirtualColumnsChanged(e.afterScroll),columnGroupHeaderHeightChanged:t,columnHeaderHeightChanged:t,stylesChanged:t,advancedFilterEnabledChanged:t}),e.addManagedPropertyListener("domLayout",i),e.addManagedPropertyListener("ensureDomOrder",e=>this.isEnsureDomOrder=e.currentValue),e.addManagedPropertyListeners(["headerHeight","pivotHeaderHeight","groupHeaderHeight","pivotGroupHeaderHeight","floatingFiltersHeight"],t)}onDisplayedColumnsChanged(){this.isPrintLayout=xi(this.gos,"print"),this.onVirtualColumnsChanged(),this.setWidth(),this.onRowHeightChanged()}setWidth(){if(!this.comp)return;const e=this.getWidthForRow();this.comp.setWidth(`${e}px`)}getWidthForRow(){const{visibleCols:e}=this.beans;if(this.isPrintLayout){return null!=this.pinned?0:e.getContainerWidth("right")+e.getContainerWidth("left")+e.getContainerWidth(null)}return e.getContainerWidth(this.pinned)}onRowHeightChanged(){if(!this.comp)return;const{topOffset:e,rowHeight:t}=this.getTopAndHeight();this.comp.setTop(e+"px"),this.comp.setHeight(t+"px")}getTopAndHeight(){let e=0;const t=Bn(this.beans);for(let i=0;i{const{focusSvc:t,visibleCols:i}=this.beans;if(!t.isHeaderWrapperFocused(e))return!1;return i.isVisible(e.column)};if(e)for(const[t,s]of e){i(s)?this.ctrlsById.set(t,s):this.destroyBean(s)}return this.allCtrls=Array.from(this.ctrlsById.values()),this.allCtrls}getHeaderCellCtrls(){return this.allCtrls}recycleAndCreateHeaderCtrls(e,t,i){if(e.isEmptyGroup())return;const s=e.getUniqueId();let o;i&&(o=i.get(s),i.delete(s));if(o&&o.column!=e&&(this.destroyBean(o),o=void 0),null==o)switch(this.type){case"filter":o=this.createBean(this.beans.registry.createDynamicBean("headerFilterCellCtrl",!0,e,this));break;case"group":o=this.createBean(this.beans.registry.createDynamicBean("headerGroupCellCtrl",!0,e,this));break;default:o=this.createBean(new ca(e,this))}t.set(s,o)}getColumnsInViewport(){if(!this.isPrintLayout)return this.getComponentsToRender();if(this.pinned)return[];const e=[];for(const t of["left",null,"right"])e.push(...this.getComponentsToRender(t));return e}getComponentsToRender(e=this.pinned){return"group"===this.type?this.beans.colViewport.getHeadersToRender(e,this.rowIndex):this.beans.colViewport.getColumnHeadersToRender(e)}focusHeader(e,t){const i=this.allCtrls.find(t=>t.column==e);if(!i)return!1;return i.focus(t)}destroy(){this.allCtrls=this.destroyBeans(this.allCtrls),this.ctrlsById=void 0,this.comp=null,super.destroy()}},pa=class extends wt{constructor(e){super(),this.pinned=e,this.hidden=!1,this.includeFloatingFilter=!1,this.groupsRowCtrls=[]}setComp(e,t){this.comp=e,this.eViewport=t;const{pinnedCols:i,ctrlsSvc:s,colModel:o,colMoves:r}=this.beans;this.setupCenterWidth(),i?.setupHeaderPinnedWidth(this),this.setupDragAndDrop(r,this.eViewport);const n=this.refresh.bind(this,!0);this.addManagedEventListeners({displayedColumnsChanged:n,advancedFilterEnabledChanged:n});const a=`${"string"==typeof this.pinned?this.pinned:"center"}Header`;s.register(a,this),o.ready&&this.refresh()}getAllCtrls(){const e=[...this.groupsRowCtrls];return this.columnsRowCtrl&&e.push(this.columnsRowCtrl),this.filtersRowCtrl&&e.push(this.filtersRowCtrl),e}refresh(e=!1){const{focusSvc:t,filterManager:i,visibleCols:s}=this.beans;let o=0;const r=t.getFocusHeaderToUseAfterRefresh(),n=this.getAllCtrls();(()=>{const t=s.headerGroupRowCount;o=t,e||(this.groupsRowCtrls=this.destroyBeans(this.groupsRowCtrls));const i=this.groupsRowCtrls.length;if(i!==t)if(i>t){for(let e=t;e{const t=o++;this.hidden?this.columnsRowCtrl=this.destroyBean(this.columnsRowCtrl):null!=this.columnsRowCtrl&&e?this.columnsRowCtrl.rowIndex!==t&&this.columnsRowCtrl.setRowIndex(t):(this.columnsRowCtrl=this.destroyBean(this.columnsRowCtrl),this.columnsRowCtrl=this.createBean(new ga(t,this.pinned,"column")))})(),(()=>{this.includeFloatingFilter=!!i?.hasFloatingFilters()&&!this.hidden;const t=()=>{this.filtersRowCtrl=this.destroyBean(this.filtersRowCtrl)};if(!this.includeFloatingFilter)return void t();e||t();const s=o++;if(this.filtersRowCtrl){this.filtersRowCtrl.rowIndex!==s&&this.filtersRowCtrl.setRowIndex(s)}else this.filtersRowCtrl=this.createBean(new ga(s,this.pinned,"filter"))})();const a=this.getAllCtrls();this.comp.setCtrls(a),this.restoreFocusOnHeader(t,r),n.length!==a.length&&this.beans.eventSvc.dispatchEvent({type:"headerRowsChanged"})}getHeaderCtrlForColumn(e){const t=t=>t?.getHeaderCellCtrls().find(t=>t.column===e);if(ys(e))return t(this.columnsRowCtrl);if(0!==this.groupsRowCtrls.length)for(let e=0;ethis.comp.setCenterWidth(`${e}px`),!0))}},ma=class extends Ho{isPopup(){return!0}setParentComponent(e){e.addCss("ag-has-popup"),super.setParentComponent(e)}destroy(){const e=this.parentComponent,t=e?.isAlive();t&&e.getGui().classList.remove("ag-has-popup"),super.destroy()}},fa=class extends ma{constructor(){super(...arguments),this.errorMessages=null}init(e){this.params=e,this.initialiseEditor(e),this.eEditor.onValueChange(()=>e.validate())}destroy(){this.eEditor.destroy(),this.errorMessages=null,super.destroy()}};var Ca=class extends Wo{constructor(){super()}},va={tag:"div",cls:"ag-overlay-exporting-center",children:[{tag:"span",ref:"eExportingIcon",cls:"ag-loading-icon"},{tag:"span",ref:"eExportingText",cls:"ag-exporting-text"}]},wa={tag:"div",cls:"ag-overlay-loading-center",children:[{tag:"span",ref:"eLoadingIcon",cls:"ag-loading-icon"},{tag:"span",ref:"eLoadingText",cls:"ag-loading-text"}]},ba={tag:"span",cls:"ag-overlay-no-matching-rows-center"},ya={tag:"span",cls:"ag-overlay-no-rows-center"},Sa=class extends Ho{constructor(e,t,i){super(t,i),this.labelSeparator="",this.labelAlignment="left",this.disabled=!1,this.label="",this.config=e||{},this.registerCSS(".ag-label{white-space:nowrap}:where(.ag-ltr) .ag-label{margin-right:var(--ag-spacing)}:where(.ag-rtl) .ag-label{margin-left:var(--ag-spacing)}:where(.ag-label-align-right) .ag-label{order:1}:where(.ag-ltr) :where(.ag-label-align-right) .ag-label{margin-left:var(--ag-spacing)}:where(.ag-rtl) :where(.ag-label-align-right) .ag-label{margin-right:var(--ag-spacing)}:where(.ag-label-align-right){.ag-label,.ag-wrapper{flex:none}}.ag-label-align-top{align-items:flex-start;flex-direction:column}:where(.ag-label-align-top){.ag-label,.ag-wrapper{align-self:stretch}}.ag-label-ellipsis{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}:where(.ag-label-align-top) .ag-label{margin-bottom:calc(var(--ag-spacing)*.5)}")}postConstruct(){this.addCss("ag-labeled"),this.eLabel.classList.add("ag-label");const{labelSeparator:e,label:t,labelWidth:i,labelAlignment:s,disabled:o,labelEllipsis:r}=this.config;null!=o&&this.setDisabled(o),null!=e&&this.setLabelSeparator(e),null!=t&&this.setLabel(t),null!=i&&this.setLabelWidth(i),null!=r&&this.setLabelEllipsis(r),this.setLabelAlignment(s||this.labelAlignment),this.refreshLabel()}refreshLabel(){const{label:e,eLabel:t}=this;Te(t),"string"==typeof e?t.innerText=e+this.labelSeparator:e&&t.appendChild(e),""===e?(ve(t,!1),B(t,"presentation")):(ve(t,!0),B(t,null))}setLabelSeparator(e){return this.labelSeparator===e||(this.labelSeparator=e,null!=this.label&&this.refreshLabel()),this}getLabelId(){const e=this.eLabel;return e.id=e.id||`ag-${this.getCompId()}-label`,e.id}getLabel(){return this.label}setLabel(e){return this.label===e||(this.label=e,this.refreshLabel()),this}setLabelAlignment(e){const t=this.getGui().classList;return t.toggle("ag-label-align-left","left"===e),t.toggle("ag-label-align-right","right"===e),t.toggle("ag-label-align-top","top"===e),this}setLabelEllipsis(e){return this.eLabel.classList.toggle("ag-label-ellipsis",e),this}setLabelWidth(e){return null==this.label||He(this.eLabel,e),this}setDisabled(e){e=!!e;const t=this.getGui();return be(t,e),t.classList.toggle("ag-disabled",e),this.disabled=e,this}isDisabled(){return!!this.disabled}},xa=class extends Sa{constructor(e,t,i,s){super(e,t,i),this.className=s}postConstruct(){super.postConstruct();const{width:e,value:t,onValueChange:i,ariaLabel:s}=this.config;null!=e&&this.setWidth(e),null!=t&&this.setValue(t),null!=i&&this.onValueChange(i),null!=s&&this.setAriaLabel(s),this.className&&this.addCss(this.className),this.refreshAriaLabelledBy()}setLabel(e){return super.setLabel(e),this.refreshAriaLabelledBy(),this}refreshAriaLabelledBy(){const e=this.getAriaElement(),t=this.getLabelId(),i=this.getLabel();null==i||""==i||null!==e.getAttribute("aria-label")?H(e,""):H(e,t??"")}setAriaLabel(e){return _(this.getAriaElement(),e),this.refreshAriaLabelledBy(),this}onValueChange(e){return this.addManagedListeners(this,{fieldValueChanged:()=>e(this.getValue())}),this}getWidth(){return this.getGui().clientWidth}setWidth(e){return ze(this.getGui(),e),this}getPreviousValue(){return this.previousValue}getValue(){return this.value}setValue(e,t){return this.value===e||(this.previousValue=this.value,this.value=e,t||this.dispatchLocalEvent({type:"fieldValueChanged"})),this}};var Fa=class extends xa{constructor(e,t,i="text",s="input"){super(e,e?.template??function(e){return{tag:"div",role:"presentation",children:[{tag:"div",ref:"eLabel",cls:"ag-input-field-label"},{tag:"div",ref:"eWrapper",cls:"ag-wrapper ag-input-wrapper",role:"presentation",children:[{tag:e,ref:"eInput",cls:"ag-input-field-input"}]}]}}(s),[],t),this.inputType=i,this.displayFieldTag=s,this.eLabel=Lo,this.eWrapper=Lo,this.eInput=Lo}postConstruct(){super.postConstruct(),this.setInputType(this.inputType);const{eLabel:e,eWrapper:t,eInput:i,className:s}=this;e.classList.add(`${s}-label`),t.classList.add(`${s}-input-wrapper`),i.classList.add(`${s}-input`),this.addCss("ag-input-field"),i.id=i.id||`ag-${this.getCompId()}-input`;const{inputName:o,inputWidth:r,inputPlaceholder:n,autoComplete:a,tabIndex:l}=this.config;null!=o&&this.setInputName(o),null!=r&&this.setInputWidth(r),null!=n&&this.setInputPlaceholder(n),null!=a&&this.setAutoComplete(a),this.addInputListeners(),this.activateTabIndex([i],l)}addInputListeners(){this.addManagedElementListeners(this.eInput,{input:e=>this.setValue(e.target.value)})}setInputType(e){"input"===this.displayFieldTag&&(this.inputType=e,Ke(this.eInput,"type",e))}getInputElement(){return this.eInput}getWrapperElement(){return this.eWrapper}setInputWidth(e){return He(this.eWrapper,e),this}setInputName(e){return this.getInputElement().setAttribute("name",e),this}getFocusableElement(){return this.eInput}setMaxLength(e){return this.eInput.maxLength=e,this}setInputPlaceholder(e){return Ke(this.eInput,"placeholder",e),this}setInputAriaLabel(e){return _(this.eInput,e),this.refreshAriaLabelledBy(),this}setDisabled(e){return be(this.eInput,e),super.setDisabled(e)}setAutoComplete(e){if(!0===e)Ke(this.eInput,"autocomplete",null);else{const t="string"==typeof e?e:"off";Ke(this.eInput,"autocomplete",t)}return this}},Ra=class extends Fa{constructor(e,t="ag-checkbox",i="checkbox"){super(e,t,i),this.labelAlignment="right",this.selected=!1,this.readOnly=!1,this.passive=!1}postConstruct(){super.postConstruct();const{readOnly:e,passive:t,name:i}=this.config;"boolean"==typeof e&&this.setReadOnly(e),"boolean"==typeof t&&this.setPassive(t),null!=i&&this.setName(i)}addInputListeners(){this.addManagedElementListeners(this.eInput,{click:this.onCheckboxClick.bind(this)}),this.addManagedElementListeners(this.eLabel,{click:this.toggle.bind(this)})}getNextValue(){return void 0===this.selected||!this.selected}setPassive(e){this.passive=e}isReadOnly(){return this.readOnly}setReadOnly(e){this.eWrapper.classList.toggle("ag-disabled",e),this.eInput.disabled=e,this.readOnly=e}setDisabled(e){return this.eWrapper.classList.toggle("ag-disabled",e),super.setDisabled(e)}toggle(){if(this.eInput.disabled)return;const e=this.isSelected(),t=this.getNextValue();this.passive?this.dispatchChange(t,e):this.setValue(t)}getValue(){return this.isSelected()}setValue(e,t){return this.refreshSelectedClass(e),this.setSelected(e,t),this}setName(e){return this.getInputElement().name=e,this}isSelected(){return this.selected}setSelected(e,t){if(this.isSelected()===e)return;this.previousValue=this.isSelected(),e=this.selected="boolean"==typeof e?e:void 0;const i=this.eInput;i.checked=e,i.indeterminate=void 0===e,t||this.dispatchChange(this.selected,this.previousValue)}dispatchChange(e,t,i){this.dispatchLocalEvent({type:"fieldValueChanged",selected:e,previousValue:t,event:i});const s=this.getInputElement();this.eventSvc.dispatchEvent({type:"checkboxChanged",id:s.id,name:s.name,selected:e,previousValue:t})}onCheckboxClick(e){if(this.passive||this.eInput.disabled)return;const t=this.isSelected(),i=this.selected=e.target.checked;this.refreshSelectedClass(i),this.dispatchChange(i,t,e)}refreshSelectedClass(e){const t=this.eWrapper.classList;t.toggle("ag-checked",!0===e),t.toggle("ag-indeterminate",null==e)}},Pa={selector:"AG-CHECKBOX",component:Ra},Ma={tag:"div",cls:"ag-cell-wrapper ag-checkbox-cell",role:"presentation",children:[{tag:"ag-checkbox",ref:"eCheckbox",role:"presentation"}]};function Ea(e){const t=e.rowModel;return"clientSide"===t.getType()?t:void 0}function Aa(e){const t=e.rowModel;return"infinite"===t.getType()?t:void 0}function Ta(e){const t=e.rowModel;return"serverSide"===t.getType()?t:void 0}function Da(e){const t=e.rowModel;return"viewport"===t.getType()?t:void 0}var Ia="row-group-",ka="t-",La="b-",Oa=0,Ga=class{constructor(e){this.id=void 0,this.destroyed=!1,this._groupData=void 0,this.master=!1,this.detail=void 0,this.rowIndex=null,this.field=null,this.rowGroupColumn=null,this.key=null,this.sourceRowIndex=-1,this._leafs=void 0,this.childrenMapped=null,this.treeParent=null,this.treeNodeFlags=0,this.displayed=!1,this.rowTop=null,this.oldRowTop=null,this.selectable=!0,this.__objectId=Oa++,this.alreadyRendered=!1,this.formulaRowIndex=null,this.hovered=!1,this.__selected=!1,this.beans=e}get groupData(){const e=this._groupData;return void 0!==e?e:this.footer?this.sibling?.groupData:this.beans.groupStage?.loadGroupData(this)??null}set groupData(e){this._groupData=e}get allLeafChildren(){const e=this._leafs;return void 0===e?this.beans.groupStage?.loadLeafs?.(this)??null:e}set allLeafChildren(e){this._leafs=e}setData(e){this.setDataCommon(e,!1)}updateData(e){this.setDataCommon(e,!0)}setDataCommon(e,t){const{valueCache:i,eventSvc:s}=this.beans,o=this.data;this.data=e,i?.onDataChanged(),this.updateDataOnDetailNode(),this.resetQuickFilterAggregateText();const r=this.createDataChangedEvent(e,o,t);if(this.__localEventService?.dispatchEvent(r),this.sibling){this.sibling.data=e;const i=this.sibling.createDataChangedEvent(e,o,t);this.sibling.__localEventService?.dispatchEvent(i)}s.dispatchEvent({type:"rowNodeDataChanged",node:this});const n=this.pinnedSibling;n&&(n.data=e,n.__localEventService?.dispatchEvent(n.createDataChangedEvent(e,o,t)),s.dispatchEvent({type:"rowNodeDataChanged",node:n}))}updateDataOnDetailNode(){const e=this.detailNode;e&&(e.data=this.data)}createDataChangedEvent(e,t,i){return{type:"dataChanged",node:this,oldData:t,newData:e,update:i}}getRowIndexString(){return null==this.rowIndex?(pi(13),null):"top"===this.rowPinned?ka+this.rowIndex:"bottom"===this.rowPinned?La+this.rowIndex:this.rowIndex.toString()}setDataAndId(e,t){const{selectionSvc:i}=this.beans,s=i?.createDaemonNode?.(this),o=this.data;this.data=e,this.updateDataOnDetailNode(),this.setId(t),i&&(i.updateRowSelectable(this),i.syncInRowNode(this,s));const r=this.createDataChangedEvent(e,o,!1);this.__localEventService?.dispatchEvent(r)}setId(e){const t=Hi(this.beans.gos);if(t)if(this.data){const e=this.parent?.getRoute()??[];this.id=t({data:this.data,parentKeys:e.length>0?e:void 0,level:this.level,rowPinned:this.rowPinned}),this.id.startsWith(Ia)&&pi(14,{groupPrefix:Ia})}else this.id=void 0;else this.id=e}setRowTop(e){if(this.oldRowTop=this.rowTop,this.rowTop===e)return;this.rowTop=e,this.dispatchRowEvent("topChanged");const t=null!==e;this.displayed!==t&&(this.displayed=t,this.dispatchRowEvent("displayedChanged"))}clearRowTopAndRowIndex(){this.oldRowTop=null,this.setRowTop(null),this.setRowIndex(null)}setHovered(e){this.hovered=e}isHovered(){return this.hovered}setRowHeight(e,t=!1){this.rowHeight=e,this.rowHeightEstimated=t,this.dispatchRowEvent("heightChanged")}setExpanded(e,t,i){this.beans.expansionSvc?.setExpanded(this,e,t,i)}setDataValue(e,t,i){const{colModel:s,valueSvc:o,gos:r,editSvc:n}=this.beans;if(null==e)return!1;let a=s.getCol(e)??s.getColDefCol(e);if(!a)return!1;if(!this.group){const e=a.getColDef();e.pivotValueColumn&&(a=e.pivotValueColumn)}const l=o.getValueForDisplay({column:a,node:this,from:"data"}).value;if(r.get("readOnlyEdit")){const{beans:{eventSvc:e},data:s,rowIndex:o,rowPinned:r}=this;return e.dispatchEvent({type:"cellEditRequest",event:null,rowIndex:o,rowPinned:r,column:a,colDef:a.colDef,data:s,node:this,oldValue:l,newValue:t,value:t,source:i}),!1}if(n&&!n.committing){const e=n.setDataValue({rowNode:this,column:a},t,i);if(null!=e)return e}const d=o.setValue(this,a,t,i);return this.dispatchCellChangedEvent(a,t,l),d&&this.pinnedSibling?.dispatchCellChangedEvent(a,t,l),d}getDataValue(e){const{colModel:t,valueSvc:i,formula:s}=this.beans;if(null==e)return;const o=t.getCol(e)??t.getColDefCol(e);if(!o)return;let r=i.getValue(o,this,"data");return s&&o.isAllowFormula()&&s.isFormula(r)&&(r=s.resolveValue(o,this)),r}updateHasChildren(){let e=this.group&&!this.footer||!!this.childrenAfterGroup?.length;const{rowChildrenSvc:t}=this.beans;t&&(e=t.getHasChildrenValue(this)),e!==this.__hasChildren&&(this.__hasChildren=!!e,this.dispatchRowEvent("hasChildrenChanged"))}hasChildren(){return null==this.__hasChildren&&this.updateHasChildren(),this.__hasChildren}dispatchCellChangedEvent(e,t,i){const s={type:"cellChanged",node:this,column:e,newValue:t,oldValue:i};this.__localEventService?.dispatchEvent(s)}resetQuickFilterAggregateText(){this.quickFilterAggregateText=null}isExpandable(){return this.beans.expansionSvc?.isExpandable(this)??!1}isSelected(){if(this.footer)return this.sibling.isSelected();const e=this.rowPinned&&this.pinnedSibling;return e?e.isSelected():this.__selected}depthFirstSearch(e){const t=this.childrenAfterGroup;if(t)for(let i=0,s=t.length;i{const i=new Ga(t);for(const t of Object.keys(e))Ba.has(t)||(i[t]=e[t]);return i.oldRowTop=null,i},_a=(e,t,i)=>{if(!i)return;let s=i.rowIndex;if(null==s)return;s+=t;const o=e.getRowCount();for(;s>=0&&s-1)return e.splice(t,1)?.[0]}(o);if(o.sort((e,i)=>t?.compareRowNodes(s,e,i)||(e.pinnedSibling?.rowIndex??0)-(i.pinnedSibling?.rowIndex??0)),!r)return;const n=Gi(i);"bottom"===n||"pinnedBottom"===n?this.order.push(r):this.order.unshift(r)}hide(e){const{all:t,visible:i}=this,s=i.size;return t.forEach(t=>e(t)?i.delete(t):i.add(t)),this.order=Array.from(i),this.sort(),s!=i.size}queue(e){this.queued.add(e)}unqueue(e){this.queued.delete(e)}forEachQueued(e){this.queued.forEach(e)}};function za(e){if(-1===e.level)return!0;const t=e.parent;return!!t?.childrenAfterSort?.some(t=>t==e)&&za(t)}function Wa(e,t){const{gos:i,rowModel:s,filterManager:o}=e;return Si(i)?!s.getRowNode(t.id):o?.isAnyFilterPresent()?!za(t):!!i.get("pivotMode")&&!t.group}function Ua(e){return!!e.pinnedSibling&&function(e){return!!e.footer&&-1===e.level}(e.pinnedSibling)}var ja=class extends wt{constructor(){super(...arguments),this.csrm=null}postConstruct(){const{gos:e,beans:t}=this;this.top=new Ha(t,"top"),this.bottom=new Ha(t,"bottom"),this.csrm=Ea(t)??null;const i=e=>Wa(t,e.pinnedSibling),s=()=>{const i=e.get("isRowPinned");i&&e.get("enableRowPinning")&&t.rowModel.forEachNode(e=>this.pinRow(e,i(e)),!0),this.refreshRowPositions(),this.dispatchRowPinnedEvents()};this.addManagedEventListeners({stylesChanged:this.onGridStylesChanges.bind(this),modelUpdated:({keepRenderedRows:e})=>{this.tryToEmptyQueues(),this.pinGrandTotalRow();let t=!1;this.forContainers(e=>{t||(t=e.hide(i))});const s=this.refreshRowPositions();(!e||s||t)&&this.dispatchRowPinnedEvents()},columnRowGroupChanged:()=>{this.forContainers(qa),this.refreshRowPositions()},rowNodeDataChanged:({node:t})=>{const i=e.get("isRowPinnable");(i?.(t)??!0)||this.pinRow(t,null)},firstDataRendered:s}),this.addManagedPropertyListener("pivotMode",()=>{this.forContainers(e=>e.hide(i)),this.dispatchRowPinnedEvents()}),this.addManagedPropertyListener("grandTotalRow",({currentValue:e})=>{this._grandTotalPinned="pinnedBottom"===e?"bottom":"pinnedTop"===e?"top":null}),this.addManagedPropertyListener("isRowPinned",s)}destroy(){this.reset(!1),super.destroy()}reset(e=!0){this.forContainers(e=>{const t=[];e.forEach(e=>t.push(e)),t.forEach(e=>this.pinRow(e,null)),e.clear()}),e&&this.dispatchRowPinnedEvents()}pinRow(e,t,i){if(null!=t&&e.destroyed)return;if(e.footer){const i=e.level;if(i>-1)return;if(-1===i)return this._grandTotalPinned=t,void this.csrm?.reMapRows()}const s=e.rowPinned??e.pinnedSibling?.rowPinned;if(null!=s&&null!=t&&t!=s){const s=e.rowPinned?e:e.pinnedSibling,o=e.rowPinned?e.pinnedSibling:e;return this.pinRow(s,null,i),void this.pinRow(o,t,i)}const o=i&&function(e,t,i){const{rowSpanSvc:s}=e,o=(i&&s?.isCellSpanning(i,t))??!1;if(i&&o)return s?.getCellSpan(i,t)?.spannedNodes}(this.beans,e,i);if(o)o.forEach(e=>this.pinRow(e,t));else if(null==t){const i=e.rowPinned?e:e.pinnedSibling,s=this.findPinnedRowNode(i);if(!s)return;s.delete(i);const o=i.pinnedSibling;$a(i),this.refreshRowPositions(t),this.dispatchRowPinnedEvents(o)}else{const i=Ka(this.beans,e,t),s=this.getContainer(t);s.add(i),Wa(this.beans,e)&&s.hide(e=>Wa(this.beans,e.pinnedSibling)),this.refreshRowPositions(t),this.dispatchRowPinnedEvents(e)}}isManual(){return!0}isEmpty(e){return 0===this.getContainer(e).size()}isRowsToRender(e){return!this.isEmpty(e)}ensureRowHeightsValid(){let e=!1,t=0;const i=i=>{if(i.rowHeightEstimated){const s=Mi(this.beans,i);i.setRowTop(t),i.setRowHeight(s.height),t+=s.height,e=!0}};return this.bottom.forEach(i),t=0,this.top.forEach(i),this.eventSvc.dispatchEvent({type:"pinnedHeightChanged"}),e}getPinnedTopTotalHeight(){return Ya(this.top)}getPinnedBottomTotalHeight(){return Ya(this.bottom)}getPinnedTopRowCount(){return this.top.size()}getPinnedBottomRowCount(){return this.bottom.size()}getPinnedTopRow(e){return this.top.getByIndex(e)}getPinnedBottomRow(e){return this.bottom.getByIndex(e)}getPinnedRowById(e,t){return this.getContainer(t).getById(e)}forEachPinnedRow(e,t){this.getContainer(e).forEach(t)}getPinnedState(){const e=e=>{const t=[];return this.forEachPinnedRow(e,e=>{const i=e.pinnedSibling?.id;null!=i&&t.push(i)}),t};return{top:e("top"),bottom:e("bottom")}}setPinnedState(e){this.forContainers((t,i)=>{for(const s of e[i]){const e=this.beans.rowModel.getRowNode(s);e?this.pinRow(e,i):t.queue(s)}})}getGrandTotalPinned(){return this._grandTotalPinned}setGrandTotalPinned(e){this._grandTotalPinned=e}tryToEmptyQueues(){this.forContainers((e,t)=>{const i=new Set;e.forEachQueued(e=>{const t=this.beans.rowModel.getRowNode(e);t&&i.add(t)});for(const s of i)e.unqueue(s.id),this.pinRow(s,t)})}pinGrandTotalRow(){const{csrm:e,beans:t,_grandTotalPinned:i}=this;if(!e)return;const s=e.rootNode?.sibling;if(!s)return;const o=s.pinnedSibling,r=o&&this.findPinnedRowNode(o);if(i){if(r&&r.floating!==i&&($a(o),r.delete(o)),!r||r.floating!==i){const e=Ka(t,s,i);this.getContainer(i).add(e)}}else{if(!r)return;$a(o),r.delete(o)}}onGridStylesChanges(e){e.rowHeightChanged&&this.forContainers(e=>e.forEach(e=>e.setRowHeight(e.rowHeight,!0)))}getContainer(e){return"top"===e?this.top:this.bottom}findPinnedRowNode(e){return this.top.has(e)?this.top:this.bottom.has(e)?this.bottom:void 0}refreshRowPositions(e){const t=e=>function(e,t){let i=0,s=!1;return t.forEach((t,o)=>{if(s||(s=t.rowTop!==i),t.setRowTop(i),t.rowHeightEstimated||null==t.rowHeight){const i=Mi(e,t).height;s||(s=t.rowHeight!==i),t.setRowHeight(i)}t.setRowIndex(o),i+=t.rowHeight}),s}(this.beans,e);if(e)return t(this.getContainer(e));let i=!1;return this.forContainers(e=>{const s=t(e);i||(i=s)}),i}forContainers(e){e(this.top,"top"),e(this.bottom,"bottom")}dispatchRowPinnedEvents(e){this.eventSvc.dispatchEvent({type:"pinnedRowsChanged"}),e?.dispatchRowEvent("rowPinned")}};function Ka(e,t,i){if(t.pinnedSibling)return t.pinnedSibling;const s=Va(t,e);s.setRowTop(null),s.setRowIndex(null),s.rowPinned=i;const o="top"===i?ka:La;return s.id=`${o}${i}-${t.id}`,s.pinnedSibling=t,t.pinnedSibling=s,s}function $a(e){if(!e.pinnedSibling)return;e.rowPinned=null,e._destroy(!1);const t=e.pinnedSibling;e.pinnedSibling=void 0,t&&(t.pinnedSibling=void 0,t.rowPinned=null)}function qa(e){const t=new Set;e.forEach(e=>{e.group&&t.add(e)}),t.forEach(t=>e.delete(t))}function Ya(e){const t=e.size();if(0===t)return 0;const i=e.getByIndex(t-1);return void 0===i?0:i.rowTop+i.rowHeight}var Xa=class extends wt{constructor(){super(...arguments),this.nextId=0,this.pinnedTopRows={cache:{},order:[]},this.pinnedBottomRows={cache:{},order:[]}}postConstruct(){const e=this.gos;this.setPinnedRowData(e.get("pinnedTopRowData"),"top"),this.setPinnedRowData(e.get("pinnedBottomRowData"),"bottom"),this.addManagedPropertyListener("pinnedTopRowData",e=>this.setPinnedRowData(e.currentValue,"top")),this.addManagedPropertyListener("pinnedBottomRowData",e=>this.setPinnedRowData(e.currentValue,"bottom")),this.addManagedEventListeners({stylesChanged:this.onGridStylesChanges.bind(this)})}reset(){}isEmpty(e){return 0===this.getCache(e).order.length}isRowsToRender(e){return!this.isEmpty(e)}isManual(){return!1}pinRow(e,t){}onGridStylesChanges(e){if(e.rowHeightChanged){const e=e=>{e.setRowHeight(e.rowHeight,!0)};el(this.pinnedBottomRows,e),el(this.pinnedTopRows,e)}}ensureRowHeightsValid(){let e=!1,t=0;const i=i=>{if(i.rowHeightEstimated){const s=Mi(this.beans,i);i.setRowTop(t),i.setRowHeight(s.height),t+=s.height,e=!0}};return el(this.pinnedBottomRows,i),t=0,el(this.pinnedTopRows,i),this.eventSvc.dispatchEvent({type:"pinnedHeightChanged"}),e}setPinnedRowData(e,t){this.updateNodesFromRowData(e,t),this.eventSvc.dispatchEvent({type:"pinnedRowDataChanged"})}updateNodesFromRowData(e,t){const i=this.getCache(t);if(void 0===e)return i.order.length=0,void(i.cache={});const s=Hi(this.gos),o="top"===t?ka:La,r=new Set(i.order),n=[],a=new Set;let l=0,d=-1;for(const c of e){const e=s?.({data:c,level:0,rowPinned:t})??o+this.nextId++;if(a.has(e)){gi(96,{id:e,data:c});continue}d++,a.add(e),n.push(e);const u=Qa(i,e);if(void 0!==u)u.data!==c&&u.updateData(c),l+=this.setRowTopAndRowIndex(u,l,d),r.delete(e);else{const s=new Ga(this.beans);s.id=e,s.data=c,s.rowPinned=t,l+=this.setRowTopAndRowIndex(s,l,d),i.cache[e]=s,i.order.push(e)}}for(const e of r)Qa(i,e)?.clearRowTopAndRowIndex(),delete i.cache[e];i.order=n}setRowTopAndRowIndex(e,t,i){return e.setRowTop(t),e.setRowHeight(Mi(this.beans,e).height),e.setRowIndex(i),e.rowHeight}getPinnedTopTotalHeight(){return Za(this.pinnedTopRows)}getPinnedBottomTotalHeight(){return Za(this.pinnedBottomRows)}getPinnedTopRowCount(){return tl(this.pinnedTopRows)}getPinnedBottomRowCount(){return tl(this.pinnedBottomRows)}getPinnedTopRow(e){return Ja(this.pinnedTopRows,e)}getPinnedBottomRow(e){return Ja(this.pinnedBottomRows,e)}getPinnedRowById(e,t){return Qa(this.getCache(t),e)}forEachPinnedRow(e,t){return el(this.getCache(e),t)}getCache(e){return"top"===e?this.pinnedTopRows:this.pinnedBottomRows}getPinnedState(){return{top:[],bottom:[]}}setPinnedState(){}getGrandTotalPinned(){}setGrandTotalPinned(){}};function Za(e){const t=tl(e);if(0===t)return 0;const i=Ja(e,t-1);return void 0===i?0:i.rowTop+i.rowHeight}function Qa(e,t){return e.cache[t]}function Ja(e,t){return Qa(e,e.order[t])}function el(e,t){e.order.forEach((i,s)=>{const o=Qa(e,i);o&&t(o,s)})}function tl(e){return e.order.length}var il,sl=class extends wt{constructor(){super(...arguments),this.beanName="pinnedRowModel"}postConstruct(){const{gos:e}=this,t=()=>{const t=e.get("enableRowPinning"),i=Gi(e),s=!!t||("pinnedBottom"===i||"pinnedTop"===i),o=s?this.inner instanceof Xa:this.inner instanceof ja;this.inner&&o&&this.destroyBean(this.inner),!o&&this.inner||(this.inner=this.createManagedBean(s?new ja:new Xa))};this.addManagedPropertyListeners(["enableRowPinning","grandTotalRow"],t),t()}reset(){return this.inner.reset()}isEmpty(e){return this.inner.isEmpty(e)}isManual(){return this.inner.isManual()}isRowsToRender(e){return this.inner.isRowsToRender(e)}pinRow(e,t,i){return this.inner.pinRow(e,t,i)}ensureRowHeightsValid(){return this.inner.ensureRowHeightsValid()}getPinnedRowById(e,t){return this.inner.getPinnedRowById(e,t)}getPinnedTopTotalHeight(){return this.inner.getPinnedTopTotalHeight()}getPinnedBottomTotalHeight(){return this.inner.getPinnedBottomTotalHeight()}getPinnedTopRowCount(){return this.inner.getPinnedTopRowCount()}getPinnedBottomRowCount(){return this.inner.getPinnedBottomRowCount()}getPinnedTopRow(e){return this.inner.getPinnedTopRow(e)}getPinnedBottomRow(e){return this.inner.getPinnedBottomRow(e)}forEachPinnedRow(e,t){return this.inner.forEachPinnedRow(e,t)}getPinnedState(){return this.inner.getPinnedState()}setPinnedState(e){return this.inner.setPinnedState(e)}setGrandTotalPinned(e){return this.inner.setGrandTotalPinned(e)}getGrandTotalPinned(){return this.inner.getGrandTotalPinned()}},ol=(e=>(e.Applied="Applied",e.StoreNotFound="StoreNotFound",e.StoreLoading="StoreLoading",e.StoreWaitingToLoad="StoreWaitingToLoad",e.StoreLoadingFailed="StoreLoadingFailed",e.StoreWrongType="StoreWrongType",e.Cancelled="Cancelled",e.StoreNotStarted="StoreNotStarted",e))(ol||{}),rl=class{constructor(e,t=!1){this.eElement=e,this.preventClick=t,this.startListener=null,this.handlers=[],this.eventSvc=void 0,this.touchStart=null,this.lastTapTime=null,this.longPressTimer=0,this.moved=!1}addEventListener(e,t){let i=this.eventSvc;if(!i){if(null===i)return;this.eventSvc=i=new y;const e=this.onTouchStart.bind(this);this.startListener=e,this.eElement.addEventListener("touchstart",e,{passive:!0})}i.addEventListener(e,t)}removeEventListener(e,t){this.eventSvc?.removeEventListener(e,t)}onTouchStart(e){if(this.touchStart||!(e=>{if(il){if(il.has(e))return!1}else il=new WeakSet;return il.add(e),!0})(e))return;const t=e.touches[0];this.touchStart=t;const i=this.handlers;if(!i.length){const e=this.eElement,t=e.ownerDocument,s=this.onTouchMove.bind(this),o=this.onTouchEnd.bind(this),r=this.onTouchCancel.bind(this),n={passive:!0},a={passive:!1};ct(i,[e,"touchmove",s,n],[t,"touchcancel",r,n],[t,"touchend",o,a],[t,"contextmenu",ht,a])}this.clearLongPress(),this.longPressTimer=window.setTimeout(()=>{this.longPressTimer=0,this.touchStart!==t||this.moved||(this.moved=!0,this.eventSvc?.dispatchEvent({type:"longTap",touchStart:t,touchEvent:e}))},550)}onTouchMove(e){const{moved:t,touchStart:i}=this;if(!t&&i){const t=at(i,e.touches);t&&!nt(t,i,4)&&(this.clearLongPress(),this.moved=!0)}}onTouchEnd(e){const t=this.touchStart;t&&at(t,e.changedTouches)&&(this.moved||(this.eventSvc?.dispatchEvent({type:"tap",touchStart:t}),this.checkDoubleTap(t)),this.preventClick&&ht(e),this.cancel())}onTouchCancel(e){const t=this.touchStart;t&&at(t,e.changedTouches)&&(this.lastTapTime=null,this.cancel())}checkDoubleTap(e){let t=Date.now();const i=this.lastTapTime;if(i){t-i>500&&(this.eventSvc?.dispatchEvent({type:"doubleTap",touchStart:e}),t=null)}this.lastTapTime=t}cancel(){this.clearLongPress(),ut(this.handlers),this.touchStart=null}clearLongPress(){window.clearTimeout(this.longPressTimer),this.longPressTimer=0,this.moved=!1}destroy(){const e=this.startListener;e&&(this.startListener=null,this.eElement.removeEventListener("touchstart",e)),this.cancel(),this.eElement=null,this.eventSvc=null}},nl=(e=>(e[e.VALUE=0]="VALUE",e[e.DIMENSION=1]="DIMENSION",e))(nl||{}),al=1,ll=class{constructor(e){this.beans={},this.createdBeans=[],this.destroyed=!1,this.instanceId=al++,e?.beanClasses&&(this.beanDestroyComparator=e.beanDestroyComparator,this.init(e))}init(e){this.id=e.id,this.beans.context=this,this.destroyCallback=e.destroyCallback;for(const t of Object.keys(e.providedBeanInstances))this.beans[t]=e.providedBeanInstances[t];for(const t of e.beanClasses){const e=new t;e.beanName?this.beans[e.beanName]=e:console.error(`Bean ${t.name} is missing beanName`),this.createdBeans.push(e)}for(const t of e.derivedBeans??[]){const{beanName:e,bean:i}=t(this);this.beans[e]=i,this.createdBeans.push(i)}e.beanInitComparator&&this.createdBeans.sort(e.beanInitComparator),this.initBeans(this.createdBeans)}getBeanInstances(){return Object.values(this.beans)}createBean(e,t){return this.initBeans([e],t),e}initBeans(e,t){const i=this.beans;for(const t of e)t.preWireBeans?.(i),t.wireBeans?.(i);for(const t of e)t.preConstruct?.();t&&e.forEach(t);for(const t of e)t.postConstruct?.()}getBeans(){return this.beans}getBean(e){return this.beans[e]}getId(){return this.id}destroy(){if(this.destroyed)return;this.destroyed=!0;const e=this.getBeanInstances();this.beanDestroyComparator&&e.sort(this.beanDestroyComparator),this.destroyBeans(e),this.beans={},this.createdBeans=[],this.destroyCallback?.()}destroyBean(e){e?.destroy?.()}destroyBeans(e){if(e)for(let t=0;t[e,t]));function ul(e,t){return((e.beanName?cl[e.beanName]:void 0)??Number.MAX_SAFE_INTEGER)-((t.beanName?cl[t.beanName]:void 0)??Number.MAX_SAFE_INTEGER)}function hl(e,t){return"gridDestroySvc"===e?.beanName?-1:"gridDestroySvc"===t?.beanName?1:0}var gl={tag:"div",cls:"ag-pinned-left-header",role:"rowgroup"},pl={tag:"div",cls:"ag-pinned-right-header",role:"rowgroup"},ml={tag:"div",cls:"ag-header-viewport",role:"rowgroup",attrs:{tabindex:"-1"},children:[{tag:"div",ref:"eCenterContainer",cls:"ag-header-container",role:"presentation"}]},fl=class extends Wo{constructor(e){super(),this.eCenterContainer=Lo,this.headerRowComps={},this.rowCompsList=[],this.pinned=e}postConstruct(){this.selectAndSetTemplate();const e={setDisplayed:e=>this.setDisplayed(e),setCtrls:e=>this.setCtrls(e),setCenterWidth:e=>this.eCenterContainer.style.width=e,setViewportScrollLeft:e=>this.getGui().scrollLeft=e,setPinnedContainerWidth:e=>{const t=this.getGui();t.style.width=e,t.style.maxWidth=e,t.style.minWidth=e}};this.createManagedBean(new pa(this.pinned)).setComp(e,this.getGui())}selectAndSetTemplate(){const e="left"==this.pinned,t="right"==this.pinned,i=e?gl:t?pl:ml;this.setTemplate(i),this.eRowContainer=this.eCenterContainer!==Lo?this.eCenterContainer:this.getGui()}destroy(){this.setCtrls([]),super.destroy()}destroyRowComp(e){this.destroyBean(e),e.getGui().remove()}setCtrls(e){const t=this.headerRowComps;let i;this.headerRowComps={},this.rowCompsList=[];const s=e=>{const t=e.getGui();t.parentElement!=this.eRowContainer&&this.eRowContainer.appendChild(t),i&&Oe(this.eRowContainer,t,i),i=t};for(const i of e){const e=i.instanceId,o=t[e];delete t[e];const r=o||this.createBean(new Qn(i));this.headerRowComps[e]=r,this.rowCompsList.push(r),s(r)}for(const e of Object.values(t))this.destroyRowComp(e)}},Cl={tag:"div",cls:"ag-header",role:"presentation"},vl={selector:"AG-HEADER-ROOT",component:class extends Wo{constructor(){super(Cl)}postConstruct(){const e={toggleCss:(e,t)=>this.toggleCss(e,t),setHeightAndMinHeight:e=>{this.getGui().style.height=e,this.getGui().style.minHeight=e}};this.createManagedBean(new Un).setComp(e,this.getGui(),this.getFocusableElement());const t=e=>{this.createManagedBean(e),this.appendChild(e)};t(new fl("left")),t(new fl(null)),t(new fl("right"))}}},wl={AUTO_HEIGHT:"ag-layout-auto-height",NORMAL:"ag-layout-normal",PRINT:"ag-layout-print"},bl=class extends wt{constructor(e){super(),this.view=e}postConstruct(){this.addManagedPropertyListener("domLayout",this.updateLayoutClasses.bind(this)),this.updateLayoutClasses()}updateLayoutClasses(){const e=this.gos.get("domLayout"),t={autoHeight:"autoHeight"===e,normal:"normal"===e,print:"print"===e},i=t.autoHeight?wl.AUTO_HEIGHT:t.print?wl.PRINT:wl.NORMAL;this.view.updateLayoutClasses(i,t)}},yl=class extends Wo{constructor(e,t){super(),this.direction=t,this.eViewport=Lo,this.eContainer=Lo,this.hideTimeout=0,this.setTemplate(e)}postConstruct(){this.addManagedEventListeners({scrollVisibilityChanged:this.onScrollVisibilityChanged.bind(this)}),this.onScrollVisibilityChanged(),this.toggleCss("ag-apple-scrollbar",$r()||qr())}destroy(){super.destroy(),window.clearTimeout(this.hideTimeout)}initialiseInvisibleScrollbar(){void 0===this.invisibleScrollbar&&(this.invisibleScrollbar=Qr(),this.invisibleScrollbar&&(this.hideAndShowInvisibleScrollAsNeeded(),this.addActiveListenerToggles()))}addActiveListenerToggles(){const e=this.getGui(),t=()=>this.toggleCss("ag-scrollbar-active",!0),i=()=>this.toggleCss("ag-scrollbar-active",!1);this.addManagedListeners(e,{mouseenter:t,mousedown:t,touchstart:t,mouseleave:i,touchend:i})}onScrollVisibilityChanged(){void 0===this.invisibleScrollbar&&this.initialiseInvisibleScrollbar(),Ye(this.beans,()=>this.setScrollVisible())}hideAndShowInvisibleScrollAsNeeded(){this.addManagedEventListeners({bodyScroll:e=>{e.direction===this.direction&&(this.hideTimeout&&(window.clearTimeout(this.hideTimeout),this.hideTimeout=0),this.toggleCss("ag-scrollbar-scrolling",!0))},bodyScrollEnd:()=>{this.hideTimeout=window.setTimeout(()=>{this.toggleCss("ag-scrollbar-scrolling",!1),this.hideTimeout=0},400)}})}attemptSettingScrollPosition(e){const t=this.eViewport;Mt(this,()=>ke(t),()=>this.setScrollPosition(e),100)}onScrollCallback(e){this.addManagedElementListeners(this.eViewport,{scroll:e})}},Sl={tag:"div",cls:"ag-body-horizontal-scroll",attrs:{"aria-hidden":"true"},children:[{tag:"div",ref:"eLeftSpacer",cls:"ag-horizontal-left-spacer"},{tag:"div",ref:"eViewport",cls:"ag-body-horizontal-scroll-viewport",children:[{tag:"div",ref:"eContainer",cls:"ag-body-horizontal-scroll-container"}]},{tag:"div",ref:"eRightSpacer",cls:"ag-horizontal-right-spacer"}]},xl=class extends yl{constructor(){super(Sl,"horizontal"),this.eLeftSpacer=Lo,this.eRightSpacer=Lo,this.setScrollVisibleDebounce=0}wireBeans(e){this.visibleCols=e.visibleCols,this.scrollVisibleSvc=e.scrollVisibleSvc}postConstruct(){super.postConstruct();const e=this.setFakeHScrollSpacerWidths.bind(this);this.addManagedEventListeners({displayedColumnsChanged:e,displayedColumnsWidthChanged:e,pinnedRowDataChanged:this.refreshCompBottom.bind(this)}),this.addManagedPropertyListener("domLayout",e),this.beans.ctrlsSvc.register("fakeHScrollComp",this),this.createManagedBean(new Jn(e=>this.eContainer.style.width=`${e}px`)),this.addManagedPropertyListeners(["suppressHorizontalScroll"],this.onScrollVisibilityChanged.bind(this))}destroy(){window.clearTimeout(this.setScrollVisibleDebounce),super.destroy()}initialiseInvisibleScrollbar(){void 0===this.invisibleScrollbar&&(this.enableRtl=this.gos.get("enableRtl"),super.initialiseInvisibleScrollbar(),this.invisibleScrollbar&&this.refreshCompBottom())}refreshCompBottom(){if(!this.invisibleScrollbar)return;const e=this.beans.pinnedRowModel?.getPinnedBottomTotalHeight()??0;this.getGui().style.bottom=`${e}px`}onScrollVisibilityChanged(){super.onScrollVisibilityChanged(),this.setFakeHScrollSpacerWidths()}setFakeHScrollSpacerWidths(){const e=this.scrollVisibleSvc.verticalScrollShowing;let t=this.visibleCols.getDisplayedColumnsRightWidth();const i=!this.enableRtl&&e,s=this.scrollVisibleSvc.getScrollbarWidth();i&&(t+=s),ze(this.eRightSpacer,t),this.eRightSpacer.classList.toggle("ag-scroller-corner",t<=s);let o=this.visibleCols.getColsLeftWidth();this.enableRtl&&e&&(o+=s),ze(this.eLeftSpacer,o),this.eLeftSpacer.classList.toggle("ag-scroller-corner",o<=s)}setScrollVisible(){const e=this.scrollVisibleSvc.horizontalScrollShowing,t=this.invisibleScrollbar,i=this.gos.get("suppressHorizontalScroll"),s=e&&this.scrollVisibleSvc.getScrollbarWidth()||0,o=i?0:0===s&&t?16:s,r=()=>{this.setScrollVisibleDebounce=0,this.toggleCss("ag-scrollbar-invisible",t),We(this.getGui(),o),We(this.eViewport,o),We(this.eContainer,o),o||this.eContainer.style.setProperty("min-height","1px"),this.setVisible(e,{skipAriaHidden:!0})};window.clearTimeout(this.setScrollVisibleDebounce),e?this.setScrollVisibleDebounce=window.setTimeout(r,100):r()}getScrollPosition(){return Ee(this.eViewport,this.enableRtl)}setScrollPosition(e){ke(this.eViewport)||this.attemptSettingScrollPosition(e),Ae(this.eViewport,e,this.enableRtl)}},Fl={selector:"AG-FAKE-HORIZONTAL-SCROLL",component:xl},Rl=class extends wt{constructor(e,t){super(),this.eContainer=e,this.eViewport=t}postConstruct(){this.addManagedEventListeners({rowContainerHeightChanged:this.onHeightChanged.bind(this,this.beans.rowContainerHeight)})}onHeightChanged(e){const t=e.uiContainerHeight,i=null!=t?`${t}px`:"";this.eContainer.style.height=i,this.eViewport&&(this.eViewport.style.height=i)}},Pl={tag:"div",cls:"ag-body-vertical-scroll",attrs:{"aria-hidden":"true"},children:[{tag:"div",ref:"eViewport",cls:"ag-body-vertical-scroll-viewport",children:[{tag:"div",ref:"eContainer",cls:"ag-body-vertical-scroll-container"}]}]},Ml=class extends yl{constructor(){super(Pl,"vertical")}postConstruct(){super.postConstruct(),this.createManagedBean(new Rl(this.eContainer));const{ctrlsSvc:e}=this.beans;e.register("fakeVScrollComp",this),this.addManagedEventListeners({rowContainerHeightChanged:this.onRowContainerHeightChanged.bind(this,e)})}setScrollVisible(){const{scrollVisibleSvc:e}=this.beans,t=e.verticalScrollShowing,i=this.invisibleScrollbar,s=t&&e.getScrollbarWidth()||0,o=0===s&&i?16:s;this.toggleCss("ag-scrollbar-invisible",i),ze(this.getGui(),o),ze(this.eViewport,o),ze(this.eContainer,o),this.setDisplayed(t,{skipAriaHidden:!0})}onRowContainerHeightChanged(e){const t=e.getGridBodyCtrl().eBodyViewport,i=this.getScrollPosition(),s=t.scrollTop;i!=s&&this.setScrollPosition(s,!0)}getScrollPosition(){return this.eViewport.scrollTop}setScrollPosition(e,t){t||ke(this.eViewport)||this.attemptSettingScrollPosition(e),this.eViewport.scrollTop=e}},El={selector:"AG-FAKE-VERTICAL-SCROLL",component:Ml},Al=(e=>(e[e.Vertical=0]="Vertical",e[e.Horizontal=1]="Horizontal",e))(Al||{}),Tl="Viewport",Dl="fakeVScrollComp",Il=["fakeHScrollComp","centerHeader","topCenter","bottomCenter","stickyTopCenter","stickyBottomCenter"],kl=class extends wt{constructor(e){super(),this.clearRetryListenerFncs=[],this.lastScrollSource=[null,null],this.scrollLeft=-1,this.nextScrollTop=-1,this.scrollTop=-1,this.lastOffsetHeight=-1,this.lastScrollTop=-1,this.lastIsHorizontalScrollShowing=!1,this.scrollTimer=0,this.isScrollActive=!1,this.isVerticalPositionInvalidated=!0,this.isHorizontalPositionInvalidated=!0,this.eBodyViewport=e,this.resetLastHScrollDebounced=Rt(this,()=>this.lastScrollSource[1]=null,150),this.resetLastVScrollDebounced=Rt(this,()=>this.lastScrollSource[0]=null,150)}wireBeans(e){this.ctrlsSvc=e.ctrlsSvc,this.animationFrameSvc=e.animationFrameSvc,this.visibleCols=e.visibleCols}destroy(){super.destroy(),this.clearRetryListenerFncs=[],window.clearTimeout(this.scrollTimer)}postConstruct(){this.enableRtl=this.gos.get("enableRtl");const e=this.invalidateVerticalScroll.bind(this),t=this.invalidateHorizontalScroll.bind(this);this.addManagedEventListeners({displayedColumnsWidthChanged:this.onDisplayedColumnsWidthChanged.bind(this),bodyHeightChanged:e,scrollGapChanged:t}),this.addManagedElementListeners(this.eBodyViewport,{scroll:e}),this.ctrlsSvc.whenReady(this,e=>{this.centerRowsCtrl=e.center,this.onDisplayedColumnsWidthChanged(),this.addScrollListener()})}invalidateHorizontalScroll(){this.isHorizontalPositionInvalidated=!0}invalidateVerticalScroll(){this.isVerticalPositionInvalidated=!0}addScrollListener(){this.addHorizontalScrollListeners(),this.addVerticalScrollListeners()}addHorizontalScrollListeners(){this.addManagedElementListeners(this.centerRowsCtrl.eViewport,{scroll:this.onHScroll.bind(this,Tl)});for(const e of Il){const t=this.ctrlsSvc.get(e);this.registerScrollPartner(t,this.onHScroll.bind(this,e))}}addVerticalScrollListeners(){const e=this.ctrlsSvc.get("fakeVScrollComp"),t=this.gos.get("debounceVerticalScrollbar"),i=t?Rt(this,this.onVScroll.bind(this,Tl),100):this.onVScroll.bind(this,Tl),s=t?Rt(this,this.onVScroll.bind(this,Dl),100):this.onVScroll.bind(this,Dl);this.addManagedElementListeners(this.eBodyViewport,{scroll:i}),this.registerScrollPartner(e,s)}registerScrollPartner(e,t){e.onScrollCallback(t)}onDisplayedColumnsWidthChanged(){this.enableRtl&&this.horizontallyScrollHeaderCenterAndFloatingCenter()}horizontallyScrollHeaderCenterAndFloatingCenter(e){null==this.centerRowsCtrl||(void 0===e&&(e=this.centerRowsCtrl.getCenterViewportScrollLeft()),this.setScrollLeftForAllContainersExceptCurrent(Math.abs(e)))}setScrollLeftForAllContainersExceptCurrent(e){for(const t of[...Il,Tl]){if(this.lastScrollSource[1]===t)continue;Ae(this.getViewportForSource(t),e,this.enableRtl)}}getViewportForSource(e){return e===Tl?this.centerRowsCtrl.eViewport:this.ctrlsSvc.get(e).eViewport}isControllingScroll(e,t){return null==this.lastScrollSource[t]?(0===t?this.lastScrollSource[0]=e:this.lastScrollSource[1]=e,!0):this.lastScrollSource[t]===e}onHScroll(e){if(!this.isControllingScroll(e,1))return;const t=this.centerRowsCtrl.eViewport,{scrollLeft:i}=t;if(this.shouldBlockScrollUpdate(1,i,!0))return;const s=Ee(this.getViewportForSource(e),this.enableRtl);this.doHorizontalScroll(s),this.resetLastHScrollDebounced()}onVScroll(e){if(!this.isControllingScroll(e,0))return;let t;if(t=e===Tl?this.eBodyViewport.scrollTop:this.ctrlsSvc.get("fakeVScrollComp").getScrollPosition(),this.shouldBlockScrollUpdate(0,t,!0))return;const{animationFrameSvc:i}=this;i?.setScrollTop(t),this.nextScrollTop=t,e===Tl?this.ctrlsSvc.get("fakeVScrollComp").setScrollPosition(t):this.eBodyViewport.scrollTop=t,i?.active?i.schedule():this.scrollGridIfNeeded(!0),this.resetLastVScrollDebounced()}doHorizontalScroll(e){const t=this.ctrlsSvc.get("fakeHScrollComp").getScrollPosition();this.scrollLeft===e&&e===t||(this.scrollLeft=e,this.fireScrollEvent(1),this.horizontallyScrollHeaderCenterAndFloatingCenter(e),this.centerRowsCtrl.onHorizontalViewportChanged(!0))}isScrolling(){return this.isScrollActive}fireScrollEvent(e){const t={type:"bodyScroll",direction:1===e?"horizontal":"vertical",left:this.scrollLeft,top:this.scrollTop};this.isScrollActive=!0,this.eventSvc.dispatchEvent(t),window.clearTimeout(this.scrollTimer),this.scrollTimer=window.setTimeout(()=>{this.scrollTimer=0,this.isScrollActive=!1,this.eventSvc.dispatchEvent({...t,type:"bodyScrollEnd"})},150)}shouldBlockScrollUpdate(e,t,i=!1){return!(i&&!qr())&&(0===e?this.shouldBlockVerticalScroll(t):this.shouldBlockHorizontalScroll(t))}shouldBlockVerticalScroll(e){const t=xe(this.eBodyViewport),{scrollHeight:i}=this.eBodyViewport;return!!(e<0||e+t>i)}shouldBlockHorizontalScroll(e){const t=this.centerRowsCtrl.getCenterWidth(),{scrollWidth:i}=this.centerRowsCtrl.eViewport;if(this.enableRtl){if(e>0)return!0}else if(e<0)return!0;return Math.abs(e)+t>i}redrawRowsAfterScroll(){this.fireScrollEvent(0)}checkScrollLeft(){const e=this.scrollLeft;let t=!1;for(const i of Il){if(this.getViewportForSource(i).scrollLeft!==e){t=!0;break}}t&&this.onHScroll(Tl)}scrollGridIfNeeded(e=!1){const t=this.scrollTop!=this.nextScrollTop;return t&&(this.scrollTop=this.nextScrollTop,e&&this.invalidateVerticalScroll(),this.redrawRowsAfterScroll()),t}setHorizontalScrollPosition(e,t=!1){const i=this.centerRowsCtrl.eViewport.scrollWidth-this.centerRowsCtrl.getCenterWidth();!t&&this.shouldBlockScrollUpdate(1,e)&&(e=this.enableRtl?e>0?0:i:Math.min(Math.max(e,0),i)),Ae(this.centerRowsCtrl.eViewport,Math.abs(e),this.enableRtl),this.doHorizontalScroll(e)}setVerticalScrollPosition(e){this.invalidateVerticalScroll(),this.eBodyViewport.scrollTop=e}getVScrollPosition(){if(!this.isVerticalPositionInvalidated){const{lastOffsetHeight:e,lastScrollTop:t}=this;return{top:t,bottom:t+e}}this.isVerticalPositionInvalidated=!1;const{scrollTop:e,offsetHeight:t}=this.eBodyViewport;return this.lastScrollTop=e,this.lastOffsetHeight=t,{top:e,bottom:e+t}}getApproximateVScollPosition(){return this.lastScrollTop>=0&&this.lastOffsetHeight>=0?{top:this.scrollTop,bottom:this.scrollTop+this.lastOffsetHeight}:this.getVScrollPosition()}getHScrollPosition(){return this.centerRowsCtrl.getHScrollPosition()}isHorizontalScrollShowing(){return this.isHorizontalPositionInvalidated&&(this.lastIsHorizontalScrollShowing=this.centerRowsCtrl.isHorizontalScrollShowing(),this.isHorizontalPositionInvalidated=!1),this.lastIsHorizontalScrollShowing}scrollHorizontally(e){const t=this.centerRowsCtrl.eViewport.scrollLeft;return this.setHorizontalScrollPosition(t+e),this.centerRowsCtrl.eViewport.scrollLeft-t}scrollToTop(){this.eBodyViewport.scrollTop=0}ensureNodeVisible(e,t=null){const{rowModel:i}=this.beans,s=i.getRowCount();let o=-1;for(let t=0;t=0&&this.ensureIndexVisible(o,t)}ensureIndexVisible(e,t,i=0){if(xi(this.gos,"print"))return;const{rowModel:s}=this.beans,o=s.getRowCount();if("number"!=typeof e||e<0||e>=o)return void gi(88,{index:e});this.clearRetryListeners();const{frameworkOverrides:r,pageBounds:n,rowContainerHeight:a,rowRenderer:l}=this.beans;r.wrapIncoming(()=>{const o=this.ctrlsSvc.getGridBodyCtrl(),r=s.getRow(e);let d,c,u=0;this.invalidateVerticalScroll();do{const{stickyTopHeight:e,stickyBottomHeight:i}=o,s=r.rowTop,h=r.rowHeight,g=n.getPixelOffset(),p=r.rowTop-g,m=p+r.rowHeight,f=this.getVScrollPosition(),C=a.divStretchOffset,v=f.top+C,w=f.bottom+C,b=w-v,y=a.getScrollPositionForPixel(p),S=a.getScrollPositionForPixel(m-b),x=Math.min((y+S)/2,p);let F=null;"top"===t?F=y-e:"bottom"===t?F=S+i:"middle"===t?F=x:v+e>p?F=y-e:w-ib?y-e:S+i),null!==F&&(this.setVerticalScrollPosition(F),l.redraw({afterScroll:!0})),d=s!==r.rowTop||h!==r.rowHeight,c=e!==o.stickyTopHeight||i!==o.stickyBottomHeight,u++}while((d||c)&&u<10);if(this.animationFrameSvc?.flushAllFrames(),i<10&&(r?.stub||!this.beans.rowAutoHeight?.areRowsMeasured())){const o=this.getVScrollPosition().top;this.clearRetryListenerFncs=this.addManagedEventListeners({bodyScroll:()=>{const e=this.getVScrollPosition().top;o!==e&&this.clearRetryListeners()},modelUpdated:()=>{this.clearRetryListeners(),e>=s.getRowCount()||this.ensureIndexVisible(e,t,i+1)}})}})}clearRetryListeners(){for(const e of this.clearRetryListenerFncs)e();this.clearRetryListenerFncs=[]}ensureColumnVisible(e,t="auto"){const{colModel:i,frameworkOverrides:s}=this.beans,o=i.getCol(e);if(!o)return;if(o.isPinned())return;if(!this.visibleCols.isColDisplayed(o))return;const r=this.getPositionedHorizontalScroll(o,t);s.wrapIncoming(()=>{null!==r&&this.centerRowsCtrl.setCenterViewportScrollLeft(r),this.centerRowsCtrl.onHorizontalViewportChanged(),this.animationFrameSvc?.flushAllFrames()})}getPositionedHorizontalScroll(e,t){const{columnBeforeStart:i,columnAfterEnd:s}=this.isColumnOutsideViewport(e),o=this.centerRowsCtrl.getCenterWidth()o:is}}getColumnBounds(e){const t=this.enableRtl,i=this.visibleCols.bodyWidth,s=e.getActualWidth(),o=e.getLeft(),r=t?-1:1,n=t?i-o:o;return{colLeft:n,colMiddle:n+s/2*r,colRight:n+s*r}}getViewportBounds(){const e=this.centerRowsCtrl.getCenterWidth(),t=this.centerRowsCtrl.getCenterViewportScrollLeft();return{start:t,end:e+t,width:e}}},Ll={horizontal:{overflow:e=>e.scrollWidth-e.clientWidth,scrollSize:e=>e.scrollWidth,clientSize:e=>e.clientWidth,opposite:"vertical"},vertical:{overflow:e=>e.scrollHeight-e.clientHeight,scrollSize:e=>e.scrollHeight,clientSize:e=>e.clientHeight,opposite:"horizontal"}};function Ol(e,t,i,s,o,r){const n=Ll[i],a=Ll[n.opposite],l=!o||ke(o),d=!r||ke(r),c=n.overflow(e);if(c<=0)return!1;if(!t||0===s)return!0;const u=a.overflow(t);if(u<=0)return!0;if(c<=s){if(l&&d&&function({candidateOverflow:e,candidateScrollSize:t,candidateClientSize:i,scrollbarWidth:s}){if(e<=0||e>s)return!1;const o=i+s;return t>i&&t<=o}({candidateOverflow:u,candidateScrollSize:a.scrollSize(t),candidateClientSize:a.clientSize(t),scrollbarWidth:s}))return!1;const i=n.clientSize(e)+s;return n.scrollSize(e)<=i}return!0}var Gl=class extends wt{constructor(e){super(),this.centerContainerCtrl=e}wireBeans(e){this.scrollVisibleSvc=e.scrollVisibleSvc}postConstruct(){this.beans.ctrlsSvc.whenReady(this,e=>{this.gridBodyCtrl=e.gridBodyCtrl,this.listenForResize()}),this.addManagedEventListeners({scrollbarWidthChanged:this.onScrollbarWidthChanged.bind(this)}),this.addManagedPropertyListeners(["alwaysShowHorizontalScroll","alwaysShowVerticalScroll"],()=>{this.checkViewportAndScrolls()})}listenForResize(){const{beans:e,centerContainerCtrl:t,gridBodyCtrl:i}=this,s=()=>{Ye(e,()=>{this.onCenterViewportResized()})};t.registerViewportResizeListener(s),i.registerBodyViewportResizeListener(s)}onScrollbarWidthChanged(){this.checkViewportAndScrolls()}onCenterViewportResized(){if(this.scrollVisibleSvc.updateScrollGap(),this.centerContainerCtrl.isViewportInTheDOMTree()){const{pinnedCols:e,colFlex:t}=this.beans;e?.keepPinnedColumnsNarrowerThanViewport(),this.checkViewportAndScrolls();const i=this.centerContainerCtrl.getCenterWidth();i!==this.centerWidth&&(this.centerWidth=i,t?.refreshFlexedColumns({viewportWidth:this.centerWidth,updateBodyWidths:!0,fireResizedEvent:!0}))}else this.bodyHeight=0}checkViewportAndScrolls(){this.updateScrollVisibleService(),this.checkBodyHeight(),this.onHorizontalViewportChanged(),this.gridBodyCtrl.scrollFeature.checkScrollLeft()}getBodyHeight(){return this.bodyHeight}checkBodyHeight(){const e=xe(this.gridBodyCtrl.eBodyViewport);this.bodyHeight!==e&&(this.bodyHeight=e,this.eventSvc.dispatchEvent({type:"bodyHeightChanged"}))}updateScrollVisibleService(){this.updateScrollVisibleServiceImpl(),setTimeout(this.updateScrollVisibleServiceImpl.bind(this),500)}updateScrollVisibleServiceImpl(){if(!this.isAlive())return;const e={horizontalScrollShowing:this.centerContainerCtrl.isHorizontalScrollShowing(),verticalScrollShowing:this.gridBodyCtrl.isVerticalScrollShowing()};this.scrollVisibleSvc.setScrollsVisible(e)}onHorizontalViewportChanged(){const{centerContainerCtrl:e,beans:t}=this,i=e.getCenterWidth(),s=e.getViewportScrollLeft();t.colViewport.setScrollPosition(i,s)}};function Nl(e){if(e.altKey||e.ctrlKey||e.metaKey)return!1;return 1===e.key?.length}function Bl(e,t,i,s){const o=t.getColDef().cellRendererParams?.suppressMouseEventHandling;return Vl(e,t,i,s,o)}function Vl(e,t,i,s,o){return!!o&&o(ms(e,{column:t,node:i,event:s}))}function _l(e,t,i){let s=t;for(;s;){const t=Ti(e,s,i);if(t)return t;s=s.parentElement}return null}var Hl="cellCtrl";function zl(e,t){return _l(e,t,Hl)}var Wl="renderedRow";function Ul(e,t){return _l(e,t,Wl)}function jl(e,t,i,s,o){const r=s?s.getColDef().suppressKeyboardEvent:void 0;if(!r)return!1;const n=ms(e,{event:t,editing:o,column:s,node:i,data:i.data,colDef:s.getColDef()});if(r){if(r(n))return!0}return!1}function Kl(e){const{pinnedRowModel:t,rowModel:i,rangeSvc:s,visibleCols:o}=e;if(!s||0===o.allCols.length)return;const r=t?.isEmpty("top")??!0?null:"top";let n,a;t?.isEmpty("bottom")??!0?(n=null,a=i.getRowCount()-1):(n="bottom",a=t?.getPinnedBottomRowCount()??-1),s.setCellRange({rowStartIndex:0,rowStartPinned:r,rowEndIndex:a,rowEndPinned:n})}var $l=class extends wt{constructor(e){super(),this.element=e}postConstruct(){this.addKeyboardListeners(),this.addMouseListeners(),this.beans.touchSvc?.mockRowContextMenu(this),this.editSvc=this.beans.editSvc}addKeyboardListeners(){const e="keydown",t=this.processKeyboardEvent.bind(this,e);this.addManagedElementListeners(this.element,{[e]:t})}addMouseListeners(){let e="mousedown";st("pointerdown")?e="pointerdown":st("touchstart")&&(e="touchstart");const t=["dblclick","contextmenu","mouseover","mouseout","click",e];for(const e of t){const t=this.processMouseEvent.bind(this,e);this.addManagedElementListeners(this.element,{[e]:t})}}processMouseEvent(e,t){if(!lt(this.beans,t)||gn(t))return;const{cellCtrl:i,rowCtrl:s}=this.getControlsForEventTarget(t.target);"contextmenu"===e?(i?.column&&i.dispatchCellContextMenuEvent(t),this.beans.contextMenuSvc?.handleContextMenuMouseEvent(t,void 0,s,i)):(i&&i.onMouseEvent(e,t),s&&s.onMouseEvent(e,t))}getControlsForEventTarget(e){const{gos:t}=this;return{cellCtrl:zl(t,e),rowCtrl:Ul(t,e)}}processKeyboardEvent(e,t){const{cellCtrl:i,rowCtrl:s}=this.getControlsForEventTarget(t.target);t.defaultPrevented||(i?this.processCellKeyboardEvent(i,e,t):s?.isFullWidth()&&this.processFullWidthRowKeyboardEvent(s,e,t))}processCellKeyboardEvent(e,t,i){const s=this.editSvc?.isEditing(e,{withOpenEditor:!0})??!1;if(!jl(this.gos,i,e.rowNode,e.column,s)&&"keydown"===t){!s&&this.beans.navigation?.handlePageScrollingKey(i)||e.onKeyDown(i),this.doGridOperations(i,s),Nl(i)&&e.processCharacter(i)}"keydown"===t&&this.eventSvc.dispatchEvent(e.createEvent(i,"cellKeyDown"))}processFullWidthRowKeyboardEvent(e,t,i){const{rowNode:s}=e,{focusSvc:o,navigation:r}=this.beans,n=o.getFocusedCell(),a=n?.column;if(!jl(this.gos,i,s,a,!1)){const s=i.key;if("keydown"===t)switch(s){case To.PAGE_HOME:case To.PAGE_END:case To.PAGE_UP:case To.PAGE_DOWN:r?.handlePageScrollingKey(i,!0);break;case To.LEFT:case To.RIGHT:if(!this.gos.get("embedFullWidthRows"))break;case To.UP:case To.DOWN:e.onKeyboardNavigate(i);break;case To.TAB:e.onTabKeyDown(i)}}"keydown"===t&&this.eventSvc.dispatchEvent(e.createRowEvent("cellKeyDown",i))}doGridOperations(e,t){if(!e.ctrlKey&&!e.metaKey)return;if(t)return;if(!lt(this.beans,e))return;const i=Do(e),{clipboardSvc:s,undoRedo:o}=this.beans;return i===To.A?this.onCtrlAndA(e):i===To.C?this.onCtrlAndC(s,e):i===To.D?this.onCtrlAndD(s,e):i===To.V?this.onCtrlAndV(s,e):i===To.X?this.onCtrlAndX(s,e):i===To.Y?this.onCtrlAndY(o):i===To.Z?this.onCtrlAndZ(o,e):void 0}onCtrlAndA(e){const{beans:{rowModel:t,rangeSvc:i,selectionSvc:s},gos:o}=this;i&&Qi(o)&&!function(e){const t=e.get("rowSelection");return"string"!=typeof t&&"multiRow"===t?.mode&&(t.ctrlASelectsRows??!1)}(o)&&t.isRowsToRender()?Kl(this.beans):s&&s.selectAllRowNodes({source:"keyboardSelectAll",selectAll:ns(o)}),e.preventDefault()}onCtrlAndC(e,t){if(!e||this.gos.get("enableCellTextSelection"))return;const{cellCtrl:i}=this.getControlsForEventTarget(t.target);this.editSvc?.isEditing(i,{withOpenEditor:!0})||(t.preventDefault(),e.copyToClipboard())}onCtrlAndX(e,t){if(!e||this.gos.get("enableCellTextSelection")||this.gos.get("suppressCutToClipboard"))return;const{cellCtrl:i}=this.getControlsForEventTarget(t.target);this.editSvc?.isEditing(i,{withOpenEditor:!0})||(t.preventDefault(),e.cutToClipboard(void 0,"ui"))}onCtrlAndV(e,t){const{cellCtrl:i}=this.getControlsForEventTarget(t.target);this.editSvc?.isEditing(i,{withOpenEditor:!0})||e&&!this.gos.get("suppressClipboardPaste")&&e.pasteFromClipboard()}onCtrlAndD(e,t){e&&!this.gos.get("suppressClipboardPaste")&&e.copyRangeDown(),t.preventDefault()}onCtrlAndZ(e,t){this.gos.get("undoRedoCellEditing")&&e&&(t.preventDefault(),t.shiftKey?e.redo("ui"):e.undo("ui"))}onCtrlAndY(e){e?.redo("ui")}},ql=e=>e.topRowCtrls,Yl=e=>e.getStickyTopRowCtrls(),Xl=e=>e.getStickyBottomRowCtrls(),Zl=e=>e.bottomRowCtrls,Ql=e=>e.allRowCtrls,Jl=e=>e.getCtrls("top"),ed=e=>e.getCtrls("center"),td=e=>e.getCtrls("bottom"),id={center:{type:"center",name:"center-cols",getRowCtrls:Ql,getSpannedRowCtrls:ed},left:{type:"left",name:"pinned-left-cols",pinnedType:"left",getRowCtrls:Ql,getSpannedRowCtrls:ed},right:{type:"right",name:"pinned-right-cols",pinnedType:"right",getRowCtrls:Ql,getSpannedRowCtrls:ed},fullWidth:{type:"fullWidth",name:"full-width",fullWidth:!0,getRowCtrls:Ql},topCenter:{type:"center",name:"floating-top",getRowCtrls:ql,getSpannedRowCtrls:Jl},topLeft:{type:"left",name:"pinned-left-floating",container:"ag-pinned-left-floating-top",pinnedType:"left",getRowCtrls:ql,getSpannedRowCtrls:Jl},topRight:{type:"right",name:"pinned-right-floating",container:"ag-pinned-right-floating-top",pinnedType:"right",getRowCtrls:ql,getSpannedRowCtrls:Jl},topFullWidth:{type:"fullWidth",name:"floating-top-full-width",fullWidth:!0,getRowCtrls:ql},stickyTopCenter:{type:"center",name:"sticky-top",getRowCtrls:Yl},stickyTopLeft:{type:"left",name:"pinned-left-sticky-top",container:"ag-pinned-left-sticky-top",pinnedType:"left",getRowCtrls:Yl},stickyTopRight:{type:"right",name:"pinned-right-sticky-top",container:"ag-pinned-right-sticky-top",pinnedType:"right",getRowCtrls:Yl},stickyTopFullWidth:{type:"fullWidth",name:"sticky-top-full-width",fullWidth:!0,getRowCtrls:Yl},stickyBottomCenter:{type:"center",name:"sticky-bottom",getRowCtrls:Xl},stickyBottomLeft:{type:"left",name:"pinned-left-sticky-bottom",container:"ag-pinned-left-sticky-bottom",pinnedType:"left",getRowCtrls:Xl},stickyBottomRight:{type:"right",name:"pinned-right-sticky-bottom",container:"ag-pinned-right-sticky-bottom",pinnedType:"right",getRowCtrls:Xl},stickyBottomFullWidth:{type:"fullWidth",name:"sticky-bottom-full-width",fullWidth:!0,getRowCtrls:Xl},bottomCenter:{type:"center",name:"floating-bottom",getRowCtrls:Zl,getSpannedRowCtrls:td},bottomLeft:{type:"left",name:"pinned-left-floating-bottom",container:"ag-pinned-left-floating-bottom",pinnedType:"left",getRowCtrls:Zl,getSpannedRowCtrls:td},bottomRight:{type:"right",name:"pinned-right-floating-bottom",container:"ag-pinned-right-floating-bottom",pinnedType:"right",getRowCtrls:Zl,getSpannedRowCtrls:td},bottomFullWidth:{type:"fullWidth",name:"floating-bottom-full-width",fullWidth:!0,getRowCtrls:Zl}};function sd(e){return`ag-${nd(e).name}-viewport`}function od(e){const t=nd(e);return t.container??`ag-${t.name}-container`}function rd(e){return`ag-${nd(e).name}-spanned-cells-container`}function nd(e){return id[e]}var ad=["center","left","right","fullWidth"],ld=["stickyTopCenter","stickyBottomCenter","center","topCenter","bottomCenter"],dd=["left","bottomLeft","topLeft","stickyTopLeft","stickyBottomLeft"],cd=["right","bottomRight","topRight","stickyTopRight","stickyBottomRight"],ud=["stickyTopCenter","stickyTopLeft","stickyTopRight"],hd=["stickyBottomCenter","stickyBottomLeft","stickyBottomRight"],gd=[...ud,"stickyTopFullWidth",...hd,"stickyBottomFullWidth"],pd=["topCenter","topLeft","topRight","bottomCenter","bottomLeft","bottomRight","center","left","right",...ud,...hd],md=class extends wt{constructor(e){super(),this.name=e,this.visible=!0,this.EMPTY_CTRLS=[],this.options=nd(e)}postConstruct(){this.enableRtl=this.gos.get("enableRtl"),this.forContainers(["center"],()=>{this.viewportSizeFeature=this.createManagedBean(new Gl(this)),this.addManagedEventListeners({stickyTopOffsetChanged:this.onStickyTopOffsetChanged.bind(this)})})}onStickyTopOffsetChanged(e){this.comp.setOffsetTop(`${e.offset}px`)}registerWithCtrlsService(){this.options.fullWidth||this.beans.ctrlsSvc.register(this.name,this)}forContainers(e,t){e.indexOf(this.name)>=0&&t()}setComp(e,t,i,s){this.comp=e,this.eContainer=t,this.eSpannedContainer=i,this.eViewport=s,this.createManagedBean(new $l(this.eViewport??this.eContainer)),this.addPreventScrollWhileDragging(),this.listenOnDomOrder();const{pinnedCols:o,rangeSvc:r}=this.beans,n=()=>this.onPinnedWidthChanged();this.forContainers(dd,()=>{this.pinnedWidthFeature=this.createOptionalManagedBean(o?.createPinnedWidthFeature(!0,this.eContainer,this.eSpannedContainer)),this.addManagedEventListeners({leftPinnedWidthChanged:n})}),this.forContainers(cd,()=>{this.pinnedWidthFeature=this.createOptionalManagedBean(o?.createPinnedWidthFeature(!1,this.eContainer,this.eSpannedContainer)),this.addManagedEventListeners({rightPinnedWidthChanged:n})}),this.forContainers(ad,()=>this.createManagedBean(new Rl(this.eContainer,"center"===this.name?s:void 0))),r&&this.forContainers(pd,()=>this.createManagedBean(r.createDragListenerFeature(this.eContainer))),this.forContainers(ld,()=>this.createManagedBean(new Jn(e=>this.comp.setContainerWidth(`${e}px`)))),this.visible=this.isContainerVisible(),this.addListeners(),this.registerWithCtrlsService()}onScrollCallback(e){this.addManagedElementListeners(this.eViewport,{scroll:e})}addListeners(){const{spannedRowRenderer:e,gos:t}=this.beans,i=this.onDisplayedColumnsChanged.bind(this);this.addManagedEventListeners({displayedColumnsChanged:i,displayedColumnsWidthChanged:i,displayedRowsChanged:e=>this.onDisplayedRowsChanged(e.afterScroll)}),i(),this.onDisplayedRowsChanged(),e&&this.options.getSpannedRowCtrls&&t.get("enableCellSpan")&&this.addManagedListeners(e,{spannedRowsUpdated:()=>{const t=this.options.getSpannedRowCtrls(e);t&&this.comp.setSpannedRowCtrls(t,!1)}})}listenOnDomOrder(){if(gd.indexOf(this.name)>=0)return void this.comp.setDomOrder(!0);const e=()=>{const e=this.gos.get("ensureDomOrder"),t=xi(this.gos,"print");this.comp.setDomOrder(e||t)};this.addManagedPropertyListener("domLayout",e),e()}onDisplayedColumnsChanged(){this.forContainers(["center"],()=>this.onHorizontalViewportChanged())}addPreventScrollWhileDragging(){const{dragSvc:e}=this.beans;if(!e)return;const t=t=>{e.dragging&&t.cancelable&&t.preventDefault()};this.eContainer.addEventListener("touchmove",t,{passive:!1}),this.addDestroyFunc(()=>this.eContainer.removeEventListener("touchmove",t))}onHorizontalViewportChanged(e=!1){const t=this.getCenterWidth(),i=this.getCenterViewportScrollLeft();this.beans.colViewport.setScrollPosition(t,i,e)}hasHorizontalScrollGap(){return this.eContainer.clientWidth-this.eViewport.clientWidth<0}hasVerticalScrollGap(){return this.eContainer.clientHeight-this.eViewport.clientHeight<0}getCenterWidth(){return Fe(this.eViewport)}getCenterViewportScrollLeft(){return Ee(this.eViewport,this.enableRtl)}registerViewportResizeListener(e){const t=qe(this.beans,this.eViewport,e);this.addDestroyFunc(()=>t())}isViewportInTheDOMTree(){return Ie(this.eViewport)}getViewportScrollLeft(){return Ee(this.eViewport,this.enableRtl)}isHorizontalScrollShowing(){const{beans:e,gos:t,eViewport:i}=this,s=t.get("alwaysShowHorizontalScroll"),{ctrlsSvc:o}=e,r=o.getGridBodyCtrl()?.eBodyViewport,n=o.get("fakeHScrollComp")?.getGui(),a=o.get("fakeVScrollComp")?.getGui();return s||function(e,t,i=Xr()||0,s,o){return Ol(e,t,"horizontal",i,s,o)}(i,r,void 0,n,a)}setHorizontalScroll(e){this.comp.setHorizontalScroll(e)}getHScrollPosition(){return{left:this.eViewport.scrollLeft,right:this.eViewport.scrollLeft+this.eViewport.offsetWidth}}setCenterViewportScrollLeft(e){Ae(this.eViewport,e,this.enableRtl)}isContainerVisible(){return!(null!=this.options.pinnedType)||!!this.pinnedWidthFeature&&this.pinnedWidthFeature.getWidth()>0}onPinnedWidthChanged(){const e=this.isContainerVisible();this.visible!=e&&(this.visible=e,this.onDisplayedRowsChanged())}onDisplayedRowsChanged(e=!1){const t=this.options.getRowCtrls(this.beans.rowRenderer);if(!this.visible||0===t.length)return void this.comp.setRowCtrls({rowCtrls:this.EMPTY_CTRLS});const i=xi(this.gos,"print"),s=this.gos.get("embedFullWidthRows")||i,o=t.filter(e=>{const t=e.isFullWidth();return this.options.fullWidth?!s&&t:s||!t});this.comp.setRowCtrls({rowCtrls:o,useFlushSync:e})}},fd="ag-force-vertical-scroll",Cd=class extends wt{constructor(){super(...arguments),this.stickyTopHeight=0,this.stickyBottomHeight=0}wireBeans(e){this.ctrlsSvc=e.ctrlsSvc,this.colModel=e.colModel,this.scrollVisibleSvc=e.scrollVisibleSvc,this.pinnedRowModel=e.pinnedRowModel,this.filterManager=e.filterManager,this.rowGroupColsSvc=e.rowGroupColsSvc}setComp(e,t,i,s,o,r,n){this.comp=e,this.eGridBody=t,this.eBodyViewport=i,this.eTop=s,this.eBottom=o,this.eStickyTop=r,this.eStickyBottom=n,this.eCenterColsViewport=i.querySelector(`.${sd("center")}`),this.eFullWidthContainer=i.querySelector(`.${od("fullWidth")}`),this.setCellTextSelection(this.gos.get("enableCellTextSelection")),this.addManagedPropertyListener("enableCellTextSelection",e=>this.setCellTextSelection(e.currentValue)),this.createManagedBean(new bl(this.comp)),this.scrollFeature=this.createManagedBean(new kl(i)),this.beans.rowDragSvc?.setupRowDrag(i,this),this.setupRowAnimationCssClass(),this.addEventListeners(),this.addFocusListeners([s,i,o,r,n]),this.setGridRootRole(),this.onGridColumnsChanged(),this.addBodyViewportListener(),this.setFloatingHeights(),this.disableBrowserDragging(),this.addStopEditingWhenGridLosesFocus(),this.updateScrollingClasses(),this.filterManager?.setupAdvFilterHeaderComp(s),this.ctrlsSvc.register("gridBodyCtrl",this)}addEventListeners(){const e=this.setFloatingHeights.bind(this),t=this.setGridRootRole.bind(this),i=this.toggleRowResizeStyles.bind(this);this.addManagedEventListeners({gridColumnsChanged:this.onGridColumnsChanged.bind(this),scrollVisibilityChanged:this.onScrollVisibilityChanged.bind(this),scrollGapChanged:this.updateScrollingClasses.bind(this),pinnedRowDataChanged:e,pinnedHeightChanged:e,pinnedRowsChanged:e,headerHeightChanged:this.setStickyTopOffsetTop.bind(this),columnRowGroupChanged:t,columnPivotChanged:t,rowResizeStarted:i,rowResizeEnded:i}),this.addManagedPropertyListener("treeData",t)}toggleRowResizeStyles(e){const t="rowResizeStarted"===e.type;this.eBodyViewport.classList.toggle("ag-prevent-animation",t)}onGridColumnsChanged(){const e=this.beans.colModel.getCols();this.comp.setColumnCount(e.length)}onScrollVisibilityChanged(){const{scrollVisibleSvc:e}=this,t=e.verticalScrollShowing;this.setVerticalScrollPaddingVisible(t),this.setStickyWidth(t),this.setStickyBottomOffsetBottom();const i=`calc(100% + ${(t&&e.getScrollbarWidth()||0)+(Qr()?16:0)}px)`;Ye(this.beans,()=>this.comp.setBodyViewportWidth(i)),this.updateScrollingClasses()}setGridRootRole(){const{rowGroupColsSvc:e,colModel:t,gos:i}=this;let s=i.get("treeData");if(!s){const i=t.isPivotMode();s=(e?e.columns.length:0)>=(i?2:1)}this.comp.setGridRootRole(s?"treegrid":"grid")}addFocusListeners(e){for(const t of e)this.addManagedElementListeners(t,{focusin:e=>{const{target:i}=e,s=ye(i,"ag-root",t);t.classList.toggle("ag-has-focus",!s)},focusout:e=>{const{target:i,relatedTarget:s}=e,o=t.contains(s),r=ye(s,"ag-root",t);ye(i,"ag-root",t)||o&&!r||t.classList.remove("ag-has-focus")}})}setColumnMovingCss(e){this.comp.setColumnMovingCss("ag-column-moving",e)}setCellTextSelection(e=!1){this.comp.setCellSelectableCss("ag-selectable",e)}updateScrollingClasses(){const{eGridBody:{classList:e},scrollVisibleSvc:t}=this;e.toggle("ag-body-vertical-content-no-gap",!t.verticalScrollGap),e.toggle("ag-body-horizontal-content-no-gap",!t.horizontalScrollGap)}disableBrowserDragging(){this.addManagedElementListeners(this.eGridBody,{dragstart:e=>{if(e.target instanceof HTMLImageElement)return e.preventDefault(),!1}})}addStopEditingWhenGridLosesFocus(){this.beans.editSvc?.addStopEditingWhenGridLosesFocus([this.eBodyViewport,this.eBottom,this.eTop,this.eStickyTop,this.eStickyBottom])}updateRowCount(){const e=(this.ctrlsSvc.getHeaderRowContainerCtrl()?.getRowCount()??0)+(this.filterManager?.getHeaderRowCount()??0),{rowModel:t}=this.beans,i=t.isLastRowIndexKnown()?t.getRowCount():-1,s=-1===i?-1:e+i;this.comp.setRowCount(s)}registerBodyViewportResizeListener(e){this.comp.registerBodyViewportResizeListener(e)}setVerticalScrollPaddingVisible(e){const t=e?"scroll":"hidden";this.comp.setPinnedTopBottomOverflowY(t)}isVerticalScrollShowing(){const{gos:e,comp:t,ctrlsSvc:i}=this,s=e.get("alwaysShowVerticalScroll"),o=s?fd:null,r=xi(e,"normal");t.setAlwaysVerticalScrollClass(o,s);const n=i.get("center")?.eViewport,a=i.get("fakeHScrollComp")?.getGui(),l=i.get("fakeVScrollComp")?.getGui();return s||r&&function(e,t,i=Xr()||0,s,o){return Ol(e,t,"vertical",i,s,o)}(this.eBodyViewport,n,void 0,l,a)}setupRowAnimationCssClass(){const{rowContainerHeight:e,environment:t}=this.beans;let i=t.sizesMeasured;const s=()=>{const t=i&&Ii(this.gos)&&!e.stretching,s=t?"ag-row-animation":"ag-row-no-animation";this.comp.setRowAnimationCssOnBodyViewport(s,t)};s(),this.addManagedEventListeners({heightScaleChanged:s}),this.addManagedPropertyListener("animateRows",s),this.addManagedEventListeners({stylesChanged:()=>{!i&&t.sizesMeasured&&(i=!0,s())}})}addBodyViewportListener(){const{eBodyViewport:e,eStickyTop:t,eStickyBottom:i,eTop:s,eBottom:o,beans:{popupSvc:r,touchSvc:n}}=this,a=this.onBodyViewportContextMenu.bind(this);this.addManagedElementListeners(e,{contextmenu:a}),n?.mockBodyContextMenu(this,a),this.addManagedElementListeners(e,{wheel:this.onBodyViewportWheel.bind(this,r)});const l=this.onStickyWheel.bind(this);for(const e of[t,i,s,o])this.addManagedElementListeners(e,{wheel:l});const d=this.onHorizontalWheel.bind(this);for(const e of["left","right","topLeft","topRight","bottomLeft","bottomRight"])this.addManagedElementListeners(this.ctrlsSvc.get(e).eContainer,{wheel:d});this.addFullWidthContainerWheelListener()}addFullWidthContainerWheelListener(){this.addManagedElementListeners(this.eFullWidthContainer,{wheel:e=>this.onFullWidthContainerWheel(e)})}onFullWidthContainerWheel(e){const{deltaX:t,deltaY:i,shiftKey:s}=e;(s||Math.abs(t)>Math.abs(i))&<(this.beans,e)&&this.scrollGridBodyToMatchEvent(e)}onStickyWheel(e){const{deltaY:t}=e;this.scrollVertically(t)>0&&e.preventDefault()}onHorizontalWheel(e){const{deltaX:t,deltaY:i,shiftKey:s}=e;(s||Math.abs(t)>Math.abs(i))&&this.scrollGridBodyToMatchEvent(e)}scrollGridBodyToMatchEvent(e){const{deltaX:t,deltaY:i}=e;e.preventDefault(),this.eCenterColsViewport.scrollBy({left:t||i})}onBodyViewportContextMenu(e,t,i){if(!e&&!i)return;if(this.gos.get("preventDefaultOnContextMenu")){(e||i).preventDefault()}const{target:s}=e||t;s!==this.eBodyViewport&&s!==this.ctrlsSvc.get("center").eViewport||this.beans.contextMenuSvc?.showContextMenu({mouseEvent:e,touchEvent:i,value:null,anchorToElement:this.eGridBody,source:"ui"})}onBodyViewportWheel(e,t){this.gos.get("suppressScrollWhenPopupsAreOpen")&&e?.hasAnchoredPopup()&&t.preventDefault()}scrollVertically(e){const t=this.eBodyViewport.scrollTop;return this.scrollFeature.setVerticalScrollPosition(t+e),this.eBodyViewport.scrollTop-t}setFloatingHeights(){const{pinnedRowModel:e,beans:{environment:t}}=this,i=e?.getPinnedTopTotalHeight(),s=e?.getPinnedBottomTotalHeight(),o=t.getPinnedRowBorderWidth()-t.getRowBorderWidth(),r=i?o+i:0,n=s?o+s:0;this.comp.setTopHeight(r),this.comp.setBottomHeight(n),this.comp.setTopInvisible(r<=0),this.comp.setBottomInvisible(n<=0),this.setStickyTopOffsetTop(),this.setStickyBottomOffsetBottom()}setStickyTopHeight(e=0){this.comp.setStickyTopHeight(`${e}px`),this.stickyTopHeight=e}setStickyBottomHeight(e=0){this.comp.setStickyBottomHeight(`${e}px`),this.stickyBottomHeight=e}setStickyWidth(e){if(e){const e=this.scrollVisibleSvc.getScrollbarWidth();this.comp.setStickyTopWidth(`calc(100% - ${e}px)`),this.comp.setStickyBottomWidth(`calc(100% - ${e}px)`)}else this.comp.setStickyTopWidth("100%"),this.comp.setStickyBottomWidth("100%")}setStickyTopOffsetTop(){const e=this.ctrlsSvc.get("gridHeaderCtrl").headerHeight+(this.filterManager?.getHeaderHeight()??0),t=this.pinnedRowModel?.getPinnedTopTotalHeight()??0;let i=0;e>0&&(i+=e),t>0&&(i+=t),i>0&&(i+=1),this.comp.setStickyTopTop(`${i}px`)}setStickyBottomOffsetBottom(){const{pinnedRowModel:e,scrollVisibleSvc:t,comp:i}=this,s=(e?.getPinnedBottomTotalHeight()??0)+(t.horizontalScrollShowing&&t.getScrollbarWidth()||0);i.setStickyBottomBottom(`${s}px`)}},vd=class extends Wo{constructor(e,t,i,s,o){super(),this.cellCtrl=t,this.rendererVersion=0,this.editorVersion=0,this.beans=e,this.gos=e.gos,this.column=t.column,this.rowNode=t.rowNode,this.eRow=s;const r=Go({tag:"div",role:t.getCellAriaRole(),attrs:{"comp-id":`${this.getCompId()}`,"col-id":t.column.colIdSanitised}});let n;this.eCell=r,t.isCellSpanning()?(n=Go({tag:"div",cls:"ag-spanned-cell-wrapper",role:"presentation"}),n.appendChild(r),this.setTemplateFromElement(n)):this.setTemplateFromElement(r),this.cellCssManager=new Vo(()=>r),this.forceWrapper=t.isForceWrapper(),this.refreshWrapper(!1);const a={toggleCss:(e,t)=>this.cellCssManager.toggleCss(e,t),setUserStyles:e=>Be(r,e),getFocusableElement:()=>r,setIncludeSelection:e=>this.includeSelection=e,setIncludeRowDrag:e=>this.includeRowDrag=e,setIncludeDndSource:e=>this.includeDndSource=e,setRenderDetails:(e,t,i)=>this.setRenderDetails(e,t,i),setEditDetails:(e,t,i)=>this.setEditDetails(e,t,i),getCellEditor:()=>this.cellEditor||null,getCellRenderer:()=>this.cellRenderer||null,getParentOfValue:()=>this.getParentOfValue(),refreshEditStyles:(e,t)=>this.refreshEditStyles(e,t)};t.setComp(a,r,n,this.eCellWrapper,i,o,void 0)}getParentOfValue(){return this.eCellValue??this.eCellWrapper??this.eCell}setRenderDetails(e,t,i){if(this.cellEditor&&!this.cellEditorPopupWrapper)return;this.firstRender=null==this.firstRender;const s=this.refreshWrapper(!1);if(this.refreshEditStyles(!1),e){!(i||s)&&this.refreshCellRenderer(e)||(this.destroyRenderer(),this.createCellRendererInstance(e))}else this.destroyRenderer(),this.insertValueWithoutCellRenderer(t);this.rowDraggingComp?.refreshVisibility()}setEditDetails(e,t,i){e?this.createCellEditorInstance(e,t,i):this.destroyEditor()}removeControls(){const e=this.beans.context;this.checkboxSelectionComp=e.destroyBean(this.checkboxSelectionComp),this.dndSourceComp=e.destroyBean(this.dndSourceComp),this.rowDraggingComp=e.destroyBean(this.rowDraggingComp)}refreshWrapper(e){const t=this.includeRowDrag||this.includeDndSource||this.includeSelection,i=t||this.forceWrapper,s=i&&null==this.eCellWrapper;s&&(this.eCellWrapper=Go({tag:"div",cls:"ag-cell-wrapper",role:"presentation"}),this.eCell.appendChild(this.eCellWrapper));const o=!i&&null!=this.eCellWrapper;o&&(De(this.eCellWrapper),this.eCellWrapper=void 0),this.cellCssManager.toggleCss("ag-cell-value",!i);const r=!e&&i,n=r&&null==this.eCellValue;if(n){const e=this.cellCtrl.getCellValueClass();this.eCellValue=Go({tag:"span",cls:e,role:"presentation"}),this.eCellWrapper.appendChild(this.eCellValue)}const a=!r&&null!=this.eCellValue;a&&(De(this.eCellValue),this.eCellValue=void 0);const l=s||o||n||a;return l&&this.removeControls(),!e&&t&&this.addControls(),l}addControls(){const{cellCtrl:e,eCellWrapper:t,eCellValue:i,includeRowDrag:s,includeDndSource:o,includeSelection:r}=this,n=e=>{e&&t.insertBefore(e.getGui(),i)};s&&null==this.rowDraggingComp&&(this.rowDraggingComp=e.createRowDragComp(),n(this.rowDraggingComp)),o&&null==this.dndSourceComp&&(this.dndSourceComp=e.createDndSource(),n(this.dndSourceComp)),r&&null==this.checkboxSelectionComp&&(this.checkboxSelectionComp=e.createSelectionCheckbox(),n(this.checkboxSelectionComp))}createCellEditorInstance(e,t,i){const s=this.editorVersion,o=e.newAgStackInstance(),{params:r}=e;o.then(e=>this.afterCellEditorCreated(s,e,r,t,i));C(this.cellEditor)&&r.cellStartedEdit&&this.cellCtrl.focusCell(!0)}insertValueWithoutCellRenderer(e){const t=this.getParentOfValue();Te(t);const i=F(e);null!=i&&(t.textContent=i)}destroyRenderer(){const{context:e}=this.beans;this.cellRenderer=e.destroyBean(this.cellRenderer),De(this.cellRendererGui),this.cellRendererGui=null,this.rendererVersion++}destroyEditor(){const{context:e}=this.beans;(this.cellEditorPopupWrapper?.getGui().contains(A(this.beans))||this.cellCtrl.hasBrowserFocus())&&this.eCell.focus({preventScroll:!0}),this.hideEditorPopup?.(),this.hideEditorPopup=void 0,this.cellEditor=e.destroyBean(this.cellEditor),this.cellEditorPopupWrapper=e.destroyBean(this.cellEditorPopupWrapper),De(this.cellEditorGui),this.cellCtrl.disableEditorTooltipFeature(),this.cellEditorGui=null,this.editorVersion++}refreshCellRenderer(e){if(null==this.cellRenderer?.refresh)return!1;if(this.cellRendererClass!==e.componentClass)return!1;const t=this.cellRenderer.refresh(e.params);return!0===t||void 0===t}createCellRendererInstance(e){const t=this.rendererVersion,i=e=>i=>{if(this.rendererVersion!==t||!this.isAlive())return;const s=e.newAgStackInstance(),o=this.afterCellRendererCreated.bind(this,t,e.componentClass);s?.then(o)},{animationFrameSvc:s}=this.beans;let o;if(o=s?.active&&this.firstRender?(e,t=!1)=>{s.createTask(i(e),this.rowNode.rowIndex,"p2",e.componentFromFramework,t)}:e=>i(e)(),e.params?.deferRender&&!this.cellCtrl.rowNode.group){const{loadingComp:t,onReady:i}=this.cellCtrl.getDeferLoadingCellRenderer();t&&(o(t),i.then(()=>o(e,!0)))}else o(e)}afterCellRendererCreated(e,t,i){if(!this.isAlive()||e!==this.rendererVersion)return void this.beans.context.destroyBean(i);this.cellRenderer=i,this.cellRendererClass=t;const s=i.getGui();if(this.cellRendererGui=s,null!=s){const e=this.getParentOfValue();Te(e),e.appendChild(s)}}afterCellEditorCreated(e,t,i,s,o){const r=e!==this.editorVersion,{context:n}=this.beans;if(r)return void n.destroyBean(t);const a=t.isCancelBeforeStart?.();if(a)return n.destroyBean(t),void this.cellCtrl.stopEditing(!0);if(!t.getGui)return gi(97,{colId:this.column.getId()}),void n.destroyBean(t);this.cellEditor=t,this.cellEditorGui=t.getGui();const l=s||t.isPopup?.();l?this.addPopupCellEditor(i,o):this.addInCellEditor(),this.refreshEditStyles(!0,l),t.afterGuiAttached?.(),this.cellCtrl.enableEditorTooltipFeature(t),this.cellCtrl.cellEditorAttached()}refreshEditStyles(e,t){const{cellCssManager:i}=this;i.toggleCss("ag-cell-inline-editing",e&&!t),i.toggleCss("ag-cell-popup-editing",e&&!!t),i.toggleCss("ag-cell-not-inline-editing",!e||!!t)}addInCellEditor(){const{eCell:e}=this;if(e.contains(A(this.beans))&&e.focus(),this.destroyRenderer(),this.refreshWrapper(!0),Te(this.getParentOfValue()),this.cellEditorGui){this.getParentOfValue().appendChild(this.cellEditorGui)}}addPopupCellEditor(e,t){const{gos:i,context:s,popupSvc:o,editSvc:r}=this.beans;"fullRow"===i.get("editType")&&gi(98);const n=this.cellEditorPopupWrapper=s.createBean(r.createPopupEditorWrapper(e)),{cellEditor:a,cellEditorGui:l,eCell:d,rowNode:c,column:u,cellCtrl:h}=this,g=n.getGui();l&&g.appendChild(l);const p=i.get("stopEditingWhenCellsLoseFocus"),m={ePopup:g,additionalParams:{column:u,rowNode:c},type:"popupCellEditor",eventSource:d,position:null!=t?t:a.getPopupPosition?.()??"over",alignSide:i.get("enableRtl")?"right":"left",keepWithinBounds:!0},f=o.positionPopupByComponent.bind(o,m),C=o.addPopup({modal:p,eChild:g,closeOnEsc:!0,closedCallback:()=>{h.onPopupEditorClosed()},anchorToElement:d,positionCallback:f,ariaOwns:d});C&&(this.hideEditorPopup=C.hideFunc)}detach(){this.getGui().remove()}destroy(){this.destroyRenderer(),this.destroyEditor(),this.removeControls(),super.destroy()}},wd=class extends Wo{constructor(e,t,i){super(),this.cellComps=new Map,this.beans=t,this.rowCtrl=e;const s=Go({tag:"div",role:"row",attrs:{"comp-id":`${this.getCompId()}`}});this.setInitialStyle(s,i),this.setTemplateFromElement(s);const o=s.style;this.domOrder=this.rowCtrl.getDomOrder();const r={setDomOrder:e=>this.domOrder=e,setCellCtrls:e=>this.setCellCtrls(e),showFullWidth:e=>this.showFullWidth(e),getFullWidthCellRenderer:()=>this.fullWidthCellRenderer,getFullWidthCellRendererParams:()=>this.fullWidthCellRendererParams,toggleCss:(e,t)=>this.toggleCss(e,t),setUserStyles:e=>Be(s,e),setTop:e=>o.top=e,setTransform:e=>o.transform=e,setRowIndex:e=>s.setAttribute("row-index",e),setRowId:e=>s.setAttribute("row-id",e),setRowBusinessKey:e=>s.setAttribute("row-business-key",e),refreshFullWidth:e=>{const t=e();return this.fullWidthCellRendererParams=t,this.fullWidthCellRenderer?.refresh?.(t)??!1}};e.setComp(r,this.getGui(),i,void 0),this.addDestroyFunc(()=>{e.unsetComp(i)})}setInitialStyle(e,t){const i=this.rowCtrl.getInitialTransform(t);if(i)e.style.setProperty("transform",i);else{const i=this.rowCtrl.getInitialRowTop(t);i&&e.style.setProperty("top",i)}}showFullWidth(e){e.newAgStackInstance().then(t=>{if(this.isAlive()){const i=t.getGui();this.getGui().appendChild(i),this.rowCtrl.setupDetailRowAutoHeight(i),this.setFullWidthRowComp(t,e.params)}else this.beans.context.destroyBean(t)})}setCellCtrls(e){const t=new Map(this.cellComps);for(const i of e){const e=i.instanceId;this.cellComps.has(e)?t.delete(e):this.newCellComp(i)}this.destroyCells(t),this.ensureDomOrder(e)}ensureDomOrder(e){if(!this.domOrder)return;const t=[];for(const i of e){const e=this.cellComps.get(i.instanceId);e&&t.push(e.getGui())}Ge(this.getGui(),t)}newCellComp(e){const t=this.beans.editSvc?.isEditing(e,{withOpenEditor:!0})??!1,i=new vd(this.beans,e,this.rowCtrl.printLayout,this.getGui(),t);this.cellComps.set(e.instanceId,i),this.getGui().appendChild(i.getGui())}destroy(){super.destroy(),this.destroyCells(this.cellComps)}setFullWidthRowComp(e,t){this.fullWidthCellRenderer=e,this.fullWidthCellRendererParams=t,this.addDestroyFunc(()=>{this.fullWidthCellRenderer=this.beans.context.destroyBean(this.fullWidthCellRenderer),this.fullWidthCellRendererParams=void 0})}destroyCells(e){for(const t of e.values()){if(!t)continue;const e=t.cellCtrl.instanceId;this.cellComps.get(e)===t&&(t.detach(),t.destroy(),this.cellComps.delete(e))}}};var bd={selector:"AG-ROW-CONTAINER",component:class extends Wo{constructor(e){super(),this.eViewport=Lo,this.eContainer=Lo,this.eSpannedContainer=Lo,this.rowCompsNoSpan={},this.rowCompsWithSpan={},this.name=e?.name,this.options=nd(this.name)}postConstruct(){this.setTemplate(function(e,t,i){const s=!!i.gos.get("enableCellSpan")&&!!t.getSpannedRowCtrls,o={tag:"div",ref:"eContainer",cls:od(e),role:"rowgroup"};if("center"===t.type||s){const t={tag:"div",ref:"eSpannedContainer",cls:`ag-spanning-container ${rd(e)}`,role:"presentation"};return o.role="presentation",{tag:"div",ref:"eViewport",cls:`ag-viewport ${sd(e)}`,role:"rowgroup",children:[o,s?t:null]}}return o}(this.name,this.options,this.beans));const e={setHorizontalScroll:e=>this.eViewport.scrollLeft=e,setViewportHeight:e=>this.eViewport.style.height=e,setRowCtrls:({rowCtrls:e})=>this.setRowCtrls(e),setSpannedRowCtrls:e=>this.setRowCtrls(e,!0),setDomOrder:e=>{this.domOrder=e},setContainerWidth:e=>{this.eContainer.style.width=e,this.eSpannedContainer&&(this.eSpannedContainer.style.width=e)},setOffsetTop:e=>{const t=`translateY(${e})`;this.eContainer.style.transform=t,this.eSpannedContainer&&(this.eSpannedContainer.style.transform=t)}};this.createManagedBean(new md(this.name)).setComp(e,this.eContainer,this.eSpannedContainer,this.eViewport)}destroy(){this.setRowCtrls([]),this.setRowCtrls([],!0),super.destroy(),this.lastPlacedElement=null}setRowCtrls(e,t){const{beans:i,options:s}=this,o=t?this.eSpannedContainer:this.eContainer,r=t?{...this.rowCompsWithSpan}:{...this.rowCompsNoSpan},n={};t?this.rowCompsWithSpan=n:this.rowCompsNoSpan=n,this.lastPlacedElement=null;const a=[];for(const t of e){const e=t.instanceId,o=r[e];let l;if(o)l=o,delete r[e];else{if(!t.rowNode.displayed)continue;l=new wd(t,i,s.type)}n[e]=l,a.push([l,!o])}this.removeOldRows(Object.values(r)),this.addRowNodes(a,o)}addRowNodes(e,t){const{domOrder:i}=this;for(const[s,o]of e){const e=s.getGui();i?this.ensureDomOrder(e,t):o&&t.appendChild(e)}}removeOldRows(e){for(const t of e)t.getGui().remove(),t.destroy()}ensureDomOrder(e,t){Oe(t,e,this.lastPlacedElement),this.lastPlacedElement=e}}};function yd(e,t){return t.map(t=>{const i=`e${t[0].toUpperCase()+t.substring(1)}RowContainer`;return e[i]={name:t},{tag:"ag-row-container",ref:i,attrs:{name:t}}})}var Sd={selector:"AG-GRID-BODY",component:class extends Wo{constructor(){super(...arguments),this.eGridRoot=Lo,this.eBodyViewport=Lo,this.eStickyTop=Lo,this.eStickyBottom=Lo,this.eTop=Lo,this.eBottom=Lo,this.eBody=Lo}postConstruct(){const{overlays:e,rangeSvc:t}=this.beans,i=e?.getOverlayWrapperSelector(),{paramsMap:s,elementParams:o}=function(e){const t={};return{paramsMap:t,elementParams:{tag:"div",ref:"eGridRoot",cls:"ag-root ag-unselectable",children:[{tag:"ag-header-root"},{tag:"div",ref:"eTop",cls:"ag-floating-top",role:"presentation",children:yd(t,["topLeft","topCenter","topRight","topFullWidth"])},{tag:"div",ref:"eBody",cls:"ag-body",role:"presentation",children:[{tag:"div",ref:"eBodyViewport",cls:"ag-body-viewport",role:"presentation",children:yd(t,["left","center","right","fullWidth"])},{tag:"ag-fake-vertical-scroll"}]},{tag:"div",ref:"eStickyTop",cls:"ag-sticky-top",role:"presentation",children:yd(t,["stickyTopLeft","stickyTopCenter","stickyTopRight","stickyTopFullWidth"])},{tag:"div",ref:"eStickyBottom",cls:"ag-sticky-bottom",role:"presentation",children:yd(t,["stickyBottomLeft","stickyBottomCenter","stickyBottomRight","stickyBottomFullWidth"])},{tag:"div",ref:"eBottom",cls:"ag-floating-bottom",role:"presentation",children:yd(t,["bottomLeft","bottomCenter","bottomRight","bottomFullWidth"])},{tag:"ag-fake-horizontal-scroll"},e?{tag:"ag-overlay-wrapper"}:null]}}}(!!i);this.setTemplate(o,[...i?[i]:[],Fl,El,vl,bd],s);const r=(e,t)=>{const i=`${e}px`;t.style.minHeight=i,t.style.height=i},n={setRowAnimationCssOnBodyViewport:(e,t)=>this.setRowAnimationCssOnBodyViewport(e,t),setColumnCount:e=>te(this.getGui(),e),setRowCount:e=>J(this.getGui(),e),setTopHeight:e=>r(e,this.eTop),setBottomHeight:e=>r(e,this.eBottom),setTopInvisible:e=>this.eTop.classList.toggle("ag-invisible",e),setBottomInvisible:e=>this.eBottom.classList.toggle("ag-invisible",e),setStickyTopHeight:e=>this.eStickyTop.style.height=e,setStickyTopTop:e=>this.eStickyTop.style.top=e,setStickyTopWidth:e=>this.eStickyTop.style.width=e,setStickyBottomHeight:e=>{this.eStickyBottom.style.height=e,this.eStickyBottom.classList.toggle("ag-invisible","0px"===e)},setStickyBottomBottom:e=>this.eStickyBottom.style.bottom=e,setStickyBottomWidth:e=>this.eStickyBottom.style.width=e,setColumnMovingCss:(e,t)=>this.toggleCss(e,t),updateLayoutClasses:(e,t)=>{const i=[this.eBodyViewport.classList,this.eBody.classList];for(const e of i)e.toggle(wl.AUTO_HEIGHT,t.autoHeight),e.toggle(wl.NORMAL,t.normal),e.toggle(wl.PRINT,t.print);this.toggleCss(wl.AUTO_HEIGHT,t.autoHeight),this.toggleCss(wl.NORMAL,t.normal),this.toggleCss(wl.PRINT,t.print)},setAlwaysVerticalScrollClass:(e,t)=>this.eBodyViewport.classList.toggle(fd,t),registerBodyViewportResizeListener:e=>{const t=qe(this.beans,this.eBodyViewport,e);this.addDestroyFunc(()=>t())},setPinnedTopBottomOverflowY:e=>this.eTop.style.overflowY=this.eBottom.style.overflowY=e,setCellSelectableCss:(e,t)=>{for(const i of[this.eTop,this.eBodyViewport,this.eBottom])i.classList.toggle(e,t)},setBodyViewportWidth:e=>this.eBodyViewport.style.width=e,setGridRootRole:e=>B(this.eGridRoot,e)};this.ctrl=this.createManagedBean(new Cd),this.ctrl.setComp(n,this.getGui(),this.eBodyViewport,this.eTop,this.eBottom,this.eStickyTop,this.eStickyBottom),(t&&Qi(this.gos)||os(this.gos))&&O(this.getGui(),"multiselectable",!0)}setRowAnimationCssOnBodyViewport(e,t){const i=this.eBodyViewport.classList;i.toggle("ag-row-animation",t),i.toggle("ag-row-no-animation",!t)}}},xd={TAB_GUARD:"ag-tab-guard",TAB_GUARD_TOP:"ag-tab-guard-top",TAB_GUARD_BOTTOM:"ag-tab-guard-bottom"},Fd=class extends vt{constructor(e,t){super(),this.stopPropagationCallbacks=t,this.skipTabGuardFocus=!1,this.forcingFocusOut=!1,this.allowFocus=!1;const{comp:i,eTopGuard:s,eBottomGuard:o,focusTrapActive:r,forceFocusOutWhenTabGuardsAreEmpty:n,isFocusableContainer:a,focusInnerElement:l,onFocusIn:d,onFocusOut:c,shouldStopEventPropagation:u,onTabKeyDown:h,handleKeyDown:g,isEmpty:p,eFocusableElement:m}=e;this.comp=i,this.eTopGuard=s,this.eBottomGuard=o,this.providedFocusInnerElement=l,this.eFocusableElement=m,this.focusTrapActive=!!r,this.forceFocusOutWhenTabGuardsAreEmpty=!!n,this.isFocusableContainer=!!a,this.providedFocusIn=d,this.providedFocusOut=c,this.providedShouldStopEventPropagation=u,this.providedOnTabKeyDown=h,this.providedHandleKeyDown=g,this.providedIsEmpty=p}postConstruct(){this.createManagedBean(new cn(this.eFocusableElement,this.stopPropagationCallbacks,{shouldStopEventPropagation:()=>this.shouldStopEventPropagation(),onTabKeyDown:e=>this.onTabKeyDown(e),handleKeyDown:e=>this.handleKeyDown(e),onFocusIn:e=>this.onFocusIn(e),onFocusOut:e=>this.onFocusOut(e)})),this.activateTabGuards();for(const e of[this.eTopGuard,this.eBottomGuard])this.addManagedElementListeners(e,{focus:this.onFocus.bind(this)})}handleKeyDown(e){this.providedHandleKeyDown&&this.providedHandleKeyDown(e)}tabGuardsAreActive(){return!!this.eTopGuard&&this.eTopGuard.hasAttribute("tabIndex")}shouldStopEventPropagation(){return!!this.providedShouldStopEventPropagation&&this.providedShouldStopEventPropagation()}activateTabGuards(){if(this.forcingFocusOut)return;const e=this.gos.get("tabIndex");this.comp.setTabIndex(e.toString())}deactivateTabGuards(){this.comp.setTabIndex()}onFocus(e){if(this.isFocusableContainer&&!this.eFocusableElement.contains(e.relatedTarget)&&!this.allowFocus)return void this.findNextElementOutsideAndFocus(e.target===this.eBottomGuard);if(this.skipTabGuardFocus)return void(this.skipTabGuardFocus=!1);if(this.forceFocusOutWhenTabGuardsAreEmpty){if(this.providedIsEmpty?this.providedIsEmpty():0===rn(this.eFocusableElement,".ag-tab-guard").length)return void this.findNextElementOutsideAndFocus(e.target===this.eBottomGuard)}if(this.isFocusableContainer&&this.eFocusableElement.contains(e.relatedTarget))return;const t=e.target===this.eBottomGuard;!(this.providedFocusInnerElement?this.providedFocusInnerElement(t):this.focusInnerElement(t))&&this.forceFocusOutWhenTabGuardsAreEmpty&&this.findNextElementOutsideAndFocus(e.target===this.eBottomGuard)}findNextElementOutsideAndFocus(e){const t=rn(T(this.beans).body,null,!0),i=t.indexOf(e?this.eTopGuard:this.eBottomGuard);if(-1===i)return;let s,o;e?(s=0,o=i):(s=i+1,o=t.length);const r=t.slice(s,o),n=this.gos.get("tabIndex");r.sort((e,t)=>{const i=Number.parseInt(e.getAttribute("tabindex")||"0"),s=Number.parseInt(t.getAttribute("tabindex")||"0");return s===n?1:i===n?-1:0===i?1:0===s?-1:i-s}),r[e?r.length-1:0]?.focus()}onFocusIn(e){this.focusTrapActive||this.forcingFocusOut||(this.providedFocusIn&&this.providedFocusIn(e),this.isFocusableContainer||this.deactivateTabGuards())}onFocusOut(e){this.focusTrapActive||(this.providedFocusOut&&this.providedFocusOut(e),this.eFocusableElement.contains(e.relatedTarget)||this.activateTabGuards())}onTabKeyDown(e){if(this.providedOnTabKeyDown)return void this.providedOnTabKeyDown(e);if(this.focusTrapActive)return;if(e.defaultPrevented)return;const t=this.tabGuardsAreActive();t&&this.deactivateTabGuards();const i=this.getNextFocusableElement(e.shiftKey);t&&setTimeout(()=>this.activateTabGuards(),0),i&&(i.focus(),e.preventDefault())}focusInnerElement(e=!1){const t=rn(this.eFocusableElement);return this.tabGuardsAreActive()&&(t.splice(0,1),t.splice(-1,1)),!!t.length&&(t[e?t.length-1:0].focus({preventScroll:!0}),!0)}getNextFocusableElement(e){return an(this.beans,this.eFocusableElement,!1,e)}forceFocusOutOfContainer(e=!1){if(this.forcingFocusOut)return;const t=e?this.eTopGuard:this.eBottomGuard;this.activateTabGuards(),this.skipTabGuardFocus=!0,this.forcingFocusOut=!0,t.focus(),window.setTimeout(()=>{this.forcingFocusOut=!1,this.activateTabGuards()})}isTabGuard(e,t){return e===this.eTopGuard&&!t||e===this.eBottomGuard&&(t??!0)}setAllowFocus(e){this.allowFocus=e}},Rd=class extends vt{constructor(e,t){super(),this.comp=e,this.stopPropagationCallbacks=t}initialiseTabGuard(e){this.eTopGuard=this.createTabGuard("top"),this.eBottomGuard=this.createTabGuard("bottom"),this.eFocusableElement=this.comp.getFocusableElement();const{eTopGuard:t,eBottomGuard:i,eFocusableElement:s,stopPropagationCallbacks:o}=this,r=[t,i],n={setTabIndex:e=>{for(const t of r)null==e?t.removeAttribute("tabindex"):t.setAttribute("tabindex",e)}};this.addTabGuards(t,i);const{focusTrapActive:a=!1,onFocusIn:l,onFocusOut:d,focusInnerElement:c,handleKeyDown:u,onTabKeyDown:h,shouldStopEventPropagation:g,isEmpty:p,forceFocusOutWhenTabGuardsAreEmpty:m,isFocusableContainer:f}=e;this.tabGuardCtrl=this.createManagedBean(new Fd({comp:n,focusTrapActive:a,eTopGuard:t,eBottomGuard:i,eFocusableElement:s,onFocusIn:l,onFocusOut:d,focusInnerElement:c,handleKeyDown:u,onTabKeyDown:h,shouldStopEventPropagation:g,isEmpty:p,forceFocusOutWhenTabGuardsAreEmpty:m,isFocusableContainer:f},o))}getTabGuardCtrl(){return this.tabGuardCtrl}createTabGuard(e){const t=T(this.beans).createElement("div"),i="top"===e?xd.TAB_GUARD_TOP:xd.TAB_GUARD_BOTTOM;return t.classList.add(xd.TAB_GUARD,i),B(t,"presentation"),t}addTabGuards(e,t){const i=this.eFocusableElement;i.prepend(e),i.append(t)}removeAllChildrenExceptTabGuards(){const e=[this.eTopGuard,this.eBottomGuard];Te(this.comp.getFocusableElement()),this.addTabGuards(...e)}forceFocusOutOfContainer(e=!1){this.tabGuardCtrl.forceFocusOutOfContainer(e)}appendChild(e,t,i){je(t)||(t=t.getGui());const{eBottomGuard:s}=this;s?s.before(t):e(t,i)}destroy(){const{eTopGuard:e,eBottomGuard:t}=this;De(e),De(t),super.destroy()}},Pd=class extends Ho{initialiseTabGuard(e,t){this.tabGuardFeature=this.createManagedBean(new Rd(this,t)),this.tabGuardFeature.initialiseTabGuard(e)}forceFocusOutOfContainer(e=!1){this.tabGuardFeature.forceFocusOutOfContainer(e)}appendChild(e,t){this.tabGuardFeature.appendChild(super.appendChild.bind(this),e,t)}},Md=class extends Pd{initialiseTabGuard(e){super.initialiseTabGuard(e,pn)}},Ed=class extends wt{constructor(){super(...arguments),this.additionalFocusableContainers=new Set}setComp(e,t,i){this.view=e,this.eGridHostDiv=t,this.eGui=i,this.eGui.setAttribute("grid-id",this.beans.context.getId());const{dragAndDrop:s,ctrlsSvc:o}=this.beans;s?.registerGridDropTarget(()=>this.eGui,this),this.createManagedBean(new bl(this.view)),this.view.setRtlClass(this.gos.get("enableRtl")?"ag-rtl":"ag-ltr");const r=qe(this.beans,this.eGridHostDiv,this.onGridSizeChanged.bind(this));this.addDestroyFunc(()=>r()),o.register("gridCtrl",this)}isDetailGrid(){const e=ln(this.getGui());return e?.getAttribute("row-id")?.startsWith("detail")||!1}getOptionalSelectors(){const e=this.beans;return{paginationSelector:e.pagination?.getPaginationSelector(),gridHeaderDropZonesSelector:e.registry?.getSelector("AG-GRID-HEADER-DROP-ZONES"),sideBarSelector:e.sideBar?.getSelector(),statusBarSelector:e.registry?.getSelector("AG-STATUS-BAR"),watermarkSelector:e.licenseManager?.getWatermarkSelector()}}onGridSizeChanged(){this.eventSvc.dispatchEvent({type:"gridSizeChanged",clientWidth:this.eGridHostDiv.clientWidth,clientHeight:this.eGridHostDiv.clientHeight})}destroyGridUi(){this.view.destroyGridUi()}getGui(){return this.eGui}setResizeCursor(e){const{view:t}=this;if(!1===e)t.setCursor(null);else{const i=1===e?"ew-resize":"ns-resize";t.setCursor(i)}}disableUserSelect(e){this.view.setUserSelect(e?"none":null)}focusNextInnerContainer(e){const t=this.getFocusableContainers(),{indexWithFocus:i,nextIndex:s}=this.getNextFocusableIndex(t,e);if(s<0||s>=t.length)return!1;if(0===s){if(i>0){const{visibleCols:e,focusSvc:t}=this.beans,i=l(e.allCols);if(t.focusGridView({column:i,backwards:!0}))return!0}return!1}return this.focusContainer(t[s],e)}focusInnerElement(e){const t=this.gos.getCallback("focusGridInnerElement");if(t?.({fromBottom:!!e}))return!0;const i=this.getFocusableContainers(),{focusSvc:s,visibleCols:o}=this.beans,r=o.allCols;if(e){if(i.length>1)return this.focusContainer(l(i),e);const t=l(r);if(s.focusGridView({column:t,backwards:e}))return!0}if(0===this.gos.get("headerHeight")||In(this.beans)){if(s.focusGridView({column:r[0],backwards:e}))return!0;for(let t=1;te.getGui().contains(i));return{indexWithFocus:s,nextIndex:s+(t?-1:1)}}focusContainer(e,t){e.setAllowFocus?.(!0);const i=nn(e.getGui(),t,!1,!0);return e.setAllowFocus?.(!1),i}getFocusableContainers(){return[...this.view.getFocusableContainers(),...this.additionalFocusableContainers]}destroy(){this.additionalFocusableContainers.clear(),super.destroy()}},Ad=class extends Md{constructor(e){super(),this.gridBody=Lo,this.sideBar=Lo,this.pagination=Lo,this.rootWrapperBody=Lo,this.eGridDiv=e}postConstruct(){const e={destroyGridUi:()=>this.destroyBean(this),setRtlClass:e=>this.addCss(e),forceFocusOutOfContainer:this.forceFocusOutOfContainer.bind(this),updateLayoutClasses:this.updateLayoutClasses.bind(this),getFocusableContainers:this.getFocusableContainers.bind(this),setUserSelect:e=>{this.getGui().style.userSelect=null!=e?e:"",this.getGui().style.webkitUserSelect=null!=e?e:""},setCursor:e=>{this.getGui().style.cursor=null!=e?e:""}},t=this.createManagedBean(new Ed),i=t.getOptionalSelectors(),s=this.createTemplate(i),o=[Sd,...Object.values(i).filter(e=>!!e)];this.setTemplate(s,o),t.setComp(e,this.eGridDiv,this.getGui()),this.insertGridIntoDom(),this.initialiseTabGuard({onTabKeyDown:()=>{},focusInnerElement:e=>t.focusInnerElement(e),forceFocusOutWhenTabGuardsAreEmpty:!0,isEmpty:()=>!t.isFocusable()})}insertGridIntoDom(){const e=this.getGui();this.eGridDiv.appendChild(e),this.addDestroyFunc(()=>{e.remove(),Nt(this.gos,"Grid removed from DOM")})}updateLayoutClasses(e,t){const i=this.rootWrapperBody.classList,{AUTO_HEIGHT:s,NORMAL:o,PRINT:r}=wl,{autoHeight:n,normal:a,print:l}=t;i.toggle(s,n),i.toggle(o,a),i.toggle(r,l),this.toggleCss(s,n),this.toggleCss(o,a),this.toggleCss(r,l)}createTemplate(e){const t=e.gridHeaderDropZonesSelector?{tag:"ag-grid-header-drop-zones"}:null,i=e.sideBarSelector?{tag:"ag-side-bar",ref:"sideBar"}:null,s=e.statusBarSelector?{tag:"ag-status-bar"}:null,o=e.watermarkSelector?{tag:"ag-watermark"}:null;return{tag:"div",cls:"ag-root-wrapper",role:"presentation",children:[t,{tag:"div",ref:"rootWrapperBody",cls:"ag-root-wrapper-body",role:"presentation",children:[{tag:"ag-grid-body",ref:"gridBody"},i]},s,e.paginationSelector?{tag:"ag-pagination",ref:"pagination"}:null,o]}}getFocusableElement(){return this.rootWrapperBody}forceFocusOutOfContainer(e=!1){e||!this.pagination?.isDisplayed()?super.forceFocusOutOfContainer(e):this.pagination.forceFocusOutOfContainer(e)}getFocusableContainers(){const e=[this.gridBody];for(const t of[this.sideBar,this.pagination])t&&e.push(t);return e.filter(e=>ke(e.getGui()))}},Td=(e,t)=>{for(const i of Object.keys(t))t[i]=e;return t},Dd={dispatchEvent:"CommunityCore",...Td("CommunityCore",{destroy:0,getGridId:0,getGridOption:0,isDestroyed:0,setGridOption:0,updateGridOptions:0,isModuleRegistered:0}),...Td("GridState",{getState:0,setState:0}),...Td("SharedRowSelection",{setNodesSelected:0,selectAll:0,deselectAll:0,selectAllFiltered:0,deselectAllFiltered:0,selectAllOnCurrentPage:0,deselectAllOnCurrentPage:0,getSelectedNodes:0,getSelectedRows:0}),...Td("RowApi",{redrawRows:0,setRowNodeExpanded:0,getRowNode:0,addRenderedRowListener:0,getRenderedNodes:0,forEachNode:0,getFirstDisplayedRowIndex:0,getLastDisplayedRowIndex:0,getDisplayedRowAtIndex:0,getDisplayedRowCount:0}),...Td("ScrollApi",{getVerticalPixelRange:0,getHorizontalPixelRange:0,ensureColumnVisible:0,ensureIndexVisible:0,ensureNodeVisible:0}),...Td("KeyboardNavigation",{getFocusedCell:0,clearFocusedCell:0,setFocusedCell:0,tabToNextCell:0,tabToPreviousCell:0,setFocusedHeader:0}),...Td("EventApi",{addEventListener:0,addGlobalListener:0,removeEventListener:0,removeGlobalListener:0}),...Td("ValueCache",{expireValueCache:0}),...Td("CellApi",{getCellValue:0}),...Td("SharedMenu",{showColumnMenu:0,hidePopupMenu:0}),...Td("Sort",{onSortChanged:0}),...Td("PinnedRow",{getPinnedTopRowCount:0,getPinnedBottomRowCount:0,getPinnedTopRow:0,getPinnedBottomRow:0,forEachPinnedRow:0}),...Td("Overlay",{showLoadingOverlay:0,showNoRowsOverlay:0,hideOverlay:0}),...Td("RenderApi",{setGridAriaProperty:0,refreshCells:0,refreshHeader:0,isAnimationFrameQueueEmpty:0,flushAllAnimationFrames:0,getSizesForCurrentTheme:0,getCellRendererInstances:0}),...Td("HighlightChanges",{flashCells:0}),...Td("RowDrag",{addRowDropZone:0,removeRowDropZone:0,getRowDropZoneParams:0,getRowDropPositionIndicator:0,setRowDropPositionIndicator:0}),...Td("ColumnApi",{getColumnDefs:0,getColumnDef:0,getDisplayNameForColumn:0,getColumn:0,getColumns:0,applyColumnState:0,getColumnState:0,resetColumnState:0,isPinning:0,isPinningLeft:0,isPinningRight:0,getDisplayedColAfter:0,getDisplayedColBefore:0,setColumnsVisible:0,setColumnsPinned:0,getAllGridColumns:0,getDisplayedLeftColumns:0,getDisplayedCenterColumns:0,getDisplayedRightColumns:0,getAllDisplayedColumns:0,getAllDisplayedVirtualColumns:0}),...Td("ColumnAutoSize",{sizeColumnsToFit:0,autoSizeColumns:0,autoSizeAllColumns:0}),...Td("ColumnGroup",{setColumnGroupOpened:0,getColumnGroup:0,getProvidedColumnGroup:0,getDisplayNameForColumnGroup:0,getColumnGroupState:0,setColumnGroupState:0,resetColumnGroupState:0,getLeftDisplayedColumnGroups:0,getCenterDisplayedColumnGroups:0,getRightDisplayedColumnGroups:0,getAllDisplayedColumnGroups:0}),...Td("ColumnMove",{moveColumnByIndex:0,moveColumns:0}),...Td("ColumnResize",{setColumnWidths:0}),...Td("ColumnHover",{isColumnHovered:0}),...Td("EditCore",{getCellEditorInstances:0,getEditingCells:0,getEditRowValues:0,stopEditing:0,startEditingCell:0,isEditing:0,validateEdit:0}),...Td("BatchEdit",{startBatchEdit:0,cancelBatchEdit:0,commitBatchEdit:0,isBatchEditing:0}),...Td("UndoRedoEdit",{undoCellEditing:0,redoCellEditing:0,getCurrentUndoSize:0,getCurrentRedoSize:0}),...Td("FilterCore",{isAnyFilterPresent:0,onFilterChanged:0}),...Td("ColumnFilter",{isColumnFilterPresent:0,getColumnFilterInstance:0,destroyFilter:0,setFilterModel:0,getFilterModel:0,getColumnFilterModel:0,setColumnFilterModel:0,showColumnFilter:0,hideColumnFilter:0,getColumnFilterHandler:0,doFilterAction:0}),...Td("QuickFilter",{isQuickFilterPresent:0,getQuickFilter:0,resetQuickFilter:0}),...Td("Find",{findGetActiveMatch:0,findGetTotalMatches:0,findGoTo:0,findNext:0,findPrevious:0,findGetNumMatches:0,findGetParts:0,findClearActive:0,findRefresh:0}),...Td("Pagination",{paginationIsLastPageFound:0,paginationGetPageSize:0,paginationGetCurrentPage:0,paginationGetTotalPages:0,paginationGetRowCount:0,paginationGoToNextPage:0,paginationGoToPreviousPage:0,paginationGoToFirstPage:0,paginationGoToLastPage:0,paginationGoToPage:0}),...Td("CsrmSsrmSharedApi",{expandAll:0,collapseAll:0}),...Td("SsrmInfiniteSharedApi",{setRowCount:0,getCacheBlockState:0,isLastRowIndexKnown:0}),...Td("ClientSideRowModelApi",{onGroupExpandedOrCollapsed:0,refreshClientSideRowModel:0,isRowDataEmpty:0,forEachLeafNode:0,forEachNodeAfterFilter:0,forEachNodeAfterFilterAndSort:0,applyTransaction:0,applyTransactionAsync:0,flushAsyncTransactions:0,getBestCostNodeSelection:0,onRowHeightChanged:0,resetRowHeights:0}),...Td("CsvExport",{getDataAsCsv:0,exportDataAsCsv:0}),...Td("InfiniteRowModel",{refreshInfiniteCache:0,purgeInfiniteCache:0,getInfiniteRowCount:0}),...Td("AdvancedFilter",{getAdvancedFilterModel:0,setAdvancedFilterModel:0,showAdvancedFilterBuilder:0,hideAdvancedFilterBuilder:0}),...Td("IntegratedCharts",{getChartModels:0,getChartRef:0,getChartImageDataURL:0,downloadChart:0,openChartToolPanel:0,closeChartToolPanel:0,createRangeChart:0,createPivotChart:0,createCrossFilterChart:0,updateChart:0,restoreChart:0}),...Td("Clipboard",{copyToClipboard:0,cutToClipboard:0,copySelectedRowsToClipboard:0,copySelectedRangeToClipboard:0,copySelectedRangeDown:0,pasteFromClipboard:0}),...Td("ExcelExport",{getDataAsExcel:0,exportDataAsExcel:0,getSheetDataForExcel:0,getMultipleSheetsAsExcel:0,exportMultipleSheetsAsExcel:0}),...Td("SharedMasterDetail",{addDetailGridInfo:0,removeDetailGridInfo:0,getDetailGridInfo:0,forEachDetailGridInfo:0}),...Td("ContextMenu",{showContextMenu:0}),...Td("ColumnMenu",{showColumnChooser:0,hideColumnChooser:0}),...Td("CellSelection",{getCellRanges:0,addCellRange:0,clearRangeSelection:0,clearCellSelection:0}),...Td("SharedRowGrouping",{setRowGroupColumns:0,removeRowGroupColumns:0,addRowGroupColumns:0,getRowGroupColumns:0,moveRowGroupColumn:0}),...Td("SharedAggregation",{addAggFuncs:0,clearAggFuncs:0,setColumnAggFunc:0}),...Td("SharedPivot",{isPivotMode:0,getPivotResultColumn:0,setValueColumns:0,getValueColumns:0,removeValueColumns:0,addValueColumns:0,setPivotColumns:0,removePivotColumns:0,addPivotColumns:0,getPivotColumns:0,setPivotResultColumns:0,getPivotResultColumns:0}),...Td("ServerSideRowModelApi",{getServerSideSelectionState:0,setServerSideSelectionState:0,applyServerSideTransaction:0,applyServerSideTransactionAsync:0,applyServerSideRowData:0,retryServerSideLoads:0,flushServerSideAsyncTransactions:0,refreshServerSide:0,getServerSideGroupLevelState:0,onRowHeightChanged:0,resetRowHeights:0}),...Td("SideBar",{isSideBarVisible:0,setSideBarVisible:0,setSideBarPosition:0,openToolPanel:0,closeToolPanel:0,getOpenedToolPanel:0,refreshToolPanel:0,isToolPanelShowing:0,getToolPanelInstance:0,getSideBar:0}),...Td("StatusBar",{getStatusPanel:0}),...Td("AiToolkit",{getStructuredSchema:0})},Id={isDestroyed:()=>!0,destroy(){},preConstruct(){},postConstruct(){},preWireBeans(){},wireBeans(){}},kd=(e,t)=>e.eventSvc.dispatchEvent(t),Ld=class{};Reflect.defineProperty(Ld,"name",{value:"GridApi"});function Od(e){return e.context.getId()}function Gd(e,t){e.gos.updateGridOptions({options:t})}var Nd={tag:"div",cls:"ag-drag-handle ag-row-drag",attrs:{draggable:"true"}};var Bd,Vd,_d=(e,t)=>{if(null!=t&&e?.setPointerCapture)try{return e.setPointerCapture(t),e.hasPointerCapture(t)}catch{}return!1},Hd=e=>{const{eElement:t,onLost:i}=e;t&&i&&(t.removeEventListener("lostpointercapture",i),e.onLost=null)},zd=(e,t)=>{Hd(e);const{eElement:i,pointerId:s}=e;i&&t.pointerId===s&&_d(i,s)},Wd={passive:!0},Ud={passive:!1},jd=e=>{if(Vd){if(Vd.has(e))return!1}else Vd=new WeakSet;return Vd.add(e),!0},Kd=class extends vt{constructor(){super(...arguments),this.beanName="dragSvc",this.dragging=!1,this.drag=null,this.dragSources=[]}get startTarget(){return this.drag?.start.target??null}isPointer(){return!!Bd?.has(E(this.beans))}hasPointerCapture(){const e=this.drag?.pointerCapture;return!(!e||!this.beans.eRootDiv.hasPointerCapture?.(e.pointerId))}destroy(){this.drag&&this.cancelDrag();const e=this.dragSources;for(const t of e)$d(t);e.length=0,super.destroy()}removeDragSource(e){const t=this.dragSources;for(let i=0,s=t.length;ithis.onPointerDown(e,t),Ud],[t,"mousedown",t=>this.onMouseDown(e,t)]);const n=this.gos.get("suppressTouch");if(i&&!n){ct(s,[t,"touchstart",t=>this.onTouchStart(e,t),Ud])}}cancelDrag(e){const t=this.drag;e??(e=t?.eElement),e&&this.eventSvc.dispatchEvent({type:"dragCancelled",target:e}),t?.params.onDragCancel?.(),this.destroyDrag()}shouldPreventMouseEvent(e){const t=e.type;return("mousemove"===t||"pointermove"===t)&&e.cancelable&<(this.beans,e)&&!Ce(Yd(e))}initDrag(e,...t){this.drag=e;const i=this.beans,s=e=>this.onScroll(e),o=E(i),r=T(i);ct(e.handlers,[o,"contextmenu",ht],[o,"keydown",e=>this.onKeyDown(e)],[r,"scroll",s,{capture:!0}],[r.defaultView||window,"scroll",s],...t)}destroyDrag(){this.dragging=!1;const e=this.drag;if(e){const t=e.rootEl;Bd?.get(t)===e&&Bd.delete(t),this.drag=null,(e=>{if(!e)return;Hd(e);const{eElement:t,pointerId:i}=e;if(t){try{t.releasePointerCapture(i)}catch{}e.eElement=null}})(e.pointerCapture),ut(e.handlers)}}onPointerDown(e,t){if(this.isPointer())return;const i=this.beans;if(Vd?.has(t))return;const s=t.pointerType;if("touch"===s){if(i.gos.get("suppressTouch")||!e.includeTouch)return;if(e.stopPropagationForTouch&&t.stopPropagation(),Ce(Yd(t)))return}if(!t.isPrimary)return;if("mouse"===s&&0!==t.button)return;this.destroyDrag();const o=E(i),r=e.eElement,n=t.pointerId,a=new qd(o,e,t,n);Bd??(Bd=new WeakMap),Bd.set(o,a);const l=e=>this.draggingPreventDefault(e);this.initDrag(a,[o,"pointerup",e=>{e.pointerId===n&&this.onMouseOrPointerUp(e)}],[o,"pointercancel",e=>{e.pointerId===n&&jd(e)&&this.cancelDrag()}],[o,"pointermove",e=>{e.pointerId===n&&this.onMouseOrPointerMove(e)},Ud],[o,"touchmove",l,Ud],[r,"mousemove",l,Ud]),0===e.dragStartPixels?this.onMouseOrPointerMove(t):jd(t)}onTouchStart(e,t){if(this.gos.get("suppressTouch")||!e.includeTouch)return;if(!jd(t))return;if(Ce(Yd(t)))return;if(e.stopPropagationForTouch&&t.stopPropagation(),this.isPointer())return void(this.dragging&&ht(t));this.destroyDrag();const i=this.beans,s=E(i),o=new qd(s,e,t.touches[0]),r=e=>this.onTouchUp(e),n=e=>this.onTouchCancel(e),a=E(i),l=t.target??e.eElement;this.initDrag(o,[l,"touchmove",e=>this.onTouchMove(e),Wd],[l,"touchend",r,Wd],[l,"touchcancel",n,Wd],[a,"touchmove",e=>this.draggingPreventDefault(e),Ud],[a,"touchend",r,Ud],[a,"touchcancel",n,Ud]),0===e.dragStartPixels&&this.onMove(o.start)}draggingPreventDefault(e){this.dragging&&ht(e)}onMouseDown(e,t){if(0!==t.button)return;if(Vd?.has(t))return;if(this.isPointer())return;const i=this.beans;this.destroyDrag();const s=new qd(E(i),e,t),o=E(i);this.initDrag(s,[o,"mousemove",e=>this.onMouseOrPointerMove(e)],[o,"mouseup",e=>this.onMouseOrPointerUp(e)]),0===e.dragStartPixels?this.onMouseOrPointerMove(t):jd(t)}onScroll(e){if(!jd(e))return;const t=this.drag,i=t?.lastDrag;i&&this.dragging&&t.params?.onDragging?.(i)}onMouseOrPointerMove(e){jd(e)&&(jr()&&T(this.beans).getSelection()?.removeAllRanges(),this.shouldPreventMouseEvent(e)&&ht(e),this.onMove(e))}onTouchCancel(e){const t=this.drag;t&&jd(e)&&at(t.start,e.changedTouches)&&this.cancelDrag()}onTouchMove(e){const t=this.drag;if(!t||!jd(e))return;const i=at(t.start,e.touches);i&&(this.onMove(i),this.draggingPreventDefault(e))}onMove(e){const t=this.drag;if(!t)return;t.lastDrag=e;const i=t.params;if(!this.dragging){const s=t.start;if(nt(e,s,i.dragStartPixels??4))return;if(this.dragging=!0,i.capturePointer&&(t.pointerCapture=((e,t)=>{if("undefined"==typeof PointerEvent||!(t instanceof PointerEvent))return null;const i=t.pointerId;if(!_d(e,i))return null;const s={eElement:e,pointerId:i,onLost(e){zd(s,e)}};return e.addEventListener("lostpointercapture",s.onLost),s})(this.beans.eRootDiv,e)),this.eventSvc.dispatchEvent({type:"dragStarted",target:i.eElement}),i.onDragStart?.(s),this.drag!==t)return;if(i.onDragging?.(s),this.drag!==t)return}i.onDragging?.(e)}onTouchUp(e){const t=this.drag;t&&jd(e)&&this.onUp(at(t.start,e.changedTouches))}onMouseOrPointerUp(e){jd(e)&&this.onUp(e)}onUp(e){const t=this.drag;t&&(e||(e=t.lastDrag),e&&this.dragging&&(this.dragging=!1,t.params.onDragStop?.(e),this.eventSvc.dispatchEvent({type:"dragStopped",target:t.params.eElement})),this.destroyDrag())}onKeyDown(e){e.key===To.ESCAPE&&this.cancelDrag()}},$d=e=>{ut(e.handlers);const t=e.oldTouchAction;if(null!=t){const i=e.params.eElement.style;i&&(i.touchAction=t)}},qd=class{constructor(e,t,i,s=null){this.rootEl=e,this.params=t,this.start=i,this.pointerId=s,this.handlers=[],this.lastDrag=null,this.pointerCapture=null,this.eElement=t.eElement}},Yd=e=>{const t=e.target;return t instanceof Element?t:null},Xd={tag:"div",cls:"ag-drag-handle ag-row-drag",attrs:{"aria-hidden":"true"}},Zd={skipAriaHidden:!0},Qd=class extends Wo{constructor(e,t,i,s,o,r=!1){super(),this.cellValueFn=e,this.rowNode=t,this.column=i,this.customGui=s,this.dragStartPixels=o,this.alwaysVisible=r,this.dragSource=null,this.disabled=!1}isCustomGui(){return null!=this.customGui}postConstruct(){const{beans:e,customGui:t}=this;t?this.setDragElement(t,this.dragStartPixels):(this.setTemplate(Xd),this.getGui().appendChild(Bo("rowDrag",e,null)),this.addDragSource()),this.alwaysVisible||this.initCellDrag()}initCellDrag(){const{beans:e,rowNode:t}=this,i=this.refreshVisibility.bind(this);this.addManagedListeners(e.eventSvc,{rowDragVisibilityChanged:i}),this.addManagedListeners(t,{dataChanged:i,cellChanged:i}),this.refreshVisibility()}setDragElement(e,t){this.setTemplateFromElement(e,void 0,void 0,!0),this.addDragSource(t)}refreshVisibility(){if(this.alwaysVisible)return;const{beans:e,column:t,rowNode:i}=this,{gos:s,dragAndDrop:o,rowDragSvc:r}=e,n=r?.visibility;let a=!("suppress"===n||"hidden"===n&&!o?.hasExternalDropZones()),l=a;if(a&&!this.isCustomGui()&&t){const e=t.getColDef().rowDrag;if(!1===e)a=!1;else{const s="function"==typeof e;l=t.isRowDrag(i),a=s||l}}a&&l&&i.footer&&s.get("rowDragManaged")&&(l=!1,a=!0),l&&(l=a),a||this.setDisplayed(a,Zd),l||this.setVisible(l,Zd),this.setDisabled(!l||"disabled"===n&&!o?.hasExternalDropZones()),a&&this.setDisplayed(a,Zd),l&&this.setVisible(l,Zd)}setDisabled(e){e!==this.disabled&&(this.disabled=e,this.getGui()?.classList?.toggle("ag-drag-handle-disabled",e))}getSelectedNodes(){const e=this.rowNode;if(!this.gos.get("rowDragMultiRow"))return[e];const t=this.beans.selectionSvc?.getSelectedNodes()??[];return-1!==t.indexOf(e)?t:[e]}getDragItem(){const{column:e,rowNode:t}=this;return{rowNode:t,rowNodes:this.getSelectedNodes(),columns:e?[e]:void 0,defaultTextValue:this.cellValueFn()}}addDragSource(e=4){if(this.dragSource&&this.removeDragSource(),this.gos.get("rowDragManaged")&&this.rowNode.footer)return;const t=this.getGui();if(this.gos.get("enableCellTextSelection")){this.removeMouseDownListener();const e=st("pointerdown")?{pointerdown:ht}:{mousedown:ht};this.mouseDownListener=this.addManagedElementListeners(t,e)[0]}const i=this.getLocaleTextFunc();this.dragSource={type:2,eElement:t,dragItemName:e=>this.getDragItemName(e,i),getDragItem:()=>this.getDragItem(),dragStartPixels:e,dragSourceDomDataKey:this.gos.getDomDataKey()},this.beans.dragAndDrop.addDragSource(this.dragSource,!0)}getDragItemName(e,t){const i=e?.dragItem||this.getDragItem(),s=(e?.dropTarget?.rows.length??i.rowNodes?.length)||1,o=this.column?.getColDef()?.rowDragText??this.gos.get("rowDragText");if(o)return o(i,s);if(1!==s)return`${s} ${t("rowDragRows","rows")}`;const r=this.cellValueFn();return r||`1 ${t("rowDragRow","rows")}`}destroy(){this.removeDragSource(),this.removeMouseDownListener(),super.destroy()}removeDragSource(){this.dragSource&&(this.beans.dragAndDrop.removeDragSource(this.dragSource),this.dragSource=null)}removeMouseDownListener(){this.mouseDownListener&&(this.mouseDownListener(),this.mouseDownListener=void 0)}},Jd=class{constructor(e){this.tickingInterval=null,this.onScrollCallback=null,this.scrollContainer=e.scrollContainer,this.scrollHorizontally=e.scrollAxis.includes("x"),this.scrollVertically=e.scrollAxis.includes("y"),this.scrollByTick=e.scrollByTick??20,e.onScrollCallback&&(this.onScrollCallback=e.onScrollCallback),this.scrollVertically&&(this.getVerticalPosition=e.getVerticalPosition,this.setVerticalPosition=e.setVerticalPosition),this.scrollHorizontally&&(this.getHorizontalPosition=e.getHorizontalPosition,this.setHorizontalPosition=e.setHorizontalPosition),this.shouldSkipVerticalScroll=e.shouldSkipVerticalScroll||(()=>!1),this.shouldSkipHorizontalScroll=e.shouldSkipHorizontalScroll||(()=>!1)}get scrolling(){return null!==this.tickingInterval}check(e,t=!1){const i=t||this.shouldSkipVerticalScroll();if(i&&this.shouldSkipHorizontalScroll())return;const s=this.scrollContainer.getBoundingClientRect(),o=this.scrollByTick;this.tickLeft=e.clientXs.right-o,this.tickUp=e.clientYs.bottom-o&&!i,this.tickLeft||this.tickRight||this.tickUp||this.tickDown?this.ensureTickingStarted():this.ensureCleared()}ensureTickingStarted(){null===this.tickingInterval&&(this.tickingInterval=window.setInterval(this.doTick.bind(this),100),this.tickCount=0)}doTick(){this.tickCount++;const e=this.tickCount>20?200:this.tickCount>10?80:40;if(this.scrollVertically){const t=this.getVerticalPosition();this.tickUp&&this.setVerticalPosition(t-e),this.tickDown&&this.setVerticalPosition(t+e)}if(this.scrollHorizontally){const t=this.getHorizontalPosition();this.tickLeft&&this.setHorizontalPosition(t-e),this.tickRight&&this.setHorizontalPosition(t+e)}this.onScrollCallback&&this.onScrollCallback()}ensureCleared(){this.tickingInterval&&(window.clearInterval(this.tickingInterval),this.tickingInterval=null)}},ec=class{constructor(){this.reordered=!1,this.removals=[],this.updates=new Set,this.adds=new Set}},tc=e=>{let t=e.childrenAfterGroup;for(;t?.length;){const e=t[0];if(e.sourceRowIndex>=0)return e;t=e.childrenAfterGroup}},ic=(e,t,i,s)=>{if(!t.size||!e)return!1;let o=!1;const r=e.length??0;let n=-1;i&&(n=i.sourceRowIndex,(i=n<0?tc(i):null)&&(n=i.sourceRowIndex)),n<0||n>=r?n=r:s||++n;let a=n,l=Math.min(n,r-1);for(const e of t){const t=e.sourceRowIndex;tl&&(l=t)}let d=a;for(let i=a;i=n;--i){const s=e[i];t.has(s)||(s.sourceRowIndex!==c&&(s.sourceRowIndex=c,e[c]=s,o=!0),--c)}for(const i of t)i.sourceRowIndex!==d&&(i.sourceRowIndex=d,e[d]=i,o=!0),++d;return o};function sc(e,t){return zl(e,t.target)?.getFocusedCellPosition()??null}function oc(e,t){const i=xi(e.gos,"normal"),s=t;let o,r;null!=s.clientX||null!=s.clientY?(o=s.clientX,r=s.clientY):(o=s.x,r=s.y);const{pageFirstPixel:n}=e.pageBounds.getCurrentPagePixelRange();if(r+=n,i){const t=e.ctrlsSvc.getScrollFeature(),i=t.getVScrollPosition();o+=t.getHScrollPosition().left,r+=i.top}return{x:o,y:r}}var rc=class{constructor(e,t){this.active=!0,this.nodeIdsToColumns={},this.mapToItems={},this.keepingColumns=e,this.pathRoot={rowNode:t,children:null},this.mapToItems[t.id]=this.pathRoot}depthFirstSearchChangedPath(e,t){const{rowNode:i,children:s}=e;if(s)for(let e=0;ei[e.getId()])}getNotValueColumnsForNode(e,t){if(!this.keepingColumns)return null;const i=this.nodeIdsToColumns[e.id];return t.filter(e=>!i[e.getId()])}},nc=class extends wt{constructor(e){super(),this.eContainer=e,this.lastDraggingEvent=null,this.autoScroll=null,this.autoScrollChanged=!1,this.autoScrollChanging=!1,this.autoScrollOldV=null}postConstruct(){const e=this.beans;e.ctrlsSvc.whenReady(this,t=>{const i=()=>t.gridBodyCtrl.scrollFeature.getVScrollPosition().top,s=new Jd({scrollContainer:t.gridBodyCtrl.eBodyViewport,scrollAxis:"y",getVerticalPosition:i,setVerticalPosition:e=>t.gridBodyCtrl.scrollFeature.setVerticalScrollPosition(e),onScrollCallback:()=>{const t=i();if(this.autoScrollOldV!==t)return this.autoScrollOldV=t,void(this.autoScrollChanging=!0);const s=this.autoScrollChanging;this.autoScrollChanged=s,this.autoScrollChanging=!1,s&&(e.dragAndDrop?.nudge(),this.autoScrollChanged=!1)}});this.autoScroll=s,this.clearAutoScroll()})}destroy(){super.destroy(),this.clearAutoScroll(),this.autoScroll=null,this.lastDraggingEvent=null,this.eContainer=null}getContainer(){return this.eContainer}isInterestedIn(e){return 2===e}getIconName(e){return!1===e?.dropTarget?.allowed||"visible"!==this.beans.rowDragSvc.visibility?"notAllowed":"move"}getRowNodes(e){if(!this.isFromThisGrid(e))return e.dragItem.rowNodes||[];const t=e.dragItem.rowNode;if(this.gos.get("rowDragMultiRow")){const e=this.beans.selectionSvc?.getSelectedNodes();if(e&&e.indexOf(t)>=0)return e.slice().sort(lc)}return[t]}onDragEnter(e){this.dragging(e,!0)}onDragging(e){this.dragging(e,!1)}dragging(e,t){const{lastDraggingEvent:i,beans:s}=this;if(t){const t=this.getRowNodes(e);e.dragItem.rowNodes=t,dc(t,!0)}this.lastDraggingEvent=e;const o=e.fromNudge,r=this.makeRowsDrop(i,e,o,!1);s.rowDropHighlightSvc?.fromDrag(e),t&&this.dispatchGridEvent("rowDragEnter",e),this.dispatchGridEvent("rowDragMove",e);const n=this.autoScroll;r?.rowDragManaged&&r.moved&&r.allowed&&r.sameGrid&&!r.suppressMoveWhenRowDragging&&(!o&&!n?.scrolling||this.autoScrollChanged)&&this.dropRows(r),n?.check(e.event)}isFromThisGrid(e){return e.dragSource.dragSourceDomDataKey===this.gos.getDomDataKey()}makeRowsDrop(e,t,i,s){const{beans:o,gos:r}=this,n=this.newRowsDrop(t,s),a=o.rowModel;if(t.dropTarget=n,t.changed=!1,!n)return null;let{sameGrid:l,rootNode:d,source:c,target:u}=n;u??(u=a.getRow(a.getRowCount()-1)??null);const h=this.beans.groupEditSvc,g=!!h?.canSetParent(n);let p=null;if(u?.footer){const e=_a(a,-1,u)??_a(a,1,u);g&&(p=u.sibling??d),u=e??null}u?.detail&&(u=u.parent),n.moved&&(n.moved=c!==u);let m=.5;if(u&&(m=l&&n.moved&&(p||!g)?c.rowIndex>u.rowIndex?-.5:.5:(n.y-u.rowTop-u.rowHeight/2)/u.rowHeight||0),!g&&l&&u&&n.moved&&yi(r)){const e=cc(a,n);e&&(m=c.rowIndex>e.rowIndex?-.5:.5,u=e,n.moved&&(n.moved=c!==u))}return n.target=u,n.newParent=p,n.pointerPos=uc(u,n.y),n.yDelta=m,h?.fixRowsDrop(n,g,i,m),this.validateRowsDrop(n,g,s),t.changed||(t.changed=ac(e?.dropTarget,n)),n}newRowsDrop(e,t){const{beans:i,gos:s}=this,o=i.rowModel.rootNode,r=!!yi(s)&&s.get("rowDragManaged"),n=s.get("suppressMoveWhenRowDragging"),a=this.isFromThisGrid(e);let{rowNode:l,rowNodes:d}=e.dragItem;if(d||(d=l?[l]:[]),l||(l=d[0]),!l||!o)return null;const c=this.beans.dragAndDrop.isDropZoneWithinThisGrid(e);let u=!0;!r||d.length&&"visible"===i.rowDragSvc.visibility&&(!n&&a||c)||(u=!1);const h=oc(i,e).y,g=this.getOverNode(h);return{api:i.gridApi,context:i.gridOptions.context,draggingEvent:e,rowDragManaged:r,suppressMoveWhenRowDragging:n,sameGrid:a,withinGrid:c,treeData:!1,rootNode:o,moved:l!==g,y:h,overNode:g,overIndex:g?.rowIndex??-1,pointerPos:"none",position:"none",source:l,target:g??null,newParent:null,rows:d,allowed:u,highlight:!t&&r&&n&&(c||!a),yDelta:0,inside:!1,droppedManaged:!1}}validateRowsDrop(e,t,i){const{source:s,target:o,yDelta:r,inside:n,moved:a,rowDragManaged:l,suppressMoveWhenRowDragging:d}=e;e.moved&&(e.moved=s!==o);const{position:c,fallbackPosition:u}=this.computeDropPosition(a,n,r);e.position=c,t||(e.newParent=null),this.enforceSuppressMoveWhenRowDragging(e,d,"initial");const h=(!l||e.allowed)&&this.gos.get("isRowValidDropPosition");h&&this.applyDropValidator(e,t,i,l,h),l&&(e.rows=this.filterRows(e)),this.beans.groupEditSvc?.clearNewSameParent(e,t),this.enforceSuppressMoveWhenRowDragging(e,d,"final"),"inside"!==e.position||e.allowed&&e.newParent||(e.position=u)}computeDropPosition(e,t,i){const s=i<0?"above":"below";return e?{position:t?"inside":s,fallbackPosition:s}:{position:"none",fallbackPosition:s}}enforceSuppressMoveWhenRowDragging(e,t,i){t&&("initial"!==i?e.rows.length&&"none"!==e.position||(e.allowed=!1):e.moved||(e.allowed=!1))}applyDropValidator(e,t,i,s,o){this.beans.groupEditSvc?.clearNewSameParent(e,t);const r=o(e);if(!r)return void(e.allowed=!1);if("object"!=typeof r)return;void 0!==r.rows&&(e.rows=r.rows??[]),t&&void 0!==r.newParent&&(e.newParent=r.newParent),void 0!==r.target&&(e.target=r.target),r.position&&(e.position=r.position),void 0!==r.allowed?e.allowed=r.allowed:s||(e.allowed=!0);const n=e.draggingEvent;r.changed&&n&&(n.changed=!0),i||void 0===r.highlight||(e.highlight=r.highlight)}addRowDropZone(e){if(!e.getContainer())return void gi(55);const t=this.beans.dragAndDrop;if(t.findExternalZone(e.getContainer()))return void gi(56);const i={isInterestedIn:e=>2===e,getIconName:()=>"move",external:!0,...e.fromGrid?e:{getContainer:e.getContainer,onDragEnter:e.onDragEnter&&(t=>e.onDragEnter(this.rowDragEvent("rowDragEnter",t))),onDragLeave:e.onDragLeave&&(t=>e.onDragLeave(this.rowDragEvent("rowDragLeave",t))),onDragging:e.onDragging&&(t=>e.onDragging(this.rowDragEvent("rowDragMove",t))),onDragStop:e.onDragStop&&(t=>e.onDragStop(this.rowDragEvent("rowDragEnd",t))),onDragCancel:e.onDragCancel&&(t=>e.onDragCancel(this.rowDragEvent("rowDragCancel",t)))}};t.addDropTarget(i),this.addDestroyFunc(()=>t.removeDropTarget(i))}getRowDropZone(e){return{getContainer:this.getContainer.bind(this),onDragEnter:t=>{this.onDragEnter(t),e?.onDragEnter?.(this.rowDragEvent("rowDragEnter",t))},onDragLeave:t=>{this.onDragLeave(t),e?.onDragLeave?.(this.rowDragEvent("rowDragLeave",t))},onDragging:t=>{this.onDragging(t),e?.onDragging?.(this.rowDragEvent("rowDragMove",t))},onDragStop:t=>{this.onDragStop(t),e?.onDragStop?.(this.rowDragEvent("rowDragEnd",t))},onDragCancel:t=>{this.onDragCancel(t),e?.onDragCancel?.(this.rowDragEvent("rowDragCancel",t))},fromGrid:!0}}getOverNode(e){const{pageBounds:t,rowModel:i}=this.beans,s=e>t.getCurrentPagePixelRange().pageLastPixel?-1:i.getRowIndexAtPixel(e);return s>=0?i.getRow(s):void 0}rowDragEvent(e,t){const i=this.beans,{dragItem:s,dropTarget:o,event:r,vDirection:n}=t,a=o?.rootNode===i.rowModel.rootNode,l=a?o.y:oc(i,t).y,d=a?o.overNode:this.getOverNode(l),c=a?o.overIndex:d?.rowIndex??-1;return{api:i.gridApi,context:i.gridOptions.context,type:e,event:r,node:s.rowNode,nodes:s.rowNodes,overIndex:c,overNode:d,y:l,vDirection:n,rowsDrop:o}}dispatchGridEvent(e,t){const i=this.rowDragEvent(e,t);this.eventSvc.dispatchEvent(i)}onDragLeave(e){this.dispatchGridEvent("rowDragLeave",e),this.stopDragging(e,!1)}onDragStop(e){const t=this.lastDraggingEvent?.dropTarget??null,i=this.makeRowsDrop(this.lastDraggingEvent,e,!1,!0);this.dispatchGridEvent("rowDragEnd",e),i?.allowed&&i.rowDragManaged&&(!t?.droppedManaged||ac(t,i))&&this.dropRows(i),this.stopDragging(e,!0)}onDragCancel(e){this.dispatchGridEvent("rowDragCancel",e),this.stopDragging(e,!0)}stopDragging(e,t){this.clearAutoScroll(),this.beans.groupEditSvc?.stopDragging(t),this.beans.rowDropHighlightSvc?.fromDrag(null),dc(e.dragItem.rowNodes,!1),this.lastDraggingEvent=null}clearAutoScroll(){this.autoScroll?.ensureCleared(),this.autoScrollChanged=!1,this.autoScrollChanging=!1,this.autoScrollOldV=null}dropRows(e){return e.droppedManaged=!0,e.sameGrid?this.csrmMoveRows(e):this.csrmAddRows(e)}csrmAddRows({position:e,target:t,rows:i}){const s=Hi(this.gos),o=this.beans.rowModel,r=i.filter(({data:e,rowPinned:t})=>!o.getRowNode(s?.({data:e,level:0,rowPinned:t})??e.id)).map(({data:e})=>e);if(0===r.length)return!1;let n;if(t){const i=t.sourceRowIndex>=0?t:tc(t);i&&(n=i.sourceRowIndex+("above"===e?0:1))}return o.updateRowData({add:r,addIndex:n}),!0}filterRows(e){const{groupEditSvc:t}=this.beans,{rows:i,sameGrid:s}=e;let o;for(let r=0,n=i.length;r=0)return e.destroyed?void 0:e;const t=this.beans.groupEditSvc;return t?t.csrmFirstLeaf(e):tc(e)}},ac=(e,t)=>!(e===t||e&&e.sameGrid===t.sameGrid&&e.allowed===t.allowed&&e.position===t.position&&e.target===t.target&&e.source===t.source&&e.newParent===t.newParent&&d(e.rows,t.rows)),lc=({rowIndex:e},{rowIndex:t})=>null!==e&&null!==t?e-t:0,dc=(e,t)=>{for(let i=0,s=e?.length||0;i{let i=null,s=t.target;if(s&&t.rows.indexOf(s)<0)return null;const o=t.source;if(!s||!o)return null;let r=s.rowIndex-o.rowIndex;const n=r<0?-1:1;r=t.suppressMoveWhenRowDragging?Math.abs(r):1;const a=new Set(t.rows);do{const t=_a(e,n,s);if(!t)break;a.has(t)||(i=t,--r),s=t}while(r>0);return i},uc=(e,t)=>{const i=e?.rowTop,s=e?.rowHeight??0;if(null==i||!s||s<=0)return"none";const o=t-i,r=.25*s;return o<=r?"above":o>=s-r?"below":"inside"},hc={moduleName:"Drag",version:ii,beans:[class extends Kd{shouldPreventMouseEvent(e){return this.gos.get("enableCellTextSelection")&&super.shouldPreventMouseEvent(e)}}]},gc={moduleName:"DragAndDrop",version:ii,dynamicBeans:{dndSourceComp:class extends Wo{constructor(e,t,i){super(Nd),this.rowNode=e,this.column=t,this.eCell=i}postConstruct(){this.getGui().appendChild(Bo("rowDrag",this.beans,null)),this.addGuiEventListener("mousedown",e=>{e.stopPropagation()}),this.addDragSource(),this.checkVisibility()}addDragSource(){this.addGuiEventListener("dragstart",this.onDragStart.bind(this))}onDragStart(e){const{rowNode:t,column:i,eCell:s,gos:o}=this,r=i.getColDef().dndSourceOnRowDrag,n=e.dataTransfer;if(n.setDragImage(s,0,0),r){r(ms(o,{rowNode:t,dragEvent:e}))}else try{const e=JSON.stringify(t.data);n.setData("application/json",e),n.setData("text/plain",e)}catch(e){}}checkVisibility(){const e=this.column.isDndSource(this.rowNode);this.setDisplayed(e)}}},icons:{rowDrag:"grip"}},pc={moduleName:"SharedDragAndDrop",version:ii,beans:[class extends jo{createEvent(e){return ms(this.gos,e)}createDragImageComp(e){const{gos:t,beans:i}=this,s=(o=i.userCompFactory,r=ms(t,{dragSource:e}),o.getCompDetailsFromGridOptions(Yo,"agDragAndDropImage",r,!0));var o,r;return s?.newAgStackInstance()}handleEnter(e,t){e?.onGridEnter?.(t)}handleExit(e,t){e?.onGridExit?.(t)}warnNoBody(){gi(54)}isDropZoneWithinThisGrid(e){return this.beans.ctrlsSvc.getGridBodyCtrl().eGridBody.contains(e.dropZoneTarget)}registerGridDropTarget(e,t){const i={getContainer:e,isInterestedIn:e=>1===e||0===e,getIconName:()=>"notAllowed"};this.addDropTarget(i),t.addDestroyFunc(()=>this.removeDropTarget(i))}}],dependsOn:[hc],userComponents:{agDragAndDropImage:class extends Wo{constructor(){super(),this.dragSource=null,this.eIcon=Lo,this.eLabel=Lo,this.eGhost=Lo,this.registerCSS(".ag-dnd-ghost{align-items:center;background-color:var(--ag-drag-and-drop-image-background-color);border:var(--ag-drag-and-drop-image-border);border-radius:var(--ag-border-radius);box-shadow:var(--ag-drag-and-drop-image-shadow);color:var(--ag-text-color);cursor:move;display:flex;font-weight:500;gap:var(--ag-cell-widget-spacing);height:var(--ag-header-height);overflow:hidden;padding-left:var(--ag-cell-horizontal-padding);padding-right:var(--ag-cell-horizontal-padding);text-overflow:ellipsis;transform:translateY(calc(var(--ag-spacing)*2));white-space:nowrap}.ag-dnd-ghost-not-allowed{border:var(--ag-drag-and-drop-image-not-allowed-border)}")}postConstruct(){const e=e=>No(e,this.beans,null);this.dropIconMap={pinned:e("columnMovePin"),hide:e("columnMoveHide"),move:e("columnMoveMove"),left:e("columnMoveLeft"),right:e("columnMoveRight"),group:e("columnMoveGroup"),aggregate:e("columnMoveValue"),pivot:e("columnMovePivot"),notAllowed:e("dropNotAllowed")}}init(e){this.dragSource=e.dragSource,this.setTemplate(Uo),this.beans.environment.applyThemeClasses(this.eGhost)}destroy(){this.dragSource=null,super.destroy()}setIcon(e,t){const{eGhost:i,eIcon:s,dragSource:o,dropIconMap:r,gos:n}=this;Te(s);let a=null;e||(e=o?.getDefaultIconName?o.getDefaultIconName():"notAllowed"),a=r[e],i.classList.toggle("ag-dnd-ghost-not-allowed","notAllowed"===e),s.classList.toggle("ag-shake-left-to-right",t),a===r.hide&&n.get("suppressDragLeaveHidesColumns")||a&&s.appendChild(a)}setLabel(e){this.eLabel.textContent=e}}},icons:{columnMovePin:"pin",columnMoveHide:"eye-slash",columnMoveMove:"arrows",columnMoveLeft:"left",columnMoveRight:"right",columnMoveGroup:"group",columnMoveValue:"aggregation",columnMovePivot:"pivot",dropNotAllowed:"not-allowed",rowDrag:"grip"}},mc={moduleName:"RowDrag",version:ii,beans:[class extends wt{constructor(){super(...arguments),this.beanName="rowDropHighlightSvc",this.uiLevel=0,this.dragging=!1,this.row=null,this.position="none"}postConstruct(){this.addManagedEventListeners({modelUpdated:this.onModelUpdated.bind(this)})}onModelUpdated(){const e=this.row,t=this.dragging;e&&null!==e?.rowIndex&&"none"!==this.position?this.set(e,this.position):this.clear(),this.dragging=t}destroy(){this.clear(),super.destroy()}clear(){const e=this.row;this.dragging=!1,e&&(this.uiLevel=0,this.position="none",this.row=null,e.dispatchRowEvent("rowHighlightChanged"))}set(e,t){const i=e!==this.row,s=e.uiLevel,o=t!==this.position,r=s!==this.uiLevel;this.dragging=!1,(i||o||r)&&(i&&this.clear(),this.uiLevel=s,this.position=t,this.row=e,e.dispatchRowEvent("rowHighlightChanged"))}fromDrag(e){const t=e?.dropTarget;if(t){const{highlight:e,target:i,position:s}=t;if(e&&i&&"none"!==s)return this.set(i,s),void(this.dragging=!0)}this.dragging&&this.clear()}},class extends wt{constructor(){super(...arguments),this.beanName="rowDragSvc",this.rowDragFeature=null,this.visibility="suppress"}setupRowDrag(e,t){const i=t.createManagedBean(new nc(e)),s=this.beans.dragAndDrop;s.addDropTarget(i),t.addDestroyFunc(()=>s.removeDropTarget(i)),this.rowDragFeature=i;const o=()=>this.refreshVisibility();this.addManagedPropertyListeners(["rowDragManaged","suppressRowDrag","refreshAfterGroupEdit"],o),this.addManagedEventListeners({newColumnsLoaded:o,columnRowGroupChanged:o,columnPivotModeChanged:o,sortChanged:o,filterChanged:o}),this.visibility=this.computeVisibility()}createRowDragComp(e,t,i,s,o,r){return new Qd(e,t,i,s,o,r)}createRowDragCompForRow(e,t){if(Qi(this.gos))return;const i=this.getLocaleTextFunc();return this.createRowDragComp(()=>`1 ${i("rowDragRow","row")}`,e,void 0,t,void 0,!0)}createRowDragCompForCell(e,t,i,s,o,r){const n=this.gos;if(n.get("rowDragManaged")&&(!yi(n)||n.get("pagination")))return;return this.createRowDragComp(i,e,t,s,o,r)}cancelRowDrag(){this.rowDragFeature?.lastDraggingEvent&&this.beans.dragSvc?.cancelDrag()}computeVisibility(){const e=this.beans,t=e.gos;if(t.get("suppressRowDrag"))return"suppress";if(!t.get("rowDragManaged"))return"visible";const i=e.colModel.isPivotMode();return!i&&!e.rowGroupColsSvc?.columns?.length||t.get("refreshAfterGroupEdit")?i||e.filterManager?.isAnyFilterPresent()||e.sortSvc?.isSortActive()?"disabled":"visible":"hidden"}refreshVisibility(){const e=this.visibility,t=this.computeVisibility();e!==t&&(this.visibility=t,this.eventSvc?.dispatchEvent({type:"rowDragVisibilityChanged"}))}}],apiFunctions:{addRowDropZone:function(e,t){e.rowDragSvc?.rowDragFeature?.addRowDropZone(t)},removeRowDropZone:function(e,t){const i=e.dragAndDrop?.findExternalZone(t.getContainer());i&&e.dragAndDrop?.removeDropTarget(i)},getRowDropZoneParams:function(e,t){return e.rowDragSvc?.rowDragFeature?.getRowDropZone(t)},getRowDropPositionIndicator:function(e){const t=e.rowDropHighlightSvc;return t?{row:t.row,dropIndicatorPosition:t.position}:{row:null,dropIndicatorPosition:"none"}},setRowDropPositionIndicator:function(e,t){const i=e.rowDropHighlightSvc;if(!i)return;const s=t?.row;let o=t?.dropIndicatorPosition;"above"!==o&&"below"!==o&&"inside"!==o&&(o="none");const r=s?.rowIndex;null==r||"none"===o?i.clear():i.set(s,o)}},dependsOn:[pc]},fc={moduleName:"HorizontalResize",version:ii,beans:[class extends wt{constructor(){super(...arguments),this.beanName="horizontalResizeSvc"}addResizeBar(e){const t={dragStartPixels:e.dragStartPixels||0,eElement:e.eResizeBar,onDragStart:this.onDragStart.bind(this,e),onDragStop:this.onDragStop.bind(this,e),onDragging:this.onDragging.bind(this,e),onDragCancel:this.onDragStop.bind(this,e),includeTouch:!0,stopPropagationForTouch:!0},{dragSvc:i}=this.beans;i.addDragSource(t);return()=>i.removeDragSource(t)}onDragStart(e,t){this.dragStartX=t.clientX,this.setResizeIcons();const i=t instanceof MouseEvent&&!0===t.shiftKey;e.onResizeStart(i)}setResizeIcons(){const e=this.beans.ctrlsSvc.get("gridCtrl");e.setResizeCursor(1),e.disableUserSelect(!0)}onDragStop(e){e.onResizeEnd(this.resizeAmount),this.resetIcons()}resetIcons(){const e=this.beans.ctrlsSvc.get("gridCtrl");e.setResizeCursor(!1),e.disableUserSelect(!1)}onDragging(e,t){this.resizeAmount=t.clientX-this.dragStartX,e.onResizing(this.resizeAmount)}}],dependsOn:[hc]};var Cc=class extends wt{constructor(e){super(),this.pinned=e,this.columnsToAggregate=[],this.columnsToGroup=[],this.columnsToPivot=[]}onDragEnter(e){if(this.clearColumnsList(),this.gos.get("functionsReadOnly"))return;const t=e.dragItem.columns;if(t)for(const e of t)e.isPrimary()&&(e.isAnyFunctionActive()||(e.isAllowValue()?this.columnsToAggregate.push(e):e.isAllowRowGroup()?this.columnsToGroup.push(e):e.isAllowPivot()&&this.columnsToPivot.push(e)))}getIconName(){return this.columnsToAggregate.length+this.columnsToGroup.length+this.columnsToPivot.length>0?this.pinned?"pinned":"move":null}onDragLeave(e){this.clearColumnsList()}clearColumnsList(){this.columnsToAggregate.length=0,this.columnsToGroup.length=0,this.columnsToPivot.length=0}onDragging(e){}onDragStop(e){const{valueColsSvc:t,rowGroupColsSvc:i,pivotColsSvc:s}=this.beans;this.columnsToAggregate.length>0&&t?.addColumns(this.columnsToAggregate,"toolPanelDragAndDrop"),this.columnsToGroup.length>0&&i?.addColumns(this.columnsToGroup,"toolPanelDragAndDrop"),this.columnsToPivot.length>0&&s?.addColumns(this.columnsToPivot,"toolPanelDragAndDrop")}onDragCancel(){this.clearColumnsList()}};function vc(e){const{isFromHeader:t,fromLeft:i,xPosition:s,fromEnter:o,fakeEvent:r,pinned:n,gos:a,colModel:c,colMoves:u,visibleCols:h}=e;let{allMovingColumns:g}=e;t&&(g=function(e){const t=[...e];for(const i of e){let e=null,s=i.getParent();for(;null!=s&&1===s.getDisplayedLeafColumns().length;)e=s,s=s.getParent();if(null!=e){const i=e.getColGroupDef()?.marryChildren?e.getProvidedColumnGroup().getLeafColumns():e.getLeafColumns();for(const e of i)t.includes(e)||t.push(e)}}return t}(g));const p=g.slice();!function(e,t){if(!t||t.length<=1)return;t.filter(t=>e.indexOf(t)<0).length>0||t.sort((t,i)=>e.indexOf(t)-e.indexOf(i))}(c.getCols(),p);const m=function(e){const{movingCols:t,draggingRight:i,xPosition:s,pinned:o,gos:r,colModel:n,visibleCols:a}=e,l=r.get("suppressMovableColumns")||t.some(e=>e.getColDef().suppressMovable);if(l)return[];const d=function(e,t){switch(t){case"left":return e.leftCols;case"right":return e.rightCols;default:return e.centerCols}}(a,o),c=n.getCols(),u=d.filter(e=>t.includes(e)),h=d.filter(e=>!t.includes(e)),g=c.filter(e=>!t.includes(e));let p,m=0,f=s;if(i){let e=0;for(const t of u)e+=t.getActualWidth();f-=e}if(f>0){for(let e=0;e0){const e=h[m-1];p=g.indexOf(e)+1}else p=g.indexOf(h[0]),-1===p&&(p=0);const C=[p],v=(e,t)=>e-t;if(i){let e=p+1;const t=c.length-1;for(;e<=t;)C.push(e),e++;C.sort(v)}else{let e=p;const t=c.length-1;let i=c[e];for(;e<=t&&d.indexOf(i)<0;)e++,C.push(e),i=c[e];e=p-1;const s=0;for(;e>=s;)C.push(e),e--;C.sort(v).reverse()}return C}({movingCols:p,draggingRight:i,xPosition:s,pinned:n,gos:a,colModel:c,visibleCols:h}),f=function(e,t){const i=t.getCols(),s=e.map(e=>i.indexOf(e)).sort((e,t)=>e-t),o=s[0],r=l(s);return r-o!==s.length-1?null:o}(p,c);if(0===m.length)return;const C=m[0];if(null!==f&&(t||!o)&&!r){if(!i&&C>=f)return;if(i&&C<=f)return}const v=function(e,t,i,s){const o=s.allCols;let r=null,n=null;for(let s=0;so.includes(e));if(null===n)n=c;else if(!d(c,n))break;const u=bc(l);(null===r||uc.getCols().length-p.length?void 0:{columns:p,toIndex:w}}function wc(e){const{columns:t,toIndex:i}=vc(e)||{},{finished:s,colMoves:o}=e;return t&&null!=i?(o.moveColumns(t,i,"uiColumnMoved",s),s?null:{columns:t,toIndex:i}):null}function bc(e){function t(e){const t=[];let i=e.getOriginalParent();for(;null!=i;)t.push(i),i=i.getOriginalParent();return t}let i=0;for(let s=0;sr.length?[o,r]:[r,o];for(const e of o)-1===r.indexOf(e)&&i++}return i}function yc(e){const{pinned:t,fromKeyboard:i,gos:s,ctrlsSvc:o,useHeaderRow:r,skipScrollPadding:n}=e;let a=o.getHeaderRowContainerCtrl(t)?.eViewport,{x:l}=e;return a?(i&&(l-=a.getBoundingClientRect().left),s.get("enableRtl")&&(r&&(a=a.querySelector(".ag-header-row")),l=a.clientWidth-l),null!=t||n||(l+=o.get("center").getCenterViewportScrollLeft()),l):0}function Sc(e,t){for(const i of e)i.moving=t,i.dispatchColEvent("movingChanged","uiColumnMoved")}var xc=class extends wt{constructor(e){super(),this.pinned=e,this.needToMoveLeft=!1,this.needToMoveRight=!1,this.lastMovedInfo=null,this.isCenterContainer=!f(e)}postConstruct(){this.beans.ctrlsSvc.whenReady(this,e=>{this.gridBodyCon=e.gridBodyCtrl})}getIconName(){const{pinned:e,lastDraggingEvent:t}=this,{dragItem:i}=t||{},s=i?.columns??[];for(const t of s){const s=t.getPinned();if(t.getColDef().lockPinned){if(s==e)return"move";continue}const o=i?.containerType;if(o===e||!e)return"move";if(e&&(!s||o!==e))return"pinned"}return"notAllowed"}onDragEnter(e){const t=e.dragItem,i=t.columns;if(0===e.dragSource.type)this.setColumnsVisible(i,!0,"uiColumnDragged");else{const e=t.visibleState,s=(i||[]).filter(t=>e[t.getId()]&&!t.isVisible());this.setColumnsVisible(s,!0,"uiColumnDragged")}this.gos.get("suppressMoveWhenColumnDragging")||this.attemptToPinColumns(i,this.pinned),this.onDragging(e,!0,!0)}onDragging(e=this.lastDraggingEvent,t=!1,i=!1,s=!1){const{gos:o,ctrlsSvc:r}=this.beans,n=o.get("suppressMoveWhenColumnDragging");if(s&&!n)return void this.finishColumnMoving();if(this.lastDraggingEvent=e,!e||!s&&C(e.hDirection))return;const a=yc({x:e.x,pinned:this.pinned,gos:o,ctrlsSvc:r});t||this.checkCenterForScrolling(a),n?this.handleColumnDragWhileSuppressingMovement(e,t,i,a,s):this.handleColumnDragWhileAllowingMovement(e,t,i,a,s)}onDragLeave(){this.ensureIntervalCleared(),this.clearHighlighted(),this.updateDragItemContainerType(),this.lastMovedInfo=null}onDragStop(){this.onDragging(this.lastDraggingEvent,!1,!0,!0),this.ensureIntervalCleared(),this.lastMovedInfo=null}onDragCancel(){this.clearHighlighted(),this.ensureIntervalCleared(),this.lastMovedInfo=null}setColumnsVisible(e,t,i){if(!e?.length)return;const s=e.filter(e=>!e.getColDef().lockVisible);s.length&&this.beans.colModel.setColsVisible(s,t,i)}finishColumnMoving(){this.clearHighlighted();const e=this.lastMovedInfo;if(!e)return;const{columns:t,toIndex:i}=e;this.beans.colMoves.moveColumns(t,i,"uiColumnMoved",!0)}updateDragItemContainerType(){const{lastDraggingEvent:e}=this;if(this.gos.get("suppressMoveWhenColumnDragging")||!e)return;const t=e.dragItem;t&&(t.containerType=this.pinned)}handleColumnDragWhileSuppressingMovement(e,t,i,s,o){const r=this.getAllMovingColumns(e,!0);if(o){const e=this.isAttemptingToPin(r);e&&this.attemptToPinColumns(r,void 0,!0);const{fromLeft:s,xPosition:o}=this.getNormalisedXPositionInfo(r,e)||{};if(null==s||null==o)return void this.finishColumnMoving();this.moveColumnsAfterHighlight({allMovingColumns:r,xPosition:o,fromEnter:t,fakeEvent:i,fromLeft:s})}else{if(!this.beans.dragAndDrop.isDropZoneWithinThisGrid(e))return;this.highlightHoveredColumn(r,s)}}handleColumnDragWhileAllowingMovement(e,t,i,s,o){const r=this.getAllMovingColumns(e),n="right"===this.normaliseDirection(e.hDirection),a=1===e.dragSource.type,l=wc({...this.getMoveColumnParams({allMovingColumns:r,isFromHeader:a,xPosition:s,fromLeft:n,fromEnter:t,fakeEvent:i}),finished:o});l&&(this.lastMovedInfo=l)}getAllMovingColumns(e,t=!1){const i=e.dragSource.getDragItem();let s=null;t?(s=i.columnsInSplit,s||(s=i.columns)):s=i.columns;return s?s.filter(e=>!e.getColDef().lockPinned||e.getPinned()==this.pinned):[]}getMoveColumnParams(e){const{allMovingColumns:t,isFromHeader:i,xPosition:s,fromLeft:o,fromEnter:r,fakeEvent:n}=e,{gos:a,colModel:l,colMoves:d,visibleCols:c}=this.beans;return{allMovingColumns:t,isFromHeader:i,fromLeft:o,xPosition:s,pinned:this.pinned,fromEnter:r,fakeEvent:n,gos:a,colModel:l,colMoves:d,visibleCols:c}}highlightHoveredColumn(e,t){const{gos:i,colModel:s}=this.beans,o=i.get("enableRtl"),r=s.getCols().filter(e=>e.isVisible()&&e.getPinned()===this.pinned);let n,a=null,d=null,c=null;for(const e of r){if(d=e.getActualWidth(),a=this.getNormalisedColumnLeft(e,0,o),null!=a){if(a<=t&&a+d>=t){c=e;break}}a=null,d=null}if(c)-1!==e.indexOf(c)&&(c=null);else{for(let e=r.length-1;e>=0;e--){const t=r[e],i=r[e].getParent();if(!i){c=t;break}const s=i?.getDisplayedLeafColumns();if(s.length){c=l(s);break}}if(!c)return;a=this.getNormalisedColumnLeft(c,0,o),d=c.getActualWidth()}if(null!=c&&null!=a&&null!=d){if(t-a7;return t&&i||e.some(e=>e.getPinned()!==this.pinned)}moveColumnsAfterHighlight(e){const{allMovingColumns:t,xPosition:i,fromEnter:s,fakeEvent:o,fromLeft:r}=e,n=this.getMoveColumnParams({allMovingColumns:t,isFromHeader:!0,xPosition:i,fromLeft:r,fromEnter:s,fakeEvent:o}),{columns:a,toIndex:l}=vc(n)||{};a&&null!=l&&(this.lastMovedInfo={columns:a,toIndex:l}),this.finishColumnMoving()}clearHighlighted(){const{lastHighlightedColumn:e}=this;e&&(Fc(e.column,null),this.lastHighlightedColumn=null)}checkCenterForScrolling(e){if(!this.isCenterContainer)return;const t=this.beans.ctrlsSvc.get("center"),i=t.getCenterViewportScrollLeft(),s=i+t.getCenterWidth();let o,r;this.gos.get("enableRtl")?(o=es-50):(r=es-50),this.needToMoveRight=o,this.needToMoveLeft=r,r||o?this.ensureIntervalStarted():this.ensureIntervalCleared()}ensureIntervalStarted(){this.movingIntervalId||(this.intervalCount=0,this.failedMoveAttempts=0,this.movingIntervalId=window.setInterval(this.moveInterval.bind(this),100),this.beans.dragAndDrop.setDragImageCompIcon(this.needToMoveLeft?"left":"right",!0))}ensureIntervalCleared(){this.movingIntervalId&&(window.clearInterval(this.movingIntervalId),this.movingIntervalId=null,this.failedMoveAttempts=0,this.beans.dragAndDrop.setDragImageCompIcon(this.getIconName()))}moveInterval(){let e;this.intervalCount++,e=10+5*this.intervalCount,e>100&&(e=100);let t=null;const i=this.gridBodyCon.scrollFeature;if(this.needToMoveLeft?t=i.scrollHorizontally(-e):this.needToMoveRight&&(t=i.scrollHorizontally(e)),0!==t)this.onDragging(this.lastDraggingEvent),this.failedMoveAttempts=0;else{this.failedMoveAttempts++;const{pinnedCols:e,dragAndDrop:t,gos:i}=this.beans;if(this.failedMoveAttempts<=8||!e)return;if(t.setDragImageCompIcon("pinned"),!i.get("suppressMoveWhenColumnDragging")){const e=this.lastDraggingEvent?.dragItem.columns;this.attemptToPinColumns(e,void 0,!0)}}}getPinDirection(){return this.needToMoveLeft||"left"===this.pinned?"left":this.needToMoveRight||"right"===this.pinned?"right":void 0}attemptToPinColumns(e,t,i=!1){const s=(e||[]).filter(e=>!e.getColDef().lockPinned);if(!s.length)return 0;i&&(t=this.getPinDirection());const{pinnedCols:o,dragAndDrop:r}=this.beans;return o?.setColsPinned(s,t,"uiColumnDragged"),i&&r.nudge(),s.length}destroy(){super.destroy(),this.lastDraggingEvent=null,this.clearHighlighted(),this.lastMovedInfo=null}};function Fc(e,t){e.highlighted!==t&&(e.highlighted=t,e.dispatchColEvent("headerHighlightChanged","uiColumnMoved"))}var Rc=class extends wt{constructor(e,t){super(),this.pinned=e,this.eContainer=t}postConstruct(){const{ctrlsSvc:e,dragAndDrop:t}=this.beans,i=this.pinned;e.whenReady(this,e=>{let t;const s=e.gridBodyCtrl.eBodyViewport;switch(i){case"left":t=[[s,e.left.eContainer],[e.bottomLeft.eContainer],[e.topLeft.eContainer]];break;case"right":t=[[s,e.right.eContainer],[e.bottomRight.eContainer],[e.topRight.eContainer]];break;default:t=[[s,e.center.eViewport],[e.bottomCenter.eViewport],[e.topCenter.eViewport]]}this.eSecondaryContainers=t}),this.moveColumnFeature=this.createManagedBean(new xc(i)),this.bodyDropPivotTarget=this.createManagedBean(new Cc(i)),t.addDropTarget(this),this.addDestroyFunc(()=>t.removeDropTarget(this))}isInterestedIn(e){return 1===e||0===e&&this.gos.get("allowDragFromColumnsToolPanel")}getSecondaryContainers(){return this.eSecondaryContainers}getContainer(){return this.eContainer}getIconName(){return this.currentDropListener.getIconName()}isDropColumnInPivotMode(e){return this.beans.colModel.isPivotMode()&&0===e.dragSource.type}onDragEnter(e){this.currentDropListener=this.isDropColumnInPivotMode(e)?this.bodyDropPivotTarget:this.moveColumnFeature,this.currentDropListener.onDragEnter(e)}onDragLeave(e){this.currentDropListener.onDragLeave(e)}onDragging(e){this.currentDropListener.onDragging(e)}onDragStop(e){this.currentDropListener.onDragStop(e)}onDragCancel(){this.currentDropListener.onDragCancel()}};var Pc={moduleName:"ColumnMove",version:ii,beans:[class extends wt{constructor(){super(...arguments),this.beanName="colMoves"}moveColumnByIndex(e,t,i){const s=this.beans.colModel.getCols();if(!s)return;const o=s[e];this.moveColumns([o],t,i)}moveColumns(e,t,i,s=!0){const{colModel:o,colAnimation:r,visibleCols:n,eventSvc:a}=this.beans,l=o.getCols();if(!l)return;if(t>l.length-e.length)return void gi(30,{toIndex:t});r?.start();const d=o.getColsForKeys(e);this.doesMovePassRules(d,t)&&(g(o.getCols(),d,t),n.refresh(i),a.dispatchEvent({type:"columnMoved",columns:d,column:1===d.length?d[0]:null,toIndex:t,finished:s,source:i})),r?.finish()}doesMovePassRules(e,t){const i=this.getProposedColumnOrder(e,t);return this.doesOrderPassRules(i)}doesOrderPassRules(e){const{colModel:t,gos:i}=this.beans;if(!fo(e,t.getColTree()))return!1;return!!(e=>{const t=e=>e?"left"===e||!0===e?-1:1:0,s=i.get("enableRtl");let o=s?1:-1,r=!0;for(const i of e){const e=t(i.getColDef().lockPosition);s?e>o&&(r=!1):efunction(e,t){const i=e.getProvidedColumnGroup().getLeafColumns(),s={};for(const e of i)s[e.getId()]=e.isVisible();const o=[];for(const e of t)i.indexOf(e)>=0&&(o.push(e),u(i,e));for(const e of i)o.push(e);const r=[],n=e.getLeafColumns();for(const e of o)-1!==n.indexOf(e)&&r.push(e);return{columns:o,columnsInSplit:r,visibleState:s,containerType:r[0]?.pinned}}(t,n.allCols):()=>function(e){const t={};return t[e.getId()]=e.isVisible(),{columns:[e],visibleState:t,containerType:e.pinned}}(t),h={type:1,eElement:e,getDefaultIconName:()=>a?"hide":"notAllowed",getDragItem:c,dragItemName:i,onDragStarted:()=>{a=!s.get("suppressDragLeaveHidesColumns"),Sc(d,!0)},onDragStopped:()=>Sc(d,!1),onDragCancelled:()=>Sc(d,!1),onGridEnter:e=>{if(a){const{columns:t=[],visibleState:i}=e??{},s=l?e=>!i||i[e.getColId()]:()=>!0,r=t.filter(e=>!e.getColDef().lockVisible&&s(e));o.setColsVisible(r,!0,"uiColumnMoved")}},onGridExit:e=>{if(a){const t=e?.columns?.filter(e=>!e.getColDef().lockVisible)||[];o.setColsVisible(t,!1,"uiColumnMoved")}}};return r.addDragSource(h,!0),h}},class extends wt{constructor(){super(...arguments),this.beanName="colAnimation",this.executeNextFuncs=[],this.executeLaterFuncs=[],this.active=!1,this.activeNext=!1,this.suppressAnimation=!1,this.animationThreadCount=0}postConstruct(){this.beans.ctrlsSvc.whenReady(this,e=>this.gridBodyCtrl=e.gridBodyCtrl)}isActive(){return this.active&&!this.suppressAnimation}setSuppressAnimation(e){this.suppressAnimation=e}start(){if(this.active)return;const{gos:e}=this;e.get("suppressColumnMoveAnimation")||e.get("enableRtl")||(this.ensureAnimationCssClassPresent(),this.active=!0,this.activeNext=!0)}finish(){this.active&&this.flush(()=>this.activeNext=!1,()=>this.active=!1)}executeNextVMTurn(e){this.activeNext?this.executeNextFuncs.push(e):e()}executeLaterVMTurn(e){this.active?this.executeLaterFuncs.push(e):e()}ensureAnimationCssClassPresent(){this.animationThreadCount++;const e=this.animationThreadCount,{gridBodyCtrl:t}=this;t.setColumnMovingCss(!0),this.executeLaterFuncs.push(()=>{this.animationThreadCount===e&&t.setColumnMovingCss(!1)})}flush(e,t){const{executeNextFuncs:i,executeLaterFuncs:s}=this;if(0===i.length&&0===s.length)return e(),void t();const o=e=>{for(;e.length;){const t=e.pop();t&&t()}};this.beans.frameworkOverrides.wrapIncoming(()=>{window.setTimeout(()=>{e(),o(i)},0),window.setTimeout(()=>{t(),o(s)},200)})}}],apiFunctions:{moveColumnByIndex:function(e,t,i){e.colMoves?.moveColumnByIndex(t,i,"api")},moveColumns:function(e,t,i){e.colMoves?.moveColumns(t,i,"api")}},dependsOn:[pc],css:[":where(.ag-ltr) :where(.ag-column-moving){.ag-cell,.ag-header-cell,.ag-spanned-cell-wrapper{transition:left .2s}.ag-header-group-cell{transition:left .2s,width .2s}}:where(.ag-rtl) :where(.ag-column-moving){.ag-cell,.ag-header-cell,.ag-spanned-cell-wrapper{transition:right .2s}.ag-header-group-cell{transition:right .2s,width .2s}}"]},Mc={moduleName:"AutoWidth",version:ii,beans:[class extends wt{constructor(){super(...arguments),this.beanName="autoWidthCalc"}postConstruct(){this.beans.ctrlsSvc.whenReady(this,e=>{this.centerRowContainerCtrl=e.center})}getPreferredWidthForColumn(e,t){const i=this.getHeaderCellForColumn(e);if(!i)return-1;const s=this.beans.rowRenderer.getAllCellsNotSpanningForColumn(e);return t||s.push(i),this.getPreferredWidthForElements(s)}getPreferredWidthForColumnGroup(e){const t=this.getHeaderCellForColumn(e);return t?this.getPreferredWidthForElements([t]):-1}getPreferredWidthForElements(e,t){const i=document.createElement("form");i.style.position="fixed";const s=this.centerRowContainerCtrl.eContainer;for(const t of e)this.cloneItemIntoDummy(t,i);s.appendChild(i);const o=Math.ceil(i.getBoundingClientRect().width);return i.remove(),o+(t=t??this.gos.get("autoSizePadding"))}getHeaderCellForColumn(e){let t=null;for(const i of this.beans.ctrlsSvc.getHeaderRowContainerCtrls()){const s=i.getHtmlElementForColumnHeader(e);null!=s&&(t=s)}return t}cloneItemIntoDummy(e,t){const i=e.cloneNode(!0);i.style.width="",i.style.position="static",i.style.left="";const s=document.createElement("div"),o=s.classList;["ag-header-cell","ag-header-group-cell"].some(e=>i.classList.contains(e))?(o.add("ag-header","ag-header-row"),s.style.position="static"):o.add("ag-row");let r=e.parentElement;for(;r;){if(["ag-header-row","ag-row"].some(e=>r.classList.contains(e))){for(let e=0;ethis.resizeLeafColumnsToFit("uiColumnResized")))}onResizeStart(e){const{columnsToResize:t,resizeStartWidth:i,resizeRatios:s,groupAfterColumns:o,groupAfterStartWidth:r,groupAfterRatios:n}=this.getInitialValues(e);this.resizeCols=t,this.resizeStartWidth=i,this.resizeRatios=s,this.resizeTakeFromCols=o,this.resizeTakeFromStartWidth=r,this.resizeTakeFromRatios=n,this.toggleColumnResizing(!0)}onResizing(e,t,i="uiColumnResized"){const s=this.normaliseDragChange(t),o=this.resizeStartWidth+s;this.resizeColumnsFromLocalValues(o,i,e)}getInitialValues(e){const t=e=>e.reduce((e,t)=>e+t.getActualWidth(),0),i=(e,t)=>e.map(e=>e.getActualWidth()/t),s=this.getColumnsToResize(),o=t(s),r={columnsToResize:s,resizeStartWidth:o,resizeRatios:i(s,o)};let n=null;if(e&&(n=this.beans.colGroupSvc?.getGroupAtDirection(this.columnGroup,"After")??null),n){const e=n.getDisplayedLeafColumns(),s=r.groupAfterColumns=e.filter(e=>e.isResizable()),o=r.groupAfterStartWidth=t(s);r.groupAfterRatios=i(s,o)}else r.groupAfterColumns=void 0,r.groupAfterStartWidth=void 0,r.groupAfterRatios=void 0;return r}resizeLeafColumnsToFit(e){const t=this.beans.autoWidthCalc.getPreferredWidthForColumnGroup(this.columnGroup),i=this.getInitialValues();t>i.resizeStartWidth&&this.resizeColumns(i,t,e,!0)}resizeColumnsFromLocalValues(e,t,i=!0){if(!this.resizeCols||!this.resizeRatios)return;const s={columnsToResize:this.resizeCols,resizeStartWidth:this.resizeStartWidth,resizeRatios:this.resizeRatios,groupAfterColumns:this.resizeTakeFromCols,groupAfterStartWidth:this.resizeTakeFromStartWidth,groupAfterRatios:this.resizeTakeFromRatios};this.resizeColumns(s,e,t,i)}resizeColumns(e,t,i,s=!0){const{columnsToResize:o,resizeStartWidth:r,resizeRatios:n,groupAfterColumns:a,groupAfterStartWidth:l,groupAfterRatios:d}=e,c=[];if(c.push({columns:o,ratios:n,width:t}),a){const e=t-r;c.push({columns:a,ratios:d,width:l-e})}this.beans.colResize?.resizeColumnSets({resizeSets:c,finished:s,source:i}),s&&this.toggleColumnResizing(!1)}toggleColumnResizing(e){this.comp.toggleCss("ag-column-resizing",e)}getColumnsToResize(){return this.columnGroup.getDisplayedLeafColumns().filter(e=>e.isResizable())}normaliseDragChange(e){let t=e;return this.gos.get("enableRtl")?"left"!==this.pinned&&(t*=-1):"right"===this.pinned&&(t*=-1),t}destroy(){super.destroy(),this.resizeCols=void 0,this.resizeRatios=void 0,this.resizeTakeFromCols=void 0,this.resizeTakeFromRatios=void 0}},Ac=class extends wt{constructor(e,t,i,s,o){super(),this.pinned=e,this.column=t,this.eResize=i,this.comp=s,this.ctrl=o}postConstruct(){const e=[];let t,i;const s=()=>{if(ve(this.eResize,t),!t)return;const{horizontalResizeSvc:s,colAutosize:o}=this.beans,r=s.addResizeBar({eResizeBar:this.eResize,onResizeStart:this.onResizeStart.bind(this),onResizing:this.onResizing.bind(this,!1),onResizeEnd:this.onResizing.bind(this,!0)});e.push(r),i&&o&&e.push(o.addColumnAutosizeListeners(this.eResize,this.column))},o=()=>{for(const t of e)t();e.length=0},r=()=>{const e=this.column.isResizable(),r=!this.gos.get("suppressAutoSize")&&!this.column.getColDef().suppressAutoSize;(e!==t||r!==i)&&(t=e,i=r,o(),s())};r(),this.addDestroyFunc(o),this.ctrl.setRefreshFunction("resize",r)}onResizing(e,t){const{column:i,lastResizeAmount:s,resizeStartWidth:o,beans:r}=this,n=this.normaliseResizeAmount(t),a=[{key:i,newWidth:o+n}],{pinnedCols:l,ctrlsSvc:d,colResize:c}=r;if(this.column.getPinned()){if((l?.leftWidth??0)+(l?.rightWidth??0)+(n-s)>Fe(d.getGridBodyCtrl().eBodyViewport)-50)return}this.lastResizeAmount=n,c?.setColumnWidths(a,this.resizeWithShiftKey,e,"uiColumnResized"),e&&this.toggleColumnResizing(!1)}onResizeStart(e){this.resizeStartWidth=this.column.getActualWidth(),this.lastResizeAmount=0,this.resizeWithShiftKey=e,this.toggleColumnResizing(!0)}toggleColumnResizing(e){this.column.resizing=e,this.comp.toggleCss("ag-column-resizing",e)}normaliseResizeAmount(e){let t=e;const i="left"!==this.pinned,s="right"===this.pinned;return this.gos.get("enableRtl")?i&&(t*=-1):s&&(t*=-1),t}};var Tc={moduleName:"ColumnResize",version:ii,beans:[class extends wt{constructor(){super(...arguments),this.beanName="colResize"}setColumnWidths(e,t,i,s){const o=[],{colModel:r,gos:n,visibleCols:a}=this.beans;for(const i of e){const e=r.getColDefCol(i.key)||r.getCol(i.key);if(!e)continue;o.push({width:i.newWidth,ratios:[1],columns:[e]});if("shift"===n.get("colResizeDefault")&&(t=!t),t){const t=a.getColAfter(e);if(!t)continue;const s=e.getActualWidth()-i.newWidth,r=t.getActualWidth()+s;o.push({width:r,ratios:[1],columns:[t]})}}0!==o.length&&this.resizeColumnSets({resizeSets:o,finished:i,source:s})}resizeColumnSets(e){const{resizeSets:t,finished:i,source:s}=e;if(!(!t||t.every(e=>function(e){const{columns:t,width:i}=e;let s=0,o=0,r=!0;for(const e of t){s+=e.getMinWidth()||0;const t=e.getMaxWidth();t>0?o+=t:r=!1}const n=!r||i<=o;return i>=s&&n}(e)))){if(i){const e=t&&t.length>0?t[0].columns:null;bo(this.eventSvc,e,i,s)}return}const o=[],r=[];for(const e of t){const{width:t,columns:i,ratios:n}=e,a={},l={};for(const e of i)r.push(e);let d=!0,c=0;for(;d;){if(c++,c>1e3){pi(31);break}d=!1;const e=[];let s=0,o=t;i.forEach((t,i)=>{if(l[t.getId()])o-=a[t.getId()];else{e.push(t);const o=n[i];s+=o}});const r=1/s;e.forEach((i,s)=>{let c;s===e.length-1?c=o:(c=Math.round(n[s]*t*r),o-=c);const u=i.getMinWidth(),h=i.getMaxWidth();c0&&c>h&&(c=h,l[i.getId()]=!0,d=!0),a[i.getId()]=c})}for(const e of i){const t=a[e.getId()];e.getActualWidth()!==t&&(e.setActualWidth(t,s),o.push(e))}}const n=o.length>0;let a=[];if(n){const{colFlex:e,visibleCols:t,colViewport:i}=this.beans;a=e?.refreshFlexedColumns({resizingCols:r,skipSetLeft:!0})??[],t.setLeftValues(s),t.updateBodyWidths(),i.checkViewportColumns()}const l=r.concat(a);(n||i)&&bo(this.eventSvc,l,i,s,a)}resizeHeader(e,t,i){if(!e.isResizable())return;const s=e.getActualWidth(),o=e.getMinWidth(),r=e.getMaxWidth(),n=Math.min(Math.max(s+t,o),r);this.setColumnWidths([{key:e,newWidth:n}],i,!0,"uiColumnResized")}createResizeFeature(e,t,i,s,o){return new Ac(e,t,i,s,o)}createGroupResizeFeature(e,t,i,s){return new Ec(e,t,i,s)}}],apiFunctions:{setColumnWidths:function(e,t,i=!0,s="api"){e.colResize?.setColumnWidths(t,!1,i,s)}},dependsOn:[fc,Mc]},Dc=class extends wt{constructor(e,t){super(),this.removeChildListenersFuncs=[],this.columnGroup=t,this.comp=e}postConstruct(){this.addListenersToChildrenColumns(),this.addManagedListeners(this.columnGroup,{displayedChildrenChanged:this.onDisplayedChildrenChanged.bind(this)}),this.onWidthChanged(),this.addDestroyFunc(this.removeListenersOnChildrenColumns.bind(this))}addListenersToChildrenColumns(){this.removeListenersOnChildrenColumns();const e=this.onWidthChanged.bind(this);for(const t of this.columnGroup.getLeafColumns())t.__addEventListener("widthChanged",e),t.__addEventListener("visibleChanged",e),this.removeChildListenersFuncs.push(()=>{t.__removeEventListener("widthChanged",e),t.__removeEventListener("visibleChanged",e)})}removeListenersOnChildrenColumns(){for(const e of this.removeChildListenersFuncs)e();this.removeChildListenersFuncs=[]}onDisplayedChildrenChanged(){this.addListenersToChildrenColumns(),this.onWidthChanged()}onWidthChanged(){const e=this.columnGroup.getActualWidth();this.comp.setWidth(`${e}px`),this.comp.toggleCss("ag-hidden",0===e)}};var Ic=class{constructor(){this.existingIds={}}getInstanceIdForKey(e){const t=this.existingIds[e];let i;return i="number"!=typeof t?0:t+1,this.existingIds[e]=i,i}};function kc(e,t){for(let i=0;i=0&&(e[s]=e[e.length-1],e.pop())}}function Lc(e,t,i){if(e)for(let s=0;s{ys(e)&&t.push(e)}),t}var Gc={moduleName:"ColumnGroup",version:ii,dynamicBeans:{headerGroupCellCtrl:class extends da{constructor(){super(...arguments),this.onSuppressColMoveChange=()=>{!this.isAlive()||this.isSuppressMoving()?this.removeDragSource():this.dragSource||this.setDragSource(this.eGui)}}wireComp(e,t,i,s,o){const{column:r,beans:n}=this,{context:a,colNames:l,colHover:d,rangeSvc:c,colResize:u}=n;this.comp=e,o=ta(this,a,o),this.setGui(t,o),this.displayName=l.getDisplayNameForColumnGroup(r,"header"),this.refreshHeaderStyles(),this.addClasses(),this.setupMovingCss(o),this.setupExpandable(o),this.setupTooltip(),this.refreshAnnouncement(),this.setupAutoHeight({wrapperElement:s,compBean:o}),this.setupUserComp(),this.addHeaderMouseListeners(o,s),this.addManagedPropertyListener("groupHeaderHeight",this.refreshMaxHeaderHeight.bind(this)),this.refreshMaxHeaderHeight();const h=this.rowCtrl.pinned,g=r.getProvidedColumnGroup().getLeafColumns();d?.createHoverFeature(o,g,t),c?.createRangeHighlightFeature(o,r,e),o.createManagedBean(new ia(r,t,n)),o.createManagedBean(new Dc(e,r)),u?this.resizeFeature=o.createManagedBean(u.createGroupResizeFeature(e,i,h,r)):e.setResizableDisplayed(!1),o.createManagedBean(new mn(t,{shouldStopEventPropagation:this.shouldStopEventPropagation.bind(this),onTabKeyDown:()=>{},handleKeyDown:this.handleKeyDown.bind(this),onFocusIn:this.onFocusIn.bind(this)})),this.addHighlightListeners(o,g),this.addManagedEventListeners({cellSelectionChanged:()=>this.refreshAnnouncement()}),o.addManagedPropertyListener("suppressMovableColumns",this.onSuppressColMoveChange),this.addResizeAndMoveKeyboardListeners(o),o.addDestroyFunc(()=>this.clearComponent())}getHeaderClassParams(){const{column:e,beans:t}=this,i=e.getDefinition();return ms(t.gos,{colDef:i,columnGroup:e,floatingFilter:!1})}refreshMaxHeaderHeight(){const{gos:e,comp:t}=this,i=e.get("groupHeaderHeight");null!=i?0===i?t.setHeaderWrapperHidden(!0):t.setHeaderWrapperMaxHeight(i):(t.setHeaderWrapperHidden(!1),t.setHeaderWrapperMaxHeight(null))}addHighlightListeners(e,t){if(this.beans.gos.get("suppressMoveWhenColumnDragging"))for(const i of t)e.addManagedListeners(i,{headerHighlightChanged:this.onLeafColumnHighlightChanged.bind(this,i)})}onLeafColumnHighlightChanged(e){const t=this.column.getDisplayedLeafColumns(),i=t[0]===e,s=l(t)===e;if(!i&&!s)return;const o=e.getHighlighted();let r=!1,n=!1;if(!!this.rowCtrl.getHeaderCellCtrls().find(e=>e.column.isMoving())){const e=this.beans.gos.get("enableRtl"),t=1===o,a=0===o;i&&(e?n=t:r=a),s&&(e?r=a:n=t)}this.comp.toggleCss("ag-header-highlight-before",r),this.comp.toggleCss("ag-header-highlight-after",n)}resizeHeader(e,t){const{resizeFeature:i}=this;if(!i)return;const s=i.getInitialValues(t);i.resizeColumns(s,s.resizeStartWidth+e,"uiColumnResized",!0)}resizeLeafColumnsToFit(e){this.resizeFeature?.resizeLeafColumnsToFit(e)}setupUserComp(){const{colGroupSvc:e,userCompFactory:t,gos:i,enterpriseMenuFactory:s}=this.beans,o=this.column,r=o.getProvidedColumnGroup(),n=function(e,t){const i=t.columnGroup.getColGroupDef();return e.getCompDetails(i,Jo,"agColumnGroupHeader",t)}(t,ms(i,{displayName:this.displayName,columnGroup:o,setExpanded:t=>{e.setColumnGroupOpened(r,t,"gridInitializing")},setTooltip:(e,t)=>{i.assertModuleRegistered("Tooltip",3),this.setupTooltip(e,t)},showColumnMenu:(e,t)=>s?.showMenuAfterButtonClick(r,e,"columnMenu",t),showColumnMenuAfterMouseClick:(e,t)=>s?.showMenuAfterMouseEvent(r,e,"columnMenu",t),eGridHeader:this.eGui}));n&&this.comp.setUserCompDetails(n)}addHeaderMouseListeners(e,t){const{column:i,comp:s,beans:{rangeSvc:o},gos:r}=this,n=e=>this.handleMouseOverChange("mouseenter"===e.type);e.addManagedListeners(this.eGui,{mouseenter:n,mouseleave:n,click:()=>this.dispatchColumnMouseEvent("columnHeaderClicked",i.getProvidedColumnGroup()),contextmenu:e=>this.handleContextMenuMouseEvent(e,void 0,i.getProvidedColumnGroup())}),s.toggleCss("ag-header-group-cell-selectable",es(r));const a=o?.createHeaderGroupCellMouseListenerFeature(this.column,t);a&&this.createManagedBean(a)}handleMouseOverChange(e){this.eventSvc.dispatchEvent({type:e?"columnHeaderMouseOver":"columnHeaderMouseLeave",column:this.column.getProvidedColumnGroup()})}setupTooltip(e,t){this.tooltipFeature=this.beans.tooltipSvc?.setupHeaderGroupTooltip(this.tooltipFeature,this,e,t)}setupExpandable(e){const t=this.column.getProvidedColumnGroup();this.refreshExpanded();const i=this.refreshExpanded.bind(this);e.addManagedListeners(t,{expandedChanged:i,expandableChanged:i})}refreshExpanded(){const{column:e}=this;this.expandable=e.isExpandable();const t=e.isExpanded();this.expandable?this.comp.setAriaExpanded(t?"true":"false"):this.comp.setAriaExpanded(void 0),this.refreshHeaderStyles()}addClasses(){const{column:e}=this,t=e.getColGroupDef(),i=sa(t,this.gos,null,e);if(e.isPadding()){i.push("ag-header-group-cell-no-group");e.getLeafColumns().every(e=>e.isSpanHeaderHeight())&&i.push("ag-header-span-height")}else i.push("ag-header-group-cell-with-group"),t?.wrapHeaderText&&i.push("ag-header-cell-wrap-text");for(const e of i)this.comp.toggleCss(e,!0)}setupMovingCss(e){const{column:t}=this,i=t.getProvidedColumnGroup().getLeafColumns(),s=()=>this.comp.toggleCss("ag-header-cell-moving",t.isMoving());for(const t of i)e.addManagedListeners(t,{movingChanged:s});s()}onFocusIn(e){this.eGui.contains(e.relatedTarget)||(this.focusThis(),this.announceAriaDescription())}handleKeyDown(e){super.handleKeyDown(e);if(!this.getWrapperHasFocus())return;const{column:t,expandable:i,gos:s,beans:o}=this,r=es(s);if(e.key==To.ENTER)if(r&&!e.altKey)o.rangeSvc?.handleColumnSelection(t,e);else if(i){const e=!t.isExpanded();o.colGroupSvc.setColumnGroupOpened(t.getProvidedColumnGroup(),e,"uiColumnExpanded")}}refreshAnnouncement(){let e;const{gos:t,column:i,beans:s}=this;if(es(t)){const t=this.getLocaleTextFunc(),o=s.rangeSvc?.isColumnInAnyRange(i);e=t("ariaColumnCellSelection",`Press CTRL+SPACE to ${o?"de":""}select all visible cells in this column group`)}this.ariaAnnouncement=e}announceAriaDescription(){const{beans:e,eGui:t,ariaAnnouncement:i}=this;i&&t.contains(A(e))&&e.ariaAnnounce?.announceValue(i,"columnHeader")}setDragSource(e){this.isAlive()&&!this.isSuppressMoving()&&(this.removeDragSource(),e&&(this.dragSource=this.beans.colMoves?.setDragSourceForHeader(e,this.column,this.displayName)??null))}isSuppressMoving(){return this.gos.get("suppressMovableColumns")||this.column.getLeafColumns().some(e=>e.getColDef().suppressMovable||e.getColDef().lockPosition)}destroy(){this.tooltipFeature=this.destroyBean(this.tooltipFeature),super.destroy()}}},beans:[class extends wt{constructor(){super(...arguments),this.beanName="colGroupSvc"}getColumnGroupState(){const e=[];return po(null,this.beans.colModel.getColTree(),t=>{ks(t)&&e.push({groupId:t.getGroupId(),open:t.isExpanded()})}),e}resetColumnGroupState(e){const t=this.beans.colModel.getColDefColTree();if(!t)return;const i=[];po(null,t,e=>{if(ks(e)){const t=e.getColGroupDef(),s={groupId:e.getGroupId(),open:t?t.openByDefault:void 0};i.push(s)}}),this.setColumnGroupState(i,e)}setColumnGroupState(e,t){const{colModel:i,colAnimation:s,visibleCols:o,eventSvc:r}=this.beans;if(!i.getColTree().length)return;s?.start();const n=[];for(const t of e){const e=t.groupId,i=t.open,s=this.getProvidedColGroup(e);s&&(s.isExpanded()!==i&&(s.setExpanded(i),n.push(s)))}o.refresh(t,!0),n.length&&r.dispatchEvent({type:"columnGroupOpened",columnGroup:1===n.length?n[0]:void 0,columnGroups:n}),s?.finish()}setColumnGroupOpened(e,t,i){let s;s=ks(e)?e.getId():e||"",this.setColumnGroupState([{groupId:s,open:t}],i)}getProvidedColGroup(e){let t=null;return po(null,this.beans.colModel.getColTree(),i=>{ks(i)&&i.getId()===e&&(t=i)}),t}getGroupAtDirection(e,t){const i=e.getProvidedColumnGroup().getLevel()+e.getPaddingLevel(),s=e.getDisplayedLeafColumns(),o="After"===t?l(s):s[0],r=`getCol${t}`;for(;;){const t=this.beans.visibleCols[r](o);if(!t)return null;const s=this.getColGroupAtLevel(t,i);if(s!==e)return s}}getColGroupAtLevel(e,t){let i,s,o=e.getParent();for(;;){if(i=o.getProvidedColumnGroup().getLevel(),s=o.getPaddingLevel(),i+s<=t)break;o=o.getParent()}return o}updateOpenClosedVisibility(){Lc(this.beans.visibleCols.getAllTrees(),!1,e=>{Eo(e)&&e.calculateDisplayedColumns()})}getColumnGroup(e,t){if(!e)return null;if(Eo(e))return e;const i=this.beans.visibleCols.getAllTrees(),s="number"==typeof t;let o=null;return Lc(i,!1,i=>{if(Eo(i)){const r=i;let n;n=s?e===r.getGroupId()&&t===r.getPartId():e===r.getGroupId(),n&&(o=r)}}),o}createColumnGroups(e){const{columns:t,idCreator:i,pinned:s,oldDisplayedGroups:o,isStandaloneStructure:r}=e,n=this.mapOldGroupsById(o),a=[];let l=t;for(;l.length;){const e=l;l=[];let t=0;const o=o=>{const d=t;t=o;const c=e[d],u=(Eo(c)?c.getProvidedColumnGroup():c).getOriginalParent();if(null==u){for(let t=d;tks(e))){a.setChildren([n]);continue}a.setChildren(e);break}o.push(n)}}return o}findDepth(e){let t=0,i=e;for(;i?.[0]&&ks(i[0]);)t++,i=i[0].getChildren();return t}findMaxDepth(e,t){let i=t;for(let s=0;s=0;i--){const t=new Ls(null,`FAKE_PATH_${s.getId()}_${i}`,!0,i);this.createBean(t),t.setChildren([e]),e.originalParent=t,e=t}0===t&&(s.originalParent=null),i.push(e)}return i}findExistingGroup(e,t){if(null!=e.groupId)for(let i=0;i{for(const s of e)if(Eo(s)){const e=s;t[s.getUniqueId()]=e,i(e.getChildren())}};return e&&i(e),t}setupParentsIntoCols(e,t){for(const i of e??[])if(i.parent!==t&&(this.beans.colViewport.colsWithinViewportHash=""),i.parent=t,Eo(i)){const e=i;this.setupParentsIntoCols(e.getChildren(),e)}}}],apiFunctions:{getAllDisplayedColumnGroups:function(e){return e.visibleCols.getAllTrees()},getCenterDisplayedColumnGroups:function(e){return e.visibleCols.treeCenter},getColumnGroup:function(e,t,i){return e.colGroupSvc?.getColumnGroup(t,i)??null},getColumnGroupState:function(e){return e.colGroupSvc?.getColumnGroupState()??[]},getDisplayNameForColumnGroup:function(e,t,i){return e.colNames.getDisplayNameForColumnGroup(t,i)||""},getLeftDisplayedColumnGroups:function(e){return e.visibleCols.treeLeft},getProvidedColumnGroup:function(e,t){return e.colGroupSvc?.getProvidedColGroup(t)??null},getRightDisplayedColumnGroups:function(e){return e.visibleCols.treeRight},resetColumnGroupState:function(e){e.colGroupSvc?.resetColumnGroupState("api")},setColumnGroupOpened:function(e,t,i){e.colGroupSvc?.setColumnGroupOpened(t,i,"api")},setColumnGroupState:function(e,t){e.colGroupSvc?.setColumnGroupState(t,"api")}}},Nc={tag:"div",cls:"ag-skeleton-container"},Bc={moduleName:"CheckboxCellRenderer",version:ii,userComponents:{agCheckboxCellRenderer:class extends Wo{constructor(){super(Ma,[Pa]),this.eCheckbox=Lo,this.registerCSS(".ag-checkbox-cell{height:100%}")}init(e){this.refresh(e);const{eCheckbox:t,beans:i}=this,s=t.getInputElement();s.setAttribute("tabindex","-1"),W(s,"polite"),this.addManagedListeners(s,{click:e=>{if(hn(e),t.isDisabled())return;const i=t.getValue();this.onCheckboxChanged(i)},dblclick:e=>{hn(e)}}),this.addManagedElementListeners(e.eGridCell,{keydown:s=>{if(s.key===To.SPACE&&!t.isDisabled()){e.eGridCell===A(i)&&t.toggle();const o=t.getValue();this.onCheckboxChanged(o),s.preventDefault()}}})}refresh(e){return this.params=e,this.updateCheckbox(e),!0}updateCheckbox(e){let t,i=!0;const{value:s,column:o,node:r}=e;if(r.group&&o)if("boolean"==typeof s)t=s;else{const e=o.getColId();e.startsWith(Bs)?t=null==s||""===s?void 0:"true"===s:r.aggData&&void 0!==r.aggData[e]||r.sourceRowIndex>=0?t=s??void 0:i=!1}else t=s??void 0;const{eCheckbox:n}=this;if(!i)return void n.setDisplayed(!1);n.setValue(t);const a=e.disabled??!o?.isCellEditable(r);n.setDisabled(a);const l=this.getLocaleTextFunc(),d=he(l,t),c=a?d:`${l("ariaToggleCellValue","Press SPACE to toggle cell value")} (${d})`;n.setInputAriaLabel(c)}onCheckboxChanged(e){const{params:t}=this,{column:i,node:s,value:o}=t,{editSvc:r}=this.beans;if(!i)return;const n={rowNode:s,column:i};r?.dispatchCellEvent(n,null,"cellEditingStarted",{value:o});const a=s.setDataValue(i,e,"ui");r?.dispatchCellEvent(n,null,"cellEditingStopped",{oldValue:o,newValue:e,valueChanged:a}),a||this.updateCheckbox(t)}}}},Vc={moduleName:"SkeletonCellRenderer",version:ii,userComponents:{agSkeletonCellRenderer:class extends Wo{constructor(){super(Nc)}init(e){const t=`ag-cell-skeleton-renderer-${this.getCompId()}`;this.getGui().setAttribute("id",t),this.addDestroyFunc(()=>H(e.eParentOfValue)),H(e.eParentOfValue,t),e.deferRender?this.setupLoading(e):e.node.failedLoad?this.setupFailed():this.setupLoading(e)}setupFailed(){const e=this.getLocaleTextFunc();this.getGui().textContent=e("loadingError","ERR");const t=e("ariaSkeletonCellLoadingFailed","Row failed to load");_(this.getGui(),t)}setupLoading(e){const t=Go({tag:"div",cls:"ag-skeleton-effect"}),i=e.node.rowIndex;if(null!=i){const e=75+25*(i%2==0?Math.sin(i):Math.cos(i));t.style.width=`${e}%`}this.getGui().appendChild(t);const s=this.getLocaleTextFunc(),o=e.deferRender?s("ariaDeferSkeletonCellLoading","Cell is loading"):s("ariaSkeletonCellLoading","Row data is loading");_(this.getGui(),o)}refresh(e){return!1}}}};function _c(e,t){if(!e)return;const i=e,s={};for(const e of Object.keys(i)){if(t&&t.indexOf(e)>=0||Et.has(e))continue;const o=i[e],r="object"==typeof o&&null!==o&&o.constructor===Object;s[e]=r?_c(o):o}return s}var Hc=e=>{if("bigint"==typeof e)return e;let t;if("number"==typeof e)t=e;else if("string"==typeof e){if(t=e.trim(),""===t)return null;if(t.endsWith("n")&&(t=t.slice(0,-1)),!/^[+-]?\d+$/.test(t))return null}if(null==t)return null;try{return BigInt(t)}catch{return null}},zc="T",Wc=new RegExp(`[${zc} ]`),Uc=new RegExp(`^\\d{4}-\\d{2}-\\d{2}(${zc}\\d{2}:\\d{2}:\\d{2}\\D?)?`);function jc(e,t){return e.toString().padStart(t,"0")}function Kc(e,t=!0,i=zc){if(!e)return null;let s=[e.getFullYear(),e.getMonth()+1,e.getDate()].map(e=>jc(e,2)).join("-");return t&&(s+=i+[e.getHours(),e.getMinutes(),e.getSeconds()].map(e=>jc(e,2)).join(":")),s}function $c(e,t=!0){return e?t?[String(e.getFullYear()),String(e.getMonth()+1),jc(e.getDate(),2),jc(e.getHours(),2),`:${jc(e.getMinutes(),2)}`,`:${jc(e.getSeconds(),2)}`]:[e.getFullYear(),e.getMonth()+1,jc(e.getDate(),2)].map(String):null}var qc=e=>{if(e>3&&e<21)return"th";switch(e%10){case 1:return"st";case 2:return"nd";case 3:return"rd"}return"th"},Yc=["January","February","March","April","May","June","July","August","September","October","November","December"],Xc=["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"];function Zc(e,t=!1){return!!Qc(e,t)}function Qc(e,t=!1,i){if(!e)return null;if(!i&&!Uc.test(e))return null;const[s,o]=e.split(Wc);if(!s)return null;const r=s.split("-").map(e=>Number.parseInt(e,10));if(3!==r.filter(e=>!isNaN(e)).length)return null;const[n,a,l]=r,d=new Date(n,a-1,l);if(d.getFullYear()!==n||d.getMonth()!==a-1||d.getDate()!==l)return null;if(!o&&t)return null;if(!o||"00:00:00"===o)return d;const[c,u,h]=o.split(":").map(e=>Number.parseInt(e,10));if(c>=0&&c<24)d.setHours(c);else if(t)return null;if(u>=0&&u<60)d.setMinutes(u);else if(t)return null;if(h>=0&&h<60)d.setSeconds(h);else if(t)return null;return d}function Jc(e,t,i){if(!t||!e)return;if(!i)return e[t];const s=t.split(".");let o=e;for(let e=0;e"bigint"==typeof e||"number"==typeof e,ou=e=>"number"===e||"bigint"===e;function ru(e,t){if(e.valueFormatter)return i=>{const{node:s,colDef:o,column:r,value:n}=i;if(s?.group){const t=(o.pivotValueColumn??r).getAggFunc();if(t){if("first"===t||"last"===t)return e.valueFormatter(i);const{baseDataType:s}=e;if(ou(s)&&"count"!==t){if(su(n))return e.valueFormatter(i);if(null==n)return;if("object"==typeof n){if("function"==typeof n.toNumber)return e.valueFormatter({...i,value:n.toNumber()});if("value"in n)return e.valueFormatter({...i,value:n.value})}}return}}else if(t.get("groupHideOpenParents")&&i.column.isRowGroupActive()&&"string"==typeof i.value&&!e.dataTypeMatcher?.(i.value))return;return e.valueFormatter(i)}}function nu(e,t){if(null==e)return null==t?0:-1;if(null==t)return 1;const i=Hc(e),s=Hc(t);return null!=i&&null!=s?i===s?0:i>s?1:-1:0}function au(e,t){if(null==e)return null==t?0:-1;if(null==t)return 1;const i=lu(e),s=lu(t);return null!=i&&null!=s?i===s?0:i>s?1:-1:0}function lu(e){const t=Hc(e);return null==t?null:t<0n?-t:t}function du(e,t){return[["cellRenderer","agSparklineCellRenderer"],["valueGetter",void 0],["valueParser",void 0],["refData",void 0]].some(([i,s])=>function(e,t,i,s){if(!t[i])return!1;const o=e[i];return null===o?(t[i]=!1,!1):void 0===s?!!o:o===s}(e,t,i,s))}function cu(e,t){const i=Ro(e);for(const e of t)delete i[e],"rowGroup"===e?delete i.rowGroupIndex:"pivot"===e&&delete i.pivotIndex;return i}var uu={moduleName:"DataType",version:ii,beans:[class extends wt{constructor(){super(...arguments),this.beanName="dataTypeSvc",this.dataTypeDefinitions={},this.isPendingInference=!1,this.isColumnTypeOverrideInDataTypeDefinitions=!1,this.columnStateUpdatesPendingInference={},this.columnStateUpdateListenerDestroyFuncs=[],this.columnDefinitionPropsPerDataType={number(){return{cellEditor:"agNumberCellEditor"}},bigint({filterModuleBean:e}){return e?{cellEditor:"agTextCellEditor"}:{cellEditor:"agTextCellEditor",comparator:{default:nu,absolute:au}}},boolean(){return{cellEditor:"agCheckboxCellEditor",cellRenderer:"agCheckboxCellRenderer",getFindText:()=>null,suppressKeyboardEvent:({node:e,event:t,column:i})=>t.key===To.SPACE&&i.isCellEditable(e)}},date({formatValue:e}){return{cellEditor:"agDateCellEditor",keyCreator:e}},dateString({formatValue:e}){return{cellEditor:"agDateStringCellEditor",keyCreator:e}},dateTime(e){return this.date(e)},dateTimeString(e){return this.dateString(e)},object({formatValue:e,colModel:t,colId:i}){return{cellEditorParams:{useFormatter:!0},comparator:(s,o)=>{const r=t.getColDefCol(i),n=r?.getColDef();if(!r||!n)return 0;const a=null==s?"":e({column:r,node:null,value:s}),l=null==o?"":e({column:r,node:null,value:o});return a===l?0:a>l?1:-1},keyCreator:e}},text(){return{}}}}wireBeans(e){this.colModel=e.colModel}postConstruct(){this.processDataTypeDefinitions(),this.addManagedPropertyListener("dataTypeDefinitions",e=>{this.processDataTypeDefinitions(),this.colModel.recreateColumnDefs(e)})}processDataTypeDefinitions(){const e=this.getDefaultDataTypes(),t={},i={},s=e=>t=>{const{column:i,node:s,value:o}=t;let r=i.getColDef().valueFormatter;return r===e.groupSafeValueFormatter&&(r=e.valueFormatter),this.beans.valueSvc.formatValue(i,s,o,r)};for(const o of Object.keys(e)){const r=e[o],n={...r,groupSafeValueFormatter:ru(r,this.gos)};t[o]=n,i[o]=s(n)}const o=this.gos.get("dataTypeDefinitions")??{},r={};for(const n of Object.keys(o)){const a=o[n],l=this.processDataTypeDefinition(a,o,[n],e);l&&(t[n]=l,a.dataTypeMatcher&&(r[n]=a.dataTypeMatcher),i[n]=s(l))}const{valueParser:n,valueFormatter:a}=e.object,{valueParser:l,valueFormatter:d}=t.object;this.hasObjectValueParser=l!==n,this.hasObjectValueFormatter=d!==a,this.formatValueFuncs=i,this.dataTypeDefinitions=t,this.dataTypeMatchers=this.sortKeysInMatchers(r,e)}sortKeysInMatchers(e,t){const i={...e};for(const s of eu)delete i[s],i[s]=e[s]??t[s].dataTypeMatcher;return i}processDataTypeDefinition(e,t,i,s){let o;const r=e.extendsDataType;if(e.columnTypes&&(this.isColumnTypeOverrideInDataTypeDefinitions=!0),e.extendsDataType===e.baseDataType){let i=s[r];const n=t[r];if(i&&n&&(i=n),!iu(e,i,r))return;o=tu(i,e)}else{if(i.includes(r))return void gi(44);const n=t[r];if(!iu(e,n,r))return;const a=this.processDataTypeDefinition(n,t,[...i,r],s);if(!a)return;o=tu(a,e)}return{...o,groupSafeValueFormatter:ru(o,this.gos)}}updateColDefAndGetColumnType(e,t,i){let{cellDataType:s}=t;void 0===s&&(s=e.cellDataType);const{field:o}=t;if(null!=s&&!0!==s||(s=!!this.canInferCellDataType(e,t)&&this.inferCellDataType(o,i)),this.addFormulaCellEditorToColDef(e,t),!s)return void(e.cellDataType=!1);const r=this.dataTypeDefinitions[s];if(r)return e.cellDataType=s,r.groupSafeValueFormatter&&(e.valueFormatter=r.groupSafeValueFormatter),r.valueParser&&(e.valueParser=r.valueParser),r.suppressDefaultProperties||this.setColDefPropertiesForBaseDataType(e,s,r,i),r.columnTypes;gi(47,{cellDataType:s})}addFormulaCellEditorToColDef(e,t){(t.allowFormula??e.allowFormula)&&!t.cellEditor&&(e.cellEditor="agFormulaCellEditor")}addColumnListeners(e){if(!this.isPendingInference)return;const t=this.columnStateUpdatesPendingInference[e.getColId()];if(!t)return;const i=e=>{t.add(e.key)};e.__addEventListener("columnStateUpdated",i),this.columnStateUpdateListenerDestroyFuncs.push(()=>e.__removeEventListener("columnStateUpdated",i))}canInferCellDataType(e,t){const{gos:i}=this;if(!yi(i))return!1;const s={cellRenderer:!0,valueGetter:!0,valueParser:!0,refData:!0};if(du(t,s))return!1;const o=null===t.type?e.type:t.type;if(o){const e=i.get("columnTypes")??{};if(Ys(o).some(t=>{const i=e[t.trim()];return i&&du(i,s)}))return!1}return!du(e,s)}inferCellDataType(e,t){if(!e)return;let i;const s=this.getInitialData();if(s){const t=e.includes(".")&&!this.gos.get("suppressFieldDotNotation");i=Jc(s,e,t)}else this.initWaitForRowData(t);if(null==i)return;return Object.keys(this.dataTypeMatchers).find(e=>this.dataTypeMatchers[e](i))??"object"}getInitialData(){const e=this.gos.get("rowData");if(e?.length)return e[0];if(this.initialData)return this.initialData;{const e=this.beans.rowModel.rootNode?._leafs;if(e?.length)return e[0].data}return null}initWaitForRowData(e){if(this.columnStateUpdatesPendingInference[e]=new Set,this.isPendingInference)return;this.isPendingInference=!0;const t=this.isColumnTypeOverrideInDataTypeDefinitions,{colAutosize:i,eventSvc:s}=this.beans;t&&i&&(i.shouldQueueResizeOperations=!0);const[o]=this.addManagedEventListeners({rowDataUpdateStarted:e=>{const{firstRowData:r}=e;r&&(o?.(),this.isPendingInference=!1,this.processColumnsPendingInference(r,t),this.columnStateUpdatesPendingInference={},t&&i?.processResizeOperations(),s.dispatchEvent({type:"dataTypesInferred"}))}})}processColumnsPendingInference(e,t){this.initialData=e;const i=[];this.destroyColumnStateUpdateListeners();const s={},o={};for(const e of Object.keys(this.columnStateUpdatesPendingInference)){const r=this.columnStateUpdatesPendingInference[e],n=this.colModel.getCol(e);if(!n)continue;const a=n.getColDef();if(!this.resetColDefIntoCol(n,"cellDataTypeInferred"))continue;const l=n.getColDef();if(t&&l.type&&l.type!==a.type){const t=cu(n,r);t.rowGroup&&null==t.rowGroupIndex&&(s[e]=t),t.pivot&&null==t.pivotIndex&&(o[e]=t),i.push(t)}}t&&i.push(...this.generateColumnStateForRowGroupAndPivotIndexes(s,o)),i.length&&yo(this.beans,{state:i},"cellDataTypeInferred"),this.initialData=null}generateColumnStateForRowGroupAndPivotIndexes(e,t){const i={},{rowGroupColsSvc:s,pivotColsSvc:o}=this.beans;return s?.restoreColumnOrder(i,e),o?.restoreColumnOrder(i,t),Object.values(i)}resetColDefIntoCol(e,t){const i=e.getUserProvidedColDef();if(!i)return!1;const s=ho(this.beans,i,e.getColId());return e.setColDef(s,i,t),!0}getDateStringTypeDefinition(e){const{dateString:t}=this.dataTypeDefinitions;return e?this.getDataTypeDefinition(e)??t:t}getDateParserFunction(e){return this.getDateStringTypeDefinition(e).dateParser}getDateFormatterFunction(e){return this.getDateStringTypeDefinition(e).dateFormatter}getDateIncludesTimeFlag(e){return"dateTime"===e||"dateTimeString"===e}getDataTypeDefinition(e){const t=e.getColDef();if(t.cellDataType)return this.dataTypeDefinitions[t.cellDataType]}getBaseDataType(e){return this.getDataTypeDefinition(e)?.baseDataType}checkType(e,t){if(null==t)return!0;const i=this.getDataTypeDefinition(e)?.dataTypeMatcher;return!i||(!(!e.getColDef().allowFormula||!this.beans.formula?.isFormula(t))||i(t))}validateColDef(e){const t=e=>gi(48,{property:e});if("object"===e.cellDataType){const{object:i}=this.dataTypeDefinitions;e.valueFormatter!==i.groupSafeValueFormatter||this.hasObjectValueFormatter||t("Formatter"),e.editable&&e.valueParser===i.valueParser&&!this.hasObjectValueParser&&t("Parser")}}postProcess(e){const t=e.cellDataType;if(!t||"string"!=typeof t)return;const{dataTypeDefinitions:i,beans:s,formatValueFuncs:o}=this,r=i[t];r&&s.colFilter?.setColDefPropsForDataType(e,r,o[t])}getFormatValue(e){return this.formatValueFuncs[e]}isColPendingInference(e){return this.isPendingInference&&!!this.columnStateUpdatesPendingInference[e]}setColDefPropertiesForBaseDataType(e,t,i,s){const o=this.formatValueFuncs[t],r=this.columnDefinitionPropsPerDataType[i.baseDataType]({colDef:e,cellDataType:t,colModel:this.colModel,dataTypeDefinition:i,colId:s,formatValue:o,filterModuleBean:this.beans.filterManager});"agFormulaCellEditor"===e.cellEditor&&r.cellEditor!==e.cellEditor&&(r.cellEditor=e.cellEditor),Object.assign(e,r)}getDateObjectTypeDef(e){const t=this.getLocaleTextFunc(),i=this.getDateIncludesTimeFlag(e);return{baseDataType:e,valueParser:e=>Qc(e.newValue&&String(e.newValue)),valueFormatter:e=>null==e.value?"":e.value instanceof Date&&!isNaN(e.value.getTime())?Kc(e.value,i)??"":t("invalidDate","Invalid Date"),dataTypeMatcher:e=>e instanceof Date}}getDateStringTypeDef(e){const t=this.getDateIncludesTimeFlag(e);return{baseDataType:e,dateParser:e=>Qc(e)??void 0,dateFormatter:e=>Kc(e??null,t)??void 0,valueParser:e=>Zc(String(e.newValue))?e.newValue:null,valueFormatter:e=>Zc(String(e.value))?String(e.value):"",dataTypeMatcher:e=>"string"==typeof e&&Zc(e)}}getDefaultDataTypes(){const e=this.getLocaleTextFunc();return{number:{baseDataType:"number",valueParser:e=>""===e.newValue?.trim?.()?null:Number(e.newValue),valueFormatter:t=>null==t.value?"":"number"!=typeof t.value||isNaN(t.value)?e("invalidNumber","Invalid Number"):String(t.value),dataTypeMatcher:e=>"number"==typeof e},bigint:{baseDataType:"bigint",valueParser:e=>{const{newValue:t}=e;return null==t||"string"==typeof t&&""===t.trim()?null:Hc(t)},valueFormatter:t=>null==t.value?"":"bigint"!=typeof t.value?e("invalidBigInt","Invalid BigInt"):String(t.value),dataTypeMatcher:e=>"bigint"==typeof e},text:{baseDataType:"text",valueParser:e=>""===e.newValue?null:v(e.newValue),dataTypeMatcher:e=>"string"==typeof e},boolean:{baseDataType:"boolean",valueParser:e=>null==e.newValue?e.newValue:""===e.newValue?.trim?.()?null:"true"===String(e.newValue).toLowerCase(),valueFormatter:e=>null==e.value?"":String(e.value),dataTypeMatcher:e=>"boolean"==typeof e},date:this.getDateObjectTypeDef("date"),dateString:this.getDateStringTypeDef("dateString"),dateTime:this.getDateObjectTypeDef("dateTime"),dateTimeString:{...this.getDateStringTypeDef("dateTimeString"),dataTypeMatcher:e=>"string"==typeof e&&function(e){return Zc(e,!0)}(e)},object:{baseDataType:"object",valueParser:()=>null,valueFormatter:e=>v(e.value)??""}}}destroyColumnStateUpdateListeners(){for(const e of this.columnStateUpdateListenerDestroyFuncs)e();this.columnStateUpdateListenerDestroyFuncs=[]}destroy(){this.dataTypeDefinitions={},this.dataTypeMatchers={},this.formatValueFuncs={},this.columnStateUpdatesPendingInference={},this.destroyColumnStateUpdateListeners(),super.destroy()}}],dependsOn:[Bc]},hu={moduleName:"ColumnFlex",version:ii,beans:[class extends wt{constructor(){super(...arguments),this.beanName="colFlex",this.columnsHidden=!1}refreshFlexedColumns(e={}){const t=e.source??"flex";null!=e.viewportWidth&&(this.flexViewportWidth=e.viewportWidth);const i=this.flexViewportWidth,{visibleCols:s,colDelayRenderSvc:o}=this.beans,r=s.centerCols;let n=-1;if(e.resizingCols){const t=new Set(e.resizingCols);for(let e=r.length-1;e>=0;e--)if(t.has(r[e])){n=e;break}}let a=!1;const l=r.map((e,t)=>{const i=e.getFlex(),s=null!=i&&i>0&&t>n;return a||(a=s),{col:e,isFlex:s,flex:Math.max(0,i??0),initialSize:e.getActualWidth(),min:e.getMinWidth(),max:e.getMaxWidth(),targetSize:0}});if(a?(o?.hideColumns("colFlex"),this.columnsHidden=!0):this.columnsHidden&&this.revealColumns(o),!i||!a)return[];let d=l.length,c=l.reduce((e,t)=>e+t.flex,0),u=i;const h=(e,i)=>{e.frozenSize=i,e.col.setActualWidth(i,t),u-=i,c-=e.flex,d-=1},g=e=>null!=e.frozenSize;for(const e of l)e.isFlex||h(e,e.initialSize);for(;d>0;){const e=Math.round(c<1?u*c:u);let t,i=0,s=0;for(const o of l){if(g(o))continue;t=o,s+=e*(o.flex/c);const r=s-i,n=Math.round(r);o.targetSize=n,i+=n}t&&(t.targetSize+=e-i);let o=0;for(const e of l){if(g(e))continue;const t=e.targetSize,i=Math.min(Math.max(t,e.min),e.max);o+=i-t,e.violationType=i===t?void 0:i0?"min":"max";for(const e of l)g(e)||"all"!==r&&e.violationType!==r||h(e,e.targetSize)}e.skipSetLeft||s.setLeftValues(t),e.updateBodyWidths&&s.updateBodyWidths();const p=l.filter(e=>e.isFlex&&!e.violationType).map(e=>e.col);if(e.fireResizedEvent){const e=l.filter(e=>e.initialSize!==e.frozenSize).map(e=>e.col),i=l.filter(e=>e.flex).map(e=>e.col);bo(this.eventSvc,e,!0,t,i)}return this.revealColumns(o),p}revealColumns(e){this.columnsHidden&&(e?.revealColumns("colFlex"),this.columnsHidden=!1)}initCol(e){const{flex:t,initialFlex:i}=e.colDef;void 0!==t?e.flex=t:void 0!==i&&(e.flex=i)}setColFlex(e,t){e.flex=t??null,e.dispatchStateUpdatedEvent("flex")}}]},gu={moduleName:"ColumnApi",version:ii,beans:[class extends wt{constructor(){super(...arguments),this.beanName="colDefFactory"}wireBeans(e){this.rowGroupColsSvc=e.rowGroupColsSvc,this.pivotColsSvc=e.pivotColsSvc}getColumnDefs(e,t,i,s,o=!1){const r=e.slice();t?r.sort((e,t)=>i.indexOf(e)-i.indexOf(t)):(i||o)&&r.sort((e,t)=>s.indexOf(e)-s.indexOf(t));const n=this.rowGroupColsSvc?.columns,a=this.pivotColsSvc?.columns;return this.buildColumnDefs(r,n,a)}buildColumnDefs(e,t=[],i=[]){const s=[],o={};for(const r of e){let e=!0,n=this.createDefFromColumn(r,t,i),a=r.getOriginalParent(),l=null;for(;a;){let t=null;if(a.isPadding()){a=a.getOriginalParent();continue}const i=o[a.getGroupId()];if(i){i.children.push(n),e=!1;break}if(t=this.createDefFromGroup(a),t&&(t.children=[n],o[t.groupId]=t,n=t,a=a.getOriginalParent()),null!=a&&l===a){e=!1;break}l=a}e&&s.push(n)}return s}createDefFromGroup(e){const t=_c(e.getColGroupDef(),["children"]);return t&&(t.groupId=e.getGroupId()),t}createDefFromColumn(e,t,i){const s=_c(e.getColDef());return s.colId=e.getColId(),s.width=e.getActualWidth(),s.rowGroup=e.isRowGroupActive(),s.rowGroupIndex=e.isRowGroupActive()?t.indexOf(e):null,s.pivot=e.isPivotActive(),s.pivotIndex=e.isPivotActive()?i.indexOf(e):null,s.aggFunc=e.isValueActive()?e.getAggFunc():null,s.hide=!e.isVisible()||void 0,s.pinned=e.isPinned()?e.getPinned():null,s.sort=e.getSortDef(),s.sortIndex=null!=e.getSortIndex()?e.getSortIndex():null,s}}],apiFunctions:{getColumnDef:function(e,t){const i=e.colModel.getColDefCol(t);return i?i.getColDef():null},getDisplayNameForColumn:function(e,t,i){return e.colNames.getDisplayNameForColumn(t,i)||""},getColumn:function(e,t){return e.colModel.getColDefCol(t)},getColumns:function(e){return e.colModel.getColDefCols()},applyColumnState:function(e,t){return yo(e,t,"api")},getColumnState:function(e){return Fo(e)},resetColumnState:function(e){So(e,"api")},isPinning:function(e){return e.visibleCols.isPinningLeft()||e.visibleCols.isPinningRight()},isPinningLeft:function(e){return e.visibleCols.isPinningLeft()},isPinningRight:function(e){return e.visibleCols.isPinningRight()},getDisplayedColAfter:function(e,t){return e.visibleCols.getColAfter(t)},getDisplayedColBefore:function(e,t){return e.visibleCols.getColBefore(t)},setColumnsVisible:function(e,t,i){e.colModel.setColsVisible(t,i,"api")},setColumnsPinned:function(e,t,i){e.pinnedCols?.setColsPinned(t,i,"api")},getAllGridColumns:function(e){return e.colModel.getCols()},getDisplayedLeftColumns:function(e){return e.visibleCols.leftCols},getDisplayedCenterColumns:function(e){return e.visibleCols.centerCols},getDisplayedRightColumns:function(e){return e.visibleCols.rightCols},getAllDisplayedColumns:function(e){return e.visibleCols.allCols},getAllDisplayedVirtualColumns:function(e){return e.colViewport.getViewportColumns()},getColumnDefs:function(e){return e.colModel.getColumnDefs(!0)}}};var pu={moduleName:"CellRendererFunction",version:ii,beans:[class extends wt{constructor(){super(...arguments),this.beanName="agCompUtils"}adaptFunction(e,t){if(!e.cellRenderer)return null;return class{refresh(){return!1}getGui(){return this.eGui}init(e){const i=t(e),s=typeof i;this.eGui="string"!==s&&"number"!==s&&"boolean"!==s?null!=i?i:Go({tag:"span"}):Le(""+i+"")}}}}]},mu=class extends vt{constructor(){super(...arguments),this.beanName="registry"}registerDynamicBeans(e){if(e){this.dynamicBeans??(this.dynamicBeans={});for(const t of Object.keys(e))this.dynamicBeans[t]=e[t]}}createDynamicBean(e,t,...i){if(!this.dynamicBeans)throw new Error(this.getDynamicError(e,!0));const s=this.dynamicBeans[e];if(null!=s)return new s(...i);if(t)throw new Error(this.getDynamicError(e,!1))}};function fu(e){return"object"==typeof e&&!!e.getComp}var Cu,vu,wu="object"!=typeof window||!window?.document?.fonts?.forEach,bu=(e,t,i,s,o,r,n=!1)=>{if(wu)return;s&&(e=`@layer ${CSS.escape(s).replaceAll("\\.",".")} { ${e} }`);let a=xu.map.get(t);if(a||(a=[],xu.map.set(t,a)),a.some(t=>t.css===e))return;const l=document.createElement("style");r&&l.setAttribute("nonce",r),l.dataset.agGlobalCss=i,l.textContent=e;const d={css:e,el:l,priority:o,isParams:n};let c;for(const e of a){if(e.priority>o)break;c=e}if(c){c.el.after(l);const e=a.indexOf(c);a.splice(e+1,0,d)}else"STYLE"===t.nodeName?t.after(l):t.insertBefore(l,t.querySelector(":not(title, meta)")),a.push(d)},yu=(e,t,i,s)=>{bu(':where([class^=ag-]),:where([class^=ag-]):after,:where([class^=ag-]):before{box-sizing:border-box}:where([class^=ag-]):where(button){color:inherit}:where([class^=ag-]):where(div,span,label):focus-visible{box-shadow:inset var(--ag-focus-shadow);outline:none;&:where(.invalid){box-shadow:inset var(--ag-focus-error-shadow)}}:where([class^=ag-]) ::-ms-clear{display:none}.ag-hidden{display:none!important}.ag-invisible{visibility:hidden!important}.ag-tab-guard{display:block;height:0;position:absolute;width:0}.ag-tab-guard-top{top:1px}.ag-tab-guard-bottom{bottom:1px}.ag-measurement-container{height:0;overflow:hidden;visibility:hidden;width:0}.ag-measurement-element-border{display:inline-block}.ag-measurement-element-border:before{border-left:var(--ag-internal-measurement-border);content:"";display:block}.ag-popup-child{top:0;z-index:5}.ag-popup-child:where(:not(.ag-tooltip-custom)){box-shadow:var(--ag-popup-shadow)}.ag-input-wrapper,.ag-picker-field-wrapper{align-items:center;display:flex;flex:1 1 auto;line-height:normal;position:relative}.ag-input-field{align-items:center;display:flex;flex-direction:row}.ag-input-field-input:where(:not([type=checkbox],[type=radio])){flex:1 1 auto;min-width:0;width:100%}.ag-chart,.ag-dnd-ghost,.ag-external,.ag-popup,.ag-root-wrapper{cursor:default;line-height:normal;white-space:normal;-webkit-font-smoothing:antialiased;background-color:var(--ag-background-color);color:var(--ag-text-color);color-scheme:var(--ag-browser-color-scheme);font-family:var(--ag-font-family);font-size:var(--ag-font-size);--ag-indentation-level:0}:where(.ag-icon):before{align-items:center;background-color:currentcolor;color:inherit;content:"";display:flex;font-family:inherit;font-size:var(--ag-icon-size);font-style:normal;font-variant:normal;height:var(--ag-icon-size);justify-content:center;line-height:var(--ag-icon-size);-webkit-mask-size:contain;mask-size:contain;text-transform:none;width:var(--ag-icon-size)}.ag-icon{background-position:50%;background-repeat:no-repeat;background-size:contain;color:var(--ag-icon-color);display:block;height:var(--ag-icon-size);position:relative;-webkit-user-select:none;-moz-user-select:none;user-select:none;width:var(--ag-icon-size)}.ag-disabled .ag-icon,[disabled] .ag-icon{opacity:.5}.ag-icon-grip.ag-disabled,.ag-icon-grip[disabled]{opacity:.35}.ag-resizer{pointer-events:none;position:absolute;-webkit-user-select:none;-moz-user-select:none;user-select:none;z-index:1}:where(.ag-resizer){&.ag-resizer-topLeft{cursor:nwse-resize;height:5px;left:0;top:0;width:5px}&.ag-resizer-top{cursor:ns-resize;height:5px;left:5px;right:5px;top:0}&.ag-resizer-topRight{cursor:nesw-resize;height:5px;right:0;top:0;width:5px}&.ag-resizer-right{bottom:5px;cursor:ew-resize;right:0;top:5px;width:5px}&.ag-resizer-bottomRight{bottom:0;cursor:nwse-resize;height:5px;right:0;width:5px}&.ag-resizer-bottom{bottom:0;cursor:ns-resize;height:5px;left:5px;right:5px}&.ag-resizer-bottomLeft{bottom:0;cursor:nesw-resize;height:5px;left:0;width:5px}&.ag-resizer-left{bottom:5px;cursor:ew-resize;left:0;top:5px;width:5px}}.ag-menu{background-color:var(--ag-menu-background-color);border:var(--ag-menu-border);border-radius:var(--ag-border-radius);box-shadow:var(--ag-menu-shadow);color:var(--ag-menu-text-color);max-height:100%;overflow-y:auto;position:absolute;-webkit-user-select:none;-moz-user-select:none;user-select:none}',e,"shared",t,0,i),s?.forEach((s,o)=>s.forEach(s=>bu(s,e,o,t,0,i)))},Su=(e,t=!1)=>{const i=new Set;for(const t of xu.grids.values())t.styleContainer===e&&i.add(t.paramsCss);const s=xu.map.get(e)??[];for(let e=s.length-1;e>=0;e--)(t||s[e].isParams&&!i.has(s[e].css))&&(s[e].el.remove(),s.splice(e,1))},xu=(Cu="object"==typeof window?window:{}).agStyleInjectionState??(Cu.agStyleInjectionState={map:new WeakMap,grids:new Map}),Fu=e=>new Mu(e),Ru="$default",Pu=0,Mu=class{constructor({feature:e,params:t,modeParams:i={},css:s,cssImports:o}){this.feature=e,this.css=s,this.cssImports=o,this.modeParams={[Ru]:{...i[Ru]??{},...t??{}},...i}}use(e,t,i){let s=this._inject;if(null==s){let{css:e}=this;if(e){const t=`ag-theme-${this.feature??"part"}-${++Pu}`;"function"==typeof e&&(e=e()),e=`:where(.${t}) {\n${e}\n}\n`;for(const t of this.cssImports??[])e=`@import url(${JSON.stringify(t)});\n${e}`;s={css:e,class:t}}else s=!1;this._inject=s}return s&&e&&bu(s.css,e,s.class,t,1,i),!!s&&s.class}},Eu=e=>{return`--ag-${t=e,t.replace(/[A-Z]|\d+/g,e=>`-${e}`).toLowerCase()}`;var t},Au=e=>`var(${Eu(e)})`,Tu=e=>({ref:"accentColor",mix:e}),Du=e=>({ref:"foregroundColor",mix:e}),Iu=e=>({ref:"foregroundColor",mix:e,onto:"backgroundColor"}),ku={ref:"backgroundColor"},Lu={ref:"foregroundColor"},Ou={ref:"accentColor"},Gu={backgroundColor:"#fff",foregroundColor:"#181d1f",borderColor:Du(.15),chromeBackgroundColor:Iu(.02),browserColorScheme:"light"},Nu={...Gu,textColor:Lu,accentColor:"#2196f3",invalidColor:"#e02525",fontFamily:["-apple-system","BlinkMacSystemFont","Segoe UI","Roboto","Oxygen-Sans","Ubuntu","Cantarell","Helvetica Neue","sans-serif"],subtleTextColor:{ref:"textColor",mix:.5},borderWidth:1,borderRadius:4,spacing:8,fontSize:14,focusShadow:{spread:3,color:Tu(.5)},focusErrorShadow:{spread:3,color:{ref:"invalidColor",onto:"backgroundColor",mix:.5}},popupShadow:"0 0 16px #00000026",cardShadow:"0 1px 4px 1px #00000018",dropdownShadow:{ref:"cardShadow"},listItemHeight:{calc:"max(iconSize, dataFontSize) + widgetVerticalSpacing"},dragAndDropImageBackgroundColor:ku,dragAndDropImageBorder:!0,dragAndDropImageNotAllowedBorder:{color:{ref:"invalidColor",onto:"dragAndDropImageBackgroundColor",mix:.5}},dragAndDropImageShadow:{ref:"popupShadow"},iconSize:16,iconColor:"inherit",toggleButtonWidth:28,toggleButtonHeight:18,toggleButtonOnBackgroundColor:Ou,toggleButtonOffBackgroundColor:Iu(.3),toggleButtonSwitchBackgroundColor:ku,toggleButtonSwitchInset:2,tooltipBackgroundColor:{ref:"chromeBackgroundColor"},tooltipErrorBackgroundColor:{ref:"invalidColor",onto:"backgroundColor",mix:.1},tooltipTextColor:{ref:"textColor"},tooltipErrorTextColor:{ref:"invalidColor"},tooltipBorder:!0,tooltipErrorBorder:{color:{ref:"invalidColor",onto:"backgroundColor",mix:.25}},panelBackgroundColor:ku,panelTitleBarHeight:{ref:"headerHeight"},panelTitleBarBackgroundColor:{ref:"headerBackgroundColor"},panelTitleBarIconColor:{ref:"headerTextColor"},panelTitleBarTextColor:{ref:"headerTextColor"},panelTitleBarFontFamily:{ref:"headerFontFamily"},panelTitleBarFontSize:{ref:"headerFontSize"},panelTitleBarFontWeight:{ref:"headerFontWeight"},panelTitleBarBorder:!0,dialogShadow:{ref:"popupShadow"},dialogBorder:{color:Du(.2)},widgetContainerHorizontalPadding:{calc:"spacing * 1.5"},widgetContainerVerticalPadding:{calc:"spacing * 1.5"},widgetHorizontalSpacing:{calc:"spacing * 1.5"},widgetVerticalSpacing:{ref:"spacing"},dataFontSize:{ref:"fontSize"},headerBackgroundColor:{ref:"chromeBackgroundColor"},headerFontFamily:{ref:"fontFamily"},headerFontSize:{ref:"fontSize"},headerFontWeight:500,headerTextColor:{ref:"textColor"},headerHeight:{calc:"max(iconSize, dataFontSize) + spacing * 4 * headerVerticalPaddingScale"},headerVerticalPaddingScale:1,menuBorder:{color:Du(.2)},menuBackgroundColor:Iu(.03),menuTextColor:Iu(.95),menuShadow:{ref:"popupShadow"},menuSeparatorColor:{ref:"borderColor"}},Bu=["colorScheme","color","length","scale","borderStyle","border","shadow","image","fontFamily","fontWeight","duration"],Vu=(e=>{const t=new Map;return i=>{const s=i;return t.has(s)||t.set(s,e(i)),t.get(s)}})(e=>(e=e.toLowerCase(),Bu.find(t=>e.endsWith(t.toLowerCase()))??"length")),_u=e=>"object"==typeof e&&e?.ref?Au(e.ref):"string"==typeof e?e:"number"==typeof e&&String(e),Hu=e=>{if("string"==typeof e)return e;if("object"==typeof e&&e&&"ref"in e){const t=Au(e.ref);if(null==e.mix)return t;return`color-mix(in srgb, ${e.onto?Au(e.onto):"transparent"}, ${t} ${((e,t,i)=>Math.max(t,Math.min(i,e)))(100*e.mix,0,100)}%)`}return!1},zu=e=>{if("string"==typeof e)return e;if("number"==typeof e)return`${e}px`;if("object"==typeof e&&e&&"calc"in e){return`calc(${e.calc.replace(/ ?[*/+] ?/g," $& ").replace(/-?\b[a-z][a-z0-9]*\b(?![-(])/gi,e=>"-"===e[0]?e:" "+Au(e)+" ")})`}return!("object"!=typeof e||!e||!("ref"in e))&&Au(e.ref)},Wu=(e,t)=>"string"==typeof e?e:!0===e?Wu({},t):!1===e?"columnBorder"===t?Wu({color:"transparent"},t):"none":"object"==typeof e&&e&&"ref"in e?Au(e.ref):ju(e.style??"solid")+" "+zu(e.width??{ref:"borderWidth"})+" "+Hu(e.color??{ref:"borderColor"}),Uu=e=>[zu(e.offsetX??0),zu(e.offsetY??0),zu(e.radius??0),zu(e.spread??0),Hu(e.color??{ref:"foregroundColor"}),...e.inset?["inset"]:[]].join(" "),ju=_u,Ku=e=>"string"==typeof e?e.includes(",")?e:$u(e):"object"==typeof e&&e&&"googleFont"in e?Ku(e.googleFont):"object"==typeof e&&e&&"ref"in e?Au(e.ref):!!Array.isArray(e)&&e.map(e=>("object"==typeof e&&"googleFont"in e&&(e=e.googleFont),$u(e))).join(", "),$u=e=>/^[\w-]+$|\w\(/.test(e)?e:JSON.stringify(e),qu=_u,Yu=e=>"string"==typeof e?e:"object"==typeof e&&e&&"url"in e?`url(${JSON.stringify(e.url)})`:"object"==typeof e&&e&&"svg"in e?Yu({url:`data:image/svg+xml,${encodeURIComponent(e.svg)}`}):!("object"!=typeof e||!e||!("ref"in e))&&Au(e.ref),Xu={color:Hu,colorScheme:_u,length:zu,scale:_u,border:Wu,borderStyle:ju,shadow:e=>"string"==typeof e?e:!1===e?"none":"object"==typeof e&&e&&"ref"in e?Au(e.ref):Array.isArray(e)?e.map(Uu).join(", "):Uu(e),image:Yu,fontFamily:Ku,fontWeight:qu,duration:(e,t,i)=>"string"==typeof e?e:"number"==typeof e?(e>=10&&i.warn(104,{value:e,param:t}),`${e}s`):!("object"!=typeof e||!e||!("ref"in e))&&Au(e.ref)},Zu=(e,t,i)=>{const s=Vu(e);return Xu[s](t,e,i)},Qu=0,Ju=e=>{if(!(e instanceof th))throw new Error("theme is not an object created by createTheme");return e},eh=(e,t)=>new th({themeLogger:e,overridePrefix:t}),th=class e{constructor(e,t=[]){this.params=e,this.parts=t}withPart(t){return"function"==typeof t&&(t=t()),t instanceof Mu?new e(this.params,[...this.parts,t]):(this.params.themeLogger.preInitErr(259,"Invalid part",{part:t}),this)}withoutPart(e){return this.withPart(Fu({feature:e}))}withParams(e,t=Ru){return this.withPart(Fu({modeParams:{[t]:e}}))}_startUse({styleContainer:e,cssLayer:t,nonce:i,loadThemeGoogleFonts:s,moduleCss:o}){if(wu)return;rh(),yu(e,t,i,o);const r=sh(this);if(r.length>0)for(const e of r)s&&nh(e,i);for(const s of this.parts)s.use(e,t,i)}_getCssClass(){return this._cssClassCache??(this._cssClassCache=ih(this.parts).map(e=>e.use(void 0,void 0,void 0)).filter(Boolean).concat(this._getParamsClassName()).join(" "))}_getParamsClassName(){return this._paramsClassName??(this._paramsClassName="ag-theme-params-"+ ++Qu)}_getModeParams(){let e=this._paramsCache;if(!e){const t={[Ru]:{...Nu}};for(const e of ih(this.parts))for(const i of Object.keys(e.modeParams)){const s=e.modeParams[i];if(s){const e=t[i]??(t[i]={}),o=new Set;for(const t of Object.keys(s)){const i=s[t];void 0!==i&&(e[t]=i,o.add(t))}if(i===Ru)for(const e of Object.keys(t)){const i=t[e];if(e!==Ru)for(const e of o)delete i[e]}}}this._paramsCache=e=t}return e}_getParamsCss(){if(!this._paramsCssCache){let e="",t="";const i=this._getModeParams(),{overridePrefix:s,themeLogger:o}=this.params,r=s?`--ag-${s}-`:void 0;for(const s of Object.keys(i)){const n=i[s];if(s!==Ru){const i=`:where([data-ag-theme-mode="${"object"==typeof CSS?CSS.escape(s):s}"]) & {\n`;e+=i,t+=i}for(const i of Object.keys(n).sort()){const s=n[i],a=Zu(i,s,o);if(!1===a)o.error(107,{key:i,value:s});else{const s=Eu(i),o=r?s.replace("--ag-",r):s,n=s.replace("--ag-","--ag-inherited-");e+=`\t${s}: var(${n}, ${a});\n`,t+=`\t${n}: var(${o});\n`}}s!==Ru&&(e+="}\n",t+="}\n")}const n=`:where(.${this._getParamsClassName()})`;let a=`${n} {\n${e}}\n`;a+=`:has(> ${n}):not(${n}) {\n${t}}\n`,this._paramsCssCache=a}return this._paramsCssCache}},ih=e=>{const t=new Map;for(const i of e)t.set(i.feature,i);const i=[];for(const s of e)s.feature&&t.get(s.feature)!==s||i.push(s);return i},sh=e=>{const t=new Set,i=e=>{if(Array.isArray(e))e.forEach(i);else{const i=e?.googleFont;"string"==typeof i&&t.add(i)}};return Object.values(e._getModeParams()).flatMap(e=>Object.values(e)).forEach(i),Array.from(t).sort()},oh=!1,rh=()=>{if(!oh){oh=!0;for(const e of Array.from(document.head.querySelectorAll('style[data-ag-scope="legacy"]')))e.remove()}},nh=async(e,t)=>{const i=`@import url('https://${ah}/css2?family=${encodeURIComponent(e)}:wght@100;200;300;400;500;600;700;800;900&display=swap');\n`;bu(i,document.head,`googleFont:${e}`,void 0,0,t)},ah="fonts.googleapis.com",lh={changeKey:"listItemHeight",type:"length",defaultValue:24},dh=class extends vt{constructor(){super(...arguments),this.beanName="environment",this.sizeEls=new Map,this.lastKnownValues=new Map,this.sizesMeasured=!1,this.globalCSS=[]}wireBeans(e){this.eRootDiv=e.eRootDiv}postConstruct(){const{gos:e,eRootDiv:t}=this;e.setInstanceDomData(t);const i=e.get("themeStyleContainer"),s="undefined"!=typeof ShadowRoot,o=s&&t.getRootNode()instanceof ShadowRoot;this.eStyleContainer=("function"==typeof i?i():i)??(o?t:document.head),i||o||!s||uh(t,this.shadowRootError.bind(this),this.addDestroyFunc.bind(this)),this.cssLayer=e.get("themeCssLayer"),this.styleNonce=e.get("styleNonce"),this.addManagedPropertyListener("theme",()=>this.handleThemeChange()),this.handleThemeChange(),this.getSizeEl(lh),this.initVariables(),this.addDestroyFunc(()=>(e=>{const t=xu.grids.get(e)?.styleContainer;if(!t)return;xu.grids.delete(e),Array.from(xu.grids.values()).some(e=>e.styleContainer===t)?Su(t):(Su(t,!0),xu.map.delete(t))})(this)),this.mutationObserver=new MutationObserver(()=>{this.fireStylesChangedEvent("theme")}),this.addDestroyFunc(()=>this.mutationObserver.disconnect())}applyThemeClasses(e,t=[]){const{theme:i}=this,s=i?i._getCssClass():this.applyLegacyThemeClasses();for(const t of Array.from(e.classList))t.startsWith("ag-theme-")&&e.classList.remove(t);if(s){const i=e.className;e.className=`${i}${i?" ":""}${s}${t?.length?" "+t.join(" "):""}`}}applyLegacyThemeClasses(){let e="";this.mutationObserver.disconnect();let t=this.eRootDiv;for(;t;){let i=!1;for(const s of Array.from(t.classList))s.startsWith("ag-theme-")&&(i=!0,e=e?`${e} ${s}`:s);i&&this.mutationObserver.observe(t,{attributes:!0,attributeFilter:["class"]}),t=t.parentElement}return e}addGlobalCSS(e,t){this.theme?bu(e,this.eStyleContainer,t,this.cssLayer,0,this.styleNonce):this.globalCSS.push([e,t])}getDefaultListItemHeight(){return this.getCSSVariablePixelValue(lh)}getCSSVariablePixelValue(e){const t=this.lastKnownValues.get(e);if(null!=t)return t;const i=this.measureSizeEl(e);return"detached"===i||"no-styles"===i?(e.cacheDefault&&this.lastKnownValues.set(e,e.defaultValue),e.defaultValue):(this.lastKnownValues.set(e,i),i)}measureSizeEl(e){const t=this.getSizeEl(e);if(null==t.offsetParent)return"detached";const i=t.offsetWidth;return i===ch?"no-styles":(this.sizesMeasured=!0,i)}getMeasurementContainer(){let e=this.eMeasurementContainer;return e||(e=this.eMeasurementContainer=Je({tag:"div",cls:"ag-measurement-container"}),this.eRootDiv.appendChild(e)),e}getSizeEl(e){let t=this.sizeEls.get(e);if(t)return t;const i=this.getMeasurementContainer();t=Je({tag:"div"});const s=this.setSizeElStyles(t,e);i.appendChild(t),this.sizeEls.set(e,t);const{type:o,noWarn:r}=e;if("length"!==o&&"border"!==o)return t;let n=this.measureSizeEl(e);"no-styles"!==n||r||this.varError(s,e.defaultValue);const a=qe(this.beans,t,()=>{const t=this.measureSizeEl(e);"detached"!==t&&"no-styles"!==t&&(this.lastKnownValues.set(e,t),t!==n&&(n=t,this.fireStylesChangedEvent(e.changeKey)))});return this.addDestroyFunc(()=>a()),t}setSizeElStyles(e,t){const{changeKey:i,type:s}=t;let o=Eu(i);return"border"===s?(o.endsWith("-width")&&(o=o.slice(0,-6)),e.className="ag-measurement-element-border",e.style.setProperty("--ag-internal-measurement-border",`var(${o}, solid ${ch}px)`)):e.style.width=`var(${o}, ${ch}px)`,o}handleThemeChange(){const{gos:e,theme:t}=this,i=e.get("theme");let s;if("legacy"===i)s=void 0;else{const e=i??this.getDefaultTheme();e instanceof th?s=e:this.themeError(e)}s!==t&&this.handleNewTheme(s),this.postProcessThemeChange(s,i)}handleNewTheme(e){const{gos:t,eRootDiv:i,globalCSS:s}=this,o=this.getAdditionalCss();if(e){yu(this.eStyleContainer,this.cssLayer,this.styleNonce,o);for(const[e,t]of s)bu(e,this.eStyleContainer,t,this.cssLayer,0,this.styleNonce);s.length=0}this.theme=e,e?._startUse({loadThemeGoogleFonts:t.get("loadThemeGoogleFonts"),styleContainer:this.eStyleContainer,cssLayer:this.cssLayer,nonce:this.styleNonce,moduleCss:o}),((e,t,i,s,o,r)=>{if(wu)return;const n=xu.grids.get(e);n?n.paramsCss=t:xu.grids.set(e,{styleContainer:s,paramsCss:t}),Su(s),t&&i&&bu(t,s,i,o,2,r,!0)})(this,e?._getParamsCss()??null,e?._getParamsClassName()??null,this.eStyleContainer,this.cssLayer,this.styleNonce),this.applyThemeClasses(i),this.fireStylesChangedEvent("theme")}fireStylesChangedEvent(e){this.eventSvc.dispatchEvent({type:"stylesChanged",[`${e}Changed`]:!0})}},ch=15538,uh=(e,t,i)=>{let s=60;const o=setInterval(()=>{"undefined"!=typeof ShadowRoot&&e.getRootNode()instanceof ShadowRoot&&(t(),clearInterval(o)),(Ie(e)||--s<0)&&clearInterval(o)},1e3);i(()=>clearInterval(o))},hh={wrapperBorder:!0,rowBorder:!0,headerRowBorder:!0,footerRowBorder:{ref:"rowBorder"},columnBorder:{style:"solid",width:1,color:"transparent"},headerColumnBorder:!1,headerColumnBorderHeight:"100%",pinnedColumnBorder:!0,pinnedRowBorder:!0,sidePanelBorder:!0,sideBarPanelWidth:250,sideBarBackgroundColor:{ref:"chromeBackgroundColor"},sideButtonBarBackgroundColor:{ref:"sideBarBackgroundColor"},sideButtonBarTopPadding:0,sideButtonSelectedUnderlineWidth:2,sideButtonSelectedUnderlineColor:"transparent",sideButtonSelectedUnderlineTransitionDuration:0,sideButtonBackgroundColor:"transparent",sideButtonTextColor:{ref:"textColor"},sideButtonHoverBackgroundColor:{ref:"sideButtonBackgroundColor"},sideButtonHoverTextColor:{ref:"sideButtonTextColor"},sideButtonSelectedBackgroundColor:ku,sideButtonSelectedTextColor:{ref:"sideButtonTextColor"},sideButtonBorder:"solid 1px transparent",sideButtonSelectedBorder:!0,sideButtonLeftPadding:{ref:"spacing"},sideButtonRightPadding:{ref:"spacing"},sideButtonVerticalPadding:{calc:"spacing * 3"},cellFontFamily:{ref:"fontFamily"},headerCellHoverBackgroundColor:"transparent",headerCellMovingBackgroundColor:{ref:"headerCellHoverBackgroundColor"},headerCellBackgroundTransitionDuration:"0.2s",cellTextColor:{ref:"textColor"},rangeSelectionBorderStyle:"solid",rangeSelectionBorderColor:Ou,rangeSelectionBackgroundColor:Tu(.2),rangeSelectionChartBackgroundColor:"#0058FF1A",rangeSelectionChartCategoryBackgroundColor:"#00FF841A",rangeSelectionHighlightColor:Tu(.5),rangeHeaderHighlightColor:(vu=.08,{ref:"foregroundColor",mix:vu,onto:"headerBackgroundColor"}),rowNumbersSelectedColor:Tu(.5),rowHoverColor:Tu(.08),columnHoverColor:Tu(.05),selectedRowBackgroundColor:Tu(.12),modalOverlayBackgroundColor:{ref:"backgroundColor",mix:.66},dataBackgroundColor:ku,oddRowBackgroundColor:{ref:"dataBackgroundColor"},wrapperBorderRadius:8,cellHorizontalPadding:{calc:"spacing * 2 * cellHorizontalPaddingScale"},cellWidgetSpacing:{calc:"spacing * 1.5"},cellHorizontalPaddingScale:1,rowGroupIndentSize:{calc:"cellWidgetSpacing + iconSize"},valueChangeDeltaUpColor:"#43a047",valueChangeDeltaDownColor:"#e53935",valueChangeValueHighlightBackgroundColor:"#16a08580",rowHeight:{calc:"max(iconSize, dataFontSize) + spacing * 3.25 * rowVerticalPaddingScale"},rowVerticalPaddingScale:1,paginationPanelHeight:{ref:"rowHeight",calc:"max(rowHeight, 22px)"},dragHandleColor:Du(.7),headerColumnResizeHandleHeight:"30%",headerColumnResizeHandleWidth:2,headerColumnResizeHandleColor:{ref:"borderColor"},iconButtonColor:{ref:"iconColor"},iconButtonBackgroundColor:"transparent",iconButtonBackgroundSpread:4,iconButtonBorderRadius:1,iconButtonHoverColor:{ref:"iconButtonColor"},iconButtonHoverBackgroundColor:Du(.1),iconButtonActiveColor:Ou,iconButtonActiveBackgroundColor:Tu(.28),iconButtonActiveIndicatorColor:Ou,setFilterIndentSize:{ref:"iconSize"},chartMenuPanelWidth:260,chartMenuLabelColor:Du(.8),cellEditingBorder:{color:Ou},cellEditingShadow:{ref:"cardShadow"},fullRowEditInvalidBackgroundColor:{ref:"invalidColor",onto:"backgroundColor",mix:.25},columnSelectIndentSize:{ref:"iconSize"},toolPanelSeparatorBorder:!0,columnDropCellBackgroundColor:Du(.07),columnDropCellTextColor:{ref:"textColor"},columnDropCellDragHandleColor:{ref:"textColor"},columnDropCellBorder:{color:Du(.13)},selectCellBackgroundColor:Du(.07),selectCellBorder:{color:Du(.13)},advancedFilterBuilderButtonBarBorder:!0,advancedFilterBuilderIndentSize:{calc:"spacing * 2 + iconSize"},advancedFilterBuilderJoinPillColor:"#f08e8d",advancedFilterBuilderColumnPillColor:"#a6e194",advancedFilterBuilderOptionPillColor:"#f3c08b",advancedFilterBuilderValuePillColor:"#85c0e4",filterPanelApplyButtonColor:ku,filterPanelApplyButtonBackgroundColor:Ou,filterPanelCardSubtleColor:{ref:"textColor",mix:.7},filterPanelCardSubtleHoverColor:{ref:"textColor"},findMatchColor:Lu,findMatchBackgroundColor:"#ffff00",findActiveMatchColor:Lu,findActiveMatchBackgroundColor:"#ffa500",filterToolPanelGroupIndent:{ref:"spacing"},rowLoadingSkeletonEffectColor:Du(.15),statusBarLabelColor:Lu,statusBarLabelFontWeight:500,statusBarValueColor:Lu,statusBarValueFontWeight:500,pinnedSourceRowTextColor:{ref:"textColor"},pinnedSourceRowBackgroundColor:{ref:"dataBackgroundColor"},pinnedSourceRowFontWeight:600,pinnedRowFontWeight:600,pinnedRowBackgroundColor:{ref:"dataBackgroundColor"},pinnedRowTextColor:{ref:"textColor"},rowDragIndicatorColor:{ref:"rangeSelectionBorderColor"},rowDragIndicatorWidth:2,columnDragIndicatorColor:{ref:"accentColor"},columnDragIndicatorWidth:2},gh={cellBatchEditBackgroundColor:"rgba(220 181 139 / 16%)",cellBatchEditTextColor:"#422f00",rowBatchEditBackgroundColor:{ref:"cellBatchEditBackgroundColor"},rowBatchEditTextColor:{ref:"cellBatchEditTextColor"}},ph={...gh,cellBatchEditTextColor:"#f3d0b3"},mh=(()=>Fu({feature:"batchEditStyle",params:gh,css:".ag-cell-batch-edit{background-color:var(--ag-cell-batch-edit-background-color);color:var(--ag-cell-batch-edit-text-color);display:inherit}.ag-row-batch-edit{background-color:var(--ag-row-batch-edit-background-color);color:var(--ag-row-batch-edit-text-color)}"}))(),fh=":where(.ag-button){background:none;border:none;color:inherit;cursor:pointer;font-family:inherit;font-size:inherit;font-weight:inherit;letter-spacing:inherit;line-height:inherit;margin:0;padding:0;text-indent:inherit;text-shadow:inherit;text-transform:inherit;word-spacing:inherit;&:disabled{cursor:default}&:focus-visible{box-shadow:var(--ag-focus-shadow);outline:none}}.ag-standard-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:var(--ag-button-background-color);border:var(--ag-button-border);border-radius:var(--ag-button-border-radius);color:var(--ag-button-text-color);cursor:pointer;font-weight:var(--ag-button-font-weight);padding:var(--ag-button-vertical-padding) var(--ag-button-horizontal-padding);&:active{background-color:var(--ag-button-active-background-color);border:var(--ag-button-active-border);color:var(--ag-button-active-text-color)}&:disabled{background-color:var(--ag-button-disabled-background-color);border:var(--ag-button-disabled-border);color:var(--ag-button-disabled-text-color)}}.ag-standard-button:hover{background-color:var(--ag-button-hover-background-color);border:var(--ag-button-hover-border);color:var(--ag-button-hover-text-color)}",Ch={buttonTextColor:"inherit",buttonFontWeight:"normal",buttonBackgroundColor:"transparent",buttonBorder:!1,buttonBorderRadius:{ref:"borderRadius"},buttonHorizontalPadding:{calc:"spacing * 2"},buttonVerticalPadding:{ref:"spacing"},buttonHoverTextColor:{ref:"buttonTextColor"},buttonHoverBackgroundColor:{ref:"buttonBackgroundColor"},buttonHoverBorder:{ref:"buttonBorder"},buttonActiveTextColor:{ref:"buttonHoverTextColor"},buttonActiveBackgroundColor:{ref:"buttonHoverBackgroundColor"},buttonActiveBorder:{ref:"buttonHoverBorder"},buttonDisabledTextColor:{ref:"inputDisabledTextColor"},buttonDisabledBackgroundColor:{ref:"inputDisabledBackgroundColor"},buttonDisabledBorder:{ref:"inputDisabledBorder"}},vh=(()=>Fu({feature:"buttonStyle",params:Ch,css:fh}))(),wh=(()=>Fu({feature:"buttonStyle",params:{...Ch,buttonBackgroundColor:ku,buttonBorder:!0,buttonHoverBackgroundColor:{ref:"rowHoverColor"},buttonActiveBorder:{color:Ou}},css:fh}))(),bh=(()=>Fu({feature:"buttonStyle",params:{...Ch,buttonBackgroundColor:ku,buttonBorder:{color:Ou},buttonFontWeight:600,buttonTextColor:Ou,buttonHoverBackgroundColor:{ref:"rowHoverColor"},buttonActiveBackgroundColor:Ou,buttonActiveTextColor:ku},css:fh}))(),yh=(()=>Fu({feature:"buttonStyle",params:{...Ch,buttonBorder:{color:Lu,width:2,style:"outset"},buttonActiveBorder:{color:Lu,width:2,style:"inset"},buttonBackgroundColor:Iu(.07),buttonHoverBackgroundColor:ku,buttonVerticalPadding:{calc:"spacing * 0.5"}},css:fh}))(),Sh=(()=>Fu({feature:"columnDropStyle",css:".ag-column-drop-vertical-empty-message{align-items:center;border:dashed var(--ag-border-width);border-color:var(--ag-border-color);display:flex;inset:0;justify-content:center;margin:calc(var(--ag-spacing)*1.5) calc(var(--ag-spacing)*2);overflow:hidden;padding:calc(var(--ag-spacing)*2);position:absolute}"}))(),xh=(()=>Fu({feature:"columnDropStyle",css:".ag-column-drop-vertical-empty-message{color:var(--ag-subtle-text-color);font-size:calc(var(--ag-font-size) - 1px);font-weight:600;padding-top:var(--ag-spacing)}:where(.ag-ltr) .ag-column-drop-vertical-empty-message{padding-left:calc(var(--ag-icon-size) + var(--ag-spacing) + var(--ag-widget-horizontal-spacing));padding-right:var(--ag-spacing)}:where(.ag-rtl) .ag-column-drop-vertical-empty-message{padding-left:var(--ag-spacing);padding-right:calc(var(--ag-icon-size) + var(--ag-spacing) + var(--ag-widget-horizontal-spacing))}"}))(),Fh={formulaToken1Color:"#3269c6",formulaToken1BackgroundColor:{ref:"formulaToken1Color",mix:.08},formulaToken1Border:{color:{ref:"formulaToken1Color"}},formulaToken2Color:"#c0343f",formulaToken2BackgroundColor:{ref:"formulaToken2Color",mix:.06},formulaToken2Border:{color:{ref:"formulaToken2Color"}},formulaToken3Color:"#8156b8",formulaToken3BackgroundColor:{ref:"formulaToken3Color",mix:.08},formulaToken3Border:{color:{ref:"formulaToken3Color"}},formulaToken4Color:"#007c1f",formulaToken4BackgroundColor:{ref:"formulaToken4Color",mix:.06},formulaToken4Border:{color:{ref:"formulaToken4Color"}},formulaToken5Color:"#b03e85",formulaToken5BackgroundColor:{ref:"formulaToken5Color",mix:.08},formulaToken5Border:{color:{ref:"formulaToken5Color"}},formulaToken6Color:"#b74900",formulaToken6BackgroundColor:{ref:"formulaToken6Color",mix:.06},formulaToken6Border:{color:{ref:"formulaToken6Color"}},formulaToken7Color:"#247492",formulaToken7BackgroundColor:{ref:"formulaToken7Color",mix:.08},formulaToken7Border:{color:{ref:"formulaToken7Color"}}},Rh=(()=>Fu({feature:"formulaStyle",params:Fh}))(),Ph={warn:(...e)=>{gi(e[0],e[1])},error:(...e)=>{pi(e[0],e[1])},preInitErr:(...e)=>{mi(e[0],e[2],e[1])}},Mh=()=>eh(Ph).withParams(hh).withPart(wh).withPart(Sh).withPart(mh).withPart(Rh),Eh=(()=>Fu({feature:"checkboxStyle",params:{checkboxBorderWidth:1,checkboxBorderRadius:{ref:"borderRadius"},checkboxUncheckedBackgroundColor:ku,checkboxUncheckedBorderColor:Iu(.3),checkboxCheckedBackgroundColor:Ou,checkboxCheckedBorderColor:{ref:"checkboxCheckedBackgroundColor"},checkboxCheckedShapeImage:{svg:''},checkboxCheckedShapeColor:ku,checkboxIndeterminateBackgroundColor:Iu(.3),checkboxIndeterminateBorderColor:{ref:"checkboxIndeterminateBackgroundColor"},checkboxIndeterminateShapeImage:{svg:''},checkboxIndeterminateShapeColor:ku,radioCheckedShapeImage:{svg:''}},css:'.ag-checkbox-input-wrapper,.ag-radio-button-input-wrapper{background-color:var(--ag-checkbox-unchecked-background-color);border:solid var(--ag-checkbox-border-width) var(--ag-checkbox-unchecked-border-color);flex:none;height:var(--ag-icon-size);position:relative;width:var(--ag-icon-size);&:where(.ag-checked){background-color:var(--ag-checkbox-checked-background-color);border-color:var(--ag-checkbox-checked-border-color)}&:where(.ag-checked):after{background-color:var(--ag-checkbox-checked-shape-color)}&:where(.ag-disabled){filter:grayscale();opacity:.5}}.ag-checkbox-input,.ag-radio-button-input{-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;display:block;height:var(--ag-icon-size);margin:0;opacity:0;width:var(--ag-icon-size)}.ag-checkbox-input-wrapper:after,.ag-radio-button-input-wrapper:after{content:"";display:block;inset:0;-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;pointer-events:none;position:absolute}.ag-checkbox-input-wrapper:where(:focus-within,:active),.ag-radio-button-input-wrapper:where(:focus-within,:active){box-shadow:var(--ag-focus-shadow)}.ag-checkbox-input-wrapper{border-radius:var(--ag-checkbox-border-radius);&:where(.ag-checked):after{-webkit-mask-image:var(--ag-checkbox-checked-shape-image);mask-image:var(--ag-checkbox-checked-shape-image)}&:where(.ag-indeterminate){background-color:var(--ag-checkbox-indeterminate-background-color);border-color:var(--ag-checkbox-indeterminate-border-color)}&:where(.ag-indeterminate):after{background-color:var(--ag-checkbox-indeterminate-shape-color);-webkit-mask-image:var(--ag-checkbox-indeterminate-shape-image);mask-image:var(--ag-checkbox-indeterminate-shape-image)}}.ag-cell-editing-error .ag-checkbox-input-wrapper:focus-within{box-shadow:var(--ag-focus-error-shadow)}.ag-radio-button-input-wrapper{border-radius:100%;&:where(.ag-checked):after{-webkit-mask-image:var(--ag-radio-checked-shape-image);mask-image:var(--ag-radio-checked-shape-image)}}'}))(),Ah=(()=>Fu({feature:"colorScheme",params:Gu}))(),Th=(()=>Fu({feature:"colorScheme",params:{...Gu,foregroundColor:"#000000de",borderColor:"#60300026",chromeBackgroundColor:"#60300005"}}))(),Dh=(()=>Fu({feature:"colorScheme",params:{...Gu,foregroundColor:"#000",chromeBackgroundColor:"#f3f8f8"}}))(),Ih=()=>({...Gu,...ph,backgroundColor:"hsl(217, 0%, 17%)",foregroundColor:"#FFF",chromeBackgroundColor:Iu(.05),rowHoverColor:Tu(.15),selectedRowBackgroundColor:Tu(.2),menuBackgroundColor:Iu(.1),browserColorScheme:"dark",popupShadow:"0 0px 20px #000A",cardShadow:"0 1px 4px 1px #000A",advancedFilterBuilderJoinPillColor:"#7a3a37",advancedFilterBuilderColumnPillColor:"#355f2d",advancedFilterBuilderOptionPillColor:"#5a3168",advancedFilterBuilderValuePillColor:"#374c86",filterPanelApplyButtonColor:Lu,findMatchColor:ku,findActiveMatchColor:ku,checkboxUncheckedBorderColor:Iu(.4),toggleButtonOffBackgroundColor:Iu(.4),rowBatchEditBackgroundColor:Iu(.1),formulaToken1Color:"#4da3e5",formulaToken2Color:"#f55864",formulaToken3Color:"#b688f2",formulaToken4Color:"#24bb4a",formulaToken5Color:"#e772ba",formulaToken6Color:"#f69b5f",formulaToken7Color:"#a3e6ff"}),kh=(()=>Fu({feature:"colorScheme",params:Ih()}))(),Lh=()=>({...Ih(),backgroundColor:"#1f2836"}),Oh=(()=>Fu({feature:"colorScheme",params:{backgroundColor:"hsl(29, 10%, 17%)",foregroundColor:"#FFF",browserColorScheme:"dark"}}))(),Gh=(()=>Fu({feature:"colorScheme",params:Lh()}))(),Nh=(()=>Fu({feature:"colorScheme",params:Gu,modeParams:{light:Gu,dark:Ih(),"dark-blue":Lh()}}))(),Bh=Fu({feature:"iconSet",css:".ag-icon-aggregation:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Ctitle%3Eaggregation%3C/title%3E%3Cpath d='M25.128 2.002c2.56.096 4.772 2.292 4.87 4.87a712 712 0 0 1 0 18.256c-.096 2.56-2.292 4.772-4.87 4.87a712 712 0 0 1-18.256 0c-2.558-.096-4.772-2.29-4.87-4.87a712 712 0 0 1 0-18.256c.096-2.56 2.292-4.772 4.87-4.87a712 712 0 0 1 18.256 0M7.006 4c-1.57.02-2.946 1.348-3.004 2.922-.078 6.078-.23 12.16.002 18.234.094 1.484 1.354 2.746 2.84 2.84 6.1.232 12.212.232 18.312 0 1.48-.094 2.746-1.35 2.84-2.84.232-6.1.232-12.212 0-18.312-.094-1.48-1.35-2.746-2.84-2.84C19.11 3.774 13.056 4 7.006 4M22 12h-2v-2h-8v.092c.056 1.352 3.426 2.598 4.472 4.404.682 1.174.438 2.754-.572 3.72C14.29 19.618 12 20.924 12 22h8v-2h2v4H10c0-1.586-.098-3.304 1.016-4.314 1.904-1.632 4.89-3.108 3.54-4.42-1.918-1.68-4.464-2.936-4.554-5.12L10 8h12z'/%3E%3C/svg%3E\")}.ag-icon-arrows:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Ctitle%3Earrows%3C/title%3E%3Cpath d='m6.414 17 2.294 2.292-1.416 1.416L2.586 16l4.706-4.708 1.416 1.416L6.414 15H15V6.414l-2.292 2.294-1.416-1.416L16 2.586l4.708 4.706-1.416 1.416L17 6.414V15h8.586l-2.294-2.292 1.416-1.416L29.414 16l-4.706 4.708-1.416-1.416L25.586 17H17v8.586l2.292-2.294 1.416 1.416L16 29.414l-4.708-4.706 1.416-1.416L15 25.586V17z'/%3E%3C/svg%3E\")}.ag-icon-asc:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Ctitle%3Easc%3C/title%3E%3Cpath d='m15 10.621-4.292 4.294-1.416-1.416L16 6.793l6.708 6.706-1.416 1.416L17 10.621v14.586h-2z'/%3E%3C/svg%3E\")}.ag-icon-aasc:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' viewBox='0 0 16 16'%3E%3Cpath fill='%23000' d='M13.201 8.08q.65 0 1.135.222.487.222.759.618.27.396.279.919H14.19a.72.72 0 0 0-.293-.536q-.26-.191-.705-.192-.302.001-.51.086a.7.7 0 0 0-.32.23.56.56 0 0 0-.108.338.5.5 0 0 0 .065.273.7.7 0 0 0 .204.203q.127.083.295.146.168.06.36.102l.525.125q.382.086.701.229.32.143.554.35.234.21.362.49.131.284.134.648a1.6 1.6 0 0 1-.273.93q-.27.391-.777.608-.504.214-1.217.214-.708 0-1.232-.217a1.8 1.8 0 0 1-.816-.642q-.29-.428-.305-1.058h1.194q.02.294.17.49.15.195.402.294.253.097.573.097.313 0 .544-.09a.84.84 0 0 0 .362-.255.6.6 0 0 0 .129-.374q0-.195-.117-.33a.9.9 0 0 0-.337-.228 3.4 3.4 0 0 0-.54-.171l-.635-.16q-.738-.18-1.166-.562t-.426-1.03a1.53 1.53 0 0 1 .284-.927q.287-.396.79-.618a2.8 2.8 0 0 1 1.14-.223'/%3E%3Cpath fill='%23000' fill-rule='evenodd' d='M5.813 14H4.489l-.432-1.332H1.948L1.515 14H.19l2.017-5.84h1.592zm-3.551-2.296h1.481l-.718-2.21H2.98zM8.452 8.16q.645 0 1.075.19.43.191.648.531a1.4 1.4 0 0 1 .217.775q0 .343-.137.602-.137.256-.376.422a1.6 1.6 0 0 1-.542.231v.057q.333.015.624.188.294.175.476.489.183.31.183.74 0 .466-.231.831a1.56 1.56 0 0 1-.676.573Q9.265 14 8.609 14H6.114V8.16zM7.35 12.99h1.006q.517 0 .753-.196a.66.66 0 0 0 .237-.531.8.8 0 0 0-.116-.428.8.8 0 0 0-.334-.29 1.15 1.15 0 0 0-.511-.106H7.349zm0-2.386h.916q.254 0 .45-.09a.75.75 0 0 0 .313-.256.67.67 0 0 0 .118-.396.64.64 0 0 0-.226-.511q-.223-.195-.633-.194H7.35z' clip-rule='evenodd'/%3E%3Cpath fill='%23000' d='M7.166.377a.75.75 0 0 1 .919.066l3.333 3a.75.75 0 0 1-1.003 1.115L7.609 2.033 5.113 4.53a.75.75 0 0 1-1.06-1.06l3-3z'/%3E%3C/svg%3E\")}.ag-icon-cancel:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Ctitle%3Ecancel%3C/title%3E%3Cpath d='M16 4C9.378 4 4 9.378 4 16s5.378 12 12 12 12-5.378 12-12S22.622 4 16 4m0 2c5.52 0 10 4.48 10 10s-4.48 10-10 10S6 21.52 6 16 10.48 6 16 6m0 8.586 5.292-5.294 1.416 1.416L17.414 16l5.294 5.292-1.416 1.416L16 17.414l-5.292 5.294-1.416-1.416L14.586 16l-5.294-5.292 1.416-1.416z'/%3E%3C/svg%3E\")}.ag-icon-chart:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Ctitle%3Echart%3C/title%3E%3Cpath d='M6.667 12.267h4v13.067h-4zm7.466-5.6h3.733v18.667h-3.733zM21.6 17.333h3.733v8H21.6z'/%3E%3C/svg%3E\")}.ag-icon-color-picker:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Ctitle%3Ecolor-picker%3C/title%3E%3Cpath d='M23.907 17.587 10.574 4.254l-1.88 1.88 3.173 3.173-8.28 8.28 10.16 10.16zm-16.547 0 6.387-6.387 6.387 6.387H7.361zm18.387 2s-2.667 2.893-2.667 4.667c0 1.467 1.2 2.667 2.667 2.667s2.667-1.2 2.667-2.667c0-1.773-2.667-4.667-2.667-4.667'/%3E%3C/svg%3E\")}.ag-icon-columns:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Ctitle%3Ecolumns%3C/title%3E%3Cpath d='M14 25h-2V7h2zm6 0h-2V7h2zm6 0h-2V7h2zM8 25H6V7h2z'/%3E%3C/svg%3E\")}.ag-icon-contracted:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Ctitle%3Econtracted%3C/title%3E%3Cpath d='m21.061 16-8.706 8.708-1.416-1.416L18.233 16l-7.294-7.292 1.416-1.416z'/%3E%3C/svg%3E\")}.ag-icon-copy:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Ctitle%3Ecopy%3C/title%3E%3Cpath d='M21.929 27.999h-7.828a5.09 5.09 0 0 1-5.086-5.086v-9.812a5.087 5.087 0 0 1 5.086-5.086h7.828a5.09 5.09 0 0 1 5.086 5.086v9.812a5.087 5.087 0 0 1-5.086 5.086m.16-17.984h-8.088a2.94 2.94 0 0 0-2.938 2.938v10.132a2.94 2.94 0 0 0 2.938 2.938h8.088a2.94 2.94 0 0 0 2.936-2.938V12.953a2.94 2.94 0 0 0-2.936-2.938M7.041 26.013h-2.05a4 4 0 0 1-.006-.228V9.065a5.07 5.07 0 0 1 5.064-5.064h12.812q.069 0 .134.002v2.012H9.915a2.876 2.876 0 0 0-2.874 2.874z'/%3E%3C/svg%3E\")}.ag-icon-cross:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='4 4 24 24'%3E%3Ctitle%3Ecross%3C/title%3E%3Cpath d='m16 14.586 5.292-5.294 1.416 1.416L17.414 16l5.294 5.292-1.416 1.416L16 17.414l-5.292 5.294-1.416-1.416L14.586 16l-5.294-5.292 1.416-1.416z'/%3E%3C/svg%3E\")}.ag-icon-csv:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' xml:space='preserve' style='fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2' viewBox='0 0 32 32'%3E%3Cpath d='M384 131.9c-7.753-8.433-110.425-128.473-114.9-133L48-.1C21.5 0 0 21.5 0 48v416c0 26.5 21.5 48 48 48h288c26.5 0 48-21.5 48-48zm-35.9 2.1H257V27.9zM30 479V27h200l1 105c0 13.3-1.3 29 12 29h111l1 318z' style='fill-rule:nonzero' transform='translate(3.934 -.054)scale(.06285)'/%3E%3Cpath d='M.688-.226a.2.2 0 0 1-.017.074.28.28 0 0 1-.145.14.412.412 0 0 1-.234.013.28.28 0 0 1-.202-.168.468.468 0 0 1-.04-.19q0-.086.025-.155a.319.319 0 0 1 .182-.191.4.4 0 0 1 .134-.025q.087 0 .155.035a.3.3 0 0 1 .104.085.17.17 0 0 1 .036.097.06.06 0 0 1-.018.044.06.06 0 0 1-.042.019.06.06 0 0 1-.042-.013.2.2 0 0 1-.031-.046.2.2 0 0 0-.066-.079.16.16 0 0 0-.095-.027.17.17 0 0 0-.142.068.3.3 0 0 0-.053.193.4.4 0 0 0 .023.139.2.2 0 0 0 .067.083.2.2 0 0 0 .1.027q.063 0 .106-.031a.2.2 0 0 0 .065-.091.2.2 0 0 1 .023-.046q.014-.018.044-.018a.06.06 0 0 1 .044.018.06.06 0 0 1 .019.045' style='fill-rule:nonzero' transform='matrix(8.39799 0 0 12.455 7.122 25.977)'/%3E%3Cpath d='M.622-.215a.2.2 0 0 1-.033.117.23.23 0 0 1-.098.081.4.4 0 0 1-.153.029.34.34 0 0 1-.175-.04.23.23 0 0 1-.079-.077.17.17 0 0 1-.031-.093q0-.027.019-.045a.06.06 0 0 1 .046-.019.06.06 0 0 1 .039.014.1.1 0 0 1 .027.044.3.3 0 0 0 .03.057q.015.023.044.038.03.015.076.015.065 0 .105-.03a.09.09 0 0 0 .04-.075.08.08 0 0 0-.022-.058.14.14 0 0 0-.056-.034 1 1 0 0 0-.092-.025.7.7 0 0 1-.129-.042.2.2 0 0 1-.083-.066.17.17 0 0 1-.03-.104q0-.058.032-.105a.2.2 0 0 1 .093-.07.4.4 0 0 1 .144-.025q.066 0 .114.016a.3.3 0 0 1 .08.044.2.2 0 0 1 .046.057q.015.03.015.058a.07.07 0 0 1-.018.046.06.06 0 0 1-.046.021q-.025 0-.038-.012a.2.2 0 0 1-.028-.041.2.2 0 0 0-.047-.063Q.387-.625.326-.625a.15.15 0 0 0-.09.025q-.035.024-.035.059 0 .021.012.037a.1.1 0 0 0 .032.027.4.4 0 0 0 .111.036q.06.015.11.031.048.018.083.042a.2.2 0 0 1 .054.062.2.2 0 0 1 .019.091' style='fill-rule:nonzero' transform='matrix(8.39799 0 0 12.455 13.339 25.977)'/%3E%3Cpath d='m.184-.633.162.48.163-.483q.013-.038.019-.053a.062.062 0 0 1 .061-.039q.018 0 .034.009a.1.1 0 0 1 .025.025q.009.015.009.031L.654-.64l-.007.025-.009.024-.173.468-.019.051a.2.2 0 0 1-.021.042.1.1 0 0 1-.033.03.1.1 0 0 1-.049.012.1.1 0 0 1-.05-.011A.1.1 0 0 1 .26-.03a.2.2 0 0 1-.021-.042L.22-.123.05-.587.041-.612.033-.638.03-.662q0-.025.02-.046a.07.07 0 0 1 .05-.02q.037 0 .053.023.015.023.031.072' style='fill-rule:nonzero' transform='matrix(8.39799 0 0 12.455 18.94 25.977)'/%3E%3C/svg%3E\")}.ag-icon-cut:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' xml:space='preserve' style='fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2' viewBox='0 0 32 32'%3E%3Cpath d='M14.703 15.096 6.215 4.719a1 1 0 1 1 1.548-1.267l13.058 15.965A5.001 5.001 0 0 1 28 23.916a5 5 0 0 1-4.999 4.999 5 5 0 0 1-4.999-4.999 4.98 4.98 0 0 1 1.23-3.283l-3.238-3.958-3.272 4.001a4.98 4.98 0 0 1 1.265 3.323 5 5 0 0 1-4.999 4.999 5 5 0 0 1-4.999-4.999 5 5 0 0 1 7.13-4.522zM8.991 20.8a3.1 3.1 0 0 0-3.1 3.1c0 1.711 1.389 3.1 3.1 3.1s3.1-1.389 3.1-3.1-1.389-3.1-3.1-3.1M23 20.8a3.1 3.1 0 0 0-3.1 3.1c0 1.711 1.389 3.1 3.1 3.1s3.1-1.389 3.1-3.1-1.389-3.1-3.1-3.1m-5.723-8.852 1.292 1.579 7.205-8.808a1 1 0 0 0-1.548-1.267z' style='fill-rule:nonzero'/%3E%3C/svg%3E\")}.ag-icon-desc:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Ctitle%3Edesc%3C/title%3E%3Cpath d='m17 21.379 4.292-4.294 1.416 1.416L16 25.207l-6.708-6.706 1.416-1.416L15 21.379V6.793h2z'/%3E%3C/svg%3E\")}.ag-icon-adesc:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' viewBox='0 0 16 16'%3E%3Cpath fill='%23000' d='M10.387 11.47a.75.75 0 0 1 1.06 1.06l-3 3-.113.093a.75.75 0 0 1-.919-.065l-3.333-3a.75.75 0 0 1 1.003-1.116l2.806 2.525zM13.201 3.08q.65 0 1.135.222.487.223.759.619.27.396.279.918H14.19a.72.72 0 0 0-.293-.536q-.26-.192-.705-.192-.302.001-.51.086a.7.7 0 0 0-.32.23.56.56 0 0 0-.108.338.5.5 0 0 0 .065.273.7.7 0 0 0 .204.203q.127.083.295.146.168.06.36.102l.525.125a3.7 3.7 0 0 1 .701.229q.32.143.554.35.234.21.362.492.131.282.134.647a1.6 1.6 0 0 1-.273.93 1.74 1.74 0 0 1-.777.607q-.504.214-1.217.214-.708 0-1.232-.217a1.8 1.8 0 0 1-.816-.641q-.29-.429-.305-1.059h1.194q.02.294.17.49.15.195.402.294.253.098.573.098.313 0 .544-.092a.84.84 0 0 0 .362-.254.6.6 0 0 0 .129-.373.5.5 0 0 0-.117-.33.9.9 0 0 0-.337-.23 3.4 3.4 0 0 0-.54-.17l-.635-.16q-.738-.18-1.166-.562t-.426-1.03a1.53 1.53 0 0 1 .284-.926q.287-.396.79-.62a2.8 2.8 0 0 1 1.14-.222'/%3E%3Cpath fill='%23000' fill-rule='evenodd' d='M5.813 9H4.489l-.432-1.332H1.948L1.515 9H.19l2.017-5.84h1.592zM2.262 6.704h1.481l-.718-2.21H2.98zM8.452 3.16q.645 0 1.075.19.43.192.648.53a1.4 1.4 0 0 1 .217.776q0 .342-.137.602a1.2 1.2 0 0 1-.376.423 1.6 1.6 0 0 1-.542.23v.058q.333.014.624.187.294.175.476.489.183.31.183.74 0 .465-.231.83a1.56 1.56 0 0 1-.676.574Q9.265 9 8.609 9H6.114V3.16zM7.35 7.99h1.006q.517 0 .753-.196a.66.66 0 0 0 .237-.531.8.8 0 0 0-.116-.428.8.8 0 0 0-.334-.291 1.15 1.15 0 0 0-.511-.106H7.349zm0-2.386h.916q.254 0 .45-.09a.75.75 0 0 0 .313-.256.67.67 0 0 0 .118-.397.64.64 0 0 0-.226-.51q-.223-.194-.633-.194H7.35z' clip-rule='evenodd'/%3E%3C/svg%3E\")}.ag-icon-down:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Ctitle%3Edesc%3C/title%3E%3Cpath d='m17 21.379 4.292-4.294 1.416 1.416L16 25.207l-6.708-6.706 1.416-1.416L15 21.379V6.793h2z'/%3E%3C/svg%3E\")}.ag-icon-excel:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' xml:space='preserve' style='fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2' viewBox='0 0 32 32'%3E%3Cpath d='M384 131.9c-7.753-8.433-110.425-128.473-114.9-133L48-.1C21.5 0 0 21.5 0 48v416c0 26.5 21.5 48 48 48h288c26.5 0 48-21.5 48-48zm-35.9 2.1H257V27.9zM30 479V27h200l1 105c0 13.3-1.3 29 12 29h111l1 318z' style='fill-rule:nonzero' transform='translate(3.934 -.054)scale(.06285)'/%3E%3Cpath d='m.052-.139.16-.234-.135-.208a.4.4 0 0 1-.028-.052.1.1 0 0 1-.01-.042.05.05 0 0 1 .018-.037.07.07 0 0 1 .045-.016q.03 0 .047.018a1 1 0 0 1 .047.066l.107.174.115-.174.024-.038.019-.026.021-.015a.1.1 0 0 1 .027-.005.06.06 0 0 1 .044.016.05.05 0 0 1 .018.039q0 .033-.038.089l-.141.211.152.234a.3.3 0 0 1 .03.051.1.1 0 0 1 .009.038.1.1 0 0 1-.008.031.1.1 0 0 1-.024.023.1.1 0 0 1-.034.008.1.1 0 0 1-.035-.008.1.1 0 0 1-.023-.022L.427-.067.301-.265l-.134.204-.022.034-.016.019a.1.1 0 0 1-.022.015.1.1 0 0 1-.03.005.06.06 0 0 1-.044-.016.06.06 0 0 1-.017-.047q0-.036.036-.088' style='fill-rule:nonzero' transform='matrix(17.82892 0 0 16.50777 10.371 25.928)'/%3E%3C/svg%3E\")}.ag-icon-expanded:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Ctitle%3Eexpanded%3C/title%3E%3Cpath d='M21.061 8.708 13.767 16l7.294 7.292-1.416 1.416L10.939 16l8.706-8.708z'/%3E%3C/svg%3E\")}.ag-icon-eye-slash:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Ctitle%3Eeye-slash%3C/title%3E%3Cpath d='M9.304 7.89a15.2 15.2 0 0 1 6.404-1.638c.294-.002.292-.002.584 0 5.956.174 11.328 4.088 13.62 9.748 0 0-1.318 3.178-3.224 5.174a13.6 13.6 0 0 1-2.226 1.874L26.414 25 25 26.414l-2.336-2.336C17.866 26.396 11.776 26.15 7.36 22.96a14.9 14.9 0 0 1-4.168-4.612c-.41-.71-.694-1.336-1.104-2.348 0 0 .898-2.218 2.002-3.718a14.6 14.6 0 0 1 3.442-3.334L5.586 7 7 5.586zm-.3 2.528c-2.038 1.344-3.708 3.246-4.724 5.508L4.248 16c2.46 5.762 9.622 9.064 15.63 7.15q.688-.219 1.342-.516l-.912-.912a6.96 6.96 0 0 1-4.19 1.394c-3.862 0-7-3.136-7-7 0-1.57.52-3.022 1.394-4.19zm14.032 11.204a13.25 13.25 0 0 0 4.684-5.548l.032-.074c-1.984-4.646-6.834-7.798-12.006-7.748-1.712.05-3.386.458-4.922 1.158l1.102 1.102a6.97 6.97 0 0 1 4.192-1.396 7.003 7.003 0 0 1 5.606 11.192zm-11.09-8.262a5.003 5.003 0 0 0 6.928 6.928zm8.342 5.514a5.002 5.002 0 0 0-6.928-6.928z'/%3E%3C/svg%3E\")}.ag-icon-eye:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Ctitle%3Eeye%3C/title%3E%3Cpath d='M16.292 6.32c5.956.174 11.328 4.086 13.62 9.746 0 0-1.318 3.18-3.224 5.176-4.862 5.088-13.534 5.97-19.328 1.784a14.9 14.9 0 0 1-4.168-4.612c-.41-.71-.694-1.336-1.104-2.348 0 0 .898-2.216 2.002-3.716 2.678-3.64 7.03-5.896 11.618-6.03.294-.004.292-.004.584 0m-.546 2c-4.896.142-9.458 3.202-11.466 7.672l-.032.074c2.46 5.762 9.622 9.066 15.63 7.152 3.458-1.102 6.342-3.738 7.842-7.076l.032-.076C25.768 11.42 20.918 8.27 15.746 8.32m.254.946c3.754 0 6.8 3.048 6.8 6.8 0 3.754-3.046 6.8-6.8 6.8s-6.8-3.046-6.8-6.8c0-3.752 3.046-6.8 6.8-6.8m5 6.768V16c0-2.76-2.24-5-5-5s-5 2.24-5 5v.066c0 2.76 2.24 5 5 5s5-2.24 5-5z'/%3E%3C/svg%3E\")}.ag-icon-filter:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Ctitle%3Efilter%3C/title%3E%3Cpath d='M26 8.184c-.066 2.658-4.058 5.154-6.742 7.974a1.05 1.05 0 0 0-.258.682v3.66L13 25c0-2.74.066-5.482-.002-8.222a1.05 1.05 0 0 0-.256-.62C10.026 13.304 6.06 10.61 6 8.184V6h20zM8 8c0 .304.06.612.258.842 2.716 2.854 6.682 5.548 6.742 7.974V21l2-1.5v-2.684c.066-2.658 4.058-5.154 6.742-7.974.198-.23.258-.538.258-.842z'/%3E%3C/svg%3E\")}.ag-icon-first:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Ctitle%3Efirst%3C/title%3E%3Cpath d='M24.354 8.708 17.06 16l7.294 7.292-1.416 1.416L14.232 16l8.706-8.708zM9.646 8v16h-2V8z'/%3E%3C/svg%3E\")}.ag-icon-group:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Ctitle%3Egroup%3C/title%3E%3Cpath d='M25.128 2.002c2.56.096 4.772 2.292 4.87 4.87a712 712 0 0 1 0 18.256c-.096 2.56-2.292 4.772-4.87 4.87a712 712 0 0 1-18.256 0c-2.558-.096-4.772-2.29-4.87-4.87a712 712 0 0 1 0-18.256c.096-2.56 2.292-4.772 4.87-4.87a712 712 0 0 1 18.256 0M7.006 4c-1.57.02-2.946 1.348-3.004 2.922-.078 6.078-.23 12.16.002 18.234.094 1.484 1.354 2.746 2.84 2.84 6.1.232 12.212.232 18.312 0 1.48-.094 2.746-1.35 2.84-2.84.232-6.1.232-12.212 0-18.312-.094-1.48-1.35-2.746-2.84-2.84C19.11 3.774 13.056 4 7.006 4M14 21h-4v-2h4zm12 0H16v-2h10zm-12-4h-4v-2h4zm12 0H16v-2h10zm-16-4H6v-2h4zm16 0H12v-2h14z'/%3E%3C/svg%3E\")}.ag-icon-last:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Ctitle%3Elast%3C/title%3E%3Cpath d='m17.768 16-8.706 8.708-1.416-1.416L14.94 16 7.646 8.708l1.416-1.416zm6.586 8h-2V8h2z'/%3E%3C/svg%3E\")}.ag-icon-left:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Ctitle%3Eleft%3C/title%3E%3Cpath d='m17.621 11-2 2h12.586v6H15.621l2 2-4.414 4.414L3.793 16l9.414-9.414zm-11 5 6.586 6.586L14.793 21l-4-4h15.414v-2H10.793l4-4-1.586-1.586z'/%3E%3C/svg%3E\")}.ag-icon-linked:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Ctitle%3Elinked%3C/title%3E%3Cpath d='M17.138 13.418a1.03 1.03 0 0 0-.298.658s.125.096.226.178c1.372 1.114 2.033 3.039 1.582 4.796a4.7 4.7 0 0 1-1.205 2.123c-1.145 1.151-2.296 2.294-3.445 3.441-1.241 1.232-3.185 1.691-4.864 1.105-1.546-.54-2.756-1.938-3.048-3.572-.267-1.496.246-3.108 1.319-4.186l.578-.578-.03-.092a10.5 10.5 0 0 1-.452-2.3v-.005c-.776.775-1.621 1.489-2.275 2.396-1.817 2.522-1.643 6.323.706 8.669 1.813 1.811 4.708 2.462 7.171 1.517a6.75 6.75 0 0 0 2.336-1.518l3.427-3.424c1.939-1.954 2.533-5.126 1.294-7.674a6.8 6.8 0 0 0-2.071-2.481l-.003-.002zM21.265 4a6.8 6.8 0 0 0-4.734 1.964l-3.427 3.424c-1.961 1.977-2.52 5.092-1.32 7.619a6.8 6.8 0 0 0 2.098 2.537l.003.002c.32-.32.643-.637.96-.96.167-.172.27-.401.286-.64l-.204-.167c-1.603-1.287-2.215-3.68-1.316-5.616a4.7 4.7 0 0 1 .918-1.32c1.145-1.151 2.296-2.294 3.445-3.441 1.239-1.23 3.178-1.694 4.864-1.105 1.83.639 3.16 2.498 3.12 4.493a4.8 4.8 0 0 1-1.391 3.265l-.578.578.03.092c.235.743.387 1.519.452 2.3v.005c.732-.731 1.521-1.406 2.162-2.244 1.192-1.559 1.643-3.651 1.204-5.575a6.8 6.8 0 0 0-3.98-4.703 6.8 6.8 0 0 0-2.529-.506h-.061z'/%3E%3C/svg%3E\")}.ag-icon-loading:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Ctitle%3Eloading%3C/title%3E%3Cpath d='M17 29h-2v-8h2zm-3.586-9L7 26.414 5.586 25 12 18.586zm13 5L25 26.414 18.586 20 20 18.586zM29 17h-8v-2h8zm-18 0H3v-2h8zm2.414-5L12 13.414 5.586 7 7 5.586zm13-5L20 13.414 18.586 12 25 5.586zM17 11h-2V3h2z'/%3E%3C/svg%3E\")}.ag-icon-maximize:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='3 3 26 26'%3E%3Ctitle%3Emaximize%3C/title%3E%3Cpath d='m7.54 17.4.1 6.98 6.96.1-2.24-2.24L16 18.6 13.4 16l-3.64 3.64zm16.92-2.8-.1-6.98-6.96-.1 2.24 2.24L16 13.4l2.6 2.6 3.64-3.64z'/%3E%3C/svg%3E\")}.ag-icon-menu:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Ctitle%3Emenu%3C/title%3E%3Cpath d='M26 23H6v-2h20zm0-6H6v-2h20zm0-6H6V9h20z'/%3E%3C/svg%3E\")}.ag-icon-menu-alt:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='32' height='32' fill='none'%3E%3Cpath fill='%23000' d='M16 18a2 2 0 1 0 0-4 2 2 0 0 0 0 4m0-7a2 2 0 1 0 0-4 2 2 0 0 0 0 4m0 14a2 2 0 1 0 0-4 2 2 0 0 0 0 4'/%3E%3C/svg%3E\")}.ag-icon-minimize:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='3 3 26 26'%3E%3Ctitle%3Eminimize%3C/title%3E%3Cpath d='m14.8 24.26-.1-6.96-6.96-.1 2.24 2.24-3.64 3.64 2.6 2.6 3.64-3.64zm2.4-16.52.1 6.96 6.96.1-2.24-2.24 3.64-3.64-2.6-2.6-3.64 3.64z'/%3E%3C/svg%3E\")}.ag-icon-minus:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' xml:space='preserve' style='fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2' viewBox='0 0 32 32'%3E%3Cpath d='M7.515 7.515c-4.683 4.682-4.683 12.288 0 16.97 4.682 4.683 12.288 4.683 16.97 0 4.683-4.682 4.683-12.288 0-16.97-4.682-4.683-12.288-4.683-16.97 0m1.414 1.414c3.903-3.903 10.239-3.903 14.142 0s3.903 10.239 0 14.142-10.239 3.903-14.142 0-3.903-10.239 0-14.142m-1.414 6.07h16.97v2.002H7.515z' style='fill-rule:nonzero'/%3E%3C/svg%3E\")}.ag-icon-next:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Ctitle%3Enext%3C/title%3E%3Cpath d='m21.061 16-8.706 8.708-1.416-1.416L18.233 16l-7.294-7.292 1.416-1.416z'/%3E%3C/svg%3E\")}.ag-icon-none:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Ctitle%3Enone%3C/title%3E%3Cpath d='m10.044 21.258 4.478-4.198L16 18.444 9 25l-7-6.556 1.478-1.384 4.478 4.198V7h2.088zm14 3.742h-2.088V10.742l-4.478 4.198L16 13.556 23 7q3.5 3.28 7 6.556l-1.478 1.384-4.478-4.198z'/%3E%3C/svg%3E\")}.ag-icon-not-allowed:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Ctitle%3Enot-allowed%3C/title%3E%3Cpath d='M16.186 3.646c8.188.154 14.898 9.796 11.17 17.78-3.298 7.066-13.932 9.374-19.848 3.87-3.9-3.632-5.076-9.896-2.684-14.708 2.082-4.19 6.588-6.974 11.362-6.942m-.298 1.998c-6.922.132-12.578 8.308-9.33 15.052 3.342 6.934 15.246 7.646 18.932 0 3.076-6.386-1.988-15.1-9.602-15.052m7.596 6.422c2.864 5.33-1.744 13.186-8.306 12.536a8.6 8.6 0 0 1-3.232-.998l-1.266-.706L22.778 10.8q.351.633.706 1.266m-9.422 10.276c3.296 1.028 7.246-1.006 8.216-4.418a6.6 6.6 0 0 0-.056-3.742zm2.104-14.696a8.8 8.8 0 0 1 3.936 1.038l1.266.706L9.27 21.488c-3.018-5.41-.99-13.37 6.318-13.834q.289-.01.578-.008m-.31 2c-4.06.154-7.23 4.614-6.03 8.46l8.16-8.16a6.8 6.8 0 0 0-2.13-.3'/%3E%3C/svg%3E\")}.ag-icon-paste:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Ctitle%3Epaste%3C/title%3E%3Cpath d='M20 6.5c0-1-1-3-4-3s-4 2-4 3H8c-2.21 0-4 1.79-4 4v14c0 2.21 1.79 4 4 4h16c2.21 0 4-1.79 4-4v-14c0-2.21-1.79-4-4-4zm-4 .546c.734 0 1.334.572 1.334 1.272S16.734 9.59 16 9.59s-1.334-.572-1.334-1.272.6-1.272 1.334-1.272M24 26.5H8a2 2 0 0 1-2-2v-14a2 2 0 0 1 2-2h2v4h12v-4h2a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2'/%3E%3C/svg%3E\")}.ag-icon-pin:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Ctitle%3Epin%3C/title%3E%3Cpath d='m10.78 19.777-4.668-4.666s.032-1 .67-1.87c1.366-1.86 4.052-1.96 6.056-1.572l3.158-3.108c-.7-2.342 3.352-5.046 3.352-5.046l9.166 9.168q-.334.447-.67.894c-1.074 1.426-2.538 2.63-4.272 2.338l-3.32 3.218c.046.344.042.03.118 1.152.144 2.13-.64 4.324-2.632 5.34l-.746.364-4.798-4.798-7.292 7.294-1.416-1.416zm8.24-13.672c-.688.568-1.416 1.45-1.024 2.072l.49.722-4.986 4.988c-1.988-.506-4.346-.636-5.156.614l9.02 9.032q.14-.099.272-.21c1.226-1.08.764-3.04.498-4.9l4.79-4.79s1.47.938 2.936-.776l-6.79-6.79q-.026.019-.05.038'/%3E%3C/svg%3E\")}.ag-icon-pivot:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Ctitle%3Epivot%3C/title%3E%3Cpath d='M25.128 2.002c2.56.096 4.772 2.292 4.87 4.87a712 712 0 0 1 0 18.256c-.096 2.56-2.292 4.772-4.87 4.87a712 712 0 0 1-18.256 0c-2.558-.096-4.772-2.29-4.87-4.87a712 712 0 0 1 0-18.256c.096-2.56 2.292-4.772 4.87-4.87a712 712 0 0 1 18.256 0m2.966 7.954H9.892v18.136c5.086.13 10.18.098 15.264-.096 1.48-.094 2.746-1.35 2.84-2.84.192-5.064.226-10.134.098-15.2M3.968 24.1q.015.528.036 1.056c.094 1.484 1.354 2.746 2.84 2.84l1.012.036V24.1zM22 15.414l-.292.294-1.416-1.416L23 11.586l2.708 2.706-1.416 1.416-.292-.294v3.592c-.032 2.604-2.246 4.892-4.872 4.992L15.414 24l.294.292-1.416 1.416L11.586 23l2.706-2.708 1.416 1.416-.322.32c3.372.03 6.578-.164 6.614-3.034zM3.88 18.038c.002 1.346.012 2.694.038 4.04h3.938v-4.04zm.05-6.062a681 681 0 0 0-.044 4.042h3.97v-4.042zm5.962-7.99Q8.449 3.999 7.006 4c-1.57.02-2.946 1.348-3.004 2.922q-.02 1.517-.042 3.034h3.896v-2.02h2.036zm14.244-.016v3.966h3.898q-.017-.546-.038-1.092c-.094-1.48-1.35-2.746-2.84-2.84q-.51-.019-1.02-.034m-8.14-.054q-2.035.022-4.07.048v3.972h4.07zm6.106.008c-1.358-.022-2.714-.026-4.07-.022v4.034h4.07z'/%3E%3C/svg%3E\")}.ag-icon-plus:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' xml:space='preserve' style='fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2' viewBox='0 0 32 32'%3E%3Cpath d='M7.515 7.515c-4.683 4.682-4.683 12.288 0 16.97 4.682 4.683 12.288 4.683 16.97 0 4.683-4.682 4.683-12.288 0-16.97-4.682-4.683-12.288-4.683-16.97 0m1.414 1.414c3.903-3.903 10.239-3.903 14.142 0s3.903 10.239 0 14.142-10.239 3.903-14.142 0-3.903-10.239 0-14.142M15 15l-.001-7.485h2.002L17 15l7.485-.001v2.002L17 17l.001 7.485h-2.002L15 17l-7.485.001v-2.002z' style='fill-rule:nonzero'/%3E%3C/svg%3E\")}.ag-icon-previous:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Ctitle%3Eprevious%3C/title%3E%3Cpath d='M21.061 8.708 13.767 16l7.294 7.292-1.416 1.416L10.939 16l8.706-8.708z'/%3E%3C/svg%3E\")}.ag-icon-right:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Ctitle%3Eright%3C/title%3E%3Cpath d='m28.207 16-9.414 9.414L14.379 21l2-2H3.793v-6h12.586l-2-2 4.414-4.414zm-11-5 4 4H5.793v2h15.414l-4 4 1.586 1.586L25.379 16l-6.586-6.586z'/%3E%3C/svg%3E\")}.ag-icon-save:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Ctitle%3Esave%3C/title%3E%3Cpath d='M25.333 16v9.333H6.666V16H3.999v9.333C3.999 26.8 5.199 28 6.666 28h18.667C26.8 28 28 26.8 28 25.333V16zm-8 .893 3.453-3.44 1.88 1.88L15.999 22l-6.667-6.667 1.88-1.88 3.453 3.44V4h2.667v12.893z'/%3E%3C/svg%3E\")}.ag-icon-small-down:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Ctitle%3Esmall-down%3C/title%3E%3Cpath d='M24.708 12.355 16 21.061l-8.708-8.706 1.416-1.416L16 18.233l7.292-7.294z'/%3E%3C/svg%3E\")}.ag-icon-small-left:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Ctitle%3Esmall-left%3C/title%3E%3Cpath d='M21.061 8.708 13.767 16l7.294 7.292-1.416 1.416L10.939 16l8.706-8.708z'/%3E%3C/svg%3E\")}.ag-icon-small-right:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Ctitle%3Esmall-right%3C/title%3E%3Cpath d='m21.061 16-8.706 8.708-1.416-1.416L18.233 16l-7.294-7.292 1.416-1.416z'/%3E%3C/svg%3E\")}.ag-icon-small-up:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Ctitle%3Esmall-up%3C/title%3E%3Cpath d='m24.708 19.645-1.416 1.416L16 13.767l-7.292 7.294-1.416-1.416L16 10.939z'/%3E%3C/svg%3E\")}.ag-icon-tick:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Ctitle%3Etick%3C/title%3E%3Cpath d='M24.708 10.855 13 22.561l-5.708-5.706 1.416-1.416L13 19.733 23.292 9.439z'/%3E%3C/svg%3E\")}.ag-icon-tree-closed:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Ctitle%3Etree-closed%3C/title%3E%3Cpath d='m21.061 16-8.706 8.708-1.416-1.416L18.233 16l-7.294-7.292 1.416-1.416z'/%3E%3C/svg%3E\")}.ag-icon-tree-indeterminate:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Ctitle%3Etree-indeterminate%3C/title%3E%3Cpath d='M6 15h20v2H6z'/%3E%3C/svg%3E\")}.ag-icon-tree-open:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Ctitle%3Etree-open%3C/title%3E%3Cpath d='M24.708 12.355 16 21.061l-8.708-8.706 1.416-1.416L16 18.233l7.292-7.294z'/%3E%3C/svg%3E\")}.ag-icon-unlinked:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Ctitle%3Eunlinked%3C/title%3E%3Cpath d='M5.35 3.999a.2.2 0 0 0-.14.058c-.388.38-.768.768-1.152 1.152a.21.21 0 0 0-.002.288c7.459 7.506 14.965 14.965 22.447 22.447a.21.21 0 0 0 .288.002q.576-.574 1.151-1.151a.21.21 0 0 0 .002-.288C20.484 19.002 12.979 11.542 5.497 4.06a.2.2 0 0 0-.146-.061zm.611 12.548c-1.933 1.939-2.538 5.119-1.289 7.688a6.79 6.79 0 0 0 4.891 3.672 6.82 6.82 0 0 0 5.893-1.866l1.984-1.984-1.438-1.438-1.986 1.986c-1.486 1.476-3.993 1.81-5.834.629a4.73 4.73 0 0 1-2.024-2.853 4.76 4.76 0 0 1 1.241-4.393l1.986-1.986-1.438-1.438-1.984 1.984zM21.273 3.999a6.78 6.78 0 0 0-4.727 1.963l-1.984 1.984L16 9.384l1.985-1.985a4.74 4.74 0 0 1 2.776-1.338c1.974-.224 4.045.926 4.845 2.834.712 1.699.329 3.778-1.004 5.12L22.616 16l1.439 1.438q1-1 2-2c2.012-2.031 2.557-5.368 1.112-7.982-1.144-2.07-3.432-3.441-5.834-3.459h-.061z'/%3E%3C/svg%3E\")}.ag-icon-up:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Ctitle%3Easc%3C/title%3E%3Cpath d='m15 10.621-4.292 4.294-1.416-1.416L16 6.793l6.708 6.706-1.416 1.416L17 10.621v14.586h-2z'/%3E%3C/svg%3E\")}.ag-icon-grip:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Ctitle%3Egrip%3C/title%3E%3Cpath d='M8 24H6v-4h2zm6 0h-2v-4h2zm6 0h-2v-4h2zm6 0h-2v-4h2zM8 18H6v-4h2zm6 0h-2v-4h2zm6 0h-2v-4h2zm6 0h-2v-4h2zM8 12H6V8h2zm6 0h-2V8h2zm6 0h-2V8h2zm6 0h-2V8h2z'/%3E%3C/svg%3E\")}.ag-icon-settings:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='32' height='32' fill='none' viewBox='0 0 32 32'%3E%3Cpath fill='%23000' d='M30 8h-4.1c-.5-2.3-2.5-4-4.9-4s-4.4 1.7-4.9 4H2v2h14.1c.5 2.3 2.5 4 4.9 4s4.4-1.7 4.9-4H30zm-9 4c-1.7 0-3-1.3-3-3s1.3-3 3-3 3 1.3 3 3-1.3 3-3 3M2 24h4.1c.5 2.3 2.5 4 4.9 4s4.4-1.7 4.9-4H30v-2H15.9c-.5-2.3-2.5-4-4.9-4s-4.4 1.7-4.9 4H2zm9-4c1.7 0 3 1.3 3 3s-1.3 3-3 3-3-1.3-3-3 1.3-3 3-3'/%3E%3C/svg%3E\")}.ag-icon-column-arrow:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 32 32'%3E%3Cpath fill='currentColor' fill-rule='evenodd' d='M11 4a1 1 0 0 1 1 1v22a1 1 0 1 1-2 0V5a1 1 0 0 1 1-1' clip-rule='evenodd'/%3E%3Cpath fill='currentColor' fill-rule='evenodd' d='M2 13a1 1 0 0 1 1-1h23.5a1 1 0 1 1 0 2H3a1 1 0 0 1-1-1' clip-rule='evenodd'/%3E%3Cpath fill='currentColor' fill-rule='evenodd' d='M2 4h18v24H2zm2 2v20h14V6zM26.793 13 23 9.207l1.414-1.414L29.621 13l-5.207 5.207L23 16.793z' clip-rule='evenodd'/%3E%3C/svg%3E\")}.ag-icon-un-pin:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='32' height='32' fill='none' viewBox='0 0 32 32'%3E%3Cpath fill='currentColor' fill-rule='evenodd' d='m6.112 15.111 3.272 3.271 1.436-1.402-2.476-2.479c.81-1.25 3.168-1.12 5.156-.614l4.986-4.988-.49-.722c-.392-.622.336-1.504 1.024-2.072l.008-.007.01-.006.032-.025 1.447 1.447 1.432-1.397-2.601-2.602s-4.052 2.704-3.352 5.046l-3.158 3.108c-2.004-.388-4.69-.288-6.056 1.572-.638.87-.67 1.87-.67 1.87m.581 11.582.014.014 5.502-5.501 4.783 4.783.746-.364c1.992-1.016 2.776-3.21 2.632-5.34-.055-.805-.068-.87-.088-.97-.008-.04-.017-.085-.03-.182l3.32-3.218c1.734.292 3.198-.912 4.272-2.338q.337-.447.67-.894l-.001-.001-.007-.007-.007-.007-.007-.007-3.87-3.87 1.585-1.584-1.414-1.414-14.381 14.38-1.237 1.209-5.69 5.687 1.417 1.416zM23.21 10.206l2.65 2.651c-1.465 1.714-2.935.776-2.935.776l-4.79 4.79q.041.291.087.583c.257 1.676.513 3.35-.585 4.317a4 4 0 0 1-.272.21l-3.739-3.744z' clip-rule='evenodd'/%3E%3C/svg%3E\")}.ag-icon-pinned-top:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='32' height='32' fill='none' viewBox='0 0 32 32'%3E%3Cpath fill='currentColor' d='m16.708 10.878 8.708 8.706L24 21l-6.292-6.294V27h-2V14.706L9.416 21 8 19.584q4.348-4.344 8.691-8.69zM25 6H8v2h17z'/%3E%3C/svg%3E\")}.ag-icon-pinned-bottom:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='32' height='32' fill='none' viewBox='0 0 32 32'%3E%3Cpath fill='currentColor' d='M16.708 22.122 8 13.416 9.416 12l6.292 6.294V6h2v12.294L24 12l1.416 1.416-8.691 8.69zM7.416 28h17v-2h-17z'/%3E%3C/svg%3E\")}.ag-icon-chevron-up:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' viewBox='0 0 16 16'%3E%3Cpath fill='currentColor' fill-rule='evenodd' d='M3.479 10.521a.75.75 0 0 1 0-1.06l4-4a.75.75 0 0 1 1.06 0l4 4a.75.75 0 0 1-1.06 1.06l-3.47-3.47-3.47 3.47a.75.75 0 0 1-1.06 0' clip-rule='evenodd'/%3E%3C/svg%3E\")}.ag-icon-chevron-down:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' viewBox='0 0 16 16'%3E%3Cpath fill='currentColor' fill-rule='evenodd' d='M12.521 5.461a.75.75 0 0 1 0 1.06l-4 4a.75.75 0 0 1-1.06 0l-4-4a.75.75 0 0 1 1.06-1.06l3.47 3.47 3.47-3.47a.75.75 0 0 1 1.06 0' clip-rule='evenodd'/%3E%3C/svg%3E\")}.ag-icon-chevron-left:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' viewBox='0 0 16 16'%3E%3Cpath fill='currentColor' fill-rule='evenodd' d='M10.53 12.512a.75.75 0 0 1-1.06 0l-4-4a.75.75 0 0 1 0-1.06l4-4a.75.75 0 0 1 1.06 1.06l-3.47 3.47 3.47 3.47a.75.75 0 0 1 0 1.06' clip-rule='evenodd'/%3E%3C/svg%3E\")}.ag-icon-chevron-right:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' viewBox='0 0 16 16'%3E%3Cpath fill='currentColor' fill-rule='evenodd' d='M5.47 3.47a.75.75 0 0 1 1.06 0l4 4a.75.75 0 0 1 0 1.06l-4 4a.75.75 0 0 1-1.06-1.06L8.94 8 5.47 4.53a.75.75 0 0 1 0-1.06' clip-rule='evenodd'/%3E%3C/svg%3E\")}.ag-icon-filter-add:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='32' height='32' fill='none' viewBox='0 0 32 32'%3E%3Cpath fill='currentColor' d='M19.834 8H8c0 .304.06.612.258.842 2.716 2.854 6.682 5.548 6.742 7.974V21l2-1.5v-2.684c.056-2.267 2.968-4.417 5.49-6.75v3.087c-1.081.974-2.245 1.968-3.232 3.005a1.05 1.05 0 0 0-.258.682v3.66L13 25c0-2.74.066-5.482-.002-8.222a1.05 1.05 0 0 0-.256-.62C10.026 13.304 6.06 10.61 6 8.184V6h13.834z'/%3E%3Cpath fill='currentColor' d='M26 6h2.946v2.002H26v3.313h-2.002V8.002h-2.946V6h2.946V3.04H26z'/%3E%3C/svg%3E\")}.ag-icon-edit:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='32' height='32' fill='none' viewBox='0 0 32 32'%3E%3Cpath fill='currentColor' d='M23.182 5a3.82 3.82 0 0 1 2.83 6.383l-.131.137-2.09 2.088a1 1 0 0 1-.084.099 1 1 0 0 1-.098.084L12.533 24.869a3 3 0 0 1-1.245.746l-4.353 1.32-.003.002a1.5 1.5 0 0 1-1.87-1.867l.003-.004 1.32-4.352v-.003l.06-.174c.13-.344.321-.661.565-.936l.126-.135L18.209 8.39a1 1 0 0 1 .18-.181l2.092-2.09.137-.132A3.82 3.82 0 0 1 23.182 5M8.548 20.883a1 1 0 0 0-.25.415l-1.049 3.451 3.457-1.048.114-.042q.17-.076.301-.206l10.458-10.46-2.572-2.572zM23.182 7c-.482 0-.946.19-1.287.531v.001l-1.474 1.475 2.572 2.572 1.474-1.474.121-.133A1.82 1.82 0 0 0 23.182 7'/%3E%3C/svg%3E\")}"}),Vh=Fu({feature:"iconSet",css:".ag-icon-aggregation:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' xml:space='preserve' style='fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2' viewBox='0 0 32 32'%3E%3Cpath d='M24 6H8v2l8 8-8 8v2h16v-2H11l8-8-8-8h13z' style='fill-rule:nonzero'/%3E%3C/svg%3E\")}.ag-icon-arrows:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' xml:space='preserve' style='fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2' viewBox='0 0 32 32'%3E%3Cpath d='M7.515 11.171 2.687 16l4.828 4.829-1.414 1.414L-.142 16l6.243-6.243zm16.97 0 1.414-1.414L32.142 16l-6.243 6.243-1.414-1.414L29.313 16zM16.028 13.2l2.829 2.828-2.829 2.829-2.828-2.829zm-4.857 11.285L16 29.313l4.829-4.828 1.414 1.414L16 32.142l-6.243-6.243zm0-16.97L9.757 6.101 16-.142l6.243 6.243-1.414 1.414L16 2.687z' style='fill-rule:nonzero'/%3E%3C/svg%3E\")}.ag-icon-asc:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' xml:space='preserve' style='fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2' viewBox='0 0 32 32'%3E%3Cpath d='m5.333 16 1.88 1.88 7.453-7.44v16.227h2.667V10.44l7.44 7.453L26.666 16 15.999 5.333 5.332 16z' style='fill-rule:nonzero'/%3E%3C/svg%3E\")}.ag-icon-aasc:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' viewBox='0 0 16 16'%3E%3Cpath fill='%23000' d='M13.201 8.08q.65 0 1.135.222.487.222.759.618.27.396.279.919H14.19a.72.72 0 0 0-.293-.536q-.26-.191-.705-.192-.302.001-.51.086a.7.7 0 0 0-.32.23.56.56 0 0 0-.108.338.5.5 0 0 0 .065.273.7.7 0 0 0 .204.203q.127.083.295.146.168.06.36.102l.525.125q.382.086.701.229.32.143.554.35.234.21.362.49.131.284.134.648a1.6 1.6 0 0 1-.273.93q-.27.391-.777.608-.504.214-1.217.214-.708 0-1.232-.217a1.8 1.8 0 0 1-.816-.642q-.29-.428-.305-1.058h1.194q.02.294.17.49.15.195.402.294.253.097.573.097.313 0 .544-.09a.84.84 0 0 0 .362-.255.6.6 0 0 0 .129-.374q0-.195-.117-.33a.9.9 0 0 0-.337-.228 3.4 3.4 0 0 0-.54-.171l-.635-.16q-.738-.18-1.166-.562t-.426-1.03a1.53 1.53 0 0 1 .284-.927q.287-.396.79-.618a2.8 2.8 0 0 1 1.14-.223'/%3E%3Cpath fill='%23000' fill-rule='evenodd' d='M5.813 14H4.489l-.432-1.332H1.948L1.515 14H.19l2.017-5.84h1.592zm-3.551-2.296h1.481l-.718-2.21H2.98zM8.452 8.16q.645 0 1.075.19.43.191.648.531a1.4 1.4 0 0 1 .217.775q0 .343-.137.602-.137.256-.376.422a1.6 1.6 0 0 1-.542.231v.057q.333.015.624.188.294.175.476.489.183.31.183.74 0 .466-.231.831a1.56 1.56 0 0 1-.676.573Q9.265 14 8.609 14H6.114V8.16zM7.35 12.99h1.006q.517 0 .753-.196a.66.66 0 0 0 .237-.531.8.8 0 0 0-.116-.428.8.8 0 0 0-.334-.29 1.15 1.15 0 0 0-.511-.106H7.349zm0-2.386h.916q.254 0 .45-.09a.75.75 0 0 0 .313-.256.67.67 0 0 0 .118-.396.64.64 0 0 0-.226-.511q-.223-.195-.633-.194H7.35z' clip-rule='evenodd'/%3E%3Cpath fill='%23000' d='M7.166.377a.75.75 0 0 1 .919.066l3.333 3a.75.75 0 0 1-1.003 1.115L7.609 2.033 5.113 4.53a.75.75 0 0 1-1.06-1.06l3-3z'/%3E%3C/svg%3E\")}.ag-icon-cancel:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' xml:space='preserve' style='fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2' viewBox='0 0 32 32'%3E%3Cpath d='M16 2.667A13.32 13.32 0 0 0 2.667 16c0 7.373 5.96 13.333 13.333 13.333S29.333 23.373 29.333 16 23.373 2.667 16 2.667m6.667 18.12-1.88 1.88L16 17.88l-4.787 4.787-1.88-1.88L14.12 16l-4.787-4.787 1.88-1.88L16 14.12l4.787-4.787 1.88 1.88L17.88 16z' style='fill-rule:nonzero'/%3E%3C/svg%3E\")}.ag-icon-chart:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Ctitle%3Echart%3C/title%3E%3Cg fill='%23000' fill-rule='nonzero'%3E%3Cpath d='M14 7h4v18h-4zM8 17h4v8H8zM20 13h4v12h-4z'/%3E%3C/g%3E%3C/svg%3E\")}.ag-icon-color-picker:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' xml:space='preserve' style='fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2' viewBox='0 0 32 32'%3E%3Cpath d='M23.907 17.587 10.574 4.254l-1.88 1.88 3.173 3.173-8.28 8.28 10.16 10.16zm-16.547 0 6.387-6.387 6.387 6.387zm18.387 2s-2.667 2.893-2.667 4.667c0 1.467 1.2 2.667 2.667 2.667s2.667-1.2 2.667-2.667c0-1.773-2.667-4.667-2.667-4.667' style='fill-rule:nonzero'/%3E%3C/svg%3E\")}.ag-icon-columns:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' xml:space='preserve' style='fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2' viewBox='0 0 32 32'%3E%3Cpath d='M26 25H6V7h20zM12 11H8v12h4zm6 0h-4v12h4zm6 12V11h-4v12z' style='fill-rule:nonzero' transform='translate(0 -1)'/%3E%3C/svg%3E\")}.ag-icon-contracted:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' xml:space='preserve' style='fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2' viewBox='0 0 32 32'%3E%3Cpath d='m12 6 10 10-10 10-2-2 8-8-8-8z'/%3E%3C/svg%3E\")}.ag-icon-copy:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' xml:space='preserve' style='fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2' viewBox='0 0 32 32'%3E%3Cpath d='M22 1.333H6A2.675 2.675 0 0 0 3.333 4v18.667H6V4h16zm4 5.334H11.333a2.675 2.675 0 0 0-2.667 2.667v18.667c0 1.467 1.2 2.667 2.667 2.667H26c1.467 0 2.667-1.2 2.667-2.667V9.334c0-1.467-1.2-2.667-2.667-2.667M26 28H11.333V9.333H26z' style='fill-rule:nonzero'/%3E%3C/svg%3E\")}.ag-icon-cross:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' xml:space='preserve' style='fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2' viewBox='0 0 32 32'%3E%3Cpath d='M15.984 13.894 27.05 2.828l2.122 2.122-11.066 11.066 11.066 11.066-2.122 2.12-11.066-11.066L4.918 29.202l-2.12-2.12 11.066-11.066L2.798 4.95l2.12-2.122z'/%3E%3C/svg%3E\")}.ag-icon-csv:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' xml:space='preserve' style='fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2' viewBox='0 0 32 32'%3E%3Cpath d='M384 131.9c-7.753-8.433-110.425-128.473-114.9-133L48-.1C21.5 0 0 21.5 0 48v416c0 26.5 21.5 48 48 48h288c26.5 0 48-21.5 48-48zm-35.9 2.1H257V27.9zM30 479V27h200l1 105c0 13.3-1.3 29 12 29h111l1 318z' style='fill-rule:nonzero' transform='translate(3.934 -.054)scale(.06285)'/%3E%3Cpath d='M.688-.226a.2.2 0 0 1-.017.074.28.28 0 0 1-.145.14.412.412 0 0 1-.234.013.28.28 0 0 1-.202-.168.468.468 0 0 1-.04-.19q0-.086.025-.155a.319.319 0 0 1 .182-.191.4.4 0 0 1 .134-.025q.087 0 .155.035a.3.3 0 0 1 .104.085.17.17 0 0 1 .036.097.06.06 0 0 1-.018.044.06.06 0 0 1-.042.019.06.06 0 0 1-.042-.013.2.2 0 0 1-.031-.046.2.2 0 0 0-.066-.079.16.16 0 0 0-.095-.027.17.17 0 0 0-.142.068.3.3 0 0 0-.053.193.4.4 0 0 0 .023.139.2.2 0 0 0 .067.083.2.2 0 0 0 .1.027q.063 0 .106-.031a.2.2 0 0 0 .065-.091.2.2 0 0 1 .023-.046q.014-.018.044-.018a.06.06 0 0 1 .044.018.06.06 0 0 1 .019.045' style='fill-rule:nonzero' transform='matrix(8.39799 0 0 12.455 7.122 25.977)'/%3E%3Cpath d='M.622-.215a.2.2 0 0 1-.033.117.23.23 0 0 1-.098.081.4.4 0 0 1-.153.029.34.34 0 0 1-.175-.04.23.23 0 0 1-.079-.077.17.17 0 0 1-.031-.093q0-.027.019-.045a.06.06 0 0 1 .046-.019.06.06 0 0 1 .039.014.1.1 0 0 1 .027.044.3.3 0 0 0 .03.057q.015.023.044.038.03.015.076.015.065 0 .105-.03a.09.09 0 0 0 .04-.075.08.08 0 0 0-.022-.058.14.14 0 0 0-.056-.034 1 1 0 0 0-.092-.025.7.7 0 0 1-.129-.042.2.2 0 0 1-.083-.066.17.17 0 0 1-.03-.104q0-.058.032-.105a.2.2 0 0 1 .093-.07.4.4 0 0 1 .144-.025q.066 0 .114.016a.3.3 0 0 1 .08.044.2.2 0 0 1 .046.057q.015.03.015.058a.07.07 0 0 1-.018.046.06.06 0 0 1-.046.021q-.025 0-.038-.012a.2.2 0 0 1-.028-.041.2.2 0 0 0-.047-.063Q.387-.625.326-.625a.15.15 0 0 0-.09.025q-.035.024-.035.059 0 .021.012.037a.1.1 0 0 0 .032.027.4.4 0 0 0 .111.036q.06.015.11.031.048.018.083.042a.2.2 0 0 1 .054.062.2.2 0 0 1 .019.091' style='fill-rule:nonzero' transform='matrix(8.39799 0 0 12.455 13.339 25.977)'/%3E%3Cpath d='m.184-.633.162.48.163-.483q.013-.038.019-.053a.062.062 0 0 1 .061-.039q.018 0 .034.009a.1.1 0 0 1 .025.025q.009.015.009.031L.654-.64l-.007.025-.009.024-.173.468-.019.051a.2.2 0 0 1-.021.042.1.1 0 0 1-.033.03.1.1 0 0 1-.049.012.1.1 0 0 1-.05-.011A.1.1 0 0 1 .26-.03a.2.2 0 0 1-.021-.042L.22-.123.05-.587.041-.612.033-.638.03-.662q0-.025.02-.046a.07.07 0 0 1 .05-.02q.037 0 .053.023.015.023.031.072' style='fill-rule:nonzero' transform='matrix(8.39799 0 0 12.455 18.94 25.977)'/%3E%3C/svg%3E\")}.ag-icon-cut:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' xml:space='preserve' style='fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2' viewBox='0 0 32 32'%3E%3Cpath d='M13.775 15.198 3.835 2.945a1.501 1.501 0 0 1 2.33-1.89l14.997 18.488A6.003 6.003 0 0 1 29.657 25c0 3.311-2.688 6-6 6s-6-2.689-6-6c0-1.335.437-2.569 1.176-3.566l-3.127-3.855-3.001 3.7A5.97 5.97 0 0 1 14 25c0 3.311-2.689 6-6 6s-6-2.689-6-6a6.003 6.003 0 0 1 8.315-5.536zm9.882 6.702a3.1 3.1 0 0 0-3.1 3.1c0 1.711 1.389 3.1 3.1 3.1s3.1-1.389 3.1-3.1-1.389-3.1-3.1-3.1M8 21.95a3.05 3.05 0 1 0 .001 6.101A3.05 3.05 0 0 0 8 21.95m9.63-11.505 1.932 2.381 8.015-9.881a1.5 1.5 0 0 0-2.329-1.89z' style='fill-rule:nonzero'/%3E%3C/svg%3E\")}.ag-icon-desc:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' xml:space='preserve' style='fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2' viewBox='0 0 32 32'%3E%3Cpath d='m26.667 16-1.88-1.88-7.453 7.44V5.333h-2.667V21.56l-7.44-7.453L5.334 16l10.667 10.667z' style='fill-rule:nonzero'/%3E%3C/svg%3E\")}.ag-icon-adesc:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' viewBox='0 0 16 16'%3E%3Cpath fill='%23000' d='M10.387 11.47a.75.75 0 0 1 1.06 1.06l-3 3-.113.093a.75.75 0 0 1-.919-.065l-3.333-3a.75.75 0 0 1 1.003-1.116l2.806 2.525zM13.201 3.08q.65 0 1.135.222.487.223.759.619.27.396.279.918H14.19a.72.72 0 0 0-.293-.536q-.26-.192-.705-.192-.302.001-.51.086a.7.7 0 0 0-.32.23.56.56 0 0 0-.108.338.5.5 0 0 0 .065.273.7.7 0 0 0 .204.203q.127.083.295.146.168.06.36.102l.525.125a3.7 3.7 0 0 1 .701.229q.32.143.554.35.234.21.362.492.131.282.134.647a1.6 1.6 0 0 1-.273.93 1.74 1.74 0 0 1-.777.607q-.504.214-1.217.214-.708 0-1.232-.217a1.8 1.8 0 0 1-.816-.641q-.29-.429-.305-1.059h1.194q.02.294.17.49.15.195.402.294.253.098.573.098.313 0 .544-.092a.84.84 0 0 0 .362-.254.6.6 0 0 0 .129-.373.5.5 0 0 0-.117-.33.9.9 0 0 0-.337-.23 3.4 3.4 0 0 0-.54-.17l-.635-.16q-.738-.18-1.166-.562t-.426-1.03a1.53 1.53 0 0 1 .284-.926q.287-.396.79-.62a2.8 2.8 0 0 1 1.14-.222'/%3E%3Cpath fill='%23000' fill-rule='evenodd' d='M5.813 9H4.489l-.432-1.332H1.948L1.515 9H.19l2.017-5.84h1.592zM2.262 6.704h1.481l-.718-2.21H2.98zM8.452 3.16q.645 0 1.075.19.43.192.648.53a1.4 1.4 0 0 1 .217.776q0 .342-.137.602a1.2 1.2 0 0 1-.376.423 1.6 1.6 0 0 1-.542.23v.058q.333.014.624.187.294.175.476.489.183.31.183.74 0 .465-.231.83a1.56 1.56 0 0 1-.676.574Q9.265 9 8.609 9H6.114V3.16zM7.35 7.99h1.006q.517 0 .753-.196a.66.66 0 0 0 .237-.531.8.8 0 0 0-.116-.428.8.8 0 0 0-.334-.291 1.15 1.15 0 0 0-.511-.106H7.349zm0-2.386h.916q.254 0 .45-.09a.75.75 0 0 0 .313-.256.67.67 0 0 0 .118-.397.64.64 0 0 0-.226-.51q-.223-.194-.633-.194H7.35z' clip-rule='evenodd'/%3E%3C/svg%3E\")}.ag-icon-down:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' xml:space='preserve' style='fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2' viewBox='0 0 32 32'%3E%3Cpath d='m26.667 16-1.88-1.88-7.453 7.44V5.333h-2.667V21.56l-7.44-7.453L5.334 16l10.667 10.667z' style='fill-rule:nonzero'/%3E%3C/svg%3E\")}.ag-icon-excel:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' xml:space='preserve' style='fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2' viewBox='0 0 32 32'%3E%3Cpath d='M384 131.9c-7.753-8.433-110.425-128.473-114.9-133L48-.1C21.5 0 0 21.5 0 48v416c0 26.5 21.5 48 48 48h288c26.5 0 48-21.5 48-48zm-35.9 2.1H257V27.9zM30 479V27h200l1 105c0 13.3-1.3 29 12 29h111l1 318z' style='fill-rule:nonzero' transform='translate(3.934 -.054)scale(.06285)'/%3E%3Cpath d='m.052-.139.16-.234-.135-.208a.4.4 0 0 1-.028-.052.1.1 0 0 1-.01-.042.05.05 0 0 1 .018-.037.07.07 0 0 1 .045-.016q.03 0 .047.018a1 1 0 0 1 .047.066l.107.174.115-.174.024-.038.019-.026.021-.015a.1.1 0 0 1 .027-.005.06.06 0 0 1 .044.016.05.05 0 0 1 .018.039q0 .033-.038.089l-.141.211.152.234a.3.3 0 0 1 .03.051.1.1 0 0 1 .009.038.1.1 0 0 1-.008.031.1.1 0 0 1-.024.023.1.1 0 0 1-.034.008.1.1 0 0 1-.035-.008.1.1 0 0 1-.023-.022L.427-.067.301-.265l-.134.204-.022.034-.016.019a.1.1 0 0 1-.022.015.1.1 0 0 1-.03.005.06.06 0 0 1-.044-.016.06.06 0 0 1-.017-.047q0-.036.036-.088' style='fill-rule:nonzero' transform='matrix(17.82892 0 0 16.50777 10.371 25.928)'/%3E%3C/svg%3E\")}.ag-icon-expanded:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' xml:space='preserve' style='fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2' viewBox='0 0 32 32'%3E%3Cpath d='M20 26 10 16 20 6l2 2-8 8 8 8z'/%3E%3C/svg%3E\")}.ag-icon-eye-slash:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Ctitle%3Eeye-slash%3C/title%3E%3Cpath fill='%23000' fill-rule='nonzero' d='M8.95 10.364 7 8.414 8.414 7l2.32 2.32A13.2 13.2 0 0 1 16.5 8c5.608 0 10.542 3.515 12.381 8.667L29 17l-.119.333a13 13 0 0 1-4.255 5.879l1.466 1.466-1.414 1.414-1.754-1.753A13.2 13.2 0 0 1 16.5 26c-5.608 0-10.542-3.515-12.381-8.667L4 17l.119-.333a13 13 0 0 1 4.83-6.303m1.445 1.445A11.02 11.02 0 0 0 6.148 17c1.646 4.177 5.728 7 10.352 7 1.76 0 3.441-.409 4.94-1.146l-1.878-1.878A5.06 5.06 0 0 1 16.5 22c-2.789 0-5.05-2.239-5.05-5 0-1.158.398-2.223 1.065-3.07zm1.855-.974 1.794 1.795A5.07 5.07 0 0 1 16.5 12c2.789 0 5.05 2.239 5.05 5 0 .9-.24 1.745-.661 2.474l2.305 2.306A11 11 0 0 0 26.852 17c-1.646-4.177-5.728-7-10.352-7-1.495 0-2.933.295-4.25.835'/%3E%3C/svg%3E\")}.ag-icon-eye:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' xml:space='preserve' style='fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2' viewBox='0 0 32 32'%3E%3Cpath d='M16.5 23c4.624 0 8.706-2.823 10.352-7-1.646-4.177-5.728-7-10.352-7s-8.706 2.823-10.352 7c1.646 4.177 5.728 7 10.352 7M4.119 15.667C5.958 10.515 10.892 7 16.5 7s10.542 3.515 12.381 8.667L29 16l-.119.333C27.042 21.485 22.108 25 16.5 25S5.958 21.485 4.119 16.333L4 16zM16.5 21c2.789 0 5.049-2.239 5.049-5s-2.26-5-5.049-5-5.049 2.239-5.049 5 2.26 5 5.049 5' style='fill-rule:nonzero'/%3E%3C/svg%3E\")}.ag-icon-filter:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' xml:space='preserve' style='fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2' viewBox='0 0 32 32'%3E%3Cpath d='m28 8-8 8v5l-6 6V16L6 8V6h22zM9 8l7 7v7l2-2v-5l7-7z' style='fill-rule:nonzero'/%3E%3C/svg%3E\")}.ag-icon-first:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' xml:space='preserve' style='fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2' viewBox='0 0 32 32'%3E%3Cpath d='M24.273 22.12 18.153 16l6.12-6.12L22.393 8l-8 8 8 8zM7.727 8h2.667v16H7.727z' style='fill-rule:nonzero'/%3E%3C/svg%3E\")}.ag-icon-group:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' xml:space='preserve' style='fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2' viewBox='0 0 32 32'%3E%3Cpath d='M14 7v1H9V7zm0-3v1H5.001V4zm-7 7H5v-1h2zm0-3H5V7h2zM3 5H1V4h2zm11 5v1H9v-1zm-7 4H5v-1h2zm7-1v1H9v-1z' style='fill-rule:nonzero' transform='matrix(2 0 0 2 0 -2)'/%3E%3C/svg%3E\")}.ag-icon-last:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' xml:space='preserve' style='fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2' viewBox='0 0 32 32'%3E%3Cpath d='m7.727 9.88 6.12 6.12-6.12 6.12L9.607 24l8-8-8-8zM21.607 8h2.667v16h-2.667z' style='fill-rule:nonzero'/%3E%3C/svg%3E\")}.ag-icon-left:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' xml:space='preserve' style='fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2' viewBox='0 0 32 32'%3E%3Cpath d='M26.667 14.667H10.44l7.453-7.453L16 5.334 5.333 16.001 16 26.668l1.88-1.88-7.44-7.453h16.227z' style='fill-rule:nonzero'/%3E%3C/svg%3E\")}.ag-icon-linked:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' xml:space='preserve' style='fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2' viewBox='0 0 32 32'%3E%3Cpath d='M5.2 16a4.136 4.136 0 0 1 4.133-4.133h5.333V9.334H9.333a6.67 6.67 0 0 0-6.667 6.667 6.67 6.67 0 0 0 6.667 6.667h5.333v-2.533H9.333A4.136 4.136 0 0 1 5.2 16.002zm5.467 1.333h10.667v-2.667H10.667zm12-8h-5.333v2.533h5.333a4.136 4.136 0 0 1 4.133 4.133 4.136 4.136 0 0 1-4.133 4.133h-5.333v2.533h5.333a6.67 6.67 0 0 0 6.667-6.667 6.67 6.67 0 0 0-6.667-6.667z' style='fill-rule:nonzero'/%3E%3C/svg%3E\")}.ag-icon-loading:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' xml:space='preserve' style='fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2' viewBox='0 0 32 32'%3E%3Cpath d='M17 29h-2v-8h2zm-3.586-9L7 26.414 5.586 25 12 18.586zm13 5L25 26.414 18.586 20 20 18.586zM29 17h-8v-2h8zm-18 0H3v-2h8zm2.414-5L12 13.414 5.586 7 7 5.586zm13-5L20 13.414 18.586 12 25 5.586zM17 11h-2V3h2z' style='fill-rule:nonzero' transform='translate(-3.692 -3.692)scale(1.23077)'/%3E%3C/svg%3E\")}.ag-icon-maximize:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' xml:space='preserve' style='fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2' viewBox='0 0 32 32'%3E%3Cpath d='M14 30H2V18h2.828v7.05l8.254-8.252 2.12 2.12-8.252 8.254H14zm4-28h12v12h-2.828V6.95l-8.254 8.252-2.12-2.12 8.252-8.254H18z'/%3E%3C/svg%3E\")}.ag-icon-menu:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' xml:space='preserve' style='fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2' viewBox='0 0 32 32'%3E%3Cpath d='M20 13H0v-2h20zm0-6H0V5h20zm0-6H0v-2h20z' style='fill-rule:nonzero' transform='translate(6 9)'/%3E%3C/svg%3E\")}.ag-icon-menu-alt:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='32' height='32' fill='none' viewBox='0 0 32 32'%3E%3Cpath fill='%23000' d='M16 19a3 3 0 1 0 0-6 3 3 0 0 0 0 6M16 11a3 3 0 1 0 0-6 3 3 0 0 0 0 6M16 27a3 3 0 1 0 0-6 3 3 0 0 0 0 6'/%3E%3C/svg%3E\")}.ag-icon-minimize:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' xml:space='preserve' style='fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2' viewBox='0 0 32 32'%3E%3Cpath d='M2 18h12v12h-2.828v-7.05l-8.254 8.252-2.12-2.12 8.252-8.254H2zm28-4H18V2h2.828v7.05L29.082.798l2.12 2.12-8.252 8.254H30z'/%3E%3C/svg%3E\")}.ag-icon-minus:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' xml:space='preserve' style='fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2' viewBox='0 0 32 32'%3E%3Cpath d='M6.572 6.572a13.32 13.32 0 0 0 0 18.856 13.32 13.32 0 0 0 18.856 0 13.32 13.32 0 0 0 0-18.856 13.32 13.32 0 0 0-18.856 0m17.527 8.099v2.658H7.901v-2.658z' style='fill-rule:nonzero'/%3E%3C/svg%3E\")}.ag-icon-next:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' xml:space='preserve' style='fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2' viewBox='0 0 32 32'%3E%3Cpath d='M10.94 6 9.06 7.88 17.167 16 9.06 24.12 10.94 26l10-10z' style='fill-rule:nonzero' transform='translate(1)'/%3E%3C/svg%3E\")}.ag-icon-none:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Ctitle%3Enone%3C/title%3E%3Cg fill='%23000' fill-rule='nonzero'%3E%3Cpath d='M23.708 14.645 16 6.939l-7.708 7.706 1.416 1.416L16 9.767l6.292 6.294zM23.708 20.355 16 28.061l-7.708-7.706 1.416-1.416L16 25.233l6.292-6.294z'/%3E%3C/g%3E%3C/svg%3E\")}.ag-icon-not-allowed:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' xml:space='preserve' style='fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2' viewBox='0 0 32 32'%3E%3Cpath d='M16 2.667C8.64 2.667 2.667 8.64 2.667 16S8.64 29.333 16 29.333 29.333 23.36 29.333 16 23.36 2.667 16 2.667M5.333 16c0-5.893 4.773-10.667 10.667-10.667 2.467 0 4.733.84 6.533 2.253L7.586 22.533A10.54 10.54 0 0 1 5.333 16M16 26.667c-2.467 0-4.733-.84-6.533-2.253L24.414 9.467A10.54 10.54 0 0 1 26.667 16c0 5.893-4.773 10.667-10.667 10.667' style='fill-rule:nonzero'/%3E%3C/svg%3E\")}.ag-icon-paste:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' xml:space='preserve' style='fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2' viewBox='0 0 32 32'%3E%3Cpath d='M25.334 4H19.76C19.2 2.453 17.733 1.333 16 1.333S12.8 2.453 12.24 4H6.667A2.675 2.675 0 0 0 4 6.667V28c0 1.467 1.2 2.667 2.667 2.667h18.667c1.467 0 2.667-1.2 2.667-2.667V6.667C28.001 5.2 26.801 4 25.334 4M16 4c.733 0 1.333.6 1.333 1.333s-.6 1.333-1.333 1.333-1.333-.6-1.333-1.333S15.267 4 16 4m9.333 24H6.666V6.667h2.667v4h13.333v-4h2.667z' style='fill-rule:nonzero'/%3E%3C/svg%3E\")}.ag-icon-pin:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' xml:space='preserve' style='fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2' viewBox='0 0 32 32'%3E%3Cpath d='m10.78 19.777-4.668-4.666s.032-1 .67-1.87c1.366-1.86 4.052-1.96 6.056-1.572l3.158-3.108c-.7-2.342 3.352-5.046 3.352-5.046l9.166 9.168q-.334.447-.67.894c-1.074 1.426-2.538 2.63-4.272 2.338l-3.32 3.218c.046.344.042.03.118 1.152.144 2.13-.64 4.324-2.632 5.34l-.746.364-4.798-4.798-7.292 7.294-1.416-1.416zm8.24-13.672c-.688.568-1.416 1.45-1.024 2.072l.49.722-4.986 4.988c-1.988-.506-4.346-.636-5.156.614l9.02 9.032q.14-.099.272-.21c1.226-1.08.764-3.04.498-4.9l4.79-4.79s1.47.938 2.936-.776l-6.79-6.79q-.026.019-.05.038' style='fill-rule:nonzero'/%3E%3C/svg%3E\")}.ag-icon-pivot:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' xml:space='preserve' style='fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2' viewBox='0 0 32 32'%3E%3Cpath d='M25.128 2.002c2.56.096 4.772 2.292 4.87 4.87a712 712 0 0 1 0 18.256c-.096 2.56-2.292 4.772-4.87 4.87a712 712 0 0 1-18.256 0c-2.558-.096-4.772-2.29-4.87-4.87a712 712 0 0 1 0-18.256c.096-2.56 2.292-4.772 4.87-4.87a712 712 0 0 1 18.256 0m2.966 7.954H9.892v18.136c5.086.13 10.18.098 15.264-.096 1.48-.094 2.746-1.35 2.84-2.84.192-5.064.226-10.134.098-15.2M3.968 24.1q.015.528.036 1.056c.094 1.484 1.354 2.746 2.84 2.84l1.012.036V24.1zM22 15.414l-.292.294-1.416-1.416L23 11.586l2.708 2.706-1.416 1.416-.292-.294v3.592c-.032 2.604-2.246 4.892-4.872 4.992L15.414 24l.294.292-1.416 1.416L11.586 23l2.706-2.708 1.416 1.416-.322.32c3.372.03 6.578-.164 6.614-3.034zM3.88 18.038c.002 1.346.012 2.694.038 4.04h3.938v-4.04zm.05-6.062a681 681 0 0 0-.044 4.042h3.97v-4.042zm5.962-7.99Q8.449 3.999 7.006 4c-1.57.02-2.946 1.348-3.004 2.922q-.02 1.517-.042 3.034h3.896v-2.02h2.036zm14.244-.016v3.966h3.898q-.017-.546-.038-1.092c-.094-1.48-1.35-2.746-2.84-2.84q-.51-.019-1.02-.034m-8.14-.054q-2.035.022-4.07.048v3.972h4.07zm6.106.008a213 213 0 0 0-4.07-.022v4.034h4.07z' style='fill-rule:nonzero'/%3E%3C/svg%3E\")}.ag-icon-plus:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' xml:space='preserve' style='fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2' viewBox='0 0 32 32'%3E%3Cpath d='M6.572 6.572a13.32 13.32 0 0 0 0 18.856 13.32 13.32 0 0 0 18.856 0 13.32 13.32 0 0 0 0-18.856 13.32 13.32 0 0 0-18.856 0m17.527 8.099v2.658h-6.77v6.77h-2.658v-6.77h-6.77v-2.658h6.77v-6.77h2.658v6.77z' style='fill-rule:nonzero'/%3E%3C/svg%3E\")}.ag-icon-previous:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' xml:space='preserve' style='fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2' viewBox='0 0 32 32'%3E%3Cpath d='M21.94 7.88 20.06 6l-10 10 10 10 1.88-1.88L13.833 16z' style='fill-rule:nonzero'/%3E%3C/svg%3E\")}.ag-icon-right:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' xml:space='preserve' style='fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2' viewBox='0 0 32 32'%3E%3Cpath d='m16 5.333-1.88 1.88 7.44 7.453H5.333v2.667H21.56l-7.44 7.453 1.88 1.88 10.667-10.667L16 5.332z' style='fill-rule:nonzero'/%3E%3C/svg%3E\")}.ag-icon-save:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' xml:space='preserve' style='fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2' viewBox='0 0 32 32'%3E%3Cpath d='M15.708 2.355 8 10.061.292 2.355 1.708.939 8 7.233 14.292.939z' style='fill-rule:nonzero' transform='translate(8 14)'/%3E%3Cpath d='M5 26h22v2H5zM15 4h2v18h-2z'/%3E%3C/svg%3E\")}.ag-icon-small-down:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' xml:space='preserve' style='fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2' viewBox='0 0 32 32'%3E%3Cpath d='M7.334 10.667 16 21.334l8.667-10.667z' style='fill-rule:nonzero'/%3E%3C/svg%3E\")}.ag-icon-small-left:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' xml:space='preserve' style='fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2' viewBox='0 0 32 32'%3E%3Cpath d='M21.333 7.334 10.666 16l10.667 8.667z' style='fill-rule:nonzero'/%3E%3C/svg%3E\")}.ag-icon-small-right:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' xml:space='preserve' style='fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2' viewBox='0 0 32 32'%3E%3Cpath d='M10.667 24.666 21.334 16 10.667 7.333z' style='fill-rule:nonzero'/%3E%3C/svg%3E\")}.ag-icon-small-up:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' xml:space='preserve' style='fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2' viewBox='0 0 32 32'%3E%3Cpath d='M7.334 21.333 16 10.666l8.667 10.667z' style='fill-rule:nonzero'/%3E%3C/svg%3E\")}.ag-icon-tick:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' xml:space='preserve' style='fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2' viewBox='0 0 32 32'%3E%3Cpath d='M11.586 22.96 27.718 6.828 29.84 8.95 11.586 27.202 2.4 18.016l2.12-2.122z'/%3E%3C/svg%3E\")}.ag-icon-tree-closed:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' xml:space='preserve' style='fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2' viewBox='0 0 32 32'%3E%3Cpath d='m11.94 6-1.88 1.88L18.167 16l-8.107 8.12L11.94 26l10-10z' style='fill-rule:nonzero'/%3E%3C/svg%3E\")}.ag-icon-tree-indeterminate:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' xml:space='preserve' style='fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2' viewBox='0 0 32 32'%3E%3Cpath d='M6 13.5h20v3H6z'/%3E%3C/svg%3E\")}.ag-icon-tree-open:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' xml:space='preserve' style='fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2' viewBox='0 0 32 32'%3E%3Cpath d='M24.12 9.06 16 17.167 7.88 9.06 6 10.94l10 10 10-10z' style='fill-rule:nonzero' transform='translate(0 1)'/%3E%3C/svg%3E\")}.ag-icon-unlinked:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' xml:space='preserve' style='fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2' viewBox='0 0 32 32'%3E%3Cpath d='M22.667 9.333h-5.333v2.533h5.333a4.136 4.136 0 0 1 4.133 4.133c0 1.907-1.307 3.507-3.08 3.973l1.947 1.947c2.173-1.107 3.667-3.32 3.667-5.92a6.67 6.67 0 0 0-6.667-6.667zm-1.334 5.334h-2.92l2.667 2.667h.253zM2.667 5.693 6.814 9.84A6.65 6.65 0 0 0 2.667 16a6.67 6.67 0 0 0 6.667 6.667h5.333v-2.533H9.334a4.136 4.136 0 0 1-4.133-4.133c0-2.12 1.613-3.867 3.68-4.093l2.76 2.76h-.973v2.667h3.64l3.027 3.027v2.307h2.307l5.347 5.333 1.68-1.68L4.362 4.002 2.669 5.695z' style='fill-rule:nonzero'/%3E%3C/svg%3E\")}.ag-icon-up:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' xml:space='preserve' style='fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2' viewBox='0 0 32 32'%3E%3Cpath d='m5.333 16 1.88 1.88 7.453-7.44v16.227h2.667V10.44l7.44 7.453L26.666 16 15.999 5.333 5.332 16z' style='fill-rule:nonzero'/%3E%3C/svg%3E\")}.ag-icon-grip:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' xml:space='preserve' style='fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2' viewBox='0 0 32 32'%3E%3Cpath d='M8 24H6v-4h2zm6 0h-2v-4h2zm6 0h-2v-4h2zm6 0h-2v-4h2zM8 18H6v-4h2zm6 0h-2v-4h2zm6 0h-2v-4h2zm6 0h-2v-4h2zM8 12H6V8h2zm6 0h-2V8h2zm6 0h-2V8h2zm6 0h-2V8h2z' style='fill-rule:nonzero'/%3E%3C/svg%3E\")}.ag-icon-settings:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='32' height='32' fill='none' viewBox='0 0 32 32'%3E%3Cpath fill='%23000' d='M30 8h-4.1c-.5-2.3-2.5-4-4.9-4s-4.4 1.7-4.9 4H2v2h14.1c.5 2.3 2.5 4 4.9 4s4.4-1.7 4.9-4H30zm-9 4c-1.7 0-3-1.3-3-3s1.3-3 3-3 3 1.3 3 3-1.3 3-3 3M2 24h4.1c.5 2.3 2.5 4 4.9 4s4.4-1.7 4.9-4H30v-2H15.9c-.5-2.3-2.5-4-4.9-4s-4.4 1.7-4.9 4H2zm9-4c1.7 0 3 1.3 3 3s-1.3 3-3 3-3-1.3-3-3 1.3-3 3-3'/%3E%3C/svg%3E\")}.ag-icon-column-arrow:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 32 32'%3E%3Cpath fill='currentColor' fill-rule='evenodd' d='M11 4a1 1 0 0 1 1 1v22a1 1 0 1 1-2 0V5a1 1 0 0 1 1-1' clip-rule='evenodd'/%3E%3Cpath fill='currentColor' fill-rule='evenodd' d='M2 13a1 1 0 0 1 1-1h23.5a1 1 0 1 1 0 2H3a1 1 0 0 1-1-1' clip-rule='evenodd'/%3E%3Cpath fill='currentColor' fill-rule='evenodd' d='M2 4h18v24H2zm2 2v20h14V6zM26.793 13 23 9.207l1.414-1.414L29.621 13l-5.207 5.207L23 16.793z' clip-rule='evenodd'/%3E%3C/svg%3E\")}.ag-icon-un-pin:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='32' height='32' fill='none' viewBox='0 0 32 32'%3E%3Cpath fill='currentColor' fill-rule='evenodd' d='m6.112 15.111 3.272 3.271 1.436-1.402-2.476-2.479c.81-1.25 3.168-1.12 5.156-.614l4.986-4.988-.49-.722c-.392-.622.336-1.504 1.024-2.072l.008-.007.01-.006.032-.025 1.447 1.447 1.432-1.397-2.601-2.602s-4.052 2.704-3.352 5.046l-3.158 3.108c-2.004-.388-4.69-.288-6.056 1.572-.638.87-.67 1.87-.67 1.87m.581 11.582.014.014 5.502-5.501 4.783 4.783.746-.364c1.992-1.016 2.776-3.21 2.632-5.34-.055-.805-.068-.87-.088-.97-.008-.04-.017-.085-.03-.182l3.32-3.218c1.734.292 3.198-.912 4.272-2.338q.337-.447.67-.894l-.001-.001-.007-.007-.007-.007-.007-.007-3.87-3.87 1.585-1.584-1.414-1.414-14.381 14.38-1.237 1.209-5.69 5.687 1.417 1.416zM23.21 10.206l2.65 2.651c-1.465 1.714-2.935.776-2.935.776l-4.79 4.79q.041.291.087.583c.257 1.676.513 3.35-.585 4.317a4 4 0 0 1-.272.21l-3.739-3.744z' clip-rule='evenodd'/%3E%3C/svg%3E\")}.ag-icon-pinned-top:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='32' height='32' fill='none' viewBox='0 0 32 32'%3E%3Cpath fill='currentColor' d='m16.708 10.878 8.708 8.706L24 21l-6.292-6.294V27h-2V14.706L9.416 21 8 19.584q4.348-4.344 8.691-8.69zM25 6H8v2h17z'/%3E%3C/svg%3E\")}.ag-icon-pinned-bottom:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='32' height='32' fill='none' viewBox='0 0 32 32'%3E%3Cpath fill='currentColor' d='M16.708 22.122 8 13.416 9.416 12l6.292 6.294V6h2v12.294L24 12l1.416 1.416-8.691 8.69zM7.416 28h17v-2h-17z'/%3E%3C/svg%3E\")}.ag-icon-chevron-up:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' viewBox='0 0 16 16'%3E%3Cpath fill='currentColor' fill-rule='evenodd' d='M3.479 10.521a.75.75 0 0 1 0-1.06l4-4a.75.75 0 0 1 1.06 0l4 4a.75.75 0 0 1-1.06 1.06l-3.47-3.47-3.47 3.47a.75.75 0 0 1-1.06 0' clip-rule='evenodd'/%3E%3C/svg%3E\")}.ag-icon-chevron-down:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' viewBox='0 0 16 16'%3E%3Cpath fill='currentColor' fill-rule='evenodd' d='M12.521 5.461a.75.75 0 0 1 0 1.06l-4 4a.75.75 0 0 1-1.06 0l-4-4a.75.75 0 0 1 1.06-1.06l3.47 3.47 3.47-3.47a.75.75 0 0 1 1.06 0' clip-rule='evenodd'/%3E%3C/svg%3E\")}.ag-icon-chevron-left:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' viewBox='0 0 16 16'%3E%3Cpath fill='currentColor' fill-rule='evenodd' d='M10.53 12.512a.75.75 0 0 1-1.06 0l-4-4a.75.75 0 0 1 0-1.06l4-4a.75.75 0 0 1 1.06 1.06l-3.47 3.47 3.47 3.47a.75.75 0 0 1 0 1.06' clip-rule='evenodd'/%3E%3C/svg%3E\")}.ag-icon-chevron-right:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' viewBox='0 0 16 16'%3E%3Cpath fill='currentColor' fill-rule='evenodd' d='M5.47 3.47a.75.75 0 0 1 1.06 0l4 4a.75.75 0 0 1 0 1.06l-4 4a.75.75 0 0 1-1.06-1.06L8.94 8 5.47 4.53a.75.75 0 0 1 0-1.06' clip-rule='evenodd'/%3E%3C/svg%3E\")}.ag-icon-filter-add:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='32' height='32' fill='none' viewBox='0 0 32 32'%3E%3Cpath fill='currentColor' d='M19.834 8H8c0 .304.06.612.258.842 2.716 2.854 6.682 5.548 6.742 7.974V21l2-1.5v-2.684c.056-2.267 2.968-4.417 5.49-6.75v3.087c-1.081.974-2.245 1.968-3.232 3.005a1.05 1.05 0 0 0-.258.682v3.66L13 25c0-2.74.066-5.482-.002-8.222a1.05 1.05 0 0 0-.256-.62C10.026 13.304 6.06 10.61 6 8.184V6h13.834z'/%3E%3Cpath fill='currentColor' d='M26 6h2.946v2.002H26v3.313h-2.002V8.002h-2.946V6h2.946V3.04H26z'/%3E%3C/svg%3E\")}.ag-icon-edit:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='32' height='32' fill='none' viewBox='0 0 32 32'%3E%3Cpath fill='currentColor' d='M6.222 25.778h1.611l14.834-14.811-1.611-1.611-14.834 14.81zM4 28v-4.733L22.644 4.656a2.26 2.26 0 0 1 1.567-.634q.423 0 .833.167.412.166.734.478l1.589 1.6q.333.322.483.733t.15.822q0 .423-.161.839-.162.416-.472.728L8.733 28zm17.856-17.833-.8-.811 1.61 1.61z'/%3E%3C/svg%3E\")}"}),_h=Fu({feature:"iconSet",css:".ag-icon-aggregation:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Ctitle%3Eaggregation%3C/title%3E%3Cpath d='M24 5.333H8V8l8.667 8L8 24v2.667h16v-4h-9.333L21.334 16l-6.667-6.667H24z'/%3E%3C/svg%3E\")}.ag-icon-arrows:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Ctitle%3Earrows%3C/title%3E%3Cpath d='M13.333 11.556h5.333V8h3.556L16 1.778 9.778 8h3.556zm-1.777 1.777H8V9.777l-6.222 6.222L8 22.221v-3.556h3.556zM30.222 16 24 9.778v3.556h-3.556v5.333H24v3.556l6.222-6.222zm-11.555 4.444h-5.333V24H9.778L16 30.222 22.222 24h-3.556z'/%3E%3C/svg%3E\")}.ag-icon-asc:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Ctitle%3Easc%3C/title%3E%3Cpath d='m5.333 16 1.88 1.88 7.453-7.44v16.227h2.667V10.44l7.44 7.453L26.666 16 15.999 5.333z'/%3E%3C/svg%3E\")}.ag-icon-aasc:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' viewBox='0 0 16 16'%3E%3Cpath fill='%23000' d='M13.201 8.08q.65 0 1.135.222.487.222.759.618.27.396.279.919H14.19a.72.72 0 0 0-.293-.536q-.26-.191-.705-.192-.302.001-.51.086a.7.7 0 0 0-.32.23.56.56 0 0 0-.108.338.5.5 0 0 0 .065.273.7.7 0 0 0 .204.203q.127.083.295.146.168.06.36.102l.525.125q.382.086.701.229.32.143.554.35.234.21.362.49.131.284.134.648a1.6 1.6 0 0 1-.273.93q-.27.391-.777.608-.504.214-1.217.214-.708 0-1.232-.217a1.8 1.8 0 0 1-.816-.642q-.29-.428-.305-1.058h1.194q.02.294.17.49.15.195.402.294.253.097.573.097.313 0 .544-.09a.84.84 0 0 0 .362-.255.6.6 0 0 0 .129-.374q0-.195-.117-.33a.9.9 0 0 0-.337-.228 3.4 3.4 0 0 0-.54-.171l-.635-.16q-.738-.18-1.166-.562t-.426-1.03a1.53 1.53 0 0 1 .284-.927q.287-.396.79-.618a2.8 2.8 0 0 1 1.14-.223'/%3E%3Cpath fill='%23000' fill-rule='evenodd' d='M5.813 14H4.489l-.432-1.332H1.948L1.515 14H.19l2.017-5.84h1.592zm-3.551-2.296h1.481l-.718-2.21H2.98zM8.452 8.16q.645 0 1.075.19.43.191.648.531a1.4 1.4 0 0 1 .217.775q0 .343-.137.602-.137.256-.376.422a1.6 1.6 0 0 1-.542.231v.057q.333.015.624.188.294.175.476.489.183.31.183.74 0 .466-.231.831a1.56 1.56 0 0 1-.676.573Q9.265 14 8.609 14H6.114V8.16zM7.35 12.99h1.006q.517 0 .753-.196a.66.66 0 0 0 .237-.531.8.8 0 0 0-.116-.428.8.8 0 0 0-.334-.29 1.15 1.15 0 0 0-.511-.106H7.349zm0-2.386h.916q.254 0 .45-.09a.75.75 0 0 0 .313-.256.67.67 0 0 0 .118-.396.64.64 0 0 0-.226-.511q-.223-.195-.633-.194H7.35z' clip-rule='evenodd'/%3E%3Cpath fill='%23000' d='M7.166.377a.75.75 0 0 1 .919.066l3.333 3a.75.75 0 0 1-1.003 1.115L7.609 2.033 5.113 4.53a.75.75 0 0 1-1.06-1.06l3-3z'/%3E%3C/svg%3E\")}.ag-icon-cancel:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Ctitle%3Ecancel%3C/title%3E%3Cpath d='M16 2.667C8.627 2.667 2.667 8.627 2.667 16S8.627 29.333 16 29.333 29.333 23.373 29.333 16 23.373 2.667 16 2.667m6.667 18.12-1.88 1.88L16 17.88l-4.787 4.787-1.88-1.88L14.12 16l-4.787-4.787 1.88-1.88L16 14.12l4.787-4.787 1.88 1.88L17.88 16z'/%3E%3C/svg%3E\")}.ag-icon-chart:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Ctitle%3Echart%3C/title%3E%3Cpath d='M6.667 12.267h4v13.067h-4zm7.466-5.6h3.733v18.667h-3.733zM21.6 17.333h3.733v8H21.6z'/%3E%3C/svg%3E\")}.ag-icon-color-picker:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Ctitle%3Ecolor-picker%3C/title%3E%3Cpath d='M23.907 17.587 10.574 4.254l-1.88 1.88 3.173 3.173-8.28 8.28 10.16 10.16zm-16.547 0 6.387-6.387 6.387 6.387H7.361zm18.387 2s-2.667 2.893-2.667 4.667c0 1.467 1.2 2.667 2.667 2.667s2.667-1.2 2.667-2.667c0-1.773-2.667-4.667-2.667-4.667'/%3E%3C/svg%3E\")}.ag-icon-columns:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Ctitle%3Ecolumns%3C/title%3E%3Cpath d='M5.333 10.667h5.333V5.334H5.333zm8 16h5.333v-5.333h-5.333zm-8 0h5.333v-5.333H5.333zm0-8h5.333v-5.333H5.333zm8 0h5.333v-5.333h-5.333zm8-13.334v5.333h5.333V5.333zm-8 5.334h5.333V5.334h-5.333zm8 8h5.333v-5.333h-5.333zm0 8h5.333v-5.333h-5.333z'/%3E%3C/svg%3E\")}.ag-icon-contracted:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Ctitle%3Econtracted%3C/title%3E%3Cpath d='m12.94 8-1.88 1.88L17.167 16l-6.107 6.12L12.94 24l8-8z'/%3E%3C/svg%3E\")}.ag-icon-copy:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Ctitle%3Ecopy%3C/title%3E%3Cpath d='M22 1.333H6A2.675 2.675 0 0 0 3.333 4v18.667H6V4h16zm4 5.334H11.333a2.675 2.675 0 0 0-2.667 2.667v18.667c0 1.467 1.2 2.667 2.667 2.667H26c1.467 0 2.667-1.2 2.667-2.667V9.334c0-1.467-1.2-2.667-2.667-2.667M26 28H11.333V9.333H26z'/%3E%3C/svg%3E\")}.ag-icon-cross:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Ctitle%3Ecross%3C/title%3E%3Cpath d='m25.333 8.547-1.88-1.88L16 14.12 8.547 6.667l-1.88 1.88L14.12 16l-7.453 7.453 1.88 1.88L16 17.88l7.453 7.453 1.88-1.88L17.88 16z'/%3E%3C/svg%3E\")}.ag-icon-csv:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' xml:space='preserve' style='fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2' viewBox='0 0 32 32'%3E%3Cpath d='M384 131.9c-7.753-8.433-110.425-128.473-114.9-133L48-.1C21.5 0 0 21.5 0 48v416c0 26.5 21.5 48 48 48h288c26.5 0 48-21.5 48-48zm-35.9 2.1H257V27.9zM30 479V27h200l1 105c0 13.3-1.3 29 12 29h111l1 318z' style='fill-rule:nonzero' transform='translate(3.934 -.054)scale(.06285)'/%3E%3Cpath d='M.688-.226a.2.2 0 0 1-.017.074.28.28 0 0 1-.145.14.412.412 0 0 1-.234.013.28.28 0 0 1-.202-.168.468.468 0 0 1-.04-.19q0-.086.025-.155a.319.319 0 0 1 .182-.191.4.4 0 0 1 .134-.025q.087 0 .155.035a.3.3 0 0 1 .104.085.17.17 0 0 1 .036.097.06.06 0 0 1-.018.044.06.06 0 0 1-.042.019.06.06 0 0 1-.042-.013.2.2 0 0 1-.031-.046.2.2 0 0 0-.066-.079.16.16 0 0 0-.095-.027.17.17 0 0 0-.142.068.3.3 0 0 0-.053.193.4.4 0 0 0 .023.139.2.2 0 0 0 .067.083.2.2 0 0 0 .1.027q.063 0 .106-.031a.2.2 0 0 0 .065-.091.2.2 0 0 1 .023-.046q.014-.018.044-.018a.06.06 0 0 1 .044.018.06.06 0 0 1 .019.045' style='fill-rule:nonzero' transform='matrix(8.39799 0 0 12.455 7.122 25.977)'/%3E%3Cpath d='M.622-.215a.2.2 0 0 1-.033.117.23.23 0 0 1-.098.081.4.4 0 0 1-.153.029.34.34 0 0 1-.175-.04.23.23 0 0 1-.079-.077.17.17 0 0 1-.031-.093q0-.027.019-.045a.06.06 0 0 1 .046-.019.06.06 0 0 1 .039.014.1.1 0 0 1 .027.044.3.3 0 0 0 .03.057q.015.023.044.038.03.015.076.015.065 0 .105-.03a.09.09 0 0 0 .04-.075.08.08 0 0 0-.022-.058.14.14 0 0 0-.056-.034 1 1 0 0 0-.092-.025.7.7 0 0 1-.129-.042.2.2 0 0 1-.083-.066.17.17 0 0 1-.03-.104q0-.058.032-.105a.2.2 0 0 1 .093-.07.4.4 0 0 1 .144-.025q.066 0 .114.016a.3.3 0 0 1 .08.044.2.2 0 0 1 .046.057q.015.03.015.058a.07.07 0 0 1-.018.046.06.06 0 0 1-.046.021q-.025 0-.038-.012a.2.2 0 0 1-.028-.041.2.2 0 0 0-.047-.063Q.387-.625.326-.625a.15.15 0 0 0-.09.025q-.035.024-.035.059 0 .021.012.037a.1.1 0 0 0 .032.027.4.4 0 0 0 .111.036q.06.015.11.031.048.018.083.042a.2.2 0 0 1 .054.062.2.2 0 0 1 .019.091' style='fill-rule:nonzero' transform='matrix(8.39799 0 0 12.455 13.339 25.977)'/%3E%3Cpath d='m.184-.633.162.48.163-.483q.013-.038.019-.053a.062.062 0 0 1 .061-.039q.018 0 .034.009a.1.1 0 0 1 .025.025q.009.015.009.031L.654-.64l-.007.025-.009.024-.173.468-.019.051a.2.2 0 0 1-.021.042.1.1 0 0 1-.033.03.1.1 0 0 1-.049.012.1.1 0 0 1-.05-.011A.1.1 0 0 1 .26-.03a.2.2 0 0 1-.021-.042L.22-.123.05-.587.041-.612.033-.638.03-.662q0-.025.02-.046a.07.07 0 0 1 .05-.02q.037 0 .053.023.015.023.031.072' style='fill-rule:nonzero' transform='matrix(8.39799 0 0 12.455 18.94 25.977)'/%3E%3C/svg%3E\")}.ag-icon-cut:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' xml:space='preserve' style='fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2' viewBox='0 0 32 32'%3E%3Cpath d='m19 3-6 6 2 2 7-7V3m-10 9.5a.503.503 0 0 1-.5-.5c0-.274.226-.5.5-.5s.5.226.5.5-.226.5-.5.5M6 20c-1.097 0-2-.903-2-2a2 2 0 0 1 2-2c1.097 0 2 .903 2 2a2 2 0 0 1-2 2M6 8c-1.097 0-2-.903-2-2a2 2 0 0 1 2-2c1.097 0 2 .903 2 2a2 2 0 0 1-2 2m3.64-.36c.23-.5.36-1.05.36-1.64 0-2.194-1.806-4-4-4S2 3.806 2 6s1.806 4 4 4c.59 0 1.14-.13 1.64-.36L10 12l-2.36 2.36C7.14 14.13 6.59 14 6 14c-2.194 0-4 1.806-4 4s1.806 4 4 4 4-1.806 4-4c0-.59-.13-1.14-.36-1.64L12 14l7 7h3v-1z' style='fill-rule:nonzero' transform='translate(4 4)'/%3E%3C/svg%3E\")}.ag-icon-desc:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Ctitle%3Edesc%3C/title%3E%3Cpath d='m26.667 16-1.88-1.88-7.453 7.44V5.333h-2.667V21.56l-7.44-7.453L5.334 16l10.667 10.667L26.668 16z'/%3E%3C/svg%3E\")}.ag-icon-adesc:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' viewBox='0 0 16 16'%3E%3Cpath fill='%23000' d='M10.387 11.47a.75.75 0 0 1 1.06 1.06l-3 3-.113.093a.75.75 0 0 1-.919-.065l-3.333-3a.75.75 0 0 1 1.003-1.116l2.806 2.525zM13.201 3.08q.65 0 1.135.222.487.223.759.619.27.396.279.918H14.19a.72.72 0 0 0-.293-.536q-.26-.192-.705-.192-.302.001-.51.086a.7.7 0 0 0-.32.23.56.56 0 0 0-.108.338.5.5 0 0 0 .065.273.7.7 0 0 0 .204.203q.127.083.295.146.168.06.36.102l.525.125a3.7 3.7 0 0 1 .701.229q.32.143.554.35.234.21.362.492.131.282.134.647a1.6 1.6 0 0 1-.273.93 1.74 1.74 0 0 1-.777.607q-.504.214-1.217.214-.708 0-1.232-.217a1.8 1.8 0 0 1-.816-.641q-.29-.429-.305-1.059h1.194q.02.294.17.49.15.195.402.294.253.098.573.098.313 0 .544-.092a.84.84 0 0 0 .362-.254.6.6 0 0 0 .129-.373.5.5 0 0 0-.117-.33.9.9 0 0 0-.337-.23 3.4 3.4 0 0 0-.54-.17l-.635-.16q-.738-.18-1.166-.562t-.426-1.03a1.53 1.53 0 0 1 .284-.926q.287-.396.79-.62a2.8 2.8 0 0 1 1.14-.222'/%3E%3Cpath fill='%23000' fill-rule='evenodd' d='M5.813 9H4.489l-.432-1.332H1.948L1.515 9H.19l2.017-5.84h1.592zM2.262 6.704h1.481l-.718-2.21H2.98zM8.452 3.16q.645 0 1.075.19.43.192.648.53a1.4 1.4 0 0 1 .217.776q0 .342-.137.602a1.2 1.2 0 0 1-.376.423 1.6 1.6 0 0 1-.542.23v.058q.333.014.624.187.294.175.476.489.183.31.183.74 0 .465-.231.83a1.56 1.56 0 0 1-.676.574Q9.265 9 8.609 9H6.114V3.16zM7.35 7.99h1.006q.517 0 .753-.196a.66.66 0 0 0 .237-.531.8.8 0 0 0-.116-.428.8.8 0 0 0-.334-.291 1.15 1.15 0 0 0-.511-.106H7.349zm0-2.386h.916q.254 0 .45-.09a.75.75 0 0 0 .313-.256.67.67 0 0 0 .118-.397.64.64 0 0 0-.226-.51q-.223-.194-.633-.194H7.35z' clip-rule='evenodd'/%3E%3C/svg%3E\")}.ag-icon-down:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Ctitle%3Edesc%3C/title%3E%3Cpath d='m26.667 16-1.88-1.88-7.453 7.44V5.333h-2.667V21.56l-7.44-7.453L5.334 16l10.667 10.667L26.668 16z'/%3E%3C/svg%3E\")}.ag-icon-excel:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' xml:space='preserve' style='fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2' viewBox='0 0 32 32'%3E%3Cpath d='M384 131.9c-7.753-8.433-110.425-128.473-114.9-133L48-.1C21.5 0 0 21.5 0 48v416c0 26.5 21.5 48 48 48h288c26.5 0 48-21.5 48-48zm-35.9 2.1H257V27.9zM30 479V27h200l1 105c0 13.3-1.3 29 12 29h111l1 318z' style='fill-rule:nonzero' transform='translate(3.934 -.054)scale(.06285)'/%3E%3Cpath d='m.052-.139.16-.234-.135-.208a.4.4 0 0 1-.028-.052.1.1 0 0 1-.01-.042.05.05 0 0 1 .018-.037.07.07 0 0 1 .045-.016q.03 0 .047.018a1 1 0 0 1 .047.066l.107.174.115-.174.024-.038.019-.026.021-.015a.1.1 0 0 1 .027-.005.06.06 0 0 1 .044.016.05.05 0 0 1 .018.039q0 .033-.038.089l-.141.211.152.234a.3.3 0 0 1 .03.051.1.1 0 0 1 .009.038.1.1 0 0 1-.008.031.1.1 0 0 1-.024.023.1.1 0 0 1-.034.008.1.1 0 0 1-.035-.008.1.1 0 0 1-.023-.022L.427-.067.301-.265l-.134.204-.022.034-.016.019a.1.1 0 0 1-.022.015.1.1 0 0 1-.03.005.06.06 0 0 1-.044-.016.06.06 0 0 1-.017-.047q0-.036.036-.088' style='fill-rule:nonzero' transform='matrix(17.82892 0 0 16.50777 10.371 25.928)'/%3E%3C/svg%3E\")}.ag-icon-expanded:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Ctitle%3Eexpanded%3C/title%3E%3Cpath d='M20.94 9.88 19.06 8l-8 8 8 8 1.88-1.88L14.833 16z'/%3E%3C/svg%3E\")}.ag-icon-eye-slash:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Ctitle%3Eeye-slash%3C/title%3E%3Cpath d='M21.106 15.088A5.19 5.19 0 0 0 16 10.814a5.17 5.17 0 0 0-3.668 1.522L9.866 9.868a12.2 12.2 0 0 1 6.133-1.646c5.186 0 9.614 3.225 11.408 7.778a12.34 12.34 0 0 1-5.276 6.133l-2.468-2.466a5.17 5.17 0 0 0 1.449-2.802h-2.123c-.148.508-.42.964-.782 1.33l-1.33-1.33h-2.514l2.196 2.196q-.272.049-.56.05a3.11 3.11 0 0 1-2.99-2.245h-2.123a5.19 5.19 0 0 0 7.3 3.836l2.247 2.247a12.2 12.2 0 0 1-4.434.828c-5.186 0-9.614-3.225-11.408-7.778a12.3 12.3 0 0 1 3.781-5.111l2.924 2.924a5.1 5.1 0 0 0-.404 1.275h4.206l-1.296-1.296a3.1 3.1 0 0 1 2.196-.903c1.404 0 2.587.924 2.976 2.199h2.13z'/%3E%3C/svg%3E\")}.ag-icon-eye:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Ctitle%3Eeye%3C/title%3E%3Cpath d='M16 8.222c-5.186 0-9.614 3.225-11.408 7.778 1.794 4.553 6.222 7.778 11.408 7.778S25.614 20.553 27.408 16C25.614 11.447 21.186 8.222 16 8.222m0 12.964c-2.862 0-5.186-2.324-5.186-5.186s2.324-5.186 5.186-5.186 5.186 2.324 5.186 5.186-2.324 5.186-5.186 5.186m0-8.297c-1.721 0-3.111 1.39-3.111 3.111s1.39 3.111 3.111 3.111 3.111-1.39 3.111-3.111-1.39-3.111-3.111-3.111'/%3E%3C/svg%3E\")}.ag-icon-filter:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Ctitle%3Efilter%3C/title%3E%3Cpath d='M13.333 24h5.333v-2.667h-5.333zM4 8v2.667h24V8zm4 9.333h16v-2.667H8z'/%3E%3C/svg%3E\")}.ag-icon-first:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Ctitle%3Efirst%3C/title%3E%3Cpath d='M24.273 22.12 18.153 16l6.12-6.12L22.393 8l-8 8 8 8zM7.727 8h2.667v16H7.727z'/%3E%3C/svg%3E\")}.ag-icon-group:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Ctitle%3Egroup%3C/title%3E%3Cpath d='M18.667 21.333h8.889A3.555 3.555 0 0 1 24 24.889h-5.333zm8.888-7.111v3.556h-8.889v-3.556zM24 7.111a3.555 3.555 0 0 1 3.556 3.556h-16V7.111zm-8.889 17.778h-3.556v-3.556h3.556zm0-7.111h-3.556v-3.556h3.556zM8 10.667H4.444A3.555 3.555 0 0 1 8 7.111z'/%3E%3C/svg%3E\")}.ag-icon-last:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Ctitle%3Elast%3C/title%3E%3Cpath d='m7.727 9.88 6.12 6.12-6.12 6.12L9.607 24l8-8-8-8zM21.607 8h2.667v16h-2.667z'/%3E%3C/svg%3E\")}.ag-icon-left:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Ctitle%3Eleft%3C/title%3E%3Cpath d='M26.667 14.667H10.44l7.453-7.453L16 5.334 5.333 16.001 16 26.668l1.88-1.88-7.44-7.453h16.227v-2.667z'/%3E%3C/svg%3E\")}.ag-icon-linked:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Ctitle%3Elinked%3C/title%3E%3Cpath d='M5.2 16a4.136 4.136 0 0 1 4.133-4.133h5.333V9.334H9.333c-3.68 0-6.667 2.987-6.667 6.667s2.987 6.667 6.667 6.667h5.333v-2.533H9.333A4.136 4.136 0 0 1 5.2 16.002zm5.467 1.333h10.667v-2.667H10.667zm12-8h-5.333v2.533h5.333c2.28 0 4.133 1.853 4.133 4.133s-1.853 4.133-4.133 4.133h-5.333v2.533h5.333c3.68 0 6.667-2.987 6.667-6.667s-2.987-6.667-6.667-6.667z'/%3E%3C/svg%3E\")}.ag-icon-loading:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Ctitle%3Eloading%3C/title%3E%3Cpath d='m17.778 11.708 3.25-3.251 2.516 2.516-3.251 3.25h4.597v3.556h-4.597l3.251 3.25-2.516 2.516-3.25-3.251v4.597h-3.556v-4.597l-3.25 3.251-2.516-2.516 3.251-3.25H7.11v-3.556h4.597l-3.251-3.25 2.516-2.516 3.25 3.251V7.111h3.556zm-3.251 7.847h2.944l2.084-2.084v-2.944l-2.084-2.084h-2.944l-2.084 2.084v2.944z'/%3E%3C/svg%3E\")}.ag-icon-maximize:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Ctitle%3Emaximize%3C/title%3E%3Cpath d='M4 4h24v2.667H4z'/%3E%3C/svg%3E\")}.ag-icon-menu:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Ctitle%3Emenu%3C/title%3E%3Cpath d='M4 24h24v-2.667H4zm0-6.667h24v-2.667H4zM4 8v2.667h24V8z'/%3E%3C/svg%3E\")}.ag-icon-menu-alt:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='32' height='32' fill='none' viewBox='0 0 32 32'%3E%3Cpath fill='%23000' d='M16 26.667a2.57 2.57 0 0 1-1.883-.784A2.57 2.57 0 0 1 13.333 24q0-1.1.784-1.883A2.57 2.57 0 0 1 16 21.333q1.1 0 1.883.784.784.783.784 1.883t-.784 1.883a2.57 2.57 0 0 1-1.883.784m0-8a2.57 2.57 0 0 1-1.883-.784A2.57 2.57 0 0 1 13.333 16q0-1.1.784-1.883A2.57 2.57 0 0 1 16 13.333q1.1 0 1.883.784.784.783.784 1.883t-.784 1.883a2.57 2.57 0 0 1-1.883.784m0-8a2.57 2.57 0 0 1-1.883-.784A2.57 2.57 0 0 1 13.333 8q0-1.1.784-1.883A2.57 2.57 0 0 1 16 5.333q1.1 0 1.883.784.784.783.784 1.883t-.784 1.883a2.57 2.57 0 0 1-1.883.784'/%3E%3C/svg%3E\")}.ag-icon-minimize:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Ctitle%3Eminimize%3C/title%3E%3Cpath d='M8 25.333h16V28H8z'/%3E%3C/svg%3E\")}.ag-icon-minus:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' xml:space='preserve' style='fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2' viewBox='0 0 32 32'%3E%3Cpath d='M6.572 6.572a13.32 13.32 0 0 0 0 18.856 13.32 13.32 0 0 0 18.856 0 13.32 13.32 0 0 0 0-18.856 13.32 13.32 0 0 0-18.856 0m17.527 8.099v2.658H7.901v-2.658z' style='fill-rule:nonzero'/%3E%3C/svg%3E\")}.ag-icon-next:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Ctitle%3Enext%3C/title%3E%3Cpath d='m12.94 8-1.88 1.88L17.167 16l-6.107 6.12L12.94 24l8-8z'/%3E%3C/svg%3E\")}.ag-icon-none:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Ctitle%3Enone%3C/title%3E%3Cpath d='M4 24h16v-2.667H4zM4 8v2.667h24V8zm0 9.333h24v-2.667H4z'/%3E%3C/svg%3E\")}.ag-icon-not-allowed:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Ctitle%3Enot-allowed%3C/title%3E%3Cpath d='M16 2.667C8.64 2.667 2.667 8.64 2.667 16S8.64 29.333 16 29.333 29.333 23.36 29.333 16 23.36 2.667 16 2.667M5.333 16c0-5.893 4.773-10.667 10.667-10.667 2.467 0 4.733.84 6.533 2.253L7.586 22.533A10.54 10.54 0 0 1 5.333 16M16 26.667c-2.467 0-4.733-.84-6.533-2.253L24.414 9.467A10.54 10.54 0 0 1 26.667 16c0 5.893-4.773 10.667-10.667 10.667'/%3E%3C/svg%3E\")}.ag-icon-paste:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Ctitle%3Epaste%3C/title%3E%3Cpath d='M25.333 4H19.76C19.2 2.453 17.733 1.333 16 1.333S12.8 2.453 12.24 4H6.667A2.675 2.675 0 0 0 4 6.667V28c0 1.467 1.2 2.667 2.667 2.667h18.667c1.467 0 2.667-1.2 2.667-2.667V6.667C28.001 5.2 26.801 4 25.334 4zM16 4c.733 0 1.333.6 1.333 1.333s-.6 1.333-1.333 1.333-1.333-.6-1.333-1.333S15.267 4 16 4m9.333 24H6.666V6.667h2.667v4h13.333v-4h2.667z'/%3E%3C/svg%3E\")}.ag-icon-pin:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Ctitle%3Epin%3C/title%3E%3Cpath d='m11.106 22.093-4.444 4.444-1.259-1.259 4.444-4.444zm5.872-16.63 9.618 9.62-.962.962-.962-.962-7.694 3.847 1.924 1.924-2.74 2.74-7.696-7.696 2.741-2.74 1.924 1.925 3.847-7.696-.962-.962z'/%3E%3C/svg%3E\")}.ag-icon-pivot:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Ctitle%3Epivot%3C/title%3E%3Cpath d='M26.667 30.223H5.334a3.556 3.556 0 0 1-3.556-3.556V5.334a3.556 3.556 0 0 1 3.556-3.556h21.333a3.556 3.556 0 0 1 3.556 3.556v21.333a3.556 3.556 0 0 1-3.556 3.556m-16-8.89H5.334v5.333h5.333zm16-7.11H12.444v12.444h14.223zm-9.15 6.85-2.039 2.037 2.039 2.039-1.257 1.257-3.295-3.296 3.295-3.295q.63.628 1.257 1.257zm-6.85-6.85H5.334v5.333h5.333zm15.74 3.816-1.257 1.256-2.039-2.037-2.037 2.037-1.257-1.256 3.295-3.296zM10.667 5.333H5.334v5.333h5.333zm8.889 0h-7.112v5.333h7.112zm7.111 0h-5.333v5.333h5.333z'/%3E%3C/svg%3E\")}.ag-icon-plus:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' xml:space='preserve' style='fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2' viewBox='0 0 32 32'%3E%3Cpath d='M6.572 6.572a13.32 13.32 0 0 0 0 18.856 13.32 13.32 0 0 0 18.856 0 13.32 13.32 0 0 0 0-18.856 13.32 13.32 0 0 0-18.856 0m17.527 8.099v2.658h-6.77v6.77h-2.658v-6.77h-6.77v-2.658h6.77v-6.77h2.658v6.77z' style='fill-rule:nonzero'/%3E%3C/svg%3E\")}.ag-icon-previous:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Ctitle%3Eprevious%3C/title%3E%3Cpath d='M20.94 9.88 19.06 8l-8 8 8 8 1.88-1.88L14.833 16z'/%3E%3C/svg%3E\")}.ag-icon-right:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Ctitle%3Eright%3C/title%3E%3Cpath d='m16 5.333-1.88 1.88 7.44 7.453H5.333v2.667H21.56l-7.44 7.453 1.88 1.88 10.667-10.667L16 5.332z'/%3E%3C/svg%3E\")}.ag-icon-save:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Ctitle%3Esave%3C/title%3E%3Cpath d='M25.333 16v9.333H6.666V16H3.999v9.333C3.999 26.8 5.199 28 6.666 28h18.667C26.8 28 28 26.8 28 25.333V16zm-8 .893 3.453-3.44 1.88 1.88L15.999 22l-6.667-6.667 1.88-1.88 3.453 3.44V4h2.667v12.893z'/%3E%3C/svg%3E\")}.ag-icon-small-down:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Ctitle%3Esmall-down%3C/title%3E%3Cpath d='M9.333 12.667 16 19.334l6.667-6.667H9.334z'/%3E%3C/svg%3E\")}.ag-icon-small-left:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Ctitle%3Esmall-left%3C/title%3E%3Cpath d='M19.333 9.333 12.666 16l6.667 6.667V9.334z'/%3E%3C/svg%3E\")}.ag-icon-small-right:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Ctitle%3Esmall-right%3C/title%3E%3Cpath d='M12.667 22.667 19.334 16l-6.667-6.667v13.333z'/%3E%3C/svg%3E\")}.ag-icon-small-up:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Ctitle%3Esmall-up%3C/title%3E%3Cpath d='M9.333 19.333 16 12.666l6.667 6.667H9.334z'/%3E%3C/svg%3E\")}.ag-icon-tick:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Ctitle%3Etick%3C/title%3E%3Cpath d='m11.727 21.167-5.56-5.56-1.893 1.88 7.453 7.453 16-16-1.88-1.88z'/%3E%3C/svg%3E\")}.ag-icon-tree-closed:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Ctitle%3Etree-closed%3C/title%3E%3Cpath d='m12.94 8-1.88 1.88L17.167 16l-6.107 6.12L12.94 24l8-8z'/%3E%3C/svg%3E\")}.ag-icon-tree-indeterminate:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Ctitle%3Etree-indeterminate%3C/title%3E%3Cpath d='M6.667 14.667h18.667v2.667H6.667z'/%3E%3C/svg%3E\")}.ag-icon-tree-open:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Ctitle%3Etree-open%3C/title%3E%3Cpath d='M22.12 11.06 16 17.167 9.88 11.06 8 12.94l8 8 8-8z'/%3E%3C/svg%3E\")}.ag-icon-unlinked:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Ctitle%3Eunlinked%3C/title%3E%3Cpath d='M22.667 9.333h-5.333v2.533h5.333a4.136 4.136 0 0 1 4.133 4.133c0 1.907-1.307 3.507-3.08 3.973l1.947 1.947c2.173-1.107 3.667-3.32 3.667-5.92a6.67 6.67 0 0 0-6.667-6.667zm-1.334 5.334h-2.92l2.667 2.667h.253zM2.667 5.693 6.814 9.84A6.65 6.65 0 0 0 2.667 16a6.67 6.67 0 0 0 6.667 6.667h5.333v-2.533H9.334a4.136 4.136 0 0 1-4.133-4.133c0-2.12 1.613-3.867 3.68-4.093l2.76 2.76h-.973v2.667h3.64l3.027 3.027v2.307h2.307l5.347 5.333 1.68-1.68L4.362 4.002 2.669 5.695z'/%3E%3C/svg%3E\")}.ag-icon-up:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Ctitle%3Easc%3C/title%3E%3Cpath d='m5.333 16 1.88 1.88 7.453-7.44v16.227h2.667V10.44l7.44 7.453L26.666 16 15.999 5.333z'/%3E%3C/svg%3E\")}.ag-icon-grip:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Ctitle%3Egrip%3C/title%3E%3Cpath d='M26.667 12H5.334v2.667h21.333zM5.333 20h21.333v-2.667H5.333z'/%3E%3C/svg%3E\")}.ag-icon-settings:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='32' height='32' fill='none' viewBox='0 0 32 32'%3E%3Cpath fill='%23000' d='M30 8h-4.1c-.5-2.3-2.5-4-4.9-4s-4.4 1.7-4.9 4H2v2h14.1c.5 2.3 2.5 4 4.9 4s4.4-1.7 4.9-4H30zm-9 4c-1.7 0-3-1.3-3-3s1.3-3 3-3 3 1.3 3 3-1.3 3-3 3M2 24h4.1c.5 2.3 2.5 4 4.9 4s4.4-1.7 4.9-4H30v-2H15.9c-.5-2.3-2.5-4-4.9-4s-4.4 1.7-4.9 4H2zm9-4c1.7 0 3 1.3 3 3s-1.3 3-3 3-3-1.3-3-3 1.3-3 3-3'/%3E%3C/svg%3E\")}.ag-icon-column-arrow:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 32 32'%3E%3Cpath fill='currentColor' fill-rule='evenodd' d='M11 4a1 1 0 0 1 1 1v22a1 1 0 1 1-2 0V5a1 1 0 0 1 1-1' clip-rule='evenodd'/%3E%3Cpath fill='currentColor' fill-rule='evenodd' d='M2 13a1 1 0 0 1 1-1h23.5a1 1 0 1 1 0 2H3a1 1 0 0 1-1-1' clip-rule='evenodd'/%3E%3Cpath fill='currentColor' fill-rule='evenodd' d='M2 4h18v24H2zm2 2v20h14V6zM26.793 13 23 9.207l1.414-1.414L29.621 13l-5.207 5.207L23 16.793z' clip-rule='evenodd'/%3E%3C/svg%3E\")}.ag-icon-un-pin:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' viewBox='0 0 16 16'%3E%3Cpath fill='currentColor' d='M8 11a.75.75 0 0 0-.75.75v3.333a.75.75 0 1 0 1.5 0V11.75A.75.75 0 0 0 8 11'/%3E%3Cpath fill='currentColor' d='M13.11 1.436a.75.75 0 0 0-1.22-.872l-10 14a.75.75 0 1 0 1.22.872L5.207 12.5h7.376a.75.75 0 0 0 .75-.75v-1.174a2.08 2.08 0 0 0-1.153-1.863l-1.185-.599-.005-.002a.58.58 0 0 1-.323-.522V5.165a2.083 2.083 0 0 0 1.854-2.904zm-3.943 5.52v.634a2.08 2.08 0 0 0 1.153 1.863l1.185.6.005.002a.58.58 0 0 1 .323.522V11H6.28zM9.277 1H5.25a2.084 2.084 0 0 0-.083 4.165v1.676l1.5-2.132v-.292a.75.75 0 0 0-.75-.75H5.25a.584.584 0 0 1 0-1.167h2.972z'/%3E%3C/svg%3E\")}.ag-icon-pinned-top:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' viewBox='0 0 16 16'%3E%3Cpath fill='currentColor' d='M12.53 3.72A.75.75 0 0 1 12 5H4a.75.75 0 0 1 0-1.5h8a.75.75 0 0 1 .53.22M3.269 10.744a.75.75 0 0 1 .2-.524l4-4a.75.75 0 0 1 1.06 0l4 4a.75.75 0 1 1-1.06 1.06L8.75 8.56V14a.75.75 0 0 1-1.5 0V8.56l-2.72 2.72a.75.75 0 0 1-1.26-.536'/%3E%3C/svg%3E\")}.ag-icon-pinned-bottom:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' viewBox='0 0 16 16'%3E%3Cpath fill='currentColor' d='M3.47 12.28A.75.75 0 0 1 4 11h8a.75.75 0 0 1 0 1.5H4a.75.75 0 0 1-.53-.22M12.731 5.256a.75.75 0 0 1-.2.524l-4 4a.75.75 0 0 1-1.06 0l-4-4a.75.75 0 1 1 1.06-1.06l2.72 2.72V2a.75.75 0 0 1 1.5 0v5.44l2.72-2.72a.75.75 0 0 1 1.26.536'/%3E%3C/svg%3E\")}.ag-icon-chevron-up:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' viewBox='0 0 16 16'%3E%3Cpath fill='currentColor' fill-rule='evenodd' d='M3.479 10.521a.75.75 0 0 1 0-1.06l4-4a.75.75 0 0 1 1.06 0l4 4a.75.75 0 0 1-1.06 1.06l-3.47-3.47-3.47 3.47a.75.75 0 0 1-1.06 0' clip-rule='evenodd'/%3E%3C/svg%3E\")}.ag-icon-chevron-down:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' viewBox='0 0 16 16'%3E%3Cpath fill='currentColor' fill-rule='evenodd' d='M12.521 5.461a.75.75 0 0 1 0 1.06l-4 4a.75.75 0 0 1-1.06 0l-4-4a.75.75 0 0 1 1.06-1.06l3.47 3.47 3.47-3.47a.75.75 0 0 1 1.06 0' clip-rule='evenodd'/%3E%3C/svg%3E\")}.ag-icon-chevron-left:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' viewBox='0 0 16 16'%3E%3Cpath fill='currentColor' fill-rule='evenodd' d='M10.53 12.512a.75.75 0 0 1-1.06 0l-4-4a.75.75 0 0 1 0-1.06l4-4a.75.75 0 0 1 1.06 1.06l-3.47 3.47 3.47 3.47a.75.75 0 0 1 0 1.06' clip-rule='evenodd'/%3E%3C/svg%3E\")}.ag-icon-chevron-right:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' viewBox='0 0 16 16'%3E%3Cpath fill='currentColor' fill-rule='evenodd' d='M5.47 3.47a.75.75 0 0 1 1.06 0l4 4a.75.75 0 0 1 0 1.06l-4 4a.75.75 0 0 1-1.06-1.06L8.94 8 5.47 4.53a.75.75 0 0 1 0-1.06' clip-rule='evenodd'/%3E%3C/svg%3E\")}.ag-icon-filter-add:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='32' height='32' fill='none' viewBox='0 0 32 32'%3E%3Cpath fill='currentColor' d='M18.666 24h-5.333v-2.667h5.333zM24 17.333H8v-2.667h16zm3.59-9.344h3.221v2.657h-3.22v3.22h-2.656v-3.22h-3.221V7.989h3.22V4.77h2.657zm-8.582 2.678H4V8h15.008z'/%3E%3C/svg%3E\")}.ag-icon-edit:before{mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='32' height='32' fill='none' viewBox='0 0 32 32'%3E%3Cpath fill='currentColor' d='M6.222 25.778h1.611l14.834-14.811-1.611-1.611-14.834 14.81zM4 28v-4.733L22.644 4.656a2.26 2.26 0 0 1 1.567-.634q.423 0 .833.167.412.166.734.478l1.589 1.6q.333.322.483.733t.15.822q0 .423-.161.839-.162.416-.472.728L8.733 28zm17.856-17.833-.8-.811 1.61 1.61z'/%3E%3C/svg%3E\")}"}),Hh=e=>{const t=[];if("image"===e.type){const{icons:i,mask:s}=e;for(const e of Object.keys(i)){const o=Yu(i[e]);s?t.push(`.ag-icon-${e}::before { mask-image: ${o}; }`):t.push(`.ag-icon-${e}::before { background-image: ${o}; ${zh} }`)}}if("font"===e.type){const{family:i,weight:s,color:o,icons:r}=e;let n=zh;i&&(n+=` font-family: ${Ku(i)};`),s&&(n+=` font-weight: ${qu(s)};`),o&&(n+=` color: ${Hu(o)};`);for(const e of Object.keys(r))t.push(`.ag-icon-${e}::before { content: ${JSON.stringify(r[e])}; ${n} }`)}return Fu({css:t.join(";\n"),cssImports:e.cssImports})},zh="background-color: unset; mask-image: unset; -webkit-mask-image: unset;",Wh={aggregation:'',arrows:'',asc:'',cancel:'',chart:'',"color-picker":'',columns:'',contracted:'',copy:'',cross:'',csv:'',cut:'',desc:'',down:'',excel:'',expanded:'',eye:'',"eye-slash":'',filter:'',first:'',grip:'',group:'',last:'',left:'',linked:'',loading:'',maximize:'',menu:'',"menu-alt":'',minimize:'',minus:'',next:'',none:'',"not-allowed":'',paste:'',pin:'',pivot:'',plus:'',previous:'',right:'',save:'',settings:'',"small-left":'',"small-right":'',tick:'',"tree-closed":'',"tree-indeterminate":'',"tree-open":'',unlinked:'',up:''},Uh={aasc:'',adesc:'',"chevron-down":'',"chevron-left":'',"chevron-right":'',"chevron-up":'',"column-arrow":'',edit:'',"filter-add":'',"pinned-bottom":'',"pinned-top":'',"small-down":'',"small-up":'',"un-pin":''},jh=(e,t=1.5)=>{const i=Uh[e];if(i)return i;const s=Wh[e];if(!s)throw new Error(`Missing icon data for ${e}`);return``+s+""},Kh=(e={})=>Fu({feature:"iconSet",css:()=>((e={})=>{let t="";for(const i of[...Object.keys(Wh),...Object.keys(Uh)]){const s=jh(i,e.strokeWidth);t+=`.ag-icon-${i}::before { mask-image: url('data:image/svg+xml,${encodeURIComponent(s)}'); }\n`}return t})(e)}),$h=Kh({strokeWidth:1}),qh=Kh(),Yh=Kh({strokeWidth:2}),Xh=':where(.ag-input-field-input[type=number]:not(.ag-number-field-input-stepper)){-webkit-appearance:textfield;-moz-appearance:textfield;appearance:textfield;&::-webkit-inner-spin-button,&::-webkit-outer-spin-button{-webkit-appearance:none;appearance:none;margin:0}}.ag-input-field-input:where(input:not([type]),input[type=text],input[type=number],input[type=tel],input[type=date],input[type=datetime-local],textarea){background-color:var(--ag-input-background-color);border:var(--ag-input-border);border-radius:var(--ag-input-border-radius);color:var(--ag-input-text-color);font-family:inherit;font-size:inherit;line-height:inherit;margin:0;min-height:var(--ag-input-height);padding:0;&:where(:disabled){background-color:var(--ag-input-disabled-background-color);border:var(--ag-input-disabled-border);color:var(--ag-input-disabled-text-color)}&:where(:focus){background-color:var(--ag-input-focus-background-color);border:var(--ag-input-focus-border);box-shadow:var(--ag-input-focus-shadow);color:var(--ag-input-focus-text-color);outline:none}&:where(:invalid){background-color:var(--ag-input-invalid-background-color);border:var(--ag-input-invalid-border);color:var(--ag-input-invalid-text-color)}&:where(.invalid){background-color:var(--ag-input-invalid-background-color);border:var(--ag-input-invalid-border);color:var(--ag-input-invalid-text-color)}&::-moz-placeholder{color:var(--ag-input-placeholder-text-color)}&::placeholder{color:var(--ag-input-placeholder-text-color)}}:where(.ag-ltr) .ag-input-field-input:where(input:not([type]),input[type=text],input[type=number],input[type=tel],input[type=date],input[type=datetime-local],textarea){padding-left:var(--ag-input-padding-start)}:where(.ag-rtl) .ag-input-field-input:where(input:not([type]),input[type=text],input[type=number],input[type=tel],input[type=date],input[type=datetime-local],textarea){padding-right:var(--ag-input-padding-start)}&:where(.ag-ltr,.ag-rtl) .ag-input-field-input:where(input:not([type]),input[type=text],input[type=number],input[type=tel],input[type=date],input[type=datetime-local],textarea){padding:0 var(--ag-input-padding-start)}:where(.ag-column-select-header-filter-wrapper),:where(.ag-filter-add-select),:where(.ag-filter-filter),:where(.ag-filter-toolpanel-search),:where(.ag-floating-filter-search-icon),:where(.ag-mini-filter){.ag-input-wrapper:before{background-color:currentcolor;color:var(--ag-input-icon-color);content:"";display:block;height:12px;-webkit-mask-image:url("data:image/svg+xml;charset=utf-8;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMiIgaGVpZ2h0PSIxMiIgZmlsbD0ibm9uZSIgc3Ryb2tlPSIjMDAwIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiIHN0cm9rZS13aWR0aD0iMS41Ij48cGF0aCBkPSJNNS4zIDlhMy43IDMuNyAwIDEgMCAwLTcuNSAzLjcgMy43IDAgMCAwIDAgNy41Wk0xMC41IDEwLjUgOC4zIDguMiIvPjwvc3ZnPg==");mask-image:url("data:image/svg+xml;charset=utf-8;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMiIgaGVpZ2h0PSIxMiIgZmlsbD0ibm9uZSIgc3Ryb2tlPSIjMDAwIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiIHN0cm9rZS13aWR0aD0iMS41Ij48cGF0aCBkPSJNNS4zIDlhMy43IDMuNyAwIDEgMCAwLTcuNSAzLjcgMy43IDAgMCAwIDAgNy41Wk0xMC41IDEwLjUgOC4zIDguMiIvPjwvc3ZnPg==");-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;opacity:.5;position:absolute;width:12px}}:where(.ag-ltr) :where(.ag-column-select-header-filter-wrapper),:where(.ag-ltr) :where(.ag-filter-add-select),:where(.ag-ltr) :where(.ag-filter-filter),:where(.ag-ltr) :where(.ag-filter-toolpanel-search),:where(.ag-ltr) :where(.ag-floating-filter-search-icon),:where(.ag-ltr) :where(.ag-mini-filter){.ag-input-wrapper:before{margin-left:var(--ag-spacing)}.ag-number-field-input,.ag-text-field-input{padding-left:calc(var(--ag-spacing)*1.5 + 12px)}}:where(.ag-rtl) :where(.ag-column-select-header-filter-wrapper),:where(.ag-rtl) :where(.ag-filter-add-select),:where(.ag-rtl) :where(.ag-filter-filter),:where(.ag-rtl) :where(.ag-filter-toolpanel-search),:where(.ag-rtl) :where(.ag-floating-filter-search-icon),:where(.ag-rtl) :where(.ag-mini-filter){.ag-input-wrapper:before{margin-right:var(--ag-spacing)}.ag-number-field-input,.ag-text-field-input{padding-right:calc(var(--ag-spacing)*1.5 + 12px)}}',Zh={inputBackgroundColor:"transparent",inputBorder:!1,inputBorderRadius:0,inputTextColor:{ref:"textColor"},inputPlaceholderTextColor:{ref:"inputTextColor",mix:.5},inputPaddingStart:0,inputHeight:{calc:"max(iconSize, fontSize) + spacing * 2"},inputFocusBackgroundColor:{ref:"inputBackgroundColor"},inputFocusBorder:{ref:"inputBorder"},inputFocusShadow:"none",inputFocusTextColor:{ref:"inputTextColor"},inputDisabledBackgroundColor:{ref:"inputBackgroundColor"},inputDisabledBorder:{ref:"inputBorder"},inputDisabledTextColor:{ref:"inputTextColor"},inputInvalidBackgroundColor:{ref:"inputBackgroundColor"},inputInvalidBorder:{ref:"inputBorder"},inputInvalidTextColor:{ref:"inputTextColor"},inputIconColor:{ref:"inputTextColor"},pickerButtonBorder:!1,pickerButtonFocusBorder:{ref:"inputFocusBorder"},pickerButtonBackgroundColor:{ref:"backgroundColor"},pickerButtonFocusBackgroundColor:{ref:"backgroundColor"},pickerListBorder:!1,pickerListBackgroundColor:{ref:"backgroundColor"},colorPickerThumbSize:18,colorPickerTrackSize:12,colorPickerThumbBorderWidth:3,colorPickerTrackBorderRadius:12,colorPickerColorBorderRadius:4},Qh=(()=>Fu({feature:"inputStyle",params:Zh,css:Xh}))(),Jh=(()=>Fu({feature:"inputStyle",params:{...Zh,inputBackgroundColor:ku,inputBorder:!0,inputBorderRadius:{ref:"borderRadius"},inputPaddingStart:{ref:"spacing"},inputFocusBorder:{color:Ou},inputFocusShadow:{ref:"focusShadow"},inputDisabledBackgroundColor:Iu(.06),inputDisabledTextColor:{ref:"textColor",mix:.5},inputInvalidBorder:{color:{ref:"invalidColor"}},pickerButtonBorder:!0,pickerListBorder:!0},css:()=>Xh+".ag-input-field-input:where(input:not([type]),input[type=text],input[type=number],input[type=tel],input[type=date],input[type=datetime-local],textarea){&:focus{box-shadow:var(--ag-focus-shadow);&:where(.invalid),&:where(:invalid){box-shadow:var(--ag-focus-error-shadow)}}}"}))(),eg=(()=>Fu({feature:"inputStyle",params:{...Zh,inputBackgroundColor:"transparent",inputBorder:{width:2,color:Du(.3)},inputPaddingStart:{ref:"spacing"},inputFocusBorder:"solid 2px var(--ag-accent-color)",inputDisabledTextColor:{ref:"textColor",mix:.5},inputDisabledBorder:"solid 1px var(--ag-border-color)",inputInvalidBorder:{width:2,color:{ref:"invalidColor",mix:.3}}},css:()=>Xh+".ag-input-field-input:where(input:not([type]),input[type=text],input[type=number],input[type=tel],input[type=date],input[type=datetime-local],textarea){border-left:none;border-right:none;border-top:none}"}))(),tg='.ag-tabs-header{background-color:var(--ag-tab-bar-background-color);border-bottom:var(--ag-tab-bar-border);display:flex;flex:1;gap:var(--ag-tab-spacing);padding:var(--ag-tab-bar-top-padding) var(--ag-tab-bar-horizontal-padding) 0}.ag-tabs-header-wrapper{display:flex}.ag-tabs-close-button-wrapper{align-items:center;border:0;display:flex;padding:var(--ag-spacing)}:where(.ag-ltr) .ag-tabs-close-button-wrapper{border-right:solid var(--ag-border-width) var(--ag-border-color)}:where(.ag-rtl) .ag-tabs-close-button-wrapper{border-left:solid var(--ag-border-width) var(--ag-border-color)}.ag-tabs-close-button{background-color:unset;border:0;cursor:pointer;padding:0}.ag-tab{align-items:center;background-color:var(--ag-tab-background-color);border-left:var(--ag-tab-selected-border-width) solid transparent;border-right:var(--ag-tab-selected-border-width) solid transparent;color:var(--ag-tab-text-color);cursor:pointer;display:flex;flex:1;justify-content:center;padding:var(--ag-tab-top-padding) var(--ag-tab-horizontal-padding) var(--ag-tab-bottom-padding);position:relative}.ag-tab:hover{background-color:var(--ag-tab-hover-background-color);color:var(--ag-tab-hover-text-color)}.ag-tab.ag-tab-selected{background-color:var(--ag-tab-selected-background-color);color:var(--ag-tab-selected-text-color)}:where(.ag-ltr) .ag-tab.ag-tab-selected:where(:not(:first-of-type)){border-left-color:var(--ag-tab-selected-border-color)}:where(.ag-rtl) .ag-tab.ag-tab-selected:where(:not(:first-of-type)){border-right-color:var(--ag-tab-selected-border-color)}:where(.ag-ltr) .ag-tab.ag-tab-selected:where(:not(:last-of-type)){border-right-color:var(--ag-tab-selected-border-color)}:where(.ag-rtl) .ag-tab.ag-tab-selected:where(:not(:last-of-type)){border-left-color:var(--ag-tab-selected-border-color)}.ag-tab:after{background-color:var(--ag-tab-selected-underline-color);bottom:0;content:"";display:block;height:var(--ag-tab-selected-underline-width);left:0;opacity:0;position:absolute;right:0;transition:opacity var(--ag-tab-selected-underline-transition-duration)}.ag-tab.ag-tab-selected:after{opacity:1}',ig={tabBarBackgroundColor:"transparent",tabBarHorizontalPadding:0,tabBarTopPadding:0,tabBackgroundColor:"transparent",tabTextColor:{ref:"textColor"},tabHorizontalPadding:{ref:"spacing"},tabTopPadding:{ref:"spacing"},tabBottomPadding:{ref:"spacing"},tabSpacing:"0",tabHoverBackgroundColor:{ref:"tabBackgroundColor"},tabHoverTextColor:{ref:"tabTextColor"},tabSelectedBackgroundColor:{ref:"tabBackgroundColor"},tabSelectedTextColor:{ref:"tabTextColor"},tabSelectedBorderWidth:{ref:"borderWidth"},tabSelectedBorderColor:"transparent",tabSelectedUnderlineColor:"transparent",tabSelectedUnderlineWidth:0,tabSelectedUnderlineTransitionDuration:0,tabBarBorder:!1},sg=(()=>Fu({feature:"tabStyle",params:ig,css:tg}))(),og=(()=>Fu({feature:"tabStyle",params:{...ig,tabBarBorder:!0,tabBarBackgroundColor:Du(.05),tabTextColor:{ref:"textColor",mix:.7},tabSelectedTextColor:{ref:"textColor"},tabHoverTextColor:{ref:"textColor"},tabSelectedBorderColor:{ref:"borderColor"},tabSelectedBackgroundColor:ku},css:tg}))(),rg=(()=>Fu({feature:"tabStyle",params:{...ig,tabBarBackgroundColor:{ref:"chromeBackgroundColor"},tabSelectedUnderlineColor:{ref:"primaryColor"},tabSelectedUnderlineWidth:2,tabSelectedUnderlineTransitionDuration:0},css:tg}))(),ng=(()=>Fu({feature:"tabStyle",params:{...ig,tabBarBorder:!0,tabBarBackgroundColor:{ref:"chromeBackgroundColor"},tabHoverTextColor:Ou,tabSelectedTextColor:Ou,tabSelectedUnderlineColor:Ou,tabSelectedUnderlineWidth:2,tabSelectedUnderlineTransitionDuration:"0.3s"},css:tg}))(),ag=(()=>Fu({feature:"tabStyle",params:{...ig,tabBarBackgroundColor:{ref:"chromeBackgroundColor"},tabBarHorizontalPadding:{ref:"spacing"},tabBarTopPadding:{ref:"spacing"},tabBarBorder:!0,tabHorizontalPadding:{calc:"spacing * 2"},tabTopPadding:{ref:"spacing"},tabBottomPadding:{ref:"spacing"},tabSpacing:{ref:"spacing"},tabSelectedBorderColor:{ref:"borderColor"},tabSelectedBackgroundColor:ku},css:()=>tg+".ag-tab{border-left:var(--ag-tab-selected-border-width) solid transparent;border-right:var(--ag-tab-selected-border-width) solid transparent;border-top:var(--ag-tab-selected-border-width) solid transparent;flex:none;&.ag-tab-selected{border-left-color:var(--ag-tab-selected-border-color);border-right-color:var(--ag-tab-selected-border-color);border-top-color:var(--ag-tab-selected-border-color);margin-bottom:-1px;padding-bottom:calc(var(--ag-tab-bottom-padding) + 1px)}}"}))(),lg=()=>({fontFamily:[{googleFont:"IBM Plex Sans"},"-apple-system","BlinkMacSystemFont","Segoe UI","Roboto","Oxygen-Sans","Ubuntu"]}),dg=(()=>Mh().withPart(Eh).withPart(Nh).withPart(qh).withPart(og).withPart(Jh).withPart(Sh).withParams(lg()))(),cg=()=>({accentColor:"#2196f3",selectedRowBackgroundColor:Tu(.3),inputFocusBorder:{color:Tu(.4)},focusShadow:{radius:2,spread:1.6,color:Tu(.4)},iconButtonHoverBackgroundColor:"transparent",iconButtonActiveBackgroundColor:"transparent",checkboxUncheckedBorderColor:Iu(.45),checkboxIndeterminateBackgroundColor:Iu(.45),checkboxIndeterminateBorderColor:Iu(.45),checkboxBorderWidth:2,checkboxBorderRadius:2,fontSize:13,dataFontSize:14,headerFontWeight:700,borderRadius:3,wrapperBorderRadius:3,tabSelectedUnderlineColor:Ou,tabSelectedBorderWidth:0,tabSelectedUnderlineTransitionDuration:.3,sideButtonSelectedUnderlineColor:Ou,sideButtonSelectedUnderlineWidth:2,sideButtonSelectedUnderlineTransitionDuration:.3,sideButtonBorder:!1,sideButtonSelectedBorder:!1,sideButtonBarTopPadding:{calc:"spacing * 3"},sideButtonSelectedBackgroundColor:"transparent",sideButtonHoverTextColor:Ou,iconButtonHoverColor:Ou,toggleButtonWidth:28,toggleButtonHeight:18,toggleButtonSwitchInset:1,toggleButtonOffBackgroundColor:Iu(.45),colorPickerThumbSize:13,colorPickerTrackSize:11,colorPickerThumbBorderWidth:2,colorPickerTrackBorderRadius:2,colorPickerColorBorderRadius:2}),ug=(()=>Mh().withPart(bh).withPart(Eh).withPart(Nh).withPart(Vh).withPart(ng).withPart(Jh).withPart(Sh).withParams(cg()))(),hg=()=>({accentColor:"#0091ea",borderColor:Du(.2),spacing:4,widgetVerticalSpacing:{calc:"max(8px, spacing)"},borderRadius:2,wrapperBorderRadius:2,headerColumnResizeHandleColor:"transparent",headerColumnBorder:!0,headerColumnBorderHeight:"50%",oddRowBackgroundColor:{ref:"chromeBackgroundColor",mix:.5},checkboxBorderRadius:2,checkboxBorderWidth:1,checkboxUncheckedBackgroundColor:ku,checkboxUncheckedBorderColor:Iu(.5),checkboxCheckedBackgroundColor:ku,checkboxCheckedBorderColor:Ou,checkboxCheckedShapeColor:Ou,checkboxIndeterminateBackgroundColor:ku,checkboxIndeterminateBorderColor:Iu(.5),checkboxIndeterminateShapeColor:Iu(.5),focusShadow:{radius:2,spread:1,color:Ou},headerTextColor:Du(.6),iconButtonHoverBackgroundColor:"transparent",iconButtonActiveBackgroundColor:"transparent",fontSize:12,tabSelectedBackgroundColor:ku,headerFontWeight:"bold",toggleButtonWidth:32,toggleButtonHeight:16,toggleButtonSwitchInset:1,toggleButtonOffBackgroundColor:Iu(.5),sideButtonBorder:!0,sideButtonBarTopPadding:{calc:"spacing * 4"},popupShadow:"5px 5px 10px rgba(0, 0, 0, 0.3)",statusBarLabelColor:Du(.54),statusBarLabelFontWeight:600,statusBarValueFontWeight:600,panelTitleBarIconColor:Lu,colorPickerThumbSize:13,colorPickerTrackSize:11,colorPickerThumbBorderWidth:2,colorPickerTrackBorderRadius:2,colorPickerColorBorderRadius:2}),gg=(()=>Mh().withPart(yh).withPart(Eh).withPart(Nh).withPart(Bh).withPart(ag).withPart(Jh).withPart(xh).withParams(hg()))(),pg=(()=>{const e={tabSelectedUnderlineColor:{ref:"primaryColor"},sideButtonSelectedUnderlineColor:{ref:"primaryColor"},buttonTextColor:{ref:"primaryColor"},rangeSelectionBackgroundColor:{ref:"primaryColor",mix:.2},rangeSelectionBorderColor:{ref:"primaryColor"},rangeSelectionHighlightColor:{ref:"primaryColor",mix:.5},rangeHeaderHighlightColor:{ref:"foregroundColor",mix:.08},rowNumbersSelectedColor:{ref:"primaryColor",mix:.5},inputFocusBorder:{width:2,color:{ref:"primaryColor"}},pickerButtonFocusBorder:{width:1,color:{ref:"primaryColor"}},cellEditingBorder:{color:{ref:"primaryColor"}},menuBackgroundColor:{ref:"backgroundColor"},sideButtonBarBackgroundColor:ku,sideButtonSelectedBackgroundColor:"transparent",sideButtonBarTopPadding:{calc:"spacing * 4"},headerColumnResizeHandleColor:"none",headerBackgroundColor:{ref:"backgroundColor"},rowHoverColor:Du(.08),columnHoverColor:Du(.08),headerCellHoverBackgroundColor:Du(.05),statusBarLabelColor:Du(.63),statusBarLabelFontWeight:600,statusBarValueFontWeight:600,valueChangeValueHighlightBackgroundColor:"#00acc1",panelTitleBarIconColor:Lu,advancedFilterBuilderButtonBarBorder:!1,filterPanelApplyButtonColor:{ref:"buttonTextColor"},filterPanelApplyButtonBackgroundColor:{ref:"buttonBackgroundColor"},colorPickerThumbSize:13,colorPickerTrackSize:11,colorPickerThumbBorderWidth:2,colorPickerTrackBorderRadius:2,colorPickerColorBorderRadius:2,rowDragIndicatorColor:{ref:"primaryColor"},columnDragIndicatorColor:{ref:"primaryColor"}},t={...e,primaryColor:"#3f51b5",foregroundColor:"#000D",headerTextColor:"#0008",accentColor:"#ff4081",checkboxUncheckedBorderColor:Lu,checkboxIndeterminateBackgroundColor:Lu,toggleButtonOffBackgroundColor:Lu,selectedRowBackgroundColor:"rgba(33, 150, 243, 0.3)"},i={...e,primaryColor:"#3f51b5",foregroundColor:"#fffD",headerTextColor:"#fff8",accentColor:"#bb86fc",checkboxUncheckedBorderColor:Iu(.5),checkboxIndeterminateBackgroundColor:Iu(.5),toggleButtonOffBackgroundColor:Iu(.5),selectedRowBackgroundColor:"#bb86fc33"};return Fu({feature:"styleMaterial",css:".ag-dnd-ghost,.ag-filter-toolpanel-header,.ag-filter-toolpanel-search,.ag-multi-filter-group-title-bar,.ag-panel-title-bar-title,.ag-status-bar{color:var(--ag-header-text-color);font-size:calc(var(--ag-font-size) - 1px);font-weight:600}.ag-column-drop-horizontal{background-color:color-mix(in srgb,var(--ag-background-color),var(--ag-foreground-color) 8%)}.ag-cell.ag-cell-inline-editing{background-color:var(--ag-background-color);background-image:linear-gradient(0deg,var(--ag-input-background-color),var(--ag-input-background-color));border:var(--ag-input-border)!important;border-width:1px!important;height:calc(var(--ag-row-height) + var(--ag-spacing)*3);padding:var(--ag-spacing);:where(.ag-row-last:not(.ag-row-first)) &{bottom:0}:where(.ag-has-focus) &{border:var(--ag-input-focus-border)!important;border-width:1px!important}}.ag-advanced-filter-builder-button,.ag-standard-button{text-transform:uppercase}.ag-status-bar{border:solid var(--ag-border-width) var(--ag-border-color)}.ag-list-item-hovered:after{background-color:var(--ag-primary-color)}.ag-pill-button:hover{color:var(--ag-primary-color)}.ag-filter-add-button,.ag-filter-add-button:hover{border-bottom:2px solid var(--ag-primary-color)}",params:t,modeParams:{light:t,dark:i,"dark-blue":i}})})(),mg=()=>({rowHeight:{calc:"max(iconSize, dataFontSize) + spacing * 3.75 * rowVerticalPaddingScale"},headerHeight:{calc:"max(iconSize, dataFontSize) + spacing * 4.75 * headerVerticalPaddingScale"},widgetVerticalSpacing:{calc:"spacing * 1.75"},cellHorizontalPadding:{calc:"spacing * 3"},buttonHorizontalPadding:{ref:"spacing"},widgetContainerHorizontalPadding:{calc:"spacing * 1.5"},widgetContainerVerticalPadding:{calc:"spacing * 2"},fontSize:13,iconSize:18,borderRadius:0,wrapperBorderRadius:0,wrapperBorder:!1,menuBorder:!1,dialogBorder:!1,panelTitleBarBorder:!1,tabSelectedBorderWidth:0,tabSelectedUnderlineTransitionDuration:.3,sidePanelBorder:!1,sideButtonSelectedBorder:!1,sideButtonSelectedUnderlineWidth:2,sideButtonSelectedUnderlineTransitionDuration:.3,sideButtonBorder:!1,buttonBorder:!1,buttonDisabledBorder:!1,focusShadow:{spread:4,color:Du(.16)},fontFamily:[{googleFont:"Roboto"},"-apple-system","BlinkMacSystemFont","Segoe UI","Oxygen-Sans","Ubuntu","Cantarell","Helvetica Neue","sans-serif"],inputHeight:{calc:"max(iconSize, fontSize) + spacing * 3"},pickerButtonBorder:{width:1,color:"transparent"},headerFontWeight:600,headerFontSize:{calc:"fontSize - 1px"},checkboxBorderWidth:2,checkboxBorderRadius:2,toggleButtonWidth:34,toggleButtonSwitchInset:1,cardShadow:"0 3px 1px -2px rgba(0, 0, 0, 0.2), 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 1px 5px 0 rgba(0, 0, 0, 0.12)",popupShadow:"5px 5px 10px rgba(0, 0, 0, 0.3)"}),fg=(()=>Mh().withPart(vh).withPart(Eh).withPart(Nh).withPart(_h).withPart(rg).withPart(eg).withPart(xh).withPart(pg).withParams(mg()))(),Cg=(e,t,i,s,o)=>({changeKey:e,type:t,defaultValue:i,noWarn:s,cacheDefault:o}),vg=Cg("cellHorizontalPadding","length",16),wg=Cg("indentationLevel","length",0,!0,!0),bg=Cg("rowGroupIndentSize","length",0),yg=Cg("rowHeight","length",42),Sg=Cg("headerHeight","length",48),xg=Cg("rowBorderWidth","border",1),Fg=Cg("pinnedRowBorderWidth","border",1),Rg=Cg("headerRowBorderWidth","border",1);function Pg(e,t){for(const i of t.sort((e,t)=>e.moduleName.localeCompare(t.moduleName))){const t=i.css;t&&e.set(`module-${i.moduleName}`,t)}}var Mg=class extends vt{constructor(){super(...arguments),this.beanName="eventSvc",this.eventServiceType="global",this.globalSvc=new y}addListener(e,t,i){this.globalSvc.addEventListener(e,t,i)}removeListener(e,t,i){this.globalSvc.removeEventListener(e,t,i)}addGlobalListener(e,t=!1){this.globalSvc.addGlobalListener(e,t)}removeGlobalListener(e,t=!1){this.globalSvc.removeGlobalListener(e,t)}dispatchEvent(e){this.globalSvc.dispatchEvent(this.gos.addCommon(e))}dispatchEventOnce(e){this.globalSvc.dispatchEventOnce(this.gos.addCommon(e))}};function Eg(e,t,i){const s=e.visibleCols.headerGroupRowCount;if(i>=s)return{column:t,headerRowIndex:i};let o=t.getParent();for(;o&&o.getProvidedColumnGroup().getLevel()>i;)o=o.getParent();const r=t.isSpanHeaderHeight();return!o||r&&o.isPadding()?{column:t,headerRowIndex:s}:{column:o,headerRowIndex:o.getProvidedColumnGroup().getLevel()}}var Ag=["columnEverythingChanged","newColumnsLoaded","columnPivotModeChanged","pivotMaxColumnsExceeded","columnRowGroupChanged","expandOrCollapseAll","columnPivotChanged","gridColumnsChanged","columnValueChanged","columnMoved","columnVisible","columnPinned","columnGroupOpened","columnResized","displayedColumnsChanged","virtualColumnsChanged","columnHeaderMouseOver","columnHeaderMouseLeave","columnHeaderClicked","columnHeaderContextMenu","asyncTransactionsFlushed","rowGroupOpened","rowDataUpdated","pinnedRowDataChanged","pinnedRowsChanged","rangeSelectionChanged","cellSelectionChanged","chartCreated","chartRangeSelectionChanged","chartOptionsChanged","chartDestroyed","toolPanelVisibleChanged","toolPanelSizeChanged","modelUpdated","cutStart","cutEnd","pasteStart","pasteEnd","fillStart","fillEnd","cellSelectionDeleteStart","cellSelectionDeleteEnd","rangeDeleteStart","rangeDeleteEnd","undoStarted","undoEnded","redoStarted","redoEnded","cellClicked","cellDoubleClicked","cellMouseDown","cellContextMenu","cellValueChanged","cellEditRequest","rowValueChanged","headerFocused","cellFocused","rowSelected","selectionChanged","tooltipShow","tooltipHide","cellKeyDown","cellMouseOver","cellMouseOut","filterChanged","filterModified","filterUiChanged","filterOpened","floatingFilterUiChanged","advancedFilterBuilderVisibleChanged","sortChanged","virtualRowRemoved","rowClicked","rowDoubleClicked","gridReady","gridPreDestroyed","gridSizeChanged","viewportChanged","firstDataRendered","dragStarted","dragStopped","dragCancelled","rowEditingStarted","rowEditingStopped","cellEditingStarted","cellEditingStopped","bodyScroll","bodyScrollEnd","paginationChanged","componentStateChanged","storeRefreshed","stateUpdated","columnMenuVisibleChanged","contextMenuVisibleChanged","rowDragEnter","rowDragMove","rowDragLeave","rowDragEnd","rowDragCancel","findChanged","rowResizeStarted","rowResizeEnded","columnsReset","bulkEditingStarted","bulkEditingStopped","batchEditingStarted","batchEditingStopped"],Tg=["scrollbarWidthChanged","keyShortcutChangedCellStart","keyShortcutChangedCellEnd","pinnedHeightChanged","cellFocusCleared","fullWidthRowFocused","checkboxChanged","heightScaleChanged","suppressMovableColumns","suppressMenuHide","suppressFieldDotNotation","columnPanelItemDragStart","columnPanelItemDragEnd","bodyHeightChanged","columnContainerWidthChanged","displayedColumnsWidthChanged","scrollVisibilityChanged","scrollGapChanged","columnHoverChanged","flashCells","rowDragVisibilityChanged","paginationPixelOffsetChanged","displayedRowsChanged","leftPinnedWidthChanged","rightPinnedWidthChanged","rowContainerHeightChanged","headerHeightChanged","columnGroupHeaderHeightChanged","columnHeaderHeightChanged","stylesChanged","storeUpdated","filterDestroyed","filterHandlerDestroyed","rowDataUpdateStarted","rowCountReady","advancedFilterEnabledChanged","dataTypesInferred","fieldValueChanged","fieldPickerValueSelected","richSelectListRowSelected","sideBarUpdated","alignedGridScroll","alignedGridColumn","gridOptionsChanged","chartTitleEdit","recalculateRowBounds","stickyTopOffsetChanged","overlayExclusiveChanged","rowNodeDataChanged","cellEditValuesChanged","filterSwitched","filterClosed","headerRowsChanged","rowExpansionStateChanged","showRowGroupColsSetChanged"],Dg=()=>[...Ag,...Tg],Ig=new Set(["gridPreDestroyed","fillStart","pasteStart"]),kg=Ag.reduce((e,t)=>(e[t]=hs(t),e),{}),Lg={agSetColumnFilter:"SetFilter",agSetColumnFloatingFilter:"SetFilter",agMultiColumnFilter:"MultiFilter",agMultiColumnFloatingFilter:"MultiFilter",agGroupColumnFilter:"GroupFilter",agGroupColumnFloatingFilter:"GroupFilter",agGroupCellRenderer:"GroupCellRenderer",agGroupRowRenderer:"GroupCellRenderer",agRichSelect:"RichSelect",agRichSelectCellEditor:"RichSelect",agDetailCellRenderer:"SharedMasterDetail",agSparklineCellRenderer:"Sparklines",agDragAndDropImage:"SharedDragAndDrop",agColumnHeader:"ColumnHeaderComp",agColumnGroupHeader:"ColumnGroupHeaderComp",agSortIndicator:"Sort",agAnimateShowChangeCellRenderer:"HighlightChanges",agAnimateSlideCellRenderer:"HighlightChanges",agLoadingCellRenderer:"LoadingCellRenderer",agSkeletonCellRenderer:"SkeletonCellRenderer",agCheckboxCellRenderer:"CheckboxCellRenderer",agLoadingOverlay:"Overlay",agExportingOverlay:"Overlay",agNoRowsOverlay:"Overlay",agNoMatchingRowsOverlay:"Overlay",agTooltipComponent:"Tooltip",agReadOnlyFloatingFilter:"CustomFilter",agTextColumnFilter:"TextFilter",agNumberColumnFilter:"NumberFilter",agBigIntColumnFilter:"BigIntFilter",agDateColumnFilter:"DateFilter",agDateInput:"DateFilter",agTextColumnFloatingFilter:"TextFilter",agNumberColumnFloatingFilter:"NumberFilter",agBigIntColumnFloatingFilter:"BigIntFilter",agDateColumnFloatingFilter:"DateFilter",agFormulaCellEditor:"Formula",agCellEditor:"TextEditor",agSelectCellEditor:"SelectEditor",agTextCellEditor:"TextEditor",agNumberCellEditor:"NumberEditor",agDateCellEditor:"DateEditor",agDateStringCellEditor:"DateEditor",agCheckboxCellEditor:"CheckboxEditor",agLargeTextCellEditor:"LargeTextEditor",agMenuItem:"MenuItem",agColumnsToolPanel:"ColumnsToolPanel",agFiltersToolPanel:"FiltersToolPanel",agNewFiltersToolPanel:"NewFiltersToolPanel",agAggregationComponent:"StatusBar",agSelectedRowCountComponent:"StatusBar",agTotalRowCountComponent:"StatusBar",agFilteredRowCountComponent:"StatusBar",agTotalAndFilteredRowCountComponent:"StatusBar",agFindCellRenderer:"Find"};function Og(e){return`"${e}"`}var Gg={allowFormula:"Formula",aggFunc:"SharedAggregation",autoHeight:"RowAutoHeight",cellClass:"CellStyle",cellClassRules:"CellStyle",cellEditor:({cellEditor:e,editable:t,...i})=>{const s=i.groupRowEditable;return!!t||!!s?"string"==typeof e?Lg[e]??"CustomEditor":"CustomEditor":null},cellRenderer:({cellRenderer:e})=>"string"!=typeof e?null:Lg[e],cellStyle:"CellStyle",columnChooserParams:"ColumnMenu",contextMenuItems:"ContextMenu",dndSource:"DragAndDrop",dndSourceOnRowDrag:"DragAndDrop",editable:({editable:e,cellEditor:t})=>e&&!t?"TextEditor":null,enableCellChangeFlash:"HighlightChanges",enablePivot:"SharedPivot",enableRowGroup:"SharedRowGrouping",enableValue:"SharedAggregation",filter:({filter:e})=>e&&"string"!=typeof e&&"boolean"!=typeof e?"CustomFilter":"string"==typeof e?Lg[e]??"ColumnFilter":"ColumnFilter",floatingFilter:"ColumnFilter",getQuickFilterText:"QuickFilter",headerTooltip:"Tooltip",headerTooltipValueGetter:"Tooltip",mainMenuItems:"ColumnMenu",menuTabs:e=>{const t=["columnsMenuTab","generalMenuTab"];return e.menuTabs?.some(e=>t.includes(e))?"ColumnMenu":null},pivot:"SharedPivot",pivotIndex:"SharedPivot",rowDrag:"RowDrag",rowGroup:"SharedRowGrouping",rowGroupIndex:"SharedRowGrouping",tooltipField:"Tooltip",tooltipValueGetter:"Tooltip",tooltipComponentSelector:"Tooltip",spanRows:"CellSpan",groupHierarchy:"SharedRowGrouping"},Ng={headerName:void 0,columnGroupShow:void 0,headerStyle:void 0,headerClass:void 0,toolPanelClass:void 0,headerValueGetter:void 0,pivotKeys:void 0,groupId:void 0,colId:void 0,sort:void 0,initialSort:void 0,field:void 0,type:void 0,cellDataType:void 0,tooltipComponent:void 0,tooltipField:void 0,headerTooltip:void 0,headerTooltipValueGetter:void 0,cellClass:void 0,showRowGroup:void 0,filter:void 0,initialAggFunc:void 0,defaultAggFunc:void 0,aggFunc:void 0,groupRowEditable:void 0,groupRowValueSetter:void 0,pinned:void 0,initialPinned:void 0,chartDataType:void 0,cellAriaRole:void 0,cellEditorPopupPosition:void 0,headerGroupComponent:void 0,headerGroupComponentParams:void 0,cellStyle:void 0,cellRenderer:void 0,cellRendererParams:void 0,cellEditor:void 0,cellEditorParams:void 0,filterParams:void 0,pivotValueColumn:void 0,headerComponent:void 0,headerComponentParams:void 0,floatingFilterComponent:void 0,floatingFilterComponentParams:void 0,tooltipComponentParams:void 0,refData:void 0,columnChooserParams:void 0,children:void 0,sortingOrder:void 0,allowedAggFuncs:void 0,menuTabs:void 0,pivotTotalColumnIds:void 0,cellClassRules:void 0,icons:void 0,sortIndex:void 0,initialSortIndex:void 0,flex:void 0,initialFlex:void 0,width:void 0,initialWidth:void 0,minWidth:void 0,maxWidth:void 0,rowGroupIndex:void 0,initialRowGroupIndex:void 0,pivotIndex:void 0,initialPivotIndex:void 0,suppressColumnsToolPanel:void 0,suppressFiltersToolPanel:void 0,openByDefault:void 0,marryChildren:void 0,suppressStickyLabel:void 0,hide:void 0,initialHide:void 0,rowGroup:void 0,initialRowGroup:void 0,pivot:void 0,initialPivot:void 0,checkboxSelection:void 0,showDisabledCheckboxes:void 0,headerCheckboxSelection:void 0,headerCheckboxSelectionFilteredOnly:void 0,headerCheckboxSelectionCurrentPageOnly:void 0,suppressHeaderMenuButton:void 0,suppressMovable:void 0,lockPosition:void 0,lockVisible:void 0,lockPinned:void 0,unSortIcon:void 0,suppressSizeToFit:void 0,suppressAutoSize:void 0,enableRowGroup:void 0,enablePivot:void 0,enableValue:void 0,editable:void 0,suppressPaste:void 0,suppressNavigable:void 0,enableCellChangeFlash:void 0,rowDrag:void 0,dndSource:void 0,autoHeight:void 0,wrapText:void 0,sortable:void 0,resizable:void 0,singleClickEdit:void 0,floatingFilter:void 0,cellEditorPopup:void 0,suppressFillHandle:void 0,wrapHeaderText:void 0,autoHeaderHeight:void 0,dndSourceOnRowDrag:void 0,valueGetter:void 0,valueSetter:void 0,filterValueGetter:void 0,keyCreator:void 0,valueFormatter:void 0,valueParser:void 0,comparator:void 0,equals:void 0,pivotComparator:void 0,suppressKeyboardEvent:void 0,suppressHeaderKeyboardEvent:void 0,colSpan:void 0,rowSpan:void 0,spanRows:void 0,getQuickFilterText:void 0,onCellValueChanged:void 0,onCellClicked:void 0,onCellDoubleClicked:void 0,onCellContextMenu:void 0,rowDragText:void 0,tooltipValueGetter:void 0,tooltipComponentSelector:void 0,cellRendererSelector:void 0,cellEditorSelector:void 0,suppressSpanHeaderHeight:void 0,useValueFormatterForExport:void 0,useValueParserForImport:void 0,mainMenuItems:void 0,contextMenuItems:void 0,suppressFloatingFilterButton:void 0,suppressHeaderFilterButton:void 0,suppressHeaderContextMenu:void 0,loadingCellRenderer:void 0,loadingCellRendererParams:void 0,loadingCellRendererSelector:void 0,context:void 0,dateComponent:void 0,dateComponentParams:void 0,getFindText:void 0,rowGroupingHierarchy:void 0,groupHierarchy:void 0,allowFormula:void 0},Bg=["overlayLoadingTemplate","overlayNoRowsTemplate","gridId","quickFilterText","rowModelType","editType","domLayout","clipboardDelimiter","rowGroupPanelShow","multiSortKey","pivotColumnGroupTotals","pivotRowTotals","pivotPanelShow","fillHandleDirection","groupDisplayType","treeDataDisplayType","treeDataChildrenField","treeDataParentIdField","colResizeDefault","tooltipTrigger","serverSidePivotResultFieldSeparator","columnMenu","tooltipShowMode","invalidEditValueMode","grandTotalRow","themeCssLayer","findSearchValue","styleNonce","renderingMode"],Vg=["components","rowStyle","context","autoGroupColumnDef","localeText","icons","datasource","dragAndDropImageComponentParams","serverSideDatasource","viewportDatasource","groupRowRendererParams","aggFuncs","fullWidthCellRendererParams","defaultColGroupDef","defaultColDef","defaultCsvExportParams","defaultExcelExportParams","columnTypes","rowClassRules","detailCellRendererParams","loadingCellRendererParams","overlayComponentParams","loadingOverlayComponentParams","noRowsOverlayComponentParams","activeOverlayParams","popupParent","themeStyleContainer","statusBar","chartThemeOverrides","customChartThemes","chartToolPanelsDef","dataTypeDefinitions","advancedFilterParent","advancedFilterBuilderParams","advancedFilterParams","formulaDataSource","formulaFuncs","initialState","autoSizeStrategy","selectionColumnDef","findOptions","filterHandlers","groupHierarchyConfig"],_g=["sortingOrder","alignedGrids","rowData","columnDefs","excelStyles","pinnedTopRowData","pinnedBottomRowData","chartThemes","rowClass","paginationPageSizeSelector","suppressOverlays"],Hg=["rowHeight","detailRowHeight","rowBuffer","headerHeight","groupHeaderHeight","groupLockGroupColumns","floatingFiltersHeight","pivotHeaderHeight","pivotGroupHeaderHeight","groupDefaultExpanded","pivotDefaultExpanded","viewportRowModelPageSize","viewportRowModelBufferSize","autoSizePadding","maxBlocksInCache","maxConcurrentDatasourceRequests","tooltipShowDelay","tooltipSwitchShowDelay","tooltipHideDelay","cacheOverflowSize","paginationPageSize","cacheBlockSize","infiniteInitialRowCount","serverSideInitialRowCount","scrollbarWidth","asyncTransactionWaitMillis","blockLoadDebounceMillis","keepDetailRowsCount","undoRedoCellEditingLimit","cellFlashDuration","cellFadeDuration","tabIndex","pivotMaxGeneratedColumns","rowDragInsertDelay"],zg=["theme","rowSelection"],Wg=["cellSelection","sideBar","rowNumbers","suppressGroupChangesColumnVisibility","groupAggFiltering","suppressStickyTotalRow","groupHideParentOfSingleChild","enableRowPinning"],Ug=["loadThemeGoogleFonts","suppressMakeColumnVisibleAfterUnGroup","suppressRowClickSelection","suppressCellFocus","suppressHeaderFocus","suppressHorizontalScroll","groupSelectsChildren","alwaysShowHorizontalScroll","alwaysShowVerticalScroll","debug","enableBrowserTooltips","enableCellExpressions","groupSuppressBlankHeader","suppressMenuHide","suppressRowDeselection","unSortIcon","suppressMultiSort","alwaysMultiSort","singleClickEdit","suppressLoadingOverlay","suppressNoRowsOverlay","suppressAutoSize","skipHeaderOnAutoSize","suppressColumnMoveAnimation","suppressMoveWhenColumnDragging","suppressMovableColumns","suppressFieldDotNotation","enableRangeSelection","enableRangeHandle","enableFillHandle","suppressClearOnFillReduction","deltaSort","suppressTouch","allowContextMenuWithControlKey","suppressContextMenu","suppressDragLeaveHidesColumns","suppressRowGroupHidesColumns","suppressMiddleClickScrolls","suppressPreventDefaultOnMouseWheel","suppressCopyRowsToClipboard","copyHeadersToClipboard","copyGroupHeadersToClipboard","pivotMode","suppressAggFuncInHeader","suppressColumnVirtualisation","alwaysAggregateAtRootLevel","suppressFocusAfterRefresh","functionsReadOnly","animateRows","groupSelectsFiltered","groupRemoveSingleChildren","groupRemoveLowestSingleChildren","enableRtl","enableCellSpan","suppressClickEdit","rowDragEntireRow","rowDragManaged","refreshAfterGroupEdit","suppressRowDrag","suppressMoveWhenRowDragging","rowDragMultiRow","enableGroupEdit","embedFullWidthRows","suppressPaginationPanel","groupHideOpenParents","groupAllowUnbalanced","pagination","paginationAutoPageSize","suppressScrollOnNewData","suppressScrollWhenPopupsAreOpen","purgeClosedRowNodes","cacheQuickFilter","includeHiddenColumnsInQuickFilter","ensureDomOrder","accentedSort","suppressChangeDetection","valueCache","valueCacheNeverExpires","aggregateOnlyChangedColumns","suppressAnimationFrame","suppressExcelExport","suppressCsvExport","includeHiddenColumnsInAdvancedFilter","suppressMultiRangeSelection","enterNavigatesVerticallyAfterEdit","enterNavigatesVertically","suppressPropertyNamesCheck","rowMultiSelectWithClick","suppressRowHoverHighlight","suppressRowTransform","suppressClipboardPaste","suppressLastEmptyLineOnPaste","enableCharts","suppressMaintainUnsortedOrder","enableCellTextSelection","suppressBrowserResizeObserver","suppressMaxRenderedRowRestriction","excludeChildrenWhenTreeDataFiltering","tooltipMouseTrack","tooltipInteraction","keepDetailRows","paginateChildRows","preventDefaultOnContextMenu","undoRedoCellEditing","allowDragFromColumnsToolPanel","pivotSuppressAutoColumn","suppressExpandablePivotGroups","debounceVerticalScrollbar","detailRowAutoHeight","serverSideSortAllLevels","serverSideEnableClientSideSort","serverSideOnlyRefreshFilteredGroups","suppressAggFilteredOnly","showOpenedGroup","suppressClipboardApi","suppressModelUpdateAfterUpdateTransaction","stopEditingWhenCellsLoseFocus","groupMaintainOrder","columnHoverHighlight","readOnlyEdit","suppressRowVirtualisation","enableCellEditingOnBackspace","resetRowDataOnUpdate","removePivotHeaderRowWhenSingleValueColumn","suppressCopySingleCellRanges","suppressGroupRowsSticky","suppressCutToClipboard","rowGroupPanelSuppressSort","allowShowChangeAfterFilter","enableAdvancedFilter","masterDetail","treeData","reactiveCustomComponents","applyQuickFilterBeforePivotOrAgg","suppressServerSideFullWidthLoadingRow","suppressAdvancedFilterEval","loading","maintainColumnOrder","enableStrictPivotColumnOrder","suppressSetFilterByDefault","enableFilterHandlers","suppressStartEditOnTab","hidePaddedHeaderRows","ssrmExpandAllAffectsAllRows","animateColumnResizing"],jg=["doesExternalFilterPass","processPivotResultColDef","processPivotResultColGroupDef","getBusinessKeyForNode","isRowSelectable","rowDragText","groupRowRenderer","dragAndDropImageComponent","fullWidthCellRenderer","loadingCellRenderer","overlayComponent","loadingOverlayComponent","noRowsOverlayComponent","overlayComponentSelector","activeOverlay","detailCellRenderer","quickFilterParser","quickFilterMatcher","getLocaleText","isExternalFilterPresent","getRowHeight","getRowClass","getRowStyle","getFullRowEditValidationErrors","getContextMenuItems","getMainMenuItems","processRowPostCreate","processCellForClipboard","getGroupRowAgg","isFullWidthRow","sendToClipboard","focusGridInnerElement","navigateToNextHeader","tabToNextHeader","navigateToNextCell","tabToNextCell","processCellFromClipboard","getDocument","postProcessPopup","getChildCount","getDataPath","isRowMaster","postSortRows","processHeaderForClipboard","processUnpinnedColumns","processGroupHeaderForClipboard","paginationNumberFormatter","processDataFromClipboard","getServerSideGroupKey","isServerSideGroup","createChartContainer","getChartToolbarItems","fillOperation","isApplyServerSideTransaction","getServerSideGroupLevelParams","isServerSideGroupOpenByDefault","isGroupOpenByDefault","initialGroupOrderComparator","loadingCellRendererSelector","getRowId","chartMenuItems","groupTotalRow","alwaysPassFilter","isRowPinnable","isRowPinned","isRowValidDropPosition"],Kg=()=>[..._g,...Vg,...Bg,...Hg,...jg,...Ug,...Wg,...zg];function $g(e,t,i){return"number"==typeof t||null==t?null==t||t>=i?null:`${e}: value should be greater than or equal to ${i}`:`${e}: value should be a number`}var qg={alignedGrids:"AlignedGrids",allowContextMenuWithControlKey:"ContextMenu",autoSizeStrategy:"ColumnAutoSize",cellSelection:"CellSelection",columnHoverHighlight:"ColumnHover",datasource:"InfiniteRowModel",doesExternalFilterPass:"ExternalFilter",editType:"EditCore",invalidEditValueMode:"EditCore",enableAdvancedFilter:"AdvancedFilter",enableCellSpan:"CellSpan",enableCharts:"IntegratedCharts",enableRangeSelection:"CellSelection",enableRowPinning:"PinnedRow",findSearchValue:"Find",getFullRowEditValidationErrors:"EditCore",getContextMenuItems:"ContextMenu",getLocaleText:"Locale",getMainMenuItems:"ColumnMenu",getRowClass:"RowStyle",getRowStyle:"RowStyle",groupTotalRow:"SharedRowGrouping",grandTotalRow:"ClientSideRowModelHierarchy",initialState:"GridState",isExternalFilterPresent:"ExternalFilter",isRowPinnable:"PinnedRow",isRowPinned:"PinnedRow",localeText:"Locale",masterDetail:"SharedMasterDetail",pagination:"Pagination",pinnedBottomRowData:"PinnedRow",pinnedTopRowData:"PinnedRow",pivotMode:"SharedPivot",pivotPanelShow:"RowGroupingPanel",quickFilterText:"QuickFilter",rowClass:"RowStyle",rowClassRules:"RowStyle",rowData:"ClientSideRowModel",rowDragManaged:"RowDrag",refreshAfterGroupEdit:["RowGrouping","TreeData"],rowGroupPanelShow:"RowGroupingPanel",rowNumbers:"RowNumbers",rowSelection:"SharedRowSelection",rowStyle:"RowStyle",serverSideDatasource:"ServerSideRowModel",sideBar:"SideBar",statusBar:"StatusBar",treeData:"SharedTreeData",undoRedoCellEditing:"UndoRedoEdit",valueCache:"ValueCache",viewportDatasource:"ViewportRowModel"},Yg=()=>{const e={autoSizePadding:{validate({autoSizePadding:e}){return $g("autoSizePadding",e,0)}},cacheBlockSize:{supportedRowModels:["serverSide","infinite"],validate({cacheBlockSize:e}){return $g("cacheBlockSize",e,1)}},cacheOverflowSize:{validate({cacheOverflowSize:e}){return $g("cacheOverflowSize",e,1)}},datasource:{supportedRowModels:["infinite"]},domLayout:{validate:e=>{const t=e.domLayout,i=["autoHeight","normal","print"];return t&&!i.includes(t)?`domLayout must be one of [${i.join()}], currently it's ${t}`:null}},enableFillHandle:{dependencies:{enableRangeSelection:{required:[!0]}}},enableRangeHandle:{dependencies:{enableRangeSelection:{required:[!0]}}},enableRangeSelection:{dependencies:{rowDragEntireRow:{required:[!1,void 0]}}},enableRowPinning:{supportedRowModels:["clientSide"],validate({enableRowPinning:e,pinnedTopRowData:t,pinnedBottomRowData:i}){return e&&(t||i)?"Manual row pinning cannot be used together with pinned row data. Either set `enableRowPinning` to `false`, or remove `pinnedTopRowData` and `pinnedBottomRowData`.":null}},isRowPinnable:{supportedRowModels:["clientSide"],validate({enableRowPinning:e,isRowPinnable:t,pinnedTopRowData:i,pinnedBottomRowData:s}){return t&&(i||s)?"Manual row pinning cannot be used together with pinned row data. Either remove `isRowPinnable`, or remove `pinnedTopRowData` and `pinnedBottomRowData`.":!e&&t?"`isRowPinnable` requires `enableRowPinning` to be set.":null}},isRowPinned:{supportedRowModels:["clientSide"],validate({enableRowPinning:e,isRowPinned:t,pinnedTopRowData:i,pinnedBottomRowData:s}){return t&&(i||s)?"Manual row pinning cannot be used together with pinned row data. Either remove `isRowPinned`, or remove `pinnedTopRowData` and `pinnedBottomRowData`.":!e&&t?"`isRowPinned` requires `enableRowPinning` to be set.":null}},groupDefaultExpanded:{supportedRowModels:["clientSide"]},groupHideOpenParents:{supportedRowModels:["clientSide","serverSide"],dependencies:{groupTotalRow:{required:[void 0,"bottom"]},treeData:{required:[void 0,!1],reason:"Tree Data has values at the group level so it doesn't make sense to hide them."}}},groupHideParentOfSingleChild:{dependencies:{groupHideOpenParents:{required:[void 0,!1]}}},groupRemoveLowestSingleChildren:{dependencies:{groupHideOpenParents:{required:[void 0,!1]},groupRemoveSingleChildren:{required:[void 0,!1]}}},groupRemoveSingleChildren:{dependencies:{groupHideOpenParents:{required:[void 0,!1]},groupRemoveLowestSingleChildren:{required:[void 0,!1]}}},groupSelectsChildren:{dependencies:{rowSelection:{required:["multiple"]}}},groupHierarchyConfig:{validate({groupHierarchyConfig:e={}},t,i){for(const t of Object.keys(e))i.validation?.validateColDef(e[t]);return null}},icons:{validate:({icons:e})=>{if(e){if(e.smallDown)return vi(262);if(e.smallLeft)return vi(263);if(e.smallRight)return vi(264)}return null}},infiniteInitialRowCount:{validate({infiniteInitialRowCount:e}){return $g("infiniteInitialRowCount",e,1)}},initialGroupOrderComparator:{supportedRowModels:["clientSide"]},ssrmExpandAllAffectsAllRows:{validate:e=>{if("boolean"==typeof e.ssrmExpandAllAffectsAllRows){if("serverSide"!==e.rowModelType)return"'ssrmExpandAllAffectsAllRows' is only supported with the Server Side Row Model.";if(e.ssrmExpandAllAffectsAllRows&&"function"!=typeof e.getRowId)return"'getRowId' callback must be provided for Server Side Row Model grouping to work correctly."}return null}},keepDetailRowsCount:{validate({keepDetailRowsCount:e}){return $g("keepDetailRowsCount",e,1)}},paginationPageSize:{validate({paginationPageSize:e}){return $g("paginationPageSize",e,1)}},paginationPageSizeSelector:{validate:e=>{const t=e.paginationPageSizeSelector;return"boolean"==typeof t||null==t||t.length?null:"'paginationPageSizeSelector' cannot be an empty array.\n If you want to hide the page size selector, set paginationPageSizeSelector to false."}},pivotMode:{dependencies:{treeData:{required:[!1,void 0],reason:"Pivot Mode is not supported with Tree Data."}}},quickFilterText:{supportedRowModels:["clientSide"]},rowBuffer:{validate({rowBuffer:e}){return $g("rowBuffer",e,0)}},rowClass:{validate:e=>"function"==typeof e.rowClass?"rowClass should not be a function, please use getRowClass instead":null},rowData:{supportedRowModels:["clientSide"]},rowDragManaged:{supportedRowModels:["clientSide"],dependencies:{pagination:{required:[!1,void 0]}}},rowSelection:{validate({rowSelection:e}){return e&&"string"==typeof e?'As of version 32.2.1, using `rowSelection` with the values "single" or "multiple" has been deprecated. Use the object value instead.':e&&"object"!=typeof e?"Expected `RowSelectionOptions` object for the `rowSelection` property.":e&&"multiRow"!==e.mode&&"singleRow"!==e.mode?`Selection mode "${e.mode}" is invalid. Use one of 'singleRow' or 'multiRow'.`:null}},rowStyle:{validate:e=>{const t=e.rowStyle;return t&&"function"==typeof t?"rowStyle should be an object of key/value styles, not be a function, use getRowStyle() instead":null}},serverSideDatasource:{supportedRowModels:["serverSide"]},serverSideInitialRowCount:{supportedRowModels:["serverSide"],validate({serverSideInitialRowCount:e}){return $g("serverSideInitialRowCount",e,1)}},serverSideOnlyRefreshFilteredGroups:{supportedRowModels:["serverSide"]},serverSideSortAllLevels:{supportedRowModels:["serverSide"]},sortingOrder:{validate:e=>{const t=e.sortingOrder;if(Array.isArray(t)&&t.length>0){const e=t.filter(e=>!Rs(e));if(e.length>0)return`sortingOrder must be an array of type (SortDirection | SortDef)[], incorrect items are: ${e.map(e=>"string"==typeof e||null==e?di(e):JSON.stringify(e))}]`}else if(!Array.isArray(t)||!t.length)return`sortingOrder must be an array with at least one element, currently it's ${t}`;return null}},tooltipHideDelay:{validate:e=>e.tooltipHideDelay&&e.tooltipHideDelay<0?"tooltipHideDelay should not be lower than 0":null},tooltipShowDelay:{validate:e=>e.tooltipShowDelay&&e.tooltipShowDelay<0?"tooltipShowDelay should not be lower than 0":null},tooltipSwitchShowDelay:{validate:e=>e.tooltipSwitchShowDelay&&e.tooltipSwitchShowDelay<0?"tooltipSwitchShowDelay should not be lower than 0":null},treeData:{supportedRowModels:["clientSide","serverSide"],validate:e=>{const t=e.rowModelType??"clientSide";switch(t){case"clientSide":{const{treeDataChildrenField:t,treeDataParentIdField:i,getDataPath:s,getRowId:o}=e;if(!t&&!i&&!s)return"treeData requires either 'treeDataChildrenField' or 'treeDataParentIdField' or 'getDataPath' in the clientSide row model.";if(t){if(s)return"Cannot use both 'treeDataChildrenField' and 'getDataPath' at the same time.";if(i)return"Cannot use both 'treeDataChildrenField' and 'treeDataParentIdField' at the same time."}if(i){if(!o)return"getRowId callback not provided, tree data with parent id cannot be built.";if(s)return"Cannot use both 'treeDataParentIdField' and 'getDataPath' at the same time."}return null}case"serverSide":{const i=`treeData requires 'isServerSideGroup' and 'getServerSideGroupKey' in the ${t} row model.`;return e.isServerSideGroup&&e.getServerSideGroupKey?null:i}}return null}},viewportDatasource:{supportedRowModels:["viewport"]},viewportRowModelBufferSize:{validate({viewportRowModelBufferSize:e}){return $g("viewportRowModelBufferSize",e,0)}},viewportRowModelPageSize:{validate({viewportRowModelPageSize:e}){return $g("viewportRowModelPageSize",e,1)}},rowDragEntireRow:{dependencies:{cellSelection:{required:[void 0]}}},autoGroupColumnDef:{validate({autoGroupColumnDef:e,showOpenedGroup:t}){return e?.field&&t?"autoGroupColumnDef.field and showOpenedGroup are not supported when used together.":e?.valueGetter&&t?"autoGroupColumnDef.valueGetter and showOpenedGroup are not supported when used together.":null}},renderingMode:{validate:e=>{const t=e.renderingMode,i=["default","legacy"];return t&&!i.includes(t)?`renderingMode must be one of [${i.join()}], currently it's ${t}`:null}},autoSizeStrategy:{validate:({autoSizeStrategy:e})=>{if(!e)return null;const t=["fitCellContents","fitGridWidth","fitProvidedWidth"],i=e.type;return"fitCellContents"!==i&&"fitGridWidth"!==i&&"fitProvidedWidth"!==i?`Invalid Auto-size strategy. \`autoSizeStrategy\` must be one of ${t.map(e=>'"'+e+'"').join(", ")}, currently it's ${i}`:"fitProvidedWidth"===i&&"number"!=typeof e.width?`When using the 'fitProvidedWidth' auto-size strategy, must provide a numeric \`width\`. You provided ${e.width}`:null}}},t={};for(const e of Ug)t[e]={expectedType:"boolean"};for(const e of Hg)t[e]={expectedType:"number"};return At(t,e),t},Xg=0,Zg=0,Qg="__ag_grid_instance";var Jg=class extends wt{constructor(e,t){super(),this.column=e,this.eGui=t,this.lastMovingChanged=0}postConstruct(){this.addManagedElementListeners(this.eGui,{click:e=>e&&this.onClick(e)}),this.addManagedListeners(this.column,{movingChanged:()=>{this.lastMovingChanged=Date.now()}})}onClick(e){const{sortSvc:t,rangeSvc:i,gos:s}=this.beans;if(!es(s)||e.altKey){if(this.column.isSortable()){const i=this.column.isMoving(),s=Date.now()-this.lastMovingChanged<50;i||s||t?.progressSortFromEvent(this.column,e)}}else i?.handleColumnSelection(this.column,e)}};var ep=class extends Wo{constructor(){super(...arguments),this.eFilter=Lo,this.eFilterButton=Lo,this.eSortIndicator=Lo,this.eMenu=Lo,this.eLabel=Lo,this.eText=Lo,this.eColRef=Lo,this.eSortOrder=Lo,this.eSortAsc=Lo,this.eSortDesc=Lo,this.eSortMixed=Lo,this.eSortNone=Lo,this.eSortAbsoluteAsc=Lo,this.eSortAbsoluteDesc=Lo,this.isLoadingInnerComponent=!1}refresh(e){const t=this.params;if(this.params=e,this.workOutTemplate(e,!!this.beans?.sortSvc)!=this.currentTemplate||this.workOutShowMenu()!=this.currentShowMenu||e.enableSorting!=this.currentSort||e.column.formulaRef!=this.currentRef||null!=this.currentSuppressMenuHide&&this.shouldSuppressMenuHide()!=this.currentSuppressMenuHide||t.enableFilterButton!=e.enableFilterButton||t.enableFilterIcon!=e.enableFilterIcon)return!1;if(this.innerHeaderComponent){const t={...e};At(t,e.innerHeaderComponentParams),this.innerHeaderComponent.refresh?.(t)}else this.setDisplayName(e);return!0}workOutTemplate(e,t){const{formula:i}=this.beans,s=e.template;return s?s?.trim?s.trim():s:function(e,t){const i={"aria-hidden":"true"};return{tag:"div",cls:"ag-cell-label-container",role:"presentation",children:[{tag:"span",ref:"eMenu",cls:"ag-header-icon ag-header-cell-menu-button",attrs:i},{tag:"span",ref:"eFilterButton",cls:"ag-header-icon ag-header-cell-filter-button",attrs:i},{tag:"div",ref:"eLabel",cls:"ag-header-cell-label",role:"presentation",children:[e?{tag:"span",ref:"eColRef",cls:"ag-header-col-ref"}:null,{tag:"span",ref:"eText",cls:"ag-header-cell-text"},{tag:"span",ref:"eFilter",cls:"ag-header-icon ag-header-label-icon ag-filter-icon",attrs:i},t?{tag:"ag-sort-indicator",ref:"eSortIndicator"}:null]}]}}(!!i?.active,t)}init(e){this.params=e;const{sortSvc:t,touchSvc:i,rowNumbersSvc:s,userCompFactory:o}=this.beans,r=t?.getSortIndicatorSelector();this.currentTemplate=this.workOutTemplate(e,!!r),this.setTemplate(this.currentTemplate,r?[r]:void 0),this.eLabel&&(this.mouseListener??(this.mouseListener=this.createManagedBean(new Jg(e.column,this.eLabel)))),i?.setupForHeader(this),this.setMenu(),this.setupSort(),this.setupColumnRefIndicator(),s?.setupForHeader(this),this.setupFilterIcon(),this.setupFilterButton(),this.workOutInnerHeaderComponent(o,e),this.setDisplayName(e)}workOutInnerHeaderComponent(e,t){const i=function(e,t,i){return e.getCompDetails(t,Zo,void 0,i)}(e,t,t);i&&(this.isLoadingInnerComponent=!0,i.newAgStackInstance().then(e=>{this.isLoadingInnerComponent=!1,e&&(this.isAlive()?(this.innerHeaderComponent=e,this.eText&&this.eText.appendChild(e.getGui())):this.destroyBean(e))}))}setDisplayName(e){const{displayName:t}=e,i=this.currentDisplayName;this.currentDisplayName=t,!this.eText||i===t||this.innerHeaderComponent||this.isLoadingInnerComponent||(this.eText.textContent=F(t))}addInIcon(e,t,i){const s=Bo(e,this.beans,i);s&&t.appendChild(s)}workOutShowMenu(){return this.params.enableMenu&&!!this.beans.menuSvc?.isHeaderMenuButtonEnabled()}shouldSuppressMenuHide(){return!!this.beans.menuSvc?.isHeaderMenuButtonAlwaysShowEnabled()}setMenu(){if(!this.eMenu)return;if(this.currentShowMenu=this.workOutShowMenu(),!this.currentShowMenu)return De(this.eMenu),void(this.eMenu=void 0);const{gos:e,eMenu:t,params:i}=this,s=cs(e);this.addInIcon(s?"menu":"menuAlt",t,i.column),t.classList.toggle("ag-header-menu-icon",!s);const o=this.shouldSuppressMenuHide();this.currentSuppressMenuHide=o,this.addManagedElementListeners(t,{click:()=>this.showColumnMenu(this.eMenu)}),this.toggleMenuAlwaysShow(o)}toggleMenuAlwaysShow(e){this.eMenu?.classList.toggle("ag-header-menu-always-show",e)}showColumnMenu(e){const{currentSuppressMenuHide:t,params:i}=this;t||this.toggleMenuAlwaysShow(!0),i.showColumnMenu(e,()=>{t||this.toggleMenuAlwaysShow(!1)})}onMenuKeyboardShortcut(e){const{params:t,gos:i,beans:s,eMenu:o,eFilterButton:r}=this,n=t.column,a=cs(i);if(e&&!a){if(s.menuSvc?.isFilterMenuInHeaderEnabled(n))return t.showFilter(r??o??this.getGui()),!0}else if(t.enableMenu)return this.showColumnMenu(o??r??this.getGui()),!0;return!1}setupSort(){const{sortSvc:e}=this.beans;if(!e)return;const{enableSorting:t,column:i}=this.params;if(this.currentSort=t,!this.eSortIndicator){this.eSortIndicator=this.createBean(e.createSortIndicator(!0));const{eSortIndicator:t,eSortOrder:i,eSortAsc:s,eSortDesc:o,eSortMixed:r,eSortNone:n,eSortAbsoluteAsc:a,eSortAbsoluteDesc:l}=this;t.attachCustomElements(i,s,o,r,n,a,l)}this.eSortIndicator.setupSort(i),this.currentSort&&e.setupHeader(this,i)}setupColumnRefIndicator(){const{eColRef:e,beans:{editModelSvc:t},params:i}=this;e&&(this.currentRef=i.column.formulaRef,e.textContent=this.currentRef,ve(e,!1),this.addManagedEventListeners({cellEditingStarted:()=>{const i=t?.getEditPositions(),s=!!this.currentRef&&!!i?.some(e=>e.column.isAllowFormula());ve(e,s)},cellEditingStopped:()=>{ve(e,!1)}}))}setupFilterIcon(){const{eFilter:e,params:t}=this;if(!e)return;this.configureFilter(t.enableFilterIcon,e,()=>{const i=t.column.isFilterActive();ve(e,i,{skipAriaHidden:!0})},"filterActive")}setupFilterButton(){const{eFilterButton:e,params:t}=this;if(!e)return;this.configureFilter(t.enableFilterButton,e,this.onFilterChangedButton.bind(this),"filter")?this.addManagedElementListeners(e,{click:()=>t.showFilter(e)}):this.eFilterButton=void 0}configureFilter(e,t,i,s){if(!e)return De(t),!1;const o=this.params.column;return this.addInIcon(s,t,o),this.addManagedListeners(o,{filterChanged:i}),i(),!0}onFilterChangedButton(){const e=this.params.column.isFilterActive();this.eFilterButton.classList.toggle("ag-filter-active",e)}getAnchorElementForMenu(e){const{eFilterButton:t,eMenu:i}=this;return e?t??i??this.getGui():i??t??this.getGui()}destroy(){super.destroy(),this.innerHeaderComponent=this.destroyBean(this.innerHeaderComponent),this.mouseListener=this.destroyBean(this.mouseListener)}},tp=class extends wt{constructor(e,t){super(),this.eLabel=e,this.columnGroup=t,this.isSticky=!1,this.left=null,this.right=null}postConstruct(){const{columnGroup:e,beans:t}=this,{ctrlsSvc:i}=t;i.whenReady(this,()=>{const t=this.refreshPosition.bind(this);null==e.getPinned()&&this.addManagedEventListeners({bodyScroll:e=>{"horizontal"===e.direction&&this.updateSticky(e.left)}}),this.addManagedListeners(e,{leftChanged:t,displayedChildrenChanged:t}),this.addManagedEventListeners({columnResized:t}),this.refreshPosition()})}refreshPosition(){const{columnGroup:e,beans:t}=this,i=e.getLeft(),s=e.getActualWidth();if(null==i||0===s)return this.left=null,this.right=null,void this.setSticky(!1);this.left=i,this.right=i+s;const o=t.colViewport.getScrollPosition();null!=o&&this.updateSticky(o)}updateSticky(e){const{beans:t,left:i,right:s}=this;if(null==i||null==s)return void this.setSticky(!1);const{gos:o,visibleCols:r}=t,n=o.get("enableRtl")?r.bodyWidth-e:e;this.setSticky(in)}setSticky(e){const{isSticky:t,eLabel:i}=this;t!==e&&(this.isSticky=e,i.classList.toggle("ag-sticky-label",e))}},ip={tag:"div",cls:"ag-header-group-cell-label",role:"presentation",children:[{tag:"span",ref:"agLabel",cls:"ag-header-group-text",role:"presentation"},{tag:"span",ref:"agOpened",cls:"ag-header-icon ag-header-expand-icon ag-header-expand-icon-expanded"},{tag:"span",ref:"agClosed",cls:"ag-header-icon ag-header-expand-icon ag-header-expand-icon-collapsed"}]},sp={moduleName:"ColumnHeaderComp",version:ii,userComponents:{agColumnHeader:ep},icons:{menu:"menu",menuAlt:"menu-alt"}},op={moduleName:"ColumnGroupHeaderComp",version:ii,userComponents:{agColumnGroupHeader:class extends Wo{constructor(){super(ip),this.agOpened=Lo,this.agClosed=Lo,this.agLabel=Lo,this.isLoadingInnerComponent=!1}init(e){const{userCompFactory:t,touchSvc:i}=this.beans;this.params=e,this.checkWarnings(),this.workOutInnerHeaderGroupComponent(t,e),this.setupLabel(e),this.addGroupExpandIcon(e),this.setupExpandIcons(),i?.setupForHeaderGroup(this)}checkWarnings(){this.params.template&&gi(89)}workOutInnerHeaderGroupComponent(e,t){const i=function(e,t,i){return e.getCompDetails(t,Qo,void 0,i)}(e,t,t);i&&(this.isLoadingInnerComponent=!0,i.newAgStackInstance().then(e=>{this.isLoadingInnerComponent=!1,e&&(this.isAlive()?(this.innerHeaderGroupComponent=e,this.agLabel.appendChild(e.getGui())):this.destroyBean(e))}))}setupExpandIcons(){const{agOpened:e,agClosed:t,params:{columnGroup:i},beans:{colGroupSvc:s}}=this;this.addInIcon("columnGroupOpened",e),this.addInIcon("columnGroupClosed",t);const o=e=>{if(gn(e))return;const t=!i.isExpanded();s.setColumnGroupOpened(i.getProvidedColumnGroup(),t,"uiColumnExpanded")};this.addTouchAndClickListeners(t,o),this.addTouchAndClickListeners(e,o);const r=e=>{hn(e)};this.addManagedElementListeners(t,{dblclick:r}),this.addManagedElementListeners(e,{dblclick:r}),this.addManagedElementListeners(this.getGui(),{dblclick:o}),this.updateIconVisibility();const n=i.getProvidedColumnGroup(),a=this.updateIconVisibility.bind(this);this.addManagedListeners(n,{expandedChanged:a,expandableChanged:a})}addTouchAndClickListeners(e,t){this.beans.touchSvc?.setupForHeaderGroupElement(this,e,t),this.addManagedElementListeners(e,{click:t})}updateIconVisibility(){const{agOpened:e,agClosed:t,params:{columnGroup:i}}=this;if(i.isExpandable()){const s=i.isExpanded();ve(e,s),ve(t,!s)}else ve(e,!1),ve(t,!1)}addInIcon(e,t){const i=Bo(e,this.beans,null);i&&t.appendChild(i)}addGroupExpandIcon(e){if(!e.columnGroup.isExpandable()){const{agOpened:e,agClosed:t}=this;ve(e,!1),ve(t,!1)}}setupLabel(e){const{displayName:t,columnGroup:i}=e,{innerHeaderGroupComponent:s,isLoadingInnerComponent:o}=this,r=s||o;f(t)&&!r&&(this.agLabel.textContent=F(t)),i.getColGroupDef()?.suppressStickyLabel||this.createManagedBean(new tp(this.getGui(),i))}destroy(){super.destroy(),this.innerHeaderGroupComponent&&(this.destroyBean(this.innerHeaderGroupComponent),this.innerHeaderGroupComponent=void 0)}}},icons:{columnGroupOpened:"expanded",columnGroupClosed:"contracted"}},rp={moduleName:"AnimationFrame",version:ii,beans:[class extends wt{constructor(){super(...arguments),this.beanName="animationFrameSvc",this.p1={list:[],sorted:!1},this.p2={list:[],sorted:!1},this.f1={list:[],sorted:!1},this.destroyTasks=[],this.ticking=!1,this.scrollGoingDown=!0,this.lastScrollTop=0,this.taskCount=0}setScrollTop(e){this.scrollGoingDown=e>=this.lastScrollTop,0===e&&(this.scrollGoingDown=!0),this.lastScrollTop=e}postConstruct(){this.active=!this.gos.get("suppressAnimationFrame"),this.batchFrameworkComps=this.beans.frameworkOverrides.batchFrameworkComps}verify(){!1===this.active&&gi(92)}createTask(e,t,i,s,o=!1){this.verify();let r=i;s&&this.batchFrameworkComps&&(r="f1");const n={task:e,index:t,createOrder:++this.taskCount,deferred:o};this.addTaskToList(this[r],n),this.schedule()}addTaskToList(e,t){e.list.push(t),e.sorted=!1}sortTaskList(e){if(e.sorted)return;const t=this.scrollGoingDown?1:-1;e.list.sort((e,i)=>e.deferred!==i.deferred?e.deferred?-1:1:e.index!==i.index?t*(i.index-e.index):i.createOrder-e.createOrder),e.sorted=!0}addDestroyTask(e){this.verify(),this.destroyTasks.push(e),this.schedule()}executeFrame(e){const{p1:t,p2:i,f1:s,destroyTasks:o,beans:r}=this,{ctrlsSvc:n,frameworkOverrides:a}=r,l=t.list,d=i.list,c=s.list,u=Date.now();let h=0;const g=e<=0,p=n.getScrollFeature();for(;g||h{for(;g||h{};else{if(!o.length)break;r=o.pop()}r()}h=Date.now()-u}l.length||d.length||c.length||o.length?this.requestFrame():this.ticking=!1}flushAllFrames(){this.active&&this.executeFrame(-1)}schedule(){this.active&&(this.ticking||(this.ticking=!0,this.requestFrame()))}requestFrame(){const e=this.executeFrame.bind(this,60);Ye(this.beans,e)}isQueueEmpty(){return!this.ticking}}]},np={moduleName:"Touch",version:ii,beans:[class extends wt{constructor(){super(...arguments),this.beanName="touchSvc"}mockBodyContextMenu(e,t){this.mockContextMenu(e,e.eBodyViewport,t)}mockHeaderContextMenu(e,t){this.mockContextMenu(e,e.eGui,t)}mockRowContextMenu(e){if(!qr())return;this.mockContextMenu(e,e.element,(t,i,s)=>{const{rowCtrl:o,cellCtrl:r}=e.getControlsForEventTarget(s?.target??null);r?.column&&r.dispatchCellContextMenuEvent(s??null),this.beans.contextMenuSvc?.handleContextMenuMouseEvent(void 0,s,o,r)})}handleCellDoubleClick(e,t){return!!(()=>{if(!qr()||st("dblclick"))return!1;const t=Date.now(),i=t-e.lastIPadMouseClickEvent<200;return e.lastIPadMouseClickEvent=t,i})()&&(e.onCellDoubleClicked(t),t.preventDefault(),!0)}setupForHeader(e){const{gos:t,sortSvc:i,menuSvc:s}=this.beans;if(t.get("suppressTouch"))return;const{params:o,eMenu:r,eFilterButton:n}=e,a=new rl(e.getGui(),!0);e.addDestroyFunc(()=>a.destroy());const l=e.shouldSuppressMenuHide(),d=l&&f(r)&&o.enableMenu;let c=a;if(d&&(c=new rl(r,!0),e.addDestroyFunc(()=>c.destroy())),o.enableMenu||s?.isHeaderContextMenuEnabled(o.column)){const t=d?"tap":"longTap",i=e=>o.showColumnMenuAfterMouseClick(e.touchStart);e.addManagedListeners(c,{[t]:i}),e.addManagedListeners(a,{longTap:i})}if(o.enableSorting){const t=e=>{const t=e.touchStart.target;l&&(r?.contains(t)||n?.contains(t))||i?.progressSort(o.column,!1,"uiColumnSorted")};e.addManagedListeners(a,{tap:t})}if(o.enableFilterButton&&n){const t=new rl(n,!0);e.addManagedListeners(t,{tap:()=>o.showFilter(n)}),e.addDestroyFunc(()=>t.destroy())}}setupForHeaderGroup(e){const t=e.params;if(this.beans.menuSvc?.isHeaderContextMenuEnabled(t.columnGroup.getProvidedColumnGroup())){const i=new rl(t.eGridHeader,!0),s=e=>t.showColumnMenuAfterMouseClick(e.touchStart);e.addManagedListeners(i,{longTap:s}),e.addDestroyFunc(()=>i.destroy())}}setupForHeaderGroupElement(e,t,i){const s=new rl(t,!0);e.addManagedListeners(s,{tap:i}),e.addDestroyFunc(()=>s.destroy())}mockContextMenu(e,t,i){if(!qr())return;const s=new rl(t);e.addManagedListeners(s,{longTap:e=>{lt(this.beans,e.touchEvent)&&i(void 0,e.touchStart,e.touchEvent)}}),e.addDestroyFunc(()=>s.destroy())}}]};function ap(e){const t=e;return null!=t?.getFrameworkComponentInstance?t.getFrameworkComponentInstance():e}var lp=class{constructor(){this.cellValidations=new Map}getCellValidation(e){const{rowNode:t,column:i}=e||{};return this.cellValidations?.get(t)?.get(i)}hasCellValidation(e){return e?.rowNode&&e.column?!!this.getCellValidation(e):this.cellValidations.size>0}setCellValidation(e,t){const{rowNode:i,column:s}=e;this.cellValidations.has(i)||this.cellValidations.set(i,new Map),this.cellValidations.get(i).set(s,t)}clearCellValidation(e){const{rowNode:t,column:i}=e;this.cellValidations.get(t)?.delete(i)}setCellValidationMap(e){this.cellValidations=e}getCellValidationMap(){return this.cellValidations}clearCellValidationMap(){this.cellValidations.clear()}},dp=class{constructor(){this.rowValidations=new Map}getRowValidation(e){const{rowNode:t}=e||{};return this.rowValidations.get(t)}hasRowValidation(e){return e?.rowNode?!!this.getRowValidation(e):this.rowValidations.size>0}setRowValidation({rowNode:e},t){this.rowValidations.set(e,t)}clearRowValidation({rowNode:e}){this.rowValidations.delete(e)}setRowValidationMap(e){this.rowValidations=e}getRowValidationMap(){return this.rowValidations}clearRowValidationMap(){this.rowValidations.clear()}};function cp(e,t={}){const{rowIndex:i,rowId:s,rowCtrl:o,rowPinned:r}=t;if(o)return o;const{rowModel:n,rowRenderer:a}=e;let{rowNode:l}=t;return l||(s?l=function(e,t,i){const{rowModel:s,pinnedRowModel:o}=e;let r;return r??(r=s?.getRowNode(t)),i?r??(r=o?.getPinnedRowById(t,i)):(r??(r=o?.getPinnedRowById(t,"top")),r??(r=o?.getPinnedRowById(t,"bottom"))),r}(e,s,r):null!=i&&(l=n.getRow(i))),a.getRowCtrls(l?[l]:[])?.[0]}function up(e,t={}){const{cellCtrl:i,colId:s,columnId:o,column:r}=t;if(i)return i;const n=e.colModel.getCol(s??o??gp(r)),a=t.rowCtrl??cp(e,t),l=a?.getCellCtrl(n)??void 0;if(l)return l;const d=t.rowNode??a?.rowNode;return d?e.rowRenderer.getCellCtrls([d],[n])?.[0]:void 0}function hp(e){const{editSvc:t}=e;t?.isBatchEditing()?(yp(e,{persist:!0}),Fp(e)):t?.stopEditing(void 0,{source:"api"})}function gp(e){if(e)return"string"==typeof e?e:e.getColId()}var pp=Symbol("unedited");function mp({pendingValue:e,sourceValue:t}){return e===pp&&(e=t),e!==t}function fp(e,t,i){const{key:s,event:o,cellStartedEdit:r,silent:n}=i??{},{editModelSvc:a,editSvc:l,gos:d,userCompFactory:c}=e,u=up(e,t),h=u?.comp?.getCellEditor(),g=vp(e,t,s,r&&!n),p=a?.getEdit(t),m=g.value??p?.sourceValue;if(h)return a?.setEdit(t,{editorValue:xp(e,m,!0,t.column),state:"editing"}),void h.refresh?.(g);const f=t.column.getColDef(),C=fr(c,f,g);if(!C)return;const{popupFromSelector:v,popupPositionFromSelector:w}=C,b=v??!!f.cellEditorPopup,y=w??f.cellEditorPopupPosition;if(bp(C.params,o),!u)return;const{rangeFeature:S,rowCtrl:x,comp:F,onEditorAttachedFuncs:R}=u;a?.setEdit(t,{editorValue:xp(e,m,!0,t.column),state:"editing"}),u.editCompDetails=C,R.push(()=>S?.unsetComp()),F?.setEditDetails(C,b,y,d.get("reactiveCustomComponents")),x?.refreshRow({suppressFlash:!0});const P=a?.getEdit(t);n||P?.editorState?.cellStartedEditing||(l?.dispatchCellEvent(t,o,"cellEditingStarted",{value:m}),a?.setEdit(t,{editorState:{cellStartedEditing:!0}}))}function Cp(e,t,i){const s={editorValueExists:!1};if(Ep(e)){const e=t.getValidationErrors?.();if((e?.length??0)>0)return s}if(i?.isCancelling)return s;if(i?.isStopping){const e=t?.isCancelAfterEnd?.();if(e)return{...s,isCancelAfterEnd:e}}return{editorValue:t.getValue(),editorValueExists:!0}}function vp(e,t,i,s){const{valueSvc:o,gos:r,editSvc:n}=e,a=e.gos.get("enableGroupEdit"),l=up(e,t),d=t.rowNode?.rowIndex??void 0,c=n?.isBatchEditing(),u=e.colModel.getCol(t.column.getId()),{rowNode:h,column:g}=t,p=l.comp?.getCellEditor(),m=n?.getCellDataValue(t),f=void 0===m?p?Cp(e,p)?.editorValue:void 0:m,C=f===pp?o.getValueForDisplay({column:u,node:h,from:"edit"})?.value:f;let v=a?f:C;return g.isAllowFormula()&&e.formula?.isFormula(v)&&(v=e.formula?.normaliseFormula(v,!0)??v),ms(r,{value:v,eventKey:i??null,column:g,colDef:g.getColDef(),rowIndex:d,node:h,data:h.data,cellStartedEdit:!!s,onKeyDown:l?.onKeyDown.bind(l),stopEditing:i=>{n.stopEditing(t,{source:c?"ui":"api",suppressNavigateAfterEdit:i}),Rp(e,t,{})},eGridCell:l?.eGui,parseValue:e=>o.parseValue(u,h,e,l?.value),formatValue:l?.formatValue.bind(l),validate:()=>{n?.validateEdit()}})}function wp(e,t){const{editModelSvc:i}=e;i?.getEditMap().forEach((e,s)=>{e.forEach((e,o)=>{(t||"editing"!==e.state&&e.pendingValue!==pp)&&(mp(e)||"editing"===e.state&&!t||i?.removeEdits({rowNode:s,column:o}))})})}function bp(e,t){return t instanceof KeyboardEvent&&"agNumberCellEditor"===e.column.getColDef().cellEditor?e.suppressPreventDefault=["-","+",".","e"].includes(t?.key??"")||e.suppressPreventDefault:t?.preventDefault?.(),e}function yp(e,t){for(const i of e.editModelSvc?.getEditPositions()??[]){const s=up(e,i);if(!s)continue;const o=s.comp?.getCellEditor();if(!o)continue;const{editorValue:r,editorValueExists:n,isCancelAfterEnd:a}=Cp(e,o,t);a&&e.editModelSvc?.setEdit(i,{editorState:{isCancelAfterEnd:a}}),Sp(e,i,r,void 0,!n,t)}}function Sp(e,t,i,s,o,r){const{editModelSvc:n,valueSvc:a}=e;if(!n)return;const{rowNode:l,column:d}=t;if(!l||!d)return;let c=n.getEdit(t);if(void 0===c?.sourceValue){const i=c?xp(e,c.editorValue,!1,d):pp,s={sourceValue:a.getValue(d,l,"data"),pendingValue:i};r?.persist&&(s.state="changed"),c=n.setEdit(t,s)}n.setEdit(t,{editorValue:o?xp(e,c.sourceValue,!0,d):i}),r?.persist&&function(e,t){const{editModelSvc:i}=e,s=i?.getEdit(t),o=xp(e,s?.editorValue,!1,t.column),r={pendingValue:o};s?.editorState?.cellStoppedEditing||"editing"===s?.state||(r.state="changed");i?.setEdit(t,r)}(e,t)}function xp(e,t,i,s){const{formula:o}=e;return s.isAllowFormula()&&o?.isFormula(t)?o?.normaliseFormula(t,i)??t:t}function Fp(e,t,i={}){if(t||(t=e.editModelSvc?.getEditPositions()),t)for(const s of t)Rp(e,s,i)}function Rp(e,t,i,s=up(e,t)){const o=e.editModelSvc,r=o?.getEdit(t);let n;if(n=r&&"editing"!==r.state&&r.editorState?.cellStoppedEditing?r.state:"changed",!s)return void(r&&o?.setEdit(t,{state:n}));const a=s.comp,l=a?.getCellEditor();if(a&&!l){if(s?.refreshCell(),r){o?.setEdit(t,{state:n});const s=e.gos.get("enableGroupEdit")?Pp(r,i?.cancel):{valueChanged:!1,newValue:void 0,oldValue:r.sourceValue};Mp(e,t,s,i)}return}if(Ep(e)){const e=r&&l?.getValidationErrors?.(),i=o?.getCellValidationModel();e?.length?i?.setCellValidation(t,{errorMessages:e}):i?.clearCellValidation(t)}r&&o?.setEdit(t,{state:n}),a?.setEditDetails(),a?.refreshEditStyles(!1,!1),s?.refreshCell({force:!0,suppressFlash:!0});const d=o?.getEdit(t);if(d&&"editing"!==d.state){const s=i?.cancel,o=e.gos.get("enableGroupEdit")?Pp(d,s):function(e,t,i){if(i||e.editorState.isCancelAfterEnd)return{valueChanged:!1,newValue:void 0,oldValue:e.sourceValue};let s=e.editorValue;null!=s&&s!==pp||(s=t?.pendingValue);s===pp&&(s=void 0);return{valueChanged:mp(e),newValue:s,oldValue:e.sourceValue}}(d,r,s);Mp(e,t,o,i)}}function Pp(e,t){const{sourceValue:i,pendingValue:s}=e;let o;return t||s===pp||(o=s),{valueChanged:!t&&mp(e),newValue:o,oldValue:i,value:i}}function Mp(e,t,i,{silent:s,event:o}={}){const{editSvc:r,editModelSvc:n}=e,a=n?.getEdit(t),{editorState:l}=a||{},{isCancelBeforeStart:d}=l||{};s||d||(r?.dispatchCellEvent(t,o,"cellEditingStopped",i),n?.setEdit(t,{editorState:{cellStoppedEditing:!0}}))}function Ep(e){return!!e.gos.get("getFullRowEditValidationErrors")||function(e){if(!e)return!1;for(let t=0,i=e.length;t0,t=e?a.join(". "):"";U(c,e),e&&s.announceValue(`${l} ${a}`,"editorValidation"),c instanceof HTMLInputElement?c.setCustomValidity(t):c.classList.toggle("invalid",e)}a?.length>0&&i.setCellValidation({rowNode:r,column:n},{errorMessages:a}),d.add(t.rowCtrl)}if(yp(e,{persist:!1}),r?.setCellValidationModel(i),a){const t=Tp(e);r?.setRowValidationModel(t)}for(const e of d.values()){e.rowEditStyleFeature?.applyRowStyles();for(const t of e.getAllCellCtrls())t.tooltipFeature?.refreshTooltip(!0),t.editorTooltipFeature?.refreshTooltip(!0),t.editStyleFeature?.applyCellStyles?.()}}var Tp=e=>{const t=new dp,i=e.gos.get("getFullRowEditValidationErrors"),s=e.editModelSvc?.getEditMap();if(!s)return t;for(const e of s.keys()){const o=s.get(e);if(!o)continue;const r=[],{rowIndex:n,rowPinned:a}=e;for(const e of o.keys()){const t=o.get(e);if(!t)continue;const{editorValue:i,pendingValue:s,sourceValue:l}=t,d=i??(s===pp?void 0:s)??l;r.push({column:e,colId:e.getColId(),rowIndex:n,rowPinned:a,oldValue:l,newValue:d})}const l=i?.({editorsState:r})??[];l.length>0&&t.setRowValidation({rowNode:e},{errorMessages:l})}return t};function Dp(e){return!(!e.rowPinned||!e.pinnedSibling)}function Ip(e,t,i,s){const o="top"===t;if(!i)return Ip(e,t,o?e.getPinnedTopRow(0):e.getPinnedBottomRow(0),s);if(!s){const s=o?e.getPinnedTopRowCount():e.getPinnedBottomRowCount();return Ip(e,t,i,o?e.getPinnedTopRow(s-1):e.getPinnedBottomRow(s-1))}let r=!1,n=!1;const a=[];return e.forEachPinnedRow(t,e=>e!==i||r?r&&e===s?(n=!0,void a.push(e)):void(r&&!n&&a.push(e)):(r=!0,void a.push(e))),a}var kp=class extends wt{constructor(e,t,i,s){super(),this.cellCtrl=e,this.rowNode=i,this.rowCtrl=s,this.beans=t}init(){this.eGui=this.cellCtrl.eGui}onKeyDown(e){const t=e.key;switch(t){case To.ENTER:this.onEnterKeyDown(e);break;case To.F2:this.onF2KeyDown(e);break;case To.ESCAPE:this.onEscapeKeyDown(e);break;case To.TAB:this.onTabKeyDown(e);break;case To.BACKSPACE:case To.DELETE:this.onBackspaceOrDeleteKeyDown(t,e);break;case To.DOWN:case To.UP:case To.RIGHT:case To.LEFT:this.onNavigationKeyDown(e,t)}}onNavigationKeyDown(e,t){const{cellCtrl:i,beans:s}=this;if(!s.editSvc?.isEditing(i,{withOpenEditor:!0})){if(e.shiftKey&&i.isRangeSelectionEnabled())this.onShiftRangeSelect(e);else{const o=i.getFocusedCellPosition();s.navigation?.navigateToNextCell(e,t,o,!0)}e.preventDefault()}}onShiftRangeSelect(e){const{rangeSvc:t,navigation:i}=this.beans;if(!t)return;const s=t.extendLatestRangeInDirection(e);s&&(e.key===To.LEFT||e.key===To.RIGHT?i?.ensureColumnVisible(s.column):i?.ensureRowVisible(s.rowIndex))}onTabKeyDown(e){this.beans.navigation?.onTabKeyDown(this.cellCtrl,e)}onBackspaceOrDeleteKeyDown(e,t){const{cellCtrl:i,beans:s,rowNode:o}=this,{gos:r,rangeSvc:n,eventSvc:a,editSvc:l}=s;if(a.dispatchEvent({type:"keyShortcutChangedCellStart"}),function(e,t=!1){return e===To.DELETE||!t&&e===To.BACKSPACE&&$r()}(e,r.get("enableCellEditingOnBackspace"))&&!l?.isEditing(i,{withOpenEditor:!0})){if(n&&Qi(r))n.clearCellRangeCellValues({dispatchWrapperEvents:!0,wrapperEventSource:"deleteKey"});else if(i.isCellEditable()){const e=s.valueSvc.getDeleteValue(i.column,o);o.setDataValue(i.column,e,"cellClear")}}else l?.isEditing(i,{withOpenEditor:!0})||s.editSvc?.startEditing(i,{startedEdit:!0,event:t});a.dispatchEvent({type:"keyShortcutChangedCellEnd"})}onEnterKeyDown(e){const{cellCtrl:t,beans:i}=this,{editSvc:s,navigation:o}=i,r=s?.isEditing(t,{withOpenEditor:!0}),n=t.rowNode,a=s?.isRowEditing(n,{withOpenEditor:!0}),l=t=>{const i=s?.startEditing(t,{startedEdit:!0,event:e,source:"edit"});i&&e.preventDefault()};if(r||a){if(this.isCtrlEnter(e))return void s?.applyBulkEdit(t,i?.rangeSvc?.getCellRanges()||[]);if(Ap(i),"block-stop"===s?.checkNavWithValidation(void 0,e))return;s?.isEditing(t,{withOpenEditor:!0})?s?.stopEditing(t,{event:e,source:"edit"}):a&&!t.isCellEditable()?s?.stopEditing({rowNode:n},{event:e,source:"edit"}):l(t)}else if(i.gos.get("enterNavigatesVertically")){const i=e.shiftKey?To.UP:To.DOWN;o?.navigateToNextCell(null,i,t.cellPosition,!1)}else{if(s?.hasValidationErrors())return;s?.hasValidationErrors(t)&&s.revertSingleCellEdit(t,!0),l(t)}}isCtrlEnter(e){return(e.ctrlKey||e.metaKey)&&e.key===To.ENTER}onF2KeyDown(e){const{cellCtrl:t,beans:{editSvc:i}}=this,s=i?.isEditing();s&&(Ap(this.beans),"block-stop"===i?.checkNavWithValidation(void 0,e))||i?.startEditing(t,{startedEdit:!0,event:e})}onEscapeKeyDown(e){const{cellCtrl:t,beans:{editSvc:i}}=this;"block-stop"===i?.checkNavWithValidation(t,e)&&i.revertSingleCellEdit(t),setTimeout(()=>{i?.stopEditing(t,{event:e,cancel:!0})})}processCharacter(e){const t=e.target!==this.eGui,{beans:{editSvc:i},cellCtrl:s}=this;if(t)return;if(i?.isEditing(s,{withOpenEditor:!0}))return;if(e.key===To.SPACE)this.onSpaceKeyDown(e);else if(i?.isCellEditable(s,"ui")){if(i?.hasValidationErrors()&&!i?.hasValidationErrors(s))return;i?.startEditing(s,{startedEdit:!0,event:e,source:"api",editable:!0});const t=s.editCompDetails;!t?.params?.suppressPreventDefault&&e.preventDefault()}}onSpaceKeyDown(e){const{gos:t,editSvc:i}=this.beans,{rowNode:s}=this.cellCtrl;!i?.isEditing(this.cellCtrl,{withOpenEditor:!0})&&Fi(t)&&this.beans.selectionSvc?.handleSelectionEvent(e,s,"spaceKey"),e.preventDefault()}},Lp=class extends wt{constructor(e,t,i){super(),this.cellCtrl=e,this.column=i,this.beans=t}onMouseEvent(e,t){if(!gn(t))switch(e){case"click":this.onCellClicked(t);break;case"pointerdown":case"mousedown":case"touchstart":this.onMouseDown(t);break;case"dblclick":this.onCellDoubleClicked(t);break;case"mouseout":this.onMouseOut(t);break;case"mouseover":this.onMouseOver(t)}}onCellClicked(e){if(this.beans.touchSvc?.handleCellDoubleClick(this,e))return;const{eventSvc:t,rangeSvc:i,editSvc:s,editModelSvc:o,frameworkOverrides:r,gos:n}=this.beans,a=e.ctrlKey||e.metaKey,{cellCtrl:l}=this,{column:d,cellPosition:c,rowNode:u}=l,h=Bl(n,d,u,e);i&&a&&!h&&i.getCellRangeCount(c)>1&&i.intersectLastRange(!0);const g=l.createEvent(e,"cellClicked");g.isEventHandlingSuppressed=h,t.dispatchEvent(g);const p=d.getColDef();if(p.onCellClicked&&window.setTimeout(()=>{r.wrapOutgoing(()=>{p.onCellClicked(g)})},0),!h&&"editing"!==o?.getState(l)){const t=s?.isEditing(),i=s?.isRangeSelectionEnabledWhileEditing(),r=o?.getCellValidationModel().getCellValidationMap().size??0,n=o?.getRowValidationModel().getRowValidationMap().size??0;if(t&&(i||r>0||n>0))return;s?.shouldStartEditing(l,e)?s?.startEditing(l,{event:e}):s?.shouldStopEditing(l,e)&&("fullRow"===this.beans.gos.get("editType")?s?.stopEditing(l,{event:e,source:"edit"}):s?.stopEditing(void 0,{event:e,source:"edit"}))}}onCellDoubleClicked(e){const{column:t,beans:i,cellCtrl:s}=this,{eventSvc:o,frameworkOverrides:r,editSvc:n,editModelSvc:a,gos:l}=i,d=Bl(l,s.column,s.rowNode,e),c=t.getColDef(),u=s.createEvent(e,"cellDoubleClicked");if(u.isEventHandlingSuppressed=d,o.dispatchEvent(u),"function"==typeof c.onCellDoubleClicked&&window.setTimeout(()=>{r.wrapOutgoing(()=>{c.onCellDoubleClicked(u)})},0),!d&&n?.shouldStartEditing(s,e)&&"editing"!==a?.getState(s)){const t=n?.isEditing(),i=n?.isRangeSelectionEnabledWhileEditing(),o=a?.getCellValidationModel().getCellValidationMap().size??0,r=a?.getRowValidationModel().getRowValidationMap().size??0;if(t&&(i||o>0||r>0))return;n?.startEditing(s,{event:e})}}onMouseDown(e){const{shiftKey:t}=e,i=e.target,{cellCtrl:s,beans:o}=this,{eventSvc:r,rangeSvc:n,rowNumbersSvc:a,focusSvc:l,gos:d,editSvc:c}=o,{column:u,rowNode:h,cellPosition:g}=s,p=Bl(d,u,h,e),m=()=>{const t=s.createEvent(e,"cellMouseDown");t.isEventHandlingSuppressed=p,r.dispatchEvent(t)};if(p)return void m();if(this.isRightClickInExistingRange(e))return;const f=n&&!n.isEmpty(),C=this.containsWidget(i),v=$s(u);if(!a||!v||a.handleMouseDownOnCell(g,e)){if(!t||!f){const t=c?.isEditing(s),o=d.get("enableCellTextSelection")&&e.defaultPrevented,r=(jr()||o)&&!t&&!Ce(i)&&!C;s.focusCell(r,e)}if(t&&f&&!l.isCellFocused(g)){e.preventDefault();const t=l.getFocusedCell();if(t){const{column:i,rowIndex:s,rowPinned:o}=t,r=!!c?.isRangeSelectionEnabledWhileEditing?.();c?.isEditing(t)&&!r&&c?.stopEditing(t),r||l.setFocusedCell({column:i,rowIndex:s,rowPinned:o,forceBrowserFocus:!0,preventScrollOnBrowserFocus:!0,sourceEvent:e})}}C||(n?.handleCellMouseDown(e,g),m())}}isRightClickInExistingRange(e){const{rangeSvc:t}=this.beans;if(t){const i=t.isCellInAnyRange(this.cellCtrl.cellPosition),s=Cs(this.beans,e);if(i&&s)return!0}return!1}containsWidget(e){return ye(e,"ag-selection-checkbox",3)||ye(e,"ag-drag-handle",3)}onMouseOut(e){if(this.mouseStayingInsideCell(e))return;const{eventSvc:t,colHover:i}=this.beans;t.dispatchEvent(this.cellCtrl.createEvent(e,"cellMouseOut")),i?.clearMouseOver()}onMouseOver(e){if(this.mouseStayingInsideCell(e))return;const{eventSvc:t,colHover:i}=this.beans;t.dispatchEvent(this.cellCtrl.createEvent(e,"cellMouseOver")),i?.setMouseOver([this.column])}mouseStayingInsideCell(e){if(!e.target||!e.relatedTarget)return!1;const t=this.cellCtrl.eGui,i=t.contains(e.target),s=t.contains(e.relatedTarget);return i&&s}},Op=class extends wt{constructor(e,t){super(),this.cellCtrl=e,this.beans=t,this.column=e.column,this.rowNode=e.rowNode}setupRowSpan(){this.rowSpan=this.column.getRowSpan(this.rowNode),this.addManagedListeners(this.beans.eventSvc,{newColumnsLoaded:()=>this.onNewColumnsLoaded()})}init(){this.eSetLeft=this.cellCtrl.getRootElement(),this.eContent=this.cellCtrl.eGui;const e=this.cellCtrl.getCellSpan();if(e||(this.setupColSpan(),this.setupRowSpan()),this.onLeftChanged(),this.onWidthChanged(),e||this._legacyApplyRowSpan(),e){const t=this.refreshSpanHeight.bind(this,e);t(),this.addManagedListeners(this.beans.eventSvc,{paginationChanged:t,recalculateRowBounds:t,pinnedHeightChanged:t})}}refreshSpanHeight(e){const t=e.getCellHeight();null!=t&&(this.eContent.style.height=`${t}px`)}onNewColumnsLoaded(){const e=this.column.getRowSpan(this.rowNode);this.rowSpan!==e&&(this.rowSpan=e,this._legacyApplyRowSpan(!0))}onDisplayColumnsChanged(){const e=this.getColSpanningList();d(this.colsSpanning,e)||(this.colsSpanning=e,this.onWidthChanged(),this.onLeftChanged())}setupColSpan(){null!=this.column.getColDef().colSpan&&(this.colsSpanning=this.getColSpanningList(),this.addManagedListeners(this.beans.eventSvc,{displayedColumnsChanged:this.onDisplayColumnsChanged.bind(this),displayedColumnsWidthChanged:this.onWidthChanged.bind(this)}))}onWidthChanged(){if(!this.eContent)return;const e=this.getCellWidth();this.eContent.style.width=`${e}px`}getCellWidth(){return this.colsSpanning?this.colsSpanning.reduce((e,t)=>e+t.getActualWidth(),0):this.column.getActualWidth()}getColSpanningList(){const{column:e,rowNode:t}=this,i=e.getColSpan(t),s=[];if(1===i)s.push(e);else{let t=e;const o=e.getPinned();for(let e=0;t&&ethis.removeFeatures()),this.onSuppressCellFocusChanged(this.beans.gos.get("suppressCellFocus")),this.setupFocus(),this.applyStaticCssClasses(),this.setWrapText(),this.onFirstRightPinnedChanged(),this.onLastLeftPinnedChanged(),this.onColumnHover(),this.setupControlComps(),this.setupAutoHeight(s,n),this.refreshFirstAndLastStyles(),this.checkFormulaError(),this.refreshAriaColIndex(),this.positionFeature?.init(),this.customStyleFeature?.setComp(e),this.editStyleFeature?.setComp(e),this.tooltipFeature?.refreshTooltip(),this.keyboardListener?.init(),this.rangeFeature?.setComp(e),this.rowResizeFeature?.refreshRowResizer();const a=r?this.isCellEditable():void 0,l=!a&&this.hasEdit&&this.editSvc?.isEditing(this,{withOpenEditor:!0});if(a||l?this.editSvc?.startEditing(this,{startedEdit:!1,source:"api",silent:!0,continueEditing:!0,editable:a}):this.showValue(!1,!0),this.onCompAttachedFuncs.length){for(const e of this.onCompAttachedFuncs)e();this.onCompAttachedFuncs=[]}}checkFormulaError(){const e=!!this.beans.formula?.getFormulaError(this.column,this.rowNode);this.eGui.classList.toggle("formula-error",e)}setupAutoHeight(e,t){this.isAutoHeight=this.beans.rowAutoHeight?.setupCellAutoHeight(this,e,t)??!1}getCellAriaRole(){return this.column.getColDef().cellAriaRole??"gridcell"}isCellRenderer(){const e=this.column.getColDef();return null!=e.cellRenderer||null!=e.cellRendererSelector}getValueToDisplay(){return this.valueFormatted??this.value}getDeferLoadingCellRenderer(){const{beans:e,column:t}=this,{userCompFactory:i,ctrlsSvc:s,eventSvc:o}=e,r=t.getColDef(),n=this.createCellRendererParams();n.deferRender=!0;const a=mr(i,r,n);if(s.getGridBodyCtrl()?.scrollFeature?.isScrolling()){let e;const t=new ko(t=>{e=t}),[i]=this.addManagedListeners(o,{bodyScrollEnd:()=>{e(),i()}});return{loadingComp:a,onReady:t}}return{loadingComp:a,onReady:ko.resolve()}}showValue(e,t){const{beans:i,column:s,rowNode:o,rangeFeature:r}=this,{userCompFactory:n}=i;let a,l=this.getValueToDisplay();const d=o.stub&&null==o.groupData?.[s.getId()],c=s.getColDef();if(d||this.isCellRenderer()){const e=this.createCellRendererParams();a=!d||$s(s)?gr(n,c,e):mr(n,c,e)}if(!a&&!d&&i.findSvc?.isMatch(o,s)){const e=this.createCellRendererParams();a=gr(n,{...s.getColDef(),cellRenderer:"agFindCellRenderer"},e)}if(this.hasEdit&&this.editSvc.isBatchEditing()&&this.editSvc.isRowEditing(o,{checkSiblings:!0})){const e=this.editSvc.prepDetailsDuringBatch(this,{compDetails:a,valueToDisplay:l});e&&(e.compDetails?a=e.compDetails:e.valueToDisplay&&(l=e.valueToDisplay))}this.comp.setRenderDetails(a,l,e),this.customRowDragComp?.refreshVisibility(),!t&&r&&Ye(i,()=>r?.refreshRangeStyleAndHandle()),this.rowResizeFeature?.refreshRowResizer()}setupControlComps(){const e=this.column.getColDef();this.includeSelection=this.isIncludeControl(this.isCheckboxSelection(e),!0),this.includeRowDrag=this.isIncludeControl(e.rowDrag),this.includeDndSource=this.isIncludeControl(e.dndSource),this.comp.setIncludeSelection(this.includeSelection),this.comp.setIncludeDndSource(this.includeDndSource),this.comp.setIncludeRowDrag(this.includeRowDrag)}isForceWrapper(){return this.beans.gos.get("enableCellTextSelection")||this.column.isAutoHeight()}getCellValueClass(){let e="";return"agCheckboxCellRenderer"===this.column.getColDef().cellRenderer&&(e=" ag-allow-overflow"),`ag-cell-value${e}`}isIncludeControl(e,t=!1){return(null==this.rowNode.rowPinned||t&&Dp(this.rowNode))&&!!e}isCheckboxSelection(e){const{rowSelection:t,groupDisplayType:i}=this.beans.gridOptions,s=$i(t),o=Ks(this.column);return("custom"!==i||"selectionColumn"===s||!o)&&(e.checkboxSelection||o&&"object"==typeof t&&ji(t))}refreshShouldDestroy(){const e=this.column.getColDef(),t=this.includeSelection!=this.isIncludeControl(this.isCheckboxSelection(e),!0),i=this.includeRowDrag!=this.isIncludeControl(e.rowDrag),s=this.includeDndSource!=this.isIncludeControl(e.dndSource),o=this.isAutoHeight!=this.column.isAutoHeight();return t||i||s||o}onPopupEditorClosed(){const{editSvc:e}=this.beans;e?.isEditing(this,{withOpenEditor:!0})&&e?.stopEditing(this,{source:e?.isBatchEditing()?"ui":"api"})}stopEditing(e=!1){const{editSvc:t}=this.beans;return t?.stopEditing(this,{cancel:e,source:t?.isBatchEditing()?"ui":"api"})??!1}createCellRendererParams(){const{value:e,valueFormatted:t,column:i,rowNode:s,comp:o,eGui:r,beans:{valueSvc:n,gos:a,editSvc:l}}=this;return ms(a,{value:e,valueFormatted:t,getValue:()=>n.getValueForDisplay({column:i,node:s,from:"edit"}).value,setValue:e=>l?.setDataValue({rowNode:s,column:i},e)||s.setDataValue(i,e),formatValue:this.formatValue.bind(this),data:s.data,node:s,pinned:i.getPinned(),colDef:i.getColDef(),column:i,refreshCell:this.refreshCell.bind(this),eGridCell:r,eParentOfValue:o.getParentOfValue(),registerRowDragger:(e,t,i,s)=>this.registerRowDragger(e,t,s),setTooltip:(e,t)=>{a.assertModuleRegistered("Tooltip",3),this.tooltipFeature&&this.disableTooltipFeature(),this.enableTooltipFeature(e,t),this.tooltipFeature?.refreshTooltip()}})}onCellChanged(e){e.column===this.column&&this.refreshCell({})}refreshOrDestroyCell(e){if(this.refreshShouldDestroy()?this.rowCtrl?.recreateCell(this):this.refreshCell(e),this.hasEdit&&this.editCompDetails){const{editSvc:e,comp:t}=this;!t?.getCellEditor()&&e.isEditing(this,{withOpenEditor:!0})&&e.startEditing(this,{startedEdit:!1,source:"api",silent:!0})}}refreshCell({force:e,suppressFlash:t,newData:i}={}){const{editStyleFeature:s,customStyleFeature:o,rowCtrl:{rowEditStyleFeature:r},beans:{cellFlashSvc:n,filterManager:a},column:l,comp:d,suppressRefreshCell:c,tooltipFeature:u}=this;if(c)return;const{field:h,valueGetter:g,showRowGroup:p,enableCellChangeFlash:m}=l.getColDef(),f=e||null==h&&null==g&&null==p||i,C=!!d,v=this.updateAndFormatValue(C);if(C){if(f||v){this.showValue(!!i,!1);const e=a?.isSuppressFlashingCellsBecauseFiltering();!t&&!e&&m&&n?.flashCell(this),s?.applyCellStyles?.(),o?.applyUserStyles(),o?.applyClassesFromColDef(),r?.applyRowStyles(),this.checkFormulaError()}u?.refreshTooltip(),o?.applyCellClassRules()}}isCellEditable(){return this.column.isCellEditable(this.rowNode)}formatValue(e){return this.callValueFormatter(e)??e}callValueFormatter(e){return this.beans.valueSvc.formatValue(this.column,this.rowNode,e)}updateAndFormatValue(e){const t=this.value,i=this.valueFormatted,{value:s,valueFormatted:o}=this.beans.valueSvc.getValueForDisplay({column:this.column,node:this.rowNode,includeValueFormatted:!0,from:"edit"});return this.value=s,this.valueFormatted=o,!e||(!this.valuesAreEqual(t,this.value)||this.valueFormatted!=i)}valuesAreEqual(e,t){const i=this.column.getColDef();return i.equals?i.equals(e,t):e===t}addDomData(e){const t=this.eGui;Di(this.beans.gos,t,Hl,this),e.addDestroyFunc(()=>Di(this.beans.gos,t,Hl,null))}createEvent(e,t){const{rowNode:i,column:s,value:o,beans:r}=this;return function(e,t,i,{rowNode:s,column:o},r){return ms(e.gos,{type:i,node:s,data:s.data,value:r,column:o,colDef:o.getColDef(),rowPinned:s.rowPinned,event:t,rowIndex:s.rowIndex})}(r,e,t,{rowNode:i,column:s},o)}processCharacter(e){this.keyboardListener?.processCharacter(e)}onKeyDown(e){this.keyboardListener?.onKeyDown(e)}onMouseEvent(e,t){this.mouseListener?.onMouseEvent(e,t)}getColSpanningList(){return this.positionFeature?.getColSpanningList()??[]}onLeftChanged(){this.comp&&this.positionFeature?.onLeftChanged()}onDisplayedColumnsChanged(){this.eGui&&(this.refreshAriaColIndex(),this.refreshFirstAndLastStyles())}refreshFirstAndLastStyles(){const{comp:e,column:t,beans:i}=this;ra(e,t,i.visibleCols)}refreshAriaColIndex(){const e=this.beans.visibleCols.getAriaColIndex(this.column);ie(this.eGui,e)}onWidthChanged(){return this.positionFeature?.onWidthChanged()}getRowPosition(){const{rowIndex:e,rowPinned:t}=this.cellPosition;return{rowIndex:e,rowPinned:t}}updateRangeBordersIfRangeCount(){this.comp&&this.rangeFeature?.updateRangeBordersIfRangeCount()}onCellSelectionChanged(){this.comp&&this.rangeFeature?.onCellSelectionChanged()}isRangeSelectionEnabled(){return null!=this.rangeFeature}focusCell(e=!1,t){const i=this.editSvc?.allowedFocusTargetOnValidation(this);i&&i!==this||this.beans.focusSvc.setFocusedCell({...this.getFocusedCellPosition(),forceBrowserFocus:e,sourceEvent:t})}restoreFocus(e=!1){const{beans:{editSvc:t,focusSvc:i},comp:s}=this;if(!s||t?.isEditing(this)||!this.isCellFocused()||!i.shouldTakeFocus())return;const o=()=>{if(!this.isAlive())return;const e=s.getFocusableElement();this.isCellFocused()&&e.focus({preventScroll:!0})};e?setTimeout(o,0):o()}onRowIndexChanged(){this.createCellPosition(),this.onCellFocused(),this.restoreFocus(),this.rangeFeature?.onCellSelectionChanged(),this.rowResizeFeature?.refreshRowResizer()}onSuppressCellFocusChanged(e){const t=this.eGui;t&&($s(this.column)&&(e=!0),Ke(t,"tabindex",e?void 0:-1))}onFirstRightPinnedChanged(){if(!this.comp)return;const e=this.column.isFirstRightPinned();this.comp.toggleCss("ag-cell-first-right-pinned",e)}onLastLeftPinnedChanged(){if(!this.comp)return;const e=this.column.isLastLeftPinned();this.comp.toggleCss("ag-cell-last-left-pinned",e)}checkCellFocused(){return this.beans.focusSvc.isCellFocused(this.cellPosition)}isCellFocused(){const e=this.checkCellFocused();return this.hasBeenFocused||(this.hasBeenFocused=e),e}setupFocus(){this.restoreFocus(!0),this.onCellFocused(this.focusEventWhileNotReady??void 0)}onCellFocused(e){const{beans:t}=this;if(kn(t))return;if(!this.comp)return void(e&&(this.focusEventWhileNotReady=e));const i=this.isCellFocused(),s=t.editSvc?.isEditing(this)??!1;if(this.comp.toggleCss("ag-cell-focus",i),i&&(e?.forceBrowserFocus||!this.hasBrowserFocus()&&this.beans.focusSvc.shouldTakeFocus())){let i=this.comp.getFocusableElement();if(s){const e=rn(i,null,!0);e.length&&(i=e[0])}const o=!e||e.preventScrollOnBrowserFocus;i.focus({preventScroll:o}),$e(t,i)}i&&this.focusEventWhileNotReady&&(this.focusEventWhileNotReady=null),i&&e&&this.rowCtrl.announceDescription()}createCellPosition(){const{rowIndex:e,rowPinned:t}=this.rowNode;this.cellPosition={rowIndex:e,rowPinned:m(t),column:this.column}}applyStaticCssClasses(){const{comp:e}=this;e.toggleCss("ag-cell",!0),e.toggleCss("ag-cell-not-inline-editing",!0);const t=1==this.column.isAutoHeight();e.toggleCss("ag-cell-auto-height",t),e.toggleCss("ag-cell-normal-height",!t)}onColumnHover(){this.beans.colHover?.onCellColumnHover(this.column,this.comp)}onColDefChanged(){this.comp&&(this.column.isTooltipEnabled()?(this.disableTooltipFeature(),this.enableTooltipFeature()):this.disableTooltipFeature(),this.setWrapText(),this.editSvc?.isEditing(this)?this.editSvc?.handleColDefChanged(this):this.refreshOrDestroyCell({force:!0,suppressFlash:!0}))}setWrapText(){const e=1==this.column.getColDef().wrapText;this.comp.toggleCss("ag-cell-wrap-text",e)}dispatchCellContextMenuEvent(e){const t=this.column.getColDef(),i=this.createEvent(e,"cellContextMenu"),{beans:s}=this;s.eventSvc.dispatchEvent(i),t.onCellContextMenu&&window.setTimeout(()=>{s.frameworkOverrides.wrapOutgoing(()=>{t.onCellContextMenu(i)})},0)}getCellRenderer(){return this.comp?.getCellRenderer()??null}destroy(){this.onCompAttachedFuncs=[],this.onEditorAttachedFuncs=[],this.isCellFocused()&&this.hasBrowserFocus()&&this.beans.focusSvc.attemptToRecoverFocus(),super.destroy()}hasBrowserFocus(){return this.eGui?.contains(A(this.beans))??!1}createSelectionCheckbox(){const e=this.beans.selectionSvc?.createCheckboxSelectionComponent();if(e)return this.beans.context.createBean(e),e.init({rowNode:this.rowNode,column:this.column}),e}createDndSource(){const e=this.beans.registry.createDynamicBean("dndSourceComp",!1,this.rowNode,this.column,this.eGui);return e&&this.beans.context.createBean(e),e}registerRowDragger(e,t,i){if(this.customRowDragComp)return void this.customRowDragComp.setDragElement(e,t);const s=this.createRowDragComp(e,t,i);s&&(this.customRowDragComp=s,this.addDestroyFunc(()=>{this.beans.context.destroyBean(s),this.customRowDragComp=null}),s.refreshVisibility())}createRowDragComp(e,t,i){const s=this.beans.rowDragSvc?.createRowDragCompForCell(this.rowNode,this.column,()=>this.value,e,t,i);if(s)return this.beans.context.createBean(s),s}cellEditorAttached(){for(const e of this.onEditorAttachedFuncs)e();this.onEditorAttachedFuncs=[]}setFocusedCellPosition(e){}getFocusedCellPosition(){return this.cellPosition}refreshAriaRowIndex(){}getRootElement(){return this.eGui}};function Bp(e,t,i,s,o,r){if(null==i&&null==t)return;const n={},a={},l=(e,t)=>{for(const i of e.split(" "))""!=i.trim()&&t(i)};if(i){const t=Object.keys(i);for(let o=0;o{c?n[e]=!0:a[e]=!0})}}if(t&&r)for(const e of Object.keys(t))l(e,e=>{n[e]||(a[e]=!0)});r&&Object.keys(a).forEach(r),Object.keys(n).forEach(o)}function Vp(e){if(e.group)return e.level;const t=e.parent;return t?t.level+1:0}var _p=0,Hp=class extends wt{constructor(e,t,i,s,o){super(),this.rowNode=e,this.useAnimationFrameForCreate=s,this.printLayout=o,this.focusEventWhileNotReady=null,this.allRowGuis=[],this.active=!0,this.centerCellCtrls={list:[],map:{}},this.leftCellCtrls={list:[],map:{}},this.rightCellCtrls={list:[],map:{}},this.slideInAnimation={left:!1,center:!1,right:!1,fullWidth:!1},this.fadeInAnimation={left:!1,center:!1,right:!1,fullWidth:!1},this.rowDragComps=[],this.lastMouseDownOnDragger=!1,this.emptyStyle={},this.updateColumnListsPending=!1,this.rowId=null,this.businessKey=null,this.beans=t,this.gos=t.gos,this.paginationPage=t.pagination?.getCurrentPage()??0,this.suppressRowTransform=this.gos.get("suppressRowTransform"),this.instanceId=e.id+"-"+_p++,this.rowId=R(e.id),this.initRowBusinessKey(),this.rowFocused=t.focusSvc.isRowFocused(this.rowNode.rowIndex,this.rowNode.rowPinned),this.rowLevel=Vp(this.rowNode),this.setRowType(),this.setAnimateFlags(i),this.rowStyles=this.processStylesFromGridOptions(),this.rowEditStyleFeature=t.editSvc?.createRowStyleFeature(this),this.addListeners()}initRowBusinessKey(){this.businessKeyForNodeFunc=this.gos.get("getBusinessKeyForNode"),this.updateRowBusinessKey()}updateRowBusinessKey(){if("function"!=typeof this.businessKeyForNodeFunc)return;const e=this.businessKeyForNodeFunc(this.rowNode);this.businessKey=R(e)}updateGui(e,t){"left"===e?this.leftGui=t:"right"===e?this.rightGui=t:"fullWidth"===e?this.fullWidthGui=t:this.centerGui=t}setComp(e,t,i,s){const{context:o,rowRenderer:r}=this.beans,n={rowComp:e,element:t,containerType:i,compBean:s=ta(this,o,s)};this.allRowGuis.push(n),this.updateGui(i,n),this.initialiseRowComp(n);const a=this.rowNode,l="FullWidthLoading"===this.rowType||a.stub,d=!a.data&&"infinite"===this.beans.rowModel.getType();l||d||a.rowPinned||r.dispatchFirstDataRenderedEvent(),this.setupFocus()}unsetComp(e){this.allRowGuis=this.allRowGuis.filter(t=>t.containerType!==e),this.updateGui(e,void 0)}isCacheable(){return"FullWidthDetail"===this.rowType&&this.gos.get("keepDetailRows")}setCached(e){const t=e?"none":"";for(const e of this.allRowGuis)e.element.style.display=t}initialiseRowComp(e){const t=this.gos;this.onSuppressCellFocusChanged(this.beans.gos.get("suppressCellFocus")),this.listenOnDomOrder(e),this.onRowHeightChanged(e),this.updateRowIndexes(e),this.setFocusedClasses(e),this.setStylesFromGridOptions(!1,e),Fi(t)&&this.rowNode.selectable&&this.onRowSelected(e),this.updateColumnLists(!this.useAnimationFrameForCreate);const i=e.rowComp,s=this.getInitialRowClasses(e.containerType);for(const e of s)i.toggleCss(e,!0);this.executeSlideAndFadeAnimations(e),this.rowNode.group&&Y(e.element,1==this.rowNode.expanded),this.setRowCompRowId(i),this.setRowCompRowBusinessKey(i),Di(t,e.element,Wl,this),e.compBean.addDestroyFunc(()=>Di(t,e.element,Wl,null)),this.useAnimationFrameForCreate?this.beans.animationFrameSvc.createTask(this.addHoverFunctionality.bind(this,e),this.rowNode.rowIndex,"p2",!1):this.addHoverFunctionality(e),this.isFullWidth()&&this.setupFullWidth(e),t.get("rowDragEntireRow")&&this.addRowDraggerToRow(e),this.useAnimationFrameForCreate&&this.beans.animationFrameSvc.addDestroyTask(()=>{this.isAlive()&&e.rowComp.toggleCss("ag-after-created",!0)}),this.executeProcessRowPostCreateFunc()}setRowCompRowBusinessKey(e){null!=this.businessKey&&e.setRowBusinessKey(this.businessKey)}setRowCompRowId(e){const t=R(this.rowNode.id);this.rowId=t,null!=t&&e.setRowId(t)}executeSlideAndFadeAnimations(e){const{containerType:t}=e;this.slideInAnimation[t]&&(Ft(()=>{this.onTopChanged()}),this.slideInAnimation[t]=!1);this.fadeInAnimation[t]&&(Ft(()=>{e.rowComp.toggleCss("ag-opacity-zero",!1)}),this.fadeInAnimation[t]=!1)}addRowDraggerToRow(e){const t=this.beans.rowDragSvc?.createRowDragCompForRow(this.rowNode,e.element);if(!t)return;const i=this.createBean(t,this.beans.context);this.rowDragComps.push(i),e.compBean.addDestroyFunc(()=>{this.rowDragComps=this.rowDragComps.filter(e=>e!==i),this.rowEditStyleFeature=this.destroyBean(this.rowEditStyleFeature,this.beans.context),this.destroyBean(i,this.beans.context)})}setupFullWidth(e){const t=this.getPinnedForContainer(e.containerType),i=this.createFullWidthCompDetails(e.element,t);e.rowComp.showFullWidth(i)}getFullWidthCellRenderers(){return this.gos.get("embedFullWidthRows")?this.allRowGuis.map(e=>e?.rowComp?.getFullWidthCellRenderer()):[this.fullWidthGui?.rowComp?.getFullWidthCellRenderer()]}executeProcessRowPostCreateFunc(){const e=this.gos.getCallback("processRowPostCreate");if(!e||!this.areAllContainersReady())return;e({eRow:this.centerGui.element,ePinnedLeftRow:this.leftGui?this.leftGui.element:void 0,ePinnedRightRow:this.rightGui?this.rightGui.element:void 0,node:this.rowNode,rowIndex:this.rowNode.rowIndex,addRenderedRowListener:this.addEventListener.bind(this)})}areAllContainersReady(){const{leftGui:e,centerGui:t,rightGui:i,beans:{visibleCols:s}}=this,o=!!e||!s.isPinningLeft(),r=!!t,n=!!i||!s.isPinningRight();return o&&r&&n}isNodeFullWidthCell(){if(this.rowNode.detail)return!0;const e=this.beans.gos.getCallback("isFullWidthRow");return!!e&&e({rowNode:this.rowNode})}setRowType(){const{rowNode:e,gos:t,beans:{colModel:i}}=this,s=e.stub&&!t.get("suppressServerSideFullWidthLoadingRow")&&!t.get("groupHideOpenParents"),o=this.isNodeFullWidthCell(),r=t.get("masterDetail")&&e.detail,n=_i(t,e,i.isPivotMode());this.rowType=s?"FullWidthLoading":r?"FullWidthDetail":o?"FullWidth":n?"FullWidthGroup":"Normal"}updateColumnLists(e=!1,t=!1){if(this.isFullWidth())return;const{animationFrameSvc:i}=this.beans;!i?.active||e||this.printLayout?this.updateColumnListsImpl(t):this.updateColumnListsPending||(i.createTask(()=>{this.active&&this.updateColumnListsImpl(!0)},this.rowNode.rowIndex,"p1",!1),this.updateColumnListsPending=!0)}getNewCellCtrl(e){const t=this.beans.rowSpanSvc?.isCellSpanning(e,this.rowNode);if(!t)return new Np(e,this.rowNode,this.beans,this)}isCorrectCtrlForSpan(e){return!this.beans.rowSpanSvc?.isCellSpanning(e.column,this.rowNode)}createCellCtrls(e,t,i=null){const s={list:[],map:{}},o=(e,t,i)=>{null!=i?s.list.splice(i,0,t):s.list.push(t),s.map[e]=t},r=[];for(const i of t){const t=i.getInstanceId();let s=e.map[t];s&&!this.isCorrectCtrlForSpan(s)&&(s.destroy(),s=void 0),s||(s=this.getNewCellCtrl(i)),s&&o(t,s)}for(const t of e.list){const e=t.column.getInstanceId();if(null!=s.map[e])continue;!this.isCellEligibleToBeRemoved(t,i)?r.push([e,t]):t.destroy()}if(r.length)for(const[e,t]of r){const i=s.list.findIndex(e=>e.column.getLeft()>t.column.getLeft()),r=-1===i?void 0:Math.max(i-1,0);o(e,t,r)}const{focusSvc:n,visibleCols:a}=this.beans,l=n.getFocusedCell();if(l&&l.column.getPinned()==i){const e=l.column.getInstanceId();if(!s.map[e]&&a.allCols.includes(l.column)){const t=this.createFocusedCellCtrl();if(t){const i=s.list.findIndex(e=>e.column.getLeft()>t.column.getLeft()),r=-1===i?void 0:Math.max(i-1,0);o(e,t,r)}}}return s}createFocusedCellCtrl(){const{focusSvc:e,rowSpanSvc:t}=this.beans,i=e.getFocusedCell();if(!i)return;const s=t?.getCellSpan(i.column,this.rowNode);if(s){if(s.firstNode!==this.rowNode||!s.doesSpanContain(i))return}else if(!e.isRowFocused(this.rowNode.rowIndex,this.rowNode.rowPinned))return;return this.getNewCellCtrl(i.column)}updateColumnListsImpl(e){this.updateColumnListsPending=!1,this.createAllCellCtrls(),this.setCellCtrls(e)}setCellCtrls(e){for(const t of this.allRowGuis){const i=this.getCellCtrlsForContainer(t.containerType);t.rowComp.setCellCtrls(i,e)}}getCellCtrlsForContainer(e){switch(e){case"left":return this.leftCellCtrls.list;case"right":return this.rightCellCtrls.list;case"fullWidth":return[];case"center":return this.centerCellCtrls.list}}createAllCellCtrls(){const e=this.beans.colViewport,t=this.beans.visibleCols;if(this.printLayout)this.centerCellCtrls=this.createCellCtrls(this.centerCellCtrls,t.allCols),this.leftCellCtrls={list:[],map:{}},this.rightCellCtrls={list:[],map:{}};else{const i=e.getColsWithinViewport(this.rowNode);this.centerCellCtrls=this.createCellCtrls(this.centerCellCtrls,i);const s=t.getLeftColsForRow(this.rowNode);this.leftCellCtrls=this.createCellCtrls(this.leftCellCtrls,s,"left");const o=t.getRightColsForRow(this.rowNode);this.rightCellCtrls=this.createCellCtrls(this.rightCellCtrls,o,"right")}}isCellEligibleToBeRemoved(e,t){const i=!0,{column:s}=e;if(s.getPinned()!=t)return i;if(!this.isCorrectCtrlForSpan(e))return i;const{visibleCols:o,editSvc:r}=this.beans,n=r?.isEditing(e),a=e.isCellFocused();if(n||a){return!(o.allCols.indexOf(s)>=0)&&i}return i}getDomOrder(){return this.gos.get("ensureDomOrder")||xi(this.gos,"print")}listenOnDomOrder(e){e.compBean.addManagedPropertyListeners(["domLayout","ensureDomOrder"],()=>{e.rowComp.setDomOrder(this.getDomOrder())})}setAnimateFlags(e){if(this.rowNode.sticky||!e)return;const t=f(this.rowNode.oldRowTop),{visibleCols:i}=this.beans,s=i.isPinningLeft(),o=i.isPinningRight();if(t){const{slideInAnimation:e}=this;if(this.isFullWidth()&&!this.gos.get("embedFullWidthRows"))return void(e.fullWidth=!0);e.center=!0,e.left=s,e.right=o}else{const{fadeInAnimation:e}=this;if(this.isFullWidth()&&!this.gos.get("embedFullWidthRows"))return void(e.fullWidth=!0);e.center=!0,e.left=s,e.right=o}}isFullWidth(){return"Normal"!==this.rowType}refreshFullWidth(){const e=(e,t)=>!e||e.rowComp.refreshFullWidth(()=>this.createFullWidthCompDetails(e.element,t).params),t=e(this.fullWidthGui,null),i=e(this.centerGui,null),s=e(this.leftGui,"left"),o=e(this.rightGui,"right");return t&&i&&s&&o}addListeners(){const{beans:e,gos:t,rowNode:i}=this,{expansionSvc:s,eventSvc:o,context:r,rowSpanSvc:n}=e;this.addManagedListeners(this.rowNode,{heightChanged:()=>this.onRowHeightChanged(),rowSelected:()=>this.onRowSelected(),rowIndexChanged:this.onRowIndexChanged.bind(this),topChanged:this.onTopChanged.bind(this),...s?.getRowExpandedListeners(this)??{}}),i.detail&&this.addManagedListeners(i.parent,{dataChanged:this.onRowNodeDataChanged.bind(this)}),this.addManagedListeners(i,{dataChanged:this.onRowNodeDataChanged.bind(this),cellChanged:this.postProcessCss.bind(this),rowHighlightChanged:this.onRowNodeHighlightChanged.bind(this),draggingChanged:this.postProcessRowDragging.bind(this),uiLevelChanged:this.onUiLevelChanged.bind(this),rowPinned:this.onRowPinned.bind(this)}),this.addManagedListeners(o,{paginationPixelOffsetChanged:this.onPaginationPixelOffsetChanged.bind(this),heightScaleChanged:this.onTopChanged.bind(this),displayedColumnsChanged:this.onDisplayedColumnsChanged.bind(this),virtualColumnsChanged:this.onVirtualColumnsChanged.bind(this),cellFocused:this.onCellFocusChanged.bind(this),cellFocusCleared:this.onCellFocusChanged.bind(this),paginationChanged:this.onPaginationChanged.bind(this),modelUpdated:this.refreshFirstAndLastRowStyles.bind(this),columnMoved:()=>this.updateColumnLists()}),n&&this.addManagedListeners(n,{spannedCellsUpdated:({pinned:e})=>{e&&!i.rowPinned||this.updateColumnLists()}}),this.addDestroyFunc(()=>{this.rowDragComps=this.destroyBeans(this.rowDragComps,r),this.tooltipFeature=this.destroyBean(this.tooltipFeature,r),this.rowEditStyleFeature=this.destroyBean(this.rowEditStyleFeature,r)}),this.addManagedPropertyListeners(["rowStyle","getRowStyle","rowClass","getRowClass","rowClassRules"],this.postProcessCss.bind(this)),this.addManagedPropertyListener("rowDragEntireRow",()=>{if(t.get("rowDragEntireRow"))for(const e of this.allRowGuis)this.addRowDraggerToRow(e);else this.rowDragComps=this.destroyBeans(this.rowDragComps,r)}),this.addListenersForCellComps()}addListenersForCellComps(){this.addManagedListeners(this.rowNode,{rowIndexChanged:()=>{for(const e of this.getAllCellCtrls())e.onRowIndexChanged()},cellChanged:e=>{for(const t of this.getAllCellCtrls())t.onCellChanged(e)}})}onRowPinned(){for(const e of this.allRowGuis)e.rowComp.toggleCss("ag-row-pinned-source",!!this.rowNode.pinnedSibling)}onRowNodeDataChanged(e){this.refreshRow({suppressFlash:!e.update,newData:!e.update})}refreshRow(e){if(this.isFullWidth()!==!!this.isNodeFullWidthCell())this.beans.rowRenderer.redrawRow(this.rowNode);else{if(this.isFullWidth()){return void(this.refreshFullWidth()||this.beans.rowRenderer.redrawRow(this.rowNode))}for(const t of this.getAllCellCtrls())t.refreshCell(e);for(const e of this.allRowGuis)this.setRowCompRowId(e.rowComp),this.updateRowBusinessKey(),this.setRowCompRowBusinessKey(e.rowComp);this.onRowSelected(),this.postProcessCss()}}postProcessCss(){this.setStylesFromGridOptions(!0),this.postProcessClassesFromGridOptions(),this.postProcessRowClassRules(),this.rowEditStyleFeature?.applyRowStyles(),this.postProcessRowDragging()}onRowNodeHighlightChanged(){const e=this.beans.rowDropHighlightSvc,t=e?.row===this.rowNode?e.position:"none",i="above"===t,s="inside"===t,o="below"===t,r="none"!==t,n=i||o,a=this.rowNode.uiLevel,l=n&&a>0,d=l?a.toString():"0";for(const e of this.allRowGuis){const t=e.rowComp;t.toggleCss("ag-row-highlight-above",i),t.toggleCss("ag-row-highlight-inside",s),t.toggleCss("ag-row-highlight-below",o),t.toggleCss("ag-row-highlight-indent",l),r?e.element.style.setProperty("--ag-row-highlight-level",d):e.element.style.removeProperty("--ag-row-highlight-level")}}postProcessRowDragging(){const e=this.rowNode.dragging;for(const t of this.allRowGuis)t.rowComp.toggleCss("ag-row-dragging",e)}onDisplayedColumnsChanged(){this.updateColumnLists(!0),this.beans.rowAutoHeight?.requestCheckAutoHeight()}onVirtualColumnsChanged(){this.updateColumnLists(!1,!0)}getRowPosition(){return{rowPinned:m(this.rowNode.rowPinned),rowIndex:this.rowNode.rowIndex}}onKeyboardNavigate(e){const t=this.findFullWidthInfoForEvent(e);if(!t)return;const{rowGui:i,column:s}=t;if(!(i.element===e.target))return;const o=this.rowNode,{focusSvc:r,navigation:n}=this.beans,a=r.getFocusedCell(),l={rowIndex:o.rowIndex,rowPinned:o.rowPinned,column:a?.column??s};n?.navigateToNextCell(e,e.key,l,!0),e.preventDefault()}onTabKeyDown(e){if(e.defaultPrevented||gn(e))return;const t=this.allRowGuis.find(t=>t.element.contains(e.target)),i=t?t.element:null,s=i===e.target,o=A(this.beans);let r=!1;i&&o&&(r=i.contains(o)&&o.classList.contains("ag-cell"));let n=null;s||r||(n=an(this.beans,i,!1,e.shiftKey)),(this.isFullWidth()&&s||!n)&&this.beans.navigation?.onTabKeyDown(this,e)}getFullWidthElement(){return this.fullWidthGui?this.fullWidthGui.element:null}getRowYPosition(){const e=this.allRowGuis.find(e=>ke(e.element))?.element;return e?e.getBoundingClientRect().top:0}onSuppressCellFocusChanged(e){const t=this.isFullWidth()&&e?void 0:this.gos.get("tabIndex");for(const e of this.allRowGuis)Ke(e.element,"tabindex",t)}setupFocus(){this.isFullWidth()&&(this.restoreFullWidthFocus(!0),this.onFullWidthRowFocused(this.focusEventWhileNotReady??void 0))}restoreFullWidthFocus(e=!1){const{focusSvc:t,editSvc:i}=this.beans;if(i?.isEditing(this))return;if(!t.isRowFocused(this.rowNode.rowIndex,this.rowNode.rowPinned)||!t.shouldTakeFocus())return;const s=this.getFullWidthRowGuiForFocus();if(!s)return;const o=()=>{this.isAlive()&&t.isRowFocused(this.rowNode.rowIndex,this.rowNode.rowPinned)&&s.element.focus({preventScroll:!0})};e?setTimeout(o,0):o()}getFullWidthRowGuiForFocus(e){if(this.fullWidthGui)return this.fullWidthGui;const t=this.beans.focusSvc.getFocusedCell(),i=this.beans.colModel.getCol(e?.column??t?.column);if(!i)return;const s=i?.pinned;return"right"===s?this.rightGui:"left"===s?this.leftGui:this.centerGui}setFullWidthRowFocusedClass(e,t){this.forEachGui(void 0,i=>{i.element.classList.toggle("ag-full-width-focus",t&&i===e)})}onFullWidthRowFocused(e){const{focusSvc:t}=this.beans;if(!(this.isFullWidth()&&t.isRowFocused(this.rowNode.rowIndex,this.rowNode.rowPinned)))return void this.setFullWidthRowFocusedClass(void 0,!1);const i=this.getFullWidthRowGuiForFocus(e);if(!i)return e&&(this.focusEventWhileNotReady=e),void this.setFullWidthRowFocusedClass(void 0,!1);this.setFullWidthRowFocusedClass(i,!0),this.focusEventWhileNotReady=null,e?.forceBrowserFocus&&i.element.focus({preventScroll:!0})}recreateCell(e){this.centerCellCtrls=this.removeCellCtrl(this.centerCellCtrls,e),this.leftCellCtrls=this.removeCellCtrl(this.leftCellCtrls,e),this.rightCellCtrls=this.removeCellCtrl(this.rightCellCtrls,e),e.destroy(),this.updateColumnLists()}removeCellCtrl(e,t){const i={list:[],map:{}};for(const s of e.list)s!==t&&(i.list.push(s),i.map[s.column.getInstanceId()]=s);return i}onMouseEvent(e,t){switch(e){case"dblclick":this.onRowDblClick(t);break;case"click":this.onRowClick(t);break;case"pointerdown":case"touchstart":case"mousedown":this.onRowMouseDown(t)}}createRowEvent(e,t){const{rowNode:i}=this;return ms(this.gos,{type:e,node:i,data:i.data,rowIndex:i.rowIndex,rowPinned:i.rowPinned,event:t})}createRowEventWithSource(e,t){const i=this.createRowEvent(e,t);return i.source=this,i}onRowDblClick(e){if(gn(e))return;const t=this.createRowEventWithSource("rowDoubleClicked",e);t.isEventHandlingSuppressed=this.isSuppressMouseEvent(e),this.beans.eventSvc.dispatchEvent(t)}findFullWidthInfoForEvent(e){if(!e)return;const t=this.findFullWidthRowGui(e.target),i=this.getColumnForFullWidth(t);return t&&i?{rowGui:t,column:i}:void 0}findFullWidthRowGui(e){return this.allRowGuis.find(t=>t.element.contains(e))}getColumnForFullWidth(e){const{visibleCols:t}=this.beans;switch(e?.containerType){case"center":return t.centerCols[0];case"left":return t.leftCols[0];case"right":return t.rightCols[0];default:return t.allCols[0]}}onRowMouseDown(e){if(this.lastMouseDownOnDragger=ye(e.target,"ag-row-drag",3),!this.isFullWidth()||this.isSuppressMouseEvent(e))return;const{rangeSvc:t,focusSvc:i}=this.beans;t?.removeAllCellRanges();const s=this.findFullWidthInfoForEvent(e);if(!s)return;const{rowGui:o,column:r}=s,n=o.element,a=e.target,l=this.rowNode;let d=e.defaultPrevented||jr();n&&n.contains(a)&&Ce(a)&&(d=!1),i.setFocusedCell({rowIndex:l.rowIndex,column:r,rowPinned:l.rowPinned,forceBrowserFocus:d})}isSuppressMouseEvent(e){const{gos:t,rowNode:i}=this;if(this.isFullWidth()){const s=this.findFullWidthRowGui(e.target);return function(e,t,i,s){const o=t?.suppressMouseEventHandling;return Vl(e,void 0,i,s,o)}(t,s?.rowComp.getFullWidthCellRendererParams(),i,e)}const s=zl(t,e.target);return null!=s&&Bl(t,s.column,i,e)}onRowClick(e){if(gn(e)||this.lastMouseDownOnDragger)return;const t=this.isSuppressMouseEvent(e),{eventSvc:i,selectionSvc:s}=this.beans,o=this.createRowEventWithSource("rowClicked",e);o.isEventHandlingSuppressed=t,i.dispatchEvent(o),t||s?.handleSelectionEvent(e,this.rowNode,"rowClicked")}setupDetailRowAutoHeight(e){"FullWidthDetail"===this.rowType&&this.beans.masterDetailSvc?.setupDetailRowAutoHeight(this,e)}createFullWidthCompDetails(e,t){const{gos:i,rowNode:s}=this,o=ms(i,{fullWidth:!0,data:s.data,node:s,value:s.key,valueFormatted:s.key,eGridCell:e,eParentOfValue:e,pinned:t,addRenderedRowListener:this.addEventListener.bind(this),registerRowDragger:(e,t,i,s)=>this.addFullWidthRowDragging(e,t,i,s),setTooltip:(e,t)=>{i.assertModuleRegistered("Tooltip",3),this.setupFullWidthRowTooltip(e,t)}}),r=this.beans.userCompFactory;switch(this.rowType){case"FullWidthDetail":return function(e,t){return e.getCompDetailsFromGridOptions(ur,"agDetailCellRenderer",t,!0)}(r,o);case"FullWidthGroup":{const{value:e,valueFormatted:t}=this.beans.valueSvc.getValueForDisplay({node:this.rowNode,includeValueFormatted:!0,from:"edit"});return o.value=e,o.valueFormatted=t,function(e,t){return e.getCompDetailsFromGridOptions(cr,"agGroupRowRenderer",t,!0)}(r,o)}case"FullWidthLoading":return function(e,t){return e.getCompDetailsFromGridOptions(dr,"agLoadingCellRenderer",t,!0)}(r,o);default:return function(e,t){return e.getCompDetailsFromGridOptions(lr,void 0,t,!0)}(r,o)}}setupFullWidthRowTooltip(e,t){this.fullWidthGui&&(this.tooltipFeature=this.beans.tooltipSvc?.setupFullWidthRowTooltip(this.tooltipFeature,this,e,t))}addFullWidthRowDragging(e,t,i="",s){const{rowDragSvc:o,context:r}=this.beans;if(!o||!this.isFullWidth())return;const n=o.createRowDragComp(()=>i,this.rowNode,void 0,e,t,s);this.createBean(n,r),this.addDestroyFunc(()=>{this.destroyBean(n,r)})}onUiLevelChanged(){const e=Vp(this.rowNode);if(this.rowLevel!=e){const t="ag-row-level-"+e,i="ag-row-level-"+this.rowLevel;for(const e of this.allRowGuis)e.rowComp.toggleCss(t,!0),e.rowComp.toggleCss(i,!1)}this.rowLevel=e}isFirstRowOnPage(){return this.rowNode.rowIndex===this.beans.pageBounds.getFirstRow()}isLastRowOnPage(){return this.rowNode.rowIndex===this.beans.pageBounds.getLastRow()}refreshFirstAndLastRowStyles(){const e=this.isFirstRowOnPage(),t=this.isLastRowOnPage();if(this.firstRowOnPage!==e){this.firstRowOnPage=e;for(const t of this.allRowGuis)t.rowComp.toggleCss("ag-row-first",e)}if(this.lastRowOnPage!==t){this.lastRowOnPage=t;for(const e of this.allRowGuis)e.rowComp.toggleCss("ag-row-last",t)}}getAllCellCtrls(){if(0===this.leftCellCtrls.list.length&&0===this.rightCellCtrls.list.length)return this.centerCellCtrls.list;return[...this.centerCellCtrls.list,...this.leftCellCtrls.list,...this.rightCellCtrls.list]}postProcessClassesFromGridOptions(){const e=[];if(this.beans.rowStyleSvc?.processClassesFromGridOptions(e,this.rowNode),e.length)for(const t of e)for(const e of this.allRowGuis)e.rowComp.toggleCss(t,!0)}postProcessRowClassRules(){this.beans.rowStyleSvc?.processRowClassRules(this.rowNode,e=>{for(const t of this.allRowGuis)t.rowComp.toggleCss(e,!0)},e=>{for(const t of this.allRowGuis)t.rowComp.toggleCss(e,!1)})}setStylesFromGridOptions(e,t){e&&(this.rowStyles=this.processStylesFromGridOptions()),this.forEachGui(t,e=>e.rowComp.setUserStyles(this.rowStyles))}getPinnedForContainer(e){return"left"===e||"right"===e?e:null}getInitialRowClasses(e){const t=this.getPinnedForContainer(e),i=this.isFullWidth(),{rowNode:s,beans:o}=this,r=[];r.push("ag-row"),r.push(this.rowFocused?"ag-row-focus":"ag-row-no-focus"),this.fadeInAnimation[e]&&r.push("ag-opacity-zero"),r.push(s.rowIndex%2==0?"ag-row-even":"ag-row-odd"),s.isRowPinned()&&(r.push("ag-row-pinned"),o.pinnedRowModel?.isManual()&&r.push("ag-row-pinned-manual")),!s.isRowPinned()&&s.pinnedSibling&&r.push("ag-row-pinned-source"),s.isSelected()&&r.push("ag-row-selected"),s.footer&&r.push("ag-row-footer"),r.push("ag-row-level-"+this.rowLevel),s.stub&&r.push("ag-row-loading"),i&&r.push("ag-full-width-row"),o.expansionSvc?.addExpandedCss(r,s),s.dragging&&r.push("ag-row-dragging");const{rowStyleSvc:n}=o;return n&&(n.processClassesFromGridOptions(r,s),n.preProcessRowClassRules(r,s)),r.push(this.printLayout?"ag-row-position-relative":"ag-row-position-absolute"),this.isFirstRowOnPage()&&r.push("ag-row-first"),this.isLastRowOnPage()&&r.push("ag-row-last"),i&&("left"===t&&r.push("ag-cell-last-left-pinned"),"right"===t&&r.push("ag-cell-first-right-pinned")),r}processStylesFromGridOptions(){return this.beans.rowStyleSvc?.processStylesFromGridOptions(this.rowNode)??this.emptyStyle}onRowSelected(e){this.beans.selectionSvc?.onRowCtrlSelected(this,e=>{e!==this.centerGui&&e!==this.fullWidthGui||this.announceDescription()},e)}announceDescription(){this.beans.selectionSvc?.announceAriaRowSelection(this.rowNode)}addHoverFunctionality(e){if(!this.active)return;const{element:t,compBean:i}=e,{rowNode:s,beans:o,gos:r}=this;i.addManagedListeners(t,{pointerenter:e=>{"mouse"===e.pointerType&&s.dispatchRowEvent("mouseEnter")},pointerleave:e=>{"mouse"===e.pointerType&&s.dispatchRowEvent("mouseLeave")}}),i.addManagedListeners(s,{mouseEnter:()=>{o.dragSvc?.dragging||r.get("suppressRowHoverHighlight")||(t.classList.add("ag-row-hover"),s.setHovered(!0))},mouseLeave:()=>{this.resetHoveredStatus(t)}})}resetHoveredStatus(e){const t=e?[e]:this.allRowGuis.map(e=>e.element);for(const e of t)e.classList.remove("ag-row-hover");this.rowNode.setHovered(!1)}roundRowTopToBounds(e){const t=this.beans.ctrlsSvc.getScrollFeature().getApproximateVScollPosition(),i=this.applyPaginationOffset(t.top,!0)-100,s=this.applyPaginationOffset(t.bottom,!0)+100;return Math.min(Math.max(i,e),s)}forEachGui(e,t){if(e)t(e);else for(const e of this.allRowGuis)t(e)}isRowRendered(){return this.allRowGuis.length>0}onRowHeightChanged(e){if(null==this.rowNode.rowHeight)return;const t=this.rowNode.rowHeight,i=this.beans.environment.getDefaultRowHeight(),s=Ri(this.gos)?Mi(this.beans,this.rowNode).height:void 0,o=s?Math.min(i,s)-2+"px":void 0;this.forEachGui(e,e=>{e.element.style.height=`${t}px`,o&&e.element.style.setProperty("--ag-line-height",o)})}destroyFirstPass(e=!1){this.active=!1;const{rowNode:t}=this;if(!e&&Ii(this.gos)&&!t.sticky){if(null!=t.rowTop){const e=this.roundRowTopToBounds(t.rowTop);this.setRowTop(e)}else for(const e of this.allRowGuis)e.rowComp.toggleCss("ag-opacity-zero",!0)}this.fullWidthGui?.element.contains(A(this.beans))&&this.beans.focusSvc.attemptToRecoverFocus(),t.setHovered(!1);const i=this.createRowEvent("virtualRowRemoved");this.dispatchLocalEvent(i),this.beans.eventSvc.dispatchEvent(i),super.destroy()}destroySecondPass(){this.allRowGuis.length=0;const e=e=>{for(const t of e.list)t.destroy();return{list:[],map:{}}};this.centerCellCtrls=e(this.centerCellCtrls),this.leftCellCtrls=e(this.leftCellCtrls),this.rightCellCtrls=e(this.rightCellCtrls)}setFocusedClasses(e){this.forEachGui(e,e=>{e.rowComp.toggleCss("ag-row-focus",this.rowFocused),e.rowComp.toggleCss("ag-row-no-focus",!this.rowFocused)})}onCellFocusChanged(){const{focusSvc:e}=this.beans,t=e.isRowFocused(this.rowNode.rowIndex,this.rowNode.rowPinned);t!==this.rowFocused&&(this.rowFocused=t,this.setFocusedClasses())}onPaginationChanged(){const e=this.beans.pagination?.getCurrentPage()??0;this.paginationPage!==e&&(this.paginationPage=e,this.onTopChanged()),this.refreshFirstAndLastRowStyles()}onTopChanged(){this.setRowTop(this.rowNode.rowTop)}onPaginationPixelOffsetChanged(){this.onTopChanged()}applyPaginationOffset(e,t=!1){if(this.rowNode.isRowPinned()||this.rowNode.sticky)return e;return e+this.beans.pageBounds.getPixelOffset()*(t?1:-1)}setRowTop(e){if(!this.printLayout&&f(e)){const t=this.applyPaginationOffset(e),i=`${this.rowNode.isRowPinned()||this.rowNode.sticky?t:this.beans.rowContainerHeight.getRealPixelPosition(t)}px`;this.setRowTopStyle(i)}}getInitialRowTop(e){return this.suppressRowTransform?this.getInitialRowTopShared(e):void 0}getInitialTransform(e){return this.suppressRowTransform?void 0:`translateY(${this.getInitialRowTopShared(e)})`}getInitialRowTopShared(e){if(this.printLayout)return"";const t=this.rowNode;let i;if(t.sticky)i=t.stickyRowTop;else{const s=this.slideInAnimation[e]?this.roundRowTopToBounds(t.oldRowTop):t.rowTop,o=this.applyPaginationOffset(s);i=t.isRowPinned()?o:this.beans.rowContainerHeight.getRealPixelPosition(o)}return i+"px"}setRowTopStyle(e){for(const t of this.allRowGuis)this.suppressRowTransform?t.rowComp.setTop(e):t.rowComp.setTransform(`translateY(${e})`)}getCellCtrl(e,t=!1){let i=null;for(const t of this.getAllCellCtrls())t.column==e&&(i=t);if(null!=i||t)return i;for(const t of this.getAllCellCtrls())t?.getColSpanningList().indexOf(e)>=0&&(i=t);return i}onRowIndexChanged(){null!=this.rowNode.rowIndex&&(this.onCellFocusChanged(),this.updateRowIndexes(),this.postProcessCss())}updateRowIndexes(e){const t=this.rowNode.getRowIndexString();if(null===t)return;const i=(this.beans.ctrlsSvc.getHeaderRowContainerCtrl()?.getRowCount()??0)+(this.beans.filterManager?.getHeaderRowCount()??0),s=this.rowNode.rowIndex%2==0,o=i+this.rowNode.rowIndex+1;this.forEachGui(e,e=>{e.rowComp.setRowIndex(t),e.rowComp.toggleCss("ag-row-even",s),e.rowComp.toggleCss("ag-row-odd",!s),ee(e.element,o)})}};function zp(e){return e.ctrlsSvc.getScrollFeature().getVScrollPosition()}var Wp={moduleName:"KeyboardNavigation",version:ii,beans:[class extends wt{constructor(){super(),this.beanName="navigation",this.onPageDown=Pt(this.onPageDown,100),this.onPageUp=Pt(this.onPageUp,100)}postConstruct(){this.beans.ctrlsSvc.whenReady(this,e=>{this.gridBodyCon=e.gridBodyCtrl})}handlePageScrollingKey(e,t=!1){const i=e.key,s=e.altKey,o=e.ctrlKey||e.metaKey,r=!!this.beans.rangeSvc&&e.shiftKey,n=sc(this.gos,e);let a=!1;switch(i){case To.PAGE_HOME:case To.PAGE_END:o||s||(this.onHomeOrEndKey(i),a=!0);break;case To.LEFT:case To.RIGHT:case To.UP:case To.DOWN:if(!n)return!1;!o||s||r||(this.onCtrlUpDownLeftRight(i,n),a=!0);break;case To.PAGE_DOWN:case To.PAGE_UP:o||s||(a=this.handlePageUpDown(i,n,t))}return a&&e.preventDefault(),a}handlePageUpDown(e,t,i){return i&&(t=this.beans.focusSvc.getFocusedCell()),!!t&&(e===To.PAGE_UP?this.onPageUp(t):this.onPageDown(t),!0)}navigateTo({scrollIndex:e,scrollType:t,scrollColumn:i,focusIndex:s,focusColumn:o,isAsync:r,rowPinned:n}){const{scrollFeature:a}=this.gridBodyCon;f(i)&&!i.isPinned()&&a.ensureColumnVisible(i),f(e)&&a.ensureIndexVisible(e,t),r||a.ensureIndexVisible(s);const{focusSvc:l,rangeSvc:d}=this.beans;l.setFocusedCell({rowIndex:s,column:o,rowPinned:n,forceBrowserFocus:!0}),d?.setRangeToCell({rowIndex:s,rowPinned:n,column:o})}onPageDown(e){const t=this.beans,i=zp(t),s=this.getViewportHeight(),{pageBounds:o,rowModel:r,rowAutoHeight:n}=t,a=o.getPixelOffset(),l=i.top+s,d=r.getRowIndexAtPixel(l+a);n?.active?this.navigateToNextPageWithAutoHeight(e,d):this.navigateToNextPage(e,d)}onPageUp(e){const t=this.beans,i=zp(t),{pageBounds:s,rowModel:o,rowAutoHeight:r}=t,n=s.getPixelOffset(),a=i.top,l=o.getRowIndexAtPixel(a+n);r?.active?this.navigateToNextPageWithAutoHeight(e,l,!0):this.navigateToNextPage(e,l,!0)}navigateToNextPage(e,t,i=!1){const{pageBounds:s,rowModel:o}=this.beans,r=this.getViewportHeight(),n=s.getFirstRow(),a=s.getLastRow(),l=s.getPixelOffset(),d=o.getRow(e.rowIndex),c=i?d?.rowHeight-r-l:r-l,u=d?.rowTop+c;let h,g=o.getRowIndexAtPixel(u+l);if(g===e.rowIndex){const s=i?-1:1;t=g=e.rowIndex+s}i?(h="bottom",ga&&(g=a),t>a&&(t=a)),this.isRowTallerThanView(o.getRow(g))&&(t=g,h="top"),this.navigateTo({scrollIndex:t,scrollType:h,scrollColumn:null,focusIndex:g,focusColumn:e.column})}navigateToNextPageWithAutoHeight(e,t,i=!1){this.navigateTo({scrollIndex:t,scrollType:i?"bottom":"top",scrollColumn:null,focusIndex:t,focusColumn:e.column}),setTimeout(()=>{const s=this.getNextFocusIndexForAutoHeight(e,i);this.navigateTo({scrollIndex:t,scrollType:i?"bottom":"top",scrollColumn:null,focusIndex:s,focusColumn:e.column,isAsync:!0})},50)}getNextFocusIndexForAutoHeight(e,t=!1){const i=t?-1:1,s=this.getViewportHeight(),{pageBounds:o,rowModel:r}=this.beans,n=o.getLastRow();let a=0,l=e.rowIndex;for(;l>=0&&l<=n;){const e=r.getRow(l);if(e){const t=e.rowHeight??0;if(a+t>s)break;a+=t}l+=i}return Math.max(0,Math.min(l,n))}getViewportHeight(){const e=this.beans,t=zp(e),i=this.beans.scrollVisibleSvc.getScrollbarWidth();let s=t.bottom-t.top;return e.ctrlsSvc.get("center").isHorizontalScrollShowing()&&(s-=i),s}isRowTallerThanView(e){if(!e)return!1;const t=e.rowHeight;return"number"==typeof t&&t>this.getViewportHeight()}onCtrlUpDownLeftRight(e,t){const i=this.beans.cellNavigation.getNextCellToFocus(e,t,!0),s=this.getNormalisedPosition(i),{rowIndex:o,rowPinned:r,column:n}=s??i,a=n;this.navigateTo({scrollIndex:o,scrollType:null,scrollColumn:a,focusIndex:o,focusColumn:a,rowPinned:r})}onHomeOrEndKey(e){const t=e===To.PAGE_HOME,{visibleCols:i,pageBounds:s,rowModel:o}=this.beans,r=i.allCols,n=t?s.getFirstRow():s.getLastRow(),a=o.getRow(n);if(!a)return;const l=(t?r:[...r].reverse()).find(e=>!e.isSuppressNavigable(a));l&&this.navigateTo({scrollIndex:n,scrollType:null,scrollColumn:l,focusIndex:n,focusColumn:l})}onTabKeyDown(e,t){const i=t.shiftKey,s=this.tabToNextCellCommon(e,i,t),o=this.beans,{ctrlsSvc:r,pageBounds:n,focusSvc:a,gos:l}=o;if(!1===s)if(i){const{rowIndex:i,rowPinned:s}=e.getRowPosition();(s?0===i:i===n.getFirstRow())&&(0===l.get("headerHeight")||In(o)?Ln(o,!0,!0):(t.preventDefault(),a.focusPreviousFromFirstCell(t)))}else e instanceof Np&&e.focusCell(!0),(a.focusOverlay(!1)||Ln(o,i))&&t.preventDefault();else s?t.preventDefault():null===s&&r.get("gridCtrl").allowFocusForNextCoreContainer(i)}tabToNextCell(e,t){const i=this.beans,{focusSvc:s,rowRenderer:o}=i,r=s.getFocusedCell();if(!r)return!1;let n=Rn(i,r);return!(!n&&(n=o.getRowByPosition(r),!n?.isFullWidth()))&&!!this.tabToNextCellCommon(n,e,t,"api")}tabToNextCellCommon(e,t,i,s="ui"){const{editSvc:o,focusSvc:r}=this.beans;let n;const a=e instanceof Np?e:e.getAllCellCtrls()?.[0];return n=o?.isEditing()?o?.moveToNextCell(a,t,i,s):this.moveToNextCellNotEditing(e,t,i),null===n?n:n||!!r.focusedHeader}moveToNextCellNotEditing(e,t,i){const s=this.beans.visibleCols.allCols;let o;if(e instanceof Hp){if(o={...e.getRowPosition(),column:t?s[0]:l(s)},this.gos.get("embedFullWidthRows")&&i){const t=e.findFullWidthInfoForEvent(i);t&&(o.column=t.column)}}else o=e.getFocusedCellPosition();const r=this.findNextCellToFocusOn(o,{backwards:t,startEditing:!1});if(!1===r)return null;if(r instanceof Np)r.focusCell(!0);else if(r)return this.tryToFocusFullWidthRow(r,t);return f(r)}findNextCellToFocusOn(e,{backwards:t,startEditing:i,skipToNextEditableCell:s}){let o=e;const r=this.beans,{cellNavigation:n,gos:a,focusSvc:l,rowRenderer:d,rangeSvc:c}=r;for(;;){e!==o&&(e=o),t||(o=this.getLastCellOfColSpan(o)),o=n.getNextTabbedCell(o,t);const u=a.getCallback("tabToNextCell");if(f(u)){const s=u({backwards:t,editing:i,previousCellPosition:e,nextCellPosition:o||null});if(!0===s)o=e;else{if(!1===s)return!1;o={rowIndex:s.rowIndex,column:s.column,rowPinned:s.rowPinned}}}if(!o)return null;if(o.rowIndex<0){const e=Nn(r);return l.focusHeaderPosition({headerPosition:{headerRowIndex:e+o.rowIndex,column:o.column},fromCell:!0}),null}const h="fullRow"===a.get("editType");if(i&&(!h||s)){if(!this.isCellEditable(o))continue}this.ensureCellVisible(o);const g=Rn(r,o);if(!g){const e=d.getRowByPosition(o);if(!e||!e.isFullWidth()||i)continue;return{...e.getRowPosition(),column:o?.column}}if(!n.isSuppressNavigable(g.column,g.rowNode))return g.setFocusedCellPosition(o),c?.setRangeToCell(o),g}}isCellEditable(e){const t=this.lookupRowNodeForCell(e);return!!t&&e.column.isCellEditable(t)}lookupRowNodeForCell({rowIndex:e,rowPinned:t}){const{pinnedRowModel:i,rowModel:s}=this.beans;return"top"===t?i?.getPinnedTopRow(e):"bottom"===t?i?.getPinnedBottomRow(e):s.getRow(e)}navigateToNextCell(e,t,i,s){let o=i,r=!1;const n=this.beans,{cellNavigation:a,focusSvc:l,gos:d}=n;for(;o&&(o===i||!this.isValidNavigateCell(o));)d.get("enableRtl")?t===To.LEFT&&(o=this.getLastCellOfColSpan(o)):t===To.RIGHT&&(o=this.getLastCellOfColSpan(o)),o=a.getNextCellToFocus(t,o),r=C(o);if(r&&e&&e.key===To.UP&&(o={rowIndex:-1,rowPinned:null,column:i.column}),s){const s=d.getCallback("navigateToNextCell");if(f(s)){const r=s({key:t,previousCellPosition:i,nextCellPosition:o||null,event:e});o=f(r)?{rowPinned:r.rowPinned,rowIndex:r.rowIndex,column:r.column}:null}}if(!o)return;if(o.rowIndex<0){const t=Nn(n);return void l.focusHeaderPosition({headerPosition:{headerRowIndex:t+o.rowIndex,column:i.column},event:e||void 0,fromCell:!0})}const c=this.getNormalisedPosition(o);c?this.focusPosition(c):this.tryToFocusFullWidthRow(o)}getNormalisedPosition(e){if(!!this.beans.spannedRowRenderer?.getCellByPosition(e))return e;this.ensureCellVisible(e);const t=Rn(this.beans,e);return t?(e=t.getFocusedCellPosition(),this.ensureCellVisible(e),e):null}tryToFocusFullWidthRow(e,t){const{visibleCols:i,rowRenderer:s,focusSvc:o,eventSvc:r}=this.beans,n=i.allCols,a=s.getRowByPosition(e);if(!a?.isFullWidth())return!1;const d=o.getFocusedCell(),c={rowIndex:e.rowIndex,rowPinned:e.rowPinned,column:e.column||(t?l(n):n[0])};this.focusPosition(c);const u=null==t?null!=d&&bn(c,d):t;return r.dispatchEvent({type:"fullWidthRowFocused",rowIndex:c.rowIndex,rowPinned:c.rowPinned,column:c.column,isFullWidthCell:!0,fromBelow:u}),!0}focusPosition(e){const{focusSvc:t,rangeSvc:i}=this.beans;t.setFocusedCell({rowIndex:e.rowIndex,column:e.column,rowPinned:e.rowPinned,forceBrowserFocus:!0}),i?.setRangeToCell(e)}isValidNavigateCell(e){return!!Fn(this.beans,e)}getLastCellOfColSpan(e){const t=Rn(this.beans,e);if(!t)return e;const i=t.getColSpanningList();return 1===i.length?e:{rowIndex:e.rowIndex,column:l(i),rowPinned:e.rowPinned}}ensureCellVisible(e){const t=ki(this.gos),i=this.beans.rowModel.getRow(e.rowIndex),s=t&&i?.sticky,{scrollFeature:o}=this.gridBodyCon;!s&&C(e.rowPinned)&&o.ensureIndexVisible(e.rowIndex),e.column.isPinned()||o.ensureColumnVisible(e.column)}ensureColumnVisible(e){const t=this.gridBodyCon.scrollFeature;e.isPinned()||t.ensureColumnVisible(e)}ensureRowVisible(e){this.gridBodyCon.scrollFeature.ensureIndexVisible(e)}},class extends wt{constructor(){super(...arguments),this.beanName="cellNavigation"}wireBeans(e){this.rowSpanSvc=e.rowSpanSvc}getNextCellToFocus(e,t,i=!1){return i?this.getNextCellToFocusWithCtrlPressed(e,t):this.getNextCellToFocusWithoutCtrlPressed(e,t)}getNextCellToFocusWithCtrlPressed(e,t){const i=e===To.UP,s=e===To.DOWN,o=e===To.LEFT;let r,n;const{pageBounds:a,gos:l,visibleCols:d,pinnedRowModel:c}=this.beans,{rowPinned:u}=t;if(i||s)n=u&&c?i?0:"top"===u?c.getPinnedTopRowCount()-1:c.getPinnedBottomRowCount()-1:i?a.getFirstRow():a.getLastRow(),r=t.column;else{const e=l.get("enableRtl");n=t.rowIndex;r=(o!==e?d.allCols:[...d.allCols].reverse()).find(e=>this.isCellGoodToFocusOn({rowIndex:n,rowPinned:null,column:e}))}return r?{rowIndex:n,rowPinned:u,column:r}:null}getNextCellToFocusWithoutCtrlPressed(e,t){let i=t,s=!1;for(;!s;){switch(e){case To.UP:i=this.getCellAbove(i);break;case To.DOWN:i=this.getCellBelow(i);break;case To.RIGHT:i=this.gos.get("enableRtl")?this.getCellToLeft(i):this.getCellToRight(i);break;case To.LEFT:i=this.gos.get("enableRtl")?this.getCellToRight(i):this.getCellToLeft(i);break;default:i=null,gi(8,{key:e})}s=!i||this.isCellGoodToFocusOn(i)}return i}isCellGoodToFocusOn(e){const t=e.column;let i;const{pinnedRowModel:s,rowModel:o}=this.beans;switch(e.rowPinned){case"top":i=s?.getPinnedTopRow(e.rowIndex);break;case"bottom":i=s?.getPinnedBottomRow(e.rowIndex);break;default:i=o.getRow(e.rowIndex)}if(!i)return!1;return!this.isSuppressNavigable(t,i)}getCellToLeft(e){if(!e)return null;const t=this.beans.visibleCols.getColBefore(e.column);return t?{rowIndex:e.rowIndex,column:t,rowPinned:e.rowPinned}:null}getCellToRight(e){if(!e)return null;const t=this.beans.visibleCols.getColAfter(e.column);return t?{rowIndex:e.rowIndex,column:t,rowPinned:e.rowPinned}:null}getCellBelow(e){if(!e)return null;const t=this.rowSpanSvc?.getCellEnd(e)??e,i=En(this.beans,t,!0);return i?{rowIndex:i.rowIndex,column:e.column,rowPinned:i.rowPinned}:null}getCellAbove(e){if(!e)return null;const t=this.rowSpanSvc?.getCellStart(e)??e,i=Pn(this.beans,{rowIndex:t.rowIndex,rowPinned:t.rowPinned},!0);return i?{rowIndex:i.rowIndex,column:e.column,rowPinned:i.rowPinned}:null}getNextTabbedCell(e,t){return t?this.getNextTabbedCellBackwards(e):this.getNextTabbedCellForwards(e)}getNextTabbedCellForwards(e){const{visibleCols:t,pagination:i}=this.beans,s=t.allCols;let o=e.rowIndex,r=e.rowPinned,n=t.getColAfter(e.column);if(!n){n=s[0];const t=En(this.beans,e,!0);if(C(t))return null;if(!t.rowPinned&&!(i?.isRowInPage(t.rowIndex)??1))return null;o=t?t.rowIndex:null,r=t?t.rowPinned:null}return{rowIndex:o,column:n,rowPinned:r}}getNextTabbedCellBackwards(e){const{beans:t}=this,{visibleCols:i,pagination:s}=t,o=i.allCols;let r=e.rowIndex,n=e.rowPinned,a=i.getColBefore(e.column);if(!a){a=l(o);const i=Pn(t,{rowIndex:e.rowIndex,rowPinned:e.rowPinned},!0);if(C(i))return null;if(!i.rowPinned&&!(s?.isRowInPage(i.rowIndex)??1))return null;r=i?i.rowIndex:null,n=i?i.rowPinned:null}return{rowIndex:r,column:a,rowPinned:n}}isSuppressNavigable(e,t){const{suppressNavigable:i}=e.colDef;if("boolean"==typeof i)return i;if("function"==typeof i){return i(e.createColumnFunctionCallbackParams(t))}return!1}},class extends wt{constructor(){super(...arguments),this.beanName="headerNavigation",this.currentHeaderRowWithoutSpan=-1}postConstruct(){const e=this.beans;e.ctrlsSvc.whenReady(this,e=>{this.gridBodyCon=e.gridBodyCtrl});const t=T(e);this.addManagedElementListeners(t,{mousedown:()=>{this.currentHeaderRowWithoutSpan=-1}})}getHeaderPositionForColumn(e,t){let i;const{colModel:s,colGroupSvc:o,ctrlsSvc:r}=this.beans;if("string"==typeof e?(i=s.getCol(e),i||(i=o?.getColumnGroup(e)??null)):i=e,!i)return null;const n=r.getHeaderRowContainerCtrl(),a=n?.getAllCtrls(),d="filter"===l(a||[]).type,c=Nn(this.beans)-1;let u=-1,h=i;for(;h;)u++,h=h.getParent();let g=u;return t&&d&&g===c-1&&g++,-1===g?null:{headerRowIndex:g,column:i}}navigateVertically(e,t){const{focusSvc:i,visibleCols:s}=this.beans,{focusedHeader:o}=i;if(!o)return!1;const{headerRowIndex:r}=o,n=o.column,a=Nn(this.beans),l=this.getHeaderRowType(r),d=s.headerGroupRowCount;let{headerRowIndex:c,column:u,headerRowIndexWithoutSpan:h}="UP"===e?function(e,t,i){const s=i-1;if("filter"!==e){const e=t instanceof Fs&&t.isSpanHeaderHeight();let i=t.getParent();for(;i&&(i.getProvidedColumnGroup().getLevel()>s||e&&i.isPadding());)i=i.getParent();if(i)return e?{column:i,headerRowIndex:i.getProvidedColumnGroup().getLevel(),headerRowIndexWithoutSpan:s}:{column:i,headerRowIndex:s,headerRowIndexWithoutSpan:s}}return{column:t,headerRowIndex:s,headerRowIndexWithoutSpan:s}}(l,n,r):function(e,t,i){const s=t+1,o={column:e,headerRowIndex:s,headerRowIndexWithoutSpan:s};if(e instanceof Ao){if(s>=i)return{column:e.getDisplayedLeafColumns()[0],headerRowIndex:i,headerRowIndexWithoutSpan:s};let t=e.getDisplayedChildren()[0];if(t instanceof Ao&&t.isPadding()){const e=t.getDisplayedLeafColumns()[0];e.isSpanHeaderHeight()&&(t=e)}o.column=t;t instanceof Fs&&t.isSpanHeaderHeight()&&(o.headerRowIndex=i,o.headerRowIndexWithoutSpan=s)}return o}(n,r,d),g=!1;return c<0&&(c=0,u=n,g=!0),c>=a?(c=-1,this.currentHeaderRowWithoutSpan=-1):void 0!==h&&(this.currentHeaderRowWithoutSpan=h),!(!g&&!u)&&i.focusHeaderPosition({headerPosition:{headerRowIndex:c,column:u},allowUserOverride:!0,event:t})}navigateHorizontally(e,t=!1,i){const{focusSvc:s,gos:o}=this.beans,r={...s.focusedHeader};let n,a;-1!==this.currentHeaderRowWithoutSpan?r.headerRowIndex=this.currentHeaderRowWithoutSpan:this.currentHeaderRowWithoutSpan=r.headerRowIndex,"LEFT"===e!==o.get("enableRtl")?(a="Before",n=this.findHeader(r,a)):(a="After",n=this.findHeader(r,a));const l=o.getCallback("tabToNextHeader");if(t&&l){const e=s.focusHeaderPositionFromUserFunc({userFunc:l,headerPosition:n,direction:a});if(e){const{headerRowIndex:e}=s.focusedHeader||{};null!=e&&e!=r.headerRowIndex&&(this.currentHeaderRowWithoutSpan=e)}return e}return n||!t?s.focusHeaderPosition({headerPosition:n,direction:a,fromTab:t,allowUserOverride:!0,event:i}):this.focusNextHeaderRow(r,a,i)}focusNextHeaderRow(e,t,i){const s=this.beans,o=e.headerRowIndex;let r,n=null;const a=Nn(s),d=this.beans.visibleCols.allCols;if("Before"===t){if(o<=0)return!1;n=l(d),r=o-1,this.currentHeaderRowWithoutSpan-=1}else n=d[0],r=o+1,this.currentHeaderRowWithoutSpan=a&&(u=-1),s.focusSvc.focusHeaderPosition({headerPosition:{column:c,headerRowIndex:u},direction:t,fromTab:!0,allowUserOverride:!0,event:i})}scrollToColumn(e,t="After"){if(e.getPinned())return;let i;if(Eo(e)){const s=e.getDisplayedLeafColumns();i="Before"===t?l(s):s[0]}else i=e;this.gridBodyCon.scrollFeature.ensureColumnVisible(i)}findHeader(e,t){const{colGroupSvc:i,visibleCols:s}=this.beans;let o=e.column;if(o instanceof Ao){const e=o.getDisplayedLeafColumns();o="Before"===t?e[0]:e[e.length-1]}const r="Before"===t?s.getColBefore(o):s.getColAfter(o);if(!r)return;const n=s.headerGroupRowCount;if(e.headerRowIndex>=n)return{headerRowIndex:e.headerRowIndex,column:r};const a=i?.getColGroupAtLevel(r,e.headerRowIndex);if(!a){return{headerRowIndex:r instanceof Fs&&r.isSpanHeaderHeight()?s.headerGroupRowCount:e.headerRowIndex,column:r}}return a.isPadding()&&r.isSpanHeaderHeight()?{headerRowIndex:s.headerGroupRowCount,column:r}:{headerRowIndex:e.headerRowIndex,column:a??r}}getHeaderRowType(e){const t=this.beans.ctrlsSvc.getHeaderRowContainerCtrl();if(t)return t.getRowType(e)}}],apiFunctions:{getFocusedCell:function(e){return e.focusSvc.getFocusedCell()},clearFocusedCell:function(e){return e.focusSvc.clearFocusedCell()},setFocusedCell:function(e,t,i,s){e.focusSvc.setFocusedCell({rowIndex:t,column:i,rowPinned:s,forceBrowserFocus:!0})},setFocusedHeader:function(e,t,i=!1){const s=e.headerNavigation?.getHeaderPositionForColumn(t,i);s&&e.focusSvc.focusHeaderPosition({headerPosition:s})},tabToNextCell:function(e,t){return e.navigation?.tabToNextCell(!1,t)??!1},tabToPreviousCell:function(e,t){return e.navigation?.tabToNextCell(!0,t)??!1}}},Up=class extends wt{constructor(e,t){super(),this.isLeft=e,this.elements=t,this.getWidth=e?()=>this.beans.pinnedCols.leftWidth:()=>this.beans.pinnedCols.rightWidth}postConstruct(){this.addManagedEventListeners({[(this.isLeft?"left":"right")+"PinnedWidthChanged"]:this.onPinnedWidthChanged.bind(this)})}onPinnedWidthChanged(){const e=this.getWidth(),t=e>0;for(const i of this.elements)i&&(ve(i,t),ze(i,e))}},jp={moduleName:"PinnedColumn",version:ii,beans:[class extends wt{constructor(){super(...arguments),this.beanName="pinnedCols"}postConstruct(){this.beans.ctrlsSvc.whenReady(this,e=>{this.gridBodyCtrl=e.gridBodyCtrl});const e=this.checkContainerWidths.bind(this);this.addManagedEventListeners({displayedColumnsChanged:e,displayedColumnsWidthChanged:e}),this.addManagedPropertyListener("domLayout",e)}checkContainerWidths(){const{gos:e,visibleCols:t,eventSvc:i}=this.beans,s=xi(e,"print"),o=s?0:t.getColsLeftWidth(),r=s?0:t.getDisplayedColumnsRightWidth();o!=this.leftWidth&&(this.leftWidth=o,i.dispatchEvent({type:"leftPinnedWidthChanged"})),r!=this.rightWidth&&(this.rightWidth=r,i.dispatchEvent({type:"rightPinnedWidthChanged"}))}keepPinnedColumnsNarrowerThanViewport(){const e=Fe(this.gridBodyCtrl.eBodyViewport);if(e<=50)return;const t=this.getPinnedColumnsOverflowingViewport(e-50),i=this.gos.getCallback("processUnpinnedColumns"),{columns:s,hasLockedPinned:o}=t;let r=s;if(r.length||o){if(i){r=i({columns:r,viewportWidth:e})}r?.length&&(r=r.filter(e=>!$s(e)),this.setColsPinned(r,null,"viewportSizeFeature"))}}createPinnedWidthFeature(e,...t){return new Up(e,t)}setColsPinned(e,t,i){const{colModel:s,colAnimation:o,visibleCols:r,gos:n}=this.beans;if(!s.cols)return;if(!e?.length)return;if(xi(n,"print"))return void gi(37);let a;o?.start(),a=!0===t||"left"===t?"left":"right"===t?"right":null;const l=[];for(const t of e){if(!t)continue;const e=s.getCol(t);e&&(e.getPinned()!==a&&(this.setColPinned(e,a),l.push(e)))}l.length&&(r.refresh(i),vo(this.eventSvc,l,i)),o?.finish()}initCol(e){const{pinned:t,initialPinned:i}=e.colDef;void 0!==t?this.setColPinned(e,t):this.setColPinned(e,i)}setColPinned(e,t){e.pinned=!0===t||"left"===t?"left":"right"===t?"right":null,e.dispatchStateUpdatedEvent("pinned")}setupHeaderPinnedWidth(e){const{scrollVisibleSvc:t}=this.beans;if(null==e.pinned)return;const i="left"===e.pinned,s="right"===e.pinned;e.hidden=!0;const o=()=>{const o=i?this.leftWidth:this.rightWidth;if(null==o)return;const r=0==o,n=e.hidden!==r,a=this.gos.get("enableRtl"),l=t.getScrollbarWidth(),d=t.verticalScrollShowing&&(a&&i||!a&&s)?o+l:o;e.comp.setPinnedContainerWidth(`${d}px`),e.comp.setDisplayed(!r),n&&(e.hidden=r,e.refresh())};e.addManagedEventListeners({leftPinnedWidthChanged:o,rightPinnedWidthChanged:o,scrollVisibilityChanged:o,scrollbarWidthChanged:o})}getHeaderResizeDiff(e,t){if(t.getPinned()){const{leftWidth:t,rightWidth:i}=this,s=Fe(this.beans.ctrlsSvc.getGridBodyCtrl().eBodyViewport)-50;if(t+i+e>s){if(!(s>t+i))return 0;e=s-t-i}}return e}getPinnedColumnsOverflowingViewport(e){const t=(this.rightWidth??0)+(this.leftWidth??0);let i=!1;if(t0;){if(n0){const e=o[a++];if(e.colDef.lockPinned){i=!0;continue}d-=e.getActualWidth(),l.push(e)}}return{columns:l,hasLockedPinned:i}}}],css:[".ag-pinned-left-floating-bottom,.ag-pinned-left-floating-top,.ag-pinned-right-floating-bottom,.ag-pinned-right-floating-top{min-width:0;overflow:hidden;position:relative}.ag-pinned-left-sticky-top,.ag-pinned-right-sticky-top{height:100%;overflow:hidden;position:relative}.ag-sticky-bottom-full-width-container,.ag-sticky-top-full-width-container{height:100%;overflow:hidden;width:100%}.ag-pinned-left-header,.ag-pinned-right-header{display:inline-block;height:100%;overflow:hidden;position:relative}.ag-body-horizontal-scroll:not(.ag-scrollbar-invisible){.ag-horizontal-left-spacer:not(.ag-scroller-corner){border-right:var(--ag-pinned-column-border)}.ag-horizontal-right-spacer:not(.ag-scroller-corner){border-left:var(--ag-pinned-column-border)}}.ag-pinned-right-header{border-left:var(--ag-pinned-column-border)}.ag-pinned-left-header{border-right:var(--ag-pinned-column-border)}.ag-cell.ag-cell-first-right-pinned:not(.ag-cell-range-left,.ag-cell-range-single-cell,.ag-cell-focus:not(.ag-cell-range-selected):focus-within){border-left:var(--ag-pinned-column-border)}.ag-cell.ag-cell-last-left-pinned:not(.ag-cell-range-right,.ag-cell-range-single-cell,.ag-cell-focus:not(.ag-cell-range-selected):focus-within){border-right:var(--ag-pinned-column-border)}.ag-pinned-left-header .ag-header-cell-resize:after{left:calc(50% - var(--ag-header-column-resize-handle-width))}.ag-pinned-right-header .ag-header-cell-resize:after{left:50%}.ag-pinned-left-header .ag-header-cell-resize{right:-3px}.ag-pinned-right-header .ag-header-cell-resize{left:-3px}"]},Kp=class extends vt{constructor(){super(),this.beanName="ariaAnnounce",this.descriptionContainer=null,this.pendingAnnouncements=new Map,this.lastAnnouncement="",this.updateAnnouncement=Rt(this,this.updateAnnouncement.bind(this),200)}postConstruct(){const e=this.beans,t=T(e),i=this.descriptionContainer=t.createElement("div");i.classList.add("ag-aria-description-container"),W(i,"polite"),L(i,"relevant","additions text"),function(e,t){L(e,"atomic",t)}(i,!0),e.eRootDiv.appendChild(i)}announceValue(e,t){this.pendingAnnouncements.set(t,e),this.updateAnnouncement()}updateAnnouncement(){if(!this.descriptionContainer)return;const e=Array.from(this.pendingAnnouncements.values()).join(". ");this.pendingAnnouncements.clear(),this.descriptionContainer.textContent="",setTimeout(()=>{this.handleAnnouncementUpdate(e)},50)}handleAnnouncementUpdate(e){if(!this.isAlive()||!this.descriptionContainer)return;let t=e;null!=t&&""!=t.replace(/[ .]/g,"")?(this.lastAnnouncement===t&&(t=`${t}​`),this.lastAnnouncement=t,this.descriptionContainer.textContent=t):this.lastAnnouncement=""}destroy(){super.destroy();const{descriptionContainer:e}=this;e&&(Te(e),e.remove()),this.descriptionContainer=null,this.pendingAnnouncements.clear()}},$p={moduleName:"Aria",version:ii,beans:[class extends Kp{}]},qp="ag-delay-render",Yp={moduleName:"ColumnDelayRender",version:ii,beans:[class extends wt{constructor(){super(...arguments),this.beanName="colDelayRenderSvc",this.hideRequested=!1,this.alreadyRevealed=!1,this.timesRetried=0,this.requesters=new Set}hideColumns(e){this.alreadyRevealed||this.requesters.has(e)||(this.requesters.add(e),this.hideRequested||(this.beans.ctrlsSvc.whenReady(this,e=>{e.gridBodyCtrl.eGridBody.classList.add(qp)}),this.hideRequested=!0))}revealColumns(e){if(this.alreadyRevealed||!this.isAlive())return;if(this.requesters.delete(e),this.requesters.size>0)return;const{renderStatus:t,ctrlsSvc:i}=this.beans;if(t){if(!t.areHeaderCellsRendered()&&this.timesRetried<5)return this.timesRetried++,void setTimeout(()=>this.revealColumns(e));this.timesRetried=0}i.getGridBodyCtrl().eGridBody.classList.remove(qp),this.alreadyRevealed=!0}}],css:[":where(.ag-delay-render){.ag-cell,.ag-header-cell,.ag-header-group-cell,.ag-row,.ag-spanned-cell-wrapper{visibility:hidden}}"]};var Xp={tag:"div",cls:"ag-overlay",role:"presentation",children:[{tag:"div",cls:"ag-overlay-panel",role:"presentation",children:[{tag:"div",ref:"eOverlayWrapper",cls:"ag-overlay-wrapper",role:"presentation"}]}]},Zp=class extends Wo{constructor(){super(Xp),this.eOverlayWrapper=Lo,this.activeOverlay=null,this.activePromise=null,this.activeCssClass=null,this.elToFocusAfter=null,this.overlayExclusive=!1,this.oldWrapperPadding=null,this.registerCSS(".ag-overlay{inset:0;pointer-events:none;position:absolute;z-index:2}.ag-overlay-panel,.ag-overlay-wrapper{display:flex;height:100%;width:100%}.ag-overlay-wrapper{align-items:center;flex:none;justify-content:center;text-align:center}.ag-overlay-exporting-wrapper,.ag-overlay-loading-wrapper,.ag-overlay-modal-wrapper{pointer-events:all}.ag-overlay-exporting-center,.ag-overlay-loading-center{background:var(--ag-background-color);border:solid var(--ag-border-width) var(--ag-border-color);border-radius:var(--ag-border-radius);box-shadow:var(--ag-popup-shadow);display:flex;padding:var(--ag-spacing)}")}handleKeyDown(e){if(e.key!==To.TAB||e.defaultPrevented||gn(e))return;const{beans:t,eOverlayWrapper:i}=this;if(i&&an(t,i,!1,e.shiftKey))return;let s=!1;s=e.shiftKey?t.focusSvc.focusGridView({column:l(t.visibleCols.allCols),backwards:!0,canFocusOverlay:!1}):Ln(t,!1),s&&e.preventDefault()}updateLayoutClasses(e,t){const i=this.eOverlayWrapper;if(!i)return;const s=i.classList,{AUTO_HEIGHT:o,NORMAL:r,PRINT:n}=wl;s.toggle(o,t.autoHeight),s.toggle(r,t.normal),s.toggle(n,t.print)}postConstruct(){this.createManagedBean(new bl(this)),this.setDisplayed(!1,{skipAriaHidden:!0}),this.beans.overlays.setWrapperComp(this,!1),this.addManagedElementListeners(this.getFocusableElement(),{keydown:this.handleKeyDown.bind(this)}),this.addManagedEventListeners({gridSizeChanged:this.refreshWrapperPadding.bind(this)})}setWrapperTypeClass(e){const t=this.eOverlayWrapper?.classList;t?(this.activeCssClass&&t.toggle(this.activeCssClass,!1),this.activeCssClass=e,t.toggle(e,!0)):this.activeCssClass=null}showOverlay(e,t,i){if(this.destroyActiveOverlay(),this.elToFocusAfter=null,this.activePromise=e,this.overlayExclusive=i,!e)return this.refreshWrapperPadding(),ko.resolve();if(this.setWrapperTypeClass(t),this.setDisplayed(!0,{skipAriaHidden:!0}),this.refreshWrapperPadding(),i&&this.isGridFocused()){const e=A(this.beans);e&&!D(this.beans)&&(this.elToFocusAfter=e)}return e.then(t=>{const s=this.eOverlayWrapper;s?this.activePromise===e?(this.activePromise=null,t&&(this.activeOverlay!==t&&(s.appendChild(t.getGui()),this.activeOverlay=t),i&&this.isGridFocused()&&nn(s))):this.activeOverlay!==t&&(this.destroyBean(t),t=null):this.destroyBean(t)}),e}refreshWrapperPadding(){if(!this.eOverlayWrapper)return void(this.oldWrapperPadding=null);let e=0;(!!this.activeOverlay||!!this.activePromise)&&!this.overlayExclusive&&(e=this.beans.ctrlsSvc.get("gridHeaderCtrl")?.headerHeight||0),e!==this.oldWrapperPadding&&(this.oldWrapperPadding=e,this.eOverlayWrapper.style.setProperty("padding-top",`${e}px`))}destroyActiveOverlay(){this.activePromise=null;const e=this.activeOverlay;if(!e)return this.overlayExclusive=!1,this.elToFocusAfter=null,void this.refreshWrapperPadding();let t=this.elToFocusAfter;this.elToFocusAfter=null,this.activeOverlay=null,this.overlayExclusive=!1,t&&!this.isGridFocused()&&(t=null),this.destroyBean(e);const i=this.eOverlayWrapper;i&&Te(i),t?.focus?.({preventScroll:!0}),this.refreshWrapperPadding()}hideOverlay(){this.destroyActiveOverlay(),this.setDisplayed(!1,{skipAriaHidden:!0})}isGridFocused(){const e=A(this.beans);return!!e&&this.beans.eGridDiv.contains(e)}destroy(){this.elToFocusAfter=null,this.destroyActiveOverlay(),this.beans.overlays.setWrapperComp(this,!0),super.destroy(),this.eOverlayWrapper=null}},Qp={selector:"AG-OVERLAY-WRAPPER",component:Zp},Jp=["refresh"],em=e=>({name:e,optionalMethods:Jp}),tm={id:"agLoadingOverlay",overlayType:"loading",comp:em("loadingOverlayComponent"),wrapperCls:"ag-overlay-loading-wrapper",exclusive:!0,compKey:"loadingOverlayComponent",paramsKey:"loadingOverlayComponentParams",isSuppressed:e=>{const t=e.get("loading");return!1===t||!0===e.get("suppressLoadingOverlay")&&!0!==t}},im={id:"agNoRowsOverlay",overlayType:"noRows",comp:em("noRowsOverlayComponent"),wrapperCls:"ag-overlay-no-rows-wrapper",compKey:"noRowsOverlayComponent",paramsKey:"noRowsOverlayComponentParams",isSuppressed:e=>e.get("suppressNoRowsOverlay")},sm={id:"agNoMatchingRowsOverlay",overlayType:"noMatchingRows",comp:em("noMatchingRowsOverlayComponent"),wrapperCls:"ag-overlay-no-matching-rows-wrapper"},om={id:"agExportingOverlay",overlayType:"exporting",comp:em("exportingOverlayComponent"),wrapperCls:"ag-overlay-exporting-wrapper",exclusive:!0},rm={id:"activeOverlay",comp:em("activeOverlay"),wrapperCls:"ag-overlay-modal-wrapper",exclusive:!0},nm={moduleName:"Overlay",version:ii,userComponents:{agLoadingOverlay:class extends Ca{constructor(){super(...arguments),this.eLoadingIcon=Lo,this.eLoadingText=Lo}init(e){const{beans:t,gos:i}=this,s=m(i.get("overlayLoadingTemplate")?.trim());if(this.setTemplate(s??wa),!s){const i=Bo("overlayLoading",t,null);i&&this.eLoadingIcon.appendChild(i);const s=e.loading?.overlayText??this.getLocaleTextFunc()("loadingOoo","Loading...");this.eLoadingText.textContent=s,t.ariaAnnounce.announceValue(s,"overlay")}}},agNoRowsOverlay:class extends Ca{init(e){const{beans:t,gos:i}=this,s=m(i.get("overlayNoRowsTemplate")?.trim());if(this.setTemplate(s??ya),!s){const i=e.noRows?.overlayText??this.getLocaleTextFunc()("noRowsToShow","No Rows To Show");this.getGui().textContent=i,t.ariaAnnounce.announceValue(i,"overlay")}}},agNoMatchingRowsOverlay:class extends Ca{init(e){const{beans:t}=this;this.setTemplate(ba);const i=e.noMatchingRows?.overlayText??this.getLocaleTextFunc()("noMatchingRows","No Matching Rows");this.getGui().textContent=i,t.ariaAnnounce.announceValue(i,"overlay")}},agExportingOverlay:class extends Ca{constructor(){super(...arguments),this.eExportingIcon=Lo,this.eExportingText=Lo}init(e){const{beans:t}=this;this.setTemplate(va);const i=Bo("overlayExporting",t,null);i&&this.eExportingIcon.appendChild(i);const s=e.exporting?.overlayText??this.getLocaleTextFunc()("exportingOoo","Exporting...");this.eExportingText.textContent=s,t.ariaAnnounce.announceValue(s,"overlay")}}},apiFunctions:{showLoadingOverlay:function(e){e.overlays?.showLoadingOverlay()},showNoRowsOverlay:function(e){e.overlays?.showNoRowsOverlay()},hideOverlay:function(e){e.overlays?.hideOverlay()}},icons:{overlayLoading:"loading",overlayExporting:"loading"},beans:[class extends wt{constructor(){super(...arguments),this.beanName="overlays",this.eWrapper=void 0,this.exclusive=!1,this.oldExclusive=!1,this.currentDef=null,this.showInitialOverlay=!0,this.userForcedNoRows=!1,this.exportsInProgress=0,this.newColumnsLoadedCleanup=null}postConstruct(){const e=this.gos;this.showInitialOverlay=yi(e);const t=()=>{this.userForcedNoRows||this.updateOverlay(!1)},[i,s,o,r]=this.addManagedEventListeners({newColumnsLoaded:t,rowCountReady:()=>{this.disableInitialOverlay(),t(),s()},rowDataUpdated:t,modelUpdated:t});this.newColumnsLoadedCleanup=i,this.addManagedPropertyListeners(["loading","activeOverlay","activeOverlayParams","overlayComponentParams","loadingOverlayComponentParams","noRowsOverlayComponentParams"],e=>this.onPropChange(new Set(e.changeSet?.properties)))}destroy(){this.doHideOverlay(),super.destroy(),this.eWrapper=void 0}setWrapperComp(e,t){this.isAlive()&&(t?this.eWrapper===e&&(this.eWrapper=void 0):this.eWrapper=e,this.updateOverlay(!1))}isVisible(){return!!this.currentDef}showLoadingOverlay(){this.showInitialOverlay=!1;const e=this.gos;if(!this.eWrapper||e.get("activeOverlay"))return;if(this.isDisabled(tm))return;const t=e.get("loading");(t||void 0===t)&&this.doShowOverlay(tm)}showNoRowsOverlay(){this.showInitialOverlay=!1;const e=this.gos;!this.eWrapper||e.get("activeOverlay")||e.get("loading")||this.isDisabled(im)||(this.userForcedNoRows=!0,this.doShowOverlay(im))}async showExportOverlay(e){const{gos:t,beans:i}=this;if(!this.eWrapper||t.get("activeOverlay")||t.get("loading")||this.isDisabled(om)||this.userForcedNoRows&&this.currentDef===im)return void e();const s=this.getDesiredDefWithOverride(om);if(!s)return void e();this.exportsInProgress++,this.focusedCell=i.focusSvc.getFocusedCell(),await this.doShowOverlay(s),await new Promise(e=>setTimeout(()=>e()));const o=Date.now();try{e()}finally{const e=Date.now()-o,t=Math.max(0,300-e),s=()=>{this.exportsInProgress--,0===this.exportsInProgress&&(this.updateOverlay(!1),On(i,this.focusedCell),this.focusedCell=null)};t>0?setTimeout(()=>s(),t):s()}}hideOverlay(){const e=this.gos;this.showInitialOverlay=!1;const t=this.userForcedNoRows;this.userForcedNoRows=!1,e.get("loading")?gi(99):e.get("activeOverlay")?gi(296):this.currentDef!==sm?(this.doHideOverlay(),t&&this.getOverlayDef()!==im&&this.updateOverlay(!1)):gi(297)}getOverlayWrapperSelector(){return Qp}getOverlayWrapperCompClass(){return Zp}onPropChange(e){const t=e.has("activeOverlay");if((t||e.has("loading"))&&this.updateOverlay(t))return;const i=this.currentDef,s=this.eWrapper?.activeOverlay;if(s&&i){const t=e.has("activeOverlayParams");if(i===rm)t&&s.refresh?.(this.makeCompParams(!0));else{const t=i.paramsKey;(e.has("overlayComponentParams")||t&&e.has(t))&&s.refresh?.(this.makeCompParams(!1,t,i.overlayType))}}}updateOverlay(e){const t=this.eWrapper;if(!t)return this.currentDef=null,!1;const i=this.getDesiredDefWithOverride(),s=this.currentDef,o=i===rm&&e;return i!==s?i?(this.doShowOverlay(i),!0):(this.disableInitialOverlay(),this.doHideOverlay()):o&&i?(t.hideOverlay(),this.doShowOverlay(i),!0):(i||this.disableInitialOverlay(),!1)}getDesiredDefWithOverride(e){const{gos:t}=this;let i=(s=t.get("activeOverlay"))?{agLoadingOverlay:tm,agNoRowsOverlay:im,agNoMatchingRowsOverlay:sm,agExportingOverlay:om}[s]??rm:null;var s;return i||(i=e??this.getOverlayDef(),i&&this.isDisabled(i)&&(i=null)),i}getOverlayDef(){const{gos:e,beans:t}=this,{rowModel:i}=t,s=e.get("loading");if(void 0!==s){if(this.disableInitialOverlay(),s)return tm}else if(this.showInitialOverlay){if(!(this.isDisabled(tm)||e.get("columnDefs")&&e.get("rowData")))return tm;this.disableInitialOverlay()}else this.disableInitialOverlay();return(e=>e?{loading:tm,noRows:im,noMatchingRows:sm,exporting:om}[e]:null)(i.getOverlayType())}disableInitialOverlay(){this.showInitialOverlay=!1,this.newColumnsLoadedCleanup?.(),this.newColumnsLoadedCleanup=null}doShowOverlay(e){const{gos:t,beans:i}=this,{userCompFactory:s}=i;this.currentDef=e;const o=e!==rm,r=!!e.exclusive;let n,a;this.exclusive=r,(e.paramsKey&&t.get(e.paramsKey)||e.compKey&&t.get(e.compKey))&&(n=e.paramsKey),o&&(t.get("overlayComponent")||t.get("overlayComponentSelector"))&&(a=s.getCompDetailsFromGridOptions({name:"overlayComponent",optionalMethods:["refresh"]},void 0,this.makeCompParams(!1,e.paramsKey,e.overlayType))),a??(a=s.getCompDetailsFromGridOptions(e.comp,o?e.id:void 0,this.makeCompParams(!o,n,e.overlayType),!1));const l=a?.newAgStackInstance()??null,d=this.eWrapper?this.eWrapper.showOverlay(l,e.wrapperCls,r):ko.resolve();return this.eWrapper?.refreshWrapperPadding(),this.setExclusive(r),d}makeCompParams(e,t,i){const{gos:s}=this,o=e?s.get("activeOverlayParams"):{...s.get("overlayComponentParams"),...t&&s.get(t)||null,overlayType:i};return ms(s,o??{})}doHideOverlay(){let e=!1;this.currentDef&&(this.currentDef=null,e=!0),this.exclusive=!1;const t=this.eWrapper;return t&&(t.hideOverlay(),t.refreshWrapperPadding(),this.setExclusive(!1)),e}setExclusive(e){this.oldExclusive!==e&&(this.oldExclusive=e,this.eventSvc.dispatchEvent({type:"overlayExclusiveChanged"}))}isDisabled(e){const{gos:t}=this;return e.overlayType&&t.get("suppressOverlays")?.includes(e.overlayType)||!0===e.isSuppressed?.(t)}}]},am=class{constructor(e){this.entriesMap={},this.entriesList=[],this.maxCount=e}addRow(e){if(this.entriesMap[e.rowNode.id]=e,this.entriesList.push(e),e.setCached(!0),this.entriesList.length>this.maxCount){const e=this.entriesList[0];e.destroyFirstPass(),e.destroySecondPass(),this.removeFromCache(e)}}getRow(e){if(null==e?.id)return null;const t=this.entriesMap[e.id];if(!t)return null;this.removeFromCache(t),t.setCached(!1);return t.rowNode!=e?null:t}has(e){return null!=this.entriesMap[e.id]}removeRow(e){const t=e.id,i=this.entriesMap[t];delete this.entriesMap[t],u(this.entriesList,i)}removeFromCache(e){const t=e.rowNode.id;delete this.entriesMap[t],u(this.entriesList,e)}getEntries(){return this.entriesList}};function lm(e){if(!e)return;const t={top:{},bottom:{},normal:{}};for(const i of e){const e=i.id;switch(i.rowPinned){case"top":t.top[e]=i;break;case"bottom":t.bottom[e]=i;break;default:t.normal[e]=i}}return t}function dm(e,t){const i=e.id;switch(e.rowPinned){case"top":return null!=t.top[i];case"bottom":return null!=t.bottom[i];default:return null!=t.normal[i]}}var cm=e=>{if(e.data)return e;let t=e.childrenAfterGroup;for(;t?.length;){const e=t[0];if(e.data)return e;t=e.childrenAfterGroup}},um=e=>{if(!e)return e;if("bigint"==typeof e)return e<0n?-e:e;const t=Number(e);return isNaN(t)?e:Math.abs(t)};var hm=(e,t)=>({tag:"span",ref:`eSort${e}`,cls:`ag-sort-indicator-icon ag-sort-${t} ag-hidden`,attrs:{"aria-hidden":"true"}}),gm={tag:"span",cls:"ag-sort-indicator-container",children:[hm("Order","order"),hm("Asc","ascending-icon"),hm("Desc","descending-icon"),hm("Mixed","mixed-icon"),hm("AbsoluteAsc","absolute-ascending-icon"),hm("AbsoluteDesc","absolute-descending-icon"),hm("None","none-icon")]},pm=class extends Wo{constructor(e){super(),this.eSortOrder=Lo,this.eSortAsc=Lo,this.eSortDesc=Lo,this.eSortMixed=Lo,this.eSortNone=Lo,this.eSortAbsoluteAsc=Lo,this.eSortAbsoluteDesc=Lo,e||this.setTemplate(gm)}attachCustomElements(e,t,i,s,o,r,n){this.eSortOrder=e,this.eSortAsc=t,this.eSortDesc=i,this.eSortMixed=s,this.eSortNone=o,this.eSortAbsoluteAsc=r,this.eSortAbsoluteDesc=n}setupSort(e,t=!1){if(this.column=e,this.suppressOrder=t,this.setupMultiSortIndicator(),!e.isSortable()&&!e.getColDef().showRowGroup)return;this.addInIcon("sortAscending",this.eSortAsc,e),this.addInIcon("sortDescending",this.eSortDesc,e),this.addInIcon("sortUnSort",this.eSortNone,e),this.addInIcon("sortAbsoluteAscending",this.eSortAbsoluteAsc,e),this.addInIcon("sortAbsoluteDescending",this.eSortAbsoluteDesc,e);const i=this.updateIcons.bind(this),s=this.onSortChanged.bind(this);this.addManagedPropertyListener("unSortIcon",i),this.addManagedEventListeners({newColumnsLoaded:i,sortChanged:s,columnRowGroupChanged:s}),this.onSortChanged()}addInIcon(e,t,i){if(null==t)return;const s=Bo(e,this.beans,i);s&&t.appendChild(s)}onSortChanged(){this.updateIcons(),this.suppressOrder||this.updateSortOrder()}updateIcons(){const{eSortAsc:e,eSortDesc:t,eSortAbsoluteAsc:i,eSortAbsoluteDesc:s,eSortNone:o,column:r,gos:n,beans:a}=this,{isDefaultSortAllowed:l,isAbsoluteSortAllowed:d,isAbsoluteSort:c,isDefaultSort:u,isAscending:h,isDescending:g,direction:p}=Is(r,a);if(e&&ve(e,h&&u&&l,{skipAriaHidden:!0}),t&&ve(t,g&&u&&l,{skipAriaHidden:!0}),o){ve(o,!(!r.getColDef().unSortIcon&&!n.get("unSortIcon"))&&!p,{skipAriaHidden:!0})}i&&ve(i,h&&c&&d,{skipAriaHidden:!0}),s&&ve(s,g&&c&&d,{skipAriaHidden:!0})}setupMultiSortIndicator(){const{eSortMixed:e,column:t,gos:i}=this;this.addInIcon("sortUnSort",e,t);const s=t.getColDef().showRowGroup;Li(i)&&s&&(this.addManagedEventListeners({sortChanged:this.updateMultiSortIndicator.bind(this),columnRowGroupChanged:this.updateMultiSortIndicator.bind(this)}),this.updateMultiSortIndicator())}updateMultiSortIndicator(){const{eSortMixed:e,beans:t,column:i}=this;if(e){ve(e,"mixed"===t.sortSvc.getDisplaySortForColumn(i)?.direction,{skipAriaHidden:!0})}}updateSortOrder(){const{eSortOrder:e,column:t,beans:{sortSvc:i}}=this;if(!e)return;const s=i.getColumnsWithSortingOrdered(),o=i.getDisplaySortIndexForColumn(t)??-1,r=s.some(e=>i.getDisplaySortIndexForColumn(e)??!1);ve(e,o>=0&&r,{skipAriaHidden:!0}),o>=0?e.textContent=(o+1).toString():Te(e)}},mm={selector:"AG-SORT-INDICATOR",component:pm},fm={moduleName:"Sort",version:ii,beans:[class extends wt{constructor(){super(...arguments),this.beanName="sortSvc"}progressSort(e,t,i){const s=this.getNextSortDirection(e);this.setSortForColumn(e,s,t,i)}progressSortFromEvent(e,t){const i="ctrl"===this.gos.get("multiSortKey")?t.ctrlKey||t.metaKey:t.shiftKey;this.progressSort(e,i,"uiColumnSorted")}setSortForColumn(e,t,i,s){const{gos:o,showRowGroupCols:r}=this.beans;let n=[e];if(Li(o)&&e.getColDef().showRowGroup){const t=r?.getSourceColumnsForGroupColumn?.(e),i=t?.filter(e=>e.isSortable());i&&(n=[e,...i])}for(const e of n)this.setColSort(e,t,s);const a=[];if(!((i||o.get("alwaysMultiSort"))&&!o.get("suppressMultiSort"))){const e=this.clearSortBarTheseColumns(n,s);a.push(...e)}this.updateSortIndex(e),a.push(...n),this.dispatchSortChangedEvents(s,a)}updateSortIndex(e){const{gos:t,colModel:i,showRowGroupCols:s}=this.beans,o=Li(t),r=s?.getShowRowGroupCol(e.getId()),n=o&&r||e,a=this.getColumnsWithSortingOrdered();i.forAllCols(e=>this.setColSortIndex(e,null));const l=a.filter(e=>(!o||!e.getColDef().showRowGroup)&&e!==n);(n.getSortDef()?[...l,n]:l).forEach((e,t)=>this.setColSortIndex(e,t))}onSortChanged(e,t){this.dispatchSortChangedEvents(e,t)}isSortActive(){let e=!1;return this.beans.colModel.forAllCols(t=>{if(t.getSortDef())return e=!0,!0}),e}dispatchSortChangedEvents(e,t){const i={type:"sortChanged",source:e};t&&(i.columns=t),this.eventSvc.dispatchEvent(i)}clearSortBarTheseColumns(e,t){const i=[];return this.beans.colModel.forAllCols(s=>{e.includes(s)||(s.getSortDef()&&i.push(s),this.setColSort(s,void 0,t))}),i}getNextSortDirection(e){const t=e.getSortingOrder(),i=e.getSortDef();let s=t.findIndex(e=>As(e,i))+1;return s>=t.length&&(s=0),Rs(t[s])}getIndexedSortMap(){const{gos:e,colModel:t,showRowGroupCols:i,rowGroupColsSvc:s}=this.beans;let o=[];if(t.forAllCols(e=>{e.getSortDef()&&o.push(e)}),t.isPivotMode()){const t=Li(e);o=o.filter(e=>{const s=!!e.getAggFunc(),o=!e.isPrimary(),r=t?i?.getShowRowGroupCol(e.getId()):e.getColDef().showRowGroup;return s||o||r})}const r=s?.columns.filter(e=>!!e.getSortDef())??[],n={};o.forEach((e,t)=>n[e.getId()]=t),o.sort((e,t)=>{const i=e.getSortIndex(),s=t.getSortIndex();if(null!=i&&null!=s)return i-s;if(null==i&&null==s){return n[e.getId()]>n[t.getId()]?1:-1}return null==s?-1:1});const a=Li(e)&&!!r.length;a&&(o=[...new Set(o.map(e=>i?.getShowRowGroupCol(e.getId())??e))]);const l=new Map;if(o.forEach((e,t)=>l.set(e,t)),a)for(const e of r){const t=i.getShowRowGroupCol(e.getId());l.set(e,l.get(t))}return l}getColumnsWithSortingOrdered(){return[...this.getIndexedSortMap().entries()].sort(([,e],[,t])=>e-t).map(([e])=>e)}collectSortItems(e=!1){const t=[],i=this.getColumnsWithSortingOrdered();for(const s of i){const i=s.getSortDef()?.direction;if(!i)continue;const o={sort:i,type:Ds(s.getSortDef()?.type)};e?o.colId=s.getId():o.column=s,t.push(o)}return t}getSortModel(){return this.collectSortItems(!0)}getSortOptions(){return this.collectSortItems()}canColumnDisplayMixedSort(e){const t=Li(this.gos),i=!!e.getColDef().showRowGroup;return t&&i}getDisplaySortForColumn(e){const t=this.beans.showRowGroupCols?.getSourceColumnsForGroupColumn(e);if(!this.canColumnDisplayMixedSort(e)||!t?.length)return e.getSortDef();const i=null!=e.getColDef().field||!!e.getColDef().valueGetter?[e,...t]:t,s=i[0].getSortDef();return i.every(e=>As(e.getSortDef(),s))?s:{type:Ds(e.getSortDef()?.type),direction:"mixed"}}getDisplaySortIndexForColumn(e){return this.getIndexedSortMap().get(e)}setupHeader(e,t){const i=()=>{const{type:i,direction:s}=Rs(t.getSortDef());if(e.toggleCss("ag-header-cell-sorted-asc","asc"===s),e.toggleCss("ag-header-cell-sorted-desc","desc"===s),e.toggleCss("ag-header-cell-sorted-abs-asc","absolute"===i&&"asc"===s),e.toggleCss("ag-header-cell-sorted-abs-desc","absolute"===i&&"desc"===s),e.toggleCss("ag-header-cell-sorted-none",!s),t.getColDef().showRowGroup){const i=this.beans.showRowGroupCols?.getSourceColumnsForGroupColumn(t),o=i?.every(e=>s==e.getSortDef()?.direction),r=!o;e.toggleCss("ag-header-cell-sorted-mixed",r)}};e.addManagedEventListeners({sortChanged:i,columnPinned:i,columnRowGroupChanged:i,displayedColumnsChanged:i})}initCol(e){const{sortIndex:t,initialSortIndex:i}=e.colDef,s=io(e.colDef);s&&e.setSortDef(s,!0),void 0!==t?null!==t&&(e.sortIndex=t):null!==i&&(e.sortIndex=i)}updateColSort(e,t,i){void 0!==t&&this.setColSort(e,Rs(t),i)}setColSort(e,t,i){As(e.getSortDef(),t)||(e.setSortDef(Rs(t),void 0===t),e.dispatchColEvent("sortChanged",i)),e.dispatchStateUpdatedEvent("sort")}setColSortIndex(e,t){e.sortIndex=t,e.dispatchStateUpdatedEvent("sortIndex")}createSortIndicator(e){return new pm(e)}getSortIndicatorSelector(){return mm}},class extends wt{constructor(){super(...arguments),this.beanName="rowNodeSorter",this.accentedSort=!1,this.primaryColumnsSortGroups=!1,this.pivotActive=!1}postConstruct(){this.firstLeaf=yi(this.gos)?tc:cm,this.addManagedPropertyListeners(["accentedSort","autoGroupColumnDef","treeData"],this.updateOptions.bind(this));const e=this.updatePivotModeState.bind(this);this.addManagedEventListeners({columnPivotModeChanged:e,columnPivotChanged:e}),this.updateOptions(),e()}updateOptions(){this.accentedSort=!!this.gos.get("accentedSort"),this.primaryColumnsSortGroups=Li(this.gos)}updatePivotModeState(){this.pivotActive=this.beans.colModel.isPivotActive()}doFullSortInPlace(e,t){return e.sort((e,i)=>this.compareRowNodes(t,e,i))}compareRowNodes(e,t,i){if(t===i)return 0;const s=this.accentedSort;for(let o=0,r=e.length;o{o.push(e),e.sibling&&o.push(e.sibling)})}i.refreshCells({rowNodes:o})}}]},bm={moduleName:"CellApi",version:ii,apiFunctions:{getCellValue:function(e,t){const{colKey:i,rowNode:s,useFormatter:o,from:r="edit"}=t,n=e.colModel.getColDefCol(i)??e.colModel.getCol(i);if(!n)return null;const a=e.valueSvc.getValueForDisplay({column:n,node:s,includeValueFormatted:o,from:r});return o?a.valueFormatted??F(a.value):a.value}}},ym={moduleName:"CommunityCore",version:ii,beans:[class extends wt{constructor(){super(...arguments),this.beanName="gridDestroySvc",this.destroyCalled=!1}destroy(){if(this.destroyCalled)return;const{stateSvc:e,ctrlsSvc:t,context:i}=this.beans;this.eventSvc.dispatchEvent({type:"gridPreDestroyed",state:e?.getState()??{}}),this.destroyCalled=!0,t.get("gridCtrl")?.destroyGridUi(),i.destroy(),super.destroy()}},class extends wt{constructor(){super(),this.beanName="apiFunctionSvc",this.api=new Ld,this.fns={...Id,dispatchEvent:kd},this.preDestroyLink="";const{api:e}=this;for(const t of Object.keys(Dd))e[t]=this.makeApi(t)[t]}postConstruct(){this.preDestroyLink=this.beans.frameworkOverrides.getDocLink("grid-lifecycle/#grid-pre-destroyed")}addFunction(e,t){const{fns:i,beans:s}=this;i!==Id&&(i[e]=s?.validation?.validateApiFunction(e,t)??t)}makeApi(e){return{[e]:(...t)=>{const{beans:i,fns:{[e]:s}}=this;return s?s(i,...t):this.apiNotFound(e)}}}apiNotFound(e){const{beans:t,gos:i,preDestroyLink:s}=this;if(t){const t=Dd[e];i.assertModuleRegistered(t,`api.${e}`)&&gi(27,{fnName:e,module:t})}else gi(26,{fnName:e,preDestroyLink:s})}destroy(){super.destroy(),this.fns=Id,this.beans=null}},class extends mu{constructor(){super(...arguments),this.agGridDefaults={},this.agGridDefaultOverrides={},this.jsComps={},this.selectors={},this.icons={}}postConstruct(){const e=this.gos.get("components");if(null!=e)for(const t of Object.keys(e))this.jsComps[t]=e[t]}registerModule(e){const{icons:t,userComponents:i,dynamicBeans:s,selectors:o}=e;if(i){const e=(e,t,i,s)=>{this.agGridDefaults[e]=t,(i||s)&&(this.agGridDefaultOverrides[e]={params:i,processParams:s})};for(const t of Object.keys(i)){let s=i[t];if(fu(s)&&(s=s.getComp(this.beans)),"object"==typeof s){const{classImp:i,params:o,processParams:r}=s;e(t,i,o,r)}else e(t,s)}}this.registerDynamicBeans(s);for(const e of o??[])this.selectors[e.selector]=e;if(t)for(const e of Object.keys(t))this.icons[e]=t[e]}getUserComponent(e,t){const i=(e,t,i,s)=>({componentFromFramework:t,component:e,params:i,processParams:s}),{frameworkOverrides:s}=this.beans,o=s.frameworkComponent(t,this.gos.get("components"));if(null!=o)return i(o,!0);const r=this.jsComps[t];if(r){return i(r,s.isFrameworkComponent(r))}const n=this.agGridDefaults[t];if(n){const e=this.agGridDefaultOverrides[t];return i(n,!1,e?.params,e?.processParams)}return this.beans.validation?.missingUserComponent(e,t,this.agGridDefaults,this.jsComps),null}getSelector(e){return this.selectors[e]}getIcon(e){return this.icons[e]}getDynamicError(e,t){return t?vi(279,{name:e}):this.beans.validation?.missingDynamicBean(e)??vi(256)}},class extends wt{constructor(){super(...arguments),this.beanName="userCompFactory"}wireBeans(e){this.agCompUtils=e.agCompUtils,this.registry=e.registry,this.frameworkCompWrapper=e.frameworkCompWrapper,this.gridOptions=e.gridOptions}getCompDetailsFromGridOptions(e,t,i,s=!1){return this.getCompDetails(this.gridOptions,e,t,i,s)}getCompDetails(e,t,i,s,o=!1){const{name:r,cellRenderer:n}=t;let a,l,{compName:d,jsComp:c,fwComp:u,paramsFromSelector:h,popupFromSelector:g,popupPositionFromSelector:p}=$o(this.beans.frameworkOverrides,e,t,s);const m=e=>{const t=this.registry.getUserComponent(r,e);t&&(c=t.componentFromFramework?void 0:t.component,u=t.componentFromFramework?t.component:void 0,a=t.params,l=t.processParams)};var f;if(null!=d&&m(d),null==c&&null==u&&null!=i&&m(i),!c||!n||(f=c)&&f.prototype&&"getGui"in f.prototype||(c=this.agCompUtils?.adaptFunction(t,c)),!c&&!u){const{validation:e}=this.beans;return void(!o||d===i&&i?i&&!e&&pi(146,{comp:i}):d?e?.isProvidedUserComp(d)||pi(50,{compName:d}):i?e||pi(260,{...this.gos.getModuleErrorParams(),propName:r,compName:i}):pi(216,{name:r}))}const C=this.mergeParams(e,t,s,h,a,l),v=null==c,w=c??u;return{componentFromFramework:v,componentClass:w,params:C,type:t,popupFromSelector:g,popupPositionFromSelector:p,newAgStackInstance:()=>this.newAgStackInstance(w,v,C,t)}}newAgStackInstance(e,t,i,s){let o;o=!t?new e:this.frameworkCompWrapper.wrap(e,s.mandatoryMethods,s.optionalMethods,s),this.createBean(o);const r=o.init?.(i);return null==r?ko.resolve(o):r.then(()=>o)}mergeParams(e,t,i,s=null,o,r){const n={...i,...o},a=e,l=a?.[t.name+"Params"];if("function"==typeof l){At(n,l(i))}else"object"==typeof l&&At(n,l);return At(n,s),r?r(n):n}},class extends wt{constructor(){super(...arguments),this.beanName="rowContainerHeight",this.scrollY=0,this.uiBodyHeight=0}postConstruct(){this.addManagedEventListeners({bodyHeightChanged:this.updateOffset.bind(this)}),this.maxDivHeight=function(){if(void 0!==Vr)return Vr;if(!document.body)return-1;let e=1e6;const t=Kr()?6e6:1e9,i=document.createElement("div");for(document.body.appendChild(i);;){const s=2*e;if(i.style.height=s+"px",s>t||i.clientHeight!==s)break;e=s}return i.remove(),Vr=e,e}(),Nt(this.gos,"RowContainerHeightService - maxDivHeight = "+this.maxDivHeight)}updateOffset(){if(!this.stretching)return;const e=this.beans.ctrlsSvc.getScrollFeature().getVScrollPosition().top,t=this.getUiBodyHeight();(e!==this.scrollY||t!==this.uiBodyHeight)&&(this.scrollY=e,this.uiBodyHeight=t,this.calculateOffset())}calculateOffset(){this.setUiContainerHeight(this.maxDivHeight),this.pixelsToShave=this.modelHeight-this.uiContainerHeight,this.maxScrollY=this.uiContainerHeight-this.uiBodyHeight;const e=this.scrollY/this.maxScrollY,t=e*this.pixelsToShave;Nt(this.gos,`RowContainerHeightService - Div Stretch Offset = ${t} (${this.pixelsToShave} * ${e})`),this.setDivStretchOffset(t)}setUiContainerHeight(e){e!==this.uiContainerHeight&&(this.uiContainerHeight=e,this.eventSvc.dispatchEvent({type:"rowContainerHeightChanged"}))}clearOffset(){this.setUiContainerHeight(this.modelHeight),this.pixelsToShave=0,this.setDivStretchOffset(0)}setDivStretchOffset(e){const t="number"==typeof e?Math.floor(e):null;this.divStretchOffset!==t&&(this.divStretchOffset=t,this.eventSvc.dispatchEvent({type:"heightScaleChanged"}))}setModelHeight(e){this.modelHeight=e,this.stretching=null!=e&&this.maxDivHeight>0&&e>this.maxDivHeight,this.stretching?this.calculateOffset():this.clearOffset()}getRealPixelPosition(e){return e-this.divStretchOffset}getUiBodyHeight(){const e=this.beans.ctrlsSvc.getScrollFeature().getVScrollPosition();return e.bottom-e.top}getScrollPositionForPixel(e){if(this.pixelsToShave<=0)return e;const t=e/(this.modelHeight-this.getUiBodyHeight());return this.maxScrollY*t}},class extends wt{constructor(){super(...arguments),this.beanName="visibleCols",this.colsAndGroupsMap={},this.leftCols=[],this.rightCols=[],this.centerCols=[],this.allCols=[],this.headerGroupRowCount=0,this.bodyWidth=0,this.leftWidth=0,this.rightWidth=0,this.isBodyWidthDirty=!0}refresh(e,t=!1){const{colFlex:i,colModel:s,colGroupSvc:o,colViewport:r,selectionColSvc:n}=this.beans;t||this.buildTrees(s,o),o?.updateOpenClosedVisibility(),this.leftCols=Oc(this.treeLeft),this.centerCols=Oc(this.treeCenter),this.rightCols=Oc(this.treeRight),n?.refreshVisibility(this.leftCols,this.centerCols,this.rightCols),this.joinColsAriaOrder(s),this.joinCols(),this.headerGroupRowCount=this.getHeaderRowCount(),this.setLeftValues(e),this.autoHeightCols=this.allCols.filter(e=>e.isAutoHeight()),i?.refreshFlexedColumns(),this.updateBodyWidths(),this.setFirstRightAndLastLeftPinned(s,this.leftCols,this.rightCols,e),r.checkViewportColumns(!1),this.eventSvc.dispatchEvent({type:"displayedColumnsChanged",source:e})}getHeaderRowCount(){if(!this.gos.get("hidePaddedHeaderRows"))return this.beans.colModel.cols.treeDepth;let e=0;for(const t of this.allCols){let i=t.getParent();for(;i;){if(!i.isPadding()){const t=i.getProvidedColumnGroup().getLevel()+1;t>e&&(e=t);break}i=i.getParent()}}return e}updateBodyWidths(){const e=Ws(this.centerCols),t=Ws(this.leftCols),i=Ws(this.rightCols);this.isBodyWidthDirty=this.bodyWidth!==e;(this.bodyWidth!==e||this.leftWidth!==t||this.rightWidth!==i)&&(this.bodyWidth=e,this.leftWidth=t,this.rightWidth=i,this.eventSvc.dispatchEvent({type:"columnContainerWidthChanged"}),this.eventSvc.dispatchEvent({type:"displayedColumnsWidthChanged"}))}setLeftValues(e){this.setLeftValuesOfCols(e),this.setLeftValuesOfGroups()}setFirstRightAndLastLeftPinned(e,t,i,s){let o,r;this.gos.get("enableRtl")?(o=t?t[0]:null,r=i?l(i):null):(o=t?l(t):null,r=i?i[0]:null);for(const t of e.getCols())t.setLastLeftPinned(t===o,s),t.setFirstRightPinned(t===r,s)}buildTrees(e,t){const i=e.getColsToShow(),s=i.filter(e=>"left"==e.getPinned()),o=i.filter(e=>"right"==e.getPinned()),r=i.filter(e=>"left"!=e.getPinned()&&"right"!=e.getPinned()),n=new Ic,a=e=>t?t.createColumnGroups(e):e.columns;this.treeLeft=a({columns:s,idCreator:n,pinned:"left",oldDisplayedGroups:this.treeLeft}),this.treeRight=a({columns:o,idCreator:n,pinned:"right",oldDisplayedGroups:this.treeRight}),this.treeCenter=a({columns:r,idCreator:n,pinned:null,oldDisplayedGroups:this.treeCenter}),this.updateColsAndGroupsMap()}clear(){this.leftCols=[],this.rightCols=[],this.centerCols=[],this.allCols=[],this.ariaOrderColumns=[]}joinColsAriaOrder(e){const t=e.getCols(),i=[],s=[],o=[];for(const e of t){const t=e.getPinned();t?!0===t||"left"===t?i.push(e):o.push(e):s.push(e)}this.ariaOrderColumns=i.concat(s).concat(o)}getAriaColIndex(e){let t;return t=Eo(e)?e.getLeafColumns()[0]:e,this.ariaOrderColumns.indexOf(t)+1}setLeftValuesOfGroups(){for(const e of[this.treeLeft,this.treeRight,this.treeCenter])for(const t of e)if(Eo(t)){t.checkLeft()}}setLeftValuesOfCols(e){const{colModel:t}=this.beans;if(!t.getColDefCols())return;const i=t.getCols().slice(0),s=this.gos.get("enableRtl");for(const t of[this.leftCols,this.rightCols,this.centerCols]){if(s){let i=Ws(t);for(const s of t)i-=s.getActualWidth(),s.setLeft(i,e)}else{let i=0;for(const s of t)s.setLeft(i,e),i+=s.getActualWidth()}kc(i,t)}for(const t of i)t.setLeft(null,e)}joinCols(){this.gos.get("enableRtl")?this.allCols=this.rightCols.concat(this.centerCols).concat(this.leftCols):this.allCols=this.leftCols.concat(this.centerCols).concat(this.rightCols)}getAllTrees(){return this.treeLeft&&this.treeRight&&this.treeCenter?this.treeLeft.concat(this.treeCenter).concat(this.treeRight):null}isColDisplayed(e){return this.allCols.indexOf(e)>=0}getLeftColsForRow(e){const{leftCols:t,beans:{colModel:i}}=this;return i.colSpanActive?this.getColsForRow(e,t):t}getRightColsForRow(e){const{rightCols:t,beans:{colModel:i}}=this;return i.colSpanActive?this.getColsForRow(e,t):t}getColsForRow(e,t,i,s){const o=[];let r=null;for(let n=0;n1){const e=d-1;for(let i=1;i<=e;i++)c.push(t[n+i]);n+=e}let u;if(i){u=!1;for(const e of c)i(e)&&(u=!0)}else u=!0;if(u){if(0===o.length&&r){!!s&&s(a)&&o.push(r)}o.push(a)}r=a}return o}getContainerWidth(e){switch(e){case"left":return this.leftWidth;case"right":return this.rightWidth;default:return this.bodyWidth}}getColBefore(e){const t=this.allCols,i=t.indexOf(e);return i>0?t[i-1]:null}isPinningLeft(){return this.leftCols.length>0}isPinningRight(){return this.rightCols.length>0}updateColsAndGroupsMap(){this.colsAndGroupsMap={};const e=e=>{this.colsAndGroupsMap[e.getUniqueId()]=e};Lc(this.treeCenter,!1,e),Lc(this.treeLeft,!1,e),Lc(this.treeRight,!1,e)}isVisible(e){return this.colsAndGroupsMap[e.getUniqueId()]===e}getFirstColumn(){const e=this.gos.get("enableRtl"),t=["leftCols","centerCols","rightCols"];e&&t.reverse();for(let i=0;i(t,i)=>{if(!this.isAlive())return;const s=Ig.has(t);if(s&&!e||!s&&e)return;if(!function(e){return!!kg[e]}(t))return;const o=(e,t)=>{const i=kg[e],s=this.gridOptions[i];"function"==typeof s&&this.beans.frameworkOverrides.wrapOutgoing(()=>s(t))};if(this.gridReadyFired)o(t,i);else if("gridReady"===t){o(t,i),this.gridReadyFired=!0;for(const e of this.queueEvents)o(e.eventName,e.event);this.queueEvents=[]}else this.queueEvents.push({eventName:t,event:i})}}wireBeans(e){this.gridOptions=e.gridOptions,this.validation=e.validation,this.api=e.gridApi,this.gridId=e.context.getId()}get gridOptionsContext(){return this.gridOptions.context}postConstruct(){this.validateGridOptions(this.gridOptions),this.eventSvc.addGlobalListener(this.globalEventHandlerFactory().bind(this),!0),this.eventSvc.addGlobalListener(this.globalEventHandlerFactory(!0).bind(this),!1),this.propEventSvc.setFrameworkOverrides(this.beans.frameworkOverrides),this.addManagedEventListeners({gridOptionsChanged:({options:e})=>{this.updateGridOptions({options:e,force:!0,source:"optionsUpdated"})}})}destroy(){super.destroy(),this.queueEvents=[]}get(e){return this.gridOptions[e]??Ot[e]}getCallback(e){return this.mergeGridCommonParams(this.gridOptions[e])}exists(e){return f(this.gridOptions[e])}mergeGridCommonParams(e){if(e){return t=>e(this.addCommon(t))}return e}updateGridOptions({options:e,force:t,source:i="api"}){const s={id:Xg++,properties:[]},o=[],{gridOptions:r,validation:n}=this;for(const a of Object.keys(e)){const l=It.applyGlobalGridOption(a,e[a]);n?.warnOnInitialPropertyUpdate(i,a);const d=t||"object"==typeof l&&"api"===i,c=r[a];if(d||c!==l){r[a]=l;const e={type:a,currentValue:l,previousValue:c,changeSet:s,source:i};o.push(e)}}this.validateGridOptions(this.gridOptions),s.properties=o.map(e=>e.type);for(const e of o)Nt(this,`Updated property ${e.type} from`,e.previousValue," to ",e.currentValue),this.propEventSvc.dispatchEvent(e)}addPropertyEventListener(e,t){this.propEventSvc.addEventListener(e,t)}removePropertyEventListener(e,t){this.propEventSvc.removeEventListener(e,t)}getDomDataKey(){return this.domDataKey}addCommon(e){return e.api=this.api,e.context=this.gridOptionsContext,e}validateOptions(e,t){for(const i of Object.keys(e)){const s=e[i];if(null==s||!1===s)continue;let o=t[i];"function"==typeof o&&(o=o(e,this.gridOptions,this.beans)),o&&this.assertModuleRegistered(o,i)}}validateGridOptions(e){this.validateOptions(e,qg),this.validation?.processGridOptions(e)}validateColDef(e,t,i){!i&&this.beans.dataTypeSvc?.isColPendingInference(t)||(this.validateOptions(e,Gg),this.validation?.validateColDef(e))}assertModuleRegistered(e,t){const i=Array.isArray(e)?e.some(e=>this.isModuleRegistered(e)):this.isModuleRegistered(e);return i||pi(200,{...this.getModuleErrorParams(),moduleName:e,reasonOrId:t}),i}getModuleErrorParams(){return{gridId:this.gridId,gridScoped:Xt(),rowModelType:this.get("rowModelType"),isUmd:Qt()}}isModuleRegistered(e){return Yt(e,this.gridId,this.get("rowModelType"))}setInstanceDomData(e){e[Qg]=this.instanceId}isElementInThisInstance(e){let t=e;for(;t;){const e=t[Qg];if(f(e)){return e===this.instanceId}t=t.parentElement}return!1}},class extends wt{constructor(){super(...arguments),this.beanName="colModel",this.pivotMode=!1,this.ready=!1,this.changeEventsDispatching=!1}postConstruct(){this.pivotMode=this.gos.get("pivotMode"),this.addManagedPropertyListeners(["groupDisplayType","treeData","treeDataDisplayType","groupHideOpenParents","rowNumbers","hidePaddedHeaderRows"],e=>this.refreshAll(Qs(e.source))),this.addManagedPropertyListeners(["defaultColDef","defaultColGroupDef","columnTypes","suppressFieldDotNotation"],this.recreateColumnDefs.bind(this)),this.addManagedPropertyListener("pivotMode",e=>this.setPivotMode(this.gos.get("pivotMode"),Qs(e.source)))}createColsFromColDefs(e){const{beans:t}=this,{valueCache:i,colAutosize:s,rowGroupColsSvc:o,pivotColsSvc:r,valueColsSvc:n,visibleCols:a,eventSvc:l,groupHierarchyColSvc:d}=t,c=this.colDefs?xo(t,e):void 0;i?.expire();const u=this.colDefCols?.list,h=this.colDefCols?.tree,g=ro(t,this.colDefs,!0,h,e);Us(t,this.colDefCols?.tree,g.columnTree);const p=g.columnTree,m=g.treeDepth,f=zs(p),C={};for(const e of f)C[e.getId()]=e;this.colDefCols={tree:p,treeDepth:m,list:f,map:C},this.createColumnsForService([d],this.colDefCols,e),o?.extractCols(e,u),r?.extractCols(e,u),n?.extractCols(e,u),this.ready=!0,this.changeEventsDispatching=!0,this.refreshCols(!0,e),this.changeEventsDispatching=!1,a.refresh(e),l.dispatchEvent({type:"columnEverythingChanged",source:e}),c&&(this.changeEventsDispatching=!0,c(),this.changeEventsDispatching=!1),l.dispatchEvent({type:"newColumnsLoaded",source:e}),"gridInitializing"===e&&s?.applyAutosizeStrategy()}refreshCols(e,t){if(!this.colDefCols)return;const i=this.cols?.tree;this.saveColOrder();const{autoColSvc:s,selectionColSvc:o,rowNumbersSvc:r,quickFilter:n,pivotResultCols:a,showRowGroupCols:l,rowAutoHeight:c,visibleCols:u,colViewport:h,eventSvc:g,formula:p}=this.beans,m=this.selectCols(a,this.colDefCols);p?.setFormulasActive(m),this.createColumnsForService([s,o,r],m,t);const f=(C=this.gos,this.showingPivotResult?!C.get("enableStrictPivotColumnOrder"):C.get("maintainColumnOrder"));var C;e&&!f||this.restoreColOrder(m),this.positionLockedCols(m),l?.refresh(),n?.refreshCols(),this.setColSpanActive(),c?.setAutoHeightActive(m),u.clear(),h.clear(),d(i,this.cols.tree)||g.dispatchEvent({type:"gridColumnsChanged"})}createColumnsForService(e,t,i){for(const s of e)s&&(s.createColumns(t,e=>{this.lastOrder=e(this.lastOrder),this.lastPivotOrder=e(this.lastPivotOrder)},i),s.addColumns(t))}selectCols(e,t){const i=e?.getPivotResultCols()??null;this.showingPivotResult=null!=i;const{map:s,list:o,tree:r,treeDepth:n}=i??t;if(this.cols={list:o.slice(),map:{...s},tree:r.slice(),treeDepth:n},i){i.list.some(e=>void 0!==this.cols?.map[e.getColId()])||(this.lastPivotOrder=null)}return this.cols}getColsToShow(){if(!this.cols)return[];const{beans:e,showingPivotResult:t,cols:i}=this,{valueColsSvc:s,selectionColSvc:o}=e,r=this.isPivotMode()&&!t,n=o?.isSelectionColumnEnabled(),a=Pi(e),l=s?.columns;return i.list.filter(e=>{const t=js(e);if(r){const i=l?.includes(e);return t||i||n&&Ks(e)||a&&$s(e)}return t||e.isVisible()})}refreshAll(e){this.ready&&(this.refreshCols(!1,e),this.beans.visibleCols.refresh(e))}setColsVisible(e,t=!1,i){yo(this.beans,{state:e.map(e=>({colId:"string"==typeof e?e:e.getColId(),hide:!t}))},i)}restoreColOrder(e){const t=this.showingPivotResult?this.lastPivotOrder:this.lastOrder;if(!t)return;const i=t.filter(t=>null!=e.map[t.getId()]);if(0===i.length)return;if(i.length===e.list.length)return void(e.list=i);const s=e=>{const t=e.getOriginalParent();if(!t)return!1;return t.getChildren().length>1||s(t)};if(!i.some(e=>s(e))){const t=new Set(i);for(const s of e.list)t.has(s)||i.push(s);return void(e.list=i)}const o=new Map;for(let e=0;e!o.has(e));if(0===r.length)return void(e.list=i);const n=(e,t)=>{const i=t?t.getOriginalParent():e.getOriginalParent();if(!i)return null;let s=null,r=null;for(const n of i.getChildren())if(n!==t&&n!==e){if(n instanceof Fs){const e=o.get(n);if(null==e)continue;(null==s||s{const t=o.get(e);null!=t&&(null==s||s=0;e--)d[c--]=a[e];for(let e=i.length-1;e>=0;e--){const t=i[e],s=l.get(t);if(s)if(Array.isArray(s))for(let e=s.length-1;e>=0;e--){const t=s[e];d[c--]=t}else d[c--]=s;d[c--]=t}e.list=d}positionLockedCols(e){e.list=mo(e.list,this.gos)}saveColOrder(){this.showingPivotResult?this.lastPivotOrder=this.cols?.list??null:this.lastOrder=this.cols?.list??null}getColumnDefs(e){return this.colDefCols&&this.beans.colDefFactory?.getColumnDefs(this.colDefCols.list,this.showingPivotResult,this.lastOrder,this.cols?.list??[],e)}setColSpanActive(){this.colSpanActive=!!this.cols?.list.some(e=>null!=e.getColDef().colSpan)}isPivotMode(){return this.pivotMode}setPivotMode(e,t){if(e===this.pivotMode)return;if(this.pivotMode=e,!this.ready)return;this.refreshCols(!1,t);const{visibleCols:i,eventSvc:s}=this.beans;i.refresh(t),s.dispatchEvent({type:"columnPivotModeChanged"})}isPivotActive(){const e=this.beans.pivotColsSvc?.columns;return this.pivotMode&&!!e?.length}recreateColumnDefs(e){if(!this.cols)return;this.beans.autoColSvc?.updateColumns(e);const t=Qs(e.source);this.createColsFromColDefs(t)}setColumnDefs(e,t){this.colDefs=e,this.createColsFromColDefs(t)}destroy(){Us(this.beans,this.colDefCols?.tree),super.destroy()}getColTree(){return this.cols?.tree??[]}getColDefColTree(){return this.colDefCols?.tree??[]}getColDefCols(){return this.colDefCols?.list??null}getCols(){return this.cols?.list??[]}forAllCols(e){const{pivotResultCols:t,autoColSvc:i,selectionColSvc:s,groupHierarchyColSvc:o}=this.beans;c(this.colDefCols?.list,e)||c(i?.columns?.list,e)||c(s?.columns?.list,e)||c(o?.columns?.list,e)||c(t?.getPivotResultCols()?.list,e)}getColsForKeys(e){return e?e.map(e=>this.getCol(e)).filter(e=>null!=e):[]}getColDefCol(e){return this.colDefCols?.list?this.getColFromCollection(e,this.colDefCols):null}getCol(e){return null==e?null:this.getColFromCollection(e,this.cols)}getColById(e){return this.cols?.map[e]??null}getColFromCollection(e,t){if(null==t)return null;const{map:i,list:s}=t;if("string"==typeof e&&i[e])return i[e];for(let t=0;t{const e=()=>{for(const e of this.getAllCellCtrls())e.onCellSelectionChanged()},t=()=>{for(const e of this.getAllCellCtrls())e.updateRangeBordersIfRangeCount()},i=()=>{this.eventSvc.addListener("cellSelectionChanged",e),this.eventSvc.addListener("columnMoved",t),this.eventSvc.addListener("columnPinned",t),this.eventSvc.addListener("columnVisible",t)},s=()=>{this.eventSvc.removeListener("cellSelectionChanged",e),this.eventSvc.removeListener("columnMoved",t),this.eventSvc.removeListener("columnPinned",t),this.eventSvc.removeListener("columnVisible",t)};this.addDestroyFunc(()=>s()),this.addManagedPropertyListeners(["enableRangeSelection","cellSelection"],()=>{Qi(this.gos)?i():s()});Qi(this.gos)&&i()}}wireBeans(e){this.pageBounds=e.pageBounds,this.colModel=e.colModel,this.pinnedRowModel=e.pinnedRowModel,this.rowModel=e.rowModel,this.focusSvc=e.focusSvc,this.rowContainerHeight=e.rowContainerHeight,this.ctrlsSvc=e.ctrlsSvc,this.editSvc=e.editSvc}postConstruct(){this.ctrlsSvc.whenReady(this,e=>{this.gridBodyCtrl=e.gridBodyCtrl,this.initialise()})}initialise(){this.addManagedEventListeners({paginationChanged:this.onPageLoaded.bind(this),pinnedRowDataChanged:this.onPinnedRowDataChanged.bind(this),pinnedRowsChanged:this.onPinnedRowsChanged.bind(this),displayedColumnsChanged:this.onDisplayedColumnsChanged.bind(this),bodyScroll:this.onBodyScroll.bind(this),bodyHeightChanged:this.redraw.bind(this,{})}),this.addManagedPropertyListeners(["domLayout","embedFullWidthRows"],()=>this.onDomLayoutChanged()),this.addManagedPropertyListeners(["suppressMaxRenderedRowRestriction","rowBuffer"],()=>this.redraw()),this.addManagedPropertyListener("suppressCellFocus",e=>this.onSuppressCellFocusChanged(e.currentValue)),this.addManagedPropertyListeners(["groupSuppressBlankHeader","getBusinessKeyForNode","fullWidthCellRenderer","fullWidthCellRendererParams","suppressStickyTotalRow","groupRowRenderer","groupRowRendererParams","loadingCellRenderer","loadingCellRendererParams","detailCellRenderer","detailCellRendererParams","enableRangeSelection","enableCellTextSelection"],()=>this.redrawRows()),this.addManagedPropertyListener("cellSelection",({currentValue:e,previousValue:t})=>{(!t&&e||t&&!e)&&this.redrawRows()});const{stickyRowSvc:e,gos:t,showRowGroupCols:i}=this.beans;if(i&&this.addManagedPropertyListener("showOpenedGroup",()=>{const e=i.columns;e.length&&this.refreshCells({columns:e,force:!0})}),e)this.stickyRowFeature=e.createStickyRowFeature(this,this.createRowCon.bind(this),this.destroyRowCtrls.bind(this));else{const e=this.gridBodyCtrl;e.setStickyTopHeight(0),e.setStickyBottomHeight(0)}this.registerCellEventListeners(),this.initialiseCache(),this.printLayout=xi(t,"print"),this.embedFullWidthRows=this.printLayout||t.get("embedFullWidthRows"),this.redrawAfterModelUpdate()}initialiseCache(){if(this.gos.get("keepDetailRows")){const e=this.getKeepDetailRowsCount(),t=null!=e?e:3;this.cachedRowCtrls=new am(t)}}getKeepDetailRowsCount(){return this.gos.get("keepDetailRowsCount")}getStickyTopRowCtrls(){return this.stickyRowFeature?.stickyTopRowCtrls??[]}getStickyBottomRowCtrls(){return this.stickyRowFeature?.stickyBottomRowCtrls??[]}updateAllRowCtrls(){const e=Object.values(this.rowCtrlsByRowIndex),t=Object.values(this.zombieRowCtrls),i=this.cachedRowCtrls?.getEntries()??[];t.length>0||i.length>0?this.allRowCtrls=[...e,...t,...i]:this.allRowCtrls=e}isCellBeingRendered(e,t){const i=this.rowCtrlsByRowIndex[e];if(!t||!i)return!!i;if(i.isFullWidth())return!0;const s=this.beans.spannedRowRenderer?.getCellByPosition({rowIndex:e,column:t,rowPinned:null});return!!s||!!i.getCellCtrl(t)||!i.isRowRendered()}updateCellFocus(e){for(const t of this.getAllCellCtrls())t.onCellFocused(e);for(const t of this.getFullWidthRowCtrls())t.onFullWidthRowFocused(e)}onCellFocusChanged(e){if(null!=e?.rowIndex&&!e.rowPinned){const t=this.beans.colModel.getCol(e.column)??void 0;this.isCellBeingRendered(e.rowIndex,t)||this.redraw()}this.updateCellFocus(e)}onSuppressCellFocusChanged(e){for(const t of this.getAllCellCtrls())t.onSuppressCellFocusChanged(e);for(const t of this.getFullWidthRowCtrls())t.onSuppressCellFocusChanged(e)}registerCellEventListeners(){this.addManagedEventListeners({cellFocused:e=>this.onCellFocusChanged(e),cellFocusCleared:()=>this.updateCellFocus(),flashCells:e=>{const{cellFlashSvc:t}=this.beans;if(t)for(const i of this.getAllCellCtrls())t.onFlashCells(i,e)},columnHoverChanged:()=>{for(const e of this.getAllCellCtrls())e.onColumnHover()},displayedColumnsChanged:()=>{for(const e of this.getAllCellCtrls())e.onDisplayedColumnsChanged()},displayedColumnsWidthChanged:()=>{if(this.printLayout)for(const e of this.getAllCellCtrls())e.onLeftChanged()}}),this.setupRangeSelectionListeners(),this.refreshListenersToColumnsForCellComps(),this.addManagedEventListeners({gridColumnsChanged:this.refreshListenersToColumnsForCellComps.bind(this)}),this.addDestroyFunc(this.removeGridColumnListeners.bind(this))}removeGridColumnListeners(){for(const e of this.destroyFuncsForColumnListeners)e();this.destroyFuncsForColumnListeners.length=0}refreshListenersToColumnsForCellComps(){this.removeGridColumnListeners();const e=this.colModel.getCols();for(const t of e){const e=e=>{for(const i of this.getAllCellCtrls())i.column===t&&e(i)},i=()=>{e(e=>e.onLeftChanged())},s=()=>{e(e=>e.onWidthChanged())},o=()=>{e(e=>e.onFirstRightPinnedChanged())},r=()=>{e(e=>e.onLastLeftPinnedChanged())},n=()=>{e(e=>e.onColDefChanged())};t.__addEventListener("leftChanged",i),t.__addEventListener("widthChanged",s),t.__addEventListener("firstRightPinnedChanged",o),t.__addEventListener("lastLeftPinnedChanged",r),t.__addEventListener("colDefChanged",n),this.destroyFuncsForColumnListeners.push(()=>{t.__removeEventListener("leftChanged",i),t.__removeEventListener("widthChanged",s),t.__removeEventListener("firstRightPinnedChanged",o),t.__removeEventListener("lastLeftPinnedChanged",r),t.__removeEventListener("colDefChanged",n)})}}onDomLayoutChanged(){const e=xi(this.gos,"print"),t=e||this.gos.get("embedFullWidthRows"),i=t!==this.embedFullWidthRows||this.printLayout!==e;this.printLayout=e,this.embedFullWidthRows=t,i&&this.redrawAfterModelUpdate({domLayoutChanged:!0})}datasourceChanged(){this.firstRenderedRow=0,this.lastRenderedRow=-1;const e=Object.keys(this.rowCtrlsByRowIndex);this.removeRowCtrls(e)}onPageLoaded(e){const t={recycleRows:e.keepRenderedRows,animate:e.animate,newData:e.newData,newPage:e.newPage,onlyBody:!0};this.redrawAfterModelUpdate(t)}getAllCellsNotSpanningForColumn(e){const t=[];for(const i of this.getAllRowCtrls()){const s=i.getCellCtrl(e,!0)?.eGui;s&&t.push(s)}return t}refreshFloatingRowComps(e=!0){this.refreshFloatingRows(this.topRowCtrls,"top",e),this.refreshFloatingRows(this.bottomRowCtrls,"bottom",e)}refreshFloatingRows(e,t,i){const{pinnedRowModel:s,beans:o,printLayout:r}=this,n=Object.fromEntries(e.map(e=>[e.rowNode.id,e]));s?.forEachPinnedRow(t,(a,l)=>{const d=e[l];d&&void 0===s.getPinnedRowById(d.rowNode.id,t)&&(d.destroyFirstPass(),d.destroySecondPass()),a.id in n&&i?(e[l]=n[a.id],delete n[a.id]):e[l]=new Hp(a,o,!1,!1,r)});const a=("top"===t?s?.getPinnedTopRowCount():s?.getPinnedBottomRowCount())??0;e.length=a}onPinnedRowDataChanged(){this.redrawAfterModelUpdate({recycleRows:!0})}onPinnedRowsChanged(){this.redrawAfterModelUpdate({recycleRows:!0})}redrawRow(e,t=!1){if(e.sticky)this.stickyRowFeature?.refreshStickyNode(e);else{if(this.cachedRowCtrls?.has(e))return void this.cachedRowCtrls.removeRow(e);{const t=t=>{const i=t[e.rowIndex];i&&i.rowNode===e&&(i.destroyFirstPass(),i.destroySecondPass(),t[e.rowIndex]=this.createRowCon(e,!1,!1))};switch(e.rowPinned){case"top":t(this.topRowCtrls);break;case"bottom":t(this.bottomRowCtrls);break;default:t(this.rowCtrlsByRowIndex),this.updateAllRowCtrls()}}}t||this.dispatchDisplayedRowsChanged(!1)}redrawRows(e){const{editSvc:t}=this.beans;t?.isEditing()&&(t.isBatchEditing()?t.cleanupEditors():t.stopEditing(void 0,{source:"api"}));if(null!=e){for(const t of e??[])this.redrawRow(t,!0);this.dispatchDisplayedRowsChanged(!1)}else this.redrawAfterModelUpdate()}redrawAfterModelUpdate(e={}){this.getLockOnRefresh();const t=this.beans.focusSvc?.getFocusCellToUseAfterRefresh();this.updateContainerHeights(),this.scrollToTopIfNewData(e);const i=!e.domLayoutChanged&&!!e.recycleRows,s=e.animate&&Ii(this.gos),o=i?this.getRowsToRecycle():null;i||this.removeAllRowComps(),this.workOutFirstAndLastRowsToRender();const{stickyRowFeature:r,gos:n}=this;if(r){r.checkStickyRows();const e=r.extraTopHeight+r.extraBottomHeight;e&&this.updateContainerHeights(e)}this.recycleRows(o,s),this.gridBodyCtrl.updateRowCount(),e.onlyBody||this.refreshFloatingRowComps(n.get("enableRowPinning")?i:void 0),this.dispatchDisplayedRowsChanged(),null!=t&&this.restoreFocusedCell(t),this.releaseLockOnRefresh()}scrollToTopIfNewData(e){const t=e.newData||e.newPage,i=this.gos.get("suppressScrollOnNewData");t&&!i&&(this.gridBodyCtrl.scrollFeature.scrollToTop(),this.stickyRowFeature?.resetOffsets())}updateContainerHeights(e=0){const{rowContainerHeight:t}=this;if(this.printLayout)return void t.setModelHeight(null);let i=this.pageBounds.getCurrentPageHeight();0===i&&(i=1),t.setModelHeight(i+e)}getLockOnRefresh(){if(this.refreshInProgress)throw new Error(vi(252));this.refreshInProgress=!0,this.beans.frameworkOverrides.getLockOnRefresh?.()}releaseLockOnRefresh(){this.refreshInProgress=!1,this.beans.frameworkOverrides.releaseLockOnRefresh?.()}isRefreshInProgress(){return this.refreshInProgress}restoreFocusedCell(e){if(!e)return;const t=this.beans.focusSvc,i=this.findPositionToFocus(e);i?e.rowIndex===i.rowIndex&&e.rowPinned==i.rowPinned?t.doesRowOrCellHaveBrowserFocus()||this.updateCellFocus(ms(this.gos,{...i,forceBrowserFocus:!0,preventScrollOnBrowserFocus:!0,type:"cellFocused"})):t.setFocusedCell({...i,preventScrollOnBrowserFocus:!0,forceBrowserFocus:!0}):t.focusHeaderPosition({headerPosition:{headerRowIndex:Nn(this.beans)-1,column:e.column}})}findPositionToFocus(e){const{pagination:t,pageBounds:i}=this.beans;let s=e;for(null==s.rowPinned&&t&&i&&!t.isRowInPage(s.rowIndex)&&(s={rowPinned:null,rowIndex:i.getFirstRow()});s;){if(null==s.rowPinned&&i)if(s.rowIndexi.getLastRow()&&(s={rowPinned:null,rowIndex:i.getLastRow()});const t=this.getRowByPosition(s);if(t?.isAlive())return{...t.getRowPosition(),column:e.column};s=Pn(this.beans,s)}return null}getAllCellCtrls(){const e=[],t=this.getAllRowCtrls(),i=t.length;for(let s=0;sdm(e.rowNode,t)):i}getCellCtrls(e,t){let i;f(t)&&(i={},t.forEach(e=>{const t=this.colModel.getCol(e);f(t)&&(i[t.getId()]=!0)}));const s=[];for(const t of this.getRowCtrls(e))for(const e of t.getAllCellCtrls()){const t=e.column.getId();i&&!i[t]||s.push(e)}return s}destroy(){this.removeAllRowComps(!0),super.destroy()}removeAllRowComps(e=!1){const t=Object.keys(this.rowCtrlsByRowIndex);this.removeRowCtrls(t,e),this.stickyRowFeature?.destroyStickyCtrls()}getRowsToRecycle(){const e=[];for(const t of Object.keys(this.rowCtrlsByRowIndex)){null==this.rowCtrlsByRowIndex[t].rowNode.id&&e.push(t)}this.removeRowCtrls(e);const t={};for(const e of Object.values(this.rowCtrlsByRowIndex)){t[e.rowNode.id]=e}return this.rowCtrlsByRowIndex={},t}removeRowCtrls(e,t=!1){for(const i of e){const e=this.rowCtrlsByRowIndex[i];e&&(e.destroyFirstPass(t),e.destroySecondPass()),delete this.rowCtrlsByRowIndex[i]}}onBodyScroll(e){"vertical"===e.direction&&this.redraw({afterScroll:!0})}redraw(e={}){const{focusSvc:t,animationFrameSvc:i}=this.beans,{afterScroll:s}=e;let o;const r=this.stickyRowFeature;r&&(o=t?.getFocusCellToUseAfterRefresh()||void 0);const n=this.firstRenderedRow,a=this.lastRenderedRow;this.workOutFirstAndLastRowsToRender();let l=!1;if(r){l=r.checkStickyRows();const e=r.extraTopHeight+r.extraBottomHeight;e&&this.updateContainerHeights(e)}const d=this.firstRenderedRow!==n||this.lastRenderedRow!==a;if((!s||l||d)&&(this.getLockOnRefresh(),this.recycleRows(null,!1,s),this.releaseLockOnRefresh(),this.dispatchDisplayedRowsChanged(s&&!l),null!=o)){const e=t?.getFocusCellToUseAfterRefresh();null!=o&&null==e&&(i?.flushAllFrames(),this.restoreFocusedCell(o))}}removeRowCompsNotToDraw(e,t){const i={};for(const t of e)i[t]=!0;const s=Object.keys(this.rowCtrlsByRowIndex).filter(e=>!i[e]);this.removeRowCtrls(s,t)}calculateIndexesToDraw(e){const t=[];for(let e=this.firstRenderedRow;e<=this.lastRenderedRow;e++)t.push(e);const i=this.beans.pagination,s=this.beans.focusSvc?.getFocusedCell()?.rowIndex;null!=s&&(sthis.lastRenderedRow)&&(!i||i.isRowInPage(s))&&s{const i=e.rowNode.rowIndex;null!=i&&i!==s&&(ithis.lastRenderedRow)&&this.doNotUnVirtualiseRow(e)&&t.push(i)};for(const e of Object.values(this.rowCtrlsByRowIndex))o(e);if(e)for(const t of Object.values(e))o(t);t.sort((e,t)=>e-t);const r=[];for(let e=0;e{this.destroyRowCtrls(e,t),this.updateAllRowCtrls(),this.dispatchDisplayedRowsChanged()}):this.destroyRowCtrls(e,t)}this.updateAllRowCtrls()}dispatchDisplayedRowsChanged(e=!1){this.eventSvc.dispatchEvent({type:"displayedRowsChanged",afterScroll:e})}onDisplayedColumnsChanged(){const{visibleCols:e}=this.beans,t=e.isPinningLeft(),i=e.isPinningRight();(this.pinningLeft!==t||i!==this.pinningRight)&&(this.pinningLeft=t,this.pinningRight=i,this.embedFullWidthRows&&this.redrawFullWidthEmbeddedRows())}redrawFullWidthEmbeddedRows(){const e=[];for(const t of this.getFullWidthRowCtrls()){const i=t.rowNode.rowIndex;e.push(i.toString())}this.refreshFloatingRowComps(),this.removeRowCtrls(e),this.redraw({afterScroll:!0})}getFullWidthRowCtrls(e){const t=lm(e);return this.getAllRowCtrls().filter(e=>{if(!e.isFullWidth())return!1;const i=e.rowNode;return!(null!=t&&!dm(i,t))})}createOrUpdateRowCtrl(e,t,i,s){let o,r=this.rowCtrlsByRowIndex[e];r||(o=this.rowModel.getRow(e),f(o)&&f(t)&&t[o.id]&&o.alreadyRendered&&(r=t[o.id],t[o.id]=null));if(!r){if(o||(o=this.rowModel.getRow(e)),!f(o))return;r=this.createRowCon(o,i,s)}o&&(o.alreadyRendered=!0),this.rowCtrlsByRowIndex[e]=r}destroyRowCtrls(e,t){const i=[];if(e)for(const s of Object.values(e))if(s)if(this.cachedRowCtrls&&s.isCacheable())this.cachedRowCtrls.addRow(s);else if(s.destroyFirstPass(!t),t){const e=s.instanceId;this.zombieRowCtrls[e]=s,i.push(()=>{s.destroySecondPass(),delete this.zombieRowCtrls[e]})}else s.destroySecondPass();t&&(i.push(()=>{this.isAlive()&&(this.updateAllRowCtrls(),this.dispatchDisplayedRowsChanged())}),window.setTimeout(()=>{for(const e of i)e()},400))}getRowBuffer(){return this.gos.get("rowBuffer")}getRowBufferInPixels(){return this.getRowBuffer()*Ei(this.beans)}workOutFirstAndLastRowsToRender(){const{rowContainerHeight:e,pageBounds:t,rowModel:i}=this;let s,o;if(e.updateOffset(),i.isRowsToRender())if(this.printLayout)this.beans.environment.refreshRowHeightVariable(),s=t.getFirstRow(),o=t.getLastRow();else{const r=this.getRowBufferInPixels(),n=this.ctrlsSvc.getScrollFeature(),a=this.gos.get("suppressRowVirtualisation");let l,d,c=!1;do{const i=t.getPixelOffset(),{pageFirstPixel:s,pageLastPixel:o}=t.getCurrentPagePixelRange(),u=e.divStretchOffset,h=n.getVScrollPosition(),g=h.top,p=h.bottom;a?(l=s+u,d=o+u):(l=Math.max(g+i-r,s)+u,d=Math.min(p+i+r,o)+u),this.firstVisibleVPixel=Math.max(g+i,s)+u,this.lastVisibleVPixel=Math.min(p+i,o)+u,c=this.ensureAllRowsInRangeHaveHeightsCalculated(l,d)}while(c);let u=i.getRowIndexAtPixel(l),h=i.getRowIndexAtPixel(d);const g=t.getFirstRow(),p=t.getLastRow();up&&(h=p),s=u,o=h}else s=0,o=-1;const r=xi(this.gos,"normal"),n=this.gos.get("suppressMaxRenderedRowRestriction"),a=Math.max(this.getRowBuffer(),500);r&&!n&&o-s>a&&(o=s+a);const l=s!==this.firstRenderedRow,d=o!==this.lastRenderedRow;(l||d)&&(this.firstRenderedRow=s,this.lastRenderedRow=o,this.eventSvc.dispatchEvent({type:"viewportChanged",firstRow:s,lastRow:o}))}dispatchFirstDataRenderedEvent(){this.dataFirstRenderedFired||(this.dataFirstRenderedFired=!0,Ye(this.beans,()=>{this.beans.eventSvc.dispatchEvent({type:"firstDataRendered",firstRow:this.firstRenderedRow,lastRow:this.lastRenderedRow})}))}ensureAllRowsInRangeHaveHeightsCalculated(e,t){const i=this.pinnedRowModel?.ensureRowHeightsValid(),s=this.stickyRowFeature?.ensureRowHeightsValid(),{pageBounds:o,rowModel:r}=this,n=r.ensureRowHeightsValid(e,t,o.getFirstRow(),o.getLastRow());return(n||s)&&this.eventSvc.dispatchEvent({type:"recalculateRowBounds"}),!!(s||n||i)&&(this.updateContainerHeights(),!0)}doNotUnVirtualiseRow(e){const t=!1,i=e.rowNode,s=this.focusSvc.isRowFocused(i.rowIndex,i.rowPinned),o=this.editSvc?.isEditing(e),r=i.detail;if(!(s||o||r))return t;return!!this.isRowPresent(i)||t}isRowPresent(e){return!!this.rowModel.isRowPresent(e)&&(this.beans.pagination?.isRowInPage(e.rowIndex)??!0)}createRowCon(e,t,i){const s=this.cachedRowCtrls?.getRow(e)??null;if(s)return s;const o=i&&!this.printLayout&&!!this.beans.animationFrameSvc?.active;return new Hp(e,this.beans,t,o,this.printLayout)}getRenderedNodes(){const e=Object.values(this.rowCtrlsByRowIndex).map(e=>e.rowNode);return[...this.getStickyTopRowCtrls().map(e=>e.rowNode),...e,...this.getStickyBottomRowCtrls().map(e=>e.rowNode)]}getRowByPosition(e){let t;const{rowIndex:i}=e;switch(e.rowPinned){case"top":t=this.topRowCtrls[i];break;case"bottom":t=this.bottomRowCtrls[i];break;default:t=this.rowCtrlsByRowIndex[i],t||(t=this.getStickyTopRowCtrls().find(e=>e.rowNode.rowIndex===i)||null,t||(t=this.getStickyBottomRowCtrls().find(e=>e.rowNode.rowIndex===i)||null))}return t}isRangeInRenderedViewport(e,t){if(null==e||null==t)return!1;const i=e>this.lastRenderedRow;return!(tthis.callColumnCellValueChangedHandler(e);this.eventSvc.addListener("cellValueChanged",i,!0),this.addDestroyFunc(()=>this.eventSvc.removeListener("cellValueChanged",i,!0)),this.addManagedPropertyListener("treeData",e=>this.isTreeData=e.currentValue)}getValueForDisplay(e){const t=this.beans,i=e.column,s=e.node,o=t.showRowGroupColValueSvc,r=!i&&s.group,n=i?.colDef.showRowGroup,a=!this.isTreeData||s.footer;if(o&&a&&(r||n)){const t=o.getGroupValue(s,i,this.displayIgnoresAggData(s));return null==t?{value:null,valueFormatted:null}:{value:t.value,valueFormatted:e.includeValueFormatted?o.formatAndPrefixGroupColValue(t,i,e.exporting):null}}if(!i)return{value:s.key,valueFormatted:null};let l=this.getValue(i,s,e.from,this.displayIgnoresAggData(s)),d=l;const c=t.formula;i.isAllowFormula()&&c?.isFormula(l)&&(e.useRawFormula?(l=c.normaliseFormula(l,!0),d=c.resolveValue(i,s)):(l=c.resolveValue(i,s),d=l));return{value:l,valueFormatted:e.includeValueFormatted&&!(e.exporting&&!1===i.colDef.useValueFormatterForExport)?this.formatValue(i,s,d):null}}getValue(e,t,i,s=!1){if(this.initialised||this.init(),!t)return;const o=e.getColDef();if(!t.group){const t=o.pivotValueColumn;t&&(e=t)}const r=this.editSvc?.getPendingEditValue(t,e,i);if(void 0!==r)return r;const n=o.showRowGroup;if("string"==typeof n){if((this.beans.rowGroupColsSvc?.getColumnIndex(n)??-1)>t.level)return null}let a=this.resolveValue(e,t,s);if(this.cellExpressions&&P(a)){const i=a.substring(1);a=this.executeValueGetter(i,t.data,e,t)}return a}getFormulaFromDataSource(e,t){const i=this.formulaDataSvc;if(!i?.hasDataSource()||!e.isAllowFormula())return;const s=i.getFormula({column:e,rowNode:t});return P(s)?s:void 0}displayIgnoresAggData(e){return!(!e.group||!e.expanded||e.footer)&&((!e.leafGroup||!this.colModel.isPivotMode())&&(!!e.sibling&&!this.gos.get("groupSuppressBlankHeader")))}resolveValue(e,t,i){const s=e.getColDef(),o=e.getColId(),r=this.isTreeData,n=this.getFormulaFromDataSource(e,t);if(void 0!==n)return n;const a=!i&&t.aggData&&void 0!==t.aggData[o];if(r&&a)return t.aggData[o];const l=t.data,d=s.field;if(r&&s.valueGetter)return this.executeValueGetter(s.valueGetter,l,e,t);if(r&&d&&l)return Jc(l,d,e.isFieldContainsDots());const c=t.groupData;if(c&&o in c)return t.groupData[o];if(a)return t.aggData[o];const u=s.showRowGroup,h="string"!=typeof u||!t.group,g=this.isSsrm&&i&&!!s.aggFunc,p=this.isSsrm&&t.footer&&t.field&&(!0===u||u===t.field);if(s.valueGetter&&!g){if(!h)return;return this.executeValueGetter(s.valueGetter,l,e,t)}if(p)return Jc(l,t.field,e.isFieldContainsDots());if(d&&l&&!g){if(!h)return;return Jc(l,d,e.isFieldContainsDots())}}parseValue(e,t,i,s){const o=e.getColDef();if(o.allowFormula&&this.beans.formula?.isFormula(i))return i;const r=o.valueParser;if(f(r)){const n=ms(this.gos,{node:t,data:t?.data,oldValue:s,newValue:i,colDef:o,column:e});return"function"==typeof r?r(n):this.expressionSvc?.evaluate(r,n)}return i}getDeleteValue(e,t){return f(e.getColDef().valueParser)?this.parseValue(e,t,"",this.getValueForDisplay({column:e,node:t,from:"edit"}).value)??null:null}formatValue(e,t,i,s,o=!0){const{expressionSvc:r}=this.beans;let n,a=null;const l=e.getColDef();if(s?n=s:o&&(n=l.valueFormatter),n){const s=t?t.data:null,o=ms(this.gos,{value:i,node:t,data:s,colDef:l,column:e});a="function"==typeof n?n(o):r?r.evaluate(n,o):null}else if(l.refData)return l.refData[i]||"";return null==a&&Array.isArray(i)&&(a=i.join(", ")),a}setValue(e,t,i,s){const o=t.getColDef();if(!e.data&&this.canCreateRowNodeData(e,o)&&(e.data={}),!this.isSetValueSupported({column:t,newValue:i,colDef:o}))return!1;const r=this.getValue(t,e,"data"),n=ms(this.gos,{node:e,data:e.data,oldValue:r,newValue:i,colDef:o,column:t}),a=e.group?o.groupRowValueSetter:void 0;let l=!1,d=!1;if(e.data){const r=this.handleExternalFormulaChange({column:t,eventSource:s,newValue:i,setterParams:n,rowNode:e});if(null!==r)return r;l=this.computeValueChange({column:t,rowNode:e,newValue:i,params:n,rowData:e.data,valueSetter:o.valueSetter,field:o.field})??!0}if(a){d=a(ms(this.gos,{node:e,data:e.data,oldValue:r,newValue:i,colDef:o,column:t,eventSource:s,valueChanged:l||i!==r,aggregatedChildren:this.beans.aggStage?.getAggregatedChildren(e,t)??[]}))??!0}return!(!l&&!d)&&this.finishValueChange(e,t,n,s)}canCreateRowNodeData(e,t){return!e.group||null==t.groupRowValueSetter&&null==t.groupRowEditable&&!t.pivotValueColumn}finishValueChange(e,t,i,s){e.resetQuickFilterAggregateText(),this.valueCache?.onDataChanged();const o=this.getValue(t,e,"data");return this.dispatchCellValueChangedEvent(e,i,o,s),e.pinnedSibling&&this.dispatchCellValueChangedEvent(e.pinnedSibling,i,o,s),!0}isSetValueSupported(e){const{column:t,newValue:i,colDef:s}=e,{field:o,valueSetter:r}=s,n=this.beans.formula,a=t.isAllowFormula()&&n?.isFormula(i),l=!!this.formulaDataSvc?.hasDataSource();return!C(o)||!C(r)||l&&a?!(this.dataTypeSvc&&!this.dataTypeSvc.checkType(t,i))||(gi(135),!1):(gi(17),!1)}handleExternalFormulaChange(e){const{column:t,rowNode:i,newValue:s,eventSource:o,setterParams:r}=e,n=this.beans.formula,a=this.formulaDataSvc;if(!a?.hasDataSource()||!t.isAllowFormula())return null;const l=n?.isFormula(s),d=a.getFormula({column:t,rowNode:i});if(l){if(!(d!==s))return!1;a.setFormula({column:t,rowNode:i,formula:s});const e=n?.resolveValue(t,i),l=t.getColDef();if(f(l.valueSetter)||!C(l.field)){const s={...r,newValue:e};this.computeValueChange({column:t,rowNode:i,newValue:e,params:s,rowData:i.data,valueSetter:l.valueSetter,field:l.field})}return this.finishValueChange(i,t,r,o)}return void 0!==d&&a.setFormula({column:t,rowNode:i,formula:void 0}),null}computeValueChange(e){const{valueSetter:t,params:i,rowData:s,field:o,column:r,newValue:n}=e;return f(t)?"function"==typeof t?t(i):this.expressionSvc?.evaluate(t,i):!!s&&this.setValueUsingField(s,o,n,r.isFieldContainsDots())}dispatchCellValueChangedEvent(e,t,i,s){this.eventSvc.dispatchEvent({type:"cellValueChanged",event:null,rowIndex:e.rowIndex,rowPinned:e.rowPinned,column:t.column,colDef:t.colDef,data:e.data,node:e,oldValue:t.oldValue,newValue:i,value:i,source:s})}callColumnCellValueChangedHandler(e){const t=e.colDef.onCellValueChanged;"function"==typeof t&&this.beans.frameworkOverrides.wrapOutgoing(()=>{t({node:e.node,data:e.data,oldValue:e.oldValue,newValue:e.newValue,colDef:e.colDef,column:e.column,api:e.api,context:e.context})})}setValueUsingField(e,t,i,s){if(!t)return!1;let o=!1;if(s){const s=t.split(".");let r=e;for(;s.length>0&&r;){const e=s.shift();0===s.length?(o=r[e]===i,o||(r[e]=i)):r=r[e]}}else o=e[t]===i,o||(e[t]=i);return!o}executeValueGetterWithValueCache(e,t,i,s){const o=i.getColId(),r=this.valueCache.getValue(s,o);if(void 0!==r)return r;const n=this.executeValueGetterWithoutValueCache(e,t,i,s);return this.valueCache.setValue(s,o,n),n}executeValueGetterWithoutValueCache(e,t,i,s){const o=ms(this.gos,{data:t,node:s,column:i,colDef:i.getColDef(),getValue:e=>this.getValueCallback(s,e)});let r;return r="function"==typeof e?e(o):this.expressionSvc?.evaluate(e,o),r}getValueCallback(e,t){const i=this.colModel.getColDefCol(t);return i?this.getValue(i,e,"data"):null}getKeyForNode(e,t){const i=this.getValue(e,t,"data"),s=e.getColDef().keyCreator;let o=i;if(s){o=s(ms(this.gos,{value:i,colDef:e.getColDef(),column:e,node:t,data:t.data}))}return"string"==typeof o||null==o||(o=String(o),"[object Object]"===o&&gi(121)),o}},class extends wt{constructor(){super(...arguments),this.beanName="focusSvc",this.focusFallbackTimeout=null,this.needsFocusRestored=!1}wireBeans(e){this.colModel=e.colModel,this.visibleCols=e.visibleCols,this.rowRenderer=e.rowRenderer,this.navigation=e.navigation,this.filterManager=e.filterManager,this.overlays=e.overlays}postConstruct(){const e=this.clearFocusedCell.bind(this);this.addManagedEventListeners({columnPivotModeChanged:e,newColumnsLoaded:this.onColumnEverythingChanged.bind(this),columnGroupOpened:e,columnRowGroupChanged:e}),this.addDestroyFunc(sn(this.beans))}attemptToRecoverFocus(){this.needsFocusRestored=!0,null!=this.focusFallbackTimeout&&clearTimeout(this.focusFallbackTimeout),this.focusFallbackTimeout=window.setTimeout(this.setFocusRecovered.bind(this),100)}setFocusRecovered(){this.needsFocusRestored=!1,null!=this.focusFallbackTimeout&&(clearTimeout(this.focusFallbackTimeout),this.focusFallbackTimeout=null)}shouldTakeFocus(){return this.gos.get("suppressFocusAfterRefresh")?(this.setFocusRecovered(),!1):this.needsFocusRestored?(this.setFocusRecovered(),!0):this.doesRowOrCellHaveBrowserFocus()}onColumnEverythingChanged(){if(!this.focusedCell)return;const e=this.focusedCell.column,t=this.colModel.getCol(e.getId());e!==t&&this.clearFocusedCell()}getFocusCellToUseAfterRefresh(){const{gos:e,focusedCell:t}=this;return e.get("suppressFocusAfterRefresh")||e.get("suppressCellFocus")||!t?null:this.doesRowOrCellHaveBrowserFocus()?t:null}getFocusHeaderToUseAfterRefresh(){return this.gos.get("suppressFocusAfterRefresh")||!this.focusedHeader?null:this.isDomDataPresentInHierarchy(A(this.beans),la)?this.focusedHeader:null}doesRowOrCellHaveBrowserFocus(){const e=A(this.beans);return!!this.isDomDataPresentInHierarchy(e,Hl,!0)||this.isDomDataPresentInHierarchy(e,Wl,!0)}isDomDataPresentInHierarchy(e,t,i){let s=e;for(;s;){const e=Ti(this.gos,s,t);if(e)return!e.destroyed||!i||(this.attemptToRecoverFocus(),!1);s=s.parentNode}return!1}getFocusedCell(){return this.focusedCell}getFocusEventParams(e){const{rowIndex:t,rowPinned:i,column:s}=e,o={rowIndex:t,rowPinned:i,column:s,isFullWidthCell:!1},r=this.rowRenderer.getRowByPosition({rowIndex:t,rowPinned:i});return r&&(o.isFullWidthCell=r.isFullWidth()),o}clearFocusedCell(){if(null==this.focusedCell)return;const e=this.getFocusEventParams(this.focusedCell);this.focusedCell=null,this.eventSvc.dispatchEvent({type:"cellFocusCleared",...e})}setFocusedCell(e){this.setFocusRecovered();const{column:t,rowIndex:i,rowPinned:s,forceBrowserFocus:o=!1,preventScrollOnBrowserFocus:r=!1,sourceEvent:n}=e,a=this.colModel.getCol(t);if(!a)return void(this.focusedCell=null);this.focusedCell={rowIndex:i,rowPinned:m(s),column:a};const l=this.getFocusEventParams(this.focusedCell);this.eventSvc.dispatchEvent({type:"cellFocused",...l,...this.previousCellFocusParams&&{previousParams:this.previousCellFocusParams},forceBrowserFocus:o,preventScrollOnBrowserFocus:r,sourceEvent:n}),this.previousCellFocusParams=l}isCellFocused(e){return null!=this.focusedCell&&wn(e,this.focusedCell)}isHeaderWrapperFocused(e){if(null==this.focusedHeader)return!1;const{column:t,rowCtrl:{rowIndex:i,pinned:s}}=e,{column:o,headerRowIndex:r}=this.focusedHeader;return t===o&&i===r&&s==o.getPinned()}focusHeaderPosition(e){if(this.setFocusRecovered(),In(this.beans))return!1;const{direction:t,fromTab:i,allowUserOverride:s,event:o,fromCell:r,rowWithoutSpanValue:n,scroll:a=!0}=e;let{headerPosition:l}=e;if(r&&this.filterManager?.isAdvFilterHeaderActive())return this.focusAdvancedFilter(l);if(s){const e=this.focusedHeader,s=Nn(this.beans);if(i){const i=this.gos.getCallback("tabToNextHeader");i&&(l=this.getHeaderPositionFromUserFunc({userFunc:i,direction:t,currentPosition:e,headerPosition:l,headerRowCount:s}))}else{const t=this.gos.getCallback("navigateToNextHeader");if(t&&o){l=t({key:o.key,previousHeaderPosition:e,nextHeaderPosition:l,headerRowCount:s,event:o})}}}return!!l&&this.focusProvidedHeaderPosition({headerPosition:l,direction:t,event:o,fromCell:r,rowWithoutSpanValue:n,scroll:a})}focusHeaderPositionFromUserFunc(e){if(In(this.beans))return!1;const{userFunc:t,headerPosition:i,direction:s,event:o}=e,r=this.focusedHeader,n=Nn(this.beans),a=this.getHeaderPositionFromUserFunc({userFunc:t,direction:s,currentPosition:r,headerPosition:i,headerRowCount:n});return!!a&&this.focusProvidedHeaderPosition({headerPosition:a,direction:s,event:o})}getHeaderPositionFromUserFunc(e){const{userFunc:t,direction:i,currentPosition:s,headerPosition:o,headerRowCount:r}=e,n=t({backwards:"Before"===i,previousHeaderPosition:s,nextHeaderPosition:o,headerRowCount:r});return!0===n?s:!1===n?null:n}focusProvidedHeaderPosition(e){const{headerPosition:t,direction:i,fromCell:s,rowWithoutSpanValue:o,event:r,scroll:n=!0}=e,{column:a,headerRowIndex:l}=t,{filterManager:d,ctrlsSvc:c,headerNavigation:u}=this.beans;if(this.focusedHeader&&(h=e.headerPosition,g=this.focusedHeader,h.headerRowIndex===g.headerRowIndex&&h.column===g.column))return!1;var h,g;if(-1===l)return d?.isAdvFilterHeaderActive()?this.focusAdvancedFilter(t):this.focusGridView({column:a,event:r});n&&u?.scrollToColumn(a,i);const p=c.getHeaderRowContainerCtrl(a.getPinned()),m=p?.focusHeader(t.headerRowIndex,a,r)||!1;return u&&m&&(null!=o||s)&&(u.currentHeaderRowWithoutSpan=o??-1),m}focusFirstHeader(){if(this.overlays?.exclusive&&this.focusOverlay())return!0;const e=this.visibleCols.allCols[0];if(!e)return!1;const t=Eg(this.beans,e,0);return this.focusHeaderPosition({headerPosition:t,rowWithoutSpanValue:0})}focusLastHeader(e){if(this.overlays?.exclusive&&this.focusOverlay(!0))return!0;const t=Nn(this.beans)-1,i=l(this.visibleCols.allCols);return this.focusHeaderPosition({headerPosition:{headerRowIndex:t,column:i},rowWithoutSpanValue:-1,event:e})}focusPreviousFromFirstCell(e){return this.filterManager?.isAdvFilterHeaderActive()?this.focusAdvancedFilter(null):this.focusLastHeader(e)}isAnyCellFocused(){return!!this.focusedCell}isRowFocused(e,t){return null!=this.focusedCell&&(this.focusedCell.rowIndex===e&&this.focusedCell.rowPinned===m(t))}focusOverlay(e){const t=this.overlays?.isVisible()&&this.overlays.eWrapper?.getGui();return!!t&&nn(t,e)}focusGridView(e){const{backwards:t=!1,canFocusOverlay:i=!0,event:s}=e;if(this.overlays?.exclusive)return i&&this.focusOverlay(t);if(kn(this.beans))return t&&!In(this.beans)?this.focusLastHeader():!(!i||!this.focusOverlay(t))||!t&&Ln(this.beans,t);const o=t?xn(this.beans):Sn(this.beans);if(o){const i=e.column??this.focusedHeader?.column,{rowIndex:r,rowPinned:n}=o,a=Fn(this.beans,o);if(!i||!a||null==r)return!1;if(i.isSuppressNavigable(a)){const e=this.gos.get("enableRtl");let t;return t=s&&s.key!==To.TAB?s.key:e?To.LEFT:To.RIGHT,this.beans.navigation?.navigateToNextCell(null,t,{rowIndex:r,column:i,rowPinned:n||null},!0),!0}if(this.navigation?.ensureCellVisible({rowIndex:r,column:i,rowPinned:n}),t){const e=this.rowRenderer.getRowByPosition(o);if(e?.isFullWidth()&&this.navigation?.tryToFocusFullWidthRow(o,t))return!0}return this.setFocusedCell({rowIndex:r,column:i,rowPinned:m(n),forceBrowserFocus:!0}),this.beans.rangeSvc?.setRangeToCell({rowIndex:r,rowPinned:n,column:i}),!0}return!(!i||!this.focusOverlay(t))||!(!t||!this.focusLastHeader())}focusAdvancedFilter(e){return this.advFilterFocusColumn=e?.column,this.beans.advancedFilter?.getCtrl().focusHeaderComp()??!1}focusNextFromAdvancedFilter(e,t){const i=(t?void 0:this.advFilterFocusColumn)??this.visibleCols.allCols?.[0];return e?this.focusHeaderPosition({headerPosition:{column:i,headerRowIndex:Nn(this.beans)-1}}):this.focusGridView({column:i})}clearAdvancedFilterColumn(){this.advFilterFocusColumn=void 0}},class extends dh{initVariables(){this.addManagedPropertyListener("rowHeight",()=>this.refreshRowHeightVariable()),this.getSizeEl(yg),this.getSizeEl(Sg),this.getSizeEl(xg),this.getSizeEl(Fg),this.refreshRowBorderWidthVariable()}getPinnedRowBorderWidth(){return this.getCSSVariablePixelValue(Fg)}getRowBorderWidth(){return this.getCSSVariablePixelValue(xg)}getHeaderRowBorderWidth(){return this.getCSSVariablePixelValue(Rg)}getDefaultRowHeight(){return this.getCSSVariablePixelValue(yg)}getDefaultHeaderHeight(){return this.getCSSVariablePixelValue(Sg)}getDefaultCellHorizontalPadding(){return this.getCSSVariablePixelValue(vg)}getCellPaddingLeft(){const e=this.getDefaultCellHorizontalPadding(),t=this.getCSSVariablePixelValue(wg);return e-1+this.getCSSVariablePixelValue(bg)*t}getCellPadding(){const e=this.getDefaultCellHorizontalPadding()-1;return this.getCellPaddingLeft()+e}getDefaultColumnMinWidth(){return Math.min(36,this.getDefaultRowHeight())}refreshRowHeightVariable(){const{eRootDiv:e}=this,t=e.style.getPropertyValue("--ag-line-height").trim(),i=this.gos.get("rowHeight");if(null==i||isNaN(i)||!isFinite(i))return null!==t&&e.style.setProperty("--ag-line-height",null),-1;const s=`${i}px`;return t!=s?(e.style.setProperty("--ag-line-height",s),i):""!=t?Number.parseFloat(t):-1}fireStylesChangedEvent(e){"rowBorderWidth"===e&&this.refreshRowBorderWidthVariable(),super.fireStylesChangedEvent(e)}refreshRowBorderWidthVariable(){const e=this.getCSSVariablePixelValue(xg);this.eRootDiv.style.setProperty("--ag-internal-row-border-width",`${e}px`)}postProcessThemeChange(e,t){e&&getComputedStyle(this.getMeasurementContainer()).getPropertyValue("--ag-legacy-styles-loaded")&&pi(t?106:239)}getAdditionalCss(){const e=new Map;return e.set("core",['.ag-aria-description-container{border:0;z-index:9999;clip:rect(1px,1px,1px,1px);height:1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.ag-unselectable{-webkit-user-select:none;-moz-user-select:none;user-select:none}.ag-selectable{-webkit-user-select:text;-moz-user-select:text;user-select:text}.ag-shake-left-to-right{animation-direction:alternate;animation-duration:.2s;animation-iteration-count:infinite;animation-name:ag-shake-left-to-right}@keyframes ag-shake-left-to-right{0%{padding-left:6px;padding-right:2px}to{padding-left:2px;padding-right:6px}}.ag-body-horizontal-scroll-viewport,.ag-body-vertical-scroll-viewport,.ag-body-viewport,.ag-center-cols-viewport,.ag-floating-bottom-viewport,.ag-floating-top-viewport,.ag-header-viewport,.ag-sticky-bottom-viewport,.ag-sticky-top-viewport{flex:1 1 auto;height:100%;min-width:0;overflow:hidden;position:relative}.ag-viewport{position:relative}.ag-spanning-container{position:absolute;top:0;z-index:1}.ag-body-viewport,.ag-center-cols-viewport,.ag-floating-bottom-viewport,.ag-floating-top-viewport,.ag-header-viewport,.ag-sticky-bottom-viewport,.ag-sticky-top-viewport{overflow-x:auto;-ms-overflow-style:none!important;scrollbar-width:none!important}.ag-body-viewport::-webkit-scrollbar,.ag-center-cols-viewport::-webkit-scrollbar,.ag-floating-bottom-viewport::-webkit-scrollbar,.ag-floating-top-viewport::-webkit-scrollbar,.ag-header-viewport::-webkit-scrollbar,.ag-sticky-bottom-viewport::-webkit-scrollbar,.ag-sticky-top-viewport::-webkit-scrollbar{display:none!important}.ag-body-viewport{display:flex;overflow-x:hidden;&:where(.ag-layout-normal){overflow-y:auto;-webkit-overflow-scrolling:touch}}.ag-floating-bottom-container,.ag-floating-top-container,.ag-sticky-bottom-container,.ag-sticky-top-container{min-height:1px}.ag-center-cols-viewport{min-height:100%;width:100%}.ag-body-horizontal-scroll-viewport{overflow-x:scroll}.ag-body-vertical-scroll-viewport{overflow-y:scroll}.ag-body-container,.ag-body-horizontal-scroll-container,.ag-body-vertical-scroll-container,.ag-center-cols-container,.ag-floating-bottom-container,.ag-floating-bottom-full-width-container,.ag-floating-top-container,.ag-full-width-container,.ag-header-container,.ag-pinned-left-cols-container,.ag-pinned-left-sticky-bottom,.ag-pinned-right-cols-container,.ag-pinned-right-sticky-bottom,.ag-sticky-bottom-container,.ag-sticky-top-container{position:relative}.ag-floating-bottom-container,.ag-floating-top-container,.ag-header-container,.ag-pinned-left-floating-bottom,.ag-pinned-left-floating-top,.ag-pinned-right-floating-bottom,.ag-pinned-right-floating-top,.ag-sticky-bottom-container,.ag-sticky-top-container{height:100%;white-space:nowrap}.ag-center-cols-container,.ag-pinned-right-cols-container{display:block}.ag-body-horizontal-scroll-container{height:100%}.ag-body-vertical-scroll-container{width:100%}.ag-floating-bottom-full-width-container,.ag-floating-top-full-width-container,.ag-full-width-container,.ag-sticky-bottom-full-width-container,.ag-sticky-top-full-width-container{pointer-events:none;position:absolute;top:0}:where(.ag-ltr) .ag-floating-bottom-full-width-container,:where(.ag-ltr) .ag-floating-top-full-width-container,:where(.ag-ltr) .ag-full-width-container,:where(.ag-ltr) .ag-sticky-bottom-full-width-container,:where(.ag-ltr) .ag-sticky-top-full-width-container{left:0}:where(.ag-rtl) .ag-floating-bottom-full-width-container,:where(.ag-rtl) .ag-floating-top-full-width-container,:where(.ag-rtl) .ag-full-width-container,:where(.ag-rtl) .ag-sticky-bottom-full-width-container,:where(.ag-rtl) .ag-sticky-top-full-width-container{right:0}.ag-full-width-container{width:100%}.ag-floating-bottom-full-width-container,.ag-floating-top-full-width-container{display:inline-block;height:100%;overflow:hidden;width:100%}.ag-body{display:flex;flex:1 1 auto;flex-direction:row!important;min-height:0;position:relative}.ag-body-horizontal-scroll,.ag-body-vertical-scroll{display:flex;min-height:0;min-width:0;position:relative;&:where(.ag-scrollbar-invisible){bottom:0;position:absolute;&:where(.ag-apple-scrollbar){opacity:0;transition:opacity .4s;visibility:hidden;&:where(.ag-scrollbar-active),&:where(.ag-scrollbar-scrolling){opacity:1;visibility:visible}}}}.ag-body-horizontal-scroll{width:100%;&:where(.ag-scrollbar-invisible){left:0;right:0}}.ag-body-vertical-scroll{height:100%;&:where(.ag-scrollbar-invisible){top:0;z-index:10}}:where(.ag-ltr) .ag-body-vertical-scroll{&:where(.ag-scrollbar-invisible){right:0}}:where(.ag-rtl) .ag-body-vertical-scroll{&:where(.ag-scrollbar-invisible){left:0}}.ag-force-vertical-scroll{overflow-y:scroll!important}.ag-horizontal-left-spacer,.ag-horizontal-right-spacer{height:100%;min-width:0;overflow-x:scroll;&:where(.ag-scroller-corner){overflow-x:hidden}}:where(.ag-row-animation) .ag-row{transition:transform .4s,top .4s,opacity .2s;&:where(.ag-after-created){transition:transform .4s,top .4s,height .4s,opacity .2s}}:where(.ag-row-animation.ag-prevent-animation) .ag-row{transition:none!important;&:where(.ag-row.ag-after-created){transition:none!important}}:where(.ag-row-no-animation) .ag-row{transition:none}.ag-row-loading{align-items:center;display:flex}.ag-row-position-absolute{position:absolute}.ag-row-position-relative{position:relative}.ag-full-width-row{overflow:hidden;pointer-events:all}.ag-row-inline-editing{z-index:1}.ag-row-dragging{z-index:2}.ag-stub-cell{align-items:center;display:flex}.ag-cell{display:inline-block;height:100%;position:absolute;white-space:nowrap;&:focus-visible{box-shadow:none}}.ag-cell-value{flex:1 1 auto}.ag-cell-value:not(.ag-allow-overflow),.ag-group-value{overflow:hidden;text-overflow:ellipsis}.ag-cell-wrap-text{white-space:normal;word-break:break-word}:where(.ag-cell) .ag-icon{display:inline-block;vertical-align:middle}.ag-floating-top{display:flex;overflow:hidden;position:relative;white-space:nowrap;width:100%}:where(.ag-floating-top:not(.ag-invisible)){border-bottom:var(--ag-pinned-row-border)}.ag-floating-bottom{display:flex;overflow:hidden;position:relative;white-space:nowrap;width:100%}:where(.ag-floating-bottom:not(.ag-invisible)){border-top:var(--ag-pinned-row-border)}.ag-sticky-bottom,.ag-sticky-top{background-color:var(--ag-data-background-color);display:flex;height:0;overflow:hidden;position:absolute;width:100%;z-index:1}.ag-sticky-bottom{box-sizing:content-box!important;:where(.ag-pinned-left-sticky-bottom),:where(.ag-pinned-right-sticky-bottom),:where(.ag-sticky-bottom-container){border-top:var(--ag-row-border);box-sizing:border-box}}.ag-opacity-zero{opacity:0!important}.ag-cell-label-container{align-items:center;display:flex;flex-direction:row-reverse;height:100%;justify-content:space-between;width:100%}:where(.ag-right-aligned-header){.ag-cell-label-container{flex-direction:row}.ag-header-cell-text{text-align:end}}.ag-column-group-icons{display:block;:where(.ag-column-group-closed-icon),:where(.ag-column-group-opened-icon){cursor:pointer}}:where(.ag-ltr){direction:ltr;.ag-body,.ag-body-horizontal-scroll,.ag-body-viewport,.ag-floating-bottom,.ag-floating-top,.ag-header,.ag-sticky-bottom,.ag-sticky-top{flex-direction:row}}:where(.ag-rtl){direction:rtl;text-align:right;.ag-body,.ag-body-horizontal-scroll,.ag-body-viewport,.ag-floating-bottom,.ag-floating-top,.ag-header,.ag-sticky-bottom,.ag-sticky-top{flex-direction:row-reverse}.ag-icon-contracted,.ag-icon-expanded,.ag-icon-tree-closed{display:block}}:where(.ag-rtl){.ag-icon-contracted,.ag-icon-expanded,.ag-icon-tree-closed{transform:rotate(180deg)}}:where(.ag-rtl){.ag-icon-contracted,.ag-icon-expanded,.ag-icon-tree-closed{transform:rotate(-180deg)}}:where(.ag-ltr) .ag-row:not(.ag-row-level-0) .ag-pivot-leaf-group{margin-left:var(--ag-row-group-indent-size)}:where(.ag-rtl) .ag-row:not(.ag-row-level-0) .ag-pivot-leaf-group{margin-right:var(--ag-row-group-indent-size)}:where(.ag-ltr) .ag-row-group-leaf-indent{margin-left:calc(var(--ag-cell-widget-spacing) + var(--ag-icon-size))}:where(.ag-rtl) .ag-row-group-leaf-indent{margin-right:calc(var(--ag-cell-widget-spacing) + var(--ag-icon-size))}.ag-value-change-delta{padding:0 2px}.ag-value-change-delta-up{color:var(--ag-value-change-delta-up-color)}.ag-value-change-delta-down{color:var(--ag-value-change-delta-down-color)}.ag-value-change-value{background-color:transparent;border-radius:1px;padding-left:1px;padding-right:1px;transition:background-color 1s}.ag-value-change-value-highlight{background-color:var(--ag-value-change-value-highlight-background-color);transition:background-color .1s}.ag-cell-data-changed{background-color:var(--ag-value-change-value-highlight-background-color)!important}.ag-cell-data-changed-animation{background-color:transparent}.ag-cell-highlight{background-color:var(--ag-range-selection-highlight-color)!important}.ag-row,.ag-spanned-row{color:var(--ag-cell-text-color);font-family:var(--ag-cell-font-family);font-size:var(--ag-data-font-size);white-space:nowrap;--ag-internal-content-line-height:calc(min(var(--ag-row-height), var(--ag-line-height, 1000px)) - var(--ag-internal-row-border-width, 1px) - 2px)}.ag-row{background-color:var(--ag-data-background-color);border-bottom:var(--ag-row-border);height:var(--ag-row-height);width:100%;&.ag-row-editing-invalid{background-color:var(--ag-full-row-edit-invalid-background-color)}}:where(.ag-body-vertical-content-no-gap>div>div>div,.ag-body-vertical-content-no-gap>div>div>div>div)>.ag-row-last{border-bottom-color:transparent}.ag-group-contracted,.ag-group-expanded{cursor:pointer}.ag-cell,.ag-full-width-row .ag-cell-wrapper.ag-row-group{border:1px solid transparent;line-height:var(--ag-internal-content-line-height);-webkit-font-smoothing:subpixel-antialiased}:where(.ag-ltr) .ag-cell{border-right:var(--ag-column-border)}:where(.ag-rtl) .ag-cell{border-left:var(--ag-column-border)}.ag-spanned-cell-wrapper{background-color:var(--ag-data-background-color);position:absolute}.ag-spanned-cell-wrapper>.ag-spanned-cell{display:block;position:relative}:where(.ag-ltr) :where(.ag-body-horizontal-content-no-gap) .ag-column-last{border-right-color:transparent}:where(.ag-rtl) :where(.ag-body-horizontal-content-no-gap) .ag-column-last{border-left-color:transparent}.ag-cell-wrapper{align-items:center;display:flex;>:where(:not(.ag-cell-value,.ag-group-value)){align-items:center;display:flex;height:var(--ag-internal-content-line-height)}&:where(.ag-row-group){align-items:flex-start}:where(.ag-full-width-row) &:where(.ag-row-group){align-items:center;height:100%}}:where(.ag-ltr) .ag-cell-wrapper{padding-left:calc(var(--ag-indentation-level)*var(--ag-row-group-indent-size))}:where(.ag-rtl) .ag-cell-wrapper{padding-right:calc(var(--ag-indentation-level)*var(--ag-row-group-indent-size))}:where(.ag-cell-wrap-text:not(.ag-cell-auto-height)) .ag-cell-wrapper{align-items:normal;height:100%;:where(.ag-cell-value){height:100%}}:where(.ag-ltr) .ag-row>.ag-cell-wrapper.ag-row-group{padding-left:calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size)*var(--ag-indentation-level))}:where(.ag-rtl) .ag-row>.ag-cell-wrapper.ag-row-group{padding-right:calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size)*var(--ag-indentation-level))}.ag-cell-focus:not(.ag-cell-range-selected):focus-within,.ag-cell-range-single-cell,.ag-cell-range-single-cell.ag-cell-range-handle,.ag-context-menu-open .ag-cell-focus:not(.ag-cell-range-selected),.ag-context-menu-open .ag-full-width-row.ag-row-focus .ag-cell-wrapper.ag-row-group,.ag-full-width-row.ag-row-focus:focus .ag-cell-wrapper.ag-row-group{border:1px solid;border-color:var(--ag-range-selection-border-color);border-style:var(--ag-range-selection-border-style);outline:initial}.ag-full-width-row.ag-row-focus:focus{box-shadow:none}:where(.ag-ltr) .ag-group-contracted,:where(.ag-ltr) .ag-group-expanded,:where(.ag-ltr) .ag-row-drag,:where(.ag-ltr) .ag-selection-checkbox{margin-right:var(--ag-cell-widget-spacing)}:where(.ag-rtl) .ag-group-contracted,:where(.ag-rtl) .ag-group-expanded,:where(.ag-rtl) .ag-row-drag,:where(.ag-rtl) .ag-selection-checkbox{margin-left:var(--ag-cell-widget-spacing)}.ag-drag-handle-disabled{opacity:.35;pointer-events:none}:where(.ag-ltr) .ag-group-child-count{margin-left:3px}:where(.ag-rtl) .ag-group-child-count{margin-right:3px}.ag-row-highlight-above:after,.ag-row-highlight-below:after,.ag-row-highlight-inside:after{background-color:var(--ag-row-drag-indicator-color);border-radius:calc(var(--ag-row-drag-indicator-width)/2);content:"";height:var(--ag-row-drag-indicator-width);pointer-events:none;position:absolute;width:calc(100% - 1px)}:where(.ag-ltr) .ag-row-highlight-above:after,:where(.ag-ltr) .ag-row-highlight-below:after,:where(.ag-ltr) .ag-row-highlight-inside:after{left:1px}:where(.ag-rtl) .ag-row-highlight-above:after,:where(.ag-rtl) .ag-row-highlight-below:after,:where(.ag-rtl) .ag-row-highlight-inside:after{right:1px}.ag-row-highlight-above:after{top:0}.ag-row-highlight-below:after{bottom:0}.ag-row-highlight-indent:after{display:block;width:auto}:where(.ag-ltr) .ag-row-highlight-indent:after{left:calc((var(--ag-cell-widget-spacing) + var(--ag-icon-size))*2 + var(--ag-cell-horizontal-padding) + var(--ag-row-highlight-level)*var(--ag-row-group-indent-size));right:1px}:where(.ag-rtl) .ag-row-highlight-indent:after{left:1px;right:calc((var(--ag-cell-widget-spacing) + var(--ag-icon-size))*2 + var(--ag-cell-horizontal-padding) + var(--ag-row-highlight-level)*var(--ag-row-group-indent-size))}.ag-row-highlight-inside:after{background-color:var(--ag-selected-row-background-color);border:1px solid var(--ag-range-selection-border-color);display:block;height:auto;inset:0;width:auto}.ag-body,.ag-floating-bottom,.ag-floating-top{background-color:var(--ag-data-background-color)}.ag-row-odd{background-color:var(--ag-odd-row-background-color)}.ag-row-selected:before{background-color:var(--ag-selected-row-background-color);content:"";display:block;inset:0;pointer-events:none;position:absolute}.ag-row-hover.ag-full-width-row.ag-row-group:before,.ag-row-hover:not(.ag-full-width-row):before{background-color:var(--ag-row-hover-color);content:"";display:block;inset:0;pointer-events:none;position:absolute}.ag-row-hover.ag-row-selected:before{background-color:var(--ag-row-hover-color);background-image:linear-gradient(var(--ag-selected-row-background-color),var(--ag-selected-row-background-color))}.ag-row.ag-full-width-row.ag-row-group>*{position:relative}.ag-column-hover{background-color:var(--ag-column-hover-color)}.ag-header-range-highlight{background-color:var(--ag-range-header-highlight-color)}.ag-right-aligned-cell{font-variant-numeric:tabular-nums}:where(.ag-ltr) .ag-right-aligned-cell{text-align:right}:where(.ag-rtl) .ag-right-aligned-cell{text-align:left}.ag-right-aligned-cell .ag-cell-value,.ag-right-aligned-cell .ag-group-value{margin-left:auto}:where(.ag-ltr) .ag-cell:not(.ag-cell-inline-editing),:where(.ag-ltr) .ag-full-width-row .ag-cell-wrapper.ag-row-group{padding-left:calc(var(--ag-cell-horizontal-padding) - 1px + var(--ag-row-group-indent-size)*var(--ag-indentation-level));padding-right:calc(var(--ag-cell-horizontal-padding) - 1px)}:where(.ag-rtl) .ag-cell:not(.ag-cell-inline-editing),:where(.ag-rtl) .ag-full-width-row .ag-cell-wrapper.ag-row-group{padding-left:calc(var(--ag-cell-horizontal-padding) - 1px);padding-right:calc(var(--ag-cell-horizontal-padding) - 1px + var(--ag-row-group-indent-size)*var(--ag-indentation-level))}.ag-row>.ag-cell-wrapper{padding-left:calc(var(--ag-cell-horizontal-padding) - 1px);padding-right:calc(var(--ag-cell-horizontal-padding) - 1px)}.ag-row-dragging{cursor:move;opacity:.5}.ag-details-row{background-color:var(--ag-data-background-color);padding:calc(var(--ag-spacing)*3.75)}.ag-layout-auto-height,.ag-layout-print{.ag-center-cols-container,.ag-center-cols-viewport{min-height:150px}}.ag-overlay-exporting-wrapper,.ag-overlay-loading-wrapper,.ag-overlay-modal-wrapper{background-color:var(--ag-modal-overlay-background-color)}.ag-skeleton-container{align-content:center;height:100%;width:100%}.ag-skeleton-effect{animation:ag-skeleton-loading 1.5s ease-in-out .5s infinite;background-color:var(--ag-row-loading-skeleton-effect-color);border-radius:.25rem;height:1em;width:100%}:where(.ag-ltr) .ag-right-aligned-cell .ag-skeleton-effect{margin-left:auto}:where(.ag-rtl) .ag-right-aligned-cell .ag-skeleton-effect{margin-right:auto}@keyframes ag-skeleton-loading{0%{background-color:var(--ag-row-loading-skeleton-effect-color)}50%{background-color:color-mix(in srgb,transparent,var(--ag-row-loading-skeleton-effect-color) 40%)}to{background-color:var(--ag-row-loading-skeleton-effect-color)}}.ag-loading{align-items:center;display:flex;height:100%}:where(.ag-ltr) .ag-loading{padding-left:var(--ag-cell-horizontal-padding)}:where(.ag-rtl) .ag-loading{padding-right:var(--ag-cell-horizontal-padding)}:where(.ag-ltr) .ag-loading-icon{padding-right:var(--ag-cell-widget-spacing)}:where(.ag-rtl) .ag-loading-icon{padding-left:var(--ag-cell-widget-spacing)}.ag-icon-loading{animation-duration:1s;animation-iteration-count:infinite;animation-name:spin;animation-timing-function:linear}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.ag-header{background-color:var(--ag-header-background-color);border-bottom:var(--ag-header-row-border);color:var(--ag-header-text-color);display:flex;font-family:var(--ag-header-font-family);font-size:var(--ag-header-font-size);font-weight:var(--ag-header-font-weight);overflow:hidden;white-space:nowrap;width:100%}.ag-header-row{height:var(--ag-header-height);position:absolute}.ag-floating-filter-button-button,.ag-header-cell-filter-button,.ag-header-cell-menu-button,.ag-header-expand-icon,.ag-panel-title-bar-button,:where(.ag-header-cell-sortable) .ag-header-cell-label,:where(.ag-header-group-cell-selectable) .ag-header-cell-comp-wrapper{cursor:pointer}:where(.ag-ltr) .ag-header-expand-icon{margin-left:4px}:where(.ag-rtl) .ag-header-expand-icon{margin-right:4px}.ag-header-row:where(:not(:first-child)){:where(.ag-header-cell:not(.ag-header-span-height.ag-header-span-total,.ag-header-parent-hidden)),:where(.ag-header-group-cell.ag-header-group-cell-with-group){border-top:var(--ag-header-row-border)}}.ag-header-row:where(:not(.ag-header-row-column-group)){overflow:hidden}:where(.ag-header.ag-header-allow-overflow) .ag-header-row{overflow:visible}.ag-header-cell{display:inline-flex;overflow:hidden}.ag-header-group-cell{contain:paint;display:flex}.ag-header-cell,.ag-header-group-cell{align-items:center;gap:var(--ag-cell-widget-spacing);height:100%;padding:0 var(--ag-cell-horizontal-padding);position:absolute}@property --ag-internal-moving-color{syntax:"";inherits:false;initial-value:transparent}@property --ag-internal-hover-color{syntax:"";inherits:false;initial-value:transparent}.ag-header-cell:where(:not(.ag-floating-filter)):before,.ag-header-group-cell:before{background-image:linear-gradient(var(--ag-internal-hover-color),var(--ag-internal-hover-color)),linear-gradient(var(--ag-internal-moving-color),var(--ag-internal-moving-color));content:"";inset:0;position:absolute;--ag-internal-moving-color:transparent;--ag-internal-hover-color:transparent;transition:--ag-internal-moving-color var(--ag-header-cell-background-transition-duration),--ag-internal-hover-color var(--ag-header-cell-background-transition-duration)}.ag-header-cell:where(:not(.ag-floating-filter)):where(:hover):before,.ag-header-group-cell:where(:hover):before{--ag-internal-hover-color:var(--ag-header-cell-hover-background-color)}.ag-header-cell:where(:not(.ag-floating-filter)):where(.ag-header-cell-moving):before,.ag-header-group-cell:where(.ag-header-cell-moving):before{--ag-internal-moving-color:var(--ag-header-cell-moving-background-color);--ag-internal-hover-color:var(--ag-header-cell-hover-background-color)}:where(.ag-header-cell:not(.ag-floating-filter)>*,.ag-header-group-cell>*){position:relative;z-index:1}.ag-header-cell-menu-button:where(:not(.ag-header-menu-always-show)){opacity:0;transition:opacity .2s}.ag-header-cell-filter-button,:where(.ag-header-cell.ag-header-active) .ag-header-cell-menu-button{opacity:1}.ag-header-cell-label,.ag-header-group-cell-label{align-items:center;align-self:stretch;display:flex;flex:1 1 auto;overflow:hidden;padding:5px 0}:where(.ag-ltr) .ag-sort-indicator-icon{padding-left:var(--ag-spacing)}:where(.ag-rtl) .ag-sort-indicator-icon{padding-right:var(--ag-spacing)}.ag-header-cell-label{text-overflow:ellipsis}.ag-header-group-cell-label.ag-sticky-label{flex:none;max-width:100%;overflow:visible;position:sticky}:where(.ag-ltr) .ag-header-group-cell-label.ag-sticky-label{left:var(--ag-cell-horizontal-padding)}:where(.ag-rtl) .ag-header-group-cell-label.ag-sticky-label{right:var(--ag-cell-horizontal-padding)}.ag-header-cell-text,.ag-header-group-text{overflow:hidden;text-overflow:ellipsis}.ag-header-cell-text{word-break:break-word}.ag-header-cell-comp-wrapper{width:100%}:where(.ag-header-group-cell) .ag-header-cell-comp-wrapper{display:flex}:where(.ag-header-cell:not(.ag-header-cell-auto-height)) .ag-header-cell-comp-wrapper{align-items:center;display:flex;height:100%}.ag-header-cell-wrap-text .ag-header-cell-comp-wrapper{white-space:normal}.ag-header-cell-comp-wrapper-limited-height>*{overflow:hidden}:where(.ag-right-aligned-header) .ag-header-cell-label{flex-direction:row-reverse}:where(.ag-header-cell:not(.ag-right-aligned-header)){.ag-header-col-ref{color:var(--ag-subtle-text-color)}}:where(.ag-ltr) :where(.ag-header-cell:not(.ag-right-aligned-header)){.ag-header-col-ref{margin-right:var(--ag-spacing)}.ag-header-label-icon,.ag-header-menu-icon{margin-left:var(--ag-spacing)}}:where(.ag-rtl) :where(.ag-header-cell:not(.ag-right-aligned-header)){.ag-header-col-ref{margin-left:var(--ag-spacing)}.ag-header-label-icon,.ag-header-menu-icon{margin-right:var(--ag-spacing)}}:where(.ag-header-cell.ag-right-aligned-header){.ag-header-col-ref{color:var(--ag-subtle-text-color)}}:where(.ag-ltr) :where(.ag-header-cell.ag-right-aligned-header){.ag-header-col-ref{margin-left:var(--ag-spacing)}.ag-header-label-icon,.ag-header-menu-icon{margin-right:var(--ag-spacing)}}:where(.ag-rtl) :where(.ag-header-cell.ag-right-aligned-header){.ag-header-col-ref{margin-right:var(--ag-spacing)}.ag-header-label-icon,.ag-header-menu-icon{margin-left:var(--ag-spacing)}}.ag-header-cell:after,.ag-header-group-cell:where(:not(.ag-header-span-height.ag-header-group-cell-no-group)):after{content:"";height:var(--ag-header-column-border-height);position:absolute;top:calc(50% - var(--ag-header-column-border-height)*.5);z-index:1}:where(.ag-ltr) .ag-header-cell:after,:where(.ag-ltr) .ag-header-group-cell:where(:not(.ag-header-span-height.ag-header-group-cell-no-group)):after{border-right:var(--ag-header-column-border);right:0}:where(.ag-rtl) .ag-header-cell:after,:where(.ag-rtl) .ag-header-group-cell:where(:not(.ag-header-span-height.ag-header-group-cell-no-group)):after{border-left:var(--ag-header-column-border);left:0}.ag-header-highlight-after:after,.ag-header-highlight-before:after{background-color:var(--ag-column-drag-indicator-color);border-radius:calc(var(--ag-column-drag-indicator-width)/2);content:"";height:100%;position:absolute;top:0;width:var(--ag-column-drag-indicator-width)}:where(.ag-ltr) .ag-header-highlight-before:after{left:0}:where(.ag-rtl) .ag-header-highlight-before:after{right:0}:where(.ag-ltr) .ag-header-highlight-after:after{right:0;:where(.ag-pinned-left-header) &{right:1px}}:where(.ag-rtl) .ag-header-highlight-after:after{left:0;:where(.ag-pinned-left-header) &{left:1px}}.ag-header-cell-resize{align-items:center;cursor:ew-resize;display:flex;height:100%;position:absolute;top:0;width:8px;z-index:2}:where(.ag-ltr) .ag-header-cell-resize{right:-3px}:where(.ag-rtl) .ag-header-cell-resize{left:-3px}.ag-header-cell-resize:after{background-color:var(--ag-header-column-resize-handle-color);content:"";height:var(--ag-header-column-resize-handle-height);position:absolute;top:calc(50% - var(--ag-header-column-resize-handle-height)*.5);width:var(--ag-header-column-resize-handle-width);z-index:1}:where(.ag-ltr) .ag-header-cell-resize:after{left:calc(50% - var(--ag-header-column-resize-handle-width))}:where(.ag-rtl) .ag-header-cell-resize:after{right:calc(50% - var(--ag-header-column-resize-handle-width))}:where(.ag-header-cell.ag-header-span-height) .ag-header-cell-resize:after{height:calc(100% - var(--ag-spacing)*4);top:calc(var(--ag-spacing)*2)}.ag-header-group-cell-no-group:where(.ag-header-span-height){display:none}.ag-sort-indicator-container{display:flex;gap:var(--ag-spacing)}.ag-layout-print{&.ag-body{display:block;height:unset}&.ag-root-wrapper{container-type:normal;display:inline-block}.ag-body-horizontal-scroll,.ag-body-vertical-scroll{display:none}&.ag-force-vertical-scroll{overflow-y:visible!important}}@media print{.ag-root-wrapper.ag-layout-print{container-type:normal;display:table;.ag-body-horizontal-scroll-viewport,.ag-body-viewport,.ag-center-cols-container,.ag-center-cols-viewport,.ag-root,.ag-root-wrapper-body,.ag-virtual-list-viewport{display:block!important;height:auto!important;overflow:hidden!important}.ag-cell,.ag-row{-moz-column-break-inside:avoid;break-inside:avoid}}}ag-grid,ag-grid-angular{display:block}.ag-root-wrapper{border:var(--ag-wrapper-border);border-radius:var(--ag-wrapper-border-radius);container-type:inline-size;display:flex;flex-direction:column;overflow:hidden;position:relative;&.ag-layout-normal{height:100%}}.ag-root-wrapper-body{display:flex;flex-direction:row;&.ag-layout-normal{flex:1 1 auto;height:0;min-height:0}}.ag-root{display:flex;flex-direction:column;position:relative;&.ag-layout-auto-height,&.ag-layout-normal{flex:1 1 auto;overflow:hidden;width:0}&.ag-layout-normal{height:100%}}.ag-drag-handle{color:var(--ag-drag-handle-color);cursor:grab;:where(.ag-icon){color:var(--ag-drag-handle-color)}}.ag-chart-menu-icon,.ag-chart-settings-next,.ag-chart-settings-prev,.ag-column-group-icons,.ag-column-select-header-icon,.ag-filter-toolpanel-expand,.ag-floating-filter-button-button,.ag-group-title-bar-icon,.ag-header-cell-filter-button,.ag-header-cell-menu-button,.ag-header-expand-icon,.ag-panel-title-bar-button,.ag-panel-title-bar-button-icon,.ag-set-filter-group-icons,:where(.ag-group-contracted) .ag-icon,:where(.ag-group-expanded) .ag-icon{background-color:var(--ag-icon-button-background-color);border-radius:var(--ag-icon-button-border-radius);box-shadow:0 0 0 var(--ag-icon-button-background-spread) var(--ag-icon-button-background-color);color:var(--ag-icon-button-color)}.ag-chart-menu-icon:hover,.ag-chart-settings-next:hover,.ag-chart-settings-prev:hover,.ag-column-group-icons:hover,.ag-column-select-header-icon:hover,.ag-filter-toolpanel-expand:hover,.ag-floating-filter-button-button:hover,.ag-group-title-bar-icon:hover,.ag-header-cell-filter-button:hover,.ag-header-cell-menu-button:hover,.ag-header-expand-icon:hover,.ag-panel-title-bar-button-icon:hover,.ag-panel-title-bar-button:hover,.ag-set-filter-group-icons:hover,:where(.ag-group-contracted) .ag-icon:hover,:where(.ag-group-expanded) .ag-icon:hover{background-color:var(--ag-icon-button-hover-background-color);box-shadow:0 0 0 var(--ag-icon-button-background-spread) var(--ag-icon-button-hover-background-color);color:var(--ag-icon-button-hover-color)}:where(.ag-filter-active),:where(.ag-filter-toolpanel-group-instance-header-icon),:where(.ag-filter-toolpanel-instance-header-icon){position:relative}:where(.ag-filter-active):after,:where(.ag-filter-toolpanel-group-instance-header-icon):after,:where(.ag-filter-toolpanel-instance-header-icon):after{background-color:var(--ag-icon-button-active-indicator-color);border-radius:50%;content:"";height:6px;position:absolute;top:-1px;width:6px}:where(.ag-ltr) :where(.ag-filter-active):after,:where(.ag-ltr) :where(.ag-filter-toolpanel-group-instance-header-icon):after,:where(.ag-ltr) :where(.ag-filter-toolpanel-instance-header-icon):after{right:-1px}:where(.ag-rtl) :where(.ag-filter-active):after,:where(.ag-rtl) :where(.ag-filter-toolpanel-group-instance-header-icon):after,:where(.ag-rtl) :where(.ag-filter-toolpanel-instance-header-icon):after{left:-1px}.ag-filter-active{background-image:linear-gradient(var(--ag-icon-button-active-background-color),var(--ag-icon-button-active-background-color));border-radius:1px;outline:solid var(--ag-icon-button-background-spread) var(--ag-icon-button-active-background-color);:where(.ag-icon-filter){clip-path:path("M8,0C8,4.415 11.585,8 16,8L16,16L0,16L0,0L8,0Z");color:var(--ag-icon-button-active-color)}}']),Pg(e,Array.from(new Set(Ht))),e}getDefaultTheme(){return dg}varError(e,t){gi(9,{variable:{cssName:e,defaultValue:t}})}themeError(e){pi(240,{theme:e})}shadowRootError(){pi(293)}},class extends wt{constructor(){super(...arguments),this.beanName="scrollVisibleSvc"}wireBeans(e){this.ctrlsSvc=e.ctrlsSvc,this.colAnimation=e.colAnimation}postConstruct(){const{gos:e}=this;this.horizontalScrollShowing=!0===e.get("alwaysShowHorizontalScroll"),this.verticalScrollShowing=!0===e.get("alwaysShowVerticalScroll"),this.getScrollbarWidth();const t=this.updateScrollVisible.bind(this);this.addManagedEventListeners({displayedColumnsChanged:t,displayedColumnsWidthChanged:t,newColumnsLoaded:t})}updateScrollVisible(){const{colAnimation:e}=this;e?.isActive()?e.executeLaterVMTurn(()=>{e.executeLaterVMTurn(()=>this.updateScrollVisibleImpl())}):this.updateScrollVisibleImpl()}updateScrollVisibleImpl(){const e=this.ctrlsSvc.get("center");if(!e||this.colAnimation?.isActive())return;const t={horizontalScrollShowing:e.isHorizontalScrollShowing(),verticalScrollShowing:this.verticalScrollShowing};this.setScrollsVisible(t),this.updateScrollGap()}updateScrollGap(){const e=this.ctrlsSvc.get("center"),t=e.hasHorizontalScrollGap(),i=e.hasVerticalScrollGap();(this.horizontalScrollGap!==t||this.verticalScrollGap!==i)&&(this.horizontalScrollGap=t,this.verticalScrollGap=i,this.eventSvc.dispatchEvent({type:"scrollGapChanged"}))}setScrollsVisible(e){(this.horizontalScrollShowing!==e.horizontalScrollShowing||this.verticalScrollShowing!==e.verticalScrollShowing)&&(this.horizontalScrollShowing=e.horizontalScrollShowing,this.verticalScrollShowing=e.verticalScrollShowing,this.eventSvc.dispatchEvent({type:"scrollVisibilityChanged"}))}getScrollbarWidth(){if(null==this.scrollbarWidth){const e=this.gos.get("scrollbarWidth"),t="number"==typeof e&&e>=0?e:Xr();null!=t&&(this.scrollbarWidth=t,this.eventSvc.dispatchEvent({type:"scrollbarWidthChanged"}))}return this.scrollbarWidth}},class extends wt{constructor(){super(...arguments),this.beanName="ctrlsSvc",this.params={},this.ready=!1,this.readyCallbacks=[]}postConstruct(){this.addEventListener("ready",()=>{if(this.updateReady(),this.ready){for(const e of this.readyCallbacks)e(this.params);this.readyCallbacks.length=0}},this.beans.frameworkOverrides.runWhenReadyAsync?.()??!1)}updateReady(){const e=Object.values(this.params);this.ready=23===e.length&&e.every(e=>e?.isAlive()??!1)}whenReady(e,t){this.ready?t(this.params):this.readyCallbacks.push(t),e.addDestroyFunc(()=>{const e=this.readyCallbacks.indexOf(t);e>=0&&this.readyCallbacks.splice(e,1)})}register(e,t){this.params[e]=t,this.updateReady(),this.ready&&this.dispatchLocalEvent({type:"ready"}),t.addDestroyFunc(()=>{this.updateReady()})}get(e){return this.params[e]}getGridBodyCtrl(){return this.params.gridBodyCtrl}getHeaderRowContainerCtrls(){const{leftHeader:e,centerHeader:t,rightHeader:i}=this.params;return[e,i,t]}getHeaderRowContainerCtrl(e){const t=this.params;switch(e){case"left":return t.leftHeader;case"right":return t.rightHeader;default:return t.centerHeader}}getScrollFeature(){return this.getGridBodyCtrl().scrollFeature}},class extends wt{constructor(){super(...arguments),this.beanName="syncSvc",this.waitingForColumns=!1}postConstruct(){this.addManagedPropertyListener("columnDefs",e=>this.setColumnDefs(e))}start(){this.beans.ctrlsSvc.whenReady(this,()=>{const e=this.gos.get("columnDefs");e?this.setColumnsAndData(e):this.waitingForColumns=!0,this.gridReady()})}setColumnsAndData(e){const{colModel:t,rowModel:i}=this.beans;t.setColumnDefs(e??[],"gridInitializing"),i.start()}gridReady(){const{eventSvc:e,gos:t}=this;e.dispatchEvent({type:"gridReady"}),Nt(t,`initialised successfully, enterprise = ${t.isModuleRegistered("EnterpriseCore")}`)}setColumnDefs(e){const t=this.gos.get("columnDefs");if(t)return this.waitingForColumns?(this.waitingForColumns=!1,void this.setColumnsAndData(t)):void this.beans.colModel.setColumnDefs(t,Qs(e.source))}},class extends wt{constructor(){super(...arguments),this.beanName="colNames"}getDisplayNameForColumn(e,t,i=!1){if(!e)return null;const s=this.getHeaderName(e.getColDef(),e,null,null,t),{aggColNameSvc:o}=this.beans;return i&&o?o.getHeaderName(e,s):s}getDisplayNameForProvidedColumnGroup(e,t,i){const s=t?.getColGroupDef();return s?this.getHeaderName(s,null,e,t,i):null}getDisplayNameForColumnGroup(e,t){return this.getDisplayNameForProvidedColumnGroup(e,e.getProvidedColumnGroup(),t)}getHeaderName(e,t,i,s,o){const r=e.headerValueGetter;if(r){const n=ms(this.gos,{colDef:e,column:t,columnGroup:i,providedColumnGroup:s,location:o});return"function"==typeof r?r(n):"string"==typeof r?this.beans.expressionSvc?.evaluate(r,n)??null:""}return null!=e.headerName?e.headerName:e.field?M(e.field):""}},class extends wt{constructor(){super(...arguments),this.beanName="colViewport",this.colsWithinViewport=[],this.headerColsWithinViewport=[],this.colsWithinViewportHash="",this.rowsOfHeadersToRenderLeft={},this.rowsOfHeadersToRenderRight={},this.rowsOfHeadersToRenderCenter={},this.columnsToRenderLeft=[],this.columnsToRenderRight=[],this.columnsToRenderCenter=[]}wireBeans(e){this.visibleCols=e.visibleCols,this.colModel=e.colModel}postConstruct(){this.suppressColumnVirtualisation=this.gos.get("suppressColumnVirtualisation")}getScrollPosition(){return this.scrollPosition}setScrollPosition(e,t,i=!1){const{visibleCols:s}=this,o=s.isBodyWidthDirty;if(!(e===this.scrollWidth&&t===this.scrollPosition&&!o)){if(this.scrollWidth=e,this.scrollPosition=t,s.isBodyWidthDirty=!0,this.gos.get("enableRtl")){const i=s.bodyWidth;this.viewportLeft=i-t-e,this.viewportRight=i-t}else this.viewportLeft=t,this.viewportRight=e+t;this.colModel.ready&&this.checkViewportColumns(i)}}getColumnHeadersToRender(e){switch(e){case"left":return this.columnsToRenderLeft;case"right":return this.columnsToRenderRight;default:return this.columnsToRenderCenter}}getHeadersToRender(e,t){let i;switch(e){case"left":i=this.rowsOfHeadersToRenderLeft[t];break;case"right":i=this.rowsOfHeadersToRenderRight[t];break;default:i=this.rowsOfHeadersToRenderCenter[t]}return i??[]}extractViewportColumns(){const e=this.visibleCols.centerCols;this.isColumnVirtualisationSuppressed()?(this.colsWithinViewport=e,this.headerColsWithinViewport=e):(this.colsWithinViewport=e.filter(this.isColumnInRowViewport.bind(this)),this.headerColsWithinViewport=e.filter(this.isColumnInHeaderViewport.bind(this)))}isColumnVirtualisationSuppressed(){return this.suppressColumnVirtualisation||0===this.viewportRight}clear(){this.rowsOfHeadersToRenderLeft={},this.rowsOfHeadersToRenderRight={},this.rowsOfHeadersToRenderCenter={},this.colsWithinViewportHash=""}isColumnInHeaderViewport(e){return!(!e.isAutoHeaderHeight()&&!function(e){for(;e;){if(e.isAutoHeaderHeight())return!0;e=e.getParent()}return!1}(e))||this.isColumnInRowViewport(e)}isColumnInRowViewport(e){if(e.isAutoHeight())return!0;const t=e.getLeft()||0,i=t+e.getActualWidth(),s=this.viewportLeft-200,o=this.viewportRight+200;return!(to&&i>o)}getViewportColumns(){const{leftCols:e,rightCols:t}=this.visibleCols;return this.colsWithinViewport.concat(e).concat(t)}getColsWithinViewport(e){if(!this.colModel.colSpanActive)return this.colsWithinViewport;const t=this.isColumnVirtualisationSuppressed()?void 0:this.isColumnInRowViewport.bind(this),{visibleCols:i}=this,s=i.centerCols;return i.getColsForRow(e,s,t,e=>{const t=e.getLeft();return f(t)&&t>this.viewportLeft})}checkViewportColumns(e=!1){this.extractViewport()&&this.eventSvc.dispatchEvent({type:"virtualColumnsChanged",afterScroll:e})}calculateHeaderRows(){const{leftCols:e,rightCols:t}=this.visibleCols;this.columnsToRenderLeft=e,this.columnsToRenderRight=t,this.columnsToRenderCenter=this.colsWithinViewport;const i=e=>{const t=new Set,i={};for(const s of e){let e=s.getParent();const o=s.isSpanHeaderHeight();for(;e&&!t.has(e);){if(o&&e.isPadding()){e=e.getParent();continue}const s=e.getProvidedColumnGroup().getLevel();i[s]??(i[s]=[]),i[s].push(e),t.add(e),e=e.getParent()}}return i};this.rowsOfHeadersToRenderLeft=i(e),this.rowsOfHeadersToRenderRight=i(t),this.rowsOfHeadersToRenderCenter=i(this.headerColsWithinViewport)}extractViewport(){this.extractViewportColumns();const e=this.getViewportColumns().map(e=>`${e.getId()}-${e.getPinned()||"normal"}`).join("#"),t=this.colsWithinViewportHash!==e;return t&&(this.colsWithinViewportHash=e,this.calculateHeaderRows()),t}},class extends wt{constructor(){super(...arguments),this.beanName="iconSvc"}createIconNoSpan(e,t){return Bo(e,this.beans,t?.column)}}],icons:{selectOpen:"small-down",smallDown:"small-down",colorPicker:"color-picker",smallUp:"small-up",checkboxChecked:"small-up",checkboxIndeterminate:"checkbox-indeterminate",checkboxUnchecked:"checkbox-unchecked",radioButtonOn:"radio-button-on",radioButtonOff:"radio-button-off",smallLeft:"small-left",smallRight:"small-right"},apiFunctions:{getGridId:Od,destroy:function(e){e.gridDestroySvc.destroy()},isDestroyed:function(e){return e.gridDestroySvc.destroyCalled},getGridOption:function(e,t){return e.gos.get(t)},setGridOption:function(e,t,i){Gd(e,{[t]:i})},updateGridOptions:Gd,isModuleRegistered:function(e,t){const i=t.replace(/Module$/,"");return e.gos.isModuleRegistered(i)}},dependsOn:[uu,Pc,Tc,fm,sp,Gc,op,nm,wm,rp,Wp,jp,$p,np,pu,hu,vm,Vc,Yp]};function Sm(e){const{inputValue:t,allSuggestions:i,hideIrrelevant:s,filterByPercentageOfBestMatch:o}=e;let r=(i??[]).map((e,i)=>({value:e,relevance:xm(t,e),idx:i}));if(r.sort((e,t)=>e.relevance-t.relevance),s&&(r=r.filter(e=>e.relevance0&&o&&o>0){const e=r[0].relevance*o;r=r.filter(t=>e-t.relevance<0)}const n=[],a=[];for(const e of r)n.push(e.value),a.push(e.idx);return{values:n,indices:a}}function xm(e,t){const i=e.length,s=t.length;if(0===s)return i||0;let o,r=e.toLocaleLowerCase(),n=t.toLocaleLowerCase();e.length1&&o>1){const i=e[u-2],s=r[u-2],a=t[o-2];s===n[o-2]&&(d++,i===a&&d++)}u{const a=function(e,t){const i=[];for(const s of Array.isArray(e)?e:[e]){const e=Pm[s];if(e)for(const s of e){const e=Mm[s];e&&e!==t||i.push(s)}else i.push(s)}return i}(t,o),l="string"==typeof e?e:Lm[e];if(n)return function(e,t){const i=t.filter(e=>"IntegratedCharts"===e||"Sparklines"===e);let s="";const o=globalThis?.agCharts;return!o&&i.length>0?s=`Unable to use ${e} as either the ag-charts-community or ag-charts-enterprise script needs to be included alongside ag-grid-enterprise.\n`:t.some(e=>Fm[e])&&(s+=`Unable to use ${e} as that requires the ag-grid-enterprise script to be included.\n`),s}(l,a);const d=a.filter(e=>"IntegratedCharts"===e||"Sparklines"===e),c=d.length>0?`${d.map(e=>Em(e)).join()} must be initialised with an AG Charts module. One of 'AgChartsCommunityModule' / 'AgChartsEnterpriseModule'.`:"";return`${`Unable to use ${l} as ${a.length>1?"one of "+a.map(e=>Em(e)).join(", "):Em(a[0])} is not registered${i?" for gridId: "+s:""}. ${c} Check if you have registered the module:\n`}\n${(e=>{const t=e.map(e=>`import { ${Em(e)} } from '${Fm[e]?"ag-grid-enterprise":"ag-grid-community"}';`);if(e.some(e=>"IntegratedCharts"===e||"Sparklines"===e)){const e="import { AgChartsEnterpriseModule } from 'ag-charts-enterprise';";t.push(e)}return`import { ModuleRegistry } from 'ag-grid-community'; \n${t.join(" \n")} \n\nModuleRegistry.registerModules([ ${e.map(e=>Em(e,!0)).join(", ")} ]); \n\nFor more info see: ${ri}/modules/`})(a)}`+(r?` \n\n${r}`:"")},Dm=e=>`${e} must be initialised with an AG Charts module. One of 'AgChartsCommunityModule' / 'AgChartsEnterpriseModule'.\n\nimport { AgChartsEnterpriseModule } from 'ag-charts-enterprise';\nimport { ModuleRegistry } from 'ag-grid-community';\nimport { ${e} } from 'ag-grid-enterprise';\n \nModuleRegistry.registerModules([${e}.with(AgChartsEnterpriseModule)]);\n `,Im={1:()=>"`rowData` must be an array",2:({nodeId:e})=>`Duplicate node id '${e}' detected from getRowId callback, this could cause issues in your grid.`,3:()=>"Calling gridApi.resetRowHeights() makes no sense when using Auto Row Height.",4:({id:e})=>`Could not find row id=${e}, data item was not found for this id`,5:({data:e})=>["Could not find data item as object was not found.",e," Consider using getRowId to help the Grid find matching row data"],6:()=>"'groupHideOpenParents' only works when specifying specific columns for 'colDef.showRowGroup'",7:()=>"Pivoting is not supported with aligned grids as it may produce different columns in each grid.",8:({key:e})=>`Unknown key for navigation ${e}`,9:({variable:e})=>`No value for ${e?.cssName}. This usually means that the grid has been initialised before styles have been loaded. The default value of ${e?.defaultValue} will be used and updated when styles load.`,10:({eventType:e})=>`As of v33, the '${e}' event is deprecated. Use the global 'modelUpdated' event to determine when row children have changed.`,11:()=>"No gridOptions provided to createGrid",12:({colKey:e})=>["column ",e," not found"],13:()=>"Could not find rowIndex, this means tasks are being executed on a rowNode that has been removed from the grid.",14:({groupPrefix:e})=>`Row IDs cannot start with ${e}, this is a reserved prefix for AG Grid's row grouping feature.`,15:({expression:e})=>["value should be either a string or a function",e],16:({expression:e,params:t,e:i})=>["Processing of the expression failed","Expression = ",e,"Params = ",t,"Exception = ",i],17:()=>"you need either field or valueSetter set on colDef for editing to work",18:()=>"alignedGrids contains an undefined option.",19:()=>"alignedGrids - No api found on the linked grid.",20:()=>'You may want to configure via a callback to avoid setup race conditions:\n "alignedGrids: () => [linkedGrid]"',21:()=>"pivoting is not supported with aligned grids. You can only use one of these features at a time in a grid.",22:({key:e})=>`${e} is an initial property and cannot be updated.`,23:()=>"The return of `getRowHeight` cannot be zero. If the intention is to hide rows, use a filter instead.",24:()=>"row height must be a number if not using standard row model",25:({id:e})=>["The getRowId callback must return a string. The ID ",e," is being cast to a string."],26:({fnName:e,preDestroyLink:t})=>`Grid API function ${e}() cannot be called as the grid has been destroyed.\n Either clear local references to the grid api, when it is destroyed, or check gridApi.isDestroyed() to avoid calling methods against a destroyed grid.\n To run logic when the grid is about to be destroyed use the gridPreDestroy event. See: ${t}`,27:({fnName:e,module:t})=>`API function '${e}' not registered to module '${t}'`,28:()=>"setRowCount cannot be used while using row grouping.",29:()=>"tried to call sizeColumnsToFit() but the grid is coming back with zero width, maybe the grid is not visible yet on the screen?",30:({toIndex:e})=>["tried to insert columns in invalid location, toIndex = ",e,"remember that you should not count the moving columns when calculating the new index"],31:()=>"infinite loop in resizeColumnSets",32:()=>"applyColumnState() - the state attribute should be an array, however an array was not found. Please provide an array of items (one for each col you want to change) for state.",33:()=>"stateItem.aggFunc must be a string. if using your own aggregation functions, register the functions first before using them in get/set state. This is because it is intended for the column state to be stored and retrieved as simple JSON.",34:({key:e})=>`the column type '${e}' is a default column type and cannot be overridden.`,35:()=>"Column type definitions 'columnTypes' with a 'type' attribute are not supported because a column type cannot refer to another column type. Only column definitions 'columnDefs' can use the 'type' attribute to refer to a column type.",36:({t:e})=>"colDef.type '"+e+"' does not correspond to defined gridOptions.columnTypes",37:()=>"Changing the column pinning status is not allowed with domLayout='print'",38:({iconName:e})=>`provided icon '${e}' needs to be a string or a function`,39:()=>"Applying column order broke a group where columns should be married together. Applying new order has been discarded.",40:({e:e,method:t})=>`${e}\n${(e=>`AG Grid: Unable to use the Clipboard API (navigator.clipboard.${e}()). The reason why it could not be used has been logged in the previous line. For this reason the grid has defaulted to using a workaround which doesn't perform as well. Either fix why Clipboard API is blocked, OR stop this message from appearing by setting grid property suppressClipboardApi=true (which will default the grid to using the workaround rather than the API.`)(t)}`,41:()=>"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.",42:()=>"Browser does not support document.execCommand('copy') for clipboard operations",43:({iconName:e})=>`As of v33, icon '${e}' is deprecated. Use the icon CSS name instead.`,44:()=>'Data type definition hierarchies (via the "extendsDataType" property) cannot contain circular references.',45:({parentCellDataType:e})=>`The data type definition ${e} does not exist.`,46:()=>'The "baseDataType" property of a data type definition must match that of its parent.',47:({cellDataType:e})=>`Missing data type definition - "${e}"`,48:({property:e})=>`Cell data type is "object" but no Value ${e} has been provided. Please either provide an object data type definition with a Value ${e}, or set "colDef.value${e}"`,49:({methodName:e})=>`Framework component is missing the method ${e}()`,50:({compName:e})=>`Could not find component ${e}, did you forget to configure this component?`,51:()=>"Export cancelled. Export is not allowed as per your configuration.",52:()=>"There is no `window` associated with the current `document`",53:()=>"unknown value type during csv conversion",54:()=>"Could not find document body, it is needed for drag and drop and context menu.",55:()=>"addRowDropZone - A container target needs to be provided",56:()=>"addRowDropZone - target already exists in the list of DropZones. Use `removeRowDropZone` before adding it again.",57:()=>"unable to show popup filter, filter instantiation failed",58:()=>"no values found for select cellEditor",59:()=>"cannot select pinned rows",60:()=>"cannot select node until it has finished loading",61:()=>"since version v32.2.0, rowNode.isFullWidthCell() has been deprecated. Instead check `rowNode.detail` followed by the user provided `isFullWidthRow` grid option.",62:({colId:e})=>`setFilterModel() - no column found for colId: ${e}`,63:({colId:e})=>`setFilterModel() - unable to fully apply model, filtering disabled for colId: ${e}`,64:({colId:e})=>`setFilterModel() - unable to fully apply model, unable to create filter for colId: ${e}`,65:()=>"filter missing setModel method, which is needed for setFilterModel",66:()=>"filter API missing getModel method, which is needed for getFilterModel",67:()=>"Filter is missing isFilterActive() method",68:()=>"Column Filter API methods have been disabled as Advanced Filters are enabled.",69:({guiFromFilter:e})=>`getGui method from filter returned ${e}; it should be a DOM element.`,70:({newFilter:e})=>"Grid option quickFilterText only supports string inputs, received: "+typeof e,71:()=>"debounceMs is ignored when apply button is present",72:({keys:e})=>["ignoring FilterOptionDef as it doesn't contain one of ",e],73:()=>"invalid FilterOptionDef supplied as it doesn't contain a 'displayKey'",74:()=>"no filter options for filter",75:()=>"Unknown button type specified",76:({filterModelType:e})=>['Unexpected type of filter "',e,'", it looks like the filter was configured with incorrect Filter Options'],77:()=>"Filter model is missing 'conditions'",78:()=>'Filter Model contains more conditions than "filterParams.maxNumConditions". Additional conditions have been ignored.',79:()=>'"filterParams.maxNumConditions" must be greater than or equal to zero.',80:()=>'"filterParams.numAlwaysVisibleConditions" must be greater than or equal to zero.',81:()=>'"filterParams.numAlwaysVisibleConditions" cannot be greater than "filterParams.maxNumConditions".',82:({param:e})=>`DateFilter ${e} is not a number`,83:()=>"DateFilter minValidYear should be <= maxValidYear",84:()=>"DateFilter minValidDate should be <= maxValidDate",85:()=>"DateFilter should not have both minValidDate and minValidYear parameters set at the same time! minValidYear will be ignored.",86:()=>"DateFilter should not have both maxValidDate and maxValidYear parameters set at the same time! maxValidYear will be ignored.",87:()=>"DateFilter parameter minValidDate should always be lower than or equal to parameter maxValidDate.",88:({index:e})=>`Invalid row index for ensureIndexVisible: ${e}`,89:()=>"A template was provided for Header Group Comp - templates are only supported for Header Comps (not groups)",90:()=>"datasource is missing getRows method",91:()=>"Filter is missing method doesFilterPass",92:()=>"AnimationFrameService called but animation frames are off",93:()=>"cannot add multiple ranges when `cellSelection.suppressMultiRanges = true`",94:({paginationPageSizeOption:e,pageSizeSet:t,pageSizesSet:i,pageSizeOptions:s})=>`'paginationPageSize=${e}'${t?"":" (default value)"}, but ${e} is not included in${i?"":" the default"} paginationPageSizeSelector=[${s?.join(", ")}].`,95:({paginationPageSizeOption:e,paginationPageSizeSelector:t})=>`Either set '${t}' to an array that includes ${e} or to 'false' to disable the page size selector.`,96:({id:e,data:t})=>["Duplicate ID",e,"found for pinned row with data",t,"When `getRowId` is defined, it must return unique IDs for all pinned rows. Use the `rowPinned` parameter."],97:({colId:e})=>`cellEditor for column ${e} is missing getGui() method`,98:()=>"popup cellEditor does not work with fullRowEdit - you cannot use them both - either turn off fullRowEdit, or stop using popup editors.",99:()=>"Since v32, `api.hideOverlay()` does not hide the loading overlay when `loading=true`. Set `loading=false` instead.",101:({propertyName:e,componentName:t,agGridDefaults:i,jsComps:s})=>{const o=[],r=Sm({inputValue:t,allSuggestions:[...Object.keys(i??[]).filter(e=>!["agCellEditor","agGroupRowRenderer","agSortIndicator"].includes(e)),...Object.keys(s??[]).filter(e=>!!s[e])],hideIrrelevant:!0,filterByPercentageOfBestMatch:.8}).values;return o.push(`Could not find '${t}' component. It was configured as "${e}: '${t}'" but it wasn't found in the list of registered components.\n`),r.length>0&&o.push(` Did you mean: [${r.slice(0,3)}]?\n`),o.push("If using a custom component check it has been registered correctly."),o},102:()=>"selectAll: 'filtered' only works when gridOptions.rowModelType='clientSide'",103:()=>"Invalid selection state. When using client-side row model, the state must conform to `string[]`.",104:({value:e,param:t})=>`Numeric value ${e} passed to ${t} param will be interpreted as ${e} seconds. If this is intentional use "${e}s" to silence this warning.`,105:({e:e})=>["chart rendering failed",e],106:()=>`Theming API and Legacy Themes are both used in the same page. A Theming API theme has been provided to the 'theme' grid option, but the file (ag-grid.css) is also included and will cause styling issues. Remove ag-grid.css from the page. See the migration guide: ${ri}/theming-migration/`,107:({key:e,value:t})=>`Invalid value for theme param ${e} - ${t}`,108:({e:e})=>["chart update failed",e],109:({inputValue:e,allSuggestions:t})=>{const i=Sm({inputValue:e,allSuggestions:t,hideIrrelevant:!0,filterByPercentageOfBestMatch:.8}).values;return[`Could not find '${e}' aggregate function. It was configured as "aggFunc: '${e}'" but it wasn't found in the list of registered aggregations.`,i.length>0?` Did you mean: [${i.slice(0,3)}]?`:"","If using a custom aggregation function check it has been registered correctly."].join("\n")},110:()=>"groupHideOpenParents only works when specifying specific columns for colDef.showRowGroup",111:()=>"Invalid selection state. When `groupSelects` is enabled, the state must conform to `IServerSideGroupSelectionState`.",113:()=>"Set Filter cannot initialise because you are using a row model that does not contain all rows in the browser. Either use a different filter type, or configure Set Filter such that you provide it with values",114:({component:e})=>`Could not find component with name of ${e}. Is it in Vue.components?`,116:()=>"Invalid selection state. The state must conform to `IServerSideSelectionState`.",117:()=>"selectAll must be of boolean type.",118:()=>"Infinite scrolling must be enabled in order to set the row count.",119:()=>"Unable to instantiate filter",120:()=>"MultiFloatingFilterComp expects MultiFilter as its parent",121:()=>"a column you are grouping or pivoting by has objects as values. If you want to group by complex objects then either a) use a colDef.keyCreator (see AG Grid docs) or b) to toString() on the object to return a key",122:()=>"could not find the document, document is empty",123:()=>"Advanced Filter is only supported with the Client-Side Row Model or Server-Side Row Model.",124:()=>"No active charts to update.",125:({chartId:e})=>`Unable to update chart. No active chart found with ID: ${e}.`,126:()=>"unable to restore chart as no chart model is provided",127:({allRange:e})=>`unable to create chart as ${e?"there are no columns in the grid":"no range is selected"}.`,128:({feature:e})=>`${e} is only available if using 'multiRow' selection mode.`,129:({feature:e,rowModel:t})=>`${e} is only available if using 'clientSide' or 'serverSide' rowModelType, you are using ${t}.`,130:()=>'cannot multi select unless selection mode is "multiRow"',132:()=>"Row selection features are not available unless `rowSelection` is enabled.",133:({iconName:e})=>`icon '${e}' function should return back a string or a dom object`,134:({iconName:e})=>`Did not find icon '${e}'`,135:()=>"Data type of the new value does not match the cell data type of the column",136:()=>"Unable to update chart as the 'type' is missing. It must be either 'rangeChartUpdate', 'pivotChartUpdate', or 'crossFilterChartUpdate'.",137:({type:e,currentChartType:t})=>`Unable to update chart as a '${e}' update type is not permitted on a ${t}.`,138:({chartType:e})=>`invalid chart type supplied: ${e}`,139:({customThemeName:e})=>`a custom chart theme with the name ${e} has been supplied but not added to the 'chartThemes' list`,140:({name:e})=>`no stock theme exists with the name '${e}' and no custom chart theme with that name was supplied to 'customChartThemes'`,141:()=>"cross filtering with row grouping is not supported.",142:()=>"cross filtering is only supported in the client side row model.",143:({panel:e})=>`'${e}' is not a valid Chart Tool Panel name`,144:({type:e})=>`Invalid charts data panel group name supplied: '${e}'`,145:({group:e})=>`As of v32, only one charts customize panel group can be expanded at a time. '${e}' will not be expanded.`,146:({comp:e})=>`Unable to instantiate component '${e}' as its module hasn't been loaded. Add 'ValidationModule' to see which module is required.`,147:({group:e})=>`Invalid charts customize panel group name supplied: '${e}'`,148:({group:e})=>`invalid chartGroupsDef config '${e}'`,149:({group:e,chartType:t})=>`invalid chartGroupsDef config '${e}.${t}'`,150:()=>"'seriesChartTypes' are required when the 'customCombo' chart type is specified.",151:({chartType:e})=>`invalid chartType '${e}' supplied in 'seriesChartTypes', converting to 'line' instead.`,152:({colId:e})=>`no 'seriesChartType' found for colId = '${e}', defaulting to 'line'.`,153:({chartDataType:e})=>`unexpected chartDataType value '${e}' supplied, instead use 'category', 'series' or 'excluded'`,154:({colId:e})=>`cross filtering requires a 'agSetColumnFilter' or 'agMultiColumnFilter' to be defined on the column with id: ${e}`,155:({option:e})=>`'${e}' is not a valid Chart Toolbar Option`,156:({panel:e})=>`Invalid panel in chartToolPanelsDef.panels: '${e}'`,157:({unrecognisedGroupIds:e})=>["unable to find group(s) for supplied groupIds:",e],158:()=>"can not expand a column item that does not represent a column group header",159:()=>"Invalid params supplied to createExcelFileForExcel() - `ExcelExportParams.data` is empty.",160:()=>"Export cancelled. Export is not allowed as per your configuration.",161:()=>"The Excel Exporter is currently on Multi Sheet mode. End that operation by calling 'api.getMultipleSheetAsExcel()' or 'api.exportMultipleSheetsAsExcel()'",162:({id:e,dataType:t})=>`Unrecognized data type for excel export [${e}.dataType=${t}]`,163:({featureName:e})=>`Excel table export does not work with ${e}. The exported Excel file will not contain any Excel tables.\n Please turn off ${e} to enable Excel table exports.`,164:()=>"Unable to add data table to Excel sheet: A table already exists.",165:()=>"Unable to add data table to Excel sheet: Missing required parameters.",166:({unrecognisedGroupIds:e})=>["unable to find groups for these supplied groupIds:",e],167:({unrecognisedColIds:e})=>["unable to find columns for these supplied colIds:",e],168:()=>"detailCellRendererParams.template should be function or string",169:()=>'Reference to eDetailGrid was missing from the details template. Please add data-ref="eDetailGrid" to the template.',170:({providedStrategy:e})=>`invalid cellRendererParams.refreshStrategy = ${e} supplied, defaulting to refreshStrategy = 'rows'.`,171:()=>"could not find detail grid options for master detail, please set gridOptions.detailCellRendererParams.detailGridOptions",172:()=>"could not find getDetailRowData for master / detail, please set gridOptions.detailCellRendererParams.getDetailRowData",173:({group:e})=>`invalid chartGroupsDef config '${e}'`,174:({group:e,chartType:t})=>`invalid chartGroupsDef config '${e}.${t}'`,175:({menuTabName:e,itemsToConsider:t})=>[`Trying to render an invalid menu item '${e}'. Check that your 'menuTabs' contains one of `,t],176:({key:e})=>`unknown menu item type ${e}`,177:()=>"valid values for cellSelection.handle.direction are 'x', 'y' and 'xy'. Default to 'xy'.",178:({colId:e})=>`column ${e} is not visible`,179:()=>"totalValueGetter should be either a function or a string (expression)",180:()=>"agRichSelectCellEditor requires cellEditorParams.values to be set",181:()=>"agRichSelectCellEditor cannot have `multiSelect` and `allowTyping` set to `true`. AllowTyping has been turned off.",182:()=>'you cannot mix groupDisplayType = "multipleColumns" with treeData, only one column can be used to display groups when doing tree data',183:()=>"Group Column Filter only works on group columns. Please use a different filter.",184:({parentGroupData:e,childNodeData:t})=>["duplicate group keys for row data, keys should be unique",[e,t]],185:({data:e})=>["getDataPath() should not return an empty path",[e]],186:({rowId:e,rowData:t,duplicateRowsData:i})=>["duplicate group keys for row data, keys should be unique",e,t,...i??[]],187:({rowId:e,firstData:t,secondData:i})=>[`Duplicate node id ${e}. Row IDs are provided via the getRowId() callback. Please modify the getRowId() callback code to provide unique row id values.`,"first instance",t,"second instance",i],188:e=>`getRowId callback must be provided for Server Side Row Model ${e?.feature||"selection"} to work correctly.`,189:({startRow:e})=>`invalid value ${e} for startRow, the value should be >= 0`,190:({rowGroupId:e,data:t})=>["null and undefined values are not allowed for server side row model keys",e?`column = ${e}`:"","data is ",t],194:({method:e})=>`calling gridApi.${e}() is only possible when using rowModelType=\`clientSide\`.`,195:({justCurrentPage:e})=>`selecting just ${e?"current page":"filtered"} only works when gridOptions.rowModelType='clientSide'`,196:({key:e})=>`Provided ids must be of string type. Invalid id provided: ${e}`,197:()=>"`toggledNodes` must be an array of string ids.",199:()=>"getSelectedNodes and getSelectedRows functions cannot be used with select all functionality with the server-side row model. Use `api.getServerSideSelectionState()` instead.",200:Tm,201:({rowModelType:e})=>`Could not find row model for rowModelType = ${e}`,202:()=>"`getSelectedNodes` and `getSelectedRows` functions cannot be used with `groupSelectsChildren` and the server-side row model. Use `api.getServerSideSelectionState()` instead.",203:()=>"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.",204:()=>"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.",205:({duplicateIdText:e})=>`Unable to display rows as duplicate row ids (${e}) were returned by the getRowId callback. Please modify the getRowId callback to provide unique ids.`,206:()=>"getRowId callback must be implemented for transactions to work. Transaction was ignored.",207:()=>'The Set Filter Parameter "defaultToNothingSelected" value was ignored because it does not work when "excelMode" is used.',208:()=>"Set Filter Value Formatter must return string values. Please ensure the Set Filter Value Formatter returns string values for complex objects.",209:()=>`Set Filter Key Creator is returning null for provided values and provided values are primitives. Please provide complex objects. See ${ri}/filter-set-filter-list/#filter-value-types`,210:()=>"Set Filter has a Key Creator, but provided values are primitives. Did you mean to provide complex objects?",211:()=>"property treeList=true for Set Filter params, but you did not provide a treeListPathGetter or values of type Date.",212:()=>"please review all your toolPanel components, it seems like at least one of them doesn't have an id",213:()=>"Advanced Filter does not work with Filters Tool Panel. Filters Tool Panel has been disabled.",214:({key:e})=>`unable to lookup Tool Panel as invalid key supplied: ${e}`,215:({key:e,defaultByKey:t})=>`the key ${e} is not a valid key for specifying a tool panel, valid keys are: ${Object.keys(t??{}).join(",")}`,216:({name:e})=>`Missing component for '${e}'`,217:({invalidColIds:e})=>["unable to find grid columns for the supplied colDef(s):",e],218:({property:e,defaultOffset:t})=>`${e} must be a number, the value you provided is not a valid number. Using the default of ${t}px.`,219:({property:e})=>`Property ${e} does not exist on the target object.`,220:({lineDash:e})=>`'${e}' is not a valid 'lineDash' option.`,221:()=>"agAggregationComponent should only be used with the client and server side row model.",222:()=>"agFilteredRowCountComponent should only be used with the client side row model.",223:()=>"agSelectedRowCountComponent should only be used with the client and server side row model.",224:()=>"agTotalAndFilteredRowCountComponent should only be used with the client side row model.",225:()=>"agTotalRowCountComponent should only be used with the client side row model.",226:()=>"viewport is missing init method.",227:()=>"menu item icon must be DOM node or string",228:({menuItemOrString:e})=>`unrecognised menu item ${e}`,230:()=>"detailCellRendererParams.template is not supported by AG Grid React. To change the template, provide a Custom Detail Cell Renderer. See https://www.ag-grid.com/react-data-grid/master-detail-custom-detail/",231:()=>"As of v32, using custom components with `reactiveCustomComponents = false` is deprecated.",232:()=>"Using both rowData and v-model. rowData will be ignored.",233:({methodName:e})=>`Framework component is missing the method ${e}()`,234:()=>'Group Column Filter does not work with the colDef property "field". This property will be ignored.',235:()=>'Group Column Filter does not work with the colDef property "filterValueGetter". This property will be ignored.',236:()=>'Group Column Filter does not work with the colDef property "filterParams". This property will be ignored.',237:()=>"Group Column Filter does not work with Tree Data enabled. Please disable Tree Data, or use a different filter.",238:()=>"setRowCount can only accept a positive row count.",239:()=>'Theming API and CSS File Themes are both used in the same page. In v33 we released the Theming API as the new default method of styling the grid. See the migration docs https://www.ag-grid.com/react-data-grid/theming-migration/. Because no value was provided to the `theme` grid option it defaulted to themeQuartz. But the file (ag-grid.css) is also included and will cause styling issues. Either pass the string "legacy" to the theme grid option to use v32 style themes, or remove ag-grid.css from the page to use Theming API.',240:({theme:e})=>`theme grid option must be a Theming API theme object or the string "legacy", received: ${e}`,243:()=>"Failed to deserialize state - each provided state object must be an object.",244:()=>"Failed to deserialize state - `selectAllChildren` must be a boolean value or undefined.",245:()=>"Failed to deserialize state - `toggledNodes` must be an array.",246:()=>"Failed to deserialize state - Every `toggledNode` requires an associated string id.",247:()=>"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. \nPlease rebuild the selection state and reapply it.",248:()=>"SetFloatingFilter expects SetFilter as its parent",249:()=>"Must supply a Value Formatter in Set Filter params when using a Key Creator",250:()=>"Must supply a Key Creator in Set Filter params when `treeList = true` on a group column, and Tree Data or Row Grouping is enabled.",251:({chartType:e})=>`AG Grid: Unable to create chart as an invalid chartType = '${e}' was supplied.`,252:()=>"cannot get grid to draw rows when it is in the middle of drawing rows. \nYour code probably called a grid API method while the grid was in the render stage. \nTo overcome this, put the API call into a timeout, e.g. instead of api.redrawRows(), call setTimeout(function() { api.redrawRows(); }, 0). \nTo see what part of your code that caused the refresh check this stacktrace.",253:({version:e})=>["Illegal version string: ",e],254:()=>"Cannot create chart: no chart themes available.",255:({point:e})=>`Lone surrogate U+${e?.toString(16).toUpperCase()} is not a scalar value`,256:()=>"Unable to initialise. See validation error, or load ValidationModule if missing.",257:()=>Dm("IntegratedChartsModule"),258:()=>Dm("SparklinesModule"),259:({part:e})=>`the argument to theme.withPart must be a Theming API part object, received: ${e}`,260:({propName:e,compName:t,gridScoped:i,gridId:s,rowModelType:o})=>Tm({reasonOrId:`AG Grid '${e}' component: ${t}`,moduleName:Lg[t],gridId:s,gridScoped:i,rowModelType:o}),261:()=>"As of v33, `column.isHovered()` is deprecated. Use `api.isColumnHovered(column)` instead.",262:()=>'As of v33, icon key "smallDown" is deprecated. Use "advancedFilterBuilderSelect" for Advanced Filter Builder dropdown, "selectOpen" for Select cell editor and dropdowns (e.g. Integrated Charts menu), "richSelectOpen" for Rich Select cell editor.',263:()=>'As of v33, icon key "smallLeft" is deprecated. Use "panelDelimiterRtl" for Row Group Panel / Pivot Panel, "subMenuOpenRtl" for sub-menus.',264:()=>'As of v33, icon key "smallRight" is deprecated. Use "panelDelimiter" for Row Group Panel / Pivot Panel, "subMenuOpen" for sub-menus.',265:({colId:e})=>`Unable to infer chart data type for column '${e}' if first data entry is null. Please specify "chartDataType", or a "cellDataType" in the column definition. For more information, see ${ri}/integrated-charts-range-chart#coldefchartdatatype .`,266:()=>'As of v33.1, using "keyCreator" with the Rich Select Editor has been deprecated. It now requires the "formatValue" callback to convert complex data to strings.',267:()=>"Detail grids can not use a different theme to the master grid, the `theme` detail grid option will be ignored.",268:()=>"Transactions aren't supported with tree data when using treeDataChildrenField",269:()=>"When `masterSelects: 'detail'`, detail grids must be configured with multi-row selection",270:({id:e,parentId:t})=>`Cycle detected for row with id='${e}' and parent id='${t}'. Resetting the parent for row with id='${e}' and showing it as a root-level node.`,271:({id:e,parentId:t})=>`Parent row not found for row with id='${e}' and parent id='${t}'. Showing row with id='${e}' as a root-level node.`,272:()=>"No AG Grid modules are registered! It is recommended to start with all Community features via the AllCommunityModule:\n \n import { ModuleRegistry, AllCommunityModule } from 'ag-grid-community';\n \n ModuleRegistry.registerModules([ AllCommunityModule ]);\n ",273:({providedId:e,usedId:t})=>`Provided column id '${e}' was already in use, ensure all column and group ids are unique. Using '${t}' instead.`,274:({prop:e})=>{let t=`Since v33, ${e} has been deprecated.`;switch(e){case"maxComponentCreationTimeMs":t+=" This property is no longer required and so will be removed in a future version.";break;case"setGridApi":t+=" This method is not called by AG Grid. To access the GridApi see: https://ag-grid.com/react-data-grid/grid-interface/#grid-api ";break;case"children":t+=" For multiple versions AgGridReact does not support children."}return t},275:Am,276:()=>"Row Numbers Row Resizer cannot be used when Grid Columns have `autoHeight` enabled.",277:({colId:e})=>`'enableFilterHandlers' is set to true, but column '${e}' does not have 'filter.doesFilterPass' or 'filter.handler' set.`,278:({colId:e})=>`Unable to create filter handler for column '${e}'`,279:e=>{},280:({colId:e})=>`'name' must be provided for custom filter components for column '${e}`,281:({colId:e})=>`Filter for column '${e}' does not have 'filterParams.buttons', but the new Filters Tool Panel has buttons configured. Either configure buttons for the filter, or disable buttons on the Filters Tool Panel.`,282:()=>"New filter tool panel requires `enableFilterHandlers: true`.",283:()=>"As of v34, use the same method on the filter handler (`api.getColumnFilterHandler(colKey)`) instead.",284:()=>"As of v34, filters are active when they have a model. Use `api.getColumnFilterModel()` instead.",285:()=>"As of v34, use (`api.getColumnFilterModel()`) instead.",286:()=>"As of v34, use (`api.setColumnFilterModel()`) instead.",287:()=>"`api.doFilterAction()` requires `enableFilterHandlers = true",288:()=>"`api.getColumnFilterModel(key, true)` requires `enableFilterHandlers = true",289:({rowModelType:e})=>`Row Model '${e}' is not supported with Batch Editing`,290:({rowIndex:e,rowPinned:t})=>`Row with index '${e}' and pinned state '${t}' not found`,291:()=>"License Key being set multiple times with different values. This can result in an incorrect license key being used,",292:({colId:e})=>`The Multi Filter for column '${e}' has buttons configured against the child filters. When 'enableFilterHandlers=true', buttons must instead be provided against the parent Multi Filter params. The child filter buttons will be ignored.`,293:()=>"The grid was initialised detached from the DOM and was then inserted into a Shadow Root. Theme styles are probably broken. Pass the themeStyleContainer grid option to let the grid know where in the document to insert theme CSS.",294:()=>"When using the `agRichSelectCellEditor` setting `filterListAsync = true` requires `allowTyping = true` and the `values()` callback must return a Promise of filtered values.",295:({blockedService:e})=>`colDef.allowFormula is not supported with ${e}. Formulas has been turned off.`,296:()=>"Since v35, `api.hideOverlay()` does not hide the overlay when `activeOverlay` is set. Set `activeOverlay=null` instead.",297:()=>'`api.hideOverlay()` does not hide the no matching rows overlay as it is only controlled by grid state. Set `suppressOverlays=["noMatchingRows"] to not show it.'};function km(e,t){const i=Im[e];if(!i)return[`Missing error text for error id ${e}!`];const s=i(t),o=`\nSee ${ui(e,t)}`;return Array.isArray(s)?s.concat(o):[s,o]}var Lm={1:"Charting Aggregation",2:"pivotResultFields",3:"setTooltip"},Om=class{constructor(e="javascript"){var t;this.frameworkName=e,this.renderingEngine="vanilla",this.batchFrameworkComps=!1,this.wrapIncoming=e=>e(),this.wrapOutgoing=e=>e(),this.baseDocLink=`${Gt}/${this.frameworkName}-data-grid`,t=this.baseDocLink,ri=t}frameworkComponent(e){return null}isFrameworkComponent(e){return!1}getDocLink(e){return this.baseDocLink+(e?"/"+e:"")}},Gm=new WeakMap,Nm=new WeakMap;function Bm(e,t,i){if(!t)return pi(11),{};const s=i;let o;if(!s?.setThemeOnGridDiv){const t=Go({tag:"div"});t.style.height="100%",e.appendChild(t),e=t,o=()=>e.remove()}return(new _m).create(e,t,t=>{const i=new Ad(e);t.createBean(i)},void 0,i,o)}var Vm=1,_m=class{create(e,t,i,s,o,r){const n=It.applyGlobalGridOptions(t),a=n.gridId??String(Vm++),l=this.getRegisteredModules(o,a,n.rowModelType),d=this.createBeansList(n.rowModelType,l,a),c=this.createProvidedBeans(e,n,o);if(!d)return;const u={providedBeanInstances:c,beanClasses:d,id:a,beanInitComparator:ul,beanDestroyComparator:hl,derivedBeans:[dl],destroyCallback:()=>{Nm.delete(g),Gm.delete(e),function(e){delete Wt[e]}(a),r?.()}},h=new ll(u);this.registerModuleFeatures(h,l),i(h),h.getBean("syncSvc").start(),s?.(h);const g=h.getBean("gridApi");return Gm.set(e,g),Nm.set(g,e),g}getRegisteredModules(e,t,i){return qt(ym,void 0,!0),e?.modules?.forEach(e=>qt(e,t)),function(e,t){const i=Wt[e]??{};return[...Object.values(zt.all??{}),...Object.values(i.all??{}),...Object.values(zt[t]??{}),...Object.values(i[t]??{})]}(t,Hm(i))}registerModuleFeatures(e,t){const i=e.getBean("registry"),s=e.getBean("apiFunctionSvc");for(const e of t){i.registerModule(e);const t=e.apiFunctions;if(t){const e=Object.keys(t);for(const i of e)s?.addFunction(i,t[i])}}}createProvidedBeans(e,t,i){let s=i?i.frameworkOverrides:null;C(s)&&(s=new Om);const o={gridOptions:t,eGridDiv:e,eRootDiv:e,globalListener:i?i.globalListener:null,globalSyncListener:i?i.globalSyncListener:null,frameworkOverrides:s};return i?.providedBeanInstances&&Object.assign(o,i.providedBeanInstances),o}createBeansList(e,t,i){const s={clientSide:"ClientSideRowModel",infinite:"InfiniteRowModel",serverSide:"ServerSideRowModel",viewport:"ViewportRowModel"},o=Hm(e),r=s[o];if(!r)return void mi(201,{rowModelType:o},`Unknown rowModelType ${o}.`);if(!Ut)return void mi(272,void 0,"No AG Grid modules are registered! It is recommended to start with all Community features via the AllCommunityModule:\n \n import { ModuleRegistry, AllCommunityModule } from 'ag-grid-community';\n \n ModuleRegistry.registerModules([ AllCommunityModule ]);\n ");if(!e){const e=Object.entries(s).filter(([e,t])=>Yt(t,i,e));if(1==e.length){const[t,i]=e[0];if(t!==o){const e={moduleName:i,rowModelType:t};return void mi(275,e,Am(e))}}}if(!Yt(r,i,o)){const e=Qt(),t=`rowModelType = '${o}'`,s=e?`Unable to use ${t} as that requires the ag-grid-enterprise script to be included.\n`:`Missing module ${r}Module for rowModelType ${o}.`;return void mi(200,{reasonOrId:t,moduleName:r,gridScoped:Xt(),gridId:i,rowModelType:o,isUmd:e},s)}const n=new Set;for(const e of t)for(const t of e.beans??[])n.add(t);return Array.from(n)}};function Hm(e){return e??"clientSide"}function zm(e){if("string"==typeof e)try{e=document.querySelector(`[grid-id="${e}"]`)?.parentElement??document.querySelector(e)?.firstElementChild??document.getElementById(e)?.firstElementChild}catch{e=null}return e?Gm.get(e):void 0}function Wm(e){return Nm.get(e)}function Um(e,t=!1){const i=[],s=[],o=[],r=[],n=[],a=[],l=[],d=[],c=[];let u=0;for(let t=0;tnull!=e)}function Km(e){const t=[];for(const{groupId:i,open:s}of e)s&&t.push(i);return t.length?{openColumnGroupIds:t}:void 0}function $m(e){return{columnGroup:Km(e)}}var qm={moduleName:"AlignedGrids",version:ii,beans:[class extends wt{constructor(){super(...arguments),this.beanName="alignedGridsSvc",this.consuming=!1}getAlignedGridApis(){let e=this.gos.get("alignedGrids")??[];const t="function"==typeof e;"function"==typeof e&&(e=e());return e.map(e=>{if(!e)return pi(18),void(t||pi(20));if(this.isGridApi(e))return e;const i=e;return"current"in i?i.current?.api:(i.api||pi(19),i.api)}).filter(e=>!!e&&!e.isDestroyed())}isGridApi(e){return!!e&&!!e.dispatchEvent}postConstruct(){const e=this.fireColumnEvent.bind(this);this.addManagedEventListeners({columnMoved:e,columnVisible:e,columnPinned:e,columnGroupOpened:e,columnResized:e,bodyScroll:this.fireScrollEvent.bind(this),alignedGridColumn:({event:e})=>this.onColumnEvent(e),alignedGridScroll:({event:e})=>this.onScrollEvent(e)})}fireEvent(e){if(!this.consuming)for(const t of this.getAlignedGridApis())t.isDestroyed()||t.dispatchEvent(e)}onEvent(e){this.consuming=!0,e(),this.consuming=!1}fireColumnEvent(e){this.fireEvent({type:"alignedGridColumn",event:e})}fireScrollEvent(e){"horizontal"===e.direction&&this.fireEvent({type:"alignedGridScroll",event:e})}onScrollEvent(e){this.onEvent(()=>{this.beans.ctrlsSvc.getScrollFeature().setHorizontalScrollPosition(e.left,!0)})}extractDataFromEvent(e,t){const i=[];return e.columns?e.columns.forEach(e=>{i.push(t(e))}):e.column&&i.push(t(e.column)),i}getMasterColumns(e){return this.extractDataFromEvent(e,e=>e)}getColumnIds(e){return this.extractDataFromEvent(e,e=>e.getColId())}onColumnEvent(e){this.onEvent(()=>{switch(e.type){case"columnMoved":case"columnVisible":case"columnPinned":case"columnResized":this.processColumnEvent(e);break;case"columnGroupOpened":this.processGroupOpenedEvent(e);break;case"columnPivotChanged":gi(21)}})}processGroupOpenedEvent(e){const{colGroupSvc:t}=this.beans;if(t)for(const i of e.columnGroups){let e=null;i&&(e=t.getProvidedColGroup(i.getGroupId())),i&&!e||t.setColumnGroupOpened(e,i.isExpanded(),"alignedGridChanged")}}processColumnEvent(e){const t=e.column;let i=null;const s=this.beans,{colResize:o,ctrlsSvc:r,colModel:n}=s;if(t&&(i=n.getColDefCol(t.getColId())),t&&!i)return;const a=this.getMasterColumns(e);switch(e.type){case"columnMoved":yo(s,{state:e.api.getColumnState().map(e=>({colId:e.colId})),applyOrder:!0},"alignedGridChanged");break;case"columnVisible":yo(s,{state:e.api.getColumnState().map(e=>({colId:e.colId,hide:e.hide}))},"alignedGridChanged");break;case"columnPinned":yo(s,{state:e.api.getColumnState().map(e=>({colId:e.colId,pinned:e.pinned}))},"alignedGridChanged");break;case"columnResized":{const t=e,i={};for(const e of a)i[e.getId()]={key:e.getColId(),newWidth:e.getActualWidth()};for(const e of t.flexColumns??[])i[e.getId()]&&delete i[e.getId()];o?.setColumnWidths(Object.values(i),!1,t.finished,"alignedGridChanged");break}}const l=r.getGridBodyCtrl().isVerticalScrollShowing();for(const e of this.getAlignedGridApis())e.setGridOption("alwaysShowVerticalScroll",l)}}],dependsOn:[gu]};function Ym(e,t,i="auto"){e.frameworkOverrides.wrapIncoming(()=>e.ctrlsSvc.getScrollFeature().ensureColumnVisible(t,i),"ensureVisible")}function Xm(e,t,i){e.frameworkOverrides.wrapIncoming(()=>e.ctrlsSvc.getScrollFeature().ensureIndexVisible(t,i),"ensureVisible")}var Zm={moduleName:"RowApi",version:ii,apiFunctions:{redrawRows:function(e,t={}){const i=t?t.rowNodes:void 0;e.frameworkOverrides.wrapIncoming(()=>e.rowRenderer.redrawRows(i))},setRowNodeExpanded:function e(t,i,s,o,r){i&&(o&&i.parent&&-1!==i.parent.level&&e(t,i.parent,s,o,r),i.setExpanded(s,void 0,r))},getRowNode:function(e,t){return e.rowModel.getRowNode(t)},addRenderedRowListener:function(e,t,i,s){e.rowRenderer.addRenderedRowListener(t,i,s)},getRenderedNodes:function(e){return e.rowRenderer.getRenderedNodes()},forEachNode:function(e,t,i){e.rowModel.forEachNode(t,i)},getFirstDisplayedRowIndex:function(e){return e.rowRenderer.firstRenderedRow},getLastDisplayedRowIndex:function(e){return e.rowRenderer.lastRenderedRow},getDisplayedRowAtIndex:function(e,t){return e.rowModel.getRow(t)},getDisplayedRowCount:function(e){return e.rowModel.getRowCount()}}},Qm={moduleName:"ScrollApi",version:ii,apiFunctions:{getVerticalPixelRange:function(e){return e.ctrlsSvc.getScrollFeature().getVScrollPosition()},getHorizontalPixelRange:function(e){return e.ctrlsSvc.getScrollFeature().getHScrollPosition()},ensureColumnVisible:Ym,ensureIndexVisible:Xm,ensureNodeVisible:function(e,t,i=null){e.frameworkOverrides.wrapIncoming(()=>e.ctrlsSvc.getScrollFeature().ensureNodeVisible(t,i),"ensureVisible")}}};function Jm(e){e.rowModel?.onRowHeightChanged()}function ef(e){e.rowAutoHeight?.active?gi(3):e.rowModel?.resetRowHeights()}var tf={moduleName:"CsrmSsrmSharedApi",version:ii,apiFunctions:{expandAll:function(e){e.expansionSvc?.expandAll(!0)},collapseAll:function(e){e.expansionSvc?.expandAll(!1)}}},sf={moduleName:"RowModelSharedApi",version:ii,apiFunctions:{onRowHeightChanged:Jm,resetRowHeights:ef}},of={moduleName:"SsrmInfiniteSharedApi",version:ii,apiFunctions:{setRowCount:function(e,t,i){const s=Ta(e);if(s)return 0===e.rowGroupColsSvc?.columns.length?t<0?void pi(238):void s.setRowCount(t,i):void pi(28);Aa(e)?.setRowCount(t,i)},getCacheBlockState:function(e){if(Si(e.gos)){return e.rowModel.getBlockStates()}return e.rowNodeBlockLoader?.getBlockState()??{}},isLastRowIndexKnown:function(e){return e.rowModel.isLastRowIndexKnown()}}},rf=class extends wt{constructor(e){super(),this.rootNode=e,this.nextId=0,this.allNodesMap={},af(e)}getRowNode(e){return this.allNodesMap[e]}setNewRowData(e){this.dispatchRowDataUpdateStarted(e),this.destroyAllNodes();const t=af(this.rootNode),i=new Array(e.length);t._leafs=i;let s=0;const o=this.beans.groupStage?.getNestedDataGetter(),r=o?new Set:null,n=(e,t)=>{const a=e.level+1;for(let l=0,d=t.length;l{if(!u&&void 0!==u){const t=e.sourceRowIndex;u=t<=h,h=t}e.data!==t&&(e.updateData(t),n.has(e)||a.add(e),!e.selectable&&e.isSelected()&&d.push(e))},m=(e,t,i)=>{for(let s=0,r=t.length;s0;if(f){const e=i._leafs??(i._leafs=[]);void 0===u?uf(e,l,r):cf(e,l)&&(r.reordered=!0)}(f||g||a.size)&&(e.rowDataUpdated=!0,this.deselect(d))}deleteUnusedNodes(e,{removals:t},i,s){const o=this.rootNode._leafs;for(let r=0,n=o.length;r0}updateRowData(e,t,i){if(this.dispatchRowDataUpdateStarted(e.add),this.beans.groupStage?.getNestedDataGetter())return gi(268),{remove:[],update:[],add:[]};const s=[],o=Hi(this.gos),r=this.executeRemove(o,e,t,s,i),n=this.executeUpdate(o,e,t,s),a=this.executeAdd(e,t);return this.deselect(s),{remove:r,update:n,add:a}}executeRemove(e,{remove:t},{adds:i,updates:s,removals:o},r,n){const a=this.rootNode._leafs,l=a?.length,d=t?.length;if(!d||!l)return[];let c=0,u=l,h=0;const g=new Array(d);for(let a=0;ah&&(h=d),g[c++]=l,this.destroyNode(l,n)&&(l.isSelected()&&r.push(l),i.delete(l)||(s.delete(l),o.push(l)))}return g.length=c,c&&df(a,u,h),g}executeUpdate(e,{update:t},{adds:i,updates:s},o){const r=t?.length;if(!r)return[];const n=new Array(r);let a=0;for(let l=0;l=l;--e){const i=s[e];i.sourceRowIndex=t,s[t--]=i}t.reordered=!0}s.length=a;const d=new Array(n),c=t.adds;for(let e=0;e=i||Number.isNaN(t))return i;t=Math.ceil(t);const s=this.gos;return t>0&&s.get("treeData")&&s.get("getDataPath")&&(t=nf(e,t)),t}},nf=(e,t)=>{for(let i=0,s=e.length;i{e.group=!0,e.level=-1,e.id="ROOT_NODE_ID",0!==e._leafs?.length&&(e._leafs=[]);const t=[],i=[],s=[],o=[];e.childrenAfterGroup=t,e.childrenAfterSort=i,e.childrenAfterAggFilter=s,e.childrenAfterFilter=o;const r=e.sibling;return r&&(r.childrenAfterGroup=t,r.childrenAfterSort=i,r.childrenAfterAggFilter=s,r.childrenAfterFilter=o,r.childrenMapped=e.childrenMapped),e.updateHasChildren(),e},lf=(e,t)=>{if(e)for(let i=0,s=e.length;i{for(let s=t=Math.max(0,t),o=e.length;s{const i=t.size;e.length=i;let s=0,o=!1,r=!1;for(const i of t){const t=i.sourceRowIndex;t===s?r||(r=o):(t>=0?r=!0:o=!0,i.sourceRowIndex=s,e[s]=i),++s}return r},uf=(e,t,{adds:i})=>{const s=e.length,o=t.size;o>s&&(e.length=o);let r=0;for(let t=0;t{const n=new Array(r);let a,l=0,d=i[l],c=-1,u=0,h=0;const g=i.length,p=s.length;for(;;){if(c<0){if(u>=p)break;if(a=s[u++],c=o.get(a)??-1,c<0)continue}if((e.compareRowNodes(t,d,a)||~o.get(d)-c)<0){if(n[h++]=d,++l>=g)break;d=i[l]}else n[h++]=a,c=-1}for(;l=0&&(n[h++]=e)}return n},pf=(e,t,i)=>{let s=0;i.length=t.size;for(let o=0,r=e.length;o{const t=e.childrenAfterSort,i=e.sibling;if(i&&(i.childrenAfterSort=t),t)for(let e=0,i=t.length-1;e<=i;e++){const s=t[e],o=0===e,r=e===i;s.firstChild!==o&&(s.firstChild=o,s.dispatchRowEvent("firstChildChanged")),s.lastChild!==r&&(s.lastChild=r,s.dispatchRowEvent("lastChildChanged")),s.childIndex!==e&&(s.childIndex=e,s.dispatchRowEvent("childIndexChanged"))}},ff=e=>{const t=e.childrenAfterSort,i=e.childrenAfterAggFilter,s=t?.length,o=i?.length;if(!s||!o)return null;const r=new Array(o),n=new Set;for(let e=0;e{const i=t.childrenAfterGroup;if(i)for(let t=0,s=i.length;t{this.beans.groupStage?.invalidateGroupCols(),this.refreshModel({step:"group",afterColumnsChanged:!0,keepRenderedRows:!0,animate:!this.gos.get("suppressAnimationFrame")})};this.addManagedEventListeners({newColumnsLoaded:i,columnRowGroupChanged:i,columnValueChanged:this.onValueChanged.bind(this),columnPivotChanged:()=>this.refreshModel({step:"pivot"}),columnPivotModeChanged:()=>this.refreshModel({step:"group"}),filterChanged:this.onFilterChanged.bind(this),sortChanged:this.onSortChanged.bind(this),stylesChanged:this.onGridStylesChanges.bind(this),gridReady:this.onGridReady.bind(this),rowExpansionStateChanged:this.onRowGroupOpened.bind(this)}),this.addPropertyListeners()}addPropertyListeners(){const{beans:e,stagesRefreshProps:t}=this,i=[e.groupStage,e.filterStage,e.pivotStage,e.aggStage,e.sortStage,e.filterAggStage,e.flattenStage].filter(e=>!!e);this.stages=i;for(let e=i.length-1;e>=0;--e){const s=i[e];for(const i of s.refreshProps)t.set(i,e)}this.addManagedPropertyListeners([...t.keys(),"rowData"],e=>{const t=e.changeSet?.properties;t&&this.onPropChange(t)}),this.addManagedPropertyListener("rowHeight",()=>this.resetRowHeights())}start(){this.started=!0,this.rowNodesCountReady?this.refreshModel({step:"group",rowDataUpdated:!0,newData:!0}):this.setInitialData()}setInitialData(){this.gos.get("rowData")&&this.onPropChange(["rowData"])}ensureRowHeightsValid(e,t,i,s){let o,r=!1;do{o=!1;const n=this.getRowIndexAtPixel(e),a=this.getRowIndexAtPixel(t),l=Math.max(n,i),d=Math.min(a,s);for(let e=l;e<=d;e++){const t=this.getRow(e);if(t.rowHeightEstimated){const e=Mi(this.beans,t);t.setRowHeight(e.height),o=!0,r=!0}}o&&this.setRowTopAndRowIndex()}while(o);return r}onPropChange(e){const{nodeManager:t,gos:i,beans:s}=this,o=s.groupStage;if(!t)return;const r=new Set(e),n=o?.onPropChange(r);let a;r.has("rowData")?a=i.get("rowData"):n&&(a=o?.extractData()),a&&!Array.isArray(a)&&(a=null,gi(1));const l={step:"nothing",changedProps:r};if(a){const e=!n&&!this.isEmpty()&&a.length>0&&i.exists("getRowId")&&!i.get("resetRowDataOnUpdate");this.refreshingData=!0,e?(l.keepRenderedRows=!0,l.animate=!i.get("suppressAnimationFrame"),l.changedRowNodes=new ec,t.setImmutableRowData(l,a)):(l.rowDataUpdated=!0,l.newData=!0,t.setNewRowData(a),this.rowNodesCountReady=!0)}const d=l.rowDataUpdated?"group":this.getRefreshedStage(e);d&&(l.step=d,this.refreshModel(l))}getRefreshedStage(e){const{stages:t,stagesRefreshProps:i}=this;if(!t)return null;const s=t.length;let o=s;for(let t=0,s=e.length;t{null==e?.id||t.has(e.id)||e.clearRowTopAndRowIndex()},o=e=>{s(e),s(e.detailNode),s(e.sibling);const t=e.childrenAfterGroup;if(!e.hasChildren()||!t)return;const r=-1==e.level;if(!(i&&!r&&!e.expanded))for(let e=0,i=t.length;e{let t=o[e];if(this.gos.get("groupHideOpenParents"))for(;t.expanded&&t.childrenAfterSort&&t.childrenAfterSort.length>0;)t=t.childrenAfterSort[0];return t.rowIndex},n=t.footerSvc;return n?n?.getTopDisplayIndex(s,e,o,r):r(e)}getTopLevelIndexFromDisplayedIndex(e){const{rootNode:t,rowsToDisplay:i}=this;if(!t||!i.length||i[0]===t)return e;let s=this.getRow(e);s.footer&&(s=s.sibling);let o=s.parent;for(;o&&o!==t;)s=o,o=s.parent;const r=t.childrenAfterSort?.indexOf(s)??-1;return r>=0?r:e}getRowBounds(e){const t=this.rowsToDisplay[e];return t?{rowTop:t.rowTop,rowHeight:t.rowHeight}:null}onRowGroupOpened(){this.refreshModel({step:"map",keepRenderedRows:!0,animate:Ii(this.gos)})}onFilterChanged({afterDataChange:e,columns:t}){if(!e){const e=0===t.length||t.some(e=>e.isPrimary())?"filter":"filter_aggregates";this.refreshModel({step:e,keepRenderedRows:!0,animate:Ii(this.gos)})}}onSortChanged(){this.refreshModel({step:"sort",keepRenderedRows:!0,animate:Ii(this.gos)})}getType(){return"clientSide"}onValueChanged(){this.refreshModel({step:this.beans.colModel.isPivotActive()?"pivot":"aggregate"})}createChangePath(e){const t=new rc(!1,this.rootNode);return t.active=e,t}isSuppressModelUpdateAfterUpdateTransaction(e){if(!this.gos.get("suppressModelUpdateAfterUpdateTransaction"))return!1;const{changedRowNodes:t,newData:i,rowDataUpdated:s}=e;return!(!t||i||!s)&&(!t.removals.length&&!t.adds.size)}reMapRows(){if(this.refreshingModel||this.refreshingData)return this.noKeepRenderedRows=!0,this.noKeepUndoRedoStack=!0,void(this.noAnimate=!0);this.refreshModel({step:"map",keepRenderedRows:!1,keepUndoRedoStack:!1,animate:!1})}refreshModel(e){const{nodeManager:t,eventSvc:i,started:s}=this;if(!t)return;const o=!!e.rowDataUpdated,r=e.changedPath??(e.changedPath=this.createChangePath(!e.newData&&o));if(s&&o&&i.dispatchEvent({type:"rowDataUpdated"}),this.deferRefresh(e))return this.setPendingRefreshFlags(e),void(this.rowDataUpdatedPending||(this.rowDataUpdatedPending=o));this.rowDataUpdatedPending&&(this.rowDataUpdatedPending=!1,e.step="group"),this.updateRefreshParams(e);let n=!1;this.refreshingModel=!0;try{this.executeRefresh(e,r,o),n=!0}finally{this.refreshingData=!1,this.refreshingModel=!1,n||this.setPendingRefreshFlags(e)}this.clearPendingRefreshFlags(),i.dispatchEvent({type:"modelUpdated",animate:e.animate,keepRenderedRows:e.keepRenderedRows,newData:e.newData,newPage:!1,keepUndoRedoStack:e.keepUndoRedoStack})}executeRefresh(e,t,i){const{beans:s}=this;switch(s.masterDetailSvc?.refreshModel(e),i&&"group"!==e.step&&s.colFilter?.refreshModel(),e.step){case"group":this.doGrouping(e);case"filter":this.doFilter(t);case"pivot":this.doPivot(t);case"aggregate":this.doAggregate(t);case"filter_aggregates":this.doFilterAggregates(t);case"sort":this.doSort(t,e.changedRowNodes);case"map":this.doRowsToDisplay()}const o=new Set;this.setRowTopAndRowIndex(o),this.clearRowTopAndRowIndex(t,o),this.updateRefreshParams(e)}deferRefresh(e){return!!this.refreshingModel||(!!this.beans.colModel.changeEventsDispatching||(this.isSuppressModelUpdateAfterUpdateTransaction(e)?(this.started&&(this.refreshingData=!1),!0):!this.started))}setPendingRefreshFlags(e){this.pendingNewData||(this.pendingNewData=!!e.newData),this.noKeepRenderedRows||(this.noKeepRenderedRows=!e.keepRenderedRows),this.noKeepUndoRedoStack||(this.noKeepUndoRedoStack=!e.keepUndoRedoStack),this.noAnimate||(this.noAnimate=!e.animate)}clearPendingRefreshFlags(){this.pendingNewData=!1,this.noKeepRenderedRows=!1,this.noKeepUndoRedoStack=!1,this.noAnimate=!1}updateRefreshParams(e){e.newData=this.pendingNewData||!!e.newData,e.keepRenderedRows=!this.noKeepRenderedRows&&!!e.keepRenderedRows,e.keepUndoRedoStack=!this.noKeepUndoRedoStack&&!!e.keepUndoRedoStack,e.animate=!this.noAnimate&&!!e.animate}isEmpty(){return!this.rootNode?._leafs?.length||!this.beans.colModel?.ready}isRowsToRender(){return this.rowsToDisplay.length>0}getOverlayType(){const{beans:e,gos:t}=this;if(this.rootNode?._leafs?.length){if(e.filterManager?.isAnyFilterPresent()&&0===this.getRowCount())return"noMatchingRows"}else if(this.rowCountReady||0==(t.get("rowData")?.length??0))return"noRows";return null}getNodesInRangeForSelection(e,t){let i=!1,s=!1;const o=[],r=as(this.gos);return this.forEachNodeAfterFilterAndSort(n=>{if(s)return;if(i&&(n===t||n===e)&&(s=!0,r&&n.group))return void Cf(o,n);if(!i){if(n!==t&&n!==e)return;i=!0,t===e&&(s=!0)}(!n.group||!r)&&o.push(n)}),o}getTopLevelNodes(){return this.rootNode?.childrenAfterGroup??null}getRow(e){return this.rowsToDisplay[e]}getFormulaRow(e){return this.formulaRows[e]}isRowPresent(e){return this.rowsToDisplay.indexOf(e)>=0}getRowIndexAtPixel(e){const t=this.rowsToDisplay,i=t.length;if(this.isEmpty()||0===i)return-1;let s=0,o=i-1;if(e<=0)return 0;if(t[o].rowTop<=e)return o;let r=-1,n=-1;for(;;){const i=Math.floor((s+o)/2),a=t[i];if(this.isRowInPixel(a,e))return i;a.rowTope&&(o=i-1);if(r===s&&n===o)return i;r=s,n=o}}isRowInPixel(e,t){const i=e.rowTop,s=i+e.rowHeight;return i<=t&&s>t}forEachLeafNode(e){const t=this.rootNode?._leafs;if(t)for(let i=0,s=t.length;ie.childrenAfterAggFilter)}forEachNodeAfterFilterAndSort(e,t=!1){this.depthFirstSearchRowNodes(e,t,e=>e.childrenAfterSort)}forEachPivotNode(e,t,i){const{colModel:s,rowGroupColsSvc:o}=this.beans;if(!s.isPivotMode())return;if(!o?.columns.length)return void e(this.rootNode,0);const r=i?"childrenAfterSort":"childrenAfterGroup";this.depthFirstSearchRowNodes(e,t,e=>e.leafGroup?null:e[r])}depthFirstSearchRowNodes(e,t=!1,i=e=>e.childrenAfterGroup,s=this.rootNode,o=0){let r=o;if(!s)return r;const n=s===this.rootNode;if(n||e(s,r++),s.hasChildren()&&!s.footer){const o=i(s);if(o){const a=this.beans.footerSvc;r=a?.addTotalRows(r,s,e,t,n,"top")??r;for(const s of o)r=this.depthFirstSearchRowNodes(e,t,i,s,r);return a?.addTotalRows(r,s,e,t,n,"bottom")??r}}return r}doAggregate(e){this.rootNode&&this.beans.aggStage?.execute(e)}doFilterAggregates(e){const t=this.rootNode,i=this.beans.filterAggStage;i?i.execute(e):t.childrenAfterAggFilter=t.childrenAfterFilter}doSort(e,t){const i=this.beans.sortStage;i?i.execute(e,t):e.forEachChangedNodeDepthFirst(e=>{e.childrenAfterSort=e.childrenAfterAggFilter.slice(0),mf(e)})}doGrouping(e){const t=this.rootNode;if(!t)return;const i=this.beans.groupStage,s=i?.execute(e);if(void 0===s){const e=t._leafs;t.childrenAfterGroup=e,t.updateHasChildren();const i=t.sibling;i&&(i.childrenAfterGroup=e)}(s||e.rowDataUpdated)&&this.beans.colFilter?.refreshModel(),!this.rowCountReady&&this.rowNodesCountReady&&(this.rowCountReady=!0,this.eventSvc.dispatchEventOnce({type:"rowCountReady"}))}doFilter(e){const t=this.beans.filterStage;t?t.execute(e):e.forEachChangedNodeDepthFirst(e=>{e.childrenAfterFilter=e.childrenAfterGroup,hf(e)},!0)}doPivot(e){this.beans.pivotStage?.execute(e)}getRowNode(e){const t=this.nodeManager?.getRowNode(e);return"object"==typeof t?t:this.beans.groupStage?.getNonLeaf(e)}batchUpdateRowData(e,t){if(!this.asyncTransactionsTimer){this.asyncTransactions=[];const e=this.gos.get("asyncTransactionWaitMillis");this.asyncTransactionsTimer=setTimeout(()=>this.executeBatchUpdateRowData(),e)}this.asyncTransactions.push({rowDataTransaction:e,callback:t})}flushAsyncTransactions(){const e=this.asyncTransactionsTimer;e&&(clearTimeout(e),this.executeBatchUpdateRowData())}executeBatchUpdateRowData(){const{nodeManager:e,beans:t,eventSvc:i,asyncTransactions:s}=this;if(!e)return;t.valueCache?.onDataChanged();const o=[],r=[],n=new ec,a=!this.gos.get("suppressAnimationFrame");for(const{rowDataTransaction:t,callback:i}of s??[]){this.rowNodesCountReady=!0,this.refreshingData=!0;const s=e.updateRowData(t,n,a);o.push(s),i&&r.push(i.bind(null,s))}this.commitTransactions(n,a),r.length>0&&setTimeout(()=>{for(let e=0,t=r.length;e0&&i.dispatchEvent({type:"asyncTransactionsFlushed",results:o}),this.asyncTransactionsTimer=0,this.asyncTransactions=null}updateRowData(e){const t=this.nodeManager;if(!t)return null;this.beans.valueCache?.onDataChanged(),this.rowNodesCountReady=!0;const i=new ec,s=!this.gos.get("suppressAnimationFrame");this.refreshingData=!0;const o=t.updateRowData(e,i,s);return this.commitTransactions(i,s),o}commitTransactions(e,t){this.refreshModel({step:"group",rowDataUpdated:!0,keepRenderedRows:!0,animate:t,changedRowNodes:e,changedPath:this.createChangePath(!0)})}doRowsToDisplay(){const{rootNode:e,beans:t}=this;if(t.formula?.active){const t=e?.childrenAfterSort??[];this.formulaRows=t,this.rowsToDisplay=t.filter(e=>!e.softFiltered);for(const e of this.rowsToDisplay)e.setUiLevel(0);return}const i=t.flattenStage;if(i)return void(this.rowsToDisplay=i.execute());const s=this.rootNode.childrenAfterSort??[];for(const e of s)e.setUiLevel(0);this.rowsToDisplay=s}onRowHeightChanged(){this.refreshModel({step:"map",keepRenderedRows:!0,keepUndoRedoStack:!0})}resetRowHeights(){const e=this.rootNode;if(!e)return;const t=this.resetRowHeightsForAllRowNodes();e.setRowHeight(e.rowHeight,!0);const i=e.sibling;i?.setRowHeight(i.rowHeight,!0),t&&this.onRowHeightChanged()}resetRowHeightsForAllRowNodes(){let e=!1;return this.forEachNode(t=>{t.setRowHeight(t.rowHeight,!0);const i=t.detailNode;i?.setRowHeight(i.rowHeight,!0);const s=t.sibling;s?.setRowHeight(s.rowHeight,!0),e=!0}),e}onGridStylesChanges(e){e.rowHeightChanged&&!this.beans.rowAutoHeight?.active&&this.resetRowHeights()}onGridReady(){this.started||this.setInitialData()}destroy(){super.destroy(),this.nodeManager=this.destroyBean(this.nodeManager),this.started=!1,this.rootNode=null,this.rowsToDisplay=[],this.asyncTransactions=null,this.stages=null,this.stagesRefreshProps.clear(),clearTimeout(this.asyncTransactionsTimer)}onRowHeightChangedDebounced(){this.onRowHeightChanged_debounced()}},class extends wt{constructor(){super(...arguments),this.beanName="sortStage",this.step="sort",this.refreshProps=["postSortRows","groupDisplayType","accentedSort"]}execute(e,t){const i=this.beans.sortSvc.getSortOptions(),s=i.length>0&&!!t&&this.gos.get("deltaSort"),{gos:o,colModel:r,rowGroupColsSvc:n,rowNodeSorter:a,rowRenderer:l,showRowGroupCols:d}=this.beans,c=o.get("groupMaintainOrder"),u=r.getCols().some(e=>e.isRowGroupActive()),h=n?.columns,g=r.isPivotMode(),p=o.getCallback("postSortRows");let m,f=!1;if(e?.forEachChangedNodeDepthFirst(o=>{const r=g&&o.leafGroup;let n=c&&u&&!o.leafGroup;n&&(m??(m=this.shouldSortContainsGroupCols(i)),n&&(n=!m));let l=null;if(n){let e=!1;if(h){const t=o.level+1;t{const r=t.childrenAfterSort,n=t.childrenAfterAggFilter;if(!n)return r&&r.length>0?r:[];const a=n.length;if(a<=1)return r?.length!==a||0!==a&&r[0]!==n[0]?n.slice():r;if(!r||a<=4)return e.doFullSortInPlace(n.slice(),o);const l=new Map,{updates:d,adds:c}=i,u=[];for(let e=0;ee.compareRowNodes(o,t,i)||~l.get(t)-~l.get(i)),h===a?u:gf(e,o,u,r,l,a))})(a,o,t,e,i):a.doFullSortInPlace(o.childrenAfterAggFilter.slice(),i));if(l||(l=o.childrenAfterAggFilter?.slice()??[]),f||(f=o.childrenAfterSort?.[0]!==l[0]),o.childrenAfterSort=l,mf(o),p){const e={nodes:o.childrenAfterSort};p(e)}}),f&&o.get("groupHideOpenParents")){const e=d?.columns;e?.length&&l.refreshCells({columns:e,force:!0})}}shouldSortContainsGroupCols(e){const t=e.length;if(!t)return!1;if(Li(this.gos)){for(let i=0;iEa(e)?.updateRowData(t))},applyTransactionAsync:function(e,t,i){e.frameworkOverrides.wrapIncoming(()=>Ea(e)?.batchUpdateRowData(t,i))},flushAsyncTransactions:function(e){e.frameworkOverrides.wrapIncoming(()=>Ea(e)?.flushAsyncTransactions())},getBestCostNodeSelection:function(e){return e.selectionSvc?.getBestCostNodeSelection()},resetRowHeights:ef,onRowHeightChanged:Jm},dependsOn:[tf,sf]};function bf({colAutosize:e,visibleCols:t},i,s){Array.isArray(i)?e?.autoSizeCols({colKeys:i,skipHeader:s,source:"api"}):e?.autoSizeCols({...i,colKeys:i.colIds??t.allCols,source:"api"})}function yf(e,t,i={}){const s=i.minWidth??e.getMinWidth();to&&(t=o),t}function Sf({ctrlsSvc:e,scrollVisibleSvc:t}){const i=e.getGridBodyCtrl(),s=i.isVerticalScrollShowing()?t.getScrollbarWidth():0;return Fe(i.eGridBody)-s}var xf="ag-animate-autosize";function Ff({ctrlsSvc:e,gos:t},i){if(!t.get("animateColumnResizing")||t.get("enableRtl")||!e.isAlive())return;const s=e.getGridBodyCtrl().eGridBody.classList;i?s.add(xf):s.remove(xf)}var Rf={moduleName:"ColumnAutoSize",version:ii,beans:[class extends wt{constructor(){super(...arguments),this.beanName="colAutosize",this.timesDelayed=0,this.shouldQueueResizeOperations=!1,this.resizeOperationQueue=[]}postConstruct(){const{gos:e}=this,t=e.get("autoSizeStrategy");if(t){let i=!1;const s=t.type;if("fitGridWidth"===s||"fitProvidedWidth"===s)i=!0;else if("fitCellContents"===s){this.addManagedEventListeners({firstDataRendered:()=>this.onFirstDataRendered(t)});const s=e.get("rowData");i=null!=s&&s.length>0&&yi(e)}i&&this.beans.colDelayRenderSvc?.hideColumns(s)}}autoSizeCols(e){const{eventSvc:t,visibleCols:i,colModel:s}=this.beans;Ff(this.beans,!0),this.innerAutoSizeCols(e).then(o=>{const r=e=>bo(t,Array.from(e),!0,"autosizeColumns");if(!e.scaleUpToFitGridWidth)return Ff(this.beans,!1),r(o);const n=Sf(this.beans),a=e.colKeys.filter(e=>!s.getCol(e)?.getColDef().suppressAutoSize&&!$s(e)&&!(e=>i.leftCols.some(t=>Js(t,e)))(e)&&!(e=>i.rightCols.some(t=>Js(t,e)))(e));this.sizeColumnsToFit(n,e.source,!0,{defaultMaxWidth:e.defaultMaxWidth,defaultMinWidth:e.defaultMinWidth,columnLimits:e.columnLimits?.map(e=>({...e,key:e.colId})),colKeys:a,onlyScaleUp:!0,animate:!1}),Ff(this.beans,!1),r(o)})}innerAutoSizeCols(e){return new Promise((t,i)=>{if(this.shouldQueueResizeOperations)return this.pushResizeOperation(()=>this.innerAutoSizeCols(e).then(t,i));const{colKeys:s,skipHeader:o,skipHeaderGroups:r,stopAtGroup:n,defaultMaxWidth:a,defaultMinWidth:l,columnLimits:d=[],source:c="api"}=e,{animationFrameSvc:u,renderStatus:h,colModel:g,autoWidthCalc:p,visibleCols:m}=this.beans;if(u?.flushAllFrames(),this.timesDelayed<5&&h&&(!h.areHeaderCellsRendered()||!h.areCellsRendered()))return this.timesDelayed++,void setTimeout(()=>{this.isAlive()&&this.innerAutoSizeCols(e).then(t,i)});this.timesDelayed=0;const f=new Set;let C=-1;const v=Object.fromEntries(d.map(({colId:e,...t})=>[e,t])),w=o??this.gos.get("skipHeaderOnAutoSize"),b=r??w;for(;0!==C;){C=0;const e=[];for(const t of s){if(!t||qs(t))continue;const i=g.getCol(t);if(!i||f.has(i)||i.getColDef().suppressAutoSize)continue;const s=p.getPreferredWidthForColumn(i,w);if(s>0){const e=v[i.colId]??{};e.minWidth??(e.minWidth=l),e.maxWidth??(e.maxWidth=a);const t=yf(i,s,e);i.setActualWidth(t,c),f.add(i),C++}e.push(i)}e.length&&m.refresh(c)}b||this.autoSizeColumnGroupsByColumns(s,c,n),t(f)})}autoSizeColumn(e,t,i){this.autoSizeCols({colKeys:[e],skipHeader:i,skipHeaderGroups:!0,source:t})}autoSizeColumnGroupsByColumns(e,t,i){const{colModel:s,ctrlsSvc:o}=this.beans,r=new Set,n=s.getColsForKeys(e);for(const e of n){let t=e.getParent();for(;t&&t!=i;)t.isPadding()||r.add(t),t=t.getParent()}let a;for(const e of r){for(const t of o.getHeaderRowContainerCtrls())if(a=t.getHeaderCtrlForColumn(e),a)break;a?.resizeLeafColumnsToFit(t)}}autoSizeAllColumns(e){this.shouldQueueResizeOperations?this.pushResizeOperation(()=>this.autoSizeAllColumns(e)):this.autoSizeCols({colKeys:this.beans.visibleCols.allCols,...e})}addColumnAutosizeListeners(e,t){const i=this.gos.get("skipHeaderOnAutoSize"),s=()=>{this.autoSizeColumn(t,"uiColumnResized",i)};e.addEventListener("dblclick",s);const o=new rl(e);return o.addEventListener("doubleTap",s),()=>{e.removeEventListener("dblclick",s),o.destroy()}}addColumnGroupResize(e,t,i){const s=this.gos.get("skipHeaderOnAutoSize"),o=()=>{const e=[],o=t.getDisplayedLeafColumns();for(const t of o)t.getColDef().suppressAutoSize||e.push(t.getColId());e.length>0&&this.autoSizeCols({colKeys:e,skipHeader:s,stopAtGroup:t,source:"uiColumnResized"}),i()};return e.addEventListener("dblclick",o),()=>e.removeEventListener("dblclick",o)}sizeColumnsToFitGridBody(e,t){if(!this.isAlive())return;const i=Sf(this.beans);i>0?this.sizeColumnsToFit(i,"sizeColumnsToFit",!1,e):void 0===t?window.setTimeout(()=>{this.sizeColumnsToFitGridBody(e,100)},0):100===t?window.setTimeout(()=>{this.sizeColumnsToFitGridBody(e,500)},100):500===t?window.setTimeout(()=>{this.sizeColumnsToFitGridBody(e,-1)},500):gi(29)}sizeColumnsToFit(e,t="sizeColumnsToFit",i,s){if(this.shouldQueueResizeOperations)return void this.pushResizeOperation(()=>this.sizeColumnsToFit(e,t,i,s));const{beans:o}=this,r=s?.animate??!0;r&&Ff(o,!0);const n={};for(const{key:e,...t}of s?.columnLimits??[])n["string"==typeof e?e:e.getColId()]=t;const a=o.visibleCols.allCols;if(e<=0||!a.length)return;const l=Ws(a);if(s?.onlyScaleUp&&l>e)return;if(e===l){if(a.every(e=>{if(e.colDef.suppressSizeToFit)return!0;const t=n?.[e.getId()],i=t?.minWidth??s?.defaultMinWidth,o=t?.maxWidth??s?.defaultMaxWidth,r=e.getActualWidth();return(null==i||r>=i)&&(null==o||r<=o)}))return}const d=[],c=[];for(const e of a){const t=s?.colKeys?.some(t=>Js(e,t))??!0;e.getColDef().suppressSizeToFit||!t?c.push(e):d.push(e)}const h=d.slice(0);let g=!1;const p=e=>{u(d,e),c.push(e)},m={};for(const e of d){s?.onlyScaleUp&&(m[e.getColId()]=e.getActualWidth()),e.resetActualWidth(t);const i=n?.[e.getId()],o=i?.minWidth??s?.defaultMinWidth??-1/0,r=i?.maxWidth??s?.defaultMaxWidth??1/0,a=e.getActualWidth(),l=Math.max(Math.min(a,r),o);l!=a&&e.setActualWidth(l,t,!0)}for(;!g;){g=!0;const i=e-Ws(c);if(i<=0)for(const e of d){const i=n?.[e.getId()]?.minWidth??s?.defaultMinWidth??e.minWidth;e.setActualWidth(i,t,!0)}else{const e=i/Ws(d);let o=i;for(let i=d.length-1;i>=0;i--){const r=d[i],a=r.getColId(),l=m[a],c=n?.[a],u=c?.minWidth??s?.defaultMinWidth??l,h=c?.maxWidth??s?.defaultMaxWidth,f=Math.max(u??-1/0,r.getMinWidth()),C=Math.min(h??1/0,r.getMaxWidth());let v=Math.round(r.getActualWidth()*e);vC?(v=C,p(r),g=!1):0===i&&(v=o),r.setActualWidth(v,t,!0),o-=v}}}for(const e of h)e.fireColumnWidthChangedEvent(t);const f=o.visibleCols;f.setLeftValues(t),f.updateBodyWidths(),i||(bo(this.eventSvc,h,!0,t),r&&Ff(o,!1))}applyAutosizeStrategy(){const{gos:e,colDelayRenderSvc:t}=this.beans,i=e.get("autoSizeStrategy");"fitGridWidth"!==i?.type&&"fitProvidedWidth"!==i?.type||setTimeout(()=>{if(!this.isAlive())return;const e=i.type;if("fitGridWidth"===e){const{columnLimits:e,defaultMinWidth:t,defaultMaxWidth:s}=i,o=e?.map(({colId:e,minWidth:t,maxWidth:i})=>({key:e,minWidth:t,maxWidth:i}));this.sizeColumnsToFitGridBody({defaultMinWidth:t,defaultMaxWidth:s,columnLimits:o})}else"fitProvidedWidth"===e&&this.sizeColumnsToFit(i.width,"sizeColumnsToFit");t?.revealColumns(e)})}onFirstDataRendered({colIds:e,...t}){setTimeout(()=>{if(!this.isAlive())return;const i="autosizeColumns";e?this.autoSizeCols({...t,source:i,colKeys:e}):this.autoSizeAllColumns({...t,source:i}),this.beans.colDelayRenderSvc?.revealColumns(t.type)})}processResizeOperations(){this.shouldQueueResizeOperations=!1;for(const e of this.resizeOperationQueue)e();this.resizeOperationQueue=[]}pushResizeOperation(e){this.resizeOperationQueue.push(e)}destroy(){this.resizeOperationQueue.length=0,super.destroy()}}],apiFunctions:{sizeColumnsToFit:function(e,t){"number"==typeof t?e.colAutosize?.sizeColumnsToFit(t,"api"):e.colAutosize?.sizeColumnsToFitGridBody(t)},autoSizeColumns:bf,autoSizeAllColumns:function(e,t){t&&"object"==typeof t?bf(e,t):e.colAutosize?.autoSizeAllColumns({source:"api",skipHeader:t})}},dependsOn:[Mc],css:[":where(.ag-ltr) :where(.ag-animate-autosize){.ag-cell,.ag-header-cell,.ag-header-group-cell{transition:width .2s ease-in-out,left .2s ease-in-out}}:where(.ag-rtl) :where(.ag-animate-autosize){.ag-cell,.ag-header-cell,.ag-header-group-cell{transition:width .2s ease-in-out,right .2s ease-in-out}}"]};var Pf=class extends wt{constructor(e,t){super(),this.columns=e,this.element=t,this.destroyManagedListeners=[],this.enableFeature=e=>{const{beans:t,gos:i,element:s,columns:o}=this,r=t.colHover;if(e??!!i.get("columnHoverHighlight"))this.destroyManagedListeners=this.addManagedElementListeners(s,{mouseover:r.setMouseOver.bind(r,o),mouseout:r.clearMouseOver.bind(r)});else{for(const e of this.destroyManagedListeners)e();this.destroyManagedListeners=[]}}}postConstruct(){this.addManagedPropertyListener("columnHoverHighlight",({currentValue:e})=>{this.enableFeature(e)}),this.enableFeature()}destroy(){super.destroy(),this.destroyManagedListeners=null}},Mf={moduleName:"ColumnHover",version:ii,beans:[class extends wt{constructor(){super(...arguments),this.beanName="colHover"}postConstruct(){this.addManagedPropertyListener("columnHoverHighlight",({currentValue:e})=>{e||this.clearMouseOver()})}setMouseOver(e){this.updateState(e)}clearMouseOver(){this.updateState(null)}isHovered(e){if(!this.gos.get("columnHoverHighlight"))return!1;const t=this.selectedColumns;return!!t&&t.indexOf(e)>=0}addHeaderColumnHoverListener(e,t,i){const s=()=>{const e=this.isHovered(i);t.toggleCss("ag-column-hover",e)};e.addManagedEventListeners({columnHoverChanged:s}),s()}onCellColumnHover(e,t){if(!t)return;const i=this.isHovered(e);t.toggleCss("ag-column-hover",i)}addHeaderFilterColumnHoverListener(e,t,i,s){this.createHoverFeature(e,[i],s);const o=()=>{const e=this.isHovered(i);t.toggleCss("ag-column-hover",e)};e.addManagedEventListeners({columnHoverChanged:o}),o()}createHoverFeature(e,t,i){e.createManagedBean(new Pf(t,i))}updateState(e){this.selectedColumns=e,this.eventSvc.dispatchEvent({type:"columnHoverChanged"})}}],apiFunctions:{isColumnHovered:function(e,t){return!!e.colHover?.isHovered(t)}}},Ef={moduleName:"SharedExport",version:ii,beans:[class extends wt{constructor(){super(...arguments),this.beanName="gridSerializer"}wireBeans(e){this.visibleCols=e.visibleCols,this.colModel=e.colModel,this.rowModel=e.rowModel,this.pinnedRowModel=e.pinnedRowModel}serialize(e,t={}){const{allColumns:i,columnKeys:s,skipRowGroups:o,exportRowNumbers:r}=t,n=this.getColumnsToExport({allColumns:i,skipRowGroups:o,columnKeys:s,exportRowNumbers:r});return[this.prepareSession(n),this.prependContent(t),this.exportColumnGroups(t,n),this.exportHeaders(t,n),this.processPinnedTopRows(t,n),this.processRows(t,n),this.processPinnedBottomRows(t,n),this.appendContent(t)].reduce((e,t)=>t(e),e).parse()}processRow(e,t,i,s){const o=t.shouldRowBeSkipped||(()=>!1),r=null!=t.rowPositions||!!t.onlySelected,n=this.gos.get("groupHideOpenParents")&&!r,a=this.colModel.isPivotMode()?s.leafGroup:!s.group,l=!!s.footer,d=1===s.allChildrenCount&&1===s.childrenAfterGroup?.length&&zi(this.gos,s);if(!a&&!l&&(t.skipRowGroups||d||n)||t.onlySelected&&!s.isSelected()||t.skipPinnedTop&&"top"===s.rowPinned||t.skipPinnedBottom&&"bottom"===s.rowPinned||s.stub)return;if(-1===s.level&&!a&&!l)return;if(o(ms(this.gos,{node:s})))return;const c=e.onNewBodyRow(s);if(i.forEach((e,t)=>{c.onColumn(e,t,s)}),t.getCustomContentBelowRow){const i=t.getCustomContentBelowRow(ms(this.gos,{node:s}));i&&e.addCustomContent(i)}}appendContent(e){return t=>{const i=e.appendContent;return i&&t.addCustomContent(i),t}}prependContent(e){return t=>{const i=e.prependContent;return i&&t.addCustomContent(i),t}}prepareSession(e){return t=>(t.prepare(e),t)}exportColumnGroups(e,t){return i=>{if(!e.skipColumnGroupHeaders){const s=new Ic,{colGroupSvc:o}=this.beans,r=o?o.createColumnGroups({columns:t,idCreator:s,pinned:null,isStandaloneStructure:!0}):t;this.recursivelyAddHeaderGroups(r,i,e.processGroupHeaderCallback)}return i}}exportHeaders(e,t){return i=>{if(!e.skipColumnHeaders){const e=i.onNewHeaderRow();t.forEach((t,i)=>{e.onColumn(t,i,void 0)})}return i}}processPinnedTopRows(e,t){return i=>{const s=this.processRow.bind(this,i,e,t);return e.rowPositions?e.rowPositions.filter(e=>"top"===e.rowPinned).sort((e,t)=>e.rowIndex-t.rowIndex).map(e=>this.pinnedRowModel?.getPinnedTopRow(e.rowIndex)).forEach(s):this.pinnedRowModel?.isManual()||this.pinnedRowModel?.forEachPinnedRow("top",s),i}}processRows(e,t){return i=>{const s=this.rowModel,o=yi(this.gos),r=Si(this.gos),n=!o&&e.onlySelected,a=this.processRow.bind(this,i,e,t),{exportedRows:l="filteredAndSorted"}=e;if(e.rowPositions)e.rowPositions.filter(e=>null==e.rowPinned).sort((e,t)=>e.rowIndex-t.rowIndex).map(e=>s.getRow(e.rowIndex)).forEach(a);else if(this.colModel.isPivotMode())o?s.forEachPivotNode(a,!0,"filteredAndSorted"===l):r?s.forEachNodeAfterFilterAndSort(a,!0):s.forEachNode(a);else if(e.onlySelectedAllPages||n){const e=this.beans.selectionSvc?.getSelectedNodes()??[];this.replicateSortedOrder(e),e.forEach(a)}else"all"===l?s.forEachNode(a):o||r?s.forEachNodeAfterFilterAndSort(a,!0):s.forEachNode(a);return i}}replicateSortedOrder(e){const{sortSvc:t,rowNodeSorter:i}=this.beans;if(!t||!i)return;const s=t.getSortOptions(),o=(e,t)=>null!=e.rowIndex&&null!=t.rowIndex?e.rowIndex-t.rowIndex:e.level===t.level?e.parent?.id===t.parent?.id?i.compareRowNodes(s,e,t)||(e.rowIndex??-1)-(t.rowIndex??-1):o(e.parent,t.parent):e.level>t.level?o(e.parent,t):o(e,t.parent);e.sort(o)}processPinnedBottomRows(e,t){return i=>{const s=this.processRow.bind(this,i,e,t);return e.rowPositions?e.rowPositions.filter(e=>"bottom"===e.rowPinned).sort((e,t)=>e.rowIndex-t.rowIndex).map(e=>this.pinnedRowModel?.getPinnedBottomRow(e.rowIndex)).forEach(s):this.pinnedRowModel?.isManual()||this.pinnedRowModel?.forEachPinnedRow("bottom",s),i}}getColumnsToExport(e){const{allColumns:t=!1,skipRowGroups:i=!1,exportRowNumbers:s=!1,columnKeys:o}=e,{colModel:r,gos:n,visibleCols:a}=this,l=r.isPivotMode(),d=e=>!Ks(e)&&(!$s(e)||s);if(o?.length)return r.getColsForKeys(o).filter(d);const c=n.get("treeData");let u=[];return u=t&&!l?r.getCols():a.allCols,u=u.filter(e=>d(e)&&(!(i&&!c)||!js(e))),u}recursivelyAddHeaderGroups(e,t,i){const s=[];for(const t of e){const e=t;if(e.getChildren)for(const t of e.getChildren()??[])s.push(t)}e.length>0&&Eo(e[0])&&this.doAddHeaderHeader(t,e,i),s&&s.length>0&&this.recursivelyAddHeaderGroups(s,t,i)}doAddHeaderHeader(e,t,i){const s=e.onNewHeaderGroupingRow();let o=0;for(const e of t){const t=e;let r;r=i?i(ms(this.gos,{columnGroup:t})):this.beans.colNames.getDisplayNameForColumnGroup(t,"header");const n=(t.isExpandable()?t.getLeafColumns():[]).reduce((e,t,i,s)=>{let o=l(e);return"open"===t.getColumnGroupShow()?o&&null==o[1]||(o=[i],e.push(o)):o&&null==o[1]&&(o[1]=i-1),i===s.length-1&&o&&null==o[1]&&(o[1]=i),e},[]);s.onColumn(t,r||"",o++,t.getLeafColumns().length-1,n)}}}]},Af=class extends wt{getFileName(e){const t=this.getDefaultFileExtension();return e?.length||(e=this.getDefaultFileName()),e.includes(".")?e:`${e}.${t}`}getData(e){return this.beans.gridSerializer.serialize(this.createSerializingSession(e),e)}getDefaultFileName(){return`export.${this.getDefaultFileExtension()}`}};function Tf(e,t){const i=document.defaultView||window;if(!i)return void gi(52);const s=document.createElement("a"),o=i.URL.createObjectURL(t);s.setAttribute("href",o),s.setAttribute("download",e),s.style.display="none",document.body.appendChild(s),s.dispatchEvent(new MouseEvent("click",{bubbles:!1,cancelable:!0,view:i})),s.remove(),i.setTimeout(()=>{i.URL.revokeObjectURL(o)},0)}var Df=class{constructor(e){this.valueFrom="data";const{colModel:t,rowGroupColsSvc:i,colNames:s,valueSvc:o,gos:r,processCellCallback:n,processHeaderCallback:a,processGroupHeaderCallback:l,processRowGroupCallback:d,valueFrom:c}=e;this.colModel=t,this.rowGroupColsSvc=i,this.colNames=s,this.valueSvc=o,this.gos=r,this.processCellCallback=n,this.processHeaderCallback=a,this.processGroupHeaderCallback=l,this.processRowGroupCallback=d,c&&(this.valueFrom=c)}prepare(e){}extractHeaderValue(e){return this.getHeaderName(this.processHeaderCallback,e)??""}extractRowCellValue(e){const{column:t,node:i,currentColumnIndex:s,accumulatedRowIndex:o,type:r,useRawFormula:n}=e,a=0===s&&_i(this.gos,i,this.colModel.isPivotMode());if(this.processRowGroupCallback&&(this.gos.get("treeData")||i.group)&&(t.isRowGroupDisplayed(i.rowGroupColumn?.getColId()??"")||a))return{value:this.processRowGroupCallback(ms(this.gos,{column:t,node:i}))??""};if(this.processCellCallback)return{value:this.processCellCallback(ms(this.gos,{accumulatedRowIndex:o,column:t,node:i,value:this.valueSvc.getValueForDisplay({column:t,node:i,from:this.valueFrom}).value,type:r,parseValue:e=>this.valueSvc.parseValue(t,i,e,this.valueSvc.getValue(t,i,this.valueFrom)),formatValue:e=>this.valueSvc.formatValue(t,i,e)??e}))??""};const l=this.gos.get("treeData"),d=this.valueSvc,c=-1===i.level&&i.footer,u=!0===t.colDef.showRowGroup&&(i.group||l);if(!c&&(a||u)){let e="",s=i;for(;s&&-1!==s.level;){const{value:i,valueFormatted:o}=d.getValueForDisplay({column:a?void 0:t,node:s,includeValueFormatted:!0,exporting:!0,from:this.valueFrom});e=` -> ${o??i??""}${e}`,s=s.parent}return{value:e,valueFormatted:e}}const{value:h,valueFormatted:g}=d.getValueForDisplay({column:t,node:i,includeValueFormatted:!0,exporting:!0,useRawFormula:n,from:this.valueFrom});return{value:h??"",valueFormatted:g}}getHeaderName(e,t){return e?e(ms(this.gos,{column:t})):this.colNames.getDisplayNameForColumn(t,"csv",!0)}},If=class extends Df{constructor(e){super(e),this.config=e,this.isFirstLine=!0,this.result="";const{suppressQuotes:t,columnSeparator:i}=e;this.suppressQuotes=t,this.columnSeparator=i}addCustomContent(e){e&&("string"==typeof e?(/^\s*\n/.test(e)||this.beginNewLine(),e=e.replace(/\r?\n/g,"\r\n"),this.result+=e):e.forEach(e=>{this.beginNewLine(),e.forEach((e,t)=>{0!==t&&(this.result+=this.columnSeparator),this.result+=this.putInQuotes(e.data.value||""),e.mergeAcross&&this.appendEmptyCells(e.mergeAcross)})}))}onNewHeaderGroupingRow(){return this.beginNewLine(),{onColumn:this.onNewHeaderGroupingRowColumn.bind(this)}}onNewHeaderGroupingRowColumn(e,t,i,s){0!=i&&(this.result+=this.columnSeparator),this.result+=this.putInQuotes(t),this.appendEmptyCells(s)}appendEmptyCells(e){for(let t=1;t<=e;t++)this.result+=this.columnSeparator+this.putInQuotes("")}onNewHeaderRow(){return this.beginNewLine(),{onColumn:this.onNewHeaderRowColumn.bind(this)}}onNewHeaderRowColumn(e,t){0!=t&&(this.result+=this.columnSeparator),this.result+=this.putInQuotes(this.extractHeaderValue(e))}onNewBodyRow(){return this.beginNewLine(),{onColumn:this.onNewBodyRowColumn.bind(this)}}onNewBodyRowColumn(e,t,i){0!=t&&(this.result+=this.columnSeparator);const s=this.extractRowCellValue({column:e,node:i,currentColumnIndex:t,accumulatedRowIndex:t,type:"csv",useRawFormula:!1});this.result+=this.putInQuotes(s.valueFormatted??s.value)}putInQuotes(e){if(this.suppressQuotes)return e;if(null==e)return'""';let t;"string"==typeof e?t=e:"function"==typeof e.toString?t=e.toString():(gi(53),t="");return'"'+t.replace(/"/g,'""')+'"'}parse(){return this.result}beginNewLine(){this.isFirstLine||(this.result+="\r\n"),this.isFirstLine=!1}};var kf,Lf={moduleName:"CsvExport",version:ii,beans:[class extends Af{constructor(){super(...arguments),this.beanName="csvCreator"}getMergedParams(e){const t=this.gos.get("defaultCsvExportParams");return Object.assign({},t,e)}export(e){if(this.isExportSuppressed())return void gi(51);const t=()=>{const t=this.getMergedParams(e),i=this.getData(t),s=new Blob(["\ufeff",i],{type:"text/plain"}),o=t.fileName,r="function"==typeof o?o(ms(this.gos,{})):o;Tf(this.getFileName(r),s)},{overlays:i}=this.beans;i?i.showExportOverlay(t):t()}exportDataAsCsv(e){this.export(e)}getDataAsCsv(e,t=!1){const i=t?Object.assign({},e):this.getMergedParams(e);return this.getData(i)}getDefaultFileExtension(){return"csv"}createSerializingSession(e){const{colModel:t,colNames:i,rowGroupColsSvc:s,valueSvc:o,gos:r}=this.beans,{processCellCallback:n,processHeaderCallback:a,processGroupHeaderCallback:l,processRowGroupCallback:d,suppressQuotes:c,columnSeparator:u,valueFrom:h}=e;return new If({colModel:t,colNames:i,valueSvc:o,gos:r,processCellCallback:n||void 0,processHeaderCallback:a||void 0,processGroupHeaderCallback:l||void 0,processRowGroupCallback:d||void 0,suppressQuotes:c||!1,columnSeparator:u||",",rowGroupColsSvc:s,valueFrom:h})}isExportSuppressed(){return this.gos.get("suppressCsvExport")}}],apiFunctions:{getDataAsCsv:function(e,t){return e.csvCreator?.getDataAsCsv(t)},exportDataAsCsv:function(e,t){e.csvCreator?.exportDataAsCsv(t)}},dependsOn:[Ef]},Of=class extends vt{constructor(e,t){super(),this.ctrl=e,t&&(this.beans=t)}postConstruct(){this.refreshTooltip()}setBrowserTooltip(e,t){const i="title",s=this.ctrl.getGui();s&&(null==e||""==e&&!t?s.removeAttribute(i):s.setAttribute(i,e))}updateTooltipText(){const{getTooltipValue:e}=this.ctrl;e&&(this.tooltip=e())}createTooltipFeatureIfNeeded(){if(null==this.tooltipManager){const e=this.beans.registry.createDynamicBean("tooltipStateManager",!0,this.ctrl,()=>this.tooltip);e&&(this.tooltipManager=this.createBean(e,this.beans.context))}}attemptToShowTooltip(){this.tooltipManager?.prepareToShowTooltip()}attemptToHideTooltip(){this.tooltipManager?.hideTooltip()}setTooltipAndRefresh(e){this.tooltip=e,this.refreshTooltip()}refreshTooltip(e){this.browserTooltips=this.beans.gos.get("enableBrowserTooltips"),this.updateTooltipText(),this.browserTooltips?(this.setBrowserTooltip(this.tooltip),this.tooltipManager=this.destroyBean(this.tooltipManager,this.beans.context)):(this.setBrowserTooltip(e?"":null,e),this.createTooltipFeatureIfNeeded())}destroy(){this.tooltipManager=this.destroyBean(this.tooltipManager,this.beans.context),super.destroy()}},Gf=!1,Nf=class extends vt{constructor(e,t){super(),this.tooltipCtrl=e,this.getTooltipValue=t,this.interactionEnabled=!1,this.isInteractingWithTooltip=!1,this.state=0,this.tooltipInstanceCount=0,this.tooltipMouseTrack=!1}wireBeans(e){this.popupSvc=e.popupSvc}postConstruct(){this.gos.get("tooltipInteraction")&&(this.interactionEnabled=!0),this.tooltipTrigger=this.getTooltipTrigger(),this.tooltipMouseTrack=this.gos.get("tooltipMouseTrack");const e=this.tooltipCtrl.getGui();0===this.tooltipTrigger&&this.addManagedListeners(e,{mouseenter:this.onMouseEnter.bind(this),mouseleave:this.onMouseLeave.bind(this)}),1===this.tooltipTrigger&&this.addManagedListeners(e,{focusin:this.onFocusIn.bind(this),focusout:this.onFocusOut.bind(this)}),this.addManagedListeners(e,{mousemove:this.onMouseMove.bind(this)}),this.interactionEnabled||this.addManagedListeners(e,{mousedown:this.onMouseDown.bind(this),keydown:this.onKeyDown.bind(this)})}getGridOptionsTooltipDelay(e){const t=this.gos.get(e);return Math.max(200,t)}getTooltipDelay(e){return this.tooltipCtrl[`getTooltip${e}DelayOverride`]?.()??this.getGridOptionsTooltipDelay(`tooltip${e}Delay`)}destroy(){this.setToDoNothing(),super.destroy()}getTooltipTrigger(){const e=this.gos.get("tooltipTrigger");return e&&"hover"!==e?1:0}onMouseEnter(e){this.interactionEnabled&&this.interactiveTooltipTimeoutId&&(this.unlockService(),this.startHideTimeout()),qr()||(Gf?this.showTooltipTimeoutId=window.setTimeout(()=>{this.prepareToShowTooltip(e)},100):this.prepareToShowTooltip(e))}onMouseMove(e){this.lastMouseEvent&&(this.lastMouseEvent=e),this.tooltipMouseTrack&&2===this.state&&this.tooltipComp&&this.positionTooltip()}onMouseDown(){this.setToDoNothing()}onMouseLeave(){this.interactionEnabled?this.lockService():this.setToDoNothing()}onFocusIn(){this.prepareToShowTooltip()}onFocusOut(e){const t=e.relatedTarget,i=this.tooltipCtrl.getGui(),s=this.tooltipComp?.getGui();this.isInteractingWithTooltip||i.contains(t)||this.interactionEnabled&&s?.contains(t)||this.setToDoNothing()}onKeyDown(){this.isInteractingWithTooltip&&(this.isInteractingWithTooltip=!1),this.setToDoNothing()}prepareToShowTooltip(e){if(0!=this.state||Gf)return;let t=0;e&&(t=this.isLastTooltipHiddenRecently()?this.getTooltipDelay("SwitchShow"):this.getTooltipDelay("Show")),this.lastMouseEvent=e||null,this.showTooltipTimeoutId=window.setTimeout(this.showTooltip.bind(this),t),this.state=1}isLastTooltipHiddenRecently(){return Date.now()-kf<1e3}setToDoNothing(e){e||2!==this.state||this.hideTooltip(),this.onBodyScrollEventCallback&&(this.onBodyScrollEventCallback(),this.onBodyScrollEventCallback=void 0),this.clearEventHandlers(),this.onDocumentKeyDownCallback&&(this.onDocumentKeyDownCallback(),this.onDocumentKeyDownCallback=void 0),this.clearTimeouts(),this.state=0,this.lastMouseEvent=null}showTooltip(){const e=this.getTooltipValue(),t=this.tooltipCtrl;if(!f(e)||t.shouldDisplayTooltip&&!t.shouldDisplayTooltip())return void this.setToDoNothing();const i=this.gos.addCommon({location:t.getLocation?.()??"UNKNOWN",value:e,hideTooltipCallback:()=>this.hideTooltip(!0),...t.getAdditionalParams?.()});this.state=2,this.tooltipInstanceCount++;const s=this.newTooltipComponentCallback.bind(this,this.tooltipInstanceCount);this.createTooltipComp(i,s)}hideTooltip(e){!e&&this.isInteractingWithTooltip||(this.tooltipComp&&(this.destroyTooltipComp(),kf=Date.now()),this.eventSvc.dispatchEvent({type:"tooltipHide",parentGui:this.tooltipCtrl.getGui()}),e&&(this.isInteractingWithTooltip=!1),this.setToDoNothing(!0))}newTooltipComponentCallback(e,t){if(2!==this.state||this.tooltipInstanceCount!==e)return void this.destroyBean(t);const i=t.getGui();this.tooltipComp=t,i.classList.contains("ag-tooltip")||i.classList.add("ag-tooltip-custom"),0===this.tooltipTrigger&&i.classList.add("ag-tooltip-animate"),this.interactionEnabled&&i.classList.add("ag-tooltip-interactive");const s=this.getLocaleTextFunc(),o=this.popupSvc?.addPopup({eChild:i,ariaLabel:s("ariaLabelTooltip","Tooltip")});if(o&&(this.tooltipPopupDestroyFunc=o.hideFunc),this.positionTooltip(),1===this.tooltipTrigger){const e=()=>this.setToDoNothing();[this.onBodyScrollEventCallback]=this.addManagedEventListeners({bodyScroll:e}),this.setEventHandlers(e)}this.interactionEnabled&&([this.tooltipMouseEnterListener,this.tooltipMouseLeaveListener]=this.addManagedElementListeners(i,{mouseenter:this.onTooltipMouseEnter.bind(this),mouseleave:this.onTooltipMouseLeave.bind(this)}),[this.onDocumentKeyDownCallback]=this.addManagedElementListeners(T(this.beans),{keydown:e=>{i.contains(e?.target)||this.onKeyDown()}}),1===this.tooltipTrigger&&([this.tooltipFocusInListener,this.tooltipFocusOutListener]=this.addManagedElementListeners(i,{focusin:this.onTooltipFocusIn.bind(this),focusout:this.onTooltipFocusOut.bind(this)}))),this.eventSvc.dispatchEvent({type:"tooltipShow",tooltipGui:i,parentGui:this.tooltipCtrl.getGui()}),this.startHideTimeout()}onTooltipMouseEnter(){this.isInteractingWithTooltip=!0,this.unlockService()}onTooltipMouseLeave(){this.isTooltipFocused()||(this.isInteractingWithTooltip=!1,this.lockService())}onTooltipFocusIn(){this.isInteractingWithTooltip=!0}isTooltipFocused(){const e=this.tooltipComp?.getGui(),t=A(this.beans);return!!e&&e.contains(t)}onTooltipFocusOut(e){const t=this.tooltipCtrl.getGui();this.isTooltipFocused()||(this.isInteractingWithTooltip=!1,t.contains(e.relatedTarget)?this.startHideTimeout():this.hideTooltip())}positionTooltip(){const e={type:"tooltip",ePopup:this.tooltipComp.getGui(),nudgeY:18,skipObserver:this.tooltipMouseTrack};this.lastMouseEvent?this.popupSvc?.positionPopupUnderMouseEvent({...e,mouseEvent:this.lastMouseEvent}):this.popupSvc?.positionPopupByComponent({...e,eventSource:this.tooltipCtrl.getGui(),position:"under",keepWithinBounds:!0,nudgeY:5})}destroyTooltipComp(){this.tooltipComp.getGui().classList.add("ag-tooltip-hiding");const e=this.tooltipPopupDestroyFunc,t=this.tooltipComp,i=0===this.tooltipTrigger?1e3:0;window.setTimeout(()=>{e(),this.destroyBean(t)},i),this.clearTooltipListeners(),this.tooltipPopupDestroyFunc=void 0,this.tooltipComp=void 0}clearTooltipListeners(){for(const e of[this.tooltipMouseEnterListener,this.tooltipMouseLeaveListener,this.tooltipFocusInListener,this.tooltipFocusOutListener])e&&e();this.tooltipMouseEnterListener=this.tooltipMouseLeaveListener=this.tooltipFocusInListener=this.tooltipFocusOutListener=null}lockService(){Gf=!0,this.interactiveTooltipTimeoutId=window.setTimeout(()=>{this.unlockService(),this.setToDoNothing()},100)}unlockService(){Gf=!1,this.clearInteractiveTimeout()}startHideTimeout(){this.clearHideTimeout(),this.hideTooltipTimeoutId=window.setTimeout(this.hideTooltip.bind(this),this.getTooltipDelay("Hide"))}clearShowTimeout(){this.showTooltipTimeoutId&&(window.clearTimeout(this.showTooltipTimeoutId),this.showTooltipTimeoutId=void 0)}clearHideTimeout(){this.hideTooltipTimeoutId&&(window.clearTimeout(this.hideTooltipTimeoutId),this.hideTooltipTimeoutId=void 0)}clearInteractiveTimeout(){this.interactiveTooltipTimeoutId&&(window.clearTimeout(this.interactiveTooltipTimeoutId),this.interactiveTooltipTimeoutId=void 0)}clearTimeouts(){this.clearShowTimeout(),this.clearHideTimeout(),this.clearInteractiveTimeout()}},Bf=class extends ma{constructor(){super({tag:"div",cls:"ag-tooltip"})}init(e){const{value:t}=e,i=this.getGui();i.textContent=F(t);const s=e.location.replace(/([a-z])([A-Z0-9])/g,"$1-$2").toLowerCase();i.classList.add(`ag-${s}-tooltip`)}},Vf=0,_f=class extends vt{constructor(){super(...arguments),this.beanName="popupSvc",this.popupList=[]}postConstruct(){this.addManagedEventListeners({stylesChanged:this.handleThemeChange.bind(this)})}getPopupParent(){const e=this.gos.get("popupParent");return e||this.getDefaultPopupParent()}positionPopupUnderMouseEvent(e){const{ePopup:t,nudgeX:i,nudgeY:s,skipObserver:o}=e;this.positionPopup({ePopup:t,nudgeX:i,nudgeY:s,keepWithinBounds:!0,skipObserver:o,updatePosition:()=>this.calculatePointerAlign(e.mouseEvent),postProcessCallback:()=>this.callPostProcessPopup(e.additionalParams,e.type,e.ePopup,null,e.mouseEvent)})}calculatePointerAlign(e){const t=this.getParentRect();return{x:e.clientX-t.left,y:e.clientY-t.top}}positionPopupByComponent(e){const{ePopup:t,nudgeX:i,nudgeY:s,keepWithinBounds:o,eventSource:r,alignSide:n="left",position:a="over",type:l}=e,d=r.getBoundingClientRect(),c=this.getParentRect();this.setAlignedTo(r,t);this.positionPopup({ePopup:t,nudgeX:i,nudgeY:s,keepWithinBounds:o,updatePosition:()=>{let i,o=d.left-c.left;if("right"===n&&(o-=t.offsetWidth-d.width),"over"===a)i=d.top-c.top,this.setAlignedStyles(t,"over");else{this.setAlignedStyles(t,"under");i="under"===this.shouldRenderUnderOrAbove(t,d,c,e.nudgeY||0)?d.top-c.top+d.height:d.top-t.offsetHeight-2*(s||0)-c.top}return{x:o,y:i}},postProcessCallback:()=>this.callPostProcessPopup(e.additionalParams,l,t,r,null)})}positionPopupForMenu(e){const{eventSource:t,ePopup:i,event:s}=e,o=t.getBoundingClientRect(),r=this.getParentRect();this.setAlignedTo(t,i);let n=!1;this.positionPopup({ePopup:i,keepWithinBounds:!0,updatePosition:()=>{const e=this.keepXYWithinBounds(i,o.top-r.top,0),t=i.clientWidth>0?i.clientWidth:200;n||(i.style.minWidth=`${t}px`,n=!0);const s=r.right-r.left-t;let a;return this.gos.get("enableRtl")?(a=d(),a<0&&(a=l(),this.setAlignedStyles(i,"left")),a>s&&(a=0,this.setAlignedStyles(i,"right"))):(a=l(),a>s&&(a=d(),this.setAlignedStyles(i,"right")),a<0&&(a=0,this.setAlignedStyles(i,"left"))),{x:a,y:e};function l(){return o.right-r.left-2}function d(){return o.left-r.left-t}},postProcessCallback:()=>this.callPostProcessPopup(e.additionalParams,"subMenu",i,t,s instanceof MouseEvent?s:void 0)})}shouldRenderUnderOrAbove(e,t,i,s){const o=i.bottom-t.bottom,r=t.top-i.top,n=e.offsetHeight+s;return o>n?"under":r>n||r>o?"above":"under"}setAlignedStyles(e,t){const i=this.getPopupIndex(e);if(-1===i)return;const s=this.popupList[i],{alignedToElement:o}=s;if(!o)return;const r=["right","left","over","above","under"];for(const t of r)o.classList.remove(`ag-has-popup-positioned-${t}`),e.classList.remove(`ag-popup-positioned-${t}`);t&&(o.classList.add(`ag-has-popup-positioned-${t}`),e.classList.add(`ag-popup-positioned-${t}`))}setAlignedTo(e,t){const i=this.getPopupIndex(t);if(-1!==i){this.popupList[i].alignedToElement=e}}positionPopup(e){const{ePopup:t,keepWithinBounds:i,nudgeX:s,nudgeY:o,skipObserver:r,updatePosition:n}=e,a={width:0,height:0},l=(r=!1)=>{let{x:l,y:d}=n();r&&t.clientWidth===a.width&&t.clientHeight===a.height||(a.width=t.clientWidth,a.height=t.clientHeight,s&&(l+=s),o&&(d+=o),i&&(l=this.keepXYWithinBounds(t,l,1),d=this.keepXYWithinBounds(t,d,0)),t.style.left=`${l}px`,t.style.top=`${d}px`,e.postProcessCallback&&e.postProcessCallback())};if(l(),!r){const e=qe(this.beans,t,()=>l(!0));setTimeout(()=>e(),200)}}getParentRect(){const e=T(this.beans);let t=this.getPopupParent();return t===e.body?t=e.documentElement:"static"===getComputedStyle(t).position&&(t=t.offsetParent),Me(t)}keepXYWithinBounds(e,t,i){const s=0===i,o=s?"clientHeight":"clientWidth",r=s?"top":"left",n=s?"height":"width",a=s?"scrollTop":"scrollLeft",l=T(this.beans),d=l.documentElement,c=this.getPopupParent(),u=e.getBoundingClientRect(),h=c.getBoundingClientRect(),g=l.documentElement.getBoundingClientRect(),p=c===l.body,m=Math.ceil(u[n]);let f=p?(s?Re:Pe)(d)+d[a]:c[o];p&&(f-=Math.abs(g[r]-h[r]));const C=f-m;return Math.min(Math.max(t,0),Math.max(C,0))}addPopup(e){const{eChild:t,ariaLabel:i,ariaOwns:s,alwaysOnTop:o,positionCallback:r,anchorToElement:n}=e,a=this.getPopupIndex(t);if(-1!==a){return{hideFunc:this.popupList[a].hideFunc}}this.initialisePopupPosition(t);const l=this.createPopupWrapper(t,!!o,i,s),d=this.addEventListenersToPopup({...e,wrapperEl:l});return r&&r(),this.addPopupToPopupList(t,l,d,n),{hideFunc:d}}initialisePopupPosition(e){const t=this.getPopupParent().getBoundingClientRect();f(e.style.top)||(e.style.top=-1*t.top+"px"),f(e.style.left)||(e.style.left=-1*t.left+"px")}createPopupWrapper(e,t,i,s){const o=this.getPopupParent(),{environment:r,gos:n}=this.beans,a=Je({tag:"div"});return r.applyThemeClasses(a),a.classList.add("ag-popup"),e.classList.add(n.get("enableRtl")?"ag-rtl":"ag-ltr","ag-popup-child"),e.hasAttribute("role")||B(e,"dialog"),i?_(e,i):s&&(e.id||(e.id=`popup-component-${Vf}`),ce(s,e.id)),a.appendChild(e),o.appendChild(a),t?this.setAlwaysOnTop(e,!0):this.bringPopupToFront(e),a}addEventListenersToPopup(e){const t=this.beans,i=T(t),{wrapperEl:s,eChild:o,closedCallback:r,afterGuiAttached:n,closeOnEsc:a,modal:l,ariaOwns:d}=e;let c=!1;const u=e=>{if(!s.contains(A(t)))return;e.key!==To.ESCAPE||this.isStopPropagation(e)||p({keyboardEvent:e})},h=e=>p({mouseEvent:e}),g=e=>p({touchEvent:e}),p=(e={})=>{const{mouseEvent:t,touchEvent:n,keyboardEvent:a,forceHide:l}=e;(l||!this.isEventFromCurrentPopup({mouseEvent:t,touchEvent:n},o)&&!c)&&(c=!0,s.remove(),i.removeEventListener("keydown",u),i.removeEventListener("mousedown",h),i.removeEventListener("touchstart",g),i.removeEventListener("contextmenu",h),this.eventSvc.removeListener("dragStarted",h),r&&r(t||n||a),this.removePopupFromPopupList(o,d))};return n&&n({hidePopup:p}),window.setTimeout(()=>{a&&i.addEventListener("keydown",u),l&&(i.addEventListener("mousedown",h),this.eventSvc.addListener("dragStarted",h),i.addEventListener("touchstart",g),i.addEventListener("contextmenu",h))},0),p}addPopupToPopupList(e,t,i,s){this.popupList.push({element:e,wrapper:t,hideFunc:i,instanceId:Vf,isAnchored:!!s}),s&&this.setPopupPositionRelatedToElement(e,s),Vf+=1}getPopupIndex(e){return this.popupList.findIndex(t=>t.element===e)}setPopupPositionRelatedToElement(e,t){const i=this.getPopupIndex(e);if(-1===i)return;const s=this.popupList[i];if(s.stopAnchoringPromise&&s.stopAnchoringPromise.then(e=>e&&e()),s.stopAnchoringPromise=void 0,s.isAnchored=!1,!t)return;const o=this.keepPopupPositionedRelativeTo({element:t,ePopup:e,hidePopup:s.hideFunc});return s.stopAnchoringPromise=o,s.isAnchored=!0,o}removePopupFromPopupList(e,t){this.setAlignedStyles(e,null),this.setPopupPositionRelatedToElement(e,null),t&&ce(t,null),this.popupList=this.popupList.filter(t=>t.element!==e)}keepPopupPositionedRelativeTo(e){const t=this.getPopupParent(),i=t.getBoundingClientRect(),{element:s,ePopup:o}=e,r=s.getBoundingClientRect(),n=e=>Number.parseInt(e.substring(0,e.length-1),10),a=(e,t)=>{const s=i[e]-r[e],a=n(o.style[e]);return{initialDiff:s,lastDiff:s,initial:a,last:a,direction:t}},l=a("top",0),d=a("left",1),c=this.beans.frameworkOverrides;return new ko(i=>{c.wrapIncoming(()=>{var r,a;(r=()=>{const i=t.getBoundingClientRect(),r=s.getBoundingClientRect();if(0==r.top&&0==r.left&&0==r.height&&0==r.width)return void e.hidePopup();const a=(e,t)=>{const s=n(o.style[t]);e.last!==s&&(e.initial=s,e.last=s);const a=i[t]-r[t];if(a!=e.lastDiff){const i=this.keepXYWithinBounds(o,e.initial+e.initialDiff-a,e.direction);o.style[t]=`${i}px`,e.last=i}e.lastDiff=a};a(l,"top"),a(d,"left")},a=200,new ko(e=>{e(window.setInterval(r,a))})).then(e=>{i(()=>{null!=e&&window.clearInterval(e)})})},"popupPositioning")})}isEventFromCurrentPopup(e,t){const{mouseEvent:i,touchEvent:s}=e,o=i||s;if(!o)return!1;const r=this.getPopupIndex(t);if(-1===r)return!1;for(let e=r;ee.element)}hasAnchoredPopup(){return this.popupList.some(e=>e.isAnchored)}isStopPropagation(e){return gn(e)}}]};function zf(e){return"whenTruncated"===e.get("tooltipShowMode")}function Wf(e,t){return zf(e)?Ve(t):void 0}var Uf=(e,t)=>{const i=e;return"function"==typeof i.getTranslatedMessage?i.getTranslatedMessage(t):e.message},jf=(e,t,i)=>{const{editModelSvc:s}=e,o=s?.getCellValidationModel()?.getCellValidation(t)?.errorMessages,r=s?.getRowValidationModel().getRowValidation(t)?.errorMessages,n=o||r;return n?.length?n.join(i("tooltipValidationErrorSeparator",". ")):void 0},Kf=(e,t,i)=>{const{editSvc:s}=e,{column:o}=t,r=((e,t)=>{if(zf(e.gos)){if(t.isCellRenderer()){const e=t.column.getColDef();if(!e.showRowGroup&&"agGroupCellRenderer"!==e.cellRenderer)return;return Ve(()=>{const e=t.eGui;return e.querySelector(".ag-group-value")||e.querySelector(".ag-cell-value")||e})}return Ve(()=>{const e=t.eGui;return 0===e.children.length?e:e.querySelector(".ag-cell-value")})}})(e,t),n=()=>!s?.isEditing(t)&&(!r||!!o.isTooltipEnabled()&&r());return{shouldDisplayDefault:n,shouldDisplayColumnTooltip:n,shouldDisplayCustomTooltip:i??n}},$f={moduleName:"Tooltip",version:ii,beans:[class extends wt{constructor(){super(...arguments),this.beanName="tooltipSvc"}setupHeaderTooltip(e,t,i,s){e&&t.destroyBean(e);const o=this.gos,r=zf(o),{column:n,eGui:a}=t,l=n.getColDef();s||!r||l.headerComponent||(s=Ve(()=>a.querySelector(".ag-header-cell-text")));const d="header",c=this.beans.colNames.getDisplayNameForColumn(n,"header",!0),u=i??c,h={getGui:()=>a,getLocation:()=>d,getTooltipValue:()=>i??l?.headerTooltipValueGetter?.(ms(o,{location:d,colDef:l,column:n,value:u,valueFormatted:c}))??l?.headerTooltip,shouldDisplayTooltip:s,getAdditionalParams:()=>({column:n,colDef:n.getColDef()})};let g=this.createTooltipFeature(h);return g&&(g=t.createBean(g),t.setRefreshFunction("tooltip",()=>g.refreshTooltip())),g}setupHeaderGroupTooltip(e,t,i,s){e&&t.destroyBean(e);const o=this.gos,r=zf(o),{column:n,eGui:a}=t,l=n.getColGroupDef();s||!r||l?.headerGroupComponent||(s=Ve(()=>a.querySelector(".ag-header-group-text")));const d="headerGroup",c=this.beans.colNames.getDisplayNameForColumnGroup(n,"header"),u=i??c,h={getGui:()=>a,getLocation:()=>d,getTooltipValue:()=>i??l?.headerTooltipValueGetter?.(ms(o,{location:d,colDef:l,column:n,value:u,valueFormatted:c}))??l?.headerTooltip,shouldDisplayTooltip:s,getAdditionalParams:()=>{const e={column:n};return l&&(e.colDef=l),e}},g=this.createTooltipFeature(h);return g?t.createBean(g):g}enableCellTooltipFeature(e,t,i){const{beans:s}=this,{column:o,rowNode:r}=e,n=Kf(s,e,i),a=this.getLocaleTextFunc();let l=null;const d=()=>(l=(({beans:e,ctrl:t,value:i,displayFunctions:s,translate:o})=>{const{editSvc:r,formula:n,gos:a}=e,{column:l,rowNode:d}=t;if(n?.active&&l.isAllowFormula()){const e=n.getFormulaError(l,d);if(e)return{value:Uf(e,o),location:"cellFormula",shouldDisplay:()=>!!n?.getFormulaError(l,d)}}if(!r?.isEditing(t)){const i=jf(e,t,o);if(i)return{value:i,location:"cellEditor",shouldDisplay:()=>!r?.isEditing(t)&&!!jf(e,t,o)}}const{shouldDisplayCustomTooltip:c,shouldDisplayColumnTooltip:u}=s;if(null!=i)return{value:i,location:"cell",shouldDisplay:c};const h=l.getColDef(),g=d.data;if(h.tooltipField&&f(g))return{value:Jc(g,h.tooltipField,l.isTooltipFieldContainsDots()),location:"cell",shouldDisplay:u};const p=h.tooltipValueGetter;return p?{value:p(ms(a,{location:"cell",colDef:l.getColDef(),column:l,rowIndex:t.cellPosition.rowIndex,node:d,data:d.data,value:t.value,valueFormatted:t.valueFormatted})),location:"cell",shouldDisplay:u}:null})({beans:s,ctrl:e,value:t,displayFunctions:n,translate:a}),l),c={getGui:()=>e.eGui,getLocation:()=>l?.location??"cell",getTooltipValue:()=>d()?.value,shouldDisplayTooltip:()=>{const e=l??d();return!!e&&(!e.shouldDisplay||e.shouldDisplay())},getAdditionalParams:()=>({column:o,colDef:o.getColDef(),rowIndex:e.cellPosition.rowIndex,node:r,data:r.data,valueFormatted:e.valueFormatted})};return this.createTooltipFeature(c,s)}setupFullWidthRowTooltip(e,t,i,s){const o={getGui:()=>t.getFullWidthElement(),getTooltipValue:()=>i,getLocation:()=>"fullWidthRow",shouldDisplayTooltip:s},r=this.beans,n=r.context;e&&t.destroyBean(e,n);const a=this.createTooltipFeature(o,r);if(a)return t.createBean(a,n)}setupCellEditorTooltip(e,t){const{beans:i}=this,{context:s}=i,o=t.getValidationElement?.(!0)||!t.isPopup?.()&&e.eGui;if(!o)return;const r={getGui:()=>o,getTooltipValue:()=>jf(i,e,this.getLocaleTextFunc()),getLocation:()=>"cellEditor",shouldDisplayTooltip:()=>{const{editModelSvc:e}=i,t=e?.getRowValidationModel()?.getRowValidationMap(),s=e?.getCellValidationModel()?.getCellValidationMap(),o=!!t&&t.size>0,r=!!s&&s.size>0;return o||r}},n=this.createTooltipFeature(r,i);return n?e.createBean(n,s):void 0}initCol(e){const{colDef:t}=e;e.tooltipEnabled=f(t.tooltipField)||f(t.tooltipValueGetter)||f(t.tooltipComponent)}createTooltipFeature(e,t){return this.beans.registry.createDynamicBean("tooltipFeature",!1,e,t)}}],dynamicBeans:{tooltipFeature:Of,highlightTooltipFeature:class extends Of{constructor(e,t,i){super(e,i),this.highlightTracker=t,this.onHighlight=this.onHighlight.bind(this)}postConstruct(){super.postConstruct(),this.wireHighlightListeners()}wireHighlightListeners(){this.addManagedPropertyListener("tooltipTrigger",({currentValue:e})=>{this.setTooltipMode(e)}),this.setTooltipMode(this.gos.get("tooltipTrigger")),this.highlightTracker.addEventListener("itemHighlighted",this.onHighlight)}onHighlight(e){1===this.tooltipMode&&(e.highlighted?this.attemptToShowTooltip():this.attemptToHideTooltip())}setTooltipMode(e="focus"){this.tooltipMode="focus"===e?1:0}destroy(){this.highlightTracker.removeEventListener("itemHighlighted",this.onHighlight),super.destroy()}},tooltipStateManager:class extends Nf{createTooltipComp(e,t){const i=function(e,t){return e.getCompDetails(t.colDef,rr,"agTooltipComponent",t,!0)}(this.beans.userCompFactory,e);i?.newAgStackInstance().then(t)}setEventHandlers(e){[this.onColumnMovedEventCallback]=this.addManagedEventListeners({columnMoved:e})}clearEventHandlers(){this.onColumnMovedEventCallback?.(),this.onColumnMovedEventCallback=void 0}}},userComponents:{agTooltipComponent:Bf},dependsOn:[Hf],css:[".ag-tooltip{background-color:var(--ag-tooltip-background-color);border:var(--ag-tooltip-border);border-radius:var(--ag-border-radius);color:var(--ag-tooltip-text-color);padding:var(--ag-widget-container-vertical-padding) var(--ag-widget-container-horizontal-padding);position:absolute;white-space:normal;z-index:99999;&:where(.ag-cell-editor-tooltip),&:where(.ag-cell-formula-tooltip){background-color:var(--ag-tooltip-error-background-color);border:var(--ag-tooltip-error-border);color:var(--ag-tooltip-error-text-color);font-weight:500}}.ag-tooltip-custom{position:absolute;z-index:99999}.ag-tooltip-custom:where(:not(.ag-tooltip-interactive)),.ag-tooltip:where(:not(.ag-tooltip-interactive)){pointer-events:none}.ag-tooltip-animate{transition:opacity 1s;&:where(.ag-tooltip-hiding){opacity:0}}"]},qf=class{constructor(e){this.cellValueChanges=e}},Yf=class extends qf{constructor(e,t,i,s){super(e),this.initialRange=t,this.finalRange=i,this.ranges=s}},Xf=class{constructor(e){this.actionStack=[],this.maxStackSize=e||10,this.actionStack=new Array(this.maxStackSize)}pop(){return this.actionStack.pop()}push(e){e.cellValueChanges&&e.cellValueChanges.length>0&&(this.actionStack.length===this.maxStackSize&&this.actionStack.shift(),this.actionStack.push(e))}clear(){this.actionStack=[]}getCurrentStackSize(){return this.actionStack.length}},Zf={tag:"div",cls:"ag-cell-wrapper ag-cell-edit-wrapper ag-checkbox-edit",children:[{tag:"ag-checkbox",ref:"eEditor",role:"presentation"}]},Qf=class extends Fa{constructor(e,t="ag-text-field",i="text"){super(e,t,i)}postConstruct(){super.postConstruct(),this.config.allowedCharPattern&&this.preventDisallowedCharacters()}setValue(e,t){const i=this.eInput;return i.value!==e&&(i.value=f(e)?e:""),super.setValue(e,t)}setStartValue(e){this.setValue(e,!0)}setCustomValidity(e){const t=this.eInput,i=e.length>0;t.setCustomValidity(e),i&&t.reportValidity(),U(t,i)}preventDisallowedCharacters(){const e=new RegExp(`[${this.config.allowedCharPattern}]`);this.addManagedListeners(this.eInput,{keydown:t=>{Nl(t)&&t.key&&!e.test(t.key)&&t.preventDefault()},paste:t=>{const i=t.clipboardData?.getData("text");i?.split("").some(t=>!e.test(t))&&t.preventDefault()}})}},Jf={selector:"AG-INPUT-TEXT-FIELD",component:Qf},eC=class extends Qf{constructor(e){super(e,"ag-date-field","date")}postConstruct(){super.postConstruct();const e=jr();this.addManagedListeners(this.eInput,{wheel:this.onWheel.bind(this),mousedown:()=>{this.isDisabled()||e||this.eInput.focus()}}),this.eInput.step="any"}onWheel(e){A(this.beans)===this.eInput&&e.preventDefault()}setMin(e){const t=e instanceof Date?Kc(e??null,!!this.includeTime)??void 0:e;return this.min===t||(this.min=t,Ke(this.eInput,"min",t)),this}setMax(e){const t=e instanceof Date?Kc(e??null,!!this.includeTime)??void 0:e;return this.max===t||(this.max=t,Ke(this.eInput,"max",t)),this}setStep(e){return this.step===e||(this.step=e,Ke(this.eInput,"step",e)),this}setIncludeTime(e){return this.includeTime===e||(this.includeTime=e,super.setInputType(e?"datetime-local":"date"),e&&this.setStep(1)),this}getDate(){if(this.eInput.validity.valid)return Qc(this.getValue())??void 0}setDate(e,t){this.setValue(Kc(e??null,this.includeTime),t)}},tC={selector:"AG-INPUT-DATE-FIELD",component:eC},iC=class extends fa{constructor(e){super(),this.cellEditorInput=e,this.eEditor=Lo}initialiseEditor(e){const{cellEditorInput:t}=this;this.setTemplate({tag:"div",cls:"ag-cell-edit-wrapper",children:[t.getTemplate()]},t.getAgComponents());const{eEditor:i}=this,{cellStartedEdit:s,eventKey:o,suppressPreventDefault:r}=e;let n;i.getInputElement().setAttribute("title",""),t.init(i,e);let a=!0;s?(this.focusAfterAttached=!0,o===To.BACKSPACE||o===To.DELETE?n="":o&&1===o.length?r?a=!1:n=o:(n=t.getStartValue(),o!==To.F2&&(this.highlightAllOnFocus=!0))):(this.focusAfterAttached=!1,n=t.getStartValue()),a&&null!=n&&i.setStartValue(n),this.addGuiEventListener("keydown",e=>{const{key:t}=e;t!==To.PAGE_UP&&t!==To.PAGE_DOWN||e.preventDefault()})}afterGuiAttached(){const e=this.getLocaleTextFunc(),t=this.eEditor;if(t.setInputAriaLabel(e("ariaInputEditor","Input Editor")),!this.focusAfterAttached)return;jr()||t.getFocusableElement().focus();const i=t.getInputElement();this.highlightAllOnFocus?i.select():this.cellEditorInput.setCaret?.()}focusIn(){const{eEditor:e}=this,t=e.getFocusableElement(),i=e.getInputElement();t.focus(),i.select()}getValue(){return this.cellEditorInput.getValue()}isPopup(){return!1}getValidationElement(){return this.eEditor.getInputElement()}getValidationErrors(){return this.cellEditorInput.getValidationErrors()}},sC={tag:"ag-input-date-field",ref:"eEditor",cls:"ag-cell-editor"},oC=class{constructor(e,t){this.getDataTypeService=e,this.getLocaleTextFunc=t}getTemplate(){return sC}getAgComponents(){return[tC]}init(e,t){this.eEditor=e,this.params=t;const{min:i,max:s,step:o,colDef:r}=t;null!=i&&e.setMin(i),null!=s&&e.setMax(s),null!=o&&e.setStep(o),this.includeTime=t.includeTime??this.getDataTypeService()?.getDateIncludesTimeFlag?.(r.cellDataType),null!=this.includeTime&&e.setIncludeTime(this.includeTime)}getValidationErrors(){const e=this.eEditor.getInputElement().valueAsDate,{params:t}=this,{min:i,max:s,getValidationErrors:o}=t;let r=[];const n=this.getLocaleTextFunc();if(e instanceof Date&&!isNaN(e.getTime())){if(i){const t=i instanceof Date?i:new Date(i);if(et){const e=t.toLocaleDateString();r.push(n("maxDateValidation",`Date must be before ${e}`,[e]))}}}return r.length||(r=null),o?o({value:e,cellEditorParams:t,internalErrors:r}):r}getValue(){const{eEditor:e,params:t}=this,i=e.getDate();return f(i)||f(t.value)?i??null:t.value}getStartValue(){const{value:e}=this.params;if(e instanceof Date)return Kc(e,this.includeTime??!1)}},rC={tag:"ag-input-date-field",ref:"eEditor",cls:"ag-cell-editor"},nC=class{constructor(e,t){this.getDataTypeService=e,this.getLocaleTextFunc=t}getTemplate(){return rC}getAgComponents(){return[tC]}init(e,t){this.eEditor=e,this.params=t;const{min:i,max:s,step:o,colDef:r}=t;null!=i&&e.setMin(i),null!=s&&e.setMax(s),null!=o&&e.setStep(o),this.includeTime=t.includeTime??this.getDataTypeService()?.getDateIncludesTimeFlag?.(r.cellDataType),null!=this.includeTime&&e.setIncludeTime(this.includeTime)}getValidationErrors(){const{eEditor:e,params:t}=this,i=e.getInputElement().value,s=this.formatDate(this.parseDate(i??void 0)),{min:o,max:r,getValidationErrors:n}=t;let a=[];if(s){const e=new Date(s),t=this.getLocaleTextFunc();if(o){const i=new Date(o);if(ei){const e=i.toLocaleDateString();a.push(t("maxDateValidation",`Date must be before ${e}`,[e]))}}}return a.length||(a=null),n?n({value:this.getValue(),cellEditorParams:t,internalErrors:a}):a}getValue(){const{params:e,eEditor:t}=this,i=this.formatDate(t.getDate());return f(i)||f(e.value)?e.parseValue(i??""):e.value}getStartValue(){return Kc(this.parseDate(this.params.value??void 0)??null,this.includeTime??!1)}parseDate(e){const t=this.getDataTypeService();return t?t.getDateParserFunction(this.params.column)(e):Qc(e)??void 0}formatDate(e){const t=this.getDataTypeService();return t?t.getDateFormatterFunction(this.params.column)(e):Kc(e??null,this.includeTime??!1)??void 0}},aC=class extends Fa{constructor(e){super(e,"ag-text-area",null,"textarea")}setValue(e,t){const i=super.setValue(e,t);return this.eInput.value=e,i}setCols(e){return this.eInput.cols=e,this}setRows(e){return this.eInput.rows=e,this}},lC={selector:"AG-INPUT-TEXT-AREA",component:aC},dC={tag:"div",cls:"ag-large-text",children:[{tag:"ag-input-text-area",ref:"eEditor",cls:"ag-large-text-input"}]},cC=class extends Qf{constructor(e){super(e,"ag-number-field","number")}postConstruct(){super.postConstruct();const e=this.eInput;this.addManagedListeners(e,{blur:()=>{const t=Number.parseFloat(e.value),i=isNaN(t)?"":this.normalizeValue(t.toString());this.value!==i&&this.setValue(i)},wheel:this.onWheel.bind(this)}),e.step="any";const{precision:t,min:i,max:s,step:o}=this.config;"number"==typeof t&&this.setPrecision(t),"number"==typeof i&&this.setMin(i),"number"==typeof s&&this.setMax(s),"number"==typeof o&&this.setStep(o)}onWheel(e){A(this.beans)===this.eInput&&e.preventDefault()}normalizeValue(e){return""===e?"":(null!=this.precision&&(e=this.adjustPrecision(e)),e)}adjustPrecision(e,t){const i=this.precision;if(null==i)return e;if(t){const t=Number.parseFloat(e).toFixed(i);return Number.parseFloat(t).toString()}const s=String(e).split(".");if(s.length>1){if(s[1].length<=i)return e;if(i>0)return`${s[0]}.${s[1].slice(0,i)}`}return s[0]}setMin(e){return this.min===e||(this.min=e,Ke(this.eInput,"min",e)),this}setMax(e){return this.max===e||(this.max=e,Ke(this.eInput,"max",e)),this}setPrecision(e){return this.precision=e,this}setStep(e){return this.step===e||(this.step=e,Ke(this.eInput,"step",e)),this}setValue(e,t){return this.setValueOrInputValue(e=>super.setValue(e,t),()=>this,e)}setStartValue(e){return this.setValueOrInputValue(e=>super.setValue(e,!0),e=>{this.eInput.value=e},e)}setValueOrInputValue(e,t,i){if(f(i)){let s=this.isScientificNotation(i);if(s&&this.eInput.validity.valid)return e(i);if(!s){s=(i=this.adjustPrecision(i))!=this.normalizeValue(i)}if(s)return t(i)}return e(i)}getValue(e=!1){const t=this.eInput;if(!t.validity.valid&&!e)return;const i=t.value;return this.isScientificNotation(i)?this.adjustPrecision(i,!0):super.getValue()}isScientificNotation(e){return"string"==typeof e&&e.includes("e")}},uC={selector:"AG-INPUT-NUMBER-FIELD",component:cC},hC={tag:"ag-input-number-field",ref:"eEditor",cls:"ag-cell-editor"},gC=class{constructor(e){this.getLocaleTextFunc=e}getTemplate(){return hC}getAgComponents(){return[uC]}init(e,t){this.eEditor=e,this.params=t;const{max:i,min:s,precision:o,step:r}=t;null!=i&&e.setMax(i),null!=s&&e.setMin(s),null!=o&&e.setPrecision(o),null!=r&&e.setStep(r);const n=e.getInputElement();t.preventStepping?e.addManagedElementListeners(n,{keydown:this.preventStepping}):t.showStepperButtons&&n.classList.add("ag-number-field-input-stepper")}getValidationErrors(){const{params:e}=this,{min:t,max:i,getValidationErrors:s}=e,o=this.eEditor.getInputElement().valueAsNumber,r=this.getLocaleTextFunc();let n=[];return"number"==typeof o&&(null!=t&&oi&&n.push(r("maxValueValidation",`Must be less than or equal to ${i}.`,[String(i)]))),n.length||(n=null),s?s({value:o,cellEditorParams:e,internalErrors:n}):n}preventStepping(e){e.key!==To.UP&&e.key!==To.DOWN||e.preventDefault()}getValue(){const{eEditor:e,params:t}=this,i=e.getValue();if(!f(i)&&!f(t.value))return t.value;let s=t.parseValue(i);if(null==s)return s;if("string"==typeof s){if(""===s)return null;s=Number(s)}return isNaN(s)?null:s}getStartValue(){return this.params.value}setCaret(){jr()&&this.eEditor.getInputElement().focus({preventScroll:!0})}},pC=class extends Ho{constructor(e,t,i){super(((e,t)=>({tag:"div",cls:`ag-list-item ag-${e}-list-item`,attrs:{role:"option"},children:[{tag:"span",cls:`ag-list-item-text ag-${e}-list-item-text`,ref:"eText",children:t}]}))(e,t)),this.label=t,this.value=i,this.eText=Lo}postConstruct(){this.createTooltip(),this.addEventListeners()}setHighlighted(e){const t=this.getGui();t.classList.toggle("ag-active-item",e),ne(t,e),this.dispatchLocalEvent({type:"itemHighlighted",highlighted:e})}getHeight(){return this.getGui().clientHeight}setIndex(e,t){const i=this.getGui();Q(i,e),Z(i,t)}createTooltip(){const e={getTooltipValue:()=>this.label,getGui:()=>this.getGui(),getLocation:()=>"UNKNOWN",shouldDisplayTooltip:()=>_e(this.eText)},t=this.createOptionalManagedBean(this.beans.registry.createDynamicBean("highlightTooltipFeature",!1,e,this));t&&(this.tooltipFeature=t)}addEventListeners(){const e=this.getParentComponent();e&&(this.addGuiEventListener("mouseover",()=>{e.highlightItem(this)}),this.addGuiEventListener("mousedown",t=>{t.preventDefault(),t.stopPropagation(),e.setValue(this.value)}))}},mC=class extends Ho{constructor(e="default"){super({tag:"div",cls:`ag-list ag-${e}-list`}),this.cssIdentifier=e,this.options=[],this.listItems=[],this.highlightedItem=null,this.registerCSS(".ag-list-item{align-items:center;display:flex;height:var(--ag-list-item-height);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;&.ag-active-item{background-color:var(--ag-row-hover-color)}}")}postConstruct(){const e=this.getGui();this.addManagedElementListeners(e,{mouseleave:()=>this.clearHighlighted()})}handleKeyDown(e){const t=e.key;switch(t){case To.ENTER:if(this.highlightedItem){const e=this.listItems.indexOf(this.highlightedItem);this.setValueByIndex(e)}else this.setValue(this.getValue());break;case To.DOWN:case To.UP:e.preventDefault(),this.navigate(t);break;case To.PAGE_DOWN:case To.PAGE_UP:case To.PAGE_HOME:case To.PAGE_END:e.preventDefault(),this.navigateToPage(t)}}addOptions(e){for(const t of e)this.addOption(t);return this}addOption(e){const{value:t,text:i}=e,s=i??t;return this.options.push({value:t,text:s}),this.renderOption(t,s),this.updateIndices(),this}clearOptions(){this.options=[],this.reset(!0);for(const e of this.listItems)e.destroy();Te(this.getGui()),this.listItems=[],this.refreshAriaRole()}updateOptions(e){const t=this.options!==e;return t&&(this.clearOptions(),this.addOptions(e)),t}setValue(e,t){if(this.value===e)return this.fireItemSelected(),this;if(null==e)return this.reset(t),this;const i=this.options.findIndex(t=>t.value===e);if(-1!==i){const e=this.options[i];this.value=e.value,this.displayValue=e.text,this.highlightItem(this.listItems[i]),t||this.fireChangeEvent()}return this}setValueByIndex(e){return this.setValue(this.options[e].value)}getValue(){return this.value}getDisplayValue(){return this.displayValue}refreshHighlighted(){this.clearHighlighted();const e=this.options.findIndex(e=>e.value===this.value);-1!==e&&this.highlightItem(this.listItems[e])}highlightItem(e){const t=e.getGui();if(!ke(t))return;this.clearHighlighted(),e.setHighlighted(!0),this.highlightedItem=e;const i=this.getGui(),{scrollTop:s,clientHeight:o}=i,{offsetTop:r,offsetHeight:n}=t;(r+n>s+o||r{e.setIndex(i+1,t)})}fireChangeEvent(){this.dispatchLocalEvent({type:"fieldValueChanged"}),this.fireItemSelected()}fireItemSelected(){this.dispatchLocalEvent({type:"selectedItem"})}},fC={tag:"div",cls:"ag-picker-field",role:"presentation",children:[{tag:"div",ref:"eLabel"},{tag:"div",ref:"eWrapper",cls:"ag-wrapper ag-picker-field-wrapper ag-picker-collapsed",children:[{tag:"div",ref:"eDisplayField",cls:"ag-picker-field-display"},{tag:"div",ref:"eIcon",cls:"ag-picker-field-icon",attrs:{"aria-hidden":"true"}}]}]},CC=class extends xa{constructor(e){if(super(e,e?.template||fC,e?.agComponents||[],e?.className),this.isPickerDisplayed=!1,this.skipClick=!1,this.pickerGap=4,this.hideCurrentPicker=null,this.eLabel=Lo,this.eWrapper=Lo,this.eDisplayField=Lo,this.eIcon=Lo,this.registerCSS(".ag-picker-field-display{flex:1 1 auto}.ag-picker-field{align-items:center;display:flex}.ag-picker-field-icon{border:0;cursor:pointer;display:flex;margin:0;padding:0}.ag-picker-field-wrapper{background-color:var(--ag-picker-button-background-color);border:var(--ag-picker-button-border);border-radius:5px;min-height:max(var(--ag-list-item-height),calc(var(--ag-spacing)*4));overflow:hidden;&:where(.invalid){background-color:var(--ag-input-invalid-background-color);border:var(--ag-input-invalid-border);color:var(--ag-input-invalid-text-color)}}.ag-picker-field-wrapper:where(.ag-picker-has-focus),.ag-picker-field-wrapper:where(:focus-within){background-color:var(--ag-picker-button-focus-background-color);border:var(--ag-picker-button-focus-border);box-shadow:var(--ag-focus-shadow);&:where(.invalid){box-shadow:var(--ag-focus-error-shadow)}}.ag-picker-field-wrapper:disabled{opacity:.5}"),this.ariaRole=e?.ariaRole,this.onPickerFocusIn=this.onPickerFocusIn.bind(this),this.onPickerFocusOut=this.onPickerFocusOut.bind(this),!e)return;const{pickerGap:t,maxPickerHeight:i,variableWidth:s,minPickerWidth:o,maxPickerWidth:r}=e;null!=t&&(this.pickerGap=t),this.variableWidth=!!s,null!=i&&this.setPickerMaxHeight(i),null!=o&&this.setPickerMinWidth(o),null!=r&&this.setPickerMaxWidth(r)}postConstruct(){super.postConstruct(),this.setupAria();const e=`ag-${this.getCompId()}-display`;this.eDisplayField.setAttribute("id",e);const t=this.getAriaElement();this.addManagedElementListeners(t,{keydown:this.onKeyDown.bind(this)}),this.addManagedElementListeners(this.eLabel,{mousedown:this.onLabelOrWrapperMouseDown.bind(this)}),this.addManagedElementListeners(this.eWrapper,{mousedown:this.onLabelOrWrapperMouseDown.bind(this)});const{pickerIcon:i,inputWidth:s}=this.config;if(i){const e=this.beans.iconSvc.createIconNoSpan(i);e&&this.eIcon.appendChild(e)}null!=s&&this.setInputWidth(s)}setupAria(){const e=this.getAriaElement();e.setAttribute("tabindex",this.gos.get("tabIndex").toString()),Y(e,!1),this.ariaRole&&B(e,this.ariaRole)}onLabelOrWrapperMouseDown(e){if(e){const t=this.getFocusableElement();if(t!==this.eWrapper&&e?.target===t)return;e.preventDefault(),this.getFocusableElement().focus()}this.skipClick?this.skipClick=!1:this.isDisabled()||(this.isPickerDisplayed?this.hidePicker():this.showPicker())}onKeyDown(e){switch(e.key){case To.UP:case To.DOWN:case To.ENTER:case To.SPACE:e.preventDefault(),this.onLabelOrWrapperMouseDown();break;case To.ESCAPE:this.isPickerDisplayed&&(e.preventDefault(),e.stopPropagation(),this.hideCurrentPicker&&this.hideCurrentPicker())}}showPicker(){this.isPickerDisplayed=!0,this.pickerComponent||(this.pickerComponent=this.createPickerComponent());const e=this.pickerComponent.getGui();e.addEventListener("focusin",this.onPickerFocusIn),e.addEventListener("focusout",this.onPickerFocusOut),this.hideCurrentPicker=this.renderAndPositionPicker(),this.toggleExpandedStyles(!0)}renderAndPositionPicker(){const e=this.pickerComponent.getGui();this.gos.get("suppressScrollWhenPopupsAreOpen")||([this.destroyMouseWheelFunc]=this.addManagedEventListeners({bodyScroll:()=>{this.hidePicker()}}));const t=this.getLocaleTextFunc(),{config:{pickerAriaLabelKey:i,pickerAriaLabelValue:s,modalPicker:o=!0},maxPickerHeight:r,minPickerWidth:n,maxPickerWidth:a,variableWidth:l,beans:d,eWrapper:c}=this,u={modal:o,eChild:e,closeOnEsc:!0,closedCallback:()=>{const e=D(d);this.beforeHidePicker(),e&&this.isAlive()&&this.getFocusableElement().focus()},ariaLabel:t(i,s),anchorToElement:c};e.style.position="absolute";const h=d.popupSvc,g=h.addPopup(u);l?(n&&(e.style.minWidth=n),e.style.width=Ue(Pe(c)),a&&(e.style.maxWidth=a)):He(e,a??Pe(c));const p=r??`${xe(h.getPopupParent())}px`;return e.style.setProperty("max-height",p),this.alignPickerToComponent(),g.hideFunc}alignPickerToComponent(){if(!this.pickerComponent)return;const{pickerGap:e,config:{pickerType:t},beans:{popupSvc:i,gos:s},eWrapper:o,pickerComponent:r}=this,n=s.get("enableRtl")?"right":"left";i.positionPopupByComponent({type:t,eventSource:o,ePopup:r.getGui(),position:"under",alignSide:n,keepWithinBounds:!0,nudgeY:e})}beforeHidePicker(){this.destroyMouseWheelFunc&&(this.destroyMouseWheelFunc(),this.destroyMouseWheelFunc=void 0),this.toggleExpandedStyles(!1);const e=this.pickerComponent.getGui();e.removeEventListener("focusin",this.onPickerFocusIn),e.removeEventListener("focusout",this.onPickerFocusOut),this.isPickerDisplayed=!1,this.pickerComponent=void 0,this.hideCurrentPicker=null}toggleExpandedStyles(e){if(!this.isAlive())return;Y(this.getAriaElement(),e);const t=this.eWrapper.classList;t.toggle("ag-picker-expanded",e),t.toggle("ag-picker-collapsed",!e)}onPickerFocusIn(){this.togglePickerHasFocus(!0)}onPickerFocusOut(e){this.pickerComponent?.getGui().contains(e.relatedTarget)||this.togglePickerHasFocus(!1)}togglePickerHasFocus(e){this.pickerComponent&&this.eWrapper.classList.toggle("ag-picker-has-focus",e)}hidePicker(){this.hideCurrentPicker&&(this.hideCurrentPicker(),this.dispatchLocalEvent({type:"pickerHidden"}))}setInputWidth(e){return He(this.eWrapper,e),this}getFocusableElement(){return this.eWrapper}setPickerGap(e){return this.pickerGap=e,this}setPickerMinWidth(e){return"number"==typeof e&&(e=`${e}px`),this.minPickerWidth=null==e?void 0:e,this}setPickerMaxWidth(e){return"number"==typeof e&&(e=`${e}px`),this.maxPickerWidth=null==e?void 0:e,this}setPickerMaxHeight(e){return"number"==typeof e&&(e=`${e}px`),this.maxPickerHeight=null==e?void 0:e,this}destroy(){this.hidePicker(),super.destroy()}},vC=class extends CC{constructor(e){super({pickerAriaLabelKey:"ariaLabelSelectField",pickerAriaLabelValue:"Select Field",pickerType:"ag-list",className:"ag-select",pickerIcon:"selectOpen",ariaRole:"combobox",...e}),this.registerCSS(".ag-select{align-items:center;display:flex;&.ag-disabled{opacity:.5}}.ag-select:where(:not(.ag-cell-editor,.ag-label-align-top)){min-height:var(--ag-list-item-height)}:where(.ag-select){.ag-picker-field-wrapper{cursor:default;padding-left:var(--ag-spacing);padding-right:var(--ag-spacing)}&.ag-disabled .ag-picker-field-wrapper:focus{box-shadow:none}.ag-picker-field-display{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ag-picker-field-icon{align-items:center;display:flex}}.ag-select-list{background-color:var(--ag-picker-list-background-color);border:var(--ag-picker-list-border);border-radius:var(--ag-border-radius);box-shadow:var(--ag-dropdown-shadow);overflow:hidden auto}.ag-select-list-item{cursor:default;-webkit-user-select:none;-moz-user-select:none;user-select:none}:where(.ag-ltr) .ag-select-list-item{padding-left:var(--ag-spacing)}:where(.ag-rtl) .ag-select-list-item{padding-right:var(--ag-spacing)}.ag-select-list-item-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}")}postConstruct(){this.tooltipFeature=this.createOptionalManagedBean(this.beans.registry.createDynamicBean("tooltipFeature",!1,{shouldDisplayTooltip:Ve(()=>this.eDisplayField),getGui:()=>this.getGui()})),super.postConstruct(),this.createListComponent(),this.eWrapper.tabIndex=this.gos.get("tabIndex");const{options:e,value:t,placeholder:i}=this.config;null!=e&&this.addOptions(e),null!=t&&this.setValue(t,!0),i&&null==t&&(this.eDisplayField.textContent=i),this.addManagedElementListeners(this.eWrapper,{focusout:this.onWrapperFocusOut.bind(this)})}onWrapperFocusOut(e){this.eWrapper.contains(e.relatedTarget)||this.hidePicker()}createListComponent(){const e=this.createBean(new mC("select"));this.listComponent=e,e.setParentComponent(this);const t=e.getAriaElement(),i=`ag-select-list-${e.getCompId()}`;t.setAttribute("id",i),de(this.getAriaElement(),t),e.addManagedElementListeners(e.getGui(),{mousedown:e=>{e?.preventDefault()}}),e.addManagedListeners(e,{selectedItem:()=>{this.hidePicker(),this.dispatchLocalEvent({type:"selectedItem"})},fieldValueChanged:()=>{this.listComponent&&(this.setValue(this.listComponent.getValue(),!1,!0),this.hidePicker())}})}createPickerComponent(){return this.listComponent}beforeHidePicker(){this.listComponent?.hideItemTooltip(),super.beforeHidePicker()}onKeyDown(e){const{key:t}=e;switch(t===To.TAB&&this.hidePicker(),t){case To.ENTER:case To.UP:case To.DOWN:case To.PAGE_UP:case To.PAGE_DOWN:case To.PAGE_HOME:case To.PAGE_END:e.preventDefault(),this.isPickerDisplayed?this.listComponent?.handleKeyDown(e):super.onKeyDown(e);break;case To.ESCAPE:super.onKeyDown(e);break;case To.SPACE:this.isPickerDisplayed?e.preventDefault():super.onKeyDown(e)}}showPicker(){const e=this.listComponent;e&&(super.showPicker(),e.refreshHighlighted())}addOptions(e){for(const t of e)this.addOption(t);return this}addOption(e){return this.listComponent.addOption(e),this}clearOptions(){return this.listComponent?.clearOptions(),this.setValue(void 0,!0),this}updateOptions(e){return this.listComponent?.updateOptions(e)&&this.setValue(void 0,!0),this}setValue(e,t,i){const{listComponent:s,config:{placeholder:o},eDisplayField:r,tooltipFeature:n}=this;if(this.value===e||!s)return this;i||s.setValue(e,!0);if(s.getValue()===this.getValue())return this;let a=s.getDisplayValue();return null==a&&o&&(a=o),r.textContent=a,n?.setTooltipAndRefresh(a??null),super.setValue(e,t)}destroy(){this.listComponent=this.destroyBean(this.listComponent),super.destroy()}},wC={selector:"AG-SELECT",component:vC},bC={tag:"div",cls:"ag-cell-edit-wrapper",children:[{tag:"ag-select",ref:"eEditor",cls:"ag-cell-editor"}]},yC={tag:"ag-input-text-field",ref:"eEditor",cls:"ag-cell-editor"},SC=class{constructor(e){this.getLocaleTextFunc=e}getTemplate(){return yC}getAgComponents(){return[Jf]}init(e,t){this.eEditor=e,this.params=t;const i=t.maxLength;null!=i&&e.setMaxLength(i)}getValidationErrors(){const{params:e}=this,{maxLength:t,getValidationErrors:i}=e,s=this.getValue(),o=this.getLocaleTextFunc();let r=[];return null!=t&&"string"==typeof s&&s.length>t&&r.push(o("maxLengthValidation",`Must be ${t} characters or fewer.`,[String(t)])),r.length||(r=null),i?i({value:s,cellEditorParams:e,internalErrors:r}):r}getValue(){const{eEditor:e,params:t}=this,i=e.getValue();return f(i)||f(t.value)?t.parseValue(i):t.value}getStartValue(){const e=this.params;return e.useFormatter||e.column.getColDef().refData?e.formatValue(e.value):e.value}setCaret(){jr()&&this.eEditor.getInputElement().focus({preventScroll:!0});const e=this.eEditor,t=e.getValue(),i=f(t)&&t.length||0;i&&e.getInputElement().setSelectionRange(i,i)}},xC=class extends iC{constructor(){super(new SC(()=>this.getLocaleTextFunc()))}};var FC={tag:"div",cls:"ag-popup-editor",attrs:{tabindex:"-1"}},RC=class extends ma{constructor(e){super(FC),this.params=e}postConstruct(){Di(this.gos,this.getGui(),"popupEditorWrapper",!0),this.addKeyDownListener()}addKeyDownListener(){const e=this.getGui(),t=this.params;this.addManagedElementListeners(e,{keydown:e=>{jl(this.gos,e,t.node,t.column,!0)||t.onKeyDown(e)}})}};function PC(e,t){return e.editModelSvc?.hasEdits(t,{withOpenEditor:!0})??!1}function MC(e,t){const i=t.column,s=t.rowNode,o=i.getColDef();if(!s)return PC(e,t);const r=o.editable;if(s.group){const r=o.groupRowEditable;if(null!=r)return!!i.isColumnFunc(s,r)||PC(e,t)}return!!i.isColumnFunc(s,r)||PC(e,t)}var EC=(e,t=!1)=>{if(void 0!==e)return mp(e)||t&&"editing"===e.state};function AC(e,t,i=!1){return EC(e.editModelSvc?.getEdit(t),i)}var TC=(e,t,i)=>{if(e)for(let s=0,o=e.length;s{const t={rowNode:s,column:e};return AC(i,t,!0)||DC(i,t)||IC(i,t)});return void this.applyStyle(r,e)}this.applyStyle(r)}applyStyle(e=!1,t=!1){const i=!!this.editSvc?.isBatchEditing(),s="fullRow"===this.gos.get("editType");this.rowCtrl?.forEachGui(void 0,({rowComp:o})=>{o.toggleCss("ag-row-editing",s&&t),o.toggleCss("ag-row-batch-edit",s&&t&&i),o.toggleCss("ag-row-inline-editing",t),o.toggleCss("ag-row-not-inline-editing",!t),o.toggleCss("ag-row-editing-invalid",s&&t&&e)})}},OC=e=>()=>{const t=new Set(e.colModel.getCols()),i=e.editModelSvc.getEditMap(!0),s=new Set(i.keys());(({editModelSvc:e},t,i)=>{for(const s of t)e?.getEditRow(s)?.forEach((t,o)=>!i.has(o)&&e.removeEdits({rowNode:s,column:o}))})(e,(({rowModel:e,pinnedRowModel:t,editModelSvc:i},s)=>{const o=new Set;e.forEachNode(e=>s.has(e)&&o.add(e)),t?.forEachPinnedRow("top",e=>s.has(e)&&o.add(e)),t?.forEachPinnedRow("bottom",e=>s.has(e)&&o.add(e));for(const e of s)o.has(e)||i.removeEdits({rowNode:e});return o})(e,s),t)},GC=new Set(["undo","redo","paste","bulk","rangeSvc"]),NC=new Set(["ui","api"]),BC={paste:"api",rangeSvc:"api",fillHandle:"api",cellClear:"api",bulk:"api"},VC=new Set(Object.keys(BC)),_C=new Set(["paste","rangeSvc","cellClear","redo","undo"]),HC={cancel:!0,source:"api"},zC={cancel:!1,source:"api"},WC={checkSiblings:!0},UC={force:!0,suppressFlash:!0};function jC(e){return{rowNodes:e?Array.from(e.keys()):void 0,columns:e?[...new Set(Array.from(e.values()).flatMap(e=>Array.from(e.keys())))]:void 0}}function KC(e,t){return t??e.get("editType")??"singleCell"}var $C=class extends wt{postConstruct(){this.model=this.beans.editModelSvc,this.editSvc=this.beans.editSvc,this.addManagedEventListeners({cellFocused:this.onCellFocusChanged?.bind(this),cellFocusCleared:this.onCellFocusChanged?.bind(this)})}clearEdits(e){this.model.clearEditValue(e)}onCellFocusChanged(e){let t;const i=e.previousParams,{editSvc:s,beans:o}=this,r="cellFocused"===e.type?e.sourceEvent:null;i&&(t=up(o,i));const{gos:n,editModelSvc:a}=o,l="cellFocusCleared"===e.type;if(s.isEditing(void 0,{withOpenEditor:!0})){const{column:t,rowIndex:d,rowPinned:c}=e,u={column:t,rowNode:Fn(o,{rowIndex:d,rowPinned:c})},h="block"===n.get("invalidEditValueMode");if(h)return;const g=!h,p=!!a?.getCellValidationModel().hasCellValidation(u),m=g&&p;!i&&!l||s.stopEditing(void 0,{cancel:m,source:l&&g?"api":void 0,event:r})||(s.isBatchEditing()?s.cleanupEditors():s.stopEditing(void 0,{source:"api"}))}t?.refreshCell({suppressFlash:!0,force:!0})}stopCancelled(e){const t=this.editSvc.isBatchEditing()&&!e;for(const e of this.model.getEditPositions())Rp(this.beans,e,{cancel:!0},up(this.beans,e)),this.model.stop(e,t,!0);return!0}stopCommitted(e,t){const i=this.model.getEditPositions(),s={all:[],pass:[],fail:[]};for(const e of i)s.all.push(e),(this.model.getCellValidationModel().getCellValidation(e)?.errorMessages?.length??0)>0?s.fail.push(e):s.pass.push(e);const o=this.processValidationResults(s),r=this.editSvc.isBatchEditing()&&!t;for(const t of o.destroy)Rp(this.beans,t,{event:e},up(this.beans,t)),this.model.stop(t,r,!1);for(const e of o.keep){const t=up(this.beans,e);!this.editSvc.cellEditingInvalidCommitBlocks()&&t&&this.editSvc.revertSingleCellEdit(t)}return!0}cleanupEditors({rowNode:e}={},t){yp(this.beans,{persist:!1});const i=this.model.getEditPositions(),s=[];if(e)for(const t of i)t.rowNode!==e&&s.push(t);else for(const e of i)s.push(e);Fp(this.beans,s),wp(this.beans,t)}setFocusOutOnEditor(e){e.comp?.getCellEditor()?.focusOut?.()}setFocusInOnEditor(e){const t=e.comp,i=t?.getCellEditor();if(i?.focusIn)i.focusIn();else{const i="fullRow"===this.beans.gos.get("editType");e.focusCell(i),e.onEditorAttachedFuncs.push(()=>t?.getCellEditor()?.focusIn?.())}}setupEditors(e){const{event:t,ignoreEventKey:i=!1,startedEdit:s,position:o,cells:r=this.model.getEditPositions()}=e,n=t instanceof KeyboardEvent&&!i&&t.key||void 0;!function(e,t,i,s,o,r){0===t.length&&i?.rowNode&&i?.column&&fp(e,i,{key:s,event:o,cellStartedEdit:r});const{valueSvc:n,editSvc:a,editModelSvc:l}=e,{rowNode:d,column:c}=i??{};for(const u of t){const{rowNode:t,column:h}=u,g=up(e,u);if(!g){if(t&&h){const o=n.getValue(h,t,"data"),r=(i?.rowNode===t&&i?.column===h&&s||void 0)??a?.getCellDataValue(u)??n.getValueForDisplay({column:h,node:t,from:"edit"})?.value??o??pp;l?.setEdit(u,{pendingValue:xp(e,r,!1,h),sourceValue:o,state:"editing"})}continue}const p=r&&d===g.rowNode&&g.column===c;fp(e,{rowNode:d,column:g.column},{key:p?s:null,event:p?o:null,cellStartedEdit:p&&r})}}(this.beans,r,o,n,t,s)}dispatchCellEvent(e,t,i,s){const o=up(this.beans,e);o&&this.eventSvc.dispatchEvent({...o.createEvent(t??null,i),...s})}dispatchRowEvent(e,t,i){if(i)return;const s=cp(this.beans,e);s&&this.eventSvc.dispatchEvent(s.createRowEvent(t))}shouldStop(e,t,i="ui"){const s=this.editSvc.isBatchEditing();return!(!s||"api"!==i)||(!s||"ui"!==i&&"edit"!==i)&&("api"===i||(t instanceof KeyboardEvent&&!s?t.key===To.ENTER:null))}shouldCancel(e,t,i="ui"){const s=this.editSvc.isBatchEditing();if(t instanceof KeyboardEvent&&!s){if(t.key===To.ESCAPE)return!0}return!(!s||"api"!==i)||"api"===i}setEditMap(e,t){t?.update||this.editSvc.stopEditing(void 0,{cancel:!0,source:"api"});const i=[];if(e.forEach((e,t)=>{e.forEach((e,s)=>{"editing"===e.state&&i.push({...e,rowNode:t,column:s})})}),t?.update&&(e=new Map([...this.model.getEditMap(),...e])),this.model?.setEditMap(e),i.length>0){const e=i.at(-1),t=e.pendingValue===pp?void 0:e.pendingValue;this.start({position:e,event:new KeyboardEvent("keydown",{key:t}),source:"api"});const s=up(this.beans,e);s&&this.setFocusInOnEditor(s)}}destroy(){this.cleanupEditors(),super.destroy()}},qC={moduleName:"EditCore",version:ii,beans:[class extends wt{constructor(){super(...arguments),this.beanName="editModelSvc",this.edits=new Map,this.cellValidations=new lp,this.rowValidations=new dp,this.suspendEdits=!1}suspend(e){this.suspendEdits=e}removeEdits({rowNode:e,column:t}){if(!this.hasEdits({rowNode:e})||!e)return;const i=this.getEditRow(e);t?i.delete(t):i.clear(),0===i.size&&this.edits.delete(e)}getEditRow(e,t={}){if(this.suspendEdits)return;if(0===this.edits.size)return;const i=e&&this.edits.get(e);if(i)return i;if(t.checkSiblings){const t=e.pinnedSibling;if(t)return this.getEditRow(t)}}getEditRowDataValue(e,{checkSiblings:t}={}){if(!e||0===this.edits.size)return;const i=this.getEditRow(e),s=e.pinnedSibling,o=t&&s&&this.getEditRow(s);if(!i&&!o)return;const r={...e.data},n=(e,t)=>e.forEach(({pendingValue:e},i)=>{e!==pp&&(t[i.getColId()]=e)});return i&&n(i,r),o&&n(o,r),r}getEdit(e={},t){const{rowNode:i,column:s}=e,o=this.edits;if(this.suspendEdits||0===o.size||!i||!s)return;const r=o.get(i)?.get(s);if(r)return r;if(t?.checkSiblings){const e=i.pinnedSibling;if(e)return o.get(e)?.get(s)}}getEditMap(e=!0){if(this.suspendEdits||0===this.edits.size)return new Map;if(!e)return this.edits;const t=new Map;return this.edits.forEach((e,i)=>{const s=new Map;e.forEach(({editorState:e,...t},i)=>s.set(i,{...t})),t.set(i,s)}),t}setEditMap(e){this.edits.clear(),e.forEach((e,t)=>{const i=new Map;e.forEach((e,t)=>i.set(t,{...e})),this.edits.set(t,i)})}setEdit(e,t){const i=this.edits;0!==i.size&&i.has(e.rowNode)||i.set(e.rowNode,new Map);const s={editorState:{isCancelAfterEnd:void 0,isCancelBeforeStart:void 0},...this.getEdit(e),...t};return this.getEditRow(e.rowNode).set(e.column,s),s}clearEditValue(e){const{rowNode:t,column:i}=e;if(!t)return;const s=e=>{e.editorValue=void 0,e.pendingValue=e.sourceValue,e.state="changed"};if(!i)return void this.getEditRow(t)?.forEach(s);const o=this.getEdit(e);o&&s(o)}getState(e){if(!this.suspendEdits)return this.getEdit(e)?.state}getEditPositions(e){if(this.suspendEdits||0===(e??this.edits).size)return[];const t=[];return(e??this.edits).forEach((e,i)=>{for(const s of e.keys()){const{editorState:o,...r}=e.get(s);t.push({rowNode:i,column:s,...r})}}),t}hasRowEdits(e,t){if(this.suspendEdits)return!1;if(0===this.edits.size)return!1;return!!this.getEditRow(e,t)}hasEdits(e={},t={}){if(this.suspendEdits)return!1;if(0===this.edits.size)return!1;const{rowNode:i,column:s}=e,{withOpenEditor:o}=t;if(i){const r=this.getEditRow(i,t);return!!r&&(s?o?"editing"===this.getEdit(e)?.state:r.has(s):0!==r.size&&(!o||Array.from(r.values()).some(({state:e})=>"editing"===e)))}return o?this.getEditPositions().some(({state:e})=>"editing"===e):this.edits.size>0}start(e){const t=this.getEditRow(e.rowNode)??new Map,{rowNode:i,column:s}=e;s&&!t.has(s)&&t.set(s,{editorValue:void 0,pendingValue:pp,sourceValue:this.beans.valueSvc.getValue(s,i,"data"),state:"editing",editorState:{isCancelAfterEnd:void 0,isCancelBeforeStart:void 0}}),this.edits.set(i,t)}stop(e,t,i){if(this.hasEdits(e))if(t){const t=this.getEditRow(e.rowNode)?.get(e.column);!t||t.pendingValue!==pp&&t.pendingValue!==t.sourceValue?t&&i&&(t.editorValue=void 0):this.removeEdits(e)}else this.removeEdits(e)}clear(){for(const e of this.edits.values())e.clear();this.edits.clear()}getCellValidationModel(){return this.cellValidations}getRowValidationModel(){return this.rowValidations}setCellValidationModel(e){this.cellValidations=e}setRowValidationModel(e){this.rowValidations=e}destroy(){super.destroy(),this.clear()}},class extends wt{constructor(){super(...arguments),this.beanName="editSvc",this.committing=!1,this.batch=!1,this.batchStartDispatched=!1,this.stopping=!1,this.rangeSelectionWhileEditing=0}postConstruct(){const{beans:e}=this;this.model=e.editModelSvc,this.valueSvc=e.valueSvc,this.rangeSvc=e.rangeSvc,this.addManagedPropertyListener("editType",({currentValue:e})=>{this.stopEditing(void 0,HC),this.createStrategy(e)});const t=OC(e),i=()=>{const t=this.model.getCellValidationModel().getCellValidationMap().size>0,i=this.model.getRowValidationModel().getRowValidationMap().size>0;return t||i?this.stopEditing(void 0,HC):this.isEditing()&&(this.batch?Fp(e,this.model.getEditPositions()):this.stopEditing(void 0,zC)),!1};this.addManagedEventListeners({columnPinned:t,columnVisible:t,columnRowGroupChanged:t,rowExpansionStateChanged:t,pinnedRowsChanged:t,displayedRowsChanged:t,sortChanged:i,filterChanged:i,cellFocused:this.onCellFocused.bind(this)})}isBatchEditing(){return this.batch}startBatchEditing(){this.batch||(this.batch=!0,this.batchStartDispatched=!1,this.stopEditing(void 0,HC))}stopBatchEditing(e){this.batch&&(e&&this.stopEditing(void 0,e),this.batchStartDispatched&&this.dispatchBatchStopped(new Map,!1),this.batch=!1,this.batchStartDispatched=!1)}ensureBatchStarted(){this.batch&&!this.batchStartDispatched&&(this.batchStartDispatched=!0,this.dispatchBatchEvent("batchEditingStarted",new Map))}createStrategy(e){const{beans:t,gos:i,strategy:s}=this,o=KC(i,e);if(s){if(s.beanName===o)return s;this.destroyStrategy()}return this.strategy=this.createOptionalManagedBean(t.registry.createDynamicBean(o,!0))}destroyStrategy(){this.strategy&&(this.strategy.destroy(),this.strategy=this.destroyBean(this.strategy))}shouldStartEditing(e,t,i,s="ui"){const o=function(e,{column:t},i,s,o="ui"){if(i instanceof KeyboardEvent&&(i.key===To.TAB||i.key===To.ENTER||i.key===To.F2||i.key===To.BACKSPACE&&s))return!0;if(i?.shiftKey&&0!=e.rangeSvc?.getCellRanges().length)return!1;const r=t?.getColDef(),n=function(e,t){return!0===e.get("suppressClickEdit")?0:!0===e.get("singleClickEdit")||t?.singleClickEdit?1:2}(e.gos,r),a=i?.type;return"click"===a&&1===i?.detail&&1===n||"dblclick"===a&&2===i?.detail&&2===n||"api"===o&&!!s}(this.beans,e,t,i,s);return o&&(this.strategy??(this.strategy=this.createStrategy())),o}shouldStopEditing(e,t,i="ui"){return this.strategy?.shouldStop(e,t,i)??null}shouldCancelEditing(e,t,i="ui"){return this.strategy?.shouldCancel(e,t,i)??null}validateEdit(){return function(e){Ap(e,!0);const t=e.editModelSvc?.getCellValidationModel().getCellValidationMap();if(!t)return null;const i=[];return t.forEach((e,t)=>{e.forEach(({errorMessages:e},s)=>{i.push({column:s,rowIndex:t.rowIndex,rowPinned:t.rowPinned,messages:e??null})})}),i}(this.beans)}isEditing(e,t){return this.model.hasEdits(e??void 0,t??WC)}isRowEditing(e,t){return!!e&&this.model.hasRowEdits(e,t)}enableRangeSelectionWhileEditing(){this.beans.rangeSvc&&this.gos.get("cellSelection")&&this.rangeSelectionWhileEditing++}disableRangeSelectionWhileEditing(){this.rangeSelectionWhileEditing=Math.max(0,this.rangeSelectionWhileEditing-1)}isRangeSelectionEnabledWhileEditing(){return this.rangeSelectionWhileEditing>0}startEditing(e,t){const{startedEdit:i=!0,event:s=null,source:o="ui",ignoreEventKey:r=!1,silent:n}=t;this.strategy??(this.strategy=this.createStrategy());if(!(t.editable??this.isCellEditable(e,"api")))return;const a=up(this.beans,e);if(a&&!a.comp)return t.editable=void 0,void a.onCompAttachedFuncs.push(()=>this.startEditing(e,t));const l=this.shouldStartEditing(e,s,i,o);!1!==l||"api"===o?(this.batch||!this.shouldStopEditing(e,void 0,o)||t.continueEditing||this.stopEditing(void 0,{source:o}),l&&this.ensureBatchStarted(),this.strategy.start({position:e,event:s,source:o,ignoreEventKey:r,startedEdit:i,silent:n})):this.isEditing(e)&&this.stopEditing()}stopEditing(e,t){const i=this.prepareStopContext(e,t);if(!i)return!1;this.stopping=!0;let s=!1,{edits:o}=i;try{const r=this.processStopRequest(i);return s||(s=r.res),o=r.edits,this.finishStopEditing({...i,edits:o,params:t,position:e,res:s}),s}finally{this.rangeSelectionWhileEditing=0,this.stopping=!1}}prepareStopContext(e,t){const{event:i=null,cancel:s=!1,source:o="ui",forceCancel:r=!1,forceStop:n=!1,commit:a=!1}=t||{};if(VC.has(o)&&this.batch)return this.bulkRefresh(e),null;const l=this.committing?BC[o]:o;if(!(this.committing||this.isEditing(e)||this.batch&&this.model.hasEdits(e,WC))||!this.strategy||this.stopping)return null;const d=up(this.beans,e);d&&(d.onEditorAttachedFuncs=[]);const c=!s&&(!!this.shouldStopEditing(e,i,l)||(this.committing||"paste"===o)&&!this.batch)||n,u=s&&!!this.shouldCancelEditing(e,i,l)||r;return{cancel:s,cellCtrl:d,edits:this.model.getEditMap(!0),event:i??null,forceCancel:r,forceStop:n,commit:a,position:e,source:o,treatAsSource:l,willCancel:u,willStop:c}}processStopRequest(e){const{event:t,position:i,willCancel:s,willStop:o}=e;return o||s?this.handleStopOrCancel(e):this.shouldHandleMidBatchKey(t,i)?{res:!1,edits:this.handleMidBatchKey(t,i,e)}:(yp(this.beans,{persist:!0}),this.batch&&this.strategy?.cleanupEditors(i),{res:!1,edits:this.model.getEditMap()})}handleStopOrCancel(e){const{beans:t,model:i}=this,{cancel:s,commit:o,edits:r,event:n,source:a,willCancel:l,willStop:d}=e;yp(t,{persist:!this.batch||!l,isCancelling:l||s,isStopping:d});const c=i.getEditMap(),u=!l&&(!this.batch||o)?this.processEdits(c,a):[];s?this.strategy?.stopCancelled(e.forceCancel):this.strategy?.stopCommitted(n,o),this.clearValidationIfNoOpenEditors();for(const e of u)i.clearEditValue(e);this.bulkRefresh(void 0,r);for(const e of i.getEditPositions(c)){const i=up(t,e),s=mp(e);i?.refreshCell({force:!0,suppressFlash:!s})}return{res:d,edits:c}}shouldHandleMidBatchKey(e,t){return e instanceof KeyboardEvent&&this.batch&&!!this.strategy?.midBatchInputsAllowed(t)&&this.isEditing(t,{withOpenEditor:!0})}handleMidBatchKey(e,t,i){const{beans:s,model:o}=this,{cellCtrl:r,edits:n}=i,{key:a}=e,l=a===To.ENTER,d=a===To.ESCAPE,c=a===To.TAB;if(l||c||d){if(l||c)yp(s,{persist:!0});else if(d&&r){const{rowNode:e,column:t}=r;if(this.batch&&e&&t){const i={rowNode:e,column:t};Fp(s,[i],{silent:!0}),this.model.stop(i,!0,!0),up(s,i)?.refreshCell(UC)}else this.revertSingleCellEdit(r)}return this.batch?this.strategy?.cleanupEditors():Fp(s,o.getEditPositions(),{event:e,cancel:d}),e.preventDefault(),this.bulkRefresh(t,n,{suppressFlash:!0}),o.getEditMap()}return n}finishStopEditing({cellCtrl:e,edits:t,params:i,position:s,res:o,commit:r,forceCancel:n,willCancel:a,willStop:l}){const d=this.beans;o&&s&&(this.batch&&!r||this.model.removeEdits(s)),this.navigateAfterEdit(i,e?.cellPosition),wp(d),this.clearValidationIfNoOpenEditors(),this.bulkRefresh();const{rowRenderer:c,formula:u}=d;if(a&&c.refreshRows({rowNodes:Array.from(t.keys())}),this.batch){u?u.refreshFormulas(!0):c.refreshRows({suppressFlash:!0,force:!0});const e=l&&r;(e||a&&n)&&this.dispatchBatchStopped(t,e)}}dispatchBatchStopped(e,t){let i;t&&(i=function(e){const t=new Map;for(const[i,s]of e){const e=new Map;for(const[t,i]of s)mp(i)&&e.set(t,i);e.size>0&&t.set(i,e)}return t}(e),i.size>0&&this.ensureBatchStarted()),this.batchStartDispatched&&(this.batchStartDispatched=!1,this.dispatchBatchEvent("batchEditingStopped",i??new Map))}clearValidationIfNoOpenEditors(){this.model.hasEdits(void 0,{withOpenEditor:!0})||(this.model.getCellValidationModel().clearCellValidationMap(),this.model.getRowValidationModel().clearRowValidationMap())}navigateAfterEdit(e,t){if(!e||!t)return;const{event:i,suppressNavigateAfterEdit:s}=e;if(!(i instanceof KeyboardEvent)||s)return;const{key:o,shiftKey:r}=i,n=this.gos.get("enterNavigatesVerticallyAfterEdit");if(o!==To.ENTER||!n)return;const a=r?To.UP:To.DOWN;this.beans.navigation?.navigateToNextCell(null,a,t,!1)}processEdits(e,t){const i=Array.from(e.keys()),s=this.model.getCellValidationModel().getCellValidationMap().size>0||this.model.getRowValidationModel().getRowValidationMap().size>0,o=[];for(const r of i){const i=e.get(r);for(const e of i.keys()){const n=i.get(e),a={rowNode:r,column:e};if(mp(n)&&!s){const i=up(this.beans,a);this.setNodeDataValue(r,e,n.pendingValue,i,t)||o.push(a)}}}return o}setNodeDataValue(e,t,i,s,o="edit"){const r=NC.has(o)?"edit":o;s&&(s.suppressRefreshCell=!0),this.committing=!0;try{return e.setDataValue(t,i,r)}finally{this.committing=!1,s&&(s.suppressRefreshCell=!1)}}syncEditAfterCommit(e,t){const i=this.model.getEdit(e);i&&"editing"!==i.state&&(t?this.beans.editModelSvc?.setEdit(e,{sourceValue:this.valueSvc.getValue(e.column,e.rowNode,"data")}):this.model.clearEditValue(e))}setEditMap(e,t){this.strategy??(this.strategy=this.createStrategy()),this.strategy?.setEditMap(e,t),this.bulkRefresh();let i=UC;t?.forceRefreshOfEditCellsOnly&&(i={...jC(e),...UC}),this.beans.rowRenderer.refreshCells(i)}dispatchEditValuesChanged({rowNode:e,column:t},i={}){if(!e||!t||!i)return;const{pendingValue:s,sourceValue:o}=i,{rowIndex:r,rowPinned:n,data:a}=e;this.beans.eventSvc.dispatchEvent({type:"cellEditValuesChanged",node:e,rowIndex:r,rowPinned:n,column:t,source:"api",data:a,newValue:s,oldValue:o,value:s,colDef:t.getColDef()})}bulkRefresh(e={},t,i={}){const{beans:s,gos:o}=this,{editModelSvc:r,rowModel:n}=s;yi(o)&&(e.rowNode&&e.column?this.refCell(e,this.model.getEdit(e),i):t&&r?.getEditMap(!1)?.forEach((e,t)=>{for(const s of e.keys())this.refCell({rowNode:t,column:s},e.get(s),i)}))}refCell({rowNode:e,column:t},i,s={}){const{beans:o,gos:r}=this,n=new Set([e]),a=new Set,l=e.pinnedSibling;l&&n.add(l);const d=e.sibling;d&&a.add(d);let c=e.parent;for(;c;)c.sibling?.footer&&r.get("groupTotalRow")||!c.parent&&c.sibling&&r.get("grandTotalRow")?a.add(c.sibling):a.add(c),c=c.parent;for(const e of n)this.dispatchEditValuesChanged({rowNode:e,column:t},i);for(const e of n)up(o,{rowNode:e,column:t})?.refreshCell(s);for(const e of a)up(o,{rowNode:e,column:t})?.refreshCell(s)}stopAllEditing(e=!1,t="ui"){this.isEditing()&&this.stopEditing(void 0,{cancel:e,source:t})}isCellEditable(e,t="ui"){const{gos:i,beans:s}=this,o=e.rowNode,r=e.column.getColDef();if(o.group&&null==r.groupRowEditable)if(i.get("treeData")){if(!o.data&&!i.get("enableGroupEdit"))return!1}else if(!i.get("enableGroupEdit"))return!1;const n="fullRow"===KC(i)?function(e,t,i="ui"){const s=MC(e,t);if(s||"ui"===i)return s;const{rowNode:o,column:r}=t;for(const t of e.colModel.getCols())if(t!==r&&MC(e,{rowNode:o,column:t}))return!0;return!1}(s,e,t):MC(s,e);return n&&(this.strategy??(this.strategy=this.createStrategy())),n}cellEditingInvalidCommitBlocks(){return"block"===this.gos.get("invalidEditValueMode")}checkNavWithValidation(e,t,i=!0){if(this.hasValidationErrors(e)){const s=up(this.beans,e);return this.cellEditingInvalidCommitBlocks()?(t?.preventDefault?.(),i&&(s&&!s.hasBrowserFocus()&&s.focusCell(),s?.comp?.getCellEditor()?.focusIn?.()),"block-stop"):(s&&this.revertSingleCellEdit(s),"revert-continue")}return"continue"}revertSingleCellEdit(e,t=!1){const i=up(this.beans,e);i?.comp?.getCellEditor()&&(Fp(this.beans,[e],{silent:!0}),this.model.clearEditValue(e),fp(this.beans,e,{silent:!0}),Ap(this.beans),i?.refreshCell(UC),t&&(i?.focusCell(),i?.comp?.getCellEditor()?.focusIn?.()))}hasValidationErrors(e){Ap(this.beans);const t=up(this.beans,e);t&&(t.refreshCell(UC),t.rowCtrl.rowEditStyleFeature?.applyRowStyles());let i=!1;return e?.rowNode?(i||(i=this.model.getRowValidationModel().hasRowValidation({rowNode:e.rowNode})),e.column&&(i||(i=this.model.getCellValidationModel().hasCellValidation({rowNode:e.rowNode,column:e.column})))):(i||(i=this.model.getCellValidationModel().getCellValidationMap().size>0),i||(i=this.model.getRowValidationModel().getRowValidationMap().size>0)),i}moveToNextCell(e,t,i,s="ui"){let o;const r=this.isEditing(),n=r&&"block-stop"===this.checkNavWithValidation(void 0,i);return e instanceof Np&&r&&(o=this.strategy?.moveToNextEditingCell(e,t,i,s,n)),null===o||(o=o||!!this.beans.focusSvc.focusedHeader,!1!==o||n||this.stopEditing()),o}getPendingEditValue(e,t,i){if("data"===i)return;if("batch"===i&&!this.batch)return;const s=this.model.getEdit({rowNode:e,column:t},WC);if(!s)return;if(this.stopping&&!this.batch&&!s.editorState?.cellStartedEditing)return;if("edit"===i){const e=s.editorValue;if(null!=e&&e!==pp)return e}const o=s.pendingValue;return o!==pp?o:void 0}getCellDataValue(e){const t=this.model.getEdit(e,WC);if(t){const e=t.pendingValue;if(e!==pp)return e;const i=t.sourceValue;if(null!=i)return i}return this.valueSvc.getValue(e.column,e.rowNode,"data")}addStopEditingWhenGridLosesFocus(e){!function(e,t,i){const{gos:s,popupSvc:o}=t;if(!s.get("stopEditingWhenCellsLoseFocus"))return;const r=e=>{const r=e.relatedTarget;if(null===Yr(r))return void hp(t);let n=i.some(e=>e.contains(r))&&s.isElementInThisInstance(r);n||(n=!!o&&(o.getActivePopups().some(e=>e.contains(r))||o.isElementWithinCustomPopup(r))),n||hp(t)};for(const t of i)e.addManagedElementListeners(t,{focusout:r})}(this,this.beans,e)}createPopupEditorWrapper(e){return new RC(e)}batchResetToSourceValue(e){if(!this.batch)return!1;const t=this.model.getEdit(e);if(!t)return!1;const{pendingValue:i,sourceValue:s,state:o}=t;return i!==s&&("editing"!==o&&(this.dispatchEditValuesChanged(e,{...t,pendingValue:s}),this.beans.editModelSvc?.removeEdits(e),this.bulkRefresh(e),!0))}setDataValue(e,t,i){try{const s=this.batch,o=this.isEditing(s?void 0:e);if((!o||this.committing)&&!_C.has(i))return;if(!o&&!s&&"paste"===i)return;const r=this.beans;let n;if(this.strategy??(this.strategy=this.createStrategy()),n=s?"ui":this.committing?i??"api":"api",!i||GC.has(i))return this.applyDirectValue(e,t,i);const a=this.applyExistingEdit(e,t,i,n);return void 0!==a?a:(Sp(r,e,t,0,void 0,{persist:!0}),this.ensureBatchStarted(),this.stopEditing(e,{source:n,suppressNavigateAfterEdit:!0}),!0)}finally{this.committing=!1}}applyExistingEdit(e,t,i,s){const o=this.model.getEdit(e);if(o)return o.pendingValue!==t&&(o.sourceValue!==t?(Sp(this.beans,e,t,0,void 0,{persist:!0}),this.ensureBatchStarted(),this.stopEditing(e,{source:s,suppressNavigateAfterEdit:!0}),!0):(this.beans.editModelSvc?.removeEdits(e),this.ensureBatchStarted(),this.dispatchEditValuesChanged(e,{...o,pendingValue:t}),!0))}applyDirectValue(e,t,i){const s=this.beans;if(this.batch)return Sp(s,e,t,0,void 0,{persist:!0}),this.cleanupEditors(),wp(s),this.ensureBatchStarted(),this.bulkRefresh(),!0;Sp(s,e,t,0,void 0,{persist:!0});const o=up(s,e),r=this.setNodeDataValue(e.rowNode,e.column,t,o,i);return this.syncEditAfterCommit(e,r),up(s,e)?.refreshCell(UC),r}handleColDefChanged(e){!function(e,t){const i=t.comp?.getCellEditor();if(!i?.refresh)return;const{eventKey:s,cellStartedEdit:o}=t.editCompDetails.params,{column:r}=t,n=vp(e,t,s,o),a=r.getColDef(),l=fr(e.userCompFactory,a,n);i.refresh(bp(l.params,s))}(this.beans,e)}destroy(){this.model.clear(),this.destroyStrategy(),super.destroy()}prepDetailsDuringBatch(e,t){const{model:i}=this;if(!this.batch)return;if(!i.hasRowEdits(e.rowNode,WC))return;const{rowNode:s}=e,{compDetails:o,valueToDisplay:r}=t;if(o){const{params:e}=o;return e.data=i.getEditRowDataValue(s,WC),{compDetails:o}}return{valueToDisplay:r}}cleanupEditors(){this.strategy?.cleanupEditors()}dispatchCellEvent(e,t,i,s){this.strategy?.dispatchCellEvent(e,t,i,s)}dispatchBatchEvent(e,t){this.eventSvc.dispatchEvent(this.createBatchEditEvent(e,t))}createBatchEditEvent(e,t){return ms(this.gos,{type:e,..."batchEditingStopped"===e?{changes:this.toEventChangeList(t)}:{}})}toEventChangeList(e){return this.model.getEditPositions(e).map(e=>({rowIndex:e.rowNode.rowIndex,rowPinned:e.rowNode.rowPinned,columnId:e.column.getColId(),newValue:e.pendingValue,oldValue:e.sourceValue}))}applyBulkEdit({rowNode:e,column:t},i){if(!i||0===i.length)return;const{beans:s,rangeSvc:o,valueSvc:r}=this,{formula:n}=s;yp(s,{persist:!0});const a=this.model.getEditMap(!0);let l=a.get(e)?.get(t)?.pendingValue,d=!1;this.batch||(this.eventSvc.dispatchEvent({type:"bulkEditingStarted"}),d=!0);const c=n?.isFormula(l)??!1;i.forEach(e=>{const t=e.columns.some(e=>e?.isAllowFormula());if(o?.forEachRowInRange(e,i=>{const o=Fn(s,i);if(void 0===o)return;const d=a.get(o)??new Map;let u=l;for(const t of e.columns){if(!t)continue;const e=!!c&&t.isAllowFormula();if(this.isCellEditable({rowNode:o,column:t},"api")){const e=r.getValue(t,o,"data",!0);let i=r.parseValue(t,o??null,u,e);Number.isNaN(i)&&(i=null),d.set(t,{editorValue:void 0,pendingValue:i,sourceValue:e,state:"changed",editorState:{isCancelAfterEnd:void 0,isCancelBeforeStart:void 0}})}e&&(u=n?.updateFormulaByOffset({value:u,columnDelta:1}))}d.size>0&&a.set(o,d),c&&t&&(l=n?.updateFormulaByOffset({value:l,rowDelta:1}))}),this.setEditMap(a),this.batch)return this.cleanupEditors(),wp(s),this.ensureBatchStarted(),void this.bulkRefresh();this.committing=!0;try{this.stopEditing(void 0,{source:"bulk"})}finally{this.committing=!1,d&&this.eventSvc.dispatchEvent({type:"bulkEditingStopped",changes:this.toEventChangeList(a)})}}),this.bulkRefresh();const u=up(s,{rowNode:e,column:t});u&&u.focusCell(!0)}createCellStyleFeature(e){return new kC(e,this.beans)}createRowStyleFeature(e){return new LC(e,this.beans)}setEditingCells(e,t){const{beans:i}=this,{colModel:s,valueSvc:o}=i,r=new Map;for(let{colId:n,column:a,colKey:l,rowIndex:d,rowPinned:c,newValue:u,state:h}of e){const e=n?s.getCol(n):l?s.getCol(l):a;if(!e)continue;const g=Fn(i,{rowIndex:d,rowPinned:c});if(!g)continue;const p=o.getValue(e,g,"data",!0);if(!t?.forceRefreshOfEditCellsOnly&&!mp({pendingValue:u,sourceValue:p})&&"editing"!==h)continue;let m=r.get(g);m||(m=new Map,r.set(g,m)),void 0===u&&(u=pp),m.set(e,{editorValue:void 0,pendingValue:u,sourceValue:p,state:h??"changed",editorState:{isCancelAfterEnd:void 0,isCancelBeforeStart:void 0}})}this.setEditMap(r,t)}onCellFocused(e){const t=up(this.beans,e);if(!t||!this.isEditing(t,WC))return;const i=this.model.getEdit(t);if(!i||!mp(i))return;const s=this.getLocaleTextFunc()("ariaPendingChange","Pending Change");this.beans.ariaAnnounce?.announceValue(s,"pendingChange")}allowedFocusTargetOnValidation(e){return up(this.beans,e)}}],apiFunctions:{getEditingCells:function(e){const t=e.editModelSvc?.getEditMap(),i=[];return t?.forEach((e,t)=>{const{rowIndex:s,rowPinned:o}=t;e.forEach((e,t)=>{const{editorValue:r,pendingValue:n,sourceValue:a,state:l}=e,d=mp(e);let c=r??n;c===pp&&(c=void 0);const u={newValue:c,oldValue:a,state:l,column:t,colId:t.getColId(),colKey:t.getColId(),rowIndex:s,rowPinned:o},h="editing"===l;(h||!h&&d)&&i.push(u)})}),i},getEditRowValues:function(e,t){return e.editModelSvc?.getEditRowDataValue(t,{checkSiblings:!0})},getCellEditorInstances:(e,t={})=>{const i=e.rowRenderer.getCellCtrls(t.rowNodes,t.columns),s=new Array(i.length);let o=0;for(let e=0,t=i.length;e0&&this.editSvc.cellEditingInvalidCommitBlocks()?{destroy:[],keep:e.all}:{destroy:e.all,keep:[]}}stopCancelled(e){return super.stopCancelled(e),this.clearPosition()}stopCommitted(e,t){return super.stopCommitted(e,t),this.clearPosition()}clearPosition(){return this.rowNode=void 0,this.column=void 0,!0}onCellFocusChanged(e){const{colModel:t,editSvc:i}=this.beans,{rowIndex:s,column:o,rowPinned:r}=e,n=Fn(this.beans,{rowIndex:s,rowPinned:r}),a=gp(o),l=t.getCol(a),d=e.previousParams;if(d){const e=gp(d.column);if(d?.rowIndex===s&&e===a&&d?.rowPinned===r)return}"cellFocused"==e.type&&(i?.isRangeSelectionEnabledWhileEditing()||i?.isEditing({rowNode:n,column:l},{withOpenEditor:!0}))||super.onCellFocusChanged(e)}moveToNextEditingCell(e,t,i,s="ui",o=!1){const r=this.beans.focusSvc.getFocusedCell();r&&(e=Rn(this.beans,r)??e);const n=e.cellPosition;let a;const l="fullRow"===this.beans.gos.get("editType");l&&this.model.suspend(!0),o||(e.eGui.focus(),this.editSvc?.stopEditing(e,{source:this.editSvc?.isBatchEditing()?"ui":"api",event:i}));try{a=this.beans.navigation?.findNextCellToFocusOn(n,{backwards:t,startEditing:!0})}finally{l&&this.model.suspend(!1)}if(!1===a)return null;if(null==a)return!1;const d=a.cellPosition,c=e.isCellEditable(),u=a.isCellEditable(),h=d&&n.rowIndex===d.rowIndex&&n.rowPinned===d.rowPinned;c&&!o&&this.setFocusOutOnEditor(e);const g=this.gos.get("suppressStartEditOnTab");if(h||o||(super.cleanupEditors(a,!0),g?a.focusCell(!0,i):this.editSvc.startEditing(a,{startedEdit:!0,event:i,source:s,ignoreEventKey:!0,editable:u})),u&&!o){if(a.focusCell(!1,i),g)a.focusCell(!0,i);else if(!a.comp?.getCellEditor()){const e=this.editSvc?.isEditing(a,{withOpenEditor:!0});fp(this.beans,a,{event:i,cellStartedEdit:!0,silent:e}),this.setFocusInOnEditor(a),this.cleanupEditors(a)}}else u&&o&&this.setFocusInOnEditor(a),a.focusCell(!0,i);return e.rowCtrl?.refreshRow({suppressFlash:!0,force:!0}),!0}destroy(){super.destroy(),this.rowNode=void 0,this.column=void 0}},fullRow:class extends $C{constructor(){super(...arguments),this.beanName="fullRow",this.startedRows=[]}shouldStop(e,t,i="ui"){const{rowNode:s}=e||{};if(!cp(this.beans,{rowNode:this.rowNode}))return!0;const o=super.shouldStop({rowNode:this.rowNode},t,i);return null!==o?o:!!this.rowNode&&s!==this.rowNode}midBatchInputsAllowed({rowNode:e}){return!!e&&this.model.hasEdits({rowNode:e})}clearEdits(e){this.model.clearEditValue(e)}start(e){const{position:t,silent:i,startedEdit:s,event:o,ignoreEventKey:r}=e,{rowNode:n}=t;this.rowNode!==n&&super.cleanupEditors(t);const a=this.beans.visibleCols.allCols,l=[],d=[];for(const e of a)e.isCellEditable(n)&&d.push(e);if(0!=d.length){this.dispatchRowEvent({rowNode:n},"rowEditingStarted",i),this.startedRows.push(n);for(const e of d){const t={rowNode:n,column:e};l.push(t),this.model.hasEdits(t)||this.model.start(t)}this.rowNode=n,this.setupEditors({cells:l,position:t,startedEdit:s,event:o,ignoreEventKey:r})}}processValidationResults(e){return e.fail.length>0&&this.editSvc.cellEditingInvalidCommitBlocks()?{destroy:[],keep:e.all}:{destroy:e.all,keep:[]}}stopCancelled(e){const{rowNode:t}=this;return!(t&&!this.model.hasRowEdits(t))&&(super.stopCancelled(e),this.cleanupEditors({rowNode:t},!0),this.rowNode=void 0,!0)}stopCommitted(e,t){const{rowNode:i}=this;if(i&&!this.model.hasRowEdits(i))return!1;const s=[];if(this.model.getEditMap().forEach((e,t)=>{if(e&&0!==e.size)for(const i of e.values())if(mp(i)){s.push(t);break}}),Ap(this.beans),"block-stop"===this.editSvc.checkNavWithValidation({rowNode:i}))return!1;if(super.stopCommitted(e,t),t||!this.editSvc.isBatchEditing())for(const e of s)this.dispatchRowEvent({rowNode:e},"rowValueChanged");return this.cleanupEditors({rowNode:i},!0),this.rowNode=void 0,!0}onCellFocusChanged(e){const{rowIndex:t}=e,i=e.previousParams;if(i?.rowIndex===t||e.sourceEvent instanceof KeyboardEvent)return;if(this.beans.editSvc?.isRangeSelectionEnabledWhileEditing())return;const s=up(this.beans,i);"block"===this.gos.get("invalidEditValueMode")&&s&&(this.model.getCellValidationModel().getCellValidation(s)||this.model.getRowValidationModel().getRowValidation(s))||super.onCellFocusChanged(e)}cleanupEditors(e={},t){super.cleanupEditors(e,t);for(const e of this.startedRows)this.dispatchRowEvent({rowNode:e},"rowEditingStopped"),this.destroyEditorsForRow(e);this.startedRows.length=0}destroyEditorsForRow(e){const t=cp(this.beans,{rowNode:e});if(!t)return;const i={};for(const e of t.getAllCellCtrls())e.comp?.getCellEditor()&&Rp(this.beans,e,i,e)}moveToNextEditingCell(e,t,i,s="ui",o=!1){const r=e.cellPosition;let n;this.model.suspend(!0);try{n=this.beans.navigation?.findNextCellToFocusOn(r,{backwards:t,startEditing:!0,skipToNextEditableCell:!1})}finally{this.model.suspend(!1)}if(!1===n)return null;if(null==n)return!1;const a=n.cellPosition,l=e.isCellEditable(),d=n.isCellEditable(),c=a&&r.rowIndex===a.rowIndex&&r.rowPinned===a.rowPinned;l&&this.setFocusOutOnEditor(e),this.restoreEditors();const u=this.gos.get("suppressStartEditOnTab");return d&&!o?u?n.focusCell(!0,i):(n.comp?.getCellEditor()||fp(this.beans,n,{event:i,cellStartedEdit:!0}),this.setFocusInOnEditor(n),n.focusCell(!1,i)):(d&&o&&this.setFocusInOnEditor(n),n.focusCell(!0,i)),c||o||(this.editSvc?.stopEditing({rowNode:e.rowNode},{event:i,forceStop:!0}),this.editSvc?.isRowEditing(e.rowNode,{withOpenEditor:!0})&&this.cleanupEditors(n,!0),u?n.focusCell(!0,i):this.editSvc.startEditing(n,{startedEdit:!0,event:i,source:s,ignoreEventKey:!0,editable:d||void 0})),e.rowCtrl?.refreshRow({suppressFlash:!0,force:!0}),!0}restoreEditors(){this.model.getEditMap().forEach((e,t)=>e.forEach(({state:e},i)=>{if("editing"!==e)return;const s=up(this.beans,{rowNode:t,column:i});s&&!s.comp?.getCellEditor()&&fp(this.beans,s,{silent:!0})}))}destroy(){super.destroy(),this.rowNode=void 0,this.startedRows.length=0}}},dependsOn:[Hf,$f],css:[".ag-cell-inline-editing{border:var(--ag-cell-editing-border)!important;border-radius:var(--ag-border-radius);box-shadow:var(--ag-cell-editing-shadow);padding:0;z-index:1;.ag-cell-edit-wrapper,.ag-cell-editor,.ag-cell-wrapper,:where(.ag-cell-editor) .ag-input-field-input,:where(.ag-cell-editor) .ag-wrapper{height:100%;line-height:normal;min-height:100%;width:100%}&.ag-cell-editing-error{border-color:var(--ag-invalid-color)!important}}:where(.ag-popup-editor) .ag-large-text{background-color:var(--ag-background-color);border-radius:var(--ag-border-radius);box-shadow:var(--ag-dropdown-shadow);padding:0}.ag-large-text-input{display:block;height:auto;padding:var(--ag-cell-horizontal-padding)}:where(.ag-rtl .ag-large-text-input) .ag-text-area-input{resize:none}:where(.ag-ltr) .ag-checkbox-edit{padding-left:var(--ag-cell-horizontal-padding)}:where(.ag-rtl) .ag-checkbox-edit{padding-right:var(--ag-cell-horizontal-padding)}:where(.ag-row.ag-row-editing-invalid .ag-cell-inline-editing){opacity:.8}.ag-popup-editor{position:absolute;-webkit-user-select:none;-moz-user-select:none;user-select:none}"]},YC={moduleName:"UndoRedoEdit",version:ii,beans:[class extends wt{constructor(){super(...arguments),this.beanName="undoRedo",this.cellValueChanges=[],this.activeCellEdit=null,this.activeRowEdit=null,this.isPasting=!1,this.isRangeInAction=!1,this.batchEditing=!1,this.bulkEditing=!1,this.onCellValueChanged=e=>{const t={column:e.column,rowIndex:e.rowIndex,rowPinned:e.rowPinned},i=null!==this.activeCellEdit&&wn(this.activeCellEdit,t),s=null!==this.activeRowEdit&&yn(this.activeRowEdit,t);if(!(i||s||this.isPasting||this.isRangeInAction))return;const{rowPinned:o,rowIndex:r,column:n,oldValue:a,value:l}=e,d={rowPinned:o,rowIndex:r,columnId:n.getColId(),newValue:l,oldValue:a};this.cellValueChanges.push(d)},this.clearStacks=()=>{this.undoStack.clear(),this.redoStack.clear()}}postConstruct(){const{gos:e,ctrlsSvc:t}=this.beans;if(!e.get("undoRedoCellEditing"))return;const i=e.get("undoRedoCellEditingLimit");if(i<=0)return;this.undoStack=new Xf(i),this.redoStack=new Xf(i),this.addListeners();const s=this.clearStacks.bind(this);this.addManagedEventListeners({cellValueChanged:this.onCellValueChanged.bind(this),modelUpdated:e=>{e.keepUndoRedoStack||this.clearStacks()},columnPivotModeChanged:s,newColumnsLoaded:s,columnGroupOpened:s,columnRowGroupChanged:s,columnMoved:s,columnPinned:s,columnVisible:s,rowDragEnd:s}),t.whenReady(this,e=>{this.gridBodyCtrl=e.gridBodyCtrl})}getCurrentUndoStackSize(){return this.undoStack?.getCurrentStackSize()??0}getCurrentRedoStackSize(){return this.redoStack?.getCurrentStackSize()??0}undo(e){const{eventSvc:t,undoStack:i,redoStack:s}=this;t.dispatchEvent({type:"undoStarted",source:e});const o=this.undoRedo(i,s,"initialRange","oldValue","undo");t.dispatchEvent({type:"undoEnded",source:e,operationPerformed:o})}redo(e){const{eventSvc:t,undoStack:i,redoStack:s}=this;t.dispatchEvent({type:"redoStarted",source:e});const o=this.undoRedo(s,i,"finalRange","newValue","redo");t.dispatchEvent({type:"redoEnded",source:e,operationPerformed:o})}undoRedo(e,t,i,s,o){if(!e)return!1;const r=e.pop();return!!r?.cellValueChanges&&(this.processAction(r,e=>e[s],o),r instanceof Yf?this.processRange(r.ranges||[r[i]]):this.processCell(r.cellValueChanges),t.push(r),!0)}processAction(e,t,i){for(const s of e.cellValueChanges){const{rowIndex:e,rowPinned:o,columnId:r}=s,n={rowIndex:e,rowPinned:o},a=Fn(this.beans,n);a.displayed&&a.setDataValue(r,t(s),i)}}processRange(e){let t;const i=this.beans.rangeSvc;i.removeAllCellRanges(!0),e.forEach((s,o)=>{if(!s)return;const r=s.startRow,n=s.endRow;o===e.length-1&&(t={rowPinned:r.rowPinned,rowIndex:r.rowIndex,columnId:s.startColumn.getColId()},this.setLastFocusedCell(t));const a={rowStartIndex:r.rowIndex,rowStartPinned:r.rowPinned,rowEndIndex:n.rowIndex,rowEndPinned:n.rowPinned,columnStart:s.startColumn,columns:s.columns};i.addCellRange(a)})}processCell(e){const t=e[0],{rowIndex:i,rowPinned:s}=t,o={rowIndex:i,rowPinned:s},r=Fn(this.beans,o),n={rowPinned:t.rowPinned,rowIndex:r.rowIndex,columnId:t.columnId};this.setLastFocusedCell(n)}setLastFocusedCell(e){const{rowIndex:t,columnId:i,rowPinned:s}=e,{colModel:o,focusSvc:r,rangeSvc:n}=this.beans,a=o.getCol(i);if(!a)return;const{scrollFeature:l}=this.gridBodyCtrl;l.ensureIndexVisible(t),l.ensureColumnVisible(a);const d={rowIndex:t,column:a,rowPinned:s};r.setFocusedCell({...d,forceBrowserFocus:!0}),n?.setRangeToCell(d)}addListeners(){this.addManagedEventListeners({rowEditingStarted:e=>{this.activeRowEdit={rowIndex:e.rowIndex,rowPinned:e.rowPinned}},rowEditingStopped:()=>{const e=new qf(this.cellValueChanges);this.pushActionsToUndoStack(e),this.activeRowEdit=null},cellEditingStarted:e=>{this.activeCellEdit={column:e.column,rowIndex:e.rowIndex,rowPinned:e.rowPinned}},cellEditingStopped:e=>{this.activeCellEdit=null;if(e.valueChanged&&!this.activeRowEdit&&!this.isPasting&&!this.isRangeInAction){const e=new qf(this.cellValueChanges);this.pushActionsToUndoStack(e)}},pasteStart:()=>{this.isPasting=!0},pasteEnd:()=>{const e=new qf(this.cellValueChanges);this.pushActionsToUndoStack(e),this.isPasting=!1},fillStart:()=>{this.isRangeInAction=!0},fillEnd:e=>{const t=new Yf(this.cellValueChanges,e.initialRange,e.finalRange);this.pushActionsToUndoStack(t),this.isRangeInAction=!1},keyShortcutChangedCellStart:()=>{this.isRangeInAction=!0},keyShortcutChangedCellEnd:()=>{let e;const{rangeSvc:t,gos:i}=this.beans;e=t&&Qi(i)?new Yf(this.cellValueChanges,void 0,void 0,[...t.getCellRanges()]):new qf(this.cellValueChanges),this.pushActionsToUndoStack(e),this.isRangeInAction=!1},batchEditingStarted:()=>this.startBigChange("batchEditing"),batchEditingStopped:({changes:e})=>this.stopBigChange("batchEditing",e),bulkEditingStarted:()=>this.startBigChange("bulkEditing"),bulkEditingStopped:({changes:e})=>this.stopBigChange("bulkEditing",e)})}startBigChange(e){this.updateBigChange(e,!0)}updateBigChange(e,t){"bulkEditing"===e?this.bulkEditing=t:this.batchEditing=t}stopBigChange(e,t){if("bulkEditing"===e&&!this.bulkEditing||"batchEditing"===e&&!this.batchEditing)return;if(this.updateBigChange(e,!1),0===t?.length)return;const i=new qf(t??[]);this.pushActionsToUndoStack(i),this.cellValueChanges=[]}pushActionsToUndoStack(e){this.undoStack.push(e),this.cellValueChanges=[],this.redoStack.clear()}}],apiFunctions:{undoCellEditing:function(e){e.undoRedo?.undo("api")},redoCellEditing:function(e){e.undoRedo?.redo("api")},getCurrentUndoSize:function(e){return e.undoRedo?.getCurrentUndoStackSize()??0},getCurrentRedoSize:function(e){return e.undoRedo?.getCurrentRedoStackSize()??0}},dependsOn:[qC]},XC={moduleName:"TextEditor",version:ii,userComponents:{agCellEditor:xC,agTextCellEditor:xC},dependsOn:[qC]},ZC={moduleName:"NumberEditor",version:ii,userComponents:{agNumberCellEditor:{classImp:class extends iC{constructor(){super(new gC(()=>this.getLocaleTextFunc()))}}}},dependsOn:[qC]},QC={moduleName:"DateEditor",version:ii,userComponents:{agDateCellEditor:class extends iC{constructor(){super(new oC(()=>this.beans.dataTypeSvc,()=>this.getLocaleTextFunc()))}},agDateStringCellEditor:class extends iC{constructor(){super(new nC(()=>this.beans.dataTypeSvc,()=>this.getLocaleTextFunc()))}}},dependsOn:[qC]},JC={moduleName:"CheckboxEditor",version:ii,userComponents:{agCheckboxCellEditor:class extends fa{constructor(){super(Zf,[Pa]),this.eEditor=Lo}initialiseEditor(e){const t=e.value??void 0,i=this.eEditor;i.setValue(t);i.getInputElement().setAttribute("tabindex","-1"),this.setAriaLabel(t),this.addManagedListeners(i,{fieldValueChanged:e=>this.setAriaLabel(e.selected)})}getValue(){return this.eEditor.getValue()}focusIn(){this.eEditor.getFocusableElement().focus()}afterGuiAttached(){this.params.cellStartedEdit&&this.focusIn()}isPopup(){return!1}setAriaLabel(e){const t=this.getLocaleTextFunc(),i=he(t,e),s=t("ariaToggleCellValue","Press SPACE to toggle cell value");this.eEditor.setInputAriaLabel(`${s} (${i})`)}getValidationElement(e){return e?this.params.eGridCell:this.eEditor.getInputElement()}getValidationErrors(){const{params:e}=this,{getValidationErrors:t}=e,i=this.getValue();return t?t({value:i,internalErrors:null,cellEditorParams:e}):null}}},dependsOn:[qC]},ev={moduleName:"SelectEditor",version:ii,userComponents:{agSelectCellEditor:class extends fa{constructor(){super(bC,[wC]),this.eEditor=Lo,this.startedByEnter=!1}wireBeans(e){this.valueSvc=e.valueSvc}initialiseEditor(e){this.focusAfterAttached=e.cellStartedEdit;const{eEditor:t,valueSvc:i,gos:s}=this,{values:o,value:r,eventKey:n}=e;if(C(o))return void gi(58);this.startedByEnter=null!=n&&n===To.ENTER;let a=!1;o.forEach(s=>{const o={value:s},n=i.formatValue(e.column,null,s),l=null!=n;o.text=l?n:s,t.addOption(o),a=a||r===s}),a?t.setValue(e.value,!0):e.values.length&&t.setValue(e.values[0],!0);const{valueListGap:l,valueListMaxWidth:d,valueListMaxHeight:c}=e;null!=l&&t.setPickerGap(l),null!=c&&t.setPickerMaxHeight(c),null!=d&&t.setPickerMaxWidth(d),"fullRow"!==s.get("editType")&&this.addManagedListeners(this.eEditor,{selectedItem:()=>e.stopEditing()})}afterGuiAttached(){this.focusAfterAttached&&this.eEditor.getFocusableElement().focus(),this.startedByEnter&&setTimeout(()=>{this.isAlive()&&this.eEditor.showPicker()})}focusIn(){this.eEditor.getFocusableElement().focus()}getValue(){return this.eEditor.getValue()}isPopup(){return!1}getValidationElement(){return this.eEditor.getAriaElement()}getValidationErrors(){const{params:e}=this,{values:t,getValidationErrors:i}=e,s=this.getValue();let o=[];if(t&&!t.includes(s)){const e=this.getLocaleTextFunc();o.push(e("invalidSelectionValidation","Invalid selection."))}else o=null;return i?i({value:s,internalErrors:o,cellEditorParams:e}):o}}},dependsOn:[qC]},tv={moduleName:"LargeTextEditor",version:ii,userComponents:{agLargeTextCellEditor:class extends fa{constructor(){super(dC,[lC]),this.eEditor=Lo}initialiseEditor(e){const{eEditor:t}=this,{cellStartedEdit:i,eventKey:s,maxLength:o,cols:r,rows:n}=e;let a;this.focusAfterAttached=i,t.getInputElement().setAttribute("title",""),t.setMaxLength(o||200).setCols(r||60).setRows(n||10),i?(this.focusAfterAttached=!0,s===To.BACKSPACE||s===To.DELETE?a="":s&&1===s.length?a=s:(a=this.getStartValue(e),s!==To.F2&&(this.highlightAllOnFocus=!0))):(this.focusAfterAttached=!1,a=this.getStartValue(e)),null!=a&&t.setValue(a,!0),this.addGuiEventListener("keydown",this.onKeyDown.bind(this)),this.activateTabIndex()}getStartValue(e){const{value:t}=e;return t?.toString()??t}onKeyDown(e){const t=e.key;(t===To.LEFT||t===To.UP||t===To.RIGHT||t===To.DOWN||e.shiftKey&&t===To.ENTER)&&e.stopPropagation()}afterGuiAttached(){const{eEditor:e,focusAfterAttached:t,highlightAllOnFocus:i}=this,s=this.getLocaleTextFunc();e.setInputAriaLabel(s("ariaInputEditor","Input Editor")),t&&(e.getFocusableElement().focus(),i&&e.getInputElement().select())}getValue(){const{eEditor:e,params:t}=this,{value:i}=t,s=e.getValue();return f(s)||f(i)?t.parseValue(s):i}getValidationElement(){return this.eEditor.getInputElement()}getValidationErrors(){const{params:e}=this,{maxLength:t,getValidationErrors:i}=e,s=this.getLocaleTextFunc(),o=this.getValue();let r=[];return"string"==typeof o&&null!=t&&o.length>t&&r.push(s("maxLengthValidation",`Must be ${t} characters or fewer.`,[String(t)])),r.length||(r=null),i?i({value:o,internalErrors:r,cellEditorParams:e}):r}}},dependsOn:[qC]},iv={moduleName:"CustomEditor",version:ii,dependsOn:[qC]},sv={agSetColumnFilter:"agSetColumnFilterHandler",agMultiColumnFilter:"agMultiColumnFilterHandler",agGroupColumnFilter:"agGroupColumnFilterHandler",agNumberColumnFilter:"agNumberColumnFilterHandler",agBigIntColumnFilter:"agBigIntColumnFilterHandler",agDateColumnFilter:"agDateColumnFilterHandler",agTextColumnFilter:"agTextColumnFilterHandler"},ov=new Set(Object.values(sv));function rv(e,t){const i=e.filterUi;if(!i)return null;if(i.created)return i.promise;if(t)return null;const s=i.create(i.refreshed),o=i;return o.created=!0,o.promise=s,s}function nv(e,t,i,s,o,r,n){return t.refresh?.({...i,model:s,source:r,additionalEventAttributes:n}),e().then(e=>{if(e){const{filter:t,filterParams:i}=e;av(t,i,s,o,r,n)}})}function av(e,t,i,s,o,r){e?.refresh?.({...t,model:i,state:s,source:o,additionalEventAttributes:r})}function lv(e,t,i,s){const o=e();o?.created&&o.promise.then(e=>{const r=t();av(e,o.filterParams,r,i()??{model:r},"ui",s)})}function dv(e){let t,i,s=!1;const{action:o,filterParams:r,getFilterUi:n,getModel:a,getState:l,updateState:d,updateModel:c,processModelToApply:u}=e;switch(o){case"apply":{const e=l();i=e?.model??null,u&&(i=u(i)),t={state:e?.state,model:i},s=!0;break}case"clear":t={model:null},r?.buttons?.includes("apply")||(s=!0,i=null);break;case"reset":t={model:null},s=!0,i=null;break;case"cancel":t={model:a()}}d(t),s?c(i):lv(n,a,l,{fromAction:o})}function cv(e,t){return e[t]??null}function uv(e,t,i){e.menuVisible!==t&&(e.menuVisible=t,e.dispatchColEvent("menuVisibleChanged",i))}function hv(e){const{enterpriseMenuFactory:t,filterMenuFactory:i,gos:s}=e;return t&&cs(s)?t:i}var gv={moduleName:"SharedMenu",version:ii,beans:[class extends wt{constructor(){super(...arguments),this.beanName="menuSvc"}postConstruct(){const{enterpriseMenuFactory:e,filterMenuFactory:t}=this.beans;this.activeMenuFactory=e??t}showColumnMenu(e){this.showColumnMenuCommon(this.activeMenuFactory,e,"columnMenu")}showFilterMenu(e){this.showColumnMenuCommon(hv(this.beans),e,e.containerType,!0)}showHeaderContextMenu(e,t,i){this.activeMenuFactory?.showMenuAfterContextMenuEvent(e,t,i)}hidePopupMenu(){this.beans.contextMenuSvc?.hideActiveMenu(),this.activeMenuFactory?.hideActiveMenu()}hideFilterMenu(){hv(this.beans)?.hideActiveMenu()}isColumnMenuInHeaderEnabled(e){const{suppressHeaderMenuButton:t}=e.getColDef();return!t&&!!this.activeMenuFactory?.isMenuEnabled(e)&&(cs(this.gos)||!!this.beans.enterpriseMenuFactory)}isFilterMenuInHeaderEnabled(e){return!e.getColDef().suppressHeaderFilterButton&&!!this.beans.filterManager?.isFilterAllowed(e)}isHeaderContextMenuEnabled(e){const t=e&&ys(e)?e.getColDef():e?.getColGroupDef();return!t?.suppressHeaderContextMenu&&"new"===this.gos.get("columnMenu")}isHeaderMenuButtonAlwaysShowEnabled(){return this.isSuppressMenuHide()}isHeaderMenuButtonEnabled(){const e=!this.isSuppressMenuHide();return!(qr()&&e)}isHeaderFilterButtonEnabled(e){return this.isFilterMenuInHeaderEnabled(e)&&!cs(this.gos)&&!this.isFloatingFilterButtonDisplayed(e)}isFilterMenuItemEnabled(e){return!(!this.beans.filterManager?.isFilterAllowed(e)||cs(this.gos)||this.isFilterMenuInHeaderEnabled(e)||this.isFloatingFilterButtonDisplayed(e))}isFloatingFilterButtonEnabled(e){return!e.getColDef().suppressFloatingFilterButton}isFloatingFilterButtonDisplayed(e){return!!e.getColDef().floatingFilter&&this.isFloatingFilterButtonEnabled(e)}isSuppressMenuHide(){const e=this.gos,t=e.get("suppressMenuHide");return cs(e)?!!e.exists("suppressMenuHide")&&t:t}showColumnMenuCommon(e,t,i,s){const{positionBy:o,onClosedCallback:r}=t,n=t.column;if("button"===o){const{buttonElement:o}=t;e?.showMenuAfterButtonClick(n,o,i,r,s)}else if("mouse"===o){const{mouseEvent:o}=t;e?.showMenuAfterMouseEvent(n,o,i,r,s)}else if(n){const t=this.beans,o=t.ctrlsSvc;o.getScrollFeature().ensureColumnVisible(n,"auto"),Ye(t,()=>{const t=o.getHeaderRowContainerCtrl(n.getPinned())?.getHeaderCtrlForColumn(n);t&&e?.showMenuAfterButtonClick(n,t.getAnchorElementForMenu(s),i,r,s)})}}}],apiFunctions:{showColumnMenu:function(e,t){const i=e.colModel.getCol(t);i?e.menuSvc?.showColumnMenu({column:i,positionBy:"auto"}):pi(12,{colKey:t})},hidePopupMenu:function(e){e.menuSvc?.hidePopupMenu()}}};var pv={january:"January",february:"February",march:"March",april:"April",may:"May",june:"June",july:"July",august:"August",september:"September",october:"October",november:"November",december:"December"},mv=["january","february","march","april","may","june","july","august","september","october","november","december"];function fv(e,t){return null==e?-1:null==t?1:Number.parseFloat(e)-Number.parseFloat(t)}function Cv(e,t){if(null==e)return-1;if(null==t)return 1;const i=Hc(e),s=Hc(t);return null!=i&&null!=s?i===s?0:i>s?1:-1:String(e).localeCompare(String(t))}function vv(e){return e instanceof Date&&!isNaN(e.getTime())}var wv={number:()=>{},bigint:()=>{},boolean:()=>({maxNumConditions:1,debounceMs:0,filterOptions:["empty",{displayKey:"true",displayName:"True",predicate:(e,t)=>t,numberOfInputs:0},{displayKey:"false",displayName:"False",predicate:(e,t)=>!1===t,numberOfInputs:0}]}),date:()=>({isValidDate:vv}),dateString:({dataTypeDefinition:e})=>({comparator:(t,i)=>{const s=e.dateParser(i);return null==i||st?1:0},isValidDate:t=>"string"==typeof t&&vv(e.dateParser(t))}),dateTime:e=>wv.date(e),dateTimeString:e=>wv.dateString(e),object:()=>{},text:()=>{}},bv={number:()=>({comparator:fv}),bigint:()=>({comparator:Cv}),boolean:({t:e})=>({valueFormatter:t=>f(t.value)?e(String(t.value),t.value?"True":"False"):e("blanks","(Blanks)")}),date:({formatValue:e,t:t})=>({valueFormatter:i=>{const s=e(i);return f(s)?s:t("blanks","(Blanks)")},treeList:!0,treeListFormatter:(e,i)=>{if("NaN"===e)return t("invalidDate","Invalid Date");if(1===i&&null!=e){const i=mv[Number(e)-1];return t(i,pv[i])}return e??t("blanks","(Blanks)")},treeListPathGetter:e=>$c(e,!1)}),dateString:({formatValue:e,dataTypeDefinition:t,t:i})=>({valueFormatter:t=>{const s=e(t);return f(s)?s:i("blanks","(Blanks)")},treeList:!0,treeListPathGetter:e=>$c(t.dateParser(e??void 0),!1),treeListFormatter:(e,t)=>{if(1===t&&null!=e){const t=mv[Number(e)-1];return i(t,pv[t])}return e??i("blanks","(Blanks)")}}),dateTime:e=>{const t=bv.date(e);return t.treeListPathGetter=$c,t},dateTimeString(e){const t=e.dataTypeDefinition.dateParser,i=bv.dateString(e);return i.treeListPathGetter=e=>$c(t(e??void 0)),i},object:({formatValue:e,t:t})=>({valueFormatter:i=>{const s=e(i);return f(s)?s:t("blanks","(Blanks)")}}),text:()=>{}};function yv(e,t,i,s,o,r,n){let a=t,l=i;const d="agSetColumnFilter"===e;l||"object"!==s.baseDataType||d||(l=({column:e,node:t})=>o({column:e,node:t,value:r.valueSvc.getValue(e,t,"data")}));const c=(0,(d?bv:wv)[s.baseDataType])({dataTypeDefinition:s,formatValue:o,t:n});return a="object"==typeof t?{...c,...t}:c,{filterParams:a,filterValueGetter:l}}var Sv={boolean:"agTextColumnFilter",date:"agDateColumnFilter",dateString:"agDateColumnFilter",dateTime:"agDateColumnFilter",dateTimeString:"agDateColumnFilter",bigint:"agBigIntColumnFilter",number:"agNumberColumnFilter",object:"agTextColumnFilter",text:"agTextColumnFilter"},xv={boolean:"agTextColumnFloatingFilter",date:"agDateColumnFloatingFilter",dateString:"agDateColumnFloatingFilter",dateTime:"agDateColumnFloatingFilter",dateTimeString:"agDateColumnFloatingFilter",bigint:"agBigIntColumnFloatingFilter",number:"agNumberColumnFloatingFilter",object:"agTextColumnFloatingFilter",text:"agTextColumnFloatingFilter"};function Fv(e,t=!1){return(t?xv:Sv)[e??"text"]}function Rv(e,t,i){if(null==t)return null;let s=null;const{compName:o,jsComp:r,fwComp:n}=wr(e,t);if(o){s={agSetColumnFilter:"agSetColumnFloatingFilter",agMultiColumnFilter:"agMultiColumnFloatingFilter",agGroupColumnFilter:"agGroupColumnFloatingFilter",agNumberColumnFilter:"agNumberColumnFloatingFilter",agBigIntColumnFilter:"agBigIntColumnFloatingFilter",agDateColumnFilter:"agDateColumnFloatingFilter",agTextColumnFilter:"agTextColumnFloatingFilter"}[o]}else{null==r&&null==n&&!0===t.filter&&(s=i())}return s}var Pv={filterHandler:()=>({doesFilterPass:()=>!0})};function Mv(e,t,i,s){if(!e.isPrimary())return!0;const o=!i;return!(!e.isValueActive()||!o)&&(!!t||s)}var Ev={tag:"div",cls:"ag-floating-filter-input",role:"presentation",children:[{tag:"ag-input-text-field",ref:"eFloatingFilterText"}]},Av=class extends Ra{constructor(e){super(e,"ag-radio-button","radio")}isSelected(){return this.eInput.checked}toggle(){this.eInput.disabled||this.isSelected()||this.setValue(!0)}addInputListeners(){super.addInputListeners(),this.addManagedEventListeners({checkboxChanged:this.onChange.bind(this)})}onChange(e){const t=this.eInput;e.selected&&e.name&&t.name&&t.name===e.name&&e.id&&t.id!==e.id&&this.setValue(!1,!0)}},Tv={selector:"AG-RADIO-BUTTON",component:Av},Dv=class{constructor(){this.customFilterOptions={}}init(e,t){this.filterOptions=e.filterOptions??t,this.mapCustomOptions(),this.defaultOption=this.getDefaultItem(e.defaultOption)}refresh(e,t){const i=e.filterOptions??t;this.filterOptions!==i&&(this.filterOptions=i,this.customFilterOptions={},this.mapCustomOptions()),this.defaultOption=this.getDefaultItem(e.defaultOption)}mapCustomOptions(){const{filterOptions:e}=this;if(e)for(const t of e){if("string"==typeof t)continue;[["displayKey"],["displayName"],["predicate","test"]].every(e=>!!e.some(e=>null!=t[e])||(gi(72,{keys:e}),!1))?this.customFilterOptions[t.displayKey]=t:this.filterOptions=e.filter(e=>e===t)||[]}}getDefaultItem(e){const{filterOptions:t}=this;if(e)return e;if(t.length>=1){const e=t[0];if("string"==typeof e)return e;if(e.displayKey)return e.displayKey;gi(73)}else gi(74)}getCustomOption(e){return this.customFilterOptions[e]}};function Iv(e,t,i){return null==i?e.splice(t):e.splice(t,i)}function kv(e){return null==e||"string"==typeof e&&0===e.trim().length}var Lv=new Set(["empty","notBlank","blank","today","yesterday","tomorrow","thisWeek","lastWeek","nextWeek","thisMonth","lastMonth","nextMonth","thisQuarter","lastQuarter","nextQuarter","thisYear","lastYear","nextYear","yearToDate","last7Days","last30Days","last90Days","last6Months","last12Months","last24Months"]);function Ov(e,t){const i=t.getCustomOption(e);if(i){const{numberOfInputs:e}=i;return null!=e?e:1}return e&&Lv.has(e)?0:"inRange"===e?2:1}var Gv=class extends fn{constructor(e,t,i){super(e,"simple-filter"),this.mapValuesFromModel=t,this.defaultOptions=i,this.eTypes=[],this.eJoinPanels=[],this.eJoinAnds=[],this.eJoinOrs=[],this.eConditionBodies=[],this.listener=()=>this.onUiChanged(),this.lastUiCompletePosition=null,this.joinOperatorId=0}setParams(e){super.setParams(e);const t=new Dv;this.optionsFactory=t,t.init(e,this.defaultOptions),this.commonUpdateSimpleParams(e),this.createOption(),this.createMissingConditionsAndOperators()}updateParams(e,t){this.optionsFactory.refresh(e,this.defaultOptions),super.updateParams(e,t),this.commonUpdateSimpleParams(e)}commonUpdateSimpleParams(e){var t;this.setNumConditions(e),this.defaultJoinOperator="AND"===(t=e.defaultJoinOperator)||"OR"===t?t:"AND",this.filterPlaceholder=e.filterPlaceholder,this.createFilterListOptions(),Ke(this.getGui(),"tabindex",this.isReadOnly()?"-1":null)}onFloatingFilterChanged(e,t){this.setTypeFromFloatingFilter(e),this.setValueFromFloatingFilter(t),this.onUiChanged("immediately",!0)}setTypeFromFloatingFilter(e){this.eTypes.forEach((t,i)=>{const s=0===i?e:this.optionsFactory.defaultOption;t.setValue(s,!0)})}getModelFromUi(){const e=this.getUiCompleteConditions();return 0===e.length?null:this.maxNumConditions>1&&e.length>1?{filterType:this.filterType,operator:this.getJoinOperator(),conditions:e}:e[0]}getConditionTypes(){return this.eTypes.map(e=>e.getValue())}getConditionType(e){return this.eTypes[e].getValue()}getJoinOperator(){const{eJoinOrs:e,defaultJoinOperator:t}=this;return 0===e.length?t:!0===e[0].getValue()?"OR":"AND"}areNonNullModelsEqual(e,t){const i=!e.operator,s=!t.operator;if(!i&&s||i&&!s)return!1;let o;if(i){const i=e,s=t;o=this.areSimpleModelsEqual(i,s)}else{const i=e,s=t;o=i.operator===s.operator&&d(i.conditions,s.conditions,(e,t)=>this.areSimpleModelsEqual(e,t))}return o}setModelIntoUi(e,t){if(null==e)return this.resetUiToDefaults(t),ko.resolve();if(e.operator){const t=e;let i=t.conditions;null==i&&(i=[],gi(77));const s=function(e,t){let i=e.length;return i>t&&(e.splice(t),gi(78),i=t),i}(i,this.maxNumConditions),o=this.getNumConditions();if(so)for(let e=o;ee.setValue(!r,!0)),this.eJoinOrs.forEach(e=>e.setValue(r,!0)),i.forEach((e,t)=>{this.eTypes[t].setValue(e.type,!0),this.setConditionIntoUi(e,t)})}else{const t=e;this.getNumConditions()>1&&this.removeConditionsAndOperators(1),this.eTypes[0].setValue(t.type,!0),this.setConditionIntoUi(t,0)}return this.lastUiCompletePosition=this.getNumConditions()-1,this.createMissingConditionsAndOperators(),this.updateUiVisibility(),t||this.params.onUiChange(this.getUiChangeEventParams()),ko.resolve()}setNumConditions(e){let t=e.maxNumConditions??2;t<1&&(gi(79),t=1),this.maxNumConditions=t;let i=e.numAlwaysVisibleConditions??1;i<1&&(gi(80),i=1),i>t&&(gi(81),i=t),this.numAlwaysVisibleConditions=i}createOption(){const e=this.getGui(),t=this.createManagedBean(new vC);this.eTypes.push(t),t.addCss("ag-filter-select"),e.appendChild(t.getGui());const i=this.createEValue();this.eConditionBodies.push(i),e.appendChild(i),this.putOptionsIntoDropdown(t),this.resetType(t);const s=this.getNumConditions()-1;this.forEachPositionInput(s,e=>this.resetInput(e)),this.addChangedListeners(t,s)}createJoinOperatorPanel(){const e=Go({tag:"div",cls:"ag-filter-condition"});this.eJoinPanels.push(e);const t=this.createJoinOperator(this.eJoinAnds,e,"and"),i=this.createJoinOperator(this.eJoinOrs,e,"or");this.getGui().appendChild(e);const s=this.eJoinPanels.length-1,o=this.joinOperatorId++;this.resetJoinOperatorAnd(t,s,o),this.resetJoinOperatorOr(i,s,o),this.isReadOnly()||(t.onValueChange(this.listener),i.onValueChange(this.listener))}createJoinOperator(e,t,i){const s=this.createManagedBean(new Av);e.push(s);const o="ag-filter-condition-operator";return s.addCss(o),s.addCss(`${o}-${i}`),t.appendChild(s.getGui()),s}createFilterListOptions(){this.filterListOptions=this.optionsFactory.filterOptions.map(e=>"string"==typeof e?this.createBoilerplateListOption(e):this.createCustomListOption(e))}putOptionsIntoDropdown(e){const{filterListOptions:t}=this;for(const i of t)e.addOption(i);e.setDisabled(t.length<=1)}createBoilerplateListOption(e){return{value:e,text:this.translate(e)}}createCustomListOption(e){const{displayKey:t}=e,i=this.optionsFactory.getCustomOption(e.displayKey);return{value:t,text:i?this.getLocaleTextFunc()(i.displayKey,i.displayName):this.translate(t)}}createBodyTemplate(){return null}getAgComponents(){return[]}updateUiVisibility(){const e=this.getJoinOperator();this.updateNumConditions(),this.updateConditionStatusesAndValues(this.lastUiCompletePosition,e)}updateNumConditions(){let e=-1,t=!0;for(let i=0;i0&&this.removeConditionsAndOperators(i,s),this.createMissingConditionsAndOperators()}}this.lastUiCompletePosition=e}updateConditionStatusesAndValues(e,t){this.eTypes.forEach((t,i)=>{const s=this.isConditionDisabled(i,e);t.setDisabled(s||this.filterListOptions.length<=1),1===i&&(be(this.eJoinPanels[0],s),this.eJoinAnds[0].setDisabled(s),this.eJoinOrs[0].setDisabled(s))}),this.eConditionBodies.forEach((e,t)=>{ve(e,this.isConditionBodyVisible(t))});const i="OR"===(t??this.getJoinOperator());for(const e of this.eJoinAnds)e.setValue(!i,!0);for(const e of this.eJoinOrs)e.setValue(i,!0);this.forEachInput((t,i,s,o)=>{this.setElementDisplayed(t,i=this.getNumConditions())return;const{eTypes:i,eConditionBodies:s,eJoinPanels:o,eJoinAnds:r,eJoinOrs:n}=this;this.removeComponents(i,e,t),this.removeElements(s,e,t),this.removeEValues(e,t);const a=Math.max(e-1,0);this.removeElements(o,a,t),this.removeComponents(r,a,t),this.removeComponents(n,a,t)}removeElements(e,t,i){const s=Iv(e,t,i);for(const e of s)De(e)}removeComponents(e,t,i){const s=Iv(e,t,i);for(const e of s)De(e.getGui()),this.destroyBean(e)}afterGuiAttached(e){if(super.afterGuiAttached(e),this.resetPlaceholder(),!e?.suppressFocus){let e;if(!this.isReadOnly()){const t=this.getInputs(0)[0];e=t instanceof Fa&&this.isConditionBodyVisible(0)?t.getInputElement():this.eTypes[0]?.getFocusableElement()}(e??this.getGui()).focus({preventScroll:!0})}}shouldKeepInvalidInputState(){return!1}afterGuiDetached(){super.afterGuiDetached();const e=this.params;if(this.beans.colFilter?.shouldKeepStateOnDetach(e.column)||this.shouldKeepInvalidInputState())return;e.onStateChange({model:e.model});let t=-1,i=-1,s=!1;const o=this.getJoinOperator();for(let e=this.getNumConditions()-1;e>=0;e--)if(this.isConditionUiComplete(e))-1===t&&(t=e,i=e);else{const o=e=this.numAlwaysVisibleConditions&&!this.isConditionUiComplete(e-1)||o)&&(this.removeConditionsAndOperators(e,1),s=!0,o&&i--)}let r=!1;this.getNumConditions(){if(!(s instanceof Fa))return;const a=0===o&&n>1?"inRangeStart":0===o?"filterOoo":"inRangeEnd",l=0===o&&n>1?e("ariaFilterFromValue","Filter from value"):0===o?e("ariaFilterValue","Filter Value"):e("ariaFilterToValue","Filter to Value"),d=i[r].getValue(),c=Er(this,t,a,d);s.setInputPlaceholder(c),s.setInputAriaLabel(l)})}setElementValue(e,t,i){e instanceof Fa&&e.setValue(null!=t?String(t):null,!0)}setElementDisplayed(e,t){Oo(e)&&ve(e.getGui(),t)}setElementDisabled(e,t){Oo(e)&&be(e.getGui(),t)}attachElementOnChange(e,t){e instanceof Fa&&e.onValueChange(t)}forEachInput(e){this.getConditionTypes().forEach((t,i)=>{this.forEachPositionTypeInput(i,t,e)})}forEachPositionInput(e,t){const i=this.getConditionType(e);this.forEachPositionTypeInput(e,i,t)}forEachPositionTypeInput(e,t,i){const s=Ov(t,this.optionsFactory),o=this.getInputs(e);for(let t=0;tt+1}isConditionBodyVisible(e){return Ov(this.getConditionType(e),this.optionsFactory)>0}isConditionUiComplete(e){if(e>=this.getNumConditions())return!1;return"empty"!==this.getConditionType(e)&&(!this.getValues(e).some(e=>null==e)&&!this.positionHasInvalidInputs(e))}getNumConditions(){return this.eTypes.length}getUiCompleteConditions(){const e=[];for(let t=0;tthis.resetType(e)),this.eJoinAnds.forEach((e,t)=>this.resetJoinOperatorAnd(e,t,this.joinOperatorId+t)),this.eJoinOrs.forEach((e,t)=>this.resetJoinOperatorOr(e,t,this.joinOperatorId+t)),this.joinOperatorId++,this.forEachInput(e=>this.resetInput(e)),this.resetPlaceholder(),this.createMissingConditionsAndOperators(),this.lastUiCompletePosition=null,this.updateUiVisibility(),e||this.params.onUiChange(this.getUiChangeEventParams())}resetType(e){const t=this.getLocaleTextFunc()("ariaFilteringOperator","Filtering operator");e.setValue(this.optionsFactory.defaultOption,!0).setAriaLabel(t).setDisabled(this.isReadOnly()||this.filterListOptions.length<=1)}resetJoinOperatorAnd(e,t,i){this.resetJoinOperator(e,t,"AND"===this.defaultJoinOperator,this.translate("andCondition"),i)}resetJoinOperatorOr(e,t,i){this.resetJoinOperator(e,t,"OR"===this.defaultJoinOperator,this.translate("orCondition"),i)}resetJoinOperator(e,t,i,s,o){this.updateJoinOperatorDisabled(e.setValue(i,!0).setName(`ag-simple-filter-and-or-${this.getCompId()}-${o}`).setLabel(s),t)}updateJoinOperatorsDisabled(){const e=(e,t)=>this.updateJoinOperatorDisabled(e,t);this.eJoinAnds.forEach(e),this.eJoinOrs.forEach(e)}updateJoinOperatorDisabled(e,t){e.setDisabled(this.isReadOnly()||t>0)}resetInput(e){this.setElementValue(e,null),this.setElementDisabled(e,this.isReadOnly())}setConditionIntoUi(e,t){const i=this.mapValuesFromModel(e,this.optionsFactory);this.forEachInput((e,s,o)=>{o===t&&this.setElementValue(e,null!=i[s]?i[s]:null)})}setValueFromFloatingFilter(e){this.forEachInput((t,i,s)=>{this.setElementValue(t,0===i&&0===s?e:null,!0)})}addChangedListeners(e,t){this.isReadOnly()||(e.onValueChange(this.listener),this.forEachPositionInput(t,e=>{this.attachElementOnChange(e,this.listener)}))}hasInvalidInputs(){return!1}positionHasInvalidInputs(e){return!1}isReadOnly(){return!!this.params.readOnly}},Nv=["equals","notEqual","greaterThan","greaterThanOrEqual","lessThan","lessThanOrEqual","inRange","blank","notBlank"];function Bv(e){return e?.allowedCharPattern??null}function Vv(e,t){const{filter:i,filterTo:s,type:o}=e||{};return[Hc(i),Hc(s)].slice(0,Ov(o,t))}var _v=class extends wt{constructor(e,t){super(),this.mapValuesFromModel=e,this.defaultOptions=t}init(e){const t=e.filterParams,i=new Dv;this.optionsFactory=i,i.init(t,this.defaultOptions),this.filterModelFormatter=this.createManagedBean(new this.FilterModelFormatterClass(i,t)),this.updateParams(e),this.validateModel(e)}refresh(e){if("colDef"===e.source){const t=e.filterParams,i=this.optionsFactory;i.refresh(t,this.defaultOptions),this.filterModelFormatter.updateParams({optionsFactory:i,filterParams:t}),this.updateParams(e)}this.validateModel(e)}updateParams(e){this.params=e}doesFilterPass(e){const t=e.model;if(null==t)return!0;const{operator:i}=t,s=[];if(i){const e=t;s.push(...e.conditions??[])}else s.push(t);const o=i&&"OR"===i?"some":"every",r=this.params.getValue(e.node);return s[o](t=>this.individualConditionPasses(e,t,r))}getModelAsString(e,t){return this.filterModelFormatter.getModelAsString(e,t)??""}validateModel(e){const{model:t,filterParams:{filterOptions:i,maxNumConditions:s}}=e;if(null==t)return;let o=Ir(t)?t.conditions:[t];const r=i?.map(e=>"string"==typeof e?e:e.displayKey)??this.defaultOptions;if(!(!o||o.every(e=>void 0!==r.find(t=>t===e.type))))return this.params={...e,model:null},void e.onModelChange(null);let n=!1;const a=this.filterType;if((o&&!o.every(e=>e.filterType===a)||t.filterType!==a)&&(o=o.map(e=>({...e,filterType:a})),n=!0),"number"==typeof s&&o&&o.length>s&&(o=o.slice(0,s),n=!0),n){const i=o.length>1?{...t,filterType:a,conditions:o}:{...o[0],filterType:a};this.params={...e,model:i},e.onModelChange(i)}}individualConditionPasses(e,t,i){const s=this.optionsFactory,o=this.mapValuesFromModel(t,s),r=function(e,t,i){if(null==e)return;const{predicate:s}=e;return null==s||t.some(e=>null==e)?void 0:s(t,i)}(s.getCustomOption(t.type),o,i);return null!=r?r:null==i?this.evaluateNullValue(t.type):this.evaluateNonNullValue(o,i,t,e)}},Hv=class extends _v{evaluateNullValue(e){const{includeBlanksInEquals:t,includeBlanksInNotEqual:i,includeBlanksInGreaterThan:s,includeBlanksInLessThan:o,includeBlanksInRange:r}=this.params.filterParams;switch(e){case"equals":if(t)return!0;break;case"notEqual":if(i)return!0;break;case"greaterThan":case"greaterThanOrEqual":if(s)return!0;break;case"lessThan":case"lessThanOrEqual":if(o)return!0;break;case"inRange":if(r)return!0;break;case"blank":return!0;case"notBlank":return!1}return!1}evaluateNonNullValue(e,t,i){const s=i.type;if(!this.isValid(t))return"notEqual"===s||"notBlank"===s;const o=this.comparator(),r=null!=e[0]?o(e[0],t):0;switch(s){case"equals":return 0===r;case"notEqual":return 0!==r;case"greaterThan":return r>0;case"greaterThanOrEqual":return r>=0;case"lessThan":return r<0;case"lessThanOrEqual":return r<=0;case"inRange":{const i=o(e[1],t);return this.params.filterParams.inRangeInclusive?r>=0&&i<=0:r>0&&i<0}case"blank":return kv(t);case"notBlank":return!kv(t);default:return gi(76,{filterModelType:s}),!0}}},zv={equals:"Equals",notEqual:"NotEqual",greaterThan:"GreaterThan",greaterThanOrEqual:"GreaterThanOrEqual",lessThan:"LessThan",lessThanOrEqual:"LessThanOrEqual",inRange:"InRange"},Wv={contains:"Contains",notContains:"NotContains",equals:"TextEquals",notEqual:"TextNotEqual",startsWith:"StartsWith",endsWith:"EndsWith",inRange:"InRange"},Uv=class extends wt{constructor(e,t,i){super(),this.optionsFactory=e,this.filterParams=t,this.valueFormatter=i}getModelAsString(e,t){const i=this.getLocaleTextFunc(),s="filterToolPanel"===t;if(!e)return s?Rr(this,"filterSummaryInactive"):null;if(null!=e.operator){const i=e,s=(i.conditions??[]).map(e=>this.getModelAsString(e,t)),o="AND"===i.operator?"andCondition":"orCondition";return s.join(` ${Rr(this,o)} `)}if("blank"===e.type||"notBlank"===e.type)return s?Rr(this,"blank"===e.type?"filterSummaryBlank":"filterSummaryNotBlank"):i(e.type,e.type);{const t=e,o=this.optionsFactory.getCustomOption(t.type),{displayKey:r,displayName:n,numberOfInputs:a}=o||{};return r&&n&&0===a?i(r,n):this.conditionToString(t,s,"inRange"===t.type||2===a,r,n)}}updateParams(e){const{optionsFactory:t,filterParams:i}=e;this.optionsFactory=t,this.filterParams=i}conditionForToolPanel(e,t,i,s,o,r){let n;const a=this.getTypeKey(e);return a&&(n=Rr(this,a)),o&&r&&(n=this.getLocaleTextFunc()(o,r)),null!=n?t?`${n} ${Rr(this,"filterSummaryInRangeValues",[i(),s()])}`:`${n} ${i()}`:null}getTypeKey(e){const t=this.filterTypeKeys[e];return t?`filterSummary${t}`:null}formatValue(e){const t=this.valueFormatter;return t?t(e??null)??"":String(e)}},jv=class extends Uv{constructor(e,t){super(e,t,t.bigintFormatter),this.filterTypeKeys=zv}conditionToString(e,t,i,s,o){const{filter:r,filterTo:n,type:a}=e,l=this.formatValue.bind(this),d=Hc(r),c=Hc(n);if(t){const e=this.conditionForToolPanel(a,i,()=>l(d),()=>l(c),s,o);if(null!=e)return e}return i?`${l(d)}-${l(c)}`:null!=r?l(d):`${a}`}},Kv=class extends wt{constructor(e){super(),this.params=e,this.eInput=Lo,this.onValueChanged=()=>{}}setupGui(e){this.eInput=this.createManagedBean(new Qf(this.params?.config));const t=this.eInput.getGui();e.appendChild(t);const i=e=>this.onValueChanged(e);this.addManagedListeners(t,{input:i,keydown:i})}setEditable(e){this.eInput.setDisabled(!e)}getValue(){return this.eInput.getValue()}setValue(e,t){this.eInput.setValue(e,t)}setValueChangedListener(e){this.onValueChanged=e}setParams({ariaLabel:e,autoComplete:t,placeholder:i}){const{eInput:s}=this;s.setInputAriaLabel(e),void 0!==t&&s.setAutoComplete(t),s.toggleCss("ag-floating-filter-search-icon",!!i),s.setInputPlaceholder(i)}};function $v(e){const t=e?.trim();return""===t?e:t}function qv(e,t){const{filter:i,filterTo:s,type:o}=e||{};return[i||null,s||null].slice(0,Ov(o,t))}var Yv=class extends Wo{constructor(){super(...arguments),this.defaultDebounceMs=0}setLastTypeFromModel(e){if(!e)return void(this.lastType=this.optionsFactory.defaultOption);let t;if(e.operator){t=e.conditions[0]}else t=e;this.lastType=t.type}canWeEditAfterModelFromParentFilter(e){if(!e)return this.isTypeEditable(this.lastType);if(e.operator)return!1;const t=e;return this.isTypeEditable(t.type)}init(e){this.params=e;const t=this.gos.get("enableFilterHandlers");if(this.reactive=t,this.setParams(e),t){const t=e;this.onModelUpdated(t.model)}}setParams(e){const t=new Dv;this.optionsFactory=t,t.init(e.filterParams,this.defaultOptions),this.filterModelFormatter=this.createManagedBean(new this.FilterModelFormatterClass(t,e.filterParams)),this.setSimpleParams(e,!1)}setSimpleParams(e,t=!0){const i=this.optionsFactory.defaultOption;t||(this.lastType=i),this.readOnly=!!e.filterParams.readOnly;const s=this.isTypeEditable(i);this.setEditable(s)}refresh(e){this.params=e;const t=e,i=this.reactive;if(i&&"colDef"!==t.source||this.updateParams(e),i){const{source:e,model:i}=t;if("dataChanged"===e||"ui"===e)return;this.onModelUpdated(i)}}updateParams(e){const t=this.optionsFactory;t.refresh(e.filterParams,this.defaultOptions),this.setSimpleParams(e),this.filterModelFormatter.updateParams({optionsFactory:t,filterParams:e.filterParams})}onParentModelChanged(e,t){t?.afterFloatingFilter||t?.afterDataChange||this.onModelUpdated(e)}isTypeEditable(e){return!!e&&!this.readOnly&&1===Ov(e,this.optionsFactory)}getAriaLabel(e){return`${this.beans.colNames.getDisplayNameForColumn(e,"header",!0)} ${this.getLocaleTextFunc()("ariaFilterInput","Filter Input")}`}},Xv={tag:"div",ref:"eFloatingFilterInputContainer",cls:"ag-floating-filter-input",role:"presentation"},Zv=class extends Yv{constructor(){super(...arguments),this.eFloatingFilterInputContainer=Lo,this.defaultDebounceMs=500}postConstruct(){this.setTemplate(Xv)}onModelUpdated(e){this.setLastTypeFromModel(e),this.setEditable(this.canWeEditAfterModelFromParentFilter(e)),this.inputSvc.setValue(this.filterModelFormatter.getModelAsString(e))}setParams(e){this.setupFloatingFilterInputService(e),super.setParams(e),this.setTextInputParams(e)}setupFloatingFilterInputService(e){this.inputSvc=this.createFloatingFilterInputService(e),this.inputSvc.setupGui(this.eFloatingFilterInputContainer)}setTextInputParams(e){const{inputSvc:t,defaultDebounceMs:i,readOnly:s}=this,{filterPlaceholder:o,column:r,browserAutoComplete:n,filterParams:a}=e,l=this.lastType??this.optionsFactory.defaultOption,d=e.filterParams.filterPlaceholder,c=!0===o?Er(this,d,"filterOoo",l):o||void 0;if(t.setParams({ariaLabel:this.getAriaLabel(r),autoComplete:n??!1,placeholder:c}),this.applyActive=Mr(a),!s){const e=Pr(a,i);t.setValueChangedListener(Rt(this,this.syncUpWithParentFilter.bind(this),e))}}updateParams(e){super.updateParams(e),this.setTextInputParams(e)}recreateFloatingFilterInputService(e){const{inputSvc:t}=this,i=t.getValue();Te(this.eFloatingFilterInputContainer),this.destroyBean(t),this.setupFloatingFilterInputService(e),t.setValue(i,!0)}syncUpWithParentFilter(e){const t=e.key===To.ENTER,i=this.reactive;if(i){this.params.onUiChange()}if(this.applyActive&&!t)return;const{inputSvc:s,params:o,lastType:r}=this;let n=s.getValue();if(o.filterParams.trimInput&&(n=$v(n),s.setValue(n,!0)),i){const e=o,t=e.model,i=this.convertValue(n),s=null==i?null:{...t??{filterType:this.filterType,type:r??this.optionsFactory.defaultOption},filter:i};e.onModelChange(s,{afterFloatingFilter:!0})}else o.parentFilterInstance(e=>{e?.onFloatingFilterChanged(r||null,n||null)})}convertValue(e){return e||null}setEditable(e){this.inputSvc.setEditable(e)}},Qv=".ag-input-field-input",Jv=class{constructor(e,t,i,s,o,r){this.context=e,this.eParent=o,this.alive=!0,this.debouncedReport=Rt({isAlive:()=>this.alive},ew,500),this.timeoutHandle=null;const n=function(e,t,i){return e.getCompDetails(t,qo,"agDateInput",i,!0)}(t,i,s);n?.newAgStackInstance().then(t=>{if(!this.alive)return void e.destroyBean(t);if(this.dateComp=t,!t)return;o.appendChild(t.getGui()),t?.afterGuiAttached?.();const{tempValue:i,disabled:s}=this;i&&t.setDate(i),null!=s&&t.setDisabled?.(s),r?.(this)})}destroy(){this.alive=!1,this.dateComp=this.context.destroyBean(this.dateComp)}getDate(){return this.dateComp?this.dateComp.getDate():this.tempValue}setDate(e){const t=this.dateComp;t?t.setDate(e):this.tempValue=e}setDisabled(e){const t=this.dateComp;t?t.setDisabled?.(e):this.disabled=e}setDisplayed(e){ve(this.eParent,e)}setInputPlaceholder(e){this.dateComp?.setInputPlaceholder?.(e)}setInputAriaLabel(e){this.dateComp?.setInputAriaLabel?.(e)}afterGuiAttached(e){this.dateComp?.afterGuiAttached?.(e)}updateParams(e){this.dateComp?.refresh?.(e)}setCustomValidity(e,t=!1){const i=this.dateComp?.getGui().querySelector(Qv);if(i&&"setCustomValidity"in i){const s=e.length>0;i.setCustomValidity(e),s?t?this.timeoutHandle=this.debouncedReport(i):ew(i):this.timeoutHandle&&window.clearTimeout(this.timeoutHandle),U(i,s)}}getValidity(){return this.dateComp?.getGui().querySelector(Qv)?.validity}};function ew(e){e.reportValidity()}var tw=["equals","notEqual","lessThan","greaterThan","inRange","blank","notBlank"];function iw(e,t){const{dateFrom:i,dateTo:s,type:o}=e||{};return[i&&Qc(i,void 0,!0)||null,s&&Qc(s,void 0,!0)||null].slice(0,Ov(o,t))}var sw=1/0;var ow=class extends Uv{constructor(e,t){super(e,t,e=>{const{dataTypeSvc:i,valueSvc:s}=this.beans,o=t.column,r=i?.getDateFormatterFunction(o),n=r?r(e??void 0):e;return s.formatValue(o,null,n)}),this.filterTypeKeys=zv}conditionToString(e,t,i,s,o){const{type:r}=e,n=Qc(e.dateFrom),a=Qc(e.dateTo),l=this.filterParams.inRangeFloatingFilterDateFormat,d=t?this.formatValue.bind(this):e=>function(e,t){if(null==t)return Kc(e,!1);const i=jc(e.getFullYear(),4),s={YYYY:()=>i.slice(i.length-4,i.length),YY:()=>i.slice(i.length-2,i.length),Y:()=>`${e.getFullYear()}`,MMMM:()=>Yc[e.getMonth()],MMM:()=>Yc[e.getMonth()].slice(0,3),MM:()=>jc(e.getMonth()+1,2),Mo:()=>`${e.getMonth()+1}${qc(e.getMonth()+1)}`,M:()=>`${e.getMonth()+1}`,Do:()=>`${e.getDate()}${qc(e.getDate())}`,DD:()=>jc(e.getDate(),2),D:()=>`${e.getDate()}`,dddd:()=>Xc[e.getDay()],ddd:()=>Xc[e.getDay()].slice(0,3),dd:()=>Xc[e.getDay()].slice(0,2),do:()=>`${e.getDay()}${qc(e.getDay())}`,d:()=>`${e.getDay()}`},o=new RegExp(Object.keys(s).join("|"),"g");return t.replace(o,e=>e in s?s[e]():e)}(e,l),c=()=>null!==n?d(n):"null",u=()=>null!==a?d(a):"null";if(null==n&&null==a)return Rr(this,r);if(t){const e=this.conditionForToolPanel(r,i,c,u,s,o);if(null!=e)return e}return i?`${c()}-${u()}`:null!=n?d(n):`${r}`}};function rw(e,t){return te?1:0}var nw=null,aw=e=>(e.setHours(0,0,0,0),e),lw=e=>{const t=(e.getDay()-(()=>{if(null!=nw)return nw;let e;const t="undefined"==typeof navigator?void 0:navigator.languages?.[0]??navigator.language;if(t&&"undefined"!=typeof Intl&&"function"==typeof Intl.Locale)try{const i=new Intl.Locale(t).getWeekInfo?.();e=i?.firstDay}catch{e=void 0}return nw=null==e?1:e%7})()+7)%7;return e.setDate(e.getDate()-t),aw(e)},dw=(e,t=1)=>(e.setDate(e.getDate()-t),e),cw=e=>(e.setDate(e.getDate()+1),aw(e)),uw=e=>(lw(e),e.setDate(e.getDate()+6),cw(e)),hw=e=>(e.setDate(1),aw(e)),gw=e=>(e.setDate(1),e.setMonth(e.getMonth()+1),aw(e)),pw=e=>{const t=Math.floor(e.getMonth()/3);return e.setMonth(3*t),hw(e)},mw=e=>{const t=Math.floor(e.getMonth()/3);return e.setMonth(3*t+2),gw(e)},fw=e=>(e.setMonth(0,1),aw(e)),Cw=e=>(e.setMonth(12,0),cw(e)),vw=e=>dw(e),ww=e=>vw(lw(e)),bw=e=>vw(hw(e)),yw=e=>vw(pw(e)),Sw=(e,t)=>[aw(e),cw(t)],xw=(e,t)=>[lw(e),uw(t)],Fw=(e,t)=>[hw(e),gw(t)],Rw=(e,t)=>[pw(e),mw(t)],Pw=(e,t)=>[fw(e),Cw(t)],Mw={today:Sw,yesterday:(e,t)=>Sw(vw(e),vw(t)),tomorrow:(e,t)=>(e.setDate(e.getDate()+1),t.setDate(t.getDate()+1),Sw(e,t)),thisWeek:xw,lastWeek:(e,t)=>xw(ww(e),ww(t)),nextWeek:(e,t)=>(e.setDate(e.getDate()+7),t.setDate(t.getDate()+7),xw(e,t)),thisMonth:Fw,lastMonth:(e,t)=>Fw(bw(e),bw(t)),nextMonth:(e,t)=>(e.setMonth(e.getMonth()+1),t.setMonth(t.getMonth()+1),Fw(e,t)),thisQuarter:Rw,lastQuarter:(e,t)=>Rw(yw(e),yw(t)),nextQuarter:(e,t)=>(e.setMonth(e.getMonth()+3),t.setMonth(t.getMonth()+3),Rw(e,t)),thisYear:Pw,lastYear:(e,t)=>(e.setFullYear(e.getFullYear()-1),t.setFullYear(t.getFullYear()-1),Pw(e,t)),nextYear:(e,t)=>(e.setFullYear(e.getFullYear()+1),t.setFullYear(t.getFullYear()+1),Pw(e,t)),yearToDate:(e,t)=>[fw(e),cw(t)],last7Days:(e,t)=>[aw(dw(e,7)),cw(t)],last30Days:(e,t)=>[aw(dw(e,30)),cw(t)],last90Days:(e,t)=>[aw(dw(e,90)),cw(t)],last6Months:(e,t)=>(e.setFullYear(e.getFullYear()-1),e.setMonth(e.getMonth()+6),[aw(e),cw(t)]),last12Months:(e,t)=>(e.setFullYear(e.getFullYear()-1),[aw(e),cw(t)]),last24Months:(e,t)=>(e.setFullYear(e.getFullYear()-2),[aw(e),cw(t)]),setStartOfDay:aw,setStartOfWeek:lw,setStartOfNextDay:cw,setStartOfNextWeek:uw,setStartOfMonth:hw,setStartOfNextMonth:gw,setStartOfQuarter:pw,setStartOfNextQuarter:mw,setStartOfYear:fw,setStartOfNextYear:Cw,setPreviousDay:vw,setPreviousWeek:ww,setPreviousMonth:bw,setPreviousQuarter:yw},Ew={tag:"div",cls:"ag-floating-filter-input",role:"presentation",children:[{tag:"ag-input-text-field",ref:"eReadOnlyText"},{tag:"div",ref:"eDateWrapper",cls:"ag-date-floating-filter-wrapper"}]},Aw={tag:"div",cls:"ag-filter-filter",children:[{tag:"ag-input-text-field",ref:"eDateInput",cls:"ag-date-filter"}]};function Tw(e,t,i){return e&&t&&gi(i?85:86),e instanceof Date?e:e?Qc(e):t?Qc(`${t}-${i?"01-01":"12-31"}`):null}var Dw=["equals","notEqual","greaterThan","greaterThanOrEqual","lessThan","lessThanOrEqual","inRange","blank","notBlank"];function Iw(e){return e?.allowedCharPattern??null}function kw(e){return null==e||isNaN(e)?null:e}function Lw(e,t){const{filter:i,filterTo:s,type:o}=e||{};return[kw(i),kw(s)].slice(0,Ov(o,t))}function Ow(e,t){if("number"==typeof t)return t;let i=m(t);return null!=i&&""===i.trim()&&(i=null),e?e(i):null==i||"-"===i.trim()?null:Number.parseFloat(i)}function Gw(e,t){return kw(Ow(e,t.getValue(!0)))}var Nw=class extends Uv{constructor(e,t){super(e,t,t.numberFormatter),this.filterTypeKeys=zv}conditionToString(e,t,i,s,o){const{filter:r,filterTo:n,type:a}=e,l=this.formatValue.bind(this);if(t){const e=this.conditionForToolPanel(a,i,()=>l(r),()=>l(n),s,o);if(null!=e)return e}return i?`${l(r)}-${l(n)}`:null!=r?l(r):`${a}`}},Bw=class extends wt{constructor(){super(...arguments),this.onValueChanged=()=>{},this.numberInputActive=!0}setupGui(e){this.eNumberInput=this.createManagedBean(new cC),this.eTextInput=this.createManagedBean(new Qf),this.eTextInput.setDisabled(!0);const t=this.eNumberInput.getGui(),i=this.eTextInput.getGui();e.appendChild(t),e.appendChild(i),this.setupListeners(t,e=>this.onValueChanged(e)),this.setupListeners(i,e=>this.onValueChanged(e))}setEditable(e){this.numberInputActive=e,this.eNumberInput.setDisplayed(this.numberInputActive),this.eTextInput.setDisplayed(!this.numberInputActive)}setAutoComplete(e){this.eNumberInput.setAutoComplete(e),this.eTextInput.setAutoComplete(e)}getValue(){return this.getActiveInputElement().getValue()}setValue(e,t){this.getActiveInputElement().setValue(e,t)}getActiveInputElement(){return this.numberInputActive?this.eNumberInput:this.eTextInput}setValueChangedListener(e){this.onValueChanged=e}setupListeners(e,t){this.addManagedListeners(e,{input:t,keydown:t})}setParams({ariaLabel:e,autoComplete:t,placeholder:i}){this.setAriaLabel(e),void 0!==t&&this.setAutoComplete(t),this.setPlaceholder(this.eNumberInput,i),this.setPlaceholder(this.eTextInput,i)}setPlaceholder(e,t){e.toggleCss("ag-floating-filter-search-icon",!!t),e.setInputPlaceholder(t)}setAriaLabel(e){this.eNumberInput.setInputAriaLabel(e),this.eTextInput.setInputAriaLabel(e)}},Vw=["contains","notContains","equals","notEqual","startsWith","endsWith","blank","notBlank"],_w=class extends Uv{constructor(){super(...arguments),this.filterTypeKeys=Wv}conditionToString(e,t,i,s,o){const{filter:r,filterTo:n,type:a}=e;if(t){const e=e=>()=>Rr(this,"filterSummaryTextQuote",[e]),t=this.conditionForToolPanel(a,i,e(r),e(n),s,o);if(null!=t)return t}return i?`${r}-${n}`:null!=r?`${r}`:`${a}`}},Hw=({filterOption:e,value:t,filterText:i})=>{if(null==i)return!1;switch(e){case"contains":return t.includes(i);case"notContains":return!t.includes(i);case"equals":return t===i;case"notEqual":return t!=i;case"startsWith":return 0===t.indexOf(i);case"endsWith":{const e=t.lastIndexOf(i);return e>=0&&e===t.length-i.length}default:return!1}},zw=e=>e,Ww=e=>null==e?null:e.toString().toLowerCase();var Uw={moduleName:"ClientSideRowModelFilter",version:ii,rowModels:["clientSide"],beans:[class extends wt{constructor(){super(...arguments),this.beanName="filterStage",this.step="filter",this.refreshProps=["excludeChildrenWhenTreeDataFiltering"]}wireBeans(e){this.filterManager=e.filterManager}execute(e){const t=!!this.filterManager?.isChildFilterPresent();this.beans.formula?.active?this.softFilter(t,e):this.filterNodes(t,e)}filterNodes(e,t){const i=(t,i)=>{t.hasChildren()?t.childrenAfterFilter=e&&!i?t.childrenAfterGroup.filter(e=>{const t=e.childrenAfterFilter&&e.childrenAfterFilter.length>0,i=e.data&&this.filterManager.doesRowPassFilter({rowNode:e});return t||i}):t.childrenAfterGroup:t.childrenAfterFilter=t.childrenAfterGroup,hf(t)};if(this.doingTreeDataFiltering()){const e=(t,s)=>{if(t.childrenAfterGroup)for(let o=0;oe(t,!1);t.executeFromRootNode(s)}else{const e=e=>i(e,!1);t.forEachChangedNodeDepthFirst(e,!0)}}softFilter(e,t){t.forEachChangedNodeDepthFirst(t=>{if(t.childrenAfterFilter=t.childrenAfterGroup,t.hasChildren())for(const i of t.childrenAfterGroup)i.softFiltered=e&&!(i.data&&this.filterManager.doesRowPassFilter({rowNode:i}));hf(t)},!0)}doingTreeDataFiltering(){const{gos:e}=this;return e.get("treeData")&&!e.get("excludeChildrenWhenTreeDataFiltering")}}]},jw={moduleName:"FilterCore",version:ii,beans:[class extends wt{constructor(){super(...arguments),this.beanName="filterManager",this.advFilterModelUpdateQueue=[]}wireBeans(e){this.quickFilter=e.quickFilter,this.advancedFilter=e.advancedFilter,this.colFilter=e.colFilter}postConstruct(){const e=this.refreshFiltersForAggregations.bind(this),t=this.updateAdvFilterColumns.bind(this);this.addManagedEventListeners({columnValueChanged:e,columnPivotChanged:e,columnPivotModeChanged:e,newColumnsLoaded:t,columnVisible:t,advancedFilterEnabledChanged:({enabled:e})=>this.onAdvFilterEnabledChanged(e),dataTypesInferred:this.processFilterModelUpdateQueue.bind(this)}),this.externalFilterPresent=this.isExternalFilterPresentCallback(),this.addManagedPropertyListeners(["isExternalFilterPresent","doesExternalFilterPass"],()=>{this.onFilterChanged({source:"api"})}),this.updateAggFiltering(),this.addManagedPropertyListener("groupAggFiltering",()=>{this.updateAggFiltering(),this.onFilterChanged()}),this.quickFilter&&this.addManagedListeners(this.quickFilter,{quickFilterChanged:()=>this.onFilterChanged({source:"quickFilter"})});const{gos:i}=this;this.alwaysPassFilter=i.get("alwaysPassFilter"),this.addManagedPropertyListener("alwaysPassFilter",()=>{this.alwaysPassFilter=i.get("alwaysPassFilter"),this.onFilterChanged({source:"api"})})}isExternalFilterPresentCallback(){const e=this.gos.getCallback("isExternalFilterPresent");return"function"==typeof e&&e({})}doesExternalFilterPass(e){const t=this.gos.get("doesExternalFilterPass");return"function"==typeof t&&t(e)}setFilterState(e,t,i="api"){this.isAdvFilterEnabled()||this.colFilter?.setState(e,t,i)}setFilterModel(e,t="api",i){this.isAdvFilterEnabled()?i||this.warnAdvFilters():this.colFilter?.setModel(e,t)}getFilterModel(){return this.colFilter?.getModel()??{}}getFilterState(){return this.colFilter?.getState()}isColumnFilterPresent(){return!!this.colFilter?.isFilterPresent()}isAggregateFilterPresent(){return!!this.colFilter?.isAggFilterPresent()}isChildFilterPresent(){return this.isColumnFilterPresent()||this.isQuickFilterPresent()||this.externalFilterPresent||this.isAdvFilterPresent()}isAnyFilterPresent(){return this.isChildFilterPresent()||this.isAggregateFilterPresent()}isAdvFilterPresent(){return this.isAdvFilterEnabled()&&this.advancedFilter.isFilterPresent()}onAdvFilterEnabledChanged(e){e?this.colFilter?.disableFilters()&&this.onFilterChanged({source:"advancedFilter"}):this.advancedFilter?.isFilterPresent()&&(this.advancedFilter.setModel(null),this.onFilterChanged({source:"advancedFilter"}))}isAdvFilterEnabled(){return!!this.advancedFilter?.isEnabled()}isAdvFilterHeaderActive(){return this.isAdvFilterEnabled()&&this.advancedFilter.isHeaderActive()}refreshFiltersForAggregations(){Oi(this.gos)&&this.isAnyFilterPresent()&&this.onFilterChanged()}onFilterChanged(e={}){const{source:t,additionalEventAttributes:i,columns:s=[]}=e;this.externalFilterPresent=this.isExternalFilterPresentCallback(),(this.colFilter?this.colFilter.updateBeforeFilterChanged(e):ko.resolve()).then(()=>{const e={source:t,type:"filterChanged",columns:s};i&&At(e,i),this.eventSvc.dispatchEvent(e),this.colFilter?.updateAfterFilterChanged()})}isSuppressFlashingCellsBecauseFiltering(){return!!this.colFilter?.isSuppressFlashingCellsBecauseFiltering()}isQuickFilterPresent(){return!!this.quickFilter?.isFilterPresent()}updateAggFiltering(){this.aggFiltering=!!Oi(this.gos)}isAggregateQuickFilterPresent(){return this.isQuickFilterPresent()&&this.shouldApplyQuickFilterAfterAgg()}isNonAggregateQuickFilterPresent(){return this.isQuickFilterPresent()&&!this.shouldApplyQuickFilterAfterAgg()}shouldApplyQuickFilterAfterAgg(){return(this.aggFiltering||this.beans.colModel.isPivotMode())&&!this.gos.get("applyQuickFilterBeforePivotOrAgg")}doesRowPassOtherFilters(e,t){return this.doesRowPassFilter({rowNode:t,colIdToSkip:e})}doesRowPassAggregateFilters(e){const{rowNode:t}=e;return!!this.alwaysPassFilter?.(t)||!(this.isAggregateQuickFilterPresent()&&!this.quickFilter.doesRowPass(t))&&!(this.isAggregateFilterPresent()&&!this.colFilter.doFiltersPass(t,e.colIdToSkip,!0))}doesRowPassFilter(e){const{rowNode:t}=e;return!!this.alwaysPassFilter?.(t)||!(this.isNonAggregateQuickFilterPresent()&&!this.quickFilter.doesRowPass(t))&&(!(this.externalFilterPresent&&!this.doesExternalFilterPass(t))&&(!(this.isColumnFilterPresent()&&!this.colFilter.doFiltersPass(t,e.colIdToSkip))&&!(this.isAdvFilterPresent()&&!this.advancedFilter.doesFilterPass(t))))}isFilterAllowed(e){return!this.isAdvFilterEnabled()&&!!this.colFilter?.isFilterAllowed(e)}getAdvFilterModel(){return this.isAdvFilterEnabled()?this.advancedFilter.getModel():null}setAdvFilterModel(e,t="api"){this.isAdvFilterEnabled()&&(this.beans.dataTypeSvc?.isPendingInference?this.advFilterModelUpdateQueue.push(e):(this.advancedFilter.setModel(e??null),this.onFilterChanged({source:t})))}toggleAdvFilterBuilder(e,t){this.isAdvFilterEnabled()&&this.advancedFilter.getCtrl().toggleFilterBuilder({source:t,force:e})}updateAdvFilterColumns(){this.isAdvFilterEnabled()&&this.advancedFilter.updateValidity()&&this.onFilterChanged({source:"advancedFilter"})}hasFloatingFilters(){return!this.isAdvFilterEnabled()&&!!this.colFilter?.hasFloatingFilters()}getColumnFilterInstance(e){return this.isAdvFilterEnabled()?(this.warnAdvFilters(),Promise.resolve(void 0)):this.colFilter?.getFilterInstance(e)??Promise.resolve(void 0)}warnAdvFilters(){gi(68)}setupAdvFilterHeaderComp(e){this.advancedFilter?.getCtrl().setupHeaderComp(e)}getHeaderRowCount(){return this.isAdvFilterHeaderActive()?1:0}getHeaderHeight(){return this.isAdvFilterHeaderActive()?this.advancedFilter.getCtrl().getHeaderHeight():0}processFilterModelUpdateQueue(){for(const e of this.advFilterModelUpdateQueue)this.setAdvFilterModel(e);this.advFilterModelUpdateQueue=[]}setColumnFilterModel(e,t){return this.isAdvFilterEnabled()?(this.warnAdvFilters(),Promise.resolve()):this.colFilter?.setModelForColumn(e,t)??Promise.resolve()}}],apiFunctions:{isAnyFilterPresent:function(e){return!!e.filterManager?.isAnyFilterPresent()},onFilterChanged:function(e,t="api"){e.filterManager?.onFilterChanged({source:t})}},css:[".ag-set-filter{--ag-indentation-level:0}.ag-set-filter-item{align-items:center;display:flex;height:100%}:where(.ag-ltr) .ag-set-filter-item{padding-left:calc(var(--ag-widget-container-horizontal-padding) + var(--ag-indentation-level)*var(--ag-set-filter-indent-size))}:where(.ag-rtl) .ag-set-filter-item{padding-right:calc(var(--ag-widget-container-horizontal-padding) + var(--ag-indentation-level)*var(--ag-set-filter-indent-size))}.ag-set-filter-item-checkbox{display:flex;height:100%;width:100%}.ag-set-filter-group-icons{display:block;:where(.ag-set-filter-group-closed-icon),:where(.ag-set-filter-group-indeterminate-icon),:where(.ag-set-filter-group-opened-icon){cursor:pointer}}:where(.ag-ltr) .ag-set-filter-group-icons{margin-right:var(--ag-widget-container-horizontal-padding)}:where(.ag-rtl) .ag-set-filter-group-icons{margin-left:var(--ag-widget-container-horizontal-padding)}.ag-filter-body-wrapper{display:flex;flex-direction:column}:where(.ag-menu:not(.ag-tabs) .ag-filter) .ag-filter-body-wrapper{min-width:180px}.ag-filter-filter{flex:1 1 0px}.ag-filter-condition{display:flex;justify-content:center}.ag-floating-filter-body{display:flex;flex:1 1 auto;height:100%;position:relative}.ag-floating-filter-full-body{align-items:center;display:flex;flex:1 1 auto;height:100%;overflow:hidden;width:100%}.ag-floating-filter-input{align-items:center;display:flex;width:100%;>:where(.ag-date-floating-filter-wrapper),>:where(.ag-floating-filter-input),>:where(.ag-input-field){flex:1 1 auto}:where(.ag-input-field-input[type=date]),:where(.ag-input-field-input[type=datetime-local]){width:1px}}.ag-floating-filter-button{display:flex;flex:none}.ag-date-floating-filter-wrapper{display:flex}.ag-set-floating-filter-input :where(.ag-input-field-input)[disabled]{pointer-events:none}.ag-floating-filter-button-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;height:var(--ag-icon-size);width:var(--ag-icon-size)}.ag-filter-loading{align-items:unset;background-color:var(--ag-chrome-background-color);height:100%;padding:var(--ag-widget-container-vertical-padding) var(--ag-widget-container-horizontal-padding);position:absolute;width:100%;z-index:1;:where(.ag-menu) &{background-color:var(--ag-menu-background-color)}}.ag-filter-separator{border-top:solid var(--ag-border-width) var(--menu-separator-color)}:where(.ag-filter-select) .ag-picker-field-wrapper{width:0}.ag-filter-condition-operator{height:17px}:where(.ag-ltr) .ag-filter-condition-operator-or{margin-left:calc(var(--ag-spacing)*2)}:where(.ag-rtl) .ag-filter-condition-operator-or{margin-right:calc(var(--ag-spacing)*2)}.ag-set-filter-select-all{padding-top:var(--ag-widget-container-vertical-padding)}.ag-filter-no-matches,.ag-set-filter-list{height:calc(var(--ag-list-item-height)*6)}.ag-filter-no-matches{padding:var(--ag-widget-container-vertical-padding) var(--ag-widget-container-horizontal-padding)}.ag-set-filter-tree-list{height:calc(var(--ag-list-item-height)*10)}.ag-set-filter-filter{margin-left:var(--ag-widget-container-horizontal-padding);margin-right:var(--ag-widget-container-horizontal-padding);margin-top:var(--ag-widget-container-vertical-padding)}.ag-filter-to{margin-top:var(--ag-widget-vertical-spacing)}.ag-mini-filter{margin:var(--ag-widget-container-vertical-padding) var(--ag-widget-container-horizontal-padding)}:where(.ag-ltr) .ag-set-filter-add-group-indent{margin-left:calc(var(--ag-icon-size) + var(--ag-widget-container-horizontal-padding))}:where(.ag-rtl) .ag-set-filter-add-group-indent{margin-right:calc(var(--ag-icon-size) + var(--ag-widget-container-horizontal-padding))}:where(.ag-filter-menu) .ag-set-filter-list{min-width:200px}.ag-filter-virtual-list-item:focus-visible{box-shadow:inset var(--ag-focus-shadow)}.ag-filter-apply-panel{display:flex;justify-content:flex-end;overflow:hidden;padding:var(--ag-widget-vertical-spacing) var(--ag-widget-container-horizontal-padding) var(--ag-widget-container-vertical-padding)}.ag-filter-apply-panel-button{line-height:1.5}:where(.ag-ltr) .ag-filter-apply-panel-button{margin-left:calc(var(--ag-spacing)*2)}:where(.ag-rtl) .ag-filter-apply-panel-button{margin-right:calc(var(--ag-spacing)*2)}.ag-simple-filter-body-wrapper{display:flex;flex-direction:column;gap:var(--ag-widget-vertical-spacing);min-height:calc(var(--ag-list-item-height) + var(--ag-widget-container-vertical-padding) + var(--ag-widget-vertical-spacing));overflow-y:auto;padding:var(--ag-widget-container-vertical-padding) var(--ag-widget-container-horizontal-padding);padding-bottom:var(--ag-widget-container-vertical-padding);:where(.ag-resizer-wrapper){margin:0}}.ag-multi-filter-menu-item{margin:var(--ag-spacing) 0}.ag-multi-filter-group-title-bar{background-color:transparent;color:var(--ag-header-text-color);font-weight:500;padding:calc(var(--ag-spacing)*1.5) var(--ag-spacing)}.ag-group-filter-field-select-wrapper{display:flex;flex-direction:column;gap:var(--ag-widget-vertical-spacing);padding:var(--ag-widget-container-vertical-padding) var(--ag-widget-container-horizontal-padding)}"],dependsOn:[Uw]},Kw={moduleName:"FilterValue",version:ii,beans:[class extends wt{constructor(){super(...arguments),this.beanName="filterValueSvc"}getValue(e,t,i){if(!t)return;const s=e.getColDef(),{selectableFilter:o,valueSvc:r,formula:n}=this.beans,a=i??o?.getFilterValueGetter(e.getColId())??s.filterValueGetter;if(a)return this.executeFilterValueGetter(a,t.data,e,t,s);const l=r.getValue(e,t,"data");return e.isAllowFormula()&&n?.isFormula(l)?n.resolveValue(e,t):l}executeFilterValueGetter(e,t,i,s,o){const{expressionSvc:r,valueSvc:n}=this.beans,a=ms(this.gos,{data:t,node:s,column:i,colDef:o,getValue:n.getValueCallback.bind(n,s)});return"function"==typeof e?e(a):r?.evaluate(e,a)}}]},$w={moduleName:"ColumnFilter",version:ii,beans:[class extends wt{constructor(){super(...arguments),this.beanName="colFilter",this.allColumnFilters=new Map,this.allColumnListeners=new Map,this.activeAggregateFilters=[],this.activeColumnFilters=[],this.processingFilterChange=!1,this.modelUpdates=[],this.columnModelUpdates=[],this.state=new Map,this.handlerMap={...sv},this.isGlobalButtons=!1,this.activeFilterComps=new Set}postConstruct(){this.addManagedEventListeners({gridColumnsChanged:this.onColumnsChanged.bind(this),dataTypesInferred:this.processFilterModelUpdateQueue.bind(this)}),this.addManagedPropertyListener("pivotMode",this.onPivotModeChanged.bind(this));const e=this.gos,t={...e.get("initialState")?.filter?.filterModel??{}};this.initialModel=t,this.model={...t},e.get("enableFilterHandlers")||delete this.handlerMap.agMultiColumnFilter}refreshModel(){this.onNewRowsLoaded("rowDataUpdated")}setModel(e,t="api",i){const{colModel:s,dataTypeSvc:o,filterManager:r}=this.beans;if(o?.isPendingInference)return void this.modelUpdates.push({model:e,source:t});const n=[],a=this.getModel(!0);if(e){const t=new Set(Object.keys(e));this.allColumnFilters.forEach((i,s)=>{const o=e[s];n.push(this.setModelOnFilterWrapper(i,o)),t.delete(s)}),t.forEach(t=>{const i=s.getColDefCol(t)||s.getCol(t);if(!i)return void gi(62,{colId:t});if(!i.isFilterAllowed())return void gi(63,{colId:t});const o=this.getOrCreateFilterWrapper(i,!0);o?n.push(this.setModelOnFilterWrapper(o,e[t],!0)):gi(64,{colId:t})})}else this.model={},this.allColumnFilters.forEach(e=>{n.push(this.setModelOnFilterWrapper(e,null))});ko.all(n).then(()=>{const e=this.getModel(!0),s=[];this.allColumnFilters.forEach((t,i)=>{const o=a?a[i]:null,r=e?e[i]:null;w(o,r)||s.push(t.column)}),s.length>0?r?.onFilterChanged({columns:s,source:t}):i&&this.updateActive("filterChanged")})}getModel(e){const t={},{allColumnFilters:i,initialModel:s,beans:{colModel:o}}=this;if(i.forEach((e,i)=>{const s=this.getModelFromFilterWrapper(e);f(s)&&(t[i]=s)}),!e)for(const e of Object.keys(s)){const r=s[e];f(r)&&!i.has(e)&&o.getCol(e)?.isFilterAllowed()&&(t[e]=r)}return t}setState(e,t,i="api"){if(this.state.clear(),t)for(const e of Object.keys(t)){const i=t[e];this.state.set(e,{model:cv(this.model,e),state:i})}this.setModel(e,i,!0)}getState(){const e=this.state;if(!e.size)return;const t={};let i=!1;return e.forEach((e,s)=>{const o=e.state;null!=o&&(i=!0,t[s]=o)}),i?t:void 0}getModelFromFilterWrapper(e){const t=e.column.getColId();if(e.isHandler)return cv(this.model,t);const i=e.filter;return i?"function"!=typeof i.getModel?(gi(66),null):i.getModel():cv(this.initialModel,t)}isFilterPresent(){return this.activeColumnFilters.length>0}isAggFilterPresent(){return!!this.activeAggregateFilters.length}disableFilters(){this.initialModel={};const{allColumnFilters:e}=this;return!!e.size&&(e.forEach(e=>this.disposeFilterWrapper(e,"advancedFilterEnabled")),!0)}updateActiveFilters(){const{colModel:e,gos:t}=this.beans,i=!!Oi(t),s=[],o=[],r=(t,r,n)=>{r&&(Mv(t,e.isPivotMode(),e.isPivotActive(),i)?s.push(n):o.push(n))},n=[];return this.allColumnFilters.forEach(e=>{const t=e.column,i=t.getColId();if(e.isHandler)n.push(ko.resolve().then(()=>{r(t,this.isHandlerActive(t),{colId:i,isHandler:!0,handler:e.handler,handlerParams:e.handlerParams})}));else{const s=rv(e);s&&n.push(s.then(e=>{r(t,(e=>!!e&&(e.isFilterActive?e.isFilterActive():(gi(67),!1)))(e),{colId:i,isHandler:!1,comp:e})}))}}),ko.all(n).then(()=>{this.activeAggregateFilters=s,this.activeColumnFilters=o})}updateFilterFlagInColumns(e,t){const i=[];return this.allColumnFilters.forEach(s=>{const o=s.column;if(s.isHandler)i.push(ko.resolve().then(()=>{this.setColFilterActive(o,this.isHandlerActive(o),e,t)}));else{const r=rv(s);r&&i.push(r.then(i=>{this.setColFilterActive(o,i.isFilterActive(),e,t)}))}}),this.beans.groupFilter?.updateFilterFlags(e,t),ko.all(i)}doFiltersPass(e,t,i){const{data:s,aggData:o}=e,r=i?this.activeAggregateFilters:this.activeColumnFilters,n=i?o:s,a=this.model;for(let i=0;i{this.isAlive()&&i?.onFilterChanged(e)};t.isRefreshInProgress()?setTimeout(s,0):s()}updateBeforeFilterChanged(e={}){const{column:t,additionalEventAttributes:i}=e,s=t?.getColId();return this.updateActiveFilters().then(()=>this.updateFilterFlagInColumns("filterChanged",i).then(()=>{this.allColumnFilters.forEach(e=>{const{column:t,isHandler:i}=e;s!==t.getColId()&&(i&&e.handler.onAnyFilterChanged?.(),rv(e,i)?.then(e=>{"function"==typeof e?.onAnyFilterChanged&&e.onAnyFilterChanged()}))}),this.processingFilterChange=!0}))}updateAfterFilterChanged(){this.processingFilterChange=!1}isSuppressFlashingCellsBecauseFiltering(){return!(this.gos.get("allowShowChangeAfterFilter")??!1)&&this.processingFilterChange}onNewRowsLoaded(e){const t=[];this.allColumnFilters.forEach(e=>{const i=e.isHandler;i&&e.handler.onNewRowsLoaded?.();const s=rv(e,i);s&&t.push(s.then(e=>{e.onNewRowsLoaded?.()}))}),ko.all(t).then(()=>this.updateActive(e,{afterDataChange:!0}))}updateActive(e,t){this.updateFilterFlagInColumns(e,t).then(()=>this.updateActiveFilters())}createGetValue(e,t){const{filterValueSvc:i,colModel:s}=this.beans;return(o,r)=>{const n=r?s.getCol(r):e;return n?i.getValue(n,o,t):void 0}}isFilterActive(e){const t=this.cachedFilter(e);if(t?.isHandler)return this.isHandlerActive(e);const i=t?.filter;return i?i.isFilterActive():null!=cv(this.initialModel,e.getColId())}isHandlerActive(e){const t=f(cv(this.model,e.getColId()));if(t)return t;const i=this.beans.groupFilter;return!!i?.isGroupFilter(e)&&i.isFilterActive(e)}getOrCreateFilterUi(e){const t=this.getOrCreateFilterWrapper(e,!0);return t?rv(t):null}getFilterUiForDisplay(e){const t=this.getOrCreateFilterWrapper(e,!0);if(!t)return null;const i=rv(t);return i?i.then(e=>({comp:e,params:t.filterUi.filterParams,isHandler:t.isHandler})):null}getHandler(e,t){const i=this.getOrCreateFilterWrapper(e,t);return i?.isHandler?i.handler:void 0}getOrCreateFilterWrapper(e,t){if(!e.isFilterAllowed())return;let i=this.cachedFilter(e);return!i&&t&&(i=this.createFilterWrapper(e),this.setColumnFilterWrapper(e,i)),i}cachedFilter(e){return this.allColumnFilters.get(e.getColId())}getDefaultFilter(e,t=!1){return this.getDefaultFilterFromDataType(()=>this.beans.dataTypeSvc?.getBaseDataType(e),t)}getDefaultFilterFromDataType(e,t=!1){return ds(this.gos)?t?"agSetColumnFloatingFilter":"agSetColumnFilter":Fv(e(),t)}getDefaultFloatingFilter(e){return this.getDefaultFilter(e,!0)}createFilterComp(e,t,i,s,o,r){const n=()=>{const n=this.createFilterCompParams(e,o,r),a=s(n,o);return Cr(this.beans.userCompFactory,t,a,i)},a=n();if(!a)return null;return{compDetails:a,createFilterUi:e=>(e?n():a).newAgStackInstance()}}createFilterInstance(e,t,i,s){const o=this.beans.selectableFilter;o?.isSelectable(t)&&(t=o.getFilterDef(e,t));const{handler:r,handlerParams:n,handlerGenerator:a}=this.createHandler(e,t,i)??{},l=this.createFilterComp(e,t,i,s,!!r,"init");if(!l)return{compDetails:null,createFilterUi:null,handler:r,handlerGenerator:a,handlerParams:n};const{compDetails:d,createFilterUi:c}=l;if(this.isGlobalButtons){!!d.params?.buttons?.length||gi(281,{colId:e.getColId()})}return{compDetails:d,handler:r,handlerGenerator:a,handlerParams:n,createFilterUi:c}}createBaseFilterParams(e,t){const{filterManager:i,rowModel:s}=this.beans;return ms(this.gos,{column:e,colDef:e.getColDef(),getValue:this.createGetValue(e),doesRowPassOtherFilter:t?()=>!0:t=>i?.doesRowPassOtherFilters(e.getColId(),t)??!0,rowModel:s})}createFilterCompParams(e,t,i,s){const o=this.filterChangedCallbackFactory(e),r=this.createBaseFilterParams(e,s);if(r.filterChangedCallback=o,r.filterModifiedCallback=s?()=>{}:t=>this.filterModified(e,t),t){const t=r,s=e.getColId(),n=cv(this.model,s);t.model=n,t.state=this.state.get(s)??{model:n},t.onModelChange=(t,i)=>{this.updateStoredModel(s,t),this.refreshHandlerAndUi(e,t,"ui",!1,i).then(()=>{o({...i,source:"columnFilter"})})},t.onStateChange=t=>{this.updateState(e,t),this.updateOrRefreshFilterUi(e)},t.onAction=(t,i,s)=>{this.updateModel(e,t,i),this.dispatchLocalEvent({type:"filterAction",column:e,action:t,event:s})},t.getHandler=()=>this.getHandler(e,!0),t.onUiChange=t=>this.filterUiChanged(e,t),t.source=i}return r}createFilterUiForHandler(e,t){return t?{created:!1,create:t,filterParams:e.params,compDetails:e}:null}createFilterUiLegacy(e,t,i){const s=t(),o={created:!0,create:t,filterParams:e.params,compDetails:e,promise:s};return s.then(i),o}createFilterWrapper(e){const{compDetails:t,handler:i,handlerGenerator:s,handlerParams:o,createFilterUi:r}=this.createFilterInstance(e,e.getColDef(),this.getDefaultFilter(e),e=>e),n=e.getColId();if(i)return delete this.initialModel[n],i.init?.({...o,source:"init",model:cv(this.model,n)}),{column:e,isHandler:!0,handler:i,handlerGenerator:s,handlerParams:o,filterUi:this.createFilterUiForHandler(t,r)};if(r){const i={column:e,filterUi:null,isHandler:!1};return i.filterUi=this.createFilterUiLegacy(t,r,e=>{i.filter=e??void 0}),i}return{column:e,filterUi:null,isHandler:!1}}createHandlerFunc(e,t,i){const{gos:s,frameworkOverrides:o,registry:r}=this.beans;let n;const a=s.get("enableFilterHandlers"),l=a?(e=>{const t=e.filter;if(Ko(t)){const e=t.handler;return e||(n=t.doesFilterPass,n?()=>({doesFilterPass:n}):void 0)}return"string"==typeof t?t:void 0})(t):void 0,d=e=>()=>this.createBean(r.createDynamicBean(e,!0));let c,u;if("string"==typeof l){const e=s.get("filterHandlers")?.[l];null!=e?c=e:ov.has(l)&&(c=d(l),u=l)}else c=l;if(!c){let e;const{compName:s,jsComp:r,fwComp:n}=wr(o,t);if(s)e=s;else{null==r&&null==n&&!0===t.filter&&(e=i)}u=this.handlerMap[e],u&&(c=d(u))}if(!c){if(!a)return;return yi(s)&&gi(277,{colId:e.getColId()}),Pv}return{filterHandler:c,handlerNameOrCallback:n??u}}createHandler(e,t,i){const s=this.createHandlerFunc(e,t,i);if(!s)return;const o=br(this.beans.userCompFactory,t,this.createFilterCompParams(e,!0,"init")),{handlerNameOrCallback:r,filterHandler:n}=s,{handler:a,handlerParams:l}=this.createHandlerFromFunc(e,n,o);return{handler:a,handlerParams:l,handlerGenerator:r??n}}createHandlerFromFunc(e,t,i){const s=e.getColDef();return{handler:t(ms(this.gos,{column:e,colDef:s})),handlerParams:this.createHandlerParams(e,i)}}createHandlerParams(e,t){const i=e.getColDef(),s=e.getColId(),o=this.filterChangedCallbackFactory(e);return ms(this.gos,{colDef:i,column:e,getValue:this.createGetValue(e),doesRowPassOtherFilter:e=>this.beans.filterManager?.doesRowPassOtherFilters(s,e)??!0,onModelChange:(t,i)=>{this.updateStoredModel(s,t),this.refreshHandlerAndUi(e,t,"handler",!1,i).then(()=>{o({...i,source:"columnFilter"})})},onModelAsStringChange:()=>{e.dispatchColEvent("filterChanged","filterChanged"),this.dispatchLocalEvent({type:"filterModelAsStringChanged",column:e})},filterParams:t})}onColumnsChanged(){const e=[],{colModel:t,filterManager:i,groupFilter:s}=this.beans;this.allColumnFilters.forEach((i,s)=>{let o;o=i.column.isPrimary()?t.getColDefCol(s):t.getCol(s),o&&o===i.column||(e.push(i.column),this.disposeFilterWrapper(i,"columnChanged"),this.disposeColumnListener(s))});const o=s&&e.every(e=>s.isGroupFilter(e));e.length>0&&!o&&i?.onFilterChanged({columns:e,source:"api"})}isFilterAllowed(e){if(!e.isFilterAllowed())return!1;const t=this.beans.groupFilter;return!t?.isGroupFilter(e)||t.isFilterAllowed(e)}getFloatingFilterCompDetails(e,t){const{userCompFactory:i,frameworkOverrides:s,selectableFilter:o,gos:r}=this.beans,n=e.getColDef(),a=o?.isSelectable(n)?o.getFilterDef(e,n):n,l=Rv(s,a,()=>this.getDefaultFloatingFilter(e))??"agReadOnlyFloatingFilter",d=r.get("enableFilterHandlers"),c=br(i,a,this.createFilterCompParams(e,d,"init",!0)),u=ms(r,{column:e,filterParams:c,currentParentModel:()=>this.getCurrentFloatingFilterParentModel(e),parentFilterInstance:t=>{const i=this.getOrCreateFilterUi(e);i?.then(e=>{t(ap(e))})},showParentFilter:t});if(d){const t=u,i=e.getColId(),s=this.filterChangedCallbackFactory(e);t.onUiChange=t=>this.floatingFilterUiChanged(e,t),t.model=cv(this.model,i),t.onModelChange=(t,o)=>{this.updateStoredModel(i,t),this.refreshHandlerAndUi(e,t,"floating",!0,o).then(()=>{s({...o,source:"columnFilter"})})},t.getHandler=()=>this.getHandler(e,!0),t.source="init"}return vr(i,n,u,l)}getCurrentFloatingFilterParentModel(e){return this.getModelFromFilterWrapper(this.cachedFilter(e)??{column:e})}destroyFilterUi(e,t,i,s){const o="paramsUpdated";if(e.isHandler){const r=t.getColId();delete this.initialModel[r],this.state.delete(r);const n=e.filterUi,a=this.createFilterUiForHandler(i,s);e.filterUi=a;const l=this.eventSvc;n?.created?n.promise.then(e=>{this.destroyBean(e),l.dispatchEvent({type:"filterDestroyed",source:o,column:t})}):l.dispatchEvent({type:"filterHandlerDestroyed",source:o,column:t})}else this.destroyFilter(t,o)}destroyFilter(e,t="api"){const i=e.getColId(),s=this.allColumnFilters.get(i);this.disposeColumnListener(i),delete this.initialModel[i],s&&this.disposeFilterWrapper(s,t).then(t=>{t&&this.isAlive()&&this.beans.filterManager?.onFilterChanged({columns:[e],source:"api"})})}disposeColumnListener(e){const t=this.allColumnListeners.get(e);t&&(this.allColumnListeners.delete(e),t())}disposeFilterWrapper(e,t){let i=!1;const{column:s,isHandler:o,filterUi:r}=e,n=s.getColId();o&&(i=this.isHandlerActive(s),this.destroyBean(e.handler),delete this.model[n],this.state.delete(n));const a=()=>{this.setColFilterActive(s,!1,"filterDestroyed"),this.allColumnFilters.delete(n),this.eventSvc.dispatchEvent({type:"filterDestroyed",source:t,column:s})};if(r){if(r.created)return r.promise.then(e=>(i=o?i:!!e?.isFilterActive(),this.destroyBean(e),a(),i));a()}return ko.resolve(i)}filterChangedCallbackFactory(e){return t=>{this.callOnFilterChangedOutsideRenderCycle({additionalEventAttributes:t,columns:[e],column:e,source:t?.source??"columnFilter"})}}filterParamsChanged(e,t="api"){const i=this.allColumnFilters.get(e);if(!i)return;const s=this.beans,o=i.column,r=o.getColDef(),n=o.isFilterAllowed(),a=this.getDefaultFilter(o),l=s.selectableFilter,d=l?.isSelectable(r)?l.getFilterDef(o,r):r,c=n?this.createHandlerFunc(o,d,this.getDefaultFilter(o)):void 0,u=!!c,h=i.isHandler;if(h!=u)return void this.destroyFilter(o,"paramsUpdated");const{compDetails:g,createFilterUi:p}=(n?this.createFilterComp(o,d,a,e=>e,u,"colDef"):null)??{compDetails:null,createFilterUi:null},m=g?.params??br(s.userCompFactory,d,this.createFilterCompParams(o,u,"colDef"));if(h){const s=c?.handlerNameOrCallback??c?.filterHandler,r=cv(this.model,e);if(i.handlerGenerator!=s){const n=i.handler,{handler:a,handlerParams:l}=this.createHandlerFromFunc(o,c.filterHandler,m);i.handler=a,i.handlerParams=l,i.handlerGenerator=s,delete this.model[e],a.init?.({...l,source:"init",model:null}),this.destroyBean(n),null!=r&&this.beans.filterManager?.onFilterChanged({columns:[o],source:t})}else{const e=this.createHandlerParams(o,g?.params);i.handlerParams=e,i.handler.refresh?.({...e,source:"colDef",model:r})}}!this.areFilterCompsDifferent(i.filterUi?.compDetails??null,g)&&i.filterUi&&g?(i.filterUi.filterParams=m,rv(i,h)?.then(e=>{!1===(!e?.refresh||e.refresh(m))?this.destroyFilterUi(i,o,g,p):this.dispatchLocalEvent({type:"filterParamsChanged",column:o,params:m})})):this.destroyFilterUi(i,o,g,p)}refreshHandlerAndUi(e,t,i,s,o){const r=this.cachedFilter(e);if(!r)return s&&this.getOrCreateFilterWrapper(e,!0),ko.resolve();if(!r.isHandler)return ko.resolve();const{filterUi:n,handler:a,handlerParams:l}=r;return nv(()=>{if(n){const{created:e,filterParams:t}=n;if(e)return n.promise.then(e=>e?{filter:e,filterParams:t}:void 0);n.refreshed=!0}return ko.resolve(void 0)},a,l,t,this.state.get(e.getColId())??{model:t},i,o)}setColumnFilterWrapper(e,t){const i=e.getColId();this.allColumnFilters.set(i,t),this.allColumnListeners.set(i,this.addManagedListeners(e,{colDefChanged:()=>this.filterParamsChanged(i)})[0])}areFilterCompsDifferent(e,t){if(!t||!e)return!0;const{componentClass:i}=e,{componentClass:s}=t;return!(i===s||i?.render&&s?.render&&i.render===s.render)}hasFloatingFilters(){return this.beans.colModel.getCols().some(e=>e.getColDef().floatingFilter)}getFilterInstance(e){const t=this.beans.colModel.getColDefCol(e);if(!t)return Promise.resolve(void 0);const i=this.getOrCreateFilterUi(t);return i?new Promise(e=>{i.then(t=>{e(ap(t))})}):Promise.resolve(null)}processFilterModelUpdateQueue(){this.modelUpdates.forEach(({model:e,source:t})=>this.setModel(e,t)),this.modelUpdates=[],this.columnModelUpdates.forEach(({key:e,model:t,resolve:i})=>{this.setModelForColumn(e,t).then(()=>i())}),this.columnModelUpdates=[]}getModelForColumn(e,t){if(t){const{state:t,model:i}=this,s=e.getColId(),o=t.get(s);return o?o.model??null:cv(i,s)}const i=this.cachedFilter(e);return i?this.getModelFromFilterWrapper(i):null}setModelForColumn(e,t){if(this.beans.dataTypeSvc?.isPendingInference){let i=()=>{};const s=new Promise(e=>{i=e});return this.columnModelUpdates.push({key:e,model:t,resolve:i}),s}return new Promise(i=>{this.setModelForColumnLegacy(e,t).then(e=>i(e))})}getStateForColumn(e){return this.state.get(e)??{model:cv(this.model,e)}}setModelForColumnLegacy(e,t){const i=this.beans.colModel.getColDefCol(e),s=i?this.getOrCreateFilterWrapper(i,!0):null;return s?this.setModelOnFilterWrapper(s,t):ko.resolve()}setColDefPropsForDataType(e,t,i){const s=e.filter,o=!0===s?this.getDefaultFilterFromDataType(()=>t.baseDataType):s;if("string"!=typeof o)return;let r,n;const a=this.beans,{filterParams:l,filterValueGetter:d}=e;({filterParams:r,filterValueGetter:n}="agMultiColumnFilter"===o?a.multiFilter?.getParamsForDataType(l,d,t,i)??{}:yv(o,l,d,t,i,a,this.getLocaleTextFunc())),e.filterParams=r,n&&(e.filterValueGetter=n)}setColFilterActive(e,t,i,s){e.filterActive!==t&&(e.filterActive=t,e.dispatchColEvent("filterActiveChanged",i)),e.dispatchColEvent("filterChanged",i,s)}setModelOnFilterWrapper(e,t,i){return new ko(s=>{if(e.isHandler){const o=e.column,r=o.getColId(),n=this.model[r];return this.updateStoredModel(r,t),i&&t===n?void s():void this.refreshHandlerAndUi(o,t,"api").then(()=>s())}const o=rv(e);o?o.then(e=>{if("function"!=typeof e?.setModel)return gi(65),void s();(e.setModel(t)||ko.resolve()).then(()=>s())}):s()})}updateStoredModel(e,t){f(t)?this.model[e]=t:delete this.model[e];const i=this.state.get(e),s={model:t,state:i?.state};this.state.set(e,s)}filterModified(e,t){this.getOrCreateFilterUi(e)?.then(i=>{this.eventSvc.dispatchEvent({type:"filterModified",column:e,filterInstance:i,...t})})}filterUiChanged(e,t){this.gos.get("enableFilterHandlers")&&this.eventSvc.dispatchEvent({type:"filterUiChanged",column:e,...t})}floatingFilterUiChanged(e,t){this.gos.get("enableFilterHandlers")&&this.eventSvc.dispatchEvent({type:"floatingFilterUiChanged",column:e,...t})}updateModel(e,t,i){const s=e.getColId(),o=this.cachedFilter(e),r=()=>o?.filterUi;dv({action:t,filterParams:o?.filterUi?.filterParams,getFilterUi:r,getModel:()=>cv(this.model,s),getState:()=>this.state.get(s),updateState:t=>this.updateState(e,t),updateModel:e=>r()?.filterParams?.onModelChange(e,{...i,fromAction:t}),processModelToApply:o?.isHandler?o.handler.processModelToApply?.bind(o.handler):void 0})}updateAllModels(e,t){const i=[];this.allColumnFilters.forEach((t,s)=>{const o=this.beans.colModel.getColDefCol(s);o&&dv({action:e,filterParams:t.filterUi?.filterParams,getFilterUi:()=>t.filterUi,getModel:()=>cv(this.model,s),getState:()=>this.state.get(s),updateState:e=>this.updateState(o,e),updateModel:t=>{this.updateStoredModel(s,t),this.dispatchLocalEvent({type:"filterAction",column:o,action:e}),i.push(this.refreshHandlerAndUi(o,t,"ui"))},processModelToApply:t?.isHandler?t.handler.processModelToApply?.bind(t.handler):void 0})}),i.length&&ko.all(i).then(()=>{this.callOnFilterChangedOutsideRenderCycle({source:"columnFilter",additionalEventAttributes:t,columns:[]})})}updateOrRefreshFilterUi(e){const t=e.getColId();lv(()=>this.cachedFilter(e)?.filterUi,()=>cv(this.model,t),()=>this.state.get(t))}updateState(e,t){this.state.set(e.getColId(),t),this.dispatchLocalEvent({type:"filterStateChanged",column:e,state:t})}canApplyAll(){const{state:e,model:t,activeFilterComps:i}=this;for(const e of i)if("COLUMN_MENU"===e.source)return!1;let s=!1;for(const i of e.keys()){const o=e.get(i);if(!1===o.valid)return!1;(o.model??null)!==cv(t,i)&&(s=!0)}return s}hasUnappliedModel(e){const{model:t,state:i}=this;return(i.get(e)?.model??null)!==cv(t,e)}setGlobalButtons(e){this.isGlobalButtons=e,this.dispatchLocalEvent({type:"filterGlobalButtons",isGlobal:e})}shouldKeepStateOnDetach(e,t){if("newFiltersToolPanel"===t)return!0;const i=this.beans.filterPanelSvc;return!!i?.isActive&&!!i.getState(e.getColId())}onPivotModeChanged(e){const{colModel:t,pivotColsSvc:i}=this.beans,s=!!Oi(this.gos),o=e.currentValue,r=o?this.activeColumnFilters:this.activeAggregateFilters,n=o?this.activeAggregateFilters:this.activeColumnFilters,a=[];for(const e of r){const r=t.getColById(e.colId),l=o&&!!i?.columns.length;r&&o===Mv(r,o,l,s)&&(n.push(e),a.push(e))}h(r,a)}destroy(){super.destroy(),this.allColumnFilters.forEach(e=>this.disposeFilterWrapper(e,"gridDestroyed")),this.allColumnListeners.clear(),this.state.clear(),this.activeFilterComps.clear()}},class extends wt{constructor(){super(...arguments),this.beanName="filterMenuFactory"}wireBeans(e){this.popupSvc=e.popupSvc}hideActiveMenu(){this.hidePopup?.()}showMenuAfterMouseEvent(e,t,i,s){e&&!e.isColumn||this.showPopup(e,s=>{this.popupSvc?.positionPopupUnderMouseEvent({additionalParams:{column:e},type:i,mouseEvent:t,ePopup:s})},i,t.target,cs(this.gos),s)}showMenuAfterButtonClick(e,t,i,s){if(e&&!e.isColumn)return;let o=-1,r="left";const n=cs(this.gos);!n&&this.gos.get("enableRtl")&&(o=1,r="right");const a=n?void 0:4*o,l=n?void 0:4;this.showPopup(e,s=>{this.popupSvc?.positionPopupByComponent({type:i,eventSource:t,ePopup:s,nudgeX:a,nudgeY:l,alignSide:r,keepWithinBounds:!0,position:"under",additionalParams:{column:e}})},i,t,n,s)}showPopup(e,t,i,s,o,r){const n=e?this.createBean(new Dr(e,"COLUMN_MENU")):void 0;if(this.activeMenu=n,!n?.hasFilter()||!e)return void pi(57);const a=Go({tag:"div",cls:"ag-menu"+(o?"":" ag-filter-menu"),role:"presentation"});let l;[this.tabListener]=this.addManagedElementListeners(a,{keydown:e=>this.trapFocusWithin(e,a)}),a.appendChild(n?.getGui());const d=us(this.gos)?s??this.beans.ctrlsSvc.getGridBodyCtrl().eGridBody:void 0,c=this.getLocaleTextFunc(),u=o&&"columnFilter"!==i?c("ariaLabelColumnMenu","Column Menu"):c("ariaLabelColumnFilter","Column Filter"),h=this.popupSvc?.addPopup({modal:!0,eChild:a,closeOnEsc:!0,closedCallback:t=>{uv(e,!1,"contextMenu");const o=t instanceof KeyboardEvent;if(this.tabListener&&(this.tabListener=this.tabListener()),o&&s&&ke(s)){const e=ln(s);e?.focus({preventScroll:!0})}n?.afterGuiDetached(),this.destroyBean(this.activeMenu),this.dispatchVisibleChangedEvent(!1,i,e),r?.()},positionCallback:()=>t(a),anchorToElement:d,ariaLabel:u});h&&(this.hidePopup=l=h.hideFunc),n.afterInit().then(()=>{t(a),n.afterGuiAttached({container:i,hidePopup:l})}),uv(e,!0,"contextMenu"),this.dispatchVisibleChangedEvent(!0,i,e)}trapFocusWithin(e,t){e.key!==To.TAB||e.defaultPrevented||an(this.beans,t,!1,e.shiftKey)||(e.preventDefault(),nn(t,e.shiftKey))}dispatchVisibleChangedEvent(e,t,i){this.eventSvc.dispatchEvent({type:"columnMenuVisibleChanged",visible:e,switchingTab:!1,key:t,column:i??null,columnGroup:null})}isMenuEnabled(e){return e.isFilterAllowed()&&(e.getColDef().menuTabs??["filterMenuTab"]).includes("filterMenuTab")}showMenuAfterContextMenuEvent(){}destroy(){this.destroyBean(this.activeMenu),super.destroy()}}],dynamicBeans:{headerFilterCellCtrl:class extends da{constructor(){super(...arguments),this.iconCreated=!1}wireComp(e,t,i,s,o){this.comp=e;const r=ta(this,this.beans.context,o);this.eButtonShowMainFilter=i,this.eFloatingFilterBody=s,this.setGui(t,r),this.setupActive(),this.refreshHeaderStyles(),this.setupWidth(r),this.setupLeft(r),this.setupHover(r),this.setupFocus(r),this.setupAria(),this.setupFilterButton(),this.setupUserComp(),this.setupSyncWithFilter(r),this.setupUi(),r.addManagedElementListeners(this.eButtonShowMainFilter,{click:this.showParentFilter.bind(this)}),this.setupFilterChangedListener(r);const n=()=>this.onColDefChanged(r);r.addManagedListeners(this.column,{colDefChanged:n}),r.addManagedEventListeners({filterSwitched:({column:e})=>{e===this.column&&n()}}),r.addDestroyFunc(()=>{this.eButtonShowMainFilter=null,this.eFloatingFilterBody=null,this.userCompDetails=null,this.clearComponent()})}resizeHeader(){}moveHeader(){}getHeaderClassParams(){const{column:e,beans:t}=this,i=e.colDef;return ms(t.gos,{colDef:i,column:e,floatingFilter:!0})}setupActive(){const e=this.column.getColDef(),t=!!e.filter,i=!!e.floatingFilter;this.active=t&&i}setupUi(){if(this.comp.setButtonWrapperDisplayed(!this.suppressFilterButton&&this.active),this.comp.addOrRemoveBodyCssClass("ag-floating-filter-full-body",this.suppressFilterButton),this.comp.addOrRemoveBodyCssClass("ag-floating-filter-body",!this.suppressFilterButton),!this.active||this.iconCreated)return;const e=Bo("filter",this.beans,this.column);e&&(this.iconCreated=!0,this.eButtonShowMainFilter.appendChild(e))}setupFocus(e){e.createManagedBean(new mn(this.eGui,{shouldStopEventPropagation:this.shouldStopEventPropagation.bind(this),onTabKeyDown:this.onTabKeyDown.bind(this),handleKeyDown:this.handleKeyDown.bind(this),onFocusIn:this.onFocusIn.bind(this)}))}setupAria(){const e=this.getLocaleTextFunc();_(this.eButtonShowMainFilter,e("ariaFilterMenuOpen","Open Filter Menu"))}onTabKeyDown(e){const{beans:t}=this;if(A(t)===this.eGui)return;const i=an(t,this.eGui,null,e.shiftKey);if(i)return t.headerNavigation?.scrollToColumn(this.column),e.preventDefault(),void i.focus();const s=this.findNextColumnWithFloatingFilter(e.shiftKey);s&&t.focusSvc.focusHeaderPosition({headerPosition:{headerRowIndex:this.rowCtrl.rowIndex,column:s},event:e})&&e.preventDefault()}findNextColumnWithFloatingFilter(e){const t=this.beans.visibleCols;let i=this.column;do{if(i=e?t.getColBefore(i):t.getColAfter(i),!i)break}while(!i.getColDef().filter||!i.getColDef().floatingFilter);return i}handleKeyDown(e){super.handleKeyDown(e);const t=this.getWrapperHasFocus();switch(e.key){case To.UP:case To.DOWN:case To.LEFT:case To.RIGHT:if(t)return;hn(e);case To.ENTER:t&&nn(this.eGui)&&e.preventDefault();break;case To.ESCAPE:t||this.eGui.focus()}}onFocusIn(e){if(this.eGui.contains(e.relatedTarget))return;const t=!!e.relatedTarget&&!e.relatedTarget.classList.contains("ag-floating-filter"),i=!!e.relatedTarget&&ye(e.relatedTarget,"ag-floating-filter");if(t&&i&&e.target===this.eGui){const e=this.lastFocusEvent,t=!(!e||e.key!==To.TAB);if(e&&t){const t=e.shiftKey;nn(this.eGui,t)}}this.focusThis()}setupHover(e){this.beans.colHover?.addHeaderFilterColumnHoverListener(e,this.comp,this.column,this.eGui)}setupLeft(e){const t=new ia(this.column,this.eGui,this.beans);e.createManagedBean(t)}setupFilterButton(){this.suppressFilterButton=!this.beans.menuSvc?.isFloatingFilterButtonEnabled(this.column),this.highlightFilterButtonWhenActive=!cs(this.gos)}setupUserComp(){if(!this.active)return;const e=this.beans.colFilter?.getFloatingFilterCompDetails(this.column,()=>this.showParentFilter());e&&this.setCompDetails(e)}setCompDetails(e){this.userCompDetails=e,this.comp.setCompDetails(e)}showParentFilter(){const e=this.suppressFilterButton?this.eFloatingFilterBody:this.eButtonShowMainFilter;this.beans.menuSvc?.showFilterMenu({column:this.column,buttonElement:e,containerType:"floatingFilter",positionBy:"button"})}setupSyncWithFilter(e){if(!this.active)return;const{beans:{colFilter:t},column:i,gos:s}=this,o=e=>{if(!("filterDestroyed"!==e?.source||this.isAlive()&&t?.isAlive()))return;const o=this.comp.getFloatingFilterComp();o&&o.then(o=>{if(o){if(s.get("enableFilterHandlers")){const t=e;let i="filter";return t?.afterFloatingFilter?i="ui":t?.afterDataChange?i="dataChanged":"api"===e?.source&&(i="api"),void this.updateFloatingFilterParams(this.userCompDetails,i)}const r=t?.getCurrentFloatingFilterParentModel(i),n=e?{...e,columns:e.columns??[],source:"api"===e.source?"api":"columnFilter"}:null;o.onParentModelChanged(r,n)}})};[this.destroySyncListener]=e.addManagedListeners(i,{filterChanged:o}),t?.isFilterActive(i)&&o(null)}setupWidth(e){const t=()=>{const e=`${this.column.getActualWidth()}px`;this.comp.setWidth(e)};e.addManagedListeners(this.column,{widthChanged:t}),t()}setupFilterChangedListener(e){this.active&&([this.destroyFilterChangedListener]=e.addManagedListeners(this.column,{filterChanged:this.updateFilterButton.bind(this)}),this.updateFilterButton())}updateFilterButton(){if(!this.suppressFilterButton&&this.comp){const e=!!this.beans.filterManager?.isFilterAllowed(this.column);this.comp.setButtonWrapperDisplayed(e),this.highlightFilterButtonWhenActive&&e&&this.eButtonShowMainFilter.classList.toggle("ag-filter-active",this.column.isFilterActive())}}onColDefChanged(e){const t=this.active;this.setupActive();const i=!t&&this.active;t&&!this.active&&(this.destroySyncListener(),this.destroyFilterChangedListener());const s=this.beans.colFilter,o=this.active?s?.getFloatingFilterCompDetails(this.column,()=>this.showParentFilter()):null,r=this.comp.getFloatingFilterComp();r&&o?r.then(t=>{!t||s?.areFilterCompsDifferent(this.userCompDetails??null,o)?this.updateCompDetails(e,o,i):this.updateFloatingFilterParams(o,"colDef")}):this.updateCompDetails(e,o,i)}updateCompDetails(e,t,i){this.isAlive()&&(this.setCompDetails(t),this.setupFilterButton(),this.setupUi(),i&&(this.setupSyncWithFilter(e),this.setupFilterChangedListener(e)))}updateFloatingFilterParams(e,t){if(!e)return;let i=e.params;this.comp.getFloatingFilterComp()?.then(e=>{"function"==typeof e?.refresh&&(this.gos.get("enableFilterHandlers")&&(i={...i,model:cv(this.beans.colFilter?.model??{},this.column.getColId()),source:t}),e.refresh(i))})}addResizeAndMoveKeyboardListeners(){}destroy(){super.destroy(),this.destroySyncListener=null,this.destroyFilterChangedListener=null}}},icons:{filter:"filter",filterActive:"filter"},apiFunctions:{isColumnFilterPresent:function(e){const t=e.filterManager;return!!t?.isColumnFilterPresent()||!!t?.isAggregateFilterPresent()},getColumnFilterInstance:function(e,t){return e.filterManager?.getColumnFilterInstance(t)??Promise.resolve(void 0)},destroyFilter:function(e,t){const i=e.colModel.getColDefCol(t);if(i)return e.colFilter?.destroyFilter(i,"api")},setFilterModel:function(e,t){e.frameworkOverrides.wrapIncoming(()=>e.filterManager?.setFilterModel(t))},getFilterModel:function(e){return e.filterManager?.getFilterModel()??{}},getColumnFilterModel:function(e,t,i){const{gos:s,colModel:o,colFilter:r}=e;i&&!s.get("enableFilterHandlers")&&(gi(288),i=!1);const n=o.getColDefCol(t);return n?r?.getModelForColumn(n,i)??null:null},setColumnFilterModel:function(e,t,i){return e.filterManager?.setColumnFilterModel(t,i)??Promise.resolve()},showColumnFilter:function(e,t){const i=e.colModel.getCol(t);i?e.menuSvc?.showFilterMenu({column:i,containerType:"columnFilter",positionBy:"auto"}):pi(12,{colKey:t})},hideColumnFilter:function(e){e.menuSvc?.hideFilterMenu()},getColumnFilterHandler:function(e,t){const i=e.colModel.getCol(t);if(i)return e.colFilter?.getHandler(i,!0);pi(12,{colKey:t})},doFilterAction:function(e,t){const{colModel:i,colFilter:s,gos:o}=e;if(!o.get("enableFilterHandlers"))return void gi(287);const{colId:r,action:n}=t;if(r){const e=i.getColById(r);e&&s?.updateModel(e,n)}else s?.updateAllModels(n)}},dependsOn:[jw,Hf,Kw,gv]},qw={moduleName:"CustomFilter",version:ii,userComponents:{agReadOnlyFloatingFilter:class extends Wo{constructor(){super(Ev,[Jf]),this.eFloatingFilterText=Lo}init(e){this.params=e;const t=this.beans.colNames.getDisplayNameForColumn(e.column,"header",!0);if(this.eFloatingFilterText.setDisabled(!0).setInputAriaLabel(`${t} ${this.getLocaleTextFunc()("ariaFilterInput","Filter Input")}`),this.gos.get("enableFilterHandlers")){const t=e,i=t.getHandler();if(i.getModelAsString){const e=i.getModelAsString(t.model);this.eFloatingFilterText.setValue(e)}}}onParentModelChanged(e){null!=e?this.params.parentFilterInstance(t=>{if(t.getModelAsString){const i=t.getModelAsString(e);this.eFloatingFilterText.setValue(i)}}):this.eFloatingFilterText.setValue("")}refresh(e){this.init(e)}}},dependsOn:[$w]},Yw={moduleName:"TextFilter",version:ii,dependsOn:[$w],userComponents:{agTextColumnFilter:{classImp:class extends Gv{constructor(){super("textFilter",qv,Vw),this.filterType="text",this.eValuesFrom=[],this.eValuesTo=[],this.defaultDebounceMs=500}createCondition(e){const t=this.getConditionType(e),i={filterType:this.filterType,type:t},s=this.getValues(e);return s.length>0&&(i.filter=s[0]),s.length>1&&(i.filterTo=s[1]),i}areSimpleModelsEqual(e,t){return e.filter===t.filter&&e.filterTo===t.filterTo&&e.type===t.type}getInputs(e){const{eValuesFrom:t,eValuesTo:i}=this;return e>=t.length?[null,null]:[t[e],i[e]]}getValues(e){const t=[];return this.forEachPositionInput(e,(e,i,s,o)=>{ithis.removeComponents(i,e,t),{eValuesFrom:s,eValuesTo:o}=this;i(s),i(o)}},params:{useForm:!0}},agTextColumnFloatingFilter:class extends Zv{constructor(){super(...arguments),this.FilterModelFormatterClass=_w,this.filterType="text",this.defaultOptions=Vw}createFloatingFilterInputService(){return this.createManagedBean(new Kv)}}},dynamicBeans:{agTextColumnFilterHandler:class extends _v{constructor(){super(qv,Vw),this.filterType="text",this.FilterModelFormatterClass=_w}updateParams(e){super.updateParams(e);const t=e.filterParams;this.matcher=t.textMatcher??Hw,this.formatter=t.textFormatter??(t.caseSensitive?zw:Ww)}evaluateNullValue(e){return!!e&&["notEqual","notContains","blank"].indexOf(e)>=0}evaluateNonNullValue(e,t,i,s){const o=e.map(e=>this.formatter(e))||[],r=this.formatter(t),{api:n,colDef:a,column:l,context:d,filterParams:{textFormatter:c}}=this.params;if("blank"===i.type)return kv(t);if("notBlank"===i.type)return!kv(t);const u={api:n,colDef:a,column:l,context:d,node:s.node,data:s.data,filterOption:i.type,value:r,textFormatter:c};return o.some(e=>this.matcher({...u,filterText:e}))}processModelToApply(e){if(e&&this.params.filterParams.trimInput){const t=e=>{const t={...e},{filter:i,filterTo:s}=e;return i&&(t.filter=$v(i)??null),s&&(t.filterTo=$v(s)??null),t};return Ir(e)?{...e,conditions:e.conditions.map(t)}:t(e)}return e}}}},Xw={moduleName:"NumberFilter",version:ii,dependsOn:[$w],userComponents:{agNumberColumnFilter:{classImp:class extends Gv{constructor(){super("numberFilter",Lw,Dw),this.eValuesFrom=[],this.eValuesTo=[],this.filterType="number",this.defaultDebounceMs=500}afterGuiAttached(e){super.afterGuiAttached(e),this.refreshInputValidation()}shouldKeepInvalidInputState(){return!Kr()&&this.hasInvalidInputs()&&this.getConditionTypes().includes("inRange")}refreshInputValidation(){for(let e=0;e=t;if(!s)return null;return`strict${i?"Max":"Min"}ValueValidation`}(o,r,i),a=n?this.translate(n,[String(i?r:o)]):"";(i?e:t).setCustomValidity(a),(i?t:e).setCustomValidity(""),a.length>0&&this.beans.ariaAnnounce.announceValue(a,"dateFilter")}getState(){return{isInvalid:this.hasInvalidInputs()}}areStatesEqual(e,t){return(e?.isInvalid??!1)===(t?.isInvalid??!1)}refresh(e){const t=super.refresh(e),{state:i,additionalEventAttributes:s}=e,o=this.state,r=s?.fromAction;return!(r&&"apply"!=r)&&i.model===o.model&&this.areStatesEqual(i.state,o.state)||this.refreshInputValidation(),t}setElementValue(e,t,i){const{numberFormatter:s}=this.params,o=!i&&s?s(t??null):t;super.setElementValue(e,o),null===o&&e.setCustomValidity("")}createEValue(){const{params:e,eValuesFrom:t,eValuesTo:i}=this,s=Iw(e),o=Go({tag:"div",cls:"ag-filter-body",role:"presentation"}),r=this.createFromToElement(o,t,"from",s),n=this.createFromToElement(o,i,"to",s),a=(e,t,i)=>()=>this.refreshInputPairValidation(e,t,i),l=a(r,n,!0);r.onValueChange(l),r.addGuiEventListener("focusin",l);const d=a(r,n,!1);return n.onValueChange(d),n.addGuiEventListener("focusin",d),o}createFromToElement(e,t,i,s){const o=this.createManagedBean(s?new Qf({allowedCharPattern:s}):new cC);return o.addCss(`ag-filter-${i}`),o.addCss("ag-filter-filter"),t.push(o),e.appendChild(o.getGui()),o}removeEValues(e,t){const i=i=>this.removeComponents(i,e,t);i(this.eValuesFrom),i(this.eValuesTo)}getValues(e){const t=[];return this.forEachPositionInput(e,(e,i,s,o)=>{i0&&(i.filter=s[0]),s.length>1&&(i.filterTo=s[1]),i}removeConditionsAndOperators(e,t){if(!this.hasInvalidInputs())return super.removeConditionsAndOperators(e,t)}getInputs(e){const{eValuesFrom:t,eValuesTo:i}=this;return e>=t.length?[null,null]:[t[e],i[e]]}hasInvalidInputs(){let e=!1;return this.forEachInput(t=>e||(e=!t.getInputElement().validity.valid)),e}positionHasInvalidInputs(e){let t=!1;return this.forEachPositionInput(e,e=>t||(t=!e.getInputElement().validity.valid)),t}canApply(e){return!this.hasInvalidInputs()}},params:{useForm:!0}},agNumberColumnFloatingFilter:class extends Zv{constructor(){super(...arguments),this.FilterModelFormatterClass=Nw,this.filterType="number",this.defaultOptions=Dw}updateParams(e){Iw(e.filterParams)!==this.allowedCharPattern&&this.recreateFloatingFilterInputService(e),super.updateParams(e)}createFloatingFilterInputService(e){return this.allowedCharPattern=Iw(e.filterParams),this.allowedCharPattern?this.createManagedBean(new Kv({config:{allowedCharPattern:this.allowedCharPattern}})):this.createManagedBean(new Bw)}convertValue(e){return e?Number(e):null}}},dynamicBeans:{agNumberColumnFilterHandler:class extends Hv{constructor(){super(Lw,Dw),this.filterType="number",this.FilterModelFormatterClass=Nw}comparator(){return(e,t)=>e===t?0:e=t;if(!s)return null;return`strict${i?"Max":"Min"}ValueValidation`}(o,r,i);s&&(u=this.translate(s,[String(i?t.getValue():e.getValue())]))}l.setCustomValidity(u),c||d.setCustomValidity(""),u.length>0&&this.beans.ariaAnnounce.announceValue(u,"dateFilter")}getState(){return{isInvalid:this.hasInvalidInputs()}}areStatesEqual(e,t){return(e?.isInvalid??!1)===(t?.isInvalid??!1)}refresh(e){const t=super.refresh(e),{state:i,additionalEventAttributes:s}=e,o=this.state,r=s?.fromAction;return!(r&&"apply"!=r)&&i.model===o.model&&this.areStatesEqual(i.state,o.state)||this.refreshInputValidation(),t}setElementValue(e,t,i){super.setElementValue(e,t,i),null===t&&e.setCustomValidity("")}createEValue(){const{params:e,eValuesFrom:t,eValuesTo:i}=this,s=Bv(e),o=Go({tag:"div",cls:"ag-filter-body",role:"presentation"}),r=this.createFromToElement(o,t,"from",s),n=this.createFromToElement(o,i,"to",s),a=(e,t,i)=>()=>this.refreshInputPairValidation(e,t,i),l=a(r,n,!0);r.onValueChange(l),r.addGuiEventListener("focusin",l);const d=a(r,n,!1);return n.onValueChange(d),n.addGuiEventListener("focusin",d),o}createFromToElement(e,t,i,s){const o=this.createManagedBean(s?new Qf({allowedCharPattern:s}):new Qf);return o.addCss(`ag-filter-${i}`),o.addCss("ag-filter-filter"),t.push(o),e.appendChild(o.getGui()),o}removeEValues(e,t){const i=i=>this.removeComponents(i,e,t);i(this.eValuesFrom),i(this.eValuesTo)}getValues(e){const t=[];return this.forEachPositionInput(e,(e,i,s,o)=>{i0&&(i.filter=String(s[0])),s.length>1&&(i.filterTo=String(s[1])),i}removeConditionsAndOperators(e,t){if(!this.hasInvalidInputs())return super.removeConditionsAndOperators(e,t)}getInputs(e){const{eValuesFrom:t,eValuesTo:i}=this;return e>=t.length?[null,null]:[t[e],i[e]]}hasInvalidInputs(){let e=!1;return this.forEachInput(t=>e||(e=!t.getInputElement().validity.valid)),e}positionHasInvalidInputs(e){let t=!1;return this.forEachPositionInput(e,e=>t||(t=!e.getInputElement().validity.valid)),t}canApply(e){return!this.hasInvalidInputs()}getParsedValue(e,t){const i=e.getValue();return null==i||"string"==typeof i&&""===i.trim()?null:t?t(i):Hc(i)}isInvalidValue(e,t){const i=e.getValue();return null!=i&&""!==String(i).trim()&&null===t}},params:{useForm:!0}},agBigIntColumnFloatingFilter:class extends Zv{constructor(){super(...arguments),this.FilterModelFormatterClass=jv,this.filterType="bigint",this.defaultOptions=Nv}updateParams(e){const t=e.filterParams;Bv(t)!==this.allowedCharPattern&&this.recreateFloatingFilterInputService(e),this.bigintParser=t?.bigintParser,super.updateParams(e)}createFloatingFilterInputService(e){const t=e.filterParams;this.allowedCharPattern=Bv(t),this.bigintParser=t?.bigintParser;const i=this.allowedCharPattern?{allowedCharPattern:this.allowedCharPattern}:void 0;return this.createManagedBean(new Kv({config:i}))}convertValue(e){return null==e||""===e?null:this.bigintParser?this.bigintParser(e):Hc(e)}}},dynamicBeans:{agBigIntColumnFilterHandler:class extends Hv{constructor(){super(Vv,Nv),this.filterType="bigint",this.FilterModelFormatterClass=jv}comparator(){return(e,t)=>e===t?0:e{const s=e[t];if(null!=s){if(!isNaN(s))return null==s?i:Number(s);gi(82,{param:t})}return i},i=t("minValidYear",1e3),s=t("maxValidYear",sw);this.minValidYear=i,this.maxValidYear=s,i>s&&gi(83);const{minValidDate:o,maxValidDate:r}=e,n=o instanceof Date?o:Qc(o);this.minValidDate=n;const a=r instanceof Date?r:Qc(r);this.maxValidDate=a,n&&a&&n>a&&gi(84)}refreshInputValidation(){for(let e=0;e=t;if(!s)return null;return(i?"max":"min")+"DateValidation"}(l,d,t),u=c?this.translate(c,[String(t?d:l)]):"",h=!Kr()&&!i;(t?n:a).setCustomValidity(u,h),(t?a:n).setCustomValidity("",h),u.length>0&&r.ariaAnnounce.announceValue(u,"dateFilter")}createDateCompWrapper(e,t,i){const{beans:{userCompFactory:s,context:o,gos:r},params:n}=this,a="from"===i,l=new Jv(o,s,n.colDef,ms(r,{onDateChanged:()=>{this.refreshInputPairValidation(t,a),this.onUiChanged()},onFocusIn:()=>this.refreshInputPairValidation(t,a),filterParams:n,location:"filter"}),e);return this.addDestroyFunc(()=>l.destroy()),l}getState(){return{isInvalid:this.hasInvalidInputs()}}areStatesEqual(e,t){return(e?.isInvalid??!1)===(t?.isInvalid??!1)}setElementValue(e,t){e.setDate(t),t||e.setCustomValidity("")}setElementDisplayed(e,t){e.setDisplayed(t)}setElementDisabled(e,t){e.setDisabled(t)}createEValue(){const e=Go({tag:"div",cls:"ag-filter-body"});return this.createFromToElement(e,this.eConditionPanelsFrom,this.dateConditionFromComps,"from"),this.createFromToElement(e,this.eConditionPanelsTo,this.dateConditionToComps,"to"),e}createFromToElement(e,t,i,s){const o=Go({tag:"div",cls:`ag-filter-${s} ag-filter-date-${s}`});t.push(o),e.appendChild(o),i.push(this.createDateCompWrapper(o,t.length-1,s))}removeEValues(e,t){this.removeDateComps(this.dateConditionFromComps,e,t),this.removeDateComps(this.dateConditionToComps,e,t),Iv(this.eConditionPanelsFrom,e,t),Iv(this.eConditionPanelsTo,e,t)}removeDateComps(e,t,i){const s=Iv(e,t,i);for(const e of s)e.destroy()}isValidDateValue(e){if(null===e)return!1;const{minValidDate:t,maxValidDate:i,minValidYear:s,maxValidYear:o}=this;if(t){if(ei)return!1}else if(e.getUTCFullYear()>o)return!1;return!0}hasInvalidInputs(){let e=!1;return this.forEachInput(t=>e||(e=null!=t.getDate()&&!(t.getValidity()?.valid??1))),e}positionHasInvalidInputs(e){let t=!1;return this.forEachPositionInput(e,e=>t||(t=!(e.getValidity()?.valid??1))),t}canApply(e){return!this.hasInvalidInputs()}isConditionUiComplete(e){if(!super.isConditionUiComplete(e))return!1;let t=!0;return this.forEachPositionInput(e,(e,i,s,o)=>{!t||i>=o||t&&(t=this.isValidDateValue(e.getDate()))}),t}areSimpleModelsEqual(e,t){return e.dateFrom===t.dateFrom&&e.dateTo===t.dateTo&&e.type===t.type}createCondition(e){const t=this.getConditionType(e),i={},{params:s,filterType:o}=this,r=this.getValues(e),n=s.useIsoSeparator?"T":" ";return r.length>0&&(i.dateFrom=Kc(r[0],!0,n)),r.length>1&&(i.dateTo=Kc(r[1],!0,n)),{dateFrom:null,dateTo:null,filterType:o,type:t,...i}}removeConditionsAndOperators(e,t){if(!this.hasInvalidInputs())return super.removeConditionsAndOperators(e,t)}resetPlaceholder(){const e=this.getLocaleTextFunc(),t=this.translate("dateFormatOoo"),i=e("ariaFilterValue","Filter Value");this.forEachInput(e=>{e.setInputPlaceholder(t),e.setInputAriaLabel(i)})}getInputs(e){const{dateConditionFromComps:t,dateConditionToComps:i}=this;return e>=t.length?[null,null]:[t[e],i[e]]}getValues(e){const t=[];return this.forEachPositionInput(e,(e,i,s,o)=>{i{this.eDateInput.isDisabled()||this.usingSafariDatePicker||t.focus({preventScroll:!0})},input:this.handleInput.bind(this,!1),change:this.handleInput.bind(this,!0),focusout:this.handleFocusOut.bind(this),focusin:this.handleFocusIn.bind(this)})}handleInput(e){if(!this.eDateInput.isDisabled())return this.isApply?(this.applyOnFocusOut=!e,void(e&&this.params.onDateChanged())):void(e||this.params.onDateChanged())}handleFocusOut(){this.applyOnFocusOut&&(this.applyOnFocusOut=!1,this.params.onDateChanged())}handleFocusIn(){this.params.onFocusIn?.()}setParams(e){const t=this.eDateInput.getInputElement(),i=this.shouldUseBrowserDatePicker(e);this.usingSafariDatePicker=i&&jr();const{minValidYear:s,maxValidYear:o,minValidDate:r,maxValidDate:n,buttons:a,includeTime:l,colDef:d}=e.filterParams||{},c=this.beans.dataTypeSvc,u=l??c?.getDateIncludesTimeFlag?.(d.cellDataType)??!1;i?u?(t.type="datetime-local",t.step="1"):t.type="date":t.type="text";const h=Tw(r,s,!0),g=Tw(n,o,!1);h&&g&&h.getTime()>g.getTime()&&gi(87),h&&(t.min=Kc(h,u)),g&&(t.max=Kc(g,u)),this.isApply="floatingFilter"===e.location&&!!a?.includes("apply")}refresh(e){this.params=e,this.setParams(e)}getDate(){return Qc(this.eDateInput.getValue())}setDate(e){const t=this.params.filterParams.colDef.cellDataType,i=this.beans.dataTypeSvc?.getDateIncludesTimeFlag(t)??!1;this.eDateInput.setValue(Kc(e,i))}setInputPlaceholder(e){this.eDateInput.setInputPlaceholder(e)}setInputAriaLabel(e){this.eDateInput.setAriaLabel(e)}setDisabled(e){this.eDateInput.setDisabled(e)}afterGuiAttached(e){e?.suppressFocus||this.eDateInput.getInputElement().focus({preventScroll:!0})}shouldUseBrowserDatePicker(e){return e?.filterParams?.browserDatePicker??!0}},agDateColumnFloatingFilter:class extends Yv{constructor(){super(Ew,[Jf]),this.eReadOnlyText=Lo,this.eDateWrapper=Lo,this.FilterModelFormatterClass=ow,this.filterType="date",this.defaultOptions=tw}setParams(e){super.setParams(e),this.createDateComponent();const t=this.getLocaleTextFunc();this.eReadOnlyText.setDisabled(!0).setInputAriaLabel(t("ariaDateFilterInput","Date Filter Input"))}updateParams(e){super.updateParams(e),this.dateComp.updateParams(this.getDateComponentParams()),this.updateCompOnModelChange(e.currentParentModel())}updateCompOnModelChange(e){const t=!this.readOnly&&this.canWeEditAfterModelFromParentFilter(e);if(this.setEditable(t),t){const t=e?Qc(e.dateFrom):null;this.dateComp.setDate(t),this.eReadOnlyText.setValue("")}else this.eReadOnlyText.setValue(this.filterModelFormatter.getModelAsString(e)),this.dateComp.setDate(null)}setEditable(e){ve(this.eDateWrapper,e),ve(this.eReadOnlyText.getGui(),!e)}onModelUpdated(e){super.setLastTypeFromModel(e),this.updateCompOnModelChange(e)}onDateChanged(){const e=this.dateComp.getDate();if(this.reactive){const t=this.params;t.onUiChange();const i=t.model,s=Kc(e),o=null==s?null:{...i??{filterType:this.filterType,type:this.lastType??this.optionsFactory.defaultOption},dateFrom:s};t.onModelChange(o,{afterFloatingFilter:!0})}else this.params.parentFilterInstance(t=>{t?.onFloatingFilterChanged(this.lastType||null,e)})}getDateComponentParams(){const{filterParams:e}=this.params,t=Pr(e,this.defaultDebounceMs);return ms(this.gos,{onDateChanged:Rt(this,this.onDateChanged.bind(this),t),filterParams:e,location:"floatingFilter"})}createDateComponent(){const{beans:{context:e,userCompFactory:t},eDateWrapper:i,params:{column:s}}=this;this.dateComp=new Jv(e,t,s.getColDef(),this.getDateComponentParams(),i,e=>{e.setInputAriaLabel(this.getAriaLabel(s))}),this.addDestroyFunc(()=>this.dateComp.destroy())}}},dynamicBeans:{agDateColumnFilterHandler:class extends Hv{constructor(){super(iw,tw),this.filterType="date",this.FilterModelFormatterClass=ow,this.filterTypeToRangeCache=new Map}getOrRefreshRangeCacheItem(e,t){const{filterTypeToRangeCache:i}=this,s=Date.now();let o=i.get(e);if(o&&o.expires=0&&o(i,t)<0}return super.evaluateNonNullValue(e,t,i)}}}},Jw={moduleName:"QuickFilterCore",version:ii,rowModels:["clientSide"],beans:[class extends wt{constructor(){super(...arguments),this.beanName="quickFilter",this.quickFilter=null,this.quickFilterParts=null}postConstruct(){const e=this.resetCache.bind(this),t=this.gos;this.addManagedEventListeners({columnPivotModeChanged:e,newColumnsLoaded:e,columnRowGroupChanged:e,columnVisible:()=>{t.get("includeHiddenColumnsInQuickFilter")||this.resetCache()}}),this.addManagedPropertyListener("quickFilterText",e=>this.setFilter(e.currentValue)),this.addManagedPropertyListeners(["includeHiddenColumnsInQuickFilter","applyQuickFilterBeforePivotOrAgg"],()=>this.onColumnConfigChanged()),this.quickFilter=this.parseFilter(t.get("quickFilterText")),this.parser=t.get("quickFilterParser"),this.matcher=t.get("quickFilterMatcher"),this.setFilterParts(),this.addManagedPropertyListeners(["quickFilterMatcher","quickFilterParser"],()=>this.setParserAndMatcher())}refreshCols(){const{autoColSvc:e,colModel:t,gos:i,pivotResultCols:s}=this.beans,o=t.isPivotMode(),r=e?.getColumns(),n=t.getColDefCols();let a=(o&&!i.get("applyQuickFilterBeforePivotOrAgg")?s?.getPivotResultCols()?.list:n)??[];r&&(a=a.concat(r)),this.colsToUse=i.get("includeHiddenColumnsInQuickFilter")?a:a.filter(e=>e.isVisible()||e.isRowGroupActive())}isFilterPresent(){return null!==this.quickFilter}doesRowPass(e){const t=this.gos.get("cacheQuickFilter");return this.matcher?this.doesRowPassMatcher(t,e):this.quickFilterParts.every(i=>t?this.doesRowPassCache(e,i):this.doesRowPassNoCache(e,i))}resetCache(){this.beans.rowModel.forEachNode(e=>e.quickFilterAggregateText=null)}getText(){return this.gos.get("quickFilterText")}setFilterParts(){const{quickFilter:e,parser:t}=this;this.quickFilterParts=e?t?t(e):e.split(" "):null}parseFilter(e){return f(e)?e.toUpperCase():null}setFilter(e){if(null!=e&&"string"!=typeof e)return void gi(70,{newFilter:e});const t=this.parseFilter(e);this.quickFilter!==t&&(this.quickFilter=t,this.setFilterParts(),this.dispatchLocalEvent({type:"quickFilterChanged"}))}setParserAndMatcher(){const e=this.gos.get("quickFilterParser"),t=this.gos.get("quickFilterMatcher"),i=e!==this.parser||t!==this.matcher;this.parser=e,this.matcher=t,i&&(this.setFilterParts(),this.dispatchLocalEvent({type:"quickFilterChanged"}))}onColumnConfigChanged(){this.refreshCols(),this.resetCache(),this.isFilterPresent()&&this.dispatchLocalEvent({type:"quickFilterChanged"})}doesRowPassNoCache(e,t){return this.colsToUse.some(i=>{const s=this.getTextForColumn(i,e);return f(s)&&s.includes(t)})}doesRowPassCache(e,t){return this.checkGenerateAggText(e),e.quickFilterAggregateText.includes(t)}doesRowPassMatcher(e,t){let i;e?(this.checkGenerateAggText(t),i=t.quickFilterAggregateText):i=this.getAggText(t);const{quickFilterParts:s,matcher:o}=this;return o(s,i)}checkGenerateAggText(e){e.quickFilterAggregateText||(e.quickFilterAggregateText=this.getAggText(e))}getTextForColumn(e,t){let i=this.beans.filterValueSvc.getValue(e,t);const s=e.getColDef();if(s.getQuickFilterText){const o=ms(this.gos,{value:i,node:t,data:t.data,column:e,colDef:s});i=s.getQuickFilterText(o)}return f(i)?i.toString().toUpperCase():null}getAggText(e){const t=[];for(const i of this.colsToUse){const s=this.getTextForColumn(i,e);f(s)&&t.push(s)}return t.join("\n")}}],dependsOn:[jw,Kw]},eb={moduleName:"QuickFilter",version:ii,apiFunctions:{isQuickFilterPresent:function(e){return!!e.quickFilter?.isFilterPresent()},getQuickFilter:function(e){return e.quickFilter?.getText()},resetQuickFilter:function(e){e.quickFilter?.resetCache()}},dependsOn:[Jw]},tb={moduleName:"ExternalFilter",version:ii,dependsOn:[jw]},ib=class extends wt{constructor(e,t,i){super(),this.id=e,this.parentCache=t,this.params=i,this.state="needsLoading",this.version=0,this.startRow=e*i.blockSize,this.endRow=this.startRow+i.blockSize}load(){this.state="loading",this.loadFromDatasource()}setStateWaitingToLoad(){this.version++,this.state="needsLoading"}pageLoadFailed(e){this.isRequestMostRecentAndLive(e)&&(this.state="failed"),this.dispatchLocalEvent({type:"loadComplete"})}pageLoaded(e,t,i){this.successCommon(e,{rowData:t,rowCount:i})}isRequestMostRecentAndLive(e){const t=e===this.version,i=this.isAlive();return t&&i}successCommon(e,t){this.dispatchLocalEvent({type:"loadComplete"});this.isRequestMostRecentAndLive(e)&&(this.state="loaded",this.processServerResult(t))}postConstruct(){this.rowNodes=[];const{params:{blockSize:e,rowHeight:t},startRow:i,beans:s,rowNodes:o}=this;for(let r=0;r{this.params.datasource.getRows(e)},0)}createLoadParams(){const{startRow:e,endRow:t,version:i,params:{sortModel:s,filterModel:o},gos:r}=this;return ms(r,{startRow:e,endRow:t,successCallback:this.pageLoaded.bind(this,i),failCallback:this.pageLoadFailed.bind(this,i),sortModel:s,filterModel:o})}forEachNode(e,t,i){this.rowNodes.forEach((s,o)=>{this.startRow+o{const r=e.rowData?e.rowData[o]:void 0;!s.id&&s.alreadyRendered&&r&&(t[o]=new Ga(i),t[o].setRowIndex(s.rowIndex),t[o].setRowTop(s.rowTop),t[o].setRowHeight(s.rowHeight),s._destroy(!0)),this.setDataAndId(t[o],r,this.startRow+o)});const s=null!=e.rowCount&&e.rowCount>=0?e.rowCount:void 0;this.parentCache.pageLoaded(this,s)}destroy(){const e=this.rowNodes;for(let t=0,i=e.length;tt!=e);t.sort((e,t)=>t.lastAccessed-e.lastAccessed);const i=this.params.maxBlocksInCache>0,s=i?this.params.maxBlocksInCache-1:null;t.forEach((e,t)=>{if("needsLoading"===e.state&&t>=1||!!i&&t>=s){if(this.isBlockCurrentlyDisplayed(e))return;if(this.isBlockFocused(e))return;this.removeBlockFromCache(e)}})}isBlockFocused(e){const t=this.beans.focusSvc.getFocusCellToUseAfterRefresh();if(!t)return!1;if(null!=t.rowPinned)return!1;const{startRow:i,endRow:s}=e;return t.rowIndex>=i&&t.rowIndex=0)this.rowCount=t,this.lastRowIndexKnown=!0;else if(!this.lastRowIndexKnown){const{blockSize:t,overflowSize:i}=this.params,s=(e.id+1)*t+i;this.rowCounte.id-t.id)}destroyBlock(e){delete this.blocks[e.id],this.destroyBean(e),this.blockCount--,this.params.rowNodeBlockLoader.removeBlock(e)}onCacheUpdated(){this.isAlive()&&(this.destroyAllBlocksPastVirtualRowCount(),this.eventSvc.dispatchEvent({type:"storeUpdated"}))}destroyAllBlocksPastVirtualRowCount(){const e=[];for(const t of this.getBlocksInOrder()){t.id*this.params.blockSize>=this.rowCount&&e.push(t)}if(e.length>0)for(const t of e)this.destroyBlock(t)}purgeCache(){for(const e of this.getBlocksInOrder())this.removeBlockFromCache(e);this.lastRowIndexKnown=!1,0===this.rowCount&&(this.rowCount=this.params.initialRowCount),this.onCacheUpdated()}getRowNodesInRange(e,t){const i=[];let s=-1,o=!1;const r={value:0};let n=!1;for(const a of this.getBlocksInOrder())n||(o&&s+1!==a.id?n=!0:(s=a.id,a.forEachNode(s=>{const r=s===e||s===t;(o||r)&&i.push(s),r&&(o=!o)},r,this.rowCount)));return n||o?[]:i}};var ob={moduleName:"InfiniteRowModelCore",version:ii,rowModels:["infinite"],beans:[class extends wt{constructor(){super(...arguments),this.beanName="rowModel",this.rootNode=null}getRowBounds(e){return{rowHeight:this.rowHeight,rowTop:this.rowHeight*e}}ensureRowHeightsValid(){return!1}postConstruct(){if("infinite"!==this.gos.get("rowModelType"))return;const e=this.beans,t=new Ga(e);this.rootNode=t,t.level=-1,this.rowHeight=Ei(e),this.addEventListeners(),this.addDestroyFunc(()=>this.destroyCache())}start(){this.setDatasource(this.gos.get("datasource"))}destroy(){this.destroyDatasource(),super.destroy(),this.rootNode=null}destroyDatasource(){this.datasource&&(this.destroyBean(this.datasource),this.beans.rowRenderer.datasourceChanged(),this.datasource=null)}addEventListeners(){this.addManagedEventListeners({filterChanged:this.reset.bind(this),sortChanged:this.reset.bind(this),newColumnsLoaded:this.onColumnEverything.bind(this),storeUpdated:this.dispatchModelUpdatedEvent.bind(this)}),this.addManagedPropertyListener("datasource",()=>this.setDatasource(this.gos.get("datasource"))),this.addManagedPropertyListener("cacheBlockSize",()=>this.resetCache()),this.addManagedPropertyListener("rowHeight",()=>{this.rowHeight=Ei(this.beans),this.cacheParams.rowHeight=this.rowHeight,this.updateRowHeights()})}onColumnEverything(){let e;e=!this.cacheParams||!w(this.cacheParams.sortModel,this.beans.sortSvc?.getSortModel()??[]),e&&this.reset()}getType(){return"infinite"}setDatasource(e){this.destroyDatasource(),this.datasource=e,e&&this.reset()}isEmpty(){return!this.infiniteCache}isRowsToRender(){return!!this.infiniteCache}getOverlayType(){const e=this.infiniteCache;return 0===e?.getRowCount()?this.beans.filterManager?.isAnyFilterPresent()?"noMatchingRows":"noRows":null}getNodesInRangeForSelection(e,t){return this.infiniteCache?.getRowNodesInRange(e,t)??[]}reset(){if(!this.datasource)return;null!=Hi(this.gos)||this.beans.selectionSvc?.reset("rowDataChanged"),this.resetCache()}dispatchModelUpdatedEvent(){this.eventSvc.dispatchEvent({type:"modelUpdated",newPage:!1,newPageSize:!1,newData:!1,keepRenderedRows:!0,animate:!1})}resetCache(){this.destroyCache();const e=this.beans,{filterManager:t,sortSvc:i,rowNodeBlockLoader:s,eventSvc:o,gos:r}=e;this.cacheParams={datasource:this.datasource,filterModel:t?.getFilterModel()??{},sortModel:i?.getSortModel()??[],rowNodeBlockLoader:s,initialRowCount:r.get("infiniteInitialRowCount"),maxBlocksInCache:r.get("maxBlocksInCache"),rowHeight:Ei(e),overflowSize:r.get("cacheOverflowSize"),blockSize:r.get("cacheBlockSize"),lastAccessedSequence:{value:0}},this.infiniteCache=this.createBean(new sb(this.cacheParams)),o.dispatchEventOnce({type:"rowCountReady"}),this.dispatchModelUpdatedEvent()}updateRowHeights(){this.forEachNode(e=>{e.setRowHeight(this.rowHeight),e.setRowTop(this.rowHeight*e.rowIndex)}),this.dispatchModelUpdatedEvent()}destroyCache(){this.infiniteCache=this.destroyBean(this.infiniteCache)}getRow(e){const t=this.infiniteCache;if(t&&!(e>=t.getRowCount()))return t.getRow(e)}getRowNode(e){let t;return this.forEachNode(i=>{i.id===e&&(t=i)}),t}forEachNode(e){this.infiniteCache?.forEachNodeDeep(e)}getTopLevelRowCount(){return this.getRowCount()}getTopLevelRowDisplayedIndex(e){return e}getRowIndexAtPixel(e){if(0!==this.rowHeight){const t=Math.floor(e/this.rowHeight),i=this.getRowCount()-1;return t>i?i:t}return 0}getRowCount(){return this.infiniteCache?this.infiniteCache.getRowCount():0}isRowPresent(e){return!!this.getRowNode(e.id)}refreshCache(){this.infiniteCache?.refreshCache()}purgeCache(){this.infiniteCache?.purgeCache()}isLastRowIndexKnown(){return this.infiniteCache?.isLastRowIndexKnown()??!1}setRowCount(e,t){this.infiniteCache?.setRowCount(e,t)}resetRowHeights(){}onRowHeightChanged(){}},class extends wt{constructor(){super(...arguments),this.beanName="rowNodeBlockLoader",this.activeBlockLoadsCount=0,this.blocks=[],this.active=!0}postConstruct(){this.maxConcurrentRequests=Wi(this.gos);const e=this.gos.get("blockLoadDebounceMillis");e&&e>0&&(this.checkBlockToLoadDebounce=Rt(this,this.performCheckBlocksToLoad.bind(this),e))}addBlock(e){this.blocks.push(e),e.addEventListener("loadComplete",this.loadComplete.bind(this)),this.checkBlockToLoad()}removeBlock(e){u(this.blocks,e)}destroy(){super.destroy(),this.active=!1}loadComplete(){this.activeBlockLoadsCount--,this.checkBlockToLoad()}checkBlockToLoad(){this.checkBlockToLoadDebounce?this.checkBlockToLoadDebounce():this.performCheckBlocksToLoad()}performCheckBlocksToLoad(){if(!this.active)return;if(this.printCacheStatus(),null!=this.maxConcurrentRequests&&this.activeBlockLoadsCount>=this.maxConcurrentRequests)return void Nt(this.gos,"RowNodeBlockLoader - checkBlockToLoad: max loads exceeded");const e=null!=this.maxConcurrentRequests?this.maxConcurrentRequests-this.activeBlockLoadsCount:1,t=this.blocks.filter(e=>"needsLoading"===e.state).slice(0,e);this.activeBlockLoadsCount+=t.length;for(const e of t)e.load();this.printCacheStatus()}getBlockState(){const e={};return this.blocks.forEach(t=>{const{id:i,state:s}=t.getBlockStateJson();e[i]=s}),e}printCacheStatus(){Nt(this.gos,`RowNodeBlockLoader - printCacheStatus: activePageLoadsCount = ${this.activeBlockLoadsCount}, blocks = ${JSON.stringify(this.getBlockState())}`)}}]},rb={moduleName:"InfiniteRowModel",version:ii,apiFunctions:{refreshInfiniteCache:function(e){Aa(e)?.refreshCache()},purgeInfiniteCache:function(e){Aa(e)?.purgeCache()},getInfiniteRowCount:function(e){return Aa(e)?.getRowCount()}},dependsOn:[ob,of]};var nb={moduleName:"EventApi",version:ii,apiFunctions:{addEventListener:function(e,t,i){e.apiEventSvc?.addListener(t,i)},addGlobalListener:function(e,t){e.apiEventSvc?.addGlobalListener(t)},removeEventListener:function(e,t,i){e.apiEventSvc?.removeListener(t,i)},removeGlobalListener:function(e,t){e.apiEventSvc?.removeGlobalListener(t)}},beans:[class extends wt{constructor(){super(...arguments),this.beanName="apiEventSvc",this.syncListeners=new Map,this.asyncListeners=new Map,this.syncGlobalListeners=new Set,this.globalListenerPairs=new Map}postConstruct(){this.wrapSvc=this.beans.frameworkOverrides.createGlobalEventListenerWrapper?.()}addListener(e,t){const i=this.wrapSvc?.wrap(e,t)??t,s=!Ig.has(e),o=s?this.asyncListeners:this.syncListeners;o.has(e)||o.set(e,new Set),o.get(e).add(i),this.eventSvc.addListener(e,i,s)}removeListener(e,t){const i=this.wrapSvc?.unwrap(e,t)??t,s=this.asyncListeners.get(e),o=!!s?.delete(i);o||this.syncListeners.get(e)?.delete(i),this.eventSvc.removeListener(e,i,o)}addGlobalListener(e){const t=this.wrapSvc?.wrapGlobal(e)??e,i=(e,i)=>{Ig.has(e)&&t(e,i)},s=(e,i)=>{Ig.has(e)||t(e,i)};this.globalListenerPairs.set(e,{syncListener:i,asyncListener:s});const o=this.eventSvc;o.addGlobalListener(i,!1),o.addGlobalListener(s,!0)}removeGlobalListener(e){const{eventSvc:t,wrapSvc:i,globalListenerPairs:s}=this,o=i?.unwrapGlobal(e)??e;if(s.has(o)){const{syncListener:i,asyncListener:r}=s.get(o);t.removeGlobalListener(i,!1),t.removeGlobalListener(r,!0),s.delete(e)}else this.syncGlobalListeners.delete(o),t.removeGlobalListener(o,!1)}destroyEventListeners(e,t){e.forEach((e,i)=>{e.forEach(e=>this.eventSvc.removeListener(i,e,t)),e.clear()}),e.clear()}destroyGlobalListeners(e,t){for(const i of e)this.eventSvc.removeGlobalListener(i,t);e.clear()}destroy(){super.destroy(),this.destroyEventListeners(this.syncListeners,!1),this.destroyEventListeners(this.asyncListeners,!0),this.destroyGlobalListeners(this.syncGlobalListeners,!1);const{globalListenerPairs:e,eventSvc:t}=this;e.forEach(({syncListener:e,asyncListener:i})=>{t.removeGlobalListener(e,!1),t.removeGlobalListener(i,!0)}),e.clear()}}]},ab=class extends wt{constructor(){super(...arguments),this.beanName="localeSvc"}getLocaleTextFunc(){const e=this.gos,t=e.getCallback("getLocaleText");return t?ft(t):Ct(e.get("localeText"))}},lb={moduleName:"Locale",version:ii,beans:[ab]};function db(e){return(e={...e}).version||(e.version="32.1.0"),"32.1.0"===e.version&&(e=function(e){return e.cellSelection=function(e,t){if(e&&"object"==typeof e)return e[t]}(e,"rangeSelection"),e}(e)),e.version=ii,e}var cb={moduleName:"GridState",version:ii,beans:[class extends wt{constructor(){super(...arguments),this.beanName="stateSvc",this.updateRowGroupExpansionStateTimer=0,this.suppressEvents=!0,this.queuedUpdateSources=new Set,this.dispatchStateUpdateEventDebounced=Rt(this,()=>this.dispatchQueuedStateUpdateEvents(),0),this.onRowGroupOpenedDebounced=Rt(this,()=>{this.beans.gos.get("ssrmExpandAllAffectsAllRows")?(this.updateCachedState("ssrmRowGroupExpansion",this.getRowGroupExpansionState()),this.updateCachedState("rowGroupExpansion",void 0)):(this.updateCachedState("rowGroupExpansion",this.getRowGroupExpansionState()),this.updateCachedState("ssrmRowGroupExpansion",void 0))},0),this.onRowSelectedDebounced=Rt(this,()=>{this.staleStateKeys.delete("rowSelection"),this.updateCachedState("rowSelection",this.getRowSelectionState())},0),this.staleStateKeys=new Set}postConstruct(){const{gos:e,ctrlsSvc:t,colDelayRenderSvc:i}=this.beans;this.isClientSideRowModel=yi(e);const s=db(e.get("initialState")??{}),o=s.partialColumnState;delete s.partialColumnState,this.cachedState=s;const r=this.suppressEventsAndDispatchInitEvent.bind(this);t.whenReady(this,()=>r(()=>this.setupStateOnGridReady(s))),(s.columnOrder||s.columnVisibility||s.columnSizing||s.columnPinning||s.columnGroup)&&i?.hideColumns("columnState");const[n,a,l]=this.addManagedEventListeners({newColumnsLoaded:({source:e})=>{"gridInitializing"===e&&(n(),r(()=>{this.setupStateOnColumnsInitialised(s,!!o),i?.revealColumns("columnState")}))},rowCountReady:()=>{a?.(),r(()=>this.setupStateOnRowCountReady(s))},firstDataRendered:()=>{l?.(),r(()=>this.setupStateOnFirstDataRendered(s))}})}destroy(){super.destroy(),clearTimeout(this.updateRowGroupExpansionStateTimer),this.queuedUpdateSources.clear()}getState(){return this.staleStateKeys.size&&this.refreshStaleState(),this.cachedState}setState(e,t){const i=db(e);delete i.partialColumnState,this.cachedState=i,this.startSuppressEvents();const s="api",o=t?new Set(t):void 0;this.setGridReadyState(i,s,o),this.setColumnsInitialisedState(i,s,!!o,o),this.setRowCountState(i,s,o),setTimeout(()=>{this.isAlive()&&this.setFirstDataRenderedState(i,s,o),this.stopSuppressEvents(s)})}setGridReadyState(e,t,i){"api"!==t||i?.has("sideBar")||this.beans.sideBar?.comp?.setState(e.sideBar),this.updateCachedState("sideBar",this.getSideBarState())}setupStateOnGridReady(e){this.setGridReadyState(e,"gridInitializing");const t=()=>this.updateCachedState("sideBar",this.getSideBarState());this.addManagedEventListeners({toolPanelVisibleChanged:t,sideBarUpdated:t})}updateColumnAndGroupState(){this.updateColumnState(["aggregation","columnOrder","columnPinning","columnSizing","columnVisibility","pivot","rowGroup","sort"]),this.updateCachedState("columnGroup",this.getColumnGroupState())}setColumnsInitialisedState(e,t,i,s){this.setColumnState(e,t,i,s),this.setColumnGroupState(e,t,s),this.updateColumnAndGroupState()}setupStateOnColumnsInitialised(e,t){this.setColumnsInitialisedState(e,"gridInitializing",t);const i=e=>()=>this.updateColumnState([e]);this.addManagedEventListeners({columnValueChanged:i("aggregation"),columnMoved:i("columnOrder"),columnPinned:i("columnPinning"),columnResized:i("columnSizing"),columnVisible:i("columnVisibility"),columnPivotChanged:i("pivot"),columnPivotModeChanged:i("pivot"),columnRowGroupChanged:i("rowGroup"),sortChanged:i("sort"),newColumnsLoaded:this.updateColumnAndGroupState.bind(this),columnGroupOpened:()=>this.updateCachedState("columnGroup",this.getColumnGroupState())})}setRowCountState(e,t,i){const{filter:s,rowGroupExpansion:o,ssrmRowGroupExpansion:r,rowSelection:n,pagination:a,rowPinning:l}=e,d=(e,s)=>!i?.has(e)&&(s||"api"===t);d("filter",s)&&this.setFilterState(s),d("rowGroupExpansion",o)&&this.setRowGroupExpansionState(r,o,t),d("rowSelection",n)&&this.setRowSelectionState(n,t),d("pagination",a)&&this.setPaginationState(a,t),d("rowPinning",l)&&this.setRowPinningState(l);const c=this.updateCachedState.bind(this);c("filter",this.getFilterState()),this.beans.gos.get("ssrmExpandAllAffectsAllRows")?(c("ssrmRowGroupExpansion",this.getRowGroupExpansionState()),c("rowGroupExpansion",void 0)):(c("rowGroupExpansion",this.getRowGroupExpansionState()),c("ssrmRowGroupExpansion",void 0)),c("rowSelection",this.getRowSelectionState()),c("pagination",this.getPaginationState())}setupStateOnRowCountReady(e){this.setRowCountState(e,"gridInitializing");const t=this.updateCachedState.bind(this),i=()=>{this.updateRowGroupExpansionStateTimer=0,this.beans.gos.get("ssrmExpandAllAffectsAllRows")?(t("ssrmRowGroupExpansion",this.getRowGroupExpansionState()),t("rowGroupExpansion",void 0)):(t("rowGroupExpansion",this.getRowGroupExpansionState()),t("ssrmRowGroupExpansion",void 0))},s=()=>t("filter",this.getFilterState()),{gos:o,colFilter:r,selectableFilter:n}=this.beans;this.addManagedEventListeners({filterChanged:s,rowExpansionStateChanged:this.onRowGroupOpenedDebounced,expandOrCollapseAll:i,columnRowGroupChanged:i,rowDataUpdated:()=>{(0!==o.get("groupDefaultExpanded")||o.get("isGroupOpenByDefault"))&&(this.updateRowGroupExpansionStateTimer||(this.updateRowGroupExpansionStateTimer=setTimeout(i)))},selectionChanged:()=>{this.staleStateKeys.add("rowSelection"),this.onRowSelectedDebounced()},paginationChanged:e=>{(e.newPage||e.newPageSize)&&t("pagination",this.getPaginationState())},pinnedRowsChanged:()=>t("rowPinning",this.getRowPinningState())}),r&&this.addManagedListeners(r,{filterStateChanged:s}),n&&this.addManagedListeners(n,{selectedFilterChanged:s})}setFirstDataRenderedState(e,t,i){const{scroll:s,cellSelection:o,focusedCell:r,columnOrder:n}=e,a=(e,s)=>!i?.has(e)&&(s||"api"===t);a("focusedCell",r)&&this.setFocusedCellState(r),a("cellSelection",o)&&this.setCellSelectionState(o),a("scroll",s)&&this.setScrollState(s),this.setColumnPivotState(!!n?.orderedColIds,t);const l=this.updateCachedState.bind(this);l("sideBar",this.getSideBarState()),l("focusedCell",this.getFocusedCellState());const d=this.getRangeSelectionState();l("rangeSelection",d),l("cellSelection",d),l("scroll",this.getScrollState())}setupStateOnFirstDataRendered(e){this.setFirstDataRenderedState(e,"gridInitializing");const t=this.updateCachedState.bind(this),i=()=>t("focusedCell",this.getFocusedCellState());this.addManagedEventListeners({cellFocused:i,cellFocusCleared:i,cellSelectionChanged:e=>{if(e.finished){const e=this.getRangeSelectionState();t("rangeSelection",e),t("cellSelection",e)}},bodyScrollEnd:()=>t("scroll",this.getScrollState())})}getColumnState(){const e=this.beans;return Um(Fo(e),e.colModel.isPivotMode())}setColumnState(e,t,i,s){const{sort:o,rowGroup:r,aggregation:n,pivot:a,columnPinning:l,columnVisibility:d,columnSizing:c,columnOrder:u}=e;let h=!1;const g=(e,i)=>{const o=!(s?.has(e)||!i&&"api"!==t);return h||(h=o),o},p={},m=e=>{let t=p[e];return t||(t={colId:e},p[e]=t,t)},f={},C=g("sort",o);C&&o?.sortModel.forEach(({colId:e,sort:t},i)=>{const s=m(e);s.sort=t,s.sortIndex=i}),!C&&i||(f.sort=null,f.sortIndex=null);const v=g("rowGroup",r);v&&r?.groupColIds.forEach((e,t)=>{const i=m(e);i.rowGroup=!0,i.rowGroupIndex=t}),!v&&i||(f.rowGroup=null,f.rowGroupIndex=null);const w=g("aggregation",n);w&&n?.aggregationModel.forEach(({colId:e,aggFunc:t})=>{m(e).aggFunc=t}),!w&&i||(f.aggFunc=null);const b=g("pivot",a);b&&(a?.pivotColIds.forEach((e,t)=>{const i=m(e);i.pivot=!0,i.pivotIndex=t}),this.gos.updateGridOptions({options:{pivotMode:!!a?.pivotMode},source:t})),!b&&i||(f.pivot=null,f.pivotIndex=null);const y=g("columnPinning",l);if(y){for(const e of l?.leftColIds??[])m(e).pinned="left";for(const e of l?.rightColIds??[])m(e).pinned="right"}!y&&i||(f.pinned=null);const S=g("columnVisibility",d);if(S)for(const e of d?.hiddenColIds??[])m(e).hide=!0;!S&&i||(f.hide=null);const x=g("columnSizing",c);if(x)for(const{colId:e,flex:t,width:i}of c?.columnSizingModel??[]){const s=m(e);s.flex=t??null,s.width=i}!x&&i||(f.flex=null);const F=u?.orderedColIds,R=!!F?.length&&!s?.has("columnOrder"),P=R?F.map(e=>m(e)):Object.values(p);(P.length||h)&&(this.columnStates=P,yo(this.beans,{state:P,applyOrder:R,defaultState:f},t))}setColumnPivotState(e,t){const i=this.columnStates;this.columnStates=void 0;const s=this.columnGroupStates;this.columnGroupStates=void 0;const o=this.beans,{pivotResultCols:r,colGroupSvc:n}=o;if(r?.isPivotResultColsPresent()){if(i){const s=[];for(const e of i)r.getPivotResultCol(e.colId)&&s.push(e);yo(o,{state:s,applyOrder:e},t)}s&&n?.setColumnGroupState(s,t)}}getColumnGroupState(){const e=this.beans.colGroupSvc;if(!e)return;return Km(e.getColumnGroupState())}setColumnGroupState(e,t,i){const s=this.beans.colGroupSvc;if(!s||i?.has("columnGroup")||"api"!==t&&!Object.prototype.hasOwnProperty.call(e,"columnGroup"))return;const o=new Set(e.columnGroup?.openColumnGroupIds),r=s.getColumnGroupState().map(({groupId:e})=>{const t=o.has(e);return t&&o.delete(e),{groupId:e,open:t}});for(const e of o)r.push({groupId:e,open:!0});r.length&&(this.columnGroupStates=r),s.setColumnGroupState(r,t)}getFilterState(){const{filterManager:e,selectableFilter:t}=this.beans;let i=e?.getFilterModel();i&&0===Object.keys(i).length&&(i=void 0);const s=e?.getFilterState(),o=e?.getAdvFilterModel()??void 0,r=t?.getState();return i||o||s||r?{filterModel:i,columnFilterState:s,advancedFilterModel:o,selectableFilters:r}:void 0}setFilterState(e){const{filterManager:t,selectableFilter:i}=this.beans,{filterModel:s,columnFilterState:o,advancedFilterModel:r,selectableFilters:n}=e??{filterModel:null,columnFilterState:null,advancedFilterModel:null};void 0!==n&&i?.setState(n??{}),void 0===s&&void 0===o||t?.setFilterState(s??null,o??null,"columnFilter"),void 0!==r&&t?.setAdvFilterModel(r??null,"advancedFilter")}getRangeSelectionState(){const e=this.beans.rangeSvc?.getCellRanges().map(e=>{const{id:t,type:i,startRow:s,endRow:o,columns:r,startColumn:n}=e;return{id:t,type:i,startRow:s,endRow:o,colIds:r.map(e=>e.getColId()),startColId:n.getColId()}});return e?.length?{cellRanges:e}:void 0}setCellSelectionState(e){const{gos:t,rangeSvc:i,colModel:s,visibleCols:o}=this.beans;if(!Qi(t)||!i)return;const r=[];for(const t of e?.cellRanges??[]){const e=[];for(const i of t.colIds){const t=s.getCol(i);t&&e.push(t)}if(!e.length)continue;let i=s.getCol(t.startColId);if(!i){const t=o.allCols,s=new Set(e);i=t.find(e=>s.has(e))}r.push({...t,columns:e,startColumn:i})}i.setCellRanges(r)}getScrollState(){if(!this.isClientSideRowModel)return;const e=this.beans.ctrlsSvc.getScrollFeature(),{left:t}=e?.getHScrollPosition()??{left:0},{top:i}=e?.getVScrollPosition()??{top:0};return i||t?{top:i,left:t}:void 0}setScrollState(e){if(!this.isClientSideRowModel)return;const{top:t,left:i}=e??{top:0,left:0},{frameworkOverrides:s,rowRenderer:o,animationFrameSvc:r,ctrlsSvc:n}=this.beans;s.wrapIncoming(()=>{n.get("center").setCenterViewportScrollLeft(i),n.getScrollFeature()?.setVerticalScrollPosition(t),o.redraw({afterScroll:!0}),r?.flushAllFrames()})}getSideBarState(){return this.beans.sideBar?.comp?.getState()}getFocusedCellState(){if(!this.isClientSideRowModel)return;const e=this.beans.focusSvc.getFocusedCell();if(e){const{column:t,rowIndex:i,rowPinned:s}=e;return{colId:t.getColId(),rowIndex:i,rowPinned:s}}}setFocusedCellState(e){if(!this.isClientSideRowModel)return;const{focusSvc:t,colModel:i}=this.beans;if(!e)return void t.clearFocusedCell();const{colId:s,rowIndex:o,rowPinned:r}=e;t.setFocusedCell({column:i.getCol(s),rowIndex:o,rowPinned:r,forceBrowserFocus:!0,preventScrollOnBrowserFocus:!0})}getPaginationState(){const{pagination:e,gos:t}=this.beans;if(!e)return;const i=e.getCurrentPage(),s=t.get("paginationAutoPageSize")?void 0:e.getPageSize();return i||s?{page:i,pageSize:s}:void 0}setPaginationState(e,t){const{pagination:i,gos:s}=this.beans;if(!i)return;const{pageSize:o,page:r}=e??{page:0,pageSize:s.get("paginationPageSize")},n="gridInitializing"===t;o&&!s.get("paginationAutoPageSize")&&i.setPageSize(o,n?"initialState":"pageSizeSelector"),"number"==typeof r&&(n?i.setPage(r):i.goToPage(r))}getRowSelectionState(){const e=this.beans.selectionSvc;if(!e)return;const t=e.getSelectionState();return!t||!Array.isArray(t)&&(!1===t.selectAll||!1===t.selectAllChildren)&&!t?.toggledNodes?.length?void 0:t}setRowSelectionState(e,t){this.beans.selectionSvc?.setSelectionState(e,t,"api"===t)}getRowGroupExpansionState(){const{expansionSvc:e}=this.beans;if(e)return e.getExpansionState()}getRowPinningState(){return this.beans.pinnedRowModel?.getPinnedState()}setRowPinningState(e){const t=this.beans.pinnedRowModel;e?t?.setPinnedState(e):t?.reset()}setRowGroupExpansionState(e,t,i){const s=this.beans.expansionSvc;if(!s)return;const o=t??{expandedRowGroupIds:[],collapsedRowGroupIds:[]};s.setExpansionState(o,i)}updateColumnState(e){const t=this.getColumnState();let i=!1;const s=this.cachedState;for(const e of Object.keys(t)){const o=t[e];w(o,s[e])||(i=!0)}this.cachedState={...s,...t},i&&this.dispatchStateUpdateEvent(e)}updateCachedState(e,t){const i=this.cachedState[e];this.setCachedStateValue(e,t),w(t,i)||this.dispatchStateUpdateEvent([e])}setCachedStateValue(e,t){this.cachedState={...this.cachedState,[e]:t}}refreshStaleState(){const e=this.staleStateKeys;for(const t of e)"rowSelection"===t&&this.setCachedStateValue(t,this.getRowSelectionState());e.clear()}dispatchStateUpdateEvent(e){if(!this.suppressEvents){for(const t of e)this.queuedUpdateSources.add(t);this.dispatchStateUpdateEventDebounced()}}dispatchQueuedStateUpdateEvents(){const e=this.queuedUpdateSources,t=Array.from(e);e.clear(),this.eventSvc.dispatchEvent({type:"stateUpdated",sources:t,state:this.cachedState})}startSuppressEvents(){this.suppressEvents=!0,this.beans.colAnimation?.setSuppressAnimation(!0)}stopSuppressEvents(e){setTimeout(()=>{this.suppressEvents=!1,this.queuedUpdateSources.clear(),this.isAlive()&&(this.beans.colAnimation?.setSuppressAnimation(!1),this.dispatchStateUpdateEvent([e]))})}suppressEventsAndDispatchInitEvent(e){this.startSuppressEvents(),e(),this.stopSuppressEvents("gridInitializing")}}],apiFunctions:{getState:function(e){return e.stateSvc?.getState()??{}},setState:function(e,t,i){return e.stateSvc?.setState(t,i)}}};function ub(e,t){if("number"!=typeof e)return"";const i=t(),s=i("thousandSeparator",","),o=i("decimalSeparator",".");return e.toString().replace(".",o).replace(/(\d)(?=(\d{3})+(?!\d))/g,`$1${s}`)}var hb="paginationPageSizeSelector",gb={tag:"span",cls:"ag-paging-page-size"},pb={selector:"AG-PAGE-SIZE-SELECTOR",component:class extends Wo{constructor(){super(gb),this.hasEmptyOption=!1,this.handlePageSizeItemSelected=()=>{if(!this.selectPageSizeComp)return;const e=this.selectPageSizeComp.getValue();if(!e)return;const t=Number(e);isNaN(t)||t<1||t===this.pagination.getPageSize()||(this.pagination.setPageSize(t,"pageSizeSelector"),this.hasEmptyOption&&this.toggleSelectDisplay(!0),this.selectPageSizeComp.getFocusableElement().focus())}}wireBeans(e){this.pagination=e.pagination}postConstruct(){this.addManagedPropertyListener(hb,()=>{this.onPageSizeSelectorValuesChange()}),this.addManagedEventListeners({paginationChanged:e=>this.handlePaginationChanged(e)})}handlePaginationChanged(e){if(!this.selectPageSizeComp||!e?.newPageSize)return;const t=this.pagination.getPageSize();this.getPageSizeSelectorValues().includes(t)?this.selectPageSizeComp.setValue(t.toString()):this.hasEmptyOption?this.selectPageSizeComp.setValue(""):this.toggleSelectDisplay(!0)}toggleSelectDisplay(e){this.selectPageSizeComp&&!e&&this.reset(),e&&(this.reloadPageSizesSelector(),this.selectPageSizeComp)}reset(){Te(this.getGui()),this.selectPageSizeComp&&(this.selectPageSizeComp=this.destroyBean(this.selectPageSizeComp))}onPageSizeSelectorValuesChange(){this.selectPageSizeComp&&this.shouldShowPageSizeSelector()&&this.reloadPageSizesSelector()}shouldShowPageSizeSelector(){return this.gos.get("pagination")&&!this.gos.get("suppressPaginationPanel")&&!this.gos.get("paginationAutoPageSize")&&!1!==this.gos.get(hb)}reloadPageSizesSelector(){const e=this.getPageSizeSelectorValues(),t=this.pagination.getPageSize(),i=!t||!e.includes(t);if(i){const i=this.gos.exists("paginationPageSize"),s=!0!==this.gos.get(hb);gi(94,{pageSizeSet:i,pageSizesSet:s,pageSizeOptions:e,paginationPageSizeOption:t}),s||gi(95,{paginationPageSizeOption:t,paginationPageSizeSelector:hb}),e.unshift("")}const s=String(i?"":t);this.selectPageSizeComp?(d(this.pageSizeOptions,e)||(this.selectPageSizeComp.clearOptions().addOptions(this.createPageSizeSelectOptions(e)),this.pageSizeOptions=e),this.selectPageSizeComp.setValue(s,!0)):this.createPageSizeSelectorComp(e,s),this.hasEmptyOption=i}createPageSizeSelectOptions(e){return e.map(e=>({value:String(e)}))}createPageSizeSelectorComp(e,t){const i=this.getLocaleTextFunc(),s=i("pageSizeSelectorLabel","Page Size:"),o=i("ariaPageSizeSelectorLabel","Page Size");this.selectPageSizeComp=this.createManagedBean(new vC).addOptions(this.createPageSizeSelectOptions(e)).setValue(t).setAriaLabel(o).setLabel(s).onValueChange(()=>this.handlePageSizeItemSelected()),this.appendChild(this.selectPageSizeComp)}getPageSizeSelectorValues(){const e=[20,50,100],t=this.gos.get(hb);return Array.isArray(t)&&t?.length?[...t].sort((e,t)=>e-t):e}destroy(){this.toggleSelectDisplay(!1),super.destroy()}}},mb={selector:"AG-PAGINATION",component:class extends Md{constructor(){super(),this.btFirst=Lo,this.btPrevious=Lo,this.btNext=Lo,this.btLast=Lo,this.lbRecordCount=Lo,this.lbFirstRowOnPage=Lo,this.lbLastRowOnPage=Lo,this.lbCurrent=Lo,this.lbTotal=Lo,this.pageSizeComp=Lo,this.previousAndFirstButtonsDisabled=!1,this.nextButtonDisabled=!1,this.lastButtonDisabled=!1,this.areListenersSetup=!1,this.allowFocusInnerElement=!1,this.registerCSS(".ag-paging-panel{align-items:center;border-top:var(--ag-footer-row-border);display:flex;flex-wrap:wrap-reverse;gap:calc(var(--ag-spacing)*4);justify-content:flex-end;min-height:var(--ag-pagination-panel-height);padding:calc(var(--ag-spacing)*.5) var(--ag-cell-horizontal-padding);row-gap:calc(var(--ag-spacing)*.5);@container (width < 600px){justify-content:center}}:where(.ag-paging-page-size) .ag-wrapper{min-width:50px}.ag-paging-page-summary-panel,.ag-paging-row-summary-panel{margin:calc(var(--ag-spacing)*.5)}.ag-paging-page-summary-panel{align-items:center;display:flex;gap:var(--ag-cell-widget-spacing);.ag-disabled &{pointer-events:none}}.ag-paging-button{cursor:pointer;position:relative;&.ag-disabled{cursor:default;opacity:.5}}.ag-paging-number,.ag-paging-row-summary-panel-number{font-weight:500}.ag-paging-description{line-height:0}")}wireBeans(e){this.rowModel=e.rowModel,this.pagination=e.pagination,this.ariaAnnounce=e.ariaAnnounce}postConstruct(){const e=this.gos.get("enableRtl");this.setTemplate(this.getTemplate(),[pb]);const{btFirst:t,btPrevious:i,btNext:s,btLast:o}=this;this.activateTabIndex([t,i,s,o]),t.insertAdjacentElement("afterbegin",Bo(e?"last":"first",this.beans)),i.insertAdjacentElement("afterbegin",Bo(e?"next":"previous",this.beans)),s.insertAdjacentElement("afterbegin",Bo(e?"previous":"next",this.beans)),o.insertAdjacentElement("afterbegin",Bo(e?"first":"last",this.beans)),this.addManagedPropertyListener("pagination",this.onPaginationChanged.bind(this)),this.addManagedPropertyListener("suppressPaginationPanel",this.onPaginationChanged.bind(this)),this.addManagedPropertyListeners(["paginationPageSizeSelector","paginationAutoPageSize","suppressPaginationPanel"],()=>this.onPageSizeRelatedOptionsChange()),this.pageSizeComp.toggleSelectDisplay(this.pageSizeComp.shouldShowPageSizeSelector()),this.initialiseTabGuard({onTabKeyDown:()=>{},focusInnerElement:e=>this.allowFocusInnerElement?this.tabGuardFeature.getTabGuardCtrl().focusInnerElement(e):Dn(this.beans,e),forceFocusOutWhenTabGuardsAreEmpty:!0}),this.onPaginationChanged()}setAllowFocus(e){this.allowFocusInnerElement=e}onPaginationChanged(){const e=this.gos.get("pagination")&&!this.gos.get("suppressPaginationPanel");this.setDisplayed(e),e&&(this.setupListeners(),this.enableOrDisableButtons(),this.updateLabels(),this.onPageSizeRelatedOptionsChange())}onPageSizeRelatedOptionsChange(){this.pageSizeComp.toggleSelectDisplay(this.pageSizeComp.shouldShowPageSizeSelector())}setupListeners(){if(!this.areListenersSetup){this.addManagedEventListeners({paginationChanged:this.onPaginationChanged.bind(this)});for(const e of[{el:this.btFirst,fn:this.onBtFirst.bind(this)},{el:this.btPrevious,fn:this.onBtPrevious.bind(this)},{el:this.btNext,fn:this.onBtNext.bind(this)},{el:this.btLast,fn:this.onBtLast.bind(this)}]){const{el:t,fn:i}=e;this.addManagedListeners(t,{click:i,keydown:e=>{e.key!==To.ENTER&&e.key!==To.SPACE||(e.preventDefault(),i())}})}Tn(this.beans,this,this.getGui()),this.areListenersSetup=!0}}onBtFirst(){this.previousAndFirstButtonsDisabled||this.pagination.goToFirstPage()}formatNumber(e){const t=this.gos.getCallback("paginationNumberFormatter");if(t){return t({value:e})}return ub(e,this.getLocaleTextFunc.bind(this))}getTemplate(){const e=this.getLocaleTextFunc(),t=`ag-${this.getCompId()}`;return{tag:"div",cls:"ag-paging-panel ag-unselectable",attrs:{id:`${t}`},children:[{tag:"ag-page-size-selector",ref:"pageSizeComp"},{tag:"span",cls:"ag-paging-row-summary-panel",children:[{tag:"span",ref:"lbFirstRowOnPage",cls:"ag-paging-row-summary-panel-number",attrs:{id:`${t}-first-row`}},{tag:"span",attrs:{id:`${t}-to`},children:e("to","to")},{tag:"span",ref:"lbLastRowOnPage",cls:"ag-paging-row-summary-panel-number",attrs:{id:`${t}-last-row`}},{tag:"span",attrs:{id:`${t}-of`},children:e("of","of")},{tag:"span",ref:"lbRecordCount",cls:"ag-paging-row-summary-panel-number",attrs:{id:`${t}-row-count`}}]},{tag:"span",cls:"ag-paging-page-summary-panel",role:"presentation",children:[{tag:"div",ref:"btFirst",cls:"ag-button ag-paging-button",role:"button",attrs:{"aria-label":e("firstPage","First Page")}},{tag:"div",ref:"btPrevious",cls:"ag-button ag-paging-button",role:"button",attrs:{"aria-label":e("previousPage","Previous Page")}},{tag:"span",cls:"ag-paging-description",children:[{tag:"span",attrs:{id:`${t}-start-page`},children:e("page","Page")},{tag:"span",ref:"lbCurrent",cls:"ag-paging-number",attrs:{id:`${t}-start-page-number`}},{tag:"span",attrs:{id:`${t}-of-page`},children:e("of","of")},{tag:"span",ref:"lbTotal",cls:"ag-paging-number",attrs:{id:`${t}-of-page-number`}}]},{tag:"div",ref:"btNext",cls:"ag-button ag-paging-button",role:"button",attrs:{"aria-label":e("nextPage","Next Page")}},{tag:"div",ref:"btLast",cls:"ag-button ag-paging-button",role:"button",attrs:{"aria-label":e("lastPage","Last Page")}}]}]}}onBtNext(){this.nextButtonDisabled||this.pagination.goToNextPage()}onBtPrevious(){this.previousAndFirstButtonsDisabled||this.pagination.goToPreviousPage()}onBtLast(){this.lastButtonDisabled||this.pagination.goToLastPage()}enableOrDisableButtons(){const e=this.pagination.getCurrentPage(),t=this.rowModel.isLastRowIndexKnown(),i=this.pagination.getTotalPages();this.previousAndFirstButtonsDisabled=0===e,this.toggleButtonDisabled(this.btFirst,this.previousAndFirstButtonsDisabled),this.toggleButtonDisabled(this.btPrevious,this.previousAndFirstButtonsDisabled);const s=this.isZeroPagesToDisplay(),o=e===i-1;this.nextButtonDisabled=o||s,this.lastButtonDisabled=!t||s||e===i-1,this.toggleButtonDisabled(this.btNext,this.nextButtonDisabled),this.toggleButtonDisabled(this.btLast,this.lastButtonDisabled)}toggleButtonDisabled(e,t){K(e,t),e.classList.toggle("ag-disabled",t)}isZeroPagesToDisplay(){const e=this.rowModel.isLastRowIndexKnown(),t=this.pagination.getTotalPages();return e&&0===t}updateLabels(){const e=this.rowModel.isLastRowIndexKnown(),t=this.pagination.getTotalPages(),i=this.pagination.getMasterRowCount(),s=e?i:null,o=this.pagination.getCurrentPage(),r=this.pagination.getPageSize();let n,a;this.isZeroPagesToDisplay()?n=a=0:(n=r*o+1,a=n+r-1,e&&a>s&&(a=s));const l=!e&&i0?o+1:0,g=this.formatNumber(h);let p,m;if(this.lbCurrent.textContent=g,e)p=this.formatNumber(t),m=this.formatNumber(s);else{const e=u("more","more");p=e,m=e}this.lbTotal.textContent=p,this.lbRecordCount.textContent=m,this.announceAriaStatus(d,c,m,g,p)}announceAriaStatus(e,t,i,s,o){const r=this.getLocaleTextFunc(),n=r("page","Page"),a=r("to","to"),l=r("of","of"),d=`${e} ${a} ${t} ${l} ${i}`,c=`${n} ${s} ${l} ${o}`;d!==this.ariaRowStatus&&(this.ariaRowStatus=d,this.ariaAnnounce?.announceValue(d,"paginationRow")),c!==this.ariaPageStatus&&(this.ariaPageStatus=c,this.ariaAnnounce?.announceValue(c,"paginationPage"))}}},fb={moduleName:"Pagination",version:ii,beans:[class extends wt{constructor(){super(...arguments),this.beanName="pagination",this.currentPage=0,this.topDisplayedRowIndex=0,this.bottomDisplayedRowIndex=0,this.masterRowCount=0}postConstruct(){const e=this.gos;this.active=e.get("pagination"),this.pageSizeFromGridOptions=e.get("paginationPageSize"),this.paginateChildRows=this.isPaginateChildRows(),this.addManagedPropertyListener("pagination",this.onPaginationGridOptionChanged.bind(this)),this.addManagedPropertyListener("paginationPageSize",this.onPageSizeGridOptionChanged.bind(this))}getPaginationSelector(){return mb}isPaginateChildRows(){const e=this.gos;return!!(e.get("groupHideParentOfSingleChild")||e.get("groupRemoveSingleChildren")||e.get("groupRemoveLowestSingleChildren"))||e.get("paginateChildRows")}onPaginationGridOptionChanged(){this.active=this.gos.get("pagination"),this.calculatePages(),this.dispatchPaginationChangedEvent({keepRenderedRows:!0})}onPageSizeGridOptionChanged(){this.setPageSize(this.gos.get("paginationPageSize"),"gridOptions")}goToPage(e){const t=this.currentPage;if(!this.active||t===e||"number"!=typeof t)return;const{editSvc:i}=this.beans;i?.isEditing()&&(i.isBatchEditing()?i.cleanupEditors():i.stopEditing(void 0,{source:"api"})),this.currentPage=e,this.calculatePages(),this.dispatchPaginationChangedEvent({newPage:!0})}goToPageWithIndex(e){if(!this.active)return;let t=e;this.paginateChildRows||(t=this.beans.rowModel.getTopLevelIndexFromDisplayedIndex?.(e)??e),this.goToPage(Math.floor(t/this.pageSize))}isRowInPage(e){return!this.active||e>=this.topDisplayedRowIndex&&e<=this.bottomDisplayedRowIndex}getCurrentPage(){return this.currentPage}goToNextPage(){this.goToPage(this.currentPage+1)}goToPreviousPage(){this.goToPage(this.currentPage-1)}goToFirstPage(){this.goToPage(0)}goToLastPage(){const e=this.beans.rowModel.getRowCount(),t=Math.floor(e/this.pageSize);this.goToPage(t)}getPageSize(){return this.pageSize}getTotalPages(){return this.totalPages}setPage(e){this.currentPage=e}get pageSize(){return f(this.pageSizeAutoCalculated)&&this.gos.get("paginationAutoPageSize")?this.pageSizeAutoCalculated:f(this.pageSizeFromPageSizeSelector)?this.pageSizeFromPageSizeSelector:f(this.pageSizeFromInitialState)?this.pageSizeFromInitialState:f(this.pageSizeFromGridOptions)?this.pageSizeFromGridOptions:100}calculatePages(){this.active?this.paginateChildRows?this.calculatePagesAllRows():this.calculatePagesMasterRowsOnly():this.calculatedPagesNotActive(),this.beans.pageBounds.calculateBounds(this.topDisplayedRowIndex,this.bottomDisplayedRowIndex)}unsetAutoCalculatedPageSize(){if(void 0===this.pageSizeAutoCalculated)return;const e=this.pageSizeAutoCalculated;this.pageSizeAutoCalculated=void 0,this.pageSize!==e&&(this.calculatePages(),this.dispatchPaginationChangedEvent({newPageSize:!0}))}setPageSize(e,t){const i=this.pageSize;switch(t){case"autoCalculated":this.pageSizeAutoCalculated=e;break;case"pageSizeSelector":this.pageSizeFromPageSizeSelector=e,0!==this.currentPage&&this.goToFirstPage();break;case"initialState":this.pageSizeFromInitialState=e;break;case"gridOptions":this.pageSizeFromGridOptions=e,this.pageSizeFromInitialState=void 0,this.pageSizeFromPageSizeSelector=void 0,0!==this.currentPage&&this.goToFirstPage()}i!==this.pageSize&&(this.calculatePages(),this.dispatchPaginationChangedEvent({newPageSize:!0,keepRenderedRows:!0}))}setZeroRows(){this.masterRowCount=0,this.topDisplayedRowIndex=0,this.bottomDisplayedRowIndex=-1,this.currentPage=0,this.totalPages=0}adjustCurrentPageIfInvalid(){const e=this.totalPages;this.currentPage>=e&&(this.currentPage=e-1);const t=this.currentPage;(!isFinite(t)||isNaN(t)||t<0)&&(this.currentPage=0)}calculatePagesMasterRowsOnly(){const e=this.beans.rowModel,t=e.getTopLevelRowCount();if(this.masterRowCount=t,t<=0)return void this.setZeroRows();const i=this.pageSize,s=t-1;this.totalPages=Math.floor(s/i)+1,this.adjustCurrentPageIfInvalid();const o=this.currentPage,r=i*o;let n=i*(o+1)-1;if(n>s&&(n=s),this.topDisplayedRowIndex=e.getTopLevelRowDisplayedIndex(r),n===s)this.bottomDisplayedRowIndex=e.getRowCount()-1;else{const t=e.getTopLevelRowDisplayedIndex(n+1);this.bottomDisplayedRowIndex=t-1}}getMasterRowCount(){return this.masterRowCount}calculatePagesAllRows(){const e=this.beans.rowModel.getRowCount();if(this.masterRowCount=e,0===e)return void this.setZeroRows();const{pageSize:t,currentPage:i}=this,s=e-1;this.totalPages=Math.floor(s/t)+1,this.adjustCurrentPageIfInvalid(),this.topDisplayedRowIndex=t*i,this.bottomDisplayedRowIndex=t*(i+1)-1,this.bottomDisplayedRowIndex>s&&(this.bottomDisplayedRowIndex=s)}calculatedPagesNotActive(){this.setPageSize(void 0,"autoCalculated"),this.totalPages=1,this.currentPage=0,this.topDisplayedRowIndex=0,this.bottomDisplayedRowIndex=this.beans.rowModel.getRowCount()-1}dispatchPaginationChangedEvent(e){const{keepRenderedRows:t=!1,newPage:i=!1,newPageSize:s=!1}=e;this.eventSvc.dispatchEvent({type:"paginationChanged",animate:!1,newData:!1,newPage:i,newPageSize:s,keepRenderedRows:t})}},class extends wt{constructor(){super(...arguments),this.beanName="paginationAutoPageSizeSvc"}postConstruct(){this.beans.ctrlsSvc.whenReady(this,e=>{this.centerRowsCtrl=e.center;const t=this.checkPageSize.bind(this);this.addManagedEventListeners({bodyHeightChanged:t,scrollVisibilityChanged:t}),this.addManagedPropertyListener("paginationAutoPageSize",this.onPaginationAutoSizeChanged.bind(this)),this.checkPageSize()})}notActive(){return!this.gos.get("paginationAutoPageSize")||null==this.centerRowsCtrl}onPaginationAutoSizeChanged(){this.notActive()?this.beans.pagination.unsetAutoCalculatedPageSize():this.checkPageSize()}checkPageSize(){if(this.notActive())return;const e=this.centerRowsCtrl.viewportSizeFeature.getBodyHeight();if(e>0){const t=this.beans,i=()=>{const i=Math.max(Ei(t),1),s=Math.floor(e/i);t.pagination.setPageSize(s,"autoCalculated")};this.isBodyRendered?Rt(this,i,50)():(i(),this.isBodyRendered=!0)}else this.isBodyRendered=!1}}],icons:{first:"first",previous:"previous",next:"next",last:"last"},apiFunctions:{paginationIsLastPageFound:function(e){return e.rowModel.isLastRowIndexKnown()},paginationGetPageSize:function(e){return e.pagination?.getPageSize()??100},paginationGetCurrentPage:function(e){return e.pagination?.getCurrentPage()??0},paginationGetTotalPages:function(e){return e.pagination?.getTotalPages()??1},paginationGetRowCount:function(e){return e.pagination?e.pagination.getMasterRowCount():e.rowModel.getRowCount()},paginationGoToNextPage:function(e){e.pagination?.goToNextPage()},paginationGoToPreviousPage:function(e){e.pagination?.goToPreviousPage()},paginationGoToFirstPage:function(e){e.pagination?.goToFirstPage()},paginationGoToLastPage:function(e){e.pagination?.goToLastPage()},paginationGoToPage:function(e,t){e.pagination?.goToPage(t)}},dependsOn:[Hf]};var Cb={moduleName:"PinnedRow",version:ii,beans:[sl],css:[".ag-row-pinned-source{background-color:var(--ag-pinned-source-row-background-color);color:var(--ag-pinned-source-row-text-color);font-weight:var(--ag-pinned-source-row-font-weight)}.ag-row-pinned-manual{background-color:var(--ag-pinned-row-background-color);color:var(--ag-pinned-row-text-color);font-weight:var(--ag-pinned-row-font-weight)}"],apiFunctions:{getPinnedTopRowCount:function(e){return e.pinnedRowModel?.getPinnedTopRowCount()??0},getPinnedBottomRowCount:function(e){return e.pinnedRowModel?.getPinnedBottomRowCount()??0},getPinnedTopRow:function(e,t){return e.pinnedRowModel?.getPinnedTopRow(t)},getPinnedBottomRow:function(e,t){return e.pinnedRowModel?.getPinnedBottomRow(t)},forEachPinnedRow:function(e,t,i){return e.pinnedRowModel?.forEachPinnedRow(t,i)}},icons:{rowPin:"pin",rowPinTop:"pinned-top",rowPinBottom:"pinned-bottom",rowUnpin:"un-pin"}},vb={tag:"span",children:[{tag:"span",ref:"eDelta",cls:"ag-value-change-delta"},{tag:"span",ref:"eValue",cls:"ag-value-change-value"}]},wb={tag:"span",children:[{tag:"span",ref:"eCurrent",cls:"ag-value-slide-current"}]};var bb={moduleName:"HighlightChanges",version:ii,beans:[class extends wt{constructor(){super(...arguments),this.beanName="cellFlashSvc",this.nextAnimationTime=null,this.nextAnimationCycle=null,this.animations={highlight:new Map,"data-changed":new Map}}animateCell(e,t,i=this.beans.gos.get("cellFlashDuration"),s=this.beans.gos.get("cellFadeDuration")){const o=this.animations[t];o.delete(e);const r=Date.now(),n=r+i,a={phase:"flash",flashEndTime:n,fadeEndTime:r+i+s};o.set(e,a);const l=`ag-cell-${t}`,d=`${l}-animation`,{comp:c,eGui:{style:u}}=e;c.toggleCss(l,!0),c.toggleCss(d,!1),u.removeProperty("transition"),u.removeProperty("transition-delay"),this.nextAnimationTime&&n+15{this.nextAnimationCycle=setTimeout(this.advanceAnimations.bind(this),i)}),this.nextAnimationTime=n)}advanceAnimations(){const e=Date.now();let t=null;for(const i of Object.keys(this.animations)){const s=this.animations[i],o=`ag-cell-${i}`,r=`${o}-animation`;for(const[i,n]of s){if(!i.isAlive()||!i.comp){s.delete(i);continue}const{phase:a,flashEndTime:l,fadeEndTime:d}=n,c="flash"===a?l:d;if(!(e+15>=c)){t=Math.min(c,t??1/0);continue}const{comp:u,eGui:{style:h}}=i;switch(a){case"flash":u.toggleCss(o,!1),u.toggleCss(r,!0),h.transition=`background-color ${d-l}ms`,h.transitionDelay=l-e+"ms",t=Math.min(d,t??1/0),n.phase="fade";break;case"fade":u.toggleCss(o,!1),u.toggleCss(r,!1),h.removeProperty("transition"),h.removeProperty("transition-delay"),s.delete(i)}}}null==t?(this.nextAnimationTime=null,this.nextAnimationCycle=null):t&&(this.nextAnimationCycle=setTimeout(this.advanceAnimations.bind(this),t-e),this.nextAnimationTime=t)}onFlashCells(e,t){if(!e.comp)return;const i=vn(e.cellPosition);t.cells[i]&&this.animateCell(e,"highlight")}flashCell(e,t){this.animateCell(e,"data-changed",t?.flashDuration,t?.fadeDuration)}destroy(){for(const e of Object.keys(this.animations)){this.animations[e].clear()}}}],userComponents:{agAnimateShowChangeCellRenderer:class extends Wo{constructor(){super(vb),this.eValue=Lo,this.eDelta=Lo,this.refreshCount=0}init(e){this.refresh(e,!0)}showDelta(e,t){const i=Math.abs(t),s=e.formatValue(i),o=f(s)?s:i,r=t>=0,n=this.eDelta;n.textContent=r?"↑"+o:"↓"+o,n.classList.toggle("ag-value-change-delta-up",r),n.classList.toggle("ag-value-change-delta-down",!r)}setTimerToRemoveDelta(){this.refreshCount++;const e=this.refreshCount;this.beans.frameworkOverrides.wrapIncoming(()=>{window.setTimeout(()=>{e===this.refreshCount&&this.hideDeltaValue()},2e3)})}hideDeltaValue(){this.eValue.classList.remove("ag-value-change-value-highlight"),Te(this.eDelta)}refresh(e,t=!1){const{value:i,valueFormatted:s}=e,{eValue:o,lastValue:r,beans:n}=this;if(i===r)return!1;if(f(s)?o.textContent=s:f(i)?o.textContent=i:Te(o),n.filterManager?.isSuppressFlashingCellsBecauseFiltering())return!1;const a=i&&"object"==typeof i&&"toNumber"in i?i.toNumber():i,l=r&&"object"==typeof r&&"toNumber"in r?r.toNumber():r;if(a===l)return!1;if("number"==typeof a&&"number"==typeof l){const t=a-l;this.showDelta(e,t)}return r&&o.classList.add("ag-value-change-value-highlight"),t||this.setTimerToRemoveDelta(),this.lastValue=i,!0}},agAnimateSlideCellRenderer:class extends Wo{constructor(){super(wb),this.eCurrent=Lo,this.refreshCount=0,this.registerCSS(".ag-value-slide-out{opacity:1}:where(.ag-ltr) .ag-value-slide-out{margin-right:5px;transition:opacity 3s,margin-right 3s}:where(.ag-rtl) .ag-value-slide-out{margin-left:5px;transition:opacity 3s,margin-left 3s}:where(.ag-ltr,.ag-rtl) .ag-value-slide-out{transition-timing-function:linear}.ag-value-slide-out-end{opacity:0}:where(.ag-ltr) .ag-value-slide-out-end{margin-right:10px}:where(.ag-rtl) .ag-value-slide-out-end{margin-left:10px}")}init(e){this.refresh(e,!0)}addSlideAnimation(){this.refreshCount++;const e=this.refreshCount;this.ePrevious?.remove();const{beans:t,eCurrent:i}=this,s=Go({tag:"span",cls:"ag-value-slide-previous ag-value-slide-out"});this.ePrevious=s,s.textContent=i.textContent,this.getGui().insertBefore(s,i),t.frameworkOverrides.wrapIncoming(()=>{window.setTimeout(()=>{e===this.refreshCount&&this.ePrevious.classList.add("ag-value-slide-out-end")},50),window.setTimeout(()=>{e===this.refreshCount&&(this.ePrevious?.remove(),this.ePrevious=null)},3e3)})}refresh(e,t=!1){let i=e.value;if(C(i)&&(i=""),i===this.lastValue)return!1;if(this.beans.filterManager?.isSuppressFlashingCellsBecauseFiltering())return!1;t||this.addSlideAnimation(),this.lastValue=i;const s=this.eCurrent;return f(e.valueFormatted)?s.textContent=e.valueFormatted:f(e.value)?s.textContent=i:Te(s),!0}}},apiFunctions:{flashCells:function(e,t={}){const{cellFlashSvc:i}=e;i&&e.frameworkOverrides.wrapIncoming(()=>{for(const s of e.rowRenderer.getCellCtrls(t.rowNodes,t.columns))i.flashCell(s,t)})}}};var yb={moduleName:"RenderApi",version:ii,apiFunctions:{setGridAriaProperty:function(e,t,i){if(!t)return;const s=e.ctrlsSvc.getGridBodyCtrl().eGridBody,o=`aria-${t}`;null===i?s.removeAttribute(o):s.setAttribute(o,i)},refreshCells:function(e,t={}){e.frameworkOverrides.wrapIncoming(()=>e.rowRenderer.refreshCells(t))},refreshHeader:function(e){e.frameworkOverrides.wrapIncoming(()=>{for(const t of e.ctrlsSvc.getHeaderRowContainerCtrls())t.refresh()})},isAnimationFrameQueueEmpty:function(e){return e.animationFrameSvc?.isQueueEmpty()??!0},flushAllAnimationFrames:function(e){e.animationFrameSvc?.flushAllFrames()},getSizesForCurrentTheme:function(e){return{rowHeight:Ei(e),headerHeight:Hn(e)}},getCellRendererInstances:function(e,t={}){const i=[];for(const s of e.rowRenderer.getCellCtrls(t.rowNodes,t.columns)){const e=s.getCellRenderer();null!=e&&i.push(ap(e))}if(t.columns?.length)return i;const s=[],o=lm(t.rowNodes);for(const t of e.rowRenderer.getAllRowCtrls()){if(o&&!dm(t.rowNode,o))continue;if(!t.isFullWidth())continue;const e=t.getFullWidthCellRenderers();for(let t=0;t{const t=e.__autoHeights;let s=Mi(this.beans,e).height;for(const r of o){let o=t?.[r.getColId()];const n=i?.getCellSpan(r,e);if(n){if(n.getLastNode()!==e)continue;if(o=i?.getCellSpan(r,e)?.getLastNodeAutoHeight(),!o)return}if(null==o){if(this.colSpanSkipCell(r,e))continue;return}s=Math.max(o,s)}s!==e.rowHeight&&(e.setRowHeight(s),r=!0)};s?.forEachPinnedRow?.("top",n),s?.forEachPinnedRow?.("bottom",n),t.forEachDisplayedNode?.(n),r&&t.onRowHeightChanged?.()}setRowAutoHeight(e,t,i){if(e.__autoHeights??(e.__autoHeights={}),null==t)return void delete e.__autoHeights[i.getId()];const s=e.__autoHeights[i.getId()];e.__autoHeights[i.getId()]=t,s!==t&&this.requestCheckAutoHeight()}colSpanSkipCell(e,t){const{colModel:i,colViewport:s,visibleCols:o}=this.beans;if(!i.colSpanActive)return!1;let r=[];switch(e.getPinned()){case"left":r=o.getLeftColsForRow(t);break;case"right":r=o.getRightColsForRow(t);break;case null:r=s.getColsWithinViewport(t)}return!r.includes(e)}setupCellAutoHeight(e,t,i){if(!e.column.isAutoHeight()||!t)return!1;this.wasEverActive=!0;const s=t.parentElement,{rowNode:o,column:r}=e,n=this.beans,a=l=>{if(this.beans.editSvc?.isEditing(e))return;if(!e.isAlive()||!i.isAlive())return;const{paddingTop:d,paddingBottom:c,borderBottomWidth:u,borderTopWidth:h}=Se(s),g=d+c+u+h,p=t.offsetHeight+g;if(l<5){const e=T(n);if(!e?.contains(t)||0==p)return void window.setTimeout(()=>a(l+1),0)}this.setRowAutoHeight(o,p,r)},l=()=>a(0);l();const d=qe(n,t,l);return i.addDestroyFunc(()=>{d(),this.setRowAutoHeight(o,void 0,r)}),!0}setAutoHeightActive(e){this.active=e.list.some(e=>e.isVisible()&&e.isAutoHeight())}areRowsMeasured(){if(!this.active)return!0;const e=this.beans.rowRenderer.getAllRowCtrls();let t=null;for(const{rowNode:i}of e){if(!t||this.beans.colModel.colSpanActive){t=this.beans.colViewport.getColsWithinViewport(i).filter(e=>e.isAutoHeight())}if(0!==t.length){if(!i.__autoHeights)return!1;for(const e of t){const t=i.__autoHeights[e.getColId()];if(!t||i.rowHeight{m=e,f=null,p=t},v=e=>{const s=!(e.isExpandable()||e.group||e.detail||c&&c({rowNode:e}));if(null==e.rowIndex||!s)return void C(null,null);if(null==m||e.level!==m.level||e.footer||f&&e.rowIndex-1!==f?.getLastNode().rowIndex)return void C(e,r.getValue(t,e,"data"));const o=r.getValue(t,e,"data");if(g){const s=ms(i,{valueA:p,nodeA:m,valueB:o,nodeB:e,column:t,colDef:a});if(!h(s))return void C(e,o)}else if(u?!u(p,o):p!==o)return void C(e,o);if(!f){const e=l?.get(m);e?.firstNode===m?(e.reset(),f=e):f=new xb(t,m),d.set(m,f)}f.addSpannedNode(e),d.set(e,f)};switch(e){case"center":o.forEachDisplayedNode?.(e=>{(!n||n.isRowInPage(e.rowIndex))&&v(e)}),this.centerValueNodeMap=d;break;case"top":s?.forEachPinnedRow("top",v),this.topValueNodeMap=d;break;case"bottom":s?.forEachPinnedRow("bottom",v),this.bottomValueNodeMap=d}}isCellSpanning(e){return!!this.getCellSpan(e)}getCellSpan(e){return this.getNodeMap(e.rowPinned).get(e)}getNodeMap(e){switch(e){case"top":return this.topValueNodeMap;case"bottom":return this.bottomValueNodeMap;default:return this.centerValueNodeMap}}},Rb=class extends Np{constructor(e,t,i){super(e.col,e.firstNode,i,t),this.cellSpan=e,this.SPANNED_CELL_CSS_CLASS="ag-spanned-cell"}setComp(e,t,i,s,o,r,n){this.eWrapper=i,super.setComp(e,t,i,s,o,r,n),this.setAriaRowSpan(),this.refreshAriaRowIndex()}isCellSpanning(){return!0}getCellSpan(){return this.cellSpan}refreshAriaRowIndex(){const{eGui:e,rowNode:t}=this;e&&null!=t.rowIndex&&ee(e,t.rowIndex)}setAriaRowSpan(){var e,t;e=this.eGui,t=this.cellSpan.spannedNodes.size,O(e,"rowspan",t)}setFocusedCellPosition(e){this.focusedCellPosition=e}getFocusedCellPosition(){return this.focusedCellPosition??this.cellPosition}checkCellFocused(){const e=this.beans.focusSvc.getFocusedCell();return!!e&&this.cellSpan.doesSpanContain(e)}applyStaticCssClasses(){super.applyStaticCssClasses(),this.comp.toggleCss(this.SPANNED_CELL_CSS_CLASS,!0)}onCellFocused(e){const{beans:t}=this;if(kn(t))return void(this.focusedCellPosition=void 0);const i=this.isCellFocused();i||(this.focusedCellPosition=void 0),e&&i&&(this.focusedCellPosition={rowIndex:e.rowIndex,rowPinned:e.rowPinned,column:e.column}),super.onCellFocused(e)}getRootElement(){return this.eWrapper}},Pb=class extends Hp{onRowIndexChanged(){super.onRowIndexChanged();for(const e of this.getAllCellCtrls())e.refreshAriaRowIndex()}getInitialRowClasses(e){return["ag-spanned-row"]}getNewCellCtrl(e){const t=this.beans.rowSpanSvc?.getCellSpan(e,this.rowNode);if(!t)return;return t.firstNode!==this.rowNode?void 0:new Rb(t,this,this.beans)}isCorrectCtrlForSpan(e){const t=this.beans.rowSpanSvc?.getCellSpan(e.column,this.rowNode);if(!t)return!1;return!(t.firstNode!==this.rowNode)&&e.getCellSpan()===t}onRowHeightChanged(){}refreshFirstAndLastRowStyles(){}addHoverFunctionality(){}resetHoveredStatus(){}},Mb={moduleName:"CellSpan",version:ii,beans:[class extends wt{constructor(){super(...arguments),this.beanName="rowSpanSvc",this.spanningColumns=new Map,this.debouncePinnedEvent=Rt(this,this.dispatchCellsUpdatedEvent.bind(this,!0),0),this.debounceModelEvent=Rt(this,this.dispatchCellsUpdatedEvent.bind(this,!1),0),this.pinnedTimeout=null,this.modelTimeout=null}postConstruct(){const e=this.onRowDataUpdated.bind(this),t=this.buildPinnedCaches.bind(this);this.addManagedEventListeners({paginationChanged:this.buildModelCaches.bind(this),pinnedRowDataChanged:t,pinnedRowsChanged:t,rowNodeDataChanged:e,cellValueChanged:e})}register(e){const{gos:t}=this.beans;if(!t.get("enableCellSpan"))return;if(this.spanningColumns.has(e))return;const i=this.createManagedBean(new Fb(e));this.spanningColumns.set(e,i),i.buildCache("top"),i.buildCache("bottom"),i.buildCache("center"),this.debouncePinnedEvent(),this.debounceModelEvent()}dispatchCellsUpdatedEvent(e){this.dispatchLocalEvent({type:"spannedCellsUpdated",pinned:e})}deregister(e){this.spanningColumns.delete(e)}onRowDataUpdated({node:e}){const{spannedRowRenderer:t}=this.beans;if(e.rowPinned){if(null!=this.pinnedTimeout)return;this.pinnedTimeout=window.setTimeout(()=>{this.pinnedTimeout=null,this.buildPinnedCaches(),t?.createCtrls("top"),t?.createCtrls("bottom")},0)}else null==this.modelTimeout&&(this.modelTimeout=window.setTimeout(()=>{this.modelTimeout=null,this.buildModelCaches(),t?.createCtrls("center")},0))}buildModelCaches(){null!=this.modelTimeout&&clearTimeout(this.modelTimeout),this.spanningColumns.forEach(e=>e.buildCache("center")),this.debounceModelEvent()}buildPinnedCaches(){null!=this.pinnedTimeout&&clearTimeout(this.pinnedTimeout),this.spanningColumns.forEach(e=>{e.buildCache("top"),e.buildCache("bottom")}),this.debouncePinnedEvent()}isCellSpanning(e,t){const i=this.spanningColumns.get(e);return!!i&&i.isCellSpanning(t)}getCellSpanByPosition(e){const{pinnedRowModel:t,rowModel:i}=this.beans,s=e.column,o=e.rowIndex,r=this.spanningColumns.get(s);if(!r)return;let n;switch(e.rowPinned){case"top":n=t?.getPinnedTopRow(o);break;case"bottom":n=t?.getPinnedBottomRow(o);break;default:n=i.getRow(o)}return n?r.getCellSpan(n):void 0}getCellStart(e){const t=this.getCellSpanByPosition(e);return t?{...e,rowIndex:t.firstNode.rowIndex}:e}getCellEnd(e){const t=this.getCellSpanByPosition(e);return t?{...e,rowIndex:t.getLastNode().rowIndex}:e}getCellSpan(e,t){const i=this.spanningColumns.get(e);if(i)return i.getCellSpan(t)}forEachSpannedColumn(e,t){for(const[i,s]of this.spanningColumns)if(s.isCellSpanning(e)){t(i,s.getCellSpan(e))}}destroy(){super.destroy(),this.spanningColumns.clear()}},class extends wt{constructor(){super(...arguments),this.beanName="spannedRowRenderer",this.topCtrls=new Map,this.bottomCtrls=new Map,this.centerCtrls=new Map}postConstruct(){this.addManagedEventListeners({displayedRowsChanged:this.createAllCtrls.bind(this)})}createAllCtrls(){this.createCtrls("top"),this.createCtrls("bottom"),this.createCtrls("center")}createCtrls(e){const{rowSpanSvc:t}=this.beans,i=this.getCtrlsMap(e),s=i.size,o=this.getAllRelevantRowControls(e),r=new Map;let n=!1;for(const e of o)e.isAlive()&&t?.forEachSpannedColumn(e.rowNode,(e,t)=>{if(r.has(t.firstNode))return;const s=i.get(t.firstNode);if(s)return r.set(t.firstNode,s),void i.delete(t.firstNode);n=!0;const o=new Pb(t.firstNode,this.beans,!1,!1,!1);r.set(t.firstNode,o)});this.setCtrlsMap(e,r);const a=r.size===s;if(n||!a){for(const e of i.values())e.destroyFirstPass(!0),e.destroySecondPass();this.dispatchLocalEvent({type:"spannedRowsUpdated",ctrlsKey:e})}}getAllRelevantRowControls(e){const{rowRenderer:t}=this.beans;switch(e){case"top":return t.topRowCtrls;case"bottom":return t.bottomRowCtrls;case"center":return t.allRowCtrls}}getCellByPosition(e){const{rowSpanSvc:t}=this.beans,i=t?.getCellSpanByPosition(e);if(!i)return;const s=this.getCtrlsMap(e.rowPinned).get(i.firstNode);return s?s.getAllCellCtrls().find(t=>t.column===e.column):void 0}getCtrls(e){return[...this.getCtrlsMap(e).values()]}destroyRowCtrls(e){for(const t of this.getCtrlsMap(e).values())t.destroyFirstPass(!0),t.destroySecondPass();this.setCtrlsMap(e,new Map)}getCtrlsMap(e){switch(e){case"top":return this.topCtrls;case"bottom":return this.bottomCtrls;default:return this.centerCtrls}}setCtrlsMap(e,t){switch(e){case"top":this.topCtrls=t;break;case"bottom":this.bottomCtrls=t;break;default:this.centerCtrls=t}}destroy(){super.destroy(),this.destroyRowCtrls("top"),this.destroyRowCtrls("bottom"),this.destroyRowCtrls("center")}}]};var Eb={tag:"div",cls:"ag-selection-checkbox",role:"presentation",children:[{tag:"ag-checkbox",ref:"eCheckbox",role:"presentation"}]},Ab=class extends Wo{constructor(){super(Eb,[Pa]),this.eCheckbox=Lo}postConstruct(){this.eCheckbox.setPassive(!0)}onDataChanged(){this.onSelectionChanged()}onSelectableChanged(){this.showOrHideSelect()}onSelectionChanged(){const e=this.getLocaleTextFunc(),{rowNode:t,eCheckbox:i}=this,s=t.isSelected(),o=he(e,s),[r,n]=t.selectable?["ariaRowToggleSelection","Press Space to toggle row selection"]:["ariaRowSelectionDisabled","Row Selection is disabled for this row"],a=e(r,n);i.setValue(s,!0),i.setInputAriaLabel(`${a} (${o})`)}init(e){this.rowNode=e.rowNode,this.column=e.column,this.overrides=e.overrides,this.onSelectionChanged(),this.addManagedListeners(this.eCheckbox.getWrapperElement(),{dblclick:hn,click:e=>{hn(e),this.eCheckbox.isDisabled()||this.beans.selectionSvc?.handleSelectionEvent(e,this.rowNode,"checkboxSelected")}}),this.addManagedListeners(this.rowNode,{rowSelected:this.onSelectionChanged.bind(this),dataChanged:this.onDataChanged.bind(this),selectableChanged:this.onSelectableChanged.bind(this)}),this.addManagedPropertyListener("rowSelection",({currentValue:e,previousValue:t})=>{("object"==typeof e?qi(e):void 0)!==("object"==typeof t?qi(t):void 0)&&this.onSelectableChanged()});if(is(this.gos)||"function"==typeof this.getIsVisible()){const e=this.showOrHideSelect.bind(this);this.addManagedEventListeners({displayedColumnsChanged:e}),this.addManagedListeners(this.rowNode,{dataChanged:e,cellChanged:e}),this.showOrHideSelect()}this.eCheckbox.getInputElement().setAttribute("tabindex","-1")}showOrHideSelect(){const{column:e,rowNode:t,overrides:i,gos:s}=this,o=t.selectable,r=this.getIsVisible();let n;if("function"==typeof r){const s=i?.callbackParams;if(e){const i=e.createColumnFunctionCallbackParams(t);n=r({...s,...i})}else n=r({...s,node:t,data:t.data})}else n=r??!1;const a=o&&!n||!o&&n,l=o||n,d=s.get("rowSelection"),c=d&&"string"!=typeof d?!qi(d):!!e?.getColDef().showDisabledCheckboxes;this.setVisible(l&&(!a||c)),this.setDisplayed(l&&(!a||c)),l&&this.eCheckbox.setDisabled(a),i?.removeHidden&&this.setDisplayed(l)}getIsVisible(){const e=this.overrides;if(e)return e.isVisible;const t=this.gos.get("rowSelection");return t&&"string"!=typeof t?ji(t):this.column?.getColDef()?.checkboxSelection}},Tb=class{constructor(e,t){this.rowModel=e,this.pinnedRowModel=t,this.selectAll=!1,this.rootId=null,this.endId=null,this.cachedRange=[]}reset(){this.rootId=null,this.endId=null,this.cachedRange.length=0}setRoot(e){this.rootId=e.id,this.endId=null,this.cachedRange.length=0}setEndRange(e){this.endId=e.id,this.cachedRange.length=0}getRange(){if(0===this.cachedRange.length){const e=this.getRoot(),t=this.getEnd();if(null==e||null==t)return this.cachedRange;this.cachedRange=this.getNodesInRange(e,t)??[]}return this.cachedRange}isInRange(e){return null!==this.rootId&&this.getRange().some(t=>t.id===e.id)}getRoot(e){return this.rootId?this.getRowNode(this.rootId):e?(this.setRoot(e),e):void 0}getEnd(){if(this.endId)return this.getRowNode(this.endId)}getRowNode(e){let t;const{rowModel:i,pinnedRowModel:s}=this;return t??(t=i.getRowNode(e)),s?.isManual()&&(t??(t=s.getPinnedRowById(e,"top")),t??(t=s.getPinnedRowById(e,"bottom"))),t}truncate(e){const t=this.getRange();if(0===t.length)return{keep:[],discard:[]};const i=t[0].id===this.rootId,s=t.findIndex(t=>t.id===e.id);if(s>-1){const o=t.slice(0,s),r=t.slice(s+1);return this.setEndRange(e),i?{keep:o,discard:r}:{keep:r,discard:o}}return{keep:t,discard:[]}}extend(e,t=!1){const i=this.getRoot();if(null==i){const i=this.getRange().slice();return t&&e.depthFirstSearch(e=>!e.group&&i.push(e)),i.push(e),this.setRoot(e),{keep:i,discard:[]}}const s=this.getNodesInRange(i,e);if(!s)return this.setRoot(e),{keep:[e],discard:[]};if(s.find(e=>e.id===this.endId))return this.setEndRange(e),{keep:this.getRange(),discard:[]};{const t=this.getRange().slice();return this.setEndRange(e),{keep:this.getRange(),discard:t}}}getNodesInRange(e,t){const{pinnedRowModel:i,rowModel:s}=this;if(!i?.isManual())return s.getNodesInRangeForSelection(e,t);if("top"===e.rowPinned&&!t.rowPinned){return Ip(i,"top",e,void 0).concat(s.getNodesInRangeForSelection(s.getRow(0),t)??[])}if("bottom"===e.rowPinned&&!t.rowPinned){const o=Ip(i,"bottom",void 0,e),r=s.getRowCount(),n=s.getRow(r-1);return(s.getNodesInRangeForSelection(t,n)??[]).concat(o)}if(!e.rowPinned&&!t.rowPinned)return s.getNodesInRangeForSelection(e,t);if("top"===e.rowPinned&&"top"===t.rowPinned)return Ip(i,"top",e,t);if("bottom"===e.rowPinned&&"top"===t.rowPinned){const o=Ip(i,"top",t,void 0),r=Ip(i,"bottom",void 0,e),n=s.getRow(0),a=s.getRow(s.getRowCount()-1);return o.concat(s.getNodesInRangeForSelection(n,a)??[]).concat(r)}if(!e.rowPinned&&"top"===t.rowPinned){return Ip(i,"top",t,void 0).concat(s.getNodesInRangeForSelection(s.getRow(0),e)??[])}if("top"===e.rowPinned&&"bottom"===t.rowPinned){const o=Ip(i,"top",e,void 0),r=Ip(i,"bottom",void 0,t),n=s.getRow(0),a=s.getRow(s.getRowCount()-1);return o.concat(s.getNodesInRangeForSelection(n,a)??[]).concat(r)}if("bottom"===e.rowPinned&&"bottom"===t.rowPinned)return Ip(i,"bottom",e,t);if(!e.rowPinned&&"bottom"===t.rowPinned){const o=Ip(i,"bottom",void 0,t),r=s.getRow(s.getRowCount());return(s.getNodesInRangeForSelection(e,r)??[]).concat(o)}return null}},Db=class extends wt{constructor(e){super(),this.column=e,this.cbSelectAllVisible=!1,this.processingEventFromCheckbox=!1}onSpaceKeyDown(e){const t=this.cbSelectAll;t.isDisplayed()&&!t.getGui().contains(A(this.beans))&&(e.preventDefault(),t.setValue(!t.getValue()))}getCheckboxGui(){return this.cbSelectAll.getGui()}setComp(e){this.headerCellCtrl=e;const t=this.createManagedBean(new Ra);this.cbSelectAll=t,t.addCss("ag-header-select-all"),B(t.getGui(),"presentation"),this.showOrHideSelectAll();const i=this.updateStateOfCheckbox.bind(this);this.addManagedEventListeners({newColumnsLoaded:()=>this.showOrHideSelectAll(),displayedColumnsChanged:this.onDisplayedColumnsChanged.bind(this),selectionChanged:i,paginationChanged:i,modelUpdated:i}),this.addManagedPropertyListener("rowSelection",({currentValue:e,previousValue:t})=>{const i=e=>"string"!=typeof e&&e&&"singleRow"!==e.mode?e.selectAll:void 0;i(e)!==i(t)&&this.showOrHideSelectAll(),this.updateStateOfCheckbox()}),this.addManagedListeners(t,{fieldValueChanged:this.onCbSelectAll.bind(this)}),t.getInputElement().setAttribute("tabindex","-1"),this.refreshSelectAllLabel()}onDisplayedColumnsChanged(e){this.isAlive()&&this.showOrHideSelectAll("uiColumnMoved"===e.source)}showOrHideSelectAll(e=!1){const t=this.isCheckboxSelection();this.cbSelectAllVisible=t,this.cbSelectAll.setDisplayed(t),t&&(this.checkRightRowModelType("selectAllCheckbox"),this.checkSelectionType("selectAllCheckbox"),this.updateStateOfCheckbox()),this.refreshSelectAllLabel(e)}updateStateOfCheckbox(){if(!this.cbSelectAllVisible||this.processingEventFromCheckbox)return;this.processingEventFromCheckbox=!0;const e=this.getSelectAllMode(),t=this.beans.selectionSvc,i=this.cbSelectAll,s=t.getSelectAllState(e);i.setValue(s);const o=t.hasNodesToSelect(e);i.setDisabled(!o),this.refreshSelectAllLabel(),this.processingEventFromCheckbox=!1}refreshSelectAllLabel(e=!1){const t=this.getLocaleTextFunc(),{headerCellCtrl:i,cbSelectAll:s,cbSelectAllVisible:o}=this,r=he(t,s.getValue()),n=t("ariaRowSelectAll","Press Space to toggle all rows selection");i.setAriaDescriptionProperty("selectAll",o?`${n} (${r})`:null),s.setInputAriaLabel(t("ariaHeaderSelection","Column with Header Selection")),e||i.announceAriaDescription()}checkSelectionType(e){return!!os(this.gos)||(gi(128,{feature:e}),!1)}checkRightRowModelType(e){const{gos:t,rowModel:i}=this.beans;return!(!yi(t)&&!Si(t))||(gi(129,{feature:e,rowModel:i.getType()}),!1)}onCbSelectAll(){if(this.processingEventFromCheckbox)return;if(!this.cbSelectAllVisible)return;const e=this.cbSelectAll.getValue(),t=this.getSelectAllMode();let i="uiSelectAll";"currentPage"===t?i="uiSelectAllCurrentPage":"filtered"===t&&(i="uiSelectAllFiltered");const s={source:i,selectAll:t},o=this.beans.selectionSvc;e?o.selectAllRowNodes(s):o.deselectAllRowNodes(s)}isCheckboxSelection(){const{column:e,gos:t,beans:i}=this,s="object"==typeof t.get("rowSelection")?"headerCheckbox":"headerCheckboxSelection";return Ib(i,e)&&this.checkRightRowModelType(s)&&this.checkSelectionType(s)}getSelectAllMode(){const e=ns(this.gos,!1);if(e)return e;const{headerCheckboxSelectionCurrentPageOnly:t,headerCheckboxSelectionFilteredOnly:i}=this.column.getColDef();return t?"currentPage":i?"filtered":"all"}destroy(){super.destroy(),this.cbSelectAll=void 0,this.headerCellCtrl=void 0}};function Ib({gos:e,selectionColSvc:t},i){const s=e.get("rowSelection"),o=i.getColDef(),{headerCheckboxSelection:r}=o;let n=!1;if("object"==typeof s){const e=Ks(i),o=js(i);("autoGroupColumn"===$i(s)&&o||e&&t?.isSelectionColumnEnabled())&&(n=Ki(s))}else n="function"==typeof r?r(ms(e,{column:i,colDef:o})):!!r;return n}var kb=class extends wt{postConstruct(){const{gos:e,beans:t}=this;this.selectionCtx=new Tb(t.rowModel,t.pinnedRowModel),this.addManagedPropertyListeners(["isRowSelectable","rowSelection"],()=>{const t=is(e);t!==this.isRowSelectable&&(this.isRowSelectable=t,this.updateSelectable())}),this.isRowSelectable=is(e),this.addManagedEventListeners({cellValueChanged:e=>this.updateRowSelectable(e.node),rowNodeDataChanged:e=>this.updateRowSelectable(e.node)})}destroy(){super.destroy(),this.selectionCtx.reset()}createCheckboxSelectionComponent(){return new Ab}createSelectAllFeature(e){if(Ib(this.beans,e))return new Db(e)}isMultiSelect(){return os(this.gos)}onRowCtrlSelected(e,t,i){const s=!!e.rowNode.isSelected();e.forEachGui(i,e=>{e.rowComp.toggleCss("ag-row-selected",s);const i=e.element;ne(i,s);i.contains(A(this.beans))&&t(e)})}announceAriaRowSelection(e){if(this.isRowSelectionBlocked(e))return;const t=e.isSelected(),i=this.beans.editSvc?.isEditing({rowNode:e});if(!e.selectable||i)return;const s=this.getLocaleTextFunc()(t?"ariaRowDeselect":"ariaRowSelect",`Press SPACE to ${t?"deselect":"select"} this row`);this.beans.ariaAnnounce?.announceValue(s,"rowSelection")}isRowSelectionBlocked(e){return!e.selectable||e.rowPinned&&!Dp(e)||!Fi(this.gos)}updateRowSelectable(e,t){const i=e.rowPinned&&e.pinnedSibling?e.pinnedSibling.selectable:this.isRowSelectable?.(e)??!0;return this.setRowSelectable(e,i,t),i}setRowSelectable(e,t,i){if(e.selectable!==t){if(e.selectable=t,e.dispatchRowEvent("selectableChanged"),i)return;if(as(this.gos)){const t=this.calculateSelectedFromChildren(e);return void this.setNodesSelected({nodes:[e],newValue:t??!1,source:"selectableChanged"})}e.isSelected()&&!e.selectable&&this.setNodesSelected({nodes:[e],newValue:!1,source:"selectableChanged"})}}calculateSelectedFromChildren(e){let t=!1,i=!1;if(!e.childrenAfterGroup?.length)return e.selectable?e.__selected:null;for(let s=0;s0&&t>0?void 0:e>0)}function Gb(e){const t=!1===e.isSelected(),i=e.childrenAfterFilter?.some(Gb)??!1;return t||i}var Nb={moduleName:"SharedRowSelection",version:ii,beans:[class extends wt{constructor(){super(...arguments),this.beanName="selectionColSvc"}postConstruct(){this.addManagedPropertyListener("rowSelection",e=>{this.onSelectionOptionsChanged(e.currentValue,e.previousValue,Qs(e.source))}),this.addManagedPropertyListener("selectionColumnDef",this.updateColumns.bind(this))}addColumns(e){const t=this.columns;null!=t&&(e.list=t.list.concat(e.list),e.tree=t.tree.concat(e.tree),Zs(e))}createColumns(e,t){const i=e.treeDepth,s=(this.columns?.treeDepth??-1)==i,o=this.generateSelectionCols();if(Xs(o,this.columns?.list??[])&&s)return;(()=>{Us(this.beans,this.columns?.tree),this.columns=null})();const{colGroupSvc:r}=this.beans,n=r?.findDepth(e.tree)??0,a=r?.balanceTreeForAutoCols(o,n)??[];this.columns={list:o,tree:a,treeDepth:n,map:{}};t(e=>{if(!e)return null;const t=e.filter(e=>!Ks(e));return[...o,...t]})}updateColumns(e){const t=Qs(e.source),{beans:i}=this;for(const s of this.columns?.list??[]){const o=this.createSelectionColDef(e.currentValue);s.setColDef(o,null,t),yo(i,{state:[to(o,s.colId)]},t)}}getColumn(e){return this.columns?.list.find(t=>Js(t,e))??null}getColumns(){return this.columns?.list??null}isSelectionColumnEnabled(){const{gos:e,beans:t}=this,i=e.get("rowSelection");if("object"!=typeof i||!Fi(e))return!1;const s=(t.autoColSvc?.getColumns()?.length??0)>0;if("autoGroupColumn"===i.checkboxLocation&&s)return!1;const o=!!ji(i),r=Ki(i);return o||r}createSelectionColDef(e){const{gos:t}=this,i=e??t.get("selectionColumnDef"),s=t.get("enableRtl"),{rowSpan:o,spanRows:r,...n}=i??{};return{width:50,resizable:!1,suppressHeaderMenuButton:!0,sortable:!1,suppressMovable:!0,lockPosition:s?"right":"left",comparator(e,t,i,s){const o=i.isSelected();return o===s.isSelected()?0:o?1:-1},editable:!1,suppressFillHandle:!0,suppressAutoSize:!0,pinned:null,...n,colId:Vs,chartDataType:"excluded"}}generateSelectionCols(){if(!this.isSelectionColumnEnabled())return[];const e=this.createSelectionColDef(),t=e.colId;this.gos.validateColDef(e,t,!0);const i=new Fs(e,null,t,!1);return this.createBean(i),[i]}onSelectionOptionsChanged(e,t,i){const s=(t&&"string"!=typeof t?ji(t):void 0)!==(e&&"string"!=typeof e?ji(e):void 0),o=(t&&"string"!=typeof t?Ki(t):void 0)!==(e&&"string"!=typeof e?Ki(e):void 0),r=$i(e),n=$i(t);(s||o||r!==n)&&this.beans.colModel.refreshAll(i)}destroy(){Us(this.beans,this.columns?.tree),super.destroy()}refreshVisibility(e,t,i){if(!this.columns?.list.length)return;const s=e.length+t.length+i.length;if(0===s)return;const o=this.columns.list[0];if(!o.isVisible())return;const r=this.beans.rowNumbersSvc?.getColumn(_s);(r?2:1)===s&&(()=>{let s;switch(o.pinned){case"left":case!0:s=e;break;case"right":s=i;break;default:s=t}s&&u(s,o)})()}}],css:[':where(.ag-selection-checkbox) .ag-checkbox-input-wrapper:before{content:"";cursor:pointer;inset:-8px;position:absolute}'],apiFunctions:{setNodesSelected:function(e,t){if(!t.nodes.every(e=>e.rowPinned&&!Dp(e)?(gi(59),!1):void 0!==e.id||(gi(60),!1)))return;const{nodes:i,source:s,newValue:o}=t;e.selectionSvc?.setNodesSelected({nodes:i,source:s??"api",newValue:o})},selectAll:function(e,t,i="apiSelectAll"){e.selectionSvc?.selectAllRowNodes({source:i,selectAll:t})},deselectAll:function(e,t,i="apiSelectAll"){e.selectionSvc?.deselectAllRowNodes({source:i,selectAll:t})},selectAllFiltered:function(e,t="apiSelectAllFiltered"){e.selectionSvc?.selectAllRowNodes({source:t,selectAll:"filtered"})},deselectAllFiltered:function(e,t="apiSelectAllFiltered"){e.selectionSvc?.deselectAllRowNodes({source:t,selectAll:"filtered"})},selectAllOnCurrentPage:function(e,t="apiSelectAllCurrentPage"){e.selectionSvc?.selectAllRowNodes({source:t,selectAll:"currentPage"})},deselectAllOnCurrentPage:function(e,t="apiSelectAllCurrentPage"){e.selectionSvc?.deselectAllRowNodes({source:t,selectAll:"currentPage"})},getSelectedNodes:function(e){return e.selectionSvc?.getSelectedNodes()??[]},getSelectedRows:function(e){return e.selectionSvc?.getSelectedRows()??[]}}},Bb={moduleName:"RowSelection",version:ii,rowModels:["clientSide","infinite","viewport"],beans:[class extends kb{constructor(){super(...arguments),this.beanName="selectionSvc",this.selectedNodes=new Map,this.detailSelection=new Map,this.masterSelectsDetail=!1}postConstruct(){super.postConstruct();const{gos:e}=this;this.mode=ss(e),this.groupSelectsDescendants=as(e),this.groupSelectsFiltered="filteredDescendants"===rs(e),this.masterSelectsDetail="detail"===ls(e),this.addManagedPropertyListeners(["groupSelectsChildren","groupSelectsFiltered","rowSelection"],()=>{const t=as(e),i=ss(e),s="filteredDescendants"===rs(e);this.masterSelectsDetail="detail"===ls(e),t===this.groupSelectsDescendants&&s===this.groupSelectsFiltered&&i===this.mode||(this.deselectAllRowNodes({source:"api"}),this.groupSelectsDescendants=t,this.groupSelectsFiltered=s,this.mode=i)}),this.addManagedEventListeners({rowSelected:this.onRowSelected.bind(this)})}destroy(){super.destroy(),this.resetNodes()}handleSelectionEvent(e,t,i){if(this.isRowSelectionBlocked(t))return 0;const s=this.inferNodeSelections(t,e.shiftKey,e.metaKey||e.ctrlKey,i);if(null==s)return 0;if(this.selectionCtx.selectAll=!1,"select"in s)return s.reset?this.resetNodes():this.selectRange(s.deselect,!1,i),this.selectRange(s.select,!0,i);{const t=s.checkFilteredNodes?Gb(s.node):s.newValue;return this.setNodesSelected({nodes:[s.node],newValue:t,clearSelection:s.clearSelection,keepDescendants:s.keepDescendants,event:e,source:i})}}setNodesSelected({newValue:e,clearSelection:t,suppressFinishActions:i,nodes:s,event:o,source:r,keepDescendants:n=!1}){if(0===s.length)return 0;const{gos:a}=this;if(!Fi(a)&&e)return gi(132),0;if(s.length>1&&!this.isMultiSelect())return gi(130),0;let l=0;for(let t=0;t0&&(this.updateGroupsFromChildrenSelections(r),this.dispatchSelectionChanged(r))}return l}selectRange(e,t,i){let s=0;return e.forEach(e=>{const o=Lb(e);if(o.group&&this.groupSelectsDescendants)return;this.selectRowNode(o,t,void 0,i)&&s++}),s>0&&(this.updateGroupsFromChildrenSelections(i),this.dispatchSelectionChanged(i)),s}selectChildren(e,t,i){const s=this.groupSelectsFiltered?e.childrenAfterAggFilter:e.childrenAfterGroup;return s?this.setNodesSelected({newValue:t,clearSelection:!1,suppressFinishActions:!0,source:i,nodes:s}):0}getSelectedNodes(){return Array.from(this.selectedNodes.values())}getSelectedRows(){const e=[];return this.selectedNodes.forEach(t=>t.data&&e.push(t.data)),e}getSelectionCount(){return this.selectedNodes.size}filterFromSelection(e){const t=new Map;this.selectedNodes.forEach((i,s)=>{e(i)&&t.set(s,i)}),this.selectedNodes=t}updateGroupsFromChildrenSelections(e,t){if(!this.groupSelectsDescendants)return!1;const{gos:i,rowModel:s}=this.beans;if(!yi(i))return!1;const o=s.rootNode;if(!o)return!1;t||((t=new rc(!0,o)).active=!1);let r=!1;return t.forEachChangedNodeDepthFirst(t=>{if(t!==o){const i=this.calculateSelectedFromChildren(t);r=this.selectRowNode(t,null!==i&&i,void 0,e)||r}}),r}clearOtherNodes(e,t,i){const s=new Map;let o=0;return this.selectedNodes.forEach(r=>{const n=r.id==e.id;if((!t||!function(e,t){let i=t.parent;for(;i;){if(i===e)return!0;i=i.parent}return!1}(e,r))&&!n){const e=this.selectedNodes.get(r.id);o+=this.setNodesSelected({nodes:[e],newValue:!1,clearSelection:!1,suppressFinishActions:!0,source:i}),this.groupSelectsDescendants&&r.parent&&s.set(r.parent.id,r.parent)}}),s.forEach(e=>{const t=this.calculateSelectedFromChildren(e);this.selectRowNode(e,null!==t&&t,void 0,i)}),o}onRowSelected(e){const t=e.node;this.groupSelectsDescendants&&t.group||(t.isSelected()?this.selectedNodes.set(t.id,t):this.selectedNodes.delete(t.id))}syncInRowNode(e,t){this.syncInOldRowNode(e,t),this.syncInNewRowNode(e)}createDaemonNode(e){if(!e.id)return;const t=new Ga(this.beans);return t.id=e.id,t.data=e.data,t.__selected=e.__selected,t.level=e.level,t}syncInOldRowNode(e,t){if(t&&e.id!==t.id){this.selectedNodes.get(t.id)==e&&this.selectedNodes.set(t.id,t)}}syncInNewRowNode(e){this.selectedNodes.has(e.id)?(e.__selected=!0,this.selectedNodes.set(e.id,e)):e.__selected=!1}reset(e){const t=this.getSelectionCount();this.resetNodes(),t&&this.dispatchSelectionChanged(e)}resetNodes(){this.selectedNodes.forEach(e=>{this.selectRowNode(e,!1)}),this.selectedNodes.clear()}getBestCostNodeSelection(){const{gos:e,rowModel:t}=this.beans;if(!yi(e))return;const i=t.getTopLevelNodes();if(null===i)return;const s=[];return function e(t){for(let i=0,o=t.length;i{const i=this.selectRowNode(Lb(t),!1,void 0,e);s||(s=i)};if("currentPage"===t||"filtered"===t){if(!i)return void pi(102);this.getNodesToSelect(t).forEach(o)}else this.selectedNodes.forEach(o),this.reset(e);if(this.selectionCtx.selectAll=!1,i&&this.groupSelectsDescendants){const t=this.updateGroupsFromChildrenSelections(e);s||(s=t)}s&&this.dispatchSelectionChanged(e)}getSelectedCounts(e){let t=0,i=0;return this.getNodesToSelect(e).forEach(e=>{this.groupSelectsDescendants&&e.group||(e.isSelected()?t++:e.selectable&&i++)}),{selectedCount:t,notSelectedCount:i}}getSelectAllState(e){const{selectedCount:t,notSelectedCount:i}=this.getSelectedCounts(e);return Ob(t,i)??null}hasNodesToSelect(e){return this.getNodesToSelect(e).filter(e=>e.selectable).length>0}getNodesToSelect(e){if(!this.canSelectAll())return[];const t=[],i=e=>t.push(e);if("currentPage"===e)return this.forEachNodeOnPage(e=>{if(e.group){if(!e.expanded&&!e.footer){const t=e=>{i(e),e.childrenAfterFilter?.forEach(t)};return void t(e)}this.groupSelectsDescendants||i(e)}else i(e)}),t;const s=this.beans.rowModel;return"filtered"===e?(s.forEachNodeAfterFilter(i),t):(s.forEachNode(i),t)}forEachNodeOnPage(e){const{pageBounds:t,rowModel:i}=this.beans,s=t.getFirstRow(),o=t.getLastRow();for(let t=s;t<=o;t++){const s=i.getRow(t);s&&e(s)}}selectAllRowNodes(e){const{gos:t,selectionCtx:i}=this;if(!Fi(t))return void gi(132);if(Yi(t)&&!os(t))return void gi(130);if(!this.canSelectAll())return;const{source:s,selectAll:o}=e;let r=!1;if(this.getNodesToSelect(o).forEach(e=>{const t=this.selectRowNode(Lb(e),!0,void 0,s);r||(r=t)}),i.selectAll=!0,yi(t)&&this.groupSelectsDescendants){const e=this.updateGroupsFromChildrenSelections(s);r||(r=e)}r&&this.dispatchSelectionChanged(s)}getSelectionState(){return this.isEmpty()?null:Array.from(this.selectedNodes.keys())}setSelectionState(e,t,i){if(e||(e=[]),!Array.isArray(e))return void pi(103);const s=new Set(e),o=[];this.beans.rowModel.forEachNode(e=>{s.has(e.id)&&o.push(e)}),i&&this.resetNodes(),this.setNodesSelected({newValue:!0,nodes:o,source:t})}canSelectAll(){return yi(this.beans.gos)}updateSelectable(e){const{gos:t,rowModel:i}=this.beans;if(!Fi(t))return;const s="selectableChanged",o=void 0!==e,r=yi(t)&&this.groupSelectsDescendants,n=[],a=e=>{if(o&&!e.group)return;if(r&&e.group){const t=e.childrenAfterGroup?.some(e=>e.selectable)??!1;return void this.setRowSelectable(e,t,!0)}!this.updateRowSelectable(e,!0)&&e.isSelected()&&n.push(e)};if(r){if(void 0===e){const t=i.rootNode;e=t?new rc(!1,t):void 0}e?.forEachChangedNodeDepthFirst(a,!o,!o)}else i.forEachNode(a);n.length&&this.setNodesSelected({nodes:n,newValue:!1,source:s}),!o&&r&&this.updateGroupsFromChildrenSelections?.(s)}updateSelectableAfterGrouping(e){if(this.updateSelectable(e),this.groupSelectsDescendants){const t=this.updateGroupsFromChildrenSelections?.("rowGroupChanged",e);t&&this.dispatchSelectionChanged("rowGroupChanged")}}refreshMasterNodeState(e,t){if(!this.masterSelectsDetail)return;const i=e.detailNode?.detailGridInfo?.api;if(!i)return;const s=function(e){let t=0,i=0;return e.forEachNode(e=>{e.isSelected()?t++:e.selectable&&i++}),Ob(t,i)}(i);if(e.isSelected()!==s){this.selectRowNode(e,s,t,"masterDetail")&&this.dispatchSelectionChanged("masterDetail")}s||this.detailSelection.set(e.id,new Set(i.getSelectedNodes().map(e=>e.id)))}setDetailSelectionState(e,t,i){if(this.masterSelectsDetail)if(os(t))switch(e.isSelected()){case!0:i.selectAll();break;case!1:i.deselectAll();break;case void 0:{const t=this.detailSelection.get(e.id);if(t){const e=[];for(const s of t){const t=i.getRowNode(s);t&&e.push(t)}i.setNodesSelected({nodes:e,newValue:!0,source:"masterDetail"})}break}}else gi(269)}dispatchSelectionChanged(e){this.eventSvc.dispatchEvent({type:"selectionChanged",source:e,selectedNodes:this.getSelectedNodes(),serverSideState:null})}}],dependsOn:[Nb]},Vb=class extends wt{constructor(e,t){super(),this.cellCtrl=e,this.staticClasses=[],this.beans=t,this.column=e.column}setComp(e){this.cellComp=e,this.applyUserStyles(),this.applyCellClassRules(),this.applyClassesFromColDef()}applyCellClassRules(){const{column:e,cellComp:t}=this,i=e.colDef,s=i.cellClassRules,o=this.getCellClassParams(e,i);Bp(this.beans.expressionSvc,s===this.cellClassRules?void 0:this.cellClassRules,s,o,e=>t.toggleCss(e,!0),e=>t.toggleCss(e,!1)),this.cellClassRules=s}applyUserStyles(){const e=this.column,t=e.colDef,i=t.cellStyle;if(!i)return;let s;if("function"==typeof i){s=i(this.getCellClassParams(e,t))}else s=i;s&&this.cellComp.setUserStyles(s)}applyClassesFromColDef(){const{column:e,cellComp:t}=this,i=e.colDef,s=this.getCellClassParams(e,i);for(const e of this.staticClasses)t.toggleCss(e,!1);const o=this.beans.cellStyles.getStaticCellClasses(i,s);this.staticClasses=o;for(const e of o)t.toggleCss(e,!0)}getCellClassParams(e,t){const{value:i,rowNode:s}=this.cellCtrl;return ms(this.beans.gos,{value:i,data:s.data,node:s,colDef:t,column:e,rowIndex:s.rowIndex})}},_b={moduleName:"CellStyle",version:ii,beans:[class extends wt{constructor(){super(...arguments),this.beanName="cellStyles"}processAllCellClasses(e,t,i,s){Bp(this.beans.expressionSvc,void 0,e.cellClassRules,t,i,s),this.processStaticCellClasses(e,t,i)}getStaticCellClasses(e,t){const{cellClass:i}=e;if(!i)return[];let s;if("function"==typeof i){s=i(t)}else s=i;return"string"==typeof s&&(s=[s]),s||[]}createCellCustomStyleFeature(e){return new Vb(e,this.beans)}processStaticCellClasses(e,t,i){this.getStaticCellClasses(e,t).forEach(e=>{i(e)})}}]},Hb={moduleName:"RowStyle",version:ii,beans:[class extends wt{constructor(){super(...arguments),this.beanName="rowStyleSvc"}processClassesFromGridOptions(e,t){const i=this.gos,s=t=>{if("string"==typeof t)e.push(t);else if(Array.isArray(t))for(const i of t)e.push(i)},o=i.get("rowClass");o&&s(o);const r=i.getCallback("getRowClass");if(r){s(r({data:t.data,node:t,rowIndex:t.rowIndex}))}}preProcessRowClassRules(e,t){this.processRowClassRules(t,t=>{e.push(t)},()=>{})}processRowClassRules(e,t,i){const{gos:s,expressionSvc:o}=this.beans,r=ms(s,{data:e.data,node:e,rowIndex:e.rowIndex});Bp(o,void 0,s.get("rowClassRules"),r,t,i)}processStylesFromGridOptions(e){const t=this.gos,i=t.get("rowStyle"),s=t.getCallback("getRowStyle");let o;if(s){o=s({data:e.data,node:e,rowIndex:e.rowIndex})}if(o||i)return Object.assign({},i,o)}}]},zb={enableBrowserTooltips:!0,tooltipTrigger:!0,tooltipMouseTrack:!0,tooltipShowMode:!0,tooltipInteraction:!0,defaultColGroupDef:!0,suppressAutoSize:!0,skipHeaderOnAutoSize:!0,autoSizeStrategy:!0,components:!0,stopEditingWhenCellsLoseFocus:!0,undoRedoCellEditing:!0,undoRedoCellEditingLimit:!0,excelStyles:!0,cacheQuickFilter:!0,customChartThemes:!0,chartThemeOverrides:!0,chartToolPanelsDef:!0,loadingCellRendererSelector:!0,localeText:!0,keepDetailRows:!0,keepDetailRowsCount:!0,detailRowHeight:!0,detailRowAutoHeight:!0,tabIndex:!0,valueCache:!0,valueCacheNeverExpires:!0,enableCellExpressions:!0,suppressTouch:!0,suppressBrowserResizeObserver:!0,suppressPropertyNamesCheck:!0,debug:!0,dragAndDropImageComponent:!0,overlayComponent:!0,suppressOverlays:!0,loadingOverlayComponent:!0,suppressLoadingOverlay:!0,noRowsOverlayComponent:!0,paginationPageSizeSelector:!0,paginateChildRows:!0,pivotPanelShow:!0,pivotSuppressAutoColumn:!0,suppressExpandablePivotGroups:!0,aggFuncs:!0,allowShowChangeAfterFilter:!0,ensureDomOrder:!0,enableRtl:!0,suppressColumnVirtualisation:!0,suppressMaxRenderedRowRestriction:!0,suppressRowVirtualisation:!0,rowDragText:!0,groupLockGroupColumns:!0,suppressGroupRowsSticky:!0,rowModelType:!0,cacheOverflowSize:!0,infiniteInitialRowCount:!0,serverSideInitialRowCount:!0,maxBlocksInCache:!0,maxConcurrentDatasourceRequests:!0,blockLoadDebounceMillis:!0,serverSideOnlyRefreshFilteredGroups:!0,serverSidePivotResultFieldSeparator:!0,viewportRowModelPageSize:!0,viewportRowModelBufferSize:!0,debounceVerticalScrollbar:!0,suppressAnimationFrame:!0,suppressPreventDefaultOnMouseWheel:!0,scrollbarWidth:!0,icons:!0,suppressRowTransform:!0,gridId:!0,enableGroupEdit:!0,initialState:!0,processUnpinnedColumns:!0,createChartContainer:!0,getLocaleText:!0,getRowId:!0,reactiveCustomComponents:!0,renderingMode:!0,columnMenu:!0,suppressSetFilterByDefault:!0,getDataPath:!0,enableCellSpan:!0,enableFilterHandlers:!0,filterHandlers:!0},Wb="clientSide",Ub="serverSide",jb="infinite",Kb={onGroupExpandedOrCollapsed:[Wb],refreshClientSideRowModel:[Wb],isRowDataEmpty:[Wb],forEachLeafNode:[Wb],forEachNodeAfterFilter:[Wb],forEachNodeAfterFilterAndSort:[Wb],resetRowHeights:[Wb,Ub],applyTransaction:[Wb],applyTransactionAsync:[Wb],flushAsyncTransactions:[Wb],getBestCostNodeSelection:[Wb],getServerSideSelectionState:[Ub],setServerSideSelectionState:[Ub],applyServerSideTransaction:[Ub],applyServerSideTransactionAsync:[Ub],applyServerSideRowData:[Ub],retryServerSideLoads:[Ub],flushServerSideAsyncTransactions:[Ub],refreshServerSide:[Ub],getServerSideGroupLevelState:[Ub],refreshInfiniteCache:[jb],purgeInfiniteCache:[jb],getInfiniteRowCount:[jb],isLastRowIndexKnown:[jb,Ub],expandAll:[Wb,Ub],collapseAll:[Wb,Ub],onRowHeightChanged:[Wb,Ub],setRowCount:[jb,Ub],getCacheBlockState:[jb,Ub]},$b={showLoadingOverlay:{version:"v32",message:'`showLoadingOverlay` is deprecated. Use the grid option "loading"=true instead or setGridOption("loading", true).'},clearRangeSelection:{version:"v32.2",message:"Use `clearCellSelection` instead."},getInfiniteRowCount:{version:"v32.2",old:"getInfiniteRowCount()",new:"getDisplayedRowCount()"},selectAllFiltered:{version:"v33",old:"selectAllFiltered()",new:'selectAll("filtered")'},deselectAllFiltered:{version:"v33",old:"deselectAllFiltered()",new:'deselectAll("filtered")'},selectAllOnCurrentPage:{version:"v33",old:"selectAllOnCurrentPage()",new:'selectAll("currentPage")'},deselectAllOnCurrentPage:{version:"v33",old:"deselectAllOnCurrentPage()",new:'deselectAll("currentPage")'}};var qb={detailCellRendererCtrl:"SharedMasterDetail",dndSourceComp:"DragAndDrop",fillHandle:"CellSelection",groupCellRendererCtrl:"GroupCellRenderer",headerFilterCellCtrl:"ColumnFilter",headerGroupCellCtrl:"ColumnGroup",rangeHandle:"CellSelection",tooltipFeature:"Tooltip",highlightTooltipFeature:"Tooltip",tooltipStateManager:"Tooltip",groupStrategy:"RowGrouping",treeGroupStrategy:"TreeData",rowNumberRowResizer:"RowNumbers",singleCell:"EditCore",fullRow:"EditCore",agSetColumnFilterHandler:"SetFilter",agMultiColumnFilterHandler:"MultiFilter",agGroupColumnFilterHandler:"GroupFilter",agNumberColumnFilterHandler:"NumberFilter",agBigIntColumnFilterHandler:"BigIntFilter",agDateColumnFilterHandler:"DateFilter",agTextColumnFilterHandler:"TextFilter"},Yb={expanded:1,contracted:1,"tree-closed":1,"tree-open":1,"tree-indeterminate":1,pin:1,"eye-slash":1,arrows:1,left:1,right:1,group:1,aggregation:1,pivot:1,"not-allowed":1,chart:1,cross:1,cancel:1,tick:1,first:1,previous:1,next:1,last:1,linked:1,unlinked:1,"color-picker":1,loading:1,menu:1,"menu-alt":1,filter:1,"filter-add":1,columns:1,maximize:1,minimize:1,copy:1,cut:1,paste:1,grip:1,save:1,csv:1,excel:1,"small-down":1,"small-left":1,"small-right":1,"small-up":1,asc:1,desc:1,aasc:1,adesc:1,none:1,up:1,down:1,plus:1,minus:1,settings:1,"checkbox-checked":1,"checkbox-indeterminate":1,"checkbox-unchecked":1,"radio-button-on":1,"radio-button-off":1,eye:1,"column-arrow":1,"un-pin":1,"pinned-top":1,"pinned-bottom":1,"chevron-up":1,"chevron-down":1,"chevron-left":1,"chevron-right":1,edit:1},Xb={chart:"MenuCore",cancel:"EnterpriseCore",first:"Pagination",previous:"Pagination",next:"Pagination",last:"Pagination",linked:"IntegratedCharts",loadingMenuItems:"MenuCore",unlinked:"IntegratedCharts",menu:"ColumnHeaderComp",legacyMenu:"ColumnMenu",filter:"ColumnFilter",filterActive:"ColumnFilter",filterAdd:"NewFiltersToolPanel",filterCardCollapse:"NewFiltersToolPanel",filterCardExpand:"NewFiltersToolPanel",filterCardEditing:"NewFiltersToolPanel",filterTab:"ColumnMenu",filtersToolPanel:"FiltersToolPanel",columns:["MenuCore"],columnsToolPanel:["ColumnsToolPanel"],maximize:"EnterpriseCore",minimize:"EnterpriseCore",save:"MenuCore",columnGroupOpened:"ColumnGroupHeaderComp",columnGroupClosed:"ColumnGroupHeaderComp",accordionOpen:"EnterpriseCore",accordionClosed:"EnterpriseCore",accordionIndeterminate:"EnterpriseCore",columnSelectClosed:["ColumnsToolPanel","ColumnMenu"],columnSelectOpen:["ColumnsToolPanel","ColumnMenu"],columnSelectIndeterminate:["ColumnsToolPanel","ColumnMenu"],columnMovePin:"SharedDragAndDrop",columnMoveHide:"SharedDragAndDrop",columnMoveMove:"SharedDragAndDrop",columnMoveLeft:"SharedDragAndDrop",columnMoveRight:"SharedDragAndDrop",columnMoveGroup:"SharedDragAndDrop",columnMoveValue:"SharedDragAndDrop",columnMovePivot:"SharedDragAndDrop",dropNotAllowed:"SharedDragAndDrop",ensureColumnVisible:["ColumnsToolPanel","ColumnMenu"],groupContracted:"GroupCellRenderer",groupExpanded:"GroupCellRenderer",setFilterGroupClosed:"SetFilter",setFilterGroupOpen:"SetFilter",setFilterGroupIndeterminate:"SetFilter",setFilterLoading:"SetFilter",close:"EnterpriseCore",check:"MenuItem",colorPicker:"CommunityCore",groupLoading:"LoadingCellRenderer",overlayLoading:"Overlay",overlayExporting:"Overlay",menuAlt:"ColumnHeaderComp",menuPin:"MenuCore",menuValue:"MenuCore",menuAddRowGroup:["MenuCore","ColumnsToolPanel"],menuRemoveRowGroup:["MenuCore","ColumnsToolPanel"],clipboardCopy:"MenuCore",clipboardCut:"MenuCore",clipboardPaste:"MenuCore",pivotPanel:["ColumnsToolPanel","RowGroupingPanel"],rowGroupPanel:["ColumnsToolPanel","RowGroupingPanel"],valuePanel:"ColumnsToolPanel",columnDrag:"EnterpriseCore",rowDrag:["RowDrag","DragAndDrop"],csvExport:"MenuCore",excelExport:"MenuCore",smallDown:"CommunityCore",selectOpen:"CommunityCore",richSelectOpen:"RichSelect",richSelectRemove:"RichSelect",richSelectLoading:"RichSelect",smallLeft:"CommunityCore",smallRight:"CommunityCore",subMenuOpen:"MenuItem",subMenuOpenRtl:"MenuItem",panelDelimiter:"RowGroupingPanel",panelDelimiterRtl:"RowGroupingPanel",smallUp:"CommunityCore",sortAscending:["MenuCore","Sort"],sortDescending:["MenuCore","Sort"],sortAbsoluteAscending:["MenuCore","Sort"],sortAbsoluteDescending:["MenuCore","Sort"],sortUnSort:["MenuCore","Sort"],advancedFilterBuilder:"AdvancedFilter",advancedFilterBuilderDrag:"AdvancedFilter",advancedFilterBuilderInvalid:"AdvancedFilter",advancedFilterBuilderMoveUp:"AdvancedFilter",advancedFilterBuilderMoveDown:"AdvancedFilter",advancedFilterBuilderAdd:"AdvancedFilter",advancedFilterBuilderRemove:"AdvancedFilter",advancedFilterBuilderSelectOpen:"AdvancedFilter",chartsMenu:"IntegratedCharts",chartsMenuEdit:"IntegratedCharts",chartsMenuAdvancedSettings:"IntegratedCharts",chartsMenuAdd:"IntegratedCharts",chartsColorPicker:"IntegratedCharts",chartsThemePrevious:"IntegratedCharts",chartsThemeNext:"IntegratedCharts",chartsDownload:"IntegratedCharts",checkboxChecked:"CommunityCore",checkboxIndeterminate:"CommunityCore",checkboxUnchecked:"CommunityCore",radioButtonOn:"CommunityCore",radioButtonOff:"CommunityCore",rowPin:"PinnedRow",rowUnpin:"PinnedRow",rowPinBottom:"PinnedRow",rowPinTop:"PinnedRow"},Zb=new Set(["colorPicker","smallUp","checkboxChecked","checkboxIndeterminate","checkboxUnchecked","radioButtonOn","radioButtonOff","smallDown","smallLeft","smallRight"]);var Qb=new Set(["firstChildChanged","lastChildChanged","childIndexChanged"]),Jb={moduleName:"Validation",version:ii,beans:[class extends wt{constructor(){super(...arguments),this.beanName="validation"}wireBeans(e){this.gridOptions=e.gridOptions,oi=km}warnOnInitialPropertyUpdate(e,t){"api"===e&&zb[t]&&gi(22,{key:t})}processGridOptions(e){this.processOptions(e,{objectName:"gridOptions",allProperties:[...Kg(),...Object.values(kg)],propertyExceptions:["api"],docsUrl:"grid-options/",deprecations:{suppressLoadingOverlay:{version:"32",message:"Use `loading`=false instead."},enableFillHandle:{version:"32.2",message:"Use `cellSelection.handle` instead."},enableRangeHandle:{version:"32.2",message:"Use `cellSelection.handle` instead."},enableRangeSelection:{version:"32.2",message:"Use `cellSelection = true` instead."},suppressMultiRangeSelection:{version:"32.2",message:"Use `cellSelection.suppressMultiRanges` instead."},suppressClearOnFillReduction:{version:"32.2",message:"Use `cellSelection.handle.suppressClearOnFillReduction` instead."},fillHandleDirection:{version:"32.2",message:"Use `cellSelection.handle.direction` instead."},fillOperation:{version:"32.2",message:"Use `cellSelection.handle.setFillValue` instead."},suppressRowClickSelection:{version:"32.2",message:"Use `rowSelection.enableClickSelection` instead."},suppressRowDeselection:{version:"32.2",message:"Use `rowSelection.enableClickSelection` instead."},rowMultiSelectWithClick:{version:"32.2",message:"Use `rowSelection.enableSelectionWithoutKeys` instead."},groupSelectsChildren:{version:"32.2",message:'Use `rowSelection.groupSelects = "descendants"` instead.'},groupSelectsFiltered:{version:"32.2",message:'Use `rowSelection.groupSelects = "filteredDescendants"` instead.'},isRowSelectable:{version:"32.2",message:"Use `selectionOptions.isRowSelectable` instead."},suppressCopySingleCellRanges:{version:"32.2",message:"Use `rowSelection.copySelectedRows` instead."},suppressCopyRowsToClipboard:{version:"32.2",message:"Use `rowSelection.copySelectedRows` instead."},onRangeSelectionChanged:{version:"32.2",message:"Use `onCellSelectionChanged` instead."},onRangeDeleteStart:{version:"32.2",message:"Use `onCellSelectionDeleteStart` instead."},onRangeDeleteEnd:{version:"32.2",message:"Use `onCellSelectionDeleteEnd` instead."},suppressBrowserResizeObserver:{version:"32.2",message:"The grid always uses the browser's ResizeObserver, this grid option has no effect."},onColumnEverythingChanged:{version:"32.2",message:"Either use `onDisplayedColumnsChanged` which is fired at the same time, or use one of the more specific column events."},groupRemoveSingleChildren:{version:"33",message:"Use `groupHideParentOfSingleChild` instead."},groupRemoveLowestSingleChildren:{version:"33",message:'Use `groupHideParentOfSingleChild: "leafGroupsOnly"` instead.'},suppressRowGroupHidesColumns:{version:"33",message:'Use `suppressGroupChangesColumnVisibility: "suppressHideOnGroup"` instead.'},suppressMakeColumnVisibleAfterUnGroup:{version:"33",message:'Use `suppressGroupChangesColumnVisibility: "suppressShowOnUngroup"` instead.'},unSortIcon:{version:"33",message:"Use `defaultColDef.unSortIcon` instead."},sortingOrder:{version:"33",message:"Use `defaultColDef.sortingOrder` instead."},suppressPropertyNamesCheck:{version:"33",message:"`gridOptions` and `columnDefs` both have a `context` property that should be used for arbitrary user data. This means that column definitions and gridOptions should only contain valid properties making this property redundant."},suppressAdvancedFilterEval:{version:"34",message:"Advanced filter no longer uses function evaluation, so this option has no effect."}},validations:Yg()})}validateApiFunction(e,t){return function(e,t,i){const s=$b[e];if(s){const{version:i,new:o,old:r,message:n}=s,a=r??e;return(...e)=>(Bt(`Since ${i} api.${a} is deprecated. ${o?`Please use ${o} instead. `:""}${n??""}`),t.apply(t,e))}const o=Kb[e];return o?(...s)=>{const r=i.rowModel.getType();if(o.includes(r))return t.apply(t,s);Vt(`api.${e} can only be called when gridOptions.rowModelType is ${o.join(" or ")}`)}:t}(e,t,this.beans)}missingUserComponent(e,t,i,s){const o=Lg[t];o?this.gos.assertModuleRegistered(o,`AG Grid '${e}' component: ${t}`):gi(101,{propertyName:e,componentName:t,agGridDefaults:i,jsComps:s})}missingDynamicBean(e){const t=qb[e];return t?vi(200,{...this.gos.getModuleErrorParams(),moduleName:t,reasonOrId:e}):void 0}checkRowEvents(e){Qb.has(e)&&gi(10,{eventType:e})}validateIcon(e){if(Zb.has(e)&&gi(43,{iconName:e}),Yb[e])return;const t=Xb[e];t?pi(200,{reasonOrId:`icon '${e}'`,moduleName:t,gridScoped:Xt(),gridId:this.beans.context.getId(),rowModelType:this.gos.get("rowModelType"),additionalText:"Alternatively, use the CSS icon name directly."}):gi(134,{iconName:e})}isProvidedUserComp(e){return!!Lg[e]}validateColDef(e){this.processOptions(e,{objectName:"colDef",allProperties:Object.keys(Ng),docsUrl:"column-properties/",deprecations:{checkboxSelection:{version:"32.2",message:"Use `rowSelection.checkboxes` in `GridOptions` instead."},headerCheckboxSelection:{version:"32.2",message:"Use `rowSelection.headerCheckbox = true` in `GridOptions` instead."},headerCheckboxSelectionFilteredOnly:{version:"32.2",message:'Use `rowSelection.selectAll = "filtered"` in `GridOptions` instead.'},headerCheckboxSelectionCurrentPageOnly:{version:"32.2",message:'Use `rowSelection.selectAll = "currentPage"` in `GridOptions` instead.'},showDisabledCheckboxes:{version:"32.2",message:"Use `rowSelection.hideDisabledCheckboxes = true` in `GridOptions` instead."},rowGroupingHierarchy:{version:"34.3",message:"Use `colDef.groupHierarchy` instead."}},validations:{autoHeight:{supportedRowModels:["clientSide","serverSide"],validate:(e,{paginationAutoPageSize:t})=>t?"colDef.autoHeight is not supported with paginationAutoPageSize.":null},allowFormula:{supportedRowModels:["clientSide"]},cellRendererParams:{validate:e=>null==e.rowGroup&&null==e.rowGroupIndex&&"agGroupCellRenderer"!==e.cellRenderer||!("checkbox"in e.cellRendererParams)?null:'Since v33.0, `cellRendererParams.checkbox` has been deprecated. Use `rowSelection.checkboxLocation = "autoGroupColumn"` instead.'},flex:{validate:(e,t)=>t.autoSizeStrategy?"colDef.flex is not supported with gridOptions.autoSizeStrategy":null},headerCheckboxSelection:{supportedRowModels:["clientSide","serverSide"],validate:(e,{rowSelection:t})=>"multiple"===t?null:"headerCheckboxSelection is only supported with rowSelection=multiple"},headerCheckboxSelectionCurrentPageOnly:{supportedRowModels:["clientSide"],validate:(e,{rowSelection:t})=>"multiple"===t?null:"headerCheckboxSelectionCurrentPageOnly is only supported with rowSelection=multiple"},headerCheckboxSelectionFilteredOnly:{supportedRowModels:["clientSide"],validate:(e,{rowSelection:t})=>"multiple"===t?null:"headerCheckboxSelectionFilteredOnly is only supported with rowSelection=multiple"},headerValueGetter:{validate:e=>{const t=e.headerValueGetter;return"function"==typeof t||"string"==typeof t?null:"headerValueGetter must be a function or a valid string expression"}},icons:{validate:({icons:e})=>{if(e){if(e.smallDown)return vi(262);if(e.smallLeft)return vi(263);if(e.smallRight)return vi(264)}return null}},sort:{validate:e=>Es(e.sort)||Ps(e.sort)?null:`sort must be of type (SortDirection | SortDef), currently it is ${"object"==typeof e.sort?JSON.stringify(e.sort):di(e.sort)}`},initialSort:{validate:e=>Es(e.initialSort)||Ps(e.initialSort)?null:`initialSort must be of non-null type (SortDirection | SortDef), currently it is ${"object"==typeof e.initialSort?JSON.stringify(e.initialSort):di(e.initialSort)}`},sortingOrder:{validate:e=>{const t=e.sortingOrder;if(Array.isArray(t)&&t.length>0){const e=t.filter(e=>!(Es(e)||Ps(e)));if(e.length>0)return`sortingOrder must be an array of type non-null (SortDirection | SortDef)[], incorrect items are: [${e.map(e=>"string"==typeof e||null==e?di(e):JSON.stringify(e)).join(", ")}]`}else if(!Array.isArray(t)||!t.length)return`sortingOrder must be an array with at least one element, currently it is [${t}]`;return null}},type:{validate:e=>{const t=e.type;return t instanceof Array?t.some(e=>"string"!=typeof e)?"if colDef.type is supplied an array it should be of type 'string[]'":null:"string"==typeof t?null:"colDef.type should be of type 'string' | 'string[]'"}},rowSpan:{validate:(e,{suppressRowTransform:t})=>t?null:"colDef.rowSpan requires suppressRowTransform to be enabled."},spanRows:{dependencies:{editable:{required:[!1,void 0]},rowDrag:{required:[!1,void 0]},colSpan:{required:[void 0]},rowSpan:{required:[void 0]}},validate:(e,{rowSelection:t,cellSelection:i,suppressRowTransform:s,enableCellSpan:o,rowDragEntireRow:r,enableCellTextSelection:n})=>"object"==typeof t&&"singleRow"===t?.mode&&t?.enableClickSelection?"colDef.spanRows is not supported with rowSelection.clickSelection":i?"colDef.spanRows is not supported with cellSelection.":s?"colDef.spanRows is not supported with suppressRowTransform.":o?r?"colDef.spanRows is not supported with rowDragEntireRow.":n?"colDef.spanRows is not supported with enableCellTextSelection.":null:"colDef.spanRows requires enableCellSpan to be enabled."},groupHierarchy:{validate(e,{groupHierarchyConfig:t={}},i){const s=new Set(["year","quarter","month","formattedMonth","day","hour","minute","second"]),o=[];for(const r of e.groupHierarchy??[])"object"!=typeof r?s.has(r)||r in t||o.push(Og(r)):i.validation?.validateColDef(r);return o.length>0?`The following parts of colDef.groupHierarchy are not recognised: ${o.join(", ")}.\nChoose one of ${[...s].map(Og).join(", ")}, or define your own parts in gridOptions.groupHierarchyConfig.`:null}}}})}processOptions(e,t){const{validations:i,deprecations:s,allProperties:o,propertyExceptions:r,objectName:n,docsUrl:a}=t;o&&!0!==this.gridOptions.suppressPropertyNamesCheck&&this.checkProperties(e,[...r??[],...Object.keys(s)],o,n,a);const l=new Set;if(Object.keys(e).forEach(t=>{const o=s[t];if(o){const{message:e,version:i}=o;l.add(`As of v${i}, ${String(t)} is deprecated. ${e??""}`)}const r=e[t];if(null==r||!1===r)return;const n=i[t];if(!n)return;const{dependencies:a,validate:d,supportedRowModels:c,expectedType:u}=n;if(u){const e=typeof r;if(e!==u)return void l.add(`${String(t)} should be of type '${u}' but received '${e}' (${r}).`)}if(c){const e=this.gridOptions.rowModelType??"clientSide";if(!c.includes(e))return void l.add(`${String(t)} is not supported with the '${e}' row model. It is only valid with: ${c.join(", ")}.`)}if(a){const i=this.checkForRequiredDependencies(t,a,e);if(i)return void l.add(i)}if(d){const t=d(e,this.gridOptions,this.beans);if(t)return void l.add(t)}}),l.size>0)for(const e of l)Bt(e)}checkForRequiredDependencies(e,t,i){const s=Object.entries(t).filter(([e,t])=>{const s=i[e];return!t.required.includes(s)});return 0===s.length?null:s.map(([t,i])=>`'${String(e)}' requires '${t}' to be one of [${i.required.map(e=>null===e?"null":void 0===e?"undefined":e).join(", ")}]. ${i.reason??""}`).join("\n ")}checkProperties(e,t,i,s,o){const r=function(e,t,i){const s={},o=e.filter(e=>!t.some(t=>t===e));if(o.length>0)for(const e of o)s[e]=Sm({inputValue:e,allSuggestions:i}).values;return s}(Object.getOwnPropertyNames(e),["__ob__","__v_skip","__metadata__",...t,...i],i),n=Object.keys(r);for(const e of n){let t=`invalid ${s} property '${e}' did you mean any of these: ${r[e].slice(0,8).join(", ")}.`;i.includes("context")&&(t+=`\nIf you are trying to annotate ${s} with application data, use the '${s}.context' property instead.`),Bt(t)}if(n.length>0&&o){Bt(`to see all the valid ${s} properties please check: ${this.beans.frameworkOverrides.getDocLink(o)}`)}}}]},ey={moduleName:"AllCommunity",version:ii,dependsOn:[vf,Lf,rb,Jb,XC,ZC,QC,JC,ev,tv,iv,YC,Yw,Xw,Zw,Qw,qw,eb,tb,cb,qm,fb,gu,Zm,Qm,yb,Rf,mc,Cb,Bb,Cm,_b,Mf,Hb,nb,bm,bb,$f,lb,Sb,gc,wf,Mb]};function ty(e,t={}){return[e,Object.keys(t).map(e=>{const i=t[e];return null!=i?`${e}=${i}`:null}).filter(Boolean).join(";")].filter(e=>e.length>0).join(":")}var iy={grid(e){return ty("ag-grid-root",{gridId:e})},headerGroupCell(e){return ty("ag-header-group-cell",{colId:e})},headerCell(e){return ty("ag-header-cell",{colId:e})},headerCheckbox(e){return ty("ag-header-selection-checkbox",{colId:e})},headerFilterButton(e){return ty("ag-header-cell-filter-button",{colId:e})},floatingFilter(e){return ty("ag-floating-filter",{colId:e})},floatingFilterButton(e){return ty("ag-floating-filter-button",{colId:e})},headerCellMenuButton(e){return ty("ag-header-cell-menu-button",{colId:e})},headerResizeHandle(e){return ty("ag-header-cell-resize",{colId:e})},filterInstancePickerDisplay(e){return ty(`ag-${e.source}-picker-display`,oy(e))},numberFilterInstanceInput(e){return ty(`ag-${e.source}-number-input`,oy(e))},textFilterInstanceInput(e){return ty(`ag-${e.source}-text-input`,oy(e))},dateFilterInstanceInput(e){return ty(`ag-${e.source}-date-input`,oy(e))},setFilterInstanceMiniFilterInput(e){return ty(`ag-${e.source}-set-filter-mini-filter-input`,"filter-toolpanel"===e.source?{label:e.colLabel}:{colId:e.colId})},setFilterInstanceItem(e,t){return ty(`ag-${e.source}-set-filter-item`,"filter-toolpanel"===e.source?{colLabel:e.colLabel,itemLabel:t}:{colId:e.colId,itemLabel:t})},setFilterApplyPanelButton(e,t){return ty(`ag-${e.source}-set-filter-apply-panel-button`,"filter-toolpanel"===e.source?{colLabel:e.colLabel,buttonLabel:t}:{colId:e.colId,buttonLabel:t})},filterConditionRadioButton(e,t){return ty(`ag-${e.source}-filter-condition-radio-button`,"filter-toolpanel"===e.source?{colLabel:e.colLabel,buttonLabel:t}:{colId:e.colId,buttonLabel:t})},advancedFilterInput(){return ty("ag-advanced-filter-input")},advancedFilterButton(e){return ty("ag-advanced-filter-button",{label:e})},advancedFilterBuilderButton(){return ty("ag-advanced-filter-builder-button")},advancedFilterPanelMaximiseButton(){return ty("ag-advanced-filter-builder-panel-maximise")},advancedFilterPanelCloseButton(){return ty("ag-advanced-filter-builder-panel-close")},advancedFilterPill(e){return ty("ag-advanced-filter-builder-pill",{label:e})},advancedFilterBuilderAddItemButton(){return ty("ag-advanced-filter-builder-add-item-button")},rowNode(e){return ty("ag-row",{"row-id":e})},cell(e,t){return ty("ag-cell",{"row-id":e,colId:t})},autoGroupCell(e){return iy.cell(e,Bs)},checkbox(e,t){return ty("ag-selection-checkbox",{"row-id":e,colId:t})},selectionColumnCheckbox(e){return iy.checkbox(e,Vs)},autoGroupColumnCheckbox(e){return iy.checkbox(e,Bs)},dragHandle(e,t){return ty("ag-drag-handle",{"row-id":e,colId:t})},groupContracted(e,t){return ty("ag-group-contracted",{"row-id":e,colId:t})},groupExpanded(e,t){return ty("ag-group-expanded",{"row-id":e,colId:t})},autoGroupContracted(e){return iy.groupContracted(e,Bs)},autoGroupExpanded(e){return iy.groupExpanded(e,Bs)},rowNumber(e){return iy.cell(e,_s)},menu(){return ty("ag-menu")},menuOption(e){return ty("ag-menu-option",{option:e})},sideBar(){return ty("ag-side-bar")},sideBarButton(e){return ty("ag-side-button",{label:e})},columnToolPanel(){return ty("ag-column-panel")},pivotModeSelect(){return ty("ag-pivot-mode-select")},columnPanelSelectHeaderCheckbox(){return ty("ag-column-panel-select-header-checkbox")},columnPanelSelectHeaderFilter(){return ty("ag-column-panel-select-header-filter")},columnSelectListItemGroupClosedIcon(e){return ty("ag-column-select-list-item-group-closed-icon",{label:e})},columnSelectListItemCheckbox(e){return ty("ag-column-select-list-item-checkbox",{label:e})},columnSelectListItemDragHandle(e){return ty("ag-column-select-list-item-drag-handle",{label:e})},columnDropCellDragHandle(e,t,i){return ty("ag-column-drop-cell-drag-handle",{source:e,area:t,label:i})},columnDropCellCancelButton(e,t,i){return ty("ag-column-drop-cell-cancel",{source:e,area:t,label:i})},columnDropArea(e,t){return ty("ag-column-drop-area",{source:e,name:t})},filterToolPanel(){return ty("ag-filter-panel")},filterToolPanelAddFilterButton(){return ty("ag-filter-panel-add-filter-button")},filterToolPanelFilterTypeSelector(e){return ty("ag-filter-panel-filter-type-selector",{colLabel:e})},filterToolPanelSearchInput(){return ty("ag-filter-toolpanel-search-input")},filterToolPanelGroup(e){return ty("ag-filter-toolpanel-group",{title:e})},filterToolPanelGroupCollapsedIcon(e){return ty("ag-filter-toolpanel-group-collapsed-icon",{title:e})},statusBarTotalAndFilteredRowCount(){return ty("ag-status-bar-total-and-filtered-row-count")},statusBarTotalRowCount(){return ty("ag-status-bar-total-row-count")},statusBarFilteredRowCount(){return ty("ag-status-bar-filtered-row-count")},statusBarSelectedRowCount(){return ty("ag-status-bar-selected-row-count")},statusBarAggregations(){return ty("ag-status-bar-aggregations")},paginationPanelSizePickerDisplay(e){return ty("ag-pagination-page-size-picker-field-display",{value:e})},paginationPanelFirstRowOnPage(e){return ty("ag-paging-row-summary-panel-first-row-on-page",{value:e})},paginationPanelLastRowOnPage(e){return ty("ag-paging-row-summary-panel-last-row-on-page",{value:e})},paginationPanelRecordCount(e){return ty("ag-paging-row-summary-panel-record-count",{value:e})},paginationSummaryPanelButton(e){return ty("ag-paging-page-summary-panel-btn",{label:e})},paginationSummaryPanelCurrentPage(e){return ty("ag-paging-page-summary-panel-current-page",{value:e})},paginationSummaryPanelTotalPage(e){return ty("ag-paging-page-summary-panel-total-page",{value:e})},fillHandle(){return ty("ag-fill-handle")},columnChooserCloseButton(){return ty("ag-column-chooser-close-button")},columnChooserSearchBarCheckbox(){return ty("ag-column-chooser-header-checkbox")},columnChooserSearchBarFilter(){return ty("ag-column-chooser-searchbar-filter")},columnChooserListItemGroupClosedIcon(e){return ty("ag-column-chooser-list-item-group-closed-icon",{label:e})},columnChooserListItemCheckbox(e){return ty("ag-column-chooser-list-item-checkbox",{label:e})},columnChooserListItemDragHandle(e){return ty("ag-column-chooser-list-item-drag-handle",{label:e})},overlay(){return ty("ag-overlay")}},sy=e=>{const t={},i=Object.keys(iy);for(const s of i)t[s]=(...t)=>e(iy[s](...t));return t};function oy(e){return function(e,t){return Object.fromEntries(Object.entries(e).reduce((e,[i,s])=>(null!==t[i]&&e.push([t[i]??i,s]),e),[]))}(function(e){return"floating-filter"!==e.source?{index:0,...e}:e}(e),{colLabel:"label"})}var ry="data-testid";function ny(e,t){e?.setAttribute(ry,t)}var ay={moduleName:"Testing",version:ii,beans:[class extends wt{constructor(){super(...arguments),this.beanName="testIdSvc"}postConstruct(){const e=Rt(this,()=>this.setupAllTestIds(),500),t=Rt(this,()=>{this.setupAllTestIds(),e()},0);this.addManagedEventListeners({firstDataRendered:t,displayedRowsChanged:t,displayedColumnsChanged:t,displayedColumnsWidthChanged:t,virtualColumnsChanged:t,columnMenuVisibleChanged:t,contextMenuVisibleChanged:t,advancedFilterBuilderVisibleChanged:t,fieldPickerValueSelected:t,modelUpdated:t,sideBarUpdated:t,pinnedHeightChanged:t,gridReady:t,overlayExclusiveChanged:t,rowGroupOpened:t,scrollVisibilityChanged:t,gridSizeChanged:t,filterOpened:t,filterChanged:t,cellSelectionChanged:t})}setupAllTestIds(){const e=E(this.beans),t=Od(this.beans);ny(e.querySelector(`[grid-id="${t}"]`),iy.grid(t)),e.querySelectorAll(".ag-header-group-cell").forEach(e=>{ny(e,iy.headerGroupCell(e.getAttribute("col-id")))}),e.querySelectorAll(".ag-header-cell").forEach(e=>{const t=e.getAttribute("col-id"),i=e.classList.contains("ag-floating-filter");ny(e,i?iy.floatingFilter(t):iy.headerCell(t)),ny(e.querySelector(".ag-header-cell-filter-button"),iy.headerFilterButton(t)),ny(e.querySelector(".ag-header-cell-menu-button"),iy.headerCellMenuButton(t)),ny(e.querySelector(".ag-header-cell-resize"),iy.headerResizeHandle(t)),ny(e.querySelector(".ag-checkbox input[type=checkbox]"),iy.headerCheckbox(t)),ny(e.querySelector(".ag-floating-filter-button button"),iy.floatingFilterButton(t)),this.setupFilterInstance(e.querySelector(".ag-floating-filter-body"),{source:"floating-filter",colId:t})});const i=e.querySelector(".ag-filter-menu");this.setupFilterInstance(i,{source:"column-filter"}),ny(e.querySelector(".ag-advanced-filter input[type=text]"),iy.advancedFilterInput()),e.querySelectorAll(".ag-advanced-filter-buttons button").forEach(e=>{ny(e,iy.advancedFilterButton(e.textContent))}),ny(e.querySelector("button.ag-advanced-filter-builder-button"),iy.advancedFilterBuilderButton()),e.querySelectorAll('.ag-panel[aria-label="Advanced Filter"] .ag-panel-title-bar-button').forEach((e,t)=>{ny(e,0===t?iy.advancedFilterPanelMaximiseButton():iy.advancedFilterPanelCloseButton())}),e.querySelectorAll('.ag-panel[aria-lable="Advanced Filter"] .ag-advanced-filter-builder-pill').forEach(e=>{ny(e,iy.advancedFilterPill(e.querySelector(".ag-picker-field-display")?.textContent))}),ny(e.querySelector('.ag-panel[aria-label="Advanced Filter"] .ag-advanced-filter-builder-item-button'),iy.advancedFilterBuilderAddItemButton()),e.querySelectorAll(".ag-row").forEach(e=>{const t=e.getAttribute("row-id");ny(e,iy.rowNode(t)),e.querySelectorAll(".ag-cell").forEach(e=>{const i=e.getAttribute("col-id");ny(e,iy.cell(t,i)),ny(e.querySelector(".ag-selection-checkbox input[type=checkbox]"),iy.checkbox(t,i)),ny(e.querySelector(".ag-drag-handle"),iy.dragHandle(t,i)),ny(e.querySelector(".ag-group-contracted"),iy.groupContracted(t,i)),ny(e.querySelector(".ag-group-expanded"),iy.groupExpanded(t,i))})}),e.querySelectorAll(".ag-menu-list").forEach(e=>{ny(e,iy.menu()),e.querySelectorAll(".ag-menu-option").forEach(e=>{ny(e,iy.menuOption(e.querySelector(".ag-menu-option-text")?.textContent))})}),e.querySelectorAll(".ag-side-bar").forEach(e=>{ny(e,iy.sideBar()),e.querySelectorAll(".ag-side-button button").forEach(e=>{ny(e,iy.sideBarButton(e.querySelector(".ag-side-button-label")?.textContent))}),e.querySelectorAll(".ag-column-panel").forEach(e=>{ny(e,iy.columnToolPanel()),ny(e.querySelector(".ag-pivot-mode-select input[type=checkbox]"),iy.pivotModeSelect()),ny(e.querySelector(".ag-column-select-header-checkbox input[type=checkbox]"),iy.columnPanelSelectHeaderCheckbox()),ny(e.querySelector(".ag-column-select-header-filter-wrapper input[type=text]"),iy.columnPanelSelectHeaderFilter()),e.querySelectorAll(".ag-column-select-list").forEach(e=>{e.querySelectorAll(".ag-column-select-virtual-list-item").forEach(e=>{const t=e.getAttribute("aria-label");ny(e.querySelector(".ag-column-group-closed-icon"),iy.columnSelectListItemGroupClosedIcon(t)),ny(e.querySelector(".ag-column-select-checkbox input[type=checkbox]"),iy.columnSelectListItemCheckbox(t)),ny(e.querySelector(".ag-drag-handle"),iy.columnSelectListItemDragHandle(t))})}),this.setupColumnDropArea(e,"toolbar")}),e.querySelectorAll(".ag-filter-panel").forEach(e=>{ny(e,iy.filterToolPanel()),ny(e.querySelector("button.ag-filter-add-button"),iy.filterToolPanelAddFilterButton()),e.querySelectorAll(".ag-filter-card").forEach(e=>{const t=e.querySelector(".ag-filter-card-title")?.textContent;ny(e.querySelector(".ag-filter-type-select"),iy.filterToolPanelFilterTypeSelector(t)),e.querySelectorAll(".ag-filter").forEach(e=>this.setupFilterInstance(e,{source:"filter-toolpanel",colLabel:t}))})}),e.querySelectorAll(".ag-filter-toolpanel").forEach(e=>{ny(e.querySelector(".ag-filter-toolpanel-search-input input[type=text]"),iy.filterToolPanelSearchInput()),e.querySelectorAll(".ag-filter-toolpanel-group").forEach(e=>{const t=e.querySelector(".ag-filter-toolpanel-group-title")?.textContent;ny(e,iy.filterToolPanelGroup(t)),ny(e.querySelector(".ag-filter-toolpanel-group-title-bar-icon .ag-icon-tree-closed"),iy.filterToolPanelGroupCollapsedIcon(t));const i=e.querySelector(".ag-filter-toolpanel-instance-filter");i&&this.setupFilterInstance(i,{source:"filter-toolpanel",colLabel:t})})})}),ny(e.querySelector(".ag-status-bar .ag-status-panel-total-and-filtered-row-count"),iy.statusBarTotalAndFilteredRowCount()),ny(e.querySelector(".ag-status-bar .ag-status-panel-total-row-count"),iy.statusBarTotalRowCount()),ny(e.querySelector(".ag-status-bar .ag-status-panel-filtered-row-count"),iy.statusBarFilteredRowCount()),ny(e.querySelector(".ag-status-bar .ag-status-panel-selected-row-count"),iy.statusBarSelectedRowCount()),ny(e.querySelector(".ag-status-bar .ag-status-panel-filtered-row-count"),iy.statusBarAggregations()),e.querySelectorAll(".ag-paging-panel").forEach(e=>{ny(e.querySelector(".ag-paging-page-size .ag-picker-field-display"),iy.paginationPanelSizePickerDisplay(e.querySelector(".ag-paging-page-size .ag-picker-field-display")?.textContent)),e.querySelectorAll(".ag-paging-row-summary-panel-number").forEach(e=>{switch(e.getAttribute("data-ref")){case"lbFirstRowOnPage":ny(e,iy.paginationPanelFirstRowOnPage(e.textContent));break;case"lbLastRowOnPage":ny(e,iy.paginationPanelLastRowOnPage(e.textContent));break;case"lbRecordCount":ny(e,iy.paginationPanelRecordCount(e.textContent))}}),e.querySelectorAll(".ag-paging-page-summary-panel .ag-button").forEach(e=>{ny(e,iy.paginationSummaryPanelButton(e.getAttribute("aria-label")?.toLowerCase()))}),e.querySelectorAll(".ag-paging-page-summary-panel .ag-paging-number").forEach(e=>{switch(e.getAttribute("data-ref")){case"lbCurrent":ny(e,iy.paginationSummaryPanelCurrentPage(e.textContent));break;case"lbTotal":ny(e,iy.paginationSummaryPanelTotalPage(e.textContent))}})}),ny(e.querySelector(".ag-fill-handle"),iy.fillHandle()),e.querySelectorAll('.ag-panel[aria-label="Choose Columns"]').forEach(e=>{ny(e.querySelector(".ag-panel-title-bar-button-icon"),iy.columnChooserCloseButton()),ny(e.querySelector('.ag-column-select-header-checkbox input[type="checkbox"]'),iy.columnChooserSearchBarCheckbox()),ny(e.querySelector('.ag-column-select-header-filter-wrapper input[type="text"]'),iy.columnChooserSearchBarFilter()),e.querySelectorAll(".ag-column-select-list").forEach(e=>{e.querySelectorAll(".ag-column-select-virtual-list-item").forEach(e=>{const t=e.getAttribute("aria-label");ny(e.querySelector(".ag-column-group-closed-icon"),iy.columnChooserListItemGroupClosedIcon(t)),ny(e.querySelector(".ag-column-select-checkbox input[type=checkbox]"),iy.columnChooserListItemCheckbox(t)),ny(e.querySelector(".ag-drag-handle"),iy.columnChooserListItemDragHandle(t))})})}),ny(e.querySelector(".ag-overlay-wrapper"),iy.overlay());const s=e.querySelector(".ag-column-drop-wrapper");s&&this.setupColumnDropArea(s,"panel")}setupFilterInstance(e,t){if(!e)return;e.querySelectorAll(".ag-filter-select .ag-picker-field-display").forEach(e=>{ny(e,iy.filterInstancePickerDisplay(t))});const i="floating-filter"===t.source?".ag-floating-filter-body":".ag-filter-body";e.querySelectorAll(`${i} .ag-input-field:not(.ag-hidden) input[type="number"]`).forEach((e,i,s)=>{const o=s.length>1?{...t,index:i}:t;ny(e,iy.numberFilterInstanceInput(o))}),e.querySelectorAll(`${i} .ag-input-field:not(.ag-hidden) input[type="text"]`).forEach((e,i,s)=>{const o=s.length>1?{...t,index:i}:t;ny(e,iy.textFilterInstanceInput(o))}),e.querySelectorAll(`${i} .ag-input-field:not(.ag-hidden) input[type="date"]`).forEach((e,i,s)=>{const o=s.length>1?{...t,index:i}:t;ny(e,iy.dateFilterInstanceInput(o))});ny(e.querySelector('.ag-mini-filter input[type="text"]'),iy.setFilterInstanceMiniFilterInput(t)),e.querySelectorAll(".ag-set-filter-list .ag-set-filter-item").forEach(e=>{const i=e.querySelector(".ag-checkbox-label")?.textContent;ny(e.querySelector('input[type="checkbox"]'),iy.setFilterInstanceItem(t,i))}),e.querySelectorAll(".ag-filter-apply-panel button").forEach(e=>{ny(e,iy.setFilterApplyPanelButton(t,e.textContent))}),e.querySelectorAll(".ag-filter-condition .ag-radio-button").forEach(e=>{const i=e.querySelector(".ag-radio-button-label")?.textContent;ny(e.querySelector("input[type=radio]"),iy.filterConditionRadioButton(t,i))})}setupColumnDropArea(e,t){e.querySelectorAll(".ag-column-drop").forEach(e=>{const i=e.querySelector(".ag-column-drop-list")?.getAttribute("aria-label");ny(e,iy.columnDropArea(t,i)),e.querySelectorAll(".ag-column-drop-cell").forEach(e=>{const s=e.querySelector(".ag-column-drop-cell-text")?.textContent;ny(e.querySelector(".ag-drag-handle"),iy.columnDropCellDragHandle(t,i,s)),ny(e.querySelector(".ag-column-drop-cell-button .ag-icon-cancel"),iy.columnDropCellCancelButton(t,i,s))})})}}]};function ly({testIdAttribute:e}={}){e&&(ry=e),ei.registerModules([ay])}var dy=class extends wt{constructor(){super(...arguments),this.dispatchColumnChangedEvent=wo,this.columns=[],this.columnIndexMap={},this.updateIndexMap=()=>{this.columnIndexMap={},this.columns.forEach((e,t)=>this.columnIndexMap[e.getId()]=t)}}wireBeans(e){this.colModel=e.colModel,this.aggFuncSvc=e.aggFuncSvc,this.visibleCols=e.visibleCols,this.groupHierarchCols=e.groupHierarchyColSvc}sortColumns(e){const{groupHierarchCols:t}=this;this.columns.sort((i,s)=>t?.compareVirtualColumns(i,s)??e(i,s)),this.updateIndexMap()}setColumns(e,t){this.setColList(e,this.columns,this.eventName,!0,!0,this.columnProcessors.set,t)}addColumns(e,t){this.updateColList(e,this.columns,!0,!0,this.columnProcessors.add,this.eventName,t)}removeColumns(e,t){this.updateColList(e,this.columns,!1,!0,this.columnProcessors.remove,this.eventName,t)}getColumnIndex(e){return this.columnIndexMap[e]}setColList(e=[],t,i,s,o,r,n){const a=this.colModel.getCols();if(!a||0===a.length)return;const l=new Map;t.forEach((e,t)=>l.set(e,t)),t.length=0;for(const i of e){const e=this.colModel.getColDefCol(i);e&&t.push(e)}t.forEach((e,t)=>{const i=l.get(e);void 0!==i?s&&i!==t||l.delete(e):l.set(e,0)}),this.updateIndexMap();const d=this.colModel.getColDefCols();for(const e of d??[]){r(e,t.indexOf(e)>=0,n)}o&&this.colModel.refreshCols(!1,n),this.visibleCols.refresh(n),this.dispatchColumnChangedEvent(this.eventSvc,i,[...l.keys()],n)}updateColList(e=[],t,i,s,o,r,n){if(!e||0===e.length)return;let a=!1;const l=new Set;for(const s of e){if(!s)continue;const e=this.colModel.getColDefCol(s);if(e){if(l.add(e),i){if(t.indexOf(e)>=0)continue;t.push(e)}else{const i=t.indexOf(e);if(i<0)continue;for(let e=i+1;e=0:r?void 0!==h?h:!!(void 0!==p)&&(null!=p&&p>=0):i.indexOf(e)>=0,m){(r?null!=g||null!=p:null!=g)?s.push(e):o.push(e)}}const u=e=>{const t=e.getColDef();return n(t)??a(t)};s.sort((e,t)=>u(e)-u(t));const h=[],g=this.groupHierarchCols,p=e=>{g?g.expandColumnInto(h,e):h.push(e)};s.forEach(p);for(const e of i)o.indexOf(e)>=0&&p(e);for(const e of o)h.indexOf(e)<0&&p(e);for(const t of i)h.indexOf(t)<0&&r(t,!1,e);for(const t of h)i.indexOf(t)<0&&r(t,!0,e);return this.columns=h,this.updateIndexMap(),this.columns}restoreColumnOrder(e,t){const i=this.columns,s=this.colModel.getColDefCols();if(!i.length||!s)return e;const o=Object.keys(t),r=new Set(o),n=new Set(o),a=new Set(i.map(e=>{const t=e.getColId();return n.delete(t),t}).concat(o)),l=[],d={};let c=0;for(let e=0;e{const i=d[e];for(let e=g;ethis.syncValueFromDom(),blur:()=>this.syncValueFromDom(!0)}),this.renderValueToElement&&null!=this.value&&this.refreshDisplayedValue(this.value)}setupAria(){const e=this.getAriaElement();B(e,this.config.ariaRole??"textbox"),e.setAttribute("tabindex",this.gos.get("tabIndex").toString())}setupEditable(){const e=this.config.contentEditable??"plaintext-only";!1===e?this.eWrapper.removeAttribute("contenteditable"):!0===e?this.eWrapper.setAttribute("contenteditable","true"):this.eWrapper.setAttribute("contenteditable",e)}setValue(e,t){const i=super.setValue(e,t);return this.renderValueToElement&&!t&&this.refreshDisplayedValue(e),i}setRenderValueToElement(e){this.renderValueToElement=e}setDisplayedValue(e){this.refreshDisplayedValue(e??"")}getContentElement(){return this.eWrapper}refreshDisplayedValue(e){this.eWrapper.textContent=e??""}syncValueFromDom(e){super.setValue(this.eWrapper.textContent??"",e)}getFocusableElement(){return this.eWrapper}},my={selector:"AG-CONTENT-EDITABLE-FIELD",component:py},fy=class extends Ra{constructor(e){super(e,"ag-toggle-button"),this.registerCSS('.ag-toggle-button{flex:none;min-width:unset;width:unset}.ag-toggle-button-input-wrapper{background-color:var(--ag-toggle-button-off-background-color);border-radius:calc(var(--ag-toggle-button-height)*.5);flex:none;height:var(--ag-toggle-button-height);max-width:var(--ag-toggle-button-width);min-width:var(--ag-toggle-button-width);position:relative;transition:background-color .1s;:where(.ag-toggle-button-input){-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;display:block;height:var(--ag-toggle-button-height);margin:0;max-width:var(--ag-toggle-button-width);min-width:var(--ag-toggle-button-width);opacity:0}&.ag-checked{background-color:var(--ag-toggle-button-on-background-color)}&.ag-disabled{opacity:.5}}.ag-toggle-button-input-wrapper:before{background-color:var(--ag-toggle-button-switch-background-color);border-radius:100%;content:"";display:block;height:calc(var(--ag-toggle-button-height) - var(--ag-toggle-button-switch-inset)*2);left:var(--ag-toggle-button-switch-inset);pointer-events:none;position:absolute;top:var(--ag-toggle-button-switch-inset);transition:left .1s;width:calc(var(--ag-toggle-button-height) - var(--ag-toggle-button-switch-inset)*2)}.ag-toggle-button-input-wrapper.ag-checked:before{left:calc(100% - var(--ag-toggle-button-height) + var(--ag-toggle-button-switch-inset))}.ag-toggle-button-input-wrapper:focus-within{box-shadow:var(--ag-focus-shadow)}')}setValue(e,t){return super.setValue(e,t),this.toggleCss("ag-selected",this.getValue()),this}},Cy={selector:"AG-TOGGLE-BUTTON",component:fy}},85608:function(e,t,i){"use strict";i.r(t),i.d(t,{__addDisposableResource:function(){return O},__assign:function(){return r},__asyncDelegator:function(){return R},__asyncGenerator:function(){return F},__asyncValues:function(){return P},__await:function(){return x},__awaiter:function(){return p},__classPrivateFieldGet:function(){return I},__classPrivateFieldIn:function(){return L},__classPrivateFieldSet:function(){return k},__createBinding:function(){return f},__decorate:function(){return a},__disposeResources:function(){return N},__esDecorate:function(){return d},__exportStar:function(){return C},__extends:function(){return o},__generator:function(){return m},__importDefault:function(){return D},__importStar:function(){return T},__makeTemplateObject:function(){return M},__metadata:function(){return g},__param:function(){return l},__propKey:function(){return u},__read:function(){return w},__rest:function(){return n},__rewriteRelativeImportExtension:function(){return B},__runInitializers:function(){return c},__setFunctionName:function(){return h},__spread:function(){return b},__spreadArray:function(){return S},__spreadArrays:function(){return y},__values:function(){return v}});var s=function(e,t){return s=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var i in t)Object.prototype.hasOwnProperty.call(t,i)&&(e[i]=t[i])},s(e,t)};function o(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function i(){this.constructor=e}s(e,t),e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)}var r=function(){return r=Object.assign||function(e){for(var t,i=1,s=arguments.length;i=0;a--)(o=e[a])&&(n=(r<3?o(n):r>3?o(t,i,n):o(t,i))||n);return r>3&&n&&Object.defineProperty(t,i,n),n}function l(e,t){return function(i,s){t(i,s,e)}}function d(e,t,i,s,o,r){function n(e){if(void 0!==e&&"function"!=typeof e)throw new TypeError("Function expected");return e}for(var a,l=s.kind,d="getter"===l?"get":"setter"===l?"set":"value",c=!t&&e?s.static?e:e.prototype:null,u=t||(c?Object.getOwnPropertyDescriptor(c,s.name):{}),h=!1,g=i.length-1;g>=0;g--){var p={};for(var m in s)p[m]="access"===m?{}:s[m];for(var m in s.access)p.access[m]=s.access[m];p.addInitializer=function(e){if(h)throw new TypeError("Cannot add initializers after decoration has completed");r.push(n(e||null))};var f=(0,i[g])("accessor"===l?{get:u.get,set:u.set}:u[d],p);if("accessor"===l){if(void 0===f)continue;if(null===f||"object"!=typeof f)throw new TypeError("Object expected");(a=n(f.get))&&(u.get=a),(a=n(f.set))&&(u.set=a),(a=n(f.init))&&o.unshift(a)}else(a=n(f))&&("field"===l?o.unshift(a):u[d]=a)}c&&Object.defineProperty(c,s.name,u),h=!0}function c(e,t,i){for(var s=arguments.length>2,o=0;o0&&o[o.length-1])||6!==a[0]&&2!==a[0])){r=0;continue}if(3===a[0]&&(!o||a[1]>o[0]&&a[1]=e.length&&(e=void 0),{value:e&&e[s++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")}function w(e,t){var i="function"==typeof Symbol&&e[Symbol.iterator];if(!i)return e;var s,o,r=i.call(e),n=[];try{for(;(void 0===t||t-- >0)&&!(s=r.next()).done;)n.push(s.value)}catch(e){o={error:e}}finally{try{s&&!s.done&&(i=r.return)&&i.call(r)}finally{if(o)throw o.error}}return n}function b(){for(var e=[],t=0;t1||a(e,t)})},t&&(s[e]=t(s[e])))}function a(e,t){try{(i=o[e](t)).value instanceof x?Promise.resolve(i.value.v).then(l,d):c(r[0][2],i)}catch(e){c(r[0][3],e)}var i}function l(e){a("next",e)}function d(e){a("throw",e)}function c(e,t){e(t),r.shift(),r.length&&a(r[0][0],r[0][1])}}function R(e){var t,i;return t={},s("next"),s("throw",function(e){throw e}),s("return"),t[Symbol.iterator]=function(){return this},t;function s(s,o){t[s]=e[s]?function(t){return(i=!i)?{value:x(e[s](t)),done:!1}:o?o(t):t}:o}}function P(e){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var t,i=e[Symbol.asyncIterator];return i?i.call(e):(e=v(e),t={},s("next"),s("throw"),s("return"),t[Symbol.asyncIterator]=function(){return this},t);function s(i){t[i]=e[i]&&function(t){return new Promise(function(s,o){(function(e,t,i,s){Promise.resolve(s).then(function(t){e({value:t,done:i})},t)})(s,o,(t=e[i](t)).done,t.value)})}}}function M(e,t){return Object.defineProperty?Object.defineProperty(e,"raw",{value:t}):e.raw=t,e}var E=Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t},A=function(e){return A=Object.getOwnPropertyNames||function(e){var t=[];for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[t.length]=i);return t},A(e)};function T(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var i=A(e),s=0;s