UNPKG

@ag-grid-enterprise/column-tool-panel

Version:

Advanced Data Grid / Data Table supporting Javascript / Typescript / React / Angular / Vue

21 lines (20 loc) 42.3 kB
import{ModuleNames as R,_defineModule as V}from"@ag-grid-community/core";import{AgMenuItemRenderer as k,EnterpriseCoreModule as O}from"@ag-grid-enterprise/core";import{RowGroupingModule as N}from"@ag-grid-enterprise/row-grouping";import{SideBarModule as B}from"@ag-grid-enterprise/side-bar";import{Component as _,ModuleNames as H,_clearElement as U,_last as W}from"@ag-grid-community/core";import{PivotDropZonePanel as f,RowGroupDropZonePanel as S,ValuesDropZonePanel as y}from"@ag-grid-enterprise/row-grouping";import{Component as Z,PositionableFeature as $,RefPlaceholder as P}from"@ag-grid-community/core";import{AgCheckboxSelector as K,AgInputTextFieldSelector as z,Component as Y,KeyCode as b,RefPlaceholder as p,_createIconNoSpan as m,_debounce as j,_setDisplayed as c}from"@ag-grid-community/core";var L=300,q=class extends Y{constructor(){super(`<div class="ag-column-select-header" role="presentation"> <div data-ref="eExpand" class="ag-column-select-header-icon"></div> <ag-checkbox data-ref="eSelect" class="ag-column-select-header-checkbox"></ag-checkbox> <ag-input-text-field class="ag-column-select-header-filter-wrapper" data-ref="eFilterTextField"></ag-input-text-field> </div>`,[K,z]),this.eExpand=p,this.eSelect=p,this.eFilterTextField=p}wireBeans(e){this.columnModel=e.columnModel}postConstruct(){this.createExpandIcons(),this.addManagedListeners(this.eExpand,{click:this.onExpandClicked.bind(this),keydown:t=>{t.key===b.SPACE&&(t.preventDefault(),this.onExpandClicked())}}),this.addManagedElementListeners(this.eSelect.getInputElement(),{click:this.onSelectClicked.bind(this)}),this.addManagedPropertyListener("functionsReadOnly",()=>this.onFunctionsReadOnlyPropChanged()),this.eFilterTextField.setAutoComplete(!1).onValueChange(()=>this.onFilterTextChanged()),this.addManagedElementListeners(this.eFilterTextField.getInputElement(),{keydown:this.onMiniFilterKeyDown.bind(this)}),this.addManagedEventListeners({newColumnsLoaded:this.showOrHideOptions.bind(this)});const e=this.localeService.getLocaleTextFunc();this.eSelect.setInputAriaLabel(e("ariaColumnSelectAll","Toggle All Columns Visibility")),this.eFilterTextField.setInputAriaLabel(e("ariaFilterColumnsInput","Filter Columns Input")),this.activateTabIndex([this.eExpand])}onFunctionsReadOnlyPropChanged(){const e=this.gos.get("functionsReadOnly");this.eSelect.setReadOnly(e),this.eSelect.addOrRemoveCssClass("ag-column-select-column-readonly",e)}init(e){this.params=e;const t=this.gos.get("functionsReadOnly");this.eSelect.setReadOnly(t),this.eSelect.addOrRemoveCssClass("ag-column-select-column-readonly",t),this.columnModel.isReady()&&this.showOrHideOptions()}createExpandIcons(){this.eExpand.appendChild(this.eExpandChecked=m("columnSelectOpen",this.gos)),this.eExpand.appendChild(this.eExpandUnchecked=m("columnSelectClosed",this.gos)),this.eExpand.appendChild(this.eExpandIndeterminate=m("columnSelectIndeterminate",this.gos)),this.setExpandState(0)}showOrHideOptions(){const e=!this.params.suppressColumnFilter,t=!this.params.suppressColumnSelectAll,s=!this.params.suppressColumnExpandAll,i=this.columnModel.isProvidedColGroupsPresent(),o=this.localeService.getLocaleTextFunc();this.eFilterTextField.setInputPlaceholder(o("searchOoo","Search...")),c(this.eFilterTextField.getGui(),e),c(this.eSelect.getGui(),t),c(this.eExpand,s&&i)}onFilterTextChanged(){this.onFilterTextChangedDebounced||(this.onFilterTextChangedDebounced=j(()=>{const e=this.eFilterTextField.getValue();this.dispatchLocalEvent({type:"filterChanged",filterText:e})},L)),this.onFilterTextChangedDebounced()}onMiniFilterKeyDown(e){e.key===b.ENTER&&setTimeout(()=>this.onSelectClicked(),L)}onSelectClicked(){this.dispatchLocalEvent({type:this.selectState?"unselectAll":"selectAll"})}onExpandClicked(){this.dispatchLocalEvent({type:this.expandState===0?"collapseAll":"expandAll"})}setExpandState(e){this.expandState=e,c(this.eExpandChecked,this.expandState===0),c(this.eExpandUnchecked,this.expandState===1),c(this.eExpandIndeterminate,this.expandState===2)}setSelectionState(e){this.selectState=e,this.eSelect.setValue(this.selectState)}},J={selector:"AG-PRIMARY-COLS-HEADER",component:q};import{Component as Q,_exists as x,_includes as X,_setAriaLabel as ee,_setAriaLevel as te,_warnOnce as se,isProvidedColumnGroup as ie}from"@ag-grid-community/core";import{VirtualList as oe}from"@ag-grid-enterprise/core";import{LocalEventService as ne}from"@ag-grid-community/core";var M=class{constructor(e,t,s,i=!1,o){this.localEventService=new ne,this.displayName=e,this.dept=s,this.group=i,i?(this.columnGroup=t,this.expanded=o,this.children=[]):this.column=t}isGroup(){return this.group}getDisplayName(){return this.displayName}getColumnGroup(){return this.columnGroup}getColumn(){return this.column}getDept(){return this.dept}isExpanded(){return!!this.expanded}getChildren(){return this.children}isPassesFilter(){return this.passesFilter}setExpanded(e){e!==this.expanded&&(this.expanded=e,this.localEventService.dispatchEvent({type:"expandedChanged"}))}setPassesFilter(e){this.passesFilter=e}addEventListener(e,t){this.localEventService.addEventListener(e,t)}removeEventListener(e,t){this.localEventService.removeEventListener(e,t)}};import{BeanStub as le,DragSourceType as ae,isProvidedColumnGroup as re}from"@ag-grid-community/core";import{VirtualListDragFeature as de}from"@ag-grid-enterprise/core";import{AgCheckboxSelector as ce,Component as ue,DragSourceType as he,KeyCode as g,RefPlaceholder as u,TouchListener as pe,_createIcon as E,_createIconNoSpan as me,_getToolPanelClassesFromColDef as ge,_setAriaDescribedBy as Ce,_setAriaExpanded as ve,_setAriaLabel as fe,_setDisplayed as C}from"@ag-grid-community/core";import{Component as Se,_createIconNoSpan as D,isColumn as ye,isProvidedColumnGroup as Pe}from"@ag-grid-community/core";import{AgMenuList as be}from"@ag-grid-enterprise/core";var A=class extends Se{constructor(e,t,s){super('<div class="ag-menu"></div>'),this.column=e,this.mouseEvent=t,this.parentEl=s,this.displayName=null}wireBeans(e){this.columnModel=e.columnModel,this.columnNameService=e.columnNameService,this.funcColsService=e.funcColsService,this.popupService=e.popupService,this.focusService=e.focusService}postConstruct(){if(this.initializeProperties(this.column),this.buildMenuItemMap(),ye(this.column)?this.displayName=this.columnNameService.getDisplayNameForColumn(this.column,"columnToolPanel"):this.displayName=this.columnNameService.getDisplayNameForProvidedColumnGroup(null,this.column,"columnToolPanel"),this.isActive()){this.mouseEvent.preventDefault();const e=this.getMappedMenuItems();if(e.length===0)return;this.displayContextMenu(e)}}initializeProperties(e){Pe(e)?this.columns=e.getLeafColumns():this.columns=[e],this.allowGrouping=this.columns.some(t=>t.isPrimary()&&t.isAllowRowGroup()),this.allowValues=this.columns.some(t=>t.isPrimary()&&t.isAllowValue()),this.allowPivoting=this.columnModel.isPivotMode()&&this.columns.some(t=>t.isPrimary()&&t.isAllowPivot())}buildMenuItemMap(){const e=this.localeService.getLocaleTextFunc();this.menuItemMap=new Map,this.menuItemMap.set("rowGroup",{allowedFunction:t=>t.isPrimary()&&t.isAllowRowGroup()&&!this.columnModel.isColGroupLocked(t),activeFunction:t=>t.isRowGroupActive(),activateLabel:()=>`${e("groupBy","Group by")} ${this.displayName}`,deactivateLabel:()=>`${e("ungroupBy","Un-Group by")} ${this.displayName}`,activateFunction:()=>{const t=this.funcColsService.getRowGroupColumns();this.funcColsService.setRowGroupColumns(this.addColumnsToList(t),"toolPanelUi")},deActivateFunction:()=>{const t=this.funcColsService.getRowGroupColumns();this.funcColsService.setRowGroupColumns(this.removeColumnsFromList(t),"toolPanelUi")},addIcon:"menuAddRowGroup",removeIcon:"menuRemoveRowGroup"}),this.menuItemMap.set("value",{allowedFunction:t=>t.isPrimary()&&t.isAllowValue(),activeFunction:t=>t.isValueActive(),activateLabel:()=>e("addToValues",`Add ${this.displayName} to values`,[this.displayName]),deactivateLabel:()=>e("removeFromValues",`Remove ${this.displayName} from values`,[this.displayName]),activateFunction:()=>{const t=this.funcColsService.getValueColumns();this.funcColsService.setValueColumns(this.addColumnsToList(t),"toolPanelUi")},deActivateFunction:()=>{const t=this.funcColsService.getValueColumns();this.funcColsService.setValueColumns(this.removeColumnsFromList(t),"toolPanelUi")},addIcon:"valuePanel",removeIcon:"valuePanel"}),this.menuItemMap.set("pivot",{allowedFunction:t=>this.columnModel.isPivotMode()&&t.isPrimary()&&t.isAllowPivot(),activeFunction:t=>t.isPivotActive(),activateLabel:()=>e("addToLabels",`Add ${this.displayName} to labels`,[this.displayName]),deactivateLabel:()=>e("removeFromLabels",`Remove ${this.displayName} from labels`,[this.displayName]),activateFunction:()=>{const t=this.funcColsService.getPivotColumns();this.funcColsService.setPivotColumns(this.addColumnsToList(t),"toolPanelUi")},deActivateFunction:()=>{const t=this.funcColsService.getPivotColumns();this.funcColsService.setPivotColumns(this.removeColumnsFromList(t),"toolPanelUi")},addIcon:"pivotPanel",removeIcon:"pivotPanel"})}addColumnsToList(e){return[...e].concat(this.columns.filter(t=>e.indexOf(t)===-1))}removeColumnsFromList(e){return e.filter(t=>this.columns.indexOf(t)===-1)}displayContextMenu(e){const t=this.getGui(),s=this.createBean(new be),i=this.localeService.getLocaleTextFunc();let o=()=>{};t.appendChild(s.getGui()),s.addMenuItems(e),s.addManagedListeners(s,{closeMenu:()=>{this.parentEl.focus(),o()}});const a=this.popupService.addPopup({modal:!0,eChild:t,closeOnEsc:!0,afterGuiAttached:()=>this.focusService.focusInto(s.getGui()),ariaLabel:i("ariaLabelContextMenu","Context Menu"),closedCallback:n=>{n instanceof KeyboardEvent&&this.parentEl.focus(),this.destroyBean(s)}});a&&(o=a.hideFunc),this.popupService.positionPopupUnderMouseEvent({type:"columnContextMenu",mouseEvent:this.mouseEvent,ePopup:t})}isActive(){return this.allowGrouping||this.allowValues||this.allowPivoting}getMappedMenuItems(){const e=[];for(const t of this.menuItemMap.values()){const s=this.columns.some(o=>t.allowedFunction(o)&&!t.activeFunction(o)),i=this.columns.some(o=>t.allowedFunction(o)&&t.activeFunction(o));s&&e.push({name:t.activateLabel(this.displayName),icon:D(t.addIcon,this.gos,null),action:()=>t.activateFunction()}),i&&e.push({name:t.deactivateLabel(this.displayName),icon:D(t.removeIcon,this.gos,null),action:()=>t.deActivateFunction()})}return e}},G=class extends ue{constructor(e,t,s,i){super(),this.modelItem=e,this.allowDragging=t,this.eventType=s,this.focusWrapper=i,this.cbSelect=u,this.eLabel=u,this.eGroupOpenedIcon=u,this.eGroupClosedIcon=u,this.eColumnGroupIcons=u,this.processingColumnStateChange=!1,this.modelItem=e,this.columnGroup=e.getColumnGroup(),this.columnDept=e.getDept(),this.displayName=e.getDisplayName(),this.allowDragging=t}wireBeans(e){this.columnModel=e.columnModel,this.dragAndDropService=e.dragAndDropService,this.modelItemUtils=e.modelItemUtils}postConstruct(){this.setTemplate(`<div class="ag-column-select-column-group"> <span class="ag-column-group-icons" data-ref="eColumnGroupIcons" > <span class="ag-column-group-closed-icon" data-ref="eGroupClosedIcon"></span> <span class="ag-column-group-opened-icon" data-ref="eGroupOpenedIcon"></span> </span> <ag-checkbox data-ref="cbSelect" class="ag-column-select-checkbox"></ag-checkbox> <span class="ag-column-select-column-label" data-ref="eLabel"></span> </div>`,[ce]),this.eDragHandle=me("columnDrag",this.gos),this.eDragHandle.classList.add("ag-drag-handle","ag-column-select-column-group-drag-handle");const e=this.cbSelect.getGui(),t=this.cbSelect.getInputElement();e.insertAdjacentElement("afterend",this.eDragHandle),t.setAttribute("tabindex","-1"),this.eLabel.innerHTML=this.displayName?this.displayName:"",this.setupExpandContract(),this.addCssClass("ag-column-select-indent-"+this.columnDept),this.getGui().style.setProperty("--ag-indentation-level",String(this.columnDept)),this.addManagedEventListeners({columnPivotModeChanged:this.onColumnStateChanged.bind(this)}),this.addManagedElementListeners(this.eLabel,{click:this.onLabelClicked.bind(this)}),this.addManagedListeners(this.cbSelect,{fieldValueChanged:this.onCheckboxChanged.bind(this)}),this.addManagedListeners(this.modelItem,{expandedChanged:this.onExpandChanged.bind(this)}),this.addManagedListeners(this.focusWrapper,{keydown:this.handleKeyDown.bind(this),contextmenu:this.onContextMenu.bind(this)}),this.setOpenClosedIcons(),this.setupDragging(),this.onColumnStateChanged(),this.addVisibilityListenersToAllChildren(),this.refreshAriaExpanded(),this.refreshAriaLabel(),this.setupTooltip(),ge(this.columnGroup.getColGroupDef(),this.gos,null,this.columnGroup).forEach(i=>this.addOrRemoveCssClass(i,!0))}getColumns(){return this.columnGroup.getLeafColumns()}setupTooltip(){const e=this.columnGroup.getColGroupDef();if(!e)return;const t=this.gos.get("tooltipShowMode")==="whenTruncated";let s;t&&(s=()=>this.eLabel.scrollWidth>this.eLabel.clientWidth);const i=()=>{const o=e.headerTooltip;this.setTooltip({newTooltipText:o,location:"columnToolPanelColumnGroup",shouldDisplayTooltip:s})};i(),this.addManagedEventListeners({newColumnsLoaded:i})}getTooltipParams(){const e=super.getTooltipParams();return e.location="columnToolPanelColumnGroup",e}handleKeyDown(e){switch(e.key){case g.LEFT:e.preventDefault(),this.modelItem.setExpanded(!1);break;case g.RIGHT:e.preventDefault(),this.modelItem.setExpanded(!0);break;case g.SPACE:e.preventDefault(),this.isSelectable()&&this.onSelectAllChanged(!this.isSelected());break}}onContextMenu(e){const{columnGroup:t,gos:s}=this;if(s.get("functionsReadOnly"))return;const i=this.createBean(new A(t,e,this.focusWrapper));this.addDestroyFunc(()=>{i.isAlive()&&this.destroyBean(i)})}addVisibilityListenersToAllChildren(){const e=this.onColumnStateChanged.bind(this);this.columnGroup.getLeafColumns().forEach(t=>{this.addManagedListeners(t,{visibleChanged:e,columnValueChanged:e,columnPivotChanged:e,columnRowGroupChanged:e})})}setupDragging(){if(!this.allowDragging){C(this.eDragHandle,!1);return}let e=!this.gos.get("suppressDragLeaveHidesColumns");const t={type:he.ToolPanel,eElement:this.eDragHandle,dragItemName:this.displayName,getDefaultIconName:()=>e?"hide":"notAllowed",getDragItem:()=>this.createDragItem(),onDragStarted:()=>{e=!this.gos.get("suppressDragLeaveHidesColumns"),this.eventService.dispatchEvent({type:"columnPanelItemDragStart",column:this.columnGroup})},onDragStopped:()=>{this.eventService.dispatchEvent({type:"columnPanelItemDragEnd"})},onGridEnter:s=>{e&&this.modelItemUtils.updateColumns({columns:this.columnGroup.getLeafColumns(),visibleState:s?.visibleState,pivotState:s?.pivotState,eventType:this.eventType})},onGridExit:()=>{e&&this.onChangeCommon(!1)}};this.dragAndDropService.addDragSource(t,!0),this.addDestroyFunc(()=>this.dragAndDropService.removeDragSource(t))}createDragItem(){const e=this.columnGroup.getLeafColumns(),t={},s={};return e.forEach(i=>{const o=i.getId();t[o]=i.isVisible(),s[o]=this.modelItemUtils.createPivotState(i)}),{columns:e,visibleState:t,pivotState:s}}setupExpandContract(){this.eGroupClosedIcon.appendChild(E("columnSelectClosed",this.gos,null)),this.eGroupOpenedIcon.appendChild(E("columnSelectOpen",this.gos,null));const e=this.onExpandOrContractClicked.bind(this);this.addManagedElementListeners(this.eGroupClosedIcon,{click:e}),this.addManagedElementListeners(this.eGroupOpenedIcon,{click:e});const t=new pe(this.eColumnGroupIcons,!0);this.addManagedListeners(t,{tap:e}),this.addDestroyFunc(t.destroy.bind(t))}onLabelClicked(){const e=!this.cbSelect.getValue();this.onChangeCommon(e)}onCheckboxChanged(e){this.onChangeCommon(e.selected)}getVisibleLeafColumns(){const e=[],t=s=>{s.forEach(i=>{i.isPassesFilter()&&(i.isGroup()?t(i.getChildren()):e.push(i.getColumn()))})};return t(this.modelItem.getChildren()),e}onChangeCommon(e){this.refreshAriaLabel(),!this.processingColumnStateChange&&this.modelItemUtils.selectAllChildren(this.modelItem.getChildren(),e,this.eventType)}refreshAriaLabel(){const e=this.localeService.getLocaleTextFunc(),t=e("ariaColumnGroup","Column Group"),s=this.cbSelect.getValue(),i=s===void 0?e("ariaIndeterminate","indeterminate"):s?e("ariaVisible","visible"):e("ariaHidden","hidden"),o=e("ariaToggleVisibility","Press SPACE to toggle visibility");fe(this.focusWrapper,`${this.displayName} ${t}`),this.cbSelect.setInputAriaLabel(`${o} (${i})`),Ce(this.focusWrapper,this.cbSelect.getInputElement().id)}onColumnStateChanged(){const e=this.workOutSelectedValue(),t=this.workOutReadOnlyValue();this.processingColumnStateChange=!0,this.cbSelect.setValue(e),this.cbSelect.setReadOnly(t),this.addOrRemoveCssClass("ag-column-select-column-group-readonly",t),this.processingColumnStateChange=!1}workOutSelectedValue(){const e=this.columnModel.isPivotMode(),t=this.getVisibleLeafColumns();let s=0,i=0;if(t.forEach(o=>{!e&&o.getColDef().lockVisible||(this.isColumnChecked(o,e)?s++:i++)}),!(s>0&&i>0))return s>0}workOutReadOnlyValue(){const e=this.columnModel.isPivotMode();let t=0;return this.columnGroup.getLeafColumns().forEach(s=>{e?s.isAnyFunctionAllowed()&&t++:s.getColDef().lockVisible||t++}),t===0}isColumnChecked(e,t){if(t){const s=e.isPivotActive(),i=e.isRowGroupActive(),o=e.isValueActive();return s||i||o}return e.isVisible()}onExpandOrContractClicked(){const e=this.modelItem.isExpanded();this.modelItem.setExpanded(!e)}onExpandChanged(){this.setOpenClosedIcons(),this.refreshAriaExpanded()}setOpenClosedIcons(){const e=this.modelItem.isExpanded();C(this.eGroupClosedIcon,!e),C(this.eGroupOpenedIcon,e)}refreshAriaExpanded(){ve(this.focusWrapper,this.modelItem.isExpanded())}getDisplayName(){return this.displayName}onSelectAllChanged(e){const t=this.cbSelect.getValue();!this.cbSelect.isReadOnly()&&(e&&!t||!e&&t)&&this.cbSelect.toggle()}isSelected(){return this.cbSelect.getValue()}isSelectable(){return!this.cbSelect.isReadOnly()}setSelected(e){this.cbSelect.setValue(e,!0)}},Le=class extends le{constructor(e,t){super(),this.comp=e,this.virtualList=t}wireBeans(e){this.columnMoveService=e.columnMoveService,this.columnModel=e.columnModel}postConstruct(){this.createManagedBean(new de(this.comp,this.virtualList,{dragSourceType:ae.ToolPanel,listItemDragStartEvent:"columnPanelItemDragStart",listItemDragEndEvent:"columnPanelItemDragEnd",eventSource:this.eventService,getCurrentDragValue:e=>this.getCurrentDragValue(e),isMoveBlocked:e=>this.isMoveBlocked(e),getNumRows:e=>e.getDisplayedColsList().length,moveItem:(e,t)=>this.moveItem(this.getCurrentColumnsBeingMoved(e),t)}))}getCurrentDragValue(e){return e.column}getCurrentColumnsBeingMoved(e){return re(e)?e.getLeafColumns():e?[e]:[]}isMoveBlocked(e){return this.gos.get("suppressMovableColumns")?!0:!!this.getCurrentColumnsBeingMoved(e).find(o=>{const a=o.getColDef();return!!a.suppressMovable||!!a.lockPosition})}moveItem(e,t){if(!t)return;const{component:s}=t;let i=null,o=t.position==="top";if(s instanceof G?(i=s.getColumns()[0],o=!0):s&&(i=s.getColumn()),!i)return;const a=this.getMoveTargetIndex({currentColumns:e,lastHoveredColumn:i,isBefore:o});a!=null&&this.columnMoveService.moveColumns(e,a,"toolPanelUi")}getMoveTargetIndex(e){const{currentColumns:t,lastHoveredColumn:s,isBefore:i}=e;if(!s||!t)return null;const o=this.columnModel.getCols().indexOf(s),a=i?o:o+1,n=this.getMoveDiff(t,a);return a-n}getMoveDiff(e,t){const s=this.columnModel.getCols();if(!e)return 0;const i=e[0],o=e.length;return s.indexOf(i)<t?o:0}};import{AgCheckboxSelector as xe,Component as Me,DragSourceType as Ee,KeyCode as De,RefPlaceholder as I,_createIconNoSpan as Ae,_escapeString as Ge,_getToolPanelClassesFromColDef as Ie,_setAriaDescribedBy as we,_setAriaLabel as Fe,_setDisplayed as Te,_warnOnce as Re}from"@ag-grid-community/core";var Ve=class extends Me{constructor(e,t,s,i){super(),this.allowDragging=t,this.groupsExist=s,this.focusWrapper=i,this.eLabel=I,this.cbSelect=I,this.processingColumnStateChange=!1,this.column=e.getColumn(),this.columnDept=e.getDept(),this.displayName=e.getDisplayName()}wireBeans(e){this.columnModel=e.columnModel,this.dragAndDropService=e.dragAndDropService,this.modelItemUtils=e.modelItemUtils}postConstruct(){this.setTemplate(`<div class="ag-column-select-column"> <ag-checkbox data-ref="cbSelect" class="ag-column-select-checkbox"></ag-checkbox> <span class="ag-column-select-column-label" data-ref="eLabel"></span> </div>`,[xe]),this.eDragHandle=Ae("columnDrag",this.gos),this.eDragHandle.classList.add("ag-drag-handle","ag-column-select-column-drag-handle");const e=this.cbSelect.getGui(),t=this.cbSelect.getInputElement();e.insertAdjacentElement("afterend",this.eDragHandle),t.setAttribute("tabindex","-1");const s=Ge(this.displayName);this.eLabel.innerHTML=s;const i=this.columnDept;this.groupsExist&&this.addCssClass("ag-column-select-add-group-indent"),this.addCssClass(`ag-column-select-indent-${i}`),this.getGui().style.setProperty("--ag-indentation-level",String(i)),this.setupDragging();const o=this.onColumnStateChanged.bind(this);this.addManagedEventListeners({columnPivotModeChanged:o}),this.addManagedListeners(this.column,{columnValueChanged:o,columnPivotChanged:o,columnRowGroupChanged:o,visibleChanged:o}),this.addManagedListeners(this.focusWrapper,{keydown:this.handleKeyDown.bind(this),contextmenu:this.onContextMenu.bind(this)}),this.addManagedPropertyListener("functionsReadOnly",this.onColumnStateChanged.bind(this)),this.addManagedListeners(this.cbSelect,{fieldValueChanged:this.onCheckboxChanged.bind(this)}),this.addManagedElementListeners(this.eLabel,{click:this.onLabelClicked.bind(this)}),this.onColumnStateChanged(),this.refreshAriaLabel(),this.setupTooltip(),Ie(this.column.getColDef(),this.gos,this.column,null).forEach(n=>this.addOrRemoveCssClass(n,!0))}getColumn(){return this.column}setupTooltip(){const e=this.gos.get("tooltipShowMode")==="whenTruncated";let t;e&&(t=()=>this.eLabel.scrollWidth>this.eLabel.clientWidth);const s=()=>{const i=this.column.getColDef().headerTooltip;this.setTooltip({newTooltipText:i,location:"columnToolPanelColumn",shouldDisplayTooltip:t})};s(),this.addManagedEventListeners({newColumnsLoaded:s})}getTooltipParams(){const e=super.getTooltipParams();return e.location="columnToolPanelColumn",e.colDef=this.column.getColDef(),e}onContextMenu(e){const{column:t,gos:s}=this;if(s.get("functionsReadOnly"))return;const i=this.createBean(new A(t,e,this.focusWrapper));this.addDestroyFunc(()=>{i.isAlive()&&this.destroyBean(i)})}handleKeyDown(e){e.key===De.SPACE&&(e.preventDefault(),this.isSelectable()&&this.onSelectAllChanged(!this.isSelected()))}onLabelClicked(){if(this.gos.get("functionsReadOnly"))return;const e=!this.cbSelect.getValue();this.onChangeCommon(e)}onCheckboxChanged(e){this.onChangeCommon(e.selected)}onChangeCommon(e){this.cbSelect.isReadOnly()||(this.refreshAriaLabel(),!this.processingColumnStateChange&&this.modelItemUtils.setColumn(this.column,e,"toolPanelUi"))}refreshAriaLabel(){const e=this.localeService.getLocaleTextFunc(),t=e("ariaColumn","Column"),s=this.cbSelect.getValue()?e("ariaVisible","visible"):e("ariaHidden","hidden"),i=e("ariaToggleVisibility","Press SPACE to toggle visibility");Fe(this.focusWrapper,`${this.displayName} ${t}`),this.cbSelect.setInputAriaLabel(`${i} (${s})`),we(this.focusWrapper,this.cbSelect.getInputElement().id)}setupDragging(){if(!this.allowDragging){Te(this.eDragHandle,!1);return}let e=!this.gos.get("suppressDragLeaveHidesColumns");const t={type:Ee.ToolPanel,eElement:this.eDragHandle,dragItemName:this.displayName,getDefaultIconName:()=>e?"hide":"notAllowed",getDragItem:()=>this.createDragItem(),onDragStarted:()=>{e=!this.gos.get("suppressDragLeaveHidesColumns"),this.eventService.dispatchEvent({type:"columnPanelItemDragStart",column:this.column})},onDragStopped:()=>{this.eventService.dispatchEvent({type:"columnPanelItemDragEnd"})},onGridEnter:s=>{e&&this.modelItemUtils.updateColumns({columns:[this.column],visibleState:s?.visibleState,pivotState:s?.pivotState,eventType:"toolPanelUi"})},onGridExit:()=>{e&&this.onChangeCommon(!1)}};this.dragAndDropService.addDragSource(t,!0),this.addDestroyFunc(()=>this.dragAndDropService.removeDragSource(t))}createDragItem(){const e=this.column.getColId(),t={[e]:this.column.isVisible()},s={[e]:this.modelItemUtils.createPivotState(this.column)};return{columns:[this.column],visibleState:t,pivotState:s}}onColumnStateChanged(){this.processingColumnStateChange=!0;const e=this.columnModel.isPivotMode();if(e){const i=this.column.isAnyFunctionActive();this.cbSelect.setValue(i)}else this.cbSelect.setValue(this.column.isVisible());let t=!0,s=!0;if(e){const i=this.gos.get("functionsReadOnly"),o=!this.column.isAnyFunctionAllowed();t=!i&&!o,s=t}else{const{enableRowGroup:i,enableValue:o,lockPosition:a,suppressMovable:n,lockVisible:l}=this.column.getColDef(),r=!!i||!!o,d=!!a||!!n;t=!l,s=r||!d}this.cbSelect.setReadOnly(!t),this.eDragHandle.classList.toggle("ag-column-select-column-readonly",!s),this.addOrRemoveCssClass("ag-column-select-column-readonly",!s&&!t),this.cbSelect.setPassive(!1),this.processingColumnStateChange=!1}getDisplayName(){return this.displayName}onSelectAllChanged(e){e!==this.cbSelect.getValue()&&(this.cbSelect.isReadOnly()||this.cbSelect.toggle())}isSelected(){return this.cbSelect.getValue()}isSelectable(){return!this.cbSelect.isReadOnly()}isExpandable(){return!1}setExpanded(e){Re("can not expand a column item that does not represent a column group header")}},ke=class{constructor(e){this.items=e}getRowCount(){return this.items.length}getRow(e){return this.items[e]}},Oe="ag-column-select-list",Ne=class extends Q{constructor(){super(`<div class="${Oe}" role="presentation"></div>`),this.destroyColumnItemFuncs=[],this.hasLoadedInitialState=!1,this.isInitialState=!1}wireBeans(e){this.columnModel=e.columnModel,this.columnNameService=e.columnNameService,this.colDefService=e.toolPanelColDefService,this.modelItemUtils=e.modelItemUtils}destroy(){this.destroyColumnTree(),super.destroy()}destroyColumnTree(){this.allColsTree=[],this.destroyColumnItemFuncs.forEach(e=>e()),this.destroyColumnItemFuncs=[]}init(e,t,s){this.params=e,this.allowDragging=t,this.eventType=s,this.params.suppressSyncLayoutWithGrid||this.addManagedEventListeners({columnMoved:this.onColumnsChanged.bind(this)}),this.addManagedEventListeners({newColumnsLoaded:this.onColumnsChanged.bind(this)});const i=this.fireSelectionChangedEvent.bind(this);this.addManagedEventListeners({columnPivotChanged:i,columnPivotModeChanged:i,columnRowGroupChanged:i,columnValueChanged:i,columnVisible:i,newColumnsLoaded:i}),this.expandGroupsByDefault=!this.params.contractColumnSelection,this.virtualList=this.createManagedBean(new oe({cssIdentifier:"column-select",ariaRole:"tree"})),this.appendChild(this.virtualList.getGui()),this.virtualList.setComponentCreator((o,a)=>(te(a,o.getDept()+1),this.createComponentFromItem(o,a))),this.columnModel.isReady()&&this.onColumnsChanged(),!this.params.suppressColumnMove&&this.createManagedBean(new Le(this,this.virtualList))}createComponentFromItem(e,t){if(e.isGroup()){const i=new G(e,this.allowDragging,this.eventType,t);return this.createBean(i),i}const s=new Ve(e,this.allowDragging,this.groupsExist,t);return this.createBean(s),s}onColumnsChanged(){this.hasLoadedInitialState||(this.hasLoadedInitialState=!0,this.isInitialState=!!this.params.initialState);const e=this.getExpandedStates(),t=this.columnModel.isPivotMode();!this.params.suppressSyncLayoutWithGrid&&!t?this.buildTreeFromWhatGridIsDisplaying():this.buildTreeFromProvidedColumnDefs(),this.setExpandedStates(e),this.markFilteredColumns(),this.flattenAndFilterModel(),this.isInitialState=!1}getDisplayedColsList(){return this.displayedColsList}getExpandedStates(){const e={};if(this.isInitialState){const{expandedGroupIds:t}=this.params.initialState;return t.forEach(s=>{e[s]=!0}),e}return this.allColsTree?(this.forEachItem(t=>{if(!t.isGroup())return;const s=t.getColumnGroup();s&&(e[s.getId()]=t.isExpanded())}),e):{}}setExpandedStates(e){if(!this.allColsTree)return;const{isInitialState:t}=this;this.forEachItem(s=>{if(!s.isGroup())return;const i=s.getColumnGroup();if(i){const o=e[i.getId()];(o!=null||t)&&s.setExpanded(!!o)}})}buildTreeFromWhatGridIsDisplaying(){this.colDefService.syncLayoutWithGrid(this.setColumnLayout.bind(this))}setColumnLayout(e){const t=this.colDefService.createColumnTree(e);this.buildListModel(t),this.groupsExist=e.some(s=>s&&typeof s.children<"u"),this.markFilteredColumns(),this.flattenAndFilterModel()}buildTreeFromProvidedColumnDefs(){this.buildListModel(this.columnModel.getColDefColTree()),this.groupsExist=this.columnModel.isProvidedColGroupsPresent()}buildListModel(e){const t=this.onColumnExpanded.bind(this),s=n=>{n.addEventListener("expandedChanged",t);const l=n.removeEventListener.bind(n,"expandedChanged",t);this.destroyColumnItemFuncs.push(l)},i=(n,l,r)=>{n.forEach(d=>{ie(d)?o(d,l,r):a(d,l,r)})},o=(n,l,r)=>{const d=n.getColGroupDef();if(d&&d.suppressColumnsToolPanel)return;if(n.isPadding()){i(n.getChildren(),l,r);return}const T=this.columnNameService.getDisplayNameForProvidedColumnGroup(null,n,"columnToolPanel"),h=new M(T,n,l,!0,this.expandGroupsByDefault);r.push(h),s(h),i(n.getChildren(),l+1,h.getChildren())},a=(n,l,r)=>{if(n.getColDef()&&n.getColDef().suppressColumnsToolPanel)return;const v=this.columnNameService.getDisplayNameForColumn(n,"columnToolPanel");r.push(new M(v,n,l))};this.destroyColumnTree(),i(e,0,this.allColsTree)}onColumnExpanded(){this.flattenAndFilterModel()}flattenAndFilterModel(){this.displayedColsList=[];const e=s=>{s.isPassesFilter()&&(this.displayedColsList.push(s),s.isGroup()&&s.isExpanded()&&s.getChildren().forEach(e))};this.allColsTree.forEach(e),this.virtualList.setModel(new ke(this.displayedColsList));const t=this.virtualList.getLastFocusedRow();this.virtualList.refresh(),t!=null&&this.focusRowIfAlive(t),this.notifyListeners(),this.refreshAriaLabel()}refreshAriaLabel(){const e=this.localeService.getLocaleTextFunc(),t=e("ariaColumnPanelList","Column List"),s=e("columns","Columns"),i=this.displayedColsList.length;ee(this.virtualList.getAriaElement(),`${t} ${i} ${s}`)}focusRowIfAlive(e){window.setTimeout(()=>{this.isAlive()&&this.virtualList.focusRow(e)},0)}forEachItem(e){const t=s=>{s.forEach(i=>{e(i),i.isGroup()&&t(i.getChildren())})};this.allColsTree&&t(this.allColsTree)}doSetExpandedAll(e){this.forEachItem(t=>{t.isGroup()&&t.setExpanded(e)})}setGroupsExpanded(e,t){if(!t){this.doSetExpandedAll(e);return}const s=[];this.forEachItem(o=>{if(!o.isGroup())return;const a=o.getColumnGroup().getId();t.indexOf(a)>=0&&(o.setExpanded(e),s.push(a))});const i=t.filter(o=>!X(s,o));i.length>0&&se("unable to find group(s) for supplied groupIds:",i)}getExpandState(){let e=0,t=0;return this.forEachItem(s=>{s.isGroup()&&(s.isExpanded()?e++:t++)}),e>0&&t>0?2:t>0?1:0}doSetSelectedAll(e){this.modelItemUtils.selectAllChildren(this.allColsTree,e,this.eventType)}getSelectionState(){let e=0,t=0;const s=this.columnModel.isPivotMode();if(this.forEachItem(i=>{if(i.isGroup()||!i.isPassesFilter())return;const o=i.getColumn(),a=o.getColDef();let n;if(s){if(!o.isAllowPivot()&&!o.isAllowRowGroup()&&!o.isAllowValue())return;n=o.isValueActive()||o.isPivotActive()||o.isRowGroupActive()}else{if(a.lockVisible)return;n=o.isVisible()}n?e++:t++}),!(e>0&&t>0))return!(e===0||t>0)}setFilterText(e){this.filterText=x(e)?e.toLowerCase():null,this.markFilteredColumns(),this.flattenAndFilterModel()}markFilteredColumns(){const e=s=>{if(!x(this.filterText))return!0;const i=s.getDisplayName();return i==null||i.toLowerCase().indexOf(this.filterText)!==-1},t=(s,i)=>{let o=!1;if(s.isGroup()){const n=e(s);s.getChildren().forEach(l=>{const r=t(l,n||i);r&&(o=r)})}const a=i||o?!0:e(s);return s.setPassesFilter(a),a};this.allColsTree.forEach(s=>t(s,!1))}notifyListeners(){this.fireGroupExpandedEvent(),this.fireSelectionChangedEvent()}fireGroupExpandedEvent(){const e=this.getExpandState();this.dispatchLocalEvent({type:"groupExpanded",state:e})}fireSelectionChangedEvent(){if(!this.allColsTree)return;const e=this.getSelectionState();this.dispatchLocalEvent({type:"selectionChanged",state:e})}getExpandedGroups(){const e=[];return this.allColsTree&&this.forEachItem(t=>{t.isGroup()&&t.isExpanded()&&e.push(t.getColumnGroup().getId())}),e}},Be={selector:"AG-PRIMARY-COLS-LIST",component:Ne},w=class extends Z{constructor(){super(`<div class="ag-column-select"> <ag-primary-cols-header data-ref="primaryColsHeaderPanel"></ag-primary-cols-header> <ag-primary-cols-list data-ref="primaryColsListPanel"></ag-primary-cols-list> </div>`,[J,Be]),this.primaryColsHeaderPanel=P,this.primaryColsListPanel=P}init(e,t,s){this.allowDragging=e,this.params=t,this.eventType=s,this.primaryColsHeaderPanel.init(this.params);const i=this.params.suppressColumnFilter,o=this.params.suppressColumnSelectAll;this.params.suppressColumnExpandAll&&i&&o&&this.primaryColsHeaderPanel.setDisplayed(!1),this.addManagedListeners(this.primaryColsListPanel,{groupExpanded:this.onGroupExpanded.bind(this),selectionChanged:this.onSelectionChange.bind(this)}),this.primaryColsListPanel.init(this.params,this.allowDragging,this.eventType),this.addManagedListeners(this.primaryColsHeaderPanel,{expandAll:this.onExpandAll.bind(this),collapseAll:this.onCollapseAll.bind(this),selectAll:this.onSelectAll.bind(this),unselectAll:this.onUnselectAll.bind(this),filterChanged:this.onFilterChanged.bind(this)}),this.positionableFeature=new $(this.getGui(),{minHeight:100}),this.createManagedBean(this.positionableFeature)}toggleResizable(e){this.positionableFeature.setResizable(e?{bottom:!0}:!1)}onExpandAll(){this.primaryColsListPanel.doSetExpandedAll(!0)}onCollapseAll(){this.primaryColsListPanel.doSetExpandedAll(!1)}expandGroups(e){this.primaryColsListPanel.setGroupsExpanded(!0,e)}collapseGroups(e){this.primaryColsListPanel.setGroupsExpanded(!1,e)}setColumnLayout(e){this.primaryColsListPanel.setColumnLayout(e)}onFilterChanged(e){this.primaryColsListPanel.setFilterText(e.filterText)}syncLayoutWithGrid(){this.primaryColsListPanel.onColumnsChanged()}onSelectAll(){this.primaryColsListPanel.doSetSelectedAll(!0)}onUnselectAll(){this.primaryColsListPanel.doSetSelectedAll(!1)}onGroupExpanded(e){this.primaryColsHeaderPanel.setExpandState(e.state),this.params.onStateUpdated()}onSelectionChange(e){this.primaryColsHeaderPanel.setSelectionState(e.state)}getExpandedGroups(){return this.primaryColsListPanel.getExpandedGroups()}};import{AgToggleButtonSelector as _e,Component as He,RefPlaceholder as Ue}from"@ag-grid-community/core";var F=class extends He{constructor(){super(...arguments),this.cbPivotMode=Ue}wireBeans(e){this.columnModel=e.columnModel,this.ctrlsService=e.ctrlsService}createTemplate(){return`<div class="ag-pivot-mode-panel"> <ag-toggle-button data-ref="cbPivotMode" class="ag-pivot-mode-select"></ag-toggle-button> </div>`}postConstruct(){this.setTemplate(this.createTemplate(),[_e]),this.cbPivotMode.setValue(this.columnModel.isPivotMode());const e=this.localeService.getLocaleTextFunc();this.cbPivotMode.setLabel(e("pivotMode","Pivot Mode")),this.addManagedListeners(this.cbPivotMode,{fieldValueChanged:this.onBtPivotMode.bind(this)});const t=this.onPivotModeChanged.bind(this);this.addManagedEventListeners({newColumnsLoaded:t,columnPivotModeChanged:t})}onBtPivotMode(){const e=!!this.cbPivotMode.getValue();e!==this.columnModel.isPivotMode()&&(this.gos.updateGridOptions({options:{pivotMode:e},source:"toolPanelUi"}),this.ctrlsService.getHeaderRowContainerCtrls().forEach(t=>t.refresh()))}onPivotModeChanged(){const e=this.columnModel.isPivotMode();this.cbPivotMode.setValue(e)}},We=class extends _{constructor(){super('<div class="ag-column-panel"></div>'),this.initialised=!1,this.childDestroyFuncs=[]}setVisible(e){super.setDisplayed(e),e&&!this.initialised&&this.init(this.params)}init(e){const t=this.gos.addGridCommonParams({suppressColumnMove:!1,suppressColumnSelectAll:!1,suppressColumnFilter:!1,suppressColumnExpandAll:!1,contractColumnSelection:!1,suppressPivotMode:!1,suppressRowGroups:!1,suppressValues:!1,suppressPivots:!1,suppressSyncLayoutWithGrid:!1});if(this.params={...t,...e},this.isRowGroupingModuleLoaded()&&!this.params.suppressPivotMode&&(this.pivotModePanel=this.createBean(new F),this.childDestroyFuncs.push(()=>this.destroyBean(this.pivotModePanel)),this.appendChild(this.pivotModePanel)),this.primaryColsPanel=this.createBean(new w),this.childDestroyFuncs.push(()=>this.destroyBean(this.primaryColsPanel)),this.primaryColsPanel.init(!0,this.params,"toolPanelUi"),this.primaryColsPanel.addCssClass("ag-column-panel-column-select"),this.appendChild(this.primaryColsPanel),this.isRowGroupingModuleLoaded()){this.params.suppressRowGroups||(this.rowGroupDropZonePanel=this.createBean(new S(!1)),this.childDestroyFuncs.push(()=>this.destroyBean(this.rowGroupDropZonePanel)),this.appendChild(this.rowGroupDropZonePanel)),this.params.suppressValues||(this.valuesDropZonePanel=this.createBean(new y(!1)),this.childDestroyFuncs.push(()=>this.destroyBean(this.valuesDropZonePanel)),this.appendChild(this.valuesDropZonePanel)),this.params.suppressPivots||(this.pivotDropZonePanel=this.createBean(new f(!1)),this.childDestroyFuncs.push(()=>this.destroyBean(this.pivotDropZonePanel)),this.appendChild(this.pivotDropZonePanel)),this.setLastVisible();const[s]=this.addManagedEventListeners({columnPivotModeChanged:()=>{this.resetChildrenHeight(),this.setLastVisible()}});this.childDestroyFuncs.push(()=>s())}this.initialised=!0}setPivotModeSectionVisible(e){this.isRowGroupingModuleLoaded()&&(this.pivotModePanel?this.pivotModePanel.setDisplayed(e):e&&(this.pivotModePanel=this.createBean(new F),this.getGui().insertBefore(this.pivotModePanel.getGui(),this.getGui().firstChild),this.childDestroyFuncs.push(()=>this.destroyBean(this.pivotModePanel))),this.setLastVisible())}setRowGroupsSectionVisible(e){this.isRowGroupingModuleLoaded()&&(this.rowGroupDropZonePanel?this.rowGroupDropZonePanel.setDisplayed(e):e&&(this.rowGroupDropZonePanel=this.createManagedBean(new S(!1)),this.appendChild(this.rowGroupDropZonePanel)),this.setLastVisible())}setValuesSectionVisible(e){this.isRowGroupingModuleLoaded()&&(this.valuesDropZonePanel?this.valuesDropZonePanel.setDisplayed(e):e&&(this.valuesDropZonePanel=this.createManagedBean(new y(!1)),this.appendChild(this.valuesDropZonePanel)),this.setLastVisible())}setPivotSectionVisible(e){this.isRowGroupingModuleLoaded()&&(this.pivotDropZonePanel?this.pivotDropZonePanel.setDisplayed(e):e&&(this.pivotDropZonePanel=this.createManagedBean(new f(!1)),this.appendChild(this.pivotDropZonePanel),this.pivotDropZonePanel.setDisplayed(e)),this.setLastVisible())}setResizers(){[this.primaryColsPanel,this.rowGroupDropZonePanel,this.valuesDropZonePanel,this.pivotDropZonePanel].forEach(e=>{if(!e)return;const t=e.getGui();e.toggleResizable(!t.classList.contains("ag-last-column-drop")&&!t.classList.contains("ag-hidden"))})}setLastVisible(){const e=this.getGui();Array.prototype.slice.call(e.querySelectorAll(".ag-column-drop")).forEach(o=>o.classList.remove("ag-last-column-drop"));const s=e.querySelectorAll(".ag-column-drop:not(.ag-hidden)"),i=W(s);i&&i.classList.add("ag-last-column-drop"),this.setResizers()}resetChildrenHeight(){const t=this.getGui().children;for(let s=0;s<t.length;s++){const i=t[s];i.style.removeProperty("height"),i.style.removeProperty("flex")}}isRowGroupingModuleLoaded(){return this.gos.assertModuleRegistered(H.RowGroupingModule,"Row Grouping")}expandColumnGroups(e){this.primaryColsPanel.expandGroups(e)}collapseColumnGroups(e){this.primaryColsPanel.collapseGroups(e)}setColumnLayout(e){this.primaryColsPanel.setColumnLayout(e)}syncLayoutWithGrid(){this.primaryColsPanel.syncLayoutWithGrid()}destroyChildren(){this.childDestroyFuncs.forEach(e=>e()),this.childDestroyFuncs.length=0,U(this.getGui())}refresh(e){return this.destroyChildren(),this.init(e),!0}getState(){return{expandedGroupIds:this.primaryColsPanel.getExpandedGroups()}}destroy(){this.destroyChildren(),super.destroy()}};import{BeanStub as Ze}from"@ag-grid-community/core";var $e=class extends Ze{constructor(){super(...arguments),this.beanName="modelItemUtils"}wireBeans(e){this.aggFuncService=e.aggFuncService,this.columnModel=e.columnModel,this.columnApplyStateService=e.columnApplyStateService}selectAllChildren(e,t,s){const i=this.extractAllLeafColumns(e);this.setAllColumns(i,t,s)}setColumn(e,t,s){this.setAllColumns([e],t,s)}setAllColumns(e,t,s){this.columnModel.isPivotMode()?this.setAllPivot(e,t,s):this.setAllVisible(e,t,s)}extractAllLeafColumns(e){const t=[],s=i=>{i.forEach(o=>{o.isPassesFilter()&&(o.isGroup()?s(o.getChildren()):t.push(o.getColumn()))})};return s(e),t}setAllVisible(e,t,s){const i=[];e.forEach(o=>{o.getColDef().lockVisible||o.isVisible()!=t&&i.push({colId:o.getId(),hide:!t})}),i.length>0&&this.columnApplyStateService.applyColumnState({state:i},s)}setAllPivot(e,t,s){this.setAllPivotActive(e,t,s)}setAllPivotActive(e,t,s){const i=[],n=t?l=>{if(!l.isAnyFunctionActive())if(l.isAllowValue()){const r=typeof l.getAggFunc()=="string"?l.getAggFunc():this.aggFuncService?.getDefaultAggFunc(l);i.push({colId:l.getId(),aggFunc:r})}else l.isAllowRowGroup()?i.push({colId:l.getId(),rowGroup:!0}):l.isAllowPivot()&&i.push({colId:l.getId(),pivot:!0})}:l=>{(l.isPivotActive()||l.isRowGroupActive()||l.isValueActive())&&i.push({colId:l.getId(),pivot:!1,rowGroup:!1,aggFunc:null})};e.forEach(n),i.length>0&&this.columnApplyStateService.applyColumnState({state:i},s)}updateColumns(e){const{columns:t,visibleState:s,pivotState:i,eventType:o}=e,a=t.map(n=>{const l=n.getColId();if(this.columnModel.isPivotMode()){const r=i?.[l];return{colId:l,pivot:r?.pivot,rowGroup:r?.rowGroup,aggFunc:r?.aggFunc}}else return{colId:l,hide:!s?.[l]}});this.columnApplyStateService.applyColumnState({state:a},o)}createPivotState(e){return{pivot:e.isPivotActive(),rowGroup:e.isRowGroupActive(),aggFunc:e.isValueActive()?e.getAggFunc():void 0}}},Ke="32.3.5",ze=V({version:Ke,moduleName:R.ColumnsToolPanelModule,beans:[$e],userComponents:[{name:"agColumnsToolPanel",classImp:We},{name:"agMenuItem",classImp:k}],dependantModules:[O,N,B]});export{w as AgPrimaryCols,ze as ColumnsToolPanelModule};